tinybase 7.0.0-beta.0 → 7.0.0-beta.2
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/@types/mergeable-store/index.d.ts +1 -0
- package/@types/mergeable-store/with-schemas/index.d.ts +4 -2
- package/@types/omni/index.d.ts +3 -0
- package/@types/omni/with-schemas/index.d.ts +3 -0
- package/@types/persisters/index.d.ts +8 -2
- package/@types/persisters/persister-automerge/index.d.ts +4 -6
- package/@types/persisters/persister-automerge/with-schemas/index.d.ts +7 -8
- package/@types/persisters/persister-browser/index.d.ts +97 -6
- package/@types/persisters/persister-browser/with-schemas/index.d.ts +113 -6
- package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-durable-object-sql-storage/index.d.ts +348 -0
- package/@types/persisters/persister-durable-object-sql-storage/with-schemas/index.d.ts +382 -0
- package/@types/persisters/persister-durable-object-storage/index.d.ts +1 -2
- package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-expo-sqlite/index.d.ts +1 -2
- package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-file/index.d.ts +1 -2
- package/@types/persisters/persister-file/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-libsql/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-pglite/index.d.ts +2 -2
- package/@types/persisters/persister-pglite/with-schemas/index.d.ts +4 -2
- package/@types/persisters/persister-postgres/index.d.ts +1 -2
- package/@types/persisters/persister-postgres/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-powersync/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-react-native-mmkv/index.d.ts +117 -0
- package/@types/persisters/persister-react-native-mmkv/with-schemas/index.d.ts +133 -0
- package/@types/persisters/persister-react-native-sqlite/index.d.ts +180 -0
- package/@types/persisters/persister-react-native-sqlite/with-schemas/index.d.ts +203 -0
- package/@types/persisters/persister-remote/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-sqlite-bun/index.d.ts +1 -2
- package/@types/persisters/persister-sqlite-bun/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-sqlite-wasm/index.d.ts +2 -2
- package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +4 -2
- package/@types/persisters/persister-sqlite3/index.d.ts +1 -2
- package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +3 -2
- package/@types/persisters/persister-yjs/with-schemas/index.d.ts +3 -2
- package/@types/persisters/with-schemas/index.d.ts +8 -2
- package/@types/queries/index.d.ts +1 -1
- package/@types/queries/with-schemas/index.d.ts +5 -9
- package/@types/store/index.d.ts +13 -0
- package/@types/store/with-schemas/index.d.ts +13 -0
- package/@types/synchronizers/index.d.ts +1 -0
- package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.ts +3 -2
- package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +3 -2
- package/@types/synchronizers/synchronizer-ws-client/index.d.ts +4 -2
- package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +1 -0
- package/@types/synchronizers/synchronizer-ws-server/index.d.ts +7 -7
- package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +7 -7
- package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +1 -0
- package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +1 -0
- package/@types/synchronizers/synchronizer-ws-server-simple/index.d.ts +1 -1
- package/@types/synchronizers/synchronizer-ws-server-simple/with-schemas/index.d.ts +1 -1
- package/@types/synchronizers/with-schemas/index.d.ts +4 -2
- package/@types/ui-react/index.d.ts +6 -1
- package/@types/ui-react/with-schemas/index.d.ts +6 -1
- package/@types/ui-react-dom/index.d.ts +153 -20
- package/@types/ui-react-dom/with-schemas/index.d.ts +72 -20
- package/@types/ui-react-inspector/index.d.ts +8 -0
- package/@types/ui-react-inspector/with-schemas/index.d.ts +27 -1925
- package/LICENSE +1 -1
- package/agents.md +281 -0
- package/common/index.js +1 -1
- package/common/with-schemas/index.js +1 -1
- package/index.js +1 -1
- package/mergeable-store/index.js +1 -1
- package/mergeable-store/with-schemas/index.js +1 -1
- package/min/checkpoints/index.js +1 -1
- package/min/checkpoints/index.js.gz +0 -0
- package/min/checkpoints/with-schemas/index.js +1 -1
- package/min/checkpoints/with-schemas/index.js.gz +0 -0
- package/min/common/index.js +1 -1
- package/min/common/index.js.gz +0 -0
- package/min/common/with-schemas/index.js +1 -1
- package/min/common/with-schemas/index.js.gz +0 -0
- package/min/index.js +1 -1
- package/min/index.js.gz +0 -0
- package/min/indexes/index.js +1 -1
- package/min/indexes/index.js.gz +0 -0
- package/min/indexes/with-schemas/index.js +1 -1
- package/min/indexes/with-schemas/index.js.gz +0 -0
- package/min/mergeable-store/index.js +1 -1
- package/min/mergeable-store/index.js.gz +0 -0
- package/min/mergeable-store/with-schemas/index.js +1 -1
- package/min/mergeable-store/with-schemas/index.js.gz +0 -0
- package/min/metrics/index.js +1 -1
- package/min/metrics/index.js.gz +0 -0
- package/min/metrics/with-schemas/index.js +1 -1
- package/min/metrics/with-schemas/index.js.gz +0 -0
- package/min/omni/index.js +1 -1
- package/min/omni/index.js.gz +0 -0
- package/min/omni/with-schemas/index.js +1 -1
- package/min/omni/with-schemas/index.js.gz +0 -0
- package/min/persisters/index.js +1 -1
- package/min/persisters/index.js.gz +0 -0
- package/min/persisters/persister-automerge/index.js +1 -1
- package/min/persisters/persister-automerge/index.js.gz +0 -0
- package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-browser/index.js +1 -1
- package/min/persisters/persister-browser/index.js.gz +0 -0
- package/min/persisters/persister-browser/with-schemas/index.js +1 -1
- package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/index.js +1 -0
- package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -0
- package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
- package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/index.js +1 -1
- package/min/persisters/persister-electric-sql/index.js.gz +0 -0
- package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
- package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
- package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-file/index.js +1 -1
- package/min/persisters/persister-file/index.js.gz +0 -0
- package/min/persisters/persister-file/with-schemas/index.js +1 -1
- package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/index.js +1 -1
- package/min/persisters/persister-indexed-db/index.js.gz +0 -0
- package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
- package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-libsql/index.js +1 -1
- package/min/persisters/persister-libsql/index.js.gz +0 -0
- package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
- package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/index.js +1 -1
- package/min/persisters/persister-partykit-client/index.js.gz +0 -0
- package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/index.js +1 -1
- package/min/persisters/persister-partykit-server/index.js.gz +0 -0
- package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
- package/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-pglite/index.js +1 -1
- package/min/persisters/persister-pglite/index.js.gz +0 -0
- package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
- package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-postgres/index.js +1 -1
- package/min/persisters/persister-postgres/index.js.gz +0 -0
- package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
- package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-powersync/index.js +1 -1
- package/min/persisters/persister-powersync/index.js.gz +0 -0
- package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
- package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-react-native-mmkv/index.js +1 -0
- package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
- package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -0
- package/min/persisters/persister-react-native-mmkv/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/index.js +1 -0
- package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -0
- package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-remote/index.js +1 -1
- package/min/persisters/persister-remote/index.js.gz +0 -0
- package/min/persisters/persister-remote/with-schemas/index.js +1 -1
- package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/index.js +1 -1
- package/min/persisters/persister-sqlite3/index.js.gz +0 -0
- package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
- package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
- package/min/persisters/persister-yjs/index.js +1 -1
- package/min/persisters/persister-yjs/index.js.gz +0 -0
- package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
- package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
- package/min/persisters/with-schemas/index.js +1 -1
- package/min/persisters/with-schemas/index.js.gz +0 -0
- package/min/queries/index.js +1 -1
- package/min/queries/index.js.gz +0 -0
- package/min/queries/with-schemas/index.js +1 -1
- package/min/queries/with-schemas/index.js.gz +0 -0
- package/min/relationships/index.js +1 -1
- package/min/relationships/index.js.gz +0 -0
- package/min/relationships/with-schemas/index.js +1 -1
- package/min/relationships/with-schemas/index.js.gz +0 -0
- package/min/store/index.js +1 -1
- package/min/store/index.js.gz +0 -0
- package/min/store/with-schemas/index.js +1 -1
- package/min/store/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/index.js +1 -1
- package/min/synchronizers/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/index.js +1 -1
- package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
- package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
- package/min/synchronizers/with-schemas/index.js +1 -1
- package/min/synchronizers/with-schemas/index.js.gz +0 -0
- package/min/ui-react/index.js +1 -1
- package/min/ui-react/index.js.gz +0 -0
- package/min/ui-react/with-schemas/index.js +1 -1
- package/min/ui-react/with-schemas/index.js.gz +0 -0
- package/min/ui-react-dom/index.js +1 -1
- package/min/ui-react-dom/index.js.gz +0 -0
- package/min/ui-react-dom/with-schemas/index.js +1 -1
- package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
- package/min/ui-react-inspector/index.js +1 -1
- package/min/ui-react-inspector/index.js.gz +0 -0
- package/min/ui-react-inspector/with-schemas/index.js +1 -1
- package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
- package/min/with-schemas/index.js +1 -1
- package/min/with-schemas/index.js.gz +0 -0
- package/omni/index.js +2107 -1163
- package/omni/with-schemas/index.js +2107 -1163
- package/package.json +127 -11
- package/persisters/persister-automerge/index.js +1 -1
- package/persisters/persister-automerge/with-schemas/index.js +1 -1
- package/persisters/persister-browser/index.js +31 -2
- package/persisters/persister-browser/with-schemas/index.js +31 -2
- package/persisters/persister-durable-object-sql-storage/index.js +1391 -0
- package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1391 -0
- package/persisters/persister-react-native-mmkv/index.js +459 -0
- package/persisters/persister-react-native-mmkv/with-schemas/index.js +459 -0
- package/persisters/persister-react-native-sqlite/index.js +1189 -0
- package/persisters/persister-react-native-sqlite/with-schemas/index.js +1189 -0
- package/readme.md +13 -13
- package/releases.md +110 -35
- package/synchronizers/index.js +1 -1
- package/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
- package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
- package/synchronizers/synchronizer-local/index.js +1 -1
- package/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
- package/synchronizers/synchronizer-ws-client/index.js +1 -1
- package/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
- package/synchronizers/synchronizer-ws-server/index.js +1 -1
- package/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
- package/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
- package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
- package/synchronizers/with-schemas/index.js +1 -1
- package/ui-react/index.js +397 -368
- package/ui-react/with-schemas/index.js +397 -368
- package/ui-react-dom/index.js +873 -436
- package/ui-react-dom/with-schemas/index.js +873 -436
- package/ui-react-inspector/index.js +1721 -545
- package/ui-react-inspector/with-schemas/index.js +1721 -545
- package/with-schemas/index.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Map as t}from"yjs";const e="t",a="v",n=t=>null==t,s=(t,e,a)=>n(t)?a?.():e(t),o=t=>Array.isArray(t),r=t=>t.length,i=t=>{throw Error(t)},c=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},l=(t,e)=>t.forEach(e),g=(t,...e)=>t.push(...e),u=t=>t.shift(),d=t=>n(t)||0==(t=>t?.size??0)(t),y=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),w=Object,v=t=>w.getPrototypeOf(t),h=w.entries,f=w.keys,S=w.freeze,C=(t=[])=>w.fromEntries(t),b=(t,e)=>e in t,A=(t,e)=>C(((t,e)=>((t,e)=>t.map(e))(h(t),(
|
|
1
|
+
import{Map as t}from"yjs";const e="t",a="v",n=t=>null==t,s=(t,e,a)=>n(t)?a?.():e(t),o=t=>Array.isArray(t),r=t=>t.length,i=t=>{throw Error(t)},c=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},l=(t,e)=>t.forEach(e),g=(t,...e)=>t.push(...e),u=t=>t.shift(),d=t=>n(t)||0==(t=>t?.size??0)(t),y=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),w=Object,v=t=>w.getPrototypeOf(t),h=w.entries,f=w.keys,S=w.freeze,C=(t=[])=>w.fromEntries(t),b=(t,e)=>e in t,A=(t,e)=>C(((t,e)=>((t,e)=>t.map(e))(h(t),([t,a])=>e(a,t)))(t,(t,a)=>[a,e(t,a)])),M=t=>(t=>!n(t)&&s(v(t),t=>t==w.prototype||n(v(t)),()=>!0))(t)&&0==(t=>r(f(t)))(t),O=(t,e,a)=>(b(t,e)||(t[e]=a()),t[e]),L=t=>new Map(t),J=(t,e)=>t?.get(e),N=(t,e)=>y(t,(t,a)=>e(a,t)),z=(t,e,a)=>n(a)?(p(t,e),t):t?.set(e,a),D=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(J(t,e)):z(t,e,a()),J(t,e)},E=(t,e,a,n,o=0)=>s((a?D:J)(t,e[o],o>r(e)-2?a:L),s=>{if(o>r(e)-2)return n?.(s)&&z(t,e[o]),s;const i=E(s,e,a,n,o+1);return d(s)&&z(t,e[o]),i}),m=/^\d+$/,P=t=>new Set(o(t)||n(t)?t:[t]),T=L(),j=L(),k=(t,e,a,w,v,h,f,C={},b=0,A=[])=>{let O,N,k,x=0,F=0,Y=0;D(T,A,()=>0),D(j,A,()=>[]);const $=L(),[q,B,G,H,I]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!M(t)||!M(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!M(t)||!M(e),e.setContent]:i("Store type not supported by this Persister"))(f,t,b),[K,Q,R]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?u(t):null)??""+e++,e=>{m.test(e)&&r(t)<1e3&&g(t,e)}]})(),o=L();return[(a,n,s,r=[],i=()=>[])=>{t??=st;const c=e(1);var l,g;return z(o,c,[a,n,s,r,i]),l=E(n,s??[""],P),g=c,l?.add(g),c},(e,a,...n)=>l(((t,e=[""])=>{const a=[],n=(t,s)=>s==r(e)?g(a,t):null===e[s]?y(t,t=>n(t,s+1)):l([e[s],null],e=>n(J(t,e),s+1));return n(t,0),a})(e,a),e=>y(e,e=>J(o,e)[0](t,...a??[],...n))),t=>s(J(o,t),([,e,n])=>(E(e,n??[""],void 0,e=>(p(e,t),d(e)?1:0)),z(o,t),a(t),n)),e=>s(J(o,e),([e,,a=[],s,o])=>{const i=(...c)=>{const g=r(c);g==r(a)?e(t,...c,...o(c)):n(a[g])?l(s[g]?.(...c)??[],t=>i(...c,t)):i(...c,a[g])};i()})]})(),U=t=>{t!=x&&(x=t,Q($,void 0,x))},V=e=>{(q&&o(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},W=async t=>(2!=x&&(U(1),F++,await nt(async()=>{await c(async()=>{const a=await e();o(a)?V(a):t?I(t):i("Content is not an array: "+a)},()=>{t&&I(t)}),U(0)})),st),X=async t=>(Z(),await W(t),await c(async()=>N=await w(async(t,e)=>{e||t?2!=x&&(U(1),F++,V(e??t),U(0)):await W()}),h),st),Z=async()=>(N&&(await c(()=>v(N),h),N=void 0),st),_=async t=>(1!=x&&(U(2),Y++,await nt(async()=>{await c(()=>a(B,t),h),U(0)})),st),tt=async()=>(et(),await _(),k=t.addDidFinishTransactionListener(()=>{const t=G();H(t)&&_(t)}),st),et=async()=>(k&&(t.delListener(k),k=void 0),st),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),st},nt=async(...t)=>(g(J(j,A),...t),await(async()=>{if(!J(T,A)){for(z(T,A,1);!n(O=u(J(j,A)));)await c(O,h);z(T,A,0)}})(),st),st={load:W,startAutoLoad:X,stopAutoLoad:Z,isAutoLoading:()=>!n(N),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!n(k),startAutoPersisting:async(t,e=!1)=>{const[a,n]=e?[tt,X]:[X,tt];return await a(t),await n(t),st},stopAutoPersisting:at,getStatus:()=>x,addStatusListener:t=>K(t,$),delListener:e=>(R(e),t),schedule:nt,getStore:()=>t,destroy:()=>(J(j,A).splice(0,void 0),at()),getStats:()=>({loads:F,saves:Y}),...C};return S(st)},x="delete",F=t=>[t.get(e),t.get(a)],Y=(e,a,s,o)=>{const r=n(a)?e:e.get(a)??e.set(a,new t);let i;return A(s,(t,e)=>{o(r,e,t)&&(i=1)}),r.forEach((t,e)=>{b(s,e)||(r.delete(e),i=1)}),n(a)||r.size||e.delete(a),i},$=(o,i,c="tinybase",g)=>{const d=i.getMap(c);return k(o,async()=>d.size?[d.get(e).toJSON(),d.get(a).toJSON()]:void 0,async(o,r)=>i.transact(()=>((o,r,i)=>{o.size||(o.set(e,new t),o.set(a,new t));const[c,l]=F(o),g=()=>{u=1};let u=1;if(s(i,([t,e])=>{u=0,A(t,(t,e)=>u?0:n(t)?c.delete(e):s(c.get(e),e=>A(t,(t,a)=>u?0:n(t)?e.delete(a):s(e.get(a),e=>A(t,(t,a)=>n(t)?e.delete(a):e.set(a,t)),g)),g)),A(e,(t,e)=>u?0:n(t)?l.delete(e):l.set(e,t))}),u){const[t,e]=r();Y(c,void 0,t,(t,e,a)=>Y(c,e,a,(t,e,a)=>Y(t,e,a,(t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1}))),Y(l,void 0,e,(t,e,a)=>{l.get(e)!==a&&l.set(e,a)})}})(d,o,r)),t=>{const n=n=>t(void 0,((t,n)=>{if(1==r(n)&&(o=n[0].path,0==r(o)))return[t.get(e).toJSON(),t.get(a).toJSON(),1];var o;const[i,c]=F(t),g={},d={};return l(n,({path:t,changes:{keys:a}})=>u(t)==e?s(u(t),e=>{const n=O(g,e,C),o=i.get(e);s(u(t),t=>{const e=O(n,t,C),s=o.get(t);N(a,(t,{action:a})=>e[t]=a==x?null:s.get(t))},()=>N(a,(t,{action:e})=>n[t]=e==x?null:o.get(t)?.toJSON()))},()=>N(a,(t,{action:e})=>g[t]=e==x?null:i.get(t)?.toJSON())):N(a,(t,{action:e})=>d[t]=e==x?null:c.get(t))),[g,d,1]})(d,n));return d.observeDeep(n),n},t=>{d.unobserveDeep(t)},g,1,{getYDoc:()=>i})};export{$ as createYjsPersister};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=clearInterval,w=a=>null==a,y=(a,t,e)=>w(a)?e?.():t(a),d=t=>a(t)==s,u=a=>Array.isArray(a),E=(a,t,e)=>a.slice(t,e),N=a=>a.length,g=async a=>o.all(a),$=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},O=(a,t)=>a.forEach(t),m=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),R=a=>0==N(a),p=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),I=a=>a.shift(),S=(a,t)=>a?.has(t)??!1,_=a=>w(a)||0==(a=>a?.size??0)(a),C=a=>[...a?.values()??[]],b=(a,t)=>a?.forEach(t),L=(a,t)=>a?.delete(t),D=Object,f=a=>D.getPrototypeOf(a),h=D.entries,P=D.keys,M=D.freeze,F=(a=[])=>D.fromEntries(a),U=(...a)=>D.assign({},...a),G=(a,t)=>(delete a[t],a),j=(a,t)=>T(h(a),(([a,e])=>t(e,a))),x=(a,t)=>F(j(a,((a,e)=>[e,t(a,e)]))),B=a=>D.values(a),H=a=>N(P(a)),W=a=>(a=>!w(a)&&y(f(a),(a=>a==D.prototype||w(f(a))),(()=>!0)))(a)&&0==H(a),Y=a=>new Map(a),X=(a,t)=>a?.get(t),J=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),k=(a,t,e)=>w(e)?(L(a,t),a):a?.set(t,e),z=(a,t,e,n)=>(S(a,t)?n?.(X(a,t)):k(a,t,e()),X(a,t)),K=(a,t,e,n,s=0)=>y((e?z:X)(a,t[s],s>N(t)-2?e:Y),(i=>{if(s>N(t)-2)return n?.(i)&&k(a,t[s]),i;const r=K(i,t,e,n,s+1);return _(i)&&k(a,t[s]),r})),V=/^\d+$/,q=a=>new Set(u(a)||w(a)?a:[a]),Q=(a,t)=>a?.add(t),Z={Idle:0,Loading:1,Saving:2},aa={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ta=Y(),ea=Y(),na=(a,t,n,s,i,r,o,c={},l=0,d=[])=>{let E,g,m,T=0,R=0,p=0;z(ta,d,(()=>0)),z(ea,d,(()=>[]));const S=Y(),[C,D,f,h,P]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!W(a)||!W(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!W(a)||!W(t),t.setContent]:$("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?I(a):null)??e+t++,t=>{V.test(t)&&N(a)<1e3&&v(a,t)}]})(),s=Y();return[(n,i,r,o=[],c=()=>[])=>{a??=ra;const l=t(1);return k(s,l,[n,i,r,o,c]),Q(K(i,r??[e],q),l),l},(t,n,...i)=>O(((a,t=[e])=>{const n=[],s=(a,e)=>e==N(t)?v(n,a):null===t[e]?b(a,(a=>s(a,e+1))):O([t[e],null],(t=>s(X(a,t),e+1)));return s(a,0),n})(t,n),(t=>b(t,(t=>X(s,t)[0](a,...n??[],...i))))),a=>y(X(s,a),(([,t,i])=>(K(t,i??[e],void 0,(t=>(L(t,a),_(t)?1:0))),k(s,a),n(a),i))),t=>y(X(s,t),(([t,,e=[],n,s])=>{const i=(...r)=>{const o=N(r);o==N(e)?t(a,...r,...s(r)):w(e[o])?O(n[o]?.(...r)??[],(a=>i(...r,a))):i(...r,e[o])};i()}))]})(),j=a=>{a!=T&&(T=a,U(S,void 0,T))},x=t=>{(C&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},B=async a=>(2!=T&&(j(1),R++,await ia((async()=>{await A((async()=>{const e=await t();u(e)?x(e):a?P(a):$("Content is not an array: "+e)}),(()=>{a&&P(a)})),j(0)}))),ra),H=async a=>(J(),await B(a),await A((async()=>g=await s((async(a,t)=>{t||a?2!=T&&(j(1),R++,x(t??a),j(0)):await B()}))),r),ra),J=async()=>(g&&(await A((()=>i(g)),r),g=void 0),ra),Z=async a=>(1!=T&&(j(2),p++,await ia((async()=>{await A((()=>n(D,a)),r),j(0)}))),ra),aa=async()=>(na(),await Z(),m=a.addDidFinishTransactionListener((()=>{const a=f();h(a)&&Z(a)})),ra),na=async()=>(m&&(a.delListener(m),m=void 0),ra),sa=async(a=!1)=>{const[t,e]=a?[na,J]:[J,na];return await t(),await e(),ra},ia=async(...a)=>(v(X(ea,d),...a),await(async()=>{if(!X(ta,d)){for(k(ta,d,1);!w(E=I(X(ea,d)));)await A(E,r);k(ta,d,0)}})(),ra),ra={load:B,startAutoLoad:H,stopAutoLoad:J,isAutoLoading:()=>!w(g),save:Z,startAutoSave:aa,stopAutoSave:na,isAutoSaving:()=>!w(m),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[aa,H]:[H,aa];return await e(a),await n(a),ra},stopAutoPersisting:sa,getStatus:()=>T,addStatusListener:a=>F(a,S),delListener:t=>(G(t),a),schedule:ia,getStore:()=>a,destroy:()=>(X(ea,d).splice(0,void 0),sa()),getStats:()=>({loads:R,saves:p}),...c};return M(ra)},sa=JSON.stringify,ia=JSON.parse,ra=a=>sa(a,((a,t)=>void 0===t?"":t)),oa=new c.TextEncoder,ca="_",la="_id",wa="SELECT",ya="WHERE",da="TABLE",ua="INSERT",Ea="DELETE",Na="UPDATE",ga="ALTER "+da,$a="FROM",Aa=Ea+" "+$a,Oa=wa+"*"+$a,ma="pragma_",Ta="data_version",Ra="schema_version",pa="pragma_table_",va="CREATE ",Ia=va+da,Sa="OR REPLACE ",_a="FUNCTION",Ca="$tableName",ba=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,La=a=>m(T(((a,t="",e)=>a.split(t,e))(a,"."),(a=>`"${r(a,/"/g,'""')}"`)),"."),Da=(...a)=>La(m(a,"_")),fa=(a,t=[1])=>m(T(a,(()=>"$"+t[0]++)),n),ha=(a,t=i)=>ya+`(${r(t,Ca,La(a))})`,Pa="ColumnName",Ma="store",Fa="json",Ua=Ma+"TableName",Ga=Ma+"Id"+Pa,ja=Ma+Pa,xa="autoLoadIntervalSeconds",Ba="rowId"+Pa,Ha="tableId",Wa="tableName",Ya="deleteEmptyColumns",Xa="deleteEmptyTable",Ja="condition",ka={mode:Fa,[xa]:1},za={load:0,save:0,[Wa]:t+"_values"},Ka=(a,t,e,n,s)=>{const i=Y();return x(a,((a,r)=>{const o=E(B(U(t,d(a)?{[e]:a}:a)),0,H(t));w(o[0])||n(r,o[0])||(s(r,o[0]),k(i,r,o))})),i},Va=a=>{const e=(a=>U(ka,d(a)?{[Ua]:a}:a??{}))(a),n=e[xa];if(e.mode==Fa){const a=e[Ua]??t;return[1,n,[a,e[Ga]??la,e[ja]??Ma],q(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=E(B(U(za,o)),0,H(za)),l=c[2],w=q(l),y=q(l),u=Ka(s,{[Ha]:null,[Ba]:la,[Ja]:i},Ha,(a=>S(y,a)),(a=>Q(w,a))),N=Ka(r,{[Wa]:null,[Ba]:la,[Ya]:0,[Xa]:0,[Ja]:null},Wa,((a,t)=>S(y,t)),((a,t)=>Q(w,t)));var g;return g=(a,t)=>t[4]??=X(u,t[0])?.[2]??i,b(N,((a,t)=>g(0,a))),[0,n,[u,N,c],w]},qa=(a,t,e,s,r,o=Qa,c,l)=>{const y=Y();return[async()=>{y.clear(),T(await e(a,t),(({tn:a,cn:t})=>Q(z(y,a,q),t)))},async(t,e,n)=>((a,t)=>S(X(y,a),t))(t,e)?F(p(T(await a(Oa+La(t)+ha(t,n)),(a=>[a[e],l?x(G(a,e),l):G(a,e)])),(([a,t])=>!w(a)&&!W(t)))):{},async(t,e,s,l,d,u=!1,E=i)=>{const N=q();x(s??{},(a=>T(P(a??{}),(a=>Q(N,a)))));const $=C(N);if(!u&&d&&E==i&&R($)&&S(y,t))return await a("DROP "+da+La(t)),void k(y,t);const A=X(y,t),O=q(C(A));if(R($)||(S(y,t)?await g(T([e,...$],(async(n,s)=>{L(O,n)||(await a(ga+La(t)+"ADD"+La(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+La(t)+`(${La(e)})`),Q(A,n))}))):(await a(Ia+La(t)+`(${La(e)}${r} PRIMARY KEY${m(T($,(a=>n+La(a)+r)))});`),k(y,t,q([e,...$])))),await g([...!u&&l?T(C(O),(async n=>{n!=e&&(await a(ga+La(t)+"DROP"+La(n)),L(A,n))})):[]]),u)w(s)?await a(Aa+La(t)+ha(t,E)):await g(j(s,(async(n,s)=>{w(n)?await a(Aa+La(t)+ha(t,E)+`AND(${La(e)}=$1)`,[s]):R($)||await o(a,t,e,P(n),{[s]:c?T(B(n),c):B(n)},A)})));else if(R($))S(y,t)&&await a(Aa+La(t)+ha(t,E));else{const n=p(C(X(y,t)),(a=>a!=e)),i={},r=[];x(s??{},((a,t)=>{i[t]=T(n,(t=>c?c(a?.[t]):a?.[t])),v(r,t)})),await o(a,t,e,n,i),await a(Aa+La(t)+ha(t,E)+`AND${La(e)}NOT IN(${fa(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A((async()=>e=await t()),s),await a("END"),e}]},Qa=async(a,t,e,s,i)=>{const r=[1];await a(ua+" INTO"+La(t)+"("+((...a)=>m(T(a,La),n))(e,...s)+")VALUES"+m(j(i,(a=>"($"+r[0]+++","+fa(a,r)+")")),n)+"ON CONFLICT("+La(e)+`)DO ${Na} SET`+m(T(s,(a=>La(a)+"=excluded."+La(a))),n),j(i,((a,t)=>[t,...T(a,(a=>a??null))])).flat())},Za=(a,t,e,n,s,i,r,[o,c,l],w,y,d,u,E,N)=>{const[g,$,A,O]=qa(t,w,y,s,E,N),m=na(a,(()=>O((async()=>{return await g(),a=(await $(o,c))[ca]?.[l]??"null",ia(a,((a,t)=>""===t?void 0:t));var a}))),(a=>O((async()=>{await g(),await A(o,c,{[ca]:{[l]:ra(a()??null)}},!0,!0)}))),e,n,s,r,{[u]:()=>d,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,d);return m},at=(a,t,e,n,s,i,r,[o,c,[l,y,d]],u,E,N,$,A,O,m,T)=>{const[R,v,I,S]=qa(t,u,E,s,A,O,m,T),_=(a,t)=>g(J(c,(async([e,n,s,i,r],o)=>{t&&!(o in a)||await I(e,n,a[o],s,i,t,r)}))),C=async(a,t)=>y?await I(d,la,{[ca]:a},!0,!0,t):null,b=na(a,(()=>S((async()=>{await R();const a=await(async()=>F(p(await g(J(o,(async([a,t,e],n)=>[a,await v(n,t,e)]))),(a=>!W(a[1])))))(),t=await(async()=>l?(await v(d,la))[ca]:{})();return W(a)&&w(t)?void 0:[a,t]}))),((a,t)=>S((async()=>{if(await R(),w(t)){const[t,e]=a();await _(t),await C(e)}else await _(t[0],!0),await C(t[1],!0)}))),e,n,s,r,{[$]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},tt=/^([cd]:)(.+)/,et=(a,n,s,o,c,l,w,d,u,E,N="getDb")=>{const $=ba(s,l),[A,,R,p]=Va(n),v=e+(a=>{let t=2166136261;return O(oa.encode(a),(a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)})),t>>>0})(ra(R)),I=t+"_"+v,_=async(a,e,n="",s="")=>{const i=Da(t,a,v);return await $(va+Sa+_a+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},b=async(a,t,e,n)=>(await $(va+a+"TRIGGER"+t+e+"EXECUTE "+_a+n+"()"),t),L=a=>`PERFORM pg_notify('${I}',${a});`,D=(a,t)=>A?i:2===t?D(a,0)+" OR "+D(a,1):r(X(R[0],a)?.[2]??i,Ca,0==t?"NEW":"OLD"),f=(a,e)=>g(T([ua,Ea,Na],((n,s)=>b(Sa,Da(t,"d",v,a,n),`AFTER ${n} ON${La(a)}FOR EACH ROW WHEN(${D(a,s)})`,e))));return(A?Za:at)(a,$,(async a=>{const e=await _("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ya} command_tag='${Ia}' LOOP ${L("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await b("EVENT ",Da(t,"c",v),`ON ddl_command_end WHEN TAG IN('${Ia}')`,e);const n=await _("d",L("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await g(T(C(p),(async a=>(await $(Ia+` IF NOT EXISTS${La(a)}("_id"text PRIMARY KEY)`),await f(a,n))))),[await o(I,(t=>{return y((e=t,s=tt,e?.match(s)),(async([,t,e])=>{S(p,e)&&("c:"==t&&await f(e,n),a())}));var e,s})),[e,n]]}),(async([a,t])=>{c(a),await $(`DROP FUNCTION IF EXISTS${m(t,",")}CASCADE`)}),w,d,u,R,C(p),(async(a,t)=>await a(wa+` table_name tn,column_name cn FROM information_schema.columns ${ya} table_schema='public'AND table_name IN(${fa(t)})`,t)),E,N,"text",void 0,(a=>sa(a)),(a=>ia(a)))},nt=(a,t,n,s,i,r,o,c,w,y,d="getDb",u)=>{let E,N,g;const $=ba(n,r),[O,m,T,R]=Va(t);return(O?Za:at)(a,$,(a=>{let t;const e=()=>t=setInterval((()=>A((async()=>{const[{d:t,s:e,c:n}]=await $(wa+` ${Ta} d,${Ra} s,TOTAL_CHANGES() c FROM ${ma}${Ta} JOIN ${ma}${Ra}`);t==E&&e==N&&n==g||(null!=E&&a(),E=t,N=e,g=n)}))),1e3*m),n=()=>{E=N=g=null,l(t)},r=s((t=>{R.has(t)&&(n(),a(),e())}));return e(),()=>{n(),i(r)}}),(a=>a()),o,c,w,T,C(R),(async(a,t)=>await a(wa+` t.name tn,c.name cn FROM ${pa}list()t,${pa}info(t.name)c ${ya} t.schema='main'AND t.type IN('table','view')AND t.name IN(${fa(t)})ORDER BY t.name,c.name`,t)),y,d,e,u,(a=>!0===a?1:!1===a?0:a),void 0)};export{aa as Persists,Z as Status,na as createCustomPersister,et as createCustomPostgreSqlPersister,nt as createCustomSqlitePersister};
|
|
1
|
+
const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i="true",r=(a,t,e)=>a.replace(t,e),o=Promise,c=globalThis,l=clearInterval,w=a=>null==a,y=(a,t,e)=>w(a)?e?.():t(a),d=t=>a(t)==s,u=a=>Array.isArray(a),E=(a,t,e)=>a.slice(t,e),N=a=>a.length,g=async a=>o.all(a),$=a=>{throw Error(a)},A=async(a,t,e)=>{try{return await a()}catch(a){t?.(a)}},O=(a,t)=>a.forEach(t),m=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),R=a=>0==N(a),p=(a,t)=>a.filter(t),v=(a,...t)=>a.push(...t),I=a=>a.shift(),S=(a,t)=>a?.has(t)??!1,_=a=>w(a)||0==(a=>a?.size??0)(a),C=a=>[...a?.values()??[]],b=(a,t)=>a?.forEach(t),L=(a,t)=>a?.delete(t),D=Object,f=a=>D.getPrototypeOf(a),h=D.entries,P=D.keys,M=D.freeze,F=(a=[])=>D.fromEntries(a),U=(...a)=>D.assign({},...a),G=(a,t)=>(delete a[t],a),j=(a,t)=>T(h(a),([a,e])=>t(e,a)),x=(a,t)=>F(j(a,(a,e)=>[e,t(a,e)])),B=a=>D.values(a),H=a=>N(P(a)),W=a=>(a=>!w(a)&&y(f(a),a=>a==D.prototype||w(f(a)),()=>!0))(a)&&0==H(a),Y=a=>new Map(a),X=(a,t)=>a?.get(t),J=(a,t)=>T([...a?.entries()??[]],([a,e])=>t(e,a)),k=(a,t,e)=>w(e)?(L(a,t),a):a?.set(t,e),z=(a,t,e,n)=>(S(a,t)?n?.(X(a,t)):k(a,t,e()),X(a,t)),K=(a,t,e,n,s=0)=>y((e?z:X)(a,t[s],s>N(t)-2?e:Y),i=>{if(s>N(t)-2)return n?.(i)&&k(a,t[s]),i;const r=K(i,t,e,n,s+1);return _(i)&&k(a,t[s]),r}),V=/^\d+$/,q=a=>new Set(u(a)||w(a)?a:[a]),Q=(a,t)=>a?.add(t),Z={Idle:0,Loading:1,Saving:2},aa={StoreOnly:1,MergeableStoreOnly:2,StoreOrMergeableStore:3},ta=Y(),ea=Y(),na=(a,t,n,s,i,r,o,c={},l=0,d=[])=>{let E,g,m,T=0,R=0,p=0;z(ta,d,()=>0),z(ea,d,()=>[]);const S=Y(),[C,D,f,h,P]=((a=1,t,e)=>1!=a&&t.isMergeable()?[1,t.getMergeableContent,()=>t.getTransactionMergeableChanges(!e),([[a],[t]])=>!W(a)||!W(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!W(a)||!W(t),t.setContent]:$("Store type not supported by this Persister"))(o,a,l),[F,U,G]=(()=>{let a;const[t,n]=(()=>{const a=[];let t=0;return[n=>(n?I(a):null)??e+t++,t=>{V.test(t)&&N(a)<1e3&&v(a,t)}]})(),s=Y();return[(n,i,r,o=[],c=()=>[])=>{a??=ra;const l=t(1);return k(s,l,[n,i,r,o,c]),Q(K(i,r??[e],q),l),l},(t,n,...i)=>O(((a,t=[e])=>{const n=[],s=(a,e)=>e==N(t)?v(n,a):null===t[e]?b(a,a=>s(a,e+1)):O([t[e],null],t=>s(X(a,t),e+1));return s(a,0),n})(t,n),t=>b(t,t=>X(s,t)[0](a,...n??[],...i))),a=>y(X(s,a),([,t,i])=>(K(t,i??[e],void 0,t=>(L(t,a),_(t)?1:0)),k(s,a),n(a),i)),t=>y(X(s,t),([t,,e=[],n,s])=>{const i=(...r)=>{const o=N(r);o==N(e)?t(a,...r,...s(r)):w(e[o])?O(n[o]?.(...r)??[],a=>i(...r,a)):i(...r,e[o])};i()})]})(),j=a=>{a!=T&&(T=a,U(S,void 0,T))},x=t=>{(C&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},B=async a=>(2!=T&&(j(1),R++,await ia(async()=>{await A(async()=>{const e=await t();u(e)?x(e):a?P(a):$("Content is not an array: "+e)},()=>{a&&P(a)}),j(0)})),ra),H=async a=>(J(),await B(a),await A(async()=>g=await s(async(a,t)=>{t||a?2!=T&&(j(1),R++,x(t??a),j(0)):await B()}),r),ra),J=async()=>(g&&(await A(()=>i(g),r),g=void 0),ra),Z=async a=>(1!=T&&(j(2),p++,await ia(async()=>{await A(()=>n(D,a),r),j(0)})),ra),aa=async()=>(na(),await Z(),m=a.addDidFinishTransactionListener(()=>{const a=f();h(a)&&Z(a)}),ra),na=async()=>(m&&(a.delListener(m),m=void 0),ra),sa=async(a=!1)=>{const[t,e]=a?[na,J]:[J,na];return await t(),await e(),ra},ia=async(...a)=>(v(X(ea,d),...a),await(async()=>{if(!X(ta,d)){for(k(ta,d,1);!w(E=I(X(ea,d)));)await A(E,r);k(ta,d,0)}})(),ra),ra={load:B,startAutoLoad:H,stopAutoLoad:J,isAutoLoading:()=>!w(g),save:Z,startAutoSave:aa,stopAutoSave:na,isAutoSaving:()=>!w(m),startAutoPersisting:async(a,t=!1)=>{const[e,n]=t?[aa,H]:[H,aa];return await e(a),await n(a),ra},stopAutoPersisting:sa,getStatus:()=>T,addStatusListener:a=>F(a,S),delListener:t=>(G(t),a),schedule:ia,getStore:()=>a,destroy:()=>(X(ea,d).splice(0,void 0),sa()),getStats:()=>({loads:R,saves:p}),...c};return M(ra)},sa=JSON.stringify,ia=JSON.parse,ra=a=>sa(a,(a,t)=>void 0===t?"":t),oa=new c.TextEncoder,ca="_",la="_id",wa="SELECT",ya="WHERE",da="TABLE",ua="INSERT",Ea="DELETE",Na="UPDATE",ga="ALTER "+da,$a="FROM",Aa=Ea+" "+$a,Oa=wa+"*"+$a,ma="pragma_",Ta="data_version",Ra="schema_version",pa="pragma_table_",va="CREATE ",Ia=va+da,Sa="OR REPLACE ",_a="FUNCTION",Ca="$tableName",ba=(a,t)=>t?async(e,n)=>(t(e,n),await a(e,n)):a,La=a=>m(T(((a,t="",e)=>a.split(t,e))(a,"."),a=>`"${r(a,/"/g,'""')}"`),"."),Da=(...a)=>La(m(a,"_")),fa=(a,t=[1])=>m(T(a,()=>"$"+t[0]++),n),ha=(a,t=i)=>ya+`(${r(t,Ca,La(a))})`,Pa="ColumnName",Ma="store",Fa="json",Ua=Ma+"TableName",Ga=Ma+"Id"+Pa,ja=Ma+Pa,xa="autoLoadIntervalSeconds",Ba="rowId"+Pa,Ha="tableId",Wa="tableName",Ya="deleteEmptyColumns",Xa="deleteEmptyTable",Ja="condition",ka={mode:Fa,[xa]:1},za={load:0,save:0,[Wa]:t+"_values"},Ka=(a,t,e,n,s)=>{const i=Y();return x(a,(a,r)=>{const o=E(B(U(t,d(a)?{[e]:a}:a)),0,H(t));w(o[0])||n(r,o[0])||(s(r,o[0]),k(i,r,o))}),i},Va=a=>{const e=(a=>U(ka,d(a)?{[Ua]:a}:a??{}))(a),n=e[xa];if(e.mode==Fa){const a=e[Ua]??t;return[1,n,[a,e[Ga]??la,e[ja]??Ma],q(a)]}const{tables:{load:s={},save:r={}}={},values:o={}}=e,c=E(B(U(za,o)),0,H(za)),l=c[2],w=q(l),y=q(l),u=Ka(s,{[Ha]:null,[Ba]:la,[Ja]:i},Ha,a=>S(y,a),a=>Q(w,a)),N=Ka(r,{[Wa]:null,[Ba]:la,[Ya]:0,[Xa]:0,[Ja]:null},Wa,(a,t)=>S(y,t),(a,t)=>Q(w,t));var g;return g=(a,t)=>t[4]??=X(u,t[0])?.[2]??i,b(N,(a,t)=>g(0,a)),[0,n,[u,N,c],w]},qa=(a,t,e,s,r,o=Qa,c,l)=>{const y=Y();return[async()=>{y.clear(),T(await e(a,t),({tn:a,cn:t})=>Q(z(y,a,q),t))},async(t,e,n)=>((a,t)=>S(X(y,a),t))(t,e)?F(p(T(await a(Oa+La(t)+ha(t,n)),a=>[a[e],l?x(G(a,e),l):G(a,e)]),([a,t])=>!w(a)&&!W(t))):{},async(t,e,s,l,d,u=!1,E=i)=>{const N=q();x(s??{},a=>T(P(a??{}),a=>Q(N,a)));const $=C(N);if(!u&&d&&E==i&&R($)&&S(y,t))return await a("DROP "+da+La(t)),void k(y,t);const A=X(y,t),O=q(C(A));if(R($)||(S(y,t)?await g(T([e,...$],async(n,s)=>{L(O,n)||(await a(ga+La(t)+"ADD"+La(n)+r),0==s&&await a("CREATE UNIQUE INDEX pk ON "+La(t)+`(${La(e)})`),Q(A,n))})):(await a(Ia+La(t)+`(${La(e)}${r} PRIMARY KEY${m(T($,a=>n+La(a)+r))});`),k(y,t,q([e,...$])))),await g([...!u&&l?T(C(O),async n=>{n!=e&&(await a(ga+La(t)+"DROP"+La(n)),L(A,n))}):[]]),u)w(s)?await a(Aa+La(t)+ha(t,E)):await g(j(s,async(n,s)=>{w(n)?await a(Aa+La(t)+ha(t,E)+`AND(${La(e)}=$1)`,[s]):R($)||await o(a,t,e,P(n),{[s]:c?T(B(n),c):B(n)},A)}));else if(R($))S(y,t)&&await a(Aa+La(t)+ha(t,E));else{const n=p(C(X(y,t)),a=>a!=e),i={},r=[];x(s??{},(a,t)=>{i[t]=T(n,t=>c?c(a?.[t]):a?.[t]),v(r,t)}),await o(a,t,e,n,i),await a(Aa+La(t)+ha(t,E)+`AND${La(e)}NOT IN(${fa(r)})`,r)}},async t=>{let e;return await a("BEGIN"),await A(async()=>e=await t(),s),await a("END"),e}]},Qa=async(a,t,e,s,i)=>{const r=[1];await a(ua+" INTO"+La(t)+"("+((...a)=>m(T(a,La),n))(e,...s)+")VALUES"+m(j(i,a=>"($"+r[0]+++","+fa(a,r)+")"),n)+"ON CONFLICT("+La(e)+`)DO ${Na} SET`+m(T(s,a=>La(a)+"=excluded."+La(a)),n),j(i,(a,t)=>[t,...T(a,a=>a??null)]).flat())},Za=(a,t,e,n,s,i,r,[o,c,l],w,y,d,u,E,N)=>{const[g,$,A,O]=qa(t,w,y,s,E,N),m=na(a,()=>O(async()=>{return await g(),a=(await $(o,c))[ca]?.[l]??"null",ia(a,(a,t)=>""===t?void 0:t);var a}),a=>O(async()=>{await g(),await A(o,c,{[ca]:{[l]:ra(a()??null)}},!0,!0)}),e,n,s,r,{[u]:()=>d,destroy:async()=>(await m.stopAutoPersisting(),i(),m)},0,d);return m},at=(a,t,e,n,s,i,r,[o,c,[l,y,d]],u,E,N,$,A,O,m,T)=>{const[R,v,I,S]=qa(t,u,E,s,A,O,m,T),_=(a,t)=>g(J(c,async([e,n,s,i,r],o)=>{t&&!(o in a)||await I(e,n,a[o],s,i,t,r)})),C=async(a,t)=>y?await I(d,la,{[ca]:a},!0,!0,t):null,b=na(a,()=>S(async()=>{await R();const a=await(async()=>F(p(await g(J(o,async([a,t,e],n)=>[a,await v(n,t,e)])),a=>!W(a[1]))))(),t=await(async()=>l?(await v(d,la))[ca]:{})();return W(a)&&w(t)?void 0:[a,t]}),(a,t)=>S(async()=>{if(await R(),w(t)){const[t,e]=a();await _(t),await C(e)}else await _(t[0],!0),await C(t[1],!0)}),e,n,s,r,{[$]:()=>N,destroy:async()=>(await b.stopAutoPersisting(),i(),b)},0,N);return b},tt=/^([cd]:)(.+)/,et=(a,n,s,o,c,l,w,d,u,E,N="getDb")=>{const $=ba(s,l),[A,,R,p]=Va(n),v=e+(a=>{let t=2166136261;return O(oa.encode(a),a=>{t^=a,t+=(t<<1)+(t<<4)+(t<<7)+(t<<8)+(t<<24)}),t>>>0})(ra(R)),I=t+"_"+v,_=async(a,e,n="",s="")=>{const i=Da(t,a,v);return await $(va+Sa+_a+i+`()RETURNS ${n}trigger AS $$ ${s}BEGIN ${e}END;$$ LANGUAGE plpgsql;`),i},b=async(a,t,e,n)=>(await $(va+a+"TRIGGER"+t+e+"EXECUTE "+_a+n+"()"),t),L=a=>`PERFORM pg_notify('${I}',${a});`,D=(a,t)=>A?i:2===t?D(a,0)+" OR "+D(a,1):r(X(R[0],a)?.[2]??i,Ca,0==t?"NEW":"OLD"),f=(a,e)=>g(T([ua,Ea,Na],(n,s)=>b(Sa,Da(t,"d",v,a,n),`AFTER ${n} ON${La(a)}FOR EACH ROW WHEN(${D(a,s)})`,e)));return(A?Za:at)(a,$,async a=>{const e=await _("c",`FOR row IN SELECT object_identity FROM pg_event_trigger_ddl_commands()${ya} command_tag='${Ia}' LOOP ${L("'c:'||SPLIT_PART(row.object_identity,'.',2)")}END LOOP;`,"event_","DECLARE row record;");await b("EVENT ",Da(t,"c",v),`ON ddl_command_end WHEN TAG IN('${Ia}')`,e);const n=await _("d",L("'d:'||TG_TABLE_NAME")+"RETURN NULL;");return await g(T(C(p),async a=>(await $(Ia+` IF NOT EXISTS${La(a)}("_id"text PRIMARY KEY)`),await f(a,n)))),[await o(I,t=>{return y((e=t,s=tt,e?.match(s)),async([,t,e])=>{S(p,e)&&("c:"==t&&await f(e,n),a())});var e,s}),[e,n]]},async([a,t])=>{c(a),await $(`DROP FUNCTION IF EXISTS${m(t,",")}CASCADE`)},w,d,u,R,C(p),async(a,t)=>await a(wa+` table_name tn,column_name cn FROM information_schema.columns ${ya} table_schema='public'AND table_name IN(${fa(t)})`,t),E,N,"text",void 0,a=>sa(a),a=>ia(a))},nt=(a,t,n,s,i,r,o,c,w,y,d="getDb",u)=>{let E,N,g;const $=ba(n,r),[O,m,T,R]=Va(t);return(O?Za:at)(a,$,a=>{let t;const e=()=>t=setInterval(()=>A(async()=>{const[{d:t,s:e,c:n}]=await $(wa+` ${Ta} d,${Ra} s,TOTAL_CHANGES() c FROM ${ma}${Ta} JOIN ${ma}${Ra}`);t==E&&e==N&&n==g||(null!=E&&a(),E=t,N=e,g=n)}),1e3*m),n=()=>{E=N=g=null,l(t)},r=s(t=>{R.has(t)&&(n(),a(),e())});return e(),()=>{n(),i(r)}},a=>a(),o,c,w,T,C(R),async(a,t)=>await a(wa+` t.name tn,c.name cn FROM ${pa}list()t,${pa}info(t.name)c ${ya} t.schema='main'AND t.type IN('table','view')AND t.name IN(${fa(t)})ORDER BY t.name,c.name`,t),y,d,e,u,a=>!0===a?1:!1===a?0:a,void 0)};export{aa as Persists,Z as Status,na as createCustomPersister,et as createCustomPostgreSqlPersister,nt as createCustomSqlitePersister};
|
|
Binary file
|
package/min/queries/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math,L=w.max,f=w.min,R=isFinite,y=e=>null==e,T=(e,t,n)=>y(e)?n?.():t(e),b=t=>e(t)==r,C=e=>Array.isArray(e),m=e=>e.length,p=()=>{},S=(e,t)=>e.every(t),I=(e,t)=>e.forEach(t),Q=e=>x(e,(
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math,L=w.max,f=w.min,R=isFinite,y=e=>null==e,T=(e,t,n)=>y(e)?n?.():t(e),b=t=>e(t)==r,C=e=>Array.isArray(e),m=e=>e.length,p=()=>{},S=(e,t)=>e.every(t),I=(e,t)=>e.forEach(t),Q=e=>x(e,(e,t)=>e+t,0),E=e=>0==m(e),x=(e,t,n)=>e.reduce(t,n),D=(e,...t)=>e.push(...t),M=e=>e?.size??0,j=(e,t)=>e?.has(t)??!1,k=e=>y(e)||0==M(e),z=e=>[...e?.values()??[]],A=e=>e.clear(),F=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),W=Object,q=W.entries,B=W.freeze,G=e=>new Map(e),H=(e,t)=>e?.get(t),J=(e,t)=>F(e,(e,n)=>t(n,e)),K=(e,t,n)=>y(n)?(O(e,t),e):e?.set(t,n),N=(e,t,n,s)=>(j(e,t)?s?.(H(e,t)):K(e,t,n()),H(e,t)),P=(e,t,n,s,r=0)=>T((n?N:H)(e,t[r],r>m(t)-2?n:G),o=>{if(r>m(t)-2)return s?.(o)&&K(e,t[r]),o;const a=P(o,t,n,s,r+1);return k(o)&&K(e,t[r]),a}),U=G([["avg",[(e,t)=>Q(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>L(...e),(e,t)=>L(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:L(t,e)]],["min",[e=>f(...e),(e,t)=>f(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:f(t,e)]],["sum",[e=>Q(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),V=e=>new Set(C(e)||y(e)?e:[e]),X=(e,t)=>e?.add(t),Y=(()=>{const r=new WeakMap;return l=>(r.has(l)||r.set(l,(r=>{const l=r.createStore,w=l(),L=l(),f=G(),{addListener:Q,callListeners:x,delListener:Y}=L,[Z,$,_,ee,te,,,ne,,se,re,oe,ae,le]=((e,t,n,s,r)=>{const o=e.hasRow,a=G(),l=G(),i=G(),d=G(),c=G(),u=G(),h=(t,n,...s)=>{const r=N(u,t,V);return I(s,t=>X(r,t)&&n&&e.callListener(t)),s},g=(t,...n)=>T(H(u,t),s=>{I(E(n)?z(s):n,t=>{e.delListener(t),O(s,t)}),k(s)&&K(u,t)}),v=(e,t)=>{K(a,e,t),j(l,e)||(K(l,e,!0),K(d,e,G()),K(c,e,G()),r(i))},w=e=>{K(a,e),K(l,e),K(d,e),K(c,e),g(e),r(i)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>J(l,e),e=>j(l,e),e=>H(a,e),e=>H(l,e),(e,t)=>K(l,e,t),v,(t,s,r,a,l)=>{v(t,s);const i=G(),u=G(),w=H(d,t),L=H(c,t),f=t=>{const r=n=>e.getCell(s,t,n),d=H(w,t),c=o(s,t)?n(a(r,t)):void 0;var h,g;if(d===c||C(d)&&C(c)&&(g=c,m(h=d)===m(g)&&S(h,(e,t)=>g[t]===e))||K(i,t,[d,c]),!y(l)){const e=H(L,t),n=o(s,t)?l(r,t):void 0;e!=n&&K(u,t,n)}},R=e=>{r(()=>{F(i,([,e],t)=>K(w,t,e)),F(u,(e,t)=>K(L,t,e))},i,u,w,L,e),A(i),A(u)};J(w,f),e.hasTable(s)&&I(e.getRowIds(s),e=>{j(w,e)||f(e)}),R(!0),g(t),h(t,0,e.addRowListener(s,null,(e,t,n)=>f(n)),e.addTableListener(s,()=>R()))},w,e=>s(e,i),()=>J(u,w),h,g]})(r,0,p,Q,x),ie=(e,t,...n)=>I(n,n=>X(N(N(f,t,G),e,V),n)),de=e=>{T(H(f,e),e=>{J(e,(e,t)=>F(t,t=>e.delListener(t))),A(e)}),I([L,w],t=>t.delTable(e))},ce=(e,t,n)=>ie(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener(()=>n.finishTransaction())),ue={setQueryDefinition:(o,a,l)=>{ne(o,a),de(o);const i=[],d=[[null,[a,null,null,[],G()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=b(e)?[m(i)+"",e]:[y(t)?e:t,n=>n(e,t)];return D(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=y(n)||b(t)?null:t,r=y(s)?t:n,o=[e,[e,s,b(r)?r:e=>e(r),[],G()]];return D(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>D(c,b(e)?e:y(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,b(t)?[t,n,s,r]:H(U,t)??[(e,t)=>t]]];return D(u,o),{as:e=>o[0]=e}},having:(e,t)=>D(h,b(e)?e:n=>n(e)===t)});const g=G(i);if(k(g))return ue;const v=G(d);J(v,(e,[,t])=>T(H(v,t),({3:t})=>y(e)?0:D(t,e)));const f=G(u);let C=w;if(k(f)&&E(h))C=L;else{ce(o,C,L);const r=G();J(f,(e,[t,n])=>X(N(r,t,V),[e,n]));const a=V();J(g,e=>j(r,e)?0:X(a,e));const l=G(),i=(a,l,i,d)=>T(a,([c,u,g,v])=>{J(l,(o,[a])=>{const l=N(c,o,G),u=H(l,i),h=d?void 0:a;if(u!==h){const a=V([[u,h]]),d=M(l);K(l,i,h),F(H(r,o),([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(k(n))return;const[a,l,i,d]=r;return o||=y(e),F(s,([n,s])=>{o||(e=y(n)?l?.(e,s,t++):y(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=y(e))}),o?a(z(n),M(n)):e})(v[r],d,l,a,o);v[r]=y((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&R(r)?o:void 0})(i))?null:i})}}),k(u)||!S(h,e=>e(e=>v[e]))?L.delRow(o,g):y(g)?a[2]=L.addRow(o,v):L.setRow(o,g,v)});ie(C,o,C.addRowListener(o,null,(e,t,n,s)=>{const d=[],c=[],u=G(),h=C.hasRow(o,n);let g=!h;F(a,e=>{const[t,r,a]=s(o,n,e);D(d,r),D(c,a),g||=t}),J(r,e=>{const[t,,r]=s(o,n,e);(g||t)&&K(u,e,[r])}),g&&i(P(l,d,void 0,([,e])=>(O(e,n),k(e))),u,n,1),h&&i(P(l,c,()=>{const e={};return F(a,t=>e[t]=C.getCell(o,n,t)),[G(),V(),void 0,e]},([,e])=>{X(e,n)}),u,n)}))}ce(o,r,C);const p=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);I(s,t=>{const[n,,s,a,i]=H(v,t),d=s?.(l,e),[c,u]=H(i,e)??[];d!=c&&(y(u)||le(o,u),K(i,e,y(d)?null:[d,...ae(o,1,r.addRowListener(n,d,()=>p(e,n,d,a)))]))}),(e=>{const t=(t,n)=>r.getCell(...y(n)?[a,e,t]:t===a?[a,e,n]:[H(v,t)?.[0],H(H(v,t)?.[4],e)?.[0],n]);C.transaction(()=>S(c,e=>e(t))?J(g,(n,s)=>((e,t,n,s,r)=>y(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(C,o,e,n,s(t,e))):C.delRow(o,e))})(e)},{3:Q}=H(v,null);return C.transaction(()=>ae(o,1,r.addRowListener(a,null,(e,t,n)=>{r.hasRow(a,n)?p(n,a,n,Q):(C.delRow(o,n),F(v,({4:e})=>T(H(e,n),([,t])=>{le(o,t),K(e,n)})))}))),ue},delQueryDefinition:e=>(de(e),se(e),ue),getStore:Z,getQueryIds:$,forEachQuery:_,hasQuery:ee,getTableId:te,addQueryIdsListener:e=>re(()=>e(ue)),delListener:e=>(Y(e),ue),destroy:oe,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=L.getListenerStats();return s}};return he=([e,t],n)=>{I(e?["get","has","forEach"]:["get"],e=>ue[e+a+n]=(...t)=>L[e+n](...t)),ue["add"+a+n+o]=(...e)=>{return L["add"+n+o](...(s=e,r=t,s.slice(0,r)),(n,...s)=>e[t](ue,...s),!0);var s,r}},((e=[])=>{W.fromEntries(e)})(((e,t)=>((e,t)=>e.map(t))(q(e),([e,n])=>t(n,e)))({[i]:[1,1],[i+v]:[0,1],[c]:[0,1],[u]:[0,1],[h]:[0,5],[d]:[1,2],[v]:[0,2],[g]:[1,3]},(e,t)=>[t,he(e,t)])),B(ue);var he})(l)),r.get(l))})();export{Y as createQueries};
|
package/min/queries/index.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math,L=w.max,f=w.min,R=isFinite,y=e=>null==e,T=(e,t,n)=>y(e)?n?.():t(e),b=t=>e(t)==r,C=e=>Array.isArray(e),m=e=>e.length,p=()=>{},S=(e,t)=>e.every(t),I=(e,t)=>e.forEach(t),Q=e=>x(e,(
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+"Count",u=d+l,h="Sorted"+d+l,g="Cell",v=g+l,w=Math,L=w.max,f=w.min,R=isFinite,y=e=>null==e,T=(e,t,n)=>y(e)?n?.():t(e),b=t=>e(t)==r,C=e=>Array.isArray(e),m=e=>e.length,p=()=>{},S=(e,t)=>e.every(t),I=(e,t)=>e.forEach(t),Q=e=>x(e,(e,t)=>e+t,0),E=e=>0==m(e),x=(e,t,n)=>e.reduce(t,n),D=(e,...t)=>e.push(...t),M=e=>e?.size??0,j=(e,t)=>e?.has(t)??!1,k=e=>y(e)||0==M(e),z=e=>[...e?.values()??[]],A=e=>e.clear(),F=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),W=Object,q=W.entries,B=W.freeze,G=e=>new Map(e),H=(e,t)=>e?.get(t),J=(e,t)=>F(e,(e,n)=>t(n,e)),K=(e,t,n)=>y(n)?(O(e,t),e):e?.set(t,n),N=(e,t,n,s)=>(j(e,t)?s?.(H(e,t)):K(e,t,n()),H(e,t)),P=(e,t,n,s,r=0)=>T((n?N:H)(e,t[r],r>m(t)-2?n:G),o=>{if(r>m(t)-2)return s?.(o)&&K(e,t[r]),o;const a=P(o,t,n,s,r+1);return k(o)&&K(e,t[r]),a}),U=G([["avg",[(e,t)=>Q(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>L(...e),(e,t)=>L(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:L(t,e)]],["min",[e=>f(...e),(e,t)=>f(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:f(t,e)]],["sum",[e=>Q(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),V=e=>new Set(C(e)||y(e)?e:[e]),X=(e,t)=>e?.add(t),Y=(()=>{const r=new WeakMap;return l=>(r.has(l)||r.set(l,(r=>{const l=r.createStore,w=l(),L=l(),f=G(),{addListener:Q,callListeners:x,delListener:Y}=L,[Z,$,_,ee,te,,,ne,,se,re,oe,ae,le]=((e,t,n,s,r)=>{const o=e.hasRow,a=G(),l=G(),i=G(),d=G(),c=G(),u=G(),h=(t,n,...s)=>{const r=N(u,t,V);return I(s,t=>X(r,t)&&n&&e.callListener(t)),s},g=(t,...n)=>T(H(u,t),s=>{I(E(n)?z(s):n,t=>{e.delListener(t),O(s,t)}),k(s)&&K(u,t)}),v=(e,t)=>{K(a,e,t),j(l,e)||(K(l,e,!0),K(d,e,G()),K(c,e,G()),r(i))},w=e=>{K(a,e),K(l,e),K(d,e),K(c,e),g(e),r(i)};return[()=>e,()=>{return e=a,[...e?.keys()??[]];var e},e=>J(l,e),e=>j(l,e),e=>H(a,e),e=>H(l,e),(e,t)=>K(l,e,t),v,(t,s,r,a,l)=>{v(t,s);const i=G(),u=G(),w=H(d,t),L=H(c,t),f=t=>{const r=n=>e.getCell(s,t,n),d=H(w,t),c=o(s,t)?n(a(r,t)):void 0;var h,g;if(d===c||C(d)&&C(c)&&(g=c,m(h=d)===m(g)&&S(h,(e,t)=>g[t]===e))||K(i,t,[d,c]),!y(l)){const e=H(L,t),n=o(s,t)?l(r,t):void 0;e!=n&&K(u,t,n)}},R=e=>{r(()=>{F(i,([,e],t)=>K(w,t,e)),F(u,(e,t)=>K(L,t,e))},i,u,w,L,e),A(i),A(u)};J(w,f),e.hasTable(s)&&I(e.getRowIds(s),e=>{j(w,e)||f(e)}),R(!0),g(t),h(t,0,e.addRowListener(s,null,(e,t,n)=>f(n)),e.addTableListener(s,()=>R()))},w,e=>s(e,i),()=>J(u,w),h,g]})(r,0,p,Q,x),ie=(e,t,...n)=>I(n,n=>X(N(N(f,t,G),e,V),n)),de=e=>{T(H(f,e),e=>{J(e,(e,t)=>F(t,t=>e.delListener(t))),A(e)}),I([L,w],t=>t.delTable(e))},ce=(e,t,n)=>ie(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener(()=>n.finishTransaction())),ue={setQueryDefinition:(o,a,l)=>{ne(o,a),de(o);const i=[],d=[[null,[a,null,null,[],G()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=b(e)?[m(i)+"",e]:[y(t)?e:t,n=>n(e,t)];return D(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=y(n)||b(t)?null:t,r=y(s)?t:n,o=[e,[e,s,b(r)?r:e=>e(r),[],G()]];return D(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>D(c,b(e)?e:y(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,b(t)?[t,n,s,r]:H(U,t)??[(e,t)=>t]]];return D(u,o),{as:e=>o[0]=e}},having:(e,t)=>D(h,b(e)?e:n=>n(e)===t)});const g=G(i);if(k(g))return ue;const v=G(d);J(v,(e,[,t])=>T(H(v,t),({3:t})=>y(e)?0:D(t,e)));const f=G(u);let C=w;if(k(f)&&E(h))C=L;else{ce(o,C,L);const r=G();J(f,(e,[t,n])=>X(N(r,t,V),[e,n]));const a=V();J(g,e=>j(r,e)?0:X(a,e));const l=G(),i=(a,l,i,d)=>T(a,([c,u,g,v])=>{J(l,(o,[a])=>{const l=N(c,o,G),u=H(l,i),h=d?void 0:a;if(u!==h){const a=V([[u,h]]),d=M(l);K(l,i,h),F(H(r,o),([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(k(n))return;const[a,l,i,d]=r;return o||=y(e),F(s,([n,s])=>{o||(e=y(n)?l?.(e,s,t++):y(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=y(e))}),o?a(z(n),M(n)):e})(v[r],d,l,a,o);v[r]=y((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&R(r)?o:void 0})(i))?null:i})}}),k(u)||!S(h,e=>e(e=>v[e]))?L.delRow(o,g):y(g)?a[2]=L.addRow(o,v):L.setRow(o,g,v)});ie(C,o,C.addRowListener(o,null,(e,t,n,s)=>{const d=[],c=[],u=G(),h=C.hasRow(o,n);let g=!h;F(a,e=>{const[t,r,a]=s(o,n,e);D(d,r),D(c,a),g||=t}),J(r,e=>{const[t,,r]=s(o,n,e);(g||t)&&K(u,e,[r])}),g&&i(P(l,d,void 0,([,e])=>(O(e,n),k(e))),u,n,1),h&&i(P(l,c,()=>{const e={};return F(a,t=>e[t]=C.getCell(o,n,t)),[G(),V(),void 0,e]},([,e])=>{X(e,n)}),u,n)}))}ce(o,r,C);const p=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);I(s,t=>{const[n,,s,a,i]=H(v,t),d=s?.(l,e),[c,u]=H(i,e)??[];d!=c&&(y(u)||le(o,u),K(i,e,y(d)?null:[d,...ae(o,1,r.addRowListener(n,d,()=>p(e,n,d,a)))]))}),(e=>{const t=(t,n)=>r.getCell(...y(n)?[a,e,t]:t===a?[a,e,n]:[H(v,t)?.[0],H(H(v,t)?.[4],e)?.[0],n]);C.transaction(()=>S(c,e=>e(t))?J(g,(n,s)=>((e,t,n,s,r)=>y(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(C,o,e,n,s(t,e))):C.delRow(o,e))})(e)},{3:Q}=H(v,null);return C.transaction(()=>ae(o,1,r.addRowListener(a,null,(e,t,n)=>{r.hasRow(a,n)?p(n,a,n,Q):(C.delRow(o,n),F(v,({4:e})=>T(H(e,n),([,t])=>{le(o,t),K(e,n)})))}))),ue},delQueryDefinition:e=>(de(e),se(e),ue),getStore:Z,getQueryIds:$,forEachQuery:_,hasQuery:ee,getTableId:te,addQueryIdsListener:e=>re(()=>e(ue)),delListener:e=>(Y(e),ue),destroy:oe,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=L.getListenerStats();return s}};return he=([e,t],n)=>{I(e?["get","has","forEach"]:["get"],e=>ue[e+a+n]=(...t)=>L[e+n](...t)),ue["add"+a+n+o]=(...e)=>{return L["add"+n+o](...(s=e,r=t,s.slice(0,r)),(n,...s)=>e[t](ue,...s),!0);var s,r}},((e=[])=>{W.fromEntries(e)})(((e,t)=>((e,t)=>e.map(t))(q(e),([e,n])=>t(n,e)))({[i]:[1,1],[i+v]:[0,1],[c]:[0,1],[u]:[0,1],[h]:[0,5],[d]:[1,2],[v]:[0,2],[g]:[1,3]},(e,t)=>[t,he(e,t)])),B(ue);var he})(l)),r.get(l))})();export{Y as createQueries};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),r=e=>null==e,s=(e,t,n)=>r(e)?n?.():t(e),o=e=>Array.isArray(e),a=e=>e.length,i=(e,t)=>e.forEach(t),d=(e,...t)=>e.push(...t),l=e=>t=>{return n=(t,n)=>t+e(n),f(t).reduce(n,0);var n},c=e=>e?.size??0,u=l(c),R=l(u),h=(e,t)=>e?.has(t)??!1,w=e=>r(e)||0==c(e),f=e=>[...e?.values()??[]],L=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),p=Object.freeze,v=e=>new Map(e),y=(e,t)=>e?.get(t),b=(e,t)=>I(e,(
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),r=e=>null==e,s=(e,t,n)=>r(e)?n?.():t(e),o=e=>Array.isArray(e),a=e=>e.length,i=(e,t)=>e.forEach(t),d=(e,...t)=>e.push(...t),l=e=>t=>{return n=(t,n)=>t+e(n),f(t).reduce(n,0);var n},c=e=>e?.size??0,u=l(c),R=l(u),h=(e,t)=>e?.has(t)??!1,w=e=>r(e)||0==c(e),f=e=>[...e?.values()??[]],L=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),p=Object.freeze,v=e=>new Map(e),y=(e,t)=>e?.get(t),b=(e,t)=>I(e,(e,n)=>t(n,e)),k=(e,t,n)=>r(n)?(g(e,t),e):e?.set(t,n),m=(e,t,n,r)=>(h(e,t)?r?.(y(e,t)):k(e,t,n()),y(e,t)),E=(e,t,n,r,o=0)=>s((n?m:y)(e,t[o],o>a(t)-2?n:v),s=>{if(o>a(t)-2)return r?.(s)&&k(e,t[o]),s;const i=E(s,t,n,r,o+1);return w(s)&&k(e,t[o]),i}),T=e=>new Set(o(e)||r(e)?e:[e]),S=(e,t)=>e?.add(t),z=/^\d+$/,A=(()=>{const l=new WeakMap;return c=>(l.has(c)||l.set(c,(l=>{const c=v(),u=v(),A=v(),D=v(),[M,j,x]=(()=>{let e;const[n,o]=(()=>{const e=[];let n=0;return[r=>(r?e.shift():null)??t+n++,t=>{z.test(t)&&a(e)<1e3&&d(e,t)}]})(),l=v();return[(r,s,o,a=[],i=()=>[])=>{e??=Q;const d=n(1);return k(l,d,[r,s,o,a,i]),S(E(s,o??[t],T),d),d},(n,r,...s)=>i(((e,n=[t])=>{const r=[],s=(e,t)=>t==a(n)?d(r,e):null===n[t]?I(e,e=>s(e,t+1)):i([n[t],null],n=>s(y(e,n),t+1));return s(e,0),r})(n,r),t=>I(t,t=>y(l,t)[0](e,...r??[],...s))),e=>s(y(l,e),([,n,r])=>(E(n,r??[t],void 0,t=>(g(t,e),w(t)?1:0)),k(l,e),o(e),r)),t=>s(y(l,t),([t,,n=[],s,o])=>{const d=(...l)=>{const c=a(l);c==a(n)?t(e,...l,...o(l)):r(n[c])?i(s[c]?.(...l)??[],e=>d(...l,e)):d(...l,n[c])};d()})]})(),[C,O,W,$,q,B,,,F,G,H,J]=((e,n,d,l,c)=>{const u=e.hasRow,R=v(),p=v(),E=v(),z=v(),A=v(),D=v(),M=(t,n,...r)=>{const s=m(D,t,T);return i(r,t=>S(s,t)&&n&&e.callListener(t)),r},j=(t,...n)=>s(y(D,t),r=>{i(0==a(n)?f(r):n,t=>{e.delListener(t),g(r,t)}),w(r)&&k(D,t)}),x=(e,t)=>{k(R,e,t),h(p,e)||(k(p,e,[v(),v(),v(),v()]),k(z,e,v()),k(A,e,v()),c(E))},C=e=>{k(R,e),k(p,e),k(z,e),k(A,e),j(e),c(E)};return[()=>e,()=>{return e=R,[...e?.keys()??[]];var e},e=>b(p,e),e=>h(p,e),e=>y(R,e),e=>y(p,e),(e,t)=>k(p,e,t),x,(n,s,d,l,c)=>{x(n,s);const R=v(),w=v(),f=y(z,n),g=y(A,n),p=n=>{const i=t=>e.getCell(s,n,t),d=y(f,n),h=u(s,n)?(L=l(i,n),r(L)?void 0:L+t):void 0;var L,I,p,v;if(d===h||o(d)&&o(h)&&(p=h,a(I=d)===a(p)&&(v=(e,t)=>p[t]===e,I.every(v)))||k(R,n,[d,h]),!r(c)){const e=y(g,n),t=u(s,n)?c(i,n):void 0;e!=t&&k(w,n,t)}},m=e=>{d(()=>{I(R,([,e],t)=>k(f,t,e)),I(w,(e,t)=>k(g,t,e))},R,w,f,g,e),L(R),L(w)};b(f,p),e.hasTable(s)&&i(e.getRowIds(s),e=>{h(f,e)||p(e)}),m(!0),j(n),M(n,0,e.addRowListener(s,null,(e,t,n)=>p(n)),e.addTableListener(s,()=>m()))},C,e=>l(e,E),()=>b(D,C),M,j]})(l,0,0,M,j),K=(e,t,n)=>s(B(e),([s,,o])=>{if(!h(o,t)){const a=T();if(q(e)!=P(e))S(a,t);else{let e=t;for(;!r(e)&&!h(a,e);)S(a,e),e=y(s,e)}if(n)return a;k(o,t,a)}return y(o,t)}),N=(e,t)=>s(B(e),([,,e])=>k(e,t)),P=e=>y(c,e),Q={setRelationshipDefinition:(o,a,i,d)=>{return k(c,o,i),F(o,a,(e,t)=>{const n=T(),a=T(),i=T(),[d,l]=B(o);I(t,([e,t],c)=>{r(e)||(S(a,e),s(y(l,e),t=>{g(t,c),w(t)&&k(l,e)})),r(t)||(S(a,t),h(l,t)||k(l,t,T()),S(y(l,t),c)),S(n,c),k(d,c,t),b(y(D,o),e=>{h(K(o,e),c)&&S(i,e)})}),e(),I(n,e=>j(u,[o,e])),I(a,e=>j(A,[o,e])),I(i,e=>{N(o,e),j(D,[o,e])})},e(l=d)==n?e=>e(l):l??(()=>t)),Q;var l},delRelationshipDefinition:e=>(k(c,e),G(e),Q),getStore:C,getRelationshipIds:O,forEachRelationship:e=>W(t=>e(t,e=>l.forEachRow(q(t),e))),hasRelationship:$,getLocalTableId:q,getRemoteTableId:P,getRemoteRowId:(e,t)=>y(B(e)?.[0],t),getLocalRowIds:(e,t)=>f(y(B(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(B(e))?[t]:f(K(e,t,!0)),addRelationshipIdsListener:H,addRemoteRowIdListener:(e,t,n)=>M(n,u,[e,t]),addLocalRowIdsListener:(e,t,n)=>M(n,A,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(K(e,t),M(n,D,[e,t])),delListener:e=>(N(...x(e)??[]),Q),destroy:J,getListenerStats:()=>({remoteRowId:R(u),localRowIds:R(A),linkedRowIds:R(D)})};return p(Q)})(c)),l.get(c))})();export{A as createRelationships};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),r=e=>null==e,s=(e,t,n)=>r(e)?n?.():t(e),o=e=>Array.isArray(e),a=e=>e.length,i=(e,t)=>e.forEach(t),d=(e,...t)=>e.push(...t),l=e=>t=>{return n=(t,n)=>t+e(n),f(t).reduce(n,0);var n},c=e=>e?.size??0,u=l(c),R=l(u),h=(e,t)=>e?.has(t)??!1,w=e=>r(e)||0==c(e),f=e=>[...e?.values()??[]],L=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),p=Object.freeze,v=e=>new Map(e),y=(e,t)=>e?.get(t),b=(e,t)=>I(e,(
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),r=e=>null==e,s=(e,t,n)=>r(e)?n?.():t(e),o=e=>Array.isArray(e),a=e=>e.length,i=(e,t)=>e.forEach(t),d=(e,...t)=>e.push(...t),l=e=>t=>{return n=(t,n)=>t+e(n),f(t).reduce(n,0);var n},c=e=>e?.size??0,u=l(c),R=l(u),h=(e,t)=>e?.has(t)??!1,w=e=>r(e)||0==c(e),f=e=>[...e?.values()??[]],L=e=>e.clear(),I=(e,t)=>e?.forEach(t),g=(e,t)=>e?.delete(t),p=Object.freeze,v=e=>new Map(e),y=(e,t)=>e?.get(t),b=(e,t)=>I(e,(e,n)=>t(n,e)),k=(e,t,n)=>r(n)?(g(e,t),e):e?.set(t,n),m=(e,t,n,r)=>(h(e,t)?r?.(y(e,t)):k(e,t,n()),y(e,t)),E=(e,t,n,r,o=0)=>s((n?m:y)(e,t[o],o>a(t)-2?n:v),s=>{if(o>a(t)-2)return r?.(s)&&k(e,t[o]),s;const i=E(s,t,n,r,o+1);return w(s)&&k(e,t[o]),i}),T=e=>new Set(o(e)||r(e)?e:[e]),S=(e,t)=>e?.add(t),z=/^\d+$/,A=(()=>{const l=new WeakMap;return c=>(l.has(c)||l.set(c,(l=>{const c=v(),u=v(),A=v(),D=v(),[M,j,x]=(()=>{let e;const[n,o]=(()=>{const e=[];let n=0;return[r=>(r?e.shift():null)??t+n++,t=>{z.test(t)&&a(e)<1e3&&d(e,t)}]})(),l=v();return[(r,s,o,a=[],i=()=>[])=>{e??=Q;const d=n(1);return k(l,d,[r,s,o,a,i]),S(E(s,o??[t],T),d),d},(n,r,...s)=>i(((e,n=[t])=>{const r=[],s=(e,t)=>t==a(n)?d(r,e):null===n[t]?I(e,e=>s(e,t+1)):i([n[t],null],n=>s(y(e,n),t+1));return s(e,0),r})(n,r),t=>I(t,t=>y(l,t)[0](e,...r??[],...s))),e=>s(y(l,e),([,n,r])=>(E(n,r??[t],void 0,t=>(g(t,e),w(t)?1:0)),k(l,e),o(e),r)),t=>s(y(l,t),([t,,n=[],s,o])=>{const d=(...l)=>{const c=a(l);c==a(n)?t(e,...l,...o(l)):r(n[c])?i(s[c]?.(...l)??[],e=>d(...l,e)):d(...l,n[c])};d()})]})(),[C,O,W,$,q,B,,,F,G,H,J]=((e,n,d,l,c)=>{const u=e.hasRow,R=v(),p=v(),E=v(),z=v(),A=v(),D=v(),M=(t,n,...r)=>{const s=m(D,t,T);return i(r,t=>S(s,t)&&n&&e.callListener(t)),r},j=(t,...n)=>s(y(D,t),r=>{i(0==a(n)?f(r):n,t=>{e.delListener(t),g(r,t)}),w(r)&&k(D,t)}),x=(e,t)=>{k(R,e,t),h(p,e)||(k(p,e,[v(),v(),v(),v()]),k(z,e,v()),k(A,e,v()),c(E))},C=e=>{k(R,e),k(p,e),k(z,e),k(A,e),j(e),c(E)};return[()=>e,()=>{return e=R,[...e?.keys()??[]];var e},e=>b(p,e),e=>h(p,e),e=>y(R,e),e=>y(p,e),(e,t)=>k(p,e,t),x,(n,s,d,l,c)=>{x(n,s);const R=v(),w=v(),f=y(z,n),g=y(A,n),p=n=>{const i=t=>e.getCell(s,n,t),d=y(f,n),h=u(s,n)?(L=l(i,n),r(L)?void 0:L+t):void 0;var L,I,p,v;if(d===h||o(d)&&o(h)&&(p=h,a(I=d)===a(p)&&(v=(e,t)=>p[t]===e,I.every(v)))||k(R,n,[d,h]),!r(c)){const e=y(g,n),t=u(s,n)?c(i,n):void 0;e!=t&&k(w,n,t)}},m=e=>{d(()=>{I(R,([,e],t)=>k(f,t,e)),I(w,(e,t)=>k(g,t,e))},R,w,f,g,e),L(R),L(w)};b(f,p),e.hasTable(s)&&i(e.getRowIds(s),e=>{h(f,e)||p(e)}),m(!0),j(n),M(n,0,e.addRowListener(s,null,(e,t,n)=>p(n)),e.addTableListener(s,()=>m()))},C,e=>l(e,E),()=>b(D,C),M,j]})(l,0,0,M,j),K=(e,t,n)=>s(B(e),([s,,o])=>{if(!h(o,t)){const a=T();if(q(e)!=P(e))S(a,t);else{let e=t;for(;!r(e)&&!h(a,e);)S(a,e),e=y(s,e)}if(n)return a;k(o,t,a)}return y(o,t)}),N=(e,t)=>s(B(e),([,,e])=>k(e,t)),P=e=>y(c,e),Q={setRelationshipDefinition:(o,a,i,d)=>{return k(c,o,i),F(o,a,(e,t)=>{const n=T(),a=T(),i=T(),[d,l]=B(o);I(t,([e,t],c)=>{r(e)||(S(a,e),s(y(l,e),t=>{g(t,c),w(t)&&k(l,e)})),r(t)||(S(a,t),h(l,t)||k(l,t,T()),S(y(l,t),c)),S(n,c),k(d,c,t),b(y(D,o),e=>{h(K(o,e),c)&&S(i,e)})}),e(),I(n,e=>j(u,[o,e])),I(a,e=>j(A,[o,e])),I(i,e=>{N(o,e),j(D,[o,e])})},e(l=d)==n?e=>e(l):l??(()=>t)),Q;var l},delRelationshipDefinition:e=>(k(c,e),G(e),Q),getStore:C,getRelationshipIds:O,forEachRelationship:e=>W(t=>e(t,e=>l.forEachRow(q(t),e))),hasRelationship:$,getLocalTableId:q,getRemoteTableId:P,getRemoteRowId:(e,t)=>y(B(e)?.[0],t),getLocalRowIds:(e,t)=>f(y(B(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(B(e))?[t]:f(K(e,t,!0)),addRelationshipIdsListener:H,addRemoteRowIdListener:(e,t,n)=>M(n,u,[e,t]),addLocalRowIdsListener:(e,t,n)=>M(n,A,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(K(e,t),M(n,D,[e,t])),delListener:e=>(N(...x(e)??[]),Q),destroy:J,getListenerStats:()=>({remoteRowId:R(u),localRowIds:R(A),linkedRowIds:R(D)})};return p(Q)})(c)),l.get(c))})();export{A as createRelationships};
|
|
Binary file
|
package/min/store/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=e(0),n=e(e),o="type",r="default",i="Has",c="Ids",d="Table",u=d+"s",h=d+c,f="Row",g=f+"Count",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=e(0),n=e(e),o="type",r="default",i="Has",c="Ids",d="Table",u=d+"s",h=d+c,f="Row",g=f+"Count",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),e=>e==Q.prototype||m(U(e)),()=>!0),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),([e,s])=>t(s,e))})(e,(s,l)=>{t(s,l)||se(e,l)}),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,(e,s)=>t(s,e)),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,(t,l)=>s(e,l,t)),ce(e,s=>te(t,s)?0:l(e,s)),e),fe=(e,t,s,l)=>{const a={};return G(e,(e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}}),a},ge=(e,t,s)=>fe(e,e=>fe(e,t,s),$,ae),be=(e,t,s)=>fe(e,e=>ge(e,t,s),$,ae),Te=(e,t)=>{const s=oe();return G(e,(e,l)=>s.set(l,t?.(e)??e)),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o}),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,(e,t)=>t instanceof Map?Q.fromEntries([...t]):t),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,e=>a(e,t+1)):O([s[t],null],s=>a(ie(e,s),t+1));return a(e,0),l})(s,l),t=>G(t,t=>ie(a,t)[0](e,...l??[],...n))),e=>R(ie(a,e),([,s,n])=>(Ve(s,n??[t],void 0,t=>(K(t,e),$(t)?1:0)),de(a,e),l(e),n)),t=>R(ie(a,t),([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],e=>n(...o,e)):n(...o,s[r])};n()})]})(),Ct=e=>{if(!ne(e,(e,t)=>[o,r].includes(t)))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,(e,t)=>It(s,t,e),()=>Ut(s)),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),(l,a)=>R(St(e,t,a,l),e=>(s[a]=e,!0),()=>!1),()=>Ut(e,t)),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a,()=>Ut(t,s,l,a)):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),(t,s)=>R(Rt(s,t),t=>(e[s]=t,!0),()=>!1),()=>Xt()),Rt=(e,t)=>s?R(ie(Ne,e),s=>P(t)!=s[o]?Xt(e,t,s[r]):t,()=>Xt(e,t)):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),([l,a])=>{G(l,(t,s)=>{te(e,s)||(e[s]=t)}),G(a,l=>{te(e,l)||Ut(t,s,l)})}),e),yt=e=>(s&&(G(je,(t,s)=>{te(e,s)||(e[s]=t)}),G(xe,t=>{te(e,t)||Xt(t)})),e),Lt=e=>he(ke,e,(e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,(e,t,s)=>{de(e,t,s),R(s[r],e=>de(l,t,e),()=>ye(a,t))}),de(Ae,t,[l,a])},(e,t)=>{de(ke,t),de(Ae,t)}),Jt=e=>he(Ne,e,(e,t,s)=>{de(Ne,t,s),R(s[r],e=>de(je,t,e),()=>ye(xe,t))},(e,t)=>{de(Ne,t),de(je,t),K(xe,t)}),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,(e,t,s)=>Ot(t,s),(e,t)=>xt(t)),Ot=(e,t)=>he(ue(We,e,()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe())),t,(t,s,l)=>zt(e,t,s,l),(t,s)=>Dt(e,t,s)),zt=(e,t,s,l,a)=>he(ue(t,s,()=>(qt(e,s,1),oe())),l,(t,l,a)=>Mt(e,s,t,l,a),(l,n)=>Ht(e,t,s,l,n,a)),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),t=>Mt(e,s,t,l,a),()=>zt(e,t,s,pt({[l]:a},e,s))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,(e,t,s)=>Nt(t,s),(e,t)=>Wt(t)),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,()=>0)+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,()=>[l,0])[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,()=>[t,0])[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,()=>[]),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,()=>[]),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),([e,t])=>[!0,e,t],()=>[!1,...Le(fs(e,t,s))]),Zt=e=>R(ie(we,e),([e,t])=>[!0,e,t],()=>[!1,...Le(Ts(e))]),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,(t,s)=>G(t,(t,l)=>G(t,(t,a)=>bt(nt[e],[s,l,a],t)))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,(t,s)=>bt(ot[e],[s],t)),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,()=>fe(e)),ce(e,(e,t)=>bt(s,[...l??[],e],1==t)),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],(t,s)=>ts(t,Ue[e],Xe[e],[s])),G(t[2],(t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))});const l=pe();G(t[3],(t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))}),s||G(t[5],(t,s)=>{if(!W(l,s)){const l=pe();G(t,e=>G(e,([t,s],a)=>s!==t?ye(l,a):K(e,a))),G(l,t=>bt(_e[e],[s,t]))}}),G(t[4],(t,s)=>G(t,(t,l)=>ts(t,st[e],lt[e],[s,l])))}if(!n){let s;G(t[5],(t,l)=>{let a;G(t,(t,n)=>{let o;G(t,([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)}),o&&bt(tt[e],[l,n],Yt)}),a&&bt(Qe[e],[l],Yt)}),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)}),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks(()=>e(...z(t,I))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt(()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))},_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],([e,t])=>r(t,e)).sort(n)),l,m(a)?a:l+a),([,e])=>e);var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as(()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0),ps=e=>as(()=>mt(e)?At(e):0),ys=e=>(F(()=>Et(Ie(e))),js),Ls=t=>as(()=>{if((e=ne(t,e=>ne(e,Ct)))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}}),Js=e=>as(()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}}),Es=()=>as(()=>Ft({})),Fs=e=>as(e=>W(We,e)?xt(e):0,e),Os=(e,t)=>as((e,t)=>R(ie(We,e),s=>W(s,t)?Dt(e,s,t):0),e,t),zs=()=>as(()=>At({})),Ms=()=>as(()=>{Lt({}),e=!1}),Ps=()=>as(()=>{Jt({}),s=!1}),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,(e,t)=>G(e,(e,s)=>G(e,([e],l)=>k(js,t,s,l,e)))),B(Y),G(we,([e],t)=>A(js,t,e)),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as(()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)}),setTables:Rs,setTable:(e,t)=>as(e=>wt(t,e)?Ot(e,t):0,e),setRow:(e,t,s)=>as((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0,e,t),addRow:(e,t,s=!0)=>ks(()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l}),setPartialRow:(e,t,s)=>as((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,(s,a)=>Pt(e,l,t,a,s))}},e,t),setCell:(e,t,s,l)=>as((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),l=>Pt(e,jt(e),t,s,l)),e,t,s),setValues:ps,setPartialValues:e=>as(()=>mt(e,1)?le(e,(e,t)=>Nt(t,e)):0),setValue:(e,t)=>as(e=>R(Rt(e,y(t)?t(Ts(e)):t),t=>Nt(e,t)),e),applyChanges:e=>as(()=>{le(e[0],(e,t)=>m(e)?Fs(t):le(e,(e,s)=>m(e)?Os(t,s):le(e,(e,l)=>k(js,t,s,l,e)))),le(e[1],(e,t)=>A(js,t,e))}),setTablesJson:ys,setValuesJson:e=>(F(()=>kt(Ie(e))),js),setJson:e=>as(()=>F(()=>{const[t,s]=Ie(e);Et(t),kt(s)},()=>ys(e))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as(()=>{Ls(e),Js(t)}),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as((e,t,s)=>R(ie(We,e),a=>R(ie(a,t),n=>W(n,s)?Ht(e,a,t,n,s,l):0)),e,t,s),delValues:zs,delValue:e=>as(e=>W($e,e)?Wt(e):0,e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as(()=>{Ms(),Ps()}),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,(e,t)=>-1===ie(N,t)?void 0:fe(e,(e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,([,e])=>e,e=>Oe(e)),$,ae),$,ae),fe(we,([,e])=>e,e=>Oe(e)),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,(t,s)=>e(s,e=>G(t,(t,s)=>e(s,e=>ce(t,e))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),(e,s)=>t(s,t=>ce(e,t))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)}),ee(js)};export{Me as createStore};
|
package/min/store/index.js.gz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=e(0),n=e(e),o="type",r="default",i="Has",c="Ids",d="Table",u=d+"s",h=d+c,f="Row",g=f+"Count",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),(e=>e==Q.prototype||m(U(e))),(()=>!0)),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),(([e,s])=>t(s,e))))(e,((e,s)=>[s,t(e,s)]))),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),(([e,s])=>t(s,e)))})(e,((s,l)=>{t(s,l)||se(e,l)})),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,((e,s)=>t(s,e))),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,((t,l)=>s(e,l,t))),ce(e,(s=>te(t,s)?0:l(e,s))),e),fe=(e,t,s,l)=>{const a={};return G(e,((e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}})),a},ge=(e,t,s)=>fe(e,(e=>fe(e,t,s)),$,ae),be=(e,t,s)=>fe(e,(e=>ge(e,t,s)),$,ae),Te=(e,t)=>{const s=oe();return G(e,((e,l)=>s.set(l,t?.(e)??e))),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),(n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o})),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,((e,t)=>t instanceof Map?Q.fromEntries([...t]):t)),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,(e=>a(e,t+1))):O([s[t],null],(s=>a(ie(e,s),t+1)));return a(e,0),l})(s,l),(t=>G(t,(t=>ie(a,t)[0](e,...l??[],...n))))),e=>R(ie(a,e),(([,s,n])=>(Ve(s,n??[t],void 0,(t=>(K(t,e),$(t)?1:0))),de(a,e),l(e),n))),t=>R(ie(a,t),(([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ct=e=>{if(!ne(e,((e,t)=>[o,r].includes(t))))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,((e,t)=>It(s,t,e)),(()=>Ut(s))),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),((l,a)=>R(St(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>Ut(e,t))),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),(e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a),(()=>Ut(t,s,l,a))):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),((t,s)=>R(Rt(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Xt())),Rt=(e,t)=>s?R(ie(Ne,e),(s=>P(t)!=s[o]?Xt(e,t,s[r]):t),(()=>Xt(e,t))):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),(([l,a])=>{G(l,((t,s)=>{te(e,s)||(e[s]=t)})),G(a,(l=>{te(e,l)||Ut(t,s,l)}))})),e),yt=e=>(s&&(G(je,((t,s)=>{te(e,s)||(e[s]=t)})),G(xe,(t=>{te(e,t)||Xt(t)}))),e),Lt=e=>he(ke,e,((e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,((e,t,s)=>{de(e,t,s),R(s[r],(e=>de(l,t,e)),(()=>ye(a,t)))})),de(Ae,t,[l,a])}),((e,t)=>{de(ke,t),de(Ae,t)})),Jt=e=>he(Ne,e,((e,t,s)=>{de(Ne,t,s),R(s[r],(e=>de(je,t,e)),(()=>ye(xe,t)))}),((e,t)=>{de(Ne,t),de(je,t),K(xe,t)})),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,((e,t,s)=>Ot(t,s)),((e,t)=>xt(t))),Ot=(e,t)=>he(ue(We,e,(()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe()))),t,((t,s,l)=>zt(e,t,s,l)),((t,s)=>Dt(e,t,s))),zt=(e,t,s,l,a)=>he(ue(t,s,(()=>(qt(e,s,1),oe()))),l,((t,l,a)=>Mt(e,s,t,l,a)),((l,n)=>Ht(e,t,s,l,n,a))),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),(t=>Mt(e,s,t,l,a)),(()=>zt(e,t,s,pt({[l]:a},e,s)))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,((e,t,s)=>Nt(t,s)),((e,t)=>Wt(t))),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,(()=>0))+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,(()=>[l,0]))[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,(()=>[t,0]))[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,(()=>[])),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,(()=>[])),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(fs(e,t,s))])),Zt=e=>R(ie(we,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Le(Ts(e))])),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,((t,s)=>G(t,((t,l)=>G(t,((t,a)=>bt(nt[e],[s,l,a],t))))))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,((t,s)=>bt(ot[e],[s],t))),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,(()=>fe(e))),ce(e,((e,t)=>bt(s,[...l??[],e],1==t))),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],((t,s)=>ts(t,Ue[e],Xe[e],[s]))),G(t[2],((t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))}));const l=pe();G(t[3],((t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))})),s||G(t[5],((t,s)=>{if(!W(l,s)){const l=pe();G(t,(e=>G(e,(([t,s],a)=>s!==t?ye(l,a):K(e,a))))),G(l,(t=>bt(_e[e],[s,t])))}})),G(t[4],((t,s)=>G(t,((t,l)=>ts(t,st[e],lt[e],[s,l])))))}if(!n){let s;G(t[5],((t,l)=>{let a;G(t,((t,n)=>{let o;G(t,(([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)})),o&&bt(tt[e],[l,n],Yt)})),a&&bt(Qe[e],[l],Yt)})),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],(([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)})),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks((()=>e(...z(t,I)))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt((()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))}),_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,m(a)?a:l+a),(([,e])=>e));var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as((()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0)),ps=e=>as((()=>mt(e)?At(e):0)),ys=e=>(F((()=>Et(Ie(e)))),js),Ls=t=>as((()=>{if((e=ne(t,(e=>ne(e,Ct))))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}})),Js=e=>as((()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}})),Es=()=>as((()=>Ft({}))),Fs=e=>as((e=>W(We,e)?xt(e):0),e),Os=(e,t)=>as(((e,t)=>R(ie(We,e),(s=>W(s,t)?Dt(e,s,t):0))),e,t),zs=()=>as((()=>At({}))),Ms=()=>as((()=>{Lt({}),e=!1})),Ps=()=>as((()=>{Jt({}),s=!1})),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,((e,t)=>G(e,((e,s)=>G(e,(([e],l)=>k(js,t,s,l,e))))))),B(Y),G(we,(([e],t)=>A(js,t,e))),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as((()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)})),setTables:Rs,setTable:(e,t)=>as((e=>wt(t,e)?Ot(e,t):0),e),setRow:(e,t,s)=>as(((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ks((()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>as(((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,((s,a)=>Pt(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>as(((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),(l=>Pt(e,jt(e),t,s,l)))),e,t,s),setValues:ps,setPartialValues:e=>as((()=>mt(e,1)?le(e,((e,t)=>Nt(t,e))):0)),setValue:(e,t)=>as((e=>R(Rt(e,y(t)?t(Ts(e)):t),(t=>Nt(e,t)))),e),applyChanges:e=>as((()=>{le(e[0],((e,t)=>m(e)?Fs(t):le(e,((e,s)=>m(e)?Os(t,s):le(e,((e,l)=>k(js,t,s,l,e))))))),le(e[1],((e,t)=>A(js,t,e)))})),setTablesJson:ys,setValuesJson:e=>(F((()=>kt(Ie(e)))),js),setJson:e=>as((()=>F((()=>{const[t,s]=Ie(e);Et(t),kt(s)}),(()=>ys(e))))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as((()=>{Ls(e),Js(t)})),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as(((e,t,s)=>R(ie(We,e),(a=>R(ie(a,t),(n=>W(n,s)?Ht(e,a,t,n,s,l):0))))),e,t,s),delValues:zs,delValue:e=>as((e=>W($e,e)?Wt(e):0),e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as((()=>{Ms(),Ps()})),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,((e,t)=>-1===ie(N,t)?void 0:fe(e,((e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,(([,e])=>e),(e=>Oe(e)))),$,ae)),$,ae),fe(we,(([,e])=>e),(e=>Oe(e))),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,((t,s)=>e(s,(e=>G(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},(([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)})),ee(js)};export{Me as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),l=e(!0),a=e(0),n=e(e),o="type",r="default",i="Has",c="Ids",d="Table",u=d+"s",h=d+c,f="Row",g=f+"Count",b=f+c,T="Cell",v=T+c,C="Value",V=C+"s",w=C+c,I=e=>t+e,S=isFinite,m=e=>null==e,R=(e,t,s)=>m(e)?s?.():t(e),p=e=>e==s||e==l,y=t=>e(t)==n,L=e=>Array.isArray(e),J=(e,t,s)=>e.slice(t,s),E=e=>e.length,F=async(e,t,s)=>{try{return await e()}catch(e){t?.(e)}},O=(e,t)=>e.forEach(t),z=(e,t)=>e.map(t),M=(e,...t)=>e.push(...t),P=t=>{const s=e(t);return p(s)||s==a&&S(t)?s:void 0},k=(e,t,s,l,a)=>m(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),A=(e,t,s)=>m(s)?e.delValue(t):e.setValue(t,s),N=e=>t=>{return s=(t,s)=>t+e(s),q(t).reduce(s,0);var s},j=e=>e?.size??0,x=N(j),D=N(x),H=N(D),W=(e,t)=>e?.has(t)??!1,$=e=>m(e)||0==j(e),q=e=>[...e?.values()??[]],B=e=>e.clear(),G=(e,t)=>e?.forEach(t),K=(e,t)=>e?.delete(t),Q=Object,U=e=>Q.getPrototypeOf(e),X=Q.isFrozen,Y=Q.entries,Z=e=>!m(e)&&R(U(e),e=>e==Q.prototype||m(U(e)),()=>!0),_=Q.keys,ee=Q.freeze,te=(e,t)=>t in e,se=(e,t)=>(delete e[t],e),le=(e,t)=>((e=[])=>Q.fromEntries(e))(((e,t)=>z(Y(e),([e,s])=>t(s,e)))(e,(e,s)=>[s,t(e,s)])),ae=e=>Z(e)&&0==(e=>E(_(e)))(e),ne=(e,t,s,l=0)=>m(e)||!Z(e)||!l&&ae(e)||X(e)?(s?.(),!1):(((e,t)=>{O(Y(e),([e,s])=>t(s,e))})(e,(s,l)=>{t(s,l)||se(e,l)}),!!l||!ae(e)),oe=e=>new Map(e),re=e=>[...e?.keys()??[]],ie=(e,t)=>e?.get(t),ce=(e,t)=>G(e,(e,s)=>t(s,e)),de=(e,t,s)=>m(s)?(K(e,t),e):e?.set(t,s),ue=(e,t,s,l)=>(W(e,t)?l?.(ie(e,t)):de(e,t,s()),ie(e,t)),he=(e,t,s,l=de)=>(le(t,(t,l)=>s(e,l,t)),ce(e,s=>te(t,s)?0:l(e,s)),e),fe=(e,t,s,l)=>{const a={};return G(e,(e,n)=>{if(!s?.(e,n)){const s=t?t(e,n):e;l?.(s)||(a[n]=s)}}),a},ge=(e,t,s)=>fe(e,e=>fe(e,t,s),$,ae),be=(e,t,s)=>fe(e,e=>ge(e,t,s),$,ae),Te=(e,t)=>{const s=oe();return G(e,(e,l)=>s.set(l,t?.(e)??e)),s},ve=e=>Te(e,Te),Ce=e=>Te(e,ve),Ve=(e,t,s,l,a=0)=>R((s?ue:ie)(e,t[a],a>E(t)-2?s:oe),n=>{if(a>E(t)-2)return l?.(n)&&de(e,t[a]),n;const o=Ve(n,t,s,l,a+1);return $(n)&&de(e,t[a]),o}),we=JSON.stringify,Ie=JSON.parse,Se=e=>we(e,(e,t)=>t instanceof Map?Q.fromEntries([...t]):t),me=/^\d+$/,Re=()=>{const e=[];let s=0;return[l=>(l?e.shift():null)??t+s++,t=>{me.test(t)&&E(e)<1e3&&M(e,t)}]},pe=e=>new Set(L(e)||m(e)?e:[e]),ye=(e,t)=>e?.add(t),Le=e=>[e,e],Je=(e,t=x)=>t(e[0])+t(e[1]),Ee=()=>[oe(),oe()],Fe=e=>[...e],Oe=([e,t])=>e===t,ze=(e,t,s)=>de(e,t,ie(e,t)==-s?void 0:s),Me=()=>{let e,s,l=!1,n=!1,c=0,S=[];const N=oe(),q=oe(),Q=oe(),U=oe(),X=oe(),Y=oe(),_=oe(),we=oe(),me=oe(),Pe=oe(),ke=oe(),Ae=oe(),Ne=oe(),je=oe(),xe=pe(),De=oe(),He=oe(),We=oe(),$e=oe(),qe=Ee(),Be=Ee(),Ge=Ee(),Ke=Ee(),Qe=Ee(),Ue=Ee(),Xe=Ee(),Ye=Ee(),Ze=Ee(),_e=Ee(),et=Ee(),tt=Ee(),st=Ee(),lt=Ee(),at=Ee(),nt=Ee(),ot=Ee(),rt=Ee(),it=Ee(),ct=Ee(),dt=Ee(),ut=Ee(),ht=oe(),ft=Ee(),[gt,bt,Tt,vt]=(()=>{let e;const[s,l]=Re(),a=oe();return[(l,n,o,r=[],i=()=>[])=>{e??=js;const c=s(1);return de(a,c,[l,n,o,r,i]),ye(Ve(n,o??[t],pe),c),c},(s,l,...n)=>O(((e,s=[t])=>{const l=[],a=(e,t)=>t==E(s)?M(l,e):null===s[t]?G(e,e=>a(e,t+1)):O([s[t],null],s=>a(ie(e,s),t+1));return a(e,0),l})(s,l),t=>G(t,t=>ie(a,t)[0](e,...l??[],...n))),e=>R(ie(a,e),([,s,n])=>(Ve(s,n??[t],void 0,t=>(K(t,e),$(t)?1:0)),de(a,e),l(e),n)),t=>R(ie(a,t),([t,,s=[],l,a])=>{const n=(...o)=>{const r=E(o);r==E(s)?t(e,...o,...a(o)):m(s[r])?O(l[r]?.(...o)??[],e=>n(...o,e)):n(...o,s[r])};n()})]})(),Ct=e=>{if(!ne(e,(e,t)=>[o,r].includes(t)))return!1;const t=e[o];return!(!p(t)&&t!=a||(P(e[r])!=t&&se(e,r),0))},Vt=L,wt=(t,s)=>(!e||W(ke,s)||Ut(s))&&ne(t,(e,t)=>It(s,t,e),()=>Ut(s)),It=(e,t,s,l)=>ne(l?s:pt(s,e,t),(l,a)=>R(St(e,t,a,l),e=>(s[a]=e,!0),()=>!1),()=>Ut(e,t)),St=(t,s,l,a)=>e?R(ie(ie(ke,t),l),e=>P(a)!=e[o]?Ut(t,s,l,a,e[r]):a,()=>Ut(t,s,l,a)):m(P(a))?Ut(t,s,l,a):a,mt=(e,t)=>ne(t?e:yt(e),(t,s)=>R(Rt(s,t),t=>(e[s]=t,!0),()=>!1),()=>Xt()),Rt=(e,t)=>s?R(ie(Ne,e),s=>P(t)!=s[o]?Xt(e,t,s[r]):t,()=>Xt(e,t)):m(P(t))?Xt(e,t):t,pt=(e,t,s)=>(R(ie(Ae,t),([l,a])=>{G(l,(t,s)=>{te(e,s)||(e[s]=t)}),G(a,l=>{te(e,l)||Ut(t,s,l)})}),e),yt=e=>(s&&(G(je,(t,s)=>{te(e,s)||(e[s]=t)}),G(xe,t=>{te(e,t)||Xt(t)})),e),Lt=e=>he(ke,e,(e,t,s)=>{const l=oe(),a=pe();he(ue(ke,t,oe),s,(e,t,s)=>{de(e,t,s),R(s[r],e=>de(l,t,e),()=>ye(a,t))}),de(Ae,t,[l,a])},(e,t)=>{de(ke,t),de(Ae,t)}),Jt=e=>he(Ne,e,(e,t,s)=>{de(Ne,t,s),R(s[r],e=>de(je,t,e),()=>ye(xe,t))},(e,t)=>{de(Ne,t),de(je,t),K(xe,t)}),Et=e=>ae(e)?Es():Rs(e),Ft=e=>he(We,e,(e,t,s)=>Ot(t,s),(e,t)=>xt(t)),Ot=(e,t)=>he(ue(We,e,()=>($t(e,1),de(De,e,Re()),de(He,e,oe()),oe())),t,(t,s,l)=>zt(e,t,s,l),(t,s)=>Dt(e,t,s)),zt=(e,t,s,l,a)=>he(ue(t,s,()=>(qt(e,s,1),oe())),l,(t,l,a)=>Mt(e,s,t,l,a),(l,n)=>Ht(e,t,s,l,n,a)),Mt=(e,t,s,l,a)=>{W(s,l)||Bt(e,t,l,1);const n=ie(s,l);a!==n&&(Gt(e,t,l,n,a),de(s,l,a))},Pt=(e,t,s,l,a)=>R(ie(t,s),t=>Mt(e,s,t,l,a),()=>zt(e,t,s,pt({[l]:a},e,s))),kt=e=>ae(e)?zs():ps(e),At=e=>he($e,e,(e,t,s)=>Nt(t,s),(e,t)=>Wt(t)),Nt=(e,t)=>{W($e,e)||Kt(e,1);const s=ie($e,e);t!==s&&(Qt(e,s,t),de($e,e,t))},jt=e=>ie(We,e)??Ot(e,{}),xt=e=>Ot(e,{}),Dt=(e,t,s)=>{const[,l]=ie(De,e);l(s),zt(e,t,s,{},!0)},Ht=(e,t,s,l,a,n)=>{const o=ie(ie(Ae,e)?.[0],a);if(!m(o)&&!n)return Mt(e,s,l,a,o);const r=t=>{Gt(e,s,t,ie(l,t)),Bt(e,s,t,-1),de(l,t)};m(o)?r(a):ce(l,r),$(l)&&(qt(e,s,-1),$(de(t,s))&&($t(e,-1),de(We,e),de(De,e),de(He,e)))},Wt=e=>{const t=ie(je,e);if(!m(t))return Nt(e,t);Qt(e,ie($e,e)),Kt(e,-1),de($e,e)},$t=(e,t)=>ze(N,e,t),qt=(e,t,s)=>ze(ue(U,e,oe),t,s)&&de(Q,e,ue(Q,e,()=>0)+s),Bt=(e,t,s,l)=>{const a=ie(He,e),n=ie(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ze(ue(q,e,oe),s,l),de(a,s,n!=-l?n+l:null),ze(ue(ue(X,e,oe),t,oe),s,l)},Gt=(e,t,s,l,a)=>{ue(ue(ue(Y,e,oe),t,oe),s,()=>[l,0])[1]=a,S[3]?.(e,t,s,a)},Kt=(e,t)=>ze(_,e,t),Qt=(e,t,s)=>{ue(we,e,()=>[t,0])[1]=s,S[4]?.(e,s)},Ut=(e,t,s,l,a)=>(M(ue(ue(ue(me,e,oe),t,oe),s,()=>[]),l),a),Xt=(e,t,s)=>(M(ue(Pe,e,()=>[]),t),s),Yt=(e,t,s)=>R(ie(ie(ie(Y,e),t),s),([e,t])=>[!0,e,t],()=>[!1,...Le(fs(e,t,s))]),Zt=e=>R(ie(we,e),([e,t])=>[!0,e,t],()=>[!1,...Le(Ts(e))]),_t=e=>$(me)||$(nt[e])?0:G(e?Ce(me):me,(t,s)=>G(t,(t,l)=>G(t,(t,a)=>bt(nt[e],[s,l,a],t)))),es=e=>$(Pe)||$(ot[e])?0:G(e?Te(Pe):Pe,(t,s)=>bt(ot[e],[s],t)),ts=(e,t,s,l)=>{if(!$(e))return bt(t,l,()=>fe(e)),ce(e,(e,t)=>bt(s,[...l??[],e],1==t)),1},ss=e=>{const t=vs();t!=l&&bt(qe[e],void 0,t);const s=$(_e[e]),a=$(st[e])&&$(lt[e])&&$(Ze[e])&&$(et[e])&&$(Ue[e])&&$(Xe[e])&&$(Ye[e])&&s&&$(Ge[e])&&$(Ke[e]),n=$(at[e])&&$(tt[e])&&$(Qe[e])&&$(Be[e]);if(!a||!n){const t=e?[Te(N),ve(q),Te(Q),ve(U),Ce(X),Ce(Y)]:[N,q,Q,U,X,Y];if(!a){ts(t[0],Ge[e],Ke[e]),G(t[1],(t,s)=>ts(t,Ue[e],Xe[e],[s])),G(t[2],(t,s)=>{0!=t&&bt(Ye[e],[s],cs(s))});const l=pe();G(t[3],(t,a)=>{ts(t,Ze[e],et[e],[a])&&!s&&(bt(_e[e],[a,null]),ye(l,a))}),s||G(t[5],(t,s)=>{if(!W(l,s)){const l=pe();G(t,e=>G(e,([t,s],a)=>s!==t?ye(l,a):K(e,a))),G(l,t=>bt(_e[e],[s,t]))}}),G(t[4],(t,s)=>G(t,(t,l)=>ts(t,st[e],lt[e],[s,l])))}if(!n){let s;G(t[5],(t,l)=>{let a;G(t,(t,n)=>{let o;G(t,([t,r],i)=>{r!==t&&(bt(at[e],[l,n,i],r,t,Yt),s=a=o=1)}),o&&bt(tt[e],[l,n],Yt)}),a&&bt(Qe[e],[l],Yt)}),s&&bt(Be[e],void 0,Yt)}}},ls=e=>{const t=Ss();t!=n&&bt(rt[e],void 0,t);const s=$(ct[e])&&$(dt[e]),l=$(ut[e])&&$(it[e]);if(!s||!l){const t=e?[Te(_),Te(we)]:[_,we];if(s||ts(t[0],ct[e],dt[e]),!l){let s;G(t[1],([t,l],a)=>{l!==t&&(bt(ut[e],[a],l,t,Zt),s=1)}),s&&bt(it[e],void 0,Zt)}}},as=(e,...t)=>(ks(()=>e(...z(t,I))),js),ns=(e,t,s,l,a)=>{let n=us(e,t,...s);return gt(()=>{const a=us(e,t,...s);var o,r,i;r=n,E(o=a)===E(r)&&(i=(e,t)=>r[t]===e,o.every(i))||(n=a,l(js,e,t,...s,n))},_e[a?1:0],[e,t],[rs])},os=()=>be(We),rs=()=>re(We),is=e=>re(ie(He,I(e))),cs=e=>j(ie(We,I(e))),ds=e=>re(ie(We,I(e))),us=(e,t,s,l=0,a)=>{return Z(e)?us(e.tableId,e.cellId,e.descending,e.offset,e.limit):z(J((o=ie(We,I(e)),r=(e,s)=>[m(t)?s:ie(e,I(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),z([...o?.entries()??[]],([e,t])=>r(t,e)).sort(n)),l,m(a)?a:l+a),([,e])=>e);var n,o,r},hs=(e,t)=>re(ie(ie(We,I(e)),I(t))),fs=(e,t,s)=>ie(ie(ie(We,I(e)),I(t)),I(s)),gs=()=>fe($e),bs=()=>re($e),Ts=e=>ie($e,I(e)),vs=()=>!$(We),Cs=e=>W(We,I(e)),Vs=(e,t)=>W(ie(He,I(e)),I(t)),ws=(e,t)=>W(ie(We,I(e)),I(t)),Is=(e,t,s)=>W(ie(ie(We,I(e)),I(t)),I(s)),Ss=()=>!$($e),ms=e=>W($e,I(e)),Rs=e=>as(()=>(e=>ne(e,wt,Ut))(e)?Ft(e):0),ps=e=>as(()=>mt(e)?At(e):0),ys=e=>(F(()=>Et(Ie(e))),js),Ls=t=>as(()=>{if((e=ne(t,e=>ne(e,Ct)))&&(Lt(t),!$(We))){const e=os();Es(),Rs(e)}}),Js=e=>as(()=>{if(s=(e=>ne(e,Ct))(e)){const t=gs();Ps(),zs(),s=!0,Jt(e),ps(t)}}),Es=()=>as(()=>Ft({})),Fs=e=>as(e=>W(We,e)?xt(e):0,e),Os=(e,t)=>as((e,t)=>R(ie(We,e),s=>W(s,t)?Dt(e,s,t):0),e,t),zs=()=>as(()=>At({})),Ms=()=>as(()=>{Lt({}),e=!1}),Ps=()=>as(()=>{Jt({}),s=!1}),ks=(e,t)=>{if(-1!=c){As();const s=e();return Ns(t),s}},As=()=>(-1!=c&&c++,1==c&&(S[0]?.(),bt(ht)),js),Ns=e=>(c>0&&(c--,0==c&&(c=1,_t(1),$(Y)||ss(1),es(1),$(we)||ls(1),e?.(js)&&(G(Y,(e,t)=>G(e,(e,s)=>G(e,([e],l)=>k(js,t,s,l,e)))),B(Y),G(we,([e],t)=>A(js,t,e)),B(we)),bt(ft[0],void 0),c=-1,_t(0),$(Y)||ss(0),es(0),$(we)||ls(0),S[1]?.(),bt(ft[1],void 0),S[2]?.(),c=0,l=vs(),n=Ss(),O([N,q,Q,U,X,Y,me,_,we,Pe],B))),js),js={getContent:()=>[os(),gs()],getTables:os,getTableIds:rs,getTable:e=>ge(ie(We,I(e))),getTableCellIds:is,getRowCount:cs,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>fe(ie(ie(We,I(e)),I(t))),getCellIds:hs,getCell:fs,getValues:gs,getValueIds:bs,getValue:Ts,hasTables:vs,hasTable:Cs,hasTableCell:Vs,hasRow:ws,hasCell:Is,hasValues:Ss,hasValue:ms,getTablesJson:()=>Se(We),getValuesJson:()=>Se($e),getJson:()=>Se([We,$e]),getTablesSchemaJson:()=>Se(ke),getValuesSchemaJson:()=>Se(Ne),getSchemaJson:()=>Se([ke,Ne]),hasTablesSchema:()=>e,hasValuesSchema:()=>s,setContent:e=>as(()=>{const t=y(e)?e():e;Vt(t)&&(([e,t])=>{(ae(e)?Es:Rs)(e),(ae(t)?zs:ps)(t)})(t)}),setTables:Rs,setTable:(e,t)=>as(e=>wt(t,e)?Ot(e,t):0,e),setRow:(e,t,s)=>as((e,t)=>It(e,t,s)?zt(e,jt(e),t,s):0,e,t),addRow:(e,t,s=!0)=>ks(()=>{let l;return It(e,l,t)&&(e=I(e),zt(e,jt(e),l=((e,t)=>{const[s]=ie(De,e);let l;do{l=s(t)}while(W(ie(We,e),l));return l})(e,s?1:0),t)),l}),setPartialRow:(e,t,s)=>as((e,t)=>{if(It(e,t,s,1)){const l=jt(e);le(s,(s,a)=>Pt(e,l,t,a,s))}},e,t),setCell:(e,t,s,l)=>as((e,t,s)=>R(St(e,t,s,y(l)?l(fs(e,t,s)):l),l=>Pt(e,jt(e),t,s,l)),e,t,s),setValues:ps,setPartialValues:e=>as(()=>mt(e,1)?le(e,(e,t)=>Nt(t,e)):0),setValue:(e,t)=>as(e=>R(Rt(e,y(t)?t(Ts(e)):t),t=>Nt(e,t)),e),applyChanges:e=>as(()=>{le(e[0],(e,t)=>m(e)?Fs(t):le(e,(e,s)=>m(e)?Os(t,s):le(e,(e,l)=>k(js,t,s,l,e)))),le(e[1],(e,t)=>A(js,t,e))}),setTablesJson:ys,setValuesJson:e=>(F(()=>kt(Ie(e))),js),setJson:e=>as(()=>F(()=>{const[t,s]=Ie(e);Et(t),kt(s)},()=>ys(e))),setTablesSchema:Ls,setValuesSchema:Js,setSchema:(e,t)=>as(()=>{Ls(e),Js(t)}),delTables:Es,delTable:Fs,delRow:Os,delCell:(e,t,s,l)=>as((e,t,s)=>R(ie(We,e),a=>R(ie(a,t),n=>W(n,s)?Ht(e,a,t,n,s,l):0)),e,t,s),delValues:zs,delValue:e=>as(e=>W($e,e)?Wt(e):0,e),delTablesSchema:Ms,delValuesSchema:Ps,delSchema:()=>as(()=>{Ms(),Ps()}),transaction:ks,startTransaction:As,getTransactionChanges:()=>[fe(Y,(e,t)=>-1===ie(N,t)?void 0:fe(e,(e,s)=>-1===ie(ie(U,t),s)?void 0:fe(e,([,e])=>e,e=>Oe(e)),$,ae),$,ae),fe(we,([,e])=>e,e=>Oe(e)),1],getTransactionLog:()=>[!$(Y),!$(we),be(Y,Fe,Oe),be(me),fe(we,Fe,Oe),fe(Pe),fe(N),ge(U),be(X),fe(_)],finishTransaction:Ns,forEachTable:e=>G(We,(t,s)=>e(s,e=>G(t,(t,s)=>e(s,e=>ce(t,e))))),forEachTableCell:(e,t)=>ce(ie(He,I(e)),t),forEachRow:(e,t)=>G(ie(We,I(e)),(e,s)=>t(s,t=>ce(e,t))),forEachCell:(e,t,s)=>ce(ie(ie(We,I(e)),I(t)),s),forEachValue:e=>ce($e,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>Z(e)?ns(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,s):ns(e,t,[s,l,a],n,o),addStartTransactionListener:e=>gt(e,ht),addWillFinishTransactionListener:e=>gt(e,ft[0]),addDidFinishTransactionListener:e=>gt(e,ft[1]),callListener:e=>(vt(e),js),delListener:e=>(Tt(e),js),getListenerStats:()=>({hasTables:Je(qe),tables:Je(Be),tableIds:Je(Ge),hasTable:Je(Ke),table:Je(Qe),tableCellIds:Je(Ue),hasTableCell:Je(Xe,D),rowCount:Je(Ye),rowIds:Je(Ze),sortedRowIds:Je(_e),hasRow:Je(et,D),row:Je(tt,D),cellIds:Je(st,D),hasCell:Je(lt,H),cell:Je(at,H),invalidCell:Je(nt,H),hasValues:Je(rt),values:Je(it),valueIds:Je(ct),hasValue:Je(dt),value:Je(ut),invalidValue:Je(ot),transaction:x(ht)+Je(ft)}),isMergeable:()=>!1,createStore:Me,addListener:gt,callListeners:bt,setInternalListeners:(e,t,s,l,a)=>S=[e,t,s,l,a]};return le({[i+u]:[0,qe,[],()=>[vs()]],[u]:[0,Be],[h]:[0,Ge],[i+d]:[1,Ke,[rs],e=>[Cs(...e)]],[d]:[1,Qe,[rs]],[d+v]:[1,Ue,[rs]],[i+d+T]:[2,Xe,[rs,is],e=>[Vs(...e)]],[g]:[1,Ye,[rs]],[b]:[1,Ze,[rs]],[i+f]:[2,et,[rs,ds],e=>[ws(...e)]],[f]:[2,tt,[rs,ds]],[v]:[2,st,[rs,ds]],[i+T]:[3,lt,[rs,ds,hs],e=>[Is(...e)]],[T]:[3,at,[rs,ds,hs],e=>Le(fs(...e))],InvalidCell:[3,nt],[i+V]:[0,rt,[],()=>[Ss()]],[V]:[0,it],[w]:[0,ct],[i+C]:[1,dt,[bs],e=>[ms(...e)]],[C]:[1,ut,[bs],e=>Le(Ts(e[0]))],InvalidValue:[1,ot]},([e,t,s,l],a)=>{js["add"+a+"Listener"]=(...a)=>gt(a[e],t[a[e+1]?1:0],e>0?J(a,0,e):void 0,s,l)}),ee(js)};export{Me as createStore};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=Math,s=n.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),f=(t,e)=>t?.forEach(e),h=(t,e)=>t?.delete(e),p=Object,b=t=>p.getPrototypeOf(t),v=p.entries,C=p.keys,M=p.freeze,A=(t,e)=>u(v(t),(
|
|
1
|
+
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=Math,s=n.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),f=(t,e)=>t?.forEach(e),h=(t,e)=>t?.delete(e),p=Object,b=t=>p.getPrototypeOf(t),v=p.entries,C=p.keys,M=p.freeze,A=(t,e)=>u(v(t),([t,a])=>e(a,t)),S=t=>(t=>!o(t)&&r(b(t),t=>t==p.prototype||o(b(t)),()=>!0))(t)&&0==(t=>c(C(t)))(t),D=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),H=t=>new Map(t),T=(t,e)=>t?.get(e),m=(t,e,a)=>o(a)?(h(t,e),t):t?.set(e,a),L=(t,e,a,n)=>{var s,o;return s=t,o=e,s?.has(o)?n?.(T(t,e)):m(t,e,a()),T(t,e)},P=(t,e,a,n,s=0)=>r((a?L:T)(t,e[s],s>c(e)-2?a:H),o=>{if(s>c(e)-2)return n?.(o)&&m(t,e[s]),o;const r=P(o,e,a,n,s+1);return w(o)&&m(t,e[s]),r}),G=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),R=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map(()=>s(256*n.random())))(t),E=(t=16)=>{return e=(t,e)=>t+G[63&e],R(new Uint8Array(t)).reduce(e,"");var e},V=(t,e)=>e?[t,e]:[t],z=(t,e)=>((t??"")>(e??"")?t:e)??"",O=(t="")=>V(((t=[])=>p.fromEntries(t))(),t),$=/^\d+$/,j=t=>new Set(i(t)||o(t)?t:[t]),k=H(),x=H(),F=(t,e,a,n,s,p,b,v={},C=0,A=[])=>{let D,G,R,E=0,V=0,z=0;L(k,A,()=>0),L(x,A,()=>[]);const O=H(),[F,N,U,q,B]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!S(t)||!S(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!S(t)||!S(e),e.setContent]:l("Store type not supported by this Persister"))(b,t,C),[I,J,K]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{$.test(e)&&c(t)<1e3&&y(t,e)}]})(),n=H();return[(a,s,o,r=[],i=()=>[])=>{t??=st;const c=e(1);var l,g;return m(n,c,[a,s,o,r,i]),l=P(s,o??[""],j),g=c,l?.add(g),c},(e,a,...s)=>u(((t,e=[""])=>{const a=[],n=(t,s)=>s==c(e)?y(a,t):null===e[s]?f(t,t=>n(t,s+1)):u([e[s],null],e=>n(T(t,e),s+1));return n(t,0),a})(e,a),e=>f(e,e=>T(n,e)[0](t,...a??[],...s))),t=>r(T(n,t),([,e,s])=>(P(e,s??[""],void 0,e=>(h(e,t),w(e)?1:0)),m(n,t),a(t),s)),e=>r(T(n,e),([e,,a=[],n,s])=>{const r=(...i)=>{const l=c(i);l==c(a)?e(t,...i,...s(i)):o(a[l])?u(n[l]?.(...i)??[],t=>r(...i,t)):r(...i,a[l])};r()})]})(),Q=t=>{t!=E&&(E=t,J(O,void 0,E))},W=e=>{(F&&i(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async t=>(2!=E&&(Q(1),V++,await nt(async()=>{await g(async()=>{const a=await e();i(a)?W(a):t?B(t):l("Content is not an array: "+a)},()=>{t&&B(t)}),Q(0)})),st),Y=async t=>(Z(),await X(t),await g(async()=>G=await n(async(t,e)=>{e||t?2!=E&&(Q(1),V++,W(e??t),Q(0)):await X()}),p),st),Z=async()=>(G&&(await g(()=>s(G),p),G=void 0),st),_=async t=>(1!=E&&(Q(2),z++,await nt(async()=>{await g(()=>a(N,t),p),Q(0)})),st),tt=async()=>(et(),await _(),R=t.addDidFinishTransactionListener(()=>{const t=U();q(t)&&_(t)}),st),et=async()=>(R&&(t.delListener(R),R=void 0),st),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),st},nt=async(...t)=>(y(T(x,A),...t),await(async()=>{if(!T(k,A)){for(m(k,A,1);!o(D=d(T(x,A)));)await g(D,p);m(k,A,0)}})(),st),st={load:X,startAutoLoad:Y,stopAutoLoad:Z,isAutoLoading:()=>!o(G),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!o(R),startAutoPersisting:async(t,e=!1)=>{const[a,n]=e?[tt,Y]:[Y,tt];return await a(t),await n(t),st},stopAutoPersisting:at,getStatus:()=>E,addStatusListener:t=>I(t,O),delListener:e=>(K(e),t),schedule:nt,getStore:()=>t,destroy:()=>(T(x,A).splice(0,void 0),at()),getStats:()=>({loads:V,saves:z}),...v};return M(st)},N={Response:0,GetContentHashes:1,ContentHashes:2,ContentDiff:3,GetTableDiff:4,GetRowDiff:5,GetCellDiff:6,GetValueDiff:7},U=(t,a,n,s,i,c,l,u,y={})=>{let d,w=0,f=0,p=0;const b=H(),v=()=>E(11),C=(t,e,n,s)=>{f++,c?.(t,e,n,s),a(t,e,n,s)},M=async(t,a,n,s)=>new e((e,o)=>{const r=s+"."+E(4),c=((t,e=0)=>setTimeout(t,1e3*e))(()=>{h(b,r),o(`No response from ${t??"anyone"} to ${r}, `+a)},i);m(b,r,[t,(t,a)=>{clearTimeout(c),h(b,r),e([t,a,s])}]),C(t,r,a,n)}),L=(t,[e,a])=>{A(e,([e,a],n)=>{const s=D(t[0],n,O);A(e,([t,e],a)=>{const n=D(s[0],a,O);A(t,([t,e],a)=>n[0][a]=V(t,e)),n[1]=z(n[1],e)}),s[1]=z(s[1],a)}),t[1]=z(t[1],a)},P=(e=null,a,n=v())=>g(async()=>{o(a)&&([a,e,n]=await M(null,1,"",n));const[s,r]=a,[i,c]=t.getMergeableContentHashes();let l=O();if(i!=s){const[a,s]=(await M(e,4,t.getMergeableTableHashes(),n))[0];if(l=a,!S(s)){const[a,o]=(await M(e,5,t.getMergeableRowHashes(s),n))[0];if(L(l,a),!S(o)){const a=(await M(e,6,t.getMergeableCellHashes(o),n))[0];L(l,a)}}}return[l,c==r?O():(await M(e,7,t.getMergeableValueHashes(),n))[0],1]},u),G=F(t,async()=>{const t=await P();return!t||S(t[0][0])&&S(t[1][0])?void 0:t},async(e,a)=>a?C(null,v(),3,a):C(null,v(),2,t.getMergeableContentHashes()),t=>d=t,()=>d=void 0,u,2,{startSync:async t=>(w=1,await G.startAutoPersisting(t)),stopSync:async()=>(w=0,await G.stopAutoPersisting(),G),destroy:async()=>(await G.stopSync(),s(),G),getSynchronizerStats:()=>({sends:f,receives:p}),...y},1);return n((e,a,n,s)=>{const i=w||G.isAutoLoading();p++,l?.(e,a,n,s),0==n?r(T(b,a),([t,a])=>o(t)||t==e?a(s,e):0):2==n&&i?P(e,s,a??void 0).then(t=>{d?.(void 0,t)}).catch(u):3==n&&i?d?.(void 0,s):r(1==n&&(w||G.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,t=>{C(e,a,0,t)})}),G};export{N as Message,U as createCustomSynchronizer};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,s=Math,n=s.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),h=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),f=Object,b=t=>f.getPrototypeOf(t),v=f.entries,M=f.keys,C=f.freeze,A=(t,e)=>u(v(t),(
|
|
1
|
+
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,s=Math,n=s.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),h=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),f=Object,b=t=>f.getPrototypeOf(t),v=f.entries,M=f.keys,C=f.freeze,A=(t,e)=>u(v(t),([t,a])=>e(a,t)),S=t=>(t=>!o(t)&&r(b(t),t=>t==f.prototype||o(b(t)),()=>!0))(t)&&0==(t=>c(M(t)))(t),m=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),L=t=>new Map(t),T=(t,e)=>t?.get(e),H=(t,e,a)=>o(a)?(p(t,e),t):t?.set(e,a),P=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(T(t,e)):H(t,e,a()),T(t,e)},D=(t,e,a,s,n=0)=>r((a?P:T)(t,e[n],n>c(e)-2?a:L),o=>{if(n>c(e)-2)return s?.(o)&&H(t,e[n]),o;const r=D(o,e,a,s,n+1);return w(o)&&H(t,e[n]),r}),E=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),z=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map(()=>n(256*s.random())))(t),R=(t=16)=>{return e=(t,e)=>t+E[63&e],z(new Uint8Array(t)).reduce(e,"");var e},V=(t,e)=>e?[t,e]:[t],N=(t,e)=>((t??"")>(e??"")?t:e)??"",O=(t="")=>V(((t=[])=>f.fromEntries(t))(),t),$=/^\d+$/,j=t=>new Set(i(t)||o(t)?t:[t]),k=L(),x=L(),B=(t,e,a,s,n,f,b,v={},M=0,A=[])=>{let m,E,z,R=0,V=0,N=0;P(k,A,()=>0),P(x,A,()=>[]);const O=L(),[B,F,U,q,G]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!S(t)||!S(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!S(t)||!S(e),e.setContent]:l("Store type not supported by this Persister"))(b,t,M),[I,J,K]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{$.test(e)&&c(t)<1e3&&y(t,e)}]})(),s=L();return[(a,n,o,r=[],i=()=>[])=>{t??=nt;const c=e(1);var l,g;return H(s,c,[a,n,o,r,i]),l=D(n,o??[""],j),g=c,l?.add(g),c},(e,a,...n)=>u(((t,e=[""])=>{const a=[],s=(t,n)=>n==c(e)?y(a,t):null===e[n]?h(t,t=>s(t,n+1)):u([e[n],null],e=>s(T(t,e),n+1));return s(t,0),a})(e,a),e=>h(e,e=>T(s,e)[0](t,...a??[],...n))),t=>r(T(s,t),([,e,n])=>(D(e,n??[""],void 0,e=>(p(e,t),w(e)?1:0)),H(s,t),a(t),n)),e=>r(T(s,e),([e,,a=[],s,n])=>{const r=(...i)=>{const l=c(i);l==c(a)?e(t,...i,...n(i)):o(a[l])?u(s[l]?.(...i)??[],t=>r(...i,t)):r(...i,a[l])};r()})]})(),Q=t=>{t!=R&&(R=t,J(O,void 0,R))},W=e=>{(B&&i(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async t=>(2!=R&&(Q(1),V++,await st(async()=>{await g(async()=>{const a=await e();i(a)?W(a):t?G(t):l("Content is not an array: "+a)},()=>{t&&G(t)}),Q(0)})),nt),Y=async t=>(Z(),await X(t),await g(async()=>E=await s(async(t,e)=>{e||t?2!=R&&(Q(1),V++,W(e??t),Q(0)):await X()}),f),nt),Z=async()=>(E&&(await g(()=>n(E),f),E=void 0),nt),_=async t=>(1!=R&&(Q(2),N++,await st(async()=>{await g(()=>a(F,t),f),Q(0)})),nt),tt=async()=>(et(),await _(),z=t.addDidFinishTransactionListener(()=>{const t=U();q(t)&&_(t)}),nt),et=async()=>(z&&(t.delListener(z),z=void 0),nt),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),nt},st=async(...t)=>(y(T(x,A),...t),await(async()=>{if(!T(k,A)){for(H(k,A,1);!o(m=d(T(x,A)));)await g(m,f);H(k,A,0)}})(),nt),nt={load:X,startAutoLoad:Y,stopAutoLoad:Z,isAutoLoading:()=>!o(E),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!o(z),startAutoPersisting:async(t,e=!1)=>{const[a,s]=e?[tt,Y]:[Y,tt];return await a(t),await s(t),nt},stopAutoPersisting:at,getStatus:()=>R,addStatusListener:t=>I(t,O),delListener:e=>(K(e),t),schedule:st,getStore:()=>t,destroy:()=>(T(x,A).splice(0,void 0),at()),getStats:()=>({loads:V,saves:N}),...v};return C(nt)},F=(t,a,s,n,i)=>{const c=R(),l=new BroadcastChannel(a);return((t,a,s,n,i,c,l,u,y={})=>{let d,w=0,h=0,f=0;const b=L(),v=()=>R(11),M=(t,e,s,n)=>{h++,c?.(t,e,s,n),a(t,e,s,n)},C=async(t,a,s,n)=>new e((e,o)=>{const r=n+"."+R(4),c=((t,e=0)=>setTimeout(t,1e3*e))(()=>{p(b,r),o(`No response from ${t??"anyone"} to ${r}, `+a)},i);H(b,r,[t,(t,a)=>{clearTimeout(c),p(b,r),e([t,a,n])}]),M(t,r,a,s)}),P=(t,[e,a])=>{A(e,([e,a],s)=>{const n=m(t[0],s,O);A(e,([t,e],a)=>{const s=m(n[0],a,O);A(t,([t,e],a)=>s[0][a]=V(t,e)),s[1]=N(s[1],e)}),n[1]=N(n[1],a)}),t[1]=N(t[1],a)},D=(e=null,a,s=v())=>g(async()=>{o(a)&&([a,e,s]=await C(null,1,"",s));const[n,r]=a,[i,c]=t.getMergeableContentHashes();let l=O();if(i!=n){const[a,n]=(await C(e,4,t.getMergeableTableHashes(),s))[0];if(l=a,!S(n)){const[a,o]=(await C(e,5,t.getMergeableRowHashes(n),s))[0];if(P(l,a),!S(o)){const a=(await C(e,6,t.getMergeableCellHashes(o),s))[0];P(l,a)}}}return[l,c==r?O():(await C(e,7,t.getMergeableValueHashes(),s))[0],1]},u),E=B(t,async()=>{const t=await D();return!t||S(t[0][0])&&S(t[1][0])?void 0:t},async(e,a)=>a?M(null,v(),3,a):M(null,v(),2,t.getMergeableContentHashes()),t=>d=t,()=>d=void 0,u,2,{startSync:async t=>(w=1,await E.startAutoPersisting(t)),stopSync:async()=>(w=0,await E.stopAutoPersisting(),E),destroy:async()=>(await E.stopSync(),n(),E),getSynchronizerStats:()=>({sends:h,receives:f}),...y},1);return s((e,a,s,n)=>{const i=w||E.isAutoLoading();f++,l?.(e,a,s,n),0==s?r(T(b,a),([t,a])=>o(t)||t==e?a(n,e):0):2==s&&i?D(e,n,a??void 0).then(t=>{d?.(void 0,t)}).catch(u):3==s&&i?d?.(void 0,n):r(1==s&&(w||E.isAutoSaving())?t.getMergeableContentHashes():4==s?t.getMergeableTableDiff(n):5==s?t.getMergeableRowDiff(n):6==s?t.getMergeableCellDiff(n):7==s?t.getMergeableValueDiff(n):void 0,t=>{M(e,a,0,t)})}),E})(t,(t,e,a,s)=>l.postMessage([c,t,e,a,s]),t=>{l.onmessage=({data:[e,a,s,n,r]})=>o(a)||a==c?t(e,s,n,r):0},()=>{l.close()},.01,s,n,i,{getChannelName:()=>a})};export{F as createBroadcastChannelSynchronizer};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,s=Math,n=s.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),h=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),f=Object,b=t=>f.getPrototypeOf(t),v=f.entries,M=f.keys,C=f.freeze,A=(t,e)=>u(v(t),(
|
|
1
|
+
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,s=Math,n=s.floor,o=t=>null==t,r=(t,e,a)=>o(t)?a?.():e(t),i=t=>Array.isArray(t),c=t=>t.length,l=t=>{throw Error(t)},g=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},u=(t,e)=>t.forEach(e),y=(t,...e)=>t.push(...e),d=t=>t.shift(),w=t=>o(t)||0==(t=>t?.size??0)(t),h=(t,e)=>t?.forEach(e),p=(t,e)=>t?.delete(e),f=Object,b=t=>f.getPrototypeOf(t),v=f.entries,M=f.keys,C=f.freeze,A=(t,e)=>u(v(t),([t,a])=>e(a,t)),S=t=>(t=>!o(t)&&r(b(t),t=>t==f.prototype||o(b(t)),()=>!0))(t)&&0==(t=>c(M(t)))(t),m=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),L=t=>new Map(t),T=(t,e)=>t?.get(e),H=(t,e,a)=>o(a)?(p(t,e),t):t?.set(e,a),P=(t,e,a,s)=>{var n,o;return n=t,o=e,n?.has(o)?s?.(T(t,e)):H(t,e,a()),T(t,e)},D=(t,e,a,s,n=0)=>r((a?P:T)(t,e[n],n>c(e)-2?a:L),o=>{if(n>c(e)-2)return s?.(o)&&H(t,e[n]),o;const r=D(o,e,a,s,n+1);return w(o)&&H(t,e[n]),r}),E=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),z=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map(()=>n(256*s.random())))(t),R=(t=16)=>{return e=(t,e)=>t+E[63&e],z(new Uint8Array(t)).reduce(e,"");var e},V=(t,e)=>e?[t,e]:[t],N=(t,e)=>((t??"")>(e??"")?t:e)??"",O=(t="")=>V(((t=[])=>f.fromEntries(t))(),t),$=/^\d+$/,j=t=>new Set(i(t)||o(t)?t:[t]),k=L(),x=L(),B=(t,e,a,s,n,f,b,v={},M=0,A=[])=>{let m,E,z,R=0,V=0,N=0;P(k,A,()=>0),P(x,A,()=>[]);const O=L(),[B,F,U,q,G]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!S(t)||!S(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!S(t)||!S(e),e.setContent]:l("Store type not supported by this Persister"))(b,t,M),[I,J,K]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?d(t):null)??""+e++,e=>{$.test(e)&&c(t)<1e3&&y(t,e)}]})(),s=L();return[(a,n,o,r=[],i=()=>[])=>{t??=nt;const c=e(1);var l,g;return H(s,c,[a,n,o,r,i]),l=D(n,o??[""],j),g=c,l?.add(g),c},(e,a,...n)=>u(((t,e=[""])=>{const a=[],s=(t,n)=>n==c(e)?y(a,t):null===e[n]?h(t,t=>s(t,n+1)):u([e[n],null],e=>s(T(t,e),n+1));return s(t,0),a})(e,a),e=>h(e,e=>T(s,e)[0](t,...a??[],...n))),t=>r(T(s,t),([,e,n])=>(D(e,n??[""],void 0,e=>(p(e,t),w(e)?1:0)),H(s,t),a(t),n)),e=>r(T(s,e),([e,,a=[],s,n])=>{const r=(...i)=>{const l=c(i);l==c(a)?e(t,...i,...n(i)):o(a[l])?u(s[l]?.(...i)??[],t=>r(...i,t)):r(...i,a[l])};r()})]})(),Q=t=>{t!=R&&(R=t,J(O,void 0,R))},W=e=>{(B&&i(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async t=>(2!=R&&(Q(1),V++,await st(async()=>{await g(async()=>{const a=await e();i(a)?W(a):t?G(t):l("Content is not an array: "+a)},()=>{t&&G(t)}),Q(0)})),nt),Y=async t=>(Z(),await X(t),await g(async()=>E=await s(async(t,e)=>{e||t?2!=R&&(Q(1),V++,W(e??t),Q(0)):await X()}),f),nt),Z=async()=>(E&&(await g(()=>n(E),f),E=void 0),nt),_=async t=>(1!=R&&(Q(2),N++,await st(async()=>{await g(()=>a(F,t),f),Q(0)})),nt),tt=async()=>(et(),await _(),z=t.addDidFinishTransactionListener(()=>{const t=U();q(t)&&_(t)}),nt),et=async()=>(z&&(t.delListener(z),z=void 0),nt),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),nt},st=async(...t)=>(y(T(x,A),...t),await(async()=>{if(!T(k,A)){for(H(k,A,1);!o(m=d(T(x,A)));)await g(m,f);H(k,A,0)}})(),nt),nt={load:X,startAutoLoad:Y,stopAutoLoad:Z,isAutoLoading:()=>!o(E),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!o(z),startAutoPersisting:async(t,e=!1)=>{const[a,s]=e?[tt,Y]:[Y,tt];return await a(t),await s(t),nt},stopAutoPersisting:at,getStatus:()=>R,addStatusListener:t=>I(t,O),delListener:e=>(K(e),t),schedule:st,getStore:()=>t,destroy:()=>(T(x,A).splice(0,void 0),at()),getStats:()=>({loads:V,saves:N}),...v};return C(nt)},F=(t,a,s,n,i)=>{const c=R(),l=new BroadcastChannel(a);return((t,a,s,n,i,c,l,u,y={})=>{let d,w=0,h=0,f=0;const b=L(),v=()=>R(11),M=(t,e,s,n)=>{h++,c?.(t,e,s,n),a(t,e,s,n)},C=async(t,a,s,n)=>new e((e,o)=>{const r=n+"."+R(4),c=((t,e=0)=>setTimeout(t,1e3*e))(()=>{p(b,r),o(`No response from ${t??"anyone"} to ${r}, `+a)},i);H(b,r,[t,(t,a)=>{clearTimeout(c),p(b,r),e([t,a,n])}]),M(t,r,a,s)}),P=(t,[e,a])=>{A(e,([e,a],s)=>{const n=m(t[0],s,O);A(e,([t,e],a)=>{const s=m(n[0],a,O);A(t,([t,e],a)=>s[0][a]=V(t,e)),s[1]=N(s[1],e)}),n[1]=N(n[1],a)}),t[1]=N(t[1],a)},D=(e=null,a,s=v())=>g(async()=>{o(a)&&([a,e,s]=await C(null,1,"",s));const[n,r]=a,[i,c]=t.getMergeableContentHashes();let l=O();if(i!=n){const[a,n]=(await C(e,4,t.getMergeableTableHashes(),s))[0];if(l=a,!S(n)){const[a,o]=(await C(e,5,t.getMergeableRowHashes(n),s))[0];if(P(l,a),!S(o)){const a=(await C(e,6,t.getMergeableCellHashes(o),s))[0];P(l,a)}}}return[l,c==r?O():(await C(e,7,t.getMergeableValueHashes(),s))[0],1]},u),E=B(t,async()=>{const t=await D();return!t||S(t[0][0])&&S(t[1][0])?void 0:t},async(e,a)=>a?M(null,v(),3,a):M(null,v(),2,t.getMergeableContentHashes()),t=>d=t,()=>d=void 0,u,2,{startSync:async t=>(w=1,await E.startAutoPersisting(t)),stopSync:async()=>(w=0,await E.stopAutoPersisting(),E),destroy:async()=>(await E.stopSync(),n(),E),getSynchronizerStats:()=>({sends:h,receives:f}),...y},1);return s((e,a,s,n)=>{const i=w||E.isAutoLoading();f++,l?.(e,a,s,n),0==s?r(T(b,a),([t,a])=>o(t)||t==e?a(n,e):0):2==s&&i?D(e,n,a??void 0).then(t=>{d?.(void 0,t)}).catch(u):3==s&&i?d?.(void 0,n):r(1==s&&(w||E.isAutoSaving())?t.getMergeableContentHashes():4==s?t.getMergeableTableDiff(n):5==s?t.getMergeableRowDiff(n):6==s?t.getMergeableCellDiff(n):7==s?t.getMergeableValueDiff(n):void 0,t=>{M(e,a,0,t)})}),E})(t,(t,e,a,s)=>l.postMessage([c,t,e,a,s]),t=>{l.onmessage=({data:[e,a,s,n,r]})=>o(a)||a==c?t(e,s,n,r):0},()=>{l.close()},.01,s,n,i,{getChannelName:()=>a})};export{F as createBroadcastChannelSynchronizer};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,r=s.floor,o=t=>null==t,i=(t,e,a)=>o(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,g=t=>{throw Error(t)},u=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},y=(t,e)=>t.forEach(e),d=(t,...e)=>t.push(...e),w=t=>t.shift(),h=t=>o(t)||0==(t=>t?.size??0)(t),p=(t,e)=>t?.forEach(e),f=(t,e)=>t?.delete(e),v=Object,b=t=>v.getPrototypeOf(t),M=v.entries,C=v.keys,A=v.freeze,S=(t,e)=>y(M(t),(
|
|
1
|
+
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,r=s.floor,o=t=>null==t,i=(t,e,a)=>o(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,g=t=>{throw Error(t)},u=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},y=(t,e)=>t.forEach(e),d=(t,...e)=>t.push(...e),w=t=>t.shift(),h=t=>o(t)||0==(t=>t?.size??0)(t),p=(t,e)=>t?.forEach(e),f=(t,e)=>t?.delete(e),v=Object,b=t=>v.getPrototypeOf(t),M=v.entries,C=v.keys,A=v.freeze,S=(t,e)=>y(M(t),([t,a])=>e(a,t)),m=t=>(t=>!o(t)&&i(b(t),t=>t==v.prototype||o(b(t)),()=>!0))(t)&&0==(t=>l(C(t)))(t),L=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),T=t=>new Map(t),H=(t,e)=>t?.get(e),P=(t,e,a)=>o(a)?(f(t,e),t):t?.set(e,a),D=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)?n?.(H(t,e)):P(t,e,a()),H(t,e)},E=(t,e,a,n,s=0)=>i((a?D:H)(t,e[s],s>l(e)-2?a:T),r=>{if(s>l(e)-2)return n?.(r)&&P(t,e[s]),r;const o=E(r,e,a,n,s+1);return h(r)&&P(t,e[s]),o}),z=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),R=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map(()=>r(256*s.random())))(t),V=(t=16)=>{return e=(t,e)=>t+z[63&e],R(new Uint8Array(t)).reduce(e,"");var e},O=(t,e)=>e?[t,e]:[t],$=(t,e)=>((t??"")>(e??"")?t:e)??"",j=(t="")=>O(((t=[])=>v.fromEntries(t))(),t),k=/^\d+$/,x=t=>new Set(c(t)||o(t)?t:[t]),F=T(),N=T(),U=(t,e,a,n,s,r,v,b={},M=0,C=[])=>{let S,L,z,R=0,V=0,O=0;D(F,C,()=>0),D(N,C,()=>[]);const $=T(),[j,U,q,B,G]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!m(t)||!m(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!m(t)||!m(e),e.setContent]:g("Store type not supported by this Persister"))(v,t,M),[I,J,K]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?w(t):null)??""+e++,e=>{k.test(e)&&l(t)<1e3&&d(t,e)}]})(),n=T();return[(a,s,r,o=[],i=()=>[])=>{t??=st;const c=e(1);var l,g;return P(n,c,[a,s,r,o,i]),l=E(s,r??[""],x),g=c,l?.add(g),c},(e,a,...s)=>y(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?d(a,t):null===e[s]?p(t,t=>n(t,s+1)):y([e[s],null],e=>n(H(t,e),s+1));return n(t,0),a})(e,a),e=>p(e,e=>H(n,e)[0](t,...a??[],...s))),t=>i(H(n,t),([,e,s])=>(E(e,s??[""],void 0,e=>(f(e,t),h(e)?1:0)),P(n,t),a(t),s)),e=>i(H(n,e),([e,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):o(a[c])?y(n[c]?.(...i)??[],t=>r(...i,t)):r(...i,a[c])};r()})]})(),Q=t=>{t!=R&&(R=t,J($,void 0,R))},W=e=>{(j&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async t=>(2!=R&&(Q(1),V++,await nt(async()=>{await u(async()=>{const a=await e();c(a)?W(a):t?G(t):g("Content is not an array: "+a)},()=>{t&&G(t)}),Q(0)})),st),Y=async t=>(Z(),await X(t),await u(async()=>L=await n(async(t,e)=>{e||t?2!=R&&(Q(1),V++,W(e??t),Q(0)):await X()}),r),st),Z=async()=>(L&&(await u(()=>s(L),r),L=void 0),st),_=async t=>(1!=R&&(Q(2),O++,await nt(async()=>{await u(()=>a(U,t),r),Q(0)})),st),tt=async()=>(et(),await _(),z=t.addDidFinishTransactionListener(()=>{const t=q();B(t)&&_(t)}),st),et=async()=>(z&&(t.delListener(z),z=void 0),st),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),st},nt=async(...t)=>(d(H(N,C),...t),await(async()=>{if(!H(F,C)){for(P(F,C,1);!o(S=w(H(N,C)));)await u(S,r);P(F,C,0)}})(),st),st={load:X,startAutoLoad:Y,stopAutoLoad:Z,isAutoLoading:()=>!o(L),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!o(z),startAutoPersisting:async(t,e=!1)=>{const[a,n]=e?[tt,Y]:[Y,tt];return await a(t),await n(t),st},stopAutoPersisting:at,getStatus:()=>R,addStatusListener:t=>I(t,$),delListener:e=>(K(e),t),schedule:nt,getStore:()=>t,destroy:()=>(H(N,C).splice(0,void 0),at()),getStats:()=>({loads:V,saves:O}),...b};return A(st)},q=T(),B=(t,a,s,r)=>{const c=V();return((t,a,s,r,c,l,g,y,d={})=>{let w,h=0,p=0,v=0;const b=T(),M=()=>V(11),C=(t,e,n,s)=>{p++,l?.(t,e,n,s),a(t,e,n,s)},A=async(t,a,s,r)=>new e((e,o)=>{const i=r+"."+V(4),l=n(()=>{f(b,i),o(`No response from ${t??"anyone"} to ${i}, `+a)},c);P(b,i,[t,(t,a)=>{clearTimeout(l),f(b,i),e([t,a,r])}]),C(t,i,a,s)}),D=(t,[e,a])=>{S(e,([e,a],n)=>{const s=L(t[0],n,j);S(e,([t,e],a)=>{const n=L(s[0],a,j);S(t,([t,e],a)=>n[0][a]=O(t,e)),n[1]=$(n[1],e)}),s[1]=$(s[1],a)}),t[1]=$(t[1],a)},E=(e=null,a,n=M())=>u(async()=>{o(a)&&([a,e,n]=await A(null,1,"",n));const[s,r]=a,[i,c]=t.getMergeableContentHashes();let l=j();if(i!=s){const[a,s]=(await A(e,4,t.getMergeableTableHashes(),n))[0];if(l=a,!m(s)){const[a,r]=(await A(e,5,t.getMergeableRowHashes(s),n))[0];if(D(l,a),!m(r)){const a=(await A(e,6,t.getMergeableCellHashes(r),n))[0];D(l,a)}}}return[l,c==r?j():(await A(e,7,t.getMergeableValueHashes(),n))[0],1]},y),z=U(t,async()=>{const t=await E();return!t||m(t[0][0])&&m(t[1][0])?void 0:t},async(e,a)=>a?C(null,M(),3,a):C(null,M(),2,t.getMergeableContentHashes()),t=>w=t,()=>w=void 0,y,2,{startSync:async t=>(h=1,await z.startAutoPersisting(t)),stopSync:async()=>(h=0,await z.stopAutoPersisting(),z),destroy:async()=>(await z.stopSync(),r(),z),getSynchronizerStats:()=>({sends:p,receives:v}),...d},1);return s((e,a,n,s)=>{const r=h||z.isAutoLoading();v++,g?.(e,a,n,s),0==n?i(H(b,a),([t,a])=>o(t)||t==e?a(s,e):0):2==n&&r?E(e,s,a??void 0).then(t=>{w?.(void 0,t)}).catch(y):3==n&&r?w?.(void 0,s):i(1==n&&(h||z.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,t=>{C(e,a,0,t)})}),z})(t,(t,e,a,s)=>n(()=>{return o(t)?(n=(t,n)=>t!=c?n(c,e,a,s):0,p(q,(t,e)=>n(e,t))):H(q,t)?.(c,e,a,s);var n}),t=>{P(q,c,t)},()=>{f(q,c)},.01,a,s,r)};export{B as createLocalSynchronizer};
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,r=s.floor,o=t=>null==t,i=(t,e,a)=>o(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,g=t=>{throw Error(t)},u=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},y=(t,e)=>t.forEach(e),d=(t,...e)=>t.push(...e),w=t=>t.shift(),h=t=>o(t)||0==(t=>t?.size??0)(t),p=(t,e)=>t?.forEach(e),f=(t,e)=>t?.delete(e),v=Object,b=t=>v.getPrototypeOf(t),M=v.entries,C=v.keys,A=v.freeze,S=(t,e)=>y(M(t),(
|
|
1
|
+
const t=(t,e="",a)=>t.split(e,a),e=Promise,a=globalThis,n=(t,e=0)=>setTimeout(t,1e3*e),s=Math,r=s.floor,o=t=>null==t,i=(t,e,a)=>o(t)?a?.():e(t),c=t=>Array.isArray(t),l=t=>t.length,g=t=>{throw Error(t)},u=async(t,e,a)=>{try{return await t()}catch(t){e?.(t)}},y=(t,e)=>t.forEach(e),d=(t,...e)=>t.push(...e),w=t=>t.shift(),h=t=>o(t)||0==(t=>t?.size??0)(t),p=(t,e)=>t?.forEach(e),f=(t,e)=>t?.delete(e),v=Object,b=t=>v.getPrototypeOf(t),M=v.entries,C=v.keys,A=v.freeze,S=(t,e)=>y(M(t),([t,a])=>e(a,t)),m=t=>(t=>!o(t)&&i(b(t),t=>t==v.prototype||o(b(t)),()=>!0))(t)&&0==(t=>l(C(t)))(t),L=(t,e,a)=>(((t,e)=>e in t)(t,e)||(t[e]=a()),t[e]),T=t=>new Map(t),H=(t,e)=>t?.get(e),P=(t,e,a)=>o(a)?(f(t,e),t):t?.set(e,a),D=(t,e,a,n)=>{var s,r;return s=t,r=e,s?.has(r)?n?.(H(t,e)):P(t,e,a()),H(t,e)},E=(t,e,a,n,s=0)=>i((a?D:H)(t,e[s],s>l(e)-2?a:T),r=>{if(s>l(e)-2)return n?.(r)&&P(t,e[s]),r;const o=E(r,e,a,n,s+1);return h(r)&&P(t,e[s]),o}),z=t("-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz"),R=a.crypto?t=>a.crypto.getRandomValues(t):t=>(t=>t.map(()=>r(256*s.random())))(t),V=(t=16)=>{return e=(t,e)=>t+z[63&e],R(new Uint8Array(t)).reduce(e,"");var e},O=(t,e)=>e?[t,e]:[t],$=(t,e)=>((t??"")>(e??"")?t:e)??"",j=(t="")=>O(((t=[])=>v.fromEntries(t))(),t),k=/^\d+$/,x=t=>new Set(c(t)||o(t)?t:[t]),F=T(),N=T(),U=(t,e,a,n,s,r,v,b={},M=0,C=[])=>{let S,L,z,R=0,V=0,O=0;D(F,C,()=>0),D(N,C,()=>[]);const $=T(),[j,U,q,B,G]=((t=1,e,a)=>1!=t&&e.isMergeable()?[1,e.getMergeableContent,()=>e.getTransactionMergeableChanges(!a),([[t],[e]])=>!m(t)||!m(e),e.setDefaultContent]:2!=t?[0,e.getContent,e.getTransactionChanges,([t,e])=>!m(t)||!m(e),e.setContent]:g("Store type not supported by this Persister"))(v,t,M),[I,J,K]=(()=>{let t;const[e,a]=(()=>{const t=[];let e=0;return[a=>(a?w(t):null)??""+e++,e=>{k.test(e)&&l(t)<1e3&&d(t,e)}]})(),n=T();return[(a,s,r,o=[],i=()=>[])=>{t??=st;const c=e(1);var l,g;return P(n,c,[a,s,r,o,i]),l=E(s,r??[""],x),g=c,l?.add(g),c},(e,a,...s)=>y(((t,e=[""])=>{const a=[],n=(t,s)=>s==l(e)?d(a,t):null===e[s]?p(t,t=>n(t,s+1)):y([e[s],null],e=>n(H(t,e),s+1));return n(t,0),a})(e,a),e=>p(e,e=>H(n,e)[0](t,...a??[],...s))),t=>i(H(n,t),([,e,s])=>(E(e,s??[""],void 0,e=>(f(e,t),h(e)?1:0)),P(n,t),a(t),s)),e=>i(H(n,e),([e,,a=[],n,s])=>{const r=(...i)=>{const c=l(i);c==l(a)?e(t,...i,...s(i)):o(a[c])?y(n[c]?.(...i)??[],t=>r(...i,t)):r(...i,a[c])};r()})]})(),Q=t=>{t!=R&&(R=t,J($,void 0,R))},W=e=>{(j&&c(e?.[0])?1===e?.[2]?t.applyMergeableChanges:t.setMergeableContent:1===e?.[2]?t.applyChanges:t.setContent)(e)},X=async t=>(2!=R&&(Q(1),V++,await nt(async()=>{await u(async()=>{const a=await e();c(a)?W(a):t?G(t):g("Content is not an array: "+a)},()=>{t&&G(t)}),Q(0)})),st),Y=async t=>(Z(),await X(t),await u(async()=>L=await n(async(t,e)=>{e||t?2!=R&&(Q(1),V++,W(e??t),Q(0)):await X()}),r),st),Z=async()=>(L&&(await u(()=>s(L),r),L=void 0),st),_=async t=>(1!=R&&(Q(2),O++,await nt(async()=>{await u(()=>a(U,t),r),Q(0)})),st),tt=async()=>(et(),await _(),z=t.addDidFinishTransactionListener(()=>{const t=q();B(t)&&_(t)}),st),et=async()=>(z&&(t.delListener(z),z=void 0),st),at=async(t=!1)=>{const[e,a]=t?[et,Z]:[Z,et];return await e(),await a(),st},nt=async(...t)=>(d(H(N,C),...t),await(async()=>{if(!H(F,C)){for(P(F,C,1);!o(S=w(H(N,C)));)await u(S,r);P(F,C,0)}})(),st),st={load:X,startAutoLoad:Y,stopAutoLoad:Z,isAutoLoading:()=>!o(L),save:_,startAutoSave:tt,stopAutoSave:et,isAutoSaving:()=>!o(z),startAutoPersisting:async(t,e=!1)=>{const[a,n]=e?[tt,Y]:[Y,tt];return await a(t),await n(t),st},stopAutoPersisting:at,getStatus:()=>R,addStatusListener:t=>I(t,$),delListener:e=>(K(e),t),schedule:nt,getStore:()=>t,destroy:()=>(H(N,C).splice(0,void 0),at()),getStats:()=>({loads:V,saves:O}),...b};return A(st)},q=T(),B=(t,a,s,r)=>{const c=V();return((t,a,s,r,c,l,g,y,d={})=>{let w,h=0,p=0,v=0;const b=T(),M=()=>V(11),C=(t,e,n,s)=>{p++,l?.(t,e,n,s),a(t,e,n,s)},A=async(t,a,s,r)=>new e((e,o)=>{const i=r+"."+V(4),l=n(()=>{f(b,i),o(`No response from ${t??"anyone"} to ${i}, `+a)},c);P(b,i,[t,(t,a)=>{clearTimeout(l),f(b,i),e([t,a,r])}]),C(t,i,a,s)}),D=(t,[e,a])=>{S(e,([e,a],n)=>{const s=L(t[0],n,j);S(e,([t,e],a)=>{const n=L(s[0],a,j);S(t,([t,e],a)=>n[0][a]=O(t,e)),n[1]=$(n[1],e)}),s[1]=$(s[1],a)}),t[1]=$(t[1],a)},E=(e=null,a,n=M())=>u(async()=>{o(a)&&([a,e,n]=await A(null,1,"",n));const[s,r]=a,[i,c]=t.getMergeableContentHashes();let l=j();if(i!=s){const[a,s]=(await A(e,4,t.getMergeableTableHashes(),n))[0];if(l=a,!m(s)){const[a,r]=(await A(e,5,t.getMergeableRowHashes(s),n))[0];if(D(l,a),!m(r)){const a=(await A(e,6,t.getMergeableCellHashes(r),n))[0];D(l,a)}}}return[l,c==r?j():(await A(e,7,t.getMergeableValueHashes(),n))[0],1]},y),z=U(t,async()=>{const t=await E();return!t||m(t[0][0])&&m(t[1][0])?void 0:t},async(e,a)=>a?C(null,M(),3,a):C(null,M(),2,t.getMergeableContentHashes()),t=>w=t,()=>w=void 0,y,2,{startSync:async t=>(h=1,await z.startAutoPersisting(t)),stopSync:async()=>(h=0,await z.stopAutoPersisting(),z),destroy:async()=>(await z.stopSync(),r(),z),getSynchronizerStats:()=>({sends:p,receives:v}),...d},1);return s((e,a,n,s)=>{const r=h||z.isAutoLoading();v++,g?.(e,a,n,s),0==n?i(H(b,a),([t,a])=>o(t)||t==e?a(s,e):0):2==n&&r?E(e,s,a??void 0).then(t=>{w?.(void 0,t)}).catch(y):3==n&&r?w?.(void 0,s):i(1==n&&(h||z.isAutoSaving())?t.getMergeableContentHashes():4==n?t.getMergeableTableDiff(s):5==n?t.getMergeableRowDiff(s):6==n?t.getMergeableCellDiff(s):7==n?t.getMergeableValueDiff(s):void 0,t=>{C(e,a,0,t)})}),z})(t,(t,e,a,s)=>n(()=>{return o(t)?(n=(t,n)=>t!=c?n(c,e,a,s):0,p(q,(t,e)=>n(e,t))):H(q,t)?.(c,e,a,s);var n}),t=>{P(q,c,t)},()=>{f(q,c)},.01,a,s,r)};export{B as createLocalSynchronizer};
|
|
Binary file
|