* feat: support customize folder path
* feat: add l10n and optimize the logic
* chore: code refactor
* feat: add file read/write permission for macOS
* fix: add toast for restoring path
* feat: fetch apps and show them
* feat: fetch apps and show them
* feat: implement select document logic
* feat: l10n and add select item callback
* feat: add space between tile
* chore: move file exporter to settings
* chore: update UI
* feat: support customizing folder when launching the app
* feat: auto register after customizing folder
* feat: l10n
* feat: l10n
* chore: reinitialize flowy sdk when calling init_sdk
* chore: remove flowysdk const keyword to make sure it can be rebuild
* chore: clear kv values when user logout
* chore: replace current workspace id key in kv.db
* feat: add config.name as a part of seesion_cache_key
* feat: support open folder when launching
* chore: fix some bugs
* chore: dart fix & flutter analyze
* chore: wrap 'sign up with ramdom user' as interface
* feat: dismiss settings view after changing the folder
* fix: read kv value after initializaing with new path
* chore: remove user_id prefix from current workspace key
* fix: move open latest view action to bloc
* test: add test utils for integration tests
* chore: move integration_test to its parent directory
* test: add integration_test ci
* test: switch to B from A, then switch to A again
* chore: fix warings and format code and fix tests
* chore: remove comment out codes
* chore: rename some properties name and optimize the logic
* chore: abstract logic of settings file exporter widget to cubit
* chore: abstract location customizer view from file system view
* chore: abstract settings page index to enum type
* chore: remove the redundant underscore
* test: fix integration test error
* chore: enable integration test for windows and ubuntu
* feat: abstract file picker as service and mock it under integration test
* chore: fix bloc test
Co-authored-by: nathan <nathan@appflowy.io>
* chore: write snapshot
* chore: add tests
* chore: sync close
* chore: restore from snapshot
* chore: delete invalid revisions after restored from snapshot
* chore: create default view if it fail to deserialize view's revisions when there is no snapshot
* chore: auto generate snapshot
Co-authored-by: nathan <nathan@appflowy.io>