tinybase 4.1.0-beta.0 → 4.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/lib/cjs/queries.cjs +1 -1
  2. package/lib/cjs/queries.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.cjs +1 -0
  8. package/lib/cjs/ui-react-dom.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/queries.cjs +1 -1
  12. package/lib/cjs-es6/queries.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.cjs +1 -0
  18. package/lib/cjs-es6/ui-react-dom.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/queries.js +1 -0
  22. package/lib/debug/tinybase.js +1 -0
  23. package/lib/debug/tools.js +25 -4
  24. package/lib/debug/ui-react-dom.js +292 -0
  25. package/lib/debug/ui-react.js +43 -13
  26. package/lib/es6/queries.js +1 -1
  27. package/lib/es6/queries.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.js +1 -0
  33. package/lib/es6/ui-react-dom.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/queries.js +1 -1
  37. package/lib/queries.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/queries.d.ts +67 -0
  43. package/lib/types/ui-react-dom.d.ts +916 -0
  44. package/lib/types/ui-react.d.ts +328 -76
  45. package/lib/types/with-schemas/internal/ui-react.d.ts +23 -8
  46. package/lib/types/with-schemas/queries.d.ts +76 -0
  47. package/lib/types/with-schemas/ui-react-dom.d.ts +993 -0
  48. package/lib/types/with-schemas/ui-react.d.ts +325 -68
  49. package/lib/ui-react-dom.js +1 -0
  50. package/lib/ui-react-dom.js.gz +0 -0
  51. package/lib/ui-react.js +1 -1
  52. package/lib/ui-react.js.gz +0 -0
  53. package/lib/umd/queries.js +1 -1
  54. package/lib/umd/queries.js.gz +0 -0
  55. package/lib/umd/tinybase.js +1 -1
  56. package/lib/umd/tinybase.js.gz +0 -0
  57. package/lib/umd/tools.js +1 -1
  58. package/lib/umd/tools.js.gz +0 -0
  59. package/lib/umd/ui-react-dom.js +1 -0
  60. package/lib/umd/ui-react-dom.js.gz +0 -0
  61. package/lib/umd/ui-react.js +1 -1
  62. package/lib/umd/ui-react.js.gz +0 -0
  63. package/lib/umd-es6/queries.js +1 -1
  64. package/lib/umd-es6/queries.js.gz +0 -0
  65. package/lib/umd-es6/tinybase.js +1 -1
  66. package/lib/umd-es6/tinybase.js.gz +0 -0
  67. package/lib/umd-es6/tools.js +1 -1
  68. package/lib/umd-es6/tools.js.gz +0 -0
  69. package/lib/umd-es6/ui-react-dom.js +1 -0
  70. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  71. package/lib/umd-es6/ui-react.js +1 -1
  72. package/lib/umd-es6/ui-react.js.gz +0 -0
  73. package/package.json +33 -29
  74. package/readme.md +41 -24
@@ -48,6 +48,8 @@ const useThingOrThingId = (thingOrThingId, offset) => {
48
48
  ? thing
49
49
  : thingOrThingId;
50
50
  };
51
+ const getProps = (getProps2, ...ids) =>
52
+ isUndefined(getProps2) ? {} : getProps2(...ids);
51
53
  const useStore = (id) => useThing(id, 0);
52
54
  const useMetrics = (id) => useThing(id, 2);
53
55
  const useIndexes = (id) => useThing(id, 4);
@@ -725,6 +727,13 @@ const useResultRowIds = (queryId, queriesOrQueriesId) =>
725
727
  [],
726
728
  [queryId],
727
729
  );
730
+ const useResultTableCellIds = (queryId, queriesOrQueriesId) =>
731
+ useListenable(
732
+ 'ResultTableCellIds',
733
+ useQueriesOrQueriesId(queriesOrQueriesId),
734
+ [],
735
+ [queryId],
736
+ );
728
737
  const useResultSortedRowIds = (
729
738
  queryId,
730
739
  cellId,
@@ -772,6 +781,19 @@ const useResultTableListener = (
772
781
  listenerDeps,
773
782
  [queryId],
774
783
  );
784
+ const useResultTableCellIdsListener = (
785
+ queryId,
786
+ listener,
787
+ listenerDeps,
788
+ queriesOrQueriesId,
789
+ ) =>
790
+ useListener(
791
+ 'ResultTableCellIds',
792
+ useQueriesOrQueriesId(queriesOrQueriesId),
793
+ listener,
794
+ listenerDeps,
795
+ [queryId],
796
+ );
775
797
  const useResultRowIdsListener = (
776
798
  queryId,
777
799
  listener,
@@ -984,6 +1006,7 @@ const tableView = (
984
1006
  store,
985
1007
  rowComponent: Row = RowView,
986
1008
  getRowComponentProps,
1009
+ customCellIds,
987
1010
  separator,
988
1011
  debugIds,
989
1012
  },
@@ -996,6 +1019,7 @@ const tableView = (
996
1019
  key: rowId,
997
1020
  tableId,
998
1021
  rowId,
1022
+ customCellIds,
999
1023
  store,
1000
1024
  debugIds,
1001
1025
  }),
@@ -1092,8 +1116,6 @@ const getUseCheckpointView =
1092
1116
  separator,
1093
1117
  );
1094
1118
  };
1095
- const getProps = (getProps2, id) =>
1096
- isUndefined(getProps2) ? {} : getProps2(id);
1097
1119
  const Provider = ({
1098
1120
  store,
1099
1121
  storesById,
@@ -1155,6 +1177,10 @@ const wrap = (children, separator, encloseWithId, id) => {
1155
1177
  : arrayMap(children, (child, c) => (c > 0 ? [separator, child] : child));
1156
1178
  return encloseWithId ? [id, ':{', separated, '}'] : separated;
1157
1179
  };
1180
+ const useCustomOrDefaultCellIds = (customCellIds, tableId, rowId, store) => {
1181
+ const defaultCellIds = useCellIds(tableId, rowId, store);
1182
+ return customCellIds ?? defaultCellIds;
1183
+ };
1158
1184
  const CellView = ({tableId, rowId, cellId, store, debugIds}) =>
1159
1185
  wrap(
1160
1186
  EMPTY_STRING + (useCell(tableId, rowId, cellId, store) ?? EMPTY_STRING),
@@ -1168,20 +1194,23 @@ const RowView = ({
1168
1194
  store,
1169
1195
  cellComponent: Cell = CellView,
1170
1196
  getCellComponentProps,
1197
+ customCellIds,
1171
1198
  separator,
1172
1199
  debugIds,
1173
1200
  }) =>
1174
1201
  wrap(
1175
- arrayMap(useCellIds(tableId, rowId, store), (cellId) =>
1176
- /* @__PURE__ */ createElement(Cell, {
1177
- ...getProps(getCellComponentProps, cellId),
1178
- key: cellId,
1179
- tableId,
1180
- rowId,
1181
- cellId,
1182
- store,
1183
- debugIds,
1184
- }),
1202
+ arrayMap(
1203
+ useCustomOrDefaultCellIds(customCellIds, tableId, rowId, store),
1204
+ (cellId) =>
1205
+ /* @__PURE__ */ createElement(Cell, {
1206
+ ...getProps(getCellComponentProps, cellId),
1207
+ key: cellId,
1208
+ tableId,
1209
+ rowId,
1210
+ cellId,
1211
+ store,
1212
+ debugIds,
1213
+ }),
1185
1214
  ),
1186
1215
  separator,
1187
1216
  debugIds,
@@ -1428,7 +1457,6 @@ export {
1428
1457
  TablesView,
1429
1458
  ValueView,
1430
1459
  ValuesView,
1431
- tableView,
1432
1460
  useAddRowCallback,
1433
1461
  useCell,
1434
1462
  useCellIds,
@@ -1479,6 +1507,8 @@ export {
1479
1507
  useResultSortedRowIds,
1480
1508
  useResultSortedRowIdsListener,
1481
1509
  useResultTable,
1510
+ useResultTableCellIds,
1511
+ useResultTableCellIdsListener,
1482
1512
  useResultTableListener,
1483
1513
  useRow,
1484
1514
  useRowIds,
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),n=e(!0),l=e(0),r=e(e),o="Listener",s="Result",a="Ids",i="Row",d=i+a,u="Sorted"+i+a,c="Cell",v=c+a,f=(e,t)=>e.every(t),h=(e,t)=>e.forEach(t),w=e=>p(e,((e,t)=>e+t),0),g=e=>e.length,y=e=>0==g(e),p=(e,t,n)=>e.reduce(t,n),L=(e,...t)=>e.push(...t),R=Math.max,b=Math.min,T=isFinite,m=e=>null==e,O=(e,t,n)=>m(e)?null==n?void 0:n():t(e),S=t=>e(t)==r,C=e=>Array.isArray(e),I=()=>{},j=Object,x=j.freeze,E=e=>e.size,Q=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},M=e=>m(e)||0==E(e),D=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},k=e=>e.clear(),z=(e,t)=>null==e?void 0:e.forEach(t),A=(e,t)=>null==e?void 0:e.delete(t),F=e=>new Map(e),P=(e,t)=>null==e?void 0:e.get(t),W=(e,t)=>z(e,((e,n)=>t(n,e))),q=(e,t,n)=>m(n)?(A(e,t),e):null==e?void 0:e.set(t,n),B=(e,t,n)=>(Q(e,t)||q(e,t,n()),P(e,t)),G=(e,t,n,l,r=0)=>O((n?B:P)(e,t[r],r>g(t)-2?n:F),(o=>{if(r>g(t)-2)return(null==l?void 0:l(o))&&q(e,t[r]),o;const s=G(o,t,n,l,r+1);return M(o)&&q(e,t[r]),s})),H=e=>new Set(C(e)||m(e)?e:[e]),J=(e,t)=>null==e?void 0:e.add(t),K=F([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>R(...e),(e,t)=>R(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:R(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var N=Object.getOwnPropertySymbols,U=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable;const X=(r=>{const a=new WeakMap;return r=>(a.has(r)||a.set(r,(r=>{const a=r.createStore,[w,p,R,b,X,,,Y,,Z,$,_,ee]=((e,t,n)=>{const l=e.hasRow,r=F(),o=F(),s=F(),a=F(),i=F(),d=(t,n,...l)=>{const r=B(i,t,H);return h(l,(t=>J(r,t)&&n&&e.callListener(t))),l},u=(t,...n)=>O(P(i,t),(l=>{h(y(n)?D(l):n,(t=>{e.delListener(t),A(l,t)})),M(l)&&q(i,t)})),c=(e,t)=>{q(r,e,t),Q(o,e)||(q(o,e,!0),q(s,e,F()),q(a,e,F()))},v=e=>{q(r,e),q(o,e),q(s,e),q(a,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=r)?void 0:e.keys())?t:[]];var e,t},e=>W(o,e),e=>Q(o,e),e=>P(r,e),e=>P(o,e),(e,t)=>q(o,e,t),c,(t,r,o,i,v)=>{c(t,r);const w=F(),y=F(),p=P(s,t),L=P(a,t),R=t=>{const o=n=>e.getCell(r,t,n),s=P(p,t),a=l(r,t)?n(i(o,t)):void 0;var d,u;if(s===a||C(s)&&C(a)&&(u=a,g(d=s)===g(u)&&f(d,((e,t)=>u[t]===e)))||q(w,t,[s,a]),!m(v)){const e=P(L,t),n=l(r,t)?v(o,t):void 0;e!=n&&q(y,t,n)}},b=e=>{o((()=>{z(w,(([,e],t)=>q(p,t,e))),z(y,((e,t)=>q(L,t,e)))}),w,y,p,L,e),k(w),k(y)};W(p,R),e.hasTable(r)&&h(e.getRowIds(r),(e=>{Q(p,e)||R(e)})),b(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>R(n))),e.addTableListener(r,(()=>b())))},v,()=>W(i,v),d,u]})(r,0,I),te=a(),ne=a(),le=F(),re=(e,t,...n)=>h(n,(n=>J(B(B(le,t,F),e,H),n))),oe=e=>{O(P(le,e),(e=>{W(e,((e,t)=>z(t,(t=>e.delListener(t))))),k(e)})),h([ne,te],(t=>t.delTable(e)))},se=(e,t,n)=>re(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ae={setQueryDefinition:(o,s,a)=>{Y(o,s),oe(o);const i=[],d=[[null,[s,null,null,[],F()]]],u=[],c=[],v=[];a({select:(e,t)=>{const n=S(e)?[g(i)+"",e]:[m(t)?e:t,n=>n(e,t)];return L(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=m(n)||S(t)?null:t,r=m(l)?t:n,o=[e,[e,l,S(r)?r:e=>e(r),[],F()]];return L(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>L(u,S(e)?e:m(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,r)=>{var o;const s=[e,[e,S(t)?[t,n,l,r]:null!=(o=P(K,t))?o:[(e,t)=>t]]];return L(c,s),{as:e=>s[0]=e}},having:(e,t)=>L(v,S(e)?e:n=>n(e)===t)});const w=F(i);if(M(w))return ae;const p=F(d);W(p,((e,[,t])=>O(P(p,t),(({3:t})=>m(e)?0:L(t,e)))));const R=F(c);let b=te;if(M(R)&&y(v))b=ne;else{se(o,b,ne);const r=F();W(R,((e,[t,n])=>J(B(r,t,H),[e,n])));const s=H();W(w,(e=>Q(r,e)?0:J(s,e)));const a=F(),i=(s,a,i,d)=>O(s,(([u,c,h,w])=>{W(a,((o,[s])=>{const a=B(u,o,F),c=P(a,i),v=d?void 0:s;if(c!==v){const s=H([[c,v]]),d=E(a);q(a,i,v),z(P(r,o),(([r,o])=>{const i=((e,t,n,l,r,o=!1)=>{if(M(n))return;const[s,a,i,d]=r;return o||(o=m(e)),z(l,(([n,l])=>{o||(e=m(n)?null==a?void 0:a(e,l,t++):m(l)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=m(e)))})),o?s(D(n),E(n)):e})(w[r],d,a,s,o);w[r]=m((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==l&&T(r)?o:void 0})(i))?null:i}))}})),M(c)||!f(v,(e=>e((e=>w[e]))))?ne.delRow(o,h):m(h)?s[2]=ne.addRow(o,w):ne.setRow(o,h,w)}));re(b,o,b.addRowListener(o,null,((e,t,n,l)=>{const d=[],u=[],c=F(),v=b.hasRow(o,n);let f=!v;z(s,(e=>{const[t,r,s]=l(o,n,e);L(d,r),L(u,s),f||(f=t)})),W(r,(e=>{const[t,,r]=l(o,n,e);(f||t)&&q(c,e,[r])})),f&&i(G(a,d,void 0,(([,e])=>(A(e,n),M(e)))),c,n,1),v&&i(G(a,u,(()=>{const e={};return z(s,(t=>e[t]=b.getCell(o,n,t))),[F(),H(),void 0,e]}),(([,e])=>{J(e,n)})),c,n)})))}se(o,r,b);const C=(e,t,n,l)=>{const a=e=>r.getCell(t,n,e);h(l,(t=>{var n;const[l,,s,i,d]=P(p,t),u=null==s?void 0:s(a,e),[c,v]=null!=(n=P(d,e))?n:[];u!=c&&(m(v)||ee(o,v),q(d,e,m(u)?null:[u,..._(o,1,r.addRowListener(l,u,(()=>C(e,l,u,i))))]))})),(e=>{const t=(t,n)=>{var l,o,a;return r.getCell(...m(n)?[s,e,t]:t===s?[s,e,n]:[null==(l=P(p,t))?void 0:l[0],null==(a=P(null==(o=P(p,t))?void 0:o[4],e))?void 0:a[0],n])};b.transaction((()=>f(u,(e=>e(t)))?W(w,((n,l)=>((e,t,n,l,r)=>m(r)?e.delCell(t,n,l,!0):e.setCell(t,n,l,r))(b,o,e,n,l(t,e)))):b.delRow(o,e)))})(e)},{3:I}=P(p,null);return b.transaction((()=>_(o,1,r.addRowListener(s,null,((e,t,n)=>{r.hasRow(s,n)?C(n,s,n,I):(b.delRow(o,n),z(p,(({4:e})=>O(P(e,n),(([,t])=>{ee(o,t),q(e,n)})))))}))))),ae},delQueryDefinition:e=>(oe(e),Z(e),ae),getStore:w,getQueryIds:p,forEachQuery:R,hasQuery:b,getTableId:X,delListener:e=>(ne.delListener(e),ae),destroy:$,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)U.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&N)for(var l of N(e))t.indexOf(l)<0&&V.call(e,l)&&(n[l]=e[l]);return n})(ne.getListenerStats(),["tables","tableIds","transaction"])};var ie,de;return ie={Table:[1,1],[d]:[0,1],[u]:[0,5],[i]:[1,2],[v]:[0,2],[c]:[1,3]},de=([e,t],n)=>{h(e?["get","has","forEach"]:["get"],(e=>ae[e+s+n]=(...t)=>ne[e+n](...t))),ae["add"+s+n+o]=(...e)=>{return ne["add"+n+o](...(l=e,0,r=t,l.slice(0,r)),((n,...l)=>e[t](ae,...l)));var l,r}},((e,t)=>{e.map(t)})(j.entries(ie),(([e,t])=>de(t,e))),x(ae)})(r)),a.get(r))})();export{X as createQueries};
1
+ const e=e=>typeof e,t=e(""),n=e(!0),l=e(0),r=e(e),o="Listener",s="Result",a="Ids",i="Table",d="Row",u=d+a,c="Sorted"+d+a,v="Cell",f=v+a,h=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),g=e=>L(e,((e,t)=>e+t),0),y=e=>e.length,p=e=>0==y(e),L=(e,t,n)=>e.reduce(t,n),R=(e,...t)=>e.push(...t),b=Math.max,T=Math.min,m=isFinite,O=e=>null==e,S=(e,t,n)=>O(e)?null==n?void 0:n():t(e),C=t=>e(t)==r,I=e=>Array.isArray(e),j=()=>{},x=Object,E=x.freeze,Q=e=>e.size,M=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},D=e=>O(e)||0==Q(e),k=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},z=e=>e.clear(),A=(e,t)=>null==e?void 0:e.forEach(t),F=(e,t)=>null==e?void 0:e.delete(t),P=e=>new Map(e),W=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>A(e,((e,n)=>t(n,e))),B=(e,t,n)=>O(n)?(F(e,t),e):null==e?void 0:e.set(t,n),G=(e,t,n)=>(M(e,t)||B(e,t,n()),W(e,t)),H=(e,t,n,l,r=0)=>S((n?G:W)(e,t[r],r>y(t)-2?n:P),(o=>{if(r>y(t)-2)return(null==l?void 0:l(o))&&B(e,t[r]),o;const s=H(o,t,n,l,r+1);return D(o)&&B(e,t[r]),s})),J=e=>new Set(I(e)||O(e)?e:[e]),K=(e,t)=>null==e?void 0:e.add(t),N=P([["avg",[(e,t)=>g(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=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var U=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;const Y=(r=>{const a=new WeakMap;return r=>(a.has(r)||a.set(r,(r=>{const a=r.createStore,[g,L,b,T,Y,,,Z,,$,_,ee,te]=((e,t,n)=>{const l=e.hasRow,r=P(),o=P(),s=P(),a=P(),i=P(),d=(t,n,...l)=>{const r=G(i,t,J);return w(l,(t=>K(r,t)&&n&&e.callListener(t))),l},u=(t,...n)=>S(W(i,t),(l=>{w(p(n)?k(l):n,(t=>{e.delListener(t),F(l,t)})),D(l)&&B(i,t)})),c=(e,t)=>{B(r,e,t),M(o,e)||(B(o,e,!0),B(s,e,P()),B(a,e,P()))},v=e=>{B(r,e),B(o,e),B(s,e),B(a,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=r)?void 0:e.keys())?t:[]];var e,t},e=>q(o,e),e=>M(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>B(o,e,t),c,(t,r,o,i,v)=>{c(t,r);const f=P(),g=P(),p=W(s,t),L=W(a,t),R=t=>{const o=n=>e.getCell(r,t,n),s=W(p,t),a=l(r,t)?n(i(o,t)):void 0;var d,u;if(s===a||I(s)&&I(a)&&(u=a,y(d=s)===y(u)&&h(d,((e,t)=>u[t]===e)))||B(f,t,[s,a]),!O(v)){const e=W(L,t),n=l(r,t)?v(o,t):void 0;e!=n&&B(g,t,n)}},b=e=>{o((()=>{A(f,(([,e],t)=>B(p,t,e))),A(g,((e,t)=>B(L,t,e)))}),f,g,p,L,e),z(f),z(g)};q(p,R),e.hasTable(r)&&w(e.getRowIds(r),(e=>{M(p,e)||R(e)})),b(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>R(n))),e.addTableListener(r,(()=>b())))},v,()=>q(i,v),d,u]})(r,0,j),ne=a(),le=a(),re=P(),oe=(e,t,...n)=>w(n,(n=>K(G(G(re,t,P),e,J),n))),se=e=>{S(W(re,e),(e=>{q(e,((e,t)=>A(t,(t=>e.delListener(t))))),z(e)})),w([le,ne],(t=>t.delTable(e)))},ae=(e,t,n)=>oe(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ie={setQueryDefinition:(o,s,a)=>{Z(o,s),se(o);const i=[],d=[[null,[s,null,null,[],P()]]],u=[],c=[],v=[];a({select:(e,t)=>{const n=C(e)?[y(i)+"",e]:[O(t)?e:t,n=>n(e,t)];return R(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=O(n)||C(t)?null:t,r=O(l)?t:n,o=[e,[e,l,C(r)?r:e=>e(r),[],P()]];return R(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>R(u,C(e)?e:O(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,r)=>{var o;const s=[e,[e,C(t)?[t,n,l,r]:null!=(o=W(N,t))?o:[(e,t)=>t]]];return R(c,s),{as:e=>s[0]=e}},having:(e,t)=>R(v,C(e)?e:n=>n(e)===t)});const f=P(i);if(D(f))return ie;const g=P(d);q(g,((e,[,t])=>S(W(g,t),(({3:t})=>O(e)?0:R(t,e)))));const L=P(c);let b=ne;if(D(L)&&p(v))b=le;else{ae(o,b,le);const r=P();q(L,((e,[t,n])=>K(G(r,t,J),[e,n])));const s=J();q(f,(e=>M(r,e)?0:K(s,e)));const a=P(),i=(s,a,i,d)=>S(s,(([u,c,f,w])=>{q(a,((o,[s])=>{const a=G(u,o,P),c=W(a,i),v=d?void 0:s;if(c!==v){const s=J([[c,v]]),d=Q(a);B(a,i,v),A(W(r,o),(([r,o])=>{const i=((e,t,n,l,r,o=!1)=>{if(D(n))return;const[s,a,i,d]=r;return o||(o=O(e)),A(l,(([n,l])=>{o||(e=O(n)?null==a?void 0:a(e,l,t++):O(l)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=O(e)))})),o?s(k(n),Q(n)):e})(w[r],d,a,s,o);w[r]=O((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==l&&m(r)?o:void 0})(i))?null:i}))}})),D(c)||!h(v,(e=>e((e=>w[e]))))?le.delRow(o,f):O(f)?s[2]=le.addRow(o,w):le.setRow(o,f,w)}));oe(b,o,b.addRowListener(o,null,((e,t,n,l)=>{const d=[],u=[],c=P(),v=b.hasRow(o,n);let f=!v;A(s,(e=>{const[t,r,s]=l(o,n,e);R(d,r),R(u,s),f||(f=t)})),q(r,(e=>{const[t,,r]=l(o,n,e);(f||t)&&B(c,e,[r])})),f&&i(H(a,d,void 0,(([,e])=>(F(e,n),D(e)))),c,n,1),v&&i(H(a,u,(()=>{const e={};return A(s,(t=>e[t]=b.getCell(o,n,t))),[P(),J(),void 0,e]}),(([,e])=>{K(e,n)})),c,n)})))}ae(o,r,b);const T=(e,t,n,l)=>{const a=e=>r.getCell(t,n,e);w(l,(t=>{var n;const[l,,s,i,d]=W(g,t),u=null==s?void 0:s(a,e),[c,v]=null!=(n=W(d,e))?n:[];u!=c&&(O(v)||te(o,v),B(d,e,O(u)?null:[u,...ee(o,1,r.addRowListener(l,u,(()=>T(e,l,u,i))))]))})),(e=>{const t=(t,n)=>{var l,o,a;return r.getCell(...O(n)?[s,e,t]:t===s?[s,e,n]:[null==(l=W(g,t))?void 0:l[0],null==(a=W(null==(o=W(g,t))?void 0:o[4],e))?void 0:a[0],n])};b.transaction((()=>h(u,(e=>e(t)))?q(f,((n,l)=>((e,t,n,l,r)=>O(r)?e.delCell(t,n,l,!0):e.setCell(t,n,l,r))(b,o,e,n,l(t,e)))):b.delRow(o,e)))})(e)},{3:I}=W(g,null);return b.transaction((()=>ee(o,1,r.addRowListener(s,null,((e,t,n)=>{r.hasRow(s,n)?T(n,s,n,I):(b.delRow(o,n),A(g,(({4:e})=>S(W(e,n),(([,t])=>{te(o,t),B(e,n)})))))}))))),ie},delQueryDefinition:e=>(se(e),$(e),ie),getStore:g,getQueryIds:L,forEachQuery:b,hasQuery:T,getTableId:Y,delListener:e=>(le.delListener(e),ie),destroy:_,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)V.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&U)for(var l of U(e))t.indexOf(l)<0&&X.call(e,l)&&(n[l]=e[l]);return n})(le.getListenerStats(),["tables","tableIds","transaction"])};var de,ue;return de={[i]:[1,1],[i+f]:[0,1],[u]:[0,1],[c]:[0,5],[d]:[1,2],[f]:[0,2],[v]:[1,3]},ue=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>ie[e+s+n]=(...t)=>le[e+n](...t))),ie["add"+s+n+o]=(...e)=>{return le["add"+n+o](...(l=e,0,r=t,l.slice(0,r)),((n,...l)=>e[t](ie,...l)));var l,r}},((e,t)=>{e.map(t)})(x.entries(de),(([e,t])=>ue(t,e))),E(ie)})(r)),a.get(r))})();export{Y as createQueries};
Binary file
@@ -1 +1 @@
1
- const e=e=>typeof e,t="",n=e(t),l=e(!0),o=e(0),s=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,y="Sorted"+g+u,S="Cell",w=S+u,I="Value",R=I+"s",T=I+u,p=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),m=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),E=(e,t)=>e.sort(t),k=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),j=e=>e.shift(),Q=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==s,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),oe=(e,t)=>x(Y.entries(e),(([e,n])=>t(n,e))),se=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),ye=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),Se=(e,t,n)=>(ie(e,t)||ye(e,t,n()),ge(e,t)),we=(e,t,n,l=ye)=>(oe(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),Ie=(e,t,n)=>{const l={};return ue(e,((e,o)=>{const s=t?t(e,o):e;!(null==n?void 0:n(s,e))&&(l[o]=s)})),l},Re=(e,t,n)=>Ie(e,(e=>Ie(e,t,n)),se),Te=(e,t,n)=>Ie(e,(e=>Re(e,t,n)),se),pe=(e,t)=>{const n=he();return ue(e,((e,l)=>{var o;return n.set(l,null!=(o=null==t?void 0:t(e))?o:e)})),n},Ce=e=>pe(e,pe),be=e=>pe(e,Ce),Ve=(e,t,n,l,o=0)=>G((n?Se:ge)(e,t[o],o>D(t)-2?n:he),(s=>{if(o>D(t)-2)return(null==l?void 0:l(s))&&ye(e,t[o]),s;const r=Ve(s,t,n,l,o+1);return ae(s)&&ye(e,t[o]),r})),me=t=>{const n=e(t);return H(n)||n==o&&B(t)?n:void 0},Ee=(e,t,n,l,o)=>q(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),ke=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),xe=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,o=he(),s=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const o=Se(a,t,xe);return k(l,(t=>Me(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{k(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&ye(a,t)})),u=(e,n)=>{ye(o,e,n),ie(s,e)||(ye(s,e,t()),ye(r,e,he()),ye(i,e,he()))},v=e=>{ye(o,e),ye(s,e),ye(r,e),ye(i,e),c(e)};return[()=>e,()=>fe(o),e=>Le(s,e),e=>ie(s,e),e=>ge(o,e),e=>ge(s,e),(e,t)=>ye(s,e,t),u,(t,o,s,a,v)=>{u(t,o);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),y=t=>{const s=n=>e.getCell(o,t,n),r=ge(g,t),i=l(o,t)?n(a(s,t)):void 0;if(r===i||U(r)&&U(i)&&V(r,i)||ye(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ye(f,t,n)}},S=e=>{s((()=>{ue(h,(([,e],t)=>ye(g,t,e))),ue(f,((e,t)=>ye(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,y),e.hasTable(o)&&k(e.getRowIds(o),(e=>{ie(g,e)||y(e)})),S(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>S())))},v,()=>Le(a,v),d,c]},Je=(l,o)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=o?o:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?j(e):null)?o:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,o]=Fe(),s=he();return[(o,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return ye(s,c,[o,r,i,a,d]),Me(Ve(r,null!=i?i:[t],xe),c),c},(e,l,...o)=>k(((e,n=[t])=>{const l=[],o=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>o(e,t+1))):k([n[t],null],(n=>o(ge(e,n),t+1)));return o(e,0),l})(e,l),(e=>ue(e,(e=>ge(s,e)[0](n,...null!=l?l:[],...o))))),e=>G(ge(s,e),(([,n,l])=>(Ve(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),ye(s,e),o(e),l))),e=>G(ge(s,e),(([e,,t=[],l,o])=>{const s=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...o(r)):q(t[d])?k(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>s(...r,e))):s(...r,t[d])};s()}))]},je=Ae((e=>{let n,l,o,s=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],y=[],S=(t,n)=>{a=0,e.transaction((()=>{const[l,o]=ge(f,n);ue(l,((n,l)=>ue(n,((n,o)=>ue(n,((n,s)=>Ee(e,l,o,s,n[t]))))))),ue(o,((n,l)=>ke(e,l,n[t])))})),a=1},w=e=>{ye(f,e),ye(g,e),v(c,[e])},I=(e,t)=>k(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),R=()=>I(L,D(L)-s),T=()=>G(n,(()=>{F(L,n),R(),I(y),n=void 0,o=1})),p=()=>{n=P(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(a){T();const e=Se(r,t,he),i=Se(e,n,he),a=Se(i,l,(()=>[s,void 0]));a[1]=o,a[0]===o&&ae(ye(i,l))&&ae(ye(e,n))&&ae(ye(r,t))&&p(),M()}})),V=e.addValueListener(null,((e,t,n,l)=>{if(a){T();const e=Se(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(ye(i,t))&&p(),M()}})),m=(e="")=>(q(n)&&(n=t+l++,ye(f,n,[r,i]),O(n,e),r=he(),i=he(),o=1),n),E=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),S(0,n),n=P(L),o=1)},x=()=>{J(y)||(F(L,n),n=j(y),S(1,n),o=1)},M=()=>{o&&(v(d),o=0)},A=e=>{const t=m(e);return M(),t},O=(e,t)=>(Q(e)&&ge(g,e)!==t&&(ye(g,e,t),v(c,[e])),z),Q=e=>ie(f,e),z={setSize:e=>(s=e,R(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...y]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:Q,getCheckpoint:e=>ge(g,e),goBackward:()=>(E(),M(),z),goForward:()=>(x(),M(),z),goTo:e=>{const t=C(L,e)?E:C(y,e)?x:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(I(L),I(y),q(n)||w(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(z.clear())})),Qe=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[o,s,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?x(e,p):p(e))),[f,g,L]=Pe((()=>S)),y=(t,n,l)=>{const o=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},S={setIndexDefinition:(e,t,o,s,r,i=Qe)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,o,r,u,v,h)=>{let f=0;const L=xe(),y=xe(),S=d(e);if(ue(o,(([e,t],n)=>{const l=xe(e),o=xe(t);ue(l,(e=>ve(o,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(S,e),(t=>{ve(t,n),ae(t)&&(ye(S,e),f=1)}))})),ue(o,(e=>{Me(L,e),ie(S,e)||(ye(S,e,xe()),f=1),Me(ge(S,e),n),q(s)||Me(y,e)}))})),t(),ae(v)||(h?Le(S,(e=>Me(y,e))):Le(r,(e=>G(ge(u,e),(e=>Me(y,e))))),ue(y,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(S,e)];m(n,t)||(ye(S,e,xe(E(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...S];m(t,a)||(c(e,he(E(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(o),G(s,Je)),S},delIndexDefinition:e=>(v(e),S),getStore:o,getIndexIds:s,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),S),destroy:h,getListenerStats:()=>({})};return ee(S)})),Ne=he([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,o,s=!1)=>{if(ae(n))return;const[r,i,a,d]=o;return s||(s=q(e)),ue(l,(([n,l])=>{s||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=q(e)))})),s?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,o,s,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,o,s,r,i)=>{var u;const v=K(l)?[l,s,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,o,s,r,i)=>{const c=a(e),u=re(s);i||(i=q(c)),t();let h=We(c,u,s,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{i(n.next(e))}catch(e){o(e)}},r=e=>{try{i(n.throw(e))}catch(e){o(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);i((n=n.apply(e,t)).next())}));const qe=(e,t,n,l,o)=>{let s,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},o={}){return h.stopAutoLoad(),yield h.load(n,o),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(o(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(s,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=j(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)};var Ge=Object.getOwnPropertySymbols,He=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;const Ue=Ae((e=>{const n=e.createStore,[l,o,s,r,i,,,u,,h,f,I,R]=De(e,(()=>!0),X),T=n(),p=n(),C=he(),V=(e,t,...n)=>k(n,(n=>Me(Se(Se(C,t,he),e,xe),n))),m=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),k([p,T],(t=>t.delTable(e)))},E=(e,t,n)=>V(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,l,o)=>{u(n,l),m(n);const s=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];o({select:(e,n)=>{const l=K(e)?[D(s)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(s,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,o=q(l)?t:n,s=[e,[e,l,K(o)?o:e=>e(o),[],he()]];return F(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,K(t)?[t,n,l,o]:null!=(s=ge(Ne,t))?s:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(s);if(ae(c))return x;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=T;if(ae(h)&&J(d))f=p;else{E(n,f,p);const e=he();Le(h,((t,[n,l])=>Me(Se(e,n,xe),[t,l])));const t=xe();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),o=(t,l,o,s)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=Se(r,t,he),i=ge(l,o),a=s?void 0:n;if(i!==a){const n=xe([[i,a]]),s=re(l);ye(l,o,a),ue(ge(e,t),(([e,t])=>{const o=We(c[e],s,l,n,t);c[e]=q(me(o))?null:o}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?p.delRow(n,a):q(a)?t[2]=p.addRow(n,c):p.setRow(n,a,c)}));V(f,n,f.addRowListener(n,null,((s,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,o]=a(n,i,e);F(d,l),F(c,o),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&ye(u,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&o(Ve(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),xe(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}E(n,e,f);const g=(t,o,s,r)=>{const a=t=>e.getCell(o,s,t);k(r,(l=>{var o;const[s,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(o=ge(d,t))?o:[];c!=u&&(q(h)||R(n,h),ye(d,t,q(c)?null:[c,...I(n,1,e.addRowListener(s,c,(()=>g(t,s,c,i))))]))})),(t=>{const o=(n,o)=>{var s,r,i;return e.getCell(...q(o)?[l,t,n]:n===l?[l,t,o]:[null==(s=ge(v,n))?void 0:s[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],o])};f.transaction((()=>b(i,(e=>e(o)))?Le(c,((e,l)=>Ee(f,n,t,e,l(o,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>I(n,1,e.addRowListener(l,null,((t,o,s)=>{e.hasRow(l,s)?g(s,l,s,L):(f.delRow(n,s),ue(v,(({4:e})=>G(ge(e,s),(([,t])=>{R(n,t),ye(e,s)})))))}))))),x},delQueryDefinition:e=>(m(e),h(e),x),getStore:l,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:i,delListener:e=>(p.delListener(e),x),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)He.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ge)for(var l of Ge(e))t.indexOf(l)<0&&Ke.call(e,l)&&(n[l]=e[l]);return n})(p.getListenerStats(),["tables","tableIds","transaction"])};return oe({[v]:[1,1],[L]:[0,1],[y]:[0,5],[g]:[1,2],[w]:[0,2],[S]:[1,3]},(([e,t],n)=>{k(e?["get","has","forEach"]:["get"],(e=>x[e+d+n]=(...t)=>p[e+n](...t))),x[c+d+n+a]=(...e)=>p[c+n+a](...O(e,0,t),((n,...l)=>e[t](x,...l)))})),ee(x)})),Xe=Ae((e=>{const n=he(),l=he(),o=he(),s=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,y]=Pe((()=>R)),S=(e,t,n)=>G(u(e),(([l,,o])=>{if(!ie(o,t)){const s=xe();if(c(e)!=I(e))Me(s,t);else{let e=t;for(;!q(e)&&!ie(s,e);)Me(s,e),e=ge(l,e)}if(n)return s;ye(o,t,s)}return ge(o,t)})),w=(e,t)=>G(u(e),(([,,e])=>ye(e,t))),I=e=>ge(n,e),R={setRelationshipDefinition:(e,t,r,i)=>(ye(n,e,r),v(e,t,((t,n)=>{const r=xe(),i=xe(),a=xe(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&ye(c,t)}))),q(n)||(Me(i,n),ie(c,n)||ye(c,n,xe()),Me(ge(c,n),l)),Me(r,l),ye(d,l,n),Le(ge(s,e),(t=>{ie(S(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(o,[e,t]))),ue(a,(t=>{w(e,t),L(s,[e,t])}))}),Je(i)),R),delRelationshipDefinition:e=>(ye(n,e),h(e),R),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(S(e,t),g(n,s,[e,t])),delListener:e=>(w(...y(e)),R),destroy:f,getListenerStats:()=>({})};return ee(R)})),Ye=e=>[e,e],Ze=()=>[he(),he()],_e=e=>[...e],et=([e,t])=>e===t,tt=(e,t,n)=>q(e)||!te(e)||se(e)||_(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||le(e,l)})),!se(e)),nt=(e,t,n)=>ye(e,t,ge(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const d=he(),u=he(),y=he(),b=he(),m=he(),M=he(),D=he(),J=he(),A=he(),P=he(),j=he(),N=he(),W=he(),B=xe(),$=he(),U=he(),X=he(),Y=he(),Z=Ze(),_=Ze(),te=Ze(),re=Ze(),de=Ze(),Ve=Ze(),De=Ze(),Je=Ze(),Ae=Ze(),Oe=Ze(),je=Ze(),ze=Ze(),Ne=Ze(),We=Ze(),Be=he(),$e=Ze(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!tt(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=o||(me(e[i])!=t&&le(e,i),0))},Xe=(t,n)=>(!e||ie(P,n)||Jt(n))&&tt(t,((e,t)=>ot(n,t,e)),(()=>Jt(n))),ot=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,o)=>G(st(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Jt(e,t))),st=(t,n,l,o)=>e?G(ge(ge(P,t),l),(e=>me(o)!=e[r]?Jt(t,n,l,o,e[i]):o),(()=>Jt(t,n,l,o))):q(me(o))?Jt(t,n,l,o):o,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>me(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(me(n))?At(e,n):n,at=(e,t,n)=>(G(ge(j,t),(([l,o])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(o,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>we(P,e,((e,t,n)=>{const l=he(),o=xe();we(Se(P,t,he),n,((e,t,n)=>{ye(e,t,n),G(n[i],(e=>ye(l,t,e)),(()=>Me(o,t)))})),ye(j,t,[l,o])}),((e,t)=>{ye(P,t),ye(j,t)})),ut=e=>we(N,e,((e,t,n)=>{ye(N,t,n),G(n[i],(e=>ye(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{ye(N,t),ye(W,t),ve(B,t)})),vt=e=>se(e)?sn():en(e),ht=e=>we(X,e,((e,t,n)=>ft(t,n)),((e,t)=>pt(t))),ft=(e,t)=>we(Se(X,e,(()=>(mt(e,1),ye($,e,Fe()),ye(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,o)=>we(Se(t,n,(()=>(Et(e,n,1),he()))),l,((t,l,o)=>Lt(e,n,t,l,o)),((l,s)=>bt(e,t,n,l,s,o))),Lt=(e,t,n,l,o)=>{ie(n,l)||kt(e,t,l,1);const s=ge(n,l);o!==s&&(xt(e,t,l,s,o),ye(n,l,o))},yt=(e,t,n,l,o)=>G(ge(t,n),(t=>Lt(e,n,t,l,o)),(()=>gt(e,t,n,at({[l]:o},e,n)))),St=e=>se(e)?dn():tn(e),wt=e=>we(Y,e,((e,t,n)=>It(t,n)),((e,t)=>Vt(t))),It=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),ye(Y,e,t))},Rt=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?Rt(e,t):l},Tt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},pt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,o,s)=>{var r;const i=ge(null==(r=ge(j,e))?void 0:r[0],o);if(!q(i)&&!s)return Lt(e,n,l,o,i);const a=t=>{xt(e,n,t,ge(l,t)),kt(e,n,t,-1),ye(l,t)};q(i)?a(o):Le(l,a),ae(l)&&(Et(e,n,-1),ae(ye(t,n))&&(mt(e,-1),ye(X,e),ye($,e),ye(U,e)))},Vt=e=>{const t=ge(W,e);if(!q(t))return It(e,t);Dt(e,ge(Y,e)),Mt(e,-1),ye(Y,e)},mt=(e,t)=>nt(d,e,t),Et=(e,t,n)=>nt(Se(y,e,he),t,n),kt=(e,t,n,l)=>{var o;const s=ge(U,e),r=null!=(o=ge(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&nt(Se(u,e,he),n,l),ye(s,n,r!=-l?r+l:null),nt(Se(Se(b,e,he),t,he),n,l)},xt=(e,t,n,l,o)=>Se(Se(Se(m,e,he),t,he),n,(()=>[l,0]))[1]=o,Mt=(e,t)=>nt(M,e,t),Dt=(e,t,n)=>Se(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,o)=>(F(Se(Se(Se(J,e,he),t,he),n,(()=>[])),l),o),At=(e,t,n)=>(F(Se(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(m,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,o)=>Ge(Oe[e],[n,l,o],t))))))),jt=e=>ae(A)||ae(je[e])?0:ue(e?pe(A):A,((t,n)=>Ge(je[e],[n],t))),Qt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>Ie(t))),1},zt=e=>{const t=ae(Ve[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const o=e?[pe(d),Ce(u),Ce(y),be(b),be(m)]:[d,u,y,b,m];if(!n){Qt(_[e],o[0]),ue(o[1],((t,n)=>Qt(re[e],t,[n])));const n=xe();ue(o[2],((l,o)=>{Qt(de[e],l,[o])&&!t&&(Ge(Ve[e],[o,null]),Me(n,o))})),t||ue(o[4],((t,l)=>{if(!ie(n,l)){const n=xe();ue(t,(e=>ue(e,(([t,l],o)=>l!==t?Me(n,o):ve(e,o))))),ue(n,(t=>Ge(Ve[e],[l,t])))}})),ue(o[3],((t,n)=>ue(t,((t,l)=>Qt(Je[e],t,[n,l])))))}if(!l){let t;ue(o[4],((n,l)=>{let o;ue(n,((n,s)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,s,a],i,n,Ot),t=o=r=1)})),r&&Ge(De[e],[l,s],Ot)})),o&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[pe(M),pe(D)]:[M,D];if(t||Qt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],o)=>{l!==n&&(Ge(We[e],[o],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...x(t,p)))),gn),Bt=()=>[Ie(m,((e,t)=>-1===ge(d,t)?null:Ie(e,((e,n)=>-1===ge(ge(y,t),n)?null:Ie(e,(([,e])=>null!=e?e:null),((e,t)=>et(t)))),se)),se),Ie(D,(([,e])=>null!=e?e:null),((e,t)=>et(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Te(m,_e,et),invalidCells:Te(J),changedValues:Ie(D,_e,et),invalidValues:Ie(A),changedTableIds:Ie(d),changedRowIds:Re(y),changedCellIds:Te(b),changedValueIds:Ie(M)}),qt=()=>Te(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,p(e))),Kt=(e,t,n,l=0,o)=>{return x(O(E((s=ge(X,p(e)),r=(e,n)=>[q(t)?n:ge(e,p(t)),n],x([...null!=(i=null==s?void 0:s.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>Qe(e,t)*(n?-1:1))),l,q(o)?o:l+o),(([,e])=>e));var s,r,i},Ut=(e,t)=>fe(ge(ge(X,p(e)),p(t))),Xt=(e,t,n)=>ge(ge(ge(X,p(e)),p(t)),p(n)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>ge(Y,p(e)),en=e=>Wt((()=>(e=>tt(e,Xe,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?wt(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=tt(t,(e=>tt(e,Ue))))&&(ct(t),!ae(X))){const e=qt();sn(),en(e)}})),on=e=>Wt((()=>{if(t=(e=>tt(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),sn=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?pt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>wt({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!ae(m),l=!ae(D),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(m,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>Ee(gn,t,n,l,e))))))),ue(D,(([e],t)=>ke(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),s=0,n=l=!1,k([d,u,y,b,m,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Re(ge(X,p(e))),getTableCellIds:e=>fe(ge(U,p(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(ge(ge(X,p(e)),p(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,p(e)),hasTableCell:(e,t)=>ie(ge(U,p(e)),p(t)),hasRow:(e,t)=>ie(ge(X,p(e)),p(t)),hasCell:(e,t,n)=>ie(ge(ge(X,p(e)),p(t)),p(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,p(e)),getTablesJson:()=>Q(X),getValuesJson:()=>Q(Y),getJson:()=>Q([X,Y]),getTablesSchemaJson:()=>Q(P),getValuesSchemaJson:()=>Q(N),getSchemaJson:()=>Q([P,N]),setContent:([e,t])=>Wt((()=>{(se(e)?sn:en)(e),(se(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>Xe(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>ot(e,t,n)?gt(e,Tt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return ot(e,l,t)&&(e=p(e),gt(e,Tt(e),l=Rt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(ot(e,t,n,1)){const l=Tt(e);oe(n,((n,o)=>yt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(st(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>yt(e,Tt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?oe(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{oe(e[0],((e,t)=>q(e)?rn(t):oe(e,((e,n)=>q(e)?an(t,n):oe(e,((e,l)=>Ee(gn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{St(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),St(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:on,setSchema:(e,t)=>Wt((()=>{ln(e),on(t)})),delTables:sn,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(o=>G(ge(o,t),(s=>ie(s,n)?bt(e,o,t,s,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?Vt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,p(e)),t),forEachRow:(e,t)=>ue(ge(X,p(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,p(e)),p(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let i=Kt(e,t,n,l,o);return qe((()=>{const r=Kt(e,t,n,l,o);V(r,i)||(i=r,s(gn,e,t,n,l,o,i))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:lt};return oe({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+w]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[w]:[2,Je,[Gt,Ht]],[S]:[3,Ae,[Gt,Ht,Ut],e=>Ye(Xt(...e))],InvalidCell:[3,Oe],[R]:[0,ze],[T]:[0,Ne],[I]:[1,We,[Zt],e=>Ye(_t(e[0]))],InvalidValue:[1,je]},(([e,t,n,l],o)=>{gn[c+o+a]=(...o)=>qe(o[e],t[o[e+1]?1:0],e>0?O(o,0,e):void 0,n,l)})),ee(gn)};export{je as createCheckpoints,qe as createCustomPersister,ze as createIndexes,Be as createMetrics,Ue as createQueries,Xe as createRelationships,lt as createStore,Qe as defaultSorter};
1
+ const e=e=>typeof e,t="",n=e(t),l=e(!0),o=e(0),s=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,y="Sorted"+g+u,S="Cell",w=S+u,I="Value",R=I+"s",T=I+u,p=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),m=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),E=(e,t)=>e.sort(t),k=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),j=e=>e.shift(),Q=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==s,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),oe=(e,t)=>x(Y.entries(e),(([e,n])=>t(n,e))),se=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),ye=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),Se=(e,t,n)=>(ie(e,t)||ye(e,t,n()),ge(e,t)),we=(e,t,n,l=ye)=>(oe(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),Ie=(e,t,n)=>{const l={};return ue(e,((e,o)=>{const s=t?t(e,o):e;!(null==n?void 0:n(s,e))&&(l[o]=s)})),l},Re=(e,t,n)=>Ie(e,(e=>Ie(e,t,n)),se),Te=(e,t,n)=>Ie(e,(e=>Re(e,t,n)),se),pe=(e,t)=>{const n=he();return ue(e,((e,l)=>{var o;return n.set(l,null!=(o=null==t?void 0:t(e))?o:e)})),n},Ce=e=>pe(e,pe),be=e=>pe(e,Ce),Ve=(e,t,n,l,o=0)=>G((n?Se:ge)(e,t[o],o>D(t)-2?n:he),(s=>{if(o>D(t)-2)return(null==l?void 0:l(s))&&ye(e,t[o]),s;const r=Ve(s,t,n,l,o+1);return ae(s)&&ye(e,t[o]),r})),me=t=>{const n=e(t);return H(n)||n==o&&B(t)?n:void 0},Ee=(e,t,n,l,o)=>q(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),ke=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),xe=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,o=he(),s=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const o=Se(a,t,xe);return k(l,(t=>Me(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{k(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&ye(a,t)})),u=(e,n)=>{ye(o,e,n),ie(s,e)||(ye(s,e,t()),ye(r,e,he()),ye(i,e,he()))},v=e=>{ye(o,e),ye(s,e),ye(r,e),ye(i,e),c(e)};return[()=>e,()=>fe(o),e=>Le(s,e),e=>ie(s,e),e=>ge(o,e),e=>ge(s,e),(e,t)=>ye(s,e,t),u,(t,o,s,a,v)=>{u(t,o);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),y=t=>{const s=n=>e.getCell(o,t,n),r=ge(g,t),i=l(o,t)?n(a(s,t)):void 0;if(r===i||U(r)&&U(i)&&V(r,i)||ye(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ye(f,t,n)}},S=e=>{s((()=>{ue(h,(([,e],t)=>ye(g,t,e))),ue(f,((e,t)=>ye(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,y),e.hasTable(o)&&k(e.getRowIds(o),(e=>{ie(g,e)||y(e)})),S(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>S())))},v,()=>Le(a,v),d,c]},Je=(l,o)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=o?o:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?j(e):null)?o:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,o]=Fe(),s=he();return[(o,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return ye(s,c,[o,r,i,a,d]),Me(Ve(r,null!=i?i:[t],xe),c),c},(e,l,...o)=>k(((e,n=[t])=>{const l=[],o=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>o(e,t+1))):k([n[t],null],(n=>o(ge(e,n),t+1)));return o(e,0),l})(e,l),(e=>ue(e,(e=>ge(s,e)[0](n,...null!=l?l:[],...o))))),e=>G(ge(s,e),(([,n,l])=>(Ve(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),ye(s,e),o(e),l))),e=>G(ge(s,e),(([e,,t=[],l,o])=>{const s=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...o(r)):q(t[d])?k(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>s(...r,e))):s(...r,t[d])};s()}))]},je=Ae((e=>{let n,l,o,s=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],y=[],S=(t,n)=>{a=0,e.transaction((()=>{const[l,o]=ge(f,n);ue(l,((n,l)=>ue(n,((n,o)=>ue(n,((n,s)=>Ee(e,l,o,s,n[t]))))))),ue(o,((n,l)=>ke(e,l,n[t])))})),a=1},w=e=>{ye(f,e),ye(g,e),v(c,[e])},I=(e,t)=>k(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),R=()=>I(L,D(L)-s),T=()=>G(n,(()=>{F(L,n),R(),I(y),n=void 0,o=1})),p=()=>{n=P(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(a){T();const e=Se(r,t,he),i=Se(e,n,he),a=Se(i,l,(()=>[s,void 0]));a[1]=o,a[0]===o&&ae(ye(i,l))&&ae(ye(e,n))&&ae(ye(r,t))&&p(),M()}})),V=e.addValueListener(null,((e,t,n,l)=>{if(a){T();const e=Se(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(ye(i,t))&&p(),M()}})),m=(e="")=>(q(n)&&(n=t+l++,ye(f,n,[r,i]),O(n,e),r=he(),i=he(),o=1),n),E=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),S(0,n),n=P(L),o=1)},x=()=>{J(y)||(F(L,n),n=j(y),S(1,n),o=1)},M=()=>{o&&(v(d),o=0)},A=e=>{const t=m(e);return M(),t},O=(e,t)=>(Q(e)&&ge(g,e)!==t&&(ye(g,e,t),v(c,[e])),z),Q=e=>ie(f,e),z={setSize:e=>(s=e,R(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...y]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:Q,getCheckpoint:e=>ge(g,e),goBackward:()=>(E(),M(),z),goForward:()=>(x(),M(),z),goTo:e=>{const t=C(L,e)?E:C(y,e)?x:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(I(L),I(y),q(n)||w(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(z.clear())})),Qe=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[o,s,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?x(e,p):p(e))),[f,g,L]=Pe((()=>S)),y=(t,n,l)=>{const o=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},S={setIndexDefinition:(e,t,o,s,r,i=Qe)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,o,r,u,v,h)=>{let f=0;const L=xe(),y=xe(),S=d(e);if(ue(o,(([e,t],n)=>{const l=xe(e),o=xe(t);ue(l,(e=>ve(o,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(S,e),(t=>{ve(t,n),ae(t)&&(ye(S,e),f=1)}))})),ue(o,(e=>{Me(L,e),ie(S,e)||(ye(S,e,xe()),f=1),Me(ge(S,e),n),q(s)||Me(y,e)}))})),t(),ae(v)||(h?Le(S,(e=>Me(y,e))):Le(r,(e=>G(ge(u,e),(e=>Me(y,e))))),ue(y,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(S,e)];m(n,t)||(ye(S,e,xe(E(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...S];m(t,a)||(c(e,he(E(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(o),G(s,Je)),S},delIndexDefinition:e=>(v(e),S),getStore:o,getIndexIds:s,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),S),destroy:h,getListenerStats:()=>({})};return ee(S)})),Ne=he([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,o,s=!1)=>{if(ae(n))return;const[r,i,a,d]=o;return s||(s=q(e)),ue(l,(([n,l])=>{s||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=q(e)))})),s?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,o,s,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,o,s,r,i)=>{var u;const v=K(l)?[l,s,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,o,s,r,i)=>{const c=a(e),u=re(s);i||(i=q(c)),t();let h=We(c,u,s,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{i(n.next(e))}catch(e){o(e)}},r=e=>{try{i(n.throw(e))}catch(e){o(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);i((n=n.apply(e,t)).next())}));const qe=(e,t,n,l,o)=>{let s,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},o={}){return h.stopAutoLoad(),yield h.load(n,o),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(o(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(s,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=j(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)};var Ge=Object.getOwnPropertySymbols,He=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;const Ue=Ae((e=>{const n=e.createStore,[l,o,s,r,i,,,u,,h,f,I,R]=De(e,(()=>!0),X),T=n(),p=n(),C=he(),V=(e,t,...n)=>k(n,(n=>Me(Se(Se(C,t,he),e,xe),n))),m=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),k([p,T],(t=>t.delTable(e)))},E=(e,t,n)=>V(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,l,o)=>{u(n,l),m(n);const s=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];o({select:(e,n)=>{const l=K(e)?[D(s)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(s,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,o=q(l)?t:n,s=[e,[e,l,K(o)?o:e=>e(o),[],he()]];return F(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,K(t)?[t,n,l,o]:null!=(s=ge(Ne,t))?s:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(s);if(ae(c))return x;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=T;if(ae(h)&&J(d))f=p;else{E(n,f,p);const e=he();Le(h,((t,[n,l])=>Me(Se(e,n,xe),[t,l])));const t=xe();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),o=(t,l,o,s)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=Se(r,t,he),i=ge(l,o),a=s?void 0:n;if(i!==a){const n=xe([[i,a]]),s=re(l);ye(l,o,a),ue(ge(e,t),(([e,t])=>{const o=We(c[e],s,l,n,t);c[e]=q(me(o))?null:o}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?p.delRow(n,a):q(a)?t[2]=p.addRow(n,c):p.setRow(n,a,c)}));V(f,n,f.addRowListener(n,null,((s,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,o]=a(n,i,e);F(d,l),F(c,o),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&ye(u,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&o(Ve(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),xe(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}E(n,e,f);const g=(t,o,s,r)=>{const a=t=>e.getCell(o,s,t);k(r,(l=>{var o;const[s,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(o=ge(d,t))?o:[];c!=u&&(q(h)||R(n,h),ye(d,t,q(c)?null:[c,...I(n,1,e.addRowListener(s,c,(()=>g(t,s,c,i))))]))})),(t=>{const o=(n,o)=>{var s,r,i;return e.getCell(...q(o)?[l,t,n]:n===l?[l,t,o]:[null==(s=ge(v,n))?void 0:s[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],o])};f.transaction((()=>b(i,(e=>e(o)))?Le(c,((e,l)=>Ee(f,n,t,e,l(o,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>I(n,1,e.addRowListener(l,null,((t,o,s)=>{e.hasRow(l,s)?g(s,l,s,L):(f.delRow(n,s),ue(v,(({4:e})=>G(ge(e,s),(([,t])=>{R(n,t),ye(e,s)})))))}))))),x},delQueryDefinition:e=>(m(e),h(e),x),getStore:l,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:i,delListener:e=>(p.delListener(e),x),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)He.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ge)for(var l of Ge(e))t.indexOf(l)<0&&Ke.call(e,l)&&(n[l]=e[l]);return n})(p.getListenerStats(),["tables","tableIds","transaction"])};return oe({[v]:[1,1],[v+w]:[0,1],[L]:[0,1],[y]:[0,5],[g]:[1,2],[w]:[0,2],[S]:[1,3]},(([e,t],n)=>{k(e?["get","has","forEach"]:["get"],(e=>x[e+d+n]=(...t)=>p[e+n](...t))),x[c+d+n+a]=(...e)=>p[c+n+a](...O(e,0,t),((n,...l)=>e[t](x,...l)))})),ee(x)})),Xe=Ae((e=>{const n=he(),l=he(),o=he(),s=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,y]=Pe((()=>R)),S=(e,t,n)=>G(u(e),(([l,,o])=>{if(!ie(o,t)){const s=xe();if(c(e)!=I(e))Me(s,t);else{let e=t;for(;!q(e)&&!ie(s,e);)Me(s,e),e=ge(l,e)}if(n)return s;ye(o,t,s)}return ge(o,t)})),w=(e,t)=>G(u(e),(([,,e])=>ye(e,t))),I=e=>ge(n,e),R={setRelationshipDefinition:(e,t,r,i)=>(ye(n,e,r),v(e,t,((t,n)=>{const r=xe(),i=xe(),a=xe(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&ye(c,t)}))),q(n)||(Me(i,n),ie(c,n)||ye(c,n,xe()),Me(ge(c,n),l)),Me(r,l),ye(d,l,n),Le(ge(s,e),(t=>{ie(S(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(o,[e,t]))),ue(a,(t=>{w(e,t),L(s,[e,t])}))}),Je(i)),R),delRelationshipDefinition:e=>(ye(n,e),h(e),R),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(S(e,t),g(n,s,[e,t])),delListener:e=>(w(...y(e)),R),destroy:f,getListenerStats:()=>({})};return ee(R)})),Ye=e=>[e,e],Ze=()=>[he(),he()],_e=e=>[...e],et=([e,t])=>e===t,tt=(e,t,n)=>q(e)||!te(e)||se(e)||_(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||le(e,l)})),!se(e)),nt=(e,t,n)=>ye(e,t,ge(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const d=he(),u=he(),y=he(),b=he(),m=he(),M=he(),D=he(),J=he(),A=he(),P=he(),j=he(),N=he(),W=he(),B=xe(),$=he(),U=he(),X=he(),Y=he(),Z=Ze(),_=Ze(),te=Ze(),re=Ze(),de=Ze(),Ve=Ze(),De=Ze(),Je=Ze(),Ae=Ze(),Oe=Ze(),je=Ze(),ze=Ze(),Ne=Ze(),We=Ze(),Be=he(),$e=Ze(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!tt(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=o||(me(e[i])!=t&&le(e,i),0))},Xe=(t,n)=>(!e||ie(P,n)||Jt(n))&&tt(t,((e,t)=>ot(n,t,e)),(()=>Jt(n))),ot=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,o)=>G(st(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Jt(e,t))),st=(t,n,l,o)=>e?G(ge(ge(P,t),l),(e=>me(o)!=e[r]?Jt(t,n,l,o,e[i]):o),(()=>Jt(t,n,l,o))):q(me(o))?Jt(t,n,l,o):o,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>me(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(me(n))?At(e,n):n,at=(e,t,n)=>(G(ge(j,t),(([l,o])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(o,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>we(P,e,((e,t,n)=>{const l=he(),o=xe();we(Se(P,t,he),n,((e,t,n)=>{ye(e,t,n),G(n[i],(e=>ye(l,t,e)),(()=>Me(o,t)))})),ye(j,t,[l,o])}),((e,t)=>{ye(P,t),ye(j,t)})),ut=e=>we(N,e,((e,t,n)=>{ye(N,t,n),G(n[i],(e=>ye(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{ye(N,t),ye(W,t),ve(B,t)})),vt=e=>se(e)?sn():en(e),ht=e=>we(X,e,((e,t,n)=>ft(t,n)),((e,t)=>pt(t))),ft=(e,t)=>we(Se(X,e,(()=>(mt(e,1),ye($,e,Fe()),ye(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,o)=>we(Se(t,n,(()=>(Et(e,n,1),he()))),l,((t,l,o)=>Lt(e,n,t,l,o)),((l,s)=>bt(e,t,n,l,s,o))),Lt=(e,t,n,l,o)=>{ie(n,l)||kt(e,t,l,1);const s=ge(n,l);o!==s&&(xt(e,t,l,s,o),ye(n,l,o))},yt=(e,t,n,l,o)=>G(ge(t,n),(t=>Lt(e,n,t,l,o)),(()=>gt(e,t,n,at({[l]:o},e,n)))),St=e=>se(e)?dn():tn(e),wt=e=>we(Y,e,((e,t,n)=>It(t,n)),((e,t)=>Vt(t))),It=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),ye(Y,e,t))},Rt=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?Rt(e,t):l},Tt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},pt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,o,s)=>{var r;const i=ge(null==(r=ge(j,e))?void 0:r[0],o);if(!q(i)&&!s)return Lt(e,n,l,o,i);const a=t=>{xt(e,n,t,ge(l,t)),kt(e,n,t,-1),ye(l,t)};q(i)?a(o):Le(l,a),ae(l)&&(Et(e,n,-1),ae(ye(t,n))&&(mt(e,-1),ye(X,e),ye($,e),ye(U,e)))},Vt=e=>{const t=ge(W,e);if(!q(t))return It(e,t);Dt(e,ge(Y,e)),Mt(e,-1),ye(Y,e)},mt=(e,t)=>nt(d,e,t),Et=(e,t,n)=>nt(Se(y,e,he),t,n),kt=(e,t,n,l)=>{var o;const s=ge(U,e),r=null!=(o=ge(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&nt(Se(u,e,he),n,l),ye(s,n,r!=-l?r+l:null),nt(Se(Se(b,e,he),t,he),n,l)},xt=(e,t,n,l,o)=>Se(Se(Se(m,e,he),t,he),n,(()=>[l,0]))[1]=o,Mt=(e,t)=>nt(M,e,t),Dt=(e,t,n)=>Se(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,o)=>(F(Se(Se(Se(J,e,he),t,he),n,(()=>[])),l),o),At=(e,t,n)=>(F(Se(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(m,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,o)=>Ge(Oe[e],[n,l,o],t))))))),jt=e=>ae(A)||ae(je[e])?0:ue(e?pe(A):A,((t,n)=>Ge(je[e],[n],t))),Qt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>Ie(t))),1},zt=e=>{const t=ae(Ve[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const o=e?[pe(d),Ce(u),Ce(y),be(b),be(m)]:[d,u,y,b,m];if(!n){Qt(_[e],o[0]),ue(o[1],((t,n)=>Qt(re[e],t,[n])));const n=xe();ue(o[2],((l,o)=>{Qt(de[e],l,[o])&&!t&&(Ge(Ve[e],[o,null]),Me(n,o))})),t||ue(o[4],((t,l)=>{if(!ie(n,l)){const n=xe();ue(t,(e=>ue(e,(([t,l],o)=>l!==t?Me(n,o):ve(e,o))))),ue(n,(t=>Ge(Ve[e],[l,t])))}})),ue(o[3],((t,n)=>ue(t,((t,l)=>Qt(Je[e],t,[n,l])))))}if(!l){let t;ue(o[4],((n,l)=>{let o;ue(n,((n,s)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,s,a],i,n,Ot),t=o=r=1)})),r&&Ge(De[e],[l,s],Ot)})),o&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[pe(M),pe(D)]:[M,D];if(t||Qt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],o)=>{l!==n&&(Ge(We[e],[o],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...x(t,p)))),gn),Bt=()=>[Ie(m,((e,t)=>-1===ge(d,t)?null:Ie(e,((e,n)=>-1===ge(ge(y,t),n)?null:Ie(e,(([,e])=>null!=e?e:null),((e,t)=>et(t)))),se)),se),Ie(D,(([,e])=>null!=e?e:null),((e,t)=>et(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Te(m,_e,et),invalidCells:Te(J),changedValues:Ie(D,_e,et),invalidValues:Ie(A),changedTableIds:Ie(d),changedRowIds:Re(y),changedCellIds:Te(b),changedValueIds:Ie(M)}),qt=()=>Te(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,p(e))),Kt=(e,t,n,l=0,o)=>{return x(O(E((s=ge(X,p(e)),r=(e,n)=>[q(t)?n:ge(e,p(t)),n],x([...null!=(i=null==s?void 0:s.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>Qe(e,t)*(n?-1:1))),l,q(o)?o:l+o),(([,e])=>e));var s,r,i},Ut=(e,t)=>fe(ge(ge(X,p(e)),p(t))),Xt=(e,t,n)=>ge(ge(ge(X,p(e)),p(t)),p(n)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>ge(Y,p(e)),en=e=>Wt((()=>(e=>tt(e,Xe,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?wt(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=tt(t,(e=>tt(e,Ue))))&&(ct(t),!ae(X))){const e=qt();sn(),en(e)}})),on=e=>Wt((()=>{if(t=(e=>tt(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),sn=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?pt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>wt({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!ae(m),l=!ae(D),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(m,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>Ee(gn,t,n,l,e))))))),ue(D,(([e],t)=>ke(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),s=0,n=l=!1,k([d,u,y,b,m,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Re(ge(X,p(e))),getTableCellIds:e=>fe(ge(U,p(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(ge(ge(X,p(e)),p(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,p(e)),hasTableCell:(e,t)=>ie(ge(U,p(e)),p(t)),hasRow:(e,t)=>ie(ge(X,p(e)),p(t)),hasCell:(e,t,n)=>ie(ge(ge(X,p(e)),p(t)),p(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,p(e)),getTablesJson:()=>Q(X),getValuesJson:()=>Q(Y),getJson:()=>Q([X,Y]),getTablesSchemaJson:()=>Q(P),getValuesSchemaJson:()=>Q(N),getSchemaJson:()=>Q([P,N]),setContent:([e,t])=>Wt((()=>{(se(e)?sn:en)(e),(se(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>Xe(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>ot(e,t,n)?gt(e,Tt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return ot(e,l,t)&&(e=p(e),gt(e,Tt(e),l=Rt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(ot(e,t,n,1)){const l=Tt(e);oe(n,((n,o)=>yt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(st(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>yt(e,Tt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?oe(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{oe(e[0],((e,t)=>q(e)?rn(t):oe(e,((e,n)=>q(e)?an(t,n):oe(e,((e,l)=>Ee(gn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{St(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),St(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:on,setSchema:(e,t)=>Wt((()=>{ln(e),on(t)})),delTables:sn,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(o=>G(ge(o,t),(s=>ie(s,n)?bt(e,o,t,s,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?Vt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,p(e)),t),forEachRow:(e,t)=>ue(ge(X,p(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,p(e)),p(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let i=Kt(e,t,n,l,o);return qe((()=>{const r=Kt(e,t,n,l,o);V(r,i)||(i=r,s(gn,e,t,n,l,o,i))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:lt};return oe({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+w]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[w]:[2,Je,[Gt,Ht]],[S]:[3,Ae,[Gt,Ht,Ut],e=>Ye(Xt(...e))],InvalidCell:[3,Oe],[R]:[0,ze],[T]:[0,Ne],[I]:[1,We,[Zt],e=>Ye(_t(e[0]))],InvalidValue:[1,je]},(([e,t,n,l],o)=>{gn[c+o+a]=(...o)=>qe(o[e],t[o[e+1]?1:0],e>0?O(o,0,e):void 0,n,l)})),ee(gn)};export{je as createCheckpoints,qe as createCustomPersister,ze as createIndexes,Be as createMetrics,Ue as createQueries,Xe as createRelationships,lt as createStore,Qe as defaultSorter};
Binary file
package/lib/es6/tools.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),r="type",s="default",I="Listener",c="get",$="add",i="Ids",u="Table",p=u+"s",b=u+i,C="Row",h=C+i,g="Sorted"+C+i,m="Cell",f=m+i,w="Value",y=w+"s",v=w+i,T=(e,t)=>e.every(t),V=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),R=(e,t=l)=>e.join(t),k=(e,t)=>e.map(t),P=e=>e.length,S=(e,t)=>e.filter(t),A=(e,...t)=>e.push(...t),O=e=>e.pop(),E=(e,...t)=>e.unshift(...t),D=e=>e.shift(),j=JSON.parse,N=isFinite,L=(e,t)=>e instanceof t,G=e=>null==e,M=e=>e==n||e==o,J=t=>e(t)==n,z=e=>Array.isArray(e),W=t=>{const l=e(t);return M(l)||l==d&&N(t)?l:void 0},B=Object,F=B.keys,U=B.freeze,_=e=>L(e,B)&&e.constructor==B,Z=(e,t)=>k(B.entries(e),(([e,l])=>t(l,e))),H=e=>P(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},K=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},X=(e,t)=>null==e?void 0:e.forEach(t),Y=(e,t)=>null==e?void 0:e.delete(t),ee=e=>new Map(e),te=(e,t)=>null==e?void 0:e.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>{var l;return k([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},ne=(e,t,l)=>G(l)?(Y(e,t),e):null==e?void 0:e.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),re=e=>e.toLowerCase(),se="a ",Ie="A function for",ce=", and registers a listener so that any changes to that result will cause a re-render",$e="Callback",ie="Del",ue="Deps",pe=ue+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",ge="Id",me="Invalid",fe="Json",we=re(I),ye="?: ",ve=" | undefined",Te="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Pe="Represents",Se="rowId: "+ge,Ae="Schema",Oe="Set",Ee=", descending?: boolean, offset?: number, limit?: number",De="[]",je="the Store",Ne="Transaction",Le=Ne+"Changes",Ge=re(Ne),Me="Execute a "+Ge+" to make multiple mutations",Je="Explicitly starts a "+Ge,ze="Explicitly finishes a "+Ge,We="the end of the "+Ge,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=se+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+je:l),Ye=(e=0,t,a=0)=>ut[t]+He+Xe(e,1)+(a?" when setting it":l),et=(e,t=0)=>Pe+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+u,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,a=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(a?l:"s"),rt=e=>`the '${e}' `+u,st=e=>"the specified Row in "+rt(e),It=(e,t=0)=>ut[t]+` ${Xe()} `+rt(e),ct=(e,t=0)=>ut[t]+` ${Xe()} `+st(e),$t=(e,t,l=0)=>ut[l]+` the '${t}' Cell for `+st(e),it=(e,t=0)=>ut[t]+` the '${e}' Value`,ut=["Gets","Checks existence of","Sets","Deletes","Sets part of",Pe,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[c,"has","set","del","set","forEach",$,l],bt=[je,p,qe+u+He+i,se+u,qe+C+He+i,se+C,qe+m+He+i,se+m,"invalid Cell changes",y,qe+w+He+i,se+w,"invalid Value changes",qe+"sorted "+C+He+i,qe+m+He+i+" anywhere"],Ct=[l,"tabular ","keyed value "],ht=e=>new Set(z(e)||G(e)?e:[e]),gt=(e,t)=>null==e?void 0:e.add(t),mt=/[^A-Za-z]+/,ft=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),vt=e=>e.includes(a),Tt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?Tt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>R(k(e.split(ft),((e,l)=>(l>0||t?de:re)(yt(e,0,1))+yt(e,1)))),Pt=e=>de(R((e&&!mt.test(e[0])?e:" "+e).split(ft),"_")),St=e=>`/** ${e}. */`,At=(...e)=>R(S(e,(e=>e)),", "),Ot=(...e)=>"{"+R(e,"; ")+"}",Et=(...e)=>Ot(...k(e,(e=>"readonly "+e))),Dt=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),a=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>R(Rt(e),"\n"),(t,l,...a)=>x(a,(a=>x([0,1],(n=>(null!=t?t:n)==n?gt(oe(e[n],l,ht),a):0)))),(e,a,n,o=l,d=1)=>Tt(t,e,[a,n,o,d]),(e,t,l)=>Tt(a,e,z(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>te(a,e)===t?e:Tt(a,e,t),(t=0)=>k([...V(ae(e[t],((e,t)=>`import {${R(V(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>vt(e)!=vt(t)?vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,a,n],o)=>[St(t),`${n?he+" ":l}type ${o}${a} = ${e};`,l])),()=>ae(a,((e,t)=>(e=z(e)?e:[e],A(e,O(e)+";"),[`const ${t} = ${D(e)}`,e,l])))]},jt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Nt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[r],e[s],l(Pt(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[r],t[s],l(Pt(a),`'${a}'`),kt(a,1))))],Lt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(p,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t,a)=>`'${e}'${G(a)?"?":l}: ${t}`)))+"}"))),Ye(1,5)),s=e(p+Ue,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),c=e(u+ge,"keyof "+r,"A "+u+" Id in "+je),$=`<TId extends ${c}>`,i=e(u,Te+`<${r}[TId]>`,"A "+u+" in "+je,$),w=e(u+Ue,Te+`<${s}[TId]>`,"A "+u+" in "+je+_e,$),y=e(C,i+"<TId>[Id]","A "+C+" in a "+u,$),v=e(C+Ue,w+"<TId>[Id]","A "+C+" in a "+u+_e,$),T=e(m+ge,`Extract<keyof ${y}<TId>, Id>`,"A "+m+" Id in a "+C,$),V=e(m,Te+`<${r}[TId]>[Id][CId]`,"A "+m+" in a "+C,`<TId extends ${c}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,m+" Ids and types in a "+C,`<TId extends ${c}, CId = ${T}<TId>>`,0),R=e(m+$e,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(se+m+" Id, and "+m),$),k=e(C+$e,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(se+C+" Id, and a "+m+" iterator"),$),P=e(u+m+$e,`(cellId: ${T}<TId>, count: number) `+Fe,nt(se+m+" Id, and count of how many times it appears"),$),S=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Fe}] : never`,u+" Ids and callback types",`<TId = ${c}>`,0),A=e(u+$e,`(...[tableId, forEachRow]: ${S})`+Fe,nt(se+u+" Id, and a "+C+" iterator"),l),O=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,Ie+" returning information about any Cell's changes during a "+Ge),D=e(p+I,`(${d}, getCellChange: ${E}${ve})`+Fe,ot(1)),j=e(b+I,`(${d})`+Fe,ot(2)),N=e(u+I,`(${d}, tableId: ${c}, getCellChange: ${E}${ve})`+Fe,ot(3)),L=e(u+f+I,`(${d}, tableId: ${c})`+Fe,ot(14,3)),M=e(h+I,`(${d}, tableId: ${c})`+Fe,ot(4,3)),J=e(g+I,"("+At(d,"tableId: "+c,"cellId: Id"+ve,"descending: boolean","offset: number","limit: number"+ve,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(C+I,"("+At(""+d,"tableId: "+c,Se,`getCellChange: ${E}${ve}`)+")"+Fe,ot(5,3)),W=e(f+I,"("+At(""+d,"tableId: "+c,Se)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${Se}, cellId: CId, newCell: ${V}<TId, CId> ${ve}, oldCell: ${V}<TId, CId> ${ve}, getCellChange: ${E} ${ve}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${T}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[r,s,c,i,w,y,v,T,V,R,k,P,A,D,j,N,L,M,J,z,W,e(m+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(me+m+I,`(${d}, tableId: Id, ${Se}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Ot(...n(((e,t,a)=>`'${e}'${G(a)?"?":l}: ${t}`))),Ye(2,5)),r=e(y+Ue,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),s=e(w+ge,"keyof "+d,"A "+w+" Id in "+je),c=e(w,Te+`<${d}[VId]>`,"A "+w+" Id in "+je,`<VId extends ${s}>`),$=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+je,`<VId = ${s}>`,0),i=e(w+$e,`(...[valueId, value]: ${$})`+Fe,nt(se+w+" Id, and "+w)),u=e("GetValueChange",`(valueId: ${s}) => ValueChange`,Ie+" returning information about any Value's changes during a "+Ge),p=e(y+I,`(${o}, getValueChange: ${u}${ve})`+Fe,ot(9)),b=e(v+I,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${c}<VId> ${ve}, oldValue: ${c}<VId> ${ve}, getValueChange: ${u} ${ve}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,c,i,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(me+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Ne+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+Ge)],Gt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Mt=(e,t=l)=>`fluent(() => ${Gt(e,t)})`,Jt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,zt=(e,a,n)=>{const[d,c,T,V,k,P,S,O]=Dt(),[D,j,N]=Nt(e,a,k),[L,M,z]=Lt(T,D,j,N),W=ee(),B=(e=0)=>ae(W,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||E(s,St(o)),A(s,l),s})),F=(e,t,a,n,o,d=l)=>Tt(W,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,r=l,s=l)=>F(pt[e]+t+(4==e?Ve:l)+a,d,n,(n==H?Mt:Gt)(pt[e]+(4==e?Ve:l)+a,r,e?void 0:n),o,s),_=(e,t,a,n=l,o=l,d=1,r=l)=>F($+e+I,(n?n+", ":l)+we+": "+t+(d?", mutator?: boolean":l),ge,Jt($+e+I,o,d?"mutator":l),a,r),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if(c(1,Z,H,`create${H} as create${H}Decl`),Q(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,i);const[e,a,n,d,I,$,w,y,v,V,P,S,O,E,N,M,z,W,B,F,Q,le,ae]=L(q,H),de=ee();D(((e,t)=>{const l=`<'${e}'>`,a=[T(t+u,d+l,Pe+` the '${e}' `+u),T(t+u+Ue,I+l,Pe+` the '${e}' `+u+_e),T(t+C,$+l,et(e)),T(t+C+Ue,w+l,et(e,1)),T(t+m+ge,y+l,`A Cell Id for the '${e}' `+u),T(t+m+$e,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+u)),T(t+C+$e,P+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),T(t+u+m+$e,S+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,O,E,N,M,z,W,B,F,Q,le,ae),oe=[e,a,n,y,E,N,M,z,W,B,F,Q,le,de],x([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,Ye(1,n),t,a))),U(0,l,b,n+De,tt(u,je)),U(5,l,u,Be,lt(u,je),"tableCallback: "+O,"tableCallback as any"),D(((e,t,a)=>{const[n,d,r,s,I,c,$,p]=te(de,e);x([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],r)=>U(r,t,u,n,It(e,r),o,a+d))),U(0,t,u+f,i,tt(m,"the whole of "+rt(e)),l,a),U(5,t,u+m,Be,lt(u+m,"the whole of "+rt(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,h,i,tt(C,rt(e)),l,a),U(0,t,g,i,tt(C,rt(e),1),"cellId?: "+I+Ee,a+", cellId, descending, offset, limit"),U(5,t,C,Be,lt(C,rt(e)),"rowCallback: "+$,a+", rowCallback as any"),x([[r],[o],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>U(r,t,C,n,ct(e,r),Se+o,a+", rowId"+d))),U(6,t,C,ge+ve,"Add a new Row to "+rt(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+De,tt(m,st(e)),Se,a+", rowId"),U(5,t,m,Be,lt(m,st(e)),Se+", cellCallback: "+c,a+", rowId, cellCallback as any"),j(e,((n,d,r,s,I)=>{const c="Map"+kt(d,1);ne(Y,d,c);const $=d+(G(r)?ve:l);x([[$],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,r=l],c)=>U(c,t+I,m,o,$t(e,n,c),Se+d,a+", rowId, "+s+r))),U(1,t+I,u+m,o,ut[1]+` the '${n}' Cell anywhere in `+rt(e),l,a+", "+s)}))})),U(0,l,p+fe,fe,Ye(1,6)),U(2,l,p+fe,H,Ye(1,7),"tablesJson: "+fe,"tables"+fe),_(p,E,Ye(1,8)+" changes"),_(b,N,dt(2,0,1)),_(u,M,dt(3,0),`tableId: ${n} | null`,"tableId"),_(u+f,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(h,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(g,B,dt(13,3,1),At("tableId: TId",`cellId: ${y}<TId>`+ve,"descending: boolean","offset: number","limit: number"+ve),At("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${R(D((e=>{var t,a;return null!=(a=null==(t=te(de,e))?void 0:t[4])?a:l}))," | ")} | null`,"tableId, rowId, cellId"),_(me+m,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...K(Y)),A(X,".set"+p+Ae+"({",Rt(D(((e,t,a)=>[`[${a}]: {`,...j(e,((e,t,a,n)=>`[${n}]: {[${k(Pt(r),`'${r}'`)}]: ${k(Pt(t),`'${t}'`)}${G(a)?l:`, [${k(Pt(s),`'${s}'`)}]: `+(J(a)?k(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Q(a))c(null,t,y);else{const[e,a,n,d,I,$,i,u,p]=M(q,H);c(1,Z,e,a,n,I,$,i,u,p),de=[e,a,n,$,i,u],x([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,Ye(2,n),t,a))),U(0,l,v,n+De,tt(w,je)),U(5,l,w,"void",lt(w,je),"valueCallback: "+I,"valueCallback as any"),N(((e,t,a,n,d)=>{const r="Map"+kt(t,1);ne(Y,t,r),x([[t],[o],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,a,o=l],r)=>U(r,d,w,t,it(e,r),a,n+o)))})),U(0,l,y+fe,fe,Ye(2,6)),U(2,l,y+fe,H,Ye(2,7),"valuesJson: "+fe,"values"+fe),_(y,$,Ye(2,8)+" changes"),_(v,i,dt(10,0,1)),_(w,u,dt(11,0),`valueId: ${n} | null`,"valueId"),_(me+w,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...K(Y)),c(0,t,"ValueChange"),A(X,".set"+y+Ae+"({",N(((e,t,a,n)=>[`[${n}]: {[${k(Pt(r),`'${r}'`)}]: ${k(Pt(t),`'${t}'`)}${G(a)?l:`, [${k(Pt(s),`'${s}'`)}]: `+(J(a)?k(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,Ye(0,0)),U(2,l,"Content",H,Ye(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Le,H,`Applies a set of ${Le} to the Store`,"transactionChanges: "+Le,"transactionChanges"),le(Y,((e,t)=>T(t,`(cell: ${e}${ve}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",ge,"IdOrNull",fe,"Store",Le),c(0,t,"Get"+Le,"GetTransactionLog"),U(0,l,fe,fe,Ye(0,6)),U(2,l,fe,H,Ye(0,7),"tablesAndValuesJson: "+fe,"tablesAndValuesJson"),U(7,l,Ge,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,l,"start"+Ne,H,Je),U(7,l,"finish"+Ne,H,ze,be,"doRollback");const re=z(q,H);return _("Start"+Ne,re,ke+" just before the start of the "+Ge,l,l,0),_("WillFinish"+Ne,re,ke+" just before "+We,l,l,0),_("DidFinish"+Ne,re,ke+" just after "+We,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",ut[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,re),k("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),k(q,["{",...B(1),"}"]),[d(...P(0),...S(),he+" interface "+H+" {",...B(0),"}",l,St(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),d(...P(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>c+e,Bt=e=>At(Wt(e),Wt(e)+ue),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+$e+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=At(nl+")"+Fe,_t),dl="then, then"+ue,rl=el+Kt+ge,sl="View",Il=(e,...t)=>At(...t,we+": "+e,we+pe,"mutator?: boolean"),cl=(...e)=>At(...e,we,we+ue,"mutator"),$l=(e,a,n,o,d)=>{const[r,s,c,$,T,V,x,k]=Dt(),[P,S,O]=Nt(e,a,T),D=`./${kt(n)}.d`,j=`./${kt(n)}-ui-react.d`,N="tinybase/ui-react",L=kt(n,1),M=kt(L),J=L+"Or"+L+ge,z=M+"Or"+L+ge,W=M+`={${M}}`,B=ee(),F=(e,t,a,n,o,d=l)=>(s(1,j,e+" as "+e+"Decl"),Tt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,r=l,I=l,c=l)=>(s(1,N,`use${t} as use${t}Core`),U(e,At(o,X,I),a,le+`(${z}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,a,n,o,d],r)=>{const s=e?[he+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[he+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||E(s,St(o)),A(s,l),s}));s(null,t,ge,"Store",$e,Zt+"ized"+$e),s(0,N,"ComponentReturnType"),s(null,N,"ExtraProps"),s(0,D,L);const q=c(J,L+" | "+ge,`Used when you need to refer to a ${L} in a React hook or component`),K=c(Re+xe,Et(M+ye+L,M+`ById?: {[${M}Id: Id]: ${L}}`),`Used with the ${Re} component, so that a `+L+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,j,q,K);const X=z+ye+q;T("{createContext, useContext, useMemo}","React"),T("Context",`createContext<[${L}?, {[${M}Id: Id]: ${L}}?]>([])`),U("Create"+L,`create: () => ${L}, create`+pe,L,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${L} within a React application with convenient memoization`);const Y=U(L,"id?: Id",L+ve,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${L} from within a ${Re} component context`),le=$("useHook",z+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${M} : ${z})?.getStore(), ...postParams)`]),ne=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=$("wrap",At("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=T("NullComponent","() => null");if(!Q(e)){const[e,a,n,d,r,w,y,v,T,V,x,k,A,O]=o;s(null,D,e,a,n,r,w,y,v,T,V,x,k,A),s(0,D,d),s(1,D,L),s(null,t,i,"IdOrNull");const E=$("tableView",`{${M}, rowComponent, getRowComponentProps`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,W,Ut,"/>","))",ll,", tableId,",");"]),N=$("getDefaultTableComponent","tableId: Id",R(P(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+de),J=$("getDefaultCellComponent","tableId: Id, cellId: Id",R(P(((e,t,l)=>`tableId == ${l} ? ${R(S(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+de} : `)))+de);_(p,p,e,Ye(1,0)+ce);const z=_(b,b,n+De,tt(u,je)+ce);_(Oe+p+$e,Oe+p+$e,Yt,Ye(1,9)+qt,At(Wt(p)+Ht+a,Wt(p)+pe),Bt(p),Xt,At(nl,`tables: ${a})`+Fe,_t),dl),_(ie+p+$e,ie+p+$e,$e,Ye(1,12),l,l,l,ol,dl);const B=c(m+xe,Et("tableId?: TId","rowId: Id","cellId?: CId",M+ye+L,Ft),at(se+m),`<TId extends ${n}, CId extends ${d}<TId>>`),F=c(C+xe,Et("tableId?: TId","rowId: Id",M+ye+L,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,al,Ft),at(se+C),`<TId extends ${n}>`),U=c(u+xe,Et("tableId?: TId",M+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+u),`<TId extends ${n}>`),H=c("Sorted"+u+xe,Et("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps",al,Ft),at(se+"sorted "+u),`<TId extends ${n}>`),Q=c(p+xe,Et(M+ye+L,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));s(1,j,Q,U,H,F,B),Z(p+sl,"{"+M+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+N+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+ce),P(((e,t,a)=>{const[n,o,d,r,I]=te(O,e);s(null,D,n,o,d,r,I),_(t+u,u,n,It(e)+ce,l,a),_(t+u+f,u+f,i,tt(m,"the whole of "+rt(e))+ce,l,a);const c=_(t+h,h,i,tt(C,rt(e))+ce,l,a),$=_(t+g,g,i,tt(C,rt(e),1)+ce,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,ct(e)+ce,rl,At(a,el));const p=_(t+f,f,I+De,tt(m,st(e))+ce,rl,At(a,el));_(Oe+t+u+$e,Oe+u+$e,Yt,It(e,9)+qt,At(Wt(u)+Ht+o,Wt(u)+pe),At(a,Bt(u)),Xt,At(nl,`table: ${o})`+Fe,_t),dl),_(ie+t+u+$e,ie+u+$e,$e,It(e,12),l,a,l,ol,dl),_(Oe+t+C+$e,Oe+C+$e,Yt,ct(e,9)+qt,At(rl,Wt(C)+Ht+r,Wt(C)+pe),At(a,el,Bt(C)),Xt,At(nl,`row: ${r})`+Fe,_t),dl),_("Add"+t+C+$e,"Add"+C+$e,Yt,ct(e,10)+qt,At(Wt(C)+Ht+r,Wt(C)+pe),At(a,Bt(C)),Xt,"then?: ("+At(rl+ve,"store: Store","row: "+r+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Oe+t+Ve+C+$e,Oe+Ve+C+$e,Yt,ct(e,11)+qt,At(rl,Wt(Ve+C)+Ht+r,Wt(Ve+C)+pe),At(a,el,Bt(Ve+C)),Xt,At(nl,`partialRow: ${r})`+Fe,_t),dl),_(ie+t+C+$e,ie+C+$e,$e,ct(e,12),rl,At(a,el),l,ol,dl);const b=Z(t+C+sl,"{rowId, "+M+", cellComponents, getCellComponentProps"+ll+`}: ${F}<'${e}'>`,[oe+`(${p}(rowId, ${M}).map((cellId) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],ct(e,13)+ce);Z(t+"Sorted"+u+sl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,E+"(props, "+$+`(cellId, descending, offset, limit, props.${M}), ${a}, ${b});`,It(e,13)+", sorted"+ce),Z(t+u+sl,`props: ${U}<'${e}'>`,E+"(props, "+c+`(props.${M}), ${a}, ${b});`,It(e,13)+ce),S(e,((n,o,d,r,I)=>{const c="Map"+kt(o,1);s(0,D,c),s(1,D,c);const $=_(t+I+m,m,o+(G(d)?ve:l),$t(e,n)+ce,rl,At(a,el,r));_(Oe+t+I+m+$e,Oe+m+$e,Yt,$t(e,n,9)+qt,At(rl,Wt(m)+Ht+o+" | "+c,Wt(m)+pe),At(a,el,r,Bt(m)),Xt,At(nl,`cell: ${o} | ${c})`+Fe,_t),dl),_(ie+t+I+m+$e,ie+m+$e,$e,$t(e,n,12),At(rl,"forceDel?: boolean"),At(a,el,r,"forceDel"),l,ol,dl),Z(t+I+m+sl,`{rowId, ${M}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${$}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],$t(e,n,13)+ce)}))}));const q=R(P((e=>{var t,a;return null!=(a=null==(t=te(O,e))?void 0:t[4])?a:l}))," | ");_(p+I,p+I,Be,Ye(1,8)+" changes",Il(r),cl()),_(b+I,b+I,Be,dt(2,0,1),Il(w),cl()),_(u+I,u+I,Be,dt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(u+f+I,u+f+I,Be,dt(14,3,1),Il(v,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,Be,dt(4,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(g+I,g+I,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+ve,"descending: boolean","offset: number","limit: number"+ve),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(f+I,f+I,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(m+I,m+I,Be,dt(7,5),Il(A,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),cl("tableId",el,"cellId"))}if(!Q(a)){const[e,t,a,n,o,r]=d;s(null,D,...d),s(1,D,L);const i=$("getDefaultValueComponent","valueId: Id",R(O(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+de);_(y,y,e,Ye(2,0)+ce);const u=_(v,v,a+De,tt(w,je)+ce);_(Oe+y+$e,Oe+y+$e,Yt,Ye(2,9)+qt,At(Wt(y)+Ht+t,Wt(y)+pe),Bt(y),Xt,At(nl,`values: ${t})`+Fe,_t),dl),_(Oe+Ve+y+$e,Oe+Ve+y+$e,Yt,Ye(2,11)+qt,At(Wt(Ve+y)+Ht+t,Wt(Ve+y)+pe),Bt(Ve+y),Xt,At(nl,`partialValues: ${t})`+Fe,_t),dl),_(ie+y+$e,ie+y+$e,$e,Ye(2,12),l,l,l,ol,dl);const p=c(w+xe,Et("valueId?: VId",M+ye+L,Ft),at("a Value"),`<VId extends ${a}>`),b=c(y+xe,Et(M+ye+L,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,al,Ft),at(Xe(2,1)));s(1,j,b,p),Z(y+sl,"{"+M+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${u}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+i+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+ce),O(((e,t,a,n,o)=>{const d="Map"+kt(t,1);s(0,D,d),s(1,D,d);const r=_(o+w,w,t,it(e)+ce,l,n);_(Oe+o+w+$e,Oe+w+$e,Yt,it(e,9)+qt,At(Wt(w)+Ht+t+" | "+d,Wt(w)+pe),At(n,Bt(w)),Xt,At(nl,`value: ${t} | ${d})`+Fe,_t),dl),_(ie+o+w+$e,ie+w+$e,$e,it(e,12),l,n,l,ol,dl),Z(o+w+sl,`{${M}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],it(e,13)+ce)})),_(y+I,y+I,Be,Ye(2,8)+" changes",Il(n),cl()),_(v+I,v+I,Be,dt(10,0,1),Il(o),cl()),_(w+I,w+I,Be,dt(11,0),Il(r,`valueId: ${a} | null`),cl("valueId"))}return Z(Re,`{${M}, ${M}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(Q(e)&&Q(t))return[l,l,l,l];const[n,o,d,r]=zt(e,t,a);return[n,o,...$l(e,t,a,d,r)]};var ul=Object.defineProperty,pl=Object.defineProperties,bl=Object.getOwnPropertyDescriptors,Cl=Object.getOwnPropertySymbols,hl=Object.prototype.hasOwnProperty,gl=Object.prototype.propertyIsEnumerable,ml=(e,t,l)=>t in e?ul(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,fl=(e,t)=>{for(var l in t||(t={}))hl.call(t,l)&&ml(e,l,t[l]);if(Cl)for(var l of Cl(t))gl.call(t,l)&&ml(e,l,t[l]);return e},wl=(e,t)=>pl(e,bl(t)),yl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const vl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tl=jt((e=>{const t=()=>{const t=j(e.getTablesSchemaJson());return!Q(t)||T(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(T(a,(t=>T(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[W(o),ee(),[0],0])),[r,s,[I]]=d,c=oe(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),ne(s,o,c),d[3]++,r==W(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]=fl({[r]:e},o==P(a)?{[s]:n}:{})})),1}))?t:{}},l=()=>{const t=j(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:W(l)}})),t},a=e=>il(t(),l(),e),n=e=>yl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return k(a(e),((e,a)=>Vt(l(e,wl(fl({},vl),{filepath:"_."+t[a]})))))}));return U({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),fl({totalTables:l,totalRows:a,totalCells:n,totalValues:P(e.getValueIds()),jsonLength:xt(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{Tl as createTools};
1
+ const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),r="type",s="default",I="Listener",c="get",u="add",$="Ids",i="Table",p=i+"s",b=i+$,C="Row",h=C+$,m="Sorted"+C+$,g="Cell",f=g+$,w="Value",y=w+"s",v=w+$,T=(e,t)=>e.every(t),V=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),R=(e,t=l)=>e.join(t),k=(e,t)=>e.map(t),P=e=>e.length,S=(e,t)=>e.filter(t),A=(e,...t)=>e.push(...t),O=e=>e.pop(),E=(e,...t)=>e.unshift(...t),D=e=>e.shift(),j=JSON.parse,N=isFinite,L=(e,t)=>e instanceof t,G=e=>null==e,M=e=>e==n||e==o,J=t=>e(t)==n,z=e=>Array.isArray(e),W=t=>{const l=e(t);return M(l)||l==d&&N(t)?l:void 0},B=Object,F=B.keys,U=B.freeze,_=e=>L(e,B)&&e.constructor==B,Z=(e,t)=>k(B.entries(e),(([e,l])=>t(l,e))),H=e=>P(F(e)),Q=e=>_(e)&&0==H(e),q=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},K=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},X=(e,t)=>null==e?void 0:e.forEach(t),Y=(e,t)=>null==e?void 0:e.delete(t),ee=e=>new Map(e),te=(e,t)=>null==e?void 0:e.get(t),le=(e,t)=>X(e,((e,l)=>t(l,e))),ae=(e,t)=>{var l;return k([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>t(l,e)))},ne=(e,t,l)=>G(l)?(Y(e,t),e):null==e?void 0:e.set(t,l),oe=(e,t,l)=>(q(e,t)||ne(e,t,l()),te(e,t)),de=e=>e.toUpperCase(),re=e=>e.toLowerCase(),se="a ",Ie="A function for",ce=", and registers a listener so that any changes to that result will cause a re-render",ue="Callback",$e="Del",ie="Deps",pe=ie+"?: React.DependencyList",be="doRollback?: DoRollback",Ce="actions: () => Return, "+be,he="export",me="Id",ge="Invalid",fe="Json",we=re(I),ye="?: ",ve=" | undefined",Te="NonNullable",Ve="Partial",xe="Props",Re="Provider",ke=`Registers a ${we} that will be called`,Pe="Represents",Se="rowId: "+me,Ae="Schema",Oe="Set",Ee=", descending?: boolean, offset?: number, limit?: number",De="[]",je="the Store",Ne="Transaction",Le=Ne+"Changes",Ge=re(Ne),Me="Execute a "+Ge+" to make multiple mutations",Je="Explicitly starts a "+Ge,ze="Explicitly finishes a "+Ge,We="the end of the "+Ge,Be="void",Fe=" => "+Be,Ue="WhenSet",_e=" when setting it",Ze=se+"string serialization of",He=" ",Qe="Gets a callback that can ",qe="the ",Ke=" the schema for",Xe=(e=0,t=0)=>`the ${Ct[e]}content of`+(t?He+je:l),Ye=(e=0,t,a=0)=>it[t]+He+Xe(e,1)+(a?" when setting it":l),et=(e,t=0)=>Pe+` a Row when ${t?"s":"g"}etting ${Xe()} the '${e}' `+i,tt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,lt=(e,t)=>`Calls a function for each ${e} in `+t,at=e=>"The props passed to a component that renders "+e,nt=e=>"A function that takes "+e,ot=(e,t=0)=>Ie+" listening to changes to "+bt[e]+" in "+bt[t],dt=(e,t,a=0)=>ke+" whenever "+bt[e]+" in "+bt[t]+" change"+(a?l:"s"),rt=e=>`the '${e}' `+i,st=e=>"the specified Row in "+rt(e),It=(e,t=0)=>it[t]+` ${Xe()} `+rt(e),ct=(e,t=0)=>it[t]+` ${Xe()} `+st(e),ut=(e,t,l=0)=>it[l]+` the '${t}' Cell for `+st(e),$t=(e,t=0)=>it[t]+` the '${e}' Value`,it=["Gets","Checks existence of","Sets","Deletes","Sets part of",Pe,"Gets "+Ze,"Sets "+Ze,ke+" whenever",Qe+"set",Qe+"add",Qe+"set part of",Qe+"delete","Renders","Gets "+Ze+Ke,"Sets"+Ke,"Deletes"+Ke],pt=[c,"has","set","del","set","forEach",u,l],bt=[je,p,qe+i+He+$,se+i,qe+C+He+$,se+C,qe+g+He+$,se+g,"invalid Cell changes",y,qe+w+He+$,se+w,"invalid Value changes",qe+"sorted "+C+He+$,qe+g+He+$+" anywhere"],Ct=[l,"tabular ","keyed value "],ht=e=>new Set(z(e)||G(e)?e:[e]),mt=(e,t)=>null==e?void 0:e.add(t),gt=/[^A-Za-z]+/,ft=/[^A-Za-z0-9]+/,wt=/^( *)\/\*\* *(.*?) *\*\/$/gm,yt=(e,t,l)=>e.substring(t,l),vt=e=>e.includes(a),Tt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return q(e,n)?Tt(e,t,l,a+1):(ne(e,n,l),n)},Vt=e=>e.replace(wt,((e,t,l)=>{const a=77-xt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),xt=e=>e.length,Rt=e=>e.flat(1e3),kt=(e,t=0)=>R(k(e.split(ft),((e,l)=>(l>0||t?de:re)(yt(e,0,1))+yt(e,1)))),Pt=e=>de(R((e&&!gt.test(e[0])?e:" "+e).split(ft),"_")),St=e=>`/** ${e}. */`,At=(...e)=>R(S(e,(e=>e)),", "),Ot=(...e)=>"{"+R(e,"; ")+"}",Et=(...e)=>Ot(...k(e,(e=>"readonly "+e))),Dt=()=>{const e=[ee(),ee(),ee(),ee()],t=ee(),a=ee(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>R(Rt(e),"\n"),(t,l,...a)=>x(a,(a=>x([0,1],(n=>(null!=t?t:n)==n?mt(oe(e[n],l,ht),a):0)))),(e,a,n,o=l,d=1)=>Tt(t,e,[a,n,o,d]),(e,t,l)=>Tt(a,e,z(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>te(a,e)===t?e:Tt(a,e,t),(t=0)=>k([...V(ae(e[t],((e,t)=>`import {${R(V(K(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>vt(e)!=vt(t)?vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>ae(t,(([e,t,a,n],o)=>[St(t),`${n?he+" ":l}type ${o}${a} = ${e};`,l])),()=>ae(a,((e,t)=>(e=z(e)?e:[e],A(e,O(e)+";"),[`const ${t} = ${D(e)}`,e,l])))]},jt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Nt=(e,t,l)=>[t=>Z(e,((e,a)=>t(a,kt(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>Z(e[t],((e,t)=>a(t,e[r],e[s],l(Pt(t),`'${t}'`),kt(t,1)))),e=>Z(t,((t,a)=>e(a,t[r],t[s],l(Pt(a),`'${a}'`),kt(a,1))))],Lt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,r=e(p,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t,a)=>`'${e}'${G(a)?"?":l}: ${t}`)))+"}"))),Ye(1,5)),s=e(p+Ue,Ot(...t((e=>`'${e}'?: {[rowId: Id]: `+Ot(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Ye(1,5,1)),c=e(i+me,"keyof "+r,"A "+i+" Id in "+je),u=`<TId extends ${c}>`,$=e(i,Te+`<${r}[TId]>`,"A "+i+" in "+je,u),w=e(i+Ue,Te+`<${s}[TId]>`,"A "+i+" in "+je+_e,u),y=e(C,$+"<TId>[Id]","A "+C+" in a "+i,u),v=e(C+Ue,w+"<TId>[Id]","A "+C+" in a "+i+_e,u),T=e(g+me,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,u),V=e(g,Te+`<${r}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${c}, CId extends ${T}<TId>>`),x=e("CellIdCellArray",`CId extends ${T}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${c}, CId = ${T}<TId>>`,0),R=e(g+ue,`(...[cellId, cell]: ${x}<TId>)`+Fe,nt(se+g+" Id, and "+g),u),k=e(C+ue,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Fe+") "+Fe,nt(se+C+" Id, and a "+g+" iterator"),u),P=e(i+g+ue,`(cellId: ${T}<TId>, count: number) `+Fe,nt(se+g+" Id, and count of how many times it appears"),u),S=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${k}<TId>)${Fe}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),A=e(i+ue,`(...[tableId, forEachRow]: ${S})`+Fe,nt(se+i+" Id, and a "+C+" iterator"),l),O=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${T}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),E=e("GetCellChange",`(...[tableId, rowId, cellId]: ${O}) => CellChange`,Ie+" returning information about any Cell's changes during a "+Ge),D=e(p+I,`(${d}, getCellChange: ${E}${ve})`+Fe,ot(1)),j=e(b+I,`(${d})`+Fe,ot(2)),N=e(i+I,`(${d}, tableId: ${c}, getCellChange: ${E}${ve})`+Fe,ot(3)),L=e(i+f+I,`(${d}, tableId: ${c})`+Fe,ot(14,3)),M=e(h+I,`(${d}, tableId: ${c})`+Fe,ot(4,3)),J=e(m+I,"("+At(d,"tableId: "+c,"cellId: Id"+ve,"descending: boolean","offset: number","limit: number"+ve,"sortedRowIds: Ids")+")"+Fe,ot(13,3)),z=e(C+I,"("+At(""+d,"tableId: "+c,Se,`getCellChange: ${E}${ve}`)+")"+Fe,ot(5,3)),W=e(f+I,"("+At(""+d,"tableId: "+c,Se)+")"+Fe,ot(6,5)),B=e("CellListenerArgsArrayInner",`CId extends ${T}<TId> ? [${d}, tableId: TId, ${Se}, cellId: CId, newCell: ${V}<TId, CId> ${ve}, oldCell: ${V}<TId, CId> ${ve}, getCellChange: ${E} ${ve}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${T}<TId>>`,0),F=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+B+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[r,s,c,$,w,y,v,T,V,R,k,P,A,D,j,N,L,M,J,z,W,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${F})`+Fe,ot(7,5)),e(ge+g+I,`(${d}, tableId: Id, ${Se}, cellId: Id, invalidCells: any[])`+Fe,ot(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Ot(...n(((e,t,a)=>`'${e}'${G(a)?"?":l}: ${t}`))),Ye(2,5)),r=e(y+Ue,Ot(...n(((e,t)=>`'${e}'?: ${t}`))),Ye(2,5,1)),s=e(w+me,"keyof "+d,"A "+w+" Id in "+je),c=e(w,Te+`<${d}[VId]>`,"A "+w+" Id in "+je,`<VId extends ${s}>`),u=e("ValueIdValueArray",`VId extends ${s} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+je,`<VId = ${s}>`,0),$=e(w+ue,`(...[valueId, value]: ${u})`+Fe,nt(se+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${s}) => ValueChange`,Ie+" returning information about any Value's changes during a "+Ge),p=e(y+I,`(${o}, getValueChange: ${i}${ve})`+Fe,ot(9)),b=e(v+I,`(${o})`+Fe,ot(10)),C=e("ValueListenerArgsArray",`VId extends ${s} ? [${o}, valueId: VId, newValue: ${c}<VId> ${ve}, oldValue: ${c}<VId> ${ve}, getValueChange: ${i} ${ve}] : never`,"Value args for ValueListener",`<VId = ${s}>`,0);return[d,r,s,c,$,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Fe,ot(11)),e(ge+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Fe,ot(12))]},(t,l)=>e(Ne+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Fe,Ie+" listening to the completion of a "+Ge)],Gt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Mt=(e,t=l)=>`fluent(() => ${Gt(e,t)})`,Jt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,zt=(e,a,n)=>{const[d,c,T,V,k,P,S,O]=Dt(),[D,j,N]=Nt(e,a,k),[L,M,z]=Lt(T,D,j,N),W=ee(),B=(e=0)=>ae(W,(([t,a,n,o,d],r)=>{const s=e?[r+`: ${d}(${t}): ${a} => ${n},`]:[r+d+`(${t}): ${a};`];return e||E(s,St(o)),A(s,l),s})),F=(e,t,a,n,o,d=l)=>Tt(W,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,r=l,s=l)=>F(pt[e]+t+(4==e?Ve:l)+a,d,n,(n==H?Mt:Gt)(pt[e]+(4==e?Ve:l)+a,r,e?void 0:n),o,s),_=(e,t,a,n=l,o=l,d=1,r=l)=>F(u+e+I,(n?n+", ":l)+we+": "+t+(d?", mutator?: boolean":l),me,Jt(u+e+I,o,d?"mutator":l),a,r),Z=`./${kt(n)}.d`,H=kt(n,1),q=kt(H),X=[],Y=ee();let oe=[],de=[];if(c(1,Z,H,`create${H} as create${H}Decl`),Q(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,$);const[e,a,n,d,I,u,w,y,v,V,P,S,O,E,N,M,z,W,B,F,Q,le,ae]=L(q,H),de=ee();D(((e,t)=>{const l=`<'${e}'>`,a=[T(t+i,d+l,Pe+` the '${e}' `+i),T(t+i+Ue,I+l,Pe+` the '${e}' `+i+_e),T(t+C,u+l,et(e)),T(t+C+Ue,w+l,et(e,1)),T(t+g+me,y+l,`A Cell Id for the '${e}' `+i),T(t+g+ue,V+l,nt(`a Cell Id and value from a Row in the '${e}' `+i)),T(t+C+ue,P+l,nt(`a Row Id from the '${e}' Table, and a Cell iterator`)),T(t+i+g+ue,S+l,nt(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ne(de,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,O,E,N,M,z,W,B,F,Q,le,ae),oe=[e,a,n,y,E,N,M,z,W,B,F,Q,le,de],x([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,Ye(1,n),t,a))),U(0,l,b,n+De,tt(i,je)),U(5,l,i,Be,lt(i,je),"tableCallback: "+O,"tableCallback as any"),D(((e,t,a)=>{const[n,d,r,s,I,c,u,p]=te(de,e);x([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],r)=>U(r,t,i,n,It(e,r),o,a+d))),U(0,t,i+f,$,tt(g,"the whole of "+rt(e)),l,a),U(5,t,i+g,Be,lt(i+g,"the whole of "+rt(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,h,$,tt(C,rt(e)),l,a),U(0,t,m,$,tt(C,rt(e),1),"cellId?: "+I+Ee,a+", cellId, descending, offset, limit"),U(5,t,C,Be,lt(C,rt(e)),"rowCallback: "+u,a+", rowCallback as any"),x([[r],[o],[H,", row: "+s,", row"],[H],[H,", partialRow: "+s,", partialRow"]],(([n,o=l,d=l],r)=>U(r,t,C,n,ct(e,r),Se+o,a+", rowId"+d))),U(6,t,C,me+ve,"Add a new Row to "+rt(e),"row: "+s+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+De,tt(g,st(e)),Se,a+", rowId"),U(5,t,g,Be,lt(g,st(e)),Se+", cellCallback: "+c,a+", rowId, cellCallback as any"),j(e,((n,d,r,s,I)=>{const c="Map"+kt(d,1);ne(Y,d,c);const u=d+(G(r)?ve:l);x([[u],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,r=l],c)=>U(c,t+I,g,o,ut(e,n,c),Se+d,a+", rowId, "+s+r))),U(1,t+I,i+g,o,it[1]+` the '${n}' Cell anywhere in `+rt(e),l,a+", "+s)}))})),U(0,l,p+fe,fe,Ye(1,6)),U(2,l,p+fe,H,Ye(1,7),"tablesJson: "+fe,"tables"+fe),_(p,E,Ye(1,8)+" changes"),_(b,N,dt(2,0,1)),_(i,M,dt(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,z,dt(14,3,1),`tableId: ${n} | null`,"tableId"),_(h,W,dt(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,B,dt(13,3,1),At("tableId: TId",`cellId: ${y}<TId>`+ve,"descending: boolean","offset: number","limit: number"+ve),At("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,F,dt(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,Q,dt(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,dt(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${R(D((e=>{var t,a;return null!=(a=null==(t=te(de,e))?void 0:t[4])?a:l}))," | ")} | null`,"tableId, rowId, cellId"),_(ge+g,ae,ke+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...K(Y)),A(X,".set"+p+Ae+"({",Rt(D(((e,t,a)=>[`[${a}]: {`,...j(e,((e,t,a,n)=>`[${n}]: {[${k(Pt(r),`'${r}'`)}]: ${k(Pt(t),`'${t}'`)}${G(a)?l:`, [${k(Pt(s),`'${s}'`)}]: `+(J(a)?k(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(Q(a))c(null,t,y);else{const[e,a,n,d,I,u,$,i,p]=M(q,H);c(1,Z,e,a,n,I,u,$,i,p),de=[e,a,n,u,$,i],x([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,Ye(2,n),t,a))),U(0,l,v,n+De,tt(w,je)),U(5,l,w,"void",lt(w,je),"valueCallback: "+I,"valueCallback as any"),N(((e,t,a,n,d)=>{const r="Map"+kt(t,1);ne(Y,t,r),x([[t],[o],[H,`value: ${t} | `+r,", value as any"],[H]],(([t,a,o=l],r)=>U(r,d,w,t,$t(e,r),a,n+o)))})),U(0,l,y+fe,fe,Ye(2,6)),U(2,l,y+fe,H,Ye(2,7),"valuesJson: "+fe,"values"+fe),_(y,u,Ye(2,8)+" changes"),_(v,$,dt(10,0,1)),_(w,i,dt(11,0),`valueId: ${n} | null`,"valueId"),_(ge+w,p,ke+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...K(Y)),c(0,t,"ValueChange"),A(X,".set"+y+Ae+"({",N(((e,t,a,n)=>[`[${n}]: {[${k(Pt(r),`'${r}'`)}]: ${k(Pt(t),`'${t}'`)}${G(a)?l:`, [${k(Pt(s),`'${s}'`)}]: `+(J(a)?k(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,Ye(0,0)),U(2,l,"Content",H,Ye(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Le,H,`Applies a set of ${Le} to the Store`,"transactionChanges: "+Le,"transactionChanges"),le(Y,((e,t)=>T(t,`(cell: ${e}${ve}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",me,"IdOrNull",fe,"Store",Le),c(0,t,"Get"+Le,"GetTransactionLog"),U(0,l,fe,fe,Ye(0,6)),U(2,l,fe,H,Ye(0,7),"tablesAndValuesJson: "+fe,"tablesAndValuesJson"),U(7,l,Ge,"Return",Me,Ce,"actions, doRollback","<Return>"),U(7,l,"start"+Ne,H,Je),U(7,l,"finish"+Ne,H,ze,be,"doRollback");const re=z(q,H);return _("Start"+Ne,re,ke+" just before the start of the "+Ge,l,l,0),_("WillFinish"+Ne,re,ke+" just before "+We,l,l,0),_("DidFinish"+Ne,re,ke+" just after "+We,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+je,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",it[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,re),k("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),k(q,["{",...B(1),"}"]),[d(...P(0),...S(),he+" interface "+H+" {",...B(0),"}",l,St(`Creates a ${H} object`),he+" function create"+H+"(): "+H+";"),d(...P(1),he+" const create"+H+": typeof create"+H+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),oe,de]},Wt=e=>c+e,Bt=e=>At(Wt(e),Wt(e)+ie),Ft="debugIds?: boolean",Ut="debugIds={debugIds}",_t="then"+pe,Zt="Parameter",Ht=": (parameter: "+Zt+", store: Store) => ",Qt="const contextValue = useContext(Context);",qt=", based on a parameter",Kt=": ",Xt="<"+Zt+",>",Yt=Zt+"ized"+ue+"<"+Zt+">",el="rowId",tl="rowId={rowId}",ll=", separator, debugIds",al="separator?: ReactElement | string",nl="then?: (store: Store",ol=At(nl+")"+Fe,_t),dl="then, then"+ie,rl=el+Kt+me,sl="View",Il=(e,...t)=>At(...t,we+": "+e,we+pe,"mutator?: boolean"),cl=(...e)=>At(...e,we,we+ie,"mutator"),ul=(e,a,n,o,d)=>{const[r,s,c,u,T,V,x,k]=Dt(),[P,S,O]=Nt(e,a,T),D=`./${kt(n)}.d`,j=`./${kt(n)}-ui-react.d`,N="tinybase/ui-react",L=kt(n,1),M=kt(L),J=L+"Or"+L+me,z=M+"Or"+L+me,W=M+`={${M}}`,B=ee(),F=(e,t,a,n,o,d=l)=>(s(1,j,e+" as "+e+"Decl"),Tt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,r=l,I=l,c=l)=>(s(1,N,`use${t} as use${t}Core`),U(e,At(o,X,I),a,le+`(${z}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,r)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ae(B,(([t,a,n,o,d],r)=>{const s=e?[he+` const ${r}: typeof ${r}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[he+` function ${r}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||E(s,St(o)),A(s,l),s}));s(null,t,me,"Store",ue,Zt+"ized"+ue),s(0,N,"ComponentReturnType"),s(1,N,"useCellIds"),s(null,N,"ExtraProps"),s(0,D,L);const q=c(J,L+" | "+me,`Used when you need to refer to a ${L} in a React hook or component`),K=c(Re+xe,Et(M+ye+L,M+`ById?: {[${M}Id: Id]: ${L}}`),`Used with the ${Re} component, so that a `+L+" can be passed into the context of an application");s(0,"react","ReactElement","ComponentType"),s(1,"react","React"),s(1,j,q,K);const X=z+ye+q;T("{createContext, useContext, useMemo}","React"),T("Context",`createContext<[${L}?, {[${M}Id: Id]: ${L}}?]>([])`),U("Create"+L,`create: () => ${L}, create`+pe,L,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${L} within a React application with convenient memoization`);const Y=U(L,"id?: Id",L+ve,["{",Qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${L} from within a ${Re} component context`),le=u("useHook",z+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${M} = ${Y}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${M} : ${z})?.getStore(), ...postParams)`]),ne=u("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=u("wrap",At("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=u("useCustomOrDefaultCellIds",At("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${q} | undefined`),[`const defaultCellIds = ${le}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),re=T("NullComponent","() => null");if(!Q(e)){const[e,a,n,d,r,w,y,v,T,V,x,k,A,O]=o;s(null,D,e,a,n,r,w,y,v,T,V,x,k,A),s(0,D,d),s(1,D,L),s(null,t,$,"IdOrNull");const E=u("tableView",`{${M}, rowComponent, getRowComponentProps, customCellIds`+ll+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",tl,"customCellIds={customCellIds}",W,Ut,"/>","))",ll,", tableId,",");"]),N=u("getDefaultTableComponent","tableId: Id",R(P(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+re),J=u("getDefaultCellComponent","tableId: Id, cellId: Id",R(P(((e,t,l)=>`tableId == ${l} ? ${R(S(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+re} : `)))+re);_(p,p,e,Ye(1,0)+ce);const z=_(b,b,n+De,tt(i,je)+ce);_(Oe+p+ue,Oe+p+ue,Yt,Ye(1,9)+qt,At(Wt(p)+Ht+a,Wt(p)+pe),Bt(p),Xt,At(nl,`tables: ${a})`+Fe,_t),dl),_($e+p+ue,$e+p+ue,ue,Ye(1,12),l,l,l,ol,dl);const B=c(g+xe,Et("tableId?: TId","rowId: Id","cellId?: CId",M+ye+L,Ft),at(se+g),`<TId extends ${n}, CId extends ${d}<TId>>`),F=c(C+xe,Et("tableId?: TId","rowId: Id",M+ye+L,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${B}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,al,Ft),at(se+C),`<TId extends ${n}>`),U=c(i+xe,Et("tableId?: TId",M+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),at(se+i),`<TId extends ${n}>`),H=c("Sorted"+i+xe,Et("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",M+ye+L,`rowComponent?: ComponentType<${F}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",al,Ft),at(se+"sorted "+i),`<TId extends ${n}>`),Q=c(p+xe,Et(M+ye+L,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${U}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,al,Ft),at(Xe(1,1)));s(1,j,Q,U,H,F,B),Z(p+sl,"{"+M+", tableComponents, getTableComponentProps"+ll+"}: "+Q,[oe+`(${z}(${M}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+N+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ut,"/>;","}), separator)"],Ye(1,13)+ce),P(((e,t,a)=>{const[n,o,d,r,I]=te(O,e);s(null,D,n,o,d,r,I),_(t+i,i,n,It(e)+ce,l,a),_(t+i+f,i+f,$,tt(g,"the whole of "+rt(e))+ce,l,a);const c=_(t+h,h,$,tt(C,rt(e))+ce,l,a),u=_(t+m,m,$,tt(C,rt(e),1)+ce,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,ct(e)+ce,rl,At(a,el)),_(t+f,f,I+De,tt(g,st(e))+ce,rl,At(a,el)),_(Oe+t+i+ue,Oe+i+ue,Yt,It(e,9)+qt,At(Wt(i)+Ht+o,Wt(i)+pe),At(a,Bt(i)),Xt,At(nl,`table: ${o})`+Fe,_t),dl),_($e+t+i+ue,$e+i+ue,ue,It(e,12),l,a,l,ol,dl),_(Oe+t+C+ue,Oe+C+ue,Yt,ct(e,9)+qt,At(rl,Wt(C)+Ht+r,Wt(C)+pe),At(a,el,Bt(C)),Xt,At(nl,`row: ${r})`+Fe,_t),dl),_("Add"+t+C+ue,"Add"+C+ue,Yt,ct(e,10)+qt,At(Wt(C)+Ht+r,Wt(C)+pe),At(a,Bt(C)),Xt,"then?: ("+At(rl+ve,"store: Store","row: "+r+")"+Fe,"then"+pe)+", reuseRowIds?: boolean",dl+", reuseRowIds"),_(Oe+t+Ve+C+ue,Oe+Ve+C+ue,Yt,ct(e,11)+qt,At(rl,Wt(Ve+C)+Ht+r,Wt(Ve+C)+pe),At(a,el,Bt(Ve+C)),Xt,At(nl,`partialRow: ${r})`+Fe,_t),dl),_($e+t+C+ue,$e+C+ue,ue,ct(e,12),rl,At(a,el),l,ol,dl);const p=Z(t+C+sl,"{rowId, "+M+", cellComponents, getCellComponentProps, customCellIds"+ll+`}: ${F}<'${e}'>`,[oe+`(${de}(customCellIds, `+a+`, rowId, ${M}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+J+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,tl,"cellId={cellId}",W,Ut,"/>;","})"+ll+", rowId)"],ct(e,13)+ce);Z(t+"Sorted"+i+sl,"{cellId, descending, offset, limit, ...props}: "+H+`<'${e}'>`,E+"(props, "+u+`(cellId, descending, offset, limit, props.${M}), ${a}, ${p});`,It(e,13)+", sorted"+ce),Z(t+i+sl,`props: ${U}<'${e}'>`,E+"(props, "+c+`(props.${M}), ${a}, ${p});`,It(e,13)+ce),S(e,((n,o,d,r,I)=>{const c="Map"+kt(o,1);s(0,D,c),s(1,D,c);const u=_(t+I+g,g,o+(G(d)?ve:l),ut(e,n)+ce,rl,At(a,el,r));_(Oe+t+I+g+ue,Oe+g+ue,Yt,ut(e,n,9)+qt,At(rl,Wt(g)+Ht+o+" | "+c,Wt(g)+pe),At(a,el,r,Bt(g)),Xt,At(nl,`cell: ${o} | ${c})`+Fe,_t),dl),_($e+t+I+g+ue,$e+g+ue,ue,ut(e,n,12),At(rl,"forceDel?: boolean"),At(a,el,r,"forceDel"),l,ol,dl),Z(t+I+g+sl,`{rowId, ${M}, debugIds}: `+B+`<'${e}', '${n}'>`,[oe+`('' + ${u}(rowId, `+M+`) ?? '', undefined, debugIds, ${r})`],ut(e,n,13)+ce)}))}));const q=R(P((e=>{var t,a;return null!=(a=null==(t=te(O,e))?void 0:t[4])?a:l}))," | ");_(p+I,p+I,Be,Ye(1,8)+" changes",Il(r),cl()),_(b+I,b+I,Be,dt(2,0,1),Il(w),cl()),_(i+I,i+I,Be,dt(3,0),Il(y,`tableId: ${n} | null`),cl("tableId")),_(i+f+I,i+f+I,Be,dt(14,3,1),Il(v,`tableId: ${n} | null`),cl("tableId")),_(h+I,h+I,Be,dt(4,3,1),Il(T,`tableId: ${n} | null`),cl("tableId")),_(m+I,m+I,Be,dt(13,3,1),Il(V,`tableId: ${n} | null`,"cellId: "+q+ve,"descending: boolean","offset: number","limit: number"+ve),cl("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Be,dt(5,3),Il(x,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(f+I,f+I,Be,dt(6,5,1),Il(k,`tableId: ${n} | null`,el+": IdOrNull"),cl("tableId",el)),_(g+I,g+I,Be,dt(7,5),Il(A,`tableId: ${n} | null`,el+": IdOrNull",`cellId: ${q} | null`),cl("tableId",el,"cellId"))}if(!Q(a)){const[e,t,a,n,o,r]=d;s(null,D,...d),s(1,D,L);const $=u("getDefaultValueComponent","valueId: Id",R(O(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+re);_(y,y,e,Ye(2,0)+ce);const i=_(v,v,a+De,tt(w,je)+ce);_(Oe+y+ue,Oe+y+ue,Yt,Ye(2,9)+qt,At(Wt(y)+Ht+t,Wt(y)+pe),Bt(y),Xt,At(nl,`values: ${t})`+Fe,_t),dl),_(Oe+Ve+y+ue,Oe+Ve+y+ue,Yt,Ye(2,11)+qt,At(Wt(Ve+y)+Ht+t,Wt(Ve+y)+pe),Bt(Ve+y),Xt,At(nl,`partialValues: ${t})`+Fe,_t),dl),_($e+y+ue,$e+y+ue,ue,Ye(2,12),l,l,l,ol,dl);const p=c(w+xe,Et("valueId?: VId",M+ye+L,Ft),at("a Value"),`<VId extends ${a}>`),b=c(y+xe,Et(M+ye+L,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,al,Ft),at(Xe(2,1)));s(1,j,b,p),Z(y+sl,"{"+M+", valueComponents, getValueComponentProps"+ll+"}: "+b,[oe+`(${i}(${M}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+$+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ut,"/>;","}), separator)"],Ye(2,13)+ce),O(((e,t,a,n,o)=>{const d="Map"+kt(t,1);s(0,D,d),s(1,D,d);const r=_(o+w,w,t,$t(e)+ce,l,n);_(Oe+o+w+ue,Oe+w+ue,Yt,$t(e,9)+qt,At(Wt(w)+Ht+t+" | "+d,Wt(w)+pe),At(n,Bt(w)),Xt,At(nl,`value: ${t} | ${d})`+Fe,_t),dl),_($e+o+w+ue,$e+w+ue,ue,$t(e,12),l,n,l,ol,dl),Z(o+w+sl,`{${M}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${r}(`+M+`) ?? '', undefined, debugIds, ${n})`],$t(e,13)+ce)})),_(y+I,y+I,Be,Ye(2,8)+" changes",Il(n),cl()),_(v+I,v+I,Be,dt(10,0,1),Il(o),cl()),_(w+I,w+I,Be,dt(11,0),Il(r,`valueId: ${a} | null`),cl("valueId"))}return Z(Re,`{${M}, ${M}ById, children}: `+K+" & {children: React.ReactNode}",["{",Qt,"return (","<Context."+Re,"value={useMemo(",`() => [${M} ?? contextValue[0], {...contextValue[1], ...${M}ById}],`,`[${M}, ${M}ById, contextValue],`,")}>","{children}",`</Context.${Re}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[r(...V(0),...x(),...H(0)),r(...V(1),...k(),...H(1))]},$l=(e,t,a)=>{if(Q(e)&&Q(t))return[l,l,l,l];const[n,o,d,r]=zt(e,t,a);return[n,o,...ul(e,t,a,d,r)]};var il=Object.defineProperty,pl=Object.defineProperties,bl=Object.getOwnPropertyDescriptors,Cl=Object.getOwnPropertySymbols,hl=Object.prototype.hasOwnProperty,ml=Object.prototype.propertyIsEnumerable,gl=(e,t,l)=>t in e?il(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,fl=(e,t)=>{for(var l in t||(t={}))hl.call(t,l)&&gl(e,l,t[l]);if(Cl)for(var l of Cl(t))ml.call(t,l)&&gl(e,l,t[l]);return e},wl=(e,t)=>pl(e,bl(t)),yl=(e,t,l)=>new Promise(((a,n)=>{var o=e=>{try{r(l.next(e))}catch(e){n(e)}},d=e=>{try{r(l.throw(e))}catch(e){n(e)}},r=e=>e.done?a(e.value):Promise.resolve(e.value).then(o,d);r((l=l.apply(e,t)).next())}));const vl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},Tl=jt((e=>{const t=()=>{const t=j(e.getTablesSchemaJson());return!Q(t)||T(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=ee();if(T(a,(t=>T(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=oe(n,a,(()=>[W(o),ee(),[0],0])),[r,s,[I]]=d,c=oe(s,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),ne(s,o,c),d[3]++,r==W(o)})))))return t[l]={},X(n,(([e,,[,n],o],d)=>{t[l][d]=fl({[r]:e},o==P(a)?{[s]:n}:{})})),1}))?t:{}},l=()=>{const t=j(e.getValuesSchemaJson());return Q(t)&&e.forEachValue(((e,l)=>{t[e]={[r]:W(l)}})),t},a=e=>$l(t(),l(),e),n=e=>yl(void 0,null,(function*(){const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(yield import("prettier")).format}catch(e){l=e=>e}return k(a(e),((e,a)=>Vt(l(e,wl(fl({},vl),{filepath:"_."+t[a]})))))}));return U({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let r=0,s=0;const I={};d(((e,l)=>{r++;let a=0;l((()=>a++)),s+=a,t&&(I[e]={rowCells:a})})),a+=r,n+=s,t&&(o[e]={tableRows:r,tableCells:s,rows:I})})),fl({totalTables:l,totalRows:a,totalCells:n,totalValues:P(e.getValueIds()),jsonLength:xt(e.getJson())},t?{detail:{tables:o}}:{})},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));export{Tl as createTools};
Binary file
@@ -0,0 +1 @@
1
+ import{useRowIds as e,useTableCellIds as l,useSortedRowIds as r,useValueIds as t,ValueView as o,ResultCellView as n,useResultRowIds as s,useResultTableCellIds as d,useResultSortedRowIds as a,CellView as u}from"./ui-react";import i from"react";const c=e=>typeof e,I=c(""),b=(e,l)=>e.map(l),f=e=>null==e,y=Object,C=(e=[])=>y.fromEntries(e),m=(e,l)=>b(y.entries(e),(([e,r])=>l(r,e))),{createContext:p,useContext:O}=i;p([]);const v=(e,...l)=>f(e)?{}:e(...l);var g=Object.defineProperty,k=Object.defineProperties,w=Object.getOwnPropertyDescriptors,h=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,T=(e,l,r)=>l in e?g(e,l,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[l]=r,j=(e,l)=>{for(var r in l||(l={}))q.call(l,r)&&T(e,r,l[r]);if(h)for(var r of h(l))Q.call(l,r)&&T(e,r,l[r]);return e},P=(e,l)=>k(e,w(l)),x=(e,l)=>{var r={};for(var t in e)q.call(e,t)&&l.indexOf(t)<0&&(r[t]=e[t]);if(null!=e&&h)for(var t of h(e))l.indexOf(t)<0&&Q.call(e,t)&&(r[t]=e[t]);return r};const{createElement:N,useCallback:V,useMemo:E,useState:H}=i,A=(e,l,r)=>{const t=V(e,l);return r?t:void 0},R=(e,l)=>f(e)||e[0]!=l?void 0:`sorted ${e[1]?"de":"a"}scending`,S=({cellId:e,sorting:l,label:r=(null!=e?e:""),onClick:t})=>N("th",{onClick:A((()=>null==t?void 0:t(e)),[t,e],!f(t)),className:R(l,e)},r),D=({className:e,headerRow:l,idColumn:r,customCells:t,storeTableIdOrQueriesQueryId:o,defaultCellView:n=u,rowIds:s,defaultCellIds:d,sorting:a,onHeaderThClick:i})=>{const f=E((()=>{const e=null!=t?t:d;return C(m(Array.isArray(e)?C(b(e,(e=>[e,e]))):e,((e,l)=>{return[l,j(j({},{label:l}),(r=e,c(r)==I?{label:e}:e))];var r})))}),[t,d]);return N("table",{className:e},!1===l?null:N("thead",null,N("tr",null,!1===r?null:N(S,{sorting:a,label:"Id",onClick:i}),m(f,(({label:e},l)=>N(S,{key:l,cellId:l,label:e,sorting:a,onClick:i}))))),N("tbody",null,b(s,(e=>N("tr",{key:e},!1===r?null:N("th",null,e),m(f,(({component:l=n,getComponentProps:r},t)=>N("td",{key:t},N(l,P(j(j({},v(r,e,t)),o),{rowId:e,cellId:t}))))))))))},M=r=>{var t=r,{tableId:o,store:n}=t,s=x(t,["tableId","store"]);return N(D,P(j({},s),{storeTableIdOrQueriesQueryId:E((()=>({store:n,tableId:o})),[n,o]),rowIds:e(o,n),defaultCellIds:l(o,n)}))},$=e=>{var t=e,{tableId:o,cellId:n,descending:s,offset:d,limit:a,store:u,sortOnClick:i}=t,c=x(t,["tableId","cellId","descending","offset","limit","store","sortOnClick"]);const[I,b]=H([n,!!s]),f=A((e=>b([e,e==I[0]&&!I[1]])),[I],i);return N(D,P(j({},c),{storeTableIdOrQueriesQueryId:E((()=>({store:u,tableId:o})),[u,o]),rowIds:r(o,...I,d,a,u),defaultCellIds:l(o,u),sorting:I,onHeaderThClick:f}))},z=({store:e,valueComponent:l=o,getValueComponentProps:r,className:n,headerRow:s,idColumn:d})=>N("table",{className:n},!1===s?null:N("thead",null,N("tr",null,!1===d?null:N("th",null,"Id"),N("th",null,"Value"))),N("tbody",null,b(t(e),(t=>N("tr",{key:t},!1===d?null:N("th",null,t),N("td",null,N(l,P(j({},v(r,t)),{valueId:t,store:e})))))))),B=e=>{var l=e,{queryId:r,queries:t}=l,o=x(l,["queryId","queries"]);return N(D,P(j({},o),{storeTableIdOrQueriesQueryId:E((()=>({queries:t,queryId:r})),[t,r]),defaultCellView:n,rowIds:s(r,t),defaultCellIds:d(r,t)}))},F=e=>{var l=e,{queryId:r,cellId:t,descending:o,offset:s,limit:u,queries:i,sortOnClick:c}=l,I=x(l,["queryId","cellId","descending","offset","limit","queries","sortOnClick"]);const[b,f]=H([t,!!o]),y=A((e=>f([e,e==b[0]&&!b[1]])),[b],c);return N(D,P(j({},I),{storeTableIdOrQueriesQueryId:E((()=>({queries:i,queryId:r})),[i,r]),defaultCellView:n,rowIds:a(r,...b,s,u,i),defaultCellIds:d(r,i),sorting:b,onHeaderThClick:y}))};export{F as ResultSortedTableInHtmlTable,B as ResultTableInHtmlTable,$ as SortedTableInHtmlTable,M as TableInHtmlTable,z as ValuesInHtmlTable};
Binary file
@@ -1 +1 @@
1
- import e,{useContext as o}from"react";const t=e=>typeof e,r="",d=t(r),n="Ids",l="Table",s=l+"s",u=l+n,i="Row",a=i+n,c="Sorted"+i+n,I="Cell",p=I+n,v="Value",b=v+"s",g=v+n,w=(e,o)=>e.map(o),m=e=>null==e,R=(e,o,t)=>m(e)?null==t?void 0:t():o(e),C=e=>t(e)==d,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:C(e)?((e,o)=>R(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||C(e)?t:e},x=e=>P(e,0),S=e=>P(e,2),O=e=>P(e,4),T=e=>P(e,6),B=e=>P(e,8),L=e=>P(e,10),j=e=>q(e,0),M=e=>q(e,2),E=e=>q(e,4),V=e=>q(e,6),A=e=>q(e,8),D=e=>q(e,10),{useCallback:F,useEffect:z,useMemo:G,useRef:H,useState:J}=e,K=(e,o,t=[])=>{const r=G((()=>o(e)),[e,...t]);return z((()=>()=>r.destroy()),[r]),r},N=(e,o,t,r=[],d)=>{const[,n]=J(),l=F((()=>{var d,n;return null!=(n=null==(d=null==o?void 0:o["get"+e])?void 0:d.call(o,...r))?n:t}),[o,...r]),[s]=J(l),u=H(s);return G((()=>u.current=l()),[l]),Q(e,o,((...e)=>{u.current=m(d)?l():e[d],n([])}),[],r),u.current},Q=(e,o,t,r=[],d=[],...n)=>z((()=>{var r;const l=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...d,t,...n);return()=>null==o?void 0:o.delListener(l)}),[o,...d,...r,...n]),U=(e,o,t,r=[],d=y,n=[],...l)=>{const s=j(e);return F((e=>R(s,(r=>R(t(e,r),(e=>d(r["set"+o](...l,e),e)))))),[s,o,...r,...n,...l])},W=(e,o,t=y,r=[],...d)=>{const n=j(e);return F((()=>t(null==n?void 0:n["del"+o](...d))),[n,o,...r,...d])},X=(e,o,t)=>{const r=D(e);return F((()=>null==r?void 0:r[o](t)),[r,o,t])},Y=(e,o=[])=>G(e,o),Z=e=>N(s,j(e),{}),$=e=>N(u,j(e),[],[]),_=(e,o)=>N(l,j(o),{},[e]),ee=(e,o)=>N(l+p,j(o),[],[e]),oe=(e,o)=>N(a,j(o),[],[e]),te=(e,o,t,r=0,d,n)=>N(c,j(n),[],[e,o,t,r,d],6),re=(e,o,t)=>N(i,j(t),{},[e,o]),de=(e,o,t)=>N(p,j(t),[],[e,o]),ne=(e,o,t,r)=>N(I,j(r),void 0,[e,o,t],4),le=e=>N(b,j(e),{}),se=e=>N(g,j(e),[],[]),ue=(e,o)=>N(v,j(o),void 0,[e]),ie=(e,o,t,r,d)=>U(t,s,e,o,r,d),ae=(e,o,t,r,d,n)=>U(r,l,o,t,d,n,e),ce=(e,o,t,r,d,n,l)=>U(d,i,t,r,n,l,e,o),Ie=(e,o,t=[],r,d=y,n=[],l=!0)=>{const s=j(r);return F((t=>R(s,(r=>R(o(t,r),(o=>d(r.addRow(e,o,l),r,o)))))),[s,e,...t,...n,l])},pe=(e,o,t,r,d,n,l)=>U(d,"PartialRow",t,r,n,l,e,o),ve=(e,o,t,r,d,n,l,s)=>U(n,I,r,d,l,s,e,o,t),be=(e,o,t,r,d)=>U(t,b,e,o,r,d),ge=(e,o,t,r,d)=>U(t,"PartialValues",e,o,r,d),we=(e,o,t,r,d,n)=>U(r,v,o,t,d,n,e),me=(e,o,t)=>W(e,s,o,t),Re=(e,o,t,r)=>W(o,l,t,r,e),Ce=(e,o,t,r,d)=>W(t,i,r,d,e,o),ye=(e,o,t,r,d,n,l)=>W(d,I,n,l,e,o,t,r),ke=(e,o,t)=>W(e,b,o,t),he=(e,o,t,r)=>W(o,v,t,r,e),fe=(e,o,t,r)=>Q(s,j(r),e,o,[],t),Pe=(e,o,t,r)=>Q(u,j(r),e,o,[],t),qe=(e,o,t,r,d)=>Q(l,j(d),o,t,[e],r),xe=(e,o,t,r,d)=>Q(l+p,j(d),o,t,[e],r),Se=(e,o,t,r,d)=>Q(a,j(d),o,t,[e],r),Oe=(e,o,t,r,d,n,l,s,u)=>Q(c,j(u),n,l,[e,o,t,r,d],s),Te=(e,o,t,r,d,n)=>Q(i,j(n),t,r,[e,o],d),Be=(e,o,t,r,d,n)=>Q(p,j(n),t,r,[e,o],d),Le=(e,o,t,r,d,n,l)=>Q(I,j(l),r,d,[e,o,t],n),je=(e,o,t,r)=>Q(b,j(r),e,o,[],t),Me=(e,o,t,r)=>Q(g,j(r),e,o,[],t),Ee=(e,o,t,r,d)=>Q(v,j(d),o,t,[e],r),Ve=(e,o,t)=>K(e,o,t),Ae=(e,o)=>N("Metric",M(o),void 0,[e]),De=(e,o,t,r)=>Q("Metric",M(r),o,t,[e]),Fe=(e,o,t)=>K(e,o,t),ze=(e,o)=>N("SliceIds",E(o),[],[e]),Ge=(e,o,t)=>N("SliceRowIds",E(t),[],[e,o]),He=(e,o,t,r)=>Q("SliceIds",E(r),o,t,[e]),Je=(e,o,t,r,d)=>Q("SliceRowIds",E(d),t,r,[e,o]),Ke=(e,o,t)=>K(e,o,t),Ne=(e,o,t)=>N("RemoteRowId",V(t),void 0,[e,o]),Qe=(e,o,t)=>N("LocalRowIds",V(t),[],[e,o]),Ue=(e,o,t)=>N("LinkedRowIds",V(t),[],[e,o]),We=(e,o,t,r,d)=>Q("RemoteRowId",V(d),t,r,[e,o]),Xe=(e,o,t,r,d)=>Q("LocalRowIds",V(d),t,r,[e,o]),Ye=(e,o,t,r,d)=>Q("LinkedRowIds",V(d),t,r,[e,o]),Ze=(e,o,t)=>K(e,o,t),$e=(e,o)=>N("ResultTable",A(o),{},[e]),_e=(e,o)=>N("ResultRowIds",A(o),[],[e]),eo=(e,o,t,r=0,d,n)=>N("ResultSortedRowIds",A(n),[],[e,o,t,r,d],6),oo=(e,o,t)=>N("ResultRow",A(t),{},[e,o]),to=(e,o,t)=>N("ResultCellIds",A(t),[],[e,o]),ro=(e,o,t,r)=>N("ResultCell",A(r),void 0,[e,o,t]),no=(e,o,t,r)=>Q("ResultTable",A(r),o,t,[e]),lo=(e,o,t,r)=>Q("ResultRowIds",A(r),o,t,[e]),so=(e,o,t,r,d,n,l,s)=>Q("ResultSortedRowIds",A(s),n,l,[e,o,t,r,d]),uo=(e,o,t,r,d)=>Q("ResultRow",A(d),t,r,[e,o]),io=(e,o,t,r,d)=>Q("ResultCellIds",A(d),t,r,[e,o]),ao=(e,o,t,r,d,n)=>Q("ResultCell",A(n),r,d,[e,o,t]),co=(e,o,t)=>K(e,o,t),Io=e=>N("CheckpointIds",D(e),[[],void 0,[]]),po=(e,o)=>N("Checkpoint",D(o),void 0,[e]),vo=(e=y,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>{const d=e(o);r(t.addCheckpoint(d),t,d)}))),[n,...o,...d])},bo=e=>X(e,"goBackward"),go=e=>X(e,"goForward"),wo=(e,o=[],t,r=y,d=[])=>{const n=D(t);return F((o=>R(n,(t=>R(e(o),(e=>r(t.goTo(e),e)))))),[n,...o,...d])},mo=e=>{var o;const t=D(e),[d,n]=Io(t);return[(l=d,!(0==(e=>e.length)(l))),bo(t),n,null!=(o=R(n,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var l},Ro=e=>{var o;const t=D(e),[,,[d]]=Io(t);return[!m(d),go(t),d,null!=(o=R(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},Co=(e,o,t)=>Q("CheckpointIds",D(t),e,o),yo=(e,o,t,r)=>Q("Checkpoint",D(r),o,t,[e]),ko=(e,o,t=[],r,d=[])=>{const[,n]=J(),l=G((()=>o(e)),[e,...t]);return z((()=>{var e;return e=function*(){yield null==r?void 0:r(l),n(1)},new Promise(((o,t)=>{var r=o=>{try{n(e.next(o))}catch(e){t(e)}},d=o=>{try{n(e.throw(o))}catch(e){t(e)}},n=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,d);n((e=e.apply(void 0,null)).next())})),()=>{l.destroy()}}),[l,...d]),l};var ho=Object.defineProperty,fo=Object.defineProperties,Po=Object.getOwnPropertyDescriptors,qo=Object.getOwnPropertySymbols,xo=Object.prototype.hasOwnProperty,So=Object.prototype.propertyIsEnumerable,Oo=(e,o,t)=>o in e?ho(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,To=(e,o)=>{for(var t in o||(o={}))xo.call(o,t)&&Oo(e,t,o[t]);if(qo)for(var t of qo(o))So.call(o,t)&&Oo(e,t,o[t]);return e},Bo=(e,o)=>fo(e,Po(o)),Lo=(e,o)=>{var t={};for(var r in e)xo.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&qo)for(var r of qo(e))o.indexOf(r)<0&&So.call(e,r)&&(t[r]=e[r]);return t};const{createElement:jo,useMemo:Mo}=e,Eo=({tableId:e,store:o,rowComponent:t=Ko,getRowComponentProps:r,separator:d,debugIds:n},l)=>Ho(w(l,(d=>jo(t,Bo(To({},zo(r,d)),{key:d,tableId:e,rowId:d,store:o,debugIds:n})))),d,n,e),Vo=({queryId:e,queries:o,resultRowComponent:t=rt,getResultRowComponentProps:r,separator:d,debugIds:n},l)=>Ho(w(l,(d=>jo(t,Bo(To({},zo(r,d)),{key:d,queryId:e,rowId:d,queries:o,debugIds:n})))),d,n,e),Ao=e=>{const o=V(e);return[o,null==o?void 0:o.getStore()]},Do=({relationshipId:e,relationships:o,rowComponent:t=Ko,getRowComponentProps:r,separator:d,debugIds:n},l,s)=>{const[u,i]=Ao(o),a=null==u?void 0:u.getLocalTableId(e),c=l(e,s,u);return Ho(w(c,(e=>jo(t,Bo(To({},zo(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:n})))),d,n,s)},Fo=e=>({checkpoints:o,checkpointComponent:t=lt,getCheckpointComponentProps:r,separator:d,debugIds:n})=>{const l=D(o);return Ho(w(e(Io(l)),(e=>jo(t,Bo(To({},zo(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:n})))),d)},zo=(e,o)=>m(e)?{}:e(o),Go=({store:e,storesById:t,metrics:r,metricsById:d,indexes:n,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=o(f);return jo(f.Provider,{value:Mo((()=>[null!=e?e:v[0],To(To({},v[1]),t),null!=r?r:v[2],To(To({},v[3]),d),null!=n?n:v[4],To(To({},v[5]),l),null!=s?s:v[6],To(To({},v[7]),u),null!=i?i:v[8],To(To({},v[9]),a),null!=c?c:v[10],To(To({},v[11]),I)]),[e,t,r,d,n,l,s,u,i,a,c,I,v])},p)},Ho=(e,o,t,r)=>{const d=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",d,"}"]:d},Jo=({tableId:e,rowId:o,cellId:t,store:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=ne(e,o,t,d))?l:r),void 0,n,t)},Ko=({tableId:e,rowId:o,store:t,cellComponent:r=Jo,getCellComponentProps:d,separator:n,debugIds:l})=>Ho(w(de(e,o,t),(n=>jo(r,Bo(To({},zo(d,n)),{key:n,tableId:e,rowId:o,cellId:n,store:t,debugIds:l})))),n,l,o),No=e=>Eo(e,oe(e.tableId,e.store)),Qo=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=Lo(o,["cellId","descending","offset","limit"]);return Eo(l,te(l.tableId,t,r,d,n,l.store))},Uo=({store:e,tableComponent:o=No,getTableComponentProps:t,separator:r,debugIds:d})=>Ho(w($(e),(r=>jo(o,Bo(To({},zo(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Wo=({valueId:e,store:o,debugIds:t})=>{var d;return Ho(r+(null!=(d=ue(e,o))?d:r),void 0,t,e)},Xo=({store:e,valueComponent:o=Wo,getValueComponentProps:t,separator:r,debugIds:d})=>Ho(w(se(e),(r=>jo(o,Bo(To({},zo(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Yo=({metricId:e,metrics:o,debugIds:t})=>{var d;return Ho(null!=(d=Ae(e,o))?d:r,void 0,t,e)},Zo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Ko,getRowComponentProps:d,separator:n,debugIds:l})=>{const s=E(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=Ge(e,o,s);return Ho(w(a,(e=>jo(r,Bo(To({},zo(d,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),n,l,o)},$o=({indexId:e,indexes:o,sliceComponent:t=Zo,getSliceComponentProps:r,separator:d,debugIds:n})=>Ho(w(ze(e,o),(d=>jo(t,Bo(To({},zo(r,d)),{key:d,indexId:e,sliceId:d,indexes:o,debugIds:n})))),d,n,e),_o=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Ko,getRowComponentProps:d,debugIds:n})=>{const[l,s]=Ao(t),u=null==l?void 0:l.getRemoteTableId(e),i=Ne(e,o,l);return Ho(m(u)||m(i)?null:jo(r,Bo(To({},zo(d,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:n})),void 0,n,o)},et=e=>Do(e,Qe,e.remoteRowId),ot=e=>Do(e,Ue,e.firstRowId),tt=({queryId:e,rowId:o,cellId:t,queries:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=ro(e,o,t,d))?l:r),void 0,n,t)},rt=({queryId:e,rowId:o,queries:t,resultCellComponent:r=tt,getResultCellComponentProps:d,separator:n,debugIds:l})=>Ho(w(to(e,o,t),(n=>jo(r,Bo(To({},zo(d,n)),{key:n,queryId:e,rowId:o,cellId:n,queries:t,debugIds:l})))),n,l,o),dt=e=>Vo(e,_e(e.queryId,e.queries)),nt=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=Lo(o,["cellId","descending","offset","limit"]);return Vo(l,eo(l.queryId,t,r,d,n,l.queries))},lt=({checkpoints:e,checkpointId:o,debugIds:t})=>{var d;return Ho(null!=(d=po(o,e))?d:r,void 0,t,o)},st=Fo((e=>e[0])),ut=Fo((e=>m(e[1])?[]:[e[1]])),it=Fo((e=>e[2]));export{st as BackwardCheckpointsView,Jo as CellView,lt as CheckpointView,ut as CurrentCheckpointView,it as ForwardCheckpointsView,$o as IndexView,ot as LinkedRowsView,et as LocalRowsView,Yo as MetricView,Go as Provider,_o as RemoteRowView,tt as ResultCellView,rt as ResultRowView,nt as ResultSortedTableView,dt as ResultTableView,Ko as RowView,Zo as SliceView,Qo as SortedTableView,No as TableView,Uo as TablesView,Wo as ValueView,Xo as ValuesView,Eo as tableView,Ie as useAddRowCallback,ne as useCell,de as useCellIds,Be as useCellIdsListener,Le as useCellListener,po as useCheckpoint,Io as useCheckpointIds,Co as useCheckpointIdsListener,yo as useCheckpointListener,L as useCheckpoints,co as useCreateCheckpoints,Fe as useCreateIndexes,Ve as useCreateMetrics,ko as useCreatePersister,Ze as useCreateQueries,Ke as useCreateRelationships,Y as useCreateStore,ye as useDelCellCallback,Ce as useDelRowCallback,Re as useDelTableCallback,me as useDelTablesCallback,he as useDelValueCallback,ke as useDelValuesCallback,bo as useGoBackwardCallback,go as useGoForwardCallback,wo as useGoToCallback,O as useIndexes,Ue as useLinkedRowIds,Ye as useLinkedRowIdsListener,Qe as useLocalRowIds,Xe as useLocalRowIdsListener,Ae as useMetric,De as useMetricListener,S as useMetrics,B as useQueries,Ro as useRedoInformation,T as useRelationships,Ne as useRemoteRowId,We as useRemoteRowIdListener,ro as useResultCell,to as useResultCellIds,io as useResultCellIdsListener,ao as useResultCellListener,oo as useResultRow,_e as useResultRowIds,lo as useResultRowIdsListener,uo as useResultRowListener,eo as useResultSortedRowIds,so as useResultSortedRowIdsListener,$e as useResultTable,no as useResultTableListener,re as useRow,oe as useRowIds,Se as useRowIdsListener,Te as useRowListener,ve as useSetCellCallback,vo as useSetCheckpointCallback,pe as useSetPartialRowCallback,ge as useSetPartialValuesCallback,ce as useSetRowCallback,ae as useSetTableCallback,ie as useSetTablesCallback,we as useSetValueCallback,be as useSetValuesCallback,ze as useSliceIds,He as useSliceIdsListener,Ge as useSliceRowIds,Je as useSliceRowIdsListener,te as useSortedRowIds,Oe as useSortedRowIdsListener,x as useStore,_ as useTable,ee as useTableCellIds,xe as useTableCellIdsListener,$ as useTableIds,Pe as useTableIdsListener,qe as useTableListener,Z as useTables,fe as useTablesListener,mo as useUndoInformation,ue as useValue,se as useValueIds,Me as useValueIdsListener,Ee as useValueListener,le as useValues,je as useValuesListener};
1
+ import e,{useContext as o}from"react";const t=e=>typeof e,r="",l=t(r),d="Ids",n="Table",s=n+"s",u=n+d,i="Row",a=i+d,I="Sorted"+i+d,c="Cell",p=c+d,b="Value",v=b+"s",g=b+d,w=(e,o)=>e.map(o),m=e=>null==e,C=(e,o,t)=>m(e)?null==t?void 0:t():o(e),R=e=>t(e)==l,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:R(e)?((e,o)=>C(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||R(e)?t:e},x=(e,...o)=>m(e)?{}:e(...o),S=e=>P(e,0),O=e=>P(e,2),T=e=>P(e,4),B=e=>P(e,6),L=e=>P(e,8),j=e=>P(e,10),M=e=>q(e,0),E=e=>q(e,2),V=e=>q(e,4),A=e=>q(e,6),D=e=>q(e,8),F=e=>q(e,10),{useCallback:z,useEffect:G,useMemo:H,useRef:J,useState:K}=e,N=(e,o,t=[])=>{const r=H((()=>o(e)),[e,...t]);return G((()=>()=>r.destroy()),[r]),r},Q=(e,o,t,r=[],l)=>{const[,d]=K(),n=z((()=>{var l,d;return null!=(d=null==(l=null==o?void 0:o["get"+e])?void 0:l.call(o,...r))?d:t}),[o,...r]),[s]=K(n),u=J(s);return H((()=>u.current=n()),[n]),U(e,o,((...e)=>{u.current=m(l)?n():e[l],d([])}),[],r),u.current},U=(e,o,t,r=[],l=[],...d)=>G((()=>{var r;const n=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...l,t,...d);return()=>null==o?void 0:o.delListener(n)}),[o,...l,...r,...d]),W=(e,o,t,r=[],l=y,d=[],...n)=>{const s=M(e);return z((e=>C(s,(r=>C(t(e,r),(e=>l(r["set"+o](...n,e),e)))))),[s,o,...r,...d,...n])},X=(e,o,t=y,r=[],...l)=>{const d=M(e);return z((()=>t(null==d?void 0:d["del"+o](...l))),[d,o,...r,...l])},Y=(e,o,t)=>{const r=F(e);return z((()=>null==r?void 0:r[o](t)),[r,o,t])},Z=(e,o=[])=>H(e,o),$=e=>Q(s,M(e),{}),_=e=>Q(u,M(e),[],[]),ee=(e,o)=>Q(n,M(o),{},[e]),oe=(e,o)=>Q(n+p,M(o),[],[e]),te=(e,o)=>Q(a,M(o),[],[e]),re=(e,o,t,r=0,l,d)=>Q(I,M(d),[],[e,o,t,r,l],6),le=(e,o,t)=>Q(i,M(t),{},[e,o]),de=(e,o,t)=>Q(p,M(t),[],[e,o]),ne=(e,o,t,r)=>Q(c,M(r),void 0,[e,o,t],4),se=e=>Q(v,M(e),{}),ue=e=>Q(g,M(e),[],[]),ie=(e,o)=>Q(b,M(o),void 0,[e]),ae=(e,o,t,r,l)=>W(t,s,e,o,r,l),Ie=(e,o,t,r,l,d)=>W(r,n,o,t,l,d,e),ce=(e,o,t,r,l,d,n)=>W(l,i,t,r,d,n,e,o),pe=(e,o,t=[],r,l=y,d=[],n=!0)=>{const s=M(r);return z((t=>C(s,(r=>C(o(t,r),(o=>l(r.addRow(e,o,n),r,o)))))),[s,e,...t,...d,n])},be=(e,o,t,r,l,d,n)=>W(l,"PartialRow",t,r,d,n,e,o),ve=(e,o,t,r,l,d,n,s)=>W(d,c,r,l,n,s,e,o,t),ge=(e,o,t,r,l)=>W(t,v,e,o,r,l),we=(e,o,t,r,l)=>W(t,"PartialValues",e,o,r,l),me=(e,o,t,r,l,d)=>W(r,b,o,t,l,d,e),Ce=(e,o,t)=>X(e,s,o,t),Re=(e,o,t,r)=>X(o,n,t,r,e),ye=(e,o,t,r,l)=>X(t,i,r,l,e,o),ke=(e,o,t,r,l,d,n)=>X(l,c,d,n,e,o,t,r),he=(e,o,t)=>X(e,v,o,t),fe=(e,o,t,r)=>X(o,b,t,r,e),Pe=(e,o,t,r)=>U(s,M(r),e,o,[],t),qe=(e,o,t,r)=>U(u,M(r),e,o,[],t),xe=(e,o,t,r,l)=>U(n,M(l),o,t,[e],r),Se=(e,o,t,r,l)=>U(n+p,M(l),o,t,[e],r),Oe=(e,o,t,r,l)=>U(a,M(l),o,t,[e],r),Te=(e,o,t,r,l,d,n,s,u)=>U(I,M(u),d,n,[e,o,t,r,l],s),Be=(e,o,t,r,l,d)=>U(i,M(d),t,r,[e,o],l),Le=(e,o,t,r,l,d)=>U(p,M(d),t,r,[e,o],l),je=(e,o,t,r,l,d,n)=>U(c,M(n),r,l,[e,o,t],d),Me=(e,o,t,r)=>U(v,M(r),e,o,[],t),Ee=(e,o,t,r)=>U(g,M(r),e,o,[],t),Ve=(e,o,t,r,l)=>U(b,M(l),o,t,[e],r),Ae=(e,o,t)=>N(e,o,t),De=(e,o)=>Q("Metric",E(o),void 0,[e]),Fe=(e,o,t,r)=>U("Metric",E(r),o,t,[e]),ze=(e,o,t)=>N(e,o,t),Ge=(e,o)=>Q("SliceIds",V(o),[],[e]),He=(e,o,t)=>Q("SliceRowIds",V(t),[],[e,o]),Je=(e,o,t,r)=>U("SliceIds",V(r),o,t,[e]),Ke=(e,o,t,r,l)=>U("SliceRowIds",V(l),t,r,[e,o]),Ne=(e,o,t)=>N(e,o,t),Qe=(e,o,t)=>Q("RemoteRowId",A(t),void 0,[e,o]),Ue=(e,o,t)=>Q("LocalRowIds",A(t),[],[e,o]),We=(e,o,t)=>Q("LinkedRowIds",A(t),[],[e,o]),Xe=(e,o,t,r,l)=>U("RemoteRowId",A(l),t,r,[e,o]),Ye=(e,o,t,r,l)=>U("LocalRowIds",A(l),t,r,[e,o]),Ze=(e,o,t,r,l)=>U("LinkedRowIds",A(l),t,r,[e,o]),$e=(e,o,t)=>N(e,o,t),_e=(e,o)=>Q("ResultTable",D(o),{},[e]),eo=(e,o)=>Q("ResultRowIds",D(o),[],[e]),oo=(e,o)=>Q("ResultTableCellIds",D(o),[],[e]),to=(e,o,t,r=0,l,d)=>Q("ResultSortedRowIds",D(d),[],[e,o,t,r,l],6),ro=(e,o,t)=>Q("ResultRow",D(t),{},[e,o]),lo=(e,o,t)=>Q("ResultCellIds",D(t),[],[e,o]),no=(e,o,t,r)=>Q("ResultCell",D(r),void 0,[e,o,t]),so=(e,o,t,r)=>U("ResultTable",D(r),o,t,[e]),uo=(e,o,t,r)=>U("ResultTableCellIds",D(r),o,t,[e]),io=(e,o,t,r)=>U("ResultRowIds",D(r),o,t,[e]),ao=(e,o,t,r,l,d,n,s)=>U("ResultSortedRowIds",D(s),d,n,[e,o,t,r,l]),Io=(e,o,t,r,l)=>U("ResultRow",D(l),t,r,[e,o]),co=(e,o,t,r,l)=>U("ResultCellIds",D(l),t,r,[e,o]),po=(e,o,t,r,l,d)=>U("ResultCell",D(d),r,l,[e,o,t]),bo=(e,o,t)=>N(e,o,t),vo=e=>Q("CheckpointIds",F(e),[[],void 0,[]]),go=(e,o)=>Q("Checkpoint",F(o),void 0,[e]),wo=(e=y,o=[],t,r=y,l=[])=>{const d=F(t);return z((o=>C(d,(t=>{const l=e(o);r(t.addCheckpoint(l),t,l)}))),[d,...o,...l])},mo=e=>Y(e,"goBackward"),Co=e=>Y(e,"goForward"),Ro=(e,o=[],t,r=y,l=[])=>{const d=F(t);return z((o=>C(d,(t=>C(e(o),(e=>r(t.goTo(e),e)))))),[d,...o,...l])},yo=e=>{var o;const t=F(e),[l,d]=vo(t);return[(n=l,!(0==(e=>e.length)(n))),mo(t),d,null!=(o=C(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var n},ko=e=>{var o;const t=F(e),[,,[l]]=vo(t);return[!m(l),Co(t),l,null!=(o=C(l,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},ho=(e,o,t)=>U("CheckpointIds",F(t),e,o),fo=(e,o,t,r)=>U("Checkpoint",F(r),o,t,[e]),Po=(e,o,t=[],r,l=[])=>{const[,d]=K(),n=H((()=>o(e)),[e,...t]);return G((()=>{var e;return e=function*(){yield null==r?void 0:r(n),d(1)},new Promise(((o,t)=>{var r=o=>{try{d(e.next(o))}catch(e){t(e)}},l=o=>{try{d(e.throw(o))}catch(e){t(e)}},d=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);d((e=e.apply(void 0,null)).next())})),()=>{n.destroy()}}),[n,...l]),n};var qo=Object.defineProperty,xo=Object.defineProperties,So=Object.getOwnPropertyDescriptors,Oo=Object.getOwnPropertySymbols,To=Object.prototype.hasOwnProperty,Bo=Object.prototype.propertyIsEnumerable,Lo=(e,o,t)=>o in e?qo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,jo=(e,o)=>{for(var t in o||(o={}))To.call(o,t)&&Lo(e,t,o[t]);if(Oo)for(var t of Oo(o))Bo.call(o,t)&&Lo(e,t,o[t]);return e},Mo=(e,o)=>xo(e,So(o)),Eo=(e,o)=>{var t={};for(var r in e)To.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Oo)for(var r of Oo(e))o.indexOf(r)<0&&Bo.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Vo,useMemo:Ao}=e,Do=({tableId:e,store:o,rowComponent:t=Qo,getRowComponentProps:r,customCellIds:l,separator:d,debugIds:n},s)=>Ko(w(s,(d=>Vo(t,Mo(jo({},x(r,d)),{key:d,tableId:e,rowId:d,customCellIds:l,store:o,debugIds:n})))),d,n,e),Fo=({queryId:e,queries:o,resultRowComponent:t=dt,getResultRowComponentProps:r,separator:l,debugIds:d},n)=>Ko(w(n,(l=>Vo(t,Mo(jo({},x(r,l)),{key:l,queryId:e,rowId:l,queries:o,debugIds:d})))),l,d,e),zo=e=>{const o=A(e);return[o,null==o?void 0:o.getStore()]},Go=({relationshipId:e,relationships:o,rowComponent:t=Qo,getRowComponentProps:r,separator:l,debugIds:d},n,s)=>{const[u,i]=zo(o),a=null==u?void 0:u.getLocalTableId(e),I=n(e,s,u);return Ko(w(I,(e=>Vo(t,Mo(jo({},x(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:d})))),l,d,s)},Ho=e=>({checkpoints:o,checkpointComponent:t=ut,getCheckpointComponentProps:r,separator:l,debugIds:d})=>{const n=F(o);return Ko(w(e(vo(n)),(e=>Vo(t,Mo(jo({},x(r,e)),{key:e,checkpoints:n,checkpointId:e,debugIds:d})))),l)},Jo=({store:e,storesById:t,metrics:r,metricsById:l,indexes:d,indexesById:n,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:p})=>{const b=o(f);return Vo(f.Provider,{value:Ao((()=>[null!=e?e:b[0],jo(jo({},b[1]),t),null!=r?r:b[2],jo(jo({},b[3]),l),null!=d?d:b[4],jo(jo({},b[5]),n),null!=s?s:b[6],jo(jo({},b[7]),u),null!=i?i:b[8],jo(jo({},b[9]),a),null!=I?I:b[10],jo(jo({},b[11]),c)]),[e,t,r,l,d,n,s,u,i,a,I,c,b])},p)},Ko=(e,o,t,r)=>{const l=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",l,"}"]:l},No=({tableId:e,rowId:o,cellId:t,store:l,debugIds:d})=>{var n;return Ko(r+(null!=(n=ne(e,o,t,l))?n:r),void 0,d,t)},Qo=({tableId:e,rowId:o,store:t,cellComponent:r=No,getCellComponentProps:l,customCellIds:d,separator:n,debugIds:s})=>Ko(w(((e,o,t,r)=>{const l=de(o,t,r);return null!=e?e:l})(d,e,o,t),(d=>Vo(r,Mo(jo({},x(l,d)),{key:d,tableId:e,rowId:o,cellId:d,store:t,debugIds:s})))),n,s,o),Uo=e=>Do(e,te(e.tableId,e.store)),Wo=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,n=Eo(o,["cellId","descending","offset","limit"]);return Do(n,re(n.tableId,t,r,l,d,n.store))},Xo=({store:e,tableComponent:o=Uo,getTableComponentProps:t,separator:r,debugIds:l})=>Ko(w(_(e),(r=>Vo(o,Mo(jo({},x(t,r)),{key:r,tableId:r,store:e,debugIds:l})))),r),Yo=({valueId:e,store:o,debugIds:t})=>{var l;return Ko(r+(null!=(l=ie(e,o))?l:r),void 0,t,e)},Zo=({store:e,valueComponent:o=Yo,getValueComponentProps:t,separator:r,debugIds:l})=>Ko(w(ue(e),(r=>Vo(o,Mo(jo({},x(t,r)),{key:r,valueId:r,store:e,debugIds:l})))),r),$o=({metricId:e,metrics:o,debugIds:t})=>{var l;return Ko(null!=(l=De(e,o))?l:r,void 0,t,e)},_o=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Qo,getRowComponentProps:l,separator:d,debugIds:n})=>{const s=V(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=He(e,o,s);return Ko(w(a,(e=>Vo(r,Mo(jo({},x(l,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:n})))),d,n,o)},et=({indexId:e,indexes:o,sliceComponent:t=_o,getSliceComponentProps:r,separator:l,debugIds:d})=>Ko(w(Ge(e,o),(l=>Vo(t,Mo(jo({},x(r,l)),{key:l,indexId:e,sliceId:l,indexes:o,debugIds:d})))),l,d,e),ot=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Qo,getRowComponentProps:l,debugIds:d})=>{const[n,s]=zo(t),u=null==n?void 0:n.getRemoteTableId(e),i=Qe(e,o,n);return Ko(m(u)||m(i)?null:Vo(r,Mo(jo({},x(l,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:d})),void 0,d,o)},tt=e=>Go(e,Ue,e.remoteRowId),rt=e=>Go(e,We,e.firstRowId),lt=({queryId:e,rowId:o,cellId:t,queries:l,debugIds:d})=>{var n;return Ko(r+(null!=(n=no(e,o,t,l))?n:r),void 0,d,t)},dt=({queryId:e,rowId:o,queries:t,resultCellComponent:r=lt,getResultCellComponentProps:l,separator:d,debugIds:n})=>Ko(w(lo(e,o,t),(d=>Vo(r,Mo(jo({},x(l,d)),{key:d,queryId:e,rowId:o,cellId:d,queries:t,debugIds:n})))),d,n,o),nt=e=>Fo(e,eo(e.queryId,e.queries)),st=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,n=Eo(o,["cellId","descending","offset","limit"]);return Fo(n,to(n.queryId,t,r,l,d,n.queries))},ut=({checkpoints:e,checkpointId:o,debugIds:t})=>{var l;return Ko(null!=(l=go(o,e))?l:r,void 0,t,o)},it=Ho((e=>e[0])),at=Ho((e=>m(e[1])?[]:[e[1]])),It=Ho((e=>e[2]));export{it as BackwardCheckpointsView,No as CellView,ut as CheckpointView,at as CurrentCheckpointView,It as ForwardCheckpointsView,et as IndexView,rt as LinkedRowsView,tt as LocalRowsView,$o as MetricView,Jo as Provider,ot as RemoteRowView,lt as ResultCellView,dt as ResultRowView,st as ResultSortedTableView,nt as ResultTableView,Qo as RowView,_o as SliceView,Wo as SortedTableView,Uo as TableView,Xo as TablesView,Yo as ValueView,Zo as ValuesView,pe as useAddRowCallback,ne as useCell,de as useCellIds,Le as useCellIdsListener,je as useCellListener,go as useCheckpoint,vo as useCheckpointIds,ho as useCheckpointIdsListener,fo as useCheckpointListener,j as useCheckpoints,bo as useCreateCheckpoints,ze as useCreateIndexes,Ae as useCreateMetrics,Po as useCreatePersister,$e as useCreateQueries,Ne as useCreateRelationships,Z as useCreateStore,ke as useDelCellCallback,ye as useDelRowCallback,Re as useDelTableCallback,Ce as useDelTablesCallback,fe as useDelValueCallback,he as useDelValuesCallback,mo as useGoBackwardCallback,Co as useGoForwardCallback,Ro as useGoToCallback,T as useIndexes,We as useLinkedRowIds,Ze as useLinkedRowIdsListener,Ue as useLocalRowIds,Ye as useLocalRowIdsListener,De as useMetric,Fe as useMetricListener,O as useMetrics,L as useQueries,ko as useRedoInformation,B as useRelationships,Qe as useRemoteRowId,Xe as useRemoteRowIdListener,no as useResultCell,lo as useResultCellIds,co as useResultCellIdsListener,po as useResultCellListener,ro as useResultRow,eo as useResultRowIds,io as useResultRowIdsListener,Io as useResultRowListener,to as useResultSortedRowIds,ao as useResultSortedRowIdsListener,_e as useResultTable,oo as useResultTableCellIds,uo as useResultTableCellIdsListener,so as useResultTableListener,le as useRow,te as useRowIds,Oe as useRowIdsListener,Be as useRowListener,ve as useSetCellCallback,wo as useSetCheckpointCallback,be as useSetPartialRowCallback,we as useSetPartialValuesCallback,ce as useSetRowCallback,Ie as useSetTableCallback,ae as useSetTablesCallback,me as useSetValueCallback,ge as useSetValuesCallback,Ge as useSliceIds,Je as useSliceIdsListener,He as useSliceRowIds,Ke as useSliceRowIdsListener,re as useSortedRowIds,Te as useSortedRowIdsListener,S as useStore,ee as useTable,oe as useTableCellIds,Se as useTableCellIdsListener,_ as useTableIds,qe as useTableIdsListener,xe as useTableListener,$ as useTables,Pe as useTablesListener,yo as useUndoInformation,ie as useValue,ue as useValueIds,Ee as useValueIdsListener,Ve as useValueListener,se as useValues,Me as useValuesListener};
Binary file
package/lib/queries.js CHANGED
@@ -1 +1 @@
1
- const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Row",d=i+l,c="Sorted"+i+l,u="Cell",h=u+l,g=(e,t)=>e.every(t),v=(e,t)=>e.forEach(t),w=e=>R(e,((e,t)=>e+t),0),f=e=>e.length,L=e=>0==f(e),R=(e,t,n)=>e.reduce(t,n),y=(e,...t)=>e.push(...t),T=Math.max,b=Math.min,p=isFinite,C=e=>null==e,S=(e,t,n)=>C(e)?n?.():t(e),m=t=>e(t)==r,I=e=>Array.isArray(e),Q=()=>{},E=Object,M=E.freeze,x=e=>e.size,D=(e,t)=>e?.has(t)??!1,j=e=>C(e)||0==x(e),k=e=>[...e?.values()??[]],z=e=>e.clear(),A=(e,t)=>e?.forEach(t),F=(e,t)=>e?.delete(t),O=e=>new Map(e),W=(e,t)=>e?.get(t),q=(e,t)=>A(e,((e,n)=>t(n,e))),B=(e,t,n)=>C(n)?(F(e,t),e):e?.set(t,n),G=(e,t,n)=>(D(e,t)||B(e,t,n()),W(e,t)),H=(e,t,n,s,r=0)=>S((n?G:W)(e,t[r],r>f(t)-2?n:O),(o=>{if(r>f(t)-2)return s?.(o)&&B(e,t[r]),o;const a=H(o,t,n,s,r+1);return j(o)&&B(e,t[r]),a})),J=e=>new Set(I(e)||C(e)?e:[e]),K=(e,t)=>e?.add(t),N=O([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),P=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[w,R,T,b,P,,,U,,V,X,Y,Z]=((e,t,n)=>{const s=e.hasRow,r=O(),o=O(),a=O(),l=O(),i=O(),d=(t,n,...s)=>{const r=G(i,t,J);return v(s,(t=>K(r,t)&&n&&e.callListener(t))),s},c=(t,...n)=>S(W(i,t),(s=>{v(L(n)?k(s):n,(t=>{e.delListener(t),F(s,t)})),j(s)&&B(i,t)})),u=(e,t)=>{B(r,e,t),D(o,e)||(B(o,e,!0),B(a,e,O()),B(l,e,O()))},h=e=>{B(r,e),B(o,e),B(a,e),B(l,e),c(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>q(o,e),e=>D(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>B(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const w=O(),L=O(),R=W(a,t),y=W(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=W(R,t),l=s(r,t)?n(i(o,t)):void 0;var d,c;if(a===l||I(a)&&I(l)&&(c=l,f(d=a)===f(c)&&g(d,((e,t)=>c[t]===e)))||B(w,t,[a,l]),!C(h)){const e=W(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&B(L,t,n)}},b=e=>{o((()=>{A(w,(([,e],t)=>B(R,t,e))),A(L,((e,t)=>B(y,t,e)))}),w,L,R,y,e),z(w),z(L)};q(R,T),e.hasTable(r)&&v(e.getRowIds(r),(e=>{D(R,e)||T(e)})),b(!0),c(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>q(i,h),d,c]})(r,0,Q),$=l(),_=l(),ee=O(),te=(e,t,...n)=>v(n,(n=>K(G(G(ee,t,O),e,J),n))),ne=e=>{S(W(ee,e),(e=>{q(e,((e,t)=>A(t,(t=>e.delListener(t))))),z(e)})),v([_,$],(t=>t.delTable(e)))},se=(e,t,n)=>te(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),re={setQueryDefinition:(o,a,l)=>{U(o,a),ne(o);const i=[],d=[[null,[a,null,null,[],O()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=m(e)?[f(i)+"",e]:[C(t)?e:t,n=>n(e,t)];return y(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=C(n)||m(t)?null:t,r=C(s)?t:n,o=[e,[e,s,m(r)?r:e=>e(r),[],O()]];return y(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>y(c,m(e)?e:C(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,m(t)?[t,n,s,r]:W(N,t)??[(e,t)=>t]]];return y(u,o),{as:e=>o[0]=e}},having:(e,t)=>y(h,m(e)?e:n=>n(e)===t)});const w=O(i);if(j(w))return re;const R=O(d);q(R,((e,[,t])=>S(W(R,t),(({3:t})=>C(e)?0:y(t,e)))));const T=O(u);let b=$;if(j(T)&&L(h))b=_;else{se(o,b,_);const r=O();q(T,((e,[t,n])=>K(G(r,t,J),[e,n])));const a=J();q(w,(e=>D(r,e)?0:K(a,e)));const l=O(),i=(a,l,i,d)=>S(a,(([c,u,v,w])=>{q(l,((o,[a])=>{const l=G(c,o,O),u=W(l,i),h=d?void 0:a;if(u!==h){const a=J([[u,h]]),d=x(l);B(l,i,h),A(W(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(j(n))return;const[a,l,i,d]=r;return o||=C(e),A(s,(([n,s])=>{o||(e=C(n)?l?.(e,s,t++):C(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=C(e))})),o?a(k(n),x(n)):e})(w[r],d,l,a,o);w[r]=C((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&p(r)?o:void 0})(i))?null:i}))}})),j(u)||!g(h,(e=>e((e=>w[e]))))?_.delRow(o,v):C(v)?a[2]=_.addRow(o,w):_.setRow(o,v,w)}));te(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=O(),h=b.hasRow(o,n);let g=!h;A(a,(e=>{const[t,r,a]=s(o,n,e);y(d,r),y(c,a),g||=t})),q(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&B(u,e,[r])})),g&&i(H(l,d,void 0,(([,e])=>(F(e,n),j(e)))),u,n,1),h&&i(H(l,c,(()=>{const e={};return A(a,(t=>e[t]=b.getCell(o,n,t))),[O(),J(),void 0,e]}),(([,e])=>{K(e,n)})),u,n)})))}se(o,r,b);const I=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);v(s,(t=>{const[n,,s,a,i]=W(R,t),d=s?.(l,e),[c,u]=W(i,e)??[];d!=c&&(C(u)||Z(o,u),B(i,e,C(d)?null:[d,...Y(o,1,r.addRowListener(n,d,(()=>I(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...C(n)?[a,e,t]:t===a?[a,e,n]:[W(R,t)?.[0],W(W(R,t)?.[4],e)?.[0],n]);b.transaction((()=>g(c,(e=>e(t)))?q(w,((n,s)=>((e,t,n,s,r)=>C(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:Q}=W(R,null);return b.transaction((()=>Y(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?I(n,a,n,Q):(b.delRow(o,n),A(R,(({4:e})=>S(W(e,n),(([,t])=>{Z(o,t),B(e,n)})))))}))))),re},delQueryDefinition:e=>(ne(e),V(e),re),getStore:w,getQueryIds:R,forEachQuery:T,hasQuery:b,getTableId:P,delListener:e=>(_.delListener(e),re),destroy:X,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=_.getListenerStats();return s}};var oe,ae;return oe={Table:[1,1],[d]:[0,1],[c]:[0,5],[i]:[1,2],[h]:[0,2],[u]:[1,3]},ae=([e,t],n)=>{v(e?["get","has","forEach"]:["get"],(e=>re[e+a+n]=(...t)=>_[e+n](...t))),re["add"+a+n+o]=(...e)=>{return _["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](re,...s)));var s,r}},((e,t)=>{e.map(t)})(E.entries(oe),(([e,t])=>ae(t,e))),M(re)})(r)),l.get(r))})();export{P as createQueries};
1
+ const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+l,u="Sorted"+d+l,h="Cell",g=h+l,v=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),f=e=>y(e,((e,t)=>e+t),0),L=e=>e.length,R=e=>0==L(e),y=(e,t,n)=>e.reduce(t,n),T=(e,...t)=>e.push(...t),b=Math.max,p=Math.min,C=isFinite,S=e=>null==e,m=(e,t,n)=>S(e)?n?.():t(e),I=t=>e(t)==r,Q=e=>Array.isArray(e),E=()=>{},M=Object,x=M.freeze,D=e=>e.size,j=(e,t)=>e?.has(t)??!1,k=e=>S(e)||0==D(e),z=e=>[...e?.values()??[]],A=e=>e.clear(),F=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),W=e=>new Map(e),q=(e,t)=>e?.get(t),B=(e,t)=>F(e,((e,n)=>t(n,e))),G=(e,t,n)=>S(n)?(O(e,t),e):e?.set(t,n),H=(e,t,n)=>(j(e,t)||G(e,t,n()),q(e,t)),J=(e,t,n,s,r=0)=>m((n?H:q)(e,t[r],r>L(t)-2?n:W),(o=>{if(r>L(t)-2)return s?.(o)&&G(e,t[r]),o;const a=J(o,t,n,s,r+1);return k(o)&&G(e,t[r]),a})),K=e=>new Set(Q(e)||S(e)?e:[e]),N=(e,t)=>e?.add(t),P=W([["avg",[(e,t)=>f(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>p(...e),(e,t)=>p(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:p(t,e)]],["sum",[e=>f(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),U=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[f,y,b,p,U,,,V,,X,Y,Z,$]=((e,t,n)=>{const s=e.hasRow,r=W(),o=W(),a=W(),l=W(),i=W(),d=(t,n,...s)=>{const r=H(i,t,K);return w(s,(t=>N(r,t)&&n&&e.callListener(t))),s},c=(t,...n)=>m(q(i,t),(s=>{w(R(n)?z(s):n,(t=>{e.delListener(t),O(s,t)})),k(s)&&G(i,t)})),u=(e,t)=>{G(r,e,t),j(o,e)||(G(o,e,!0),G(a,e,W()),G(l,e,W()))},h=e=>{G(r,e),G(o,e),G(a,e),G(l,e),c(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>B(o,e),e=>j(o,e),e=>q(r,e),e=>q(o,e),(e,t)=>G(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const g=W(),f=W(),R=q(a,t),y=q(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=q(R,t),l=s(r,t)?n(i(o,t)):void 0;var d,c;if(a===l||Q(a)&&Q(l)&&(c=l,L(d=a)===L(c)&&v(d,((e,t)=>c[t]===e)))||G(g,t,[a,l]),!S(h)){const e=q(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&G(f,t,n)}},b=e=>{o((()=>{F(g,(([,e],t)=>G(R,t,e))),F(f,((e,t)=>G(y,t,e)))}),g,f,R,y,e),A(g),A(f)};B(R,T),e.hasTable(r)&&w(e.getRowIds(r),(e=>{j(R,e)||T(e)})),b(!0),c(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>B(i,h),d,c]})(r,0,E),_=l(),ee=l(),te=W(),ne=(e,t,...n)=>w(n,(n=>N(H(H(te,t,W),e,K),n))),se=e=>{m(q(te,e),(e=>{B(e,((e,t)=>F(t,(t=>e.delListener(t))))),A(e)})),w([ee,_],(t=>t.delTable(e)))},re=(e,t,n)=>ne(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),oe={setQueryDefinition:(o,a,l)=>{V(o,a),se(o);const i=[],d=[[null,[a,null,null,[],W()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=I(e)?[L(i)+"",e]:[S(t)?e:t,n=>n(e,t)];return T(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=S(n)||I(t)?null:t,r=S(s)?t:n,o=[e,[e,s,I(r)?r:e=>e(r),[],W()]];return T(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>T(c,I(e)?e:S(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,I(t)?[t,n,s,r]:q(P,t)??[(e,t)=>t]]];return T(u,o),{as:e=>o[0]=e}},having:(e,t)=>T(h,I(e)?e:n=>n(e)===t)});const g=W(i);if(k(g))return oe;const f=W(d);B(f,((e,[,t])=>m(q(f,t),(({3:t})=>S(e)?0:T(t,e)))));const y=W(u);let b=_;if(k(y)&&R(h))b=ee;else{re(o,b,ee);const r=W();B(y,((e,[t,n])=>N(H(r,t,K),[e,n])));const a=K();B(g,(e=>j(r,e)?0:N(a,e)));const l=W(),i=(a,l,i,d)=>m(a,(([c,u,g,w])=>{B(l,((o,[a])=>{const l=H(c,o,W),u=q(l,i),h=d?void 0:a;if(u!==h){const a=K([[u,h]]),d=D(l);G(l,i,h),F(q(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(k(n))return;const[a,l,i,d]=r;return o||=S(e),F(s,(([n,s])=>{o||(e=S(n)?l?.(e,s,t++):S(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=S(e))})),o?a(z(n),D(n)):e})(w[r],d,l,a,o);w[r]=S((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&C(r)?o:void 0})(i))?null:i}))}})),k(u)||!v(h,(e=>e((e=>w[e]))))?ee.delRow(o,g):S(g)?a[2]=ee.addRow(o,w):ee.setRow(o,g,w)}));ne(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=W(),h=b.hasRow(o,n);let g=!h;F(a,(e=>{const[t,r,a]=s(o,n,e);T(d,r),T(c,a),g||=t})),B(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&G(u,e,[r])})),g&&i(J(l,d,void 0,(([,e])=>(O(e,n),k(e)))),u,n,1),h&&i(J(l,c,(()=>{const e={};return F(a,(t=>e[t]=b.getCell(o,n,t))),[W(),K(),void 0,e]}),(([,e])=>{N(e,n)})),u,n)})))}re(o,r,b);const p=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);w(s,(t=>{const[n,,s,a,i]=q(f,t),d=s?.(l,e),[c,u]=q(i,e)??[];d!=c&&(S(u)||$(o,u),G(i,e,S(d)?null:[d,...Z(o,1,r.addRowListener(n,d,(()=>p(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...S(n)?[a,e,t]:t===a?[a,e,n]:[q(f,t)?.[0],q(q(f,t)?.[4],e)?.[0],n]);b.transaction((()=>v(c,(e=>e(t)))?B(g,((n,s)=>((e,t,n,s,r)=>S(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:Q}=q(f,null);return b.transaction((()=>Z(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?p(n,a,n,Q):(b.delRow(o,n),F(f,(({4:e})=>m(q(e,n),(([,t])=>{$(o,t),G(e,n)})))))}))))),oe},delQueryDefinition:e=>(se(e),X(e),oe),getStore:f,getQueryIds:y,forEachQuery:b,hasQuery:p,getTableId:U,delListener:e=>(ee.delListener(e),oe),destroy:Y,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=ee.getListenerStats();return s}};var ae,le;return ae={[i]:[1,1],[i+g]:[0,1],[c]:[0,1],[u]:[0,5],[d]:[1,2],[g]:[0,2],[h]:[1,3]},le=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>oe[e+a+n]=(...t)=>ee[e+n](...t))),oe["add"+a+n+o]=(...e)=>{return ee["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](oe,...s)));var s,r}},((e,t)=>{e.map(t)})(M.entries(ae),(([e,t])=>le(t,e))),x(oe)})(r)),l.get(r))})();export{U as createQueries};
package/lib/queries.js.gz CHANGED
Binary file