tinybase 3.1.1 → 3.1.3

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 (97) hide show
  1. package/bin/cli.js +1 -1
  2. package/lib/checkpoints.js +1 -1
  3. package/lib/checkpoints.js.gz +0 -0
  4. package/lib/cjs/checkpoints.cjs +1 -1
  5. package/lib/cjs/checkpoints.cjs.gz +0 -0
  6. package/lib/cjs/indexes.cjs +1 -1
  7. package/lib/cjs/indexes.cjs.gz +0 -0
  8. package/lib/cjs/metrics.cjs +1 -1
  9. package/lib/cjs/metrics.cjs.gz +0 -0
  10. package/lib/cjs/persisters.cjs +1 -1
  11. package/lib/cjs/persisters.cjs.gz +0 -0
  12. package/lib/cjs/queries.cjs +1 -1
  13. package/lib/cjs/queries.cjs.gz +0 -0
  14. package/lib/cjs/relationships.cjs +1 -1
  15. package/lib/cjs/relationships.cjs.gz +0 -0
  16. package/lib/cjs/store.cjs +1 -1
  17. package/lib/cjs/store.cjs.gz +0 -0
  18. package/lib/cjs/tinybase.cjs +1 -1
  19. package/lib/cjs/tinybase.cjs.gz +0 -0
  20. package/lib/cjs/ui-react.cjs +1 -1
  21. package/lib/cjs/ui-react.cjs.gz +0 -0
  22. package/lib/cjs-es6/indexes.cjs +1 -1
  23. package/lib/cjs-es6/indexes.cjs.gz +0 -0
  24. package/lib/cjs-es6/metrics.cjs +1 -1
  25. package/lib/cjs-es6/metrics.cjs.gz +0 -0
  26. package/lib/cjs-es6/persisters.cjs +1 -1
  27. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  28. package/lib/cjs-es6/queries.cjs +1 -1
  29. package/lib/cjs-es6/queries.cjs.gz +0 -0
  30. package/lib/cjs-es6/relationships.cjs +1 -1
  31. package/lib/cjs-es6/relationships.cjs.gz +0 -0
  32. package/lib/cjs-es6/store.cjs +1 -1
  33. package/lib/cjs-es6/store.cjs.gz +0 -0
  34. package/lib/cjs-es6/tinybase.cjs +1 -1
  35. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  36. package/lib/cjs-es6/ui-react.cjs +1 -1
  37. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  38. package/lib/debug/store.js +10 -17
  39. package/lib/debug/tinybase.js +10 -17
  40. package/lib/es6/indexes.js +1 -1
  41. package/lib/es6/indexes.js.gz +0 -0
  42. package/lib/es6/metrics.js +1 -1
  43. package/lib/es6/metrics.js.gz +0 -0
  44. package/lib/es6/persisters.js +1 -1
  45. package/lib/es6/persisters.js.gz +0 -0
  46. package/lib/es6/queries.js +1 -1
  47. package/lib/es6/queries.js.gz +0 -0
  48. package/lib/es6/relationships.js +1 -1
  49. package/lib/es6/relationships.js.gz +0 -0
  50. package/lib/es6/store.js +1 -1
  51. package/lib/es6/store.js.gz +0 -0
  52. package/lib/es6/tinybase.js +1 -1
  53. package/lib/es6/tinybase.js.gz +0 -0
  54. package/lib/es6/ui-react.js +1 -1
  55. package/lib/es6/ui-react.js.gz +0 -0
  56. package/lib/indexes.js +1 -1
  57. package/lib/indexes.js.gz +0 -0
  58. package/lib/metrics.js +1 -1
  59. package/lib/metrics.js.gz +0 -0
  60. package/lib/persisters.js +1 -1
  61. package/lib/persisters.js.gz +0 -0
  62. package/lib/queries.js +1 -1
  63. package/lib/queries.js.gz +0 -0
  64. package/lib/relationships.js +1 -1
  65. package/lib/relationships.js.gz +0 -0
  66. package/lib/store.js +1 -1
  67. package/lib/store.js.gz +0 -0
  68. package/lib/tinybase.js +1 -1
  69. package/lib/tinybase.js.gz +0 -0
  70. package/lib/types/store.d.ts +21 -20
  71. package/lib/types/with-schemas/store.d.ts +21 -20
  72. package/lib/ui-react.js +1 -1
  73. package/lib/ui-react.js.gz +0 -0
  74. package/lib/umd/checkpoints.js +1 -1
  75. package/lib/umd/checkpoints.js.gz +0 -0
  76. package/lib/umd/metrics.js +1 -1
  77. package/lib/umd/metrics.js.gz +0 -0
  78. package/lib/umd/queries.js +1 -1
  79. package/lib/umd/queries.js.gz +0 -0
  80. package/lib/umd/relationships.js +1 -1
  81. package/lib/umd/relationships.js.gz +0 -0
  82. package/lib/umd/store.js +1 -1
  83. package/lib/umd/store.js.gz +0 -0
  84. package/lib/umd/tinybase.js +1 -1
  85. package/lib/umd/tinybase.js.gz +0 -0
  86. package/lib/umd/ui-react.js +1 -1
  87. package/lib/umd/ui-react.js.gz +0 -0
  88. package/lib/umd-es6/queries.js +1 -1
  89. package/lib/umd-es6/queries.js.gz +0 -0
  90. package/lib/umd-es6/store.js +1 -1
  91. package/lib/umd-es6/store.js.gz +0 -0
  92. package/lib/umd-es6/tinybase.js +1 -1
  93. package/lib/umd-es6/tinybase.js.gz +0 -0
  94. package/lib/umd-es6/ui-react.js +1 -1
  95. package/lib/umd-es6/ui-react.js.gz +0 -0
  96. package/package.json +13 -13
  97. package/readme.md +2 -2
@@ -1253,10 +1253,10 @@ export type ValueListener<
1253
1253
  * ) => void;
1254
1254
  * ```
1255
1255
  *
1256
- * A InvalidCellListener is provided when using the addInvalidCellListener
1256
+ * An InvalidCellListener is provided when using the addInvalidCellListener
1257
1257
  * method. See that method for specific examples.
1258
1258
  *
1259
- * When called, a InvalidCellListener is given a reference to the Store, the Id
1259
+ * When called, an InvalidCellListener is given a reference to the Store, the Id
1260
1260
  * of the Table, the Id of the Row, and the Id of Cell that was being attempted
1261
1261
  * to be changed. It is also given the invalid value of the Cell, which could
1262
1262
  * have been of absolutely any type. Since there could have been multiple failed
@@ -1293,11 +1293,11 @@ export type InvalidCellListener<Schemas extends OptionalSchemas> = (
1293
1293
  * ) => void;
1294
1294
  * ```
1295
1295
  *
1296
- * A InvalidValueListener is provided when using the addInvalidValueListener
1296
+ * An InvalidValueListener is provided when using the addInvalidValueListener
1297
1297
  * method. See that method for specific examples.
1298
1298
  *
1299
- * When called, a InvalidValueListener is given a reference to the Store and the
1300
- * Id of Value that was being attempted to be changed. It is also given the
1299
+ * When called, an InvalidValueListener is given a reference to the Store and
1300
+ * the Id of Value that was being attempted to be changed. It is also given the
1301
1301
  * invalid value of the Value, which could have been of absolutely any type.
1302
1302
  * Since there could have been multiple failed attempts to set the Value within
1303
1303
  * a single transaction, this is an array containing each attempt,
@@ -1811,8 +1811,8 @@ export type StoreListenerStats = {
1811
1811
  */
1812
1812
  export interface Store<in out Schemas extends OptionalSchemas> {
1813
1813
  /**
1814
- * The getTables method returns a Tables object containing the entire data of
1815
- * the Store.
1814
+ * The getTables method returns a Tables object containing the entire tabular
1815
+ * data of the Store.
1816
1816
  *
1817
1817
  * This has schema-based typing. The following is a simplified representation:
1818
1818
  *
@@ -1824,9 +1824,9 @@ export interface Store<in out Schemas extends OptionalSchemas> {
1824
1824
  * data, so changes made to the returned object are not made to the Store
1825
1825
  * itself.
1826
1826
  *
1827
- * @returns A Tables object containing the entire data of the Store.
1827
+ * @returns A Tables object containing the tabular data of the Store.
1828
1828
  * @example
1829
- * This example retrieves the data in a Store.
1829
+ * This example retrieves the tabular data in a Store.
1830
1830
  *
1831
1831
  * ```js
1832
1832
  * const store = createStore().setTables({
@@ -1999,7 +1999,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
1999
1999
  *
2000
2000
  * @param tableId The Id of the Table in the Store.
2001
2001
  * @param cellId The Id of the Cell whose values are used for the sorting, or
2002
- * `undefined` to by sort the Row Id itself.
2002
+ * `undefined` to sort by the Row Id itself.
2003
2003
  * @param descending Whether the sorting should be in descending order.
2004
2004
  * @param offset The number of Row Ids to skip for pagination purposes, if
2005
2005
  * any.
@@ -2234,9 +2234,9 @@ export interface Store<in out Schemas extends OptionalSchemas> {
2234
2234
  * data, so changes made to the returned object are not made to the Store
2235
2235
  * itself.
2236
2236
  *
2237
- * @returns An object containing the entire data of the Values.
2237
+ * @returns An object containing the set of keyed Values in the Store.
2238
2238
  * @example
2239
- * This example retrieves the keyed Values data in a Store.
2239
+ * This example retrieves the set of keyed Values in the Store.
2240
2240
  *
2241
2241
  * ```js
2242
2242
  * const store = createStore().setValues({open: true, employees: 3});
@@ -2244,7 +2244,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
2244
2244
  * // -> {open: true, employees: 3}
2245
2245
  * ```
2246
2246
  * @example
2247
- * This example retrieves a Values from a Store that has none, returning an
2247
+ * This example retrieves Values from a Store that has none, returning an
2248
2248
  * empty object.
2249
2249
  *
2250
2250
  * ```js
@@ -2671,7 +2671,8 @@ export interface Store<in out Schemas extends OptionalSchemas> {
2671
2671
  getSchemaJson(): Json;
2672
2672
 
2673
2673
  /**
2674
- * The setTables method takes an object and sets the entire data of the Store.
2674
+ * The setTables method takes an object and sets the entire tabular data of
2675
+ * the Store.
2675
2676
  *
2676
2677
  * This has schema-based typing. The following is a simplified representation:
2677
2678
  *
@@ -2695,7 +2696,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
2695
2696
  *
2696
2697
  * @param tables The data of the Store to be set.
2697
2698
  * @example
2698
- * This example sets the data of a Store.
2699
+ * This example sets the tabular data of a Store.
2699
2700
  *
2700
2701
  * ```js
2701
2702
  * const store = createStore().setTables({
@@ -2706,8 +2707,8 @@ export interface Store<in out Schemas extends OptionalSchemas> {
2706
2707
  * // -> {pets: {fido: {species: 'dog'}}, species: {dog: {price: 5}}}
2707
2708
  * ```
2708
2709
  * @example
2709
- * This example attempts to set the data of an existing Store with partly
2710
- * invalid, and then completely invalid, Tables objects.
2710
+ * This example attempts to set the tabular data of an existing Store with
2711
+ * partly invalid, and then completely invalid, Tables objects.
2711
2712
  *
2712
2713
  * ```js
2713
2714
  * const store = createStore().setTables({pets: {fido: {species: 'dog'}}});
@@ -3357,7 +3358,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
3357
3358
  * // -> {}
3358
3359
  * ```
3359
3360
  * @example
3360
- * This example attempts to set the the tabular and keyed value contents of a
3361
+ * This example attempts to set both the tabular and keyed value contents of a
3361
3362
  * Store from an invalid serialization.
3362
3363
  *
3363
3364
  * ```js
@@ -4733,7 +4734,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
4733
4734
  *
4734
4735
  * @param tableId The Id of the Table to listen to.
4735
4736
  * @param cellId The Id of the Cell whose values are used for the sorting, or
4736
- * `undefined` to by sort the Row Id itself.
4737
+ * `undefined` to sort by the Row Id itself.
4737
4738
  * @param descending Whether the sorting should be in descending order.
4738
4739
  * @param offset The number of Row Ids to skip for pagination purposes, if
4739
4740
  * any.
@@ -6281,7 +6282,7 @@ export interface Store<in out Schemas extends OptionalSchemas> {
6281
6282
  * ```
6282
6283
  * @example
6283
6284
  * This example registers listeners for the end of transactions, and for
6284
- * invalid Cells. The are explicitly called, meaninglessly. The former
6285
+ * invalid Cells. They are explicitly called, meaninglessly. The former
6285
6286
  * receives empty arguments. The latter is not called at all.
6286
6287
  *
6287
6288
  * ```js
package/lib/ui-react.js CHANGED
@@ -1 +1 @@
1
- import e,{useContext as o}from"react";const t=e=>typeof e,s=t(""),d=(e,o)=>e.map(o),r=e=>null==e,n=(e,o,t)=>r(e)?t?.():o(e),l=e=>t(e)==s,I=()=>{},{createContext:u,useContext:a}=e,i=u([]),c=(e,o)=>{const t=a(i);return r(e)?t[o]:l(e)?((e,o)=>n(e,(e=>e[o])))(t[o+1],e):e},p=(e,o)=>{const t=c(e,o);return r(e)||l(e)?t:e},b=e=>c(e,0),g=e=>c(e,2),w=e=>c(e,4),R=e=>c(e,6),C=e=>c(e,8),m=e=>c(e,10),k=e=>p(e,0),y=e=>p(e,2),h=e=>p(e,4),v=e=>p(e,6),T=e=>p(e,8),q=e=>p(e,10),{useCallback:P,useEffect:x,useMemo:S,useRef:V,useState:f}=e,B=(e,o,t=[])=>{const s=S((()=>o(e)),[e,...t]);return x((()=>()=>s.destroy()),[s]),s},L=(e,o,t,s=[],d)=>{const[,n]=f(),l=P((()=>o?.["get"+e]?.(...s)??t),[o,...s]),[I]=f(l),u=V(I);return S((()=>u.current=l()),[l]),M(e,o,((...e)=>{u.current=r(d)?l():e[d],n([])}),[],s),u.current},M=(e,o,t,s=[],d=[],...r)=>x((()=>{const s=o?.["add"+e+"Listener"]?.(...d,t,...r);return()=>o?.delListener(s)}),[o,...d,...s,...r]),A=(e,o,t,s=[],d=I,r=[],...l)=>{const u=k(e);return P((e=>n(u,(s=>n(t(e,s),(e=>d(s["set"+o](...l,e),e)))))),[u,o,...s,...r,...l])},E=(e,o,t=I,s=[],...d)=>{const r=k(e);return P((()=>t(r?.["del"+o](...d))),[r,o,...s,...d])},F=(e,o,t)=>{const s=q(e);return P((()=>s?.[o](t)),[s,o,t])},j=(e,o=[])=>S(e,o),z=e=>L("Tables",k(e),{}),D=e=>L("TableIds",k(e),[],[]),G=(e,o)=>L("Table",k(o),{},[e]),H=(e,o)=>L("RowIds",k(o),[],[e]),J=(e,o,t,s=0,d,r)=>L("SortedRowIds",k(r),[],[e,o,t,s,d],6),K=(e,o,t)=>L("Row",k(t),{},[e,o]),N=(e,o,t)=>L("CellIds",k(t),[],[e,o]),O=(e,o,t,s)=>L("Cell",k(s),void 0,[e,o,t],4),Q=e=>L("Values",k(e),{}),U=e=>L("ValueIds",k(e),[],[]),W=(e,o)=>L("Value",k(o),void 0,[e]),X=(e,o,t,s,d)=>A(t,"Tables",e,o,s,d),Y=(e,o,t,s,d,r)=>A(s,"Table",o,t,d,r,e),Z=(e,o,t,s,d,r,n)=>A(d,"Row",t,s,r,n,e,o),$=(e,o,t=[],s,d=I,r=[],l=!0)=>{const u=k(s);return P((t=>n(u,(s=>n(o(t,s),(o=>d(s.addRow(e,o,l),s,o)))))),[u,e,...t,...r,l])},_=(e,o,t,s,d,r,n)=>A(d,"PartialRow",t,s,r,n,e,o),ee=(e,o,t,s,d,r,n,l)=>A(r,"Cell",s,d,n,l,e,o,t),oe=(e,o,t,s,d)=>A(t,"Values",e,o,s,d),te=(e,o,t,s,d)=>A(t,"PartialValues",e,o,s,d),se=(e,o,t,s,d,r)=>A(s,"Value",o,t,d,r,e),de=(e,o,t)=>E(e,"Tables",o,t),re=(e,o,t,s)=>E(o,"Table",t,s,e),ne=(e,o,t,s,d)=>E(t,"Row",s,d,e,o),le=(e,o,t,s,d,r,n)=>E(d,"Cell",r,n,e,o,t,s),Ie=(e,o,t)=>E(e,"Values",o,t),ue=(e,o,t,s)=>E(o,"Value",t,s,e),ae=(e,o,t,s)=>M("Tables",k(s),e,o,[],t),ie=(e,o,t,s)=>M("TableIds",k(s),e,o,[],t),ce=(e,o,t,s,d)=>M("Table",k(d),o,t,[e],s),pe=(e,o,t,s,d)=>M("RowIds",k(d),o,t,[e],s),be=(e,o,t,s,d,r,n,l,I)=>M("SortedRowIds",k(I),r,n,[e,o,t,s,d],l),ge=(e,o,t,s,d,r)=>M("Row",k(r),t,s,[e,o],d),we=(e,o,t,s,d,r)=>M("CellIds",k(r),t,s,[e,o],d),Re=(e,o,t,s,d,r,n)=>M("Cell",k(n),s,d,[e,o,t],r),Ce=(e,o,t,s)=>M("Values",k(s),e,o,[],t),me=(e,o,t,s)=>M("ValueIds",k(s),e,o,[],t),ke=(e,o,t,s,d)=>M("Value",k(d),o,t,[e],s),ye=(e,o,t)=>B(e,o,t),he=(e,o)=>L("Metric",y(o),void 0,[e]),ve=(e,o,t,s)=>M("Metric",y(s),o,t,[e]),Te=(e,o,t)=>B(e,o,t),qe=(e,o)=>L("SliceIds",h(o),[],[e]),Pe=(e,o,t)=>L("SliceRowIds",h(t),[],[e,o]),xe=(e,o,t,s)=>M("SliceIds",h(s),o,t,[e]),Se=(e,o,t,s,d)=>M("SliceRowIds",h(d),t,s,[e,o]),Ve=(e,o,t)=>B(e,o,t),fe=(e,o,t)=>L("RemoteRowId",v(t),void 0,[e,o]),Be=(e,o,t)=>L("LocalRowIds",v(t),[],[e,o]),Le=(e,o,t)=>L("LinkedRowIds",v(t),[],[e,o]),Me=(e,o,t,s,d)=>M("RemoteRowId",v(d),t,s,[e,o]),Ae=(e,o,t,s,d)=>M("LocalRowIds",v(d),t,s,[e,o]),Ee=(e,o,t,s,d)=>M("LinkedRowIds",v(d),t,s,[e,o]),Fe=(e,o,t)=>B(e,o,t),je=(e,o)=>L("ResultTable",T(o),{},[e]),ze=(e,o)=>L("ResultRowIds",T(o),[],[e]),De=(e,o,t,s=0,d,r)=>L("ResultSortedRowIds",T(r),[],[e,o,t,s,d],6),Ge=(e,o,t)=>L("ResultRow",T(t),{},[e,o]),He=(e,o,t)=>L("ResultCellIds",T(t),[],[e,o]),Je=(e,o,t,s)=>L("ResultCell",T(s),void 0,[e,o,t]),Ke=(e,o,t,s)=>M("ResultTable",T(s),o,t,[e]),Ne=(e,o,t,s)=>M("ResultRowIds",T(s),o,t,[e]),Oe=(e,o,t,s,d,r,n,l)=>M("ResultSortedRowIds",T(l),r,n,[e,o,t,s,d]),Qe=(e,o,t,s,d)=>M("ResultRow",T(d),t,s,[e,o]),Ue=(e,o,t,s,d)=>M("ResultCellIds",T(d),t,s,[e,o]),We=(e,o,t,s,d,r)=>M("ResultCell",T(r),s,d,[e,o,t]),Xe=(e,o,t)=>B(e,o,t),Ye=e=>L("CheckpointIds",q(e),[[],void 0,[]]),Ze=(e,o)=>L("Checkpoint",q(o),void 0,[e]),$e=(e=I,o=[],t,s=I,d=[])=>{const r=q(t);return P((o=>n(r,(t=>{const d=e(o);s(t.addCheckpoint(d),t,d)}))),[r,...o,...d])},_e=e=>F(e,"goBackward"),eo=e=>F(e,"goForward"),oo=(e,o=[],t,s=I,d=[])=>{const r=q(t);return P((o=>n(r,(t=>n(e(o),(e=>s(t.goTo(e),e)))))),[r,...o,...d])},to=e=>{const o=q(e),[t,s]=Ye(o);return[(d=t,!(0==(e=>e.length)(d))),_e(o),s,n(s,(e=>o?.getCheckpoint(e)))??""];var d},so=e=>{const o=q(e),[,,[t]]=Ye(o);return[!r(t),eo(o),t,n(t,(e=>o?.getCheckpoint(e)))??""]},ro=(e,o,t)=>M("CheckpointIds",q(t),e,o),no=(e,o,t,s)=>M("Checkpoint",q(s),o,t,[e]),lo=(e,o,t=[],s,d=[])=>{const[,r]=f(),n=S((()=>o(e)),[e,...t]);return x((()=>((async()=>{await(s?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},{createElement:Io,useMemo:uo}=e,ao=({tableId:e,store:o,rowComponent:t=mo,getRowComponentProps:s,separator:r,debugIds:n},l)=>Ro(d(l,(d=>Io(t,{...go(s,d),key:d,tableId:e,rowId:d,store:o,debugIds:n}))),r,n,e),io=({queryId:e,queries:o,resultRowComponent:t=Lo,getResultRowComponentProps:s,separator:r,debugIds:n},l)=>Ro(d(l,(d=>Io(t,{...go(s,d),key:d,queryId:e,rowId:d,queries:o,debugIds:n}))),r,n,e),co=e=>{const o=v(e);return[o,o?.getStore()]},po=({relationshipId:e,relationships:o,rowComponent:t=mo,getRowComponentProps:s,separator:r,debugIds:n},l,I)=>{const[u,a]=co(o),i=u?.getLocalTableId(e),c=l(e,I,u);return Ro(d(c,(e=>Io(t,{...go(s,e),key:e,tableId:i,rowId:e,store:a,debugIds:n}))),r,n,I)},bo=e=>({checkpoints:o,checkpointComponent:t=Eo,getCheckpointComponentProps:s,separator:r,debugIds:n})=>{const l=q(o);return Ro(d(e(Ye(l)),(e=>Io(t,{...go(s,e),key:e,checkpoints:l,checkpointId:e,debugIds:n}))),r)},go=(e,o)=>r(e)?{}:e(o),wo=({store:e,storesById:t,metrics:s,metricsById:d,indexes:r,indexesById:n,relationships:l,relationshipsById:I,queries:u,queriesById:a,checkpoints:c,checkpointsById:p,children:b})=>{const g=o(i);return Io(i.Provider,{value:uo((()=>[e??g[0],{...g[1],...t},s??g[2],{...g[3],...d},r??g[4],{...g[5],...n},l??g[6],{...g[7],...I},u??g[8],{...g[9],...a},c??g[10],{...g[11],...p}]),[e,t,s,d,r,n,l,I,u,a,c,p,g])},b)},Ro=(e,o,t,s)=>{const n=r(o)||!Array.isArray(e)?e:d(e,((e,t)=>t>0?[o,e]:e));return t?[s,":{",n,"}"]:n},Co=({tableId:e,rowId:o,cellId:t,store:s,debugIds:d})=>Ro(""+(O(e,o,t,s)??""),void 0,d,t),mo=({tableId:e,rowId:o,store:t,cellComponent:s=Co,getCellComponentProps:r,separator:n,debugIds:l})=>Ro(d(N(e,o,t),(d=>Io(s,{...go(r,d),key:d,tableId:e,rowId:o,cellId:d,store:t,debugIds:l}))),n,l,o),ko=e=>ao(e,H(e.tableId,e.store)),yo=({cellId:e,descending:o,offset:t,limit:s,...d})=>ao(d,J(d.tableId,e,o,t,s,d.store)),ho=({store:e,tableComponent:o=ko,getTableComponentProps:t,separator:s,debugIds:r})=>Ro(d(D(e),(s=>Io(o,{...go(t,s),key:s,tableId:s,store:e,debugIds:r}))),s),vo=({valueId:e,store:o,debugIds:t})=>Ro(""+(W(e,o)??""),void 0,t,e),To=({store:e,valueComponent:o=vo,getValueComponentProps:t,separator:s,debugIds:r})=>Ro(d(U(e),(s=>Io(o,{...go(t,s),key:s,valueId:s,store:e,debugIds:r}))),s),qo=({metricId:e,metrics:o,debugIds:t})=>Ro(he(e,o)??"",void 0,t,e),Po=({indexId:e,sliceId:o,indexes:t,rowComponent:s=mo,getRowComponentProps:r,separator:n,debugIds:l})=>{const I=h(t),u=I?.getStore(),a=I?.getTableId(e),i=Pe(e,o,I);return Ro(d(i,(e=>Io(s,{...go(r,e),key:e,tableId:a,rowId:e,store:u,debugIds:l}))),n,l,o)},xo=({indexId:e,indexes:o,sliceComponent:t=Po,getSliceComponentProps:s,separator:r,debugIds:n})=>Ro(d(qe(e,o),(d=>Io(t,{...go(s,d),key:d,indexId:e,sliceId:d,indexes:o,debugIds:n}))),r,n,e),So=({relationshipId:e,localRowId:o,relationships:t,rowComponent:s=mo,getRowComponentProps:d,debugIds:n})=>{const[l,I]=co(t),u=l?.getRemoteTableId(e),a=fe(e,o,l);return Ro(r(u)||r(a)?null:Io(s,{...go(d,a),key:a,tableId:u,rowId:a,store:I,debugIds:n}),void 0,n,o)},Vo=e=>po(e,Be,e.remoteRowId),fo=e=>po(e,Le,e.firstRowId),Bo=({queryId:e,rowId:o,cellId:t,queries:s,debugIds:d})=>Ro(""+(Je(e,o,t,s)??""),void 0,d,t),Lo=({queryId:e,rowId:o,queries:t,resultCellComponent:s=Bo,getResultCellComponentProps:r,separator:n,debugIds:l})=>Ro(d(He(e,o,t),(d=>Io(s,{...go(r,d),key:d,queryId:e,rowId:o,cellId:d,queries:t,debugIds:l}))),n,l,o),Mo=e=>io(e,ze(e.queryId,e.queries)),Ao=({cellId:e,descending:o,offset:t,limit:s,...d})=>io(d,De(d.queryId,e,o,t,s,d.queries)),Eo=({checkpoints:e,checkpointId:o,debugIds:t})=>Ro(Ze(o,e)??"",void 0,t,o),Fo=bo((e=>e[0])),jo=bo((e=>r(e[1])?[]:[e[1]])),zo=bo((e=>e[2]));export{Fo as BackwardCheckpointsView,Co as CellView,Eo as CheckpointView,jo as CurrentCheckpointView,zo as ForwardCheckpointsView,xo as IndexView,fo as LinkedRowsView,Vo as LocalRowsView,qo as MetricView,wo as Provider,So as RemoteRowView,Bo as ResultCellView,Lo as ResultRowView,Ao as ResultSortedTableView,Mo as ResultTableView,mo as RowView,Po as SliceView,yo as SortedTableView,ko as TableView,ho as TablesView,vo as ValueView,To as ValuesView,ao as tableView,$ as useAddRowCallback,O as useCell,N as useCellIds,we as useCellIdsListener,Re as useCellListener,Ze as useCheckpoint,Ye as useCheckpointIds,ro as useCheckpointIdsListener,no as useCheckpointListener,m as useCheckpoints,Xe as useCreateCheckpoints,Te as useCreateIndexes,ye as useCreateMetrics,lo as useCreatePersister,Fe as useCreateQueries,Ve as useCreateRelationships,j as useCreateStore,le as useDelCellCallback,ne as useDelRowCallback,re as useDelTableCallback,de as useDelTablesCallback,ue as useDelValueCallback,Ie as useDelValuesCallback,_e as useGoBackwardCallback,eo as useGoForwardCallback,oo as useGoToCallback,w as useIndexes,Le as useLinkedRowIds,Ee as useLinkedRowIdsListener,Be as useLocalRowIds,Ae as useLocalRowIdsListener,he as useMetric,ve as useMetricListener,g as useMetrics,C as useQueries,so as useRedoInformation,R as useRelationships,fe as useRemoteRowId,Me as useRemoteRowIdListener,Je as useResultCell,He as useResultCellIds,Ue as useResultCellIdsListener,We as useResultCellListener,Ge as useResultRow,ze as useResultRowIds,Ne as useResultRowIdsListener,Qe as useResultRowListener,De as useResultSortedRowIds,Oe as useResultSortedRowIdsListener,je as useResultTable,Ke as useResultTableListener,K as useRow,H as useRowIds,pe as useRowIdsListener,ge as useRowListener,ee as useSetCellCallback,$e as useSetCheckpointCallback,_ as useSetPartialRowCallback,te as useSetPartialValuesCallback,Z as useSetRowCallback,Y as useSetTableCallback,X as useSetTablesCallback,se as useSetValueCallback,oe as useSetValuesCallback,qe as useSliceIds,xe as useSliceIdsListener,Pe as useSliceRowIds,Se as useSliceRowIdsListener,J as useSortedRowIds,be as useSortedRowIdsListener,b as useStore,G as useTable,D as useTableIds,ie as useTableIdsListener,ce as useTableListener,z as useTables,ae as useTablesListener,to as useUndoInformation,W as useValue,U as useValueIds,me as useValueIdsListener,ke as useValueListener,Q as useValues,Ce as useValuesListener};
1
+ import e,{useContext as o}from"react";const t=e=>typeof e,s="",d=t(s),r="Ids",n="Table",l=n+"s",I=n+r,u="Row",i=u+r,c="Sorted"+u+r,a="Cell",p=a+r,g="Value",b=g+"s",w=g+r,R=(e,o)=>e.map(o),C=e=>null==e,m=(e,o,t)=>C(e)?t?.():o(e),k=e=>t(e)==d,y=()=>{},{createContext:h,useContext:v}=e,q=h([]),P=(e,o)=>{const t=v(q);return C(e)?t[o]:k(e)?((e,o)=>m(e,(e=>e[o])))(t[o+1],e):e},x=(e,o)=>{const t=P(e,o);return C(e)||k(e)?t:e},S=e=>P(e,0),f=e=>P(e,2),T=e=>P(e,4),B=e=>P(e,6),L=e=>P(e,8),M=e=>P(e,10),V=e=>x(e,0),A=e=>x(e,2),E=e=>x(e,4),F=e=>x(e,6),j=e=>x(e,8),z=e=>x(e,10),{useCallback:D,useEffect:G,useMemo:H,useRef:J,useState:K}=e,N=(e,o,t=[])=>{const s=H((()=>o(e)),[e,...t]);return G((()=>()=>s.destroy()),[s]),s},O=(e,o,t,s=[],d)=>{const[,r]=K(),n=D((()=>o?.["get"+e]?.(...s)??t),[o,...s]),[l]=K(n),I=J(l);return H((()=>I.current=n()),[n]),Q(e,o,((...e)=>{I.current=C(d)?n():e[d],r([])}),[],s),I.current},Q=(e,o,t,s=[],d=[],...r)=>G((()=>{const s=o?.["add"+e+"Listener"]?.(...d,t,...r);return()=>o?.delListener(s)}),[o,...d,...s,...r]),U=(e,o,t,s=[],d=y,r=[],...n)=>{const l=V(e);return D((e=>m(l,(s=>m(t(e,s),(e=>d(s["set"+o](...n,e),e)))))),[l,o,...s,...r,...n])},W=(e,o,t=y,s=[],...d)=>{const r=V(e);return D((()=>t(r?.["del"+o](...d))),[r,o,...s,...d])},X=(e,o,t)=>{const s=z(e);return D((()=>s?.[o](t)),[s,o,t])},Y=(e,o=[])=>H(e,o),Z=e=>O(l,V(e),{}),$=e=>O(I,V(e),[],[]),_=(e,o)=>O(n,V(o),{},[e]),ee=(e,o)=>O(i,V(o),[],[e]),oe=(e,o,t,s=0,d,r)=>O(c,V(r),[],[e,o,t,s,d],6),te=(e,o,t)=>O(u,V(t),{},[e,o]),se=(e,o,t)=>O(p,V(t),[],[e,o]),de=(e,o,t,s)=>O(a,V(s),void 0,[e,o,t],4),re=e=>O(b,V(e),{}),ne=e=>O(w,V(e),[],[]),le=(e,o)=>O(g,V(o),void 0,[e]),Ie=(e,o,t,s,d)=>U(t,l,e,o,s,d),ue=(e,o,t,s,d,r)=>U(s,n,o,t,d,r,e),ie=(e,o,t,s,d,r,n)=>U(d,u,t,s,r,n,e,o),ce=(e,o,t=[],s,d=y,r=[],n=!0)=>{const l=V(s);return D((t=>m(l,(s=>m(o(t,s),(o=>d(s.addRow(e,o,n),s,o)))))),[l,e,...t,...r,n])},ae=(e,o,t,s,d,r,n)=>U(d,"PartialRow",t,s,r,n,e,o),pe=(e,o,t,s,d,r,n,l)=>U(r,a,s,d,n,l,e,o,t),ge=(e,o,t,s,d)=>U(t,b,e,o,s,d),be=(e,o,t,s,d)=>U(t,"PartialValues",e,o,s,d),we=(e,o,t,s,d,r)=>U(s,g,o,t,d,r,e),Re=(e,o,t)=>W(e,l,o,t),Ce=(e,o,t,s)=>W(o,n,t,s,e),me=(e,o,t,s,d)=>W(t,u,s,d,e,o),ke=(e,o,t,s,d,r,n)=>W(d,a,r,n,e,o,t,s),ye=(e,o,t)=>W(e,b,o,t),he=(e,o,t,s)=>W(o,g,t,s,e),ve=(e,o,t,s)=>Q(l,V(s),e,o,[],t),qe=(e,o,t,s)=>Q(I,V(s),e,o,[],t),Pe=(e,o,t,s,d)=>Q(n,V(d),o,t,[e],s),xe=(e,o,t,s,d)=>Q(i,V(d),o,t,[e],s),Se=(e,o,t,s,d,r,n,l,I)=>Q(c,V(I),r,n,[e,o,t,s,d],l),fe=(e,o,t,s,d,r)=>Q(u,V(r),t,s,[e,o],d),Te=(e,o,t,s,d,r)=>Q(p,V(r),t,s,[e,o],d),Be=(e,o,t,s,d,r,n)=>Q(a,V(n),s,d,[e,o,t],r),Le=(e,o,t,s)=>Q(b,V(s),e,o,[],t),Me=(e,o,t,s)=>Q(w,V(s),e,o,[],t),Ve=(e,o,t,s,d)=>Q(g,V(d),o,t,[e],s),Ae=(e,o,t)=>N(e,o,t),Ee=(e,o)=>O("Metric",A(o),void 0,[e]),Fe=(e,o,t,s)=>Q("Metric",A(s),o,t,[e]),je=(e,o,t)=>N(e,o,t),ze=(e,o)=>O("SliceIds",E(o),[],[e]),De=(e,o,t)=>O("SliceRowIds",E(t),[],[e,o]),Ge=(e,o,t,s)=>Q("SliceIds",E(s),o,t,[e]),He=(e,o,t,s,d)=>Q("SliceRowIds",E(d),t,s,[e,o]),Je=(e,o,t)=>N(e,o,t),Ke=(e,o,t)=>O("RemoteRowId",F(t),void 0,[e,o]),Ne=(e,o,t)=>O("LocalRowIds",F(t),[],[e,o]),Oe=(e,o,t)=>O("LinkedRowIds",F(t),[],[e,o]),Qe=(e,o,t,s,d)=>Q("RemoteRowId",F(d),t,s,[e,o]),Ue=(e,o,t,s,d)=>Q("LocalRowIds",F(d),t,s,[e,o]),We=(e,o,t,s,d)=>Q("LinkedRowIds",F(d),t,s,[e,o]),Xe=(e,o,t)=>N(e,o,t),Ye=(e,o)=>O("ResultTable",j(o),{},[e]),Ze=(e,o)=>O("ResultRowIds",j(o),[],[e]),$e=(e,o,t,s=0,d,r)=>O("ResultSortedRowIds",j(r),[],[e,o,t,s,d],6),_e=(e,o,t)=>O("ResultRow",j(t),{},[e,o]),eo=(e,o,t)=>O("ResultCellIds",j(t),[],[e,o]),oo=(e,o,t,s)=>O("ResultCell",j(s),void 0,[e,o,t]),to=(e,o,t,s)=>Q("ResultTable",j(s),o,t,[e]),so=(e,o,t,s)=>Q("ResultRowIds",j(s),o,t,[e]),ro=(e,o,t,s,d,r,n,l)=>Q("ResultSortedRowIds",j(l),r,n,[e,o,t,s,d]),no=(e,o,t,s,d)=>Q("ResultRow",j(d),t,s,[e,o]),lo=(e,o,t,s,d)=>Q("ResultCellIds",j(d),t,s,[e,o]),Io=(e,o,t,s,d,r)=>Q("ResultCell",j(r),s,d,[e,o,t]),uo=(e,o,t)=>N(e,o,t),io=e=>O("CheckpointIds",z(e),[[],void 0,[]]),co=(e,o)=>O("Checkpoint",z(o),void 0,[e]),ao=(e=y,o=[],t,s=y,d=[])=>{const r=z(t);return D((o=>m(r,(t=>{const d=e(o);s(t.addCheckpoint(d),t,d)}))),[r,...o,...d])},po=e=>X(e,"goBackward"),go=e=>X(e,"goForward"),bo=(e,o=[],t,s=y,d=[])=>{const r=z(t);return D((o=>m(r,(t=>m(e(o),(e=>s(t.goTo(e),e)))))),[r,...o,...d])},wo=e=>{const o=z(e),[t,d]=io(o);return[(r=t,!(0==(e=>e.length)(r))),po(o),d,m(d,(e=>o?.getCheckpoint(e)))??s];var r},Ro=e=>{const o=z(e),[,,[t]]=io(o);return[!C(t),go(o),t,m(t,(e=>o?.getCheckpoint(e)))??s]},Co=(e,o,t)=>Q("CheckpointIds",z(t),e,o),mo=(e,o,t,s)=>Q("Checkpoint",z(s),o,t,[e]),ko=(e,o,t=[],s,d=[])=>{const[,r]=K(),n=H((()=>o(e)),[e,...t]);return G((()=>((async()=>{await(s?.(n)),r(1)})(),()=>{n.destroy()})),[n,...d]),n},{createElement:yo,useMemo:ho}=e,vo=({tableId:e,store:o,rowComponent:t=Mo,getRowComponentProps:s,separator:d,debugIds:r},n)=>Bo(R(n,(d=>yo(t,{...fo(s,d),key:d,tableId:e,rowId:d,store:o,debugIds:r}))),d,r,e),qo=({queryId:e,queries:o,resultRowComponent:t=Oo,getResultRowComponentProps:s,separator:d,debugIds:r},n)=>Bo(R(n,(d=>yo(t,{...fo(s,d),key:d,queryId:e,rowId:d,queries:o,debugIds:r}))),d,r,e),Po=e=>{const o=F(e);return[o,o?.getStore()]},xo=({relationshipId:e,relationships:o,rowComponent:t=Mo,getRowComponentProps:s,separator:d,debugIds:r},n,l)=>{const[I,u]=Po(o),i=I?.getLocalTableId(e),c=n(e,l,I);return Bo(R(c,(e=>yo(t,{...fo(s,e),key:e,tableId:i,rowId:e,store:u,debugIds:r}))),d,r,l)},So=e=>({checkpoints:o,checkpointComponent:t=Wo,getCheckpointComponentProps:s,separator:d,debugIds:r})=>{const n=z(o);return Bo(R(e(io(n)),(e=>yo(t,{...fo(s,e),key:e,checkpoints:n,checkpointId:e,debugIds:r}))),d)},fo=(e,o)=>C(e)?{}:e(o),To=({store:e,storesById:t,metrics:s,metricsById:d,indexes:r,indexesById:n,relationships:l,relationshipsById:I,queries:u,queriesById:i,checkpoints:c,checkpointsById:a,children:p})=>{const g=o(q);return yo(q.Provider,{value:ho((()=>[e??g[0],{...g[1],...t},s??g[2],{...g[3],...d},r??g[4],{...g[5],...n},l??g[6],{...g[7],...I},u??g[8],{...g[9],...i},c??g[10],{...g[11],...a}]),[e,t,s,d,r,n,l,I,u,i,c,a,g])},p)},Bo=(e,o,t,s)=>{const d=C(o)||!Array.isArray(e)?e:R(e,((e,t)=>t>0?[o,e]:e));return t?[s,":{",d,"}"]:d},Lo=({tableId:e,rowId:o,cellId:t,store:d,debugIds:r})=>Bo(s+(de(e,o,t,d)??s),void 0,r,t),Mo=({tableId:e,rowId:o,store:t,cellComponent:s=Lo,getCellComponentProps:d,separator:r,debugIds:n})=>Bo(R(se(e,o,t),(r=>yo(s,{...fo(d,r),key:r,tableId:e,rowId:o,cellId:r,store:t,debugIds:n}))),r,n,o),Vo=e=>vo(e,ee(e.tableId,e.store)),Ao=({cellId:e,descending:o,offset:t,limit:s,...d})=>vo(d,oe(d.tableId,e,o,t,s,d.store)),Eo=({store:e,tableComponent:o=Vo,getTableComponentProps:t,separator:s,debugIds:d})=>Bo(R($(e),(s=>yo(o,{...fo(t,s),key:s,tableId:s,store:e,debugIds:d}))),s),Fo=({valueId:e,store:o,debugIds:t})=>Bo(s+(le(e,o)??s),void 0,t,e),jo=({store:e,valueComponent:o=Fo,getValueComponentProps:t,separator:s,debugIds:d})=>Bo(R(ne(e),(s=>yo(o,{...fo(t,s),key:s,valueId:s,store:e,debugIds:d}))),s),zo=({metricId:e,metrics:o,debugIds:t})=>Bo(Ee(e,o)??s,void 0,t,e),Do=({indexId:e,sliceId:o,indexes:t,rowComponent:s=Mo,getRowComponentProps:d,separator:r,debugIds:n})=>{const l=E(t),I=l?.getStore(),u=l?.getTableId(e),i=De(e,o,l);return Bo(R(i,(e=>yo(s,{...fo(d,e),key:e,tableId:u,rowId:e,store:I,debugIds:n}))),r,n,o)},Go=({indexId:e,indexes:o,sliceComponent:t=Do,getSliceComponentProps:s,separator:d,debugIds:r})=>Bo(R(ze(e,o),(d=>yo(t,{...fo(s,d),key:d,indexId:e,sliceId:d,indexes:o,debugIds:r}))),d,r,e),Ho=({relationshipId:e,localRowId:o,relationships:t,rowComponent:s=Mo,getRowComponentProps:d,debugIds:r})=>{const[n,l]=Po(t),I=n?.getRemoteTableId(e),u=Ke(e,o,n);return Bo(C(I)||C(u)?null:yo(s,{...fo(d,u),key:u,tableId:I,rowId:u,store:l,debugIds:r}),void 0,r,o)},Jo=e=>xo(e,Ne,e.remoteRowId),Ko=e=>xo(e,Oe,e.firstRowId),No=({queryId:e,rowId:o,cellId:t,queries:d,debugIds:r})=>Bo(s+(oo(e,o,t,d)??s),void 0,r,t),Oo=({queryId:e,rowId:o,queries:t,resultCellComponent:s=No,getResultCellComponentProps:d,separator:r,debugIds:n})=>Bo(R(eo(e,o,t),(r=>yo(s,{...fo(d,r),key:r,queryId:e,rowId:o,cellId:r,queries:t,debugIds:n}))),r,n,o),Qo=e=>qo(e,Ze(e.queryId,e.queries)),Uo=({cellId:e,descending:o,offset:t,limit:s,...d})=>qo(d,$e(d.queryId,e,o,t,s,d.queries)),Wo=({checkpoints:e,checkpointId:o,debugIds:t})=>Bo(co(o,e)??s,void 0,t,o),Xo=So((e=>e[0])),Yo=So((e=>C(e[1])?[]:[e[1]])),Zo=So((e=>e[2]));export{Xo as BackwardCheckpointsView,Lo as CellView,Wo as CheckpointView,Yo as CurrentCheckpointView,Zo as ForwardCheckpointsView,Go as IndexView,Ko as LinkedRowsView,Jo as LocalRowsView,zo as MetricView,To as Provider,Ho as RemoteRowView,No as ResultCellView,Oo as ResultRowView,Uo as ResultSortedTableView,Qo as ResultTableView,Mo as RowView,Do as SliceView,Ao as SortedTableView,Vo as TableView,Eo as TablesView,Fo as ValueView,jo as ValuesView,vo as tableView,ce as useAddRowCallback,de as useCell,se as useCellIds,Te as useCellIdsListener,Be as useCellListener,co as useCheckpoint,io as useCheckpointIds,Co as useCheckpointIdsListener,mo as useCheckpointListener,M as useCheckpoints,uo as useCreateCheckpoints,je as useCreateIndexes,Ae as useCreateMetrics,ko as useCreatePersister,Xe as useCreateQueries,Je as useCreateRelationships,Y as useCreateStore,ke as useDelCellCallback,me as useDelRowCallback,Ce as useDelTableCallback,Re as useDelTablesCallback,he as useDelValueCallback,ye as useDelValuesCallback,po as useGoBackwardCallback,go as useGoForwardCallback,bo as useGoToCallback,T as useIndexes,Oe as useLinkedRowIds,We as useLinkedRowIdsListener,Ne as useLocalRowIds,Ue as useLocalRowIdsListener,Ee as useMetric,Fe as useMetricListener,f as useMetrics,L as useQueries,Ro as useRedoInformation,B as useRelationships,Ke as useRemoteRowId,Qe as useRemoteRowIdListener,oo as useResultCell,eo as useResultCellIds,lo as useResultCellIdsListener,Io as useResultCellListener,_e as useResultRow,Ze as useResultRowIds,so as useResultRowIdsListener,no as useResultRowListener,$e as useResultSortedRowIds,ro as useResultSortedRowIdsListener,Ye as useResultTable,to as useResultTableListener,te as useRow,ee as useRowIds,xe as useRowIdsListener,fe as useRowListener,pe as useSetCellCallback,ao as useSetCheckpointCallback,ae as useSetPartialRowCallback,be as useSetPartialValuesCallback,ie as useSetRowCallback,ue as useSetTableCallback,Ie as useSetTablesCallback,we as useSetValueCallback,ge as useSetValuesCallback,ze as useSliceIds,Ge as useSliceIdsListener,De as useSliceRowIds,He as useSliceRowIdsListener,oe as useSortedRowIds,Se as useSortedRowIdsListener,S as useStore,_ as useTable,$ as useTableIds,qe as useTableIdsListener,Pe as useTableListener,Z as useTables,ve as useTablesListener,wo as useUndoInformation,le as useValue,ne as useValueIds,Me as useValueIdsListener,Ve as useValueListener,re as useValues,Le as useValuesListener};
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e.includes(t),n=(e,t)=>e.forEach(t),s=e=>e.length,o=e=>0==s(e),r=(e,...t)=>e.push(...t),l=e=>e.pop(),i=e=>e.shift(),c=e=>null==e,d=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),f=e=>new Map(e),C=(e,t)=>e?.get(t),g=(e,t,n)=>c(n)?(p(e,t),e):e?.set(t,n),k=(e,t,n)=>(a(e,t)||g(e,t,n()),C(e,t)),v=(e,t,n,o,r=0)=>d((n?k:C)(e,t[r],r>s(t)-2?n:f),(l=>{if(r>s(t)-2)return o?.(l)&&g(e,t[r]),l;const i=v(l,t,n,o,r+1);return u(l)&&g(e,t[r]),i})),y=e=>new Set(Array.isArray(e)||c(e)?e:[e]),L=/^\d+$/,w=Object.freeze,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=f(),E=f(),V=1;const j=f(),m=f(),[A,B,I]=(e=>{let t;const[o,l]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{L.test(t)&&s(e)<1e3&&r(e,t)}]})(),a=f();return[(e,n,s,r=[],l=(()=>[]))=>{t??=_;const i=o(1);var c;return g(a,i,[e,n,s,r,l]),c=i,v(n,s??[""],y)?.add(c),i},(e,o,...l)=>n(((e,t=[""])=>{const o=[],l=(e,i)=>i==s(t)?r(o,e):null===t[i]?h(e,(e=>l(e,i+1))):n([t[i],null],(t=>l(C(e,t),i+1)));return l(e,0),o})(e,o),(e=>h(e,(e=>C(a,e)[0](t,...o??[],...l))))),e=>d(C(a,e),(([,t,n])=>(v(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),g(a,e),l(e),n))),e=>d(C(a,e),(([e,,o=[],r,l])=>{const i=(...d)=>{const a=s(d);a==s(o)?e(t,...d,...l(d)):c(o[a])?n(r[a]?.(...d)??[],(e=>i(...d,e))):i(...d,o[a])};i()}))]})(),M=f(),F=f(),O=[],W=[],$=(t,n)=>{V=0,e.transaction((()=>{const[s,o]=C(M,n);h(s,((n,s)=>h(n,((n,o)=>h(n,((n,r)=>((e,t,n,s,o)=>c(o)?e.delCell(t,n,s,!0):e.setCell(t,n,s,o))(e,s,o,r,n[t]))))))),h(o,((n,s)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(e,s,n[t])))})),V=1},q=e=>{g(M,e),g(F,e),B(m,[e])},D=(e,t)=>n(((e,t)=>e.splice(0,t))(e,t??s(e)),q),G=()=>D(O,s(O)-x),H=()=>d(b,(()=>{r(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=l(O),T=1},K=e.addCellListener(null,null,null,((e,t,n,s,o,r)=>{if(V){H();const e=k(z,t,f),l=k(e,n,f),i=k(l,s,(()=>[r,void 0]));i[1]=o,i[0]===o&&u(g(l,s))&&u(g(e,n))&&u(g(z,t))&&J(),U()}})),N=e.addValueListener(null,((e,t,n,s)=>{if(V){H();const e=k(E,t,(()=>[s,void 0]));e[1]=n,e[0]===n&&u(g(E,t))&&J(),U()}})),P=(e="")=>(c(b)&&(b=""+S++,g(M,b,[z,E]),Y(b,e),z=f(),E=f(),T=1),b),Q=()=>{o(O)||(((e,...t)=>{e.unshift(...t)})(W,P()),$(0,b),b=l(O),T=1)},R=()=>{o(W)||(r(O,b),b=i(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(F,e)!==t&&(g(F,e,t),B(m,[e])),_),Z=e=>a(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return t=e,h(F,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const n=t(O,e)?Q:t(W,e)?R:null;for(;!c(n)&&e!=b;)n();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,t)=>A(t,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),c(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=(e,t)=>e.includes(t),n=(e,t)=>e.forEach(t),s=e=>e.length,o=e=>0==s(e),r=(e,...t)=>e.push(...t),l=e=>e.pop(),i=e=>e.shift(),c=e=>null==e,d=(e,t,n)=>c(e)?n?.():t(e),a=(e,t)=>e?.has(t)??!1,u=e=>c(e)||0==(e=>e.size)(e),h=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),f=e=>new Map(e),C=(e,t)=>e?.get(t),g=(e,t,n)=>c(n)?(p(e,t),e):e?.set(t,n),k=(e,t,n)=>(a(e,t)||g(e,t,n()),C(e,t)),v=(e,t,n,o,r=0)=>d((n?k:C)(e,t[r],r>s(t)-2?n:f),(l=>{if(r>s(t)-2)return o?.(l)&&g(e,t[r]),l;const i=v(l,t,n,o,r+1);return u(l)&&g(e,t[r]),i})),y=e=>new Set(Array.isArray(e)||c(e)?e:[e]),L=/^\d+$/,w=Object.freeze,b=(e=>{const b=new WeakMap;return e=>(b.has(e)||b.set(e,(e=>{let b,S,T,x=100,z=f(),E=f(),V=1;const j=f(),m=f(),[A,B,I]=(e=>{let t;const[o,l]=(()=>{const e=[];let t=0;return[n=>(n?i(e):null)??""+t++,t=>{L.test(t)&&s(e)<1e3&&r(e,t)}]})(),a=f();return[(e,n,s,r=[],l=(()=>[]))=>{t??=_;const i=o(1);var c,d;return g(a,i,[e,n,s,r,l]),c=v(n,s??[""],y),d=i,c?.add(d),i},(e,o,...l)=>n(((e,t=[""])=>{const o=[],l=(e,i)=>i==s(t)?r(o,e):null===t[i]?h(e,(e=>l(e,i+1))):n([t[i],null],(t=>l(C(e,t),i+1)));return l(e,0),o})(e,o),(e=>h(e,(e=>C(a,e)[0](t,...o??[],...l))))),e=>d(C(a,e),(([,t,n])=>(v(t,n??[""],void 0,(t=>(p(t,e),u(t)?1:0))),g(a,e),l(e),n))),e=>d(C(a,e),(([e,,o=[],r,l])=>{const i=(...d)=>{const a=s(d);a==s(o)?e(t,...d,...l(d)):c(o[a])?n(r[a]?.(...d)??[],(e=>i(...d,e))):i(...d,o[a])};i()}))]})(),M=f(),F=f(),O=[],W=[],$=(t,n)=>{V=0,e.transaction((()=>{const[s,o]=C(M,n);h(s,((n,s)=>h(n,((n,o)=>h(n,((n,r)=>((e,t,n,s,o)=>c(o)?e.delCell(t,n,s,!0):e.setCell(t,n,s,o))(e,s,o,r,n[t]))))))),h(o,((n,s)=>((e,t,n)=>c(n)?e.delValue(t):e.setValue(t,n))(e,s,n[t])))})),V=1},q=e=>{g(M,e),g(F,e),B(m,[e])},D=(e,t)=>n(((e,t)=>e.splice(0,t))(e,t??s(e)),q),G=()=>D(O,s(O)-x),H=()=>d(b,(()=>{r(O,b),G(),D(W),b=void 0,T=1})),J=()=>{b=l(O),T=1},K=e.addCellListener(null,null,null,((e,t,n,s,o,r)=>{if(V){H();const e=k(z,t,f),l=k(e,n,f),i=k(l,s,(()=>[r,void 0]));i[1]=o,i[0]===o&&u(g(l,s))&&u(g(e,n))&&u(g(z,t))&&J(),U()}})),N=e.addValueListener(null,((e,t,n,s)=>{if(V){H();const e=k(E,t,(()=>[s,void 0]));e[1]=n,e[0]===n&&u(g(E,t))&&J(),U()}})),P=(e="")=>(c(b)&&(b=""+S++,g(M,b,[z,E]),Y(b,e),z=f(),E=f(),T=1),b),Q=()=>{o(O)||(((e,...t)=>{e.unshift(...t)})(W,P()),$(0,b),b=l(O),T=1)},R=()=>{o(W)||(r(O,b),b=i(W),$(1,b),T=1)},U=()=>{T&&(B(j),T=0)},X=e=>{const t=P(e);return U(),t},Y=(e,t)=>(Z(e)&&C(F,e)!==t&&(g(F,e,t),B(m,[e])),_),Z=e=>a(M,e),_={setSize:e=>(x=e,G(),_),addCheckpoint:X,setCheckpoint:Y,getStore:()=>e,getCheckpointIds:()=>[[...O],b,[...W]],forEachCheckpoint:e=>{return t=e,h(F,((e,n)=>t(n,e)));var t},hasCheckpoint:Z,getCheckpoint:e=>C(F,e),goBackward:()=>(Q(),U(),_),goForward:()=>(R(),U(),_),goTo:e=>{const n=t(O,e)?Q:t(W,e)?R:null;for(;!c(n)&&e!=b;)n();return U(),_},addCheckpointIdsListener:e=>A(e,j),addCheckpointListener:(e,t)=>A(t,m,[e]),delListener:e=>(I(e),_),clear:()=>(D(O),D(W),c(b)||q(b),b=void 0,S=0,X(),_),destroy:()=>{e.delListener(K),e.delListener(N)},getListenerStats:()=>({})};return w(_.clear())})(e)),b.get(e))})();e.createCheckpoints=b},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseCheckpoints={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",r=t(n),s=t(t),i=(e,t)=>e.forEach(t),o=e=>a(e,((e,t)=>e+t),0),c=e=>e.length,a=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,v=(e,t,n)=>h(e)?n?.():t(e),g=e=>Array.isArray(e),M=()=>{},p=e=>e.size,y=(e,t)=>e?.has(t)??!1,m=e=>h(e)||0==p(e),b=e=>[...e?.values()??[]],L=e=>e.clear(),w=(e,t)=>e?.forEach(t),T=(e,t)=>e?.delete(t),x=e=>new Map(e),E=(e,t)=>e?.get(t),I=(e,t)=>w(e,((e,n)=>t(n,e))),R=(e,t,n)=>h(n)?(T(e,t),e):e?.set(t,n),S=(e,t,n)=>(y(e,t)||R(e,t,n()),E(e,t)),j=(e,t,n,r,s=0)=>v((n?S:E)(e,t[s],s>c(t)-2?n:x),(i=>{if(s>c(t)-2)return r?.(i)&&R(e,t[s]),i;const o=j(i,t,n,r,s+1);return m(i)&&R(e,t[s]),o})),k=x([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),z=e=>new Set(g(e)||h(e)?e:[e]),A=(e,t)=>e?.add(t),D=/^\d+$/,N=Object.freeze,B=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=x(),[a,l,u,B,C,F,O,,W,$,q]=((e,t,r)=>{const s=e.hasRow,o=x(),a=x(),d=x(),l=x(),u=x(),f=(t,n,...r)=>{const s=S(u,t,z);return i(r,(t=>A(s,t)&&n&&e.callListener(t))),r},M=(t,...n)=>v(E(u,t),(r=>{i(0==c(n)?b(r):n,(t=>{e.delListener(t),T(r,t)})),m(r)&&R(u,t)})),p=(e,n)=>{R(o,e,n),y(a,e)||(R(a,e,t()),R(d,e,x()),R(l,e,x()))},j=e=>{R(o,e),R(a,e),R(d,e),R(l,e),M(e)};return[()=>e,()=>[...o?.keys()??[]],e=>I(a,e),e=>y(a,e),e=>E(o,e),e=>E(a,e),(e,t)=>R(a,e,t),p,(t,r,o,a,u)=>{p(t,r);const v=x(),m=x(),b=E(d,t),T=E(l,t),S=t=>{const i=n=>e.getCell(r,t,n),o=E(b,t),d=s(r,t)?(l=a(i,t),isNaN(l)||h(l)||!0===l||!1===l||l===n?void 0:1*l):void 0;var l,f,M,p;if(o===d||g(o)&&g(d)&&(M=d,c(f=o)===c(M)&&(p=(e,t)=>M[t]===e,f.every(p)))||R(v,t,[o,d]),!h(u)){const e=E(T,t),n=s(r,t)?u(i,t):void 0;e!=n&&R(m,t,n)}},j=e=>{o((()=>{w(v,(([,e],t)=>R(b,t,e))),w(m,((e,t)=>R(T,t,e)))}),v,m,b,T,e),L(v),L(m)};I(b,S),e.hasTable(r)&&i(e.getRowIds(r),(e=>{y(b,e)||S(e)})),j(!0),M(t),f(t,0,e.addRowListener(r,null,((e,t,n)=>S(n))),e.addTableListener(r,(()=>j())))},j,()=>I(u,j),f,M]})(e,M),[G,H,J]=(e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[r=>(r?e.shift():null)??n+t++,t=>{D.test(t)&&c(e)<1e3&&d(e,t)}]})(),o=x();return[(e,s,i,c=[],a=(()=>[]))=>{t??=K;const d=r(1);return R(o,d,[e,s,i,c,a]),A(j(s,i??[n],z),d),d},(e,r,...s)=>i(((e,t=[n])=>{const r=[],s=(e,n)=>n==c(t)?d(r,e):null===t[n]?w(e,(e=>s(e,n+1))):i([t[n],null],(t=>s(E(e,t),n+1)));return s(e,0),r})(e,r),(e=>w(e,(e=>E(o,e)[0](t,...r??[],...s))))),e=>v(E(o,e),(([,t,r])=>(j(t,r??[n],void 0,(t=>(T(t,e),m(t)?1:0))),R(o,e),s(e),r))),e=>v(E(o,e),(([e,,n=[],r,s])=>{const o=(...a)=>{const d=c(a);d==c(n)?e(t,...a,...s(a)):h(n[d])?i(r[d]?.(...a)??[],(e=>o(...a,e))):o(...a,n[d])};o()}))]})(),K={setMetricDefinition:(e,n,i,c,a,d,l)=>{const u=t(i)==s?[i,a,d,l]:E(k,i)??E(k,"sum");return W(e,n,((t,n,r,s,i,c)=>{const a=F(e),d=p(s);c||=h(a),t();let l=((e,t,n,r,s,i=!1)=>{if(m(n))return;const[o,c,a,d]=s;return i||=h(e),w(r,(([n,r])=>{i||(e=h(n)?c?.(e,r,t++):h(r)?a?.(e,n,t--):d?.(e,r,n,t),i||=h(e))})),i?o(b(n),p(n)):e})(a,d,s,n,u,c);f(l)||(l=void 0),l!=a&&(O(e,l),H(o,[e],l,a))}),(1,t(v=c)==r?e=>e(v):v??(()=>1))),K;var v},delMetricDefinition:e=>($(e),K),getStore:a,getMetricIds:l,forEachMetric:u,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,o,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return N(K)})(e)),o.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",r=t(n),s=t(t),i=(e,t)=>e.forEach(t),o=e=>c(e,((e,t)=>e+t),0),a=e=>e.length,c=(e,t,n)=>e.reduce(t,n),d=(e,...t)=>e.push(...t),l=Math.max,u=Math.min,f=isFinite,h=e=>null==e,v=(e,t,n)=>h(e)?n?.():t(e),g=e=>Array.isArray(e),M=()=>{},p=e=>e.size,y=(e,t)=>e?.has(t)??!1,m=e=>h(e)||0==p(e),b=e=>[...e?.values()??[]],L=e=>e.clear(),w=(e,t)=>e?.forEach(t),T=(e,t)=>e?.delete(t),x=e=>new Map(e),E=(e,t)=>e?.get(t),I=(e,t)=>w(e,((e,n)=>t(n,e))),R=(e,t,n)=>h(n)?(T(e,t),e):e?.set(t,n),S=(e,t,n)=>(y(e,t)||R(e,t,n()),E(e,t)),j=(e,t,n,r,s=0)=>v((n?S:E)(e,t[s],s>a(t)-2?n:x),(i=>{if(s>a(t)-2)return r?.(i)&&R(e,t[s]),i;const o=j(i,t,n,r,s+1);return m(i)&&R(e,t[s]),o})),k=x([["avg",[(e,t)=>o(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,r)=>e+(t-n)/r]],["max",[e=>l(...e),(e,t)=>l(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:l(t,e)]],["min",[e=>u(...e),(e,t)=>u(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:u(t,e)]],["sum",[e=>o(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),z=e=>new Set(g(e)||h(e)?e:[e]),A=(e,t)=>e?.add(t),D=/^\d+$/,N=Object.freeze,B=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=x(),[c,l,u,B,C,F,O,,W,$,q]=((e,t,r)=>{const s=e.hasRow,o=x(),c=x(),d=x(),l=x(),u=x(),f=(t,n,...r)=>{const s=S(u,t,z);return i(r,(t=>A(s,t)&&n&&e.callListener(t))),r},M=(t,...n)=>v(E(u,t),(r=>{i(0==a(n)?b(r):n,(t=>{e.delListener(t),T(r,t)})),m(r)&&R(u,t)})),p=(e,n)=>{R(o,e,n),y(c,e)||(R(c,e,t()),R(d,e,x()),R(l,e,x()))},j=e=>{R(o,e),R(c,e),R(d,e),R(l,e),M(e)};return[()=>e,()=>{return e=o,[...e?.keys()??[]];var e},e=>I(c,e),e=>y(c,e),e=>E(o,e),e=>E(c,e),(e,t)=>R(c,e,t),p,(t,r,o,c,u)=>{p(t,r);const v=x(),m=x(),b=E(d,t),T=E(l,t),S=t=>{const i=n=>e.getCell(r,t,n),o=E(b,t),d=s(r,t)?(l=c(i,t),isNaN(l)||h(l)||!0===l||!1===l||l===n?void 0:1*l):void 0;var l,f,M,p;if(o===d||g(o)&&g(d)&&(M=d,a(f=o)===a(M)&&(p=(e,t)=>M[t]===e,f.every(p)))||R(v,t,[o,d]),!h(u)){const e=E(T,t),n=s(r,t)?u(i,t):void 0;e!=n&&R(m,t,n)}},j=e=>{o((()=>{w(v,(([,e],t)=>R(b,t,e))),w(m,((e,t)=>R(T,t,e)))}),v,m,b,T,e),L(v),L(m)};I(b,S),e.hasTable(r)&&i(e.getRowIds(r),(e=>{y(b,e)||S(e)})),j(!0),M(t),f(t,0,e.addRowListener(r,null,((e,t,n)=>S(n))),e.addTableListener(r,(()=>j())))},j,()=>I(u,j),f,M]})(e,M),[G,H,J]=(e=>{let t;const[r,s]=(()=>{const e=[];let t=0;return[r=>(r?e.shift():null)??n+t++,t=>{D.test(t)&&a(e)<1e3&&d(e,t)}]})(),o=x();return[(e,s,i,a=[],c=(()=>[]))=>{t??=K;const d=r(1);return R(o,d,[e,s,i,a,c]),A(j(s,i??[n],z),d),d},(e,r,...s)=>i(((e,t=[n])=>{const r=[],s=(e,n)=>n==a(t)?d(r,e):null===t[n]?w(e,(e=>s(e,n+1))):i([t[n],null],(t=>s(E(e,t),n+1)));return s(e,0),r})(e,r),(e=>w(e,(e=>E(o,e)[0](t,...r??[],...s))))),e=>v(E(o,e),(([,t,r])=>(j(t,r??[n],void 0,(t=>(T(t,e),m(t)?1:0))),R(o,e),s(e),r))),e=>v(E(o,e),(([e,,n=[],r,s])=>{const o=(...c)=>{const d=a(c);d==a(n)?e(t,...c,...s(c)):h(n[d])?i(r[d]?.(...c)??[],(e=>o(...c,e))):o(...c,n[d])};o()}))]})(),K={setMetricDefinition:(e,n,i,a,c,d,l)=>{const u=t(i)==s?[i,c,d,l]:E(k,i)??E(k,"sum");return W(e,n,((t,n,r,s,i,a)=>{const c=F(e),d=p(s);a||=h(c),t();let l=((e,t,n,r,s,i=!1)=>{if(m(n))return;const[o,a,c,d]=s;return i||=h(e),w(r,(([n,r])=>{i||(e=h(n)?a?.(e,r,t++):h(r)?c?.(e,n,t--):d?.(e,r,n,t),i||=h(e))})),i?o(b(n),p(n)):e})(c,d,s,n,u,a);f(l)||(l=void 0),l!=c&&(O(e,l),H(o,[e],l,c))}),(1,t(v=a)==r?e=>e(v):v??(()=>1))),K;var v},delMetricDefinition:e=>($(e),K),getStore:c,getMetricIds:l,forEachMetric:u,hasMetric:B,getTableId:C,getMetric:F,addMetricListener:(e,t)=>G(t,o,[e]),delListener:e=>(J(e),K),destroy:q,getListenerStats:()=>({})};return N(K)})(e)),o.get(e))})();e.createMetrics=B},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMetrics={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(!0),r=t(0),o=t(t),i="Listener",l=(e,t)=>e.every(t),a=(e,t)=>e.forEach(t),d=e=>f(e,((e,t)=>e+t),0),c=e=>e.length,u=e=>0==c(e),f=(e,t,n)=>e.reduce(t,n),h=(e,...t)=>e.push(...t),g=Math.max,w=Math.min,v=isFinite,R=e=>null==e,y=(e,t,n)=>R(e)?n?.():t(e),L=e=>t(e)==o,p=e=>Array.isArray(e),T=()=>{},b=e=>e.size,m=(e,t)=>e?.has(t)??!1,C=e=>R(e)||0==b(e),I=e=>[...e?.values()??[]],Q=e=>e.clear(),S=(e,t)=>e?.forEach(t),x=(e,t)=>e?.delete(t),E=e=>new Map(e),M=(e,t)=>e?.get(t),j=(e,t)=>S(e,((e,n)=>t(n,e))),D=(e,t,n)=>R(n)?(x(e,t),e):e?.set(t,n),F=(e,t,n)=>(m(e,t)||D(e,t,n()),M(e,t)),k=(e,t,n,s,r=0)=>y((n?F:M)(e,t[r],r>c(t)-2?n:E),(o=>{if(r>c(t)-2)return s?.(o)&&D(e,t[r]),o;const i=k(o,t,n,s,r+1);return C(o)&&D(e,t[r]),i})),z=e=>new Set(p(e)||R(e)?e:[e]),A=(e,t)=>e?.add(t),W=E([["avg",[(e,t)=>d(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=>g(...e),(e,t)=>g(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:g(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=>d(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),B=Object,O=B.freeze,q=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=e.createStore,[d,f,g,w,q,,,G,,H,J,K,N]=((e,t,n)=>{const s=e.hasRow,r=E(),o=E(),i=E(),d=E(),f=E(),h=(t,n,...s)=>{const r=F(f,t,z);return a(s,(t=>A(r,t)&&n&&e.callListener(t))),s},g=(t,...n)=>y(M(f,t),(s=>{a(u(n)?I(s):n,(t=>{e.delListener(t),x(s,t)})),C(s)&&D(f,t)})),w=(e,t)=>{D(r,e,t),m(o,e)||(D(o,e,!0),D(i,e,E()),D(d,e,E()))},v=e=>{D(r,e),D(o,e),D(i,e),D(d,e),g(e)};return[()=>e,()=>[...r?.keys()??[]],e=>j(o,e),e=>m(o,e),e=>M(r,e),e=>M(o,e),(e,t)=>D(o,e,t),w,(t,r,o,u,f)=>{w(t,r);const v=E(),y=E(),L=M(i,t),T=M(d,t),b=t=>{const o=n=>e.getCell(r,t,n),i=M(L,t),a=s(r,t)?n(u(o,t)):void 0;var d,h;if(i===a||p(i)&&p(a)&&(h=a,c(d=i)===c(h)&&l(d,((e,t)=>h[t]===e)))||D(v,t,[i,a]),!R(f)){const e=M(T,t),n=s(r,t)?f(o,t):void 0;e!=n&&D(y,t,n)}},C=e=>{o((()=>{S(v,(([,e],t)=>D(L,t,e))),S(y,((e,t)=>D(T,t,e)))}),v,y,L,T,e),Q(v),Q(y)};j(L,b),e.hasTable(r)&&a(e.getRowIds(r),(e=>{m(L,e)||b(e)})),C(!0),g(t),h(t,0,e.addRowListener(r,null,((e,t,n)=>b(n))),e.addTableListener(r,(()=>C())))},v,()=>j(f,v),h,g]})(e,0,T),P=o(),U=o(),V=E(),X=(e,t,...n)=>a(n,(n=>A(F(F(V,t,E),e,z),n))),Y=e=>{y(M(V,e),(e=>{j(e,((e,t)=>S(t,(t=>e.delListener(t))))),Q(e)})),a([U,P],(t=>t.delTable(e)))},Z=(e,t,n)=>X(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),$={setQueryDefinition:(o,i,d)=>{G(o,i),Y(o);const f=[],g=[[null,[i,null,null,[],E()]]],w=[],p=[],T=[];d({select:(e,t)=>{const n=L(e)?[c(f)+"",e]:[R(t)?e:t,n=>n(e,t)];return h(f,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=R(n)||L(t)?null:t,r=R(s)?t:n,o=[e,[e,s,L(r)?r:e=>e(r),[],E()]];return h(g,o),{as:e=>o[0]=e}},where:(e,t,n)=>h(w,L(e)?e:R(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,L(t)?[t,n,s,r]:M(W,t)??[(e,t)=>t]]];return h(p,o),{as:e=>o[0]=e}},having:(e,t)=>h(T,L(e)?e:n=>n(e)===t)});const Q=E(f);if(C(Q))return $;const B=E(g);j(B,((e,[,t])=>y(M(B,t),(({3:t})=>R(e)?0:h(t,e)))));const O=E(p);let q=P;if(C(O)&&u(T))q=U;else{Z(o,q,U);const e=E();j(O,((t,[n,s])=>A(F(e,n,z),[t,s])));const i=z();j(Q,(t=>m(e,t)?0:A(i,t)));const a=E(),d=(i,a,d,c)=>y(i,(([u,f,h,g])=>{j(a,((o,[i])=>{const l=F(u,o,E),a=M(l,d),f=c?void 0:i;if(a!==f){const i=z([[a,f]]),c=b(l);D(l,d,f),S(M(e,o),(([e,o])=>{const a=((e,t,n,s,r,o=!1)=>{if(C(n))return;const[i,l,a,d]=r;return o||=R(e),S(s,(([n,s])=>{o||(e=R(n)?l?.(e,s,t++):R(s)?a?.(e,n,t--):d?.(e,s,n,t),o||=R(e))})),o?i(I(n),b(n)):e})(g[e],c,l,i,o);g[e]=R((e=>{const o=t(e);return(e=>e==n||e==s)(o)||o==r&&v(e)?o:void 0})(a))?null:a}))}})),C(f)||!l(T,(e=>e((e=>g[e]))))?U.delRow(o,h):R(h)?i[2]=U.addRow(o,g):U.setRow(o,h,g)}));X(q,o,q.addRowListener(o,null,((t,n,s,r)=>{const l=[],c=[],u=E(),f=q.hasRow(o,s);let g=!f;S(i,(e=>{const[t,n,i]=r(o,s,e);h(l,n),h(c,i),g||=t})),j(e,(e=>{const[t,,n]=r(o,s,e);(g||t)&&D(u,e,[n])})),g&&d(k(a,l,void 0,(([,e])=>(x(e,s),C(e)))),u,s,1),f&&d(k(a,c,(()=>{const e={};return S(i,(t=>e[t]=q.getCell(o,s,t))),[E(),z(),void 0,e]}),(([,e])=>{A(e,s)})),u,s)})))}Z(o,e,q);const H=(t,n,s,r)=>{const d=t=>e.getCell(n,s,t);a(r,(n=>{const[s,,r,i,l]=M(B,n),a=r?.(d,t),[c,u]=M(l,t)??[];a!=c&&(R(u)||N(o,u),D(l,t,R(a)?null:[a,...K(o,1,e.addRowListener(s,a,(()=>H(t,s,a,i))))]))})),(t=>{const n=(n,s)=>e.getCell(...R(s)?[i,t,n]:n===i?[i,t,s]:[M(B,n)?.[0],M(M(B,n)?.[4],t)?.[0],s]);q.transaction((()=>l(w,(e=>e(n)))?j(Q,((e,s)=>((e,t,n,s,r)=>R(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(q,o,t,e,s(n,t)))):q.delRow(o,t)))})(t)},{3:J}=M(B,null);return q.transaction((()=>K(o,1,e.addRowListener(i,null,((t,n,s)=>{e.hasRow(i,s)?H(s,i,s,J):(q.delRow(o,s),S(B,(({4:e})=>y(M(e,s),(([,t])=>{N(o,t),D(e,s)})))))}))))),$},delQueryDefinition:e=>(Y(e),H(e),$),getStore:d,getQueryIds:f,forEachQuery:g,hasQuery:w,getTableId:q,delListener:e=>(U.delListener(e),$),destroy:J,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=U.getListenerStats();return s}};var _,ee;return _={Table:[1,1],RowIds:[0,1],SortedRowIds:[0,5],Row:[1,2],CellIds:[0,2],Cell:[1,3]},ee=([e,t],n)=>{a(e?["get","has","forEach"]:["get"],(e=>$[e+"Result"+n]=(...t)=>U[e+n](...t))),$["addResult"+n+i]=(...e)=>{return U["add"+n+i](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t]($,...s)));var s,r}},((e,t)=>{e.map(t)})(B.entries(_),(([e,t])=>ee(t,e))),O($)})(e)),o.get(e))})();e.createQueries=q},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),s=t(!0),r=t(0),o=t(t),i="Listener",a="Result",l="Ids",d="Row",c=d+l,u="Sorted"+d+l,f="Cell",h=f+l,g=(e,t)=>e.every(t),v=(e,t)=>e.forEach(t),w=e=>R(e,((e,t)=>e+t),0),y=e=>e.length,L=e=>0==y(e),R=(e,t,n)=>e.reduce(t,n),p=(e,...t)=>e.push(...t),T=Math.max,b=Math.min,m=isFinite,C=e=>null==e,Q=(e,t,n)=>C(e)?n?.():t(e),S=e=>t(e)==o,x=e=>Array.isArray(e),I=()=>{},E=e=>e.size,M=(e,t)=>e?.has(t)??!1,j=e=>C(e)||0==E(e),D=e=>[...e?.values()??[]],F=e=>e.clear(),k=(e,t)=>e?.forEach(t),z=(e,t)=>e?.delete(t),A=e=>new Map(e),W=(e,t)=>e?.get(t),B=(e,t)=>k(e,((e,n)=>t(n,e))),O=(e,t,n)=>C(n)?(z(e,t),e):e?.set(t,n),q=(e,t,n)=>(M(e,t)||O(e,t,n()),W(e,t)),G=(e,t,n,s,r=0)=>Q((n?q:W)(e,t[r],r>y(t)-2?n:A),(o=>{if(r>y(t)-2)return s?.(o)&&O(e,t[r]),o;const i=G(o,t,n,s,r+1);return j(o)&&O(e,t[r]),i})),H=e=>new Set(x(e)||C(e)?e:[e]),J=(e,t)=>e?.add(t),K=A([["avg",[(e,t)=>w(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["min",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["sum",[e=>w(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),N=Object,P=N.freeze,U=(e=>{const o=new WeakMap;return e=>(o.has(e)||o.set(e,(e=>{const o=e.createStore,[l,w,R,T,b,,,U,,V,X,Y,Z]=((e,t,n)=>{const s=e.hasRow,r=A(),o=A(),i=A(),a=A(),l=A(),d=(t,n,...s)=>{const r=q(l,t,H);return v(s,(t=>J(r,t)&&n&&e.callListener(t))),s},c=(t,...n)=>Q(W(l,t),(s=>{v(L(n)?D(s):n,(t=>{e.delListener(t),z(s,t)})),j(s)&&O(l,t)})),u=(e,t)=>{O(r,e,t),M(o,e)||(O(o,e,!0),O(i,e,A()),O(a,e,A()))},f=e=>{O(r,e),O(o,e),O(i,e),O(a,e),c(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>B(o,e),e=>M(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>O(o,e,t),u,(t,r,o,l,f)=>{u(t,r);const h=A(),w=A(),L=W(i,t),R=W(a,t),p=t=>{const o=n=>e.getCell(r,t,n),i=W(L,t),a=s(r,t)?n(l(o,t)):void 0;var d,c;if(i===a||x(i)&&x(a)&&(c=a,y(d=i)===y(c)&&g(d,((e,t)=>c[t]===e)))||O(h,t,[i,a]),!C(f)){const e=W(R,t),n=s(r,t)?f(o,t):void 0;e!=n&&O(w,t,n)}},T=e=>{o((()=>{k(h,(([,e],t)=>O(L,t,e))),k(w,((e,t)=>O(R,t,e)))}),h,w,L,R,e),F(h),F(w)};B(L,p),e.hasTable(r)&&v(e.getRowIds(r),(e=>{M(L,e)||p(e)})),T(!0),c(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>p(n))),e.addTableListener(r,(()=>T())))},f,()=>B(l,f),d,c]})(e,0,I),$=o(),_=o(),ee=A(),te=(e,t,...n)=>v(n,(n=>J(q(q(ee,t,A),e,H),n))),ne=e=>{Q(W(ee,e),(e=>{B(e,((e,t)=>k(t,(t=>e.delListener(t))))),F(e)})),v([_,$],(t=>t.delTable(e)))},se=(e,t,n)=>te(t,e,t.addWillFinishTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),re={setQueryDefinition:(o,i,a)=>{U(o,i),ne(o);const l=[],d=[[null,[i,null,null,[],A()]]],c=[],u=[],f=[];a({select:(e,t)=>{const n=S(e)?[y(l)+"",e]:[C(t)?e:t,n=>n(e,t)];return p(l,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=C(n)||S(t)?null:t,r=C(s)?t:n,o=[e,[e,s,S(r)?r:e=>e(r),[],A()]];return p(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>p(c,S(e)?e:C(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,S(t)?[t,n,s,r]:W(K,t)??[(e,t)=>t]]];return p(u,o),{as:e=>o[0]=e}},having:(e,t)=>p(f,S(e)?e:n=>n(e)===t)});const h=A(l);if(j(h))return re;const w=A(d);B(w,((e,[,t])=>Q(W(w,t),(({3:t})=>C(e)?0:p(t,e)))));const R=A(u);let T=$;if(j(R)&&L(f))T=_;else{se(o,T,_);const e=A();B(R,((t,[n,s])=>J(q(e,n,H),[t,s])));const i=H();B(h,(t=>M(e,t)?0:J(i,t)));const a=A(),l=(i,a,l,d)=>Q(i,(([c,u,h,v])=>{B(a,((o,[i])=>{const a=q(c,o,A),u=W(a,l),f=d?void 0:i;if(u!==f){const i=H([[u,f]]),d=E(a);O(a,l,f),k(W(e,o),(([e,o])=>{const l=((e,t,n,s,r,o=!1)=>{if(j(n))return;const[i,a,l,d]=r;return o||=C(e),k(s,(([n,s])=>{o||(e=C(n)?a?.(e,s,t++):C(s)?l?.(e,n,t--):d?.(e,s,n,t),o||=C(e))})),o?i(D(n),E(n)):e})(v[e],d,a,i,o);v[e]=C((e=>{const o=t(e);return(e=>e==n||e==s)(o)||o==r&&m(e)?o:void 0})(l))?null:l}))}})),j(u)||!g(f,(e=>e((e=>v[e]))))?_.delRow(o,h):C(h)?i[2]=_.addRow(o,v):_.setRow(o,h,v)}));te(T,o,T.addRowListener(o,null,((t,n,s,r)=>{const d=[],c=[],u=A(),f=T.hasRow(o,s);let h=!f;k(i,(e=>{const[t,n,i]=r(o,s,e);p(d,n),p(c,i),h||=t})),B(e,(e=>{const[t,,n]=r(o,s,e);(h||t)&&O(u,e,[n])})),h&&l(G(a,d,void 0,(([,e])=>(z(e,s),j(e)))),u,s,1),f&&l(G(a,c,(()=>{const e={};return k(i,(t=>e[t]=T.getCell(o,s,t))),[A(),H(),void 0,e]}),(([,e])=>{J(e,s)})),u,s)})))}se(o,e,T);const b=(t,n,s,r)=>{const a=t=>e.getCell(n,s,t);v(r,(n=>{const[s,,r,i,l]=W(w,n),d=r?.(a,t),[c,u]=W(l,t)??[];d!=c&&(C(u)||Z(o,u),O(l,t,C(d)?null:[d,...Y(o,1,e.addRowListener(s,d,(()=>b(t,s,d,i))))]))})),(t=>{const n=(n,s)=>e.getCell(...C(s)?[i,t,n]:n===i?[i,t,s]:[W(w,n)?.[0],W(W(w,n)?.[4],t)?.[0],s]);T.transaction((()=>g(c,(e=>e(n)))?B(h,((e,s)=>((e,t,n,s,r)=>C(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(T,o,t,e,s(n,t)))):T.delRow(o,t)))})(t)},{3:x}=W(w,null);return T.transaction((()=>Y(o,1,e.addRowListener(i,null,((t,n,s)=>{e.hasRow(i,s)?b(s,i,s,x):(T.delRow(o,s),k(w,(({4:e})=>Q(W(e,s),(([,t])=>{Z(o,t),O(e,s)})))))}))))),re},delQueryDefinition:e=>(ne(e),V(e),re),getStore:l,getQueryIds:w,forEachQuery:R,hasQuery:T,getTableId:b,delListener:e=>(_.delListener(e),re),destroy:X,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=_.getListenerStats();return s}};var oe,ie;return oe={Table:[1,1],[c]:[0,1],[u]:[0,5],[d]:[1,2],[h]:[0,2],[f]:[1,3]},ie=([e,t],n)=>{v(e?["get","has","forEach"]:["get"],(e=>re[e+a+n]=(...t)=>_[e+n](...t))),re["add"+a+n+i]=(...e)=>{return _["add"+n+i](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](re,...s)));var s,r}},((e,t)=>{e.map(t)})(N.entries(oe),(([e,t])=>ie(t,e))),P(re)})(e)),o.get(e))})();e.createQueries=U},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseQueries={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=(e,t)=>e.forEach(t),r=e=>e.length,i=(e,...t)=>e.push(...t),a=e=>null==e,l=(e,t,n)=>a(e)?n?.():t(e),d=e=>Array.isArray(e),c=(e,t)=>e?.has(t)??!1,f=e=>a(e)||0==(e=>e.size)(e),u=e=>[...e?.values()??[]],h=e=>e.clear(),R=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),g=e=>new Map(e),L=(e,t)=>e?.get(t),w=(e,t)=>R(e,((e,n)=>t(n,e))),y=(e,t,n)=>a(n)?(p(e,t),e):e?.set(t,n),I=(e,t,n)=>(c(e,t)||y(e,t,n()),L(e,t)),v=(e,t,n,s,o=0)=>l((n?I:L)(e,t[o],o>r(t)-2?n:g),(i=>{if(o>r(t)-2)return s?.(i)&&y(e,t[o]),i;const a=v(i,t,n,s,o+1);return f(i)&&y(e,t[o]),a})),b=e=>new Set(d(e)||a(e)?e:[e]),T=(e,t)=>e?.add(t),m=/^\d+$/,k=Object.freeze,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=g(),x=g(),S=g(),j=g(),[z,A,D,M,B,C,,,O,W,$]=((e,t,s)=>{const i=e.hasRow,v=g(),m=g(),k=g(),E=g(),x=g(),S=(t,n,...s)=>{const r=I(x,t,b);return o(s,(t=>T(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>l(L(x,t),(s=>{o(0==r(n)?u(s):n,(t=>{e.delListener(t),p(s,t)})),f(s)&&y(x,t)})),z=(e,t)=>{y(v,e,t),c(m,e)||(y(m,e,[g(),g(),g(),g()]),y(k,e,g()),y(E,e,g()))},A=e=>{y(v,e),y(m,e),y(k,e),y(E,e),j(e)};return[()=>e,()=>[...v?.keys()??[]],e=>w(m,e),e=>c(m,e),e=>L(v,e),e=>L(m,e),(e,t)=>y(m,e,t),z,(t,s,l,f,u)=>{z(t,s);const p=g(),I=g(),v=L(k,t),b=L(E,t),T=t=>{const o=n=>e.getCell(s,t,n),l=L(v,t),c=i(s,t)?(h=f(o,t),a(h)?void 0:h+n):void 0;var h,R,g,w;if(l===c||d(l)&&d(c)&&(g=c,r(R=l)===r(g)&&(w=(e,t)=>g[t]===e,R.every(w)))||y(p,t,[l,c]),!a(u)){const e=L(b,t),n=i(s,t)?u(o,t):void 0;e!=n&&y(I,t,n)}},m=e=>{l((()=>{R(p,(([,e],t)=>y(v,t,e))),R(I,((e,t)=>y(b,t,e)))}),p,I,v,b,e),h(p),h(I)};w(v,T),e.hasTable(s)&&o(e.getRowIds(s),(e=>{c(v,e)||T(e)})),m(!0),j(t),S(t,0,e.addRowListener(s,null,((e,t,n)=>T(n))),e.addTableListener(s,(()=>m())))},A,()=>w(x,A),S,j]})(e),[q,F,G]=(e=>{let t;const[s,d]=(()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??n+t++,t=>{m.test(t)&&r(e)<1e3&&i(e,t)}]})(),c=g();return[(e,o,r,i=[],a=(()=>[]))=>{t??=N;const l=s(1);return y(c,l,[e,o,r,i,a]),T(v(o,r??[n],b),l),l},(e,s,...a)=>o(((e,t=[n])=>{const s=[],a=(e,n)=>n==r(t)?i(s,e):null===t[n]?R(e,(e=>a(e,n+1))):o([t[n],null],(t=>a(L(e,t),n+1)));return a(e,0),s})(e,s),(e=>R(e,(e=>L(c,e)[0](t,...s??[],...a))))),e=>l(L(c,e),(([,t,s])=>(v(t,s??[n],void 0,(t=>(p(t,e),f(t)?1:0))),y(c,e),d(e),s))),e=>l(L(c,e),(([e,,n=[],s,i])=>{const l=(...d)=>{const c=r(d);c==r(n)?e(t,...d,...i(d)):a(n[c])?o(s[c]?.(...d)??[],(e=>l(...d,e))):l(...d,n[c])};l()}))]})(),H=(e,t,n)=>l(C(e),(([s,,o])=>{if(!c(o,t)){const r=b();if(B(e)!=K(e))T(r,t);else{let e=t;for(;!a(e)&&!c(r,e);)T(r,e),e=L(s,e)}if(n)return r;y(o,t,r)}return L(o,t)})),J=(e,t)=>l(C(e),(([,,e])=>y(e,t))),K=e=>L(E,e),N={setRelationshipDefinition:(e,o,r,i)=>{return y(E,e,r),O(e,o,((t,n)=>{const s=b(),o=b(),r=b(),[i,d]=C(e);R(n,(([t,n],u)=>{a(t)||(T(o,t),l(L(d,t),(e=>{p(e,u),f(e)&&y(d,t)}))),a(n)||(T(o,n),c(d,n)||y(d,n,b()),T(L(d,n),u)),T(s,u),y(i,u,n),w(L(j,e),(t=>{c(H(e,t),u)&&T(r,t)}))})),t(),R(s,(t=>F(x,[e,t]))),R(o,(t=>F(S,[e,t]))),R(r,(t=>{J(e,t),F(j,[e,t])}))}),t(d=i)==s?e=>e(d):d??(()=>n)),N;var d},delRelationshipDefinition:e=>(y(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:t=>D((n=>t(n,(t=>e.forEachRow(B(n),t))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,t)=>L(C(e)?.[0],t),getLocalRowIds:(e,t)=>u(L(C(e)?.[1],t)),getLinkedRowIds:(e,t)=>a(C(e))?[t]:u(H(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>q(n,x,[e,t]),addLocalRowIdsListener:(e,t,n)=>q(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(H(e,t),q(n,j,[e,t])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return k(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n="",s=t(n),o=(e,t)=>e.forEach(t),r=e=>e.length,i=(e,...t)=>e.push(...t),a=e=>null==e,l=(e,t,n)=>a(e)?n?.():t(e),d=e=>Array.isArray(e),c=(e,t)=>e?.has(t)??!1,f=e=>a(e)||0==(e=>e.size)(e),u=e=>[...e?.values()??[]],h=e=>e.clear(),R=(e,t)=>e?.forEach(t),p=(e,t)=>e?.delete(t),g=e=>new Map(e),L=(e,t)=>e?.get(t),w=(e,t)=>R(e,((e,n)=>t(n,e))),y=(e,t,n)=>a(n)?(p(e,t),e):e?.set(t,n),v=(e,t,n)=>(c(e,t)||y(e,t,n()),L(e,t)),I=(e,t,n,s,o=0)=>l((n?v:L)(e,t[o],o>r(t)-2?n:g),(i=>{if(o>r(t)-2)return s?.(i)&&y(e,t[o]),i;const a=I(i,t,n,s,o+1);return f(i)&&y(e,t[o]),a})),b=e=>new Set(d(e)||a(e)?e:[e]),T=(e,t)=>e?.add(t),m=/^\d+$/,k=Object.freeze,E=(e=>{const E=new WeakMap;return e=>(E.has(e)||E.set(e,(e=>{const E=g(),x=g(),S=g(),j=g(),[z,A,D,M,B,C,,,O,W,$]=((e,t,s)=>{const i=e.hasRow,I=g(),m=g(),k=g(),E=g(),x=g(),S=(t,n,...s)=>{const r=v(x,t,b);return o(s,(t=>T(r,t)&&n&&e.callListener(t))),s},j=(t,...n)=>l(L(x,t),(s=>{o(0==r(n)?u(s):n,(t=>{e.delListener(t),p(s,t)})),f(s)&&y(x,t)})),z=(e,t)=>{y(I,e,t),c(m,e)||(y(m,e,[g(),g(),g(),g()]),y(k,e,g()),y(E,e,g()))},A=e=>{y(I,e),y(m,e),y(k,e),y(E,e),j(e)};return[()=>e,()=>{return e=I,[...e?.keys()??[]];var e},e=>w(m,e),e=>c(m,e),e=>L(I,e),e=>L(m,e),(e,t)=>y(m,e,t),z,(t,s,l,f,u)=>{z(t,s);const p=g(),v=g(),I=L(k,t),b=L(E,t),T=t=>{const o=n=>e.getCell(s,t,n),l=L(I,t),c=i(s,t)?(h=f(o,t),a(h)?void 0:h+n):void 0;var h,R,g,w;if(l===c||d(l)&&d(c)&&(g=c,r(R=l)===r(g)&&(w=(e,t)=>g[t]===e,R.every(w)))||y(p,t,[l,c]),!a(u)){const e=L(b,t),n=i(s,t)?u(o,t):void 0;e!=n&&y(v,t,n)}},m=e=>{l((()=>{R(p,(([,e],t)=>y(I,t,e))),R(v,((e,t)=>y(b,t,e)))}),p,v,I,b,e),h(p),h(v)};w(I,T),e.hasTable(s)&&o(e.getRowIds(s),(e=>{c(I,e)||T(e)})),m(!0),j(t),S(t,0,e.addRowListener(s,null,((e,t,n)=>T(n))),e.addTableListener(s,(()=>m())))},A,()=>w(x,A),S,j]})(e),[q,F,G]=(e=>{let t;const[s,d]=(()=>{const e=[];let t=0;return[s=>(s?e.shift():null)??n+t++,t=>{m.test(t)&&r(e)<1e3&&i(e,t)}]})(),c=g();return[(e,o,r,i=[],a=(()=>[]))=>{t??=N;const l=s(1);return y(c,l,[e,o,r,i,a]),T(I(o,r??[n],b),l),l},(e,s,...a)=>o(((e,t=[n])=>{const s=[],a=(e,n)=>n==r(t)?i(s,e):null===t[n]?R(e,(e=>a(e,n+1))):o([t[n],null],(t=>a(L(e,t),n+1)));return a(e,0),s})(e,s),(e=>R(e,(e=>L(c,e)[0](t,...s??[],...a))))),e=>l(L(c,e),(([,t,s])=>(I(t,s??[n],void 0,(t=>(p(t,e),f(t)?1:0))),y(c,e),d(e),s))),e=>l(L(c,e),(([e,,n=[],s,i])=>{const l=(...d)=>{const c=r(d);c==r(n)?e(t,...d,...i(d)):a(n[c])?o(s[c]?.(...d)??[],(e=>l(...d,e))):l(...d,n[c])};l()}))]})(),H=(e,t,n)=>l(C(e),(([s,,o])=>{if(!c(o,t)){const r=b();if(B(e)!=K(e))T(r,t);else{let e=t;for(;!a(e)&&!c(r,e);)T(r,e),e=L(s,e)}if(n)return r;y(o,t,r)}return L(o,t)})),J=(e,t)=>l(C(e),(([,,e])=>y(e,t))),K=e=>L(E,e),N={setRelationshipDefinition:(e,o,r,i)=>{return y(E,e,r),O(e,o,((t,n)=>{const s=b(),o=b(),r=b(),[i,d]=C(e);R(n,(([t,n],u)=>{a(t)||(T(o,t),l(L(d,t),(e=>{p(e,u),f(e)&&y(d,t)}))),a(n)||(T(o,n),c(d,n)||y(d,n,b()),T(L(d,n),u)),T(s,u),y(i,u,n),w(L(j,e),(t=>{c(H(e,t),u)&&T(r,t)}))})),t(),R(s,(t=>F(x,[e,t]))),R(o,(t=>F(S,[e,t]))),R(r,(t=>{J(e,t),F(j,[e,t])}))}),t(d=i)==s?e=>e(d):d??(()=>n)),N;var d},delRelationshipDefinition:e=>(y(E,e),W(e),N),getStore:z,getRelationshipIds:A,forEachRelationship:t=>D((n=>t(n,(t=>e.forEachRow(B(n),t))))),hasRelationship:M,getLocalTableId:B,getRemoteTableId:K,getRemoteRowId:(e,t)=>L(C(e)?.[0],t),getLocalRowIds:(e,t)=>u(L(C(e)?.[1],t)),getLinkedRowIds:(e,t)=>a(C(e))?[t]:u(H(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>q(n,x,[e,t]),addLocalRowIdsListener:(e,t,n)=>q(n,S,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(H(e,t),q(n,j,[e,t])),delListener:e=>(J(...G(e)),N),destroy:$,getListenerStats:()=>({})};return k(N)})(e)),E.get(e))})();e.createRelationships=E},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseRelationships={});
Binary file
package/lib/umd/store.js CHANGED
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),l=t(!0),a=t(0),r=t(t),o="type",c="default",i=e=>s+e,u=(e,t)=>e.forEach(t),d=(e,t)=>e.map(t),f=e=>e.length,h=(e,t,s)=>e.slice(t,s),T=(e,...t)=>e.push(...t),g=e=>JSON.stringify(e,((e,t)=>{return y(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),n={},[...t].reduce(s,n)):t;var s,n})),b=JSON.parse,V=isFinite,y=(e,t)=>e instanceof t,S=e=>null==e,p=(e,t,s)=>S(e)?s?.():t(e),v=e=>e==n||e==l,w=e=>t(e)==r,m=(e,t)=>e?.has(t)??!1,I=e=>S(e)||0==(e=>e.size)(e),R=e=>e.clear(),C=(e,t)=>e?.forEach(t),J=(e,t)=>e?.delete(t),L=e=>new Map(e),E=e=>[...e?.keys()??[]],F=(e,t)=>e?.get(t),x=(e,t)=>C(e,((e,s)=>t(s,e))),z=(e,t,s)=>S(s)?(J(e,t),e):e?.set(t,s),O=(e,t,s)=>(m(e,t)||z(e,t,s()),F(e,t)),j=(e,t,s)=>{const n={},l=t??(e=>e);return C(e,((e,t)=>p(l(e),(e=>s?.(e)?0:n[t]=e)))),n},k=(e,t)=>{const s=L(),n=t??(e=>e);return C(e,((e,t)=>s.set(t,n(e)))),s},A=e=>k(e,k),M=(e,t,s,n,l=0)=>p((s?O:F)(e,t[l],l>f(t)-2?s:L),(a=>{if(l>f(t)-2)return n?.(a)&&z(e,t[l]),a;const r=M(a,t,s,n,l+1);return I(a)&&z(e,t[l]),r})),N=e=>new Set(Array.isArray(e)||S(e)?e:[e]),P=(e,t)=>e?.add(t),B=/^\d+$/,D=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{B.test(t)&&f(e)<1e3&&T(e,t)}]},W=Object,$=W.keys,q=W.isFrozen,G=W.freeze,H=e=>y(e,W)&&e.constructor==W,K=(e,t)=>!S(((e,t)=>p(e,(e=>e[t])))(e,t)),Q=(e,t)=>delete e[t],U=(e,t)=>d(W.entries(e),(([e,s])=>t(s,e))),X=e=>{return H(e)&&(t=$(e),0==f(t));var t},Y=e=>[e,e],Z=()=>[L(),L()],_=e=>{const s=t(e);return v(s)||s==a&&V(e)?s:void 0},ee=(e,t,s,n=z)=>{const l=(a=e=>!K(t,e),E(e).filter(a));var a;return u($(t),(n=>s(e,n,t[n]))),u(l,(t=>n(e,t))),e},te=(e,t,s)=>S(e)||!H(e)||X(e)||q(e)?(s?.(),!1):(U(e,((s,n)=>{t(s,n)||Q(e,n)})),!X(e)),se=(e,t,s)=>z(e,t,F(e,t)==-s?void 0:s),ne=()=>{let e,t,n,l,r=0;const V=L(),y=L(),B=L(),W=L(),$=L(),q=L(),H=L(),le=L(),ae=L(),re=L(),oe=L(),ce=L(),ie=N(),ue=L(),de=L(),fe=L(),he=Z(),Te=Z(),ge=Z(),be=Z(),Ve=Z(),ye=Z(),Se=Z(),pe=Z(),ve=Z(),we=Z(),me=Z(),Ie=Z(),Re=Z(),Ce=Z(),[Je,Le,Ee,Fe]=(e=>{let t;const[n,l]=D(),a=L();return[(e,l,r,o=[],c=(()=>[]))=>{t??=Pt;const i=n(1);return z(a,i,[e,l,r,o,c]),P(M(l,r??[s],N),i),i},(e,n,...l)=>u(((e,t=[s])=>{const n=[],l=(e,s)=>s==f(t)?T(n,e):null===t[s]?C(e,(e=>l(e,s+1))):u([t[s],null],(t=>l(F(e,t),s+1)));return l(e,0),n})(e,n),(e=>C(e,(e=>F(a,e)[0](t,...n??[],...l))))),e=>p(F(a,e),(([,t,n])=>(M(t,n??[s],void 0,(t=>(J(t,e),I(t)?1:0))),z(a,e),l(e),n))),e=>p(F(a,e),(([e,,s=[],n,l])=>{const a=(...r)=>{const o=f(r);o==f(s)?e(t,...r,...l(r)):S(s[o])?u(n[o]?.(...r)??[],(e=>a(...r,e))):a(...r,s[o])};a()}))]})(),xe=e=>{if(!te(e,((e,t)=>[o,c].includes(t))))return!1;const t=e.type;return!(!v(t)&&t!=a||(_(e.default)!=t&&Q(e,c),0))},ze=(t,s)=>(!e||m(ae,s)||ct(s))&&te(t,((e,t)=>Oe(s,t,e)),(()=>ct(s))),Oe=(e,t,s,n)=>te(n?s:Me(s,e,t),((n,l)=>p(je(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>ct(e,t))),je=(t,s,n,l)=>e?p(F(F(ae,t),n),(e=>_(l)!=e.type?ct(t,s,n,l,e.default):l),(()=>ct(t,s,n,l))):S(_(l))?ct(t,s,n,l):l,ke=(e,t)=>te(t?e:Ne(e),((t,s)=>p(Ae(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>it())),Ae=(e,s)=>t?p(F(oe,e),(t=>_(s)!=t.type?it(e,s,t.default):s),(()=>it(e,s))):S(_(s))?it(e,s):s,Me=(e,t,s)=>(p(F(re,t),(([n,l])=>{C(n,((t,s)=>{K(e,s)||(e[s]=t)})),C(l,(n=>{K(e,n)||ct(t,s,n)}))})),e),Ne=e=>(t&&(C(ce,((t,s)=>{K(e,s)||(e[s]=t)})),C(ie,(t=>{K(e,t)||it(t)}))),e),Pe=e=>ee(ae,e,((e,t,s)=>{const n=L(),l=N();ee(O(ae,t,L),s,((e,t,s)=>{z(e,t,s),p(s.default,(e=>z(n,t,e)),(()=>P(l,t)))})),z(re,t,[n,l])}),((e,t)=>{z(ae,t),z(re,t)})),Be=e=>ee(oe,e,((e,t,s)=>{z(oe,t,s),p(s.default,(e=>z(ce,t,e)),(()=>P(ie,t)))}),((e,t)=>{z(oe,t),z(ce,t),J(ie,t)})),De=e=>X(e)?zt():Jt(e),We=e=>ee(de,e,((e,t,s)=>$e(t,s)),((e,t)=>Ze(t))),$e=(e,t)=>ee(O(de,e,(()=>(st(e,1),L()))),t,((t,s,n)=>qe(e,t,s,n)),((t,s)=>_e(e,t,s))),qe=(e,t,s,n,l)=>ee(O(t,s,(()=>(nt(e,s,1),L()))),n,((t,n,l)=>Ge(e,s,t,n,l)),((n,a)=>et(e,t,s,n,a,l))),Ge=(e,t,s,n,l)=>{m(s,n)||lt(e,t,n,1);const a=F(s,n);l!==a&&(at(e,t,n,a,l),z(s,n,l))},He=(e,t,s,n,l)=>p(F(t,s),(t=>Ge(e,s,t,n,l)),(()=>qe(e,t,s,Me({[n]:l},e,s)))),Ke=e=>X(e)?Ot():Lt(e),Qe=e=>ee(fe,e,((e,t,s)=>Ue(t,s)),((e,t)=>tt(t))),Ue=(e,t)=>{m(fe,e)||rt(e,1);const s=F(fe,e);t!==s&&(ot(e,s,t),z(fe,e,t))},Xe=(e,t)=>{const[s]=O(ue,e,D),n=s(t);return m(F(de,e),n)?Xe(e,t):n},Ye=e=>F(de,e)??$e(e,{}),Ze=e=>$e(e,{}),_e=(e,t,s)=>{const[,n]=O(ue,e,D);n(s),qe(e,t,s,{},!0)},et=(e,t,s,n,l,a)=>{const r=F(F(re,e)?.[0],l);if(!S(r)&&!a)return Ge(e,s,n,l,r);const o=t=>{at(e,s,t,F(n,t)),lt(e,s,t,-1),z(n,t)};S(r)?o(l):x(n,o),I(n)&&(nt(e,s,-1),I(z(t,s))&&(st(e,-1),z(de,e),z(ue,e)))},tt=e=>{const t=F(ce,e);if(!S(t))return Ue(e,t);ot(e,F(fe,e)),rt(e,-1),z(fe,e)},st=(e,t)=>se(V,e,t),nt=(e,t,s)=>se(O(y,e,L),t,s),lt=(e,t,s,n)=>se(O(O(B,e,L),t,L),s,n),at=(e,t,s,n,l)=>O(O(O(W,e,L),t,L),s,(()=>[n,0]))[1]=l,rt=(e,t)=>se($,e,t),ot=(e,t,s)=>O(q,e,(()=>[t,0]))[1]=s,ct=(e,t,s,n,l)=>(T(O(O(O(H,e,L),t,L),s,(()=>[])),n),l),it=(e,t,s)=>(T(O(le,e,(()=>[])),t),s),ut=(e,t,s)=>p(F(F(F(W,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(mt(e,t,s))])),dt=e=>p(F(q,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Y(Ct(e))])),ft=e=>I(H)||I(ve[e])?0:C(e?k(H,A):H,((t,s)=>C(t,((t,n)=>C(t,((t,l)=>Le(ve[e],[s,n,l],t))))))),ht=e=>I(le)||I(we[e])?0:C(e?k(le):le,((t,s)=>Le(we[e],[s],t))),Tt=(e,t,s)=>{if(!I(t))return Le(e,s),1},gt=e=>{const t=I(Ve[e]),s=I(Se[e])&&I(be[e])&&t&&I(Te[e]),n=I(pe[e])&&I(ye[e])&&I(ge[e])&&I(he[e]);if(!s||!n){const l=e?[k(V),A(y),k(B,A),k(W,A)]:[V,y,B,W];if(!s){C(l[2],((t,s)=>C(t,((t,n)=>Tt(Se[e],t,[s,n])))));const s=N();C(l[1],((n,l)=>{Tt(be[e],n,[l])&&!t&&(Le(Ve[e],[l,null]),P(s,l))})),t||C(l[3],((t,n)=>{if(!m(s,n)){const s=N();C(t,(e=>C(e,(([t,n],l)=>n!==t?P(s,l):J(e,l))))),C(s,(t=>Le(Ve[e],[n,t])))}})),Tt(Te[e],l[0])}if(!n){let t;C(l[3],((s,n)=>{let l;C(s,((s,a)=>{let r;C(s,(([s,o],c)=>{o!==s&&(Le(pe[e],[n,a,c],o,s,ut),t=l=r=1)})),r&&Le(ye[e],[n,a],ut)})),l&&Le(ge[e],[n],ut)})),t&&Le(he[e],void 0,ut)}}},bt=e=>{const t=I(Ie[e]),s=I(Re[e])&&I(me[e]);if(!t||!s){const n=e?[k($),k(q)]:[$,q];if(t||Tt(Ie[e],n[0]),!s){let t;C(n[1],(([s,n],l)=>{n!==s&&(Le(Re[e],[l],n,s,dt),t=1)})),t&&Le(me[e],void 0,dt)}}},Vt=(e,...t)=>(At((()=>e(...d(t,i)))),Pt),yt=()=>j(de,(e=>j(e,j))),St=()=>E(de),pt=e=>E(F(de,i(e))),vt=(e,t,s,n=0,l)=>{return d(h((r=F(de,i(e)),o=(e,s)=>[S(t)?s:F(e,i(t)),s],a=([e],[t])=>(e<t?-1:1)*(s?-1:1),d([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(a)),n,S(l)?l:n+l),(([,e])=>e));var a,r,o},wt=(e,t)=>E(F(F(de,i(e)),i(t))),mt=(e,t,s)=>F(F(F(de,i(e)),i(t)),i(s)),It=()=>j(fe),Rt=()=>E(fe),Ct=e=>F(fe,i(e)),Jt=e=>Vt((()=>(e=>te(e,ze,ct))(e)?We(e):0)),Lt=e=>Vt((()=>ke(e)?Qe(e):0)),Et=e=>{try{De(b(e))}catch{}return Pt},Ft=t=>Vt((()=>{if((e=te(t,(e=>te(e,xe))))&&(Pe(t),!I(de))){const e=yt();zt(),Jt(e)}})),xt=e=>Vt((()=>{if(t=(e=>te(e,xe))(e)){const s=It();kt(),Ot(),t=!0,Be(e),Lt(s)}})),zt=()=>Vt((()=>We({}))),Ot=()=>Vt((()=>Qe({}))),jt=()=>Vt((()=>{Pe({}),e=!1})),kt=()=>Vt((()=>{Be({}),t=!1})),At=(e,t)=>{if(-1==r)return;Mt();const s=e();return Nt(t),s},Mt=()=>(r++,Pt),Nt=e=>(r>0&&(r--,0==r&&(n=!I(W),l=!I(q),r=1,ft(1),n&&gt(1),ht(1),l&&bt(1),r=-1,e?.(j(W,(e=>j(e,(e=>j(e,(e=>[...e]),(([e,t])=>e===t))),X)),X),j(H,(e=>j(e,j))),j(q,(e=>[...e]),(([e,t])=>e===t)),j(le))&&(r=1,C(W,((e,t)=>C(e,((e,s)=>C(e,(([e],n)=>((e,t,s,n,l)=>S(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l))(Pt,t,s,n,e))))))),C(q,(([e],t)=>((e,t,s)=>S(s)?e.delValue(t):e.setValue(t,s))(Pt,t,e))),r=-1,n=l=!1),Le(Ce[0],void 0,n,l),ft(0),n&&gt(0),ht(0),l&&bt(0),Le(Ce[1],void 0,n,l),r=0,u([V,y,B,W,H,$,q,le],R))),Pt),Pt={getTables:yt,getTableIds:St,getTable:e=>j(F(de,i(e)),j),getRowIds:pt,getSortedRowIds:vt,getRow:(e,t)=>j(F(F(de,i(e)),i(t))),getCellIds:wt,getCell:mt,getValues:It,getValueIds:Rt,getValue:Ct,hasTables:()=>!I(de),hasTable:e=>m(de,i(e)),hasRow:(e,t)=>m(F(de,i(e)),i(t)),hasCell:(e,t,s)=>m(F(F(de,i(e)),i(t)),i(s)),hasValues:()=>!I(fe),hasValue:e=>m(fe,i(e)),getTablesJson:()=>g(de),getValuesJson:()=>g(fe),getJson:()=>g([de,fe]),getTablesSchemaJson:()=>g(ae),getValuesSchemaJson:()=>g(oe),getSchemaJson:()=>g([ae,oe]),setTables:Jt,setTable:(e,t)=>Vt((e=>ze(t,e)?$e(e,t):0),e),setRow:(e,t,s)=>Vt(((e,t)=>Oe(e,t,s)?qe(e,Ye(e),t,s):0),e,t),addRow:(e,t,s=!0)=>At((()=>{let n;return Oe(e,n,t)&&(e=i(e),qe(e,Ye(e),n=Xe(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Vt(((e,t)=>{if(Oe(e,t,s,1)){const n=Ye(e);U(s,((s,l)=>He(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>Vt(((e,t,s)=>p(je(e,t,s,w(n)?n(mt(e,t,s)):n),(n=>He(e,Ye(e),t,s,n)))),e,t,s),setValues:Lt,setPartialValues:e=>Vt((()=>ke(e,1)?U(e,((e,t)=>Ue(t,e))):0)),setValue:(e,t)=>Vt((e=>p(Ae(e,w(t)?t(Ct(e)):t),(t=>Ue(e,t)))),e),setTablesJson:Et,setValuesJson:e=>{try{Ke(b(e))}catch{}return Pt},setJson:e=>{try{const[t,s]=b(e);De(t),Ke(s)}catch{Et(e)}return Pt},setTablesSchema:Ft,setValuesSchema:xt,setSchema:(e,t)=>Vt((()=>{Ft(e),xt(t)})),delTables:zt,delTable:e=>Vt((e=>m(de,e)?Ze(e):0),e),delRow:(e,t)=>Vt(((e,t)=>p(F(de,e),(s=>m(s,t)?_e(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Vt(((e,t,s)=>p(F(de,e),(l=>p(F(l,t),(a=>m(a,s)?et(e,l,t,a,s,n):0))))),e,t,s),delValues:Ot,delValue:e=>Vt((e=>m(fe,e)?tt(e):0),e),delTablesSchema:jt,delValuesSchema:kt,delSchema:()=>Vt((()=>{jt(),kt()})),transaction:At,startTransaction:Mt,finishTransaction:Nt,forEachTable:e=>C(de,((t,s)=>e(s,(e=>C(t,((t,s)=>e(s,(e=>x(t,e))))))))),forEachRow:(e,t)=>C(F(de,i(e)),((e,s)=>t(s,(t=>x(e,t))))),forEachCell:(e,t,s)=>x(F(F(de,i(e)),i(t)),s),forEachValue:e=>x(fe,e),addSortedRowIdsListener:(e,t,s,n,l,a,r)=>{let o=vt(e,t,s,n,l);return Je((()=>{const r=vt(e,t,s,n,l);var c,i,u;i=o,f(c=r)===f(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=r,a(Pt,e,t,s,n,l,o))}),Ve[r?1:0],[e,t],[St])},addWillFinishTransactionListener:e=>Je(e,Ce[0]),addDidFinishTransactionListener:e=>Je(e,Ce[1]),callListener:e=>(Fe(e),Pt),delListener:e=>(Ee(e),Pt),getListenerStats:()=>({}),createStore:ne};return U({Tables:[0,he],TableIds:[0,Te],Table:[1,ge,[St]],RowIds:[1,be,[St]],Row:[2,ye,[St,pt]],CellIds:[2,Se,[St,pt]],Cell:[3,pe,[St,pt,wt],e=>Y(mt(...e))],InvalidCell:[3,ve],Values:[0,me],ValueIds:[0,Ie],Value:[1,Re,[Rt],e=>Y(Ct(e[0]))],InvalidValue:[1,we]},(([e,t,s,n],l)=>{Pt["add"+l+"Listener"]=(...l)=>Je(l[e],t[l[e+1]?1:0],e>0?h(l,0,e):void 0,s,n)})),G(Pt)};e.createStore=ne},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,s="",n=t(s),l=t(!0),r=t(0),a=t(t),o="type",c="default",i="Ids",u="Table",d=u+"s",f=u+i,h="Row"+i,g="Cell",T=g+i,b="Value",V=b+"s",S=b+i,v=e=>s+e,y=(e,t)=>e.forEach(t),p=(e,t)=>e.map(t),w=e=>e.length,m=(e,t,s)=>e.slice(t,s),R=(e,...t)=>e.push(...t),J=e=>JSON.stringify(e,((e,t)=>{return L(t,Map)?(s=(e,[t,s])=>(e[t]=s,e),n={},[...t].reduce(s,n)):t;var s,n})),C=JSON.parse,I=isFinite,L=(e,t)=>e instanceof t,E=e=>null==e,F=(e,t,s)=>E(e)?s?.():t(e),x=e=>e==n||e==l,z=e=>t(e)==a,O=(e,t)=>e?.has(t)??!1,j=e=>E(e)||0==(e=>e.size)(e),k=e=>e.clear(),A=(e,t)=>e?.forEach(t),M=(e,t)=>e?.delete(t),N=e=>new Map(e),P=e=>[...e?.keys()??[]],B=(e,t)=>e?.get(t),D=(e,t)=>A(e,((e,s)=>t(s,e))),W=(e,t,s)=>E(s)?(M(e,t),e):e?.set(t,s),$=(e,t,s)=>(O(e,t)||W(e,t,s()),B(e,t)),q=(e,t,s)=>{const n={},l=t??(e=>e);return A(e,((e,t)=>F(l(e),(e=>s?.(e)?0:n[t]=e)))),n},G=(e,t)=>{const s=N(),n=t??(e=>e);return A(e,((e,t)=>s.set(t,n(e)))),s},H=e=>G(e,G),K=(e,t,s,n,l=0)=>F((s?$:B)(e,t[l],l>w(t)-2?s:N),(r=>{if(l>w(t)-2)return n?.(r)&&W(e,t[l]),r;const a=K(r,t,s,n,l+1);return j(r)&&W(e,t[l]),a})),Q=e=>new Set(Array.isArray(e)||E(e)?e:[e]),U=(e,t)=>e?.add(t),X=/^\d+$/,Y=()=>{const e=[];let t=0;return[n=>(n?e.shift():null)??s+t++,t=>{X.test(t)&&w(e)<1e3&&R(e,t)}]},Z=Object,_=Z.keys,ee=Z.isFrozen,te=Z.freeze,se=e=>L(e,Z)&&e.constructor==Z,ne=(e,t)=>!E(((e,t)=>F(e,(e=>e[t])))(e,t)),le=(e,t)=>delete e[t],re=(e,t)=>p(Z.entries(e),(([e,s])=>t(s,e))),ae=e=>{return se(e)&&(t=_(e),0==w(t));var t},oe=e=>[e,e],ce=()=>[N(),N()],ie=e=>{const s=t(e);return x(s)||s==r&&I(e)?s:void 0},ue=(e,t,s,n=W)=>(re(t,((t,n)=>s(e,n,t))),D(e,(s=>ne(t,s)?0:n(e,s))),e),de=(e,t,s)=>E(e)||!se(e)||ae(e)||ee(e)?(s?.(),!1):(re(e,((s,n)=>{t(s,n)||le(e,n)})),!ae(e)),fe=(e,t,s)=>W(e,t,B(e,t)==-s?void 0:s),he=()=>{let e,t,n,l,a=0;const i=N(),I=N(),L=N(),X=N(),Z=N(),_=N(),ee=N(),se=N(),ge=N(),Te=N(),be=N(),Ve=N(),Se=Q(),ve=N(),ye=N(),pe=N(),we=ce(),me=ce(),Re=ce(),Je=ce(),Ce=ce(),Ie=ce(),Le=ce(),Ee=ce(),Fe=ce(),xe=ce(),ze=ce(),Oe=ce(),je=ce(),ke=ce(),[Ae,Me,Ne,Pe]=(e=>{let t;const[n,l]=Y(),r=N();return[(e,l,a,o=[],c=(()=>[]))=>{t??=Qt;const i=n(1);return W(r,i,[e,l,a,o,c]),U(K(l,a??[s],Q),i),i},(e,n,...l)=>y(((e,t=[s])=>{const n=[],l=(e,s)=>s==w(t)?R(n,e):null===t[s]?A(e,(e=>l(e,s+1))):y([t[s],null],(t=>l(B(e,t),s+1)));return l(e,0),n})(e,n),(e=>A(e,(e=>B(r,e)[0](t,...n??[],...l))))),e=>F(B(r,e),(([,t,n])=>(K(t,n??[s],void 0,(t=>(M(t,e),j(t)?1:0))),W(r,e),l(e),n))),e=>F(B(r,e),(([e,,s=[],n,l])=>{const r=(...a)=>{const o=w(a);o==w(s)?e(t,...a,...l(a)):E(s[o])?y(n[o]?.(...a)??[],(e=>r(...a,e))):r(...a,s[o])};r()}))]})(),Be=e=>{if(!de(e,((e,t)=>[o,c].includes(t))))return!1;const t=e[o];return!(!x(t)&&t!=r||(ie(e[c])!=t&&le(e,c),0))},De=(t,s)=>(!e||O(ge,s)||Vt(s))&&de(t,((e,t)=>We(s,t,e)),(()=>Vt(s))),We=(e,t,s,n)=>de(n?s:He(s,e,t),((n,l)=>F($e(e,t,l,n),(e=>(s[l]=e,!0)),(()=>!1))),(()=>Vt(e,t))),$e=(t,s,n,l)=>e?F(B(B(ge,t),n),(e=>ie(l)!=e[o]?Vt(t,s,n,l,e[c]):l),(()=>Vt(t,s,n,l))):E(ie(l))?Vt(t,s,n,l):l,qe=(e,t)=>de(t?e:Ke(e),((t,s)=>F(Ge(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>St())),Ge=(e,s)=>t?F(B(be,e),(t=>ie(s)!=t[o]?St(e,s,t[c]):s),(()=>St(e,s))):E(ie(s))?St(e,s):s,He=(e,t,s)=>(F(B(Te,t),(([n,l])=>{A(n,((t,s)=>{ne(e,s)||(e[s]=t)})),A(l,(n=>{ne(e,n)||Vt(t,s,n)}))})),e),Ke=e=>(t&&(A(Ve,((t,s)=>{ne(e,s)||(e[s]=t)})),A(Se,(t=>{ne(e,t)||St(t)}))),e),Qe=e=>ue(ge,e,((e,t,s)=>{const n=N(),l=Q();ue($(ge,t,N),s,((e,t,s)=>{W(e,t,s),F(s[c],(e=>W(n,t,e)),(()=>U(l,t)))})),W(Te,t,[n,l])}),((e,t)=>{W(ge,t),W(Te,t)})),Ue=e=>ue(be,e,((e,t,s)=>{W(be,t,s),F(s[c],(e=>W(Ve,t,e)),(()=>U(Se,t)))}),((e,t)=>{W(be,t),W(Ve,t),M(Se,t)})),Xe=e=>ae(e)?Dt():At(e),Ye=e=>ue(ye,e,((e,t,s)=>Ze(t,s)),((e,t)=>ot(t))),Ze=(e,t)=>ue($(ye,e,(()=>(dt(e,1),N()))),t,((t,s,n)=>_e(e,t,s,n)),((t,s)=>ct(e,t,s))),_e=(e,t,s,n,l)=>ue($(t,s,(()=>(ft(e,s,1),N()))),n,((t,n,l)=>et(e,s,t,n,l)),((n,r)=>it(e,t,s,n,r,l))),et=(e,t,s,n,l)=>{O(s,n)||ht(e,t,n,1);const r=B(s,n);l!==r&&(gt(e,t,n,r,l),W(s,n,l))},tt=(e,t,s,n,l)=>F(B(t,s),(t=>et(e,s,t,n,l)),(()=>_e(e,t,s,He({[n]:l},e,s)))),st=e=>ae(e)?Wt():Mt(e),nt=e=>ue(pe,e,((e,t,s)=>lt(t,s)),((e,t)=>ut(t))),lt=(e,t)=>{O(pe,e)||Tt(e,1);const s=B(pe,e);t!==s&&(bt(e,s,t),W(pe,e,t))},rt=(e,t)=>{const[s]=$(ve,e,Y),n=s(t);return O(B(ye,e),n)?rt(e,t):n},at=e=>B(ye,e)??Ze(e,{}),ot=e=>Ze(e,{}),ct=(e,t,s)=>{const[,n]=$(ve,e,Y);n(s),_e(e,t,s,{},!0)},it=(e,t,s,n,l,r)=>{const a=B(B(Te,e)?.[0],l);if(!E(a)&&!r)return et(e,s,n,l,a);const o=t=>{gt(e,s,t,B(n,t)),ht(e,s,t,-1),W(n,t)};E(a)?o(l):D(n,o),j(n)&&(ft(e,s,-1),j(W(t,s))&&(dt(e,-1),W(ye,e),W(ve,e)))},ut=e=>{const t=B(Ve,e);if(!E(t))return lt(e,t);bt(e,B(pe,e)),Tt(e,-1),W(pe,e)},dt=(e,t)=>fe(i,e,t),ft=(e,t,s)=>fe($(I,e,N),t,s),ht=(e,t,s,n)=>fe($($(L,e,N),t,N),s,n),gt=(e,t,s,n,l)=>$($($(X,e,N),t,N),s,(()=>[n,0]))[1]=l,Tt=(e,t)=>fe(Z,e,t),bt=(e,t,s)=>$(_,e,(()=>[t,0]))[1]=s,Vt=(e,t,s,n,l)=>(R($($($(ee,e,N),t,N),s,(()=>[])),n),l),St=(e,t,s)=>(R($(se,e,(()=>[])),t),s),vt=(e,t,s)=>F(B(B(B(X,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...oe(zt(e,t,s))])),yt=e=>F(B(_,e),(([e,t])=>[!0,e,t]),(()=>[!1,...oe(kt(e))])),pt=e=>j(ee)||j(Fe[e])?0:A(e?G(ee,H):ee,((t,s)=>A(t,((t,n)=>A(t,((t,l)=>Me(Fe[e],[s,n,l],t))))))),wt=e=>j(se)||j(xe[e])?0:A(e?G(se):se,((t,s)=>Me(xe[e],[s],t))),mt=(e,t,s)=>{if(!j(t))return Me(e,s),1},Rt=e=>{const t=j(Ce[e]),s=j(Le[e])&&j(Je[e])&&t&&j(me[e]),n=j(Ee[e])&&j(Ie[e])&&j(Re[e])&&j(we[e]);if(!s||!n){const l=e?[G(i),H(I),G(L,H),G(X,H)]:[i,I,L,X];if(!s){A(l[2],((t,s)=>A(t,((t,n)=>mt(Le[e],t,[s,n])))));const s=Q();A(l[1],((n,l)=>{mt(Je[e],n,[l])&&!t&&(Me(Ce[e],[l,null]),U(s,l))})),t||A(l[3],((t,n)=>{if(!O(s,n)){const s=Q();A(t,(e=>A(e,(([t,n],l)=>n!==t?U(s,l):M(e,l))))),A(s,(t=>Me(Ce[e],[n,t])))}})),mt(me[e],l[0])}if(!n){let t;A(l[3],((s,n)=>{let l;A(s,((s,r)=>{let a;A(s,(([s,o],c)=>{o!==s&&(Me(Ee[e],[n,r,c],o,s,vt),t=l=a=1)})),a&&Me(Ie[e],[n,r],vt)})),l&&Me(Re[e],[n],vt)})),t&&Me(we[e],void 0,vt)}}},Jt=e=>{const t=j(Oe[e]),s=j(je[e])&&j(ze[e]);if(!t||!s){const n=e?[G(Z),G(_)]:[Z,_];if(t||mt(Oe[e],n[0]),!s){let t;A(n[1],(([s,n],l)=>{n!==s&&(Me(je[e],[l],n,s,yt),t=1)})),t&&Me(ze[e],void 0,yt)}}},Ct=(e,...t)=>(Gt((()=>e(...p(t,v)))),Qt),It=()=>q(ye,(e=>q(e,q))),Lt=()=>P(ye),Et=e=>P(B(ye,v(e))),Ft=(e,t,s,n=0,l)=>{return p(m((a=B(ye,v(e)),o=(e,s)=>[E(t)?s:B(e,v(t)),s],r=([e],[t])=>(e<t?-1:1)*(s?-1:1),p([...a?.entries()??[]],(([e,t])=>o(t,e))).sort(r)),n,E(l)?l:n+l),(([,e])=>e));var r,a,o},xt=(e,t)=>P(B(B(ye,v(e)),v(t))),zt=(e,t,s)=>B(B(B(ye,v(e)),v(t)),v(s)),Ot=()=>q(pe),jt=()=>P(pe),kt=e=>B(pe,v(e)),At=e=>Ct((()=>(e=>de(e,De,Vt))(e)?Ye(e):0)),Mt=e=>Ct((()=>qe(e)?nt(e):0)),Nt=e=>{try{Xe(C(e))}catch{}return Qt},Pt=t=>Ct((()=>{if((e=de(t,(e=>de(e,Be))))&&(Qe(t),!j(ye))){const e=It();Dt(),At(e)}})),Bt=e=>Ct((()=>{if(t=(e=>de(e,Be))(e)){const s=Ot();qt(),Wt(),t=!0,Ue(e),Mt(s)}})),Dt=()=>Ct((()=>Ye({}))),Wt=()=>Ct((()=>nt({}))),$t=()=>Ct((()=>{Qe({}),e=!1})),qt=()=>Ct((()=>{Ue({}),t=!1})),Gt=(e,t)=>{if(-1==a)return;Ht();const s=e();return Kt(t),s},Ht=()=>(a++,Qt),Kt=e=>(a>0&&(a--,0==a&&(n=!j(X),l=!j(_),a=1,pt(1),n&&Rt(1),wt(1),l&&Jt(1),a=-1,e?.(q(X,(e=>q(e,(e=>q(e,(e=>[...e]),(([e,t])=>e===t))),ae)),ae),q(ee,(e=>q(e,q))),q(_,(e=>[...e]),(([e,t])=>e===t)),q(se))&&(a=1,A(X,((e,t)=>A(e,((e,s)=>A(e,(([e],n)=>((e,t,s,n,l)=>E(l)?e.delCell(t,s,n,!0):e.setCell(t,s,n,l))(Qt,t,s,n,e))))))),A(_,(([e],t)=>((e,t,s)=>E(s)?e.delValue(t):e.setValue(t,s))(Qt,t,e))),a=-1,n=l=!1),Me(ke[0],void 0,n,l),pt(0),n&&Rt(0),wt(0),l&&Jt(0),Me(ke[1],void 0,n,l),a=0,y([i,I,L,X,ee,Z,_,se],k))),Qt),Qt={getTables:It,getTableIds:Lt,getTable:e=>q(B(ye,v(e)),q),getRowIds:Et,getSortedRowIds:Ft,getRow:(e,t)=>q(B(B(ye,v(e)),v(t))),getCellIds:xt,getCell:zt,getValues:Ot,getValueIds:jt,getValue:kt,hasTables:()=>!j(ye),hasTable:e=>O(ye,v(e)),hasRow:(e,t)=>O(B(ye,v(e)),v(t)),hasCell:(e,t,s)=>O(B(B(ye,v(e)),v(t)),v(s)),hasValues:()=>!j(pe),hasValue:e=>O(pe,v(e)),getTablesJson:()=>J(ye),getValuesJson:()=>J(pe),getJson:()=>J([ye,pe]),getTablesSchemaJson:()=>J(ge),getValuesSchemaJson:()=>J(be),getSchemaJson:()=>J([ge,be]),setTables:At,setTable:(e,t)=>Ct((e=>De(t,e)?Ze(e,t):0),e),setRow:(e,t,s)=>Ct(((e,t)=>We(e,t,s)?_e(e,at(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Gt((()=>{let n;return We(e,n,t)&&(e=v(e),_e(e,at(e),n=rt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Ct(((e,t)=>{if(We(e,t,s,1)){const n=at(e);re(s,((s,l)=>tt(e,n,t,l,s)))}}),e,t),setCell:(e,t,s,n)=>Ct(((e,t,s)=>F($e(e,t,s,z(n)?n(zt(e,t,s)):n),(n=>tt(e,at(e),t,s,n)))),e,t,s),setValues:Mt,setPartialValues:e=>Ct((()=>qe(e,1)?re(e,((e,t)=>lt(t,e))):0)),setValue:(e,t)=>Ct((e=>F(Ge(e,z(t)?t(kt(e)):t),(t=>lt(e,t)))),e),setTablesJson:Nt,setValuesJson:e=>{try{st(C(e))}catch{}return Qt},setJson:e=>{try{const[t,s]=C(e);Xe(t),st(s)}catch{Nt(e)}return Qt},setTablesSchema:Pt,setValuesSchema:Bt,setSchema:(e,t)=>Ct((()=>{Pt(e),Bt(t)})),delTables:Dt,delTable:e=>Ct((e=>O(ye,e)?ot(e):0),e),delRow:(e,t)=>Ct(((e,t)=>F(B(ye,e),(s=>O(s,t)?ct(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ct(((e,t,s)=>F(B(ye,e),(l=>F(B(l,t),(r=>O(r,s)?it(e,l,t,r,s,n):0))))),e,t,s),delValues:Wt,delValue:e=>Ct((e=>O(pe,e)?ut(e):0),e),delTablesSchema:$t,delValuesSchema:qt,delSchema:()=>Ct((()=>{$t(),qt()})),transaction:Gt,startTransaction:Ht,finishTransaction:Kt,forEachTable:e=>A(ye,((t,s)=>e(s,(e=>A(t,((t,s)=>e(s,(e=>D(t,e))))))))),forEachRow:(e,t)=>A(B(ye,v(e)),((e,s)=>t(s,(t=>D(e,t))))),forEachCell:(e,t,s)=>D(B(B(ye,v(e)),v(t)),s),forEachValue:e=>D(pe,e),addSortedRowIdsListener:(e,t,s,n,l,r,a)=>{let o=Ft(e,t,s,n,l);return Ae((()=>{const a=Ft(e,t,s,n,l);var c,i,u;i=o,w(c=a)===w(i)&&(u=(e,t)=>i[t]===e,c.every(u))||(o=a,r(Qt,e,t,s,n,l,o))}),Ce[a?1:0],[e,t],[Lt])},addWillFinishTransactionListener:e=>Ae(e,ke[0]),addDidFinishTransactionListener:e=>Ae(e,ke[1]),callListener:e=>(Pe(e),Qt),delListener:e=>(Ne(e),Qt),getListenerStats:()=>({}),createStore:he};return re({[d]:[0,we],[f]:[0,me],[u]:[1,Re,[Lt]],[h]:[1,Je,[Lt]],Row:[2,Ie,[Lt,Et]],[T]:[2,Le,[Lt,Et]],[g]:[3,Ee,[Lt,Et,xt],e=>oe(zt(...e))],InvalidCell:[3,Fe],[V]:[0,ze],[S]:[0,Oe],[b]:[1,je,[jt],e=>oe(kt(e[0]))],InvalidValue:[1,xe]},(([e,t,s,n],l)=>{Qt["add"+l+"Listener"]=(...l)=>Ae(l[e],t[l[e+1]?1:0],e>0?m(l,0,e):void 0,s,n)})),te(Qt)};e.createStore=he},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseStore={});
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),i=s(s),l="default",c="utf8",d="Listener",u="Result",h="add",f="Table",g="RowIds",L="Cell",w="CellIds",v=e=>n+e,p=(e,t)=>e.includes(t),S=(e,t)=>e.every(t),R=(e,t)=>C(e)===C(t)&&S(e,((e,s)=>t[s]===e)),y=(e,t)=>S(e,((s,n)=>0==n||t(e[n-1],s)<=0)),I=(e,t)=>e.sort(t),T=(e,t)=>e.forEach(t),b=(e,t)=>e.map(t),m=e=>E(e,((e,t)=>e+t),0),C=e=>e.length,V=e=>0==C(e),E=(e,t,s)=>e.reduce(t,s),k=(e,t,s)=>e.slice(t,s),J=(e,...t)=>e.push(...t),M=e=>e.pop(),x=e=>e.shift(),A=e=>JSON.stringify(e,((e,t)=>j(t,Map)?E([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),D=JSON.parse,F=Math.max,P=Math.min,Q=isFinite,j=(e,t)=>e instanceof t,z=e=>null==e,N=(e,t,s)=>z(e)?s?.():t(e),O=e=>e==o||e==r,W=e=>s(e)==i,B=e=>Array.isArray(e),q=()=>{},H=e=>e.size,$=(e,t)=>e?.has(t)??!1,G=e=>z(e)||0==H(e),K=e=>[...e?.values()??[]],U=e=>e.clear(),X=(e,t)=>e?.forEach(t),Y=(e,t)=>e?.delete(t),Z=e=>new Map(e),_=e=>[...e?.keys()??[]],ee=(e,t)=>e?.get(t),te=(e,t)=>X(e,((e,s)=>t(s,e))),se=(e,t,s)=>z(s)?(Y(e,t),e):e?.set(t,s),ne=(e,t,s)=>($(e,t)||se(e,t,s()),ee(e,t)),oe=(e,t,s)=>{const n={},o=t??(e=>e);return X(e,((e,t)=>N(o(e),(e=>s?.(e)?0:n[t]=e)))),n},re=(e,t)=>{const s=Z(),n=t??(e=>e);return X(e,((e,t)=>s.set(t,n(e)))),s},ae=e=>re(e,re),ie=(e,t,s,n,o=0)=>N((s?ne:ee)(e,t[o],o>C(t)-2?s:Z),(r=>{if(o>C(t)-2)return n?.(r)&&se(e,t[o]),r;const a=ie(r,t,s,n,o+1);return G(r)&&se(e,t[o]),a})),le=e=>{const t=s(e);return O(t)||t==a&&Q(e)?t:void 0},ce=(e,t,s,n,o)=>z(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),de=(e,t,s)=>z(s)?e.delValue(t):e.setValue(t,s),ue=e=>new Set(B(e)||z(e)?e:[e]),he=(e,t)=>e?.add(t),fe=(e,t,s)=>{const n=e.hasRow,o=Z(),r=Z(),a=Z(),i=Z(),l=Z(),c=(t,s,...n)=>{const o=ne(l,t,ue);return T(n,(t=>he(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>N(ee(l,t),(n=>{T(V(s)?K(n):s,(t=>{e.delListener(t),Y(n,t)})),G(n)&&se(l,t)})),u=(e,s)=>{se(o,e,s),$(r,e)||(se(r,e,t()),se(a,e,Z()),se(i,e,Z()))},h=e=>{se(o,e),se(r,e),se(a,e),se(i,e),d(e)};return[()=>e,()=>_(o),e=>te(r,e),e=>$(r,e),e=>ee(o,e),e=>ee(r,e),(e,t)=>se(r,e,t),u,(t,o,r,l,h)=>{u(t,o);const f=Z(),g=Z(),L=ee(a,t),w=ee(i,t),v=t=>{const r=s=>e.getCell(o,t,s),a=ee(L,t),i=n(o,t)?s(l(r,t)):void 0;if(a===i||B(a)&&B(i)&&R(a,i)||se(f,t,[a,i]),!z(h)){const e=ee(w,t),s=n(o,t)?h(r,t):void 0;e!=s&&se(g,t,s)}},p=e=>{r((()=>{X(f,(([,e],t)=>se(L,t,e))),X(g,((e,t)=>se(w,t,e)))}),f,g,L,w,e),U(f),U(g)};te(L,v),e.hasTable(o)&&T(e.getRowIds(o),(e=>{$(L,e)||v(e)})),p(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>p())))},h,()=>te(l,h),c,d]},ge=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),Le=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},we=/^\d+$/,ve=()=>{const e=[];let t=0;return[s=>(s?x(e):null)??n+t++,t=>{we.test(t)&&C(e)<1e3&&J(e,t)}]},pe=e=>{let t;const[s,o]=ve(),r=Z();return[(o,a,i,l=[],c=(()=>[]))=>{t??=e();const d=s(1);return se(r,d,[o,a,i,l,c]),he(ie(a,i??[n],ue),d),d},(e,s,...o)=>T(((e,t=[n])=>{const s=[],o=(e,n)=>n==C(t)?J(s,e):null===t[n]?X(e,(e=>o(e,n+1))):T([t[n],null],(t=>o(ee(e,t),n+1)));return o(e,0),s})(e,s),(e=>X(e,(e=>ee(r,e)[0](t,...s??[],...o))))),e=>N(ee(r,e),(([,t,s])=>(ie(t,s??[n],void 0,(t=>(Y(t,e),G(t)?1:0))),se(r,e),o(e),s))),e=>N(ee(r,e),(([e,,s=[],n,o])=>{const r=(...a)=>{const i=C(a);i==C(s)?e(t,...a,...o(a)):z(s[i])?T(n[i]?.(...a)??[],(e=>r(...a,e))):r(...a,s[i])};r()}))]},Se=Object,Re=Se.keys,ye=Se.isFrozen,Ie=Se.freeze,Te=e=>j(e,Se)&&e.constructor==Se,be=(e,t)=>!z(((e,t)=>N(e,(e=>e[t])))(e,t)),me=(e,t)=>delete e[t],Ce=(e,t)=>b(Se.entries(e),(([e,s])=>t(s,e))),Ve=e=>Te(e)&&V(Re(e)),Ee=Le((e=>{let t,s,o,r=100,a=Z(),i=Z(),l=1;const c=Z(),d=Z(),[u,h,f]=pe((()=>W)),g=Z(),L=Z(),w=[],v=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=ee(g,s);X(n,((s,n)=>X(s,((s,o)=>X(s,((s,r)=>ce(e,n,o,r,s[t]))))))),X(o,((s,n)=>de(e,n,s[t])))})),l=1},R=e=>{se(g,e),se(L,e),h(d,[e])},y=(e,t)=>T(((e,t)=>e.splice(0,t))(e,t??C(e)),R),I=()=>y(w,C(w)-r),b=()=>N(t,(()=>{J(w,t),I(),y(v),t=void 0,o=1})),m=()=>{t=M(w),o=1},E=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(l){b();const e=ne(a,t,Z),i=ne(e,s,Z),l=ne(i,n,(()=>[r,void 0]));l[1]=o,l[0]===o&&G(se(i,n))&&G(se(e,s))&&G(se(a,t))&&m(),P()}})),k=e.addValueListener(null,((e,t,s,n)=>{if(l){b();const e=ne(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&G(se(i,t))&&m(),P()}})),A=(e="")=>(z(t)&&(t=n+s++,se(g,t,[a,i]),j(t,e),a=Z(),i=Z(),o=1),t),D=()=>{V(w)||(((e,...t)=>{e.unshift(...t)})(v,A()),S(0,t),t=M(w),o=1)},F=()=>{V(v)||(J(w,t),t=x(v),S(1,t),o=1)},P=()=>{o&&(h(c),o=0)},Q=e=>{const t=A(e);return P(),t},j=(e,t)=>(O(e)&&ee(L,e)!==t&&(se(L,e,t),h(d,[e])),W),O=e=>$(g,e),W={setSize:e=>(r=e,I(),W),addCheckpoint:Q,setCheckpoint:j,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>te(L,e),hasCheckpoint:O,getCheckpoint:e=>ee(L,e),goBackward:()=>(D(),P(),W),goForward:()=>(F(),P(),W),goTo:e=>{const s=p(w,e)?D:p(v,e)?F:null;for(;!z(s)&&e!=t;)s();return P(),W},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(f(e),W),clear:()=>(y(w),y(v),z(t)||R(t),t=void 0,s=0,Q(),W),destroy:()=>{e.delListener(E),e.delListener(k)},getListenerStats:()=>({})};return Ie(W.clear())})),ke=(e,t)=>e<t?-1:1,Je=Le((e=>{const t=Z(),s=Z(),[o,r,a,i,l,c,d,,u,h,f]=fe(e,Z,(e=>z(e)?n:B(e)?b(e,v):v(e))),[g,L,w]=pe((()=>S)),p=(t,s,n)=>{const o=l(t);X(n,((t,n)=>s(n,(s=>X(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,r,a,i=ke)=>{const l=z(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,h,f)=>{let g=0;const w=ue(),v=ue(),p=c(e);if(X(o,(([e,t],s)=>{const n=ue(e),o=ue(t);X(n,(e=>Y(o,e)?Y(n,e):0)),X(n,(e=>{he(w,e),N(ee(p,e),(t=>{Y(t,s),G(t)&&(se(p,e),g=1)}))})),X(o,(e=>{he(w,e),$(p,e)||(se(p,e,ue()),g=1),he(ee(p,e),s),z(r)||he(v,e)}))})),n(),G(h)||(f?te(p,(e=>he(v,e))):te(a,(e=>N(ee(u,e),(e=>he(v,e))))),X(v,(e=>{const t=(t,s)=>i(ee(h,t),ee(h,s),e),s=[...ee(p,e)];y(s,t)||(se(p,e,ue(I(s,t))),he(w,e))}))),(g||f)&&!z(l)){const t=[...p];y(t,l)||(d(e,Z(I(t,l))),g=1)}g&&L(t,[e]),X(w,(t=>L(s,[e,t])))}),ge(o),N(r,ge)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>p(t,e,s))))),forEachSlice:(e,t)=>p(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>$(c(e),t),getTableId:l,getSliceIds:e=>_(c(e)),getSliceRowIds:(e,t)=>K(ee(c(e),t)),addSliceIdsListener:(e,s)=>g(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>g(n,s,[e,t]),delListener:e=>(w(e),S),destroy:f,getListenerStats:()=>({})};return Ie(S)})),Me=Z([["avg",[(e,t)=>m(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>F(...e),(e,t)=>F(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:F(t,e)]],["min",[e=>P(...e),(e,t)=>P(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:P(t,e)]],["sum",[e=>m(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),xe=(e,t,s,n,o,r=!1)=>{if(G(s))return;const[a,i,l,c]=o;return r||=z(e),X(n,(([s,n])=>{r||(e=z(s)?i?.(e,n,t++):z(n)?l?.(e,s,t--):c?.(e,n,s,t),r||=z(e))})),r?a(K(s),H(s)):e},Ae=Le((e=>{const t=Z(),[s,o,r,a,i,l,c,,d,u,h]=fe(e,q,(e=>isNaN(e)||z(e)||!0===e||!1===e||e===n?void 0:1*e)),[f,g,L]=pe((()=>w)),w={setMetricDefinition:(e,s,n,o,r,a,i)=>{const u=W(n)?[n,r,a,i]:ee(Me,n)??ee(Me,"sum");return d(e,s,((s,n,o,r,a,i)=>{const d=l(e),h=H(r);i||=z(d),s();let f=xe(d,h,r,n,u,i);Q(f)||(f=void 0),f!=d&&(c(e,f),g(t,[e],f,d))}),ge(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:i,getMetric:l,addMetricListener:(e,s)=>f(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Ie(w)})),De=(e,t,s,o,r)=>{let a,i,l=0;const c={load:async(s,o)=>{if(2!=l){l=1;const r=await t();z(r)||r==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(r),l=0}return c},startAutoLoad:async(e,t)=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(r(),c),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),a=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(N(a,e.delListener),N(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Ie(c)},Fe="storage",Pe=globalThis.window,Qe=(e,t,s)=>{let n;return De(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},Pe.addEventListener(Fe,n)}),(()=>{Pe.removeEventListener(Fe,n),n=void 0}))},je=e=>e.headers.get("ETag"),ze=Le((e=>{const t=e.createStore,[s,o,r,a,i,,,l,,c,v,p,R]=fe(e,(()=>!0),q),y=t(),I=t(),b=Z(),m=(e,t,...s)=>T(s,(s=>he(ne(ne(b,t,Z),e,ue),s))),E=e=>{N(ee(b,e),(e=>{te(e,((e,t)=>X(t,(t=>e.delListener(t))))),U(e)})),T([I,y],(t=>t.delTable(e)))},M=(e,t,s)=>m(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),x={setQueryDefinition:(t,s,o)=>{l(t,s),E(t);const r=[],a=[[null,[s,null,null,[],Z()]]],i=[],c=[],d=[];o({select:(e,t)=>{const s=W(e)?[C(r)+n,e]:[z(t)?e:t,s=>s(e,t)];return J(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=z(s)||W(t)?null:t,o=z(n)?t:s,r=[e,[e,n,W(o)?o:e=>e(o),[],Z()]];return J(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>J(i,W(e)?e:z(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,W(t)?[t,s,n,o]:ee(Me,t)??[(e,t)=>t]]];return J(c,r),{as:e=>r[0]=e}},having:(e,t)=>J(d,W(e)?e:s=>s(e)===t)});const u=Z(r);if(G(u))return x;const h=Z(a);te(h,((e,[,t])=>N(ee(h,t),(({3:t})=>z(e)?0:J(t,e)))));const f=Z(c);let g=y;if(G(f)&&V(d))g=I;else{M(t,g,I);const e=Z();te(f,((t,[s,n])=>he(ne(e,s,ue),[t,n])));const s=ue();te(u,(t=>$(e,t)?0:he(s,t)));const n=Z(),o=(s,n,o,r)=>N(s,(([a,i,l,c])=>{te(n,((t,[s])=>{const n=ne(a,t,Z),i=ee(n,o),l=r?void 0:s;if(i!==l){const s=ue([[i,l]]),r=H(n);se(n,o,l),X(ee(e,t),(([e,t])=>{const o=xe(c[e],r,n,s,t);c[e]=z(le(o))?null:o}))}})),G(i)||!S(d,(e=>e((e=>c[e]))))?I.delRow(t,l):z(l)?s[2]=I.addRow(t,c):I.setRow(t,l,c)}));m(g,t,g.addRowListener(t,null,((r,a,i,l)=>{const c=[],d=[],u=Z(),h=g.hasRow(t,i);let f=!h;X(s,(e=>{const[s,n,o]=l(t,i,e);J(c,n),J(d,o),f||=s})),te(e,(e=>{const[s,,n]=l(t,i,e);(f||s)&&se(u,e,[n])})),f&&o(ie(n,c,void 0,(([,e])=>(Y(e,i),G(e)))),u,i,1),h&&o(ie(n,d,(()=>{const e={};return X(s,(s=>e[s]=g.getCell(t,i,s))),[Z(),ue(),void 0,e]}),(([,e])=>{he(e,i)})),u,i)})))}M(t,e,g);const L=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);T(a,(s=>{const[o,,r,a,i]=ee(h,s),c=r?.(l,n),[d,u]=ee(i,n)??[];c!=d&&(z(u)||R(t,u),se(i,n,z(c)?null:[c,...p(t,1,e.addRowListener(o,c,(()=>L(n,o,c,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...z(o)?[s,n,t]:t===s?[s,n,o]:[ee(h,t)?.[0],ee(ee(h,t)?.[4],n)?.[0],o]);g.transaction((()=>S(i,(e=>e(o)))?te(u,((e,s)=>ce(g,t,n,e,s(o,n)))):g.delRow(t,n)))})(n)},{3:w}=ee(h,null);return g.transaction((()=>p(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?L(r,s,r,w):(g.delRow(t,r),X(h,(({4:e})=>N(ee(e,r),(([,s])=>{R(t,s),se(e,r)})))))}))))),x},delQueryDefinition:e=>(E(e),c(e),x),getStore:s,getQueryIds:o,forEachQuery:r,hasQuery:a,getTableId:i,delListener:e=>(I.delListener(e),x),destroy:v,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=I.getListenerStats();return n}};return Ce({[f]:[1,1],[g]:[0,1],SortedRowIds:[0,5],Row:[1,2],[w]:[0,2],[L]:[1,3]},(([e,t],s)=>{T(e?["get","has","forEach"]:["get"],(e=>x[e+u+s]=(...t)=>I[e+s](...t))),x[h+u+s+d]=(...e)=>I[h+s+d](...k(e,0,t),((s,...n)=>e[t](x,...n)))})),Ie(x)})),Ne=Le((e=>{const t=Z(),s=Z(),o=Z(),r=Z(),[a,i,l,c,d,u,,,h,f,g]=fe(e,(()=>[Z(),Z(),Z(),Z()]),(e=>z(e)?void 0:e+n)),[L,w,v]=pe((()=>y)),p=(e,t,s)=>N(u(e),(([n,,o])=>{if(!$(o,t)){const r=ue();if(d(e)!=R(e))he(r,t);else{let e=t;for(;!z(e)&&!$(r,e);)he(r,e),e=ee(n,e)}if(s)return r;se(o,t,r)}return ee(o,t)})),S=(e,t)=>N(u(e),(([,,e])=>se(e,t))),R=e=>ee(t,e),y={setRelationshipDefinition:(e,n,a,i)=>(se(t,e,a),h(e,n,((t,n)=>{const a=ue(),i=ue(),l=ue(),[c,d]=u(e);X(n,(([t,s],n)=>{z(t)||(he(i,t),N(ee(d,t),(e=>{Y(e,n),G(e)&&se(d,t)}))),z(s)||(he(i,s),$(d,s)||se(d,s,ue()),he(ee(d,s),n)),he(a,n),se(c,n,s),te(ee(r,e),(t=>{$(p(e,t),n)&&he(l,t)}))})),t(),X(a,(t=>w(s,[e,t]))),X(i,(t=>w(o,[e,t]))),X(l,(t=>{S(e,t),w(r,[e,t])}))}),ge(i)),y),delRelationshipDefinition:e=>(se(t,e),f(e),y),getStore:a,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>ee(u(e)?.[0],t),getLocalRowIds:(e,t)=>K(ee(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>z(u(e))?[t]:K(p(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(p(e,t),L(s,r,[e,t])),delListener:e=>(S(...v(e)),y),destroy:g,getListenerStats:()=>({})};return Ie(y)})),Oe=e=>[e,e],We=()=>[Z(),Z()],Be=(e,t,s,n=se)=>{const o=(r=e=>!be(t,e),_(e).filter(r));var r;return T(Re(t),(n=>s(e,n,t[n]))),T(o,(t=>n(e,t))),e},qe=(e,t,s)=>z(e)||!Te(e)||Ve(e)||ye(e)?(s?.(),!1):(Ce(e,((s,n)=>{t(s,n)||me(e,n)})),!Ve(e)),He=(e,t,s)=>se(e,t,ee(e,t)==-s?void 0:s),$e=()=>{let e,t,s,n,o=0;const r=Z(),i=Z(),c=Z(),u=Z(),S=Z(),y=Z(),m=Z(),C=Z(),V=Z(),E=Z(),M=Z(),x=Z(),F=ue(),P=Z(),Q=Z(),j=Z(),B=We(),q=We(),H=We(),K=We(),ie=We(),fe=We(),ge=We(),Le=We(),we=We(),Se=We(),Re=We(),ye=We(),Te=We(),Ee=We(),[Je,Me,xe,Ae]=pe((()=>Kt)),De=e=>{if(!qe(e,((e,t)=>p(["type",l],t))))return!1;const t=e.type;return!(!O(t)&&t!=a||(le(e.default)!=t&&me(e,l),0))},Fe=(t,s)=>(!e||$(V,s)||vt(s))&&qe(t,((e,t)=>Pe(s,t,e)),(()=>vt(s))),Pe=(e,t,s,n)=>qe(n?s:Ne(s,e,t),((n,o)=>N(Qe(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>vt(e,t))),Qe=(t,s,n,o)=>e?N(ee(ee(V,t),n),(e=>le(o)!=e.type?vt(t,s,n,o,e.default):o),(()=>vt(t,s,n,o))):z(le(o))?vt(t,s,n,o):o,je=(e,t)=>qe(t?e:Ge(e),((t,s)=>N(ze(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>pt())),ze=(e,s)=>t?N(ee(M,e),(t=>le(s)!=t.type?pt(e,s,t.default):s),(()=>pt(e,s))):z(le(s))?pt(e,s):s,Ne=(e,t,s)=>(N(ee(E,t),(([n,o])=>{X(n,((t,s)=>{be(e,s)||(e[s]=t)})),X(o,(n=>{be(e,n)||vt(t,s,n)}))})),e),Ge=e=>(t&&(X(x,((t,s)=>{be(e,s)||(e[s]=t)})),X(F,(t=>{be(e,t)||pt(t)}))),e),Ke=e=>Be(V,e,((e,t,s)=>{const n=Z(),o=ue();Be(ne(V,t,Z),s,((e,t,s)=>{se(e,t,s),N(s.default,(e=>se(n,t,e)),(()=>he(o,t)))})),se(E,t,[n,o])}),((e,t)=>{se(V,t),se(E,t)})),Ue=e=>Be(M,e,((e,t,s)=>{se(M,t,s),N(s.default,(e=>se(x,t,e)),(()=>he(F,t)))}),((e,t)=>{se(M,t),se(x,t),Y(F,t)})),Xe=e=>Ve(e)?Ot():Pt(e),Ye=e=>Be(Q,e,((e,t,s)=>Ze(t,s)),((e,t)=>it(t))),Ze=(e,t)=>Be(ne(Q,e,(()=>(ut(e,1),Z()))),t,((t,s,n)=>_e(e,t,s,n)),((t,s)=>lt(e,t,s))),_e=(e,t,s,n,o)=>Be(ne(t,s,(()=>(ht(e,s,1),Z()))),n,((t,n,o)=>et(e,s,t,n,o)),((n,r)=>ct(e,t,s,n,r,o))),et=(e,t,s,n,o)=>{$(s,n)||ft(e,t,n,1);const r=ee(s,n);o!==r&&(gt(e,t,n,r,o),se(s,n,o))},tt=(e,t,s,n,o)=>N(ee(t,s),(t=>et(e,s,t,n,o)),(()=>_e(e,t,s,Ne({[n]:o},e,s)))),st=e=>Ve(e)?Wt():Qt(e),nt=e=>Be(j,e,((e,t,s)=>ot(t,s)),((e,t)=>dt(t))),ot=(e,t)=>{$(j,e)||Lt(e,1);const s=ee(j,e);t!==s&&(wt(e,s,t),se(j,e,t))},rt=(e,t)=>{const[s]=ne(P,e,ve),n=s(t);return $(ee(Q,e),n)?rt(e,t):n},at=e=>ee(Q,e)??Ze(e,{}),it=e=>Ze(e,{}),lt=(e,t,s)=>{const[,n]=ne(P,e,ve);n(s),_e(e,t,s,{},!0)},ct=(e,t,s,n,o,r)=>{const a=ee(ee(E,e)?.[0],o);if(!z(a)&&!r)return et(e,s,n,o,a);const i=t=>{gt(e,s,t,ee(n,t)),ft(e,s,t,-1),se(n,t)};z(a)?i(o):te(n,i),G(n)&&(ht(e,s,-1),G(se(t,s))&&(ut(e,-1),se(Q,e),se(P,e)))},dt=e=>{const t=ee(x,e);if(!z(t))return ot(e,t);wt(e,ee(j,e)),Lt(e,-1),se(j,e)},ut=(e,t)=>He(r,e,t),ht=(e,t,s)=>He(ne(i,e,Z),t,s),ft=(e,t,s,n)=>He(ne(ne(c,e,Z),t,Z),s,n),gt=(e,t,s,n,o)=>ne(ne(ne(u,e,Z),t,Z),s,(()=>[n,0]))[1]=o,Lt=(e,t)=>He(S,e,t),wt=(e,t,s)=>ne(y,e,(()=>[t,0]))[1]=s,vt=(e,t,s,n,o)=>(J(ne(ne(ne(m,e,Z),t,Z),s,(()=>[])),n),o),pt=(e,t,s)=>(J(ne(C,e,(()=>[])),t),s),St=(e,t,s)=>N(ee(ee(ee(u,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(xt(e,t,s))])),Rt=e=>N(ee(y,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Oe(Ft(e))])),yt=e=>G(m)||G(we[e])?0:X(e?re(m,ae):m,((t,s)=>X(t,((t,n)=>X(t,((t,o)=>Me(we[e],[s,n,o],t))))))),It=e=>G(C)||G(Se[e])?0:X(e?re(C):C,((t,s)=>Me(Se[e],[s],t))),Tt=(e,t,s)=>{if(!G(t))return Me(e,s),1},bt=e=>{const t=G(ie[e]),s=G(ge[e])&&G(K[e])&&t&&G(q[e]),n=G(Le[e])&&G(fe[e])&&G(H[e])&&G(B[e]);if(!s||!n){const o=e?[re(r),ae(i),re(c,ae),re(u,ae)]:[r,i,c,u];if(!s){X(o[2],((t,s)=>X(t,((t,n)=>Tt(ge[e],t,[s,n])))));const s=ue();X(o[1],((n,o)=>{Tt(K[e],n,[o])&&!t&&(Me(ie[e],[o,null]),he(s,o))})),t||X(o[3],((t,n)=>{if(!$(s,n)){const s=ue();X(t,(e=>X(e,(([t,n],o)=>n!==t?he(s,o):Y(e,o))))),X(s,(t=>Me(ie[e],[n,t])))}})),Tt(q[e],o[0])}if(!n){let t;X(o[3],((s,n)=>{let o;X(s,((s,r)=>{let a;X(s,(([s,i],l)=>{i!==s&&(Me(Le[e],[n,r,l],i,s,St),t=o=a=1)})),a&&Me(fe[e],[n,r],St)})),o&&Me(H[e],[n],St)})),t&&Me(B[e],void 0,St)}}},mt=e=>{const t=G(ye[e]),s=G(Te[e])&&G(Re[e]);if(!t||!s){const n=e?[re(S),re(y)]:[S,y];if(t||Tt(ye[e],n[0]),!s){let t;X(n[1],(([s,n],o)=>{n!==s&&(Me(Te[e],[o],n,s,Rt),t=1)})),t&&Me(Re[e],void 0,Rt)}}},Ct=(e,...t)=>(Ht((()=>e(...b(t,v)))),Kt),Vt=()=>oe(Q,(e=>oe(e,oe))),Et=()=>_(Q),kt=e=>_(ee(Q,v(e))),Jt=(e,t,s,n=0,o)=>{return b(k(I((r=ee(Q,v(e)),a=(e,s)=>[z(t)?s:ee(e,v(t)),s],b([...r?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>ke(e,t)*(s?-1:1))),n,z(o)?o:n+o),(([,e])=>e));var r,a},Mt=(e,t)=>_(ee(ee(Q,v(e)),v(t))),xt=(e,t,s)=>ee(ee(ee(Q,v(e)),v(t)),v(s)),At=()=>oe(j),Dt=()=>_(j),Ft=e=>ee(j,v(e)),Pt=e=>Ct((()=>(e=>qe(e,Fe,vt))(e)?Ye(e):0)),Qt=e=>Ct((()=>je(e)?nt(e):0)),jt=e=>{try{Xe(D(e))}catch{}return Kt},zt=t=>Ct((()=>{if((e=qe(t,(e=>qe(e,De))))&&(Ke(t),!G(Q))){const e=Vt();Ot(),Pt(e)}})),Nt=e=>Ct((()=>{if(t=(e=>qe(e,De))(e)){const s=At();qt(),Wt(),t=!0,Ue(e),Qt(s)}})),Ot=()=>Ct((()=>Ye({}))),Wt=()=>Ct((()=>nt({}))),Bt=()=>Ct((()=>{Ke({}),e=!1})),qt=()=>Ct((()=>{Ue({}),t=!1})),Ht=(e,t)=>{if(-1==o)return;$t();const s=e();return Gt(t),s},$t=()=>(o++,Kt),Gt=e=>(o>0&&(o--,0==o&&(s=!G(u),n=!G(y),o=1,yt(1),s&&bt(1),It(1),n&&mt(1),o=-1,e?.(oe(u,(e=>oe(e,(e=>oe(e,(e=>[...e]),(([e,t])=>e===t))),Ve)),Ve),oe(m,(e=>oe(e,oe))),oe(y,(e=>[...e]),(([e,t])=>e===t)),oe(C))&&(o=1,X(u,((e,t)=>X(e,((e,s)=>X(e,(([e],n)=>ce(Kt,t,s,n,e))))))),X(y,(([e],t)=>de(Kt,t,e))),o=-1,s=n=!1),Me(Ee[0],void 0,s,n),yt(0),s&&bt(0),It(0),n&&mt(0),Me(Ee[1],void 0,s,n),o=0,T([r,i,c,u,m,S,y,C],U))),Kt),Kt={getTables:Vt,getTableIds:Et,getTable:e=>oe(ee(Q,v(e)),oe),getRowIds:kt,getSortedRowIds:Jt,getRow:(e,t)=>oe(ee(ee(Q,v(e)),v(t))),getCellIds:Mt,getCell:xt,getValues:At,getValueIds:Dt,getValue:Ft,hasTables:()=>!G(Q),hasTable:e=>$(Q,v(e)),hasRow:(e,t)=>$(ee(Q,v(e)),v(t)),hasCell:(e,t,s)=>$(ee(ee(Q,v(e)),v(t)),v(s)),hasValues:()=>!G(j),hasValue:e=>$(j,v(e)),getTablesJson:()=>A(Q),getValuesJson:()=>A(j),getJson:()=>A([Q,j]),getTablesSchemaJson:()=>A(V),getValuesSchemaJson:()=>A(M),getSchemaJson:()=>A([V,M]),setTables:Pt,setTable:(e,t)=>Ct((e=>Fe(t,e)?Ze(e,t):0),e),setRow:(e,t,s)=>Ct(((e,t)=>Pe(e,t,s)?_e(e,at(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Ht((()=>{let n;return Pe(e,n,t)&&(e=v(e),_e(e,at(e),n=rt(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>Ct(((e,t)=>{if(Pe(e,t,s,1)){const n=at(e);Ce(s,((s,o)=>tt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>Ct(((e,t,s)=>N(Qe(e,t,s,W(n)?n(xt(e,t,s)):n),(n=>tt(e,at(e),t,s,n)))),e,t,s),setValues:Qt,setPartialValues:e=>Ct((()=>je(e,1)?Ce(e,((e,t)=>ot(t,e))):0)),setValue:(e,t)=>Ct((e=>N(ze(e,W(t)?t(Ft(e)):t),(t=>ot(e,t)))),e),setTablesJson:jt,setValuesJson:e=>{try{st(D(e))}catch{}return Kt},setJson:e=>{try{const[t,s]=D(e);Xe(t),st(s)}catch{jt(e)}return Kt},setTablesSchema:zt,setValuesSchema:Nt,setSchema:(e,t)=>Ct((()=>{zt(e),Nt(t)})),delTables:Ot,delTable:e=>Ct((e=>$(Q,e)?it(e):0),e),delRow:(e,t)=>Ct(((e,t)=>N(ee(Q,e),(s=>$(s,t)?lt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>Ct(((e,t,s)=>N(ee(Q,e),(o=>N(ee(o,t),(r=>$(r,s)?ct(e,o,t,r,s,n):0))))),e,t,s),delValues:Wt,delValue:e=>Ct((e=>$(j,e)?dt(e):0),e),delTablesSchema:Bt,delValuesSchema:qt,delSchema:()=>Ct((()=>{Bt(),qt()})),transaction:Ht,startTransaction:$t,finishTransaction:Gt,forEachTable:e=>X(Q,((t,s)=>e(s,(e=>X(t,((t,s)=>e(s,(e=>te(t,e))))))))),forEachRow:(e,t)=>X(ee(Q,v(e)),((e,s)=>t(s,(t=>te(e,t))))),forEachCell:(e,t,s)=>te(ee(ee(Q,v(e)),v(t)),s),forEachValue:e=>te(j,e),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let i=Jt(e,t,s,n,o);return Je((()=>{const a=Jt(e,t,s,n,o);R(a,i)||(i=a,r(Kt,e,t,s,n,o,i))}),ie[a?1:0],[e,t],[Et])},addWillFinishTransactionListener:e=>Je(e,Ee[0]),addDidFinishTransactionListener:e=>Je(e,Ee[1]),callListener:e=>(Ae(e),Kt),delListener:e=>(xe(e),Kt),getListenerStats:()=>({}),createStore:$e};return Ce({Tables:[0,B],TableIds:[0,q],[f]:[1,H,[Et]],[g]:[1,K,[Et]],Row:[2,fe,[Et,kt]],[w]:[2,ge,[Et,kt]],[L]:[3,Le,[Et,kt,Mt],e=>Oe(xt(...e))],InvalidCell:[3,we],Values:[0,Re],ValueIds:[0,ye],Value:[1,Te,[Dt],e=>Oe(Ft(e[0]))],InvalidValue:[1,Se]},(([e,t,s,n],o)=>{Kt[h+o+d]=(...o)=>Je(o[e],t[o[e+1]?1:0],e>0?k(o,0,e):void 0,s,n)})),Ie(Kt)};e.createCheckpoints=Ee,e.createCustomPersister=De,e.createFilePersister=(e,s)=>{let n;return De(e,(async()=>{try{return await t.promises.readFile(s,c)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,c)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=Je,e.createLocalPersister=(e,t)=>Qe(e,t,localStorage),e.createMetrics=Ae,e.createQueries=ze,e.createRelationships=Ne,e.createRemotePersister=(e,t,s,n)=>{let o,r;return De(e,(async()=>{const e=await fetch(t);return r=je(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=je(s);z(r)||z(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{N(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>Qe(e,t,sessionStorage),e.createStore=$e,e.defaultSorter=ke},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
1
+ var e,t;e=this,t=function(e,t){"use strict";const s=e=>typeof e,n="",o=s(n),r=s(!0),a=s(0),i=s(s),l="type",c="default",d="utf8",u="Listener",h="Result",f="add",g="Ids",L="Table",w=L+"s",v=L+g,S="Row",p=S+g,R="Sorted"+S+g,y="Cell",I=y+g,T="Value",b=T+"s",m=T+g,C=e=>n+e,V=(e,t)=>e.includes(t),E=(e,t)=>e.every(t),k=(e,t)=>F(e)===F(t)&&E(e,((e,s)=>t[s]===e)),J=(e,t)=>E(e,((s,n)=>0==n||t(e[n-1],s)<=0)),M=(e,t)=>e.sort(t),x=(e,t)=>e.forEach(t),A=(e,t)=>e.map(t),D=e=>Q(e,((e,t)=>e+t),0),F=e=>e.length,P=e=>0==F(e),Q=(e,t,s)=>e.reduce(t,s),j=(e,t,s)=>e.slice(t,s),z=(e,...t)=>e.push(...t),N=e=>e.pop(),O=e=>e.shift(),W=e=>JSON.stringify(e,((e,t)=>G(t,Map)?Q([...t],((e,[t,s])=>(e[t]=s,e)),{}):t)),B=JSON.parse,q=Math.max,H=Math.min,$=isFinite,G=(e,t)=>e instanceof t,K=e=>null==e,U=(e,t,s)=>K(e)?s?.():t(e),X=e=>e==o||e==r,Y=e=>s(e)==i,Z=e=>Array.isArray(e),_=()=>{},ee=e=>e.size,te=(e,t)=>e?.has(t)??!1,se=e=>K(e)||0==ee(e),ne=e=>[...e?.values()??[]],oe=e=>e.clear(),re=(e,t)=>e?.forEach(t),ae=(e,t)=>e?.delete(t),ie=e=>new Map(e),le=e=>[...e?.keys()??[]],ce=(e,t)=>e?.get(t),de=(e,t)=>re(e,((e,s)=>t(s,e))),ue=(e,t,s)=>K(s)?(ae(e,t),e):e?.set(t,s),he=(e,t,s)=>(te(e,t)||ue(e,t,s()),ce(e,t)),fe=(e,t,s)=>{const n={},o=t??(e=>e);return re(e,((e,t)=>U(o(e),(e=>s?.(e)?0:n[t]=e)))),n},ge=(e,t)=>{const s=ie(),n=t??(e=>e);return re(e,((e,t)=>s.set(t,n(e)))),s},Le=e=>ge(e,ge),we=(e,t,s,n,o=0)=>U((s?he:ce)(e,t[o],o>F(t)-2?s:ie),(r=>{if(o>F(t)-2)return n?.(r)&&ue(e,t[o]),r;const a=we(r,t,s,n,o+1);return se(r)&&ue(e,t[o]),a})),ve=e=>{const t=s(e);return X(t)||t==a&&$(e)?t:void 0},Se=(e,t,s,n,o)=>K(o)?e.delCell(t,s,n,!0):e.setCell(t,s,n,o),pe=(e,t,s)=>K(s)?e.delValue(t):e.setValue(t,s),Re=e=>new Set(Z(e)||K(e)?e:[e]),ye=(e,t)=>e?.add(t),Ie=(e,t,s)=>{const n=e.hasRow,o=ie(),r=ie(),a=ie(),i=ie(),l=ie(),c=(t,s,...n)=>{const o=he(l,t,Re);return x(n,(t=>ye(o,t)&&s&&e.callListener(t))),n},d=(t,...s)=>U(ce(l,t),(n=>{x(P(s)?ne(n):s,(t=>{e.delListener(t),ae(n,t)})),se(n)&&ue(l,t)})),u=(e,s)=>{ue(o,e,s),te(r,e)||(ue(r,e,t()),ue(a,e,ie()),ue(i,e,ie()))},h=e=>{ue(o,e),ue(r,e),ue(a,e),ue(i,e),d(e)};return[()=>e,()=>le(o),e=>de(r,e),e=>te(r,e),e=>ce(o,e),e=>ce(r,e),(e,t)=>ue(r,e,t),u,(t,o,r,l,h)=>{u(t,o);const f=ie(),g=ie(),L=ce(a,t),w=ce(i,t),v=t=>{const r=s=>e.getCell(o,t,s),a=ce(L,t),i=n(o,t)?s(l(r,t)):void 0;if(a===i||Z(a)&&Z(i)&&k(a,i)||ue(f,t,[a,i]),!K(h)){const e=ce(w,t),s=n(o,t)?h(r,t):void 0;e!=s&&ue(g,t,s)}},S=e=>{r((()=>{re(f,(([,e],t)=>ue(L,t,e))),re(g,((e,t)=>ue(w,t,e)))}),f,g,L,w,e),oe(f),oe(g)};de(L,v),e.hasTable(o)&&x(e.getRowIds(o),(e=>{te(L,e)||v(e)})),S(!0),d(t),c(t,0,e.addRowListener(o,null,((e,t,s)=>v(s))),e.addTableListener(o,(()=>S())))},h,()=>de(l,h),c,d]},Te=(e,t)=>s(e)==o?t=>t(e):e??(()=>t??n),be=e=>{const t=new WeakMap;return s=>(t.has(s)||t.set(s,e(s)),t.get(s))},me=/^\d+$/,Ce=()=>{const e=[];let t=0;return[s=>(s?O(e):null)??n+t++,t=>{me.test(t)&&F(e)<1e3&&z(e,t)}]},Ve=e=>{let t;const[s,o]=Ce(),r=ie();return[(o,a,i,l=[],c=(()=>[]))=>{t??=e();const d=s(1);return ue(r,d,[o,a,i,l,c]),ye(we(a,i??[n],Re),d),d},(e,s,...o)=>x(((e,t=[n])=>{const s=[],o=(e,n)=>n==F(t)?z(s,e):null===t[n]?re(e,(e=>o(e,n+1))):x([t[n],null],(t=>o(ce(e,t),n+1)));return o(e,0),s})(e,s),(e=>re(e,(e=>ce(r,e)[0](t,...s??[],...o))))),e=>U(ce(r,e),(([,t,s])=>(we(t,s??[n],void 0,(t=>(ae(t,e),se(t)?1:0))),ue(r,e),o(e),s))),e=>U(ce(r,e),(([e,,s=[],n,o])=>{const r=(...a)=>{const i=F(a);i==F(s)?e(t,...a,...o(a)):K(s[i])?x(n[i]?.(...a)??[],(e=>r(...a,e))):r(...a,s[i])};r()}))]},Ee=Object,ke=Ee.keys,Je=Ee.isFrozen,Me=Ee.freeze,xe=e=>G(e,Ee)&&e.constructor==Ee,Ae=(e,t)=>!K(((e,t)=>U(e,(e=>e[t])))(e,t)),De=(e,t)=>delete e[t],Fe=(e,t)=>A(Ee.entries(e),(([e,s])=>t(s,e))),Pe=e=>xe(e)&&P(ke(e)),Qe=be((e=>{let t,s,o,r=100,a=ie(),i=ie(),l=1;const c=ie(),d=ie(),[u,h,f]=Ve((()=>Q)),g=ie(),L=ie(),w=[],v=[],S=(t,s)=>{l=0,e.transaction((()=>{const[n,o]=ce(g,s);re(n,((s,n)=>re(s,((s,o)=>re(s,((s,r)=>Se(e,n,o,r,s[t]))))))),re(o,((s,n)=>pe(e,n,s[t])))})),l=1},p=e=>{ue(g,e),ue(L,e),h(d,[e])},R=(e,t)=>x(((e,t)=>e.splice(0,t))(e,t??F(e)),p),y=()=>R(w,F(w)-r),I=()=>U(t,(()=>{z(w,t),y(),R(v),t=void 0,o=1})),T=()=>{t=N(w),o=1},b=e.addCellListener(null,null,null,((e,t,s,n,o,r)=>{if(l){I();const e=he(a,t,ie),i=he(e,s,ie),l=he(i,n,(()=>[r,void 0]));l[1]=o,l[0]===o&&se(ue(i,n))&&se(ue(e,s))&&se(ue(a,t))&&T(),J()}})),m=e.addValueListener(null,((e,t,s,n)=>{if(l){I();const e=he(i,t,(()=>[n,void 0]));e[1]=s,e[0]===s&&se(ue(i,t))&&T(),J()}})),C=(e="")=>(K(t)&&(t=n+s++,ue(g,t,[a,i]),A(t,e),a=ie(),i=ie(),o=1),t),E=()=>{P(w)||(((e,...t)=>{e.unshift(...t)})(v,C()),S(0,t),t=N(w),o=1)},k=()=>{P(v)||(z(w,t),t=O(v),S(1,t),o=1)},J=()=>{o&&(h(c),o=0)},M=e=>{const t=C(e);return J(),t},A=(e,t)=>(D(e)&&ce(L,e)!==t&&(ue(L,e,t),h(d,[e])),Q),D=e=>te(g,e),Q={setSize:e=>(r=e,y(),Q),addCheckpoint:M,setCheckpoint:A,getStore:()=>e,getCheckpointIds:()=>[[...w],t,[...v]],forEachCheckpoint:e=>de(L,e),hasCheckpoint:D,getCheckpoint:e=>ce(L,e),goBackward:()=>(E(),J(),Q),goForward:()=>(k(),J(),Q),goTo:e=>{const s=V(w,e)?E:V(v,e)?k:null;for(;!K(s)&&e!=t;)s();return J(),Q},addCheckpointIdsListener:e=>u(e,c),addCheckpointListener:(e,t)=>u(t,d,[e]),delListener:e=>(f(e),Q),clear:()=>(R(w),R(v),K(t)||p(t),t=void 0,s=0,M(),Q),destroy:()=>{e.delListener(b),e.delListener(m)},getListenerStats:()=>({})};return Me(Q.clear())})),je=(e,t)=>e<t?-1:1,ze=be((e=>{const t=ie(),s=ie(),[o,r,a,i,l,c,d,,u,h,f]=Ie(e,ie,(e=>K(e)?n:Z(e)?A(e,C):C(e))),[g,L,w]=Ve((()=>S)),v=(t,s,n)=>{const o=l(t);re(n,((t,n)=>s(n,(s=>re(t,(t=>s(t,(s=>e.forEachCell(o,t,s)))))))))},S={setIndexDefinition:(e,n,o,r,a,i=je)=>{const l=K(a)?void 0:([e],[t])=>a(e,t);return u(e,n,((n,o,a,u,h,f)=>{let g=0;const w=Re(),v=Re(),S=c(e);if(re(o,(([e,t],s)=>{const n=Re(e),o=Re(t);re(n,(e=>ae(o,e)?ae(n,e):0)),re(n,(e=>{ye(w,e),U(ce(S,e),(t=>{ae(t,s),se(t)&&(ue(S,e),g=1)}))})),re(o,(e=>{ye(w,e),te(S,e)||(ue(S,e,Re()),g=1),ye(ce(S,e),s),K(r)||ye(v,e)}))})),n(),se(h)||(f?de(S,(e=>ye(v,e))):de(a,(e=>U(ce(u,e),(e=>ye(v,e))))),re(v,(e=>{const t=(t,s)=>i(ce(h,t),ce(h,s),e),s=[...ce(S,e)];J(s,t)||(ue(S,e,Re(M(s,t))),ye(w,e))}))),(g||f)&&!K(l)){const t=[...S];J(t,l)||(d(e,ie(M(t,l))),g=1)}g&&L(t,[e]),re(w,(t=>L(s,[e,t])))}),Te(o),U(r,Te)),S},delIndexDefinition:e=>(h(e),S),getStore:o,getIndexIds:r,forEachIndex:e=>a(((t,s)=>e(t,(e=>v(t,e,s))))),forEachSlice:(e,t)=>v(e,t,c(e)),hasIndex:i,hasSlice:(e,t)=>te(c(e),t),getTableId:l,getSliceIds:e=>le(c(e)),getSliceRowIds:(e,t)=>ne(ce(c(e),t)),addSliceIdsListener:(e,s)=>g(s,t,[e]),addSliceRowIdsListener:(e,t,n)=>g(n,s,[e,t]),delListener:e=>(w(e),S),destroy:f,getListenerStats:()=>({})};return Me(S)})),Ne=ie([["avg",[(e,t)=>D(e)/t,(e,t,s)=>e+(t-e)/(s+1),(e,t,s)=>e+(e-t)/(s-1),(e,t,s,n)=>e+(t-s)/n]],["max",[e=>q(...e),(e,t)=>q(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:q(t,e)]],["min",[e=>H(...e),(e,t)=>H(t,e),(e,t)=>t==e?void 0:e,(e,t,s)=>s==e?void 0:H(t,e)]],["sum",[e=>D(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,s)=>e-s+t]]]),Oe=(e,t,s,n,o,r=!1)=>{if(se(s))return;const[a,i,l,c]=o;return r||=K(e),re(n,(([s,n])=>{r||(e=K(s)?i?.(e,n,t++):K(n)?l?.(e,s,t--):c?.(e,n,s,t),r||=K(e))})),r?a(ne(s),ee(s)):e},We=be((e=>{const t=ie(),[s,o,r,a,i,l,c,,d,u,h]=Ie(e,_,(e=>isNaN(e)||K(e)||!0===e||!1===e||e===n?void 0:1*e)),[f,g,L]=Ve((()=>w)),w={setMetricDefinition:(e,s,n,o,r,a,i)=>{const u=Y(n)?[n,r,a,i]:ce(Ne,n)??ce(Ne,"sum");return d(e,s,((s,n,o,r,a,i)=>{const d=l(e),h=ee(r);i||=K(d),s();let f=Oe(d,h,r,n,u,i);$(f)||(f=void 0),f!=d&&(c(e,f),g(t,[e],f,d))}),Te(o,1)),w},delMetricDefinition:e=>(u(e),w),getStore:s,getMetricIds:o,forEachMetric:r,hasMetric:a,getTableId:i,getMetric:l,addMetricListener:(e,s)=>f(s,t,[e]),delListener:e=>(L(e),w),destroy:h,getListenerStats:()=>({})};return Me(w)})),Be=(e,t,s,o,r)=>{let a,i,l=0;const c={load:async(s,o)=>{if(2!=l){l=1;const r=await t();K(r)||r==n?e.transaction((()=>e.setTables(s).setValues(o))):e.setJson(r),l=0}return c},startAutoLoad:async(e,t)=>(c.stopAutoLoad(),await c.load(e,t),o(c.load),c),stopAutoLoad:()=>(r(),c),save:async()=>(1!=l&&(l=2,await s(e.getJson()),l=0),c),startAutoSave:async()=>(await c.stopAutoSave().save(),a=e.addTablesListener(c.save),i=e.addValuesListener(c.save),c),stopAutoSave:()=>(U(a,e.delListener),U(i,e.delListener),c),getStore:()=>e,destroy:()=>c.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return Me(c)},qe="storage",He=globalThis.window,$e=(e,t,s)=>{let n;return Be(e,(async()=>s.getItem(t)),(async e=>s.setItem(t,e)),(e=>{n=n=>{n.storageArea===s&&n.key===t&&e()},He.addEventListener(qe,n)}),(()=>{He.removeEventListener(qe,n),n=void 0}))},Ge=e=>e.headers.get("ETag"),Ke=be((e=>{const t=e.createStore,[s,o,r,a,i,,,l,,c,d,g,w]=Ie(e,(()=>!0),_),v=t(),T=t(),b=ie(),m=(e,t,...s)=>x(s,(s=>ye(he(he(b,t,ie),e,Re),s))),C=e=>{U(ce(b,e),(e=>{de(e,((e,t)=>re(t,(t=>e.delListener(t))))),oe(e)})),x([T,v],(t=>t.delTable(e)))},V=(e,t,s)=>m(t,e,t.addWillFinishTransactionListener(s.startTransaction),t.addDidFinishTransactionListener((()=>s.finishTransaction()))),k={setQueryDefinition:(t,s,o)=>{l(t,s),C(t);const r=[],a=[[null,[s,null,null,[],ie()]]],i=[],c=[],d=[];o({select:(e,t)=>{const s=Y(e)?[F(r)+n,e]:[K(t)?e:t,s=>s(e,t)];return z(r,s),{as:e=>s[0]=e}},join:(e,t,s)=>{const n=K(s)||Y(t)?null:t,o=K(n)?t:s,r=[e,[e,n,Y(o)?o:e=>e(o),[],ie()]];return z(a,r),{as:e=>r[0]=e}},where:(e,t,s)=>z(i,Y(e)?e:K(s)?s=>s(e)===t:n=>n(e,t)===s),group:(e,t,s,n,o)=>{const r=[e,[e,Y(t)?[t,s,n,o]:ce(Ne,t)??[(e,t)=>t]]];return z(c,r),{as:e=>r[0]=e}},having:(e,t)=>z(d,Y(e)?e:s=>s(e)===t)});const u=ie(r);if(se(u))return k;const h=ie(a);de(h,((e,[,t])=>U(ce(h,t),(({3:t})=>K(e)?0:z(t,e)))));const f=ie(c);let L=v;if(se(f)&&P(d))L=T;else{V(t,L,T);const e=ie();de(f,((t,[s,n])=>ye(he(e,s,Re),[t,n])));const s=Re();de(u,(t=>te(e,t)?0:ye(s,t)));const n=ie(),o=(s,n,o,r)=>U(s,(([a,i,l,c])=>{de(n,((t,[s])=>{const n=he(a,t,ie),i=ce(n,o),l=r?void 0:s;if(i!==l){const s=Re([[i,l]]),r=ee(n);ue(n,o,l),re(ce(e,t),(([e,t])=>{const o=Oe(c[e],r,n,s,t);c[e]=K(ve(o))?null:o}))}})),se(i)||!E(d,(e=>e((e=>c[e]))))?T.delRow(t,l):K(l)?s[2]=T.addRow(t,c):T.setRow(t,l,c)}));m(L,t,L.addRowListener(t,null,((r,a,i,l)=>{const c=[],d=[],u=ie(),h=L.hasRow(t,i);let f=!h;re(s,(e=>{const[s,n,o]=l(t,i,e);z(c,n),z(d,o),f||=s})),de(e,(e=>{const[s,,n]=l(t,i,e);(f||s)&&ue(u,e,[n])})),f&&o(we(n,c,void 0,(([,e])=>(ae(e,i),se(e)))),u,i,1),h&&o(we(n,d,(()=>{const e={};return re(s,(s=>e[s]=L.getCell(t,i,s))),[ie(),Re(),void 0,e]}),(([,e])=>{ye(e,i)})),u,i)})))}V(t,e,L);const S=(n,o,r,a)=>{const l=t=>e.getCell(o,r,t);x(a,(s=>{const[o,,r,a,i]=ce(h,s),c=r?.(l,n),[d,u]=ce(i,n)??[];c!=d&&(K(u)||w(t,u),ue(i,n,K(c)?null:[c,...g(t,1,e.addRowListener(o,c,(()=>S(n,o,c,a))))]))})),(n=>{const o=(t,o)=>e.getCell(...K(o)?[s,n,t]:t===s?[s,n,o]:[ce(h,t)?.[0],ce(ce(h,t)?.[4],n)?.[0],o]);L.transaction((()=>E(i,(e=>e(o)))?de(u,((e,s)=>Se(L,t,n,e,s(o,n)))):L.delRow(t,n)))})(n)},{3:p}=ce(h,null);return L.transaction((()=>g(t,1,e.addRowListener(s,null,((n,o,r)=>{e.hasRow(s,r)?S(r,s,r,p):(L.delRow(t,r),re(h,(({4:e})=>U(ce(e,r),(([,s])=>{w(t,s),ue(e,r)})))))}))))),k},delQueryDefinition:e=>(C(e),c(e),k),getStore:s,getQueryIds:o,forEachQuery:r,hasQuery:a,getTableId:i,delListener:e=>(T.delListener(e),k),destroy:d,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:s,...n}=T.getListenerStats();return n}};return Fe({[L]:[1,1],[p]:[0,1],[R]:[0,5],[S]:[1,2],[I]:[0,2],[y]:[1,3]},(([e,t],s)=>{x(e?["get","has","forEach"]:["get"],(e=>k[e+h+s]=(...t)=>T[e+s](...t))),k[f+h+s+u]=(...e)=>T[f+s+u](...j(e,0,t),((s,...n)=>e[t](k,...n)))})),Me(k)})),Ue=be((e=>{const t=ie(),s=ie(),o=ie(),r=ie(),[a,i,l,c,d,u,,,h,f,g]=Ie(e,(()=>[ie(),ie(),ie(),ie()]),(e=>K(e)?void 0:e+n)),[L,w,v]=Ve((()=>y)),S=(e,t,s)=>U(u(e),(([n,,o])=>{if(!te(o,t)){const r=Re();if(d(e)!=R(e))ye(r,t);else{let e=t;for(;!K(e)&&!te(r,e);)ye(r,e),e=ce(n,e)}if(s)return r;ue(o,t,r)}return ce(o,t)})),p=(e,t)=>U(u(e),(([,,e])=>ue(e,t))),R=e=>ce(t,e),y={setRelationshipDefinition:(e,n,a,i)=>(ue(t,e,a),h(e,n,((t,n)=>{const a=Re(),i=Re(),l=Re(),[c,d]=u(e);re(n,(([t,s],n)=>{K(t)||(ye(i,t),U(ce(d,t),(e=>{ae(e,n),se(e)&&ue(d,t)}))),K(s)||(ye(i,s),te(d,s)||ue(d,s,Re()),ye(ce(d,s),n)),ye(a,n),ue(c,n,s),de(ce(r,e),(t=>{te(S(e,t),n)&&ye(l,t)}))})),t(),re(a,(t=>w(s,[e,t]))),re(i,(t=>w(o,[e,t]))),re(l,(t=>{p(e,t),w(r,[e,t])}))}),Te(i)),y),delRelationshipDefinition:e=>(ue(t,e),f(e),y),getStore:a,getRelationshipIds:i,forEachRelationship:t=>l((s=>t(s,(t=>e.forEachRow(d(s),t))))),hasRelationship:c,getLocalTableId:d,getRemoteTableId:R,getRemoteRowId:(e,t)=>ce(u(e)?.[0],t),getLocalRowIds:(e,t)=>ne(ce(u(e)?.[1],t)),getLinkedRowIds:(e,t)=>K(u(e))?[t]:ne(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>L(n,s,[e,t]),addLocalRowIdsListener:(e,t,s)=>L(s,o,[e,t]),addLinkedRowIdsListener:(e,t,s)=>(S(e,t),L(s,r,[e,t])),delListener:e=>(p(...v(e)),y),destroy:g,getListenerStats:()=>({})};return Me(y)})),Xe=e=>[e,e],Ye=()=>[ie(),ie()],Ze=(e,t,s,n=ue)=>(Fe(t,((t,n)=>s(e,n,t))),de(e,(s=>Ae(t,s)?0:n(e,s))),e),_e=(e,t,s)=>K(e)||!xe(e)||Pe(e)||Je(e)?(s?.(),!1):(Fe(e,((s,n)=>{t(s,n)||De(e,n)})),!Pe(e)),et=(e,t,s)=>ue(e,t,ce(e,t)==-s?void 0:s),tt=()=>{let e,t,s,n,o=0;const r=ie(),i=ie(),d=ie(),h=ie(),g=ie(),R=ie(),E=ie(),J=ie(),D=ie(),F=ie(),P=ie(),Q=ie(),N=Re(),O=ie(),q=ie(),H=ie(),$=Ye(),G=Ye(),Z=Ye(),_=Ye(),ee=Ye(),ne=Ye(),we=Ye(),Ie=Ye(),Te=Ye(),be=Ye(),me=Ye(),Ee=Ye(),ke=Ye(),Je=Ye(),[xe,Qe,ze,Ne]=Ve((()=>ts)),Oe=e=>{if(!_e(e,((e,t)=>V([l,c],t))))return!1;const t=e[l];return!(!X(t)&&t!=a||(ve(e[c])!=t&&De(e,c),0))},We=(t,s)=>(!e||te(D,s)||bt(s))&&_e(t,((e,t)=>Be(s,t,e)),(()=>bt(s))),Be=(e,t,s,n)=>_e(n?s:Ge(s,e,t),((n,o)=>U(qe(e,t,o,n),(e=>(s[o]=e,!0)),(()=>!1))),(()=>bt(e,t))),qe=(t,s,n,o)=>e?U(ce(ce(D,t),n),(e=>ve(o)!=e[l]?bt(t,s,n,o,e[c]):o),(()=>bt(t,s,n,o))):K(ve(o))?bt(t,s,n,o):o,He=(e,t)=>_e(t?e:Ke(e),((t,s)=>U($e(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>mt())),$e=(e,s)=>t?U(ce(P,e),(t=>ve(s)!=t[l]?mt(e,s,t[c]):s),(()=>mt(e,s))):K(ve(s))?mt(e,s):s,Ge=(e,t,s)=>(U(ce(F,t),(([n,o])=>{re(n,((t,s)=>{Ae(e,s)||(e[s]=t)})),re(o,(n=>{Ae(e,n)||bt(t,s,n)}))})),e),Ke=e=>(t&&(re(Q,((t,s)=>{Ae(e,s)||(e[s]=t)})),re(N,(t=>{Ae(e,t)||mt(t)}))),e),Ue=e=>Ze(D,e,((e,t,s)=>{const n=ie(),o=Re();Ze(he(D,t,ie),s,((e,t,s)=>{ue(e,t,s),U(s[c],(e=>ue(n,t,e)),(()=>ye(o,t)))})),ue(F,t,[n,o])}),((e,t)=>{ue(D,t),ue(F,t)})),st=e=>Ze(P,e,((e,t,s)=>{ue(P,t,s),U(s[c],(e=>ue(Q,t,e)),(()=>ye(N,t)))}),((e,t)=>{ue(P,t),ue(Q,t),ae(N,t)})),nt=e=>Pe(e)?Kt():Bt(e),ot=e=>Ze(q,e,((e,t,s)=>rt(t,s)),((e,t)=>gt(t))),rt=(e,t)=>Ze(he(q,e,(()=>(St(e,1),ie()))),t,((t,s,n)=>at(e,t,s,n)),((t,s)=>Lt(e,t,s))),at=(e,t,s,n,o)=>Ze(he(t,s,(()=>(pt(e,s,1),ie()))),n,((t,n,o)=>it(e,s,t,n,o)),((n,r)=>wt(e,t,s,n,r,o))),it=(e,t,s,n,o)=>{te(s,n)||Rt(e,t,n,1);const r=ce(s,n);o!==r&&(yt(e,t,n,r,o),ue(s,n,o))},lt=(e,t,s,n,o)=>U(ce(t,s),(t=>it(e,s,t,n,o)),(()=>at(e,t,s,Ge({[n]:o},e,s)))),ct=e=>Pe(e)?Ut():qt(e),dt=e=>Ze(H,e,((e,t,s)=>ut(t,s)),((e,t)=>vt(t))),ut=(e,t)=>{te(H,e)||It(e,1);const s=ce(H,e);t!==s&&(Tt(e,s,t),ue(H,e,t))},ht=(e,t)=>{const[s]=he(O,e,Ce),n=s(t);return te(ce(q,e),n)?ht(e,t):n},ft=e=>ce(q,e)??rt(e,{}),gt=e=>rt(e,{}),Lt=(e,t,s)=>{const[,n]=he(O,e,Ce);n(s),at(e,t,s,{},!0)},wt=(e,t,s,n,o,r)=>{const a=ce(ce(F,e)?.[0],o);if(!K(a)&&!r)return it(e,s,n,o,a);const i=t=>{yt(e,s,t,ce(n,t)),Rt(e,s,t,-1),ue(n,t)};K(a)?i(o):de(n,i),se(n)&&(pt(e,s,-1),se(ue(t,s))&&(St(e,-1),ue(q,e),ue(O,e)))},vt=e=>{const t=ce(Q,e);if(!K(t))return ut(e,t);Tt(e,ce(H,e)),It(e,-1),ue(H,e)},St=(e,t)=>et(r,e,t),pt=(e,t,s)=>et(he(i,e,ie),t,s),Rt=(e,t,s,n)=>et(he(he(d,e,ie),t,ie),s,n),yt=(e,t,s,n,o)=>he(he(he(h,e,ie),t,ie),s,(()=>[n,0]))[1]=o,It=(e,t)=>et(g,e,t),Tt=(e,t,s)=>he(R,e,(()=>[t,0]))[1]=s,bt=(e,t,s,n,o)=>(z(he(he(he(E,e,ie),t,ie),s,(()=>[])),n),o),mt=(e,t,s)=>(z(he(J,e,(()=>[])),t),s),Ct=(e,t,s)=>U(ce(ce(ce(h,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(zt(e,t,s))])),Vt=e=>U(ce(R,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Xe(Wt(e))])),Et=e=>se(E)||se(Te[e])?0:re(e?ge(E,Le):E,((t,s)=>re(t,((t,n)=>re(t,((t,o)=>Qe(Te[e],[s,n,o],t))))))),kt=e=>se(J)||se(be[e])?0:re(e?ge(J):J,((t,s)=>Qe(be[e],[s],t))),Jt=(e,t,s)=>{if(!se(t))return Qe(e,s),1},Mt=e=>{const t=se(ee[e]),s=se(we[e])&&se(_[e])&&t&&se(G[e]),n=se(Ie[e])&&se(ne[e])&&se(Z[e])&&se($[e]);if(!s||!n){const o=e?[ge(r),Le(i),ge(d,Le),ge(h,Le)]:[r,i,d,h];if(!s){re(o[2],((t,s)=>re(t,((t,n)=>Jt(we[e],t,[s,n])))));const s=Re();re(o[1],((n,o)=>{Jt(_[e],n,[o])&&!t&&(Qe(ee[e],[o,null]),ye(s,o))})),t||re(o[3],((t,n)=>{if(!te(s,n)){const s=Re();re(t,(e=>re(e,(([t,n],o)=>n!==t?ye(s,o):ae(e,o))))),re(s,(t=>Qe(ee[e],[n,t])))}})),Jt(G[e],o[0])}if(!n){let t;re(o[3],((s,n)=>{let o;re(s,((s,r)=>{let a;re(s,(([s,i],l)=>{i!==s&&(Qe(Ie[e],[n,r,l],i,s,Ct),t=o=a=1)})),a&&Qe(ne[e],[n,r],Ct)})),o&&Qe(Z[e],[n],Ct)})),t&&Qe($[e],void 0,Ct)}}},xt=e=>{const t=se(Ee[e]),s=se(ke[e])&&se(me[e]);if(!t||!s){const n=e?[ge(g),ge(R)]:[g,R];if(t||Jt(Ee[e],n[0]),!s){let t;re(n[1],(([s,n],o)=>{n!==s&&(Qe(ke[e],[o],n,s,Vt),t=1)})),t&&Qe(me[e],void 0,Vt)}}},At=(e,...t)=>(Zt((()=>e(...A(t,C)))),ts),Dt=()=>fe(q,(e=>fe(e,fe))),Ft=()=>le(q),Pt=e=>le(ce(q,C(e))),Qt=(e,t,s,n=0,o)=>{return A(j(M((r=ce(q,C(e)),a=(e,s)=>[K(t)?s:ce(e,C(t)),s],A([...r?.entries()??[]],(([e,t])=>a(t,e)))),(([e],[t])=>je(e,t)*(s?-1:1))),n,K(o)?o:n+o),(([,e])=>e));var r,a},jt=(e,t)=>le(ce(ce(q,C(e)),C(t))),zt=(e,t,s)=>ce(ce(ce(q,C(e)),C(t)),C(s)),Nt=()=>fe(H),Ot=()=>le(H),Wt=e=>ce(H,C(e)),Bt=e=>At((()=>(e=>_e(e,We,bt))(e)?ot(e):0)),qt=e=>At((()=>He(e)?dt(e):0)),Ht=e=>{try{nt(B(e))}catch{}return ts},$t=t=>At((()=>{if((e=_e(t,(e=>_e(e,Oe))))&&(Ue(t),!se(q))){const e=Dt();Kt(),Bt(e)}})),Gt=e=>At((()=>{if(t=(e=>_e(e,Oe))(e)){const s=Nt();Yt(),Ut(),t=!0,st(e),qt(s)}})),Kt=()=>At((()=>ot({}))),Ut=()=>At((()=>dt({}))),Xt=()=>At((()=>{Ue({}),e=!1})),Yt=()=>At((()=>{st({}),t=!1})),Zt=(e,t)=>{if(-1==o)return;_t();const s=e();return es(t),s},_t=()=>(o++,ts),es=e=>(o>0&&(o--,0==o&&(s=!se(h),n=!se(R),o=1,Et(1),s&&Mt(1),kt(1),n&&xt(1),o=-1,e?.(fe(h,(e=>fe(e,(e=>fe(e,(e=>[...e]),(([e,t])=>e===t))),Pe)),Pe),fe(E,(e=>fe(e,fe))),fe(R,(e=>[...e]),(([e,t])=>e===t)),fe(J))&&(o=1,re(h,((e,t)=>re(e,((e,s)=>re(e,(([e],n)=>Se(ts,t,s,n,e))))))),re(R,(([e],t)=>pe(ts,t,e))),o=-1,s=n=!1),Qe(Je[0],void 0,s,n),Et(0),s&&Mt(0),kt(0),n&&xt(0),Qe(Je[1],void 0,s,n),o=0,x([r,i,d,h,E,g,R,J],oe))),ts),ts={getTables:Dt,getTableIds:Ft,getTable:e=>fe(ce(q,C(e)),fe),getRowIds:Pt,getSortedRowIds:Qt,getRow:(e,t)=>fe(ce(ce(q,C(e)),C(t))),getCellIds:jt,getCell:zt,getValues:Nt,getValueIds:Ot,getValue:Wt,hasTables:()=>!se(q),hasTable:e=>te(q,C(e)),hasRow:(e,t)=>te(ce(q,C(e)),C(t)),hasCell:(e,t,s)=>te(ce(ce(q,C(e)),C(t)),C(s)),hasValues:()=>!se(H),hasValue:e=>te(H,C(e)),getTablesJson:()=>W(q),getValuesJson:()=>W(H),getJson:()=>W([q,H]),getTablesSchemaJson:()=>W(D),getValuesSchemaJson:()=>W(P),getSchemaJson:()=>W([D,P]),setTables:Bt,setTable:(e,t)=>At((e=>We(t,e)?rt(e,t):0),e),setRow:(e,t,s)=>At(((e,t)=>Be(e,t,s)?at(e,ft(e),t,s):0),e,t),addRow:(e,t,s=!0)=>Zt((()=>{let n;return Be(e,n,t)&&(e=C(e),at(e,ft(e),n=ht(e,s?1:0),t)),n})),setPartialRow:(e,t,s)=>At(((e,t)=>{if(Be(e,t,s,1)){const n=ft(e);Fe(s,((s,o)=>lt(e,n,t,o,s)))}}),e,t),setCell:(e,t,s,n)=>At(((e,t,s)=>U(qe(e,t,s,Y(n)?n(zt(e,t,s)):n),(n=>lt(e,ft(e),t,s,n)))),e,t,s),setValues:qt,setPartialValues:e=>At((()=>He(e,1)?Fe(e,((e,t)=>ut(t,e))):0)),setValue:(e,t)=>At((e=>U($e(e,Y(t)?t(Wt(e)):t),(t=>ut(e,t)))),e),setTablesJson:Ht,setValuesJson:e=>{try{ct(B(e))}catch{}return ts},setJson:e=>{try{const[t,s]=B(e);nt(t),ct(s)}catch{Ht(e)}return ts},setTablesSchema:$t,setValuesSchema:Gt,setSchema:(e,t)=>At((()=>{$t(e),Gt(t)})),delTables:Kt,delTable:e=>At((e=>te(q,e)?gt(e):0),e),delRow:(e,t)=>At(((e,t)=>U(ce(q,e),(s=>te(s,t)?Lt(e,s,t):0))),e,t),delCell:(e,t,s,n)=>At(((e,t,s)=>U(ce(q,e),(o=>U(ce(o,t),(r=>te(r,s)?wt(e,o,t,r,s,n):0))))),e,t,s),delValues:Ut,delValue:e=>At((e=>te(H,e)?vt(e):0),e),delTablesSchema:Xt,delValuesSchema:Yt,delSchema:()=>At((()=>{Xt(),Yt()})),transaction:Zt,startTransaction:_t,finishTransaction:es,forEachTable:e=>re(q,((t,s)=>e(s,(e=>re(t,((t,s)=>e(s,(e=>de(t,e))))))))),forEachRow:(e,t)=>re(ce(q,C(e)),((e,s)=>t(s,(t=>de(e,t))))),forEachCell:(e,t,s)=>de(ce(ce(q,C(e)),C(t)),s),forEachValue:e=>de(H,e),addSortedRowIdsListener:(e,t,s,n,o,r,a)=>{let i=Qt(e,t,s,n,o);return xe((()=>{const a=Qt(e,t,s,n,o);k(a,i)||(i=a,r(ts,e,t,s,n,o,i))}),ee[a?1:0],[e,t],[Ft])},addWillFinishTransactionListener:e=>xe(e,Je[0]),addDidFinishTransactionListener:e=>xe(e,Je[1]),callListener:e=>(Ne(e),ts),delListener:e=>(ze(e),ts),getListenerStats:()=>({}),createStore:tt};return Fe({[w]:[0,$],[v]:[0,G],[L]:[1,Z,[Ft]],[p]:[1,_,[Ft]],[S]:[2,ne,[Ft,Pt]],[I]:[2,we,[Ft,Pt]],[y]:[3,Ie,[Ft,Pt,jt],e=>Xe(zt(...e))],InvalidCell:[3,Te],[b]:[0,me],[m]:[0,Ee],[T]:[1,ke,[Ot],e=>Xe(Wt(e[0]))],InvalidValue:[1,be]},(([e,t,s,n],o)=>{ts[f+o+u]=(...o)=>xe(o[e],t[o[e+1]?1:0],e>0?j(o,0,e):void 0,s,n)})),Me(ts)};e.createCheckpoints=Qe,e.createCustomPersister=Be,e.createFilePersister=(e,s)=>{let n;return Be(e,(async()=>{try{return await t.promises.readFile(s,d)}catch{}}),(async e=>{try{await t.promises.writeFile(s,e,d)}catch{}}),(e=>{n=t.watch(s,e)}),(()=>{n?.close(),n=void 0}))},e.createIndexes=ze,e.createLocalPersister=(e,t)=>$e(e,t,localStorage),e.createMetrics=We,e.createQueries=Ke,e.createRelationships=Ue,e.createRemotePersister=(e,t,s,n)=>{let o,r;return Be(e,(async()=>{const e=await fetch(t);return r=Ge(e),e.text()}),(async e=>await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:e})),(e=>{o=setInterval((async()=>{const s=await fetch(t,{method:"HEAD"}),n=Ge(s);K(r)||K(n)||n==r||(r=n,e())}),1e3*n)}),(()=>{U(o,clearInterval),o=void 0}))},e.createSessionPersister=(e,t)=>$e(e,t,sessionStorage),e.createStore=tt,e.defaultSorter=je},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("fs")):"function"==typeof define&&define.amd?define(["exports","fs"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBase={},e.fs);
Binary file
@@ -1 +1 @@
1
- var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u="Tables",n=d+r,i="Row",a=i+r,I="SortedRowIds",c="Cell",w=c+r,R="Value",C="Values",b=R+r,p=(e,s)=>e.map(s),k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),m=e=>t(e)==l,h=()=>{},{createContext:V,useContext:L}=s,y=V([]),S=(e,s)=>{const t=L(y);return k(e)?t[s]:m(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return k(e)||m(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=k(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=h,r=[],...d)=>{const u=f(e);return M((e=>g(u,(o=>g(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=h,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(p(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(p(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>k(e)?{}:e(s),ge=(e,s,t,o)=>{const l=k(s)||!Array.isArray(e)?e:p(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(p(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Ve=e=>we(e,K(e.tableId,e.store)),Le=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(p(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(p(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>k(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(p($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(k(n)||k(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Ve,e.TablesView=({store:e,tableComponent:s=Ve,getTableComponentProps:t,separator:o,debugIds:l})=>ge(p(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Le,e.ValuesView=({store:e,valueComponent:s=Le,getValueComponentProps:t,separator:o,debugIds:l})=>ge(p(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=h,r=[],d=!0)=>{const u=f(o);return M((t=>g(u,(o=>g(s(t,o),(s=>l(o.addRow(e,s,d),o,s)))))),[u,e,...t,...r,d])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!k(t),ae(s),t,g(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=h,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,g(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
1
+ var e,s;e=this,s=function(e,s){"use strict";const t=e=>typeof e,o="",l=t(o),r="Ids",d="Table",u=d+"s",n=d+r,i="Row",a=i+r,I="Sorted"+i+r,c="Cell",w=c+r,R="Value",C=R+"s",b=R+r,p=(e,s)=>e.map(s),k=e=>null==e,g=(e,s,t)=>k(e)?t?.():s(e),m=e=>t(e)==l,h=()=>{},{createContext:L,useContext:V}=s,y=L([]),S=(e,s)=>{const t=V(y);return k(e)?t[s]:m(e)?((e,s)=>g(e,(e=>e[s])))(t[s+1],e):e},T=(e,s)=>{const t=S(e,s);return k(e)||m(e)?t:e},f=e=>T(e,0),v=e=>T(e,2),P=e=>T(e,4),q=e=>T(e,6),x=e=>T(e,8),B=e=>T(e,10),{useCallback:M,useEffect:D,useMemo:A,useRef:F,useState:G}=s,E=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return D((()=>()=>o.destroy()),[o]),o},Q=(e,s,t,o=[],l)=>{const[,r]=G(),d=M((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[u]=G(d),n=F(u);return A((()=>n.current=d()),[d]),U(e,s,((...e)=>{n.current=k(l)?d():e[l],r([])}),[],o),n.current},U=(e,s,t,o=[],l=[],...r)=>D((()=>{const o=s?.["add"+e+"Listener"]?.(...l,t,...r);return()=>s?.delListener(o)}),[s,...l,...o,...r]),j=(e,s,t,o=[],l=h,r=[],...d)=>{const u=f(e);return M((e=>g(u,(o=>g(t(e,o),(e=>l(o["set"+s](...d,e),e)))))),[u,s,...o,...r,...d])},z=(e,s,t=h,o=[],...l)=>{const r=f(e);return M((()=>t(r?.["del"+s](...l))),[r,s,...o,...l])},H=(e,s,t)=>{const o=B(e);return M((()=>o?.[s](t)),[o,s,t])},J=e=>Q(n,f(e),[],[]),K=(e,s)=>Q(a,f(s),[],[e]),N=(e,s,t,o=0,l,r)=>Q(I,f(r),[],[e,s,t,o,l],6),O=(e,s,t)=>Q(w,f(t),[],[e,s]),W=(e,s,t,o)=>Q(c,f(o),void 0,[e,s,t],4),X=e=>Q(b,f(e),[],[]),Y=(e,s)=>Q(R,f(s),void 0,[e]),Z=(e,s)=>Q("Metric",v(s),void 0,[e]),$=(e,s)=>Q("SliceIds",P(s),[],[e]),_=(e,s,t)=>Q("SliceRowIds",P(t),[],[e,s]),ee=(e,s,t)=>Q("RemoteRowId",q(t),void 0,[e,s]),se=(e,s,t)=>Q("LocalRowIds",q(t),[],[e,s]),te=(e,s,t)=>Q("LinkedRowIds",q(t),[],[e,s]),oe=(e,s)=>Q("ResultRowIds",x(s),[],[e]),le=(e,s,t,o=0,l,r)=>Q("ResultSortedRowIds",x(r),[],[e,s,t,o,l],6),re=(e,s,t)=>Q("ResultCellIds",x(t),[],[e,s]),de=(e,s,t,o)=>Q("ResultCell",x(o),void 0,[e,s,t]),ue=e=>Q("CheckpointIds",B(e),[[],void 0,[]]),ne=(e,s)=>Q("Checkpoint",B(s),void 0,[e]),ie=e=>H(e,"goBackward"),ae=e=>H(e,"goForward"),{createElement:Ie,useMemo:ce}=s,we=({tableId:e,store:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,tableId:e,rowId:l,store:s,debugIds:r}))),l,r,e),Re=({queryId:e,queries:s,resultRowComponent:t=Te,getResultRowComponentProps:o,separator:l,debugIds:r},d)=>ge(p(d,(l=>Ie(t,{...ke(o,l),key:l,queryId:e,rowId:l,queries:s,debugIds:r}))),l,r,e),Ce=e=>{const s=q(e);return[s,s?.getStore()]},be=({relationshipId:e,relationships:s,rowComponent:t=he,getRowComponentProps:o,separator:l,debugIds:r},d,u)=>{const[n,i]=Ce(s),a=n?.getLocalTableId(e),I=d(e,u,n);return ge(p(I,(e=>Ie(t,{...ke(o,e),key:e,tableId:a,rowId:e,store:i,debugIds:r}))),l,r,u)},pe=e=>({checkpoints:s,checkpointComponent:t=fe,getCheckpointComponentProps:o,separator:l,debugIds:r})=>{const d=B(s);return ge(p(e(ue(d)),(e=>Ie(t,{...ke(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:r}))),l)},ke=(e,s)=>k(e)?{}:e(s),ge=(e,s,t,o)=>{const l=k(s)||!Array.isArray(e)?e:p(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",l,"}"]:l},me=({tableId:e,rowId:s,cellId:t,store:l,debugIds:r})=>ge(o+(W(e,s,t,l)??o),void 0,r,t),he=({tableId:e,rowId:s,store:t,cellComponent:o=me,getCellComponentProps:l,separator:r,debugIds:d})=>ge(p(O(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,tableId:e,rowId:s,cellId:r,store:t,debugIds:d}))),r,d,s),Le=e=>we(e,K(e.tableId,e.store)),Ve=({valueId:e,store:s,debugIds:t})=>ge(o+(Y(e,s)??o),void 0,t,e),ye=({indexId:e,sliceId:s,indexes:t,rowComponent:o=he,getRowComponentProps:l,separator:r,debugIds:d})=>{const u=P(t),n=u?.getStore(),i=u?.getTableId(e),a=_(e,s,u);return ge(p(a,(e=>Ie(o,{...ke(l,e),key:e,tableId:i,rowId:e,store:n,debugIds:d}))),r,d,s)},Se=({queryId:e,rowId:s,cellId:t,queries:l,debugIds:r})=>ge(o+(de(e,s,t,l)??o),void 0,r,t),Te=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Se,getResultCellComponentProps:l,separator:r,debugIds:d})=>ge(p(re(e,s,t),(r=>Ie(o,{...ke(l,r),key:r,queryId:e,rowId:s,cellId:r,queries:t,debugIds:d}))),r,d,s),fe=({checkpoints:e,checkpointId:s,debugIds:t})=>ge(ne(s,e)??o,void 0,t,s),ve=pe((e=>e[0])),Pe=pe((e=>k(e[1])?[]:[e[1]])),qe=pe((e=>e[2]));e.BackwardCheckpointsView=ve,e.CellView=me,e.CheckpointView=fe,e.CurrentCheckpointView=Pe,e.ForwardCheckpointsView=qe,e.IndexView=({indexId:e,indexes:s,sliceComponent:t=ye,getSliceComponentProps:o,separator:l,debugIds:r})=>ge(p($(e,s),(l=>Ie(t,{...ke(o,l),key:l,indexId:e,sliceId:l,indexes:s,debugIds:r}))),l,r,e),e.LinkedRowsView=e=>be(e,te,e.firstRowId),e.LocalRowsView=e=>be(e,se,e.remoteRowId),e.MetricView=({metricId:e,metrics:s,debugIds:t})=>ge(Z(e,s)??o,void 0,t,e),e.Provider=({store:e,storesById:t,metrics:o,metricsById:l,indexes:r,indexesById:d,relationships:u,relationshipsById:n,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:w})=>{const R=s.useContext(y);return Ie(y.Provider,{value:ce((()=>[e??R[0],{...R[1],...t},o??R[2],{...R[3],...l},r??R[4],{...R[5],...d},u??R[6],{...R[7],...n},i??R[8],{...R[9],...a},I??R[10],{...R[11],...c}]),[e,t,o,l,r,d,u,n,i,a,I,c,R])},w)},e.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=he,getRowComponentProps:l,debugIds:r})=>{const[d,u]=Ce(t),n=d?.getRemoteTableId(e),i=ee(e,s,d);return ge(k(n)||k(i)?null:Ie(o,{...ke(l,i),key:i,tableId:n,rowId:i,store:u,debugIds:r}),void 0,r,s)},e.ResultCellView=Se,e.ResultRowView=Te,e.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>Re(l,le(l.queryId,e,s,t,o,l.queries)),e.ResultTableView=e=>Re(e,oe(e.queryId,e.queries)),e.RowView=he,e.SliceView=ye,e.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...l})=>we(l,N(l.tableId,e,s,t,o,l.store)),e.TableView=Le,e.TablesView=({store:e,tableComponent:s=Le,getTableComponentProps:t,separator:o,debugIds:l})=>ge(p(J(e),(o=>Ie(s,{...ke(t,o),key:o,tableId:o,store:e,debugIds:l}))),o),e.ValueView=Ve,e.ValuesView=({store:e,valueComponent:s=Ve,getValueComponentProps:t,separator:o,debugIds:l})=>ge(p(X(e),(o=>Ie(s,{...ke(t,o),key:o,valueId:o,store:e,debugIds:l}))),o),e.tableView=we,e.useAddRowCallback=(e,s,t=[],o,l=h,r=[],d=!0)=>{const u=f(o);return M((t=>g(u,(o=>g(s(t,o),(s=>l(o.addRow(e,s,d),o,s)))))),[u,e,...t,...r,d])},e.useCell=W,e.useCellIds=O,e.useCellIdsListener=(e,s,t,o,l,r)=>U(w,f(r),t,o,[e,s],l),e.useCellListener=(e,s,t,o,l,r,d)=>U(c,f(d),o,l,[e,s,t],r),e.useCheckpoint=ne,e.useCheckpointIds=ue,e.useCheckpointIdsListener=(e,s,t)=>U("CheckpointIds",B(t),e,s),e.useCheckpointListener=(e,s,t,o)=>U("Checkpoint",B(o),s,t,[e]),e.useCheckpoints=e=>S(e,10),e.useCreateCheckpoints=(e,s,t)=>E(e,s,t),e.useCreateIndexes=(e,s,t)=>E(e,s,t),e.useCreateMetrics=(e,s,t)=>E(e,s,t),e.useCreatePersister=(e,s,t=[],o,l=[])=>{const[,r]=G(),d=A((()=>s(e)),[e,...t]);return D((()=>((async()=>{await(o?.(d)),r(1)})(),()=>{d.destroy()})),[d,...l]),d},e.useCreateQueries=(e,s,t)=>E(e,s,t),e.useCreateRelationships=(e,s,t)=>E(e,s,t),e.useCreateStore=(e,s=[])=>A(e,s),e.useDelCellCallback=(e,s,t,o,l,r,d)=>z(l,c,r,d,e,s,t,o),e.useDelRowCallback=(e,s,t,o,l)=>z(t,i,o,l,e,s),e.useDelTableCallback=(e,s,t,o)=>z(s,d,t,o,e),e.useDelTablesCallback=(e,s,t)=>z(e,u,s,t),e.useDelValueCallback=(e,s,t,o)=>z(s,R,t,o,e),e.useDelValuesCallback=(e,s,t)=>z(e,C,s,t),e.useGoBackwardCallback=ie,e.useGoForwardCallback=ae,e.useGoToCallback=(e,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>g(e(s),(e=>o(t.goTo(e),e)))))),[r,...s,...l])},e.useIndexes=e=>S(e,4),e.useLinkedRowIds=te,e.useLinkedRowIdsListener=(e,s,t,o,l)=>U("LinkedRowIds",q(l),t,o,[e,s]),e.useLocalRowIds=se,e.useLocalRowIdsListener=(e,s,t,o,l)=>U("LocalRowIds",q(l),t,o,[e,s]),e.useMetric=Z,e.useMetricListener=(e,s,t,o)=>U("Metric",v(o),s,t,[e]),e.useMetrics=e=>S(e,2),e.useQueries=e=>S(e,8),e.useRedoInformation=e=>{const s=B(e),[,,[t]]=ue(s);return[!k(t),ae(s),t,g(t,(e=>s?.getCheckpoint(e)))??o]},e.useRelationships=e=>S(e,6),e.useRemoteRowId=ee,e.useRemoteRowIdListener=(e,s,t,o,l)=>U("RemoteRowId",q(l),t,o,[e,s]),e.useResultCell=de,e.useResultCellIds=re,e.useResultCellIdsListener=(e,s,t,o,l)=>U("ResultCellIds",x(l),t,o,[e,s]),e.useResultCellListener=(e,s,t,o,l,r)=>U("ResultCell",x(r),o,l,[e,s,t]),e.useResultRow=(e,s,t)=>Q("ResultRow",x(t),{},[e,s]),e.useResultRowIds=oe,e.useResultRowIdsListener=(e,s,t,o)=>U("ResultRowIds",x(o),s,t,[e]),e.useResultRowListener=(e,s,t,o,l)=>U("ResultRow",x(l),t,o,[e,s]),e.useResultSortedRowIds=le,e.useResultSortedRowIdsListener=(e,s,t,o,l,r,d,u)=>U("ResultSortedRowIds",x(u),r,d,[e,s,t,o,l]),e.useResultTable=(e,s)=>Q("ResultTable",x(s),{},[e]),e.useResultTableListener=(e,s,t,o)=>U("ResultTable",x(o),s,t,[e]),e.useRow=(e,s,t)=>Q(i,f(t),{},[e,s]),e.useRowIds=K,e.useRowIdsListener=(e,s,t,o,l)=>U(a,f(l),s,t,[e],o),e.useRowListener=(e,s,t,o,l,r)=>U(i,f(r),t,o,[e,s],l),e.useSetCellCallback=(e,s,t,o,l,r,d,u)=>j(r,c,o,l,d,u,e,s,t),e.useSetCheckpointCallback=(e=h,s=[],t,o=h,l=[])=>{const r=B(t);return M((s=>g(r,(t=>{const l=e(s);o(t.addCheckpoint(l),t,l)}))),[r,...s,...l])},e.useSetPartialRowCallback=(e,s,t,o,l,r,d)=>j(l,"PartialRow",t,o,r,d,e,s),e.useSetPartialValuesCallback=(e,s,t,o,l)=>j(t,"PartialValues",e,s,o,l),e.useSetRowCallback=(e,s,t,o,l,r,d)=>j(l,i,t,o,r,d,e,s),e.useSetTableCallback=(e,s,t,o,l,r)=>j(o,d,s,t,l,r,e),e.useSetTablesCallback=(e,s,t,o,l)=>j(t,u,e,s,o,l),e.useSetValueCallback=(e,s,t,o,l,r)=>j(o,R,s,t,l,r,e),e.useSetValuesCallback=(e,s,t,o,l)=>j(t,C,e,s,o,l),e.useSliceIds=$,e.useSliceIdsListener=(e,s,t,o)=>U("SliceIds",P(o),s,t,[e]),e.useSliceRowIds=_,e.useSliceRowIdsListener=(e,s,t,o,l)=>U("SliceRowIds",P(l),t,o,[e,s]),e.useSortedRowIds=N,e.useSortedRowIdsListener=(e,s,t,o,l,r,d,u,n)=>U(I,f(n),r,d,[e,s,t,o,l],u),e.useStore=e=>S(e,0),e.useTable=(e,s)=>Q(d,f(s),{},[e]),e.useTableIds=J,e.useTableIdsListener=(e,s,t,o)=>U(n,f(o),e,s,[],t),e.useTableListener=(e,s,t,o,l)=>U(d,f(l),s,t,[e],o),e.useTables=e=>Q(u,f(e),{}),e.useTablesListener=(e,s,t,o)=>U(u,f(o),e,s,[],t),e.useUndoInformation=e=>{const s=B(e),[t,l]=ue(s);return[(r=t,!(0==(e=>e.length)(r))),ie(s),l,g(l,(e=>s?.getCheckpoint(e)))??o];var r},e.useValue=Y,e.useValueIds=X,e.useValueIdsListener=(e,s,t,o)=>U(b,f(o),e,s,[],t),e.useValueListener=(e,s,t,o,l)=>U(R,f(l),s,t,[e],o),e.useValues=e=>Q(C,f(e),{}),e.useValuesListener=(e,s,t,o)=>U(C,f(o),e,s,[],t)},"object"==typeof exports&&"undefined"!=typeof module?s(exports,require("react")):"function"==typeof define&&define.amd?define(["exports","react"],s):s((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReact={},e.React);
Binary file