tinybase 4.1.0-beta.1 → 4.1.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/queries.cjs +1 -1
- package/lib/cjs/queries.cjs.gz +0 -0
- package/lib/cjs/tinybase.cjs +1 -1
- package/lib/cjs/tinybase.cjs.gz +0 -0
- package/lib/cjs/ui-react-dom.cjs +1 -1
- package/lib/cjs/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs/ui-react.cjs +1 -1
- package/lib/cjs/ui-react.cjs.gz +0 -0
- package/lib/cjs-es6/queries.cjs +1 -1
- package/lib/cjs-es6/queries.cjs.gz +0 -0
- package/lib/cjs-es6/tinybase.cjs +1 -1
- package/lib/cjs-es6/tinybase.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react-dom.cjs +1 -1
- package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
- package/lib/cjs-es6/ui-react.cjs +1 -1
- package/lib/cjs-es6/ui-react.cjs.gz +0 -0
- package/lib/debug/queries.js +1 -0
- package/lib/debug/tinybase.js +1 -0
- package/lib/debug/ui-react-dom.js +115 -28
- package/lib/debug/ui-react.js +22 -0
- package/lib/es6/queries.js +1 -1
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/ui-react-dom.js +1 -1
- package/lib/es6/ui-react-dom.js.gz +0 -0
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/types/queries.d.ts +67 -0
- package/lib/types/ui-react-dom.d.ts +442 -70
- package/lib/types/ui-react.d.ts +269 -58
- package/lib/types/with-schemas/internal/ui-react.d.ts +8 -8
- package/lib/types/with-schemas/queries.d.ts +76 -0
- package/lib/types/with-schemas/ui-react-dom.d.ts +498 -95
- package/lib/types/with-schemas/ui-react.d.ts +281 -50
- package/lib/ui-react-dom.js +1 -1
- package/lib/ui-react-dom.js.gz +0 -0
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/ui-react-dom.js +1 -1
- package/lib/umd/ui-react-dom.js.gz +0 -0
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/queries.js +1 -1
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/ui-react-dom.js +1 -1
- package/lib/umd-es6/ui-react-dom.js.gz +0 -0
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +5 -5
- package/readme.md +2 -2
|
@@ -1,26 +1,39 @@
|
|
|
1
1
|
import {
|
|
2
2
|
useRowIds,
|
|
3
|
+
useTableCellIds,
|
|
3
4
|
useSortedRowIds,
|
|
4
5
|
useValueIds,
|
|
5
6
|
ValueView,
|
|
6
|
-
|
|
7
|
+
ResultCellView,
|
|
8
|
+
useResultRowIds,
|
|
9
|
+
useResultTableCellIds,
|
|
10
|
+
useResultSortedRowIds,
|
|
7
11
|
CellView,
|
|
8
12
|
} from './ui-react';
|
|
9
13
|
import React from 'react';
|
|
10
14
|
|
|
15
|
+
const getTypeOf = (thing) => typeof thing;
|
|
11
16
|
const EMPTY_STRING = '';
|
|
17
|
+
const STRING = getTypeOf(EMPTY_STRING);
|
|
12
18
|
const VALUE = 'Value';
|
|
13
19
|
|
|
14
20
|
const arrayMap = (array, cb) => array.map(cb);
|
|
15
21
|
|
|
16
22
|
const isUndefined = (thing) => thing == void 0;
|
|
23
|
+
const isString = (thing) => getTypeOf(thing) == STRING;
|
|
24
|
+
const isArray = (thing) => Array.isArray(thing);
|
|
25
|
+
|
|
26
|
+
const object = Object;
|
|
27
|
+
const objNew = (entries = []) => object.fromEntries(entries);
|
|
28
|
+
const objMap = (obj, cb) =>
|
|
29
|
+
arrayMap(object.entries(obj), ([id, value]) => cb(value, id));
|
|
17
30
|
|
|
18
31
|
const {createContext, useContext} = React;
|
|
19
32
|
createContext([]);
|
|
20
33
|
const getProps = (getProps2, ...ids) =>
|
|
21
34
|
isUndefined(getProps2) ? {} : getProps2(...ids);
|
|
22
35
|
|
|
23
|
-
const {createElement, useCallback, useState} = React;
|
|
36
|
+
const {createElement, useCallback, useMemo, useState} = React;
|
|
24
37
|
const useCallbackOrUndefined = (callback, deps, test) => {
|
|
25
38
|
const returnCallback = useCallback(callback, deps);
|
|
26
39
|
return test ? returnCallback : void 0;
|
|
@@ -50,20 +63,36 @@ const HtmlHeaderTh = ({
|
|
|
50
63
|
label,
|
|
51
64
|
);
|
|
52
65
|
const HtmlTable = ({
|
|
53
|
-
tableId,
|
|
54
|
-
rowIds,
|
|
55
|
-
store,
|
|
56
|
-
cellComponent: Cell = CellView,
|
|
57
|
-
getCellComponentProps,
|
|
58
66
|
className,
|
|
59
67
|
headerRow,
|
|
60
68
|
idColumn,
|
|
61
|
-
|
|
69
|
+
customCells,
|
|
70
|
+
storeTableIdOrQueriesQueryId,
|
|
71
|
+
defaultCellView = CellView,
|
|
72
|
+
rowIds,
|
|
73
|
+
defaultCellIds,
|
|
62
74
|
sorting,
|
|
63
75
|
onHeaderThClick,
|
|
64
76
|
}) => {
|
|
65
|
-
const
|
|
66
|
-
|
|
77
|
+
const customCellConfigurations = useMemo(() => {
|
|
78
|
+
const cellIds = customCells ?? defaultCellIds;
|
|
79
|
+
return objNew(
|
|
80
|
+
objMap(
|
|
81
|
+
isArray(cellIds)
|
|
82
|
+
? objNew(arrayMap(cellIds, (cellId) => [cellId, cellId]))
|
|
83
|
+
: cellIds,
|
|
84
|
+
(labelOrCustomCell, cellId) => [
|
|
85
|
+
cellId,
|
|
86
|
+
{
|
|
87
|
+
...{label: cellId},
|
|
88
|
+
...(isString(labelOrCustomCell)
|
|
89
|
+
? {label: labelOrCustomCell}
|
|
90
|
+
: labelOrCustomCell),
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
),
|
|
94
|
+
);
|
|
95
|
+
}, [customCells, defaultCellIds]);
|
|
67
96
|
return /* @__PURE__ */ createElement(
|
|
68
97
|
'table',
|
|
69
98
|
{className},
|
|
@@ -82,10 +111,11 @@ const HtmlTable = ({
|
|
|
82
111
|
label: 'Id',
|
|
83
112
|
onClick: onHeaderThClick,
|
|
84
113
|
}),
|
|
85
|
-
|
|
114
|
+
objMap(customCellConfigurations, ({label}, cellId) =>
|
|
86
115
|
/* @__PURE__ */ createElement(HtmlHeaderTh, {
|
|
87
116
|
key: cellId,
|
|
88
117
|
cellId,
|
|
118
|
+
label,
|
|
89
119
|
sorting,
|
|
90
120
|
onClick: onHeaderThClick,
|
|
91
121
|
}),
|
|
@@ -102,18 +132,22 @@ const HtmlTable = ({
|
|
|
102
132
|
idColumn === false
|
|
103
133
|
? null
|
|
104
134
|
: /* @__PURE__ */ createElement('th', null, rowId),
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
{
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
cellId,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
135
|
+
objMap(
|
|
136
|
+
customCellConfigurations,
|
|
137
|
+
(
|
|
138
|
+
{component: CellView2 = defaultCellView, getComponentProps},
|
|
139
|
+
cellId,
|
|
140
|
+
) =>
|
|
141
|
+
/* @__PURE__ */ createElement(
|
|
142
|
+
'td',
|
|
143
|
+
{key: cellId},
|
|
144
|
+
/* @__PURE__ */ createElement(CellView2, {
|
|
145
|
+
...getProps(getComponentProps, rowId, cellId),
|
|
146
|
+
...storeTableIdOrQueriesQueryId,
|
|
147
|
+
rowId,
|
|
148
|
+
cellId,
|
|
149
|
+
}),
|
|
150
|
+
),
|
|
117
151
|
),
|
|
118
152
|
),
|
|
119
153
|
),
|
|
@@ -123,9 +157,12 @@ const HtmlTable = ({
|
|
|
123
157
|
const TableInHtmlTable = ({tableId, store, ...props}) =>
|
|
124
158
|
/* @__PURE__ */ createElement(HtmlTable, {
|
|
125
159
|
...props,
|
|
126
|
-
|
|
127
|
-
|
|
160
|
+
storeTableIdOrQueriesQueryId: useMemo(
|
|
161
|
+
() => ({store, tableId}),
|
|
162
|
+
[store, tableId],
|
|
163
|
+
),
|
|
128
164
|
rowIds: useRowIds(tableId, store),
|
|
165
|
+
defaultCellIds: useTableCellIds(tableId, store),
|
|
129
166
|
});
|
|
130
167
|
const SortedTableInHtmlTable = ({
|
|
131
168
|
tableId,
|
|
@@ -146,9 +183,12 @@ const SortedTableInHtmlTable = ({
|
|
|
146
183
|
);
|
|
147
184
|
return /* @__PURE__ */ createElement(HtmlTable, {
|
|
148
185
|
...props,
|
|
149
|
-
|
|
150
|
-
|
|
186
|
+
storeTableIdOrQueriesQueryId: useMemo(
|
|
187
|
+
() => ({store, tableId}),
|
|
188
|
+
[store, tableId],
|
|
189
|
+
),
|
|
151
190
|
rowIds: useSortedRowIds(tableId, ...sorting, offset, limit, store),
|
|
191
|
+
defaultCellIds: useTableCellIds(tableId, store),
|
|
152
192
|
sorting,
|
|
153
193
|
onHeaderThClick: handleHeaderThClick,
|
|
154
194
|
});
|
|
@@ -201,5 +241,52 @@ const ValuesInHtmlTable = ({
|
|
|
201
241
|
),
|
|
202
242
|
),
|
|
203
243
|
);
|
|
244
|
+
const ResultTableInHtmlTable = ({queryId, queries, ...props}) =>
|
|
245
|
+
/* @__PURE__ */ createElement(HtmlTable, {
|
|
246
|
+
...props,
|
|
247
|
+
storeTableIdOrQueriesQueryId: useMemo(
|
|
248
|
+
() => ({queries, queryId}),
|
|
249
|
+
[queries, queryId],
|
|
250
|
+
),
|
|
251
|
+
defaultCellView: ResultCellView,
|
|
252
|
+
rowIds: useResultRowIds(queryId, queries),
|
|
253
|
+
defaultCellIds: useResultTableCellIds(queryId, queries),
|
|
254
|
+
});
|
|
255
|
+
const ResultSortedTableInHtmlTable = ({
|
|
256
|
+
queryId,
|
|
257
|
+
cellId,
|
|
258
|
+
descending,
|
|
259
|
+
offset,
|
|
260
|
+
limit,
|
|
261
|
+
queries,
|
|
262
|
+
sortOnClick,
|
|
263
|
+
...props
|
|
264
|
+
}) => {
|
|
265
|
+
const [sorting, setSorting] = useState([cellId, descending ? true : false]);
|
|
266
|
+
const handleHeaderThClick = useCallbackOrUndefined(
|
|
267
|
+
(cellId2) =>
|
|
268
|
+
setSorting([cellId2, cellId2 == sorting[0] ? !sorting[1] : false]),
|
|
269
|
+
[sorting],
|
|
270
|
+
sortOnClick,
|
|
271
|
+
);
|
|
272
|
+
return /* @__PURE__ */ createElement(HtmlTable, {
|
|
273
|
+
...props,
|
|
274
|
+
storeTableIdOrQueriesQueryId: useMemo(
|
|
275
|
+
() => ({queries, queryId}),
|
|
276
|
+
[queries, queryId],
|
|
277
|
+
),
|
|
278
|
+
defaultCellView: ResultCellView,
|
|
279
|
+
rowIds: useResultSortedRowIds(queryId, ...sorting, offset, limit, queries),
|
|
280
|
+
defaultCellIds: useResultTableCellIds(queryId, queries),
|
|
281
|
+
sorting,
|
|
282
|
+
onHeaderThClick: handleHeaderThClick,
|
|
283
|
+
});
|
|
284
|
+
};
|
|
204
285
|
|
|
205
|
-
export {
|
|
286
|
+
export {
|
|
287
|
+
ResultSortedTableInHtmlTable,
|
|
288
|
+
ResultTableInHtmlTable,
|
|
289
|
+
SortedTableInHtmlTable,
|
|
290
|
+
TableInHtmlTable,
|
|
291
|
+
ValuesInHtmlTable,
|
|
292
|
+
};
|
package/lib/debug/ui-react.js
CHANGED
|
@@ -727,6 +727,13 @@ const useResultRowIds = (queryId, queriesOrQueriesId) =>
|
|
|
727
727
|
[],
|
|
728
728
|
[queryId],
|
|
729
729
|
);
|
|
730
|
+
const useResultTableCellIds = (queryId, queriesOrQueriesId) =>
|
|
731
|
+
useListenable(
|
|
732
|
+
'ResultTableCellIds',
|
|
733
|
+
useQueriesOrQueriesId(queriesOrQueriesId),
|
|
734
|
+
[],
|
|
735
|
+
[queryId],
|
|
736
|
+
);
|
|
730
737
|
const useResultSortedRowIds = (
|
|
731
738
|
queryId,
|
|
732
739
|
cellId,
|
|
@@ -774,6 +781,19 @@ const useResultTableListener = (
|
|
|
774
781
|
listenerDeps,
|
|
775
782
|
[queryId],
|
|
776
783
|
);
|
|
784
|
+
const useResultTableCellIdsListener = (
|
|
785
|
+
queryId,
|
|
786
|
+
listener,
|
|
787
|
+
listenerDeps,
|
|
788
|
+
queriesOrQueriesId,
|
|
789
|
+
) =>
|
|
790
|
+
useListener(
|
|
791
|
+
'ResultTableCellIds',
|
|
792
|
+
useQueriesOrQueriesId(queriesOrQueriesId),
|
|
793
|
+
listener,
|
|
794
|
+
listenerDeps,
|
|
795
|
+
[queryId],
|
|
796
|
+
);
|
|
777
797
|
const useResultRowIdsListener = (
|
|
778
798
|
queryId,
|
|
779
799
|
listener,
|
|
@@ -1487,6 +1507,8 @@ export {
|
|
|
1487
1507
|
useResultSortedRowIds,
|
|
1488
1508
|
useResultSortedRowIdsListener,
|
|
1489
1509
|
useResultTable,
|
|
1510
|
+
useResultTableCellIds,
|
|
1511
|
+
useResultTableCellIdsListener,
|
|
1490
1512
|
useResultTableListener,
|
|
1491
1513
|
useRow,
|
|
1492
1514
|
useRowIds,
|
package/lib/es6/queries.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(!0),l=e(0),r=e(e),o="Listener",s="Result",a="Ids",i="Row",d
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(!0),l=e(0),r=e(e),o="Listener",s="Result",a="Ids",i="Table",d="Row",u=d+a,c="Sorted"+d+a,v="Cell",f=v+a,h=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),g=e=>L(e,((e,t)=>e+t),0),y=e=>e.length,p=e=>0==y(e),L=(e,t,n)=>e.reduce(t,n),R=(e,...t)=>e.push(...t),b=Math.max,T=Math.min,m=isFinite,O=e=>null==e,S=(e,t,n)=>O(e)?null==n?void 0:n():t(e),C=t=>e(t)==r,I=e=>Array.isArray(e),j=()=>{},x=Object,E=x.freeze,Q=e=>e.size,M=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},D=e=>O(e)||0==Q(e),k=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},z=e=>e.clear(),A=(e,t)=>null==e?void 0:e.forEach(t),F=(e,t)=>null==e?void 0:e.delete(t),P=e=>new Map(e),W=(e,t)=>null==e?void 0:e.get(t),q=(e,t)=>A(e,((e,n)=>t(n,e))),B=(e,t,n)=>O(n)?(F(e,t),e):null==e?void 0:e.set(t,n),G=(e,t,n)=>(M(e,t)||B(e,t,n()),W(e,t)),H=(e,t,n,l,r=0)=>S((n?G:W)(e,t[r],r>y(t)-2?n:P),(o=>{if(r>y(t)-2)return(null==l?void 0:l(o))&&B(e,t[r]),o;const s=H(o,t,n,l,r+1);return D(o)&&B(e,t[r]),s})),J=e=>new Set(I(e)||O(e)?e:[e]),K=(e,t)=>null==e?void 0:e.add(t),N=P([["avg",[(e,t)=>g(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>T(...e),(e,t)=>T(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:T(t,e)]],["sum",[e=>g(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]);var U=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;const Y=(r=>{const a=new WeakMap;return r=>(a.has(r)||a.set(r,(r=>{const a=r.createStore,[g,L,b,T,Y,,,Z,,$,_,ee,te]=((e,t,n)=>{const l=e.hasRow,r=P(),o=P(),s=P(),a=P(),i=P(),d=(t,n,...l)=>{const r=G(i,t,J);return w(l,(t=>K(r,t)&&n&&e.callListener(t))),l},u=(t,...n)=>S(W(i,t),(l=>{w(p(n)?k(l):n,(t=>{e.delListener(t),F(l,t)})),D(l)&&B(i,t)})),c=(e,t)=>{B(r,e,t),M(o,e)||(B(o,e,!0),B(s,e,P()),B(a,e,P()))},v=e=>{B(r,e),B(o,e),B(s,e),B(a,e),u(e)};return[()=>e,()=>{return[...null!=(t=null==(e=r)?void 0:e.keys())?t:[]];var e,t},e=>q(o,e),e=>M(o,e),e=>W(r,e),e=>W(o,e),(e,t)=>B(o,e,t),c,(t,r,o,i,v)=>{c(t,r);const f=P(),g=P(),p=W(s,t),L=W(a,t),R=t=>{const o=n=>e.getCell(r,t,n),s=W(p,t),a=l(r,t)?n(i(o,t)):void 0;var d,u;if(s===a||I(s)&&I(a)&&(u=a,y(d=s)===y(u)&&h(d,((e,t)=>u[t]===e)))||B(f,t,[s,a]),!O(v)){const e=W(L,t),n=l(r,t)?v(o,t):void 0;e!=n&&B(g,t,n)}},b=e=>{o((()=>{A(f,(([,e],t)=>B(p,t,e))),A(g,((e,t)=>B(L,t,e)))}),f,g,p,L,e),z(f),z(g)};q(p,R),e.hasTable(r)&&w(e.getRowIds(r),(e=>{M(p,e)||R(e)})),b(!0),u(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>R(n))),e.addTableListener(r,(()=>b())))},v,()=>q(i,v),d,u]})(r,0,j),ne=a(),le=a(),re=P(),oe=(e,t,...n)=>w(n,(n=>K(G(G(re,t,P),e,J),n))),se=e=>{S(W(re,e),(e=>{q(e,((e,t)=>A(t,(t=>e.delListener(t))))),z(e)})),w([le,ne],(t=>t.delTable(e)))},ae=(e,t,n)=>oe(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),ie={setQueryDefinition:(o,s,a)=>{Z(o,s),se(o);const i=[],d=[[null,[s,null,null,[],P()]]],u=[],c=[],v=[];a({select:(e,t)=>{const n=C(e)?[y(i)+"",e]:[O(t)?e:t,n=>n(e,t)];return R(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const l=O(n)||C(t)?null:t,r=O(l)?t:n,o=[e,[e,l,C(r)?r:e=>e(r),[],P()]];return R(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>R(u,C(e)?e:O(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,r)=>{var o;const s=[e,[e,C(t)?[t,n,l,r]:null!=(o=W(N,t))?o:[(e,t)=>t]]];return R(c,s),{as:e=>s[0]=e}},having:(e,t)=>R(v,C(e)?e:n=>n(e)===t)});const f=P(i);if(D(f))return ie;const g=P(d);q(g,((e,[,t])=>S(W(g,t),(({3:t})=>O(e)?0:R(t,e)))));const L=P(c);let b=ne;if(D(L)&&p(v))b=le;else{ae(o,b,le);const r=P();q(L,((e,[t,n])=>K(G(r,t,J),[e,n])));const s=J();q(f,(e=>M(r,e)?0:K(s,e)));const a=P(),i=(s,a,i,d)=>S(s,(([u,c,f,w])=>{q(a,((o,[s])=>{const a=G(u,o,P),c=W(a,i),v=d?void 0:s;if(c!==v){const s=J([[c,v]]),d=Q(a);B(a,i,v),A(W(r,o),(([r,o])=>{const i=((e,t,n,l,r,o=!1)=>{if(D(n))return;const[s,a,i,d]=r;return o||(o=O(e)),A(l,(([n,l])=>{o||(e=O(n)?null==a?void 0:a(e,l,t++):O(l)?null==i?void 0:i(e,n,t--):null==d?void 0:d(e,l,n,t),o||(o=O(e)))})),o?s(k(n),Q(n)):e})(w[r],d,a,s,o);w[r]=O((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==l&&m(r)?o:void 0})(i))?null:i}))}})),D(c)||!h(v,(e=>e((e=>w[e]))))?le.delRow(o,f):O(f)?s[2]=le.addRow(o,w):le.setRow(o,f,w)}));oe(b,o,b.addRowListener(o,null,((e,t,n,l)=>{const d=[],u=[],c=P(),v=b.hasRow(o,n);let f=!v;A(s,(e=>{const[t,r,s]=l(o,n,e);R(d,r),R(u,s),f||(f=t)})),q(r,(e=>{const[t,,r]=l(o,n,e);(f||t)&&B(c,e,[r])})),f&&i(H(a,d,void 0,(([,e])=>(F(e,n),D(e)))),c,n,1),v&&i(H(a,u,(()=>{const e={};return A(s,(t=>e[t]=b.getCell(o,n,t))),[P(),J(),void 0,e]}),(([,e])=>{K(e,n)})),c,n)})))}ae(o,r,b);const T=(e,t,n,l)=>{const a=e=>r.getCell(t,n,e);w(l,(t=>{var n;const[l,,s,i,d]=W(g,t),u=null==s?void 0:s(a,e),[c,v]=null!=(n=W(d,e))?n:[];u!=c&&(O(v)||te(o,v),B(d,e,O(u)?null:[u,...ee(o,1,r.addRowListener(l,u,(()=>T(e,l,u,i))))]))})),(e=>{const t=(t,n)=>{var l,o,a;return r.getCell(...O(n)?[s,e,t]:t===s?[s,e,n]:[null==(l=W(g,t))?void 0:l[0],null==(a=W(null==(o=W(g,t))?void 0:o[4],e))?void 0:a[0],n])};b.transaction((()=>h(u,(e=>e(t)))?q(f,((n,l)=>((e,t,n,l,r)=>O(r)?e.delCell(t,n,l,!0):e.setCell(t,n,l,r))(b,o,e,n,l(t,e)))):b.delRow(o,e)))})(e)},{3:I}=W(g,null);return b.transaction((()=>ee(o,1,r.addRowListener(s,null,((e,t,n)=>{r.hasRow(s,n)?T(n,s,n,I):(b.delRow(o,n),A(g,(({4:e})=>S(W(e,n),(([,t])=>{te(o,t),B(e,n)})))))}))))),ie},delQueryDefinition:e=>(se(e),$(e),ie),getStore:g,getQueryIds:L,forEachQuery:b,hasQuery:T,getTableId:Y,delListener:e=>(le.delListener(e),ie),destroy:_,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)V.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&U)for(var l of U(e))t.indexOf(l)<0&&X.call(e,l)&&(n[l]=e[l]);return n})(le.getListenerStats(),["tables","tableIds","transaction"])};var de,ue;return de={[i]:[1,1],[i+f]:[0,1],[u]:[0,1],[c]:[0,5],[d]:[1,2],[f]:[0,2],[v]:[1,3]},ue=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>ie[e+s+n]=(...t)=>le[e+n](...t))),ie["add"+s+n+o]=(...e)=>{return le["add"+n+o](...(l=e,0,r=t,l.slice(0,r)),((n,...l)=>e[t](ie,...l)));var l,r}},((e,t)=>{e.map(t)})(x.entries(de),(([e,t])=>ue(t,e))),E(ie)})(r)),a.get(r))})();export{Y as createQueries};
|
package/lib/es6/queries.js.gz
CHANGED
|
Binary file
|
package/lib/es6/tinybase.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t="",n=e(t),l=e(!0),o=e(0),s=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,y="Sorted"+g+u,S="Cell",w=S+u,I="Value",R=I+"s",T=I+u,p=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),m=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),E=(e,t)=>e.sort(t),k=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),j=e=>e.shift(),Q=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==s,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),oe=(e,t)=>x(Y.entries(e),(([e,n])=>t(n,e))),se=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),ye=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),Se=(e,t,n)=>(ie(e,t)||ye(e,t,n()),ge(e,t)),we=(e,t,n,l=ye)=>(oe(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),Ie=(e,t,n)=>{const l={};return ue(e,((e,o)=>{const s=t?t(e,o):e;!(null==n?void 0:n(s,e))&&(l[o]=s)})),l},Re=(e,t,n)=>Ie(e,(e=>Ie(e,t,n)),se),Te=(e,t,n)=>Ie(e,(e=>Re(e,t,n)),se),pe=(e,t)=>{const n=he();return ue(e,((e,l)=>{var o;return n.set(l,null!=(o=null==t?void 0:t(e))?o:e)})),n},Ce=e=>pe(e,pe),be=e=>pe(e,Ce),Ve=(e,t,n,l,o=0)=>G((n?Se:ge)(e,t[o],o>D(t)-2?n:he),(s=>{if(o>D(t)-2)return(null==l?void 0:l(s))&&ye(e,t[o]),s;const r=Ve(s,t,n,l,o+1);return ae(s)&&ye(e,t[o]),r})),me=t=>{const n=e(t);return H(n)||n==o&&B(t)?n:void 0},Ee=(e,t,n,l,o)=>q(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),ke=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),xe=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,o=he(),s=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const o=Se(a,t,xe);return k(l,(t=>Me(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{k(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&ye(a,t)})),u=(e,n)=>{ye(o,e,n),ie(s,e)||(ye(s,e,t()),ye(r,e,he()),ye(i,e,he()))},v=e=>{ye(o,e),ye(s,e),ye(r,e),ye(i,e),c(e)};return[()=>e,()=>fe(o),e=>Le(s,e),e=>ie(s,e),e=>ge(o,e),e=>ge(s,e),(e,t)=>ye(s,e,t),u,(t,o,s,a,v)=>{u(t,o);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),y=t=>{const s=n=>e.getCell(o,t,n),r=ge(g,t),i=l(o,t)?n(a(s,t)):void 0;if(r===i||U(r)&&U(i)&&V(r,i)||ye(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ye(f,t,n)}},S=e=>{s((()=>{ue(h,(([,e],t)=>ye(g,t,e))),ue(f,((e,t)=>ye(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,y),e.hasTable(o)&&k(e.getRowIds(o),(e=>{ie(g,e)||y(e)})),S(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>S())))},v,()=>Le(a,v),d,c]},Je=(l,o)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=o?o:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?j(e):null)?o:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,o]=Fe(),s=he();return[(o,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return ye(s,c,[o,r,i,a,d]),Me(Ve(r,null!=i?i:[t],xe),c),c},(e,l,...o)=>k(((e,n=[t])=>{const l=[],o=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>o(e,t+1))):k([n[t],null],(n=>o(ge(e,n),t+1)));return o(e,0),l})(e,l),(e=>ue(e,(e=>ge(s,e)[0](n,...null!=l?l:[],...o))))),e=>G(ge(s,e),(([,n,l])=>(Ve(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),ye(s,e),o(e),l))),e=>G(ge(s,e),(([e,,t=[],l,o])=>{const s=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...o(r)):q(t[d])?k(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>s(...r,e))):s(...r,t[d])};s()}))]},je=Ae((e=>{let n,l,o,s=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],y=[],S=(t,n)=>{a=0,e.transaction((()=>{const[l,o]=ge(f,n);ue(l,((n,l)=>ue(n,((n,o)=>ue(n,((n,s)=>Ee(e,l,o,s,n[t]))))))),ue(o,((n,l)=>ke(e,l,n[t])))})),a=1},w=e=>{ye(f,e),ye(g,e),v(c,[e])},I=(e,t)=>k(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),R=()=>I(L,D(L)-s),T=()=>G(n,(()=>{F(L,n),R(),I(y),n=void 0,o=1})),p=()=>{n=P(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(a){T();const e=Se(r,t,he),i=Se(e,n,he),a=Se(i,l,(()=>[s,void 0]));a[1]=o,a[0]===o&&ae(ye(i,l))&&ae(ye(e,n))&&ae(ye(r,t))&&p(),M()}})),V=e.addValueListener(null,((e,t,n,l)=>{if(a){T();const e=Se(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(ye(i,t))&&p(),M()}})),m=(e="")=>(q(n)&&(n=t+l++,ye(f,n,[r,i]),O(n,e),r=he(),i=he(),o=1),n),E=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),S(0,n),n=P(L),o=1)},x=()=>{J(y)||(F(L,n),n=j(y),S(1,n),o=1)},M=()=>{o&&(v(d),o=0)},A=e=>{const t=m(e);return M(),t},O=(e,t)=>(Q(e)&&ge(g,e)!==t&&(ye(g,e,t),v(c,[e])),z),Q=e=>ie(f,e),z={setSize:e=>(s=e,R(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...y]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:Q,getCheckpoint:e=>ge(g,e),goBackward:()=>(E(),M(),z),goForward:()=>(x(),M(),z),goTo:e=>{const t=C(L,e)?E:C(y,e)?x:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(I(L),I(y),q(n)||w(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(z.clear())})),Qe=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[o,s,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?x(e,p):p(e))),[f,g,L]=Pe((()=>S)),y=(t,n,l)=>{const o=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},S={setIndexDefinition:(e,t,o,s,r,i=Qe)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,o,r,u,v,h)=>{let f=0;const L=xe(),y=xe(),S=d(e);if(ue(o,(([e,t],n)=>{const l=xe(e),o=xe(t);ue(l,(e=>ve(o,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(S,e),(t=>{ve(t,n),ae(t)&&(ye(S,e),f=1)}))})),ue(o,(e=>{Me(L,e),ie(S,e)||(ye(S,e,xe()),f=1),Me(ge(S,e),n),q(s)||Me(y,e)}))})),t(),ae(v)||(h?Le(S,(e=>Me(y,e))):Le(r,(e=>G(ge(u,e),(e=>Me(y,e))))),ue(y,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(S,e)];m(n,t)||(ye(S,e,xe(E(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...S];m(t,a)||(c(e,he(E(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(o),G(s,Je)),S},delIndexDefinition:e=>(v(e),S),getStore:o,getIndexIds:s,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),S),destroy:h,getListenerStats:()=>({})};return ee(S)})),Ne=he([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,o,s=!1)=>{if(ae(n))return;const[r,i,a,d]=o;return s||(s=q(e)),ue(l,(([n,l])=>{s||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=q(e)))})),s?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,o,s,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,o,s,r,i)=>{var u;const v=K(l)?[l,s,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,o,s,r,i)=>{const c=a(e),u=re(s);i||(i=q(c)),t();let h=We(c,u,s,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{i(n.next(e))}catch(e){o(e)}},r=e=>{try{i(n.throw(e))}catch(e){o(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);i((n=n.apply(e,t)).next())}));const qe=(e,t,n,l,o)=>{let s,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},o={}){return h.stopAutoLoad(),yield h.load(n,o),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(o(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(s,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=j(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)};var Ge=Object.getOwnPropertySymbols,He=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;const Ue=Ae((e=>{const n=e.createStore,[l,o,s,r,i,,,u,,h,f,I,R]=De(e,(()=>!0),X),T=n(),p=n(),C=he(),V=(e,t,...n)=>k(n,(n=>Me(Se(Se(C,t,he),e,xe),n))),m=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),k([p,T],(t=>t.delTable(e)))},E=(e,t,n)=>V(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,l,o)=>{u(n,l),m(n);const s=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];o({select:(e,n)=>{const l=K(e)?[D(s)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(s,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,o=q(l)?t:n,s=[e,[e,l,K(o)?o:e=>e(o),[],he()]];return F(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,K(t)?[t,n,l,o]:null!=(s=ge(Ne,t))?s:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(s);if(ae(c))return x;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=T;if(ae(h)&&J(d))f=p;else{E(n,f,p);const e=he();Le(h,((t,[n,l])=>Me(Se(e,n,xe),[t,l])));const t=xe();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),o=(t,l,o,s)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=Se(r,t,he),i=ge(l,o),a=s?void 0:n;if(i!==a){const n=xe([[i,a]]),s=re(l);ye(l,o,a),ue(ge(e,t),(([e,t])=>{const o=We(c[e],s,l,n,t);c[e]=q(me(o))?null:o}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?p.delRow(n,a):q(a)?t[2]=p.addRow(n,c):p.setRow(n,a,c)}));V(f,n,f.addRowListener(n,null,((s,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,o]=a(n,i,e);F(d,l),F(c,o),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&ye(u,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&o(Ve(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),xe(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}E(n,e,f);const g=(t,o,s,r)=>{const a=t=>e.getCell(o,s,t);k(r,(l=>{var o;const[s,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(o=ge(d,t))?o:[];c!=u&&(q(h)||R(n,h),ye(d,t,q(c)?null:[c,...I(n,1,e.addRowListener(s,c,(()=>g(t,s,c,i))))]))})),(t=>{const o=(n,o)=>{var s,r,i;return e.getCell(...q(o)?[l,t,n]:n===l?[l,t,o]:[null==(s=ge(v,n))?void 0:s[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],o])};f.transaction((()=>b(i,(e=>e(o)))?Le(c,((e,l)=>Ee(f,n,t,e,l(o,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>I(n,1,e.addRowListener(l,null,((t,o,s)=>{e.hasRow(l,s)?g(s,l,s,L):(f.delRow(n,s),ue(v,(({4:e})=>G(ge(e,s),(([,t])=>{R(n,t),ye(e,s)})))))}))))),x},delQueryDefinition:e=>(m(e),h(e),x),getStore:l,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:i,delListener:e=>(p.delListener(e),x),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)He.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ge)for(var l of Ge(e))t.indexOf(l)<0&&Ke.call(e,l)&&(n[l]=e[l]);return n})(p.getListenerStats(),["tables","tableIds","transaction"])};return oe({[v]:[1,1],[L]:[0,1],[y]:[0,5],[g]:[1,2],[w]:[0,2],[S]:[1,3]},(([e,t],n)=>{k(e?["get","has","forEach"]:["get"],(e=>x[e+d+n]=(...t)=>p[e+n](...t))),x[c+d+n+a]=(...e)=>p[c+n+a](...O(e,0,t),((n,...l)=>e[t](x,...l)))})),ee(x)})),Xe=Ae((e=>{const n=he(),l=he(),o=he(),s=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,y]=Pe((()=>R)),S=(e,t,n)=>G(u(e),(([l,,o])=>{if(!ie(o,t)){const s=xe();if(c(e)!=I(e))Me(s,t);else{let e=t;for(;!q(e)&&!ie(s,e);)Me(s,e),e=ge(l,e)}if(n)return s;ye(o,t,s)}return ge(o,t)})),w=(e,t)=>G(u(e),(([,,e])=>ye(e,t))),I=e=>ge(n,e),R={setRelationshipDefinition:(e,t,r,i)=>(ye(n,e,r),v(e,t,((t,n)=>{const r=xe(),i=xe(),a=xe(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&ye(c,t)}))),q(n)||(Me(i,n),ie(c,n)||ye(c,n,xe()),Me(ge(c,n),l)),Me(r,l),ye(d,l,n),Le(ge(s,e),(t=>{ie(S(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(o,[e,t]))),ue(a,(t=>{w(e,t),L(s,[e,t])}))}),Je(i)),R),delRelationshipDefinition:e=>(ye(n,e),h(e),R),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(S(e,t),g(n,s,[e,t])),delListener:e=>(w(...y(e)),R),destroy:f,getListenerStats:()=>({})};return ee(R)})),Ye=e=>[e,e],Ze=()=>[he(),he()],_e=e=>[...e],et=([e,t])=>e===t,tt=(e,t,n)=>q(e)||!te(e)||se(e)||_(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||le(e,l)})),!se(e)),nt=(e,t,n)=>ye(e,t,ge(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const d=he(),u=he(),y=he(),b=he(),m=he(),M=he(),D=he(),J=he(),A=he(),P=he(),j=he(),N=he(),W=he(),B=xe(),$=he(),U=he(),X=he(),Y=he(),Z=Ze(),_=Ze(),te=Ze(),re=Ze(),de=Ze(),Ve=Ze(),De=Ze(),Je=Ze(),Ae=Ze(),Oe=Ze(),je=Ze(),ze=Ze(),Ne=Ze(),We=Ze(),Be=he(),$e=Ze(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!tt(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=o||(me(e[i])!=t&&le(e,i),0))},Xe=(t,n)=>(!e||ie(P,n)||Jt(n))&&tt(t,((e,t)=>ot(n,t,e)),(()=>Jt(n))),ot=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,o)=>G(st(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Jt(e,t))),st=(t,n,l,o)=>e?G(ge(ge(P,t),l),(e=>me(o)!=e[r]?Jt(t,n,l,o,e[i]):o),(()=>Jt(t,n,l,o))):q(me(o))?Jt(t,n,l,o):o,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>me(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(me(n))?At(e,n):n,at=(e,t,n)=>(G(ge(j,t),(([l,o])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(o,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>we(P,e,((e,t,n)=>{const l=he(),o=xe();we(Se(P,t,he),n,((e,t,n)=>{ye(e,t,n),G(n[i],(e=>ye(l,t,e)),(()=>Me(o,t)))})),ye(j,t,[l,o])}),((e,t)=>{ye(P,t),ye(j,t)})),ut=e=>we(N,e,((e,t,n)=>{ye(N,t,n),G(n[i],(e=>ye(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{ye(N,t),ye(W,t),ve(B,t)})),vt=e=>se(e)?sn():en(e),ht=e=>we(X,e,((e,t,n)=>ft(t,n)),((e,t)=>pt(t))),ft=(e,t)=>we(Se(X,e,(()=>(mt(e,1),ye($,e,Fe()),ye(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,o)=>we(Se(t,n,(()=>(Et(e,n,1),he()))),l,((t,l,o)=>Lt(e,n,t,l,o)),((l,s)=>bt(e,t,n,l,s,o))),Lt=(e,t,n,l,o)=>{ie(n,l)||kt(e,t,l,1);const s=ge(n,l);o!==s&&(xt(e,t,l,s,o),ye(n,l,o))},yt=(e,t,n,l,o)=>G(ge(t,n),(t=>Lt(e,n,t,l,o)),(()=>gt(e,t,n,at({[l]:o},e,n)))),St=e=>se(e)?dn():tn(e),wt=e=>we(Y,e,((e,t,n)=>It(t,n)),((e,t)=>Vt(t))),It=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),ye(Y,e,t))},Rt=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?Rt(e,t):l},Tt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},pt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,o,s)=>{var r;const i=ge(null==(r=ge(j,e))?void 0:r[0],o);if(!q(i)&&!s)return Lt(e,n,l,o,i);const a=t=>{xt(e,n,t,ge(l,t)),kt(e,n,t,-1),ye(l,t)};q(i)?a(o):Le(l,a),ae(l)&&(Et(e,n,-1),ae(ye(t,n))&&(mt(e,-1),ye(X,e),ye($,e),ye(U,e)))},Vt=e=>{const t=ge(W,e);if(!q(t))return It(e,t);Dt(e,ge(Y,e)),Mt(e,-1),ye(Y,e)},mt=(e,t)=>nt(d,e,t),Et=(e,t,n)=>nt(Se(y,e,he),t,n),kt=(e,t,n,l)=>{var o;const s=ge(U,e),r=null!=(o=ge(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&nt(Se(u,e,he),n,l),ye(s,n,r!=-l?r+l:null),nt(Se(Se(b,e,he),t,he),n,l)},xt=(e,t,n,l,o)=>Se(Se(Se(m,e,he),t,he),n,(()=>[l,0]))[1]=o,Mt=(e,t)=>nt(M,e,t),Dt=(e,t,n)=>Se(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,o)=>(F(Se(Se(Se(J,e,he),t,he),n,(()=>[])),l),o),At=(e,t,n)=>(F(Se(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(m,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,o)=>Ge(Oe[e],[n,l,o],t))))))),jt=e=>ae(A)||ae(je[e])?0:ue(e?pe(A):A,((t,n)=>Ge(je[e],[n],t))),Qt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>Ie(t))),1},zt=e=>{const t=ae(Ve[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const o=e?[pe(d),Ce(u),Ce(y),be(b),be(m)]:[d,u,y,b,m];if(!n){Qt(_[e],o[0]),ue(o[1],((t,n)=>Qt(re[e],t,[n])));const n=xe();ue(o[2],((l,o)=>{Qt(de[e],l,[o])&&!t&&(Ge(Ve[e],[o,null]),Me(n,o))})),t||ue(o[4],((t,l)=>{if(!ie(n,l)){const n=xe();ue(t,(e=>ue(e,(([t,l],o)=>l!==t?Me(n,o):ve(e,o))))),ue(n,(t=>Ge(Ve[e],[l,t])))}})),ue(o[3],((t,n)=>ue(t,((t,l)=>Qt(Je[e],t,[n,l])))))}if(!l){let t;ue(o[4],((n,l)=>{let o;ue(n,((n,s)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,s,a],i,n,Ot),t=o=r=1)})),r&&Ge(De[e],[l,s],Ot)})),o&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[pe(M),pe(D)]:[M,D];if(t||Qt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],o)=>{l!==n&&(Ge(We[e],[o],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...x(t,p)))),gn),Bt=()=>[Ie(m,((e,t)=>-1===ge(d,t)?null:Ie(e,((e,n)=>-1===ge(ge(y,t),n)?null:Ie(e,(([,e])=>null!=e?e:null),((e,t)=>et(t)))),se)),se),Ie(D,(([,e])=>null!=e?e:null),((e,t)=>et(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Te(m,_e,et),invalidCells:Te(J),changedValues:Ie(D,_e,et),invalidValues:Ie(A),changedTableIds:Ie(d),changedRowIds:Re(y),changedCellIds:Te(b),changedValueIds:Ie(M)}),qt=()=>Te(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,p(e))),Kt=(e,t,n,l=0,o)=>{return x(O(E((s=ge(X,p(e)),r=(e,n)=>[q(t)?n:ge(e,p(t)),n],x([...null!=(i=null==s?void 0:s.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>Qe(e,t)*(n?-1:1))),l,q(o)?o:l+o),(([,e])=>e));var s,r,i},Ut=(e,t)=>fe(ge(ge(X,p(e)),p(t))),Xt=(e,t,n)=>ge(ge(ge(X,p(e)),p(t)),p(n)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>ge(Y,p(e)),en=e=>Wt((()=>(e=>tt(e,Xe,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?wt(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=tt(t,(e=>tt(e,Ue))))&&(ct(t),!ae(X))){const e=qt();sn(),en(e)}})),on=e=>Wt((()=>{if(t=(e=>tt(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),sn=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?pt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>wt({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!ae(m),l=!ae(D),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(m,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>Ee(gn,t,n,l,e))))))),ue(D,(([e],t)=>ke(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),s=0,n=l=!1,k([d,u,y,b,m,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Re(ge(X,p(e))),getTableCellIds:e=>fe(ge(U,p(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(ge(ge(X,p(e)),p(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,p(e)),hasTableCell:(e,t)=>ie(ge(U,p(e)),p(t)),hasRow:(e,t)=>ie(ge(X,p(e)),p(t)),hasCell:(e,t,n)=>ie(ge(ge(X,p(e)),p(t)),p(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,p(e)),getTablesJson:()=>Q(X),getValuesJson:()=>Q(Y),getJson:()=>Q([X,Y]),getTablesSchemaJson:()=>Q(P),getValuesSchemaJson:()=>Q(N),getSchemaJson:()=>Q([P,N]),setContent:([e,t])=>Wt((()=>{(se(e)?sn:en)(e),(se(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>Xe(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>ot(e,t,n)?gt(e,Tt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return ot(e,l,t)&&(e=p(e),gt(e,Tt(e),l=Rt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(ot(e,t,n,1)){const l=Tt(e);oe(n,((n,o)=>yt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(st(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>yt(e,Tt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?oe(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{oe(e[0],((e,t)=>q(e)?rn(t):oe(e,((e,n)=>q(e)?an(t,n):oe(e,((e,l)=>Ee(gn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{St(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),St(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:on,setSchema:(e,t)=>Wt((()=>{ln(e),on(t)})),delTables:sn,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(o=>G(ge(o,t),(s=>ie(s,n)?bt(e,o,t,s,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?Vt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,p(e)),t),forEachRow:(e,t)=>ue(ge(X,p(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,p(e)),p(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let i=Kt(e,t,n,l,o);return qe((()=>{const r=Kt(e,t,n,l,o);V(r,i)||(i=r,s(gn,e,t,n,l,o,i))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:lt};return oe({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+w]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[w]:[2,Je,[Gt,Ht]],[S]:[3,Ae,[Gt,Ht,Ut],e=>Ye(Xt(...e))],InvalidCell:[3,Oe],[R]:[0,ze],[T]:[0,Ne],[I]:[1,We,[Zt],e=>Ye(_t(e[0]))],InvalidValue:[1,je]},(([e,t,n,l],o)=>{gn[c+o+a]=(...o)=>qe(o[e],t[o[e+1]?1:0],e>0?O(o,0,e):void 0,n,l)})),ee(gn)};export{je as createCheckpoints,qe as createCustomPersister,ze as createIndexes,Be as createMetrics,Ue as createQueries,Xe as createRelationships,lt as createStore,Qe as defaultSorter};
|
|
1
|
+
const e=e=>typeof e,t="",n=e(t),l=e(!0),o=e(0),s=e(e),r="type",i="default",a="Listener",d="Result",c="add",u="Ids",v="Table",h=v+"s",f=v+u,g="Row",L=g+u,y="Sorted"+g+u,S="Cell",w=S+u,I="Value",R=I+"s",T=I+u,p=e=>t+e,C=(e,t)=>e.includes(t),b=(e,t)=>e.every(t),V=(e,t)=>D(e)===D(t)&&b(e,((e,n)=>t[n]===e)),m=(e,t)=>b(e,((n,l)=>0==l||t(e[l-1],n)<=0)),E=(e,t)=>e.sort(t),k=(e,t)=>e.forEach(t),x=(e,t)=>e.map(t),M=e=>A(e,((e,t)=>e+t),0),D=e=>e.length,J=e=>0==D(e),A=(e,t,n)=>e.reduce(t,n),O=(e,t,n)=>e.slice(t,n),F=(e,...t)=>e.push(...t),P=e=>e.pop(),j=e=>e.shift(),Q=e=>JSON.stringify(e,((e,t)=>$(t,Map)?A([...t],((e,[t,n])=>(e[t]=n,e)),{}):t)),z=JSON.parse,N=Math.max,W=Math.min,B=isFinite,$=(e,t)=>e instanceof t,q=e=>null==e,G=(e,t,n)=>q(e)?null==n?void 0:n():t(e),H=e=>e==n||e==l,K=t=>e(t)==s,U=e=>Array.isArray(e),X=()=>{},Y=Object,Z=Y.keys,_=Y.isFrozen,ee=Y.freeze,te=e=>$(e,Y)&&e.constructor==Y,ne=(e,t)=>!q(((e,t)=>G(e,(e=>e[t])))(e,t)),le=(e,t)=>(delete e[t],e),oe=(e,t)=>x(Y.entries(e),(([e,n])=>t(n,e))),se=e=>te(e)&&0==(e=>D(Z(e)))(e),re=e=>e.size,ie=(e,t)=>{var n;return null!=(n=null==e?void 0:e.has(t))&&n},ae=e=>q(e)||0==re(e),de=e=>{var t;return[...null!=(t=null==e?void 0:e.values())?t:[]]},ce=e=>e.clear(),ue=(e,t)=>null==e?void 0:e.forEach(t),ve=(e,t)=>null==e?void 0:e.delete(t),he=e=>new Map(e),fe=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},ge=(e,t)=>null==e?void 0:e.get(t),Le=(e,t)=>ue(e,((e,n)=>t(n,e))),ye=(e,t,n)=>q(n)?(ve(e,t),e):null==e?void 0:e.set(t,n),Se=(e,t,n)=>(ie(e,t)||ye(e,t,n()),ge(e,t)),we=(e,t,n,l=ye)=>(oe(t,((t,l)=>n(e,l,t))),Le(e,(n=>ne(t,n)?0:l(e,n))),e),Ie=(e,t,n)=>{const l={};return ue(e,((e,o)=>{const s=t?t(e,o):e;!(null==n?void 0:n(s,e))&&(l[o]=s)})),l},Re=(e,t,n)=>Ie(e,(e=>Ie(e,t,n)),se),Te=(e,t,n)=>Ie(e,(e=>Re(e,t,n)),se),pe=(e,t)=>{const n=he();return ue(e,((e,l)=>{var o;return n.set(l,null!=(o=null==t?void 0:t(e))?o:e)})),n},Ce=e=>pe(e,pe),be=e=>pe(e,Ce),Ve=(e,t,n,l,o=0)=>G((n?Se:ge)(e,t[o],o>D(t)-2?n:he),(s=>{if(o>D(t)-2)return(null==l?void 0:l(s))&&ye(e,t[o]),s;const r=Ve(s,t,n,l,o+1);return ae(s)&&ye(e,t[o]),r})),me=t=>{const n=e(t);return H(n)||n==o&&B(t)?n:void 0},Ee=(e,t,n,l,o)=>q(o)?e.delCell(t,n,l,!0):e.setCell(t,n,l,o),ke=(e,t,n)=>q(n)?e.delValue(t):e.setValue(t,n),xe=e=>new Set(U(e)||q(e)?e:[e]),Me=(e,t)=>null==e?void 0:e.add(t),De=(e,t,n)=>{const l=e.hasRow,o=he(),s=he(),r=he(),i=he(),a=he(),d=(t,n,...l)=>{const o=Se(a,t,xe);return k(l,(t=>Me(o,t)&&n&&e.callListener(t))),l},c=(t,...n)=>G(ge(a,t),(l=>{k(J(n)?de(l):n,(t=>{e.delListener(t),ve(l,t)})),ae(l)&&ye(a,t)})),u=(e,n)=>{ye(o,e,n),ie(s,e)||(ye(s,e,t()),ye(r,e,he()),ye(i,e,he()))},v=e=>{ye(o,e),ye(s,e),ye(r,e),ye(i,e),c(e)};return[()=>e,()=>fe(o),e=>Le(s,e),e=>ie(s,e),e=>ge(o,e),e=>ge(s,e),(e,t)=>ye(s,e,t),u,(t,o,s,a,v)=>{u(t,o);const h=he(),f=he(),g=ge(r,t),L=ge(i,t),y=t=>{const s=n=>e.getCell(o,t,n),r=ge(g,t),i=l(o,t)?n(a(s,t)):void 0;if(r===i||U(r)&&U(i)&&V(r,i)||ye(h,t,[r,i]),!q(v)){const e=ge(L,t),n=l(o,t)?v(s,t):void 0;e!=n&&ye(f,t,n)}},S=e=>{s((()=>{ue(h,(([,e],t)=>ye(g,t,e))),ue(f,((e,t)=>ye(L,t,e)))}),h,f,g,L,e),ce(h),ce(f)};Le(g,y),e.hasTable(o)&&k(e.getRowIds(o),(e=>{ie(g,e)||y(e)})),S(!0),c(t),d(t,0,e.addRowListener(o,null,((e,t,n)=>y(n))),e.addTableListener(o,(()=>S())))},v,()=>Le(a,v),d,c]},Je=(l,o)=>e(l)==n?e=>e(l):null!=l?l:()=>null!=o?o:t,Ae=e=>{const t=new WeakMap;return n=>(t.has(n)||t.set(n,e(n)),t.get(n))},Oe=/^\d+$/,Fe=()=>{const e=[];let n=0;return[l=>{var o;return null!=(o=l?j(e):null)?o:t+n++},t=>{Oe.test(t)&&D(e)<1e3&&F(e,t)}]},Pe=e=>{let n;const[l,o]=Fe(),s=he();return[(o,r,i,a=[],d=(()=>[]))=>{null!=n||(n=e());const c=l(1);return ye(s,c,[o,r,i,a,d]),Me(Ve(r,null!=i?i:[t],xe),c),c},(e,l,...o)=>k(((e,n=[t])=>{const l=[],o=(e,t)=>t==D(n)?F(l,e):null===n[t]?ue(e,(e=>o(e,t+1))):k([n[t],null],(n=>o(ge(e,n),t+1)));return o(e,0),l})(e,l),(e=>ue(e,(e=>ge(s,e)[0](n,...null!=l?l:[],...o))))),e=>G(ge(s,e),(([,n,l])=>(Ve(n,null!=l?l:[t],void 0,(t=>(ve(t,e),ae(t)?1:0))),ye(s,e),o(e),l))),e=>G(ge(s,e),(([e,,t=[],l,o])=>{const s=(...r)=>{var i,a;const d=D(r);d==D(t)?e(n,...r,...o(r)):q(t[d])?k(null!=(a=null==(i=l[d])?void 0:i.call(l,...r))?a:[],(e=>s(...r,e))):s(...r,t[d])};s()}))]},je=Ae((e=>{let n,l,o,s=100,r=he(),i=he(),a=1;const d=he(),c=he(),[u,v,h]=Pe((()=>z)),f=he(),g=he(),L=[],y=[],S=(t,n)=>{a=0,e.transaction((()=>{const[l,o]=ge(f,n);ue(l,((n,l)=>ue(n,((n,o)=>ue(n,((n,s)=>Ee(e,l,o,s,n[t]))))))),ue(o,((n,l)=>ke(e,l,n[t])))})),a=1},w=e=>{ye(f,e),ye(g,e),v(c,[e])},I=(e,t)=>k(((e,t)=>e.splice(0,t))(e,null!=t?t:D(e)),w),R=()=>I(L,D(L)-s),T=()=>G(n,(()=>{F(L,n),R(),I(y),n=void 0,o=1})),p=()=>{n=P(L),o=1},b=e.addCellListener(null,null,null,((e,t,n,l,o,s)=>{if(a){T();const e=Se(r,t,he),i=Se(e,n,he),a=Se(i,l,(()=>[s,void 0]));a[1]=o,a[0]===o&&ae(ye(i,l))&&ae(ye(e,n))&&ae(ye(r,t))&&p(),M()}})),V=e.addValueListener(null,((e,t,n,l)=>{if(a){T();const e=Se(i,t,(()=>[l,void 0]));e[1]=n,e[0]===n&&ae(ye(i,t))&&p(),M()}})),m=(e="")=>(q(n)&&(n=t+l++,ye(f,n,[r,i]),O(n,e),r=he(),i=he(),o=1),n),E=()=>{J(L)||(((e,...t)=>{e.unshift(...t)})(y,m()),S(0,n),n=P(L),o=1)},x=()=>{J(y)||(F(L,n),n=j(y),S(1,n),o=1)},M=()=>{o&&(v(d),o=0)},A=e=>{const t=m(e);return M(),t},O=(e,t)=>(Q(e)&&ge(g,e)!==t&&(ye(g,e,t),v(c,[e])),z),Q=e=>ie(f,e),z={setSize:e=>(s=e,R(),z),addCheckpoint:A,setCheckpoint:O,getStore:()=>e,getCheckpointIds:()=>[[...L],n,[...y]],forEachCheckpoint:e=>Le(g,e),hasCheckpoint:Q,getCheckpoint:e=>ge(g,e),goBackward:()=>(E(),M(),z),goForward:()=>(x(),M(),z),goTo:e=>{const t=C(L,e)?E:C(y,e)?x:null;for(;!q(t)&&e!=n;)t();return M(),z},addCheckpointIdsListener:e=>u(e,d),addCheckpointListener:(e,t)=>u(t,c,[e]),delListener:e=>(h(e),z),clear:()=>(I(L),I(y),q(n)||w(n),n=void 0,l=0,A(),z),destroy:()=>{e.delListener(b),e.delListener(V)},getListenerStats:()=>({})};return ee(z.clear())})),Qe=(e,t)=>e<t?-1:1,ze=Ae((e=>{const n=he(),l=he(),[o,s,r,i,a,d,c,,u,v,h]=De(e,he,(e=>q(e)?t:U(e)?x(e,p):p(e))),[f,g,L]=Pe((()=>S)),y=(t,n,l)=>{const o=a(t);ue(l,((t,l)=>n(l,(n=>ue(t,(t=>n(t,(n=>e.forEachCell(o,t,n)))))))))},S={setIndexDefinition:(e,t,o,s,r,i=Qe)=>{const a=q(r)?void 0:([e],[t])=>r(e,t);return u(e,t,((t,o,r,u,v,h)=>{let f=0;const L=xe(),y=xe(),S=d(e);if(ue(o,(([e,t],n)=>{const l=xe(e),o=xe(t);ue(l,(e=>ve(o,e)?ve(l,e):0)),ue(l,(e=>{Me(L,e),G(ge(S,e),(t=>{ve(t,n),ae(t)&&(ye(S,e),f=1)}))})),ue(o,(e=>{Me(L,e),ie(S,e)||(ye(S,e,xe()),f=1),Me(ge(S,e),n),q(s)||Me(y,e)}))})),t(),ae(v)||(h?Le(S,(e=>Me(y,e))):Le(r,(e=>G(ge(u,e),(e=>Me(y,e))))),ue(y,(e=>{const t=(t,n)=>i(ge(v,t),ge(v,n),e),n=[...ge(S,e)];m(n,t)||(ye(S,e,xe(E(n,t))),Me(L,e))}))),(f||h)&&!q(a)){const t=[...S];m(t,a)||(c(e,he(E(t,a))),f=1)}f&&g(n,[e]),ue(L,(t=>g(l,[e,t])))}),Je(o),G(s,Je)),S},delIndexDefinition:e=>(v(e),S),getStore:o,getIndexIds:s,forEachIndex:e=>r(((t,n)=>e(t,(e=>y(t,e,n))))),forEachSlice:(e,t)=>y(e,t,d(e)),hasIndex:i,hasSlice:(e,t)=>ie(d(e),t),getTableId:a,getSliceIds:e=>fe(d(e)),getSliceRowIds:(e,t)=>de(ge(d(e),t)),addSliceIdsListener:(e,t)=>f(t,n,[e]),addSliceRowIdsListener:(e,t,n)=>f(n,l,[e,t]),delListener:e=>(L(e),S),destroy:h,getListenerStats:()=>({})};return ee(S)})),Ne=he([["avg",[(e,t)=>M(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,l)=>e+(t-n)/l]],["max",[e=>N(...e),(e,t)=>N(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:N(t,e)]],["min",[e=>W(...e),(e,t)=>W(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:W(t,e)]],["sum",[e=>M(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),We=(e,t,n,l,o,s=!1)=>{if(ae(n))return;const[r,i,a,d]=o;return s||(s=q(e)),ue(l,(([n,l])=>{s||(e=q(n)?null==i?void 0:i(e,l,t++):q(l)?null==a?void 0:a(e,n,t--):null==d?void 0:d(e,l,n,t),s||(s=q(e)))})),s?r(de(n),re(n)):e},Be=Ae((e=>{const n=he(),[l,o,s,r,i,a,d,,c,u,v]=De(e,X,(e=>isNaN(e)||q(e)||!0===e||!1===e||e===t?void 0:1*e)),[h,f,g]=Pe((()=>L)),L={setMetricDefinition:(e,t,l,o,s,r,i)=>{var u;const v=K(l)?[l,s,r,i]:null!=(u=ge(Ne,l))?u:ge(Ne,"sum");return c(e,t,((t,l,o,s,r,i)=>{const c=a(e),u=re(s);i||(i=q(c)),t();let h=We(c,u,s,l,v,i);B(h)||(h=void 0),h!=c&&(d(e,h),f(n,[e],h,c))}),Je(o,1)),L},delMetricDefinition:e=>(u(e),L),getStore:l,getMetricIds:o,forEachMetric:s,hasMetric:r,getTableId:i,getMetric:a,addMetricListener:(e,t)=>h(t,n,[e]),delListener:e=>(g(e),L),destroy:v,getListenerStats:()=>({})};return ee(L)}));var $e=(e,t,n)=>new Promise(((l,o)=>{var s=e=>{try{i(n.next(e))}catch(e){o(e)}},r=e=>{try{i(n.throw(e))}catch(e){o(e)}},i=e=>e.done?l(e.value):Promise.resolve(e.value).then(s,r);i((n=n.apply(e,t)).next())}));const qe=(e,t,n,l,o)=>{let s,r,i,a=0,d=0,c=0;const u=[],v=e=>$e(void 0,null,(function*(){return 2!=a&&(a=1,yield h.schedule((()=>$e(void 0,null,(function*(){yield e(),a=0}))))),h})),h={load:(n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){try{e.setContent(yield t())}catch(t){e.setContent([n,l])}}))))})),startAutoLoad:(...n)=>$e(void 0,[...n],(function*(n={},o={}){return h.stopAutoLoad(),yield h.load(n,o),c=1,i=l(((n,l)=>$e(void 0,null,(function*(){return yield v((()=>$e(void 0,null,(function*(){var o;if(l)e.setTransactionChanges(l());else try{e.setContent(null!=(o=null==n?void 0:n())?o:yield t())}catch(e){}}))))})))),h})),stopAutoLoad:()=>(c&&(o(i),i=void 0,c=0),h),save:t=>$e(void 0,null,(function*(){return 1!=a&&(a=2,yield h.schedule((()=>$e(void 0,null,(function*(){try{yield n(e.getContent,t)}catch(e){}a=0}))))),h})),startAutoSave:()=>$e(void 0,null,(function*(){return yield h.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,l]=t();se(n)&&se(l)||h.save((()=>[n,l]))})),h})),stopAutoSave:()=>(G(s,e.delListener),h),schedule:(...e)=>$e(void 0,null,(function*(){return F(u,...e),yield $e(void 0,null,(function*(){if(!d){for(d=1;!q(r=j(u));)try{yield r()}catch(e){}d=0}})),h})),getStore:()=>e,destroy:()=>h.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return ee(h)};var Ge=Object.getOwnPropertySymbols,He=Object.prototype.hasOwnProperty,Ke=Object.prototype.propertyIsEnumerable;const Ue=Ae((e=>{const n=e.createStore,[l,o,s,r,i,,,u,,h,f,I,R]=De(e,(()=>!0),X),T=n(),p=n(),C=he(),V=(e,t,...n)=>k(n,(n=>Me(Se(Se(C,t,he),e,xe),n))),m=e=>{G(ge(C,e),(e=>{Le(e,((e,t)=>ue(t,(t=>e.delListener(t))))),ce(e)})),k([p,T],(t=>t.delTable(e)))},E=(e,t,n)=>V(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),x={setQueryDefinition:(n,l,o)=>{u(n,l),m(n);const s=[],r=[[null,[l,null,null,[],he()]]],i=[],a=[],d=[];o({select:(e,n)=>{const l=K(e)?[D(s)+t,e]:[q(n)?e:n,t=>t(e,n)];return F(s,l),{as:e=>l[0]=e}},join:(e,t,n)=>{const l=q(n)||K(t)?null:t,o=q(l)?t:n,s=[e,[e,l,K(o)?o:e=>e(o),[],he()]];return F(r,s),{as:e=>s[0]=e}},where:(e,t,n)=>F(i,K(e)?e:q(n)?n=>n(e)===t:l=>l(e,t)===n),group:(e,t,n,l,o)=>{var s;const r=[e,[e,K(t)?[t,n,l,o]:null!=(s=ge(Ne,t))?s:[(e,t)=>t]]];return F(a,r),{as:e=>r[0]=e}},having:(e,t)=>F(d,K(e)?e:n=>n(e)===t)});const c=he(s);if(ae(c))return x;const v=he(r);Le(v,((e,[,t])=>G(ge(v,t),(({3:t})=>q(e)?0:F(t,e)))));const h=he(a);let f=T;if(ae(h)&&J(d))f=p;else{E(n,f,p);const e=he();Le(h,((t,[n,l])=>Me(Se(e,n,xe),[t,l])));const t=xe();Le(c,(n=>ie(e,n)?0:Me(t,n)));const l=he(),o=(t,l,o,s)=>G(t,(([r,i,a,c])=>{Le(l,((t,[n])=>{const l=Se(r,t,he),i=ge(l,o),a=s?void 0:n;if(i!==a){const n=xe([[i,a]]),s=re(l);ye(l,o,a),ue(ge(e,t),(([e,t])=>{const o=We(c[e],s,l,n,t);c[e]=q(me(o))?null:o}))}})),ae(i)||!b(d,(e=>e((e=>c[e]))))?p.delRow(n,a):q(a)?t[2]=p.addRow(n,c):p.setRow(n,a,c)}));V(f,n,f.addRowListener(n,null,((s,r,i,a)=>{const d=[],c=[],u=he(),v=f.hasRow(n,i);let h=!v;ue(t,(e=>{const[t,l,o]=a(n,i,e);F(d,l),F(c,o),h||(h=t)})),Le(e,(e=>{const[t,,l]=a(n,i,e);(h||t)&&ye(u,e,[l])})),h&&o(Ve(l,d,void 0,(([,e])=>(ve(e,i),ae(e)))),u,i,1),v&&o(Ve(l,c,(()=>{const e={};return ue(t,(t=>e[t]=f.getCell(n,i,t))),[he(),xe(),void 0,e]}),(([,e])=>{Me(e,i)})),u,i)})))}E(n,e,f);const g=(t,o,s,r)=>{const a=t=>e.getCell(o,s,t);k(r,(l=>{var o;const[s,,r,i,d]=ge(v,l),c=null==r?void 0:r(a,t),[u,h]=null!=(o=ge(d,t))?o:[];c!=u&&(q(h)||R(n,h),ye(d,t,q(c)?null:[c,...I(n,1,e.addRowListener(s,c,(()=>g(t,s,c,i))))]))})),(t=>{const o=(n,o)=>{var s,r,i;return e.getCell(...q(o)?[l,t,n]:n===l?[l,t,o]:[null==(s=ge(v,n))?void 0:s[0],null==(i=ge(null==(r=ge(v,n))?void 0:r[4],t))?void 0:i[0],o])};f.transaction((()=>b(i,(e=>e(o)))?Le(c,((e,l)=>Ee(f,n,t,e,l(o,t)))):f.delRow(n,t)))})(t)},{3:L}=ge(v,null);return f.transaction((()=>I(n,1,e.addRowListener(l,null,((t,o,s)=>{e.hasRow(l,s)?g(s,l,s,L):(f.delRow(n,s),ue(v,(({4:e})=>G(ge(e,s),(([,t])=>{R(n,t),ye(e,s)})))))}))))),x},delQueryDefinition:e=>(m(e),h(e),x),getStore:l,getQueryIds:o,forEachQuery:s,hasQuery:r,getTableId:i,delListener:e=>(p.delListener(e),x),destroy:f,getListenerStats:()=>((e,t)=>{var n={};for(var l in e)He.call(e,l)&&t.indexOf(l)<0&&(n[l]=e[l]);if(null!=e&&Ge)for(var l of Ge(e))t.indexOf(l)<0&&Ke.call(e,l)&&(n[l]=e[l]);return n})(p.getListenerStats(),["tables","tableIds","transaction"])};return oe({[v]:[1,1],[v+w]:[0,1],[L]:[0,1],[y]:[0,5],[g]:[1,2],[w]:[0,2],[S]:[1,3]},(([e,t],n)=>{k(e?["get","has","forEach"]:["get"],(e=>x[e+d+n]=(...t)=>p[e+n](...t))),x[c+d+n+a]=(...e)=>p[c+n+a](...O(e,0,t),((n,...l)=>e[t](x,...l)))})),ee(x)})),Xe=Ae((e=>{const n=he(),l=he(),o=he(),s=he(),[r,i,a,d,c,u,,,v,h,f]=De(e,(()=>[he(),he(),he(),he()]),(e=>q(e)?void 0:e+t)),[g,L,y]=Pe((()=>R)),S=(e,t,n)=>G(u(e),(([l,,o])=>{if(!ie(o,t)){const s=xe();if(c(e)!=I(e))Me(s,t);else{let e=t;for(;!q(e)&&!ie(s,e);)Me(s,e),e=ge(l,e)}if(n)return s;ye(o,t,s)}return ge(o,t)})),w=(e,t)=>G(u(e),(([,,e])=>ye(e,t))),I=e=>ge(n,e),R={setRelationshipDefinition:(e,t,r,i)=>(ye(n,e,r),v(e,t,((t,n)=>{const r=xe(),i=xe(),a=xe(),[d,c]=u(e);ue(n,(([t,n],l)=>{q(t)||(Me(i,t),G(ge(c,t),(e=>{ve(e,l),ae(e)&&ye(c,t)}))),q(n)||(Me(i,n),ie(c,n)||ye(c,n,xe()),Me(ge(c,n),l)),Me(r,l),ye(d,l,n),Le(ge(s,e),(t=>{ie(S(e,t),l)&&Me(a,t)}))})),t(),ue(r,(t=>L(l,[e,t]))),ue(i,(t=>L(o,[e,t]))),ue(a,(t=>{w(e,t),L(s,[e,t])}))}),Je(i)),R),delRelationshipDefinition:e=>(ye(n,e),h(e),R),getStore:r,getRelationshipIds:i,forEachRelationship:t=>a((n=>t(n,(t=>e.forEachRow(c(n),t))))),hasRelationship:d,getLocalTableId:c,getRemoteTableId:I,getRemoteRowId:(e,t)=>{var n;return ge(null==(n=u(e))?void 0:n[0],t)},getLocalRowIds:(e,t)=>{var n;return de(ge(null==(n=u(e))?void 0:n[1],t))},getLinkedRowIds:(e,t)=>q(u(e))?[t]:de(S(e,t,!0)),addRemoteRowIdListener:(e,t,n)=>g(n,l,[e,t]),addLocalRowIdsListener:(e,t,n)=>g(n,o,[e,t]),addLinkedRowIdsListener:(e,t,n)=>(S(e,t),g(n,s,[e,t])),delListener:e=>(w(...y(e)),R),destroy:f,getListenerStats:()=>({})};return ee(R)})),Ye=e=>[e,e],Ze=()=>[he(),he()],_e=e=>[...e],et=([e,t])=>e===t,tt=(e,t,n)=>q(e)||!te(e)||se(e)||_(e)?(null==n||n(),!1):(oe(e,((n,l)=>{t(n,l)||le(e,l)})),!se(e)),nt=(e,t,n)=>ye(e,t,ge(e,t)==-n?void 0:n),lt=()=>{let e,t,n=!1,l=!1,s=0;const d=he(),u=he(),y=he(),b=he(),m=he(),M=he(),D=he(),J=he(),A=he(),P=he(),j=he(),N=he(),W=he(),B=xe(),$=he(),U=he(),X=he(),Y=he(),Z=Ze(),_=Ze(),te=Ze(),re=Ze(),de=Ze(),Ve=Ze(),De=Ze(),Je=Ze(),Ae=Ze(),Oe=Ze(),je=Ze(),ze=Ze(),Ne=Ze(),We=Ze(),Be=he(),$e=Ze(),[qe,Ge,He,Ke]=Pe((()=>gn)),Ue=e=>{if(!tt(e,((e,t)=>C([r,i],t))))return!1;const t=e[r];return!(!H(t)&&t!=o||(me(e[i])!=t&&le(e,i),0))},Xe=(t,n)=>(!e||ie(P,n)||Jt(n))&&tt(t,((e,t)=>ot(n,t,e)),(()=>Jt(n))),ot=(e,t,n,l)=>tt(l?n:at(n,e,t),((l,o)=>G(st(e,t,o,l),(e=>(n[o]=e,!0)),(()=>!1))),(()=>Jt(e,t))),st=(t,n,l,o)=>e?G(ge(ge(P,t),l),(e=>me(o)!=e[r]?Jt(t,n,l,o,e[i]):o),(()=>Jt(t,n,l,o))):q(me(o))?Jt(t,n,l,o):o,rt=(e,t)=>tt(t?e:dt(e),((t,n)=>G(it(n,t),(t=>(e[n]=t,!0)),(()=>!1))),(()=>At())),it=(e,n)=>t?G(ge(N,e),(t=>me(n)!=t[r]?At(e,n,t[i]):n),(()=>At(e,n))):q(me(n))?At(e,n):n,at=(e,t,n)=>(G(ge(j,t),(([l,o])=>{ue(l,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(o,(l=>{ne(e,l)||Jt(t,n,l)}))})),e),dt=e=>(t&&(ue(W,((t,n)=>{ne(e,n)||(e[n]=t)})),ue(B,(t=>{ne(e,t)||At(t)}))),e),ct=e=>we(P,e,((e,t,n)=>{const l=he(),o=xe();we(Se(P,t,he),n,((e,t,n)=>{ye(e,t,n),G(n[i],(e=>ye(l,t,e)),(()=>Me(o,t)))})),ye(j,t,[l,o])}),((e,t)=>{ye(P,t),ye(j,t)})),ut=e=>we(N,e,((e,t,n)=>{ye(N,t,n),G(n[i],(e=>ye(W,t,e)),(()=>Me(B,t)))}),((e,t)=>{ye(N,t),ye(W,t),ve(B,t)})),vt=e=>se(e)?sn():en(e),ht=e=>we(X,e,((e,t,n)=>ft(t,n)),((e,t)=>pt(t))),ft=(e,t)=>we(Se(X,e,(()=>(mt(e,1),ye($,e,Fe()),ye(U,e,he()),he()))),t,((t,n,l)=>gt(e,t,n,l)),((t,n)=>Ct(e,t,n))),gt=(e,t,n,l,o)=>we(Se(t,n,(()=>(Et(e,n,1),he()))),l,((t,l,o)=>Lt(e,n,t,l,o)),((l,s)=>bt(e,t,n,l,s,o))),Lt=(e,t,n,l,o)=>{ie(n,l)||kt(e,t,l,1);const s=ge(n,l);o!==s&&(xt(e,t,l,s,o),ye(n,l,o))},yt=(e,t,n,l,o)=>G(ge(t,n),(t=>Lt(e,n,t,l,o)),(()=>gt(e,t,n,at({[l]:o},e,n)))),St=e=>se(e)?dn():tn(e),wt=e=>we(Y,e,((e,t,n)=>It(t,n)),((e,t)=>Vt(t))),It=(e,t)=>{ie(Y,e)||Mt(e,1);const n=ge(Y,e);t!==n&&(Dt(e,n,t),ye(Y,e,t))},Rt=(e,t)=>{const[n]=ge($,e),l=n(t);return ie(ge(X,e),l)?Rt(e,t):l},Tt=e=>{var t;return null!=(t=ge(X,e))?t:ft(e,{})},pt=e=>ft(e,{}),Ct=(e,t,n)=>{const[,l]=ge($,e);l(n),gt(e,t,n,{},!0)},bt=(e,t,n,l,o,s)=>{var r;const i=ge(null==(r=ge(j,e))?void 0:r[0],o);if(!q(i)&&!s)return Lt(e,n,l,o,i);const a=t=>{xt(e,n,t,ge(l,t)),kt(e,n,t,-1),ye(l,t)};q(i)?a(o):Le(l,a),ae(l)&&(Et(e,n,-1),ae(ye(t,n))&&(mt(e,-1),ye(X,e),ye($,e),ye(U,e)))},Vt=e=>{const t=ge(W,e);if(!q(t))return It(e,t);Dt(e,ge(Y,e)),Mt(e,-1),ye(Y,e)},mt=(e,t)=>nt(d,e,t),Et=(e,t,n)=>nt(Se(y,e,he),t,n),kt=(e,t,n,l)=>{var o;const s=ge(U,e),r=null!=(o=ge(s,n))?o:0;(0==r&&1==l||1==r&&-1==l)&&nt(Se(u,e,he),n,l),ye(s,n,r!=-l?r+l:null),nt(Se(Se(b,e,he),t,he),n,l)},xt=(e,t,n,l,o)=>Se(Se(Se(m,e,he),t,he),n,(()=>[l,0]))[1]=o,Mt=(e,t)=>nt(M,e,t),Dt=(e,t,n)=>Se(D,e,(()=>[t,0]))[1]=n,Jt=(e,t,n,l,o)=>(F(Se(Se(Se(J,e,he),t,he),n,(()=>[])),l),o),At=(e,t,n)=>(F(Se(A,e,(()=>[])),t),n),Ot=(e,t,n)=>G(ge(ge(ge(m,e),t),n),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(Xt(e,t,n))])),Ft=e=>G(ge(D,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Ye(_t(e))])),Pt=e=>ae(J)||ae(Oe[e])?0:ue(e?be(J):J,((t,n)=>ue(t,((t,l)=>ue(t,((t,o)=>Ge(Oe[e],[n,l,o],t))))))),jt=e=>ae(A)||ae(je[e])?0:ue(e?pe(A):A,((t,n)=>Ge(je[e],[n],t))),Qt=(e,t,n)=>{if(!ae(t))return Ge(e,n,(()=>Ie(t))),1},zt=e=>{const t=ae(Ve[e]),n=ae(Je[e])&&ae(re[e])&&ae(de[e])&&t&&ae(_[e]),l=ae(Ae[e])&&ae(De[e])&&ae(te[e])&&ae(Z[e]);if(!n||!l){const o=e?[pe(d),Ce(u),Ce(y),be(b),be(m)]:[d,u,y,b,m];if(!n){Qt(_[e],o[0]),ue(o[1],((t,n)=>Qt(re[e],t,[n])));const n=xe();ue(o[2],((l,o)=>{Qt(de[e],l,[o])&&!t&&(Ge(Ve[e],[o,null]),Me(n,o))})),t||ue(o[4],((t,l)=>{if(!ie(n,l)){const n=xe();ue(t,(e=>ue(e,(([t,l],o)=>l!==t?Me(n,o):ve(e,o))))),ue(n,(t=>Ge(Ve[e],[l,t])))}})),ue(o[3],((t,n)=>ue(t,((t,l)=>Qt(Je[e],t,[n,l])))))}if(!l){let t;ue(o[4],((n,l)=>{let o;ue(n,((n,s)=>{let r;ue(n,(([n,i],a)=>{i!==n&&(Ge(Ae[e],[l,s,a],i,n,Ot),t=o=r=1)})),r&&Ge(De[e],[l,s],Ot)})),o&&Ge(te[e],[l],Ot)})),t&&Ge(Z[e],void 0,Ot)}}},Nt=e=>{const t=ae(Ne[e]),n=ae(We[e])&&ae(ze[e]);if(!t||!n){const l=e?[pe(M),pe(D)]:[M,D];if(t||Qt(Ne[e],l[0]),!n){let t;ue(l[1],(([n,l],o)=>{l!==n&&(Ge(We[e],[o],l,n,Ft),t=1)})),t&&Ge(ze[e],void 0,Ft)}}},Wt=(e,...t)=>(vn((()=>e(...x(t,p)))),gn),Bt=()=>[Ie(m,((e,t)=>-1===ge(d,t)?null:Ie(e,((e,n)=>-1===ge(ge(y,t),n)?null:Ie(e,(([,e])=>null!=e?e:null),((e,t)=>et(t)))),se)),se),Ie(D,(([,e])=>null!=e?e:null),((e,t)=>et(t)))],$t=()=>({cellsTouched:n,valuesTouched:l,changedCells:Te(m,_e,et),invalidCells:Te(J),changedValues:Ie(D,_e,et),invalidValues:Ie(A),changedTableIds:Ie(d),changedRowIds:Re(y),changedCellIds:Te(b),changedValueIds:Ie(M)}),qt=()=>Te(X),Gt=()=>fe(X),Ht=e=>fe(ge(X,p(e))),Kt=(e,t,n,l=0,o)=>{return x(O(E((s=ge(X,p(e)),r=(e,n)=>[q(t)?n:ge(e,p(t)),n],x([...null!=(i=null==s?void 0:s.entries())?i:[]],(([e,t])=>r(t,e)))),(([e],[t])=>Qe(e,t)*(n?-1:1))),l,q(o)?o:l+o),(([,e])=>e));var s,r,i},Ut=(e,t)=>fe(ge(ge(X,p(e)),p(t))),Xt=(e,t,n)=>ge(ge(ge(X,p(e)),p(t)),p(n)),Yt=()=>Ie(Y),Zt=()=>fe(Y),_t=e=>ge(Y,p(e)),en=e=>Wt((()=>(e=>tt(e,Xe,Jt))(e)?ht(e):0)),tn=e=>Wt((()=>rt(e)?wt(e):0)),nn=e=>{try{vt(z(e))}catch(e){}return gn},ln=t=>Wt((()=>{if((e=tt(t,(e=>tt(e,Ue))))&&(ct(t),!ae(X))){const e=qt();sn(),en(e)}})),on=e=>Wt((()=>{if(t=(e=>tt(e,Ue))(e)){const n=Yt();un(),dn(),t=!0,ut(e),tn(n)}})),sn=()=>Wt((()=>ht({}))),rn=e=>Wt((e=>ie(X,e)?pt(e):0),e),an=(e,t)=>Wt(((e,t)=>G(ge(X,e),(n=>ie(n,t)?Ct(e,n,t):0))),e,t),dn=()=>Wt((()=>wt({}))),cn=()=>Wt((()=>{ct({}),e=!1})),un=()=>Wt((()=>{ut({}),t=!1})),vn=(e,t)=>{if(-1!=s){hn();const n=e();return fn(t),n}},hn=()=>(-1!=s&&s++,1==s&&Ge(Be,void 0,Bt,$t),gn),fn=e=>(s>0&&(s--,0==s&&(n=!ae(m),l=!ae(D),s=1,Pt(1),n&&zt(1),jt(1),l&&Nt(1),(null==e?void 0:e(Bt,$t))&&(ue(m,((e,t)=>ue(e,((e,n)=>ue(e,(([e],l)=>Ee(gn,t,n,l,e))))))),ue(D,(([e],t)=>ke(gn,t,e))),n=l=!1),Ge($e[0],void 0,Bt,$t),s=-1,Pt(0),n&&zt(0),jt(0),l&&Nt(0),Ge($e[1],void 0,Bt,$t),s=0,n=l=!1,k([d,u,y,b,m,J,M,D,A],ce))),gn),gn={getContent:()=>[qt(),Yt()],getTables:qt,getTableIds:Gt,getTable:e=>Re(ge(X,p(e))),getTableCellIds:e=>fe(ge(U,p(e))),getRowIds:Ht,getSortedRowIds:Kt,getRow:(e,t)=>Ie(ge(ge(X,p(e)),p(t))),getCellIds:Ut,getCell:Xt,getValues:Yt,getValueIds:Zt,getValue:_t,hasTables:()=>!ae(X),hasTable:e=>ie(X,p(e)),hasTableCell:(e,t)=>ie(ge(U,p(e)),p(t)),hasRow:(e,t)=>ie(ge(X,p(e)),p(t)),hasCell:(e,t,n)=>ie(ge(ge(X,p(e)),p(t)),p(n)),hasValues:()=>!ae(Y),hasValue:e=>ie(Y,p(e)),getTablesJson:()=>Q(X),getValuesJson:()=>Q(Y),getJson:()=>Q([X,Y]),getTablesSchemaJson:()=>Q(P),getValuesSchemaJson:()=>Q(N),getSchemaJson:()=>Q([P,N]),setContent:([e,t])=>Wt((()=>{(se(e)?sn:en)(e),(se(t)?dn:tn)(t)})),setTables:en,setTable:(e,t)=>Wt((e=>Xe(t,e)?ft(e,t):0),e),setRow:(e,t,n)=>Wt(((e,t)=>ot(e,t,n)?gt(e,Tt(e),t,n):0),e,t),addRow:(e,t,n=!0)=>vn((()=>{let l;return ot(e,l,t)&&(e=p(e),gt(e,Tt(e),l=Rt(e,n?1:0),t)),l})),setPartialRow:(e,t,n)=>Wt(((e,t)=>{if(ot(e,t,n,1)){const l=Tt(e);oe(n,((n,o)=>yt(e,l,t,o,n)))}}),e,t),setCell:(e,t,n,l)=>Wt(((e,t,n)=>G(st(e,t,n,K(l)?l(Xt(e,t,n)):l),(l=>yt(e,Tt(e),t,n,l)))),e,t,n),setValues:tn,setPartialValues:e=>Wt((()=>rt(e,1)?oe(e,((e,t)=>It(t,e))):0)),setValue:(e,t)=>Wt((e=>G(it(e,K(t)?t(_t(e)):t),(t=>It(e,t)))),e),setTransactionChanges:e=>Wt((()=>{oe(e[0],((e,t)=>q(e)?rn(t):oe(e,((e,n)=>q(e)?an(t,n):oe(e,((e,l)=>Ee(gn,t,n,l,e))))))),oe(e[1],((e,t)=>ke(gn,t,e)))})),setTablesJson:nn,setValuesJson:e=>{try{St(z(e))}catch(e){}return gn},setJson:e=>{try{const[t,n]=z(e);vt(t),St(n)}catch(t){nn(e)}return gn},setTablesSchema:ln,setValuesSchema:on,setSchema:(e,t)=>Wt((()=>{ln(e),on(t)})),delTables:sn,delTable:rn,delRow:an,delCell:(e,t,n,l)=>Wt(((e,t,n)=>G(ge(X,e),(o=>G(ge(o,t),(s=>ie(s,n)?bt(e,o,t,s,n,l):0))))),e,t,n),delValues:dn,delValue:e=>Wt((e=>ie(Y,e)?Vt(e):0),e),delTablesSchema:cn,delValuesSchema:un,delSchema:()=>Wt((()=>{cn(),un()})),transaction:vn,startTransaction:hn,finishTransaction:fn,forEachTable:e=>ue(X,((t,n)=>e(n,(e=>ue(t,((t,n)=>e(n,(e=>Le(t,e))))))))),forEachTableCell:(e,t)=>Le(ge(U,p(e)),t),forEachRow:(e,t)=>ue(ge(X,p(e)),((e,n)=>t(n,(t=>Le(e,t))))),forEachCell:(e,t,n)=>Le(ge(ge(X,p(e)),p(t)),n),forEachValue:e=>Le(Y,e),addSortedRowIdsListener:(e,t,n,l,o,s,r)=>{let i=Kt(e,t,n,l,o);return qe((()=>{const r=Kt(e,t,n,l,o);V(r,i)||(i=r,s(gn,e,t,n,l,o,i))}),Ve[r?1:0],[e,t],[Gt])},addStartTransactionListener:e=>qe(e,Be),addWillFinishTransactionListener:e=>qe(e,$e[0]),addDidFinishTransactionListener:e=>qe(e,$e[1]),callListener:e=>(Ke(e),gn),delListener:e=>(He(e),gn),getListenerStats:()=>({}),createStore:lt};return oe({[h]:[0,Z],[f]:[0,_],[v]:[1,te,[Gt]],[v+w]:[1,re,[Gt]],[L]:[1,de,[Gt]],[g]:[2,De,[Gt,Ht]],[w]:[2,Je,[Gt,Ht]],[S]:[3,Ae,[Gt,Ht,Ut],e=>Ye(Xt(...e))],InvalidCell:[3,Oe],[R]:[0,ze],[T]:[0,Ne],[I]:[1,We,[Zt],e=>Ye(_t(e[0]))],InvalidValue:[1,je]},(([e,t,n,l],o)=>{gn[c+o+a]=(...o)=>qe(o[e],t[o[e+1]?1:0],e>0?O(o,0,e):void 0,n,l)})),ee(gn)};export{je as createCheckpoints,qe as createCustomPersister,ze as createIndexes,Be as createMetrics,Ue as createQueries,Xe as createRelationships,lt as createStore,Qe as defaultSorter};
|
package/lib/es6/tinybase.js.gz
CHANGED
|
Binary file
|
package/lib/es6/ui-react-dom.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useRowIds as e,
|
|
1
|
+
import{useRowIds as e,useTableCellIds as l,useSortedRowIds as r,useValueIds as t,ValueView as o,ResultCellView as n,useResultRowIds as s,useResultTableCellIds as d,useResultSortedRowIds as a,CellView as u}from"./ui-react";import i from"react";const c=e=>typeof e,I=c(""),b=(e,l)=>e.map(l),f=e=>null==e,y=Object,C=(e=[])=>y.fromEntries(e),m=(e,l)=>b(y.entries(e),(([e,r])=>l(r,e))),{createContext:p,useContext:O}=i;p([]);const v=(e,...l)=>f(e)?{}:e(...l);var g=Object.defineProperty,k=Object.defineProperties,w=Object.getOwnPropertyDescriptors,h=Object.getOwnPropertySymbols,q=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,T=(e,l,r)=>l in e?g(e,l,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[l]=r,j=(e,l)=>{for(var r in l||(l={}))q.call(l,r)&&T(e,r,l[r]);if(h)for(var r of h(l))Q.call(l,r)&&T(e,r,l[r]);return e},P=(e,l)=>k(e,w(l)),x=(e,l)=>{var r={};for(var t in e)q.call(e,t)&&l.indexOf(t)<0&&(r[t]=e[t]);if(null!=e&&h)for(var t of h(e))l.indexOf(t)<0&&Q.call(e,t)&&(r[t]=e[t]);return r};const{createElement:N,useCallback:V,useMemo:E,useState:H}=i,A=(e,l,r)=>{const t=V(e,l);return r?t:void 0},R=(e,l)=>f(e)||e[0]!=l?void 0:`sorted ${e[1]?"de":"a"}scending`,S=({cellId:e,sorting:l,label:r=(null!=e?e:""),onClick:t})=>N("th",{onClick:A((()=>null==t?void 0:t(e)),[t,e],!f(t)),className:R(l,e)},r),D=({className:e,headerRow:l,idColumn:r,customCells:t,storeTableIdOrQueriesQueryId:o,defaultCellView:n=u,rowIds:s,defaultCellIds:d,sorting:a,onHeaderThClick:i})=>{const f=E((()=>{const e=null!=t?t:d;return C(m(Array.isArray(e)?C(b(e,(e=>[e,e]))):e,((e,l)=>{return[l,j(j({},{label:l}),(r=e,c(r)==I?{label:e}:e))];var r})))}),[t,d]);return N("table",{className:e},!1===l?null:N("thead",null,N("tr",null,!1===r?null:N(S,{sorting:a,label:"Id",onClick:i}),m(f,(({label:e},l)=>N(S,{key:l,cellId:l,label:e,sorting:a,onClick:i}))))),N("tbody",null,b(s,(e=>N("tr",{key:e},!1===r?null:N("th",null,e),m(f,(({component:l=n,getComponentProps:r},t)=>N("td",{key:t},N(l,P(j(j({},v(r,e,t)),o),{rowId:e,cellId:t}))))))))))},M=r=>{var t=r,{tableId:o,store:n}=t,s=x(t,["tableId","store"]);return N(D,P(j({},s),{storeTableIdOrQueriesQueryId:E((()=>({store:n,tableId:o})),[n,o]),rowIds:e(o,n),defaultCellIds:l(o,n)}))},$=e=>{var t=e,{tableId:o,cellId:n,descending:s,offset:d,limit:a,store:u,sortOnClick:i}=t,c=x(t,["tableId","cellId","descending","offset","limit","store","sortOnClick"]);const[I,b]=H([n,!!s]),f=A((e=>b([e,e==I[0]&&!I[1]])),[I],i);return N(D,P(j({},c),{storeTableIdOrQueriesQueryId:E((()=>({store:u,tableId:o})),[u,o]),rowIds:r(o,...I,d,a,u),defaultCellIds:l(o,u),sorting:I,onHeaderThClick:f}))},z=({store:e,valueComponent:l=o,getValueComponentProps:r,className:n,headerRow:s,idColumn:d})=>N("table",{className:n},!1===s?null:N("thead",null,N("tr",null,!1===d?null:N("th",null,"Id"),N("th",null,"Value"))),N("tbody",null,b(t(e),(t=>N("tr",{key:t},!1===d?null:N("th",null,t),N("td",null,N(l,P(j({},v(r,t)),{valueId:t,store:e})))))))),B=e=>{var l=e,{queryId:r,queries:t}=l,o=x(l,["queryId","queries"]);return N(D,P(j({},o),{storeTableIdOrQueriesQueryId:E((()=>({queries:t,queryId:r})),[t,r]),defaultCellView:n,rowIds:s(r,t),defaultCellIds:d(r,t)}))},F=e=>{var l=e,{queryId:r,cellId:t,descending:o,offset:s,limit:u,queries:i,sortOnClick:c}=l,I=x(l,["queryId","cellId","descending","offset","limit","queries","sortOnClick"]);const[b,f]=H([t,!!o]),y=A((e=>f([e,e==b[0]&&!b[1]])),[b],c);return N(D,P(j({},I),{storeTableIdOrQueriesQueryId:E((()=>({queries:i,queryId:r})),[i,r]),defaultCellView:n,rowIds:a(r,...b,s,u,i),defaultCellIds:d(r,i),sorting:b,onHeaderThClick:y}))};export{F as ResultSortedTableInHtmlTable,B as ResultTableInHtmlTable,$ as SortedTableInHtmlTable,M as TableInHtmlTable,z as ValuesInHtmlTable};
|
|
Binary file
|
package/lib/es6/ui-react.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import e,{useContext as o}from"react";const t=e=>typeof e,r="",d=t(r),n="Ids",l="Table",s=l+"s",u=l+n,i="Row",a=i+n,c="Sorted"+i+n,I="Cell",p=I+n,v="Value",b=v+"s",g=v+n,w=(e,o)=>e.map(o),m=e=>null==e,C=(e,o,t)=>m(e)?null==t?void 0:t():o(e),R=e=>t(e)==d,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:R(e)?((e,o)=>C(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||R(e)?t:e},x=(e,...o)=>m(e)?{}:e(...o),S=e=>P(e,0),O=e=>P(e,2),T=e=>P(e,4),B=e=>P(e,6),L=e=>P(e,8),j=e=>P(e,10),M=e=>q(e,0),E=e=>q(e,2),V=e=>q(e,4),A=e=>q(e,6),D=e=>q(e,8),F=e=>q(e,10),{useCallback:z,useEffect:G,useMemo:H,useRef:J,useState:K}=e,N=(e,o,t=[])=>{const r=H((()=>o(e)),[e,...t]);return G((()=>()=>r.destroy()),[r]),r},Q=(e,o,t,r=[],d)=>{const[,n]=K(),l=z((()=>{var d,n;return null!=(n=null==(d=null==o?void 0:o["get"+e])?void 0:d.call(o,...r))?n:t}),[o,...r]),[s]=K(l),u=J(s);return H((()=>u.current=l()),[l]),U(e,o,((...e)=>{u.current=m(d)?l():e[d],n([])}),[],r),u.current},U=(e,o,t,r=[],d=[],...n)=>G((()=>{var r;const l=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...d,t,...n);return()=>null==o?void 0:o.delListener(l)}),[o,...d,...r,...n]),W=(e,o,t,r=[],d=y,n=[],...l)=>{const s=M(e);return z((e=>C(s,(r=>C(t(e,r),(e=>d(r["set"+o](...l,e),e)))))),[s,o,...r,...n,...l])},X=(e,o,t=y,r=[],...d)=>{const n=M(e);return z((()=>t(null==n?void 0:n["del"+o](...d))),[n,o,...r,...d])},Y=(e,o,t)=>{const r=F(e);return z((()=>null==r?void 0:r[o](t)),[r,o,t])},Z=(e,o=[])=>H(e,o),$=e=>Q(s,M(e),{}),_=e=>Q(u,M(e),[],[]),ee=(e,o)=>Q(l,M(o),{},[e]),oe=(e,o)=>Q(l+p,M(o),[],[e]),te=(e,o)=>Q(a,M(o),[],[e]),re=(e,o,t,r=0,d,n)=>Q(c,M(n),[],[e,o,t,r,d],6),de=(e,o,t)=>Q(i,M(t),{},[e,o]),ne=(e,o,t)=>Q(p,M(t),[],[e,o]),le=(e,o,t,r)=>Q(I,M(r),void 0,[e,o,t],4),se=e=>Q(b,M(e),{}),ue=e=>Q(g,M(e),[],[]),ie=(e,o)=>Q(v,M(o),void 0,[e]),ae=(e,o,t,r,d)=>W(t,s,e,o,r,d),ce=(e,o,t,r,d,n)=>W(r,l,o,t,d,n,e),Ie=(e,o,t,r,d,n,l)=>W(d,i,t,r,n,l,e,o),pe=(e,o,t=[],r,d=y,n=[],l=!0)=>{const s=M(r);return z((t=>C(s,(r=>C(o(t,r),(o=>d(r.addRow(e,o,l),r,o)))))),[s,e,...t,...n,l])},ve=(e,o,t,r,d,n,l)=>W(d,"PartialRow",t,r,n,l,e,o),be=(e,o,t,r,d,n,l,s)=>W(n,I,r,d,l,s,e,o,t),ge=(e,o,t,r,d)=>W(t,b,e,o,r,d),we=(e,o,t,r,d)=>W(t,"PartialValues",e,o,r,d),me=(e,o,t,r,d,n)=>W(r,v,o,t,d,n,e),Ce=(e,o,t)=>X(e,s,o,t),Re=(e,o,t,r)=>X(o,l,t,r,e),ye=(e,o,t,r,d)=>X(t,i,r,d,e,o),ke=(e,o,t,r,d,n,l)=>X(d,I,n,l,e,o,t,r),he=(e,o,t)=>X(e,b,o,t),fe=(e,o,t,r)=>X(o,v,t,r,e),Pe=(e,o,t,r)=>U(s,M(r),e,o,[],t),qe=(e,o,t,r)=>U(u,M(r),e,o,[],t),xe=(e,o,t,r,d)=>U(l,M(d),o,t,[e],r),Se=(e,o,t,r,d)=>U(l+p,M(d),o,t,[e],r),Oe=(e,o,t,r,d)=>U(a,M(d),o,t,[e],r),Te=(e,o,t,r,d,n,l,s,u)=>U(c,M(u),n,l,[e,o,t,r,d],s),Be=(e,o,t,r,d,n)=>U(i,M(n),t,r,[e,o],d),Le=(e,o,t,r,d,n)=>U(p,M(n),t,r,[e,o],d),je=(e,o,t,r,d,n,l)=>U(I,M(l),r,d,[e,o,t],n),Me=(e,o,t,r)=>U(b,M(r),e,o,[],t),Ee=(e,o,t,r)=>U(g,M(r),e,o,[],t),Ve=(e,o,t,r,d)=>U(v,M(d),o,t,[e],r),Ae=(e,o,t)=>N(e,o,t),De=(e,o)=>Q("Metric",E(o),void 0,[e]),Fe=(e,o,t,r)=>U("Metric",E(r),o,t,[e]),ze=(e,o,t)=>N(e,o,t),Ge=(e,o)=>Q("SliceIds",V(o),[],[e]),He=(e,o,t)=>Q("SliceRowIds",V(t),[],[e,o]),Je=(e,o,t,r)=>U("SliceIds",V(r),o,t,[e]),Ke=(e,o,t,r,d)=>U("SliceRowIds",V(d),t,r,[e,o]),Ne=(e,o,t)=>N(e,o,t),Qe=(e,o,t)=>Q("RemoteRowId",A(t),void 0,[e,o]),Ue=(e,o,t)=>Q("LocalRowIds",A(t),[],[e,o]),We=(e,o,t)=>Q("LinkedRowIds",A(t),[],[e,o]),Xe=(e,o,t,r,d)=>U("RemoteRowId",A(d),t,r,[e,o]),Ye=(e,o,t,r,d)=>U("LocalRowIds",A(d),t,r,[e,o]),Ze=(e,o,t,r,d)=>U("LinkedRowIds",A(d),t,r,[e,o]),$e=(e,o,t)=>N(e,o,t),_e=(e,o)=>Q("ResultTable",D(o),{},[e]),eo=(e,o)=>Q("ResultRowIds",D(o),[],[e]),oo=(e,o,t,r=0,d,n)=>Q("ResultSortedRowIds",D(n),[],[e,o,t,r,d],6),to=(e,o,t)=>Q("ResultRow",D(t),{},[e,o]),ro=(e,o,t)=>Q("ResultCellIds",D(t),[],[e,o]),no=(e,o,t,r)=>Q("ResultCell",D(r),void 0,[e,o,t]),lo=(e,o,t,r)=>U("ResultTable",D(r),o,t,[e]),so=(e,o,t,r)=>U("ResultRowIds",D(r),o,t,[e]),uo=(e,o,t,r,d,n,l,s)=>U("ResultSortedRowIds",D(s),n,l,[e,o,t,r,d]),io=(e,o,t,r,d)=>U("ResultRow",D(d),t,r,[e,o]),ao=(e,o,t,r,d)=>U("ResultCellIds",D(d),t,r,[e,o]),co=(e,o,t,r,d,n)=>U("ResultCell",D(n),r,d,[e,o,t]),Io=(e,o,t)=>N(e,o,t),po=e=>Q("CheckpointIds",F(e),[[],void 0,[]]),vo=(e,o)=>Q("Checkpoint",F(o),void 0,[e]),bo=(e=y,o=[],t,r=y,d=[])=>{const n=F(t);return z((o=>C(n,(t=>{const d=e(o);r(t.addCheckpoint(d),t,d)}))),[n,...o,...d])},go=e=>Y(e,"goBackward"),wo=e=>Y(e,"goForward"),mo=(e,o=[],t,r=y,d=[])=>{const n=F(t);return z((o=>C(n,(t=>C(e(o),(e=>r(t.goTo(e),e)))))),[n,...o,...d])},Co=e=>{var o;const t=F(e),[d,n]=po(t);return[(l=d,!(0==(e=>e.length)(l))),go(t),n,null!=(o=C(n,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var l},Ro=e=>{var o;const t=F(e),[,,[d]]=po(t);return[!m(d),wo(t),d,null!=(o=C(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},yo=(e,o,t)=>U("CheckpointIds",F(t),e,o),ko=(e,o,t,r)=>U("Checkpoint",F(r),o,t,[e]),ho=(e,o,t=[],r,d=[])=>{const[,n]=K(),l=H((()=>o(e)),[e,...t]);return G((()=>{var e;return e=function*(){yield null==r?void 0:r(l),n(1)},new Promise(((o,t)=>{var r=o=>{try{n(e.next(o))}catch(e){t(e)}},d=o=>{try{n(e.throw(o))}catch(e){t(e)}},n=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,d);n((e=e.apply(void 0,null)).next())})),()=>{l.destroy()}}),[l,...d]),l};var fo=Object.defineProperty,Po=Object.defineProperties,qo=Object.getOwnPropertyDescriptors,xo=Object.getOwnPropertySymbols,So=Object.prototype.hasOwnProperty,Oo=Object.prototype.propertyIsEnumerable,To=(e,o,t)=>o in e?fo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,Bo=(e,o)=>{for(var t in o||(o={}))So.call(o,t)&&To(e,t,o[t]);if(xo)for(var t of xo(o))Oo.call(o,t)&&To(e,t,o[t]);return e},Lo=(e,o)=>Po(e,qo(o)),jo=(e,o)=>{var t={};for(var r in e)So.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&xo)for(var r of xo(e))o.indexOf(r)<0&&Oo.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Mo,useMemo:Eo}=e,Vo=({tableId:e,store:o,rowComponent:t=Ko,getRowComponentProps:r,customCellIds:d,separator:n,debugIds:l},s)=>Ho(w(s,(n=>Mo(t,Lo(Bo({},x(r,n)),{key:n,tableId:e,rowId:n,customCellIds:d,store:o,debugIds:l})))),n,l,e),Ao=({queryId:e,queries:o,resultRowComponent:t=rt,getResultRowComponentProps:r,separator:d,debugIds:n},l)=>Ho(w(l,(d=>Mo(t,Lo(Bo({},x(r,d)),{key:d,queryId:e,rowId:d,queries:o,debugIds:n})))),d,n,e),Do=e=>{const o=A(e);return[o,null==o?void 0:o.getStore()]},Fo=({relationshipId:e,relationships:o,rowComponent:t=Ko,getRowComponentProps:r,separator:d,debugIds:n},l,s)=>{const[u,i]=Do(o),a=null==u?void 0:u.getLocalTableId(e),c=l(e,s,u);return Ho(w(c,(e=>Mo(t,Lo(Bo({},x(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:n})))),d,n,s)},zo=e=>({checkpoints:o,checkpointComponent:t=lt,getCheckpointComponentProps:r,separator:d,debugIds:n})=>{const l=F(o);return Ho(w(e(po(l)),(e=>Mo(t,Lo(Bo({},x(r,e)),{key:e,checkpoints:l,checkpointId:e,debugIds:n})))),d)},Go=({store:e,storesById:t,metrics:r,metricsById:d,indexes:n,indexesById:l,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:c,checkpointsById:I,children:p})=>{const v=o(f);return Mo(f.Provider,{value:Eo((()=>[null!=e?e:v[0],Bo(Bo({},v[1]),t),null!=r?r:v[2],Bo(Bo({},v[3]),d),null!=n?n:v[4],Bo(Bo({},v[5]),l),null!=s?s:v[6],Bo(Bo({},v[7]),u),null!=i?i:v[8],Bo(Bo({},v[9]),a),null!=c?c:v[10],Bo(Bo({},v[11]),I)]),[e,t,r,d,n,l,s,u,i,a,c,I,v])},p)},Ho=(e,o,t,r)=>{const d=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",d,"}"]:d},Jo=({tableId:e,rowId:o,cellId:t,store:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=le(e,o,t,d))?l:r),void 0,n,t)},Ko=({tableId:e,rowId:o,store:t,cellComponent:r=Jo,getCellComponentProps:d,customCellIds:n,separator:l,debugIds:s})=>Ho(w(((e,o,t,r)=>{const d=ne(o,t,r);return null!=e?e:d})(n,e,o,t),(n=>Mo(r,Lo(Bo({},x(d,n)),{key:n,tableId:e,rowId:o,cellId:n,store:t,debugIds:s})))),l,s,o),No=e=>Vo(e,te(e.tableId,e.store)),Qo=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=jo(o,["cellId","descending","offset","limit"]);return Vo(l,re(l.tableId,t,r,d,n,l.store))},Uo=({store:e,tableComponent:o=No,getTableComponentProps:t,separator:r,debugIds:d})=>Ho(w(_(e),(r=>Mo(o,Lo(Bo({},x(t,r)),{key:r,tableId:r,store:e,debugIds:d})))),r),Wo=({valueId:e,store:o,debugIds:t})=>{var d;return Ho(r+(null!=(d=ie(e,o))?d:r),void 0,t,e)},Xo=({store:e,valueComponent:o=Wo,getValueComponentProps:t,separator:r,debugIds:d})=>Ho(w(ue(e),(r=>Mo(o,Lo(Bo({},x(t,r)),{key:r,valueId:r,store:e,debugIds:d})))),r),Yo=({metricId:e,metrics:o,debugIds:t})=>{var d;return Ho(null!=(d=De(e,o))?d:r,void 0,t,e)},Zo=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Ko,getRowComponentProps:d,separator:n,debugIds:l})=>{const s=V(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=He(e,o,s);return Ho(w(a,(e=>Mo(r,Lo(Bo({},x(d,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:l})))),n,l,o)},$o=({indexId:e,indexes:o,sliceComponent:t=Zo,getSliceComponentProps:r,separator:d,debugIds:n})=>Ho(w(Ge(e,o),(d=>Mo(t,Lo(Bo({},x(r,d)),{key:d,indexId:e,sliceId:d,indexes:o,debugIds:n})))),d,n,e),_o=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Ko,getRowComponentProps:d,debugIds:n})=>{const[l,s]=Do(t),u=null==l?void 0:l.getRemoteTableId(e),i=Qe(e,o,l);return Ho(m(u)||m(i)?null:Mo(r,Lo(Bo({},x(d,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:n})),void 0,n,o)},et=e=>Fo(e,Ue,e.remoteRowId),ot=e=>Fo(e,We,e.firstRowId),tt=({queryId:e,rowId:o,cellId:t,queries:d,debugIds:n})=>{var l;return Ho(r+(null!=(l=no(e,o,t,d))?l:r),void 0,n,t)},rt=({queryId:e,rowId:o,queries:t,resultCellComponent:r=tt,getResultCellComponentProps:d,separator:n,debugIds:l})=>Ho(w(ro(e,o,t),(n=>Mo(r,Lo(Bo({},x(d,n)),{key:n,queryId:e,rowId:o,cellId:n,queries:t,debugIds:l})))),n,l,o),dt=e=>Ao(e,eo(e.queryId,e.queries)),nt=e=>{var o=e,{cellId:t,descending:r,offset:d,limit:n}=o,l=jo(o,["cellId","descending","offset","limit"]);return Ao(l,oo(l.queryId,t,r,d,n,l.queries))},lt=({checkpoints:e,checkpointId:o,debugIds:t})=>{var d;return Ho(null!=(d=vo(o,e))?d:r,void 0,t,o)},st=zo((e=>e[0])),ut=zo((e=>m(e[1])?[]:[e[1]])),it=zo((e=>e[2]));export{st as BackwardCheckpointsView,Jo as CellView,lt as CheckpointView,ut as CurrentCheckpointView,it as ForwardCheckpointsView,$o as IndexView,ot as LinkedRowsView,et as LocalRowsView,Yo as MetricView,Go as Provider,_o as RemoteRowView,tt as ResultCellView,rt as ResultRowView,nt as ResultSortedTableView,dt as ResultTableView,Ko as RowView,Zo as SliceView,Qo as SortedTableView,No as TableView,Uo as TablesView,Wo as ValueView,Xo as ValuesView,pe as useAddRowCallback,le as useCell,ne as useCellIds,Le as useCellIdsListener,je as useCellListener,vo as useCheckpoint,po as useCheckpointIds,yo as useCheckpointIdsListener,ko as useCheckpointListener,j as useCheckpoints,Io as useCreateCheckpoints,ze as useCreateIndexes,Ae as useCreateMetrics,ho as useCreatePersister,$e as useCreateQueries,Ne as useCreateRelationships,Z as useCreateStore,ke as useDelCellCallback,ye as useDelRowCallback,Re as useDelTableCallback,Ce as useDelTablesCallback,fe as useDelValueCallback,he as useDelValuesCallback,go as useGoBackwardCallback,wo as useGoForwardCallback,mo as useGoToCallback,T as useIndexes,We as useLinkedRowIds,Ze as useLinkedRowIdsListener,Ue as useLocalRowIds,Ye as useLocalRowIdsListener,De as useMetric,Fe as useMetricListener,O as useMetrics,L as useQueries,Ro as useRedoInformation,B as useRelationships,Qe as useRemoteRowId,Xe as useRemoteRowIdListener,no as useResultCell,ro as useResultCellIds,ao as useResultCellIdsListener,co as useResultCellListener,to as useResultRow,eo as useResultRowIds,so as useResultRowIdsListener,io as useResultRowListener,oo as useResultSortedRowIds,uo as useResultSortedRowIdsListener,_e as useResultTable,lo as useResultTableListener,de as useRow,te as useRowIds,Oe as useRowIdsListener,Be as useRowListener,be as useSetCellCallback,bo as useSetCheckpointCallback,ve as useSetPartialRowCallback,we as useSetPartialValuesCallback,Ie as useSetRowCallback,ce as useSetTableCallback,ae as useSetTablesCallback,me as useSetValueCallback,ge as useSetValuesCallback,Ge as useSliceIds,Je as useSliceIdsListener,He as useSliceRowIds,Ke as useSliceRowIdsListener,re as useSortedRowIds,Te as useSortedRowIdsListener,S as useStore,ee as useTable,oe as useTableCellIds,Se as useTableCellIdsListener,_ as useTableIds,qe as useTableIdsListener,xe as useTableListener,$ as useTables,Pe as useTablesListener,Co as useUndoInformation,ie as useValue,ue as useValueIds,Ee as useValueIdsListener,Ve as useValueListener,se as useValues,Me as useValuesListener};
|
|
1
|
+
import e,{useContext as o}from"react";const t=e=>typeof e,r="",l=t(r),d="Ids",n="Table",s=n+"s",u=n+d,i="Row",a=i+d,I="Sorted"+i+d,c="Cell",p=c+d,b="Value",v=b+"s",g=b+d,w=(e,o)=>e.map(o),m=e=>null==e,C=(e,o,t)=>m(e)?null==t?void 0:t():o(e),R=e=>t(e)==l,y=()=>{},{createContext:k,useContext:h}=e,f=k([]),P=(e,o)=>{const t=h(f);return m(e)?t[o]:R(e)?((e,o)=>C(e,(e=>e[o])))(t[o+1],e):e},q=(e,o)=>{const t=P(e,o);return m(e)||R(e)?t:e},x=(e,...o)=>m(e)?{}:e(...o),S=e=>P(e,0),O=e=>P(e,2),T=e=>P(e,4),B=e=>P(e,6),L=e=>P(e,8),j=e=>P(e,10),M=e=>q(e,0),E=e=>q(e,2),V=e=>q(e,4),A=e=>q(e,6),D=e=>q(e,8),F=e=>q(e,10),{useCallback:z,useEffect:G,useMemo:H,useRef:J,useState:K}=e,N=(e,o,t=[])=>{const r=H((()=>o(e)),[e,...t]);return G((()=>()=>r.destroy()),[r]),r},Q=(e,o,t,r=[],l)=>{const[,d]=K(),n=z((()=>{var l,d;return null!=(d=null==(l=null==o?void 0:o["get"+e])?void 0:l.call(o,...r))?d:t}),[o,...r]),[s]=K(n),u=J(s);return H((()=>u.current=n()),[n]),U(e,o,((...e)=>{u.current=m(l)?n():e[l],d([])}),[],r),u.current},U=(e,o,t,r=[],l=[],...d)=>G((()=>{var r;const n=null==(r=null==o?void 0:o["add"+e+"Listener"])?void 0:r.call(o,...l,t,...d);return()=>null==o?void 0:o.delListener(n)}),[o,...l,...r,...d]),W=(e,o,t,r=[],l=y,d=[],...n)=>{const s=M(e);return z((e=>C(s,(r=>C(t(e,r),(e=>l(r["set"+o](...n,e),e)))))),[s,o,...r,...d,...n])},X=(e,o,t=y,r=[],...l)=>{const d=M(e);return z((()=>t(null==d?void 0:d["del"+o](...l))),[d,o,...r,...l])},Y=(e,o,t)=>{const r=F(e);return z((()=>null==r?void 0:r[o](t)),[r,o,t])},Z=(e,o=[])=>H(e,o),$=e=>Q(s,M(e),{}),_=e=>Q(u,M(e),[],[]),ee=(e,o)=>Q(n,M(o),{},[e]),oe=(e,o)=>Q(n+p,M(o),[],[e]),te=(e,o)=>Q(a,M(o),[],[e]),re=(e,o,t,r=0,l,d)=>Q(I,M(d),[],[e,o,t,r,l],6),le=(e,o,t)=>Q(i,M(t),{},[e,o]),de=(e,o,t)=>Q(p,M(t),[],[e,o]),ne=(e,o,t,r)=>Q(c,M(r),void 0,[e,o,t],4),se=e=>Q(v,M(e),{}),ue=e=>Q(g,M(e),[],[]),ie=(e,o)=>Q(b,M(o),void 0,[e]),ae=(e,o,t,r,l)=>W(t,s,e,o,r,l),Ie=(e,o,t,r,l,d)=>W(r,n,o,t,l,d,e),ce=(e,o,t,r,l,d,n)=>W(l,i,t,r,d,n,e,o),pe=(e,o,t=[],r,l=y,d=[],n=!0)=>{const s=M(r);return z((t=>C(s,(r=>C(o(t,r),(o=>l(r.addRow(e,o,n),r,o)))))),[s,e,...t,...d,n])},be=(e,o,t,r,l,d,n)=>W(l,"PartialRow",t,r,d,n,e,o),ve=(e,o,t,r,l,d,n,s)=>W(d,c,r,l,n,s,e,o,t),ge=(e,o,t,r,l)=>W(t,v,e,o,r,l),we=(e,o,t,r,l)=>W(t,"PartialValues",e,o,r,l),me=(e,o,t,r,l,d)=>W(r,b,o,t,l,d,e),Ce=(e,o,t)=>X(e,s,o,t),Re=(e,o,t,r)=>X(o,n,t,r,e),ye=(e,o,t,r,l)=>X(t,i,r,l,e,o),ke=(e,o,t,r,l,d,n)=>X(l,c,d,n,e,o,t,r),he=(e,o,t)=>X(e,v,o,t),fe=(e,o,t,r)=>X(o,b,t,r,e),Pe=(e,o,t,r)=>U(s,M(r),e,o,[],t),qe=(e,o,t,r)=>U(u,M(r),e,o,[],t),xe=(e,o,t,r,l)=>U(n,M(l),o,t,[e],r),Se=(e,o,t,r,l)=>U(n+p,M(l),o,t,[e],r),Oe=(e,o,t,r,l)=>U(a,M(l),o,t,[e],r),Te=(e,o,t,r,l,d,n,s,u)=>U(I,M(u),d,n,[e,o,t,r,l],s),Be=(e,o,t,r,l,d)=>U(i,M(d),t,r,[e,o],l),Le=(e,o,t,r,l,d)=>U(p,M(d),t,r,[e,o],l),je=(e,o,t,r,l,d,n)=>U(c,M(n),r,l,[e,o,t],d),Me=(e,o,t,r)=>U(v,M(r),e,o,[],t),Ee=(e,o,t,r)=>U(g,M(r),e,o,[],t),Ve=(e,o,t,r,l)=>U(b,M(l),o,t,[e],r),Ae=(e,o,t)=>N(e,o,t),De=(e,o)=>Q("Metric",E(o),void 0,[e]),Fe=(e,o,t,r)=>U("Metric",E(r),o,t,[e]),ze=(e,o,t)=>N(e,o,t),Ge=(e,o)=>Q("SliceIds",V(o),[],[e]),He=(e,o,t)=>Q("SliceRowIds",V(t),[],[e,o]),Je=(e,o,t,r)=>U("SliceIds",V(r),o,t,[e]),Ke=(e,o,t,r,l)=>U("SliceRowIds",V(l),t,r,[e,o]),Ne=(e,o,t)=>N(e,o,t),Qe=(e,o,t)=>Q("RemoteRowId",A(t),void 0,[e,o]),Ue=(e,o,t)=>Q("LocalRowIds",A(t),[],[e,o]),We=(e,o,t)=>Q("LinkedRowIds",A(t),[],[e,o]),Xe=(e,o,t,r,l)=>U("RemoteRowId",A(l),t,r,[e,o]),Ye=(e,o,t,r,l)=>U("LocalRowIds",A(l),t,r,[e,o]),Ze=(e,o,t,r,l)=>U("LinkedRowIds",A(l),t,r,[e,o]),$e=(e,o,t)=>N(e,o,t),_e=(e,o)=>Q("ResultTable",D(o),{},[e]),eo=(e,o)=>Q("ResultRowIds",D(o),[],[e]),oo=(e,o)=>Q("ResultTableCellIds",D(o),[],[e]),to=(e,o,t,r=0,l,d)=>Q("ResultSortedRowIds",D(d),[],[e,o,t,r,l],6),ro=(e,o,t)=>Q("ResultRow",D(t),{},[e,o]),lo=(e,o,t)=>Q("ResultCellIds",D(t),[],[e,o]),no=(e,o,t,r)=>Q("ResultCell",D(r),void 0,[e,o,t]),so=(e,o,t,r)=>U("ResultTable",D(r),o,t,[e]),uo=(e,o,t,r)=>U("ResultTableCellIds",D(r),o,t,[e]),io=(e,o,t,r)=>U("ResultRowIds",D(r),o,t,[e]),ao=(e,o,t,r,l,d,n,s)=>U("ResultSortedRowIds",D(s),d,n,[e,o,t,r,l]),Io=(e,o,t,r,l)=>U("ResultRow",D(l),t,r,[e,o]),co=(e,o,t,r,l)=>U("ResultCellIds",D(l),t,r,[e,o]),po=(e,o,t,r,l,d)=>U("ResultCell",D(d),r,l,[e,o,t]),bo=(e,o,t)=>N(e,o,t),vo=e=>Q("CheckpointIds",F(e),[[],void 0,[]]),go=(e,o)=>Q("Checkpoint",F(o),void 0,[e]),wo=(e=y,o=[],t,r=y,l=[])=>{const d=F(t);return z((o=>C(d,(t=>{const l=e(o);r(t.addCheckpoint(l),t,l)}))),[d,...o,...l])},mo=e=>Y(e,"goBackward"),Co=e=>Y(e,"goForward"),Ro=(e,o=[],t,r=y,l=[])=>{const d=F(t);return z((o=>C(d,(t=>C(e(o),(e=>r(t.goTo(e),e)))))),[d,...o,...l])},yo=e=>{var o;const t=F(e),[l,d]=vo(t);return[(n=l,!(0==(e=>e.length)(n))),mo(t),d,null!=(o=C(d,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r];var n},ko=e=>{var o;const t=F(e),[,,[l]]=vo(t);return[!m(l),Co(t),l,null!=(o=C(l,(e=>null==t?void 0:t.getCheckpoint(e))))?o:r]},ho=(e,o,t)=>U("CheckpointIds",F(t),e,o),fo=(e,o,t,r)=>U("Checkpoint",F(r),o,t,[e]),Po=(e,o,t=[],r,l=[])=>{const[,d]=K(),n=H((()=>o(e)),[e,...t]);return G((()=>{var e;return e=function*(){yield null==r?void 0:r(n),d(1)},new Promise(((o,t)=>{var r=o=>{try{d(e.next(o))}catch(e){t(e)}},l=o=>{try{d(e.throw(o))}catch(e){t(e)}},d=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,l);d((e=e.apply(void 0,null)).next())})),()=>{n.destroy()}}),[n,...l]),n};var qo=Object.defineProperty,xo=Object.defineProperties,So=Object.getOwnPropertyDescriptors,Oo=Object.getOwnPropertySymbols,To=Object.prototype.hasOwnProperty,Bo=Object.prototype.propertyIsEnumerable,Lo=(e,o,t)=>o in e?qo(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,jo=(e,o)=>{for(var t in o||(o={}))To.call(o,t)&&Lo(e,t,o[t]);if(Oo)for(var t of Oo(o))Bo.call(o,t)&&Lo(e,t,o[t]);return e},Mo=(e,o)=>xo(e,So(o)),Eo=(e,o)=>{var t={};for(var r in e)To.call(e,r)&&o.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&Oo)for(var r of Oo(e))o.indexOf(r)<0&&Bo.call(e,r)&&(t[r]=e[r]);return t};const{createElement:Vo,useMemo:Ao}=e,Do=({tableId:e,store:o,rowComponent:t=Qo,getRowComponentProps:r,customCellIds:l,separator:d,debugIds:n},s)=>Ko(w(s,(d=>Vo(t,Mo(jo({},x(r,d)),{key:d,tableId:e,rowId:d,customCellIds:l,store:o,debugIds:n})))),d,n,e),Fo=({queryId:e,queries:o,resultRowComponent:t=dt,getResultRowComponentProps:r,separator:l,debugIds:d},n)=>Ko(w(n,(l=>Vo(t,Mo(jo({},x(r,l)),{key:l,queryId:e,rowId:l,queries:o,debugIds:d})))),l,d,e),zo=e=>{const o=A(e);return[o,null==o?void 0:o.getStore()]},Go=({relationshipId:e,relationships:o,rowComponent:t=Qo,getRowComponentProps:r,separator:l,debugIds:d},n,s)=>{const[u,i]=zo(o),a=null==u?void 0:u.getLocalTableId(e),I=n(e,s,u);return Ko(w(I,(e=>Vo(t,Mo(jo({},x(r,e)),{key:e,tableId:a,rowId:e,store:i,debugIds:d})))),l,d,s)},Ho=e=>({checkpoints:o,checkpointComponent:t=ut,getCheckpointComponentProps:r,separator:l,debugIds:d})=>{const n=F(o);return Ko(w(e(vo(n)),(e=>Vo(t,Mo(jo({},x(r,e)),{key:e,checkpoints:n,checkpointId:e,debugIds:d})))),l)},Jo=({store:e,storesById:t,metrics:r,metricsById:l,indexes:d,indexesById:n,relationships:s,relationshipsById:u,queries:i,queriesById:a,checkpoints:I,checkpointsById:c,children:p})=>{const b=o(f);return Vo(f.Provider,{value:Ao((()=>[null!=e?e:b[0],jo(jo({},b[1]),t),null!=r?r:b[2],jo(jo({},b[3]),l),null!=d?d:b[4],jo(jo({},b[5]),n),null!=s?s:b[6],jo(jo({},b[7]),u),null!=i?i:b[8],jo(jo({},b[9]),a),null!=I?I:b[10],jo(jo({},b[11]),c)]),[e,t,r,l,d,n,s,u,i,a,I,c,b])},p)},Ko=(e,o,t,r)=>{const l=m(o)||!Array.isArray(e)?e:w(e,((e,t)=>t>0?[o,e]:e));return t?[r,":{",l,"}"]:l},No=({tableId:e,rowId:o,cellId:t,store:l,debugIds:d})=>{var n;return Ko(r+(null!=(n=ne(e,o,t,l))?n:r),void 0,d,t)},Qo=({tableId:e,rowId:o,store:t,cellComponent:r=No,getCellComponentProps:l,customCellIds:d,separator:n,debugIds:s})=>Ko(w(((e,o,t,r)=>{const l=de(o,t,r);return null!=e?e:l})(d,e,o,t),(d=>Vo(r,Mo(jo({},x(l,d)),{key:d,tableId:e,rowId:o,cellId:d,store:t,debugIds:s})))),n,s,o),Uo=e=>Do(e,te(e.tableId,e.store)),Wo=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,n=Eo(o,["cellId","descending","offset","limit"]);return Do(n,re(n.tableId,t,r,l,d,n.store))},Xo=({store:e,tableComponent:o=Uo,getTableComponentProps:t,separator:r,debugIds:l})=>Ko(w(_(e),(r=>Vo(o,Mo(jo({},x(t,r)),{key:r,tableId:r,store:e,debugIds:l})))),r),Yo=({valueId:e,store:o,debugIds:t})=>{var l;return Ko(r+(null!=(l=ie(e,o))?l:r),void 0,t,e)},Zo=({store:e,valueComponent:o=Yo,getValueComponentProps:t,separator:r,debugIds:l})=>Ko(w(ue(e),(r=>Vo(o,Mo(jo({},x(t,r)),{key:r,valueId:r,store:e,debugIds:l})))),r),$o=({metricId:e,metrics:o,debugIds:t})=>{var l;return Ko(null!=(l=De(e,o))?l:r,void 0,t,e)},_o=({indexId:e,sliceId:o,indexes:t,rowComponent:r=Qo,getRowComponentProps:l,separator:d,debugIds:n})=>{const s=V(t),u=null==s?void 0:s.getStore(),i=null==s?void 0:s.getTableId(e),a=He(e,o,s);return Ko(w(a,(e=>Vo(r,Mo(jo({},x(l,e)),{key:e,tableId:i,rowId:e,store:u,debugIds:n})))),d,n,o)},et=({indexId:e,indexes:o,sliceComponent:t=_o,getSliceComponentProps:r,separator:l,debugIds:d})=>Ko(w(Ge(e,o),(l=>Vo(t,Mo(jo({},x(r,l)),{key:l,indexId:e,sliceId:l,indexes:o,debugIds:d})))),l,d,e),ot=({relationshipId:e,localRowId:o,relationships:t,rowComponent:r=Qo,getRowComponentProps:l,debugIds:d})=>{const[n,s]=zo(t),u=null==n?void 0:n.getRemoteTableId(e),i=Qe(e,o,n);return Ko(m(u)||m(i)?null:Vo(r,Mo(jo({},x(l,i)),{key:i,tableId:u,rowId:i,store:s,debugIds:d})),void 0,d,o)},tt=e=>Go(e,Ue,e.remoteRowId),rt=e=>Go(e,We,e.firstRowId),lt=({queryId:e,rowId:o,cellId:t,queries:l,debugIds:d})=>{var n;return Ko(r+(null!=(n=no(e,o,t,l))?n:r),void 0,d,t)},dt=({queryId:e,rowId:o,queries:t,resultCellComponent:r=lt,getResultCellComponentProps:l,separator:d,debugIds:n})=>Ko(w(lo(e,o,t),(d=>Vo(r,Mo(jo({},x(l,d)),{key:d,queryId:e,rowId:o,cellId:d,queries:t,debugIds:n})))),d,n,o),nt=e=>Fo(e,eo(e.queryId,e.queries)),st=e=>{var o=e,{cellId:t,descending:r,offset:l,limit:d}=o,n=Eo(o,["cellId","descending","offset","limit"]);return Fo(n,to(n.queryId,t,r,l,d,n.queries))},ut=({checkpoints:e,checkpointId:o,debugIds:t})=>{var l;return Ko(null!=(l=go(o,e))?l:r,void 0,t,o)},it=Ho((e=>e[0])),at=Ho((e=>m(e[1])?[]:[e[1]])),It=Ho((e=>e[2]));export{it as BackwardCheckpointsView,No as CellView,ut as CheckpointView,at as CurrentCheckpointView,It as ForwardCheckpointsView,et as IndexView,rt as LinkedRowsView,tt as LocalRowsView,$o as MetricView,Jo as Provider,ot as RemoteRowView,lt as ResultCellView,dt as ResultRowView,st as ResultSortedTableView,nt as ResultTableView,Qo as RowView,_o as SliceView,Wo as SortedTableView,Uo as TableView,Xo as TablesView,Yo as ValueView,Zo as ValuesView,pe as useAddRowCallback,ne as useCell,de as useCellIds,Le as useCellIdsListener,je as useCellListener,go as useCheckpoint,vo as useCheckpointIds,ho as useCheckpointIdsListener,fo as useCheckpointListener,j as useCheckpoints,bo as useCreateCheckpoints,ze as useCreateIndexes,Ae as useCreateMetrics,Po as useCreatePersister,$e as useCreateQueries,Ne as useCreateRelationships,Z as useCreateStore,ke as useDelCellCallback,ye as useDelRowCallback,Re as useDelTableCallback,Ce as useDelTablesCallback,fe as useDelValueCallback,he as useDelValuesCallback,mo as useGoBackwardCallback,Co as useGoForwardCallback,Ro as useGoToCallback,T as useIndexes,We as useLinkedRowIds,Ze as useLinkedRowIdsListener,Ue as useLocalRowIds,Ye as useLocalRowIdsListener,De as useMetric,Fe as useMetricListener,O as useMetrics,L as useQueries,ko as useRedoInformation,B as useRelationships,Qe as useRemoteRowId,Xe as useRemoteRowIdListener,no as useResultCell,lo as useResultCellIds,co as useResultCellIdsListener,po as useResultCellListener,ro as useResultRow,eo as useResultRowIds,io as useResultRowIdsListener,Io as useResultRowListener,to as useResultSortedRowIds,ao as useResultSortedRowIdsListener,_e as useResultTable,oo as useResultTableCellIds,uo as useResultTableCellIdsListener,so as useResultTableListener,le as useRow,te as useRowIds,Oe as useRowIdsListener,Be as useRowListener,ve as useSetCellCallback,wo as useSetCheckpointCallback,be as useSetPartialRowCallback,we as useSetPartialValuesCallback,ce as useSetRowCallback,Ie as useSetTableCallback,ae as useSetTablesCallback,me as useSetValueCallback,ge as useSetValuesCallback,Ge as useSliceIds,Je as useSliceIdsListener,He as useSliceRowIds,Ke as useSliceRowIdsListener,re as useSortedRowIds,Te as useSortedRowIdsListener,S as useStore,ee as useTable,oe as useTableCellIds,Se as useTableCellIdsListener,_ as useTableIds,qe as useTableIdsListener,xe as useTableListener,$ as useTables,Pe as useTablesListener,yo as useUndoInformation,ie as useValue,ue as useValueIds,Ee as useValueIdsListener,Ve as useValueListener,se as useValues,Me as useValuesListener};
|
package/lib/es6/ui-react.js.gz
CHANGED
|
Binary file
|
package/lib/queries.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Row",d
|
|
1
|
+
const e=e=>typeof e,t=e(""),n=e(!0),s=e(0),r=e(e),o="Listener",a="Result",l="Ids",i="Table",d="Row",c=d+l,u="Sorted"+d+l,h="Cell",g=h+l,v=(e,t)=>e.every(t),w=(e,t)=>e.forEach(t),f=e=>y(e,((e,t)=>e+t),0),L=e=>e.length,R=e=>0==L(e),y=(e,t,n)=>e.reduce(t,n),T=(e,...t)=>e.push(...t),b=Math.max,p=Math.min,C=isFinite,S=e=>null==e,m=(e,t,n)=>S(e)?n?.():t(e),I=t=>e(t)==r,Q=e=>Array.isArray(e),E=()=>{},M=Object,x=M.freeze,D=e=>e.size,j=(e,t)=>e?.has(t)??!1,k=e=>S(e)||0==D(e),z=e=>[...e?.values()??[]],A=e=>e.clear(),F=(e,t)=>e?.forEach(t),O=(e,t)=>e?.delete(t),W=e=>new Map(e),q=(e,t)=>e?.get(t),B=(e,t)=>F(e,((e,n)=>t(n,e))),G=(e,t,n)=>S(n)?(O(e,t),e):e?.set(t,n),H=(e,t,n)=>(j(e,t)||G(e,t,n()),q(e,t)),J=(e,t,n,s,r=0)=>m((n?H:q)(e,t[r],r>L(t)-2?n:W),(o=>{if(r>L(t)-2)return s?.(o)&&G(e,t[r]),o;const a=J(o,t,n,s,r+1);return k(o)&&G(e,t[r]),a})),K=e=>new Set(Q(e)||S(e)?e:[e]),N=(e,t)=>e?.add(t),P=W([["avg",[(e,t)=>f(e)/t,(e,t,n)=>e+(t-e)/(n+1),(e,t,n)=>e+(e-t)/(n-1),(e,t,n,s)=>e+(t-n)/s]],["max",[e=>b(...e),(e,t)=>b(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:b(t,e)]],["min",[e=>p(...e),(e,t)=>p(t,e),(e,t)=>t==e?void 0:e,(e,t,n)=>n==e?void 0:p(t,e)]],["sum",[e=>f(e),(e,t)=>e+t,(e,t)=>e-t,(e,t,n)=>e-n+t]]]),U=(r=>{const l=new WeakMap;return r=>(l.has(r)||l.set(r,(r=>{const l=r.createStore,[f,y,b,p,U,,,V,,X,Y,Z,$]=((e,t,n)=>{const s=e.hasRow,r=W(),o=W(),a=W(),l=W(),i=W(),d=(t,n,...s)=>{const r=H(i,t,K);return w(s,(t=>N(r,t)&&n&&e.callListener(t))),s},c=(t,...n)=>m(q(i,t),(s=>{w(R(n)?z(s):n,(t=>{e.delListener(t),O(s,t)})),k(s)&&G(i,t)})),u=(e,t)=>{G(r,e,t),j(o,e)||(G(o,e,!0),G(a,e,W()),G(l,e,W()))},h=e=>{G(r,e),G(o,e),G(a,e),G(l,e),c(e)};return[()=>e,()=>{return e=r,[...e?.keys()??[]];var e},e=>B(o,e),e=>j(o,e),e=>q(r,e),e=>q(o,e),(e,t)=>G(o,e,t),u,(t,r,o,i,h)=>{u(t,r);const g=W(),f=W(),R=q(a,t),y=q(l,t),T=t=>{const o=n=>e.getCell(r,t,n),a=q(R,t),l=s(r,t)?n(i(o,t)):void 0;var d,c;if(a===l||Q(a)&&Q(l)&&(c=l,L(d=a)===L(c)&&v(d,((e,t)=>c[t]===e)))||G(g,t,[a,l]),!S(h)){const e=q(y,t),n=s(r,t)?h(o,t):void 0;e!=n&&G(f,t,n)}},b=e=>{o((()=>{F(g,(([,e],t)=>G(R,t,e))),F(f,((e,t)=>G(y,t,e)))}),g,f,R,y,e),A(g),A(f)};B(R,T),e.hasTable(r)&&w(e.getRowIds(r),(e=>{j(R,e)||T(e)})),b(!0),c(t),d(t,0,e.addRowListener(r,null,((e,t,n)=>T(n))),e.addTableListener(r,(()=>b())))},h,()=>B(i,h),d,c]})(r,0,E),_=l(),ee=l(),te=W(),ne=(e,t,...n)=>w(n,(n=>N(H(H(te,t,W),e,K),n))),se=e=>{m(q(te,e),(e=>{B(e,((e,t)=>F(t,(t=>e.delListener(t))))),A(e)})),w([ee,_],(t=>t.delTable(e)))},re=(e,t,n)=>ne(t,e,t.addStartTransactionListener(n.startTransaction),t.addDidFinishTransactionListener((()=>n.finishTransaction()))),oe={setQueryDefinition:(o,a,l)=>{V(o,a),se(o);const i=[],d=[[null,[a,null,null,[],W()]]],c=[],u=[],h=[];l({select:(e,t)=>{const n=I(e)?[L(i)+"",e]:[S(t)?e:t,n=>n(e,t)];return T(i,n),{as:e=>n[0]=e}},join:(e,t,n)=>{const s=S(n)||I(t)?null:t,r=S(s)?t:n,o=[e,[e,s,I(r)?r:e=>e(r),[],W()]];return T(d,o),{as:e=>o[0]=e}},where:(e,t,n)=>T(c,I(e)?e:S(n)?n=>n(e)===t:s=>s(e,t)===n),group:(e,t,n,s,r)=>{const o=[e,[e,I(t)?[t,n,s,r]:q(P,t)??[(e,t)=>t]]];return T(u,o),{as:e=>o[0]=e}},having:(e,t)=>T(h,I(e)?e:n=>n(e)===t)});const g=W(i);if(k(g))return oe;const f=W(d);B(f,((e,[,t])=>m(q(f,t),(({3:t})=>S(e)?0:T(t,e)))));const y=W(u);let b=_;if(k(y)&&R(h))b=ee;else{re(o,b,ee);const r=W();B(y,((e,[t,n])=>N(H(r,t,K),[e,n])));const a=K();B(g,(e=>j(r,e)?0:N(a,e)));const l=W(),i=(a,l,i,d)=>m(a,(([c,u,g,w])=>{B(l,((o,[a])=>{const l=H(c,o,W),u=q(l,i),h=d?void 0:a;if(u!==h){const a=K([[u,h]]),d=D(l);G(l,i,h),F(q(r,o),(([r,o])=>{const i=((e,t,n,s,r,o=!1)=>{if(k(n))return;const[a,l,i,d]=r;return o||=S(e),F(s,(([n,s])=>{o||(e=S(n)?l?.(e,s,t++):S(s)?i?.(e,n,t--):d?.(e,s,n,t),o||=S(e))})),o?a(z(n),D(n)):e})(w[r],d,l,a,o);w[r]=S((r=>{const o=e(r);return(e=>e==t||e==n)(o)||o==s&&C(r)?o:void 0})(i))?null:i}))}})),k(u)||!v(h,(e=>e((e=>w[e]))))?ee.delRow(o,g):S(g)?a[2]=ee.addRow(o,w):ee.setRow(o,g,w)}));ne(b,o,b.addRowListener(o,null,((e,t,n,s)=>{const d=[],c=[],u=W(),h=b.hasRow(o,n);let g=!h;F(a,(e=>{const[t,r,a]=s(o,n,e);T(d,r),T(c,a),g||=t})),B(r,(e=>{const[t,,r]=s(o,n,e);(g||t)&&G(u,e,[r])})),g&&i(J(l,d,void 0,(([,e])=>(O(e,n),k(e)))),u,n,1),h&&i(J(l,c,(()=>{const e={};return F(a,(t=>e[t]=b.getCell(o,n,t))),[W(),K(),void 0,e]}),(([,e])=>{N(e,n)})),u,n)})))}re(o,r,b);const p=(e,t,n,s)=>{const l=e=>r.getCell(t,n,e);w(s,(t=>{const[n,,s,a,i]=q(f,t),d=s?.(l,e),[c,u]=q(i,e)??[];d!=c&&(S(u)||$(o,u),G(i,e,S(d)?null:[d,...Z(o,1,r.addRowListener(n,d,(()=>p(e,n,d,a))))]))})),(e=>{const t=(t,n)=>r.getCell(...S(n)?[a,e,t]:t===a?[a,e,n]:[q(f,t)?.[0],q(q(f,t)?.[4],e)?.[0],n]);b.transaction((()=>v(c,(e=>e(t)))?B(g,((n,s)=>((e,t,n,s,r)=>S(r)?e.delCell(t,n,s,!0):e.setCell(t,n,s,r))(b,o,e,n,s(t,e)))):b.delRow(o,e)))})(e)},{3:Q}=q(f,null);return b.transaction((()=>Z(o,1,r.addRowListener(a,null,((e,t,n)=>{r.hasRow(a,n)?p(n,a,n,Q):(b.delRow(o,n),F(f,(({4:e})=>m(q(e,n),(([,t])=>{$(o,t),G(e,n)})))))}))))),oe},delQueryDefinition:e=>(se(e),X(e),oe),getStore:f,getQueryIds:y,forEachQuery:b,hasQuery:p,getTableId:U,delListener:e=>(ee.delListener(e),oe),destroy:Y,getListenerStats:()=>{const{tables:e,tableIds:t,transaction:n,...s}=ee.getListenerStats();return s}};var ae,le;return ae={[i]:[1,1],[i+g]:[0,1],[c]:[0,1],[u]:[0,5],[d]:[1,2],[g]:[0,2],[h]:[1,3]},le=([e,t],n)=>{w(e?["get","has","forEach"]:["get"],(e=>oe[e+a+n]=(...t)=>ee[e+n](...t))),oe["add"+a+n+o]=(...e)=>{return ee["add"+n+o](...(s=e,0,r=t,s.slice(0,r)),((n,...s)=>e[t](oe,...s)));var s,r}},((e,t)=>{e.map(t)})(M.entries(ae),(([e,t])=>le(t,e))),x(oe)})(r)),l.get(r))})();export{U as createQueries};
|
package/lib/queries.js.gz
CHANGED
|
Binary file
|