mirror of
https://github.com/tauri-apps/plugins-workspace.git
synced 2026-06-06 13:53:54 +02:00
refactor(store)!: more reworks (#1860)
* refactor(store): more reworks * Enable auto save by default * Store to resource table by default * Remove share store * Clean up * Add close store * Add store function * Add lazy store * Add init to lazy store * refresh cache in example * Add get-or-create-store * Revert "Add get-or-create-store" This reverts commit7ffd769240. * try get first * Docs * Use absolute path for store * more docs * Allow js to use pre-stored (de)serialize functions * Fix js get and close store * Show case how to use pretty json * Update readme * Use store instead of `store_builder` in example * Build * Fix example * More docs for StoreBuilder::build * Add default (de)serialize fn * Use pretty json by default * Use `undefined` for empty value in get * Change files * Differentiate json null from no value for events * Add create or existing * Build * Rename inner store's inset method to set * Update readme * Apply suggestions from code review * Use close instead * Update breaking changes * Return result in resolve_store_path * Change to close_resource and take &self * Clean up * Apply suggestions from code review Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com> * Remove unused pub(crate) * Update change file * Expose resolve_store_path * Remove with_store * Remove StoreInner from pub and expose is_empty * Fix wrong jsdoc param * Update readme * rename createOrExistingStore to createOrLoad * make api consistent with the JS implementation, add examples * fmt * reintroduce "get existing store" behavior for create_or_load * rename createOrLoad to newOrExisting * keep store lock throughout whole new_or_existing_inner * Remove load * Missed if load * Don't make StoreState public * Remove R: Runtime from Builder * rename newOrExisting to load, load to reload * update docs * rename missing reload fn * rename builder fn to build() * fix default permission * Fix description and create_new logic * Clippy * Update docs * Update docs * remove create_store command * remove close_store command since we extend from Resource * Revert "remove close_store command since we extend from Resource" This reverts commit4a29fc8990. * Reapply "remove close_store command since we extend from Resource" This reverts commit70a1830e7d. --------- Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com> Co-authored-by: Lucas Nogueira <lucas@tauri.app>
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
---
|
||||
"store-js": minor:feat
|
||||
---
|
||||
|
||||
- Add `getStore`
|
||||
- Add an option to use pre-stored (de)serialize functions (registered on rust)
|
||||
- Add `LazyStore`
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
"store": minor:breaking
|
||||
---
|
||||
|
||||
### Breaking changes:
|
||||
|
||||
- Renamed `StoreCollection` to `StoreState`
|
||||
- `StoreBuilder::build` now returns a `Result`
|
||||
- `StoreExt::store` now returns `Result<Arc<Store>>`
|
||||
|
||||
### Enhancements:
|
||||
|
||||
- Save and cancel pending auto save on drop
|
||||
- Use absolute path as store's key, fix #984
|
||||
- Share store to resource table by default
|
||||
- Enable auto save with 100ms debounce time by default
|
||||
- Use pretty json by default, close #1690
|
||||
|
||||
### New features:
|
||||
|
||||
- Add `get_store` to get shared stores across js and rust side
|
||||
- Add default (de)serialize functions settings `default_serialize_fn` and `default_deserialize_fn`
|
||||
- Allow js to use pre-stored (de)serialize functions registered by `register_serialize_fn` and `register_deserialize_fn`
|
||||
Reference in New Issue
Block a user