tinybase 5.0.0-beta.14 → 5.0.0-beta.16

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.
Files changed (135) hide show
  1. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  2. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  4. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  6. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  8. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-libsql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-libsql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-powersync.cjs +1 -1
  12. package/lib/cjs/persisters/persister-powersync.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  14. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  16. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  17. package/lib/cjs/ui-react.cjs +1 -1
  18. package/lib/cjs/ui-react.cjs.gz +0 -0
  19. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  20. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  21. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  22. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  23. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  24. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  25. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  26. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  27. package/lib/cjs-es6/persisters/persister-libsql.cjs +1 -1
  28. package/lib/cjs-es6/persisters/persister-libsql.cjs.gz +0 -0
  29. package/lib/cjs-es6/persisters/persister-powersync.cjs +1 -1
  30. package/lib/cjs-es6/persisters/persister-powersync.cjs.gz +0 -0
  31. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  32. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  33. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  34. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  35. package/lib/cjs-es6/ui-react.cjs +1 -1
  36. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  37. package/lib/debug/persisters/persister-browser.js +4 -7
  38. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +55 -48
  39. package/lib/debug/persisters/persister-electric-sql.js +55 -48
  40. package/lib/debug/persisters/persister-expo-sqlite-next.js +55 -48
  41. package/lib/debug/persisters/persister-expo-sqlite.js +55 -48
  42. package/lib/debug/persisters/persister-file.js +3 -7
  43. package/lib/debug/persisters/persister-libsql.js +55 -48
  44. package/lib/debug/persisters/persister-powersync.js +55 -48
  45. package/lib/debug/persisters/persister-sqlite-wasm.js +55 -48
  46. package/lib/debug/persisters/persister-sqlite3.js +55 -48
  47. package/lib/debug/synchronizers/synchronizer-ws-client.js +3 -7
  48. package/lib/debug/ui-react-dom.js +3 -7
  49. package/lib/debug/ui-react.js +6 -5
  50. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  51. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  52. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  53. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  54. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  55. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  56. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  57. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  58. package/lib/es6/persisters/persister-libsql.js +1 -1
  59. package/lib/es6/persisters/persister-libsql.js.gz +0 -0
  60. package/lib/es6/persisters/persister-powersync.js +1 -1
  61. package/lib/es6/persisters/persister-powersync.js.gz +0 -0
  62. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  63. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  64. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  65. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  66. package/lib/es6/ui-react.js +1 -1
  67. package/lib/es6/ui-react.js.gz +0 -0
  68. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  69. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  70. package/lib/persisters/persister-electric-sql.js +1 -1
  71. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  72. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  73. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  74. package/lib/persisters/persister-expo-sqlite.js +1 -1
  75. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  76. package/lib/persisters/persister-libsql.js +1 -1
  77. package/lib/persisters/persister-libsql.js.gz +0 -0
  78. package/lib/persisters/persister-powersync.js +1 -1
  79. package/lib/persisters/persister-powersync.js.gz +0 -0
  80. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  81. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  82. package/lib/persisters/persister-sqlite3.js +1 -1
  83. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  84. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +1 -1
  85. package/lib/types/persisters/persister-expo-sqlite.d.ts +1 -1
  86. package/lib/types/persisters/persister-sqlite-wasm.d.ts +1 -1
  87. package/lib/types/persisters/persister-sqlite3.d.ts +1 -1
  88. package/lib/types/persisters.d.ts +18 -7
  89. package/lib/types/ui-react.d.ts +26 -25
  90. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +1 -1
  91. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -1
  92. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -1
  93. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -1
  94. package/lib/types/with-schemas/persisters.d.ts +18 -7
  95. package/lib/types/with-schemas/ui-react.d.ts +33 -32
  96. package/lib/ui-react.js +1 -1
  97. package/lib/ui-react.js.gz +0 -0
  98. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  99. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  100. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  101. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  102. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  103. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  104. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  105. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  106. package/lib/umd/persisters/persister-libsql.js +1 -1
  107. package/lib/umd/persisters/persister-libsql.js.gz +0 -0
  108. package/lib/umd/persisters/persister-powersync.js +1 -1
  109. package/lib/umd/persisters/persister-powersync.js.gz +0 -0
  110. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  111. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  112. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  113. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  114. package/lib/umd/ui-react.js +1 -1
  115. package/lib/umd/ui-react.js.gz +0 -0
  116. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  117. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  118. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  119. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  120. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  121. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  122. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  123. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  124. package/lib/umd-es6/persisters/persister-libsql.js +1 -1
  125. package/lib/umd-es6/persisters/persister-libsql.js.gz +0 -0
  126. package/lib/umd-es6/persisters/persister-powersync.js +1 -1
  127. package/lib/umd-es6/persisters/persister-powersync.js.gz +0 -0
  128. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  129. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  130. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  131. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  132. package/lib/umd-es6/ui-react.js +1 -1
  133. package/lib/umd-es6/ui-react.js.gz +0 -0
  134. package/package.json +26 -26
  135. package/readme.md +2 -2
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",m="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),O=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),U=a=>[...a?.keys()??[]],W=(a,t)=>a?.get(t),Y=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),$=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),k=(a,t,e,n)=>(N(a,t)||$(a,t,e()),W(a,t)),G=(a,t,e,n=$)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>G(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>$(r,t,G(k(r,t,H),e,((a,t,e)=>{e!=W(a,t)&&$(a,t,e)}),((a,t)=>$(a,t))))),((a,t)=>$(r,t))),async(t,e)=>((a,t)=>!o(W(W(r,a),t)))(t,e)?M(T(A(await a(Q+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();F(c??{},(a=>A(D(a??{}),(a=>q(u,a)))));const d=h(u);if(!y&&w&&O(d)&&N(r,t))return await a("DROP "+z+g(t)),void $(r,t);if(O(d)||N(r,t)){const n=W(r,t),i=J(U(n));await E([...A(d,(async s=>{R(i,s)||(await a(K+g(t)+"ADD"+g(s)),$(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+g(t)+"DROP"+g(e)),$(n,e))})):[]])}else await a("CREATE "+z+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+g(a))))});`),$(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+g(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+g(t)+Z+g(s)+"=?",[n]):O(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(O(d))N(r,t)&&await a(V+g(t)+Z+" 1");else{const e=T(U(W(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...A(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+g(t)+Z+g(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+C(A(r,(a=>n+g(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+g(s)+")DO UPDATE SET"+C(A(r,(a=>g(a)+"=excluded."+g(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;k(sa,w,(()=>0)),k(ia,w,(()=>[]));const[m,g,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),O=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await L((async()=>{try{O(await t())}catch(t){i?.(t),a&&A(a)}p=0}))),S),N=()=>(d&&(s(d),d=void 0),S),h=async a=>(1!=p&&(p=2,await L((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(f(W(ia,w),...a),await(async()=>{if(!W(sa,w)){for($(sa,w,1);!o((a=W(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}$(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,O(t??a),p=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&h(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,g)=>{const[v,C,A,O]=aa(t,y,s,g),f=async(a,t)=>await E(Y(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,m,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await O((async()=>{await v();const a=await(async()=>M(T(await E(Y(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,m))[p]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},ga=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||$(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Oa=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,p,g;const[C,A,O,T]=(a=>{const e=(a=>P(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(ma,r)),0,x(ma)),o=c[2],l=J(o);return[0,n,[ga(s,{[da]:null,[ua]:m},da,(a=>q(l,a)&&a==o)),ga(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),o,O,h(T),l,y,d)};exports.createCrSqliteWasmPersister=(a,t,e,n,s)=>Oa(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,n)=>a(n)))),(a=>a()),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),y=t=>a(t)==s,w=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),v=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),g=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,A=a=>[...a?.values()??[]],T=(a,t)=>a?.delete(t),N=Object,h=a=>N.getPrototypeOf(a),R=N.entries,f=N.keys,L=N.freeze,S=(a=[])=>N.fromEntries(a),I=(...a)=>N.assign({},...a),b=(a,t)=>t in a,D=(a,t)=>p(R(a),(([a,e])=>t(e,a))),M=a=>N.values(a),P=a=>d(f(a)),$=a=>(a=>!o(a)&&l(h(a),(a=>a==N.prototype||o(h(a))),(()=>!0)))(a)&&0==P(a),_=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),B=(a,t,e)=>o(e)?(T(a,t),a):a?.set(t,e),H=(a,t,e,n)=>(O(a,t)||B(a,t,e()),j(a,t)),J=(a,t,e,n=B)=>(D(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>b(t,e)?0:n(a,e))),a),U="_",W="_id",Y=a=>`"${a.replace(/"/g,'""')}"`,k="SELECT",G=a=>new Set(w(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=k+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=_();return[async()=>J(r,S(await E(p(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,S(p(await a(k+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>B(r,t,J(H(r,t,_),e,((a,t,e)=>{e!=j(a,t)&&B(a,t,e)}),((a,t)=>B(a,t))))),((a,t)=>B(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?S(m(p(await a(Q+Y(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,c,l,y,w=!1)=>{const u=G();D(c??{},(a=>p(f(a??{}),(a=>q(u,a)))));const d=A(u);if(!w&&y&&g(d)&&O(r,t))return await a("DROP "+z+Y(t)),void B(r,t);if(g(d)||O(r,t)){const n=j(r,t),i=G(F(n));await E([...p(d,(async s=>{T(i,s)||(await a(K+Y(t)+"ADD"+Y(s)),B(n,s,e))})),...!w&&l?p(A(i),(async e=>{e!=s&&(await a(K+Y(t)+"DROP"+Y(e)),B(n,e))})):[]])}else await a("CREATE "+z+Y(t)+"("+Y(s)+` PRIMARY KEY ON CONFLICT REPLACE${v(p(d,(a=>n+Y(a))))});`),B(r,t,_([[s,e],...p(d,(a=>[a,e]))]));if(w)o(c)?await a(V+Y(t)+Z+" 1"):await E(D(c,(async(e,n)=>{o(e)?await a(V+Y(t)+Z+Y(s)+"=?",[n]):g(d)||await ta(a,t,s,f(e),[n,...M(e)],i)})));else if(g(d))O(r,t)&&await a(V+Y(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];D(c??{},((a,t)=>{C(n,t,...p(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(V+Y(t)+Z+Y(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+Y(t)+"("+Y(s)+v(p(r,(a=>n+Y(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+Y(s)+")DO UPDATE SET"+v(p(r,(a=>Y(a)+"=excluded."+Y(a))),n):e),p(c,(a=>a??null))),ea=a=>v(p(a,(()=>"?")),n),na=_(),sa=_(),ia=(a,t,e,n,s,i,r,c={},y=[])=>{let u,d,E,v=0;H(na,y,(()=>0)),H(sa,y,(()=>[]));const[p,g,m,O,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(r,a),T=t=>{(p&&w(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N=async a=>(2!=v&&(v=1,await S((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}v=0}))),I),h=()=>(d&&(s(d),d=void 0),I),R=async a=>(1!=v&&(v=2,await S((async()=>{try{await e(g,a)}catch(a){i?.(a)}v=0}))),I),f=()=>(l(E,a.delListener),E=void 0,I),S=async(...a)=>(C(j(sa,y),...a),await(async()=>{if(!j(na,y)){for(B(na,y,1);!o((a=j(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}B(na,y,0)}var a})(),I),I={load:N,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,T(t??a),v=0):await N()})),I),stopAutoLoad:h,isAutoLoading:()=>!o(d),save:R,startAutoSave:async()=>(await f().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();O(a)&&R(a)})),I),stopAutoSave:f,isAutoSaving:()=>!o(E),schedule:S,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return L(I)},ra=(a,t,e,n,s,i,[r,c,o],l,y,w,u)=>{const[d,E,v,p]=aa(t,l,s,u);return ia(a,(async()=>await p((async()=>{return await d(),a=(await E(r,c))[U]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await p((async()=>{var t;await d(),await v(r,c,{[U]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[r,c,[l,y,w]],u,d,v,p)=>{const[g,C,O,A]=aa(t,u,s,p),T=async(a,t)=>await E(x(c,(async([e,n,s,i],r)=>{t&&!b(a,r)||await O(e,n,a[r],s,i,t)}))),N=async(a,t)=>y?await O(w,W,{[U]:a},!0,!0,t):null;return ia(a,(async()=>await A((async()=>{await g();const a=await(async()=>S(m(await E(x(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>l?(await C(w,W))[U]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await g(),o(t)){const[t,e]=a();await T(t),await N(e)}else await T(t[0],!0),await N(t[1],!0)}))),e,n,s,i,{[v]:()=>d},d)},oa="ColumnName",la="store",ya="json",wa=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",va="rowId"+oa,pa="tableId",ga="tableName",ma={mode:ya,[Ea]:1},Ca={load:0,save:0,[ga]:t+"_values"},Oa=(a,t,e,n,s)=>{const i=_();return D(a,((a,r)=>{const c=u(M(I(t,y(a)?{[e]:a}:a)),0,P(t));o(c[0])||n(r,c[0])||(s(r,c[0]),B(i,r,c))})),i},Aa="pragma_",Ta="data_version",Na="schema_version";exports.createCrSqliteWasmPersister=(a,e,n,s,i)=>((a,e,n,s,i,r,o,l,w,d="getDb",E)=>{let v,p,g;const[m,C,T,N]=(a=>{const e=(a=>I(ma,y(a)?{[wa]:a}:a??{}))(a),n=e[Ea];if(e.mode==ya){const a=e[wa]??t;return[1,n,[a,e[ua]??W,e[da]??la],G(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(M(I(Ca,r)),0,P(Ca)),o=c[2],l=G(o),w=G(o);return[0,n,[Oa(s,{[pa]:null,[va]:W},pa,(a=>O(w,a)),(a=>q(l,a))),Oa(i,{[ga]:null,[va]:W,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>O(w,t)),((a,t)=>q(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Ta} d,${Na} s,TOTAL_CHANGES() c FROM ${Aa}${Ta} JOIN ${Aa}${Na}`);t==(v??=t)&&e==(p??=e)&&s==(g??=s)||(a(),v=t,p=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>N.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),v=p=g=null,i(t)}),o,l,T,A(N),w,d,E)})(a,n,(async(a,t=[])=>await e.execO(a,t)),(a=>e.onUpdate(((t,e,n)=>a(n)))),(a=>a()),s,i,1,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),f=(a,t)=>a.map(t),A=a=>0==E(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),R=Object,L=a=>R.getPrototypeOf(a),S=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>f(S(a),(([a,e])=>t(e,a))),j=a=>R.values(a),B=a=>E(D(a)),H=a=>(a=>!o(a)&&l(L(a),(a=>a==R.prototype||o(L(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),q=(a,t)=>f([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>o(e)?(b(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(N(a,t)||x(a,t,e()),k(a,t)),J=(a,t,e,n=x)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>J(r,M(await d(f(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(f(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(r,t,J(G(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(f(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>f(D(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&A(E)&&N(r,t))return await a("DROP "+z+p(t)),void x(r,t);if(A(E)||N(r,t)){const n=k(r,t),i=U($(n));await d([...f(E,(async s=>{b(i,s)||(await a(K+p(t)+"ADD"+p(s)),x(n,s,e))})),...!y&&l?f(O(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),x(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(f(E,(a=>n+p(a))))});`),x(r,t,Y([[s,e],...f(E,(a=>[a,e]))]));if(y)o(c)?await a(V+p(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+p(t)+Z+p(s)+"=?",[n]):A(E)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(A(E))N(r,t)&&await a(V+p(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...f(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+p(t)+Z+p(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+C(f(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+p(s)+")DO UPDATE SET"+C(f(r,(a=>p(a)+"=excluded."+p(a))),n):e),f(c,(a=>a??null))),ea=a=>C(f(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[m,p,v,C,f]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),A=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await R((async()=>{try{A(await t())}catch(t){i?.(t),a&&f(a)}g=0}))),L),N=()=>(E&&(s(E),E=void 0),L),O=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),L),b=()=>(l(d,a.delListener),d=void 0,L),R=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(x(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}x(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await N().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,A(t??a),g=0):await T()})),L),stopAutoLoad:N,isAutoLoading:()=>!o(E),save:O,startAutoSave:async()=>(await b().save(),d=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),L),stopAutoSave:b,isAutoSaving:()=>!o(d),schedule:R,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,m))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,m,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,p)=>{const[v,C,f,A]=aa(t,y,s,p),h=async(a,t)=>await d(q(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await f(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await f(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await A((async()=>{await v();const a=await(async()=>M(T(await d(q(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await C(w,m))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await v(),o(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||x(s,i,r)})),s},va="pragma ",Ca="data_version",fa="schema_version",Aa=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,p;const[C,f,A,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(ma,r)),0,B(ma)),o=c[2],l=U(o);return[0,n,[pa(s,{[Ea]:null,[ua]:m},Ea,(a=>W(l,a)&&a==o)),pa(i,{[da]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+fa))[0][fa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(p??=s)||(a(),d=t,g=e)}catch{}},e=f,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,A,O(T),l,y,E)};exports.createElectricSqlPersister=(a,t,e,n,s)=>Aa(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return n=({tablename:t})=>a(t),t.notifier.alias(e).forEach(n);var n}))),(a=>a()),n,s,t,"getElectricClient");
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),v=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),p=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],T=(a,t)=>a?.delete(t),f=Object,h=a=>f.getPrototypeOf(a),N=f.entries,R=f.keys,b=f.freeze,L=(a=[])=>f.fromEntries(a),S=(...a)=>f.assign({},...a),D=(a,t)=>t in a,I=(a,t)=>g(N(a),(([a,e])=>t(e,a))),M=a=>f.values(a),P=a=>d(R(a)),$=a=>(a=>!o(a)&&l(h(a),(a=>a==f.prototype||o(h(a))),(()=>!0)))(a)&&0==P(a),_=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>o(e)?(T(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(A(a,t)||H(a,t,e()),j(a,t)),Y=(a,t,e,n=H)=>(I(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),k="_",q="_id",x=a=>`"${a.replace(/"/g,'""')}"`,G="SELECT",U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=G+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=_();return[async()=>Y(r,L(await E(g(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,L(g(await a(G+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,_),e,((a,t,e)=>{e!=j(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?L(m(g(await a(Q+x(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();I(c??{},(a=>g(R(a??{}),(a=>W(u,a)))));const d=O(u);if(!y&&w&&p(d)&&A(r,t))return await a("DROP "+z+x(t)),void H(r,t);if(p(d)||A(r,t)){const n=j(r,t),i=U(F(n));await E([...g(d,(async s=>{T(i,s)||(await a(K+x(t)+"ADD"+x(s)),H(n,s,e))})),...!y&&l?g(O(i),(async e=>{e!=s&&(await a(K+x(t)+"DROP"+x(e)),H(n,e))})):[]])}else await a("CREATE "+z+x(t)+"("+x(s)+` PRIMARY KEY ON CONFLICT REPLACE${v(g(d,(a=>n+x(a))))});`),H(r,t,_([[s,e],...g(d,(a=>[a,e]))]));if(y)o(c)?await a(V+x(t)+Z+" 1"):await E(I(c,(async(e,n)=>{o(e)?await a(V+x(t)+Z+x(s)+"=?",[n]):p(d)||await ta(a,t,s,R(e),[n,...M(e)],i)})));else if(p(d))A(r,t)&&await a(V+x(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];I(c??{},((a,t)=>{C(n,t,...g(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(V+x(t)+Z+x(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+x(t)+"("+x(s)+v(g(r,(a=>n+x(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+x(s)+")DO UPDATE SET"+v(g(r,(a=>x(a)+"=excluded."+x(a))),n):e),g(c,(a=>a??null))),ea=a=>v(g(a,(()=>"?")),n),na=_(),sa=_(),ia=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,v=0;J(na,w,(()=>0)),J(sa,w,(()=>[]));const[g,p,m,A,O]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(r,a),T=t=>{(g&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=v&&(v=1,await L((async()=>{try{T(await t())}catch(t){i?.(t),a&&O(a)}v=0}))),S),h=()=>(d&&(s(d),d=void 0),S),N=async a=>(1!=v&&(v=2,await L((async()=>{try{await e(p,a)}catch(a){i?.(a)}v=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(C(j(sa,w),...a),await(async()=>{if(!j(na,w)){for(H(na,w,1);!o((a=j(sa,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}H(na,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,T(t??a),v=0):await f()})),S),stopAutoLoad:h,isAutoLoading:()=>!o(d),save:N,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&N(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return b(S)},ra=(a,t,e,n,s,i,[r,c,o],l,w,y,u)=>{const[d,E,v,g]=aa(t,l,s,u);return ia(a,(async()=>await g((async()=>{return await d(),a=(await E(r,c))[k]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await g((async()=>{var t;await d(),await v(r,c,{[k]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[y]:()=>w},w)},ca=(a,t,e,n,s,i,[r,c,[l,w,y]],u,d,v,g)=>{const[p,C,A,O]=aa(t,u,s,g),T=async(a,t)=>await E(B(c,(async([e,n,s,i],r)=>{t&&!D(a,r)||await A(e,n,a[r],s,i,t)}))),f=async(a,t)=>w?await A(y,q,{[k]:a},!0,!0,t):null;return ia(a,(async()=>await O((async()=>{await p();const a=await(async()=>L(m(await E(B(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>l?(await C(y,q))[k]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await p(),o(t)){const[t,e]=a();await T(t),await f(e)}else await T(t[0],!0),await f(t[1],!0)}))),e,n,s,i,{[v]:()=>d},d)},oa="ColumnName",la="store",wa="json",ya=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",va="rowId"+oa,ga="tableId",pa="tableName",ma={mode:wa,[Ea]:1},Ca={load:0,save:0,[pa]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=_();return I(a,((a,r)=>{const c=u(M(S(t,w(a)?{[e]:a}:a)),0,P(t));o(c[0])||n(r,c[0])||(s(r,c[0]),H(i,r,c))})),i},Oa="pragma_",Ta="data_version",fa="schema_version";exports.createElectricSqlPersister=(a,e,n,s,i)=>((a,e,n,s,i,r,o,l,y,d="getDb",E)=>{let v,g,p;const[m,C,T,f]=(a=>{const e=(a=>S(ma,w(a)?{[ya]:a}:a??{}))(a),n=e[Ea];if(e.mode==wa){const a=e[ya]??t;return[1,n,[a,e[ua]??q,e[da]??la],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(M(S(Ca,r)),0,P(Ca)),o=c[2],l=U(o),y=U(o);return[0,n,[Aa(s,{[ga]:null,[va]:q},ga,(a=>A(y,a)),(a=>W(l,a))),Aa(i,{[pa]:null,[va]:q,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>A(y,t)),((a,t)=>W(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Ta} d,${fa} s,TOTAL_CHANGES() c FROM ${Oa}${Ta} JOIN ${Oa}${fa}`);t==(v??=t)&&e==(g??=e)&&s==(p??=s)||(a(),v=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),v=g=p=null,i(t)}),o,l,T,O(f),y,d,E)})(a,n,(async(a,t=[])=>await e.db.raw({sql:a,args:t})),(a=>e.notifier.subscribeToDataChanges((t=>{return n=({tablename:t})=>a(t),e.notifier.alias(t).forEach(n);var n}))),(a=>a()),s,i,1,e,"getElectricClient");
@@ -1 +1 @@
1
- "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,p=async a=>c.all(a),g="_",m="_id",v=a=>`"${a.replace(/"/g,'""')}"`,A="SELECT",C=(a,t="")=>a.join(t),N=(a,t)=>a.map(t),T=a=>0==E(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,S=a=>b.getPrototypeOf(a),D=b.entries,I=b.keys,M=b.freeze,P=(a=[])=>b.fromEntries(a),_=(...a)=>b.assign({},...a),x=(a,t)=>t in a,F=(a,t)=>N(D(a),(([a,e])=>t(e,a))),j=a=>b.values(a),q=a=>E(I(a)),B=a=>(a=>!l(a)&&w(S(a),(a=>a==b.prototype||l(S(a))),(()=>!0)))(a)&&0==q(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>N([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>l(e)?(R(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(O(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>x(t,e)?0:n(a,e))),a),W=a=>new Set(u(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=A+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=H();return[async()=>U(r,P(await p(N(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,P(N(await a(A+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!l($($(r,a),t)))(t,e)?P(f(N(await a(X+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!B(t)))):{},async(t,e,c,o,w,y=!1)=>{const u=W();F(c??{},(a=>N(I(a??{}),(a=>z(u,a)))));const d=L(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+K+v(t)),void G(r,t);if(T(d)||O(r,t)){const s=$(r,t),i=W(Y(s));await p([...N(d,(async e=>{R(i,e)||(await a(V+v(t)+"ADD"+v(e)),G(s,e,n))})),...!y&&o?N(L(i),(async n=>{n!=e&&(await a(V+v(t)+"DROP"+v(n)),G(s,n))})):[]])}else await a("CREATE "+K+v(t)+"("+v(e)+` PRIMARY KEY ON CONFLICT REPLACE${C(N(d,(a=>s+v(a))))});`),G(r,t,H([[e,n],...N(d,(a=>[a,n]))]));if(y)l(c)?await a(Q+v(t)+aa+" 1"):await p(F(c,(async(n,s)=>{l(n)?await a(Q+v(t)+aa+v(e)+"=?",[s]):T(d)||await ea(a,t,e,I(n),[s,...j(n)],i)})));else if(T(d))O(r,t)&&await a(Q+v(t)+aa+" 1");else{const n=f(Y($(r,t)),(a=>a!=e)),s=[],o=[];F(c??{},((a,t)=>{h(s,t,...N(n,(t=>a?.[t]))),h(o,t)})),await ea(a,t,e,n,s,i),await a(Q+v(t)+aa+v(e)+"NOT IN("+na(o)+")",o)}},async t=>{let n;await a("BEGIN");try{n=await t()}catch(a){e?.(a)}return await a("END"),n}]},ea=async(a,t,e,i,c,o=!0)=>await a("INSERT "+(o?n:"OR REPLACE ")+"INTO"+v(t)+"("+v(e)+C(N(i,(a=>s+v(a))))+")VALUES"+d(r(`,(?${r(",?",E(i))})`,E(c)/(E(i)+1)),1)+(o?"ON CONFLICT("+v(e)+")DO UPDATE SET"+C(N(i,(a=>v(a)+"=excluded."+v(a))),s):n),N(c,(a=>a??null))),na=a=>C(N(a,(()=>"?")),s),sa=JSON.parse,ia=H(),ra=H(),ca=(a,t,e,n,s,i,r,c={},o=[])=>{let y,d,E,p=0;J(ia,o,(()=>0)),J(ra,o,(()=>[]));const[g,m,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(g&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await R((async()=>{try{N(await t())}catch(t){i?.(t),a&&C(a)}p=0}))),b),f=()=>(d&&(s(d),d=void 0),b),O=async a=>(1!=p&&(p=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}p=0}))),b),L=()=>(w(E,a.delListener),E=void 0,b),R=async(...a)=>(h($(ra,o),...a),await(async()=>{if(!$(ia,o)){for(G(ia,o,1);!l((a=$(ra,o),y=a.shift()));)try{await y()}catch(a){i?.(a)}G(ia,o,0)}var a})(),b),b={load:T,startAutoLoad:async a=>(await f().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,N(t??a),p=0):await T()})),b),stopAutoLoad:f,isAutoLoading:()=>!l(d),save:O,startAutoSave:async()=>(await L().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),b),stopAutoSave:L,isAutoSaving:()=>!l(E),schedule:R,getStore:()=>a,destroy:()=>f().stopAutoSave(),getStats:()=>({}),...c};return M(b)},oa="store",la=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=ta(t,r,s,l);return ca(a,(async()=>await d((async()=>(await w(),sa((await y(i,m))[g]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[g]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},wa=(a,t,e,n,s,[i,r,[c,o,w]],y,u,d,E)=>{const[v,A,C,N]=ta(t,y,s,E),T=async(a,t)=>await p(k(r,(async([e,n,s,i],r)=>{t&&!x(a,r)||await C(e,n,a[r],s,i,t)}))),h=async(a,t)=>o?await C(w,m,{[g]:a},!0,!0,t):null;return ca(a,(async()=>await N((async()=>{await v();const a=await(async()=>P(f(await p(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(w,m))[g]:{})();return B(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await v(),l(t)){const[t,e]=a();await T(t),await h(e)}else await T(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},ya="json",ua="autoLoadIntervalSeconds",da="rowIdColumnName",Ea="tableId",pa="tableName",ga={mode:ya,[ua]:1},ma={load:0,save:0,[pa]:e+"_values"},va=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=d(j(_(t,y(a)?{[e]:a}:a)),0,q(t));l(r[0])||n(i,r[0])||G(s,i,r)})),s},Aa="pragma ",Ca="data_version",Na="schema_version",Ta=(a,t,n,s,i,r,c,l,w="getDb",u)=>{let E,p,g;const[v,C,N,T]=(a=>{const t=(a=>_(ga,y(a)?{storeTableName:a}:a??{}))(a),n=t[ua];if(t.mode==ya){const{storeTableName:a=e}=t;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,c=d(j(_(ma,r)),0,q(ma)),o=c[2],l=W(o);return[0,n,[va(s,{[Ea]:null,[da]:m},Ea,(a=>z(l,a)&&a==o)),va(i,{[pa]:null,[da]:m,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>z(l,t)&&t==o)),c],l]})(t);return(v?la:wa)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(Aa+Ca))[0][Ca],e=(await n(Aa+Na))[0][Na],s=(await n(A+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=p=null,i(t)}),c,N,L(T),l,w,u)};exports.createExpoSqliteNextPersister=(t,e,n,s,i)=>Ta(t,n,(async(a,t=[])=>await e.getAllAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),s,i,e);
1
+ "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",n="",s=",",i=t(n),r=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,l=a=>null==a,y=(a,t,e)=>l(a)?e?.():t(a),w=a=>t(a)==i,u=a=>Array.isArray(a),d=(a,t,e)=>a.slice(t,e),E=a=>a.length,v=async a=>c.all(a),g=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),m=a=>0==E(a),A=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],T=(a,t)=>a?.delete(t),h=Object,L=a=>h.getPrototypeOf(a),R=h.entries,f=h.keys,S=h.freeze,b=(a=[])=>h.fromEntries(a),D=(...a)=>h.assign({},...a),I=(a,t)=>t in a,M=(a,t)=>p(R(a),(([a,e])=>t(e,a))),P=a=>h.values(a),$=a=>E(f(a)),_=a=>(a=>!l(a)&&y(L(a),(a=>a==h.prototype||l(L(a))),(()=>!0)))(a)&&0==$(a),F=a=>new Map(a),x=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),q=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),B=(a,t,e)=>l(e)?(T(a,t),a):a?.set(t,e),H=(a,t,e,n)=>(N(a,t)||B(a,t,e()),j(a,t)),J=(a,t,e,n=B)=>(M(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:n(a,e))),a),Y="_",k="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",W=a=>new Set(u(a)||l(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,Q="DELETE FROM",X=U+"*FROM",Z="FROM pragma_table_",aa="WHERE",ta=(a,t,e,i)=>{const r=F();return[async()=>J(r,b(await v(p(await a("SELECT name "+Z+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+na(t)+")ORDER BY name",t),(async({name:t})=>[t,b(p(await a(U+" name,type "+Z+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>B(r,t,J(H(r,t,F),e,((a,t,e)=>{e!=j(a,t)&&B(a,t,e)}),((a,t)=>B(a,t))))),((a,t)=>B(r,t))),async(t,e)=>((a,t)=>!l(j(j(r,a),t)))(t,e)?b(A(p(await a(X+G(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!l(a)&&!_(t)))):{},async(t,e,c,o,y,w=!1)=>{const u=W();M(c??{},(a=>p(f(a??{}),(a=>z(u,a)))));const d=O(u);if(!w&&y&&m(d)&&N(r,t))return await a("DROP "+K+G(t)),void B(r,t);if(m(d)||N(r,t)){const s=j(r,t),i=W(x(s));await v([...p(d,(async e=>{T(i,e)||(await a(V+G(t)+"ADD"+G(e)),B(s,e,n))})),...!w&&o?p(O(i),(async n=>{n!=e&&(await a(V+G(t)+"DROP"+G(n)),B(s,n))})):[]])}else await a("CREATE "+K+G(t)+"("+G(e)+` PRIMARY KEY ON CONFLICT REPLACE${g(p(d,(a=>s+G(a))))});`),B(r,t,F([[e,n],...p(d,(a=>[a,n]))]));if(w)l(c)?await a(Q+G(t)+aa+" 1"):await v(M(c,(async(n,s)=>{l(n)?await a(Q+G(t)+aa+G(e)+"=?",[s]):m(d)||await ea(a,t,e,f(n),[s,...P(n)],i)})));else if(m(d))N(r,t)&&await a(Q+G(t)+aa+" 1");else{const n=A(x(j(r,t)),(a=>a!=e)),s=[],o=[];M(c??{},((a,t)=>{C(s,t,...p(n,(t=>a?.[t]))),C(o,t)})),await ea(a,t,e,n,s,i),await a(Q+G(t)+aa+G(e)+"NOT IN("+na(o)+")",o)}},async t=>{let n;await a("BEGIN");try{n=await t()}catch(a){e?.(a)}return await a("END"),n}]},ea=async(a,t,e,i,c,o=!0)=>await a("INSERT "+(o?n:"OR REPLACE ")+"INTO"+G(t)+"("+G(e)+g(p(i,(a=>s+G(a))))+")VALUES"+d(r(`,(?${r(",?",E(i))})`,E(c)/(E(i)+1)),1)+(o?"ON CONFLICT("+G(e)+")DO UPDATE SET"+g(p(i,(a=>G(a)+"=excluded."+G(a))),s):n),p(c,(a=>a??null))),na=a=>g(p(a,(()=>"?")),s),sa=F(),ia=F(),ra=(a,t,e,n,s,i,r,c={},o=[])=>{let w,d,E,v=0;H(sa,o,(()=>0)),H(ia,o,(()=>[]));const[g,p,m,A,N]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:0)(r,a),O=t=>{(g&&u(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=v&&(v=1,await f((async()=>{try{O(await t())}catch(t){i?.(t),a&&N(a)}v=0}))),b),h=()=>(d&&(s(d),d=void 0),b),L=async a=>(1!=v&&(v=2,await f((async()=>{try{await e(p,a)}catch(a){i?.(a)}v=0}))),b),R=()=>(y(E,a.delListener),E=void 0,b),f=async(...a)=>(C(j(ia,o),...a),await(async()=>{if(!j(sa,o)){for(B(sa,o,1);!l((a=j(ia,o),w=a.shift()));)try{await w()}catch(a){i?.(a)}B(sa,o,0)}var a})(),b),b={load:T,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,O(t??a),v=0):await T()})),b),stopAutoLoad:h,isAutoLoading:()=>!l(d),save:L,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&L(a)})),b),stopAutoSave:R,isAutoSaving:()=>!l(E),schedule:f,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return S(b)},ca=(a,t,e,n,s,i,[r,c,o],l,y,w,u)=>{const[d,E,v,g]=ta(t,l,s,u);return ra(a,(async()=>await g((async()=>{return await d(),a=(await E(r,c))[Y]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await g((async()=>{var t;await d(),await v(r,c,{[Y]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},oa=(a,t,e,n,s,i,[r,c,[o,y,w]],u,d,E,g)=>{const[p,m,C,N]=ta(t,u,s,g),O=async(a,t)=>await v(q(c,(async([e,n,s,i],r)=>{t&&!I(a,r)||await C(e,n,a[r],s,i,t)}))),T=async(a,t)=>y?await C(w,k,{[Y]:a},!0,!0,t):null;return ra(a,(async()=>await N((async()=>{await p();const a=await(async()=>b(A(await v(q(r,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>o?(await m(w,k))[Y]:{})();return _(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await p(),l(t)){const[t,e]=a();await O(t),await T(e)}else await O(t[0],!0),await T(t[1],!0)}))),e,n,s,i,{[E]:()=>d},d)},la="ColumnName",ya="store",wa="json",ua=ya+"TableName",da=ya+"Id"+la,Ea=ya+la,va="autoLoadIntervalSeconds",ga="rowId"+la,pa="tableId",ma="tableName",Aa={mode:wa,[va]:1},Ca={load:0,save:0,[ma]:e+"_values"},Na=(a,t,e,n,s)=>{const i=F();return M(a,((a,r)=>{const c=d(P(D(t,w(a)?{[e]:a}:a)),0,$(t));l(c[0])||n(r,c[0])||(s(r,c[0]),B(i,r,c))})),i},Oa="pragma_",Ta="data_version",ha="schema_version";exports.createExpoSqliteNextPersister=(t,n,s,i,r)=>((a,t,n,s,i,r,c,l,y,u="getDb",E)=>{let v,g,p;const[m,A,C,T]=(a=>{const t=(a=>D(Aa,w(a)?{[ua]:a}:a??{}))(a),n=t[va];if(t.mode==wa){const a=t[ua]??e;return[1,n,[a,t[da]??k,t[Ea]??ya],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=t,c=d(P(D(Ca,r)),0,$(Ca)),o=c[2],l=W(o),y=W(o);return[0,n,[Na(s,{[pa]:null,[ga]:k},pa,(a=>N(y,a)),(a=>z(l,a))),Na(i,{[ma]:null,[ga]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ma,((a,t)=>N(y,t)),((a,t)=>z(l,t))),c],l]})(t);return(m?ca:oa)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Ta} d,${ha} s,TOTAL_CHANGES() c FROM ${Oa}${Ta} JOIN ${Oa}${ha}`);t==(v??=t)&&e==(g??=e)&&s==(p??=s)||(a(),v=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),v=g=p=null,i(t)}),c,l,C,O(T),y,u,E)})(t,s,(async(a,t=[])=>await n.getAllAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),i,r,3,n);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),E=a=>a.length,d=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",A=(a,t="")=>a.join(t),C=(a,t)=>a.map(t),N=a=>0==E(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,L=a=>b.getPrototypeOf(a),S=b.entries,D=b.keys,I=b.freeze,M=(a=[])=>b.fromEntries(a),P=(...a)=>b.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>C(S(a),(([a,e])=>t(e,a))),x=a=>b.values(a),j=a=>E(D(a)),B=a=>(a=>!o(a)&&l(L(a),(a=>a==b.prototype||o(L(a))),(()=>!0)))(a)&&0==j(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>C([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(h(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await d(C(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(C(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(T(C(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>C(D(a??{}),(a=>W(u,a)))));const E=O(u);if(!y&&w&&N(E)&&h(r,t))return await a("DROP "+z+p(t)),void q(r,t);if(N(E)||h(r,t)){const n=$(r,t),i=U(Y(n));await d([...C(E,(async s=>{R(i,s)||(await a(K+p(t)+"ADD"+p(s)),q(n,s,e))})),...!y&&l?C(O(i),(async e=>{e!=s&&(await a(K+p(t)+"DROP"+p(e)),q(n,e))})):[]])}else await a("CREATE "+z+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${A(C(E,(a=>n+p(a))))});`),q(r,t,H([[s,e],...C(E,(a=>[a,e]))]));if(y)o(c)?await a(V+p(t)+Z+" 1"):await d(F(c,(async(e,n)=>{o(e)?await a(V+p(t)+Z+p(s)+"=?",[n]):N(E)||await ta(a,t,s,D(e),[n,...x(e)],i)})));else if(N(E))h(r,t)&&await a(V+p(t)+Z+" 1");else{const e=T(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...C(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(V+p(t)+Z+p(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+A(C(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",E(r))})`,E(c)/(E(r)+1)),1)+(o?"ON CONFLICT("+p(s)+")DO UPDATE SET"+A(C(r,(a=>p(a)+"=excluded."+p(a))),n):e),C(c,(a=>a??null))),ea=a=>A(C(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,E,d,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[m,p,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),N=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await b((async()=>{try{N(await t())}catch(t){i?.(t),a&&C(a)}g=0}))),L),h=()=>(E&&(s(E),E=void 0),L),O=async a=>(1!=g&&(g=2,await b((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),L),R=()=>(l(d,a.delListener),d=void 0,L),b=async(...a)=>(f($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await h().load(a),E=n((async(a,t)=>{t||a?2!=g&&(g=1,N(t??a),g=0):await T()})),L),stopAutoLoad:h,isAutoLoading:()=>!o(E),save:O,startAutoSave:async()=>(await R().save(),d=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),L),stopAutoSave:R,isAutoSaving:()=>!o(d),schedule:b,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,E]=aa(t,r,s,l);return ra(a,(async()=>await E((async()=>(await w(),na((await y(i,m))[g]?.[ca]??"null"))))),(async a=>await E((async()=>{var t;await w(),await u(i,m,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,E,p)=>{const[v,A,C,N]=aa(t,y,s,p),f=async(a,t)=>await d(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await C(e,n,a[r],s,i,t)}))),h=async(a,t)=>l?await C(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await N((async()=>{await v();const a=await(async()=>M(T(await d(k(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await A(w,m))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await N((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await h(e)}else await f(t[0],!0),await h(t[1],!0)}))),e,n,s,1,{[E]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",Ea="tableId",da="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[da]:t+"_values"},pa=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(x(P(t,w(a)?{[e]:a}:a)),0,j(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},va="pragma ",Aa="data_version",Ca="schema_version",Na=(a,e,n,s,i,r,o,l,y="getDb",E)=>{let d,g,p;const[A,C,N,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(x(P(ma,r)),0,j(ma)),o=c[2],l=U(o);return[0,n,[pa(s,{[Ea]:null,[ua]:m},Ea,(a=>W(l,a)&&a==o)),pa(i,{[da]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},da,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(A?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Aa))[0][Aa],e=(await n(va+Ca))[0][Ca],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(d??=t)&&e==(g??=e)&&s==(p??=s)||(a(),d=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),d=g=null,i(t)}),o,N,O(T),l,y,E)};exports.createExpoSqlitePersister=(a,t,e,n,s)=>Na(a,e,(async(a,e=[])=>(await t.execAsync([{sql:a,args:e}],!1))[0].rows),(a=>t.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),y=t=>a(t)==s,w=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),v=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),p=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),T=Object,h=a=>T.getPrototypeOf(a),R=T.entries,f=T.keys,L=T.freeze,S=(a=[])=>T.fromEntries(a),b=(...a)=>T.assign({},...a),D=(a,t)=>t in a,I=(a,t)=>g(R(a),(([a,e])=>t(e,a))),M=a=>T.values(a),P=a=>d(f(a)),$=a=>(a=>!o(a)&&l(h(a),(a=>a==T.prototype||o(h(a))),(()=>!0)))(a)&&0==P(a),_=a=>new Map(a),F=a=>[...a?.keys()??[]],x=(a,t)=>a?.get(t),j=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),B=(a,t,e)=>o(e)?(N(a,t),a):a?.set(t,e),H=(a,t,e,n)=>(A(a,t)||B(a,t,e()),x(a,t)),J=(a,t,e,n=B)=>(I(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>D(t,e)?0:n(a,e))),a),Y="_",k="_id",q=a=>`"${a.replace(/"/g,'""')}"`,G="SELECT",U=a=>new Set(w(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=G+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=_();return[async()=>J(r,S(await E(g(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,S(g(await a(G+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>B(r,t,J(H(r,t,_),e,((a,t,e)=>{e!=x(a,t)&&B(a,t,e)}),((a,t)=>B(a,t))))),((a,t)=>B(r,t))),async(t,e)=>((a,t)=>!o(x(x(r,a),t)))(t,e)?S(m(g(await a(Q+q(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,c,l,y,w=!1)=>{const u=U();I(c??{},(a=>g(f(a??{}),(a=>W(u,a)))));const d=O(u);if(!w&&y&&p(d)&&A(r,t))return await a("DROP "+z+q(t)),void B(r,t);if(p(d)||A(r,t)){const n=x(r,t),i=U(F(n));await E([...g(d,(async s=>{N(i,s)||(await a(K+q(t)+"ADD"+q(s)),B(n,s,e))})),...!w&&l?g(O(i),(async e=>{e!=s&&(await a(K+q(t)+"DROP"+q(e)),B(n,e))})):[]])}else await a("CREATE "+z+q(t)+"("+q(s)+` PRIMARY KEY ON CONFLICT REPLACE${v(g(d,(a=>n+q(a))))});`),B(r,t,_([[s,e],...g(d,(a=>[a,e]))]));if(w)o(c)?await a(V+q(t)+Z+" 1"):await E(I(c,(async(e,n)=>{o(e)?await a(V+q(t)+Z+q(s)+"=?",[n]):p(d)||await ta(a,t,s,f(e),[n,...M(e)],i)})));else if(p(d))A(r,t)&&await a(V+q(t)+Z+" 1");else{const e=m(F(x(r,t)),(a=>a!=s)),n=[],o=[];I(c??{},((a,t)=>{C(n,t,...g(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(V+q(t)+Z+q(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+q(t)+"("+q(s)+v(g(r,(a=>n+q(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+q(s)+")DO UPDATE SET"+v(g(r,(a=>q(a)+"=excluded."+q(a))),n):e),g(c,(a=>a??null))),ea=a=>v(g(a,(()=>"?")),n),na=_(),sa=_(),ia=(a,t,e,n,s,i,r,c={},y=[])=>{let u,d,E,v=0;H(na,y,(()=>0)),H(sa,y,(()=>[]));const[g,p,m,A,O]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(r,a),N=t=>{(g&&w(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=v&&(v=1,await S((async()=>{try{N(await t())}catch(t){i?.(t),a&&O(a)}v=0}))),b),h=()=>(d&&(s(d),d=void 0),b),R=async a=>(1!=v&&(v=2,await S((async()=>{try{await e(p,a)}catch(a){i?.(a)}v=0}))),b),f=()=>(l(E,a.delListener),E=void 0,b),S=async(...a)=>(C(x(sa,y),...a),await(async()=>{if(!x(na,y)){for(B(na,y,1);!o((a=x(sa,y),u=a.shift()));)try{await u()}catch(a){i?.(a)}B(na,y,0)}var a})(),b),b={load:T,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,N(t??a),v=0):await T()})),b),stopAutoLoad:h,isAutoLoading:()=>!o(d),save:R,startAutoSave:async()=>(await f().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&R(a)})),b),stopAutoSave:f,isAutoSaving:()=>!o(E),schedule:S,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return L(b)},ra=(a,t,e,n,s,i,[r,c,o],l,y,w,u)=>{const[d,E,v,g]=aa(t,l,s,u);return ia(a,(async()=>await g((async()=>{return await d(),a=(await E(r,c))[Y]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await g((async()=>{var t;await d(),await v(r,c,{[Y]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[w]:()=>y},y)},ca=(a,t,e,n,s,i,[r,c,[l,y,w]],u,d,v,g)=>{const[p,C,A,O]=aa(t,u,s,g),N=async(a,t)=>await E(j(c,(async([e,n,s,i],r)=>{t&&!D(a,r)||await A(e,n,a[r],s,i,t)}))),T=async(a,t)=>y?await A(w,k,{[Y]:a},!0,!0,t):null;return ia(a,(async()=>await O((async()=>{await p();const a=await(async()=>S(m(await E(j(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>l?(await C(w,k))[Y]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await p(),o(t)){const[t,e]=a();await N(t),await T(e)}else await N(t[0],!0),await T(t[1],!0)}))),e,n,s,i,{[v]:()=>d},d)},oa="ColumnName",la="store",ya="json",wa=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",va="rowId"+oa,ga="tableId",pa="tableName",ma={mode:ya,[Ea]:1},Ca={load:0,save:0,[pa]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=_();return I(a,((a,r)=>{const c=u(M(b(t,y(a)?{[e]:a}:a)),0,P(t));o(c[0])||n(r,c[0])||(s(r,c[0]),B(i,r,c))})),i},Oa="pragma_",Na="data_version",Ta="schema_version";exports.createExpoSqlitePersister=(a,e,n,s,i)=>((a,e,n,s,i,r,o,l,w,d="getDb",E)=>{let v,g,p;const[m,C,N,T]=(a=>{const e=(a=>b(ma,y(a)?{[wa]:a}:a??{}))(a),n=e[Ea];if(e.mode==ya){const a=e[wa]??t;return[1,n,[a,e[ua]??k,e[da]??la],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(M(b(Ca,r)),0,P(Ca)),o=c[2],l=U(o),w=U(o);return[0,n,[Aa(s,{[ga]:null,[va]:k},ga,(a=>A(w,a)),(a=>W(l,a))),Aa(i,{[pa]:null,[va]:k,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>A(w,t)),((a,t)=>W(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Na} d,${Ta} s,TOTAL_CHANGES() c FROM ${Oa}${Na} JOIN ${Oa}${Ta}`);t==(v??=t)&&e==(g??=e)&&s==(p??=s)||(a(),v=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),v=g=p=null,i(t)}),o,l,N,O(T),w,d,E)})(a,n,(async(a,t=[])=>(await e.execAsync([{sql:a,args:t}],!1))[0].rows),(a=>e.onDatabaseChange((({tableName:t})=>a(t)))),(a=>a.remove()),s,i,3,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",m=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,h=a=>[...a?.values()??[]],L=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),b=R.entries,D=R.keys,I=R.freeze,M=(a=[])=>R.fromEntries(a),P=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!o(a)&&l(S(a),(a=>a==R.prototype||o(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(L(a,t),a):a?.set(t,e),G=(a,t,e,n)=>(O(a,t)||q(a,t,e()),$(a,t)),J=(a,t,e,n=q)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>J(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,J(G(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o($($(r,a),t)))(t,e)?M(f(A(await a(Q+m(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!B(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();F(c??{},(a=>A(D(a??{}),(a=>W(u,a)))));const d=h(u);if(!y&&w&&T(d)&&O(r,t))return await a("DROP "+z+m(t)),void q(r,t);if(T(d)||O(r,t)){const n=$(r,t),i=U(Y(n));await E([...A(d,(async s=>{L(i,s)||(await a(K+m(t)+"ADD"+m(s)),q(n,s,e))})),...!y&&l?A(h(i),(async e=>{e!=s&&(await a(K+m(t)+"DROP"+m(e)),q(n,e))})):[]])}else await a("CREATE "+z+m(t)+"("+m(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+m(a))))});`),q(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+m(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+m(t)+Z+m(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))O(r,t)&&await a(V+m(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{N(n,t,...A(e,(t=>a?.[t]))),N(o,t)})),await ta(a,t,s,e,n,i),await a(V+m(t)+Z+m(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+m(t)+"("+m(s)+C(A(r,(a=>n+m(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+m(s)+")DO UPDATE SET"+C(A(r,(a=>m(a)+"=excluded."+m(a))),n):e),A(c,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;G(sa,w,(()=>0)),G(ia,w,(()=>[]));const[p,m,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),O=()=>(d&&(s(d),d=void 0),S),h=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(m,a)}catch(a){i?.(a)}g=0}))),S),L=()=>(l(E,a.delListener),E=void 0,S),R=async(...a)=>(N($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(q(sa,w,1);!o((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(sa,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await O().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),S),stopAutoLoad:O,isAutoLoading:()=>!o(d),save:h,startAutoSave:async()=>(await L().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&h(a)})),S),stopAutoSave:L,isAutoSaving:()=>!o(E),schedule:R,getStore:()=>a,destroy:()=>O().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,m)=>{const[v,C,A,T]=aa(t,y,s,m),N=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),O=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>M(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>c?(await C(w,p))[g]:{})();return B(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),o(t)){const[t,e]=a();await N(t),await O(e)}else await N(t[0],!0),await O(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},ma=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,x(t));o(r[0])||n(i,r[0])||q(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,m;const[C,A,T,f]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,x(pa)),o=c[2],l=U(o);return[0,n,[ma(s,{[da]:null,[ua]:p},da,(a=>W(l,a)&&a==o)),ma(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>W(l,t)&&t==o)),c],l]})(e);return(C?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(m??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,T,h(f),l,y,d)};exports.createLibSqlPersister=(a,t,e,n,s)=>Ta(a,e,(async(a,e=[])=>(await t.execute({sql:a,args:e})).rows),(()=>()=>0),(a=>a()),n,s,t,"getClient");
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),v=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),p=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],T=(a,t)=>a?.delete(t),N=Object,h=a=>N.getPrototypeOf(a),L=N.entries,R=N.keys,f=N.freeze,S=(a=[])=>N.fromEntries(a),b=(...a)=>N.assign({},...a),I=(a,t)=>t in a,D=(a,t)=>g(L(a),(([a,e])=>t(e,a))),M=a=>N.values(a),P=a=>d(R(a)),$=a=>(a=>!o(a)&&l(h(a),(a=>a==N.prototype||o(h(a))),(()=>!0)))(a)&&0==P(a),_=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),B=(a,t,e)=>o(e)?(T(a,t),a):a?.set(t,e),H=(a,t,e,n)=>(A(a,t)||B(a,t,e()),j(a,t)),J=(a,t,e,n=B)=>(D(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:n(a,e))),a),Y="_",k="_id",q=a=>`"${a.replace(/"/g,'""')}"`,G="SELECT",U=a=>new Set(y(a)||o(a)?a:[a]),W=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=G+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=_();return[async()=>J(r,S(await E(g(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,S(g(await a(G+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>B(r,t,J(H(r,t,_),e,((a,t,e)=>{e!=j(a,t)&&B(a,t,e)}),((a,t)=>B(a,t))))),((a,t)=>B(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?S(m(g(await a(Q+q(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=U();D(c??{},(a=>g(R(a??{}),(a=>W(u,a)))));const d=O(u);if(!y&&w&&p(d)&&A(r,t))return await a("DROP "+z+q(t)),void B(r,t);if(p(d)||A(r,t)){const n=j(r,t),i=U(F(n));await E([...g(d,(async s=>{T(i,s)||(await a(K+q(t)+"ADD"+q(s)),B(n,s,e))})),...!y&&l?g(O(i),(async e=>{e!=s&&(await a(K+q(t)+"DROP"+q(e)),B(n,e))})):[]])}else await a("CREATE "+z+q(t)+"("+q(s)+` PRIMARY KEY ON CONFLICT REPLACE${v(g(d,(a=>n+q(a))))});`),B(r,t,_([[s,e],...g(d,(a=>[a,e]))]));if(y)o(c)?await a(V+q(t)+Z+" 1"):await E(D(c,(async(e,n)=>{o(e)?await a(V+q(t)+Z+q(s)+"=?",[n]):p(d)||await ta(a,t,s,R(e),[n,...M(e)],i)})));else if(p(d))A(r,t)&&await a(V+q(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];D(c??{},((a,t)=>{C(n,t,...g(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(V+q(t)+Z+q(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+q(t)+"("+q(s)+v(g(r,(a=>n+q(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+q(s)+")DO UPDATE SET"+v(g(r,(a=>q(a)+"=excluded."+q(a))),n):e),g(c,(a=>a??null))),ea=a=>v(g(a,(()=>"?")),n),na=_(),sa=_(),ia=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,v=0;H(na,w,(()=>0)),H(sa,w,(()=>[]));const[g,p,m,A,O]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(r,a),T=t=>{(g&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},N=async a=>(2!=v&&(v=1,await S((async()=>{try{T(await t())}catch(t){i?.(t),a&&O(a)}v=0}))),b),h=()=>(d&&(s(d),d=void 0),b),L=async a=>(1!=v&&(v=2,await S((async()=>{try{await e(p,a)}catch(a){i?.(a)}v=0}))),b),R=()=>(l(E,a.delListener),E=void 0,b),S=async(...a)=>(C(j(sa,w),...a),await(async()=>{if(!j(na,w)){for(B(na,w,1);!o((a=j(sa,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}B(na,w,0)}var a})(),b),b={load:N,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,T(t??a),v=0):await N()})),b),stopAutoLoad:h,isAutoLoading:()=>!o(d),save:L,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&L(a)})),b),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:S,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return f(b)},ra=(a,t,e,n,s,i,[r,c,o],l,w,y,u)=>{const[d,E,v,g]=aa(t,l,s,u);return ia(a,(async()=>await g((async()=>{return await d(),a=(await E(r,c))[Y]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await g((async()=>{var t;await d(),await v(r,c,{[Y]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[y]:()=>w},w)},ca=(a,t,e,n,s,i,[r,c,[l,w,y]],u,d,v,g)=>{const[p,C,A,O]=aa(t,u,s,g),T=async(a,t)=>await E(x(c,(async([e,n,s,i],r)=>{t&&!I(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>w?await A(y,k,{[Y]:a},!0,!0,t):null;return ia(a,(async()=>await O((async()=>{await p();const a=await(async()=>S(m(await E(x(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>l?(await C(y,k))[Y]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await p(),o(t)){const[t,e]=a();await T(t),await N(e)}else await T(t[0],!0),await N(t[1],!0)}))),e,n,s,i,{[v]:()=>d},d)},oa="ColumnName",la="store",wa="json",ya=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",va="rowId"+oa,ga="tableId",pa="tableName",ma={mode:wa,[Ea]:1},Ca={load:0,save:0,[pa]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=_();return D(a,((a,r)=>{const c=u(M(b(t,w(a)?{[e]:a}:a)),0,P(t));o(c[0])||n(r,c[0])||(s(r,c[0]),B(i,r,c))})),i},Oa="pragma_",Ta="data_version",Na="schema_version";exports.createLibSqlPersister=(a,e,n,s,i)=>((a,e,n,s,i,r,o,l,y,d="getDb",E)=>{let v,g,p;const[m,C,T,N]=(a=>{const e=(a=>b(ma,w(a)?{[ya]:a}:a??{}))(a),n=e[Ea];if(e.mode==wa){const a=e[ya]??t;return[1,n,[a,e[ua]??k,e[da]??la],U(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(M(b(Ca,r)),0,P(Ca)),o=c[2],l=U(o),y=U(o);return[0,n,[Aa(s,{[ga]:null,[va]:k},ga,(a=>A(y,a)),(a=>W(l,a))),Aa(i,{[pa]:null,[va]:k,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>A(y,t)),((a,t)=>W(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Ta} d,${Na} s,TOTAL_CHANGES() c FROM ${Oa}${Ta} JOIN ${Oa}${Na}`);t==(v??=t)&&e==(g??=e)&&s==(p??=s)||(a(),v=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>N.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),v=g=p=null,i(t)}),o,l,T,O(N),y,d,E)})(a,n,(async(a,t=[])=>(await e.execute({sql:a,args:t})).rows),(()=>()=>0),(a=>a()),s,i,1,e,"getClient");
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,o=clearInterval,c=a=>null==a,l=(a,t,e)=>c(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",m="_id",p=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",C=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),T=a=>0==d(a),f=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],b=(a,t)=>a?.delete(t),R=Object,S=a=>R.getPrototypeOf(a),L=R.entries,D=R.keys,I=R.freeze,P=(a=[])=>R.fromEntries(a),M=(...a)=>R.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(L(a),(([a,e])=>t(e,a))),j=a=>R.values(a),x=a=>d(D(a)),B=a=>(a=>!c(a)&&l(S(a),(a=>a==R.prototype||c(S(a))),(()=>!0)))(a)&&0==x(a),H=a=>new Map(a),Y=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),k=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>c(e)?(b(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),$(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||c(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,q="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=H();return[async()=>U(r,P(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,P(A(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,H),e,((a,t,e)=>{e!=$(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!c($($(r,a),t)))(t,e)?P(f(A(await a(Q+p(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!c(a)&&!B(t)))):{},async(t,s,o,l,w,y=!1)=>{const u=W();F(o??{},(a=>A(D(a??{}),(a=>z(u,a)))));const d=O(u);if(!y&&w&&T(d)&&N(r,t))return await a("DROP "+K+p(t)),void G(r,t);if(T(d)||N(r,t)){const n=$(r,t),i=W(Y(n));await E([...A(d,(async s=>{b(i,s)||(await a(V+p(t)+"ADD"+p(s)),G(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(V+p(t)+"DROP"+p(e)),G(n,e))})):[]])}else await a("CREATE "+K+p(t)+"("+p(s)+` PRIMARY KEY ON CONFLICT REPLACE${C(A(d,(a=>n+p(a))))});`),G(r,t,H([[s,e],...A(d,(a=>[a,e]))]));if(y)c(o)?await a(q+p(t)+Z+" 1"):await E(F(o,(async(e,n)=>{c(e)?await a(q+p(t)+Z+p(s)+"=?",[n]):T(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(T(d))N(r,t)&&await a(q+p(t)+Z+" 1");else{const e=f(Y($(r,t)),(a=>a!=s)),n=[],c=[];F(o??{},((a,t)=>{h(n,t,...A(e,(t=>a?.[t]))),h(c,t)})),await ta(a,t,s,e,n,i),await a(q+p(t)+Z+p(s)+"NOT IN("+ea(c)+")",c)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,o,c=!0)=>await a("INSERT "+(c?e:"OR REPLACE ")+"INTO"+p(t)+"("+p(s)+C(A(r,(a=>n+p(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(o)/(d(r)+1)),1)+(c?"ON CONFLICT("+p(s)+")DO UPDATE SET"+C(A(r,(a=>p(a)+"=excluded."+p(a))),n):e),A(o,(a=>a??null))),ea=a=>C(A(a,(()=>"?")),n),na=JSON.parse,sa=H(),ia=H(),ra=(a,t,e,n,s,i,r,o={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[m,p,v,C,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!B(a)||!B(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!B(a)||!B(t),t.setContent]:0)(r,a),T=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=g&&(g=1,await R((async()=>{try{T(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),O=async a=>(1!=g&&(g=2,await R((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),S),b=()=>(l(E,a.delListener),E=void 0,S),R=async(...a)=>(h($(ia,w),...a),await(async()=>{if(!$(sa,w)){for(G(sa,w,1);!c((a=$(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:f,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,T(t??a),g=0):await f()})),S),stopAutoLoad:N,isAutoLoading:()=>!c(d),save:O,startAutoSave:async()=>(await b().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();C(a)&&O(a)})),S),stopAutoSave:b,isAutoSaving:()=>!c(E),schedule:R,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...o};return I(S)},oa="store",ca=(a,t,e,n,s,[i],r,o,c,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[g]?.[oa]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[g]:{[oa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?R.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[c]:()=>o},o)},la=(a,t,e,n,s,[i,r,[o,l,w]],y,u,d,p)=>{const[v,C,A,T]=aa(t,y,s,p),h=async(a,t)=>await E(k(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,m,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await T((async()=>{await v();const a=await(async()=>P(f(await E(k(i,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!B(a[1])))))(),t=await(async()=>o?(await C(w,m))[g]:{})();return B(a)&&c(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await v(),c(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},pa=(a,t,e,n)=>{const s=H();return F(a,((a,i)=>{const r=u(j(M(t,w(a)?{[e]:a}:a)),0,x(t));c(r[0])||n(i,r[0])||G(s,i,r)})),s},va="pragma ",Ca="data_version",Aa="schema_version",Ta=(a,e,n,s,i,r,c,l,y="getDb",d)=>{let E,g,p;const[C,A,T,f]=(a=>{const e=(a=>M(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,o=u(j(M(ma,r)),0,x(ma)),c=o[2],l=W(c);return[0,n,[pa(s,{[da]:null,[ua]:m},da,(a=>z(l,a)&&a==c)),pa(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>z(l,t)&&t==c)),o],l]})(e);return(C?ca:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Ca))[0][Ca],e=(await n(va+Aa))[0][Aa],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(p??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=g=null,i(t)}),c,T,O(f),l,y,d)};exports.createPowerSyncPersister=(a,t,e,n,s,i=!1)=>Ta(a,e,(async(a,e=[])=>t.execute(a,e).then((a=>a.rows?._array??[]))),(a=>{const e=new AbortController,n=t.onChange({rawTableNames:!0,signal:e.signal});return(async()=>{for await(const t of n)A(t.changedTables,a)})(),e}),(a=>a.abort()),n,s,t,"getPowerSync",i);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),p=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,T=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),O=Object,N=a=>O.getPrototypeOf(a),f=O.entries,R=O.keys,S=O.freeze,b=(a=[])=>O.fromEntries(a),L=(...a)=>O.assign({},...a),I=(a,t)=>t in a,D=(a,t)=>v(f(a),(([a,e])=>t(e,a))),P=a=>O.values(a),M=a=>d(R(a)),_=a=>(a=>!o(a)&&l(N(a),(a=>a==O.prototype||o(N(a))),(()=>!0)))(a)&&0==M(a),$=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),x=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),B=(a,t,e)=>o(e)?(h(a,t),a):a?.set(t,e),H=(a,t,e,n)=>(A(a,t)||B(a,t,e()),j(a,t)),J=(a,t,e,n=B)=>(D(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:n(a,e))),a),Y="_",k="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",W=a=>new Set(y(a)||o(a)?a:[a]),z=(a,t)=>a?.add(t),K="TABLE",V="ALTER "+K,q="DELETE FROM",Q=U+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=$();return[async()=>J(r,b(await E(v(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,b(v(await a(U+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>B(r,t,J(H(r,t,$),e,((a,t,e)=>{e!=j(a,t)&&B(a,t,e)}),((a,t)=>B(a,t))))),((a,t)=>B(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?b(m(v(await a(Q+G(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!_(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=W();D(c??{},(a=>v(R(a??{}),(a=>z(u,a)))));const d=T(u);if(!y&&w&&p(d)&&A(r,t))return await a("DROP "+K+G(t)),void B(r,t);if(p(d)||A(r,t)){const n=j(r,t),i=W(F(n));await E([...v(d,(async s=>{h(i,s)||(await a(V+G(t)+"ADD"+G(s)),B(n,s,e))})),...!y&&l?v(T(i),(async e=>{e!=s&&(await a(V+G(t)+"DROP"+G(e)),B(n,e))})):[]])}else await a("CREATE "+K+G(t)+"("+G(s)+` PRIMARY KEY ON CONFLICT REPLACE${g(v(d,(a=>n+G(a))))});`),B(r,t,$([[s,e],...v(d,(a=>[a,e]))]));if(y)o(c)?await a(q+G(t)+Z+" 1"):await E(D(c,(async(e,n)=>{o(e)?await a(q+G(t)+Z+G(s)+"=?",[n]):p(d)||await ta(a,t,s,R(e),[n,...P(e)],i)})));else if(p(d))A(r,t)&&await a(q+G(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];D(c??{},((a,t)=>{C(n,t,...v(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(q+G(t)+Z+G(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+G(t)+"("+G(s)+g(v(r,(a=>n+G(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+G(s)+")DO UPDATE SET"+g(v(r,(a=>G(a)+"=excluded."+G(a))),n):e),v(c,(a=>a??null))),ea=a=>g(v(a,(()=>"?")),n),na=$(),sa=$(),ia=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;H(na,w,(()=>0)),H(sa,w,(()=>[]));const[v,p,m,A,T]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!_(a)||!_(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!_(a)||!_(t),t.setContent]:0)(r,a),h=t=>{(v&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},O=async a=>(2!=g&&(g=1,await b((async()=>{try{h(await t())}catch(t){i?.(t),a&&T(a)}g=0}))),L),N=()=>(d&&(s(d),d=void 0),L),f=async a=>(1!=g&&(g=2,await b((async()=>{try{await e(p,a)}catch(a){i?.(a)}g=0}))),L),R=()=>(l(E,a.delListener),E=void 0,L),b=async(...a)=>(C(j(sa,w),...a),await(async()=>{if(!j(na,w)){for(B(na,w,1);!o((a=j(sa,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}B(na,w,0)}var a})(),L),L={load:O,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,h(t??a),g=0):await O()})),L),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:f,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&f(a)})),L),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:b,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return S(L)},ra=(a,t,e,n,s,i,[r,c,o],l,w,y,u)=>{const[d,E,g,v]=aa(t,l,s,u);return ia(a,(async()=>await v((async()=>{return await d(),a=(await E(r,c))[Y]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await d(),await g(r,c,{[Y]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[y]:()=>w},w)},ca=(a,t,e,n,s,i,[r,c,[l,w,y]],u,d,g,v)=>{const[p,C,A,T]=aa(t,u,s,v),h=async(a,t)=>await E(x(c,(async([e,n,s,i],r)=>{t&&!I(a,r)||await A(e,n,a[r],s,i,t)}))),O=async(a,t)=>w?await A(y,k,{[Y]:a},!0,!0,t):null;return ia(a,(async()=>await T((async()=>{await p();const a=await(async()=>b(m(await E(x(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!_(a[1])))))(),t=await(async()=>l?(await C(y,k))[Y]:{})();return _(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await p(),o(t)){const[t,e]=a();await h(t),await O(e)}else await h(t[0],!0),await O(t[1],!0)}))),e,n,s,i,{[g]:()=>d},d)},oa="ColumnName",la="store",wa="json",ya=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",ga="rowId"+oa,va="tableId",pa="tableName",ma={mode:wa,[Ea]:1},Ca={load:0,save:0,[pa]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=$();return D(a,((a,r)=>{const c=u(P(L(t,w(a)?{[e]:a}:a)),0,M(t));o(c[0])||n(r,c[0])||(s(r,c[0]),B(i,r,c))})),i},Ta="pragma_",ha="data_version",Oa="schema_version";exports.createPowerSyncPersister=(a,e,n,s,i,r=!1)=>((a,e,n,s,i,r,o,l,y,d="getDb",E)=>{let g,v,p;const[m,C,h,O]=(a=>{const e=(a=>L(ma,w(a)?{[ya]:a}:a??{}))(a),n=e[Ea];if(e.mode==wa){const a=e[ya]??t;return[1,n,[a,e[ua]??k,e[da]??la],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(P(L(Ca,r)),0,M(Ca)),o=c[2],l=W(o),y=W(o);return[0,n,[Aa(s,{[va]:null,[ga]:k},va,(a=>A(y,a)),(a=>z(l,a))),Aa(i,{[pa]:null,[ga]:k,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>A(y,t)),((a,t)=>z(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${ha} d,${Oa} s,TOTAL_CHANGES() c FROM ${Ta}${ha} JOIN ${Ta}${Oa}`);t==(g??=t)&&e==(v??=e)&&s==(p??=s)||(a(),g=t,v=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>O.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),g=v=p=null,i(t)}),o,l,h,T(O),y,d,E)})(a,n,(async(a,t=[])=>e.execute(a,t).then((a=>a.rows?._array??[]))),(a=>{const t=new AbortController,n=e.onChange({rawTableNames:!0,signal:t.signal});return(async()=>{for await(const t of n)v(t.changedTables,a)})(),t}),(a=>a.abort()),s,i,1,e,"getPowerSync",r);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p="_",m="_id",g=a=>`"${a.replace(/"/g,'""')}"`,v="SELECT",A=(a,t="")=>a.join(t),C=(a,t)=>a.map(t),h=a=>0==d(a),T=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),b=Object,L=a=>b.getPrototypeOf(a),S=b.entries,D=b.keys,I=b.freeze,_=(a=[])=>b.fromEntries(a),M=(...a)=>b.assign({},...a),P=(a,t)=>t in a,F=(a,t)=>C(S(a),(([a,e])=>t(e,a))),j=a=>b.values(a),k=a=>d(D(a)),q=a=>(a=>!o(a)&&l(L(a),(a=>a==b.prototype||o(L(a))),(()=>!0)))(a)&&0==k(a),x=a=>new Map(a),B=a=>[...a?.keys()??[]],H=(a,t)=>a?.get(t),W=(a,t)=>C([...a?.entries()??[]],(([a,e])=>t(e,a))),Y=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),$=(a,t,e,n)=>(N(a,t)||Y(a,t,e()),H(a,t)),G=(a,t,e,n=Y)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>P(t,e)?0:n(a,e))),a),J=a=>new Set(y(a)||o(a)?a:[a]),U=(a,t)=>a?.add(t),V="TABLE",z="ALTER "+V,K="DELETE FROM",Q=v+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=x();return[async()=>G(r,_(await E(C(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,_(C(await a(v+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>Y(r,t,G($(r,t,x),e,((a,t,e)=>{e!=H(a,t)&&Y(a,t,e)}),((a,t)=>Y(a,t))))),((a,t)=>Y(r,t))),async(t,e)=>((a,t)=>!o(H(H(r,a),t)))(t,e)?_(T(C(await a(Q+g(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!q(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=J();F(c??{},(a=>C(D(a??{}),(a=>U(u,a)))));const d=O(u);if(!y&&w&&h(d)&&N(r,t))return await a("DROP "+V+g(t)),void Y(r,t);if(h(d)||N(r,t)){const n=H(r,t),i=J(B(n));await E([...C(d,(async s=>{R(i,s)||(await a(z+g(t)+"ADD"+g(s)),Y(n,s,e))})),...!y&&l?C(O(i),(async e=>{e!=s&&(await a(z+g(t)+"DROP"+g(e)),Y(n,e))})):[]])}else await a("CREATE "+V+g(t)+"("+g(s)+` PRIMARY KEY ON CONFLICT REPLACE${A(C(d,(a=>n+g(a))))});`),Y(r,t,x([[s,e],...C(d,(a=>[a,e]))]));if(y)o(c)?await a(K+g(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(K+g(t)+Z+g(s)+"=?",[n]):h(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(h(d))N(r,t)&&await a(K+g(t)+Z+" 1");else{const e=T(B(H(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{f(n,t,...C(e,(t=>a?.[t]))),f(o,t)})),await ta(a,t,s,e,n,i),await a(K+g(t)+Z+g(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+g(t)+"("+g(s)+A(C(r,(a=>n+g(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+g(s)+")DO UPDATE SET"+A(C(r,(a=>g(a)+"=excluded."+g(a))),n):e),C(c,(a=>a??null))),ea=a=>A(C(a,(()=>"?")),n),na=JSON.parse,sa=x(),ia=x(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;$(sa,w,(()=>0)),$(ia,w,(()=>[]));const[m,g,v,A,C]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!q(a)||!q(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!q(a)||!q(t),t.setContent]:0)(r,a),h=t=>{(m&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await b((async()=>{try{h(await t())}catch(t){i?.(t),a&&C(a)}p=0}))),L),N=()=>(d&&(s(d),d=void 0),L),O=async a=>(1!=p&&(p=2,await b((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),L),R=()=>(l(E,a.delListener),E=void 0,L),b=async(...a)=>(f(H(ia,w),...a),await(async()=>{if(!H(sa,w)){for(Y(sa,w,1);!o((a=H(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}Y(sa,w,0)}var a})(),L),L={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,h(t??a),p=0):await T()})),L),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=v();A(a)&&O(a)})),L),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:b,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(L)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,m))[p]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,m,{[p]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?b.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,g)=>{const[v,A,C,h]=aa(t,y,s,g),f=async(a,t)=>await E(W(r,(async([e,n,s,i],r)=>{t&&!P(a,r)||await C(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await C(w,m,{[p]:a},!0,!0,t):null;return ra(a,(async()=>await h((async()=>{await v();const a=await(async()=>_(T(await E(W(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!q(a[1])))))(),t=await(async()=>c?(await A(w,m))[p]:{})();return q(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await h((async()=>{if(await v(),o(t)){const[t,e]=a();await f(t),await N(e)}else await f(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",pa={mode:wa,[ya]:1},ma={load:0,save:0,[Ea]:t+"_values"},ga=(a,t,e,n)=>{const s=x();return F(a,((a,i)=>{const r=u(j(M(t,w(a)?{[e]:a}:a)),0,k(t));o(r[0])||n(i,r[0])||Y(s,i,r)})),s},va="pragma ",Aa="data_version",Ca="schema_version",ha=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,p,g;const[A,C,h,T]=(a=>{const e=(a=>M(pa,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],J(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(M(ma,r)),0,k(ma)),o=c[2],l=J(o);return[0,n,[ga(s,{[da]:null,[ua]:m},da,(a=>U(l,a)&&a==o)),ga(i,{[Ea]:null,[ua]:m,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>U(l,t)&&t==o)),c],l]})(e);return(A?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(va+Aa))[0][Aa],e=(await n(va+Ca))[0][Ca],s=(await n(v+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(p??=e)&&s==(g??=s)||(a(),E=t,p=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=p=null,i(t)}),o,h,O(T),l,y,d)};exports.createSqliteWasmPersister=(a,t,e,n,s,i)=>ha(a,n,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,n,s)=>a(s)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),s,i,e);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),p=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),g=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),T=Object,N=a=>T.getPrototypeOf(a),R=T.entries,f=T.keys,L=T.freeze,S=(a=[])=>T.fromEntries(a),b=(...a)=>T.assign({},...a),I=(a,t)=>t in a,D=(a,t)=>v(R(a),(([a,e])=>t(e,a))),_=a=>T.values(a),M=a=>d(f(a)),P=a=>(a=>!o(a)&&l(N(a),(a=>a==T.prototype||o(N(a))),(()=>!0)))(a)&&0==M(a),$=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),k=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),q=(a,t,e)=>o(e)?(h(a,t),a):a?.set(t,e),x=(a,t,e,n)=>(A(a,t)||q(a,t,e()),j(a,t)),B=(a,t,e,n=q)=>(D(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>I(t,e)?0:n(a,e))),a),H="_",J="_id",W=a=>`"${a.replace(/"/g,'""')}"`,Y="SELECT",G=a=>new Set(y(a)||o(a)?a:[a]),U=(a,t)=>a?.add(t),V="TABLE",z="ALTER "+V,K="DELETE FROM",Q=Y+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=$();return[async()=>B(r,S(await E(v(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,S(v(await a(Y+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>q(r,t,B(x(r,t,$),e,((a,t,e)=>{e!=j(a,t)&&q(a,t,e)}),((a,t)=>q(a,t))))),((a,t)=>q(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?S(m(v(await a(Q+W(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!P(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=G();D(c??{},(a=>v(f(a??{}),(a=>U(u,a)))));const d=O(u);if(!y&&w&&g(d)&&A(r,t))return await a("DROP "+V+W(t)),void q(r,t);if(g(d)||A(r,t)){const n=j(r,t),i=G(F(n));await E([...v(d,(async s=>{h(i,s)||(await a(z+W(t)+"ADD"+W(s)),q(n,s,e))})),...!y&&l?v(O(i),(async e=>{e!=s&&(await a(z+W(t)+"DROP"+W(e)),q(n,e))})):[]])}else await a("CREATE "+V+W(t)+"("+W(s)+` PRIMARY KEY ON CONFLICT REPLACE${p(v(d,(a=>n+W(a))))});`),q(r,t,$([[s,e],...v(d,(a=>[a,e]))]));if(y)o(c)?await a(K+W(t)+Z+" 1"):await E(D(c,(async(e,n)=>{o(e)?await a(K+W(t)+Z+W(s)+"=?",[n]):g(d)||await ta(a,t,s,f(e),[n,..._(e)],i)})));else if(g(d))A(r,t)&&await a(K+W(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];D(c??{},((a,t)=>{C(n,t,...v(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(K+W(t)+Z+W(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+W(t)+"("+W(s)+p(v(r,(a=>n+W(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+W(s)+")DO UPDATE SET"+p(v(r,(a=>W(a)+"=excluded."+W(a))),n):e),v(c,(a=>a??null))),ea=a=>p(v(a,(()=>"?")),n),na=$(),sa=$(),ia=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,p=0;x(na,w,(()=>0)),x(sa,w,(()=>[]));const[v,g,m,A,O]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!P(a)||!P(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!P(a)||!P(t),t.setContent]:0)(r,a),h=t=>{(v&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=p&&(p=1,await S((async()=>{try{h(await t())}catch(t){i?.(t),a&&O(a)}p=0}))),b),N=()=>(d&&(s(d),d=void 0),b),R=async a=>(1!=p&&(p=2,await S((async()=>{try{await e(g,a)}catch(a){i?.(a)}p=0}))),b),f=()=>(l(E,a.delListener),E=void 0,b),S=async(...a)=>(C(j(sa,w),...a),await(async()=>{if(!j(na,w)){for(q(na,w,1);!o((a=j(sa,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}q(na,w,0)}var a})(),b),b={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=p&&(p=1,h(t??a),p=0):await T()})),b),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:R,startAutoSave:async()=>(await f().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&R(a)})),b),stopAutoSave:f,isAutoSaving:()=>!o(E),schedule:S,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return L(b)},ra=(a,t,e,n,s,i,[r,c,o],l,w,y,u)=>{const[d,E,p,v]=aa(t,l,s,u);return ia(a,(async()=>await v((async()=>{return await d(),a=(await E(r,c))[H]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await v((async()=>{var t;await d(),await p(r,c,{[H]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[y]:()=>w},w)},ca=(a,t,e,n,s,i,[r,c,[l,w,y]],u,d,p,v)=>{const[g,C,A,O]=aa(t,u,s,v),h=async(a,t)=>await E(k(c,(async([e,n,s,i],r)=>{t&&!I(a,r)||await A(e,n,a[r],s,i,t)}))),T=async(a,t)=>w?await A(y,J,{[H]:a},!0,!0,t):null;return ia(a,(async()=>await O((async()=>{await g();const a=await(async()=>S(m(await E(k(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!P(a[1])))))(),t=await(async()=>l?(await C(y,J))[H]:{})();return P(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await g(),o(t)){const[t,e]=a();await h(t),await T(e)}else await h(t[0],!0),await T(t[1],!0)}))),e,n,s,i,{[p]:()=>d},d)},oa="ColumnName",la="store",wa="json",ya=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",pa="rowId"+oa,va="tableId",ga="tableName",ma={mode:wa,[Ea]:1},Ca={load:0,save:0,[ga]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=$();return D(a,((a,r)=>{const c=u(_(b(t,w(a)?{[e]:a}:a)),0,M(t));o(c[0])||n(r,c[0])||(s(r,c[0]),q(i,r,c))})),i},Oa="pragma_",ha="data_version",Ta="schema_version";exports.createSqliteWasmPersister=(a,e,n,s,i,r)=>((a,e,n,s,i,r,o,l,y,d="getDb",E)=>{let p,v,g;const[m,C,h,T]=(a=>{const e=(a=>b(ma,w(a)?{[ya]:a}:a??{}))(a),n=e[Ea];if(e.mode==wa){const a=e[ya]??t;return[1,n,[a,e[ua]??J,e[da]??la],G(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(_(b(Ca,r)),0,M(Ca)),o=c[2],l=G(o),y=G(o);return[0,n,[Aa(s,{[va]:null,[pa]:J},va,(a=>A(y,a)),(a=>U(l,a))),Aa(i,{[ga]:null,[pa]:J,deleteEmptyColumns:0,deleteEmptyTable:0},ga,((a,t)=>A(y,t)),((a,t)=>U(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${ha} d,${Ta} s,TOTAL_CHANGES() c FROM ${Oa}${ha} JOIN ${Oa}${Ta}`);t==(p??=t)&&e==(v??=e)&&s==(g??=s)||(a(),p=t,v=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),p=v=g=null,i(t)}),o,l,h,O(T),y,d,E)})(a,s,(async(a,t=[])=>n.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>e.capi.sqlite3_update_hook(n,((t,e,n,s)=>a(s)),0)),(()=>e.capi.sqlite3_update_hook(n,(()=>0),0)),i,r,3,n);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),g="_",p="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",f=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),C=a=>0==d(a),T=(a,t)=>a.filter(t),h=(a,...t)=>a.push(...t),N=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],R=(a,t)=>a?.delete(t),L=Object,S=a=>L.getPrototypeOf(a),b=L.entries,D=L.keys,I=L.freeze,M=(a=[])=>L.fromEntries(a),P=(...a)=>L.assign({},...a),_=(a,t)=>t in a,F=(a,t)=>A(b(a),(([a,e])=>t(e,a))),j=a=>L.values(a),B=a=>d(D(a)),H=a=>(a=>!o(a)&&l(S(a),(a=>a==L.prototype||o(S(a))),(()=>!0)))(a)&&0==B(a),Y=a=>new Map(a),$=a=>[...a?.keys()??[]],k=(a,t)=>a?.get(t),x=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),G=(a,t,e)=>o(e)?(R(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(N(a,t)||G(a,t,e()),k(a,t)),U=(a,t,e,n=G)=>(F(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>_(t,e)?0:n(a,e))),a),W=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=m+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=Y();return[async()=>U(r,M(await E(A(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,M(A(await a(m+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>G(r,t,U(J(r,t,Y),e,((a,t,e)=>{e!=k(a,t)&&G(a,t,e)}),((a,t)=>G(a,t))))),((a,t)=>G(r,t))),async(t,e)=>((a,t)=>!o(k(k(r,a),t)))(t,e)?M(T(A(await a(Q+v(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!H(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=W();F(c??{},(a=>A(D(a??{}),(a=>q(u,a)))));const d=O(u);if(!y&&w&&C(d)&&N(r,t))return await a("DROP "+z+v(t)),void G(r,t);if(C(d)||N(r,t)){const n=k(r,t),i=W($(n));await E([...A(d,(async s=>{R(i,s)||(await a(K+v(t)+"ADD"+v(s)),G(n,s,e))})),...!y&&l?A(O(i),(async e=>{e!=s&&(await a(K+v(t)+"DROP"+v(e)),G(n,e))})):[]])}else await a("CREATE "+z+v(t)+"("+v(s)+` PRIMARY KEY ON CONFLICT REPLACE${f(A(d,(a=>n+v(a))))});`),G(r,t,Y([[s,e],...A(d,(a=>[a,e]))]));if(y)o(c)?await a(V+v(t)+Z+" 1"):await E(F(c,(async(e,n)=>{o(e)?await a(V+v(t)+Z+v(s)+"=?",[n]):C(d)||await ta(a,t,s,D(e),[n,...j(e)],i)})));else if(C(d))N(r,t)&&await a(V+v(t)+Z+" 1");else{const e=T($(k(r,t)),(a=>a!=s)),n=[],o=[];F(c??{},((a,t)=>{h(n,t,...A(e,(t=>a?.[t]))),h(o,t)})),await ta(a,t,s,e,n,i),await a(V+v(t)+Z+v(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+v(t)+"("+v(s)+f(A(r,(a=>n+v(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+v(s)+")DO UPDATE SET"+f(A(r,(a=>v(a)+"=excluded."+v(a))),n):e),A(c,(a=>a??null))),ea=a=>f(A(a,(()=>"?")),n),na=JSON.parse,sa=Y(),ia=Y(),ra=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,g=0;J(sa,w,(()=>0)),J(ia,w,(()=>[]));const[p,v,m,f,A]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!H(a)||!H(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!H(a)||!H(t),t.setContent]:0)(r,a),C=t=>{(p&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},T=async a=>(2!=g&&(g=1,await L((async()=>{try{C(await t())}catch(t){i?.(t),a&&A(a)}g=0}))),S),N=()=>(d&&(s(d),d=void 0),S),O=async a=>(1!=g&&(g=2,await L((async()=>{try{await e(v,a)}catch(a){i?.(a)}g=0}))),S),R=()=>(l(E,a.delListener),E=void 0,S),L=async(...a)=>(h(k(ia,w),...a),await(async()=>{if(!k(sa,w)){for(G(sa,w,1);!o((a=k(ia,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}G(sa,w,0)}var a})(),S),S={load:T,startAutoLoad:async a=>(await N().load(a),d=n((async(a,t)=>{t||a?2!=g&&(g=1,C(t??a),g=0):await T()})),S),stopAutoLoad:N,isAutoLoading:()=>!o(d),save:O,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();f(a)&&O(a)})),S),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:L,getStore:()=>a,destroy:()=>N().stopAutoSave(),getStats:()=>({}),...c};return I(S)},ca="store",oa=(a,t,e,n,s,[i],r,c,o,l)=>{const[w,y,u,d]=aa(t,r,s,l);return ra(a,(async()=>await d((async()=>(await w(),na((await y(i,p))[g]?.[ca]??"null"))))),(async a=>await d((async()=>{var t;await w(),await u(i,p,{[g]:{[ca]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?L.fromEntries([...t]):t)))}},!0,!0)}))),e,n,s,1,{[o]:()=>c},c)},la=(a,t,e,n,s,[i,r,[c,l,w]],y,u,d,v)=>{const[m,f,A,C]=aa(t,y,s,v),h=async(a,t)=>await E(x(r,(async([e,n,s,i],r)=>{t&&!_(a,r)||await A(e,n,a[r],s,i,t)}))),N=async(a,t)=>l?await A(w,p,{[g]:a},!0,!0,t):null;return ra(a,(async()=>await C((async()=>{await m();const a=await(async()=>M(T(await E(x(i,(async([a,t],e)=>[a,await f(e,t)]))),(a=>!H(a[1])))))(),t=await(async()=>c?(await f(w,p))[g]:{})();return H(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await C((async()=>{if(await m(),o(t)){const[t,e]=a();await h(t),await N(e)}else await h(t[0],!0),await N(t[1],!0)}))),e,n,s,1,{[d]:()=>u},u)},wa="json",ya="autoLoadIntervalSeconds",ua="rowIdColumnName",da="tableId",Ea="tableName",ga={mode:wa,[ya]:1},pa={load:0,save:0,[Ea]:t+"_values"},va=(a,t,e,n)=>{const s=Y();return F(a,((a,i)=>{const r=u(j(P(t,w(a)?{[e]:a}:a)),0,B(t));o(r[0])||n(i,r[0])||G(s,i,r)})),s},ma="pragma ",fa="data_version",Aa="schema_version",Ca=(a,e,n,s,i,r,o,l,y="getDb",d)=>{let E,g,v;const[f,A,C,T]=(a=>{const e=(a=>P(ga,w(a)?{storeTableName:a}:a??{}))(a),n=e[ya];if(e.mode==wa){const{storeTableName:a=t}=e;return[1,n,[a],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(j(P(pa,r)),0,B(pa)),o=c[2],l=W(o);return[0,n,[va(s,{[da]:null,[ua]:p},da,(a=>q(l,a)&&a==o)),va(i,{[Ea]:null,[ua]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Ea,((a,t)=>q(l,t)&&t==o)),c],l]})(e);return(f?oa:la)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const t=(await n(ma+fa))[0][fa],e=(await n(ma+Aa))[0][Aa],s=(await n(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(g??=e)&&s==(v??=s)||(a(),E=t,g=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),s((t=>T.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=g=null,i(t)}),o,C,O(T),l,y,d)},Ta="change";exports.createSqlite3Persister=(a,t,e,n,s)=>Ca(a,e,(async(a,e=[])=>{return await(n=(n,s)=>t.all(a,e,((a,t)=>a?s(a):n(t))),new r(n));var n}),(a=>{const e=(t,e,n)=>a(n);return t.on(Ta,e),e}),(a=>t.off(Ta,a)),n,s,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e="",n=",",s=a(e),i=(a,t)=>a.repeat(t),r=Promise,c=clearInterval,o=a=>null==a,l=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,y=a=>Array.isArray(a),u=(a,t,e)=>a.slice(t,e),d=a=>a.length,E=async a=>r.all(a),v=(a,t="")=>a.join(t),g=(a,t)=>a.map(t),p=a=>0==d(a),m=(a,t)=>a.filter(t),C=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],T=(a,t)=>a?.delete(t),f=Object,h=a=>f.getPrototypeOf(a),N=f.entries,R=f.keys,L=f.freeze,S=(a=[])=>f.fromEntries(a),I=(...a)=>f.assign({},...a),b=(a,t)=>t in a,D=(a,t)=>g(N(a),(([a,e])=>t(e,a))),M=a=>f.values(a),P=a=>d(R(a)),$=a=>(a=>!o(a)&&l(h(a),(a=>a==f.prototype||o(h(a))),(()=>!0)))(a)&&0==P(a),_=a=>new Map(a),F=a=>[...a?.keys()??[]],j=(a,t)=>a?.get(t),B=(a,t)=>g([...a?.entries()??[]],(([a,e])=>t(e,a))),H=(a,t,e)=>o(e)?(T(a,t),a):a?.set(t,e),J=(a,t,e,n)=>(A(a,t)||H(a,t,e()),j(a,t)),Y=(a,t,e,n=H)=>(D(t,((t,n)=>e(a,n,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>b(t,e)?0:n(a,e))),a),k="_",x="_id",G=a=>`"${a.replace(/"/g,'""')}"`,U="SELECT",W=a=>new Set(y(a)||o(a)?a:[a]),q=(a,t)=>a?.add(t),z="TABLE",K="ALTER "+z,V="DELETE FROM",Q=U+"*FROM",X="FROM pragma_table_",Z="WHERE",aa=(a,t,s,i)=>{const r=_();return[async()=>Y(r,S(await E(g(await a("SELECT name "+X+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ea(t)+")ORDER BY name",t),(async({name:t})=>[t,S(g(await a(U+" name,type "+X+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>H(r,t,Y(J(r,t,_),e,((a,t,e)=>{e!=j(a,t)&&H(a,t,e)}),((a,t)=>H(a,t))))),((a,t)=>H(r,t))),async(t,e)=>((a,t)=>!o(j(j(r,a),t)))(t,e)?S(m(g(await a(Q+G(t)),(a=>{return[a[e],(t={...a},n=e,delete t[n],t)];var t,n})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,c,l,w,y=!1)=>{const u=W();D(c??{},(a=>g(R(a??{}),(a=>q(u,a)))));const d=O(u);if(!y&&w&&p(d)&&A(r,t))return await a("DROP "+z+G(t)),void H(r,t);if(p(d)||A(r,t)){const n=j(r,t),i=W(F(n));await E([...g(d,(async s=>{T(i,s)||(await a(K+G(t)+"ADD"+G(s)),H(n,s,e))})),...!y&&l?g(O(i),(async e=>{e!=s&&(await a(K+G(t)+"DROP"+G(e)),H(n,e))})):[]])}else await a("CREATE "+z+G(t)+"("+G(s)+` PRIMARY KEY ON CONFLICT REPLACE${v(g(d,(a=>n+G(a))))});`),H(r,t,_([[s,e],...g(d,(a=>[a,e]))]));if(y)o(c)?await a(V+G(t)+Z+" 1"):await E(D(c,(async(e,n)=>{o(e)?await a(V+G(t)+Z+G(s)+"=?",[n]):p(d)||await ta(a,t,s,R(e),[n,...M(e)],i)})));else if(p(d))A(r,t)&&await a(V+G(t)+Z+" 1");else{const e=m(F(j(r,t)),(a=>a!=s)),n=[],o=[];D(c??{},((a,t)=>{C(n,t,...g(e,(t=>a?.[t]))),C(o,t)})),await ta(a,t,s,e,n,i),await a(V+G(t)+Z+G(s)+"NOT IN("+ea(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},ta=async(a,t,s,r,c,o=!0)=>await a("INSERT "+(o?e:"OR REPLACE ")+"INTO"+G(t)+"("+G(s)+v(g(r,(a=>n+G(a))))+")VALUES"+u(i(`,(?${i(",?",d(r))})`,d(c)/(d(r)+1)),1)+(o?"ON CONFLICT("+G(s)+")DO UPDATE SET"+v(g(r,(a=>G(a)+"=excluded."+G(a))),n):e),g(c,(a=>a??null))),ea=a=>v(g(a,(()=>"?")),n),na=_(),sa=_(),ia=(a,t,e,n,s,i,r,c={},w=[])=>{let u,d,E,v=0;J(na,w,(()=>0)),J(sa,w,(()=>[]));const[g,p,m,A,O]=((a=1,t)=>a>1&&"merge"in t?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[a],[t]])=>!$(a)||!$(t),t.setDefaultContent]:2!=a?[0,t.getContent,t.getTransactionChanges,([a,t])=>!$(a)||!$(t),t.setContent]:0)(r,a),T=t=>{(g&&y(t?.[0])?1===t?.[2]?a.applyMergeableChanges:a.setMergeableContent:1===t?.[2]?a.applyChanges:a.setContent)(t)},f=async a=>(2!=v&&(v=1,await S((async()=>{try{T(await t())}catch(t){i?.(t),a&&O(a)}v=0}))),I),h=()=>(d&&(s(d),d=void 0),I),N=async a=>(1!=v&&(v=2,await S((async()=>{try{await e(p,a)}catch(a){i?.(a)}v=0}))),I),R=()=>(l(E,a.delListener),E=void 0,I),S=async(...a)=>(C(j(sa,w),...a),await(async()=>{if(!j(na,w)){for(H(na,w,1);!o((a=j(sa,w),u=a.shift()));)try{await u()}catch(a){i?.(a)}H(na,w,0)}var a})(),I),I={load:f,startAutoLoad:async a=>(await h().load(a),d=n((async(a,t)=>{t||a?2!=v&&(v=1,T(t??a),v=0):await f()})),I),stopAutoLoad:h,isAutoLoading:()=>!o(d),save:N,startAutoSave:async()=>(await R().save(),E=a.addDidFinishTransactionListener((()=>{const a=m();A(a)&&N(a)})),I),stopAutoSave:R,isAutoSaving:()=>!o(E),schedule:S,getStore:()=>a,destroy:()=>h().stopAutoSave(),getStats:()=>({}),...c};return L(I)},ra=(a,t,e,n,s,i,[r,c,o],l,w,y,u)=>{const[d,E,v,g]=aa(t,l,s,u);return ia(a,(async()=>await g((async()=>{return await d(),a=(await E(r,c))[k]?.[o]??"null",JSON.parse(a,((a,t)=>""===t?void 0:t));var a}))),(async a=>await g((async()=>{var t;await d(),await v(r,c,{[k]:{[o]:(t=a()??null,JSON.stringify(t,((a,t)=>void 0===t?"":t)))}},!0,!0)}))),e,n,s,i,{[y]:()=>w},w)},ca=(a,t,e,n,s,i,[r,c,[l,w,y]],u,d,v,g)=>{const[p,C,A,O]=aa(t,u,s,g),T=async(a,t)=>await E(B(c,(async([e,n,s,i],r)=>{t&&!b(a,r)||await A(e,n,a[r],s,i,t)}))),f=async(a,t)=>w?await A(y,x,{[k]:a},!0,!0,t):null;return ia(a,(async()=>await O((async()=>{await p();const a=await(async()=>S(m(await E(B(r,(async([a,t],e)=>[a,await C(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>l?(await C(y,x))[k]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await O((async()=>{if(await p(),o(t)){const[t,e]=a();await T(t),await f(e)}else await T(t[0],!0),await f(t[1],!0)}))),e,n,s,i,{[v]:()=>d},d)},oa="ColumnName",la="store",wa="json",ya=la+"TableName",ua=la+"Id"+oa,da=la+oa,Ea="autoLoadIntervalSeconds",va="rowId"+oa,ga="tableId",pa="tableName",ma={mode:wa,[Ea]:1},Ca={load:0,save:0,[pa]:t+"_values"},Aa=(a,t,e,n,s)=>{const i=_();return D(a,((a,r)=>{const c=u(M(I(t,w(a)?{[e]:a}:a)),0,P(t));o(c[0])||n(r,c[0])||(s(r,c[0]),H(i,r,c))})),i},Oa="pragma_",Ta="data_version",fa="schema_version",ha="change";exports.createSqlite3Persister=(a,e,n,s,i)=>((a,e,n,s,i,r,o,l,y,d="getDb",E)=>{let v,g,p;const[m,C,T,f]=(a=>{const e=(a=>I(ma,w(a)?{[ya]:a}:a??{}))(a),n=e[Ea];if(e.mode==wa){const a=e[ya]??t;return[1,n,[a,e[ua]??x,e[da]??la],W(a)]}const{tables:{load:s={},save:i={}}={},values:r={}}=e,c=u(M(I(Ca,r)),0,P(Ca)),o=c[2],l=W(o),y=W(o);return[0,n,[Aa(s,{[ga]:null,[va]:x},ga,(a=>A(y,a)),(a=>q(l,a))),Aa(i,{[pa]:null,[va]:x,deleteEmptyColumns:0,deleteEmptyTable:0},pa,((a,t)=>A(y,t)),((a,t)=>q(l,t))),c],l]})(e);return(m?ra:ca)(a,r?async(a,t)=>(r(a,t),await n(a,t)):n,(a=>{return[(t=async()=>{try{const[{d:t,s:e,c:s}]=await n(`SELECT ${Ta} d,${fa} s,TOTAL_CHANGES() c FROM ${Oa}${Ta} JOIN ${Oa}${fa}`);t==(v??=t)&&e==(g??=e)&&s==(p??=s)||(a(),v=t,g=e)}catch{}},e=C,t(),setInterval(t,1e3*e)),s((t=>f.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),v=g=p=null,i(t)}),o,l,T,O(f),y,d,E)})(a,n,(async(a,t=[])=>{return await(n=(n,s)=>e.all(a,t,((a,t)=>a?s(a):n(t))),new r(n));var n}),(a=>{const t=(t,e,n)=>a(n);return e.on(ha,t),t}),(a=>e.off(ha,a)),s,i,3,e);
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r=s(s),u="Listener",l="Result",n="Has",d="Ids",p="Table",a=p+"s",i=p+d,x="Row",c=x+"Count",I=x+d,C="Sorted"+x+d,b="Cell",w=b+d,R="Value",k=R+"s",g=R+d,L=e=>null==e,h=(e,s,t)=>L(e)?t?.():s(e),y=e=>s(e)==o,m=e=>s(e)==r,S=e=>e.length,V=()=>{},T=(e,s)=>e.every(s),P=(e,s)=>S(e)===S(s)&&T(e,((e,t)=>s[t]===e)),f=(e,s)=>e.map(s),v=Object,q=e=>v.getPrototypeOf(e),B=v.entries,H=e=>!L(e)&&h(q(e),(e=>e==v.prototype||L(q(e))),(()=>!0)),M=v.keys,D=(e,s)=>h(e,(e=>e[s])),F=(e,s)=>(delete e[s],e),O=(e,s)=>{const t=B(e);return S(t)===S(M(s))&&T(t,(([e,t])=>H(t)?!!H(s[e])&&O(s[e],t):s[e]===t))},{createContext:Q,useContext:E,useEffect:A}=e,G=Q([]),W=(e,s)=>{const t=E(G);return L(e)?t[s]:y(e)?D(t[s+1]??{},e):e},j=(e,s)=>{const t=W(e,s);return L(e)||y(e)?t:e},z=e=>M(E(G)[e]??{}),U=e=>j(e,0),J=e=>j(e,2),K=e=>j(e,4),N=e=>j(e,6),X=e=>j(e,8),Y=e=>j(e,10),Z=e=>e.toLowerCase();Z(u);const $="Transaction";Z($);const{useCallback:_,useEffect:ee,useMemo:se,useLayoutEffect:te,useRef:oe,useState:re,useSyncExternalStore:ue}=e,le=[],ne=[{},[],[le,void 0,le],void 0,!1,0],de=(e,s)=>e===s,pe=[O,P,([e,s,t],[o,r,u])=>s===r&&P(e,o)&&P(t,u)],ae=(e,s,t=le)=>{const[,o]=re(),[r,u]=re();return ee((()=>{const t=s(e);return u(t),o([]),t.destroy}),[e,...t]),r},ie=(e,s,...t)=>{const o=e?.["add"+s+u]?.(...t);return()=>e?.delListener(o)},xe=(e,s,o,r=le)=>{const u=oe(ne[o]),l=_((()=>{const t=s?.[(4==o?"has":"get")+e]?.(...r)??ne[o];return(pe[o]??de)(t,u.current)?u.current:u.current=t}),[s,o,e,...r]),d=_((u=>ie(s,(4==o?n:t)+e,...r,u)),[s,o,e,...r]);return ue(d,l)},ce=(e,s,t,o=le,r=le,...u)=>te((()=>ie(s,e,...r,t,...u)),[s,e,...r,...o,...u]),Ie=(e,s,t,o=le,r=V,u=le,...l)=>{const n=U(e);return _((e=>h(n,(o=>h(t(e,o),(t=>r(o["set"+s](...f(l,(s=>m(s)?s(e,o):s)),t),t)))))),[n,s,...o,...u,...l])},Ce=(e,s,t=V,o=le,...r)=>{const u=U(e);return _((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},be=(e,s,t)=>{const o=Y(e);return _((()=>o?.[s](t)),[o,s,t])},we=e=>xe(i,U(e),1),Re=(e,s)=>xe(I,U(s),1,[e]),ke=(e,s,t,o=0,r,u)=>xe(C,U(u),1,[e,s,t,o,r]),ge=(e,s,t)=>xe(w,U(t),1,[e,s]),Le=(e,s,t,o)=>xe(b,U(o),3,[e,s,t]),he=e=>xe(g,U(e),1),ye=(e,s)=>xe(R,U(s),3,[e]),me=(e,s)=>xe("Metric",J(s),3,[e]),Se=(e,s)=>xe("SliceIds",K(s),1,[e]),Ve=(e,s,t)=>xe("Slice"+I,K(t),1,[e,s]),Te=(e,s,t)=>xe("RemoteRowId",N(t),3,[e,s]),Pe=(e,s,t)=>xe("Local"+I,N(t),1,[e,s]),fe=(e,s,t)=>xe("Linked"+I,N(t),1,[e,s]),ve=(e,s)=>xe(l+I,X(s),1,[e]),qe=(e,s,t,o=0,r,u)=>xe(l+C,X(u),1,[e,s,t,o,r]),Be=(e,s,t)=>xe(l+w,X(t),1,[e,s]),He=(e,s,t,o)=>xe(l+b,X(o),3,[e,s,t]),Me=e=>xe("CheckpointIds",Y(e),2),De=(e,s)=>xe("Checkpoint",Y(s),3,[e]),Fe=e=>be(e,"goBackward"),Oe=e=>be(e,"goForward"),{PureComponent:Qe,Fragment:Ee,createElement:Ae,useCallback:Ge,useLayoutEffect:We,useRef:je,useState:ze}=e,Ue=(e,...s)=>L(e)?{}:e(...s),Je=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useCallback:Ke,useContext:Ne,useMemo:Xe,useState:Ye}=e,Ze=({tableId:e,store:s,rowComponent:t=os,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},n)=>ss(f(n,(u=>Ae(t,{...Ue(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),$e=({queryId:e,queries:s,resultRowComponent:t=ds,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>ss(f(l,(r=>Ae(t,{...Ue(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),_e=({relationshipId:e,relationships:s,rowComponent:t=os,getRowComponentProps:o,separator:r,debugIds:u},l,n)=>{const[d,p,a]=Je(N(s),e),i=l(e,n,d);return ss(f(i,(e=>Ae(t,{...Ue(o,e),key:e,tableId:a,rowId:e,store:p,debugIds:u}))),r,u,n)},es=e=>({checkpoints:s,checkpointComponent:t=ps,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=Y(s);return ss(f(e(Me(l)),(e=>Ae(t,{...Ue(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},ss=(e,s,t,o)=>{const r=L(s)||!Array.isArray(e)?e:f(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},ts=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>ss(t+(Le(e,s,o,r)??t),void 0,u,o),os=({tableId:e,rowId:s,store:t,cellComponent:o=ts,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:n})=>ss(f(((e,s,t,o)=>{const r=ge(s,t,o);return e??r})(u,e,s,t),(u=>Ae(o,{...Ue(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:n}))),l,n,s),rs=e=>Ze(e,Re(e.tableId,e.store)),us=({valueId:e,store:s,debugIds:o})=>ss(t+(ye(e,s)??t),void 0,o,e),ls=({indexId:e,sliceId:s,indexes:t,rowComponent:o=os,getRowComponentProps:r,separator:u,debugIds:l})=>{const[n,d,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(K(t),e),a=Ve(e,s,n);return ss(f(a,(e=>Ae(o,{...Ue(r,e),key:e,tableId:p,rowId:e,store:d,debugIds:l}))),u,l,s)},ns=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>ss(t+(He(e,s,o,r)??t),void 0,u,o),ds=({queryId:e,rowId:s,queries:t,resultCellComponent:o=ns,getResultCellComponentProps:r,separator:u,debugIds:l})=>ss(f(Be(e,s,t),(u=>Ae(o,{...Ue(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),ps=({checkpoints:e,checkpointId:s,debugIds:o})=>ss(De(s,e)??t,void 0,o,s),as=es((e=>e[0])),is=es((e=>L(e[1])?[]:[e[1]])),xs=es((e=>e[2]));exports.BackwardCheckpointsView=as,exports.CellView=ts,exports.CheckpointView=ps,exports.CurrentCheckpointView=is,exports.ForwardCheckpointsView=xs,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=ls,getSliceComponentProps:o,separator:r,debugIds:u})=>ss(f(Se(e,s),(r=>Ae(t,{...Ue(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>_e(e,fe,e.firstRowId),exports.LocalRowsView=e=>_e(e,Pe,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>ss(me(e,s)??t,void 0,o,e),exports.Provider=({store:e,storesById:s,metrics:t,metricsById:o,indexes:r,indexesById:u,relationships:l,relationshipsById:n,queries:d,queriesById:p,checkpoints:a,checkpointsById:i,children:x})=>{const c=Ne(G),[I,C]=Ye({}),b=Ke(((e,s)=>C((t=>D(t,e)==s?t:{...t,[e]:s}))),[]),w=Ke((e=>C((s=>({...F(s,e)})))),[]);return Ae(G.Provider,{value:Xe((()=>[e??c[0],{...c[1],...s,...I},t??c[2],{...c[3],...o},r??c[4],{...c[5],...u},l??c[6],{...c[7],...n},d??c[8],{...c[9],...p},a??c[10],{...c[11],...i},b,w]),[e,s,I,t,o,r,u,l,n,d,p,a,i,c,b,w])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=os,getRowComponentProps:r,debugIds:u})=>{const[l,n,,d]=Je(N(t),e),p=Te(e,s,l);return ss(L(d)||L(p)?null:Ae(o,{...Ue(r,p),key:p,tableId:d,rowId:p,store:n,debugIds:u}),void 0,u,s)},exports.ResultCellView=ns,exports.ResultRowView=ds,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>$e(r,qe(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>$e(e,ve(e.queryId,e.queries)),exports.RowView=os,exports.SliceView=ls,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ze(r,ke(r.tableId,e,s,t,o,r.store)),exports.TableView=rs,exports.TablesView=({store:e,tableComponent:s=rs,getTableComponentProps:t,separator:o,debugIds:r})=>ss(f(we(e),(o=>Ae(s,{...Ue(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=us,exports.ValuesView=({store:e,valueComponent:s=us,getValueComponentProps:t,separator:o,debugIds:r})=>ss(f(he(e),(o=>Ae(s,{...Ue(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=le,o,r=V,u=le,l=!0)=>{const n=U(o);return _((t=>h(n,(o=>h(s(t,o),(s=>r(o.addRow(m(e)?e(t,o):e,s,l),o,s)))))),[n,e,...t,...u,l])},exports.useCell=Le,exports.useCellIds=ge,exports.useCellIdsListener=(e,s,t,o,r,u)=>ce(w,U(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,l)=>ce(b,U(l),o,r,[e,s,t],u),exports.useCheckpoint=De,exports.useCheckpointIds=Me,exports.useCheckpointIdsListener=(e,s,t)=>ce("CheckpointIds",Y(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>ce("Checkpoint",Y(o),s,t,[e]),exports.useCheckpoints=e=>W(e,10),exports.useCheckpointsIds=()=>z(11),exports.useCheckpointsOrCheckpointsById=Y,exports.useCreateCheckpoints=(e,s,t)=>ae(e,s,t),exports.useCreateIndexes=(e,s,t)=>ae(e,s,t),exports.useCreateMergeableStore=(e,s=le)=>se(e,s),exports.useCreateMetrics=(e,s,t)=>ae(e,s,t),exports.useCreatePersister=(e,s,t=le,o,r=le,u,l=le)=>{const[,n]=re(),[d,p]=re();return ee((()=>{const t=s(e);p(t),t&&o&&(async()=>{await o(t),n([])})()}),[e,...t,...r]),ee((()=>()=>{d&&(d.destroy(),u?.(d))}),[d,...l]),d},exports.useCreateQueries=(e,s,t)=>ae(e,s,t),exports.useCreateRelationships=(e,s,t)=>ae(e,s,t),exports.useCreateStore=(e,s=le)=>se(e,s),exports.useCreateSynchronizer=(e,s,t=le,o,r=le)=>{const[u,l]=re();return ee((()=>{(async()=>{const t=await s(e);l(t)})()}),[e,...t]),ee((()=>()=>{u&&(u.destroy(),o?.(u))}),[u,...r]),u},exports.useDelCellCallback=(e,s,t,o,r,u,l)=>Ce(r,b,u,l,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>Ce(t,x,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>Ce(s,p,t,o,e),exports.useDelTablesCallback=(e,s,t)=>Ce(e,a,s,t),exports.useDelValueCallback=(e,s,t,o)=>Ce(s,R,t,o,e),exports.useDelValuesCallback=(e,s,t)=>Ce(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>ce("DidFinish"+$,U(t),e,s),exports.useGoBackwardCallback=Fe,exports.useGoForwardCallback=Oe,exports.useGoToCallback=(e,s=le,t,o=V,r=le)=>{const u=Y(t);return _((s=>h(u,(t=>h(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useHasCell=(e,s,t,o)=>xe(b,U(o),4,[e,s,t]),exports.useHasCellListener=(e,s,t,o,r,u,l)=>ce(n+b,U(l),o,r,[e,s,t],u),exports.useHasRow=(e,s,t)=>xe(x,U(t),4,[e,s]),exports.useHasRowListener=(e,s,t,o,r,u)=>ce(n+x,U(u),t,o,[e,s],r),exports.useHasTable=(e,s)=>xe(p,U(s),4,[e]),exports.useHasTableCell=(e,s,t)=>xe(p+b,U(t),4,[e,s]),exports.useHasTableCellListener=(e,s,t,o,r,u)=>ce(n+p+b,U(u),t,o,[e,s],r),exports.useHasTableListener=(e,s,t,o,r)=>ce(n+p,U(r),s,t,[e],o),exports.useHasTables=e=>xe(a,U(e),4,[]),exports.useHasTablesListener=(e,s,t,o)=>ce(n+a,U(o),e,s,[],t),exports.useHasValue=(e,s)=>xe(R,U(s),4,[e]),exports.useHasValueListener=(e,s,t,o,r)=>ce(n+R,U(r),s,t,[e],o),exports.useHasValues=e=>xe(k,U(e),4,[]),exports.useHasValuesListener=(e,s,t,o)=>ce(n+k,U(o),e,s,[],t),exports.useIndexIds=e=>xe("IndexIds",K(e),1),exports.useIndexes=e=>W(e,4),exports.useIndexesIds=()=>z(5),exports.useIndexesOrIndexesById=K,exports.useLinkedRowIds=fe,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>ce("Linked"+I,N(r),t,o,[e,s]),exports.useLocalRowIds=Pe,exports.useLocalRowIdsListener=(e,s,t,o,r)=>ce("Local"+I,N(r),t,o,[e,s]),exports.useMetric=me,exports.useMetricIds=e=>xe("MetricIds",J(e),1),exports.useMetricListener=(e,s,t,o)=>ce("Metric",J(o),s,t,[e]),exports.useMetrics=e=>W(e,2),exports.useMetricsIds=()=>z(3),exports.useMetricsOrMetricsById=J,exports.useProvideStore=(e,s)=>{const{12:t,13:o}=E(G);A((()=>(t?.(e,s),()=>o?.(e))),[t,e,s,o])},exports.useQueries=e=>W(e,8),exports.useQueriesIds=()=>z(9),exports.useQueriesOrQueriesById=X,exports.useQueryIds=e=>xe("QueryIds",X(e),1),exports.useRedoInformation=e=>{const s=Y(e),[,,[o]]=Me(s);return[!L(o),Oe(s),o,h(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>xe("RelationshipIds",N(e),1),exports.useRelationships=e=>W(e,6),exports.useRelationshipsIds=()=>z(7),exports.useRelationshipsOrRelationshipsById=N,exports.useRemoteRowId=Te,exports.useRemoteRowIdListener=(e,s,t,o,r)=>ce("RemoteRowId",N(r),t,o,[e,s]),exports.useResultCell=He,exports.useResultCellIds=Be,exports.useResultCellIdsListener=(e,s,t,o,r)=>ce(l+w,X(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,u)=>ce(l+b,X(u),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>xe(l+x,X(t),0,[e,s]),exports.useResultRowCount=(e,s)=>xe(l+c,X(s),5,[e]),exports.useResultRowCountListener=(e,s,t,o)=>ce(l+c,X(o),s,t,[e]),exports.useResultRowIds=ve,exports.useResultRowIdsListener=(e,s,t,o)=>ce(l+I,X(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>ce(l+x,X(r),t,o,[e,s]),exports.useResultSortedRowIds=qe,exports.useResultSortedRowIdsListener=(e,s,t,o,r,u,n,d)=>ce(l+C,X(d),u,n,[e,s,t,o,r]),exports.useResultTable=(e,s)=>xe(l+p,X(s),0,[e]),exports.useResultTableCellIds=(e,s)=>xe(l+p+w,X(s),1,[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>ce(l+p+w,X(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>ce(l+p,X(o),s,t,[e]),exports.useRow=(e,s,t)=>xe(x,U(t),0,[e,s]),exports.useRowCount=(e,s)=>xe(c,U(s),5,[e]),exports.useRowCountListener=(e,s,t,o,r)=>ce(c,U(r),s,t,[e],o),exports.useRowIds=Re,exports.useRowIdsListener=(e,s,t,o,r)=>ce(I,U(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>ce(x,U(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,l,n)=>Ie(u,b,o,r,l,n,e,s,t),exports.useSetCheckpointCallback=(e=V,s=le,t,o=V,r=le)=>{const u=Y(t);return _((s=>h(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>Ie(r,"PartialRow",t,o,u,l,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>Ie(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,l)=>Ie(r,x,t,o,u,l,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>Ie(o,p,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>Ie(t,a,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>Ie(o,R,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>Ie(t,k,e,s,o,r),exports.useSliceIds=Se,exports.useSliceIdsListener=(e,s,t,o)=>ce("SliceIds",K(o),s,t,[e]),exports.useSliceRowIds=Ve,exports.useSliceRowIdsListener=(e,s,t,o,r)=>ce("Slice"+I,K(r),t,o,[e,s]),exports.useSortedRowIds=ke,exports.useSortedRowIdsListener=(e,s,t,o,r,u,l,n,d)=>ce(C,U(d),u,l,[e,s,t,o,r],n),exports.useStartTransactionListener=(e,s,t)=>ce("Start"+$,U(t),e,s),exports.useStore=e=>W(e,0),exports.useStoreIds=()=>z(1),exports.useStoreOrStoreById=U,exports.useTable=(e,s)=>xe(p,U(s),0,[e]),exports.useTableCellIds=(e,s)=>xe(p+w,U(s),1,[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>ce(p+w,U(r),s,t,[e],o),exports.useTableIds=we,exports.useTableIdsListener=(e,s,t,o)=>ce(i,U(o),e,s,le,t),exports.useTableListener=(e,s,t,o,r)=>ce(p,U(r),s,t,[e],o),exports.useTables=e=>xe(a,U(e),0),exports.useTablesListener=(e,s,t,o)=>ce(a,U(o),e,s,le,t),exports.useUndoInformation=e=>{const s=Y(e),[o,r]=Me(s);return[(u=o,!(0==S(u))),Fe(s),r,h(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=ye,exports.useValueIds=he,exports.useValueIdsListener=(e,s,t,o)=>ce(g,U(o),e,s,le,t),exports.useValueListener=(e,s,t,o,r)=>ce(R,U(r),s,t,[e],o),exports.useValues=e=>xe(k,U(e),0),exports.useValuesListener=(e,s,t,o)=>ce(k,U(o),e,s,le,t),exports.useWillFinishTransactionListener=(e,s,t)=>ce("WillFinish"+$,U(t),e,s);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r=s(s),u="Listener",l="Result",n="Has",d="Ids",p="Table",a=p+"s",i=p+d,x="Row",c=x+"Count",I=x+d,C="Sorted"+x+d,b="Cell",w=b+d,R="Value",k=R+"s",g=R+d,L=e=>null==e,h=(e,s,t)=>L(e)?t?.():s(e),y=e=>s(e)==o,m=e=>s(e)==r,S=e=>e.length,V=()=>{},T=(e,s)=>e.every(s),v=(e,s)=>S(e)===S(s)&&T(e,((e,t)=>s[t]===e)),P=(e,s)=>e.map(s),f=Object,q=e=>f.getPrototypeOf(e),B=f.entries,H=e=>!L(e)&&h(q(e),(e=>e==f.prototype||L(q(e))),(()=>!0)),M=f.keys,D=(e,s)=>h(e,(e=>e[s])),F=(e,s)=>(delete e[s],e),O=(e,s)=>{const t=B(e);return S(t)===S(M(s))&&T(t,(([e,t])=>H(t)?!!H(s[e])&&O(s[e],t):s[e]===t))},{createContext:Q,useContext:E,useEffect:A}=e,G=Q([]),W=(e,s)=>{const t=E(G);return L(e)?t[s]:y(e)?D(t[s+1]??{},e):e},j=(e,s)=>{const t=W(e,s);return L(e)||y(e)?t:e},z=e=>M(E(G)[e]??{}),U=e=>j(e,0),J=e=>j(e,2),K=e=>j(e,4),N=e=>j(e,6),X=e=>j(e,8),Y=e=>j(e,10),Z=e=>e.toLowerCase();Z(u);const $="Transaction";Z($);const{useCallback:_,useEffect:ee,useMemo:se,useLayoutEffect:te,useRef:oe,useState:re,useSyncExternalStore:ue}=e,le=[],ne=[{},[],[le,void 0,le],void 0,!1,0],de=(e,s)=>e===s,pe=[O,v,([e,s,t],[o,r,u])=>s===r&&v(e,o)&&v(t,u)],ae=(e,s,t=le)=>{const[,o]=re(),[r,u]=re();return ee((()=>{const t=e?s(e):void 0;return u(t),o([]),t?.destroy}),[e,...t]),r},ie=(e,s,...t)=>{const o=e?.["add"+s+u]?.(...t);return()=>e?.delListener(o)},xe=(e,s,o,r=le)=>{const u=oe(ne[o]),l=_((()=>{const t=s?.[(4==o?"has":"get")+e]?.(...r)??ne[o];return(pe[o]??de)(t,u.current)?u.current:u.current=t}),[s,o,e,...r]),d=_((u=>ie(s,(4==o?n:t)+e,...r,u)),[s,o,e,...r]),p=ue(d,l);return 0==o?{...p}:o<3?[...p]:p},ce=(e,s,t,o=le,r=le,...u)=>te((()=>ie(s,e,...r,t,...u)),[s,e,...r,...o,...u]),Ie=(e,s,t,o=le,r=V,u=le,...l)=>{const n=U(e);return _((e=>h(n,(o=>h(t(e,o),(t=>r(o["set"+s](...P(l,(s=>m(s)?s(e,o):s)),t),t)))))),[n,s,...o,...u,...l])},Ce=(e,s,t=V,o=le,...r)=>{const u=U(e);return _((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},be=(e,s,t)=>{const o=Y(e);return _((()=>o?.[s](t)),[o,s,t])},we=e=>xe(i,U(e),1),Re=(e,s)=>xe(I,U(s),1,[e]),ke=(e,s,t,o=0,r,u)=>xe(C,U(u),1,[e,s,t,o,r]),ge=(e,s,t)=>xe(w,U(t),1,[e,s]),Le=(e,s,t,o)=>xe(b,U(o),3,[e,s,t]),he=e=>xe(g,U(e),1),ye=(e,s)=>xe(R,U(s),3,[e]),me=(e,s)=>xe("Metric",J(s),3,[e]),Se=(e,s)=>xe("SliceIds",K(s),1,[e]),Ve=(e,s,t)=>xe("Slice"+I,K(t),1,[e,s]),Te=(e,s,t)=>xe("RemoteRowId",N(t),3,[e,s]),ve=(e,s,t)=>xe("Local"+I,N(t),1,[e,s]),Pe=(e,s,t)=>xe("Linked"+I,N(t),1,[e,s]),fe=(e,s)=>xe(l+I,X(s),1,[e]),qe=(e,s,t,o=0,r,u)=>xe(l+C,X(u),1,[e,s,t,o,r]),Be=(e,s,t)=>xe(l+w,X(t),1,[e,s]),He=(e,s,t,o)=>xe(l+b,X(o),3,[e,s,t]),Me=e=>xe("CheckpointIds",Y(e),2),De=(e,s)=>xe("Checkpoint",Y(s),3,[e]),Fe=e=>be(e,"goBackward"),Oe=e=>be(e,"goForward"),{PureComponent:Qe,Fragment:Ee,createElement:Ae,useCallback:Ge,useLayoutEffect:We,useRef:je,useState:ze}=e,Ue=(e,...s)=>L(e)?{}:e(...s),Je=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useCallback:Ke,useContext:Ne,useMemo:Xe,useState:Ye}=e,Ze=({tableId:e,store:s,rowComponent:t=os,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:l},n)=>ss(P(n,(u=>Ae(t,{...Ue(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:l}))),u,l,e),$e=({queryId:e,queries:s,resultRowComponent:t=ds,getResultRowComponentProps:o,separator:r,debugIds:u},l)=>ss(P(l,(r=>Ae(t,{...Ue(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),_e=({relationshipId:e,relationships:s,rowComponent:t=os,getRowComponentProps:o,separator:r,debugIds:u},l,n)=>{const[d,p,a]=Je(N(s),e),i=l(e,n,d);return ss(P(i,(e=>Ae(t,{...Ue(o,e),key:e,tableId:a,rowId:e,store:p,debugIds:u}))),r,u,n)},es=e=>({checkpoints:s,checkpointComponent:t=ps,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const l=Y(s);return ss(P(e(Me(l)),(e=>Ae(t,{...Ue(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:u}))),r)},ss=(e,s,t,o)=>{const r=L(s)||!Array.isArray(e)?e:P(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},ts=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>ss(t+(Le(e,s,o,r)??t),void 0,u,o),os=({tableId:e,rowId:s,store:t,cellComponent:o=ts,getCellComponentProps:r,customCellIds:u,separator:l,debugIds:n})=>ss(P(((e,s,t,o)=>{const r=ge(s,t,o);return e??r})(u,e,s,t),(u=>Ae(o,{...Ue(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:n}))),l,n,s),rs=e=>Ze(e,Re(e.tableId,e.store)),us=({valueId:e,store:s,debugIds:o})=>ss(t+(ye(e,s)??t),void 0,o,e),ls=({indexId:e,sliceId:s,indexes:t,rowComponent:o=os,getRowComponentProps:r,separator:u,debugIds:l})=>{const[n,d,p]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(K(t),e),a=Ve(e,s,n);return ss(P(a,(e=>Ae(o,{...Ue(r,e),key:e,tableId:p,rowId:e,store:d,debugIds:l}))),u,l,s)},ns=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>ss(t+(He(e,s,o,r)??t),void 0,u,o),ds=({queryId:e,rowId:s,queries:t,resultCellComponent:o=ns,getResultCellComponentProps:r,separator:u,debugIds:l})=>ss(P(Be(e,s,t),(u=>Ae(o,{...Ue(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:l}))),u,l,s),ps=({checkpoints:e,checkpointId:s,debugIds:o})=>ss(De(s,e)??t,void 0,o,s),as=es((e=>e[0])),is=es((e=>L(e[1])?[]:[e[1]])),xs=es((e=>e[2]));exports.BackwardCheckpointsView=as,exports.CellView=ts,exports.CheckpointView=ps,exports.CurrentCheckpointView=is,exports.ForwardCheckpointsView=xs,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=ls,getSliceComponentProps:o,separator:r,debugIds:u})=>ss(P(Se(e,s),(r=>Ae(t,{...Ue(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>_e(e,Pe,e.firstRowId),exports.LocalRowsView=e=>_e(e,ve,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>ss(me(e,s)??t,void 0,o,e),exports.Provider=({store:e,storesById:s,metrics:t,metricsById:o,indexes:r,indexesById:u,relationships:l,relationshipsById:n,queries:d,queriesById:p,checkpoints:a,checkpointsById:i,children:x})=>{const c=Ne(G),[I,C]=Ye({}),b=Ke(((e,s)=>C((t=>D(t,e)==s?t:{...t,[e]:s}))),[]),w=Ke((e=>C((s=>({...F(s,e)})))),[]);return Ae(G.Provider,{value:Xe((()=>[e??c[0],{...c[1],...s,...I},t??c[2],{...c[3],...o},r??c[4],{...c[5],...u},l??c[6],{...c[7],...n},d??c[8],{...c[9],...p},a??c[10],{...c[11],...i},b,w]),[e,s,I,t,o,r,u,l,n,d,p,a,i,c,b,w])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=os,getRowComponentProps:r,debugIds:u})=>{const[l,n,,d]=Je(N(t),e),p=Te(e,s,l);return ss(L(d)||L(p)?null:Ae(o,{...Ue(r,p),key:p,tableId:d,rowId:p,store:n,debugIds:u}),void 0,u,s)},exports.ResultCellView=ns,exports.ResultRowView=ds,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>$e(r,qe(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>$e(e,fe(e.queryId,e.queries)),exports.RowView=os,exports.SliceView=ls,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ze(r,ke(r.tableId,e,s,t,o,r.store)),exports.TableView=rs,exports.TablesView=({store:e,tableComponent:s=rs,getTableComponentProps:t,separator:o,debugIds:r})=>ss(P(we(e),(o=>Ae(s,{...Ue(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=us,exports.ValuesView=({store:e,valueComponent:s=us,getValueComponentProps:t,separator:o,debugIds:r})=>ss(P(he(e),(o=>Ae(s,{...Ue(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=le,o,r=V,u=le,l=!0)=>{const n=U(o);return _((t=>h(n,(o=>h(s(t,o),(s=>r(o.addRow(m(e)?e(t,o):e,s,l),o,s)))))),[n,e,...t,...u,l])},exports.useCell=Le,exports.useCellIds=ge,exports.useCellIdsListener=(e,s,t,o,r,u)=>ce(w,U(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,l)=>ce(b,U(l),o,r,[e,s,t],u),exports.useCheckpoint=De,exports.useCheckpointIds=Me,exports.useCheckpointIdsListener=(e,s,t)=>ce("CheckpointIds",Y(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>ce("Checkpoint",Y(o),s,t,[e]),exports.useCheckpoints=e=>W(e,10),exports.useCheckpointsIds=()=>z(11),exports.useCheckpointsOrCheckpointsById=Y,exports.useCreateCheckpoints=(e,s,t)=>ae(e,s,t),exports.useCreateIndexes=(e,s,t)=>ae(e,s,t),exports.useCreateMergeableStore=(e,s=le)=>se(e,s),exports.useCreateMetrics=(e,s,t)=>ae(e,s,t),exports.useCreatePersister=(e,s,t=le,o,r=le,u,l=le)=>{const[,n]=re(),[d,p]=re();return ee((()=>{const t=e?s(e):void 0;p(t),t&&o&&(async()=>{await o(t),n([])})()}),[e,...t,...r]),ee((()=>()=>{d&&(d.destroy(),u?.(d))}),[d,...l]),d},exports.useCreateQueries=(e,s,t)=>ae(e,s,t),exports.useCreateRelationships=(e,s,t)=>ae(e,s,t),exports.useCreateStore=(e,s=le)=>se(e,s),exports.useCreateSynchronizer=(e,s,t=le,o,r=le)=>{const[u,l]=re();return ee((()=>{(async()=>{const t=e?await s(e):void 0;l(t)})()}),[e,...t]),ee((()=>()=>{u&&(u.destroy(),o?.(u))}),[u,...r]),u},exports.useDelCellCallback=(e,s,t,o,r,u,l)=>Ce(r,b,u,l,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>Ce(t,x,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>Ce(s,p,t,o,e),exports.useDelTablesCallback=(e,s,t)=>Ce(e,a,s,t),exports.useDelValueCallback=(e,s,t,o)=>Ce(s,R,t,o,e),exports.useDelValuesCallback=(e,s,t)=>Ce(e,k,s,t),exports.useDidFinishTransactionListener=(e,s,t)=>ce("DidFinish"+$,U(t),e,s),exports.useGoBackwardCallback=Fe,exports.useGoForwardCallback=Oe,exports.useGoToCallback=(e,s=le,t,o=V,r=le)=>{const u=Y(t);return _((s=>h(u,(t=>h(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useHasCell=(e,s,t,o)=>xe(b,U(o),4,[e,s,t]),exports.useHasCellListener=(e,s,t,o,r,u,l)=>ce(n+b,U(l),o,r,[e,s,t],u),exports.useHasRow=(e,s,t)=>xe(x,U(t),4,[e,s]),exports.useHasRowListener=(e,s,t,o,r,u)=>ce(n+x,U(u),t,o,[e,s],r),exports.useHasTable=(e,s)=>xe(p,U(s),4,[e]),exports.useHasTableCell=(e,s,t)=>xe(p+b,U(t),4,[e,s]),exports.useHasTableCellListener=(e,s,t,o,r,u)=>ce(n+p+b,U(u),t,o,[e,s],r),exports.useHasTableListener=(e,s,t,o,r)=>ce(n+p,U(r),s,t,[e],o),exports.useHasTables=e=>xe(a,U(e),4,[]),exports.useHasTablesListener=(e,s,t,o)=>ce(n+a,U(o),e,s,[],t),exports.useHasValue=(e,s)=>xe(R,U(s),4,[e]),exports.useHasValueListener=(e,s,t,o,r)=>ce(n+R,U(r),s,t,[e],o),exports.useHasValues=e=>xe(k,U(e),4,[]),exports.useHasValuesListener=(e,s,t,o)=>ce(n+k,U(o),e,s,[],t),exports.useIndexIds=e=>xe("IndexIds",K(e),1),exports.useIndexes=e=>W(e,4),exports.useIndexesIds=()=>z(5),exports.useIndexesOrIndexesById=K,exports.useLinkedRowIds=Pe,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>ce("Linked"+I,N(r),t,o,[e,s]),exports.useLocalRowIds=ve,exports.useLocalRowIdsListener=(e,s,t,o,r)=>ce("Local"+I,N(r),t,o,[e,s]),exports.useMetric=me,exports.useMetricIds=e=>xe("MetricIds",J(e),1),exports.useMetricListener=(e,s,t,o)=>ce("Metric",J(o),s,t,[e]),exports.useMetrics=e=>W(e,2),exports.useMetricsIds=()=>z(3),exports.useMetricsOrMetricsById=J,exports.useProvideStore=(e,s)=>{const{12:t,13:o}=E(G);A((()=>(t?.(e,s),()=>o?.(e))),[t,e,s,o])},exports.useQueries=e=>W(e,8),exports.useQueriesIds=()=>z(9),exports.useQueriesOrQueriesById=X,exports.useQueryIds=e=>xe("QueryIds",X(e),1),exports.useRedoInformation=e=>{const s=Y(e),[,,[o]]=Me(s);return[!L(o),Oe(s),o,h(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>xe("RelationshipIds",N(e),1),exports.useRelationships=e=>W(e,6),exports.useRelationshipsIds=()=>z(7),exports.useRelationshipsOrRelationshipsById=N,exports.useRemoteRowId=Te,exports.useRemoteRowIdListener=(e,s,t,o,r)=>ce("RemoteRowId",N(r),t,o,[e,s]),exports.useResultCell=He,exports.useResultCellIds=Be,exports.useResultCellIdsListener=(e,s,t,o,r)=>ce(l+w,X(r),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,r,u)=>ce(l+b,X(u),o,r,[e,s,t]),exports.useResultRow=(e,s,t)=>xe(l+x,X(t),0,[e,s]),exports.useResultRowCount=(e,s)=>xe(l+c,X(s),5,[e]),exports.useResultRowCountListener=(e,s,t,o)=>ce(l+c,X(o),s,t,[e]),exports.useResultRowIds=fe,exports.useResultRowIdsListener=(e,s,t,o)=>ce(l+I,X(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,r)=>ce(l+x,X(r),t,o,[e,s]),exports.useResultSortedRowIds=qe,exports.useResultSortedRowIdsListener=(e,s,t,o,r,u,n,d)=>ce(l+C,X(d),u,n,[e,s,t,o,r]),exports.useResultTable=(e,s)=>xe(l+p,X(s),0,[e]),exports.useResultTableCellIds=(e,s)=>xe(l+p+w,X(s),1,[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>ce(l+p+w,X(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>ce(l+p,X(o),s,t,[e]),exports.useRow=(e,s,t)=>xe(x,U(t),0,[e,s]),exports.useRowCount=(e,s)=>xe(c,U(s),5,[e]),exports.useRowCountListener=(e,s,t,o,r)=>ce(c,U(r),s,t,[e],o),exports.useRowIds=Re,exports.useRowIdsListener=(e,s,t,o,r)=>ce(I,U(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>ce(x,U(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,l,n)=>Ie(u,b,o,r,l,n,e,s,t),exports.useSetCheckpointCallback=(e=V,s=le,t,o=V,r=le)=>{const u=Y(t);return _((s=>h(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,l)=>Ie(r,"PartialRow",t,o,u,l,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>Ie(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,l)=>Ie(r,x,t,o,u,l,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>Ie(o,p,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>Ie(t,a,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>Ie(o,R,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>Ie(t,k,e,s,o,r),exports.useSliceIds=Se,exports.useSliceIdsListener=(e,s,t,o)=>ce("SliceIds",K(o),s,t,[e]),exports.useSliceRowIds=Ve,exports.useSliceRowIdsListener=(e,s,t,o,r)=>ce("Slice"+I,K(r),t,o,[e,s]),exports.useSortedRowIds=ke,exports.useSortedRowIdsListener=(e,s,t,o,r,u,l,n,d)=>ce(C,U(d),u,l,[e,s,t,o,r],n),exports.useStartTransactionListener=(e,s,t)=>ce("Start"+$,U(t),e,s),exports.useStore=e=>W(e,0),exports.useStoreIds=()=>z(1),exports.useStoreOrStoreById=U,exports.useTable=(e,s)=>xe(p,U(s),0,[e]),exports.useTableCellIds=(e,s)=>xe(p+w,U(s),1,[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>ce(p+w,U(r),s,t,[e],o),exports.useTableIds=we,exports.useTableIdsListener=(e,s,t,o)=>ce(i,U(o),e,s,le,t),exports.useTableListener=(e,s,t,o,r)=>ce(p,U(r),s,t,[e],o),exports.useTables=e=>xe(a,U(e),0),exports.useTablesListener=(e,s,t,o)=>ce(a,U(o),e,s,le,t),exports.useUndoInformation=e=>{const s=Y(e),[o,r]=Me(s);return[(u=o,!(0==S(u))),Fe(s),r,h(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=ye,exports.useValueIds=he,exports.useValueIdsListener=(e,s,t,o)=>ce(g,U(o),e,s,le,t),exports.useValueListener=(e,s,t,o,r)=>ce(R,U(r),s,t,[e],o),exports.useValues=e=>xe(k,U(e),0),exports.useValuesListener=(e,s,t,o)=>ce(k,U(o),e,s,le,t),exports.useWillFinishTransactionListener=(e,s,t)=>ce("WillFinish"+$,U(t),e,s);
Binary file