Commit graph

708 commits

Author SHA1 Message Date
Brendan Allan 697dc50ea2
fix topbar hmr (#2231) 2024-03-22 06:29:14 +00:00
Vítor Vasconcellos 08c42a36fe
[ENG-1624] E2E Tests (#2192)
* Basic cypress test

* Add e2e test command

* Add full e2e test for creating and deleting a library

* Add cypress to CI

* Fix cypress CI
 - Use arm macos for running cypress
 - Setup rust on cypress job
 - Increase cypress CI timeout

* Remove unused APPLE_SIGNING_IDENTITY envvar

* Update deps again + Try to fix Cypress CI setup

* Update deps again

* Only test default location if it exists

* Use latest v18 NodeJS in CI

* Increase minimum node version due to updated dependency
 - @typescript-eslint/eslint-plugin now requires node >=18.18

* Fix testing failing for optional default locations

* Enable video recording
 - Fix screenshot and video artifact uploading

* Fix location test
 - Use correct location name, instead of trying to derive it from the internal id
2024-03-19 20:22:17 +00:00
ameer2468 52d7c572be
[MOB-66] Black theme & more (#2213)
* wip, black theme and updates

* wip

* More tweaks and adjustments

* eslint

* Move some components into their own file

* lint interface onboarding

* remove mobile obj and move into app

* remove navback prop since native stack does it
2024-03-16 00:56:34 +00:00
nikec ae4e65de93
[ENG-1685] Fix 'ExplorerContext.Provider not found!' (#2210)
fix context
2024-03-14 12:07:58 +00:00
Oscar Beaumont 7dc0880f8b
P2P Metadata Cache + Sidebar (#2208)
* wip

* wip

* Render peers in sidebar

* clippy

* stringify on server

* don't stringify

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2024-03-14 09:12:29 +00:00
ameer2468 1fd217c9af
[ENG-1679] Video intro fix & darker color (#2204)
* Fix bg

test vid update

fix vid fragments

fix intro

black mobile intro

lint

* update vid

* pascal case

* file glitch

* files

* Update GetStarted.tsx
2024-03-13 21:50:21 +00:00
Utku 4fc8dcfb48
[MOB-69] Infinite scroll & explorer query hooks (#2197)
* run sim before everything

* move passwordmeter

* annoying maestro

* remove bad extension from recom

* move explorer query logic to @sd/client

* update mobile packages

* working explorer

* search with the new query

* tag explorer

* revert maestro version bump
2024-03-13 20:53:00 +00:00
ameer2468 72451a07bc
[ENG-1683] Prevent mouse-side buttons from drag selection (#2203)
* Update index.tsx

* Add coming soon toast for add device button
2024-03-13 16:15:39 +00:00
Oscar Beaumont 2ca88a5d6b
Refactor P2P Hooks (#2193)
* Basic AF server

* wip

* Add autonat to relay server

* Add autonat client + fixes

* Deploy script

* wip

* Debug view

* wip

* wip

* relay all events

* wip

* fix

* wip

* libp2p man spoke

* dctur

* Relay config file

* Advertise relay server

* Dynamic relay configuration

* wip

* p2p relay config

* cleanup

* push instances into p2p state

* fix

* Fix up TS

* refactor p2p hooks

* fix backend state

* Skip self

* a

* b

* Relay config in debug query

* Fix method name

* tsc is broken on my machine

* a

* Incorrect typecasts. Can we just ban them

* fix types
2024-03-13 06:43:22 +00:00
Utku d60789e588
Make eslint happy (#2198)
* eslint maxing

* @sd/ui too
2024-03-12 20:41:41 +00:00
ameer2468 4b74c0af04
[ENG-1680] Show error messages for feedback form (#2196)
Update FeedbackButton.tsx
2024-03-12 13:17:29 +00:00
Oscar Beaumont 926ae4fc65
P2P holepunching + relay (#2147)
* Basic AF server

* wip

* Add autonat to relay server

* Add autonat client + fixes

* Deploy script

* wip

* Debug view

* wip

* wip

* relay all events

* wip

* fix

* wip

* libp2p man spoke

* dctur

* Relay config file

* Advertise relay server

* Dynamic relay configuration

* wip

* p2p relay config

* cleanup

* push instances into p2p state

* fix

* Fix up TS
2024-03-12 06:18:58 +00:00
jake 6e61849536
[ENG-1321] Webview reload keybind change and make MacOS reload explorer menu item functional (#2093)
* feat: cmd+r to quick rescan the current location, and change reload webview keybind

* chore: lockfile update

* fix: provide a location id to quick rescan in keybind event handler

* fix: add cooldown to quick rescan to prevent double-rescans

* refactor: use `explorerStore` instead
2024-03-09 06:11:14 +00:00
ameer2468 71272d5976
[ENG-1669] Fade out intro (#2178)
* Fade out intro

* Update Layout.tsx
2024-03-07 16:34:17 +00:00
jake 355ac191b8
[ENG-440] Crypto Refactor (#2115)
* rebase: `crates/crypto` into current `main`

* refactor: remove `mnemonic` module

* feat: disable secure erase temporarily

* fix: tsc

* fix: tsc due to unused import

* fix: remove `cli` crypto info

* deps: update

* chore: remove dead comment

* refactor: remove `bincode` feature

* refactor: give `keyring` a dedicated feature so it's not reliant on `sys` as well

* fix: remove `aes-gcm` as it's no longer supported

* refactor: remove dead comment

* fix: update `keyring` imports

* refactor: change tests to `aes-256-gcm`

* feat: make `Key` a `Box<>` internally to ensure it's heap allocated (and fix tests)

* chore: clippy

* fix: hashing tests now that `const` keys aren't available

this will be cleaned up with test vectors and `include_bytes!()`

* chore: clippy

* refactor: remove dead code

* test: bring back `encrypt_with_invalid_nonce` test

* fix: secret service keyring

* fix: `zbus` build issues

* doc: update comment for clearer reasoning

* fix: cargo fmt

* fix: use bytes directly

* deps: update lockfile

* fix: secret service keyring

* fix: comment out windows keyring for now

* fix: use session keyring if no keyring backend

* fix: completely remove keyring module if no keyring is available for that OS

* fix: clippy

* fix: move iimport to correct conditional compilation

* fix: fmt
2024-03-07 08:00:37 +00:00
wany-oh 68a10502cb
add japanese (#2174) 2024-03-07 04:08:04 +00:00
ameer2468 f754b315de
[ENG-1664] Close quickpreview on ESC (#2171)
Close quickpreview on ESC
2024-03-06 16:47:06 +00:00
Brendan Allan 63b17adb10
switch sync to msgpack instead of json (#2164)
* switch sync to msgpack instead of json

* use rmpv

* more rmpv

* use msgpack in cloud

* receive operations as msgpack
2024-03-06 10:15:29 +00:00
Arnab Chakraborty 3bd1622e93
[MOB-23] Mobile Hardware Information for Overview Page (#2106)
* wip for iDevices

* Working HardwareModel Info for iOS

* wip

* Merge 'main' into 'mob-hw-info-overview'

* Half-Working `get_volume()`

* Objective c bridge to talk to FS

* Working objc bridge

The bridge works now, and we can now access the iOS file system using the native objective-c APIs instead for proper values, including on the simulator.

* Isolate `icrate` for `ios` deployments only

* Working Stats for Android

* Clean Up + `pnpm format`

* Fix to FSInfoResult Type

Due to the RNFS fork change, I had to change the types to make it so it doesn't fail building and CI.

* iOS Device Name Fix
2024-03-06 06:46:22 +00:00
ameer2468 55d2ec7a6a
[ENG-1663] Prevent middle-click opening new tab (#2168)
Update Link.tsx
2024-03-06 00:37:31 +00:00
ameer2468 c11ecd2457
[ENG-1661] Windows explorer scrollbar (#2166)
Fix windows scrollbar
2024-03-05 19:46:17 +00:00
nikec eeea776292
[ENG-1662] Fix thumb black bars (#2167)
fix resize loop
2024-03-05 18:37:53 +00:00
ameer2468 a1c5639b03
MacOS: Fix video intro (#2165)
* macos use mp4 - others use webm

* macos use mp4 - others use webm
2024-03-05 16:01:57 +00:00
Heavysnowjakarta 9cb976af72
i18n some polishes (#2160) 2024-03-04 16:18:18 +00:00
nikec 4c484abb33
[ENG-1659] Rename through inspector (#2155)
renamable path trough inspector
2024-03-01 16:04:48 +00:00
Vítor Vasconcellos 8e271c007f
Lock version of patched dependencies (#2151)
Fix eslint warning
 - Fix some subdependencies requiring an older @typescript-eslint/parser version that is incompatible with the current version of typescript
 - Add react-router and react-router-dom version lock to ensure pnpm doesn't download a version incompatible with our patched @remix/router
 - Add version lock to @remix-run/router to avoid incompatibilities with our patched version
2024-03-01 01:57:27 +00:00
Oscar Beaumont 2cc828c4af
Everything over P2P (#2135)
* Fix websockets over P2P + multi-node cache

* cleanup features

* Explorer over P2P demo

* wip

* wip

* working for ephemeral stuff

* Button to get out of remote viewer

* remove

* Cleanup

* more cleanup

* Fix cross-node library queries

* Files over P2P

* Drop `Header::File`

* Fix Clippy

* Don't let noobs get hacked
2024-02-29 07:46:30 +00:00
Brendan Allan 54ea279df3
fix actors debug page (#2146) 2024-02-29 07:29:28 +00:00
Brendan Allan 69a6edb99f
Move online locations query to subcomponent (#2143)
* move online locations query to subcomponent

* silly

* pass location
2024-02-29 03:43:01 +00:00
Vítor Vasconcellos 5a103fb21b
[ENG-1472] Frontend bug fixes and dependencies update (#2137)
* Fix onboarding sometimes not redirecting to Explorer on prod builds
 - Fix failure trying to compile landing prod builds outside Vercel
 - Fix Server docker failing to restart due to some incorrecting logic for creating the unprivileged users erroring out
 - Fix Storybook failing to build due to updates to Vite
 - Update Storybook dependencies
 - Remove unused Inter font dependency
 - Fix some incorrect references to NodeJS types inside web code
 - Fix $libraryId index using the incorrect redirect function
 - Improve error handling for the $libraryId index route
 - Fix Prism not being correctly loaded, and failing to register its plugins
 - Improve Prism loading error handling
 - Small improvement to the text highlight logic
 - Fix SCSS deprecation for untyped hsl values
 - Fix library query cache incorrectly saving empty values, which lead to the onboarding redirect bug
 - Patch contentLayer to fix an error during the final part of it's build process
 - Update most dev dependencies
 - Update publish-artifact to be compatible with new @actions/artifact
 - Fix issue with new vite-plugin-solid failing to build our .ts files due to the removal of the typescript plugin
 - Fix pnpm overrides not applying due to incorrect placement in package.json
 - Replace deprecated react-tsparticles and updated three used by the Bubbles background in the landing page
 - Rework Bubbles background to be compatible with new @tsparticles/react
 - Update @sd/config dependencies
 - Update @sd/scripts dependencies

* Implement suggestions
 - Replace mobile JS node setup with custom setup-pnpm action
 - Handle GITHUB_SECRET default value in code and throw a warning when it is not set
 - Fix pnpm now resolving the correct node version when building Spacedrive server docker
 - Add missing getent command to spacedrive server docker
 - Fix typo in entrypoint.sh
 - Implement a more robust check if the user is already in a group
 - Fix adduser failing due to missing default group
 - Disconnect IntersectionObserver on component unmount
 - Improve prism import comment

* Implement more suggestions
 - Pin genent version to latest stable release of UClibc
 - Add checksum checks for all ADD clauses in Spacedrive server Dockerfile

* Increase Maestro timeout to reduce CI failures due to slow simulator startup

* Dowgrade maestro to workaround CI timeout

* Improvements to the script that run maestro mobile tests
 - Increase the amount of retries for a maestro test run to 6
 - Increase Maestro driver startup timeout to 2 minutes

* Let run-maestro-tests.sh decide how to run itself

* ¯\_(ツ)_/¯
2024-02-28 23:52:24 +00:00
nikec b6515a3467
[ENG-1460] Fix inspector path overflow (#2141)
fix overflow
2024-02-28 15:37:05 +00:00
nikec 09599da15c
[ENG-1642] Fix location status height (#2140)
fix height
2024-02-28 15:36:23 +00:00
nikec 46dc7e8669
[ENG-1643] Fix remove tag button size (#2139)
Fix button size
2024-02-28 15:36:15 +00:00
nikec a87d53e309
[ENG-1641] Use 'delItem' shortcut (#2138)
replace del items shortcut hooks
2024-02-28 15:36:07 +00:00
Utku b6c7ead854
[MOB-4] Toast messages (#2132)
* cleanup and add toast package

* fix screen container & use scrollview by default

* more cleanup and toast api

* now it works hmm

* toasts
2024-02-28 09:33:24 +00:00
ameer2468 b038b3cf5d
[ENG-1640] Correct locations folder icon (#2130)
* Show correct icon for locations list

* run lint fix
2024-02-27 16:44:49 +00:00
Brendan Allan 068c6dd169
[ENG-1605] updater i18n (#2123)
* updater i18n

* more translations

* interpolate version number in translations

* [ENG-1598] Don't show update toast if no previous version (#2125)

don't show update toast if no previous version
2024-02-27 16:17:06 +00:00
nikec 399b8264f4
[ENG-1639] Copy paste improvements (#2129)
improvements
2024-02-27 15:30:04 +00:00
Brendan Allan c8dc7e3d4d
[ENG-1613] Enable sync operation generation with backfill (#2128)
Enable sync operation generation with backfill
2024-02-27 09:37:34 +00:00
ameer2468 53713a9f59
[ENG-1625] Spacedrop UI correct hover condition & spacing (#2127)
* improve spacedrop ui with correct hover & spacing

* remove
2024-02-26 15:53:37 +00:00
Matteo Galiazzo 6f27504e5f
added it locale, added it entry (#2066)
* added it locale, added it entry

* Apply suggestions from code review

Co-authored-by: Matteo Martellini <matteo@mercxry.me>

* add missing keys and a readme about the script

---------

Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: Matteo Martellini <matteo@mercxry.me>
2024-02-26 15:20:41 +00:00
Oscar Beaumont aa0b4abf85
rspc over P2P (#2112)
* wip: rspc over p2p

* wip

* rspc over P2P

* Cleanup + error handling

* slight cleanup

* Using Hyper for HTTP streaming + websockets
2024-02-26 07:23:48 +00:00
nikec d007b55763
[ENG-1619] Add spacedrop to the context menu (#2119)
add spacedrop to context menu
2024-02-22 12:53:02 +00:00
ameer2468 dd0acad2e7
[ENG-1618] Spacedrop UI (#2118)
* spacedrop ui update

* i18n and description

* glitch: remove !

* already in progress i18n

* more i18n
2024-02-22 12:47:08 +00:00
Utku b638fc2177
[MOB-37, MOB-38, MOB-39] Preview for PDF, Text and Media files (#2098)
* version & microphonePermission text & eslint

* remove polyfill as hermes supports intl now

* why do we have solid on mobile?

* cleanup

* add solid back =_=

* pnpm lock

* we hate relative paths here

* android config

* open file logic

* visual tweaks

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2024-02-21 13:26:05 +00:00
Oscar Beaumont 519b1b6c46
Fix P2P not working for libraries (#2031)
* P2P Debug route

* Remove legacy peer to peer pairing process

* Fix error typo

* Sync instances with cloud

* Upgrade deps + extended instance data

* Create instance with extended metadata

* Auto sync instances

* Actually `.await`

* bruh

* sync library info

* this isn't gonna work

* only sleep cloud receiver when no more messages (#1985)

* [ENG-1567] Fix renaming (#1986)

fix rename

* only sleep cloud receiver when no more messages

* use in memory instances during cloud receive (#1995)

* use in memory instances during cloud receive

* is_empty

---------

Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>

* fix type error

* wip

* make mdns mdns better

* rebuild state

* Add hooks + listeners + discovered state

* Split into crates

* wip fixing core + wip merging Spacetime into `sd-p2p2`

* `SmartLockGuard` + `Listener`

* Make `sd-core` compile

* Reenable all operation receivers

* Fix all broken code within `sd-core`

* minor fixes found in review

* Bring in `libp2p` + restructure `sd-p2p` for the gazillion-th time

* whoops

* Compile no matter the (runtime) cost

* fixing merge issues

* wip

* a

* b

* C

* Handle port betterer

* c

* Migrate node config

* a

* no crash on startup

* wip

* a

* jdfhskjfsg

* a

* fix discovery

* a bunch of fixes

* getting Spacedrop working

* I don't get why it no worky

* debug example

* a

* wip

* wip

* removing logging from stream impl

* wip: shit is fucked

* Redo quic integration  + Spacedrop working

* Fix shutdown - deadlocks + shutdown peers

* Add Prisma migrations

* Fix shutdown

* a

* fix

* cleanup

* The lord clippy hath spoken

* disable P2P settings for now

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>
2024-02-21 08:13:40 +00:00
ameer2468 abd5ecbe8d
mousedown fix (#2108)
quick mistake fix
2024-02-20 10:05:53 +00:00
Brendan Allan 9bc1a472a8
Basic sync operation backfill (#2101)
* basic sync operation backfill

* no changes
2024-02-20 09:22:34 +00:00
ameer2468 19b224370e
[ENG-1615] bg intro video fixed (#2104)
* video intro bg

* test hsl

* test video bg

* run tests

* comment

* mob intro

* git glitch

* git

* webm type
2024-02-19 20:45:29 +00:00
ameer2468 e8450821df
[ENG-1612] Fix mouse nav forwards and backwards (#2105)
Fix mouse nav forwards and backwards
2024-02-19 15:23:20 +00:00