Commit Graph
79 Commits
Author SHA1 Message Date
fdf31fc3a8 [ENG-1511] Library Screens (#1903)
* init

* changes

* Now updating statistics once a minute

* More robust statistics updater

* Concurrency is hard

* improvements to stats

* refactor

* adjust setting back/forward padding so it matches top bar

* refactor sidebar

* rename

* setting up screens

* some changes

* Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>

* yes

* yes2

* refactored explorerItem.ts

* important explorer code shouldn't be thrown away in a util moment

* support for multiple thumbnails in ExplorerItem

* clippy

* move debug

* yes

* label filters

* ts

* comment out unconnected stuff

* added .mid for midi files

---------

Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2024-01-16 12:15:03 +00:00
Oscar Beaumont f7cd96732f @sd/client SolidJS support - Part 1 (#1920)
* `createSolid` + `createPersistedMutable`

* Move all Valtio stores to SolidJS

* Remove Valtio from `@sd/client`

* Missed auth store

* wip

* `useSolidStore` allow mutable setting

* Restructure `@sd/client` a bit

* Add `WithSolid` + custom `useObserver`

* Parse props both ways

* Universal Context

* Solid to React context working

* Working universal context

* context inheritance

* whoops

* Make it clearer how the demo works

* wip: `useUniversalQuery`
2024-01-09 08:05:01 +00:00
UtkuandBrendan Allan a94832c1ee [ENG-1502] I18n (#1897)
* you know, you could just work on first try

* fix extension

* configure plugin and fix few translation issues

* more

* more keys

* and more

* more keys and sort

* commit msg

* we like keys here

* end my suffering

* jk i just love keys

* key fix

* add turkish

* add german

* Entendido

* Demnächst

* Mettre une étoile sur GitHub

* 成功

* pnpm-lock

* vite plugin

* remove i18next backends

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2024-01-08 20:26:46 +00:00
Oscar Beaumont b6ea70b8d0 Hosted Locations - Part 1 (#1861)
* Hosted locations CRD

* Authorise + file upload demo

* Configurable path for testing perms
2024-01-08 06:10:26 +00:00
7c90bcb95b [ENG-1479] AI Prototype (#1845)
* First draft on image labeling

* Fixing execution providers for other OSs

* Better error handling and shutdown

* Working with shallow media processor

* bruh

* Fix warnings

* Now hooked to media processor job

* Link desktop app with libonnxruntime to avoid TLS error during startup

* Be able to change models on runtime
Revert to use labels table instead of tags

* A bug on a model-less inference

* Show AI labels on Inspector
 - Change yolo inference to use half precision
 - Add labels api to core

* Remove LD_PRELOAD

* Fix race condition on model executor shutdown

* Don't load all images in memory moron

* Embeed yolo model in prod build
 - Change yolo model path to new one relative to executable

* Disable volume watcher on linux, it was crashing the app
 - Invalidate labels when they are updated

* Rust fmt

* Minor changes

* Gate onnxruntime linking to the ai-models feature

* Add build script to sd-server to handle onnxruntime linking workaround

* Move AI stuff to its own crate and normalize deps

* Rust fmt

* Don't regenerate labels unless asked to

* Now blazingly fast

* Bad merge

* Fix

* Fix

* Add backend logic to download extra yolo models

* Add models api route
 - Add api call to get available model version
 - Add api call to change the model version

* Improve new model download logic
 - Add frontend to change image labeler model

* Fix new model downloader

* Fix model select width

* invalidate labels count after media_processor generates a new output

* Rename AI crate and first draft on download notifications

* fix types

---------

Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-12-19 09:28:57 +00:00
Oscar BeaumontandBrendan Allan 89a7f735e5 [ENG-1400] Normalised caching (#1734)
* prototype

* `.normalise` helper + only `String` keys

* implement it for 'search.paths'

* redux devtools

* fix

* refactor backend

* wip: upgrade to rspc fork

* mega cursed

* Upgrade Specta-related stuff

* Upgrade Typescript

* Cache debug page

* bruh

* Fix optimistic library setting

* Cache clearing

* better timeout

* Fix tags page

* bit of cleanup

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-12-05 13:16:03 +00:00
ameer2468 17696ea8bc [ENG-1463] Move statistics to a new usage page (#1834)
* Move statistics to a new usage page

* Update usage.tsx

* remove free pill
2023-11-26 17:28:38 +00:00
Utku c54a0b3805 remove fda setting (#1833)
remove setting
2023-11-25 22:47:22 +00:00
ameer2468 f0d37c46d7 [ENG-1456] General UI Tweaks (#1819)
* General UI Tweaks

* Update general.tsx

* Update general.tsx
2023-11-24 14:46:57 +00:00
ameer2468andjake a7fed83556 [ENG-1413] Full disk access perms (#1791)
* fda wip

* clippy

* add tauri invoke fns for FDA

* fda wip

* clippy

* add tauri invoke fns for FDA

* wip

* fda wip

* clippy

* add tauri invoke fns for FDA

* wip

* wip

* wip fda

* remove imports

* hopefully improve FDA

* execute only on macos

* ts

* ts

* Update Platform.tsx

* Update AddLocationButton.tsx

* remove console log

* fix: fda and add unit tests

* temp commit for Jake

* add fda state and keybind handling (so the frontend is kept up to date)

* update FDA

* update imports

* testing purposes

* Jakes work

* fix fda checks

* work in progress (but not working)

* remove dead files

* attempt #2

* !!!temporarily enable devtools in prod

* remove alert

* show FDA screen but don't require it

* add an FDA button to general client settings

* Update AddLocationButton.tsx

* remove dead code

* unused dep

* old errors

* remove import

* dead code

* dead code + typesafety

* eslint

* remove fda dialog references

* remove mp4 vid

* hopefully fix onboarding for non-macos OSes

* shorter nav

---------

Co-authored-by: jake <77554505+brxken128@users.noreply.github.com>
2023-11-23 20:54:45 +00:00
ameer2468 43b4865914 [ENG-1395] Use data from shortcuts hook (#1805)
use data from shortcuts hook
2023-11-23 11:39:36 +00:00
Ericson "Fogo" SoaresandVítor Vasconcellos f662bf7594 [ENG-1398] Make thumbnailer parallelism configurable (#1780)
* Removing migrator

* Adding serde_repr dep

* Generalizing version manager

* Updating library config to use version manager

* Updating node config to use version manager

* Updating stuff to use new configs

* More async

* Library manager errors

* Node and thumbnailer preferences

* Small warning on prep

* Upgrading batch construction for thumbnailer

* Updating thumb version file to new version manager

* Configurable parallelism for thumbnailer

* Integration with frontend and refresh batch

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>

---------

Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
2023-11-23 11:23:32 +00:00
Brendan Allanandameer2468 0ef65fce2d [ENG-1423] Multiple tabs (#1777)
* tabs w/ multiple router instances

* fix router switching

* keybinds

* manual history tracking

* eslint

* remove scroll restoration

* fix tab removal

* route title + tab create delay

* typescript

* put tab list up top

* Remove import + show close button only if tabs length more than 1

* lint

* unify blur across whole top bar

* add to keybindings page, tauri drag region, and tooltip

* fix blur

* more drag regions

* merge moment

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2023-11-16 15:14:47 +00:00
ameer2468andnikec 9cf71c1511 [ENG-1397] Quickpreview images slider (#1773)
* wip

* wip

* wip

* Update ImageSlider.tsx

* wip

* wip

* wip

* Update ImageSlider.tsx

* bump virtual-grid version for horizontal support

* quickpreview image slider almost

* cleanup

* add mouse wheel support

* Update ImageSlider.tsx

* Update ImageSlider.tsx

* feedback

* block down and up if quickview is open

* Update GridList.tsx

* spacing

* Update GridList.tsx

* Update GridList.tsx

* feedback and fixes

* refactor

* Update GridList.tsx

* Update ImageSlider.tsx

* Update ImageSlider.tsx

* remove unnecessary checks & update scroll behavior

* add shortcut to trigger image slider, full width aswell.

* persist value

* Fix Esc explorer shortcut, fix quick preview move between items shortcut & support multiple selected items on image slider

* fix list view key selection

* don't exit selection if slider is toggled off

---------

Co-authored-by: nikec <nikec.job@gmail.com>
2023-11-16 13:16:29 +00:00
Brendan Allan 031ac7b670 [ENG-1276] move assigned tags to top of tag assign list (#1768)
* move assigned tags to top of tag assign list

* sort tags by most recently assigned

* console.log

* error boundary
2023-11-14 09:35:50 +00:00
Oscar Beaumont 5705f40aae [ENG-1333] Display active P2P listeners (#1644)
* wip

* share the actual port

* fixes

* wip: remove it

* cargo fmt

* thanks @niikeec
2023-11-13 07:02:03 +00:00
jakeandameer2468 52d5064701 [ENG-1355] Telemetry docs (#1746)
* add privacy info to docs

* add "More info" button to onboarding privacy page

* add `infoUrl` option to `Setting` component to add relevant info

* Update privacy.tsx

* Update privacy.tsx

* urls

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
2023-11-06 11:00:07 +00:00
ameer2468 f4e89da4d7 [ENG-1190] New shortcuts system (#1718)
* wip new shortcuts system

* Shortcuts system and cleanup

add duplicate short, fix delete object windows context menu symbol, shortcuts system

Add cut to Edit menu

if quickPreview is open do not open the folder/doubleClick()

Update index.tsx

Update RenameTextBox.tsx

* add listObjectsNav for list view

* refactored

* Update useShortcut.ts

* Update useShortcut.ts

* remove imports

* fix copy pasting and conflicts
2023-11-06 10:37:24 +00:00
Utku 02545589ae No placeholder buttons (#1744)
Add Android permission, organize imports, add toast for tag assign button
2023-11-05 21:59:52 +00:00
Oscar Beaumont 395e0ee3da [ENG-1344] Limit node name length (#1730)
limit length
2023-11-04 09:16:15 +00:00
nikec 809cf636d4 [ENG-1246] Fix icons on light theme (#1502)
* Fix icons on light theme

* more icons

* more icons

* update icons

* assets gen
2023-11-01 15:24:09 +00:00
ameer2468 8479b6447e quick keybinding page fix (#1714)
Update keybindings.tsx
2023-10-31 13:54:40 +00:00
Oscar Beaumont c7b74ccffa [ENG-1380] Stabilise p2p settings (#1703)
* let me create pr

* a whole lotta changes

* split `p2p_manager.rs` into smaller files

* the arcpocalypse is over

* minor generic cleanup

* wip removing 'MetadataManager'

* more wip

* wip: i am changing branch

* discovery2 -> discovery

* make it somewhat compile

* more wip

* wip: reassembling manager stream

* state more goodly

* wip

* more wip

* removing generic from sd_p2p::Manager

* reassemble networked libraries

* wip: hooking back up mDNS

* multi-flume wip

* contain bad code to a single file

* p2p_manager_actor + split handlers into file per operation

* cleanup after restructure

* cleaning up more

* wip: reenable resync

* wip: remote identity in connection payload

* track connected clients (required for `service.rs`)

* a big ass iterator

* working towards finishing `service.rs`

* service shutdown

* hook up listen channel in service

* fix address resolution

* merge nlm stuff into LibrariesService

* finish library to service mapping

* less footguns in p2p - seal `PeerId`

* fix previous pr

* p2p state rspc query

* send node events to the frontend

* minor

* wip

* more worky, less crashy

* make spacedrop work + debug state

* fix mdns expiry

* clippy

* other clippy

* remove feature flag
2023-10-31 04:29:25 +00:00
ameer2468 2b52555c2b [ENG-1193] Added icons to dialogs (#1708)
* Added icons to dialogs

* update file/folder icon when deleting

* tweaks

* ts

* ts
2023-10-30 16:46:12 +00:00
ameer2468 712baf3b8a [ENG-1383] Account page - more stats + coming soon services (#1706)
* Added coming soon services + more stats

* update with new icons

* cleanup

* Update account.tsx

* import

* Update settings.json

* Update settings.json
2023-10-30 11:44:23 +00:00
ameer2468 a75093405c [ENG-1361] MacOS fix copy, paste, undo, redo, select all functionality (#1684)
* Update menu.rs

* ts gaurd and correct plural for Locations title
2023-10-27 15:22:26 +00:00
ameer2468 75ae798644 Missed edge case (#1674)
Update account.tsx
2023-10-25 19:00:28 +00:00
ameer2468 78eabdd3cb [ENG-1206] Account page (#1673)
* account page

* Remove spacedrive account from general
2023-10-25 18:29:21 +00:00
ameer2468 3d0991a76e [ENG-1354] Shortcut to reveal in finder/explorer (#1665)
* Shortcut to reveal in finder/explorer

* Update useKeyRevealFinder.ts

* update keybinds page

* move hook

* fix import paths
2023-10-23 14:48:49 +00:00
Brendan Allan c64eabfac8 Fix account card shrink + overview scrollbar (#1643)
* don't shrink account card

* fix perma-scroll on overview

* Update SpacedriveAccount.tsx
2023-10-21 17:26:24 +00:00
ameer2468 092d0901bd [ENG-1315] Port buttons (#1639)
* port ui

* Update general.tsx
2023-10-20 08:27:36 +00:00
Oscar Beaumont f67b7e807a [ENG-1291] enable/disable P2P & configurable port (#1609)
* it works pog

* UI for when networking is disabled

* Fix Clippy issues

* clippy tings
2023-10-18 03:52:54 +00:00
ameer2468 97ee8a21c6 [ENG-1304] hidden files shortcut (#1603)
hidden files shortcut
2023-10-16 21:03:35 +00:00
ameer2468 fe345d2375 [ENG-1301] mouse4 mouse5 dont work when hovering (#1601)
* Fix mouse navigation bug when file/folder is hovered

* remove imports
2023-10-16 15:29:18 +00:00
ameer2468 e3549372e1 [ENG-1273] Update explorer views shortcut (#1566)
* update views shortcut

* type and remove un-used imports

* Update ExplorerPath.tsx
2023-10-13 14:41:28 +00:00
ameer2468 e8306e6a50 [ENG-1274] Update explorer path bar shortcut + keybindings (#1574)
Update explorer path bar shortcut + keybindings
2023-10-13 14:41:18 +00:00
Brendan Allan 25fa1f0974 [ENG-1255] Feedback popover with new API (#1532)
* feedback popover with new api

* allow unauthed feedback

* add login information

* allow no auth

* fix hooks

* remove emoji on reset

* show cancel on left of login button
2023-10-13 08:08:07 +00:00
ameer2468 5a30aa7f2f [ENG-1257] Replace S with T for settings page shortcut (#1543)
Replace S with T for setting
2023-10-12 16:28:32 +00:00
ed751a46d0 [ENG-944] Sidebar UX Improvements (#1270)
* - added local section to sidebar
- added spacedrop screen, showing local peers
- added placeholder network screen
-removed unused swift package
- created a watcher for system volumes to invalidate ui when drives are added/removed

* clouds

* fix more imports

* see more

* open location if volume is location

* gen assets

* remove log

* [ENG-939, ENG-1173] PDF Thumbnails (#1242)

* sd-pdf

* Process PDF blocking render inside a spawn_blocking
 - Load a single global Pdfium instance

* Migrate pdf thumb logic to sd-images
 - Replace block_in_place with spawn_blocking
 - Only load LibHeif once
 - Allow thumbnailer (both indexed and non-indexed locations) to process documents
 - Disable loading pdf viewer in Inspection in favour of loading it's thumbnail

* Try to load pdfium lib from absolute path

* Revert removed import due to rebase

* Small nitpick and some warnings

---------

Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>

* [ENG-888] Media view should show current folder downward (#1437)

* Done but ugly

* layout

* Now with a select

---------

Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>

* add cool folder thing to inspector + stuff

* fix text color

* fix lock

* fix typescript

* fix ts

---------

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Ericson Fogo Soares <ericson.ds999@gmail.com>
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-10-09 10:11:23 +00:00
Brendan Allan 161e660cdc Centralise auth state into context (#1434)
* centralise auth state into context

* remove accounts from feature flags

* move from context to store in @sd/client
2023-10-08 17:04:23 +00:00
ameer2468 8662c96336 [ENG-1189] Overview shortcut + Settings shortcut adjusted (#1435)
Added overview route shortcut + adjusted settings shortcut
2023-10-05 14:16:56 +00:00
nikecandBrendan Allan ddf3995032 [ENG-1178] Add optional auth step to onboarding & update profile section (#1426)
* Add login step to onboarding

* only show auth loader on first fetch

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-10-04 09:05:50 +00:00
ameer2468 8af1019850 [ENG-872, ENG-1177] - Windows enter key opens & Open context menu correction (#1424)
* Enter key opens on windows, cmd and o on mac. Open in context menu now opens in SD and not Finder.

* Remove access time func as doubleClick already does it
2023-10-03 16:35:45 +00:00
ameer2468 97e92c3499 [ENG-871] - Rename shortcut update (#1422)
* f2 to rename

* Update RenameTextBox.tsx

* Keybindings some refactoring to accommodate our needs

* Update keybindings.tsx

* correct direction for nav

* Update keybindings.tsx

* ts documentation + key -> keys

* Update keybindings.tsx
2023-10-03 14:08:01 +00:00
ameer2468 15a748d3f9 [ENG-1172] - Update navigation keys (#1419)
Update navigation keys
2023-10-02 14:10:47 +00:00
Oscar Beaumont 9b024765aa [ENG-1147] Fix overview stats (#1416)
* Fix it

* Fix slow accounts panel
2023-10-02 10:32:26 +00:00
ameer2468andnikec a16747ab29 [ENG-1149] Tags unassignment UI update and fixes (#1406)
* Multiple minor fixes and tweaks

* close context menu if no items are selected

* fix

* type

* Update keybindings.tsx

* useMatch and rspc to invalidate

* fix selectable

---------

Co-authored-by: nikec <nikec.job@gmail.com>
2023-09-29 14:48:35 +00:00
Brendan Allan 3109601fda Desktop + Web auth flow (#1378)
* initial login session route

* auth works!

* auth on web is dummy easy

* load api url from envs

* SpacedriveAccount + oauth

* use verification url

* heif

* better env handling

* error handling

* handle config write error

* add logout config write error
2023-09-28 16:55:46 +00:00
ameer2468andnikec 6ac58a312f [ENG-1142] Path bar shortcut (#1377)
* Path bar shortcut

* Add option to popover and tweak UI

* increase size of folder icon + frame thumbs

* view adjustments

* truncate

---------

Co-authored-by: nikec <nikec.job@gmail.com>
2023-09-27 14:49:01 +00:00
Ericson "Fogo" Soares 5005c50e23 [ENG-1116] Distinct job manager for library (#1363)
Done
2023-09-21 11:10:56 +00:00