tinybase 3.2.0-beta.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters.cjs +1 -1
  11. package/lib/cjs/persisters.cjs.gz +0 -0
  12. package/lib/cjs/queries.cjs +1 -1
  13. package/lib/cjs/queries.cjs.gz +0 -0
  14. package/lib/cjs/relationships.cjs +1 -1
  15. package/lib/cjs/relationships.cjs.gz +0 -0
  16. package/lib/cjs/store.cjs +1 -1
  17. package/lib/cjs/store.cjs.gz +0 -0
  18. package/lib/cjs/tinybase.cjs +1 -1
  19. package/lib/cjs/tinybase.cjs.gz +0 -0
  20. package/lib/cjs/tools.cjs +1 -1
  21. package/lib/cjs/tools.cjs.gz +0 -0
  22. package/lib/cjs/ui-react.cjs +1 -1
  23. package/lib/cjs/ui-react.cjs.gz +0 -0
  24. package/lib/cjs-es6/checkpoints.cjs +1 -1
  25. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  26. package/lib/cjs-es6/indexes.cjs +1 -1
  27. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  28. package/lib/cjs-es6/metrics.cjs +1 -1
  29. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  30. package/lib/cjs-es6/persisters.cjs +1 -1
  31. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  32. package/lib/cjs-es6/queries.cjs +1 -1
  33. package/lib/cjs-es6/queries.cjs.gz +0 -0
  34. package/lib/cjs-es6/relationships.cjs +1 -1
  35. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  36. package/lib/cjs-es6/store.cjs +1 -1
  37. package/lib/cjs-es6/store.cjs.gz +0 -0
  38. package/lib/cjs-es6/tinybase.cjs +1 -1
  39. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  40. package/lib/cjs-es6/tools.cjs +1 -1
  41. package/lib/cjs-es6/tools.cjs.gz +0 -0
  42. package/lib/cjs-es6/ui-react.cjs +1 -1
  43. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  44. package/lib/debug/checkpoints.js +2 -2
  45. package/lib/debug/indexes.js +2 -2
  46. package/lib/debug/metrics.js +2 -2
  47. package/lib/debug/persisters.js +2 -2
  48. package/lib/debug/queries.js +1 -1
  49. package/lib/debug/relationships.js +2 -2
  50. package/lib/debug/store.js +36 -35
  51. package/lib/debug/tinybase.js +39 -38
  52. package/lib/debug/tools.js +13 -4
  53. package/lib/debug/ui-react.js +3 -2
  54. package/lib/es6/checkpoints.js +1 -1
  55. package/lib/es6/checkpoints.js.gz +0 -0
  56. package/lib/es6/indexes.js +1 -1
  57. package/lib/es6/indexes.js.gz +0 -0
  58. package/lib/es6/metrics.js +1 -1
  59. package/lib/es6/metrics.js.gz +0 -0
  60. package/lib/es6/persisters.js +1 -1
  61. package/lib/es6/persisters.js.gz +0 -0
  62. package/lib/es6/queries.js +1 -1
  63. package/lib/es6/queries.js.gz +0 -0
  64. package/lib/es6/relationships.js +1 -1
  65. package/lib/es6/relationships.js.gz +0 -0
  66. package/lib/es6/store.js +1 -1
  67. package/lib/es6/store.js.gz +0 -0
  68. package/lib/es6/tinybase.js +1 -1
  69. package/lib/es6/tinybase.js.gz +0 -0
  70. package/lib/es6/tools.js +1 -1
  71. package/lib/es6/tools.js.gz +0 -0
  72. package/lib/es6/ui-react.js +1 -1
  73. package/lib/es6/ui-react.js.gz +0 -0
  74. package/lib/indexes.js +1 -1
  75. package/lib/indexes.js.gz +0 -0
  76. package/lib/metrics.js +1 -1
  77. package/lib/metrics.js.gz +0 -0
  78. package/lib/persisters.js +1 -1
  79. package/lib/persisters.js.gz +0 -0
  80. package/lib/queries.js +1 -1
  81. package/lib/queries.js.gz +0 -0
  82. package/lib/relationships.js +1 -1
  83. package/lib/relationships.js.gz +0 -0
  84. package/lib/store.js +1 -1
  85. package/lib/store.js.gz +0 -0
  86. package/lib/tinybase.js +1 -1
  87. package/lib/tinybase.js.gz +0 -0
  88. package/lib/tools.js +1 -1
  89. package/lib/tools.js.gz +0 -0
  90. package/lib/types/store.d.ts +84 -21
  91. package/lib/types/ui-react.d.ts +11 -0
  92. package/lib/types/with-schemas/store.d.ts +91 -21
  93. package/lib/types/with-schemas/ui-react.d.ts +12 -0
  94. package/lib/ui-react.js +1 -1
  95. package/lib/ui-react.js.gz +0 -0
  96. package/lib/umd/checkpoints.js +1 -1
  97. package/lib/umd/checkpoints.js.gz +0 -0
  98. package/lib/umd/indexes.js +1 -1
  99. package/lib/umd/indexes.js.gz +0 -0
  100. package/lib/umd/metrics.js +1 -1
  101. package/lib/umd/metrics.js.gz +0 -0
  102. package/lib/umd/persisters.js +1 -1
  103. package/lib/umd/persisters.js.gz +0 -0
  104. package/lib/umd/queries.js +1 -1
  105. package/lib/umd/queries.js.gz +0 -0
  106. package/lib/umd/relationships.js +1 -1
  107. package/lib/umd/relationships.js.gz +0 -0
  108. package/lib/umd/store.js +1 -1
  109. package/lib/umd/store.js.gz +0 -0
  110. package/lib/umd/tinybase.js +1 -1
  111. package/lib/umd/tinybase.js.gz +0 -0
  112. package/lib/umd/tools.js +1 -1
  113. package/lib/umd/tools.js.gz +0 -0
  114. package/lib/umd/ui-react.js +1 -1
  115. package/lib/umd/ui-react.js.gz +0 -0
  116. package/lib/umd-es6/checkpoints.js +1 -1
  117. package/lib/umd-es6/checkpoints.js.gz +0 -0
  118. package/lib/umd-es6/indexes.js +1 -1
  119. package/lib/umd-es6/indexes.js.gz +0 -0
  120. package/lib/umd-es6/metrics.js +1 -1
  121. package/lib/umd-es6/metrics.js.gz +0 -0
  122. package/lib/umd-es6/persisters.js +1 -1
  123. package/lib/umd-es6/persisters.js.gz +0 -0
  124. package/lib/umd-es6/queries.js +1 -1
  125. package/lib/umd-es6/queries.js.gz +0 -0
  126. package/lib/umd-es6/relationships.js +1 -1
  127. package/lib/umd-es6/relationships.js.gz +0 -0
  128. package/lib/umd-es6/store.js +1 -1
  129. package/lib/umd-es6/store.js.gz +0 -0
  130. package/lib/umd-es6/tinybase.js +1 -1
  131. package/lib/umd-es6/tinybase.js.gz +0 -0
  132. package/lib/umd-es6/tools.js +1 -1
  133. package/lib/umd-es6/tools.js.gz +0 -0
  134. package/lib/umd-es6/ui-react.js +1 -1
  135. package/lib/umd-es6/ui-react.js.gz +0 -0
  136. package/package.json +50 -26
  137. package/readme.md +14 -14
package/bin/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #! /usr/bin/env node
2
- import{resolve as t,dirname as e}from"path";import{readFileSync as r,writeFileSync as s}from"fs";import{createStore as a}from"tinybase";import{createTools as o}from"tinybase/tools";import{fileURLToPath as i}from"url";const n=JSON.parse,m=Object,c=(...t)=>{return e=t=>process.stdout.write(t+"\n"),t.forEach(e);var e},p=t=>n(r(t,"utf8")),d=(e,r,a,o)=>{const i=t(e,r);c(o.padStart(23)+": "+i),s(i,a,"utf8")},l=()=>{var t,e;c("","tinybase <command>","","Usage:",""),t=u,e=([,t,e],r)=>c(` tinybase ${r} ${t}`," - "+e,""),((t,e)=>{t.map(e)})(m.entries(t),(([t,r])=>e(r,t))),c("See also http://tinybase.org/guides/developer-tools/command-line/","")},u={help:[l,"","print this message"],version:[()=>c(p(t(e(i(import.meta.url)),"../package.json")).version),"","get the current TinyBase version"],getStoreApi:[async(t,e,r)=>{try{const[s,i,n,m]=await(t=>{const e=p(t);return o(a().setSchema(...(r=e,Array.isArray(r)?e:[e])));var r})(t).getPrettyStoreApi(e);d(r,e+".d.ts",s,"Definition"),d(r,e+".ts",i,"Implementation"),d(r,e+"-ui-react.d.ts",n,"UI React definition"),d(r,e+"-ui-react.tsx",m,"UI React implementation")}catch{process.stderr.write("ERROR: provide a valid schemaFile, storeName, and outputDir\n")}},"<schemaFile> <storeName> <outputDir>","generate .d.ts, .ts, and .tsx API files from a schema file"]};(()=>{const[,,t,...e]=process.argv;(u[t]?.[0]??l)(...e)})();
2
+ import{resolve as t,dirname as e}from"path";import{readFileSync as r,writeFileSync as s}from"fs";import{createStore as a}from"tinybase";import{createTools as o}from"tinybase/tools";import{fileURLToPath as i}from"url";const n="utf8",m=JSON.parse,c=Object,p=(...t)=>{return e=t=>process.stdout.write(t+"\n"),t.forEach(e);var e},d=t=>m(r(t,n)),l=(e,r,a,o)=>{const i=t(e,r);p(o.padStart(23)+": "+i),s(i,a,n)},u=()=>{var t,e;p("","tinybase <command>","","Usage:",""),t=f,e=([,t,e],r)=>p(` tinybase ${r} ${t}`," - "+e,""),((t,e)=>{t.map(e)})(c.entries(t),(([t,r])=>e(r,t))),p("See also http://tinybase.org/guides/developer-tools/command-line/","")},f={help:[u,"","print this message"],version:[()=>p(d(t(e(i(import.meta.url)),"../package.json")).version),"","get the current TinyBase version"],getStoreApi:[async(t,e,r)=>{try{const[s,i,n,m]=await(t=>{const e=d(t);return o(a().setSchema(...(r=e,Array.isArray(r)?e:[e])));var r})(t).getPrettyStoreApi(e);l(r,e+".d.ts",s,"Definition"),l(r,e+".ts",i,"Implementation"),l(r,e+"-ui-react.d.ts",n,"UI React definition"),l(r,e+"-ui-react.tsx",m,"UI React implementation")}catch{process.stderr.write("ERROR: provide a valid schemaFile, storeName, and outputDir\n")}},"<schemaFile> <storeName> <outputDir>","generate .d.ts, .ts, and .tsx API files from a schema file"]};(()=>{const[,,t,...e]=process.argv;(f[t]?.[0]??u)(...e)})();
@@ -1 +1 @@
1
- const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,d=e=>c(e)||0==(e=>e.size)(e),u=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),p=e=>new Map(e),C=(e,t)=>e?.get(t),f=(e,t,n)=>c(n)?(h(e,t),e):e?.set(t,n),g=(e,t,n)=>(a(e,t)||f(e,t,n()),C(e,t)),k=(e,t,r,s,o=0)=>i((r?g:C)(e,t[o],o>n(t)-2?r:p),(l=>{if(o>n(t)-2)return s?.(l)&&f(e,t[o]),l;const c=k(l,t,r,s,o+1);return d(l)&&f(e,t[o]),c})),L=e=>new Set(Array.isArray(e)||c(e)?e:[e]),v=/^\d+$/,w=Object.freeze,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=p(),I=p(),M=1;const b=p(),j=p(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[()=>l(e)??""+t++,t=>{v.test(t)&&n(e)<1e3&&s(e,t)}]})(),g=p();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o();var i;return f(g,c,[e,t,n,s,l]),i=c,k(t,n??[""],L)?.add(i),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?u(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(C(e,t),c+1)));return l(e,0),o})(e,o),(e=>u(e,(e=>C(g,e)[0](r,...o??[],...l))))),e=>i(C(g,e),(([,t,n])=>(k(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),f(g,e),a(e),n))),e=>i(C(g,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=p(),T=p(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=C(O,t);u(n,((t,n)=>u(t,((t,r)=>u(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),u(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{f(O,e),f(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=g(A,t,p),l=g(e,n,p),c=g(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&d(f(l,r))&&d(f(e,n))&&d(f(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=g(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&d(f(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,f(O,y,[A,I]),Y(y,e),A=p(),I=p(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(T,e)!==t&&(f(T,e,t),B(j,[e])),_),Z=e=>a(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,u(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
1
+ const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,d=e=>c(e)||0==(e=>e.size)(e),u=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),p=e=>new Map(e),C=(e,t)=>e?.get(t),f=(e,t,n)=>c(n)?(h(e,t),e):e?.set(t,n),g=(e,t,n)=>(a(e,t)||f(e,t,n()),C(e,t)),k=(e,t,r,s,o=0)=>i((r?g:C)(e,t[o],o>n(t)-2?r:p),(l=>{if(o>n(t)-2)return s?.(l)&&f(e,t[o]),l;const c=k(l,t,r,s,o+1);return d(l)&&f(e,t[o]),c})),L=e=>new Set(Array.isArray(e)||c(e)?e:[e]),v=/^\d+$/,w=Object.freeze,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=p(),I=p(),M=1;const b=p(),j=p(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[n=>(n?l(e):null)??""+t++,t=>{v.test(t)&&n(e)<1e3&&s(e,t)}]})(),g=p();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o(1);var i,a;return f(g,c,[e,t,n,s,l]),i=k(t,n??[""],L),a=c,i?.add(a),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?u(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(C(e,t),c+1)));return l(e,0),o})(e,o),(e=>u(e,(e=>C(g,e)[0](r,...o??[],...l))))),e=>i(C(g,e),(([,t,n])=>(k(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),f(g,e),a(e),n))),e=>i(C(g,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=p(),T=p(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=C(O,t);u(n,((t,n)=>u(t,((t,r)=>u(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),u(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{f(O,e),f(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=g(A,t,p),l=g(e,n,p),c=g(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&d(f(l,r))&&d(f(e,n))&&d(f(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=g(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&d(f(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,f(O,y,[A,I]),Y(y,e),A=p(),I=p(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(T,e)!==t&&(f(T,e,t),B(j,[e])),_),Z=e=>a(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,u(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(S)),y.get(S))})();export{S as createCheckpoints};
Binary file
@@ -1 +1 @@
1
- "use strict";const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,d=e=>c(e)||0==(e=>e.size)(e),u=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),p=e=>new Map(e),C=(e,t)=>e?.get(t),k=(e,t,n)=>c(n)?(h(e,t),e):e?.set(t,n),f=(e,t,n)=>(a(e,t)||k(e,t,n()),C(e,t)),g=(e,t,r,s,o=0)=>i((r?f:C)(e,t[o],o>n(t)-2?r:p),(l=>{if(o>n(t)-2)return s?.(l)&&k(e,t[o]),l;const c=g(l,t,r,s,o+1);return d(l)&&k(e,t[o]),c})),L=e=>new Set(Array.isArray(e)||c(e)?e:[e]),v=/^\d+$/,w=Object.freeze,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=p(),I=p(),M=1;const b=p(),j=p(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[()=>l(e)??""+t++,t=>{v.test(t)&&n(e)<1e3&&s(e,t)}]})(),f=p();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o();var i;return k(f,c,[e,t,n,s,l]),i=c,g(t,n??[""],L)?.add(i),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?u(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(C(e,t),c+1)));return l(e,0),o})(e,o),(e=>u(e,(e=>C(f,e)[0](r,...o??[],...l))))),e=>i(C(f,e),(([,t,n])=>(g(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),k(f,e),a(e),n))),e=>i(C(f,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=p(),T=p(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=C(O,t);u(n,((t,n)=>u(t,((t,r)=>u(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),u(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{k(O,e),k(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=f(A,t,p),l=f(e,n,p),c=f(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&d(k(l,r))&&d(k(e,n))&&d(k(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=f(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&d(k(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,k(O,y,[A,I]),Y(y,e),A=p(),I=p(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(T,e)!==t&&(k(T,e,t),B(j,[e])),_),Z=e=>a(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,u(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(S)),y.get(S))})();exports.createCheckpoints=S;
1
+ "use strict";const e=(e,t)=>e.includes(t),t=(e,t)=>e.forEach(t),n=e=>e.length,r=e=>0==n(e),s=(e,...t)=>e.push(...t),o=e=>e.pop(),l=e=>e.shift(),c=e=>null==e,i=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,d=e=>c(e)||0==(e=>e.size)(e),u=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),p=e=>new Map(e),C=(e,t)=>e?.get(t),k=(e,t,n)=>c(n)?(h(e,t),e):e?.set(t,n),f=(e,t,n)=>(a(e,t)||k(e,t,n()),C(e,t)),g=(e,t,r,s,o=0)=>i((r?f:C)(e,t[o],o>n(t)-2?r:p),(l=>{if(o>n(t)-2)return s?.(l)&&k(e,t[o]),l;const c=g(l,t,r,s,o+1);return d(l)&&k(e,t[o]),c})),L=e=>new Set(Array.isArray(e)||c(e)?e:[e]),v=/^\d+$/,w=Object.freeze,S=(S=>{const y=new WeakMap;return S=>(y.has(S)||y.set(S,(S=>{let y,z,E,V=100,A=p(),I=p(),M=1;const b=p(),j=p(),[x,B,F]=(e=>{let r;const[o,a]=(()=>{const e=[];let t=0;return[n=>(n?l(e):null)??""+t++,t=>{v.test(t)&&n(e)<1e3&&s(e,t)}]})(),f=p();return[(e,t,n,s=[],l=(()=>[]))=>{r??=_;const c=o(1);var i,a;return k(f,c,[e,t,n,s,l]),i=g(t,n??[""],L),a=c,i?.add(a),c},(e,o,...l)=>t(((e,r=[""])=>{const o=[],l=(e,c)=>c==n(r)?s(o,e):null===r[c]?u(e,(e=>l(e,c+1))):t([r[c],null],(t=>l(C(e,t),c+1)));return l(e,0),o})(e,o),(e=>u(e,(e=>C(f,e)[0](r,...o??[],...l))))),e=>i(C(f,e),(([,t,n])=>(g(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),k(f,e),a(e),n))),e=>i(C(f,e),(([e,,s=[],o,l])=>{const i=(...a)=>{const d=n(a);d==n(s)?e(r,...a,...l(a)):c(s[d])?t(o[d]?.(...a)??[],(e=>i(...a,e))):i(...a,s[d])};i()}))]})(),O=p(),T=p(),W=[],$=[],m=(e,t)=>{M=0,S.transaction((()=>{const[n,r]=C(O,t);u(n,((t,n)=>u(t,((t,r)=>u(t,((t,s)=>((e,t,n,r,s)=>c(s)?e.delCell(t,n,r,!0):e.setCell(t,n,r,s))(S,n,r,s,t[e]))))))),u(r,((t,n)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(S,n,t[e])))})),M=1},q=e=>{k(O,e),k(T,e),B(j,[e])},D=(e,r)=>t(((e,t)=>e.splice(0,t))(e,r??n(e)),q),G=()=>D(W,n(W)-V),H=()=>i(y,(()=>{s(W,y),G(),D($),y=void 0,E=1})),J=()=>{y=o(W),E=1},K=S.addCellListener(null,null,null,((e,t,n,r,s,o)=>{if(M){H();const e=f(A,t,p),l=f(e,n,p),c=f(l,r,(()=>[o,void 0]));c[1]=s,c[0]===s&&d(k(l,r))&&d(k(e,n))&&d(k(A,t))&&J(),U()}})),N=S.addValueListener(null,((e,t,n,r)=>{if(M){H();const e=f(I,t,(()=>[r,void 0]));e[1]=n,e[0]===n&&d(k(I,t))&&J(),U()}})),P=(e="")=>(c(y)&&(y=""+z++,k(O,y,[A,I]),Y(y,e),A=p(),I=p(),E=1),y),Q=()=>{r(W)||(((e,...t)=>{e.unshift(...t)})($,P()),m(0,y),y=o(W),E=1)},R=()=>{r($)||(s(W,y),y=l($),m(1,y),E=1)},U=()=>{E&&(B(b),E=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(T,e)!==t&&(k(T,e,t),B(j,[e])),_),Z=e=>a(O,e),_={setSize:e=>(V=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>S,getCheckpointIds:()=>[[...W],y,[...$]],forEachCheckpoint:e=>{return t=e,u(T,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(T,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:t=>{const n=e(W,t)?Q:e($,t)?R:null;for(;!c(n)&&t!=y;)n();return U(),_},addCheckpointIdsListener:e=>x(e,b),addCheckpointListener:(e,t)=>x(t,j,[e]),delListener:e=>(F(e),_),clear:()=>(D(W),D($),c(y)||q(y),y=void 0,z=0,X(),_),destroy:()=>{S.delListener(K),S.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(S)),y.get(S))})();exports.createCheckpoints=S;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),n=e=>""+e,s=(e,t)=>e.every(t),r=(e,t)=>s(e,((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),c=(e,t)=>e.forEach(t),d=e=>e.length,l=(e,...t)=>e.push(...t),a=e=>null==e,i=(e,t,n)=>a(e)?n?.():t(e),u=e=>Array.isArray(e),h=(e,t)=>e?.has(t)??!1,f=e=>a(e)||0==(e=>e.size)(e),I=e=>[...e?.values()??[]],g=e=>e.clear(),S=(e,t)=>e?.forEach(t),v=(e,t)=>e?.delete(t),w=e=>new Map(e),L=e=>[...e?.keys()??[]],x=(e,t)=>e?.get(t),p=(e,t)=>S(e,((e,n)=>t(n,e))),y=(e,t,n)=>a(n)?(v(e,t),e):e?.set(t,n),E=(e,t,n)=>(h(e,t)||y(e,t,n()),x(e,t)),R=(e,t,n,s,r=0)=>i((n?E:x)(e,t[r],r>d(t)-2?n:w),(o=>{if(r>d(t)-2)return s?.(o)&&y(e,t[r]),o;const c=R(o,t,n,s,r+1);return f(o)&&y(e,t[r]),c})),b=e=>new Set(u(e)||a(e)?e:[e]),T=(e,t)=>e?.add(t),k=(n,s)=>e(n)==t?e=>e(n):n??(()=>s??""),z=(e,t)=>e<t?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const t=new WeakMap;return e=>(t.has(e)||t.set(e,(e=>{const t=w(),D=w(),[M,j,m,O,W,$,q,,B,F,G]=((e,t,n)=>{const r=e.hasRow,o=w(),l=w(),R=w(),k=w(),z=w(),A=(t,n,...s)=>{const r=E(z,t,b);return c(s,(t=>T(r,t)&&n&&e.callListener(t))),s},C=(t,...n)=>i(x(z,t),(s=>{c(0==d(n)?I(s):n,(t=>{e.delListener(t),v(s,t)})),f(s)&&y(z,t)})),D=(e,n)=>{y(o,e,n),h(l,e)||(y(l,e,t()),y(R,e,w()),y(k,e,w()))},M=e=>{y(o,e),y(l,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(o),e=>p(l,e),e=>h(l,e),e=>x(o,e),e=>x(l,e),(e,t)=>y(l,e,t),D,(t,o,l,i,f)=>{D(t,o);const I=w(),v=w(),L=x(R,t),E=x(k,t),b=t=>{const c=n=>e.getCell(o,t,n),l=x(L,t),h=r(o,t)?n(i(c,t)):void 0;var g,S;if(l===h||u(l)&&u(h)&&(S=h,d(g=l)===d(S)&&s(g,((e,t)=>S[t]===e)))||y(I,t,[l,h]),!a(f)){const e=x(E,t),n=r(o,t)?f(c,t):void 0;e!=n&&y(v,t,n)}},T=e=>{l((()=>{S(I,(([,e],t)=>y(L,t,e))),S(v,((e,t)=>y(E,t,e)))}),I,v,L,E,e),g(I),g(v)};p(L,b),e.hasTable(o)&&c(e.getRowIds(o),(e=>{h(L,e)||b(e)})),T(!0),C(t),A(t,0,e.addRowListener(o,null,((e,t,n)=>b(n))),e.addTableListener(o,(()=>T())))},M,()=>p(z,M),A,C]})(e,w,(e=>{return a(e)?"":u(e)?(t=n,e.map(t)):n(e);var t})),[H,J,K]=(e=>{let t;const[n,s]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{A.test(t)&&d(e)<1e3&&l(e,t)}]})(),r=w();return[(e,s,o,c=[],d=(()=>[]))=>{t??=P;const l=n();return y(r,l,[e,s,o,c,d]),T(R(s,o??[""],b),l),l},(e,n,...s)=>c(((e,t=[""])=>{const n=[],s=(e,r)=>r==d(t)?l(n,e):null===t[r]?S(e,(e=>s(e,r+1))):c([t[r],null],(t=>s(x(e,t),r+1)));return s(e,0),n})(e,n),(e=>S(e,(e=>x(r,e)[0](t,...n??[],...s))))),e=>i(x(r,e),(([,t,n])=>(R(t,n??[""],void 0,(t=>(v(t,e),f(t)?1:0))),y(r,e),s(e),n))),e=>i(x(r,e),(([e,,n=[],s,r])=>{const o=(...l)=>{const i=d(l);i==d(n)?e(t,...l,...r(l)):a(n[i])?c(s[i]?.(...l)??[],(e=>o(...l,e))):o(...l,n[i])};o()}))]})(),N=(t,n,s)=>{const r=W(t);S(s,((t,s)=>n(s,(n=>S(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},P={setIndexDefinition:(e,n,s,c,d,l=z)=>{const u=a(d)?void 0:([e],[t])=>d(e,t);return B(e,n,((n,s,d,I,g,L)=>{let E=0;const R=b(),k=b(),z=$(e);if(S(s,(([e,t],n)=>{const s=b(e),r=b(t);S(s,(e=>v(r,e)?v(s,e):0)),S(s,(e=>{T(R,e),i(x(z,e),(t=>{v(t,n),f(t)&&(y(z,e),E=1)}))})),S(r,(e=>{T(R,e),h(z,e)||(y(z,e,b()),E=1),T(x(z,e),n),a(c)||T(k,e)}))})),n(),f(g)||(L?p(z,(e=>T(k,e))):p(d,(e=>i(x(I,e),(e=>T(k,e))))),S(k,(e=>{const t=(t,n)=>l(x(g,t),x(g,n),e),n=[...x(z,e)];r(n,t)||(y(z,e,b(o(n,t))),T(R,e))}))),(E||L)&&!a(u)){const t=[...z];r(t,u)||(q(e,w(o(t,u))),E=1)}E&&J(t,[e]),S(R,(t=>J(D,[e,t])))}),k(s),i(c,k)),P},delIndexDefinition:e=>(F(e),P),getStore:M,getIndexIds:j,forEachIndex:e=>m(((t,n)=>e(t,(e=>N(t,e,n))))),forEachSlice:(e,t)=>N(e,t,$(e)),hasIndex:O,hasSlice:(e,t)=>h($(e),t),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,t)=>I(x($(e),t)),addSliceIdsListener:(e,n)=>H(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>H(n,D,[e,t]),delListener:e=>(K(e),P),destroy:G,getListenerStats:()=>({})};return C(P)})(e)),t.get(e))})();exports.createIndexes=D;
1
+ "use strict";const e=e=>typeof e,t="",n=e(t),s=e=>t+e,r=(e,t)=>e.every(t),o=(e,t)=>r(e,((n,s)=>0==s||t(e[s-1],n)<=0)),c=(e,t)=>e.sort(t),l=(e,t)=>e.forEach(t),d=e=>e.length,a=(e,...t)=>e.push(...t),i=e=>null==e,u=(e,t,n)=>i(e)?n?.():t(e),h=e=>Array.isArray(e),f=(e,t)=>e?.has(t)??!1,I=e=>i(e)||0==(e=>e.size)(e),g=e=>[...e?.values()??[]],S=e=>e.clear(),v=(e,t)=>e?.forEach(t),w=(e,t)=>e?.delete(t),L=e=>new Map(e),x=e=>[...e?.keys()??[]],p=(e,t)=>e?.get(t),y=(e,t)=>v(e,((e,n)=>t(n,e))),E=(e,t,n)=>i(n)?(w(e,t),e):e?.set(t,n),R=(e,t,n)=>(f(e,t)||E(e,t,n()),p(e,t)),b=(e,t,n,s,r=0)=>u((n?R:p)(e,t[r],r>d(t)-2?n:L),(o=>{if(r>d(t)-2)return s?.(o)&&E(e,t[r]),o;const c=b(o,t,n,s,r+1);return I(o)&&E(e,t[r]),c})),T=e=>new Set(h(e)||i(e)?e:[e]),k=(e,t)=>e?.add(t),z=(s,r)=>e(s)==n?e=>e(s):s??(()=>r??t),A=(e,t)=>e<t?-1:1,C=/^\d+$/,D=Object.freeze,M=(e=>{const n=new WeakMap;return e=>(n.has(e)||n.set(e,(e=>{const n=L(),M=L(),[j,m,O,W,$,q,B,,F,G,H]=((e,t,n)=>{const s=e.hasRow,o=L(),c=L(),a=L(),b=L(),z=L(),A=(t,n,...s)=>{const r=R(z,t,T);return l(s,(t=>k(r,t)&&n&&e.callListener(t))),s},C=(t,...n)=>u(p(z,t),(s=>{l(0==d(n)?g(s):n,(t=>{e.delListener(t),w(s,t)})),I(s)&&E(z,t)})),D=(e,n)=>{E(o,e,n),f(c,e)||(E(c,e,t()),E(a,e,L()),E(b,e,L()))},M=e=>{E(o,e),E(c,e),E(a,e),E(b,e),C(e)};return[()=>e,()=>x(o),e=>y(c,e),e=>f(c,e),e=>p(o,e),e=>p(c,e),(e,t)=>E(c,e,t),D,(t,o,c,u,I)=>{D(t,o);const g=L(),w=L(),x=p(a,t),R=p(b,t),T=t=>{const c=n=>e.getCell(o,t,n),l=p(x,t),a=s(o,t)?n(u(c,t)):void 0;var f,S;if(l===a||h(l)&&h(a)&&(S=a,d(f=l)===d(S)&&r(f,((e,t)=>S[t]===e)))||E(g,t,[l,a]),!i(I)){const e=p(R,t),n=s(o,t)?I(c,t):void 0;e!=n&&E(w,t,n)}},k=e=>{c((()=>{v(g,(([,e],t)=>E(x,t,e))),v(w,((e,t)=>E(R,t,e)))}),g,w,x,R,e),S(g),S(w)};y(x,T),e.hasTable(o)&&l(e.getRowIds(o),(e=>{f(x,e)||T(e)})),k(!0),C(t),A(t,0,e.addRowListener(o,null,((e,t,n)=>T(n))),e.addTableListener(o,(()=>k())))},M,()=>y(z,M),A,C]})(e,L,(e=>{return i(e)?t:h(e)?(n=s,e.map(n)):s(e);var n})),[J,K,N]=(e=>{let n;const[s,r]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{C.test(t)&&d(e)<1e3&&a(e,t)}]})(),o=L();return[(e,r,c,l=[],d=(()=>[]))=>{n??=Q;const a=s(1);return E(o,a,[e,r,c,l,d]),k(b(r,c??[t],T),a),a},(e,s,...r)=>l(((e,n=[t])=>{const s=[],r=(e,t)=>t==d(n)?a(s,e):null===n[t]?v(e,(e=>r(e,t+1))):l([n[t],null],(n=>r(p(e,n),t+1)));return r(e,0),s})(e,s),(e=>v(e,(e=>p(o,e)[0](n,...s??[],...r))))),e=>u(p(o,e),(([,n,s])=>(b(n,s??[t],void 0,(t=>(w(t,e),I(t)?1:0))),E(o,e),r(e),s))),e=>u(p(o,e),(([e,,t=[],s,r])=>{const o=(...c)=>{const a=d(c);a==d(t)?e(n,...c,...r(c)):i(t[a])?l(s[a]?.(...c)??[],(e=>o(...c,e))):o(...c,t[a])};o()}))]})(),P=(t,n,s)=>{const r=$(t);v(s,((t,s)=>n(s,(n=>v(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},Q={setIndexDefinition:(e,t,s,r,l,d=A)=>{const a=i(l)?void 0:([e],[t])=>l(e,t);return F(e,t,((t,s,l,h,g,S)=>{let x=0;const R=T(),b=T(),z=q(e);if(v(s,(([e,t],n)=>{const s=T(e),o=T(t);v(s,(e=>w(o,e)?w(s,e):0)),v(s,(e=>{k(R,e),u(p(z,e),(t=>{w(t,n),I(t)&&(E(z,e),x=1)}))})),v(o,(e=>{k(R,e),f(z,e)||(E(z,e,T()),x=1),k(p(z,e),n),i(r)||k(b,e)}))})),t(),I(g)||(S?y(z,(e=>k(b,e))):y(l,(e=>u(p(h,e),(e=>k(b,e))))),v(b,(e=>{const t=(t,n)=>d(p(g,t),p(g,n),e),n=[...p(z,e)];o(n,t)||(E(z,e,T(c(n,t))),k(R,e))}))),(x||S)&&!i(a)){const t=[...z];o(t,a)||(B(e,L(c(t,a))),x=1)}x&&K(n,[e]),v(R,(t=>K(M,[e,t])))}),z(s),u(r,z)),Q},delIndexDefinition:e=>(G(e),Q),getStore:j,getIndexIds:m,forEachIndex:e=>O(((t,n)=>e(t,(e=>P(t,e,n))))),forEachSlice:(e,t)=>P(e,t,q(e)),hasIndex:W,hasSlice:(e,t)=>f(q(e),t),getTableId:$,getSliceIds:e=>x(q(e)),getSliceRowIds:(e,t)=>g(p(q(e),t)),addSliceIdsListener:(e,t)=>J(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>J(n,M,[e,t]),delListener:e=>(N(e),Q),destroy:H,getListenerStats:()=>({})};return D(Q)})(e)),n.get(e))})();exports.createIndexes=M;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),r=e(e),n=(e,t)=>e.forEach(t),s=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,r)=>e.reduce(t,r),c=(e,...t)=>e.push(...t),a=Math.max,d=Math.min,l=isFinite,u=e=>null==e,v=(e,t,r)=>u(e)?r?.():t(e),h=e=>Array.isArray(e),M=()=>{},f=e=>e.size,g=(e,t)=>e?.has(t)??!1,L=e=>u(e)||0==f(e),m=e=>[...e?.values()??[]],w=e=>e.clear(),y=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),b=e=>new Map(e),x=(e,t)=>e?.get(t),E=(e,t)=>y(e,((e,r)=>t(r,e))),I=(e,t,r)=>u(r)?(p(e,t),e):e?.set(t,r),R=(e,t,r)=>(g(e,t)||I(e,t,r()),x(e,t)),S=(e,t,r,n,s=0)=>v((r?R:x)(e,t[s],s>i(t)-2?r:b),(o=>{if(s>i(t)-2)return n?.(o)&&I(e,t[s]),o;const c=S(o,t,r,n,s+1);return L(o)&&I(e,t[s]),c})),T=b([["avg",[(e,t)=>s(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>a(...e),(e,t)=>a(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:a(t,e)]],["min",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:d(t,e)]],["sum",[e=>s(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),k=e=>new Set(h(e)||u(e)?e:[e]),z=(e,t)=>e?.add(t),A=/^\d+$/,D=Object.freeze,N=(s=>{const o=new WeakMap;return s=>(o.has(s)||o.set(s,(s=>{const o=b(),[a,d,N,j,C,F,O,,W,$,q]=((e,t,r)=>{const s=e.hasRow,o=b(),c=b(),a=b(),d=b(),l=b(),M=(t,r,...s)=>{const i=R(l,t,k);return n(s,(t=>z(i,t)&&r&&e.callListener(t))),s},f=(t,...r)=>v(x(l,t),(s=>{n(0==i(r)?m(s):r,(t=>{e.delListener(t),p(s,t)})),L(s)&&I(l,t)})),S=(e,r)=>{I(o,e,r),g(c,e)||(I(c,e,t()),I(a,e,b()),I(d,e,b()))},T=e=>{I(o,e),I(c,e),I(a,e),I(d,e),f(e)};return[()=>e,()=>[...o?.keys()??[]],e=>E(c,e),e=>g(c,e),e=>x(o,e),e=>x(c,e),(e,t)=>I(c,e,t),S,(t,r,o,c,l)=>{S(t,r);const v=b(),L=b(),m=x(a,t),p=x(d,t),R=t=>{const n=n=>e.getCell(r,t,n),o=x(m,t),a=s(r,t)?(d=c(n,t),isNaN(d)||u(d)||!0===d||!1===d||""===d?void 0:1*d):void 0;var d,M,f,g;if(o===a||h(o)&&h(a)&&(f=a,i(M=o)===i(f)&&(g=(e,t)=>f[t]===e,M.every(g)))||I(v,t,[o,a]),!u(l)){const e=x(p,t),i=s(r,t)?l(n,t):void 0;e!=i&&I(L,t,i)}},T=e=>{o((()=>{y(v,(([,e],t)=>I(m,t,e))),y(L,((e,t)=>I(p,t,e)))}),v,L,m,p,e),w(v),w(L)};E(m,R),e.hasTable(r)&&n(e.getRowIds(r),(e=>{g(m,e)||R(e)})),T(!0),f(t),M(t,0,e.addRowListener(r,null,((e,t,r)=>R(r))),e.addTableListener(r,(()=>T())))},T,()=>E(l,T),M,f]})(s,M),[B,G,H]=(e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{A.test(t)&&i(e)<1e3&&c(e,t)}]})(),o=b();return[(e,n,s,i=[],c=(()=>[]))=>{t??=J;const a=r();return I(o,a,[e,n,s,i,c]),z(S(n,s??[""],k),a),a},(e,r,...s)=>n(((e,t=[""])=>{const r=[],s=(e,o)=>o==i(t)?c(r,e):null===t[o]?y(e,(e=>s(e,o+1))):n([t[o],null],(t=>s(x(e,t),o+1)));return s(e,0),r})(e,r),(e=>y(e,(e=>x(o,e)[0](t,...r??[],...s))))),e=>v(x(o,e),(([,t,r])=>(S(t,r??[""],void 0,(t=>(p(t,e),L(t)?1:0))),I(o,e),s(e),r))),e=>v(x(o,e),(([e,,r=[],s,o])=>{const c=(...a)=>{const d=i(a);d==i(r)?e(t,...a,...o(a)):u(r[d])?n(s[d]?.(...a)??[],(e=>c(...a,e))):c(...a,r[d])};c()}))]})(),J={setMetricDefinition:(n,s,i,c,a,d,v)=>{const h=e(i)==r?[i,a,d,v]:x(T,i)??x(T,"sum");return W(n,s,((e,t,r,s,i,c)=>{const a=F(n),d=f(s);c||=u(a),e();let v=((e,t,r,n,s,i=!1)=>{if(L(r))return;const[o,c,a,d]=s;return i||=u(e),y(n,(([r,n])=>{i||(e=u(r)?c?.(e,n,t++):u(n)?a?.(e,r,t--):d?.(e,n,r,t),i||=u(e))})),i?o(m(r),f(r)):e})(a,d,s,t,h,c);l(v)||(v=void 0),v!=a&&(O(n,v),G(o,[n],v,a))}),(1,e(M=c)==t?e=>e(M):M??(()=>1))),J;var M},delMetricDefinition:e=>($(e),J),getStore:a,getMetricIds:d,forEachMetric:N,hasMetric:j,getTableId:C,getMetric:F,addMetricListener:(e,t)=>B(t,o,[e]),delListener:e=>(H(e),J),destroy:q,getListenerStats:()=>({})};return D(J)})(s)),o.get(s))})();exports.createMetrics=N;
1
+ "use strict";const e=e=>typeof e,t="",r=e(t),n=e(e),s=(e,t)=>e.forEach(t),i=e=>c(e,((e,t)=>e+t),0),o=e=>e.length,c=(e,t,r)=>e.reduce(t,r),a=(e,...t)=>e.push(...t),d=Math.max,l=Math.min,u=isFinite,v=e=>null==e,h=(e,t,r)=>v(e)?r?.():t(e),M=e=>Array.isArray(e),f=()=>{},g=e=>e.size,L=(e,t)=>e?.has(t)??!1,m=e=>v(e)||0==g(e),w=e=>[...e?.values()??[]],y=e=>e.clear(),p=(e,t)=>e?.forEach(t),b=(e,t)=>e?.delete(t),x=e=>new Map(e),E=(e,t)=>e?.get(t),I=(e,t)=>p(e,((e,r)=>t(r,e))),R=(e,t,r)=>v(r)?(b(e,t),e):e?.set(t,r),S=(e,t,r)=>(L(e,t)||R(e,t,r()),E(e,t)),T=(e,t,r,n,s=0)=>h((r?S:E)(e,t[s],s>o(t)-2?r:x),(i=>{if(s>o(t)-2)return n?.(i)&&R(e,t[s]),i;const c=T(i,t,r,n,s+1);return m(i)&&R(e,t[s]),c})),k=x([["avg",[(e,t)=>i(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:d(t,e)]],["min",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:l(t,e)]],["sum",[e=>i(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),z=e=>new Set(M(e)||v(e)?e:[e]),A=(e,t)=>e?.add(t),D=/^\d+$/,N=Object.freeze,j=(i=>{const c=new WeakMap;return i=>(c.has(i)||c.set(i,(i=>{const c=x(),[d,l,j,C,F,O,W,,$,q,B]=((e,r,n)=>{const i=e.hasRow,c=x(),a=x(),d=x(),l=x(),u=x(),f=(t,r,...n)=>{const i=S(u,t,z);return s(n,(t=>A(i,t)&&r&&e.callListener(t))),n},g=(t,...r)=>h(E(u,t),(n=>{s(0==o(r)?w(n):r,(t=>{e.delListener(t),b(n,t)})),m(n)&&R(u,t)})),T=(e,t)=>{R(c,e,t),L(a,e)||(R(a,e,r()),R(d,e,x()),R(l,e,x()))},k=e=>{R(c,e),R(a,e),R(d,e),R(l,e),g(e)};return[()=>e,()=>{return e=c,[...e?.keys()??[]];var e},e=>I(a,e),e=>L(a,e),e=>E(c,e),e=>E(a,e),(e,t)=>R(a,e,t),T,(r,n,c,a,u)=>{T(r,n);const h=x(),m=x(),w=E(d,r),b=E(l,r),S=r=>{const s=t=>e.getCell(n,r,t),c=E(w,r),d=i(n,r)?(l=a(s,r),isNaN(l)||v(l)||!0===l||!1===l||l===t?void 0:1*l):void 0;var l,f,g,L;if(c===d||M(c)&&M(d)&&(g=d,o(f=c)===o(g)&&(L=(e,t)=>g[t]===e,f.every(L)))||R(h,r,[c,d]),!v(u)){const e=E(b,r),t=i(n,r)?u(s,r):void 0;e!=t&&R(m,r,t)}},k=e=>{c((()=>{p(h,(([,e],t)=>R(w,t,e))),p(m,((e,t)=>R(b,t,e)))}),h,m,w,b,e),y(h),y(m)};I(w,S),e.hasTable(n)&&s(e.getRowIds(n),(e=>{L(w,e)||S(e)})),k(!0),g(r),f(r,0,e.addRowListener(n,null,((e,t,r)=>S(r))),e.addTableListener(n,(()=>k())))},k,()=>I(u,k),f,g]})(i,f),[G,H,J]=(e=>{let r;const[n,i]=(()=>{const e=[];let r=0;return[n=>(n?e.shift():null)??t+r++,t=>{D.test(t)&&o(e)<1e3&&a(e,t)}]})(),c=x();return[(e,s,i,o=[],a=(()=>[]))=>{r??=K;const d=n(1);return R(c,d,[e,s,i,o,a]),A(T(s,i??[t],z),d),d},(e,n,...i)=>s(((e,r=[t])=>{const n=[],i=(e,t)=>t==o(r)?a(n,e):null===r[t]?p(e,(e=>i(e,t+1))):s([r[t],null],(r=>i(E(e,r),t+1)));return i(e,0),n})(e,n),(e=>p(e,(e=>E(c,e)[0](r,...n??[],...i))))),e=>h(E(c,e),(([,r,n])=>(T(r,n??[t],void 0,(t=>(b(t,e),m(t)?1:0))),R(c,e),i(e),n))),e=>h(E(c,e),(([e,,t=[],n,i])=>{const c=(...a)=>{const d=o(a);d==o(t)?e(r,...a,...i(a)):v(t[d])?s(n[d]?.(...a)??[],(e=>c(...a,e))):c(...a,t[d])};c()}))]})(),K={setMetricDefinition:(t,s,i,o,a,d,l)=>{const h=e(i)==n?[i,a,d,l]:E(k,i)??E(k,"sum");return $(t,s,((e,r,n,s,i,o)=>{const a=O(t),d=g(s);o||=v(a),e();let l=((e,t,r,n,s,i=!1)=>{if(m(r))return;const[o,c,a,d]=s;return i||=v(e),p(n,(([r,n])=>{i||(e=v(r)?c?.(e,n,t++):v(n)?a?.(e,r,t--):d?.(e,n,r,t),i||=v(e))})),i?o(w(r),g(r)):e})(a,d,s,r,h,o);u(l)||(l=void 0),l!=a&&(W(t,l),H(c,[t],l,a))}),(1,e(M=o)==r?e=>e(M):M??(()=>1))),K;var M},delMetricDefinition:e=>(q(e),K),getStore:d,getMetricIds:l,forEachMetric:j,hasMetric:C,getTableId:F,getMetric:O,addMetricListener:(e,t)=>G(t,c,[e]),delListener:e=>(J(e),K),destroy:B,getListenerStats:()=>({})};return N(K)})(i)),c.get(i))})();exports.createMetrics=j;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("fs");const t=e=>null==e,s=(e,s,a)=>t(e)?a?.():s(e),a=Object.freeze,r=(e,r,o,n,i)=>{let c,l,d=0;const u={load:async(s,a)=>{if(2!=d){d=1;const o=await r();t(o)||""==o?e.transaction((()=>e.setTables(s).setValues(a))):e.setJson(o),d=0}return u},startAutoLoad:async(e,t)=>(u.stopAutoLoad(),await u.load(e,t),n(u.load),u),stopAutoLoad:()=>(i(),u),save:async()=>(1!=d&&(d=2,await o(e.getJson()),d=0),u),startAutoSave:async()=>(await u.stopAutoSave().save(),c=e.addTablesListener(u.save),l=e.addValuesListener(u.save),u),stopAutoSave:()=>(s(c,e.delListener),s(l,e.delListener),u),getStore:()=>e,destroy:()=>u.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return a(u)},o=globalThis.window,n=(e,t,s)=>{let a;return r(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{a=a=>{a.storageArea===s&&a.key===t&&e()},o.addEventListener("storage",a)}),(()=>{o.removeEventListener("storage",a),a=void 0}))},i=e=>e.headers.get("ETag");exports.createCustomPersister=r,exports.createFilePersister=(t,s)=>{let a;return r(t,(async()=>{try{return await e.promises.readFile(s,"utf8")}catch{}}),(async t=>{try{await e.promises.writeFile(s,t,"utf8")}catch{}}),(t=>{a=e.watch(s,t)}),(()=>{a?.close(),a=void 0}))},exports.createLocalPersister=(e,t)=>n(e,t,localStorage),exports.createRemotePersister=(e,a,o,n)=>{let c,l;return r(e,(async()=>{const e=await fetch(a);return l=i(e),e.text()}),(async e=>await fetch(o,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{c=setInterval((async()=>{const s=await fetch(a,{method:"HEAD"}),r=i(s);t(l)||t(r)||r==l||(l=r,e())}),1e3*n)}),(()=>{s(c,clearInterval),c=void 0}))},exports.createSessionPersister=(e,t)=>n(e,t,sessionStorage);
1
+ "use strict";var e=require("fs");const t="utf8",s=e=>null==e,a=(e,t,a)=>s(e)?a?.():t(e),r=Object.freeze,o=(e,t,o,n,i)=>{let c,l,d=0;const u={load:async(a={},r={})=>{if(2!=d){d=1;const o=await t();s(o)||""==o?e.transaction((()=>e.setTables(a).setValues(r))):e.setJson(o),d=0}return u},startAutoLoad:async(e={},t={})=>(u.stopAutoLoad(),await u.load(e,t),n(u.load),u),stopAutoLoad:()=>(i(),u),save:async()=>(1!=d&&(d=2,await o(e.getJson()),d=0),u),startAutoSave:async()=>(await u.stopAutoSave().save(),c=e.addTablesListener(u.save),l=e.addValuesListener(u.save),u),stopAutoSave:()=>(a(c,e.delListener),a(l,e.delListener),u),getStore:()=>e,destroy:()=>u.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(u)},n="storage",i=globalThis.window,c=(e,t,s)=>{let a;return o(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{a=a=>{a.storageArea===s&&a.key===t&&e()},i.addEventListener(n,a)}),(()=>{i.removeEventListener(n,a),a=void 0}))},l=e=>e.headers.get("ETag");exports.createCustomPersister=o,exports.createFilePersister=(s,a)=>{let r;return o(s,(async()=>{try{return await e.promises.readFile(a,t)}catch{}}),(async s=>{try{await e.promises.writeFile(a,s,t)}catch{}}),(t=>{r=e.watch(a,t)}),(()=>{r?.close(),r=void 0}))},exports.createLocalPersister=(e,t)=>c(e,t,localStorage),exports.createRemotePersister=(e,t,r,n)=>{let i,c;return o(e,(async()=>{const e=await fetch(t);return c=l(e),e.text()}),(async e=>await fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{i=setInterval((async()=>{const a=await fetch(t,{method:"HEAD"}),r=l(a);s(c)||s(r)||r==c||(c=r,e())}),1e3*n)}),(()=>{a(i,clearInterval),i=void 0}))},exports.createSessionPersister=(e,t)=>c(e,t,sessionStorage);
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o=(e,t)=>e.every(t),a=(e,t)=>e.forEach(t),l=e=>c(e,((e,t)=>e+t),0),i=e=>e.length,d=e=>0==i(e),c=(e,t,n)=>e.reduce(t,n),u=(e,...t)=>e.push(...t),h=Math.max,w=Math.min,g=isFinite,R=e=>null==e,v=(e,t,n)=>R(e)?n?.():t(e),L=t=>e(t)==r,f=e=>Array.isArray(e),y=()=>{},T=e=>e.size,b=(e,t)=>e?.has(t)??!1,C=e=>R(e)||0==T(e),p=e=>[...e?.values()??[]],I=e=>e.clear(),m=(e,t)=>e?.forEach(t),Q=(e,t)=>e?.delete(t),S=e=>new Map(e),E=(e,t)=>e?.get(t),M=(e,t)=>m(e,((e,n)=>t(n,e))),x=(e,t,n)=>R(n)?(Q(e,t),e):e?.set(t,n),D=(e,t,n)=>(b(e,t)||x(e,t,n()),E(e,t)),F=(e,t,n,s,r=0)=>v((n?D:E)(e,t[r],r>i(t)-2?n:S),(o=>{if(r>i(t)-2)return s?.(o)&&x(e,t[r]),o;const a=F(o,t,n,s,r+1);return C(o)&&x(e,t[r]),a})),j=e=>new Set(f(e)||R(e)?e:[e]),k=(e,t)=>e?.add(t),z=S([["avg",[(e,t)=>l(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>h(...e),(e,t)=>h(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:h(t,e)]],["min",[e=>w(...e),(e,t)=>w(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:w(t,e)]],["sum",[e=>l(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),A=Object,W=A.freeze,O=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[c,h,w,O,q,,,B,,G,H,J,K]=((e,t,n)=>{const s=e.hasRow,r=S(),l=S(),c=S(),u=S(),h=S(),w=(t,n,...s)=>{const r=D(h,t,j);return a(s,(t=>k(r,t)&&n&&e.callListener(t))),s},g=(t,...n)=>v(E(h,t),(s=>{a(d(n)?p(s):n,(t=>{e.delListener(t),Q(s,t)})),C(s)&&x(h,t)})),L=(e,t)=>{x(r,e,t),b(l,e)||(x(l,e,!0),x(c,e,S()),x(u,e,S()))},y=e=>{x(r,e),x(l,e),x(c,e),x(u,e),g(e)};return[()=>e,()=>[...r?.keys()??[]],e=>M(l,e),e=>b(l,e),e=>E(r,e),e=>E(l,e),(e,t)=>x(l,e,t),L,(t,r,l,d,h)=>{L(t,r);const v=S(),y=S(),T=E(c,t),C=E(u,t),p=t=>{const a=n=>e.getCell(r,t,n),l=E(T,t),c=s(r,t)?n(d(a,t)):void 0;var u,w;if(l===c||f(l)&&f(c)&&(w=c,i(u=l)===i(w)&&o(u,((e,t)=>w[t]===e)))||x(v,t,[l,c]),!R(h)){const e=E(C,t),n=s(r,t)?h(a,t):void 0;e!=n&&x(y,t,n)}},Q=e=>{l((()=>{m(v,(([,e],t)=>x(T,t,e))),m(y,((e,t)=>x(C,t,e)))}),v,y,T,C,e),I(v),I(y)};M(T,p),e.hasTable(r)&&a(e.getRowIds(r),(e=>{b(T,e)||p(e)})),Q(!0),g(t),w(t,0,e.addRowListener(r,null,((e,t,n)=>p(n))),e.addTableListener(r,(()=>Q())))},y,()=>M(h,y),w,g]})(r,0,y),N=l(),P=l(),U=S(),V=(e,t,...n)=>a(n,(n=>k(D(D(U,t,S),e,j),n))),X=e=>{v(E(U,e),(e=>{M(e,((e,t)=>m(t,(t=>e.delListener(t))))),I(e)})),a([P,N],(t=>t.delTable(e)))},Y=(e,t,n)=>V(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),Z={setQueryDefinition:(l,c,h)=>{B(l,c),X(l);const w=[],f=[[null,[c,null,null,[],S()]]],y=[],I=[],A=[];h({select:(e,t)=>{const n=L(e)?[i(w)+"",e]:[R(t)?e:t,n=>n(e,t)];return u(w,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=R(n)||L(t)?null:t,r=R(s)?t:n,o=[e,[e,s,L(r)?r:e=>e(r),[],S()]];return u(f,o),{as:e=>o[0]=e}},where:(e,t,n)=>u(y,L(e)?e:R(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,L(t)?[t,n,s,r]:E(z,t)??[(e,t)=>t]]];return u(I,o),{as:e=>o[0]=e}},having:(e,t)=>u(A,L(e)?e:n=>n(e)===t)});const W=S(w);if(C(W))return Z;const O=S(f);M(O,((e,[,t])=>v(E(O,t),(({3:t})=>R(e)?0:u(t,e)))));const q=S(I);let G=N;if(C(q)&&d(A))G=P;else{Y(l,G,P);const r=S();M(q,((e,[t,n])=>k(D(r,t,j),[e,n])));const a=j();M(W,(e=>b(r,e)?0:k(a,e)));const i=S(),d=(a,i,d,c)=>v(a,(([u,h,w,v])=>{M(i,((o,[a])=>{const l=D(u,o,S),i=E(l,d),h=c?void 0:a;if(i!==h){const a=j([[i,h]]),c=T(l);x(l,d,h),m(E(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(C(n))return;const[a,l,i,d]=r;return o||=R(e),m(s,(([n,s])=>{o||(e=R(n)?l?.(e,s,t++):R(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=R(e))})),o?a(p(n),T(n)):e})(v[r],c,l,a,o);v[r]=R((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&g(r)?o:void 0})(i))?null:i}))}})),C(h)||!o(A,(e=>e((e=>v[e]))))?P.delRow(l,w):R(w)?a[2]=P.addRow(l,v):P.setRow(l,w,v)}));V(G,l,G.addRowListener(l,null,((e,t,n,s)=>{const o=[],c=[],h=S(),w=G.hasRow(l,n);let g=!w;m(a,(e=>{const[t,r,a]=s(l,n,e);u(o,r),u(c,a),g||=t})),M(r,(e=>{const[t,,r]=s(l,n,e);(g||t)&&x(h,e,[r])})),g&&d(F(i,o,void 0,(([,e])=>(Q(e,n),C(e)))),h,n,1),w&&d(F(i,c,(()=>{const e={};return m(a,(t=>e[t]=G.getCell(l,n,t))),[S(),j(),void 0,e]}),(([,e])=>{k(e,n)})),h,n)})))}Y(l,r,G);const H=(e,t,n,s)=>{const i=e=>r.getCell(t,n,e);a(s,(t=>{const[n,,s,o,a]=E(O,t),d=s?.(i,e),[c,u]=E(a,e)??[];d!=c&&(R(u)||K(l,u),x(a,e,R(d)?null:[d,...J(l,1,r.addRowListener(n,d,(()=>H(e,n,d,o))))]))})),(e=>{const t=(t,n)=>r.getCell(...R(n)?[c,e,t]:t===c?[c,e,n]:[E(O,t)?.[0],E(E(O,t)?.[4],e)?.[0],n]);G.transaction((()=>o(y,(e=>e(t)))?M(W,((n,s)=>((e,t,n,s,r)=>R(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(G,l,e,n,s(t,e)))):G.delRow(l,e)))})(e)},{3:U}=E(O,null);return G.transaction((()=>J(l,1,r.addRowListener(c,null,((e,t,n)=>{r.hasRow(c,n)?H(n,c,n,U):(G.delRow(l,n),m(O,(({4:e})=>v(E(e,n),(([,t])=>{K(l,t),x(e,n)})))))}))))),Z},delQueryDefinition:e=>(X(e),G(e),Z),getStore:c,getQueryIds:h,forEachQuery:w,hasQuery:O,getTableId:q,delListener:e=>(P.delListener(e),Z),destroy:H,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=P.getListenerStats();return s}};var $,_;return $={Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},_=([e,t],n)=>{a(e?["get","has","forEach"]:["get"],(e=>Z[e+"Result"+n]=(...t)=>P[e+n](...t))),Z["addResult"+n+"Listener"]=(...e)=>{return P["add"+n+"Listener"](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](Z,...s)));var s,r}},((e,t)=>{e.map(t)})(A.entries($),(([e,t])=>_(t,e))),W(Z)})(r)),l.get(r))})();exports.createQueries=O;
1
+ "use strict";const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Row",c=i+l,d="Sorted"+i+l,u="Cell",h=u+l,g=(e,t)=>e.every(t),v=(e,t)=>e.forEach(t),w=e=>R(e,((e,t)=>e+t),0),f=e=>e.length,L=e=>0==f(e),R=(e,t,n)=>e.reduce(t,n),y=(e,...t)=>e.push(...t),T=Math.max,b=Math.min,p=isFinite,C=e=>null==e,S=(e,t,n)=>C(e)?n?.():t(e),m=t=>e(t)==r,Q=e=>Array.isArray(e),I=()=>{},E=e=>e.size,M=(e,t)=>e?.has(t)??!1,x=e=>C(e)||0==E(e),D=e=>[...e?.values()??[]],j=e=>e.clear(),k=(e,t)=>e?.forEach(t),z=(e,t)=>e?.delete(t),A=e=>new Map(e),F=(e,t)=>e?.get(t),O=(e,t)=>k(e,((e,n)=>t(n,e))),W=(e,t,n)=>C(n)?(z(e,t),e):e?.set(t,n),q=(e,t,n)=>(M(e,t)||W(e,t,n()),F(e,t)),B=(e,t,n,s,r=0)=>S((n?q:F)(e,t[r],r>f(t)-2?n:A),(o=>{if(r>f(t)-2)return s?.(o)&&W(e,t[r]),o;const a=B(o,t,n,s,r+1);return x(o)&&W(e,t[r]),a})),G=e=>new Set(Q(e)||C(e)?e:[e]),H=(e,t)=>e?.add(t),J=A([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),K=Object,N=K.freeze,P=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[w,R,T,b,P,,,U,,V,X,Y,Z]=((e,t,n)=>{const s=e.hasRow,r=A(),o=A(),a=A(),l=A(),i=A(),c=(t,n,...s)=>{const r=q(i,t,G);return v(s,(t=>H(r,t)&&n&&e.callListener(t))),s},d=(t,...n)=>S(F(i,t),(s=>{v(L(n)?D(s):n,(t=>{e.delListener(t),z(s,t)})),x(s)&&W(i,t)})),u=(e,t)=>{W(r,e,t),M(o,e)||(W(o,e,!0),W(a,e,A()),W(l,e,A()))},h=e=>{W(r,e),W(o,e),W(a,e),W(l,e),d(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>O(o,e),e=>M(o,e),e=>F(r,e),e=>F(o,e),(e,t)=>W(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const w=A(),L=A(),R=F(a,t),y=F(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=F(R,t),l=s(r,t)?n(i(o,t)):void 0;var c,d;if(a===l||Q(a)&&Q(l)&&(d=l,f(c=a)===f(d)&&g(c,((e,t)=>d[t]===e)))||W(w,t,[a,l]),!C(h)){const e=F(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&W(L,t,n)}},b=e=>{o((()=>{k(w,(([,e],t)=>W(R,t,e))),k(L,((e,t)=>W(y,t,e)))}),w,L,R,y,e),j(w),j(L)};O(R,T),e.hasTable(r)&&v(e.getRowIds(r),(e=>{M(R,e)||T(e)})),b(!0),d(t),c(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>O(i,h),c,d]})(r,0,I),$=l(),_=l(),ee=A(),te=(e,t,...n)=>v(n,(n=>H(q(q(ee,t,A),e,G),n))),ne=e=>{S(F(ee,e),(e=>{O(e,((e,t)=>k(t,(t=>e.delListener(t))))),j(e)})),v([_,$],(t=>t.delTable(e)))},se=(e,t,n)=>te(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),re={setQueryDefinition:(o,a,l)=>{U(o,a),ne(o);const i=[],c=[[null,[a,null,null,[],A()]]],d=[],u=[],h=[];l({select:(e,t)=>{const n=m(e)?[f(i)+"",e]:[C(t)?e:t,n=>n(e,t)];return y(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=C(n)||m(t)?null:t,r=C(s)?t:n,o=[e,[e,s,m(r)?r:e=>e(r),[],A()]];return y(c,o),{as:e=>o[0]=e}},where:(e,t,n)=>y(d,m(e)?e:C(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,m(t)?[t,n,s,r]:F(J,t)??[(e,t)=>t]]];return y(u,o),{as:e=>o[0]=e}},having:(e,t)=>y(h,m(e)?e:n=>n(e)===t)});const w=A(i);if(x(w))return re;const R=A(c);O(R,((e,[,t])=>S(F(R,t),(({3:t})=>C(e)?0:y(t,e)))));const T=A(u);let b=$;if(x(T)&&L(h))b=_;else{se(o,b,_);const r=A();O(T,((e,[t,n])=>H(q(r,t,G),[e,n])));const a=G();O(w,(e=>M(r,e)?0:H(a,e)));const l=A(),i=(a,l,i,c)=>S(a,(([d,u,v,w])=>{O(l,((o,[a])=>{const l=q(d,o,A),u=F(l,i),h=c?void 0:a;if(u!==h){const a=G([[u,h]]),c=E(l);W(l,i,h),k(F(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(x(n))return;const[a,l,i,c]=r;return o||=C(e),k(s,(([n,s])=>{o||(e=C(n)?l?.(e,s,t++):C(s)?i?.(e,n,t--):c?.(e,s,n,t),o||=C(e))})),o?a(D(n),E(n)):e})(w[r],c,l,a,o);w[r]=C((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&p(r)?o:void 0})(i))?null:i}))}})),x(u)||!g(h,(e=>e((e=>w[e]))))?_.delRow(o,v):C(v)?a[2]=_.addRow(o,w):_.setRow(o,v,w)}));te(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const c=[],d=[],u=A(),h=b.hasRow(o,n);let g=!h;k(a,(e=>{const[t,r,a]=s(o,n,e);y(c,r),y(d,a),g||=t})),O(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&W(u,e,[r])})),g&&i(B(l,c,void 0,(([,e])=>(z(e,n),x(e)))),u,n,1),h&&i(B(l,d,(()=>{const e={};return k(a,(t=>e[t]=b.getCell(o,n,t))),[A(),G(),void 0,e]}),(([,e])=>{H(e,n)})),u,n)})))}se(o,r,b);const Q=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);v(s,(t=>{const[n,,s,a,i]=F(R,t),c=s?.(l,e),[d,u]=F(i,e)??[];c!=d&&(C(u)||Z(o,u),W(i,e,C(c)?null:[c,...Y(o,1,r.addRowListener(n,c,(()=>Q(e,n,c,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...C(n)?[a,e,t]:t===a?[a,e,n]:[F(R,t)?.[0],F(F(R,t)?.[4],e)?.[0],n]);b.transaction((()=>g(d,(e=>e(t)))?O(w,((n,s)=>((e,t,n,s,r)=>C(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:I}=F(R,null);return b.transaction((()=>Y(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?Q(n,a,n,I):(b.delRow(o,n),k(R,(({4:e})=>S(F(e,n),(([,t])=>{Z(o,t),W(e,n)})))))}))))),re},delQueryDefinition:e=>(ne(e),V(e),re),getStore:w,getQueryIds:R,forEachQuery:T,hasQuery:b,getTableId:P,delListener:e=>(_.delListener(e),re),destroy:X,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=_.getListenerStats();return s}};var oe,ae;return oe={Table:[1,1],[c]:[0,1],[d]:[0,5],[i]:[1,2],[h]:[0,2],[u]:[1,3]},ae=([e,t],n)=>{v(e?["get","has","forEach"]:["get"],(e=>re[e+a+n]=(...t)=>_[e+n](...t))),re["add"+a+n+o]=(...e)=>{return _["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](re,...s)));var s,r}},((e,t)=>{e.map(t)})(K.entries(oe),(([e,t])=>ae(t,e))),N(re)})(r)),l.get(r))})();exports.createQueries=P;
Binary file
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),s=(e,t)=>e.forEach(t),n=e=>e.length,o=(e,...t)=>e.push(...t),r=e=>null==e,i=(e,t,s)=>r(e)?s?.():t(e),a=e=>Array.isArray(e),l=(e,t)=>e?.has(t)??!1,d=e=>r(e)||0==(e=>e.size)(e),c=e=>[...e?.values()??[]],u=e=>e.clear(),R=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),f=e=>new Map(e),L=(e,t)=>e?.get(t),g=(e,t)=>R(e,((e,s)=>t(s,e))),w=(e,t,s)=>r(s)?(h(e,t),e):e?.set(t,s),p=(e,t,s)=>(l(e,t)||w(e,t,s()),L(e,t)),I=(e,t,s,o,r=0)=>i((s?p:L)(e,t[r],r>n(t)-2?s:f),(i=>{if(r>n(t)-2)return o?.(i)&&w(e,t[r]),i;const a=I(i,t,s,o,r+1);return d(i)&&w(e,t[r]),a})),v=e=>new Set(a(e)||r(e)?e:[e]),y=(e,t)=>e?.add(t),b=/^\d+$/,k=Object.freeze,E=(E=>{const T=new WeakMap;return E=>(T.has(E)||T.set(E,(E=>{const T=f(),m=f(),S=f(),z=f(),[A,D,M,j,x,C,,,O,W,$]=((e,t,o)=>{const I=e.hasRow,b=f(),k=f(),E=f(),T=f(),m=f(),S=(t,n,...o)=>{const r=p(m,t,v);return s(o,(t=>y(r,t)&&n&&e.callListener(t))),o},z=(t,...o)=>i(L(m,t),(r=>{s(0==n(o)?c(r):o,(t=>{e.delListener(t),h(r,t)})),d(r)&&w(m,t)})),A=(e,t)=>{w(b,e,t),l(k,e)||(w(k,e,[f(),f(),f(),f()]),w(E,e,f()),w(T,e,f()))},D=e=>{w(b,e),w(k,e),w(E,e),w(T,e),z(e)};return[()=>e,()=>[...b?.keys()??[]],e=>g(k,e),e=>l(k,e),e=>L(b,e),e=>L(k,e),(e,t)=>w(k,e,t),A,(t,o,i,d,c)=>{A(t,o);const h=f(),p=f(),v=L(E,t),y=L(T,t),b=t=>{const s=s=>e.getCell(o,t,s),i=L(v,t),l=I(o,t)?(u=d(s,t),r(u)?void 0:u+""):void 0;var u,R,f,g;if(i===l||a(i)&&a(l)&&(f=l,n(R=i)===n(f)&&(g=(e,t)=>f[t]===e,R.every(g)))||w(h,t,[i,l]),!r(c)){const e=L(y,t),n=I(o,t)?c(s,t):void 0;e!=n&&w(p,t,n)}},k=e=>{i((()=>{R(h,(([,e],t)=>w(v,t,e))),R(p,((e,t)=>w(y,t,e)))}),h,p,v,y,e),u(h),u(p)};g(v,b),e.hasTable(o)&&s(e.getRowIds(o),(e=>{l(v,e)||b(e)})),k(!0),z(t),S(t,0,e.addRowListener(o,null,((e,t,s)=>b(s))),e.addTableListener(o,(()=>k())))},D,()=>g(m,D),S,z]})(E),[q,B,F]=(e=>{let t;const[a,l]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{b.test(t)&&n(e)<1e3&&o(e,t)}]})(),c=f();return[(e,s,n,o=[],r=(()=>[]))=>{t??=K;const i=a();return w(c,i,[e,s,n,o,r]),y(I(s,n??[""],v),i),i},(e,r,...i)=>s(((e,t=[""])=>{const r=[],i=(e,a)=>a==n(t)?o(r,e):null===t[a]?R(e,(e=>i(e,a+1))):s([t[a],null],(t=>i(L(e,t),a+1)));return i(e,0),r})(e,r),(e=>R(e,(e=>L(c,e)[0](t,...r??[],...i))))),e=>i(L(c,e),(([,t,s])=>(I(t,s??[""],void 0,(t=>(h(t,e),d(t)?1:0))),w(c,e),l(e),s))),e=>i(L(c,e),(([e,,o=[],i,a])=>{const l=(...d)=>{const c=n(d);c==n(o)?e(t,...d,...a(d)):r(o[c])?s(i[c]?.(...d)??[],(e=>l(...d,e))):l(...d,o[c])};l()}))]})(),G=(e,t,s)=>i(C(e),(([n,,o])=>{if(!l(o,t)){const i=v();if(x(e)!=J(e))y(i,t);else{let e=t;for(;!r(e)&&!l(i,e);)y(i,e),e=L(n,e)}if(s)return i;w(o,t,i)}return L(o,t)})),H=(e,t)=>i(C(e),(([,,e])=>w(e,t))),J=e=>L(T,e),K={setRelationshipDefinition:(s,n,o,a)=>{return w(T,s,o),O(s,n,((e,t)=>{const n=v(),o=v(),a=v(),[c,u]=C(s);R(t,(([e,t],R)=>{r(e)||(y(o,e),i(L(u,e),(t=>{h(t,R),d(t)&&w(u,e)}))),r(t)||(y(o,t),l(u,t)||w(u,t,v()),y(L(u,t),R)),y(n,R),w(c,R,t),g(L(z,s),(e=>{l(G(s,e),R)&&y(a,e)}))})),e(),R(n,(e=>B(m,[s,e]))),R(o,(e=>B(S,[s,e]))),R(a,(e=>{H(s,e),B(z,[s,e])}))}),e(c=a)==t?e=>e(c):c??(()=>"")),K;var c},delRelationshipDefinition:e=>(w(T,e),W(e),K),getStore:A,getRelationshipIds:D,forEachRelationship:e=>M((t=>e(t,(e=>E.forEachRow(x(t),e))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:J,getRemoteRowId:(e,t)=>L(C(e)?.[0],t),getLocalRowIds:(e,t)=>c(L(C(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(C(e))?[t]:c(G(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>q(s,m,[e,t]),addLocalRowIdsListener:(e,t,s)=>q(s,S,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(G(e,t),q(s,z,[e,t])),delListener:e=>(H(...F(e)),K),destroy:$,getListenerStats:()=>({})};return k(K)})(E)),T.get(E))})();exports.createRelationships=E;
1
+ "use strict";const e=e=>typeof e,t="",n=e(t),s=(e,t)=>e.forEach(t),r=e=>e.length,o=(e,...t)=>e.push(...t),i=e=>null==e,a=(e,t,n)=>i(e)?n?.():t(e),l=e=>Array.isArray(e),d=(e,t)=>e?.has(t)??!1,c=e=>i(e)||0==(e=>e.size)(e),u=e=>[...e?.values()??[]],R=e=>e.clear(),h=(e,t)=>e?.forEach(t),f=(e,t)=>e?.delete(t),L=e=>new Map(e),g=(e,t)=>e?.get(t),w=(e,t)=>h(e,((e,n)=>t(n,e))),p=(e,t,n)=>i(n)?(f(e,t),e):e?.set(t,n),I=(e,t,n)=>(d(e,t)||p(e,t,n()),g(e,t)),v=(e,t,n,s,o=0)=>a((n?I:g)(e,t[o],o>r(t)-2?n:L),(i=>{if(o>r(t)-2)return s?.(i)&&p(e,t[o]),i;const a=v(i,t,n,s,o+1);return c(i)&&p(e,t[o]),a})),y=e=>new Set(l(e)||i(e)?e:[e]),b=(e,t)=>e?.add(t),k=/^\d+$/,E=Object.freeze,T=(T=>{const m=new WeakMap;return T=>(m.has(T)||m.set(T,(T=>{const m=L(),S=L(),z=L(),A=L(),[D,M,j,x,C,O,,,W,$,q]=((e,n,o)=>{const v=e.hasRow,k=L(),E=L(),T=L(),m=L(),S=L(),z=(t,n,...r)=>{const o=I(S,t,y);return s(r,(t=>b(o,t)&&n&&e.callListener(t))),r},A=(t,...n)=>a(g(S,t),(o=>{s(0==r(n)?u(o):n,(t=>{e.delListener(t),f(o,t)})),c(o)&&p(S,t)})),D=(e,t)=>{p(k,e,t),d(E,e)||(p(E,e,[L(),L(),L(),L()]),p(T,e,L()),p(m,e,L()))},M=e=>{p(k,e),p(E,e),p(T,e),p(m,e),A(e)};return[()=>e,()=>{return e=k,[...e?.keys()??[]];var e},e=>w(E,e),e=>d(E,e),e=>g(k,e),e=>g(E,e),(e,t)=>p(E,e,t),D,(n,o,a,c,u)=>{D(n,o);const f=L(),I=L(),y=g(T,n),b=g(m,n),k=n=>{const s=t=>e.getCell(o,n,t),a=g(y,n),d=v(o,n)?(R=c(s,n),i(R)?void 0:R+t):void 0;var R,h,L,w;if(a===d||l(a)&&l(d)&&(L=d,r(h=a)===r(L)&&(w=(e,t)=>L[t]===e,h.every(w)))||p(f,n,[a,d]),!i(u)){const e=g(b,n),t=v(o,n)?u(s,n):void 0;e!=t&&p(I,n,t)}},E=e=>{a((()=>{h(f,(([,e],t)=>p(y,t,e))),h(I,((e,t)=>p(b,t,e)))}),f,I,y,b,e),R(f),R(I)};w(y,k),e.hasTable(o)&&s(e.getRowIds(o),(e=>{d(y,e)||k(e)})),E(!0),A(n),z(n,0,e.addRowListener(o,null,((e,t,n)=>k(n))),e.addTableListener(o,(()=>E())))},M,()=>w(S,M),z,A]})(T),[B,F,G]=(e=>{let n;const[l,d]=(()=>{const e=[];let n=0;return[s=>(s?e.shift():null)??t+n++,t=>{k.test(t)&&r(e)<1e3&&o(e,t)}]})(),u=L();return[(e,s,r,o=[],i=(()=>[]))=>{n??=N;const a=l(1);return p(u,a,[e,s,r,o,i]),b(v(s,r??[t],y),a),a},(e,i,...a)=>s(((e,n=[t])=>{const i=[],a=(e,t)=>t==r(n)?o(i,e):null===n[t]?h(e,(e=>a(e,t+1))):s([n[t],null],(n=>a(g(e,n),t+1)));return a(e,0),i})(e,i),(e=>h(e,(e=>g(u,e)[0](n,...i??[],...a))))),e=>a(g(u,e),(([,n,s])=>(v(n,s??[t],void 0,(t=>(f(t,e),c(t)?1:0))),p(u,e),d(e),s))),e=>a(g(u,e),(([e,,t=[],o,a])=>{const l=(...d)=>{const c=r(d);c==r(t)?e(n,...d,...a(d)):i(t[c])?s(o[c]?.(...d)??[],(e=>l(...d,e))):l(...d,t[c])};l()}))]})(),H=(e,t,n)=>a(O(e),(([s,,r])=>{if(!d(r,t)){const o=y();if(C(e)!=K(e))b(o,t);else{let e=t;for(;!i(e)&&!d(o,e);)b(o,e),e=g(s,e)}if(n)return o;p(r,t,o)}return g(r,t)})),J=(e,t)=>a(O(e),(([,,e])=>p(e,t))),K=e=>g(m,e),N={setRelationshipDefinition:(s,r,o,l)=>{return p(m,s,o),W(s,r,((e,t)=>{const n=y(),r=y(),o=y(),[l,u]=O(s);h(t,(([e,t],R)=>{i(e)||(b(r,e),a(g(u,e),(t=>{f(t,R),c(t)&&p(u,e)}))),i(t)||(b(r,t),d(u,t)||p(u,t,y()),b(g(u,t),R)),b(n,R),p(l,R,t),w(g(A,s),(e=>{d(H(s,e),R)&&b(o,e)}))})),e(),h(n,(e=>F(S,[s,e]))),h(r,(e=>F(z,[s,e]))),h(o,(e=>{J(s,e),F(A,[s,e])}))}),e(u=l)==n?e=>e(u):u??(()=>t)),N;var u},delRelationshipDefinition:e=>(p(m,e),$(e),N),getStore:D,getRelationshipIds:M,forEachRelationship:e=>j((t=>e(t,(e=>T.forEachRow(C(t),e))))),hasRelationship:x,getLocalTableId:C,getRemoteTableId:K,getRemoteRowId:(e,t)=>g(O(e)?.[0],t),getLocalRowIds:(e,t)=>u(g(O(e)?.[1],t)),getLinkedRowIds:(e,t)=>i(O(e))?[t]:u(H(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>B(n,S,[e,t]),addLocalRowIdsListener:(e,t,n)=>B(n,z,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(H(e,t),B(n,A,[e,t])),delListener:e=>(J(...G(e)),N),destroy:q,getListenerStats:()=>({})};return E(N)})(T)),m.get(T))})();exports.createRelationships=T;
Binary file
package/lib/cjs/store.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t=e(""),s=e(!0),l=e(0),a=e(e),n=e=>""+e,r=(e,t)=>e.forEach(t),o=(e,t)=>e.map(t),c=e=>e.length,u=(e,t,s)=>e.slice(t,s),i=(e,...t)=>e.push(...t),d=e=>JSON.stringify(e,((e,t)=>{return T(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),f=JSON.parse,h=isFinite,T=(e,t)=>e instanceof t,V=e=>null==e,g=(e,t,s)=>V(e)?s?.():t(e),b=e=>e==t||e==s,S=t=>e(t)==a,v=(e,t)=>e?.has(t)??!1,w=e=>V(e)||0==(e=>e.size)(e),y=e=>e.clear(),I=(e,t)=>e?.forEach(t),R=(e,t)=>e?.delete(t),p=e=>new Map(e),C=e=>[...e?.keys()??[]],J=(e,t)=>e?.get(t),m=(e,t)=>I(e,((e,s)=>t(s,e))),L=(e,t,s)=>V(s)?(R(e,t),e):e?.set(t,s),E=(e,t,s)=>(v(e,t)||L(e,t,s()),J(e,t)),F=(e,t,s)=>{const l={},a=t??(e=>e);return I(e,((e,t)=>g(a(e),(e=>s?.(e)?0:l[t]=e)))),l},z=(e,t)=>{const s=p(),l=t??(e=>e);return I(e,((e,t)=>s.set(t,l(e)))),s},O=e=>z(e,z),k=(e,t,s,l,a=0)=>g((s?E:J)(e,t[a],a>c(t)-2?s:p),(n=>{if(a>c(t)-2)return l?.(n)&&L(e,t[a]),n;const r=k(n,t,s,l,a+1);return w(n)&&L(e,t[a]),r})),A=e=>new Set(Array.isArray(e)||V(e)?e:[e]),M=(e,t)=>e?.add(t),N=/^\d+$/,P=()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{N.test(t)&&c(e)<1e3&&i(e,t)}]},j=Object,x=j.keys,D=j.isFrozen,W=j.freeze,$=e=>T(e,j)&&e.constructor==j,q=(e,t)=>!V(((e,t)=>g(e,(e=>e[t])))(e,t)),B=(e,t)=>delete e[t],G=(e,t)=>o(j.entries(e),(([e,s])=>t(s,e))),H=e=>{return $(e)&&(t=x(e),0==c(t));var t},K=e=>[e,e],Q=()=>[p(),p()],U=t=>{const s=e(t);return b(s)||s==l&&h(t)?s:void 0},X=(e,t,s,l=L)=>{const a=(n=e=>!q(t,e),C(e).filter(n));var n;return r(x(t),(l=>s(e,l,t[l]))),r(a,(t=>l(e,t))),e},Y=(e,t,s)=>V(e)||!$(e)||H(e)||D(e)?(s?.(),!1):(G(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),Z=(e,t,s)=>L(e,t,J(e,t)==-s?void 0:s),_=()=>{let e,t,s,a,h=0;const T=p(),N=p(),j=p(),x=p(),D=p(),$=p(),ee=p(),te=p(),se=p(),le=p(),ae=p(),ne=p(),re=A(),oe=p(),ce=p(),ue=p(),ie=Q(),de=Q(),fe=Q(),he=Q(),Te=Q(),Ve=Q(),ge=Q(),be=Q(),Se=Q(),ve=Q(),we=Q(),ye=Q(),Ie=Q(),Re=Q(),[pe,Ce,Je,me]=(e=>{let t;const[s,l]=P(),a=p();return[(e,l,n,r=[],o=(()=>[]))=>{t??=Nt;const c=s();return L(a,c,[e,l,n,r,o]),M(k(l,n??[""],A),c),c},(e,s,...l)=>r(((e,t=[""])=>{const s=[],l=(e,a)=>a==c(t)?i(s,e):null===t[a]?I(e,(e=>l(e,a+1))):r([t[a],null],(t=>l(J(e,t),a+1)));return l(e,0),s})(e,s),(e=>I(e,(e=>J(a,e)[0](t,...s??[],...l))))),e=>g(J(a,e),(([,t,s])=>(k(t,s??[""],void 0,(t=>(R(t,e),w(t)?1:0))),L(a,e),l(e),s))),e=>g(J(a,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const u=c(o);u==c(s)?e(t,...o,...a(o)):V(s[u])?r(l[u]?.(...o)??[],(e=>n(...o,e))):n(...o,s[u])};n()}))]})(),Le=e=>{if(!Y(e,((e,t)=>["type","default"].includes(t))))return!1;const t=e.type;return!(!b(t)&&t!=l||(U(e.default)!=t&&B(e,"default"),0))},Ee=(t,s)=>(!e||v(se,s)||nt(s))&&Y(t,((e,t)=>Fe(s,t,e)),(()=>nt(s))),Fe=(e,t,s,l)=>Y(l?s:Ae(s,e,t),((l,a)=>g(ze(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>nt(e,t))),ze=(t,s,l,a)=>e?g(J(J(se,t),l),(e=>U(a)!=e.type?nt(t,s,l,a,e.default):a),(()=>nt(t,s,l,a))):V(U(a))?nt(t,s,l,a):a,Oe=(e,t)=>Y(t?e:Me(e),((t,s)=>g(ke(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>rt())),ke=(e,s)=>t?g(J(ae,e),(t=>U(s)!=t.type?rt(e,s,t.default):s),(()=>rt(e,s))):V(U(s))?rt(e,s):s,Ae=(e,t,s)=>(g(J(le,t),(([l,a])=>{I(l,((t,s)=>{q(e,s)||(e[s]=t)})),I(a,(l=>{q(e,l)||nt(t,s,l)}))})),e),Me=e=>(t&&(I(ne,((t,s)=>{q(e,s)||(e[s]=t)})),I(re,(t=>{q(e,t)||rt(t)}))),e),Ne=e=>X(se,e,((e,t,s)=>{const l=p(),a=A();X(E(se,t,p),s,((e,t,s)=>{L(e,t,s),g(s.default,(e=>L(l,t,e)),(()=>M(a,t)))})),L(le,t,[l,a])}),((e,t)=>{L(se,t),L(le,t)})),Pe=e=>X(ae,e,((e,t,s)=>{L(ae,t,s),g(s.default,(e=>L(ne,t,e)),(()=>M(re,t)))}),((e,t)=>{L(ae,t),L(ne,t),R(re,t)})),je=e=>H(e)?Et():pt(e),xe=e=>X(ce,e,((e,t,s)=>De(t,s)),((e,t)=>Ue(t))),De=(e,t)=>X(E(ce,e,(()=>(_e(e,1),p()))),t,((t,s,l)=>We(e,t,s,l)),((t,s)=>Xe(e,t,s))),We=(e,t,s,l,a)=>X(E(t,s,(()=>(et(e,s,1),p()))),l,((t,l,a)=>$e(e,s,t,l,a)),((l,n)=>Ye(e,t,s,l,n,a))),$e=(e,t,s,l,a)=>{v(s,l)||tt(e,t,l,1);const n=J(s,l);a!==n&&(st(e,t,l,n,a),L(s,l,a))},qe=(e,t,s,l,a)=>g(J(t,s),(t=>$e(e,s,t,l,a)),(()=>We(e,t,s,Ae({[l]:a},e,s)))),Be=e=>H(e)?Ft():Ct(e),Ge=e=>X(ue,e,((e,t,s)=>He(t,s)),((e,t)=>Ze(t))),He=(e,t)=>{v(ue,e)||lt(e,1);const s=J(ue,e);t!==s&&(at(e,s,t),L(ue,e,t))},Ke=e=>{const[t]=E(oe,e,P),s=t();return v(J(ce,e),s)?Ke(e):s},Qe=e=>J(ce,e)??De(e,{}),Ue=e=>De(e,{}),Xe=(e,t,s)=>{const[,l]=E(oe,e,P);l(s),We(e,t,s,{},!0)},Ye=(e,t,s,l,a,n)=>{const r=J(J(le,e)?.[0],a);if(!V(r)&&!n)return $e(e,s,l,a,r);const o=t=>{st(e,s,t,J(l,t)),tt(e,s,t,-1),L(l,t)};V(r)?o(a):m(l,o),w(l)&&(et(e,s,-1),w(L(t,s))&&(_e(e,-1),L(ce,e),L(oe,e)))},Ze=e=>{const t=J(ne,e);if(!V(t))return He(e,t);at(e,J(ue,e)),lt(e,-1),L(ue,e)},_e=(e,t)=>Z(T,e,t),et=(e,t,s)=>Z(E(N,e,p),t,s),tt=(e,t,s,l)=>Z(E(E(j,e,p),t,p),s,l),st=(e,t,s,l,a)=>E(E(E(x,e,p),t,p),s,(()=>[l,0]))[1]=a,lt=(e,t)=>Z(D,e,t),at=(e,t,s)=>E($,e,(()=>[t,0]))[1]=s,nt=(e,t,s,l,a)=>(i(E(E(E(ee,e,p),t,p),s,(()=>[])),l),a),rt=(e,t,s)=>(i(E(te,e,(()=>[])),t),s),ot=(e,t,s)=>g(J(J(J(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...K(wt(e,t,s))])),ct=e=>g(J($,e),(([e,t])=>[!0,e,t]),(()=>[!1,...K(Rt(e))])),ut=e=>w(ee)||w(Se[e])?0:I(e?z(ee,O):ee,((t,s)=>I(t,((t,l)=>I(t,((t,a)=>Ce(Se[e],[s,l,a],t))))))),it=e=>w(te)||w(ve[e])?0:I(e?z(te):te,((t,s)=>Ce(ve[e],[s],t))),dt=(e,t,s)=>{if(!w(t))return Ce(e,s),1},ft=e=>{const t=w(Te[e]),s=w(ge[e])&&w(he[e])&&t&&w(de[e]),l=w(be[e])&&w(Ve[e])&&w(fe[e])&&w(ie[e]);if(!s||!l){const a=e?[z(T),O(N),z(j,O),z(x,O)]:[T,N,j,x];if(!s){I(a[2],((t,s)=>I(t,((t,l)=>dt(ge[e],t,[s,l])))));const s=A();I(a[1],((l,a)=>{dt(he[e],l,[a])&&!t&&(Ce(Te[e],[a,null]),M(s,a))})),t||I(a[3],((t,l)=>{if(!v(s,l)){const s=A();I(t,(e=>I(e,(([t,l],a)=>l!==t?M(s,a):R(e,a))))),I(s,(t=>Ce(Te[e],[l,t])))}})),dt(de[e],a[0])}if(!l){let t;I(a[3],((s,l)=>{let a;I(s,((s,n)=>{let r;I(s,(([s,o],c)=>{o!==s&&(Ce(be[e],[l,n,c],o,s,ot),t=a=r=1)})),r&&Ce(Ve[e],[l,n],ot)})),a&&Ce(fe[e],[l],ot)})),t&&Ce(ie[e],void 0,ot)}}},ht=e=>{const t=w(ye[e]),s=w(Ie[e])&&w(we[e]);if(!t||!s){const l=e?[z(D),z($)]:[D,$];if(t||dt(ye[e],l[0]),!s){let t;I(l[1],(([s,l],a)=>{l!==s&&(Ce(Ie[e],[a],l,s,ct),t=1)})),t&&Ce(we[e],void 0,ct)}}},Tt=(e,...t)=>(kt((()=>e(...o(t,n)))),Nt),Vt=()=>F(ce,(e=>F(e,F))),gt=()=>C(ce),bt=e=>C(J(ce,n(e))),St=(e,t,s,l=0,a)=>{return o(u((c=J(ce,n(e)),i=(e,s)=>[V(t)?s:J(e,n(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),o([...c?.entries()??[]],(([e,t])=>i(t,e))).sort(r)),l,V(a)?a:l+a),(([,e])=>e));var r,c,i},vt=(e,t)=>C(J(J(ce,n(e)),n(t))),wt=(e,t,s)=>J(J(J(ce,n(e)),n(t)),n(s)),yt=()=>F(ue),It=()=>C(ue),Rt=e=>J(ue,n(e)),pt=e=>Tt((()=>(e=>Y(e,Ee,nt))(e)?xe(e):0)),Ct=e=>Tt((()=>Oe(e)?Ge(e):0)),Jt=e=>{try{je(f(e))}catch{}return Nt},mt=t=>Tt((()=>{if((e=Y(t,(e=>Y(e,Le))))&&(Ne(t),!w(ce))){const e=Vt();Et(),pt(e)}})),Lt=e=>Tt((()=>{if(t=(e=>Y(e,Le))(e)){const s=yt();Ot(),Ft(),t=!0,Pe(e),Ct(s)}})),Et=()=>Tt((()=>xe({}))),Ft=()=>Tt((()=>Ge({}))),zt=()=>Tt((()=>{Ne({}),e=!1})),Ot=()=>Tt((()=>{Pe({}),t=!1})),kt=(e,t)=>{if(-1==h)return;At();const s=e();return Mt(t),s},At=()=>(h++,Nt),Mt=e=>(h>0&&(h--,0==h&&(s=!w(x),a=!w($),h=1,ut(1),s&&ft(1),it(1),a&&ht(1),h=-1,e?.(F(x,(e=>F(e,(e=>F(e,(e=>[...e]),(([e,t])=>e===t))),H)),H),F(ee,(e=>F(e,F))),F($,(e=>[...e]),(([e,t])=>e===t)),F(te))&&(h=1,I(x,((e,t)=>I(e,((e,s)=>I(e,(([e],l)=>((e,t,s,l,a)=>V(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a))(Nt,t,s,l,e))))))),I($,(([e],t)=>((e,t,s)=>V(s)?e.delValue(t):e.setValue(t,s))(Nt,t,e))),h=-1,s=a=!1),Ce(Re[0],void 0,s,a),ut(0),s&&ft(0),it(0),a&&ht(0),Ce(Re[1],void 0,s,a),h=0,r([T,N,j,x,ee,D,$,te],y))),Nt),Nt={getTables:Vt,getTableIds:gt,getTable:e=>F(J(ce,n(e)),F),getRowIds:bt,getSortedRowIds:St,getRow:(e,t)=>F(J(J(ce,n(e)),n(t))),getCellIds:vt,getCell:wt,getValues:yt,getValueIds:It,getValue:Rt,hasTables:()=>!w(ce),hasTable:e=>v(ce,n(e)),hasRow:(e,t)=>v(J(ce,n(e)),n(t)),hasCell:(e,t,s)=>v(J(J(ce,n(e)),n(t)),n(s)),hasValues:()=>!w(ue),hasValue:e=>v(ue,n(e)),getTablesJson:()=>d(ce),getValuesJson:()=>d(ue),getJson:()=>d([ce,ue]),getTablesSchemaJson:()=>d(se),getValuesSchemaJson:()=>d(ae),getSchemaJson:()=>d([se,ae]),setTables:pt,setTable:(e,t)=>Tt((e=>Ee(t,e)?De(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Fe(e,t,s)?We(e,Qe(e),t,s):0),e,t),addRow:(e,t)=>kt((()=>{let s;return Fe(e,s,t)&&(e=n(e),We(e,Qe(e),s=Ke(e),t)),s})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Fe(e,t,s,1)){const l=Qe(e);G(s,((s,a)=>qe(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>g(ze(e,t,s,S(l)?l(wt(e,t,s)):l),(l=>qe(e,Qe(e),t,s,l)))),e,t,s),setValues:Ct,setPartialValues:e=>Tt((()=>Oe(e,1)?G(e,((e,t)=>He(t,e))):0)),setValue:(e,t)=>Tt((e=>g(ke(e,S(t)?t(Rt(e)):t),(t=>He(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Be(f(e))}catch{}return Nt},setJson:e=>{try{const[t,s]=f(e);je(t),Be(s)}catch{Jt(e)}return Nt},setTablesSchema:mt,setValuesSchema:Lt,setSchema:(e,t)=>Tt((()=>{mt(e),Lt(t)})),delTables:Et,delTable:e=>Tt((e=>v(ce,e)?Ue(e):0),e),delRow:(e,t)=>Tt(((e,t)=>g(J(ce,e),(s=>v(s,t)?Xe(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Tt(((e,t,s)=>g(J(ce,e),(a=>g(J(a,t),(n=>v(n,s)?Ye(e,a,t,n,s,l):0))))),e,t,s),delValues:Ft,delValue:e=>Tt((e=>v(ue,e)?Ze(e):0),e),delTablesSchema:zt,delValuesSchema:Ot,delSchema:()=>Tt((()=>{zt(),Ot()})),transaction:kt,startTransaction:At,finishTransaction:Mt,forEachTable:e=>I(ce,((t,s)=>e(s,(e=>I(t,((t,s)=>e(s,(e=>m(t,e))))))))),forEachRow:(e,t)=>I(J(ce,n(e)),((e,s)=>t(s,(t=>m(e,t))))),forEachCell:(e,t,s)=>m(J(J(ce,n(e)),n(t)),s),forEachValue:e=>m(ue,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=St(e,t,s,l,a);return pe((()=>{const r=St(e,t,s,l,a);var u,i,d;i=o,c(u=r)===c(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=r,n(Nt,e,t,s,l,a,o))}),Te[r?1:0],[e,t],[gt])},addWillFinishTransactionListener:e=>pe(e,Re[0]),addDidFinishTransactionListener:e=>pe(e,Re[1]),callListener:e=>(me(e),Nt),delListener:e=>(Je(e),Nt),getListenerStats:()=>({}),createStore:_};return G({Tables:[0,ie],TableIds:[0,de],Table:[1,fe,[gt]],RowIds:[1,he,[gt]],Row:[2,Ve,[gt,bt]],CellIds:[2,ge,[gt,bt]],Cell:[3,be,[gt,bt,vt],e=>K(wt(...e))],InvalidCell:[3,Se],Values:[0,we],ValueIds:[0,ye],Value:[1,Ie,[It],e=>K(Rt(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Nt["add"+a+"Listener"]=(...a)=>pe(a[e],t[a[e+1]?1:0],e>0?u(a,0,e):void 0,s,l)})),W(Nt)};exports.createStore=_;
1
+ "use strict";const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),r=e(e),l="type",o="default",c="Ids",i="Table",u=i+"s",d=i+c,h="Row"+c,f="Cell",g=f+c,T="Value",V=T+"s",S=T+c,b=e=>t+e,v=(e,t)=>e.forEach(t),w=(e,t)=>e.map(t),R=e=>e.length,y=(e,t,s)=>e.slice(t,s),J=(e,...t)=>e.push(...t),m=e=>JSON.stringify(e,((e,t)=>{return p(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),n={},[...t].reduce(s,n)):t;var s,n})),C=JSON.parse,I=isFinite,p=(e,t)=>e instanceof t,L=e=>null==e,E=(e,t,s)=>L(e)?s?.():t(e),F=e=>e==s||e==n,z=t=>e(t)==r,O=(e,t)=>e?.has(t)??!1,k=e=>L(e)||0==(e=>e.size)(e),A=e=>e.clear(),M=(e,t)=>e?.forEach(t),N=(e,t)=>e?.delete(t),P=e=>new Map(e),j=e=>[...e?.keys()??[]],x=(e,t)=>e?.get(t),D=(e,t)=>M(e,((e,s)=>t(s,e))),W=(e,t,s)=>L(s)?(N(e,t),e):e?.set(t,s),$=(e,t,s)=>(O(e,t)||W(e,t,s()),x(e,t)),q=(e,t,s)=>{const n={},a=t??(e=>e);return M(e,((e,t)=>E(a(e),(e=>s?.(e)?0:n[t]=e)))),n},B=(e,t)=>{const s=P(),n=t??(e=>e);return M(e,((e,t)=>s.set(t,n(e)))),s},G=e=>B(e,B),H=(e,t,s,n,a=0)=>E((s?$:x)(e,t[a],a>R(t)-2?s:P),(r=>{if(a>R(t)-2)return n?.(r)&&W(e,t[a]),r;const l=H(r,t,s,n,a+1);return k(r)&&W(e,t[a]),l})),K=e=>new Set(Array.isArray(e)||L(e)?e:[e]),Q=(e,t)=>e?.add(t),U=/^\d+$/,X=()=>{const e=[];let s=0;return[n=>(n?e.shift():null)??t+s++,t=>{U.test(t)&&R(e)<1e3&&J(e,t)}]},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>p(e,Y)&&e.constructor==Y,se=(e,t)=>!L(((e,t)=>E(e,(e=>e[t])))(e,t)),ne=(e,t)=>delete e[t],ae=(e,t)=>w(Y.entries(e),(([e,s])=>t(s,e))),re=e=>{return te(e)&&(t=Z(e),0==R(t));var t},le=e=>[e,e],oe=()=>[P(),P()],ce=t=>{const s=e(t);return F(s)||s==a&&I(t)?s:void 0},ie=(e,t,s,n=W)=>(ae(t,((t,n)=>s(e,n,t))),D(e,(s=>se(t,s)?0:n(e,s))),e),ue=(e,t,s)=>L(e)||!te(e)||re(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!re(e)),de=(e,t,s)=>W(e,t,x(e,t)==-s?void 0:s),he=()=>{let e,s,n,r,c=0;const I=P(),p=P(),U=P(),Y=P(),Z=P(),_=P(),te=P(),fe=P(),ge=P(),Te=P(),Ve=P(),Se=P(),be=K(),ve=P(),we=P(),Re=P(),ye=oe(),Je=oe(),me=oe(),Ce=oe(),Ie=oe(),pe=oe(),Le=oe(),Ee=oe(),Fe=oe(),ze=oe(),Oe=oe(),ke=oe(),Ae=oe(),Me=P(),Ne=oe(),[Pe,je,xe,De]=(e=>{let s;const[n,a]=X(),r=P();return[(e,a,l,o=[],c=(()=>[]))=>{s??=Ut;const i=n(1);return W(r,i,[e,a,l,o,c]),Q(H(a,l??[t],K),i),i},(e,n,...a)=>v(((e,s=[t])=>{const n=[],a=(e,t)=>t==R(s)?J(n,e):null===s[t]?M(e,(e=>a(e,t+1))):v([s[t],null],(s=>a(x(e,s),t+1)));return a(e,0),n})(e,n),(e=>M(e,(e=>x(r,e)[0](s,...n??[],...a))))),e=>E(x(r,e),(([,s,n])=>(H(s,n??[t],void 0,(t=>(N(t,e),k(t)?1:0))),W(r,e),a(e),n))),e=>E(x(r,e),(([e,,t=[],n,a])=>{const r=(...l)=>{const o=R(l);o==R(t)?e(s,...l,...a(l)):L(t[o])?v(n[o]?.(...l)??[],(e=>r(...l,e))):r(...l,t[o])};r()}))]})(),We=e=>{if(!ue(e,((e,t)=>[l,o].includes(t))))return!1;const t=e[l];return!(!F(t)&&t!=a||(ce(e[o])!=t&&ne(e,o),0))},$e=(t,s)=>(!e||O(ge,s)||bt(s))&&ue(t,((e,t)=>qe(s,t,e)),(()=>bt(s))),qe=(e,t,s,n)=>ue(n?s:Ke(s,e,t),((n,a)=>E(Be(e,t,a,n),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Be=(t,s,n,a)=>e?E(x(x(ge,t),n),(e=>ce(a)!=e[l]?bt(t,s,n,a,e[o]):a),(()=>bt(t,s,n,a))):L(ce(a))?bt(t,s,n,a):a,Ge=(e,t)=>ue(t?e:Qe(e),((t,s)=>E(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>vt())),He=(e,t)=>s?E(x(Ve,e),(s=>ce(t)!=s[l]?vt(e,t,s[o]):t),(()=>vt(e,t))):L(ce(t))?vt(e,t):t,Ke=(e,t,s)=>(E(x(Te,t),(([n,a])=>{M(n,((t,s)=>{se(e,s)||(e[s]=t)})),M(a,(n=>{se(e,n)||bt(t,s,n)}))})),e),Qe=e=>(s&&(M(Se,((t,s)=>{se(e,s)||(e[s]=t)})),M(be,(t=>{se(e,t)||vt(t)}))),e),Ue=e=>ie(ge,e,((e,t,s)=>{const n=P(),a=K();ie($(ge,t,P),s,((e,t,s)=>{W(e,t,s),E(s[o],(e=>W(n,t,e)),(()=>Q(a,t)))})),W(Te,t,[n,a])}),((e,t)=>{W(ge,t),W(Te,t)})),Xe=e=>ie(Ve,e,((e,t,s)=>{W(Ve,t,s),E(s[o],(e=>W(Se,t,e)),(()=>Q(be,t)))}),((e,t)=>{W(Ve,t),W(Se,t),N(be,t)})),Ye=e=>re(e)?$t():Pt(e),Ze=e=>ie(we,e,((e,t,s)=>_e(t,s)),((e,t)=>ct(t))),_e=(e,t)=>ie($(we,e,(()=>(ht(e,1),P()))),t,((t,s,n)=>et(e,t,s,n)),((t,s)=>it(e,t,s))),et=(e,t,s,n,a)=>ie($(t,s,(()=>(ft(e,s,1),P()))),n,((t,n,a)=>tt(e,s,t,n,a)),((n,r)=>ut(e,t,s,n,r,a))),tt=(e,t,s,n,a)=>{O(s,n)||gt(e,t,n,1);const r=x(s,n);a!==r&&(Tt(e,t,n,r,a),W(s,n,a))},st=(e,t,s,n,a)=>E(x(t,s),(t=>tt(e,s,t,n,a)),(()=>et(e,t,s,Ke({[n]:a},e,s)))),nt=e=>re(e)?qt():jt(e),at=e=>ie(Re,e,((e,t,s)=>rt(t,s)),((e,t)=>dt(t))),rt=(e,t)=>{O(Re,e)||Vt(e,1);const s=x(Re,e);t!==s&&(St(e,s,t),W(Re,e,t))},lt=(e,t)=>{const[s]=$(ve,e,X),n=s(t);return O(x(we,e),n)?lt(e,t):n},ot=e=>x(we,e)??_e(e,{}),ct=e=>_e(e,{}),it=(e,t,s)=>{const[,n]=$(ve,e,X);n(s),et(e,t,s,{},!0)},ut=(e,t,s,n,a,r)=>{const l=x(x(Te,e)?.[0],a);if(!L(l)&&!r)return tt(e,s,n,a,l);const o=t=>{Tt(e,s,t,x(n,t)),gt(e,s,t,-1),W(n,t)};L(l)?o(a):D(n,o),k(n)&&(ft(e,s,-1),k(W(t,s))&&(ht(e,-1),W(we,e),W(ve,e)))},dt=e=>{const t=x(Se,e);if(!L(t))return rt(e,t);St(e,x(Re,e)),Vt(e,-1),W(Re,e)},ht=(e,t)=>de(I,e,t),ft=(e,t,s)=>de($(p,e,P),t,s),gt=(e,t,s,n)=>de($($(U,e,P),t,P),s,n),Tt=(e,t,s,n,a)=>$($($(Y,e,P),t,P),s,(()=>[n,0]))[1]=a,Vt=(e,t)=>de(Z,e,t),St=(e,t,s)=>$(_,e,(()=>[t,0]))[1]=s,bt=(e,t,s,n,a)=>(J($($($(te,e,P),t,P),s,(()=>[])),n),a),vt=(e,t,s)=>(J($(fe,e,(()=>[])),t),s),wt=(e,t,s)=>E(x(x(x(Y,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...le(kt(e,t,s))])),Rt=e=>E(x(_,e),(([e,t])=>[!0,e,t]),(()=>[!1,...le(Nt(e))])),yt=e=>k(te)||k(Fe[e])?0:M(e?B(te,G):te,((t,s)=>M(t,((t,n)=>M(t,((t,a)=>je(Fe[e],[s,n,a],t))))))),Jt=e=>k(fe)||k(ze[e])?0:M(e?B(fe):fe,((t,s)=>je(ze[e],[s],t))),mt=(e,t,s)=>{if(!k(t))return je(e,s),1},Ct=e=>{const t=k(Ie[e]),s=k(Le[e])&&k(Ce[e])&&t&&k(Je[e]),n=k(Ee[e])&&k(pe[e])&&k(me[e])&&k(ye[e]);if(!s||!n){const a=e?[B(I),G(p),B(U,G),B(Y,G)]:[I,p,U,Y];if(!s){M(a[2],((t,s)=>M(t,((t,n)=>mt(Le[e],t,[s,n])))));const s=K();M(a[1],((n,a)=>{mt(Ce[e],n,[a])&&!t&&(je(Ie[e],[a,null]),Q(s,a))})),t||M(a[3],((t,n)=>{if(!O(s,n)){const s=K();M(t,(e=>M(e,(([t,n],a)=>n!==t?Q(s,a):N(e,a))))),M(s,(t=>je(Ie[e],[n,t])))}})),mt(Je[e],a[0])}if(!n){let t;M(a[3],((s,n)=>{let a;M(s,((s,r)=>{let l;M(s,(([s,o],c)=>{o!==s&&(je(Ee[e],[n,r,c],o,s,wt),t=a=l=1)})),l&&je(pe[e],[n,r],wt)})),a&&je(me[e],[n],wt)})),t&&je(ye[e],void 0,wt)}}},It=e=>{const t=k(ke[e]),s=k(Ae[e])&&k(Oe[e]);if(!t||!s){const n=e?[B(Z),B(_)]:[Z,_];if(t||mt(ke[e],n[0]),!s){let t;M(n[1],(([s,n],a)=>{n!==s&&(je(Ae[e],[a],n,s,Rt),t=1)})),t&&je(Oe[e],void 0,Rt)}}},pt=(e,...t)=>(Ht((()=>e(...w(t,b)))),Ut),Lt=()=>q(we,(e=>q(e,q))),Et=()=>j(we),Ft=e=>j(x(we,b(e))),zt=(e,t,s,n=0,a)=>{return w(y((l=x(we,b(e)),o=(e,s)=>[L(t)?s:x(e,b(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),w([...l?.entries()??[]],(([e,t])=>o(t,e))).sort(r)),n,L(a)?a:n+a),(([,e])=>e));var r,l,o},Ot=(e,t)=>j(x(x(we,b(e)),b(t))),kt=(e,t,s)=>x(x(x(we,b(e)),b(t)),b(s)),At=()=>q(Re),Mt=()=>j(Re),Nt=e=>x(Re,b(e)),Pt=e=>pt((()=>(e=>ue(e,$e,bt))(e)?Ze(e):0)),jt=e=>pt((()=>Ge(e)?at(e):0)),xt=e=>{try{Ye(C(e))}catch{}return Ut},Dt=t=>pt((()=>{if((e=ue(t,(e=>ue(e,We))))&&(Ue(t),!k(we))){const e=Lt();$t(),Pt(e)}})),Wt=e=>pt((()=>{if(s=(e=>ue(e,We))(e)){const t=At();Gt(),qt(),s=!0,Xe(e),jt(t)}})),$t=()=>pt((()=>Ze({}))),qt=()=>pt((()=>at({}))),Bt=()=>pt((()=>{Ue({}),e=!1})),Gt=()=>pt((()=>{Xe({}),s=!1})),Ht=(e,t)=>{if(-1!=c){Kt();const s=e();return Qt(t),s}},Kt=()=>(-1!=c&&c++,1==c&&je(Me,void 0,!1,!1),Ut),Qt=e=>(c>0&&(c--,0==c&&(n=!k(Y),r=!k(_),c=1,yt(1),n&&Ct(1),Jt(1),r&&It(1),e?.(q(Y,(e=>q(e,(e=>q(e,(e=>[...e]),(([e,t])=>e===t))),re)),re),q(te,(e=>q(e,q))),q(_,(e=>[...e]),(([e,t])=>e===t)),q(fe))&&(M(Y,((e,t)=>M(e,((e,s)=>M(e,(([e],n)=>((e,t,s,n,a)=>L(a)?e.delCell(t,s,n,!0):e.setCell(t,s,n,a))(Ut,t,s,n,e))))))),M(_,(([e],t)=>((e,t,s)=>L(s)?e.delValue(t):e.setValue(t,s))(Ut,t,e))),n=r=!1),je(Ne[0],void 0,n,r),c=-1,yt(0),n&&Ct(0),Jt(0),r&&It(0),je(Ne[1],void 0,n,r),c=0,v([I,p,U,Y,te,Z,_,fe],A))),Ut),Ut={getTables:Lt,getTableIds:Et,getTable:e=>q(x(we,b(e)),q),getRowIds:Ft,getSortedRowIds:zt,getRow:(e,t)=>q(x(x(we,b(e)),b(t))),getCellIds:Ot,getCell:kt,getValues:At,getValueIds:Mt,getValue:Nt,hasTables:()=>!k(we),hasTable:e=>O(we,b(e)),hasRow:(e,t)=>O(x(we,b(e)),b(t)),hasCell:(e,t,s)=>O(x(x(we,b(e)),b(t)),b(s)),hasValues:()=>!k(Re),hasValue:e=>O(Re,b(e)),getTablesJson:()=>m(we),getValuesJson:()=>m(Re),getJson:()=>m([we,Re]),getTablesSchemaJson:()=>m(ge),getValuesSchemaJson:()=>m(Ve),getSchemaJson:()=>m([ge,Ve]),setTables:Pt,setTable:(e,t)=>pt((e=>$e(t,e)?_e(e,t):0),e),setRow:(e,t,s)=>pt(((e,t)=>qe(e,t,s)?et(e,ot(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ht((()=>{let n;return qe(e,n,t)&&(e=b(e),et(e,ot(e),n=lt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>pt(((e,t)=>{if(qe(e,t,s,1)){const n=ot(e);ae(s,((s,a)=>st(e,n,t,a,s)))}}),e,t),setCell:(e,t,s,n)=>pt(((e,t,s)=>E(Be(e,t,s,z(n)?n(kt(e,t,s)):n),(n=>st(e,ot(e),t,s,n)))),e,t,s),setValues:jt,setPartialValues:e=>pt((()=>Ge(e,1)?ae(e,((e,t)=>rt(t,e))):0)),setValue:(e,t)=>pt((e=>E(He(e,z(t)?t(Nt(e)):t),(t=>rt(e,t)))),e),setTablesJson:xt,setValuesJson:e=>{try{nt(C(e))}catch{}return Ut},setJson:e=>{try{const[t,s]=C(e);Ye(t),nt(s)}catch{xt(e)}return Ut},setTablesSchema:Dt,setValuesSchema:Wt,setSchema:(e,t)=>pt((()=>{Dt(e),Wt(t)})),delTables:$t,delTable:e=>pt((e=>O(we,e)?ct(e):0),e),delRow:(e,t)=>pt(((e,t)=>E(x(we,e),(s=>O(s,t)?it(e,s,t):0))),e,t),delCell:(e,t,s,n)=>pt(((e,t,s)=>E(x(we,e),(a=>E(x(a,t),(r=>O(r,s)?ut(e,a,t,r,s,n):0))))),e,t,s),delValues:qt,delValue:e=>pt((e=>O(Re,e)?dt(e):0),e),delTablesSchema:Bt,delValuesSchema:Gt,delSchema:()=>pt((()=>{Bt(),Gt()})),transaction:Ht,startTransaction:Kt,finishTransaction:Qt,forEachTable:e=>M(we,((t,s)=>e(s,(e=>M(t,((t,s)=>e(s,(e=>D(t,e))))))))),forEachRow:(e,t)=>M(x(we,b(e)),((e,s)=>t(s,(t=>D(e,t))))),forEachCell:(e,t,s)=>D(x(x(we,b(e)),b(t)),s),forEachValue:e=>D(Re,e),addSortedRowIdsListener:(e,t,s,n,a,r,l)=>{let o=zt(e,t,s,n,a);return Pe((()=>{const l=zt(e,t,s,n,a);var c,i,u;i=o,R(c=l)===R(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=l,r(Ut,e,t,s,n,a,o))}),Ie[l?1:0],[e,t],[Et])},addStartTransactionListener:e=>Pe(e,Me),addWillFinishTransactionListener:e=>Pe(e,Ne[0]),addDidFinishTransactionListener:e=>Pe(e,Ne[1]),callListener:e=>(De(e),Ut),delListener:e=>(xe(e),Ut),getListenerStats:()=>({}),createStore:he};return ae({[u]:[0,ye],[d]:[0,Je],[i]:[1,me,[Et]],[h]:[1,Ce,[Et]],Row:[2,pe,[Et,Ft]],[g]:[2,Le,[Et,Ft]],[f]:[3,Ee,[Et,Ft,Ot],e=>le(kt(...e))],InvalidCell:[3,Fe],[V]:[0,Oe],[S]:[0,ke],[T]:[1,Ae,[Mt],e=>le(Nt(e[0]))],InvalidValue:[1,ze]},(([e,t,s,n],a)=>{Ut["add"+a+"Listener"]=(...a)=>Pe(a[e],t[a[e+1]?1:0],e>0?y(a,0,e):void 0,s,n)})),ee(Ut)};exports.createStore=he;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("fs");const t=e=>typeof e,s=t(""),n=t(!0),r=t(0),o=t(t),a=e=>""+e,i=(e,t)=>e.includes(t),l=(e,t)=>e.every(t),c=(e,t)=>L(e)===L(t)&&l(e,((e,s)=>t[s]===e)),d=(e,t)=>l(e,((s,n)=>0==n||t(e[n-1],s)<=0)),u=(e,t)=>e.sort(t),h=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),g=e=>p(e,((e,t)=>e+t),0),L=e=>e.length,w=e=>0==L(e),p=(e,t,s)=>e.reduce(t,s),v=(e,t,s)=>e.slice(t,s),R=(e,...t)=>e.push(...t),I=e=>e.pop(),S=e=>e.shift(),T=e=>JSON.stringify(e,((e,t)=>V(t,Map)?p([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),y=JSON.parse,b=Math.max,C=Math.min,m=isFinite,V=(e,t)=>e instanceof t,x=e=>null==e,E=(e,t,s)=>x(e)?s?.():t(e),k=e=>e==s||e==n,J=e=>t(e)==o,M=e=>Array.isArray(e),A=()=>{},D=e=>e.size,F=(e,t)=>e?.has(t)??!1,P=e=>x(e)||0==D(e),Q=e=>[...e?.values()??[]],z=e=>e.clear(),N=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),j=e=>new Map(e),W=e=>[...e?.keys()??[]],q=(e,t)=>e?.get(t),B=(e,t)=>N(e,((e,s)=>t(s,e))),H=(e,t,s)=>x(s)?(O(e,t),e):e?.set(t,s),$=(e,t,s)=>(F(e,t)||H(e,t,s()),q(e,t)),G=(e,t,s)=>{const n={},r=t??(e=>e);return N(e,((e,t)=>E(r(e),(e=>s?.(e)?0:n[t]=e)))),n},K=(e,t)=>{const s=j(),n=t??(e=>e);return N(e,((e,t)=>s.set(t,n(e)))),s},U=e=>K(e,K),X=(e,t,s,n,r=0)=>E((s?$:q)(e,t[r],r>L(t)-2?s:j),(o=>{if(r>L(t)-2)return n?.(o)&&H(e,t[r]),o;const a=X(o,t,s,n,r+1);return P(o)&&H(e,t[r]),a})),Y=e=>{const s=t(e);return k(s)||s==r&&m(e)?s:void 0},Z=(e,t,s,n,r)=>x(r)?e.delCell(t,s,n,!0):e.setCell(t,s,n,r),_=(e,t,s)=>x(s)?e.delValue(t):e.setValue(t,s),ee=e=>new Set(M(e)||x(e)?e:[e]),te=(e,t)=>e?.add(t),se=(e,t,s)=>{const n=e.hasRow,r=j(),o=j(),a=j(),i=j(),l=j(),d=(t,s,...n)=>{const r=$(l,t,ee);return h(n,(t=>te(r,t)&&s&&e.callListener(t))),n},u=(t,...s)=>E(q(l,t),(n=>{h(w(s)?Q(n):s,(t=>{e.delListener(t),O(n,t)})),P(n)&&H(l,t)})),f=(e,s)=>{H(r,e,s),F(o,e)||(H(o,e,t()),H(a,e,j()),H(i,e,j()))},g=e=>{H(r,e),H(o,e),H(a,e),H(i,e),u(e)};return[()=>e,()=>W(r),e=>B(o,e),e=>F(o,e),e=>q(r,e),e=>q(o,e),(e,t)=>H(o,e,t),f,(t,r,o,l,g)=>{f(t,r);const L=j(),w=j(),p=q(a,t),v=q(i,t),R=t=>{const o=s=>e.getCell(r,t,s),a=q(p,t),i=n(r,t)?s(l(o,t)):void 0;if(a===i||M(a)&&M(i)&&c(a,i)||H(L,t,[a,i]),!x(g)){const e=q(v,t),s=n(r,t)?g(o,t):void 0;e!=s&&H(w,t,s)}},I=e=>{o((()=>{N(L,(([,e],t)=>H(p,t,e))),N(w,((e,t)=>H(v,t,e)))}),L,w,p,v,e),z(L),z(w)};B(p,R),e.hasTable(r)&&h(e.getRowIds(r),(e=>{F(p,e)||R(e)})),I(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,s)=>R(s))),e.addTableListener(r,(()=>I())))},g,()=>B(l,g),d,u]},ne=(e,n)=>t(e)==s?t=>t(e):e??(()=>n??""),re=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},oe=/^\d+$/,ae=()=>{const e=[];let t=0;return[()=>S(e)??""+t++,t=>{oe.test(t)&&L(e)<1e3&&R(e,t)}]},ie=e=>{let t;const[s,n]=ae(),r=j();return[(n,o,a,i=[],l=(()=>[]))=>{t??=e();const c=s();return H(r,c,[n,o,a,i,l]),te(X(o,a??[""],ee),c),c},(e,s,...n)=>h(((e,t=[""])=>{const s=[],n=(e,r)=>r==L(t)?R(s,e):null===t[r]?N(e,(e=>n(e,r+1))):h([t[r],null],(t=>n(q(e,t),r+1)));return n(e,0),s})(e,s),(e=>N(e,(e=>q(r,e)[0](t,...s??[],...n))))),e=>E(q(r,e),(([,t,s])=>(X(t,s??[""],void 0,(t=>(O(t,e),P(t)?1:0))),H(r,e),n(e),s))),e=>E(q(r,e),(([e,,s=[],n,r])=>{const o=(...a)=>{const i=L(a);i==L(s)?e(t,...a,...r(a)):x(s[i])?h(n[i]?.(...a)??[],(e=>o(...a,e))):o(...a,s[i])};o()}))]},le=Object,ce=le.keys,de=le.isFrozen,ue=le.freeze,he=e=>V(e,le)&&e.constructor==le,fe=(e,t)=>!x(((e,t)=>E(e,(e=>e[t])))(e,t)),ge=(e,t)=>delete e[t],Le=(e,t)=>f(le.entries(e),(([e,s])=>t(s,e))),we=e=>he(e)&&w(ce(e)),pe=re((e=>{let t,s,n,r=100,o=j(),a=j(),l=1;const c=j(),d=j(),[u,f,g]=ie((()=>U)),p=j(),v=j(),T=[],y=[],b=(t,s)=>{l=0,e.transaction((()=>{const[n,r]=q(p,s);N(n,((s,n)=>N(s,((s,r)=>N(s,((s,o)=>Z(e,n,r,o,s[t]))))))),N(r,((s,n)=>_(e,n,s[t])))})),l=1},C=e=>{H(p,e),H(v,e),f(d,[e])},m=(e,t)=>h(((e,t)=>e.splice(0,t))(e,t??L(e)),C),V=()=>m(T,L(T)-r),k=()=>E(t,(()=>{R(T,t),V(),m(y),t=void 0,n=1})),J=()=>{t=I(T),n=1},M=e.addCellListener(null,null,null,((e,t,s,n,r,a)=>{if(l){k();const e=$(o,t,j),i=$(e,s,j),l=$(i,n,(()=>[a,void 0]));l[1]=r,l[0]===r&&P(H(i,n))&&P(H(e,s))&&P(H(o,t))&&J(),O()}})),A=e.addValueListener(null,((e,t,s,n)=>{if(l){k();const e=$(a,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&P(H(a,t))&&J(),O()}})),D=(e="")=>(x(t)&&(t=""+s++,H(p,t,[o,a]),G(t,e),o=j(),a=j(),n=1),t),Q=()=>{w(T)||(((e,...t)=>{e.unshift(...t)})(y,D()),b(0,t),t=I(T),n=1)},z=()=>{w(y)||(R(T,t),t=S(y),b(1,t),n=1)},O=()=>{n&&(f(c),n=0)},W=e=>{const t=D(e);return O(),t},G=(e,t)=>(K(e)&&q(v,e)!==t&&(H(v,e,t),f(d,[e])),U),K=e=>F(p,e),U={setSize:e=>(r=e,V(),U),addCheckpoint:W,setCheckpoint:G,getStore:()=>e,getCheckpointIds:()=>[[...T],t,[...y]],forEachCheckpoint:e=>B(v,e),hasCheckpoint:K,getCheckpoint:e=>q(v,e),goBackward:()=>(Q(),O(),U),goForward:()=>(z(),O(),U),goTo:e=>{const s=i(T,e)?Q:i(y,e)?z:null;for(;!x(s)&&e!=t;)s();return O(),U},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),U),clear:()=>(m(T),m(y),x(t)||C(t),t=void 0,s=0,W(),U),destroy:()=>{e.delListener(M),e.delListener(A)},getListenerStats:()=>({})};return ue(U.clear())})),ve=(e,t)=>e<t?-1:1,Re=re((e=>{const t=j(),s=j(),[n,r,o,i,l,c,h,,g,L,w]=se(e,j,(e=>x(e)?"":M(e)?f(e,a):a(e))),[p,v,R]=ie((()=>S)),I=(t,s,n)=>{const r=l(t);N(n,((t,n)=>s(n,(s=>N(t,(t=>s(t,(s=>e.forEachCell(r,t,s)))))))))},S={setIndexDefinition:(e,n,r,o,a,i=ve)=>{const l=x(a)?void 0:([e],[t])=>a(e,t);return g(e,n,((n,r,a,f,g,L)=>{let w=0;const p=ee(),R=ee(),I=c(e);if(N(r,(([e,t],s)=>{const n=ee(e),r=ee(t);N(n,(e=>O(r,e)?O(n,e):0)),N(n,(e=>{te(p,e),E(q(I,e),(t=>{O(t,s),P(t)&&(H(I,e),w=1)}))})),N(r,(e=>{te(p,e),F(I,e)||(H(I,e,ee()),w=1),te(q(I,e),s),x(o)||te(R,e)}))})),n(),P(g)||(L?B(I,(e=>te(R,e))):B(a,(e=>E(q(f,e),(e=>te(R,e))))),N(R,(e=>{const t=(t,s)=>i(q(g,t),q(g,s),e),s=[...q(I,e)];d(s,t)||(H(I,e,ee(u(s,t))),te(p,e))}))),(w||L)&&!x(l)){const t=[...I];d(t,l)||(h(e,j(u(t,l))),w=1)}w&&v(t,[e]),N(p,(t=>v(s,[e,t])))}),ne(r),E(o,ne)),S},delIndexDefinition:e=>(L(e),S),getStore:n,getIndexIds:r,forEachIndex:e=>o(((t,s)=>e(t,(e=>I(t,e,s))))),forEachSlice:(e,t)=>I(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>F(c(e),t),getTableId:l,getSliceIds:e=>W(c(e)),getSliceRowIds:(e,t)=>Q(q(c(e),t)),addSliceIdsListener:(e,s)=>p(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>p(n,s,[e,t]),delListener:e=>(R(e),S),destroy:w,getListenerStats:()=>({})};return ue(S)})),Ie=j([["avg",[(e,t)=>g(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:b(t,e)]],["min",[e=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:C(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Se=(e,t,s,n,r,o=!1)=>{if(P(s))return;const[a,i,l,c]=r;return o||=x(e),N(n,(([s,n])=>{o||(e=x(s)?i?.(e,n,t++):x(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=x(e))})),o?a(Q(s),D(s)):e},Te=re((e=>{const t=j(),[s,n,r,o,a,i,l,,c,d,u]=se(e,A,(e=>isNaN(e)||x(e)||!0===e||!1===e||""===e?void 0:1*e)),[h,f,g]=ie((()=>L)),L={setMetricDefinition:(e,s,n,r,o,a,d)=>{const u=J(n)?[n,o,a,d]:q(Ie,n)??q(Ie,"sum");return c(e,s,((s,n,r,o,a,c)=>{const d=i(e),h=D(o);c||=x(d),s();let g=Se(d,h,o,n,u,c);m(g)||(g=void 0),g!=d&&(l(e,g),f(t,[e],g,d))}),ne(r,1)),L},delMetricDefinition:e=>(d(e),L),getStore:s,getMetricIds:n,forEachMetric:r,hasMetric:o,getTableId:a,getMetric:i,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(g(e),L),destroy:u,getListenerStats:()=>({})};return ue(L)})),ye=(e,t,s,n,r)=>{let o,a,i=0;const l={load:async(s,n)=>{if(2!=i){i=1;const r=await t();x(r)||""==r?e.transaction((()=>e.setTables(s).setValues(n))):e.setJson(r),i=0}return l},startAutoLoad:async(e,t)=>(l.stopAutoLoad(),await l.load(e,t),n(l.load),l),stopAutoLoad:()=>(r(),l),save:async()=>(1!=i&&(i=2,await s(e.getJson()),i=0),l),startAutoSave:async()=>(await l.stopAutoSave().save(),o=e.addTablesListener(l.save),a=e.addValuesListener(l.save),l),stopAutoSave:()=>(E(o,e.delListener),E(a,e.delListener),l),getStore:()=>e,destroy:()=>l.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ue(l)},be=globalThis.window,Ce=(e,t,s)=>{let n;return ye(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},be.addEventListener("storage",n)}),(()=>{be.removeEventListener("storage",n),n=void 0}))},me=e=>e.headers.get("ETag"),Ve=re((e=>{const t=e.createStore,[s,n,r,o,a,,,i,,c,d,u,f]=se(e,(()=>!0),A),g=t(),p=t(),I=j(),S=(e,t,...s)=>h(s,(s=>te($($(I,t,j),e,ee),s))),T=e=>{E(q(I,e),(e=>{B(e,((e,t)=>N(t,(t=>e.delListener(t))))),z(e)})),h([p,g],(t=>t.delTable(e)))},y=(e,t,s)=>S(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),b={setQueryDefinition:(t,s,n)=>{i(t,s),T(t);const r=[],o=[[null,[s,null,null,[],j()]]],a=[],c=[],d=[];n({select:(e,t)=>{const s=J(e)?[L(r)+"",e]:[x(t)?e:t,s=>s(e,t)];return R(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=x(s)||J(t)?null:t,r=x(n)?t:s,a=[e,[e,n,J(r)?r:e=>e(r),[],j()]];return R(o,a),{as:e=>a[0]=e}},where:(e,t,s)=>R(a,J(e)?e:x(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,r)=>{const o=[e,[e,J(t)?[t,s,n,r]:q(Ie,t)??[(e,t)=>t]]];return R(c,o),{as:e=>o[0]=e}},having:(e,t)=>R(d,J(e)?e:s=>s(e)===t)});const v=j(r);if(P(v))return b;const I=j(o);B(I,((e,[,t])=>E(q(I,t),(({3:t})=>x(e)?0:R(t,e)))));const C=j(c);let m=g;if(P(C)&&w(d))m=p;else{y(t,m,p);const e=j();B(C,((t,[s,n])=>te($(e,s,ee),[t,n])));const s=ee();B(v,(t=>F(e,t)?0:te(s,t)));const n=j(),r=(s,n,r,o)=>E(s,(([a,i,c,u])=>{B(n,((t,[s])=>{const n=$(a,t,j),i=q(n,r),l=o?void 0:s;if(i!==l){const s=ee([[i,l]]),o=D(n);H(n,r,l),N(q(e,t),(([e,t])=>{const r=Se(u[e],o,n,s,t);u[e]=x(Y(r))?null:r}))}})),P(i)||!l(d,(e=>e((e=>u[e]))))?p.delRow(t,c):x(c)?s[2]=p.addRow(t,u):p.setRow(t,c,u)}));S(m,t,m.addRowListener(t,null,((o,a,i,l)=>{const c=[],d=[],u=j(),h=m.hasRow(t,i);let f=!h;N(s,(e=>{const[s,n,r]=l(t,i,e);R(c,n),R(d,r),f||=s})),B(e,(e=>{const[s,,n]=l(t,i,e);(f||s)&&H(u,e,[n])})),f&&r(X(n,c,void 0,(([,e])=>(O(e,i),P(e)))),u,i,1),h&&r(X(n,d,(()=>{const e={};return N(s,(s=>e[s]=m.getCell(t,i,s))),[j(),ee(),void 0,e]}),(([,e])=>{te(e,i)})),u,i)})))}y(t,e,m);const V=(n,r,o,i)=>{const c=t=>e.getCell(r,o,t);h(i,(s=>{const[r,,o,a,i]=q(I,s),l=o?.(c,n),[d,h]=q(i,n)??[];l!=d&&(x(h)||f(t,h),H(i,n,x(l)?null:[l,...u(t,1,e.addRowListener(r,l,(()=>V(n,r,l,a))))]))})),(n=>{const r=(t,r)=>e.getCell(...x(r)?[s,n,t]:t===s?[s,n,r]:[q(I,t)?.[0],q(q(I,t)?.[4],n)?.[0],r]);m.transaction((()=>l(a,(e=>e(r)))?B(v,((e,s)=>Z(m,t,n,e,s(r,n)))):m.delRow(t,n)))})(n)},{3:k}=q(I,null);return m.transaction((()=>u(t,1,e.addRowListener(s,null,((n,r,o)=>{e.hasRow(s,o)?V(o,s,o,k):(m.delRow(t,o),N(I,(({4:e})=>E(q(e,o),(([,s])=>{f(t,s),H(e,o)})))))}))))),b},delQueryDefinition:e=>(T(e),c(e),b),getStore:s,getQueryIds:n,forEachQuery:r,hasQuery:o,getTableId:a,delListener:e=>(p.delListener(e),b),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=p.getListenerStats();return n}};return Le({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],s)=>{h(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+s]=(...t)=>p[e+s](...t))),b["addResult"+s+"Listener"]=(...e)=>p["add"+s+"Listener"](...v(e,0,t),((s,...n)=>e[t](b,...n)))})),ue(b)})),xe=re((e=>{const t=j(),s=j(),n=j(),r=j(),[o,a,i,l,c,d,,,u,h,f]=se(e,(()=>[j(),j(),j(),j()]),(e=>x(e)?void 0:e+"")),[g,L,w]=ie((()=>I)),p=(e,t,s)=>E(d(e),(([n,,r])=>{if(!F(r,t)){const o=ee();if(c(e)!=R(e))te(o,t);else{let e=t;for(;!x(e)&&!F(o,e);)te(o,e),e=q(n,e)}if(s)return o;H(r,t,o)}return q(r,t)})),v=(e,t)=>E(d(e),(([,,e])=>H(e,t))),R=e=>q(t,e),I={setRelationshipDefinition:(e,o,a,i)=>(H(t,e,a),u(e,o,((t,o)=>{const a=ee(),i=ee(),l=ee(),[c,u]=d(e);N(o,(([t,s],n)=>{x(t)||(te(i,t),E(q(u,t),(e=>{O(e,n),P(e)&&H(u,t)}))),x(s)||(te(i,s),F(u,s)||H(u,s,ee()),te(q(u,s),n)),te(a,n),H(c,n,s),B(q(r,e),(t=>{F(p(e,t),n)&&te(l,t)}))})),t(),N(a,(t=>L(s,[e,t]))),N(i,(t=>L(n,[e,t]))),N(l,(t=>{v(e,t),L(r,[e,t])}))}),ne(i)),I),delRelationshipDefinition:e=>(H(t,e),h(e),I),getStore:o,getRelationshipIds:a,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(c(s),t))))),hasRelationship:l,getLocalTableId:c,getRemoteTableId:R,getRemoteRowId:(e,t)=>q(d(e)?.[0],t),getLocalRowIds:(e,t)=>Q(q(d(e)?.[1],t)),getLinkedRowIds:(e,t)=>x(d(e))?[t]:Q(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>g(s,n,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),g(s,r,[e,t])),delListener:e=>(v(...w(e)),I),destroy:f,getListenerStats:()=>({})};return ue(I)})),Ee=e=>[e,e],ke=()=>[j(),j()],Je=(e,t,s,n=H)=>{const r=(o=e=>!fe(t,e),W(e).filter(o));var o;return h(ce(t),(n=>s(e,n,t[n]))),h(r,(t=>n(e,t))),e},Me=(e,t,s)=>x(e)||!he(e)||we(e)||de(e)?(s?.(),!1):(Le(e,((s,n)=>{t(s,n)||ge(e,n)})),!we(e)),Ae=(e,t,s)=>H(e,t,q(e,t)==-s?void 0:s),De=()=>{let e,t,s,n,o=0;const l=j(),d=j(),g=j(),L=j(),w=j(),p=j(),I=j(),S=j(),b=j(),C=j(),m=j(),V=j(),M=ee(),A=j(),D=j(),Q=j(),X=ke(),se=ke(),ne=ke(),re=ke(),oe=ke(),le=ke(),ce=ke(),de=ke(),he=ke(),pe=ke(),Re=ke(),Ie=ke(),Se=ke(),Te=ke(),[ye,be,Ce,me]=ie((()=>jt)),Ve=e=>{if(!Me(e,((e,t)=>i(["type","default"],t))))return!1;const t=e.type;return!(!k(t)&&t!=r||(Y(e.default)!=t&&ge(e,"default"),0))},xe=(t,s)=>(!e||F(b,s)||dt(s))&&Me(t,((e,t)=>Fe(s,t,e)),(()=>dt(s))),Fe=(e,t,s,n)=>Me(n?s:Ne(s,e,t),((n,r)=>E(Pe(e,t,r,n),(e=>(s[r]=e,!0)),(()=>!1))),(()=>dt(e,t))),Pe=(t,s,n,r)=>e?E(q(q(b,t),n),(e=>Y(r)!=e.type?dt(t,s,n,r,e.default):r),(()=>dt(t,s,n,r))):x(Y(r))?dt(t,s,n,r):r,Qe=(e,t)=>Me(t?e:Oe(e),((t,s)=>E(ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>ut())),ze=(e,s)=>t?E(q(m,e),(t=>Y(s)!=t.type?ut(e,s,t.default):s),(()=>ut(e,s))):x(Y(s))?ut(e,s):s,Ne=(e,t,s)=>(E(q(C,t),(([n,r])=>{N(n,((t,s)=>{fe(e,s)||(e[s]=t)})),N(r,(n=>{fe(e,n)||dt(t,s,n)}))})),e),Oe=e=>(t&&(N(V,((t,s)=>{fe(e,s)||(e[s]=t)})),N(M,(t=>{fe(e,t)||ut(t)}))),e),je=e=>Je(b,e,((e,t,s)=>{const n=j(),r=ee();Je($(b,t,j),s,((e,t,s)=>{H(e,t,s),E(s.default,(e=>H(n,t,e)),(()=>te(r,t)))})),H(C,t,[n,r])}),((e,t)=>{H(b,t),H(C,t)})),We=e=>Je(m,e,((e,t,s)=>{H(m,t,s),E(s.default,(e=>H(V,t,e)),(()=>te(M,t)))}),((e,t)=>{H(m,t),H(V,t),O(M,t)})),qe=e=>we(e)?Dt():Et(e),Be=e=>Je(D,e,((e,t,s)=>He(t,s)),((e,t)=>et(t))),He=(e,t)=>Je($(D,e,(()=>(rt(e,1),j()))),t,((t,s,n)=>$e(e,t,s,n)),((t,s)=>tt(e,t,s))),$e=(e,t,s,n,r)=>Je($(t,s,(()=>(ot(e,s,1),j()))),n,((t,n,r)=>Ge(e,s,t,n,r)),((n,o)=>st(e,t,s,n,o,r))),Ge=(e,t,s,n,r)=>{F(s,n)||at(e,t,n,1);const o=q(s,n);r!==o&&(it(e,t,n,o,r),H(s,n,r))},Ke=(e,t,s,n,r)=>E(q(t,s),(t=>Ge(e,s,t,n,r)),(()=>$e(e,t,s,Ne({[n]:r},e,s)))),Ue=e=>we(e)?Ft():kt(e),Xe=e=>Je(Q,e,((e,t,s)=>Ye(t,s)),((e,t)=>nt(t))),Ye=(e,t)=>{F(Q,e)||lt(e,1);const s=q(Q,e);t!==s&&(ct(e,s,t),H(Q,e,t))},Ze=e=>{const[t]=$(A,e,ae),s=t();return F(q(D,e),s)?Ze(e):s},_e=e=>q(D,e)??He(e,{}),et=e=>He(e,{}),tt=(e,t,s)=>{const[,n]=$(A,e,ae);n(s),$e(e,t,s,{},!0)},st=(e,t,s,n,r,o)=>{const a=q(q(C,e)?.[0],r);if(!x(a)&&!o)return Ge(e,s,n,r,a);const i=t=>{it(e,s,t,q(n,t)),at(e,s,t,-1),H(n,t)};x(a)?i(r):B(n,i),P(n)&&(ot(e,s,-1),P(H(t,s))&&(rt(e,-1),H(D,e),H(A,e)))},nt=e=>{const t=q(V,e);if(!x(t))return Ye(e,t);ct(e,q(Q,e)),lt(e,-1),H(Q,e)},rt=(e,t)=>Ae(l,e,t),ot=(e,t,s)=>Ae($(d,e,j),t,s),at=(e,t,s,n)=>Ae($($(g,e,j),t,j),s,n),it=(e,t,s,n,r)=>$($($(L,e,j),t,j),s,(()=>[n,0]))[1]=r,lt=(e,t)=>Ae(w,e,t),ct=(e,t,s)=>$(p,e,(()=>[t,0]))[1]=s,dt=(e,t,s,n,r)=>(R($($($(I,e,j),t,j),s,(()=>[])),n),r),ut=(e,t,s)=>(R($(S,e,(()=>[])),t),s),ht=(e,t,s)=>E(q(q(q(L,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(Ct(e,t,s))])),ft=e=>E(q(p,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ee(xt(e))])),gt=e=>P(I)||P(he[e])?0:N(e?K(I,U):I,((t,s)=>N(t,((t,n)=>N(t,((t,r)=>be(he[e],[s,n,r],t))))))),Lt=e=>P(S)||P(pe[e])?0:N(e?K(S):S,((t,s)=>be(pe[e],[s],t))),wt=(e,t,s)=>{if(!P(t))return be(e,s),1},pt=e=>{const t=P(oe[e]),s=P(ce[e])&&P(re[e])&&t&&P(se[e]),n=P(de[e])&&P(le[e])&&P(ne[e])&&P(X[e]);if(!s||!n){const r=e?[K(l),U(d),K(g,U),K(L,U)]:[l,d,g,L];if(!s){N(r[2],((t,s)=>N(t,((t,n)=>wt(ce[e],t,[s,n])))));const s=ee();N(r[1],((n,r)=>{wt(re[e],n,[r])&&!t&&(be(oe[e],[r,null]),te(s,r))})),t||N(r[3],((t,n)=>{if(!F(s,n)){const s=ee();N(t,(e=>N(e,(([t,n],r)=>n!==t?te(s,r):O(e,r))))),N(s,(t=>be(oe[e],[n,t])))}})),wt(se[e],r[0])}if(!n){let t;N(r[3],((s,n)=>{let r;N(s,((s,o)=>{let a;N(s,(([s,i],l)=>{i!==s&&(be(de[e],[n,o,l],i,s,ht),t=r=a=1)})),a&&be(le[e],[n,o],ht)})),r&&be(ne[e],[n],ht)})),t&&be(X[e],void 0,ht)}}},vt=e=>{const t=P(Ie[e]),s=P(Se[e])&&P(Re[e]);if(!t||!s){const n=e?[K(w),K(p)]:[w,p];if(t||wt(Ie[e],n[0]),!s){let t;N(n[1],(([s,n],r)=>{n!==s&&(be(Se[e],[r],n,s,ft),t=1)})),t&&be(Re[e],void 0,ft)}}},Rt=(e,...t)=>(zt((()=>e(...f(t,a)))),jt),It=()=>G(D,(e=>G(e,G))),St=()=>W(D),Tt=e=>W(q(D,a(e))),yt=(e,t,s,n=0,r)=>{return f(v(u((o=q(D,a(e)),i=(e,s)=>[x(t)?s:q(e,a(t)),s],f([...o?.entries()??[]],(([e,t])=>i(t,e)))),(([e],[t])=>ve(e,t)*(s?-1:1))),n,x(r)?r:n+r),(([,e])=>e));var o,i},bt=(e,t)=>W(q(q(D,a(e)),a(t))),Ct=(e,t,s)=>q(q(q(D,a(e)),a(t)),a(s)),mt=()=>G(Q),Vt=()=>W(Q),xt=e=>q(Q,a(e)),Et=e=>Rt((()=>(e=>Me(e,xe,dt))(e)?Be(e):0)),kt=e=>Rt((()=>Qe(e)?Xe(e):0)),Jt=e=>{try{qe(y(e))}catch{}return jt},Mt=t=>Rt((()=>{if((e=Me(t,(e=>Me(e,Ve))))&&(je(t),!P(D))){const e=It();Dt(),Et(e)}})),At=e=>Rt((()=>{if(t=(e=>Me(e,Ve))(e)){const s=mt();Qt(),Ft(),t=!0,We(e),kt(s)}})),Dt=()=>Rt((()=>Be({}))),Ft=()=>Rt((()=>Xe({}))),Pt=()=>Rt((()=>{je({}),e=!1})),Qt=()=>Rt((()=>{We({}),t=!1})),zt=(e,t)=>{if(-1==o)return;Nt();const s=e();return Ot(t),s},Nt=()=>(o++,jt),Ot=e=>(o>0&&(o--,0==o&&(s=!P(L),n=!P(p),o=1,gt(1),s&&pt(1),Lt(1),n&&vt(1),o=-1,e?.(G(L,(e=>G(e,(e=>G(e,(e=>[...e]),(([e,t])=>e===t))),we)),we),G(I,(e=>G(e,G))),G(p,(e=>[...e]),(([e,t])=>e===t)),G(S))&&(o=1,N(L,((e,t)=>N(e,((e,s)=>N(e,(([e],n)=>Z(jt,t,s,n,e))))))),N(p,(([e],t)=>_(jt,t,e))),o=-1,s=n=!1),be(Te[0],void 0,s,n),gt(0),s&&pt(0),Lt(0),n&&vt(0),be(Te[1],void 0,s,n),o=0,h([l,d,g,L,I,w,p,S],z))),jt),jt={getTables:It,getTableIds:St,getTable:e=>G(q(D,a(e)),G),getRowIds:Tt,getSortedRowIds:yt,getRow:(e,t)=>G(q(q(D,a(e)),a(t))),getCellIds:bt,getCell:Ct,getValues:mt,getValueIds:Vt,getValue:xt,hasTables:()=>!P(D),hasTable:e=>F(D,a(e)),hasRow:(e,t)=>F(q(D,a(e)),a(t)),hasCell:(e,t,s)=>F(q(q(D,a(e)),a(t)),a(s)),hasValues:()=>!P(Q),hasValue:e=>F(Q,a(e)),getTablesJson:()=>T(D),getValuesJson:()=>T(Q),getJson:()=>T([D,Q]),getTablesSchemaJson:()=>T(b),getValuesSchemaJson:()=>T(m),getSchemaJson:()=>T([b,m]),setTables:Et,setTable:(e,t)=>Rt((e=>xe(t,e)?He(e,t):0),e),setRow:(e,t,s)=>Rt(((e,t)=>Fe(e,t,s)?$e(e,_e(e),t,s):0),e,t),addRow:(e,t)=>zt((()=>{let s;return Fe(e,s,t)&&(e=a(e),$e(e,_e(e),s=Ze(e),t)),s})),setPartialRow:(e,t,s)=>Rt(((e,t)=>{if(Fe(e,t,s,1)){const n=_e(e);Le(s,((s,r)=>Ke(e,n,t,r,s)))}}),e,t),setCell:(e,t,s,n)=>Rt(((e,t,s)=>E(Pe(e,t,s,J(n)?n(Ct(e,t,s)):n),(n=>Ke(e,_e(e),t,s,n)))),e,t,s),setValues:kt,setPartialValues:e=>Rt((()=>Qe(e,1)?Le(e,((e,t)=>Ye(t,e))):0)),setValue:(e,t)=>Rt((e=>E(ze(e,J(t)?t(xt(e)):t),(t=>Ye(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Ue(y(e))}catch{}return jt},setJson:e=>{try{const[t,s]=y(e);qe(t),Ue(s)}catch{Jt(e)}return jt},setTablesSchema:Mt,setValuesSchema:At,setSchema:(e,t)=>Rt((()=>{Mt(e),At(t)})),delTables:Dt,delTable:e=>Rt((e=>F(D,e)?et(e):0),e),delRow:(e,t)=>Rt(((e,t)=>E(q(D,e),(s=>F(s,t)?tt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Rt(((e,t,s)=>E(q(D,e),(r=>E(q(r,t),(o=>F(o,s)?st(e,r,t,o,s,n):0))))),e,t,s),delValues:Ft,delValue:e=>Rt((e=>F(Q,e)?nt(e):0),e),delTablesSchema:Pt,delValuesSchema:Qt,delSchema:()=>Rt((()=>{Pt(),Qt()})),transaction:zt,startTransaction:Nt,finishTransaction:Ot,forEachTable:e=>N(D,((t,s)=>e(s,(e=>N(t,((t,s)=>e(s,(e=>B(t,e))))))))),forEachRow:(e,t)=>N(q(D,a(e)),((e,s)=>t(s,(t=>B(e,t))))),forEachCell:(e,t,s)=>B(q(q(D,a(e)),a(t)),s),forEachValue:e=>B(Q,e),addSortedRowIdsListener:(e,t,s,n,r,o,a)=>{let i=yt(e,t,s,n,r);return ye((()=>{const a=yt(e,t,s,n,r);c(a,i)||(i=a,o(jt,e,t,s,n,r,i))}),oe[a?1:0],[e,t],[St])},addWillFinishTransactionListener:e=>ye(e,Te[0]),addDidFinishTransactionListener:e=>ye(e,Te[1]),callListener:e=>(me(e),jt),delListener:e=>(Ce(e),jt),getListenerStats:()=>({}),createStore:De};return Le({Tables:[0,X],TableIds:[0,se],Table:[1,ne,[St]],RowIds:[1,re,[St]],Row:[2,le,[St,Tt]],CellIds:[2,ce,[St,Tt]],Cell:[3,de,[St,Tt,bt],e=>Ee(Ct(...e))],InvalidCell:[3,he],Values:[0,Re],ValueIds:[0,Ie],Value:[1,Se,[Vt],e=>Ee(xt(e[0]))],InvalidValue:[1,pe]},(([e,t,s,n],r)=>{jt["add"+r+"Listener"]=(...r)=>ye(r[e],t[r[e+1]?1:0],e>0?v(r,0,e):void 0,s,n)})),ue(jt)};exports.createCheckpoints=pe,exports.createCustomPersister=ye,exports.createFilePersister=(t,s)=>{let n;return ye(t,(async()=>{try{return await e.promises.readFile(s,"utf8")}catch{}}),(async t=>{try{await e.promises.writeFile(s,t,"utf8")}catch{}}),(t=>{n=e.watch(s,t)}),(()=>{n?.close(),n=void 0}))},exports.createIndexes=Re,exports.createLocalPersister=(e,t)=>Ce(e,t,localStorage),exports.createMetrics=Te,exports.createQueries=Ve,exports.createRelationships=xe,exports.createRemotePersister=(e,t,s,n)=>{let r,o;return ye(e,(async()=>{const e=await fetch(t);return o=me(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{r=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=me(s);x(o)||x(n)||n==o||(o=n,e())}),1e3*n)}),(()=>{E(r,clearInterval),r=void 0}))},exports.createSessionPersister=(e,t)=>Ce(e,t,sessionStorage),exports.createStore=De,exports.defaultSorter=ve;
1
+ "use strict";var e=require("fs");const t=e=>typeof e,s="",n=t(s),r=t(!0),o=t(0),a=t(t),i="type",l="default",c="utf8",d="Listener",u="Result",h="add",g="Ids",f="Table",L=f+"s",w=f+g,p="Row",v=p+g,S="Sorted"+p+g,R="Cell",I=R+g,T="Value",y=T+"s",b=T+g,m=e=>s+e,C=(e,t)=>e.includes(t),V=(e,t)=>e.every(t),x=(e,t)=>D(e)===D(t)&&V(e,((e,s)=>t[s]===e)),E=(e,t)=>V(e,((s,n)=>0==n||t(e[n-1],s)<=0)),k=(e,t)=>e.sort(t),J=(e,t)=>e.forEach(t),M=(e,t)=>e.map(t),A=e=>P(e,((e,t)=>e+t),0),D=e=>e.length,F=e=>0==D(e),P=(e,t,s)=>e.reduce(t,s),Q=(e,t,s)=>e.slice(t,s),z=(e,...t)=>e.push(...t),N=e=>e.pop(),O=e=>e.shift(),j=e=>JSON.stringify(e,((e,t)=>$(t,Map)?P([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),W=JSON.parse,q=Math.max,B=Math.min,H=isFinite,$=(e,t)=>e instanceof t,G=e=>null==e,K=(e,t,s)=>G(e)?s?.():t(e),U=e=>e==n||e==r,X=e=>t(e)==a,Y=e=>Array.isArray(e),Z=()=>{},_=e=>e.size,ee=(e,t)=>e?.has(t)??!1,te=e=>G(e)||0==_(e),se=e=>[...e?.values()??[]],ne=e=>e.clear(),re=(e,t)=>e?.forEach(t),oe=(e,t)=>e?.delete(t),ae=e=>new Map(e),ie=e=>[...e?.keys()??[]],le=(e,t)=>e?.get(t),ce=(e,t)=>re(e,((e,s)=>t(s,e))),de=(e,t,s)=>G(s)?(oe(e,t),e):e?.set(t,s),ue=(e,t,s)=>(ee(e,t)||de(e,t,s()),le(e,t)),he=(e,t,s)=>{const n={},r=t??(e=>e);return re(e,((e,t)=>K(r(e),(e=>s?.(e)?0:n[t]=e)))),n},ge=(e,t)=>{const s=ae(),n=t??(e=>e);return re(e,((e,t)=>s.set(t,n(e)))),s},fe=e=>ge(e,ge),Le=(e,t,s,n,r=0)=>K((s?ue:le)(e,t[r],r>D(t)-2?s:ae),(o=>{if(r>D(t)-2)return n?.(o)&&de(e,t[r]),o;const a=Le(o,t,s,n,r+1);return te(o)&&de(e,t[r]),a})),we=e=>{const s=t(e);return U(s)||s==o&&H(e)?s:void 0},pe=(e,t,s,n,r)=>G(r)?e.delCell(t,s,n,!0):e.setCell(t,s,n,r),ve=(e,t,s)=>G(s)?e.delValue(t):e.setValue(t,s),Se=e=>new Set(Y(e)||G(e)?e:[e]),Re=(e,t)=>e?.add(t),Ie=(e,t,s)=>{const n=e.hasRow,r=ae(),o=ae(),a=ae(),i=ae(),l=ae(),c=(t,s,...n)=>{const r=ue(l,t,Se);return J(n,(t=>Re(r,t)&&s&&e.callListener(t))),n},d=(t,...s)=>K(le(l,t),(n=>{J(F(s)?se(n):s,(t=>{e.delListener(t),oe(n,t)})),te(n)&&de(l,t)})),u=(e,s)=>{de(r,e,s),ee(o,e)||(de(o,e,t()),de(a,e,ae()),de(i,e,ae()))},h=e=>{de(r,e),de(o,e),de(a,e),de(i,e),d(e)};return[()=>e,()=>ie(r),e=>ce(o,e),e=>ee(o,e),e=>le(r,e),e=>le(o,e),(e,t)=>de(o,e,t),u,(t,r,o,l,h)=>{u(t,r);const g=ae(),f=ae(),L=le(a,t),w=le(i,t),p=t=>{const o=s=>e.getCell(r,t,s),a=le(L,t),i=n(r,t)?s(l(o,t)):void 0;if(a===i||Y(a)&&Y(i)&&x(a,i)||de(g,t,[a,i]),!G(h)){const e=le(w,t),s=n(r,t)?h(o,t):void 0;e!=s&&de(f,t,s)}},v=e=>{o((()=>{re(g,(([,e],t)=>de(L,t,e))),re(f,((e,t)=>de(w,t,e)))}),g,f,L,w,e),ne(g),ne(f)};ce(L,p),e.hasTable(r)&&J(e.getRowIds(r),(e=>{ee(L,e)||p(e)})),v(!0),d(t),c(t,0,e.addRowListener(r,null,((e,t,s)=>p(s))),e.addTableListener(r,(()=>v())))},h,()=>ce(l,h),c,d]},Te=(e,r)=>t(e)==n?t=>t(e):e??(()=>r??s),ye=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},be=/^\d+$/,me=()=>{const e=[];let t=0;return[n=>(n?O(e):null)??s+t++,t=>{be.test(t)&&D(e)<1e3&&z(e,t)}]},Ce=e=>{let t;const[n,r]=me(),o=ae();return[(r,a,i,l=[],c=(()=>[]))=>{t??=e();const d=n(1);return de(o,d,[r,a,i,l,c]),Re(Le(a,i??[s],Se),d),d},(e,n,...r)=>J(((e,t=[s])=>{const n=[],r=(e,s)=>s==D(t)?z(n,e):null===t[s]?re(e,(e=>r(e,s+1))):J([t[s],null],(t=>r(le(e,t),s+1)));return r(e,0),n})(e,n),(e=>re(e,(e=>le(o,e)[0](t,...n??[],...r))))),e=>K(le(o,e),(([,t,n])=>(Le(t,n??[s],void 0,(t=>(oe(t,e),te(t)?1:0))),de(o,e),r(e),n))),e=>K(le(o,e),(([e,,s=[],n,r])=>{const o=(...a)=>{const i=D(a);i==D(s)?e(t,...a,...r(a)):G(s[i])?J(n[i]?.(...a)??[],(e=>o(...a,e))):o(...a,s[i])};o()}))]},Ve=Object,xe=Ve.keys,Ee=Ve.isFrozen,ke=Ve.freeze,Je=e=>$(e,Ve)&&e.constructor==Ve,Me=(e,t)=>!G(((e,t)=>K(e,(e=>e[t])))(e,t)),Ae=(e,t)=>delete e[t],De=(e,t)=>M(Ve.entries(e),(([e,s])=>t(s,e))),Fe=e=>Je(e)&&F(xe(e)),Pe=ye((e=>{let t,n,r,o=100,a=ae(),i=ae(),l=1;const c=ae(),d=ae(),[u,h,g]=Ce((()=>Q)),f=ae(),L=ae(),w=[],p=[],v=(t,s)=>{l=0,e.transaction((()=>{const[n,r]=le(f,s);re(n,((s,n)=>re(s,((s,r)=>re(s,((s,o)=>pe(e,n,r,o,s[t]))))))),re(r,((s,n)=>ve(e,n,s[t])))})),l=1},S=e=>{de(f,e),de(L,e),h(d,[e])},R=(e,t)=>J(((e,t)=>e.splice(0,t))(e,t??D(e)),S),I=()=>R(w,D(w)-o),T=()=>K(t,(()=>{z(w,t),I(),R(p),t=void 0,r=1})),y=()=>{t=N(w),r=1},b=e.addCellListener(null,null,null,((e,t,s,n,r,o)=>{if(l){T();const e=ue(a,t,ae),i=ue(e,s,ae),l=ue(i,n,(()=>[o,void 0]));l[1]=r,l[0]===r&&te(de(i,n))&&te(de(e,s))&&te(de(a,t))&&y(),k()}})),m=e.addValueListener(null,((e,t,s,n)=>{if(l){T();const e=ue(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&te(de(i,t))&&y(),k()}})),V=(e="")=>(G(t)&&(t=s+n++,de(f,t,[a,i]),A(t,e),a=ae(),i=ae(),r=1),t),x=()=>{F(w)||(((e,...t)=>{e.unshift(...t)})(p,V()),v(0,t),t=N(w),r=1)},E=()=>{F(p)||(z(w,t),t=O(p),v(1,t),r=1)},k=()=>{r&&(h(c),r=0)},M=e=>{const t=V(e);return k(),t},A=(e,t)=>(P(e)&&le(L,e)!==t&&(de(L,e,t),h(d,[e])),Q),P=e=>ee(f,e),Q={setSize:e=>(o=e,I(),Q),addCheckpoint:M,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...p]],forEachCheckpoint:e=>ce(L,e),hasCheckpoint:P,getCheckpoint:e=>le(L,e),goBackward:()=>(x(),k(),Q),goForward:()=>(E(),k(),Q),goTo:e=>{const s=C(w,e)?x:C(p,e)?E:null;for(;!G(s)&&e!=t;)s();return k(),Q},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),Q),clear:()=>(R(w),R(p),G(t)||S(t),t=void 0,n=0,M(),Q),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return ke(Q.clear())})),Qe=(e,t)=>e<t?-1:1,ze=ye((e=>{const t=ae(),n=ae(),[r,o,a,i,l,c,d,,u,h,g]=Ie(e,ae,(e=>G(e)?s:Y(e)?M(e,m):m(e))),[f,L,w]=Ce((()=>v)),p=(t,s,n)=>{const r=l(t);re(n,((t,n)=>s(n,(s=>re(t,(t=>s(t,(s=>e.forEachCell(r,t,s)))))))))},v={setIndexDefinition:(e,s,r,o,a,i=Qe)=>{const l=G(a)?void 0:([e],[t])=>a(e,t);return u(e,s,((s,r,a,u,h,g)=>{let f=0;const w=Se(),p=Se(),v=c(e);if(re(r,(([e,t],s)=>{const n=Se(e),r=Se(t);re(n,(e=>oe(r,e)?oe(n,e):0)),re(n,(e=>{Re(w,e),K(le(v,e),(t=>{oe(t,s),te(t)&&(de(v,e),f=1)}))})),re(r,(e=>{Re(w,e),ee(v,e)||(de(v,e,Se()),f=1),Re(le(v,e),s),G(o)||Re(p,e)}))})),s(),te(h)||(g?ce(v,(e=>Re(p,e))):ce(a,(e=>K(le(u,e),(e=>Re(p,e))))),re(p,(e=>{const t=(t,s)=>i(le(h,t),le(h,s),e),s=[...le(v,e)];E(s,t)||(de(v,e,Se(k(s,t))),Re(w,e))}))),(f||g)&&!G(l)){const t=[...v];E(t,l)||(d(e,ae(k(t,l))),f=1)}f&&L(t,[e]),re(w,(t=>L(n,[e,t])))}),Te(r),K(o,Te)),v},delIndexDefinition:e=>(h(e),v),getStore:r,getIndexIds:o,forEachIndex:e=>a(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>ee(c(e),t),getTableId:l,getSliceIds:e=>ie(c(e)),getSliceRowIds:(e,t)=>se(le(c(e),t)),addSliceIdsListener:(e,s)=>f(s,t,[e]),addSliceRowIdsListener:(e,t,s)=>f(s,n,[e,t]),delListener:e=>(w(e),v),destroy:g,getListenerStats:()=>({})};return ke(v)})),Ne=ae([["avg",[(e,t)=>A(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>q(...e),(e,t)=>q(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:q(t,e)]],["min",[e=>B(...e),(e,t)=>B(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:B(t,e)]],["sum",[e=>A(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Oe=(e,t,s,n,r,o=!1)=>{if(te(s))return;const[a,i,l,c]=r;return o||=G(e),re(n,(([s,n])=>{o||(e=G(s)?i?.(e,n,t++):G(n)?l?.(e,s,t--):c?.(e,n,s,t),o||=G(e))})),o?a(se(s),_(s)):e},je=ye((e=>{const t=ae(),[n,r,o,a,i,l,c,,d,u,h]=Ie(e,Z,(e=>isNaN(e)||G(e)||!0===e||!1===e||e===s?void 0:1*e)),[g,f,L]=Ce((()=>w)),w={setMetricDefinition:(e,s,n,r,o,a,i)=>{const u=X(n)?[n,o,a,i]:le(Ne,n)??le(Ne,"sum");return d(e,s,((s,n,r,o,a,i)=>{const d=l(e),h=_(o);i||=G(d),s();let g=Oe(d,h,o,n,u,i);H(g)||(g=void 0),g!=d&&(c(e,g),f(t,[e],g,d))}),Te(r,1)),w},delMetricDefinition:e=>(u(e),w),getStore:n,getMetricIds:r,forEachMetric:o,hasMetric:a,getTableId:i,getMetric:l,addMetricListener:(e,s)=>g(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return ke(w)})),We=(e,t,n,r,o)=>{let a,i,l=0;const c={load:async(n={},r={})=>{if(2!=l){l=1;const o=await t();G(o)||o==s?e.transaction((()=>e.setTables(n).setValues(r))):e.setJson(o),l=0}return c},startAutoLoad:async(e={},t={})=>(c.stopAutoLoad(),await c.load(e,t),r(c.load),c),stopAutoLoad:()=>(o(),c),save:async()=>(1!=l&&(l=2,await n(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),a=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(K(a,e.delListener),K(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ke(c)},qe="storage",Be=globalThis.window,He=(e,t,s)=>{let n;return We(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},Be.addEventListener(qe,n)}),(()=>{Be.removeEventListener(qe,n),n=void 0}))},$e=e=>e.headers.get("ETag"),Ge=ye((e=>{const t=e.createStore,[n,r,o,a,i,,,l,,c,g,L,w]=Ie(e,(()=>!0),Z),T=t(),y=t(),b=ae(),m=(e,t,...s)=>J(s,(s=>Re(ue(ue(b,t,ae),e,Se),s))),C=e=>{K(le(b,e),(e=>{ce(e,((e,t)=>re(t,(t=>e.delListener(t))))),ne(e)})),J([y,T],(t=>t.delTable(e)))},x=(e,t,s)=>m(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),E={setQueryDefinition:(t,n,r)=>{l(t,n),C(t);const o=[],a=[[null,[n,null,null,[],ae()]]],i=[],c=[],d=[];r({select:(e,t)=>{const n=X(e)?[D(o)+s,e]:[G(t)?e:t,s=>s(e,t)];return z(o,n),{as:e=>n[0]=e}},join:(e,t,s)=>{const n=G(s)||X(t)?null:t,r=G(n)?t:s,o=[e,[e,n,X(r)?r:e=>e(r),[],ae()]];return z(a,o),{as:e=>o[0]=e}},where:(e,t,s)=>z(i,X(e)?e:G(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,r)=>{const o=[e,[e,X(t)?[t,s,n,r]:le(Ne,t)??[(e,t)=>t]]];return z(c,o),{as:e=>o[0]=e}},having:(e,t)=>z(d,X(e)?e:s=>s(e)===t)});const u=ae(o);if(te(u))return E;const h=ae(a);ce(h,((e,[,t])=>K(le(h,t),(({3:t})=>G(e)?0:z(t,e)))));const g=ae(c);let f=T;if(te(g)&&F(d))f=y;else{x(t,f,y);const e=ae();ce(g,((t,[s,n])=>Re(ue(e,s,Se),[t,n])));const s=Se();ce(u,(t=>ee(e,t)?0:Re(s,t)));const n=ae(),r=(s,n,r,o)=>K(s,(([a,i,l,c])=>{ce(n,((t,[s])=>{const n=ue(a,t,ae),i=le(n,r),l=o?void 0:s;if(i!==l){const s=Se([[i,l]]),o=_(n);de(n,r,l),re(le(e,t),(([e,t])=>{const r=Oe(c[e],o,n,s,t);c[e]=G(we(r))?null:r}))}})),te(i)||!V(d,(e=>e((e=>c[e]))))?y.delRow(t,l):G(l)?s[2]=y.addRow(t,c):y.setRow(t,l,c)}));m(f,t,f.addRowListener(t,null,((o,a,i,l)=>{const c=[],d=[],u=ae(),h=f.hasRow(t,i);let g=!h;re(s,(e=>{const[s,n,r]=l(t,i,e);z(c,n),z(d,r),g||=s})),ce(e,(e=>{const[s,,n]=l(t,i,e);(g||s)&&de(u,e,[n])})),g&&r(Le(n,c,void 0,(([,e])=>(oe(e,i),te(e)))),u,i,1),h&&r(Le(n,d,(()=>{const e={};return re(s,(s=>e[s]=f.getCell(t,i,s))),[ae(),Se(),void 0,e]}),(([,e])=>{Re(e,i)})),u,i)})))}x(t,e,f);const p=(s,r,o,a)=>{const l=t=>e.getCell(r,o,t);J(a,(n=>{const[r,,o,a,i]=le(h,n),c=o?.(l,s),[d,u]=le(i,s)??[];c!=d&&(G(u)||w(t,u),de(i,s,G(c)?null:[c,...L(t,1,e.addRowListener(r,c,(()=>p(s,r,c,a))))]))})),(s=>{const r=(t,r)=>e.getCell(...G(r)?[n,s,t]:t===n?[n,s,r]:[le(h,t)?.[0],le(le(h,t)?.[4],s)?.[0],r]);f.transaction((()=>V(i,(e=>e(r)))?ce(u,((e,n)=>pe(f,t,s,e,n(r,s)))):f.delRow(t,s)))})(s)},{3:v}=le(h,null);return f.transaction((()=>L(t,1,e.addRowListener(n,null,((s,r,o)=>{e.hasRow(n,o)?p(o,n,o,v):(f.delRow(t,o),re(h,(({4:e})=>K(le(e,o),(([,s])=>{w(t,s),de(e,o)})))))}))))),E},delQueryDefinition:e=>(C(e),c(e),E),getStore:n,getQueryIds:r,forEachQuery:o,hasQuery:a,getTableId:i,delListener:e=>(y.delListener(e),E),destroy:g,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=y.getListenerStats();return n}};return De({[f]:[1,1],[v]:[0,1],[S]:[0,5],[p]:[1,2],[I]:[0,2],[R]:[1,3]},(([e,t],s)=>{J(e?["get","has","forEach"]:["get"],(e=>E[e+u+s]=(...t)=>y[e+s](...t))),E[h+u+s+d]=(...e)=>y[h+s+d](...Q(e,0,t),((s,...n)=>e[t](E,...n)))})),ke(E)})),Ke=ye((e=>{const t=ae(),n=ae(),r=ae(),o=ae(),[a,i,l,c,d,u,,,h,g,f]=Ie(e,(()=>[ae(),ae(),ae(),ae()]),(e=>G(e)?void 0:e+s)),[L,w,p]=Ce((()=>I)),v=(e,t,s)=>K(u(e),(([n,,r])=>{if(!ee(r,t)){const o=Se();if(d(e)!=R(e))Re(o,t);else{let e=t;for(;!G(e)&&!ee(o,e);)Re(o,e),e=le(n,e)}if(s)return o;de(r,t,o)}return le(r,t)})),S=(e,t)=>K(u(e),(([,,e])=>de(e,t))),R=e=>le(t,e),I={setRelationshipDefinition:(e,s,a,i)=>(de(t,e,a),h(e,s,((t,s)=>{const a=Se(),i=Se(),l=Se(),[c,d]=u(e);re(s,(([t,s],n)=>{G(t)||(Re(i,t),K(le(d,t),(e=>{oe(e,n),te(e)&&de(d,t)}))),G(s)||(Re(i,s),ee(d,s)||de(d,s,Se()),Re(le(d,s),n)),Re(a,n),de(c,n,s),ce(le(o,e),(t=>{ee(v(e,t),n)&&Re(l,t)}))})),t(),re(a,(t=>w(n,[e,t]))),re(i,(t=>w(r,[e,t]))),re(l,(t=>{S(e,t),w(o,[e,t])}))}),Te(i)),I),delRelationshipDefinition:e=>(de(t,e),g(e),I),getStore:a,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>le(u(e)?.[0],t),getLocalRowIds:(e,t)=>se(le(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>G(u(e))?[t]:se(v(e,t,!0)),addRemoteRowIdListener:(e,t,s)=>L(s,n,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,r,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),L(s,o,[e,t])),delListener:e=>(S(...p(e)),I),destroy:f,getListenerStats:()=>({})};return ke(I)})),Ue=e=>[e,e],Xe=()=>[ae(),ae()],Ye=(e,t,s,n=de)=>(De(t,((t,n)=>s(e,n,t))),ce(e,(s=>Me(t,s)?0:n(e,s))),e),Ze=(e,t,s)=>G(e)||!Je(e)||Fe(e)||Ee(e)?(s?.(),!1):(De(e,((s,n)=>{t(s,n)||Ae(e,n)})),!Fe(e)),_e=(e,t,s)=>de(e,t,le(e,t)==-s?void 0:s),et=()=>{let e,t,s,n,r=0;const a=ae(),c=ae(),u=ae(),g=ae(),S=ae(),V=ae(),E=ae(),A=ae(),D=ae(),F=ae(),P=ae(),N=ae(),O=Se(),q=ae(),B=ae(),H=ae(),$=Xe(),Y=Xe(),Z=Xe(),_=Xe(),se=Xe(),Le=Xe(),Ie=Xe(),Te=Xe(),ye=Xe(),be=Xe(),Ve=Xe(),xe=Xe(),Ee=Xe(),Je=ae(),Pe=Xe(),[ze,Ne,Oe,je]=Ce((()=>ss)),We=e=>{if(!Ze(e,((e,t)=>C([i,l],t))))return!1;const t=e[i];return!(!U(t)&&t!=o||(we(e[l])!=t&&Ae(e,l),0))},qe=(t,s)=>(!e||ee(D,s)||mt(s))&&Ze(t,((e,t)=>Be(s,t,e)),(()=>mt(s))),Be=(e,t,s,n)=>Ze(n?s:Ke(s,e,t),((n,r)=>K(He(e,t,r,n),(e=>(s[r]=e,!0)),(()=>!1))),(()=>mt(e,t))),He=(t,s,n,r)=>e?K(le(le(D,t),n),(e=>we(r)!=e[i]?mt(t,s,n,r,e[l]):r),(()=>mt(t,s,n,r))):G(we(r))?mt(t,s,n,r):r,$e=(e,t)=>Ze(t?e:tt(e),((t,s)=>K(Ge(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Ct())),Ge=(e,s)=>t?K(le(P,e),(t=>we(s)!=t[i]?Ct(e,s,t[l]):s),(()=>Ct(e,s))):G(we(s))?Ct(e,s):s,Ke=(e,t,s)=>(K(le(F,t),(([n,r])=>{re(n,((t,s)=>{Me(e,s)||(e[s]=t)})),re(r,(n=>{Me(e,n)||mt(t,s,n)}))})),e),tt=e=>(t&&(re(N,((t,s)=>{Me(e,s)||(e[s]=t)})),re(O,(t=>{Me(e,t)||Ct(t)}))),e),st=e=>Ye(D,e,((e,t,s)=>{const n=ae(),r=Se();Ye(ue(D,t,ae),s,((e,t,s)=>{de(e,t,s),K(s[l],(e=>de(n,t,e)),(()=>Re(r,t)))})),de(F,t,[n,r])}),((e,t)=>{de(D,t),de(F,t)})),nt=e=>Ye(P,e,((e,t,s)=>{de(P,t,s),K(s[l],(e=>de(N,t,e)),(()=>Re(O,t)))}),((e,t)=>{de(P,t),de(N,t),oe(O,t)})),rt=e=>Fe(e)?Ut():Bt(e),ot=e=>Ye(B,e,((e,t,s)=>at(t,s)),((e,t)=>Lt(t))),at=(e,t)=>Ye(ue(B,e,(()=>(St(e,1),ae()))),t,((t,s,n)=>it(e,t,s,n)),((t,s)=>wt(e,t,s))),it=(e,t,s,n,r)=>Ye(ue(t,s,(()=>(Rt(e,s,1),ae()))),n,((t,n,r)=>lt(e,s,t,n,r)),((n,o)=>pt(e,t,s,n,o,r))),lt=(e,t,s,n,r)=>{ee(s,n)||It(e,t,n,1);const o=le(s,n);r!==o&&(Tt(e,t,n,o,r),de(s,n,r))},ct=(e,t,s,n,r)=>K(le(t,s),(t=>lt(e,s,t,n,r)),(()=>it(e,t,s,Ke({[n]:r},e,s)))),dt=e=>Fe(e)?Xt():Ht(e),ut=e=>Ye(H,e,((e,t,s)=>ht(t,s)),((e,t)=>vt(t))),ht=(e,t)=>{ee(H,e)||yt(e,1);const s=le(H,e);t!==s&&(bt(e,s,t),de(H,e,t))},gt=(e,t)=>{const[s]=ue(q,e,me),n=s(t);return ee(le(B,e),n)?gt(e,t):n},ft=e=>le(B,e)??at(e,{}),Lt=e=>at(e,{}),wt=(e,t,s)=>{const[,n]=ue(q,e,me);n(s),it(e,t,s,{},!0)},pt=(e,t,s,n,r,o)=>{const a=le(le(F,e)?.[0],r);if(!G(a)&&!o)return lt(e,s,n,r,a);const i=t=>{Tt(e,s,t,le(n,t)),It(e,s,t,-1),de(n,t)};G(a)?i(r):ce(n,i),te(n)&&(Rt(e,s,-1),te(de(t,s))&&(St(e,-1),de(B,e),de(q,e)))},vt=e=>{const t=le(N,e);if(!G(t))return ht(e,t);bt(e,le(H,e)),yt(e,-1),de(H,e)},St=(e,t)=>_e(a,e,t),Rt=(e,t,s)=>_e(ue(c,e,ae),t,s),It=(e,t,s,n)=>_e(ue(ue(u,e,ae),t,ae),s,n),Tt=(e,t,s,n,r)=>ue(ue(ue(g,e,ae),t,ae),s,(()=>[n,0]))[1]=r,yt=(e,t)=>_e(S,e,t),bt=(e,t,s)=>ue(V,e,(()=>[t,0]))[1]=s,mt=(e,t,s,n,r)=>(z(ue(ue(ue(E,e,ae),t,ae),s,(()=>[])),n),r),Ct=(e,t,s)=>(z(ue(A,e,(()=>[])),t),s),Vt=(e,t,s)=>K(le(le(le(g,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(Ot(e,t,s))])),xt=e=>K(le(V,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ue(qt(e))])),Et=e=>te(E)||te(ye[e])?0:re(e?ge(E,fe):E,((t,s)=>re(t,((t,n)=>re(t,((t,r)=>Ne(ye[e],[s,n,r],t))))))),kt=e=>te(A)||te(be[e])?0:re(e?ge(A):A,((t,s)=>Ne(be[e],[s],t))),Jt=(e,t,s)=>{if(!te(t))return Ne(e,s),1},Mt=e=>{const t=te(se[e]),s=te(Ie[e])&&te(_[e])&&t&&te(Y[e]),n=te(Te[e])&&te(Le[e])&&te(Z[e])&&te($[e]);if(!s||!n){const r=e?[ge(a),fe(c),ge(u,fe),ge(g,fe)]:[a,c,u,g];if(!s){re(r[2],((t,s)=>re(t,((t,n)=>Jt(Ie[e],t,[s,n])))));const s=Se();re(r[1],((n,r)=>{Jt(_[e],n,[r])&&!t&&(Ne(se[e],[r,null]),Re(s,r))})),t||re(r[3],((t,n)=>{if(!ee(s,n)){const s=Se();re(t,(e=>re(e,(([t,n],r)=>n!==t?Re(s,r):oe(e,r))))),re(s,(t=>Ne(se[e],[n,t])))}})),Jt(Y[e],r[0])}if(!n){let t;re(r[3],((s,n)=>{let r;re(s,((s,o)=>{let a;re(s,(([s,i],l)=>{i!==s&&(Ne(Te[e],[n,o,l],i,s,Vt),t=r=a=1)})),a&&Ne(Le[e],[n,o],Vt)})),r&&Ne(Z[e],[n],Vt)})),t&&Ne($[e],void 0,Vt)}}},At=e=>{const t=te(xe[e]),s=te(Ee[e])&&te(Ve[e]);if(!t||!s){const n=e?[ge(S),ge(V)]:[S,V];if(t||Jt(xe[e],n[0]),!s){let t;re(n[1],(([s,n],r)=>{n!==s&&(Ne(Ee[e],[r],n,s,xt),t=1)})),t&&Ne(Ve[e],void 0,xt)}}},Dt=(e,...t)=>(_t((()=>e(...M(t,m)))),ss),Ft=()=>he(B,(e=>he(e,he))),Pt=()=>ie(B),Qt=e=>ie(le(B,m(e))),zt=(e,t,s,n=0,r)=>{return M(Q(k((o=le(B,m(e)),a=(e,s)=>[G(t)?s:le(e,m(t)),s],M([...o?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>Qe(e,t)*(s?-1:1))),n,G(r)?r:n+r),(([,e])=>e));var o,a},Nt=(e,t)=>ie(le(le(B,m(e)),m(t))),Ot=(e,t,s)=>le(le(le(B,m(e)),m(t)),m(s)),jt=()=>he(H),Wt=()=>ie(H),qt=e=>le(H,m(e)),Bt=e=>Dt((()=>(e=>Ze(e,qe,mt))(e)?ot(e):0)),Ht=e=>Dt((()=>$e(e)?ut(e):0)),$t=e=>{try{rt(W(e))}catch{}return ss},Gt=t=>Dt((()=>{if((e=Ze(t,(e=>Ze(e,We))))&&(st(t),!te(B))){const e=Ft();Ut(),Bt(e)}})),Kt=e=>Dt((()=>{if(t=(e=>Ze(e,We))(e)){const s=jt();Zt(),Xt(),t=!0,nt(e),Ht(s)}})),Ut=()=>Dt((()=>ot({}))),Xt=()=>Dt((()=>ut({}))),Yt=()=>Dt((()=>{st({}),e=!1})),Zt=()=>Dt((()=>{nt({}),t=!1})),_t=(e,t)=>{if(-1!=r){es();const s=e();return ts(t),s}},es=()=>(-1!=r&&r++,1==r&&Ne(Je,void 0,!1,!1),ss),ts=e=>(r>0&&(r--,0==r&&(s=!te(g),n=!te(V),r=1,Et(1),s&&Mt(1),kt(1),n&&At(1),e?.(he(g,(e=>he(e,(e=>he(e,(e=>[...e]),(([e,t])=>e===t))),Fe)),Fe),he(E,(e=>he(e,he))),he(V,(e=>[...e]),(([e,t])=>e===t)),he(A))&&(re(g,((e,t)=>re(e,((e,s)=>re(e,(([e],n)=>pe(ss,t,s,n,e))))))),re(V,(([e],t)=>ve(ss,t,e))),s=n=!1),Ne(Pe[0],void 0,s,n),r=-1,Et(0),s&&Mt(0),kt(0),n&&At(0),Ne(Pe[1],void 0,s,n),r=0,J([a,c,u,g,E,S,V,A],ne))),ss),ss={getTables:Ft,getTableIds:Pt,getTable:e=>he(le(B,m(e)),he),getRowIds:Qt,getSortedRowIds:zt,getRow:(e,t)=>he(le(le(B,m(e)),m(t))),getCellIds:Nt,getCell:Ot,getValues:jt,getValueIds:Wt,getValue:qt,hasTables:()=>!te(B),hasTable:e=>ee(B,m(e)),hasRow:(e,t)=>ee(le(B,m(e)),m(t)),hasCell:(e,t,s)=>ee(le(le(B,m(e)),m(t)),m(s)),hasValues:()=>!te(H),hasValue:e=>ee(H,m(e)),getTablesJson:()=>j(B),getValuesJson:()=>j(H),getJson:()=>j([B,H]),getTablesSchemaJson:()=>j(D),getValuesSchemaJson:()=>j(P),getSchemaJson:()=>j([D,P]),setTables:Bt,setTable:(e,t)=>Dt((e=>qe(t,e)?at(e,t):0),e),setRow:(e,t,s)=>Dt(((e,t)=>Be(e,t,s)?it(e,ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>_t((()=>{let n;return Be(e,n,t)&&(e=m(e),it(e,ft(e),n=gt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Dt(((e,t)=>{if(Be(e,t,s,1)){const n=ft(e);De(s,((s,r)=>ct(e,n,t,r,s)))}}),e,t),setCell:(e,t,s,n)=>Dt(((e,t,s)=>K(He(e,t,s,X(n)?n(Ot(e,t,s)):n),(n=>ct(e,ft(e),t,s,n)))),e,t,s),setValues:Ht,setPartialValues:e=>Dt((()=>$e(e,1)?De(e,((e,t)=>ht(t,e))):0)),setValue:(e,t)=>Dt((e=>K(Ge(e,X(t)?t(qt(e)):t),(t=>ht(e,t)))),e),setTablesJson:$t,setValuesJson:e=>{try{dt(W(e))}catch{}return ss},setJson:e=>{try{const[t,s]=W(e);rt(t),dt(s)}catch{$t(e)}return ss},setTablesSchema:Gt,setValuesSchema:Kt,setSchema:(e,t)=>Dt((()=>{Gt(e),Kt(t)})),delTables:Ut,delTable:e=>Dt((e=>ee(B,e)?Lt(e):0),e),delRow:(e,t)=>Dt(((e,t)=>K(le(B,e),(s=>ee(s,t)?wt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Dt(((e,t,s)=>K(le(B,e),(r=>K(le(r,t),(o=>ee(o,s)?pt(e,r,t,o,s,n):0))))),e,t,s),delValues:Xt,delValue:e=>Dt((e=>ee(H,e)?vt(e):0),e),delTablesSchema:Yt,delValuesSchema:Zt,delSchema:()=>Dt((()=>{Yt(),Zt()})),transaction:_t,startTransaction:es,finishTransaction:ts,forEachTable:e=>re(B,((t,s)=>e(s,(e=>re(t,((t,s)=>e(s,(e=>ce(t,e))))))))),forEachRow:(e,t)=>re(le(B,m(e)),((e,s)=>t(s,(t=>ce(e,t))))),forEachCell:(e,t,s)=>ce(le(le(B,m(e)),m(t)),s),forEachValue:e=>ce(H,e),addSortedRowIdsListener:(e,t,s,n,r,o,a)=>{let i=zt(e,t,s,n,r);return ze((()=>{const a=zt(e,t,s,n,r);x(a,i)||(i=a,o(ss,e,t,s,n,r,i))}),se[a?1:0],[e,t],[Pt])},addStartTransactionListener:e=>ze(e,Je),addWillFinishTransactionListener:e=>ze(e,Pe[0]),addDidFinishTransactionListener:e=>ze(e,Pe[1]),callListener:e=>(je(e),ss),delListener:e=>(Oe(e),ss),getListenerStats:()=>({}),createStore:et};return De({[L]:[0,$],[w]:[0,Y],[f]:[1,Z,[Pt]],[v]:[1,_,[Pt]],[p]:[2,Le,[Pt,Qt]],[I]:[2,Ie,[Pt,Qt]],[R]:[3,Te,[Pt,Qt,Nt],e=>Ue(Ot(...e))],InvalidCell:[3,ye],[y]:[0,Ve],[b]:[0,xe],[T]:[1,Ee,[Wt],e=>Ue(qt(e[0]))],InvalidValue:[1,be]},(([e,t,s,n],r)=>{ss[h+r+d]=(...r)=>ze(r[e],t[r[e+1]?1:0],e>0?Q(r,0,e):void 0,s,n)})),ke(ss)};exports.createCheckpoints=Pe,exports.createCustomPersister=We,exports.createFilePersister=(t,s)=>{let n;return We(t,(async()=>{try{return await e.promises.readFile(s,c)}catch{}}),(async t=>{try{await e.promises.writeFile(s,t,c)}catch{}}),(t=>{n=e.watch(s,t)}),(()=>{n?.close(),n=void 0}))},exports.createIndexes=ze,exports.createLocalPersister=(e,t)=>He(e,t,localStorage),exports.createMetrics=je,exports.createQueries=Ge,exports.createRelationships=Ke,exports.createRemotePersister=(e,t,s,n)=>{let r,o;return We(e,(async()=>{const e=await fetch(t);return o=$e(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{r=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=$e(s);G(o)||G(n)||n==o||(o=n,e())}),1e3*n)}),(()=>{K(r,clearInterval),r=void 0}))},exports.createSessionPersister=(e,t)=>He(e,t,sessionStorage),exports.createStore=et,exports.defaultSorter=Qe;
Binary file