on-zero 0.16.19 → 0.16.20
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/createUseQuery.cjs +2 -1
- package/dist/cjs/createUseQuery.native.js +2 -1
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createUseQueryDirect.cjs +2 -1
- package/dist/cjs/createUseQueryDirect.native.js +2 -1
- package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
- package/dist/cjs/createZeroClient.cjs +75 -9
- package/dist/cjs/createZeroClient.native.js +151 -81
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroClient.recovery.test.cjs +351 -10
- package/dist/cjs/createZeroClient.recovery.test.native.js +412 -12
- package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/cjs/generate.cjs +16 -11
- package/dist/cjs/generate.native.js +16 -11
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +22 -0
- package/dist/cjs/generate.test.native.js +22 -0
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.cjs +542 -52
- package/dist/cjs/helpers/recoverZeroClient.native.js +721 -59
- package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/cjs/helpers/recoverZeroClient.test.cjs +318 -0
- package/dist/cjs/helpers/recoverZeroClient.test.native.js +361 -0
- package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/cjs/kvStore.cjs +30 -0
- package/dist/cjs/kvStore.native.js +34 -0
- package/dist/cjs/kvStore.native.js.map +1 -0
- package/dist/cjs/queryJson.cjs +58 -0
- package/dist/cjs/queryJson.native.js +86 -0
- package/dist/cjs/queryJson.native.js.map +1 -0
- package/dist/cjs/resolveQuery.cjs +2 -0
- package/dist/cjs/resolveQuery.native.js +2 -0
- package/dist/cjs/resolveQuery.native.js.map +1 -1
- package/dist/cjs/useQuery.empty.test.cjs +11 -1
- package/dist/cjs/useQuery.empty.test.native.js +23 -1
- package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
- package/dist/cjs/useQuery.ssr.test.cjs +22 -1
- package/dist/cjs/useQuery.ssr.test.native.js +30 -1
- package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
- package/dist/esm/createUseQuery.mjs +2 -1
- package/dist/esm/createUseQuery.mjs.map +1 -1
- package/dist/esm/createUseQuery.native.js +2 -1
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createUseQueryDirect.mjs +2 -1
- package/dist/esm/createUseQueryDirect.mjs.map +1 -1
- package/dist/esm/createUseQueryDirect.native.js +2 -1
- package/dist/esm/createUseQueryDirect.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +76 -10
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +152 -82
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.mjs +352 -11
- package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js +413 -13
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/esm/generate.mjs +16 -11
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +16 -11
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +22 -0
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +22 -0
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.mjs +542 -54
- package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.native.js +721 -61
- package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.mjs +319 -1
- package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js +362 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/esm/kvStore.mjs +5 -0
- package/dist/esm/kvStore.mjs.map +1 -0
- package/dist/esm/kvStore.native.js +6 -0
- package/dist/esm/kvStore.native.js.map +1 -0
- package/dist/esm/queryJson.mjs +32 -0
- package/dist/esm/queryJson.mjs.map +1 -0
- package/dist/esm/queryJson.native.js +57 -0
- package/dist/esm/queryJson.native.js.map +1 -0
- package/dist/esm/resolveQuery.mjs +2 -0
- package/dist/esm/resolveQuery.mjs.map +1 -1
- package/dist/esm/resolveQuery.native.js +2 -0
- package/dist/esm/resolveQuery.native.js.map +1 -1
- package/dist/esm/useQuery.empty.test.mjs +12 -2
- package/dist/esm/useQuery.empty.test.mjs.map +1 -1
- package/dist/esm/useQuery.empty.test.native.js +24 -2
- package/dist/esm/useQuery.empty.test.native.js.map +1 -1
- package/dist/esm/useQuery.ssr.test.mjs +23 -2
- package/dist/esm/useQuery.ssr.test.mjs.map +1 -1
- package/dist/esm/useQuery.ssr.test.native.js +31 -2
- package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
- package/package.json +11 -3
- package/src/createUseQuery.tsx +2 -1
- package/src/createUseQueryDirect.tsx +2 -1
- package/src/createZeroClient.recovery.test.tsx +370 -7
- package/src/createZeroClient.tsx +100 -10
- package/src/generate.test.ts +31 -0
- package/src/generate.ts +22 -10
- package/src/helpers/recoverZeroClient.test.ts +323 -0
- package/src/helpers/recoverZeroClient.ts +896 -78
- package/src/kvStore.native.ts +7 -0
- package/src/kvStore.ts +7 -0
- package/src/queryJson.ts +46 -0
- package/src/resolveQuery.ts +2 -0
- package/src/useQuery.empty.test.tsx +16 -2
- package/src/useQuery.ssr.test.ts +23 -2
- package/types/createUseQuery.d.ts.map +1 -1
- package/types/createUseQueryDirect.d.ts.map +1 -1
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/createZeroClient.recovery.test.d.ts.map +1 -1
- package/types/generate.d.ts.map +1 -1
- package/types/helpers/recoverZeroClient.d.ts +6 -0
- package/types/helpers/recoverZeroClient.d.ts.map +1 -1
- package/types/kvStore.d.ts +2 -0
- package/types/kvStore.d.ts.map +1 -0
- package/types/kvStore.native.d.ts +3 -0
- package/types/kvStore.native.d.ts.map +1 -0
- package/types/queryJson.d.ts +3 -0
- package/types/queryJson.d.ts.map +1 -0
- package/types/resolveQuery.d.ts.map +1 -1
|
@@ -32,6 +32,7 @@ var import_react = require("@rocicorp/zero/react");
|
|
|
32
32
|
var import_react2 = require("react");
|
|
33
33
|
var import_platform = require("./helpers/platform.cjs");
|
|
34
34
|
var import_useZeroDebug = require("./helpers/useZeroDebug.cjs");
|
|
35
|
+
var import_queryJson = require("./queryJson.cjs");
|
|
35
36
|
var import_resolveQuery = require("./resolveQuery.cjs");
|
|
36
37
|
const EMPTY_PLURAL = Object.freeze([]);
|
|
37
38
|
const RESULT_UNKNOWN = Object.freeze({
|
|
@@ -80,7 +81,7 @@ function createUseQuery({
|
|
|
80
81
|
params,
|
|
81
82
|
options
|
|
82
83
|
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
83
|
-
const paramsKey =
|
|
84
|
+
const paramsKey = (0, import_queryJson.serializeQueryParams)(fn, params);
|
|
84
85
|
const queryRequest = (0, import_react2.useMemo)(() => (0, import_resolveQuery.resolveQuery)({
|
|
85
86
|
customQueries,
|
|
86
87
|
fn,
|
|
@@ -34,6 +34,7 @@ var import_react = require("@rocicorp/zero/react");
|
|
|
34
34
|
var import_react2 = require("react");
|
|
35
35
|
var import_platform = require("./helpers/platform.native.js");
|
|
36
36
|
var import_useZeroDebug = require("./helpers/useZeroDebug.native.js");
|
|
37
|
+
var import_queryJson = require("./queryJson.native.js");
|
|
37
38
|
var import_resolveQuery = require("./resolveQuery.native.js");
|
|
38
39
|
function _type_of(obj) {
|
|
39
40
|
"@swc/helpers - typeof";
|
|
@@ -91,7 +92,7 @@ function createUseQuery(param) {
|
|
|
91
92
|
params,
|
|
92
93
|
options
|
|
93
94
|
} = parseUseQueryArgs(paramsOrOptions, optionsArg);
|
|
94
|
-
var paramsKey =
|
|
95
|
+
var paramsKey = (0, import_queryJson.serializeQueryParams)(fn, params);
|
|
95
96
|
var queryRequest = (0, import_react2.useMemo)(function () {
|
|
96
97
|
return (0, import_resolveQuery.resolveQuery)({
|
|
97
98
|
customQueries,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQuery_exports","__export","createUseQuery","emptyResponseFor","parseUseQueryArgs","module","exports","import_bindings","require","import_react","import_react2","import_platform","import_useZeroDebug","import_resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_PLURAL","Object","freeze","RESULT_UNKNOWN","type","EMPTY_RESPONSE_PLURAL","EMPTY_RESPONSE_SINGULAR","queryRequest","query","addContextToQuery","internals","asQueryInternals","format","singular","unused","paramsOrOptions","optionsArg","hasParams","params","options","param","DisabledContext","customQueries","IS_SERVER_RUNTIME","fn","resolveQuery","useQuery","_len","arguments","length","args","Array","_key","disableMode","useContext","lastRef","useRef","paramsKey","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQuery_exports","__export","createUseQuery","emptyResponseFor","parseUseQueryArgs","module","exports","import_bindings","require","import_react","import_react2","import_platform","import_useZeroDebug","import_queryJson","import_resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_PLURAL","Object","freeze","RESULT_UNKNOWN","type","EMPTY_RESPONSE_PLURAL","EMPTY_RESPONSE_SINGULAR","queryRequest","query","addContextToQuery","internals","asQueryInternals","format","singular","unused","paramsOrOptions","optionsArg","hasParams","params","options","param","DisabledContext","customQueries","IS_SERVER_RUNTIME","fn","resolveQuery","useQuery","_len","arguments","length","args","Array","_key","disableMode","useContext","lastRef","useRef","paramsKey","serializeQueryParams","useMemo","optionEnabled","optionTTL","enabled","ttl","effectiveEnabled","effectiveOptions"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -30,6 +30,7 @@ var import_react = require("react");
|
|
|
30
30
|
var import_createUseQuery = require("./createUseQuery.cjs");
|
|
31
31
|
var import_emitter = require("./helpers/emitter.cjs");
|
|
32
32
|
var import_platform = require("./helpers/platform.cjs");
|
|
33
|
+
var import_queryJson = require("./queryJson.cjs");
|
|
33
34
|
var import_resolveQuery = require("./resolveQuery.cjs");
|
|
34
35
|
const DISABLED_SUBSCRIBE = () => () => {};
|
|
35
36
|
const emptyArray = [];
|
|
@@ -209,7 +210,7 @@ function createUseQueryDirect({
|
|
|
209
210
|
enabled = options.enabled !== false;
|
|
210
211
|
ttl = options.ttl ?? import_bindings.DEFAULT_TTL_MS;
|
|
211
212
|
}
|
|
212
|
-
const paramsKey =
|
|
213
|
+
const paramsKey = (0, import_queryJson.serializeQueryParams)(fn, params);
|
|
213
214
|
const queryRequest = (0, import_react.useMemo)(() => (0, import_resolveQuery.resolveQuery)({
|
|
214
215
|
customQueries,
|
|
215
216
|
fn,
|
|
@@ -32,6 +32,7 @@ var import_react = require("react");
|
|
|
32
32
|
var import_createUseQuery = require("./createUseQuery.native.js");
|
|
33
33
|
var import_emitter = require("./helpers/emitter.native.js");
|
|
34
34
|
var import_platform = require("./helpers/platform.native.js");
|
|
35
|
+
var import_queryJson = require("./queryJson.native.js");
|
|
35
36
|
var import_resolveQuery = require("./resolveQuery.native.js");
|
|
36
37
|
function _class_call_check(instance, Constructor) {
|
|
37
38
|
if (!(instance instanceof Constructor)) throw new TypeError("Cannot call a class as a function");
|
|
@@ -304,7 +305,7 @@ function createUseQueryDirect(param) {
|
|
|
304
305
|
enabled = options.enabled !== false;
|
|
305
306
|
ttl = (_options_ttl = options.ttl) !== null && _options_ttl !== void 0 ? _options_ttl : import_bindings.DEFAULT_TTL_MS;
|
|
306
307
|
}
|
|
307
|
-
var paramsKey =
|
|
308
|
+
var paramsKey = (0, import_queryJson.serializeQueryParams)(fn, params);
|
|
308
309
|
var queryRequest = (0, import_react.useMemo)(function () {
|
|
309
310
|
return (0, import_resolveQuery.resolveQuery)({
|
|
310
311
|
customQueries,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQueryDirect_exports","__export","createUseQueryDirect","module","exports","import_bindings","require","import_react","import_createUseQuery","import_emitter","import_platform","import_resolveQuery","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","DISABLED_SUBSCRIBE","DISABLED_SUBSCRIBE2","emptyArray","resultTypeUnknown","type","resultTypeComplete","resultTypeError","emptySnapshotSingularUnknown","emptySnapshotSingularComplete","emptySnapshotSingularError","emptySnapshotPluralUnknown","emptySnapshotPluralComplete","emptySnapshotPluralError","getDefaultSnapshot","singular","makeError","retry","error","_ref","_ref1","message","refetch","details","getSnapshot","data","resultType","Array","isArray","DirectViewWrapper","DirectViewWrapper2","query","zero","ttl","onDematerialized","_this","listeners","Set","onData","cloned","deepClone","snapshot","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","listener","err","return","destroyView","materializeIfNeeded","subscribe","notify","add","destroyTimer","clearTimeout","delete","size","setTimeout","view","materialize","addListener"],"sources":["../../src/createUseQueryDirect.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,4BAAA;AAAAC,QAAA,CAAAD,4BAAA;EAAAE,oBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAKO,CAAAK,4BAAA;AACP,IAAAK,eAAgF,GAAAC,OAAA;AAEhF,IAAAC,YAAA,GAAAD,OAAA,QAMO;AACP,IAAAE,qBAA8C,GAAAF,OAAA;AAC9C,IAAAG,cAAA,GAAAH,OAAkC;AAClC,IAAAI,eAAA,GAAAJ,OAA6B;AAe7B,
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQueryDirect_exports","__export","createUseQueryDirect","module","exports","import_bindings","require","import_react","import_createUseQuery","import_emitter","import_platform","import_queryJson","import_resolveQuery","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","DISABLED_SUBSCRIBE","DISABLED_SUBSCRIBE2","emptyArray","resultTypeUnknown","type","resultTypeComplete","resultTypeError","emptySnapshotSingularUnknown","emptySnapshotSingularComplete","emptySnapshotSingularError","emptySnapshotPluralUnknown","emptySnapshotPluralComplete","emptySnapshotPluralError","getDefaultSnapshot","singular","makeError","retry","error","_ref","_ref1","message","refetch","details","getSnapshot","data","resultType","Array","isArray","DirectViewWrapper","DirectViewWrapper2","query","zero","ttl","onDematerialized","_this","listeners","Set","onData","cloned","deepClone","snapshot","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","listener","err","return","destroyView","materializeIfNeeded","subscribe","notify","add","destroyTimer","clearTimeout","delete","size","setTimeout","view","materialize","addListener"],"sources":["../../src/createUseQueryDirect.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -42,6 +42,7 @@ var import_recoverZeroClient = require("./helpers/recoverZeroClient.cjs");
|
|
|
42
42
|
var import_useMutation = require("./helpers/useMutation.cjs");
|
|
43
43
|
var import_instanceRegistry = require("./instanceRegistry.cjs");
|
|
44
44
|
var import_modelRegistry = require("./modelRegistry.cjs");
|
|
45
|
+
var import_queryJson = require("./queryJson.cjs");
|
|
45
46
|
var import_queryRegistry = require("./queryRegistry.cjs");
|
|
46
47
|
var import_resolveQuery = require("./resolveQuery.cjs");
|
|
47
48
|
var import_run = require("./run.cjs");
|
|
@@ -100,7 +101,11 @@ function createZeroClientInternal({
|
|
|
100
101
|
(0, import_queryRegistry.registerQuery)(fn, `${namespace}.${name}`);
|
|
101
102
|
wrappedNamespaces[namespace][name] = (0, import_zero.defineQuery)(({
|
|
102
103
|
args
|
|
103
|
-
}) =>
|
|
104
|
+
}) => {
|
|
105
|
+
const query = fn(args);
|
|
106
|
+
(0, import_queryJson.assertQueryJson)(`${namespace}.${name}`, query.ast, "ast");
|
|
107
|
+
return query;
|
|
108
|
+
});
|
|
104
109
|
}
|
|
105
110
|
}
|
|
106
111
|
const permissionCheckFns = {};
|
|
@@ -184,6 +189,7 @@ function createZeroClientInternal({
|
|
|
184
189
|
guardStorage,
|
|
185
190
|
benignLogPatterns,
|
|
186
191
|
recoverInPlace,
|
|
192
|
+
awaitReconnected,
|
|
187
193
|
reload
|
|
188
194
|
}) {
|
|
189
195
|
let installedTransport;
|
|
@@ -208,7 +214,11 @@ function createZeroClientInternal({
|
|
|
208
214
|
recoverInPlace: recoverInPlace ?? (() => remint({
|
|
209
215
|
dropLocalState: false
|
|
210
216
|
})),
|
|
211
|
-
|
|
217
|
+
awaitReconnected: awaitReconnected ?? awaitReconnectedAfterRemint,
|
|
218
|
+
reload,
|
|
219
|
+
// sibling instances of one user ride one group transition.
|
|
220
|
+
clientIdentity: typeof options.userID === "string" ? options.userID : void 0,
|
|
221
|
+
getGroupID: () => instanceRef.current?.clientGroupID ?? Promise.reject(new Error("[on-zero] no zero instance"))
|
|
212
222
|
};
|
|
213
223
|
const recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
|
|
214
224
|
const createdInstance = new import_zero.Zero({
|
|
@@ -231,6 +241,7 @@ function createZeroClientInternal({
|
|
|
231
241
|
});
|
|
232
242
|
instanceRef.current = createdInstance;
|
|
233
243
|
if (installedTransport) installedTransports.set(createdInstance, installedTransport);
|
|
244
|
+
(0, import_recoverZeroClient.primeGroupCache)(recoveryDeps);
|
|
234
245
|
return createdInstance;
|
|
235
246
|
}
|
|
236
247
|
function publishZeroInstance(zeroInstance) {
|
|
@@ -380,6 +391,52 @@ function createZeroClientInternal({
|
|
|
380
391
|
const usePermissionDirect = createUsePermission(useQueryDirect);
|
|
381
392
|
let cachedZero = null;
|
|
382
393
|
const retiredZero = /* @__PURE__ */new Map();
|
|
394
|
+
function waitForInstanceConnected(instanceToWatch) {
|
|
395
|
+
return new Promise(resolve => {
|
|
396
|
+
let unsubscribe;
|
|
397
|
+
let done = false;
|
|
398
|
+
const check = () => {
|
|
399
|
+
if (done) return;
|
|
400
|
+
let name;
|
|
401
|
+
try {
|
|
402
|
+
name = instanceToWatch.connection?.state?.current?.name;
|
|
403
|
+
} catch {
|
|
404
|
+
name = void 0;
|
|
405
|
+
}
|
|
406
|
+
if (name === "connected") {
|
|
407
|
+
done = true;
|
|
408
|
+
try {
|
|
409
|
+
unsubscribe?.();
|
|
410
|
+
} catch {}
|
|
411
|
+
resolve(true);
|
|
412
|
+
}
|
|
413
|
+
};
|
|
414
|
+
check();
|
|
415
|
+
if (done) return;
|
|
416
|
+
try {
|
|
417
|
+
unsubscribe = instanceToWatch.connection.state.subscribe(check);
|
|
418
|
+
} catch {
|
|
419
|
+
done = true;
|
|
420
|
+
resolve(false);
|
|
421
|
+
}
|
|
422
|
+
});
|
|
423
|
+
}
|
|
424
|
+
async function awaitReconnectedAfterRemint() {
|
|
425
|
+
const previous = remintPreviousInstance;
|
|
426
|
+
let current = zeroRuntime.zero;
|
|
427
|
+
if (current === previous || current === null) {
|
|
428
|
+
current = await new Promise(resolve => {
|
|
429
|
+
const latest = zeroRuntime.zero;
|
|
430
|
+
if (latest !== previous && latest !== null) {
|
|
431
|
+
resolve(latest);
|
|
432
|
+
return;
|
|
433
|
+
}
|
|
434
|
+
zeroRuntime.readyWaiters.add(resolve);
|
|
435
|
+
});
|
|
436
|
+
}
|
|
437
|
+
if (!current) return false;
|
|
438
|
+
return waitForInstanceConnected(current);
|
|
439
|
+
}
|
|
383
440
|
const REMINT_GUARD_MS = 12e3;
|
|
384
441
|
const REMINT_MAX_ATTEMPTS = 5;
|
|
385
442
|
const REMINT_ATTEMPT_RESET_MS = 6e4;
|
|
@@ -388,6 +445,7 @@ function createZeroClientInternal({
|
|
|
388
445
|
};
|
|
389
446
|
let lastRemintAt = 0;
|
|
390
447
|
let remintAttempts = 0;
|
|
448
|
+
let remintPreviousInstance = null;
|
|
391
449
|
function unpublishZeroInstance(instanceToInvalidate) {
|
|
392
450
|
if (zeroRuntime.zero !== instanceToInvalidate) return false;
|
|
393
451
|
zeroRuntime.zero = null;
|
|
@@ -421,13 +479,16 @@ function createZeroClientInternal({
|
|
|
421
479
|
}
|
|
422
480
|
async function remint(opts = {}) {
|
|
423
481
|
if (!remintControl.bump) return false;
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
482
|
+
remintPreviousInstance = zeroRuntime.zero;
|
|
483
|
+
if (!(0, import_recoverZeroClient.isGroupTransitionOpen)()) {
|
|
484
|
+
const now = Date.now();
|
|
485
|
+
const sinceLast = now - lastRemintAt;
|
|
486
|
+
if (lastRemintAt > 0 && sinceLast < REMINT_GUARD_MS) return false;
|
|
487
|
+
if (sinceLast > REMINT_ATTEMPT_RESET_MS) remintAttempts = 0;
|
|
488
|
+
if (remintAttempts >= REMINT_MAX_ATTEMPTS) return false;
|
|
489
|
+
lastRemintAt = now;
|
|
490
|
+
remintAttempts += 1;
|
|
491
|
+
}
|
|
431
492
|
const {
|
|
432
493
|
dropLocalState = true
|
|
433
494
|
} = opts;
|
|
@@ -682,6 +743,11 @@ function createZeroClientInternal({
|
|
|
682
743
|
// a headless host has no provider state to bump and no page it owns to
|
|
683
744
|
// reload. replace the disabled instance directly, then republish the
|
|
684
745
|
// stable module facade and move the connection watcher with it.
|
|
746
|
+
// the transition resolves once the replacement connects.
|
|
747
|
+
awaitReconnected: async () => {
|
|
748
|
+
if (closed) return true;
|
|
749
|
+
return waitForInstanceConnected(activeInstance);
|
|
750
|
+
},
|
|
685
751
|
recoverInPlace: async () => {
|
|
686
752
|
if (closed) return true;
|
|
687
753
|
const outgoing = activeInstance;
|