* refactor routes
* use default export for screens
* use "route" relative routing
* don't use absolute import for root screens
* no absolute importing folders!!!
* fine we can absolute import folders
* Fix spacing
* Primitive popup menu
* Sort by & layout menu
* Add sort direction
* Style sort by menu
* new file icons
* thumb wrapper
* update packages & fix folder color
* explorer list & grid views
* Fix grid view spacing
* Grid image sizing
* Explorer store + calculation of grid item size
* Explorer list view
* Explorer store on filerow too
* Introducing location online/offline checks and location relink
* Some initial drafts for location watchers
* Location metadata relink and add library
* Many improvements at job system
Now using prisma batching at identifier job
Removing blocking I/O from extension subcrate
Implementing lazy generation of thumbnails
New current directory identifier job to be used on light rescans
* Some optimizations on identifier and object validator jobs
* merge jamie's identifier PR
* fully repaired identifier job
* properly hooked up object kind
* inspector fix
* fix video badge
* small improvements to libraries settings
* identifier and inspector improvements
* fix feature flags and hook up context menu location utilities
* BETTER CONTEXT MENU x100
* test-files
* style tweaks
* new icon designs
* manifest
* fix thumbnails on web
* media data
* New Location Watcher and some minor fixes
* disable broken media_data extractor, wip
* wip
* function name fix
* Fixing pnpm prep and some warnings
* Solving a race condition beetween indexer job and FS event handlerSome other minor warnings
* Generating thumbnails on watcher
* Remove event handler on watcher
* Some initial works on modify events and other small fixes
* File update event
* Trying to be more generic with used events and some tests to validate our assumptions
* Turning on location metadata file
* Introducing core unit tests on CI pipeline
* Submiting new unit test assumptions to validate on windows CI
* Fixing unit tests
* Fixing unit tests again
* Fixing unit tests
* Fixing unit tests for macos
* Fixing unit tests for macos again
* New structure for platform dependent event handling
Implementing event handlers for Linux and MacOS
* minor fixes + rustfmt + clippy
* Windows event handling
* Introducing a feature gate to only use location watching on desktop app for now
* Putting more stuff behind feature gates to avoid warnings
* Adding feature to cargo test on CI
* Changing some debug logs to trace logs and removing Jamie specific stuff
* Make location removal from manager less async
* fix build when "location-watcher" feature disabled
* fix types + clippy
* make location manager non-static
* remove uses of `to_string_lossy`
* more invalidate_query calls
* Expose `library_ctx` directly to avoid needless clones
* New materialized_path handling for directories
* Removing cascade delete between file_path and object
- Some other minor stuff
* remove unused `CurrentDirFileIdentifierJob`
Co-authored-by: Jamie Pine <ijamespine@me.com>
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
* Sync tailwind configs
* Switch to new colors part 1
* new colors part 2
* switched to new colors
* settings screens template
* settings progress
* Setting header titles
* Refactor settings icon
* Fix tsconfig relative path issue
* Move mobile eslint config to @sd/config
* Add no-restricted-imports rule to eslint
* rename TextInput to Input & tailwind font sizing
* General Settings screen + Card component
* Library settings screen & delete lib dialog
* autoform hook
* Mini tweaks and new packages
* Exclude android & ios from search
* Add Switch (Input)
* Library General settings screen
* Refactor settings + Switch and Switch Container
* Locations screen & delete and rescan locations
* Rename folder + small tweaks
* Make things Swipeable
* Create Tag Dialog with color picker
* Upgrade to Expo 47
* More tag stuff
* fix pnpm lock
* regen pnpm-lock
* Change CI node version to 16
* Move `isVideo` into shared package
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
* add generic dialog for keys settings
* revert artifact failed key viewing attempt
* move `Select` key list component
* rename dialog
* remove unused imports and add new select option for *all* keys
* add WIP but broken key viewer dialog
* cleanup code and fix key viewer dialog
* add clipboard icon and copy functionality
* generalise the `AlertDialog` and refactor `BackupRestoreDialog` to use it
* use new alert dialog in place of JS/tauri alerts
* use generic alerts everywhere and bring generic alert props/default state
* make `SelectOptionKeyList` generic for mounted/unmounted keys (with the use of `map` for the latter)
* add clipboard to generic alert dialog + clean up
* fix accent colour button for backup restoration
* remove unneeded props from components
* add slider+automount button
* tweak password gen function
* add password autogeneration
* clippy
* tweak password generation
* use `crypto-random-string` and drop rust password generation
* add default TEMPORARY keymanager pass/secret key to library creation screen
* make key automounting functional
* clean up key viewer
* change dialog name
* remove slider as that wasn't even being used?
* make requested changes and hide key viewer if no keys are in the key manager
* prevent automount and library sync from being enabled simultaneously
* include `memoryOnly` in key
* mark keys as memoryOnly
* add base crypto job
* leave hashing to the KM and not keyslots
* add latest header object versions and update examples
* add a very experimental (local file!) encrypt job
* working file encryption with default key
* working file decryption
* non-working encrypt file dialog
* general code cleanup
* comments and correct feature locking
* fix the `Dialog`
Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
* WIP encrypt dialog
* massive encrypt dialog overhaul
* add generic explorer alert dialog
* better key naming/numbering, alerts for unsupported scenarios
* cleanup + decrypt file dialog
* remove debugging stuff
* remove dead code & fix a bug with key select being empty
* clean up dialog UI massively
* add support for setting output path
* add correct button type to prevent early dialog submits
* add "nice" job data for encrypt/decrypt
* tweak functionality of key setting in encrypt dialog
* include full file metadata if selected, and lay out groundwork for preview media inclusion
* add comment about not restoring metadata/pvm just yet
* general cleanup
Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
* use @sd/client for tsconfig extends
* move all svgs to @sd/assets
* only use vite-tsconfig-paths
* remove ui from web
* use relative extends for ui tsconfig
* remove aliases from landing?
* use wacky landing vite config
* try using tsconfig paths and root on landing
* Revert "try using tsconfig paths and root on landing"
This reverts commit 43bd2a0f84.
* remove tsconfig-paths from landing
* Fix File modal and Stats
* Add disabled and loading state for dialog
* Close library drowdown with drawer
* catch Rust panics on mobile to prevent UB
* Update packages
* Move create lib dialog to container
* Create library on onboarding
* Cleanup metro config & update packages
* onClose for Dialog & update library cache
* Fix pods, downgrade react-native-svg
* Fix lib switching, organization, start import modal
* Add device size info
* Revert merge + version upgrade/fix
* Create Location & Remove placeholder data
* Create default modal component
* Check if the location already exists
* Add media-library + prettier
* fix build
* Fix Xcode shellScript too
* More small fixes
* don't export bindings on mobile devices
* Explorer store + cleanup
* Explorer comp. & add flashlist
* [WIP] Files in Locations & new file thumb
* clean merge
* Fix imports
* Fix core on mobile
* Add platform context to mobile
* Refactor libraryStore
* Add thumb url path to platform context
* Try fixing app startup
* Add zip and video to filethumb
* Delete bindings.ts from mobile
* Remove heroicons from mobile too
* useForwardedRef hook
* Media Library permission stuff
* Clean import modal
* remove valtio-persist from @sd/client
* prevent Sentry capturing all events
* refactor `@sd/client` to make it better for mobile
* fix mobile splashscreen
Just trust me bro
* fix mobile draw active style
* use custom valtioPersist for current library state
* remove mobile lockfile
It's now in the pnpm workspace so it shared the main one.
* finally remove valtio-persist
* remove 'mobile' from Platform as it's in interface
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
* Sentry support
* remove broken import
Co-authored-by: Jamie Pine <32987599+jamiepine@users.noreply.github.com>
Co-authored-by: Jamie Pine <ijamespine@me.com>