on-zero 0.7.1 → 0.7.2-1784530701923
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/helpers/createMutators.cjs +4 -3
- package/dist/cjs/helpers/createMutators.native.js +6 -3
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/httpPull/transport.test.cjs +109 -0
- package/dist/cjs/httpPull/transport.test.native.js +148 -0
- package/dist/cjs/httpPull/transport.test.native.js.map +1 -1
- package/dist/cjs/httpPullTransport.cjs +41 -24
- package/dist/cjs/httpPullTransport.native.js +47 -26
- package/dist/cjs/httpPullTransport.native.js.map +1 -1
- package/dist/cjs/index.cjs +0 -1
- package/dist/cjs/index.native.js +0 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/mutations.cjs +5 -1
- package/dist/cjs/mutations.native.js +5 -1
- package/dist/cjs/mutations.native.js.map +1 -1
- package/dist/cjs/mutations.test.cjs +28 -0
- package/dist/cjs/mutations.test.native.js +40 -0
- package/dist/cjs/mutations.test.native.js.map +1 -0
- package/dist/cjs/orez.cjs +227 -0
- package/dist/cjs/orez.native.js +314 -0
- package/dist/cjs/orez.native.js.map +1 -0
- package/dist/cjs/orez.test.cjs +211 -0
- package/dist/cjs/orez.test.native.js +226 -0
- package/dist/cjs/orez.test.native.js.map +1 -0
- package/dist/cjs/run.cjs +1 -1
- package/dist/cjs/run.native.js +1 -1
- package/dist/cjs/state.cjs +1 -1
- package/dist/cjs/state.native.js +1 -1
- package/dist/cjs/zeroRunner.cjs +1 -1
- package/dist/cjs/zeroRunner.native.js +1 -1
- package/dist/esm/helpers/createMutators.mjs +4 -3
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +6 -3
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/httpPull/transport.test.mjs +109 -0
- package/dist/esm/httpPull/transport.test.mjs.map +1 -1
- package/dist/esm/httpPull/transport.test.native.js +148 -0
- package/dist/esm/httpPull/transport.test.native.js.map +1 -1
- package/dist/esm/httpPullTransport.mjs +41 -24
- package/dist/esm/httpPullTransport.mjs.map +1 -1
- package/dist/esm/httpPullTransport.native.js +47 -26
- package/dist/esm/httpPullTransport.native.js.map +1 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +0 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +0 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/mutations.mjs +5 -1
- package/dist/esm/mutations.mjs.map +1 -1
- package/dist/esm/mutations.native.js +5 -1
- package/dist/esm/mutations.native.js.map +1 -1
- package/dist/esm/mutations.test.mjs +29 -0
- package/dist/esm/mutations.test.mjs.map +1 -0
- package/dist/esm/mutations.test.native.js +38 -0
- package/dist/esm/mutations.test.native.js.map +1 -0
- package/dist/esm/orez.mjs +202 -0
- package/dist/esm/orez.mjs.map +1 -0
- package/dist/esm/orez.native.js +286 -0
- package/dist/esm/orez.native.js.map +1 -0
- package/dist/esm/orez.test.mjs +188 -0
- package/dist/esm/orez.test.mjs.map +1 -0
- package/dist/esm/orez.test.native.js +200 -0
- package/dist/esm/orez.test.native.js.map +1 -0
- package/dist/esm/run.mjs +1 -1
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/run.native.js +1 -1
- package/dist/esm/state.mjs +1 -1
- package/dist/esm/state.native.js +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 +8 -23
- package/readme.md +42 -67
- package/src/createZeroClient.tsx +1 -1
- package/src/helpers/createMutators.ts +6 -2
- package/src/httpPull/transport.test.ts +132 -0
- package/src/httpPullTransport.ts +74 -42
- package/src/index.ts +0 -1
- package/src/mutations.test.ts +38 -0
- package/src/mutations.ts +10 -2
- package/src/orez.test.ts +195 -0
- package/src/orez.ts +331 -0
- package/src/run.ts +1 -1
- package/src/state.ts +1 -1
- package/src/types.ts +0 -5
- package/src/zeroRunner.ts +1 -1
- package/test-fixtures/server-return-types.ts +21 -58
- package/types/helpers/createMutators.d.ts +2 -1
- package/types/helpers/createMutators.d.ts.map +1 -1
- package/types/httpPull/fixtureSchema.d.ts +1 -1
- package/types/httpPullTransport.d.ts +14 -1
- package/types/httpPullTransport.d.ts.map +1 -1
- package/types/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/mutations.d.ts.map +1 -1
- package/types/mutations.test.d.ts +2 -0
- package/types/mutations.test.d.ts.map +1 -0
- package/types/orez.d.ts +53 -0
- package/types/orez.d.ts.map +1 -0
- package/types/orez.test.d.ts +2 -0
- package/types/orez.test.d.ts.map +1 -0
- package/types/types.d.ts +0 -4
- package/types/types.d.ts.map +1 -1
- package/dist/cjs/asyncTasks.cjs +0 -51
- package/dist/cjs/asyncTasks.native.js +0 -84
- package/dist/cjs/asyncTasks.native.js.map +0 -1
- package/dist/cjs/createZeroDirectServer.cjs +0 -269
- package/dist/cjs/createZeroDirectServer.native.js +0 -287
- package/dist/cjs/createZeroDirectServer.native.js.map +0 -1
- package/dist/cjs/createZeroSQLiteServer.cjs +0 -50
- package/dist/cjs/createZeroSQLiteServer.native.js +0 -58
- package/dist/cjs/createZeroSQLiteServer.native.js.map +0 -1
- package/dist/cjs/createZeroSQLiteServer.test.cjs +0 -553
- package/dist/cjs/createZeroSQLiteServer.test.native.js +0 -602
- package/dist/cjs/createZeroSQLiteServer.test.native.js.map +0 -1
- package/dist/cjs/createZeroServer.cjs +0 -82
- package/dist/cjs/createZeroServer.native.js +0 -93
- package/dist/cjs/createZeroServer.native.js.map +0 -1
- package/dist/cjs/createZeroServer.test.cjs +0 -378
- package/dist/cjs/createZeroServer.test.native.js +0 -448
- package/dist/cjs/createZeroServer.test.native.js.map +0 -1
- package/dist/cjs/createZeroServerCore.cjs +0 -211
- package/dist/cjs/createZeroServerCore.native.js +0 -355
- package/dist/cjs/createZeroServerCore.native.js.map +0 -1
- package/dist/cjs/httpPull/auth.test.cjs +0 -197
- package/dist/cjs/httpPull/auth.test.native.js +0 -279
- package/dist/cjs/httpPull/auth.test.native.js.map +0 -1
- package/dist/cjs/httpPull/churn.test.cjs +0 -132
- package/dist/cjs/httpPull/churn.test.native.js +0 -155
- package/dist/cjs/httpPull/churn.test.native.js.map +0 -1
- package/dist/cjs/httpPull/completeAck.test.cjs +0 -69
- package/dist/cjs/httpPull/completeAck.test.native.js +0 -76
- package/dist/cjs/httpPull/completeAck.test.native.js.map +0 -1
- package/dist/cjs/httpPull/fixtureServer.cjs +0 -340
- package/dist/cjs/httpPull/fixtureServer.native.js +0 -534
- package/dist/cjs/httpPull/fixtureServer.native.js.map +0 -1
- package/dist/cjs/httpPull/integration.test.cjs +0 -53
- package/dist/cjs/httpPull/integration.test.native.js +0 -60
- package/dist/cjs/httpPull/integration.test.native.js.map +0 -1
- package/dist/cjs/httpPull/rebase.test.cjs +0 -360
- package/dist/cjs/httpPull/rebase.test.native.js +0 -420
- package/dist/cjs/httpPull/rebase.test.native.js.map +0 -1
- package/dist/cjs/httpPull/relations.test.cjs +0 -107
- package/dist/cjs/httpPull/relations.test.native.js +0 -119
- package/dist/cjs/httpPull/relations.test.native.js.map +0 -1
- package/dist/cjs/httpPull/testHarness.cjs +0 -100
- package/dist/cjs/httpPull/testHarness.native.js +0 -112
- package/dist/cjs/httpPull/testHarness.native.js.map +0 -1
- package/dist/cjs/server.cjs +0 -22
- package/dist/cjs/server.native.js +0 -4
- package/dist/cjs/server.native.js.map +0 -1
- package/dist/cjs/sqliteRuntime.cjs +0 -318
- package/dist/cjs/sqliteRuntime.native.js +0 -438
- package/dist/cjs/sqliteRuntime.native.js.map +0 -1
- package/dist/cjs/syncHost.cjs +0 -179
- package/dist/cjs/syncHost.native.js +0 -388
- package/dist/cjs/syncHost.native.js.map +0 -1
- package/dist/cjs/syncHost.test.cjs +0 -240
- package/dist/cjs/syncHost.test.native.js +0 -290
- package/dist/cjs/syncHost.test.native.js.map +0 -1
- package/dist/esm/asyncTasks.mjs +0 -26
- package/dist/esm/asyncTasks.mjs.map +0 -1
- package/dist/esm/asyncTasks.native.js +0 -56
- package/dist/esm/asyncTasks.native.js.map +0 -1
- package/dist/esm/createZeroDirectServer.mjs +0 -241
- package/dist/esm/createZeroDirectServer.mjs.map +0 -1
- package/dist/esm/createZeroDirectServer.native.js +0 -256
- package/dist/esm/createZeroDirectServer.native.js.map +0 -1
- package/dist/esm/createZeroSQLiteServer.mjs +0 -24
- package/dist/esm/createZeroSQLiteServer.mjs.map +0 -1
- package/dist/esm/createZeroSQLiteServer.native.js +0 -29
- package/dist/esm/createZeroSQLiteServer.native.js.map +0 -1
- package/dist/esm/createZeroSQLiteServer.test.mjs +0 -554
- package/dist/esm/createZeroSQLiteServer.test.mjs.map +0 -1
- package/dist/esm/createZeroSQLiteServer.test.native.js +0 -600
- package/dist/esm/createZeroSQLiteServer.test.native.js.map +0 -1
- package/dist/esm/createZeroServer.mjs +0 -57
- package/dist/esm/createZeroServer.mjs.map +0 -1
- package/dist/esm/createZeroServer.native.js +0 -65
- package/dist/esm/createZeroServer.native.js.map +0 -1
- package/dist/esm/createZeroServer.test.mjs +0 -379
- package/dist/esm/createZeroServer.test.mjs.map +0 -1
- package/dist/esm/createZeroServer.test.native.js +0 -446
- package/dist/esm/createZeroServer.test.native.js.map +0 -1
- package/dist/esm/createZeroServerCore.mjs +0 -186
- package/dist/esm/createZeroServerCore.mjs.map +0 -1
- package/dist/esm/createZeroServerCore.native.js +0 -327
- package/dist/esm/createZeroServerCore.native.js.map +0 -1
- package/dist/esm/httpPull/auth.test.mjs +0 -198
- package/dist/esm/httpPull/auth.test.mjs.map +0 -1
- package/dist/esm/httpPull/auth.test.native.js +0 -277
- package/dist/esm/httpPull/auth.test.native.js.map +0 -1
- package/dist/esm/httpPull/churn.test.mjs +0 -133
- package/dist/esm/httpPull/churn.test.mjs.map +0 -1
- package/dist/esm/httpPull/churn.test.native.js +0 -153
- package/dist/esm/httpPull/churn.test.native.js.map +0 -1
- package/dist/esm/httpPull/completeAck.test.mjs +0 -70
- package/dist/esm/httpPull/completeAck.test.mjs.map +0 -1
- package/dist/esm/httpPull/completeAck.test.native.js +0 -74
- package/dist/esm/httpPull/completeAck.test.native.js.map +0 -1
- package/dist/esm/httpPull/fixtureServer.mjs +0 -315
- package/dist/esm/httpPull/fixtureServer.mjs.map +0 -1
- package/dist/esm/httpPull/fixtureServer.native.js +0 -506
- package/dist/esm/httpPull/fixtureServer.native.js.map +0 -1
- package/dist/esm/httpPull/integration.test.mjs +0 -54
- package/dist/esm/httpPull/integration.test.mjs.map +0 -1
- package/dist/esm/httpPull/integration.test.native.js +0 -58
- package/dist/esm/httpPull/integration.test.native.js.map +0 -1
- package/dist/esm/httpPull/rebase.test.mjs +0 -361
- package/dist/esm/httpPull/rebase.test.mjs.map +0 -1
- package/dist/esm/httpPull/rebase.test.native.js +0 -418
- package/dist/esm/httpPull/rebase.test.native.js.map +0 -1
- package/dist/esm/httpPull/relations.test.mjs +0 -108
- package/dist/esm/httpPull/relations.test.mjs.map +0 -1
- package/dist/esm/httpPull/relations.test.native.js +0 -117
- package/dist/esm/httpPull/relations.test.native.js.map +0 -1
- package/dist/esm/httpPull/testHarness.mjs +0 -72
- package/dist/esm/httpPull/testHarness.mjs.map +0 -1
- package/dist/esm/httpPull/testHarness.native.js +0 -81
- package/dist/esm/httpPull/testHarness.native.js.map +0 -1
- package/dist/esm/server.mjs +0 -4
- package/dist/esm/server.mjs.map +0 -1
- package/dist/esm/server.native.js +0 -2
- package/dist/esm/server.native.js.map +0 -1
- package/dist/esm/sqliteRuntime.mjs +0 -289
- package/dist/esm/sqliteRuntime.mjs.map +0 -1
- package/dist/esm/sqliteRuntime.native.js +0 -406
- package/dist/esm/sqliteRuntime.native.js.map +0 -1
- package/dist/esm/syncHost.mjs +0 -153
- package/dist/esm/syncHost.mjs.map +0 -1
- package/dist/esm/syncHost.native.js +0 -359
- package/dist/esm/syncHost.native.js.map +0 -1
- package/dist/esm/syncHost.test.mjs +0 -217
- package/dist/esm/syncHost.test.mjs.map +0 -1
- package/dist/esm/syncHost.test.native.js +0 -264
- package/dist/esm/syncHost.test.native.js.map +0 -1
- package/src/asyncTasks.ts +0 -36
- package/src/createZeroDirectServer.ts +0 -411
- package/src/createZeroSQLiteServer.test.ts +0 -571
- package/src/createZeroSQLiteServer.ts +0 -56
- package/src/createZeroServer.test.ts +0 -421
- package/src/createZeroServer.ts +0 -105
- package/src/createZeroServerCore.ts +0 -296
- package/src/httpPull/auth.test.ts +0 -208
- package/src/httpPull/churn.test.ts +0 -147
- package/src/httpPull/completeAck.test.ts +0 -80
- package/src/httpPull/fixtureServer.ts +0 -391
- package/src/httpPull/integration.test.ts +0 -57
- package/src/httpPull/rebase.test.ts +0 -368
- package/src/httpPull/relations.test.ts +0 -135
- package/src/httpPull/testHarness.ts +0 -95
- package/src/server.native.ts +0 -3
- package/src/server.ts +0 -4
- package/src/sqliteRuntime.ts +0 -512
- package/src/syncHost.test.ts +0 -223
- package/src/syncHost.ts +0 -294
- package/types/asyncTasks.d.ts +0 -11
- package/types/asyncTasks.d.ts.map +0 -1
- package/types/createZeroDirectServer.d.ts +0 -80
- package/types/createZeroDirectServer.d.ts.map +0 -1
- package/types/createZeroSQLiteServer.d.ts +0 -12
- package/types/createZeroSQLiteServer.d.ts.map +0 -1
- package/types/createZeroSQLiteServer.test.d.ts +0 -2
- package/types/createZeroSQLiteServer.test.d.ts.map +0 -1
- package/types/createZeroServer.d.ts +0 -18
- package/types/createZeroServer.d.ts.map +0 -1
- package/types/createZeroServer.test.d.ts +0 -2
- package/types/createZeroServer.test.d.ts.map +0 -1
- package/types/createZeroServerCore.d.ts +0 -256
- package/types/createZeroServerCore.d.ts.map +0 -1
- package/types/httpPull/auth.test.d.ts +0 -2
- package/types/httpPull/auth.test.d.ts.map +0 -1
- package/types/httpPull/churn.test.d.ts +0 -2
- package/types/httpPull/churn.test.d.ts.map +0 -1
- package/types/httpPull/completeAck.test.d.ts +0 -2
- package/types/httpPull/completeAck.test.d.ts.map +0 -1
- package/types/httpPull/fixtureServer.d.ts +0 -14
- package/types/httpPull/fixtureServer.d.ts.map +0 -1
- package/types/httpPull/integration.test.d.ts +0 -2
- package/types/httpPull/integration.test.d.ts.map +0 -1
- package/types/httpPull/rebase.test.d.ts +0 -2
- package/types/httpPull/rebase.test.d.ts.map +0 -1
- package/types/httpPull/relations.test.d.ts +0 -2
- package/types/httpPull/relations.test.d.ts.map +0 -1
- package/types/httpPull/testHarness.d.ts +0 -32
- package/types/httpPull/testHarness.d.ts.map +0 -1
- package/types/server.d.ts +0 -5
- package/types/server.d.ts.map +0 -1
- package/types/server.native.d.ts +0 -1
- package/types/server.native.d.ts.map +0 -1
- package/types/sqliteRuntime.d.ts +0 -71
- package/types/sqliteRuntime.d.ts.map +0 -1
- package/types/syncHost.d.ts +0 -42
- package/types/syncHost.d.ts.map +0 -1
- package/types/syncHost.test.d.ts +0 -2
- package/types/syncHost.test.d.ts.map +0 -1
|
@@ -47,7 +47,8 @@ function createMutators({
|
|
|
47
47
|
can,
|
|
48
48
|
models,
|
|
49
49
|
validateMutation,
|
|
50
|
-
mutationValidators
|
|
50
|
+
mutationValidators,
|
|
51
|
+
resolveAuthData
|
|
51
52
|
}) {
|
|
52
53
|
const serverActions = createServerActions?.();
|
|
53
54
|
const modelMutators = (0, import_helpers.mapObject)(models, val => val.mutate || {});
|
|
@@ -57,7 +58,7 @@ function createMutators({
|
|
|
57
58
|
tx,
|
|
58
59
|
// on client, read authData dynamically to avoid stale closure during auth transitions
|
|
59
60
|
// (ZeroProvider recreates Zero instance in useEffect, but mutations can run before that)
|
|
60
|
-
authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
|
|
61
|
+
authData: environment === "client" ? (0, import_state.getAuthData)() : resolveAuthData?.() ?? authData,
|
|
61
62
|
environment,
|
|
62
63
|
can,
|
|
63
64
|
server: environment === "server" ? {
|
|
@@ -138,7 +139,7 @@ function createMutators({
|
|
|
138
139
|
}
|
|
139
140
|
if (validateMutation) {
|
|
140
141
|
await validateMutation({
|
|
141
|
-
authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
|
|
142
|
+
authData: environment === "client" ? (0, import_state.getAuthData)() : resolveAuthData?.() ?? authData,
|
|
142
143
|
tableName,
|
|
143
144
|
mutatorName,
|
|
144
145
|
args: args[1]
|
|
@@ -50,7 +50,8 @@ function createMutators(param) {
|
|
|
50
50
|
can,
|
|
51
51
|
models,
|
|
52
52
|
validateMutation,
|
|
53
|
-
mutationValidators
|
|
53
|
+
mutationValidators,
|
|
54
|
+
resolveAuthData
|
|
54
55
|
} = param;
|
|
55
56
|
var serverActions = createServerActions === null || createServerActions === void 0 ? void 0 : createServerActions();
|
|
56
57
|
var modelMutators = (0, import_helpers.mapObject)(models, function (val) {
|
|
@@ -61,11 +62,12 @@ function createMutators(param) {
|
|
|
61
62
|
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
62
63
|
args[_key - 1] = arguments[_key];
|
|
63
64
|
}
|
|
65
|
+
var _resolveAuthData;
|
|
64
66
|
var mutationContext = {
|
|
65
67
|
tx,
|
|
66
68
|
// on client, read authData dynamically to avoid stale closure during auth transitions
|
|
67
69
|
// (ZeroProvider recreates Zero instance in useEffect, but mutations can run before that)
|
|
68
|
-
authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
|
|
70
|
+
authData: environment === "client" ? (0, import_state.getAuthData)() : (_resolveAuthData = resolveAuthData === null || resolveAuthData === void 0 ? void 0 : resolveAuthData()) !== null && _resolveAuthData !== void 0 ? _resolveAuthData : authData,
|
|
69
71
|
environment,
|
|
70
72
|
can,
|
|
71
73
|
server: environment === "server" ? {
|
|
@@ -156,8 +158,9 @@ function createMutators(param) {
|
|
|
156
158
|
valibot.parse(validator, args[1]);
|
|
157
159
|
}
|
|
158
160
|
if (validateMutation) {
|
|
161
|
+
var _resolveAuthData;
|
|
159
162
|
await validateMutation({
|
|
160
|
-
authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
|
|
163
|
+
authData: environment === "client" ? (0, import_state.getAuthData)() : (_resolveAuthData = resolveAuthData === null || resolveAuthData === void 0 ? void 0 : resolveAuthData()) !== null && _resolveAuthData !== void 0 ? _resolveAuthData : authData,
|
|
161
164
|
tableName,
|
|
162
165
|
mutatorName,
|
|
163
166
|
args: args[1]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_state","import_mutatorContext","param","environment","authData","createServerActions","enqueueTask","can","models","validateMutation","mutationValidators","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","mutationContext","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutId","timeoutPromise","Promise","_","reject","setTimeout","Error","race","clearTimeout","withValidation","tableName","mutatorName","_mutationValidators_tableName","validator","valibot","parse","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","_step1"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_state","import_mutatorContext","param","environment","authData","createServerActions","enqueueTask","can","models","validateMutation","mutationValidators","resolveAuthData","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","_resolveAuthData","mutationContext","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutId","timeoutPromise","Promise","_","reject","setTimeout","Error","race","clearTimeout","withValidation","tableName","mutatorName","_mutationValidators_tableName","validator","valibot","parse","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","_step1"],"sources":["../../../src/helpers/createMutators.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -30,9 +30,12 @@ const ORIGIN = "https://zero-http.local";
|
|
|
30
30
|
const zeros = [];
|
|
31
31
|
const transports = [];
|
|
32
32
|
let storageID = 0;
|
|
33
|
+
let restoreNativeWebSocket;
|
|
33
34
|
(0, import_vitest.afterEach)(async () => {
|
|
34
35
|
while (zeros.length) await zeros.pop()?.close();
|
|
35
36
|
while (transports.length) transports.pop()?.uninstall();
|
|
37
|
+
restoreNativeWebSocket?.();
|
|
38
|
+
restoreNativeWebSocket = void 0;
|
|
36
39
|
import_vitest.vi.useRealTimers();
|
|
37
40
|
});
|
|
38
41
|
(0, import_vitest.describe)("zero-http transport", () => {
|
|
@@ -671,6 +674,76 @@ let storageID = 0;
|
|
|
671
674
|
(0, import_vitest.expect)(lifecycle.filter(event => event.generation === 1 && (event.type === "aborted" || event.type === "close" || event.type === "superseded"))).toHaveLength(1);
|
|
672
675
|
(0, import_vitest.expect)(errors).toEqual([]);
|
|
673
676
|
});
|
|
677
|
+
(0, import_vitest.test)("authenticated wake appends a freshly minted token when the socket opens", async () => {
|
|
678
|
+
const wakeSockets = useFakeNativeWebSocket();
|
|
679
|
+
const getToken = import_vitest.vi.fn(async () => "signed token&scope=one");
|
|
680
|
+
const fetch = unchangedPullFetch();
|
|
681
|
+
const transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
682
|
+
origin: ORIGIN,
|
|
683
|
+
fetch,
|
|
684
|
+
wake: {
|
|
685
|
+
getToken
|
|
686
|
+
}
|
|
687
|
+
});
|
|
688
|
+
transports.push(transport);
|
|
689
|
+
openRawSocketWithMessages();
|
|
690
|
+
await eventually(() => (0, import_vitest.expect)(wakeSockets).toHaveLength(1));
|
|
691
|
+
(0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(1);
|
|
692
|
+
(0, import_vitest.expect)(wakeSockets[0].url).toBe("wss://zero-http.local/wake?clientID=c1&wakeToken=signed%20token%26scope%3Done");
|
|
693
|
+
});
|
|
694
|
+
(0, import_vitest.test)("authenticated wake gets a fresh token for every reconnect attempt", async () => {
|
|
695
|
+
const wakeSockets = useFakeNativeWebSocket();
|
|
696
|
+
const getToken = import_vitest.vi.fn().mockResolvedValueOnce("wake-token-1").mockResolvedValueOnce("wake-token-2");
|
|
697
|
+
const transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
698
|
+
origin: ORIGIN,
|
|
699
|
+
fetch: unchangedPullFetch(),
|
|
700
|
+
wake: {
|
|
701
|
+
getToken
|
|
702
|
+
}
|
|
703
|
+
});
|
|
704
|
+
transports.push(transport);
|
|
705
|
+
openRawSocketWithMessages();
|
|
706
|
+
await eventually(() => (0, import_vitest.expect)(wakeSockets).toHaveLength(1));
|
|
707
|
+
wakeSockets[0].onerror?.();
|
|
708
|
+
await eventually(() => (0, import_vitest.expect)(wakeSockets).toHaveLength(2), 1e3);
|
|
709
|
+
(0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(2);
|
|
710
|
+
(0, import_vitest.expect)(wakeSockets.map(socket => socket.url)).toEqual(["wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-1", "wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-2"]);
|
|
711
|
+
});
|
|
712
|
+
(0, import_vitest.test)("wake token rejection leaves pulls healthy and retries the advisory channel", async () => {
|
|
713
|
+
const wakeSockets = useFakeNativeWebSocket();
|
|
714
|
+
const getToken = import_vitest.vi.fn(async () => {
|
|
715
|
+
throw new Error("mint route unavailable");
|
|
716
|
+
});
|
|
717
|
+
const fetch = unchangedPullFetch();
|
|
718
|
+
const transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
719
|
+
origin: ORIGIN,
|
|
720
|
+
fetch,
|
|
721
|
+
wake: {
|
|
722
|
+
getToken
|
|
723
|
+
}
|
|
724
|
+
});
|
|
725
|
+
transports.push(transport);
|
|
726
|
+
openRawSocketWithMessages();
|
|
727
|
+
await eventually(() => (0, import_vitest.expect)(fetch).toHaveBeenCalled());
|
|
728
|
+
const pullsBeforeManualPull = fetch.mock.calls.length;
|
|
729
|
+
await (0, import_vitest.expect)(transport.pull()).resolves.toBeUndefined();
|
|
730
|
+
(0, import_vitest.expect)(fetch.mock.calls.length).toBeGreaterThan(pullsBeforeManualPull);
|
|
731
|
+
await eventually(() => (0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(2), 1e3);
|
|
732
|
+
(0, import_vitest.expect)(wakeSockets).toHaveLength(0);
|
|
733
|
+
(0, import_vitest.expect)(transport.connections).toBe(1);
|
|
734
|
+
});
|
|
735
|
+
(0, import_vitest.test)("wake true preserves the bare unauthenticated socket URL", async () => {
|
|
736
|
+
const wakeSockets = useFakeNativeWebSocket();
|
|
737
|
+
const transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
738
|
+
origin: ORIGIN,
|
|
739
|
+
fetch: unchangedPullFetch(),
|
|
740
|
+
wake: true
|
|
741
|
+
});
|
|
742
|
+
transports.push(transport);
|
|
743
|
+
openRawSocketWithMessages();
|
|
744
|
+
await eventually(() => (0, import_vitest.expect)(wakeSockets).toHaveLength(1));
|
|
745
|
+
(0, import_vitest.expect)(wakeSockets[0].url).toBe("wss://zero-http.local/wake?clientID=c1");
|
|
746
|
+
});
|
|
674
747
|
(0, import_vitest.test)("non-origin WebSockets pass through to the native implementation", () => {
|
|
675
748
|
const previous = globalThis.WebSocket;
|
|
676
749
|
class NativeWebSocket {
|
|
@@ -816,6 +889,42 @@ function jsonResponse(body, init) {
|
|
|
816
889
|
}
|
|
817
890
|
});
|
|
818
891
|
}
|
|
892
|
+
function unchangedPullFetch() {
|
|
893
|
+
return import_vitest.vi.fn(async (input, init) => {
|
|
894
|
+
const request = recordRequest(input, init);
|
|
895
|
+
(0, import_vitest.expect)(request.path).toBe("/pull");
|
|
896
|
+
return jsonResponse({
|
|
897
|
+
cookie: request.body.cookie,
|
|
898
|
+
unchanged: true
|
|
899
|
+
});
|
|
900
|
+
});
|
|
901
|
+
}
|
|
902
|
+
function useFakeNativeWebSocket() {
|
|
903
|
+
const previous = globalThis.WebSocket;
|
|
904
|
+
const sockets = [];
|
|
905
|
+
class FakeNativeWebSocket {
|
|
906
|
+
static CONNECTING = 0;
|
|
907
|
+
static OPEN = 1;
|
|
908
|
+
static CLOSING = 2;
|
|
909
|
+
static CLOSED = 3;
|
|
910
|
+
url;
|
|
911
|
+
onmessage = null;
|
|
912
|
+
onclose = null;
|
|
913
|
+
onerror = null;
|
|
914
|
+
constructor(url) {
|
|
915
|
+
this.url = String(url);
|
|
916
|
+
sockets.push(this);
|
|
917
|
+
}
|
|
918
|
+
close() {
|
|
919
|
+
this.onclose?.();
|
|
920
|
+
}
|
|
921
|
+
}
|
|
922
|
+
globalThis.WebSocket = FakeNativeWebSocket;
|
|
923
|
+
restoreNativeWebSocket = () => {
|
|
924
|
+
globalThis.WebSocket = previous;
|
|
925
|
+
};
|
|
926
|
+
return sockets;
|
|
927
|
+
}
|
|
819
928
|
async function waitForComplete(view) {
|
|
820
929
|
return new Promise((resolve, reject) => {
|
|
821
930
|
const timeout = setTimeout(() => reject(new Error("timed out waiting for complete query")), 5e3);
|
|
@@ -33,6 +33,20 @@ function _class_call_check(instance, Constructor) {
|
|
|
33
33
|
throw new TypeError("Cannot call a class as a function");
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
+
function _defineProperties(target, props) {
|
|
37
|
+
for (var i = 0; i < props.length; i++) {
|
|
38
|
+
var descriptor = props[i];
|
|
39
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
40
|
+
descriptor.configurable = true;
|
|
41
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
42
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
46
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
47
|
+
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
48
|
+
return Constructor;
|
|
49
|
+
}
|
|
36
50
|
function _define_property(obj, key, value) {
|
|
37
51
|
if (key in obj) {
|
|
38
52
|
Object.defineProperty(obj, key, {
|
|
@@ -50,10 +64,13 @@ var ORIGIN = "https://zero-http.local";
|
|
|
50
64
|
var zeros = [];
|
|
51
65
|
var transports = [];
|
|
52
66
|
var storageID = 0;
|
|
67
|
+
var restoreNativeWebSocket;
|
|
53
68
|
(0, import_vitest.afterEach)(async function () {
|
|
54
69
|
var _zeros_pop, _transports_pop;
|
|
55
70
|
while (zeros.length) await ((_zeros_pop = zeros.pop()) === null || _zeros_pop === void 0 ? void 0 : _zeros_pop.close());
|
|
56
71
|
while (transports.length) (_transports_pop = transports.pop()) === null || _transports_pop === void 0 ? void 0 : _transports_pop.uninstall();
|
|
72
|
+
restoreNativeWebSocket === null || restoreNativeWebSocket === void 0 ? void 0 : restoreNativeWebSocket();
|
|
73
|
+
restoreNativeWebSocket = void 0;
|
|
57
74
|
import_vitest.vi.useRealTimers();
|
|
58
75
|
});
|
|
59
76
|
(0, import_vitest.describe)("zero-http transport", function () {
|
|
@@ -806,6 +823,93 @@ var storageID = 0;
|
|
|
806
823
|
})).toHaveLength(1);
|
|
807
824
|
(0, import_vitest.expect)(errors).toEqual([]);
|
|
808
825
|
});
|
|
826
|
+
(0, import_vitest.test)("authenticated wake appends a freshly minted token when the socket opens", async function () {
|
|
827
|
+
var wakeSockets = useFakeNativeWebSocket();
|
|
828
|
+
var getToken = import_vitest.vi.fn(async function () {
|
|
829
|
+
return "signed token&scope=one";
|
|
830
|
+
});
|
|
831
|
+
var fetch = unchangedPullFetch();
|
|
832
|
+
var transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
833
|
+
origin: ORIGIN,
|
|
834
|
+
fetch,
|
|
835
|
+
wake: {
|
|
836
|
+
getToken
|
|
837
|
+
}
|
|
838
|
+
});
|
|
839
|
+
transports.push(transport);
|
|
840
|
+
openRawSocketWithMessages();
|
|
841
|
+
await eventually(function () {
|
|
842
|
+
return (0, import_vitest.expect)(wakeSockets).toHaveLength(1);
|
|
843
|
+
});
|
|
844
|
+
(0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(1);
|
|
845
|
+
(0, import_vitest.expect)(wakeSockets[0].url).toBe("wss://zero-http.local/wake?clientID=c1&wakeToken=signed%20token%26scope%3Done");
|
|
846
|
+
});
|
|
847
|
+
(0, import_vitest.test)("authenticated wake gets a fresh token for every reconnect attempt", async function () {
|
|
848
|
+
var _wakeSockets__onerror, _wakeSockets_;
|
|
849
|
+
var wakeSockets = useFakeNativeWebSocket();
|
|
850
|
+
var getToken = import_vitest.vi.fn().mockResolvedValueOnce("wake-token-1").mockResolvedValueOnce("wake-token-2");
|
|
851
|
+
var transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
852
|
+
origin: ORIGIN,
|
|
853
|
+
fetch: unchangedPullFetch(),
|
|
854
|
+
wake: {
|
|
855
|
+
getToken
|
|
856
|
+
}
|
|
857
|
+
});
|
|
858
|
+
transports.push(transport);
|
|
859
|
+
openRawSocketWithMessages();
|
|
860
|
+
await eventually(function () {
|
|
861
|
+
return (0, import_vitest.expect)(wakeSockets).toHaveLength(1);
|
|
862
|
+
});
|
|
863
|
+
(_wakeSockets__onerror = (_wakeSockets_ = wakeSockets[0]).onerror) === null || _wakeSockets__onerror === void 0 ? void 0 : _wakeSockets__onerror.call(_wakeSockets_);
|
|
864
|
+
await eventually(function () {
|
|
865
|
+
return (0, import_vitest.expect)(wakeSockets).toHaveLength(2);
|
|
866
|
+
}, 1e3);
|
|
867
|
+
(0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(2);
|
|
868
|
+
(0, import_vitest.expect)(wakeSockets.map(function (socket) {
|
|
869
|
+
return socket.url;
|
|
870
|
+
})).toEqual(["wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-1", "wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-2"]);
|
|
871
|
+
});
|
|
872
|
+
(0, import_vitest.test)("wake token rejection leaves pulls healthy and retries the advisory channel", async function () {
|
|
873
|
+
var wakeSockets = useFakeNativeWebSocket();
|
|
874
|
+
var getToken = import_vitest.vi.fn(async function () {
|
|
875
|
+
throw new Error("mint route unavailable");
|
|
876
|
+
});
|
|
877
|
+
var fetch = unchangedPullFetch();
|
|
878
|
+
var transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
879
|
+
origin: ORIGIN,
|
|
880
|
+
fetch,
|
|
881
|
+
wake: {
|
|
882
|
+
getToken
|
|
883
|
+
}
|
|
884
|
+
});
|
|
885
|
+
transports.push(transport);
|
|
886
|
+
openRawSocketWithMessages();
|
|
887
|
+
await eventually(function () {
|
|
888
|
+
return (0, import_vitest.expect)(fetch).toHaveBeenCalled();
|
|
889
|
+
});
|
|
890
|
+
var pullsBeforeManualPull = fetch.mock.calls.length;
|
|
891
|
+
await (0, import_vitest.expect)(transport.pull()).resolves.toBeUndefined();
|
|
892
|
+
(0, import_vitest.expect)(fetch.mock.calls.length).toBeGreaterThan(pullsBeforeManualPull);
|
|
893
|
+
await eventually(function () {
|
|
894
|
+
return (0, import_vitest.expect)(getToken).toHaveBeenCalledTimes(2);
|
|
895
|
+
}, 1e3);
|
|
896
|
+
(0, import_vitest.expect)(wakeSockets).toHaveLength(0);
|
|
897
|
+
(0, import_vitest.expect)(transport.connections).toBe(1);
|
|
898
|
+
});
|
|
899
|
+
(0, import_vitest.test)("wake true preserves the bare unauthenticated socket URL", async function () {
|
|
900
|
+
var wakeSockets = useFakeNativeWebSocket();
|
|
901
|
+
var transport = (0, import_httpPullTransport.installHttpPullTransport)({
|
|
902
|
+
origin: ORIGIN,
|
|
903
|
+
fetch: unchangedPullFetch(),
|
|
904
|
+
wake: true
|
|
905
|
+
});
|
|
906
|
+
transports.push(transport);
|
|
907
|
+
openRawSocketWithMessages();
|
|
908
|
+
await eventually(function () {
|
|
909
|
+
return (0, import_vitest.expect)(wakeSockets).toHaveLength(1);
|
|
910
|
+
});
|
|
911
|
+
(0, import_vitest.expect)(wakeSockets[0].url).toBe("wss://zero-http.local/wake?clientID=c1");
|
|
912
|
+
});
|
|
809
913
|
(0, import_vitest.test)("non-origin WebSockets pass through to the native implementation", function () {
|
|
810
914
|
var previous = globalThis.WebSocket;
|
|
811
915
|
var NativeWebSocket = function NativeWebSocket2(url, protocols) {
|
|
@@ -962,6 +1066,50 @@ function jsonResponse(body, init) {
|
|
|
962
1066
|
}
|
|
963
1067
|
});
|
|
964
1068
|
}
|
|
1069
|
+
function unchangedPullFetch() {
|
|
1070
|
+
return import_vitest.vi.fn(async function (input, init) {
|
|
1071
|
+
var request = recordRequest(input, init);
|
|
1072
|
+
(0, import_vitest.expect)(request.path).toBe("/pull");
|
|
1073
|
+
return jsonResponse({
|
|
1074
|
+
cookie: request.body.cookie,
|
|
1075
|
+
unchanged: true
|
|
1076
|
+
});
|
|
1077
|
+
});
|
|
1078
|
+
}
|
|
1079
|
+
function useFakeNativeWebSocket() {
|
|
1080
|
+
var previous = globalThis.WebSocket;
|
|
1081
|
+
var sockets = [];
|
|
1082
|
+
var FakeNativeWebSocket = /* @__PURE__ */function () {
|
|
1083
|
+
"use strict";
|
|
1084
|
+
|
|
1085
|
+
function FakeNativeWebSocket2(url) {
|
|
1086
|
+
_class_call_check(this, FakeNativeWebSocket2);
|
|
1087
|
+
_define_property(this, "url", void 0);
|
|
1088
|
+
_define_property(this, "onmessage", null);
|
|
1089
|
+
_define_property(this, "onclose", null);
|
|
1090
|
+
_define_property(this, "onerror", null);
|
|
1091
|
+
this.url = String(url);
|
|
1092
|
+
sockets.push(this);
|
|
1093
|
+
}
|
|
1094
|
+
_create_class(FakeNativeWebSocket2, [{
|
|
1095
|
+
key: "close",
|
|
1096
|
+
value: function close() {
|
|
1097
|
+
var _this_onclose, _this;
|
|
1098
|
+
(_this_onclose = (_this = this).onclose) === null || _this_onclose === void 0 ? void 0 : _this_onclose.call(_this);
|
|
1099
|
+
}
|
|
1100
|
+
}]);
|
|
1101
|
+
return FakeNativeWebSocket2;
|
|
1102
|
+
}();
|
|
1103
|
+
_define_property(FakeNativeWebSocket, "CONNECTING", 0);
|
|
1104
|
+
_define_property(FakeNativeWebSocket, "OPEN", 1);
|
|
1105
|
+
_define_property(FakeNativeWebSocket, "CLOSING", 2);
|
|
1106
|
+
_define_property(FakeNativeWebSocket, "CLOSED", 3);
|
|
1107
|
+
globalThis.WebSocket = FakeNativeWebSocket;
|
|
1108
|
+
restoreNativeWebSocket = function () {
|
|
1109
|
+
globalThis.WebSocket = previous;
|
|
1110
|
+
};
|
|
1111
|
+
return sockets;
|
|
1112
|
+
}
|
|
965
1113
|
async function waitForComplete(view) {
|
|
966
1114
|
return new Promise(function (resolve, reject) {
|
|
967
1115
|
var timeout = setTimeout(function () {
|
|
@@ -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_find","endsWith","installHttpPullTransport","origin","pullOrigin","pushOrigin","some","url","_requests_at","socket","openRawSocketWithMessages","authToken","send","JSON","stringify","auth","pull","at","firstPushStarted","defer","releaseFirstPush","pushRequests","lifecycle","mutationIDs","map","resolve","promise","event","messages","message","pushBody","sleep","toHaveLength","flatMap","param","pushFrameCount","mutationCount","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","emission","zeroLogs","failPull","failPush","logSink","log","_level","context","_len","arguments","Array","_key","catch","opens","generation","activeGeneration","arg","includes","useFakeTimers","pullCount","first","wsid","advanceTimersByTimeAsync","readyState","CLOSED","delayedOpened","delayedClosed","delayed","attemptStartedAt","performance","now","addEventListener","aborted","pageID","transportID","zeroInstanceID","connectionAttemptID","socketID","code","attemptAgeMs","toBeGreaterThanOrEqual","connectStart","Date","errors","attachStockLifecycle","stale","toContainEqual","objectContaining","previous","globalThis","WebSocket","NativeWebSocket","NativeWebSocket2","protocols","toBeInstanceOf","ensureHttpPullTransport","resetModules","reloaded","second","toMatch","RegExp"],"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","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","ORIGIN","zeros","transports","storageID","restoreNativeWebSocket","afterEach","_zeros_pop","_transports_pop","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_find","endsWith","installHttpPullTransport","origin","pullOrigin","pushOrigin","some","url","_requests_at","socket","openRawSocketWithMessages","authToken","send","JSON","stringify","auth","pull","at","firstPushStarted","defer","releaseFirstPush","pushRequests","lifecycle","mutationIDs","map","resolve","promise","event","messages","message","pushBody","sleep","toHaveLength","flatMap","param","pushFrameCount","mutationCount","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","emission","zeroLogs","failPull","failPush","logSink","log","_level","context","_len","arguments","Array","_key","catch","opens","generation","activeGeneration","arg","includes","useFakeTimers","pullCount","first","wsid","advanceTimersByTimeAsync","readyState","CLOSED","delayedOpened","delayedClosed","delayed","attemptStartedAt","performance","now","addEventListener","aborted","pageID","transportID","zeroInstanceID","connectionAttemptID","socketID","code","attemptAgeMs","toBeGreaterThanOrEqual","connectStart","Date","errors","attachStockLifecycle","stale","toContainEqual","objectContaining","wakeSockets","useFakeNativeWebSocket","getToken","unchangedPullFetch","wake","toHaveBeenCalledTimes","_wakeSockets__onerror","_wakeSockets_","mockResolvedValueOnce","onerror","call","toHaveBeenCalled","pullsBeforeManualPull","mock","calls","resolves","toBeUndefined","previous","globalThis","WebSocket","NativeWebSocket","NativeWebSocket2","protocols","toBeInstanceOf","ensureHttpPullTransport","resetModules","reloaded","second","toMatch","RegExp"],"sources":["../../../src/httpPull/transport.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|