tinybase 5.0.0-beta.5 → 5.0.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/mergeable-store.cjs +1 -1
- package/lib/cjs/mergeable-store.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-browser.cjs +1 -1
- package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-file.cjs +1 -1
- package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-libsql.cjs +1 -1
- package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-remote.cjs +1 -1
- package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs/persisters.cjs +1 -1
- package/lib/cjs/persisters.cjs.gz +0 -0
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/synchronizers/synchronizer-local.cjs +1 -0
- package/lib/cjs/synchronizers/synchronizer-local.cjs.gz +0 -0
- package/lib/cjs/synchronizers/synchronizer-ws-client.cjs +1 -0
- package/lib/cjs/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
- package/lib/cjs/synchronizers/synchronizer-ws-server.cjs +1 -0
- package/lib/cjs/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
- package/lib/cjs/synchronizers.cjs +1 -0
- package/lib/cjs/synchronizers.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/mergeable-store.cjs +1 -1
- package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -0
- package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
- package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
- package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
- package/lib/cjs-es6/persisters.cjs +1 -1
- package/lib/cjs-es6/persisters.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers/synchronizer-local.cjs +1 -0
- package/lib/cjs-es6/synchronizers/synchronizer-local.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs +1 -0
- package/lib/cjs-es6/synchronizers/synchronizer-ws-client.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs +1 -0
- package/lib/cjs-es6/synchronizers/synchronizer-ws-server.cjs.gz +0 -0
- package/lib/cjs-es6/synchronizers.cjs +1 -0
- package/lib/cjs-es6/synchronizers.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/mergeable-store.js +287 -130
- package/lib/debug/persisters/persister-automerge.js +39 -46
- package/lib/debug/persisters/persister-browser.js +39 -46
- package/lib/debug/persisters/persister-cr-sqlite-wasm.js +64 -60
- package/lib/debug/persisters/persister-electric-sql.js +64 -60
- package/lib/debug/persisters/persister-expo-sqlite-next.js +64 -60
- package/lib/debug/persisters/persister-expo-sqlite.js +64 -60
- package/lib/debug/persisters/persister-file.js +39 -46
- package/lib/debug/persisters/persister-indexed-db.js +39 -46
- package/lib/debug/persisters/persister-libsql.js +64 -60
- package/lib/debug/persisters/persister-partykit-client.js +39 -46
- package/lib/debug/persisters/persister-powersync.js +917 -0
- package/lib/debug/persisters/persister-remote.js +39 -46
- package/lib/debug/persisters/persister-sqlite-wasm.js +64 -60
- package/lib/debug/persisters/persister-sqlite3.js +64 -60
- package/lib/debug/persisters/persister-yjs.js +41 -48
- package/lib/debug/persisters.js +38 -45
- package/lib/debug/store.js +44 -32
- package/lib/debug/synchronizers/synchronizer-local.js +502 -0
- package/lib/debug/synchronizers/synchronizer-ws-client.js +525 -0
- package/lib/debug/synchronizers/synchronizer-ws-server.js +57 -0
- package/lib/debug/synchronizers.js +466 -0
- package/lib/debug/tinybase.js +569 -250
- package/lib/debug/tools.js +2 -2
- package/lib/debug/ui-react-dom.js +81 -76
- package/lib/debug/ui-react.js +1 -1
- package/lib/es6/mergeable-store.js +1 -1
- package/lib/es6/mergeable-store.js.gz +0 -0
- package/lib/es6/persisters/persister-automerge.js +1 -1
- package/lib/es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/es6/persisters/persister-browser.js +1 -1
- package/lib/es6/persisters/persister-browser.js.gz +0 -0
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-electric-sql.js +1 -1
- package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/es6/persisters/persister-file.js +1 -1
- package/lib/es6/persisters/persister-file.js.gz +0 -0
- package/lib/es6/persisters/persister-indexed-db.js +1 -1
- package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/es6/persisters/persister-libsql.js +1 -1
- package/lib/es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/es6/persisters/persister-partykit-client.js +1 -1
- package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/es6/persisters/persister-powersync.js +1 -0
- package/lib/es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/es6/persisters/persister-remote.js +1 -1
- package/lib/es6/persisters/persister-remote.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/es6/persisters/persister-sqlite3.js +1 -1
- package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/es6/persisters/persister-yjs.js +1 -1
- package/lib/es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/synchronizers/synchronizer-local.js +1 -0
- package/lib/es6/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/es6/synchronizers/synchronizer-ws-client.js +1 -0
- package/lib/es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/es6/synchronizers/synchronizer-ws-server.js +1 -0
- package/lib/es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
- package/lib/es6/synchronizers.js +1 -0
- package/lib/es6/synchronizers.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react-dom-debug.js +1 -1
- package/lib/es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/mergeable-store.js +1 -1
- package/lib/mergeable-store.js.gz +0 -0
- package/lib/persisters/persister-automerge.js +1 -1
- package/lib/persisters/persister-automerge.js.gz +0 -0
- package/lib/persisters/persister-browser.js +1 -1
- package/lib/persisters/persister-browser.js.gz +0 -0
- package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-electric-sql.js +1 -1
- package/lib/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/persisters/persister-expo-sqlite.js +1 -1
- package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/persisters/persister-file.js +1 -1
- package/lib/persisters/persister-file.js.gz +0 -0
- package/lib/persisters/persister-indexed-db.js +1 -1
- package/lib/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/persisters/persister-libsql.js +1 -1
- package/lib/persisters/persister-libsql.js.gz +0 -0
- package/lib/persisters/persister-partykit-client.js +1 -1
- package/lib/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/persisters/persister-powersync.js +1 -0
- package/lib/persisters/persister-powersync.js.gz +0 -0
- package/lib/persisters/persister-remote.js +1 -1
- package/lib/persisters/persister-remote.js.gz +0 -0
- package/lib/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/persisters/persister-sqlite3.js +1 -1
- package/lib/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/persisters/persister-yjs.js +1 -1
- package/lib/persisters/persister-yjs.js.gz +0 -0
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/synchronizers/synchronizer-local.js +1 -0
- package/lib/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/synchronizers/synchronizer-ws-client.js +1 -0
- package/lib/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/synchronizers/synchronizer-ws-server.js +1 -0
- package/lib/synchronizers/synchronizer-ws-server.js.gz +0 -0
- package/lib/synchronizers.js +1 -0
- package/lib/synchronizers.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/checkpoints.d.ts +2 -2
- package/lib/types/indexes.d.ts +2 -2
- package/lib/types/mergeable-store.d.ts +121 -59
- package/lib/types/metrics.d.ts +2 -2
- package/lib/types/persisters/persister-automerge.d.ts +3 -0
- package/lib/types/persisters/persister-browser.d.ts +9 -2
- package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +3 -0
- package/lib/types/persisters/persister-electric-sql.d.ts +3 -0
- package/lib/types/persisters/persister-expo-sqlite-next.d.ts +3 -0
- package/lib/types/persisters/persister-expo-sqlite.d.ts +3 -0
- package/lib/types/persisters/persister-file.d.ts +5 -1
- package/lib/types/persisters/persister-indexed-db.d.ts +3 -0
- package/lib/types/persisters/persister-libsql.d.ts +3 -0
- package/lib/types/persisters/persister-partykit-client.d.ts +3 -0
- package/lib/types/persisters/persister-powersync.d.ts +157 -0
- package/lib/types/persisters/persister-remote.d.ts +3 -0
- package/lib/types/persisters/persister-sqlite-wasm.d.ts +3 -0
- package/lib/types/persisters/persister-sqlite3.d.ts +3 -0
- package/lib/types/persisters/persister-yjs.d.ts +5 -2
- package/lib/types/persisters.d.ts +68 -19
- package/lib/types/queries.d.ts +2 -2
- package/lib/types/relationships.d.ts +2 -2
- package/lib/types/store.d.ts +36 -3
- package/lib/types/synchronizers/synchronizer-local.d.ts +27 -0
- package/lib/types/synchronizers/synchronizer-ws-client.d.ts +30 -0
- package/lib/types/synchronizers/synchronizer-ws-server.d.ts +24 -0
- package/lib/types/synchronizers.d.ts +131 -0
- package/lib/types/tinybase.d.ts +10 -9
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/ui-react.d.ts +8 -8
- package/lib/types/with-schemas/checkpoints.d.ts +2 -2
- package/lib/types/with-schemas/indexes.d.ts +2 -2
- package/lib/types/with-schemas/mergeable-store.d.ts +185 -87
- package/lib/types/with-schemas/metrics.d.ts +2 -2
- package/lib/types/with-schemas/persisters/persister-automerge.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-browser.d.ts +13 -6
- package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-file.d.ts +7 -3
- package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-libsql.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-powersync.d.ts +170 -0
- package/lib/types/with-schemas/persisters/persister-remote.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +4 -1
- package/lib/types/with-schemas/persisters/persister-yjs.d.ts +6 -3
- package/lib/types/with-schemas/persisters.d.ts +90 -62
- package/lib/types/with-schemas/queries.d.ts +3 -3
- package/lib/types/with-schemas/relationships.d.ts +2 -2
- package/lib/types/with-schemas/store.d.ts +100 -3
- package/lib/types/with-schemas/synchronizers/synchronizer-local.d.ts +29 -0
- package/lib/types/with-schemas/synchronizers/synchronizer-ws-client.d.ts +32 -0
- package/lib/types/with-schemas/synchronizers/synchronizer-ws-server.d.ts +24 -0
- package/lib/types/with-schemas/synchronizers.d.ts +146 -0
- package/lib/types/with-schemas/tinybase.d.ts +9 -9
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/types/with-schemas/ui-react.d.ts +8 -8
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/mergeable-store.js +1 -1
- package/lib/umd/mergeable-store.js.gz +0 -0
- package/lib/umd/persisters/persister-automerge.js +1 -1
- package/lib/umd/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd/persisters/persister-browser.js +1 -1
- package/lib/umd/persisters/persister-browser.js.gz +0 -0
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-electric-sql.js +1 -1
- package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd/persisters/persister-file.js +1 -1
- package/lib/umd/persisters/persister-file.js.gz +0 -0
- package/lib/umd/persisters/persister-indexed-db.js +1 -1
- package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd/persisters/persister-libsql.js +1 -1
- package/lib/umd/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd/persisters/persister-partykit-client.js +1 -1
- package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd/persisters/persister-powersync.js +1 -0
- package/lib/umd/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd/persisters/persister-remote.js +1 -1
- package/lib/umd/persisters/persister-remote.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd/persisters/persister-sqlite3.js +1 -1
- package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd/persisters/persister-yjs.js +1 -1
- package/lib/umd/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/synchronizers/synchronizer-local.js +1 -0
- package/lib/umd/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/umd/synchronizers/synchronizer-ws-client.js +1 -0
- package/lib/umd/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/umd/synchronizers/synchronizer-ws-server.js +1 -0
- package/lib/umd/synchronizers/synchronizer-ws-server.js.gz +0 -0
- package/lib/umd/synchronizers.js +1 -0
- package/lib/umd/synchronizers.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react-dom-debug.js +1 -1
- package/lib/umd/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/mergeable-store.js +1 -1
- package/lib/umd-es6/mergeable-store.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-automerge.js +1 -1
- package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-browser.js +1 -1
- package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
- package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
- package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-file.js +1 -1
- package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
- package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-libsql.js +1 -1
- package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
- package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-powersync.js +1 -0
- package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-remote.js +1 -1
- package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
- package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
- package/lib/umd-es6/persisters/persister-yjs.js +1 -1
- package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/synchronizers/synchronizer-local.js +1 -0
- package/lib/umd-es6/synchronizers/synchronizer-local.js.gz +0 -0
- package/lib/umd-es6/synchronizers/synchronizer-ws-client.js +1 -0
- package/lib/umd-es6/synchronizers/synchronizer-ws-client.js.gz +0 -0
- package/lib/umd-es6/synchronizers/synchronizer-ws-server.js +1 -0
- package/lib/umd-es6/synchronizers/synchronizer-ws-server.js.gz +0 -0
- package/lib/umd-es6/synchronizers.js +1 -0
- package/lib/umd-es6/synchronizers.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom-debug.js +1 -1
- package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +37 -26
- package/readme.md +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
import{addDatabaseChangeListener as a}from"expo-sqlite/next";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),
|
|
1
|
+
import{addDatabaseChangeListener as a}from"expo-sqlite/next";const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),o=(a,t)=>a.repeat(t),c=Promise,r=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>c.all(a),p="_",m="_id",v=a=>`"${a.replace(/"/g,'""')}"`,g="SELECT",A=(a,t="")=>a.join(t),h=(a,t)=>a.map(t),C=a=>0==d(a),N=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),f=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],L=(a,t)=>a?.delete(t),R=Object,b=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>h(S(a),(([a,e])=>t(e,a))),x=a=>R.values(a),j=a=>d(D(a)),B=a=>(a=>!l(a)&&y(b(a),(a=>a==R.prototype||l(b(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>h([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>l(e)?(L(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(f(a,t)?n?.($(a,t)):G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(Array.isArray(a)||l(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=g+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,e,i)=>{const o=H();return[async()=>U(o,M(await E(h(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(h(await a(g+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(o,t,U(J(o,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(o,t))),async(t,e)=>((a,t)=>!l($($(o,a),t)))(t,e)?M(N(h(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,c,r,y,w=!1)=>{const u=W();F(c??{},(a=>h(D(a??{}),(a=>q(u,a)))));const d=O(u);if(!w&&y&&C(d)&&f(o,t))return await a("DROP "+z+v(t)),void G(o,t);if(C(d)||f(o,t)){const s=$(o,t),i=W(Y(s));await E([...h(d,(async e=>{L(i,e)||(await a(K+v(t)+"ADD"+v(e)),G(s,e,n))})),...!w&&r?h(O(i),(async n=>{n!=e&&(await a(K+v(t)+"DROP"+v(n)),G(s,n))})):[]])}else await a("CREATE "+z+v(t)+"("+v(e)+` PRIMARY KEY ON CONFLICT REPLACE${A(h(d,(a=>s+v(a))))});`),G(o,t,H([[e,n],...h(d,(a=>[a,n]))]));if(w)l(c)?await a(V+v(t)+Z+" 1"):await E(F(c,(async(n,s)=>{l(n)?await a(V+v(t)+Z+v(e)+"=?",[s]):C(d)||await ta(a,t,e,D(n),[s,...x(n)],i)})));else if(C(d))f(o,t)&&await a(V+v(t)+Z+" 1");else{const n=N(Y($(o,t)),(a=>a!=e)),s=[],r=[];F(c??{},((a,t)=>{T(s,t,...h(n,(t=>a?.[t]))),T(r,t)})),await ta(a,t,e,n,s,i),await a(V+v(t)+Z+v(e)+"NOT IN("+ea(r)+")",r)}},async t=>{let n;await a("BEGIN");try{n=await t()}catch(a){e?.(a)}return await a("END"),n}]},ta=async(a,t,e,i,c,r=!0)=>await a("INSERT "+(r?n:"OR REPLACE ")+"INTO"+v(t)+"("+v(e)+A(h(i,(a=>s+v(a))))+")VALUES"+u(o(`,(?${o(",?",d(i))})`,d(c)/(d(i)+1)),1)+(r?"ON CONFLICT("+v(e)+")DO UPDATE SET"+A(h(i,(a=>v(a)+"=excluded."+v(a))),s):n),h(c,(a=>a??null))),ea=a=>A(h(a,(()=>"?")),s),na=JSON.parse,sa=H(),ia=H(),oa=(a,t,e,n,s,i,o,c={},r=[])=>{let u,d,E,p=0;J(sa,r,(()=>0)),J(ia,r,(()=>[]));const[m,v,g,A]=((a,t)=>!a||l(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!B(a)||!B(t)])(o,a),h=async a=>(2!=p&&(p=1,await N.schedule((async()=>{await a(),p=0}))),N),C=t=>{(m&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await N.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),N),stopAutoLoad:()=>(d&&(s(d),d=void 0),N),isAutoLoading:()=>!l(d),save:async a=>(1!=p&&(p=2,await N.schedule((async()=>{try{await e(v,a)}catch(a){i?.(a)}p=0}))),N),startAutoSave:async()=>(await N.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=g();A(a)&&N.save((()=>a))})),N),stopAutoSave:()=>(y(E,a.delListener),E=void 0,N),isAutoSaving:()=>!l(E),schedule:async(...a)=>(T($(ia,r),...a),await(async()=>{if(!$(sa,r)){for(G(sa,r,1);!l((a=$(ia,r),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,r,0)}var a})(),N),getStore:()=>a,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...c};return I(N)},ca="store",ra=(a,t,e,n,s,[i],o,c,r,l)=>{const[y,w,u,d]=aa(t,o,s,l);return oa(a,(async()=>await d((async()=>(await y(),na((await w(i,m))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await y(),await u(i,m,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>c},c)},la=(a,t,e,n,s,[i,o,[c,r,y]],w,u,d,v)=>{const[g,A,h,C]=aa(t,w,s,v),T=async(a,t)=>await E(k(o,(async([e,n,s,i],o)=>{t&&!_(a,o)||await h(e,n,a[o],s,i,t)}))),f=async(a,t)=>r?await h(y,m,{[p]:a},!0,!0,t):null;return oa(a,(async()=>await C((async()=>{await g();const a=await(async()=>M(N(await E(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(y,m))[p]:{})();return B(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await C((async()=>{if(await g(),l(t)){const[t,e]=a();await T(t),await f(e)}else{const[a,e]=t();await T(a,!0),await f(e,!0)}}))),e,n,s,!1,{[d]:()=>u},u)},ya="json",wa="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:ya,[wa]:1},ma={load:0,save:0,[Ea]:e+"_values"},va=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const o=u(x(P(t,w(a)?{[e]:a}:a)),0,j(t));l(o[0])||n(i,o[0])||G(s,i,o)})),s},ga="pragma ",Aa="data_version",ha="schema_version",Ca=(a,t,n,s,i,o,c,l,y="getDb",d)=>{let E,p,v;const[A,h,C,N]=(a=>{const t=(a=>P(pa,w(a)?{storeTableName:a}:a??{}))(a),n=t[wa];if(t.mode==ya){const{storeTableName:a=e}=t;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:o={}}=t,c=u(x(P(ma,o)),0,j(ma)),r=c[2],l=W(r);return[0,n,[va(s,{[da]:null,[ua]:m},da,(a=>q(l,a)&&a==r)),va(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==r)),c],l]})(t);return(A?ra:la)(a,o?async(a,t)=>(o(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ga+Aa))[0][Aa],e=(await n(ga+ha))[0][ha],s=(await n(g+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(v??=s)||(a(),E=t,p=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>N.has(t)?a():0))];var t,e}),(([a,t])=>{r(a),E=p=null,i(t)}),c,C,O(N),l,y,d)},Na=(t,e,n,s,i)=>Ca(t,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(t=>a((({tableName:a})=>t(a)))),(a=>a.remove()),s,i,e);export{Na as createExpoSqliteNextPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>c.all(a),E="_",p="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),L=Object,b=a=>L.getPrototypeOf(a),R=L.entries,S=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(R(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(S(a)),x=a=>(a=>!r(a)&&l(b(a),(a=>a==L.prototype||r(b(a))),(()=>!0)))(a)&&0==j(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],Y=(a,t)=>a?.get(t),$=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(T(a,t)?n?.(Y(a,t)):k(a,t,e()),Y(a,t)),J=(a,t,e,n=k)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),q="TABLE",z="ALTER "+q,K="DELETE FROM",V=v+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const c=B();return[async()=>J(c,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(v+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(c,t,J(G(c,t,B),e,((a,t,e)=>{e!=Y(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(c,t))),async(t,e)=>((a,t)=>!r(Y(Y(c,a),t)))(t,e)?I(C(A(await a(V+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!r(a)&&!x(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=U();_(o??{},(a=>A(S(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&h(E)&&T(c,t))return await a("DROP "+q+g(t)),void k(c,t);if(h(E)||T(c,t)){const n=Y(c,t),i=U(H(n));await d([...A(E,(async s=>{f(i,s)||(await a(z+g(t)+"ADD"+g(s)),k(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(z+g(t)+"DROP"+g(e)),k(n,e))})):[]])}else await a("CREATE "+q+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+g(a))))});`),k(c,t,B([[s,e],...A(E,(a=>[a,e]))]));if(y)r(o)?await a(K+g(t)+X+" 1"):await d(_(o,(async(e,n)=>{r(e)?await a(K+g(t)+X+g(s)+"=?",[n]):h(E)||await aa(a,t,s,S(e),[n,...F(e)],i)})));else if(h(E))T(c,t)&&await a(K+g(t)+X+" 1");else{const e=C(H(Y(c,t)),(a=>a!=s)),n=[],r=[];_(o??{},((a,t)=>{N(n,t,...A(e,(t=>a?.[t]))),N(r,t)})),await aa(a,t,s,e,n,i),await a(K+g(t)+X+g(s)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+m(A(c,(a=>n+g(a))))+")VALUES"+y(i(`,(?${i(",?",u(c))})`,u(o)/(u(c)+1)),1)+(r?"ON CONFLICT("+g(s)+")DO UPDATE SET"+m(A(c,(a=>g(a)+"=excluded."+g(a))),n):e),A(o,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=B(),sa=B(),ia=(a,t,e,n,s,i,c,o={},y=[])=>{let u,d,E,p=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[g,v,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!x(a)||!x(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!x(a)||!x(t)])(c,a),h=async a=>(2!=p&&(p=1,await T.schedule((async()=>{await a(),p=0}))),T),C=t=>{(g&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await T.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(d&&(s(d),d=void 0),T),isAutoLoading:()=>!r(d),save:async a=>(1!=p&&(p=2,await T.schedule((async()=>{try{await e(v,a)}catch(a){i?.(a)}p=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&T.save((()=>a))})),T),stopAutoSave:()=>(l(E,a.delListener),E=void 0,T),isAutoSaving:()=>!r(E),schedule:async(...a)=>(N(Y(sa,y),...a),await(async()=>{if(!Y(na,y)){for(k(na,y,1);!r((a=Y(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}k(na,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...o};return D(T)},ca="store",oa=(a,t,e,n,s,[i],c,o,r,l)=>{const[w,y,u,d]=Z(t,c,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,p))[E]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[E]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>o},o)},ra=(a,t,e,n,s,[i,c,[o,l,w]],y,u,g,v)=>{const[m,A,h,N]=Z(t,y,s,v),T=async(a,t)=>await d($(c,(async([e,n,s,i],c)=>{t&&!P(a,c)||await h(e,n,a[c],s,i,t)}))),O=async(a,t)=>l?await h(w,p,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await N((async()=>{await m();const a=await(async()=>I(C(await d($(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!x(a[1])))))(),t=await(async()=>o?(await A(w,p))[E]:{})();return x(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await m(),r(t)){const[t,e]=a();await T(t),await O(e)}else{const[a,e]=t();await T(a,!0),await O(e,!0)}}))),e,n,s,!1,{[g]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},pa={load:0,save:0,[da]:t+"_values"},ga=(a,t,e,n)=>{const s=B();return _(a,((a,i)=>{const c=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(c[0])||n(i,c[0])||k(s,i,c)})),s},va="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,c,r,l,u="getDb",d)=>{let E,g,m;const[A,h,C,N]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:c={}}=e,o=y(F(M(pa,c)),0,j(pa)),r=o[2],l=U(r);return[0,n,[ga(s,{[ua]:null,[ya]:p},ua,(a=>W(l,a)&&a==r)),ga(i,{[da]:null,[ya]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(A?oa:ra)(a,c?async(a,t)=>(c(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+ma))[0][ma],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(m??=s)||(a(),E=t,g=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>N.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),r,C,O(N),l,u,d)},Ca=(a,t,e,n,s)=>ha(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,s,t);export{Ca as createExpoSqlitePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{watch as t}from"fs";import{readFile as a,writeFile as e}from"fs/promises";const s=t=>typeof t,n=s(""),o="utf8",r=t=>null==t,
|
|
1
|
+
import{watch as t}from"fs";import{readFile as a,writeFile as e}from"fs/promises";const s=t=>typeof t,n=s(""),o="utf8",r=t=>null==t,i=(t,a,e)=>r(t)?e?.():a(t),c=Object,y=t=>c.getPrototypeOf(t),g=c.keys,p=c.freeze,l=t=>(t=>!r(t)&&i(y(t),(t=>t==c.prototype||r(y(t))),(()=>!0)))(t)&&0==(t=>g(t).length)(t),u=JSON.parse,d=t=>new Map(t),h=(t,a)=>t?.get(a),v=(t,a,e)=>{return r(e)?(s=t,n=a,s?.delete(n),t):t?.set(a,e);var s,n},w=(t,a,e,s)=>{var n,o;return n=t,o=a,n?.has(o)?s?.(h(t,a)):v(t,a,e()),h(t,a)},f=d(),A=d(),C=(y,g,d)=>((t,a,e,o,c,y,g,u={},d=[])=>{let C,S,L,M=0;w(f,d,(()=>0)),w(A,d,(()=>[]));const[b,m,O,T]=((t,a)=>!t||r(a.getMergeableContent)?[0,a.getContent,a.getTransactionChanges,([t,a])=>!l(t)||!l(a)]:[1,a.getMergeableContent,a.getTransactionMergeableChanges,([,[[,t],[,a]]])=>!l(t)||!l(a)])(g,t),F=async t=>(2!=M&&(M=1,await N.schedule((async()=>{await t(),M=0}))),N),J=a=>{var e;(b&&(e=a?.[0],s(e)==n)?1===a?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===a?.[2]?t.applyChanges:t.setContent)(a)},N={load:async(e,s)=>await F((async()=>{try{J(await a())}catch(a){y?.(a),t.setContent([e,s])}})),startAutoLoad:async(t={},e={})=>(await N.stopAutoLoad().load(t,e),S=o((async(t,e)=>{const s=e?.();await F((async()=>{try{J(s??t?.()??await a())}catch(t){y?.(t)}}))})),N),stopAutoLoad:()=>(S&&(c(S),S=void 0),N),isAutoLoading:()=>!r(S),save:async t=>(1!=M&&(M=2,await N.schedule((async()=>{try{await e(m,t)}catch(t){y?.(t)}M=0}))),N),startAutoSave:async()=>(await N.stopAutoSave().save(),L=t.addDidFinishTransactionListener((()=>{const t=O();T(t)&&N.save((()=>t))})),N),stopAutoSave:()=>(i(L,t.delListener),L=void 0,N),isAutoSaving:()=>!r(L),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(h(A,d),...t),await(async()=>{if(!h(f,d)){for(v(f,d,1);!r((t=h(A,d),C=t.shift()));)try{await C()}catch(t){y?.(t)}v(f,d,0)}var t})(),N),getStore:()=>t,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return p(N)})(y,(async()=>u(await a(g,o))),(async t=>{return await e(g,(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?c.fromEntries([...a]):a))),o);var a}),(a=>t(g,(()=>a()))),(t=>t?.close()),d,!0,{getFilePath:()=>g});export{C as createFilePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>typeof t,e=t(""),a=Promise,
|
|
1
|
+
const t=t=>typeof t,e=t(""),a=Promise,s=clearInterval,n=t=>null==t,o=(t,e,a)=>n(t)?a?.():e(t),r=t=>new a(t),c=async t=>a.all(t),i=(t,e)=>t.map(e),l=(t,...e)=>t.push(...e),y=Object,d=t=>y.getPrototypeOf(t),u=y.entries,g=y.keys,w=y.freeze,p=t=>(t=>!n(t)&&o(d(t),(t=>t==y.prototype||n(d(t))),(()=>!0)))(t)&&0==(t=>g(t).length)(t),h=t=>new Map(t),v=(t,e)=>t?.get(e),A=(t,e,a)=>{return n(a)?(s=t,o=e,s?.delete(o),t):t?.set(e,a);var s,o},b=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(v(t,e)):A(t,e,a()),v(t,e)},C=h(),S=h(),f=globalThis.window,L=["t","v"],M={keyPath:"k"},k=async(t,e)=>{const a=((e,a)=>i(u(e),(([e,a])=>D(t,"put",{k:e,v:a}))))(e);i(await D(t,"getAllKeys"),(s=>((t,e)=>e in t)(e,s)?0:l(a,D(t,"delete",s)))),await c(a)},D=async(t,e,a)=>r(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)})),j=(a,d,u=1,g)=>{const h=async(t,e=[],a=0)=>r(((s,n)=>{const o=(f?f.indexedDB:indexedDB).open(d,a?2:void 0);o.onupgradeneeded=()=>a&&i(L,(t=>{try{o.result.createObjectStore(t,M)}catch{}})),o.onsuccess=async()=>{try{const a=o.result.transaction(L,"readwrite"),n=await c(i(L,(async(s,n)=>await t(a.objectStore(s),e[n]))));o.result.close(),s(n)}catch(t){o.result.close(),n(t)}},o.onerror=()=>n("indexedDB.open error")}));return((a,s,r,c,i,y,d,u={},g=[])=>{let h,f,L,M=0;b(C,g,(()=>0)),b(S,g,(()=>[]));const[k,D,j,m]=((t,e)=>!t||n(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!p(t)||!p(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!p(t)||!p(e)])(d,a),x=async t=>(2!=M&&(M=1,await B.schedule((async()=>{await t(),M=0}))),B),T=s=>{var n;(k&&(n=s?.[0],t(n)==e)?1===s?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===s?.[2]?a.applyChanges:a.setContent)(s)},B={load:async(t,e)=>await x((async()=>{try{T(await s())}catch(s){y?.(s),a.setContent([t,e])}})),startAutoLoad:async(t={},e={})=>(await B.stopAutoLoad().load(t,e),f=c((async(t,e)=>{const a=e?.();await x((async()=>{try{T(a??t?.()??await s())}catch(t){y?.(t)}}))})),B),stopAutoLoad:()=>(f&&(i(f),f=void 0),B),isAutoLoading:()=>!n(f),save:async t=>(1!=M&&(M=2,await B.schedule((async()=>{try{await r(D,t)}catch(t){y?.(t)}M=0}))),B),startAutoSave:async()=>(await B.stopAutoSave().save(),L=a.addDidFinishTransactionListener((()=>{const t=j();m(t)&&B.save((()=>t))})),B),stopAutoSave:()=>(o(L,a.delListener),L=void 0,B),isAutoSaving:()=>!n(L),schedule:async(...t)=>(l(v(S,g),...t),await(async()=>{if(!v(C,g)){for(A(C,g,1);!n((t=v(S,g),h=t.shift()));)try{await h()}catch(t){y?.(t)}A(C,g,0)}var t})(),B),getStore:()=>a,destroy:()=>B.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return w(B)})(a,(async()=>await h((async t=>((t=[])=>y.fromEntries(t))(i(await D(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await h((async(t,e)=>await k(t,e)),t(),1)),(t=>setInterval(t,1e3*u)),(t=>s(t)),g,!1,{getDbName:()=>d})};export{j as createIndexedDbPersister,k as objectStoreMatch};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>c.all(a),E="_",p="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),C=a=>0==u(a),h=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),L=Object,R=a=>L.getPrototypeOf(a),S=L.entries,b=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(S(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(b(a)),x=a=>(a=>!r(a)&&l(R(a),(a=>a==L.prototype||r(R(a))),(()=>!0)))(a)&&0==j(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],Y=(a,t)=>a?.get(t),$=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(N(a,t)?n?.(Y(a,t)):k(a,t,e()),Y(a,t)),J=(a,t,e,n=k)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),q="TABLE",z="ALTER "+q,K="DELETE FROM",V=v+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const c=B();return[async()=>J(c,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(v+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(c,t,J(G(c,t,B),e,((a,t,e)=>{e!=Y(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(c,t))),async(t,e)=>((a,t)=>!r(Y(Y(c,a),t)))(t,e)?I(h(A(await a(V+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!r(a)&&!x(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=U();_(o??{},(a=>A(b(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&C(E)&&N(c,t))return await a("DROP "+q+g(t)),void k(c,t);if(C(E)||N(c,t)){const n=Y(c,t),i=U(H(n));await d([...A(E,(async s=>{f(i,s)||(await a(z+g(t)+"ADD"+g(s)),k(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(z+g(t)+"DROP"+g(e)),k(n,e))})):[]])}else await a("CREATE "+q+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+g(a))))});`),k(c,t,B([[s,e],...A(E,(a=>[a,e]))]));if(y)r(o)?await a(K+g(t)+X+" 1"):await d(_(o,(async(e,n)=>{r(e)?await a(K+g(t)+X+g(s)+"=?",[n]):C(E)||await aa(a,t,s,b(e),[n,...F(e)],i)})));else if(C(E))N(c,t)&&await a(K+g(t)+X+" 1");else{const e=h(H(Y(c,t)),(a=>a!=s)),n=[],r=[];_(o??{},((a,t)=>{T(n,t,...A(e,(t=>a?.[t]))),T(r,t)})),await aa(a,t,s,e,n,i),await a(K+g(t)+X+g(s)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+m(A(c,(a=>n+g(a))))+")VALUES"+y(i(`,(?${i(",?",u(c))})`,u(o)/(u(c)+1)),1)+(r?"ON CONFLICT("+g(s)+")DO UPDATE SET"+m(A(c,(a=>g(a)+"=excluded."+g(a))),n):e),A(o,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=B(),sa=B(),ia=(a,t,e,n,s,i,c,o={},y=[])=>{let u,d,E,p=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[g,v,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!x(a)||!x(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!x(a)||!x(t)])(c,a),C=async a=>(2!=p&&(p=1,await N.schedule((async()=>{await a(),p=0}))),N),h=t=>{(g&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N={load:async(e,n)=>await C((async()=>{try{h(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await N.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await C((async()=>{try{h(n??a?.()??await t())}catch(a){i?.(a)}}))})),N),stopAutoLoad:()=>(d&&(s(d),d=void 0),N),isAutoLoading:()=>!r(d),save:async a=>(1!=p&&(p=2,await N.schedule((async()=>{try{await e(v,a)}catch(a){i?.(a)}p=0}))),N),startAutoSave:async()=>(await N.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&N.save((()=>a))})),N),stopAutoSave:()=>(l(E,a.delListener),E=void 0,N),isAutoSaving:()=>!r(E),schedule:async(...a)=>(T(Y(sa,y),...a),await(async()=>{if(!Y(na,y)){for(k(na,y,1);!r((a=Y(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}k(na,y,0)}var a})(),N),getStore:()=>a,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...o};return D(N)},ca="store",oa=(a,t,e,n,s,[i],c,o,r,l)=>{const[w,y,u,d]=Z(t,c,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,p))[E]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[E]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>o},o)},ra=(a,t,e,n,s,[i,c,[o,l,w]],y,u,g,v)=>{const[m,A,C,T]=Z(t,y,s,v),N=async(a,t)=>await d($(c,(async([e,n,s,i],c)=>{t&&!P(a,c)||await C(e,n,a[c],s,i,t)}))),O=async(a,t)=>l?await C(w,p,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await m();const a=await(async()=>I(h(await d($(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!x(a[1])))))(),t=await(async()=>o?(await A(w,p))[E]:{})();return x(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),r(t)){const[t,e]=a();await N(t),await O(e)}else{const[a,e]=t();await N(a,!0),await O(e,!0)}}))),e,n,s,!1,{[g]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},pa={load:0,save:0,[da]:t+"_values"},ga=(a,t,e,n)=>{const s=B();return _(a,((a,i)=>{const c=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(c[0])||n(i,c[0])||k(s,i,c)})),s},va="pragma ",ma="data_version",Aa="schema_version",Ca=(a,e,n,s,i,c,r,l,u="getDb",d)=>{let E,g,m;const[A,C,h,T]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:c={}}=e,o=y(F(M(pa,c)),0,j(pa)),r=o[2],l=U(r);return[0,n,[ga(s,{[ua]:null,[ya]:p},ua,(a=>W(l,a)&&a==r)),ga(i,{[da]:null,[ya]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(A?oa:ra)(a,c?async(a,t)=>(c(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+ma))[0][ma],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(m??=s)||(a(),E=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),r,h,O(T),l,u,d)},ha=(a,t,e,n,s)=>Ca(a,e,(async(a,e=[])=>(await t.execute({sql:a,args:e})).rows),(()=>()=>0),(a=>a()),n,s,t,"getClient");export{ha as createLibSqlPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>typeof t,e="",a=t(e),s=t=>null==t,o=(t,e,a)=>s(t)?a?.():e(t),n=e=>t(e)==a,r=t=>t.length,c=Object,i=t=>c.getPrototypeOf(t),y=c.keys,d=c.freeze,g=t=>(t=>!s(t)&&o(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),h=t=>JSON.stringify(t,((t,e)=>e instanceof Map?c.fromEntries([...e]):e)),
|
|
1
|
+
const t=t=>typeof t,e="",a=t(e),s=t=>null==t,o=(t,e,a)=>s(t)?a?.():e(t),n=e=>t(e)==a,r=t=>t.length,c=Object,i=t=>c.getPrototypeOf(t),y=c.keys,d=c.freeze,g=t=>(t=>!s(t)&&o(i(t),(t=>t==c.prototype||s(i(t))),(()=>!0)))(t)&&0==(t=>r(y(t)))(t),h=t=>JSON.stringify(t,((t,e)=>e instanceof Map?c.fromEntries([...e]):e)),p=JSON.parse,l="/store",u=t=>new Map(t),v=(t,e)=>t?.get(e),w=(t,e,a)=>{return s(a)?(o=t,n=e,o?.delete(n),t):t?.set(e,a);var o,n},f=(t,e,a,s)=>{var o,n;return o=t,n=e,o?.has(n)?s?.(v(t,e)):w(t,e,a()),v(t,e)},C=u(),A=u(),S="message",L=(t,a,c,i)=>{const{host:y,room:u}=a.partySocketOptions,{storeProtocol:L="https",storePath:m=l,messagePrefix:b=e}={...n(c)?{storeProtocol:c}:c},M=L+"://"+y+"/parties/"+a.name+"/"+u+m,P=async t=>await(await fetch(M,{...t?{method:"PUT",body:h(t)}:{},mode:"cors",cache:"no-store"})).json();return((t,e,a,r,c,i,y,h={},p=[])=>{let l,u,S,L=0;f(C,p,(()=>0)),f(A,p,(()=>[]));const[m,b,M,P]=((t,e)=>!t||s(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!g(t)||!g(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!g(t)||!g(e)])(y,t),O=async t=>(2!=L&&(L=1,await E.schedule((async()=>{await t(),L=0}))),E),T=e=>{(m&&n(e?.[0])?1===e?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},E={load:async(a,s)=>await O((async()=>{try{T(await e())}catch(e){i?.(e),t.setContent([a,s])}})),startAutoLoad:async(t={},a={})=>(await E.stopAutoLoad().load(t,a),u=r((async(t,a)=>{const s=a?.();await O((async()=>{try{T(s??t?.()??await e())}catch(t){i?.(t)}}))})),E),stopAutoLoad:()=>(u&&(c(u),u=void 0),E),isAutoLoading:()=>!s(u),save:async t=>(1!=L&&(L=2,await E.schedule((async()=>{try{await a(b,t)}catch(t){i?.(t)}L=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),S=t.addDidFinishTransactionListener((()=>{const t=M();P(t)&&E.save((()=>t))})),E),stopAutoSave:()=>(o(S,t.delListener),S=void 0,E),isAutoSaving:()=>!s(S),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(v(A,p),...t),await(async()=>{if(!v(C,p)){for(w(C,p,1);!s((t=v(A,p),l=t.shift()));)try{await l()}catch(t){i?.(t)}w(C,p,0)}var t})(),E),getStore:()=>t,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...h};return d(E)})(t,(async()=>await P()),(async(t,e)=>{var s,o;e?a.send((s=b,o=e(),s+"s"+(n(o)?o:h(o)))):await P(t())}),(t=>{const e=e=>o(((t,e,a)=>{const s=r(t);return((t,e)=>t.startsWith(e))(e,t)?[e[s],p((o=e,n=s+1,o.slice(n,void 0)))]:void 0;var o,n})(b,e.data),(([e,a])=>{"s"==e&&t(void 0,(()=>a))}));return a.addEventListener(S,e),e}),(t=>{a.removeEventListener(S,t)}),i,!1,{getConnection:()=>a})};export{L as createPartyKitPersister};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),E="_",g="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),f=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),O=Object,L=a=>O.getPrototypeOf(a),R=O.entries,S=O.keys,D=O.freeze,I=(a=[])=>O.fromEntries(a),M=(...a)=>O.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(R(a),(([a,e])=>t(e,a))),F=a=>O.values(a),j=a=>u(S(a)),x=a=>(a=>!r(a)&&l(L(a),(a=>a==O.prototype||r(L(a))),(()=>!0)))(a)&&0==j(a),B=a=>new Map(a),H=a=>[...a?.keys()??[]],Y=(a,t)=>a?.get(t),$=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>r(e)?(b(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(f(a,t)?n?.(Y(a,t)):k(a,t,e()),Y(a,t)),J=(a,t,e,n=k)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",q=v+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const o=B();return[async()=>J(o,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(v+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>k(o,t,J(G(o,t,B),e,((a,t,e)=>{e!=Y(a,t)&&k(a,t,e)}),((a,t)=>k(a,t))))),((a,t)=>k(o,t))),async(t,e)=>((a,t)=>!r(Y(Y(o,a),t)))(t,e)?I(C(A(await a(q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!r(a)&&!x(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();_(c??{},(a=>A(S(a??{}),(a=>W(u,a)))));const E=N(u);if(!y&&w&&h(E)&&f(o,t))return await a("DROP "+z+p(t)),void k(o,t);if(h(E)||f(o,t)){const n=Y(o,t),i=U(H(n));await d([...A(E,(async s=>{b(i,s)||(await a(K+p(t)+"ADD"+p(s)),k(n,s,e))})),...!y&&l?A(N(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),k(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+p(a))))});`),k(o,t,B([[s,e],...A(E,(a=>[a,e]))]));if(y)r(c)?await a(V+p(t)+X+" 1"):await d(_(c,(async(e,n)=>{r(e)?await a(V+p(t)+X+p(s)+"=?",[n]):h(E)||await aa(a,t,s,S(e),[n,...F(e)],i)})));else if(h(E))f(o,t)&&await a(V+p(t)+X+" 1");else{const e=C(H(Y(o,t)),(a=>a!=s)),n=[],r=[];_(c??{},((a,t)=>{T(n,t,...A(e,(t=>a?.[t]))),T(r,t)})),await aa(a,t,s,e,n,i),await a(V+p(t)+X+p(s)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,o,c,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+m(A(o,(a=>n+p(a))))+")VALUES"+y(i(`,(?${i(",?",u(o))})`,u(c)/(u(o)+1)),1)+(r?"ON CONFLICT("+p(s)+")DO UPDATE SET"+m(A(o,(a=>p(a)+"=excluded."+p(a))),n):e),A(c,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=B(),sa=B(),ia=(a,t,e,n,s,i,o,c={},y=[])=>{let u,d,E,g=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[p,v,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!x(a)||!x(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!x(a)||!x(t)])(o,a),h=async a=>(2!=g&&(g=1,await f.schedule((async()=>{await a(),g=0}))),f),C=t=>{(p&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await f.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),f),stopAutoLoad:()=>(d&&(s(d),d=void 0),f),isAutoLoading:()=>!r(d),save:async a=>(1!=g&&(g=2,await f.schedule((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),f),startAutoSave:async()=>(await f.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&f.save((()=>a))})),f),stopAutoSave:()=>(l(E,a.delListener),E=void 0,f),isAutoSaving:()=>!r(E),schedule:async(...a)=>(T(Y(sa,y),...a),await(async()=>{if(!Y(na,y)){for(k(na,y,1);!r((a=Y(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}k(na,y,0)}var a})(),f),getStore:()=>a,destroy:()=>f.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...c};return D(f)},oa="store",ca=(a,t,e,n,s,[i],o,c,r,l)=>{const[w,y,u,d]=Z(t,o,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,g))[E]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,g,{[E]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?O.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>c},c)},ra=(a,t,e,n,s,[i,o,[c,l,w]],y,u,p,v)=>{const[m,A,h,T]=Z(t,y,s,v),f=async(a,t)=>await d($(o,(async([e,n,s,i],o)=>{t&&!P(a,o)||await h(e,n,a[o],s,i,t)}))),N=async(a,t)=>l?await h(w,g,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await m();const a=await(async()=>I(C(await d($(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!x(a[1])))))(),t=await(async()=>c?(await A(w,g))[E]:{})();return x(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),r(t)){const[t,e]=a();await f(t),await N(e)}else{const[a,e]=t();await f(a,!0),await N(e,!0)}}))),e,n,s,!1,{[p]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},ga={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=B();return _(a,((a,i)=>{const o=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(o[0])||n(i,o[0])||k(s,i,o)})),s},va="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,o,r,l,u="getDb",d)=>{let E,p,m;const[A,h,C,T]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:o={}}=e,c=y(F(M(ga,o)),0,j(ga)),r=c[2],l=U(r);return[0,n,[pa(s,{[ua]:null,[ya]:g},ua,(a=>W(l,a)&&a==r)),pa(i,{[da]:null,[ya]:g,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==r)),c],l]})(e);return(A?ca:ra)(a,o?async(a,t)=>(o(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+ma))[0][ma],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(m??=s)||(a(),E=t,p=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),r,C,N(T),l,u,d)},Ca=(a,t,e,n,s,i=!1)=>ha(a,e,(async(a,e=[])=>t.execute(a,e).then((a=>a.rows?._array??[]))),(a=>{const e=new AbortController,n=t.onChange({rawTableNames:!0,signal:e.signal});return(async()=>{for await(const t of n)A(t.changedTables,a)})(),e}),(a=>a.abort()),n,s,t,"getPowerSync",i);export{Ca as createPowerSyncPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>typeof t,
|
|
1
|
+
const t=t=>typeof t,a=t(""),e=clearInterval,n=t=>null==t,s=(t,a,e)=>n(t)?e?.():a(t),o=Object,r=t=>o.getPrototypeOf(t),c=o.keys,i=o.freeze,y=t=>(t=>!n(t)&&s(r(t),(t=>t==o.prototype||n(r(t))),(()=>!0)))(t)&&0==(t=>c(t).length)(t),g=JSON.parse,l=t=>new Map(t),d=(t,a)=>t?.get(a),h=(t,a,e)=>{return n(e)?(s=t,o=a,s?.delete(o),t):t?.set(a,e);var s,o},p=(t,a,e,n)=>{var s,o;return s=t,o=a,s?.has(o)?n?.(d(t,a)):h(t,a,e()),d(t,a)},u=l(),v=l(),w=t=>t.headers.get("ETag"),f=(r,c,l,f=5,A)=>{let C;return((e,o,r,c,g,l,w,f={},A=[])=>{let C,S,b,L=0;p(u,A,(()=>0)),p(v,A,(()=>[]));const[M,T,O,m]=((t,a)=>!t||n(a.getMergeableContent)?[0,a.getContent,a.getTransactionChanges,([t,a])=>!y(t)||!y(a)]:[1,a.getMergeableContent,a.getTransactionMergeableChanges,([,[[,t],[,a]]])=>!y(t)||!y(a)])(w,e),E=async t=>(2!=L&&(L=1,await x.schedule((async()=>{await t(),L=0}))),x),j=n=>{var s;(M&&(s=n?.[0],t(s)==a)?1===n?.[1][2]?e.applyMergeableChanges:e.setMergeableContent:1===n?.[2]?e.applyChanges:e.setContent)(n)},x={load:async(t,a)=>await E((async()=>{try{j(await o())}catch(n){l?.(n),e.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(await x.stopAutoLoad().load(t,a),S=c((async(t,a)=>{const e=a?.();await E((async()=>{try{j(e??t?.()??await o())}catch(t){l?.(t)}}))})),x),stopAutoLoad:()=>(S&&(g(S),S=void 0),x),isAutoLoading:()=>!n(S),save:async t=>(1!=L&&(L=2,await x.schedule((async()=>{try{await r(T,t)}catch(t){l?.(t)}L=0}))),x),startAutoSave:async()=>(await x.stopAutoSave().save(),b=e.addDidFinishTransactionListener((()=>{const t=O();m(t)&&x.save((()=>t))})),x),stopAutoSave:()=>(s(b,e.delListener),b=void 0,x),isAutoSaving:()=>!n(b),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(d(v,A),...t),await(async()=>{if(!d(u,A)){for(h(u,A,1);!n((t=d(v,A),C=t.shift()));)try{await C()}catch(t){l?.(t)}h(u,A,0)}var t})(),x),getStore:()=>e,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...f};return i(x)})(r,(async()=>{const t=await fetch(c);return C=w(t),g(await t.text())}),(async t=>{return await fetch(l,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?o.fromEntries([...a]):a)))});var a}),(t=>setInterval((async()=>{const a=await fetch(c,{method:"HEAD"}),e=w(a);n(C)||n(e)||e==C||(C=e,t())}),1e3*f)),(t=>e(t)),A,!1,{getUrls:()=>[c,l]})};export{f as createRemotePersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),o=Promise,c=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>o.all(a),p="_",E="_id",v=a=>`"${a.replace(/"/g,'""')}"`,g="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),L=Object,R=a=>L.getPrototypeOf(a),b=L.entries,S=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),_=(a,t)=>t in a,P=(a,t)=>A(b(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(S(a)),k=a=>(a=>!r(a)&&l(R(a),(a=>a==L.prototype||r(R(a))),(()=>!0)))(a)&&0==j(a),x=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),Y=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),$=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),q=(a,t,e,n)=>(N(a,t)?n?.(H(a,t)):$(a,t,e()),H(a,t)),G=(a,t,e,n=$)=>(P(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),J=a=>new Set(Array.isArray(a)||r(a)?a:[a]),U=(a,t)=>a?.add(t),V="TABLE",W="ALTER "+V,z="DELETE FROM",K=g+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const o=x();return[async()=>G(o,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(g+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>$(o,t,G(q(o,t,x),e,((a,t,e)=>{e!=H(a,t)&&$(a,t,e)}),((a,t)=>$(a,t))))),((a,t)=>$(o,t))),async(t,e)=>((a,t)=>!r(H(H(o,a),t)))(t,e)?I(C(A(await a(K+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!r(a)&&!k(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();P(c??{},(a=>A(S(a??{}),(a=>U(u,a)))));const p=O(u);if(!y&&w&&h(p)&&N(o,t))return await a("DROP "+V+v(t)),void $(o,t);if(h(p)||N(o,t)){const n=H(o,t),i=J(B(n));await d([...A(p,(async s=>{f(i,s)||(await a(W+v(t)+"ADD"+v(s)),$(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(W+v(t)+"DROP"+v(e)),$(n,e))})):[]])}else await a("CREATE "+V+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(p,(a=>n+v(a))))});`),$(o,t,x([[s,e],...A(p,(a=>[a,e]))]));if(y)r(c)?await a(z+v(t)+X+" 1"):await d(P(c,(async(e,n)=>{r(e)?await a(z+v(t)+X+v(s)+"=?",[n]):h(p)||await aa(a,t,s,S(e),[n,...F(e)],i)})));else if(h(p))N(o,t)&&await a(z+v(t)+X+" 1");else{const e=C(B(H(o,t)),(a=>a!=s)),n=[],r=[];P(c??{},((a,t)=>{T(n,t,...A(e,(t=>a?.[t]))),T(r,t)})),await aa(a,t,s,e,n,i),await a(z+v(t)+X+v(s)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,o,c,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+m(A(o,(a=>n+v(a))))+")VALUES"+y(i(`,(?${i(",?",u(o))})`,u(c)/(u(o)+1)),1)+(r?"ON CONFLICT("+v(s)+")DO UPDATE SET"+m(A(o,(a=>v(a)+"=excluded."+v(a))),n):e),A(c,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=x(),sa=x(),ia=(a,t,e,n,s,i,o,c={},y=[])=>{let u,d,p,E=0;q(na,y,(()=>0)),q(sa,y,(()=>[]));const[v,g,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!k(a)||!k(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!k(a)||!k(t)])(o,a),h=async a=>(2!=E&&(E=1,await N.schedule((async()=>{await a(),E=0}))),N),C=t=>{(v&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await N.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),N),stopAutoLoad:()=>(d&&(s(d),d=void 0),N),isAutoLoading:()=>!r(d),save:async a=>(1!=E&&(E=2,await N.schedule((async()=>{try{await e(g,a)}catch(a){i?.(a)}E=0}))),N),startAutoSave:async()=>(await N.stopAutoSave().save(),p=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&N.save((()=>a))})),N),stopAutoSave:()=>(l(p,a.delListener),p=void 0,N),isAutoSaving:()=>!r(p),schedule:async(...a)=>(T(H(sa,y),...a),await(async()=>{if(!H(na,y)){for($(na,y,1);!r((a=H(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}$(na,y,0)}var a})(),N),getStore:()=>a,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...c};return D(N)},oa="store",ca=(a,t,e,n,s,[i],o,c,r,l)=>{const[w,y,u,d]=Z(t,o,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,E))[p]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,E,{[p]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>c},c)},ra=(a,t,e,n,s,[i,o,[c,l,w]],y,u,v,g)=>{const[m,A,h,T]=Z(t,y,s,g),N=async(a,t)=>await d(Y(o,(async([e,n,s,i],o)=>{t&&!_(a,o)||await h(e,n,a[o],s,i,t)}))),O=async(a,t)=>l?await h(w,E,{[p]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await m();const a=await(async()=>I(C(await d(Y(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!k(a[1])))))(),t=await(async()=>c?(await A(w,E))[p]:{})();return k(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),r(t)){const[t,e]=a();await N(t),await O(e)}else{const[a,e]=t();await N(a,!0),await O(e,!0)}}))),e,n,s,!1,{[v]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",pa={mode:la,[wa]:1},Ea={load:0,save:0,[da]:t+"_values"},va=(a,t,e,n)=>{const s=x();return P(a,((a,i)=>{const o=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(o[0])||n(i,o[0])||$(s,i,o)})),s},ga="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,o,r,l,u="getDb",d)=>{let p,v,m;const[A,h,C,T]=(a=>{const e=(a=>M(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:o={}}=e,c=y(F(M(Ea,o)),0,j(Ea)),r=c[2],l=J(r);return[0,n,[va(s,{[ua]:null,[ya]:E},ua,(a=>U(l,a)&&a==r)),va(i,{[da]:null,[ya]:E,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>U(l,t)&&t==r)),c],l]})(e);return(A?ca:ra)(a,o?async(a,t)=>(o(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ga+ma))[0][ma],e=(await n(ga+Aa))[0][Aa],s=(await n(g+" TOTAL_CHANGES() c"))[0].c;t==(p??=t)&&e==(v??=e)&&s==(m??=s)||(a(),p=t,v=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),p=v=null,i(t)}),r,C,O(T),l,u,d)},Ca=(a,t,e,n,s,i)=>ha(a,n,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),s,i,e);export{Ca as createSqliteWasmPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>c.all(a),E="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,g="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),h=a=>0==u(a),C=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),T=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],O=(a,t)=>a?.delete(t),L=Object,R=a=>L.getPrototypeOf(a),S=L.entries,b=L.keys,D=L.freeze,I=(a=[])=>L.fromEntries(a),M=(...a)=>L.assign({},...a),P=(a,t)=>t in a,_=(a,t)=>A(S(a),(([a,e])=>t(e,a))),F=a=>L.values(a),j=a=>u(b(a)),B=a=>(a=>!r(a)&&l(R(a),(a=>a==L.prototype||r(R(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>r(e)?(O(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(T(a,t)?n?.($(a,t)):x(a,t,e()),$(a,t)),J=(a,t,e,n=x)=>(_(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),U=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",q=g+"*FROM",Q="FROM pragma_table_",X="WHERE",Z=(a,t,s,i)=>{const c=H();return[async()=>J(c,I(await d(A(await a("SELECT name "+Q+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ta(t)+")ORDER BY name",t),(async({name:t})=>[t,I(A(await a(g+" name,type "+Q+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(c,t,J(G(c,t,H),e,((a,t,e)=>{e!=$(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(c,t))),async(t,e)=>((a,t)=>!r($($(c,a),t)))(t,e)?I(C(A(await a(q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!r(a)&&!B(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=U();_(o??{},(a=>A(b(a??{}),(a=>W(u,a)))));const E=N(u);if(!y&&w&&h(E)&&T(c,t))return await a("DROP "+z+v(t)),void x(c,t);if(h(E)||T(c,t)){const n=$(c,t),i=U(Y(n));await d([...A(E,(async s=>{O(i,s)||(await a(K+v(t)+"ADD"+v(s)),x(n,s,e))})),...!y&&l?A(N(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),x(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${m(A(E,(a=>n+v(a))))});`),x(c,t,H([[s,e],...A(E,(a=>[a,e]))]));if(y)r(o)?await a(V+v(t)+X+" 1"):await d(_(o,(async(e,n)=>{r(e)?await a(V+v(t)+X+v(s)+"=?",[n]):h(E)||await aa(a,t,s,b(e),[n,...F(e)],i)})));else if(h(E))T(c,t)&&await a(V+v(t)+X+" 1");else{const e=C(Y($(c,t)),(a=>a!=s)),n=[],r=[];_(o??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(r,t)})),await aa(a,t,s,e,n,i),await a(V+v(t)+X+v(s)+"NOT IN("+ta(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},aa=async(a,t,s,c,o,r=!0)=>await a("INSERT "+(r?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+m(A(c,(a=>n+v(a))))+")VALUES"+y(i(`,(?${i(",?",u(c))})`,u(o)/(u(c)+1)),1)+(r?"ON CONFLICT("+v(s)+")DO UPDATE SET"+m(A(c,(a=>v(a)+"=excluded."+v(a))),n):e),A(o,(a=>a??null))),ta=a=>m(A(a,(()=>"?")),n),ea=JSON.parse,na=H(),sa=H(),ia=(a,t,e,n,s,i,c,o={},y=[])=>{let u,d,E,p=0;G(na,y,(()=>0)),G(sa,y,(()=>[]));const[v,g,m,A]=((a,t)=>!a||r(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,a],[,t]]])=>!B(a)||!B(t)])(c,a),h=async a=>(2!=p&&(p=1,await T.schedule((async()=>{await a(),p=0}))),T),C=t=>{(v&&w(t?.[0])?1===t?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T={load:async(e,n)=>await h((async()=>{try{C(await t())}catch(t){i?.(t),a.setContent([e,n])}})),startAutoLoad:async(a={},e={})=>(await T.stopAutoLoad().load(a,e),d=n((async(a,e)=>{const n=e?.();await h((async()=>{try{C(n??a?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(d&&(s(d),d=void 0),T),isAutoLoading:()=>!r(d),save:async a=>(1!=p&&(p=2,await T.schedule((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&T.save((()=>a))})),T),stopAutoSave:()=>(l(E,a.delListener),E=void 0,T),isAutoSaving:()=>!r(E),schedule:async(...a)=>(f($(sa,y),...a),await(async()=>{if(!$(na,y)){for(x(na,y,1);!r((a=$(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}x(na,y,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...o};return D(T)},ca="store",oa=(a,t,e,n,s,[i],c,o,r,l)=>{const[w,y,u,d]=Z(t,c,s,l);return ia(a,(async()=>await d((async()=>(await w(),ea((await y(i,p))[E]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[E]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,!1,{[r]:()=>o},o)},ra=(a,t,e,n,s,[i,c,[o,l,w]],y,u,v,g)=>{const[m,A,h,f]=Z(t,y,s,g),T=async(a,t)=>await d(k(c,(async([e,n,s,i],c)=>{t&&!P(a,c)||await h(e,n,a[c],s,i,t)}))),N=async(a,t)=>l?await h(w,p,{[E]:a},!0,!0,t):null;return ia(a,(async()=>await f((async()=>{await m();const a=await(async()=>I(C(await d(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await A(w,p))[E]:{})();return B(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await f((async()=>{if(await m(),r(t)){const[t,e]=a();await T(t),await N(e)}else{const[a,e]=t();await T(a,!0),await N(e,!0)}}))),e,n,s,!1,{[v]:()=>u},u)},la="json",wa="autoLoadIntervalSeconds",ya="rowIdColumnName",ua="tableId",da="tableName",Ea={mode:la,[wa]:1},pa={load:0,save:0,[da]:t+"_values"},va=(a,t,e,n)=>{const s=H();return _(a,((a,i)=>{const c=y(F(M(t,w(a)?{[e]:a}:a)),0,j(t));r(c[0])||n(i,c[0])||x(s,i,c)})),s},ga="pragma ",ma="data_version",Aa="schema_version",ha=(a,e,n,s,i,c,r,l,u="getDb",d)=>{let E,v,m;const[A,h,C,f]=(a=>{const e=(a=>M(Ea,w(a)?{storeTableName:a}:a??{}))(a),n=e[wa];if(e.mode==la){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:c={}}=e,o=y(F(M(pa,c)),0,j(pa)),r=o[2],l=U(r);return[0,n,[va(s,{[ua]:null,[ya]:p},ua,(a=>W(l,a)&&a==r)),va(i,{[da]:null,[ya]:p,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(A?oa:ra)(a,c?async(a,t)=>(c(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ga+ma))[0][ma],e=(await n(ga+Aa))[0][Aa],s=(await n(g+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(v??=e)&&s==(m??=s)||(a(),E=t,v=e)}catch{}},e=h,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=v=null,i(t)}),r,C,N(f),l,u,d)},Ca="change",fa=(a,t,e,n,s)=>ha(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new c(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ca,e),e}),(a=>t.off(Ca,a)),n,s,t);export{fa as createSqlite3Persister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Map as t}from"yjs";const e=t=>typeof t,a=e(""),n="t",s="v",o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),c=t=>t.length,i=t=>t.shift(),g=Object,l=t=>g.getPrototypeOf(t),
|
|
1
|
+
import{Map as t}from"yjs";const e=t=>typeof t,a=e(""),n="t",s="v",o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),c=t=>t.length,i=t=>t.shift(),g=Object,l=t=>g.getPrototypeOf(t),d=g.entries,u=g.keys,y=g.freeze,p=(t=[])=>g.fromEntries(t),h=(t,e)=>e in t,v=(t,e)=>((t,e)=>t.map(e))(d(t),(([t,a])=>e(a,t))),w=t=>(t=>!o(t)&&r(l(t),(t=>t==g.prototype||o(l(t))),(()=>!0)))(t)&&0==(t=>c(u(t)))(t),f=(t,e,a)=>(h(t,e)||(t[e]=a()),t[e]),S=t=>new Map(t),A=(t,e)=>t?.get(e),C=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),b=(t,e,a)=>{return o(a)?(n=t,s=e,n?.delete(s),t):t?.set(e,a);var n,s},M=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(A(t,e)):b(t,e,a()),A(t,e)},O=S(),L=S(),J="delete",N=t=>[t.get(n),t.get(s)],m=(e,a,n,s)=>{const r=o(a)?e:e.get(a)??e.set(a,new t);let c;return v(n,((t,e)=>{s(r,e,t)&&(c=1)})),r.forEach(((t,e)=>{h(n,e)||(r.delete(e),c=1)})),o(a)||r.size||e.delete(a),c},z=(g,l,d="tinybase",u)=>{const h=l.getMap(d);return((t,n,s,c,g,l,d,u={},p=[])=>{let h,v,f,S=0;M(O,p,(()=>0)),M(L,p,(()=>[]));const[C,J,N,m]=((t,e)=>!t||o(e.getMergeableContent)?[0,e.getContent,e.getTransactionChanges,([t,e])=>!w(t)||!w(e)]:[1,e.getMergeableContent,e.getTransactionMergeableChanges,([,[[,t],[,e]]])=>!w(t)||!w(e)])(d,t),z=async t=>(2!=S&&(S=1,await E.schedule((async()=>{await t(),S=0}))),E),D=n=>{var s;(C&&(s=n?.[0],e(s)==a)?1===n?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===n?.[2]?t.applyChanges:t.setContent)(n)},E={load:async(e,a)=>await z((async()=>{try{D(await n())}catch(n){l?.(n),t.setContent([e,a])}})),startAutoLoad:async(t={},e={})=>(await E.stopAutoLoad().load(t,e),v=c((async(t,e)=>{const a=e?.();await z((async()=>{try{D(a??t?.()??await n())}catch(t){l?.(t)}}))})),E),stopAutoLoad:()=>(v&&(g(v),v=void 0),E),isAutoLoading:()=>!o(v),save:async t=>(1!=S&&(S=2,await E.schedule((async()=>{try{await s(J,t)}catch(t){l?.(t)}S=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),f=t.addDidFinishTransactionListener((()=>{const t=N();m(t)&&E.save((()=>t))})),E),stopAutoSave:()=>(r(f,t.delListener),f=void 0,E),isAutoSaving:()=>!o(f),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(A(L,p),...t),await(async()=>{if(!A(O,p)){for(b(O,p,1);!o(h=i(A(L,p)));)try{await h()}catch(t){l?.(t)}b(O,p,0)}})(),E),getStore:()=>t,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return y(E)})(g,(async()=>h.size?[h.get(n).toJSON(),h.get(s).toJSON()]:void 0),(async(e,a)=>l.transact((()=>((e,a,c)=>{e.size||(e.set(n,new t),e.set(s,new t));const[i,g]=N(e),l=()=>{d=1};let d=1;if(r(c?.(),(([t,e])=>{d=0,v(t,((t,e)=>d?0:o(t)?i.delete(e):r(i.get(e),(e=>v(t,((t,a)=>d?0:o(t)?e.delete(a):r(e.get(a),(e=>v(t,((t,a)=>o(t)?e.delete(a):e.set(a,t)))),l)))),l))),v(e,((t,e)=>d?0:o(t)?g.delete(e):g.set(e,t)))})),d){const[t,e]=a();m(i,void 0,t,((t,e,a)=>m(i,e,a,((t,e,a)=>m(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),m(g,void 0,e,((t,e,a)=>{g.get(e)!==a&&g.set(e,a)}))}})(h,e,a)))),(t=>{const e=e=>t(void 0,(()=>((t,e)=>{if(1==c(e)&&(a=e[0].path,0==c(a)))return[t.get(n).toJSON(),t.get(s).toJSON(),1];var a;const[o,g]=N(t),l={},d={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>i(t)==n?r(i(t),(a=>{const n=f(l,a,p),s=o.get(a);r(i(t),(t=>{const a=f(n,t,p),o=s.get(t);C(e,((t,{action:e})=>a[t]=e==J?null:o.get(t)))}),(()=>C(e,((t,{action:e})=>n[t]=e==J?null:s.get(t)?.toJSON()))))}),(()=>C(e,((t,{action:e})=>l[t]=e==J?null:o.get(t)?.toJSON())))):C(e,((t,{action:e})=>d[t]=e==J?null:g.get(t)))))})(e),[l,d,1]})(h,e)));return h.observeDeep(e),e}),(t=>{h.unobserveDeep(t)}),u,!1,{getYDoc:()=>l})};export{z as createYjsPersister};
|
|
Binary file
|
package/lib/persisters.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=t=>typeof t,
|
|
1
|
+
const t=t=>typeof t,a=t(""),e=t=>null==t,s=(t,a,s)=>e(t)?s?.():a(t),n=Object,o=t=>n.getPrototypeOf(t),r=n.keys,c=n.freeze,i=t=>(t=>!e(t)&&s(o(t),(t=>t==n.prototype||e(o(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),y=t=>new Map(t),g=(t,a)=>t?.get(a),d=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},l=(t,a,e,s)=>{var n,o;return n=t,o=a,n?.has(o)?s?.(g(t,a)):d(t,a,e()),g(t,a)},u=y(),p=y(),h=(n,o,r,y,h,v,w,A={},C=[])=>{let L,S,b,f=0;l(u,C,(()=>0)),l(p,C,(()=>[]));const[M,T,O,j]=((t,a)=>!t||e(a.getMergeableContent)?[0,a.getContent,a.getTransactionChanges,([t,a])=>!i(t)||!i(a)]:[1,a.getMergeableContent,a.getTransactionMergeableChanges,([,[[,t],[,a]]])=>!i(t)||!i(a)])(w,n),k=async t=>(2!=f&&(f=1,await z.schedule((async()=>{await t(),f=0}))),z),x=e=>{var s;(M&&(s=e?.[0],t(s)==a)?1===e?.[1][2]?n.applyMergeableChanges:n.setMergeableContent:1===e?.[2]?n.applyChanges:n.setContent)(e)},z={load:async(t,a)=>await k((async()=>{try{x(await o())}catch(e){v?.(e),n.setContent([t,a])}})),startAutoLoad:async(t={},a={})=>(await z.stopAutoLoad().load(t,a),S=y((async(t,a)=>{const e=a?.();await k((async()=>{try{x(e??t?.()??await o())}catch(t){v?.(t)}}))})),z),stopAutoLoad:()=>(S&&(h(S),S=void 0),z),isAutoLoading:()=>!e(S),save:async t=>(1!=f&&(f=2,await z.schedule((async()=>{try{await r(T,t)}catch(t){v?.(t)}f=0}))),z),startAutoSave:async()=>(await z.stopAutoSave().save(),b=n.addDidFinishTransactionListener((()=>{const t=O();j(t)&&z.save((()=>t))})),z),stopAutoSave:()=>(s(b,n.delListener),b=void 0,z),isAutoSaving:()=>!e(b),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(g(p,C),...t),await(async()=>{if(!g(u,C)){for(d(u,C,1);!e((t=g(p,C),L=t.shift()));)try{await L()}catch(t){v?.(t)}d(u,C,0)}var t})(),z),getStore:()=>n,destroy:()=>z.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...A};return c(z)};export{h as createCustomPersister};
|
package/lib/persisters.js.gz
CHANGED
|
Binary file
|
package/lib/store.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.keys,M=z.isFrozen,N=z.freeze,j=e=>!m(e)&&p(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>j(e)&&0==(e=>J(A(e)))(e),$=e=>e?.size??0,q=(e,t)=>e?.has(t)??!1,B=e=>m(e)||0==$(e),G=e=>e.clear(),K=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),U=e=>new Map(e),X=e=>[...e?.keys()??[]],Y=(e,t)=>e?.get(t),Z=(e,t)=>K(e,((e,s)=>t(s,e))),_=(e,t,s)=>m(s)?(Q(e,t),e):e?.set(t,s),ee=(e,t,s,n)=>(q(e,t)?n?.(Y(e,t)):_(e,t,s()),Y(e,t)),te=(e,t,s,n=_)=>(H(t,((t,n)=>s(e,n,t))),Z(e,(s=>x(t,s)?0:n(e,s))),e),se=(e,t,s)=>{const n={};return K(e,((e,a)=>{const l=t?t(e,a):e;!s?.(l,e)&&(n[a]=l)})),n},ne=(e,t,s)=>se(e,(e=>se(e,t,s)),W),ae=(e,t,s)=>se(e,(e=>ne(e,t,s)),W),le=(e,t)=>{const s=U();return K(e,((e,n)=>s.set(n,t?.(e)??e))),s},oe=e=>le(e,le),re=e=>le(e,oe),ce=(e,t,s,n,a=0)=>p((s?ee:Y)(e,t[a],a>J(t)-2?s:U),(l=>{if(a>J(t)-2)return n?.(l)&&_(e,t[a]),l;const o=ce(l,t,s,n,a+1);return B(l)&&_(e,t[a]),o})),ie=e=>new Set(Array.isArray(e)||m(e)?e:[e]),de=(e,t)=>e?.add(t),ue=/^\d+$/,he=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{ue.test(t)&&J(e)<1e3&&O(e,t)}]},fe=e=>[e,e],ge=()=>[U(),U()],Te=e=>[...e],be=([e,t])=>e===t,Ve=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Ce=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),Se=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),ve=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),we=JSON.parse,ye=(e,t,s)=>m(e)||!j(e)||W(e)||M(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!W(e)),me=(e,t,s)=>_(e,t,Y(e,t)==-s?void 0:s),pe=()=>{let e,s,n=!1,l=!1,i=0,y=[];const z=U(),P=U(),k=U(),A=U(),M=U(),j=U(),ue=U(),Le=U(),Re=U(),Ie=U(),Je=U(),Ee=U(),Fe=U(),Oe=U(),ze=ie(),Pe=U(),ke=U(),Ae=U(),Me=U(),Ne=ge(),je=ge(),xe=ge(),De=ge(),He=ge(),We=ge(),$e=ge(),qe=ge(),Be=ge(),Ge=ge(),Ke=ge(),Qe=ge(),Ue=ge(),Xe=ge(),Ye=ge(),Ze=ge(),_e=ge(),et=ge(),tt=ge(),st=ge(),nt=ge(),at=ge(),lt=U(),ot=ge(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=he(),l=U();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return _(l,i,[e,a,o,r,c]),de(ce(a,o??[t],ie),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?K(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Y(e,s),t+1)));return a(e,0),n})(e,n),(e=>K(e,(e=>Y(l,e)[0](s,...n??[],...a))))),e=>p(Y(l,e),(([,s,n])=>(ce(s,n??[t],void 0,(t=>(Q(t,e),B(t)?1:0))),_(l,e),a(e),n))),e=>p(Y(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!ye(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ve(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||q(Je,s)||Wt(s))&&ye(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>ye(n?s:Vt(s,e,t),((n,a)=>p(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?p(Y(Y(Je,t),n),(e=>Ve(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):m(Ve(a))?Wt(t,s,n,a):a,Tt=(e,t)=>ye(t?e:Ct(e),((t,s)=>p(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),bt=(e,t)=>s?p(Y(Fe,e),(s=>Ve(t)!=s[o]?$t(e,t,s[r]):t),(()=>$t(e,t))):m(Ve(t))?$t(e,t):t,Vt=(e,t,s)=>(p(Y(Ee,t),(([n,a])=>{K(n,((t,s)=>{x(e,s)||(e[s]=t)})),K(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),Ct=e=>(s&&(K(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),K(ze,(t=>{x(e,t)||$t(t)}))),e),St=e=>te(Je,e,((e,t,s)=>{const n=U(),a=ie();te(ee(Je,t,U),s,((e,t,s)=>{_(e,t,s),p(s[r],(e=>_(n,t,e)),(()=>de(a,t)))})),_(Ee,t,[n,a])}),((e,t)=>{_(Je,t),_(Ee,t)})),vt=e=>te(Fe,e,((e,t,s)=>{_(Fe,t,s),p(s[r],(e=>_(Oe,t,e)),(()=>de(ze,t)))}),((e,t)=>{_(Fe,t),_(Oe,t),Q(ze,t)})),wt=e=>W(e)?ws():bs(e),yt=e=>te(Ae,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>te(ee(Ae,e,(()=>(Mt(e,1),_(Pe,e,he()),_(ke,e,U()),U()))),t,((t,s,n)=>pt(e,t,s,n)),((t,s)=>Pt(e,t,s))),pt=(e,t,s,n,a)=>te(ee(t,s,(()=>(Nt(e,s,1),U()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{q(s,n)||jt(e,t,n,1);const l=Y(s,n);a!==l&&(xt(e,t,n,l,a),_(s,n,a))},Rt=(e,t,s,n,a)=>p(Y(t,s),(t=>Lt(e,s,t,n,a)),(()=>pt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ps():Vs(e),Jt=e=>te(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{q(Me,e)||Dt(e,1);const s=Y(Me,e);t!==s&&(Ht(e,s,t),_(Me,e,t))},Ft=(e,t)=>{const[s]=Y(Pe,e),n=s(t);return q(Y(Ae,e),n)?Ft(e,t):n},Ot=e=>Y(Ae,e)??mt(e,{}),zt=e=>mt(e,{}),Pt=(e,t,s)=>{const[,n]=Y(Pe,e);n(s),pt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Y(Y(Ee,e)?.[0],a);if(!m(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,Y(n,t)),jt(e,s,t,-1),_(n,t)};m(o)?r(a):Z(n,r),B(n)&&(Nt(e,s,-1),B(_(t,s))&&(Mt(e,-1),_(Ae,e),_(Pe,e),_(ke,e)))},At=e=>{const t=Y(Oe,e);if(!m(t))return Et(e,t);Ht(e,Y(Me,e)),Dt(e,-1),_(Me,e)},Mt=(e,t)=>me(z,e,t),Nt=(e,t,s)=>me(ee(A,e,U),t,s)&&_(k,e,ee(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=Y(ke,e),l=Y(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(ee(P,e,U),s,n),_(a,s,l!=-n?l+n:null),me(ee(ee(M,e,U),t,U),s,n)},xt=(e,t,s,n,a)=>ee(ee(ee(j,e,U),t,U),s,(()=>[n,0]))[1]=a,Dt=(e,t)=>me(ue,e,t),Ht=(e,t,s)=>ee(Le,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,n,a)=>(O(ee(ee(ee(Re,e,U),t,U),s,(()=>[])),n),a),$t=(e,t,s)=>(O(ee(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>p(Y(Y(Y(j,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(ls(e,t,s))])),Bt=e=>p(Y(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...fe(cs(e))])),Gt=e=>B(Re)||B(Ze[e])?0:K(e?re(Re):Re,((t,s)=>K(t,((t,n)=>K(t,((t,a)=>ct(Ze[e],[s,n,a],t))))))),Kt=e=>B(Ie)||B(_e[e])?0:K(e?le(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!B(e))return ct(t,n,(()=>se(e))),Z(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Ut=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=B(Ge[e]),a=B(Ue[e])&&B(Xe[e])&&B(Be[e])&&B(Ke[e])&&B(We[e])&&B($e[e])&&B(qe[e])&&s&&B(xe[e])&&B(De[e]),l=B(Ye[e])&&B(Qe[e])&&B(He[e])&&B(je[e]);if(!a||!l){const t=e?[le(z),oe(P),le(k),oe(A),re(M),re(j)]:[z,P,k,A,M,j];if(!a){Qt(t[0],xe[e],De[e]),K(t[1],((t,s)=>Qt(t,We[e],$e[e],[s]))),K(t[2],((t,s)=>{0!=t&&ct(qe[e],[s],ts(s))}));const n=ie();K(t[3],((t,a)=>{Qt(t,Be[e],Ke[e],[a])&&!s&&(ct(Ge[e],[a,null]),de(n,a))})),s||K(t[5],((t,s)=>{if(!q(n,s)){const n=ie();K(t,(e=>K(e,(([t,s],a)=>s!==t?de(n,a):Q(e,a))))),K(n,(t=>ct(Ge[e],[s,t])))}})),K(t[4],((t,s)=>K(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;K(t[5],((t,n)=>{let a;K(t,((t,l)=>{let o;K(t,(([t,r],c)=>{r!==t&&(ct(Ye[e],[n,l,c],r,t,qt),s=a=o=1)})),o&&ct(Qe[e],[n,l],qt)})),a&&ct(He[e],[n],qt)})),s&&ct(je[e],void 0,qt)}}},Xt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=B(st[e])&&B(nt[e]),n=B(at[e])&&B(tt[e]);if(!s||!n){const t=e?[le(ue),le(Le)]:[ue,Le];if(s||Qt(t[0],st[e],nt[e]),!n){let s;K(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Bt),s=1)})),s&&ct(tt[e],void 0,Bt)}}},Yt=(e,...t)=>(Is((()=>e(...F(t,w)))),Fs),Zt=()=>ae(Ae),_t=()=>X(Ae),es=e=>X(Y(ke,w(e))),ts=e=>$(Y(Ae,w(e))),ss=e=>X(Y(Ae,w(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=Y(Ae,w(e)),r=(e,s)=>[m(t)?s:Y(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>X(Y(Y(Ae,w(e)),w(t))),ls=(e,t,s)=>Y(Y(Y(Ae,w(e)),w(t)),w(s)),os=()=>se(Me),rs=()=>X(Me),cs=e=>Y(Me,w(e)),is=()=>!B(Ae),ds=e=>q(Ae,w(e)),us=(e,t)=>q(Y(ke,w(e)),w(t)),hs=(e,t)=>q(Y(Ae,w(e)),w(t)),fs=(e,t,s)=>q(Y(Y(Ae,w(e)),w(t)),w(s)),gs=()=>!B(Me),Ts=e=>q(Me,w(e)),bs=e=>Yt((()=>(e=>ye(e,ht,Wt))(e)?yt(e):0)),Vs=e=>Yt((()=>Tt(e)?Jt(e):0)),Cs=e=>{try{wt(we(e))}catch{}return Fs},Ss=t=>Yt((()=>{if((e=ye(t,(e=>ye(e,ut))))&&(St(t),!B(Ae))){const e=Zt();ws(),bs(e)}})),vs=e=>Yt((()=>{if(s=(e=>ye(e,ut))(e)){const t=os();Rs(),ps(),s=!0,vt(e),Vs(t)}})),ws=()=>Yt((()=>yt({}))),ys=e=>Yt((e=>q(Ae,e)?zt(e):0),e),ms=(e,t)=>Yt(((e,t)=>p(Y(Ae,e),(s=>q(s,t)?Pt(e,s,t):0))),e,t),ps=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{St({}),e=!1})),Rs=()=>Yt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&ct(lt,void 0),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Gt(1),B(j)||Ut(1),Kt(1),B(Le)||Xt(1),e?.(Fs)&&(K(j,((e,t)=>K(e,((e,s)=>K(e,(([e],n)=>Ce(Fs,t,s,n,e))))))),G(j),K(Le,(([e],t)=>Se(Fs,t,e))),G(Le)),ct(ot[0],void 0),i=-1,Gt(0),B(j)||Ut(0),Kt(0),B(Le)||Xt(0),y[0]?.(Fs),ct(ot[1],void 0),y[1]?.(Fs),i=0,n=is(),l=gs(),E([z,P,k,A,M,j,Re,ue,Le,Ie],G))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ne(Y(Ae,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>se(Y(Y(Ae,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>ve(Ae),getValuesJson:()=>ve(Me),getJson:()=>ve([Ae,Me]),getTablesSchemaJson:()=>ve(Je),getValuesSchemaJson:()=>ve(Fe),getSchemaJson:()=>ve([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Yt((()=>{(W(e)?ws:bs)(e),(W(t)?ps:Vs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ht(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ft(e,t,s)?pt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=w(e),pt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>p(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>p(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>m(e)?ys(t):H(e,((e,s)=>m(e)?ms(t,s):H(e,((e,n)=>Ce(Fs,t,s,n,e))))))),H(e[1],((e,t)=>Se(Fs,t,e)))})),setTablesJson:Cs,setValuesJson:e=>{try{It(we(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=we(e);wt(t),It(s)}catch{Cs(e)}})),setTablesSchema:Ss,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Ss(e),vs(t)})),delTables:ws,delTable:ys,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>p(Y(Ae,e),(a=>p(Y(a,t),(l=>q(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ps,delValue:e=>Yt((e=>q(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[se(j,((e,t)=>-1===Y(z,t)?void 0:se(e,((e,s)=>-1===Y(Y(A,t),s)?void 0:se(e,(([,e])=>e),((e,t)=>be(t)))),W)),W),se(Le,(([,e])=>e),((e,t)=>be(t)))],getTransactionLog:()=>[!B(j),!B(Le),ae(j,Te,be),ae(Re),se(Le,Te,be),se(Ie),se(z),ne(A),ae(M),se(ue)],finishTransaction:Es,forEachTable:e=>K(Ae,((t,s)=>e(s,(e=>K(t,((t,s)=>e(s,(e=>Z(t,e))))))))),forEachTableCell:(e,t)=>Z(Y(ke,w(e)),t),forEachRow:(e,t)=>K(Y(Ae,w(e)),((e,s)=>t(s,(t=>Z(e,t))))),forEachCell:(e,t,s)=>Z(Y(Y(Ae,w(e)),w(t)),s),forEachValue:e=>Z(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:pe,addListener:rt,callListeners:ct,setInternalListeners:(e,t)=>y=[e,t]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,$e,[_t,es],e=>[us(...e)]],[g]:[1,qe,[_t]],[T]:[1,Be,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[hs(...e)]],[f]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+b]:[3,Xe,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ye,[_t,ss,as],e=>fe(ls(...e))],InvalidCell:[3,Ze],[c+S]:[0,et,[],()=>[gs()]],[S]:[0,tt],[v]:[0,st],[c+C]:[1,nt,[rs],e=>[Ts(...e)]],[C]:[1,at,[rs],e=>fe(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),N(Fs)};export{pe as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),o="type",r="default",c="Has",i="Ids",d="Table",u=d+"s",h=d+i,f="Row",g=f+"Count",T=f+i,b="Cell",V=b+i,C="Value",S=C+"s",v=C+i,w=e=>t+e,y=isFinite,m=e=>null==e,p=(e,t,s)=>m(e)?s?.():t(e),L=e=>e==s||e==n,R=t=>e(t)==l,I=(e,t,s)=>e.slice(t,s),J=e=>e.length,E=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,P=e=>z.getPrototypeOf(e),k=z.entries,A=z.isFrozen,M=e=>!m(e)&&p(P(e),(e=>e==z.prototype||m(P(e))),(()=>!0)),N=z.keys,j=z.freeze,x=(e,t)=>t in e,D=(e,t)=>(delete e[t],e),H=(e,t)=>F(k(e),(([e,s])=>t(s,e))),W=e=>M(e)&&0==(e=>J(N(e)))(e),$=(e,t,s,n=0)=>m(e)||!M(e)||!n&&W(e)||A(e)?(s?.(),!1):(H(e,((s,n)=>{t(s,n)||D(e,n)})),!!n||!W(e)),q=e=>e?.size??0,B=(e,t)=>e?.has(t)??!1,G=e=>m(e)||0==q(e),K=e=>e.clear(),Q=(e,t)=>e?.forEach(t),U=(e,t)=>e?.delete(t),X=e=>new Map(e),Y=e=>[...e?.keys()??[]],Z=(e,t)=>e?.get(t),_=(e,t)=>Q(e,((e,s)=>t(s,e))),ee=(e,t,s)=>m(s)?(U(e,t),e):e?.set(t,s),te=(e,t,s,n)=>(B(e,t)?n?.(Z(e,t)):ee(e,t,s()),Z(e,t)),se=(e,t,s,n=ee)=>(H(t,((t,n)=>s(e,n,t))),_(e,(s=>x(t,s)?0:n(e,s))),e),ne=(e,t,s,n)=>{const a={};return Q(e,((e,l)=>{if(!s?.(e,l)){const s=t?t(e,l):e;!n?.(s)&&(a[l]=s)}})),a},ae=(e,t,s)=>ne(e,(e=>ne(e,t,s)),G,W),le=(e,t,s)=>ne(e,(e=>ae(e,t,s)),G,W),oe=(e,t)=>{const s=X();return Q(e,((e,n)=>s.set(n,t?.(e)??e))),s},re=e=>oe(e,oe),ce=e=>oe(e,re),ie=(e,t,s,n,a=0)=>p((s?te:Z)(e,t[a],a>J(t)-2?s:X),(l=>{if(a>J(t)-2)return n?.(l)&&ee(e,t[a]),l;const o=ie(l,t,s,n,a+1);return G(l)&&ee(e,t[a]),o})),de=e=>new Set(Array.isArray(e)||m(e)?e:[e]),ue=(e,t)=>e?.add(t),he=/^\d+$/,fe=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{he.test(t)&&J(e)<1e3&&O(e,t)}]},ge=e=>[e,e],Te=()=>[X(),X()],be=e=>[...e],Ve=([e,t])=>e===t,Ce=t=>{const s=e(t);return L(s)||s==a&&y(t)?s:void 0},Se=(e,t,s,n,a)=>m(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a),ve=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),we=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),ye=JSON.parse,me=(e,t,s)=>ee(e,t,Z(e,t)==-s?void 0:s),pe=()=>{let e,s,n=!1,l=!1,i=0,y=[];const z=X(),P=X(),k=X(),A=X(),M=X(),N=X(),he=X(),Le=X(),Re=X(),Ie=X(),Je=X(),Ee=X(),Fe=X(),Oe=X(),ze=de(),Pe=X(),ke=X(),Ae=X(),Me=X(),Ne=Te(),je=Te(),xe=Te(),De=Te(),He=Te(),We=Te(),$e=Te(),qe=Te(),Be=Te(),Ge=Te(),Ke=Te(),Qe=Te(),Ue=Te(),Xe=Te(),Ye=Te(),Ze=Te(),_e=Te(),et=Te(),tt=Te(),st=Te(),nt=Te(),at=Te(),lt=X(),ot=Te(),[rt,ct,it,dt]=(e=>{let s;const[n,a]=fe(),l=X();return[(e,a,o,r=[],c=(()=>[]))=>{s??=Fs;const i=n(1);return ee(l,i,[e,a,o,r,c]),ue(ie(a,o??[t],de),i),i},(e,n,...a)=>E(((e,s=[t])=>{const n=[],a=(e,t)=>t==J(s)?O(n,e):null===s[t]?Q(e,(e=>a(e,t+1))):E([s[t],null],(s=>a(Z(e,s),t+1)));return a(e,0),n})(e,n),(e=>Q(e,(e=>Z(l,e)[0](s,...n??[],...a))))),e=>p(Z(l,e),(([,s,n])=>(ie(s,n??[t],void 0,(t=>(U(t,e),G(t)?1:0))),ee(l,e),a(e),n))),e=>p(Z(l,e),(([e,,t=[],n,a])=>{const l=(...o)=>{const r=J(o);r==J(t)?e(s,...o,...a(o)):m(t[r])?E(n[r]?.(...o)??[],(e=>l(...o,e))):l(...o,t[r])};l()}))]})(),ut=e=>{if(!$(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!L(t)&&t!=a||(Ce(e[r])!=t&&D(e,r),0))},ht=(t,s)=>(!e||B(Je,s)||Wt(s))&&$(t,((e,t)=>ft(s,t,e)),(()=>Wt(s))),ft=(e,t,s,n)=>$(n?s:Vt(s,e,t),((n,a)=>p(gt(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Wt(e,t))),gt=(t,s,n,a)=>e?p(Z(Z(Je,t),n),(e=>Ce(a)!=e[o]?Wt(t,s,n,a,e[r]):a),(()=>Wt(t,s,n,a))):m(Ce(a))?Wt(t,s,n,a):a,Tt=(e,t)=>$(t?e:Ct(e),((t,s)=>p(bt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>$t())),bt=(e,t)=>s?p(Z(Fe,e),(s=>Ce(t)!=s[o]?$t(e,t,s[r]):t),(()=>$t(e,t))):m(Ce(t))?$t(e,t):t,Vt=(e,t,s)=>(p(Z(Ee,t),(([n,a])=>{Q(n,((t,s)=>{x(e,s)||(e[s]=t)})),Q(a,(n=>{x(e,n)||Wt(t,s,n)}))})),e),Ct=e=>(s&&(Q(Oe,((t,s)=>{x(e,s)||(e[s]=t)})),Q(ze,(t=>{x(e,t)||$t(t)}))),e),St=e=>se(Je,e,((e,t,s)=>{const n=X(),a=de();se(te(Je,t,X),s,((e,t,s)=>{ee(e,t,s),p(s[r],(e=>ee(n,t,e)),(()=>ue(a,t)))})),ee(Ee,t,[n,a])}),((e,t)=>{ee(Je,t),ee(Ee,t)})),vt=e=>se(Fe,e,((e,t,s)=>{ee(Fe,t,s),p(s[r],(e=>ee(Oe,t,e)),(()=>ue(ze,t)))}),((e,t)=>{ee(Fe,t),ee(Oe,t),U(ze,t)})),wt=e=>W(e)?ws():bs(e),yt=e=>se(Ae,e,((e,t,s)=>mt(t,s)),((e,t)=>zt(t))),mt=(e,t)=>se(te(Ae,e,(()=>(Mt(e,1),ee(Pe,e,fe()),ee(ke,e,X()),X()))),t,((t,s,n)=>pt(e,t,s,n)),((t,s)=>Pt(e,t,s))),pt=(e,t,s,n,a)=>se(te(t,s,(()=>(Nt(e,s,1),X()))),n,((t,n,a)=>Lt(e,s,t,n,a)),((n,l)=>kt(e,t,s,n,l,a))),Lt=(e,t,s,n,a)=>{B(s,n)||jt(e,t,n,1);const l=Z(s,n);a!==l&&(xt(e,t,n,l,a),ee(s,n,a))},Rt=(e,t,s,n,a)=>p(Z(t,s),(t=>Lt(e,s,t,n,a)),(()=>pt(e,t,s,Vt({[n]:a},e,s)))),It=e=>W(e)?ps():Vs(e),Jt=e=>se(Me,e,((e,t,s)=>Et(t,s)),((e,t)=>At(t))),Et=(e,t)=>{B(Me,e)||Dt(e,1);const s=Z(Me,e);t!==s&&(Ht(e,s,t),ee(Me,e,t))},Ft=(e,t)=>{const[s]=Z(Pe,e),n=s(t);return B(Z(Ae,e),n)?Ft(e,t):n},Ot=e=>Z(Ae,e)??mt(e,{}),zt=e=>mt(e,{}),Pt=(e,t,s)=>{const[,n]=Z(Pe,e);n(s),pt(e,t,s,{},!0)},kt=(e,t,s,n,a,l)=>{const o=Z(Z(Ee,e)?.[0],a);if(!m(o)&&!l)return Lt(e,s,n,a,o);const r=t=>{xt(e,s,t,Z(n,t)),jt(e,s,t,-1),ee(n,t)};m(o)?r(a):_(n,r),G(n)&&(Nt(e,s,-1),G(ee(t,s))&&(Mt(e,-1),ee(Ae,e),ee(Pe,e),ee(ke,e)))},At=e=>{const t=Z(Oe,e);if(!m(t))return Et(e,t);Ht(e,Z(Me,e)),Dt(e,-1),ee(Me,e)},Mt=(e,t)=>me(z,e,t),Nt=(e,t,s)=>me(te(A,e,X),t,s)&&ee(k,e,te(k,e,(()=>0))+s),jt=(e,t,s,n)=>{const a=Z(ke,e),l=Z(a,s)??0;(0==l&&1==n||1==l&&-1==n)&&me(te(P,e,X),s,n),ee(a,s,l!=-n?l+n:null),me(te(te(M,e,X),t,X),s,n)},xt=(e,t,s,n,a)=>te(te(te(N,e,X),t,X),s,(()=>[n,0]))[1]=a,Dt=(e,t)=>me(he,e,t),Ht=(e,t,s)=>te(Le,e,(()=>[t,0]))[1]=s,Wt=(e,t,s,n,a)=>(O(te(te(te(Re,e,X),t,X),s,(()=>[])),n),a),$t=(e,t,s)=>(O(te(Ie,e,(()=>[])),t),s),qt=(e,t,s)=>p(Z(Z(Z(N,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(ls(e,t,s))])),Bt=e=>p(Z(Le,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ge(cs(e))])),Gt=e=>G(Re)||G(Ze[e])?0:Q(e?ce(Re):Re,((t,s)=>Q(t,((t,n)=>Q(t,((t,a)=>ct(Ze[e],[s,n,a],t))))))),Kt=e=>G(Ie)||G(_e[e])?0:Q(e?oe(Ie):Ie,((t,s)=>ct(_e[e],[s],t))),Qt=(e,t,s,n)=>{if(!G(e))return ct(t,n,(()=>ne(e))),_(e,((e,t)=>ct(s,[...n??[],e],1==t))),1},Ut=e=>{const t=is();t!=n&&ct(Ne[e],void 0,t);const s=G(Ge[e]),a=G(Ue[e])&&G(Xe[e])&&G(Be[e])&&G(Ke[e])&&G(We[e])&&G($e[e])&&G(qe[e])&&s&&G(xe[e])&&G(De[e]),l=G(Ye[e])&&G(Qe[e])&&G(He[e])&&G(je[e]);if(!a||!l){const t=e?[oe(z),re(P),oe(k),re(A),ce(M),ce(N)]:[z,P,k,A,M,N];if(!a){Qt(t[0],xe[e],De[e]),Q(t[1],((t,s)=>Qt(t,We[e],$e[e],[s]))),Q(t[2],((t,s)=>{0!=t&&ct(qe[e],[s],ts(s))}));const n=de();Q(t[3],((t,a)=>{Qt(t,Be[e],Ke[e],[a])&&!s&&(ct(Ge[e],[a,null]),ue(n,a))})),s||Q(t[5],((t,s)=>{if(!B(n,s)){const n=de();Q(t,(e=>Q(e,(([t,s],a)=>s!==t?ue(n,a):U(e,a))))),Q(n,(t=>ct(Ge[e],[s,t])))}})),Q(t[4],((t,s)=>Q(t,((t,n)=>Qt(t,Ue[e],Xe[e],[s,n])))))}if(!l){let s;Q(t[5],((t,n)=>{let a;Q(t,((t,l)=>{let o;Q(t,(([t,r],c)=>{r!==t&&(ct(Ye[e],[n,l,c],r,t,qt),s=a=o=1)})),o&&ct(Qe[e],[n,l],qt)})),a&&ct(He[e],[n],qt)})),s&&ct(je[e],void 0,qt)}}},Xt=e=>{const t=gs();t!=l&&ct(et[e],void 0,t);const s=G(st[e])&&G(nt[e]),n=G(at[e])&&G(tt[e]);if(!s||!n){const t=e?[oe(he),oe(Le)]:[he,Le];if(s||Qt(t[0],st[e],nt[e]),!n){let s;Q(t[1],(([t,n],a)=>{n!==t&&(ct(at[e],[a],n,t,Bt),s=1)})),s&&ct(tt[e],void 0,Bt)}}},Yt=(e,...t)=>(Is((()=>e(...F(t,w)))),Fs),Zt=()=>le(Ae),_t=()=>Y(Ae),es=e=>Y(Z(ke,w(e))),ts=e=>q(Z(Ae,w(e))),ss=e=>Y(Z(Ae,w(e))),ns=(e,t,s,n=0,a)=>{return F(I((o=Z(Ae,w(e)),r=(e,s)=>[m(t)?s:Z(e,w(t)),s],l=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),F([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(l)),n,m(a)?a:n+a),(([,e])=>e));var l,o,r},as=(e,t)=>Y(Z(Z(Ae,w(e)),w(t))),ls=(e,t,s)=>Z(Z(Z(Ae,w(e)),w(t)),w(s)),os=()=>ne(Me),rs=()=>Y(Me),cs=e=>Z(Me,w(e)),is=()=>!G(Ae),ds=e=>B(Ae,w(e)),us=(e,t)=>B(Z(ke,w(e)),w(t)),hs=(e,t)=>B(Z(Ae,w(e)),w(t)),fs=(e,t,s)=>B(Z(Z(Ae,w(e)),w(t)),w(s)),gs=()=>!G(Me),Ts=e=>B(Me,w(e)),bs=e=>Yt((()=>(e=>$(e,ht,Wt))(e)?yt(e):0)),Vs=e=>Yt((()=>Tt(e)?Jt(e):0)),Cs=e=>{try{wt(ye(e))}catch{}return Fs},Ss=t=>Yt((()=>{if((e=$(t,(e=>$(e,ut))))&&(St(t),!G(Ae))){const e=Zt();ws(),bs(e)}})),vs=e=>Yt((()=>{if(s=(e=>$(e,ut))(e)){const t=os();Rs(),ps(),s=!0,vt(e),Vs(t)}})),ws=()=>Yt((()=>yt({}))),ys=e=>Yt((e=>B(Ae,e)?zt(e):0),e),ms=(e,t)=>Yt(((e,t)=>p(Z(Ae,e),(s=>B(s,t)?Pt(e,s,t):0))),e,t),ps=()=>Yt((()=>Jt({}))),Ls=()=>Yt((()=>{St({}),e=!1})),Rs=()=>Yt((()=>{vt({}),s=!1})),Is=(e,t)=>{if(-1!=i){Js();const s=e();return Es(t),s}},Js=()=>(-1!=i&&i++,1==i&&ct(lt,void 0),Fs),Es=e=>(i>0&&(i--,0==i&&(i=1,Gt(1),G(N)||Ut(1),Kt(1),G(Le)||Xt(1),e?.(Fs)&&(Q(N,((e,t)=>Q(e,((e,s)=>Q(e,(([e],n)=>Se(Fs,t,s,n,e))))))),K(N),Q(Le,(([e],t)=>ve(Fs,t,e))),K(Le)),ct(ot[0],void 0),i=-1,Gt(0),G(N)||Ut(0),Kt(0),G(Le)||Xt(0),y[0]?.(Fs),ct(ot[1],void 0),y[1]?.(Fs),i=0,n=is(),l=gs(),E([z,P,k,A,M,N,Re,he,Le,Ie],K))),Fs),Fs={getContent:()=>[Zt(),os()],getTables:Zt,getTableIds:_t,getTable:e=>ae(Z(Ae,w(e))),getTableCellIds:es,getRowCount:ts,getRowIds:ss,getSortedRowIds:ns,getRow:(e,t)=>ne(Z(Z(Ae,w(e)),w(t))),getCellIds:as,getCell:ls,getValues:os,getValueIds:rs,getValue:cs,hasTables:is,hasTable:ds,hasTableCell:us,hasRow:hs,hasCell:fs,hasValues:gs,hasValue:Ts,getTablesJson:()=>we(Ae),getValuesJson:()=>we(Me),getJson:()=>we([Ae,Me]),getTablesSchemaJson:()=>we(Je),getValuesSchemaJson:()=>we(Fe),getSchemaJson:()=>we([Je,Fe]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:([e,t])=>Yt((()=>{(W(e)?ws:bs)(e),(W(t)?ps:Vs)(t)})),setTables:bs,setTable:(e,t)=>Yt((e=>ht(t,e)?mt(e,t):0),e),setRow:(e,t,s)=>Yt(((e,t)=>ft(e,t,s)?pt(e,Ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Is((()=>{let n;return ft(e,n,t)&&(e=w(e),pt(e,Ot(e),n=Ft(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Yt(((e,t)=>{if(ft(e,t,s,1)){const n=Ot(e);H(s,((s,a)=>Rt(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>Yt(((e,t,s)=>p(gt(e,t,s,R(n)?n(ls(e,t,s)):n),(n=>Rt(e,Ot(e),t,s,n)))),e,t,s),setValues:Vs,setPartialValues:e=>Yt((()=>Tt(e,1)?H(e,((e,t)=>Et(t,e))):0)),setValue:(e,t)=>Yt((e=>p(bt(e,R(t)?t(cs(e)):t),(t=>Et(e,t)))),e),applyChanges:e=>Yt((()=>{H(e[0],((e,t)=>m(e)?ys(t):H(e,((e,s)=>m(e)?ms(t,s):H(e,((e,n)=>Se(Fs,t,s,n,e))))))),H(e[1],((e,t)=>ve(Fs,t,e)))})),setTablesJson:Cs,setValuesJson:e=>{try{It(ye(e))}catch{}return Fs},setJson:e=>Yt((()=>{try{const[t,s]=ye(e);wt(t),It(s)}catch{Cs(e)}})),setTablesSchema:Ss,setValuesSchema:vs,setSchema:(e,t)=>Yt((()=>{Ss(e),vs(t)})),delTables:ws,delTable:ys,delRow:ms,delCell:(e,t,s,n)=>Yt(((e,t,s)=>p(Z(Ae,e),(a=>p(Z(a,t),(l=>B(l,s)?kt(e,a,t,l,s,n):0))))),e,t,s),delValues:ps,delValue:e=>Yt((e=>B(Me,e)?At(e):0),e),delTablesSchema:Ls,delValuesSchema:Rs,delSchema:()=>Yt((()=>{Ls(),Rs()})),transaction:Is,startTransaction:Js,getTransactionChanges:()=>[ne(N,((e,t)=>-1===Z(z,t)?void 0:ne(e,((e,s)=>-1===Z(Z(A,t),s)?void 0:ne(e,(([,e])=>e),(e=>Ve(e)))),G,W)),G,W),ne(Le,(([,e])=>e),(e=>Ve(e))),1],getTransactionLog:()=>[!G(N),!G(Le),le(N,be,Ve),le(Re),ne(Le,be,Ve),ne(Ie),ne(z),ae(A),le(M),ne(he)],finishTransaction:Es,forEachTable:e=>Q(Ae,((t,s)=>e(s,(e=>Q(t,((t,s)=>e(s,(e=>_(t,e))))))))),forEachTableCell:(e,t)=>_(Z(ke,w(e)),t),forEachRow:(e,t)=>Q(Z(Ae,w(e)),((e,s)=>t(s,(t=>_(e,t))))),forEachCell:(e,t,s)=>_(Z(Z(Ae,w(e)),w(t)),s),forEachValue:e=>_(Me,e),addSortedRowIdsListener:(e,t,s,n,a,l,o)=>{let r=ns(e,t,s,n,a);return rt((()=>{const o=ns(e,t,s,n,a);var c,i,d;i=r,J(c=o)===J(i)&&(d=(e,t)=>i[t]===e,c.every(d))||(r=o,l(Fs,e,t,s,n,a,r))}),Ge[o?1:0],[e,t],[_t])},addStartTransactionListener:e=>rt(e,lt),addWillFinishTransactionListener:e=>rt(e,ot[0]),addDidFinishTransactionListener:e=>rt(e,ot[1]),callListener:e=>(dt(e),Fs),delListener:e=>(it(e),Fs),getListenerStats:()=>({}),createStore:pe,addListener:rt,callListeners:ct,setInternalListeners:(e,t)=>y=[e,t]};return H({[c+u]:[0,Ne,[],()=>[is()]],[u]:[0,je],[h]:[0,xe],[c+d]:[1,De,[_t],e=>[ds(...e)]],[d]:[1,He,[_t]],[d+V]:[1,We,[_t]],[c+d+b]:[2,$e,[_t,es],e=>[us(...e)]],[g]:[1,qe,[_t]],[T]:[1,Be,[_t]],[c+f]:[2,Ke,[_t,ss],e=>[hs(...e)]],[f]:[2,Qe,[_t,ss]],[V]:[2,Ue,[_t,ss]],[c+b]:[3,Xe,[_t,ss,as],e=>[fs(...e)]],[b]:[3,Ye,[_t,ss,as],e=>ge(ls(...e))],InvalidCell:[3,Ze],[c+S]:[0,et,[],()=>[gs()]],[S]:[0,tt],[v]:[0,st],[c+C]:[1,nt,[rs],e=>[Ts(...e)]],[C]:[1,at,[rs],e=>ge(cs(e[0]))],InvalidValue:[1,_e]},(([e,t,s,n],a)=>{Fs["add"+a+"Listener"]=(...a)=>rt(a[e],t[a[e+1]?1:0],e>0?I(a,0,e):void 0,s,n)})),j(Fs)};export{pe as createStore};
|
package/lib/store.js.gz
CHANGED
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=e=>typeof e,t=e(""),a=Promise,s=Math.max,n=e=>null==e,o=(e,t,a)=>n(e)?a?.():t(e),r=Object,c=e=>r.getPrototypeOf(e),i=r.keys,g=r.freeze,l=e=>(e=>!n(e)&&o(c(e),(e=>e==r.prototype||n(c(e))),(()=>!0)))(e)&&0==(e=>i(e).length)(e),u=(e,t)=>e?.delete(t),d=e=>new Map(e),h=(e,t)=>e?.get(t),y=(e,t,a)=>n(a)?(u(e,t),e):e?.set(t,a),w=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(h(e,t)):y(e,t,a()),h(e,t)},v=d(),p=d(),b=new globalThis.TextEncoder,C=2**36,M=2**30,A=2**24,S=2**18,f=4096,L=64,T=e=>String.fromCharCode(48+(63&e)),m=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,H=d(),D=(r,c)=>{const i=""+Math.random();return((r,c,i,H,D=1,x)=>{let E;const[I]=(e=>{let t=0,a=-1;const o=(e=>{let t=2166136261;var a;return a=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},b.encode(e).forEach(a),t>>>0})(e),r=e=>{const o=t,[r,c]=n(e)||""==e?[0,0]:[m(i=e,0)*C+m(i,1)*M+m(i,2)*A+m(i,3)*S+m(i,4)*f+m(i,5)*L+m(i,6),m(i,7)*S+m(i,8)*f+m(i,9)*L+m(i,10),m(i,11)*A+m(i,12)*S+m(i,13)*f+m(i,14)*L+m(i,15)];var i;t=s(o,r,Date.now()),a=t==o?t==r?s(a,c):a:t==r?c:-1};return[()=>{return r(),s=++a,n=o,T((e=t)/C)+T(e/M)+T(e/A)+T(e/S)+T(e/f)+T(e/L)+T(e)+T(s/S)+T(s/f)+T(s/L)+T(s)+T(n/A)+T(n/S)+T(n/f)+T(n/L)+T(n);var e,s,n},r]})(r.getId()),z=d();i(((e,t,a,s)=>{0==a?o(h(z,t),(([t,a])=>n(t)||t==e?a(s,e):0)):1==a&&R.isAutoLoading()?P(e,s).then((e=>E?.(void 0,(()=>e)))):o(2==a&&R.isAutoSaving()?r.getMergeableContentHashes():3==a?r.getMergeableTableIdsDiff(s):4==a?r.getMergeableRowIdsDiff(s):5==a?r.getMergeableTablesChanges(s):6==a?r.getMergeableValuesChanges(s):void 0,(a=>{c(e,t,0,a)}))}));const O=async(e,t,s="")=>new a(((a,n)=>{const o=I(),r=setTimeout((()=>{u(z,o),n(`No response from ${e??"anyone"} to '${t}'`)}),1e3*D);y(z,o,[e,(e,t)=>{clearTimeout(r),u(z,o),a([e,t])}]),c(e,o,t,s)})),P=async(e=null,t)=>{n(t)&&([t,e]=await O(e,2));const[a,[s,o]]=t,[,[c,i]]=r.getMergeableContentHashes(),g=["",[["",{}],["",{}],1]];return c!=s&&(g[0]=a,g[1][0]=(await O(e,5,r.getMergeableCellHashes((await O(e,4,r.getMergeableRowHashes((await O(e,3,r.getMergeableTableHashes()))[0])))[0])))[0]),i!=o&&(g[0]=a,g[1][1]=(await O(e,6,r.getMergeableValuesHashes()))[0]),g},R=((a,s,r,c,i,u,d,b={},C=[])=>{let M,A,S,f=0;w(v,C,(()=>0)),w(p,C,(()=>[]));const[L,T,m,H]=((e,t)=>!e||n(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!l(e)||!l(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!l(e)||!l(t)])(d,a),D=async e=>(2!=f&&(f=1,await E.schedule((async()=>{await e(),f=0}))),E),x=s=>{var n;(L&&(n=s?.[0],e(n)==t)?1===s?.[1][2]?a.applyMergeableChanges:a.setMergeableContent:1===s?.[2]?a.applyChanges:a.setContent)(s)},E={load:async(e,t)=>await D((async()=>{try{x(await s())}catch(s){u?.(s),a.setContent([e,t])}})),startAutoLoad:async(e={},t={})=>(await E.stopAutoLoad().load(e,t),A=c((async(e,t)=>{const a=t?.();await D((async()=>{try{x(a??e?.()??await s())}catch(e){u?.(e)}}))})),E),stopAutoLoad:()=>(A&&(i(A),A=void 0),E),isAutoLoading:()=>!n(A),save:async e=>(1!=f&&(f=2,await E.schedule((async()=>{try{await r(T,e)}catch(e){u?.(e)}f=0}))),E),startAutoSave:async()=>(await E.stopAutoSave().save(),S=a.addDidFinishTransactionListener((()=>{const e=m();H(e)&&E.save((()=>e))})),E),stopAutoSave:()=>(o(S,a.delListener),S=void 0,E),isAutoSaving:()=>!n(S),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(h(p,C),...e),await(async()=>{if(!h(v,C)){for(y(v,C,1);!n((e=h(p,C),M=e.shift()));)try{await M()}catch(e){u?.(e)}y(v,C,0)}var e})(),E),getStore:()=>a,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...b};return g(E)})(r,(async()=>{const e=await P();return""!=e[0]?e:void 0}),(async()=>{c(null,null,1,r.getMergeableContentHashes())}),(e=>E=e),(()=>E=void 0),x,!0,{startSync:async()=>await(await R.startAutoLoad()).startAutoSave(),stopSync:()=>R.stopAutoLoad().stopAutoSave(),destroy:()=>(H(),R.stopSync()),getSynchronizerStats:()=>({})});return R})(r,((e,t,a,s)=>{var o;n(e)?(o=(e,n)=>e!=i?n(i,t,a,s):0,((e,t)=>{e?.forEach(t)})(H,((e,t)=>o(t,e)))):h(H,e)?.(i,t,a,s)}),(e=>{y(H,i,e)}),(()=>{u(H,i)}),.001,c)};export{D as createLocalSynchronizer};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=e=>typeof e,t="",a=e(t),s=Promise,n=Math.max,o=e=>null==e,r=(e,t,a)=>o(e)?a?.():t(e),i=(e,t,a)=>e.slice(t,a),c=e=>new s(e),g=Object,l=e=>g.getPrototypeOf(e),u=g.keys,y=g.freeze,d=e=>(e=>!o(e)&&r(l(e),(e=>e==g.prototype||o(l(e))),(()=>!0)))(e)&&0==(e=>u(e).length)(e),h=JSON.parse,w=(e,t)=>e?.delete(t),p=e=>new Map(e),v=(e,t)=>e?.get(t),b=(e,t,a)=>o(a)?(w(e,t),e):e?.set(t,a),S=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(v(e,t)):b(e,t,a()),v(e,t)},f=p(),C=p(),M=new globalThis.TextEncoder,A=2**36,L=2**30,T=2**24,m=2**18,H=4096,O=64,x=e=>String.fromCharCode(48+(63&e)),D=(e,t)=>((e,t)=>e.charCodeAt(t))(e,t)-48,E=async(s,l,u,E)=>{let N;l.on("message",(e=>{if(!o(N)){const t=e.toString("utf8"),a=t.indexOf("\n");-1!==a&&N(i(t,0,a),...h(i(t,a+1)))}}));const I=((s,i,g,l,u=1,h)=>{let E;const[N]=(e=>{let t=0,a=-1;const s=(e=>{let t=2166136261;var a;return a=e=>{t^=e,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)},M.encode(e).forEach(a),t>>>0})(e),r=e=>{const s=t,[r,i]=o(e)||""==e?[0,0]:[D(c=e,0)*A+D(c,1)*L+D(c,2)*T+D(c,3)*m+D(c,4)*H+D(c,5)*O+D(c,6),D(c,7)*m+D(c,8)*H+D(c,9)*O+D(c,10),D(c,11)*T+D(c,12)*m+D(c,13)*H+D(c,14)*O+D(c,15)];var c;t=n(s,r,Date.now()),a=t==s?t==r?n(a,i):a:t==r?i:-1};return[()=>{return r(),n=++a,o=s,x((e=t)/A)+x(e/L)+x(e/T)+x(e/m)+x(e/H)+x(e/O)+x(e)+x(n/m)+x(n/H)+x(n/O)+x(n)+x(o/T)+x(o/m)+x(o/H)+x(o/O)+x(o);var e,n,o},r]})(s.getId()),I=p();g(((e,t,a,n)=>{0==a?r(v(I,t),(([t,a])=>o(t)||t==e?a(n,e):0)):1==a&&J.isAutoLoading()?z(e,n).then((e=>E?.(void 0,(()=>e)))):r(2==a&&J.isAutoSaving()?s.getMergeableContentHashes():3==a?s.getMergeableTableIdsDiff(n):4==a?s.getMergeableRowIdsDiff(n):5==a?s.getMergeableTablesChanges(n):6==a?s.getMergeableValuesChanges(n):void 0,(a=>{i(e,t,0,a)}))}));const P=async(e,t,a="")=>c(((s,n)=>{const o=N(),r=setTimeout((()=>{w(I,o),n(`No response from ${e??"anyone"} to '${t}'`)}),1e3*u);b(I,o,[e,(e,t)=>{clearTimeout(r),w(I,o),s([e,t])}]),i(e,o,t,a)})),z=async(e=null,a)=>{o(a)&&([a,e]=await P(e,2));const[n,[r,i]]=a,[,[c,g]]=s.getMergeableContentHashes(),l=[t,[[t,{}],[t,{}],1]];return c!=r&&(l[0]=n,l[1][0]=(await P(e,5,s.getMergeableCellHashes((await P(e,4,s.getMergeableRowHashes((await P(e,3,s.getMergeableTableHashes()))[0])))[0])))[0]),g!=i&&(l[0]=n,l[1][1]=(await P(e,6,s.getMergeableValuesHashes()))[0]),l},J=((t,s,n,i,c,g,l,u={},h=[])=>{let w,p,M,A=0;S(f,h,(()=>0)),S(C,h,(()=>[]));const[L,T,m,H]=((e,t)=>!e||o(t.getMergeableContent)?[0,t.getContent,t.getTransactionChanges,([e,t])=>!d(e)||!d(t)]:[1,t.getMergeableContent,t.getTransactionMergeableChanges,([,[[,e],[,t]]])=>!d(e)||!d(t)])(l,t),O=async e=>(2!=A&&(A=1,await D.schedule((async()=>{await e(),A=0}))),D),x=s=>{var n;(L&&(n=s?.[0],e(n)==a)?1===s?.[1][2]?t.applyMergeableChanges:t.setMergeableContent:1===s?.[2]?t.applyChanges:t.setContent)(s)},D={load:async(e,a)=>await O((async()=>{try{x(await s())}catch(s){g?.(s),t.setContent([e,a])}})),startAutoLoad:async(e={},t={})=>(await D.stopAutoLoad().load(e,t),p=i((async(e,t)=>{const a=t?.();await O((async()=>{try{x(a??e?.()??await s())}catch(e){g?.(e)}}))})),D),stopAutoLoad:()=>(p&&(c(p),p=void 0),D),isAutoLoading:()=>!o(p),save:async e=>(1!=A&&(A=2,await D.schedule((async()=>{try{await n(T,e)}catch(e){g?.(e)}A=0}))),D),startAutoSave:async()=>(await D.stopAutoSave().save(),M=t.addDidFinishTransactionListener((()=>{const e=m();H(e)&&D.save((()=>e))})),D),stopAutoSave:()=>(r(M,t.delListener),M=void 0,D),isAutoSaving:()=>!o(M),schedule:async(...e)=>(((e,...t)=>{e.push(...t)})(v(C,h),...e),await(async()=>{if(!v(f,h)){for(b(f,h,1);!o((e=v(C,h),w=e.shift()));)try{await w()}catch(e){g?.(e)}b(f,h,0)}var e})(),D),getStore:()=>t,destroy:()=>D.stopAutoLoad().stopAutoSave(),getStats:()=>({}),...u};return y(D)})(s,(async()=>{const e=await z();return e[0]!=t?e:void 0}),(async()=>{i(null,null,1,s.getMergeableContentHashes())}),(e=>E=e),(()=>E=void 0),h,!0,{startSync:async()=>await(await J.startAutoLoad()).startAutoSave(),stopSync:()=>J.stopAutoLoad().stopAutoSave(),destroy:()=>(l(),J.stopSync()),getSynchronizerStats:()=>({})});return J})(s,((e,...a)=>{l.send((e??t)+"\n"+JSON.stringify(a,((e,t)=>t instanceof Map?g.fromEntries([...t]):t)))}),(e=>{N=e}),(()=>{l.close()}),u,E);return c(((e,t)=>{l.readyState!=l.OPEN?(l.on("error",t),l.on("open",(()=>e(I)))):e(I)}))};export{E as createWsSynchronizer};
|
|
Binary file
|