Tony 8c67d44aef 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 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>
2024-10-17 19:14:41 +08:00
2022-12-14 18:54:05 +01:00
2022-12-14 18:54:05 +01:00
2022-12-14 18:54:05 +01:00

Plugins Found Here

Win Mac Lin iOS And
autostart Automatically launch your app at system startup. ? ?
barcode-scanner Allows your mobile application to use the camera to scan QR codes, EAN-13 and other kinds of barcodes. ? ? ?
biometric Prompt the user for biometric authentication on Android and iOS. ? ? ?
cli Parse arguments from your Command Line Interface ? ?
clipboard-manager Read and write to the system clipboard.
deep-link Set your Tauri application as the default handler for an URL.
dialog Native system dialogs for opening and saving files along with message dialogs.
fs Access the file system. ? ?
global-shortcut Register global shortcuts. ? ?
http Access the HTTP client written in Rust.
localhost Use a localhost server in production apps. ? ?
log Configurable logging.
nfc Read and write NFC tags on Android and iOS. ? ? ?
notification Send message notifications (brief auto-expiring OS window element) to your user. Can also be used with the Notification Web API.
os Read information about the operating system.
persisted-scope Persist runtime scope changes on the filesystem. ? ?
positioner Move windows to common locations. ? ?
process This plugin provides APIs to access the current process. To spawn child processes, see the shell plugin. ? ?
shell Access the system shell. Allows you to spawn child processes and manage files and URLs using their default application. ? ?
single-instance Ensure a single instance of your tauri app is running. ? ? ?
sql Interface with SQL databases. ? ?
store Persistent key value storage.
stronghold Encrypted, secure database. ? ?
updater In-app updates for Tauri applications. ? ?
upload Tauri plugin for file uploads through HTTP. ? ?
websocket Open a WebSocket connection using a Rust client in JS. ? ?
window-state Persist window sizes and positions. ? ?

This repo and all plugins require a Rust version of at least 1.77.2

Contributing

PRs accepted. Please make sure to read the Contributing Guide before making a pull request.

Partners

CrabNebula

For the complete list of sponsors please visit our website and Open Collective.

S
Description
No description provided
Readme 37 MiB
Languages
Rust 61.3%
TypeScript 15%
Kotlin 13.3%
Swift 8.2%
JavaScript 1.5%
Other 0.6%