on-zero 0.6.0 → 0.6.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/dist/cjs/createZeroClient.cjs +27 -1
- package/dist/cjs/createZeroClient.native.js +29 -3
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroClient.recovery.test.cjs +96 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js +130 -0
- package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -0
- package/dist/cjs/httpPull/transport.test.cjs +17 -0
- package/dist/cjs/httpPull/transport.test.native.js +21 -0
- package/dist/cjs/httpPull/transport.test.native.js.map +1 -1
- package/dist/cjs/httpPullTransport.cjs +19 -3
- package/dist/cjs/httpPullTransport.native.js +19 -3
- package/dist/cjs/httpPullTransport.native.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +27 -1
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +29 -3
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.mjs +97 -0
- package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -0
- package/dist/esm/createZeroClient.recovery.test.native.js +128 -0
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -0
- package/dist/esm/httpPull/transport.test.mjs +17 -0
- package/dist/esm/httpPull/transport.test.mjs.map +1 -1
- package/dist/esm/httpPull/transport.test.native.js +21 -0
- package/dist/esm/httpPull/transport.test.native.js.map +1 -1
- package/dist/esm/httpPullTransport.mjs +19 -3
- package/dist/esm/httpPullTransport.mjs.map +1 -1
- package/dist/esm/httpPullTransport.native.js +19 -3
- package/dist/esm/httpPullTransport.native.js.map +1 -1
- package/dist/esm/zeroRunner.mjs.map +1 -1
- package/dist/esm/zeroRunner.native.js.map +1 -1
- package/package.json +2 -2
- package/src/createZeroClient.recovery.test.tsx +104 -0
- package/src/createZeroClient.tsx +34 -1
- package/src/httpPull/transport.test.ts +19 -0
- package/src/httpPullTransport.ts +30 -2
- package/src/zeroRunner.ts +1 -1
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/createZeroClient.recovery.test.d.ts +5 -0
- package/types/createZeroClient.recovery.test.d.ts.map +1 -0
- package/types/httpPullTransport.d.ts.map +1 -1
- package/types/zeroRunner.d.ts +1 -1
- package/types/zeroRunner.d.ts.map +1 -1
|
@@ -150,6 +150,10 @@ function createZeroClientInternal({
|
|
|
150
150
|
if (latestZeroInstance === null) {
|
|
151
151
|
throw new Error(`Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.`);
|
|
152
152
|
}
|
|
153
|
+
if (key === "delete") {
|
|
154
|
+
const instanceToDelete = latestZeroInstance;
|
|
155
|
+
return () => deleteZeroInstance(instanceToDelete);
|
|
156
|
+
}
|
|
153
157
|
return getZeroProxyValue(latestZeroInstance, key);
|
|
154
158
|
}
|
|
155
159
|
});
|
|
@@ -207,6 +211,28 @@ function createZeroClientInternal({
|
|
|
207
211
|
const usePermission = createUsePermission(useQuery);
|
|
208
212
|
const usePermissionDirect = createUsePermission(useQueryDirect);
|
|
209
213
|
let cachedZero = null;
|
|
214
|
+
function invalidateZeroInstance(instanceToInvalidate) {
|
|
215
|
+
if (!instanceToInvalidate) return;
|
|
216
|
+
if (cachedZero?.instance === instanceToInvalidate) {
|
|
217
|
+
cachedZero = null;
|
|
218
|
+
}
|
|
219
|
+
if (latestZeroInstance === instanceToInvalidate) {
|
|
220
|
+
latestZeroInstance = null;
|
|
221
|
+
instance.runner = null;
|
|
222
|
+
(0, import_zeroRunner.setRunner)(null);
|
|
223
|
+
zeroInstanceVersion?.emit(zeroInstanceVersion.value + 1);
|
|
224
|
+
}
|
|
225
|
+
try {
|
|
226
|
+
instanceToInvalidate.close();
|
|
227
|
+
} catch {}
|
|
228
|
+
}
|
|
229
|
+
async function deleteZeroInstance(instanceToDelete) {
|
|
230
|
+
try {
|
|
231
|
+
return await instanceToDelete?.delete();
|
|
232
|
+
} finally {
|
|
233
|
+
invalidateZeroInstance(instanceToDelete);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
210
236
|
const DISABLED_ZERO_STUB_CONNECTION_STATE = {
|
|
211
237
|
current: {
|
|
212
238
|
name: "closed"
|
|
@@ -289,7 +315,7 @@ function createZeroClientInternal({
|
|
|
289
315
|
current: null
|
|
290
316
|
};
|
|
291
317
|
const recoveryDeps = {
|
|
292
|
-
deleteLocalState: () => instanceRef.current
|
|
318
|
+
deleteLocalState: () => deleteZeroInstance(instanceRef.current),
|
|
293
319
|
zeroEvents,
|
|
294
320
|
beforeReload
|
|
295
321
|
};
|
|
@@ -245,6 +245,12 @@ function createZeroClientInternal(param) {
|
|
|
245
245
|
if (latestZeroInstance === null) {
|
|
246
246
|
throw new Error(`Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.`);
|
|
247
247
|
}
|
|
248
|
+
if (key === "delete") {
|
|
249
|
+
var instanceToDelete = latestZeroInstance;
|
|
250
|
+
return function () {
|
|
251
|
+
return deleteZeroInstance(instanceToDelete);
|
|
252
|
+
};
|
|
253
|
+
}
|
|
248
254
|
return getZeroProxyValue(latestZeroInstance, key);
|
|
249
255
|
}
|
|
250
256
|
});
|
|
@@ -308,6 +314,28 @@ function createZeroClientInternal(param) {
|
|
|
308
314
|
var usePermission = createUsePermission(useQuery);
|
|
309
315
|
var usePermissionDirect = createUsePermission(useQueryDirect);
|
|
310
316
|
var cachedZero = null;
|
|
317
|
+
function invalidateZeroInstance(instanceToInvalidate) {
|
|
318
|
+
if (!instanceToInvalidate) return;
|
|
319
|
+
if ((cachedZero === null || cachedZero === void 0 ? void 0 : cachedZero.instance) === instanceToInvalidate) {
|
|
320
|
+
cachedZero = null;
|
|
321
|
+
}
|
|
322
|
+
if (latestZeroInstance === instanceToInvalidate) {
|
|
323
|
+
latestZeroInstance = null;
|
|
324
|
+
instance.runner = null;
|
|
325
|
+
(0, import_zeroRunner.setRunner)(null);
|
|
326
|
+
zeroInstanceVersion === null || zeroInstanceVersion === void 0 ? void 0 : zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
|
|
327
|
+
}
|
|
328
|
+
try {
|
|
329
|
+
instanceToInvalidate.close();
|
|
330
|
+
} catch (e) {}
|
|
331
|
+
}
|
|
332
|
+
async function deleteZeroInstance(instanceToDelete) {
|
|
333
|
+
try {
|
|
334
|
+
return await (instanceToDelete === null || instanceToDelete === void 0 ? void 0 : instanceToDelete.delete());
|
|
335
|
+
} finally {
|
|
336
|
+
invalidateZeroInstance(instanceToDelete);
|
|
337
|
+
}
|
|
338
|
+
}
|
|
311
339
|
var DISABLED_ZERO_STUB_CONNECTION_STATE = {
|
|
312
340
|
current: {
|
|
313
341
|
name: "closed"
|
|
@@ -414,9 +442,7 @@ function createZeroClientInternal(param) {
|
|
|
414
442
|
};
|
|
415
443
|
var recoveryDeps = {
|
|
416
444
|
deleteLocalState: function () {
|
|
417
|
-
|
|
418
|
-
var _instanceRef_current_delete;
|
|
419
|
-
return (_instanceRef_current_delete = (_instanceRef_current = instanceRef.current) === null || _instanceRef_current === void 0 ? void 0 : _instanceRef_current.delete()) !== null && _instanceRef_current_delete !== void 0 ? _instanceRef_current_delete : Promise.resolve();
|
|
445
|
+
return deleteZeroInstance(instanceRef.current);
|
|
420
446
|
},
|
|
421
447
|
zeroEvents,
|
|
422
448
|
beforeReload
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","createZeroClientInternal","module","exports","import_jsx_runtime","require","import_zero","import_react","import_helpers","import_react2","import_createPermissions","import_httpPullTransport","import_createUseQuery","import_instanceRegistry","import_createMutators","import_recoverZeroClient","import_getAuth","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","Symbol","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","createDirectUseQuery","setSchema","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","table","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","registerClientInstance","namespaces","keys","setCustomQueries","DisabledContext","createContext","latestZeroInstance","zero","Proxy","_","emitterScope","zeroEvents","createEmitter","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","arguments","length","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","current","usePermission","usePermissionDirect","cachedZero","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","context","connection","state","ProvideZeroServer","children","authData","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","transport","pullIntervalMs","beforeReload","disable","props","hasAuth","stableAuthDataRef","_ref","setAuthData","mutators","useMemo","createMutators","can","instanceKey","JSON","stringify","kvStore","filter","param3","sort","param1","a","b","instance2","setInstance","useState","useEffect","cached","close","_options_cacheURL","serverURL","cacheURL","server","ensureHttpPullTransport","origin","instanceRef","recoveryDeps","deleteLocalState","_instanceRef_current"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","createZeroClientInternal","module","exports","import_jsx_runtime","require","import_zero","import_react","import_helpers","import_react2","import_createPermissions","import_httpPullTransport","import_createUseQuery","import_instanceRegistry","import_createMutators","import_recoverZeroClient","import_getAuth","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","Symbol","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","createDirectUseQuery","setSchema","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","table","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","registerClientInstance","namespaces","keys","setCustomQueries","DisabledContext","createContext","latestZeroInstance","zero","Proxy","_","instanceToDelete","deleteZeroInstance","emitterScope","zeroEvents","createEmitter","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","arguments","length","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","current","usePermission","usePermissionDirect","cachedZero","invalidateZeroInstance","instanceToInvalidate","runner","setRunner","emit","close","delete","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","context","connection","state","ProvideZeroServer","children","authData","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","transport","pullIntervalMs","beforeReload","disable","props","hasAuth","stableAuthDataRef","_ref","setAuthData","mutators","useMemo","createMutators","can","instanceKey","JSON","stringify","kvStore","filter","param3","sort","param1","a","b","instance2","setInstance","useState","useEffect","cached","_options_cacheURL","serverURL","cacheURL","server","ensureHttpPullTransport","origin","instanceRef","recoveryDeps"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
var import_zero = require("@rocicorp/zero");
|
|
2
|
+
var import_react = require("react");
|
|
3
|
+
var import_client = require("react-dom/client");
|
|
4
|
+
var import_vitest = require("vitest");
|
|
5
|
+
var import_createZeroClient = require("./createZeroClient.cjs");
|
|
6
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
7
|
+
const fakeZero = import_vitest.vi.hoisted(() => {
|
|
8
|
+
class FakeZero {
|
|
9
|
+
context = {};
|
|
10
|
+
connection = {
|
|
11
|
+
state: {
|
|
12
|
+
current: {
|
|
13
|
+
name: "closed"
|
|
14
|
+
},
|
|
15
|
+
subscribe: () => () => {}
|
|
16
|
+
},
|
|
17
|
+
connect: import_vitest.vi.fn()
|
|
18
|
+
};
|
|
19
|
+
delete = import_vitest.vi.fn(async () => ({
|
|
20
|
+
errors: []
|
|
21
|
+
}));
|
|
22
|
+
close = import_vitest.vi.fn();
|
|
23
|
+
run = import_vitest.vi.fn(async () => []);
|
|
24
|
+
preload = import_vitest.vi.fn(() => ({
|
|
25
|
+
cleanup: () => {},
|
|
26
|
+
complete: Promise.resolve()
|
|
27
|
+
}));
|
|
28
|
+
constructor() {
|
|
29
|
+
instances.push(this);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const instances = [];
|
|
33
|
+
return {
|
|
34
|
+
FakeZero,
|
|
35
|
+
instances
|
|
36
|
+
};
|
|
37
|
+
});
|
|
38
|
+
import_vitest.vi.mock("@rocicorp/zero", async importOriginal => {
|
|
39
|
+
const actual = await importOriginal();
|
|
40
|
+
return {
|
|
41
|
+
...actual,
|
|
42
|
+
Zero: fakeZero.FakeZero
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
globalThis.IS_REACT_ACT_ENVIRONMENT = true;
|
|
46
|
+
const noteTable = (0, import_zero.table)("note").columns({
|
|
47
|
+
id: (0, import_zero.string)(),
|
|
48
|
+
body: (0, import_zero.string)()
|
|
49
|
+
}).primaryKey("id");
|
|
50
|
+
const schema = (0, import_zero.createSchema)({
|
|
51
|
+
tables: [noteTable]
|
|
52
|
+
});
|
|
53
|
+
const client = (0, import_createZeroClient.createZeroClient)({
|
|
54
|
+
schema,
|
|
55
|
+
models: {},
|
|
56
|
+
groupedQueries: {},
|
|
57
|
+
instanceName: "recovery-cache-test"
|
|
58
|
+
});
|
|
59
|
+
let container;
|
|
60
|
+
let root;
|
|
61
|
+
(0, import_vitest.beforeEach)(() => {
|
|
62
|
+
fakeZero.instances.length = 0;
|
|
63
|
+
container = document.createElement("div");
|
|
64
|
+
root = null;
|
|
65
|
+
});
|
|
66
|
+
(0, import_vitest.afterEach)(() => {
|
|
67
|
+
if (root) (0, import_react.act)(() => root?.unmount());
|
|
68
|
+
});
|
|
69
|
+
async function mount() {
|
|
70
|
+
root = (0, import_client.createRoot)(container);
|
|
71
|
+
await (0, import_react.act)(async () => {
|
|
72
|
+
root?.render(/* @__PURE__ */(0, import_jsx_runtime.jsx)(client.ProvideZero, {
|
|
73
|
+
cacheURL: "http://127.0.0.1:7777/zero",
|
|
74
|
+
userID: "agentbus",
|
|
75
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
|
|
76
|
+
children: "ok"
|
|
77
|
+
})
|
|
78
|
+
}));
|
|
79
|
+
await Promise.resolve();
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
(0, import_vitest.test)("zero.delete invalidates cached instance before a remount recovery", async () => {
|
|
83
|
+
await mount();
|
|
84
|
+
const first = fakeZero.instances[0];
|
|
85
|
+
(0, import_vitest.expect)(first).toBeDefined();
|
|
86
|
+
const deleteZero = client.zero.delete;
|
|
87
|
+
await (0, import_react.act)(async () => {
|
|
88
|
+
await deleteZero();
|
|
89
|
+
});
|
|
90
|
+
(0, import_vitest.expect)(first?.delete).toHaveBeenCalledTimes(1);
|
|
91
|
+
(0, import_vitest.expect)(first?.close).toHaveBeenCalledTimes(1);
|
|
92
|
+
(0, import_react.act)(() => root?.unmount());
|
|
93
|
+
await mount();
|
|
94
|
+
(0, import_vitest.expect)(fakeZero.instances).toHaveLength(2);
|
|
95
|
+
(0, import_vitest.expect)(fakeZero.instances[1]).not.toBe(first);
|
|
96
|
+
});
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
4
|
+
var import_zero = require("@rocicorp/zero");
|
|
5
|
+
var import_react = require("react");
|
|
6
|
+
var import_client = require("react-dom/client");
|
|
7
|
+
var import_vitest = require("vitest");
|
|
8
|
+
var import_createZeroClient = require("./createZeroClient.native.js");
|
|
9
|
+
function _class_call_check(instance, Constructor) {
|
|
10
|
+
if (!(instance instanceof Constructor)) {
|
|
11
|
+
throw new TypeError("Cannot call a class as a function");
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function _define_property(obj, key, value) {
|
|
15
|
+
if (key in obj) {
|
|
16
|
+
Object.defineProperty(obj, key, {
|
|
17
|
+
value,
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true,
|
|
20
|
+
writable: true
|
|
21
|
+
});
|
|
22
|
+
} else {
|
|
23
|
+
obj[key] = value;
|
|
24
|
+
}
|
|
25
|
+
return obj;
|
|
26
|
+
}
|
|
27
|
+
var fakeZero = import_vitest.vi.hoisted(function () {
|
|
28
|
+
var FakeZero = function FakeZero2() {
|
|
29
|
+
"use strict";
|
|
30
|
+
|
|
31
|
+
_class_call_check(this, FakeZero2);
|
|
32
|
+
_define_property(this, "context", {});
|
|
33
|
+
_define_property(this, "connection", {
|
|
34
|
+
state: {
|
|
35
|
+
current: {
|
|
36
|
+
name: "closed"
|
|
37
|
+
},
|
|
38
|
+
subscribe: function () {
|
|
39
|
+
return function () {};
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
connect: import_vitest.vi.fn()
|
|
43
|
+
});
|
|
44
|
+
_define_property(this, "delete", import_vitest.vi.fn(async function () {
|
|
45
|
+
return {
|
|
46
|
+
errors: []
|
|
47
|
+
};
|
|
48
|
+
}));
|
|
49
|
+
_define_property(this, "close", import_vitest.vi.fn());
|
|
50
|
+
_define_property(this, "run", import_vitest.vi.fn(async function () {
|
|
51
|
+
return [];
|
|
52
|
+
}));
|
|
53
|
+
_define_property(this, "preload", import_vitest.vi.fn(function () {
|
|
54
|
+
return {
|
|
55
|
+
cleanup: function () {},
|
|
56
|
+
complete: Promise.resolve()
|
|
57
|
+
};
|
|
58
|
+
}));
|
|
59
|
+
instances.push(this);
|
|
60
|
+
};
|
|
61
|
+
var instances = [];
|
|
62
|
+
return {
|
|
63
|
+
FakeZero,
|
|
64
|
+
instances
|
|
65
|
+
};
|
|
66
|
+
});
|
|
67
|
+
import_vitest.vi.mock("@rocicorp/zero", async function (importOriginal) {
|
|
68
|
+
var actual = await importOriginal();
|
|
69
|
+
return {
|
|
70
|
+
...actual,
|
|
71
|
+
Zero: fakeZero.FakeZero
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
globalThis.IS_REACT_ACT_ENVIRONMENT = true;
|
|
75
|
+
var noteTable = (0, import_zero.table)("note").columns({
|
|
76
|
+
id: (0, import_zero.string)(),
|
|
77
|
+
body: (0, import_zero.string)()
|
|
78
|
+
}).primaryKey("id");
|
|
79
|
+
var schema = (0, import_zero.createSchema)({
|
|
80
|
+
tables: [noteTable]
|
|
81
|
+
});
|
|
82
|
+
var client = (0, import_createZeroClient.createZeroClient)({
|
|
83
|
+
schema,
|
|
84
|
+
models: {},
|
|
85
|
+
groupedQueries: {},
|
|
86
|
+
instanceName: "recovery-cache-test"
|
|
87
|
+
});
|
|
88
|
+
var container;
|
|
89
|
+
var root;
|
|
90
|
+
(0, import_vitest.beforeEach)(function () {
|
|
91
|
+
fakeZero.instances.length = 0;
|
|
92
|
+
container = document.createElement("div");
|
|
93
|
+
root = null;
|
|
94
|
+
});
|
|
95
|
+
(0, import_vitest.afterEach)(function () {
|
|
96
|
+
if (root) (0, import_react.act)(function () {
|
|
97
|
+
return root === null || root === void 0 ? void 0 : root.unmount();
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
async function mount() {
|
|
101
|
+
root = (0, import_client.createRoot)(container);
|
|
102
|
+
await (0, import_react.act)(async function () {
|
|
103
|
+
root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */(0, import_jsx_runtime.jsx)(client.ProvideZero, {
|
|
104
|
+
cacheURL: "http://127.0.0.1:7777/zero",
|
|
105
|
+
userID: "agentbus",
|
|
106
|
+
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
|
|
107
|
+
children: "ok"
|
|
108
|
+
})
|
|
109
|
+
}));
|
|
110
|
+
await Promise.resolve();
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
(0, import_vitest.test)("zero.delete invalidates cached instance before a remount recovery", async function () {
|
|
114
|
+
await mount();
|
|
115
|
+
var first = fakeZero.instances[0];
|
|
116
|
+
(0, import_vitest.expect)(first).toBeDefined();
|
|
117
|
+
var deleteZero = client.zero.delete;
|
|
118
|
+
await (0, import_react.act)(async function () {
|
|
119
|
+
await deleteZero();
|
|
120
|
+
});
|
|
121
|
+
(0, import_vitest.expect)(first === null || first === void 0 ? void 0 : first.delete).toHaveBeenCalledTimes(1);
|
|
122
|
+
(0, import_vitest.expect)(first === null || first === void 0 ? void 0 : first.close).toHaveBeenCalledTimes(1);
|
|
123
|
+
(0, import_react.act)(function () {
|
|
124
|
+
return root === null || root === void 0 ? void 0 : root.unmount();
|
|
125
|
+
});
|
|
126
|
+
await mount();
|
|
127
|
+
(0, import_vitest.expect)(fakeZero.instances).toHaveLength(2);
|
|
128
|
+
(0, import_vitest.expect)(fakeZero.instances[1]).not.toBe(first);
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=createZeroClient.recovery.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["import_jsx_runtime","require","import_zero","import_react","import_client","import_vitest","import_createZeroClient","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","fakeZero","vi","hoisted","FakeZero","FakeZero2","state","current","name","subscribe","connect","fn","errors","cleanup","complete","Promise","resolve","instances","push","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","table","columns","id","string","body","primaryKey","schema","createSchema","tables"],"sources":["../../src/createZeroClient.recovery.test.tsx"],"sourcesContent":[null],"mappings":"AAEA;;AACA,IAAAA,kBAAoB,GAAAC,OAAA;AACpB,IAAAC,WAAA,GAAAD,OAAsC;AACtC,IAAAE,YAAA,GAAAF,OAAwD;AAqCxD,IAAAG,aAAA,GAAAH,OAAA,mBAAiC;AAoCzB,IAAAI,aAAA,GAAAJ,OAAA;AAvER,IAAAK,uBAAiB,GAAAL,OAAG,+BAAc;AAAA,SAC1BM,iBAASA,CAAAC,QAAA,EAAAC,WAAA;EAAA,IACJ,EAAAD,QAAW,YAAAC,WAAA;IACX,UAAAC,SAAa;EAAA;AACb;AACqB,SAC1BC,gBAAiBA,CAAAC,GAAA,EAAMC,GAAA,EAAAC,KAAA;EAAA,IAAAD,GAAC,IAAAD,GAAA;IAAAG,MAC1B,CAAAC,cAAA,CAAAJ,GAAA,EAAAC,GAAA;MACAC,KAAA;MACFG,UAAA;MACSC,YAAS;MACTC,QAAQ;IACR;EAA0B,OAC1B;IAAuBP,GAC9B,CAAAC,GAAA,IAASC,KAAA;EAAM;EAAC,OAChBF,GAAA;AAA0B;AAC1B,IAEFQ,QAAA,GAAAf,aAAc,CAAAgB,EAAA,CAAAC,OAAA;EACZ,IAAAC,QAAA,GAAU,SAASC,UAAA;IACrB;;IACFjB,iBAAA,OAAAiB,SAAA;IAEAb,gBAA8B,CAAC;IAC/BA,gBAAS,CAAU,kBAAU;MAC9Bc,KAAA;QAEDC,OAAA,EAAG;UACKC,IAAA;QACN,CAAO;QACFC,SAAA,WAAAA,CAAA;UACG,mBAAS,CACjB;QACD;MAQD;MAEMC,OAAA,EAAAxB,aAAY,CAAAgB,EAAA,CAAAS,EAAA;IAClB,EAAM;IAENnB,gBAAe,iBAAAN,aAAA,CAAAgB,EAAA,CAAAS,EAAA,mBAAiB;MAC9B;QACAC,MAAS;MACT;IACA;IACDpB,gBAAA,gBAAAN,aAAA,CAAAgB,EAAA,CAAAS,EAAA;IAEGnB,gBAAA,cAAAN,aAAA,CAAAgB,EAAA,CAAAS,EAAA;MACA;IAEJ;IACEnB,gBAAS,CAAU,eAAS,EAAAN,aAAA,CAAAgB,EAAA,CAAAS,EAAA;MAC5B;QACAE,OAAO,WAAAA,CAAA,GACR;QAEDC,QAAA,EAAAC,OAAA,CAAAC,OAAU;MACJ;IACL;IAEDC,SAAA,CAAAC,IAAe,KAAQ;EACrB;EACA,IAAAD,SAAM;EACJ;IAAMb,QACJ;IAGFa;EACA;AAAsB,EACxB;AACF/B,aAAA,CAAAgB,EAAA,CAAAiB,IAAA,mCAAAC,cAAA;EAAA,IAEAC,MAAA,SAAAD,cAAK;EACH,OAAM;IACN,GAAAC,MAAM;IACNC,IAAA,EAAArB,QAAA,CAAAG;EAEA;AACA;AACEmB,UAAM,CAAAC,wBAAW;AAAA,IAClBC,SAAA,OAAA1C,WAAA,CAAA2C,KAAA,UAAAC,OAAA;EAEDC,EAAA,MAAA7C,WAAA,CAAA8C,MAAO;EACPC,IAAA,MAAA/C,WAAA,CAAA8C,MAAO;AAEP,GAAAE,UAAA;AACA,IAAAC,MAAM,IAAM,GAAAjD,WAAA,CAAAkD,YAAA;EAEZC,MAAA,GACAT,SAAA","ignoreList":[]}
|
|
@@ -390,6 +390,23 @@ let storageID = 0;
|
|
|
390
390
|
cleanup();
|
|
391
391
|
view.destroy();
|
|
392
392
|
});
|
|
393
|
+
(0, import_vitest.test)("transient pull failures back off reconnect attempts", async () => {
|
|
394
|
+
const requests = [];
|
|
395
|
+
const fetch = import_vitest.vi.fn(async (input, init) => {
|
|
396
|
+
const request = recordRequest(input, init);
|
|
397
|
+
requests.push(request);
|
|
398
|
+
(0, import_vitest.expect)(request.path).toBe("/pull");
|
|
399
|
+
throw new TypeError("Failed to fetch");
|
|
400
|
+
});
|
|
401
|
+
install(fetch);
|
|
402
|
+
createZero();
|
|
403
|
+
await eventually(() => (0, import_vitest.expect)(requests.length).toBe(1));
|
|
404
|
+
await sleep(150);
|
|
405
|
+
(0, import_vitest.expect)(requests.length).toBe(1);
|
|
406
|
+
await eventually(() => (0, import_vitest.expect)(requests.length).toBe(2), 1500);
|
|
407
|
+
await sleep(150);
|
|
408
|
+
(0, import_vitest.expect)(requests.length).toBe(2);
|
|
409
|
+
});
|
|
393
410
|
(0, import_vitest.test)("non-origin WebSockets pass through to the native implementation", () => {
|
|
394
411
|
const previous = globalThis.WebSocket;
|
|
395
412
|
class NativeWebSocket {
|
|
@@ -459,6 +459,27 @@ var storageID = 0;
|
|
|
459
459
|
cleanup();
|
|
460
460
|
view.destroy();
|
|
461
461
|
});
|
|
462
|
+
(0, import_vitest.test)("transient pull failures back off reconnect attempts", async function () {
|
|
463
|
+
var requests = [];
|
|
464
|
+
var fetch = import_vitest.vi.fn(async function (input, init) {
|
|
465
|
+
var request = recordRequest(input, init);
|
|
466
|
+
requests.push(request);
|
|
467
|
+
(0, import_vitest.expect)(request.path).toBe("/pull");
|
|
468
|
+
throw new TypeError("Failed to fetch");
|
|
469
|
+
});
|
|
470
|
+
install(fetch);
|
|
471
|
+
createZero();
|
|
472
|
+
await eventually(function () {
|
|
473
|
+
return (0, import_vitest.expect)(requests.length).toBe(1);
|
|
474
|
+
});
|
|
475
|
+
await sleep(150);
|
|
476
|
+
(0, import_vitest.expect)(requests.length).toBe(1);
|
|
477
|
+
await eventually(function () {
|
|
478
|
+
return (0, import_vitest.expect)(requests.length).toBe(2);
|
|
479
|
+
}, 1500);
|
|
480
|
+
await sleep(150);
|
|
481
|
+
(0, import_vitest.expect)(requests.length).toBe(2);
|
|
482
|
+
});
|
|
462
483
|
(0, import_vitest.test)("non-origin WebSockets pass through to the native implementation", function () {
|
|
463
484
|
var previous = globalThis.WebSocket;
|
|
464
485
|
var NativeWebSocket = function NativeWebSocket2(url, protocols) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["import_zero","require","import_vitest","import_fixtureSchema","import_httpPullTransport","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","ORIGIN","zeros","transports","storageID","afterEach","_zeros_pop","_transports_pop","length","pop","close","uninstall","vi","useRealTimers","describe","test","requests","cookie","fetch","fn","input","init","request","recordRequest","push","expect","path","toBe","headers","authorization","jsonResponse","lastMutationIDChanges","rowsPatch","op","tableName","id","name","ownerId","projectId","userId","transport","install","zero","createZero","view","query","project","related","materialize","data","waitForComplete","destroy","connections","toEqual","members","body","toBeNull","clientID","any","String","clientGroupID","unchanged","mutation2","mutations","pushResponse","result","eventually","filter","pullsBeforePush","mutation","mutate","create","client","server","find","toMatchObject","pushVersion","requestID","type","args","_requests_at","socket","openRawSocketWithMessages","authToken","send","JSON","stringify","auth","pull","at","firstPushStarted","defer","releaseFirstPush","pushIDs","mutationID","resolve","promise","map","messages","some","message","pushBody","sleep","toHaveLength","responses","deferred","inFlight","maxInFlight","Math","max","response","shift","Error","openRawSocket","findMessage","baseCookie","startsWith","concurrentA","concurrentB","Promise","all","projectView","userView","user","users","pingTimeoutMs","connection","state","current","error","status","emissions","cleanup","addListener","resultType","parse","toBeGreaterThan","flatMap","emission","previous","globalThis","WebSocket","NativeWebSocket","NativeWebSocket2","url","protocols","installHttpPullTransport","origin","toBeInstanceOf","first","ensureHttpPullTransport","second"],"sources":["../../../src/httpPull/transport.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["import_zero","require","import_vitest","import_fixtureSchema","import_httpPullTransport","_class_call_check","instance","Constructor","TypeError","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","ORIGIN","zeros","transports","storageID","afterEach","_zeros_pop","_transports_pop","length","pop","close","uninstall","vi","useRealTimers","describe","test","requests","cookie","fetch","fn","input","init","request","recordRequest","push","expect","path","toBe","headers","authorization","jsonResponse","lastMutationIDChanges","rowsPatch","op","tableName","id","name","ownerId","projectId","userId","transport","install","zero","createZero","view","query","project","related","materialize","data","waitForComplete","destroy","connections","toEqual","members","body","toBeNull","clientID","any","String","clientGroupID","unchanged","mutation2","mutations","pushResponse","result","eventually","filter","pullsBeforePush","mutation","mutate","create","client","server","find","toMatchObject","pushVersion","requestID","type","args","_requests_at","socket","openRawSocketWithMessages","authToken","send","JSON","stringify","auth","pull","at","firstPushStarted","defer","releaseFirstPush","pushIDs","mutationID","resolve","promise","map","messages","some","message","pushBody","sleep","toHaveLength","responses","deferred","inFlight","maxInFlight","Math","max","response","shift","Error","openRawSocket","findMessage","baseCookie","startsWith","concurrentA","concurrentB","Promise","all","projectView","userView","user","users","pingTimeoutMs","connection","state","current","error","status","emissions","cleanup","addListener","resultType","parse","toBeGreaterThan","flatMap","emission","previous","globalThis","WebSocket","NativeWebSocket","NativeWebSocket2","url","protocols","installHttpPullTransport","origin","toBeInstanceOf","first","ensureHttpPullTransport","second"],"sources":["../../../src/httpPull/transport.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -27,6 +27,8 @@ __export(httpPullTransport_exports, {
|
|
|
27
27
|
});
|
|
28
28
|
module.exports = __toCommonJS(httpPullTransport_exports);
|
|
29
29
|
const COOKIE_WIDTH = 20;
|
|
30
|
+
const TRANSIENT_RECONNECT_BACKOFF_BASE_MS = 1e3;
|
|
31
|
+
const TRANSIENT_RECONNECT_BACKOFF_MAX_MS = 3e4;
|
|
30
32
|
function installHttpPullTransport(opts) {
|
|
31
33
|
const previousWebSocket = globalThis.WebSocket;
|
|
32
34
|
const fetchImpl = opts.fetch ?? globalThis.fetch;
|
|
@@ -43,7 +45,8 @@ function installHttpPullTransport(opts) {
|
|
|
43
45
|
nativeWebSocket: previousWebSocket,
|
|
44
46
|
sockets: /* @__PURE__ */new Set(),
|
|
45
47
|
pullIntervalMs: opts.pullIntervalMs,
|
|
46
|
-
nextPokeID: 0
|
|
48
|
+
nextPokeID: 0,
|
|
49
|
+
transientFailureCount: 0
|
|
47
50
|
};
|
|
48
51
|
const Shim = class {
|
|
49
52
|
static CONNECTING = 0;
|
|
@@ -100,7 +103,7 @@ class ZeroHttpSocket {
|
|
|
100
103
|
this.authToken = decoded.authToken;
|
|
101
104
|
this.queueDesiredQueries(decoded.initConnectionMessage?.[1]);
|
|
102
105
|
this.state.sockets.add(this);
|
|
103
|
-
this.openTimer = setTimeout(() => this.open(),
|
|
106
|
+
this.openTimer = setTimeout(() => this.open(), reconnectDelayMs(this.state));
|
|
104
107
|
}
|
|
105
108
|
CONNECTING = 0;
|
|
106
109
|
OPEN = 1;
|
|
@@ -180,7 +183,7 @@ class ZeroHttpSocket {
|
|
|
180
183
|
});
|
|
181
184
|
}
|
|
182
185
|
pull() {
|
|
183
|
-
if (this.readyState
|
|
186
|
+
if (this.readyState !== this.OPEN) return Promise.resolve();
|
|
184
187
|
if (this.pullInFlight) return this.pullInFlight;
|
|
185
188
|
this.pullInFlight = this.fetchPull(this.clientGroupID, this.cookie).then(response => {
|
|
186
189
|
if (response.unchanged) {
|
|
@@ -267,6 +270,7 @@ class ZeroHttpSocket {
|
|
|
267
270
|
if (!response.ok) {
|
|
268
271
|
throw new ZeroHttpResponseError(path, response.status);
|
|
269
272
|
}
|
|
273
|
+
resetTransientFailures(this.state);
|
|
270
274
|
return response.json();
|
|
271
275
|
}
|
|
272
276
|
run(promise) {
|
|
@@ -292,6 +296,7 @@ class ZeroHttpSocket {
|
|
|
292
296
|
if (this.readyState !== this.CLOSED) this.close(1e3, error.message);
|
|
293
297
|
return;
|
|
294
298
|
}
|
|
299
|
+
recordTransientFailure(this.state);
|
|
295
300
|
this.emit("error", {
|
|
296
301
|
error
|
|
297
302
|
});
|
|
@@ -455,4 +460,15 @@ function filterMutationResultsToClient(pushResponse, clientID) {
|
|
|
455
460
|
}
|
|
456
461
|
function isStaleClientCookieError(error) {
|
|
457
462
|
return error instanceof ZeroHttpResponseError && error.path === "/pull" && error.status === 409;
|
|
463
|
+
}
|
|
464
|
+
function reconnectDelayMs(state) {
|
|
465
|
+
if (state.transientFailureCount === 0) return 0;
|
|
466
|
+
return Math.min(TRANSIENT_RECONNECT_BACKOFF_BASE_MS * 2 ** (state.transientFailureCount - 1), TRANSIENT_RECONNECT_BACKOFF_MAX_MS);
|
|
467
|
+
}
|
|
468
|
+
function recordTransientFailure(state) {
|
|
469
|
+
const maxExponent = Math.log2(TRANSIENT_RECONNECT_BACKOFF_MAX_MS / TRANSIENT_RECONNECT_BACKOFF_BASE_MS);
|
|
470
|
+
state.transientFailureCount = Math.min(state.transientFailureCount + 1, Math.ceil(maxExponent) + 1);
|
|
471
|
+
}
|
|
472
|
+
function resetTransientFailures(state) {
|
|
473
|
+
state.transientFailureCount = 0;
|
|
458
474
|
}
|