on-zero 0.4.30 → 0.4.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/cjs/createZeroClient.authData.test.cjs +67 -0
  2. package/dist/cjs/createZeroClient.authData.test.native.js +72 -0
  3. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -0
  4. package/dist/cjs/createZeroClient.cjs +41 -26
  5. package/dist/cjs/createZeroClient.native.js +47 -26
  6. package/dist/cjs/createZeroClient.native.js.map +1 -1
  7. package/dist/cjs/createZeroServer.cjs +35 -33
  8. package/dist/cjs/createZeroServer.native.js +36 -34
  9. package/dist/cjs/createZeroServer.native.js.map +1 -1
  10. package/dist/cjs/helpers/recoverZeroClient.cjs +101 -0
  11. package/dist/cjs/helpers/recoverZeroClient.native.js +130 -0
  12. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -0
  13. package/dist/cjs/helpers/recoverZeroClient.test.cjs +201 -0
  14. package/dist/cjs/helpers/recoverZeroClient.test.native.js +256 -0
  15. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -0
  16. package/dist/cjs/index.cjs +4 -1
  17. package/dist/cjs/index.native.js +3 -0
  18. package/dist/cjs/index.native.js.map +1 -1
  19. package/dist/cjs/multiInstance.test.cjs +4 -3
  20. package/dist/cjs/multiInstance.test.native.js +6 -6
  21. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  22. package/dist/esm/createZeroClient.authData.test.mjs +68 -0
  23. package/dist/esm/createZeroClient.authData.test.mjs.map +1 -0
  24. package/dist/esm/createZeroClient.authData.test.native.js +70 -0
  25. package/dist/esm/createZeroClient.authData.test.native.js.map +1 -0
  26. package/dist/esm/createZeroClient.mjs +42 -27
  27. package/dist/esm/createZeroClient.mjs.map +1 -1
  28. package/dist/esm/createZeroClient.native.js +48 -27
  29. package/dist/esm/createZeroClient.native.js.map +1 -1
  30. package/dist/esm/createZeroServer.mjs +35 -33
  31. package/dist/esm/createZeroServer.mjs.map +1 -1
  32. package/dist/esm/createZeroServer.native.js +36 -34
  33. package/dist/esm/createZeroServer.native.js.map +1 -1
  34. package/dist/esm/helpers/recoverZeroClient.mjs +74 -0
  35. package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -0
  36. package/dist/esm/helpers/recoverZeroClient.native.js +100 -0
  37. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -0
  38. package/dist/esm/helpers/recoverZeroClient.test.mjs +202 -0
  39. package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -0
  40. package/dist/esm/helpers/recoverZeroClient.test.native.js +254 -0
  41. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -0
  42. package/dist/esm/index.js +2 -1
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/index.mjs +2 -1
  45. package/dist/esm/index.mjs.map +1 -1
  46. package/dist/esm/index.native.js +2 -1
  47. package/dist/esm/index.native.js.map +1 -1
  48. package/dist/esm/multiInstance.test.mjs +4 -3
  49. package/dist/esm/multiInstance.test.mjs.map +1 -1
  50. package/dist/esm/multiInstance.test.native.js +6 -6
  51. package/dist/esm/multiInstance.test.native.js.map +1 -1
  52. package/package.json +2 -2
  53. package/src/createZeroClient.authData.test.tsx +73 -0
  54. package/src/createZeroClient.tsx +60 -47
  55. package/src/createZeroServer.ts +48 -44
  56. package/src/helpers/recoverZeroClient.test.ts +172 -0
  57. package/src/helpers/recoverZeroClient.ts +173 -0
  58. package/src/index.ts +5 -0
  59. package/src/multiInstance.test.tsx +5 -3
  60. package/src/multiInstanceNested.test.tsx +1 -1
  61. package/src/types.ts +6 -1
  62. package/types/createZeroClient.authData.test.d.ts +5 -0
  63. package/types/createZeroClient.authData.test.d.ts.map +1 -0
  64. package/types/createZeroClient.d.ts +3 -2
  65. package/types/createZeroClient.d.ts.map +1 -1
  66. package/types/createZeroServer.d.ts +4 -4
  67. package/types/createZeroServer.d.ts.map +1 -1
  68. package/types/helpers/recoverZeroClient.d.ts +17 -0
  69. package/types/helpers/recoverZeroClient.d.ts.map +1 -0
  70. package/types/helpers/recoverZeroClient.test.d.ts +2 -0
  71. package/types/helpers/recoverZeroClient.test.d.ts.map +1 -0
  72. package/types/index.d.ts +1 -0
  73. package/types/index.d.ts.map +1 -1
  74. package/types/types.d.ts +6 -0
  75. package/types/types.d.ts.map +1 -1
@@ -0,0 +1,67 @@
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_state = require("./state.cjs");
7
+ var import_jsx_runtime = require("react/jsx-runtime");
8
+ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
9
+ const userTable = (0, import_zero.table)("user").columns({
10
+ id: (0, import_zero.string)(),
11
+ name: (0, import_zero.string)()
12
+ }).primaryKey("id");
13
+ const schema = (0, import_zero.createSchema)({
14
+ tables: [userTable]
15
+ });
16
+ const client = (0, import_createZeroClient.createZeroClient)({
17
+ schema,
18
+ models: {},
19
+ groupedQueries: {},
20
+ instanceName: "authdata-test"
21
+ });
22
+ let container;
23
+ let root;
24
+ (0, import_vitest.beforeEach)(() => {
25
+ container = document.createElement("div");
26
+ root = (0, import_client.createRoot)(container);
27
+ });
28
+ (0, import_vitest.afterEach)(() => {
29
+ (0, import_react.act)(() => root.unmount());
30
+ });
31
+ function renderWith(props) {
32
+ (0, import_react.act)(() => {
33
+ root.render(/* @__PURE__ */(0, import_jsx_runtime.jsx)(client.ProvideZero, {
34
+ auth: props.auth,
35
+ authData: props.authData,
36
+ userID: props.userID,
37
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
38
+ children: "ok"
39
+ })
40
+ }));
41
+ });
42
+ }
43
+ (0, import_vitest.test)("authData clears on logout (token gone) but survives a transient blip", () => {
44
+ renderWith({
45
+ auth: "tok",
46
+ authData: {
47
+ id: "u1"
48
+ },
49
+ userID: "u1"
50
+ });
51
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toEqual({
52
+ id: "u1"
53
+ });
54
+ renderWith({
55
+ auth: "tok",
56
+ authData: null,
57
+ userID: "u1"
58
+ });
59
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toEqual({
60
+ id: "u1"
61
+ });
62
+ renderWith({
63
+ authData: null,
64
+ userID: "anon"
65
+ });
66
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toBeNull();
67
+ });
@@ -0,0 +1,72 @@
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
+ var import_state = require("./state.native.js");
10
+ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
11
+ var userTable = (0, import_zero.table)("user").columns({
12
+ id: (0, import_zero.string)(),
13
+ name: (0, import_zero.string)()
14
+ }).primaryKey("id");
15
+ var schema = (0, import_zero.createSchema)({
16
+ tables: [userTable]
17
+ });
18
+ var client = (0, import_createZeroClient.createZeroClient)({
19
+ schema,
20
+ models: {},
21
+ groupedQueries: {},
22
+ instanceName: "authdata-test"
23
+ });
24
+ var container;
25
+ var root;
26
+ (0, import_vitest.beforeEach)(function () {
27
+ container = document.createElement("div");
28
+ root = (0, import_client.createRoot)(container);
29
+ });
30
+ (0, import_vitest.afterEach)(function () {
31
+ (0, import_react.act)(function () {
32
+ return root.unmount();
33
+ });
34
+ });
35
+ function renderWith(props) {
36
+ (0, import_react.act)(function () {
37
+ root.render(/* @__PURE__ */(0, import_jsx_runtime.jsx)(client.ProvideZero, {
38
+ auth: props.auth,
39
+ authData: props.authData,
40
+ userID: props.userID,
41
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)("span", {
42
+ children: "ok"
43
+ })
44
+ }));
45
+ });
46
+ }
47
+ (0, import_vitest.test)("authData clears on logout (token gone) but survives a transient blip", function () {
48
+ renderWith({
49
+ auth: "tok",
50
+ authData: {
51
+ id: "u1"
52
+ },
53
+ userID: "u1"
54
+ });
55
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toEqual({
56
+ id: "u1"
57
+ });
58
+ renderWith({
59
+ auth: "tok",
60
+ authData: null,
61
+ userID: "u1"
62
+ });
63
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toEqual({
64
+ id: "u1"
65
+ });
66
+ renderWith({
67
+ authData: null,
68
+ userID: "anon"
69
+ });
70
+ (0, import_vitest.expect)((0, import_state.getAuthData)()).toBeNull();
71
+ });
72
+ //# sourceMappingURL=createZeroClient.authData.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","import_state","globalThis","IS_REACT_ACT_ENVIRONMENT","userTable","table","columns","id","string","name","primaryKey","schema","createSchema","tables","client","createZeroClient","models","groupedQueries","instanceName","container","root","beforeEach","document","createElement","createRoot","afterEach","act","unmount","renderWith","props","render","jsx","ProvideZero","auth","authData","userID","children","test"],"sources":["../../src/createZeroClient.authData.test.tsx"],"sourcesContent":[null],"mappings":"AAOA;;AACA,IAAAA,kBAAoB,GAAAC,OAAA;AACpB,IAAAC,WAAA,GAAAD,OAAsC;AACtC,IAAAE,YAAA,GAAAF,OAAoD;AAEpD,IAAAG,aAAA,GAAAH,OAAA,mBAAiC;AACjC,IAAAI,aAAA,GAA4BJ,OAAA;AA0CpB,IAAAK,uBAAA,GAAAL,OAAA;AApCR,IAAAM,YAAW,GAAAN,OAAA;AAEXO,UAAM,CAAAC,wBAAY,OAAM;AACxB,IAAAC,SAAM,OAASR,WAAA,CAAAS,KAAA,QAAa,EAAEC,OAAA,CAAQ;EAEtCC,EAAA,EAAM,IAAAX,WAAS,CAAAY,MAAA;EACbC,IAAA,MAAAb,WAAA,CAAAY,MAAA;AAAA,EACA,CAAAE,UAAS;AAAA,IACTC,MAAA,OAAAf,WAAiB,CAAAgB,YAAA;EACjBC,MAAA,GACDT,SAAA;AAGD;AAAI,IAEJU,MAAA,OAAAd,uBAAiB,CAAAe,gBAAA;EACfJ,MAAA;EACAK,MAAA;EACDC,cAAA;EAAAC,YAED;AACE;AACF,IAACC,SAAA;AAED,IAAAC,IAAA;AAKE,IAAArB,aAAA,CAAAsB,UAAI,EAAM;EACRF,SAAK,GAAAG,QAAA,CAAAC,aAAA;EAAAH,IACH,OAAAtB,aAAA,CAAA0B,UAAA,EAAAL,SAAA;AAAA;AAAQ,IAAApB,aAAP,CAAA0B,SAAA;EAAA,IAAA5B,YACO,CAAA6B,GAAM;IAAA,OACZN,IAAA,CAAAO,OAAU;EAAM;AACF;AAEN,SAAAC,WAAAC,KAAA;EAAA,IACVhC,YAAA,CAAA6B,GAAA;IACFN,IAAA,CAAAU,MAAA,oBAAApC,kBAAA,CAAAqC,GAAA,EAAAjB,MAAA,CAAAkB,WAAA;MACDC,IAAA,EAAAJ,KAAA,CAAAI,IAAA;MACHC,QAAA,EAAAL,KAAA,CAAAK,QAAA;MAEAC,MAAA,EAAAN,KAAA,CAAAM,MAAK;MACHC,QAAW,EAAE,eAAa,IAAA1C,kBAAwB,CAAAqC,GAAA,EAAQ,MAAM;QAChEK,QAAA;MAGA;IACA;EAGA;AACA;AACF,CAAC,GAAArC,aAAA,CAAAsC,IAAA","ignoreList":[]}
@@ -34,6 +34,7 @@ var import_httpPullTransport = require("./httpPullTransport.cjs");
34
34
  var import_createUseQuery = require("./createUseQuery.cjs");
35
35
  var import_instanceRegistry = require("./instanceRegistry.cjs");
36
36
  var import_createMutators = require("./helpers/createMutators.cjs");
37
+ var import_recoverZeroClient = require("./helpers/recoverZeroClient.cjs");
37
38
  var import_getAuth = require("./helpers/getAuth.cjs");
38
39
  var import_modelRegistry = require("./modelRegistry.cjs");
39
40
  var import_queryRegistry = require("./queryRegistry.cjs");
@@ -190,17 +191,24 @@ function createZeroClient({
190
191
  const usePermission = createUsePermission(useQuery);
191
192
  const usePermissionDirect = createUsePermission(useQueryDirect);
192
193
  let cachedZero = null;
193
- const zeroInstanceGeneration = (0, import_helpers.createEmitter)(`zero-instance-generation${emitterScope}`, 0);
194
- let zeroRotationPending = false;
195
194
  const ProvideZero = ({
196
195
  children,
197
196
  authData: authDataIn,
198
197
  disable,
199
198
  transport,
200
199
  pullIntervalMs = 3e4,
200
+ beforeReload,
201
201
  ...props
202
202
  }) => {
203
- const authData = authDataIn ?? null;
203
+ const auth = "auth" in props ? props.auth : void 0;
204
+ const hasAuth = typeof auth === "string";
205
+ const stableAuthDataRef = (0, import_react2.useRef)(authDataIn ?? null);
206
+ if (authDataIn) {
207
+ stableAuthDataRef.current = authDataIn;
208
+ } else if (!hasAuth) {
209
+ stableAuthDataRef.current = null;
210
+ }
211
+ const authData = authDataIn ?? stableAuthDataRef.current ?? null;
204
212
  (0, import_state.setAuthData)(authData);
205
213
  const mutators = (0, import_react2.useMemo)(() => {
206
214
  return (0, import_createMutators.createMutators)({
@@ -210,13 +218,10 @@ function createZeroClient({
210
218
  can: permissionsHelpers.can
211
219
  });
212
220
  }, []);
213
- const generation = (0, import_helpers.useEmitterValue)(zeroInstanceGeneration);
214
- const auth = "auth" in props ? props.auth : void 0;
215
- const hasAuth = typeof auth === "string";
216
221
  const instanceKey = JSON.stringify([Object.entries({
217
222
  kvStore: "mem",
218
223
  ...props
219
- }).filter(([key, value]) => key !== "auth" && typeof value !== "function" && value !== void 0).sort(([a], [b]) => a < b ? -1 : 1), hasAuth, generation, transport]);
224
+ }).filter(([key, value]) => key !== "auth" && typeof value !== "function" && value !== void 0).sort(([a], [b]) => a < b ? -1 : 1), hasAuth, transport]);
220
225
  const [instance2, setInstance] = (0, import_react2.useState)();
221
226
  (0, import_react2.useEffect)(() => {
222
227
  let cached = cachedZero;
@@ -233,29 +238,39 @@ function createZeroClient({
233
238
  pullIntervalMs
234
239
  });
235
240
  }
241
+ const instanceRef = {
242
+ current: null
243
+ };
244
+ const recoveryDeps = {
245
+ deleteLocalState: () => instanceRef.current?.delete() ?? Promise.resolve(),
246
+ zeroEvents,
247
+ beforeReload
248
+ };
249
+ const recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
250
+ const createdInstance = new import_zero.Zero({
251
+ kvStore: "mem",
252
+ ...options,
253
+ schema,
254
+ // @ts-expect-error same erasure ZeroProvider needed
255
+ mutators,
256
+ // when the consumer brings no logSink, install ours: it preserves
257
+ // Zero's console output AND watches for the local-store-lost signature.
258
+ // a consumer with its own logSink owns log-based recovery (no
259
+ // double-fire with e.g. soot's origin-gated recovery).
260
+ logSink: options.logSink ?? (0, import_recoverZeroClient.composeRecoveryLogSink)(recoveryDeps),
261
+ // consumer handlers win; otherwise on-zero's default self-healing
262
+ // recovery covers EVERY reason (drop local state + reload, guarded) —
263
+ // passing these to Zero disables its built-in reload, so any reason we
264
+ // left unhandled would fatal-blank the app forever.
265
+ onUpdateNeeded: options.onUpdateNeeded ?? recovery.onUpdateNeeded,
266
+ onClientStateNotFound: options.onClientStateNotFound ?? recovery.onClientStateNotFound
267
+ });
268
+ instanceRef.current = createdInstance;
236
269
  cached = {
237
270
  key: instanceKey,
238
- instance: new import_zero.Zero({
239
- kvStore: "mem",
240
- ...options,
241
- schema,
242
- // @ts-expect-error same erasure ZeroProvider needed
243
- mutators,
244
- onClientStateNotFound: () => {
245
- if (options.onClientStateNotFound) {
246
- try {
247
- options.onClientStateNotFound();
248
- return;
249
- } catch {}
250
- }
251
- if (zeroRotationPending) return;
252
- zeroRotationPending = true;
253
- zeroInstanceGeneration.emit(zeroInstanceGeneration.value + 1);
254
- }
255
- })
271
+ instance: createdInstance
256
272
  };
257
273
  cachedZero = cached;
258
- zeroRotationPending = false;
259
274
  }
260
275
  setInstance(cached.instance);
261
276
  }, [instanceKey]);
@@ -37,6 +37,7 @@ var import_httpPullTransport = require("./httpPullTransport.native.js");
37
37
  var import_createUseQuery = require("./createUseQuery.native.js");
38
38
  var import_instanceRegistry = require("./instanceRegistry.native.js");
39
39
  var import_createMutators = require("./helpers/createMutators.native.js");
40
+ var import_recoverZeroClient = require("./helpers/recoverZeroClient.native.js");
40
41
  var import_getAuth = require("./helpers/getAuth.native.js");
41
42
  var import_modelRegistry = require("./modelRegistry.native.js");
42
43
  var import_queryRegistry = require("./queryRegistry.native.js");
@@ -291,8 +292,6 @@ function createZeroClient(param) {
291
292
  var usePermission = createUsePermission(useQuery);
292
293
  var usePermissionDirect = createUsePermission(useQueryDirect);
293
294
  var cachedZero = null;
294
- var zeroInstanceGeneration = (0, import_helpers.createEmitter)(`zero-instance-generation${emitterScope}`, 0);
295
- var zeroRotationPending = false;
296
295
  var ProvideZero = function (param2) {
297
296
  var {
298
297
  children,
@@ -300,9 +299,19 @@ function createZeroClient(param) {
300
299
  disable,
301
300
  transport,
302
301
  pullIntervalMs = 3e4,
302
+ beforeReload,
303
303
  ...props
304
304
  } = param2;
305
- var authData = authDataIn !== null && authDataIn !== void 0 ? authDataIn : null;
305
+ var auth = "auth" in props ? props.auth : void 0;
306
+ var hasAuth = typeof auth === "string";
307
+ var stableAuthDataRef = (0, import_react2.useRef)(authDataIn !== null && authDataIn !== void 0 ? authDataIn : null);
308
+ if (authDataIn) {
309
+ stableAuthDataRef.current = authDataIn;
310
+ } else if (!hasAuth) {
311
+ stableAuthDataRef.current = null;
312
+ }
313
+ var _ref;
314
+ var authData = (_ref = authDataIn !== null && authDataIn !== void 0 ? authDataIn : stableAuthDataRef.current) !== null && _ref !== void 0 ? _ref : null;
306
315
  (0, import_state.setAuthData)(authData);
307
316
  var mutators = (0, import_react2.useMemo)(function () {
308
317
  return (0, import_createMutators.createMutators)({
@@ -314,9 +323,6 @@ function createZeroClient(param) {
314
323
  },
315
324
  // eslint-disable-next-line react-hooks/exhaustive-deps
316
325
  []);
317
- var generation = (0, import_helpers.useEmitterValue)(zeroInstanceGeneration);
318
- var auth = "auth" in props ? props.auth : void 0;
319
- var hasAuth = typeof auth === "string";
320
326
  var instanceKey = JSON.stringify([Object.entries({
321
327
  kvStore: "mem",
322
328
  ...props
@@ -327,7 +333,7 @@ function createZeroClient(param) {
327
333
  var [a] = param3,
328
334
  [b] = param1;
329
335
  return a < b ? -1 : 1;
330
- }), hasAuth, generation, transport]);
336
+ }), hasAuth, transport]);
331
337
  var [instance2, setInstance] = (0, import_react2.useState)();
332
338
  (0, import_react2.useEffect)(function () {
333
339
  var cached = cachedZero;
@@ -345,29 +351,44 @@ function createZeroClient(param) {
345
351
  pullIntervalMs
346
352
  });
347
353
  }
354
+ var instanceRef = {
355
+ current: null
356
+ };
357
+ var recoveryDeps = {
358
+ deleteLocalState: function () {
359
+ var _instanceRef_current;
360
+ var _instanceRef_current_delete;
361
+ 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();
362
+ },
363
+ zeroEvents,
364
+ beforeReload
365
+ };
366
+ var recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
367
+ var _options_logSink, _options_onUpdateNeeded, _options_onClientStateNotFound;
368
+ var createdInstance = new import_zero.Zero({
369
+ kvStore: "mem",
370
+ ...options,
371
+ schema,
372
+ // @ts-expect-error same erasure ZeroProvider needed
373
+ mutators,
374
+ // when the consumer brings no logSink, install ours: it preserves
375
+ // Zero's console output AND watches for the local-store-lost signature.
376
+ // a consumer with its own logSink owns log-based recovery (no
377
+ // double-fire with e.g. soot's origin-gated recovery).
378
+ logSink: (_options_logSink = options.logSink) !== null && _options_logSink !== void 0 ? _options_logSink : (0, import_recoverZeroClient.composeRecoveryLogSink)(recoveryDeps),
379
+ // consumer handlers win; otherwise on-zero's default self-healing
380
+ // recovery covers EVERY reason (drop local state + reload, guarded) —
381
+ // passing these to Zero disables its built-in reload, so any reason we
382
+ // left unhandled would fatal-blank the app forever.
383
+ onUpdateNeeded: (_options_onUpdateNeeded = options.onUpdateNeeded) !== null && _options_onUpdateNeeded !== void 0 ? _options_onUpdateNeeded : recovery.onUpdateNeeded,
384
+ onClientStateNotFound: (_options_onClientStateNotFound = options.onClientStateNotFound) !== null && _options_onClientStateNotFound !== void 0 ? _options_onClientStateNotFound : recovery.onClientStateNotFound
385
+ });
386
+ instanceRef.current = createdInstance;
348
387
  cached = {
349
388
  key: instanceKey,
350
- instance: new import_zero.Zero({
351
- kvStore: "mem",
352
- ...options,
353
- schema,
354
- // @ts-expect-error same erasure ZeroProvider needed
355
- mutators,
356
- onClientStateNotFound: function () {
357
- if (options.onClientStateNotFound) {
358
- try {
359
- options.onClientStateNotFound();
360
- return;
361
- } catch (e) {}
362
- }
363
- if (zeroRotationPending) return;
364
- zeroRotationPending = true;
365
- zeroInstanceGeneration.emit(zeroInstanceGeneration.value + 1);
366
- }
367
- })
389
+ instance: createdInstance
368
390
  };
369
391
  cachedZero = cached;
370
- zeroRotationPending = false;
371
392
  }
372
393
  setInstance(cached.instance);
373
394
  },
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","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_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","param","schema","models","groupedQueries","permissionStrategy","instanceName","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","_","Error","emitterScope","zeroEvents","createEmitter","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","useQueryDirect","createUseQueryDirect","getZero","zeroVersion","createUsePermission","useQueryImpl","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","zeroInstanceGeneration","zeroRotationPending","ProvideZero","children","authData","authDataIn","disable","transport","pullIntervalMs","props","setAuthData","mutators","useMemo","createMutators","can","generation","useEmitterValue","hasAuth","instanceKey","JSON","stringify","kvStore","filter","param3","sort","param1","a","b","instance2","setInstance","useState","useEffect","cached","close","options","_options_cacheURL","serverURL","cacheURL","server","ensureHttpPullTransport","origin","Zero","onClientStateNotFound","emit"],"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","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","param","schema","models","groupedQueries","permissionStrategy","instanceName","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","_","Error","emitterScope","zeroEvents","createEmitter","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","useQueryDirect","createUseQueryDirect","getZero","zeroVersion","createUsePermission","useQueryImpl","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","ProvideZero","children","authData","authDataIn","disable","transport","pullIntervalMs","beforeReload","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","_options_cacheURL","serverURL","cacheURL","server","ensureHttpPullTransport","origin","instanceRef","recoveryDeps","deleteLocalState","_instanceRef_current","_instanceRef_current_delete","delete","Promise","resolve","recovery","makeZeroRecovery","_options_logSink","_options_onUpdateNeeded","_options_onClientStateNotFound","createdInstance","Zero","logSink","composeRecoveryLogSink","onUpdateNeeded"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -118,44 +118,46 @@ function createZeroServer({
118
118
  if (!queries) {
119
119
  throw new Error("No queries registered with createZeroServer. Pass the syncedQueries registry to createZeroServer via the queries option.");
120
120
  }
121
- const response = await (0, import_queryContext.runWithQueryContext)({
122
- authData: authData || {}
123
- }, () => (0, import_server.handleQueryRequest)({
124
- handler: (name, args) => {
125
- if (name.startsWith("permission.")) {
126
- const table = name.slice("permission.".length);
127
- const {
128
- objOrId
129
- } = args;
130
- const perm = (0, import_modelRegistry.getMutationsPermissions)(table);
131
- if (!perm) {
132
- throw new Error(`[permission] no permission defined for table: ${table}`);
133
- }
134
- (0, import_where.setEvaluatingPermission)(true);
135
- try {
136
- return (0, import_state.getZQL)()[table].where(eb => {
137
- return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
138
- }).one();
139
- } finally {
140
- (0, import_where.setEvaluatingPermission)(false);
141
- }
121
+ const handler = (name, args) => {
122
+ if (name.startsWith("permission.")) {
123
+ const table = name.slice("permission.".length);
124
+ const {
125
+ objOrId
126
+ } = args;
127
+ const perm = (0, import_modelRegistry.getMutationsPermissions)(table);
128
+ if (!perm) {
129
+ throw new Error(`[permission] no permission defined for table: ${table}`);
142
130
  }
143
- if (validateQuery) {
144
- validateQuery({
145
- authData,
146
- queryName: name,
147
- params: args
148
- });
131
+ (0, import_where.setEvaluatingPermission)(true);
132
+ try {
133
+ return (0, import_state.getZQL)()[table].where(eb => {
134
+ return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
135
+ }).one();
136
+ } finally {
137
+ (0, import_where.setEvaluatingPermission)(false);
149
138
  }
150
- const query2 = (0, import_zero.mustGetQuery)(queries, name);
151
- return query2.fn({
152
- args,
153
- ctx: authData
139
+ }
140
+ if (validateQuery) {
141
+ validateQuery({
142
+ authData,
143
+ queryName: name,
144
+ params: args
154
145
  });
155
- },
146
+ }
147
+ const query2 = (0, import_zero.mustGetQuery)(queries, name);
148
+ return query2.fn({
149
+ args,
150
+ ctx: authData
151
+ });
152
+ };
153
+ const userID = typeof authData?.id === "string" ? authData.id : void 0;
154
+ const response = await (0, import_queryContext.runWithQueryContext)({
155
+ authData: authData || {}
156
+ }, () => userID === void 0 ? (0, import_server.handleQueryRequest)(handler, schema, request) : (0, import_server.handleQueryRequest)({
157
+ handler,
156
158
  schema,
157
159
  request,
158
- userID: typeof authData?.id === "string" ? authData.id : null
160
+ userID
159
161
  }));
160
162
  return {
161
163
  response
@@ -125,45 +125,47 @@ function createZeroServer(param) {
125
125
  if (!queries) {
126
126
  throw new Error("No queries registered with createZeroServer. Pass the syncedQueries registry to createZeroServer via the queries option.");
127
127
  }
128
+ var handler = function (name, args) {
129
+ if (name.startsWith("permission.")) {
130
+ var table = name.slice("permission.".length);
131
+ var {
132
+ objOrId
133
+ } = args;
134
+ var perm = (0, import_modelRegistry.getMutationsPermissions)(table);
135
+ if (!perm) {
136
+ throw new Error(`[permission] no permission defined for table: ${table}`);
137
+ }
138
+ (0, import_where.setEvaluatingPermission)(true);
139
+ try {
140
+ return (0, import_state.getZQL)()[table].where(function (eb) {
141
+ return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
142
+ }).one();
143
+ } finally {
144
+ (0, import_where.setEvaluatingPermission)(false);
145
+ }
146
+ }
147
+ if (validateQuery) {
148
+ validateQuery({
149
+ authData,
150
+ queryName: name,
151
+ params: args
152
+ });
153
+ }
154
+ var _$query = (0, import_zero.mustGetQuery)(queries, name);
155
+ return _$query.fn({
156
+ args,
157
+ ctx: authData
158
+ });
159
+ };
160
+ var userID = typeof (authData === null || authData === void 0 ? void 0 : authData.id) === "string" ? authData.id : void 0;
128
161
  var response = await (0, import_queryContext.runWithQueryContext)({
129
162
  authData: authData || {}
130
163
  }, function () {
131
- return (0, import_server.handleQueryRequest)({
132
- handler: function (name, args) {
133
- if (name.startsWith("permission.")) {
134
- var table = name.slice("permission.".length);
135
- var {
136
- objOrId
137
- } = args;
138
- var perm = (0, import_modelRegistry.getMutationsPermissions)(table);
139
- if (!perm) {
140
- throw new Error(`[permission] no permission defined for table: ${table}`);
141
- }
142
- (0, import_where.setEvaluatingPermission)(true);
143
- try {
144
- return (0, import_state.getZQL)()[table].where(function (eb) {
145
- return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
146
- }).one();
147
- } finally {
148
- (0, import_where.setEvaluatingPermission)(false);
149
- }
150
- }
151
- if (validateQuery) {
152
- validateQuery({
153
- authData,
154
- queryName: name,
155
- params: args
156
- });
157
- }
158
- var _$query = (0, import_zero.mustGetQuery)(queries, name);
159
- return _$query.fn({
160
- args,
161
- ctx: authData
162
- });
163
- },
164
+ return userID === void 0 ? (0, import_server.handleQueryRequest)(handler, schema, request) : (0, import_server.handleQueryRequest)({
165
+ handler,
164
166
  schema,
165
167
  request,
166
- userID: typeof (authData === null || authData === void 0 ? void 0 : authData.id) === "string" ? authData.id : null
168
+ userID
167
169
  });
168
170
  });
169
171
  return {