tinybase 3.1.0 → 3.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/lib/checkpoints.js +1 -1
  2. package/lib/checkpoints.js.gz +0 -0
  3. package/lib/cjs/checkpoints.cjs +1 -1
  4. package/lib/cjs/checkpoints.cjs.gz +0 -0
  5. package/lib/cjs/indexes.cjs +1 -1
  6. package/lib/cjs/indexes.cjs.gz +0 -0
  7. package/lib/cjs/metrics.cjs +1 -1
  8. package/lib/cjs/metrics.cjs.gz +0 -0
  9. package/lib/cjs/relationships.cjs +1 -1
  10. package/lib/cjs/relationships.cjs.gz +0 -0
  11. package/lib/cjs/store.cjs +1 -1
  12. package/lib/cjs/store.cjs.gz +0 -0
  13. package/lib/cjs/tinybase.cjs +1 -1
  14. package/lib/cjs/tinybase.cjs.gz +0 -0
  15. package/lib/cjs/tools.cjs +1 -1
  16. package/lib/cjs/tools.cjs.gz +0 -0
  17. package/lib/cjs/ui-react.cjs +1 -1
  18. package/lib/cjs/ui-react.cjs.gz +0 -0
  19. package/lib/cjs-es6/checkpoints.cjs +1 -1
  20. package/lib/cjs-es6/checkpoints.cjs.gz +0 -0
  21. package/lib/cjs-es6/indexes.cjs +1 -1
  22. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  23. package/lib/cjs-es6/metrics.cjs +1 -1
  24. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  25. package/lib/cjs-es6/relationships.cjs +1 -1
  26. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  27. package/lib/cjs-es6/store.cjs +1 -1
  28. package/lib/cjs-es6/store.cjs.gz +0 -0
  29. package/lib/cjs-es6/tinybase.cjs +1 -1
  30. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  31. package/lib/cjs-es6/tools.cjs +1 -1
  32. package/lib/cjs-es6/tools.cjs.gz +0 -0
  33. package/lib/cjs-es6/ui-react.cjs +1 -1
  34. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  35. package/lib/debug/checkpoints.js +2 -2
  36. package/lib/debug/indexes.js +2 -2
  37. package/lib/debug/metrics.js +2 -2
  38. package/lib/debug/relationships.js +2 -2
  39. package/lib/debug/store.js +17 -24
  40. package/lib/debug/tinybase.js +17 -24
  41. package/lib/debug/tools.js +5 -4
  42. package/lib/debug/ui-react.js +3 -2
  43. package/lib/es6/checkpoints.js +1 -1
  44. package/lib/es6/checkpoints.js.gz +0 -0
  45. package/lib/es6/indexes.js +1 -1
  46. package/lib/es6/indexes.js.gz +0 -0
  47. package/lib/es6/metrics.js +1 -1
  48. package/lib/es6/metrics.js.gz +0 -0
  49. package/lib/es6/relationships.js +1 -1
  50. package/lib/es6/relationships.js.gz +0 -0
  51. package/lib/es6/store.js +1 -1
  52. package/lib/es6/store.js.gz +0 -0
  53. package/lib/es6/tinybase.js +1 -1
  54. package/lib/es6/tinybase.js.gz +0 -0
  55. package/lib/es6/tools.js +1 -1
  56. package/lib/es6/tools.js.gz +0 -0
  57. package/lib/es6/ui-react.js +1 -1
  58. package/lib/es6/ui-react.js.gz +0 -0
  59. package/lib/indexes.js +1 -1
  60. package/lib/indexes.js.gz +0 -0
  61. package/lib/metrics.js +1 -1
  62. package/lib/metrics.js.gz +0 -0
  63. package/lib/relationships.js +1 -1
  64. package/lib/relationships.js.gz +0 -0
  65. package/lib/store.js +1 -1
  66. package/lib/store.js.gz +0 -0
  67. package/lib/tinybase.js +1 -1
  68. package/lib/tinybase.js.gz +0 -0
  69. package/lib/tools.js +1 -1
  70. package/lib/tools.js.gz +0 -0
  71. package/lib/types/store.d.ts +22 -12
  72. package/lib/types/ui-react.d.ts +11 -0
  73. package/lib/types/with-schemas/store.d.ts +23 -12
  74. package/lib/types/with-schemas/ui-react.d.ts +12 -0
  75. package/lib/ui-react.js +1 -1
  76. package/lib/ui-react.js.gz +0 -0
  77. package/lib/umd/checkpoints.js +1 -1
  78. package/lib/umd/checkpoints.js.gz +0 -0
  79. package/lib/umd/indexes.js +1 -1
  80. package/lib/umd/indexes.js.gz +0 -0
  81. package/lib/umd/metrics.js +1 -1
  82. package/lib/umd/metrics.js.gz +0 -0
  83. package/lib/umd/relationships.js +1 -1
  84. package/lib/umd/relationships.js.gz +0 -0
  85. package/lib/umd/store.js +1 -1
  86. package/lib/umd/store.js.gz +0 -0
  87. package/lib/umd/tinybase.js +1 -1
  88. package/lib/umd/tinybase.js.gz +0 -0
  89. package/lib/umd/tools.js +1 -1
  90. package/lib/umd/tools.js.gz +0 -0
  91. package/lib/umd/ui-react.js +1 -1
  92. package/lib/umd/ui-react.js.gz +0 -0
  93. package/lib/umd-es6/checkpoints.js +1 -1
  94. package/lib/umd-es6/checkpoints.js.gz +0 -0
  95. package/lib/umd-es6/indexes.js +1 -1
  96. package/lib/umd-es6/indexes.js.gz +0 -0
  97. package/lib/umd-es6/metrics.js +1 -1
  98. package/lib/umd-es6/metrics.js.gz +0 -0
  99. package/lib/umd-es6/relationships.js +1 -1
  100. package/lib/umd-es6/relationships.js.gz +0 -0
  101. package/lib/umd-es6/store.js +1 -1
  102. package/lib/umd-es6/store.js.gz +0 -0
  103. package/lib/umd-es6/tinybase.js +1 -1
  104. package/lib/umd-es6/tinybase.js.gz +0 -0
  105. package/lib/umd-es6/tools.js +1 -1
  106. package/lib/umd-es6/tools.js.gz +0 -0
  107. package/lib/umd-es6/ui-react.js +1 -1
  108. package/lib/umd-es6/ui-react.js.gz +0 -0
  109. package/package.json +9 -9
  110. package/readme.md +1 -1
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,N=(e,t)=>e instanceof t,j=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)=>j(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,Ne="WhenSet",je=" 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)||j(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=>N(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}'${j(a)?"?":t}: ${l}`)))+"}"))),Be(1,5)),I=e(i+Ne,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($+Ne,be+`<${I}[TId]>`,"A "+$+" in "+xe+je,m),y=e(p,f+"<TId>[Id]","A "+p+" in a "+$,m),v=e(p+Ne,w+"<TId>[Id]","A "+p+" in a "+$+je,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)),N=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,N,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}'${j(a)?"?":t}: ${l}`))),Be(2,5)),s=e(f+Ne,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)],Nt=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),jt=(e,l=t)=>`fluent(() => ${Nt(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),[N,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?jt:Nt)(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]=N(Y,X),H=U();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+$,r+l,fe+` the '${e}' `+$),v(t+$+Ne,s+l,fe+` the '${e}' `+$+je),v(t+p,I+l,Fe(e)),v(t+p+Ne,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,n+", row"),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+(j(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}'`)}${j(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}'`)}${j(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("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",N=mt(a,1),L=mt(N),M=N+"Or"+N+Ie,G=L+"Or"+N+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,N);const q=I(M,N+" | "+Ie,`Used when you need to refer to a ${N} in a React hook or component`),K=I(ge+he,Tt(L+ue+N,L+`ById?: {[${L}Id: Id]: ${N}}`),`Used with the ${ge} component, so that a `+N+" 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<[${N}?, {[${L}Id: Id]: ${N}}?]>([])`),B("Create"+N,`create: () => ${N}, create`+oe,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const ee=B(N,"id?: Id",N+pe,["{",_t,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} 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,N),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+N,zt),Ze(Y+h),`<TId extends ${a}, CId extends ${o}<TId>>`),z=I(p+he,Tt("tableId?: TId","rowId: Id",L+ue+N,"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+N,`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+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+"sorted "+$),`<TId extends ${a}>`),U=I(i+he,Tt(L+ue+N,"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),al),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+(j(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,N);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+N,zt),Ze("a Value"),`<VId extends ${a}>`),p=I(f+he,Tt(L+ue+N,"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",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,N=(e,t)=>e instanceof t,j=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)=>j(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,Ne="WhenSet",je=" 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)||j(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=>N(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}'${j(a)?"?":t}: ${l}`)))+"}"))),Be(1,5)),I=e(i+Ne,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($+Ne,be+`<${I}[TId]>`,"A "+$+" in "+xe+je,m),y=e(p,f+"<TId>[Id]","A "+p+" in a "+$,m),v=e(p+Ne,w+"<TId>[Id]","A "+p+" in a "+$+je,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)),N=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,N,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}'${j(a)?"?":t}: ${l}`))),Be(2,5)),s=e(f+Ne,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)],Nt=(e,l=t,a=t)=>`store.${e}(${l})`+(a?" as "+a:t),jt=(e,l=t)=>`fluent(() => ${Nt(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),[N,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?jt:Nt)(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]=N(Y,X),H=U();O(((e,t)=>{const l=`<'${e}'>`,a=[v(t+$,r+l,fe+` the '${e}' `+$),v(t+$+Ne,s+l,fe+` the '${e}' `+$+je),v(t+p,I+l,Fe(e)),v(t+p+Ne,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+(j(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}'`)}${j(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}'`)}${j(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("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",N=mt(a,1),L=mt(N),M=N+"Or"+N+Ie,G=L+"Or"+N+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,N);const q=I(M,N+" | "+Ie,`Used when you need to refer to a ${N} in a React hook or component`),K=I(ge+he,Tt(L+ue+N,L+`ById?: {[${L}Id: Id]: ${N}}`),`Used with the ${ge} component, so that a `+N+" 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<[${N}?, {[${L}Id: Id]: ${N}}?]>([])`),B("Create"+N,`create: () => ${N}, create`+oe,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const ee=B(N,"id?: Id",N+pe,["{",_t,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} 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,N),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+N,zt),Ze(Y+h),`<TId extends ${a}, CId extends ${o}<TId>>`),z=I(p+he,Tt("tableId?: TId","rowId: Id",L+ue+N,"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+N,`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+N,`rowComponent?: ComponentType<${z}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",el,zt),Ze(Y+"sorted "+$),`<TId extends ${a}>`),U=I(i+he,Tt(L+ue+N,"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+(j(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,N);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+N,zt),Ze("a Value"),`<VId extends ${a}>`),p=I(f+he,Tt(L+ue+N,"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};
Binary file
@@ -1 +1 @@
1
- import e,{useContext as o}from"react";const t=e=>typeof e,r=t(""),l=(e,o)=>e.map(o),d=e=>null==e,s=(e,o,t)=>d(e)?null==t?void 0:t():o(e),n=e=>t(e)==r,u=()=>{},{createContext:a,useContext:i}=e,I=a([]),c=(e,o)=>{const t=i(I);return d(e)?t[o]:n(e)?((e,o)=>s(e,(e=>e[o])))(t[o+1],e):e},p=(e,o)=>{const t=c(e,o);return d(e)||n(e)?t:e},b=e=>c(e,0),v=e=>c(e,2),g=e=>c(e,4),w=e=>c(e,6),R=e=>c(e,8),C=e=>c(e,10),m=e=>p(e,0),y=e=>p(e,2),k=e=>p(e,4),h=e=>p(e,6),f=e=>p(e,8),P=e=>p(e,10),{useCallback:T,useEffect:q,useMemo:x,useRef:S,useState:V}=e,O=(e,o,t=[])=>{const r=x((()=>o(e)),[e,...t]);return q((()=>()=>r.destroy()),[r]),r},B=(e,o,t,r=[],l)=>{const[,s]=V(),n=T((()=>{var l,d;return null!=(d=null==(l=null==o?void 0:o["get"+e])?void 0:l.call(o,...r))?d:t}),[o,...r]),[u]=V(n),a=S(u);return x((()=>a.current=n()),[n]),L(e,o,((...e)=>{a.current=d(l)?n():e[l],s([])}),[],r),a.current},L=(e,o,t,r=[],l=[],...d)=>q((()=>{var r;const s=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...l,t,...d);return()=>null==o?void 0:o.delListener(s)}),[o,...l,...r,...d]),j=(e,o,t,r=[],l=u,d=[],...n)=>{const a=m(e);return T((e=>s(a,(r=>s(t(e,r),(e=>l(r["set"+o](...n,e),e)))))),[a,o,...r,...d,...n])},M=(e,o,t=u,r=[],...l)=>{const d=m(e);return T((()=>t(null==d?void 0:d["del"+o](...l))),[d,o,...r,...l])},E=(e,o,t)=>{const r=P(e);return T((()=>null==r?void 0:r[o](t)),[r,o,t])},A=(e,o=[])=>x(e,o),D=e=>B("Tables",m(e),{}),F=e=>B("TableIds",m(e),[],[]),z=(e,o)=>B("Table",m(o),{},[e]),G=(e,o)=>B("RowIds",m(o),[],[e]),H=(e,o,t,r=0,l,d)=>B("SortedRowIds",m(d),[],[e,o,t,r,l],6),J=(e,o,t)=>B("Row",m(t),{},[e,o]),K=(e,o,t)=>B("CellIds",m(t),[],[e,o]),N=(e,o,t,r)=>B("Cell",m(r),void 0,[e,o,t],4),Q=e=>B("Values",m(e),{}),U=e=>B("ValueIds",m(e),[],[]),W=(e,o)=>B("Value",m(o),void 0,[e]),X=(e,o,t,r,l)=>j(t,"Tables",e,o,r,l),Y=(e,o,t,r,l,d)=>j(r,"Table",o,t,l,d,e),Z=(e,o,t,r,l,d,s)=>j(l,"Row",t,r,d,s,e,o),$=(e,o,t=[],r,l=u,d=[])=>{const n=m(r);return T((t=>s(n,(r=>s(o(t,r),(o=>l(r.addRow(e,o),r,o)))))),[n,e,...t,...d])},_=(e,o,t,r,l,d,s)=>j(l,"PartialRow",t,r,d,s,e,o),ee=(e,o,t,r,l,d,s,n)=>j(d,"Cell",r,l,s,n,e,o,t),oe=(e,o,t,r,l)=>j(t,"Values",e,o,r,l),te=(e,o,t,r,l)=>j(t,"PartialValues",e,o,r,l),re=(e,o,t,r,l,d)=>j(r,"Value",o,t,l,d,e),le=(e,o,t)=>M(e,"Tables",o,t),de=(e,o,t,r)=>M(o,"Table",t,r,e),se=(e,o,t,r,l)=>M(t,"Row",r,l,e,o),ne=(e,o,t,r,l,d,s)=>M(l,"Cell",d,s,e,o,t,r),ue=(e,o,t)=>M(e,"Values",o,t),ae=(e,o,t,r)=>M(o,"Value",t,r,e),ie=(e,o,t,r)=>L("Tables",m(r),e,o,[],t),Ie=(e,o,t,r)=>L("TableIds",m(r),e,o,[],t),ce=(e,o,t,r,l)=>L("Table",m(l),o,t,[e],r),pe=(e,o,t,r,l)=>L("RowIds",m(l),o,t,[e],r),be=(e,o,t,r,l,d,s,n,u)=>L("SortedRowIds",m(u),d,s,[e,o,t,r,l],n),ve=(e,o,t,r,l,d)=>L("Row",m(d),t,r,[e,o],l),ge=(e,o,t,r,l,d)=>L("CellIds",m(d),t,r,[e,o],l),we=(e,o,t,r,l,d,s)=>L("Cell",m(s),r,l,[e,o,t],d),Re=(e,o,t,r)=>L("Values",m(r),e,o,[],t),Ce=(e,o,t,r)=>L("ValueIds",m(r),e,o,[],t),me=(e,o,t,r,l)=>L("Value",m(l),o,t,[e],r),ye=(e,o,t)=>O(e,o,t),ke=(e,o)=>B("Metric",y(o),void 0,[e]),he=(e,o,t,r)=>L("Metric",y(r),o,t,[e]),fe=(e,o,t)=>O(e,o,t),Pe=(e,o)=>B("SliceIds",k(o),[],[e]),Te=(e,o,t)=>B("SliceRowIds",k(t),[],[e,o]),qe=(e,o,t,r)=>L("SliceIds",k(r),o,t,[e]),xe=(e,o,t,r,l)=>L("SliceRowIds",k(l),t,r,[e,o]),Se=(e,o,t)=>O(e,o,t),Ve=(e,o,t)=>B("RemoteRowId",h(t),void 0,[e,o]),Oe=(e,o,t)=>B("LocalRowIds",h(t),[],[e,o]),Be=(e,o,t)=>B("LinkedRowIds",h(t),[],[e,o]),Le=(e,o,t,r,l)=>L("RemoteRowId",h(l),t,r,[e,o]),je=(e,o,t,r,l)=>L("LocalRowIds",h(l),t,r,[e,o]),Me=(e,o,t,r,l)=>L("LinkedRowIds",h(l),t,r,[e,o]),Ee=(e,o,t)=>O(e,o,t),Ae=(e,o)=>B("ResultTable",f(o),{},[e]),De=(e,o)=>B("ResultRowIds",f(o),[],[e]),Fe=(e,o,t,r=0,l,d)=>B("ResultSortedRowIds",f(d),[],[e,o,t,r,l],6),ze=(e,o,t)=>B("ResultRow",f(t),{},[e,o]),Ge=(e,o,t)=>B("ResultCellIds",f(t),[],[e,o]),He=(e,o,t,r)=>B("ResultCell",f(r),void 0,[e,o,t]),Je=(e,o,t,r)=>L("ResultTable",f(r),o,t,[e]),Ke=(e,o,t,r)=>L("ResultRowIds",f(r),o,t,[e]),Ne=(e,o,t,r,l,d,s,n)=>L("ResultSortedRowIds",f(n),d,s,[e,o,t,r,l]),Qe=(e,o,t,r,l)=>L("ResultRow",f(l),t,r,[e,o]),Ue=(e,o,t,r,l)=>L("ResultCellIds",f(l),t,r,[e,o]),We=(e,o,t,r,l,d)=>L("ResultCell",f(d),r,l,[e,o,t]),Xe=(e,o,t)=>O(e,o,t),Ye=e=>B("CheckpointIds",P(e),[[],void 0,[]]),Ze=(e,o)=>B("Checkpoint",P(o),void 0,[e]),$e=(e=u,o=[],t,r=u,l=[])=>{const d=P(t);return T((o=>s(d,(t=>{const l=e(o);r(t.addCheckpoint(l),t,l)}))),[d,...o,...l])},_e=e=>E(e,"goBackward"),eo=e=>E(e,"goForward"),oo=(e,o=[],t,r=u,l=[])=>{const d=P(t);return T((o=>s(d,(t=>s(e(o),(e=>r(t.goTo(e),e)))))),[d,...o,...l])},to=e=>{var o;const t=P(e),[r,l]=Ye(t);return[(d=r,!(0==(e=>e.length)(d))),_e(t),l,null!=(o=s(l,(e=>null==t?void 0:t.getCheckpoint(e))))?o:""];var d},ro=e=>{var o;const t=P(e),[,,[r]]=Ye(t);return[!d(r),eo(t),r,null!=(o=s(r,(e=>null==t?void 0:t.getCheckpoint(e))))?o:""]},lo=(e,o,t)=>L("CheckpointIds",P(t),e,o),so=(e,o,t,r)=>L("Checkpoint",P(r),o,t,[e]),no=(e,o,t=[],r,l=[])=>{const[,d]=V(),s=x((()=>o(e)),[e,...t]);return q((()=>{var e;return e=function*(){yield null==r?void 0:r(s),d(1)},new Promise(((o,t)=>{var r=o=>{try{d(e.next(o))}catch(e){t(e)}},l=o=>{try{d(e.throw(o))}catch(e){t(e)}},d=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);d((e=e.apply(void 0,null)).next())})),()=>{s.destroy()}}),[s,...l]),s};var uo=Object.defineProperty,ao=Object.defineProperties,io=Object.getOwnPropertyDescriptors,Io=Object.getOwnPropertySymbols,co=Object.prototype.hasOwnProperty,po=Object.prototype.propertyIsEnumerable,bo=(e,o,t)=>o in e?uo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,vo=(e,o)=>{for(var t in o||(o={}))co.call(o,t)&&bo(e,t,o[t]);if(Io)for(var t of Io(o))po.call(o,t)&&bo(e,t,o[t]);return e},go=(e,o)=>ao(e,io(o)),wo=(e,o)=>{var t={};for(var r in e)co.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Io)for(var r of Io(e))o.indexOf(r)<0&&po.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Ro,useMemo:Co}=e,mo=({tableId:e,store:o,rowComponent:t=So,getRowComponentProps:r,separator:d,debugIds:s},n)=>qo(l(n,(l=>Ro(t,go(vo({},Po(r,l)),{key:l,tableId:e,rowId:l,store:o,debugIds:s})))),d,s,e),yo=({queryId:e,queries:o,resultRowComponent:t=Ho,getResultRowComponentProps:r,separator:d,debugIds:s},n)=>qo(l(n,(l=>Ro(t,go(vo({},Po(r,l)),{key:l,queryId:e,rowId:l,queries:o,debugIds:s})))),d,s,e),ko=e=>{const o=h(e);return[o,null==o?void 0:o.getStore()]},ho=({relationshipId:e,relationships:o,rowComponent:t=So,getRowComponentProps:r,separator:d,debugIds:s},n,u)=>{const[a,i]=ko(o),I=null==a?void 0:a.getLocalTableId(e),c=n(e,u,a);return qo(l(c,(e=>Ro(t,go(vo({},Po(r,e)),{key:e,tableId:I,rowId:e,store:i,debugIds:s})))),d,s,u)},fo=e=>({checkpoints:o,checkpointComponent:t=No,getCheckpointComponentProps:r,separator:d,debugIds:s})=>{const n=P(o);return qo(l(e(Ye(n)),(e=>Ro(t,go(vo({},Po(r,e)),{key:e,checkpoints:n,checkpointId:e,debugIds:s})))),d)},Po=(e,o)=>d(e)?{}:e(o),To=({store:e,storesById:t,metrics:r,metricsById:l,indexes:d,indexesById:s,relationships:n,relationshipsById:u,queries:a,queriesById:i,checkpoints:c,checkpointsById:p,children:b})=>{const v=o(I);return Ro(I.Provider,{value:Co((()=>[null!=e?e:v[0],vo(vo({},v[1]),t),null!=r?r:v[2],vo(vo({},v[3]),l),null!=d?d:v[4],vo(vo({},v[5]),s),null!=n?n:v[6],vo(vo({},v[7]),u),null!=a?a:v[8],vo(vo({},v[9]),i),null!=c?c:v[10],vo(vo({},v[11]),p)]),[e,t,r,l,d,s,n,u,a,i,c,p,v])},b)},qo=(e,o,t,r)=>{const s=d(o)||!Array.isArray(e)?e:l(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",s,"}"]:s},xo=({tableId:e,rowId:o,cellId:t,store:r,debugIds:l})=>{var d;return qo(""+(null!=(d=N(e,o,t,r))?d:""),void 0,l,t)},So=({tableId:e,rowId:o,store:t,cellComponent:r=xo,getCellComponentProps:d,separator:s,debugIds:n})=>qo(l(K(e,o,t),(l=>Ro(r,go(vo({},Po(d,l)),{key:l,tableId:e,rowId:o,cellId:l,store:t,debugIds:n})))),s,n,o),Vo=e=>mo(e,G(e.tableId,e.store)),Oo=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,s=wo(o,["cellId","descending","offset","limit"]);return mo(s,H(s.tableId,t,r,l,d,s.store))},Bo=({store:e,tableComponent:o=Vo,getTableComponentProps:t,separator:r,debugIds:d})=>qo(l(F(e),(r=>Ro(o,go(vo({},Po(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Lo=({valueId:e,store:o,debugIds:t})=>{var r;return qo(""+(null!=(r=W(e,o))?r:""),void 0,t,e)},jo=({store:e,valueComponent:o=Lo,getValueComponentProps:t,separator:r,debugIds:d})=>qo(l(U(e),(r=>Ro(o,go(vo({},Po(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Mo=({metricId:e,metrics:o,debugIds:t})=>{var r;return qo(null!=(r=ke(e,o))?r:"",void 0,t,e)},Eo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=So,getRowComponentProps:d,separator:s,debugIds:n})=>{const u=k(t),a=null==u?void 0:u.getStore(),i=null==u?void 0:u.getTableId(e),I=Te(e,o,u);return qo(l(I,(e=>Ro(r,go(vo({},Po(d,e)),{key:e,tableId:i,rowId:e,store:a,debugIds:n})))),s,n,o)},Ao=({indexId:e,indexes:o,sliceComponent:t=Eo,getSliceComponentProps:r,separator:d,debugIds:s})=>qo(l(Pe(e,o),(l=>Ro(t,go(vo({},Po(r,l)),{key:l,indexId:e,sliceId:l,indexes:o,debugIds:s})))),d,s,e),Do=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=So,getRowComponentProps:l,debugIds:s})=>{const[n,u]=ko(t),a=null==n?void 0:n.getRemoteTableId(e),i=Ve(e,o,n);return qo(d(a)||d(i)?null:Ro(r,go(vo({},Po(l,i)),{key:i,tableId:a,rowId:i,store:u,debugIds:s})),void 0,s,o)},Fo=e=>ho(e,Oe,e.remoteRowId),zo=e=>ho(e,Be,e.firstRowId),Go=({queryId:e,rowId:o,cellId:t,queries:r,debugIds:l})=>{var d;return qo(""+(null!=(d=He(e,o,t,r))?d:""),void 0,l,t)},Ho=({queryId:e,rowId:o,queries:t,resultCellComponent:r=Go,getResultCellComponentProps:d,separator:s,debugIds:n})=>qo(l(Ge(e,o,t),(l=>Ro(r,go(vo({},Po(d,l)),{key:l,queryId:e,rowId:o,cellId:l,queries:t,debugIds:n})))),s,n,o),Jo=e=>yo(e,De(e.queryId,e.queries)),Ko=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,s=wo(o,["cellId","descending","offset","limit"]);return yo(s,Fe(s.queryId,t,r,l,d,s.queries))},No=({checkpoints:e,checkpointId:o,debugIds:t})=>{var r;return qo(null!=(r=Ze(o,e))?r:"",void 0,t,o)},Qo=fo((e=>e[0])),Uo=fo((e=>d(e[1])?[]:[e[1]])),Wo=fo((e=>e[2]));export{Qo as BackwardCheckpointsView,xo as CellView,No as CheckpointView,Uo as CurrentCheckpointView,Wo as ForwardCheckpointsView,Ao as IndexView,zo as LinkedRowsView,Fo as LocalRowsView,Mo as MetricView,To as Provider,Do as RemoteRowView,Go as ResultCellView,Ho as ResultRowView,Ko as ResultSortedTableView,Jo as ResultTableView,So as RowView,Eo as SliceView,Oo as SortedTableView,Vo as TableView,Bo as TablesView,Lo as ValueView,jo as ValuesView,mo as tableView,$ as useAddRowCallback,N as useCell,K as useCellIds,ge as useCellIdsListener,we as useCellListener,Ze as useCheckpoint,Ye as useCheckpointIds,lo as useCheckpointIdsListener,so as useCheckpointListener,C as useCheckpoints,Xe as useCreateCheckpoints,fe as useCreateIndexes,ye as useCreateMetrics,no as useCreatePersister,Ee as useCreateQueries,Se as useCreateRelationships,A as useCreateStore,ne as useDelCellCallback,se as useDelRowCallback,de as useDelTableCallback,le as useDelTablesCallback,ae as useDelValueCallback,ue as useDelValuesCallback,_e as useGoBackwardCallback,eo as useGoForwardCallback,oo as useGoToCallback,g as useIndexes,Be as useLinkedRowIds,Me as useLinkedRowIdsListener,Oe as useLocalRowIds,je as useLocalRowIdsListener,ke as useMetric,he as useMetricListener,v as useMetrics,R as useQueries,ro as useRedoInformation,w as useRelationships,Ve as useRemoteRowId,Le as useRemoteRowIdListener,He as useResultCell,Ge as useResultCellIds,Ue as useResultCellIdsListener,We as useResultCellListener,ze as useResultRow,De as useResultRowIds,Ke as useResultRowIdsListener,Qe as useResultRowListener,Fe as useResultSortedRowIds,Ne as useResultSortedRowIdsListener,Ae as useResultTable,Je as useResultTableListener,J as useRow,G as useRowIds,pe as useRowIdsListener,ve as useRowListener,ee as useSetCellCallback,$e as useSetCheckpointCallback,_ as useSetPartialRowCallback,te as useSetPartialValuesCallback,Z as useSetRowCallback,Y as useSetTableCallback,X as useSetTablesCallback,re as useSetValueCallback,oe as useSetValuesCallback,Pe as useSliceIds,qe as useSliceIdsListener,Te as useSliceRowIds,xe as useSliceRowIdsListener,H as useSortedRowIds,be as useSortedRowIdsListener,b as useStore,z as useTable,F as useTableIds,Ie as useTableIdsListener,ce as useTableListener,D as useTables,ie as useTablesListener,to as useUndoInformation,W as useValue,U as useValueIds,Ce as useValueIdsListener,me as useValueListener,Q as useValues,Re as useValuesListener};
1
+ import e,{useContext as o}from"react";const t=e=>typeof e,r=t(""),l=(e,o)=>e.map(o),d=e=>null==e,s=(e,o,t)=>d(e)?null==t?void 0:t():o(e),n=e=>t(e)==r,u=()=>{},{createContext:a,useContext:i}=e,I=a([]),c=(e,o)=>{const t=i(I);return d(e)?t[o]:n(e)?((e,o)=>s(e,(e=>e[o])))(t[o+1],e):e},p=(e,o)=>{const t=c(e,o);return d(e)||n(e)?t:e},b=e=>c(e,0),v=e=>c(e,2),g=e=>c(e,4),w=e=>c(e,6),R=e=>c(e,8),C=e=>c(e,10),m=e=>p(e,0),y=e=>p(e,2),k=e=>p(e,4),h=e=>p(e,6),f=e=>p(e,8),P=e=>p(e,10),{useCallback:T,useEffect:q,useMemo:x,useRef:S,useState:V}=e,O=(e,o,t=[])=>{const r=x((()=>o(e)),[e,...t]);return q((()=>()=>r.destroy()),[r]),r},B=(e,o,t,r=[],l)=>{const[,s]=V(),n=T((()=>{var l,d;return null!=(d=null==(l=null==o?void 0:o["get"+e])?void 0:l.call(o,...r))?d:t}),[o,...r]),[u]=V(n),a=S(u);return x((()=>a.current=n()),[n]),L(e,o,((...e)=>{a.current=d(l)?n():e[l],s([])}),[],r),a.current},L=(e,o,t,r=[],l=[],...d)=>q((()=>{var r;const s=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...l,t,...d);return()=>null==o?void 0:o.delListener(s)}),[o,...l,...r,...d]),j=(e,o,t,r=[],l=u,d=[],...n)=>{const a=m(e);return T((e=>s(a,(r=>s(t(e,r),(e=>l(r["set"+o](...n,e),e)))))),[a,o,...r,...d,...n])},M=(e,o,t=u,r=[],...l)=>{const d=m(e);return T((()=>t(null==d?void 0:d["del"+o](...l))),[d,o,...r,...l])},E=(e,o,t)=>{const r=P(e);return T((()=>null==r?void 0:r[o](t)),[r,o,t])},A=(e,o=[])=>x(e,o),D=e=>B("Tables",m(e),{}),F=e=>B("TableIds",m(e),[],[]),z=(e,o)=>B("Table",m(o),{},[e]),G=(e,o)=>B("RowIds",m(o),[],[e]),H=(e,o,t,r=0,l,d)=>B("SortedRowIds",m(d),[],[e,o,t,r,l],6),J=(e,o,t)=>B("Row",m(t),{},[e,o]),K=(e,o,t)=>B("CellIds",m(t),[],[e,o]),N=(e,o,t,r)=>B("Cell",m(r),void 0,[e,o,t],4),Q=e=>B("Values",m(e),{}),U=e=>B("ValueIds",m(e),[],[]),W=(e,o)=>B("Value",m(o),void 0,[e]),X=(e,o,t,r,l)=>j(t,"Tables",e,o,r,l),Y=(e,o,t,r,l,d)=>j(r,"Table",o,t,l,d,e),Z=(e,o,t,r,l,d,s)=>j(l,"Row",t,r,d,s,e,o),$=(e,o,t=[],r,l=u,d=[],n=!0)=>{const a=m(r);return T((t=>s(a,(r=>s(o(t,r),(o=>l(r.addRow(e,o,n),r,o)))))),[a,e,...t,...d,n])},_=(e,o,t,r,l,d,s)=>j(l,"PartialRow",t,r,d,s,e,o),ee=(e,o,t,r,l,d,s,n)=>j(d,"Cell",r,l,s,n,e,o,t),oe=(e,o,t,r,l)=>j(t,"Values",e,o,r,l),te=(e,o,t,r,l)=>j(t,"PartialValues",e,o,r,l),re=(e,o,t,r,l,d)=>j(r,"Value",o,t,l,d,e),le=(e,o,t)=>M(e,"Tables",o,t),de=(e,o,t,r)=>M(o,"Table",t,r,e),se=(e,o,t,r,l)=>M(t,"Row",r,l,e,o),ne=(e,o,t,r,l,d,s)=>M(l,"Cell",d,s,e,o,t,r),ue=(e,o,t)=>M(e,"Values",o,t),ae=(e,o,t,r)=>M(o,"Value",t,r,e),ie=(e,o,t,r)=>L("Tables",m(r),e,o,[],t),Ie=(e,o,t,r)=>L("TableIds",m(r),e,o,[],t),ce=(e,o,t,r,l)=>L("Table",m(l),o,t,[e],r),pe=(e,o,t,r,l)=>L("RowIds",m(l),o,t,[e],r),be=(e,o,t,r,l,d,s,n,u)=>L("SortedRowIds",m(u),d,s,[e,o,t,r,l],n),ve=(e,o,t,r,l,d)=>L("Row",m(d),t,r,[e,o],l),ge=(e,o,t,r,l,d)=>L("CellIds",m(d),t,r,[e,o],l),we=(e,o,t,r,l,d,s)=>L("Cell",m(s),r,l,[e,o,t],d),Re=(e,o,t,r)=>L("Values",m(r),e,o,[],t),Ce=(e,o,t,r)=>L("ValueIds",m(r),e,o,[],t),me=(e,o,t,r,l)=>L("Value",m(l),o,t,[e],r),ye=(e,o,t)=>O(e,o,t),ke=(e,o)=>B("Metric",y(o),void 0,[e]),he=(e,o,t,r)=>L("Metric",y(r),o,t,[e]),fe=(e,o,t)=>O(e,o,t),Pe=(e,o)=>B("SliceIds",k(o),[],[e]),Te=(e,o,t)=>B("SliceRowIds",k(t),[],[e,o]),qe=(e,o,t,r)=>L("SliceIds",k(r),o,t,[e]),xe=(e,o,t,r,l)=>L("SliceRowIds",k(l),t,r,[e,o]),Se=(e,o,t)=>O(e,o,t),Ve=(e,o,t)=>B("RemoteRowId",h(t),void 0,[e,o]),Oe=(e,o,t)=>B("LocalRowIds",h(t),[],[e,o]),Be=(e,o,t)=>B("LinkedRowIds",h(t),[],[e,o]),Le=(e,o,t,r,l)=>L("RemoteRowId",h(l),t,r,[e,o]),je=(e,o,t,r,l)=>L("LocalRowIds",h(l),t,r,[e,o]),Me=(e,o,t,r,l)=>L("LinkedRowIds",h(l),t,r,[e,o]),Ee=(e,o,t)=>O(e,o,t),Ae=(e,o)=>B("ResultTable",f(o),{},[e]),De=(e,o)=>B("ResultRowIds",f(o),[],[e]),Fe=(e,o,t,r=0,l,d)=>B("ResultSortedRowIds",f(d),[],[e,o,t,r,l],6),ze=(e,o,t)=>B("ResultRow",f(t),{},[e,o]),Ge=(e,o,t)=>B("ResultCellIds",f(t),[],[e,o]),He=(e,o,t,r)=>B("ResultCell",f(r),void 0,[e,o,t]),Je=(e,o,t,r)=>L("ResultTable",f(r),o,t,[e]),Ke=(e,o,t,r)=>L("ResultRowIds",f(r),o,t,[e]),Ne=(e,o,t,r,l,d,s,n)=>L("ResultSortedRowIds",f(n),d,s,[e,o,t,r,l]),Qe=(e,o,t,r,l)=>L("ResultRow",f(l),t,r,[e,o]),Ue=(e,o,t,r,l)=>L("ResultCellIds",f(l),t,r,[e,o]),We=(e,o,t,r,l,d)=>L("ResultCell",f(d),r,l,[e,o,t]),Xe=(e,o,t)=>O(e,o,t),Ye=e=>B("CheckpointIds",P(e),[[],void 0,[]]),Ze=(e,o)=>B("Checkpoint",P(o),void 0,[e]),$e=(e=u,o=[],t,r=u,l=[])=>{const d=P(t);return T((o=>s(d,(t=>{const l=e(o);r(t.addCheckpoint(l),t,l)}))),[d,...o,...l])},_e=e=>E(e,"goBackward"),eo=e=>E(e,"goForward"),oo=(e,o=[],t,r=u,l=[])=>{const d=P(t);return T((o=>s(d,(t=>s(e(o),(e=>r(t.goTo(e),e)))))),[d,...o,...l])},to=e=>{var o;const t=P(e),[r,l]=Ye(t);return[(d=r,!(0==(e=>e.length)(d))),_e(t),l,null!=(o=s(l,(e=>null==t?void 0:t.getCheckpoint(e))))?o:""];var d},ro=e=>{var o;const t=P(e),[,,[r]]=Ye(t);return[!d(r),eo(t),r,null!=(o=s(r,(e=>null==t?void 0:t.getCheckpoint(e))))?o:""]},lo=(e,o,t)=>L("CheckpointIds",P(t),e,o),so=(e,o,t,r)=>L("Checkpoint",P(r),o,t,[e]),no=(e,o,t=[],r,l=[])=>{const[,d]=V(),s=x((()=>o(e)),[e,...t]);return q((()=>{var e;return e=function*(){yield null==r?void 0:r(s),d(1)},new Promise(((o,t)=>{var r=o=>{try{d(e.next(o))}catch(e){t(e)}},l=o=>{try{d(e.throw(o))}catch(e){t(e)}},d=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);d((e=e.apply(void 0,null)).next())})),()=>{s.destroy()}}),[s,...l]),s};var uo=Object.defineProperty,ao=Object.defineProperties,io=Object.getOwnPropertyDescriptors,Io=Object.getOwnPropertySymbols,co=Object.prototype.hasOwnProperty,po=Object.prototype.propertyIsEnumerable,bo=(e,o,t)=>o in e?uo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,vo=(e,o)=>{for(var t in o||(o={}))co.call(o,t)&&bo(e,t,o[t]);if(Io)for(var t of Io(o))po.call(o,t)&&bo(e,t,o[t]);return e},go=(e,o)=>ao(e,io(o)),wo=(e,o)=>{var t={};for(var r in e)co.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Io)for(var r of Io(e))o.indexOf(r)<0&&po.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Ro,useMemo:Co}=e,mo=({tableId:e,store:o,rowComponent:t=So,getRowComponentProps:r,separator:d,debugIds:s},n)=>qo(l(n,(l=>Ro(t,go(vo({},Po(r,l)),{key:l,tableId:e,rowId:l,store:o,debugIds:s})))),d,s,e),yo=({queryId:e,queries:o,resultRowComponent:t=Ho,getResultRowComponentProps:r,separator:d,debugIds:s},n)=>qo(l(n,(l=>Ro(t,go(vo({},Po(r,l)),{key:l,queryId:e,rowId:l,queries:o,debugIds:s})))),d,s,e),ko=e=>{const o=h(e);return[o,null==o?void 0:o.getStore()]},ho=({relationshipId:e,relationships:o,rowComponent:t=So,getRowComponentProps:r,separator:d,debugIds:s},n,u)=>{const[a,i]=ko(o),I=null==a?void 0:a.getLocalTableId(e),c=n(e,u,a);return qo(l(c,(e=>Ro(t,go(vo({},Po(r,e)),{key:e,tableId:I,rowId:e,store:i,debugIds:s})))),d,s,u)},fo=e=>({checkpoints:o,checkpointComponent:t=No,getCheckpointComponentProps:r,separator:d,debugIds:s})=>{const n=P(o);return qo(l(e(Ye(n)),(e=>Ro(t,go(vo({},Po(r,e)),{key:e,checkpoints:n,checkpointId:e,debugIds:s})))),d)},Po=(e,o)=>d(e)?{}:e(o),To=({store:e,storesById:t,metrics:r,metricsById:l,indexes:d,indexesById:s,relationships:n,relationshipsById:u,queries:a,queriesById:i,checkpoints:c,checkpointsById:p,children:b})=>{const v=o(I);return Ro(I.Provider,{value:Co((()=>[null!=e?e:v[0],vo(vo({},v[1]),t),null!=r?r:v[2],vo(vo({},v[3]),l),null!=d?d:v[4],vo(vo({},v[5]),s),null!=n?n:v[6],vo(vo({},v[7]),u),null!=a?a:v[8],vo(vo({},v[9]),i),null!=c?c:v[10],vo(vo({},v[11]),p)]),[e,t,r,l,d,s,n,u,a,i,c,p,v])},b)},qo=(e,o,t,r)=>{const s=d(o)||!Array.isArray(e)?e:l(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",s,"}"]:s},xo=({tableId:e,rowId:o,cellId:t,store:r,debugIds:l})=>{var d;return qo(""+(null!=(d=N(e,o,t,r))?d:""),void 0,l,t)},So=({tableId:e,rowId:o,store:t,cellComponent:r=xo,getCellComponentProps:d,separator:s,debugIds:n})=>qo(l(K(e,o,t),(l=>Ro(r,go(vo({},Po(d,l)),{key:l,tableId:e,rowId:o,cellId:l,store:t,debugIds:n})))),s,n,o),Vo=e=>mo(e,G(e.tableId,e.store)),Oo=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,s=wo(o,["cellId","descending","offset","limit"]);return mo(s,H(s.tableId,t,r,l,d,s.store))},Bo=({store:e,tableComponent:o=Vo,getTableComponentProps:t,separator:r,debugIds:d})=>qo(l(F(e),(r=>Ro(o,go(vo({},Po(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Lo=({valueId:e,store:o,debugIds:t})=>{var r;return qo(""+(null!=(r=W(e,o))?r:""),void 0,t,e)},jo=({store:e,valueComponent:o=Lo,getValueComponentProps:t,separator:r,debugIds:d})=>qo(l(U(e),(r=>Ro(o,go(vo({},Po(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Mo=({metricId:e,metrics:o,debugIds:t})=>{var r;return qo(null!=(r=ke(e,o))?r:"",void 0,t,e)},Eo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=So,getRowComponentProps:d,separator:s,debugIds:n})=>{const u=k(t),a=null==u?void 0:u.getStore(),i=null==u?void 0:u.getTableId(e),I=Te(e,o,u);return qo(l(I,(e=>Ro(r,go(vo({},Po(d,e)),{key:e,tableId:i,rowId:e,store:a,debugIds:n})))),s,n,o)},Ao=({indexId:e,indexes:o,sliceComponent:t=Eo,getSliceComponentProps:r,separator:d,debugIds:s})=>qo(l(Pe(e,o),(l=>Ro(t,go(vo({},Po(r,l)),{key:l,indexId:e,sliceId:l,indexes:o,debugIds:s})))),d,s,e),Do=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=So,getRowComponentProps:l,debugIds:s})=>{const[n,u]=ko(t),a=null==n?void 0:n.getRemoteTableId(e),i=Ve(e,o,n);return qo(d(a)||d(i)?null:Ro(r,go(vo({},Po(l,i)),{key:i,tableId:a,rowId:i,store:u,debugIds:s})),void 0,s,o)},Fo=e=>ho(e,Oe,e.remoteRowId),zo=e=>ho(e,Be,e.firstRowId),Go=({queryId:e,rowId:o,cellId:t,queries:r,debugIds:l})=>{var d;return qo(""+(null!=(d=He(e,o,t,r))?d:""),void 0,l,t)},Ho=({queryId:e,rowId:o,queries:t,resultCellComponent:r=Go,getResultCellComponentProps:d,separator:s,debugIds:n})=>qo(l(Ge(e,o,t),(l=>Ro(r,go(vo({},Po(d,l)),{key:l,queryId:e,rowId:o,cellId:l,queries:t,debugIds:n})))),s,n,o),Jo=e=>yo(e,De(e.queryId,e.queries)),Ko=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,s=wo(o,["cellId","descending","offset","limit"]);return yo(s,Fe(s.queryId,t,r,l,d,s.queries))},No=({checkpoints:e,checkpointId:o,debugIds:t})=>{var r;return qo(null!=(r=Ze(o,e))?r:"",void 0,t,o)},Qo=fo((e=>e[0])),Uo=fo((e=>d(e[1])?[]:[e[1]])),Wo=fo((e=>e[2]));export{Qo as BackwardCheckpointsView,xo as CellView,No as CheckpointView,Uo as CurrentCheckpointView,Wo as ForwardCheckpointsView,Ao as IndexView,zo as LinkedRowsView,Fo as LocalRowsView,Mo as MetricView,To as Provider,Do as RemoteRowView,Go as ResultCellView,Ho as ResultRowView,Ko as ResultSortedTableView,Jo as ResultTableView,So as RowView,Eo as SliceView,Oo as SortedTableView,Vo as TableView,Bo as TablesView,Lo as ValueView,jo as ValuesView,mo as tableView,$ as useAddRowCallback,N as useCell,K as useCellIds,ge as useCellIdsListener,we as useCellListener,Ze as useCheckpoint,Ye as useCheckpointIds,lo as useCheckpointIdsListener,so as useCheckpointListener,C as useCheckpoints,Xe as useCreateCheckpoints,fe as useCreateIndexes,ye as useCreateMetrics,no as useCreatePersister,Ee as useCreateQueries,Se as useCreateRelationships,A as useCreateStore,ne as useDelCellCallback,se as useDelRowCallback,de as useDelTableCallback,le as useDelTablesCallback,ae as useDelValueCallback,ue as useDelValuesCallback,_e as useGoBackwardCallback,eo as useGoForwardCallback,oo as useGoToCallback,g as useIndexes,Be as useLinkedRowIds,Me as useLinkedRowIdsListener,Oe as useLocalRowIds,je as useLocalRowIdsListener,ke as useMetric,he as useMetricListener,v as useMetrics,R as useQueries,ro as useRedoInformation,w as useRelationships,Ve as useRemoteRowId,Le as useRemoteRowIdListener,He as useResultCell,Ge as useResultCellIds,Ue as useResultCellIdsListener,We as useResultCellListener,ze as useResultRow,De as useResultRowIds,Ke as useResultRowIdsListener,Qe as useResultRowListener,Fe as useResultSortedRowIds,Ne as useResultSortedRowIdsListener,Ae as useResultTable,Je as useResultTableListener,J as useRow,G as useRowIds,pe as useRowIdsListener,ve as useRowListener,ee as useSetCellCallback,$e as useSetCheckpointCallback,_ as useSetPartialRowCallback,te as useSetPartialValuesCallback,Z as useSetRowCallback,Y as useSetTableCallback,X as useSetTablesCallback,re as useSetValueCallback,oe as useSetValuesCallback,Pe as useSliceIds,qe as useSliceIdsListener,Te as useSliceRowIds,xe as useSliceRowIdsListener,H as useSortedRowIds,be as useSortedRowIdsListener,b as useStore,z as useTable,F as useTableIds,Ie as useTableIdsListener,ce as useTableListener,D as useTables,ie as useTablesListener,to as useUndoInformation,W as useValue,U as useValueIds,Ce as useValueIdsListener,me as useValueListener,Q as useValues,Re as useValuesListener};
Binary file
package/lib/indexes.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),n=e=>""+e,s=(e,t)=>e.every(t),r=(e,t)=>s(e,((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),c=(e,t)=>e.forEach(t),l=e=>e.length,d=(e,...t)=>e.push(...t),a=e=>null==e,i=(e,t,n)=>a(e)?n?.():t(e),u=e=>Array.isArray(e),h=(e,t)=>e?.has(t)??!1,f=e=>a(e)||0==(e=>e.size)(e),I=e=>[...e?.values()??[]],g=e=>e.clear(),S=(e,t)=>e?.forEach(t),v=(e,t)=>e?.delete(t),w=e=>new Map(e),L=e=>[...e?.keys()??[]],p=(e,t)=>e?.get(t),x=(e,t)=>S(e,((e,n)=>t(n,e))),y=(e,t,n)=>a(n)?(v(e,t),e):e?.set(t,n),E=(e,t,n)=>(h(e,t)||y(e,t,n()),p(e,t)),R=(e,t,n,s,r=0)=>i((n?E:p)(e,t[r],r>l(t)-2?n:w),(o=>{if(r>l(t)-2)return s?.(o)&&y(e,t[r]),o;const c=R(o,t,n,s,r+1);return f(o)&&y(e,t[r]),c})),b=e=>new Set(u(e)||a(e)?e:[e]),T=(e,t)=>e?.add(t),k=(n,s)=>e(n)==t?e=>e(n):n??(()=>s??""),z=(e,t)=>e<t?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const t=new WeakMap;return e=>(t.has(e)||t.set(e,(e=>{const t=w(),D=w(),[M,j,m,O,W,$,q,,B,F,G]=((e,t,n)=>{const r=e.hasRow,o=w(),d=w(),R=w(),k=w(),z=w(),A=(t,n,...s)=>{const r=E(z,t,b);return c(s,(t=>T(r,t)&&n&&e.callListener(t))),s},C=(t,...n)=>i(p(z,t),(s=>{c(0==l(n)?I(s):n,(t=>{e.delListener(t),v(s,t)})),f(s)&&y(z,t)})),D=(e,n)=>{y(o,e,n),h(d,e)||(y(d,e,t()),y(R,e,w()),y(k,e,w()))},M=e=>{y(o,e),y(d,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(o),e=>x(d,e),e=>h(d,e),e=>p(o,e),e=>p(d,e),(e,t)=>y(d,e,t),D,(t,o,d,i,f)=>{D(t,o);const I=w(),v=w(),L=p(R,t),E=p(k,t),b=t=>{const c=n=>e.getCell(o,t,n),d=p(L,t),h=r(o,t)?n(i(c,t)):void 0;var g,S;if(d===h||u(d)&&u(h)&&(S=h,l(g=d)===l(S)&&s(g,((e,t)=>S[t]===e)))||y(I,t,[d,h]),!a(f)){const e=p(E,t),n=r(o,t)?f(c,t):void 0;e!=n&&y(v,t,n)}},T=e=>{d((()=>{S(I,(([,e],t)=>y(L,t,e))),S(v,((e,t)=>y(E,t,e)))}),I,v,L,E,e),g(I),g(v)};x(L,b),e.hasTable(o)&&c(e.getRowIds(o),(e=>{h(L,e)||b(e)})),T(!0),C(t),A(t,0,e.addRowListener(o,null,((e,t,n)=>b(n))),e.addTableListener(o,(()=>T())))},M,()=>x(z,M),A,C]})(e,w,(e=>{return a(e)?"":u(e)?(t=n,e.map(t)):n(e);var t})),[H,J,K]=(e=>{let t;const[n,s]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{A.test(t)&&l(e)<1e3&&d(e,t)}]})(),r=w();return[(e,s,o,c=[],l=(()=>[]))=>{t??=P;const d=n();return y(r,d,[e,s,o,c,l]),T(R(s,o??[""],b),d),d},(e,n,...s)=>c(((e,t=[""])=>{const n=[],s=(e,r)=>r==l(t)?d(n,e):null===t[r]?S(e,(e=>s(e,r+1))):c([t[r],null],(t=>s(p(e,t),r+1)));return s(e,0),n})(e,n),(e=>S(e,(e=>p(r,e)[0](t,...n??[],...s))))),e=>i(p(r,e),(([,t,n])=>(R(t,n??[""],void 0,(t=>(v(t,e),f(t)?1:0))),y(r,e),s(e),n))),e=>i(p(r,e),(([e,,n=[],s,r])=>{const o=(...d)=>{const i=l(d);i==l(n)?e(t,...d,...r(d)):a(n[i])?c(s[i]?.(...d)??[],(e=>o(...d,e))):o(...d,n[i])};o()}))]})(),N=(t,n,s)=>{const r=W(t);S(s,((t,s)=>n(s,(n=>S(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},P={setIndexDefinition:(e,n,s,c,l,d=z)=>{const u=a(l)?void 0:([e],[t])=>l(e,t);return B(e,n,((n,s,l,I,g,L)=>{let E=0;const R=b(),k=b(),z=$(e);if(S(s,(([e,t],n)=>{const s=b(e),r=b(t);S(s,(e=>v(r,e)?v(s,e):0)),S(s,(e=>{T(R,e),i(p(z,e),(t=>{v(t,n),f(t)&&(y(z,e),E=1)}))})),S(r,(e=>{T(R,e),h(z,e)||(y(z,e,b()),E=1),T(p(z,e),n),a(c)||T(k,e)}))})),n(),f(g)||(L?x(z,(e=>T(k,e))):x(l,(e=>i(p(I,e),(e=>T(k,e))))),S(k,(e=>{const t=(t,n)=>d(p(g,t),p(g,n),e),n=[...p(z,e)];r(n,t)||(y(z,e,b(o(n,t))),T(R,e))}))),(E||L)&&!a(u)){const t=[...z];r(t,u)||(q(e,w(o(t,u))),E=1)}E&&J(t,[e]),S(R,(t=>J(D,[e,t])))}),k(s),i(c,k)),P},delIndexDefinition:e=>(F(e),P),getStore:M,getIndexIds:j,forEachIndex:e=>m(((t,n)=>e(t,(e=>N(t,e,n))))),forEachSlice:(e,t)=>N(e,t,$(e)),hasIndex:O,hasSlice:(e,t)=>h($(e),t),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,t)=>I(p($(e),t)),addSliceIdsListener:(e,n)=>H(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>H(n,D,[e,t]),delListener:e=>(K(e),P),destroy:G,getListenerStats:()=>({})};return C(P)})(e)),t.get(e))})();export{D as createIndexes};
1
+ const e=e=>typeof e,t=e(""),n=e=>""+e,s=(e,t)=>e.every(t),r=(e,t)=>s(e,((n,s)=>0==s||t(e[s-1],n)<=0)),o=(e,t)=>e.sort(t),c=(e,t)=>e.forEach(t),l=e=>e.length,d=(e,...t)=>e.push(...t),a=e=>null==e,i=(e,t,n)=>a(e)?n?.():t(e),u=e=>Array.isArray(e),h=(e,t)=>e?.has(t)??!1,f=e=>a(e)||0==(e=>e.size)(e),I=e=>[...e?.values()??[]],g=e=>e.clear(),S=(e,t)=>e?.forEach(t),v=(e,t)=>e?.delete(t),w=e=>new Map(e),L=e=>[...e?.keys()??[]],p=(e,t)=>e?.get(t),x=(e,t)=>S(e,((e,n)=>t(n,e))),y=(e,t,n)=>a(n)?(v(e,t),e):e?.set(t,n),E=(e,t,n)=>(h(e,t)||y(e,t,n()),p(e,t)),R=(e,t,n,s,r=0)=>i((n?E:p)(e,t[r],r>l(t)-2?n:w),(o=>{if(r>l(t)-2)return s?.(o)&&y(e,t[r]),o;const c=R(o,t,n,s,r+1);return f(o)&&y(e,t[r]),c})),b=e=>new Set(u(e)||a(e)?e:[e]),T=(e,t)=>e?.add(t),k=(n,s)=>e(n)==t?e=>e(n):n??(()=>s??""),z=(e,t)=>e<t?-1:1,A=/^\d+$/,C=Object.freeze,D=(e=>{const t=new WeakMap;return e=>(t.has(e)||t.set(e,(e=>{const t=w(),D=w(),[M,j,m,O,W,$,q,,B,F,G]=((e,t,n)=>{const r=e.hasRow,o=w(),d=w(),R=w(),k=w(),z=w(),A=(t,n,...s)=>{const r=E(z,t,b);return c(s,(t=>T(r,t)&&n&&e.callListener(t))),s},C=(t,...n)=>i(p(z,t),(s=>{c(0==l(n)?I(s):n,(t=>{e.delListener(t),v(s,t)})),f(s)&&y(z,t)})),D=(e,n)=>{y(o,e,n),h(d,e)||(y(d,e,t()),y(R,e,w()),y(k,e,w()))},M=e=>{y(o,e),y(d,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(o),e=>x(d,e),e=>h(d,e),e=>p(o,e),e=>p(d,e),(e,t)=>y(d,e,t),D,(t,o,d,i,f)=>{D(t,o);const I=w(),v=w(),L=p(R,t),E=p(k,t),b=t=>{const c=n=>e.getCell(o,t,n),d=p(L,t),h=r(o,t)?n(i(c,t)):void 0;var g,S;if(d===h||u(d)&&u(h)&&(S=h,l(g=d)===l(S)&&s(g,((e,t)=>S[t]===e)))||y(I,t,[d,h]),!a(f)){const e=p(E,t),n=r(o,t)?f(c,t):void 0;e!=n&&y(v,t,n)}},T=e=>{d((()=>{S(I,(([,e],t)=>y(L,t,e))),S(v,((e,t)=>y(E,t,e)))}),I,v,L,E,e),g(I),g(v)};x(L,b),e.hasTable(o)&&c(e.getRowIds(o),(e=>{h(L,e)||b(e)})),T(!0),C(t),A(t,0,e.addRowListener(o,null,((e,t,n)=>b(n))),e.addTableListener(o,(()=>T())))},M,()=>x(z,M),A,C]})(e,w,(e=>{return a(e)?"":u(e)?(t=n,e.map(t)):n(e);var t})),[H,J,K]=(e=>{let t;const[n,s]=(()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??""+t++,t=>{A.test(t)&&l(e)<1e3&&d(e,t)}]})(),r=w();return[(e,s,o,c=[],l=(()=>[]))=>{t??=P;const d=n(1);return y(r,d,[e,s,o,c,l]),T(R(s,o??[""],b),d),d},(e,n,...s)=>c(((e,t=[""])=>{const n=[],s=(e,r)=>r==l(t)?d(n,e):null===t[r]?S(e,(e=>s(e,r+1))):c([t[r],null],(t=>s(p(e,t),r+1)));return s(e,0),n})(e,n),(e=>S(e,(e=>p(r,e)[0](t,...n??[],...s))))),e=>i(p(r,e),(([,t,n])=>(R(t,n??[""],void 0,(t=>(v(t,e),f(t)?1:0))),y(r,e),s(e),n))),e=>i(p(r,e),(([e,,n=[],s,r])=>{const o=(...d)=>{const i=l(d);i==l(n)?e(t,...d,...r(d)):a(n[i])?c(s[i]?.(...d)??[],(e=>o(...d,e))):o(...d,n[i])};o()}))]})(),N=(t,n,s)=>{const r=W(t);S(s,((t,s)=>n(s,(n=>S(t,(t=>n(t,(n=>e.forEachCell(r,t,n)))))))))},P={setIndexDefinition:(e,n,s,c,l,d=z)=>{const u=a(l)?void 0:([e],[t])=>l(e,t);return B(e,n,((n,s,l,I,g,L)=>{let E=0;const R=b(),k=b(),z=$(e);if(S(s,(([e,t],n)=>{const s=b(e),r=b(t);S(s,(e=>v(r,e)?v(s,e):0)),S(s,(e=>{T(R,e),i(p(z,e),(t=>{v(t,n),f(t)&&(y(z,e),E=1)}))})),S(r,(e=>{T(R,e),h(z,e)||(y(z,e,b()),E=1),T(p(z,e),n),a(c)||T(k,e)}))})),n(),f(g)||(L?x(z,(e=>T(k,e))):x(l,(e=>i(p(I,e),(e=>T(k,e))))),S(k,(e=>{const t=(t,n)=>d(p(g,t),p(g,n),e),n=[...p(z,e)];r(n,t)||(y(z,e,b(o(n,t))),T(R,e))}))),(E||L)&&!a(u)){const t=[...z];r(t,u)||(q(e,w(o(t,u))),E=1)}E&&J(t,[e]),S(R,(t=>J(D,[e,t])))}),k(s),i(c,k)),P},delIndexDefinition:e=>(F(e),P),getStore:M,getIndexIds:j,forEachIndex:e=>m(((t,n)=>e(t,(e=>N(t,e,n))))),forEachSlice:(e,t)=>N(e,t,$(e)),hasIndex:O,hasSlice:(e,t)=>h($(e),t),getTableId:W,getSliceIds:e=>L($(e)),getSliceRowIds:(e,t)=>I(p($(e),t)),addSliceIdsListener:(e,n)=>H(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>H(n,D,[e,t]),delListener:e=>(K(e),P),destroy:G,getListenerStats:()=>({})};return C(P)})(e)),t.get(e))})();export{D as createIndexes};
package/lib/indexes.js.gz CHANGED
Binary file
package/lib/metrics.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),r=e(e),n=(e,t)=>e.forEach(t),s=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,r)=>e.reduce(t,r),a=(e,...t)=>e.push(...t),c=Math.max,d=Math.min,l=isFinite,u=e=>null==e,v=(e,t,r)=>u(e)?r?.():t(e),h=e=>Array.isArray(e),f=()=>{},g=e=>e.size,M=(e,t)=>e?.has(t)??!1,L=e=>u(e)||0==g(e),m=e=>[...e?.values()??[]],w=e=>e.clear(),y=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),b=e=>new Map(e),x=(e,t)=>e?.get(t),E=(e,t)=>y(e,((e,r)=>t(r,e))),I=(e,t,r)=>u(r)?(p(e,t),e):e?.set(t,r),R=(e,t,r)=>(M(e,t)||I(e,t,r()),x(e,t)),S=(e,t,r,n,s=0)=>v((r?R:x)(e,t[s],s>i(t)-2?r:b),(o=>{if(s>i(t)-2)return n?.(o)&&I(e,t[s]),o;const a=S(o,t,r,n,s+1);return L(o)&&I(e,t[s]),a})),T=b([["avg",[(e,t)=>s(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>c(...e),(e,t)=>c(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:c(t,e)]],["min",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:d(t,e)]],["sum",[e=>s(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),k=e=>new Set(h(e)||u(e)?e:[e]),z=(e,t)=>e?.add(t),A=/^\d+$/,D=Object.freeze,N=(s=>{const o=new WeakMap;return s=>(o.has(s)||o.set(s,(s=>{const o=b(),[c,d,N,j,C,F,O,,W,$,q]=((e,t,r)=>{const s=e.hasRow,o=b(),a=b(),c=b(),d=b(),l=b(),f=(t,r,...s)=>{const i=R(l,t,k);return n(s,(t=>z(i,t)&&r&&e.callListener(t))),s},g=(t,...r)=>v(x(l,t),(s=>{n(0==i(r)?m(s):r,(t=>{e.delListener(t),p(s,t)})),L(s)&&I(l,t)})),S=(e,r)=>{I(o,e,r),M(a,e)||(I(a,e,t()),I(c,e,b()),I(d,e,b()))},T=e=>{I(o,e),I(a,e),I(c,e),I(d,e),g(e)};return[()=>e,()=>[...o?.keys()??[]],e=>E(a,e),e=>M(a,e),e=>x(o,e),e=>x(a,e),(e,t)=>I(a,e,t),S,(t,r,o,a,l)=>{S(t,r);const v=b(),L=b(),m=x(c,t),p=x(d,t),R=t=>{const n=n=>e.getCell(r,t,n),o=x(m,t),c=s(r,t)?(d=a(n,t),isNaN(d)||u(d)||!0===d||!1===d||""===d?void 0:1*d):void 0;var d,f,g,M;if(o===c||h(o)&&h(c)&&(g=c,i(f=o)===i(g)&&(M=(e,t)=>g[t]===e,f.every(M)))||I(v,t,[o,c]),!u(l)){const e=x(p,t),i=s(r,t)?l(n,t):void 0;e!=i&&I(L,t,i)}},T=e=>{o((()=>{y(v,(([,e],t)=>I(m,t,e))),y(L,((e,t)=>I(p,t,e)))}),v,L,m,p,e),w(v),w(L)};E(m,R),e.hasTable(r)&&n(e.getRowIds(r),(e=>{M(m,e)||R(e)})),T(!0),g(t),f(t,0,e.addRowListener(r,null,((e,t,r)=>R(r))),e.addTableListener(r,(()=>T())))},T,()=>E(l,T),f,g]})(s,f),[B,G,H]=(e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{A.test(t)&&i(e)<1e3&&a(e,t)}]})(),o=b();return[(e,n,s,i=[],a=(()=>[]))=>{t??=J;const c=r();return I(o,c,[e,n,s,i,a]),z(S(n,s??[""],k),c),c},(e,r,...s)=>n(((e,t=[""])=>{const r=[],s=(e,o)=>o==i(t)?a(r,e):null===t[o]?y(e,(e=>s(e,o+1))):n([t[o],null],(t=>s(x(e,t),o+1)));return s(e,0),r})(e,r),(e=>y(e,(e=>x(o,e)[0](t,...r??[],...s))))),e=>v(x(o,e),(([,t,r])=>(S(t,r??[""],void 0,(t=>(p(t,e),L(t)?1:0))),I(o,e),s(e),r))),e=>v(x(o,e),(([e,,r=[],s,o])=>{const a=(...c)=>{const d=i(c);d==i(r)?e(t,...c,...o(c)):u(r[d])?n(s[d]?.(...c)??[],(e=>a(...c,e))):a(...c,r[d])};a()}))]})(),J={setMetricDefinition:(n,s,i,a,c,d,v)=>{const h=e(i)==r?[i,c,d,v]:x(T,i)??x(T,"sum");return W(n,s,((e,t,r,s,i,a)=>{const c=F(n),d=g(s);a||=u(c),e();let v=((e,t,r,n,s,i=!1)=>{if(L(r))return;const[o,a,c,d]=s;return i||=u(e),y(n,(([r,n])=>{i||(e=u(r)?a?.(e,n,t++):u(n)?c?.(e,r,t--):d?.(e,n,r,t),i||=u(e))})),i?o(m(r),g(r)):e})(c,d,s,t,h,a);l(v)||(v=void 0),v!=c&&(O(n,v),G(o,[n],v,c))}),(1,e(f=a)==t?e=>e(f):f??(()=>1))),J;var f},delMetricDefinition:e=>($(e),J),getStore:c,getMetricIds:d,forEachMetric:N,hasMetric:j,getTableId:C,getMetric:F,addMetricListener:(e,t)=>B(t,o,[e]),delListener:e=>(H(e),J),destroy:q,getListenerStats:()=>({})};return D(J)})(s)),o.get(s))})();export{N as createMetrics};
1
+ const e=e=>typeof e,t=e(""),r=e(e),n=(e,t)=>e.forEach(t),s=e=>o(e,((e,t)=>e+t),0),i=e=>e.length,o=(e,t,r)=>e.reduce(t,r),a=(e,...t)=>e.push(...t),c=Math.max,d=Math.min,l=isFinite,u=e=>null==e,v=(e,t,r)=>u(e)?r?.():t(e),h=e=>Array.isArray(e),f=()=>{},g=e=>e.size,M=(e,t)=>e?.has(t)??!1,L=e=>u(e)||0==g(e),m=e=>[...e?.values()??[]],w=e=>e.clear(),y=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),b=e=>new Map(e),x=(e,t)=>e?.get(t),E=(e,t)=>y(e,((e,r)=>t(r,e))),I=(e,t,r)=>u(r)?(p(e,t),e):e?.set(t,r),R=(e,t,r)=>(M(e,t)||I(e,t,r()),x(e,t)),S=(e,t,r,n,s=0)=>v((r?R:x)(e,t[s],s>i(t)-2?r:b),(o=>{if(s>i(t)-2)return n?.(o)&&I(e,t[s]),o;const a=S(o,t,r,n,s+1);return L(o)&&I(e,t[s]),a})),T=b([["avg",[(e,t)=>s(e)/t,(e,t,r)=>e+(t-e)/(r+1),(e,t,r)=>e+(e-t)/(r-1),(e,t,r,n)=>e+(t-r)/n]],["max",[e=>c(...e),(e,t)=>c(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:c(t,e)]],["min",[e=>d(...e),(e,t)=>d(t,e),(e,t)=>t==e?void 0:e,(e,t,r)=>r==e?void 0:d(t,e)]],["sum",[e=>s(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,r)=>e-r+t]]]),k=e=>new Set(h(e)||u(e)?e:[e]),z=(e,t)=>e?.add(t),A=/^\d+$/,D=Object.freeze,N=(s=>{const o=new WeakMap;return s=>(o.has(s)||o.set(s,(s=>{const o=b(),[c,d,N,j,C,F,O,,W,$,q]=((e,t,r)=>{const s=e.hasRow,o=b(),a=b(),c=b(),d=b(),l=b(),f=(t,r,...s)=>{const i=R(l,t,k);return n(s,(t=>z(i,t)&&r&&e.callListener(t))),s},g=(t,...r)=>v(x(l,t),(s=>{n(0==i(r)?m(s):r,(t=>{e.delListener(t),p(s,t)})),L(s)&&I(l,t)})),S=(e,r)=>{I(o,e,r),M(a,e)||(I(a,e,t()),I(c,e,b()),I(d,e,b()))},T=e=>{I(o,e),I(a,e),I(c,e),I(d,e),g(e)};return[()=>e,()=>[...o?.keys()??[]],e=>E(a,e),e=>M(a,e),e=>x(o,e),e=>x(a,e),(e,t)=>I(a,e,t),S,(t,r,o,a,l)=>{S(t,r);const v=b(),L=b(),m=x(c,t),p=x(d,t),R=t=>{const n=n=>e.getCell(r,t,n),o=x(m,t),c=s(r,t)?(d=a(n,t),isNaN(d)||u(d)||!0===d||!1===d||""===d?void 0:1*d):void 0;var d,f,g,M;if(o===c||h(o)&&h(c)&&(g=c,i(f=o)===i(g)&&(M=(e,t)=>g[t]===e,f.every(M)))||I(v,t,[o,c]),!u(l)){const e=x(p,t),i=s(r,t)?l(n,t):void 0;e!=i&&I(L,t,i)}},T=e=>{o((()=>{y(v,(([,e],t)=>I(m,t,e))),y(L,((e,t)=>I(p,t,e)))}),v,L,m,p,e),w(v),w(L)};E(m,R),e.hasTable(r)&&n(e.getRowIds(r),(e=>{M(m,e)||R(e)})),T(!0),g(t),f(t,0,e.addRowListener(r,null,((e,t,r)=>R(r))),e.addTableListener(r,(()=>T())))},T,()=>E(l,T),f,g]})(s,f),[B,G,H]=(e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[r=>(r?e.shift():null)??""+t++,t=>{A.test(t)&&i(e)<1e3&&a(e,t)}]})(),o=b();return[(e,n,s,i=[],a=(()=>[]))=>{t??=J;const c=r(1);return I(o,c,[e,n,s,i,a]),z(S(n,s??[""],k),c),c},(e,r,...s)=>n(((e,t=[""])=>{const r=[],s=(e,o)=>o==i(t)?a(r,e):null===t[o]?y(e,(e=>s(e,o+1))):n([t[o],null],(t=>s(x(e,t),o+1)));return s(e,0),r})(e,r),(e=>y(e,(e=>x(o,e)[0](t,...r??[],...s))))),e=>v(x(o,e),(([,t,r])=>(S(t,r??[""],void 0,(t=>(p(t,e),L(t)?1:0))),I(o,e),s(e),r))),e=>v(x(o,e),(([e,,r=[],s,o])=>{const a=(...c)=>{const d=i(c);d==i(r)?e(t,...c,...o(c)):u(r[d])?n(s[d]?.(...c)??[],(e=>a(...c,e))):a(...c,r[d])};a()}))]})(),J={setMetricDefinition:(n,s,i,a,c,d,v)=>{const h=e(i)==r?[i,c,d,v]:x(T,i)??x(T,"sum");return W(n,s,((e,t,r,s,i,a)=>{const c=F(n),d=g(s);a||=u(c),e();let v=((e,t,r,n,s,i=!1)=>{if(L(r))return;const[o,a,c,d]=s;return i||=u(e),y(n,(([r,n])=>{i||(e=u(r)?a?.(e,n,t++):u(n)?c?.(e,r,t--):d?.(e,n,r,t),i||=u(e))})),i?o(m(r),g(r)):e})(c,d,s,t,h,a);l(v)||(v=void 0),v!=c&&(O(n,v),G(o,[n],v,c))}),(1,e(f=a)==t?e=>e(f):f??(()=>1))),J;var f},delMetricDefinition:e=>($(e),J),getStore:c,getMetricIds:d,forEachMetric:N,hasMetric:j,getTableId:C,getMetric:F,addMetricListener:(e,t)=>B(t,o,[e]),delListener:e=>(H(e),J),destroy:q,getListenerStats:()=>({})};return D(J)})(s)),o.get(s))})();export{N as createMetrics};
package/lib/metrics.js.gz CHANGED
Binary file
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),n=(e,t)=>e.forEach(t),s=e=>e.length,o=(e,...t)=>e.push(...t),r=e=>null==e,i=(e,t,n)=>r(e)?n?.():t(e),a=e=>Array.isArray(e),l=(e,t)=>e?.has(t)??!1,d=e=>r(e)||0==(e=>e.size)(e),c=e=>[...e?.values()??[]],u=e=>e.clear(),R=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),f=e=>new Map(e),L=(e,t)=>e?.get(t),g=(e,t)=>R(e,((e,n)=>t(n,e))),w=(e,t,n)=>r(n)?(h(e,t),e):e?.set(t,n),p=(e,t,n)=>(l(e,t)||w(e,t,n()),L(e,t)),I=(e,t,n,o,r=0)=>i((n?p:L)(e,t[r],r>s(t)-2?n:f),(i=>{if(r>s(t)-2)return o?.(i)&&w(e,t[r]),i;const a=I(i,t,n,o,r+1);return d(i)&&w(e,t[r]),a})),v=e=>new Set(a(e)||r(e)?e:[e]),y=(e,t)=>e?.add(t),b=/^\d+$/,k=Object.freeze,E=(E=>{const T=new WeakMap;return E=>(T.has(E)||T.set(E,(E=>{const T=f(),m=f(),S=f(),z=f(),[A,D,M,j,x,C,,,O,W,$]=((e,t,o)=>{const I=e.hasRow,b=f(),k=f(),E=f(),T=f(),m=f(),S=(t,s,...o)=>{const r=p(m,t,v);return n(o,(t=>y(r,t)&&s&&e.callListener(t))),o},z=(t,...o)=>i(L(m,t),(r=>{n(0==s(o)?c(r):o,(t=>{e.delListener(t),h(r,t)})),d(r)&&w(m,t)})),A=(e,t)=>{w(b,e,t),l(k,e)||(w(k,e,[f(),f(),f(),f()]),w(E,e,f()),w(T,e,f()))},D=e=>{w(b,e),w(k,e),w(E,e),w(T,e),z(e)};return[()=>e,()=>[...b?.keys()??[]],e=>g(k,e),e=>l(k,e),e=>L(b,e),e=>L(k,e),(e,t)=>w(k,e,t),A,(t,o,i,d,c)=>{A(t,o);const h=f(),p=f(),v=L(E,t),y=L(T,t),b=t=>{const n=n=>e.getCell(o,t,n),i=L(v,t),l=I(o,t)?(u=d(n,t),r(u)?void 0:u+""):void 0;var u,R,f,g;if(i===l||a(i)&&a(l)&&(f=l,s(R=i)===s(f)&&(g=(e,t)=>f[t]===e,R.every(g)))||w(h,t,[i,l]),!r(c)){const e=L(y,t),s=I(o,t)?c(n,t):void 0;e!=s&&w(p,t,s)}},k=e=>{i((()=>{R(h,(([,e],t)=>w(v,t,e))),R(p,((e,t)=>w(y,t,e)))}),h,p,v,y,e),u(h),u(p)};g(v,b),e.hasTable(o)&&n(e.getRowIds(o),(e=>{l(v,e)||b(e)})),k(!0),z(t),S(t,0,e.addRowListener(o,null,((e,t,n)=>b(n))),e.addTableListener(o,(()=>k())))},D,()=>g(m,D),S,z]})(E),[q,B,F]=(e=>{let t;const[a,l]=(()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{b.test(t)&&s(e)<1e3&&o(e,t)}]})(),c=f();return[(e,n,s,o=[],r=(()=>[]))=>{t??=K;const i=a();return w(c,i,[e,n,s,o,r]),y(I(n,s??[""],v),i),i},(e,r,...i)=>n(((e,t=[""])=>{const r=[],i=(e,a)=>a==s(t)?o(r,e):null===t[a]?R(e,(e=>i(e,a+1))):n([t[a],null],(t=>i(L(e,t),a+1)));return i(e,0),r})(e,r),(e=>R(e,(e=>L(c,e)[0](t,...r??[],...i))))),e=>i(L(c,e),(([,t,n])=>(I(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),w(c,e),l(e),n))),e=>i(L(c,e),(([e,,o=[],i,a])=>{const l=(...d)=>{const c=s(d);c==s(o)?e(t,...d,...a(d)):r(o[c])?n(i[c]?.(...d)??[],(e=>l(...d,e))):l(...d,o[c])};l()}))]})(),G=(e,t,n)=>i(C(e),(([s,,o])=>{if(!l(o,t)){const i=v();if(x(e)!=J(e))y(i,t);else{let e=t;for(;!r(e)&&!l(i,e);)y(i,e),e=L(s,e)}if(n)return i;w(o,t,i)}return L(o,t)})),H=(e,t)=>i(C(e),(([,,e])=>w(e,t))),J=e=>L(T,e),K={setRelationshipDefinition:(n,s,o,a)=>{return w(T,n,o),O(n,s,((e,t)=>{const s=v(),o=v(),a=v(),[c,u]=C(n);R(t,(([e,t],R)=>{r(e)||(y(o,e),i(L(u,e),(t=>{h(t,R),d(t)&&w(u,e)}))),r(t)||(y(o,t),l(u,t)||w(u,t,v()),y(L(u,t),R)),y(s,R),w(c,R,t),g(L(z,n),(e=>{l(G(n,e),R)&&y(a,e)}))})),e(),R(s,(e=>B(m,[n,e]))),R(o,(e=>B(S,[n,e]))),R(a,(e=>{H(n,e),B(z,[n,e])}))}),e(c=a)==t?e=>e(c):c??(()=>"")),K;var c},delRelationshipDefinition:e=>(w(T,e),W(e),K),getStore:A,getRelationshipIds:D,forEachRelationship:e=>M((t=>e(t,(e=>E.forEachRow(x(t),e))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:J,getRemoteRowId:(e,t)=>L(C(e)?.[0],t),getLocalRowIds:(e,t)=>c(L(C(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(C(e))?[t]:c(G(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>q(n,m,[e,t]),addLocalRowIdsListener:(e,t,n)=>q(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(G(e,t),q(n,z,[e,t])),delListener:e=>(H(...F(e)),K),destroy:$,getListenerStats:()=>({})};return k(K)})(E)),T.get(E))})();export{E as createRelationships};
1
+ const e=e=>typeof e,t=e(""),n=(e,t)=>e.forEach(t),s=e=>e.length,o=(e,...t)=>e.push(...t),r=e=>null==e,i=(e,t,n)=>r(e)?n?.():t(e),a=e=>Array.isArray(e),l=(e,t)=>e?.has(t)??!1,d=e=>r(e)||0==(e=>e.size)(e),c=e=>[...e?.values()??[]],u=e=>e.clear(),R=(e,t)=>e?.forEach(t),h=(e,t)=>e?.delete(t),f=e=>new Map(e),L=(e,t)=>e?.get(t),g=(e,t)=>R(e,((e,n)=>t(n,e))),w=(e,t,n)=>r(n)?(h(e,t),e):e?.set(t,n),p=(e,t,n)=>(l(e,t)||w(e,t,n()),L(e,t)),I=(e,t,n,o,r=0)=>i((n?p:L)(e,t[r],r>s(t)-2?n:f),(i=>{if(r>s(t)-2)return o?.(i)&&w(e,t[r]),i;const a=I(i,t,n,o,r+1);return d(i)&&w(e,t[r]),a})),v=e=>new Set(a(e)||r(e)?e:[e]),y=(e,t)=>e?.add(t),b=/^\d+$/,k=Object.freeze,E=(E=>{const T=new WeakMap;return E=>(T.has(E)||T.set(E,(E=>{const T=f(),m=f(),S=f(),z=f(),[A,D,M,j,x,C,,,O,W,$]=((e,t,o)=>{const I=e.hasRow,b=f(),k=f(),E=f(),T=f(),m=f(),S=(t,s,...o)=>{const r=p(m,t,v);return n(o,(t=>y(r,t)&&s&&e.callListener(t))),o},z=(t,...o)=>i(L(m,t),(r=>{n(0==s(o)?c(r):o,(t=>{e.delListener(t),h(r,t)})),d(r)&&w(m,t)})),A=(e,t)=>{w(b,e,t),l(k,e)||(w(k,e,[f(),f(),f(),f()]),w(E,e,f()),w(T,e,f()))},D=e=>{w(b,e),w(k,e),w(E,e),w(T,e),z(e)};return[()=>e,()=>[...b?.keys()??[]],e=>g(k,e),e=>l(k,e),e=>L(b,e),e=>L(k,e),(e,t)=>w(k,e,t),A,(t,o,i,d,c)=>{A(t,o);const h=f(),p=f(),v=L(E,t),y=L(T,t),b=t=>{const n=n=>e.getCell(o,t,n),i=L(v,t),l=I(o,t)?(u=d(n,t),r(u)?void 0:u+""):void 0;var u,R,f,g;if(i===l||a(i)&&a(l)&&(f=l,s(R=i)===s(f)&&(g=(e,t)=>f[t]===e,R.every(g)))||w(h,t,[i,l]),!r(c)){const e=L(y,t),s=I(o,t)?c(n,t):void 0;e!=s&&w(p,t,s)}},k=e=>{i((()=>{R(h,(([,e],t)=>w(v,t,e))),R(p,((e,t)=>w(y,t,e)))}),h,p,v,y,e),u(h),u(p)};g(v,b),e.hasTable(o)&&n(e.getRowIds(o),(e=>{l(v,e)||b(e)})),k(!0),z(t),S(t,0,e.addRowListener(o,null,((e,t,n)=>b(n))),e.addTableListener(o,(()=>k())))},D,()=>g(m,D),S,z]})(E),[q,B,F]=(e=>{let t;const[a,l]=(()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??""+t++,t=>{b.test(t)&&s(e)<1e3&&o(e,t)}]})(),c=f();return[(e,n,s,o=[],r=(()=>[]))=>{t??=K;const i=a(1);return w(c,i,[e,n,s,o,r]),y(I(n,s??[""],v),i),i},(e,r,...i)=>n(((e,t=[""])=>{const r=[],i=(e,a)=>a==s(t)?o(r,e):null===t[a]?R(e,(e=>i(e,a+1))):n([t[a],null],(t=>i(L(e,t),a+1)));return i(e,0),r})(e,r),(e=>R(e,(e=>L(c,e)[0](t,...r??[],...i))))),e=>i(L(c,e),(([,t,n])=>(I(t,n??[""],void 0,(t=>(h(t,e),d(t)?1:0))),w(c,e),l(e),n))),e=>i(L(c,e),(([e,,o=[],i,a])=>{const l=(...d)=>{const c=s(d);c==s(o)?e(t,...d,...a(d)):r(o[c])?n(i[c]?.(...d)??[],(e=>l(...d,e))):l(...d,o[c])};l()}))]})(),G=(e,t,n)=>i(C(e),(([s,,o])=>{if(!l(o,t)){const i=v();if(x(e)!=J(e))y(i,t);else{let e=t;for(;!r(e)&&!l(i,e);)y(i,e),e=L(s,e)}if(n)return i;w(o,t,i)}return L(o,t)})),H=(e,t)=>i(C(e),(([,,e])=>w(e,t))),J=e=>L(T,e),K={setRelationshipDefinition:(n,s,o,a)=>{return w(T,n,o),O(n,s,((e,t)=>{const s=v(),o=v(),a=v(),[c,u]=C(n);R(t,(([e,t],R)=>{r(e)||(y(o,e),i(L(u,e),(t=>{h(t,R),d(t)&&w(u,e)}))),r(t)||(y(o,t),l(u,t)||w(u,t,v()),y(L(u,t),R)),y(s,R),w(c,R,t),g(L(z,n),(e=>{l(G(n,e),R)&&y(a,e)}))})),e(),R(s,(e=>B(m,[n,e]))),R(o,(e=>B(S,[n,e]))),R(a,(e=>{H(n,e),B(z,[n,e])}))}),e(c=a)==t?e=>e(c):c??(()=>"")),K;var c},delRelationshipDefinition:e=>(w(T,e),W(e),K),getStore:A,getRelationshipIds:D,forEachRelationship:e=>M((t=>e(t,(e=>E.forEachRow(x(t),e))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:J,getRemoteRowId:(e,t)=>L(C(e)?.[0],t),getLocalRowIds:(e,t)=>c(L(C(e)?.[1],t)),getLinkedRowIds:(e,t)=>r(C(e))?[t]:c(G(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>q(n,m,[e,t]),addLocalRowIdsListener:(e,t,n)=>q(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(G(e,t),q(n,z,[e,t])),delListener:e=>(H(...F(e)),K),destroy:$,getListenerStats:()=>({})};return k(K)})(E)),T.get(E))})();export{E as createRelationships};
Binary file
package/lib/store.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),s=e(!0),l=e(0),a=e(e),n=e=>""+e,r=(e,t)=>e.forEach(t),o=(e,t)=>e.map(t),c=e=>e.length,u=(e,t,s)=>e.slice(t,s),i=(e,...t)=>e.push(...t),d=e=>JSON.stringify(e,((e,t)=>{return T(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),f=JSON.parse,h=isFinite,T=(e,t)=>e instanceof t,V=e=>null==e,g=(e,t,s)=>V(e)?s?.():t(e),b=e=>e==t||e==s,v=t=>e(t)==a,S=(e,t)=>e?.has(t)??!1,w=e=>V(e)||0==(e=>e.size)(e),y=e=>e.clear(),I=(e,t)=>e?.forEach(t),R=(e,t)=>e?.delete(t),p=e=>new Map(e),C=e=>[...e?.keys()??[]],J=(e,t)=>e?.get(t),m=(e,t)=>I(e,((e,s)=>t(s,e))),L=(e,t,s)=>V(s)?(R(e,t),e):e?.set(t,s),E=(e,t,s)=>(S(e,t)||L(e,t,s()),J(e,t)),F=(e,t,s)=>{const l={},a=t??(e=>e);return I(e,((e,t)=>g(a(e),(e=>s?.(e)?0:l[t]=e)))),l},z=(e,t)=>{const s=p(),l=t??(e=>e);return I(e,((e,t)=>s.set(t,l(e)))),s},O=e=>z(e,z),k=(e,t,s,l,a=0)=>g((s?E:J)(e,t[a],a>c(t)-2?s:p),(n=>{if(a>c(t)-2)return l?.(n)&&L(e,t[a]),n;const r=k(n,t,s,l,a+1);return w(n)&&L(e,t[a]),r})),A=e=>new Set(Array.isArray(e)||V(e)?e:[e]),M=(e,t)=>e?.add(t),N=/^\d+$/,P=()=>{const e=[];let t=0;return[()=>e.shift()??""+t++,t=>{N.test(t)&&c(e)<1e3&&i(e,t)}]},j=Object,x=j.keys,D=j.isFrozen,W=j.freeze,$=e=>T(e,j)&&e.constructor==j,q=(e,t)=>!V(((e,t)=>g(e,(e=>e[t])))(e,t)),B=(e,t)=>delete e[t],G=(e,t)=>o(j.entries(e),(([e,s])=>t(s,e))),H=e=>{return $(e)&&(t=x(e),0==c(t));var t},K=e=>[e,e],Q=()=>[p(),p()],U=t=>{const s=e(t);return b(s)||s==l&&h(t)?s:void 0},X=(e,t,s,l=L)=>{const a=(n=e=>!q(t,e),C(e).filter(n));var n;return r(x(t),(l=>s(e,l,t[l]))),r(a,(t=>l(e,t))),e},Y=(e,t,s)=>V(e)||!$(e)||H(e)||D(e)?(s?.(),!1):(G(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),Z=(e,t,s)=>L(e,t,J(e,t)==-s?void 0:s),_=()=>{let e,t,s,a,h=0;const T=p(),N=p(),j=p(),x=p(),D=p(),$=p(),ee=p(),te=p(),se=p(),le=p(),ae=p(),ne=p(),re=A(),oe=p(),ce=p(),ue=p(),ie=Q(),de=Q(),fe=Q(),he=Q(),Te=Q(),Ve=Q(),ge=Q(),be=Q(),ve=Q(),Se=Q(),we=Q(),ye=Q(),Ie=Q(),Re=Q(),[pe,Ce,Je,me]=(e=>{let t;const[s,l]=P(),a=p();return[(e,l,n,r=[],o=(()=>[]))=>{t??=Nt;const c=s();return L(a,c,[e,l,n,r,o]),M(k(l,n??[""],A),c),c},(e,s,...l)=>r(((e,t=[""])=>{const s=[],l=(e,a)=>a==c(t)?i(s,e):null===t[a]?I(e,(e=>l(e,a+1))):r([t[a],null],(t=>l(J(e,t),a+1)));return l(e,0),s})(e,s),(e=>I(e,(e=>J(a,e)[0](t,...s??[],...l))))),e=>g(J(a,e),(([,t,s])=>(k(t,s??[""],void 0,(t=>(R(t,e),w(t)?1:0))),L(a,e),l(e),s))),e=>g(J(a,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const u=c(o);u==c(s)?e(t,...o,...a(o)):V(s[u])?r(l[u]?.(...o)??[],(e=>n(...o,e))):n(...o,s[u])};n()}))]})(),Le=e=>{if(!Y(e,((e,t)=>["type","default"].includes(t))))return!1;const t=e.type;return!(!b(t)&&t!=l||(U(e.default)!=t&&B(e,"default"),0))},Ee=(t,s)=>(!e||S(se,s)||nt(s))&&Y(t,((e,t)=>Fe(s,t,e)),(()=>nt(s))),Fe=(e,t,s,l)=>Y(l?s:Ae(s,e,t),((l,a)=>g(ze(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>nt(e,t))),ze=(t,s,l,a)=>e?g(J(J(se,t),l),(e=>U(a)!=e.type?nt(t,s,l,a,e.default):a),(()=>nt(t,s,l,a))):V(U(a))?nt(t,s,l,a):a,Oe=(e,t)=>Y(t?e:Me(e),((t,s)=>g(ke(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>rt())),ke=(e,s)=>t?g(J(ae,e),(t=>U(s)!=t.type?rt(e,s,t.default):s),(()=>rt(e,s))):V(U(s))?rt(e,s):s,Ae=(e,t,s)=>(g(J(le,t),(([l,a])=>{I(l,((t,s)=>{q(e,s)||(e[s]=t)})),I(a,(l=>{q(e,l)||nt(t,s,l)}))})),e),Me=e=>(t&&(I(ne,((t,s)=>{q(e,s)||(e[s]=t)})),I(re,(t=>{q(e,t)||rt(t)}))),e),Ne=e=>X(se,e,((e,t,s)=>{const l=p(),a=A();X(E(se,t,p),s,((e,t,s)=>{L(e,t,s),g(s.default,(e=>L(l,t,e)),(()=>M(a,t)))})),L(le,t,[l,a])}),((e,t)=>{L(se,t),L(le,t)})),Pe=e=>X(ae,e,((e,t,s)=>{L(ae,t,s),g(s.default,(e=>L(ne,t,e)),(()=>M(re,t)))}),((e,t)=>{L(ae,t),L(ne,t),R(re,t)})),je=e=>H(e)?Et():pt(e),xe=e=>X(ce,e,((e,t,s)=>De(t,s)),((e,t)=>Ue(t))),De=(e,t)=>X(E(ce,e,(()=>(_e(e,1),p()))),t,((t,s,l)=>We(e,t,s,l)),((t,s)=>Xe(e,t,s))),We=(e,t,s,l,a)=>X(E(t,s,(()=>(et(e,s,1),p()))),l,((t,l,a)=>$e(e,s,t,l,a)),((l,n)=>Ye(e,t,s,l,n,a))),$e=(e,t,s,l,a)=>{S(s,l)||tt(e,t,l,1);const n=J(s,l);a!==n&&(st(e,t,l,n,a),L(s,l,a))},qe=(e,t,s,l,a)=>g(J(t,s),(t=>$e(e,s,t,l,a)),(()=>We(e,t,s,Ae({[l]:a},e,s)))),Be=e=>H(e)?Ft():Ct(e),Ge=e=>X(ue,e,((e,t,s)=>He(t,s)),((e,t)=>Ze(t))),He=(e,t)=>{S(ue,e)||lt(e,1);const s=J(ue,e);t!==s&&(at(e,s,t),L(ue,e,t))},Ke=e=>{const[t]=E(oe,e,P),s=t();return S(J(ce,e),s)?Ke(e):s},Qe=e=>J(ce,e)??De(e,{}),Ue=e=>De(e,{}),Xe=(e,t,s)=>{const[,l]=E(oe,e,P);l(s),We(e,t,s,{},!0)},Ye=(e,t,s,l,a,n)=>{const r=J(J(le,e)?.[0],a);if(!V(r)&&!n)return $e(e,s,l,a,r);const o=t=>{st(e,s,t,J(l,t)),tt(e,s,t,-1),L(l,t)};V(r)?o(a):m(l,o),w(l)&&(et(e,s,-1),w(L(t,s))&&(_e(e,-1),L(ce,e),L(oe,e)))},Ze=e=>{const t=J(ne,e);if(!V(t))return He(e,t);at(e,J(ue,e)),lt(e,-1),L(ue,e)},_e=(e,t)=>Z(T,e,t),et=(e,t,s)=>Z(E(N,e,p),t,s),tt=(e,t,s,l)=>Z(E(E(j,e,p),t,p),s,l),st=(e,t,s,l,a)=>E(E(E(x,e,p),t,p),s,(()=>[l,0]))[1]=a,lt=(e,t)=>Z(D,e,t),at=(e,t,s)=>E($,e,(()=>[t,0]))[1]=s,nt=(e,t,s,l,a)=>(i(E(E(E(ee,e,p),t,p),s,(()=>[])),l),a),rt=(e,t,s)=>(i(E(te,e,(()=>[])),t),s),ot=(e,t,s)=>g(J(J(J(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...K(wt(e,t,s))])),ct=e=>g(J($,e),(([e,t])=>[!0,e,t]),(()=>[!1,...K(Rt(e))])),ut=e=>w(ee)||w(ve[e])?0:I(e?z(ee,O):ee,((t,s)=>I(t,((t,l)=>I(t,((t,a)=>Ce(ve[e],[s,l,a],t))))))),it=e=>w(te)||w(Se[e])?0:I(e?z(te):te,((t,s)=>Ce(Se[e],[s],t))),dt=(e,t,s)=>{if(!w(t))return Ce(e,s),1},ft=e=>{const t=w(Te[e]),s=w(ge[e])&&w(he[e])&&t&&w(de[e]),l=w(be[e])&&w(Ve[e])&&w(fe[e])&&w(ie[e]);if(!s||!l){const a=e?[z(T),O(N),z(j,O),z(x,O)]:[T,N,j,x];if(!s){I(a[2],((t,s)=>I(t,((t,l)=>dt(ge[e],t,[s,l])))));const s=A();I(a[1],((l,a)=>{dt(he[e],l,[a])&&!t&&(Ce(Te[e],[a,null]),M(s,a))})),t||I(a[3],((t,l)=>{if(!S(s,l)){const s=A();I(t,(e=>I(e,(([t,l],a)=>l!==t?M(s,a):R(e,a))))),I(s,(t=>Ce(Te[e],[l,t])))}})),dt(de[e],a[0])}if(!l){let t;I(a[3],((s,l)=>{let a;I(s,((s,n)=>{let r;I(s,(([s,o],c)=>{o!==s&&(Ce(be[e],[l,n,c],o,s,ot),t=a=r=1)})),r&&Ce(Ve[e],[l,n],ot)})),a&&Ce(fe[e],[l],ot)})),t&&Ce(ie[e],void 0,ot)}}},ht=e=>{const t=w(ye[e]),s=w(Ie[e])&&w(we[e]);if(!t||!s){const l=e?[z(D),z($)]:[D,$];if(t||dt(ye[e],l[0]),!s){let t;I(l[1],(([s,l],a)=>{l!==s&&(Ce(Ie[e],[a],l,s,ct),t=1)})),t&&Ce(we[e],void 0,ct)}}},Tt=(e,...t)=>(kt((()=>e(...o(t,n)))),Nt),Vt=()=>F(ce,(e=>F(e,F))),gt=()=>C(ce),bt=e=>C(J(ce,n(e))),vt=(e,t,s,l=0,a)=>{return o(u((c=J(ce,n(e)),i=(e,s)=>[V(t)?s:J(e,n(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),o([...c?.entries()??[]],(([e,t])=>i(t,e))).sort(r)),l,V(a)?a:l+a),(([,e])=>e));var r,c,i},St=(e,t)=>C(J(J(ce,n(e)),n(t))),wt=(e,t,s)=>J(J(J(ce,n(e)),n(t)),n(s)),yt=()=>F(ue),It=()=>C(ue),Rt=e=>J(ue,n(e)),pt=e=>Tt((()=>(e=>Y(e,Ee,nt))(e)?xe(e):0)),Ct=e=>Tt((()=>Oe(e)?Ge(e):0)),Jt=e=>{try{je(f(e))}catch{}return Nt},mt=t=>Tt((()=>{if((e=Y(t,(e=>Y(e,Le))))&&(Ne(t),!w(ce))){const e=Vt();Et(),pt(e)}})),Lt=e=>Tt((()=>{if(t=(e=>Y(e,Le))(e)){const s=yt();Ot(),Ft(),t=!0,Pe(e),Ct(s)}})),Et=()=>Tt((()=>xe({}))),Ft=()=>Tt((()=>Ge({}))),zt=()=>Tt((()=>{Ne({}),e=!1})),Ot=()=>Tt((()=>{Pe({}),t=!1})),kt=(e,t)=>{if(-1==h)return;At();const s=e();return Mt(t),s},At=()=>(h++,Nt),Mt=e=>(h>0&&(h--,0==h&&(s=!w(x),a=!w($),h=1,ut(1),s&&ft(1),it(1),a&&ht(1),h=-1,e?.(F(x,(e=>F(e,(e=>F(e,(e=>[...e]),(([e,t])=>e===t))),H)),H),F(ee,(e=>F(e,F))),F($,(e=>[...e]),(([e,t])=>e===t)),F(te))&&(h=1,I(x,((e,t)=>I(e,((e,s)=>I(e,(([e],l)=>((e,t,s,l,a)=>V(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a))(Nt,t,s,l,e))))))),I($,(([e],t)=>((e,t,s)=>V(s)?e.delValue(t):e.setValue(t,s))(Nt,t,e))),h=-1,s=a=!1),Ce(Re[0],void 0,s,a),ut(0),s&&ft(0),it(0),a&&ht(0),Ce(Re[1],void 0,s,a),h=0,r([T,N,j,x,ee,D,$,te],y))),Nt),Nt={getTables:Vt,getTableIds:gt,getTable:e=>F(J(ce,n(e)),F),getRowIds:bt,getSortedRowIds:vt,getRow:(e,t)=>F(J(J(ce,n(e)),n(t))),getCellIds:St,getCell:wt,getValues:yt,getValueIds:It,getValue:Rt,hasTables:()=>!w(ce),hasTable:e=>S(ce,n(e)),hasRow:(e,t)=>S(J(ce,n(e)),n(t)),hasCell:(e,t,s)=>S(J(J(ce,n(e)),n(t)),n(s)),hasValues:()=>!w(ue),hasValue:e=>S(ue,n(e)),getTablesJson:()=>d(ce),getValuesJson:()=>d(ue),getJson:()=>d([ce,ue]),getTablesSchemaJson:()=>d(se),getValuesSchemaJson:()=>d(ae),getSchemaJson:()=>d([se,ae]),setTables:pt,setTable:(e,t)=>Tt((e=>Ee(t,e)?De(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Fe(e,t,s)?We(e,Qe(e),t,s):0),e,t),addRow:(e,t)=>kt((()=>{let s;return Fe(e,s,t)&&(e=n(e),We(e,Qe(e),s=Ke(e),t)),s})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Fe(e,t,s,1)){const l=Qe(e);G(s,((s,a)=>qe(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>g(ze(e,t,s,v(l)?l(wt(e,t,s)):l),(l=>qe(e,Qe(e),t,s,l)))),e,t,s),setValues:Ct,setPartialValues:e=>Tt((()=>Oe(e,1)?G(e,((e,t)=>He(t,e))):0)),setValue:(e,t)=>Tt((e=>g(ke(e,v(t)?t(Rt(e)):t),(t=>He(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Be(f(e))}catch{}return Nt},setJson:e=>{try{const[t,s]=f(e);je(t),Be(s)}catch{Jt(e)}return Nt},setTablesSchema:mt,setValuesSchema:Lt,setSchema:(e,t)=>Tt((()=>{mt(e),Lt(t)})),delTables:Et,delTable:e=>Tt((e=>S(ce,e)?Ue(e):0),e),delRow:(e,t)=>Tt(((e,t)=>g(J(ce,e),(s=>S(s,t)?Xe(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Tt(((e,t,s)=>g(J(ce,e),(a=>g(J(a,t),(n=>S(n,s)?Ye(e,a,t,n,s,l):0))))),e,t,s),delValues:Ft,delValue:e=>Tt((e=>S(ue,e)?Ze(e):0),e),delTablesSchema:zt,delValuesSchema:Ot,delSchema:()=>Tt((()=>{zt(),Ot()})),transaction:kt,startTransaction:At,finishTransaction:Mt,forEachTable:e=>I(ce,((t,s)=>e(s,(e=>I(t,((t,s)=>e(s,(e=>m(t,e))))))))),forEachRow:(e,t)=>I(J(ce,n(e)),((e,s)=>t(s,(t=>m(e,t))))),forEachCell:(e,t,s)=>m(J(J(ce,n(e)),n(t)),s),forEachValue:e=>m(ue,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=vt(e,t,s,l,a);return pe((()=>{const r=vt(e,t,s,l,a);var u,i,d;i=o,c(u=r)===c(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=r,n(Nt,e,t,s,l,a,o))}),Te[r?1:0],[e,t],[gt])},addWillFinishTransactionListener:e=>pe(e,Re[0]),addDidFinishTransactionListener:e=>pe(e,Re[1]),callListener:e=>(me(e),Nt),delListener:e=>(Je(e),Nt),getListenerStats:()=>({}),createStore:_};return G({Tables:[0,ie],TableIds:[0,de],Table:[1,fe,[gt]],RowIds:[1,he,[gt]],Row:[2,Ve,[gt,bt]],CellIds:[2,ge,[gt,bt]],Cell:[3,be,[gt,bt,St],e=>K(wt(...e))],InvalidCell:[3,ve],Values:[0,we],ValueIds:[0,ye],Value:[1,Ie,[It],e=>K(Rt(e[0]))],InvalidValue:[1,Se]},(([e,t,s,l],a)=>{Nt["add"+a+"Listener"]=(...a)=>pe(a[e],t[a[e+1]?1:0],e>0?u(a,0,e):void 0,s,l)})),W(Nt)};export{_ as createStore};
1
+ const e=e=>typeof e,t=e(""),s=e(!0),l=e(0),a=e(e),n=e=>""+e,r=(e,t)=>e.forEach(t),o=(e,t)=>e.map(t),c=e=>e.length,u=(e,t,s)=>e.slice(t,s),i=(e,...t)=>e.push(...t),d=e=>JSON.stringify(e,((e,t)=>{return T(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),l={},[...t].reduce(s,l)):t;var s,l})),f=JSON.parse,h=isFinite,T=(e,t)=>e instanceof t,V=e=>null==e,g=(e,t,s)=>V(e)?s?.():t(e),b=e=>e==t||e==s,S=t=>e(t)==a,v=(e,t)=>e?.has(t)??!1,w=e=>V(e)||0==(e=>e.size)(e),y=e=>e.clear(),I=(e,t)=>e?.forEach(t),R=(e,t)=>e?.delete(t),p=e=>new Map(e),C=e=>[...e?.keys()??[]],J=(e,t)=>e?.get(t),m=(e,t)=>I(e,((e,s)=>t(s,e))),L=(e,t,s)=>V(s)?(R(e,t),e):e?.set(t,s),E=(e,t,s)=>(v(e,t)||L(e,t,s()),J(e,t)),F=(e,t,s)=>{const l={},a=t??(e=>e);return I(e,((e,t)=>g(a(e),(e=>s?.(e)?0:l[t]=e)))),l},z=(e,t)=>{const s=p(),l=t??(e=>e);return I(e,((e,t)=>s.set(t,l(e)))),s},O=e=>z(e,z),k=(e,t,s,l,a=0)=>g((s?E:J)(e,t[a],a>c(t)-2?s:p),(n=>{if(a>c(t)-2)return l?.(n)&&L(e,t[a]),n;const r=k(n,t,s,l,a+1);return w(n)&&L(e,t[a]),r})),A=e=>new Set(Array.isArray(e)||V(e)?e:[e]),M=(e,t)=>e?.add(t),N=/^\d+$/,P=()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??""+t++,t=>{N.test(t)&&c(e)<1e3&&i(e,t)}]},j=Object,x=j.keys,D=j.isFrozen,W=j.freeze,$=e=>T(e,j)&&e.constructor==j,q=(e,t)=>!V(((e,t)=>g(e,(e=>e[t])))(e,t)),B=(e,t)=>delete e[t],G=(e,t)=>o(j.entries(e),(([e,s])=>t(s,e))),H=e=>{return $(e)&&(t=x(e),0==c(t));var t},K=e=>[e,e],Q=()=>[p(),p()],U=t=>{const s=e(t);return b(s)||s==l&&h(t)?s:void 0},X=(e,t,s,l=L)=>(G(t,((t,l)=>s(e,l,t))),m(e,(s=>q(t,s)?0:l(e,s))),e),Y=(e,t,s)=>V(e)||!$(e)||H(e)||D(e)?(s?.(),!1):(G(e,((s,l)=>{t(s,l)||B(e,l)})),!H(e)),Z=(e,t,s)=>L(e,t,J(e,t)==-s?void 0:s),_=()=>{let e,t,s,a,h=0;const T=p(),N=p(),j=p(),x=p(),D=p(),$=p(),ee=p(),te=p(),se=p(),le=p(),ae=p(),ne=p(),re=A(),oe=p(),ce=p(),ue=p(),ie=Q(),de=Q(),fe=Q(),he=Q(),Te=Q(),Ve=Q(),ge=Q(),be=Q(),Se=Q(),ve=Q(),we=Q(),ye=Q(),Ie=Q(),Re=Q(),[pe,Ce,Je,me]=(e=>{let t;const[s,l]=P(),a=p();return[(e,l,n,r=[],o=(()=>[]))=>{t??=Nt;const c=s(1);return L(a,c,[e,l,n,r,o]),M(k(l,n??[""],A),c),c},(e,s,...l)=>r(((e,t=[""])=>{const s=[],l=(e,a)=>a==c(t)?i(s,e):null===t[a]?I(e,(e=>l(e,a+1))):r([t[a],null],(t=>l(J(e,t),a+1)));return l(e,0),s})(e,s),(e=>I(e,(e=>J(a,e)[0](t,...s??[],...l))))),e=>g(J(a,e),(([,t,s])=>(k(t,s??[""],void 0,(t=>(R(t,e),w(t)?1:0))),L(a,e),l(e),s))),e=>g(J(a,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const u=c(o);u==c(s)?e(t,...o,...a(o)):V(s[u])?r(l[u]?.(...o)??[],(e=>n(...o,e))):n(...o,s[u])};n()}))]})(),Le=e=>{if(!Y(e,((e,t)=>["type","default"].includes(t))))return!1;const t=e.type;return!(!b(t)&&t!=l||(U(e.default)!=t&&B(e,"default"),0))},Ee=(t,s)=>(!e||v(se,s)||nt(s))&&Y(t,((e,t)=>Fe(s,t,e)),(()=>nt(s))),Fe=(e,t,s,l)=>Y(l?s:Ae(s,e,t),((l,a)=>g(ze(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>nt(e,t))),ze=(t,s,l,a)=>e?g(J(J(se,t),l),(e=>U(a)!=e.type?nt(t,s,l,a,e.default):a),(()=>nt(t,s,l,a))):V(U(a))?nt(t,s,l,a):a,Oe=(e,t)=>Y(t?e:Me(e),((t,s)=>g(ke(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>rt())),ke=(e,s)=>t?g(J(ae,e),(t=>U(s)!=t.type?rt(e,s,t.default):s),(()=>rt(e,s))):V(U(s))?rt(e,s):s,Ae=(e,t,s)=>(g(J(le,t),(([l,a])=>{I(l,((t,s)=>{q(e,s)||(e[s]=t)})),I(a,(l=>{q(e,l)||nt(t,s,l)}))})),e),Me=e=>(t&&(I(ne,((t,s)=>{q(e,s)||(e[s]=t)})),I(re,(t=>{q(e,t)||rt(t)}))),e),Ne=e=>X(se,e,((e,t,s)=>{const l=p(),a=A();X(E(se,t,p),s,((e,t,s)=>{L(e,t,s),g(s.default,(e=>L(l,t,e)),(()=>M(a,t)))})),L(le,t,[l,a])}),((e,t)=>{L(se,t),L(le,t)})),Pe=e=>X(ae,e,((e,t,s)=>{L(ae,t,s),g(s.default,(e=>L(ne,t,e)),(()=>M(re,t)))}),((e,t)=>{L(ae,t),L(ne,t),R(re,t)})),je=e=>H(e)?Et():pt(e),xe=e=>X(ce,e,((e,t,s)=>De(t,s)),((e,t)=>Ue(t))),De=(e,t)=>X(E(ce,e,(()=>(_e(e,1),p()))),t,((t,s,l)=>We(e,t,s,l)),((t,s)=>Xe(e,t,s))),We=(e,t,s,l,a)=>X(E(t,s,(()=>(et(e,s,1),p()))),l,((t,l,a)=>$e(e,s,t,l,a)),((l,n)=>Ye(e,t,s,l,n,a))),$e=(e,t,s,l,a)=>{v(s,l)||tt(e,t,l,1);const n=J(s,l);a!==n&&(st(e,t,l,n,a),L(s,l,a))},qe=(e,t,s,l,a)=>g(J(t,s),(t=>$e(e,s,t,l,a)),(()=>We(e,t,s,Ae({[l]:a},e,s)))),Be=e=>H(e)?Ft():Ct(e),Ge=e=>X(ue,e,((e,t,s)=>He(t,s)),((e,t)=>Ze(t))),He=(e,t)=>{v(ue,e)||lt(e,1);const s=J(ue,e);t!==s&&(at(e,s,t),L(ue,e,t))},Ke=(e,t)=>{const[s]=E(oe,e,P),l=s(t);return v(J(ce,e),l)?Ke(e,t):l},Qe=e=>J(ce,e)??De(e,{}),Ue=e=>De(e,{}),Xe=(e,t,s)=>{const[,l]=E(oe,e,P);l(s),We(e,t,s,{},!0)},Ye=(e,t,s,l,a,n)=>{const r=J(J(le,e)?.[0],a);if(!V(r)&&!n)return $e(e,s,l,a,r);const o=t=>{st(e,s,t,J(l,t)),tt(e,s,t,-1),L(l,t)};V(r)?o(a):m(l,o),w(l)&&(et(e,s,-1),w(L(t,s))&&(_e(e,-1),L(ce,e),L(oe,e)))},Ze=e=>{const t=J(ne,e);if(!V(t))return He(e,t);at(e,J(ue,e)),lt(e,-1),L(ue,e)},_e=(e,t)=>Z(T,e,t),et=(e,t,s)=>Z(E(N,e,p),t,s),tt=(e,t,s,l)=>Z(E(E(j,e,p),t,p),s,l),st=(e,t,s,l,a)=>E(E(E(x,e,p),t,p),s,(()=>[l,0]))[1]=a,lt=(e,t)=>Z(D,e,t),at=(e,t,s)=>E($,e,(()=>[t,0]))[1]=s,nt=(e,t,s,l,a)=>(i(E(E(E(ee,e,p),t,p),s,(()=>[])),l),a),rt=(e,t,s)=>(i(E(te,e,(()=>[])),t),s),ot=(e,t,s)=>g(J(J(J(x,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...K(wt(e,t,s))])),ct=e=>g(J($,e),(([e,t])=>[!0,e,t]),(()=>[!1,...K(Rt(e))])),ut=e=>w(ee)||w(Se[e])?0:I(e?z(ee,O):ee,((t,s)=>I(t,((t,l)=>I(t,((t,a)=>Ce(Se[e],[s,l,a],t))))))),it=e=>w(te)||w(ve[e])?0:I(e?z(te):te,((t,s)=>Ce(ve[e],[s],t))),dt=(e,t,s)=>{if(!w(t))return Ce(e,s),1},ft=e=>{const t=w(Te[e]),s=w(ge[e])&&w(he[e])&&t&&w(de[e]),l=w(be[e])&&w(Ve[e])&&w(fe[e])&&w(ie[e]);if(!s||!l){const a=e?[z(T),O(N),z(j,O),z(x,O)]:[T,N,j,x];if(!s){I(a[2],((t,s)=>I(t,((t,l)=>dt(ge[e],t,[s,l])))));const s=A();I(a[1],((l,a)=>{dt(he[e],l,[a])&&!t&&(Ce(Te[e],[a,null]),M(s,a))})),t||I(a[3],((t,l)=>{if(!v(s,l)){const s=A();I(t,(e=>I(e,(([t,l],a)=>l!==t?M(s,a):R(e,a))))),I(s,(t=>Ce(Te[e],[l,t])))}})),dt(de[e],a[0])}if(!l){let t;I(a[3],((s,l)=>{let a;I(s,((s,n)=>{let r;I(s,(([s,o],c)=>{o!==s&&(Ce(be[e],[l,n,c],o,s,ot),t=a=r=1)})),r&&Ce(Ve[e],[l,n],ot)})),a&&Ce(fe[e],[l],ot)})),t&&Ce(ie[e],void 0,ot)}}},ht=e=>{const t=w(ye[e]),s=w(Ie[e])&&w(we[e]);if(!t||!s){const l=e?[z(D),z($)]:[D,$];if(t||dt(ye[e],l[0]),!s){let t;I(l[1],(([s,l],a)=>{l!==s&&(Ce(Ie[e],[a],l,s,ct),t=1)})),t&&Ce(we[e],void 0,ct)}}},Tt=(e,...t)=>(kt((()=>e(...o(t,n)))),Nt),Vt=()=>F(ce,(e=>F(e,F))),gt=()=>C(ce),bt=e=>C(J(ce,n(e))),St=(e,t,s,l=0,a)=>{return o(u((c=J(ce,n(e)),i=(e,s)=>[V(t)?s:J(e,n(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),o([...c?.entries()??[]],(([e,t])=>i(t,e))).sort(r)),l,V(a)?a:l+a),(([,e])=>e));var r,c,i},vt=(e,t)=>C(J(J(ce,n(e)),n(t))),wt=(e,t,s)=>J(J(J(ce,n(e)),n(t)),n(s)),yt=()=>F(ue),It=()=>C(ue),Rt=e=>J(ue,n(e)),pt=e=>Tt((()=>(e=>Y(e,Ee,nt))(e)?xe(e):0)),Ct=e=>Tt((()=>Oe(e)?Ge(e):0)),Jt=e=>{try{je(f(e))}catch{}return Nt},mt=t=>Tt((()=>{if((e=Y(t,(e=>Y(e,Le))))&&(Ne(t),!w(ce))){const e=Vt();Et(),pt(e)}})),Lt=e=>Tt((()=>{if(t=(e=>Y(e,Le))(e)){const s=yt();Ot(),Ft(),t=!0,Pe(e),Ct(s)}})),Et=()=>Tt((()=>xe({}))),Ft=()=>Tt((()=>Ge({}))),zt=()=>Tt((()=>{Ne({}),e=!1})),Ot=()=>Tt((()=>{Pe({}),t=!1})),kt=(e,t)=>{if(-1==h)return;At();const s=e();return Mt(t),s},At=()=>(h++,Nt),Mt=e=>(h>0&&(h--,0==h&&(s=!w(x),a=!w($),h=1,ut(1),s&&ft(1),it(1),a&&ht(1),h=-1,e?.(F(x,(e=>F(e,(e=>F(e,(e=>[...e]),(([e,t])=>e===t))),H)),H),F(ee,(e=>F(e,F))),F($,(e=>[...e]),(([e,t])=>e===t)),F(te))&&(h=1,I(x,((e,t)=>I(e,((e,s)=>I(e,(([e],l)=>((e,t,s,l,a)=>V(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a))(Nt,t,s,l,e))))))),I($,(([e],t)=>((e,t,s)=>V(s)?e.delValue(t):e.setValue(t,s))(Nt,t,e))),h=-1,s=a=!1),Ce(Re[0],void 0,s,a),ut(0),s&&ft(0),it(0),a&&ht(0),Ce(Re[1],void 0,s,a),h=0,r([T,N,j,x,ee,D,$,te],y))),Nt),Nt={getTables:Vt,getTableIds:gt,getTable:e=>F(J(ce,n(e)),F),getRowIds:bt,getSortedRowIds:St,getRow:(e,t)=>F(J(J(ce,n(e)),n(t))),getCellIds:vt,getCell:wt,getValues:yt,getValueIds:It,getValue:Rt,hasTables:()=>!w(ce),hasTable:e=>v(ce,n(e)),hasRow:(e,t)=>v(J(ce,n(e)),n(t)),hasCell:(e,t,s)=>v(J(J(ce,n(e)),n(t)),n(s)),hasValues:()=>!w(ue),hasValue:e=>v(ue,n(e)),getTablesJson:()=>d(ce),getValuesJson:()=>d(ue),getJson:()=>d([ce,ue]),getTablesSchemaJson:()=>d(se),getValuesSchemaJson:()=>d(ae),getSchemaJson:()=>d([se,ae]),setTables:pt,setTable:(e,t)=>Tt((e=>Ee(t,e)?De(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Fe(e,t,s)?We(e,Qe(e),t,s):0),e,t),addRow:(e,t,s=!0)=>kt((()=>{let l;return Fe(e,l,t)&&(e=n(e),We(e,Qe(e),l=Ke(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Fe(e,t,s,1)){const l=Qe(e);G(s,((s,a)=>qe(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>g(ze(e,t,s,S(l)?l(wt(e,t,s)):l),(l=>qe(e,Qe(e),t,s,l)))),e,t,s),setValues:Ct,setPartialValues:e=>Tt((()=>Oe(e,1)?G(e,((e,t)=>He(t,e))):0)),setValue:(e,t)=>Tt((e=>g(ke(e,S(t)?t(Rt(e)):t),(t=>He(e,t)))),e),setTablesJson:Jt,setValuesJson:e=>{try{Be(f(e))}catch{}return Nt},setJson:e=>{try{const[t,s]=f(e);je(t),Be(s)}catch{Jt(e)}return Nt},setTablesSchema:mt,setValuesSchema:Lt,setSchema:(e,t)=>Tt((()=>{mt(e),Lt(t)})),delTables:Et,delTable:e=>Tt((e=>v(ce,e)?Ue(e):0),e),delRow:(e,t)=>Tt(((e,t)=>g(J(ce,e),(s=>v(s,t)?Xe(e,s,t):0))),e,t),delCell:(e,t,s,l)=>Tt(((e,t,s)=>g(J(ce,e),(a=>g(J(a,t),(n=>v(n,s)?Ye(e,a,t,n,s,l):0))))),e,t,s),delValues:Ft,delValue:e=>Tt((e=>v(ue,e)?Ze(e):0),e),delTablesSchema:zt,delValuesSchema:Ot,delSchema:()=>Tt((()=>{zt(),Ot()})),transaction:kt,startTransaction:At,finishTransaction:Mt,forEachTable:e=>I(ce,((t,s)=>e(s,(e=>I(t,((t,s)=>e(s,(e=>m(t,e))))))))),forEachRow:(e,t)=>I(J(ce,n(e)),((e,s)=>t(s,(t=>m(e,t))))),forEachCell:(e,t,s)=>m(J(J(ce,n(e)),n(t)),s),forEachValue:e=>m(ue,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=St(e,t,s,l,a);return pe((()=>{const r=St(e,t,s,l,a);var u,i,d;i=o,c(u=r)===c(i)&&(d=(e,t)=>i[t]===e,u.every(d))||(o=r,n(Nt,e,t,s,l,a,o))}),Te[r?1:0],[e,t],[gt])},addWillFinishTransactionListener:e=>pe(e,Re[0]),addDidFinishTransactionListener:e=>pe(e,Re[1]),callListener:e=>(me(e),Nt),delListener:e=>(Je(e),Nt),getListenerStats:()=>({}),createStore:_};return G({Tables:[0,ie],TableIds:[0,de],Table:[1,fe,[gt]],RowIds:[1,he,[gt]],Row:[2,Ve,[gt,bt]],CellIds:[2,ge,[gt,bt]],Cell:[3,be,[gt,bt,vt],e=>K(wt(...e))],InvalidCell:[3,Se],Values:[0,we],ValueIds:[0,ye],Value:[1,Ie,[It],e=>K(Rt(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Nt["add"+a+"Listener"]=(...a)=>pe(a[e],t[a[e+1]?1:0],e>0?u(a,0,e):void 0,s,l)})),W(Nt)};export{_ 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=s(""),o=s(!0),a=s(0),r=s(s),l=e=>""+e,i=(e,t)=>e.includes(t),d=(e,t)=>e.every(t),c=(e,t)=>w(e)===w(t)&&d(e,((e,s)=>t[s]===e)),u=(e,t)=>d(e,((s,n)=>0==n||t(e[n-1],s)<=0)),h=(e,t)=>e.sort(t),f=(e,t)=>e.forEach(t),g=(e,t)=>e.map(t),L=e=>I(e,((e,t)=>e+t),0),w=e=>e.length,v=e=>0==w(e),I=(e,t,s)=>e.reduce(t,s),R=(e,t,s)=>e.slice(t,s),S=(e,...t)=>e.push(...t),T=e=>e.pop(),y=e=>e.shift(),p=e=>JSON.stringify(e,((e,t)=>E(t,Map)?I([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),b=JSON.parse,C=Math.max,m=Math.min,V=isFinite,E=(e,t)=>e instanceof t,k=e=>null==e,J=(e,t,s)=>k(e)?s?.():t(e),A=e=>e==n||e==o,M=e=>s(e)==r,D=e=>Array.isArray(e),x=()=>{},F=e=>e.size,Q=(e,t)=>e?.has(t)??!1,z=e=>k(e)||0==F(e),N=e=>[...e?.values()??[]],O=e=>e.clear(),j=(e,t)=>e?.forEach(t),P=(e,t)=>e?.delete(t),W=e=>new Map(e),B=e=>[...e?.keys()??[]],H=(e,t)=>e?.get(t),$=(e,t)=>j(e,((e,s)=>t(s,e))),q=(e,t,s)=>k(s)?(P(e,t),e):e?.set(t,s),G=(e,t,s)=>(Q(e,t)||q(e,t,s()),H(e,t)),K=(e,t,s)=>{const n={},o=t??(e=>e);return j(e,((e,t)=>J(o(e),(e=>s?.(e)?0:n[t]=e)))),n},U=(e,t)=>{const s=W(),n=t??(e=>e);return j(e,((e,t)=>s.set(t,n(e)))),s},X=e=>U(e,U),Y=(e,t,s,n,o=0)=>J((s?G:H)(e,t[o],o>w(t)-2?s:W),(a=>{if(o>w(t)-2)return n?.(a)&&q(e,t[o]),a;const r=Y(a,t,s,n,o+1);return z(a)&&q(e,t[o]),r})),Z=e=>{const t=s(e);return A(t)||t==a&&V(e)?t:void 0},_=(e,t,s,n,o)=>k(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),ee=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),te=e=>new Set(D(e)||k(e)?e:[e]),se=(e,t)=>e?.add(t),ne=(e,t,s)=>{const n=e.hasRow,o=W(),a=W(),r=W(),l=W(),i=W(),d=(t,s,...n)=>{const o=G(i,t,te);return f(n,(t=>se(o,t)&&s&&e.callListener(t))),n},u=(t,...s)=>J(H(i,t),(n=>{f(v(s)?N(n):s,(t=>{e.delListener(t),P(n,t)})),z(n)&&q(i,t)})),h=(e,s)=>{q(o,e,s),Q(a,e)||(q(a,e,t()),q(r,e,W()),q(l,e,W()))},g=e=>{q(o,e),q(a,e),q(r,e),q(l,e),u(e)};return[()=>e,()=>B(o),e=>$(a,e),e=>Q(a,e),e=>H(o,e),e=>H(a,e),(e,t)=>q(a,e,t),h,(t,o,a,i,g)=>{h(t,o);const L=W(),w=W(),v=H(r,t),I=H(l,t),R=t=>{const a=s=>e.getCell(o,t,s),r=H(v,t),l=n(o,t)?s(i(a,t)):void 0;if(r===l||D(r)&&D(l)&&c(r,l)||q(L,t,[r,l]),!k(g)){const e=H(I,t),s=n(o,t)?g(a,t):void 0;e!=s&&q(w,t,s)}},S=e=>{a((()=>{j(L,(([,e],t)=>q(v,t,e))),j(w,((e,t)=>q(I,t,e)))}),L,w,v,I,e),O(L),O(w)};$(v,R),e.hasTable(o)&&f(e.getRowIds(o),(e=>{Q(v,e)||R(e)})),S(!0),u(t),d(t,0,e.addRowListener(o,null,((e,t,s)=>R(s))),e.addTableListener(o,(()=>S())))},g,()=>$(i,g),d,u]},oe=(e,t)=>s(e)==n?t=>t(e):e??(()=>t??""),ae=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},re=/^\d+$/,le=()=>{const e=[];let t=0;return[()=>y(e)??""+t++,t=>{re.test(t)&&w(e)<1e3&&S(e,t)}]},ie=e=>{let t;const[s,n]=le(),o=W();return[(n,a,r,l=[],i=(()=>[]))=>{t??=e();const d=s();return q(o,d,[n,a,r,l,i]),se(Y(a,r??[""],te),d),d},(e,s,...n)=>f(((e,t=[""])=>{const s=[],n=(e,o)=>o==w(t)?S(s,e):null===t[o]?j(e,(e=>n(e,o+1))):f([t[o],null],(t=>n(H(e,t),o+1)));return n(e,0),s})(e,s),(e=>j(e,(e=>H(o,e)[0](t,...s??[],...n))))),e=>J(H(o,e),(([,t,s])=>(Y(t,s??[""],void 0,(t=>(P(t,e),z(t)?1:0))),q(o,e),n(e),s))),e=>J(H(o,e),(([e,,s=[],n,o])=>{const a=(...r)=>{const l=w(r);l==w(s)?e(t,...r,...o(r)):k(s[l])?f(n[l]?.(...r)??[],(e=>a(...r,e))):a(...r,s[l])};a()}))]},de=Object,ce=de.keys,ue=de.isFrozen,he=de.freeze,fe=e=>E(e,de)&&e.constructor==de,ge=(e,t)=>!k(((e,t)=>J(e,(e=>e[t])))(e,t)),Le=(e,t)=>delete e[t],we=(e,t)=>g(de.entries(e),(([e,s])=>t(s,e))),ve=e=>fe(e)&&v(ce(e)),Ie=ae((e=>{let t,s,n,o=100,a=W(),r=W(),l=1;const d=W(),c=W(),[u,h,g]=ie((()=>U)),L=W(),I=W(),R=[],p=[],b=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=H(L,s);j(n,((s,n)=>j(s,((s,o)=>j(s,((s,a)=>_(e,n,o,a,s[t]))))))),j(o,((s,n)=>ee(e,n,s[t])))})),l=1},C=e=>{q(L,e),q(I,e),h(c,[e])},m=(e,t)=>f(((e,t)=>e.splice(0,t))(e,t??w(e)),C),V=()=>m(R,w(R)-o),E=()=>J(t,(()=>{S(R,t),V(),m(p),t=void 0,n=1})),A=()=>{t=T(R),n=1},M=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(l){E();const e=G(a,t,W),l=G(e,s,W),i=G(l,n,(()=>[r,void 0]));i[1]=o,i[0]===o&&z(q(l,n))&&z(q(e,s))&&z(q(a,t))&&A(),O()}})),D=e.addValueListener(null,((e,t,s,n)=>{if(l){E();const e=G(r,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&z(q(r,t))&&A(),O()}})),x=(e="")=>(k(t)&&(t=""+s++,q(L,t,[a,r]),B(t,e),a=W(),r=W(),n=1),t),F=()=>{v(R)||(((e,...t)=>{e.unshift(...t)})(p,x()),b(0,t),t=T(R),n=1)},N=()=>{v(p)||(S(R,t),t=y(p),b(1,t),n=1)},O=()=>{n&&(h(d),n=0)},P=e=>{const t=x(e);return O(),t},B=(e,t)=>(K(e)&&H(I,e)!==t&&(q(I,e,t),h(c,[e])),U),K=e=>Q(L,e),U={setSize:e=>(o=e,V(),U),addCheckpoint:P,setCheckpoint:B,getStore:()=>e,getCheckpointIds:()=>[[...R],t,[...p]],forEachCheckpoint:e=>$(I,e),hasCheckpoint:K,getCheckpoint:e=>H(I,e),goBackward:()=>(F(),O(),U),goForward:()=>(N(),O(),U),goTo:e=>{const s=i(R,e)?F:i(p,e)?N:null;for(;!k(s)&&e!=t;)s();return O(),U},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(g(e),U),clear:()=>(m(R),m(p),k(t)||C(t),t=void 0,s=0,P(),U),destroy:()=>{e.delListener(M),e.delListener(D)},getListenerStats:()=>({})};return he(U.clear())})),Re=(e,t)=>e<t?-1:1,Se=ae((e=>{const t=W(),s=W(),[n,o,a,r,i,d,c,,f,L,w]=ne(e,W,(e=>k(e)?"":D(e)?g(e,l):l(e))),[v,I,R]=ie((()=>T)),S=(t,s,n)=>{const o=i(t);j(n,((t,n)=>s(n,(s=>j(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},T={setIndexDefinition:(e,n,o,a,r,l=Re)=>{const i=k(r)?void 0:([e],[t])=>r(e,t);return f(e,n,((n,o,r,f,g,L)=>{let w=0;const v=te(),R=te(),S=d(e);if(j(o,(([e,t],s)=>{const n=te(e),o=te(t);j(n,(e=>P(o,e)?P(n,e):0)),j(n,(e=>{se(v,e),J(H(S,e),(t=>{P(t,s),z(t)&&(q(S,e),w=1)}))})),j(o,(e=>{se(v,e),Q(S,e)||(q(S,e,te()),w=1),se(H(S,e),s),k(a)||se(R,e)}))})),n(),z(g)||(L?$(S,(e=>se(R,e))):$(r,(e=>J(H(f,e),(e=>se(R,e))))),j(R,(e=>{const t=(t,s)=>l(H(g,t),H(g,s),e),s=[...H(S,e)];u(s,t)||(q(S,e,te(h(s,t))),se(v,e))}))),(w||L)&&!k(i)){const t=[...S];u(t,i)||(c(e,W(h(t,i))),w=1)}w&&I(t,[e]),j(v,(t=>I(s,[e,t])))}),oe(o),J(a,oe)),T},delIndexDefinition:e=>(L(e),T),getStore:n,getIndexIds:o,forEachIndex:e=>a(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,d(e)),hasIndex:r,hasSlice:(e,t)=>Q(d(e),t),getTableId:i,getSliceIds:e=>B(d(e)),getSliceRowIds:(e,t)=>N(H(d(e),t)),addSliceIdsListener:(e,s)=>v(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>v(n,s,[e,t]),delListener:e=>(R(e),T),destroy:w,getListenerStats:()=>({})};return he(T)})),Te=W([["avg",[(e,t)=>L(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=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:C(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>L(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ye=(e,t,s,n,o,a=!1)=>{if(z(s))return;const[r,l,i,d]=o;return a||=k(e),j(n,(([s,n])=>{a||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):d?.(e,n,s,t),a||=k(e))})),a?r(N(s),F(s)):e},pe=ae((e=>{const t=W(),[s,n,o,a,r,l,i,,d,c,u]=ne(e,x,(e=>isNaN(e)||k(e)||!0===e||!1===e||""===e?void 0:1*e)),[h,f,g]=ie((()=>L)),L={setMetricDefinition:(e,s,n,o,a,r,c)=>{const u=M(n)?[n,a,r,c]:H(Te,n)??H(Te,"sum");return d(e,s,((s,n,o,a,r,d)=>{const c=l(e),h=F(a);d||=k(c),s();let g=ye(c,h,a,n,u,d);V(g)||(g=void 0),g!=c&&(i(e,g),f(t,[e],g,c))}),oe(o,1)),L},delMetricDefinition:e=>(c(e),L),getStore:s,getMetricIds:n,forEachMetric:o,hasMetric:a,getTableId:r,getMetric:l,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(g(e),L),destroy:u,getListenerStats:()=>({})};return he(L)})),be=(e,t,s,n,o)=>{let a,r,l=0;const i={load:async(s,n)=>{if(2!=l){l=1;const o=await t();k(o)||""==o?e.transaction((()=>e.setTables(s).setValues(n))):e.setJson(o),l=0}return i},startAutoLoad:async(e,t)=>(i.stopAutoLoad(),await i.load(e,t),n(i.load),i),stopAutoLoad:()=>(o(),i),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),a=e.addTablesListener(i.save),r=e.addValuesListener(i.save),i),stopAutoSave:()=>(J(a,e.delListener),J(r,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return he(i)},Ce=globalThis.window,me=(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()},Ce.addEventListener("storage",n)}),(()=>{Ce.removeEventListener("storage",n),n=void 0}))},Ve=(e,t)=>me(e,t,localStorage),Ee=(e,t)=>me(e,t,sessionStorage),ke=(s,n)=>{let o;return be(s,(async()=>{try{return await e.readFile(n,"utf8")}catch{}}),(async t=>{try{await e.writeFile(n,t,"utf8")}catch{}}),(e=>{o=t(n,e)}),(()=>{o?.close(),o=void 0}))},Je=e=>e.headers.get("ETag"),Ae=(e,t,s,n)=>{let o,a;return be(e,(async()=>{const e=await fetch(t);return a=Je(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=Je(s);k(a)||k(n)||n==a||(a=n,e())}),1e3*n)}),(()=>{J(o,clearInterval),o=void 0}))},Me=ae((e=>{const t=e.createStore,[s,n,o,a,r,,,l,,i,c,u,h]=ne(e,(()=>!0),x),g=t(),L=t(),I=W(),T=(e,t,...s)=>f(s,(s=>se(G(G(I,t,W),e,te),s))),y=e=>{J(H(I,e),(e=>{$(e,((e,t)=>j(t,(t=>e.delListener(t))))),O(e)})),f([L,g],(t=>t.delTable(e)))},p=(e,t,s)=>T(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),b={setQueryDefinition:(t,s,n)=>{l(t,s),y(t);const o=[],a=[[null,[s,null,null,[],W()]]],r=[],i=[],c=[];n({select:(e,t)=>{const s=M(e)?[w(o)+"",e]:[k(t)?e:t,s=>s(e,t)];return S(o,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=k(s)||M(t)?null:t,o=k(n)?t:s,r=[e,[e,n,M(o)?o:e=>e(o),[],W()]];return S(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>S(r,M(e)?e:k(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,M(t)?[t,s,n,o]:H(Te,t)??[(e,t)=>t]]];return S(i,a),{as:e=>a[0]=e}},having:(e,t)=>S(c,M(e)?e:s=>s(e)===t)});const I=W(o);if(z(I))return b;const R=W(a);$(R,((e,[,t])=>J(H(R,t),(({3:t})=>k(e)?0:S(t,e)))));const C=W(i);let m=g;if(z(C)&&v(c))m=L;else{p(t,m,L);const e=W();$(C,((t,[s,n])=>se(G(e,s,te),[t,n])));const s=te();$(I,(t=>Q(e,t)?0:se(s,t)));const n=W(),o=(s,n,o,a)=>J(s,(([r,l,i,u])=>{$(n,((t,[s])=>{const n=G(r,t,W),l=H(n,o),i=a?void 0:s;if(l!==i){const s=te([[l,i]]),a=F(n);q(n,o,i),j(H(e,t),(([e,t])=>{const o=ye(u[e],a,n,s,t);u[e]=k(Z(o))?null:o}))}})),z(l)||!d(c,(e=>e((e=>u[e]))))?L.delRow(t,i):k(i)?s[2]=L.addRow(t,u):L.setRow(t,i,u)}));T(m,t,m.addRowListener(t,null,((a,r,l,i)=>{const d=[],c=[],u=W(),h=m.hasRow(t,l);let f=!h;j(s,(e=>{const[s,n,o]=i(t,l,e);S(d,n),S(c,o),f||=s})),$(e,(e=>{const[s,,n]=i(t,l,e);(f||s)&&q(u,e,[n])})),f&&o(Y(n,d,void 0,(([,e])=>(P(e,l),z(e)))),u,l,1),h&&o(Y(n,c,(()=>{const e={};return j(s,(s=>e[s]=m.getCell(t,l,s))),[W(),te(),void 0,e]}),(([,e])=>{se(e,l)})),u,l)})))}p(t,e,m);const V=(n,o,a,l)=>{const i=t=>e.getCell(o,a,t);f(l,(s=>{const[o,,a,r,l]=H(R,s),d=a?.(i,n),[c,f]=H(l,n)??[];d!=c&&(k(f)||h(t,f),q(l,n,k(d)?null:[d,...u(t,1,e.addRowListener(o,d,(()=>V(n,o,d,r))))]))})),(n=>{const o=(t,o)=>e.getCell(...k(o)?[s,n,t]:t===s?[s,n,o]:[H(R,t)?.[0],H(H(R,t)?.[4],n)?.[0],o]);m.transaction((()=>d(r,(e=>e(o)))?$(I,((e,s)=>_(m,t,n,e,s(o,n)))):m.delRow(t,n)))})(n)},{3:E}=H(R,null);return m.transaction((()=>u(t,1,e.addRowListener(s,null,((n,o,a)=>{e.hasRow(s,a)?V(a,s,a,E):(m.delRow(t,a),j(R,(({4:e})=>J(H(e,a),(([,s])=>{h(t,s),q(e,a)})))))}))))),b},delQueryDefinition:e=>(y(e),i(e),b),getStore:s,getQueryIds:n,forEachQuery:o,hasQuery:a,getTableId:r,delListener:e=>(L.delListener(e),b),destroy:c,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=L.getListenerStats();return n}};return we({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],s)=>{f(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+s]=(...t)=>L[e+s](...t))),b["addResult"+s+"Listener"]=(...e)=>L["add"+s+"Listener"](...R(e,0,t),((s,...n)=>e[t](b,...n)))})),he(b)})),De=ae((e=>{const t=W(),s=W(),n=W(),o=W(),[a,r,l,i,d,c,,,u,h,f]=ne(e,(()=>[W(),W(),W(),W()]),(e=>k(e)?void 0:e+"")),[g,L,w]=ie((()=>S)),v=(e,t,s)=>J(c(e),(([n,,o])=>{if(!Q(o,t)){const a=te();if(d(e)!=R(e))se(a,t);else{let e=t;for(;!k(e)&&!Q(a,e);)se(a,e),e=H(n,e)}if(s)return a;q(o,t,a)}return H(o,t)})),I=(e,t)=>J(c(e),(([,,e])=>q(e,t))),R=e=>H(t,e),S={setRelationshipDefinition:(e,a,r,l)=>(q(t,e,r),u(e,a,((t,a)=>{const r=te(),l=te(),i=te(),[d,u]=c(e);j(a,(([t,s],n)=>{k(t)||(se(l,t),J(H(u,t),(e=>{P(e,n),z(e)&&q(u,t)}))),k(s)||(se(l,s),Q(u,s)||q(u,s,te()),se(H(u,s),n)),se(r,n),q(d,n,s),$(H(o,e),(t=>{Q(v(e,t),n)&&se(i,t)}))})),t(),j(r,(t=>L(s,[e,t]))),j(l,(t=>L(n,[e,t]))),j(i,(t=>{I(e,t),L(o,[e,t])}))}),oe(l)),S),delRelationshipDefinition:e=>(q(t,e),h(e),S),getStore:a,getRelationshipIds:r,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:i,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>H(c(e)?.[0],t),getLocalRowIds:(e,t)=>N(H(c(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(c(e))?[t]:N(v(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>g(s,n,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),g(s,o,[e,t])),delListener:e=>(I(...w(e)),S),destroy:f,getListenerStats:()=>({})};return he(S)})),xe=e=>[e,e],Fe=()=>[W(),W()],Qe=(e,t,s,n=q)=>{const o=(a=e=>!ge(t,e),B(e).filter(a));var a;return f(ce(t),(n=>s(e,n,t[n]))),f(o,(t=>n(e,t))),e},ze=(e,t,s)=>k(e)||!fe(e)||ve(e)||ue(e)?(s?.(),!1):(we(e,((s,n)=>{t(s,n)||Le(e,n)})),!ve(e)),Ne=(e,t,s)=>q(e,t,H(e,t)==-s?void 0:s),Oe=()=>{let e,t,s,n,o=0;const r=W(),d=W(),u=W(),L=W(),w=W(),v=W(),I=W(),T=W(),y=W(),C=W(),m=W(),V=W(),E=te(),D=W(),x=W(),F=W(),N=Fe(),Y=Fe(),ne=Fe(),oe=Fe(),ae=Fe(),re=Fe(),de=Fe(),ce=Fe(),ue=Fe(),fe=Fe(),Ie=Fe(),Se=Fe(),Te=Fe(),ye=Fe(),[pe,be,Ce,me]=ie((()=>Pt)),Ve=e=>{if(!ze(e,((e,t)=>i(["type","default"],t))))return!1;const t=e.type;return!(!A(t)&&t!=a||(Z(e.default)!=t&&Le(e,"default"),0))},Ee=(t,s)=>(!e||Q(y,s)||ct(s))&&ze(t,((e,t)=>ke(s,t,e)),(()=>ct(s))),ke=(e,t,s,n)=>ze(n?s:De(s,e,t),((n,o)=>J(Je(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>ct(e,t))),Je=(t,s,n,o)=>e?J(H(H(y,t),n),(e=>Z(o)!=e.type?ct(t,s,n,o,e.default):o),(()=>ct(t,s,n,o))):k(Z(o))?ct(t,s,n,o):o,Ae=(e,t)=>ze(t?e:je(e),((t,s)=>J(Me(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>ut())),Me=(e,s)=>t?J(H(m,e),(t=>Z(s)!=t.type?ut(e,s,t.default):s),(()=>ut(e,s))):k(Z(s))?ut(e,s):s,De=(e,t,s)=>(J(H(C,t),(([n,o])=>{j(n,((t,s)=>{ge(e,s)||(e[s]=t)})),j(o,(n=>{ge(e,n)||ct(t,s,n)}))})),e),je=e=>(t&&(j(V,((t,s)=>{ge(e,s)||(e[s]=t)})),j(E,(t=>{ge(e,t)||ut(t)}))),e),Pe=e=>Qe(y,e,((e,t,s)=>{const n=W(),o=te();Qe(G(y,t,W),s,((e,t,s)=>{q(e,t,s),J(s.default,(e=>q(n,t,e)),(()=>se(o,t)))})),q(C,t,[n,o])}),((e,t)=>{q(y,t),q(C,t)})),We=e=>Qe(m,e,((e,t,s)=>{q(m,t,s),J(s.default,(e=>q(V,t,e)),(()=>se(E,t)))}),((e,t)=>{q(m,t),q(V,t),P(E,t)})),Be=e=>ve(e)?xt():kt(e),He=e=>Qe(x,e,((e,t,s)=>$e(t,s)),((e,t)=>et(t))),$e=(e,t)=>Qe(G(x,e,(()=>(ot(e,1),W()))),t,((t,s,n)=>qe(e,t,s,n)),((t,s)=>tt(e,t,s))),qe=(e,t,s,n,o)=>Qe(G(t,s,(()=>(at(e,s,1),W()))),n,((t,n,o)=>Ge(e,s,t,n,o)),((n,a)=>st(e,t,s,n,a,o))),Ge=(e,t,s,n,o)=>{Q(s,n)||rt(e,t,n,1);const a=H(s,n);o!==a&&(lt(e,t,n,a,o),q(s,n,o))},Ke=(e,t,s,n,o)=>J(H(t,s),(t=>Ge(e,s,t,n,o)),(()=>qe(e,t,s,De({[n]:o},e,s)))),Ue=e=>ve(e)?Ft():Jt(e),Xe=e=>Qe(F,e,((e,t,s)=>Ye(t,s)),((e,t)=>nt(t))),Ye=(e,t)=>{Q(F,e)||it(e,1);const s=H(F,e);t!==s&&(dt(e,s,t),q(F,e,t))},Ze=e=>{const[t]=G(D,e,le),s=t();return Q(H(x,e),s)?Ze(e):s},_e=e=>H(x,e)??$e(e,{}),et=e=>$e(e,{}),tt=(e,t,s)=>{const[,n]=G(D,e,le);n(s),qe(e,t,s,{},!0)},st=(e,t,s,n,o,a)=>{const r=H(H(C,e)?.[0],o);if(!k(r)&&!a)return Ge(e,s,n,o,r);const l=t=>{lt(e,s,t,H(n,t)),rt(e,s,t,-1),q(n,t)};k(r)?l(o):$(n,l),z(n)&&(at(e,s,-1),z(q(t,s))&&(ot(e,-1),q(x,e),q(D,e)))},nt=e=>{const t=H(V,e);if(!k(t))return Ye(e,t);dt(e,H(F,e)),it(e,-1),q(F,e)},ot=(e,t)=>Ne(r,e,t),at=(e,t,s)=>Ne(G(d,e,W),t,s),rt=(e,t,s,n)=>Ne(G(G(u,e,W),t,W),s,n),lt=(e,t,s,n,o)=>G(G(G(L,e,W),t,W),s,(()=>[n,0]))[1]=o,it=(e,t)=>Ne(w,e,t),dt=(e,t,s)=>G(v,e,(()=>[t,0]))[1]=s,ct=(e,t,s,n,o)=>(S(G(G(G(I,e,W),t,W),s,(()=>[])),n),o),ut=(e,t,s)=>(S(G(T,e,(()=>[])),t),s),ht=(e,t,s)=>J(H(H(H(L,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...xe(Ct(e,t,s))])),ft=e=>J(H(v,e),(([e,t])=>[!0,e,t]),(()=>[!1,...xe(Et(e))])),gt=e=>z(I)||z(ue[e])?0:j(e?U(I,X):I,((t,s)=>j(t,((t,n)=>j(t,((t,o)=>be(ue[e],[s,n,o],t))))))),Lt=e=>z(T)||z(fe[e])?0:j(e?U(T):T,((t,s)=>be(fe[e],[s],t))),wt=(e,t,s)=>{if(!z(t))return be(e,s),1},vt=e=>{const t=z(ae[e]),s=z(de[e])&&z(oe[e])&&t&&z(Y[e]),n=z(ce[e])&&z(re[e])&&z(ne[e])&&z(N[e]);if(!s||!n){const o=e?[U(r),X(d),U(u,X),U(L,X)]:[r,d,u,L];if(!s){j(o[2],((t,s)=>j(t,((t,n)=>wt(de[e],t,[s,n])))));const s=te();j(o[1],((n,o)=>{wt(oe[e],n,[o])&&!t&&(be(ae[e],[o,null]),se(s,o))})),t||j(o[3],((t,n)=>{if(!Q(s,n)){const s=te();j(t,(e=>j(e,(([t,n],o)=>n!==t?se(s,o):P(e,o))))),j(s,(t=>be(ae[e],[n,t])))}})),wt(Y[e],o[0])}if(!n){let t;j(o[3],((s,n)=>{let o;j(s,((s,a)=>{let r;j(s,(([s,l],i)=>{l!==s&&(be(ce[e],[n,a,i],l,s,ht),t=o=r=1)})),r&&be(re[e],[n,a],ht)})),o&&be(ne[e],[n],ht)})),t&&be(N[e],void 0,ht)}}},It=e=>{const t=z(Se[e]),s=z(Te[e])&&z(Ie[e]);if(!t||!s){const n=e?[U(w),U(v)]:[w,v];if(t||wt(Se[e],n[0]),!s){let t;j(n[1],(([s,n],o)=>{n!==s&&(be(Te[e],[o],n,s,ft),t=1)})),t&&be(Ie[e],void 0,ft)}}},Rt=(e,...t)=>(Nt((()=>e(...g(t,l)))),Pt),St=()=>K(x,(e=>K(e,K))),Tt=()=>B(x),yt=e=>B(H(x,l(e))),pt=(e,t,s,n=0,o)=>{return g(R(h((a=H(x,l(e)),r=(e,s)=>[k(t)?s:H(e,l(t)),s],g([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Re(e,t)*(s?-1:1))),n,k(o)?o:n+o),(([,e])=>e));var a,r},bt=(e,t)=>B(H(H(x,l(e)),l(t))),Ct=(e,t,s)=>H(H(H(x,l(e)),l(t)),l(s)),mt=()=>K(F),Vt=()=>B(F),Et=e=>H(F,l(e)),kt=e=>Rt((()=>(e=>ze(e,Ee,ct))(e)?He(e):0)),Jt=e=>Rt((()=>Ae(e)?Xe(e):0)),At=e=>{try{Be(b(e))}catch{}return Pt},Mt=t=>Rt((()=>{if((e=ze(t,(e=>ze(e,Ve))))&&(Pe(t),!z(x))){const e=St();xt(),kt(e)}})),Dt=e=>Rt((()=>{if(t=(e=>ze(e,Ve))(e)){const s=mt();zt(),Ft(),t=!0,We(e),Jt(s)}})),xt=()=>Rt((()=>He({}))),Ft=()=>Rt((()=>Xe({}))),Qt=()=>Rt((()=>{Pe({}),e=!1})),zt=()=>Rt((()=>{We({}),t=!1})),Nt=(e,t)=>{if(-1==o)return;Ot();const s=e();return jt(t),s},Ot=()=>(o++,Pt),jt=e=>(o>0&&(o--,0==o&&(s=!z(L),n=!z(v),o=1,gt(1),s&&vt(1),Lt(1),n&&It(1),o=-1,e?.(K(L,(e=>K(e,(e=>K(e,(e=>[...e]),(([e,t])=>e===t))),ve)),ve),K(I,(e=>K(e,K))),K(v,(e=>[...e]),(([e,t])=>e===t)),K(T))&&(o=1,j(L,((e,t)=>j(e,((e,s)=>j(e,(([e],n)=>_(Pt,t,s,n,e))))))),j(v,(([e],t)=>ee(Pt,t,e))),o=-1,s=n=!1),be(ye[0],void 0,s,n),gt(0),s&&vt(0),Lt(0),n&&It(0),be(ye[1],void 0,s,n),o=0,f([r,d,u,L,I,w,v,T],O))),Pt),Pt={getTables:St,getTableIds:Tt,getTable:e=>K(H(x,l(e)),K),getRowIds:yt,getSortedRowIds:pt,getRow:(e,t)=>K(H(H(x,l(e)),l(t))),getCellIds:bt,getCell:Ct,getValues:mt,getValueIds:Vt,getValue:Et,hasTables:()=>!z(x),hasTable:e=>Q(x,l(e)),hasRow:(e,t)=>Q(H(x,l(e)),l(t)),hasCell:(e,t,s)=>Q(H(H(x,l(e)),l(t)),l(s)),hasValues:()=>!z(F),hasValue:e=>Q(F,l(e)),getTablesJson:()=>p(x),getValuesJson:()=>p(F),getJson:()=>p([x,F]),getTablesSchemaJson:()=>p(y),getValuesSchemaJson:()=>p(m),getSchemaJson:()=>p([y,m]),setTables:kt,setTable:(e,t)=>Rt((e=>Ee(t,e)?$e(e,t):0),e),setRow:(e,t,s)=>Rt(((e,t)=>ke(e,t,s)?qe(e,_e(e),t,s):0),e,t),addRow:(e,t)=>Nt((()=>{let s;return ke(e,s,t)&&(e=l(e),qe(e,_e(e),s=Ze(e),t)),s})),setPartialRow:(e,t,s)=>Rt(((e,t)=>{if(ke(e,t,s,1)){const n=_e(e);we(s,((s,o)=>Ke(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Rt(((e,t,s)=>J(Je(e,t,s,M(n)?n(Ct(e,t,s)):n),(n=>Ke(e,_e(e),t,s,n)))),e,t,s),setValues:Jt,setPartialValues:e=>Rt((()=>Ae(e,1)?we(e,((e,t)=>Ye(t,e))):0)),setValue:(e,t)=>Rt((e=>J(Me(e,M(t)?t(Et(e)):t),(t=>Ye(e,t)))),e),setTablesJson:At,setValuesJson:e=>{try{Ue(b(e))}catch{}return Pt},setJson:e=>{try{const[t,s]=b(e);Be(t),Ue(s)}catch{At(e)}return Pt},setTablesSchema:Mt,setValuesSchema:Dt,setSchema:(e,t)=>Rt((()=>{Mt(e),Dt(t)})),delTables:xt,delTable:e=>Rt((e=>Q(x,e)?et(e):0),e),delRow:(e,t)=>Rt(((e,t)=>J(H(x,e),(s=>Q(s,t)?tt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Rt(((e,t,s)=>J(H(x,e),(o=>J(H(o,t),(a=>Q(a,s)?st(e,o,t,a,s,n):0))))),e,t,s),delValues:Ft,delValue:e=>Rt((e=>Q(F,e)?nt(e):0),e),delTablesSchema:Qt,delValuesSchema:zt,delSchema:()=>Rt((()=>{Qt(),zt()})),transaction:Nt,startTransaction:Ot,finishTransaction:jt,forEachTable:e=>j(x,((t,s)=>e(s,(e=>j(t,((t,s)=>e(s,(e=>$(t,e))))))))),forEachRow:(e,t)=>j(H(x,l(e)),((e,s)=>t(s,(t=>$(e,t))))),forEachCell:(e,t,s)=>$(H(H(x,l(e)),l(t)),s),forEachValue:e=>$(F,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);c(r,l)||(l=r,a(Pt,e,t,s,n,o,l))}),ae[r?1:0],[e,t],[Tt])},addWillFinishTransactionListener:e=>pe(e,ye[0]),addDidFinishTransactionListener:e=>pe(e,ye[1]),callListener:e=>(me(e),Pt),delListener:e=>(Ce(e),Pt),getListenerStats:()=>({}),createStore:Oe};return we({Tables:[0,N],TableIds:[0,Y],Table:[1,ne,[Tt]],RowIds:[1,oe,[Tt]],Row:[2,re,[Tt,yt]],CellIds:[2,de,[Tt,yt]],Cell:[3,ce,[Tt,yt,bt],e=>xe(Ct(...e))],InvalidCell:[3,ue],Values:[0,Ie],ValueIds:[0,Se],Value:[1,Te,[Vt],e=>xe(Et(e[0]))],InvalidValue:[1,fe]},(([e,t,s,n],o)=>{Pt["add"+o+"Listener"]=(...o)=>pe(o[e],t[o[e+1]?1:0],e>0?R(o,0,e):void 0,s,n)})),he(Pt)};export{Ie as createCheckpoints,be as createCustomPersister,ke as createFilePersister,Se as createIndexes,Ve as createLocalPersister,pe as createMetrics,Me as createQueries,De as createRelationships,Ae as createRemotePersister,Ee as createSessionPersister,Oe as createStore,Re as defaultSorter};
1
+ import{promises as e,watch as t}from"fs";const s=e=>typeof e,n=s(""),o=s(!0),a=s(0),r=s(s),l=e=>""+e,i=(e,t)=>e.includes(t),d=(e,t)=>e.every(t),c=(e,t)=>w(e)===w(t)&&d(e,((e,s)=>t[s]===e)),u=(e,t)=>d(e,((s,n)=>0==n||t(e[n-1],s)<=0)),h=(e,t)=>e.sort(t),g=(e,t)=>e.forEach(t),f=(e,t)=>e.map(t),L=e=>I(e,((e,t)=>e+t),0),w=e=>e.length,v=e=>0==w(e),I=(e,t,s)=>e.reduce(t,s),R=(e,t,s)=>e.slice(t,s),S=(e,...t)=>e.push(...t),T=e=>e.pop(),y=e=>e.shift(),p=e=>JSON.stringify(e,((e,t)=>E(t,Map)?I([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),b=JSON.parse,C=Math.max,m=Math.min,V=isFinite,E=(e,t)=>e instanceof t,k=e=>null==e,J=(e,t,s)=>k(e)?s?.():t(e),A=e=>e==n||e==o,M=e=>s(e)==r,D=e=>Array.isArray(e),x=()=>{},F=e=>e.size,Q=(e,t)=>e?.has(t)??!1,z=e=>k(e)||0==F(e),N=e=>[...e?.values()??[]],O=e=>e.clear(),j=(e,t)=>e?.forEach(t),P=(e,t)=>e?.delete(t),W=e=>new Map(e),B=e=>[...e?.keys()??[]],H=(e,t)=>e?.get(t),$=(e,t)=>j(e,((e,s)=>t(s,e))),q=(e,t,s)=>k(s)?(P(e,t),e):e?.set(t,s),G=(e,t,s)=>(Q(e,t)||q(e,t,s()),H(e,t)),K=(e,t,s)=>{const n={},o=t??(e=>e);return j(e,((e,t)=>J(o(e),(e=>s?.(e)?0:n[t]=e)))),n},U=(e,t)=>{const s=W(),n=t??(e=>e);return j(e,((e,t)=>s.set(t,n(e)))),s},X=e=>U(e,U),Y=(e,t,s,n,o=0)=>J((s?G:H)(e,t[o],o>w(t)-2?s:W),(a=>{if(o>w(t)-2)return n?.(a)&&q(e,t[o]),a;const r=Y(a,t,s,n,o+1);return z(a)&&q(e,t[o]),r})),Z=e=>{const t=s(e);return A(t)||t==a&&V(e)?t:void 0},_=(e,t,s,n,o)=>k(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),ee=(e,t,s)=>k(s)?e.delValue(t):e.setValue(t,s),te=e=>new Set(D(e)||k(e)?e:[e]),se=(e,t)=>e?.add(t),ne=(e,t,s)=>{const n=e.hasRow,o=W(),a=W(),r=W(),l=W(),i=W(),d=(t,s,...n)=>{const o=G(i,t,te);return g(n,(t=>se(o,t)&&s&&e.callListener(t))),n},u=(t,...s)=>J(H(i,t),(n=>{g(v(s)?N(n):s,(t=>{e.delListener(t),P(n,t)})),z(n)&&q(i,t)})),h=(e,s)=>{q(o,e,s),Q(a,e)||(q(a,e,t()),q(r,e,W()),q(l,e,W()))},f=e=>{q(o,e),q(a,e),q(r,e),q(l,e),u(e)};return[()=>e,()=>B(o),e=>$(a,e),e=>Q(a,e),e=>H(o,e),e=>H(a,e),(e,t)=>q(a,e,t),h,(t,o,a,i,f)=>{h(t,o);const L=W(),w=W(),v=H(r,t),I=H(l,t),R=t=>{const a=s=>e.getCell(o,t,s),r=H(v,t),l=n(o,t)?s(i(a,t)):void 0;if(r===l||D(r)&&D(l)&&c(r,l)||q(L,t,[r,l]),!k(f)){const e=H(I,t),s=n(o,t)?f(a,t):void 0;e!=s&&q(w,t,s)}},S=e=>{a((()=>{j(L,(([,e],t)=>q(v,t,e))),j(w,((e,t)=>q(I,t,e)))}),L,w,v,I,e),O(L),O(w)};$(v,R),e.hasTable(o)&&g(e.getRowIds(o),(e=>{Q(v,e)||R(e)})),S(!0),u(t),d(t,0,e.addRowListener(o,null,((e,t,s)=>R(s))),e.addTableListener(o,(()=>S())))},f,()=>$(i,f),d,u]},oe=(e,t)=>s(e)==n?t=>t(e):e??(()=>t??""),ae=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},re=/^\d+$/,le=()=>{const e=[];let t=0;return[s=>(s?y(e):null)??""+t++,t=>{re.test(t)&&w(e)<1e3&&S(e,t)}]},ie=e=>{let t;const[s,n]=le(),o=W();return[(n,a,r,l=[],i=(()=>[]))=>{t??=e();const d=s(1);return q(o,d,[n,a,r,l,i]),se(Y(a,r??[""],te),d),d},(e,s,...n)=>g(((e,t=[""])=>{const s=[],n=(e,o)=>o==w(t)?S(s,e):null===t[o]?j(e,(e=>n(e,o+1))):g([t[o],null],(t=>n(H(e,t),o+1)));return n(e,0),s})(e,s),(e=>j(e,(e=>H(o,e)[0](t,...s??[],...n))))),e=>J(H(o,e),(([,t,s])=>(Y(t,s??[""],void 0,(t=>(P(t,e),z(t)?1:0))),q(o,e),n(e),s))),e=>J(H(o,e),(([e,,s=[],n,o])=>{const a=(...r)=>{const l=w(r);l==w(s)?e(t,...r,...o(r)):k(s[l])?g(n[l]?.(...r)??[],(e=>a(...r,e))):a(...r,s[l])};a()}))]},de=Object,ce=de.keys,ue=de.isFrozen,he=de.freeze,ge=e=>E(e,de)&&e.constructor==de,fe=(e,t)=>!k(((e,t)=>J(e,(e=>e[t])))(e,t)),Le=(e,t)=>delete e[t],we=(e,t)=>f(de.entries(e),(([e,s])=>t(s,e))),ve=e=>ge(e)&&v(ce(e)),Ie=ae((e=>{let t,s,n,o=100,a=W(),r=W(),l=1;const d=W(),c=W(),[u,h,f]=ie((()=>U)),L=W(),I=W(),R=[],p=[],b=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=H(L,s);j(n,((s,n)=>j(s,((s,o)=>j(s,((s,a)=>_(e,n,o,a,s[t]))))))),j(o,((s,n)=>ee(e,n,s[t])))})),l=1},C=e=>{q(L,e),q(I,e),h(c,[e])},m=(e,t)=>g(((e,t)=>e.splice(0,t))(e,t??w(e)),C),V=()=>m(R,w(R)-o),E=()=>J(t,(()=>{S(R,t),V(),m(p),t=void 0,n=1})),A=()=>{t=T(R),n=1},M=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(l){E();const e=G(a,t,W),l=G(e,s,W),i=G(l,n,(()=>[r,void 0]));i[1]=o,i[0]===o&&z(q(l,n))&&z(q(e,s))&&z(q(a,t))&&A(),O()}})),D=e.addValueListener(null,((e,t,s,n)=>{if(l){E();const e=G(r,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&z(q(r,t))&&A(),O()}})),x=(e="")=>(k(t)&&(t=""+s++,q(L,t,[a,r]),B(t,e),a=W(),r=W(),n=1),t),F=()=>{v(R)||(((e,...t)=>{e.unshift(...t)})(p,x()),b(0,t),t=T(R),n=1)},N=()=>{v(p)||(S(R,t),t=y(p),b(1,t),n=1)},O=()=>{n&&(h(d),n=0)},P=e=>{const t=x(e);return O(),t},B=(e,t)=>(K(e)&&H(I,e)!==t&&(q(I,e,t),h(c,[e])),U),K=e=>Q(L,e),U={setSize:e=>(o=e,V(),U),addCheckpoint:P,setCheckpoint:B,getStore:()=>e,getCheckpointIds:()=>[[...R],t,[...p]],forEachCheckpoint:e=>$(I,e),hasCheckpoint:K,getCheckpoint:e=>H(I,e),goBackward:()=>(F(),O(),U),goForward:()=>(N(),O(),U),goTo:e=>{const s=i(R,e)?F:i(p,e)?N:null;for(;!k(s)&&e!=t;)s();return O(),U},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(f(e),U),clear:()=>(m(R),m(p),k(t)||C(t),t=void 0,s=0,P(),U),destroy:()=>{e.delListener(M),e.delListener(D)},getListenerStats:()=>({})};return he(U.clear())})),Re=(e,t)=>e<t?-1:1,Se=ae((e=>{const t=W(),s=W(),[n,o,a,r,i,d,c,,g,L,w]=ne(e,W,(e=>k(e)?"":D(e)?f(e,l):l(e))),[v,I,R]=ie((()=>T)),S=(t,s,n)=>{const o=i(t);j(n,((t,n)=>s(n,(s=>j(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},T={setIndexDefinition:(e,n,o,a,r,l=Re)=>{const i=k(r)?void 0:([e],[t])=>r(e,t);return g(e,n,((n,o,r,g,f,L)=>{let w=0;const v=te(),R=te(),S=d(e);if(j(o,(([e,t],s)=>{const n=te(e),o=te(t);j(n,(e=>P(o,e)?P(n,e):0)),j(n,(e=>{se(v,e),J(H(S,e),(t=>{P(t,s),z(t)&&(q(S,e),w=1)}))})),j(o,(e=>{se(v,e),Q(S,e)||(q(S,e,te()),w=1),se(H(S,e),s),k(a)||se(R,e)}))})),n(),z(f)||(L?$(S,(e=>se(R,e))):$(r,(e=>J(H(g,e),(e=>se(R,e))))),j(R,(e=>{const t=(t,s)=>l(H(f,t),H(f,s),e),s=[...H(S,e)];u(s,t)||(q(S,e,te(h(s,t))),se(v,e))}))),(w||L)&&!k(i)){const t=[...S];u(t,i)||(c(e,W(h(t,i))),w=1)}w&&I(t,[e]),j(v,(t=>I(s,[e,t])))}),oe(o),J(a,oe)),T},delIndexDefinition:e=>(L(e),T),getStore:n,getIndexIds:o,forEachIndex:e=>a(((t,s)=>e(t,(e=>S(t,e,s))))),forEachSlice:(e,t)=>S(e,t,d(e)),hasIndex:r,hasSlice:(e,t)=>Q(d(e),t),getTableId:i,getSliceIds:e=>B(d(e)),getSliceRowIds:(e,t)=>N(H(d(e),t)),addSliceIdsListener:(e,s)=>v(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>v(n,s,[e,t]),delListener:e=>(R(e),T),destroy:w,getListenerStats:()=>({})};return he(T)})),Te=W([["avg",[(e,t)=>L(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=>C(...e),(e,t)=>C(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:C(t,e)]],["min",[e=>m(...e),(e,t)=>m(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:m(t,e)]],["sum",[e=>L(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),ye=(e,t,s,n,o,a=!1)=>{if(z(s))return;const[r,l,i,d]=o;return a||=k(e),j(n,(([s,n])=>{a||(e=k(s)?l?.(e,n,t++):k(n)?i?.(e,s,t--):d?.(e,n,s,t),a||=k(e))})),a?r(N(s),F(s)):e},pe=ae((e=>{const t=W(),[s,n,o,a,r,l,i,,d,c,u]=ne(e,x,(e=>isNaN(e)||k(e)||!0===e||!1===e||""===e?void 0:1*e)),[h,g,f]=ie((()=>L)),L={setMetricDefinition:(e,s,n,o,a,r,c)=>{const u=M(n)?[n,a,r,c]:H(Te,n)??H(Te,"sum");return d(e,s,((s,n,o,a,r,d)=>{const c=l(e),h=F(a);d||=k(c),s();let f=ye(c,h,a,n,u,d);V(f)||(f=void 0),f!=c&&(i(e,f),g(t,[e],f,c))}),oe(o,1)),L},delMetricDefinition:e=>(c(e),L),getStore:s,getMetricIds:n,forEachMetric:o,hasMetric:a,getTableId:r,getMetric:l,addMetricListener:(e,s)=>h(s,t,[e]),delListener:e=>(f(e),L),destroy:u,getListenerStats:()=>({})};return he(L)})),be=(e,t,s,n,o)=>{let a,r,l=0;const i={load:async(s,n)=>{if(2!=l){l=1;const o=await t();k(o)||""==o?e.transaction((()=>e.setTables(s).setValues(n))):e.setJson(o),l=0}return i},startAutoLoad:async(e,t)=>(i.stopAutoLoad(),await i.load(e,t),n(i.load),i),stopAutoLoad:()=>(o(),i),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),i),startAutoSave:async()=>(await i.stopAutoSave().save(),a=e.addTablesListener(i.save),r=e.addValuesListener(i.save),i),stopAutoSave:()=>(J(a,e.delListener),J(r,e.delListener),i),getStore:()=>e,destroy:()=>i.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return he(i)},Ce=globalThis.window,me=(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()},Ce.addEventListener("storage",n)}),(()=>{Ce.removeEventListener("storage",n),n=void 0}))},Ve=(e,t)=>me(e,t,localStorage),Ee=(e,t)=>me(e,t,sessionStorage),ke=(s,n)=>{let o;return be(s,(async()=>{try{return await e.readFile(n,"utf8")}catch{}}),(async t=>{try{await e.writeFile(n,t,"utf8")}catch{}}),(e=>{o=t(n,e)}),(()=>{o?.close(),o=void 0}))},Je=e=>e.headers.get("ETag"),Ae=(e,t,s,n)=>{let o,a;return be(e,(async()=>{const e=await fetch(t);return a=Je(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=Je(s);k(a)||k(n)||n==a||(a=n,e())}),1e3*n)}),(()=>{J(o,clearInterval),o=void 0}))},Me=ae((e=>{const t=e.createStore,[s,n,o,a,r,,,l,,i,c,u,h]=ne(e,(()=>!0),x),f=t(),L=t(),I=W(),T=(e,t,...s)=>g(s,(s=>se(G(G(I,t,W),e,te),s))),y=e=>{J(H(I,e),(e=>{$(e,((e,t)=>j(t,(t=>e.delListener(t))))),O(e)})),g([L,f],(t=>t.delTable(e)))},p=(e,t,s)=>T(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),b={setQueryDefinition:(t,s,n)=>{l(t,s),y(t);const o=[],a=[[null,[s,null,null,[],W()]]],r=[],i=[],c=[];n({select:(e,t)=>{const s=M(e)?[w(o)+"",e]:[k(t)?e:t,s=>s(e,t)];return S(o,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=k(s)||M(t)?null:t,o=k(n)?t:s,r=[e,[e,n,M(o)?o:e=>e(o),[],W()]];return S(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>S(r,M(e)?e:k(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const a=[e,[e,M(t)?[t,s,n,o]:H(Te,t)??[(e,t)=>t]]];return S(i,a),{as:e=>a[0]=e}},having:(e,t)=>S(c,M(e)?e:s=>s(e)===t)});const I=W(o);if(z(I))return b;const R=W(a);$(R,((e,[,t])=>J(H(R,t),(({3:t})=>k(e)?0:S(t,e)))));const C=W(i);let m=f;if(z(C)&&v(c))m=L;else{p(t,m,L);const e=W();$(C,((t,[s,n])=>se(G(e,s,te),[t,n])));const s=te();$(I,(t=>Q(e,t)?0:se(s,t)));const n=W(),o=(s,n,o,a)=>J(s,(([r,l,i,u])=>{$(n,((t,[s])=>{const n=G(r,t,W),l=H(n,o),i=a?void 0:s;if(l!==i){const s=te([[l,i]]),a=F(n);q(n,o,i),j(H(e,t),(([e,t])=>{const o=ye(u[e],a,n,s,t);u[e]=k(Z(o))?null:o}))}})),z(l)||!d(c,(e=>e((e=>u[e]))))?L.delRow(t,i):k(i)?s[2]=L.addRow(t,u):L.setRow(t,i,u)}));T(m,t,m.addRowListener(t,null,((a,r,l,i)=>{const d=[],c=[],u=W(),h=m.hasRow(t,l);let g=!h;j(s,(e=>{const[s,n,o]=i(t,l,e);S(d,n),S(c,o),g||=s})),$(e,(e=>{const[s,,n]=i(t,l,e);(g||s)&&q(u,e,[n])})),g&&o(Y(n,d,void 0,(([,e])=>(P(e,l),z(e)))),u,l,1),h&&o(Y(n,c,(()=>{const e={};return j(s,(s=>e[s]=m.getCell(t,l,s))),[W(),te(),void 0,e]}),(([,e])=>{se(e,l)})),u,l)})))}p(t,e,m);const V=(n,o,a,l)=>{const i=t=>e.getCell(o,a,t);g(l,(s=>{const[o,,a,r,l]=H(R,s),d=a?.(i,n),[c,g]=H(l,n)??[];d!=c&&(k(g)||h(t,g),q(l,n,k(d)?null:[d,...u(t,1,e.addRowListener(o,d,(()=>V(n,o,d,r))))]))})),(n=>{const o=(t,o)=>e.getCell(...k(o)?[s,n,t]:t===s?[s,n,o]:[H(R,t)?.[0],H(H(R,t)?.[4],n)?.[0],o]);m.transaction((()=>d(r,(e=>e(o)))?$(I,((e,s)=>_(m,t,n,e,s(o,n)))):m.delRow(t,n)))})(n)},{3:E}=H(R,null);return m.transaction((()=>u(t,1,e.addRowListener(s,null,((n,o,a)=>{e.hasRow(s,a)?V(a,s,a,E):(m.delRow(t,a),j(R,(({4:e})=>J(H(e,a),(([,s])=>{h(t,s),q(e,a)})))))}))))),b},delQueryDefinition:e=>(y(e),i(e),b),getStore:s,getQueryIds:n,forEachQuery:o,hasQuery:a,getTableId:r,delListener:e=>(L.delListener(e),b),destroy:c,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=L.getListenerStats();return n}};return we({Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},(([e,t],s)=>{g(e?["get","has","forEach"]:["get"],(e=>b[e+"Result"+s]=(...t)=>L[e+s](...t))),b["addResult"+s+"Listener"]=(...e)=>L["add"+s+"Listener"](...R(e,0,t),((s,...n)=>e[t](b,...n)))})),he(b)})),De=ae((e=>{const t=W(),s=W(),n=W(),o=W(),[a,r,l,i,d,c,,,u,h,g]=ne(e,(()=>[W(),W(),W(),W()]),(e=>k(e)?void 0:e+"")),[f,L,w]=ie((()=>S)),v=(e,t,s)=>J(c(e),(([n,,o])=>{if(!Q(o,t)){const a=te();if(d(e)!=R(e))se(a,t);else{let e=t;for(;!k(e)&&!Q(a,e);)se(a,e),e=H(n,e)}if(s)return a;q(o,t,a)}return H(o,t)})),I=(e,t)=>J(c(e),(([,,e])=>q(e,t))),R=e=>H(t,e),S={setRelationshipDefinition:(e,a,r,l)=>(q(t,e,r),u(e,a,((t,a)=>{const r=te(),l=te(),i=te(),[d,u]=c(e);j(a,(([t,s],n)=>{k(t)||(se(l,t),J(H(u,t),(e=>{P(e,n),z(e)&&q(u,t)}))),k(s)||(se(l,s),Q(u,s)||q(u,s,te()),se(H(u,s),n)),se(r,n),q(d,n,s),$(H(o,e),(t=>{Q(v(e,t),n)&&se(i,t)}))})),t(),j(r,(t=>L(s,[e,t]))),j(l,(t=>L(n,[e,t]))),j(i,(t=>{I(e,t),L(o,[e,t])}))}),oe(l)),S),delRelationshipDefinition:e=>(q(t,e),h(e),S),getStore:a,getRelationshipIds:r,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:i,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>H(c(e)?.[0],t),getLocalRowIds:(e,t)=>N(H(c(e)?.[1],t)),getLinkedRowIds:(e,t)=>k(c(e))?[t]:N(v(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>f(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>f(s,n,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(v(e,t),f(s,o,[e,t])),delListener:e=>(I(...w(e)),S),destroy:g,getListenerStats:()=>({})};return he(S)})),xe=e=>[e,e],Fe=()=>[W(),W()],Qe=(e,t,s,n=q)=>(we(t,((t,n)=>s(e,n,t))),$(e,(s=>fe(t,s)?0:n(e,s))),e),ze=(e,t,s)=>k(e)||!ge(e)||ve(e)||ue(e)?(s?.(),!1):(we(e,((s,n)=>{t(s,n)||Le(e,n)})),!ve(e)),Ne=(e,t,s)=>q(e,t,H(e,t)==-s?void 0:s),Oe=()=>{let e,t,s,n,o=0;const r=W(),d=W(),u=W(),L=W(),w=W(),v=W(),I=W(),T=W(),y=W(),C=W(),m=W(),V=W(),E=te(),D=W(),x=W(),F=W(),N=Fe(),Y=Fe(),ne=Fe(),oe=Fe(),ae=Fe(),re=Fe(),de=Fe(),ce=Fe(),ue=Fe(),ge=Fe(),Ie=Fe(),Se=Fe(),Te=Fe(),ye=Fe(),[pe,be,Ce,me]=ie((()=>Pt)),Ve=e=>{if(!ze(e,((e,t)=>i(["type","default"],t))))return!1;const t=e.type;return!(!A(t)&&t!=a||(Z(e.default)!=t&&Le(e,"default"),0))},Ee=(t,s)=>(!e||Q(y,s)||ct(s))&&ze(t,((e,t)=>ke(s,t,e)),(()=>ct(s))),ke=(e,t,s,n)=>ze(n?s:De(s,e,t),((n,o)=>J(Je(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>ct(e,t))),Je=(t,s,n,o)=>e?J(H(H(y,t),n),(e=>Z(o)!=e.type?ct(t,s,n,o,e.default):o),(()=>ct(t,s,n,o))):k(Z(o))?ct(t,s,n,o):o,Ae=(e,t)=>ze(t?e:je(e),((t,s)=>J(Me(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>ut())),Me=(e,s)=>t?J(H(m,e),(t=>Z(s)!=t.type?ut(e,s,t.default):s),(()=>ut(e,s))):k(Z(s))?ut(e,s):s,De=(e,t,s)=>(J(H(C,t),(([n,o])=>{j(n,((t,s)=>{fe(e,s)||(e[s]=t)})),j(o,(n=>{fe(e,n)||ct(t,s,n)}))})),e),je=e=>(t&&(j(V,((t,s)=>{fe(e,s)||(e[s]=t)})),j(E,(t=>{fe(e,t)||ut(t)}))),e),Pe=e=>Qe(y,e,((e,t,s)=>{const n=W(),o=te();Qe(G(y,t,W),s,((e,t,s)=>{q(e,t,s),J(s.default,(e=>q(n,t,e)),(()=>se(o,t)))})),q(C,t,[n,o])}),((e,t)=>{q(y,t),q(C,t)})),We=e=>Qe(m,e,((e,t,s)=>{q(m,t,s),J(s.default,(e=>q(V,t,e)),(()=>se(E,t)))}),((e,t)=>{q(m,t),q(V,t),P(E,t)})),Be=e=>ve(e)?xt():kt(e),He=e=>Qe(x,e,((e,t,s)=>$e(t,s)),((e,t)=>et(t))),$e=(e,t)=>Qe(G(x,e,(()=>(ot(e,1),W()))),t,((t,s,n)=>qe(e,t,s,n)),((t,s)=>tt(e,t,s))),qe=(e,t,s,n,o)=>Qe(G(t,s,(()=>(at(e,s,1),W()))),n,((t,n,o)=>Ge(e,s,t,n,o)),((n,a)=>st(e,t,s,n,a,o))),Ge=(e,t,s,n,o)=>{Q(s,n)||rt(e,t,n,1);const a=H(s,n);o!==a&&(lt(e,t,n,a,o),q(s,n,o))},Ke=(e,t,s,n,o)=>J(H(t,s),(t=>Ge(e,s,t,n,o)),(()=>qe(e,t,s,De({[n]:o},e,s)))),Ue=e=>ve(e)?Ft():Jt(e),Xe=e=>Qe(F,e,((e,t,s)=>Ye(t,s)),((e,t)=>nt(t))),Ye=(e,t)=>{Q(F,e)||it(e,1);const s=H(F,e);t!==s&&(dt(e,s,t),q(F,e,t))},Ze=(e,t)=>{const[s]=G(D,e,le),n=s(t);return Q(H(x,e),n)?Ze(e,t):n},_e=e=>H(x,e)??$e(e,{}),et=e=>$e(e,{}),tt=(e,t,s)=>{const[,n]=G(D,e,le);n(s),qe(e,t,s,{},!0)},st=(e,t,s,n,o,a)=>{const r=H(H(C,e)?.[0],o);if(!k(r)&&!a)return Ge(e,s,n,o,r);const l=t=>{lt(e,s,t,H(n,t)),rt(e,s,t,-1),q(n,t)};k(r)?l(o):$(n,l),z(n)&&(at(e,s,-1),z(q(t,s))&&(ot(e,-1),q(x,e),q(D,e)))},nt=e=>{const t=H(V,e);if(!k(t))return Ye(e,t);dt(e,H(F,e)),it(e,-1),q(F,e)},ot=(e,t)=>Ne(r,e,t),at=(e,t,s)=>Ne(G(d,e,W),t,s),rt=(e,t,s,n)=>Ne(G(G(u,e,W),t,W),s,n),lt=(e,t,s,n,o)=>G(G(G(L,e,W),t,W),s,(()=>[n,0]))[1]=o,it=(e,t)=>Ne(w,e,t),dt=(e,t,s)=>G(v,e,(()=>[t,0]))[1]=s,ct=(e,t,s,n,o)=>(S(G(G(G(I,e,W),t,W),s,(()=>[])),n),o),ut=(e,t,s)=>(S(G(T,e,(()=>[])),t),s),ht=(e,t,s)=>J(H(H(H(L,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...xe(Ct(e,t,s))])),gt=e=>J(H(v,e),(([e,t])=>[!0,e,t]),(()=>[!1,...xe(Et(e))])),ft=e=>z(I)||z(ue[e])?0:j(e?U(I,X):I,((t,s)=>j(t,((t,n)=>j(t,((t,o)=>be(ue[e],[s,n,o],t))))))),Lt=e=>z(T)||z(ge[e])?0:j(e?U(T):T,((t,s)=>be(ge[e],[s],t))),wt=(e,t,s)=>{if(!z(t))return be(e,s),1},vt=e=>{const t=z(ae[e]),s=z(de[e])&&z(oe[e])&&t&&z(Y[e]),n=z(ce[e])&&z(re[e])&&z(ne[e])&&z(N[e]);if(!s||!n){const o=e?[U(r),X(d),U(u,X),U(L,X)]:[r,d,u,L];if(!s){j(o[2],((t,s)=>j(t,((t,n)=>wt(de[e],t,[s,n])))));const s=te();j(o[1],((n,o)=>{wt(oe[e],n,[o])&&!t&&(be(ae[e],[o,null]),se(s,o))})),t||j(o[3],((t,n)=>{if(!Q(s,n)){const s=te();j(t,(e=>j(e,(([t,n],o)=>n!==t?se(s,o):P(e,o))))),j(s,(t=>be(ae[e],[n,t])))}})),wt(Y[e],o[0])}if(!n){let t;j(o[3],((s,n)=>{let o;j(s,((s,a)=>{let r;j(s,(([s,l],i)=>{l!==s&&(be(ce[e],[n,a,i],l,s,ht),t=o=r=1)})),r&&be(re[e],[n,a],ht)})),o&&be(ne[e],[n],ht)})),t&&be(N[e],void 0,ht)}}},It=e=>{const t=z(Se[e]),s=z(Te[e])&&z(Ie[e]);if(!t||!s){const n=e?[U(w),U(v)]:[w,v];if(t||wt(Se[e],n[0]),!s){let t;j(n[1],(([s,n],o)=>{n!==s&&(be(Te[e],[o],n,s,gt),t=1)})),t&&be(Ie[e],void 0,gt)}}},Rt=(e,...t)=>(Nt((()=>e(...f(t,l)))),Pt),St=()=>K(x,(e=>K(e,K))),Tt=()=>B(x),yt=e=>B(H(x,l(e))),pt=(e,t,s,n=0,o)=>{return f(R(h((a=H(x,l(e)),r=(e,s)=>[k(t)?s:H(e,l(t)),s],f([...a?.entries()??[]],(([e,t])=>r(t,e)))),(([e],[t])=>Re(e,t)*(s?-1:1))),n,k(o)?o:n+o),(([,e])=>e));var a,r},bt=(e,t)=>B(H(H(x,l(e)),l(t))),Ct=(e,t,s)=>H(H(H(x,l(e)),l(t)),l(s)),mt=()=>K(F),Vt=()=>B(F),Et=e=>H(F,l(e)),kt=e=>Rt((()=>(e=>ze(e,Ee,ct))(e)?He(e):0)),Jt=e=>Rt((()=>Ae(e)?Xe(e):0)),At=e=>{try{Be(b(e))}catch{}return Pt},Mt=t=>Rt((()=>{if((e=ze(t,(e=>ze(e,Ve))))&&(Pe(t),!z(x))){const e=St();xt(),kt(e)}})),Dt=e=>Rt((()=>{if(t=(e=>ze(e,Ve))(e)){const s=mt();zt(),Ft(),t=!0,We(e),Jt(s)}})),xt=()=>Rt((()=>He({}))),Ft=()=>Rt((()=>Xe({}))),Qt=()=>Rt((()=>{Pe({}),e=!1})),zt=()=>Rt((()=>{We({}),t=!1})),Nt=(e,t)=>{if(-1==o)return;Ot();const s=e();return jt(t),s},Ot=()=>(o++,Pt),jt=e=>(o>0&&(o--,0==o&&(s=!z(L),n=!z(v),o=1,ft(1),s&&vt(1),Lt(1),n&&It(1),o=-1,e?.(K(L,(e=>K(e,(e=>K(e,(e=>[...e]),(([e,t])=>e===t))),ve)),ve),K(I,(e=>K(e,K))),K(v,(e=>[...e]),(([e,t])=>e===t)),K(T))&&(o=1,j(L,((e,t)=>j(e,((e,s)=>j(e,(([e],n)=>_(Pt,t,s,n,e))))))),j(v,(([e],t)=>ee(Pt,t,e))),o=-1,s=n=!1),be(ye[0],void 0,s,n),ft(0),s&&vt(0),Lt(0),n&&It(0),be(ye[1],void 0,s,n),o=0,g([r,d,u,L,I,w,v,T],O))),Pt),Pt={getTables:St,getTableIds:Tt,getTable:e=>K(H(x,l(e)),K),getRowIds:yt,getSortedRowIds:pt,getRow:(e,t)=>K(H(H(x,l(e)),l(t))),getCellIds:bt,getCell:Ct,getValues:mt,getValueIds:Vt,getValue:Et,hasTables:()=>!z(x),hasTable:e=>Q(x,l(e)),hasRow:(e,t)=>Q(H(x,l(e)),l(t)),hasCell:(e,t,s)=>Q(H(H(x,l(e)),l(t)),l(s)),hasValues:()=>!z(F),hasValue:e=>Q(F,l(e)),getTablesJson:()=>p(x),getValuesJson:()=>p(F),getJson:()=>p([x,F]),getTablesSchemaJson:()=>p(y),getValuesSchemaJson:()=>p(m),getSchemaJson:()=>p([y,m]),setTables:kt,setTable:(e,t)=>Rt((e=>Ee(t,e)?$e(e,t):0),e),setRow:(e,t,s)=>Rt(((e,t)=>ke(e,t,s)?qe(e,_e(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Nt((()=>{let n;return ke(e,n,t)&&(e=l(e),qe(e,_e(e),n=Ze(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Rt(((e,t)=>{if(ke(e,t,s,1)){const n=_e(e);we(s,((s,o)=>Ke(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Rt(((e,t,s)=>J(Je(e,t,s,M(n)?n(Ct(e,t,s)):n),(n=>Ke(e,_e(e),t,s,n)))),e,t,s),setValues:Jt,setPartialValues:e=>Rt((()=>Ae(e,1)?we(e,((e,t)=>Ye(t,e))):0)),setValue:(e,t)=>Rt((e=>J(Me(e,M(t)?t(Et(e)):t),(t=>Ye(e,t)))),e),setTablesJson:At,setValuesJson:e=>{try{Ue(b(e))}catch{}return Pt},setJson:e=>{try{const[t,s]=b(e);Be(t),Ue(s)}catch{At(e)}return Pt},setTablesSchema:Mt,setValuesSchema:Dt,setSchema:(e,t)=>Rt((()=>{Mt(e),Dt(t)})),delTables:xt,delTable:e=>Rt((e=>Q(x,e)?et(e):0),e),delRow:(e,t)=>Rt(((e,t)=>J(H(x,e),(s=>Q(s,t)?tt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Rt(((e,t,s)=>J(H(x,e),(o=>J(H(o,t),(a=>Q(a,s)?st(e,o,t,a,s,n):0))))),e,t,s),delValues:Ft,delValue:e=>Rt((e=>Q(F,e)?nt(e):0),e),delTablesSchema:Qt,delValuesSchema:zt,delSchema:()=>Rt((()=>{Qt(),zt()})),transaction:Nt,startTransaction:Ot,finishTransaction:jt,forEachTable:e=>j(x,((t,s)=>e(s,(e=>j(t,((t,s)=>e(s,(e=>$(t,e))))))))),forEachRow:(e,t)=>j(H(x,l(e)),((e,s)=>t(s,(t=>$(e,t))))),forEachCell:(e,t,s)=>$(H(H(x,l(e)),l(t)),s),forEachValue:e=>$(F,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);c(r,l)||(l=r,a(Pt,e,t,s,n,o,l))}),ae[r?1:0],[e,t],[Tt])},addWillFinishTransactionListener:e=>pe(e,ye[0]),addDidFinishTransactionListener:e=>pe(e,ye[1]),callListener:e=>(me(e),Pt),delListener:e=>(Ce(e),Pt),getListenerStats:()=>({}),createStore:Oe};return we({Tables:[0,N],TableIds:[0,Y],Table:[1,ne,[Tt]],RowIds:[1,oe,[Tt]],Row:[2,re,[Tt,yt]],CellIds:[2,de,[Tt,yt]],Cell:[3,ce,[Tt,yt,bt],e=>xe(Ct(...e))],InvalidCell:[3,ue],Values:[0,Ie],ValueIds:[0,Se],Value:[1,Te,[Vt],e=>xe(Et(e[0]))],InvalidValue:[1,ge]},(([e,t,s,n],o)=>{Pt["add"+o+"Listener"]=(...o)=>pe(o[e],t[o[e+1]?1:0],e>0?R(o,0,e):void 0,s,n)})),he(Pt)};export{Ie as createCheckpoints,be as createCustomPersister,ke as createFilePersister,Se as createIndexes,Ve as createLocalPersister,pe as createMetrics,Me as createQueries,De as createRelationships,Ae as createRemotePersister,Ee as createSessionPersister,Oe as createStore,Re as defaultSorter};
Binary file