- Introduced AppResetContext to manage app reset operations across components.
- Updated App and RootLayout to utilize the reset context, allowing for a clean reset of the app state.
- Enhanced SettingsScreen with a reset data option, prompting users for confirmation before clearing all data and refreshing the app.
- Added core reset action in the backend to handle data deletion and cleanup operations.
- Improved user feedback during reset operations with alerts and status messages.
- Updated event handling in job management to include device IDs for better tracking of job activities across devices.
- Introduced a new JobActivityClient for subscribing to job activity from remote devices.
- Added hardware specifications to device configuration and database schema, improving device information tracking.
- Refactored event structures to accommodate new fields related to job activities and device management.
- Updated the user interface to display job activity for devices, enhancing user experience in monitoring job statuses.
This update modifies the unsubscription logic in both the useClient and App components to utilize promises for better handling of asynchronous cleanup. This change enhances the reliability of resource management during component unmounting.
This commit introduces an auto-switch feature for libraries created via sync. Users can now configure whether to automatically switch to a newly synced library. This involves updates to the preferences store, event handling in mobile and tauri apps, and modifications to the core library event system to include a `LibraryCreationSource` enum.
Co-authored-by: ijamespine <ijamespine@me.com>
- Marked subprojects as dirty to indicate local changes.
- Updated Podfile.lock to reflect new versions for several dependencies, including EXConstants (18.0.11), EXManifests (1.0.10), Expo (54.0.27), and others, ensuring compatibility and access to the latest features and fixes.
- Adjusted paths in external sources to match updated dependency versions.
- Refactored the App component to enhance readability and maintainability, including adjustments to route handling and client initialization.
- Introduced QuickPreviewSyncer and QuickPreviewController components in the Explorer to optimize rendering and selection handling.
- Enhanced Column and ListView components with memoization to prevent unnecessary re-renders, improving performance during file selection and navigation.
- Updated event handling in the useNormalizedQuery hook to streamline query management and improve type safety.
- Adjusted various components to ensure consistent styling and behavior across the application.
- Introduced a new filesystem watcher service, replacing the previous location watcher with a more robust and platform-agnostic implementation.
- Updated the core context to include the new filesystem watcher and refactored related services for better integration.
- Added support for ephemeral event handling, allowing real-time updates for non-persistent locations.
- Integrated new sound effects for pairing operations in the UI, enhancing user experience during device pairing.
- Updated the File Operation Modal to support both copy and move operations with improved conflict resolution options.
- Refactored related components to ensure consistency and improved performance across the application.
- Update Kotlin version to 2.2.20
- Update sd-mobile-core with modern expo-modules API to successfully
compile on Android
- added android to build-mobile xtask
- updated CONTRIBUTING.md
- Added `openssl-sys` to sd-mobile-core as a workaround for native
Android builds
- Switched from deprecated @react-native-community/clipboard
* Update rspc, prisma-client-rust, axum and tanstack-query
- Deleted some unused examples and fully commented out frontend code
- Implement many changes required due to the updates
- Update most rust dependencies
* Re-enable p2p
* Fix server
* Auto format
* Fix injected script format
- Update some github actions
- Update pnpm lock file
* Fix devtools showing up when app opens
- Fix million complaining about Sparkles component
* Fix sd-server
* Fix and improve thumbnails rendering
- Fix core always saying a new thumbnail was generated even for files that it skiped thumbnail generation
- Rewrite FileThumb and improve related components
* Ignore tmp files when running prettier
* Improve FileThumb component performance
- Rework useExplorerDraggable and useExplorerItemData hooks due to reduce unecessary re-renders
* More fixes for thumb component
- A couple of minor performance improvements to frontend code
* auto format
* Fix Thumbnail and QuickPreview
* Fix logic for when to show 'fail to load original' error message in QuickPreview
- Updated prisma-client-rust, libp2p, tauri, tauri-specta, rspc and hyper
* Fix type checking
- Format scripts
* Add script prettier config
* Fix serde missing feature
- Use rust-libp2p spacedrive fork again
- Update rspc
* Autoformat + fix pnpm lock
* Fix thumbnail first load again
* Autoformat
* autoformat
* Fix rust-libp2p fork url again?
* Remove usePathsInfiniteQuery hook
* Update tauri 2.0.6
* Refactor analytics configuration to use `configureAnalyticsProperties` instead of `initPlausible` for improved clarity
* format & add comment explaining analytics ping code
if any people reviewing source for their own verification of its purpose, this should make it much clearer what this does
* refactor Setting to use named function so its references can be source-peeked
* add basic support for 'none' telemetry option
changing the option in the Select dropdown breaks things right now, gotta figure out why
* fix usePlausibleEvent sending old telemetry level preference property to submitPlausibleEvent
* Fall back fo 'unknown' instead of '0.1.0' for app version stats
* Better explain the purpose of more things in submitPlausibleEvent
* organize and clean up internationalization file keys
* fix lowercase connect/connecting key names in code
* add no-telemetry option to onboarding
* Only display error report button if telemetry is enabled
* Add explainer to Sentry plugin for Vite
* Fix onboarding selection in both interface and mobile
* Add more explanation and checks to usePlausible to never send data unless allowed
* add support for onLoad to transform data from persisted mutable stores
* update some analytics explainers on mobile
* add telemetry state migration
* add migration for telemetry state from explorer layout key in persisted store
* fix cypress test for onboarding privacy page
* remove some accidentally included console.log statements
* Add localized analytics preference names
* Use localized telemetry preference names in Settings
* use cleaner text wrapping in settings
* Update the telemetry setting title
* fix telemetry typo
* update mobile no-analytics text
* remove telemetry override option
* eslint: disable no-empty-object-type for PlausibleOptions
the reason is commented
* Update to tauri 2.0.0 stable
- Update a some othe dependencies
- Autoformat rust and toml files
* Fix clippy complain
* Update tauri 2.0.1
- Update rspc
- Update some frontend files due changes in rspc
- Update some frontend build dependencies
* Revert babel update
* Fix code typing typing and style + a couple of bugs
* More type fixes