* 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 commit 7ffd769240.
* 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 commit 4a29fc8990.
* Reapply "remove close_store command since we extend from Resource"
This reverts commit 70a1830e7d.
---------
Co-authored-by: Amr Bashir <amr.bashir2015@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
* Add auto save to store plugin
* Put jsdoc at constructor instead of class level
* Clippy
* Use enum instead of bool
* Some(AutoSaveMessage::Cancel) | None
* from_millis
* u64
* Add change file
* Rename to emit_on_change
* should use Duration in `with_store`
* Add breaking change notice to change file
* Emit change event for inserts by reset
* Update readme example
* Update example
* Remove extra line
* Make description clear it only works with managed
* Fix links in docstring
* Fix doc string closing
* get_mut
* Proof of concept
* fmt
* Load store on create
* cargo fmt
* Fix merge conflits
* Format
* small cleanup
* update docs, use `impl Into<JsonValue>`
* fix doctests, further simplification of api
* add store options
---------
Co-authored-by: Tillmann <28728469+tweidinger@users.noreply.github.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.app>
The Android and iOS support introduced on #1011 is not really supported - the Tauri path API correctly resolves the cache directory on mobile, and we can access those directly using Rust code.
This is a breaking change because we no longer uses the same directory to store the files - app_cache_dir returns a different location
* feat: Remove UNC prefix in paths returned to the frontend
* that one doesn't count
* map instead of mut
* revert accidental ipc::response change
* move dunce to workspace root
* feat(store): expose Store to Rust code in a meaningful way
* manually implement Default to improve generic inference
* update readme
* rename method
* make error Send and Sync
* make `use_store` more ergonomic
* export JsonValue
* fix readme example
* fmt
---------
Co-authored-by: FabianLars <fabianlars@fabianlars.de>