tinybase 4.4.0-beta.1 → 4.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/lib/cjs/store.cjs +1 -1
  2. package/lib/cjs/store.cjs.gz +0 -0
  3. package/lib/cjs/tinybase.cjs +1 -1
  4. package/lib/cjs/tinybase.cjs.gz +0 -0
  5. package/lib/cjs/tools.cjs +1 -1
  6. package/lib/cjs/tools.cjs.gz +0 -0
  7. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  8. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  9. package/lib/cjs/ui-react.cjs +1 -1
  10. package/lib/cjs/ui-react.cjs.gz +0 -0
  11. package/lib/cjs-es6/store.cjs +1 -1
  12. package/lib/cjs-es6/store.cjs.gz +0 -0
  13. package/lib/cjs-es6/tinybase.cjs +1 -1
  14. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  15. package/lib/cjs-es6/tools.cjs +1 -1
  16. package/lib/cjs-es6/tools.cjs.gz +0 -0
  17. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  18. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  19. package/lib/cjs-es6/ui-react.cjs +1 -1
  20. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  21. package/lib/debug/store.js +1 -1
  22. package/lib/debug/tinybase.js +1 -1
  23. package/lib/debug/tools.js +355 -14
  24. package/lib/debug/ui-react-dom.js +1 -1
  25. package/lib/debug/ui-react.js +284 -71
  26. package/lib/es6/store.js +1 -1
  27. package/lib/es6/store.js.gz +0 -0
  28. package/lib/es6/tinybase.js +1 -1
  29. package/lib/es6/tinybase.js.gz +0 -0
  30. package/lib/es6/tools.js +1 -1
  31. package/lib/es6/tools.js.gz +0 -0
  32. package/lib/es6/ui-react-dom-debug.js +1 -1
  33. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  34. package/lib/es6/ui-react.js +1 -1
  35. package/lib/es6/ui-react.js.gz +0 -0
  36. package/lib/store.js +1 -1
  37. package/lib/store.js.gz +0 -0
  38. package/lib/tinybase.js +1 -1
  39. package/lib/tinybase.js.gz +0 -0
  40. package/lib/tools.js +1 -1
  41. package/lib/tools.js.gz +0 -0
  42. package/lib/types/store.d.ts +1 -1
  43. package/lib/types/tools.d.ts +2 -2
  44. package/lib/types/ui-react.d.ts +1163 -52
  45. package/lib/types/with-schemas/store.d.ts +1 -1
  46. package/lib/types/with-schemas/tools.d.ts +2 -2
  47. package/lib/types/with-schemas/ui-react.d.ts +1353 -65
  48. package/lib/ui-react.js +1 -1
  49. package/lib/ui-react.js.gz +0 -0
  50. package/lib/umd/store.js +1 -1
  51. package/lib/umd/store.js.gz +0 -0
  52. package/lib/umd/tinybase.js +1 -1
  53. package/lib/umd/tinybase.js.gz +0 -0
  54. package/lib/umd/tools.js +1 -1
  55. package/lib/umd/tools.js.gz +0 -0
  56. package/lib/umd/ui-react-dom-debug.js +1 -1
  57. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  58. package/lib/umd/ui-react.js +1 -1
  59. package/lib/umd/ui-react.js.gz +0 -0
  60. package/lib/umd-es6/store.js +1 -1
  61. package/lib/umd-es6/store.js.gz +0 -0
  62. package/lib/umd-es6/tinybase.js +1 -1
  63. package/lib/umd-es6/tinybase.js.gz +0 -0
  64. package/lib/umd-es6/tools.js +1 -1
  65. package/lib/umd-es6/tools.js.gz +0 -0
  66. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  67. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  68. package/lib/umd-es6/ui-react.js +1 -1
  69. package/lib/umd-es6/ui-react.js.gz +0 -0
  70. package/package.json +20 -20
  71. package/readme.md +13 -13
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Ids",h="Table",m=h+"s",b=h+c,g="Row",p=g+"Count",I=g+c,f="Cell",w=f+c,y="Value",C=y+"s",v=y+c,T="Has",k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==i,E=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),$=e=>e.length,{PureComponent:O,Fragment:A,createElement:F,useCallback:J,useLayoutEffect:P,useRef:H,useState:B}=t,D=(e,...t)=>q(e)?{}:e(...t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==$(e),U=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,X=e=>K.getPrototypeOf(e),Y=K.keys,Z=K.isFrozen,_=K.freeze,ee=e=>!q(e)&&N(X(e),(e=>e==K.prototype||q(X(e))),(()=>!0)),te=(e=[])=>K.fromEntries(e),se=(e,t)=>!q(((e,t)=>N(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),ae=(e,t)=>j(K.entries(e),(([e,s])=>t(s,e))),ne=e=>ee(e)&&0==(e=>$(Y(e)))(e),oe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?K.fromEntries([...t]):t)),re=JSON.parse,ie="tinybaseStoreInspector",de="TinyBase Store Inspector",ue=["left","top","bottom","right","full"],ce="state",he="sort",me="open",be="position",ge=me,pe="editable",Ie=(...e)=>oe(e),fe=(e,t)=>j(e.sort(),t),we=(e,t)=>[!!s.useCell(ce,e,pe,t),J((s=>{t.setCell(ce,e,pe,(e=>!e)),s.preventDefault()}),[t,e])],ye="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Ce='content:url("',ve=Ce+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Te='</svg>")',ke=Ce+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Se=j([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ve+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Te)),xe=ve+"<path d='M20 20l60 60M20 80l60-60' />"+Te,Ve=ve+`<path d='${ye}' />`+Te,Re=ve+`<path d='${ye}M20 20l60 60' />`+Te,qe="*::-webkit-scrollbar",Ne=((e,t="")=>e.join(t))(ae({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[qe]:"width:0.5rem;height:0.5rem;",[qe+"-track"]:"background:#111",[qe+"-thumb"]:"background:#999;border:1px solid #111",[qe+"-thumb:hover"]:"background:#fff",[qe+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ke,...te(j(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...te(j(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ke,"header>img:nth-of-type(6)":xe,...te(j(Se,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Ve,"details[open]>summary img.done":Re,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ie} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ie} ${t}{${e}}`:""))),Le=({s:e})=>{const t=s.useValue(be,e)??1,l=s.useSetValueCallback(ge,(()=>!0),[],e);return s.useValue(ge,e)?null:F("img",{onClick:l,title:de,"data-position":t})},Me=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(ce,e,me,o),i=s.useSetCellCallback(ce,e,me,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},Ee=e=>{const t=l(e);return L(t)||t==r&&R(e)?t:void 0},ze=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),$e=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Oe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Ae,useMemo:Fe,useState:Je}=t,Pe="editable",He=(e,t)=>j(s.useTableCellIds(e,t),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Ae(e,t);return s?l:void 0},De=(...e)=>Fe((()=>e),e),Qe=(e,t)=>Fe((()=>({store:e,tableId:t})),[e,t]),je=(e,t)=>Fe((()=>({queries:e,queryId:t})),[e,t]),We=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Je([e,t,l]),h=Ae((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Ae((e=>h([i,d,e])),[h,i,d]),g=!0===o?nt:o;return[[i,d,u],m,Fe((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ue=(e,t,s)=>Fe((()=>{const a=t??e;return te(ae(E(a)?te(j(a,(e=>[e,e]))):a,((e,t)=>{return[t,{label:t,component:s,...(a=e,l(a)==n?{label:e}:e)}];var a})))}),[t,s,e]),Ge=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ke,{sort:o??[],label:"Id",onClick:r}),ae(l,(({label:e},t)=>F(Ke,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,j(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),ae(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...D(s,e,l),...a,rowId:e,cellId:l}))))))))),Ke=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:Be((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),Xe=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),ae(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...D(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Ye=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Je(),[u,c]=Je(),[h,m]=Je(),[b,g]=Je(),[p,I]=Je();u!==e&&(d(Ee(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Ae(((e,s)=>{s(e),c(e),t(e)}),[t]),w=Ae((()=>{if(!l?.()){const e=Oe(i,r,o,n),s=Oe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:w},i):null,Oe(i,F("input",{key:i,value:h,onChange:Ae((e=>f(e[k][S]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Ae((e=>f(Number(e[k][S]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Ae((e=>f(!!e[k].checked,I)),[f])})))},Ze=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=We(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Ge,{...h,params:De(Ue(s.useTableCellIds(e,o),c,r?lt:s.CellView),Qe(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},_e=({store:e,editable:t=!1,valueComponent:l=(t?at:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,y))),F("tbody",null,j(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...D(a,t),valueId:t,store:e}))))))),et=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Ge,{...o,params:De(Ue(s.useTableCellIds(d,i),n,a?lt:s.CellView),Qe(i,d),s.useSliceRowIds(e,t,r))})},tt=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Ue([...He(c,u),...He(h,u)],n,a?lt:s.CellView),b=De(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),ae(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,j(s.useRowIds(c,u),(e=>F(Xe,{key:e,localRowId:e,params:b})))))},st=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=We(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Ge,{...c,params:De(Ue(s.useResultTableCellIds(e,o),d,s.ResultCellView),je(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},lt=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(Ye,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Pe+f,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),at=({valueId:e,store:t,className:l,showType:a})=>F(Ye,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Pe+y,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),nt=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=Be((()=>e(l-a)),[e,l,a],l>0),i=Be((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},ot=({indexes:e,indexesId:t,indexId:l,s:a})=>F(Me,{uniqueId:Ie("i",t,l),summary:"Index: "+l,s:a},j(s.useSliceIds(l,e),(s=>F(rt,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),rt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=Ie("i",t,s,l),[o,r]=we(n,a);return F(Me,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(et,{sliceId:l,indexId:s,indexes:e,editable:o}))},it=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F(Me,{uniqueId:Ie("i",e),summary:"Indexes: "+(e??u),s:t},W(a)?"No indexes defined":fe(a,(s=>F(ot,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},dt=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),ut=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F(Me,{uniqueId:Ie("m",e),summary:"Metrics: "+(e??u),s:t},W(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,j(a,(e=>F(dt,{metrics:l,metricId:e,key:e}))))))},ct=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=Ie("q",t,l),[o,r,i]=re(s.useCell(ce,n,he,a)??"[]"),d=s.useSetCellCallback(ce,n,he,oe,[],a);return F(Me,{uniqueId:n,summary:"Query: "+l,s:a},F(st,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ht=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F(Me,{uniqueId:Ie("q",e),summary:"Queries: "+(e??u),s:t},W(a)?"No queries defined":fe(a,(s=>F(ct,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},mt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=Ie("r",t,s),[n,o]=we(a,l);return F(Me,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(tt,{relationshipId:s,relationships:e,editable:n}))},bt=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F(Me,{uniqueId:Ie("r",e),summary:"Relationships: "+(e??u),s:t},W(a)?"No relationships defined":fe(a,(s=>F(mt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},gt=({tableId:e,store:t,storeId:l,s:a})=>{const n=Ie("t",l,e),[o,r,i]=re(s.useCell(ce,n,he,a)??"[]"),d=s.useSetCellCallback(ce,n,he,oe,[],a),[u,c]=we(n,a);return F(Me,{uniqueId:n,summary:h+": "+e,editable:u,handleEditable:c,s:a},F(Ze,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},pt=({store:e,storeId:t,s:l})=>{const a=Ie("v",t),[n,o]=we(a,l);return W(s.useValueIds(e))?null:F(Me,{uniqueId:a,summary:C,editable:n,handleEditable:o,s:l},F(_e,{store:e,editable:n}))},It=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F(Me,{uniqueId:Ie("s",e),summary:"Store: "+(e??u),s:t},F(pt,{storeId:e,store:l,s:t}),fe(a,(s=>F(gt,{store:l,storeId:e,tableId:s,s:t,key:s}))))},ft=({s:e})=>{const t=H(null),l=H(0),[a,n]=B(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);P((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&W(u)&&q(c)&&W(h)&&q(m)&&W(b)&&q(g)&&W(p)&&q(I)&&W(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(It,{s:e}),j(u,(t=>F(It,{storeId:t,s:e,key:t}))),F(ut,{s:e}),j(h,(t=>F(ut,{metricsId:t,s:e,key:t}))),F(it,{s:e}),j(b,(t=>F(it,{indexesId:t,s:e,key:t}))),F(bt,{s:e}),j(p,(t=>F(bt,{relationshipsId:t,s:e,key:t}))),F(ht,{s:e}),j(f,(t=>F(ht,{queriesId:t,s:e,key:t}))))};class wt extends O{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const yt=({s:e})=>{const t=s.useValue(be,e)??1,l=s.useSetValueCallback(ge,(()=>!1),[],e),a=s.useSetValueCallback(be,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:de}),F("span",null,de),j(ue,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},Ct=({s:e})=>{const t=s.useValue(be,e)??1;return s.useValue(ge,e)?F("main",{"data-position":t},F(yt,{s:e}),F(wt,null,F(ft,{s:e}))):null},vt=e=>t=>{return s=(t,s)=>t+e(s),qt(t).reduce(s,0);var s},Tt=e=>e?.size??0,kt=vt(Tt),St=vt(kt),xt=vt(St),Vt=(e,t)=>e?.has(t)??!1,Rt=e=>q(e)||0==Tt(e),qt=e=>[...e?.values()??[]],Nt=e=>e.clear(),Lt=(e,t)=>e?.forEach(t),Mt=(e,t)=>e?.delete(t),Et=e=>new Map(e),zt=e=>[...e?.keys()??[]],$t=(e,t)=>e?.get(t),Ot=(e,t)=>Lt(e,((e,s)=>t(s,e))),At=(e,t,s)=>q(s)?(Mt(e,t),e):e?.set(t,s),Ft=(e,t,s)=>(Vt(e,t)||At(e,t,s()),$t(e,t)),Jt=(e,t,s,l=At)=>(ae(t,((t,l)=>s(e,l,t))),Ot(e,(s=>se(t,s)?0:l(e,s))),e),Pt=(e,t,s)=>{const l={};return Lt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Ht=(e,t,s)=>Pt(e,(e=>Pt(e,t,s)),ne),Bt=(e,t,s)=>Pt(e,(e=>Ht(e,t,s)),ne),Dt=(e,t)=>{const s=Et();return Lt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Qt=e=>Dt(e,Dt),jt=e=>Dt(e,Qt),Wt=(e,t,s,l,a=0)=>N((s?Ft:$t)(e,t[a],a>$(t)-2?s:Et),(n=>{if(a>$(t)-2)return l?.(n)&&At(e,t[a]),n;const o=Wt(n,t,s,l,a+1);return Rt(n)&&At(e,t[a]),o})),Ut=Et(),Gt=Et(),Kt="storage",Xt=globalThis.window,Yt=e=>new Set(E(e)||q(e)?e:[e]),Zt=(e,t)=>e?.add(t),_t=/^\d+$/,es=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??a+t++,t=>{_t.test(t)&&$(e)<1e3&&U(e,t)}]},ts=e=>[e,e],ss=(e,t=kt)=>t(e[0])+t(e[1]),ls=()=>[Et(),Et()],as=e=>[...e],ns=([e,t])=>e===t,os=(e,t,s)=>q(e)||!ee(e)||ne(e)||Z(e)?(s?.(),!1):(ae(e,((s,l)=>{t(s,l)||le(e,l)})),!ne(e)),rs=(e,t,s)=>At(e,t,$t(e,t)==-s?void 0:s),is=()=>{let e,t,s=!1,l=!1,n=!1,o=!1,i=0;const c=Et(),k=Et(),S=Et(),V=Et(),R=Et(),E=Et(),O=Et(),A=Et(),F=Et(),J=Et(),P=Et(),H=Et(),B=Et(),D=Et(),W=Yt(),G=Et(),K=Et(),X=Et(),Y=Et(),Z=ls(),ee=ls(),te=ls(),ie=ls(),de=ls(),ue=ls(),ce=ls(),he=ls(),me=ls(),be=ls(),ge=ls(),pe=ls(),Ie=ls(),fe=ls(),we=ls(),ye=ls(),Ce=ls(),ve=ls(),Te=ls(),ke=ls(),Se=ls(),xe=ls(),Ve=Et(),Re=ls(),[qe,Ne,Le,Me]=(e=>{let t;const[s,l]=es(),n=Et();return[(e,l,o,r=[],i=(()=>[]))=>{t??=As;const d=s(1);return At(n,d,[e,l,o,r,i]),Zt(Wt(l,o??[a],Yt),d),d},(e,s,...l)=>Q(((e,t=[a])=>{const s=[],l=(e,a)=>a==$(t)?U(s,e):null===t[a]?Lt(e,(e=>l(e,a+1))):Q([t[a],null],(t=>l($t(e,t),a+1)));return l(e,0),s})(e,s),(e=>Lt(e,(e=>$t(n,e)[0](t,...s??[],...l))))),e=>N($t(n,e),(([,t,s])=>(Wt(t,s??[a],void 0,(t=>(Mt(t,e),Rt(t)?1:0))),At(n,e),l(e),s))),e=>N($t(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=$(o);r==$(s)?e(t,...o,...a(o)):q(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Oe=e=>{if(!os(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||(Ee(e[u])!=t&&le(e,u),0))},Ae=(t,s)=>(!e||Vt(P,s)||mt(s))&&os(t,((e,t)=>Fe(s,t,e)),(()=>mt(s))),Fe=(e,t,s,l)=>os(l?s:Be(s,e,t),((l,a)=>N(Je(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>mt(e,t))),Je=(t,s,l,a)=>e?N($t($t(P,t),l),(e=>Ee(a)!=e[d]?mt(t,s,l,a,e[u]):a),(()=>mt(t,s,l,a))):q(Ee(a))?mt(t,s,l,a):a,Pe=(e,t)=>os(t?e:De(e),((t,s)=>N(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>bt())),He=(e,s)=>t?N($t(B,e),(t=>Ee(s)!=t[d]?bt(e,s,t[u]):s),(()=>bt(e,s))):q(Ee(s))?bt(e,s):s,Be=(e,t,s)=>(N($t(H,t),(([l,a])=>{Lt(l,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(a,(l=>{se(e,l)||mt(t,s,l)}))})),e),De=e=>(t&&(Lt(D,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(W,(t=>{se(e,t)||bt(t)}))),e),Qe=e=>Jt(P,e,((e,t,s)=>{const l=Et(),a=Yt();Jt(Ft(P,t,Et),s,((e,t,s)=>{At(e,t,s),N(s[u],(e=>At(l,t,e)),(()=>Zt(a,t)))})),At(H,t,[l,a])}),((e,t)=>{At(P,t),At(H,t)})),je=e=>Jt(B,e,((e,t,s)=>{At(B,t,s),N(s[u],(e=>At(D,t,e)),(()=>Zt(W,t)))}),((e,t)=>{At(B,t),At(D,t),Mt(W,t)})),We=e=>ne(e)?Rs():Ts(e),Ue=e=>Jt(X,e,((e,t,s)=>Ge(t,s)),((e,t)=>lt(t))),Ge=(e,t)=>Jt(Ft(X,e,(()=>(rt(e,1),At(G,e,es()),At(K,e,Et()),Et()))),t,((t,s,l)=>Ke(e,t,s,l)),((t,s)=>at(e,t,s))),Ke=(e,t,s,l,a)=>Jt(Ft(t,s,(()=>(it(e,s,1),Et()))),l,((t,l,a)=>Xe(e,s,t,l,a)),((l,n)=>nt(e,t,s,l,n,a))),Xe=(e,t,s,l,a)=>{Vt(s,l)||dt(e,t,l,1);const n=$t(s,l);a!==n&&(ut(e,t,l,n,a),At(s,l,a))},Ye=(e,t,s,l,a)=>N($t(t,s),(t=>Xe(e,s,t,l,a)),(()=>Ke(e,t,s,Be({[l]:a},e,s)))),Ze=e=>ne(e)?Ls():ks(e),_e=e=>Jt(Y,e,((e,t,s)=>et(t,s)),((e,t)=>ot(t))),et=(e,t)=>{Vt(Y,e)||ct(e,1);const s=$t(Y,e);t!==s&&(ht(e,s,t),At(Y,e,t))},tt=(e,t)=>{const[s]=$t(G,e),l=s(t);return Vt($t(X,e),l)?tt(e,t):l},st=e=>$t(X,e)??Ge(e,{}),lt=e=>Ge(e,{}),at=(e,t,s)=>{const[,l]=$t(G,e);l(s),Ke(e,t,s,{},!0)},nt=(e,t,s,l,a,n)=>{const o=$t($t(H,e)?.[0],a);if(!q(o)&&!n)return Xe(e,s,l,a,o);const r=t=>{ut(e,s,t,$t(l,t)),dt(e,s,t,-1),At(l,t)};q(o)?r(a):Ot(l,r),Rt(l)&&(it(e,s,-1),Rt(At(t,s))&&(rt(e,-1),At(X,e),At(G,e),At(K,e)))},ot=e=>{const t=$t(D,e);if(!q(t))return et(e,t);ht(e,$t(Y,e)),ct(e,-1),At(Y,e)},rt=(e,t)=>rs(c,e,t),it=(e,t,s)=>rs(Ft(V,e,Et),t,s)&&At(S,e,Ft(S,e,(()=>0))+s),dt=(e,t,s,l)=>{const a=$t(K,e),n=$t(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&rs(Ft(k,e,Et),s,l),At(a,s,n!=-l?n+l:null),rs(Ft(Ft(R,e,Et),t,Et),s,l)},ut=(e,t,s,l,a)=>Ft(Ft(Ft(E,e,Et),t,Et),s,(()=>[l,0]))[1]=a,ct=(e,t)=>rs(O,e,t),ht=(e,t,s)=>Ft(A,e,(()=>[t,0]))[1]=s,mt=(e,t,s,l,a)=>(U(Ft(Ft(Ft(F,e,Et),t,Et),s,(()=>[])),l),a),bt=(e,t,s)=>(U(Ft(J,e,(()=>[])),t),s),gt=(e,t,s)=>N($t($t($t(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(hs(e,t,s))])),pt=e=>N($t(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(gs(e))])),It=e=>Rt(F)||Rt(ye[e])?0:Lt(e?jt(F):F,((t,s)=>Lt(t,((t,l)=>Lt(t,((t,a)=>Ne(ye[e],[s,l,a],t))))))),ft=e=>Rt(J)||Rt(Ce[e])?0:Lt(e?Dt(J):J,((t,s)=>Ne(Ce[e],[s],t))),wt=(e,t,s,l)=>{if(!Rt(e))return Ne(t,l,(()=>Pt(e))),Ot(e,((e,t)=>Ne(s,[...l??[],e],1==t))),1},yt=e=>{const t=ps();t!=n&&Ne(Z[e],void 0,t);const s=Rt(be[e]),l=Rt(Ie[e])&&Rt(fe[e])&&Rt(me[e])&&Rt(ge[e])&&Rt(ue[e])&&Rt(ce[e])&&Rt(he[e])&&s&&Rt(te[e])&&Rt(ie[e]),a=Rt(we[e])&&Rt(pe[e])&&Rt(de[e])&&Rt(ee[e]);if(!l||!a){const t=e?[Dt(c),Qt(k),Dt(S),Qt(V),jt(R),jt(E)]:[c,k,S,V,R,E];if(!l){wt(t[0],te[e],ie[e]),Lt(t[1],((t,s)=>wt(t,ue[e],ce[e],[s]))),Lt(t[2],((t,s)=>{0!=t&&Ne(he[e],[s],_t(s))}));const l=Yt();Lt(t[3],((t,a)=>{wt(t,me[e],ge[e],[a])&&!s&&(Ne(be[e],[a,null]),Zt(l,a))})),s||Lt(t[5],((t,s)=>{if(!Vt(l,s)){const l=Yt();Lt(t,(e=>Lt(e,(([t,s],a)=>s!==t?Zt(l,a):Mt(e,a))))),Lt(l,(t=>Ne(be[e],[s,t])))}})),Lt(t[4],((t,s)=>Lt(t,((t,l)=>wt(t,Ie[e],fe[e],[s,l])))))}if(!a){let s;Lt(t[5],((t,l)=>{let a;Lt(t,((t,n)=>{let o;Lt(t,(([t,r],i)=>{r!==t&&(Ne(we[e],[l,n,i],r,t,gt),s=a=o=1)})),o&&Ne(pe[e],[l,n],gt)})),a&&Ne(de[e],[l],gt)})),s&&Ne(ee[e],void 0,gt)}}},Ct=e=>{const t=Cs();t!=o&&Ne(ve[e],void 0,t);const s=Rt(ke[e])&&Rt(Se[e]),l=Rt(xe[e])&&Rt(Te[e]);if(!s||!l){const t=e?[Dt(O),Dt(A)]:[O,A];if(s||wt(t[0],ke[e],Se[e]),!l){let s;Lt(t[1],(([t,l],a)=>{l!==t&&(Ne(xe[e],[a],l,t,pt),s=1)})),s&&Ne(Te[e],void 0,pt)}}},vt=(e,...t)=>(zs((()=>e(...j(t,x)))),As),qt=()=>[Pt(E,((e,t)=>-1===$t(c,t)?null:Pt(e,((e,s)=>-1===$t($t(V,t),s)?null:Pt(e,(([,e])=>e??null),((e,t)=>ns(t)))),ne)),ne),Pt(A,(([,e])=>e??null),((e,t)=>ns(t)))],Ut=()=>({cellsTouched:s,valuesTouched:l,changedCells:Bt(E,as,ns),invalidCells:Bt(F),changedValues:Pt(A,as,ns),invalidValues:Pt(J),changedTableIds:Pt(c),changedRowIds:Ht(V),changedCellIds:Bt(R),changedValueIds:Pt(O)}),Gt=()=>Bt(X),Kt=()=>zt(X),Xt=e=>zt($t(K,x(e))),_t=e=>Tt($t(X,x(e))),ds=e=>zt($t(X,x(e))),us=(e,t,s,l=0,a)=>{return j(z((o=$t(X,x(e)),r=(e,s)=>[q(t)?s:$t(e,x(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),j([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,q(a)?a:l+a),(([,e])=>e));var n,o,r},cs=(e,t)=>zt($t($t(X,x(e)),x(t))),hs=(e,t,s)=>$t($t($t(X,x(e)),x(t)),x(s)),ms=()=>Pt(Y),bs=()=>zt(Y),gs=e=>$t(Y,x(e)),ps=()=>!Rt(X),Is=e=>Vt(X,x(e)),fs=(e,t)=>Vt($t(K,x(e)),x(t)),ws=(e,t)=>Vt($t(X,x(e)),x(t)),ys=(e,t,s)=>Vt($t($t(X,x(e)),x(t)),x(s)),Cs=()=>!Rt(Y),vs=e=>Vt(Y,x(e)),Ts=e=>vt((()=>(e=>os(e,Ae,mt))(e)?Ue(e):0)),ks=e=>vt((()=>Pe(e)?_e(e):0)),Ss=e=>{try{We(re(e))}catch{}return As},xs=t=>vt((()=>{if((e=os(t,(e=>os(e,Oe))))&&(Qe(t),!Rt(X))){const e=Gt();Rs(),Ts(e)}})),Vs=e=>vt((()=>{if(t=(e=>os(e,Oe))(e)){const s=ms();Es(),Ls(),t=!0,je(e),ks(s)}})),Rs=()=>vt((()=>Ue({}))),qs=e=>vt((e=>Vt(X,e)?lt(e):0),e),Ns=(e,t)=>vt(((e,t)=>N($t(X,e),(s=>Vt(s,t)?at(e,s,t):0))),e,t),Ls=()=>vt((()=>_e({}))),Ms=()=>vt((()=>{Qe({}),e=!1})),Es=()=>vt((()=>{je({}),t=!1})),zs=(e,t)=>{if(-1!=i){$s();const s=e();return Os(t),s}},$s=()=>(-1!=i&&i++,1==i&&Ne(Ve,void 0,qt,Ut),As),Os=e=>(i>0&&(i--,0==i&&(s=!Rt(E),l=!Rt(A),i=1,It(1),s&&yt(1),ft(1),l&&Ct(1),e?.(qt,Ut)&&(Lt(E,((e,t)=>Lt(e,((e,s)=>Lt(e,(([e],l)=>ze(As,t,s,l,e))))))),Lt(A,(([e],t)=>$e(As,t,e))),s=l=!1),Ne(Re[0],void 0,qt,Ut),i=-1,It(0),s&&yt(0),ft(0),l&&Ct(0),Ne(Re[1],void 0,qt,Ut),i=0,s=l=!1,n=ps(),o=Cs(),Q([c,k,S,V,R,E,F,O,A,J],Nt))),As),As={getContent:()=>[Gt(),ms()],getTables:Gt,getTableIds:Kt,getTable:e=>Ht($t(X,x(e))),getTableCellIds:Xt,getRowCount:_t,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>Pt($t($t(X,x(e)),x(t))),getCellIds:cs,getCell:hs,getValues:ms,getValueIds:bs,getValue:gs,hasTables:ps,hasTable:Is,hasTableCell:fs,hasRow:ws,hasCell:ys,hasValues:Cs,hasValue:vs,getTablesJson:()=>oe(X),getValuesJson:()=>oe(Y),getJson:()=>oe([X,Y]),getTablesSchemaJson:()=>oe(P),getValuesSchemaJson:()=>oe(B),getSchemaJson:()=>oe([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>vt((()=>{(ne(e)?Rs:Ts)(e),(ne(t)?Ls:ks)(t)})),setTables:Ts,setTable:(e,t)=>vt((e=>Ae(t,e)?Ge(e,t):0),e),setRow:(e,t,s)=>vt(((e,t)=>Fe(e,t,s)?Ke(e,st(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let l;return Fe(e,l,t)&&(e=x(e),Ke(e,st(e),l=tt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>vt(((e,t)=>{if(Fe(e,t,s,1)){const l=st(e);ae(s,((s,a)=>Ye(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>vt(((e,t,s)=>N(Je(e,t,s,M(l)?l(hs(e,t,s)):l),(l=>Ye(e,st(e),t,s,l)))),e,t,s),setValues:ks,setPartialValues:e=>vt((()=>Pe(e,1)?ae(e,((e,t)=>et(t,e))):0)),setValue:(e,t)=>vt((e=>N(He(e,M(t)?t(gs(e)):t),(t=>et(e,t)))),e),setTransactionChanges:e=>vt((()=>{ae(e[0],((e,t)=>q(e)?qs(t):ae(e,((e,s)=>q(e)?Ns(t,s):ae(e,((e,l)=>ze(As,t,s,l,e))))))),ae(e[1],((e,t)=>$e(As,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{Ze(re(e))}catch{}return As},setJson:e=>vt((()=>{try{const[t,s]=re(e);We(t),Ze(s)}catch{Ss(e)}})),setTablesSchema:xs,setValuesSchema:Vs,setSchema:(e,t)=>vt((()=>{xs(e),Vs(t)})),delTables:Rs,delTable:qs,delRow:Ns,delCell:(e,t,s,l)=>vt(((e,t,s)=>N($t(X,e),(a=>N($t(a,t),(n=>Vt(n,s)?nt(e,a,t,n,s,l):0))))),e,t,s),delValues:Ls,delValue:e=>vt((e=>Vt(Y,e)?ot(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>vt((()=>{Ms(),Es()})),transaction:zs,startTransaction:$s,finishTransaction:Os,forEachTable:e=>Lt(X,((t,s)=>e(s,(e=>Lt(t,((t,s)=>e(s,(e=>Ot(t,e))))))))),forEachTableCell:(e,t)=>Ot($t(K,x(e)),t),forEachRow:(e,t)=>Lt($t(X,x(e)),((e,s)=>t(s,(t=>Ot(e,t))))),forEachCell:(e,t,s)=>Ot($t($t(X,x(e)),x(t)),s),forEachValue:e=>Ot(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=us(e,t,s,l,a);return qe((()=>{const o=us(e,t,s,l,a);var i,d,u;d=r,$(i=o)===$(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(As,e,t,s,l,a,r))}),be[o?1:0],[e,t],[Kt])},addStartTransactionListener:e=>qe(e,Ve),addWillFinishTransactionListener:e=>qe(e,Re[0]),addDidFinishTransactionListener:e=>qe(e,Re[1]),callListener:e=>(Me(e),As),delListener:e=>(Le(e),As),getListenerStats:()=>({hasTables:ss(Z),tables:ss(ee),tableIds:ss(te),hasTable:ss(ie),table:ss(de),tableCellIds:ss(ue),hasTableCell:ss(ce,St),rowCount:ss(he),rowIds:ss(me),sortedRowIds:ss(be),hasRow:ss(ge,St),row:ss(pe,St),cellIds:ss(Ie,St),hasCell:ss(fe,xt),cell:ss(we,xt),invalidCell:ss(ye,xt),hasValues:ss(ve),values:ss(Te),valueIds:ss(ke),hasValue:ss(Se),value:ss(xe),invalidValue:ss(Ce),transaction:kt(Ve)+ss(Re)}),createStore:is,addListener:qe,callListeners:Ne};return ae({[T+m]:[0,Z,[],()=>[ps()]],[m]:[0,ee],[b]:[0,te],[T+h]:[1,ie,[Kt],e=>[Is(...e)]],[h]:[1,de,[Kt]],[h+w]:[1,ue,[Kt]],[T+h+f]:[2,ce,[Kt,Xt],e=>[fs(...e)]],[p]:[1,he,[Kt]],[I]:[1,me,[Kt]],[T+g]:[2,ge,[Kt,ds],e=>[ws(...e)]],[g]:[2,pe,[Kt,ds]],[w]:[2,Ie,[Kt,ds]],[T+f]:[3,fe,[Kt,ds,cs],e=>[ys(...e)]],[f]:[3,we,[Kt,ds,cs],e=>ts(hs(...e))],InvalidCell:[3,ye],[T+C]:[0,ve,[],()=>[Cs()]],[C]:[0,Te],[v]:[0,ke],[T+y]:[1,Se,[bs],e=>[vs(...e)]],[y]:[1,xe,[bs],e=>ts(gs(e[0]))],InvalidValue:[1,Ce]},(([e,t,s,l],a)=>{As["add"+a+"Listener"]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,l)})),_(As)},ds=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(is),a=ue.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Ft(Ut,i,(()=>0)),Ft(Gt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();ne(s)&&ne(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(N(d,e.delListener),d=void 0,I),schedule:async(...e)=>(U($t(Gt,i),...e),await(async()=>{if(!$t(Ut,i)){for(At(Ut,i,1);!q(u=G($t(Gt,i)));)try{await u()}catch(e){n?.(e)}At(Ut,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),_(I)})(e,(async()=>re(s.getItem(t))),(async e=>s.setItem(t,oe(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>re(l.newValue)))};return Xt.addEventListener(Kt,l),l}),(e=>Xt.removeEventListener(Kt,e)),l,["getStorageName",t]))(e,ie,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),F(A,null,F("aside",{id:ie},F(Le,{s:l}),F(Ct,{s:l})),F("style",null,Ne))};e.EditableCellView=lt,e.EditableValueView=at,e.RelationshipInHtmlTable=tt,e.ResultSortedTableInHtmlTable=st,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Ge,{...a,params:De(Ue(s.useResultTableCellIds(e,t),l,s.ResultCellView),je(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=et,e.SortedTableInHtmlTable=Ze,e.SortedTablePaginator=nt,e.StoreInspector=e=>F(ds,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Ge,{...n,params:De(Ue(s.useTableCellIds(e,t),a,l?lt:s.CellView),Qe(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=_e},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,w="Cell",y=w+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==i,E=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),$=e=>e.length,{PureComponent:O,Fragment:A,createElement:F,useCallback:J,useLayoutEffect:P,useRef:H,useState:B}=t,D=(e,...t)=>q(e)?{}:e(...t),Q=(e,t)=>e.forEach(t),j=(e,t)=>e.map(t),W=e=>0==$(e),U=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,X=e=>K.getPrototypeOf(e),Y=K.keys,Z=K.isFrozen,_=K.freeze,ee=e=>!q(e)&&N(X(e),(e=>e==K.prototype||q(X(e))),(()=>!0)),te=(e=[])=>K.fromEntries(e),se=(e,t)=>!q(((e,t)=>N(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),ae=(e,t)=>j(K.entries(e),(([e,s])=>t(s,e))),ne=e=>ee(e)&&0==(e=>$(Y(e)))(e),oe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?K.fromEntries([...t]):t)),re=JSON.parse,ie="tinybaseStoreInspector",de="TinyBase Store Inspector",ue=["left","top","bottom","right","full"],ce="state",he="sort",me="open",be="position",ge=me,pe="editable",Ie=(...e)=>oe(e),fe=(e,t)=>j(e.sort(),t),we=(e,t)=>[!!s.useCell(ce,e,pe,t),J((s=>{t.setCell(ce,e,pe,(e=>!e)),s.preventDefault()}),[t,e])],ye="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Ce='content:url("',ve=Ce+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Te='</svg>")',ke=Ce+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Se=j([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ve+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Te)),xe=ve+"<path d='M20 20l60 60M20 80l60-60' />"+Te,Ve=ve+`<path d='${ye}' />`+Te,Re=ve+`<path d='${ye}M20 20l60 60' />`+Te,qe="*::-webkit-scrollbar",Ne=((e,t="")=>e.join(t))(ae({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[qe]:"width:0.5rem;height:0.5rem;",[qe+"-track"]:"background:#111",[qe+"-thumb"]:"background:#999;border:1px solid #111",[qe+"-thumb:hover"]:"background:#fff",[qe+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ke,...te(j(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...te(j(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ke,"header>img:nth-of-type(6)":xe,...te(j(Se,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Ve,"details[open]>summary img.done":Re,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ie} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ie} ${t}{${e}}`:""))),Le=({s:e})=>{const t=s.useValue(be,e)??1,l=s.useSetValueCallback(ge,(()=>!0),[],e);return s.useValue(ge,e)?null:F("img",{onClick:l,title:de,"data-position":t})},Me=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(ce,e,me,o),i=s.useSetCellCallback(ce,e,me,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},Ee=e=>{const t=l(e);return L(t)||t==r&&R(e)?t:void 0},ze=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),$e=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Oe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Ae,useMemo:Fe,useState:Je}=t,Pe="editable",He=(e,t)=>j(s.useTableCellIds(e,t),(t=>e+"."+t)),Be=(e,t,s)=>{const l=Ae(e,t);return s?l:void 0},De=(...e)=>Fe((()=>e),e),Qe=(e,t)=>Fe((()=>({store:e,tableId:t})),[e,t]),je=(e,t)=>Fe((()=>({queries:e,queryId:t})),[e,t]),We=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Je([e,t,l]),h=Ae((e=>{c(e),r?.(e)}),[r]),m=Be((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Ae((e=>h([i,d,e])),[h,i,d]),g=!0===o?nt:o;return[[i,d,u],m,Fe((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ue=(e,t,s)=>Fe((()=>{const a=t??e;return te(ae(E(a)?te(j(a,(e=>[e,e]))):a,((e,t)=>{return[t,{label:t,component:s,...(a=e,l(a)==n?{label:e}:e)}];var a})))}),[t,s,e]),Ge=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ke,{sort:o??[],label:"Id",onClick:r}),ae(l,(({label:e},t)=>F(Ke,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,j(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),ae(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...D(s,e,l),...a,rowId:e,cellId:l}))))))))),Ke=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:Be((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),Xe=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),ae(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...D(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},Ye=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Je(),[u,c]=Je(),[h,m]=Je(),[b,g]=Je(),[p,I]=Je();u!==e&&(d(Ee(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Ae(((e,s)=>{s(e),c(e),t(e)}),[t]),w=Ae((()=>{if(!l?.()){const e=Oe(i,r,o,n),s=Oe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:w},i):null,Oe(i,F("input",{key:i,value:h,onChange:Ae((e=>f(e[k][S]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Ae((e=>f(Number(e[k][S]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Ae((e=>f(!!e[k].checked,I)),[f])})))},Ze=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=We(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Ge,{...h,params:De(Ue(s.useTableCellIds(e,o),c,r?lt:s.CellView),Qe(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},_e=({store:e,editable:t=!1,valueComponent:l=(t?at:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,C))),F("tbody",null,j(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...D(a,t),valueId:t,store:e}))))))),et=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Ge,{...o,params:De(Ue(s.useTableCellIds(d,i),n,a?lt:s.CellView),Qe(i,d),s.useSliceRowIds(e,t,r))})},tt=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Ue([...He(c,u),...He(h,u)],n,a?lt:s.CellView),b=De(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),ae(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,j(s.useRowIds(c,u),(e=>F(Xe,{key:e,localRowId:e,params:b})))))},st=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=We(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Ge,{...c,params:De(Ue(s.useResultTableCellIds(e,o),d,s.ResultCellView),je(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},lt=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(Ye,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Pe+w,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),at=({valueId:e,store:t,className:l,showType:a})=>F(Ye,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Pe+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),nt=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=Be((()=>e(l-a)),[e,l,a],l>0),i=Be((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},ot=({indexes:e,indexesId:t,indexId:l,s:a})=>F(Me,{uniqueId:Ie("i",t,l),summary:"Index: "+l,s:a},j(s.useSliceIds(l,e),(s=>F(rt,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),rt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=Ie("i",t,s,l),[o,r]=we(n,a);return F(Me,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(et,{sliceId:l,indexId:s,indexes:e,editable:o}))},it=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F(Me,{uniqueId:Ie("i",e),summary:"Indexes: "+(e??u),s:t},W(a)?"No indexes defined":fe(a,(s=>F(ot,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},dt=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),ut=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F(Me,{uniqueId:Ie("m",e),summary:"Metrics: "+(e??u),s:t},W(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,j(a,(e=>F(dt,{metrics:l,metricId:e,key:e}))))))},ct=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=Ie("q",t,l),[o,r,i]=re(s.useCell(ce,n,he,a)??"[]"),d=s.useSetCellCallback(ce,n,he,oe,[],a);return F(Me,{uniqueId:n,summary:"Query: "+l,s:a},F(st,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ht=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F(Me,{uniqueId:Ie("q",e),summary:"Queries: "+(e??u),s:t},W(a)?"No queries defined":fe(a,(s=>F(ct,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},mt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=Ie("r",t,s),[n,o]=we(a,l);return F(Me,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(tt,{relationshipId:s,relationships:e,editable:n}))},bt=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F(Me,{uniqueId:Ie("r",e),summary:"Relationships: "+(e??u),s:t},W(a)?"No relationships defined":fe(a,(s=>F(mt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},gt=({tableId:e,store:t,storeId:l,s:a})=>{const n=Ie("t",l,e),[o,r,i]=re(s.useCell(ce,n,he,a)??"[]"),d=s.useSetCellCallback(ce,n,he,oe,[],a),[u,c]=we(n,a);return F(Me,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},F(Ze,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},pt=({store:e,storeId:t,s:l})=>{const a=Ie("v",t),[n,o]=we(a,l);return W(s.useValueIds(e))?null:F(Me,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},F(_e,{store:e,editable:n}))},It=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F(Me,{uniqueId:Ie("s",e),summary:"Store: "+(e??u),s:t},F(pt,{storeId:e,store:l,s:t}),fe(a,(s=>F(gt,{store:l,storeId:e,tableId:s,s:t,key:s}))))},ft=({s:e})=>{const t=H(null),l=H(0),[a,n]=B(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);P((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&W(u)&&q(c)&&W(h)&&q(m)&&W(b)&&q(g)&&W(p)&&q(I)&&W(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(It,{s:e}),j(u,(t=>F(It,{storeId:t,s:e,key:t}))),F(ut,{s:e}),j(h,(t=>F(ut,{metricsId:t,s:e,key:t}))),F(it,{s:e}),j(b,(t=>F(it,{indexesId:t,s:e,key:t}))),F(bt,{s:e}),j(p,(t=>F(bt,{relationshipsId:t,s:e,key:t}))),F(ht,{s:e}),j(f,(t=>F(ht,{queriesId:t,s:e,key:t}))))};class wt extends O{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const yt=({s:e})=>{const t=s.useValue(be,e)??1,l=s.useSetValueCallback(ge,(()=>!1),[],e),a=s.useSetValueCallback(be,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:de}),F("span",null,de),j(ue,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},Ct=({s:e})=>{const t=s.useValue(be,e)??1;return s.useValue(ge,e)?F("main",{"data-position":t},F(yt,{s:e}),F(wt,null,F(ft,{s:e}))):null},vt=e=>t=>{return s=(t,s)=>t+e(s),qt(t).reduce(s,0);var s},Tt=e=>e?.size??0,kt=vt(Tt),St=vt(kt),xt=vt(St),Vt=(e,t)=>e?.has(t)??!1,Rt=e=>q(e)||0==Tt(e),qt=e=>[...e?.values()??[]],Nt=e=>e.clear(),Lt=(e,t)=>e?.forEach(t),Mt=(e,t)=>e?.delete(t),Et=e=>new Map(e),zt=e=>[...e?.keys()??[]],$t=(e,t)=>e?.get(t),Ot=(e,t)=>Lt(e,((e,s)=>t(s,e))),At=(e,t,s)=>q(s)?(Mt(e,t),e):e?.set(t,s),Ft=(e,t,s)=>(Vt(e,t)||At(e,t,s()),$t(e,t)),Jt=(e,t,s,l=At)=>(ae(t,((t,l)=>s(e,l,t))),Ot(e,(s=>se(t,s)?0:l(e,s))),e),Pt=(e,t,s)=>{const l={};return Lt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Ht=(e,t,s)=>Pt(e,(e=>Pt(e,t,s)),ne),Bt=(e,t,s)=>Pt(e,(e=>Ht(e,t,s)),ne),Dt=(e,t)=>{const s=Et();return Lt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Qt=e=>Dt(e,Dt),jt=e=>Dt(e,Qt),Wt=(e,t,s,l,a=0)=>N((s?Ft:$t)(e,t[a],a>$(t)-2?s:Et),(n=>{if(a>$(t)-2)return l?.(n)&&At(e,t[a]),n;const o=Wt(n,t,s,l,a+1);return Rt(n)&&At(e,t[a]),o})),Ut=Et(),Gt=Et(),Kt="storage",Xt=globalThis.window,Yt=e=>new Set(E(e)||q(e)?e:[e]),Zt=(e,t)=>e?.add(t),_t=/^\d+$/,es=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??a+t++,t=>{_t.test(t)&&$(e)<1e3&&U(e,t)}]},ts=e=>[e,e],ss=(e,t=kt)=>t(e[0])+t(e[1]),ls=()=>[Et(),Et()],as=e=>[...e],ns=([e,t])=>e===t,os=(e,t,s)=>q(e)||!ee(e)||ne(e)||Z(e)?(s?.(),!1):(ae(e,((s,l)=>{t(s,l)||le(e,l)})),!ne(e)),rs=(e,t,s)=>At(e,t,$t(e,t)==-s?void 0:s),is=()=>{let e,t,s=!1,l=!1,n=!1,o=!1,i=0;const h=Et(),k=Et(),S=Et(),V=Et(),R=Et(),E=Et(),O=Et(),A=Et(),F=Et(),J=Et(),P=Et(),H=Et(),B=Et(),D=Et(),W=Yt(),G=Et(),K=Et(),X=Et(),Y=Et(),Z=ls(),ee=ls(),te=ls(),ie=ls(),de=ls(),ue=ls(),ce=ls(),he=ls(),me=ls(),be=ls(),ge=ls(),pe=ls(),Ie=ls(),fe=ls(),we=ls(),ye=ls(),Ce=ls(),ve=ls(),Te=ls(),ke=ls(),Se=ls(),xe=ls(),Ve=Et(),Re=ls(),[qe,Ne,Le,Me]=(e=>{let t;const[s,l]=es(),n=Et();return[(e,l,o,r=[],i=(()=>[]))=>{t??=As;const d=s(1);return At(n,d,[e,l,o,r,i]),Zt(Wt(l,o??[a],Yt),d),d},(e,s,...l)=>Q(((e,t=[a])=>{const s=[],l=(e,a)=>a==$(t)?U(s,e):null===t[a]?Lt(e,(e=>l(e,a+1))):Q([t[a],null],(t=>l($t(e,t),a+1)));return l(e,0),s})(e,s),(e=>Lt(e,(e=>$t(n,e)[0](t,...s??[],...l))))),e=>N($t(n,e),(([,t,s])=>(Wt(t,s??[a],void 0,(t=>(Mt(t,e),Rt(t)?1:0))),At(n,e),l(e),s))),e=>N($t(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=$(o);r==$(s)?e(t,...o,...a(o)):q(s[r])?Q(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),Oe=e=>{if(!os(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||(Ee(e[u])!=t&&le(e,u),0))},Ae=(t,s)=>(!e||Vt(P,s)||mt(s))&&os(t,((e,t)=>Fe(s,t,e)),(()=>mt(s))),Fe=(e,t,s,l)=>os(l?s:Be(s,e,t),((l,a)=>N(Je(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>mt(e,t))),Je=(t,s,l,a)=>e?N($t($t(P,t),l),(e=>Ee(a)!=e[d]?mt(t,s,l,a,e[u]):a),(()=>mt(t,s,l,a))):q(Ee(a))?mt(t,s,l,a):a,Pe=(e,t)=>os(t?e:De(e),((t,s)=>N(He(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>bt())),He=(e,s)=>t?N($t(B,e),(t=>Ee(s)!=t[d]?bt(e,s,t[u]):s),(()=>bt(e,s))):q(Ee(s))?bt(e,s):s,Be=(e,t,s)=>(N($t(H,t),(([l,a])=>{Lt(l,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(a,(l=>{se(e,l)||mt(t,s,l)}))})),e),De=e=>(t&&(Lt(D,((t,s)=>{se(e,s)||(e[s]=t)})),Lt(W,(t=>{se(e,t)||bt(t)}))),e),Qe=e=>Jt(P,e,((e,t,s)=>{const l=Et(),a=Yt();Jt(Ft(P,t,Et),s,((e,t,s)=>{At(e,t,s),N(s[u],(e=>At(l,t,e)),(()=>Zt(a,t)))})),At(H,t,[l,a])}),((e,t)=>{At(P,t),At(H,t)})),je=e=>Jt(B,e,((e,t,s)=>{At(B,t,s),N(s[u],(e=>At(D,t,e)),(()=>Zt(W,t)))}),((e,t)=>{At(B,t),At(D,t),Mt(W,t)})),We=e=>ne(e)?Rs():Ts(e),Ue=e=>Jt(X,e,((e,t,s)=>Ge(t,s)),((e,t)=>lt(t))),Ge=(e,t)=>Jt(Ft(X,e,(()=>(rt(e,1),At(G,e,es()),At(K,e,Et()),Et()))),t,((t,s,l)=>Ke(e,t,s,l)),((t,s)=>at(e,t,s))),Ke=(e,t,s,l,a)=>Jt(Ft(t,s,(()=>(it(e,s,1),Et()))),l,((t,l,a)=>Xe(e,s,t,l,a)),((l,n)=>nt(e,t,s,l,n,a))),Xe=(e,t,s,l,a)=>{Vt(s,l)||dt(e,t,l,1);const n=$t(s,l);a!==n&&(ut(e,t,l,n,a),At(s,l,a))},Ye=(e,t,s,l,a)=>N($t(t,s),(t=>Xe(e,s,t,l,a)),(()=>Ke(e,t,s,Be({[l]:a},e,s)))),Ze=e=>ne(e)?Ls():ks(e),_e=e=>Jt(Y,e,((e,t,s)=>et(t,s)),((e,t)=>ot(t))),et=(e,t)=>{Vt(Y,e)||ct(e,1);const s=$t(Y,e);t!==s&&(ht(e,s,t),At(Y,e,t))},tt=(e,t)=>{const[s]=$t(G,e),l=s(t);return Vt($t(X,e),l)?tt(e,t):l},st=e=>$t(X,e)??Ge(e,{}),lt=e=>Ge(e,{}),at=(e,t,s)=>{const[,l]=$t(G,e);l(s),Ke(e,t,s,{},!0)},nt=(e,t,s,l,a,n)=>{const o=$t($t(H,e)?.[0],a);if(!q(o)&&!n)return Xe(e,s,l,a,o);const r=t=>{ut(e,s,t,$t(l,t)),dt(e,s,t,-1),At(l,t)};q(o)?r(a):Ot(l,r),Rt(l)&&(it(e,s,-1),Rt(At(t,s))&&(rt(e,-1),At(X,e),At(G,e),At(K,e)))},ot=e=>{const t=$t(D,e);if(!q(t))return et(e,t);ht(e,$t(Y,e)),ct(e,-1),At(Y,e)},rt=(e,t)=>rs(h,e,t),it=(e,t,s)=>rs(Ft(V,e,Et),t,s)&&At(S,e,Ft(S,e,(()=>0))+s),dt=(e,t,s,l)=>{const a=$t(K,e),n=$t(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&rs(Ft(k,e,Et),s,l),At(a,s,n!=-l?n+l:null),rs(Ft(Ft(R,e,Et),t,Et),s,l)},ut=(e,t,s,l,a)=>Ft(Ft(Ft(E,e,Et),t,Et),s,(()=>[l,0]))[1]=a,ct=(e,t)=>rs(O,e,t),ht=(e,t,s)=>Ft(A,e,(()=>[t,0]))[1]=s,mt=(e,t,s,l,a)=>(U(Ft(Ft(Ft(F,e,Et),t,Et),s,(()=>[])),l),a),bt=(e,t,s)=>(U(Ft(J,e,(()=>[])),t),s),gt=(e,t,s)=>N($t($t($t(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(hs(e,t,s))])),pt=e=>N($t(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ts(gs(e))])),It=e=>Rt(F)||Rt(ye[e])?0:Lt(e?jt(F):F,((t,s)=>Lt(t,((t,l)=>Lt(t,((t,a)=>Ne(ye[e],[s,l,a],t))))))),ft=e=>Rt(J)||Rt(Ce[e])?0:Lt(e?Dt(J):J,((t,s)=>Ne(Ce[e],[s],t))),wt=(e,t,s,l)=>{if(!Rt(e))return Ne(t,l,(()=>Pt(e))),Ot(e,((e,t)=>Ne(s,[...l??[],e],1==t))),1},yt=e=>{const t=ps();t!=n&&Ne(Z[e],void 0,t);const s=Rt(be[e]),l=Rt(Ie[e])&&Rt(fe[e])&&Rt(me[e])&&Rt(ge[e])&&Rt(ue[e])&&Rt(ce[e])&&Rt(he[e])&&s&&Rt(te[e])&&Rt(ie[e]),a=Rt(we[e])&&Rt(pe[e])&&Rt(de[e])&&Rt(ee[e]);if(!l||!a){const t=e?[Dt(h),Qt(k),Dt(S),Qt(V),jt(R),jt(E)]:[h,k,S,V,R,E];if(!l){wt(t[0],te[e],ie[e]),Lt(t[1],((t,s)=>wt(t,ue[e],ce[e],[s]))),Lt(t[2],((t,s)=>{0!=t&&Ne(he[e],[s],_t(s))}));const l=Yt();Lt(t[3],((t,a)=>{wt(t,me[e],ge[e],[a])&&!s&&(Ne(be[e],[a,null]),Zt(l,a))})),s||Lt(t[5],((t,s)=>{if(!Vt(l,s)){const l=Yt();Lt(t,(e=>Lt(e,(([t,s],a)=>s!==t?Zt(l,a):Mt(e,a))))),Lt(l,(t=>Ne(be[e],[s,t])))}})),Lt(t[4],((t,s)=>Lt(t,((t,l)=>wt(t,Ie[e],fe[e],[s,l])))))}if(!a){let s;Lt(t[5],((t,l)=>{let a;Lt(t,((t,n)=>{let o;Lt(t,(([t,r],i)=>{r!==t&&(Ne(we[e],[l,n,i],r,t,gt),s=a=o=1)})),o&&Ne(pe[e],[l,n],gt)})),a&&Ne(de[e],[l],gt)})),s&&Ne(ee[e],void 0,gt)}}},Ct=e=>{const t=Cs();t!=o&&Ne(ve[e],void 0,t);const s=Rt(ke[e])&&Rt(Se[e]),l=Rt(xe[e])&&Rt(Te[e]);if(!s||!l){const t=e?[Dt(O),Dt(A)]:[O,A];if(s||wt(t[0],ke[e],Se[e]),!l){let s;Lt(t[1],(([t,l],a)=>{l!==t&&(Ne(xe[e],[a],l,t,pt),s=1)})),s&&Ne(Te[e],void 0,pt)}}},vt=(e,...t)=>(zs((()=>e(...j(t,x)))),As),qt=()=>[Pt(E,((e,t)=>-1===$t(h,t)?null:Pt(e,((e,s)=>-1===$t($t(V,t),s)?null:Pt(e,(([,e])=>e??null),((e,t)=>ns(t)))),ne)),ne),Pt(A,(([,e])=>e??null),((e,t)=>ns(t)))],Ut=()=>({cellsTouched:s,valuesTouched:l,changedCells:Bt(E,as,ns),invalidCells:Bt(F),changedValues:Pt(A,as,ns),invalidValues:Pt(J),changedTableIds:Pt(h),changedRowIds:Ht(V),changedCellIds:Bt(R),changedValueIds:Pt(O)}),Gt=()=>Bt(X),Kt=()=>zt(X),Xt=e=>zt($t(K,x(e))),_t=e=>Tt($t(X,x(e))),ds=e=>zt($t(X,x(e))),us=(e,t,s,l=0,a)=>{return j(z((o=$t(X,x(e)),r=(e,s)=>[q(t)?s:$t(e,x(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),j([...o?.entries()??[]],(([e,t])=>r(t,e))).sort(n)),l,q(a)?a:l+a),(([,e])=>e));var n,o,r},cs=(e,t)=>zt($t($t(X,x(e)),x(t))),hs=(e,t,s)=>$t($t($t(X,x(e)),x(t)),x(s)),ms=()=>Pt(Y),bs=()=>zt(Y),gs=e=>$t(Y,x(e)),ps=()=>!Rt(X),Is=e=>Vt(X,x(e)),fs=(e,t)=>Vt($t(K,x(e)),x(t)),ws=(e,t)=>Vt($t(X,x(e)),x(t)),ys=(e,t,s)=>Vt($t($t(X,x(e)),x(t)),x(s)),Cs=()=>!Rt(Y),vs=e=>Vt(Y,x(e)),Ts=e=>vt((()=>(e=>os(e,Ae,mt))(e)?Ue(e):0)),ks=e=>vt((()=>Pe(e)?_e(e):0)),Ss=e=>{try{We(re(e))}catch{}return As},xs=t=>vt((()=>{if((e=os(t,(e=>os(e,Oe))))&&(Qe(t),!Rt(X))){const e=Gt();Rs(),Ts(e)}})),Vs=e=>vt((()=>{if(t=(e=>os(e,Oe))(e)){const s=ms();Es(),Ls(),t=!0,je(e),ks(s)}})),Rs=()=>vt((()=>Ue({}))),qs=e=>vt((e=>Vt(X,e)?lt(e):0),e),Ns=(e,t)=>vt(((e,t)=>N($t(X,e),(s=>Vt(s,t)?at(e,s,t):0))),e,t),Ls=()=>vt((()=>_e({}))),Ms=()=>vt((()=>{Qe({}),e=!1})),Es=()=>vt((()=>{je({}),t=!1})),zs=(e,t)=>{if(-1!=i){$s();const s=e();return Os(t),s}},$s=()=>(-1!=i&&i++,1==i&&Ne(Ve,void 0,qt,Ut),As),Os=e=>(i>0&&(i--,0==i&&(s=!Rt(E),l=!Rt(A),i=1,It(1),s&&yt(1),ft(1),l&&Ct(1),e?.(qt,Ut)&&(Lt(E,((e,t)=>Lt(e,((e,s)=>Lt(e,(([e],l)=>ze(As,t,s,l,e))))))),Lt(A,(([e],t)=>$e(As,t,e))),s=l=!1),Ne(Re[0],void 0,qt,Ut),i=-1,It(0),s&&yt(0),ft(0),l&&Ct(0),Ne(Re[1],void 0,qt,Ut),i=0,s=l=!1,n=ps(),o=Cs(),Q([h,k,S,V,R,E,F,O,A,J],Nt))),As),As={getContent:()=>[Gt(),ms()],getTables:Gt,getTableIds:Kt,getTable:e=>Ht($t(X,x(e))),getTableCellIds:Xt,getRowCount:_t,getRowIds:ds,getSortedRowIds:us,getRow:(e,t)=>Pt($t($t(X,x(e)),x(t))),getCellIds:cs,getCell:hs,getValues:ms,getValueIds:bs,getValue:gs,hasTables:ps,hasTable:Is,hasTableCell:fs,hasRow:ws,hasCell:ys,hasValues:Cs,hasValue:vs,getTablesJson:()=>oe(X),getValuesJson:()=>oe(Y),getJson:()=>oe([X,Y]),getTablesSchemaJson:()=>oe(P),getValuesSchemaJson:()=>oe(B),getSchemaJson:()=>oe([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>vt((()=>{(ne(e)?Rs:Ts)(e),(ne(t)?Ls:ks)(t)})),setTables:Ts,setTable:(e,t)=>vt((e=>Ae(t,e)?Ge(e,t):0),e),setRow:(e,t,s)=>vt(((e,t)=>Fe(e,t,s)?Ke(e,st(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let l;return Fe(e,l,t)&&(e=x(e),Ke(e,st(e),l=tt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>vt(((e,t)=>{if(Fe(e,t,s,1)){const l=st(e);ae(s,((s,a)=>Ye(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>vt(((e,t,s)=>N(Je(e,t,s,M(l)?l(hs(e,t,s)):l),(l=>Ye(e,st(e),t,s,l)))),e,t,s),setValues:ks,setPartialValues:e=>vt((()=>Pe(e,1)?ae(e,((e,t)=>et(t,e))):0)),setValue:(e,t)=>vt((e=>N(He(e,M(t)?t(gs(e)):t),(t=>et(e,t)))),e),setTransactionChanges:e=>vt((()=>{ae(e[0],((e,t)=>q(e)?qs(t):ae(e,((e,s)=>q(e)?Ns(t,s):ae(e,((e,l)=>ze(As,t,s,l,e))))))),ae(e[1],((e,t)=>$e(As,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{Ze(re(e))}catch{}return As},setJson:e=>vt((()=>{try{const[t,s]=re(e);We(t),Ze(s)}catch{Ss(e)}})),setTablesSchema:xs,setValuesSchema:Vs,setSchema:(e,t)=>vt((()=>{xs(e),Vs(t)})),delTables:Rs,delTable:qs,delRow:Ns,delCell:(e,t,s,l)=>vt(((e,t,s)=>N($t(X,e),(a=>N($t(a,t),(n=>Vt(n,s)?nt(e,a,t,n,s,l):0))))),e,t,s),delValues:Ls,delValue:e=>vt((e=>Vt(Y,e)?ot(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>vt((()=>{Ms(),Es()})),transaction:zs,startTransaction:$s,finishTransaction:Os,forEachTable:e=>Lt(X,((t,s)=>e(s,(e=>Lt(t,((t,s)=>e(s,(e=>Ot(t,e))))))))),forEachTableCell:(e,t)=>Ot($t(K,x(e)),t),forEachRow:(e,t)=>Lt($t(X,x(e)),((e,s)=>t(s,(t=>Ot(e,t))))),forEachCell:(e,t,s)=>Ot($t($t(X,x(e)),x(t)),s),forEachValue:e=>Ot(Y,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=us(e,t,s,l,a);return qe((()=>{const o=us(e,t,s,l,a);var i,d,u;d=r,$(i=o)===$(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(As,e,t,s,l,a,r))}),be[o?1:0],[e,t],[Kt])},addStartTransactionListener:e=>qe(e,Ve),addWillFinishTransactionListener:e=>qe(e,Re[0]),addDidFinishTransactionListener:e=>qe(e,Re[1]),callListener:e=>(Me(e),As),delListener:e=>(Le(e),As),getListenerStats:()=>({hasTables:ss(Z),tables:ss(ee),tableIds:ss(te),hasTable:ss(ie),table:ss(de),tableCellIds:ss(ue),hasTableCell:ss(ce,St),rowCount:ss(he),rowIds:ss(me),sortedRowIds:ss(be),hasRow:ss(ge,St),row:ss(pe,St),cellIds:ss(Ie,St),hasCell:ss(fe,xt),cell:ss(we,xt),invalidCell:ss(ye,xt),hasValues:ss(ve),values:ss(Te),valueIds:ss(ke),hasValue:ss(Se),value:ss(xe),invalidValue:ss(Ce),transaction:kt(Ve)+ss(Re)}),createStore:is,addListener:qe,callListeners:Ne};return ae({[c+b]:[0,Z,[],()=>[ps()]],[b]:[0,ee],[g]:[0,te],[c+m]:[1,ie,[Kt],e=>[Is(...e)]],[m]:[1,de,[Kt]],[m+y]:[1,ue,[Kt]],[c+m+w]:[2,ce,[Kt,Xt],e=>[fs(...e)]],[I]:[1,he,[Kt]],[f]:[1,me,[Kt]],[c+p]:[2,ge,[Kt,ds],e=>[ws(...e)]],[p]:[2,pe,[Kt,ds]],[y]:[2,Ie,[Kt,ds]],[c+w]:[3,fe,[Kt,ds,cs],e=>[ys(...e)]],[w]:[3,we,[Kt,ds,cs],e=>ts(hs(...e))],InvalidCell:[3,ye],[c+v]:[0,ve,[],()=>[Cs()]],[v]:[0,Te],[T]:[0,ke],[c+C]:[1,Se,[bs],e=>[vs(...e)]],[C]:[1,xe,[bs],e=>ts(gs(e[0]))],InvalidValue:[1,Ce]},(([e,t,s,l],a)=>{As["add"+a+"Listener"]=(...a)=>qe(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,l)})),_(As)},ds=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(is),a=ue.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Ft(Ut,i,(()=>0)),Ft(Gt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();ne(s)&&ne(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(N(d,e.delListener),d=void 0,I),schedule:async(...e)=>(U($t(Gt,i),...e),await(async()=>{if(!$t(Ut,i)){for(At(Ut,i,1);!q(u=G($t(Gt,i)));)try{await u()}catch(e){n?.(e)}At(Ut,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),_(I)})(e,(async()=>re(s.getItem(t))),(async e=>s.setItem(t,oe(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>re(l.newValue)))};return Xt.addEventListener(Kt,l),l}),(e=>Xt.removeEventListener(Kt,e)),l,["getStorageName",t]))(e,ie,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),F(A,null,F("aside",{id:ie},F(Le,{s:l}),F(Ct,{s:l})),F("style",null,Ne))};e.EditableCellView=lt,e.EditableValueView=at,e.RelationshipInHtmlTable=tt,e.ResultSortedTableInHtmlTable=st,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Ge,{...a,params:De(Ue(s.useResultTableCellIds(e,t),l,s.ResultCellView),je(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=et,e.SortedTableInHtmlTable=Ze,e.SortedTablePaginator=nt,e.StoreInspector=e=>F(ds,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Ge,{...n,params:De(Ue(s.useTableCellIds(e,t),a,l?lt:s.CellView),Qe(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=_e},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",r=t(o),u="Listener",d="Result",l="Ids",n="Table",i=n+"s",a=n+l,I="Row",c=I+"Count",C=I+l,p="Sorted"+I+l,w="Cell",b=w+l,R="Value",k=R+"s",g=R+l,h=e=>null==e,m=(e,s,t)=>h(e)?t?.():s(e),L=e=>t(e)==r,y=()=>{},S=(e,s)=>e.map(s),V=Object.keys,{createContext:T,useContext:f}=s,x=T([]),v=(e,s)=>{const t=f(x);return h(e)?t[s]:L(e)?((e,s)=>m(e,(e=>e[s])))(t[s+1]??{},e):e},P=(e,s)=>{const t=v(e,s);return h(e)||L(e)?t:e},q=e=>V(f(x)[e]??{}),B=e=>P(e,0),M=e=>P(e,2),D=e=>P(e,4),F=e=>P(e,6),O=e=>P(e,8),Q=e=>P(e,10),A=e=>e.toLowerCase();A(u);const E="Transaction";A(E);const{useCallback:G,useEffect:j,useMemo:U,useRef:W,useState:z}=s,H=(e,s,t=[])=>{const o=U((()=>s(e)),[e,...t]);return j((()=>()=>o.destroy()),[o]),o},J=(e,s,t,o=[],r)=>{const[,u]=z(),d=G((()=>s?.["get"+e]?.(...o)??t),[s,...o]),l=W();return U((()=>l.current=d()),[d]),K(e,s,((...e)=>{l.current=h(r)?d():e[r],u([])}),[],o),l.current},K=(e,s,t,o=[],r=[],...d)=>{const l=[s,...r,...o,...d],n=U((()=>s?.["add"+e+u]?.(...r,t,...d)),l);j((()=>()=>s?.delListener(n)),l)},N=(e,s,t,o=[],r=y,u=[],...d)=>{const l=B(e);return G((e=>m(l,(o=>m(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},X=(e,s,t=y,o=[],...r)=>{const u=B(e);return G((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},Y=(e,s,t)=>{const o=Q(e);return G((()=>o?.[s](t)),[o,s,t])},Z=e=>J(a,B(e),[],[]),$=(e,s)=>J(C,B(s),[],[e]),_=(e,s,t,o=0,r,u)=>J(p,B(u),[],[e,s,t,o,r],6),ee=(e,s,t)=>J(b,B(t),[],[e,s]),se=(e,s,t,o)=>J(w,B(o),void 0,[e,s,t],4),te=e=>J(g,B(e),[],[]),oe=(e,s)=>J(R,B(s),void 0,[e]),re=(e,s)=>J("Metric",M(s),void 0,[e]),ue=(e,s)=>J("SliceIds",D(s),[],[e]),de=(e,s,t)=>J("Slice"+C,D(t),[],[e,s]),le=(e,s,t)=>J("RemoteRowId",F(t),void 0,[e,s]),ne=(e,s,t)=>J("Local"+C,F(t),[],[e,s]),ie=(e,s,t)=>J("Linked"+C,F(t),[],[e,s]),ae=(e,s)=>J(d+C,O(s),[],[e]),Ie=(e,s,t,o=0,r,u)=>J(d+p,O(u),[],[e,s,t,o,r],6),ce=(e,s,t)=>J(d+b,O(t),[],[e,s]),Ce=(e,s,t,o)=>J(d+w,O(o),void 0,[e,s,t]),pe=e=>J("CheckpointIds",Q(e),[[],void 0,[]]),we=(e,s)=>J("Checkpoint",Q(s),void 0,[e]),be=e=>Y(e,"goBackward"),Re=e=>Y(e,"goForward"),{PureComponent:ke,Fragment:ge,createElement:he,useCallback:me,useLayoutEffect:Le,useRef:ye,useState:Se}=s,Ve=(e,...s)=>h(e)?{}:e(...s),Te=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:fe}=s,xe=({tableId:e,store:s,rowComponent:t=De,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Be(S(l,(u=>he(t,{...Ve(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),ve=({queryId:e,queries:s,resultRowComponent:t=Ee,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Be(S(d,(r=>he(t,{...Ve(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Pe=({relationshipId:e,relationships:s,rowComponent:t=De,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[n,i,a]=Te(F(s),e),I=d(e,l,n);return Be(S(I,(e=>he(t,{...Ve(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:u}))),r,u,l)},qe=e=>({checkpoints:s,checkpointComponent:t=Ge,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=Q(s);return Be(S(e(pe(d)),(e=>he(t,{...Ve(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Be=(e,s,t,o)=>{const r=h(s)||!Array.isArray(e)?e:S(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Me=({tableId:e,rowId:s,cellId:t,store:r,debugIds:u})=>Be(o+(se(e,s,t,r)??o),void 0,u,t),De=({tableId:e,rowId:s,store:t,cellComponent:o=Me,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Be(S(((e,s,t,o)=>{const r=ee(s,t,o);return e??r})(u,e,s,t),(u=>he(o,{...Ve(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),Fe=e=>xe(e,$(e.tableId,e.store)),Oe=({valueId:e,store:s,debugIds:t})=>Be(o+(oe(e,s)??o),void 0,t,e),Qe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=De,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,n,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(D(t),e),a=de(e,s,l);return Be(S(a,(e=>he(o,{...Ve(r,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),u,d,s)},Ae=({queryId:e,rowId:s,cellId:t,queries:r,debugIds:u})=>Be(o+(Ce(e,s,t,r)??o),void 0,u,t),Ee=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Ae,getResultCellComponentProps:r,separator:u,debugIds:d})=>Be(S(ce(e,s,t),(u=>he(o,{...Ve(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Ge=({checkpoints:e,checkpointId:s,debugIds:t})=>Be(we(s,e)??o,void 0,t,s),je=qe((e=>e[0])),Ue=qe((e=>h(e[1])?[]:[e[1]])),We=qe((e=>e[2]));e.BackwardCheckpointsView=je,e.CellView=Me,e.CheckpointView=Ge,e.CurrentCheckpointView=Ue,e.ForwardCheckpointsView=We,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Qe,getSliceComponentProps:o,separator:r,debugIds:u})=>Be(S(ue(e,s),(r=>he(t,{...Ve(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),e.LinkedRowsView=e=>Pe(e,ie,e.firstRowId),e.LocalRowsView=e=>Pe(e,ne,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>Be(re(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:C})=>{const p=s.useContext(x);return he(x.Provider,{value:fe((()=>[e??p[0],{...p[1],...t},o??p[2],{...p[3],...r},u??p[4],{...p[5],...d},l??p[6],{...p[7],...n},i??p[8],{...p[9],...a},I??p[10],{...p[11],...c}]),[e,t,o,r,u,d,l,n,i,a,I,c,p])},C)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=De,getRowComponentProps:r,debugIds:u})=>{const[d,l,,n]=Te(F(t),e),i=le(e,s,d);return Be(h(n)||h(i)?null:he(o,{...Ve(r,i),key:i,tableId:n,rowId:i,store:l,debugIds:u}),void 0,u,s)},e.ResultCellView=Ae,e.ResultRowView=Ee,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ve(r,Ie(r.queryId,e,s,t,o,r.queries)),e.ResultTableView=e=>ve(e,ae(e.queryId,e.queries)),e.RowView=De,e.SliceView=Qe,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>xe(r,_(r.tableId,e,s,t,o,r.store)),e.TableView=Fe,e.TablesView=({store:e,tableComponent:s=Fe,getTableComponentProps:t,separator:o,debugIds:r})=>Be(S(Z(e),(o=>he(s,{...Ve(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),e.ValueView=Oe,e.ValuesView=({store:e,valueComponent:s=Oe,getValueComponentProps:t,separator:o,debugIds:r})=>Be(S(te(e),(o=>he(s,{...Ve(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),e.useAddRowCallback=(e,s,t=[],o,r=y,u=[],d=!0)=>{const l=B(o);return G((t=>m(l,(o=>m(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},e.useCell=se,e.useCellIds=ee,e.useCellIdsListener=(e,s,t,o,r,u)=>K(b,B(u),t,o,[e,s],r),e.useCellListener=(e,s,t,o,r,u,d)=>K(w,B(d),o,r,[e,s,t],u),e.useCheckpoint=we,e.useCheckpointIds=pe,e.useCheckpointIdsListener=(e,s,t)=>K("CheckpointIds",Q(t),e,s),e.useCheckpointListener=(e,s,t,o)=>K("Checkpoint",Q(o),s,t,[e]),e.useCheckpoints=e=>v(e,10),e.useCheckpointsIds=()=>q(11),e.useCheckpointsOrCheckpointsById=Q,e.useCreateCheckpoints=(e,s,t)=>H(e,s,t),e.useCreateIndexes=(e,s,t)=>H(e,s,t),e.useCreateMetrics=(e,s,t)=>H(e,s,t),e.useCreatePersister=(e,s,t=[],o,r=[],u,d=[])=>{const[,l]=z(),n=U((()=>s(e)),[e,...t]);return j((()=>((async()=>{o&&(await o(n),l([]))})(),()=>{n?.destroy(),u?.(n)})),[n,...r,...d]),n},e.useCreateQueries=(e,s,t)=>H(e,s,t),e.useCreateRelationships=(e,s,t)=>H(e,s,t),e.useCreateStore=(e,s=[])=>U(e,s),e.useDelCellCallback=(e,s,t,o,r,u,d)=>X(r,w,u,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,r)=>X(t,I,o,r,e,s),e.useDelTableCallback=(e,s,t,o)=>X(s,n,t,o,e),e.useDelTablesCallback=(e,s,t)=>X(e,i,s,t),e.useDelValueCallback=(e,s,t,o)=>X(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>X(e,k,s,t),e.useDidFinishTransactionListener=(e,s,t)=>K("DidFinish"+E,B(t),e,s),e.useGoBackwardCallback=be,e.useGoForwardCallback=Re,e.useGoToCallback=(e,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>m(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},e.useIndexIds=e=>J("IndexIds",D(e),[]),e.useIndexes=e=>v(e,4),e.useIndexesIds=()=>q(5),e.useIndexesOrIndexesById=D,e.useLinkedRowIds=ie,e.useLinkedRowIdsListener=(e,s,t,o,r)=>K("Linked"+C,F(r),t,o,[e,s]),e.useLocalRowIds=ne,e.useLocalRowIdsListener=(e,s,t,o,r)=>K("Local"+C,F(r),t,o,[e,s]),e.useMetric=re,e.useMetricIds=e=>J("MetricIds",M(e),[]),e.useMetricListener=(e,s,t,o)=>K("Metric",M(o),s,t,[e]),e.useMetrics=e=>v(e,2),e.useMetricsIds=()=>q(3),e.useMetricsOrMetricsById=M,e.useQueries=e=>v(e,8),e.useQueriesIds=()=>q(9),e.useQueriesOrQueriesById=O,e.useQueryIds=e=>J("QueryIds",O(e),[]),e.useRedoInformation=e=>{const s=Q(e),[,,[t]]=pe(s);return[!h(t),Re(s),t,m(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>J("RelationshipIds",F(e),[]),e.useRelationships=e=>v(e,6),e.useRelationshipsIds=()=>q(7),e.useRelationshipsOrRelationshipsById=F,e.useRemoteRowId=le,e.useRemoteRowIdListener=(e,s,t,o,r)=>K("RemoteRowId",F(r),t,o,[e,s]),e.useResultCell=Ce,e.useResultCellIds=ce,e.useResultCellIdsListener=(e,s,t,o,r)=>K(d+b,O(r),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,r,u)=>K(d+w,O(u),o,r,[e,s,t]),e.useResultRow=(e,s,t)=>J(d+I,O(t),{},[e,s]),e.useResultRowCount=(e,s)=>J(d+c,O(s),[],[e]),e.useResultRowCountListener=(e,s,t,o)=>K(d+c,O(o),s,t,[e]),e.useResultRowIds=ae,e.useResultRowIdsListener=(e,s,t,o)=>K(d+C,O(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,r)=>K(d+I,O(r),t,o,[e,s]),e.useResultSortedRowIds=Ie,e.useResultSortedRowIdsListener=(e,s,t,o,r,u,l,n)=>K(d+p,O(n),u,l,[e,s,t,o,r]),e.useResultTable=(e,s)=>J(d+n,O(s),{},[e]),e.useResultTableCellIds=(e,s)=>J(d+n+b,O(s),[],[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>K(d+n+b,O(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>K(d+n,O(o),s,t,[e]),e.useRow=(e,s,t)=>J(I,B(t),{},[e,s]),e.useRowCount=(e,s)=>J(c,B(s),[],[e]),e.useRowCountListener=(e,s,t,o,r)=>K(c,B(r),s,t,[e],o),e.useRowIds=$,e.useRowIdsListener=(e,s,t,o,r)=>K(C,B(r),s,t,[e],o),e.useRowListener=(e,s,t,o,r,u)=>K(I,B(u),t,o,[e,s],r),e.useSetCellCallback=(e,s,t,o,r,u,d,l)=>N(u,w,o,r,d,l,e,s,t),e.useSetCheckpointCallback=(e=y,s=[],t,o=y,r=[])=>{const u=Q(t);return G((s=>m(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},e.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>N(r,"PartialRow",t,o,u,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,r)=>N(t,"PartialValues",e,s,o,r),e.useSetRowCallback=(e,s,t,o,r,u,d)=>N(r,I,t,o,u,d,e,s),e.useSetTableCallback=(e,s,t,o,r,u)=>N(o,n,s,t,r,u,e),e.useSetTablesCallback=(e,s,t,o,r)=>N(t,i,e,s,o,r),e.useSetValueCallback=(e,s,t,o,r,u)=>N(o,R,s,t,r,u,e),e.useSetValuesCallback=(e,s,t,o,r)=>N(t,k,e,s,o,r),e.useSliceIds=ue,e.useSliceIdsListener=(e,s,t,o)=>K("SliceIds",D(o),s,t,[e]),e.useSliceRowIds=de,e.useSliceRowIdsListener=(e,s,t,o,r)=>K("Slice"+C,D(r),t,o,[e,s]),e.useSortedRowIds=_,e.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,n)=>K(p,B(n),u,d,[e,s,t,o,r],l),e.useStartTransactionListener=(e,s,t)=>K("Start"+E,B(t),e,s),e.useStore=e=>v(e,0),e.useStoreIds=()=>q(1),e.useStoreOrStoreById=B,e.useTable=(e,s)=>J(n,B(s),{},[e]),e.useTableCellIds=(e,s)=>J(n+b,B(s),[],[e]),e.useTableCellIdsListener=(e,s,t,o,r)=>K(n+b,B(r),s,t,[e],o),e.useTableIds=Z,e.useTableIdsListener=(e,s,t,o)=>K(a,B(o),e,s,[],t),e.useTableListener=(e,s,t,o,r)=>K(n,B(r),s,t,[e],o),e.useTables=e=>J(i,B(e),{}),e.useTablesListener=(e,s,t,o)=>K(i,B(o),e,s,[],t),e.useUndoInformation=e=>{const s=Q(e),[t,r]=pe(s);return[(u=t,!(0==u.length)),be(s),r,m(r,(e=>s?.getCheckpoint(e)))??o];var u},e.useValue=oe,e.useValueIds=te,e.useValueIdsListener=(e,s,t,o)=>K(g,B(o),e,s,[],t),e.useValueListener=(e,s,t,o,r)=>K(R,B(r),s,t,[e],o),e.useValues=e=>J(k,B(e),{}),e.useValuesListener=(e,s,t,o)=>K(k,B(o),e,s,[],t),e.useWillFinishTransactionListener=(e,s,t)=>K("WillFinish"+E,B(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",u=t(o),r="Listener",l="Result",d="Has",n="has",i="Ids",a="Table",c=a+"s",I=a+i,C="Row",b=C+"Count",p=C+i,w="Sorted"+C+i,R="Cell",k=R+i,g="Value",L=g+"s",h=g+i,m=e=>null==e,y=(e,s,t)=>m(e)?t?.():s(e),T=e=>t(e)==u,V=()=>{},S=(e,s)=>e.map(s),f=Object.keys,{createContext:x,useContext:v}=s,P=x([]),q=(e,s)=>{const t=v(P);return m(e)?t[s]:T(e)?((e,s)=>y(e,(e=>e[s])))(t[s+1]??{},e):e},B=(e,s)=>{const t=q(e,s);return m(e)||T(e)?t:e},H=e=>f(v(P)[e]??{}),M=e=>B(e,0),D=e=>B(e,2),F=e=>B(e,4),O=e=>B(e,6),Q=e=>B(e,8),E=e=>B(e,10),A=e=>e.toLowerCase();A(r);const G="Transaction";A(G);const{useCallback:j,useEffect:U,useMemo:W,useLayoutEffect:z,useRef:J,useState:K}=s,N=[],X={},Y=[[],void 0,[]],Z=(e,s,t=N)=>{const o=W((()=>s(e)),[e,...t]);return U((()=>()=>o.destroy()),[o]),o},$=(e,s,t,o=N,u,r="get",l="")=>{const[,d]=K(),n=j((()=>s?.[r+e]?.(...o)??t),[s,e,...o,t]),i=J();return W((()=>i.current=n()),[n]),_(l+e,s,((...e)=>{i.current=m(u)?n():e[u],d([])}),[n,u],o),i.current},_=(e,s,t,o=N,u=N,...l)=>z((()=>{const o=s?.["add"+e+r]?.(...u,t,...l);return()=>s?.delListener(o)}),[s,e,...u,...o,...l]),ee=(e,s,t,o=N,u=V,r=N,...l)=>{const d=M(e);return j((e=>y(d,(o=>y(t(e,o),(e=>u(o["set"+s](...l,e),e)))))),[d,s,...o,...r,...l])},se=(e,s,t=V,o=N,...u)=>{const r=M(e);return j((()=>t(r?.["del"+s](...u))),[r,s,...o,...u])},te=(e,s,t)=>{const o=E(e);return j((()=>o?.[s](t)),[o,s,t])},oe=e=>$(I,M(e),N),ue=(e,s)=>$(p,M(s),N,[e]),re=(e,s,t,o=0,u,r)=>$(w,M(r),N,[e,s,t,o,u],6),le=(e,s,t)=>$(k,M(t),N,[e,s]),de=(e,s,t,o)=>$(R,M(o),void 0,[e,s,t],4),ne=e=>$(h,M(e),N),ie=(e,s)=>$(g,M(s),void 0,[e]),ae=(e,s)=>$("Metric",D(s),void 0,[e]),ce=(e,s)=>$("SliceIds",F(s),N,[e]),Ie=(e,s,t)=>$("Slice"+p,F(t),N,[e,s]),Ce=(e,s,t)=>$("RemoteRowId",O(t),void 0,[e,s]),be=(e,s,t)=>$("Local"+p,O(t),N,[e,s]),pe=(e,s,t)=>$("Linked"+p,O(t),N,[e,s]),we=(e,s)=>$(l+p,Q(s),N,[e]),Re=(e,s,t,o=0,u,r)=>$(l+w,Q(r),N,[e,s,t,o,u],6),ke=(e,s,t)=>$(l+k,Q(t),N,[e,s]),ge=(e,s,t,o)=>$(l+R,Q(o),void 0,[e,s,t]),Le=e=>$("CheckpointIds",E(e),Y),he=(e,s)=>$("Checkpoint",E(s),void 0,[e]),me=e=>te(e,"goBackward"),ye=e=>te(e,"goForward"),{PureComponent:Te,Fragment:Ve,createElement:Se,useCallback:fe,useLayoutEffect:xe,useRef:ve,useState:Pe}=s,qe=(e,...s)=>m(e)?{}:e(...s),Be=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:He}=s,Me=({tableId:e,store:s,rowComponent:t=Ae,getRowComponentProps:o,customCellIds:u,separator:r,debugIds:l},d)=>Qe(S(d,(r=>Se(t,{...qe(o,r),key:r,tableId:e,rowId:r,customCellIds:u,store:s,debugIds:l}))),r,l,e),De=({queryId:e,queries:s,resultRowComponent:t=ze,getResultRowComponentProps:o,separator:u,debugIds:r},l)=>Qe(S(l,(u=>Se(t,{...qe(o,u),key:u,queryId:e,rowId:u,queries:s,debugIds:r}))),u,r,e),Fe=({relationshipId:e,relationships:s,rowComponent:t=Ae,getRowComponentProps:o,separator:u,debugIds:r},l,d)=>{const[n,i,a]=Be(O(s),e),c=l(e,d,n);return Qe(S(c,(e=>Se(t,{...qe(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),u,r,d)},Oe=e=>({checkpoints:s,checkpointComponent:t=Je,getCheckpointComponentProps:o,separator:u,debugIds:r})=>{const l=E(s);return Qe(S(e(Le(l)),(e=>Se(t,{...qe(o,e),key:e,checkpoints:l,checkpointId:e,debugIds:r}))),u)},Qe=(e,s,t,o)=>{const u=m(s)||!Array.isArray(e)?e:S(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",u,"}"]:u},Ee=({tableId:e,rowId:s,cellId:t,store:u,debugIds:r})=>Qe(o+(de(e,s,t,u)??o),void 0,r,t),Ae=({tableId:e,rowId:s,store:t,cellComponent:o=Ee,getCellComponentProps:u,customCellIds:r,separator:l,debugIds:d})=>Qe(S(((e,s,t,o)=>{const u=le(s,t,o);return e??u})(r,e,s,t),(r=>Se(o,{...qe(u,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),l,d,s),Ge=e=>Me(e,ue(e.tableId,e.store)),je=({valueId:e,store:s,debugIds:t})=>Qe(o+(ie(e,s)??o),void 0,t,e),Ue=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Ae,getRowComponentProps:u,separator:r,debugIds:l})=>{const[d,n,i]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(F(t),e),a=Ie(e,s,d);return Qe(S(a,(e=>Se(o,{...qe(u,e),key:e,tableId:i,rowId:e,store:n,debugIds:l}))),r,l,s)},We=({queryId:e,rowId:s,cellId:t,queries:u,debugIds:r})=>Qe(o+(ge(e,s,t,u)??o),void 0,r,t),ze=({queryId:e,rowId:s,queries:t,resultCellComponent:o=We,getResultCellComponentProps:u,separator:r,debugIds:l})=>Qe(S(ke(e,s,t),(r=>Se(o,{...qe(u,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:l}))),r,l,s),Je=({checkpoints:e,checkpointId:s,debugIds:t})=>Qe(he(s,e)??o,void 0,t,s),Ke=Oe((e=>e[0])),Ne=Oe((e=>m(e[1])?[]:[e[1]])),Xe=Oe((e=>e[2]));e.BackwardCheckpointsView=Ke,e.CellView=Ee,e.CheckpointView=Je,e.CurrentCheckpointView=Ne,e.ForwardCheckpointsView=Xe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=Ue,getSliceComponentProps:o,separator:u,debugIds:r})=>Qe(S(ce(e,s),(u=>Se(t,{...qe(o,u),key:u,indexId:e,sliceId:u,indexes:s,debugIds:r}))),u,r,e),e.LinkedRowsView=e=>Fe(e,pe,e.firstRowId),e.LocalRowsView=e=>Fe(e,be,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>Qe(ae(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:u,indexes:r,indexesById:l,relationships:d,relationshipsById:n,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:C})=>{const b=s.useContext(P);return Se(P.Provider,{value:He((()=>[e??b[0],{...b[1],...t},o??b[2],{...b[3],...u},r??b[4],{...b[5],...l},d??b[6],{...b[7],...n},i??b[8],{...b[9],...a},c??b[10],{...b[11],...I}]),[e,t,o,u,r,l,d,n,i,a,c,I,b])},C)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Ae,getRowComponentProps:u,debugIds:r})=>{const[l,d,,n]=Be(O(t),e),i=Ce(e,s,l);return Qe(m(n)||m(i)?null:Se(o,{...qe(u,i),key:i,tableId:n,rowId:i,store:d,debugIds:r}),void 0,r,s)},e.ResultCellView=We,e.ResultRowView=ze,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...u})=>De(u,Re(u.queryId,e,s,t,o,u.queries)),e.ResultTableView=e=>De(e,we(e.queryId,e.queries)),e.RowView=Ae,e.SliceView=Ue,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...u})=>Me(u,re(u.tableId,e,s,t,o,u.store)),e.TableView=Ge,e.TablesView=({store:e,tableComponent:s=Ge,getTableComponentProps:t,separator:o,debugIds:u})=>Qe(S(oe(e),(o=>Se(s,{...qe(t,o),key:o,tableId:o,store:e,debugIds:u}))),o),e.ValueView=je,e.ValuesView=({store:e,valueComponent:s=je,getValueComponentProps:t,separator:o,debugIds:u})=>Qe(S(ne(e),(o=>Se(s,{...qe(t,o),key:o,valueId:o,store:e,debugIds:u}))),o),e.useAddRowCallback=(e,s,t=N,o,u=V,r=N,l=!0)=>{const d=M(o);return j((t=>y(d,(o=>y(s(t,o),(s=>u(o.addRow(e,s,l),o,s)))))),[d,e,...t,...r,l])},e.useCell=de,e.useCellIds=le,e.useCellIdsListener=(e,s,t,o,u,r)=>_(k,M(r),t,o,[e,s],u),e.useCellListener=(e,s,t,o,u,r,l)=>_(R,M(l),o,u,[e,s,t],r),e.useCheckpoint=he,e.useCheckpointIds=Le,e.useCheckpointIdsListener=(e,s,t)=>_("CheckpointIds",E(t),e,s),e.useCheckpointListener=(e,s,t,o)=>_("Checkpoint",E(o),s,t,[e]),e.useCheckpoints=e=>q(e,10),e.useCheckpointsIds=()=>H(11),e.useCheckpointsOrCheckpointsById=E,e.useCreateCheckpoints=(e,s,t)=>Z(e,s,t),e.useCreateIndexes=(e,s,t)=>Z(e,s,t),e.useCreateMetrics=(e,s,t)=>Z(e,s,t),e.useCreatePersister=(e,s,t=N,o,u=N,r,l=N)=>{const[,d]=K(),n=W((()=>s(e)),[e,...t]);return U((()=>((async()=>{o&&(await o(n),d([]))})(),()=>{n?.destroy(),r?.(n)})),[n,...u,...l]),n},e.useCreateQueries=(e,s,t)=>Z(e,s,t),e.useCreateRelationships=(e,s,t)=>Z(e,s,t),e.useCreateStore=(e,s=N)=>W(e,s),e.useDelCellCallback=(e,s,t,o,u,r,l)=>se(u,R,r,l,e,s,t,o),e.useDelRowCallback=(e,s,t,o,u)=>se(t,C,o,u,e,s),e.useDelTableCallback=(e,s,t,o)=>se(s,a,t,o,e),e.useDelTablesCallback=(e,s,t)=>se(e,c,s,t),e.useDelValueCallback=(e,s,t,o)=>se(s,g,t,o,e),e.useDelValuesCallback=(e,s,t)=>se(e,L,s,t),e.useDidFinishTransactionListener=(e,s,t)=>_("DidFinish"+G,M(t),e,s),e.useGoBackwardCallback=me,e.useGoForwardCallback=ye,e.useGoToCallback=(e,s=N,t,o=V,u=N)=>{const r=E(t);return j((s=>y(r,(t=>y(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...u])},e.useHasCell=(e,s,t,o)=>$(R,M(o),!1,[e,s,t],4,n,d),e.useHasCellListener=(e,s,t,o,u,r,l)=>_(d+R,M(l),o,u,[e,s,t],r),e.useHasRow=(e,s,t)=>$(C,M(t),!1,[e,s],3,n,d),e.useHasRowListener=(e,s,t,o,u,r)=>_(d+C,M(r),t,o,[e,s],u),e.useHasTable=(e,s)=>$(a,M(s),!1,[e],2,n,d),e.useHasTableCell=(e,s,t)=>$(a+R,M(t),!1,[e,s],3,n,d),e.useHasTableCellListener=(e,s,t,o,u,r)=>_(d+a+R,M(r),t,o,[e,s],u),e.useHasTableListener=(e,s,t,o,u)=>_(d+a,M(u),s,t,[e],o),e.useHasTables=e=>$(c,M(e),!1,[],1,n,d),e.useHasTablesListener=(e,s,t,o)=>_(d+c,M(o),e,s,[],t),e.useHasValue=(e,s)=>$(g,M(s),!1,[e],2,n,d),e.useHasValueListener=(e,s,t,o,u)=>_(d+g,M(u),s,t,[e],o),e.useHasValues=e=>$(L,M(e),!1,[],1,n,d),e.useHasValuesListener=(e,s,t,o)=>_(d+L,M(o),e,s,[],t),e.useIndexIds=e=>$("IndexIds",F(e),N),e.useIndexes=e=>q(e,4),e.useIndexesIds=()=>H(5),e.useIndexesOrIndexesById=F,e.useLinkedRowIds=pe,e.useLinkedRowIdsListener=(e,s,t,o,u)=>_("Linked"+p,O(u),t,o,[e,s]),e.useLocalRowIds=be,e.useLocalRowIdsListener=(e,s,t,o,u)=>_("Local"+p,O(u),t,o,[e,s]),e.useMetric=ae,e.useMetricIds=e=>$("MetricIds",D(e),N),e.useMetricListener=(e,s,t,o)=>_("Metric",D(o),s,t,[e]),e.useMetrics=e=>q(e,2),e.useMetricsIds=()=>H(3),e.useMetricsOrMetricsById=D,e.useQueries=e=>q(e,8),e.useQueriesIds=()=>H(9),e.useQueriesOrQueriesById=Q,e.useQueryIds=e=>$("QueryIds",Q(e),N),e.useRedoInformation=e=>{const s=E(e),[,,[t]]=Le(s);return[!m(t),ye(s),t,y(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationshipIds=e=>$("RelationshipIds",O(e),N),e.useRelationships=e=>q(e,6),e.useRelationshipsIds=()=>H(7),e.useRelationshipsOrRelationshipsById=O,e.useRemoteRowId=Ce,e.useRemoteRowIdListener=(e,s,t,o,u)=>_("RemoteRowId",O(u),t,o,[e,s]),e.useResultCell=ge,e.useResultCellIds=ke,e.useResultCellIdsListener=(e,s,t,o,u)=>_(l+k,Q(u),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,u,r)=>_(l+R,Q(r),o,u,[e,s,t]),e.useResultRow=(e,s,t)=>$(l+C,Q(t),X,[e,s]),e.useResultRowCount=(e,s)=>$(l+b,Q(s),0,[e]),e.useResultRowCountListener=(e,s,t,o)=>_(l+b,Q(o),s,t,[e]),e.useResultRowIds=we,e.useResultRowIdsListener=(e,s,t,o)=>_(l+p,Q(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,u)=>_(l+C,Q(u),t,o,[e,s]),e.useResultSortedRowIds=Re,e.useResultSortedRowIdsListener=(e,s,t,o,u,r,d,n)=>_(l+w,Q(n),r,d,[e,s,t,o,u]),e.useResultTable=(e,s)=>$(l+a,Q(s),X,[e]),e.useResultTableCellIds=(e,s)=>$(l+a+k,Q(s),N,[e]),e.useResultTableCellIdsListener=(e,s,t,o)=>_(l+a+k,Q(o),s,t,[e]),e.useResultTableListener=(e,s,t,o)=>_(l+a,Q(o),s,t,[e]),e.useRow=(e,s,t)=>$(C,M(t),X,[e,s]),e.useRowCount=(e,s)=>$(b,M(s),0,[e]),e.useRowCountListener=(e,s,t,o,u)=>_(b,M(u),s,t,[e],o),e.useRowIds=ue,e.useRowIdsListener=(e,s,t,o,u)=>_(p,M(u),s,t,[e],o),e.useRowListener=(e,s,t,o,u,r)=>_(C,M(r),t,o,[e,s],u),e.useSetCellCallback=(e,s,t,o,u,r,l,d)=>ee(r,R,o,u,l,d,e,s,t),e.useSetCheckpointCallback=(e=V,s=N,t,o=V,u=N)=>{const r=E(t);return j((s=>y(r,(t=>{const u=e(s);o(t.addCheckpoint(u),t,u)}))),[r,...s,...u])},e.useSetPartialRowCallback=(e,s,t,o,u,r,l)=>ee(u,"PartialRow",t,o,r,l,e,s),e.useSetPartialValuesCallback=(e,s,t,o,u)=>ee(t,"PartialValues",e,s,o,u),e.useSetRowCallback=(e,s,t,o,u,r,l)=>ee(u,C,t,o,r,l,e,s),e.useSetTableCallback=(e,s,t,o,u,r)=>ee(o,a,s,t,u,r,e),e.useSetTablesCallback=(e,s,t,o,u)=>ee(t,c,e,s,o,u),e.useSetValueCallback=(e,s,t,o,u,r)=>ee(o,g,s,t,u,r,e),e.useSetValuesCallback=(e,s,t,o,u)=>ee(t,L,e,s,o,u),e.useSliceIds=ce,e.useSliceIdsListener=(e,s,t,o)=>_("SliceIds",F(o),s,t,[e]),e.useSliceRowIds=Ie,e.useSliceRowIdsListener=(e,s,t,o,u)=>_("Slice"+p,F(u),t,o,[e,s]),e.useSortedRowIds=re,e.useSortedRowIdsListener=(e,s,t,o,u,r,l,d,n)=>_(w,M(n),r,l,[e,s,t,o,u],d),e.useStartTransactionListener=(e,s,t)=>_("Start"+G,M(t),e,s),e.useStore=e=>q(e,0),e.useStoreIds=()=>H(1),e.useStoreOrStoreById=M,e.useTable=(e,s)=>$(a,M(s),X,[e]),e.useTableCellIds=(e,s)=>$(a+k,M(s),N,[e]),e.useTableCellIdsListener=(e,s,t,o,u)=>_(a+k,M(u),s,t,[e],o),e.useTableIds=oe,e.useTableIdsListener=(e,s,t,o)=>_(I,M(o),e,s,N,t),e.useTableListener=(e,s,t,o,u)=>_(a,M(u),s,t,[e],o),e.useTables=e=>$(c,M(e),X),e.useTablesListener=(e,s,t,o)=>_(c,M(o),e,s,N,t),e.useUndoInformation=e=>{const s=E(e),[t,u]=Le(s);return[(r=t,!(0==r.length)),me(s),u,y(u,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=ie,e.useValueIds=ne,e.useValueIdsListener=(e,s,t,o)=>_(h,M(o),e,s,N,t),e.useValueListener=(e,s,t,o,u)=>_(g,M(u),s,t,[e],o),e.useValues=e=>$(L,M(e),X),e.useValuesListener=(e,s,t,o)=>_(L,M(o),e,s,N,t),e.useWillFinishTransactionListener=(e,s,t)=>_("WillFinish"+G,M(t),e,s)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="",n=l(t),s=l(!0),a=l(0),o=l(l),r="type",u="default",i="Ids",d="Table",c=d+"s",h=d+i,v="Row",f=v+"Count",g=v+i,T="Cell",b=T+i,V="Value",C=V+"s",S=V+i,y="Has",p=e=>t+e,m=isFinite,w=e=>null==e,I=(e,l,t)=>w(e)?null==t?void 0:t():l(e),R=e=>e==n||e==s,J=e=>l(e)==o,L=(e,l,t)=>e.slice(l,t),E=e=>e.length,F=(e,l)=>e.forEach(l),O=(e,l)=>e.map(l),x=(e,...l)=>e.push(...l),z=Object,P=e=>z.getPrototypeOf(e),j=z.keys,k=z.isFrozen,A=z.freeze,M=e=>!w(e)&&I(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),N=(e,l)=>!w(((e,l)=>I(e,(e=>e[l])))(e,l)),B=(e,l)=>(delete e[l],e),D=(e,l)=>O(z.entries(e),(([e,t])=>l(t,e))),H=e=>M(e)&&0==(e=>E(j(e)))(e),W=e=>{var l;return null!=(l=null==e?void 0:e.size)?l:0},$=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},q=e=>w(e)||0==W(e),G=e=>e.clear(),K=(e,l)=>null==e?void 0:e.forEach(l),Q=(e,l)=>null==e?void 0:e.delete(l),U=e=>new Map(e),X=e=>{var l;return[...null!=(l=null==e?void 0:e.keys())?l:[]]},Y=(e,l)=>null==e?void 0:e.get(l),Z=(e,l)=>K(e,((e,t)=>l(t,e))),_=(e,l,t)=>w(t)?(Q(e,l),e):null==e?void 0:e.set(l,t),ee=(e,l,t)=>($(e,l)||_(e,l,t()),Y(e,l)),le=(e,l,t,n=_)=>(D(l,((l,n)=>t(e,n,l))),Z(e,(t=>N(l,t)?0:n(e,t))),e),te=(e,l,t)=>{const n={};return K(e,((e,s)=>{const a=l?l(e,s):e;!(null==t?void 0:t(a,e))&&(n[s]=a)})),n},ne=(e,l,t)=>te(e,(e=>te(e,l,t)),H),se=(e,l,t)=>te(e,(e=>ne(e,l,t)),H),ae=(e,l)=>{const t=U();return K(e,((e,n)=>{var s;return t.set(n,null!=(s=null==l?void 0:l(e))?s:e)})),t},oe=e=>ae(e,ae),re=e=>ae(e,oe),ue=(e,l,t,n,s=0)=>I((t?ee:Y)(e,l[s],s>E(l)-2?t:U),(a=>{if(s>E(l)-2)return(null==n?void 0:n(a))&&_(e,l[s]),a;const o=ue(a,l,t,n,s+1);return q(a)&&_(e,l[s]),o})),ie=e=>new Set(Array.isArray(e)||w(e)?e:[e]),de=(e,l)=>null==e?void 0:e.add(l),ce=/^\d+$/,he=()=>{const e=[];let l=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:t+l++},l=>{ce.test(l)&&E(e)<1e3&&x(e,l)}]},ve=e=>[e,e],fe=()=>[U(),U()],ge=e=>[...e],Te=([e,l])=>e===l,be=e=>{const t=l(e);return R(t)||t==a&&m(e)?t:void 0},Ve=(e,l,t,n,s)=>w(s)?e.delCell(l,t,n,!0):e.setCell(l,t,n,s),Ce=(e,l,t)=>w(t)?e.delValue(l):e.setValue(l,t),Se=e=>JSON.stringify(e,((e,l)=>l instanceof Map?z.fromEntries([...l]):l)),ye=JSON.parse,pe=(e,l,t)=>w(e)||!M(e)||H(e)||k(e)?(null==t||t(),!1):(D(e,((t,n)=>{l(t,n)||B(e,n)})),!H(e)),me=(e,l,t)=>_(e,l,Y(e,l)==-t?void 0:t),we=()=>{let e,l,n=!1,s=!1,o=!1,i=!1,m=0;const z=U(),P=U(),j=U(),k=U(),M=U(),ce=U(),Ie=U(),Re=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),xe=U(),ze=ie(),Pe=U(),je=U(),ke=U(),Ae=U(),Me=fe(),Ne=fe(),Be=fe(),De=fe(),He=fe(),We=fe(),$e=fe(),qe=fe(),Ge=fe(),Ke=fe(),Qe=fe(),Ue=fe(),Xe=fe(),Ye=fe(),Ze=fe(),_e=fe(),el=fe(),ll=fe(),tl=fe(),nl=fe(),sl=fe(),al=fe(),ol=U(),rl=fe(),[ul,il,dl,cl]=(e=>{let l;const[n,s]=he(),a=U();return[(e,s,o,r=[],u=(()=>[]))=>{null!=l||(l=zt);const i=n(1);return _(a,i,[e,s,o,r,u]),de(ue(s,null!=o?o:[t],ie),i),i},(e,n,...s)=>F(((e,l=[t])=>{const n=[],s=(e,t)=>t==E(l)?x(n,e):null===l[t]?K(e,(e=>s(e,t+1))):F([l[t],null],(l=>s(Y(e,l),t+1)));return s(e,0),n})(e,n),(e=>K(e,(e=>Y(a,e)[0](l,...null!=n?n:[],...s))))),e=>I(Y(a,e),(([,l,n])=>(ue(l,null!=n?n:[t],void 0,(l=>(Q(l,e),q(l)?1:0))),_(a,e),s(e),n))),e=>I(Y(a,e),(([e,,t=[],n,s])=>{const a=(...o)=>{var r,u;const i=E(o);i==E(t)?e(l,...o,...s(o)):w(t[i])?F(null!=(u=null==(r=n[i])?void 0:r.call(n,...o))?u:[],(e=>a(...o,e))):a(...o,t[i])};a()}))]})(),hl=e=>{if(!pe(e,((e,l)=>[r,u].includes(l))))return!1;const l=e[r];return!(!R(l)&&l!=a||(be(e[u])!=l&&B(e,u),0))},vl=(l,t)=>(!e||$(Ee,t)||Wl(t))&&pe(l,((e,l)=>fl(t,l,e)),(()=>Wl(t))),fl=(e,l,t,n)=>pe(n?t:Vl(t,e,l),((n,s)=>I(gl(e,l,s,n),(e=>(t[s]=e,!0)),(()=>!1))),(()=>Wl(e,l))),gl=(l,t,n,s)=>e?I(Y(Y(Ee,l),n),(e=>be(s)!=e[r]?Wl(l,t,n,s,e[u]):s),(()=>Wl(l,t,n,s))):w(be(s))?Wl(l,t,n,s):s,Tl=(e,l)=>pe(l?e:Cl(e),((l,t)=>I(bl(t,l),(l=>(e[t]=l,!0)),(()=>!1))),(()=>$l())),bl=(e,t)=>l?I(Y(Oe,e),(l=>be(t)!=l[r]?$l(e,t,l[u]):t),(()=>$l(e,t))):w(be(t))?$l(e,t):t,Vl=(e,l,t)=>(I(Y(Fe,l),(([n,s])=>{K(n,((l,t)=>{N(e,t)||(e[t]=l)})),K(s,(n=>{N(e,n)||Wl(l,t,n)}))})),e),Cl=e=>(l&&(K(xe,((l,t)=>{N(e,t)||(e[t]=l)})),K(ze,(l=>{N(e,l)||$l(l)}))),e),Sl=e=>le(Ee,e,((e,l,t)=>{const n=U(),s=ie();le(ee(Ee,l,U),t,((e,l,t)=>{_(e,l,t),I(t[u],(e=>_(n,l,e)),(()=>de(s,l)))})),_(Fe,l,[n,s])}),((e,l)=>{_(Ee,l),_(Fe,l)})),yl=e=>le(Oe,e,((e,l,t)=>{_(Oe,l,t),I(t[u],(e=>_(xe,l,e)),(()=>de(ze,l)))}),((e,l)=>{_(Oe,l),_(xe,l),Q(ze,l)})),pl=e=>H(e)?wt():Ct(e),ml=e=>le(ke,e,((e,l,t)=>wl(l,t)),((e,l)=>zl(l))),wl=(e,l)=>le(ee(ke,e,(()=>(Al(e,1),_(Pe,e,he()),_(je,e,U()),U()))),l,((l,t,n)=>Il(e,l,t,n)),((l,t)=>Pl(e,l,t))),Il=(e,l,t,n,s)=>le(ee(l,t,(()=>(Ml(e,t,1),U()))),n,((l,n,s)=>Rl(e,t,l,n,s)),((n,a)=>jl(e,l,t,n,a,s))),Rl=(e,l,t,n,s)=>{$(t,n)||Nl(e,l,n,1);const a=Y(t,n);s!==a&&(Bl(e,l,n,a,s),_(t,n,s))},Jl=(e,l,t,n,s)=>I(Y(l,t),(l=>Rl(e,t,l,n,s)),(()=>Il(e,l,t,Vl({[n]:s},e,t)))),Ll=e=>H(e)?Jt():St(e),El=e=>le(Ae,e,((e,l,t)=>Fl(l,t)),((e,l)=>kl(l))),Fl=(e,l)=>{$(Ae,e)||Dl(e,1);const t=Y(Ae,e);l!==t&&(Hl(e,t,l),_(Ae,e,l))},Ol=(e,l)=>{const[t]=Y(Pe,e),n=t(l);return $(Y(ke,e),n)?Ol(e,l):n},xl=e=>{var l;return null!=(l=Y(ke,e))?l:wl(e,{})},zl=e=>wl(e,{}),Pl=(e,l,t)=>{const[,n]=Y(Pe,e);n(t),Il(e,l,t,{},!0)},jl=(e,l,t,n,s,a)=>{var o;const r=Y(null==(o=Y(Fe,e))?void 0:o[0],s);if(!w(r)&&!a)return Rl(e,t,n,s,r);const u=l=>{Bl(e,t,l,Y(n,l)),Nl(e,t,l,-1),_(n,l)};w(r)?u(s):Z(n,u),q(n)&&(Ml(e,t,-1),q(_(l,t))&&(Al(e,-1),_(ke,e),_(Pe,e),_(je,e)))},kl=e=>{const l=Y(xe,e);if(!w(l))return Fl(e,l);Hl(e,Y(Ae,e)),Dl(e,-1),_(Ae,e)},Al=(e,l)=>me(z,e,l),Ml=(e,l,t)=>me(ee(k,e,U),l,t)&&_(j,e,ee(j,e,(()=>0))+t),Nl=(e,l,t,n)=>{var s;const a=Y(je,e),o=null!=(s=Y(a,t))?s:0;(0==o&&1==n||1==o&&-1==n)&&me(ee(P,e,U),t,n),_(a,t,o!=-n?o+n:null),me(ee(ee(M,e,U),l,U),t,n)},Bl=(e,l,t,n,s)=>ee(ee(ee(ce,e,U),l,U),t,(()=>[n,0]))[1]=s,Dl=(e,l)=>me(Ie,e,l),Hl=(e,l,t)=>ee(Re,e,(()=>[l,0]))[1]=t,Wl=(e,l,t,n,s)=>(x(ee(ee(ee(Je,e,U),l,U),t,(()=>[])),n),s),$l=(e,l,t)=>(x(ee(Le,e,(()=>[])),l),t),ql=(e,l,t)=>I(Y(Y(Y(ce,e),l),t),(([e,l])=>[!0,e,l]),(()=>[!1,...ve(ut(e,l,t))])),Gl=e=>I(Y(Re,e),(([e,l])=>[!0,e,l]),(()=>[!1,...ve(ct(e))])),Kl=e=>q(Je)||q(_e[e])?0:K(e?re(Je):Je,((l,t)=>K(l,((l,n)=>K(l,((l,s)=>il(_e[e],[t,n,s],l))))))),Ql=e=>q(Le)||q(el[e])?0:K(e?ae(Le):Le,((l,t)=>il(el[e],[t],l))),Ul=(e,l,t,n)=>{if(!q(e))return il(l,n,(()=>te(e))),Z(e,((e,l)=>il(t,[...null!=n?n:[],e],1==l))),1},Xl=e=>{const l=ht();l!=o&&il(Me[e],void 0,l);const t=q(Ke[e]),n=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q(We[e])&&q($e[e])&&q(qe[e])&&t&&q(Be[e])&&q(De[e]),s=q(Ze[e])&&q(Ue[e])&&q(He[e])&&q(Ne[e]);if(!n||!s){const l=e?[ae(z),oe(P),ae(j),oe(k),re(M),re(ce)]:[z,P,j,k,M,ce];if(!n){Ul(l[0],Be[e],De[e]),K(l[1],((l,t)=>Ul(l,We[e],$e[e],[t]))),K(l[2],((l,t)=>{0!=l&&il(qe[e],[t],st(t))}));const n=ie();K(l[3],((l,s)=>{Ul(l,Ge[e],Qe[e],[s])&&!t&&(il(Ke[e],[s,null]),de(n,s))})),t||K(l[5],((l,t)=>{if(!$(n,t)){const n=ie();K(l,(e=>K(e,(([l,t],s)=>t!==l?de(n,s):Q(e,s))))),K(n,(l=>il(Ke[e],[t,l])))}})),K(l[4],((l,t)=>K(l,((l,n)=>Ul(l,Xe[e],Ye[e],[t,n])))))}if(!s){let t;K(l[5],((l,n)=>{let s;K(l,((l,a)=>{let o;K(l,(([l,r],u)=>{r!==l&&(il(Ze[e],[n,a,u],r,l,ql),t=s=o=1)})),o&&il(Ue[e],[n,a],ql)})),s&&il(He[e],[n],ql)})),t&&il(Ne[e],void 0,ql)}}},Yl=e=>{const l=bt();l!=i&&il(ll[e],void 0,l);const t=q(nl[e])&&q(sl[e]),n=q(al[e])&&q(tl[e]);if(!t||!n){const l=e?[ae(Ie),ae(Re)]:[Ie,Re];if(t||Ul(l[0],nl[e],sl[e]),!n){let t;K(l[1],(([l,n],s)=>{n!==l&&(il(al[e],[s],n,l,Gl),t=1)})),t&&il(tl[e],void 0,Gl)}}},Zl=(e,...l)=>(Ft((()=>e(...O(l,p)))),zt),_l=()=>[te(ce,((e,l)=>-1===Y(z,l)?null:te(e,((e,t)=>-1===Y(Y(k,l),t)?null:te(e,(([,e])=>null!=e?e:null),((e,l)=>Te(l)))),H)),H),te(Re,(([,e])=>null!=e?e:null),((e,l)=>Te(l)))],et=()=>({cellsTouched:n,valuesTouched:s,changedCells:se(ce,ge,Te),invalidCells:se(Je),changedValues:te(Re,ge,Te),invalidValues:te(Le),changedTableIds:te(z),changedRowIds:ne(k),changedCellIds:se(M),changedValueIds:te(Ie)}),lt=()=>se(ke),tt=()=>X(ke),nt=e=>X(Y(je,p(e))),st=e=>W(Y(ke,p(e))),at=e=>X(Y(ke,p(e))),ot=(e,l,t,n=0,s)=>{return O(L((o=Y(ke,p(e)),r=(e,t)=>[w(l)?t:Y(e,p(l)),t],a=([e],[l])=>{return((null!=(n=e)?n:0)<(null!=(s=l)?s:0)?-1:1)*(t?-1:1);var n,s},O([...null!=(u=null==o?void 0:o.entries())?u:[]],(([e,l])=>r(l,e))).sort(a)),n,w(s)?s:n+s),(([,e])=>e));var a,o,r,u},rt=(e,l)=>X(Y(Y(ke,p(e)),p(l))),ut=(e,l,t)=>Y(Y(Y(ke,p(e)),p(l)),p(t)),it=()=>te(Ae),dt=()=>X(Ae),ct=e=>Y(Ae,p(e)),ht=()=>!q(ke),vt=e=>$(ke,p(e)),ft=(e,l)=>$(Y(je,p(e)),p(l)),gt=(e,l)=>$(Y(ke,p(e)),p(l)),Tt=(e,l,t)=>$(Y(Y(ke,p(e)),p(l)),p(t)),bt=()=>!q(Ae),Vt=e=>$(Ae,p(e)),Ct=e=>Zl((()=>(e=>pe(e,vl,Wl))(e)?ml(e):0)),St=e=>Zl((()=>Tl(e)?El(e):0)),yt=e=>{try{pl(ye(e))}catch(e){}return zt},pt=l=>Zl((()=>{if((e=pe(l,(e=>pe(e,hl))))&&(Sl(l),!q(ke))){const e=lt();wt(),Ct(e)}})),mt=e=>Zl((()=>{if(l=(e=>pe(e,hl))(e)){const t=it();Et(),Jt(),l=!0,yl(e),St(t)}})),wt=()=>Zl((()=>ml({}))),It=e=>Zl((e=>$(ke,e)?zl(e):0),e),Rt=(e,l)=>Zl(((e,l)=>I(Y(ke,e),(t=>$(t,l)?Pl(e,t,l):0))),e,l),Jt=()=>Zl((()=>El({}))),Lt=()=>Zl((()=>{Sl({}),e=!1})),Et=()=>Zl((()=>{yl({}),l=!1})),Ft=(e,l)=>{if(-1!=m){Ot();const t=e();return xt(l),t}},Ot=()=>(-1!=m&&m++,1==m&&il(ol,void 0,_l,et),zt),xt=e=>(m>0&&(m--,0==m&&(n=!q(ce),s=!q(Re),m=1,Kl(1),n&&Xl(1),Ql(1),s&&Yl(1),(null==e?void 0:e(_l,et))&&(K(ce,((e,l)=>K(e,((e,t)=>K(e,(([e],n)=>Ve(zt,l,t,n,e))))))),K(Re,(([e],l)=>Ce(zt,l,e))),n=s=!1),il(rl[0],void 0,_l,et),m=-1,Kl(0),n&&Xl(0),Ql(0),s&&Yl(0),il(rl[1],void 0,_l,et),m=0,n=s=!1,o=ht(),i=bt(),F([z,P,j,k,M,ce,Je,Ie,Re,Le],G))),zt),zt={getContent:()=>[lt(),it()],getTables:lt,getTableIds:tt,getTable:e=>ne(Y(ke,p(e))),getTableCellIds:nt,getRowCount:st,getRowIds:at,getSortedRowIds:ot,getRow:(e,l)=>te(Y(Y(ke,p(e)),p(l))),getCellIds:rt,getCell:ut,getValues:it,getValueIds:dt,getValue:ct,hasTables:ht,hasTable:vt,hasTableCell:ft,hasRow:gt,hasCell:Tt,hasValues:bt,hasValue:Vt,getTablesJson:()=>Se(ke),getValuesJson:()=>Se(Ae),getJson:()=>Se([ke,Ae]),getTablesSchemaJson:()=>Se(Ee),getValuesSchemaJson:()=>Se(Oe),getSchemaJson:()=>Se([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>l,setContent:([e,l])=>Zl((()=>{(H(e)?wt:Ct)(e),(H(l)?Jt:St)(l)})),setTables:Ct,setTable:(e,l)=>Zl((e=>vl(l,e)?wl(e,l):0),e),setRow:(e,l,t)=>Zl(((e,l)=>fl(e,l,t)?Il(e,xl(e),l,t):0),e,l),addRow:(e,l,t=!0)=>Ft((()=>{let n;return fl(e,n,l)&&(e=p(e),Il(e,xl(e),n=Ol(e,t?1:0),l)),n})),setPartialRow:(e,l,t)=>Zl(((e,l)=>{if(fl(e,l,t,1)){const n=xl(e);D(t,((t,s)=>Jl(e,n,l,s,t)))}}),e,l),setCell:(e,l,t,n)=>Zl(((e,l,t)=>I(gl(e,l,t,J(n)?n(ut(e,l,t)):n),(n=>Jl(e,xl(e),l,t,n)))),e,l,t),setValues:St,setPartialValues:e=>Zl((()=>Tl(e,1)?D(e,((e,l)=>Fl(l,e))):0)),setValue:(e,l)=>Zl((e=>I(bl(e,J(l)?l(ct(e)):l),(l=>Fl(e,l)))),e),setTransactionChanges:e=>Zl((()=>{D(e[0],((e,l)=>w(e)?It(l):D(e,((e,t)=>w(e)?Rt(l,t):D(e,((e,n)=>Ve(zt,l,t,n,e))))))),D(e[1],((e,l)=>Ce(zt,l,e)))})),setTablesJson:yt,setValuesJson:e=>{try{Ll(ye(e))}catch(e){}return zt},setJson:e=>Zl((()=>{try{const[l,t]=ye(e);pl(l),Ll(t)}catch(l){yt(e)}})),setTablesSchema:pt,setValuesSchema:mt,setSchema:(e,l)=>Zl((()=>{pt(e),mt(l)})),delTables:wt,delTable:It,delRow:Rt,delCell:(e,l,t,n)=>Zl(((e,l,t)=>I(Y(ke,e),(s=>I(Y(s,l),(a=>$(a,t)?jl(e,s,l,a,t,n):0))))),e,l,t),delValues:Jt,delValue:e=>Zl((e=>$(Ae,e)?kl(e):0),e),delTablesSchema:Lt,delValuesSchema:Et,delSchema:()=>Zl((()=>{Lt(),Et()})),transaction:Ft,startTransaction:Ot,finishTransaction:xt,forEachTable:e=>K(ke,((l,t)=>e(t,(e=>K(l,((l,t)=>e(t,(e=>Z(l,e))))))))),forEachTableCell:(e,l)=>Z(Y(je,p(e)),l),forEachRow:(e,l)=>K(Y(ke,p(e)),((e,t)=>l(t,(l=>Z(e,l))))),forEachCell:(e,l,t)=>Z(Y(Y(ke,p(e)),p(l)),t),forEachValue:e=>Z(Ae,e),addSortedRowIdsListener:(e,l,t,n,s,a,o)=>{let r=ot(e,l,t,n,s);return ul((()=>{const o=ot(e,l,t,n,s);var u,i,d;i=r,E(u=o)===E(i)&&(d=(e,l)=>i[l]===e,u.every(d))||(r=o,a(zt,e,l,t,n,s,r))}),Ke[o?1:0],[e,l],[tt])},addStartTransactionListener:e=>ul(e,ol),addWillFinishTransactionListener:e=>ul(e,rl[0]),addDidFinishTransactionListener:e=>ul(e,rl[1]),callListener:e=>(cl(e),zt),delListener:e=>(dl(e),zt),getListenerStats:()=>({}),createStore:we,addListener:ul,callListeners:il};return D({[y+c]:[0,Me,[],()=>[ht()]],[c]:[0,Ne],[h]:[0,Be],[y+d]:[1,De,[tt],e=>[vt(...e)]],[d]:[1,He,[tt]],[d+b]:[1,We,[tt]],[y+d+T]:[2,$e,[tt,nt],e=>[ft(...e)]],[f]:[1,qe,[tt]],[g]:[1,Ge,[tt]],[y+v]:[2,Qe,[tt,at],e=>[gt(...e)]],[v]:[2,Ue,[tt,at]],[b]:[2,Xe,[tt,at]],[y+T]:[3,Ye,[tt,at,rt],e=>[Tt(...e)]],[T]:[3,Ze,[tt,at,rt],e=>ve(ut(...e))],InvalidCell:[3,_e],[y+C]:[0,ll,[],()=>[bt()]],[C]:[0,tl],[S]:[0,nl],[y+V]:[1,sl,[dt],e=>[Vt(...e)]],[V]:[1,al,[dt],e=>ve(ct(e[0]))],InvalidValue:[1,el]},(([e,l,t,n],s)=>{zt["add"+s+"Listener"]=(...s)=>ul(s[e],l[s[e+1]?1:0],e>0?L(s,0,e):void 0,t,n)})),A(zt)};e.createStore=we},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="",n=l(t),s=l(!0),a=l(0),o=l(l),r="type",u="default",i="Has",d="Ids",c="Table",h=c+"s",v=c+d,f="Row",g=f+"Count",T=f+d,b="Cell",V=b+d,C="Value",S=C+"s",y=C+d,p=e=>t+e,m=isFinite,w=e=>null==e,I=(e,l,t)=>w(e)?null==t?void 0:t():l(e),R=e=>e==n||e==s,J=e=>l(e)==o,L=(e,l,t)=>e.slice(l,t),E=e=>e.length,F=(e,l)=>e.forEach(l),O=(e,l)=>e.map(l),x=(e,...l)=>e.push(...l),z=Object,P=e=>z.getPrototypeOf(e),j=z.keys,k=z.isFrozen,A=z.freeze,M=e=>!w(e)&&I(P(e),(e=>e==z.prototype||w(P(e))),(()=>!0)),N=(e,l)=>!w(((e,l)=>I(e,(e=>e[l])))(e,l)),B=(e,l)=>(delete e[l],e),D=(e,l)=>O(z.entries(e),(([e,t])=>l(t,e))),H=e=>M(e)&&0==(e=>E(j(e)))(e),W=e=>{var l;return null!=(l=null==e?void 0:e.size)?l:0},$=(e,l)=>{var t;return null!=(t=null==e?void 0:e.has(l))&&t},q=e=>w(e)||0==W(e),G=e=>e.clear(),K=(e,l)=>null==e?void 0:e.forEach(l),Q=(e,l)=>null==e?void 0:e.delete(l),U=e=>new Map(e),X=e=>{var l;return[...null!=(l=null==e?void 0:e.keys())?l:[]]},Y=(e,l)=>null==e?void 0:e.get(l),Z=(e,l)=>K(e,((e,t)=>l(t,e))),_=(e,l,t)=>w(t)?(Q(e,l),e):null==e?void 0:e.set(l,t),ee=(e,l,t)=>($(e,l)||_(e,l,t()),Y(e,l)),le=(e,l,t,n=_)=>(D(l,((l,n)=>t(e,n,l))),Z(e,(t=>N(l,t)?0:n(e,t))),e),te=(e,l,t)=>{const n={};return K(e,((e,s)=>{const a=l?l(e,s):e;!(null==t?void 0:t(a,e))&&(n[s]=a)})),n},ne=(e,l,t)=>te(e,(e=>te(e,l,t)),H),se=(e,l,t)=>te(e,(e=>ne(e,l,t)),H),ae=(e,l)=>{const t=U();return K(e,((e,n)=>{var s;return t.set(n,null!=(s=null==l?void 0:l(e))?s:e)})),t},oe=e=>ae(e,ae),re=e=>ae(e,oe),ue=(e,l,t,n,s=0)=>I((t?ee:Y)(e,l[s],s>E(l)-2?t:U),(a=>{if(s>E(l)-2)return(null==n?void 0:n(a))&&_(e,l[s]),a;const o=ue(a,l,t,n,s+1);return q(a)&&_(e,l[s]),o})),ie=e=>new Set(Array.isArray(e)||w(e)?e:[e]),de=(e,l)=>null==e?void 0:e.add(l),ce=/^\d+$/,he=()=>{const e=[];let l=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:t+l++},l=>{ce.test(l)&&E(e)<1e3&&x(e,l)}]},ve=e=>[e,e],fe=()=>[U(),U()],ge=e=>[...e],Te=([e,l])=>e===l,be=e=>{const t=l(e);return R(t)||t==a&&m(e)?t:void 0},Ve=(e,l,t,n,s)=>w(s)?e.delCell(l,t,n,!0):e.setCell(l,t,n,s),Ce=(e,l,t)=>w(t)?e.delValue(l):e.setValue(l,t),Se=e=>JSON.stringify(e,((e,l)=>l instanceof Map?z.fromEntries([...l]):l)),ye=JSON.parse,pe=(e,l,t)=>w(e)||!M(e)||H(e)||k(e)?(null==t||t(),!1):(D(e,((t,n)=>{l(t,n)||B(e,n)})),!H(e)),me=(e,l,t)=>_(e,l,Y(e,l)==-t?void 0:t),we=()=>{let e,l,n=!1,s=!1,o=!1,d=!1,m=0;const z=U(),P=U(),j=U(),k=U(),M=U(),ce=U(),Ie=U(),Re=U(),Je=U(),Le=U(),Ee=U(),Fe=U(),Oe=U(),xe=U(),ze=ie(),Pe=U(),je=U(),ke=U(),Ae=U(),Me=fe(),Ne=fe(),Be=fe(),De=fe(),He=fe(),We=fe(),$e=fe(),qe=fe(),Ge=fe(),Ke=fe(),Qe=fe(),Ue=fe(),Xe=fe(),Ye=fe(),Ze=fe(),_e=fe(),el=fe(),ll=fe(),tl=fe(),nl=fe(),sl=fe(),al=fe(),ol=U(),rl=fe(),[ul,il,dl,cl]=(e=>{let l;const[n,s]=he(),a=U();return[(e,s,o,r=[],u=(()=>[]))=>{null!=l||(l=zt);const i=n(1);return _(a,i,[e,s,o,r,u]),de(ue(s,null!=o?o:[t],ie),i),i},(e,n,...s)=>F(((e,l=[t])=>{const n=[],s=(e,t)=>t==E(l)?x(n,e):null===l[t]?K(e,(e=>s(e,t+1))):F([l[t],null],(l=>s(Y(e,l),t+1)));return s(e,0),n})(e,n),(e=>K(e,(e=>Y(a,e)[0](l,...null!=n?n:[],...s))))),e=>I(Y(a,e),(([,l,n])=>(ue(l,null!=n?n:[t],void 0,(l=>(Q(l,e),q(l)?1:0))),_(a,e),s(e),n))),e=>I(Y(a,e),(([e,,t=[],n,s])=>{const a=(...o)=>{var r,u;const i=E(o);i==E(t)?e(l,...o,...s(o)):w(t[i])?F(null!=(u=null==(r=n[i])?void 0:r.call(n,...o))?u:[],(e=>a(...o,e))):a(...o,t[i])};a()}))]})(),hl=e=>{if(!pe(e,((e,l)=>[r,u].includes(l))))return!1;const l=e[r];return!(!R(l)&&l!=a||(be(e[u])!=l&&B(e,u),0))},vl=(l,t)=>(!e||$(Ee,t)||Wl(t))&&pe(l,((e,l)=>fl(t,l,e)),(()=>Wl(t))),fl=(e,l,t,n)=>pe(n?t:Vl(t,e,l),((n,s)=>I(gl(e,l,s,n),(e=>(t[s]=e,!0)),(()=>!1))),(()=>Wl(e,l))),gl=(l,t,n,s)=>e?I(Y(Y(Ee,l),n),(e=>be(s)!=e[r]?Wl(l,t,n,s,e[u]):s),(()=>Wl(l,t,n,s))):w(be(s))?Wl(l,t,n,s):s,Tl=(e,l)=>pe(l?e:Cl(e),((l,t)=>I(bl(t,l),(l=>(e[t]=l,!0)),(()=>!1))),(()=>$l())),bl=(e,t)=>l?I(Y(Oe,e),(l=>be(t)!=l[r]?$l(e,t,l[u]):t),(()=>$l(e,t))):w(be(t))?$l(e,t):t,Vl=(e,l,t)=>(I(Y(Fe,l),(([n,s])=>{K(n,((l,t)=>{N(e,t)||(e[t]=l)})),K(s,(n=>{N(e,n)||Wl(l,t,n)}))})),e),Cl=e=>(l&&(K(xe,((l,t)=>{N(e,t)||(e[t]=l)})),K(ze,(l=>{N(e,l)||$l(l)}))),e),Sl=e=>le(Ee,e,((e,l,t)=>{const n=U(),s=ie();le(ee(Ee,l,U),t,((e,l,t)=>{_(e,l,t),I(t[u],(e=>_(n,l,e)),(()=>de(s,l)))})),_(Fe,l,[n,s])}),((e,l)=>{_(Ee,l),_(Fe,l)})),yl=e=>le(Oe,e,((e,l,t)=>{_(Oe,l,t),I(t[u],(e=>_(xe,l,e)),(()=>de(ze,l)))}),((e,l)=>{_(Oe,l),_(xe,l),Q(ze,l)})),pl=e=>H(e)?wt():Ct(e),ml=e=>le(ke,e,((e,l,t)=>wl(l,t)),((e,l)=>zl(l))),wl=(e,l)=>le(ee(ke,e,(()=>(Al(e,1),_(Pe,e,he()),_(je,e,U()),U()))),l,((l,t,n)=>Il(e,l,t,n)),((l,t)=>Pl(e,l,t))),Il=(e,l,t,n,s)=>le(ee(l,t,(()=>(Ml(e,t,1),U()))),n,((l,n,s)=>Rl(e,t,l,n,s)),((n,a)=>jl(e,l,t,n,a,s))),Rl=(e,l,t,n,s)=>{$(t,n)||Nl(e,l,n,1);const a=Y(t,n);s!==a&&(Bl(e,l,n,a,s),_(t,n,s))},Jl=(e,l,t,n,s)=>I(Y(l,t),(l=>Rl(e,t,l,n,s)),(()=>Il(e,l,t,Vl({[n]:s},e,t)))),Ll=e=>H(e)?Jt():St(e),El=e=>le(Ae,e,((e,l,t)=>Fl(l,t)),((e,l)=>kl(l))),Fl=(e,l)=>{$(Ae,e)||Dl(e,1);const t=Y(Ae,e);l!==t&&(Hl(e,t,l),_(Ae,e,l))},Ol=(e,l)=>{const[t]=Y(Pe,e),n=t(l);return $(Y(ke,e),n)?Ol(e,l):n},xl=e=>{var l;return null!=(l=Y(ke,e))?l:wl(e,{})},zl=e=>wl(e,{}),Pl=(e,l,t)=>{const[,n]=Y(Pe,e);n(t),Il(e,l,t,{},!0)},jl=(e,l,t,n,s,a)=>{var o;const r=Y(null==(o=Y(Fe,e))?void 0:o[0],s);if(!w(r)&&!a)return Rl(e,t,n,s,r);const u=l=>{Bl(e,t,l,Y(n,l)),Nl(e,t,l,-1),_(n,l)};w(r)?u(s):Z(n,u),q(n)&&(Ml(e,t,-1),q(_(l,t))&&(Al(e,-1),_(ke,e),_(Pe,e),_(je,e)))},kl=e=>{const l=Y(xe,e);if(!w(l))return Fl(e,l);Hl(e,Y(Ae,e)),Dl(e,-1),_(Ae,e)},Al=(e,l)=>me(z,e,l),Ml=(e,l,t)=>me(ee(k,e,U),l,t)&&_(j,e,ee(j,e,(()=>0))+t),Nl=(e,l,t,n)=>{var s;const a=Y(je,e),o=null!=(s=Y(a,t))?s:0;(0==o&&1==n||1==o&&-1==n)&&me(ee(P,e,U),t,n),_(a,t,o!=-n?o+n:null),me(ee(ee(M,e,U),l,U),t,n)},Bl=(e,l,t,n,s)=>ee(ee(ee(ce,e,U),l,U),t,(()=>[n,0]))[1]=s,Dl=(e,l)=>me(Ie,e,l),Hl=(e,l,t)=>ee(Re,e,(()=>[l,0]))[1]=t,Wl=(e,l,t,n,s)=>(x(ee(ee(ee(Je,e,U),l,U),t,(()=>[])),n),s),$l=(e,l,t)=>(x(ee(Le,e,(()=>[])),l),t),ql=(e,l,t)=>I(Y(Y(Y(ce,e),l),t),(([e,l])=>[!0,e,l]),(()=>[!1,...ve(ut(e,l,t))])),Gl=e=>I(Y(Re,e),(([e,l])=>[!0,e,l]),(()=>[!1,...ve(ct(e))])),Kl=e=>q(Je)||q(_e[e])?0:K(e?re(Je):Je,((l,t)=>K(l,((l,n)=>K(l,((l,s)=>il(_e[e],[t,n,s],l))))))),Ql=e=>q(Le)||q(el[e])?0:K(e?ae(Le):Le,((l,t)=>il(el[e],[t],l))),Ul=(e,l,t,n)=>{if(!q(e))return il(l,n,(()=>te(e))),Z(e,((e,l)=>il(t,[...null!=n?n:[],e],1==l))),1},Xl=e=>{const l=ht();l!=o&&il(Me[e],void 0,l);const t=q(Ke[e]),n=q(Xe[e])&&q(Ye[e])&&q(Ge[e])&&q(Qe[e])&&q(We[e])&&q($e[e])&&q(qe[e])&&t&&q(Be[e])&&q(De[e]),s=q(Ze[e])&&q(Ue[e])&&q(He[e])&&q(Ne[e]);if(!n||!s){const l=e?[ae(z),oe(P),ae(j),oe(k),re(M),re(ce)]:[z,P,j,k,M,ce];if(!n){Ul(l[0],Be[e],De[e]),K(l[1],((l,t)=>Ul(l,We[e],$e[e],[t]))),K(l[2],((l,t)=>{0!=l&&il(qe[e],[t],st(t))}));const n=ie();K(l[3],((l,s)=>{Ul(l,Ge[e],Qe[e],[s])&&!t&&(il(Ke[e],[s,null]),de(n,s))})),t||K(l[5],((l,t)=>{if(!$(n,t)){const n=ie();K(l,(e=>K(e,(([l,t],s)=>t!==l?de(n,s):Q(e,s))))),K(n,(l=>il(Ke[e],[t,l])))}})),K(l[4],((l,t)=>K(l,((l,n)=>Ul(l,Xe[e],Ye[e],[t,n])))))}if(!s){let t;K(l[5],((l,n)=>{let s;K(l,((l,a)=>{let o;K(l,(([l,r],u)=>{r!==l&&(il(Ze[e],[n,a,u],r,l,ql),t=s=o=1)})),o&&il(Ue[e],[n,a],ql)})),s&&il(He[e],[n],ql)})),t&&il(Ne[e],void 0,ql)}}},Yl=e=>{const l=bt();l!=d&&il(ll[e],void 0,l);const t=q(nl[e])&&q(sl[e]),n=q(al[e])&&q(tl[e]);if(!t||!n){const l=e?[ae(Ie),ae(Re)]:[Ie,Re];if(t||Ul(l[0],nl[e],sl[e]),!n){let t;K(l[1],(([l,n],s)=>{n!==l&&(il(al[e],[s],n,l,Gl),t=1)})),t&&il(tl[e],void 0,Gl)}}},Zl=(e,...l)=>(Ft((()=>e(...O(l,p)))),zt),_l=()=>[te(ce,((e,l)=>-1===Y(z,l)?null:te(e,((e,t)=>-1===Y(Y(k,l),t)?null:te(e,(([,e])=>null!=e?e:null),((e,l)=>Te(l)))),H)),H),te(Re,(([,e])=>null!=e?e:null),((e,l)=>Te(l)))],et=()=>({cellsTouched:n,valuesTouched:s,changedCells:se(ce,ge,Te),invalidCells:se(Je),changedValues:te(Re,ge,Te),invalidValues:te(Le),changedTableIds:te(z),changedRowIds:ne(k),changedCellIds:se(M),changedValueIds:te(Ie)}),lt=()=>se(ke),tt=()=>X(ke),nt=e=>X(Y(je,p(e))),st=e=>W(Y(ke,p(e))),at=e=>X(Y(ke,p(e))),ot=(e,l,t,n=0,s)=>{return O(L((o=Y(ke,p(e)),r=(e,t)=>[w(l)?t:Y(e,p(l)),t],a=([e],[l])=>{return((null!=(n=e)?n:0)<(null!=(s=l)?s:0)?-1:1)*(t?-1:1);var n,s},O([...null!=(u=null==o?void 0:o.entries())?u:[]],(([e,l])=>r(l,e))).sort(a)),n,w(s)?s:n+s),(([,e])=>e));var a,o,r,u},rt=(e,l)=>X(Y(Y(ke,p(e)),p(l))),ut=(e,l,t)=>Y(Y(Y(ke,p(e)),p(l)),p(t)),it=()=>te(Ae),dt=()=>X(Ae),ct=e=>Y(Ae,p(e)),ht=()=>!q(ke),vt=e=>$(ke,p(e)),ft=(e,l)=>$(Y(je,p(e)),p(l)),gt=(e,l)=>$(Y(ke,p(e)),p(l)),Tt=(e,l,t)=>$(Y(Y(ke,p(e)),p(l)),p(t)),bt=()=>!q(Ae),Vt=e=>$(Ae,p(e)),Ct=e=>Zl((()=>(e=>pe(e,vl,Wl))(e)?ml(e):0)),St=e=>Zl((()=>Tl(e)?El(e):0)),yt=e=>{try{pl(ye(e))}catch(e){}return zt},pt=l=>Zl((()=>{if((e=pe(l,(e=>pe(e,hl))))&&(Sl(l),!q(ke))){const e=lt();wt(),Ct(e)}})),mt=e=>Zl((()=>{if(l=(e=>pe(e,hl))(e)){const t=it();Et(),Jt(),l=!0,yl(e),St(t)}})),wt=()=>Zl((()=>ml({}))),It=e=>Zl((e=>$(ke,e)?zl(e):0),e),Rt=(e,l)=>Zl(((e,l)=>I(Y(ke,e),(t=>$(t,l)?Pl(e,t,l):0))),e,l),Jt=()=>Zl((()=>El({}))),Lt=()=>Zl((()=>{Sl({}),e=!1})),Et=()=>Zl((()=>{yl({}),l=!1})),Ft=(e,l)=>{if(-1!=m){Ot();const t=e();return xt(l),t}},Ot=()=>(-1!=m&&m++,1==m&&il(ol,void 0,_l,et),zt),xt=e=>(m>0&&(m--,0==m&&(n=!q(ce),s=!q(Re),m=1,Kl(1),n&&Xl(1),Ql(1),s&&Yl(1),(null==e?void 0:e(_l,et))&&(K(ce,((e,l)=>K(e,((e,t)=>K(e,(([e],n)=>Ve(zt,l,t,n,e))))))),K(Re,(([e],l)=>Ce(zt,l,e))),n=s=!1),il(rl[0],void 0,_l,et),m=-1,Kl(0),n&&Xl(0),Ql(0),s&&Yl(0),il(rl[1],void 0,_l,et),m=0,n=s=!1,o=ht(),d=bt(),F([z,P,j,k,M,ce,Je,Ie,Re,Le],G))),zt),zt={getContent:()=>[lt(),it()],getTables:lt,getTableIds:tt,getTable:e=>ne(Y(ke,p(e))),getTableCellIds:nt,getRowCount:st,getRowIds:at,getSortedRowIds:ot,getRow:(e,l)=>te(Y(Y(ke,p(e)),p(l))),getCellIds:rt,getCell:ut,getValues:it,getValueIds:dt,getValue:ct,hasTables:ht,hasTable:vt,hasTableCell:ft,hasRow:gt,hasCell:Tt,hasValues:bt,hasValue:Vt,getTablesJson:()=>Se(ke),getValuesJson:()=>Se(Ae),getJson:()=>Se([ke,Ae]),getTablesSchemaJson:()=>Se(Ee),getValuesSchemaJson:()=>Se(Oe),getSchemaJson:()=>Se([Ee,Oe]),hasTablesSchema:()=>e,hasValuesSchema:()=>l,setContent:([e,l])=>Zl((()=>{(H(e)?wt:Ct)(e),(H(l)?Jt:St)(l)})),setTables:Ct,setTable:(e,l)=>Zl((e=>vl(l,e)?wl(e,l):0),e),setRow:(e,l,t)=>Zl(((e,l)=>fl(e,l,t)?Il(e,xl(e),l,t):0),e,l),addRow:(e,l,t=!0)=>Ft((()=>{let n;return fl(e,n,l)&&(e=p(e),Il(e,xl(e),n=Ol(e,t?1:0),l)),n})),setPartialRow:(e,l,t)=>Zl(((e,l)=>{if(fl(e,l,t,1)){const n=xl(e);D(t,((t,s)=>Jl(e,n,l,s,t)))}}),e,l),setCell:(e,l,t,n)=>Zl(((e,l,t)=>I(gl(e,l,t,J(n)?n(ut(e,l,t)):n),(n=>Jl(e,xl(e),l,t,n)))),e,l,t),setValues:St,setPartialValues:e=>Zl((()=>Tl(e,1)?D(e,((e,l)=>Fl(l,e))):0)),setValue:(e,l)=>Zl((e=>I(bl(e,J(l)?l(ct(e)):l),(l=>Fl(e,l)))),e),setTransactionChanges:e=>Zl((()=>{D(e[0],((e,l)=>w(e)?It(l):D(e,((e,t)=>w(e)?Rt(l,t):D(e,((e,n)=>Ve(zt,l,t,n,e))))))),D(e[1],((e,l)=>Ce(zt,l,e)))})),setTablesJson:yt,setValuesJson:e=>{try{Ll(ye(e))}catch(e){}return zt},setJson:e=>Zl((()=>{try{const[l,t]=ye(e);pl(l),Ll(t)}catch(l){yt(e)}})),setTablesSchema:pt,setValuesSchema:mt,setSchema:(e,l)=>Zl((()=>{pt(e),mt(l)})),delTables:wt,delTable:It,delRow:Rt,delCell:(e,l,t,n)=>Zl(((e,l,t)=>I(Y(ke,e),(s=>I(Y(s,l),(a=>$(a,t)?jl(e,s,l,a,t,n):0))))),e,l,t),delValues:Jt,delValue:e=>Zl((e=>$(Ae,e)?kl(e):0),e),delTablesSchema:Lt,delValuesSchema:Et,delSchema:()=>Zl((()=>{Lt(),Et()})),transaction:Ft,startTransaction:Ot,finishTransaction:xt,forEachTable:e=>K(ke,((l,t)=>e(t,(e=>K(l,((l,t)=>e(t,(e=>Z(l,e))))))))),forEachTableCell:(e,l)=>Z(Y(je,p(e)),l),forEachRow:(e,l)=>K(Y(ke,p(e)),((e,t)=>l(t,(l=>Z(e,l))))),forEachCell:(e,l,t)=>Z(Y(Y(ke,p(e)),p(l)),t),forEachValue:e=>Z(Ae,e),addSortedRowIdsListener:(e,l,t,n,s,a,o)=>{let r=ot(e,l,t,n,s);return ul((()=>{const o=ot(e,l,t,n,s);var u,i,d;i=r,E(u=o)===E(i)&&(d=(e,l)=>i[l]===e,u.every(d))||(r=o,a(zt,e,l,t,n,s,r))}),Ke[o?1:0],[e,l],[tt])},addStartTransactionListener:e=>ul(e,ol),addWillFinishTransactionListener:e=>ul(e,rl[0]),addDidFinishTransactionListener:e=>ul(e,rl[1]),callListener:e=>(cl(e),zt),delListener:e=>(dl(e),zt),getListenerStats:()=>({}),createStore:we,addListener:ul,callListeners:il};return D({[i+h]:[0,Me,[],()=>[ht()]],[h]:[0,Ne],[v]:[0,Be],[i+c]:[1,De,[tt],e=>[vt(...e)]],[c]:[1,He,[tt]],[c+V]:[1,We,[tt]],[i+c+b]:[2,$e,[tt,nt],e=>[ft(...e)]],[g]:[1,qe,[tt]],[T]:[1,Ge,[tt]],[i+f]:[2,Qe,[tt,at],e=>[gt(...e)]],[f]:[2,Ue,[tt,at]],[V]:[2,Xe,[tt,at]],[i+b]:[3,Ye,[tt,at,rt],e=>[Tt(...e)]],[b]:[3,Ze,[tt,at,rt],e=>ve(ut(...e))],InvalidCell:[3,_e],[i+S]:[0,ll,[],()=>[bt()]],[S]:[0,tl],[y]:[0,nl],[i+C]:[1,sl,[dt],e=>[Vt(...e)]],[C]:[1,al,[dt],e=>ve(ct(e[0]))],InvalidValue:[1,el]},(([e,l,t,n],s)=>{zt["add"+s+"Listener"]=(...s)=>ul(s[e],l[s[e+1]?1:0],e>0?L(s,0,e):void 0,t,n)})),A(zt)};e.createStore=we},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),s=t(!0),o=t(0),r=t(t),i="type",a="default",d="Listener",u="Result",c="add",v="Ids",h="Table",f=h+"s",g=h+v,L="Row",y=L+"Count",p=L+v,I="Sorted"+L+v,S="Cell",T=S+v,R="Value",w=R+"s",C=R+v,b="Has",m=e=>n+e,V=Math.max,E=Math.min,x=isFinite,k=e=>null==e,M=(e,t,n)=>k(e)?null==n?void 0:n():t(e),D=e=>e==l||e==s,J=e=>t(e)==r,O=e=>Array.isArray(e),A=(e,t,n)=>e.slice(t,n),P=e=>e.length,F=()=>{},Q=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),z=(e,t)=>P(e)===P(t)&&j(e,((e,n)=>t[n]===e)),N=(e,t)=>j(e,((n,l)=>0==l||t(e[l-1],n)<=0)),B=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),H=(e,t)=>e.map(t),$=e=>G(e,((e,t)=>e+t),0),q=e=>0==P(e),G=(e,t,n)=>e.reduce(t,n),K=(e,...t)=>e.push(...t),U=e=>e.pop(),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.keys,ee=Y.isFrozen,te=Y.freeze,ne=e=>!k(e)&&M(Z(e),(e=>e==Y.prototype||k(Z(e))),(()=>!0)),le=(e,t)=>!k(((e,t)=>M(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),oe=(e,t)=>H(Y.entries(e),(([e,n])=>t(n,e))),re=e=>ne(e)&&0==(e=>P(_(e)))(e),ie=e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0},ae=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},de=e=>k(e)||0==ie(e),ue=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ve=(e,t)=>null==e?void 0:e.forEach(t),he=(e,t)=>null==e?void 0:e.delete(t),fe=e=>new Map(e),ge=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},Le=(e,t)=>null==e?void 0:e.get(t),ye=(e,t)=>ve(e,((e,n)=>t(n,e))),pe=(e,t,n)=>k(n)?(he(e,t),e):null==e?void 0:e.set(t,n),Ie=(e,t,n)=>(ae(e,t)||pe(e,t,n()),Le(e,t)),Se=(e,t,n,l=pe)=>(oe(t,((t,l)=>n(e,l,t))),ye(e,(n=>le(t,n)?0:l(e,n))),e),Te=(e,t,n)=>{const l={};return ve(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Re=(e,t,n)=>Te(e,(e=>Te(e,t,n)),re),we=(e,t,n)=>Te(e,(e=>Re(e,t,n)),re),Ce=(e,t)=>{const n=fe();return ve(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},be=e=>Ce(e,Ce),me=e=>Ce(e,be),Ve=(e,t,n,l,s=0)=>M((n?Ie:Le)(e,t[s],s>P(t)-2?n:fe),(o=>{if(s>P(t)-2)return(null==l?void 0:l(o))&&pe(e,t[s]),o;const r=Ve(o,t,n,l,s+1);return de(o)&&pe(e,t[s]),r})),Ee=e=>{const n=t(e);return D(n)||n==o&&x(e)?n:void 0},xe=(e,t,n,l,s)=>k(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),ke=(e,t,n)=>k(n)?e.delValue(t):e.setValue(t,n),Me=e=>new Set(O(e)||k(e)?e:[e]),De=(e,t)=>null==e?void 0:e.add(t),Je=(e,t,n,l,s)=>{const o=e.hasRow,r=fe(),i=fe(),a=fe(),d=fe(),u=fe(),c=fe(),v=(t,n,...l)=>{const s=Ie(c,t,Me);return W(l,(t=>De(s,t)&&n&&e.callListener(t))),l},h=(t,...n)=>M(Le(c,t),(l=>{W(q(n)?ue(l):n,(t=>{e.delListener(t),he(l,t)})),de(l)&&pe(c,t)})),f=(e,n)=>{pe(r,e,n),ae(i,e)||(pe(i,e,t()),pe(d,e,fe()),pe(u,e,fe()),s(a))},g=e=>{pe(r,e),pe(i,e),pe(d,e),pe(u,e),h(e),s(a)};return[()=>e,()=>ge(r),e=>ye(i,e),e=>ae(i,e),e=>Le(r,e),e=>Le(i,e),(e,t)=>pe(i,e,t),f,(t,l,s,r,i)=>{f(t,l);const a=fe(),c=fe(),g=Le(d,t),L=Le(u,t),y=t=>{const s=n=>e.getCell(l,t,n),d=Le(g,t),u=o(l,t)?n(r(s,t)):void 0;if(d===u||O(d)&&O(u)&&z(d,u)||pe(a,t,[d,u]),!k(i)){const e=Le(L,t),n=o(l,t)?i(s,t):void 0;e!=n&&pe(c,t,n)}},p=e=>{s((()=>{ve(a,(([,e],t)=>pe(g,t,e))),ve(c,((e,t)=>pe(L,t,e)))}),a,c,g,L,e),ce(a),ce(c)};ye(g,y),e.hasTable(l)&&W(e.getRowIds(l),(e=>{ae(g,e)||y(e)})),p(!0),h(t),v(t,0,e.addRowListener(l,null,((e,t,n)=>y(n))),e.addTableListener(l,(()=>p())))},g,e=>l(e,a),()=>ye(c,g),v,h]},Oe=(e,s)=>t(e)==l?t=>t(e):null!=e?e:()=>null!=s?s:n,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Pe=/^\d+$/,Fe=()=>{const e=[];let t=0;return[l=>{var s;return null!=(s=l?X(e):null)?s:n+t++},t=>{Pe.test(t)&&P(e)<1e3&&K(e,t)}]},Qe=e=>{let t;const[l,s]=Fe(),o=fe();return[(s,r,i,a=[],d=(()=>[]))=>{null!=t||(t=e());const u=l(1);return pe(o,u,[s,r,i,a,d]),De(Ve(r,null!=i?i:[n],Me),u),u},(e,l,...s)=>W(((e,t=[n])=>{const l=[],s=(e,n)=>n==P(t)?K(l,e):null===t[n]?ve(e,(e=>s(e,n+1))):W([t[n],null],(t=>s(Le(e,t),n+1)));return s(e,0),l})(e,l),(e=>ve(e,(e=>Le(o,e)[0](t,...null!=l?l:[],...s))))),e=>M(Le(o,e),(([,t,l])=>(Ve(t,null!=l?l:[n],void 0,(t=>(he(t,e),de(t)?1:0))),pe(o,e),s(e),l))),e=>M(Le(o,e),(([e,,n=[],l,s])=>{const o=(...r)=>{var i,a;const d=P(r);d==P(n)?e(t,...r,...s(r)):k(n[d])?W(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,n[d])};o()}))]},je=Ae((e=>{let t,l,s,o=100,r=fe(),i=fe(),a=1;const d=fe(),u=fe(),[c,v,h]=Qe((()=>A)),f=fe(),g=fe(),L=[],y=[],p=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=Le(f,n);ve(l,((n,l)=>ve(n,((n,s)=>ve(n,((n,o)=>xe(e,l,s,o,n[t]))))))),ve(s,((n,l)=>ke(e,l,n[t])))})),a=1},I=e=>{pe(f,e),pe(g,e),v(u,[e])},S=(e,t)=>W(((e,t)=>e.splice(0,t))(e,null!=t?t:P(e)),I),T=()=>S(L,P(L)-o),R=()=>M(t,(()=>{K(L,t),T(),S(y),t=void 0,s=1})),w=()=>{t=U(L),s=1},C=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){R();const e=Ie(r,t,fe),i=Ie(e,n,fe),a=Ie(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&de(pe(i,l))&&de(pe(e,n))&&de(pe(r,t))&&w(),x()}})),b=e.addValueListener(null,((e,t,n,l)=>{if(a){R();const e=Ie(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&de(pe(i,t))&&w(),x()}})),m=(e="")=>(k(t)&&(t=n+l++,pe(f,t,[r,i]),J(t,e),r=fe(),i=fe(),s=1),t),V=()=>{q(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),p(0,t),t=U(L),s=1)},E=()=>{q(y)||(K(L,t),t=X(y),p(1,t),s=1)},x=()=>{s&&(v(d),s=0)},D=e=>{const t=m(e);return x(),t},J=(e,t)=>(O(e)&&Le(g,e)!==t&&(pe(g,e,t),v(u,[e])),A),O=e=>ae(f,e),A={setSize:e=>(o=e,T(),A),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ye(g,e),hasCheckpoint:O,getCheckpoint:e=>Le(g,e),goBackward:()=>(V(),x(),A),goForward:()=>(E(),x(),A),goTo:e=>{const n=Q(L,e)?V:Q(y,e)?E:null;for(;!k(n)&&e!=t;)n();return x(),A},addCheckpointIdsListener:e=>c(e,d),addCheckpointListener:(e,t)=>c(t,u,[e]),delListener:e=>(h(e),A),clear:()=>(S(L),S(y),k(t)||I(t),t=void 0,l=0,D(),A),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return te(A.clear())})),ze=(e,t)=>(null!=e?e:0)<(null!=t?t:0)?-1:1,Ne=Ae((e=>{const t=fe(),l=fe(),[s,o,r]=Qe((()=>I)),[i,a,d,u,c,v,h,,f,g,L,y]=Je(e,fe,(e=>k(e)?n:O(e)?H(e,m):m(e)),s,o),p=(t,n,l)=>{const s=c(t);ve(l,((t,l)=>n(l,(n=>ve(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},I={setIndexDefinition:(e,n,s,r,i,a=ze)=>{const d=k(i)?void 0:([e],[t])=>i(e,t);return f(e,n,((n,s,i,u,c,f)=>{let g=0;const L=Me(),y=Me(),p=v(e);if(ve(s,(([e,t],n)=>{const l=Me(e),s=Me(t);ve(l,(e=>he(s,e)?he(l,e):0)),ve(l,(e=>{De(L,e),M(Le(p,e),(t=>{he(t,n),de(t)&&(pe(p,e),g=1)}))})),ve(s,(e=>{De(L,e),ae(p,e)||(pe(p,e,Me()),g=1),De(Le(p,e),n),k(r)||De(y,e)}))})),n(),de(c)||(f?ye(p,(e=>De(y,e))):ye(i,(e=>M(Le(u,e),(e=>De(y,e))))),ve(y,(e=>{const t=(t,n)=>a(Le(c,t),Le(c,n),e),n=[...Le(p,e)];N(n,t)||(pe(p,e,Me(B(n,t))),De(L,e))}))),(g||f)&&!k(d)){const t=[...p];N(t,d)||(h(e,fe(B(t,d))),g=1)}g&&o(t,[e]),ve(L,(t=>o(l,[e,t])))}),Oe(s),M(r,Oe)),I},delIndexDefinition:e=>(g(e),I),getStore:i,getIndexIds:a,forEachIndex:e=>d(((t,n)=>e(t,(e=>p(t,e,n))))),forEachSlice:(e,t)=>p(e,t,v(e)),hasIndex:u,hasSlice:(e,t)=>ae(v(e),t),getTableId:c,getSliceIds:e=>ge(v(e)),getSliceRowIds:(e,t)=>ue(Le(v(e),t)),addIndexIdsListener:L,addSliceIdsListener:(e,n)=>s(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>s(n,l,[e,t]),delListener:e=>(r(e),I),destroy:y,getListenerStats:()=>({})};return te(I)})),Be=fe([["avg",[(e,t)=>$(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:V(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:E(t,e)]],["sum",[e=>$(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,s,o=!1)=>{if(de(n))return;const[r,i,a,d]=s;return o||(o=k(e)),ve(l,(([n,l])=>{o||(e=k(n)?null==i?void 0:i(e,l,t++):k(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=k(e)))})),o?r(ue(n),ie(n)):e},He=Ae((e=>{const t=fe(),[l,s,o]=Qe((()=>y)),[r,i,a,d,u,c,v,,h,f,g,L]=Je(e,F,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===n?void 0:1*e),l,s),y={setMetricDefinition:(e,n,l,o,r,i,a)=>{var d;const u=J(l)?[l,r,i,a]:null!=(d=Le(Be,l))?d:Le(Be,"sum");return h(e,n,((n,l,o,r,i,a)=>{const d=c(e),h=ie(r);a||(a=k(d)),n();let f=We(d,h,r,l,u,a);x(f)||(f=void 0),f!=d&&(v(e,f),s(t,[e],f,d))}),Oe(o,1)),y},delMetricDefinition:e=>(f(e),y),getStore:r,getMetricIds:i,forEachMetric:a,hasMetric:d,getTableId:u,getMetric:c,addMetricIdsListener:g,addMetricListener:(e,n)=>l(n,t,[e]),delListener:e=>(o(e),y),destroy:L,getListenerStats:()=>({})};return te(y)}));var $e=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())}));const qe=fe(),Ge=fe();var Ke=Object.getOwnPropertySymbols,Ue=Object.prototype.hasOwnProperty,Xe=Object.prototype.propertyIsEnumerable;const Ye=Ae((e=>{const t=e.createStore,l=t(),s=t(),o=fe(),{addListener:r,callListeners:i,delListener:a}=s,[v,f,g,R,w,,,C,,b,m,V,E,x]=Je(e,(()=>!0),F,r,i),D=(e,t,...n)=>W(n,(n=>De(Ie(Ie(o,t,fe),e,Me),n))),O=e=>{M(Le(o,e),(e=>{ye(e,((e,t)=>ve(t,(t=>e.delListener(t))))),ce(e)})),W([s,l],(t=>t.delTable(e)))},Q=(e,t,n)=>D(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),z={setQueryDefinition:(t,o,r)=>{C(t,o),O(t);const i=[],a=[[null,[o,null,null,[],fe()]]],d=[],u=[],c=[];r({select:(e,t)=>{const l=J(e)?[P(i)+n,e]:[k(t)?e:t,n=>n(e,t)];return K(i,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=k(n)||J(t)?null:t,s=k(l)?t:n,o=[e,[e,l,J(s)?s:e=>e(s),[],fe()]];return K(a,o),{as:e=>o[0]=e}},where:(e,t,n)=>K(d,J(e)?e:k(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,J(t)?[t,n,l,s]:null!=(o=Le(Be,t))?o:[(e,t)=>t]]];return K(u,r),{as:e=>r[0]=e}},having:(e,t)=>K(c,J(e)?e:n=>n(e)===t)});const v=fe(i);if(de(v))return z;const h=fe(a);ye(h,((e,[,t])=>M(Le(h,t),(({3:t})=>k(e)?0:K(t,e)))));const f=fe(u);let g=l;if(de(f)&&q(c))g=s;else{Q(t,g,s);const e=fe();ye(f,((t,[n,l])=>De(Ie(e,n,Me),[t,l])));const n=Me();ye(v,(t=>ae(e,t)?0:De(n,t)));const l=fe(),o=(n,l,o,r)=>M(n,(([i,a,d,u])=>{ye(l,((t,[n])=>{const l=Ie(i,t,fe),s=Le(l,o),a=r?void 0:n;if(s!==a){const n=Me([[s,a]]),r=ie(l);pe(l,o,a),ve(Le(e,t),(([e,t])=>{const s=We(u[e],r,l,n,t);u[e]=k(Ee(s))?null:s}))}})),de(a)||!j(c,(e=>e((e=>u[e]))))?s.delRow(t,d):k(d)?n[2]=s.addRow(t,u):s.setRow(t,d,u)}));D(g,t,g.addRowListener(t,null,((s,r,i,a)=>{const d=[],u=[],c=fe(),v=g.hasRow(t,i);let h=!v;ve(n,(e=>{const[n,l,s]=a(t,i,e);K(d,l),K(u,s),h||(h=n)})),ye(e,(e=>{const[n,,l]=a(t,i,e);(h||n)&&pe(c,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(he(e,i),de(e)))),c,i,1),v&&o(Ve(l,u,(()=>{const e={};return ve(n,(n=>e[n]=g.getCell(t,i,n))),[fe(),Me(),void 0,e]}),(([,e])=>{De(e,i)})),c,i)})))}Q(t,e,g);const L=(n,l,s,r)=>{const i=t=>e.getCell(l,s,t);W(r,(l=>{var s;const[o,,r,a,d]=Le(h,l),u=null==r?void 0:r(i,n),[c,v]=null!=(s=Le(d,n))?s:[];u!=c&&(k(v)||x(t,v),pe(d,n,k(u)?null:[u,...E(t,1,e.addRowListener(o,u,(()=>L(n,o,u,a))))]))})),(n=>{const l=(t,l)=>{var s,r,i;return e.getCell(...k(l)?[o,n,t]:t===o?[o,n,l]:[null==(s=Le(h,t))?void 0:s[0],null==(i=Le(null==(r=Le(h,t))?void 0:r[4],n))?void 0:i[0],l])};g.transaction((()=>j(d,(e=>e(l)))?ye(v,((e,s)=>xe(g,t,n,e,s(l,n)))):g.delRow(t,n)))})(n)},{3:y}=Le(h,null);return g.transaction((()=>E(t,1,e.addRowListener(o,null,((n,l,s)=>{e.hasRow(o,s)?L(s,o,s,y):(g.delRow(t,s),ve(h,(({4:e})=>M(Le(e,s),(([,n])=>{x(t,n),pe(e,s)})))))}))))),z},delQueryDefinition:e=>(O(e),b(e),z),getStore:v,getQueryIds:f,forEachQuery:g,hasQuery:R,getTableId:w,addQueryIdsListener:e=>m((()=>e(z))),delListener:e=>(a(e),z),destroy:V,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)Ue.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ke)for(var l of Ke(e))t.indexOf(l)<0&&Xe.call(e,l)&&(n[l]=e[l]);return n})(s.getListenerStats(),["tables","tableIds","transaction"])};return oe({[h]:[1,1],[h+T]:[0,1],[y]:[0,1],[p]:[0,1],[I]:[0,5],[L]:[1,2],[T]:[0,2],[S]:[1,3]},(([e,t],n)=>{W(e?["get","has","forEach"]:["get"],(e=>z[e+u+n]=(...t)=>s[e+n](...t))),z[c+u+n+d]=(...e)=>s[c+n+d](...A(e,0,t),((n,...l)=>e[t](z,...l)),!0)})),te(z)})),Ze=Ae((e=>{const t=fe(),l=fe(),s=fe(),o=fe(),[r,i,a]=Qe((()=>R)),[d,u,c,v,h,f,,,g,L,y,p]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>k(e)?void 0:e+n),r,i),I=(e,t,n)=>M(f(e),(([l,,s])=>{if(!ae(s,t)){const o=Me();if(h(e)!=T(e))De(o,t);else{let e=t;for(;!k(e)&&!ae(o,e);)De(o,e),e=Le(l,e)}if(n)return o;pe(s,t,o)}return Le(s,t)})),S=(e,t)=>M(f(e),(([,,e])=>pe(e,t))),T=e=>Le(t,e),R={setRelationshipDefinition:(e,n,r,a)=>(pe(t,e,r),g(e,n,((t,n)=>{const r=Me(),a=Me(),d=Me(),[u,c]=f(e);ve(n,(([t,n],l)=>{k(t)||(De(a,t),M(Le(c,t),(e=>{he(e,l),de(e)&&pe(c,t)}))),k(n)||(De(a,n),ae(c,n)||pe(c,n,Me()),De(Le(c,n),l)),De(r,l),pe(u,l,n),ye(Le(o,e),(t=>{ae(I(e,t),l)&&De(d,t)}))})),t(),ve(r,(t=>i(l,[e,t]))),ve(a,(t=>i(s,[e,t]))),ve(d,(t=>{S(e,t),i(o,[e,t])}))}),Oe(a)),R),delRelationshipDefinition:e=>(pe(t,e),L(e),R),getStore:d,getRelationshipIds:u,forEachRelationship:t=>c((n=>t(n,(t=>e.forEachRow(h(n),t))))),hasRelationship:v,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>{var n;return Le(null==(n=f(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return ue(Le(null==(n=f(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>k(f(e))?[t]:ue(I(e,t,!0)),addRelationshipIdsListener:y,addRemoteRowIdListener:(e,t,n)=>r(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>r(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(I(e,t),r(n,o,[e,t])),delListener:e=>{var t;return S(...null!=(t=a(e))?t:[]),R},destroy:p,getListenerStats:()=>({})};return te(R)})),_e=e=>[e,e],et=()=>[fe(),fe()],tt=e=>[...e],nt=([e,t])=>e===t,lt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),st=JSON.parse,ot=(e,t,n)=>k(e)||!ne(e)||re(e)||ee(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||se(e,l)})),!re(e)),rt=(e,t,n)=>pe(e,t,Le(e,t)==-n?void 0:n),it=()=>{let e,t,n=!1,l=!1,s=!1,r=!1,u=0;const v=fe(),I=fe(),V=fe(),E=fe(),x=fe(),O=fe(),P=fe(),F=fe(),j=fe(),N=fe(),$=fe(),q=fe(),G=fe(),U=fe(),X=Me(),Y=fe(),Z=fe(),_=fe(),ee=fe(),ne=et(),ue=et(),Ve=et(),Je=et(),Oe=et(),Ae=et(),Pe=et(),je=et(),Ne=et(),Be=et(),We=et(),He=et(),$e=et(),qe=et(),Ge=et(),Ke=et(),Ue=et(),Xe=et(),Ye=et(),Ze=et(),at=et(),dt=et(),ut=fe(),ct=et(),[vt,ht,ft,gt]=Qe((()=>Qn)),Lt=e=>{if(!ot(e,((e,t)=>Q([i,a],t))))return!1;const t=e[i];return!(!D(t)&&t!=o||(Ee(e[a])!=t&&se(e,a),0))},yt=(t,n)=>(!e||ae($,n)||Gt(n))&&ot(t,((e,t)=>pt(n,t,e)),(()=>Gt(n))),pt=(e,t,n,l)=>ot(l?n:Rt(n,e,t),((l,s)=>M(It(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Gt(e,t))),It=(t,n,l,s)=>e?M(Le(Le($,t),l),(e=>Ee(s)!=e[i]?Gt(t,n,l,s,e[a]):s),(()=>Gt(t,n,l,s))):k(Ee(s))?Gt(t,n,l,s):s,St=(e,t)=>ot(t?e:wt(e),((t,n)=>M(Tt(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,n)=>t?M(Le(G,e),(t=>Ee(n)!=t[i]?Kt(e,n,t[a]):n),(()=>Kt(e,n))):k(Ee(n))?Kt(e,n):n,Rt=(e,t,n)=>(M(Le(q,t),(([l,s])=>{ve(l,((t,n)=>{le(e,n)||(e[n]=t)})),ve(s,(l=>{le(e,l)||Gt(t,n,l)}))})),e),wt=e=>(t&&(ve(U,((t,n)=>{le(e,n)||(e[n]=t)})),ve(X,(t=>{le(e,t)||Kt(t)}))),e),Ct=e=>Se($,e,((e,t,n)=>{const l=fe(),s=Me();Se(Ie($,t,fe),n,((e,t,n)=>{pe(e,t,n),M(n[a],(e=>pe(l,t,e)),(()=>De(s,t)))})),pe(q,t,[l,s])}),((e,t)=>{pe($,t),pe(q,t)})),bt=e=>Se(G,e,((e,t,n)=>{pe(G,t,n),M(n[a],(e=>pe(U,t,e)),(()=>De(X,t)))}),((e,t)=>{pe(G,t),pe(U,t),he(X,t)})),mt=e=>re(e)?xn():Cn(e),Vt=e=>Se(_,e,((e,t,n)=>Et(t,n)),((e,t)=>Ft(t))),Et=(e,t)=>Se(Ie(_,e,(()=>(Nt(e,1),pe(Y,e,Fe()),pe(Z,e,fe()),fe()))),t,((t,n,l)=>xt(e,t,n,l)),((t,n)=>Qt(e,t,n))),xt=(e,t,n,l,s)=>Se(Ie(t,n,(()=>(Bt(e,n,1),fe()))),l,((t,l,s)=>kt(e,n,t,l,s)),((l,o)=>jt(e,t,n,l,o,s))),kt=(e,t,n,l,s)=>{ae(n,l)||Wt(e,t,l,1);const o=Le(n,l);s!==o&&(Ht(e,t,l,o,s),pe(n,l,s))},Mt=(e,t,n,l,s)=>M(Le(t,n),(t=>kt(e,n,t,l,s)),(()=>xt(e,t,n,Rt({[l]:s},e,n)))),Dt=e=>re(e)?Dn():bn(e),Jt=e=>Se(ee,e,((e,t,n)=>Ot(t,n)),((e,t)=>zt(t))),Ot=(e,t)=>{ae(ee,e)||$t(e,1);const n=Le(ee,e);t!==n&&(qt(e,n,t),pe(ee,e,t))},At=(e,t)=>{const[n]=Le(Y,e),l=n(t);return ae(Le(_,e),l)?At(e,t):l},Pt=e=>{var t;return null!=(t=Le(_,e))?t:Et(e,{})},Ft=e=>Et(e,{}),Qt=(e,t,n)=>{const[,l]=Le(Y,e);l(n),xt(e,t,n,{},!0)},jt=(e,t,n,l,s,o)=>{var r;const i=Le(null==(r=Le(q,e))?void 0:r[0],s);if(!k(i)&&!o)return kt(e,n,l,s,i);const a=t=>{Ht(e,n,t,Le(l,t)),Wt(e,n,t,-1),pe(l,t)};k(i)?a(s):ye(l,a),de(l)&&(Bt(e,n,-1),de(pe(t,n))&&(Nt(e,-1),pe(_,e),pe(Y,e),pe(Z,e)))},zt=e=>{const t=Le(U,e);if(!k(t))return Ot(e,t);qt(e,Le(ee,e)),$t(e,-1),pe(ee,e)},Nt=(e,t)=>rt(v,e,t),Bt=(e,t,n)=>rt(Ie(E,e,fe),t,n)&&pe(V,e,Ie(V,e,(()=>0))+n),Wt=(e,t,n,l)=>{var s;const o=Le(Z,e),r=null!=(s=Le(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&rt(Ie(I,e,fe),n,l),pe(o,n,r!=-l?r+l:null),rt(Ie(Ie(x,e,fe),t,fe),n,l)},Ht=(e,t,n,l,s)=>Ie(Ie(Ie(O,e,fe),t,fe),n,(()=>[l,0]))[1]=s,$t=(e,t)=>rt(P,e,t),qt=(e,t,n)=>Ie(F,e,(()=>[t,0]))[1]=n,Gt=(e,t,n,l,s)=>(K(Ie(Ie(Ie(j,e,fe),t,fe),n,(()=>[])),l),s),Kt=(e,t,n)=>(K(Ie(N,e,(()=>[])),t),n),Ut=(e,t,n)=>M(Le(Le(Le(O,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,..._e(hn(e,t,n))])),Xt=e=>M(Le(F,e),(([e,t])=>[!0,e,t]),(()=>[!1,..._e(Ln(e))])),Yt=e=>de(j)||de(Ke[e])?0:ve(e?me(j):j,((t,n)=>ve(t,((t,l)=>ve(t,((t,s)=>ht(Ke[e],[n,l,s],t))))))),Zt=e=>de(N)||de(Ue[e])?0:ve(e?Ce(N):N,((t,n)=>ht(Ue[e],[n],t))),_t=(e,t,n,l)=>{if(!de(e))return ht(t,l,(()=>Te(e))),ye(e,((e,t)=>ht(n,[...null!=l?l:[],e],1==t))),1},en=e=>{const t=yn();t!=s&&ht(ne[e],void 0,t);const n=de(Be[e]),l=de($e[e])&&de(qe[e])&&de(Ne[e])&&de(We[e])&&de(Ae[e])&&de(Pe[e])&&de(je[e])&&n&&de(Ve[e])&&de(Je[e]),o=de(Ge[e])&&de(He[e])&&de(Oe[e])&&de(ue[e]);if(!l||!o){const t=e?[Ce(v),be(I),Ce(V),be(E),me(x),me(O)]:[v,I,V,E,x,O];if(!l){_t(t[0],Ve[e],Je[e]),ve(t[1],((t,n)=>_t(t,Ae[e],Pe[e],[n]))),ve(t[2],((t,n)=>{0!=t&&ht(je[e],[n],dn(n))}));const l=Me();ve(t[3],((t,s)=>{_t(t,Ne[e],We[e],[s])&&!n&&(ht(Be[e],[s,null]),De(l,s))})),n||ve(t[5],((t,n)=>{if(!ae(l,n)){const l=Me();ve(t,(e=>ve(e,(([t,n],s)=>n!==t?De(l,s):he(e,s))))),ve(l,(t=>ht(Be[e],[n,t])))}})),ve(t[4],((t,n)=>ve(t,((t,l)=>_t(t,$e[e],qe[e],[n,l])))))}if(!o){let n;ve(t[5],((t,l)=>{let s;ve(t,((t,o)=>{let r;ve(t,(([t,i],a)=>{i!==t&&(ht(Ge[e],[l,o,a],i,t,Ut),n=s=r=1)})),r&&ht(He[e],[l,o],Ut)})),s&&ht(Oe[e],[l],Ut)})),n&&ht(ue[e],void 0,Ut)}}},tn=e=>{const t=Rn();t!=r&&ht(Xe[e],void 0,t);const n=de(Ze[e])&&de(at[e]),l=de(dt[e])&&de(Ye[e]);if(!n||!l){const t=e?[Ce(P),Ce(F)]:[P,F];if(n||_t(t[0],Ze[e],at[e]),!l){let n;ve(t[1],(([t,l],s)=>{l!==t&&(ht(dt[e],[s],l,t,Xt),n=1)})),n&&ht(Ye[e],void 0,Xt)}}},nn=(e,...t)=>(An((()=>e(...H(t,m)))),Qn),ln=()=>[Te(O,((e,t)=>-1===Le(v,t)?null:Te(e,((e,n)=>-1===Le(Le(E,t),n)?null:Te(e,(([,e])=>null!=e?e:null),((e,t)=>nt(t)))),re)),re),Te(F,(([,e])=>null!=e?e:null),((e,t)=>nt(t)))],sn=()=>({cellsTouched:n,valuesTouched:l,changedCells:we(O,tt,nt),invalidCells:we(j),changedValues:Te(F,tt,nt),invalidValues:Te(N),changedTableIds:Te(v),changedRowIds:Re(E),changedCellIds:we(x),changedValueIds:Te(P)}),on=()=>we(_),rn=()=>ge(_),an=e=>ge(Le(Z,m(e))),dn=e=>ie(Le(_,m(e))),un=e=>ge(Le(_,m(e))),cn=(e,t,n,l=0,s)=>{return H(A(B((o=Le(_,m(e)),r=(e,n)=>[k(t)?n:Le(e,m(t)),n],H([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>ze(e,t)*(n?-1:1))),l,k(s)?s:l+s),(([,e])=>e));var o,r,i},vn=(e,t)=>ge(Le(Le(_,m(e)),m(t))),hn=(e,t,n)=>Le(Le(Le(_,m(e)),m(t)),m(n)),fn=()=>Te(ee),gn=()=>ge(ee),Ln=e=>Le(ee,m(e)),yn=()=>!de(_),pn=e=>ae(_,m(e)),In=(e,t)=>ae(Le(Z,m(e)),m(t)),Sn=(e,t)=>ae(Le(_,m(e)),m(t)),Tn=(e,t,n)=>ae(Le(Le(_,m(e)),m(t)),m(n)),Rn=()=>!de(ee),wn=e=>ae(ee,m(e)),Cn=e=>nn((()=>(e=>ot(e,yt,Gt))(e)?Vt(e):0)),bn=e=>nn((()=>St(e)?Jt(e):0)),mn=e=>{try{mt(st(e))}catch(e){}return Qn},Vn=t=>nn((()=>{if((e=ot(t,(e=>ot(e,Lt))))&&(Ct(t),!de(_))){const e=on();xn(),Cn(e)}})),En=e=>nn((()=>{if(t=(e=>ot(e,Lt))(e)){const n=fn();On(),Dn(),t=!0,bt(e),bn(n)}})),xn=()=>nn((()=>Vt({}))),kn=e=>nn((e=>ae(_,e)?Ft(e):0),e),Mn=(e,t)=>nn(((e,t)=>M(Le(_,e),(n=>ae(n,t)?Qt(e,n,t):0))),e,t),Dn=()=>nn((()=>Jt({}))),Jn=()=>nn((()=>{Ct({}),e=!1})),On=()=>nn((()=>{bt({}),t=!1})),An=(e,t)=>{if(-1!=u){Pn();const n=e();return Fn(t),n}},Pn=()=>(-1!=u&&u++,1==u&&ht(ut,void 0,ln,sn),Qn),Fn=e=>(u>0&&(u--,0==u&&(n=!de(O),l=!de(F),u=1,Yt(1),n&&en(1),Zt(1),l&&tn(1),(null==e?void 0:e(ln,sn))&&(ve(O,((e,t)=>ve(e,((e,n)=>ve(e,(([e],l)=>xe(Qn,t,n,l,e))))))),ve(F,(([e],t)=>ke(Qn,t,e))),n=l=!1),ht(ct[0],void 0,ln,sn),u=-1,Yt(0),n&&en(0),Zt(0),l&&tn(0),ht(ct[1],void 0,ln,sn),u=0,n=l=!1,s=yn(),r=Rn(),W([v,I,V,E,x,O,j,P,F,N],ce))),Qn),Qn={getContent:()=>[on(),fn()],getTables:on,getTableIds:rn,getTable:e=>Re(Le(_,m(e))),getTableCellIds:an,getRowCount:dn,getRowIds:un,getSortedRowIds:cn,getRow:(e,t)=>Te(Le(Le(_,m(e)),m(t))),getCellIds:vn,getCell:hn,getValues:fn,getValueIds:gn,getValue:Ln,hasTables:yn,hasTable:pn,hasTableCell:In,hasRow:Sn,hasCell:Tn,hasValues:Rn,hasValue:wn,getTablesJson:()=>lt(_),getValuesJson:()=>lt(ee),getJson:()=>lt([_,ee]),getTablesSchemaJson:()=>lt($),getValuesSchemaJson:()=>lt(G),getSchemaJson:()=>lt([$,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>nn((()=>{(re(e)?xn:Cn)(e),(re(t)?Dn:bn)(t)})),setTables:Cn,setTable:(e,t)=>nn((e=>yt(t,e)?Et(e,t):0),e),setRow:(e,t,n)=>nn(((e,t)=>pt(e,t,n)?xt(e,Pt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let l;return pt(e,l,t)&&(e=m(e),xt(e,Pt(e),l=At(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>nn(((e,t)=>{if(pt(e,t,n,1)){const l=Pt(e);oe(n,((n,s)=>Mt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>nn(((e,t,n)=>M(It(e,t,n,J(l)?l(hn(e,t,n)):l),(l=>Mt(e,Pt(e),t,n,l)))),e,t,n),setValues:bn,setPartialValues:e=>nn((()=>St(e,1)?oe(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>nn((e=>M(Tt(e,J(t)?t(Ln(e)):t),(t=>Ot(e,t)))),e),setTransactionChanges:e=>nn((()=>{oe(e[0],((e,t)=>k(e)?kn(t):oe(e,((e,n)=>k(e)?Mn(t,n):oe(e,((e,l)=>xe(Qn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(Qn,t,e)))})),setTablesJson:mn,setValuesJson:e=>{try{Dt(st(e))}catch(e){}return Qn},setJson:e=>nn((()=>{try{const[t,n]=st(e);mt(t),Dt(n)}catch(t){mn(e)}})),setTablesSchema:Vn,setValuesSchema:En,setSchema:(e,t)=>nn((()=>{Vn(e),En(t)})),delTables:xn,delTable:kn,delRow:Mn,delCell:(e,t,n,l)=>nn(((e,t,n)=>M(Le(_,e),(s=>M(Le(s,t),(o=>ae(o,n)?jt(e,s,t,o,n,l):0))))),e,t,n),delValues:Dn,delValue:e=>nn((e=>ae(ee,e)?zt(e):0),e),delTablesSchema:Jn,delValuesSchema:On,delSchema:()=>nn((()=>{Jn(),On()})),transaction:An,startTransaction:Pn,finishTransaction:Fn,forEachTable:e=>ve(_,((t,n)=>e(n,(e=>ve(t,((t,n)=>e(n,(e=>ye(t,e))))))))),forEachTableCell:(e,t)=>ye(Le(Z,m(e)),t),forEachRow:(e,t)=>ve(Le(_,m(e)),((e,n)=>t(n,(t=>ye(e,t))))),forEachCell:(e,t,n)=>ye(Le(Le(_,m(e)),m(t)),n),forEachValue:e=>ye(ee,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=cn(e,t,n,l,s);return vt((()=>{const r=cn(e,t,n,l,s);z(r,i)||(i=r,o(Qn,e,t,n,l,s,i))}),Be[r?1:0],[e,t],[rn])},addStartTransactionListener:e=>vt(e,ut),addWillFinishTransactionListener:e=>vt(e,ct[0]),addDidFinishTransactionListener:e=>vt(e,ct[1]),callListener:e=>(gt(e),Qn),delListener:e=>(ft(e),Qn),getListenerStats:()=>({}),createStore:it,addListener:vt,callListeners:ht};return oe({[b+f]:[0,ne,[],()=>[yn()]],[f]:[0,ue],[g]:[0,Ve],[b+h]:[1,Je,[rn],e=>[pn(...e)]],[h]:[1,Oe,[rn]],[h+T]:[1,Ae,[rn]],[b+h+S]:[2,Pe,[rn,an],e=>[In(...e)]],[y]:[1,je,[rn]],[p]:[1,Ne,[rn]],[b+L]:[2,We,[rn,un],e=>[Sn(...e)]],[L]:[2,He,[rn,un]],[T]:[2,$e,[rn,un]],[b+S]:[3,qe,[rn,un,vn],e=>[Tn(...e)]],[S]:[3,Ge,[rn,un,vn],e=>_e(hn(...e))],InvalidCell:[3,Ke],[b+w]:[0,Xe,[],()=>[Rn()]],[w]:[0,Ye],[C]:[0,Ze],[b+R]:[1,at,[gn],e=>[wn(...e)]],[R]:[1,dt,[gn],e=>_e(Ln(e[0]))],InvalidValue:[1,Ue]},(([e,t,n,l],s)=>{Qn[c+s+d]=(...s)=>vt(s[e],t[s[e+1]?1:0],e>0?A(s,0,e):void 0,n,l)})),te(Qn)};e.createCheckpoints=je,e.createCustomPersister=(e,t,n,l,s,o,[r,i]=[],a=[])=>{let d,u,c,v=0,h=0;Ie(qe,a,(()=>0)),Ie(Ge,a,(()=>[]));const f=e=>$e(void 0,null,(function*(){return 2!=v&&(v=1,yield g.schedule((()=>$e(void 0,null,(function*(){yield e(),v=0}))))),g})),g={load:(n,l)=>$e(void 0,null,(function*(){return yield f((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},s={}){return g.stopAutoLoad(),yield g.load(n,s),h=1,c=l(((n,l)=>$e(void 0,null,(function*(){if(l){const t=l();yield f((()=>$e(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield f((()=>$e(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==n?void 0:n())?l:yield t())}catch(e){null==o||o(e)}}))))})))),g})),stopAutoLoad:()=>(h&&(s(c),c=void 0,h=0),g),save:t=>$e(void 0,null,(function*(){return 1!=v&&(v=2,yield g.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){null==o||o(e)}v=0}))))),g})),startAutoSave:()=>$e(void 0,null,(function*(){return yield g.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();re(n)&&re(l)||g.save((()=>[n,l]))})),g})),stopAutoSave:()=>(M(d,e.delListener),d=void 0,g),schedule:(...e)=>$e(void 0,null,(function*(){return K(Le(Ge,a),...e),yield $e(void 0,null,(function*(){if(!Le(qe,a)){for(pe(qe,a,1);!k(u=X(Le(Ge,a)));)try{yield u()}catch(e){null==o||o(e)}pe(qe,a,0)}})),g})),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(g[r]=()=>i),te(g)},e.createIndexes=Ne,e.createMetrics=He,e.createQueries=Ye,e.createRelationships=Ze,e.createStore=it,e.defaultSorter=ze},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",l=t(n),s=t(!0),o=t(0),r=t(t),i="type",a="default",d="Listener",u="Result",c="add",v="Has",h="Ids",f="Table",g=f+"s",L=f+h,y="Row",p=y+"Count",I=y+h,S="Sorted"+y+h,T="Cell",R=T+h,w="Value",C=w+"s",b=w+h,m=e=>n+e,V=Math.max,E=Math.min,x=isFinite,k=e=>null==e,M=(e,t,n)=>k(e)?null==n?void 0:n():t(e),D=e=>e==l||e==s,J=e=>t(e)==r,O=e=>Array.isArray(e),A=(e,t,n)=>e.slice(t,n),P=e=>e.length,F=()=>{},Q=(e,t)=>e.includes(t),j=(e,t)=>e.every(t),z=(e,t)=>P(e)===P(t)&&j(e,((e,n)=>t[n]===e)),N=(e,t)=>j(e,((n,l)=>0==l||t(e[l-1],n)<=0)),B=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),H=(e,t)=>e.map(t),$=e=>G(e,((e,t)=>e+t),0),q=e=>0==P(e),G=(e,t,n)=>e.reduce(t,n),K=(e,...t)=>e.push(...t),U=e=>e.pop(),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.keys,ee=Y.isFrozen,te=Y.freeze,ne=e=>!k(e)&&M(Z(e),(e=>e==Y.prototype||k(Z(e))),(()=>!0)),le=(e,t)=>!k(((e,t)=>M(e,(e=>e[t])))(e,t)),se=(e,t)=>(delete e[t],e),oe=(e,t)=>H(Y.entries(e),(([e,n])=>t(n,e))),re=e=>ne(e)&&0==(e=>P(_(e)))(e),ie=e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0},ae=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},de=e=>k(e)||0==ie(e),ue=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ve=(e,t)=>null==e?void 0:e.forEach(t),he=(e,t)=>null==e?void 0:e.delete(t),fe=e=>new Map(e),ge=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},Le=(e,t)=>null==e?void 0:e.get(t),ye=(e,t)=>ve(e,((e,n)=>t(n,e))),pe=(e,t,n)=>k(n)?(he(e,t),e):null==e?void 0:e.set(t,n),Ie=(e,t,n)=>(ae(e,t)||pe(e,t,n()),Le(e,t)),Se=(e,t,n,l=pe)=>(oe(t,((t,l)=>n(e,l,t))),ye(e,(n=>le(t,n)?0:l(e,n))),e),Te=(e,t,n)=>{const l={};return ve(e,((e,s)=>{const o=t?t(e,s):e;!(null==n?void 0:n(o,e))&&(l[s]=o)})),l},Re=(e,t,n)=>Te(e,(e=>Te(e,t,n)),re),we=(e,t,n)=>Te(e,(e=>Re(e,t,n)),re),Ce=(e,t)=>{const n=fe();return ve(e,((e,l)=>{var s;return n.set(l,null!=(s=null==t?void 0:t(e))?s:e)})),n},be=e=>Ce(e,Ce),me=e=>Ce(e,be),Ve=(e,t,n,l,s=0)=>M((n?Ie:Le)(e,t[s],s>P(t)-2?n:fe),(o=>{if(s>P(t)-2)return(null==l?void 0:l(o))&&pe(e,t[s]),o;const r=Ve(o,t,n,l,s+1);return de(o)&&pe(e,t[s]),r})),Ee=e=>{const n=t(e);return D(n)||n==o&&x(e)?n:void 0},xe=(e,t,n,l,s)=>k(s)?e.delCell(t,n,l,!0):e.setCell(t,n,l,s),ke=(e,t,n)=>k(n)?e.delValue(t):e.setValue(t,n),Me=e=>new Set(O(e)||k(e)?e:[e]),De=(e,t)=>null==e?void 0:e.add(t),Je=(e,t,n,l,s)=>{const o=e.hasRow,r=fe(),i=fe(),a=fe(),d=fe(),u=fe(),c=fe(),v=(t,n,...l)=>{const s=Ie(c,t,Me);return W(l,(t=>De(s,t)&&n&&e.callListener(t))),l},h=(t,...n)=>M(Le(c,t),(l=>{W(q(n)?ue(l):n,(t=>{e.delListener(t),he(l,t)})),de(l)&&pe(c,t)})),f=(e,n)=>{pe(r,e,n),ae(i,e)||(pe(i,e,t()),pe(d,e,fe()),pe(u,e,fe()),s(a))},g=e=>{pe(r,e),pe(i,e),pe(d,e),pe(u,e),h(e),s(a)};return[()=>e,()=>ge(r),e=>ye(i,e),e=>ae(i,e),e=>Le(r,e),e=>Le(i,e),(e,t)=>pe(i,e,t),f,(t,l,s,r,i)=>{f(t,l);const a=fe(),c=fe(),g=Le(d,t),L=Le(u,t),y=t=>{const s=n=>e.getCell(l,t,n),d=Le(g,t),u=o(l,t)?n(r(s,t)):void 0;if(d===u||O(d)&&O(u)&&z(d,u)||pe(a,t,[d,u]),!k(i)){const e=Le(L,t),n=o(l,t)?i(s,t):void 0;e!=n&&pe(c,t,n)}},p=e=>{s((()=>{ve(a,(([,e],t)=>pe(g,t,e))),ve(c,((e,t)=>pe(L,t,e)))}),a,c,g,L,e),ce(a),ce(c)};ye(g,y),e.hasTable(l)&&W(e.getRowIds(l),(e=>{ae(g,e)||y(e)})),p(!0),h(t),v(t,0,e.addRowListener(l,null,((e,t,n)=>y(n))),e.addTableListener(l,(()=>p())))},g,e=>l(e,a),()=>ye(c,g),v,h]},Oe=(e,s)=>t(e)==l?t=>t(e):null!=e?e:()=>null!=s?s:n,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Pe=/^\d+$/,Fe=()=>{const e=[];let t=0;return[l=>{var s;return null!=(s=l?X(e):null)?s:n+t++},t=>{Pe.test(t)&&P(e)<1e3&&K(e,t)}]},Qe=e=>{let t;const[l,s]=Fe(),o=fe();return[(s,r,i,a=[],d=(()=>[]))=>{null!=t||(t=e());const u=l(1);return pe(o,u,[s,r,i,a,d]),De(Ve(r,null!=i?i:[n],Me),u),u},(e,l,...s)=>W(((e,t=[n])=>{const l=[],s=(e,n)=>n==P(t)?K(l,e):null===t[n]?ve(e,(e=>s(e,n+1))):W([t[n],null],(t=>s(Le(e,t),n+1)));return s(e,0),l})(e,l),(e=>ve(e,(e=>Le(o,e)[0](t,...null!=l?l:[],...s))))),e=>M(Le(o,e),(([,t,l])=>(Ve(t,null!=l?l:[n],void 0,(t=>(he(t,e),de(t)?1:0))),pe(o,e),s(e),l))),e=>M(Le(o,e),(([e,,n=[],l,s])=>{const o=(...r)=>{var i,a;const d=P(r);d==P(n)?e(t,...r,...s(r)):k(n[d])?W(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>o(...r,e))):o(...r,n[d])};o()}))]},je=Ae((e=>{let t,l,s,o=100,r=fe(),i=fe(),a=1;const d=fe(),u=fe(),[c,v,h]=Qe((()=>A)),f=fe(),g=fe(),L=[],y=[],p=(t,n)=>{a=0,e.transaction((()=>{const[l,s]=Le(f,n);ve(l,((n,l)=>ve(n,((n,s)=>ve(n,((n,o)=>xe(e,l,s,o,n[t]))))))),ve(s,((n,l)=>ke(e,l,n[t])))})),a=1},I=e=>{pe(f,e),pe(g,e),v(u,[e])},S=(e,t)=>W(((e,t)=>e.splice(0,t))(e,null!=t?t:P(e)),I),T=()=>S(L,P(L)-o),R=()=>M(t,(()=>{K(L,t),T(),S(y),t=void 0,s=1})),w=()=>{t=U(L),s=1},C=e.addCellListener(null,null,null,((e,t,n,l,s,o)=>{if(a){R();const e=Ie(r,t,fe),i=Ie(e,n,fe),a=Ie(i,l,(()=>[o,void 0]));a[1]=s,a[0]===s&&de(pe(i,l))&&de(pe(e,n))&&de(pe(r,t))&&w(),x()}})),b=e.addValueListener(null,((e,t,n,l)=>{if(a){R();const e=Ie(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&de(pe(i,t))&&w(),x()}})),m=(e="")=>(k(t)&&(t=n+l++,pe(f,t,[r,i]),J(t,e),r=fe(),i=fe(),s=1),t),V=()=>{q(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),p(0,t),t=U(L),s=1)},E=()=>{q(y)||(K(L,t),t=X(y),p(1,t),s=1)},x=()=>{s&&(v(d),s=0)},D=e=>{const t=m(e);return x(),t},J=(e,t)=>(O(e)&&Le(g,e)!==t&&(pe(g,e,t),v(u,[e])),A),O=e=>ae(f,e),A={setSize:e=>(o=e,T(),A),addCheckpoint:D,setCheckpoint:J,getStore:()=>e,getCheckpointIds:()=>[[...L],t,[...y]],forEachCheckpoint:e=>ye(g,e),hasCheckpoint:O,getCheckpoint:e=>Le(g,e),goBackward:()=>(V(),x(),A),goForward:()=>(E(),x(),A),goTo:e=>{const n=Q(L,e)?V:Q(y,e)?E:null;for(;!k(n)&&e!=t;)n();return x(),A},addCheckpointIdsListener:e=>c(e,d),addCheckpointListener:(e,t)=>c(t,u,[e]),delListener:e=>(h(e),A),clear:()=>(S(L),S(y),k(t)||I(t),t=void 0,l=0,D(),A),destroy:()=>{e.delListener(C),e.delListener(b)},getListenerStats:()=>({})};return te(A.clear())})),ze=(e,t)=>(null!=e?e:0)<(null!=t?t:0)?-1:1,Ne=Ae((e=>{const t=fe(),l=fe(),[s,o,r]=Qe((()=>I)),[i,a,d,u,c,v,h,,f,g,L,y]=Je(e,fe,(e=>k(e)?n:O(e)?H(e,m):m(e)),s,o),p=(t,n,l)=>{const s=c(t);ve(l,((t,l)=>n(l,(n=>ve(t,(t=>n(t,(n=>e.forEachCell(s,t,n)))))))))},I={setIndexDefinition:(e,n,s,r,i,a=ze)=>{const d=k(i)?void 0:([e],[t])=>i(e,t);return f(e,n,((n,s,i,u,c,f)=>{let g=0;const L=Me(),y=Me(),p=v(e);if(ve(s,(([e,t],n)=>{const l=Me(e),s=Me(t);ve(l,(e=>he(s,e)?he(l,e):0)),ve(l,(e=>{De(L,e),M(Le(p,e),(t=>{he(t,n),de(t)&&(pe(p,e),g=1)}))})),ve(s,(e=>{De(L,e),ae(p,e)||(pe(p,e,Me()),g=1),De(Le(p,e),n),k(r)||De(y,e)}))})),n(),de(c)||(f?ye(p,(e=>De(y,e))):ye(i,(e=>M(Le(u,e),(e=>De(y,e))))),ve(y,(e=>{const t=(t,n)=>a(Le(c,t),Le(c,n),e),n=[...Le(p,e)];N(n,t)||(pe(p,e,Me(B(n,t))),De(L,e))}))),(g||f)&&!k(d)){const t=[...p];N(t,d)||(h(e,fe(B(t,d))),g=1)}g&&o(t,[e]),ve(L,(t=>o(l,[e,t])))}),Oe(s),M(r,Oe)),I},delIndexDefinition:e=>(g(e),I),getStore:i,getIndexIds:a,forEachIndex:e=>d(((t,n)=>e(t,(e=>p(t,e,n))))),forEachSlice:(e,t)=>p(e,t,v(e)),hasIndex:u,hasSlice:(e,t)=>ae(v(e),t),getTableId:c,getSliceIds:e=>ge(v(e)),getSliceRowIds:(e,t)=>ue(Le(v(e),t)),addIndexIdsListener:L,addSliceIdsListener:(e,n)=>s(n,t,[e]),addSliceRowIdsListener:(e,t,n)=>s(n,l,[e,t]),delListener:e=>(r(e),I),destroy:y,getListenerStats:()=>({})};return te(I)})),Be=fe([["avg",[(e,t)=>$(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>V(...e),(e,t)=>V(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:V(t,e)]],["min",[e=>E(...e),(e,t)=>E(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:E(t,e)]],["sum",[e=>$(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,s,o=!1)=>{if(de(n))return;const[r,i,a,d]=s;return o||(o=k(e)),ve(l,(([n,l])=>{o||(e=k(n)?null==i?void 0:i(e,l,t++):k(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=k(e)))})),o?r(ue(n),ie(n)):e},He=Ae((e=>{const t=fe(),[l,s,o]=Qe((()=>y)),[r,i,a,d,u,c,v,,h,f,g,L]=Je(e,F,(e=>isNaN(e)||k(e)||!0===e||!1===e||e===n?void 0:1*e),l,s),y={setMetricDefinition:(e,n,l,o,r,i,a)=>{var d;const u=J(l)?[l,r,i,a]:null!=(d=Le(Be,l))?d:Le(Be,"sum");return h(e,n,((n,l,o,r,i,a)=>{const d=c(e),h=ie(r);a||(a=k(d)),n();let f=We(d,h,r,l,u,a);x(f)||(f=void 0),f!=d&&(v(e,f),s(t,[e],f,d))}),Oe(o,1)),y},delMetricDefinition:e=>(f(e),y),getStore:r,getMetricIds:i,forEachMetric:a,hasMetric:d,getTableId:u,getMetric:c,addMetricIdsListener:g,addMetricListener:(e,n)=>l(n,t,[e]),delListener:e=>(o(e),y),destroy:L,getListenerStats:()=>({})};return te(y)}));var $e=(e,t,n)=>new Promise(((l,s)=>{var o=e=>{try{i(n.next(e))}catch(e){s(e)}},r=e=>{try{i(n.throw(e))}catch(e){s(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(o,r);i((n=n.apply(e,t)).next())}));const qe=fe(),Ge=fe();var Ke=Object.getOwnPropertySymbols,Ue=Object.prototype.hasOwnProperty,Xe=Object.prototype.propertyIsEnumerable;const Ye=Ae((e=>{const t=e.createStore,l=t(),s=t(),o=fe(),{addListener:r,callListeners:i,delListener:a}=s,[v,h,g,L,w,,,C,,b,m,V,E,x]=Je(e,(()=>!0),F,r,i),D=(e,t,...n)=>W(n,(n=>De(Ie(Ie(o,t,fe),e,Me),n))),O=e=>{M(Le(o,e),(e=>{ye(e,((e,t)=>ve(t,(t=>e.delListener(t))))),ce(e)})),W([s,l],(t=>t.delTable(e)))},Q=(e,t,n)=>D(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),z={setQueryDefinition:(t,o,r)=>{C(t,o),O(t);const i=[],a=[[null,[o,null,null,[],fe()]]],d=[],u=[],c=[];r({select:(e,t)=>{const l=J(e)?[P(i)+n,e]:[k(t)?e:t,n=>n(e,t)];return K(i,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=k(n)||J(t)?null:t,s=k(l)?t:n,o=[e,[e,l,J(s)?s:e=>e(s),[],fe()]];return K(a,o),{as:e=>o[0]=e}},where:(e,t,n)=>K(d,J(e)?e:k(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,s)=>{var o;const r=[e,[e,J(t)?[t,n,l,s]:null!=(o=Le(Be,t))?o:[(e,t)=>t]]];return K(u,r),{as:e=>r[0]=e}},having:(e,t)=>K(c,J(e)?e:n=>n(e)===t)});const v=fe(i);if(de(v))return z;const h=fe(a);ye(h,((e,[,t])=>M(Le(h,t),(({3:t})=>k(e)?0:K(t,e)))));const f=fe(u);let g=l;if(de(f)&&q(c))g=s;else{Q(t,g,s);const e=fe();ye(f,((t,[n,l])=>De(Ie(e,n,Me),[t,l])));const n=Me();ye(v,(t=>ae(e,t)?0:De(n,t)));const l=fe(),o=(n,l,o,r)=>M(n,(([i,a,d,u])=>{ye(l,((t,[n])=>{const l=Ie(i,t,fe),s=Le(l,o),a=r?void 0:n;if(s!==a){const n=Me([[s,a]]),r=ie(l);pe(l,o,a),ve(Le(e,t),(([e,t])=>{const s=We(u[e],r,l,n,t);u[e]=k(Ee(s))?null:s}))}})),de(a)||!j(c,(e=>e((e=>u[e]))))?s.delRow(t,d):k(d)?n[2]=s.addRow(t,u):s.setRow(t,d,u)}));D(g,t,g.addRowListener(t,null,((s,r,i,a)=>{const d=[],u=[],c=fe(),v=g.hasRow(t,i);let h=!v;ve(n,(e=>{const[n,l,s]=a(t,i,e);K(d,l),K(u,s),h||(h=n)})),ye(e,(e=>{const[n,,l]=a(t,i,e);(h||n)&&pe(c,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(he(e,i),de(e)))),c,i,1),v&&o(Ve(l,u,(()=>{const e={};return ve(n,(n=>e[n]=g.getCell(t,i,n))),[fe(),Me(),void 0,e]}),(([,e])=>{De(e,i)})),c,i)})))}Q(t,e,g);const L=(n,l,s,r)=>{const i=t=>e.getCell(l,s,t);W(r,(l=>{var s;const[o,,r,a,d]=Le(h,l),u=null==r?void 0:r(i,n),[c,v]=null!=(s=Le(d,n))?s:[];u!=c&&(k(v)||x(t,v),pe(d,n,k(u)?null:[u,...E(t,1,e.addRowListener(o,u,(()=>L(n,o,u,a))))]))})),(n=>{const l=(t,l)=>{var s,r,i;return e.getCell(...k(l)?[o,n,t]:t===o?[o,n,l]:[null==(s=Le(h,t))?void 0:s[0],null==(i=Le(null==(r=Le(h,t))?void 0:r[4],n))?void 0:i[0],l])};g.transaction((()=>j(d,(e=>e(l)))?ye(v,((e,s)=>xe(g,t,n,e,s(l,n)))):g.delRow(t,n)))})(n)},{3:y}=Le(h,null);return g.transaction((()=>E(t,1,e.addRowListener(o,null,((n,l,s)=>{e.hasRow(o,s)?L(s,o,s,y):(g.delRow(t,s),ve(h,(({4:e})=>M(Le(e,s),(([,n])=>{x(t,n),pe(e,s)})))))}))))),z},delQueryDefinition:e=>(O(e),b(e),z),getStore:v,getQueryIds:h,forEachQuery:g,hasQuery:L,getTableId:w,addQueryIdsListener:e=>m((()=>e(z))),delListener:e=>(a(e),z),destroy:V,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)Ue.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ke)for(var l of Ke(e))t.indexOf(l)<0&&Xe.call(e,l)&&(n[l]=e[l]);return n})(s.getListenerStats(),["tables","tableIds","transaction"])};return oe({[f]:[1,1],[f+R]:[0,1],[p]:[0,1],[I]:[0,1],[S]:[0,5],[y]:[1,2],[R]:[0,2],[T]:[1,3]},(([e,t],n)=>{W(e?["get","has","forEach"]:["get"],(e=>z[e+u+n]=(...t)=>s[e+n](...t))),z[c+u+n+d]=(...e)=>s[c+n+d](...A(e,0,t),((n,...l)=>e[t](z,...l)),!0)})),te(z)})),Ze=Ae((e=>{const t=fe(),l=fe(),s=fe(),o=fe(),[r,i,a]=Qe((()=>R)),[d,u,c,v,h,f,,,g,L,y,p]=Je(e,(()=>[fe(),fe(),fe(),fe()]),(e=>k(e)?void 0:e+n),r,i),I=(e,t,n)=>M(f(e),(([l,,s])=>{if(!ae(s,t)){const o=Me();if(h(e)!=T(e))De(o,t);else{let e=t;for(;!k(e)&&!ae(o,e);)De(o,e),e=Le(l,e)}if(n)return o;pe(s,t,o)}return Le(s,t)})),S=(e,t)=>M(f(e),(([,,e])=>pe(e,t))),T=e=>Le(t,e),R={setRelationshipDefinition:(e,n,r,a)=>(pe(t,e,r),g(e,n,((t,n)=>{const r=Me(),a=Me(),d=Me(),[u,c]=f(e);ve(n,(([t,n],l)=>{k(t)||(De(a,t),M(Le(c,t),(e=>{he(e,l),de(e)&&pe(c,t)}))),k(n)||(De(a,n),ae(c,n)||pe(c,n,Me()),De(Le(c,n),l)),De(r,l),pe(u,l,n),ye(Le(o,e),(t=>{ae(I(e,t),l)&&De(d,t)}))})),t(),ve(r,(t=>i(l,[e,t]))),ve(a,(t=>i(s,[e,t]))),ve(d,(t=>{S(e,t),i(o,[e,t])}))}),Oe(a)),R),delRelationshipDefinition:e=>(pe(t,e),L(e),R),getStore:d,getRelationshipIds:u,forEachRelationship:t=>c((n=>t(n,(t=>e.forEachRow(h(n),t))))),hasRelationship:v,getLocalTableId:h,getRemoteTableId:T,getRemoteRowId:(e,t)=>{var n;return Le(null==(n=f(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return ue(Le(null==(n=f(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>k(f(e))?[t]:ue(I(e,t,!0)),addRelationshipIdsListener:y,addRemoteRowIdListener:(e,t,n)=>r(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>r(n,s,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(I(e,t),r(n,o,[e,t])),delListener:e=>{var t;return S(...null!=(t=a(e))?t:[]),R},destroy:p,getListenerStats:()=>({})};return te(R)})),_e=e=>[e,e],et=()=>[fe(),fe()],tt=e=>[...e],nt=([e,t])=>e===t,lt=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),st=JSON.parse,ot=(e,t,n)=>k(e)||!ne(e)||re(e)||ee(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||se(e,l)})),!re(e)),rt=(e,t,n)=>pe(e,t,Le(e,t)==-n?void 0:n),it=()=>{let e,t,n=!1,l=!1,s=!1,r=!1,u=0;const h=fe(),S=fe(),V=fe(),E=fe(),x=fe(),O=fe(),P=fe(),F=fe(),j=fe(),N=fe(),$=fe(),q=fe(),G=fe(),U=fe(),X=Me(),Y=fe(),Z=fe(),_=fe(),ee=fe(),ne=et(),ue=et(),Ve=et(),Je=et(),Oe=et(),Ae=et(),Pe=et(),je=et(),Ne=et(),Be=et(),We=et(),He=et(),$e=et(),qe=et(),Ge=et(),Ke=et(),Ue=et(),Xe=et(),Ye=et(),Ze=et(),at=et(),dt=et(),ut=fe(),ct=et(),[vt,ht,ft,gt]=Qe((()=>Qn)),Lt=e=>{if(!ot(e,((e,t)=>Q([i,a],t))))return!1;const t=e[i];return!(!D(t)&&t!=o||(Ee(e[a])!=t&&se(e,a),0))},yt=(t,n)=>(!e||ae($,n)||Gt(n))&&ot(t,((e,t)=>pt(n,t,e)),(()=>Gt(n))),pt=(e,t,n,l)=>ot(l?n:Rt(n,e,t),((l,s)=>M(It(e,t,s,l),(e=>(n[s]=e,!0)),(()=>!1))),(()=>Gt(e,t))),It=(t,n,l,s)=>e?M(Le(Le($,t),l),(e=>Ee(s)!=e[i]?Gt(t,n,l,s,e[a]):s),(()=>Gt(t,n,l,s))):k(Ee(s))?Gt(t,n,l,s):s,St=(e,t)=>ot(t?e:wt(e),((t,n)=>M(Tt(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>Kt())),Tt=(e,n)=>t?M(Le(G,e),(t=>Ee(n)!=t[i]?Kt(e,n,t[a]):n),(()=>Kt(e,n))):k(Ee(n))?Kt(e,n):n,Rt=(e,t,n)=>(M(Le(q,t),(([l,s])=>{ve(l,((t,n)=>{le(e,n)||(e[n]=t)})),ve(s,(l=>{le(e,l)||Gt(t,n,l)}))})),e),wt=e=>(t&&(ve(U,((t,n)=>{le(e,n)||(e[n]=t)})),ve(X,(t=>{le(e,t)||Kt(t)}))),e),Ct=e=>Se($,e,((e,t,n)=>{const l=fe(),s=Me();Se(Ie($,t,fe),n,((e,t,n)=>{pe(e,t,n),M(n[a],(e=>pe(l,t,e)),(()=>De(s,t)))})),pe(q,t,[l,s])}),((e,t)=>{pe($,t),pe(q,t)})),bt=e=>Se(G,e,((e,t,n)=>{pe(G,t,n),M(n[a],(e=>pe(U,t,e)),(()=>De(X,t)))}),((e,t)=>{pe(G,t),pe(U,t),he(X,t)})),mt=e=>re(e)?xn():Cn(e),Vt=e=>Se(_,e,((e,t,n)=>Et(t,n)),((e,t)=>Ft(t))),Et=(e,t)=>Se(Ie(_,e,(()=>(Nt(e,1),pe(Y,e,Fe()),pe(Z,e,fe()),fe()))),t,((t,n,l)=>xt(e,t,n,l)),((t,n)=>Qt(e,t,n))),xt=(e,t,n,l,s)=>Se(Ie(t,n,(()=>(Bt(e,n,1),fe()))),l,((t,l,s)=>kt(e,n,t,l,s)),((l,o)=>jt(e,t,n,l,o,s))),kt=(e,t,n,l,s)=>{ae(n,l)||Wt(e,t,l,1);const o=Le(n,l);s!==o&&(Ht(e,t,l,o,s),pe(n,l,s))},Mt=(e,t,n,l,s)=>M(Le(t,n),(t=>kt(e,n,t,l,s)),(()=>xt(e,t,n,Rt({[l]:s},e,n)))),Dt=e=>re(e)?Dn():bn(e),Jt=e=>Se(ee,e,((e,t,n)=>Ot(t,n)),((e,t)=>zt(t))),Ot=(e,t)=>{ae(ee,e)||$t(e,1);const n=Le(ee,e);t!==n&&(qt(e,n,t),pe(ee,e,t))},At=(e,t)=>{const[n]=Le(Y,e),l=n(t);return ae(Le(_,e),l)?At(e,t):l},Pt=e=>{var t;return null!=(t=Le(_,e))?t:Et(e,{})},Ft=e=>Et(e,{}),Qt=(e,t,n)=>{const[,l]=Le(Y,e);l(n),xt(e,t,n,{},!0)},jt=(e,t,n,l,s,o)=>{var r;const i=Le(null==(r=Le(q,e))?void 0:r[0],s);if(!k(i)&&!o)return kt(e,n,l,s,i);const a=t=>{Ht(e,n,t,Le(l,t)),Wt(e,n,t,-1),pe(l,t)};k(i)?a(s):ye(l,a),de(l)&&(Bt(e,n,-1),de(pe(t,n))&&(Nt(e,-1),pe(_,e),pe(Y,e),pe(Z,e)))},zt=e=>{const t=Le(U,e);if(!k(t))return Ot(e,t);qt(e,Le(ee,e)),$t(e,-1),pe(ee,e)},Nt=(e,t)=>rt(h,e,t),Bt=(e,t,n)=>rt(Ie(E,e,fe),t,n)&&pe(V,e,Ie(V,e,(()=>0))+n),Wt=(e,t,n,l)=>{var s;const o=Le(Z,e),r=null!=(s=Le(o,n))?s:0;(0==r&&1==l||1==r&&-1==l)&&rt(Ie(S,e,fe),n,l),pe(o,n,r!=-l?r+l:null),rt(Ie(Ie(x,e,fe),t,fe),n,l)},Ht=(e,t,n,l,s)=>Ie(Ie(Ie(O,e,fe),t,fe),n,(()=>[l,0]))[1]=s,$t=(e,t)=>rt(P,e,t),qt=(e,t,n)=>Ie(F,e,(()=>[t,0]))[1]=n,Gt=(e,t,n,l,s)=>(K(Ie(Ie(Ie(j,e,fe),t,fe),n,(()=>[])),l),s),Kt=(e,t,n)=>(K(Ie(N,e,(()=>[])),t),n),Ut=(e,t,n)=>M(Le(Le(Le(O,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,..._e(hn(e,t,n))])),Xt=e=>M(Le(F,e),(([e,t])=>[!0,e,t]),(()=>[!1,..._e(Ln(e))])),Yt=e=>de(j)||de(Ke[e])?0:ve(e?me(j):j,((t,n)=>ve(t,((t,l)=>ve(t,((t,s)=>ht(Ke[e],[n,l,s],t))))))),Zt=e=>de(N)||de(Ue[e])?0:ve(e?Ce(N):N,((t,n)=>ht(Ue[e],[n],t))),_t=(e,t,n,l)=>{if(!de(e))return ht(t,l,(()=>Te(e))),ye(e,((e,t)=>ht(n,[...null!=l?l:[],e],1==t))),1},en=e=>{const t=yn();t!=s&&ht(ne[e],void 0,t);const n=de(Be[e]),l=de($e[e])&&de(qe[e])&&de(Ne[e])&&de(We[e])&&de(Ae[e])&&de(Pe[e])&&de(je[e])&&n&&de(Ve[e])&&de(Je[e]),o=de(Ge[e])&&de(He[e])&&de(Oe[e])&&de(ue[e]);if(!l||!o){const t=e?[Ce(h),be(S),Ce(V),be(E),me(x),me(O)]:[h,S,V,E,x,O];if(!l){_t(t[0],Ve[e],Je[e]),ve(t[1],((t,n)=>_t(t,Ae[e],Pe[e],[n]))),ve(t[2],((t,n)=>{0!=t&&ht(je[e],[n],dn(n))}));const l=Me();ve(t[3],((t,s)=>{_t(t,Ne[e],We[e],[s])&&!n&&(ht(Be[e],[s,null]),De(l,s))})),n||ve(t[5],((t,n)=>{if(!ae(l,n)){const l=Me();ve(t,(e=>ve(e,(([t,n],s)=>n!==t?De(l,s):he(e,s))))),ve(l,(t=>ht(Be[e],[n,t])))}})),ve(t[4],((t,n)=>ve(t,((t,l)=>_t(t,$e[e],qe[e],[n,l])))))}if(!o){let n;ve(t[5],((t,l)=>{let s;ve(t,((t,o)=>{let r;ve(t,(([t,i],a)=>{i!==t&&(ht(Ge[e],[l,o,a],i,t,Ut),n=s=r=1)})),r&&ht(He[e],[l,o],Ut)})),s&&ht(Oe[e],[l],Ut)})),n&&ht(ue[e],void 0,Ut)}}},tn=e=>{const t=Rn();t!=r&&ht(Xe[e],void 0,t);const n=de(Ze[e])&&de(at[e]),l=de(dt[e])&&de(Ye[e]);if(!n||!l){const t=e?[Ce(P),Ce(F)]:[P,F];if(n||_t(t[0],Ze[e],at[e]),!l){let n;ve(t[1],(([t,l],s)=>{l!==t&&(ht(dt[e],[s],l,t,Xt),n=1)})),n&&ht(Ye[e],void 0,Xt)}}},nn=(e,...t)=>(An((()=>e(...H(t,m)))),Qn),ln=()=>[Te(O,((e,t)=>-1===Le(h,t)?null:Te(e,((e,n)=>-1===Le(Le(E,t),n)?null:Te(e,(([,e])=>null!=e?e:null),((e,t)=>nt(t)))),re)),re),Te(F,(([,e])=>null!=e?e:null),((e,t)=>nt(t)))],sn=()=>({cellsTouched:n,valuesTouched:l,changedCells:we(O,tt,nt),invalidCells:we(j),changedValues:Te(F,tt,nt),invalidValues:Te(N),changedTableIds:Te(h),changedRowIds:Re(E),changedCellIds:we(x),changedValueIds:Te(P)}),on=()=>we(_),rn=()=>ge(_),an=e=>ge(Le(Z,m(e))),dn=e=>ie(Le(_,m(e))),un=e=>ge(Le(_,m(e))),cn=(e,t,n,l=0,s)=>{return H(A(B((o=Le(_,m(e)),r=(e,n)=>[k(t)?n:Le(e,m(t)),n],H([...null!=(i=null==o?void 0:o.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>ze(e,t)*(n?-1:1))),l,k(s)?s:l+s),(([,e])=>e));var o,r,i},vn=(e,t)=>ge(Le(Le(_,m(e)),m(t))),hn=(e,t,n)=>Le(Le(Le(_,m(e)),m(t)),m(n)),fn=()=>Te(ee),gn=()=>ge(ee),Ln=e=>Le(ee,m(e)),yn=()=>!de(_),pn=e=>ae(_,m(e)),In=(e,t)=>ae(Le(Z,m(e)),m(t)),Sn=(e,t)=>ae(Le(_,m(e)),m(t)),Tn=(e,t,n)=>ae(Le(Le(_,m(e)),m(t)),m(n)),Rn=()=>!de(ee),wn=e=>ae(ee,m(e)),Cn=e=>nn((()=>(e=>ot(e,yt,Gt))(e)?Vt(e):0)),bn=e=>nn((()=>St(e)?Jt(e):0)),mn=e=>{try{mt(st(e))}catch(e){}return Qn},Vn=t=>nn((()=>{if((e=ot(t,(e=>ot(e,Lt))))&&(Ct(t),!de(_))){const e=on();xn(),Cn(e)}})),En=e=>nn((()=>{if(t=(e=>ot(e,Lt))(e)){const n=fn();On(),Dn(),t=!0,bt(e),bn(n)}})),xn=()=>nn((()=>Vt({}))),kn=e=>nn((e=>ae(_,e)?Ft(e):0),e),Mn=(e,t)=>nn(((e,t)=>M(Le(_,e),(n=>ae(n,t)?Qt(e,n,t):0))),e,t),Dn=()=>nn((()=>Jt({}))),Jn=()=>nn((()=>{Ct({}),e=!1})),On=()=>nn((()=>{bt({}),t=!1})),An=(e,t)=>{if(-1!=u){Pn();const n=e();return Fn(t),n}},Pn=()=>(-1!=u&&u++,1==u&&ht(ut,void 0,ln,sn),Qn),Fn=e=>(u>0&&(u--,0==u&&(n=!de(O),l=!de(F),u=1,Yt(1),n&&en(1),Zt(1),l&&tn(1),(null==e?void 0:e(ln,sn))&&(ve(O,((e,t)=>ve(e,((e,n)=>ve(e,(([e],l)=>xe(Qn,t,n,l,e))))))),ve(F,(([e],t)=>ke(Qn,t,e))),n=l=!1),ht(ct[0],void 0,ln,sn),u=-1,Yt(0),n&&en(0),Zt(0),l&&tn(0),ht(ct[1],void 0,ln,sn),u=0,n=l=!1,s=yn(),r=Rn(),W([h,S,V,E,x,O,j,P,F,N],ce))),Qn),Qn={getContent:()=>[on(),fn()],getTables:on,getTableIds:rn,getTable:e=>Re(Le(_,m(e))),getTableCellIds:an,getRowCount:dn,getRowIds:un,getSortedRowIds:cn,getRow:(e,t)=>Te(Le(Le(_,m(e)),m(t))),getCellIds:vn,getCell:hn,getValues:fn,getValueIds:gn,getValue:Ln,hasTables:yn,hasTable:pn,hasTableCell:In,hasRow:Sn,hasCell:Tn,hasValues:Rn,hasValue:wn,getTablesJson:()=>lt(_),getValuesJson:()=>lt(ee),getJson:()=>lt([_,ee]),getTablesSchemaJson:()=>lt($),getValuesSchemaJson:()=>lt(G),getSchemaJson:()=>lt([$,G]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>nn((()=>{(re(e)?xn:Cn)(e),(re(t)?Dn:bn)(t)})),setTables:Cn,setTable:(e,t)=>nn((e=>yt(t,e)?Et(e,t):0),e),setRow:(e,t,n)=>nn(((e,t)=>pt(e,t,n)?xt(e,Pt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>An((()=>{let l;return pt(e,l,t)&&(e=m(e),xt(e,Pt(e),l=At(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>nn(((e,t)=>{if(pt(e,t,n,1)){const l=Pt(e);oe(n,((n,s)=>Mt(e,l,t,s,n)))}}),e,t),setCell:(e,t,n,l)=>nn(((e,t,n)=>M(It(e,t,n,J(l)?l(hn(e,t,n)):l),(l=>Mt(e,Pt(e),t,n,l)))),e,t,n),setValues:bn,setPartialValues:e=>nn((()=>St(e,1)?oe(e,((e,t)=>Ot(t,e))):0)),setValue:(e,t)=>nn((e=>M(Tt(e,J(t)?t(Ln(e)):t),(t=>Ot(e,t)))),e),setTransactionChanges:e=>nn((()=>{oe(e[0],((e,t)=>k(e)?kn(t):oe(e,((e,n)=>k(e)?Mn(t,n):oe(e,((e,l)=>xe(Qn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(Qn,t,e)))})),setTablesJson:mn,setValuesJson:e=>{try{Dt(st(e))}catch(e){}return Qn},setJson:e=>nn((()=>{try{const[t,n]=st(e);mt(t),Dt(n)}catch(t){mn(e)}})),setTablesSchema:Vn,setValuesSchema:En,setSchema:(e,t)=>nn((()=>{Vn(e),En(t)})),delTables:xn,delTable:kn,delRow:Mn,delCell:(e,t,n,l)=>nn(((e,t,n)=>M(Le(_,e),(s=>M(Le(s,t),(o=>ae(o,n)?jt(e,s,t,o,n,l):0))))),e,t,n),delValues:Dn,delValue:e=>nn((e=>ae(ee,e)?zt(e):0),e),delTablesSchema:Jn,delValuesSchema:On,delSchema:()=>nn((()=>{Jn(),On()})),transaction:An,startTransaction:Pn,finishTransaction:Fn,forEachTable:e=>ve(_,((t,n)=>e(n,(e=>ve(t,((t,n)=>e(n,(e=>ye(t,e))))))))),forEachTableCell:(e,t)=>ye(Le(Z,m(e)),t),forEachRow:(e,t)=>ve(Le(_,m(e)),((e,n)=>t(n,(t=>ye(e,t))))),forEachCell:(e,t,n)=>ye(Le(Le(_,m(e)),m(t)),n),forEachValue:e=>ye(ee,e),addSortedRowIdsListener:(e,t,n,l,s,o,r)=>{let i=cn(e,t,n,l,s);return vt((()=>{const r=cn(e,t,n,l,s);z(r,i)||(i=r,o(Qn,e,t,n,l,s,i))}),Be[r?1:0],[e,t],[rn])},addStartTransactionListener:e=>vt(e,ut),addWillFinishTransactionListener:e=>vt(e,ct[0]),addDidFinishTransactionListener:e=>vt(e,ct[1]),callListener:e=>(gt(e),Qn),delListener:e=>(ft(e),Qn),getListenerStats:()=>({}),createStore:it,addListener:vt,callListeners:ht};return oe({[v+g]:[0,ne,[],()=>[yn()]],[g]:[0,ue],[L]:[0,Ve],[v+f]:[1,Je,[rn],e=>[pn(...e)]],[f]:[1,Oe,[rn]],[f+R]:[1,Ae,[rn]],[v+f+T]:[2,Pe,[rn,an],e=>[In(...e)]],[p]:[1,je,[rn]],[I]:[1,Ne,[rn]],[v+y]:[2,We,[rn,un],e=>[Sn(...e)]],[y]:[2,He,[rn,un]],[R]:[2,$e,[rn,un]],[v+T]:[3,qe,[rn,un,vn],e=>[Tn(...e)]],[T]:[3,Ge,[rn,un,vn],e=>_e(hn(...e))],InvalidCell:[3,Ke],[v+C]:[0,Xe,[],()=>[Rn()]],[C]:[0,Ye],[b]:[0,Ze],[v+w]:[1,at,[gn],e=>[wn(...e)]],[w]:[1,dt,[gn],e=>_e(Ln(e[0]))],InvalidValue:[1,Ue]},(([e,t,n,l],s)=>{Qn[c+s+d]=(...s)=>vt(s[e],t[s[e+1]?1:0],e>0?A(s,0,e):void 0,n,l)})),te(Qn)};e.createCheckpoints=je,e.createCustomPersister=(e,t,n,l,s,o,[r,i]=[],a=[])=>{let d,u,c,v=0,h=0;Ie(qe,a,(()=>0)),Ie(Ge,a,(()=>[]));const f=e=>$e(void 0,null,(function*(){return 2!=v&&(v=1,yield g.schedule((()=>$e(void 0,null,(function*(){yield e(),v=0}))))),g})),g={load:(n,l)=>$e(void 0,null,(function*(){return yield f((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},s={}){return g.stopAutoLoad(),yield g.load(n,s),h=1,c=l(((n,l)=>$e(void 0,null,(function*(){if(l){const t=l();yield f((()=>$e(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield f((()=>$e(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==n?void 0:n())?l:yield t())}catch(e){null==o||o(e)}}))))})))),g})),stopAutoLoad:()=>(h&&(s(c),c=void 0,h=0),g),save:t=>$e(void 0,null,(function*(){return 1!=v&&(v=2,yield g.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){null==o||o(e)}v=0}))))),g})),startAutoSave:()=>$e(void 0,null,(function*(){return yield g.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();re(n)&&re(l)||g.save((()=>[n,l]))})),g})),stopAutoSave:()=>(M(d,e.delListener),d=void 0,g),schedule:(...e)=>$e(void 0,null,(function*(){return K(Le(Ge,a),...e),yield $e(void 0,null,(function*(){if(!Le(qe,a)){for(pe(qe,a,1);!k(u=X(Le(Ge,a)));)try{yield u()}catch(e){null==o||o(e)}pe(qe,a,0)}})),g})),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r&&(g[r]=()=>i),te(g)},e.createIndexes=Ne,e.createMetrics=He,e.createQueries=Ye,e.createRelationships=Ze,e.createStore=it,e.defaultSorter=ze},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={});
Binary file