* Fix issue with root locations failing to be added
- Add `normpath` dependency to the core
- Improve automatic name resolution for new locations
* Add `MetadataExt` trait to extend the `created` and `modified` methods of `Metadata`
- Prevent failure in the Indexer job caused by paths without associated created or modified times; assume current time for both when unavailable
- Rename possible location in root path from `/` to `Root`
* Improve hadling of location path on Windows
- Normalize location's path to ensure a valid format on Windows
- Improve error handling when adding a path
- Avoid consuming symlinks on Linux by not normalizing location's path
- Improve location naming logic
* Topbar improvements
lint
lint
Prettier formatting
* pr adjustments
* prettier
* remove forwardedRef from searchbar and use a local ref instead.
* lint
* pr adjustments
prettier
remove forwardedRef from searchbar and use a local ref instead.
lint
* date_created
* replace date_created with created_at
* fix merge
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* Make Prettier and ESLint work together
- Resolve conflicts between Prettier and ESLint regarding indentation and Tailwind rules order
- Add `.editorconfig` to standardize basic formatting options across tools and editors
- Add `.gitattributes` to hide `pnpm-lock.yaml` in `git diff` output
- Include EditorConfig in the recommended extensions for VSCode
- Replace some instances of `pnpm exec <command>` with `pnpm <command>`
- Remove superfluous Tauri config for Linux
* Revert Prettier changes (it was working correctly before)
- Update ESLint to read Tailwind config from absolute path
- Remove redundant Prettier dependency from subprojects
- Specify the source folder for the lint script in subprojects
* use mobile's tailwind config with eslint
* pnpm format + pnpm lint:fix
---------
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
* Topbar responsiveness
remove duplicate code
Searchbar: remove form hook and replace with a regular state.
onblur
* Applied feedback + added back in top bar blur
Remove read-only check when creating a location
- Revert location creation if writing the `.spacedrive` file or updating the library location manager fails
* Implement indexer rule editing for locations
- Partially implement IndexerRuleEditor (missing indexer rule creation)
- Update AddLocationDialog to use IndexerRuleEditor instead of checkboxes
- Enable IndexerRuleEditor on the Location settings page
- Improve error handling on the Location settings page
* Change location data retrieve logic on settings page
- Improve error handling on settings page (don't send NaN to backend)
- Add disabled prop to Form component
- Wait for data before allowing edits on location settings page
- Change some snake_case object properties to camelCase
- Fix a small error in rspc client that transformed any falsy argument value to null
* Remove console.log
* Fix issue with errors only being handled during the first load of the location settings page
* Improve Windows setup script
- Change LLVM install logic to use version 15 instead of the latest, due to incompatibilities of new LLVM (16) with `ffmpeg-sys-next` build script
- Add check to ensure script is executed as administrator, due to chocolatey requiring admin privileges to install `protoc`
- Update ffmpeg to 5.1.1 to match used `ffmpeg-sys-next` version
- Don't attempt to reinstall LLVM when it is already installed
* Wait for key press before closing script
* Fix typo
* Choco install auto accept
* Specify PNPM version when installing on windows
* More logs
* Fix windows setup script not copying ffmpeg dlls to the correct location
* Better installation logic for llvm, protobuf, ffmpeg
- Remove dependency in Chocolatey
- Download ffmpeg version based on ffmpeg-sys-next version
- Improve version checks
- Install protobuf directly from github
- Update rimraf so globbing works in Windows
- Avoid dist/.gitignore being deleted by rimraf
* Fix bugs and handle errors in Windows setup script
- Check for connectivity with GitHub before proceeding with setup.
- Implement a workaround for pnpm bootstrap problems on Windows.
- Check if Cargo packages are up to date before parsing the metadata.
- Ensure that the FFMPEG_DIR environment variable is set.
- Use double quotes for rimraf arguments on Windows.
* Auto-install VisualBuildTools (C++) and Rust in Windows setup
- Fix protoc envvars not being set in CI
- Improve logs
* Install LLVM automatically
- Remove sleeps
- Uninstall any imcompatible LLVM version present
- Ensure path is fresh after installing rust and cargo
* Fix system path not being set correctly in windows setup script
- Install node with winget and pnpm with npm
- Rewrite initial script message
- Don't wait for user interaction when running in CI
* Improve environment check to ensure we are on Windows x64
- Warn users if they have already installed incompatible versions of LLVM and pnpm instead of silently removing them
* Ensure Path and Env are correctly set and available in the windows setup script
- Improve error handling
- Improve logs
* Fix FFmpeg version parsing getting multiple version sometimes
- Fix some typos
* Extracted components within TopBar to their own files as components. Added support for for cmd/ctrl + f and Esc for keyboard searchbar.
* Fixed misplaced event prevent default
* Add QuickPreview Component
- Improve the handling of Range requests
- Implement logic to answer HEAD and OPTIONS methods
- Handle CORS pre-flight requests
- Expand accepted file types
- Improve error handling of invalid Range requests
* Fix linter errors
- Add `use std::cmp::min` to custom_uri (Required on MacOS & Windows)
- Improve logic for retrieving file information in QuickPreview.tsx
* More linter errors
* Simplify `QuickPreview` by extracting the logic for choosing the file preview tag to a `FilePreview` component
- Fix the typo in `QuickPreview` props name
- Remove the unused `handleMedia` ref
- Move the remaining `QuickPreview` logic to the `transitions` callback
- Simplify the `cors` return type in `custom_uri.rs`
* Refactor range handling in `handle_file` function
- Move range handling logic to the initialization of the `range` variable
- Replace `if let` with `match` to reduce code duplication
- Don't export FilePreview
- Export QuickPreviewProps
* Fix typo in `RangeNotSatisfiable` error message
- Remove redundant variables
* Fixing cas_id generation on watcher
Some improvements on watcher file creation
* Rust fmt
---------
Co-authored-by: Ericson Soares <ericson.ds999@gmail.com>
Co-authored-by: Jamie Pine <ijamespine@me.com>
* stuff
* stuff (but for android)
* test mobile ci
* move pnpm up
* install ndk
* add ios & cleanup
* onboarding flow test
* test ci
* fixes, cleanup, caches
* why you do this cargo
* fix pnpm-lock
* add path to build rust script?
* ci is fun
* yolo
* fix broken flow..
* fix pnpm
* probably not gonna work
* test x2
* use real branch of pcr
* android emulator and try ios x2
* Use react native architectures, instead of all.
* override architecture to speed up android build
* protoc & build android on macos too
* fix java ndk
* android gradle
* disable ios for now
* use simulator sdk & debug configuration on ios build
* cleanup
* avd test
* fix avd settings.
* only build for x86_64 on ci
* Fix ios build
* Add IOS testing
* maestro script
* ios release build & wait for library creation
* clean up and disable android for now
* fix pnpm-lock
* Add concurrency to cancel previous runs
* fix pnpm-lock
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* Add label and error to form field
* Add error styling
* Update other form fields
* Update FormField.tsx
* Update Input.tsx
* Move field state to hook
* remove required