tinybase 4.6.0 → 4.6.1

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 (93) 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-sqlite-wasm.cjs +1 -1
  12. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  14. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  15. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  16. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  17. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  18. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  19. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  20. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  21. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  22. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  23. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  24. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  25. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  26. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  27. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  28. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  29. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +6 -2
  30. package/lib/debug/persisters/persister-electric-sql.js +7 -2
  31. package/lib/debug/persisters/persister-expo-sqlite-next.js +6 -2
  32. package/lib/debug/persisters/persister-expo-sqlite.js +6 -2
  33. package/lib/debug/persisters/persister-indexed-db.js +1 -0
  34. package/lib/debug/persisters/persister-sqlite-wasm.js +6 -2
  35. package/lib/debug/persisters/persister-sqlite3.js +6 -2
  36. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  37. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  38. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  39. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  40. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  41. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  42. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  43. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  44. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  45. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  46. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  47. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  48. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  49. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  50. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  51. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  52. package/lib/persisters/persister-electric-sql.js +1 -1
  53. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  54. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  55. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  56. package/lib/persisters/persister-expo-sqlite.js +1 -1
  57. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  58. package/lib/persisters/persister-indexed-db.js +1 -1
  59. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  60. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  61. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  62. package/lib/persisters/persister-sqlite3.js +1 -1
  63. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  64. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  65. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  66. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  67. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  68. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  69. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  70. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  71. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  72. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  73. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  74. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  75. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  76. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  77. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  78. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  79. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  80. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  81. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  82. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  83. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  84. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  85. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  86. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  87. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  88. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  89. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  90. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  91. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  92. package/package.json +17 -17
  93. package/readme.md +1 -1
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,n="tinybase",t=",",l=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=n=>e(n)==l,c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",E=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),N=L.keys,S=L.freeze,g=(e=[])=>L.fromEntries(e),x=(...e)=>L.assign({},...e),D=(e,n)=>m(L.entries(e),(([e,t])=>n(t,e))),C=e=>L.values(e),I=e=>s(N(e)),j=e=>(e=>!u(e)&&a(R(e),(e=>e==L.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),_=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},F=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return m([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},B=(e,n,t)=>u(t)?(w(e,n),e):null==e?void 0:e.set(n,t),H=(e,n,t)=>(T(e,n)||B(e,n,t()),F(e,n)),W=(e,n,t,l=B)=>(D(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),k=e=>new Set(Array.isArray(e)||u(e)?e:[e]),q=(e,n)=>null==e?void 0:e.add(n);var Y=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,n,t)=>n in e?Y(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&V(e,t,n[t]);if(G)for(var t of G(n))U.call(n,t)&&V(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Q=h+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,l)=>{const o=_();return[()=>K(void 0,null,(function*(){return W(o,g(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>K(void 0,[n],(function*({name:n}){return[n,g(m(yield e(h+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>B(o,n,W(H(o,n,_),t,((e,n,t)=>{t!=F(e,n)&&B(e,n,t)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,t)=>K(void 0,null,(function*(){return((e,n)=>!u(F(F(o,e),n)))(n,t)?g(b(m(yield e(Q+p(n)),(e=>{return[e[t],(n=z({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!u(e)&&!j(n)))):{}})),(n,l,r,i,a,d=!1)=>K(void 0,null,(function*(){const c=k();D(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>q(c,e)))));const s=A(c);if(!d&&a&&O(s)&&T(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(s)||T(o,n)){const t=F(o,n),r=k(M(t));yield v([...m(s,(l=>K(void 0,null,(function*(){w(r,l)||(yield e(`ALTER TABLE${p(n)}ADD${p(l)}`),B(t,l,""))})))),...!d&&i?m(A(r),(o=>K(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(t,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(l)} PRIMARY KEY ON CONFLICT REPLACE${E(m(s,(e=>t+p(e))))});`),B(o,n,_([[l,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield v(D(r,((t,o)=>K(void 0,null,(function*(){u(t)?yield e("DELETE FROM"+p(n)+Z+p(l)+"=?",[o]):O(s)||(yield ne(e,n,l,N(t),[o,...C(t)]))})))));else if(O(s))T(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const t=b(M(F(o,n)),(e=>e!=l)),i=[],u=[];D(null!=r?r:{},((e,n)=>{P(i,n,...m(t,(n=>null==e?void 0:e[n]))),P(u,n)})),yield ne(e,n,l,t,i),yield e("DELETE FROM"+p(n)+Z+p(l)+"NOT IN("+te(u)+")",u)}})),n=>K(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},ne=(e,n,l,r,i)=>K(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(l)+E(m(r,(e=>t+p(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+p(l)+")DO UPDATE SET"+E(m(r,(e=>p(e)+"=excluded."+p(e))),t),i)})),te=e=>E(m(e,(()=>"?")),t),le=JSON.parse;var oe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const re=_(),ie=_(),ue=(e,n,t,l,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();j(t)&&j(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return P(F(ie,c),...e),yield oe(void 0,null,(function*(){if(!F(re,c)){for(B(re,c,1);!u((e=F(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>d),S(E)};var ae=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const de="store",ce=(e,n,t,l,o,[r],i,u)=>{const[a,d,c,s]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield a(),le(null!=(n=null==(e=(yield d(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,t;yield a(),yield c(r,f,{[y]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,["getDb",u],u)};var se=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ve=(e,n,t,l,o,[r,i,[a,d,c]],s,p)=>{const[h,E,m,O]=ee(n,s,o),P=(e,n)=>se(void 0,null,(function*(){return yield v($(i,((t,l)=>se(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield m(t,l,u,o,r,n))})))))})),T=(e,n)=>se(void 0,null,(function*(){return d?yield m(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){yield h();const e=yield se(void 0,null,(function*(){return g(b(yield v($(r,((e,n)=>se(void 0,[e,n],(function*([e,n],t){return[e,yield E(t,n)]}))))),(e=>!j(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield E(c,f))[y]:{}}));return j(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){if(yield h(),u(n)){const[n,t]=e();yield P(n),yield T(t)}else{const[e,t]=n();yield P(e,!0),yield T(t,!0)}}))))}))),t,l,o,["getDb",p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[Ee]:n+"_values"},be=(e,n,t,l)=>{const o=_();return D(e,((e,r)=>{const i=c(C(x(n,d(e)?{[t]:e}:e)),0,I(n));u(i[0])||l(r,i[0])||B(o,r,i)})),o};var Pe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Te="pragma ",Ae="data_version",we="schema_version",Le=(e,t,l,o,r,u,a,s)=>{let v,y,p;const[E,m,O,b]=(e=>{const t=(e=>x(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[fe];if(t.mode==ye){const{storeTableName:e=n}=t;return[1,l,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=t,u=c(C(x(Oe,i)),0,I(Oe)),a=u[2],s=k(a);return[0,l,[be(o,{[he]:null,[pe]:f},he,(e=>q(s,e)&&e==a)),be(r,{[Ee]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>q(s,n)&&n==a)),u],s]})(t);return(E?ce:ve)(e,u?(e,n)=>Pe(void 0,null,(function*(){return u(e,n),yield l(e,n)})):l,(e=>{return[(n=()=>Pe(void 0,null,(function*(){try{const n=(yield l(Te+Ae))[0][Ae],t=(yield l(Te+we))[0][we],o=(yield l(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=v?v:v=n)&&t==(null!=y?y:y=t)&&o==(null!=p?p:p=o)||(e(),v=n,y=t)}catch(e){}})),t=m,n(),setInterval(n,1e3*t)),o((n=>b.has(n)?e():0))];var n,t}),(([e,n])=>{i(e),v=y=null,r(n)}),a,O,A(b),s)};var Re=Object.defineProperty,Ne=Object.getOwnPropertySymbols,Se=Object.prototype.hasOwnProperty,ge=Object.prototype.propertyIsEnumerable,xe=(e,n,t)=>n in e?Re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;exports.createSqliteWasmPersister=(e,n,t,l,o,r)=>Le(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))Se.call(n,t)&&xe(e,t,n[t]);if(Ne)for(var t of Ne(n))ge.call(n,t)&&xe(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,t);
1
+ "use strict";const e=e=>typeof e,n="tinybase",t=",",l=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,t)=>u(e)?null==t?void 0:t():n(e),d=n=>e(n)==l,c=(e,n,t)=>e.slice(n,t),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",E=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),b=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),T=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},A=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),L=Object,R=e=>L.getPrototypeOf(e),N=L.keys,S=L.freeze,g=(e=[])=>L.fromEntries(e),x=(...e)=>L.assign({},...e),C=(e,n)=>m(L.entries(e),(([e,t])=>n(t,e))),D=e=>L.values(e),I=e=>s(N(e)),j=e=>(e=>!u(e)&&a(R(e),(e=>e==L.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),_=e=>new Map(e),M=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},F=(e,n)=>null==e?void 0:e.get(n),$=(e,n)=>{var t;return m([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},B=(e,n,t)=>u(t)?(w(e,n),e):null==e?void 0:e.set(n,t),H=(e,n,t)=>(T(e,n)||B(e,n,t()),F(e,n)),W=(e,n,t,l=B)=>(C(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),k=e=>new Set(Array.isArray(e)||u(e)?e:[e]),q=(e,n)=>null==e?void 0:e.add(n);var Y=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,U=Object.prototype.propertyIsEnumerable,V=(e,n,t)=>n in e?Y(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,z=(e,n)=>{for(var t in n||(n={}))J.call(n,t)&&V(e,t,n[t]);if(G)for(var t of G(n))U.call(n,t)&&V(e,t,n[t]);return e},K=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Q=h+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,l)=>{const o=_();return[()=>K(void 0,null,(function*(){return W(o,g(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>K(void 0,[n],(function*({name:n}){return[n,g(m(yield e(h+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>B(o,n,W(H(o,n,_),t,((e,n,t)=>{t!=F(e,n)&&B(e,n,t)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,t)=>K(void 0,null,(function*(){return((e,n)=>!u(F(F(o,e),n)))(n,t)?g(b(m(yield e(Q+p(n)),(e=>{return[e[t],(n=z({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!u(e)&&!j(n)))):{}})),(n,l,r,i,a,d=!1)=>K(void 0,null,(function*(){const c=k();C(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>q(c,e)))));const s=A(c);if(!d&&a&&O(s)&&T(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(s)||T(o,n)){const t=F(o,n),r=k(M(t));yield v([...m(s,(l=>K(void 0,null,(function*(){w(r,l)||(yield e(`ALTER TABLE${p(n)}ADD${p(l)}`),B(t,l,""))})))),...!d&&i?m(A(r),(o=>K(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(t,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(l)} PRIMARY KEY ON CONFLICT REPLACE${E(m(s,(e=>t+p(e))))});`),B(o,n,_([[l,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield v(C(r,((t,o)=>K(void 0,null,(function*(){u(t)?yield e("DELETE FROM"+p(n)+Z+p(l)+"=?",[o]):O(s)||(yield ne(e,n,l,N(t),[o,...D(t)]))})))));else if(O(s))T(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const t=b(M(F(o,n)),(e=>e!=l)),i=[],u=[];C(null!=r?r:{},((e,n)=>{P(i,n,...m(t,(n=>null==e?void 0:e[n]))),P(u,n)})),yield ne(e,n,l,t,i),yield e("DELETE FROM"+p(n)+Z+p(l)+"NOT IN("+te(u)+")",u)}})),n=>K(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},ne=(e,n,l,r,i)=>K(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(l)+E(m(r,(e=>t+p(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+p(l)+")DO UPDATE SET"+E(m(r,(e=>p(e)+"=excluded."+p(e))),t),i)})),te=e=>E(m(e,(()=>"?")),t),le=JSON.parse;var oe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const re=_(),ie=_(),ue=(e,n,t,l,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>oe(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>oe(void 0,null,(function*(){if(l){const n=l();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>oe(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>oe(void 0,null,(function*(){return yield E.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();j(t)&&j(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,E),schedule:(...e)=>oe(void 0,null,(function*(){return P(F(ie,c),...e),yield oe(void 0,null,(function*(){if(!F(re,c)){for(B(re,c,1);!u((e=F(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>d),S(E)};var ae=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const de="store",ce=(e,n,t,l,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),le(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,t;yield d(),yield s(r,f,{[y]:{[de]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?L.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,[a,u],u)};var se=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ve=(e,n,t,l,o,[r,i,[a,d,c]],s,p,h)=>{const[E,m,O,P]=ee(n,s,o),T=(e,n)=>se(void 0,null,(function*(){return yield v($(i,((t,l)=>se(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield O(t,l,u,o,r,n))})))))})),A=(e,n)=>se(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield P((()=>se(void 0,null,(function*(){yield E();const e=yield se(void 0,null,(function*(){return g(b(yield v($(r,((e,n)=>se(void 0,[e,n],(function*([e,n],t){return[e,yield m(t,n)]}))))),(e=>!j(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return j(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield P((()=>se(void 0,null,(function*(){if(yield E(),u(n)){const[n,t]=e();yield T(n),yield A(t)}else{const[e,t]=n();yield T(e,!0),yield A(t,!0)}}))))}))),t,l,o,[h,p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",he="tableId",Ee="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[Ee]:n+"_values"},be=(e,n,t,l)=>{const o=_();return C(e,((e,r)=>{const i=c(D(x(n,d(e)?{[t]:e}:e)),0,I(n));u(i[0])||l(r,i[0])||B(o,r,i)})),o};var Pe=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Te="pragma ",Ae="data_version",we="schema_version",Le=(e,t,l,o,r,u,a,s,v="getDb")=>{let y,p,E;const[m,O,b,P]=(e=>{const t=(e=>x(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),l=t[fe];if(t.mode==ye){const{storeTableName:e=n}=t;return[1,l,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=t,u=c(D(x(Oe,i)),0,I(Oe)),a=u[2],s=k(a);return[0,l,[be(o,{[he]:null,[pe]:f},he,(e=>q(s,e)&&e==a)),be(r,{[Ee]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},Ee,((e,n)=>q(s,n)&&n==a)),u],s]})(t);return(m?ce:ve)(e,u?(e,n)=>Pe(void 0,null,(function*(){return u(e,n),yield l(e,n)})):l,(e=>{return[(n=()=>Pe(void 0,null,(function*(){try{const n=(yield l(Te+Ae))[0][Ae],t=(yield l(Te+we))[0][we],o=(yield l(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&t==(null!=p?p:p=t)&&o==(null!=E?E:E=o)||(e(),y=n,p=t)}catch(e){}})),t=O,n(),setInterval(n,1e3*t)),o((n=>P.has(n)?e():0))];var n,t}),(([e,n])=>{i(e),y=p=null,r(n)}),a,b,A(P),s,v)};var Re=Object.defineProperty,Ne=Object.getOwnPropertySymbols,Se=Object.prototype.hasOwnProperty,ge=Object.prototype.propertyIsEnumerable,xe=(e,n,t)=>n in e?Re(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;exports.createSqliteWasmPersister=(e,n,t,l,o,r)=>Le(e,l,((e,...n)=>{return l=[e,...n],o=function*(e,n=[]){return t.exec(e,{bind:n,rowMode:"object",returnValue:"resultRows"}).map((e=>((e,n)=>{for(var t in n||(n={}))Se.call(n,t)&&xe(e,t,n[t]);if(Ne)for(var t of Ne(n))ge.call(n,t)&&xe(e,t,n[t]);return e})({},e)))},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.capi.sqlite3_update_hook(t,((n,t,l,o)=>e(o)),0)),(()=>n.capi.sqlite3_update_hook(t,(()=>0),0)),o,r,t);
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},b=(e,n)=>null==e?void 0:e.delete(n),w=Object,R=e=>w.getPrototypeOf(e),N=w.keys,S=w.freeze,g=(e=[])=>w.fromEntries(e),D=(...e)=>w.assign({},...e),x=(e,n)=>m(w.entries(e),(([e,l])=>n(l,e))),C=e=>w.values(e),I=e=>s(N(e)),F=e=>(e=>!u(e)&&a(R(e),(e=>e==w.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(b(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(P(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(x(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,g(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,g(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?g(T(m(yield e(Q+h(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();x(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const s=L(c);if(!d&&a&&O(s)&&P(o,n))return yield e("DROP TABLE"+h(n)),void B(o,n);if(O(s)||P(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){b(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),B(l,t,""))})))),...!d&&i?m(L(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+h(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield v(x(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+Z+h(t)+"=?",[o]):O(s)||(yield ne(e,n,t,N(l),[o,...C(l)]))})))));else if(O(s))P(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];x(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+h(n)+Z+h(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,h=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),S(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u)=>{const[a,d,c,s]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield a(),te(null!=(n=null==(e=(yield d(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,l;yield a(),yield c(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,["getDb",u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,h)=>{const[E,p,m,O]=ee(n,s,o),A=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield m(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return d?yield m(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){yield E();const e=yield se(void 0,null,(function*(){return g(T(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield p(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield p(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){if(yield E(),u(n)){const[n,l]=e();yield A(n),yield P(l)}else{const[e,l]=n();yield A(e,!0),yield P(l,!0)}}))))}))),l,t,o,["getDb",h],h)},ye="json",fe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",pe="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[pe]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return x(e,((e,r)=>{const i=c(C(D(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",Le="data_version",be="schema_version",we=(e,l,t,o,r,u,a,s)=>{let v,y,h;const[p,m,O,T]=(e=>{const l=(e=>D(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(C(D(Oe,i)),0,I(Oe)),a=u[2],s=Y(a);return[0,t,[Te(o,{[Ee]:null,[he]:f},Ee,(e=>k(s,e)&&e==a)),Te(r,{[pe]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(p?ce:ve)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Pe+Le))[0][Le],l=(yield t(Pe+be))[0][be],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=v?v:v=n)&&l==(null!=y?y:y=l)&&o==(null!=h?h:h=o)||(e(),v=n,y=l)}catch(e){}})),l=m,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),v=y=null,r(n)}),a,O,L(T),s)},Re="change";exports.createSqlite3Persister=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield(t=(t,o)=>n.all(e,l,((e,n)=>e?o(e):t(n))),new r(t));var t},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>{const l=(n,l,t)=>e(t);return n.on(Re,l),l}),(e=>n.off(Re,e)),t,o,n);
1
+ "use strict";const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},w=(e,n)=>null==e?void 0:e.delete(n),R=Object,b=e=>R.getPrototypeOf(e),N=R.keys,S=R.freeze,g=(e=[])=>R.fromEntries(e),x=(...e)=>R.assign({},...e),C=(e,n)=>m(R.entries(e),(([e,l])=>n(l,e))),D=e=>R.values(e),I=e=>s(N(e)),F=e=>(e=>!u(e)&&a(b(e),(e=>e==R.prototype||u(b(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(w(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(P(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(C(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,g(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,g(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?g(T(m(yield e(Q+h(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();C(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const s=L(c);if(!d&&a&&O(s)&&P(o,n))return yield e("DROP TABLE"+h(n)),void B(o,n);if(O(s)||P(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){w(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),B(l,t,""))})))),...!d&&i?m(L(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+h(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield v(C(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+Z+h(t)+"=?",[o]):O(s)||(yield ne(e,n,t,N(l),[o,...D(l)]))})))));else if(O(s))P(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];C(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+h(n)+Z+h(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,h=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),S(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,h,E)=>{const[p,m,O,A]=ee(n,s,o),P=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),L=(e,n)=>se(void 0,null,(function*(){return d?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield p();const e=yield se(void 0,null,(function*(){return g(T(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield P(n),yield L(l)}else{const[e,l]=n();yield P(e,!0),yield L(l,!0)}}))))}))),l,t,o,[E,h],h)},ye="json",fe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",pe="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[pe]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return C(e,((e,r)=>{const i=c(D(x(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",Le="data_version",we="schema_version",Re=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,h,p;const[m,O,T,A]=(e=>{const l=(e=>x(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(D(x(Oe,i)),0,I(Oe)),a=u[2],s=Y(a);return[0,t,[Te(o,{[Ee]:null,[he]:f},Ee,(e=>k(s,e)&&e==a)),Te(r,{[pe]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(m?ce:ve)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Pe+Le))[0][Le],l=(yield t(Pe+we))[0][we],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=h?h:h=l)&&o==(null!=p?p:p=o)||(e(),y=n,h=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=h=null,r(n)}),a,T,L(A),s,v)},be="change";exports.createSqlite3Persister=(e,n,l,t,o)=>Re(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield(t=(t,o)=>n.all(e,l,((e,n)=>e?o(e):t(n))),new r(t));var t},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>{const l=(n,l,t)=>e(t);return n.on(be,l),l}),(e=>n.off(be,e)),t,o,n);
@@ -513,6 +513,7 @@ const createJsonSqlitePersister = (
513
513
  [storeTableName],
514
514
  managedTableNames,
515
515
  db,
516
+ getThing,
516
517
  ) => {
517
518
  const [refreshSchema, loadTable, saveTable, transaction] =
518
519
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -545,7 +546,7 @@ const createJsonSqlitePersister = (
545
546
  addPersisterListener,
546
547
  delPersisterListener,
547
548
  onIgnoredError,
548
- ['getDb', db],
549
+ [getThing, db],
549
550
  db,
550
551
  );
551
552
  return persister;
@@ -564,6 +565,7 @@ const createTabularSqlitePersister = (
564
565
  ],
565
566
  managedTableNames,
566
567
  db,
568
+ getThing,
567
569
  ) => {
568
570
  const [refreshSchema, loadTable, saveTable, transaction] =
569
571
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -650,7 +652,7 @@ const createTabularSqlitePersister = (
650
652
  addPersisterListener,
651
653
  delPersisterListener,
652
654
  onIgnoredError,
653
- ['getDb', db],
655
+ [getThing, db],
654
656
  db,
655
657
  );
656
658
  return persister;
@@ -761,6 +763,7 @@ const createSqlitePersister = (
761
763
  onSqlCommand,
762
764
  onIgnoredError,
763
765
  db,
766
+ getThing = 'getDb',
764
767
  ) => {
765
768
  let dataVersion;
766
769
  let schemaVersion;
@@ -822,6 +825,7 @@ const createSqlitePersister = (
822
825
  defaultedConfig,
823
826
  collValues(managedTableNamesSet),
824
827
  db,
828
+ getThing,
825
829
  );
826
830
  };
827
831
 
@@ -514,6 +514,7 @@ const createJsonSqlitePersister = (
514
514
  [storeTableName],
515
515
  managedTableNames,
516
516
  db,
517
+ getThing,
517
518
  ) => {
518
519
  const [refreshSchema, loadTable, saveTable, transaction] =
519
520
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -546,7 +547,7 @@ const createJsonSqlitePersister = (
546
547
  addPersisterListener,
547
548
  delPersisterListener,
548
549
  onIgnoredError,
549
- ['getDb', db],
550
+ [getThing, db],
550
551
  db,
551
552
  );
552
553
  return persister;
@@ -565,6 +566,7 @@ const createTabularSqlitePersister = (
565
566
  ],
566
567
  managedTableNames,
567
568
  db,
569
+ getThing,
568
570
  ) => {
569
571
  const [refreshSchema, loadTable, saveTable, transaction] =
570
572
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -651,7 +653,7 @@ const createTabularSqlitePersister = (
651
653
  addPersisterListener,
652
654
  delPersisterListener,
653
655
  onIgnoredError,
654
- ['getDb', db],
656
+ [getThing, db],
655
657
  db,
656
658
  );
657
659
  return persister;
@@ -762,6 +764,7 @@ const createSqlitePersister = (
762
764
  onSqlCommand,
763
765
  onIgnoredError,
764
766
  db,
767
+ getThing = 'getDb',
765
768
  ) => {
766
769
  let dataVersion;
767
770
  let schemaVersion;
@@ -823,6 +826,7 @@ const createSqlitePersister = (
823
826
  defaultedConfig,
824
827
  collValues(managedTableNamesSet),
825
828
  db,
829
+ getThing,
826
830
  );
827
831
  };
828
832
 
@@ -848,6 +852,7 @@ const createElectricSqlPersister = (
848
852
  onSqlCommand,
849
853
  onIgnoredError,
850
854
  electricClient,
855
+ 'getElectricClient',
851
856
  );
852
857
 
853
858
  export {createElectricSqlPersister};
@@ -515,6 +515,7 @@ const createJsonSqlitePersister = (
515
515
  [storeTableName],
516
516
  managedTableNames,
517
517
  db,
518
+ getThing,
518
519
  ) => {
519
520
  const [refreshSchema, loadTable, saveTable, transaction] =
520
521
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -547,7 +548,7 @@ const createJsonSqlitePersister = (
547
548
  addPersisterListener,
548
549
  delPersisterListener,
549
550
  onIgnoredError,
550
- ['getDb', db],
551
+ [getThing, db],
551
552
  db,
552
553
  );
553
554
  return persister;
@@ -566,6 +567,7 @@ const createTabularSqlitePersister = (
566
567
  ],
567
568
  managedTableNames,
568
569
  db,
570
+ getThing,
569
571
  ) => {
570
572
  const [refreshSchema, loadTable, saveTable, transaction] =
571
573
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -652,7 +654,7 @@ const createTabularSqlitePersister = (
652
654
  addPersisterListener,
653
655
  delPersisterListener,
654
656
  onIgnoredError,
655
- ['getDb', db],
657
+ [getThing, db],
656
658
  db,
657
659
  );
658
660
  return persister;
@@ -763,6 +765,7 @@ const createSqlitePersister = (
763
765
  onSqlCommand,
764
766
  onIgnoredError,
765
767
  db,
768
+ getThing = 'getDb',
766
769
  ) => {
767
770
  let dataVersion;
768
771
  let schemaVersion;
@@ -824,6 +827,7 @@ const createSqlitePersister = (
824
827
  defaultedConfig,
825
828
  collValues(managedTableNamesSet),
826
829
  db,
830
+ getThing,
827
831
  );
828
832
  };
829
833
 
@@ -513,6 +513,7 @@ const createJsonSqlitePersister = (
513
513
  [storeTableName],
514
514
  managedTableNames,
515
515
  db,
516
+ getThing,
516
517
  ) => {
517
518
  const [refreshSchema, loadTable, saveTable, transaction] =
518
519
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -545,7 +546,7 @@ const createJsonSqlitePersister = (
545
546
  addPersisterListener,
546
547
  delPersisterListener,
547
548
  onIgnoredError,
548
- ['getDb', db],
549
+ [getThing, db],
549
550
  db,
550
551
  );
551
552
  return persister;
@@ -564,6 +565,7 @@ const createTabularSqlitePersister = (
564
565
  ],
565
566
  managedTableNames,
566
567
  db,
568
+ getThing,
567
569
  ) => {
568
570
  const [refreshSchema, loadTable, saveTable, transaction] =
569
571
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -650,7 +652,7 @@ const createTabularSqlitePersister = (
650
652
  addPersisterListener,
651
653
  delPersisterListener,
652
654
  onIgnoredError,
653
- ['getDb', db],
655
+ [getThing, db],
654
656
  db,
655
657
  );
656
658
  return persister;
@@ -761,6 +763,7 @@ const createSqlitePersister = (
761
763
  onSqlCommand,
762
764
  onIgnoredError,
763
765
  db,
766
+ getThing = 'getDb',
764
767
  ) => {
765
768
  let dataVersion;
766
769
  let schemaVersion;
@@ -822,6 +825,7 @@ const createSqlitePersister = (
822
825
  defaultedConfig,
823
826
  collValues(managedTableNamesSet),
824
827
  db,
828
+ getThing,
825
829
  );
826
830
  };
827
831
 
@@ -252,6 +252,7 @@ const createIndexedDbPersister = (
252
252
  request.result.close();
253
253
  resolve(result);
254
254
  } catch (e) {
255
+ request.result.close();
255
256
  reject(e);
256
257
  }
257
258
  };
@@ -513,6 +513,7 @@ const createJsonSqlitePersister = (
513
513
  [storeTableName],
514
514
  managedTableNames,
515
515
  db,
516
+ getThing,
516
517
  ) => {
517
518
  const [refreshSchema, loadTable, saveTable, transaction] =
518
519
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -545,7 +546,7 @@ const createJsonSqlitePersister = (
545
546
  addPersisterListener,
546
547
  delPersisterListener,
547
548
  onIgnoredError,
548
- ['getDb', db],
549
+ [getThing, db],
549
550
  db,
550
551
  );
551
552
  return persister;
@@ -564,6 +565,7 @@ const createTabularSqlitePersister = (
564
565
  ],
565
566
  managedTableNames,
566
567
  db,
568
+ getThing,
567
569
  ) => {
568
570
  const [refreshSchema, loadTable, saveTable, transaction] =
569
571
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -650,7 +652,7 @@ const createTabularSqlitePersister = (
650
652
  addPersisterListener,
651
653
  delPersisterListener,
652
654
  onIgnoredError,
653
- ['getDb', db],
655
+ [getThing, db],
654
656
  db,
655
657
  );
656
658
  return persister;
@@ -761,6 +763,7 @@ const createSqlitePersister = (
761
763
  onSqlCommand,
762
764
  onIgnoredError,
763
765
  db,
766
+ getThing = 'getDb',
764
767
  ) => {
765
768
  let dataVersion;
766
769
  let schemaVersion;
@@ -822,6 +825,7 @@ const createSqlitePersister = (
822
825
  defaultedConfig,
823
826
  collValues(managedTableNamesSet),
824
827
  db,
828
+ getThing,
825
829
  );
826
830
  };
827
831
 
@@ -514,6 +514,7 @@ const createJsonSqlitePersister = (
514
514
  [storeTableName],
515
515
  managedTableNames,
516
516
  db,
517
+ getThing,
517
518
  ) => {
518
519
  const [refreshSchema, loadTable, saveTable, transaction] =
519
520
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -546,7 +547,7 @@ const createJsonSqlitePersister = (
546
547
  addPersisterListener,
547
548
  delPersisterListener,
548
549
  onIgnoredError,
549
- ['getDb', db],
550
+ [getThing, db],
550
551
  db,
551
552
  );
552
553
  return persister;
@@ -565,6 +566,7 @@ const createTabularSqlitePersister = (
565
566
  ],
566
567
  managedTableNames,
567
568
  db,
569
+ getThing,
568
570
  ) => {
569
571
  const [refreshSchema, loadTable, saveTable, transaction] =
570
572
  getCommandFunctions(cmd, managedTableNames, onIgnoredError);
@@ -651,7 +653,7 @@ const createTabularSqlitePersister = (
651
653
  addPersisterListener,
652
654
  delPersisterListener,
653
655
  onIgnoredError,
654
- ['getDb', db],
656
+ [getThing, db],
655
657
  db,
656
658
  );
657
659
  return persister;
@@ -762,6 +764,7 @@ const createSqlitePersister = (
762
764
  onSqlCommand,
763
765
  onIgnoredError,
764
766
  db,
767
+ getThing = 'getDb',
765
768
  ) => {
766
769
  let dataVersion;
767
770
  let schemaVersion;
@@ -823,6 +826,7 @@ const createSqlitePersister = (
823
826
  defaultedConfig,
824
827
  collValues(managedTableNamesSet),
825
828
  db,
829
+ getThing,
826
830
  );
827
831
  };
828
832
 
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,d=(e,n,l)=>u(e)?null==l?void 0:l():n(e),a=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",h=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},b=(e,n)=>null==e?void 0:e.delete(n),R=Object,w=e=>R.getPrototypeOf(e),N=R.keys,x=R.freeze,D=(e=[])=>R.fromEntries(e),S=(...e)=>R.assign({},...e),g=(e,n)=>m(R.entries(e),(([e,l])=>n(l,e))),C=e=>R.values(e),I=e=>v(N(e)),F=e=>(e=>!u(e)&&d(w(e),(e=>e==R.prototype||u(w(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(b(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(L(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(g(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),U=e=>new Set(Array.isArray(e)||u(e)?e:[e]),Y=(e,n)=>null==e?void 0:e.add(n);var k=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?k(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))J.call(n,l)&&K(e,l,n[l]);if(G)for(var l of G(n))z.call(n,l)&&K(e,l,n[l]);return e},q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>q(void 0,null,(function*(){return W(o,D(yield s(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>q(void 0,[n],(function*({name:n}){return[n,D(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>q(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?D(T(m(yield e(Q+p(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,d,a=!1)=>q(void 0,null,(function*(){const c=U();g(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>Y(c,e)))));const v=P(c);if(!a&&d&&O(v)&&L(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(v)||L(o,n)){const l=_(o,n),r=U($(l));yield s([...m(v,(t=>q(void 0,null,(function*(){b(r,t)||(yield e(`ALTER TABLE${p(n)}ADD${p(t)}`),B(l,t,""))})))),...!a&&i?m(P(r),(o=>q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(t)} PRIMARY KEY ON CONFLICT REPLACE${h(m(v,(e=>l+p(e))))});`),B(o,n,M([[t,""],...m(v,(e=>[e,""]))]));if(a)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield s(g(r,((l,o)=>q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+p(n)+Z+p(t)+"=?",[o]):O(v)||(yield ne(e,n,t,N(l),[o,...C(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];g(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+p(n)+Z+p(t)+"NOT IN("+le(u)+")",u)}})),n=>q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>q(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(t)+h(m(r,(e=>l+p(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+p(t)+")DO UPDATE SET"+h(m(r,(e=>p(e)+"=excluded."+p(e))),l),i)})),le=e=>h(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,a]=[],c=[])=>{let v,s,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>oe(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}B(re,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>a),x(h)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ae="store",ce=(e,n,l,t,o,[r],i,u)=>{const[d,a,c,v]=ee(n,i,o);return ue(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield a(r,f))[y])?void 0:e[ae])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,l;yield d(),yield c(r,f,{[y]:{[ae]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,["getDb",u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const se=(e,n,l,t,o,[r,i,[d,a,c]],v,p)=>{const[E,h,m,O]=ee(n,v,o),A=(e,n)=>ve(void 0,null,(function*(){return yield s(j(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield m(l,t,u,o,r,n))})))))})),L=(e,n)=>ve(void 0,null,(function*(){return a?yield m(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>ve(void 0,null,(function*(){return yield O((()=>ve(void 0,null,(function*(){yield E();const e=yield ve(void 0,null,(function*(){return D(T(yield s(j(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield h(l,n)]}))))),(e=>!F(e[1]))))})),n=yield ve(void 0,null,(function*(){return d?(yield h(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield O((()=>ve(void 0,null,(function*(){if(yield E(),u(n)){const[n,l]=e();yield A(n),yield L(l)}else{const[e,l]=n();yield A(e,!0),yield L(l,!0)}}))))}))),l,t,o,["getDb",p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",Ee="tableId",he="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[he]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return g(e,((e,r)=>{const i=c(C(S(n,a(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",be="schema_version",Re=(e,l,t,o,r,u,d,v)=>{let s,y,p;const[h,m,O,T]=(e=>{const l=(e=>S(me,a(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],U(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(C(S(Oe,i)),0,I(Oe)),d=u[2],v=U(d);return[0,t,[Te(o,{[Ee]:null,[pe]:f},Ee,(e=>Y(v,e)&&e==d)),Te(r,{[he]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},he,((e,n)=>Y(v,n)&&n==d)),u],v]})(l);return(h?ce:se)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+be))[0][be],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=s?s:s=n)&&l==(null!=y?y:y=l)&&o==(null!=p?p:p=o)||(e(),s=n,y=l)}catch(e){}})),l=m,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),s=y=null,r(n)}),d,O,P(T),v)},we=(e,n,l,t,o)=>Re(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);export{we as createCrSqliteWasmPersister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,d=(e,n,l)=>u(e)?null==l?void 0:l():n(e),a=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),v=e=>e.length,s=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",p=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",h=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),O=e=>0==v(e),T=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},P=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},R=(e,n)=>null==e?void 0:e.delete(n),b=Object,w=e=>b.getPrototypeOf(e),N=b.keys,x=b.freeze,S=(e=[])=>b.fromEntries(e),C=(...e)=>b.assign({},...e),D=(e,n)=>m(b.entries(e),(([e,l])=>n(l,e))),g=e=>b.values(e),I=e=>v(N(e)),F=e=>(e=>!u(e)&&d(w(e),(e=>e==b.prototype||u(w(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(R(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(L(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(D(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),U=e=>new Set(Array.isArray(e)||u(e)?e:[e]),Y=(e,n)=>null==e?void 0:e.add(n);var k=Object.defineProperty,G=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?k(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))J.call(n,l)&&K(e,l,n[l]);if(G)for(var l of G(n))z.call(n,l)&&K(e,l,n[l]);return e},q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>q(void 0,null,(function*(){return W(o,S(yield s(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>q(void 0,[n],(function*({name:n}){return[n,S(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>q(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?S(T(m(yield e(Q+p(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,d,a=!1)=>q(void 0,null,(function*(){const c=U();D(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>Y(c,e)))));const v=P(c);if(!a&&d&&O(v)&&L(o,n))return yield e("DROP TABLE"+p(n)),void B(o,n);if(O(v)||L(o,n)){const l=_(o,n),r=U($(l));yield s([...m(v,(t=>q(void 0,null,(function*(){R(r,t)||(yield e(`ALTER TABLE${p(n)}ADD${p(t)}`),B(l,t,""))})))),...!a&&i?m(P(r),(o=>q(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${p(n)}DROP${p(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${p(n)}(${p(t)} PRIMARY KEY ON CONFLICT REPLACE${h(m(v,(e=>l+p(e))))});`),B(o,n,M([[t,""],...m(v,(e=>[e,""]))]));if(a)u(r)?yield e("DELETE FROM"+p(n)+"WHERE 1"):yield s(D(r,((l,o)=>q(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+p(n)+Z+p(t)+"=?",[o]):O(v)||(yield ne(e,n,t,N(l),[o,...g(l)]))})))));else if(O(v))L(o,n)&&(yield e("DELETE FROM"+p(n)+"WHERE 1"));else{const l=T($(_(o,n)),(e=>e!=t)),i=[],u=[];D(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+p(n)+Z+p(t)+"NOT IN("+le(u)+")",u)}})),n=>q(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>q(void 0,null,(function*(){return yield e("INSERT INTO"+p(n)+"("+p(t)+h(m(r,(e=>l+p(e))))+")VALUES"+c(o(`,(?${o(",?",v(r))})`,v(i)/(v(r)+1)),1)+"ON CONFLICT("+p(t)+")DO UPDATE SET"+h(m(r,(e=>p(e)+"=excluded."+p(e))),l),i)})),le=e=>h(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,a]=[],c=[])=>{let v,s,y,f=0,p=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>oe(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}B(re,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>a),x(h)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ae="store",ce=(e,n,l,t,o,[r],i,u,d)=>{const[a,c,v,s]=ee(n,i,o);return ue(e,(()=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var e,n;return yield a(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[ae])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var n,l;yield a(),yield v(r,f,{[y]:{[ae]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?b.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[d,u],u)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const se=(e,n,l,t,o,[r,i,[d,a,c]],v,p,E)=>{const[h,m,O,A]=ee(n,v,o),L=(e,n)=>ve(void 0,null,(function*(){return yield s(j(i,((l,t)=>ve(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield O(l,t,u,o,r,n))})))))})),P=(e,n)=>ve(void 0,null,(function*(){return a?yield O(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){yield h();const e=yield ve(void 0,null,(function*(){return S(T(yield s(j(r,((e,n)=>ve(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield ve(void 0,null,(function*(){return d?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>ve(void 0,null,(function*(){return yield A((()=>ve(void 0,null,(function*(){if(yield h(),u(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,p],p)},ye="json",fe="autoLoadIntervalSeconds",pe="rowIdColumnName",Ee="tableId",he="tableName",me={mode:ye,[fe]:1},Oe={load:0,save:0,[he]:n+"_values"},Te=(e,n,l,t)=>{const o=M();return D(e,((e,r)=>{const i=c(g(C(n,a(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Le="pragma ",Pe="data_version",Re="schema_version",be=(e,l,t,o,r,u,d,v,s="getDb")=>{let y,p,h;const[m,O,T,A]=(e=>{const l=(e=>C(me,a(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],U(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(g(C(Oe,i)),0,I(Oe)),d=u[2],v=U(d);return[0,t,[Te(o,{[Ee]:null,[pe]:f},Ee,(e=>Y(v,e)&&e==d)),Te(r,{[he]:null,[pe]:f,deleteEmptyColumns:0,deleteEmptyTable:0},he,((e,n)=>Y(v,n)&&n==d)),u],v]})(l);return(m?ce:se)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(Le+Pe))[0][Pe],l=(yield t(Le+Re))[0][Re],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=p?p:p=l)&&o==(null!=h?h:h=o)||(e(),y=n,p=l)}catch(e){}})),l=O,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=p=null,r(n)}),d,T,P(A),v,s)},we=(e,n,l,t,o)=>be(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n);export{we as createCrSqliteWasmPersister};
@@ -1 +1 @@
1
- const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),T=e=>0==s(e),O=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),w=Object,R=e=>w.getPrototypeOf(e),N=w.keys,g=w.freeze,D=(e=[])=>w.fromEntries(e),C=(...e)=>w.assign({},...e),S=(e,n)=>m(w.entries(e),(([e,l])=>n(l,e))),x=e=>w.values(e),I=e=>s(N(e)),F=e=>(e=>!u(e)&&a(R(e),(e=>e==w.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(P(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(b(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(S(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=E+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,D(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,D(m(yield e(E+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?D(O(m(yield e(Q+h(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();S(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const s=L(c);if(!d&&a&&T(s)&&b(o,n))return yield e("DROP TABLE"+h(n)),void B(o,n);if(T(s)||b(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){P(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),B(l,t,""))})))),...!d&&i?m(L(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+h(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield v(S(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+h(n)+Z+h(t)+"=?",[o]):T(s)||(yield ne(e,n,t,N(l),[o,...x(l)]))})))));else if(T(s))b(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=O($(_(o,n)),(e=>e!=t)),i=[],u=[];S(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+h(n)+Z+h(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+p(m(r,(e=>l+h(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+p(m(r,(e=>h(e)+"=excluded."+h(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,h=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const E=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield E((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),h=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield E((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(h&&(o(y),y=void 0,h=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),g(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u)=>{const[a,d,c,s]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var e,n;return yield a(),te(null!=(n=null==(e=(yield d(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield s((()=>ae(void 0,null,(function*(){var n,l;yield a(),yield c(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,["getDb",u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,h)=>{const[E,p,m,T]=ee(n,s,o),A=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield m(l,t,u,o,r,n))})))))})),b=(e,n)=>se(void 0,null,(function*(){return d?yield m(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield T((()=>se(void 0,null,(function*(){yield E();const e=yield se(void 0,null,(function*(){return D(O(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield p(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield p(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield T((()=>se(void 0,null,(function*(){if(yield E(),u(n)){const[n,l]=e();yield A(n),yield b(l)}else{const[e,l]=n();yield A(e,!0),yield b(l,!0)}}))))}))),l,t,o,["getDb",h],h)},ye="json",fe="autoLoadIntervalSeconds",he="rowIdColumnName",Ee="tableId",pe="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[pe]:n+"_values"},Oe=(e,n,l,t)=>{const o=M();return S(e,((e,r)=>{const i=c(x(C(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const be="pragma ",Le="data_version",Pe="schema_version",we=(e,l,t,o,r,u,a,s)=>{let v,y,h;const[p,m,T,O]=(e=>{const l=(e=>C(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(x(C(Te,i)),0,I(Te)),a=u[2],s=Y(a);return[0,t,[Oe(o,{[Ee]:null,[he]:f},Ee,(e=>k(s,e)&&e==a)),Oe(r,{[pe]:null,[he]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(p?ce:ve)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(be+Le))[0][Le],l=(yield t(be+Pe))[0][Pe],o=(yield t(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=v?v:v=n)&&l==(null!=y?y:y=l)&&o==(null!=h?h:h=o)||(e(),v=n,y=l)}catch(e){}})),l=m,n(),setInterval(n,1e3*l)),o((n=>O.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),v=y=null,r(n)}),a,T,L(O),s)},Re=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.db.raw({sql:e,args:l})},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.notifier.subscribeToDataChanges((l=>{return t=({tablename:n})=>e(n),n.notifier.alias(l).forEach(t);var t}))),(e=>e()),t,o,n);export{Re as createElectricSqlPersister};
1
+ const e=e=>typeof e,n="tinybase",l=",",t=e(""),o=(e,n)=>e.repeat(n),r=Promise,i=clearInterval,u=e=>null==e,a=(e,n,l)=>u(e)?null==l?void 0:l():n(e),d=n=>e(n)==t,c=(e,n,l)=>e.slice(n,l),s=e=>e.length,v=e=>{return n=function*(){return r.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},y="_",f="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",p=(e,n="")=>e.join(n),m=(e,n)=>e.map(n),T=e=>0==s(e),O=(e,n)=>e.filter(n),A=(e,...n)=>e.push(...n),b=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},L=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},P=(e,n)=>null==e?void 0:e.delete(n),w=Object,R=e=>w.getPrototypeOf(e),N=w.keys,g=w.freeze,C=(e=[])=>w.fromEntries(e),D=(...e)=>w.assign({},...e),S=(e,n)=>m(w.entries(e),(([e,l])=>n(l,e))),x=e=>w.values(e),I=e=>s(N(e)),F=e=>(e=>!u(e)&&a(R(e),(e=>e==w.prototype||u(R(e))),(()=>!0)))(e)&&0==I(e),M=e=>new Map(e),$=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},_=(e,n)=>null==e?void 0:e.get(n),j=(e,n)=>{var l;return m([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},B=(e,n,l)=>u(l)?(P(e,n),e):null==e?void 0:e.set(n,l),H=(e,n,l)=>(b(e,n)||B(e,n,l()),_(e,n)),W=(e,n,l,t=B)=>(S(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!u(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),Y=e=>new Set(Array.isArray(e)||u(e)?e:[e]),k=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable,z=(e,n,l)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,K=(e,n)=>{for(var l in n||(n={}))U.call(n,l)&&z(e,l,n[l]);if(J)for(var l of J(n))q.call(n,l)&&z(e,l,n[l]);return e},V=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Q=h+"*FROM",X="FROM pragma_table_",Z="WHERE",ee=(e,n,t)=>{const o=M();return[()=>V(void 0,null,(function*(){return W(o,C(yield v(m(yield e("SELECT name "+X+"list WHERE schema='main'AND type='table'AND name IN("+le(n)+")ORDER BY name",n),(n=>V(void 0,[n],(function*({name:n}){return[n,C(m(yield e(h+" name,type "+X+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>B(o,n,W(H(o,n,M),l,((e,n,l)=>{l!=_(e,n)&&B(e,n,l)}),((e,n)=>B(e,n))))),((e,n)=>B(o,n)))})),(n,l)=>V(void 0,null,(function*(){return((e,n)=>!u(_(_(o,e),n)))(n,l)?C(O(m(yield e(Q+E(n)),(e=>{return[e[l],(n=K({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!u(e)&&!F(n)))):{}})),(n,t,r,i,a,d=!1)=>V(void 0,null,(function*(){const c=Y();S(null!=r?r:{},(e=>m(N(null!=e?e:{}),(e=>k(c,e)))));const s=L(c);if(!d&&a&&T(s)&&b(o,n))return yield e("DROP TABLE"+E(n)),void B(o,n);if(T(s)||b(o,n)){const l=_(o,n),r=Y($(l));yield v([...m(s,(t=>V(void 0,null,(function*(){P(r,t)||(yield e(`ALTER TABLE${E(n)}ADD${E(t)}`),B(l,t,""))})))),...!d&&i?m(L(r),(o=>V(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),B(l,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(t)} PRIMARY KEY ON CONFLICT REPLACE${p(m(s,(e=>l+E(e))))});`),B(o,n,M([[t,""],...m(s,(e=>[e,""]))]));if(d)u(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield v(S(r,((l,o)=>V(void 0,null,(function*(){u(l)?yield e("DELETE FROM"+E(n)+Z+E(t)+"=?",[o]):T(s)||(yield ne(e,n,t,N(l),[o,...x(l)]))})))));else if(T(s))b(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const l=O($(_(o,n)),(e=>e!=t)),i=[],u=[];S(null!=r?r:{},((e,n)=>{A(i,n,...m(l,(n=>null==e?void 0:e[n]))),A(u,n)})),yield ne(e,n,t,l,i),yield e("DELETE FROM"+E(n)+Z+E(t)+"NOT IN("+le(u)+")",u)}})),n=>V(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},ne=(e,n,t,r,i)=>V(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(t)+p(m(r,(e=>l+E(e))))+")VALUES"+c(o(`,(?${o(",?",s(r))})`,s(i)/(s(r)+1)),1)+"ON CONFLICT("+E(t)+")DO UPDATE SET"+p(m(r,(e=>E(e)+"=excluded."+E(e))),l),i)})),le=e=>p(m(e,(()=>"?")),l),te=JSON.parse;var oe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const re=M(),ie=M(),ue=(e,n,l,t,o,r,[i,d]=[],c=[])=>{let s,v,y,f=0,E=0;H(re,c,(()=>0)),H(ie,c,(()=>[]));const h=e=>oe(void 0,null,(function*(){return 2!=f&&(f=1,yield p.schedule((()=>oe(void 0,null,(function*(){yield e(),f=0}))))),p})),p={load:(l,t)=>oe(void 0,null,(function*(){return yield h((()=>oe(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>oe(void 0,[...l],(function*(l={},o={}){return p.stopAutoLoad(),yield p.load(l,o),E=1,y=t(((l,t)=>oe(void 0,null,(function*(){if(t){const n=t();yield h((()=>oe(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>oe(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),p})),stopAutoLoad:()=>(E&&(o(y),y=void 0,E=0),p),save:n=>oe(void 0,null,(function*(){return 1!=f&&(f=2,yield p.schedule((()=>oe(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),p})),startAutoSave:()=>oe(void 0,null,(function*(){return yield p.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();F(l)&&F(t)||p.save((()=>[l,t]))})),p})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,p),schedule:(...e)=>oe(void 0,null,(function*(){return A(_(ie,c),...e),yield oe(void 0,null,(function*(){if(!_(re,c)){for(B(re,c,1);!u((e=_(ie,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}B(re,c,0)}var e})),p})),getStore:()=>e,destroy:()=>p.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(p[i]=()=>d),g(p)};var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de="store",ce=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,s,v]=ee(n,i,o);return ue(e,(()=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var e,n;return yield d(),te(null!=(n=null==(e=(yield c(r,f))[y])?void 0:e[de])?n:"null")}))))}))),(e=>ae(void 0,null,(function*(){return yield v((()=>ae(void 0,null,(function*(){var n,l;yield d(),yield s(r,f,{[y]:{[de]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ve=(e,n,l,t,o,[r,i,[a,d,c]],s,E,h)=>{const[p,m,T,A]=ee(n,s,o),b=(e,n)=>se(void 0,null,(function*(){return yield v(j(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield T(l,t,u,o,r,n))})))))})),L=(e,n)=>se(void 0,null,(function*(){return d?yield T(c,f,{[y]:e},!0,!0,n):null}));return ue(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield p();const e=yield se(void 0,null,(function*(){return C(O(yield v(j(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!F(e[1]))))})),n=yield se(void 0,null,(function*(){return a?(yield m(c,f))[y]:{}}));return F(e)&&u(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield p(),u(n)){const[n,l]=e();yield b(n),yield L(l)}else{const[e,l]=n();yield b(e,!0),yield L(l,!0)}}))))}))),l,t,o,[h,E],E)},ye="json",fe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",pe="tableName",me={mode:ye,[fe]:1},Te={load:0,save:0,[pe]:n+"_values"},Oe=(e,n,l,t)=>{const o=M();return S(e,((e,r)=>{const i=c(x(D(n,d(e)?{[l]:e}:e)),0,I(n));u(i[0])||t(r,i[0])||B(o,r,i)})),o};var Ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const be="pragma ",Le="data_version",Pe="schema_version",we=(e,l,t,o,r,u,a,s,v="getDb")=>{let y,E,p;const[m,T,O,A]=(e=>{const l=(e=>D(me,d(e)?{storeTableName:e}:null!=e?e:{}))(e),t=l[fe];if(l.mode==ye){const{storeTableName:e=n}=l;return[1,t,[e],Y(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=l,u=c(x(D(Te,i)),0,I(Te)),a=u[2],s=Y(a);return[0,t,[Oe(o,{[he]:null,[Ee]:f},he,(e=>k(s,e)&&e==a)),Oe(r,{[pe]:null,[Ee]:f,deleteEmptyColumns:0,deleteEmptyTable:0},pe,((e,n)=>k(s,n)&&n==a)),u],s]})(l);return(m?ce:ve)(e,u?(e,n)=>Ae(void 0,null,(function*(){return u(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Ae(void 0,null,(function*(){try{const n=(yield t(be+Le))[0][Le],l=(yield t(be+Pe))[0][Pe],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=E?E:E=l)&&o==(null!=p?p:p=o)||(e(),y=n,E=l)}catch(e){}})),l=T,n(),setInterval(n,1e3*l)),o((n=>A.has(n)?e():0))];var n,l}),(([e,n])=>{i(e),y=E=null,r(n)}),a,O,L(A),s,v)},Re=(e,n,l,t,o)=>we(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.db.raw({sql:e,args:l})},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.notifier.subscribeToDataChanges((l=>{return t=({tablename:n})=>e(n),n.notifier.alias(l).forEach(t);var t}))),(e=>e()),t,o,n,"getElectricClient");export{Re as createElectricSqlPersister};
@@ -1 +1 @@
1
- import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=e=>n(e)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",m=(e,n="")=>e.join(n),A=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),L=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),R=Object,w=e=>R.getPrototypeOf(e),x=R.keys,D=R.freeze,S=(e=[])=>R.fromEntries(e),g=(...e)=>R.assign({},...e),C=(e,n)=>A(R.entries(e),(([e,l])=>n(l,e))),I=e=>R.values(e),F=e=>s(x(e)),M=e=>(e=>!a(e)&&d(w(e),(e=>e==R.prototype||a(w(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return A([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>a(l)?(N(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(P(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(C(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||a(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(U)for(var l of U(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=h+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,l)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,S(yield y(A(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,S(A(yield e(h+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!a(j(j(o,e),n)))(n,l)?S(T(A(yield e(X+E(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!M(n)))):{}})),(n,l,r,i,u,d=!1)=>Q(void 0,null,(function*(){const c=k();C(null!=r?r:{},(e=>A(x(null!=e?e:{}),(e=>G(c,e)))));const v=b(c);if(!d&&u&&O(v)&&P(o,n))return yield e("DROP TABLE"+E(n)),void H(o,n);if(O(v)||P(o,n)){const t=j(o,n),r=k(_(t));yield y([...A(v,(l=>Q(void 0,null,(function*(){N(r,l)||(yield e(`ALTER TABLE${E(n)}ADD${E(l)}`),H(t,l,""))})))),...!d&&i?A(b(r),(o=>Q(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),H(t,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(l)} PRIMARY KEY ON CONFLICT REPLACE${m(A(v,(e=>t+E(e))))});`),H(o,n,$([[l,""],...A(v,(e=>[e,""]))]));if(d)a(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield y(C(r,((t,o)=>Q(void 0,null,(function*(){a(t)?yield e("DELETE FROM"+E(n)+ee+E(l)+"=?",[o]):O(v)||(yield le(e,n,l,x(t),[o,...I(t)]))})))));else if(O(v))P(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const t=T(_(j(o,n)),(e=>e!=l)),i=[],u=[];C(null!=r?r:{},((e,n)=>{L(i,n,...A(t,(n=>null==e?void 0:e[n]))),L(u,n)})),yield le(e,n,l,t,i),yield e("DELETE FROM"+E(n)+ee+E(l)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},le=(e,n,l,o,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(l)+m(A(o,(e=>t+E(e))))+")VALUES"+v(r(`,(?${r(",?",s(o))})`,s(i)/(s(o)+1)),1)+"ON CONFLICT("+E(l)+")DO UPDATE SET"+m(A(o,(e=>E(e)+"=excluded."+E(e))),t),i)})),te=e=>m(A(e,(()=>"?")),t),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),ae=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let v,s,y,f=0,p=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>re(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>re(void 0,null,(function*(){return L(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!a((e=j(ue,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>u),D(h)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",ve=(e,n,l,t,o,[r],i,u)=>{const[a,d,c,v]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var e,n;return yield a(),oe(null!=(n=null==(e=(yield d(r,p))[f])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield v((()=>de(void 0,null,(function*(){var n,l;yield a(),yield c(r,p,{[f]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,["getDb",u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[u,d,c]],v,s)=>{const[E,h,m,A]=ne(n,v,o),O=(e,n)=>se(void 0,null,(function*(){return yield y(B(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield m(l,t,u,o,r,n))})))))})),L=(e,n)=>se(void 0,null,(function*(){return d?yield m(c,p,{[f]:e},!0,!0,n):null}));return ae(e,(()=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){yield E();const e=yield se(void 0,null,(function*(){return S(T(yield y(B(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield h(l,n)]}))))),(e=>!M(e[1]))))})),n=yield se(void 0,null,(function*(){return u?(yield h(c,p))[f]:{}}));return M(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield A((()=>se(void 0,null,(function*(){if(yield E(),a(n)){const[n,l]=e();yield O(n),yield L(l)}else{const[e,l]=n();yield O(e,!0),yield L(l,!0)}}))))}))),l,t,o,["getDb",s],s)},fe="json",pe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",me="tableName",Ae={mode:fe,[pe]:1},Oe={load:0,save:0,[me]:l+"_values"},Te=(e,n,l,t)=>{const o=$();return C(e,((e,r)=>{const i=v(I(g(n,c(e)?{[l]:e}:e)),0,F(n));a(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",be="data_version",Ne="schema_version",Re=(e,n,t,o,r,i,a,d)=>{let s,y,f;const[E,m,A,O]=(e=>{const n=(e=>g(Ae,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[pe];if(n.mode==fe){const{storeTableName:e=l}=n;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v(I(g(Oe,i)),0,F(Oe)),a=u[2],d=k(a);return[0,t,[Te(o,{[he]:null,[Ee]:p},he,(e=>G(d,e)&&e==a)),Te(r,{[me]:null,[Ee]:p,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(d,n)&&n==a)),u],d]})(n);return(E?ve:ye)(e,i?(e,n)=>Le(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+be))[0][be],l=(yield t(Pe+Ne))[0][Ne],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=s?s:s=n)&&l==(null!=y?y:y=l)&&o==(null!=f?f:f=o)||(e(),s=n,y=l)}catch(e){}})),l=m,n(),setInterval(n,1e3*l)),o((n=>O.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),s=y=null,r(n)}),a,A,b(O),d)},we=(n,l,t,o,r)=>Re(n,t,((e,...n)=>{return t=[e,...n],o=function*(e,n=[]){return yield l.allAsync(e,n)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(n=>e((({tableName:e})=>n(e)))),(e=>e.remove()),o,r,l);export{we as createExpoSqliteNextPersister};
1
+ import{addDatabaseChangeListener as e}from"expo-sqlite/next";const n=e=>typeof e,l="tinybase",t=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,a=e=>null==e,d=(e,n,l)=>a(e)?null==l?void 0:l():n(e),c=e=>n(e)==o,v=(e,n,l)=>e.slice(n,l),s=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",E=e=>`"${e.replace(/"/g,'""')}"`,h="SELECT",m=(e,n="")=>e.join(n),A=(e,n)=>e.map(n),O=e=>0==s(e),T=(e,n)=>e.filter(n),L=(e,...n)=>e.push(...n),P=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},N=(e,n)=>null==e?void 0:e.delete(n),R=Object,w=e=>R.getPrototypeOf(e),x=R.keys,S=R.freeze,C=(e=[])=>R.fromEntries(e),D=(...e)=>R.assign({},...e),g=(e,n)=>A(R.entries(e),(([e,l])=>n(l,e))),I=e=>R.values(e),F=e=>s(x(e)),M=e=>(e=>!a(e)&&d(w(e),(e=>e==R.prototype||a(w(e))),(()=>!0)))(e)&&0==F(e),$=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},j=(e,n)=>null==e?void 0:e.get(n),B=(e,n)=>{var l;return A([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},H=(e,n,l)=>a(l)?(N(e,n),e):null==e?void 0:e.set(n,l),W=(e,n,l)=>(P(e,n)||H(e,n,l()),j(e,n)),Y=(e,n,l,t=H)=>(g(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>((e,n)=>!a(((e,n)=>d(e,(e=>e[n])))(e,n)))(n,l)?0:t(e,l))),e),k=e=>new Set(Array.isArray(e)||a(e)?e:[e]),G=(e,n)=>null==e?void 0:e.add(n);var J=Object.defineProperty,U=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,z=Object.prototype.propertyIsEnumerable,K=(e,n,l)=>n in e?J(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,V=(e,n)=>{for(var l in n||(n={}))q.call(n,l)&&K(e,l,n[l]);if(U)for(var l of U(n))z.call(n,l)&&K(e,l,n[l]);return e},Q=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const X=h+"*FROM",Z="FROM pragma_table_",ee="WHERE",ne=(e,n,l)=>{const o=$();return[()=>Q(void 0,null,(function*(){return Y(o,C(yield y(A(yield e("SELECT name "+Z+"list WHERE schema='main'AND type='table'AND name IN("+te(n)+")ORDER BY name",n),(n=>Q(void 0,[n],(function*({name:n}){return[n,C(A(yield e(h+" name,type "+Z+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>H(o,n,Y(W(o,n,$),l,((e,n,l)=>{l!=j(e,n)&&H(e,n,l)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,l)=>Q(void 0,null,(function*(){return((e,n)=>!a(j(j(o,e),n)))(n,l)?C(T(A(yield e(X+E(n)),(e=>{return[e[l],(n=V({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!a(e)&&!M(n)))):{}})),(n,l,r,i,u,d=!1)=>Q(void 0,null,(function*(){const c=k();g(null!=r?r:{},(e=>A(x(null!=e?e:{}),(e=>G(c,e)))));const v=b(c);if(!d&&u&&O(v)&&P(o,n))return yield e("DROP TABLE"+E(n)),void H(o,n);if(O(v)||P(o,n)){const t=j(o,n),r=k(_(t));yield y([...A(v,(l=>Q(void 0,null,(function*(){N(r,l)||(yield e(`ALTER TABLE${E(n)}ADD${E(l)}`),H(t,l,""))})))),...!d&&i?A(b(r),(o=>Q(void 0,null,(function*(){o!=l&&(yield e(`ALTER TABLE${E(n)}DROP${E(o)}`),H(t,o))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(l)} PRIMARY KEY ON CONFLICT REPLACE${m(A(v,(e=>t+E(e))))});`),H(o,n,$([[l,""],...A(v,(e=>[e,""]))]));if(d)a(r)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield y(g(r,((t,o)=>Q(void 0,null,(function*(){a(t)?yield e("DELETE FROM"+E(n)+ee+E(l)+"=?",[o]):O(v)||(yield le(e,n,l,x(t),[o,...I(t)]))})))));else if(O(v))P(o,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const t=T(_(j(o,n)),(e=>e!=l)),i=[],u=[];g(null!=r?r:{},((e,n)=>{L(i,n,...A(t,(n=>null==e?void 0:e[n]))),L(u,n)})),yield le(e,n,l,t,i),yield e("DELETE FROM"+E(n)+ee+E(l)+"NOT IN("+te(u)+")",u)}})),n=>Q(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},le=(e,n,l,o,i)=>Q(void 0,null,(function*(){return yield e("INSERT INTO"+E(n)+"("+E(l)+m(A(o,(e=>t+E(e))))+")VALUES"+v(r(`,(?${r(",?",s(o))})`,s(i)/(s(o)+1)),1)+"ON CONFLICT("+E(l)+")DO UPDATE SET"+m(A(o,(e=>E(e)+"=excluded."+E(e))),t),i)})),te=e=>m(A(e,(()=>"?")),t),oe=JSON.parse;var re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ie=$(),ue=$(),ae=(e,n,l,t,o,r,[i,u]=[],c=[])=>{let v,s,y,f=0,p=0;W(ie,c,(()=>0)),W(ue,c,(()=>[]));const E=e=>re(void 0,null,(function*(){return 2!=f&&(f=1,yield h.schedule((()=>re(void 0,null,(function*(){yield e(),f=0}))))),h})),h={load:(l,t)=>re(void 0,null,(function*(){return yield E((()=>re(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>re(void 0,[...l],(function*(l={},o={}){return h.stopAutoLoad(),yield h.load(l,o),p=1,y=t(((l,t)=>re(void 0,null,(function*(){if(t){const n=t();yield E((()=>re(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield E((()=>re(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),h})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),h),save:n=>re(void 0,null,(function*(){return 1!=f&&(f=2,yield h.schedule((()=>re(void 0,null,(function*(){try{yield l(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),h})),startAutoSave:()=>re(void 0,null,(function*(){return yield h.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,n)=>{const[l,t]=n();M(l)&&M(t)||h.save((()=>[l,t]))})),h})),stopAutoSave:()=>(d(v,e.delListener),v=void 0,h),schedule:(...e)=>re(void 0,null,(function*(){return L(j(ue,c),...e),yield re(void 0,null,(function*(){if(!j(ie,c)){for(H(ie,c,1);!a((e=j(ue,c),s=e.shift()));)try{yield s()}catch(e){null==r||r(e)}H(ie,c,0)}var e})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(h[i]=()=>u),S(h)};var de=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ce="store",ve=(e,n,l,t,o,[r],i,u,a)=>{const[d,c,v,s]=ne(n,i,o);return ae(e,(()=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var e,n;return yield d(),oe(null!=(n=null==(e=(yield c(r,p))[f])?void 0:e[ce])?n:"null")}))))}))),(e=>de(void 0,null,(function*(){return yield s((()=>de(void 0,null,(function*(){var n,l;yield d(),yield v(r,p,{[f]:{[ce]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?R.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,[a,u],u)};var se=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye=(e,n,l,t,o,[r,i,[u,d,c]],v,s,E)=>{const[h,m,A,O]=ne(n,v,o),L=(e,n)=>se(void 0,null,(function*(){return yield y(B(i,((l,t)=>se(void 0,[l,t],(function*([l,t,o,r],i){const u=e[i];n&&void 0===u||(yield A(l,t,u,o,r,n))})))))})),P=(e,n)=>se(void 0,null,(function*(){return d?yield A(c,p,{[f]:e},!0,!0,n):null}));return ae(e,(()=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){yield h();const e=yield se(void 0,null,(function*(){return C(T(yield y(B(r,((e,n)=>se(void 0,[e,n],(function*([e,n],l){return[e,yield m(l,n)]}))))),(e=>!M(e[1]))))})),n=yield se(void 0,null,(function*(){return u?(yield m(c,p))[f]:{}}));return M(e)&&a(n)?void 0:[e,n]}))))}))),((e,n)=>se(void 0,null,(function*(){return yield O((()=>se(void 0,null,(function*(){if(yield h(),a(n)){const[n,l]=e();yield L(n),yield P(l)}else{const[e,l]=n();yield L(e,!0),yield P(l,!0)}}))))}))),l,t,o,[E,s],s)},fe="json",pe="autoLoadIntervalSeconds",Ee="rowIdColumnName",he="tableId",me="tableName",Ae={mode:fe,[pe]:1},Oe={load:0,save:0,[me]:l+"_values"},Te=(e,n,l,t)=>{const o=$();return g(e,((e,r)=>{const i=v(I(D(n,c(e)?{[l]:e}:e)),0,F(n));a(i[0])||t(r,i[0])||H(o,r,i)})),o};var Le=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const Pe="pragma ",be="data_version",Ne="schema_version",Re=(e,n,t,o,r,i,a,d,s="getDb")=>{let y,f,E;const[m,A,O,T]=(e=>{const n=(e=>D(Ae,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[pe];if(n.mode==fe){const{storeTableName:e=l}=n;return[1,t,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v(I(D(Oe,i)),0,F(Oe)),a=u[2],d=k(a);return[0,t,[Te(o,{[he]:null,[Ee]:p},he,(e=>G(d,e)&&e==a)),Te(r,{[me]:null,[Ee]:p,deleteEmptyColumns:0,deleteEmptyTable:0},me,((e,n)=>G(d,n)&&n==a)),u],d]})(n);return(m?ve:ye)(e,i?(e,n)=>Le(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield t(Pe+be))[0][be],l=(yield t(Pe+Ne))[0][Ne],o=(yield t(h+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&l==(null!=f?f:f=l)&&o==(null!=E?E:E=o)||(e(),y=n,f=l)}catch(e){}})),l=A,n(),setInterval(n,1e3*l)),o((n=>T.has(n)?e():0))];var n,l}),(([e,n])=>{u(e),y=f=null,r(n)}),a,O,b(T),d,s)},we=(n,l,t,o,r)=>Re(n,t,((e,...n)=>{return t=[e,...n],o=function*(e,n=[]){return yield l.allAsync(e,n)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(n=>e((({tableName:e})=>n(e)))),(e=>e.remove()),o,r,l);export{we as createExpoSqliteNextPersister};