on-zero 0.4.23 → 0.4.25
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/dist/cjs/combineZeroClients.cjs +101 -0
- package/dist/cjs/combineZeroClients.native.js +150 -0
- package/dist/cjs/combineZeroClients.native.js.map +1 -0
- package/dist/cjs/createUseQuery.cjs +96 -4
- package/dist/cjs/createUseQuery.native.js +132 -4
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createZeroClient.cjs +41 -13
- package/dist/cjs/createZeroClient.native.js +75 -43
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/index.native.js +1 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/instanceRegistry.cjs +65 -0
- package/dist/cjs/instanceRegistry.native.js +111 -0
- package/dist/cjs/instanceRegistry.native.js.map +1 -0
- package/dist/cjs/multiInstance.test.cjs +322 -0
- package/dist/cjs/multiInstance.test.native.js +387 -0
- package/dist/cjs/multiInstance.test.native.js.map +1 -0
- package/dist/cjs/multiInstanceNested.test.cjs +206 -0
- package/dist/cjs/multiInstanceNested.test.native.js +254 -0
- package/dist/cjs/multiInstanceNested.test.native.js.map +1 -0
- package/dist/cjs/run.cjs +5 -5
- package/dist/cjs/run.native.js +6 -5
- package/dist/cjs/run.native.js.map +1 -1
- package/dist/cjs/zeroRunner.cjs +4 -1
- package/dist/cjs/zeroRunner.native.js +4 -1
- package/dist/cjs/zeroRunner.native.js.map +1 -1
- package/dist/esm/combineZeroClients.mjs +76 -0
- package/dist/esm/combineZeroClients.mjs.map +1 -0
- package/dist/esm/combineZeroClients.native.js +122 -0
- package/dist/esm/combineZeroClients.native.js.map +1 -0
- package/dist/esm/createUseQuery.mjs +96 -5
- package/dist/esm/createUseQuery.mjs.map +1 -1
- package/dist/esm/createUseQuery.native.js +132 -5
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +42 -14
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +76 -44
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +1 -0
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/instanceRegistry.mjs +38 -0
- package/dist/esm/instanceRegistry.mjs.map +1 -0
- package/dist/esm/instanceRegistry.native.js +81 -0
- package/dist/esm/instanceRegistry.native.js.map +1 -0
- package/dist/esm/multiInstance.test.mjs +323 -0
- package/dist/esm/multiInstance.test.mjs.map +1 -0
- package/dist/esm/multiInstance.test.native.js +385 -0
- package/dist/esm/multiInstance.test.native.js.map +1 -0
- package/dist/esm/multiInstanceNested.test.mjs +207 -0
- package/dist/esm/multiInstanceNested.test.mjs.map +1 -0
- package/dist/esm/multiInstanceNested.test.native.js +252 -0
- package/dist/esm/multiInstanceNested.test.native.js.map +1 -0
- package/dist/esm/run.mjs +5 -5
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/run.native.js +6 -5
- package/dist/esm/run.native.js.map +1 -1
- package/dist/esm/zeroRunner.mjs +4 -1
- package/dist/esm/zeroRunner.mjs.map +1 -1
- package/dist/esm/zeroRunner.native.js +4 -1
- package/dist/esm/zeroRunner.native.js.map +1 -1
- package/package.json +5 -3
- package/readme.md +59 -0
- package/src/combineZeroClients.tsx +186 -0
- package/src/createUseQuery.tsx +186 -12
- package/src/createZeroClient.tsx +107 -42
- package/src/index.ts +1 -0
- package/src/instanceRegistry.ts +75 -0
- package/src/multiInstance.test.tsx +284 -0
- package/src/multiInstanceNested.test.tsx +205 -0
- package/src/run.ts +7 -6
- package/src/zeroRunner.ts +7 -1
- package/types/combineZeroClients.d.ts +38 -0
- package/types/combineZeroClients.d.ts.map +1 -0
- package/types/createUseQuery.d.ts +15 -0
- package/types/createUseQuery.d.ts.map +1 -1
- package/types/createZeroClient.d.ts +7 -2
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/instanceRegistry.d.ts +15 -0
- package/types/instanceRegistry.d.ts.map +1 -0
- package/types/multiInstance.test.d.ts +2 -0
- package/types/multiInstance.test.d.ts.map +1 -0
- package/types/multiInstanceNested.test.d.ts +5 -0
- package/types/multiInstanceNested.test.d.ts.map +1 -0
- package/types/run.d.ts.map +1 -1
- package/types/zeroRunner.d.ts +3 -1
- package/types/zeroRunner.d.ts.map +1 -1
|
@@ -1,10 +1,18 @@
|
|
|
1
1
|
import { useQuery as zeroUseQuery } from "@rocicorp/zero/react";
|
|
2
|
-
import {
|
|
2
|
+
import { useEmitterValue } from "@take-out/helpers";
|
|
3
|
+
import { useContext, useEffect, useMemo, useRef, useSyncExternalStore } from "react";
|
|
3
4
|
import { useZeroDebug } from "./helpers/useZeroDebug.mjs";
|
|
4
5
|
import { resolveQuery } from "./resolveQuery.mjs";
|
|
5
6
|
const EMPTY_RESPONSE = [null, {
|
|
6
7
|
type: "unknown"
|
|
7
8
|
}];
|
|
9
|
+
function parseUseQueryArgs(paramsOrOptions, optionsArg) {
|
|
10
|
+
const hasParams = optionsArg !== void 0 || paramsOrOptions && typeof paramsOrOptions === "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions);
|
|
11
|
+
return {
|
|
12
|
+
params: hasParams ? paramsOrOptions : void 0,
|
|
13
|
+
options: hasParams ? optionsArg : paramsOrOptions
|
|
14
|
+
};
|
|
15
|
+
}
|
|
8
16
|
function createUseQuery({
|
|
9
17
|
DisabledContext,
|
|
10
18
|
customQueries
|
|
@@ -17,9 +25,10 @@ function createUseQuery({
|
|
|
17
25
|
queryRequest,
|
|
18
26
|
options
|
|
19
27
|
} = useMemo(() => {
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
28
|
+
const {
|
|
29
|
+
params,
|
|
30
|
+
options: opts
|
|
31
|
+
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
23
32
|
const queryRequest2 = resolveQuery({
|
|
24
33
|
customQueries,
|
|
25
34
|
fn,
|
|
@@ -45,5 +54,87 @@ function createUseQuery({
|
|
|
45
54
|
}
|
|
46
55
|
return useQuery;
|
|
47
56
|
}
|
|
48
|
-
|
|
57
|
+
const DISABLED_SUBSCRIBE = () => () => {};
|
|
58
|
+
const DISABLED_SNAPSHOT = [void 0, {
|
|
59
|
+
type: "unknown"
|
|
60
|
+
}];
|
|
61
|
+
const getDisabledSnapshot = () => DISABLED_SNAPSHOT;
|
|
62
|
+
function createDirectView(zero, queryRequest, ttl) {
|
|
63
|
+
let snapshot = DISABLED_SNAPSHOT;
|
|
64
|
+
const listeners = /* @__PURE__ */new Set();
|
|
65
|
+
const view = zero.materialize(queryRequest, ttl === void 0 ? void 0 : {
|
|
66
|
+
ttl
|
|
67
|
+
});
|
|
68
|
+
view.addListener((data, resultType) => {
|
|
69
|
+
snapshot = [data === void 0 ? void 0 : structuredClone(data), {
|
|
70
|
+
type: resultType
|
|
71
|
+
}];
|
|
72
|
+
for (const listener of listeners) {
|
|
73
|
+
listener();
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
return {
|
|
77
|
+
subscribe: notify => {
|
|
78
|
+
listeners.add(notify);
|
|
79
|
+
return () => listeners.delete(notify);
|
|
80
|
+
},
|
|
81
|
+
getSnapshot: () => snapshot,
|
|
82
|
+
destroy: () => {
|
|
83
|
+
try {
|
|
84
|
+
view.destroy();
|
|
85
|
+
} catch {}
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function createUseQueryDirect({
|
|
90
|
+
DisabledContext,
|
|
91
|
+
customQueries,
|
|
92
|
+
getZero,
|
|
93
|
+
zeroVersion
|
|
94
|
+
}) {
|
|
95
|
+
function useQueryDirect(...args) {
|
|
96
|
+
const disableMode = useContext(DisabledContext);
|
|
97
|
+
const lastRef = useRef(EMPTY_RESPONSE);
|
|
98
|
+
const [fn, paramsOrOptions, optionsArg] = args;
|
|
99
|
+
const version = useEmitterValue(zeroVersion);
|
|
100
|
+
const {
|
|
101
|
+
params,
|
|
102
|
+
options
|
|
103
|
+
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
104
|
+
let enabled = true;
|
|
105
|
+
let ttl;
|
|
106
|
+
if (typeof options === "boolean") {
|
|
107
|
+
enabled = options;
|
|
108
|
+
} else if (options) {
|
|
109
|
+
enabled = options.enabled !== false;
|
|
110
|
+
ttl = options.ttl;
|
|
111
|
+
}
|
|
112
|
+
const paramsKey = params === void 0 ? "" : JSON.stringify(params);
|
|
113
|
+
const view = useMemo(() => {
|
|
114
|
+
const zero = getZero();
|
|
115
|
+
if (!enabled || !zero) return null;
|
|
116
|
+
const queryRequest = resolveQuery({
|
|
117
|
+
customQueries,
|
|
118
|
+
fn,
|
|
119
|
+
params
|
|
120
|
+
});
|
|
121
|
+
return createDirectView(zero, queryRequest, ttl);
|
|
122
|
+
}, [fn, paramsKey, enabled, ttl, version]);
|
|
123
|
+
useEffect(() => {
|
|
124
|
+
if (!view) return;
|
|
125
|
+
return () => view.destroy();
|
|
126
|
+
}, [view]);
|
|
127
|
+
const out = useSyncExternalStore(view ? view.subscribe : DISABLED_SUBSCRIBE, view ? view.getSnapshot : getDisabledSnapshot, view ? view.getSnapshot : getDisabledSnapshot);
|
|
128
|
+
if (!disableMode) {
|
|
129
|
+
lastRef.current = out;
|
|
130
|
+
return out;
|
|
131
|
+
}
|
|
132
|
+
if (disableMode === "last-value") {
|
|
133
|
+
return lastRef.current;
|
|
134
|
+
}
|
|
135
|
+
return EMPTY_RESPONSE;
|
|
136
|
+
}
|
|
137
|
+
return useQueryDirect;
|
|
138
|
+
}
|
|
139
|
+
export { createUseQuery, createUseQueryDirect };
|
|
49
140
|
//# sourceMappingURL=createUseQuery.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useQuery","zeroUseQuery","useContext","useMemo","useRef","useZeroDebug","resolveQuery","EMPTY_RESPONSE","type","
|
|
1
|
+
{"version":3,"names":["useQuery","zeroUseQuery","useEmitterValue","useContext","useEffect","useMemo","useRef","useSyncExternalStore","useZeroDebug","resolveQuery","EMPTY_RESPONSE","type","parseUseQueryArgs","paramsOrOptions","optionsArg","hasParams","params","options","createUseQuery","DisabledContext","customQueries","args","disableMode","lastRef","fn","queryRequest","opts","queryRequest2","out","process","env","NODE_ENV","DEBUG_ZERO_QUERIES","current","DISABLED_SUBSCRIBE","DISABLED_SNAPSHOT","getDisabledSnapshot","createDirectView","zero","ttl","snapshot","listeners","Set","view","materialize","addListener","data","resultType","structuredClone","listener","subscribe","notify","add","delete","getSnapshot","destroy","createUseQueryDirect","getZero","zeroVersion","useQueryDirect","version","enabled","paramsKey","JSON","stringify"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { useQuery as zeroUseQuery } from "@rocicorp/zero/react";
|
|
2
|
-
import {
|
|
2
|
+
import { useEmitterValue } from "@take-out/helpers";
|
|
3
|
+
import { useContext, useEffect, useMemo, useRef, useSyncExternalStore } from "react";
|
|
3
4
|
import { useZeroDebug } from "./helpers/useZeroDebug.native.js";
|
|
4
5
|
import { resolveQuery } from "./resolveQuery.native.js";
|
|
5
6
|
function _type_of(obj) {
|
|
@@ -10,6 +11,13 @@ function _type_of(obj) {
|
|
|
10
11
|
var EMPTY_RESPONSE = [null, {
|
|
11
12
|
type: "unknown"
|
|
12
13
|
}];
|
|
14
|
+
function parseUseQueryArgs(paramsOrOptions, optionsArg) {
|
|
15
|
+
var hasParams = optionsArg !== void 0 || paramsOrOptions && (typeof paramsOrOptions === "undefined" ? "undefined" : _type_of(paramsOrOptions)) === "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions);
|
|
16
|
+
return {
|
|
17
|
+
params: hasParams ? paramsOrOptions : void 0,
|
|
18
|
+
options: hasParams ? optionsArg : paramsOrOptions
|
|
19
|
+
};
|
|
20
|
+
}
|
|
13
21
|
function createUseQuery(param) {
|
|
14
22
|
var {
|
|
15
23
|
DisabledContext,
|
|
@@ -26,9 +34,10 @@ function createUseQuery(param) {
|
|
|
26
34
|
queryRequest,
|
|
27
35
|
options
|
|
28
36
|
} = useMemo(function () {
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
37
|
+
var {
|
|
38
|
+
params,
|
|
39
|
+
options: opts
|
|
40
|
+
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
32
41
|
var queryRequest2 = resolveQuery({
|
|
33
42
|
customQueries,
|
|
34
43
|
fn,
|
|
@@ -54,5 +63,123 @@ function createUseQuery(param) {
|
|
|
54
63
|
}
|
|
55
64
|
return useQuery;
|
|
56
65
|
}
|
|
57
|
-
|
|
66
|
+
var DISABLED_SUBSCRIBE = function () {
|
|
67
|
+
return function () {};
|
|
68
|
+
};
|
|
69
|
+
var DISABLED_SNAPSHOT = [void 0, {
|
|
70
|
+
type: "unknown"
|
|
71
|
+
}];
|
|
72
|
+
var getDisabledSnapshot = function () {
|
|
73
|
+
return DISABLED_SNAPSHOT;
|
|
74
|
+
};
|
|
75
|
+
function createDirectView(zero, queryRequest, ttl) {
|
|
76
|
+
var snapshot = DISABLED_SNAPSHOT;
|
|
77
|
+
var listeners = /* @__PURE__ */new Set();
|
|
78
|
+
var view = zero.materialize(queryRequest, ttl === void 0 ? void 0 : {
|
|
79
|
+
ttl
|
|
80
|
+
});
|
|
81
|
+
view.addListener(function (data, resultType) {
|
|
82
|
+
snapshot = [data === void 0 ? void 0 : structuredClone(data), {
|
|
83
|
+
type: resultType
|
|
84
|
+
}];
|
|
85
|
+
var _iteratorNormalCompletion = true,
|
|
86
|
+
_didIteratorError = false,
|
|
87
|
+
_iteratorError = void 0;
|
|
88
|
+
try {
|
|
89
|
+
for (var _iterator = listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
90
|
+
var listener = _step.value;
|
|
91
|
+
listener();
|
|
92
|
+
}
|
|
93
|
+
} catch (err) {
|
|
94
|
+
_didIteratorError = true;
|
|
95
|
+
_iteratorError = err;
|
|
96
|
+
} finally {
|
|
97
|
+
try {
|
|
98
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
99
|
+
_iterator.return();
|
|
100
|
+
}
|
|
101
|
+
} finally {
|
|
102
|
+
if (_didIteratorError) {
|
|
103
|
+
throw _iteratorError;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
return {
|
|
109
|
+
subscribe: function (notify) {
|
|
110
|
+
listeners.add(notify);
|
|
111
|
+
return function () {
|
|
112
|
+
return listeners.delete(notify);
|
|
113
|
+
};
|
|
114
|
+
},
|
|
115
|
+
getSnapshot: function () {
|
|
116
|
+
return snapshot;
|
|
117
|
+
},
|
|
118
|
+
destroy: function () {
|
|
119
|
+
try {
|
|
120
|
+
view.destroy();
|
|
121
|
+
} catch (e) {}
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
function createUseQueryDirect(param) {
|
|
126
|
+
var {
|
|
127
|
+
DisabledContext,
|
|
128
|
+
customQueries,
|
|
129
|
+
getZero,
|
|
130
|
+
zeroVersion
|
|
131
|
+
} = param;
|
|
132
|
+
function useQueryDirect() {
|
|
133
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
134
|
+
args[_key] = arguments[_key];
|
|
135
|
+
}
|
|
136
|
+
var disableMode = useContext(DisabledContext);
|
|
137
|
+
var lastRef = useRef(EMPTY_RESPONSE);
|
|
138
|
+
var [fn, paramsOrOptions, optionsArg] = args;
|
|
139
|
+
var version = useEmitterValue(zeroVersion);
|
|
140
|
+
var {
|
|
141
|
+
params,
|
|
142
|
+
options
|
|
143
|
+
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
144
|
+
var enabled = true;
|
|
145
|
+
var ttl;
|
|
146
|
+
if (typeof options === "boolean") {
|
|
147
|
+
enabled = options;
|
|
148
|
+
} else if (options) {
|
|
149
|
+
enabled = options.enabled !== false;
|
|
150
|
+
ttl = options.ttl;
|
|
151
|
+
}
|
|
152
|
+
var paramsKey = params === void 0 ? "" : JSON.stringify(params);
|
|
153
|
+
var view = useMemo(function () {
|
|
154
|
+
var zero = getZero();
|
|
155
|
+
if (!enabled || !zero) return null;
|
|
156
|
+
var queryRequest = resolveQuery({
|
|
157
|
+
customQueries,
|
|
158
|
+
fn,
|
|
159
|
+
params
|
|
160
|
+
});
|
|
161
|
+
return createDirectView(zero, queryRequest, ttl);
|
|
162
|
+
},
|
|
163
|
+
// params is keyed by paramsKey; version re-materializes on a new zero
|
|
164
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
165
|
+
[fn, paramsKey, enabled, ttl, version]);
|
|
166
|
+
useEffect(function () {
|
|
167
|
+
if (!view) return;
|
|
168
|
+
return function () {
|
|
169
|
+
return view.destroy();
|
|
170
|
+
};
|
|
171
|
+
}, [view]);
|
|
172
|
+
var out = useSyncExternalStore(view ? view.subscribe : DISABLED_SUBSCRIBE, view ? view.getSnapshot : getDisabledSnapshot, view ? view.getSnapshot : getDisabledSnapshot);
|
|
173
|
+
if (!disableMode) {
|
|
174
|
+
lastRef.current = out;
|
|
175
|
+
return out;
|
|
176
|
+
}
|
|
177
|
+
if (disableMode === "last-value") {
|
|
178
|
+
return lastRef.current;
|
|
179
|
+
}
|
|
180
|
+
return EMPTY_RESPONSE;
|
|
181
|
+
}
|
|
182
|
+
return useQueryDirect;
|
|
183
|
+
}
|
|
184
|
+
export { createUseQuery, createUseQueryDirect };
|
|
58
185
|
//# sourceMappingURL=createUseQuery.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useQuery","zeroUseQuery","useContext","useMemo","useRef","useZeroDebug","resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_RESPONSE","type","createUseQuery","param","DisabledContext","customQueries","_len","arguments","length","args","Array","_key","disableMode","lastRef","fn","
|
|
1
|
+
{"version":3,"names":["useQuery","zeroUseQuery","useEmitterValue","useContext","useEffect","useMemo","useRef","useSyncExternalStore","useZeroDebug","resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_RESPONSE","type","parseUseQueryArgs","paramsOrOptions","optionsArg","hasParams","params","options","createUseQuery","param","DisabledContext","customQueries","_len","arguments","length","args","Array","_key","disableMode","lastRef","fn","queryRequest","opts","queryRequest2","out","process","env","NODE_ENV","DEBUG_ZERO_QUERIES","current","DISABLED_SUBSCRIBE","DISABLED_SNAPSHOT","getDisabledSnapshot","createDirectView","zero","ttl","snapshot","listeners","Set","view","materialize","addListener","data","resultType","structuredClone","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","listener","value","err","return","subscribe","notify","add","delete","getSnapshot","destroy","e","createUseQueryDirect"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,8 @@ import { useConnectionState, useZero, ZeroProvider } from "@rocicorp/zero/react"
|
|
|
3
3
|
import { createEmitter, useEmitterValue } from "@take-out/helpers";
|
|
4
4
|
import { createContext, memo, useContext, useEffect, useMemo, useRef, useState } from "react";
|
|
5
5
|
import { createPermissions } from "./createPermissions.mjs";
|
|
6
|
-
import { createUseQuery } from "./createUseQuery.mjs";
|
|
6
|
+
import { createUseQuery, createUseQueryDirect } from "./createUseQuery.mjs";
|
|
7
|
+
import { registerClientInstance } from "./instanceRegistry.mjs";
|
|
7
8
|
import { createMutators } from "./helpers/createMutators.mjs";
|
|
8
9
|
import { getAuth } from "./helpers/getAuth.mjs";
|
|
9
10
|
import { getAllMutationsPermissions, getMutationsPermissions } from "./modelRegistry.mjs";
|
|
@@ -34,7 +35,8 @@ function createZeroClient({
|
|
|
34
35
|
schema,
|
|
35
36
|
models,
|
|
36
37
|
groupedQueries,
|
|
37
|
-
permissionStrategy = "optimistic"
|
|
38
|
+
permissionStrategy = "optimistic",
|
|
39
|
+
instanceName = "default"
|
|
38
40
|
}) {
|
|
39
41
|
setSchema(schema);
|
|
40
42
|
if (getEnvironment() === null) {
|
|
@@ -92,6 +94,14 @@ function createZeroClient({
|
|
|
92
94
|
}) => fn(args));
|
|
93
95
|
}
|
|
94
96
|
const customQueries = defineQueries(wrappedNamespaces);
|
|
97
|
+
const instance = registerClientInstance({
|
|
98
|
+
name: instanceName,
|
|
99
|
+
namespaces: Object.keys({
|
|
100
|
+
...groupedQueries,
|
|
101
|
+
...models
|
|
102
|
+
}),
|
|
103
|
+
customQueries
|
|
104
|
+
});
|
|
95
105
|
setCustomQueries(customQueries);
|
|
96
106
|
const DisabledContext = createContext(false);
|
|
97
107
|
let latestZeroInstance = null;
|
|
@@ -103,20 +113,28 @@ function createZeroClient({
|
|
|
103
113
|
return getZeroProxyValue(latestZeroInstance, key);
|
|
104
114
|
}
|
|
105
115
|
});
|
|
106
|
-
const
|
|
116
|
+
const emitterScope = instanceName === "default" ? "" : `:${instanceName}`;
|
|
117
|
+
const zeroEvents = createEmitter(`zero${emitterScope}`, null);
|
|
118
|
+
const zeroInstanceVersion = createEmitter(`zero-instance-version${emitterScope}`, 0);
|
|
107
119
|
const AuthDataContext = createContext({});
|
|
108
120
|
const useQuery = createUseQuery({
|
|
109
121
|
DisabledContext,
|
|
110
122
|
customQueries
|
|
111
123
|
});
|
|
112
|
-
|
|
124
|
+
const useQueryDirect = createUseQueryDirect({
|
|
125
|
+
DisabledContext,
|
|
126
|
+
customQueries,
|
|
127
|
+
getZero: () => latestZeroInstance,
|
|
128
|
+
zeroVersion: zeroInstanceVersion
|
|
129
|
+
});
|
|
130
|
+
const createUsePermission = useQueryImpl => function usePermission2(table, objOrId, enabled = typeof objOrId !== "undefined", debug = false) {
|
|
113
131
|
const disableMode = useContext(DisabledContext);
|
|
114
132
|
const lastRef = useRef(null);
|
|
115
133
|
const tableStr = table;
|
|
116
134
|
const checkFn = permissionCheckFns[tableStr];
|
|
117
135
|
const auth = getAuth();
|
|
118
136
|
const _uid = auth?.id || "anon";
|
|
119
|
-
const [data, status] =
|
|
137
|
+
const [data, status] = useQueryImpl(checkFn, {
|
|
120
138
|
objOrId,
|
|
121
139
|
_uid
|
|
122
140
|
}, {
|
|
@@ -140,9 +158,11 @@ function createZeroClient({
|
|
|
140
158
|
return lastRef.current;
|
|
141
159
|
}
|
|
142
160
|
return null;
|
|
143
|
-
}
|
|
161
|
+
};
|
|
162
|
+
const usePermission = createUsePermission(useQuery);
|
|
163
|
+
const usePermissionDirect = createUsePermission(useQueryDirect);
|
|
144
164
|
let cachedZero = null;
|
|
145
|
-
const zeroInstanceGeneration = createEmitter(
|
|
165
|
+
const zeroInstanceGeneration = createEmitter(`zero-instance-generation${emitterScope}`, 0);
|
|
146
166
|
let zeroRotationPending = false;
|
|
147
167
|
const ProvideZero = ({
|
|
148
168
|
children,
|
|
@@ -167,7 +187,7 @@ function createZeroClient({
|
|
|
167
187
|
kvStore: "mem",
|
|
168
188
|
...props
|
|
169
189
|
}).filter(([key, value]) => key !== "auth" && typeof value !== "function" && value !== void 0).sort(([a], [b]) => a < b ? -1 : 1), hasAuth, generation]);
|
|
170
|
-
const [
|
|
190
|
+
const [instance2, setInstance] = useState();
|
|
171
191
|
useEffect(() => {
|
|
172
192
|
let cached = cachedZero;
|
|
173
193
|
if (cached?.key !== instanceKey) {
|
|
@@ -203,19 +223,19 @@ function createZeroClient({
|
|
|
203
223
|
useEffect(() => {
|
|
204
224
|
const prevAuth = prevAuthRef.current;
|
|
205
225
|
prevAuthRef.current = auth;
|
|
206
|
-
if (
|
|
207
|
-
|
|
226
|
+
if (instance2 && typeof prevAuth === "string" && typeof auth === "string" && prevAuth !== auth) {
|
|
227
|
+
instance2.connection.connect({
|
|
208
228
|
auth
|
|
209
229
|
});
|
|
210
230
|
}
|
|
211
|
-
}, [
|
|
231
|
+
}, [instance2, auth]);
|
|
212
232
|
if (disable) {
|
|
213
233
|
return children;
|
|
214
234
|
}
|
|
215
235
|
return /* @__PURE__ */jsx(AuthDataContext.Provider, {
|
|
216
236
|
value: authData,
|
|
217
|
-
children:
|
|
218
|
-
zero:
|
|
237
|
+
children: instance2 ? /* @__PURE__ */jsxs(ZeroProvider, {
|
|
238
|
+
zero: instance2,
|
|
219
239
|
children: [/* @__PURE__ */jsx(SetZeroInstance, {}), /* @__PURE__ */jsx(ConnectionMonitor, {
|
|
220
240
|
zeroEvents
|
|
221
241
|
}), children]
|
|
@@ -226,8 +246,13 @@ function createZeroClient({
|
|
|
226
246
|
const zeroInstance = useZero();
|
|
227
247
|
if (zeroInstance !== latestZeroInstance) {
|
|
228
248
|
latestZeroInstance = zeroInstance;
|
|
229
|
-
|
|
249
|
+
const runner = (query, options) => zeroInstance.run(query, options);
|
|
250
|
+
instance.runner = runner;
|
|
251
|
+
setRunner(runner);
|
|
230
252
|
}
|
|
253
|
+
useEffect(() => {
|
|
254
|
+
zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
|
|
255
|
+
}, [zeroInstance]);
|
|
231
256
|
return null;
|
|
232
257
|
};
|
|
233
258
|
const ConnectionMonitor = memo(({
|
|
@@ -280,11 +305,14 @@ function createZeroClient({
|
|
|
280
305
|
});
|
|
281
306
|
}
|
|
282
307
|
return {
|
|
308
|
+
instanceName,
|
|
283
309
|
zeroEvents,
|
|
284
310
|
ProvideZero,
|
|
285
311
|
ControlQueries,
|
|
286
312
|
useQuery,
|
|
313
|
+
useQueryDirect,
|
|
287
314
|
usePermission,
|
|
315
|
+
usePermissionDirect,
|
|
288
316
|
zero,
|
|
289
317
|
preload,
|
|
290
318
|
getQuery
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defineQueries","defineQuery","Zero","ZeroClient","useConnectionState","useZero","ZeroProvider","createEmitter","useEmitterValue","createContext","memo","useContext","useEffect","useMemo","useRef","useState","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","getZeroProxyValue","instance","key","value","Reflect","get","bound","bind","property","ownKeys","descriptor","Object","getOwnPropertyDescriptor","defineProperty","createZeroClient","schema","models","groupedQueries","permissionStrategy","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","_","Error","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","debug","disableMode","lastRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","current","cachedZero","zeroInstanceGeneration","zeroRotationPending","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","generation","hasAuth","instanceKey","JSON","stringify","kvStore","filter","sort","a","b","setInstance","cached","close","options","onClientStateNotFound","emit","prevAuthRef","prevAuth","connection","connect","Provider","SetZeroInstance","ConnectionMonitor","zeroInstance","query","run","zeroEvents2","state","prevState","reason","message","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest","getQuery","ControlQueries","action","whenDisabled","mode"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["defineQueries","defineQuery","Zero","ZeroClient","useConnectionState","useZero","ZeroProvider","createEmitter","useEmitterValue","createContext","memo","useContext","useEffect","useMemo","useRef","useState","createPermissions","createUseQuery","createUseQueryDirect","registerClientInstance","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","getZeroProxyValue","instance","key","value","Reflect","get","bound","bind","property","ownKeys","descriptor","Object","getOwnPropertyDescriptor","defineProperty","createZeroClient","schema","models","groupedQueries","permissionStrategy","instanceName","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","customQueries","namespaces","keys","DisabledContext","latestZeroInstance","zero","Proxy","_","Error","emitterScope","zeroEvents","zeroInstanceVersion","AuthDataContext","useQuery","useQueryDirect","getZero","zeroVersion","createUsePermission","useQueryImpl","usePermission2","enabled","debug","disableMode","lastRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","current","usePermission","usePermissionDirect","cachedZero","zeroInstanceGeneration","zeroRotationPending","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","generation","hasAuth","instanceKey","JSON","stringify","kvStore","filter","sort","a","b","instance2","setInstance","cached","close","options","onClientStateNotFound","emit","prevAuthRef","prevAuth","connection","connect","Provider","SetZeroInstance","ConnectionMonitor","zeroInstance","runner","query","run","zeroEvents2","state","prevState","reason","message","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest","getQuery","ControlQueries","action","whenDisabled","mode"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,EAAeC,WAAA,EAAaC,IAAA,IAAQC,UAAA,QAAkB;AAC/D,SAASC,kBAAA,EAAoBC,OAAA,EAASC,YAAA,QAAoB;AAC1D,SAASC,aAAA,EAAeC,eAAA,QAAuB;AAC/C,SACEC,aAAA,EACAC,IAAA,EACAC,UAAA,EACAC,SAAA,EACAC,OAAA,EACAC,MAAA,EACAC,QAAA,QAEK;AAEP,SAASC,iBAAA,QAAyB;AAClC,SACEC,cAAA,EACAC,oBAAA,QAGK;AACP,SAASC,sBAAA,QAA8B;AACvC,SAASC,cAAA,QAAsB;AAC/B,SAASC,OAAA,QAAe;AACxB,SAASC,0BAAA,EAA4BC,uBAAA,QAA+B;AACpE,SAASC,aAAA,QAAqB;AAC9B,SAASC,YAAA,QAAuC;AAChD,SAASC,gBAAA,QAAwB;AACjC,SAASC,cAAA,EAAgBC,WAAA,EAAaC,cAAA,EAAgBC,SAAA,QAAiB;AACvE,SAASC,WAAA,EAAaC,uBAAA,QAA+B;AACrD,SAASC,SAAA,QAAkC;AAC3C,SAASC,GAAA,QAAW;AAsaV,SACEC,GAAA,EADFC,IAAA;AAvZV,SAASC,kBAAkBC,QAAA,EAAkBC,GAAA,EAAkB;EAC7D,MAAMC,KAAA,GAAQC,OAAA,CAAQC,GAAA,CAAIJ,QAAA,EAAUC,GAAA,EAAKD,QAAQ;EACjD,IAAI,OAAOE,KAAA,KAAU,YAAY,OAAOA,KAAA;EAExC,MAAMG,KAAA,GAAQH,KAAA,CAAMI,IAAA,CAAKN,QAAQ;EACjC,WAAWO,QAAA,IAAYJ,OAAA,CAAQK,OAAA,CAAQN,KAAK,GAAG;IAC7C,IAAIK,QAAA,KAAa,YAAYA,QAAA,KAAa,UAAUA,QAAA,KAAa,aAAa;MAC5E;IACF;IACA,MAAME,UAAA,GAAaC,MAAA,CAAOC,wBAAA,CAAyBT,KAAA,EAAOK,QAAQ;IAClE,IAAIE,UAAA,EAAY;MACdC,MAAA,CAAOE,cAAA,CAAeP,KAAA,EAAOE,QAAA,EAAUE,UAAU;IACnD;EACF;EACA,OAAOJ,KAAA;AACT;AAEO,SAASQ,iBAGd;EACAC,MAAA;EACAC,MAAA;EACAC,cAAA;EACAC,kBAAA,GAAqB;EACrBC,YAAA,GAAe;AACjB,GASG;EAKD1B,SAAA,CAAUsB,MAAM;EAIhB,IAAIzB,cAAA,CAAe,MAAM,MAAM;IAC7BE,cAAA,CAAe,QAAQ;EACzB;EAEA,MAAM4B,kBAAA,GAAqBzC,iBAAA,CAA0B;IACnDoC,MAAA;IACAM,WAAA,EAAa;EACf,CAAC;EAID,MAAMC,iBAAA,GAGF,CAAC;EAEL,WAAW,CAACC,SAAA,EAAWC,OAAO,KAAKb,MAAA,CAAOc,OAAA,CAAQR,cAAc,GAAG;IACjEK,iBAAA,CAAkBC,SAAS,IAAI,CAAC;IAChC,WAAW,CAACG,IAAA,EAAMC,EAAE,KAAKhB,MAAA,CAAOc,OAAA,CAAQD,OAAO,GAAG;MAChDrC,aAAA,CAAcwC,EAAA,EAAI,GAAGJ,SAAS,IAAIG,IAAI,EAAE;MAExCJ,iBAAA,CAAkBC,SAAS,EAAEG,IAAI,IAAI9D,WAAA,CAAY,CAAC;QAAEgE;MAAK,MACvDD,EAAA,CAAGC,IAAI,CACT;IACF;EACF;EAKA,MAAMC,kBAAA,GAGF,CAAC;EAEL,MAAMC,uBAAA,GAA2BC,KAAA,IAAkB;IACjD,MAAMJ,EAAA,GAAMC,IAAA,IAAoD;MAC9D,MAAMI,IAAA,GAAO9C,uBAAA,CAAwB6C,KAAK;MAC1C,MAAME,IAAA,GAAQpC,GAAA,CAAYkC,KAAK;MAE/B,IAAI,CAACH,IAAA,CAAKM,OAAA,EAAS;QACjB,OAAOD,IAAA,CAAKE,KAAA,CAAOC,EAAA,IAAYA,EAAA,CAAGC,MAAA,CAAO,MAAM,KAAK,KAAK,CAAC,EAAEC,GAAA,CAAI;MAClE;MAEA,IAAIpB,kBAAA,KAAuB,cAAc;QAGvC,MAAMqB,OAAA,GAAUP,IAAA,GAAOtC,WAAA,CAAYsC,IAAI,KAAKA,IAAA,GAAOA,IAAA;QACnD,OAAOC,IAAA,CACJE,KAAA,CAAOC,EAAA,IAAY;UAClBzC,uBAAA,CAAwB,IAAI;UAC5B,IAAI;YACF,OAAOyB,kBAAA,CAAmBoB,oBAAA,CACxBxD,OAAA,CAAQ,GACRoD,EAAA,EACAG,OAAA,KAAaE,CAAA,IAAWA,CAAA,CAAEC,GAAA,CAAI,IAC9Bd,IAAA,CAAKM,OAAA,EACLH,KACF;UACF,UAAE;YACApC,uBAAA,CAAwB,KAAK;UAC/B;QACF,CAAC,EACA2C,GAAA,CAAI;MACT;MAEA,IAAIpB,kBAAA,KAAuB,mBAAmB;QAE5C,OAAOe,IAAA,CAAKE,KAAA,CAAOC,EAAA,IAAYA,EAAA,CAAGC,MAAA,CAAO,MAAM,KAAK,KAAK,CAAC,EAAEC,GAAA,CAAI;MAClE;MAKA,OAAOL,IAAA,CACJE,KAAA,CAAOC,EAAA,IAAY;QAClB,OAAOhB,kBAAA,CAAmBoB,oBAAA,CACxBxD,OAAA,CAAQ,GACRoD,EAAA,EACAJ,IAAA,KAAUS,CAAA,IAAWA,CAAA,CAAEC,GAAA,CAAI,IAC3Bd,IAAA,CAAKM,OAAA,EACLH,KACF;MACF,CAAC,EACAO,GAAA,CAAI;IACT;IACAT,kBAAA,CAAmBE,KAAK,IAAIJ,EAAA;IAC5BxC,aAAA,CAAcwC,EAAA,EAAI,cAAcI,KAAK,EAAE;IACvC,OAAOJ,EAAA;EACT;EAEAL,iBAAA,CAAkB,YAAY,IAAI,CAAC;EACnC,WAAW,CAACS,KAAK,KAAK9C,0BAAA,CAA2B,GAAG;IAClD,MAAM0C,EAAA,GAAKG,uBAAA,CAAwBC,KAAK;IACxCT,iBAAA,CAAkB,YAAY,EAAES,KAAK,IAAInE,WAAA,CAAY,CAAC;MAAEgE;IAAK,MAAWD,EAAA,CAAGC,IAAI,CAAC;EAClF;EAGA,MAAMe,aAAA,GAAgBhF,aAAA,CAAc2D,iBAAiB;EAKrD,MAAMrB,QAAA,GAAWnB,sBAAA,CAAuB;IACtC4C,IAAA,EAAMP,YAAA;IACNyB,UAAA,EAAYjC,MAAA,CAAOkC,IAAA,CAAK;MAAE,GAAG5B,cAAA;MAAgB,GAAGD;IAAO,CAAC;IACxD2B;EACF,CAAC;EAGDtD,gBAAA,CAAiBsD,aAAa;EAE9B,MAAMG,eAAA,GAAkB1E,aAAA,CAAgC,KAAK;EAE7D,IAAI2E,kBAAA,GAA0C;EAI9C,MAAMC,IAAA,GAAqB,IAAIC,KAAA,CAAM,CAAC,GAAY;IAChD5C,IAAI6C,CAAA,EAAGhD,GAAA,EAAK;MACV,IAAI6C,kBAAA,KAAuB,MAAM;QAC/B,MAAM,IAAII,KAAA,CACR,wFACF;MACF;MACA,OAAOnD,iBAAA,CAAkB+C,kBAAA,EAAoB7C,GAAG;IAClD;EACF,CAAC;EAKD,MAAMkD,YAAA,GAAejC,YAAA,KAAiB,YAAY,KAAK,IAAIA,YAAY;EAEvE,MAAMkC,UAAA,GAAanF,aAAA,CAAgC,OAAOkF,YAAY,IAAI,IAAI;EAK9E,MAAME,mBAAA,GAAsBpF,aAAA,CAC1B,wBAAwBkF,YAAY,IACpC,CACF;EAEA,MAAMG,eAAA,GAAkBnF,aAAA,CAAwB,CAAC,CAAa;EAE9D,MAAMoF,QAAA,GAAW5E,cAAA,CAAuB;IACtCkE,eAAA;IACAH;EACF,CAAC;EAKD,MAAMc,cAAA,GAAiB5E,oBAAA,CAA6B;IAClDiE,eAAA;IACAH,aAAA;IACAe,OAAA,EAASA,CAAA,KAAMX,kBAAA;IACfY,WAAA,EAAaL;EACf,CAAC;EAMD,MAAMM,mBAAA,GAAuBC,YAAA,IAC3B,SAASC,eACP/B,KAAA,EACAG,OAAA,EACA6B,OAAA,GAAU,OAAO7B,OAAA,KAAY,aAC7B8B,KAAA,GAAQ,OACQ;IAChB,MAAMC,WAAA,GAAc3F,UAAA,CAAWwE,eAAe;IAC9C,MAAMoB,OAAA,GAAUzF,MAAA,CAAuB,IAAI;IAC3C,MAAM0F,QAAA,GAAWpC,KAAA;IACjB,MAAMqC,OAAA,GAAUvC,kBAAA,CAAmBsC,QAAQ;IAI3C,MAAME,IAAA,GAAOrF,OAAA,CAAQ;IACrB,MAAMsF,IAAA,GAAOD,IAAA,EAAME,EAAA,IAAM;IAEzB,MAAM,CAACC,IAAA,EAAMC,MAAM,IAAIZ,YAAA,CACrBO,OAAA,EACA;MAAElC,OAAA;MAAyBoC;IAAK,GAChC;MAAEP,OAAA,EAASW,OAAA,CAAQ,CAACT,WAAA,IAAeF,OAAA,IAAW7B,OAAA,IAAWkC,OAAO;IAAE,CACpE;IAEA,IAAIJ,KAAA,EAAO;MACTW,OAAA,CAAQC,IAAA,CAAK,mBAAmB;QAAE7C,KAAA;QAAOG,OAAA;QAASsC,IAAA;QAAMC;MAAO,CAAC;IAClE;IAEA,IAAI,CAACvC,OAAA,EAAS,OAAO;IAGrB,MAAM2C,MAAA,GAASJ,MAAA,CAAOK,IAAA,KAAS,YAAY,OAAOJ,OAAA,CAAQF,IAAI;IAE9D,IAAI,CAACP,WAAA,EAAa;MAChBC,OAAA,CAAQa,OAAA,GAAUF,MAAA;MAClB,OAAOA,MAAA;IACT;IAEA,IAAIZ,WAAA,KAAgB,cAAc;MAChC,OAAOC,OAAA,CAAQa,OAAA;IACjB;IAEA,OAAO;EACT;EAEF,MAAMC,aAAA,GAAgBpB,mBAAA,CAAoBJ,QAAQ;EAClD,MAAMyB,mBAAA,GAAsBrB,mBAAA,CAAoBH,cAAc;EAe9D,IAAIyB,UAAA,GAA6D;EAQjE,MAAMC,sBAAA,GAAyBjH,aAAA,CAC7B,2BAA2BkF,YAAY,IACvC,CACF;EACA,IAAIgC,mBAAA,GAAsB;EAE1B,MAAMC,WAAA,GAAcA,CAAC;IACnBC,QAAA;IACAC,QAAA,EAAUC,UAAA;IACVC,OAAA;IACA,GAAGC;EACL,MAIM;IACJ,MAAMH,QAAA,GAAYC,UAAA,IAAc;IAIhCjG,WAAA,CAAYgG,QAAQ;IAKpB,MAAMI,QAAA,GAAWnH,OAAA,CAAQ,MAAM;MAC7B,OAAOO,cAAA,CAAe;QACpBiC,MAAA;QACAK,WAAA,EAAa;QACbkE,QAAA,EAAU;QACVK,GAAA,EAAKxE,kBAAA,CAAmBwE;MAC1B,CAAC;IAEH,GAAG,EAAE;IAEL,MAAMC,UAAA,GAAa1H,eAAA,CAAgBgH,sBAAsB;IAEzD,MAAMd,IAAA,GAAO,UAAUqB,KAAA,GAASA,KAAA,CAAmCrB,IAAA,GAAO;IAC1E,MAAMyB,OAAA,GAAU,OAAOzB,IAAA,KAAS;IAMhC,MAAM0B,WAAA,GAAcC,IAAA,CAAKC,SAAA,CAAU,CACjCtF,MAAA,CAAOc,OAAA,CAAQ;MAAEyE,OAAA,EAAS;MAAO,GAAGR;IAAM,CAAC,EACxCS,MAAA,CACC,CAAC,CAACjG,GAAA,EAAKC,KAAK,MACVD,GAAA,KAAQ,UAAU,OAAOC,KAAA,KAAU,cAAcA,KAAA,KAAU,MAC/D,EACCiG,IAAA,CAAK,CAAC,CAACC,CAAC,GAAG,CAACC,CAAC,MAAOD,CAAA,GAAIC,CAAA,GAAI,KAAK,CAAE,GACtCR,OAAA,EACAD,UAAA,CACD;IAQD,MAAM,CAACU,SAAA,EAAUC,WAAW,IAAI9H,QAAA,CAAmC;IACnEH,SAAA,CAAU,MAAM;MACd,IAAIkI,MAAA,GAASvB,UAAA;MACb,IAAIuB,MAAA,EAAQvG,GAAA,KAAQ6F,WAAA,EAAa;QAC/BU,MAAA,EAAQxG,QAAA,CAASyG,KAAA,CAAM;QACvB,MAAMC,OAAA,GAAUjB,KAAA;QAIhBe,MAAA,GAAS;UACPvG,GAAA,EAAK6F,WAAA;UACL9F,QAAA,EAAU,IAAInC,UAAA,CAAiC;YAC7CoI,OAAA,EAAS;YACT,GAAGS,OAAA;YACH5F,MAAA;YAAA;YAEA4E,QAAA;YACAiB,qBAAA,EAAuBA,CAAA,KAAM;cAG3B,IAAID,OAAA,CAAQC,qBAAA,EAAuB;gBACjC,IAAI;kBACFD,OAAA,CAAQC,qBAAA,CAAsB;kBAC9B;gBACF,QAAQ,CAER;cACF;cACA,IAAIxB,mBAAA,EAAqB;cACzBA,mBAAA,GAAsB;cACtBD,sBAAA,CAAuB0B,IAAA,CAAK1B,sBAAA,CAAuBhF,KAAA,GAAQ,CAAC;YAC9D;UACF,CAAC;QACH;QACA+E,UAAA,GAAauB,MAAA;QACbrB,mBAAA,GAAsB;MACxB;MACAoB,WAAA,CAAYC,MAAA,CAAOxG,QAAQ;IAI7B,GAAG,CAAC8F,WAAW,CAAC;IAMhB,MAAMe,WAAA,GAAcrI,MAAA,CAAO4F,IAAI;IAC/B9F,SAAA,CAAU,MAAM;MACd,MAAMwI,QAAA,GAAWD,WAAA,CAAY/B,OAAA;MAC7B+B,WAAA,CAAY/B,OAAA,GAAUV,IAAA;MACtB,IACEkC,SAAA,IACA,OAAOQ,QAAA,KAAa,YACpB,OAAO1C,IAAA,KAAS,YAChB0C,QAAA,KAAa1C,IAAA,EACb;QACAkC,SAAA,CAASS,UAAA,CAAWC,OAAA,CAAQ;UAAE5C;QAAK,CAAC;MACtC;IACF,GAAG,CAACkC,SAAA,EAAUlC,IAAI,CAAC;IAGnB,IAAIoB,OAAA,EAAS;MACX,OAAOH,QAAA;IACT;IAEA,OACE,eAAAxF,GAAA,CAACyD,eAAA,CAAgB2D,QAAA,EAAhB;MAAyB/G,KAAA,EAAOoF,QAAA;MAC9BD,QAAA,EAAAiB,SAAA,GACC,eAAAxG,IAAA,CAAC9B,YAAA;QAAa+E,IAAA,EAAMuD,SAAA;QAClBjB,QAAA,kBAAAxF,GAAA,CAACqH,eAAA,IAAgB,GACjB,eAAArH,GAAA,CAACsH,iBAAA;UAAkB/D;QAAA,CAAwB,GAC1CiC,QAAA;MAAA,CACH,IACE;IAAA,CACN;EAEJ;EAEA,MAAM6B,eAAA,GAAkBA,CAAA,KAAM;IAC5B,MAAME,YAAA,GAAerJ,OAAA,CAA8B;IAQnD,IAAIqJ,YAAA,KAAiBtE,kBAAA,EAAoB;MACvCA,kBAAA,GAAqBsE,YAAA;MACrB,MAAMC,MAAA,GAAqBA,CAACC,KAAA,EAAOZ,OAAA,KACjCU,YAAA,CAAaG,GAAA,CAAID,KAAA,EAAcZ,OAAO;MAGxC1G,QAAA,CAASqH,MAAA,GAASA,MAAA;MAClB1H,SAAA,CAAU0H,MAAM;IAClB;IAIA/I,SAAA,CAAU,MAAM;MACd+E,mBAAA,CAAoBuD,IAAA,CAAKvD,mBAAA,CAAoBnD,KAAA,GAAQ,CAAC;IACxD,GAAG,CAACkH,YAAY,CAAC;IAEjB,OAAO;EACT;EAGA,MAAMD,iBAAA,GAAoB/I,IAAA,CACxB,CAAC;IACCgF,UAAA,EAAAoE;EACF,MAEM;IACJ,MAAMC,KAAA,GAAQ3J,kBAAA,CAAmB;IACjC,MAAM4J,SAAA,GAAYlJ,MAAA,CAAOiJ,KAAA,CAAMhG,IAAI;IAEnCnD,SAAA,CAAU,MAAM;MACd,IAAImJ,KAAA,CAAMhG,IAAA,KAASiG,SAAA,CAAU5C,OAAA,EAAS;QACpC,MAAM6C,MAAA,GAAS,YAAYF,KAAA,GAAQA,KAAA,CAAME,MAAA,GAAS;QAClDD,SAAA,CAAU5C,OAAA,GAAU2C,KAAA,CAAMhG,IAAA;QAE1B,IAAIgG,KAAA,CAAMhG,IAAA,KAAS,WAAWgG,KAAA,CAAMhG,IAAA,KAAS,cAAc;UACzD,MAAMmG,OAAA,GAAU,OAAOD,MAAA,KAAW,WAAWA,MAAA,GAASF,KAAA,CAAMhG,IAAA;UAC5D+F,WAAA,CAAWZ,IAAA,CAAK;YACd/B,IAAA,EAAM;YACN+C;UACF,CAAC;QACH;MACF;IACF,GAAG,CAACH,KAAA,EAAOD,WAAU,CAAC;IAEtB,OAAO;EACT,CACF;EAaA,SAASK,QACPC,KAAA,EACAC,eAAA,EACAC,UAAA,EACkD;IAClD,MAAMC,SAAA,GACJD,UAAA,KAAe,UAAcD,eAAA,IAAmB,EAAE,SAASA,eAAA;IAC7D,MAAMG,MAAA,GAASD,SAAA,GAAYF,eAAA,GAAkB;IAC7C,MAAMrB,OAAA,GAAUuB,SAAA,GAAYD,UAAA,GAAaD,eAAA;IAEzC,MAAMI,YAAA,GAAehJ,YAAA,CAAa;MAAEuD,aAAA;MAAehB,EAAA,EAAIoG,KAAA;MAAOI;IAAO,CAAC;IACtE,OAAOnF,IAAA,CAAK8E,OAAA,CAAQM,YAAA,EAAqBzB,OAAO;EAClD;EASA,SAAS0B,SAAS1G,EAAA,EAASwG,MAAA,EAAc;IACvC,OAAO/I,YAAA,CAAa;MAAEuD,aAAA;MAAehB,EAAA;MAAIwG;IAAO,CAAC;EACnD;EAEA,SAASG,eAAe;IACtBhD,QAAA;IACAiD,MAAA,GAAS;IACTC,YAAA,GAAe;EACjB,GAIG;IACD,MAAMC,IAAA,GAAyBF,MAAA,KAAW,WAAW,QAAQC,YAAA;IAC7D,OAAO,eAAA1I,GAAA,CAACgD,eAAA,CAAgBoE,QAAA,EAAhB;MAAyB/G,KAAA,EAAOsI,IAAA;MAAOnD;IAAA,CAAS;EAC1D;EAEA,OAAO;IACLnE,YAAA;IACAkC,UAAA;IACAgC,WAAA;IACAiD,cAAA;IACA9E,QAAA;IACAC,cAAA;IACAuB,aAAA;IACAC,mBAAA;IACAjC,IAAA;IACA8E,OAAA;IACAO;EACF;AACF","ignoreList":[]}
|