tinybase 3.2.0 → 3.3.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.
- package/lib/cjs/store.cjs +1 -1
- package/lib/cjs/store.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/tools.cjs +1 -1
- package/lib/cjs/tools.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/store.cjs +1 -1
- package/lib/cjs-es6/store.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/tools.cjs +1 -1
- package/lib/cjs-es6/tools.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/store.js +53 -13
- package/lib/debug/tinybase.js +53 -13
- package/lib/debug/tools.js +93 -1
- package/lib/debug/ui-react.js +24 -0
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/types/store.d.ts +302 -9
- package/lib/types/tools.d.ts +2 -2
- package/lib/types/ui-react.d.ts +156 -0
- package/lib/types/with-schemas/store.d.ts +405 -16
- package/lib/types/with-schemas/tools.d.ts +2 -2
- package/lib/types/with-schemas/ui-react.d.ts +181 -5
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +15 -15
- package/readme.md +2 -2
package/lib/es6/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{watch as e,promises as t}from"fs";const n=e=>typeof e,l="",o=n(l),r=n(!0),s=n(0),a=n(n),i="type",d="default",c="utf8",u="Listener",v="Result",h="add",f="Ids",g="Table",L=g+"s",y=g+f,p="Row",w=p+f,S="Sorted"+p+f,I="Cell",R=I+f,T="Value",b=T+"s",m=T+f,C=e=>l+e,V=(e,t)=>e.includes(t),E=(e,t)=>e.every(t),x=(e,t)=>D(e)===D(t)&&E(e,((e,n)=>t[n]===e)),k=(e,t)=>E(e,((n,l)=>0==l||t(e[l-1],n)<=0)),J=(e,t)=>e.sort(t),P=(e,t)=>e.forEach(t),A=(e,t)=>e.map(t),M=e=>F(e,((e,t)=>e+t),0),D=e=>e.length,O=e=>0==D(e),F=(e,t,n)=>e.reduce(t,n),j=(e,t,n)=>e.slice(t,n),Q=(e,...t)=>e.push(...t),z=e=>e.pop(),N=e=>e.shift(),W=e=>JSON.stringify(e,((e,t)=>G(t,Map)?F([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),B=JSON.parse,H=Math.max,$=Math.min,q=isFinite,G=(e,t)=>e instanceof t,K=e=>null==e,U=(e,t,n)=>K(e)?null==n?void 0:n():t(e),X=e=>e==o||e==r,Y=e=>n(e)==a,Z=e=>Array.isArray(e),_=()=>{},ee=e=>e.size,te=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ne=e=>K(e)||0==ee(e),le=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},oe=e=>e.clear(),re=(e,t)=>null==e?void 0:e.forEach(t),se=(e,t)=>null==e?void 0:e.delete(t),ae=e=>new Map(e),ie=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},de=(e,t)=>null==e?void 0:e.get(t),ce=(e,t)=>re(e,((e,n)=>t(n,e))),ue=(e,t,n)=>K(n)?(se(e,t),e):null==e?void 0:e.set(t,n),ve=(e,t,n)=>(te(e,t)||ue(e,t,n()),de(e,t)),he=(e,t,n)=>{const l={},o=null!=t?t:e=>e;return re(e,((e,t)=>U(o(e),(e=>(null==n?void 0:n(e))?0:l[t]=e)))),l},fe=(e,t)=>{const n=ae(),l=null!=t?t:e=>e;return re(e,((e,t)=>n.set(t,l(e)))),n},ge=e=>fe(e,fe),Le=(e,t,n,l,o=0)=>U((n?ve:de)(e,t[o],o>D(t)-2?n:ae),(r=>{if(o>D(t)-2)return(null==l?void 0:l(r))&&ue(e,t[o]),r;const s=Le(r,t,n,l,o+1);return ne(r)&&ue(e,t[o]),s})),ye=e=>{const t=n(e);return X(t)||t==s&&q(e)?t:void 0},pe=(e,t,n,l,o)=>K(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),we=(e,t,n)=>K(n)?e.delValue(t):e.setValue(t,n),Se=e=>new Set(Z(e)||K(e)?e:[e]),Ie=(e,t)=>null==e?void 0:e.add(t),Re=(e,t,n)=>{const l=e.hasRow,o=ae(),r=ae(),s=ae(),a=ae(),i=ae(),d=(t,n,...l)=>{const o=ve(i,t,Se);return P(l,(t=>Ie(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>U(de(i,t),(l=>{P(O(n)?le(l):n,(t=>{e.delListener(t),se(l,t)})),ne(l)&&ue(i,t)})),u=(e,n)=>{ue(o,e,n),te(r,e)||(ue(r,e,t()),ue(s,e,ae()),ue(a,e,ae()))},v=e=>{ue(o,e),ue(r,e),ue(s,e),ue(a,e),c(e)};return[()=>e,()=>ie(o),e=>ce(r,e),e=>te(r,e),e=>de(o,e),e=>de(r,e),(e,t)=>ue(r,e,t),u,(t,o,r,i,v)=>{u(t,o);const h=ae(),f=ae(),g=de(s,t),L=de(a,t),y=t=>{const r=n=>e.getCell(o,t,n),s=de(g,t),a=l(o,t)?n(i(r,t)):void 0;if(s===a||Z(s)&&Z(a)&&x(s,a)||ue(h,t,[s,a]),!K(v)){const e=de(L,t),n=l(o,t)?v(r,t):void 0;e!=n&&ue(f,t,n)}},p=e=>{r((()=>{re(h,(([,e],t)=>ue(g,t,e))),re(f,((e,t)=>ue(L,t,e)))}),h,f,g,L,e),oe(h),oe(f)};ce(g,y),e.hasTable(o)&&P(e.getRowIds(o),(e=>{te(g,e)||y(e)})),p(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>p())))},v,()=>ce(i,v),d,c]},Te=(e,t)=>n(e)==o?t=>t(e):null!=e?e:()=>null!=t?t:l,be=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},me=/^\d+$/,Ce=()=>{const e=[];let t=0;return[n=>{var o;return null!=(o=n?N(e):null)?o:l+t++},t=>{me.test(t)&&D(e)<1e3&&Q(e,t)}]},Ve=e=>{let t;const[n,o]=Ce(),r=ae();return[(o,s,a,i=[],d=(()=>[]))=>{null!=t||(t=e());const c=n(1);return ue(r,c,[o,s,a,i,d]),Ie(Le(s,null!=a?a:[l],Se),c),c},(e,n,...o)=>P(((e,t=[l])=>{const n=[],o=(e,l)=>l==D(t)?Q(n,e):null===t[l]?re(e,(e=>o(e,l+1))):P([t[l],null],(t=>o(de(e,t),l+1)));return o(e,0),n})(e,n),(e=>re(e,(e=>de(r,e)[0](t,...null!=n?n:[],...o))))),e=>U(de(r,e),(([,t,n])=>(Le(t,null!=n?n:[l],void 0,(t=>(se(t,e),ne(t)?1:0))),ue(r,e),o(e),n))),e=>U(de(r,e),(([e,,n=[],l,o])=>{const r=(...s)=>{var a,i;const d=D(s);d==D(n)?e(t,...s,...o(s)):K(n[d])?P(null!=(i=null==(a=l[d])?void 0:a.call(l,...s))?i:[],(e=>r(...s,e))):r(...s,n[d])};r()}))]},Ee=Object,xe=Ee.keys,ke=Ee.isFrozen,Je=Ee.freeze,Pe=e=>G(e,Ee)&&e.constructor==Ee,Ae=(e,t)=>!K(((e,t)=>U(e,(e=>e[t])))(e,t)),Me=(e,t)=>delete e[t],De=(e,t)=>A(Ee.entries(e),(([e,n])=>t(n,e))),Oe=e=>Pe(e)&&O(xe(e)),Fe=be((e=>{let t,n,o,r=100,s=ae(),a=ae(),i=1;const d=ae(),c=ae(),[u,v,h]=Ve((()=>F)),f=ae(),g=ae(),L=[],y=[],p=(t,n)=>{i=0,e.transaction((()=>{const[l,o]=de(f,n);re(l,((n,l)=>re(n,((n,o)=>re(n,((n,r)=>pe(e,l,o,r,n[t]))))))),re(o,((n,l)=>we(e,l,n[t])))})),i=1},w=e=>{ue(f,e),ue(g,e),v(c,[e])},S=(e,t)=>P(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),I=()=>S(L,D(L)-r),R=()=>U(t,(()=>{Q(L,t),I(),S(y),t=void 0,o=1})),T=()=>{t=z(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,r)=>{if(i){R();const e=ve(s,t,ae),a=ve(e,n,ae),i=ve(a,l,(()=>[r,void 0]));i[1]=o,i[0]===o&&ne(ue(a,l))&&ne(ue(e,n))&&ne(ue(s,t))&&T(),k()}})),m=e.addValueListener(null,((e,t,n,l)=>{if(i){R();const e=ve(a,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ne(ue(a,t))&&T(),k()}})),C=(e="")=>(K(t)&&(t=l+n++,ue(f,t,[s,a]),A(t,e),s=ae(),a=ae(),o=1),t),E=()=>{O(L)||(((e,...t)=>{e.unshift(...t)})(y,C()),p(0,t),t=z(L),o=1)},x=()=>{O(y)||(Q(L,t),t=N(y),p(1,t),o=1)},k=()=>{o&&(v(d),o=0)},J=e=>{const t=C(e);return k(),t},A=(e,t)=>(M(e)&&de(g,e)!==t&&(ue(g,e,t),v(c,[e])),F),M=e=>te(f,e),F={setSize:e=>(r=e,I(),F),addCheckpoint:J,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ce(g,e),hasCheckpoint:M,getCheckpoint:e=>de(g,e),goBackward:()=>(E(),k(),F),goForward:()=>(x(),k(),F),goTo:e=>{const n=V(L,e)?E:V(y,e)?x:null;for(;!K(n)&&e!=t;)n();return k(),F},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),F),clear:()=>(S(L),S(y),K(t)||w(t),t=void 0,n=0,J(),F),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return Je(F.clear())})),je=(e,t)=>e<t?-1:1,Qe=be((e=>{const t=ae(),n=ae(),[o,r,s,a,i,d,c,,u,v,h]=Re(e,ae,(e=>K(e)?l:Z(e)?A(e,C):C(e))),[f,g,L]=Ve((()=>p)),y=(t,n,l)=>{const o=i(t);re(l,((t,l)=>n(l,(n=>re(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},p={setIndexDefinition:(e,l,o,r,s,a=je)=>{const i=K(s)?void 0:([e],[t])=>s(e,t);return u(e,l,((l,o,s,u,v,h)=>{let f=0;const L=Se(),y=Se(),p=d(e);if(re(o,(([e,t],n)=>{const l=Se(e),o=Se(t);re(l,(e=>se(o,e)?se(l,e):0)),re(l,(e=>{Ie(L,e),U(de(p,e),(t=>{se(t,n),ne(t)&&(ue(p,e),f=1)}))})),re(o,(e=>{Ie(L,e),te(p,e)||(ue(p,e,Se()),f=1),Ie(de(p,e),n),K(r)||Ie(y,e)}))})),l(),ne(v)||(h?ce(p,(e=>Ie(y,e))):ce(s,(e=>U(de(u,e),(e=>Ie(y,e))))),re(y,(e=>{const t=(t,n)=>a(de(v,t),de(v,n),e),n=[...de(p,e)];k(n,t)||(ue(p,e,Se(J(n,t))),Ie(L,e))}))),(f||h)&&!K(i)){const t=[...p];k(t,i)||(c(e,ae(J(t,i))),f=1)}f&&g(t,[e]),re(L,(t=>g(n,[e,t])))}),Te(o),U(r,Te)),p},delIndexDefinition:e=>(v(e),p),getStore:o,getIndexIds:r,forEachIndex:e=>s(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:a,hasSlice:(e,t)=>te(d(e),t),getTableId:i,getSliceIds:e=>ie(d(e)),getSliceRowIds:(e,t)=>le(de(d(e),t)),addSliceIdsListener:(e,n)=>f(n,t,[e]),addSliceRowIdsListener:(e,t,l)=>f(l,n,[e,t]),delListener:e=>(L(e),p),destroy:h,getListenerStats:()=>({})};return Je(p)})),ze=ae([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["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=>$(...e),(e,t)=>$(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:$(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Ne=(e,t,n,l,o,r=!1)=>{if(ne(n))return;const[s,a,i,d]=o;return r||(r=K(e)),re(l,(([n,l])=>{r||(e=K(n)?null==a?void 0:a(e,l,t++):K(l)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,l,n,t),r||(r=K(e)))})),r?s(le(n),ee(n)):e},We=be((e=>{const t=ae(),[n,o,r,s,a,i,d,,c,u,v]=Re(e,_,(e=>isNaN(e)||K(e)||!0===e||!1===e||e===l?void 0:1*e)),[h,f,g]=Ve((()=>L)),L={setMetricDefinition:(e,n,l,o,r,s,a)=>{var u;const v=Y(l)?[l,r,s,a]:null!=(u=de(ze,l))?u:de(ze,"sum");return c(e,n,((n,l,o,r,s,a)=>{const c=i(e),u=ee(r);a||(a=K(c)),n();let h=Ne(c,u,r,l,v,a);q(h)||(h=void 0),h!=c&&(d(e,h),f(t,[e],h,c))}),Te(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:n,getMetricIds:o,forEachMetric:r,hasMetric:s,getTableId:a,getMetric:i,addMetricListener:(e,n)=>h(n,t,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return Je(L)}));var Be=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{a(n.next(e))}catch(e){o(e)}},s=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,s);a((n=n.apply(e,t)).next())}));const He=(e,t,n,o,r)=>{let s,a,i=0;const d={load:(...n)=>Be(void 0,[...n],(function*(n={},o={}){if(2!=i){i=1;const r=yield t();K(r)||r==l?e.transaction((()=>e.setTables(n).setValues(o))):e.setJson(r),i=0}return d})),startAutoLoad:(...e)=>Be(void 0,[...e],(function*(e={},t={}){return d.stopAutoLoad(),yield d.load(e,t),o(d.load),d})),stopAutoLoad:()=>(r(),d),save:()=>Be(void 0,null,(function*(){return 1!=i&&(i=2,yield n(e.getJson()),i=0),d})),startAutoSave:()=>Be(void 0,null,(function*(){return yield d.stopAutoSave().save(),s=e.addTablesListener(d.save),a=e.addValuesListener(d.save),d})),stopAutoSave:()=>(U(s,e.delListener),U(a,e.delListener),d),getStore:()=>e,destroy:()=>d.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Je(d)};var $e=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{a(n.next(e))}catch(e){o(e)}},s=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,s);a((n=n.apply(e,t)).next())}));const qe="storage",Ge=globalThis.window,Ke=(e,t,n)=>{let l;return He(e,(()=>$e(void 0,null,(function*(){return n.getItem(t)}))),(e=>$e(void 0,null,(function*(){return n.setItem(t,e)}))),(e=>{l=l=>{l.storageArea===n&&l.key===t&&e()},Ge.addEventListener(qe,l)}),(()=>{Ge.removeEventListener(qe,l),l=void 0}))},Ue=(e,t)=>Ke(e,t,localStorage),Xe=(e,t)=>Ke(e,t,sessionStorage);var Ye=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{a(n.next(e))}catch(e){o(e)}},s=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,s);a((n=n.apply(e,t)).next())}));const Ze=(n,l)=>{let o;return He(n,(()=>Ye(void 0,null,(function*(){try{return yield t.readFile(l,c)}catch(e){}}))),(e=>Ye(void 0,null,(function*(){try{yield t.writeFile(l,e,c)}catch(e){}}))),(t=>{o=e(l,t)}),(()=>{null==o||o.close(),o=void 0}))};var _e=(e,t,n)=>new Promise(((l,o)=>{var r=e=>{try{a(n.next(e))}catch(e){o(e)}},s=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,s);a((n=n.apply(e,t)).next())}));const et=e=>e.headers.get("ETag"),tt=(e,t,n,l)=>{let o,r;return He(e,(()=>_e(void 0,null,(function*(){const e=yield fetch(t);return r=et(e),e.text()}))),(e=>_e(void 0,null,(function*(){return yield fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{o=setInterval((()=>_e(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),l=et(n);K(r)||K(l)||l==r||(r=l,e())}))),1e3*l)}),(()=>{U(o,clearInterval),o=void 0}))};var nt=Object.getOwnPropertySymbols,lt=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable;const rt=be((e=>{const t=e.createStore,[n,o,r,s,a,,,i,,d,c,f,L]=Re(e,(()=>!0),_),y=t(),T=t(),b=ae(),m=(e,t,...n)=>P(n,(n=>Ie(ve(ve(b,t,ae),e,Se),n))),C=e=>{U(de(b,e),(e=>{ce(e,((e,t)=>re(t,(t=>e.delListener(t))))),oe(e)})),P([T,y],(t=>t.delTable(e)))},V=(e,t,n)=>m(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(t,n,o)=>{i(t,n),C(t);const r=[],s=[[null,[n,null,null,[],ae()]]],a=[],d=[],c=[];o({select:(e,t)=>{const n=Y(e)?[D(r)+l,e]:[K(t)?e:t,n=>n(e,t)];return Q(r,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=K(n)||Y(t)?null:t,o=K(l)?t:n,r=[e,[e,l,Y(o)?o:e=>e(o),[],ae()]];return Q(s,r),{as:e=>r[0]=e}},where:(e,t,n)=>Q(a,Y(e)?e:K(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var r;const s=[e,[e,Y(t)?[t,n,l,o]:null!=(r=de(ze,t))?r:[(e,t)=>t]]];return Q(d,s),{as:e=>s[0]=e}},having:(e,t)=>Q(c,Y(e)?e:n=>n(e)===t)});const u=ae(r);if(ne(u))return x;const v=ae(s);ce(v,((e,[,t])=>U(de(v,t),(({3:t})=>K(e)?0:Q(t,e)))));const h=ae(d);let g=y;if(ne(h)&&O(c))g=T;else{V(t,g,T);const e=ae();ce(h,((t,[n,l])=>Ie(ve(e,n,Se),[t,l])));const n=Se();ce(u,(t=>te(e,t)?0:Ie(n,t)));const l=ae(),o=(n,l,o,r)=>U(n,(([s,a,i,d])=>{ce(l,((t,[n])=>{const l=ve(s,t,ae),a=de(l,o),i=r?void 0:n;if(a!==i){const n=Se([[a,i]]),r=ee(l);ue(l,o,i),re(de(e,t),(([e,t])=>{const o=Ne(d[e],r,l,n,t);d[e]=K(ye(o))?null:o}))}})),ne(a)||!E(c,(e=>e((e=>d[e]))))?T.delRow(t,i):K(i)?n[2]=T.addRow(t,d):T.setRow(t,i,d)}));m(g,t,g.addRowListener(t,null,((r,s,a,i)=>{const d=[],c=[],u=ae(),v=g.hasRow(t,a);let h=!v;re(n,(e=>{const[n,l,o]=i(t,a,e);Q(d,l),Q(c,o),h||(h=n)})),ce(e,(e=>{const[n,,l]=i(t,a,e);(h||n)&&ue(u,e,[l])})),h&&o(Le(l,d,void 0,(([,e])=>(se(e,a),ne(e)))),u,a,1),v&&o(Le(l,c,(()=>{const e={};return re(n,(n=>e[n]=g.getCell(t,a,n))),[ae(),Se(),void 0,e]}),(([,e])=>{Ie(e,a)})),u,a)})))}V(t,e,g);const p=(l,o,r,s)=>{const i=t=>e.getCell(o,r,t);P(s,(n=>{var o;const[r,,s,a,d]=de(v,n),c=null==s?void 0:s(i,l),[u,h]=null!=(o=de(d,l))?o:[];c!=u&&(K(h)||L(t,h),ue(d,l,K(c)?null:[c,...f(t,1,e.addRowListener(r,c,(()=>p(l,r,c,a))))]))})),(l=>{const o=(t,o)=>{var r,s,a;return e.getCell(...K(o)?[n,l,t]:t===n?[n,l,o]:[null==(r=de(v,t))?void 0:r[0],null==(a=de(null==(s=de(v,t))?void 0:s[4],l))?void 0:a[0],o])};g.transaction((()=>E(a,(e=>e(o)))?ce(u,((e,n)=>pe(g,t,l,e,n(o,l)))):g.delRow(t,l)))})(l)},{3:w}=de(v,null);return g.transaction((()=>f(t,1,e.addRowListener(n,null,((l,o,r)=>{e.hasRow(n,r)?p(r,n,r,w):(g.delRow(t,r),re(v,(({4:e})=>U(de(e,r),(([,n])=>{L(t,n),ue(e,r)})))))}))))),x},delQueryDefinition:e=>(C(e),d(e),x),getStore:n,getQueryIds:o,forEachQuery:r,hasQuery:s,getTableId:a,delListener:e=>(T.delListener(e),x),destroy:c,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)lt.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&nt)for(var l of nt(e))t.indexOf(l)<0&&ot.call(e,l)&&(n[l]=e[l]);return n})(T.getListenerStats(),["tables","tableIds","transaction"])};return De({[g]:[1,1],[w]:[0,1],[S]:[0,5],[p]:[1,2],[R]:[0,2],[I]:[1,3]},(([e,t],n)=>{P(e?["get","has","forEach"]:["get"],(e=>x[e+v+n]=(...t)=>T[e+n](...t))),x[h+v+n+u]=(...e)=>T[h+n+u](...j(e,0,t),((n,...l)=>e[t](x,...l)))})),Je(x)})),st=be((e=>{const t=ae(),n=ae(),o=ae(),r=ae(),[s,a,i,d,c,u,,,v,h,f]=Re(e,(()=>[ae(),ae(),ae(),ae()]),(e=>K(e)?void 0:e+l)),[g,L,y]=Ve((()=>I)),p=(e,t,n)=>U(u(e),(([l,,o])=>{if(!te(o,t)){const r=Se();if(c(e)!=S(e))Ie(r,t);else{let e=t;for(;!K(e)&&!te(r,e);)Ie(r,e),e=de(l,e)}if(n)return r;ue(o,t,r)}return de(o,t)})),w=(e,t)=>U(u(e),(([,,e])=>ue(e,t))),S=e=>de(t,e),I={setRelationshipDefinition:(e,l,s,a)=>(ue(t,e,s),v(e,l,((t,l)=>{const s=Se(),a=Se(),i=Se(),[d,c]=u(e);re(l,(([t,n],l)=>{K(t)||(Ie(a,t),U(de(c,t),(e=>{se(e,l),ne(e)&&ue(c,t)}))),K(n)||(Ie(a,n),te(c,n)||ue(c,n,Se()),Ie(de(c,n),l)),Ie(s,l),ue(d,l,n),ce(de(r,e),(t=>{te(p(e,t),l)&&Ie(i,t)}))})),t(),re(s,(t=>L(n,[e,t]))),re(a,(t=>L(o,[e,t]))),re(i,(t=>{w(e,t),L(r,[e,t])}))}),Te(a)),I),delRelationshipDefinition:e=>(ue(t,e),h(e),I),getStore:s,getRelationshipIds:a,forEachRelationship:t=>i((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:S,getRemoteRowId:(e,t)=>{var n;return de(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return le(de(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>K(u(e))?[t]:le(p(e,t,!0)),addRemoteRowIdListener:(e,t,l)=>g(l,n,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),g(n,r,[e,t])),delListener:e=>(w(...y(e)),I),destroy:f,getListenerStats:()=>({})};return Je(I)})),at=e=>[e,e],it=()=>[ae(),ae()],dt=(e,t,n,l=ue)=>(De(t,((t,l)=>n(e,l,t))),ce(e,(n=>Ae(t,n)?0:l(e,n))),e),ct=(e,t,n)=>K(e)||!Pe(e)||Oe(e)||ke(e)?(null==n||n(),!1):(De(e,((n,l)=>{t(n,l)||Me(e,l)})),!Oe(e)),ut=(e,t,n)=>ue(e,t,de(e,t)==-n?void 0:n),vt=()=>{let e,t,n,l,o=0;const r=ae(),a=ae(),c=ae(),v=ae(),f=ae(),S=ae(),E=ae(),k=ae(),M=ae(),D=ae(),O=ae(),F=ae(),z=Se(),N=ae(),H=ae(),$=ae(),q=it(),G=it(),Z=it(),_=it(),ee=it(),le=it(),Le=it(),Re=it(),Te=it(),be=it(),me=it(),Ee=it(),xe=it(),ke=ae(),Pe=it(),[Fe,Qe,ze,Ne]=Ve((()=>nn)),We=e=>{if(!ct(e,((e,t)=>V([i,d],t))))return!1;const t=e[i];return!(!X(t)&&t!=s||(ye(e[d])!=t&&Me(e,d),0))},Be=(t,n)=>(!e||te(M,n)||mt(n))&&ct(t,((e,t)=>He(n,t,e)),(()=>mt(n))),He=(e,t,n,l)=>ct(l?n:Ke(n,e,t),((l,o)=>U($e(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>mt(e,t))),$e=(t,n,l,o)=>e?U(de(de(M,t),l),(e=>ye(o)!=e[i]?mt(t,n,l,o,e[d]):o),(()=>mt(t,n,l,o))):K(ye(o))?mt(t,n,l,o):o,qe=(e,t)=>ct(t?e:Ue(e),((t,n)=>U(Ge(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Ct())),Ge=(e,n)=>t?U(de(O,e),(t=>ye(n)!=t[i]?Ct(e,n,t[d]):n),(()=>Ct(e,n))):K(ye(n))?Ct(e,n):n,Ke=(e,t,n)=>(U(de(D,t),(([l,o])=>{re(l,((t,n)=>{Ae(e,n)||(e[n]=t)})),re(o,(l=>{Ae(e,l)||mt(t,n,l)}))})),e),Ue=e=>(t&&(re(F,((t,n)=>{Ae(e,n)||(e[n]=t)})),re(z,(t=>{Ae(e,t)||Ct(t)}))),e),Xe=e=>dt(M,e,((e,t,n)=>{const l=ae(),o=Se();dt(ve(M,t,ae),n,((e,t,n)=>{ue(e,t,n),U(n[d],(e=>ue(l,t,e)),(()=>Ie(o,t)))})),ue(D,t,[l,o])}),((e,t)=>{ue(M,t),ue(D,t)})),Ye=e=>dt(O,e,((e,t,n)=>{ue(O,t,n),U(n[d],(e=>ue(F,t,e)),(()=>Ie(z,t)))}),((e,t)=>{ue(O,t),ue(F,t),se(z,t)})),Ze=e=>Oe(e)?Ut():Ht(e),_e=e=>dt(H,e,((e,t,n)=>et(t,n)),((e,t)=>gt(t))),et=(e,t)=>dt(ve(H,e,(()=>(wt(e,1),ae()))),t,((t,n,l)=>tt(e,t,n,l)),((t,n)=>Lt(e,t,n))),tt=(e,t,n,l,o)=>dt(ve(t,n,(()=>(St(e,n,1),ae()))),l,((t,l,o)=>nt(e,n,t,l,o)),((l,r)=>yt(e,t,n,l,r,o))),nt=(e,t,n,l,o)=>{te(n,l)||It(e,t,l,1);const r=de(n,l);o!==r&&(Rt(e,t,l,r,o),ue(n,l,o))},lt=(e,t,n,l,o)=>U(de(t,n),(t=>nt(e,n,t,l,o)),(()=>tt(e,t,n,Ke({[l]:o},e,n)))),ot=e=>Oe(e)?Xt():$t(e),rt=e=>dt($,e,((e,t,n)=>st(t,n)),((e,t)=>pt(t))),st=(e,t)=>{te($,e)||Tt(e,1);const n=de($,e);t!==n&&(bt(e,n,t),ue($,e,t))},ht=(e,t)=>{const[n]=ve(N,e,Ce),l=n(t);return te(de(H,e),l)?ht(e,t):l},ft=e=>{var t;return null!=(t=de(H,e))?t:et(e,{})},gt=e=>et(e,{}),Lt=(e,t,n)=>{const[,l]=ve(N,e,Ce);l(n),tt(e,t,n,{},!0)},yt=(e,t,n,l,o,r)=>{var s;const a=de(null==(s=de(D,e))?void 0:s[0],o);if(!K(a)&&!r)return nt(e,n,l,o,a);const i=t=>{Rt(e,n,t,de(l,t)),It(e,n,t,-1),ue(l,t)};K(a)?i(o):ce(l,i),ne(l)&&(St(e,n,-1),ne(ue(t,n))&&(wt(e,-1),ue(H,e),ue(N,e)))},pt=e=>{const t=de(F,e);if(!K(t))return st(e,t);bt(e,de($,e)),Tt(e,-1),ue($,e)},wt=(e,t)=>ut(r,e,t),St=(e,t,n)=>ut(ve(a,e,ae),t,n),It=(e,t,n,l)=>ut(ve(ve(c,e,ae),t,ae),n,l),Rt=(e,t,n,l,o)=>ve(ve(ve(v,e,ae),t,ae),n,(()=>[l,0]))[1]=o,Tt=(e,t)=>ut(f,e,t),bt=(e,t,n)=>ve(S,e,(()=>[t,0]))[1]=n,mt=(e,t,n,l,o)=>(Q(ve(ve(ve(E,e,ae),t,ae),n,(()=>[])),l),o),Ct=(e,t,n)=>(Q(ve(k,e,(()=>[])),t),n),Vt=(e,t,n)=>U(de(de(de(v,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...at(zt(e,t,n))])),Et=e=>U(de(S,e),(([e,t])=>[!0,e,t]),(()=>[!1,...at(Bt(e))])),xt=e=>ne(E)||ne(Te[e])?0:re(e?fe(E,ge):E,((t,n)=>re(t,((t,l)=>re(t,((t,o)=>Qe(Te[e],[n,l,o],t))))))),kt=e=>ne(k)||ne(be[e])?0:re(e?fe(k):k,((t,n)=>Qe(be[e],[n],t))),Jt=(e,t,n)=>{if(!ne(t))return Qe(e,n),1},Pt=e=>{const t=ne(ee[e]),n=ne(Le[e])&&ne(_[e])&&t&&ne(G[e]),l=ne(Re[e])&&ne(le[e])&&ne(Z[e])&&ne(q[e]);if(!n||!l){const o=e?[fe(r),ge(a),fe(c,ge),fe(v,ge)]:[r,a,c,v];if(!n){re(o[2],((t,n)=>re(t,((t,l)=>Jt(Le[e],t,[n,l])))));const n=Se();re(o[1],((l,o)=>{Jt(_[e],l,[o])&&!t&&(Qe(ee[e],[o,null]),Ie(n,o))})),t||re(o[3],((t,l)=>{if(!te(n,l)){const n=Se();re(t,(e=>re(e,(([t,l],o)=>l!==t?Ie(n,o):se(e,o))))),re(n,(t=>Qe(ee[e],[l,t])))}})),Jt(G[e],o[0])}if(!l){let t;re(o[3],((n,l)=>{let o;re(n,((n,r)=>{let s;re(n,(([n,a],i)=>{a!==n&&(Qe(Re[e],[l,r,i],a,n,Vt),t=o=s=1)})),s&&Qe(le[e],[l,r],Vt)})),o&&Qe(Z[e],[l],Vt)})),t&&Qe(q[e],void 0,Vt)}}},At=e=>{const t=ne(Ee[e]),n=ne(xe[e])&&ne(me[e]);if(!t||!n){const l=e?[fe(f),fe(S)]:[f,S];if(t||Jt(Ee[e],l[0]),!n){let t;re(l[1],(([n,l],o)=>{l!==n&&(Qe(xe[e],[o],l,n,Et),t=1)})),t&&Qe(me[e],void 0,Et)}}},Mt=(e,...t)=>(_t((()=>e(...A(t,C)))),nn),Dt=()=>he(H,(e=>he(e,he))),Ot=()=>ie(H),Ft=e=>ie(de(H,C(e))),jt=(e,t,n,l=0,o)=>{return A(j(J((r=de(H,C(e)),s=(e,n)=>[K(t)?n:de(e,C(t)),n],A([...null!=(a=null==r?void 0:r.entries())?a:[]],(([e,t])=>s(t,e)))),(([e],[t])=>je(e,t)*(n?-1:1))),l,K(o)?o:l+o),(([,e])=>e));var r,s,a},Qt=(e,t)=>ie(de(de(H,C(e)),C(t))),zt=(e,t,n)=>de(de(de(H,C(e)),C(t)),C(n)),Nt=()=>he($),Wt=()=>ie($),Bt=e=>de($,C(e)),Ht=e=>Mt((()=>(e=>ct(e,Be,mt))(e)?_e(e):0)),$t=e=>Mt((()=>qe(e)?rt(e):0)),qt=e=>{try{Ze(B(e))}catch(e){}return nn},Gt=t=>Mt((()=>{if((e=ct(t,(e=>ct(e,We))))&&(Xe(t),!ne(H))){const e=Dt();Ut(),Ht(e)}})),Kt=e=>Mt((()=>{if(t=(e=>ct(e,We))(e)){const n=Nt();Zt(),Xt(),t=!0,Ye(e),$t(n)}})),Ut=()=>Mt((()=>_e({}))),Xt=()=>Mt((()=>rt({}))),Yt=()=>Mt((()=>{Xe({}),e=!1})),Zt=()=>Mt((()=>{Ye({}),t=!1})),_t=(e,t)=>{if(-1!=o){en();const n=e();return tn(t),n}},en=()=>(-1!=o&&o++,1==o&&Qe(ke,void 0,!1,!1),nn),tn=e=>(o>0&&(o--,0==o&&(n=!ne(v),l=!ne(S),o=1,xt(1),n&&Pt(1),kt(1),l&&At(1),(null==e?void 0:e(he(v,(e=>he(e,(e=>he(e,(e=>[...e]),(([e,t])=>e===t))),Oe)),Oe),he(E,(e=>he(e,he))),he(S,(e=>[...e]),(([e,t])=>e===t)),he(k)))&&(re(v,((e,t)=>re(e,((e,n)=>re(e,(([e],l)=>pe(nn,t,n,l,e))))))),re(S,(([e],t)=>we(nn,t,e))),n=l=!1),Qe(Pe[0],void 0,n,l),o=-1,xt(0),n&&Pt(0),kt(0),l&&At(0),Qe(Pe[1],void 0,n,l),o=0,P([r,a,c,v,E,f,S,k],oe))),nn),nn={getTables:Dt,getTableIds:Ot,getTable:e=>he(de(H,C(e)),he),getRowIds:Ft,getSortedRowIds:jt,getRow:(e,t)=>he(de(de(H,C(e)),C(t))),getCellIds:Qt,getCell:zt,getValues:Nt,getValueIds:Wt,getValue:Bt,hasTables:()=>!ne(H),hasTable:e=>te(H,C(e)),hasRow:(e,t)=>te(de(H,C(e)),C(t)),hasCell:(e,t,n)=>te(de(de(H,C(e)),C(t)),C(n)),hasValues:()=>!ne($),hasValue:e=>te($,C(e)),getTablesJson:()=>W(H),getValuesJson:()=>W($),getJson:()=>W([H,$]),getTablesSchemaJson:()=>W(M),getValuesSchemaJson:()=>W(O),getSchemaJson:()=>W([M,O]),setTables:Ht,setTable:(e,t)=>Mt((e=>Be(t,e)?et(e,t):0),e),setRow:(e,t,n)=>Mt(((e,t)=>He(e,t,n)?tt(e,ft(e),t,n):0),e,t),addRow:(e,t,n=!0)=>_t((()=>{let l;return He(e,l,t)&&(e=C(e),tt(e,ft(e),l=ht(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Mt(((e,t)=>{if(He(e,t,n,1)){const l=ft(e);De(n,((n,o)=>lt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Mt(((e,t,n)=>U($e(e,t,n,Y(l)?l(zt(e,t,n)):l),(l=>lt(e,ft(e),t,n,l)))),e,t,n),setValues:$t,setPartialValues:e=>Mt((()=>qe(e,1)?De(e,((e,t)=>st(t,e))):0)),setValue:(e,t)=>Mt((e=>U(Ge(e,Y(t)?t(Bt(e)):t),(t=>st(e,t)))),e),setTablesJson:qt,setValuesJson:e=>{try{ot(B(e))}catch(e){}return nn},setJson:e=>{try{const[t,n]=B(e);Ze(t),ot(n)}catch(t){qt(e)}return nn},setTablesSchema:Gt,setValuesSchema:Kt,setSchema:(e,t)=>Mt((()=>{Gt(e),Kt(t)})),delTables:Ut,delTable:e=>Mt((e=>te(H,e)?gt(e):0),e),delRow:(e,t)=>Mt(((e,t)=>U(de(H,e),(n=>te(n,t)?Lt(e,n,t):0))),e,t),delCell:(e,t,n,l)=>Mt(((e,t,n)=>U(de(H,e),(o=>U(de(o,t),(r=>te(r,n)?yt(e,o,t,r,n,l):0))))),e,t,n),delValues:Xt,delValue:e=>Mt((e=>te($,e)?pt(e):0),e),delTablesSchema:Yt,delValuesSchema:Zt,delSchema:()=>Mt((()=>{Yt(),Zt()})),transaction:_t,startTransaction:en,finishTransaction:tn,forEachTable:e=>re(H,((t,n)=>e(n,(e=>re(t,((t,n)=>e(n,(e=>ce(t,e))))))))),forEachRow:(e,t)=>re(de(H,C(e)),((e,n)=>t(n,(t=>ce(e,t))))),forEachCell:(e,t,n)=>ce(de(de(H,C(e)),C(t)),n),forEachValue:e=>ce($,e),addSortedRowIdsListener:(e,t,n,l,o,r,s)=>{let a=jt(e,t,n,l,o);return Fe((()=>{const s=jt(e,t,n,l,o);x(s,a)||(a=s,r(nn,e,t,n,l,o,a))}),ee[s?1:0],[e,t],[Ot])},addStartTransactionListener:e=>Fe(e,ke),addWillFinishTransactionListener:e=>Fe(e,Pe[0]),addDidFinishTransactionListener:e=>Fe(e,Pe[1]),callListener:e=>(Ne(e),nn),delListener:e=>(ze(e),nn),getListenerStats:()=>({}),createStore:vt};return De({[L]:[0,q],[y]:[0,G],[g]:[1,Z,[Ot]],[w]:[1,_,[Ot]],[p]:[2,le,[Ot,Ft]],[R]:[2,Le,[Ot,Ft]],[I]:[3,Re,[Ot,Ft,Qt],e=>at(zt(...e))],InvalidCell:[3,Te],[b]:[0,me],[m]:[0,Ee],[T]:[1,xe,[Wt],e=>at(Bt(e[0]))],InvalidValue:[1,be]},(([e,t,n,l],o)=>{nn[h+o+u]=(...o)=>Fe(o[e],t[o[e+1]?1:0],e>0?j(o,0,e):void 0,n,l)})),Je(nn)};export{Fe as createCheckpoints,He as createCustomPersister,Ze as createFilePersister,Qe as createIndexes,Ue as createLocalPersister,We as createMetrics,rt as createQueries,st as createRelationships,tt as createRemotePersister,Xe as createSessionPersister,vt as createStore,je as defaultSorter};
|
|
1
|
+
import{watch as e,promises as t}from"fs";const n=e=>typeof e,l="",o=n(l),s=n(!0),r=n(0),a=n(n),i="type",d="default",c="utf8",u="Listener",v="Result",h="add",f="Ids",g="Table",L=g+"s",y=g+f,p="Row",w=p+f,S="Sorted"+p+f,I="Cell",T=I+f,R="Value",b=R+"s",m=R+f,C=e=>l+e,V=(e,t)=>e.includes(t),E=(e,t)=>e.every(t),x=(e,t)=>D(e)===D(t)&&E(e,((e,n)=>t[n]===e)),k=(e,t)=>E(e,((n,l)=>0==l||t(e[l-1],n)<=0)),J=(e,t)=>e.sort(t),P=(e,t)=>e.forEach(t),A=(e,t)=>e.map(t),M=e=>F(e,((e,t)=>e+t),0),D=e=>e.length,O=e=>0==D(e),F=(e,t,n)=>e.reduce(t,n),j=(e,t,n)=>e.slice(t,n),Q=(e,...t)=>e.push(...t),z=e=>e.pop(),N=e=>e.shift(),W=e=>JSON.stringify(e,((e,t)=>G(t,Map)?F([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),B=JSON.parse,H=Math.max,$=Math.min,q=isFinite,G=(e,t)=>e instanceof t,K=e=>null==e,U=(e,t,n)=>K(e)?null==n?void 0:n():t(e),X=e=>e==o||e==s,Y=e=>n(e)==a,Z=e=>Array.isArray(e),_=()=>{},ee=e=>e.size,te=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ne=e=>K(e)||0==ee(e),le=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},oe=e=>e.clear(),se=(e,t)=>null==e?void 0:e.forEach(t),re=(e,t)=>null==e?void 0:e.delete(t),ae=e=>new Map(e),ie=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},de=(e,t)=>null==e?void 0:e.get(t),ce=(e,t)=>se(e,((e,n)=>t(n,e))),ue=(e,t,n)=>K(n)?(re(e,t),e):null==e?void 0:e.set(t,n),ve=(e,t,n)=>(te(e,t)||ue(e,t,n()),de(e,t)),he=(e,t,n)=>{const l={},o=null!=t?t:e=>e;return se(e,((e,t)=>U(o(e),(e=>(null==n?void 0:n(e))?0:l[t]=e)))),l},fe=(e,t)=>{const n=ae(),l=null!=t?t:e=>e;return se(e,((e,t)=>n.set(t,l(e)))),n},ge=e=>fe(e,fe),Le=(e,t,n,l,o=0)=>U((n?ve:de)(e,t[o],o>D(t)-2?n:ae),(s=>{if(o>D(t)-2)return(null==l?void 0:l(s))&&ue(e,t[o]),s;const r=Le(s,t,n,l,o+1);return ne(s)&&ue(e,t[o]),r})),ye=e=>{const t=n(e);return X(t)||t==r&&q(e)?t:void 0},pe=(e,t,n,l,o)=>K(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),we=(e,t,n)=>K(n)?e.delValue(t):e.setValue(t,n),Se=e=>new Set(Z(e)||K(e)?e:[e]),Ie=(e,t)=>null==e?void 0:e.add(t),Te=(e,t,n)=>{const l=e.hasRow,o=ae(),s=ae(),r=ae(),a=ae(),i=ae(),d=(t,n,...l)=>{const o=ve(i,t,Se);return P(l,(t=>Ie(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>U(de(i,t),(l=>{P(O(n)?le(l):n,(t=>{e.delListener(t),re(l,t)})),ne(l)&&ue(i,t)})),u=(e,n)=>{ue(o,e,n),te(s,e)||(ue(s,e,t()),ue(r,e,ae()),ue(a,e,ae()))},v=e=>{ue(o,e),ue(s,e),ue(r,e),ue(a,e),c(e)};return[()=>e,()=>ie(o),e=>ce(s,e),e=>te(s,e),e=>de(o,e),e=>de(s,e),(e,t)=>ue(s,e,t),u,(t,o,s,i,v)=>{u(t,o);const h=ae(),f=ae(),g=de(r,t),L=de(a,t),y=t=>{const s=n=>e.getCell(o,t,n),r=de(g,t),a=l(o,t)?n(i(s,t)):void 0;if(r===a||Z(r)&&Z(a)&&x(r,a)||ue(h,t,[r,a]),!K(v)){const e=de(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ue(f,t,n)}},p=e=>{s((()=>{se(h,(([,e],t)=>ue(g,t,e))),se(f,((e,t)=>ue(L,t,e)))}),h,f,g,L,e),oe(h),oe(f)};ce(g,y),e.hasTable(o)&&P(e.getRowIds(o),(e=>{te(g,e)||y(e)})),p(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>p())))},v,()=>ce(i,v),d,c]},Re=(e,t)=>n(e)==o?t=>t(e):null!=e?e:()=>null!=t?t:l,be=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},me=/^\d+$/,Ce=()=>{const e=[];let t=0;return[n=>{var o;return null!=(o=n?N(e):null)?o:l+t++},t=>{me.test(t)&&D(e)<1e3&&Q(e,t)}]},Ve=e=>{let t;const[n,o]=Ce(),s=ae();return[(o,r,a,i=[],d=(()=>[]))=>{null!=t||(t=e());const c=n(1);return ue(s,c,[o,r,a,i,d]),Ie(Le(r,null!=a?a:[l],Se),c),c},(e,n,...o)=>P(((e,t=[l])=>{const n=[],o=(e,l)=>l==D(t)?Q(n,e):null===t[l]?se(e,(e=>o(e,l+1))):P([t[l],null],(t=>o(de(e,t),l+1)));return o(e,0),n})(e,n),(e=>se(e,(e=>de(s,e)[0](t,...null!=n?n:[],...o))))),e=>U(de(s,e),(([,t,n])=>(Le(t,null!=n?n:[l],void 0,(t=>(re(t,e),ne(t)?1:0))),ue(s,e),o(e),n))),e=>U(de(s,e),(([e,,n=[],l,o])=>{const s=(...r)=>{var a,i;const d=D(r);d==D(n)?e(t,...r,...o(r)):K(n[d])?P(null!=(i=null==(a=l[d])?void 0:a.call(l,...r))?i:[],(e=>s(...r,e))):s(...r,n[d])};s()}))]},Ee=Object,xe=Ee.keys,ke=Ee.isFrozen,Je=Ee.freeze,Pe=e=>G(e,Ee)&&e.constructor==Ee,Ae=(e,t)=>!K(((e,t)=>U(e,(e=>e[t])))(e,t)),Me=(e,t)=>delete e[t],De=(e,t)=>A(Ee.entries(e),(([e,n])=>t(n,e))),Oe=e=>Pe(e)&&O(xe(e)),Fe=be((e=>{let t,n,o,s=100,r=ae(),a=ae(),i=1;const d=ae(),c=ae(),[u,v,h]=Ve((()=>F)),f=ae(),g=ae(),L=[],y=[],p=(t,n)=>{i=0,e.transaction((()=>{const[l,o]=de(f,n);se(l,((n,l)=>se(n,((n,o)=>se(n,((n,s)=>pe(e,l,o,s,n[t]))))))),se(o,((n,l)=>we(e,l,n[t])))})),i=1},w=e=>{ue(f,e),ue(g,e),v(c,[e])},S=(e,t)=>P(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),I=()=>S(L,D(L)-s),T=()=>U(t,(()=>{Q(L,t),I(),S(y),t=void 0,o=1})),R=()=>{t=z(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(i){T();const e=ve(r,t,ae),a=ve(e,n,ae),i=ve(a,l,(()=>[s,void 0]));i[1]=o,i[0]===o&&ne(ue(a,l))&&ne(ue(e,n))&&ne(ue(r,t))&&R(),k()}})),m=e.addValueListener(null,((e,t,n,l)=>{if(i){T();const e=ve(a,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ne(ue(a,t))&&R(),k()}})),C=(e="")=>(K(t)&&(t=l+n++,ue(f,t,[r,a]),A(t,e),r=ae(),a=ae(),o=1),t),E=()=>{O(L)||(((e,...t)=>{e.unshift(...t)})(y,C()),p(0,t),t=z(L),o=1)},x=()=>{O(y)||(Q(L,t),t=N(y),p(1,t),o=1)},k=()=>{o&&(v(d),o=0)},J=e=>{const t=C(e);return k(),t},A=(e,t)=>(M(e)&&de(g,e)!==t&&(ue(g,e,t),v(c,[e])),F),M=e=>te(f,e),F={setSize:e=>(s=e,I(),F),addCheckpoint:J,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ce(g,e),hasCheckpoint:M,getCheckpoint:e=>de(g,e),goBackward:()=>(E(),k(),F),goForward:()=>(x(),k(),F),goTo:e=>{const n=V(L,e)?E:V(y,e)?x:null;for(;!K(n)&&e!=t;)n();return k(),F},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),F),clear:()=>(S(L),S(y),K(t)||w(t),t=void 0,n=0,J(),F),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return Je(F.clear())})),je=(e,t)=>e<t?-1:1,Qe=be((e=>{const t=ae(),n=ae(),[o,s,r,a,i,d,c,,u,v,h]=Te(e,ae,(e=>K(e)?l:Z(e)?A(e,C):C(e))),[f,g,L]=Ve((()=>p)),y=(t,n,l)=>{const o=i(t);se(l,((t,l)=>n(l,(n=>se(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},p={setIndexDefinition:(e,l,o,s,r,a=je)=>{const i=K(r)?void 0:([e],[t])=>r(e,t);return u(e,l,((l,o,r,u,v,h)=>{let f=0;const L=Se(),y=Se(),p=d(e);if(se(o,(([e,t],n)=>{const l=Se(e),o=Se(t);se(l,(e=>re(o,e)?re(l,e):0)),se(l,(e=>{Ie(L,e),U(de(p,e),(t=>{re(t,n),ne(t)&&(ue(p,e),f=1)}))})),se(o,(e=>{Ie(L,e),te(p,e)||(ue(p,e,Se()),f=1),Ie(de(p,e),n),K(s)||Ie(y,e)}))})),l(),ne(v)||(h?ce(p,(e=>Ie(y,e))):ce(r,(e=>U(de(u,e),(e=>Ie(y,e))))),se(y,(e=>{const t=(t,n)=>a(de(v,t),de(v,n),e),n=[...de(p,e)];k(n,t)||(ue(p,e,Se(J(n,t))),Ie(L,e))}))),(f||h)&&!K(i)){const t=[...p];k(t,i)||(c(e,ae(J(t,i))),f=1)}f&&g(t,[e]),se(L,(t=>g(n,[e,t])))}),Re(o),U(s,Re)),p},delIndexDefinition:e=>(v(e),p),getStore:o,getIndexIds:s,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:a,hasSlice:(e,t)=>te(d(e),t),getTableId:i,getSliceIds:e=>ie(d(e)),getSliceRowIds:(e,t)=>le(de(d(e),t)),addSliceIdsListener:(e,n)=>f(n,t,[e]),addSliceRowIdsListener:(e,t,l)=>f(l,n,[e,t]),delListener:e=>(L(e),p),destroy:h,getListenerStats:()=>({})};return Je(p)})),ze=ae([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["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=>$(...e),(e,t)=>$(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:$(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),Ne=(e,t,n,l,o,s=!1)=>{if(ne(n))return;const[r,a,i,d]=o;return s||(s=K(e)),se(l,(([n,l])=>{s||(e=K(n)?null==a?void 0:a(e,l,t++):K(l)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=K(e)))})),s?r(le(n),ee(n)):e},We=be((e=>{const t=ae(),[n,o,s,r,a,i,d,,c,u,v]=Te(e,_,(e=>isNaN(e)||K(e)||!0===e||!1===e||e===l?void 0:1*e)),[h,f,g]=Ve((()=>L)),L={setMetricDefinition:(e,n,l,o,s,r,a)=>{var u;const v=Y(l)?[l,s,r,a]:null!=(u=de(ze,l))?u:de(ze,"sum");return c(e,n,((n,l,o,s,r,a)=>{const c=i(e),u=ee(s);a||(a=K(c)),n();let h=Ne(c,u,s,l,v,a);q(h)||(h=void 0),h!=c&&(d(e,h),f(t,[e],h,c))}),Re(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:n,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:a,getMetric:i,addMetricListener:(e,n)=>h(n,t,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return Je(L)}));var Be=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{a(n.next(e))}catch(e){o(e)}},r=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);a((n=n.apply(e,t)).next())}));const He=(e,t,n,o,s)=>{let r,a,i=0;const d={load:(...n)=>Be(void 0,[...n],(function*(n={},o={}){if(2!=i){i=1;const s=yield t();K(s)||s==l?e.transaction((()=>e.setTables(n).setValues(o))):e.setJson(s),i=0}return d})),startAutoLoad:(...e)=>Be(void 0,[...e],(function*(e={},t={}){return d.stopAutoLoad(),yield d.load(e,t),o(d.load),d})),stopAutoLoad:()=>(s(),d),save:()=>Be(void 0,null,(function*(){return 1!=i&&(i=2,yield n(e.getJson()),i=0),d})),startAutoSave:()=>Be(void 0,null,(function*(){return yield d.stopAutoSave().save(),r=e.addTablesListener(d.save),a=e.addValuesListener(d.save),d})),stopAutoSave:()=>(U(r,e.delListener),U(a,e.delListener),d),getStore:()=>e,destroy:()=>d.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Je(d)};var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{a(n.next(e))}catch(e){o(e)}},r=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);a((n=n.apply(e,t)).next())}));const qe="storage",Ge=globalThis.window,Ke=(e,t,n)=>{let l;return He(e,(()=>$e(void 0,null,(function*(){return n.getItem(t)}))),(e=>$e(void 0,null,(function*(){return n.setItem(t,e)}))),(e=>{l=l=>{l.storageArea===n&&l.key===t&&e()},Ge.addEventListener(qe,l)}),(()=>{Ge.removeEventListener(qe,l),l=void 0}))},Ue=(e,t)=>Ke(e,t,localStorage),Xe=(e,t)=>Ke(e,t,sessionStorage);var Ye=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{a(n.next(e))}catch(e){o(e)}},r=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);a((n=n.apply(e,t)).next())}));const Ze=(n,l)=>{let o;return He(n,(()=>Ye(void 0,null,(function*(){try{return yield t.readFile(l,c)}catch(e){}}))),(e=>Ye(void 0,null,(function*(){try{yield t.writeFile(l,e,c)}catch(e){}}))),(t=>{o=e(l,t)}),(()=>{null==o||o.close(),o=void 0}))};var _e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{a(n.next(e))}catch(e){o(e)}},r=e=>{try{a(n.throw(e))}catch(e){o(e)}},a=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);a((n=n.apply(e,t)).next())}));const et=e=>e.headers.get("ETag"),tt=(e,t,n,l)=>{let o,s;return He(e,(()=>_e(void 0,null,(function*(){const e=yield fetch(t);return s=et(e),e.text()}))),(e=>_e(void 0,null,(function*(){return yield fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{o=setInterval((()=>_e(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),l=et(n);K(s)||K(l)||l==s||(s=l,e())}))),1e3*l)}),(()=>{U(o,clearInterval),o=void 0}))};var nt=Object.getOwnPropertySymbols,lt=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable;const st=be((e=>{const t=e.createStore,[n,o,s,r,a,,,i,,d,c,f,L]=Te(e,(()=>!0),_),y=t(),R=t(),b=ae(),m=(e,t,...n)=>P(n,(n=>Ie(ve(ve(b,t,ae),e,Se),n))),C=e=>{U(de(b,e),(e=>{ce(e,((e,t)=>se(t,(t=>e.delListener(t))))),oe(e)})),P([R,y],(t=>t.delTable(e)))},V=(e,t,n)=>m(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(t,n,o)=>{i(t,n),C(t);const s=[],r=[[null,[n,null,null,[],ae()]]],a=[],d=[],c=[];o({select:(e,t)=>{const n=Y(e)?[D(s)+l,e]:[K(t)?e:t,n=>n(e,t)];return Q(s,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=K(n)||Y(t)?null:t,o=K(l)?t:n,s=[e,[e,l,Y(o)?o:e=>e(o),[],ae()]];return Q(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>Q(a,Y(e)?e:K(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,Y(t)?[t,n,l,o]:null!=(s=de(ze,t))?s:[(e,t)=>t]]];return Q(d,r),{as:e=>r[0]=e}},having:(e,t)=>Q(c,Y(e)?e:n=>n(e)===t)});const u=ae(s);if(ne(u))return x;const v=ae(r);ce(v,((e,[,t])=>U(de(v,t),(({3:t})=>K(e)?0:Q(t,e)))));const h=ae(d);let g=y;if(ne(h)&&O(c))g=R;else{V(t,g,R);const e=ae();ce(h,((t,[n,l])=>Ie(ve(e,n,Se),[t,l])));const n=Se();ce(u,(t=>te(e,t)?0:Ie(n,t)));const l=ae(),o=(n,l,o,s)=>U(n,(([r,a,i,d])=>{ce(l,((t,[n])=>{const l=ve(r,t,ae),a=de(l,o),i=s?void 0:n;if(a!==i){const n=Se([[a,i]]),s=ee(l);ue(l,o,i),se(de(e,t),(([e,t])=>{const o=Ne(d[e],s,l,n,t);d[e]=K(ye(o))?null:o}))}})),ne(a)||!E(c,(e=>e((e=>d[e]))))?R.delRow(t,i):K(i)?n[2]=R.addRow(t,d):R.setRow(t,i,d)}));m(g,t,g.addRowListener(t,null,((s,r,a,i)=>{const d=[],c=[],u=ae(),v=g.hasRow(t,a);let h=!v;se(n,(e=>{const[n,l,o]=i(t,a,e);Q(d,l),Q(c,o),h||(h=n)})),ce(e,(e=>{const[n,,l]=i(t,a,e);(h||n)&&ue(u,e,[l])})),h&&o(Le(l,d,void 0,(([,e])=>(re(e,a),ne(e)))),u,a,1),v&&o(Le(l,c,(()=>{const e={};return se(n,(n=>e[n]=g.getCell(t,a,n))),[ae(),Se(),void 0,e]}),(([,e])=>{Ie(e,a)})),u,a)})))}V(t,e,g);const p=(l,o,s,r)=>{const i=t=>e.getCell(o,s,t);P(r,(n=>{var o;const[s,,r,a,d]=de(v,n),c=null==r?void 0:r(i,l),[u,h]=null!=(o=de(d,l))?o:[];c!=u&&(K(h)||L(t,h),ue(d,l,K(c)?null:[c,...f(t,1,e.addRowListener(s,c,(()=>p(l,s,c,a))))]))})),(l=>{const o=(t,o)=>{var s,r,a;return e.getCell(...K(o)?[n,l,t]:t===n?[n,l,o]:[null==(s=de(v,t))?void 0:s[0],null==(a=de(null==(r=de(v,t))?void 0:r[4],l))?void 0:a[0],o])};g.transaction((()=>E(a,(e=>e(o)))?ce(u,((e,n)=>pe(g,t,l,e,n(o,l)))):g.delRow(t,l)))})(l)},{3:w}=de(v,null);return g.transaction((()=>f(t,1,e.addRowListener(n,null,((l,o,s)=>{e.hasRow(n,s)?p(s,n,s,w):(g.delRow(t,s),se(v,(({4:e})=>U(de(e,s),(([,n])=>{L(t,n),ue(e,s)})))))}))))),x},delQueryDefinition:e=>(C(e),d(e),x),getStore:n,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:a,delListener:e=>(R.delListener(e),x),destroy:c,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)lt.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&nt)for(var l of nt(e))t.indexOf(l)<0&&ot.call(e,l)&&(n[l]=e[l]);return n})(R.getListenerStats(),["tables","tableIds","transaction"])};return De({[g]:[1,1],[w]:[0,1],[S]:[0,5],[p]:[1,2],[T]:[0,2],[I]:[1,3]},(([e,t],n)=>{P(e?["get","has","forEach"]:["get"],(e=>x[e+v+n]=(...t)=>R[e+n](...t))),x[h+v+n+u]=(...e)=>R[h+n+u](...j(e,0,t),((n,...l)=>e[t](x,...l)))})),Je(x)})),rt=be((e=>{const t=ae(),n=ae(),o=ae(),s=ae(),[r,a,i,d,c,u,,,v,h,f]=Te(e,(()=>[ae(),ae(),ae(),ae()]),(e=>K(e)?void 0:e+l)),[g,L,y]=Ve((()=>I)),p=(e,t,n)=>U(u(e),(([l,,o])=>{if(!te(o,t)){const s=Se();if(c(e)!=S(e))Ie(s,t);else{let e=t;for(;!K(e)&&!te(s,e);)Ie(s,e),e=de(l,e)}if(n)return s;ue(o,t,s)}return de(o,t)})),w=(e,t)=>U(u(e),(([,,e])=>ue(e,t))),S=e=>de(t,e),I={setRelationshipDefinition:(e,l,r,a)=>(ue(t,e,r),v(e,l,((t,l)=>{const r=Se(),a=Se(),i=Se(),[d,c]=u(e);se(l,(([t,n],l)=>{K(t)||(Ie(a,t),U(de(c,t),(e=>{re(e,l),ne(e)&&ue(c,t)}))),K(n)||(Ie(a,n),te(c,n)||ue(c,n,Se()),Ie(de(c,n),l)),Ie(r,l),ue(d,l,n),ce(de(s,e),(t=>{te(p(e,t),l)&&Ie(i,t)}))})),t(),se(r,(t=>L(n,[e,t]))),se(a,(t=>L(o,[e,t]))),se(i,(t=>{w(e,t),L(s,[e,t])}))}),Re(a)),I),delRelationshipDefinition:e=>(ue(t,e),h(e),I),getStore:r,getRelationshipIds:a,forEachRelationship:t=>i((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:S,getRemoteRowId:(e,t)=>{var n;return de(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return le(de(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>K(u(e))?[t]:le(p(e,t,!0)),addRemoteRowIdListener:(e,t,l)=>g(l,n,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(p(e,t),g(n,s,[e,t])),delListener:e=>(w(...y(e)),I),destroy:f,getListenerStats:()=>({})};return Je(I)})),at=e=>[e,e],it=()=>[ae(),ae()],dt=(e,t,n,l=ue)=>(De(t,((t,l)=>n(e,l,t))),ce(e,(n=>Ae(t,n)?0:l(e,n))),e),ct=(e,t,n)=>K(e)||!Pe(e)||Oe(e)||ke(e)?(null==n||n(),!1):(De(e,((n,l)=>{t(n,l)||Me(e,l)})),!Oe(e)),ut=(e,t,n)=>ue(e,t,de(e,t)==-n?void 0:n),vt=()=>{let e,t,n,l,o=0;const s=ae(),a=ae(),c=ae(),v=ae(),f=ae(),S=ae(),E=ae(),k=ae(),M=ae(),D=ae(),O=ae(),F=ae(),z=ae(),N=Se(),H=ae(),$=ae(),q=ae(),G=ae(),Z=it(),_=it(),ee=it(),le=it(),Le=it(),Te=it(),Re=it(),be=it(),me=it(),Ee=it(),xe=it(),ke=it(),Pe=it(),Fe=it(),Qe=ae(),ze=it(),[Ne,We,Be,He]=Ve((()=>sn)),$e=e=>{if(!ct(e,((e,t)=>V([i,d],t))))return!1;const t=e[i];return!(!X(t)&&t!=r||(ye(e[d])!=t&&Me(e,d),0))},qe=(t,n)=>(!e||te(D,n)||Et(n))&&ct(t,((e,t)=>Ge(n,t,e)),(()=>Et(n))),Ge=(e,t,n,l)=>ct(l?n:Ye(n,e,t),((l,o)=>U(Ke(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Et(e,t))),Ke=(t,n,l,o)=>e?U(de(de(D,t),l),(e=>ye(o)!=e[i]?Et(t,n,l,o,e[d]):o),(()=>Et(t,n,l,o))):K(ye(o))?Et(t,n,l,o):o,Ue=(e,t)=>ct(t?e:Ze(e),((t,n)=>U(Xe(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>xt())),Xe=(e,n)=>t?U(de(F,e),(t=>ye(n)!=t[i]?xt(e,n,t[d]):n),(()=>xt(e,n))):K(ye(n))?xt(e,n):n,Ye=(e,t,n)=>(U(de(O,t),(([l,o])=>{se(l,((t,n)=>{Ae(e,n)||(e[n]=t)})),se(o,(l=>{Ae(e,l)||Et(t,n,l)}))})),e),Ze=e=>(t&&(se(z,((t,n)=>{Ae(e,n)||(e[n]=t)})),se(N,(t=>{Ae(e,t)||xt(t)}))),e),_e=e=>dt(D,e,((e,t,n)=>{const l=ae(),o=Se();dt(ve(D,t,ae),n,((e,t,n)=>{ue(e,t,n),U(n[d],(e=>ue(l,t,e)),(()=>Ie(o,t)))})),ue(O,t,[l,o])}),((e,t)=>{ue(D,t),ue(O,t)})),et=e=>dt(F,e,((e,t,n)=>{ue(F,t,n),U(n[d],(e=>ue(z,t,e)),(()=>Ie(N,t)))}),((e,t)=>{ue(F,t),ue(z,t),re(N,t)})),tt=e=>Oe(e)?Zt():Gt(e),nt=e=>dt(q,e,((e,t,n)=>lt(t,n)),((e,t)=>pt(t))),lt=(e,t)=>dt(ve(q,e,(()=>(Tt(e,1),ue(H,e,Ce()),ue($,e,ae()),ae()))),t,((t,n,l)=>ot(e,t,n,l)),((t,n)=>wt(e,t,n))),ot=(e,t,n,l,o)=>dt(ve(t,n,(()=>(Rt(e,n,1),ae()))),l,((t,l,o)=>st(e,n,t,l,o)),((l,s)=>St(e,t,n,l,s,o))),st=(e,t,n,l,o)=>{te(n,l)||bt(e,t,l,1);const s=de(n,l);o!==s&&(mt(e,t,l,s,o),ue(n,l,o))},rt=(e,t,n,l,o)=>U(de(t,n),(t=>st(e,n,t,l,o)),(()=>ot(e,t,n,Ye({[l]:o},e,n)))),ht=e=>Oe(e)?_t():Kt(e),ft=e=>dt(G,e,((e,t,n)=>gt(t,n)),((e,t)=>It(t))),gt=(e,t)=>{te(G,e)||Ct(e,1);const n=de(G,e);t!==n&&(Vt(e,n,t),ue(G,e,t))},Lt=(e,t)=>{const[n]=de(H,e),l=n(t);return te(de(q,e),l)?Lt(e,t):l},yt=e=>{var t;return null!=(t=de(q,e))?t:lt(e,{})},pt=e=>lt(e,{}),wt=(e,t,n)=>{const[,l]=de(H,e);l(n),ot(e,t,n,{},!0)},St=(e,t,n,l,o,s)=>{var r;const a=de(null==(r=de(O,e))?void 0:r[0],o);if(!K(a)&&!s)return st(e,n,l,o,a);const i=t=>{mt(e,n,t,de(l,t)),bt(e,n,t,-1),ue(l,t)};K(a)?i(o):ce(l,i),ne(l)&&(Rt(e,n,-1),ne(ue(t,n))&&(Tt(e,-1),ue(q,e),ue(H,e),ue($,e)))},It=e=>{const t=de(z,e);if(!K(t))return gt(e,t);Vt(e,de(G,e)),Ct(e,-1),ue(G,e)},Tt=(e,t)=>ut(s,e,t),Rt=(e,t,n)=>ut(ve(c,e,ae),t,n),bt=(e,t,n,l)=>{var o;const s=de($,e),r=null!=(o=de(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&ut(ve(a,e,ae),n,l),ue(s,n,r!=-l?r+l:null),ut(ve(ve(v,e,ae),t,ae),n,l)},mt=(e,t,n,l,o)=>ve(ve(ve(f,e,ae),t,ae),n,(()=>[l,0]))[1]=o,Ct=(e,t)=>ut(S,e,t),Vt=(e,t,n)=>ve(E,e,(()=>[t,0]))[1]=n,Et=(e,t,n,l,o)=>(Q(ve(ve(ve(k,e,ae),t,ae),n,(()=>[])),l),o),xt=(e,t,n)=>(Q(ve(M,e,(()=>[])),t),n),kt=(e,t,n)=>U(de(de(de(f,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...at(Bt(e,t,n))])),Jt=e=>U(de(E,e),(([e,t])=>[!0,e,t]),(()=>[!1,...at(qt(e))])),Pt=e=>ne(k)||ne(Ee[e])?0:se(e?fe(k,ge):k,((t,n)=>se(t,((t,l)=>se(t,((t,o)=>We(Ee[e],[n,l,o],t))))))),At=e=>ne(M)||ne(xe[e])?0:se(e?fe(M):M,((t,n)=>We(xe[e],[n],t))),Mt=(e,t,n)=>{if(!ne(t))return We(e,n,(()=>he(t))),1},Dt=e=>{const t=ne(Te[e]),n=ne(be[e])&&ne(le[e])&&ne(Le[e])&&t&&ne(_[e]),l=ne(me[e])&&ne(Re[e])&&ne(ee[e])&&ne(Z[e]);if(!n||!l){const o=e?[fe(s),ge(a),ge(c),fe(v,ge),fe(f,ge)]:[s,a,c,v,f];if(!n){se(o[1],((t,n)=>Mt(le[e],t,[n]))),se(o[3],((t,n)=>se(t,((t,l)=>Mt(be[e],t,[n,l])))));const n=Se();se(o[2],((l,o)=>{Mt(Le[e],l,[o])&&!t&&(We(Te[e],[o,null]),Ie(n,o))})),t||se(o[4],((t,l)=>{if(!te(n,l)){const n=Se();se(t,(e=>se(e,(([t,l],o)=>l!==t?Ie(n,o):re(e,o))))),se(n,(t=>We(Te[e],[l,t])))}})),Mt(_[e],o[0])}if(!l){let t;se(o[4],((n,l)=>{let o;se(n,((n,s)=>{let r;se(n,(([n,a],i)=>{a!==n&&(We(me[e],[l,s,i],a,n,kt),t=o=r=1)})),r&&We(Re[e],[l,s],kt)})),o&&We(ee[e],[l],kt)})),t&&We(Z[e],void 0,kt)}}},Ot=e=>{const t=ne(Pe[e]),n=ne(Fe[e])&&ne(ke[e]);if(!t||!n){const l=e?[fe(S),fe(E)]:[S,E];if(t||Mt(Pe[e],l[0]),!n){let t;se(l[1],(([n,l],o)=>{l!==n&&(We(Fe[e],[o],l,n,Jt),t=1)})),t&&We(ke[e],void 0,Jt)}}},Ft=(e,...t)=>(nn((()=>e(...A(t,C)))),sn),jt=()=>he(q,(e=>he(e,he))),Qt=()=>ie(q),zt=e=>ie(de(q,C(e))),Nt=(e,t,n,l=0,o)=>{return A(j(J((s=de(q,C(e)),r=(e,n)=>[K(t)?n:de(e,C(t)),n],A([...null!=(a=null==s?void 0:s.entries())?a:[]],(([e,t])=>r(t,e)))),(([e],[t])=>je(e,t)*(n?-1:1))),l,K(o)?o:l+o),(([,e])=>e));var s,r,a},Wt=(e,t)=>ie(de(de(q,C(e)),C(t))),Bt=(e,t,n)=>de(de(de(q,C(e)),C(t)),C(n)),Ht=()=>he(G),$t=()=>ie(G),qt=e=>de(G,C(e)),Gt=e=>Ft((()=>(e=>ct(e,qe,Et))(e)?nt(e):0)),Kt=e=>Ft((()=>Ue(e)?ft(e):0)),Ut=e=>{try{tt(B(e))}catch(e){}return sn},Xt=t=>Ft((()=>{if((e=ct(t,(e=>ct(e,$e))))&&(_e(t),!ne(q))){const e=jt();Zt(),Gt(e)}})),Yt=e=>Ft((()=>{if(t=(e=>ct(e,$e))(e)){const n=Ht();tn(),_t(),t=!0,et(e),Kt(n)}})),Zt=()=>Ft((()=>nt({}))),_t=()=>Ft((()=>ft({}))),en=()=>Ft((()=>{_e({}),e=!1})),tn=()=>Ft((()=>{et({}),t=!1})),nn=(e,t)=>{if(-1!=o){ln();const n=e();return on(t),n}},ln=()=>(-1!=o&&o++,1==o&&We(Qe,void 0,!1,!1),sn),on=e=>(o>0&&(o--,0==o&&(n=!ne(f),l=!ne(E),o=1,Pt(1),n&&Dt(1),At(1),l&&Ot(1),(null==e?void 0:e(he(f,(e=>he(e,(e=>he(e,(e=>[...e]),(([e,t])=>e===t))),Oe)),Oe),he(k,(e=>he(e,he))),he(E,(e=>[...e]),(([e,t])=>e===t)),he(M)))&&(se(f,((e,t)=>se(e,((e,n)=>se(e,(([e],l)=>pe(sn,t,n,l,e))))))),se(E,(([e],t)=>we(sn,t,e))),n=l=!1),We(ze[0],void 0,n,l),o=-1,Pt(0),n&&Dt(0),At(0),l&&Ot(0),We(ze[1],void 0,n,l),o=0,P([s,a,c,v,f,k,S,E,M],oe))),sn),sn={getTables:jt,getTableIds:Qt,getTable:e=>he(de(q,C(e)),he),getTableCellIds:e=>ie(de($,C(e))),getRowIds:zt,getSortedRowIds:Nt,getRow:(e,t)=>he(de(de(q,C(e)),C(t))),getCellIds:Wt,getCell:Bt,getValues:Ht,getValueIds:$t,getValue:qt,hasTables:()=>!ne(q),hasTable:e=>te(q,C(e)),hasTableCell:(e,t)=>te(de($,C(e)),C(t)),hasRow:(e,t)=>te(de(q,C(e)),C(t)),hasCell:(e,t,n)=>te(de(de(q,C(e)),C(t)),C(n)),hasValues:()=>!ne(G),hasValue:e=>te(G,C(e)),getTablesJson:()=>W(q),getValuesJson:()=>W(G),getJson:()=>W([q,G]),getTablesSchemaJson:()=>W(D),getValuesSchemaJson:()=>W(F),getSchemaJson:()=>W([D,F]),setTables:Gt,setTable:(e,t)=>Ft((e=>qe(t,e)?lt(e,t):0),e),setRow:(e,t,n)=>Ft(((e,t)=>Ge(e,t,n)?ot(e,yt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>nn((()=>{let l;return Ge(e,l,t)&&(e=C(e),ot(e,yt(e),l=Lt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Ft(((e,t)=>{if(Ge(e,t,n,1)){const l=yt(e);De(n,((n,o)=>rt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Ft(((e,t,n)=>U(Ke(e,t,n,Y(l)?l(Bt(e,t,n)):l),(l=>rt(e,yt(e),t,n,l)))),e,t,n),setValues:Kt,setPartialValues:e=>Ft((()=>Ue(e,1)?De(e,((e,t)=>gt(t,e))):0)),setValue:(e,t)=>Ft((e=>U(Xe(e,Y(t)?t(qt(e)):t),(t=>gt(e,t)))),e),setTablesJson:Ut,setValuesJson:e=>{try{ht(B(e))}catch(e){}return sn},setJson:e=>{try{const[t,n]=B(e);tt(t),ht(n)}catch(t){Ut(e)}return sn},setTablesSchema:Xt,setValuesSchema:Yt,setSchema:(e,t)=>Ft((()=>{Xt(e),Yt(t)})),delTables:Zt,delTable:e=>Ft((e=>te(q,e)?pt(e):0),e),delRow:(e,t)=>Ft(((e,t)=>U(de(q,e),(n=>te(n,t)?wt(e,n,t):0))),e,t),delCell:(e,t,n,l)=>Ft(((e,t,n)=>U(de(q,e),(o=>U(de(o,t),(s=>te(s,n)?St(e,o,t,s,n,l):0))))),e,t,n),delValues:_t,delValue:e=>Ft((e=>te(G,e)?It(e):0),e),delTablesSchema:en,delValuesSchema:tn,delSchema:()=>Ft((()=>{en(),tn()})),transaction:nn,startTransaction:ln,finishTransaction:on,forEachTable:e=>se(q,((t,n)=>e(n,(e=>se(t,((t,n)=>e(n,(e=>ce(t,e))))))))),forEachTableCell:(e,t)=>ce(de($,C(e)),t),forEachRow:(e,t)=>se(de(q,C(e)),((e,n)=>t(n,(t=>ce(e,t))))),forEachCell:(e,t,n)=>ce(de(de(q,C(e)),C(t)),n),forEachValue:e=>ce(G,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let a=Nt(e,t,n,l,o);return Ne((()=>{const r=Nt(e,t,n,l,o);x(r,a)||(a=r,s(sn,e,t,n,l,o,a))}),Te[r?1:0],[e,t],[Qt])},addStartTransactionListener:e=>Ne(e,Qe),addWillFinishTransactionListener:e=>Ne(e,ze[0]),addDidFinishTransactionListener:e=>Ne(e,ze[1]),callListener:e=>(He(e),sn),delListener:e=>(Be(e),sn),getListenerStats:()=>({}),createStore:vt};return De({[L]:[0,Z],[y]:[0,_],[g]:[1,ee,[Qt]],[g+T]:[1,le,[Qt]],[w]:[1,Le,[Qt]],[p]:[2,Re,[Qt,zt]],[T]:[2,be,[Qt,zt]],[I]:[3,me,[Qt,zt,Wt],e=>at(Bt(...e))],InvalidCell:[3,Ee],[b]:[0,ke],[m]:[0,Pe],[R]:[1,Fe,[$t],e=>at(qt(e[0]))],InvalidValue:[1,xe]},(([e,t,n,l],o)=>{sn[h+o+u]=(...o)=>Ne(o[e],t[o[e+1]?1:0],e>0?j(o,0,e):void 0,n,l)})),Je(sn)};export{Fe as createCheckpoints,He as createCustomPersister,Ze as createFilePersister,Qe as createIndexes,Ue as createLocalPersister,We as createMetrics,st as createQueries,rt as createRelationships,tt as createRemotePersister,Xe as createSessionPersister,vt as createStore,je as defaultSorter};
|
package/lib/es6/tinybase.js.gz
CHANGED
|
Binary file
|
package/lib/es6/tools.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",l=e(t),a=e(!0),n=e(0),o="type",d="default",r="Listener",s="get",I="add",c="Ids",$="Table",i=$+"s",u=$+c,p="Row",b=p+c,C="Sorted"+p+c,h="Cell",g=h+c,m="Value",f=m+"s",w=m+c,y=(e,t)=>e.every(t),v=(e,t)=>e.sort(t),T=(e,t)=>e.forEach(t),V=(e,t)=>e.map(t),x=e=>e.length,R=e=>0==x(e),P=(e,t)=>e.filter(t),k=(e,...t)=>e.push(...t),S=e=>e.pop(),A=(e,...t)=>e.unshift(...t),O=e=>e.shift(),E=JSON.parse,D=isFinite,j=(e,t)=>e instanceof t,N=e=>null==e,L=e=>e==l||e==a,M=t=>e(t)==l,G=e=>Array.isArray(e),J=t=>{const l=e(t);return L(l)||l==n&&D(t)?l:void 0},z=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},W=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},B=(e,t)=>null==e?void 0:e.forEach(t),F=(e,t)=>null==e?void 0:e.delete(t),U=e=>new Map(e),_=(e,t)=>null==e?void 0:e.get(t),Z=(e,t)=>B(e,((e,l)=>t(l,e))),H=(e,t)=>{var l;return V([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},Q=(e,t,l)=>N(l)?(F(e,t),e):null==e?void 0:e.set(t,l),q=(e,t,l)=>(z(e,t)||Q(e,t,l()),_(e,t)),K=e=>e.toUpperCase(),X=e=>e.toLowerCase(),Y="a ",ee="A function for",te=", and registers a listener so that any changes to that result will cause a re-render",le="Callback",ae="Del",ne="Deps",oe=ne+"?: React.DependencyList",de="doRollback?: DoRollback",re="actions: () => Return, "+de,se="export",Ie="Id",ce="Invalid",$e="Json",ie=X(r),ue="?: ",pe=" | undefined",be="NonNullable",Ce="Partial",he="Props",ge="Provider",me=`Registers a ${ie} that will be called`,fe="Represents",we="rowId: "+Ie,ye="Schema",ve="Set",Te=", descending?: boolean, offset?: number, limit?: number",Ve="[]",xe="the Store",Re="Transaction",Pe=X(Re),ke="Execute a "+Pe+" to make multiple mutations",Se="Explicitly starts a "+Pe,Ae="Explicitly finishes a "+Pe,Oe="the end of the "+Pe,Ee="void",De=" => "+Ee,je="WhenSet",Ne=" when setting it",Le=Y+"string serialization of",Me=" ",Ge="Gets a callback that can ",Je="the ",ze=" the schema for",We=(e=0,l=0)=>`the ${dt[e]}content of`+(l?Me+xe:t),Be=(e=0,l,a=0)=>at[l]+Me+We(e,1)+(a?" when setting it":t),Fe=(e,t=0)=>fe+` a Row when ${t?"s":"g"}etting ${We()} the '${e}' `+$,Ue=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,_e=(e,t)=>`Calls a function for each ${e} in `+t,Ze=e=>"The props passed to a component that renders "+e,He=e=>"A function that takes "+e,Qe=(e,t=0)=>ee+" listening to changes to "+ot[e]+" in "+ot[t],qe=(e,l,a=0)=>me+" whenever "+ot[e]+" in "+ot[l]+" change"+(a?t:"s"),Ke=e=>`the '${e}' `+$,Xe=e=>"the specified Row in "+Ke(e),Ye=(e,t=0)=>at[t]+` ${We()} `+Ke(e),et=(e,t=0)=>at[t]+` ${We()} `+Xe(e),tt=(e,t,l=0)=>at[l]+` the '${t}' Cell for `+Xe(e),lt=(e,t=0)=>at[t]+` the '${e}' Value`,at=["Gets","Checks existence of","Sets","Deletes","Sets part of",fe,"Gets "+Le,"Sets "+Le,me+" whenever",Ge+"set",Ge+"add",Ge+"set part of",Ge+"delete","Renders","Gets "+Le+ze,"Sets"+ze,"Deletes"+ze],nt=[s,"has","set","del","set","forEach",I,t],ot=[xe,i,Je+$+Me+c,Y+$,Je+p+Me+c,Y+p,Je+h+Me+c,Y+h,"invalid Cell changes",f,Je+m+Me+c,Y+m,"invalid Value changes",Je+"sorted "+p+Me+c],dt=[t,"tabular ","keyed value "],rt=e=>new Set(G(e)||N(e)?e:[e]),st=(e,t)=>null==e?void 0:e.add(t),It=/[^A-Za-z]+/,ct=/[^A-Za-z0-9]+/,$t=/^( *)\/\*\* *(.*?) *\*\/$/gm,it=(e,t,l)=>e.substring(t,l),ut=e=>e.includes(","),pt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return z(e,n)?pt(e,t,l,a+1):(Q(e,n,l),n)},bt=e=>e.replace($t,((e,t,l)=>{const a=77-Ct(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Ct=e=>e.length,ht=(e,l=t)=>e.join(l),gt=e=>e.flat(1e3),mt=(e,t=0)=>ht(V(e.split(ct),((e,l)=>(l>0||t?K:X)(it(e,0,1))+it(e,1)))),ft=e=>K(ht((e&&!It.test(e[0])?e:" "+e).split(ct),"_")),wt=e=>`/** ${e}. */`,yt=(...e)=>ht(P(e,(e=>e)),", "),vt=(...e)=>"{"+ht(e,"; ")+"}",Tt=(...e)=>vt(...V(e,(e=>"readonly "+e))),Vt=()=>{const e=[U(),U(),U(),U()],l=U(),a=U();return[(...e)=>ht(gt(e),"\n"),(t,l,...a)=>T(a,(a=>T([0,1],(n=>(null!=t?t:n)==n?st(q(e[n],l,rt),a):0)))),(e,a,n,o=t,d=1)=>pt(l,e,[a,n,o,d]),(e,t,l)=>pt(a,e,G(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>_(a,e)===t?e:pt(a,e,t),(l=0)=>V([...v(H(e[l],((e,t)=>`import {${ht(v(W(e)),", ")}} from '${t}';`)),((e,t)=>ut(e)!=ut(t)?ut(e)?-1:1:e>t?1:-1)),t],(e=>e.replace("{React}","React"))),()=>H(l,(([e,l,a,n],o)=>[wt(l),`${n?se+" ":t}type ${o}${a} = ${e};`,t])),()=>H(a,((e,l)=>(e=G(e)?e:[e],k(e,S(e)+";"),[`const ${l} = ${O(e)}`,e,t])))]},xt=Object,Rt=xt.keys,Pt=xt.freeze,kt=e=>j(e,xt)&&e.constructor==xt,St=(e,t)=>V(xt.entries(e),(([e,l])=>t(l,e))),At=e=>kt(e)&&R(Rt(e)),Ot=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Et=(e,t,l)=>[t=>St(e,((e,a)=>t(a,mt(a,1),l(ft(a),`'${a}'`)))),(t,a)=>St(e[t],((e,t)=>a(t,e[o],e[d],l(ft(t),`'${t}'`),mt(t,1)))),e=>St(t,((t,a)=>e(a,t[o],t[d],l(ft(a),`'${a}'`),mt(a,1))))],Dt=(e,l,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(i,vt(...l((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,l,a)=>`'${e}'${N(a)?"?":t}: ${l}`)))+"}"))),Be(1,5)),I=e(i+je,vt(...l((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Be(1,5,1)),c=e($+Ie,"keyof "+s,"A "+$+" Id in "+xe),m=`<TId extends ${c}>`,f=e($,be+`<${s}[TId]>`,"A "+$+" in "+xe,m),w=e($+je,be+`<${I}[TId]>`,"A "+$+" in "+xe+Ne,m),y=e(p,f+"<TId>[Id]","A "+p+" in a "+$,m),v=e(p+je,w+"<TId>[Id]","A "+p+" in a "+$+Ne,m),T=e(h+Ie,`Extract<keyof ${y}<TId>, Id>`,"A "+h+" Id in a "+p,m),V=e(h,be+`<${s}[TId]>[Id][CId]`,"A "+h+" in a "+p,`<TId extends ${c}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,h+" Ids and types in a "+p,`<TId extends ${c}, CId = ${T}<TId>>`,0),R=e(h+le,`(...[cellId, cell]: ${x}<TId>)`+De,He(Y+h+" Id, and "+h),m),P=e(p+le,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+De+") "+De,He(Y+p+" Id, and a "+h+" iterator"),m),k=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${P}<TId>)${De}] : never`,$+" Ids and callback types",`<TId = ${c}>`,0),S=e($+le,`(...[tableId, forEachRow]: ${k})`+De,He(Y+$+" Id, and a "+p+" iterator"),t),A=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${A}) => CellChange`,ee+" returning information about any Cell's changes during a "+Pe),E=e(i+r,`(${d}, getCellChange: ${O}${pe})`+De,Qe(1)),D=e(u+r,`(${d})`+De,Qe(2)),j=e($+r,`(${d}, tableId: ${c}, getCellChange: ${O}${pe})`+De,Qe(3)),L=e(b+r,`(${d}, tableId: ${c})`+De,Qe(4,3)),M=e(C+r,"("+yt(d,"tableId: "+c,"cellId: Id"+pe,"descending: boolean","offset: number","limit: number"+pe,"sortedRowIds: Ids")+")"+De,Qe(13,3)),G=e(p+r,"("+yt(""+d,"tableId: "+c,we,`getCellChange: ${O}${pe}`)+")"+De,Qe(5,3)),J=e(g+r,"("+yt(""+d,"tableId: "+c,we)+")"+De,Qe(6,5)),z=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${we}, cellId: CId, newCell: ${V}<TId, CId> ${pe}, oldCell: ${V}<TId, CId> ${pe}, getCellChange: ${O} ${pe}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${T}<TId>>`,0),W=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+z+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,I,c,f,w,y,v,T,V,R,P,S,E,D,j,L,M,G,J,e(h+r,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${W})`+De,Qe(7,5)),e(ce+h+r,`(${d}, tableId: Id, ${we}, cellId: Id, invalidCells: any[])`+De,Qe(8))]},(l,a)=>{const o=l+": "+a,d=e(f,vt(...n(((e,l,a)=>`'${e}'${N(a)?"?":t}: ${l}`))),Be(2,5)),s=e(f+je,vt(...n(((e,t)=>`'${e}'?: ${t}`))),Be(2,5,1)),I=e(m+Ie,"keyof "+d,"A "+m+" Id in "+xe),c=e(m,be+`<${d}[VId]>`,"A "+m+" Id in "+xe,`<VId extends ${I}>`),$=e("ValueIdValueArray",`VId extends ${I} ? [valueId: VId, value: ${c}<VId>] : never`,m+" Ids and types in "+xe,`<VId = ${I}>`,0),i=e(m+le,`(...[valueId, value]: ${$})`+De,He(Y+m+" Id, and "+m)),u=e("GetValueChange",`(valueId: ${I}) => ValueChange`,ee+" returning information about any Value's changes during a "+Pe),p=e(f+r,`(${o}, getValueChange: ${u}${pe})`+De,Qe(9)),b=e(w+r,`(${o})`+De,Qe(10)),C=e("ValueListenerArgsArray",`VId extends ${I} ? [${o}, valueId: VId, newValue: ${c}<VId> ${pe}, oldValue: ${c}<VId> ${pe}, getValueChange: ${u} ${pe}] : never`,"Value args for ValueListener",`<VId = ${I}>`,0);return[d,s,I,c,i,p,b,e(m+r,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+C+")"+De,Qe(11)),e(ce+m+r,`(${o}, valueId: Id, invalidValues: any[])`+De,Qe(12))]},(t,l)=>e(Re+r,`(${t}: ${l}, cellsTouched: boolean, valuesTouched: boolean)`+De,ee+" listening to the completion of a "+Pe)],jt=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Nt=(e,l=t)=>`fluent(() => ${jt(e,l)})`,Lt=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Mt=(e,l,n)=>{const[s,y,v,V,x,R,P,S]=Vt(),[O,E,D]=Et(e,l,x),[j,L,G]=Dt(v,O,E,D),J=U(),z=(e=0)=>H(J,(([l,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${l}): ${a} => ${n},`]:[r+d+`(${l}): ${a};`];return e||A(s,wt(o)),k(s,t),s})),B=(e,l,a,n,o,d=t)=>pt(J,e,[l,a,n,o,d]),F=(e,l,a,n,o,d=t,r=t,s=t)=>B(nt[e]+l+(4==e?Ce:t)+a,d,n,(n==X?Nt:jt)(nt[e]+(4==e?Ce:t)+a,r,e?void 0:n),o,s),q=(e,l,a,n=t,o=t,d=1,s=t)=>B(I+e+r,(n?n+", ":t)+ie+": "+l+(d?", mutator?: boolean":t),Ie,Lt(I+e+r,o,d?"mutator":t),a,s),K=`./${mt(n)}.d`,X=mt(n,1),Y=mt(X),ee=[],te=U();let ae=[],ne=[];if(y(1,K,X,`create${X} as create${X}Decl`),!At(e)){y(0,"tinybase","CellChange"),y(null,"tinybase",c);const[e,l,n,r,s,I,m,f,w,V,R,P,S,A,D,L,G,J,z,B,Z]=j(Y,X),H=U();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+$,r+l,fe+` the '${e}' `+$),v(t+$+je,s+l,fe+` the '${e}' `+$+Ne),v(t+p,I+l,Fe(e)),v(t+p+je,m+l,Fe(e,1)),v(t+h+Ie,f+l,`A Cell Id for the '${e}' `+$),v(t+h+le,V+l,He(`a Cell Id and value from a Row in the '${e}' `+$)),v(t+p+le,R+l,He(`a Row Id from the '${e}' Table, and a Cell iterator`))];Q(H,e,a),y(1,K,...a)})),y(1,K,e,l,n,f,P,S,A,D,L,G,J,z,B,Z),ae=[e,l,n,f,S,A,D,L,G,J,z,B,H],T([[e],[a],[X,"tables: "+l,"tables"],[X]],(([e,l,a],n)=>F(n,t,i,e,Be(1,n),l,a))),F(0,t,u,n+Ve,Ue($,xe)),F(5,t,$,Ee,_e($,xe),"tableCallback: "+P,"tableCallback as any"),O(((e,l,n)=>{const[o,d,r,s,I,i,u]=_(H,e);T([[o],[a],[X,"table: "+d,", table"],[X]],(([a,o,d=t],r)=>F(r,l,$,a,Ye(e,r),o,n+d))),F(0,l,b,c,Ue(p,Ke(e)),t,n),F(0,l,C,c,Ue(p,Ke(e),1),"cellId?: "+I+Te,n+", cellId, descending, offset, limit"),F(5,l,p,Ee,_e(p,Ke(e)),"rowCallback: "+u,n+", rowCallback as any"),T([[r],[a],[X,", row: "+s,", row"],[X],[X,", partialRow: "+s,", partialRow"]],(([a,o=t,d=t],r)=>F(r,l,p,a,et(e,r),we+o,n+", rowId"+d))),F(6,l,p,Ie+pe,"Add a new Row to "+Ke(e),"row: "+s+", reuseIds?: boolean",n+", row, reuseIds"),F(0,l,g,I+Ve,Ue(h,Xe(e)),we,n+", rowId"),F(5,l,h,Ee,_e(h,Xe(e)),we+", cellCallback: "+i,n+", rowId, cellCallback as any"),E(e,((o,d,r,s,I)=>{const c="Map"+mt(d,1);Q(te,d,c);const $=d+(N(r)?pe:t);T([[$],[a],[X,`, cell: ${d} | `+c,", cell as any"],[X]],(([a,d=t,r=t],c)=>F(c,l+I,h,a,tt(e,o,c),we+d,n+", rowId, "+s+r)))}))})),F(0,t,i+$e,$e,Be(1,6)),F(2,t,i+$e,X,Be(1,7),"tablesJson: "+$e,"tables"+$e),q(i,S,Be(1,8)+" changes"),q(u,A,qe(2,0,1)),q($,D,qe(3,0),`tableId: ${n} | null`,"tableId"),q(b,L,qe(4,3,1),`tableId: ${n} | null`,"tableId"),q(C,G,qe(13,3,1),yt("tableId: TId",`cellId: ${f}<TId>`+pe,"descending: boolean","offset: number","limit: number"+pe),yt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),q(p,J,qe(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),q(g,z,qe(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),q(h,B,qe(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${ht(O((e=>{var l,a;return null!=(a=null==(l=_(H,e))?void 0:l[4])?a:t}))," | ")} | null`,"tableId, rowId, cellId"),q(ce+h,Z,me+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),y(1,K,...W(te)),k(ee,".set"+i+ye+"({",gt(O(((e,l,a)=>[`[${a}]: {`,...E(e,((e,l,a,n)=>`[${n}]: {[${x(ft(o),`'${o}'`)}]: ${x(ft(l),`'${l}'`)}${N(a)?t:`, [${x(ft(d),`'${d}'`)}]: `+(M(a)?x(ft(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(!At(l)){const[e,l,n,r,s,I,c,$,i]=L(Y,X);y(1,K,e,l,n,s,I,c,$,i),ne=[e,l,n,I,c,$],T([[e],[a],[X,"values: "+l,"values"],[X],[X,"partialValues: "+l,"partialValues"]],(([e,l,a],n)=>F(n,t,f,e,Be(2,n),l,a))),F(0,t,w,n+Ve,Ue(m,xe)),F(5,t,m,"void",_e(m,xe),"valueCallback: "+s,"valueCallback as any"),D(((e,l,n,o,d)=>{const r="Map"+mt(l,1);Q(te,l,r),T([[l],[a],[X,`value: ${l} | `+r,", value as any"],[X]],(([l,a,n=t],r)=>F(r,d,m,l,lt(e,r),a,o+n)))})),F(0,t,f+$e,$e,Be(2,6)),F(2,t,f+$e,X,Be(2,7),"valuesJson: "+$e,"values"+$e),q(f,I,Be(2,8)+" changes"),q(w,c,qe(10,0,1)),q(m,$,qe(11,0),`valueId: ${n} | null`,"valueId"),q(ce+m,i,me+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),y(1,K,...W(te)),y(0,"tinybase","ValueChange"),k(ee,".set"+f+ye+"({",D(((e,l,a,n)=>[`[${n}]: {[${x(ft(o),`'${o}'`)}]: ${x(ft(l),`'${l}'`)}${N(a)?t:`, [${x(ft(d),`'${d}'`)}]: `+(M(a)?x(ft(a),`'${a}'`):a)}},`])),"})")}Z(te,((e,t)=>v(t,`(cell: ${e}${pe}) => `+e,`Takes a ${e} Cell value and returns another`))),y(null,"tinybase","DoRollback",Ie,"IdOrNull",$e,"Store"),F(0,t,$e,$e,Be(0,6)),F(2,t,$e,X,Be(0,7),"tablesAndValuesJson: "+$e,"tablesAndValuesJson"),F(7,t,Pe,"Return",ke,re,"actions, doRollback","<Return>"),F(7,t,"start"+Re,X,Se),F(7,t,"finish"+Re,X,Ae,de,"doRollback");const oe=G(Y,X);return q("Start"+Re,oe,me+" just before the start of the "+Pe,t,t,0),q("WillFinish"+Re,oe,me+" just before "+Oe,t,t,0),q("DidFinish"+Re,oe,me+" just after "+Oe,t,t,0),F(7,t,"call"+r,X,"Manually provoke a listener to be called","listenerId: Id","listenerId"),F(3,t,r,X,"Remove a listener that was previously added to "+xe,"listenerId: Id","listenerId"),B("getStore",t,"Store","store",at[0]+" the underlying Store object"),y(1,"tinybase","createStore"),y(1,K,X,`create${X} as create${X}Decl`,oe),x("store",["createStore()",...ee]),V("fluent","actions: () => Store",["actions();",`return ${Y};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Y}, ...params)`),x(Y,["{",...z(1),"}"]),[s(...R(0),...P(),se+" interface "+X+" {",...z(0),"}",t,wt(`Creates a ${X} object`),se+" function create"+X+"(): "+X+";"),s(...R(1),se+" const create"+X+": typeof create"+X+"Decl = () => {",...S(),`return Object.freeze(${Y});`,"};"),ae,ne]},Gt=e=>s+e,Jt=e=>yt(Gt(e),Gt(e)+ne),zt="debugIds?: boolean",Wt="debugIds={debugIds}",Bt="then"+oe,Ft="Parameter",Ut=": (parameter: "+Ft+", store: Store) => ",_t="const contextValue = useContext(Context);",Zt=", based on a parameter",Ht=": ",Qt="<"+Ft+",>",qt=Ft+"ized"+le+"<"+Ft+">",Kt="rowId",Xt="rowId={rowId}",Yt=", separator, debugIds",el="separator?: ReactElement | string",tl="then?: (store: Store",ll=yt(tl+")"+De,Bt),al="then, then"+ne,nl=Kt+Ht+Ie,ol="View",dl=(e,...t)=>yt(...t,ie+": "+e,ie+oe,"mutator?: boolean"),rl=(...e)=>yt(...e,ie,ie+ne,"mutator"),sl=(e,l,a,n,o)=>{const[d,s,I,y,v,T,V,x]=Vt(),[R,P,S]=Et(e,l,v),O=`./${mt(a)}.d`,E=`./${mt(a)}-ui-react.d`,D="tinybase/ui-react",j=mt(a,1),L=mt(j),M=j+"Or"+j+Ie,G=L+"Or"+j+Ie,J=L+`={${L}}`,z=U(),W=(e,l,a,n,o,d=t)=>(s(1,E,e+" as "+e+"Decl"),pt(z,e,[l,a,n,o,d])),B=(e,l,a,n,o,d=t)=>W("use"+e,l,a,n,o,d),F=(e,l,a,n,o=t,d=t,r=t,I=t,c=t)=>(s(1,D,`use${l} as use${l}Core`),B(e,yt(o,X,I),a,ne+`(${G}, use${l}Core, [`+(d||t)+(c?"], ["+c:t)+"]);",n,r)),Z=(e,t,l,a)=>W(e,t,1,l,a),Q=(e=0)=>H(z,(([l,a,n,o,d],r)=>{const s=e?[se+` const ${r}: typeof ${r}Decl = ${d}(${l}): ${1==a?"any":a} =>`,n]:[se+` function ${r}${d}(${l}): ${1==a?"ComponentReturnType":a};`];return e||A(s,wt(o)),k(s,t),s}));s(null,"tinybase",Ie,"Store",le,Ft+"ized"+le),s(0,D,"ComponentReturnType"),s(null,D,"ExtraProps"),s(0,O,j);const q=I(M,j+" | "+Ie,`Used when you need to refer to a ${j} in a React hook or component`),K=I(ge+he,Tt(L+ue+j,L+`ById?: {[${L}Id: Id]: ${j}}`),`Used with the ${ge} component, so that a `+j+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,E,q,K);const X=G+ue+q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${j}?, {[${L}Id: Id]: ${j}}?]>([])`),B("Create"+j,`create: () => ${j}, create`+oe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const ee=B(j,"id?: Id",j+pe,["{",_t,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${ge} component context`),ne=y("useHook",G+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${L} = ${ee}(${G} as Id);`,`return hook(...preParams, ((${G} == null || typeof ${G} == 'string')`,`? ${L} : ${G})?.getStore(), ...postParams)`]),de=y("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=y("wrap",yt("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),ce=v("NullComponent","() => null");if(!At(e)){const[e,l,a,o,d,m,f,w,v,T,V,x,k]=n;s(null,O,e,l,a,d,m,f,w,v,T,V,x),s(0,O,o),s(1,O,j),s(null,"tinybase",c,"IdOrNull");const S=y("tableView",`{${L}, rowComponent, getRowComponentProps`+Yt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+de+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",Xt,J,Wt,"/>","))",Yt,", tableId,",");"]),A=y("getDefaultTableComponent","tableId: Id",ht(R(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+ce),D=y("getDefaultCellComponent","tableId: Id, cellId: Id",ht(R(((e,t,l)=>`tableId == ${l} ? ${ht(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+ce} : `)))+ce);F(i,i,e,Be(1,0)+te);const M=F(u,u,a+Ve,Ue($,xe)+te);F(ve+i+le,ve+i+le,qt,Be(1,9)+Zt,yt(Gt(i)+Ut+l,Gt(i)+oe),Jt(i),Qt,yt(tl,`tables: ${l})`+De,Bt),al),F(ae+i+le,ae+i+le,le,Be(1,12),t,t,t,ll,al);const G=I(h+he,Tt("tableId?: TId","rowId: Id","cellId?: CId",L+ue+j,zt),Ze(Y+h),`<TId extends ${a}, CId extends ${o}<TId>>`),z=I(p+he,Tt("tableId?: TId","rowId: Id",L+ue+j,"cellComponents?: {readonly [CId in "+o+`<TId>]?: ComponentType<${G}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${o}<TId>) => ExtraProps`,el,zt),Ze(Y+p),`<TId extends ${a}>`),W=I($+he,Tt("tableId?: TId",L+ue+j,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+$),`<TId extends ${a}>`),B=I("Sorted"+$+he,Tt("tableId?: TId","cellId?: "+o+"<TId>","descending?: boolean","offset?: number","limit?: number",L+ue+j,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+"sorted "+$),`<TId extends ${a}>`),U=I(i+he,Tt(L+ue+j,"tableComponents?: {readonly [TId in "+a+`]?: ComponentType<${W}<TId>>;}`,`getTableComponentProps?: (tableId: ${a}) => ExtraProps`,el,zt),Ze(We(1,1)));s(1,E,U,W,B,z,G),Z(i+ol,"{"+L+", tableComponents, getTableComponentProps"+Yt+"}: "+U,[re+`(${M}(${L}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+A+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${de}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Wt,"/>;","}), separator)"],Be(1,13)+te),R(((e,l,a)=>{const[n,o,d,r,I]=_(k,e);s(null,O,n,o,d,r,I),F(l+$,$,n,Ye(e)+te,t,a);const i=F(l+b,b,c,Ue(p,Ke(e))+te,t,a),u=F(l+C,C,c,Ue(p,Ke(e),1)+te,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");F(l+p,p,d,et(e)+te,nl,yt(a,Kt));const m=F(l+g,g,I+Ve,Ue(h,Xe(e))+te,nl,yt(a,Kt));F(ve+l+$+le,ve+$+le,qt,Ye(e,9)+Zt,yt(Gt($)+Ut+o,Gt($)+oe),yt(a,Jt($)),Qt,yt(tl,`table: ${o})`+De,Bt),al),F(ae+l+$+le,ae+$+le,le,Ye(e,12),t,a,t,ll,al),F(ve+l+p+le,ve+p+le,qt,et(e,9)+Zt,yt(nl,Gt(p)+Ut+r,Gt(p)+oe),yt(a,Kt,Jt(p)),Qt,yt(tl,`row: ${r})`+De,Bt),al),F("Add"+l+p+le,"Add"+p+le,qt,et(e,10)+Zt,yt(Gt(p)+Ut+r,Gt(p)+oe),yt(a,Jt(p)),Qt,"then?: ("+yt(nl+pe,"store: Store","row: "+r+")"+De,"then"+oe)+", reuseRowIds?: boolean",al+", reuseRowIds"),F(ve+l+Ce+p+le,ve+Ce+p+le,qt,et(e,11)+Zt,yt(nl,Gt(Ce+p)+Ut+r,Gt(Ce+p)+oe),yt(a,Kt,Jt(Ce+p)),Qt,yt(tl,`partialRow: ${r})`+De,Bt),al),F(ae+l+p+le,ae+p+le,le,et(e,12),nl,yt(a,Kt),t,ll,al);const f=Z(l+p+ol,"{rowId, "+L+", cellComponents, getCellComponentProps"+Yt+`}: ${z}<'${e}'>`,[re+`(${m}(rowId, ${L}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+D+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${de}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,Xt,"cellId={cellId}",J,Wt,"/>;","})"+Yt+", rowId)"],et(e,13)+te);Z(l+"Sorted"+$+ol,"{cellId, descending, offset, limit, ...props}: "+B+`<'${e}'>`,S+"(props, "+u+`(cellId, descending, offset, limit, props.${L}), ${a}, ${f});`,Ye(e,13)+", sorted"+te),Z(l+$+ol,`props: ${W}<'${e}'>`,S+"(props, "+i+`(props.${L}), ${a}, ${f});`,Ye(e,13)+te),P(e,((n,o,d,r,I)=>{const c="Map"+mt(o,1);s(0,O,c),s(1,O,c);const $=F(l+I+h,h,o+(N(d)?pe:t),tt(e,n)+te,nl,yt(a,Kt,r));F(ve+l+I+h+le,ve+h+le,qt,tt(e,n,9)+Zt,yt(nl,Gt(h)+Ut+o+" | "+c,Gt(h)+oe),yt(a,Kt,r,Jt(h)),Qt,yt(tl,`cell: ${o} | ${c})`+De,Bt),al),F(ae+l+I+h+le,ae+h+le,le,tt(e,n,12),yt(nl,"forceDel?: boolean"),yt(a,Kt,r,"forceDel"),t,ll,al),Z(l+I+h+ol,`{rowId, ${L}, debugIds}: `+G+`<'${e}', '${n}'>`,[re+`('' + ${$}(rowId, `+L+`) ?? '', undefined, debugIds, ${r})`],tt(e,n,13)+te)}))}));const H=ht(R((e=>{var l,a;return null!=(a=null==(l=_(k,e))?void 0:l[4])?a:t}))," | ");F(i+r,i+r,Ee,Be(1,8)+" changes",dl(d),rl()),F(u+r,u+r,Ee,qe(2,0,1),dl(m),rl()),F($+r,$+r,Ee,qe(3,0),dl(f,`tableId: ${a} | null`),rl("tableId")),F(b+r,b+r,Ee,qe(4,3,1),dl(w,`tableId: ${a} | null`),rl("tableId")),F(C+r,C+r,Ee,qe(13,3,1),dl(v,`tableId: ${a} | null`,"cellId: "+H+pe,"descending: boolean","offset: number","limit: number"+pe),rl("tableId","cellId","descending","offset","limit")),F(p+r,p+r,Ee,qe(5,3),dl(T,`tableId: ${a} | null`,Kt+": IdOrNull"),rl("tableId",Kt)),F(g+r,g+r,Ee,qe(6,5,1),dl(V,`tableId: ${a} | null`,Kt+": IdOrNull"),rl("tableId",Kt)),F(h+r,h+r,Ee,qe(7,5),dl(x,`tableId: ${a} | null`,Kt+": IdOrNull",`cellId: ${H} | null`),rl("tableId",Kt,"cellId"))}if(!At(l)){const[e,l,a,n,d,c]=o;s(null,O,...o),s(1,O,j);const $=y("getDefaultValueComponent","valueId: Id",ht(S(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+ce);F(f,f,e,Be(2,0)+te);const i=F(w,w,a+Ve,Ue(m,xe)+te);F(ve+f+le,ve+f+le,qt,Be(2,9)+Zt,yt(Gt(f)+Ut+l,Gt(f)+oe),Jt(f),Qt,yt(tl,`values: ${l})`+De,Bt),al),F(ve+Ce+f+le,ve+Ce+f+le,qt,Be(2,11)+Zt,yt(Gt(Ce+f)+Ut+l,Gt(Ce+f)+oe),Jt(Ce+f),Qt,yt(tl,`partialValues: ${l})`+De,Bt),al),F(ae+f+le,ae+f+le,le,Be(2,12),t,t,t,ll,al);const u=I(m+he,Tt("valueId?: VId",L+ue+j,zt),Ze("a Value"),`<VId extends ${a}>`),p=I(f+he,Tt(L+ue+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${u}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,el,zt),Ze(We(2,1)));s(1,E,p,u),Z(f+ol,"{"+L+", valueComponents, getValueComponentProps"+Yt+"}: "+p,[re+`(${i}(${L}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+$+"(valueId);","return <Value",`{...${de}(getValueComponentProps, valueId)}`,"key={valueId}",J,Wt,"/>;","}), separator)"],Be(2,13)+te),S(((e,l,a,n,o)=>{const d="Map"+mt(l,1);s(0,O,d),s(1,O,d);const r=F(o+m,m,l,lt(e)+te,t,n);F(ve+o+m+le,ve+m+le,qt,lt(e,9)+Zt,yt(Gt(m)+Ut+l+" | "+d,Gt(m)+oe),yt(n,Jt(m)),Qt,yt(tl,`value: ${l} | ${d})`+De,Bt),al),F(ae+o+m+le,ae+m+le,le,lt(e,12),t,n,t,ll,al),Z(o+m+ol,`{${L}, debugIds}: ${u}<'${e}'>`,[re+`('' + ${r}(`+L+`) ?? '', undefined, debugIds, ${n})`],lt(e,13)+te)})),F(f+r,f+r,Ee,Be(2,8)+" changes",dl(n),rl()),F(w+r,w+r,Ee,qe(10,0,1),dl(d),rl()),F(m+r,m+r,Ee,qe(11,0),dl(c,`valueId: ${a} | null`),rl("valueId"))}return Z(ge,`{${L}, ${L}ById, children}: `+K+" & {children: React.ReactNode}",["{",_t,"return (","<Context."+ge,"value={useMemo(",`() => [${L} ?? contextValue[0], {...contextValue[1], ...${L}ById}],`,`[${L}, ${L}ById, contextValue],`,")}>","{children}",`</Context.${ge}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[d(...T(0),...V(),...Q(0)),d(...T(1),...x(),...Q(1))]},Il=(e,l,a)=>{if(At(e)&&At(l))return[t,t,t,t];const[n,o,d,r]=Mt(e,l,a);return[n,o,...sl(e,l,a,d,r)]};var cl=Object.defineProperty,$l=Object.defineProperties,il=Object.getOwnPropertyDescriptors,ul=Object.getOwnPropertySymbols,pl=Object.prototype.hasOwnProperty,bl=Object.prototype.propertyIsEnumerable,Cl=(e,t,l)=>t in e?cl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,hl=(e,t)=>{for(var l in t||(t={}))pl.call(t,l)&&Cl(e,l,t[l]);if(ul)for(var l of ul(t))bl.call(t,l)&&Cl(e,l,t[l]);return e},gl=(e,t)=>$l(e,il(t)),ml=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const fl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},wl=Ot((e=>{const t=()=>{const t=E(e.getTablesSchemaJson());return!At(t)||y(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=U();if(y(a,(t=>y(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=q(n,a,(()=>[J(o),U(),[0],0])),[r,s,[I]]=d,c=q(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),Q(s,o,c),d[3]++,r==J(o)})))))return t[l]={},B(n,(([e,,[,n],r],s)=>{t[l][s]=hl({[o]:e},r==x(a)?{[d]:n}:{})})),1}))?t:{}},l=()=>{const t=E(e.getValuesSchemaJson());return At(t)&&e.forEachValue(((e,l)=>{t[e]={[o]:J(l)}})),t},a=e=>Il(t(),l(),e),n=e=>ml(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return V(a(e),((e,a)=>bt(l(e,gl(hl({},fl),{filepath:"_."+t[a]})))))}));return Pt({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),hl({totalTables:l,totalRows:a,totalCells:n,totalValues:x(e.getValueIds()),jsonLength:Ct(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{wl as createTools};
|
|
1
|
+
const e=e=>typeof e,t="",l=e(t),a=e(!0),n=e(0),o="type",d="default",r="Listener",s="get",I="add",c="Ids",$="Table",i=$+"s",u=$+c,p="Row",b=p+c,C="Sorted"+p+c,h="Cell",m=h+c,g="Value",f=g+"s",w=g+c,y=(e,t)=>e.every(t),v=(e,t)=>e.sort(t),T=(e,t)=>e.forEach(t),V=(e,t)=>e.map(t),x=e=>e.length,R=e=>0==x(e),k=(e,t)=>e.filter(t),P=(e,...t)=>e.push(...t),S=e=>e.pop(),A=(e,...t)=>e.unshift(...t),O=e=>e.shift(),E=JSON.parse,D=isFinite,j=(e,t)=>e instanceof t,N=e=>null==e,L=e=>e==l||e==a,M=t=>e(t)==l,G=e=>Array.isArray(e),J=t=>{const l=e(t);return L(l)||l==n&&D(t)?l:void 0},z=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},W=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},B=(e,t)=>null==e?void 0:e.forEach(t),F=(e,t)=>null==e?void 0:e.delete(t),U=e=>new Map(e),_=(e,t)=>null==e?void 0:e.get(t),Z=(e,t)=>B(e,((e,l)=>t(l,e))),H=(e,t)=>{var l;return V([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},Q=(e,t,l)=>N(l)?(F(e,t),e):null==e?void 0:e.set(t,l),q=(e,t,l)=>(z(e,t)||Q(e,t,l()),_(e,t)),K=e=>e.toUpperCase(),X=e=>e.toLowerCase(),Y="a ",ee="A function for",te=", and registers a listener so that any changes to that result will cause a re-render",le="Callback",ae="Del",ne="Deps",oe=ne+"?: React.DependencyList",de="doRollback?: DoRollback",re="actions: () => Return, "+de,se="export",Ie="Id",ce="Invalid",$e="Json",ie=X(r),ue="?: ",pe=" | undefined",be="NonNullable",Ce="Partial",he="Props",me="Provider",ge=`Registers a ${ie} that will be called`,fe="Represents",we="rowId: "+Ie,ye="Schema",ve="Set",Te=", descending?: boolean, offset?: number, limit?: number",Ve="[]",xe="the Store",Re="Transaction",ke=X(Re),Pe="Execute a "+ke+" to make multiple mutations",Se="Explicitly starts a "+ke,Ae="Explicitly finishes a "+ke,Oe="the end of the "+ke,Ee="void",De=" => "+Ee,je="WhenSet",Ne=" when setting it",Le=Y+"string serialization of",Me=" ",Ge="Gets a callback that can ",Je="the ",ze=" the schema for",We=(e=0,l=0)=>`the ${dt[e]}content of`+(l?Me+xe:t),Be=(e=0,l,a=0)=>at[l]+Me+We(e,1)+(a?" when setting it":t),Fe=(e,t=0)=>fe+` a Row when ${t?"s":"g"}etting ${We()} the '${e}' `+$,Ue=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,_e=(e,t)=>`Calls a function for each ${e} in `+t,Ze=e=>"The props passed to a component that renders "+e,He=e=>"A function that takes "+e,Qe=(e,t=0)=>ee+" listening to changes to "+ot[e]+" in "+ot[t],qe=(e,l,a=0)=>ge+" whenever "+ot[e]+" in "+ot[l]+" change"+(a?t:"s"),Ke=e=>`the '${e}' `+$,Xe=e=>"the specified Row in "+Ke(e),Ye=(e,t=0)=>at[t]+` ${We()} `+Ke(e),et=(e,t=0)=>at[t]+` ${We()} `+Xe(e),tt=(e,t,l=0)=>at[l]+` the '${t}' Cell for `+Xe(e),lt=(e,t=0)=>at[t]+` the '${e}' Value`,at=["Gets","Checks existence of","Sets","Deletes","Sets part of",fe,"Gets "+Le,"Sets "+Le,ge+" whenever",Ge+"set",Ge+"add",Ge+"set part of",Ge+"delete","Renders","Gets "+Le+ze,"Sets"+ze,"Deletes"+ze],nt=[s,"has","set","del","set","forEach",I,t],ot=[xe,i,Je+$+Me+c,Y+$,Je+p+Me+c,Y+p,Je+h+Me+c,Y+h,"invalid Cell changes",f,Je+g+Me+c,Y+g,"invalid Value changes",Je+"sorted "+p+Me+c,Je+h+Me+c+" anywhere"],dt=[t,"tabular ","keyed value "],rt=e=>new Set(G(e)||N(e)?e:[e]),st=(e,t)=>null==e?void 0:e.add(t),It=/[^A-Za-z]+/,ct=/[^A-Za-z0-9]+/,$t=/^( *)\/\*\* *(.*?) *\*\/$/gm,it=(e,t,l)=>e.substring(t,l),ut=e=>e.includes(","),pt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return z(e,n)?pt(e,t,l,a+1):(Q(e,n,l),n)},bt=e=>e.replace($t,((e,t,l)=>{const a=77-Ct(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Ct=e=>e.length,ht=(e,l=t)=>e.join(l),mt=e=>e.flat(1e3),gt=(e,t=0)=>ht(V(e.split(ct),((e,l)=>(l>0||t?K:X)(it(e,0,1))+it(e,1)))),ft=e=>K(ht((e&&!It.test(e[0])?e:" "+e).split(ct),"_")),wt=e=>`/** ${e}. */`,yt=(...e)=>ht(k(e,(e=>e)),", "),vt=(...e)=>"{"+ht(e,"; ")+"}",Tt=(...e)=>vt(...V(e,(e=>"readonly "+e))),Vt=()=>{const e=[U(),U(),U(),U()],l=U(),a=U(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>ht(mt(e),"\n"),(t,l,...a)=>T(a,(a=>T([0,1],(n=>(null!=t?t:n)==n?st(q(e[n],l,rt),a):0)))),(e,a,n,o=t,d=1)=>pt(l,e,[a,n,o,d]),(e,t,l)=>pt(a,e,G(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>_(a,e)===t?e:pt(a,e,t),(l=0)=>V([...v(H(e[l],((e,t)=>`import {${ht(v(W(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>ut(e)!=ut(t)?ut(e)?-1:1:e>t?1:-1)),t],(e=>e.replace("{React}","React"))),()=>H(l,(([e,l,a,n],o)=>[wt(l),`${n?se+" ":t}type ${o}${a} = ${e};`,t])),()=>H(a,((e,l)=>(e=G(e)?e:[e],P(e,S(e)+";"),[`const ${l} = ${O(e)}`,e,t])))]},xt=Object,Rt=xt.keys,kt=xt.freeze,Pt=e=>j(e,xt)&&e.constructor==xt,St=(e,t)=>V(xt.entries(e),(([e,l])=>t(l,e))),At=e=>Pt(e)&&R(Rt(e)),Ot=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Et=(e,t,l)=>[t=>St(e,((e,a)=>t(a,gt(a,1),l(ft(a),`'${a}'`)))),(t,a)=>St(e[t],((e,t)=>a(t,e[o],e[d],l(ft(t),`'${t}'`),gt(t,1)))),e=>St(t,((t,a)=>e(a,t[o],t[d],l(ft(a),`'${a}'`),gt(a,1))))],Dt=(e,l,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(i,vt(...l((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,l,a)=>`'${e}'${N(a)?"?":t}: ${l}`)))+"}"))),Be(1,5)),I=e(i+je,vt(...l((e=>`'${e}'?: {[rowId: Id]: `+vt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Be(1,5,1)),c=e($+Ie,"keyof "+s,"A "+$+" Id in "+xe),g=`<TId extends ${c}>`,f=e($,be+`<${s}[TId]>`,"A "+$+" in "+xe,g),w=e($+je,be+`<${I}[TId]>`,"A "+$+" in "+xe+Ne,g),y=e(p,f+"<TId>[Id]","A "+p+" in a "+$,g),v=e(p+je,w+"<TId>[Id]","A "+p+" in a "+$+Ne,g),T=e(h+Ie,`Extract<keyof ${y}<TId>, Id>`,"A "+h+" Id in a "+p,g),V=e(h,be+`<${s}[TId]>[Id][CId]`,"A "+h+" in a "+p,`<TId extends ${c}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,h+" Ids and types in a "+p,`<TId extends ${c}, CId = ${T}<TId>>`,0),R=e(h+le,`(...[cellId, cell]: ${x}<TId>)`+De,He(Y+h+" Id, and "+h),g),k=e(p+le,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+De+") "+De,He(Y+p+" Id, and a "+h+" iterator"),g),P=e($+h+le,`(cellId: ${T}<TId>, count: number) `+De,He(Y+h+" Id, and count of how many times it appears"),g),S=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${De}] : never`,$+" Ids and callback types",`<TId = ${c}>`,0),A=e($+le,`(...[tableId, forEachRow]: ${S})`+De,He(Y+$+" Id, and a "+p+" iterator"),t),O=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,ee+" returning information about any Cell's changes during a "+ke),D=e(i+r,`(${d}, getCellChange: ${E}${pe})`+De,Qe(1)),j=e(u+r,`(${d})`+De,Qe(2)),L=e($+r,`(${d}, tableId: ${c}, getCellChange: ${E}${pe})`+De,Qe(3)),M=e($+m+r,`(${d}, tableId: ${c})`+De,Qe(14,3)),G=e(b+r,`(${d}, tableId: ${c})`+De,Qe(4,3)),J=e(C+r,"("+yt(d,"tableId: "+c,"cellId: Id"+pe,"descending: boolean","offset: number","limit: number"+pe,"sortedRowIds: Ids")+")"+De,Qe(13,3)),z=e(p+r,"("+yt(""+d,"tableId: "+c,we,`getCellChange: ${E}${pe}`)+")"+De,Qe(5,3)),W=e(m+r,"("+yt(""+d,"tableId: "+c,we)+")"+De,Qe(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${we}, cellId: CId, newCell: ${V}<TId, CId> ${pe}, oldCell: ${V}<TId, CId> ${pe}, getCellChange: ${E} ${pe}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${T}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,I,c,f,w,y,v,T,V,R,k,P,A,D,j,L,M,G,J,z,W,e(h+r,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+De,Qe(7,5)),e(ce+h+r,`(${d}, tableId: Id, ${we}, cellId: Id, invalidCells: any[])`+De,Qe(8))]},(l,a)=>{const o=l+": "+a,d=e(f,vt(...n(((e,l,a)=>`'${e}'${N(a)?"?":t}: ${l}`))),Be(2,5)),s=e(f+je,vt(...n(((e,t)=>`'${e}'?: ${t}`))),Be(2,5,1)),I=e(g+Ie,"keyof "+d,"A "+g+" Id in "+xe),c=e(g,be+`<${d}[VId]>`,"A "+g+" Id in "+xe,`<VId extends ${I}>`),$=e("ValueIdValueArray",`VId extends ${I} ? [valueId: VId, value: ${c}<VId>] : never`,g+" Ids and types in "+xe,`<VId = ${I}>`,0),i=e(g+le,`(...[valueId, value]: ${$})`+De,He(Y+g+" Id, and "+g)),u=e("GetValueChange",`(valueId: ${I}) => ValueChange`,ee+" returning information about any Value's changes during a "+ke),p=e(f+r,`(${o}, getValueChange: ${u}${pe})`+De,Qe(9)),b=e(w+r,`(${o})`+De,Qe(10)),C=e("ValueListenerArgsArray",`VId extends ${I} ? [${o}, valueId: VId, newValue: ${c}<VId> ${pe}, oldValue: ${c}<VId> ${pe}, getValueChange: ${u} ${pe}] : never`,"Value args for ValueListener",`<VId = ${I}>`,0);return[d,s,I,c,i,p,b,e(g+r,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+C+")"+De,Qe(11)),e(ce+g+r,`(${o}, valueId: Id, invalidValues: any[])`+De,Qe(12))]},(t,l)=>e(Re+r,`(${t}: ${l}, cellsTouched: boolean, valuesTouched: boolean)`+De,ee+" listening to the completion of a "+ke)],jt=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),Nt=(e,l=t)=>`fluent(() => ${jt(e,l)})`,Lt=(e,l=t,a=t)=>`store.${e}(${l?l+", ":t}proxy(listener)${a?", "+a:t})`,Mt=(e,l,n)=>{const[s,y,v,V,x,R,k,S]=Vt(),[O,E,D]=Et(e,l,x),[j,L,G]=Dt(v,O,E,D),J=U(),z=(e=0)=>H(J,(([l,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${l}): ${a} => ${n},`]:[r+d+`(${l}): ${a};`];return e||A(s,wt(o)),P(s,t),s})),B=(e,l,a,n,o,d=t)=>pt(J,e,[l,a,n,o,d]),F=(e,l,a,n,o,d=t,r=t,s=t)=>B(nt[e]+l+(4==e?Ce:t)+a,d,n,(n==X?Nt:jt)(nt[e]+(4==e?Ce:t)+a,r,e?void 0:n),o,s),q=(e,l,a,n=t,o=t,d=1,s=t)=>B(I+e+r,(n?n+", ":t)+ie+": "+l+(d?", mutator?: boolean":t),Ie,Lt(I+e+r,o,d?"mutator":t),a,s),K=`./${gt(n)}.d`,X=gt(n,1),Y=gt(X),ee=[],te=U();let ae=[],ne=[];if(y(1,K,X,`create${X} as create${X}Decl`),!At(e)){y(0,"tinybase","CellChange"),y(null,"tinybase",c);const[e,l,n,r,s,I,g,f,w,V,R,k,S,A,D,L,G,J,z,B,Z,H,ne]=j(Y,X),oe=U();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+$,r+l,fe+` the '${e}' `+$),v(t+$+je,s+l,fe+` the '${e}' `+$+Ne),v(t+p,I+l,Fe(e)),v(t+p+je,g+l,Fe(e,1)),v(t+h+Ie,f+l,`A Cell Id for the '${e}' `+$),v(t+h+le,V+l,He(`a Cell Id and value from a Row in the '${e}' `+$)),v(t+p+le,R+l,He(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+$+h+le,k+l,He(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];Q(oe,e,a),y(1,K,...a)})),y(1,K,e,l,n,f,S,A,D,L,G,J,z,B,Z,H,ne),ae=[e,l,n,f,A,D,L,G,J,z,B,Z,H,oe],T([[e],[a],[X,"tables: "+l,"tables"],[X]],(([e,l,a],n)=>F(n,t,i,e,Be(1,n),l,a))),F(0,t,u,n+Ve,Ue($,xe)),F(5,t,$,Ee,_e($,xe),"tableCallback: "+S,"tableCallback as any"),O(((e,l,n)=>{const[o,d,r,s,I,i,u,g]=_(oe,e);T([[o],[a],[X,"table: "+d,", table"],[X]],(([a,o,d=t],r)=>F(r,l,$,a,Ye(e,r),o,n+d))),F(0,l,$+m,c,Ue(h,"the whole of "+Ke(e)),t,n),F(5,l,$+h,Ee,_e($+h,"the whole of "+Ke(e)),"tableCellCallback: "+g,n+", tableCellCallback as any"),F(0,l,b,c,Ue(p,Ke(e)),t,n),F(0,l,C,c,Ue(p,Ke(e),1),"cellId?: "+I+Te,n+", cellId, descending, offset, limit"),F(5,l,p,Ee,_e(p,Ke(e)),"rowCallback: "+u,n+", rowCallback as any"),T([[r],[a],[X,", row: "+s,", row"],[X],[X,", partialRow: "+s,", partialRow"]],(([a,o=t,d=t],r)=>F(r,l,p,a,et(e,r),we+o,n+", rowId"+d))),F(6,l,p,Ie+pe,"Add a new Row to "+Ke(e),"row: "+s+", reuseIds?: boolean",n+", row, reuseIds"),F(0,l,m,I+Ve,Ue(h,Xe(e)),we,n+", rowId"),F(5,l,h,Ee,_e(h,Xe(e)),we+", cellCallback: "+i,n+", rowId, cellCallback as any"),E(e,((o,d,r,s,I)=>{const c="Map"+gt(d,1);Q(te,d,c);const i=d+(N(r)?pe:t);T([[i],[a],[X,`, cell: ${d} | `+c,", cell as any"],[X]],(([a,d=t,r=t],c)=>F(c,l+I,h,a,tt(e,o,c),we+d,n+", rowId, "+s+r))),F(1,l+I,$+h,a,at[1]+` the '${o}' Cell anywhere in `+Ke(e),t,n+", "+s)}))})),F(0,t,i+$e,$e,Be(1,6)),F(2,t,i+$e,X,Be(1,7),"tablesJson: "+$e,"tables"+$e),q(i,A,Be(1,8)+" changes"),q(u,D,qe(2,0,1)),q($,L,qe(3,0),`tableId: ${n} | null`,"tableId"),q($+m,G,qe(14,3,1),`tableId: ${n} | null`,"tableId"),q(b,J,qe(4,3,1),`tableId: ${n} | null`,"tableId"),q(C,z,qe(13,3,1),yt("tableId: TId",`cellId: ${f}<TId>`+pe,"descending: boolean","offset: number","limit: number"+pe),yt("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),q(p,B,qe(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),q(m,Z,qe(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),q(h,H,qe(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${ht(O((e=>{var l,a;return null!=(a=null==(l=_(oe,e))?void 0:l[4])?a:t}))," | ")} | null`,"tableId, rowId, cellId"),q(ce+h,ne,ge+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),y(1,K,...W(te)),P(ee,".set"+i+ye+"({",mt(O(((e,l,a)=>[`[${a}]: {`,...E(e,((e,l,a,n)=>`[${n}]: {[${x(ft(o),`'${o}'`)}]: ${x(ft(l),`'${l}'`)}${N(a)?t:`, [${x(ft(d),`'${d}'`)}]: `+(M(a)?x(ft(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(!At(l)){const[e,l,n,r,s,I,c,$,i]=L(Y,X);y(1,K,e,l,n,s,I,c,$,i),ne=[e,l,n,I,c,$],T([[e],[a],[X,"values: "+l,"values"],[X],[X,"partialValues: "+l,"partialValues"]],(([e,l,a],n)=>F(n,t,f,e,Be(2,n),l,a))),F(0,t,w,n+Ve,Ue(g,xe)),F(5,t,g,"void",_e(g,xe),"valueCallback: "+s,"valueCallback as any"),D(((e,l,n,o,d)=>{const r="Map"+gt(l,1);Q(te,l,r),T([[l],[a],[X,`value: ${l} | `+r,", value as any"],[X]],(([l,a,n=t],r)=>F(r,d,g,l,lt(e,r),a,o+n)))})),F(0,t,f+$e,$e,Be(2,6)),F(2,t,f+$e,X,Be(2,7),"valuesJson: "+$e,"values"+$e),q(f,I,Be(2,8)+" changes"),q(w,c,qe(10,0,1)),q(g,$,qe(11,0),`valueId: ${n} | null`,"valueId"),q(ce+g,i,ge+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),y(1,K,...W(te)),y(0,"tinybase","ValueChange"),P(ee,".set"+f+ye+"({",D(((e,l,a,n)=>[`[${n}]: {[${x(ft(o),`'${o}'`)}]: ${x(ft(l),`'${l}'`)}${N(a)?t:`, [${x(ft(d),`'${d}'`)}]: `+(M(a)?x(ft(a),`'${a}'`):a)}},`])),"})")}Z(te,((e,t)=>v(t,`(cell: ${e}${pe}) => `+e,`Takes a ${e} Cell value and returns another`))),y(null,"tinybase","DoRollback",Ie,"IdOrNull",$e,"Store"),F(0,t,$e,$e,Be(0,6)),F(2,t,$e,X,Be(0,7),"tablesAndValuesJson: "+$e,"tablesAndValuesJson"),F(7,t,ke,"Return",Pe,re,"actions, doRollback","<Return>"),F(7,t,"start"+Re,X,Se),F(7,t,"finish"+Re,X,Ae,de,"doRollback");const oe=G(Y,X);return q("Start"+Re,oe,ge+" just before the start of the "+ke,t,t,0),q("WillFinish"+Re,oe,ge+" just before "+Oe,t,t,0),q("DidFinish"+Re,oe,ge+" just after "+Oe,t,t,0),F(7,t,"call"+r,X,"Manually provoke a listener to be called","listenerId: Id","listenerId"),F(3,t,r,X,"Remove a listener that was previously added to "+xe,"listenerId: Id","listenerId"),B("getStore",t,"Store","store",at[0]+" the underlying Store object"),y(1,"tinybase","createStore"),y(1,K,X,`create${X} as create${X}Decl`,oe),x("store",["createStore()",...ee]),V("fluent","actions: () => Store",["actions();",`return ${Y};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Y}, ...params)`),x(Y,["{",...z(1),"}"]),[s(...R(0),...k(),se+" interface "+X+" {",...z(0),"}",t,wt(`Creates a ${X} object`),se+" function create"+X+"(): "+X+";"),s(...R(1),se+" const create"+X+": typeof create"+X+"Decl = () => {",...S(),`return Object.freeze(${Y});`,"};"),ae,ne]},Gt=e=>s+e,Jt=e=>yt(Gt(e),Gt(e)+ne),zt="debugIds?: boolean",Wt="debugIds={debugIds}",Bt="then"+oe,Ft="Parameter",Ut=": (parameter: "+Ft+", store: Store) => ",_t="const contextValue = useContext(Context);",Zt=", based on a parameter",Ht=": ",Qt="<"+Ft+",>",qt=Ft+"ized"+le+"<"+Ft+">",Kt="rowId",Xt="rowId={rowId}",Yt=", separator, debugIds",el="separator?: ReactElement | string",tl="then?: (store: Store",ll=yt(tl+")"+De,Bt),al="then, then"+ne,nl=Kt+Ht+Ie,ol="View",dl=(e,...t)=>yt(...t,ie+": "+e,ie+oe,"mutator?: boolean"),rl=(...e)=>yt(...e,ie,ie+ne,"mutator"),sl=(e,l,a,n,o)=>{const[d,s,I,y,v,T,V,x]=Vt(),[R,k,S]=Et(e,l,v),O=`./${gt(a)}.d`,E=`./${gt(a)}-ui-react.d`,D="tinybase/ui-react",j=gt(a,1),L=gt(j),M=j+"Or"+j+Ie,G=L+"Or"+j+Ie,J=L+`={${L}}`,z=U(),W=(e,l,a,n,o,d=t)=>(s(1,E,e+" as "+e+"Decl"),pt(z,e,[l,a,n,o,d])),B=(e,l,a,n,o,d=t)=>W("use"+e,l,a,n,o,d),F=(e,l,a,n,o=t,d=t,r=t,I=t,c=t)=>(s(1,D,`use${l} as use${l}Core`),B(e,yt(o,X,I),a,ne+`(${G}, use${l}Core, [`+(d||t)+(c?"], ["+c:t)+"]);",n,r)),Z=(e,t,l,a)=>W(e,t,1,l,a),Q=(e=0)=>H(z,(([l,a,n,o,d],r)=>{const s=e?[se+` const ${r}: typeof ${r}Decl = ${d}(${l}): ${1==a?"any":a} =>`,n]:[se+` function ${r}${d}(${l}): ${1==a?"ComponentReturnType":a};`];return e||A(s,wt(o)),P(s,t),s}));s(null,"tinybase",Ie,"Store",le,Ft+"ized"+le),s(0,D,"ComponentReturnType"),s(null,D,"ExtraProps"),s(0,O,j);const q=I(M,j+" | "+Ie,`Used when you need to refer to a ${j} in a React hook or component`),K=I(me+he,Tt(L+ue+j,L+`ById?: {[${L}Id: Id]: ${j}}`),`Used with the ${me} component, so that a `+j+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,E,q,K);const X=G+ue+q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${j}?, {[${L}Id: Id]: ${j}}?]>([])`),B("Create"+j,`create: () => ${j}, create`+oe,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const ee=B(j,"id?: Id",j+pe,["{",_t,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${me} component context`),ne=y("useHook",G+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${L} = ${ee}(${G} as Id);`,`return hook(...preParams, ((${G} == null || typeof ${G} == 'string')`,`? ${L} : ${G})?.getStore(), ...postParams)`]),de=y("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),re=y("wrap",yt("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),ce=v("NullComponent","() => null");if(!At(e)){const[e,l,a,o,d,g,f,w,v,T,V,x,P,S]=n;s(null,O,e,l,a,d,g,f,w,v,T,V,x,P),s(0,O,o),s(1,O,j),s(null,"tinybase",c,"IdOrNull");const A=y("tableView",`{${L}, rowComponent, getRowComponentProps`+Yt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${re}(rowIds.map((rowId) => (`,"<Row","{..."+de+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",Xt,J,Wt,"/>","))",Yt,", tableId,",");"]),D=y("getDefaultTableComponent","tableId: Id",ht(R(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+ce),M=y("getDefaultCellComponent","tableId: Id, cellId: Id",ht(R(((e,t,l)=>`tableId == ${l} ? ${ht(k(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+ce} : `)))+ce);F(i,i,e,Be(1,0)+te);const G=F(u,u,a+Ve,Ue($,xe)+te);F(ve+i+le,ve+i+le,qt,Be(1,9)+Zt,yt(Gt(i)+Ut+l,Gt(i)+oe),Jt(i),Qt,yt(tl,`tables: ${l})`+De,Bt),al),F(ae+i+le,ae+i+le,le,Be(1,12),t,t,t,ll,al);const z=I(h+he,Tt("tableId?: TId","rowId: Id","cellId?: CId",L+ue+j,zt),Ze(Y+h),`<TId extends ${a}, CId extends ${o}<TId>>`),W=I(p+he,Tt("tableId?: TId","rowId: Id",L+ue+j,"cellComponents?: {readonly [CId in "+o+`<TId>]?: ComponentType<${z}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${o}<TId>) => ExtraProps`,el,zt),Ze(Y+p),`<TId extends ${a}>`),B=I($+he,Tt("tableId?: TId",L+ue+j,`rowComponent?: ComponentType<${W}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+$),`<TId extends ${a}>`),U=I("Sorted"+$+he,Tt("tableId?: TId","cellId?: "+o+"<TId>","descending?: boolean","offset?: number","limit?: number",L+ue+j,`rowComponent?: ComponentType<${W}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+"sorted "+$),`<TId extends ${a}>`),H=I(i+he,Tt(L+ue+j,"tableComponents?: {readonly [TId in "+a+`]?: ComponentType<${B}<TId>>;}`,`getTableComponentProps?: (tableId: ${a}) => ExtraProps`,el,zt),Ze(We(1,1)));s(1,E,H,B,U,W,z),Z(i+ol,"{"+L+", tableComponents, getTableComponentProps"+Yt+"}: "+H,[re+`(${G}(${L}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+D+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${de}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",J,Wt,"/>;","}), separator)"],Be(1,13)+te),R(((e,l,a)=>{const[n,o,d,r,I]=_(S,e);s(null,O,n,o,d,r,I),F(l+$,$,n,Ye(e)+te,t,a),F(l+$+m,$+m,c,Ue(h,"the whole of "+Ke(e))+te,t,a);const i=F(l+b,b,c,Ue(p,Ke(e))+te,t,a),u=F(l+C,C,c,Ue(p,Ke(e),1)+te,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");F(l+p,p,d,et(e)+te,nl,yt(a,Kt));const g=F(l+m,m,I+Ve,Ue(h,Xe(e))+te,nl,yt(a,Kt));F(ve+l+$+le,ve+$+le,qt,Ye(e,9)+Zt,yt(Gt($)+Ut+o,Gt($)+oe),yt(a,Jt($)),Qt,yt(tl,`table: ${o})`+De,Bt),al),F(ae+l+$+le,ae+$+le,le,Ye(e,12),t,a,t,ll,al),F(ve+l+p+le,ve+p+le,qt,et(e,9)+Zt,yt(nl,Gt(p)+Ut+r,Gt(p)+oe),yt(a,Kt,Jt(p)),Qt,yt(tl,`row: ${r})`+De,Bt),al),F("Add"+l+p+le,"Add"+p+le,qt,et(e,10)+Zt,yt(Gt(p)+Ut+r,Gt(p)+oe),yt(a,Jt(p)),Qt,"then?: ("+yt(nl+pe,"store: Store","row: "+r+")"+De,"then"+oe)+", reuseRowIds?: boolean",al+", reuseRowIds"),F(ve+l+Ce+p+le,ve+Ce+p+le,qt,et(e,11)+Zt,yt(nl,Gt(Ce+p)+Ut+r,Gt(Ce+p)+oe),yt(a,Kt,Jt(Ce+p)),Qt,yt(tl,`partialRow: ${r})`+De,Bt),al),F(ae+l+p+le,ae+p+le,le,et(e,12),nl,yt(a,Kt),t,ll,al);const f=Z(l+p+ol,"{rowId, "+L+", cellComponents, getCellComponentProps"+Yt+`}: ${W}<'${e}'>`,[re+`(${g}(rowId, ${L}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+M+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${de}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,Xt,"cellId={cellId}",J,Wt,"/>;","})"+Yt+", rowId)"],et(e,13)+te);Z(l+"Sorted"+$+ol,"{cellId, descending, offset, limit, ...props}: "+U+`<'${e}'>`,A+"(props, "+u+`(cellId, descending, offset, limit, props.${L}), ${a}, ${f});`,Ye(e,13)+", sorted"+te),Z(l+$+ol,`props: ${B}<'${e}'>`,A+"(props, "+i+`(props.${L}), ${a}, ${f});`,Ye(e,13)+te),k(e,((n,o,d,r,I)=>{const c="Map"+gt(o,1);s(0,O,c),s(1,O,c);const $=F(l+I+h,h,o+(N(d)?pe:t),tt(e,n)+te,nl,yt(a,Kt,r));F(ve+l+I+h+le,ve+h+le,qt,tt(e,n,9)+Zt,yt(nl,Gt(h)+Ut+o+" | "+c,Gt(h)+oe),yt(a,Kt,r,Jt(h)),Qt,yt(tl,`cell: ${o} | ${c})`+De,Bt),al),F(ae+l+I+h+le,ae+h+le,le,tt(e,n,12),yt(nl,"forceDel?: boolean"),yt(a,Kt,r,"forceDel"),t,ll,al),Z(l+I+h+ol,`{rowId, ${L}, debugIds}: `+z+`<'${e}', '${n}'>`,[re+`('' + ${$}(rowId, `+L+`) ?? '', undefined, debugIds, ${r})`],tt(e,n,13)+te)}))}));const Q=ht(R((e=>{var l,a;return null!=(a=null==(l=_(S,e))?void 0:l[4])?a:t}))," | ");F(i+r,i+r,Ee,Be(1,8)+" changes",dl(d),rl()),F(u+r,u+r,Ee,qe(2,0,1),dl(g),rl()),F($+r,$+r,Ee,qe(3,0),dl(f,`tableId: ${a} | null`),rl("tableId")),F($+m+r,$+m+r,Ee,qe(14,3,1),dl(w,`tableId: ${a} | null`),rl("tableId")),F(b+r,b+r,Ee,qe(4,3,1),dl(v,`tableId: ${a} | null`),rl("tableId")),F(C+r,C+r,Ee,qe(13,3,1),dl(T,`tableId: ${a} | null`,"cellId: "+Q+pe,"descending: boolean","offset: number","limit: number"+pe),rl("tableId","cellId","descending","offset","limit")),F(p+r,p+r,Ee,qe(5,3),dl(V,`tableId: ${a} | null`,Kt+": IdOrNull"),rl("tableId",Kt)),F(m+r,m+r,Ee,qe(6,5,1),dl(x,`tableId: ${a} | null`,Kt+": IdOrNull"),rl("tableId",Kt)),F(h+r,h+r,Ee,qe(7,5),dl(P,`tableId: ${a} | null`,Kt+": IdOrNull",`cellId: ${Q} | null`),rl("tableId",Kt,"cellId"))}if(!At(l)){const[e,l,a,n,d,c]=o;s(null,O,...o),s(1,O,j);const $=y("getDefaultValueComponent","valueId: Id",ht(S(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+ce);F(f,f,e,Be(2,0)+te);const i=F(w,w,a+Ve,Ue(g,xe)+te);F(ve+f+le,ve+f+le,qt,Be(2,9)+Zt,yt(Gt(f)+Ut+l,Gt(f)+oe),Jt(f),Qt,yt(tl,`values: ${l})`+De,Bt),al),F(ve+Ce+f+le,ve+Ce+f+le,qt,Be(2,11)+Zt,yt(Gt(Ce+f)+Ut+l,Gt(Ce+f)+oe),Jt(Ce+f),Qt,yt(tl,`partialValues: ${l})`+De,Bt),al),F(ae+f+le,ae+f+le,le,Be(2,12),t,t,t,ll,al);const u=I(g+he,Tt("valueId?: VId",L+ue+j,zt),Ze("a Value"),`<VId extends ${a}>`),p=I(f+he,Tt(L+ue+j,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${u}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,el,zt),Ze(We(2,1)));s(1,E,p,u),Z(f+ol,"{"+L+", valueComponents, getValueComponentProps"+Yt+"}: "+p,[re+`(${i}(${L}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+$+"(valueId);","return <Value",`{...${de}(getValueComponentProps, valueId)}`,"key={valueId}",J,Wt,"/>;","}), separator)"],Be(2,13)+te),S(((e,l,a,n,o)=>{const d="Map"+gt(l,1);s(0,O,d),s(1,O,d);const r=F(o+g,g,l,lt(e)+te,t,n);F(ve+o+g+le,ve+g+le,qt,lt(e,9)+Zt,yt(Gt(g)+Ut+l+" | "+d,Gt(g)+oe),yt(n,Jt(g)),Qt,yt(tl,`value: ${l} | ${d})`+De,Bt),al),F(ae+o+g+le,ae+g+le,le,lt(e,12),t,n,t,ll,al),Z(o+g+ol,`{${L}, debugIds}: ${u}<'${e}'>`,[re+`('' + ${r}(`+L+`) ?? '', undefined, debugIds, ${n})`],lt(e,13)+te)})),F(f+r,f+r,Ee,Be(2,8)+" changes",dl(n),rl()),F(w+r,w+r,Ee,qe(10,0,1),dl(d),rl()),F(g+r,g+r,Ee,qe(11,0),dl(c,`valueId: ${a} | null`),rl("valueId"))}return Z(me,`{${L}, ${L}ById, children}: `+K+" & {children: React.ReactNode}",["{",_t,"return (","<Context."+me,"value={useMemo(",`() => [${L} ?? contextValue[0], {...contextValue[1], ...${L}ById}],`,`[${L}, ${L}ById, contextValue],`,")}>","{children}",`</Context.${me}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[d(...T(0),...V(),...Q(0)),d(...T(1),...x(),...Q(1))]},Il=(e,l,a)=>{if(At(e)&&At(l))return[t,t,t,t];const[n,o,d,r]=Mt(e,l,a);return[n,o,...sl(e,l,a,d,r)]};var cl=Object.defineProperty,$l=Object.defineProperties,il=Object.getOwnPropertyDescriptors,ul=Object.getOwnPropertySymbols,pl=Object.prototype.hasOwnProperty,bl=Object.prototype.propertyIsEnumerable,Cl=(e,t,l)=>t in e?cl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,hl=(e,t)=>{for(var l in t||(t={}))pl.call(t,l)&&Cl(e,l,t[l]);if(ul)for(var l of ul(t))bl.call(t,l)&&Cl(e,l,t[l]);return e},ml=(e,t)=>$l(e,il(t)),gl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const fl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},wl=Ot((e=>{const t=()=>{const t=E(e.getTablesSchemaJson());return!At(t)||y(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=U();if(y(a,(t=>y(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=q(n,a,(()=>[J(o),U(),[0],0])),[r,s,[I]]=d,c=q(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),Q(s,o,c),d[3]++,r==J(o)})))))return t[l]={},B(n,(([e,,[,n],r],s)=>{t[l][s]=hl({[o]:e},r==x(a)?{[d]:n}:{})})),1}))?t:{}},l=()=>{const t=E(e.getValuesSchemaJson());return At(t)&&e.forEachValue(((e,l)=>{t[e]={[o]:J(l)}})),t},a=e=>Il(t(),l(),e),n=e=>gl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return V(a(e),((e,a)=>bt(l(e,ml(hl({},fl),{filepath:"_."+t[a]})))))}));return kt({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),hl({totalTables:l,totalRows:a,totalCells:n,totalValues:x(e.getValueIds()),jsonLength:Ct(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{wl as createTools};
|
package/lib/es6/tools.js.gz
CHANGED
|
Binary file
|
package/lib/es6/ui-react.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{useContext as o}from"react";const t=e=>typeof e,r="",d=t(r),n="Ids",l="Table",s=l+"s",u=l+n,i="Row",a=i+n,c="Sorted"+i+n,I="Cell",p=I+n,v="Value",b=v+"s",g=v+n,w=(e,o)=>e.map(o),m=e=>null==e,R=(e,o,t)=>m(e)?null==t?void 0:t():o(e),C=e=>t(e)==d,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:C(e)?((e,o)=>R(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||C(e)?t:e},x=e=>P(e,0),S=e=>P(e,2),O=e=>P(e,4),T=e=>P(e,6),B=e=>P(e,8),L=e=>P(e,10),j=e=>q(e,0),M=e=>q(e,2),E=e=>q(e,4),V=e=>q(e,6),A=e=>q(e,8),D=e=>q(e,10),{useCallback:F,useEffect:z,useMemo:G,useRef:H,useState:J}=e,K=(e,o,t=[])=>{const r=G((()=>o(e)),[e,...t]);return z((()=>()=>r.destroy()),[r]),r},N=(e,o,t,r=[],d)=>{const[,n]=J(),l=F((()=>{var d,n;return null!=(n=null==(d=null==o?void 0:o["get"+e])?void 0:d.call(o,...r))?n:t}),[o,...r]),[s]=J(l),u=H(s);return G((()=>u.current=l()),[l]),Q(e,o,((...e)=>{u.current=m(d)?l():e[d],n([])}),[],r),u.current},Q=(e,o,t,r=[],d=[],...n)=>z((()=>{var r;const l=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...d,t,...n);return()=>null==o?void 0:o.delListener(l)}),[o,...d,...r,...n]),U=(e,o,t,r=[],d=y,n=[],...l)=>{const s=j(e);return F((e=>R(s,(r=>R(t(e,r),(e=>d(r["set"+o](...l,e),e)))))),[s,o,...r,...n,...l])},W=(e,o,t=y,r=[],...d)=>{const n=j(e);return F((()=>t(null==n?void 0:n["del"+o](...d))),[n,o,...r,...d])},X=(e,o,t)=>{const r=D(e);return F((()=>null==r?void 0:r[o](t)),[r,o,t])},Y=(e,o=[])=>G(e,o),Z=e=>N(s,j(e),{}),$=e=>N(u,j(e),[],[]),_=(e,o)=>N(l,j(o),{},[e]),ee=(e,o)=>N(a,j(o),[],[e]),oe=(e,o,t,r=0,d,n)=>N(c,j(n),[],[e,o,t,r,d],6),te=(e,o,t)=>N(i,j(t),{},[e,o]),re=(e,o,t)=>N(p,j(t),[],[e,o]),de=(e,o,t,r)=>N(I,j(r),void 0,[e,o,t],4),ne=e=>N(b,j(e),{}),le=e=>N(g,j(e),[],[]),se=(e,o)=>N(v,j(o),void 0,[e]),ue=(e,o,t,r,d)=>U(t,s,e,o,r,d),ie=(e,o,t,r,d,n)=>U(r,l,o,t,d,n,e),ae=(e,o,t,r,d,n,l)=>U(d,i,t,r,n,l,e,o),ce=(e,o,t=[],r,d=y,n=[],l=!0)=>{const s=j(r);return F((t=>R(s,(r=>R(o(t,r),(o=>d(r.addRow(e,o,l),r,o)))))),[s,e,...t,...n,l])},Ie=(e,o,t,r,d,n,l)=>U(d,"PartialRow",t,r,n,l,e,o),pe=(e,o,t,r,d,n,l,s)=>U(n,I,r,d,l,s,e,o,t),ve=(e,o,t,r,d)=>U(t,b,e,o,r,d),be=(e,o,t,r,d)=>U(t,"PartialValues",e,o,r,d),ge=(e,o,t,r,d,n)=>U(r,v,o,t,d,n,e),we=(e,o,t)=>W(e,s,o,t),me=(e,o,t,r)=>W(o,l,t,r,e),Re=(e,o,t,r,d)=>W(t,i,r,d,e,o),Ce=(e,o,t,r,d,n,l)=>W(d,I,n,l,e,o,t,r),ye=(e,o,t)=>W(e,b,o,t),ke=(e,o,t,r)=>W(o,v,t,r,e),he=(e,o,t,r)=>Q(s,j(r),e,o,[],t),fe=(e,o,t,r)=>Q(u,j(r),e,o,[],t),Pe=(e,o,t,r,d)=>Q(l,j(d),o,t,[e],r),qe=(e,o,t,r,d)=>Q(a,j(d),o,t,[e],r),xe=(e,o,t,r,d,n,l,s,u)=>Q(c,j(u),n,l,[e,o,t,r,d],s),Se=(e,o,t,r,d,n)=>Q(i,j(n),t,r,[e,o],d),Oe=(e,o,t,r,d,n)=>Q(p,j(n),t,r,[e,o],d),Te=(e,o,t,r,d,n,l)=>Q(I,j(l),r,d,[e,o,t],n),Be=(e,o,t,r)=>Q(b,j(r),e,o,[],t),Le=(e,o,t,r)=>Q(g,j(r),e,o,[],t),je=(e,o,t,r,d)=>Q(v,j(d),o,t,[e],r),Me=(e,o,t)=>K(e,o,t),Ee=(e,o)=>N("Metric",M(o),void 0,[e]),Ve=(e,o,t,r)=>Q("Metric",M(r),o,t,[e]),Ae=(e,o,t)=>K(e,o,t),De=(e,o)=>N("SliceIds",E(o),[],[e]),Fe=(e,o,t)=>N("SliceRowIds",E(t),[],[e,o]),ze=(e,o,t,r)=>Q("SliceIds",E(r),o,t,[e]),Ge=(e,o,t,r,d)=>Q("SliceRowIds",E(d),t,r,[e,o]),He=(e,o,t)=>K(e,o,t),Je=(e,o,t)=>N("RemoteRowId",V(t),void 0,[e,o]),Ke=(e,o,t)=>N("LocalRowIds",V(t),[],[e,o]),Ne=(e,o,t)=>N("LinkedRowIds",V(t),[],[e,o]),Qe=(e,o,t,r,d)=>Q("RemoteRowId",V(d),t,r,[e,o]),Ue=(e,o,t,r,d)=>Q("LocalRowIds",V(d),t,r,[e,o]),We=(e,o,t,r,d)=>Q("LinkedRowIds",V(d),t,r,[e,o]),Xe=(e,o,t)=>K(e,o,t),Ye=(e,o)=>N("ResultTable",A(o),{},[e]),Ze=(e,o)=>N("ResultRowIds",A(o),[],[e]),$e=(e,o,t,r=0,d,n)=>N("ResultSortedRowIds",A(n),[],[e,o,t,r,d],6),_e=(e,o,t)=>N("ResultRow",A(t),{},[e,o]),eo=(e,o,t)=>N("ResultCellIds",A(t),[],[e,o]),oo=(e,o,t,r)=>N("ResultCell",A(r),void 0,[e,o,t]),to=(e,o,t,r)=>Q("ResultTable",A(r),o,t,[e]),ro=(e,o,t,r)=>Q("ResultRowIds",A(r),o,t,[e]),no=(e,o,t,r,d,n,l,s)=>Q("ResultSortedRowIds",A(s),n,l,[e,o,t,r,d]),lo=(e,o,t,r,d)=>Q("ResultRow",A(d),t,r,[e,o]),so=(e,o,t,r,d)=>Q("ResultCellIds",A(d),t,r,[e,o]),uo=(e,o,t,r,d,n)=>Q("ResultCell",A(n),r,d,[e,o,t]),io=(e,o,t)=>K(e,o,t),ao=e=>N("CheckpointIds",D(e),[[],void 0,[]]),co=(e,o)=>N("Checkpoint",D(o),void 0,[e]),Io=(e=y,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>{const d=e(o);r(t.addCheckpoint(d),t,d)}))),[n,...o,...d])},po=e=>X(e,"goBackward"),vo=e=>X(e,"goForward"),bo=(e,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>R(e(o),(e=>r(t.goTo(e),e)))))),[n,...o,...d])},go=e=>{var o;const t=D(e),[d,n]=ao(t);return[(l=d,!(0==(e=>e.length)(l))),po(t),n,null!=(o=R(n,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var l},wo=e=>{var o;const t=D(e),[,,[d]]=ao(t);return[!m(d),vo(t),d,null!=(o=R(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},mo=(e,o,t)=>Q("CheckpointIds",D(t),e,o),Ro=(e,o,t,r)=>Q("Checkpoint",D(r),o,t,[e]),Co=(e,o,t=[],r,d=[])=>{const[,n]=J(),l=G((()=>o(e)),[e,...t]);return z((()=>{var e;return e=function*(){yield null==r?void 0:r(l),n(1)},new Promise(((o,t)=>{var r=o=>{try{n(e.next(o))}catch(e){t(e)}},d=o=>{try{n(e.throw(o))}catch(e){t(e)}},n=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,d);n((e=e.apply(void 0,null)).next())})),()=>{l.destroy()}}),[l,...d]),l};var yo=Object.defineProperty,ko=Object.defineProperties,ho=Object.getOwnPropertyDescriptors,fo=Object.getOwnPropertySymbols,Po=Object.prototype.hasOwnProperty,qo=Object.prototype.propertyIsEnumerable,xo=(e,o,t)=>o in e?yo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,So=(e,o)=>{for(var t in o||(o={}))Po.call(o,t)&&xo(e,t,o[t]);if(fo)for(var t of fo(o))qo.call(o,t)&&xo(e,t,o[t]);return e},Oo=(e,o)=>ko(e,ho(o)),To=(e,o)=>{var t={};for(var r in e)Po.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&fo)for(var r of fo(e))o.indexOf(r)<0&&qo.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Bo,useMemo:Lo}=e,jo=({tableId:e,store:o,rowComponent:t=Ho,getRowComponentProps:r,separator:d,debugIds:n},l)=>zo(w(l,(d=>Bo(t,Oo(So({},Do(r,d)),{key:d,tableId:e,rowId:d,store:o,debugIds:n})))),d,n,e),Mo=({queryId:e,queries:o,resultRowComponent:t=ot,getResultRowComponentProps:r,separator:d,debugIds:n},l)=>zo(w(l,(d=>Bo(t,Oo(So({},Do(r,d)),{key:d,queryId:e,rowId:d,queries:o,debugIds:n})))),d,n,e),Eo=e=>{const o=V(e);return[o,null==o?void 0:o.getStore()]},Vo=({relationshipId:e,relationships:o,rowComponent:t=Ho,getRowComponentProps:r,separator:d,debugIds:n},l,s)=>{const[u,i]=Eo(o),a=null==u?void 0:u.getLocalTableId(e),c=l(e,s,u);return zo(w(c,(e=>Bo(t,Oo(So({},Do(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:n})))),d,n,s)},Ao=e=>({checkpoints:o,checkpointComponent:t=dt,getCheckpointComponentProps:r,separator:d,debugIds:n})=>{const l=D(o);return zo(w(e(ao(l)),(e=>Bo(t,Oo(So({},Do(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:n})))),d)},Do=(e,o)=>m(e)?{}:e(o),Fo=({store:e,storesById:t,metrics:r,metricsById:d,indexes:n,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=o(f);return Bo(f.Provider,{value:Lo((()=>[null!=e?e:v[0],So(So({},v[1]),t),null!=r?r:v[2],So(So({},v[3]),d),null!=n?n:v[4],So(So({},v[5]),l),null!=s?s:v[6],So(So({},v[7]),u),null!=i?i:v[8],So(So({},v[9]),a),null!=c?c:v[10],So(So({},v[11]),I)]),[e,t,r,d,n,l,s,u,i,a,c,I,v])},p)},zo=(e,o,t,r)=>{const d=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",d,"}"]:d},Go=({tableId:e,rowId:o,cellId:t,store:d,debugIds:n})=>{var l;return zo(r+(null!=(l=de(e,o,t,d))?l:r),void 0,n,t)},Ho=({tableId:e,rowId:o,store:t,cellComponent:r=Go,getCellComponentProps:d,separator:n,debugIds:l})=>zo(w(re(e,o,t),(n=>Bo(r,Oo(So({},Do(d,n)),{key:n,tableId:e,rowId:o,cellId:n,store:t,debugIds:l})))),n,l,o),Jo=e=>jo(e,ee(e.tableId,e.store)),Ko=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=To(o,["cellId","descending","offset","limit"]);return jo(l,oe(l.tableId,t,r,d,n,l.store))},No=({store:e,tableComponent:o=Jo,getTableComponentProps:t,separator:r,debugIds:d})=>zo(w($(e),(r=>Bo(o,Oo(So({},Do(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Qo=({valueId:e,store:o,debugIds:t})=>{var d;return zo(r+(null!=(d=se(e,o))?d:r),void 0,t,e)},Uo=({store:e,valueComponent:o=Qo,getValueComponentProps:t,separator:r,debugIds:d})=>zo(w(le(e),(r=>Bo(o,Oo(So({},Do(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Wo=({metricId:e,metrics:o,debugIds:t})=>{var d;return zo(null!=(d=Ee(e,o))?d:r,void 0,t,e)},Xo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Ho,getRowComponentProps:d,separator:n,debugIds:l})=>{const s=E(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=Fe(e,o,s);return zo(w(a,(e=>Bo(r,Oo(So({},Do(d,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),n,l,o)},Yo=({indexId:e,indexes:o,sliceComponent:t=Xo,getSliceComponentProps:r,separator:d,debugIds:n})=>zo(w(De(e,o),(d=>Bo(t,Oo(So({},Do(r,d)),{key:d,indexId:e,sliceId:d,indexes:o,debugIds:n})))),d,n,e),Zo=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Ho,getRowComponentProps:d,debugIds:n})=>{const[l,s]=Eo(t),u=null==l?void 0:l.getRemoteTableId(e),i=Je(e,o,l);return zo(m(u)||m(i)?null:Bo(r,Oo(So({},Do(d,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:n})),void 0,n,o)},$o=e=>Vo(e,Ke,e.remoteRowId),_o=e=>Vo(e,Ne,e.firstRowId),et=({queryId:e,rowId:o,cellId:t,queries:d,debugIds:n})=>{var l;return zo(r+(null!=(l=oo(e,o,t,d))?l:r),void 0,n,t)},ot=({queryId:e,rowId:o,queries:t,resultCellComponent:r=et,getResultCellComponentProps:d,separator:n,debugIds:l})=>zo(w(eo(e,o,t),(n=>Bo(r,Oo(So({},Do(d,n)),{key:n,queryId:e,rowId:o,cellId:n,queries:t,debugIds:l})))),n,l,o),tt=e=>Mo(e,Ze(e.queryId,e.queries)),rt=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=To(o,["cellId","descending","offset","limit"]);return Mo(l,$e(l.queryId,t,r,d,n,l.queries))},dt=({checkpoints:e,checkpointId:o,debugIds:t})=>{var d;return zo(null!=(d=co(o,e))?d:r,void 0,t,o)},nt=Ao((e=>e[0])),lt=Ao((e=>m(e[1])?[]:[e[1]])),st=Ao((e=>e[2]));export{nt as BackwardCheckpointsView,Go as CellView,dt as CheckpointView,lt as CurrentCheckpointView,st as ForwardCheckpointsView,Yo as IndexView,_o as LinkedRowsView,$o as LocalRowsView,Wo as MetricView,Fo as Provider,Zo as RemoteRowView,et as ResultCellView,ot as ResultRowView,rt as ResultSortedTableView,tt as ResultTableView,Ho as RowView,Xo as SliceView,Ko as SortedTableView,Jo as TableView,No as TablesView,Qo as ValueView,Uo as ValuesView,jo as tableView,ce as useAddRowCallback,de as useCell,re as useCellIds,Oe as useCellIdsListener,Te as useCellListener,co as useCheckpoint,ao as useCheckpointIds,mo as useCheckpointIdsListener,Ro as useCheckpointListener,L as useCheckpoints,io as useCreateCheckpoints,Ae as useCreateIndexes,Me as useCreateMetrics,Co as useCreatePersister,Xe as useCreateQueries,He as useCreateRelationships,Y as useCreateStore,Ce as useDelCellCallback,Re as useDelRowCallback,me as useDelTableCallback,we as useDelTablesCallback,ke as useDelValueCallback,ye as useDelValuesCallback,po as useGoBackwardCallback,vo as useGoForwardCallback,bo as useGoToCallback,O as useIndexes,Ne as useLinkedRowIds,We as useLinkedRowIdsListener,Ke as useLocalRowIds,Ue as useLocalRowIdsListener,Ee as useMetric,Ve as useMetricListener,S as useMetrics,B as useQueries,wo as useRedoInformation,T as useRelationships,Je as useRemoteRowId,Qe as useRemoteRowIdListener,oo as useResultCell,eo as useResultCellIds,so as useResultCellIdsListener,uo as useResultCellListener,_e as useResultRow,Ze as useResultRowIds,ro as useResultRowIdsListener,lo as useResultRowListener,$e as useResultSortedRowIds,no as useResultSortedRowIdsListener,Ye as useResultTable,to as useResultTableListener,te as useRow,ee as useRowIds,qe as useRowIdsListener,Se as useRowListener,pe as useSetCellCallback,Io as useSetCheckpointCallback,Ie as useSetPartialRowCallback,be as useSetPartialValuesCallback,ae as useSetRowCallback,ie as useSetTableCallback,ue as useSetTablesCallback,ge as useSetValueCallback,ve as useSetValuesCallback,De as useSliceIds,ze as useSliceIdsListener,Fe as useSliceRowIds,Ge as useSliceRowIdsListener,oe as useSortedRowIds,xe as useSortedRowIdsListener,x as useStore,_ as useTable,$ as useTableIds,fe as useTableIdsListener,Pe as useTableListener,Z as useTables,he as useTablesListener,go as useUndoInformation,se as useValue,le as useValueIds,Le as useValueIdsListener,je as useValueListener,ne as useValues,Be as useValuesListener};
|
|
1
|
+
import e,{useContext as o}from"react";const t=e=>typeof e,r="",d=t(r),n="Ids",l="Table",s=l+"s",u=l+n,i="Row",a=i+n,c="Sorted"+i+n,I="Cell",p=I+n,v="Value",b=v+"s",g=v+n,w=(e,o)=>e.map(o),m=e=>null==e,R=(e,o,t)=>m(e)?null==t?void 0:t():o(e),C=e=>t(e)==d,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:C(e)?((e,o)=>R(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||C(e)?t:e},x=e=>P(e,0),S=e=>P(e,2),O=e=>P(e,4),T=e=>P(e,6),B=e=>P(e,8),L=e=>P(e,10),j=e=>q(e,0),M=e=>q(e,2),E=e=>q(e,4),V=e=>q(e,6),A=e=>q(e,8),D=e=>q(e,10),{useCallback:F,useEffect:z,useMemo:G,useRef:H,useState:J}=e,K=(e,o,t=[])=>{const r=G((()=>o(e)),[e,...t]);return z((()=>()=>r.destroy()),[r]),r},N=(e,o,t,r=[],d)=>{const[,n]=J(),l=F((()=>{var d,n;return null!=(n=null==(d=null==o?void 0:o["get"+e])?void 0:d.call(o,...r))?n:t}),[o,...r]),[s]=J(l),u=H(s);return G((()=>u.current=l()),[l]),Q(e,o,((...e)=>{u.current=m(d)?l():e[d],n([])}),[],r),u.current},Q=(e,o,t,r=[],d=[],...n)=>z((()=>{var r;const l=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...d,t,...n);return()=>null==o?void 0:o.delListener(l)}),[o,...d,...r,...n]),U=(e,o,t,r=[],d=y,n=[],...l)=>{const s=j(e);return F((e=>R(s,(r=>R(t(e,r),(e=>d(r["set"+o](...l,e),e)))))),[s,o,...r,...n,...l])},W=(e,o,t=y,r=[],...d)=>{const n=j(e);return F((()=>t(null==n?void 0:n["del"+o](...d))),[n,o,...r,...d])},X=(e,o,t)=>{const r=D(e);return F((()=>null==r?void 0:r[o](t)),[r,o,t])},Y=(e,o=[])=>G(e,o),Z=e=>N(s,j(e),{}),$=e=>N(u,j(e),[],[]),_=(e,o)=>N(l,j(o),{},[e]),ee=(e,o)=>N(l+p,j(o),[],[e]),oe=(e,o)=>N(a,j(o),[],[e]),te=(e,o,t,r=0,d,n)=>N(c,j(n),[],[e,o,t,r,d],6),re=(e,o,t)=>N(i,j(t),{},[e,o]),de=(e,o,t)=>N(p,j(t),[],[e,o]),ne=(e,o,t,r)=>N(I,j(r),void 0,[e,o,t],4),le=e=>N(b,j(e),{}),se=e=>N(g,j(e),[],[]),ue=(e,o)=>N(v,j(o),void 0,[e]),ie=(e,o,t,r,d)=>U(t,s,e,o,r,d),ae=(e,o,t,r,d,n)=>U(r,l,o,t,d,n,e),ce=(e,o,t,r,d,n,l)=>U(d,i,t,r,n,l,e,o),Ie=(e,o,t=[],r,d=y,n=[],l=!0)=>{const s=j(r);return F((t=>R(s,(r=>R(o(t,r),(o=>d(r.addRow(e,o,l),r,o)))))),[s,e,...t,...n,l])},pe=(e,o,t,r,d,n,l)=>U(d,"PartialRow",t,r,n,l,e,o),ve=(e,o,t,r,d,n,l,s)=>U(n,I,r,d,l,s,e,o,t),be=(e,o,t,r,d)=>U(t,b,e,o,r,d),ge=(e,o,t,r,d)=>U(t,"PartialValues",e,o,r,d),we=(e,o,t,r,d,n)=>U(r,v,o,t,d,n,e),me=(e,o,t)=>W(e,s,o,t),Re=(e,o,t,r)=>W(o,l,t,r,e),Ce=(e,o,t,r,d)=>W(t,i,r,d,e,o),ye=(e,o,t,r,d,n,l)=>W(d,I,n,l,e,o,t,r),ke=(e,o,t)=>W(e,b,o,t),he=(e,o,t,r)=>W(o,v,t,r,e),fe=(e,o,t,r)=>Q(s,j(r),e,o,[],t),Pe=(e,o,t,r)=>Q(u,j(r),e,o,[],t),qe=(e,o,t,r,d)=>Q(l,j(d),o,t,[e],r),xe=(e,o,t,r,d)=>Q(l+p,j(d),o,t,[e],r),Se=(e,o,t,r,d)=>Q(a,j(d),o,t,[e],r),Oe=(e,o,t,r,d,n,l,s,u)=>Q(c,j(u),n,l,[e,o,t,r,d],s),Te=(e,o,t,r,d,n)=>Q(i,j(n),t,r,[e,o],d),Be=(e,o,t,r,d,n)=>Q(p,j(n),t,r,[e,o],d),Le=(e,o,t,r,d,n,l)=>Q(I,j(l),r,d,[e,o,t],n),je=(e,o,t,r)=>Q(b,j(r),e,o,[],t),Me=(e,o,t,r)=>Q(g,j(r),e,o,[],t),Ee=(e,o,t,r,d)=>Q(v,j(d),o,t,[e],r),Ve=(e,o,t)=>K(e,o,t),Ae=(e,o)=>N("Metric",M(o),void 0,[e]),De=(e,o,t,r)=>Q("Metric",M(r),o,t,[e]),Fe=(e,o,t)=>K(e,o,t),ze=(e,o)=>N("SliceIds",E(o),[],[e]),Ge=(e,o,t)=>N("SliceRowIds",E(t),[],[e,o]),He=(e,o,t,r)=>Q("SliceIds",E(r),o,t,[e]),Je=(e,o,t,r,d)=>Q("SliceRowIds",E(d),t,r,[e,o]),Ke=(e,o,t)=>K(e,o,t),Ne=(e,o,t)=>N("RemoteRowId",V(t),void 0,[e,o]),Qe=(e,o,t)=>N("LocalRowIds",V(t),[],[e,o]),Ue=(e,o,t)=>N("LinkedRowIds",V(t),[],[e,o]),We=(e,o,t,r,d)=>Q("RemoteRowId",V(d),t,r,[e,o]),Xe=(e,o,t,r,d)=>Q("LocalRowIds",V(d),t,r,[e,o]),Ye=(e,o,t,r,d)=>Q("LinkedRowIds",V(d),t,r,[e,o]),Ze=(e,o,t)=>K(e,o,t),$e=(e,o)=>N("ResultTable",A(o),{},[e]),_e=(e,o)=>N("ResultRowIds",A(o),[],[e]),eo=(e,o,t,r=0,d,n)=>N("ResultSortedRowIds",A(n),[],[e,o,t,r,d],6),oo=(e,o,t)=>N("ResultRow",A(t),{},[e,o]),to=(e,o,t)=>N("ResultCellIds",A(t),[],[e,o]),ro=(e,o,t,r)=>N("ResultCell",A(r),void 0,[e,o,t]),no=(e,o,t,r)=>Q("ResultTable",A(r),o,t,[e]),lo=(e,o,t,r)=>Q("ResultRowIds",A(r),o,t,[e]),so=(e,o,t,r,d,n,l,s)=>Q("ResultSortedRowIds",A(s),n,l,[e,o,t,r,d]),uo=(e,o,t,r,d)=>Q("ResultRow",A(d),t,r,[e,o]),io=(e,o,t,r,d)=>Q("ResultCellIds",A(d),t,r,[e,o]),ao=(e,o,t,r,d,n)=>Q("ResultCell",A(n),r,d,[e,o,t]),co=(e,o,t)=>K(e,o,t),Io=e=>N("CheckpointIds",D(e),[[],void 0,[]]),po=(e,o)=>N("Checkpoint",D(o),void 0,[e]),vo=(e=y,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>{const d=e(o);r(t.addCheckpoint(d),t,d)}))),[n,...o,...d])},bo=e=>X(e,"goBackward"),go=e=>X(e,"goForward"),wo=(e,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>R(e(o),(e=>r(t.goTo(e),e)))))),[n,...o,...d])},mo=e=>{var o;const t=D(e),[d,n]=Io(t);return[(l=d,!(0==(e=>e.length)(l))),bo(t),n,null!=(o=R(n,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var l},Ro=e=>{var o;const t=D(e),[,,[d]]=Io(t);return[!m(d),go(t),d,null!=(o=R(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},Co=(e,o,t)=>Q("CheckpointIds",D(t),e,o),yo=(e,o,t,r)=>Q("Checkpoint",D(r),o,t,[e]),ko=(e,o,t=[],r,d=[])=>{const[,n]=J(),l=G((()=>o(e)),[e,...t]);return z((()=>{var e;return e=function*(){yield null==r?void 0:r(l),n(1)},new Promise(((o,t)=>{var r=o=>{try{n(e.next(o))}catch(e){t(e)}},d=o=>{try{n(e.throw(o))}catch(e){t(e)}},n=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,d);n((e=e.apply(void 0,null)).next())})),()=>{l.destroy()}}),[l,...d]),l};var ho=Object.defineProperty,fo=Object.defineProperties,Po=Object.getOwnPropertyDescriptors,qo=Object.getOwnPropertySymbols,xo=Object.prototype.hasOwnProperty,So=Object.prototype.propertyIsEnumerable,Oo=(e,o,t)=>o in e?ho(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,To=(e,o)=>{for(var t in o||(o={}))xo.call(o,t)&&Oo(e,t,o[t]);if(qo)for(var t of qo(o))So.call(o,t)&&Oo(e,t,o[t]);return e},Bo=(e,o)=>fo(e,Po(o)),Lo=(e,o)=>{var t={};for(var r in e)xo.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&qo)for(var r of qo(e))o.indexOf(r)<0&&So.call(e,r)&&(t[r]=e[r]);return t};const{createElement:jo,useMemo:Mo}=e,Eo=({tableId:e,store:o,rowComponent:t=Ko,getRowComponentProps:r,separator:d,debugIds:n},l)=>Ho(w(l,(d=>jo(t,Bo(To({},zo(r,d)),{key:d,tableId:e,rowId:d,store:o,debugIds:n})))),d,n,e),Vo=({queryId:e,queries:o,resultRowComponent:t=rt,getResultRowComponentProps:r,separator:d,debugIds:n},l)=>Ho(w(l,(d=>jo(t,Bo(To({},zo(r,d)),{key:d,queryId:e,rowId:d,queries:o,debugIds:n})))),d,n,e),Ao=e=>{const o=V(e);return[o,null==o?void 0:o.getStore()]},Do=({relationshipId:e,relationships:o,rowComponent:t=Ko,getRowComponentProps:r,separator:d,debugIds:n},l,s)=>{const[u,i]=Ao(o),a=null==u?void 0:u.getLocalTableId(e),c=l(e,s,u);return Ho(w(c,(e=>jo(t,Bo(To({},zo(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:n})))),d,n,s)},Fo=e=>({checkpoints:o,checkpointComponent:t=lt,getCheckpointComponentProps:r,separator:d,debugIds:n})=>{const l=D(o);return Ho(w(e(Io(l)),(e=>jo(t,Bo(To({},zo(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:n})))),d)},zo=(e,o)=>m(e)?{}:e(o),Go=({store:e,storesById:t,metrics:r,metricsById:d,indexes:n,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=o(f);return jo(f.Provider,{value:Mo((()=>[null!=e?e:v[0],To(To({},v[1]),t),null!=r?r:v[2],To(To({},v[3]),d),null!=n?n:v[4],To(To({},v[5]),l),null!=s?s:v[6],To(To({},v[7]),u),null!=i?i:v[8],To(To({},v[9]),a),null!=c?c:v[10],To(To({},v[11]),I)]),[e,t,r,d,n,l,s,u,i,a,c,I,v])},p)},Ho=(e,o,t,r)=>{const d=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",d,"}"]:d},Jo=({tableId:e,rowId:o,cellId:t,store:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=ne(e,o,t,d))?l:r),void 0,n,t)},Ko=({tableId:e,rowId:o,store:t,cellComponent:r=Jo,getCellComponentProps:d,separator:n,debugIds:l})=>Ho(w(de(e,o,t),(n=>jo(r,Bo(To({},zo(d,n)),{key:n,tableId:e,rowId:o,cellId:n,store:t,debugIds:l})))),n,l,o),No=e=>Eo(e,oe(e.tableId,e.store)),Qo=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=Lo(o,["cellId","descending","offset","limit"]);return Eo(l,te(l.tableId,t,r,d,n,l.store))},Uo=({store:e,tableComponent:o=No,getTableComponentProps:t,separator:r,debugIds:d})=>Ho(w($(e),(r=>jo(o,Bo(To({},zo(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Wo=({valueId:e,store:o,debugIds:t})=>{var d;return Ho(r+(null!=(d=ue(e,o))?d:r),void 0,t,e)},Xo=({store:e,valueComponent:o=Wo,getValueComponentProps:t,separator:r,debugIds:d})=>Ho(w(se(e),(r=>jo(o,Bo(To({},zo(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Yo=({metricId:e,metrics:o,debugIds:t})=>{var d;return Ho(null!=(d=Ae(e,o))?d:r,void 0,t,e)},Zo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Ko,getRowComponentProps:d,separator:n,debugIds:l})=>{const s=E(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=Ge(e,o,s);return Ho(w(a,(e=>jo(r,Bo(To({},zo(d,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),n,l,o)},$o=({indexId:e,indexes:o,sliceComponent:t=Zo,getSliceComponentProps:r,separator:d,debugIds:n})=>Ho(w(ze(e,o),(d=>jo(t,Bo(To({},zo(r,d)),{key:d,indexId:e,sliceId:d,indexes:o,debugIds:n})))),d,n,e),_o=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Ko,getRowComponentProps:d,debugIds:n})=>{const[l,s]=Ao(t),u=null==l?void 0:l.getRemoteTableId(e),i=Ne(e,o,l);return Ho(m(u)||m(i)?null:jo(r,Bo(To({},zo(d,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:n})),void 0,n,o)},et=e=>Do(e,Qe,e.remoteRowId),ot=e=>Do(e,Ue,e.firstRowId),tt=({queryId:e,rowId:o,cellId:t,queries:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=ro(e,o,t,d))?l:r),void 0,n,t)},rt=({queryId:e,rowId:o,queries:t,resultCellComponent:r=tt,getResultCellComponentProps:d,separator:n,debugIds:l})=>Ho(w(to(e,o,t),(n=>jo(r,Bo(To({},zo(d,n)),{key:n,queryId:e,rowId:o,cellId:n,queries:t,debugIds:l})))),n,l,o),dt=e=>Vo(e,_e(e.queryId,e.queries)),nt=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=Lo(o,["cellId","descending","offset","limit"]);return Vo(l,eo(l.queryId,t,r,d,n,l.queries))},lt=({checkpoints:e,checkpointId:o,debugIds:t})=>{var d;return Ho(null!=(d=po(o,e))?d:r,void 0,t,o)},st=Fo((e=>e[0])),ut=Fo((e=>m(e[1])?[]:[e[1]])),it=Fo((e=>e[2]));export{st as BackwardCheckpointsView,Jo as CellView,lt as CheckpointView,ut as CurrentCheckpointView,it as ForwardCheckpointsView,$o as IndexView,ot as LinkedRowsView,et as LocalRowsView,Yo as MetricView,Go as Provider,_o as RemoteRowView,tt as ResultCellView,rt as ResultRowView,nt as ResultSortedTableView,dt as ResultTableView,Ko as RowView,Zo as SliceView,Qo as SortedTableView,No as TableView,Uo as TablesView,Wo as ValueView,Xo as ValuesView,Eo as tableView,Ie as useAddRowCallback,ne as useCell,de as useCellIds,Be as useCellIdsListener,Le as useCellListener,po as useCheckpoint,Io as useCheckpointIds,Co as useCheckpointIdsListener,yo as useCheckpointListener,L as useCheckpoints,co as useCreateCheckpoints,Fe as useCreateIndexes,Ve as useCreateMetrics,ko as useCreatePersister,Ze as useCreateQueries,Ke as useCreateRelationships,Y as useCreateStore,ye as useDelCellCallback,Ce as useDelRowCallback,Re as useDelTableCallback,me as useDelTablesCallback,he as useDelValueCallback,ke as useDelValuesCallback,bo as useGoBackwardCallback,go as useGoForwardCallback,wo as useGoToCallback,O as useIndexes,Ue as useLinkedRowIds,Ye as useLinkedRowIdsListener,Qe as useLocalRowIds,Xe as useLocalRowIdsListener,Ae as useMetric,De as useMetricListener,S as useMetrics,B as useQueries,Ro as useRedoInformation,T as useRelationships,Ne as useRemoteRowId,We as useRemoteRowIdListener,ro as useResultCell,to as useResultCellIds,io as useResultCellIdsListener,ao as useResultCellListener,oo as useResultRow,_e as useResultRowIds,lo as useResultRowIdsListener,uo as useResultRowListener,eo as useResultSortedRowIds,so as useResultSortedRowIdsListener,$e as useResultTable,no as useResultTableListener,re as useRow,oe as useRowIds,Se as useRowIdsListener,Te as useRowListener,ve as useSetCellCallback,vo as useSetCheckpointCallback,pe as useSetPartialRowCallback,ge as useSetPartialValuesCallback,ce as useSetRowCallback,ae as useSetTableCallback,ie as useSetTablesCallback,we as useSetValueCallback,be as useSetValuesCallback,ze as useSliceIds,He as useSliceIdsListener,Ge as useSliceRowIds,Je as useSliceRowIdsListener,te as useSortedRowIds,Oe as useSortedRowIdsListener,x as useStore,_ as useTable,ee as useTableCellIds,xe as useTableCellIdsListener,$ as useTableIds,Pe as useTableIdsListener,qe as useTableListener,Z as useTables,fe as useTablesListener,mo as useUndoInformation,ue as useValue,se as useValueIds,Me as useValueIdsListener,Ee as useValueListener,le as useValues,je as useValuesListener};
|
package/lib/es6/ui-react.js.gz
CHANGED
|
Binary file
|
package/lib/store.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",s=e(t),n=e(!0),a=e(0),l=e(e),r="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",b=T+c,S=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)==l,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),(l=>{if(a>R(t)-2)return n?.(l)&&W(e,t[a]),l;const r=H(l,t,s,n,a+1);return k(l)&&W(e,t[a]),r})),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))),le=e=>{return te(e)&&(t=Z(e),0==R(t));var t},re=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)||le(e)||_(e)?(s?.(),!1):(ae(e,((s,n)=>{t(s,n)||ne(e,n)})),!le(e)),de=(e,t,s)=>W(e,t,x(e,t)==-s?void 0:s),he=()=>{let e,s,n,l,c=0;const I=P(),p=P(),U=P(),Y=P(),Z=P(),_=P(),te=P(),fe=P(),ge=P(),Te=P(),Ve=P(),be=P(),Se=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(),l=P();return[(e,a,r,o=[],c=(()=>[]))=>{s??=Ut;const i=n(1);return W(l,i,[e,a,r,o,c]),Q(H(a,r??[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(l,e)[0](s,...n??[],...a))))),e=>E(x(l,e),(([,s,n])=>(H(s,n??[t],void 0,(t=>(N(t,e),k(t)?1:0))),W(l,e),a(e),n))),e=>E(x(l,e),(([e,,t=[],n,a])=>{const l=(...r)=>{const o=R(r);o==R(t)?e(s,...r,...a(r)):L(t[o])?v(n[o]?.(...r)??[],(e=>l(...r,e))):l(...r,t[o])};l()}))]})(),We=e=>{if(!ue(e,((e,t)=>[r,o].includes(t))))return!1;const t=e[r];return!(!F(t)&&t!=a||(ce(e[o])!=t&&ne(e,o),0))},$e=(t,s)=>(!e||O(ge,s)||St(s))&&ue(t,((e,t)=>qe(s,t,e)),(()=>St(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))),(()=>St(e,t))),Be=(t,s,n,a)=>e?E(x(x(ge,t),n),(e=>ce(a)!=e[r]?St(t,s,n,a,e[o]):a),(()=>St(t,s,n,a))):L(ce(a))?St(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[r]?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)||St(t,s,n)}))})),e),Qe=e=>(s&&(M(be,((t,s)=>{se(e,s)||(e[s]=t)})),M(Se,(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(be,t,e)),(()=>Q(Se,t)))}),((e,t)=>{W(Ve,t),W(be,t),N(Se,t)})),Ye=e=>le(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,l)=>ut(e,t,s,n,l,a))),tt=(e,t,s,n,a)=>{O(s,n)||gt(e,t,n,1);const l=x(s,n);a!==l&&(Tt(e,t,n,l,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=>le(e)?qt():jt(e),at=e=>ie(Re,e,((e,t,s)=>lt(t,s)),((e,t)=>dt(t))),lt=(e,t)=>{O(Re,e)||Vt(e,1);const s=x(Re,e);t!==s&&(bt(e,s,t),W(Re,e,t))},rt=(e,t)=>{const[s]=$(ve,e,X),n=s(t);return O(x(we,e),n)?rt(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,l)=>{const r=x(x(Te,e)?.[0],a);if(!L(r)&&!l)return tt(e,s,n,a,r);const o=t=>{Tt(e,s,t,x(n,t)),gt(e,s,t,-1),W(n,t)};L(r)?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(be,e);if(!L(t))return lt(e,t);bt(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),bt=(e,t,s)=>$(_,e,(()=>[t,0]))[1]=s,St=(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,...re(kt(e,t,s))])),Rt=e=>E(x(_,e),(([e,t])=>[!0,e,t]),(()=>[!1,...re(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,l)=>{let r;M(s,(([s,o],c)=>{o!==s&&(je(Ee[e],[n,l,c],o,s,wt),t=a=r=1)})),r&&je(pe[e],[n,l],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,S)))),Ut),Lt=()=>q(we,(e=>q(e,q))),Et=()=>j(we),Ft=e=>j(x(we,S(e))),zt=(e,t,s,n=0,a)=>{return w(y((r=x(we,S(e)),o=(e,s)=>[L(t)?s:x(e,S(t)),s],l=([e],[t])=>(e<t?-1:1)*(s?-1:1),w([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(l)),n,L(a)?a:n+a),(([,e])=>e));var l,r,o},Ot=(e,t)=>j(x(x(we,S(e)),S(t))),kt=(e,t,s)=>x(x(x(we,S(e)),S(t)),S(s)),At=()=>q(Re),Mt=()=>j(Re),Nt=e=>x(Re,S(e)),Pt=e=>pt((()=>(e=>ue(e,$e,St))(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),l=!k(_),c=1,yt(1),n&&Ct(1),Jt(1),l&&It(1),e?.(q(Y,(e=>q(e,(e=>q(e,(e=>[...e]),(([e,t])=>e===t))),le)),le),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=l=!1),je(Ne[0],void 0,n,l),c=-1,yt(0),n&&Ct(0),Jt(0),l&&It(0),je(Ne[1],void 0,n,l),c=0,v([I,p,U,Y,te,Z,_,fe],A))),Ut),Ut={getTables:Lt,getTableIds:Et,getTable:e=>q(x(we,S(e)),q),getRowIds:Ft,getSortedRowIds:zt,getRow:(e,t)=>q(x(x(we,S(e)),S(t))),getCellIds:Ot,getCell:kt,getValues:At,getValueIds:Mt,getValue:Nt,hasTables:()=>!k(we),hasTable:e=>O(we,S(e)),hasRow:(e,t)=>O(x(we,S(e)),S(t)),hasCell:(e,t,s)=>O(x(x(we,S(e)),S(t)),S(s)),hasValues:()=>!k(Re),hasValue:e=>O(Re,S(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=S(e),et(e,ot(e),n=rt(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)=>lt(t,e))):0)),setValue:(e,t)=>pt((e=>E(He(e,z(t)?t(Nt(e)):t),(t=>lt(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),(l=>O(l,s)?ut(e,a,t,l,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,S(e)),((e,s)=>t(s,(t=>D(e,t))))),forEachCell:(e,t,s)=>D(x(x(we,S(e)),S(t)),s),forEachValue:e=>D(Re,e),addSortedRowIdsListener:(e,t,s,n,a,l,r)=>{let o=zt(e,t,s,n,a);return Pe((()=>{const r=zt(e,t,s,n,a);var c,i,u;i=o,R(c=r)===R(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,l(Ut,e,t,s,n,a,o))}),Ie[r?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=>re(kt(...e))],InvalidCell:[3,Fe],[V]:[0,Oe],[b]:[0,ke],[T]:[1,Ae,[Mt],e=>re(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)};export{he as createStore};
|
|
1
|
+
const e=e=>typeof e,t="",s=e(t),l=e(!0),n=e(0),a=e(e),r="type",o="default",c="Ids",i="Table",u=i+"s",d=i+c,h="Row"+c,f="Cell",T=f+c,g="Value",b=g+"s",V=g+c,S=e=>t+e,v=(e,t)=>e.forEach(t),w=(e,t)=>e.map(t),C=e=>e.length,R=(e,t,s)=>e.slice(t,s),y=(e,...t)=>e.push(...t),J=e=>JSON.stringify(e,((e,t)=>{return p(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),m=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==l,z=t=>e(t)==a,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 l={},n=t??(e=>e);return M(e,((e,t)=>E(n(e),(e=>s?.(e)?0:l[t]=e)))),l},B=(e,t)=>{const s=P(),l=t??(e=>e);return M(e,((e,t)=>s.set(t,l(e)))),s},G=e=>B(e,B),H=(e,t,s,l,n=0)=>E((s?$:x)(e,t[n],n>C(t)-2?s:P),(a=>{if(n>C(t)-2)return l?.(a)&&W(e,t[n]),a;const r=H(a,t,s,l,n+1);return k(a)&&W(e,t[n]),r})),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[l=>(l?e.shift():null)??t+s++,t=>{U.test(t)&&C(e)<1e3&&y(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)),le=(e,t)=>delete e[t],ne=(e,t)=>w(Y.entries(e),(([e,s])=>t(s,e))),ae=e=>{return te(e)&&(t=Z(e),0==C(t));var t},re=e=>[e,e],oe=()=>[P(),P()],ce=t=>{const s=e(t);return F(s)||s==n&&I(t)?s:void 0},ie=(e,t,s,l=W)=>(ne(t,((t,l)=>s(e,l,t))),D(e,(s=>se(t,s)?0:l(e,s))),e),ue=(e,t,s)=>L(e)||!te(e)||ae(e)||_(e)?(s?.(),!1):(ne(e,((s,l)=>{t(s,l)||le(e,l)})),!ae(e)),de=(e,t,s)=>W(e,t,x(e,t)==-s?void 0:s),he=()=>{let e,s,l,a,c=0;const I=P(),p=P(),U=P(),Y=P(),Z=P(),_=P(),te=P(),fe=P(),Te=P(),ge=P(),be=P(),Ve=P(),Se=P(),ve=K(),we=P(),Ce=P(),Re=P(),ye=P(),Je=oe(),me=oe(),Ie=oe(),pe=oe(),Le=oe(),Ee=oe(),Fe=oe(),ze=oe(),Oe=oe(),ke=oe(),Ae=oe(),Me=oe(),Ne=oe(),Pe=oe(),je=P(),xe=oe(),[De,We,$e,qe]=(e=>{let s;const[l,n]=X(),a=P();return[(e,n,r,o=[],c=(()=>[]))=>{s??=Zt;const i=l(1);return W(a,i,[e,n,r,o,c]),Q(H(n,r??[t],K),i),i},(e,l,...n)=>v(((e,s=[t])=>{const l=[],n=(e,t)=>t==C(s)?y(l,e):null===s[t]?M(e,(e=>n(e,t+1))):v([s[t],null],(s=>n(x(e,s),t+1)));return n(e,0),l})(e,l),(e=>M(e,(e=>x(a,e)[0](s,...l??[],...n))))),e=>E(x(a,e),(([,s,l])=>(H(s,l??[t],void 0,(t=>(N(t,e),k(t)?1:0))),W(a,e),n(e),l))),e=>E(x(a,e),(([e,,t=[],l,n])=>{const a=(...r)=>{const o=C(r);o==C(t)?e(s,...r,...n(r)):L(t[o])?v(l[o]?.(...r)??[],(e=>a(...r,e))):a(...r,t[o])};a()}))]})(),Be=e=>{if(!ue(e,((e,t)=>[r,o].includes(t))))return!1;const t=e[r];return!(!F(t)&&t!=n||(ce(e[o])!=t&&le(e,o),0))},Ge=(t,s)=>(!e||O(ge,s)||Ct(s))&&ue(t,((e,t)=>He(s,t,e)),(()=>Ct(s))),He=(e,t,s,l)=>ue(l?s:Xe(s,e,t),((l,n)=>E(Ke(e,t,n,l),(e=>(s[n]=e,!0)),(()=>!1))),(()=>Ct(e,t))),Ke=(t,s,l,n)=>e?E(x(x(ge,t),l),(e=>ce(n)!=e[r]?Ct(t,s,l,n,e[o]):n),(()=>Ct(t,s,l,n))):L(ce(n))?Ct(t,s,l,n):n,Qe=(e,t)=>ue(t?e:Ye(e),((t,s)=>E(Ue(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Rt())),Ue=(e,t)=>s?E(x(Ve,e),(s=>ce(t)!=s[r]?Rt(e,t,s[o]):t),(()=>Rt(e,t))):L(ce(t))?Rt(e,t):t,Xe=(e,t,s)=>(E(x(be,t),(([l,n])=>{M(l,((t,s)=>{se(e,s)||(e[s]=t)})),M(n,(l=>{se(e,l)||Ct(t,s,l)}))})),e),Ye=e=>(s&&(M(Se,((t,s)=>{se(e,s)||(e[s]=t)})),M(ve,(t=>{se(e,t)||Rt(t)}))),e),Ze=e=>ie(ge,e,((e,t,s)=>{const l=P(),n=K();ie($(ge,t,P),s,((e,t,s)=>{W(e,t,s),E(s[o],(e=>W(l,t,e)),(()=>Q(n,t)))})),W(be,t,[l,n])}),((e,t)=>{W(ge,t),W(be,t)})),_e=e=>ie(Ve,e,((e,t,s)=>{W(Ve,t,s),E(s[o],(e=>W(Se,t,e)),(()=>Q(ve,t)))}),((e,t)=>{W(Ve,t),W(Se,t),N(ve,t)})),et=e=>ae(e)?Gt():Dt(e),tt=e=>ie(Re,e,((e,t,s)=>st(t,s)),((e,t)=>dt(t))),st=(e,t)=>ie($(Re,e,(()=>(gt(e,1),W(we,e,X()),W(Ce,e,P()),P()))),t,((t,s,l)=>lt(e,t,s,l)),((t,s)=>ht(e,t,s))),lt=(e,t,s,l,n)=>ie($(t,s,(()=>(bt(e,s,1),P()))),l,((t,l,n)=>nt(e,s,t,l,n)),((l,a)=>ft(e,t,s,l,a,n))),nt=(e,t,s,l,n)=>{O(s,l)||Vt(e,t,l,1);const a=x(s,l);n!==a&&(St(e,t,l,a,n),W(s,l,n))},at=(e,t,s,l,n)=>E(x(t,s),(t=>nt(e,s,t,l,n)),(()=>lt(e,t,s,Xe({[l]:n},e,s)))),rt=e=>ae(e)?Ht():Wt(e),ot=e=>ie(ye,e,((e,t,s)=>ct(t,s)),((e,t)=>Tt(t))),ct=(e,t)=>{O(ye,e)||vt(e,1);const s=x(ye,e);t!==s&&(wt(e,s,t),W(ye,e,t))},it=(e,t)=>{const[s]=x(we,e),l=s(t);return O(x(Re,e),l)?it(e,t):l},ut=e=>x(Re,e)??st(e,{}),dt=e=>st(e,{}),ht=(e,t,s)=>{const[,l]=x(we,e);l(s),lt(e,t,s,{},!0)},ft=(e,t,s,l,n,a)=>{const r=x(x(be,e)?.[0],n);if(!L(r)&&!a)return nt(e,s,l,n,r);const o=t=>{St(e,s,t,x(l,t)),Vt(e,s,t,-1),W(l,t)};L(r)?o(n):D(l,o),k(l)&&(bt(e,s,-1),k(W(t,s))&&(gt(e,-1),W(Re,e),W(we,e),W(Ce,e)))},Tt=e=>{const t=x(Se,e);if(!L(t))return ct(e,t);wt(e,x(ye,e)),vt(e,-1),W(ye,e)},gt=(e,t)=>de(I,e,t),bt=(e,t,s)=>de($(U,e,P),t,s),Vt=(e,t,s,l)=>{const n=x(Ce,e),a=x(n,s)??0;(0==a&&1==l||1==a&&-1==l)&&de($(p,e,P),s,l),W(n,s,a!=-l?a+l:null),de($($(Y,e,P),t,P),s,l)},St=(e,t,s,l,n)=>$($($(Z,e,P),t,P),s,(()=>[l,0]))[1]=n,vt=(e,t)=>de(_,e,t),wt=(e,t,s)=>$(te,e,(()=>[t,0]))[1]=s,Ct=(e,t,s,l,n)=>(y($($($(fe,e,P),t,P),s,(()=>[])),l),n),Rt=(e,t,s)=>(y($(Te,e,(()=>[])),t),s),yt=(e,t,s)=>E(x(x(x(Z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...re(Nt(e,t,s))])),Jt=e=>E(x(te,e),(([e,t])=>[!0,e,t]),(()=>[!1,...re(xt(e))])),mt=e=>k(fe)||k(ke[e])?0:M(e?B(fe,G):fe,((t,s)=>M(t,((t,l)=>M(t,((t,n)=>We(ke[e],[s,l,n],t))))))),It=e=>k(Te)||k(Ae[e])?0:M(e?B(Te):Te,((t,s)=>We(Ae[e],[s],t))),pt=(e,t,s)=>{if(!k(t))return We(e,s,(()=>q(t))),1},Lt=e=>{const t=k(Ee[e]),s=k(ze[e])&&k(pe[e])&&k(Le[e])&&t&&k(me[e]),l=k(Oe[e])&&k(Fe[e])&&k(Ie[e])&&k(Je[e]);if(!s||!l){const n=e?[B(I),G(p),G(U),B(Y,G),B(Z,G)]:[I,p,U,Y,Z];if(!s){M(n[1],((t,s)=>pt(pe[e],t,[s]))),M(n[3],((t,s)=>M(t,((t,l)=>pt(ze[e],t,[s,l])))));const s=K();M(n[2],((l,n)=>{pt(Le[e],l,[n])&&!t&&(We(Ee[e],[n,null]),Q(s,n))})),t||M(n[4],((t,l)=>{if(!O(s,l)){const s=K();M(t,(e=>M(e,(([t,l],n)=>l!==t?Q(s,n):N(e,n))))),M(s,(t=>We(Ee[e],[l,t])))}})),pt(me[e],n[0])}if(!l){let t;M(n[4],((s,l)=>{let n;M(s,((s,a)=>{let r;M(s,(([s,o],c)=>{o!==s&&(We(Oe[e],[l,a,c],o,s,yt),t=n=r=1)})),r&&We(Fe[e],[l,a],yt)})),n&&We(Ie[e],[l],yt)})),t&&We(Je[e],void 0,yt)}}},Et=e=>{const t=k(Ne[e]),s=k(Pe[e])&&k(Me[e]);if(!t||!s){const l=e?[B(_),B(te)]:[_,te];if(t||pt(Ne[e],l[0]),!s){let t;M(l[1],(([s,l],n)=>{l!==s&&(We(Pe[e],[n],l,s,Jt),t=1)})),t&&We(Me[e],void 0,Jt)}}},Ft=(e,...t)=>(Ut((()=>e(...w(t,S)))),Zt),zt=()=>q(Re,(e=>q(e,q))),Ot=()=>j(Re),kt=e=>j(x(Re,S(e))),At=(e,t,s,l=0,n)=>{return w(R((r=x(Re,S(e)),o=(e,s)=>[L(t)?s:x(e,S(t)),s],a=([e],[t])=>(e<t?-1:1)*(s?-1:1),w([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),l,L(n)?n:l+n),(([,e])=>e));var a,r,o},Mt=(e,t)=>j(x(x(Re,S(e)),S(t))),Nt=(e,t,s)=>x(x(x(Re,S(e)),S(t)),S(s)),Pt=()=>q(ye),jt=()=>j(ye),xt=e=>x(ye,S(e)),Dt=e=>Ft((()=>(e=>ue(e,Ge,Ct))(e)?tt(e):0)),Wt=e=>Ft((()=>Qe(e)?ot(e):0)),$t=e=>{try{et(m(e))}catch{}return Zt},qt=t=>Ft((()=>{if((e=ue(t,(e=>ue(e,Be))))&&(Ze(t),!k(Re))){const e=zt();Gt(),Dt(e)}})),Bt=e=>Ft((()=>{if(s=(e=>ue(e,Be))(e)){const t=Pt();Qt(),Ht(),s=!0,_e(e),Wt(t)}})),Gt=()=>Ft((()=>tt({}))),Ht=()=>Ft((()=>ot({}))),Kt=()=>Ft((()=>{Ze({}),e=!1})),Qt=()=>Ft((()=>{_e({}),s=!1})),Ut=(e,t)=>{if(-1!=c){Xt();const s=e();return Yt(t),s}},Xt=()=>(-1!=c&&c++,1==c&&We(je,void 0,!1,!1),Zt),Yt=e=>(c>0&&(c--,0==c&&(l=!k(Z),a=!k(te),c=1,mt(1),l&&Lt(1),It(1),a&&Et(1),e?.(q(Z,(e=>q(e,(e=>q(e,(e=>[...e]),(([e,t])=>e===t))),ae)),ae),q(fe,(e=>q(e,q))),q(te,(e=>[...e]),(([e,t])=>e===t)),q(Te))&&(M(Z,((e,t)=>M(e,((e,s)=>M(e,(([e],l)=>((e,t,s,l,n)=>L(n)?e.delCell(t,s,l,!0):e.setCell(t,s,l,n))(Zt,t,s,l,e))))))),M(te,(([e],t)=>((e,t,s)=>L(s)?e.delValue(t):e.setValue(t,s))(Zt,t,e))),l=a=!1),We(xe[0],void 0,l,a),c=-1,mt(0),l&&Lt(0),It(0),a&&Et(0),We(xe[1],void 0,l,a),c=0,v([I,p,U,Y,Z,fe,_,te,Te],A))),Zt),Zt={getTables:zt,getTableIds:Ot,getTable:e=>q(x(Re,S(e)),q),getTableCellIds:e=>j(x(Ce,S(e))),getRowIds:kt,getSortedRowIds:At,getRow:(e,t)=>q(x(x(Re,S(e)),S(t))),getCellIds:Mt,getCell:Nt,getValues:Pt,getValueIds:jt,getValue:xt,hasTables:()=>!k(Re),hasTable:e=>O(Re,S(e)),hasTableCell:(e,t)=>O(x(Ce,S(e)),S(t)),hasRow:(e,t)=>O(x(Re,S(e)),S(t)),hasCell:(e,t,s)=>O(x(x(Re,S(e)),S(t)),S(s)),hasValues:()=>!k(ye),hasValue:e=>O(ye,S(e)),getTablesJson:()=>J(Re),getValuesJson:()=>J(ye),getJson:()=>J([Re,ye]),getTablesSchemaJson:()=>J(ge),getValuesSchemaJson:()=>J(Ve),getSchemaJson:()=>J([ge,Ve]),setTables:Dt,setTable:(e,t)=>Ft((e=>Ge(t,e)?st(e,t):0),e),setRow:(e,t,s)=>Ft(((e,t)=>He(e,t,s)?lt(e,ut(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ut((()=>{let l;return He(e,l,t)&&(e=S(e),lt(e,ut(e),l=it(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Ft(((e,t)=>{if(He(e,t,s,1)){const l=ut(e);ne(s,((s,n)=>at(e,l,t,n,s)))}}),e,t),setCell:(e,t,s,l)=>Ft(((e,t,s)=>E(Ke(e,t,s,z(l)?l(Nt(e,t,s)):l),(l=>at(e,ut(e),t,s,l)))),e,t,s),setValues:Wt,setPartialValues:e=>Ft((()=>Qe(e,1)?ne(e,((e,t)=>ct(t,e))):0)),setValue:(e,t)=>Ft((e=>E(Ue(e,z(t)?t(xt(e)):t),(t=>ct(e,t)))),e),setTablesJson:$t,setValuesJson:e=>{try{rt(m(e))}catch{}return Zt},setJson:e=>{try{const[t,s]=m(e);et(t),rt(s)}catch{$t(e)}return Zt},setTablesSchema:qt,setValuesSchema:Bt,setSchema:(e,t)=>Ft((()=>{qt(e),Bt(t)})),delTables:Gt,delTable:e=>Ft((e=>O(Re,e)?dt(e):0),e),delRow:(e,t)=>Ft(((e,t)=>E(x(Re,e),(s=>O(s,t)?ht(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Ft(((e,t,s)=>E(x(Re,e),(n=>E(x(n,t),(a=>O(a,s)?ft(e,n,t,a,s,l):0))))),e,t,s),delValues:Ht,delValue:e=>Ft((e=>O(ye,e)?Tt(e):0),e),delTablesSchema:Kt,delValuesSchema:Qt,delSchema:()=>Ft((()=>{Kt(),Qt()})),transaction:Ut,startTransaction:Xt,finishTransaction:Yt,forEachTable:e=>M(Re,((t,s)=>e(s,(e=>M(t,((t,s)=>e(s,(e=>D(t,e))))))))),forEachTableCell:(e,t)=>D(x(Ce,S(e)),t),forEachRow:(e,t)=>M(x(Re,S(e)),((e,s)=>t(s,(t=>D(e,t))))),forEachCell:(e,t,s)=>D(x(x(Re,S(e)),S(t)),s),forEachValue:e=>D(ye,e),addSortedRowIdsListener:(e,t,s,l,n,a,r)=>{let o=At(e,t,s,l,n);return De((()=>{const r=At(e,t,s,l,n);var c,i,u;i=o,C(c=r)===C(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,a(Zt,e,t,s,l,n,o))}),Ee[r?1:0],[e,t],[Ot])},addStartTransactionListener:e=>De(e,je),addWillFinishTransactionListener:e=>De(e,xe[0]),addDidFinishTransactionListener:e=>De(e,xe[1]),callListener:e=>(qe(e),Zt),delListener:e=>($e(e),Zt),getListenerStats:()=>({}),createStore:he};return ne({[u]:[0,Je],[d]:[0,me],[i]:[1,Ie,[Ot]],[i+T]:[1,pe,[Ot]],[h]:[1,Le,[Ot]],Row:[2,Fe,[Ot,kt]],[T]:[2,ze,[Ot,kt]],[f]:[3,Oe,[Ot,kt,Mt],e=>re(Nt(...e))],InvalidCell:[3,ke],[b]:[0,Me],[V]:[0,Ne],[g]:[1,Pe,[jt],e=>re(xt(e[0]))],InvalidValue:[1,Ae]},(([e,t,s,l],n)=>{Zt["add"+n+"Listener"]=(...n)=>De(n[e],t[n[e+1]?1:0],e>0?R(n,0,e):void 0,s,l)})),ee(Zt)};export{he as createStore};
|
package/lib/store.js.gz
CHANGED
|
Binary file
|
package/lib/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{promises as e,watch as t}from"fs";const s=e=>typeof e,n="",o=s(n),a=s(!0),r=s(0),i=s(s),l="type",c="default",d="utf8",u="Listener",h="Result",g="add",f="Ids",L="Table",w=L+"s",v=L+f,S="Row",R=S+f,I="Sorted"+S+f,T="Cell",y=T+f,p="Value",b=p+"s",m=p+f,C=e=>n+e,V=(e,t)=>e.includes(t),E=(e,t)=>e.every(t),k=(e,t)=>F(e)===F(t)&&E(e,((e,s)=>t[s]===e)),J=(e,t)=>E(e,((s,n)=>0==n||t(e[n-1],s)<=0)),A=(e,t)=>e.sort(t),M=(e,t)=>e.forEach(t),D=(e,t)=>e.map(t),x=e=>z(e,((e,t)=>e+t),0),F=e=>e.length,Q=e=>0==F(e),z=(e,t,s)=>e.reduce(t,s),N=(e,t,s)=>e.slice(t,s),O=(e,...t)=>e.push(...t),j=e=>e.pop(),P=e=>e.shift(),W=e=>JSON.stringify(e,((e,t)=>G(t,Map)?z([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),B=JSON.parse,H=Math.max,$=Math.min,q=isFinite,G=(e,t)=>e instanceof t,K=e=>null==e,U=(e,t,s)=>K(e)?s?.():t(e),X=e=>e==o||e==a,Y=e=>s(e)==i,Z=e=>Array.isArray(e),_=()=>{},ee=e=>e.size,te=(e,t)=>e?.has(t)??!1,se=e=>K(e)||0==ee(e),ne=e=>[...e?.values()??[]],oe=e=>e.clear(),ae=(e,t)=>e?.forEach(t),re=(e,t)=>e?.delete(t),ie=e=>new Map(e),le=e=>[...e?.keys()??[]],ce=(e,t)=>e?.get(t),de=(e,t)=>ae(e,((e,s)=>t(s,e))),ue=(e,t,s)=>K(s)?(re(e,t),e):e?.set(t,s),he=(e,t,s)=>(te(e,t)||ue(e,t,s()),ce(e,t)),ge=(e,t,s)=>{const n={},o=t??(e=>e);return ae(e,((e,t)=>U(o(e),(e=>s?.(e)?0:n[t]=e)))),n},fe=(e,t)=>{const s=ie(),n=t??(e=>e);return ae(e,((e,t)=>s.set(t,n(e)))),s},Le=e=>fe(e,fe),we=(e,t,s,n,o=0)=>U((s?he:ce)(e,t[o],o>F(t)-2?s:ie),(a=>{if(o>F(t)-2)return n?.(a)&&ue(e,t[o]),a;const r=we(a,t,s,n,o+1);return se(a)&&ue(e,t[o]),r})),ve=e=>{const t=s(e);return X(t)||t==r&&q(e)?t:void 0},Se=(e,t,s,n,o)=>K(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Re=(e,t,s)=>K(s)?e.delValue(t):e.setValue(t,s),Ie=e=>new Set(Z(e)||K(e)?e:[e]),Te=(e,t)=>e?.add(t),ye=(e,t,s)=>{const n=e.hasRow,o=ie(),a=ie(),r=ie(),i=ie(),l=ie(),c=(t,s,...n)=>{const o=he(l,t,Ie);return M(n,(t=>Te(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>U(ce(l,t),(n=>{M(Q(s)?ne(n):s,(t=>{e.delListener(t),re(n,t)})),se(n)&&ue(l,t)})),u=(e,s)=>{ue(o,e,s),te(a,e)||(ue(a,e,t()),ue(r,e,ie()),ue(i,e,ie()))},h=e=>{ue(o,e),ue(a,e),ue(r,e),ue(i,e),d(e)};return[()=>e,()=>le(o),e=>de(a,e),e=>te(a,e),e=>ce(o,e),e=>ce(a,e),(e,t)=>ue(a,e,t),u,(t,o,a,l,h)=>{u(t,o);const g=ie(),f=ie(),L=ce(r,t),w=ce(i,t),v=t=>{const a=s=>e.getCell(o,t,s),r=ce(L,t),i=n(o,t)?s(l(a,t)):void 0;if(r===i||Z(r)&&Z(i)&&k(r,i)||ue(g,t,[r,i]),!K(h)){const e=ce(w,t),s=n(o,t)?h(a,t):void 0;e!=s&&ue(f,t,s)}},S=e=>{a((()=>{ae(g,(([,e],t)=>ue(L,t,e))),ae(f,((e,t)=>ue(w,t,e)))}),g,f,L,w,e),oe(g),oe(f)};de(L,v),e.hasTable(o)&&M(e.getRowIds(o),(e=>{te(L,e)||v(e)})),S(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>S())))},h,()=>de(l,h),c,d]},pe=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),be=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},me=/^\d+$/,Ce=()=>{const e=[];let t=0;return[s=>(s?P(e):null)??n+t++,t=>{me.test(t)&&F(e)<1e3&&O(e,t)}]},Ve=e=>{let t;const[s,o]=Ce(),a=ie();return[(o,r,i,l=[],c=(()=>[]))=>{t??=e();const d=s(1);return ue(a,d,[o,r,i,l,c]),Te(we(r,i??[n],Ie),d),d},(e,s,...o)=>M(((e,t=[n])=>{const s=[],o=(e,n)=>n==F(t)?O(s,e):null===t[n]?ae(e,(e=>o(e,n+1))):M([t[n],null],(t=>o(ce(e,t),n+1)));return o(e,0),s})(e,s),(e=>ae(e,(e=>ce(a,e)[0](t,...s??[],...o))))),e=>U(ce(a,e),(([,t,s])=>(we(t,s??[n],void 0,(t=>(re(t,e),se(t)?1:0))),ue(a,e),o(e),s))),e=>U(ce(a,e),(([e,,s=[],n,o])=>{const a=(...r)=>{const i=F(r);i==F(s)?e(t,...r,...o(r)):K(s[i])?M(n[i]?.(...r)??[],(e=>a(...r,e))):a(...r,s[i])};a()}))]},Ee=Object,ke=Ee.keys,Je=Ee.isFrozen,Ae=Ee.freeze,Me=e=>G(e,Ee)&&e.constructor==Ee,De=(e,t)=>!K(((e,t)=>U(e,(e=>e[t])))(e,t)),xe=(e,t)=>delete e[t],Fe=(e,t)=>D(Ee.entries(e),(([e,s])=>t(s,e))),Qe=e=>Me(e)&&Q(ke(e)),ze=be((e=>{let t,s,o,a=100,r=ie(),i=ie(),l=1;const c=ie(),d=ie(),[u,h,g]=Ve((()=>z)),f=ie(),L=ie(),w=[],v=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=ce(f,s);ae(n,((s,n)=>ae(s,((s,o)=>ae(s,((s,a)=>Se(e,n,o,a,s[t]))))))),ae(o,((s,n)=>Re(e,n,s[t])))})),l=1},R=e=>{ue(f,e),ue(L,e),h(d,[e])},I=(e,t)=>M(((e,t)=>e.splice(0,t))(e,t??F(e)),R),T=()=>I(w,F(w)-a),y=()=>U(t,(()=>{O(w,t),T(),I(v),t=void 0,o=1})),p=()=>{t=j(w),o=1},b=e.addCellListener(null,null,null,((e,t,s,n,o,a)=>{if(l){y();const e=he(r,t,ie),i=he(e,s,ie),l=he(i,n,(()=>[a,void 0]));l[1]=o,l[0]===o&&se(ue(i,n))&&se(ue(e,s))&&se(ue(r,t))&&p(),J()}})),m=e.addValueListener(null,((e,t,s,n)=>{if(l){y();const e=he(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&se(ue(i,t))&&p(),J()}})),C=(e="")=>(K(t)&&(t=n+s++,ue(f,t,[r,i]),D(t,e),r=ie(),i=ie(),o=1),t),E=()=>{Q(w)||(((e,...t)=>{e.unshift(...t)})(v,C()),S(0,t),t=j(w),o=1)},k=()=>{Q(v)||(O(w,t),t=P(v),S(1,t),o=1)},J=()=>{o&&(h(c),o=0)},A=e=>{const t=C(e);return J(),t},D=(e,t)=>(x(e)&&ce(L,e)!==t&&(ue(L,e,t),h(d,[e])),z),x=e=>te(f,e),z={setSize:e=>(a=e,T(),z),addCheckpoint:A,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>de(L,e),hasCheckpoint:x,getCheckpoint:e=>ce(L,e),goBackward:()=>(E(),J(),z),goForward:()=>(k(),J(),z),goTo:e=>{const s=V(w,e)?E:V(v,e)?k:null;for(;!K(s)&&e!=t;)s();return J(),z},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),z),clear:()=>(I(w),I(v),K(t)||R(t),t=void 0,s=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return Ae(z.clear())})),Ne=(e,t)=>e<t?-1:1,Oe=be((e=>{const t=ie(),s=ie(),[o,a,r,i,l,c,d,,u,h,g]=ye(e,ie,(e=>K(e)?n:Z(e)?D(e,C):C(e))),[f,L,w]=Ve((()=>S)),v=(t,s,n)=>{const o=l(t);ae(n,((t,n)=>s(n,(s=>ae(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,a,r,i=Ne)=>{const l=K(r)?void 0:([e],[t])=>r(e,t);return u(e,n,((n,o,r,u,h,g)=>{let f=0;const w=Ie(),v=Ie(),S=c(e);if(ae(o,(([e,t],s)=>{const n=Ie(e),o=Ie(t);ae(n,(e=>re(o,e)?re(n,e):0)),ae(n,(e=>{Te(w,e),U(ce(S,e),(t=>{re(t,s),se(t)&&(ue(S,e),f=1)}))})),ae(o,(e=>{Te(w,e),te(S,e)||(ue(S,e,Ie()),f=1),Te(ce(S,e),s),K(a)||Te(v,e)}))})),n(),se(h)||(g?de(S,(e=>Te(v,e))):de(r,(e=>U(ce(u,e),(e=>Te(v,e))))),ae(v,(e=>{const t=(t,s)=>i(ce(h,t),ce(h,s),e),s=[...ce(S,e)];J(s,t)||(ue(S,e,Ie(A(s,t))),Te(w,e))}))),(f||g)&&!K(l)){const t=[...S];J(t,l)||(d(e,ie(A(t,l))),f=1)}f&&L(t,[e]),ae(w,(t=>L(s,[e,t])))}),pe(o),U(a,pe)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:a,forEachIndex:e=>r(((t,s)=>e(t,(e=>v(t,e,s))))),forEachSlice:(e,t)=>v(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>te(c(e),t),getTableId:l,getSliceIds:e=>le(c(e)),getSliceRowIds:(e,t)=>ne(ce(c(e),t)),addSliceIdsListener:(e,s)=>f(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,s,[e,t]),delListener:e=>(w(e),S),destroy:g,getListenerStats:()=>({})};return Ae(S)})),je=ie([["avg",[(e,t)=>x(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=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["min",[e=>$(...e),(e,t)=>$(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:$(t,e)]],["sum",[e=>x(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Pe=(e,t,s,n,o,a=!1)=>{if(se(s))return;const[r,i,l,c]=o;return a||=K(e),ae(n,(([s,n])=>{a||(e=K(s)?i?.(e,n,t++):K(n)?l?.(e,s,t--):c?.(e,n,s,t),a||=K(e))})),a?r(ne(s),ee(s)):e},We=be((e=>{const t=ie(),[s,o,a,r,i,l,c,,d,u,h]=ye(e,_,(e=>isNaN(e)||K(e)||!0===e||!1===e||e===n?void 0:1*e)),[g,f,L]=Ve((()=>w)),w={setMetricDefinition:(e,s,n,o,a,r,i)=>{const u=Y(n)?[n,a,r,i]:ce(je,n)??ce(je,"sum");return d(e,s,((s,n,o,a,r,i)=>{const d=l(e),h=ee(a);i||=K(d),s();let g=Pe(d,h,a,n,u,i);q(g)||(g=void 0),g!=d&&(c(e,g),f(t,[e],g,d))}),pe(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:a,hasMetric:r,getTableId:i,getMetric:l,addMetricListener:(e,s)=>g(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Ae(w)})),Be=(e,t,s,o,a)=>{let r,i,l=0;const c={load:async(s={},o={})=>{if(2!=l){l=1;const a=await t();K(a)||a==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(a),l=0}return c},startAutoLoad:async(e={},t={})=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(a(),c),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),r=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(U(r,e.delListener),U(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Ae(c)},He="storage",$e=globalThis.window,qe=(e,t,s)=>{let n;return Be(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},$e.addEventListener(He,n)}),(()=>{$e.removeEventListener(He,n),n=void 0}))},Ge=(e,t)=>qe(e,t,localStorage),Ke=(e,t)=>qe(e,t,sessionStorage),Ue=(s,n)=>{let o;return Be(s,(async()=>{try{return await e.readFile(n,d)}catch{}}),(async t=>{try{await e.writeFile(n,t,d)}catch{}}),(e=>{o=t(n,e)}),(()=>{o?.close(),o=void 0}))},Xe=e=>e.headers.get("ETag"),Ye=(e,t,s,n)=>{let o,a;return Be(e,(async()=>{const e=await fetch(t);return a=Xe(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=Xe(s);K(a)||K(n)||n==a||(a=n,e())}),1e3*n)}),(()=>{U(o,clearInterval),o=void 0}))},Ze=be((e=>{const t=e.createStore,[s,o,a,r,i,,,l,,c,d,f,w]=ye(e,(()=>!0),_),v=t(),p=t(),b=ie(),m=(e,t,...s)=>M(s,(s=>Te(he(he(b,t,ie),e,Ie),s))),C=e=>{U(ce(b,e),(e=>{de(e,((e,t)=>ae(t,(t=>e.delListener(t))))),oe(e)})),M([p,v],(t=>t.delTable(e)))},V=(e,t,s)=>m(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(t,s,o)=>{l(t,s),C(t);const a=[],r=[[null,[s,null,null,[],ie()]]],i=[],c=[],d=[];o({select:(e,t)=>{const s=Y(e)?[F(a)+n,e]:[K(t)?e:t,s=>s(e,t)];return O(a,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=K(s)||Y(t)?null:t,o=K(n)?t:s,a=[e,[e,n,Y(o)?o:e=>e(o),[],ie()]];return O(r,a),{as:e=>a[0]=e}},where:(e,t,s)=>O(i,Y(e)?e:K(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,Y(t)?[t,s,n,o]:ce(je,t)??[(e,t)=>t]]];return O(c,a),{as:e=>a[0]=e}},having:(e,t)=>O(d,Y(e)?e:s=>s(e)===t)});const u=ie(a);if(se(u))return k;const h=ie(r);de(h,((e,[,t])=>U(ce(h,t),(({3:t})=>K(e)?0:O(t,e)))));const g=ie(c);let L=v;if(se(g)&&Q(d))L=p;else{V(t,L,p);const e=ie();de(g,((t,[s,n])=>Te(he(e,s,Ie),[t,n])));const s=Ie();de(u,(t=>te(e,t)?0:Te(s,t)));const n=ie(),o=(s,n,o,a)=>U(s,(([r,i,l,c])=>{de(n,((t,[s])=>{const n=he(r,t,ie),i=ce(n,o),l=a?void 0:s;if(i!==l){const s=Ie([[i,l]]),a=ee(n);ue(n,o,l),ae(ce(e,t),(([e,t])=>{const o=Pe(c[e],a,n,s,t);c[e]=K(ve(o))?null:o}))}})),se(i)||!E(d,(e=>e((e=>c[e]))))?p.delRow(t,l):K(l)?s[2]=p.addRow(t,c):p.setRow(t,l,c)}));m(L,t,L.addRowListener(t,null,((a,r,i,l)=>{const c=[],d=[],u=ie(),h=L.hasRow(t,i);let g=!h;ae(s,(e=>{const[s,n,o]=l(t,i,e);O(c,n),O(d,o),g||=s})),de(e,(e=>{const[s,,n]=l(t,i,e);(g||s)&&ue(u,e,[n])})),g&&o(we(n,c,void 0,(([,e])=>(re(e,i),se(e)))),u,i,1),h&&o(we(n,d,(()=>{const e={};return ae(s,(s=>e[s]=L.getCell(t,i,s))),[ie(),Ie(),void 0,e]}),(([,e])=>{Te(e,i)})),u,i)})))}V(t,e,L);const S=(n,o,a,r)=>{const l=t=>e.getCell(o,a,t);M(r,(s=>{const[o,,a,r,i]=ce(h,s),c=a?.(l,n),[d,u]=ce(i,n)??[];c!=d&&(K(u)||w(t,u),ue(i,n,K(c)?null:[c,...f(t,1,e.addRowListener(o,c,(()=>S(n,o,c,r))))]))})),(n=>{const o=(t,o)=>e.getCell(...K(o)?[s,n,t]:t===s?[s,n,o]:[ce(h,t)?.[0],ce(ce(h,t)?.[4],n)?.[0],o]);L.transaction((()=>E(i,(e=>e(o)))?de(u,((e,s)=>Se(L,t,n,e,s(o,n)))):L.delRow(t,n)))})(n)},{3:R}=ce(h,null);return L.transaction((()=>f(t,1,e.addRowListener(s,null,((n,o,a)=>{e.hasRow(s,a)?S(a,s,a,R):(L.delRow(t,a),ae(h,(({4:e})=>U(ce(e,a),(([,s])=>{w(t,s),ue(e,a)})))))}))))),k},delQueryDefinition:e=>(C(e),c(e),k),getStore:s,getQueryIds:o,forEachQuery:a,hasQuery:r,getTableId:i,delListener:e=>(p.delListener(e),k),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=p.getListenerStats();return n}};return Fe({[L]:[1,1],[R]:[0,1],[I]:[0,5],[S]:[1,2],[y]:[0,2],[T]:[1,3]},(([e,t],s)=>{M(e?["get","has","forEach"]:["get"],(e=>k[e+h+s]=(...t)=>p[e+s](...t))),k[g+h+s+u]=(...e)=>p[g+s+u](...N(e,0,t),((s,...n)=>e[t](k,...n)))})),Ae(k)})),_e=be((e=>{const t=ie(),s=ie(),o=ie(),a=ie(),[r,i,l,c,d,u,,,h,g,f]=ye(e,(()=>[ie(),ie(),ie(),ie()]),(e=>K(e)?void 0:e+n)),[L,w,v]=Ve((()=>T)),S=(e,t,s)=>U(u(e),(([n,,o])=>{if(!te(o,t)){const a=Ie();if(d(e)!=I(e))Te(a,t);else{let e=t;for(;!K(e)&&!te(a,e);)Te(a,e),e=ce(n,e)}if(s)return a;ue(o,t,a)}return ce(o,t)})),R=(e,t)=>U(u(e),(([,,e])=>ue(e,t))),I=e=>ce(t,e),T={setRelationshipDefinition:(e,n,r,i)=>(ue(t,e,r),h(e,n,((t,n)=>{const r=Ie(),i=Ie(),l=Ie(),[c,d]=u(e);ae(n,(([t,s],n)=>{K(t)||(Te(i,t),U(ce(d,t),(e=>{re(e,n),se(e)&&ue(d,t)}))),K(s)||(Te(i,s),te(d,s)||ue(d,s,Ie()),Te(ce(d,s),n)),Te(r,n),ue(c,n,s),de(ce(a,e),(t=>{te(S(e,t),n)&&Te(l,t)}))})),t(),ae(r,(t=>w(s,[e,t]))),ae(i,(t=>w(o,[e,t]))),ae(l,(t=>{R(e,t),w(a,[e,t])}))}),pe(i)),T),delRelationshipDefinition:e=>(ue(t,e),g(e),T),getStore:r,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:I,getRemoteRowId:(e,t)=>ce(u(e)?.[0],t),getLocalRowIds:(e,t)=>ne(ce(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>K(u(e))?[t]:ne(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),L(s,a,[e,t])),delListener:e=>(R(...v(e)),T),destroy:f,getListenerStats:()=>({})};return Ae(T)})),et=e=>[e,e],tt=()=>[ie(),ie()],st=(e,t,s,n=ue)=>(Fe(t,((t,n)=>s(e,n,t))),de(e,(s=>De(t,s)?0:n(e,s))),e),nt=(e,t,s)=>K(e)||!Me(e)||Qe(e)||Je(e)?(s?.(),!1):(Fe(e,((s,n)=>{t(s,n)||xe(e,n)})),!Qe(e)),ot=(e,t,s)=>ue(e,t,ce(e,t)==-s?void 0:s),at=()=>{let e,t,s,n,o=0;const a=ie(),i=ie(),d=ie(),h=ie(),f=ie(),I=ie(),E=ie(),J=ie(),x=ie(),F=ie(),Q=ie(),z=ie(),j=Ie(),P=ie(),H=ie(),$=ie(),q=tt(),G=tt(),Z=tt(),_=tt(),ee=tt(),ne=tt(),we=tt(),ye=tt(),pe=tt(),be=tt(),me=tt(),Ee=tt(),ke=tt(),Je=ie(),Me=tt(),[ze,Oe,je,Pe]=Ve((()=>ss)),We=e=>{if(!nt(e,((e,t)=>V([l,c],t))))return!1;const t=e[l];return!(!X(t)&&t!=r||(ve(e[c])!=t&&xe(e,c),0))},Be=(t,s)=>(!e||te(x,s)||mt(s))&&nt(t,((e,t)=>He(s,t,e)),(()=>mt(s))),He=(e,t,s,n)=>nt(n?s:Ke(s,e,t),((n,o)=>U($e(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>mt(e,t))),$e=(t,s,n,o)=>e?U(ce(ce(x,t),n),(e=>ve(o)!=e[l]?mt(t,s,n,o,e[c]):o),(()=>mt(t,s,n,o))):K(ve(o))?mt(t,s,n,o):o,qe=(e,t)=>nt(t?e:Ue(e),((t,s)=>U(Ge(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>Ct())),Ge=(e,s)=>t?U(ce(Q,e),(t=>ve(s)!=t[l]?Ct(e,s,t[c]):s),(()=>Ct(e,s))):K(ve(s))?Ct(e,s):s,Ke=(e,t,s)=>(U(ce(F,t),(([n,o])=>{ae(n,((t,s)=>{De(e,s)||(e[s]=t)})),ae(o,(n=>{De(e,n)||mt(t,s,n)}))})),e),Ue=e=>(t&&(ae(z,((t,s)=>{De(e,s)||(e[s]=t)})),ae(j,(t=>{De(e,t)||Ct(t)}))),e),Xe=e=>st(x,e,((e,t,s)=>{const n=ie(),o=Ie();st(he(x,t,ie),s,((e,t,s)=>{ue(e,t,s),U(s[c],(e=>ue(n,t,e)),(()=>Te(o,t)))})),ue(F,t,[n,o])}),((e,t)=>{ue(x,t),ue(F,t)})),Ye=e=>st(Q,e,((e,t,s)=>{ue(Q,t,s),U(s[c],(e=>ue(z,t,e)),(()=>Te(j,t)))}),((e,t)=>{ue(Q,t),ue(z,t),re(j,t)})),Ze=e=>Qe(e)?Ut():Ht(e),_e=e=>st(H,e,((e,t,s)=>rt(t,s)),((e,t)=>Lt(t))),rt=(e,t)=>st(he(H,e,(()=>(Rt(e,1),ie()))),t,((t,s,n)=>it(e,t,s,n)),((t,s)=>wt(e,t,s))),it=(e,t,s,n,o)=>st(he(t,s,(()=>(It(e,s,1),ie()))),n,((t,n,o)=>lt(e,s,t,n,o)),((n,a)=>vt(e,t,s,n,a,o))),lt=(e,t,s,n,o)=>{te(s,n)||Tt(e,t,n,1);const a=ce(s,n);o!==a&&(yt(e,t,n,a,o),ue(s,n,o))},ct=(e,t,s,n,o)=>U(ce(t,s),(t=>lt(e,s,t,n,o)),(()=>it(e,t,s,Ke({[n]:o},e,s)))),dt=e=>Qe(e)?Xt():$t(e),ut=e=>st($,e,((e,t,s)=>ht(t,s)),((e,t)=>St(t))),ht=(e,t)=>{te($,e)||pt(e,1);const s=ce($,e);t!==s&&(bt(e,s,t),ue($,e,t))},gt=(e,t)=>{const[s]=he(P,e,Ce),n=s(t);return te(ce(H,e),n)?gt(e,t):n},ft=e=>ce(H,e)??rt(e,{}),Lt=e=>rt(e,{}),wt=(e,t,s)=>{const[,n]=he(P,e,Ce);n(s),it(e,t,s,{},!0)},vt=(e,t,s,n,o,a)=>{const r=ce(ce(F,e)?.[0],o);if(!K(r)&&!a)return lt(e,s,n,o,r);const i=t=>{yt(e,s,t,ce(n,t)),Tt(e,s,t,-1),ue(n,t)};K(r)?i(o):de(n,i),se(n)&&(It(e,s,-1),se(ue(t,s))&&(Rt(e,-1),ue(H,e),ue(P,e)))},St=e=>{const t=ce(z,e);if(!K(t))return ht(e,t);bt(e,ce($,e)),pt(e,-1),ue($,e)},Rt=(e,t)=>ot(a,e,t),It=(e,t,s)=>ot(he(i,e,ie),t,s),Tt=(e,t,s,n)=>ot(he(he(d,e,ie),t,ie),s,n),yt=(e,t,s,n,o)=>he(he(he(h,e,ie),t,ie),s,(()=>[n,0]))[1]=o,pt=(e,t)=>ot(f,e,t),bt=(e,t,s)=>he(I,e,(()=>[t,0]))[1]=s,mt=(e,t,s,n,o)=>(O(he(he(he(E,e,ie),t,ie),s,(()=>[])),n),o),Ct=(e,t,s)=>(O(he(J,e,(()=>[])),t),s),Vt=(e,t,s)=>U(ce(ce(ce(h,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...et(jt(e,t,s))])),Et=e=>U(ce(I,e),(([e,t])=>[!0,e,t]),(()=>[!1,...et(Bt(e))])),kt=e=>se(E)||se(pe[e])?0:ae(e?fe(E,Le):E,((t,s)=>ae(t,((t,n)=>ae(t,((t,o)=>Oe(pe[e],[s,n,o],t))))))),Jt=e=>se(J)||se(be[e])?0:ae(e?fe(J):J,((t,s)=>Oe(be[e],[s],t))),At=(e,t,s)=>{if(!se(t))return Oe(e,s),1},Mt=e=>{const t=se(ee[e]),s=se(we[e])&&se(_[e])&&t&&se(G[e]),n=se(ye[e])&&se(ne[e])&&se(Z[e])&&se(q[e]);if(!s||!n){const o=e?[fe(a),Le(i),fe(d,Le),fe(h,Le)]:[a,i,d,h];if(!s){ae(o[2],((t,s)=>ae(t,((t,n)=>At(we[e],t,[s,n])))));const s=Ie();ae(o[1],((n,o)=>{At(_[e],n,[o])&&!t&&(Oe(ee[e],[o,null]),Te(s,o))})),t||ae(o[3],((t,n)=>{if(!te(s,n)){const s=Ie();ae(t,(e=>ae(e,(([t,n],o)=>n!==t?Te(s,o):re(e,o))))),ae(s,(t=>Oe(ee[e],[n,t])))}})),At(G[e],o[0])}if(!n){let t;ae(o[3],((s,n)=>{let o;ae(s,((s,a)=>{let r;ae(s,(([s,i],l)=>{i!==s&&(Oe(ye[e],[n,a,l],i,s,Vt),t=o=r=1)})),r&&Oe(ne[e],[n,a],Vt)})),o&&Oe(Z[e],[n],Vt)})),t&&Oe(q[e],void 0,Vt)}}},Dt=e=>{const t=se(Ee[e]),s=se(ke[e])&&se(me[e]);if(!t||!s){const n=e?[fe(f),fe(I)]:[f,I];if(t||At(Ee[e],n[0]),!s){let t;ae(n[1],(([s,n],o)=>{n!==s&&(Oe(ke[e],[o],n,s,Et),t=1)})),t&&Oe(me[e],void 0,Et)}}},xt=(e,...t)=>(_t((()=>e(...D(t,C)))),ss),Ft=()=>ge(H,(e=>ge(e,ge))),Qt=()=>le(H),zt=e=>le(ce(H,C(e))),Nt=(e,t,s,n=0,o)=>{return D(N(A((a=ce(H,C(e)),r=(e,s)=>[K(t)?s:ce(e,C(t)),s],D([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ne(e,t)*(s?-1:1))),n,K(o)?o:n+o),(([,e])=>e));var a,r},Ot=(e,t)=>le(ce(ce(H,C(e)),C(t))),jt=(e,t,s)=>ce(ce(ce(H,C(e)),C(t)),C(s)),Pt=()=>ge($),Wt=()=>le($),Bt=e=>ce($,C(e)),Ht=e=>xt((()=>(e=>nt(e,Be,mt))(e)?_e(e):0)),$t=e=>xt((()=>qe(e)?ut(e):0)),qt=e=>{try{Ze(B(e))}catch{}return ss},Gt=t=>xt((()=>{if((e=nt(t,(e=>nt(e,We))))&&(Xe(t),!se(H))){const e=Ft();Ut(),Ht(e)}})),Kt=e=>xt((()=>{if(t=(e=>nt(e,We))(e)){const s=Pt();Zt(),Xt(),t=!0,Ye(e),$t(s)}})),Ut=()=>xt((()=>_e({}))),Xt=()=>xt((()=>ut({}))),Yt=()=>xt((()=>{Xe({}),e=!1})),Zt=()=>xt((()=>{Ye({}),t=!1})),_t=(e,t)=>{if(-1!=o){es();const s=e();return ts(t),s}},es=()=>(-1!=o&&o++,1==o&&Oe(Je,void 0,!1,!1),ss),ts=e=>(o>0&&(o--,0==o&&(s=!se(h),n=!se(I),o=1,kt(1),s&&Mt(1),Jt(1),n&&Dt(1),e?.(ge(h,(e=>ge(e,(e=>ge(e,(e=>[...e]),(([e,t])=>e===t))),Qe)),Qe),ge(E,(e=>ge(e,ge))),ge(I,(e=>[...e]),(([e,t])=>e===t)),ge(J))&&(ae(h,((e,t)=>ae(e,((e,s)=>ae(e,(([e],n)=>Se(ss,t,s,n,e))))))),ae(I,(([e],t)=>Re(ss,t,e))),s=n=!1),Oe(Me[0],void 0,s,n),o=-1,kt(0),s&&Mt(0),Jt(0),n&&Dt(0),Oe(Me[1],void 0,s,n),o=0,M([a,i,d,h,E,f,I,J],oe))),ss),ss={getTables:Ft,getTableIds:Qt,getTable:e=>ge(ce(H,C(e)),ge),getRowIds:zt,getSortedRowIds:Nt,getRow:(e,t)=>ge(ce(ce(H,C(e)),C(t))),getCellIds:Ot,getCell:jt,getValues:Pt,getValueIds:Wt,getValue:Bt,hasTables:()=>!se(H),hasTable:e=>te(H,C(e)),hasRow:(e,t)=>te(ce(H,C(e)),C(t)),hasCell:(e,t,s)=>te(ce(ce(H,C(e)),C(t)),C(s)),hasValues:()=>!se($),hasValue:e=>te($,C(e)),getTablesJson:()=>W(H),getValuesJson:()=>W($),getJson:()=>W([H,$]),getTablesSchemaJson:()=>W(x),getValuesSchemaJson:()=>W(Q),getSchemaJson:()=>W([x,Q]),setTables:Ht,setTable:(e,t)=>xt((e=>Be(t,e)?rt(e,t):0),e),setRow:(e,t,s)=>xt(((e,t)=>He(e,t,s)?it(e,ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>_t((()=>{let n;return He(e,n,t)&&(e=C(e),it(e,ft(e),n=gt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>xt(((e,t)=>{if(He(e,t,s,1)){const n=ft(e);Fe(s,((s,o)=>ct(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>xt(((e,t,s)=>U($e(e,t,s,Y(n)?n(jt(e,t,s)):n),(n=>ct(e,ft(e),t,s,n)))),e,t,s),setValues:$t,setPartialValues:e=>xt((()=>qe(e,1)?Fe(e,((e,t)=>ht(t,e))):0)),setValue:(e,t)=>xt((e=>U(Ge(e,Y(t)?t(Bt(e)):t),(t=>ht(e,t)))),e),setTablesJson:qt,setValuesJson:e=>{try{dt(B(e))}catch{}return ss},setJson:e=>{try{const[t,s]=B(e);Ze(t),dt(s)}catch{qt(e)}return ss},setTablesSchema:Gt,setValuesSchema:Kt,setSchema:(e,t)=>xt((()=>{Gt(e),Kt(t)})),delTables:Ut,delTable:e=>xt((e=>te(H,e)?Lt(e):0),e),delRow:(e,t)=>xt(((e,t)=>U(ce(H,e),(s=>te(s,t)?wt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>xt(((e,t,s)=>U(ce(H,e),(o=>U(ce(o,t),(a=>te(a,s)?vt(e,o,t,a,s,n):0))))),e,t,s),delValues:Xt,delValue:e=>xt((e=>te($,e)?St(e):0),e),delTablesSchema:Yt,delValuesSchema:Zt,delSchema:()=>xt((()=>{Yt(),Zt()})),transaction:_t,startTransaction:es,finishTransaction:ts,forEachTable:e=>ae(H,((t,s)=>e(s,(e=>ae(t,((t,s)=>e(s,(e=>de(t,e))))))))),forEachRow:(e,t)=>ae(ce(H,C(e)),((e,s)=>t(s,(t=>de(e,t))))),forEachCell:(e,t,s)=>de(ce(ce(H,C(e)),C(t)),s),forEachValue:e=>de($,e),addSortedRowIdsListener:(e,t,s,n,o,a,r)=>{let i=Nt(e,t,s,n,o);return ze((()=>{const r=Nt(e,t,s,n,o);k(r,i)||(i=r,a(ss,e,t,s,n,o,i))}),ee[r?1:0],[e,t],[Qt])},addStartTransactionListener:e=>ze(e,Je),addWillFinishTransactionListener:e=>ze(e,Me[0]),addDidFinishTransactionListener:e=>ze(e,Me[1]),callListener:e=>(Pe(e),ss),delListener:e=>(je(e),ss),getListenerStats:()=>({}),createStore:at};return Fe({[w]:[0,q],[v]:[0,G],[L]:[1,Z,[Qt]],[R]:[1,_,[Qt]],[S]:[2,ne,[Qt,zt]],[y]:[2,we,[Qt,zt]],[T]:[3,ye,[Qt,zt,Ot],e=>et(jt(...e))],InvalidCell:[3,pe],[b]:[0,me],[m]:[0,Ee],[p]:[1,ke,[Wt],e=>et(Bt(e[0]))],InvalidValue:[1,be]},(([e,t,s,n],o)=>{ss[g+o+u]=(...o)=>ze(o[e],t[o[e+1]?1:0],e>0?N(o,0,e):void 0,s,n)})),Ae(ss)};export{ze as createCheckpoints,Be as createCustomPersister,Ue as createFilePersister,Oe as createIndexes,Ge as createLocalPersister,We as createMetrics,Ze as createQueries,_e as createRelationships,Ye as createRemotePersister,Ke as createSessionPersister,at as createStore,Ne as defaultSorter};
|
|
1
|
+
import{promises as e,watch as t}from"fs";const s=e=>typeof e,n="",o=s(n),a=s(!0),r=s(0),l=s(s),i="type",c="default",d="utf8",u="Listener",h="Result",g="add",f="Ids",L="Table",w=L+"s",v=L+f,S="Row",T=S+f,I="Sorted"+S+f,R="Cell",y=R+f,p="Value",b=p+"s",C=p+f,m=e=>n+e,V=(e,t)=>e.includes(t),E=(e,t)=>e.every(t),k=(e,t)=>F(e)===F(t)&&E(e,((e,s)=>t[s]===e)),J=(e,t)=>E(e,((s,n)=>0==n||t(e[n-1],s)<=0)),A=(e,t)=>e.sort(t),M=(e,t)=>e.forEach(t),D=(e,t)=>e.map(t),x=e=>z(e,((e,t)=>e+t),0),F=e=>e.length,Q=e=>0==F(e),z=(e,t,s)=>e.reduce(t,s),N=(e,t,s)=>e.slice(t,s),O=(e,...t)=>e.push(...t),j=e=>e.pop(),P=e=>e.shift(),W=e=>JSON.stringify(e,((e,t)=>G(t,Map)?z([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),B=JSON.parse,H=Math.max,$=Math.min,q=isFinite,G=(e,t)=>e instanceof t,K=e=>null==e,U=(e,t,s)=>K(e)?s?.():t(e),X=e=>e==o||e==a,Y=e=>s(e)==l,Z=e=>Array.isArray(e),_=()=>{},ee=e=>e.size,te=(e,t)=>e?.has(t)??!1,se=e=>K(e)||0==ee(e),ne=e=>[...e?.values()??[]],oe=e=>e.clear(),ae=(e,t)=>e?.forEach(t),re=(e,t)=>e?.delete(t),le=e=>new Map(e),ie=e=>[...e?.keys()??[]],ce=(e,t)=>e?.get(t),de=(e,t)=>ae(e,((e,s)=>t(s,e))),ue=(e,t,s)=>K(s)?(re(e,t),e):e?.set(t,s),he=(e,t,s)=>(te(e,t)||ue(e,t,s()),ce(e,t)),ge=(e,t,s)=>{const n={},o=t??(e=>e);return ae(e,((e,t)=>U(o(e),(e=>s?.(e)?0:n[t]=e)))),n},fe=(e,t)=>{const s=le(),n=t??(e=>e);return ae(e,((e,t)=>s.set(t,n(e)))),s},Le=e=>fe(e,fe),we=(e,t,s,n,o=0)=>U((s?he:ce)(e,t[o],o>F(t)-2?s:le),(a=>{if(o>F(t)-2)return n?.(a)&&ue(e,t[o]),a;const r=we(a,t,s,n,o+1);return se(a)&&ue(e,t[o]),r})),ve=e=>{const t=s(e);return X(t)||t==r&&q(e)?t:void 0},Se=(e,t,s,n,o)=>K(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),Te=(e,t,s)=>K(s)?e.delValue(t):e.setValue(t,s),Ie=e=>new Set(Z(e)||K(e)?e:[e]),Re=(e,t)=>e?.add(t),ye=(e,t,s)=>{const n=e.hasRow,o=le(),a=le(),r=le(),l=le(),i=le(),c=(t,s,...n)=>{const o=he(i,t,Ie);return M(n,(t=>Re(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>U(ce(i,t),(n=>{M(Q(s)?ne(n):s,(t=>{e.delListener(t),re(n,t)})),se(n)&&ue(i,t)})),u=(e,s)=>{ue(o,e,s),te(a,e)||(ue(a,e,t()),ue(r,e,le()),ue(l,e,le()))},h=e=>{ue(o,e),ue(a,e),ue(r,e),ue(l,e),d(e)};return[()=>e,()=>ie(o),e=>de(a,e),e=>te(a,e),e=>ce(o,e),e=>ce(a,e),(e,t)=>ue(a,e,t),u,(t,o,a,i,h)=>{u(t,o);const g=le(),f=le(),L=ce(r,t),w=ce(l,t),v=t=>{const a=s=>e.getCell(o,t,s),r=ce(L,t),l=n(o,t)?s(i(a,t)):void 0;if(r===l||Z(r)&&Z(l)&&k(r,l)||ue(g,t,[r,l]),!K(h)){const e=ce(w,t),s=n(o,t)?h(a,t):void 0;e!=s&&ue(f,t,s)}},S=e=>{a((()=>{ae(g,(([,e],t)=>ue(L,t,e))),ae(f,((e,t)=>ue(w,t,e)))}),g,f,L,w,e),oe(g),oe(f)};de(L,v),e.hasTable(o)&&M(e.getRowIds(o),(e=>{te(L,e)||v(e)})),S(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>S())))},h,()=>de(i,h),c,d]},pe=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),be=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},Ce=/^\d+$/,me=()=>{const e=[];let t=0;return[s=>(s?P(e):null)??n+t++,t=>{Ce.test(t)&&F(e)<1e3&&O(e,t)}]},Ve=e=>{let t;const[s,o]=me(),a=le();return[(o,r,l,i=[],c=(()=>[]))=>{t??=e();const d=s(1);return ue(a,d,[o,r,l,i,c]),Re(we(r,l??[n],Ie),d),d},(e,s,...o)=>M(((e,t=[n])=>{const s=[],o=(e,n)=>n==F(t)?O(s,e):null===t[n]?ae(e,(e=>o(e,n+1))):M([t[n],null],(t=>o(ce(e,t),n+1)));return o(e,0),s})(e,s),(e=>ae(e,(e=>ce(a,e)[0](t,...s??[],...o))))),e=>U(ce(a,e),(([,t,s])=>(we(t,s??[n],void 0,(t=>(re(t,e),se(t)?1:0))),ue(a,e),o(e),s))),e=>U(ce(a,e),(([e,,s=[],n,o])=>{const a=(...r)=>{const l=F(r);l==F(s)?e(t,...r,...o(r)):K(s[l])?M(n[l]?.(...r)??[],(e=>a(...r,e))):a(...r,s[l])};a()}))]},Ee=Object,ke=Ee.keys,Je=Ee.isFrozen,Ae=Ee.freeze,Me=e=>G(e,Ee)&&e.constructor==Ee,De=(e,t)=>!K(((e,t)=>U(e,(e=>e[t])))(e,t)),xe=(e,t)=>delete e[t],Fe=(e,t)=>D(Ee.entries(e),(([e,s])=>t(s,e))),Qe=e=>Me(e)&&Q(ke(e)),ze=be((e=>{let t,s,o,a=100,r=le(),l=le(),i=1;const c=le(),d=le(),[u,h,g]=Ve((()=>z)),f=le(),L=le(),w=[],v=[],S=(t,s)=>{i=0,e.transaction((()=>{const[n,o]=ce(f,s);ae(n,((s,n)=>ae(s,((s,o)=>ae(s,((s,a)=>Se(e,n,o,a,s[t]))))))),ae(o,((s,n)=>Te(e,n,s[t])))})),i=1},T=e=>{ue(f,e),ue(L,e),h(d,[e])},I=(e,t)=>M(((e,t)=>e.splice(0,t))(e,t??F(e)),T),R=()=>I(w,F(w)-a),y=()=>U(t,(()=>{O(w,t),R(),I(v),t=void 0,o=1})),p=()=>{t=j(w),o=1},b=e.addCellListener(null,null,null,((e,t,s,n,o,a)=>{if(i){y();const e=he(r,t,le),l=he(e,s,le),i=he(l,n,(()=>[a,void 0]));i[1]=o,i[0]===o&&se(ue(l,n))&&se(ue(e,s))&&se(ue(r,t))&&p(),J()}})),C=e.addValueListener(null,((e,t,s,n)=>{if(i){y();const e=he(l,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&se(ue(l,t))&&p(),J()}})),m=(e="")=>(K(t)&&(t=n+s++,ue(f,t,[r,l]),D(t,e),r=le(),l=le(),o=1),t),E=()=>{Q(w)||(((e,...t)=>{e.unshift(...t)})(v,m()),S(0,t),t=j(w),o=1)},k=()=>{Q(v)||(O(w,t),t=P(v),S(1,t),o=1)},J=()=>{o&&(h(c),o=0)},A=e=>{const t=m(e);return J(),t},D=(e,t)=>(x(e)&&ce(L,e)!==t&&(ue(L,e,t),h(d,[e])),z),x=e=>te(f,e),z={setSize:e=>(a=e,R(),z),addCheckpoint:A,setCheckpoint:D,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>de(L,e),hasCheckpoint:x,getCheckpoint:e=>ce(L,e),goBackward:()=>(E(),J(),z),goForward:()=>(k(),J(),z),goTo:e=>{const s=V(w,e)?E:V(v,e)?k:null;for(;!K(s)&&e!=t;)s();return J(),z},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(g(e),z),clear:()=>(I(w),I(v),K(t)||T(t),t=void 0,s=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(C)},getListenerStats:()=>({})};return Ae(z.clear())})),Ne=(e,t)=>e<t?-1:1,Oe=be((e=>{const t=le(),s=le(),[o,a,r,l,i,c,d,,u,h,g]=ye(e,le,(e=>K(e)?n:Z(e)?D(e,m):m(e))),[f,L,w]=Ve((()=>S)),v=(t,s,n)=>{const o=i(t);ae(n,((t,n)=>s(n,(s=>ae(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,a,r,l=Ne)=>{const i=K(r)?void 0:([e],[t])=>r(e,t);return u(e,n,((n,o,r,u,h,g)=>{let f=0;const w=Ie(),v=Ie(),S=c(e);if(ae(o,(([e,t],s)=>{const n=Ie(e),o=Ie(t);ae(n,(e=>re(o,e)?re(n,e):0)),ae(n,(e=>{Re(w,e),U(ce(S,e),(t=>{re(t,s),se(t)&&(ue(S,e),f=1)}))})),ae(o,(e=>{Re(w,e),te(S,e)||(ue(S,e,Ie()),f=1),Re(ce(S,e),s),K(a)||Re(v,e)}))})),n(),se(h)||(g?de(S,(e=>Re(v,e))):de(r,(e=>U(ce(u,e),(e=>Re(v,e))))),ae(v,(e=>{const t=(t,s)=>l(ce(h,t),ce(h,s),e),s=[...ce(S,e)];J(s,t)||(ue(S,e,Ie(A(s,t))),Re(w,e))}))),(f||g)&&!K(i)){const t=[...S];J(t,i)||(d(e,le(A(t,i))),f=1)}f&&L(t,[e]),ae(w,(t=>L(s,[e,t])))}),pe(o),U(a,pe)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:a,forEachIndex:e=>r(((t,s)=>e(t,(e=>v(t,e,s))))),forEachSlice:(e,t)=>v(e,t,c(e)),hasIndex:l,hasSlice:(e,t)=>te(c(e),t),getTableId:i,getSliceIds:e=>ie(c(e)),getSliceRowIds:(e,t)=>ne(ce(c(e),t)),addSliceIdsListener:(e,s)=>f(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,s,[e,t]),delListener:e=>(w(e),S),destroy:g,getListenerStats:()=>({})};return Ae(S)})),je=le([["avg",[(e,t)=>x(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=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["min",[e=>$(...e),(e,t)=>$(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:$(t,e)]],["sum",[e=>x(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Pe=(e,t,s,n,o,a=!1)=>{if(se(s))return;const[r,l,i,c]=o;return a||=K(e),ae(n,(([s,n])=>{a||(e=K(s)?l?.(e,n,t++):K(n)?i?.(e,s,t--):c?.(e,n,s,t),a||=K(e))})),a?r(ne(s),ee(s)):e},We=be((e=>{const t=le(),[s,o,a,r,l,i,c,,d,u,h]=ye(e,_,(e=>isNaN(e)||K(e)||!0===e||!1===e||e===n?void 0:1*e)),[g,f,L]=Ve((()=>w)),w={setMetricDefinition:(e,s,n,o,a,r,l)=>{const u=Y(n)?[n,a,r,l]:ce(je,n)??ce(je,"sum");return d(e,s,((s,n,o,a,r,l)=>{const d=i(e),h=ee(a);l||=K(d),s();let g=Pe(d,h,a,n,u,l);q(g)||(g=void 0),g!=d&&(c(e,g),f(t,[e],g,d))}),pe(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:a,hasMetric:r,getTableId:l,getMetric:i,addMetricListener:(e,s)=>g(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Ae(w)})),Be=(e,t,s,o,a)=>{let r,l,i=0;const c={load:async(s={},o={})=>{if(2!=i){i=1;const a=await t();K(a)||a==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(a),i=0}return c},startAutoLoad:async(e={},t={})=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(a(),c),save:async()=>(1!=i&&(i=2,await s(e.getJson()),i=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),r=e.addTablesListener(c.save),l=e.addValuesListener(c.save),c),stopAutoSave:()=>(U(r,e.delListener),U(l,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Ae(c)},He="storage",$e=globalThis.window,qe=(e,t,s)=>{let n;return Be(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},$e.addEventListener(He,n)}),(()=>{$e.removeEventListener(He,n),n=void 0}))},Ge=(e,t)=>qe(e,t,localStorage),Ke=(e,t)=>qe(e,t,sessionStorage),Ue=(s,n)=>{let o;return Be(s,(async()=>{try{return await e.readFile(n,d)}catch{}}),(async t=>{try{await e.writeFile(n,t,d)}catch{}}),(e=>{o=t(n,e)}),(()=>{o?.close(),o=void 0}))},Xe=e=>e.headers.get("ETag"),Ye=(e,t,s,n)=>{let o,a;return Be(e,(async()=>{const e=await fetch(t);return a=Xe(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=Xe(s);K(a)||K(n)||n==a||(a=n,e())}),1e3*n)}),(()=>{U(o,clearInterval),o=void 0}))},Ze=be((e=>{const t=e.createStore,[s,o,a,r,l,,,i,,c,d,f,w]=ye(e,(()=>!0),_),v=t(),p=t(),b=le(),C=(e,t,...s)=>M(s,(s=>Re(he(he(b,t,le),e,Ie),s))),m=e=>{U(ce(b,e),(e=>{de(e,((e,t)=>ae(t,(t=>e.delListener(t))))),oe(e)})),M([p,v],(t=>t.delTable(e)))},V=(e,t,s)=>C(t,e,t.addStartTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(t,s,o)=>{i(t,s),m(t);const a=[],r=[[null,[s,null,null,[],le()]]],l=[],c=[],d=[];o({select:(e,t)=>{const s=Y(e)?[F(a)+n,e]:[K(t)?e:t,s=>s(e,t)];return O(a,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=K(s)||Y(t)?null:t,o=K(n)?t:s,a=[e,[e,n,Y(o)?o:e=>e(o),[],le()]];return O(r,a),{as:e=>a[0]=e}},where:(e,t,s)=>O(l,Y(e)?e:K(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,Y(t)?[t,s,n,o]:ce(je,t)??[(e,t)=>t]]];return O(c,a),{as:e=>a[0]=e}},having:(e,t)=>O(d,Y(e)?e:s=>s(e)===t)});const u=le(a);if(se(u))return k;const h=le(r);de(h,((e,[,t])=>U(ce(h,t),(({3:t})=>K(e)?0:O(t,e)))));const g=le(c);let L=v;if(se(g)&&Q(d))L=p;else{V(t,L,p);const e=le();de(g,((t,[s,n])=>Re(he(e,s,Ie),[t,n])));const s=Ie();de(u,(t=>te(e,t)?0:Re(s,t)));const n=le(),o=(s,n,o,a)=>U(s,(([r,l,i,c])=>{de(n,((t,[s])=>{const n=he(r,t,le),l=ce(n,o),i=a?void 0:s;if(l!==i){const s=Ie([[l,i]]),a=ee(n);ue(n,o,i),ae(ce(e,t),(([e,t])=>{const o=Pe(c[e],a,n,s,t);c[e]=K(ve(o))?null:o}))}})),se(l)||!E(d,(e=>e((e=>c[e]))))?p.delRow(t,i):K(i)?s[2]=p.addRow(t,c):p.setRow(t,i,c)}));C(L,t,L.addRowListener(t,null,((a,r,l,i)=>{const c=[],d=[],u=le(),h=L.hasRow(t,l);let g=!h;ae(s,(e=>{const[s,n,o]=i(t,l,e);O(c,n),O(d,o),g||=s})),de(e,(e=>{const[s,,n]=i(t,l,e);(g||s)&&ue(u,e,[n])})),g&&o(we(n,c,void 0,(([,e])=>(re(e,l),se(e)))),u,l,1),h&&o(we(n,d,(()=>{const e={};return ae(s,(s=>e[s]=L.getCell(t,l,s))),[le(),Ie(),void 0,e]}),(([,e])=>{Re(e,l)})),u,l)})))}V(t,e,L);const S=(n,o,a,r)=>{const i=t=>e.getCell(o,a,t);M(r,(s=>{const[o,,a,r,l]=ce(h,s),c=a?.(i,n),[d,u]=ce(l,n)??[];c!=d&&(K(u)||w(t,u),ue(l,n,K(c)?null:[c,...f(t,1,e.addRowListener(o,c,(()=>S(n,o,c,r))))]))})),(n=>{const o=(t,o)=>e.getCell(...K(o)?[s,n,t]:t===s?[s,n,o]:[ce(h,t)?.[0],ce(ce(h,t)?.[4],n)?.[0],o]);L.transaction((()=>E(l,(e=>e(o)))?de(u,((e,s)=>Se(L,t,n,e,s(o,n)))):L.delRow(t,n)))})(n)},{3:T}=ce(h,null);return L.transaction((()=>f(t,1,e.addRowListener(s,null,((n,o,a)=>{e.hasRow(s,a)?S(a,s,a,T):(L.delRow(t,a),ae(h,(({4:e})=>U(ce(e,a),(([,s])=>{w(t,s),ue(e,a)})))))}))))),k},delQueryDefinition:e=>(m(e),c(e),k),getStore:s,getQueryIds:o,forEachQuery:a,hasQuery:r,getTableId:l,delListener:e=>(p.delListener(e),k),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=p.getListenerStats();return n}};return Fe({[L]:[1,1],[T]:[0,1],[I]:[0,5],[S]:[1,2],[y]:[0,2],[R]:[1,3]},(([e,t],s)=>{M(e?["get","has","forEach"]:["get"],(e=>k[e+h+s]=(...t)=>p[e+s](...t))),k[g+h+s+u]=(...e)=>p[g+s+u](...N(e,0,t),((s,...n)=>e[t](k,...n)))})),Ae(k)})),_e=be((e=>{const t=le(),s=le(),o=le(),a=le(),[r,l,i,c,d,u,,,h,g,f]=ye(e,(()=>[le(),le(),le(),le()]),(e=>K(e)?void 0:e+n)),[L,w,v]=Ve((()=>R)),S=(e,t,s)=>U(u(e),(([n,,o])=>{if(!te(o,t)){const a=Ie();if(d(e)!=I(e))Re(a,t);else{let e=t;for(;!K(e)&&!te(a,e);)Re(a,e),e=ce(n,e)}if(s)return a;ue(o,t,a)}return ce(o,t)})),T=(e,t)=>U(u(e),(([,,e])=>ue(e,t))),I=e=>ce(t,e),R={setRelationshipDefinition:(e,n,r,l)=>(ue(t,e,r),h(e,n,((t,n)=>{const r=Ie(),l=Ie(),i=Ie(),[c,d]=u(e);ae(n,(([t,s],n)=>{K(t)||(Re(l,t),U(ce(d,t),(e=>{re(e,n),se(e)&&ue(d,t)}))),K(s)||(Re(l,s),te(d,s)||ue(d,s,Ie()),Re(ce(d,s),n)),Re(r,n),ue(c,n,s),de(ce(a,e),(t=>{te(S(e,t),n)&&Re(i,t)}))})),t(),ae(r,(t=>w(s,[e,t]))),ae(l,(t=>w(o,[e,t]))),ae(i,(t=>{T(e,t),w(a,[e,t])}))}),pe(l)),R),delRelationshipDefinition:e=>(ue(t,e),g(e),R),getStore:r,getRelationshipIds:l,forEachRelationship:t=>i((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:I,getRemoteRowId:(e,t)=>ce(u(e)?.[0],t),getLocalRowIds:(e,t)=>ne(ce(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>K(u(e))?[t]:ne(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),L(s,a,[e,t])),delListener:e=>(T(...v(e)),R),destroy:f,getListenerStats:()=>({})};return Ae(R)})),et=e=>[e,e],tt=()=>[le(),le()],st=(e,t,s,n=ue)=>(Fe(t,((t,n)=>s(e,n,t))),de(e,(s=>De(t,s)?0:n(e,s))),e),nt=(e,t,s)=>K(e)||!Me(e)||Qe(e)||Je(e)?(s?.(),!1):(Fe(e,((s,n)=>{t(s,n)||xe(e,n)})),!Qe(e)),ot=(e,t,s)=>ue(e,t,ce(e,t)==-s?void 0:s),at=()=>{let e,t,s,n,o=0;const a=le(),l=le(),d=le(),h=le(),f=le(),I=le(),E=le(),J=le(),x=le(),F=le(),Q=le(),z=le(),j=le(),P=Ie(),H=le(),$=le(),q=le(),G=le(),Z=tt(),_=tt(),ee=tt(),ne=tt(),we=tt(),ye=tt(),pe=tt(),be=tt(),Ce=tt(),Ee=tt(),ke=tt(),Je=tt(),Me=tt(),ze=tt(),Oe=le(),je=tt(),[Pe,We,Be,He]=Ve((()=>as)),$e=e=>{if(!nt(e,((e,t)=>V([i,c],t))))return!1;const t=e[i];return!(!X(t)&&t!=r||(ve(e[c])!=t&&xe(e,c),0))},qe=(t,s)=>(!e||te(F,s)||Et(s))&&nt(t,((e,t)=>Ge(s,t,e)),(()=>Et(s))),Ge=(e,t,s,n)=>nt(n?s:Ye(s,e,t),((n,o)=>U(Ke(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>Et(e,t))),Ke=(t,s,n,o)=>e?U(ce(ce(F,t),n),(e=>ve(o)!=e[i]?Et(t,s,n,o,e[c]):o),(()=>Et(t,s,n,o))):K(ve(o))?Et(t,s,n,o):o,Ue=(e,t)=>nt(t?e:Ze(e),((t,s)=>U(Xe(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>kt())),Xe=(e,s)=>t?U(ce(z,e),(t=>ve(s)!=t[i]?kt(e,s,t[c]):s),(()=>kt(e,s))):K(ve(s))?kt(e,s):s,Ye=(e,t,s)=>(U(ce(Q,t),(([n,o])=>{ae(n,((t,s)=>{De(e,s)||(e[s]=t)})),ae(o,(n=>{De(e,n)||Et(t,s,n)}))})),e),Ze=e=>(t&&(ae(j,((t,s)=>{De(e,s)||(e[s]=t)})),ae(P,(t=>{De(e,t)||kt(t)}))),e),_e=e=>st(F,e,((e,t,s)=>{const n=le(),o=Ie();st(he(F,t,le),s,((e,t,s)=>{ue(e,t,s),U(s[c],(e=>ue(n,t,e)),(()=>Re(o,t)))})),ue(Q,t,[n,o])}),((e,t)=>{ue(F,t),ue(Q,t)})),rt=e=>st(z,e,((e,t,s)=>{ue(z,t,s),U(s[c],(e=>ue(j,t,e)),(()=>Re(P,t)))}),((e,t)=>{ue(z,t),ue(j,t),re(P,t)})),lt=e=>Qe(e)?Zt():Gt(e),it=e=>st(q,e,((e,t,s)=>ct(t,s)),((e,t)=>St(t))),ct=(e,t)=>st(he(q,e,(()=>(yt(e,1),ue(H,e,me()),ue($,e,le()),le()))),t,((t,s,n)=>dt(e,t,s,n)),((t,s)=>Tt(e,t,s))),dt=(e,t,s,n,o)=>st(he(t,s,(()=>(pt(e,s,1),le()))),n,((t,n,o)=>ut(e,s,t,n,o)),((n,a)=>It(e,t,s,n,a,o))),ut=(e,t,s,n,o)=>{te(s,n)||bt(e,t,n,1);const a=ce(s,n);o!==a&&(Ct(e,t,n,a,o),ue(s,n,o))},ht=(e,t,s,n,o)=>U(ce(t,s),(t=>ut(e,s,t,n,o)),(()=>dt(e,t,s,Ye({[n]:o},e,s)))),gt=e=>Qe(e)?_t():Kt(e),ft=e=>st(G,e,((e,t,s)=>Lt(t,s)),((e,t)=>Rt(t))),Lt=(e,t)=>{te(G,e)||mt(e,1);const s=ce(G,e);t!==s&&(Vt(e,s,t),ue(G,e,t))},wt=(e,t)=>{const[s]=ce(H,e),n=s(t);return te(ce(q,e),n)?wt(e,t):n},vt=e=>ce(q,e)??ct(e,{}),St=e=>ct(e,{}),Tt=(e,t,s)=>{const[,n]=ce(H,e);n(s),dt(e,t,s,{},!0)},It=(e,t,s,n,o,a)=>{const r=ce(ce(Q,e)?.[0],o);if(!K(r)&&!a)return ut(e,s,n,o,r);const l=t=>{Ct(e,s,t,ce(n,t)),bt(e,s,t,-1),ue(n,t)};K(r)?l(o):de(n,l),se(n)&&(pt(e,s,-1),se(ue(t,s))&&(yt(e,-1),ue(q,e),ue(H,e),ue($,e)))},Rt=e=>{const t=ce(j,e);if(!K(t))return Lt(e,t);Vt(e,ce(G,e)),mt(e,-1),ue(G,e)},yt=(e,t)=>ot(a,e,t),pt=(e,t,s)=>ot(he(d,e,le),t,s),bt=(e,t,s,n)=>{const o=ce($,e),a=ce(o,s)??0;(0==a&&1==n||1==a&&-1==n)&&ot(he(l,e,le),s,n),ue(o,s,a!=-n?a+n:null),ot(he(he(h,e,le),t,le),s,n)},Ct=(e,t,s,n,o)=>he(he(he(f,e,le),t,le),s,(()=>[n,0]))[1]=o,mt=(e,t)=>ot(I,e,t),Vt=(e,t,s)=>he(E,e,(()=>[t,0]))[1]=s,Et=(e,t,s,n,o)=>(O(he(he(he(J,e,le),t,le),s,(()=>[])),n),o),kt=(e,t,s)=>(O(he(x,e,(()=>[])),t),s),Jt=(e,t,s)=>U(ce(ce(ce(f,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...et(Bt(e,t,s))])),At=e=>U(ce(E,e),(([e,t])=>[!0,e,t]),(()=>[!1,...et(qt(e))])),Mt=e=>se(J)||se(Ee[e])?0:ae(e?fe(J,Le):J,((t,s)=>ae(t,((t,n)=>ae(t,((t,o)=>We(Ee[e],[s,n,o],t))))))),Dt=e=>se(x)||se(ke[e])?0:ae(e?fe(x):x,((t,s)=>We(ke[e],[s],t))),xt=(e,t,s)=>{if(!se(t))return We(e,s,(()=>ge(t))),1},Ft=e=>{const t=se(ye[e]),s=se(be[e])&&se(ne[e])&&se(we[e])&&t&&se(_[e]),n=se(Ce[e])&&se(pe[e])&&se(ee[e])&&se(Z[e]);if(!s||!n){const o=e?[fe(a),Le(l),Le(d),fe(h,Le),fe(f,Le)]:[a,l,d,h,f];if(!s){ae(o[1],((t,s)=>xt(ne[e],t,[s]))),ae(o[3],((t,s)=>ae(t,((t,n)=>xt(be[e],t,[s,n])))));const s=Ie();ae(o[2],((n,o)=>{xt(we[e],n,[o])&&!t&&(We(ye[e],[o,null]),Re(s,o))})),t||ae(o[4],((t,n)=>{if(!te(s,n)){const s=Ie();ae(t,(e=>ae(e,(([t,n],o)=>n!==t?Re(s,o):re(e,o))))),ae(s,(t=>We(ye[e],[n,t])))}})),xt(_[e],o[0])}if(!n){let t;ae(o[4],((s,n)=>{let o;ae(s,((s,a)=>{let r;ae(s,(([s,l],i)=>{l!==s&&(We(Ce[e],[n,a,i],l,s,Jt),t=o=r=1)})),r&&We(pe[e],[n,a],Jt)})),o&&We(ee[e],[n],Jt)})),t&&We(Z[e],void 0,Jt)}}},Qt=e=>{const t=se(Me[e]),s=se(ze[e])&&se(Je[e]);if(!t||!s){const n=e?[fe(I),fe(E)]:[I,E];if(t||xt(Me[e],n[0]),!s){let t;ae(n[1],(([s,n],o)=>{n!==s&&(We(ze[e],[o],n,s,At),t=1)})),t&&We(Je[e],void 0,At)}}},zt=(e,...t)=>(ss((()=>e(...D(t,m)))),as),Nt=()=>ge(q,(e=>ge(e,ge))),Ot=()=>ie(q),jt=e=>ie(ce(q,m(e))),Pt=(e,t,s,n=0,o)=>{return D(N(A((a=ce(q,m(e)),r=(e,s)=>[K(t)?s:ce(e,m(t)),s],D([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Ne(e,t)*(s?-1:1))),n,K(o)?o:n+o),(([,e])=>e));var a,r},Wt=(e,t)=>ie(ce(ce(q,m(e)),m(t))),Bt=(e,t,s)=>ce(ce(ce(q,m(e)),m(t)),m(s)),Ht=()=>ge(G),$t=()=>ie(G),qt=e=>ce(G,m(e)),Gt=e=>zt((()=>(e=>nt(e,qe,Et))(e)?it(e):0)),Kt=e=>zt((()=>Ue(e)?ft(e):0)),Ut=e=>{try{lt(B(e))}catch{}return as},Xt=t=>zt((()=>{if((e=nt(t,(e=>nt(e,$e))))&&(_e(t),!se(q))){const e=Nt();Zt(),Gt(e)}})),Yt=e=>zt((()=>{if(t=(e=>nt(e,$e))(e)){const s=Ht();ts(),_t(),t=!0,rt(e),Kt(s)}})),Zt=()=>zt((()=>it({}))),_t=()=>zt((()=>ft({}))),es=()=>zt((()=>{_e({}),e=!1})),ts=()=>zt((()=>{rt({}),t=!1})),ss=(e,t)=>{if(-1!=o){ns();const s=e();return os(t),s}},ns=()=>(-1!=o&&o++,1==o&&We(Oe,void 0,!1,!1),as),os=e=>(o>0&&(o--,0==o&&(s=!se(f),n=!se(E),o=1,Mt(1),s&&Ft(1),Dt(1),n&&Qt(1),e?.(ge(f,(e=>ge(e,(e=>ge(e,(e=>[...e]),(([e,t])=>e===t))),Qe)),Qe),ge(J,(e=>ge(e,ge))),ge(E,(e=>[...e]),(([e,t])=>e===t)),ge(x))&&(ae(f,((e,t)=>ae(e,((e,s)=>ae(e,(([e],n)=>Se(as,t,s,n,e))))))),ae(E,(([e],t)=>Te(as,t,e))),s=n=!1),We(je[0],void 0,s,n),o=-1,Mt(0),s&&Ft(0),Dt(0),n&&Qt(0),We(je[1],void 0,s,n),o=0,M([a,l,d,h,f,J,I,E,x],oe))),as),as={getTables:Nt,getTableIds:Ot,getTable:e=>ge(ce(q,m(e)),ge),getTableCellIds:e=>ie(ce($,m(e))),getRowIds:jt,getSortedRowIds:Pt,getRow:(e,t)=>ge(ce(ce(q,m(e)),m(t))),getCellIds:Wt,getCell:Bt,getValues:Ht,getValueIds:$t,getValue:qt,hasTables:()=>!se(q),hasTable:e=>te(q,m(e)),hasTableCell:(e,t)=>te(ce($,m(e)),m(t)),hasRow:(e,t)=>te(ce(q,m(e)),m(t)),hasCell:(e,t,s)=>te(ce(ce(q,m(e)),m(t)),m(s)),hasValues:()=>!se(G),hasValue:e=>te(G,m(e)),getTablesJson:()=>W(q),getValuesJson:()=>W(G),getJson:()=>W([q,G]),getTablesSchemaJson:()=>W(F),getValuesSchemaJson:()=>W(z),getSchemaJson:()=>W([F,z]),setTables:Gt,setTable:(e,t)=>zt((e=>qe(t,e)?ct(e,t):0),e),setRow:(e,t,s)=>zt(((e,t)=>Ge(e,t,s)?dt(e,vt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ss((()=>{let n;return Ge(e,n,t)&&(e=m(e),dt(e,vt(e),n=wt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>zt(((e,t)=>{if(Ge(e,t,s,1)){const n=vt(e);Fe(s,((s,o)=>ht(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>zt(((e,t,s)=>U(Ke(e,t,s,Y(n)?n(Bt(e,t,s)):n),(n=>ht(e,vt(e),t,s,n)))),e,t,s),setValues:Kt,setPartialValues:e=>zt((()=>Ue(e,1)?Fe(e,((e,t)=>Lt(t,e))):0)),setValue:(e,t)=>zt((e=>U(Xe(e,Y(t)?t(qt(e)):t),(t=>Lt(e,t)))),e),setTablesJson:Ut,setValuesJson:e=>{try{gt(B(e))}catch{}return as},setJson:e=>{try{const[t,s]=B(e);lt(t),gt(s)}catch{Ut(e)}return as},setTablesSchema:Xt,setValuesSchema:Yt,setSchema:(e,t)=>zt((()=>{Xt(e),Yt(t)})),delTables:Zt,delTable:e=>zt((e=>te(q,e)?St(e):0),e),delRow:(e,t)=>zt(((e,t)=>U(ce(q,e),(s=>te(s,t)?Tt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>zt(((e,t,s)=>U(ce(q,e),(o=>U(ce(o,t),(a=>te(a,s)?It(e,o,t,a,s,n):0))))),e,t,s),delValues:_t,delValue:e=>zt((e=>te(G,e)?Rt(e):0),e),delTablesSchema:es,delValuesSchema:ts,delSchema:()=>zt((()=>{es(),ts()})),transaction:ss,startTransaction:ns,finishTransaction:os,forEachTable:e=>ae(q,((t,s)=>e(s,(e=>ae(t,((t,s)=>e(s,(e=>de(t,e))))))))),forEachTableCell:(e,t)=>de(ce($,m(e)),t),forEachRow:(e,t)=>ae(ce(q,m(e)),((e,s)=>t(s,(t=>de(e,t))))),forEachCell:(e,t,s)=>de(ce(ce(q,m(e)),m(t)),s),forEachValue:e=>de(G,e),addSortedRowIdsListener:(e,t,s,n,o,a,r)=>{let l=Pt(e,t,s,n,o);return Pe((()=>{const r=Pt(e,t,s,n,o);k(r,l)||(l=r,a(as,e,t,s,n,o,l))}),ye[r?1:0],[e,t],[Ot])},addStartTransactionListener:e=>Pe(e,Oe),addWillFinishTransactionListener:e=>Pe(e,je[0]),addDidFinishTransactionListener:e=>Pe(e,je[1]),callListener:e=>(He(e),as),delListener:e=>(Be(e),as),getListenerStats:()=>({}),createStore:at};return Fe({[w]:[0,Z],[v]:[0,_],[L]:[1,ee,[Ot]],[L+y]:[1,ne,[Ot]],[T]:[1,we,[Ot]],[S]:[2,pe,[Ot,jt]],[y]:[2,be,[Ot,jt]],[R]:[3,Ce,[Ot,jt,Wt],e=>et(Bt(...e))],InvalidCell:[3,Ee],[b]:[0,Je],[C]:[0,Me],[p]:[1,ze,[$t],e=>et(qt(e[0]))],InvalidValue:[1,ke]},(([e,t,s,n],o)=>{as[g+o+u]=(...o)=>Pe(o[e],t[o[e+1]?1:0],e>0?N(o,0,e):void 0,s,n)})),Ae(as)};export{ze as createCheckpoints,Be as createCustomPersister,Ue as createFilePersister,Oe as createIndexes,Ge as createLocalPersister,We as createMetrics,Ze as createQueries,_e as createRelationships,Ye as createRemotePersister,Ke as createSessionPersister,at as createStore,Ne as defaultSorter};
|
package/lib/tinybase.js.gz
CHANGED
|
Binary file
|