Commit Graph

301 Commits

Author SHA1 Message Date
Jamie Pine
cb51a6c1fb add better ConnectionInfo 2026-01-24 12:13:26 -08:00
Jamie Pine
25197fde6d feat(mobile): add Jobs screen and enhance search functionality
- Introduced a new Jobs screen to display and manage job statuses with controls for pause, resume, and cancel actions.
- Updated RootLayout to include navigation to the new Jobs screen.
- Enhanced SearchScreen with improved search capabilities, including auto-focus and dynamic filtering based on user input.
- Integrated GlassContextMenu and SearchToolbar components for better user interaction during searches.
- Updated GlassSearchBar to support controlled input and clear functionality.
- Refactored ExplorerScreen to incorporate search context and improve file browsing experience.
2026-01-22 12:30:01 -08:00
Jamie Pine
60803ab7ec refactor(mobile): remove unused navigation components and enhance search functionality
- Deleted obsolete navigation components including DrawerNavigator, RootNavigator, and TabNavigator to streamline the mobile app structure.
- Introduced the GlassSearchBar component for improved search capabilities across screens.
- Updated BrowseScreen to integrate the new search bar and enhance user experience with animated scrolling and dynamic content display.
- Adjusted layout and styling for better responsiveness and visual appeal.
- Added phosphor-react-native dependency for icon support in the GlassSearchBar.
2026-01-22 11:22:18 -08:00
Cursor Agent
2f7a88a625 refactor useNormalizedQuery to accept query name
Co-authored-by: ijamespine <ijamespine@me.com>
2026-01-22 07:00:52 +00:00
Jamie Pine
0264add338 feat(mobile): add GlassSearchBar and JobManagerPanel components, update Xcode scheme
- Introduced GlassSearchBar component for enhanced search functionality in the mobile app.
- Added JobManagerPanel component to manage and display job statuses.
- Updated Xcode scheme to use Debug configuration and LLDB debugger for improved development experience.
- Enhanced OverviewScreen to integrate the new components, improving user interaction and job visibility.
2026-01-21 16:15:58 -08:00
Jamie Pine
59184f8849 feat(mobile): integrate LiquidGlass for enhanced UI and add sidecar statistics
- Added LiquidGlass dependency to enhance visual effects in the GlassButton component.
- Updated GlassButton to support LiquidGlass effects based on device compatibility.
- Introduced PageIndicator component for improved navigation feedback in BrowseScreen.
- Enhanced OverviewScreen and HeroStats to display sidecar statistics, including count and size.
- Updated related files and dependencies to reflect these changes.
2026-01-21 14:58:12 -08:00
Jamie Pine
0f65d672ff feat(overview, mobile): Themes and improved OverviewScreen
- Introduced a new GlassButton component for enhanced UI interactions.
- Updated OverviewScreen to include animated blur effects and improved header behavior during scrolling.
- Added expo-blur dependency to enhance visual effects in the mobile application.
- Adjusted Podfile.lock and package.json to reflect new dependencies and ensure compatibility.
2026-01-21 12:26:34 -08:00
Jamie Pine
f2dc233f93 feat(file-explorer): enhance file handling and search functionality
This commit introduces several improvements to the file explorer and search functionalities. It adds a new `getFileKindForIcon` utility for better icon resolution based on file content kind. The search input validation now allows empty queries when sorting by `IndexedAt`, and the search query execution has been optimized to handle empty queries more efficiently. Additionally, the `ContentKind` utility has been refactored and centralized in the `ts-client`, improving code organization and reusability across components. Updates to various components ensure consistent usage of the new utilities, enhancing the overall user experience.
2026-01-20 10:36:18 -08:00
Jamie Pine
ebe7d36ed5 feat(recents): add RecentsView for displaying recently indexed files
This commit introduces the RecentsView component, which allows users to view recently indexed files sorted by the indexed_at timestamp. The view integrates seamlessly with existing components, ensuring consistent interactions such as keyboard navigation and drag-to-select. Additionally, it updates the Explorer context to support entering and exiting recents mode, enhancing the overall file browsing experience.
2026-01-20 10:35:48 -08:00
Jamie Pine
7c3e977025 feat(explorer): implement ExplorerScreen and file browsing functionality
This commit introduces the ExplorerScreen, allowing users to navigate and view files in a structured manner. It includes the implementation of hooks for fetching files, supporting both virtual and directory listings. The screen features a toggle between list and grid views, enhancing user experience. Additionally, new components for file representation in both views have been added, streamlining the browsing process and improving overall functionality.
2026-01-20 09:46:10 -08:00
Jamie Pine
1de4f625ec feat(browse): enhance BrowseScreen with new components for Devices, Locations, and Volumes
This commit introduces three new components: DevicesGroup, LocationsGroup, and VolumesGroup, to the BrowseScreen. These components utilize normalized queries to fetch and display relevant data, improving the organization and modularity of the code. Additionally, the BrowseScreen has been refactored to remove unused code and streamline the UI, enhancing overall user experience.
2026-01-19 15:43:45 -08:00
Jamie Pine
df1ee8aec5 feat(overview): add ActionButtons component and integrate into OverviewScreen
This commit introduces a new ActionButtons component to the OverviewScreen, providing quick access to device pairing, sync setup, and storage addition functionalities. The component enhances user interaction by allowing users to perform these actions directly from the overview interface. Additionally, updates to the DevicePanel and HeroStats components improve overall functionality and UI consistency.
2026-01-18 06:21:02 -08:00
Jamie Pine
ae512d8c0b feat(snapshot): implement snapshot persistence for ephemeral indexes
This commit introduces a new snapshot mechanism for ephemeral indexes, allowing for fast restoration between sessions. The snapshot functionality utilizes zero-copy binary serialization with zstd compression, significantly reducing load times from over 10 minutes to just 1-2 seconds. The implementation includes methods for saving and loading snapshots, as well as enhancements to the existing indexing structure to support this feature. Additionally, the codebase is updated to ensure compatibility with the new snapshot format, improving overall performance and user experience.
2026-01-15 02:09:06 -08:00
Jamie Pine
e3a3fdc68b feat(overview): refactor OverviewScreen and introduce DevicePanel
This commit refactors the OverviewScreen component by removing the PairedDevices and StorageOverview components, replacing them with a new DevicePanel component. The DevicePanel provides a more streamlined interface for managing devices and their associated storage volumes. Additionally, the HeroStats component is updated to enhance the display of storage statistics, and the overall structure of the OverviewScreen is improved for better readability and maintainability. The changes also include the addition of new hooks for fetching location data and managing selected locations reactively.
2026-01-14 06:55:39 -08:00
Jamie Pine
5b1fd31e3a Implement app reset functionality and context management
- 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.
2025-12-17 20:26:26 -08:00
Jamie Pine
0b93a60895 Refactor: Improve event unsubscription handling in useClient and App components
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.
2025-12-15 05:46:59 -08:00
Cursor Agent
29d79ee9e7 feat: Add auto-switch for synced libraries
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>
2025-12-15 08:45:40 +00:00
tembo[bot]
5d980257a0 refactor(pairing): Remove auto-accept option and related code 2025-12-10 21:20:41 +00:00
Jamie Pine
9438965ffd Update subproject commits and Podfile.lock for dependency versioning
- 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.
2025-12-09 19:24:04 -08:00
Gedeon Sainrival
22031d3b5d Start generating builds for Android
- 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
2025-12-07 20:53:12 -05:00
Jamie Pine
0c7c5e05f2 fix: fix logCallback and setCurrentLibrary 2025-12-06 16:46:02 -08:00
Jamie Pine
17abcc4221 feat: update ExplorerView and Info.plist 2025-12-06 16:46:02 -08:00
Jamie Pine
5183d37394 some more code 2025-12-05 15:17:00 -08:00
Jamie Pine
b4024c860e Mobile app in React Native
+ validation support for Actions
2025-12-05 15:16:41 -08:00
Jamie Pine
94a52dd2df cleanup 2025-10-11 08:48:11 -07:00
Arnab Chakraborty
fcaac7860f Fix CORS issue & Mobile core startup times 2024-11-30 00:55:06 -05:00
Arnab Chakraborty
a1b3c8cf8d Lint 2024-11-28 03:51:33 -05:00
Arnab Chakraborty
189b61a377 Working fix + Native Swift Functions 2024-11-28 03:21:30 -05:00
Vítor Vasconcellos
3d58f4b470 Autoformat 2024-10-21 14:49:02 -03:00
Vítor Vasconcellos
7e7dd8fbde Merge remote-tracking branch 'origin/main' into eng-1828-migration-to-new-cloud-api-system 2024-10-21 14:40:59 -03:00
Vítor Vasconcellos
cc7c9d5793 Improve file thumbnails and Quick Preview (+ some code clean-up and rust deps update) (#2758)
* 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
2024-10-21 15:47:40 +00:00
Vítor Vasconcellos
124fe5b0b0 Remove obsolete settings cloud page
- Fixed some typings
 - Update vite
2024-10-19 08:06:11 -03:00
Arnab Chakraborty
1f0525c8ee Autoformatting 2024-10-14 22:49:46 -04:00
Arnab Chakraborty
1bfaed39b0 Add sync status to mobile 2024-10-14 22:46:13 -04:00
Arnab Chakraborty
99d453797b Sync profile page & Update mobile device names
DO NOT TRY ANDROID. IT IS BROKEN AND PANICKING ON CORE WHEN COMPILED.
2024-10-14 21:18:28 -04:00
ameer2468
81147e21a2 cleanup auth, sync join modal, and more 2024-10-11 17:56:01 +03:00
Arnab Chakraborty
6c0c0e020f Merge branch 'main' into eng-1828-migration-to-new-cloud-api-system 2024-10-09 23:14:00 -04:00
Lynx
4cfa0e781e Add no telemetry option and improve analytics code clarity (#2740)
* 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
2024-10-07 22:00:38 +00:00
Lynx
a08c890f86 Merge branch '0.5.0-dev' into eng-1828-migration-to-new-cloud-api-system 2024-10-07 13:31:25 -07:00
Vítor Vasconcellos
a223fa0a8b Merge remote-tracking branch 'origin/main' into eng-1828-migration-to-new-cloud-api-system 2024-10-06 23:36:06 -03:00
Lynx
0f6cd766ce Merge remote-tracking branch 'origin/main' into 0.5.0-dev 2024-10-06 15:14:30 -07:00
Vítor Vasconcellos
cdc50140b0 [ENG-1928] Update to tauri 2.0.1 stable (#2752)
* 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
2024-10-05 21:17:30 +00:00
lynx
4467e8af8d fix classname ordering with new font changes 2024-10-03 06:28:54 -07:00
lynx
458e05ea60 add new brand font font to some screens in the app
IBM Plex Sans
2024-10-03 06:28:54 -07:00
Ericson Soares
8833bbd4f5 Fix sync group join 2024-10-02 03:09:20 -03:00
Ericson Soares
556e760efa Update schema 2024-10-01 15:18:28 -03:00
Arnab Chakraborty
7f6cb9e777 Fix join sync group on mobile 2024-09-30 17:12:07 -04:00
Arnab Chakraborty
efbecd4c61 Fix type errors & add notif logging on mobile 2024-09-30 11:35:59 -04:00
Arnab Chakraborty
e4edbee965 Working p2p relay backend 2024-09-28 04:01:06 -04:00
Arnab Chakraborty
67973e82fc wip 2024-09-27 23:20:10 -04:00