* update crypto MSRV
* rename `keychain` to `keyring`
* make a start on the keymanager unlock refactor/keychain integration
* update routes
* update bindings
* add const identifiers
* add UI/front-end support for unlocking KM with OS keychains
* remove SK from lib creation dialog
* update query name
* add keyring functions
* attempt to update `change_master_password()` to use the keychain
* cleanup, fix master password change ui, better secret key in keyring detection
* cleanup TS a little
* add route for getting secret key from keyring
* update bindings
* update var names + show secret key in keys settings
* add `react-qr-code` and option to view the secret key (if it's in the OS keyring)
* allow copying SK to clipboard
* add `key_type` so we're not reliant on specific UUIDs for root/verification key handling
* clippy
* fix mobile typecheck
* fix typecheck, fix typo and tweak balloon hash parameters
* minor cleanup + typo fix
* use newtype structs
* WIP type refactoring (major readability boost!)
* update `use`
* add tokio `sync` feature
* too many structs? idk
* more cleanup
* add `generate` and `Nonce`
* `Nonce` and `Key` typesafety (beautiful)
* clippy + cleanup
* update code & examples
* fix bug & remove `ProtectedVec` as it looked out of place
* use `Key`
* add a query invalidation to make the UI extremely responsive
* ci pls work
* remove `keyringHasSk` route
* 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
* add hash with secret functions
* refactor KM to make the secret key both optional, and user-settable
* update library create function and create library dialog
* fix annoying MPC typo
* fix ordering of key manager creation and seeding
* overhaul master password changing UI to support the potentially empty secret key
* patch keymanager unlocking for potentially empty SK
* make create library dialog text more fitting
* remove dead code
* add autogeneration, view/hide, copy to clipboard icons
* cleanup older code
* make onboarding screen look a tad better
* minor UI tweaks
* patch backup restoration UI
* add pw generation to MP change dialog
* make sure passwords are same before submitting lib creation
* UI fixes and allow setting algorithm/hashing algorithm for master password
* make sure KM is re-seeded on SD load and prevent loading duplicate keys into the keystore
* remove old comment
* small organization
* update encryptfiledialog
* remove dead KM code
* cleanup some TS
* move `PasswordMeter` to separate file
* refactor master password change dialog
* cleanup the TS and improve string -> hashingalgorithm conversions
* add `key` values to selectoption
* capitalise `BLAKE3`
* fix sorting for `getHashingAlgorithmString`
* remove onboarding route
* Revert "add `key` values to selectoption"
This reverts commit 10e6456f22.
* add `key` to `SelectOptionKeyList`
* fix using rspc errors directly
* Update packages/interface/src/components/onboarding/Onboarding.tsx
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* use `navigator.clipboard.writeText`
* move `OnboardingConfig` to crypto crate
* move `zxcvbn` options outside of component
* further cleanup
* fix mobile typecheck
* fix keylist typo
* improve `SelectOptionKeyList` further
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* 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>
* 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>
* Preparing some scaffolding for video thumbnails
* Implemented thumbnail generation for videos
* Propagating errors of `Node` creation
* Using ffmpeg feature gate
* Introducing ffmpegthumbnailer-rs as a subcrate on core
* - rename to thumbnailer
- fix explorer thumbnail bug
- add more supported video types
- re-fix explorer performance
* remove nested licence
Co-authored-by: Jamie Pine <ijamespine@me.com>
* Tag queries + Identifier bug fix
- added empty pages for docs
- added non-functional "New Library" button to sidebar
- to accomplish above, moved dialog logic to component folder
- fixed Identifier bug where location id was not considered in the orphan files query, meaning it would attempt to identify many non-existent paths and fail to create the legitimate ones
* (fix) maintain file item aspect ratio in grid view
(fix) get tag query + get all tags
* codegen
* resurrected context menu
* fix window flash
* remove location based thumb sorting + update react on landing
* add is_archived to location
* improved context menu
* assign tag + refactor explorer store
Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>
* assign/unassign tags from context menu
* fix lint
* keep context menu open on tag change
* fix brendan feedback + merge main
* fix type
* codegen
* style changes
* revert windows size and xcode proj
* remove outdated doc
* coming sooooooon
* updated release notes
* release notes
* dashes > dots
* clean up docs
* more docs!
* restore entitlements
* remove unused util
* regenerated migrations post merge
- some additional error handling added to migration runner, needs more work!
* refactor explorer to support tags
* fix error and revert explorer bg color
* put it in a box they said
* revert location id store removal
* upgrade hero icons + style tweaks
Co-authored-by: maxichrome <maxichrome@users.noreply.github.com>