* Bump ts lib
* Make engine background color driven by theme setting
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* Force snapshots to dark mode, fix theme init
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* Don't assume we have engineCommandManager in CameraControls,
because for some reason it's being loaded before engineConnection in test environments?
* Merge branch 'main' into change-bg-color
* Replace optional chaining with this.engineCommandManager
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* Okay now all snapshot tests are actually in dark mode
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* trigger ci
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Kurt Hutten Irev-Dev <k.hutten@protonmail.ch>
* Rename GlobalStateContext to SettingsAuthContext
* Naive initial impl of settings persistence to file system
* Update app identifier in tauri config
* Add "show in folder" tauri command
* Load from and save to file system in Tauri app
* Add documents drive to tauri permission scope
* Add recursive prop to default dir selection dialog
* Add success toast to web restore defaults action
* Add a way to validate read-in settings
* Update imports to use separate settings lib file
* Validate localStorage-loaded settings, combine error message
* Add a e2e test for validation
* Clean up state state bugs
* Reverse validation looping so new users don't error
* update settingsMachine typegen to remove conflicts
* Fmt
* Fix TS errors
* Fix import paths, etc post-merge
* Make default length units `mm` and 'metric'
* Rename to SettingsAuth*
* cargo fmt
* Revert Tauri config identifier change
* Update clientSideInfra's baseUnits from settings
* Break apart CommandBar and CommandBarProvider
* Bugfix: don't validate defaultValue when it's not configured
* Allow some TauriFS functions to no-op from browser
* Sidestep circular deps by loading context and kclManager only from React-land
* Update broken import paths
* Separate loaders from Router, load settings on every route
* Break apart settings types, utils, and constants
* Fix Jest tests by decoupling reliance on useLoaderData from SettingsAuthProvider
* Fix up Router loader data with "layout routes"
https://reactrouter.com/en/main/route/route#layout-routes
* Move settings validation and toast to custom hook so the toast renders
* fmt
* Use forks for Vitest
https://vitest.dev/guide/common-errors.html#failed-to-terminate-worker
* $APPCONFIG !== $APPDATA only on Linux
+ change the identifier back since it really doesn't seem to affect app signing
* Debugging on Linux
* Better directory validation, fix reset settings button
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* defaultDirectory can be empty in browser
* fmt
* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu)
* re-trigger CI
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>