on-zero 0.9.2 → 0.9.4
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 +176 -100
- package/dist/cjs/createZeroClient.connection.test.cjs +32 -0
- package/dist/cjs/createZeroClient.connection.test.native.js +34 -0
- package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/cjs/createZeroClient.headless.test.cjs +33 -0
- package/dist/cjs/createZeroClient.headless.test.native.js +38 -0
- package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -0
- package/dist/cjs/createZeroClient.native.js +207 -132
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/zeroRunner.cjs +1 -1
- package/dist/cjs/zeroRunner.native.js +1 -1
- package/dist/esm/createZeroClient.connection.test.mjs +32 -0
- package/dist/esm/createZeroClient.connection.test.mjs.map +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js +34 -0
- package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.headless.test.mjs +34 -0
- package/dist/esm/createZeroClient.headless.test.mjs.map +1 -0
- package/dist/esm/createZeroClient.headless.test.native.js +36 -0
- package/dist/esm/createZeroClient.headless.test.native.js.map +1 -0
- package/dist/esm/createZeroClient.mjs +178 -102
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +209 -134
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/zeroRunner.mjs +1 -1
- package/dist/esm/zeroRunner.mjs.map +1 -1
- package/dist/esm/zeroRunner.native.js +1 -1
- package/package.json +1 -1
- package/src/createZeroClient.connection.test.tsx +38 -0
- package/src/createZeroClient.headless.test.tsx +47 -0
- package/src/createZeroClient.tsx +323 -218
- package/src/zeroRunner.ts +1 -1
- package/types/createZeroClient.d.ts +24 -0
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/createZeroClient.headless.test.d.ts +2 -0
- package/types/createZeroClient.headless.test.d.ts.map +1 -0
|
@@ -251,8 +251,110 @@ function createZeroClientInternal(param) {
|
|
|
251
251
|
});
|
|
252
252
|
(0, import_run.setCustomQueries)(customQueries);
|
|
253
253
|
var DisabledContext = /* @__PURE__ */(0, import_react2.createContext)(false);
|
|
254
|
+
var clientMutators = null;
|
|
255
|
+
function getClientMutators() {
|
|
256
|
+
clientMutators !== null && clientMutators !== void 0 ? clientMutators : clientMutators = (0, import_createMutators.createMutators)({
|
|
257
|
+
models,
|
|
258
|
+
environment: "client",
|
|
259
|
+
authData: null,
|
|
260
|
+
can: permissionsHelpers.can
|
|
261
|
+
});
|
|
262
|
+
return clientMutators;
|
|
263
|
+
}
|
|
264
|
+
function constructZeroInstance(param2) {
|
|
265
|
+
var {
|
|
266
|
+
options,
|
|
267
|
+
transport,
|
|
268
|
+
beforeReload,
|
|
269
|
+
scheduleReload,
|
|
270
|
+
guardStorage,
|
|
271
|
+
benignLogPatterns
|
|
272
|
+
} = param2;
|
|
273
|
+
var _ref, _options_logSink, _options_onUpdateNeeded, _options_onClientStateNotFound;
|
|
274
|
+
var _transport_logClassifications;
|
|
275
|
+
if (transport) {
|
|
276
|
+
var _options_cacheURL;
|
|
277
|
+
var serverURL = (_options_cacheURL = options.cacheURL) !== null && _options_cacheURL !== void 0 ? _options_cacheURL : options.server;
|
|
278
|
+
if (typeof serverURL !== "string") {
|
|
279
|
+
throw new Error(`client transport requires a server URL`);
|
|
280
|
+
}
|
|
281
|
+
transport.install(serverURL);
|
|
282
|
+
}
|
|
283
|
+
var instanceRef = {
|
|
284
|
+
current: null
|
|
285
|
+
};
|
|
286
|
+
var recoveryDeps = {
|
|
287
|
+
deleteLocalState: function deleteLocalState() {
|
|
288
|
+
return deleteZeroInstance(instanceRef.current);
|
|
289
|
+
},
|
|
290
|
+
zeroEvents,
|
|
291
|
+
beforeReload,
|
|
292
|
+
scheduleReload,
|
|
293
|
+
guardStorage,
|
|
294
|
+
benignLogPatterns: [...((_ref = transport === null || transport === void 0 ? void 0 : (_transport_logClassifications = transport.logClassifications) === null || _transport_logClassifications === void 0 ? void 0 : _transport_logClassifications.benign) !== null && _ref !== void 0 ? _ref : []), ...(benignLogPatterns !== null && benignLogPatterns !== void 0 ? benignLogPatterns : [])],
|
|
295
|
+
onRecovery: function onRecovery() {
|
|
296
|
+
return mutationLifecycle.fence();
|
|
297
|
+
}
|
|
298
|
+
};
|
|
299
|
+
var recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
|
|
300
|
+
var createdInstance = new import_zero.Zero({
|
|
301
|
+
kvStore: "mem",
|
|
302
|
+
...options,
|
|
303
|
+
schema,
|
|
304
|
+
// @ts-expect-error same erasure ZeroProvider needed
|
|
305
|
+
mutators: getClientMutators(),
|
|
306
|
+
// when the consumer brings no logSink, install ours: it preserves Zero's
|
|
307
|
+
// console output AND watches for the local-store-lost signature. a
|
|
308
|
+
// consumer with its own logSink owns log-based recovery (no double-fire
|
|
309
|
+
// with e.g. soot's origin-gated recovery).
|
|
310
|
+
logSink: (_options_logSink = options.logSink) !== null && _options_logSink !== void 0 ? _options_logSink : (0, import_recoverZeroClient.composeRecoveryLogSink)(recoveryDeps),
|
|
311
|
+
// consumer handlers win; otherwise on-zero's default self-healing
|
|
312
|
+
// recovery covers EVERY reason (drop local state + reload, guarded) —
|
|
313
|
+
// passing these to Zero disables its built-in reload, so any reason we
|
|
314
|
+
// left unhandled would fatal-blank the app forever.
|
|
315
|
+
onUpdateNeeded: (_options_onUpdateNeeded = options.onUpdateNeeded) !== null && _options_onUpdateNeeded !== void 0 ? _options_onUpdateNeeded : recovery.onUpdateNeeded,
|
|
316
|
+
onClientStateNotFound: (_options_onClientStateNotFound = options.onClientStateNotFound) !== null && _options_onClientStateNotFound !== void 0 ? _options_onClientStateNotFound : recovery.onClientStateNotFound
|
|
317
|
+
});
|
|
318
|
+
instanceRef.current = createdInstance;
|
|
319
|
+
return createdInstance;
|
|
320
|
+
}
|
|
254
321
|
var latestZeroInstance = null;
|
|
255
322
|
var zeroReadyWaiters = /* @__PURE__ */new Set();
|
|
323
|
+
function publishZeroInstance(zeroInstance) {
|
|
324
|
+
if (zeroInstance === latestZeroInstance) return false;
|
|
325
|
+
latestZeroInstance = zeroInstance;
|
|
326
|
+
mutationLifecycle.activate();
|
|
327
|
+
var runner = function runner2(query, options) {
|
|
328
|
+
return zeroInstance.run(query, options);
|
|
329
|
+
};
|
|
330
|
+
instance.runner = runner;
|
|
331
|
+
(0, import_zeroRunner.setRunner)(runner);
|
|
332
|
+
var waiters = [...zeroReadyWaiters];
|
|
333
|
+
zeroReadyWaiters.clear();
|
|
334
|
+
var _iteratorNormalCompletion3 = true,
|
|
335
|
+
_didIteratorError3 = false,
|
|
336
|
+
_iteratorError3 = void 0;
|
|
337
|
+
try {
|
|
338
|
+
for (var _iterator3 = waiters[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
339
|
+
var onReady = _step3.value;
|
|
340
|
+
onReady(zeroInstance);
|
|
341
|
+
}
|
|
342
|
+
} catch (err) {
|
|
343
|
+
_didIteratorError3 = true;
|
|
344
|
+
_iteratorError3 = err;
|
|
345
|
+
} finally {
|
|
346
|
+
try {
|
|
347
|
+
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
348
|
+
_iterator3.return();
|
|
349
|
+
}
|
|
350
|
+
} finally {
|
|
351
|
+
if (_didIteratorError3) {
|
|
352
|
+
throw _iteratorError3;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
return true;
|
|
357
|
+
}
|
|
256
358
|
function waitForZero() {
|
|
257
359
|
var {
|
|
258
360
|
signal
|
|
@@ -555,16 +657,6 @@ function createZeroClientInternal(param) {
|
|
|
555
657
|
}
|
|
556
658
|
var authData = (_ref = authDataIn !== null && authDataIn !== void 0 ? authDataIn : stableAuthDataRef.current) !== null && _ref !== void 0 ? _ref : null;
|
|
557
659
|
(0, import_state.setAuthData)(authData);
|
|
558
|
-
var mutators = (0, import_react2.useMemo)(function () {
|
|
559
|
-
return (0, import_createMutators.createMutators)({
|
|
560
|
-
models,
|
|
561
|
-
environment: "client",
|
|
562
|
-
authData: null,
|
|
563
|
-
can: permissionsHelpers.can
|
|
564
|
-
});
|
|
565
|
-
},
|
|
566
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
567
|
-
[]);
|
|
568
660
|
var hostScope = (0, import_hostStorageScope.readHostStorageScope)();
|
|
569
661
|
var scopedProps = hostScope ? {
|
|
570
662
|
...props,
|
|
@@ -623,61 +715,22 @@ function createZeroClientInternal(param) {
|
|
|
623
715
|
}
|
|
624
716
|
var cached = cachedZero;
|
|
625
717
|
var options = scopedProps;
|
|
626
|
-
if (transport) {
|
|
627
|
-
var _options_cacheURL;
|
|
628
|
-
var serverURL = (_options_cacheURL = options.cacheURL) !== null && _options_cacheURL !== void 0 ? _options_cacheURL : options.server;
|
|
629
|
-
if (typeof serverURL !== "string") {
|
|
630
|
-
throw new Error(`client transport requires a server URL`);
|
|
631
|
-
}
|
|
632
|
-
transport.install(serverURL);
|
|
633
|
-
}
|
|
634
718
|
if ((cached === null || cached === void 0 ? void 0 : cached.key) !== instanceKey) {
|
|
635
|
-
var _ref2, _options_logSink, _options_onUpdateNeeded, _options_onClientStateNotFound;
|
|
636
|
-
var _transport_logClassifications;
|
|
637
719
|
if (cached) {
|
|
638
720
|
clearZeroInstanceReferences(cached.instance);
|
|
639
721
|
mutationLifecycle.fence();
|
|
640
722
|
cached.instance.close();
|
|
641
723
|
}
|
|
642
|
-
var instanceRef = {
|
|
643
|
-
current: null
|
|
644
|
-
};
|
|
645
|
-
var recoveryDeps = {
|
|
646
|
-
deleteLocalState: function deleteLocalState() {
|
|
647
|
-
return deleteZeroInstance(instanceRef.current);
|
|
648
|
-
},
|
|
649
|
-
zeroEvents,
|
|
650
|
-
beforeReload,
|
|
651
|
-
scheduleReload,
|
|
652
|
-
guardStorage,
|
|
653
|
-
benignLogPatterns: [...((_ref2 = transport === null || transport === void 0 ? void 0 : (_transport_logClassifications = transport.logClassifications) === null || _transport_logClassifications === void 0 ? void 0 : _transport_logClassifications.benign) !== null && _ref2 !== void 0 ? _ref2 : []), ...(benignLogPatterns !== null && benignLogPatterns !== void 0 ? benignLogPatterns : [])],
|
|
654
|
-
onRecovery: function onRecovery() {
|
|
655
|
-
return mutationLifecycle.fence();
|
|
656
|
-
}
|
|
657
|
-
};
|
|
658
|
-
var recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
|
|
659
|
-
var createdInstance = new import_zero.Zero({
|
|
660
|
-
kvStore: "mem",
|
|
661
|
-
...options,
|
|
662
|
-
schema,
|
|
663
|
-
// @ts-expect-error same erasure ZeroProvider needed
|
|
664
|
-
mutators,
|
|
665
|
-
// when the consumer brings no logSink, install ours: it preserves
|
|
666
|
-
// Zero's console output AND watches for the local-store-lost signature.
|
|
667
|
-
// a consumer with its own logSink owns log-based recovery (no
|
|
668
|
-
// double-fire with e.g. soot's origin-gated recovery).
|
|
669
|
-
logSink: (_options_logSink = options.logSink) !== null && _options_logSink !== void 0 ? _options_logSink : (0, import_recoverZeroClient.composeRecoveryLogSink)(recoveryDeps),
|
|
670
|
-
// consumer handlers win; otherwise on-zero's default self-healing
|
|
671
|
-
// recovery covers EVERY reason (drop local state + reload, guarded) —
|
|
672
|
-
// passing these to Zero disables its built-in reload, so any reason we
|
|
673
|
-
// left unhandled would fatal-blank the app forever.
|
|
674
|
-
onUpdateNeeded: (_options_onUpdateNeeded = options.onUpdateNeeded) !== null && _options_onUpdateNeeded !== void 0 ? _options_onUpdateNeeded : recovery.onUpdateNeeded,
|
|
675
|
-
onClientStateNotFound: (_options_onClientStateNotFound = options.onClientStateNotFound) !== null && _options_onClientStateNotFound !== void 0 ? _options_onClientStateNotFound : recovery.onClientStateNotFound
|
|
676
|
-
});
|
|
677
|
-
instanceRef.current = createdInstance;
|
|
678
724
|
cached = {
|
|
679
725
|
key: instanceKey,
|
|
680
|
-
instance:
|
|
726
|
+
instance: constructZeroInstance({
|
|
727
|
+
options,
|
|
728
|
+
transport,
|
|
729
|
+
beforeReload,
|
|
730
|
+
scheduleReload,
|
|
731
|
+
guardStorage,
|
|
732
|
+
benignLogPatterns
|
|
733
|
+
})
|
|
681
734
|
};
|
|
682
735
|
cachedZero = cached;
|
|
683
736
|
}
|
|
@@ -718,64 +771,67 @@ function createZeroClientInternal(param) {
|
|
|
718
771
|
var ProvideZero = import_platform.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
|
|
719
772
|
var SetZeroInstance = function SetZeroInstance2() {
|
|
720
773
|
var zeroInstance = (0, import_react.useZero)();
|
|
721
|
-
|
|
722
|
-
latestZeroInstance = zeroInstance;
|
|
723
|
-
mutationLifecycle.activate();
|
|
724
|
-
var runner = function runner2(query, options) {
|
|
725
|
-
return zeroInstance.run(query, options);
|
|
726
|
-
};
|
|
727
|
-
instance.runner = runner;
|
|
728
|
-
(0, import_zeroRunner.setRunner)(runner);
|
|
729
|
-
var waiters = [...zeroReadyWaiters];
|
|
730
|
-
zeroReadyWaiters.clear();
|
|
731
|
-
var _iteratorNormalCompletion3 = true,
|
|
732
|
-
_didIteratorError3 = false,
|
|
733
|
-
_iteratorError3 = void 0;
|
|
734
|
-
try {
|
|
735
|
-
for (var _iterator3 = waiters[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
|
736
|
-
var onReady = _step3.value;
|
|
737
|
-
onReady(zeroInstance);
|
|
738
|
-
}
|
|
739
|
-
} catch (err) {
|
|
740
|
-
_didIteratorError3 = true;
|
|
741
|
-
_iteratorError3 = err;
|
|
742
|
-
} finally {
|
|
743
|
-
try {
|
|
744
|
-
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
|
745
|
-
_iterator3.return();
|
|
746
|
-
}
|
|
747
|
-
} finally {
|
|
748
|
-
if (_didIteratorError3) {
|
|
749
|
-
throw _iteratorError3;
|
|
750
|
-
}
|
|
751
|
-
}
|
|
752
|
-
}
|
|
753
|
-
}
|
|
774
|
+
publishZeroInstance(zeroInstance);
|
|
754
775
|
(0, import_react2.useEffect)(function () {
|
|
755
776
|
zeroInstanceVersion === null || zeroInstanceVersion === void 0 ? void 0 : zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
|
|
756
777
|
}, [zeroInstance]);
|
|
757
778
|
return null;
|
|
758
779
|
};
|
|
759
|
-
|
|
780
|
+
function connectHeadless(props) {
|
|
760
781
|
var {
|
|
761
|
-
|
|
782
|
+
authData,
|
|
783
|
+
transport,
|
|
784
|
+
beforeReload,
|
|
785
|
+
scheduleReload,
|
|
786
|
+
guardStorage,
|
|
787
|
+
benignLogPatterns,
|
|
788
|
+
refreshAuth,
|
|
789
|
+
...options
|
|
790
|
+
} = props;
|
|
791
|
+
(0, import_state.setAuthData)(authData !== null && authData !== void 0 ? authData : null);
|
|
792
|
+
var zeroInstance = constructZeroInstance({
|
|
793
|
+
options,
|
|
794
|
+
transport,
|
|
795
|
+
beforeReload,
|
|
796
|
+
scheduleReload,
|
|
797
|
+
guardStorage,
|
|
798
|
+
benignLogPatterns
|
|
799
|
+
});
|
|
800
|
+
publishZeroInstance(zeroInstance);
|
|
801
|
+
zeroInstanceVersion === null || zeroInstanceVersion === void 0 ? void 0 : zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
|
|
802
|
+
var unwatch = watchZeroConnection({
|
|
803
|
+
zeroInstance,
|
|
804
|
+
refreshAuth
|
|
805
|
+
});
|
|
806
|
+
return {
|
|
807
|
+
zero: zeroInstance,
|
|
808
|
+
close: async function close() {
|
|
809
|
+
unwatch();
|
|
810
|
+
clearZeroInstanceReferences(zeroInstance);
|
|
811
|
+
mutationLifecycle.fence();
|
|
812
|
+
await zeroInstance.close();
|
|
813
|
+
}
|
|
814
|
+
};
|
|
815
|
+
}
|
|
816
|
+
function watchZeroConnection(args) {
|
|
817
|
+
var _zeroEvents_value;
|
|
818
|
+
var {
|
|
819
|
+
zeroInstance,
|
|
762
820
|
refreshAuth,
|
|
763
821
|
exposeDataset,
|
|
764
822
|
datasetCacheUrl
|
|
765
|
-
} =
|
|
766
|
-
var
|
|
767
|
-
var
|
|
768
|
-
var
|
|
769
|
-
var
|
|
770
|
-
var hasConnectedRef = (0, import_react2.useRef)(false);
|
|
771
|
-
var currentReconnect = ((_zeroEvents_value = zeroEvents2.value) === null || _zeroEvents_value === void 0 ? void 0 : _zeroEvents_value.type) === "reconnect" && zeroEvents2.value.status !== "connected" ? zeroEvents2.value : null;
|
|
772
|
-
var reconnectRef = (0, import_react2.useRef)(currentReconnect ? {
|
|
823
|
+
} = args;
|
|
824
|
+
var prevState = zeroInstance.connection.state.current.name;
|
|
825
|
+
var hasConnected = false;
|
|
826
|
+
var currentReconnect = ((_zeroEvents_value = zeroEvents.value) === null || _zeroEvents_value === void 0 ? void 0 : _zeroEvents_value.type) === "reconnect" && zeroEvents.value.status !== "connected" ? zeroEvents.value : null;
|
|
827
|
+
var reconnect = currentReconnect ? {
|
|
773
828
|
reasonKey: currentReconnect.reasonKey,
|
|
774
829
|
reason: currentReconnect.reason
|
|
775
|
-
} : null
|
|
776
|
-
var
|
|
777
|
-
var
|
|
778
|
-
|
|
830
|
+
} : null;
|
|
831
|
+
var recoverableError = null;
|
|
832
|
+
var needsAuth = false;
|
|
833
|
+
var handle = function handle2() {
|
|
834
|
+
var state = zeroInstance.connection.state.current;
|
|
779
835
|
var name = state.name;
|
|
780
836
|
var reason = "reason" in state && typeof state.reason === "string" ? state.reason : "";
|
|
781
837
|
if (exposeDataset && typeof document !== "undefined" && document.body) {
|
|
@@ -785,10 +841,10 @@ function createZeroClientInternal(param) {
|
|
|
785
841
|
if (name === "connected") document.body.dataset.zeroConnected = "true";else delete document.body.dataset.zeroConnected;
|
|
786
842
|
}
|
|
787
843
|
if (name === "connected") {
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
if (
|
|
791
|
-
|
|
844
|
+
hasConnected = true;
|
|
845
|
+
recoverableError = null;
|
|
846
|
+
if (reconnect) {
|
|
847
|
+
reconnect = null;
|
|
792
848
|
emitReconnectStatus({
|
|
793
849
|
type: "reconnect",
|
|
794
850
|
status: "connected"
|
|
@@ -797,51 +853,49 @@ function createZeroClientInternal(param) {
|
|
|
797
853
|
}
|
|
798
854
|
var reconnectReasonKey = reason.includes("ServerOverloaded") ? "server-overloaded" : reason.includes("Failed to fetch") || reason.includes("fetch failed") || reason.includes("NetworkError when attempting to fetch resource") || reason.includes("Network request failed") || reason.includes("Load failed") ? "transport" : void 0;
|
|
799
855
|
if (name === "error" && ((0, import_recoverZeroClient.isRecoverableZeroStalePokeMessage)(reason) || reconnectReasonKey)) {
|
|
800
|
-
if (
|
|
856
|
+
if (recoverableError !== reason) {
|
|
801
857
|
var _zeroInstance_connection_connect, _zeroInstance_connection;
|
|
802
|
-
|
|
803
|
-
|
|
858
|
+
recoverableError = reason;
|
|
859
|
+
reconnect = {
|
|
804
860
|
reasonKey: reconnectReasonKey !== null && reconnectReasonKey !== void 0 ? reconnectReasonKey : "transport",
|
|
805
861
|
reason
|
|
806
862
|
};
|
|
807
863
|
emitReconnectStatus({
|
|
808
864
|
type: "reconnect",
|
|
809
865
|
status: "trying",
|
|
810
|
-
...
|
|
866
|
+
...reconnect
|
|
811
867
|
});
|
|
812
868
|
void Promise.resolve((_zeroInstance_connection = zeroInstance.connection) === null || _zeroInstance_connection === void 0 ? void 0 : (_zeroInstance_connection_connect = _zeroInstance_connection.connect) === null || _zeroInstance_connection_connect === void 0 ? void 0 : _zeroInstance_connection_connect.call(_zeroInstance_connection)).catch(function () {});
|
|
813
869
|
}
|
|
814
870
|
return;
|
|
815
871
|
}
|
|
816
|
-
if (name !== "error")
|
|
817
|
-
if (name === "connecting" && (
|
|
872
|
+
if (name !== "error") recoverableError = null;
|
|
873
|
+
if (name === "connecting" && (reconnect || hasConnected || Boolean(reason))) {
|
|
818
874
|
var _ref;
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
reason: reason || ((_reconnectRef_current1 = reconnectRef.current) === null || _reconnectRef_current1 === void 0 ? void 0 : _reconnectRef_current1.reason) || "connection interrupted"
|
|
875
|
+
reconnect = {
|
|
876
|
+
reasonKey: (_ref = reconnectReasonKey !== null && reconnectReasonKey !== void 0 ? reconnectReasonKey : reconnect === null || reconnect === void 0 ? void 0 : reconnect.reasonKey) !== null && _ref !== void 0 ? _ref : "transport",
|
|
877
|
+
reason: reason || (reconnect === null || reconnect === void 0 ? void 0 : reconnect.reason) || "connection interrupted"
|
|
823
878
|
};
|
|
824
879
|
emitReconnectStatus({
|
|
825
880
|
type: "reconnect",
|
|
826
881
|
status: reason ? "waiting" : "trying",
|
|
827
|
-
...
|
|
882
|
+
...reconnect
|
|
828
883
|
});
|
|
829
|
-
} else if (name === "disconnected" && (
|
|
884
|
+
} else if (name === "disconnected" && (reconnect || hasConnected)) {
|
|
830
885
|
var _ref1;
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
reason: reason || ((_reconnectRef_current3 = reconnectRef.current) === null || _reconnectRef_current3 === void 0 ? void 0 : _reconnectRef_current3.reason) || "connection interrupted"
|
|
886
|
+
reconnect = {
|
|
887
|
+
reasonKey: (_ref1 = reconnect === null || reconnect === void 0 ? void 0 : reconnect.reasonKey) !== null && _ref1 !== void 0 ? _ref1 : "transport",
|
|
888
|
+
reason: reason || (reconnect === null || reconnect === void 0 ? void 0 : reconnect.reason) || "connection interrupted"
|
|
835
889
|
};
|
|
836
890
|
emitReconnectStatus({
|
|
837
891
|
type: "reconnect",
|
|
838
892
|
status: "waiting",
|
|
839
|
-
...
|
|
893
|
+
...reconnect
|
|
840
894
|
});
|
|
841
895
|
}
|
|
842
896
|
if (name === "needs-auth") {
|
|
843
|
-
if (refreshAuth && !
|
|
844
|
-
|
|
897
|
+
if (refreshAuth && !needsAuth) {
|
|
898
|
+
needsAuth = true;
|
|
845
899
|
void refreshAuth().then(function (token) {
|
|
846
900
|
var _zeroInstance_connection_connect2, _zeroInstance_connection2;
|
|
847
901
|
if (token) (_zeroInstance_connection2 = zeroInstance.connection) === null || _zeroInstance_connection2 === void 0 ? void 0 : (_zeroInstance_connection_connect2 = _zeroInstance_connection2.connect) === null || _zeroInstance_connection_connect2 === void 0 ? void 0 : _zeroInstance_connection_connect2.call(_zeroInstance_connection2, {
|
|
@@ -850,19 +904,39 @@ function createZeroClientInternal(param) {
|
|
|
850
904
|
}).catch(function () {});
|
|
851
905
|
}
|
|
852
906
|
} else {
|
|
853
|
-
|
|
907
|
+
needsAuth = false;
|
|
854
908
|
}
|
|
855
|
-
if (name !== prevState
|
|
856
|
-
prevState
|
|
909
|
+
if (name !== prevState) {
|
|
910
|
+
prevState = name;
|
|
857
911
|
if (name === "error" || name === "needs-auth") {
|
|
858
|
-
|
|
912
|
+
zeroEvents.emit({
|
|
859
913
|
type: "error",
|
|
860
914
|
reasonKey: name === "needs-auth" ? "connection-needs-auth" : "connection-error",
|
|
861
915
|
message: reason || name
|
|
862
916
|
});
|
|
863
917
|
}
|
|
864
918
|
}
|
|
865
|
-
}
|
|
919
|
+
};
|
|
920
|
+
var unsubscribe = zeroInstance.connection.state.subscribe(handle);
|
|
921
|
+
handle();
|
|
922
|
+
return unsubscribe;
|
|
923
|
+
}
|
|
924
|
+
var ConnectionMonitor = /* @__PURE__ */(0, import_react2.memo)(function (param2) {
|
|
925
|
+
var {
|
|
926
|
+
zeroEvents: _zeroEvents,
|
|
927
|
+
refreshAuth,
|
|
928
|
+
exposeDataset,
|
|
929
|
+
datasetCacheUrl
|
|
930
|
+
} = param2;
|
|
931
|
+
var zeroInstance = (0, import_react.useZero)();
|
|
932
|
+
(0, import_react2.useEffect)(function () {
|
|
933
|
+
return watchZeroConnection({
|
|
934
|
+
zeroInstance,
|
|
935
|
+
refreshAuth,
|
|
936
|
+
exposeDataset,
|
|
937
|
+
datasetCacheUrl
|
|
938
|
+
});
|
|
939
|
+
}, [zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
|
|
866
940
|
return null;
|
|
867
941
|
});
|
|
868
942
|
function preload(fnArg, paramsOrOptions, optionsArg) {
|
|
@@ -900,6 +974,7 @@ function createZeroClientInternal(param) {
|
|
|
900
974
|
zeroEvents,
|
|
901
975
|
reloadPage,
|
|
902
976
|
ProvideZero,
|
|
977
|
+
connectHeadless,
|
|
903
978
|
ControlQueries,
|
|
904
979
|
useQuery,
|
|
905
980
|
useQueryDirect,
|
|
@@ -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_react2","import_createPermissions","import_createUseQuery","import_clearZeroClientData","import_createMutators","import_emitter","import_getAuth","import_hostStorageScope","import_mutationLifecycle","import_platform","import_recoverZeroClient","import_instanceRegistry","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","_type_of","obj","Symbol","constructor","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","setSchema","createBuilder","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","createPermissionCheckFn2","table","fn2","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","queryNames","flatMap","namespace2","queries2","map","setCustomQueries","DisabledContext","createContext","latestZeroInstance","zeroReadyWaiters","Set","waitForZero","signal","arguments","length","Promise","resolve","aborted","_signal_reason","reject","reason","onReady","onReady2","instance2","removeEventListener","onAbort","onAbort2","_ref","delete","add","addEventListener","once","lazyMutatePath","path","resolve2","target","mutate","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","Proxy","lazyMutator","_","apply","__","zero","instanceToDelete","deleteZeroInstance","emitterScope","zeroEvents","createEmitter","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","mutationLifecycle","createMutationLifecycle","recoverFromAckTimeout","input","reconnectInPlace","label","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","createUsePermission2","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","current","usePermission","usePermissionDirect","cachedZero","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","runner","setRunner","clearZeroInstanceReferences","invalidateZeroInstance","fence","emit","close","unused","remint","opts","now","Date","sinceLast","dropLocalState","catch","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","ProvideZeroServer2","children","authData","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","ProvideZeroClient2","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","refreshAuth","connectionDataset","disable","props","_props_storageKey","_props_cacheURL","stableAuthDataRef","hasAuth","setAuthData","mutators","useMemo","createMutators","can","hostScope","readHostStorageScope","scopedProps","storageKey","__testZero","useEffect","window","URLSearchParams","search","has","url","URL","href","searchParams","clearZeroClientData","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","useState","generation","instanceKey","JSON","stringify","kvStore","filter","param3","sort","param1","a","b","pattern","source","flags","setInstance","useLayoutEffect","cached","_options_cacheURL","serverURL","cacheURL","server","install","_ref2","_options_logSink","_options_onUpdateNeeded","_options_onClientStateNotFound","_transport_logClassifications","instanceRef","recoveryDeps","deleteLocalState","logClassifications","benign","onRecovery","recovery","makeZeroRecovery","createdInstance","Zero","logSink","composeRecoveryLogSink","onUpdateNeeded","onClientStateNotFound","prevAuthRef","prevAuth","connect","liveInstance"],"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_react2","import_createPermissions","import_createUseQuery","import_clearZeroClientData","import_createMutators","import_emitter","import_getAuth","import_hostStorageScope","import_mutationLifecycle","import_platform","import_recoverZeroClient","import_instanceRegistry","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","_type_of","obj","Symbol","constructor","getZeroProxyValue","instance","key","Reflect","get","bound","bind","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","ownKeys","iterator","_step","next","done","property","descriptor","Object","getOwnPropertyDescriptor","defineProperty","err","return","createUnavailableDirectUseQuery","useQueryDirect","Error","options","param","schema","models","groupedQueries","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","setSchema","createBuilder","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","entries","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","permissionCheckFns","createPermissionCheckFn","createPermissionCheckFn2","table","fn2","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","queryNames","flatMap","namespace2","queries2","map","setCustomQueries","DisabledContext","createContext","clientMutators","getClientMutators","createMutators","authData","can","constructZeroInstance","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","_ref","_options_logSink","_options_onUpdateNeeded","_options_onClientStateNotFound","_transport_logClassifications","_options_cacheURL","serverURL","cacheURL","server","install","instanceRef","current","recoveryDeps","deleteLocalState","deleteZeroInstance","zeroEvents","logClassifications","benign","onRecovery","mutationLifecycle","fence","recovery","makeZeroRecovery","createdInstance","Zero","kvStore","mutators","logSink","composeRecoveryLogSink","onUpdateNeeded","onClientStateNotFound","latestZeroInstance","zeroReadyWaiters","Set","publishZeroInstance","zeroInstance","activate","runner","runner2","query","run","setRunner","waiters","clear","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_iterator3","_step3","onReady","waitForZero","signal","arguments","length","Promise","resolve","aborted","_signal_reason","reject","reason","onReady2","instance2","removeEventListener","onAbort","onAbort2","delete","add","addEventListener","once","lazyMutatePath","path","resolve2","target","mutate","Proxy","lazyMutator","_","apply","__","zero","instanceToDelete","emitterScope","createEmitter","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","createMutationLifecycle","recoverFromAckTimeout","input","reconnectInPlace","label","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","createUseQuery","getZero","zeroVersion","createUsePermission","createUsePermission2","useQueryImpl","IS_SERVER_RUNTIME","usePermission2","enabled","debug","disableMode","useContext","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","result","type","usePermission","usePermissionDirect","cachedZero","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","clearZeroInstanceReferences","invalidateZeroInstance","emit","close","unused","remint","opts","now","Date","sinceLast","dropLocalState","catch","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","ProvideZeroServer2","children","authDataIn","jsx","Provider","jsxs","ZeroContext","ProvideZeroClient","ProvideZeroClient2","refreshAuth","connectionDataset","disable","props","_props_storageKey","_props_cacheURL","hasAuth","stableAuthDataRef","setAuthData","hostScope","readHostStorageScope","scopedProps","storageKey","__testZero","useEffect","window","URLSearchParams","search","has","url","URL","href","searchParams","clearZeroClientData","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","useState","generation","instanceKey","JSON","stringify","filter","param3","sort","param1","a","b","pattern","source","flags","setInstance","useLayoutEffect","cached","prevAuthRef","prevAuth","connect","liveInstance","SetZeroInstance","ConnectionMonitor","exposeDataset","datasetCacheUrl"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/zeroRunner.cjs
CHANGED
|
@@ -43,7 +43,7 @@ function getAmbientRunner(instance) {
|
|
|
43
43
|
return instance.runner;
|
|
44
44
|
}
|
|
45
45
|
if (!runner) {
|
|
46
|
-
throw new Error("Zero runner not initialized. Ensure ProvideZero is mounted or server bindings are active.");
|
|
46
|
+
throw new Error("Zero runner not initialized. Ensure ProvideZero is mounted, connectHeadless() was called, or server bindings are active.");
|
|
47
47
|
}
|
|
48
48
|
return runner;
|
|
49
49
|
}
|
|
@@ -47,7 +47,7 @@ function getAmbientRunner(instance) {
|
|
|
47
47
|
return instance.runner;
|
|
48
48
|
}
|
|
49
49
|
if (!runner) {
|
|
50
|
-
throw new Error("Zero runner not initialized. Ensure ProvideZero is mounted or server bindings are active.");
|
|
50
|
+
throw new Error("Zero runner not initialized. Ensure ProvideZero is mounted, connectHeadless() was called, or server bindings are active.");
|
|
51
51
|
}
|
|
52
52
|
return runner;
|
|
53
53
|
}
|
|
@@ -299,4 +299,36 @@ test("fatal error state stays terminal and reports the reason", async () => {
|
|
|
299
299
|
vi.useRealTimers();
|
|
300
300
|
}
|
|
301
301
|
});
|
|
302
|
+
test("connectHeadless refreshes auth on needs-auth with no react tree", async () => {
|
|
303
|
+
const headlessClient = createZeroClient({
|
|
304
|
+
schema,
|
|
305
|
+
models: {},
|
|
306
|
+
groupedQueries: {},
|
|
307
|
+
instanceName: "headless-auth-test"
|
|
308
|
+
});
|
|
309
|
+
const refreshAuth = vi.fn(async () => "headless-fresh-token");
|
|
310
|
+
const connection = headlessClient.connectHeadless({
|
|
311
|
+
userID: "headless-auth",
|
|
312
|
+
cacheURL: "http://127.0.0.1:7788/zero",
|
|
313
|
+
refreshAuth
|
|
314
|
+
});
|
|
315
|
+
const instance = fakeZero.instances.at(-1);
|
|
316
|
+
instance.connection.state.set({
|
|
317
|
+
name: "needs-auth",
|
|
318
|
+
reason: "token expired"
|
|
319
|
+
});
|
|
320
|
+
await Promise.resolve();
|
|
321
|
+
expect(refreshAuth).toHaveBeenCalledTimes(1);
|
|
322
|
+
await Promise.resolve();
|
|
323
|
+
expect(instance.connection.connect).toHaveBeenCalledWith({
|
|
324
|
+
auth: "headless-fresh-token"
|
|
325
|
+
});
|
|
326
|
+
instance.connection.state.set({
|
|
327
|
+
name: "needs-auth",
|
|
328
|
+
reason: "token expired again"
|
|
329
|
+
});
|
|
330
|
+
await Promise.resolve();
|
|
331
|
+
expect(refreshAuth).toHaveBeenCalledTimes(1);
|
|
332
|
+
await connection.close();
|
|
333
|
+
});
|
|
302
334
|
//# sourceMappingURL=createZeroClient.connection.test.mjs.map
|