Commit Graph

300 Commits

Author SHA1 Message Date
Brendan Allan
352828ada3 Add double-click functionality for labels in explorer (#1971)
explorer labels double click navigate
2024-01-22 08:49:38 +00:00
nikec
7606c64cb6 [ENG-1554] Reduce icon size on media view (#1956)
reduce icon size on media view
2024-01-19 08:26:13 +00:00
Jamie Pine
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
nikec
5cebca67bc [ENG-1545] Remove cover prop from img tag (#1942)
remove cover prop
2024-01-16 11:33:41 +00:00
ameer2468
df887cd057 [ENG-1537] Search UI improvements (#1940)
* wip

* Improve search ui

* Update index.tsx

* Update Filters.tsx
2024-01-16 09:54:15 +00:00
Brendan Allan
249c509d4d Use offset pagination (#1931)
use offset pagination
2024-01-15 06:09:23 +00:00
ameer2468
eb225883e6 [ENG-1536] Quick preview fixes: Tooltip, video switching, and media controls flash (#1934)
* Fix controls flashing when switching videos, tooltip, and video switching in quickpreview

* remove state

* props
2024-01-12 13:58:33 +00:00
Brendan Allan
b94d5207a9 Add suspense to LayeredFileIcon (#1924)
add suspense to LayeredFileIcon
2024-01-09 08:45:43 +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
Utku
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
ameer2468
59532b1aac Quick preview: remove border from thumb image (#1923)
remove border
2024-01-08 15:43:49 +00:00
Oscar Beaumont
bef1ebcade [ENG-1508] Launch Spacedrop (#1893)
* Shit UI

* refactor a bit

* wip

* yeet

* farming the wry but it's stale

* Real-time hover event

* Hook with `Platform` + fix broken window-state plugin

* `DragAndDropDebug`

* Clippy

* revert Tauri v2 stuff

* minor

* probs not gonna work

* undo last commit

* a

* b

* c

* d

* e

* f

* g

* long shot

* 1

* no 7

* da hell

* large bruh moment

* lol

* zzzz

* SSH into CI

* yeet

* Tauri mouse position without new Wry

* go for gold

* Correctly lock `ort` version

* minor fixes

* debounce hover events

* WTF Tauri

* Replace DND hooks with goated versions

* wip frontend stuff

* fix ts

* disable library p2p stuff

* remove Spacedrop dialog + hook up backend

* `useOnDndLeave` working

* Close popover when drag outside

* Allow `openFilePickerDialog` for Spacedrop

* couple of fixes

* empty state

* smh

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2024-01-08 06:42:17 +00:00
Oscar Beaumont
f9853dad85 Remove useExplorerStore (#1916)
* Replace `useExplorerStore` with `useSelector`

* Remove `getExplorerStore()

* Devtools names for all major anonymous components

* referential equality

* Undo mobile changes

* remove debug log

* Properly memoise `RenameTextBox` args

* goodbye log

* Fix a couple of bugs
Thanks @ameer2468 for pointing out!
2024-01-05 08:46:03 +00:00
Ericson "Fogo" Soares
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
Brendan Allan
7aa0452ba3 [ENG-1503] Close search bar when navigating into folder (#1890)
* track search state differently and key location explorer to path

* Update ViewItem.tsx

* remove useless memoisation
2023-12-14 19:30:42 +00:00
nikec
b5aa4970e5 [ENG-1505] fix windows explorer path (#1891)
fix windows explorer path
2023-12-13 17:48:33 +00:00
nikec
caf4fc5cde [ENG-1353] explorer dnd (#1737)
* locations dnd

* fix icon

* reduce navigate timeout

* fix types

* another

* fix drag overlay count

* Update pnpm-lock.yaml

* merge

* ephemeral support and other improvements

* merge

* Tag dnd

* merge

* type

* merge

* remove offset

* update dnd logic to not depend on drag source

* handle allowed types if parent isn't available

* saved searches dnd navigation

* well

* rendering

* Update pnpm-lock.yaml

* types

* remove width

* Temporary solution

* merge

* @dnd-kit/utilities

* Update pnpm-lock.yaml

* explorer path dnd

* remove unused drag hook

* fix dnd on LayeredFileIcon

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2023-12-13 11:59:27 +00:00
Brendan Allan
0db883d0ca Fix image originals in quick preivew (#1889)
* render original images

* separate original component + error boundary

* types
2023-12-13 10:20:02 +00:00
Brendan Allan
89a55f2dd2 Better file thumb handling (#1883)
* handle file thumb error and types better

* Update Thumb.tsx
2023-12-11 12:32:38 +00:00
Brendan Allan
99fc9e0be1 Reorganise file thumb renderer to use more memos (#1865)
* reorganise file thumb renderer to use more memos

* account for original load error

* key grid list items by id
2023-12-06 19:06:54 +00:00
ameer2468
88e346fa74 List view effect adjustment (#1863)
Update index.tsx
2023-12-06 09:18:28 +00:00
Brendan Allan
6d89077a29 fix pagination (#1860)
use cache nodes for pagination
2023-12-06 03:10:00 +00:00
ameer2468
c1b14002eb [ENG-1490] List view: Quick preview image slider performance (#1859)
Remove un-necessary code
2023-12-05 21:58:30 +00:00
Oscar Beaumont
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
52fd4364ed fix quick preview image slider icon size (#1841)
Update index.tsx
2023-11-28 19:15:55 +00:00
ameer2468
b743bb9a9f [ENG-1469] Show slider button (#1840)
* hide slider button in quick preview

* change to icon
2023-11-28 16:15:00 +00:00
ameer2468
a18fdfbcd9 [ENG-1466] dont open quick preview while renaming (#1836)
while renaming a file, don't open quick preview
2023-11-27 08:08:12 +00:00
ameer2468
0ddea92f13 [ENG-1430] Improve keymatcher hook (#1835)
* improve keymatcher hook

* fix delete context menu icon
2023-11-26 08:51:43 +00:00
Brendan Allan
908a13130c [ENG-1435] Saved Searches (#1810)
* saved search CRUD (not perfect)

* saved search settings page

* minor improvements

* fix search filter text apply

* serach in setting

* reduce new tab flicker

* fix tab delete index

* temporarily remove hover effect from applied filters

* fix types

* fix progress

* fix double-add for inOrNotIn

* no more saved searches settings page

* redirect on saved search delete

* cleaner

* fix filter checkbox double fire

* types

---------

Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
2023-11-25 00:16:26 +00:00
Brendan Allan
18c3063283 Use raw search params for search data in url (#1797)
use raw search params
2023-11-18 11:53:24 +00:00
Brendan Allan
ae31e10e0b [ENG-1436] Store search state in search params (#1795)
* source search query from search params

* store filters in search params with round trip

* the rest bc apparently i forgot some?

* remove all references to overview

* add /:libraryId redirect
2023-11-17 21:07:33 +00:00
Brendan Allan
f69959a580 [ENG-1443] Reset search store on search bar unmount (#1794)
reset search store on search bar unmount
2023-11-17 20:08:34 +00:00
nikec
0457643179 [ENG-1444] Fix list view observer (#1793)
Fix observer
2023-11-17 18:17:18 +00:00
nikec
7a701ea8c5 [ENG-1441] Fix search filters overflow (#1792)
* Fix search filters overflow

* comment out save search
2023-11-17 18:07:04 +00:00
nikec
1e512572be [ENG-1439] Align search option internals (#1788)
align internals
2023-11-17 15:52:20 +00:00
Brendan Allan
15b68477e1 Move search to top bar (#1787)
* move search to top bar

* maybe eslint isn't so bad
2023-11-17 11:59:04 +00:00
Jamie Pine
27f077ea0b [ENG-1269] Search options (#1561)
* search options start

* small progress

* more

* bunch of stuff

* semi functioning filters

* cleanup setup api

* progress

* remove filters

* hooked up to query epic moment

* fix

* move db stuff to specific modules

* in/notIn for some fields

* generate ts

* big gains

* working filter options for locations, tags and kind

* working search query

* perfect fixed filters

* saved searches lol

* merge error

* saved searches via api

* better routing

* [ENG-1338] Fix fresh Spacedrive install failing to start due to attempting to query a nonexistent Library (#1649)

Fix Spacedrive failing to start due to attempting to query a nonexistent Library
 - Rename useShoudRedirect to useRedirectToNewLocations
 - Improve behaviour for the immedite redirection after adding a new location

* Show hidden files false by default (#1652)

bool

* fix remove filter in list

* tweaks

* fix nav buttons

* unify MediaData search handling

* cleanup saved search writing

* Add left top bar portals for tags and search + fixed media view on tags

* added search to filter dropdown

* render cycle improvements

* hotfix

* wip

* Refactor with Brendan, but this is a WIP and the search query no longer works

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

* progress

* fix location/$id page

* fix tags too

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

* 3rd refactor lol

epic style

* half-done with enum-ification of SearchFilterArgs

* broken fixed filters but working inNotIn filters

* search name + extension kinda working

* hidden filter

* fixed filters working??

* deferred search value

* extensions works

* filtered search items mostly working

* tweaks

* stacked approach working for non-search filters

* move to Explorer/Search

* actually use filterArgs in queries

things actually work properly now

* added new icons from Mint

* goof

* cleanup types, filters and mutation logic

* actually use search value

* remove overview from sidebar

* don't shrink LibrariesDropdown ga

* remove overview from sidebar and default to /network

---------

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Brendan Allan <Brendonovich@users.noreply.github.com>
2023-11-17 06:58:44 +00:00
Brendan Allan
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
ameer2468
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
nikec
06246198c0 [ENG-1429] Disable show inspector shortcut if quick preview is open (#1783)
disable show inspector shortcut if quick preview is open
2023-11-16 12:40:33 +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
ameer2468
236ef1c106 [ENG-1422] Explorer pathbar nested locations bug (#1767)
* Update ExplorerPath.tsx

* Update ExplorerPath.tsx

* Update ExplorerPath.tsx
2023-11-12 12:37:30 +00:00
nikec
0dafd89741 [ENG-1419] Table sorting (#1765)
table sorting
2023-11-10 22:14:20 +00:00
nikec
b8d13a8cfc [ENG-1418] Explorer settings (#1764)
* preferences

* useShortcut and move location id to function

* void

* rescan
2023-11-10 10:23:51 +00:00
ameer2468
826401efae [ENG-1417] Explorer path nav fix from tag routes (#1763)
* initial navigation fix for explorer path from tag routes

* fix hover effect
2023-11-10 09:06:59 +00:00
Utku
ac0078cd59 [ENG-1416] Add black bars back to grid and list view (#1760)
Add black bars back to grid and list view
2023-11-09 18:25:29 +00:00
ameer2468
efbb4ef689 [ENG-1167] Explorer path tags route (#1757)
* Tags explorer path

* Update ExplorerPath.tsx
2023-11-08 19:21:00 +00:00
nikec
ae89ee71a0 [ENG-1386] Fix explorer view scrollBy (#1755)
remove scroll behavior
2023-11-07 19:58:50 +00:00
nikec
3739ba859c [ENG-1409] Add frame to list view thumbs (#1754)
Add frame to list view thumbs
2023-11-07 08:54:28 +00:00
nikec
97b39f2667 [ENG-1408] Remove frame from video thumbs (#1753)
remove frame from video
2023-11-07 08:54:13 +00:00