tinybase 4.6.0-beta.2 → 4.6.0

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 (117) 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-indexed-db.cjs +1 -1
  10. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  12. package/lib/cjs/persisters/persister-remote.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-dom-debug.cjs +1 -1
  18. package/lib/cjs/ui-react-dom-debug.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-indexed-db.cjs +1 -1
  28. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  29. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  30. package/lib/cjs-es6/persisters/persister-remote.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-dom-debug.cjs +1 -1
  36. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  37. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +40 -26
  38. package/lib/debug/persisters/persister-electric-sql.js +40 -26
  39. package/lib/debug/persisters/persister-expo-sqlite-next.js +40 -26
  40. package/lib/debug/persisters/persister-expo-sqlite.js +40 -26
  41. package/lib/debug/persisters/persister-indexed-db.js +5 -2
  42. package/lib/debug/persisters/persister-remote.js +5 -2
  43. package/lib/debug/persisters/persister-sqlite-wasm.js +40 -26
  44. package/lib/debug/persisters/persister-sqlite3.js +40 -26
  45. package/lib/debug/ui-react-dom.js +1 -1
  46. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  47. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  48. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  49. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  50. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  51. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  52. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  53. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  54. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  55. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  56. package/lib/es6/persisters/persister-remote.js +1 -1
  57. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  58. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  59. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  60. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  61. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  62. package/lib/es6/ui-react-dom-debug.js +1 -1
  63. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  64. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  65. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  66. package/lib/persisters/persister-electric-sql.js +1 -1
  67. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  68. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  69. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  70. package/lib/persisters/persister-expo-sqlite.js +1 -1
  71. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  72. package/lib/persisters/persister-indexed-db.js +1 -1
  73. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  74. package/lib/persisters/persister-remote.js +1 -1
  75. package/lib/persisters/persister-remote.js.gz +0 -0
  76. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  77. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  78. package/lib/persisters/persister-sqlite3.js +1 -1
  79. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  80. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  81. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  82. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  83. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  84. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  85. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  86. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  87. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  88. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  89. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  90. package/lib/umd/persisters/persister-remote.js +1 -1
  91. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  92. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  93. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  94. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  95. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  96. package/lib/umd/ui-react-dom-debug.js +1 -1
  97. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  98. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  99. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  100. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  101. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  102. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  103. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  104. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  105. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  106. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  107. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  108. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  109. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  110. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  111. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  112. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  113. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  114. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  115. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  116. package/package.json +20 -19
  117. package/readme.md +13 -13
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,w=(a,t,e)=>r(a)?e?.():t(a),l=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),v=a=>0==E(a),T=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),O=Object,h=a=>O.getPrototypeOf(a),N=O.keys,R=O.freeze,C=(a=[])=>O.fromEntries(a),S=(...a)=>O.assign({},...a),D=(a,t)=>p(O.entries(a),(([a,e])=>t(e,a))),g=a=>O.values(a),I=a=>E(N(a)),b=a=>(a=>!r(a)&&w(h(a),(a=>a==O.prototype||r(h(a))),(()=>!0)))(a)&&0==I(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),W=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||r(a)?a:[a]),j=(a,t)=>a?.add(t),x="_",U="_id",k=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>W(n,C(await u(p(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(p(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,W(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?C(T(p(await a("SELECT*FROM"+k(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!b(t)))):{},async(t,s,i,c,o,w=!1)=>{const l=H();D(i??{},(a=>p(N(a??{}),(a=>j(l,a)))));const y=L(l);if(!w&&o&&v(y)&&A(n,t))return await a("DROP TABLE"+k(t)),void _(n,t);if(v(y)||A(n,t)){const e=$(n,t),i=H(M(e));await u([...p(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${k(t)}ADD${k(s)}`),_(e,s,""))})),...!w&&c?p(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${k(t)}DROP${k(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${k(t)}(${k(s)} PRIMARY KEY ON CONFLICT REPLACE${d(p(y,(a=>e+k(a))))});`),_(n,t,F([[s,""],...p(y,(a=>[a,""]))]));if(w)r(i)?await a("DELETE FROM"+k(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+k(t)+Y+k(s)+"=?",[n]):v(y)||await z(a,t,s,N(e),[n,...g(e)])})));else if(v(y))A(n,t)&&await a("DELETE FROM"+k(t)+"WHERE 1");else{const e=T(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{m(c,t,...p(e,(t=>a?.[t]))),m(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+k(t)+Y+k(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+k(t)+"("+k(s)+d(p(i,(a=>e+k(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+k(s)+")DO UPDATE SET"+d(p(i,(a=>k(a)+"=excluded."+k(a))),e),c),G=a=>d(p(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],l=[])=>{let y,E,u,d=0,p=0;B(V,l,(()=>0)),B(Q,l,(()=>[]));const v=async a=>(2!=d&&(d=1,await T.schedule((async()=>{await a(),d=0}))),T),T={load:async(e,s)=>await v((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(T.stopAutoLoad(),await T.load(e,n),p=1,u=s((async(e,s)=>{if(s){const t=s();await v((async()=>a.setTransactionChanges(t)))}else await v((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),T),stopAutoLoad:()=>(p&&(n(u),u=void 0,p=0),T),save:async t=>(1!=d&&(d=2,await T.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(w(y,a.delListener),y=void 0,T),schedule:async(...a)=>(m($(Q,l),...a),await(async()=>{if(!$(V,l)){for(_(V,l,1);!r((a=$(Q,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,l,0)}var a})(),T),getStore:()=>a,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(T[c]=()=>o),R(T)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,w,l,y]=q(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await w(i,U))[x]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await l(i,U,{[x]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?O.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,w,l]],y,E)=>{const[d,p,v,m]=q(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await v(e,s,o,n,i,t)}))),L=async(a,t)=>w?await v(l,U,{[x]:a},!0,!0,t):null;return X(a,(async()=>await m((async()=>{await d();const a=await(async()=>C(T(await u(P(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await p(l,U))[x]:{})();return b(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},wa=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=y(g(S(t,l(a)?{[e]:a}:a)),0,I(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},la="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,w,E)=>{let u,d;const[p,v,T,m]=(a=>{const e=(a=>S(oa,l(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(S(ra,c)),0,I(ra)),r=o[2],w=H(r);return[0,s,[wa(n,{[ia]:null,[na]:U},ia,(a=>j(w,a)&&a==r)),wa(i,{[ca]:null,[na]:U,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(w,t)&&t==r)),o],w]})(e);return(p?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(la+ya))[0][ya],e=(await s(la+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*v),n((t=>m.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),w,T,L(m),E)};exports.createCrSqliteWasmPersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,o=a=>null==a,r=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,l=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",v=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),A=a=>0==y(a),L=(a,t)=>a.filter(t),O=(a,...t)=>a.push(...t),R=(a,t)=>a?.has(t)??!1,f=a=>[...a?.values()??[]],N=(a,t)=>a?.delete(t),h=Object,C=a=>h.getPrototypeOf(a),D=h.keys,S=h.freeze,g=(a=[])=>h.fromEntries(a),I=(...a)=>h.assign({},...a),b=(a,t)=>p(h.entries(a),(([a,e])=>t(e,a))),F=a=>h.values(a),M=a=>y(D(a)),$=a=>(a=>!o(a)&&r(C(a),(a=>a==h.prototype||o(C(a))),(()=>!0)))(a)&&0==M(a),P=a=>new Map(a),_=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>o(e)?(N(a,t),a):a?.set(t,e),j=(a,t,e)=>(R(a,t)||W(a,t,e()),B(a,t)),x=(a,t,e,s=W)=>(b(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!o(((a,t)=>r(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),U=a=>new Set(Array.isArray(a)||o(a)?a:[a]),Y=(a,t)=>a?.add(t),k=T+"*FROM",G="FROM pragma_table_",J="WHERE",q=(a,t,s)=>{const n=P();return[async()=>x(n,g(await E(p(await a("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+K(t)+")ORDER BY name",t),(async({name:t})=>[t,g(p(await a(T+" name,type "+G+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,x(j(n,t,P),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!o(B(B(n,a),t)))(t,e)?g(L(p(await a(k+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,i,c,r,w=!1)=>{const l=U();b(i??{},(a=>p(D(a??{}),(a=>Y(l,a)))));const y=f(l);if(!w&&r&&A(y)&&R(n,t))return await a("DROP TABLE"+v(t)),void W(n,t);if(A(y)||R(n,t)){const e=B(n,t),i=U(_(e));await E([...p(y,(async s=>{N(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),W(e,s,""))})),...!w&&c?p(f(i),(async n=>{n!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(n)}`),W(e,n))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${m(p(y,(a=>e+v(a))))});`),W(n,t,P([[s,""],...p(y,(a=>[a,""]))]));if(w)o(i)?await a("DELETE FROM"+v(t)+"WHERE 1"):await E(b(i,(async(e,n)=>{o(e)?await a("DELETE FROM"+v(t)+J+v(s)+"=?",[n]):A(y)||await z(a,t,s,D(e),[n,...F(e)])})));else if(A(y))R(n,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=L(_(B(n,t)),(a=>a!=s)),c=[],o=[];b(i??{},((a,t)=>{O(c,t,...p(e,(t=>a?.[t]))),O(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+v(t)+J+v(s)+"NOT IN("+K(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+v(t)+"("+v(s)+m(p(i,(a=>e+v(a))))+")VALUES"+l(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+v(s)+")DO UPDATE SET"+m(p(i,(a=>v(a)+"=excluded."+v(a))),e),c),K=a=>m(p(a,(()=>"?")),e),V=JSON.parse,Q=P(),X=P(),Z=(a,t,e,s,n,i,[c,w]=[],l=[])=>{let y,E,u,d=0,v=0;j(Q,l,(()=>0)),j(X,l,(()=>[]));const T=async a=>(2!=d&&(d=1,await m.schedule((async()=>{await a(),d=0}))),m),m={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),m),save:async t=>(1!=d&&(d=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();$(e)&&$(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(r(y,a.delListener),y=void 0,m),schedule:async(...a)=>(O(B(X,l),...a),await(async()=>{if(!B(Q,l)){for(W(Q,l,1);!o((a=B(X,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Q,l,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(m[c]=()=>w),S(m)},aa="store",ta=(a,t,e,s,n,[i],c,o)=>{const[r,w,l,y]=q(t,c,n);return Z(a,(async()=>await y((async()=>(await r(),V((await w(i,d))[u]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await r(),await l(i,d,{[u]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ea=(a,t,e,s,n,[i,c,[r,w,l]],y,v)=>{const[T,m,p,A]=q(t,y,n),O=async(a,t)=>await E(H(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await p(e,s,o,n,i,t)}))),R=async(a,t)=>w?await p(l,d,{[u]:a},!0,!0,t):null;return Z(a,(async()=>await A((async()=>{await T();const a=await(async()=>g(L(await E(H(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>r?(await m(l,d))[u]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await T(),o(t)){const[t,e]=a();await O(t),await R(e)}else{const[a,e]=t();await O(a,!0),await R(e,!0)}}))),e,s,n,["getDb",v],v)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",oa="tableName",ra={mode:sa,[na]:1},wa={load:0,save:0,[oa]:t+"_values"},la=(a,t,e,s)=>{const n=P();return b(a,((a,i)=>{const c=l(F(I(t,w(a)?{[e]:a}:a)),0,M(t));o(c[0])||s(i,c[0])||W(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,e,s,n,i,o,r,y)=>{let E,u,v;const[m,p,A,L]=(a=>{const e=(a=>I(ra,w(a)?{storeTableName:a}:a??{}))(a),s=e[na];if(e.mode==sa){const{storeTableName:a=t}=e;return[1,s,[a],U(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=l(F(I(wa,c)),0,M(wa)),r=o[2],y=U(r);return[0,s,[la(n,{[ca]:null,[ia]:d},ca,(a=>Y(y,a)&&a==r)),la(i,{[oa]:null,[ia]:d,deleteEmptyColumns:0,deleteEmptyTable:0},oa,((a,t)=>Y(y,t)&&t==r)),o],y]})(e);return(m?ta:ea)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(v??=n)||(a(),E=t,u=e)}catch{}},e=p,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=u=null,i(t)}),r,A,f(L),y)};exports.createCrSqliteWasmPersister=(a,t,e,s,n)=>da(a,e,(async(a,e=[])=>await t.execO(a,e)),(a=>t.onUpdate(((t,e,s)=>a(s)))),(a=>a()),s,n,t);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),T=a=>0==E(a),m=(a,t)=>a.filter(t),p=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,N=a=>h.getPrototypeOf(a),O=h.keys,R=h.freeze,C=(a=[])=>h.fromEntries(a),D=(...a)=>h.assign({},...a),S=(a,t)=>v(h.entries(a),(([a,e])=>t(e,a))),b=a=>h.values(a),g=a=>E(O(a)),I=a=>(a=>!r(a)&&l(N(a),(a=>a==h.prototype||r(N(a))),(()=>!0)))(a)&&0==g(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),H=(a,t,e,s=_)=>(S(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),W=a=>new Set(Array.isArray(a)||r(a)?a:[a]),j=(a,t)=>a?.add(t),k="_",q="_id",x=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",Y=(a,t,s)=>{const n=F();return[async()=>H(n,C(await u(v(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(v(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,H(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?C(m(v(await a("SELECT*FROM"+x(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!I(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=W();S(i??{},(a=>v(O(a??{}),(a=>j(w,a)))));const y=L(w);if(!l&&o&&T(y)&&A(n,t))return await a("DROP TABLE"+x(t)),void _(n,t);if(T(y)||A(n,t)){const e=$(n,t),i=W(M(e));await u([...v(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${x(t)}ADD${x(s)}`),_(e,s,""))})),...!l&&c?v(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${x(t)}DROP${x(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${x(t)}(${x(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+x(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+x(t)+"WHERE 1"):await u(S(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+x(t)+U+x(s)+"=?",[n]):T(y)||await z(a,t,s,O(e),[n,...b(e)])})));else if(T(y))A(n,t)&&await a("DELETE FROM"+x(t)+"WHERE 1");else{const e=m(M($(n,t)),(a=>a!=s)),c=[],o=[];S(i??{},((a,t)=>{p(c,t,...v(e,(t=>a?.[t]))),p(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+x(t)+U+x(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+x(t)+"("+x(s)+d(v(i,(a=>e+x(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+x(s)+")DO UPDATE SET"+d(v(i,(a=>x(a)+"=excluded."+x(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;B(V,w,(()=>0)),B(Q,w,(()=>[]));const T=async a=>(2!=d&&(d=1,await m.schedule((async()=>{await a(),d=0}))),m),m={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),m),save:async t=>(1!=d&&(d=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();I(e)&&I(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(l(y,a.delListener),y=void 0,m),schedule:async(...a)=>(p($(Q,w),...a),await(async()=>{if(!$(V,w)){for(_(V,w,1);!r((a=$(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,w,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(m[c]=()=>o),R(m)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=Y(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await l(i,q))[k]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,q,{[k]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,v,T,p]=Y(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),L=async(a,t)=>l?await T(w,q,{[k]:a},!0,!0,t):null;return X(a,(async()=>await p((async()=>{await d();const a=await(async()=>C(m(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!I(a[1])))))(),t=await(async()=>o?(await v(w,q))[k]:{})();return I(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await p((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return S(a,((a,i)=>{const c=y(b(D(t,w(a)?{[e]:a}:a)),0,g(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[v,T,m,p]=(a=>{const e=(a=>D(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],W(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(b(D(ra,c)),0,g(ra)),r=o[2],l=W(r);return[0,s,[la(n,{[ia]:null,[na]:q},ia,(a=>j(l,a)&&a==r)),la(i,{[ca]:null,[na]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*T),n((t=>p.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,m,L(p),E)};exports.createElectricSqlPersister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return s=({tablename:t})=>a(t),t.notifier.alias(e).forEach(s);var s}))),(a=>a()),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,r=a=>null==a,o=(a,t,e)=>r(a)?e?.():t(a),l=t=>a(t)==s,w=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",v=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",m=(a,t="")=>a.join(t),A=(a,t)=>a.map(t),p=a=>0==y(a),L=(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),N=Object,D=a=>N.getPrototypeOf(a),C=N.keys,S=N.freeze,b=(a=[])=>N.fromEntries(a),g=(...a)=>N.assign({},...a),I=(a,t)=>A(N.entries(a),(([a,e])=>t(e,a))),F=a=>N.values(a),M=a=>y(C(a)),$=a=>(a=>!r(a)&&o(D(a),(a=>a==N.prototype||r(D(a))),(()=>!0)))(a)&&0==M(a),P=a=>new Map(a),_=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>A([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(R(a,t),a):a?.set(t,e),j=(a,t,e)=>(h(a,t)||W(a,t,e()),B(a,t)),Y=(a,t,e,s=W)=>(I(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>o(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),k=a=>new Set(Array.isArray(a)||r(a)?a:[a]),q=(a,t)=>a?.add(t),x=T+"*FROM",G="FROM pragma_table_",J="WHERE",U=(a,t,s)=>{const n=P();return[async()=>Y(n,b(await E(A(await a("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+K(t)+")ORDER BY name",t),(async({name:t})=>[t,b(A(await a(T+" name,type "+G+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,Y(j(n,t,P),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!r(B(B(n,a),t)))(t,e)?b(L(A(await a(x+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!$(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=k();I(i??{},(a=>A(C(a??{}),(a=>q(w,a)))));const y=O(w);if(!l&&o&&p(y)&&h(n,t))return await a("DROP TABLE"+v(t)),void W(n,t);if(p(y)||h(n,t)){const e=B(n,t),i=k(_(e));await E([...A(y,(async s=>{R(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),W(e,s,""))})),...!l&&c?A(O(i),(async n=>{n!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(n)}`),W(e,n))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${m(A(y,(a=>e+v(a))))});`),W(n,t,P([[s,""],...A(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+v(t)+"WHERE 1"):await E(I(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+v(t)+J+v(s)+"=?",[n]):p(y)||await z(a,t,s,C(e),[n,...F(e)])})));else if(p(y))h(n,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=L(_(B(n,t)),(a=>a!=s)),c=[],r=[];I(i??{},((a,t)=>{f(c,t,...A(e,(t=>a?.[t]))),f(r,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+v(t)+J+v(s)+"NOT IN("+K(r)+")",r)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+v(t)+"("+v(s)+m(A(i,(a=>e+v(a))))+")VALUES"+w(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+v(s)+")DO UPDATE SET"+m(A(i,(a=>v(a)+"=excluded."+v(a))),e),c),K=a=>m(A(a,(()=>"?")),e),V=JSON.parse,Q=P(),X=P(),Z=(a,t,e,s,n,i,[c,l]=[],w=[])=>{let y,E,u,d=0,v=0;j(Q,w,(()=>0)),j(X,w,(()=>[]));const T=async a=>(2!=d&&(d=1,await m.schedule((async()=>{await a(),d=0}))),m),m={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),m),save:async t=>(1!=d&&(d=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();$(e)&&$(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(o(y,a.delListener),y=void 0,m),schedule:async(...a)=>(f(B(X,w),...a),await(async()=>{if(!B(Q,w)){for(W(Q,w,1);!r((a=B(X,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Q,w,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(m[c]=()=>l),S(m)},aa="store",ta=(a,t,e,s,n,[i],c,r)=>{const[o,l,w,y]=U(t,c,n);return Z(a,(async()=>await y((async()=>(await o(),V((await l(i,d))[u]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await o(),await w(i,d,{[u]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",r],r)},ea=(a,t,e,s,n,[i,c,[o,l,w]],y,v)=>{const[T,m,A,p]=U(t,y,n),f=async(a,t)=>await E(H(c,(async([e,s,n,i],c)=>{const r=a[c];t&&void 0===r||await A(e,s,r,n,i,t)}))),h=async(a,t)=>l?await A(w,d,{[u]:a},!0,!0,t):null;return Z(a,(async()=>await p((async()=>{await T();const a=await(async()=>b(L(await E(H(i,(async([a,t],e)=>[a,await m(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>o?(await m(w,d))[u]:{})();return $(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await p((async()=>{if(await T(),r(t)){const[t,e]=a();await f(t),await h(e)}else{const[a,e]=t();await f(a,!0),await h(e,!0)}}))),e,s,n,["getDb",v],v)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",ra="tableName",oa={mode:sa,[na]:1},la={load:0,save:0,[ra]:t+"_values"},wa=(a,t,e,s)=>{const n=P();return I(a,((a,i)=>{const c=w(F(g(t,l(a)?{[e]:a}:a)),0,M(t));r(c[0])||s(i,c[0])||W(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,e,s,n,i,r,o,y)=>{let E,u,v;const[m,A,p,L]=(a=>{const e=(a=>g(oa,l(a)?{storeTableName:a}:a??{}))(a),s=e[na];if(e.mode==sa){const{storeTableName:a=t}=e;return[1,s,[a],k(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,r=w(F(g(la,c)),0,M(la)),o=r[2],y=k(o);return[0,s,[wa(n,{[ca]:null,[ia]:d},ca,(a=>q(y,a)&&a==o)),wa(i,{[ra]:null,[ia]:d,deleteEmptyColumns:0,deleteEmptyTable:0},ra,((a,t)=>q(y,t)&&t==o)),r],y]})(e);return(m?ta:ea)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(v??=n)||(a(),E=t,u=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=u=null,i(t)}),o,p,O(L),y)};exports.createElectricSqlPersister=(a,t,e,s,n)=>da(a,e,(async(a,e=[])=>await t.db.raw({sql:a,args:e})),(a=>t.notifier.subscribeToDataChanges((e=>{return s=({tablename:t})=>a(t),t.notifier.alias(e).forEach(s);var s}))),(a=>a()),s,n,t);
@@ -1 +1 @@
1
- "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),c=Promise,o=setInterval,r=clearInterval,l=a=>null==a,w=(a,t,e)=>l(a)?e?.():t(a),y=a=>t(a)==n,E=(a,t,e)=>a.slice(t,e),u=a=>a.length,d=async a=>c.all(a),v=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),m=a=>0==u(a),T=(a,t)=>a.filter(t),A=(a,...t)=>a.push(...t),L=(a,t)=>a?.has(t)??!1,N=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,O=a=>h.getPrototypeOf(a),R=h.keys,C=h.freeze,D=(a=[])=>h.fromEntries(a),S=(...a)=>h.assign({},...a),g=(a,t)=>p(h.entries(a),(([a,e])=>t(e,a))),b=a=>h.values(a),I=a=>u(R(a)),F=a=>(a=>!l(a)&&w(O(a),(a=>a==h.prototype||l(O(a))),(()=>!0)))(a)&&0==I(a),M=a=>new Map(a),$=a=>[...a?.keys()??[]],P=(a,t)=>a?.get(t),_=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>l(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(L(a,t)||x(a,t,e()),P(a,t)),H=(a,t,e,s=x)=>(g(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!l(((a,t)=>w(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),W=a=>new Set(Array.isArray(a)||l(a)?a:[a]),j=(a,t)=>a?.add(t),q="_",k="_id",J=a=>`"${a.replace(/"/g,'""')}"`,U="FROM pragma_table_",Y="WHERE",z=(a,t,e)=>{const n=M();return[async()=>H(n,D(await d(p(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+K(t)+")",t),(async({name:t})=>[t,D(p(await a("SELECT name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(n,t,H(B(n,t,M),e,((a,t,e)=>{e!=P(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(n,t))),async(t,e)=>((a,t)=>!l(P(P(n,a),t)))(t,e)?D(T(p(await a("SELECT*FROM"+J(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!l(a)&&!F(t)))):{},async(t,e,i,c,o,r=!1)=>{const w=W();g(i??{},(a=>p(R(a??{}),(a=>j(w,a)))));const y=N(w);if(!r&&o&&m(y)&&L(n,t))return await a("DROP TABLE"+J(t)),void x(n,t);if(m(y)||L(n,t)){const s=P(n,t),i=W($(s));await d([...p(y,(async e=>{f(i,e)||(await a(`ALTER TABLE${J(t)}ADD${J(e)}`),x(s,e,""))})),...!r&&c?p(N(i),(async n=>{n!=e&&(await a(`ALTER TABLE${J(t)}DROP${J(n)}`),x(s,n))})):[]])}else await a(`CREATE TABLE${J(t)}(${J(e)} PRIMARY KEY ON CONFLICT REPLACE${v(p(y,(a=>s+J(a))))});`),x(n,t,M([[e,""],...p(y,(a=>[a,""]))]));if(r)l(i)?await a("DELETE FROM"+J(t)+"WHERE 1"):await d(g(i,(async(s,n)=>{l(s)?await a("DELETE FROM"+J(t)+Y+J(e)+"=?",[n]):m(y)||await G(a,t,e,R(s),[n,...b(s)])})));else if(m(y))L(n,t)&&await a("DELETE FROM"+J(t)+"WHERE 1");else{const s=T($(P(n,t)),(a=>a!=e)),c=[],o=[];g(i??{},((a,t)=>{A(c,t,...p(s,(t=>a?.[t]))),A(o,t)})),await G(a,t,e,s,c),await a("DELETE FROM"+J(t)+Y+J(e)+"NOT IN("+K(o)+")",o)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},G=async(a,t,e,n,c)=>await a("INSERT INTO"+J(t)+"("+J(e)+v(p(n,(a=>s+J(a))))+")VALUES"+E(i(`,(?${i(",?",u(n))})`,u(c)/(u(n)+1)),1)+"ON CONFLICT("+J(e)+")DO UPDATE SET"+v(p(n,(a=>J(a)+"=excluded."+J(a))),s),c),K=a=>v(p(a,(()=>"?")),s),V=JSON.parse,Q=M(),X=M(),Z=(a,t,e,s,n,i,[c,o]=[],r=[])=>{let y,E,u,d=0,v=0;B(Q,r,(()=>0)),B(X,r,(()=>[]));const p=async a=>(2!=d&&(d=1,await m.schedule((async()=>{await a(),d=0}))),m),m={load:async(e,s)=>await p((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(m.stopAutoLoad(),await m.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await p((async()=>a.setTransactionChanges(t)))}else await p((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),m),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),m),save:async t=>(1!=d&&(d=2,await m.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),m),startAutoSave:async()=>(await m.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();F(e)&&F(s)||m.save((()=>[e,s]))})),m),stopAutoSave:()=>(w(y,a.delListener),y=void 0,m),schedule:async(...a)=>(A(P(X,r),...a),await(async()=>{if(!P(Q,r)){for(x(Q,r,1);!l((a=P(X,r),E=a.shift()));)try{await E()}catch(a){i?.(a)}x(Q,r,0)}var a})(),m),getStore:()=>a,destroy:()=>m.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(m[c]=()=>o),C(m)},aa="store",ta=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=z(t,c,n);return Z(a,(async()=>await y((async()=>(await r(),V((await l(i,k))[q]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,k,{[q]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ea=(a,t,e,s,n,[i,c,[o,r,w]],y,E)=>{const[u,v,p,m]=z(t,y,n),A=async(a,t)=>await d(_(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await p(e,s,o,n,i,t)}))),L=async(a,t)=>r?await p(w,k,{[q]:a},!0,!0,t):null;return Z(a,(async()=>await m((async()=>{await u();const a=await(async()=>D(T(await d(_(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!F(a[1])))))(),t=await(async()=>o?(await v(w,k))[q]:{})();return F(a)&&l(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await u(),l(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",oa="tableName",ra={mode:sa,[na]:1},la={load:0,save:0,[oa]:e+"_values"},wa=(a,t,e,s)=>{const n=M();return g(a,((a,i)=>{const c=E(b(S(t,y(a)?{[e]:a}:a)),0,I(t));l(c[0])||s(i,c[0])||x(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,t,s,n,i,c,l,w)=>{let u,d;const[v,p,m,T]=(a=>{const t=(a=>S(ra,y(a)?{storeTableName:a}:a??{}))(a),s=t[na];if(t.mode==sa){const{storeTableName:a=e}=t;return[1,s,[a],W(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=t,o=E(b(S(la,c)),0,I(la)),r=o[2],l=W(r);return[0,s,[wa(n,{[ca]:null,[ia]:k},ca,(a=>j(l,a)&&a==r)),wa(i,{[oa]:null,[ia]:k,deleteEmptyColumns:0,deleteEmptyTable:0},oa,((a,t)=>j(l,t)&&t==r)),o],l]})(t);return(v?ta:ea)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>[o((async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*p),n((t=>T.has(t)?a():0))]),(([a,t])=>{r(a),u=d=null,i(t)}),l,m,N(T),w)};exports.createExpoSqliteNextPersister=(t,e,s,n,i)=>da(t,s,(async(a,t=[])=>await e.allAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),n,i,e);
1
+ "use strict";var a=require("expo-sqlite/next");const t=a=>typeof a,e="tinybase",s=",",n=t(""),i=(a,t)=>a.repeat(t),c=Promise,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=a=>t(a)==n,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>c.all(a),d="_",v="_id",m=a=>`"${a.replace(/"/g,'""')}"`,p="SELECT",A=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),L=a=>0==E(a),N=(a,t)=>a.filter(t),O=(a,...t)=>a.push(...t),R=(a,t)=>a?.has(t)??!1,f=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),D=Object,C=a=>D.getPrototypeOf(a),S=D.keys,g=D.freeze,b=(a=[])=>D.fromEntries(a),I=(...a)=>D.assign({},...a),F=(a,t)=>T(D.entries(a),(([a,e])=>t(e,a))),M=a=>D.values(a),$=a=>E(S(a)),P=a=>(a=>!r(a)&&l(C(a),(a=>a==D.prototype||r(C(a))),(()=>!0)))(a)&&0==$(a),_=a=>new Map(a),x=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>r(e)?(h(a,t),a):a?.set(t,e),j=(a,t,e)=>(R(a,t)||W(a,t,e()),B(a,t)),q=(a,t,e,s=W)=>(F(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),Y=a=>new Set(Array.isArray(a)||r(a)?a:[a]),k=(a,t)=>a?.add(t),G=p+"*FROM",J="FROM pragma_table_",U="WHERE",z=(a,t,e)=>{const n=_();return[async()=>q(n,b(await u(T(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+V(t)+")ORDER BY name",t),(async({name:t})=>[t,b(T(await a(p+" name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,q(j(n,t,_),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!r(B(B(n,a),t)))(t,e)?b(N(T(await a(G+m(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!P(t)))):{},async(t,e,i,c,o,l=!1)=>{const w=Y();F(i??{},(a=>T(S(a??{}),(a=>k(w,a)))));const y=f(w);if(!l&&o&&L(y)&&R(n,t))return await a("DROP TABLE"+m(t)),void W(n,t);if(L(y)||R(n,t)){const s=B(n,t),i=Y(x(s));await u([...T(y,(async e=>{h(i,e)||(await a(`ALTER TABLE${m(t)}ADD${m(e)}`),W(s,e,""))})),...!l&&c?T(f(i),(async n=>{n!=e&&(await a(`ALTER TABLE${m(t)}DROP${m(n)}`),W(s,n))})):[]])}else await a(`CREATE TABLE${m(t)}(${m(e)} PRIMARY KEY ON CONFLICT REPLACE${A(T(y,(a=>s+m(a))))});`),W(n,t,_([[e,""],...T(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+m(t)+"WHERE 1"):await u(F(i,(async(s,n)=>{r(s)?await a("DELETE FROM"+m(t)+U+m(e)+"=?",[n]):L(y)||await K(a,t,e,S(s),[n,...M(s)])})));else if(L(y))R(n,t)&&await a("DELETE FROM"+m(t)+"WHERE 1");else{const s=N(x(B(n,t)),(a=>a!=e)),c=[],o=[];F(i??{},((a,t)=>{O(c,t,...T(s,(t=>a?.[t]))),O(o,t)})),await K(a,t,e,s,c),await a("DELETE FROM"+m(t)+U+m(e)+"NOT IN("+V(o)+")",o)}},async t=>{let s;await a("BEGIN");try{s=await t()}catch(a){e?.(a)}return await a("END"),s}]},K=async(a,t,e,n,c)=>await a("INSERT INTO"+m(t)+"("+m(e)+A(T(n,(a=>s+m(a))))+")VALUES"+y(i(`,(?${i(",?",E(n))})`,E(c)/(E(n)+1)),1)+"ON CONFLICT("+m(e)+")DO UPDATE SET"+A(T(n,(a=>m(a)+"=excluded."+m(a))),s),c),V=a=>A(T(a,(()=>"?")),s),Q=JSON.parse,X=_(),Z=_(),aa=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;j(X,w,(()=>0)),j(Z,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await p.schedule((async()=>{await a(),d=0}))),p),p={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),p),save:async t=>(1!=d&&(d=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();P(e)&&P(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(l(y,a.delListener),y=void 0,p),schedule:async(...a)=>(O(B(Z,w),...a),await(async()=>{if(!B(X,w)){for(W(X,w,1);!r((a=B(Z,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(X,w,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(p[c]=()=>o),g(p)},ta="store",ea=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=z(t,c,n);return aa(a,(async()=>await y((async()=>(await r(),Q((await l(i,v))[d]?.[ta]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,v,{[d]:{[ta]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?D.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},sa=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[m,p,A,T]=z(t,y,n),L=async(a,t)=>await u(H(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await A(e,s,o,n,i,t)}))),O=async(a,t)=>l?await A(w,v,{[d]:a},!0,!0,t):null;return aa(a,(async()=>await T((async()=>{await m();const a=await(async()=>b(N(await u(H(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!P(a[1])))))(),t=await(async()=>o?(await p(w,v))[d]:{})();return P(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await m(),r(t)){const[t,e]=a();await L(t),await O(e)}else{const[a,e]=t();await L(a,!0),await O(e,!0)}}))),e,s,n,["getDb",E],E)},na="json",ia="autoLoadIntervalSeconds",ca="rowIdColumnName",oa="tableId",ra="tableName",la={mode:na,[ia]:1},wa={load:0,save:0,[ra]:e+"_values"},ya=(a,t,e,s)=>{const n=_();return F(a,((a,i)=>{const c=y(M(I(t,w(a)?{[e]:a}:a)),0,$(t));r(c[0])||s(i,c[0])||W(n,i,c)})),n},Ea="pragma ",ua="data_version",da="schema_version",va=(a,t,s,n,i,c,r,l)=>{let E,u,d;const[m,A,T,L]=(a=>{const t=(a=>I(la,w(a)?{storeTableName:a}:a??{}))(a),s=t[ia];if(t.mode==na){const{storeTableName:a=e}=t;return[1,s,[a],Y(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=t,o=y(M(I(wa,c)),0,$(wa)),r=o[2],l=Y(r);return[0,s,[ya(n,{[oa]:null,[ca]:v},oa,(a=>k(l,a)&&a==r)),ya(i,{[ra]:null,[ca]:v,deleteEmptyColumns:0,deleteEmptyTable:0},ra,((a,t)=>k(l,t)&&t==r)),o],l]})(t);return(m?ea:sa)(a,c?async(a,t)=>(c(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(Ea+ua))[0][ua],e=(await s(Ea+da))[0][da],n=(await s(p+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(d??=n)||(a(),E=t,u=e)}catch{}},e=A,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{o(a),E=u=null,i(t)}),r,T,f(L),l)};exports.createExpoSqliteNextPersister=(t,e,s,n,i)=>va(t,s,(async(a,t=[])=>await e.allAsync(a,t)),(t=>a.addDatabaseChangeListener((({tableName:a})=>t(a)))),(a=>a.remove()),n,i,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),m=a=>0==E(a),p=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,N=a=>h.getPrototypeOf(a),O=h.keys,R=h.freeze,C=(a=[])=>h.fromEntries(a),D=(...a)=>h.assign({},...a),S=(a,t)=>v(h.entries(a),(([a,e])=>t(e,a))),g=a=>h.values(a),b=a=>E(O(a)),I=a=>(a=>!r(a)&&l(N(a),(a=>a==h.prototype||r(N(a))),(()=>!0)))(a)&&0==b(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),x=(a,t,e,s=_)=>(S(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),H=a=>new Set(Array.isArray(a)||r(a)?a:[a]),W=(a,t)=>a?.add(t),j="_",k="_id",q=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",Y=(a,t,s)=>{const n=F();return[async()=>x(n,C(await u(v(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,C(v(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,x(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?C(p(v(await a("SELECT*FROM"+q(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!I(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=H();S(i??{},(a=>v(O(a??{}),(a=>W(w,a)))));const y=L(w);if(!l&&o&&m(y)&&A(n,t))return await a("DROP TABLE"+q(t)),void _(n,t);if(m(y)||A(n,t)){const e=$(n,t),i=H(M(e));await u([...v(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${q(t)}ADD${q(s)}`),_(e,s,""))})),...!l&&c?v(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${q(t)}DROP${q(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${q(t)}(${q(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+q(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+q(t)+"WHERE 1"):await u(S(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+q(t)+U+q(s)+"=?",[n]):m(y)||await z(a,t,s,O(e),[n,...g(e)])})));else if(m(y))A(n,t)&&await a("DELETE FROM"+q(t)+"WHERE 1");else{const e=p(M($(n,t)),(a=>a!=s)),c=[],o=[];S(i??{},((a,t)=>{T(c,t,...v(e,(t=>a?.[t]))),T(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+q(t)+U+q(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+q(t)+"("+q(s)+d(v(i,(a=>e+q(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+q(s)+")DO UPDATE SET"+d(v(i,(a=>q(a)+"=excluded."+q(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;B(V,w,(()=>0)),B(Q,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await p.schedule((async()=>{await a(),d=0}))),p),p={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),p),save:async t=>(1!=d&&(d=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();I(e)&&I(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(l(y,a.delListener),y=void 0,p),schedule:async(...a)=>(T($(Q,w),...a),await(async()=>{if(!$(V,w)){for(_(V,w,1);!r((a=$(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,w,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(p[c]=()=>o),R(p)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=Y(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await l(i,k))[j]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,k,{[j]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,v,m,T]=Y(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),L=async(a,t)=>l?await m(w,k,{[j]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>C(p(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!I(a[1])))))(),t=await(async()=>o?(await v(w,k))[j]:{})();return I(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return S(a,((a,i)=>{const c=y(g(D(t,w(a)?{[e]:a}:a)),0,b(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[v,m,p,T]=(a=>{const e=(a=>D(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],H(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(D(ra,c)),0,b(ra)),r=o[2],l=H(r);return[0,s,[la(n,{[ia]:null,[na]:k},ia,(a=>W(l,a)&&a==r)),la(i,{[ca]:null,[na]:k,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>W(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>T.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,p,L(T),E)};exports.createExpoSqlitePersister=(a,t,e,s,n)=>ua(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()),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,o=a=>null==a,r=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,l=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",v=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",A=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),p=a=>0==y(a),L=(a,t)=>a.filter(t),N=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,D=a=>h.getPrototypeOf(a),C=h.keys,S=h.freeze,g=(a=[])=>h.fromEntries(a),b=(...a)=>h.assign({},...a),I=(a,t)=>T(h.entries(a),(([a,e])=>t(e,a))),F=a=>h.values(a),M=a=>y(C(a)),$=a=>(a=>!o(a)&&r(D(a),(a=>a==h.prototype||o(D(a))),(()=>!0)))(a)&&0==M(a),P=a=>new Map(a),_=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),x=(a,t,e)=>o(e)?(f(a,t),a):a?.set(t,e),W=(a,t,e)=>(O(a,t)||x(a,t,e()),B(a,t)),j=(a,t,e,s=x)=>(I(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!o(((a,t)=>r(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),Y=a=>new Set(Array.isArray(a)||o(a)?a:[a]),k=(a,t)=>a?.add(t),q=m+"*FROM",G="FROM pragma_table_",J="WHERE",U=(a,t,s)=>{const n=P();return[async()=>j(n,g(await E(T(await a("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+K(t)+")ORDER BY name",t),(async({name:t})=>[t,g(T(await a(m+" name,type "+G+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>x(n,t,j(W(n,t,P),e,((a,t,e)=>{e!=B(a,t)&&x(a,t,e)}),((a,t)=>x(a,t))))),((a,t)=>x(n,t))),async(t,e)=>((a,t)=>!o(B(B(n,a),t)))(t,e)?g(L(T(await a(q+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,i,c,r,w=!1)=>{const l=Y();I(i??{},(a=>T(C(a??{}),(a=>k(l,a)))));const y=R(l);if(!w&&r&&p(y)&&O(n,t))return await a("DROP TABLE"+v(t)),void x(n,t);if(p(y)||O(n,t)){const e=B(n,t),i=Y(_(e));await E([...T(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),x(e,s,""))})),...!w&&c?T(R(i),(async n=>{n!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(n)}`),x(e,n))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${A(T(y,(a=>e+v(a))))});`),x(n,t,P([[s,""],...T(y,(a=>[a,""]))]));if(w)o(i)?await a("DELETE FROM"+v(t)+"WHERE 1"):await E(I(i,(async(e,n)=>{o(e)?await a("DELETE FROM"+v(t)+J+v(s)+"=?",[n]):p(y)||await z(a,t,s,C(e),[n,...F(e)])})));else if(p(y))O(n,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=L(_(B(n,t)),(a=>a!=s)),c=[],o=[];I(i??{},((a,t)=>{N(c,t,...T(e,(t=>a?.[t]))),N(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+v(t)+J+v(s)+"NOT IN("+K(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+v(t)+"("+v(s)+A(T(i,(a=>e+v(a))))+")VALUES"+l(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+v(s)+")DO UPDATE SET"+A(T(i,(a=>v(a)+"=excluded."+v(a))),e),c),K=a=>A(T(a,(()=>"?")),e),V=JSON.parse,Q=P(),X=P(),Z=(a,t,e,s,n,i,[c,w]=[],l=[])=>{let y,E,u,d=0,v=0;W(Q,l,(()=>0)),W(X,l,(()=>[]));const m=async a=>(2!=d&&(d=1,await A.schedule((async()=>{await a(),d=0}))),A),A={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(A.stopAutoLoad(),await A.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),A),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),A),save:async t=>(1!=d&&(d=2,await A.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),A),startAutoSave:async()=>(await A.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();$(e)&&$(s)||A.save((()=>[e,s]))})),A),stopAutoSave:()=>(r(y,a.delListener),y=void 0,A),schedule:async(...a)=>(N(B(X,l),...a),await(async()=>{if(!B(Q,l)){for(x(Q,l,1);!o((a=B(X,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}x(Q,l,0)}var a})(),A),getStore:()=>a,destroy:()=>A.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(A[c]=()=>w),S(A)},aa="store",ta=(a,t,e,s,n,[i],c,o)=>{const[r,w,l,y]=U(t,c,n);return Z(a,(async()=>await y((async()=>(await r(),V((await w(i,d))[u]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await r(),await l(i,d,{[u]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ea=(a,t,e,s,n,[i,c,[r,w,l]],y,v)=>{const[m,A,T,p]=U(t,y,n),N=async(a,t)=>await E(H(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),O=async(a,t)=>w?await T(l,d,{[u]:a},!0,!0,t):null;return Z(a,(async()=>await p((async()=>{await m();const a=await(async()=>g(L(await E(H(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>r?(await A(l,d))[u]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await p((async()=>{if(await m(),o(t)){const[t,e]=a();await N(t),await O(e)}else{const[a,e]=t();await N(a,!0),await O(e,!0)}}))),e,s,n,["getDb",v],v)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",oa="tableName",ra={mode:sa,[na]:1},wa={load:0,save:0,[oa]:t+"_values"},la=(a,t,e,s)=>{const n=P();return I(a,((a,i)=>{const c=l(F(b(t,w(a)?{[e]:a}:a)),0,M(t));o(c[0])||s(i,c[0])||x(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,e,s,n,i,o,r,y)=>{let E,u,v;const[A,T,p,L]=(a=>{const e=(a=>b(ra,w(a)?{storeTableName:a}:a??{}))(a),s=e[na];if(e.mode==sa){const{storeTableName:a=t}=e;return[1,s,[a],Y(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=l(F(b(wa,c)),0,M(wa)),r=o[2],y=Y(r);return[0,s,[la(n,{[ca]:null,[ia]:d},ca,(a=>k(y,a)&&a==r)),la(i,{[oa]:null,[ia]:d,deleteEmptyColumns:0,deleteEmptyTable:0},oa,((a,t)=>k(y,t)&&t==r)),o],y]})(e);return(A?ta:ea)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua],n=(await s(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(v??=n)||(a(),E=t,u=e)}catch{}},e=T,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=u=null,i(t)}),r,p,R(L),y)};exports.createExpoSqlitePersister=(a,t,e,s,n)=>da(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()),s,n,t);
@@ -1 +1 @@
1
- "use strict";const t=Promise,e=setInterval,a=clearInterval,s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=e=>new t(e),r=async e=>t.all(e),c=(t,e)=>t.map(e),i=(t,...e)=>t.push(...e),y=Object,d=t=>y.getPrototypeOf(t),l=y.keys,u=y.freeze,w=t=>(t=>!s(t)&&n(d(t),(t=>t==y.prototype||s(d(t))),(()=>!0)))(t)&&0==(t=>l(t).length)(t),h=t=>new Map(t),p=(t,e)=>t?.get(e),v=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},g=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||v(t,e,a()),p(t,e)},A=h(),S=h(),b=globalThis.window,f=["t","v"],L={keyPath:"k"},j=async(t,e)=>{const a=((e,a)=>c(y.entries(e),(([e,a])=>k(t,"put",{k:e,v:a}))))(e);c(await k(t,"getAllKeys"),(o=>((t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)))(e,o)?0:i(a,k(t,"delete",o)))),await r(a)},k=async(t,e,a)=>o(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)}));exports.createIndexedDbPersister=(t,d,l=1,h)=>{const x=async(t,e=[],a=0)=>o(((s,n)=>{const o=b.indexedDB.open(d,a?2:void 0);o.onupgradeneeded=()=>a&&c(f,(t=>{try{o.result.createObjectStore(t,L)}catch{}})),o.onsuccess=async()=>{try{const a=o.result.transaction(f,"readwrite"),n=await r(c(f,(async(s,n)=>await t(a.objectStore(s),e[n]))));o.result.close(),s(n)}catch(t){n(t)}},o.onerror=()=>n("indexedDB.open error")}));return((t,e,a,o,r,c,[y,d]=[],l=[])=>{let h,b,f,L=0,j=0;g(A,l,(()=>0)),g(S,l,(()=>[]));const k=async t=>(2!=L&&(L=1,await x.schedule((async()=>{await t(),L=0}))),x),x={load:async(a,s)=>await k((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(x.stopAutoLoad(),await x.load(a,s),j=1,f=o((async(a,s)=>{if(s){const e=s();await k((async()=>t.setTransactionChanges(e)))}else await k((async()=>{try{t.setContent(a?.()??await e())}catch(t){c?.(t)}}))})),x),stopAutoLoad:()=>(j&&(r(f),f=void 0,j=0),x),save:async e=>(1!=L&&(L=2,await x.schedule((async()=>{try{await a(t.getContent,e)}catch(t){c?.(t)}L=0}))),x),startAutoSave:async()=>(await x.stopAutoSave().save(),h=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();w(a)&&w(s)||x.save((()=>[a,s]))})),x),stopAutoSave:()=>(n(h,t.delListener),h=void 0,x),schedule:async(...t)=>(i(p(S,l),...t),await(async()=>{if(!p(A,l)){for(v(A,l,1);!s((t=p(S,l),b=t.shift()));)try{await b()}catch(t){c?.(t)}v(A,l,0)}var t})(),x),getStore:()=>t,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return y&&(x[y]=()=>d),u(x)})(t,(async()=>await x((async t=>((t=[])=>y.fromEntries(t))(c(await k(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await x((async(t,e)=>await j(t,e)),t(),1)),(t=>e(t,1e3*l)),(t=>a(t)),h,["getDbName",d])},exports.objectStoreMatch=j;
1
+ "use strict";const t=Promise,e=clearInterval,a=t=>null==t,s=(t,e,s)=>a(t)?s?.():e(t),n=e=>new t(e),o=async e=>t.all(e),r=(t,e)=>t.map(e),c=(t,...e)=>t.push(...e),i=Object,y=t=>i.getPrototypeOf(t),d=i.keys,l=i.freeze,u=t=>(t=>!a(t)&&s(y(t),(t=>t==i.prototype||a(y(t))),(()=>!0)))(t)&&0==(t=>d(t).length)(t),w=t=>new Map(t),h=(t,e)=>t?.get(e),p=(t,e,s)=>{return a(s)?(n=t,o=e,n?.delete(o),t):t?.set(e,s);var n,o},v=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||p(t,e,a()),h(t,e)},g=w(),A=w(),S=globalThis.window,b=["t","v"],f={keyPath:"k"},L=async(t,e)=>{const n=((e,a)=>r(i.entries(e),(([e,a])=>j(t,"put",{k:e,v:a}))))(e);r(await j(t,"getAllKeys"),(o=>((t,e)=>!a(((t,e)=>s(t,(t=>t[e])))(t,e)))(e,o)?0:c(n,j(t,"delete",o)))),await o(n)},j=async(t,e,a)=>n(((s,n)=>{const o=t[e](a);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${e} error`)}));exports.createIndexedDbPersister=(t,y,d=1,w)=>{const k=async(t,e=[],a=0)=>n(((s,n)=>{const c=S.indexedDB.open(y,a?2:void 0);c.onupgradeneeded=()=>a&&r(b,(t=>{try{c.result.createObjectStore(t,f)}catch{}})),c.onsuccess=async()=>{try{const a=c.result.transaction(b,"readwrite"),n=await o(r(b,(async(s,n)=>await t(a.objectStore(s),e[n]))));c.result.close(),s(n)}catch(t){n(t)}},c.onerror=()=>n("indexedDB.open error")}));return((t,e,n,o,r,i,[y,d]=[],w=[])=>{let S,b,f,L=0,j=0;v(g,w,(()=>0)),v(A,w,(()=>[]));const k=async t=>(2!=L&&(L=1,await x.schedule((async()=>{await t(),L=0}))),x),x={load:async(a,s)=>await k((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(x.stopAutoLoad(),await x.load(a,s),j=1,f=o((async(a,s)=>{if(s){const e=s();await k((async()=>t.setTransactionChanges(e)))}else await k((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),x),stopAutoLoad:()=>(j&&(r(f),f=void 0,j=0),x),save:async e=>(1!=L&&(L=2,await x.schedule((async()=>{try{await n(t.getContent,e)}catch(t){i?.(t)}L=0}))),x),startAutoSave:async()=>(await x.stopAutoSave().save(),S=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();u(a)&&u(s)||x.save((()=>[a,s]))})),x),stopAutoSave:()=>(s(S,t.delListener),S=void 0,x),schedule:async(...t)=>(c(h(A,w),...t),await(async()=>{if(!h(g,w)){for(p(g,w,1);!a((t=h(A,w),b=t.shift()));)try{await b()}catch(t){i?.(t)}p(g,w,0)}var t})(),x),getStore:()=>t,destroy:()=>x.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return y&&(x[y]=()=>d),l(x)})(t,(async()=>await k((async t=>((t=[])=>i.fromEntries(t))(r(await j(t,"getAll"),(({k:t,v:e})=>[t,e])))))),(async t=>await k((async(t,e)=>await L(t,e)),t(),1)),(t=>setInterval(t,1e3*d)),(t=>e(t)),w,["getDbName",y])},exports.objectStoreMatch=L;
@@ -1 +1 @@
1
- "use strict";const t=setInterval,a=clearInterval,e=t=>null==t,s=(t,a,s)=>e(t)?s?.():a(t),n=Object,o=t=>n.getPrototypeOf(t),r=n.keys,c=n.freeze,i=t=>(t=>!e(t)&&s(o(t),(t=>t==n.prototype||e(o(t))),(()=>!0)))(t)&&0==(t=>r(t).length)(t),y=JSON.parse,d=t=>new Map(t),h=(t,a)=>t?.get(a),u=(t,a,s)=>{return e(s)?(n=t,o=a,n?.delete(o),t):t?.set(a,s);var n,o},l=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||u(t,a,e()),h(t,a)},w=d(),p=d(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(o,r,d,f=5,g)=>{let A;return((t,a,n,o,r,y,[d,v]=[],f=[])=>{let g,A,S,C=0,L=0;l(w,f,(()=>0)),l(p,f,(()=>[]));const O=async t=>(2!=C&&(C=1,await T.schedule((async()=>{await t(),C=0}))),T),T={load:async(e,s)=>await O((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(T.stopAutoLoad(),await T.load(e,s),L=1,S=o((async(e,s)=>{if(s){const a=s();await O((async()=>t.setTransactionChanges(a)))}else await O((async()=>{try{t.setContent(e?.()??await a())}catch(t){y?.(t)}}))})),T),stopAutoLoad:()=>(L&&(r(S),S=void 0,L=0),T),save:async a=>(1!=C&&(C=2,await T.schedule((async()=>{try{await n(t.getContent,a)}catch(t){y?.(t)}C=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();i(e)&&i(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(s(g,t.delListener),g=void 0,T),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(h(p,f),...t),await(async()=>{if(!h(w,f)){for(u(w,f,1);!e((t=h(p,f),A=t.shift()));)try{await A()}catch(t){y?.(t)}u(w,f,0)}var t})(),T),getStore:()=>t,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d&&(T[d]=()=>v),c(T)})(o,(async()=>{const t=await fetch(r);return A=v(t),y(await t.text())}),(async t=>{return await fetch(d,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?n.fromEntries([...a]):a)))});var a}),(a=>t((async()=>{const t=await fetch(r,{method:"HEAD"}),s=v(t);e(A)||e(s)||s==A||(A=s,a())}),1e3*f)),(t=>a(t)),g,["getUrls",[r,d]])};
1
+ "use strict";const t=clearInterval,a=t=>null==t,e=(t,e,s)=>a(t)?s?.():e(t),s=Object,n=t=>s.getPrototypeOf(t),o=s.keys,r=s.freeze,c=t=>(t=>!a(t)&&e(n(t),(t=>t==s.prototype||a(n(t))),(()=>!0)))(t)&&0==(t=>o(t).length)(t),i=JSON.parse,y=t=>new Map(t),d=(t,a)=>t?.get(a),h=(t,e,s)=>{return a(s)?(n=t,o=e,n?.delete(o),t):t?.set(e,s);var n,o},u=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||h(t,a,e()),d(t,a)},l=y(),w=y(),p=t=>t.headers.get("ETag");exports.createRemotePersister=(n,o,y,v=5,f)=>{let g;return((t,s,n,o,i,y,[p,v]=[],f=[])=>{let g,A,S,C=0,L=0;u(l,f,(()=>0)),u(w,f,(()=>[]));const O=async t=>(2!=C&&(C=1,await T.schedule((async()=>{await t(),C=0}))),T),T={load:async(a,e)=>await O((async()=>{try{t.setContent(await s())}catch{t.setContent([a,e])}})),startAutoLoad:async(a={},e={})=>(T.stopAutoLoad(),await T.load(a,e),L=1,S=o((async(a,e)=>{if(e){const a=e();await O((async()=>t.setTransactionChanges(a)))}else await O((async()=>{try{t.setContent(a?.()??await s())}catch(t){y?.(t)}}))})),T),stopAutoLoad:()=>(L&&(i(S),S=void 0,L=0),T),save:async a=>(1!=C&&(C=2,await T.schedule((async()=>{try{await n(t.getContent,a)}catch(t){y?.(t)}C=0}))),T),startAutoSave:async()=>(await T.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||T.save((()=>[e,s]))})),T),stopAutoSave:()=>(e(g,t.delListener),g=void 0,T),schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(d(w,f),...t),await(async()=>{if(!d(l,f)){for(h(l,f,1);!a((t=d(w,f),A=t.shift()));)try{await A()}catch(t){y?.(t)}h(l,f,0)}var t})(),T),getStore:()=>t,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(T[p]=()=>v),r(T)})(n,(async()=>{const t=await fetch(o);return g=p(t),i(await t.text())}),(async t=>{return await fetch(y,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>a instanceof Map?s.fromEntries([...a]):a)))});var a}),(t=>setInterval((async()=>{const e=await fetch(o,{method:"HEAD"}),s=p(e);a(g)||a(s)||s==g||(g=s,t())}),1e3*v)),(a=>t(a)),f,["getUrls",[o,y]])};
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),p=(a,t)=>a.map(t),m=a=>0==E(a),v=(a,t)=>a.filter(t),T=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),f=Object,R=a=>f.getPrototypeOf(a),N=f.keys,O=f.freeze,S=(a=[])=>f.fromEntries(a),C=(...a)=>f.assign({},...a),D=(a,t)=>p(f.entries(a),(([a,e])=>t(e,a))),b=a=>f.values(a),g=a=>E(N(a)),I=a=>(a=>!r(a)&&l(R(a),(a=>a==f.prototype||r(R(a))),(()=>!0)))(a)&&0==g(a),_=a=>new Map(a),M=a=>[...a?.keys()??[]],F=(a,t)=>a?.get(t),$=(a,t)=>p([...a?.entries()??[]],(([a,e])=>t(e,a))),P=(a,t,e)=>r(e)?(h(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||P(a,t,e()),F(a,t)),W=(a,t,e,s=P)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),j=a=>new Set(Array.isArray(a)||r(a)?a:[a]),k=(a,t)=>a?.add(t),H="_",q="_id",x=a=>`"${a.replace(/"/g,'""')}"`,J="FROM pragma_table_",U="WHERE",V=(a,t,s)=>{const n=_();return[async()=>W(n,S(await u(p(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+z(t)+")",t),(async({name:t})=>[t,S(p(await a("SELECT name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>P(n,t,W(B(n,t,_),e,((a,t,e)=>{e!=F(a,t)&&P(a,t,e)}),((a,t)=>P(a,t))))),((a,t)=>P(n,t))),async(t,e)=>((a,t)=>!r(F(F(n,a),t)))(t,e)?S(v(p(await a("SELECT*FROM"+x(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!I(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=j();D(i??{},(a=>p(N(a??{}),(a=>k(w,a)))));const y=L(w);if(!l&&o&&m(y)&&A(n,t))return await a("DROP TABLE"+x(t)),void P(n,t);if(m(y)||A(n,t)){const e=F(n,t),i=j(M(e));await u([...p(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${x(t)}ADD${x(s)}`),P(e,s,""))})),...!l&&c?p(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${x(t)}DROP${x(n)}`),P(e,n))})):[]])}else await a(`CREATE TABLE${x(t)}(${x(s)} PRIMARY KEY ON CONFLICT REPLACE${d(p(y,(a=>e+x(a))))});`),P(n,t,_([[s,""],...p(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+x(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+x(t)+U+x(s)+"=?",[n]):m(y)||await Y(a,t,s,N(e),[n,...b(e)])})));else if(m(y))A(n,t)&&await a("DELETE FROM"+x(t)+"WHERE 1");else{const e=v(M(F(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{T(c,t,...p(e,(t=>a?.[t]))),T(o,t)})),await Y(a,t,s,e,c),await a("DELETE FROM"+x(t)+U+x(s)+"NOT IN("+z(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},Y=async(a,t,s,i,c)=>await a("INSERT INTO"+x(t)+"("+x(s)+d(p(i,(a=>e+x(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+x(s)+")DO UPDATE SET"+d(p(i,(a=>x(a)+"=excluded."+x(a))),e),c),z=a=>d(p(a,(()=>"?")),e),G=JSON.parse,K=_(),Q=_(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,p=0;B(K,w,(()=>0)),B(Q,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await v.schedule((async()=>{await a(),d=0}))),v),v={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(v.stopAutoLoad(),await v.load(e,n),p=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),v),stopAutoLoad:()=>(p&&(n(u),u=void 0,p=0),v),save:async t=>(1!=d&&(d=2,await v.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();I(e)&&I(s)||v.save((()=>[e,s]))})),v),stopAutoSave:()=>(l(y,a.delListener),y=void 0,v),schedule:async(...a)=>(T(F(Q,w),...a),await(async()=>{if(!F(K,w)){for(P(K,w,1);!r((a=F(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}P(K,w,0)}var a})(),v),getStore:()=>a,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(v[c]=()=>o),O(v)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=V(t,c,n);return X(a,(async()=>await y((async()=>(await r(),G((await l(i,q))[H]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,q,{[H]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?f.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,p,m,T]=V(t,y,n),A=async(a,t)=>await u($(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),L=async(a,t)=>l?await m(w,q,{[H]:a},!0,!0,t):null;return X(a,(async()=>await T((async()=>{await d();const a=await(async()=>S(v(await u($(i,(async([a,t],e)=>[a,await p(e,t)]))),(a=>!I(a[1])))))(),t=await(async()=>o?(await p(w,q))[H]:{})();return I(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await T((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=_();return D(a,((a,i)=>{const c=y(b(C(t,w(a)?{[e]:a}:a)),0,g(t));r(c[0])||s(i,c[0])||P(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[p,m,v,T]=(a=>{const e=(a=>C(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],j(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(b(C(ra,c)),0,g(ra)),r=o[2],l=j(r);return[0,s,[la(n,{[ia]:null,[na]:q},ia,(a=>k(l,a)&&a==r)),la(i,{[ca]:null,[na]:q,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>k(l,t)&&t==r)),o],l]})(e);return(p?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*m),n((t=>T.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,v,L(T),E)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>ua(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,o=a=>null==a,r=(a,t,e)=>o(a)?e?.():t(a),l=t=>a(t)==s,w=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",p=a=>`"${a.replace(/"/g,'""')}"`,m="SELECT",v=(a,t="")=>a.join(t),T=(a,t)=>a.map(t),A=a=>0==y(a),L=(a,t)=>a.filter(t),R=(a,...t)=>a.push(...t),h=(a,t)=>a?.has(t)??!1,O=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),N=Object,D=a=>N.getPrototypeOf(a),S=N.keys,C=N.freeze,b=(a=[])=>N.fromEntries(a),g=(...a)=>N.assign({},...a),I=(a,t)=>T(N.entries(a),(([a,e])=>t(e,a))),_=a=>N.values(a),M=a=>y(S(a)),F=a=>(a=>!o(a)&&r(D(a),(a=>a==N.prototype||o(D(a))),(()=>!0)))(a)&&0==M(a),$=a=>new Map(a),P=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>T([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>o(e)?(f(a,t),a):a?.set(t,e),j=(a,t,e)=>(h(a,t)||W(a,t,e()),B(a,t)),k=(a,t,e,s=W)=>(I(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!o(((a,t)=>r(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),q=a=>new Set(Array.isArray(a)||o(a)?a:[a]),x=(a,t)=>a?.add(t),Y=m+"*FROM",G="FROM pragma_table_",J="WHERE",U=(a,t,s)=>{const n=$();return[async()=>k(n,b(await E(T(await a("SELECT name "+G+"list WHERE schema='main'AND type='table'AND name IN("+z(t)+")ORDER BY name",t),(async({name:t})=>[t,b(T(await a(m+" name,type "+G+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,k(j(n,t,$),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!o(B(B(n,a),t)))(t,e)?b(L(T(await a(Y+p(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!F(t)))):{},async(t,s,i,c,r,l=!1)=>{const w=q();I(i??{},(a=>T(S(a??{}),(a=>x(w,a)))));const y=O(w);if(!l&&r&&A(y)&&h(n,t))return await a("DROP TABLE"+p(t)),void W(n,t);if(A(y)||h(n,t)){const e=B(n,t),i=q(P(e));await E([...T(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${p(t)}ADD${p(s)}`),W(e,s,""))})),...!l&&c?T(O(i),(async n=>{n!=s&&(await a(`ALTER TABLE${p(t)}DROP${p(n)}`),W(e,n))})):[]])}else await a(`CREATE TABLE${p(t)}(${p(s)} PRIMARY KEY ON CONFLICT REPLACE${v(T(y,(a=>e+p(a))))});`),W(n,t,$([[s,""],...T(y,(a=>[a,""]))]));if(l)o(i)?await a("DELETE FROM"+p(t)+"WHERE 1"):await E(I(i,(async(e,n)=>{o(e)?await a("DELETE FROM"+p(t)+J+p(s)+"=?",[n]):A(y)||await V(a,t,s,S(e),[n,..._(e)])})));else if(A(y))h(n,t)&&await a("DELETE FROM"+p(t)+"WHERE 1");else{const e=L(P(B(n,t)),(a=>a!=s)),c=[],o=[];I(i??{},((a,t)=>{R(c,t,...T(e,(t=>a?.[t]))),R(o,t)})),await V(a,t,s,e,c),await a("DELETE FROM"+p(t)+J+p(s)+"NOT IN("+z(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},V=async(a,t,s,i,c)=>await a("INSERT INTO"+p(t)+"("+p(s)+v(T(i,(a=>e+p(a))))+")VALUES"+w(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+p(s)+")DO UPDATE SET"+v(T(i,(a=>p(a)+"=excluded."+p(a))),e),c),z=a=>v(T(a,(()=>"?")),e),K=JSON.parse,Q=$(),X=$(),Z=(a,t,e,s,n,i,[c,l]=[],w=[])=>{let y,E,u,d=0,p=0;j(Q,w,(()=>0)),j(X,w,(()=>[]));const m=async a=>(2!=d&&(d=1,await v.schedule((async()=>{await a(),d=0}))),v),v={load:async(e,s)=>await m((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(v.stopAutoLoad(),await v.load(e,n),p=1,u=s((async(e,s)=>{if(s){const t=s();await m((async()=>a.setTransactionChanges(t)))}else await m((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),v),stopAutoLoad:()=>(p&&(n(u),u=void 0,p=0),v),save:async t=>(1!=d&&(d=2,await v.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),v),startAutoSave:async()=>(await v.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();F(e)&&F(s)||v.save((()=>[e,s]))})),v),stopAutoSave:()=>(r(y,a.delListener),y=void 0,v),schedule:async(...a)=>(R(B(X,w),...a),await(async()=>{if(!B(Q,w)){for(W(Q,w,1);!o((a=B(X,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Q,w,0)}var a})(),v),getStore:()=>a,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(v[c]=()=>l),C(v)},aa="store",ta=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=U(t,c,n);return Z(a,(async()=>await y((async()=>(await r(),K((await l(i,d))[u]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,d,{[u]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ea=(a,t,e,s,n,[i,c,[r,l,w]],y,p)=>{const[m,v,T,A]=U(t,y,n),R=async(a,t)=>await E(H(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),h=async(a,t)=>l?await T(w,d,{[u]:a},!0,!0,t):null;return Z(a,(async()=>await A((async()=>{await m();const a=await(async()=>b(L(await E(H(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!F(a[1])))))(),t=await(async()=>r?(await v(w,d))[u]:{})();return F(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await A((async()=>{if(await m(),o(t)){const[t,e]=a();await R(t),await h(e)}else{const[a,e]=t();await R(a,!0),await h(e,!0)}}))),e,s,n,["getDb",p],p)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",oa="tableName",ra={mode:sa,[na]:1},la={load:0,save:0,[oa]:t+"_values"},wa=(a,t,e,s)=>{const n=$();return I(a,((a,i)=>{const c=w(_(g(t,l(a)?{[e]:a}:a)),0,M(t));o(c[0])||s(i,c[0])||W(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,e,s,n,i,o,r,y)=>{let E,u,p;const[v,T,A,L]=(a=>{const e=(a=>g(ra,l(a)?{storeTableName:a}:a??{}))(a),s=e[na];if(e.mode==sa){const{storeTableName:a=t}=e;return[1,s,[a],q(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=w(_(g(la,c)),0,M(la)),r=o[2],y=q(r);return[0,s,[wa(n,{[ca]:null,[ia]:d},ca,(a=>x(y,a)&&a==r)),wa(i,{[oa]:null,[ia]:d,deleteEmptyColumns:0,deleteEmptyTable:0},oa,((a,t)=>x(y,t)&&t==r)),o],y]})(e);return(v?ta:ea)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua],n=(await s(m+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(p??=n)||(a(),E=t,u=e)}catch{}},e=T,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=u=null,i(t)}),r,A,O(L),y)};exports.createSqliteWasmPersister=(a,t,e,s,n,i)=>da(a,s,(async(a,t=[])=>e.exec(a,{bind:t,rowMode:"object",returnValue:"resultRows"}).map((a=>({...a})))),(a=>t.capi.sqlite3_update_hook(e,((t,e,s,n)=>a(n)),0)),(()=>t.capi.sqlite3_update_hook(e,(()=>0),0)),n,i,e);
@@ -1 +1 @@
1
- "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=setInterval,o=clearInterval,r=a=>null==a,l=(a,t,e)=>r(a)?e?.():t(a),w=t=>a(t)==s,y=(a,t,e)=>a.slice(t,e),E=a=>a.length,u=async a=>i.all(a),d=(a,t="")=>a.join(t),v=(a,t)=>a.map(t),T=a=>0==E(a),p=(a,t)=>a.filter(t),m=(a,...t)=>a.push(...t),A=(a,t)=>a?.has(t)??!1,L=a=>[...a?.values()??[]],f=(a,t)=>a?.delete(t),h=Object,N=a=>h.getPrototypeOf(a),O=h.keys,R=h.freeze,S=(a=[])=>h.fromEntries(a),C=(...a)=>h.assign({},...a),D=(a,t)=>v(h.entries(a),(([a,e])=>t(e,a))),g=a=>h.values(a),I=a=>E(O(a)),b=a=>(a=>!r(a)&&l(N(a),(a=>a==h.prototype||r(N(a))),(()=>!0)))(a)&&0==I(a),F=a=>new Map(a),M=a=>[...a?.keys()??[]],$=(a,t)=>a?.get(t),P=(a,t)=>v([...a?.entries()??[]],(([a,e])=>t(e,a))),_=(a,t,e)=>r(e)?(f(a,t),a):a?.set(t,e),B=(a,t,e)=>(A(a,t)||_(a,t,e()),$(a,t)),H=(a,t,e,s=_)=>(D(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!r(((a,t)=>l(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),W=a=>new Set(Array.isArray(a)||r(a)?a:[a]),j=(a,t)=>a?.add(t),k="_",x="_id",J=a=>`"${a.replace(/"/g,'""')}"`,U="FROM pragma_table_",Y="WHERE",q=(a,t,s)=>{const n=F();return[async()=>H(n,S(await u(v(await a("SELECT name "+U+"list WHERE schema='main'AND type='table'AND name IN("+G(t)+")",t),(async({name:t})=>[t,S(v(await a("SELECT name,type "+U+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>_(n,t,H(B(n,t,F),e,((a,t,e)=>{e!=$(a,t)&&_(a,t,e)}),((a,t)=>_(a,t))))),((a,t)=>_(n,t))),async(t,e)=>((a,t)=>!r($($(n,a),t)))(t,e)?S(p(v(await a("SELECT*FROM"+J(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!r(a)&&!b(t)))):{},async(t,s,i,c,o,l=!1)=>{const w=W();D(i??{},(a=>v(O(a??{}),(a=>j(w,a)))));const y=L(w);if(!l&&o&&T(y)&&A(n,t))return await a("DROP TABLE"+J(t)),void _(n,t);if(T(y)||A(n,t)){const e=$(n,t),i=W(M(e));await u([...v(y,(async s=>{f(i,s)||(await a(`ALTER TABLE${J(t)}ADD${J(s)}`),_(e,s,""))})),...!l&&c?v(L(i),(async n=>{n!=s&&(await a(`ALTER TABLE${J(t)}DROP${J(n)}`),_(e,n))})):[]])}else await a(`CREATE TABLE${J(t)}(${J(s)} PRIMARY KEY ON CONFLICT REPLACE${d(v(y,(a=>e+J(a))))});`),_(n,t,F([[s,""],...v(y,(a=>[a,""]))]));if(l)r(i)?await a("DELETE FROM"+J(t)+"WHERE 1"):await u(D(i,(async(e,n)=>{r(e)?await a("DELETE FROM"+J(t)+Y+J(s)+"=?",[n]):T(y)||await z(a,t,s,O(e),[n,...g(e)])})));else if(T(y))A(n,t)&&await a("DELETE FROM"+J(t)+"WHERE 1");else{const e=p(M($(n,t)),(a=>a!=s)),c=[],o=[];D(i??{},((a,t)=>{m(c,t,...v(e,(t=>a?.[t]))),m(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+J(t)+Y+J(s)+"NOT IN("+G(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+J(t)+"("+J(s)+d(v(i,(a=>e+J(a))))+")VALUES"+y(n(`,(?${n(",?",E(i))})`,E(c)/(E(i)+1)),1)+"ON CONFLICT("+J(s)+")DO UPDATE SET"+d(v(i,(a=>J(a)+"=excluded."+J(a))),e),c),G=a=>d(v(a,(()=>"?")),e),K=JSON.parse,V=F(),Q=F(),X=(a,t,e,s,n,i,[c,o]=[],w=[])=>{let y,E,u,d=0,v=0;B(V,w,(()=>0)),B(Q,w,(()=>[]));const T=async a=>(2!=d&&(d=1,await p.schedule((async()=>{await a(),d=0}))),p),p={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(p.stopAutoLoad(),await p.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),p),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),p),save:async t=>(1!=d&&(d=2,await p.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),p),startAutoSave:async()=>(await p.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();b(e)&&b(s)||p.save((()=>[e,s]))})),p),stopAutoSave:()=>(l(y,a.delListener),y=void 0,p),schedule:async(...a)=>(m($(Q,w),...a),await(async()=>{if(!$(V,w)){for(_(V,w,1);!r((a=$(Q,w),E=a.shift()));)try{await E()}catch(a){i?.(a)}_(V,w,0)}var a})(),p),getStore:()=>a,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(p[c]=()=>o),R(p)},Z="store",aa=(a,t,e,s,n,[i],c,o)=>{const[r,l,w,y]=q(t,c,n);return X(a,(async()=>await y((async()=>(await r(),K((await l(i,x))[k]?.[Z]??"null"))))),(async a=>await y((async()=>{var t;await r(),await w(i,x,{[k]:{[Z]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?h.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ta=(a,t,e,s,n,[i,c,[o,l,w]],y,E)=>{const[d,v,T,m]=q(t,y,n),A=async(a,t)=>await u(P(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await T(e,s,o,n,i,t)}))),L=async(a,t)=>l?await T(w,x,{[k]:a},!0,!0,t):null;return X(a,(async()=>await m((async()=>{await d();const a=await(async()=>S(p(await u(P(i,(async([a,t],e)=>[a,await v(e,t)]))),(a=>!b(a[1])))))(),t=await(async()=>o?(await v(w,x))[k]:{})();return b(a)&&r(t)?void 0:[a,t]}))),(async(a,t)=>await m((async()=>{if(await d(),r(t)){const[t,e]=a();await A(t),await L(e)}else{const[a,e]=t();await A(a,!0),await L(e,!0)}}))),e,s,n,["getDb",E],E)},ea="json",sa="autoLoadIntervalSeconds",na="rowIdColumnName",ia="tableId",ca="tableName",oa={mode:ea,[sa]:1},ra={load:0,save:0,[ca]:t+"_values"},la=(a,t,e,s)=>{const n=F();return D(a,((a,i)=>{const c=y(g(C(t,w(a)?{[e]:a}:a)),0,I(t));r(c[0])||s(i,c[0])||_(n,i,c)})),n},wa="pragma ",ya="data_version",Ea="schema_version",ua=(a,e,s,n,i,r,l,E)=>{let u,d;const[v,T,p,m]=(a=>{const e=(a=>C(oa,w(a)?{storeTableName:a}:a??{}))(a),s=e[sa];if(e.mode==ea){const{storeTableName:a=t}=e;return[1,s,[a],W(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=y(g(C(ra,c)),0,I(ra)),r=o[2],l=W(r);return[0,s,[la(n,{[ia]:null,[na]:x},ia,(a=>j(l,a)&&a==r)),la(i,{[ca]:null,[na]:x,deleteEmptyColumns:0,deleteEmptyTable:0},ca,((a,t)=>j(l,t)&&t==r)),o],l]})(e);return(v?aa:ta)(a,r?async(a,t)=>(r(a,t),await s(a,t)):s,(a=>[c((async()=>{try{const t=(await s(wa+ya))[0][ya],e=(await s(wa+Ea))[0][Ea];t==(u??=t)&&e==(d??=e)||(a(),u=t,d=e)}catch{}}),1e3*T),n((t=>m.has(t)?a():0))]),(([a,t])=>{o(a),u=d=null,i(t)}),l,p,L(m),E)},da="change";exports.createSqlite3Persister=(a,t,e,s,n)=>ua(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t))),new i(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(da,e),e}),(a=>t.off(da,a)),s,n,t);
1
+ "use strict";const a=a=>typeof a,t="tinybase",e=",",s=a(""),n=(a,t)=>a.repeat(t),i=Promise,c=clearInterval,o=a=>null==a,r=(a,t,e)=>o(a)?e?.():t(a),w=t=>a(t)==s,l=(a,t,e)=>a.slice(t,e),y=a=>a.length,E=async a=>i.all(a),u="_",d="_id",v=a=>`"${a.replace(/"/g,'""')}"`,T="SELECT",A=(a,t="")=>a.join(t),m=(a,t)=>a.map(t),p=a=>0==y(a),L=(a,t)=>a.filter(t),f=(a,...t)=>a.push(...t),O=(a,t)=>a?.has(t)??!1,R=a=>[...a?.values()??[]],h=(a,t)=>a?.delete(t),N=Object,D=a=>N.getPrototypeOf(a),S=N.keys,C=N.freeze,g=(a=[])=>N.fromEntries(a),I=(...a)=>N.assign({},...a),b=(a,t)=>m(N.entries(a),(([a,e])=>t(e,a))),F=a=>N.values(a),M=a=>y(S(a)),$=a=>(a=>!o(a)&&r(D(a),(a=>a==N.prototype||o(D(a))),(()=>!0)))(a)&&0==M(a),P=a=>new Map(a),_=a=>[...a?.keys()??[]],B=(a,t)=>a?.get(t),H=(a,t)=>m([...a?.entries()??[]],(([a,e])=>t(e,a))),W=(a,t,e)=>o(e)?(h(a,t),a):a?.set(t,e),j=(a,t,e)=>(O(a,t)||W(a,t,e()),B(a,t)),Y=(a,t,e,s=W)=>(b(t,((t,s)=>e(a,s,t))),((a,t)=>{((a,t)=>{a?.forEach(t)})(a,((a,e)=>t(e)))})(a,(e=>((a,t)=>!o(((a,t)=>r(a,(a=>a[t])))(a,t)))(t,e)?0:s(a,e))),a),k=a=>new Set(Array.isArray(a)||o(a)?a:[a]),x=(a,t)=>a?.add(t),G=T+"*FROM",J="FROM pragma_table_",U="WHERE",q=(a,t,s)=>{const n=P();return[async()=>Y(n,g(await E(m(await a("SELECT name "+J+"list WHERE schema='main'AND type='table'AND name IN("+K(t)+")ORDER BY name",t),(async({name:t})=>[t,g(m(await a(T+" name,type "+J+"info(?)",[t]),(({name:a,type:t})=>[a,t])))])))),((a,t,e)=>W(n,t,Y(j(n,t,P),e,((a,t,e)=>{e!=B(a,t)&&W(a,t,e)}),((a,t)=>W(a,t))))),((a,t)=>W(n,t))),async(t,e)=>((a,t)=>!o(B(B(n,a),t)))(t,e)?g(L(m(await a(G+v(t)),(a=>{return[a[e],(t={...a},s=e,delete t[s],t)];var t,s})),(([a,t])=>!o(a)&&!$(t)))):{},async(t,s,i,c,r,w=!1)=>{const l=k();b(i??{},(a=>m(S(a??{}),(a=>x(l,a)))));const y=R(l);if(!w&&r&&p(y)&&O(n,t))return await a("DROP TABLE"+v(t)),void W(n,t);if(p(y)||O(n,t)){const e=B(n,t),i=k(_(e));await E([...m(y,(async s=>{h(i,s)||(await a(`ALTER TABLE${v(t)}ADD${v(s)}`),W(e,s,""))})),...!w&&c?m(R(i),(async n=>{n!=s&&(await a(`ALTER TABLE${v(t)}DROP${v(n)}`),W(e,n))})):[]])}else await a(`CREATE TABLE${v(t)}(${v(s)} PRIMARY KEY ON CONFLICT REPLACE${A(m(y,(a=>e+v(a))))});`),W(n,t,P([[s,""],...m(y,(a=>[a,""]))]));if(w)o(i)?await a("DELETE FROM"+v(t)+"WHERE 1"):await E(b(i,(async(e,n)=>{o(e)?await a("DELETE FROM"+v(t)+U+v(s)+"=?",[n]):p(y)||await z(a,t,s,S(e),[n,...F(e)])})));else if(p(y))O(n,t)&&await a("DELETE FROM"+v(t)+"WHERE 1");else{const e=L(_(B(n,t)),(a=>a!=s)),c=[],o=[];b(i??{},((a,t)=>{f(c,t,...m(e,(t=>a?.[t]))),f(o,t)})),await z(a,t,s,e,c),await a("DELETE FROM"+v(t)+U+v(s)+"NOT IN("+K(o)+")",o)}},async t=>{let e;await a("BEGIN");try{e=await t()}catch(a){s?.(a)}return await a("END"),e}]},z=async(a,t,s,i,c)=>await a("INSERT INTO"+v(t)+"("+v(s)+A(m(i,(a=>e+v(a))))+")VALUES"+l(n(`,(?${n(",?",y(i))})`,y(c)/(y(i)+1)),1)+"ON CONFLICT("+v(s)+")DO UPDATE SET"+A(m(i,(a=>v(a)+"=excluded."+v(a))),e),c),K=a=>A(m(a,(()=>"?")),e),V=JSON.parse,Q=P(),X=P(),Z=(a,t,e,s,n,i,[c,w]=[],l=[])=>{let y,E,u,d=0,v=0;j(Q,l,(()=>0)),j(X,l,(()=>[]));const T=async a=>(2!=d&&(d=1,await A.schedule((async()=>{await a(),d=0}))),A),A={load:async(e,s)=>await T((async()=>{try{a.setContent(await t())}catch{a.setContent([e,s])}})),startAutoLoad:async(e={},n={})=>(A.stopAutoLoad(),await A.load(e,n),v=1,u=s((async(e,s)=>{if(s){const t=s();await T((async()=>a.setTransactionChanges(t)))}else await T((async()=>{try{a.setContent(e?.()??await t())}catch(a){i?.(a)}}))})),A),stopAutoLoad:()=>(v&&(n(u),u=void 0,v=0),A),save:async t=>(1!=d&&(d=2,await A.schedule((async()=>{try{await e(a.getContent,t)}catch(a){i?.(a)}d=0}))),A),startAutoSave:async()=>(await A.stopAutoSave().save(),y=a.addDidFinishTransactionListener(((a,t)=>{const[e,s]=t();$(e)&&$(s)||A.save((()=>[e,s]))})),A),stopAutoSave:()=>(r(y,a.delListener),y=void 0,A),schedule:async(...a)=>(f(B(X,l),...a),await(async()=>{if(!B(Q,l)){for(W(Q,l,1);!o((a=B(X,l),E=a.shift()));)try{await E()}catch(a){i?.(a)}W(Q,l,0)}var a})(),A),getStore:()=>a,destroy:()=>A.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return c&&(A[c]=()=>w),C(A)},aa="store",ta=(a,t,e,s,n,[i],c,o)=>{const[r,w,l,y]=q(t,c,n);return Z(a,(async()=>await y((async()=>(await r(),V((await w(i,d))[u]?.[aa]??"null"))))),(async a=>await y((async()=>{var t;await r(),await l(i,d,{[u]:{[aa]:(t=a()??null,JSON.stringify(t,((a,t)=>t instanceof Map?N.fromEntries([...t]):t)))}},!0,!0)}))),e,s,n,["getDb",o],o)},ea=(a,t,e,s,n,[i,c,[r,w,l]],y,v)=>{const[T,A,m,p]=q(t,y,n),f=async(a,t)=>await E(H(c,(async([e,s,n,i],c)=>{const o=a[c];t&&void 0===o||await m(e,s,o,n,i,t)}))),O=async(a,t)=>w?await m(l,d,{[u]:a},!0,!0,t):null;return Z(a,(async()=>await p((async()=>{await T();const a=await(async()=>g(L(await E(H(i,(async([a,t],e)=>[a,await A(e,t)]))),(a=>!$(a[1])))))(),t=await(async()=>r?(await A(l,d))[u]:{})();return $(a)&&o(t)?void 0:[a,t]}))),(async(a,t)=>await p((async()=>{if(await T(),o(t)){const[t,e]=a();await f(t),await O(e)}else{const[a,e]=t();await f(a,!0),await O(e,!0)}}))),e,s,n,["getDb",v],v)},sa="json",na="autoLoadIntervalSeconds",ia="rowIdColumnName",ca="tableId",oa="tableName",ra={mode:sa,[na]:1},wa={load:0,save:0,[oa]:t+"_values"},la=(a,t,e,s)=>{const n=P();return b(a,((a,i)=>{const c=l(F(I(t,w(a)?{[e]:a}:a)),0,M(t));o(c[0])||s(i,c[0])||W(n,i,c)})),n},ya="pragma ",Ea="data_version",ua="schema_version",da=(a,e,s,n,i,o,r,y)=>{let E,u,v;const[A,m,p,L]=(a=>{const e=(a=>I(ra,w(a)?{storeTableName:a}:a??{}))(a),s=e[na];if(e.mode==sa){const{storeTableName:a=t}=e;return[1,s,[a],k(a)]}const{tables:{load:n={},save:i={}}={},values:c={}}=e,o=l(F(I(wa,c)),0,M(wa)),r=o[2],y=k(r);return[0,s,[la(n,{[ca]:null,[ia]:d},ca,(a=>x(y,a)&&a==r)),la(i,{[oa]:null,[ia]:d,deleteEmptyColumns:0,deleteEmptyTable:0},oa,((a,t)=>x(y,t)&&t==r)),o],y]})(e);return(A?ta:ea)(a,o?async(a,t)=>(o(a,t),await s(a,t)):s,(a=>{return[(t=async()=>{try{const t=(await s(ya+Ea))[0][Ea],e=(await s(ya+ua))[0][ua],n=(await s(T+" TOTAL_CHANGES() c"))[0].c;t==(E??=t)&&e==(u??=e)&&n==(v??=n)||(a(),E=t,u=e)}catch{}},e=m,t(),setInterval(t,1e3*e)),n((t=>L.has(t)?a():0))];var t,e}),(([a,t])=>{c(a),E=u=null,i(t)}),r,p,R(L),y)},va="change";exports.createSqlite3Persister=(a,t,e,s,n)=>da(a,e,(async(a,e=[])=>{return await(s=(s,n)=>t.all(a,e,((a,t)=>a?n(a):s(t))),new i(s));var s}),(a=>{const e=(t,e,s)=>a(s);return t.on(va,e),e}),(a=>t.off(va,a)),s,n,t);
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),o=s(0),r=s(s),i="type",d="default",u="Has",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,w="Cell",f=w+c,y="Value",C=y+"s",v=y+c,k="currentTarget",T="value",x=e=>l+e,S=Math.floor,V=isFinite,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==r,M=e=>Array.isArray(e),E=(e,t,s)=>e.slice(t,s),z=e=>e.length,{PureComponent:$,Fragment:O,createElement:A,useCallback:F,useLayoutEffect:J,useRef:P,useState:H}=e,B=(e,...t)=>R(e)?{}:e(...t),D=(e,t)=>e.forEach(t),Q=(e,t)=>e.map(t),j=e=>0==z(e),W=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,U=e=>K.getPrototypeOf(e),X=K.keys,Y=K.isFrozen,Z=K.freeze,_=e=>!R(e)&&q(U(e),(e=>e==K.prototype||R(U(e))),(()=>!0)),ee=(e=[])=>K.fromEntries(e),te=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),le=(e,t)=>Q(K.entries(e),(([e,s])=>t(s,e))),ae=e=>_(e)&&0==(e=>z(X(e)))(e),ne=e=>JSON.stringify(e,((e,t)=>t instanceof Map?K.fromEntries([...t]):t)),oe=JSON.parse,re="tinybaseStoreInspector",ie="TinyBase Store Inspector",de=["left","top","bottom","right","full"],ue="state",ce="sort",he="open",me="position",be=he,ge="editable",pe=(...e)=>ne(e),Ie=(e,t)=>Q(e.sort(),t),we=(e,s)=>[!!t.useCell(ue,e,ge,s),F((t=>{s.setCell(ue,e,ge,(e=>!e)),t.preventDefault()}),[s,e])],fe="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ye='content:url("',Ce=ye+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ve='</svg>")',ke=ye+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Te=Q([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Ce+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ve)),xe=Ce+"<path d='M20 20l60 60M20 80l60-60' />"+ve,Se=Ce+`<path d='${fe}' />`+ve,Ve=Ce+`<path d='${fe}M20 20l60 60' />`+ve,Re="*::-webkit-scrollbar",qe=((e,t="")=>e.join(t))(le({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Re]:"width:0.5rem;height:0.5rem;",[Re+"-track"]:"background:#111",[Re+"-thumb"]:"background:#999;border:1px solid #111",[Re+"-thumb:hover"]:"background:#fff",[Re+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ke,...ee(Q(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...ee(Q(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ke,"header>img:nth-of-type(6)":xe,...ee(Q(Te,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Se,"details[open]>summary img.done":Ve,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${re} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${re} ${t}{${e}}`:""))),Ne=({s:e})=>{const s=t.useValue(me,e)??1,l=t.useSetValueCallback(be,(()=>!0),[],e);return t.useValue(be,e)?null:A("img",{onClick:l,title:ie,"data-position":s})},Le=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!t.useCell(ue,e,he,o),i=t.useSetCellCallback(ue,e,he,(e=>e[k].open),[],o);return A("details",{open:r,onToggle:i},A("summary",null,s,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},Me=e=>{const t=s(e);return N(t)||t==o&&V(e)?t:void 0},Ee=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),ze=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),$e=(e,t,s,l)=>e==a?t:e==o?s:l,{useCallback:Oe,useMemo:Ae,useState:Fe}=e,Je="editable",Pe=(e,s)=>Q(t.useTableCellIds(e,s),(t=>e+"."+t)),He=(e,t,s)=>{const l=Oe(e,t);return s?l:void 0},Be=(...e)=>Ae((()=>e),e),De=(e,t)=>Ae((()=>({store:e,tableId:t})),[e,t]),Qe=(e,t)=>Ae((()=>({queries:e,queryId:t})),[e,t]),je=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Fe([e,t,l]),h=Oe((e=>{c(e),r?.(e)}),[r]),m=He((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Oe((e=>h([i,d,e])),[h,i,d]),g=!0===o?at:o;return[[i,d,u],m,Ae((()=>!1===o?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},We=(e,t,l)=>Ae((()=>{const n=t??e;return ee(le(M(n)?ee(Q(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),Ge=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>A("table",{className:e},i?A("caption",null,i):null,!1===t?null:A("thead",null,A("tr",null,!1===s?null:A(Ke,{sort:o??[],label:"Id",onClick:r}),le(l,(({label:e},t)=>A(Ke,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),A("tbody",null,Q(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),le(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...B(s,e,l),...a,rowId:e,cellId:l}))))))))),Ke=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>A("th",{onClick:He((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",a),Ue=({localRowId:s,params:[l,a,n,o,r,i,d]})=>{const u=t.useRemoteRowId(r,s,i);return A("tr",null,!1===l?null:A(e.Fragment,null,A("th",null,s),A("th",null,u)),le(a,(({component:e,getComponentProps:t},l)=>{const[a,r]=l.split(".",2),i=a===n?s:a===o?u:null;return R(i)?null:A("td",{key:l},A(e,{...B(t,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Xe=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:r=!0})=>{const[i,d]=Fe(),[u,c]=Fe(),[h,m]=Fe(),[b,g]=Fe(),[p,I]=Fe();u!==e&&(d(Me(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=Oe(((e,s)=>{s(e),c(e),t(e)}),[t]),f=Oe((()=>{if(!l?.()){const e=$e(i,o,n,a),s=$e(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},r?A("button",{className:i,onClick:f},i):null,$e(i,A("input",{key:i,value:h,onChange:Oe((e=>w(e[k][T]+"",m)),[w])}),A("input",{key:i,type:"number",value:b,onChange:Oe((e=>w(Number(e[k][T]||0),g)),[w])}),A("input",{key:i,type:"checkbox",checked:p,onChange:Oe((e=>w(!!e[k].checked,I)),[w])})))},Ye=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=je(s,l,i,a,n,t.useRowCount(e,o),d,u);return A(Ge,{...h,params:Be(We(t.useTableCellIds(e,o),c,r?st:t.CellView),De(o,e),t.useSortedRowIds(e,...m,n,o),m,b,g)})},Ze=({store:e,editable:s=!1,valueComponent:l=(s?lt:t.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>A("table",{className:n},!1===o?null:A("thead",null,A("tr",null,!1===r?null:A("th",null,"Id"),A("th",null,y))),A("tbody",null,Q(t.useValueIds(e),(t=>A("tr",{key:t},!1===r?null:A("th",null,t),A("td",null,A(l,{...B(a,t),valueId:t,store:e}))))))),_e=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return A(Ge,{...o,params:Be(We(t.useTableCellIds(d,i),n,a?st:t.CellView),De(i,d),t.useSliceRowIds(e,s,r))})},et=({relationshipId:s,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(l),s),m=We([...Pe(c,u),...Pe(h,u)],n,a?st:t.CellView),b=Be(i,m,c,h,s,d,u);return A("table",{className:o},!1===r?null:A("thead",null,A("tr",null,!1===i?null:A(e.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),le(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,Q(t.useRowIds(c,u),(e=>A(Ue,{key:e,localRowId:e,params:b})))))},tt=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=je(s,l,r,a,n,t.useResultRowCount(e,o),i,u);return A(Ge,{...c,params:Be(We(t.useResultTableCellIds(e,o),d,t.ResultCellView),Qe(o,e),t.useResultSortedRowIds(e,...h,n,o),h,m,b)})},st=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:o})=>A(Xe,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Je+w,showType:o,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),lt=({valueId:e,store:s,className:l,showType:a})=>A(Xe,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Je+y,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),at=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const r=He((()=>t(l-a)),[t,l,a],l>0),i=He((()=>t(l+a)),[t,l,a],l+a<s);return A(e.Fragment,null,s>a&&A(e.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick:r},"←"),A("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},nt=({indexes:e,indexesId:s,indexId:l,s:a})=>A(Le,{uniqueId:pe("i",s,l),summary:"Index: "+l,s:a},Q(t.useSliceIds(l,e),(t=>A(ot,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),ot=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=pe("i",t,s,l),[o,r]=we(n,a);return A(Le,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},A(_e,{sliceId:l,indexId:s,indexes:e,editable:o}))},rt=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:A(Le,{uniqueId:pe("i",e),summary:"Indexes: "+(e??d),s:s},j(a)?"No indexes defined":Ie(a,(t=>A(nt,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},it=({metrics:e,metricId:s})=>A("tr",null,A("th",null,s),A("td",null,e?.getTableId(s)),A("td",null,t.useMetric(s,e))),dt=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:A(Le,{uniqueId:pe("m",e),summary:"Metrics: "+(e??d),s:s},j(a)?"No metrics defined":A("table",null,A("thead",null,A("th",null,"Metric Id"),A("th",null,"Table Id"),A("th",null,"Metric")),A("tbody",null,Q(a,(e=>A(it,{metrics:l,metricId:e,key:e}))))))},ut=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=pe("q",s,l),[o,r,i]=oe(t.useCell(ue,n,ce,a)??"[]"),d=t.useSetCellCallback(ue,n,ce,ne,[],a);return A(Le,{uniqueId:n,summary:"Query: "+l,s:a},A(tt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ct=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:A(Le,{uniqueId:pe("q",e),summary:"Queries: "+(e??d),s:s},j(a)?"No queries defined":Ie(a,(t=>A(ut,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},ht=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=pe("r",t,s),[n,o]=we(a,l);return A(Le,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},A(et,{relationshipId:s,relationships:e,editable:n}))},mt=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:A(Le,{uniqueId:pe("r",e),summary:"Relationships: "+(e??d),s:s},j(a)?"No relationships defined":Ie(a,(t=>A(ht,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},bt=({tableId:e,store:s,storeId:l,s:a})=>{const n=pe("t",l,e),[o,r,i]=oe(t.useCell(ue,n,ce,a)??"[]"),d=t.useSetCellCallback(ue,n,ce,ne,[],a),[u,c]=we(n,a);return A(Le,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},A(Ye,{tableId:e,store:s,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},gt=({store:e,storeId:s,s:l})=>{const a=pe("v",s),[n,o]=we(a,l);return j(t.useValueIds(e))?null:A(Le,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},A(Ze,{store:e,editable:n}))},pt=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:A(Le,{uniqueId:pe("s",e),summary:"Store: "+(e??d),s:s},A(gt,{storeId:e,store:l,s:s}),Ie(a,(t=>A(bt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},It=({s:e})=>{const s=P(null),l=P(0),[a,n]=H(!1),{scrollLeft:o,scrollTop:r}=t.useValues(e);J((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=S(o)+e.clientWidth&&e.scrollHeight>=S(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=F((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return R(d)&&j(u)&&R(c)&&j(h)&&R(m)&&j(b)&&R(g)&&j(p)&&R(I)&&j(w)?A("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):A("article",{ref:s,onScroll:i},A(pt,{s:e}),Q(u,(t=>A(pt,{storeId:t,s:e,key:t}))),A(dt,{s:e}),Q(h,(t=>A(dt,{metricsId:t,s:e,key:t}))),A(rt,{s:e}),Q(b,(t=>A(rt,{indexesId:t,s:e,key:t}))),A(mt,{s:e}),Q(p,(t=>A(mt,{relationshipsId:t,s:e,key:t}))),A(ct,{s:e}),Q(w,(t=>A(ct,{queriesId:t,s:e,key:t}))))};class wt extends ${constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?A("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const ft=({s:e})=>{const s=t.useValue(me,e)??1,l=t.useSetValueCallback(be,(()=>!1),[],e),a=t.useSetValueCallback(me,(e=>Number(e[k].dataset.id)),[],e);return A("header",null,A("img",{title:ie}),A("span",null,ie),Q(de,((e,t)=>t==s?null:A("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),A("img",{onClick:l,title:"Close"}))},yt=({s:e})=>{const s=t.useValue(me,e)??1;return t.useValue(be,e)?A("main",{"data-position":s},A(ft,{s:e}),A(wt,null,A(It,{s:e}))):null},Ct=e=>t=>{return s=(t,s)=>t+e(s),Rt(t).reduce(s,0);var s},vt=e=>e?.size??0,kt=Ct(vt),Tt=Ct(kt),xt=Ct(Tt),St=(e,t)=>e?.has(t)??!1,Vt=e=>R(e)||0==vt(e),Rt=e=>[...e?.values()??[]],qt=e=>e.clear(),Nt=(e,t)=>e?.forEach(t),Lt=(e,t)=>e?.delete(t),Mt=e=>new Map(e),Et=e=>[...e?.keys()??[]],zt=(e,t)=>e?.get(t),$t=(e,t)=>Nt(e,((e,s)=>t(s,e))),Ot=(e,t,s)=>R(s)?(Lt(e,t),e):e?.set(t,s),At=(e,t,s)=>(St(e,t)||Ot(e,t,s()),zt(e,t)),Ft=(e,t,s,l=Ot)=>(le(t,((t,l)=>s(e,l,t))),$t(e,(s=>te(t,s)?0:l(e,s))),e),Jt=(e,t,s)=>{const l={};return Nt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Pt=(e,t,s)=>Jt(e,(e=>Jt(e,t,s)),ae),Ht=(e,t,s)=>Jt(e,(e=>Pt(e,t,s)),ae),Bt=(e,t)=>{const s=Mt();return Nt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Dt=e=>Bt(e,Bt),Qt=e=>Bt(e,Dt),jt=(e,t,s,l,a=0)=>q((s?At:zt)(e,t[a],a>z(t)-2?s:Mt),(n=>{if(a>z(t)-2)return l?.(n)&&Ot(e,t[a]),n;const o=jt(n,t,s,l,a+1);return Vt(n)&&Ot(e,t[a]),o})),Wt=Mt(),Gt=Mt(),Kt="storage",Ut=globalThis.window,Xt=e=>new Set(M(e)||R(e)?e:[e]),Yt=(e,t)=>e?.add(t),Zt=/^\d+$/,_t=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??l+t++,t=>{Zt.test(t)&&z(e)<1e3&&W(e,t)}]},es=e=>[e,e],ts=(e,t=kt)=>t(e[0])+t(e[1]),ss=()=>[Mt(),Mt()],ls=e=>[...e],as=([e,t])=>e===t,ns=(e,t,s)=>R(e)||!_(e)||ae(e)||Y(e)?(s?.(),!1):(le(e,((s,l)=>{t(s,l)||se(e,l)})),!ae(e)),os=(e,t,s)=>Ot(e,t,zt(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,a=!1,n=!1,r=!1,c=0;const k=Mt(),T=Mt(),S=Mt(),V=Mt(),M=Mt(),$=Mt(),O=Mt(),A=Mt(),F=Mt(),J=Mt(),P=Mt(),H=Mt(),B=Mt(),j=Mt(),G=Xt(),K=Mt(),U=Mt(),X=Mt(),Y=Mt(),_=ss(),ee=ss(),re=ss(),ie=ss(),de=ss(),ue=ss(),ce=ss(),he=ss(),me=ss(),be=ss(),ge=ss(),pe=ss(),Ie=ss(),we=ss(),fe=ss(),ye=ss(),Ce=ss(),ve=ss(),ke=ss(),Te=ss(),xe=ss(),Se=ss(),Ve=Mt(),Re=ss(),[qe,Ne,Le,$e]=(e=>{let t;const[s,a]=_t(),n=Mt();return[(e,a,o,r=[],i=(()=>[]))=>{t??=As;const d=s(1);return Ot(n,d,[e,a,o,r,i]),Yt(jt(a,o??[l],Xt),d),d},(e,s,...a)=>D(((e,t=[l])=>{const s=[],a=(e,l)=>l==z(t)?W(s,e):null===t[l]?Nt(e,(e=>a(e,l+1))):D([t[l],null],(t=>a(zt(e,t),l+1)));return a(e,0),s})(e,s),(e=>Nt(e,(e=>zt(n,e)[0](t,...s??[],...a))))),e=>q(zt(n,e),(([,t,s])=>(jt(t,s??[l],void 0,(t=>(Lt(t,e),Vt(t)?1:0))),Ot(n,e),a(e),s))),e=>q(zt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=z(o);r==z(s)?e(t,...o,...a(o)):R(s[r])?D(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Oe=e=>{if(!ns(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=o||(Me(e[d])!=t&&se(e,d),0))},Ae=(t,s)=>(!e||St(P,s)||mt(s))&&ns(t,((e,t)=>Fe(s,t,e)),(()=>mt(s))),Fe=(e,t,s,l)=>ns(l?s:Be(s,e,t),((l,a)=>q(Je(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>mt(e,t))),Je=(t,s,l,a)=>e?q(zt(zt(P,t),l),(e=>Me(a)!=e[i]?mt(t,s,l,a,e[d]):a),(()=>mt(t,s,l,a))):R(Me(a))?mt(t,s,l,a):a,Pe=(e,t)=>ns(t?e:De(e),((t,s)=>q(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>bt())),He=(e,s)=>t?q(zt(B,e),(t=>Me(s)!=t[i]?bt(e,s,t[d]):s),(()=>bt(e,s))):R(Me(s))?bt(e,s):s,Be=(e,t,s)=>(q(zt(H,t),(([l,a])=>{Nt(l,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(a,(l=>{te(e,l)||mt(t,s,l)}))})),e),De=e=>(t&&(Nt(j,((t,s)=>{te(e,s)||(e[s]=t)})),Nt(G,(t=>{te(e,t)||bt(t)}))),e),Qe=e=>Ft(P,e,((e,t,s)=>{const l=Mt(),a=Xt();Ft(At(P,t,Mt),s,((e,t,s)=>{Ot(e,t,s),q(s[d],(e=>Ot(l,t,e)),(()=>Yt(a,t)))})),Ot(H,t,[l,a])}),((e,t)=>{Ot(P,t),Ot(H,t)})),je=e=>Ft(B,e,((e,t,s)=>{Ot(B,t,s),q(s[d],(e=>Ot(j,t,e)),(()=>Yt(G,t)))}),((e,t)=>{Ot(B,t),Ot(j,t),Lt(G,t)})),We=e=>ae(e)?Rs():ks(e),Ge=e=>Ft(X,e,((e,t,s)=>Ke(t,s)),((e,t)=>lt(t))),Ke=(e,t)=>Ft(At(X,e,(()=>(rt(e,1),Ot(K,e,_t()),Ot(U,e,Mt()),Mt()))),t,((t,s,l)=>Ue(e,t,s,l)),((t,s)=>at(e,t,s))),Ue=(e,t,s,l,a)=>Ft(At(t,s,(()=>(it(e,s,1),Mt()))),l,((t,l,a)=>Xe(e,s,t,l,a)),((l,n)=>nt(e,t,s,l,n,a))),Xe=(e,t,s,l,a)=>{St(s,l)||dt(e,t,l,1);const n=zt(s,l);a!==n&&(ut(e,t,l,n,a),Ot(s,l,a))},Ye=(e,t,s,l,a)=>q(zt(t,s),(t=>Xe(e,s,t,l,a)),(()=>Ue(e,t,s,Be({[l]:a},e,s)))),Ze=e=>ae(e)?Ls():Ts(e),_e=e=>Ft(Y,e,((e,t,s)=>et(t,s)),((e,t)=>ot(t))),et=(e,t)=>{St(Y,e)||ct(e,1);const s=zt(Y,e);t!==s&&(ht(e,s,t),Ot(Y,e,t))},tt=(e,t)=>{const[s]=zt(K,e),l=s(t);return St(zt(X,e),l)?tt(e,t):l},st=e=>zt(X,e)??Ke(e,{}),lt=e=>Ke(e,{}),at=(e,t,s)=>{const[,l]=zt(K,e);l(s),Ue(e,t,s,{},!0)},nt=(e,t,s,l,a,n)=>{const o=zt(zt(H,e)?.[0],a);if(!R(o)&&!n)return Xe(e,s,l,a,o);const r=t=>{ut(e,s,t,zt(l,t)),dt(e,s,t,-1),Ot(l,t)};R(o)?r(a):$t(l,r),Vt(l)&&(it(e,s,-1),Vt(Ot(t,s))&&(rt(e,-1),Ot(X,e),Ot(K,e),Ot(U,e)))},ot=e=>{const t=zt(j,e);if(!R(t))return et(e,t);ht(e,zt(Y,e)),ct(e,-1),Ot(Y,e)},rt=(e,t)=>os(k,e,t),it=(e,t,s)=>os(At(V,e,Mt),t,s)&&Ot(S,e,At(S,e,(()=>0))+s),dt=(e,t,s,l)=>{const a=zt(U,e),n=zt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&os(At(T,e,Mt),s,l),Ot(a,s,n!=-l?n+l:null),os(At(At(M,e,Mt),t,Mt),s,l)},ut=(e,t,s,l,a)=>At(At(At($,e,Mt),t,Mt),s,(()=>[l,0]))[1]=a,ct=(e,t)=>os(O,e,t),ht=(e,t,s)=>At(A,e,(()=>[t,0]))[1]=s,mt=(e,t,s,l,a)=>(W(At(At(At(F,e,Mt),t,Mt),s,(()=>[])),l),a),bt=(e,t,s)=>(W(At(J,e,(()=>[])),t),s),gt=(e,t,s)=>q(zt(zt(zt($,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...es(hs(e,t,s))])),pt=e=>q(zt(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...es(gs(e))])),It=e=>Vt(F)||Vt(ye[e])?0:Nt(e?Qt(F):F,((t,s)=>Nt(t,((t,l)=>Nt(t,((t,a)=>Ne(ye[e],[s,l,a],t))))))),wt=e=>Vt(J)||Vt(Ce[e])?0:Nt(e?Bt(J):J,((t,s)=>Ne(Ce[e],[s],t))),ft=(e,t,s,l)=>{if(!Vt(e))return Ne(t,l,(()=>Jt(e))),$t(e,((e,t)=>Ne(s,[...l??[],e],1==t))),1},yt=e=>{const t=ps();t!=n&&Ne(_[e],void 0,t);const s=Vt(be[e]),l=Vt(Ie[e])&&Vt(we[e])&&Vt(me[e])&&Vt(ge[e])&&Vt(ue[e])&&Vt(ce[e])&&Vt(he[e])&&s&&Vt(re[e])&&Vt(ie[e]),a=Vt(fe[e])&&Vt(pe[e])&&Vt(de[e])&&Vt(ee[e]);if(!l||!a){const t=e?[Bt(k),Dt(T),Bt(S),Dt(V),Qt(M),Qt($)]:[k,T,S,V,M,$];if(!l){ft(t[0],re[e],ie[e]),Nt(t[1],((t,s)=>ft(t,ue[e],ce[e],[s]))),Nt(t[2],((t,s)=>{0!=t&&Ne(he[e],[s],is(s))}));const l=Xt();Nt(t[3],((t,a)=>{ft(t,me[e],ge[e],[a])&&!s&&(Ne(be[e],[a,null]),Yt(l,a))})),s||Nt(t[5],((t,s)=>{if(!St(l,s)){const l=Xt();Nt(t,(e=>Nt(e,(([t,s],a)=>s!==t?Yt(l,a):Lt(e,a))))),Nt(l,(t=>Ne(be[e],[s,t])))}})),Nt(t[4],((t,s)=>Nt(t,((t,l)=>ft(t,Ie[e],we[e],[s,l])))))}if(!a){let s;Nt(t[5],((t,l)=>{let a;Nt(t,((t,n)=>{let o;Nt(t,(([t,r],i)=>{r!==t&&(Ne(fe[e],[l,n,i],r,t,gt),s=a=o=1)})),o&&Ne(pe[e],[l,n],gt)})),a&&Ne(de[e],[l],gt)})),s&&Ne(ee[e],void 0,gt)}}},Ct=e=>{const t=Cs();t!=r&&Ne(ve[e],void 0,t);const s=Vt(Te[e])&&Vt(xe[e]),l=Vt(Se[e])&&Vt(ke[e]);if(!s||!l){const t=e?[Bt(O),Bt(A)]:[O,A];if(s||ft(t[0],Te[e],xe[e]),!l){let s;Nt(t[1],(([t,l],a)=>{l!==t&&(Ne(Se[e],[a],l,t,pt),s=1)})),s&&Ne(ke[e],void 0,pt)}}},Rt=(e,...t)=>(zs((()=>e(...Q(t,x)))),As),Wt=()=>[Jt($,((e,t)=>-1===zt(k,t)?null:Jt(e,((e,s)=>-1===zt(zt(V,t),s)?null:Jt(e,(([,e])=>e??null),((e,t)=>as(t)))),ae)),ae),Jt(A,(([,e])=>e??null),((e,t)=>as(t)))],Gt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Ht($,ls,as),invalidCells:Ht(F),changedValues:Jt(A,ls,as),invalidValues:Jt(J),changedTableIds:Jt(k),changedRowIds:Pt(V),changedCellIds:Ht(M),changedValueIds:Jt(O)}),Kt=()=>Ht(X),Ut=()=>Et(X),Zt=e=>Et(zt(U,x(e))),is=e=>vt(zt(X,x(e))),ds=e=>Et(zt(X,x(e))),us=(e,t,s,l=0,a)=>{return Q(E((o=zt(X,x(e)),r=(e,s)=>[R(t)?s:zt(e,x(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),Q([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,R(a)?a:l+a),(([,e])=>e));var n,o,r},cs=(e,t)=>Et(zt(zt(X,x(e)),x(t))),hs=(e,t,s)=>zt(zt(zt(X,x(e)),x(t)),x(s)),ms=()=>Jt(Y),bs=()=>Et(Y),gs=e=>zt(Y,x(e)),ps=()=>!Vt(X),Is=e=>St(X,x(e)),ws=(e,t)=>St(zt(U,x(e)),x(t)),fs=(e,t)=>St(zt(X,x(e)),x(t)),ys=(e,t,s)=>St(zt(zt(X,x(e)),x(t)),x(s)),Cs=()=>!Vt(Y),vs=e=>St(Y,x(e)),ks=e=>Rt((()=>(e=>ns(e,Ae,mt))(e)?Ge(e):0)),Ts=e=>Rt((()=>Pe(e)?_e(e):0)),xs=e=>{try{We(oe(e))}catch{}return As},Ss=t=>Rt((()=>{if((e=ns(t,(e=>ns(e,Oe))))&&(Qe(t),!Vt(X))){const e=Kt();Rs(),ks(e)}})),Vs=e=>Rt((()=>{if(t=(e=>ns(e,Oe))(e)){const s=ms();Es(),Ls(),t=!0,je(e),Ts(s)}})),Rs=()=>Rt((()=>Ge({}))),qs=e=>Rt((e=>St(X,e)?lt(e):0),e),Ns=(e,t)=>Rt(((e,t)=>q(zt(X,e),(s=>St(s,t)?at(e,s,t):0))),e,t),Ls=()=>Rt((()=>_e({}))),Ms=()=>Rt((()=>{Qe({}),e=!1})),Es=()=>Rt((()=>{je({}),t=!1})),zs=(e,t)=>{if(-1!=c){$s();const s=e();return Os(t),s}},$s=()=>(-1!=c&&c++,1==c&&Ne(Ve,void 0,Wt,Gt),As),Os=e=>(c>0&&(c--,0==c&&(s=!Vt($),a=!Vt(A),c=1,It(1),s&&yt(1),wt(1),a&&Ct(1),e?.(Wt,Gt)&&(Nt($,((e,t)=>Nt(e,((e,s)=>Nt(e,(([e],l)=>Ee(As,t,s,l,e))))))),Nt(A,(([e],t)=>ze(As,t,e))),s=a=!1),Ne(Re[0],void 0,Wt,Gt),c=-1,It(0),s&&yt(0),wt(0),a&&Ct(0),Ne(Re[1],void 0,Wt,Gt),c=0,s=a=!1,n=ps(),r=Cs(),D([k,T,S,V,M,$,F,O,A,J],qt))),As),As={getContent:()=>[Kt(),ms()],getTables:Kt,getTableIds:Ut,getTable:e=>Pt(zt(X,x(e))),getTableCellIds:Zt,getRowCount:is,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>Jt(zt(zt(X,x(e)),x(t))),getCellIds:cs,getCell:hs,getValues:ms,getValueIds:bs,getValue:gs,hasTables:ps,hasTable:Is,hasTableCell:ws,hasRow:fs,hasCell:ys,hasValues:Cs,hasValue:vs,getTablesJson:()=>ne(X),getValuesJson:()=>ne(Y),getJson:()=>ne([X,Y]),getTablesSchemaJson:()=>ne(P),getValuesSchemaJson:()=>ne(B),getSchemaJson:()=>ne([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Rt((()=>{(ae(e)?Rs:ks)(e),(ae(t)?Ls:Ts)(t)})),setTables:ks,setTable:(e,t)=>Rt((e=>Ae(t,e)?Ke(e,t):0),e),setRow:(e,t,s)=>Rt(((e,t)=>Fe(e,t,s)?Ue(e,st(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let l;return Fe(e,l,t)&&(e=x(e),Ue(e,st(e),l=tt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Rt(((e,t)=>{if(Fe(e,t,s,1)){const l=st(e);le(s,((s,a)=>Ye(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Rt(((e,t,s)=>q(Je(e,t,s,L(l)?l(hs(e,t,s)):l),(l=>Ye(e,st(e),t,s,l)))),e,t,s),setValues:Ts,setPartialValues:e=>Rt((()=>Pe(e,1)?le(e,((e,t)=>et(t,e))):0)),setValue:(e,t)=>Rt((e=>q(He(e,L(t)?t(gs(e)):t),(t=>et(e,t)))),e),setTransactionChanges:e=>Rt((()=>{le(e[0],((e,t)=>R(e)?qs(t):le(e,((e,s)=>R(e)?Ns(t,s):le(e,((e,l)=>Ee(As,t,s,l,e))))))),le(e[1],((e,t)=>ze(As,t,e)))})),setTablesJson:xs,setValuesJson:e=>{try{Ze(oe(e))}catch{}return As},setJson:e=>Rt((()=>{try{const[t,s]=oe(e);We(t),Ze(s)}catch{xs(e)}})),setTablesSchema:Ss,setValuesSchema:Vs,setSchema:(e,t)=>Rt((()=>{Ss(e),Vs(t)})),delTables:Rs,delTable:qs,delRow:Ns,delCell:(e,t,s,l)=>Rt(((e,t,s)=>q(zt(X,e),(a=>q(zt(a,t),(n=>St(n,s)?nt(e,a,t,n,s,l):0))))),e,t,s),delValues:Ls,delValue:e=>Rt((e=>St(Y,e)?ot(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>Rt((()=>{Ms(),Es()})),transaction:zs,startTransaction:$s,finishTransaction:Os,forEachTable:e=>Nt(X,((t,s)=>e(s,(e=>Nt(t,((t,s)=>e(s,(e=>$t(t,e))))))))),forEachTableCell:(e,t)=>$t(zt(U,x(e)),t),forEachRow:(e,t)=>Nt(zt(X,x(e)),((e,s)=>t(s,(t=>$t(e,t))))),forEachCell:(e,t,s)=>$t(zt(zt(X,x(e)),x(t)),s),forEachValue:e=>$t(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=us(e,t,s,l,a);return qe((()=>{const o=us(e,t,s,l,a);var i,d,u;d=r,z(i=o)===z(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(As,e,t,s,l,a,r))}),be[o?1:0],[e,t],[Ut])},addStartTransactionListener:e=>qe(e,Ve),addWillFinishTransactionListener:e=>qe(e,Re[0]),addDidFinishTransactionListener:e=>qe(e,Re[1]),callListener:e=>($e(e),As),delListener:e=>(Le(e),As),getListenerStats:()=>({hasTables:ts(_),tables:ts(ee),tableIds:ts(re),hasTable:ts(ie),table:ts(de),tableCellIds:ts(ue),hasTableCell:ts(ce,Tt),rowCount:ts(he),rowIds:ts(me),sortedRowIds:ts(be),hasRow:ts(ge,Tt),row:ts(pe,Tt),cellIds:ts(Ie,Tt),hasCell:ts(we,xt),cell:ts(fe,xt),invalidCell:ts(ye,xt),hasValues:ts(ve),values:ts(ke),valueIds:ts(Te),hasValue:ts(xe),value:ts(Se),invalidValue:ts(Ce),transaction:kt(Ve)+ts(Re)}),createStore:rs,addListener:qe,callListeners:Ne};return le({[u+m]:[0,_,[],()=>[ps()]],[m]:[0,ee],[b]:[0,re],[u+h]:[1,ie,[Ut],e=>[Is(...e)]],[h]:[1,de,[Ut]],[h+f]:[1,ue,[Ut]],[u+h+w]:[2,ce,[Ut,Zt],e=>[ws(...e)]],[p]:[1,he,[Ut]],[I]:[1,me,[Ut]],[u+g]:[2,ge,[Ut,ds],e=>[fs(...e)]],[g]:[2,pe,[Ut,ds]],[f]:[2,Ie,[Ut,ds]],[u+w]:[3,we,[Ut,ds,cs],e=>[ys(...e)]],[w]:[3,fe,[Ut,ds,cs],e=>es(hs(...e))],InvalidCell:[3,ye],[u+C]:[0,ve,[],()=>[Cs()]],[C]:[0,ke],[v]:[0,Te],[u+y]:[1,xe,[bs],e=>[vs(...e)]],[y]:[1,Se,[bs],e=>es(gs(e[0]))],InvalidValue:[1,Ce]},(([e,t,s,l],a)=>{As["add"+a+"Listener"]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),Z(As)},is=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(rs),a=de.indexOf(e);return t.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;At(Wt,i,(()=>0)),At(Gt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();ae(s)&&ae(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(W(zt(Gt,i),...e),await(async()=>{if(!zt(Wt,i)){for(Ot(Wt,i,1);!R(u=G(zt(Gt,i)));)try{await u()}catch(e){n?.(e)}Ot(Wt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),Z(I)})(e,(async()=>oe(s.getItem(t))),(async e=>s.setItem(t,ne(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>oe(l.newValue)))};return Ut.addEventListener(Kt,l),l}),(e=>Ut.removeEventListener(Kt,e)),l,["getStorageName",t]))(e,re,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),A(O,null,A("aside",{id:re},A(Ne,{s:l}),A(yt,{s:l})),A("style",null,qe))};exports.EditableCellView=st,exports.EditableValueView=lt,exports.RelationshipInHtmlTable=et,exports.ResultSortedTableInHtmlTable=tt,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>A(Ge,{...a,params:Be(We(t.useResultTableCellIds(e,s),l,t.ResultCellView),Qe(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=_e,exports.SortedTableInHtmlTable=Ye,exports.SortedTablePaginator=at,exports.StoreInspector=e=>A(is,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>A(Ge,{...n,params:Be(We(t.useTableCellIds(e,s),a,l?st:t.CellView),De(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=Ze;
1
+ "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),o=s(0),r=s(s),i="type",d="default",u="Has",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,w="Cell",f=w+c,y="Value",C=y+"s",v=y+c,k="currentTarget",T="value",x=e=>l+e,S=Math.floor,V=isFinite,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==r,M=e=>Array.isArray(e),E=(e,t,s)=>e.slice(t,s),z=e=>e.length,{PureComponent:$,Fragment:O,createElement:A,useCallback:F,useLayoutEffect:J,useRef:P,useState:H}=e,B=(e,...t)=>R(e)?{}:e(...t),D=(e,t)=>e.sort(t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==z(e),G=(e,...t)=>e.push(...t),K=e=>e.shift(),U=Object,X=e=>U.getPrototypeOf(e),Y=U.keys,Z=U.isFrozen,_=U.freeze,ee=e=>!R(e)&&q(X(e),(e=>e==U.prototype||R(X(e))),(()=>!0)),te=(e=[])=>U.fromEntries(e),se=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),ae=(e,t)=>j(U.entries(e),(([e,s])=>t(s,e))),ne=e=>ee(e)&&0==(e=>z(Y(e)))(e),oe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?U.fromEntries([...t]):t)),re=JSON.parse,ie="tinybaseStoreInspector",de="TinyBase Store Inspector",ue=["left","top","bottom","right","full"],ce="state",he="sort",me="open",be="position",ge=me,pe="editable",Ie=(...e)=>oe(e),we=(e,t)=>j(D(e),t),fe=(e,s)=>[!!t.useCell(ce,e,pe,s),F((t=>{s.setCell(ce,e,pe,(e=>!e)),t.preventDefault()}),[s,e])],ye="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Ce='content:url("',ve=Ce+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ke='</svg>")',Te=Ce+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",xe=j([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ve+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ke)),Se=ve+"<path d='M20 20l60 60M20 80l60-60' />"+ke,Ve=ve+`<path d='${ye}' />`+ke,Re=ve+`<path d='${ye}M20 20l60 60' />`+ke,qe="*::-webkit-scrollbar",Ne=((e,t="")=>e.join(t))(ae({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[qe]:"width:0.5rem;height:0.5rem;",[qe+"-track"]:"background:#111",[qe+"-thumb"]:"background:#999;border:1px solid #111",[qe+"-thumb:hover"]:"background:#fff",[qe+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+Te,...te(j(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...te(j(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":Te,"header>img:nth-of-type(6)":Se,...te(j(xe,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Ve,"details[open]>summary img.done":Re,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ie} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ie} ${t}{${e}}`:""))),Le=({s:e})=>{const s=t.useValue(be,e)??1,l=t.useSetValueCallback(ge,(()=>!0),[],e);return t.useValue(ge,e)?null:A("img",{onClick:l,title:de,"data-position":s})},Me=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!t.useCell(ce,e,me,o),i=t.useSetCellCallback(ce,e,me,(e=>e[k].open),[],o);return A("details",{open:r,onToggle:i},A("summary",null,s,a?A("img",{onClick:a,className:l?"done":"edit"}):null),n)},Ee=e=>{const t=s(e);return N(t)||t==o&&V(e)?t:void 0},ze=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),$e=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),Oe=(e,t,s,l)=>e==a?t:e==o?s:l,{useCallback:Ae,useMemo:Fe,useState:Je}=e,Pe="editable",He=(e,s)=>j(t.useTableCellIds(e,s),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Ae(e,t);return s?l:void 0},De=(...e)=>Fe((()=>e),e),Qe=(e,t)=>Fe((()=>({store:e,tableId:t})),[e,t]),je=(e,t)=>Fe((()=>({queries:e,queryId:t})),[e,t]),We=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Je([e,t,l]),h=Ae((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Ae((e=>h([i,d,e])),[h,i,d]),g=!0===o?nt:o;return[[i,d,u],m,Fe((()=>!1===o?null:A(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ge=(e,t,l)=>Fe((()=>{const n=t??e;return te(ae(M(n)?te(j(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),Ke=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>A("table",{className:e},i?A("caption",null,i):null,!1===t?null:A("thead",null,A("tr",null,!1===s?null:A(Ue,{sort:o??[],label:"Id",onClick:r}),ae(l,(({label:e},t)=>A(Ue,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),A("tbody",null,j(n,(e=>A("tr",{key:e},!1===s?null:A("th",null,e),ae(l,(({component:t,getComponentProps:s},l)=>A("td",{key:l},A(t,{...B(s,e,l),...a,rowId:e,cellId:l}))))))))),Ue=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>A("th",{onClick:Be((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",a),Xe=({localRowId:s,params:[l,a,n,o,r,i,d]})=>{const u=t.useRemoteRowId(r,s,i);return A("tr",null,!1===l?null:A(e.Fragment,null,A("th",null,s),A("th",null,u)),ae(a,(({component:e,getComponentProps:t},l)=>{const[a,r]=l.split(".",2),i=a===n?s:a===o?u:null;return R(i)?null:A("td",{key:l},A(e,{...B(t,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Ye=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:r=!0})=>{const[i,d]=Je(),[u,c]=Je(),[h,m]=Je(),[b,g]=Je(),[p,I]=Je();u!==e&&(d(Ee(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const w=Ae(((e,s)=>{s(e),c(e),t(e)}),[t]),f=Ae((()=>{if(!l?.()){const e=Oe(i,o,n,a),s=Oe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return A("div",{className:s},r?A("button",{className:i,onClick:f},i):null,Oe(i,A("input",{key:i,value:h,onChange:Ae((e=>w(e[k][T]+"",m)),[w])}),A("input",{key:i,type:"number",value:b,onChange:Ae((e=>w(Number(e[k][T]||0),g)),[w])}),A("input",{key:i,type:"checkbox",checked:p,onChange:Ae((e=>w(!!e[k].checked,I)),[w])})))},Ze=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=We(s,l,i,a,n,t.useRowCount(e,o),d,u);return A(Ke,{...h,params:De(Ge(t.useTableCellIds(e,o),c,r?lt:t.CellView),Qe(o,e),t.useSortedRowIds(e,...m,n,o),m,b,g)})},_e=({store:e,editable:s=!1,valueComponent:l=(s?at:t.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>A("table",{className:n},!1===o?null:A("thead",null,A("tr",null,!1===r?null:A("th",null,"Id"),A("th",null,y))),A("tbody",null,j(t.useValueIds(e),(t=>A("tr",{key:t},!1===r?null:A("th",null,t),A("td",null,A(l,{...B(a,t),valueId:t,store:e}))))))),et=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return A(Ke,{...o,params:De(Ge(t.useTableCellIds(d,i),n,a?lt:t.CellView),Qe(i,d),t.useSliceRowIds(e,s,r))})},tt=({relationshipId:s,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(l),s),m=Ge([...He(c,u),...He(h,u)],n,a?lt:t.CellView),b=De(i,m,c,h,s,d,u);return A("table",{className:o},!1===r?null:A("thead",null,A("tr",null,!1===i?null:A(e.Fragment,null,A("th",null,c,".Id"),A("th",null,h,".Id")),ae(m,(({label:e},t)=>A("th",{key:t},e))))),A("tbody",null,j(t.useRowIds(c,u),(e=>A(Xe,{key:e,localRowId:e,params:b})))))},st=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=We(s,l,r,a,n,t.useResultRowCount(e,o),i,u);return A(Ke,{...c,params:De(Ge(t.useResultTableCellIds(e,o),d,t.ResultCellView),je(o,e),t.useResultSortedRowIds(e,...h,n,o),h,m,b)})},lt=({tableId:e,rowId:s,cellId:l,store:a,className:n,showType:o})=>A(Ye,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Pe+w,showType:o,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),at=({valueId:e,store:s,className:l,showType:a})=>A(Ye,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Pe+y,showType:a,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),nt=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const r=Be((()=>t(l-a)),[t,l,a],l>0),i=Be((()=>t(l+a)),[t,l,a],l+a<s);return A(e.Fragment,null,s>a&&A(e.Fragment,null,A("button",{className:"previous",disabled:0==l,onClick:r},"←"),A("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},ot=({indexes:e,indexesId:s,indexId:l,s:a})=>A(Me,{uniqueId:Ie("i",s,l),summary:"Index: "+l,s:a},j(t.useSliceIds(l,e),(t=>A(rt,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a,key:t})))),rt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=Ie("i",t,s,l),[o,r]=fe(n,a);return A(Me,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},A(et,{sliceId:l,indexId:s,indexes:e,editable:o}))},it=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:A(Me,{uniqueId:Ie("i",e),summary:"Indexes: "+(e??d),s:s},W(a)?"No indexes defined":we(a,(t=>A(ot,{indexes:l,indexesId:e,indexId:t,s:s,key:t}))))},dt=({metrics:e,metricId:s})=>A("tr",null,A("th",null,s),A("td",null,e?.getTableId(s)),A("td",null,t.useMetric(s,e))),ut=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:A(Me,{uniqueId:Ie("m",e),summary:"Metrics: "+(e??d),s:s},W(a)?"No metrics defined":A("table",null,A("thead",null,A("th",null,"Metric Id"),A("th",null,"Table Id"),A("th",null,"Metric")),A("tbody",null,j(a,(e=>A(dt,{metrics:l,metricId:e,key:e}))))))},ct=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=Ie("q",s,l),[o,r,i]=re(t.useCell(ce,n,he,a)??"[]"),d=t.useSetCellCallback(ce,n,he,oe,[],a);return A(Me,{uniqueId:n,summary:"Query: "+l,s:a},A(st,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ht=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:A(Me,{uniqueId:Ie("q",e),summary:"Queries: "+(e??d),s:s},W(a)?"No queries defined":we(a,(t=>A(ct,{queries:l,queriesId:e,queryId:t,s:s,key:t}))))},mt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=Ie("r",t,s),[n,o]=fe(a,l);return A(Me,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},A(tt,{relationshipId:s,relationships:e,editable:n}))},bt=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:A(Me,{uniqueId:Ie("r",e),summary:"Relationships: "+(e??d),s:s},W(a)?"No relationships defined":we(a,(t=>A(mt,{relationships:l,relationshipsId:e,relationshipId:t,s:s,key:t}))))},gt=({tableId:e,store:s,storeId:l,s:a})=>{const n=Ie("t",l,e),[o,r,i]=re(t.useCell(ce,n,he,a)??"[]"),d=t.useSetCellCallback(ce,n,he,oe,[],a),[u,c]=fe(n,a);return A(Me,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},A(Ze,{tableId:e,store:s,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},pt=({store:e,storeId:s,s:l})=>{const a=Ie("v",s),[n,o]=fe(a,l);return W(t.useValueIds(e))?null:A(Me,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},A(_e,{store:e,editable:n}))},It=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:A(Me,{uniqueId:Ie("s",e),summary:"Store: "+(e??d),s:s},A(pt,{storeId:e,store:l,s:s}),we(a,(t=>A(gt,{store:l,storeId:e,tableId:t,s:s,key:t}))))},wt=({s:e})=>{const s=P(null),l=P(0),[a,n]=H(!1),{scrollLeft:o,scrollTop:r}=t.useValues(e);J((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=S(o)+e.clientWidth&&e.scrollHeight>=S(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=F((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),w=t.useQueriesIds();return R(d)&&W(u)&&R(c)&&W(h)&&R(m)&&W(b)&&R(g)&&W(p)&&R(I)&&W(w)?A("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):A("article",{ref:s,onScroll:i},A(It,{s:e}),j(u,(t=>A(It,{storeId:t,s:e,key:t}))),A(ut,{s:e}),j(h,(t=>A(ut,{metricsId:t,s:e,key:t}))),A(it,{s:e}),j(b,(t=>A(it,{indexesId:t,s:e,key:t}))),A(bt,{s:e}),j(p,(t=>A(bt,{relationshipsId:t,s:e,key:t}))),A(ht,{s:e}),j(w,(t=>A(ht,{queriesId:t,s:e,key:t}))))};class ft extends ${constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?A("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const yt=({s:e})=>{const s=t.useValue(be,e)??1,l=t.useSetValueCallback(ge,(()=>!1),[],e),a=t.useSetValueCallback(be,(e=>Number(e[k].dataset.id)),[],e);return A("header",null,A("img",{title:de}),A("span",null,de),j(ue,((e,t)=>t==s?null:A("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),A("img",{onClick:l,title:"Close"}))},Ct=({s:e})=>{const s=t.useValue(be,e)??1;return t.useValue(ge,e)?A("main",{"data-position":s},A(yt,{s:e}),A(ft,null,A(wt,{s:e}))):null},vt=e=>t=>{return s=(t,s)=>t+e(s),qt(t).reduce(s,0);var s},kt=e=>e?.size??0,Tt=vt(kt),xt=vt(Tt),St=vt(xt),Vt=(e,t)=>e?.has(t)??!1,Rt=e=>R(e)||0==kt(e),qt=e=>[...e?.values()??[]],Nt=e=>e.clear(),Lt=(e,t)=>e?.forEach(t),Mt=(e,t)=>e?.delete(t),Et=e=>new Map(e),zt=e=>[...e?.keys()??[]],$t=(e,t)=>e?.get(t),Ot=(e,t)=>Lt(e,((e,s)=>t(s,e))),At=(e,t,s)=>R(s)?(Mt(e,t),e):e?.set(t,s),Ft=(e,t,s)=>(Vt(e,t)||At(e,t,s()),$t(e,t)),Jt=(e,t,s,l=At)=>(ae(t,((t,l)=>s(e,l,t))),Ot(e,(s=>se(t,s)?0:l(e,s))),e),Pt=(e,t,s)=>{const l={};return Lt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Ht=(e,t,s)=>Pt(e,(e=>Pt(e,t,s)),ne),Bt=(e,t,s)=>Pt(e,(e=>Ht(e,t,s)),ne),Dt=(e,t)=>{const s=Et();return Lt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Qt=e=>Dt(e,Dt),jt=e=>Dt(e,Qt),Wt=(e,t,s,l,a=0)=>q((s?Ft:$t)(e,t[a],a>z(t)-2?s:Et),(n=>{if(a>z(t)-2)return l?.(n)&&At(e,t[a]),n;const o=Wt(n,t,s,l,a+1);return Rt(n)&&At(e,t[a]),o})),Gt=Et(),Kt=Et(),Ut="storage",Xt=globalThis.window,Yt=e=>new Set(M(e)||R(e)?e:[e]),Zt=(e,t)=>e?.add(t),_t=/^\d+$/,es=()=>{const e=[];let t=0;return[s=>(s?K(e):null)??l+t++,t=>{_t.test(t)&&z(e)<1e3&&G(e,t)}]},ts=e=>[e,e],ss=(e,t=Tt)=>t(e[0])+t(e[1]),ls=()=>[Et(),Et()],as=e=>[...e],ns=([e,t])=>e===t,os=(e,t,s)=>R(e)||!ee(e)||ne(e)||Z(e)?(s?.(),!1):(ae(e,((s,l)=>{t(s,l)||le(e,l)})),!ne(e)),rs=(e,t,s)=>At(e,t,$t(e,t)==-s?void 0:s),is=()=>{let e,t,s=!1,a=!1,n=!1,r=!1,c=0;const k=Et(),T=Et(),S=Et(),V=Et(),M=Et(),$=Et(),O=Et(),A=Et(),F=Et(),J=Et(),P=Et(),H=Et(),B=Et(),W=Et(),K=Yt(),U=Et(),X=Et(),Y=Et(),Z=Et(),ee=ls(),te=ls(),ie=ls(),de=ls(),ue=ls(),ce=ls(),he=ls(),me=ls(),be=ls(),ge=ls(),pe=ls(),Ie=ls(),we=ls(),fe=ls(),ye=ls(),Ce=ls(),ve=ls(),ke=ls(),Te=ls(),xe=ls(),Se=ls(),Ve=ls(),Re=Et(),qe=ls(),[Ne,Le,Me,Oe]=(e=>{let t;const[s,a]=es(),n=Et();return[(e,a,o,r=[],i=(()=>[]))=>{t??=Fs;const d=s(1);return At(n,d,[e,a,o,r,i]),Zt(Wt(a,o??[l],Yt),d),d},(e,s,...a)=>Q(((e,t=[l])=>{const s=[],a=(e,l)=>l==z(t)?G(s,e):null===t[l]?Lt(e,(e=>a(e,l+1))):Q([t[l],null],(t=>a($t(e,t),l+1)));return a(e,0),s})(e,s),(e=>Lt(e,(e=>$t(n,e)[0](t,...s??[],...a))))),e=>q($t(n,e),(([,t,s])=>(Wt(t,s??[l],void 0,(t=>(Mt(t,e),Rt(t)?1:0))),At(n,e),a(e),s))),e=>q($t(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=z(o);r==z(s)?e(t,...o,...a(o)):R(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Ae=e=>{if(!os(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=o||(Ee(e[d])!=t&&le(e,d),0))},Fe=(t,s)=>(!e||Vt(P,s)||bt(s))&&os(t,((e,t)=>Je(s,t,e)),(()=>bt(s))),Je=(e,t,s,l)=>os(l?s:De(s,e,t),((l,a)=>q(Pe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Pe=(t,s,l,a)=>e?q($t($t(P,t),l),(e=>Ee(a)!=e[i]?bt(t,s,l,a,e[d]):a),(()=>bt(t,s,l,a))):R(Ee(a))?bt(t,s,l,a):a,He=(e,t)=>os(t?e:Qe(e),((t,s)=>q(Be(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>gt())),Be=(e,s)=>t?q($t(B,e),(t=>Ee(s)!=t[i]?gt(e,s,t[d]):s),(()=>gt(e,s))):R(Ee(s))?gt(e,s):s,De=(e,t,s)=>(q($t(H,t),(([l,a])=>{Lt(l,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(a,(l=>{se(e,l)||bt(t,s,l)}))})),e),Qe=e=>(t&&(Lt(W,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(K,(t=>{se(e,t)||gt(t)}))),e),je=e=>Jt(P,e,((e,t,s)=>{const l=Et(),a=Yt();Jt(Ft(P,t,Et),s,((e,t,s)=>{At(e,t,s),q(s[d],(e=>At(l,t,e)),(()=>Zt(a,t)))})),At(H,t,[l,a])}),((e,t)=>{At(P,t),At(H,t)})),We=e=>Jt(B,e,((e,t,s)=>{At(B,t,s),q(s[d],(e=>At(W,t,e)),(()=>Zt(K,t)))}),((e,t)=>{At(B,t),At(W,t),Mt(K,t)})),Ge=e=>ne(e)?qs():Ts(e),Ke=e=>Jt(Y,e,((e,t,s)=>Ue(t,s)),((e,t)=>at(t))),Ue=(e,t)=>Jt(Ft(Y,e,(()=>(it(e,1),At(U,e,es()),At(X,e,Et()),Et()))),t,((t,s,l)=>Xe(e,t,s,l)),((t,s)=>nt(e,t,s))),Xe=(e,t,s,l,a)=>Jt(Ft(t,s,(()=>(dt(e,s,1),Et()))),l,((t,l,a)=>Ye(e,s,t,l,a)),((l,n)=>ot(e,t,s,l,n,a))),Ye=(e,t,s,l,a)=>{Vt(s,l)||ut(e,t,l,1);const n=$t(s,l);a!==n&&(ct(e,t,l,n,a),At(s,l,a))},Ze=(e,t,s,l,a)=>q($t(t,s),(t=>Ye(e,s,t,l,a)),(()=>Xe(e,t,s,De({[l]:a},e,s)))),_e=e=>ne(e)?Ms():xs(e),et=e=>Jt(Z,e,((e,t,s)=>tt(t,s)),((e,t)=>rt(t))),tt=(e,t)=>{Vt(Z,e)||ht(e,1);const s=$t(Z,e);t!==s&&(mt(e,s,t),At(Z,e,t))},st=(e,t)=>{const[s]=$t(U,e),l=s(t);return Vt($t(Y,e),l)?st(e,t):l},lt=e=>$t(Y,e)??Ue(e,{}),at=e=>Ue(e,{}),nt=(e,t,s)=>{const[,l]=$t(U,e);l(s),Xe(e,t,s,{},!0)},ot=(e,t,s,l,a,n)=>{const o=$t($t(H,e)?.[0],a);if(!R(o)&&!n)return Ye(e,s,l,a,o);const r=t=>{ct(e,s,t,$t(l,t)),ut(e,s,t,-1),At(l,t)};R(o)?r(a):Ot(l,r),Rt(l)&&(dt(e,s,-1),Rt(At(t,s))&&(it(e,-1),At(Y,e),At(U,e),At(X,e)))},rt=e=>{const t=$t(W,e);if(!R(t))return tt(e,t);mt(e,$t(Z,e)),ht(e,-1),At(Z,e)},it=(e,t)=>rs(k,e,t),dt=(e,t,s)=>rs(Ft(V,e,Et),t,s)&&At(S,e,Ft(S,e,(()=>0))+s),ut=(e,t,s,l)=>{const a=$t(X,e),n=$t(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&rs(Ft(T,e,Et),s,l),At(a,s,n!=-l?n+l:null),rs(Ft(Ft(M,e,Et),t,Et),s,l)},ct=(e,t,s,l,a)=>Ft(Ft(Ft($,e,Et),t,Et),s,(()=>[l,0]))[1]=a,ht=(e,t)=>rs(O,e,t),mt=(e,t,s)=>Ft(A,e,(()=>[t,0]))[1]=s,bt=(e,t,s,l,a)=>(G(Ft(Ft(Ft(F,e,Et),t,Et),s,(()=>[])),l),a),gt=(e,t,s)=>(G(Ft(J,e,(()=>[])),t),s),pt=(e,t,s)=>q($t($t($t($,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(ms(e,t,s))])),It=e=>q($t(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(ps(e))])),wt=e=>Rt(F)||Rt(Ce[e])?0:Lt(e?jt(F):F,((t,s)=>Lt(t,((t,l)=>Lt(t,((t,a)=>Le(Ce[e],[s,l,a],t))))))),ft=e=>Rt(J)||Rt(ve[e])?0:Lt(e?Dt(J):J,((t,s)=>Le(ve[e],[s],t))),yt=(e,t,s,l)=>{if(!Rt(e))return Le(t,l,(()=>Pt(e))),Ot(e,((e,t)=>Le(s,[...l??[],e],1==t))),1},Ct=e=>{const t=Is();t!=n&&Le(ee[e],void 0,t);const s=Rt(ge[e]),l=Rt(we[e])&&Rt(fe[e])&&Rt(be[e])&&Rt(pe[e])&&Rt(ce[e])&&Rt(he[e])&&Rt(me[e])&&s&&Rt(ie[e])&&Rt(de[e]),a=Rt(ye[e])&&Rt(Ie[e])&&Rt(ue[e])&&Rt(te[e]);if(!l||!a){const t=e?[Dt(k),Qt(T),Dt(S),Qt(V),jt(M),jt($)]:[k,T,S,V,M,$];if(!l){yt(t[0],ie[e],de[e]),Lt(t[1],((t,s)=>yt(t,ce[e],he[e],[s]))),Lt(t[2],((t,s)=>{0!=t&&Le(me[e],[s],ds(s))}));const l=Yt();Lt(t[3],((t,a)=>{yt(t,be[e],pe[e],[a])&&!s&&(Le(ge[e],[a,null]),Zt(l,a))})),s||Lt(t[5],((t,s)=>{if(!Vt(l,s)){const l=Yt();Lt(t,(e=>Lt(e,(([t,s],a)=>s!==t?Zt(l,a):Mt(e,a))))),Lt(l,(t=>Le(ge[e],[s,t])))}})),Lt(t[4],((t,s)=>Lt(t,((t,l)=>yt(t,we[e],fe[e],[s,l])))))}if(!a){let s;Lt(t[5],((t,l)=>{let a;Lt(t,((t,n)=>{let o;Lt(t,(([t,r],i)=>{r!==t&&(Le(ye[e],[l,n,i],r,t,pt),s=a=o=1)})),o&&Le(Ie[e],[l,n],pt)})),a&&Le(ue[e],[l],pt)})),s&&Le(te[e],void 0,pt)}}},vt=e=>{const t=vs();t!=r&&Le(ke[e],void 0,t);const s=Rt(xe[e])&&Rt(Se[e]),l=Rt(Ve[e])&&Rt(Te[e]);if(!s||!l){const t=e?[Dt(O),Dt(A)]:[O,A];if(s||yt(t[0],xe[e],Se[e]),!l){let s;Lt(t[1],(([t,l],a)=>{l!==t&&(Le(Ve[e],[a],l,t,It),s=1)})),s&&Le(Te[e],void 0,It)}}},qt=(e,...t)=>($s((()=>e(...j(t,x)))),Fs),Gt=()=>[Pt($,((e,t)=>-1===$t(k,t)?null:Pt(e,((e,s)=>-1===$t($t(V,t),s)?null:Pt(e,(([,e])=>e??null),((e,t)=>ns(t)))),ne)),ne),Pt(A,(([,e])=>e??null),((e,t)=>ns(t)))],Kt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Bt($,as,ns),invalidCells:Bt(F),changedValues:Pt(A,as,ns),invalidValues:Pt(J),changedTableIds:Pt(k),changedRowIds:Ht(V),changedCellIds:Bt(M),changedValueIds:Pt(O)}),Ut=()=>Bt(Y),Xt=()=>zt(Y),_t=e=>zt($t(X,x(e))),ds=e=>kt($t(Y,x(e))),us=e=>zt($t(Y,x(e))),cs=(e,t,s,l=0,a)=>{return j(E(D((n=$t(Y,x(e)),o=(e,s)=>[R(t)?s:$t(e,x(t)),s],j([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,R(a)?a:l+a),(([,e])=>e));var n,o},hs=(e,t)=>zt($t($t(Y,x(e)),x(t))),ms=(e,t,s)=>$t($t($t(Y,x(e)),x(t)),x(s)),bs=()=>Pt(Z),gs=()=>zt(Z),ps=e=>$t(Z,x(e)),Is=()=>!Rt(Y),ws=e=>Vt(Y,x(e)),fs=(e,t)=>Vt($t(X,x(e)),x(t)),ys=(e,t)=>Vt($t(Y,x(e)),x(t)),Cs=(e,t,s)=>Vt($t($t(Y,x(e)),x(t)),x(s)),vs=()=>!Rt(Z),ks=e=>Vt(Z,x(e)),Ts=e=>qt((()=>(e=>os(e,Fe,bt))(e)?Ke(e):0)),xs=e=>qt((()=>He(e)?et(e):0)),Ss=e=>{try{Ge(re(e))}catch{}return Fs},Vs=t=>qt((()=>{if((e=os(t,(e=>os(e,Ae))))&&(je(t),!Rt(Y))){const e=Ut();qs(),Ts(e)}})),Rs=e=>qt((()=>{if(t=(e=>os(e,Ae))(e)){const s=bs();zs(),Ms(),t=!0,We(e),xs(s)}})),qs=()=>qt((()=>Ke({}))),Ns=e=>qt((e=>Vt(Y,e)?at(e):0),e),Ls=(e,t)=>qt(((e,t)=>q($t(Y,e),(s=>Vt(s,t)?nt(e,s,t):0))),e,t),Ms=()=>qt((()=>et({}))),Es=()=>qt((()=>{je({}),e=!1})),zs=()=>qt((()=>{We({}),t=!1})),$s=(e,t)=>{if(-1!=c){Os();const s=e();return As(t),s}},Os=()=>(-1!=c&&c++,1==c&&Le(Re,void 0,Gt,Kt),Fs),As=e=>(c>0&&(c--,0==c&&(s=!Rt($),a=!Rt(A),c=1,wt(1),s&&Ct(1),ft(1),a&&vt(1),e?.(Gt,Kt)&&(Lt($,((e,t)=>Lt(e,((e,s)=>Lt(e,(([e],l)=>ze(Fs,t,s,l,e))))))),Lt(A,(([e],t)=>$e(Fs,t,e))),s=a=!1),Le(qe[0],void 0,Gt,Kt),c=-1,wt(0),s&&Ct(0),ft(0),a&&vt(0),Le(qe[1],void 0,Gt,Kt),c=0,s=a=!1,n=Is(),r=vs(),Q([k,T,S,V,M,$,F,O,A,J],Nt))),Fs),Fs={getContent:()=>[Ut(),bs()],getTables:Ut,getTableIds:Xt,getTable:e=>Ht($t(Y,x(e))),getTableCellIds:_t,getRowCount:ds,getRowIds:us,getSortedRowIds:cs,getRow:(e,t)=>Pt($t($t(Y,x(e)),x(t))),getCellIds:hs,getCell:ms,getValues:bs,getValueIds:gs,getValue:ps,hasTables:Is,hasTable:ws,hasTableCell:fs,hasRow:ys,hasCell:Cs,hasValues:vs,hasValue:ks,getTablesJson:()=>oe(Y),getValuesJson:()=>oe(Z),getJson:()=>oe([Y,Z]),getTablesSchemaJson:()=>oe(P),getValuesSchemaJson:()=>oe(B),getSchemaJson:()=>oe([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>qt((()=>{(ne(e)?qs:Ts)(e),(ne(t)?Ms:xs)(t)})),setTables:Ts,setTable:(e,t)=>qt((e=>Fe(t,e)?Ue(e,t):0),e),setRow:(e,t,s)=>qt(((e,t)=>Je(e,t,s)?Xe(e,lt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>$s((()=>{let l;return Je(e,l,t)&&(e=x(e),Xe(e,lt(e),l=st(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>qt(((e,t)=>{if(Je(e,t,s,1)){const l=lt(e);ae(s,((s,a)=>Ze(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>qt(((e,t,s)=>q(Pe(e,t,s,L(l)?l(ms(e,t,s)):l),(l=>Ze(e,lt(e),t,s,l)))),e,t,s),setValues:xs,setPartialValues:e=>qt((()=>He(e,1)?ae(e,((e,t)=>tt(t,e))):0)),setValue:(e,t)=>qt((e=>q(Be(e,L(t)?t(ps(e)):t),(t=>tt(e,t)))),e),setTransactionChanges:e=>qt((()=>{ae(e[0],((e,t)=>R(e)?Ns(t):ae(e,((e,s)=>R(e)?Ls(t,s):ae(e,((e,l)=>ze(Fs,t,s,l,e))))))),ae(e[1],((e,t)=>$e(Fs,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{_e(re(e))}catch{}return Fs},setJson:e=>qt((()=>{try{const[t,s]=re(e);Ge(t),_e(s)}catch{Ss(e)}})),setTablesSchema:Vs,setValuesSchema:Rs,setSchema:(e,t)=>qt((()=>{Vs(e),Rs(t)})),delTables:qs,delTable:Ns,delRow:Ls,delCell:(e,t,s,l)=>qt(((e,t,s)=>q($t(Y,e),(a=>q($t(a,t),(n=>Vt(n,s)?ot(e,a,t,n,s,l):0))))),e,t,s),delValues:Ms,delValue:e=>qt((e=>Vt(Z,e)?rt(e):0),e),delTablesSchema:Es,delValuesSchema:zs,delSchema:()=>qt((()=>{Es(),zs()})),transaction:$s,startTransaction:Os,finishTransaction:As,forEachTable:e=>Lt(Y,((t,s)=>e(s,(e=>Lt(t,((t,s)=>e(s,(e=>Ot(t,e))))))))),forEachTableCell:(e,t)=>Ot($t(X,x(e)),t),forEachRow:(e,t)=>Lt($t(Y,x(e)),((e,s)=>t(s,(t=>Ot(e,t))))),forEachCell:(e,t,s)=>Ot($t($t(Y,x(e)),x(t)),s),forEachValue:e=>Ot(Z,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=cs(e,t,s,l,a);return Ne((()=>{const o=cs(e,t,s,l,a);var i,d,u;d=r,z(i=o)===z(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(Fs,e,t,s,l,a,r))}),ge[o?1:0],[e,t],[Xt])},addStartTransactionListener:e=>Ne(e,Re),addWillFinishTransactionListener:e=>Ne(e,qe[0]),addDidFinishTransactionListener:e=>Ne(e,qe[1]),callListener:e=>(Oe(e),Fs),delListener:e=>(Me(e),Fs),getListenerStats:()=>({hasTables:ss(ee),tables:ss(te),tableIds:ss(ie),hasTable:ss(de),table:ss(ue),tableCellIds:ss(ce),hasTableCell:ss(he,xt),rowCount:ss(me),rowIds:ss(be),sortedRowIds:ss(ge),hasRow:ss(pe,xt),row:ss(Ie,xt),cellIds:ss(we,xt),hasCell:ss(fe,St),cell:ss(ye,St),invalidCell:ss(Ce,St),hasValues:ss(ke),values:ss(Te),valueIds:ss(xe),hasValue:ss(Se),value:ss(Ve),invalidValue:ss(ve),transaction:Tt(Re)+ss(qe)}),createStore:is,addListener:Ne,callListeners:Le};return ae({[u+m]:[0,ee,[],()=>[Is()]],[m]:[0,te],[b]:[0,ie],[u+h]:[1,de,[Xt],e=>[ws(...e)]],[h]:[1,ue,[Xt]],[h+f]:[1,ce,[Xt]],[u+h+w]:[2,he,[Xt,_t],e=>[fs(...e)]],[p]:[1,me,[Xt]],[I]:[1,be,[Xt]],[u+g]:[2,pe,[Xt,us],e=>[ys(...e)]],[g]:[2,Ie,[Xt,us]],[f]:[2,we,[Xt,us]],[u+w]:[3,fe,[Xt,us,hs],e=>[Cs(...e)]],[w]:[3,ye,[Xt,us,hs],e=>ts(ms(...e))],InvalidCell:[3,Ce],[u+C]:[0,ke,[],()=>[vs()]],[C]:[0,Te],[v]:[0,xe],[u+y]:[1,Se,[gs],e=>[ks(...e)]],[y]:[1,Ve,[gs],e=>ts(ps(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Fs["add"+a+"Listener"]=(...a)=>Ne(a[e],t[a[e+1]?1:0],e>0?E(a,0,e):void 0,s,l)})),_(Fs)},ds=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(is),a=ue.indexOf(e);return t.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Ft(Gt,i,(()=>0)),Ft(Kt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();ne(s)&&ne(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(q(d,e.delListener),d=void 0,I),schedule:async(...e)=>(G($t(Kt,i),...e),await(async()=>{if(!$t(Gt,i)){for(At(Gt,i,1);!R(u=K($t(Kt,i)));)try{await u()}catch(e){n?.(e)}At(Gt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),_(I)})(e,(async()=>re(s.getItem(t))),(async e=>s.setItem(t,oe(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>re(l.newValue)))};return Xt.addEventListener(Ut,l),l}),(e=>Xt.removeEventListener(Ut,e)),l,["getStorageName",t]))(e,ie,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),A(O,null,A("aside",{id:ie},A(Le,{s:l}),A(Ct,{s:l})),A("style",null,Ne))};exports.EditableCellView=lt,exports.EditableValueView=at,exports.RelationshipInHtmlTable=tt,exports.ResultSortedTableInHtmlTable=st,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>A(Ke,{...a,params:De(Ge(t.useResultTableCellIds(e,s),l,t.ResultCellView),je(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=et,exports.SortedTableInHtmlTable=Ze,exports.SortedTablePaginator=nt,exports.StoreInspector=e=>A(ds,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>A(Ke,{...n,params:De(Ge(t.useTableCellIds(e,s),a,l?lt:t.CellView),Qe(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=_e;
Binary file