on-zero 0.7.2 → 0.7.3-1784533014336
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/index.cjs +0 -1
- package/dist/cjs/index.native.js +0 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/orez.cjs +231 -0
- package/dist/cjs/orez.native.js +324 -0
- package/dist/cjs/orez.native.js.map +1 -0
- package/dist/cjs/orez.test.cjs +268 -0
- package/dist/cjs/orez.test.native.js +288 -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/cli.native.js +1 -1
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/combineZeroClients.native.js +2 -2
- package/dist/esm/combineZeroClients.native.js.map +1 -1
- package/dist/esm/createPermissions.native.js +4 -4
- package/dist/esm/createPermissions.native.js.map +1 -1
- package/dist/esm/createSchemaFromDrizzle.native.js +1 -1
- package/dist/esm/createSchemaFromDrizzle.native.js.map +1 -1
- package/dist/esm/createUseQuery.native.js +2 -2
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createUseQueryDirect.native.js +2 -2
- package/dist/esm/createUseQueryDirect.native.js.map +1 -1
- package/dist/esm/createZeroClient.authData.test.native.js +2 -2
- package/dist/esm/createZeroClient.authData.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js +1 -1
- package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
- package/dist/esm/createZeroClient.native.js +15 -15
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js +1 -1
- package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
- package/dist/esm/generate-helpers.native.js.map +1 -1
- package/dist/esm/generate-lite.native.js +1 -1
- package/dist/esm/generate-lite.native.js.map +1 -1
- package/dist/esm/generate-lite.test.native.js +1 -1
- package/dist/esm/generate-lite.test.native.js.map +1 -1
- package/dist/esm/generate.native.js +1 -1
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.native.js +1 -1
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/batchQuery.native.js.map +1 -1
- package/dist/esm/helpers/clearZeroClientData.native.js.map +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 +8 -5
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.test.native.js +1 -1
- package/dist/esm/helpers/createMutators.test.native.js.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/esm/helpers/getAuth.native.js +3 -3
- package/dist/esm/helpers/getAuth.native.js.map +1 -1
- package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
- package/dist/esm/helpers/queryContext.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js +1 -1
- package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
- package/dist/esm/helpers/showZeroClientError.native.js +1 -1
- package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
- package/dist/esm/helpers/useMutation.native.js.map +1 -1
- package/dist/esm/helpers/useMutation.test.native.js +1 -1
- package/dist/esm/helpers/useMutation.test.native.js.map +1 -1
- package/dist/esm/helpers/useZeroDebug.native.js +1 -1
- package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
- package/dist/esm/httpPull/fixtureSchema.native.js.map +1 -1
- package/dist/esm/httpPull/transport.test.native.js +3 -3
- package/dist/esm/httpPull/transport.test.native.js.map +1 -1
- 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 +22 -23
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/instanceRegistry.native.js +1 -1
- package/dist/esm/instanceRegistry.native.js.map +1 -1
- package/dist/esm/modelRegistry.native.js.map +1 -1
- package/dist/esm/multi.native.js +3 -3
- package/dist/esm/multi.native.js.map +1 -1
- package/dist/esm/multiInstance.test.native.js +8 -8
- package/dist/esm/multiInstance.test.native.js.map +1 -1
- package/dist/esm/multiInstanceNested.test.native.js +3 -3
- package/dist/esm/multiInstanceNested.test.native.js.map +1 -1
- package/dist/esm/multiPartition.test.native.js +1 -1
- package/dist/esm/multiPartition.test.native.js.map +1 -1
- package/dist/esm/mutations.native.js +1 -1
- package/dist/esm/mutations.native.js.map +1 -1
- package/dist/esm/mutations.test.native.js +2 -2
- package/dist/esm/mutations.test.native.js.map +1 -1
- package/dist/esm/orez.mjs +205 -0
- package/dist/esm/orez.mjs.map +1 -0
- package/dist/esm/orez.native.js +295 -0
- package/dist/esm/orez.native.js.map +1 -0
- package/dist/esm/orez.test.mjs +245 -0
- package/dist/esm/orez.test.mjs.map +1 -0
- package/dist/esm/orez.test.native.js +262 -0
- package/dist/esm/orez.test.native.js.map +1 -0
- package/dist/esm/provideZero.hydration.test.native.js +1 -1
- package/dist/esm/provideZero.hydration.test.native.js.map +1 -1
- package/dist/esm/queryRegistry.native.js.map +1 -1
- package/dist/esm/resolveQuery.native.js +1 -1
- package/dist/esm/resolveQuery.native.js.map +1 -1
- package/dist/esm/run.mjs +1 -1
- package/dist/esm/run.mjs.map +1 -1
- package/dist/esm/run.native.js +5 -5
- package/dist/esm/run.native.js.map +1 -1
- package/dist/esm/serverWhere.native.js +1 -1
- package/dist/esm/serverWhere.native.js.map +1 -1
- package/dist/esm/serverWhere.test.native.js +3 -3
- package/dist/esm/serverWhere.test.native.js.map +1 -1
- package/dist/esm/state.mjs +1 -1
- package/dist/esm/state.native.js +1 -1
- package/dist/esm/state.native.js.map +1 -1
- package/dist/esm/testSetup.native.js.map +1 -1
- package/dist/esm/types.native.js.map +1 -1
- package/dist/esm/usePermission.test.native.js +3 -3
- package/dist/esm/usePermission.test.native.js.map +1 -1
- package/dist/esm/useQuery.empty.test.native.js +2 -2
- package/dist/esm/useQuery.empty.test.native.js.map +1 -1
- package/dist/esm/useQuery.ssr.test.native.js +2 -2
- package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
- package/dist/esm/vite-plugin.native.js +1 -1
- package/dist/esm/vite-plugin.native.js.map +1 -1
- package/dist/esm/where.native.js +2 -2
- package/dist/esm/where.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 +2 -2
- package/dist/esm/zeroRunner.native.js.map +1 -1
- package/dist/esm/zql.native.js +1 -1
- package/dist/esm/zql.native.js.map +1 -1
- package/package.json +7 -23
- package/readme.md +40 -65
- package/src/createZeroClient.tsx +1 -1
- package/src/helpers/createMutators.ts +6 -2
- package/src/index.ts +0 -1
- package/src/orez.test.ts +266 -0
- package/src/orez.ts +344 -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/index.d.ts +0 -1
- package/types/index.d.ts.map +1 -1
- package/types/orez.d.ts +54 -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 -595
- package/dist/cjs/createZeroSQLiteServer.test.native.js +0 -647
- 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 -596
- package/dist/esm/createZeroSQLiteServer.test.mjs.map +0 -1
- package/dist/esm/createZeroSQLiteServer.test.native.js +0 -645
- 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 -614
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["afterEach","describe","expect","test","vi","observeMutation","onMutationError","deferred","resolve","reject","promise","Promise","res","rej","fakeResult","client","server","result","SUCCESS","type","appError","message","error","restoreAllMocks","errors","dispose","e","push","done","toEqual","local","global","scope","kind","details","Error","toHaveLength","toMatchObject"],"sources":["
|
|
1
|
+
{"version":3,"names":["afterEach","describe","expect","test","vi","observeMutation","onMutationError","deferred","resolve","reject","promise","Promise","res","rej","fakeResult","client","server","result","SUCCESS","type","appError","message","error","restoreAllMocks","errors","dispose","e","push","done","toEqual","local","global","scope","kind","details","Error","toHaveLength","toMatchObject","resolves","toBeUndefined","spy","spyOn","console","mockImplementation","toHaveBeenCalledTimes","seen"],"sources":["useMutation.test.native.js"],"sourcesContent":["import { afterEach, describe, expect, test, vi } from \"vitest\";\nimport { observeMutation, onMutationError } from \"./useMutation\";\nfunction deferred() {\n var resolve;\n var reject;\n var promise = new Promise(function(res, rej) {\n resolve = res;\n reject = rej;\n });\n return {\n promise,\n resolve,\n reject\n };\n}\nfunction fakeResult() {\n var client = deferred();\n var server = deferred();\n return {\n result: {\n client: client.promise,\n server: server.promise\n },\n client,\n server\n };\n}\nvar SUCCESS = {\n type: \"success\"\n};\nvar appError = function(message) {\n return {\n type: \"error\",\n error: {\n type: \"app\",\n message\n }\n };\n};\nafterEach(function() {\n vi.restoreAllMocks();\n});\ndescribe(\"observeMutation\", function() {\n test(\"success on both phases reports nothing\", async function() {\n var { result, client, server } = fakeResult();\n var errors = [];\n var dispose = onMutationError(function(e) {\n return errors.push(e);\n });\n var done = observeMutation(result, function(e) {\n return errors.push(e);\n });\n client.resolve(SUCCESS);\n server.resolve(SUCCESS);\n await done;\n expect(errors).toEqual([]);\n dispose();\n });\n test(\"a server rejection surfaces a normalized error locally and globally\", async function() {\n var { result, client, server } = fakeResult();\n var local = [];\n var global = [];\n var dispose = onMutationError(function(e) {\n return global.push(e);\n });\n var done = observeMutation(result, function(e) {\n return local.push(e);\n });\n client.resolve(SUCCESS);\n server.resolve(appError(\"Could not create post.\"));\n await done;\n expect(local).toEqual([\n {\n scope: \"server\",\n kind: \"app\",\n message: \"Could not create post.\",\n details: void 0\n }\n ]);\n expect(global).toEqual(local);\n dispose();\n });\n test(\"client + server both failing emits to the global catch only once\", async function() {\n var { result, client, server } = fakeResult();\n var global = [];\n var dispose = onMutationError(function(e) {\n return global.push(e);\n });\n var done = observeMutation(result);\n client.reject(new Error(\"boom\"));\n server.reject(new Error(\"boom\"));\n await done;\n expect(global).toHaveLength(1);\n expect(global[0]).toMatchObject({\n scope: \"client\",\n kind: \"zero\",\n message: \"boom\"\n });\n dispose();\n });\n test(\"never rejects even when both phases reject\", async function() {\n var { result, client, server } = fakeResult();\n client.reject(new Error(\"x\"));\n server.reject(new Error(\"x\"));\n await expect(observeMutation(result)).resolves.toBeUndefined();\n });\n test(\"with no listener registered it falls back to console.error in dev\", async function() {\n var spy = vi.spyOn(console, \"error\").mockImplementation(function() {\n });\n var { result, client, server } = fakeResult();\n var done = observeMutation(result);\n client.resolve(SUCCESS);\n server.resolve(appError(\"denied\"));\n await done;\n expect(spy).toHaveBeenCalledTimes(1);\n });\n});\ndescribe(\"onMutationError\", function() {\n test(\"dispose stops delivery\", async function() {\n var seen = [];\n var dispose = onMutationError(function(e) {\n return seen.push(e);\n });\n dispose();\n var { result, client, server } = fakeResult();\n var done = observeMutation(result);\n client.resolve(SUCCESS);\n server.resolve(appError(\"denied\"));\n await done;\n expect(seen).toEqual([]);\n });\n});\n//# sourceMappingURL=useMutation.test.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getCurrentComponentStack } from "@take-out/helpers";
|
|
2
2
|
import { useEffect, useId } from "react";
|
|
3
|
-
import { prettyFormatZeroQuery } from "./prettyFormatZeroQuery
|
|
3
|
+
import { prettyFormatZeroQuery } from "./prettyFormatZeroQuery";
|
|
4
4
|
var activeQueries = /* @__PURE__ */new Map();
|
|
5
5
|
var astHistoryByComponent = /* @__PURE__ */new Map();
|
|
6
6
|
var filterLogs = function (table) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getCurrentComponentStack","useEffect","useId","prettyFormatZeroQuery","activeQueries","Map","astHistoryByComponent","filterLogs","table","COLLAPSED","AST_CHANGE_THRESHOLD","MAX_AST_HISTORY","useZeroDebug","query","options","results","_query__completeAst","_query__completeAst1","astObject","call","_astObject_table","ast","JSON","stringify","queryDisabled","enabled","stack","Error","isPermissionQuery","includes","id","num","get","shouldLog","set","console","groupCollapsed","info","trace","groupEnd","history","asts","changeCount","currentAst","lastAst","length","push","shift","warn","componentId","recentAsts"],"sources":["
|
|
1
|
+
{"version":3,"names":["getCurrentComponentStack","useEffect","useId","prettyFormatZeroQuery","activeQueries","Map","astHistoryByComponent","filterLogs","table","COLLAPSED","AST_CHANGE_THRESHOLD","MAX_AST_HISTORY","useZeroDebug","query","options","results","_query__completeAst","_query__completeAst1","astObject","call","_astObject_table","ast","JSON","stringify","queryDisabled","enabled","stack","Error","isPermissionQuery","includes","id","num","get","shouldLog","set","console","groupCollapsed","info","trace","groupEnd","history","asts","changeCount","currentAst","lastAst","length","push","shift","warn","componentId","recentAsts","delete"],"sources":["useZeroDebug.native.js"],"sourcesContent":["import { getCurrentComponentStack } from \"@take-out/helpers\";\nimport { useEffect, useId } from \"react\";\nimport { prettyFormatZeroQuery } from \"./prettyFormatZeroQuery\";\nvar activeQueries = /* @__PURE__ */ new Map();\nvar astHistoryByComponent = /* @__PURE__ */ new Map();\nvar filterLogs = function(table) {\n return false;\n};\nvar COLLAPSED = true;\nvar AST_CHANGE_THRESHOLD = 4;\nvar MAX_AST_HISTORY = 10;\nvar useZeroDebug = function(query, options, results) {\n var _query__completeAst;\n var _query__completeAst1;\n var astObject = (_query__completeAst1 = (_query__completeAst = query[\"_completeAst\"]) === null || _query__completeAst === void 0 ? void 0 : _query__completeAst.call(query)) !== null && _query__completeAst1 !== void 0 ? _query__completeAst1 : query[\"ast\"];\n var _astObject_table;\n var table = (_astObject_table = astObject === null || astObject === void 0 ? void 0 : astObject.table) !== null && _astObject_table !== void 0 ? _astObject_table : \"unknown\";\n var ast = JSON.stringify(astObject, null, 2);\n var queryDisabled = !options || (options === null || options === void 0 ? void 0 : options.enabled) === false;\n var enabled = !queryDisabled && filterLogs(table);\n var stack = new Error().stack;\n var isPermissionQuery = stack === null || stack === void 0 ? void 0 : stack.includes(`usePermission.ts`);\n var id = useId();\n var num = activeQueries.get(ast) || 0;\n var shouldLog = enabled && num === 0;\n if (enabled) {\n activeQueries.set(ast, num + 1);\n if (shouldLog) {\n if (COLLAPSED) {\n console.groupCollapsed(`${isPermissionQuery ? `\\u{1F46E}\\u200D\\u2642\\uFE0F` : `\\u2728`}${prettyFormatZeroQuery(query, \"minimal\")}`);\n console.info(id, prettyFormatZeroQuery(query, \"full\"));\n console.info(\"cached result\", results);\n console.trace();\n console.groupEnd();\n } else {\n console.info(`\\u2728`, prettyFormatZeroQuery(query, \"full\"));\n }\n }\n }\n useEffect(function() {\n if (!enabled) return;\n var history = astHistoryByComponent.get(id) || {\n asts: [],\n changeCount: 0\n };\n var currentAst = ast;\n var lastAst = history.asts[history.asts.length - 1];\n if (currentAst !== lastAst) {\n history.asts.push(currentAst);\n if (history.asts.length > MAX_AST_HISTORY) {\n history.asts.shift();\n }\n history.changeCount++;\n astHistoryByComponent.set(id, history);\n if (history.changeCount > AST_CHANGE_THRESHOLD) {\n console.warn(`\\u26A0\\uFE0F AST changed ${history.changeCount} times for component.\n - id: ${id}\n - stack: ${getCurrentComponentStack(\"short\")}\n - table: ${table}`, {\n componentId: id,\n table,\n changeCount: history.changeCount,\n recentAsts: history.asts\n });\n }\n }\n }, [\n id,\n ast,\n table,\n enabled\n ]);\n useEffect(function() {\n if (!enabled) return;\n return function() {\n activeQueries.set(ast, activeQueries.get(ast) - 1);\n };\n }, [\n ast,\n enabled\n ]);\n useEffect(function() {\n return function() {\n astHistoryByComponent.delete(id);\n };\n }, [\n id\n ]);\n};\nexport {\n useZeroDebug\n};\n//# sourceMappingURL=useZeroDebug.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSchema","relationships","string","table","user","columns","id","name","primaryKey","project","ownerId","member","projectId","userId","zeroHttpFixtureSchema","tables","param","many","members","sourceField","destField","destSchema","enableLegacyQueries","zeroHttpFixtureMutators","create","tx","args","mutate","insert","rename","update"],"sources":["
|
|
1
|
+
{"version":3,"names":["createSchema","relationships","string","table","user","columns","id","name","primaryKey","project","ownerId","member","projectId","userId","zeroHttpFixtureSchema","tables","param","many","members","sourceField","destField","destSchema","enableLegacyQueries","zeroHttpFixtureMutators","create","tx","args","mutate","insert","rename","update","add","remove","delete"],"sources":["fixtureSchema.native.js"],"sourcesContent":["import { createSchema, relationships, string, table } from \"@rocicorp/zero\";\nvar user = table(\"user\").columns({\n id: string(),\n name: string()\n}).primaryKey(\"id\");\nvar project = table(\"project\").columns({\n id: string(),\n ownerId: string(),\n name: string()\n}).primaryKey(\"id\");\nvar member = table(\"member\").columns({\n id: string(),\n projectId: string(),\n userId: string()\n}).primaryKey(\"id\");\nvar zeroHttpFixtureSchema = createSchema({\n tables: [\n user,\n project,\n member\n ],\n relationships: [\n relationships(project, function(param) {\n var { many } = param;\n return {\n members: many({\n sourceField: [\n \"id\"\n ],\n destField: [\n \"projectId\"\n ],\n destSchema: member\n })\n };\n })\n ],\n enableLegacyQueries: true\n});\nvar zeroHttpFixtureMutators = {\n project: {\n create: async function(tx, args) {\n await tx.mutate.project.insert(args);\n },\n rename: async function(tx, args) {\n await tx.mutate.project.update(args);\n }\n },\n member: {\n add: async function(tx, args) {\n await tx.mutate.member.insert(args);\n },\n remove: async function(tx, args) {\n await tx.mutate.member.delete({\n id: args.id\n });\n }\n }\n};\nexport {\n zeroHttpFixtureMutators,\n zeroHttpFixtureSchema\n};\n//# sourceMappingURL=fixtureSchema.js.map\n"],"mappings":"AAAA,SAASA,YAAY,EAAEC,aAAa,EAAEC,MAAM,EAAEC,KAAK,QAAQ,gBAAgB;AAC3E,IAAIC,IAAI,GAAGD,KAAK,CAAC,MAAM,CAAC,CAACE,OAAO,CAAC;EAC/BC,EAAE,EAAEJ,MAAM,CAAC,CAAC;EACZK,IAAI,EAAEL,MAAM,CAAC;AACf,CAAC,CAAC,CAACM,UAAU,CAAC,IAAI,CAAC;AACnB,IAAIC,OAAO,GAAGN,KAAK,CAAC,SAAS,CAAC,CAACE,OAAO,CAAC;EACrCC,EAAE,EAAEJ,MAAM,CAAC,CAAC;EACZQ,OAAO,EAAER,MAAM,CAAC,CAAC;EACjBK,IAAI,EAAEL,MAAM,CAAC;AACf,CAAC,CAAC,CAACM,UAAU,CAAC,IAAI,CAAC;AACnB,IAAIG,MAAM,GAAGR,KAAK,CAAC,QAAQ,CAAC,CAACE,OAAO,CAAC;EACnCC,EAAE,EAAEJ,MAAM,CAAC,CAAC;EACZU,SAAS,EAAEV,MAAM,CAAC,CAAC;EACnBW,MAAM,EAAEX,MAAM,CAAC;AACjB,CAAC,CAAC,CAACM,UAAU,CAAC,IAAI,CAAC;AACnB,IAAIM,qBAAqB,GAAGd,YAAY,CAAC;EACvCe,MAAM,EAAE,CACNX,IAAI,EACJK,OAAO,EACPE,MAAM,CACP;EACDV,aAAa,EAAE,CACbA,aAAa,CAACQ,OAAO,EAAE,UAASO,KAAK,EAAE;IACrC,IAAI;MAAEC;IAAK,CAAC,GAAGD,KAAK;IACpB,OAAO;MACLE,OAAO,EAAED,IAAI,CAAC;QACZE,WAAW,EAAE,CACX,IAAI,CACL;QACDC,SAAS,EAAE,CACT,WAAW,CACZ;QACDC,UAAU,EAAEV;MACd,CAAC;IACH,CAAC;EACH,CAAC,CAAC,CACH;EACDW,mBAAmB,EAAE;AACvB,CAAC,CAAC;AACF,IAAIC,uBAAuB,GAAG;EAC5Bd,OAAO,EAAE;IACPe,MAAM,EAAE,eAAAA,CAAeC,EAAE,EAAEC,IAAI,EAAE;MAC/B,MAAMD,EAAE,CAACE,MAAM,CAAClB,OAAO,CAACmB,MAAM,CAACF,IAAI,CAAC;IACtC,CAAC;IACDG,MAAM,EAAE,eAAAA,CAAeJ,EAAE,EAAEC,IAAI,EAAE;MAC/B,MAAMD,EAAE,CAACE,MAAM,CAAClB,OAAO,CAACqB,MAAM,CAACJ,IAAI,CAAC;IACtC;EACF,CAAC;EACDf,MAAM,EAAE;IACNoB,GAAG,EAAE,eAAAA,CAAeN,EAAE,EAAEC,IAAI,EAAE;MAC5B,MAAMD,EAAE,CAACE,MAAM,CAAChB,MAAM,CAACiB,MAAM,CAACF,IAAI,CAAC;IACrC,CAAC;IACDM,MAAM,EAAE,eAAAA,CAAeP,EAAE,EAAEC,IAAI,EAAE;MAC/B,MAAMD,EAAE,CAACE,MAAM,CAAChB,MAAM,CAACsB,MAAM,CAAC;QAC5B3B,EAAE,EAAEoB,IAAI,CAACpB;MACX,CAAC,CAAC;IACJ;EACF;AACF,CAAC;AACD,SACEiB,uBAAuB,EACvBT,qBAAqB","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Zero } from "@rocicorp/zero";
|
|
2
2
|
import { afterEach, describe, expect, test, vi } from "vitest";
|
|
3
|
-
import { zeroHttpFixtureMutators, zeroHttpFixtureSchema } from "./fixtureSchema
|
|
4
|
-
import { ensureHttpPullTransport, installHttpPullTransport } from "../httpPullTransport
|
|
3
|
+
import { zeroHttpFixtureMutators, zeroHttpFixtureSchema } from "./fixtureSchema";
|
|
4
|
+
import { ensureHttpPullTransport, installHttpPullTransport } from "../httpPullTransport";
|
|
5
5
|
function _class_call_check(instance, Constructor) {
|
|
6
6
|
if (!(instance instanceof Constructor)) {
|
|
7
7
|
throw new TypeError("Cannot call a class as a function");
|
|
@@ -918,7 +918,7 @@ describe("zero-http transport", function () {
|
|
|
918
918
|
fetch: vi.fn()
|
|
919
919
|
});
|
|
920
920
|
vi.resetModules();
|
|
921
|
-
var reloaded = await import("../httpPullTransport
|
|
921
|
+
var reloaded = await import("../httpPullTransport");
|
|
922
922
|
var second = reloaded.ensureHttpPullTransport({
|
|
923
923
|
origin,
|
|
924
924
|
fetch: vi.fn()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Zero","afterEach","describe","expect","test","vi","zeroHttpFixtureMutators","zeroHttpFixtureSchema","ensureHttpPullTransport","installHttpPullTransport","_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","_zeros_pop","_transports_pop","pop","close","uninstall","useRealTimers","requests","cookie","fetch","fn","input","init","request","recordRequest","push","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","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","resetModules","reloaded","second","toMatch","RegExp"],"sources":["../../../src/httpPull/transport.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Zero","afterEach","describe","expect","test","vi","zeroHttpFixtureMutators","zeroHttpFixtureSchema","ensureHttpPullTransport","installHttpPullTransport","_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","_zeros_pop","_transports_pop","pop","close","uninstall","useRealTimers","requests","cookie","fetch","fn","input","init","request","recordRequest","push","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","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","resetModules","reloaded","second","toMatch","RegExp","details","onClientStateNotFound","options","userID","schema","kvStore","storageKey","mutators","logLevel","URL","_init_headers","fromEntries","entries","toLowerCase","toString","pathname","_init_status","Response","statusText","sockets","FakeNativeWebSocket","FakeNativeWebSocket2","_this_onclose","_this","onclose","reject","timeout","setTimeout","clearTimeout","assertion","started","lastError","ms","opts","protocol","searchParams","set","_opts_wsid","_opts_desiredQueriesPatch","_opts_authToken","encodeSecProtocol","desiredQueriesPatch","timestamp","item","toBeDefined","initConnectionMessage","encodeURIComponent","Buffer","from","res","rej","installWithQueries","queryTransform","gotQueries","version","patch","hash","resolved","queries","ast","poke","m","isArray","gotQueriesPatch","inline","desired","before","replay","queryForward","table"],"sources":["transport.test.native.js"],"sourcesContent":["import { Zero } from \"@rocicorp/zero\";\nimport { afterEach, describe, expect, test, vi } from \"vitest\";\nimport { zeroHttpFixtureMutators, zeroHttpFixtureSchema } from \"./fixtureSchema\";\nimport { ensureHttpPullTransport, installHttpPullTransport } from \"../httpPullTransport\";\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nvar ORIGIN = \"https://zero-http.local\";\nvar zeros = [];\nvar transports = [];\nvar storageID = 0;\nvar restoreNativeWebSocket;\nafterEach(async function() {\n var _zeros_pop, _transports_pop;\n while (zeros.length) await ((_zeros_pop = zeros.pop()) === null || _zeros_pop === void 0 ? void 0 : _zeros_pop.close());\n while (transports.length) (_transports_pop = transports.pop()) === null || _transports_pop === void 0 ? void 0 : _transports_pop.uninstall();\n restoreNativeWebSocket === null || restoreNativeWebSocket === void 0 ? void 0 : restoreNativeWebSocket();\n restoreNativeWebSocket = void 0;\n vi.useRealTimers();\n});\ndescribe(\"zero-http transport\", function() {\n test(\"connect + complete hydrates a stock Zero materialized query\", async function() {\n var requests = [];\n var cookie = 0;\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n expect(request.path).toBe(\"/pull\");\n expect(request.headers.authorization).toBe(\"Bearer token-u1\");\n return jsonResponse({\n cookie: ++cookie,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n },\n {\n op: \"put\",\n tableName: \"user\",\n value: {\n id: \"u1\",\n name: \"ada\"\n }\n },\n {\n op: \"put\",\n tableName: \"project\",\n value: {\n id: \"p1\",\n ownerId: \"u1\",\n name: \"control\"\n }\n },\n {\n op: \"put\",\n tableName: \"member\",\n value: {\n id: \"m1\",\n projectId: \"p1\",\n userId: \"u1\"\n }\n }\n ]\n });\n });\n var transport = install(fetch);\n var zero = createZero();\n var view = zero.query.project.related(\"members\").materialize();\n var data = await waitForComplete(view);\n view.destroy();\n expect(transport.connections).toBe(1);\n expect(data).toEqual([\n {\n id: \"p1\",\n ownerId: \"u1\",\n name: \"control\",\n members: [\n {\n id: \"m1\",\n projectId: \"p1\",\n userId: \"u1\"\n }\n ]\n }\n ]);\n expect(requests[0].body.cookie).toBeNull();\n expect(requests[0].body.clientID).toEqual(expect.any(String));\n expect(requests[0].body.clientGroupID).toEqual(expect.any(String));\n });\n test(\"push frames POST to /push, resolve server promises, and schedule a follow-up pull\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n if (request.path === \"/pull\") {\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n }\n expect(request.path).toBe(\"/push\");\n var mutation2 = request.body.mutations[0];\n return jsonResponse({\n pushResponse: {\n mutations: [\n {\n id: {\n clientID: mutation2.clientID,\n id: mutation2.id\n },\n result: {}\n }\n ]\n }\n });\n });\n install(fetch);\n var zero = createZero();\n await eventually(function() {\n return expect(requests.filter(function(request) {\n return request.path === \"/pull\";\n }).length).toBe(1);\n });\n var pullsBeforePush = requests.filter(function(request) {\n return request.path === \"/pull\";\n }).length;\n var mutation = zero.mutate.project.create({\n id: \"p1\",\n ownerId: \"u1\",\n name: \"created\"\n });\n await mutation.client;\n await mutation.server;\n var push = requests.find(function(request) {\n return request.path === \"/push\";\n });\n expect(push === null || push === void 0 ? void 0 : push.headers.authorization).toBe(\"Bearer token-u1\");\n expect(push === null || push === void 0 ? void 0 : push.body).toMatchObject({\n clientGroupID: expect.any(String),\n pushVersion: 1,\n requestID: expect.any(String),\n mutations: [\n {\n type: \"custom\",\n name: \"project|create\",\n id: 1,\n clientID: expect.any(String),\n args: [\n {\n id: \"p1\",\n ownerId: \"u1\",\n name: \"created\"\n }\n ]\n }\n ]\n });\n await eventually(function() {\n return expect(requests.filter(function(request) {\n return request.path === \"/pull\";\n }).length).toBe(pullsBeforePush + 1);\n });\n });\n test(\"pullOrigin and pushOrigin route sync through the authoritative application server\", async function() {\n var _requests_find;\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n if (request.path.endsWith(\"/pull\")) {\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n }\n var mutation2 = request.body.mutations[0];\n return jsonResponse({\n pushResponse: {\n mutations: [\n {\n id: {\n clientID: mutation2.clientID,\n id: mutation2.id\n },\n result: {}\n }\n ]\n }\n });\n });\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n pullOrigin: \"https://app.local/zero-http\",\n pushOrigin: \"https://app.local/zero-http\",\n fetch\n });\n transports.push(transport);\n var zero = createZero();\n await eventually(function() {\n return expect(requests.some(function(request) {\n return request.path.endsWith(\"/pull\");\n })).toBe(true);\n });\n var mutation = zero.mutate.project.create({\n id: \"p1\",\n ownerId: \"u1\",\n name: \"created\"\n });\n await mutation.client;\n await mutation.server;\n var push = requests.find(function(request) {\n return request.path.endsWith(\"/push\");\n });\n expect(push === null || push === void 0 ? void 0 : push.url).toBe(\"https://app.local/zero-http/push\");\n expect((_requests_find = requests.find(function(request) {\n return request.path.endsWith(\"/pull\");\n })) === null || _requests_find === void 0 ? void 0 : _requests_find.url).toBe(\"https://app.local/zero-http/pull\");\n });\n test(\"updateAuth frame updates bearer headers for later requests\", async function() {\n var _requests_at;\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n expect(request.path).toBe(\"/pull\");\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n });\n var transport = install(fetch);\n var { socket } = openRawSocketWithMessages({\n authToken: \"token-old\"\n });\n await eventually(function() {\n return expect(requests.length).toBe(1);\n });\n expect(requests[0].headers.authorization).toBe(\"Bearer token-old\");\n socket.send(JSON.stringify([\n \"updateAuth\",\n {\n auth: \"token-new\"\n }\n ]));\n await transport.pull();\n expect((_requests_at = requests.at(-1)) === null || _requests_at === void 0 ? void 0 : _requests_at.headers.authorization).toBe(\"Bearer token-new\");\n });\n test(\"push frames are serialized and queued bursts are batched per socket\", async function() {\n var firstPushStarted = defer();\n var releaseFirstPush = defer();\n var pushRequests = [];\n var lifecycle = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n if (request.path === \"/pull\") {\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n }\n expect(request.path).toBe(\"/push\");\n var mutationIDs = request.body.mutations.map(function(mutation) {\n return mutation.id;\n });\n pushRequests.push(mutationIDs);\n if (mutationIDs[0] === 1) {\n firstPushStarted.resolve();\n await releaseFirstPush.promise;\n }\n return jsonResponse({\n pushResponse: {\n mutations: request.body.mutations.map(function(mutation) {\n return {\n id: {\n clientID: mutation.clientID,\n id: mutation.id\n },\n result: {}\n };\n })\n }\n });\n });\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n lifecycle: function(event) {\n return lifecycle.push(event);\n }\n });\n transports.push(transport);\n var { messages, socket } = openRawSocketWithMessages();\n await eventually(function() {\n return expect(messages.some(function(message) {\n return message[0] === \"connected\";\n })).toBe(true);\n });\n socket.send(JSON.stringify([\n \"push\",\n pushBody(1)\n ]));\n await firstPushStarted.promise;\n socket.send(JSON.stringify([\n \"push\",\n pushBody(2)\n ]));\n socket.send(JSON.stringify([\n \"push\",\n pushBody(3)\n ]));\n socket.send(JSON.stringify([\n \"push\",\n pushBody(4)\n ]));\n await sleep(25);\n expect(pushRequests).toEqual([\n [\n 1\n ]\n ]);\n releaseFirstPush.resolve();\n await eventually(function() {\n return expect(pushRequests).toEqual([\n [\n 1\n ],\n [\n 2,\n 3,\n 4\n ]\n ]);\n });\n await eventually(function() {\n return expect(messages.filter(function(message) {\n return message[0] === \"pushResponse\";\n })).toHaveLength(2);\n });\n expect(messages.filter(function(message) {\n return message[0] === \"pushResponse\";\n }).flatMap(function(message) {\n return message[1].mutations.map(function(mutation) {\n return mutation.id.id;\n });\n })).toEqual([\n 1,\n 2,\n 3,\n 4\n ]);\n expect(lifecycle.filter(function(event) {\n return event.type === \"push\";\n }).map(function(param) {\n var { pushFrameCount, mutationCount } = param;\n return {\n pushFrameCount,\n mutationCount\n };\n })).toEqual([\n {\n pushFrameCount: 1,\n mutationCount: 1\n },\n {\n pushFrameCount: 3,\n mutationCount: 3\n }\n ]);\n });\n test(\"cookie discipline skips unchanged pokes, chains changed pokes, and coalesces concurrent pulls\", async function() {\n var requests = [];\n var responses = [\n {\n cookie: 1,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n }\n ]\n },\n {\n cookie: 1,\n unchanged: true\n },\n {\n cookie: 2,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n },\n {\n op: \"put\",\n tableName: \"project\",\n value: {\n id: \"p2\",\n ownerId: \"u1\",\n name: \"second\"\n }\n }\n ]\n },\n {\n cookie: 3,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n },\n {\n op: \"put\",\n tableName: \"project\",\n value: {\n id: \"p3\",\n ownerId: \"u1\",\n name: \"third\"\n }\n }\n ]\n }\n ];\n var deferred = defer();\n responses.push(deferred.promise);\n var inFlight = 0;\n var maxInFlight = 0;\n var fetch = vi.fn(async function(input, init) {\n inFlight++;\n maxInFlight = Math.max(maxInFlight, inFlight);\n try {\n var request = recordRequest(input, init);\n requests.push(request);\n var response = responses.shift();\n if (!response) throw new Error(\"missing canned response\");\n return jsonResponse(await response);\n } finally {\n inFlight--;\n }\n });\n var transport = install(fetch);\n var messages = openRawSocket();\n await eventually(function() {\n return expect(messages.some(function(message) {\n return message[0] === \"pokeEnd\";\n })).toBe(true);\n });\n expect(requests[0].body.cookie).toBeNull();\n expect(findMessage(messages, \"pokeStart\")[1].baseCookie).toBeNull();\n expect(findMessage(messages, \"pokeEnd\")[1].cookie).toBe(\"00000000000000000001\");\n messages.length = 0;\n await transport.pull();\n expect(messages.filter(function(message) {\n return message[0].startsWith(\"poke\");\n })).toEqual([]);\n expect(requests[1].body.cookie).toBe(1);\n await transport.pull();\n expect(findMessage(messages, \"pokeStart\")[1].baseCookie).toBe(\"00000000000000000001\");\n expect(findMessage(messages, \"pokeEnd\")[1].cookie).toBe(\"00000000000000000002\");\n expect(requests[2].body.cookie).toBe(1);\n messages.length = 0;\n await transport.pull();\n expect(findMessage(messages, \"pokeStart\")[1].baseCookie).toBe(\"00000000000000000002\");\n expect(findMessage(messages, \"pokeEnd\")[1].cookie).toBe(\"00000000000000000003\");\n expect(requests[3].body.cookie).toBe(2);\n messages.length = 0;\n var concurrentA = transport.pull();\n var concurrentB = transport.pull();\n await eventually(function() {\n return expect(requests.length).toBe(5);\n });\n deferred.resolve({\n cookie: 4,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n }\n ]\n });\n await Promise.all([\n concurrentA,\n concurrentB\n ]);\n expect(requests.length).toBe(5);\n expect(maxInFlight).toBe(1);\n expect(findMessage(messages, \"pokeStart\")[1].baseCookie).toBe(\"00000000000000000003\");\n expect(findMessage(messages, \"pokeEnd\")[1].cookie).toBe(\"00000000000000000004\");\n });\n test(\"unchanged pull flushes late query registration to complete\", async function() {\n var _requests_at;\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n expect(request.path).toBe(\"/pull\");\n if (request.body.cookie === null) {\n return jsonResponse({\n cookie: 1,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n },\n {\n op: \"put\",\n tableName: \"user\",\n value: {\n id: \"u1\",\n name: \"ada\"\n }\n },\n {\n op: \"put\",\n tableName: \"project\",\n value: {\n id: \"p1\",\n ownerId: \"u1\",\n name: \"first\"\n }\n }\n ]\n });\n }\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n });\n install(fetch);\n var zero = createZero();\n var projectView = zero.query.project.materialize();\n await waitForComplete(projectView);\n var userView = zero.query.user.materialize();\n var users = await waitForComplete(userView);\n expect(users).toEqual([\n {\n id: \"u1\",\n name: \"ada\"\n }\n ]);\n expect((_requests_at = requests.at(-1)) === null || _requests_at === void 0 ? void 0 : _requests_at.body.cookie).toBe(1);\n projectView.destroy();\n userView.destroy();\n });\n test(\"ping is answered locally and the stock Zero connection survives idle ping\", async function() {\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n expect(request.path).toBe(\"/pull\");\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n });\n var transport = install(fetch);\n var zero = createZero({\n pingTimeoutMs: 10\n });\n await eventually(function() {\n return expect(zero.connection.state.current.name).toBe(\"connected\");\n });\n await sleep(40);\n expect(zero.connection.state.current.name).toBe(\"connected\");\n expect(transport.connections).toBe(1);\n });\n test(\"401 pull failure closes the fake socket without materializing data\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n expect(request.path).toBe(\"/pull\");\n return jsonResponse({\n error: \"unauthorized\"\n }, {\n status: 401\n });\n });\n var transport = install(fetch);\n var zero = createZero();\n var view = zero.query.project.materialize();\n var emissions = [];\n var cleanup = view.addListener(function(data, resultType) {\n emissions.push({\n data: JSON.parse(JSON.stringify(data)),\n resultType\n });\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(0);\n });\n await eventually(function() {\n return expect(zero.connection.state.current.name).toBe(\"needs-auth\");\n });\n await sleep(25);\n expect(transport.connections).toBe(0);\n expect(emissions.flatMap(function(emission) {\n return emission.data;\n })).toEqual([]);\n expect(view.data).toEqual([]);\n cleanup();\n view.destroy();\n });\n test(\"pull and push 500 reconnects keep socket opens on their current Zero attempt\", async function() {\n var lifecycle = [];\n var zeroLogs = [];\n var failPull = false;\n var failPush = false;\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n if (request.path === \"/pull\") {\n if (failPull) {\n failPull = false;\n return jsonResponse({\n error: \"injected pull outage\"\n }, {\n status: 500\n });\n }\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n }\n if (failPush) {\n failPush = false;\n return jsonResponse({\n error: \"injected push outage\"\n }, {\n status: 500\n });\n }\n var mutation2 = request.body.mutations[0];\n return jsonResponse({\n pushResponse: {\n mutations: [\n {\n id: {\n clientID: mutation2.clientID,\n id: mutation2.id\n },\n result: {}\n }\n ]\n }\n });\n });\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n lifecycle: function(event) {\n return lifecycle.push(event);\n }\n });\n transports.push(transport);\n var zero = createZero({\n logSink: {\n log: function(_level, context) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n zeroLogs.push({\n context: context !== null && context !== void 0 ? context : {},\n args\n });\n }\n }\n });\n await eventually(function() {\n return expect(zero.connection.state.current.name).toBe(\"connected\");\n });\n failPull = true;\n await transport.pull().catch(function() {\n });\n await eventually(function() {\n return expect(lifecycle.filter(function(event) {\n return event.type === \"open\";\n })).toHaveLength(2);\n }, 5e3);\n failPush = true;\n var mutation = zero.mutate.project.create({\n id: \"p1\",\n ownerId: \"u1\",\n name: \"after reconnect\"\n });\n await mutation.client;\n await mutation.server.catch(function() {\n });\n await eventually(function() {\n return expect(lifecycle.filter(function(event) {\n return event.type === \"open\";\n })).toHaveLength(3);\n }, 5e3);\n await eventually(function() {\n return expect(zero.connection.state.current.name).toBe(\"connected\");\n }, 5e3);\n var opens = lifecycle.filter(function(event) {\n return event.type === \"open\";\n });\n expect(opens.map(function(param) {\n var { generation, activeGeneration } = param;\n return [\n generation,\n activeGeneration\n ];\n })).toEqual([\n [\n 1,\n 1\n ],\n [\n 2,\n 2\n ],\n [\n 3,\n 3\n ]\n ]);\n expect(zeroLogs.some(function(param) {\n var { args } = param;\n return args.some(function(arg) {\n return String(arg).includes(\"connect start time is undefined\");\n });\n })).toBe(false);\n });\n test(\"a pull 500 cannot let a timed-out socket construction open on the abandoned attempt\", async function() {\n vi.useFakeTimers();\n var lifecycle = [];\n var pullCount = 0;\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n pullCount++;\n if (pullCount === 1) {\n return jsonResponse({\n error: \"injected pull outage\"\n }, {\n status: 500\n });\n }\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n });\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n lifecycle: function(event) {\n return lifecycle.push(event);\n }\n });\n transports.push(transport);\n var first = openRawSocketWithMessages({\n wsid: \"before-pull-500\"\n });\n await vi.advanceTimersByTimeAsync(1);\n expect(first.socket.readyState).toBe(first.socket.CLOSED);\n var delayedOpened = false;\n var delayedClosed = 0;\n var delayed = openRawSocketWithMessages({\n wsid: \"delayed-reconnect\",\n attemptStartedAt: performance.now() - 10001\n });\n delayed.socket.addEventListener(\"open\", function() {\n delayedOpened = true;\n });\n delayed.socket.addEventListener(\"close\", function() {\n delayedClosed++;\n });\n await vi.advanceTimersByTimeAsync(1);\n expect(delayedOpened).toBe(false);\n expect(delayedClosed).toBe(1);\n expect(lifecycle.filter(function(event) {\n return event.type === \"open\";\n })).toHaveLength(1);\n var aborted = lifecycle.find(function(event) {\n return event.type === \"aborted\";\n });\n expect(aborted).toMatchObject({\n pageID: transport.pageID,\n transportID: transport.transportID,\n zeroInstanceID: `${transport.pageID}:zero:c1`,\n clientID: \"c1\",\n clientGroupID: \"cg1\",\n connectionAttemptID: `${transport.pageID}:zero:c1:attempt:delayed-reconnect`,\n socketID: `${transport.transportID}:socket:2`,\n wsid: \"delayed-reconnect\",\n generation: 2,\n activeGeneration: 2,\n code: 1e3\n });\n expect(aborted === null || aborted === void 0 ? void 0 : aborted.attemptAgeMs).toBeGreaterThanOrEqual(1e4);\n expect(lifecycle.filter(function(event) {\n return event.generation === 2 && (event.type === \"aborted\" || event.type === \"close\" || event.type === \"superseded\");\n })).toHaveLength(1);\n });\n test(\"a replacement socket supersedes stale open and connected events for the same client\", async function() {\n vi.useFakeTimers();\n var lifecycle = [];\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch: vi.fn(async function() {\n return jsonResponse({\n cookie: null,\n unchanged: true\n });\n }),\n lifecycle: function(event) {\n return lifecycle.push(event);\n }\n });\n transports.push(transport);\n var connectStart = Date.now();\n var errors = [];\n var attachStockLifecycle = function(socket) {\n socket.addEventListener(\"open\", function() {\n if (connectStart === void 0) {\n errors.push(\"Got open event but connect start time is undefined.\");\n }\n });\n socket.addEventListener(\"message\", function(event) {\n var message = JSON.parse(String(event.data));\n if (message[0] === \"connected\") connectStart = void 0;\n });\n };\n var stale = openRawSocketWithMessages({\n wsid: \"stale\"\n }).socket;\n attachStockLifecycle(stale);\n var current = openRawSocketWithMessages({\n wsid: \"current\"\n }).socket;\n attachStockLifecycle(current);\n await vi.advanceTimersByTimeAsync(1);\n expect(lifecycle.filter(function(event) {\n return event.type === \"open\";\n }).map(function(param) {\n var { generation, activeGeneration, wsid } = param;\n return [\n generation,\n activeGeneration,\n wsid\n ];\n })).toEqual([\n [\n 2,\n 2,\n \"current\"\n ]\n ]);\n expect(lifecycle).toContainEqual(expect.objectContaining({\n type: \"superseded\",\n generation: 1,\n activeGeneration: 2,\n wsid: \"stale\"\n }));\n expect(lifecycle.filter(function(event) {\n return event.generation === 1 && (event.type === \"aborted\" || event.type === \"close\" || event.type === \"superseded\");\n })).toHaveLength(1);\n expect(errors).toEqual([]);\n });\n test(\"authenticated wake appends a freshly minted token when the socket opens\", async function() {\n var wakeSockets = useFakeNativeWebSocket();\n var getToken = vi.fn(async function() {\n return \"signed token&scope=one\";\n });\n var fetch = unchangedPullFetch();\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n wake: {\n getToken\n }\n });\n transports.push(transport);\n openRawSocketWithMessages();\n await eventually(function() {\n return expect(wakeSockets).toHaveLength(1);\n });\n expect(getToken).toHaveBeenCalledTimes(1);\n expect(wakeSockets[0].url).toBe(\"wss://zero-http.local/wake?clientID=c1&wakeToken=signed%20token%26scope%3Done\");\n });\n test(\"authenticated wake gets a fresh token for every reconnect attempt\", async function() {\n var _wakeSockets__onerror, _wakeSockets_;\n var wakeSockets = useFakeNativeWebSocket();\n var getToken = vi.fn().mockResolvedValueOnce(\"wake-token-1\").mockResolvedValueOnce(\"wake-token-2\");\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch: unchangedPullFetch(),\n wake: {\n getToken\n }\n });\n transports.push(transport);\n openRawSocketWithMessages();\n await eventually(function() {\n return expect(wakeSockets).toHaveLength(1);\n });\n (_wakeSockets__onerror = (_wakeSockets_ = wakeSockets[0]).onerror) === null || _wakeSockets__onerror === void 0 ? void 0 : _wakeSockets__onerror.call(_wakeSockets_);\n await eventually(function() {\n return expect(wakeSockets).toHaveLength(2);\n }, 1e3);\n expect(getToken).toHaveBeenCalledTimes(2);\n expect(wakeSockets.map(function(socket) {\n return socket.url;\n })).toEqual([\n \"wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-1\",\n \"wss://zero-http.local/wake?clientID=c1&wakeToken=wake-token-2\"\n ]);\n });\n test(\"wake token rejection leaves pulls healthy and retries the advisory channel\", async function() {\n var wakeSockets = useFakeNativeWebSocket();\n var getToken = vi.fn(async function() {\n throw new Error(\"mint route unavailable\");\n });\n var fetch = unchangedPullFetch();\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n wake: {\n getToken\n }\n });\n transports.push(transport);\n openRawSocketWithMessages();\n await eventually(function() {\n return expect(fetch).toHaveBeenCalled();\n });\n var pullsBeforeManualPull = fetch.mock.calls.length;\n await expect(transport.pull()).resolves.toBeUndefined();\n expect(fetch.mock.calls.length).toBeGreaterThan(pullsBeforeManualPull);\n await eventually(function() {\n return expect(getToken).toHaveBeenCalledTimes(2);\n }, 1e3);\n expect(wakeSockets).toHaveLength(0);\n expect(transport.connections).toBe(1);\n });\n test(\"wake true preserves the bare unauthenticated socket URL\", async function() {\n var wakeSockets = useFakeNativeWebSocket();\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch: unchangedPullFetch(),\n wake: true\n });\n transports.push(transport);\n openRawSocketWithMessages();\n await eventually(function() {\n return expect(wakeSockets).toHaveLength(1);\n });\n expect(wakeSockets[0].url).toBe(\"wss://zero-http.local/wake?clientID=c1\");\n });\n test(\"non-origin WebSockets pass through to the native implementation\", function() {\n var previous = globalThis.WebSocket;\n var NativeWebSocket = function NativeWebSocket2(url, protocols) {\n \"use strict\";\n _class_call_check(this, NativeWebSocket2);\n _define_property(this, \"url\", void 0);\n _define_property(this, \"protocols\", void 0);\n this.url = url;\n this.protocols = protocols;\n };\n _define_property(NativeWebSocket, \"CONNECTING\", 0);\n _define_property(NativeWebSocket, \"OPEN\", 1);\n _define_property(NativeWebSocket, \"CLOSING\", 2);\n _define_property(NativeWebSocket, \"CLOSED\", 3);\n globalThis.WebSocket = NativeWebSocket;\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch: vi.fn()\n });\n var socket = new WebSocket(\"wss://elsewhere.local/socket\", \"native\");\n expect(socket).toBeInstanceOf(NativeWebSocket);\n expect(socket.url).toBe(\"wss://elsewhere.local/socket\");\n transport.uninstall();\n expect(globalThis.WebSocket).toBe(NativeWebSocket);\n globalThis.WebSocket = previous;\n });\n test(\"ensureHttpPullTransport installs once per origin across module evaluation\", async function() {\n var origin = \"http://127.0.0.1:65501\";\n var first = ensureHttpPullTransport({\n origin,\n fetch: vi.fn()\n });\n vi.resetModules();\n var reloaded = await import(\"../httpPullTransport\");\n var second = reloaded.ensureHttpPullTransport({\n origin,\n fetch: vi.fn()\n });\n expect(second).toBe(first);\n expect(first.pageID).toMatch(/^page-/);\n expect(first.transportID).toMatch(new RegExp(`^${first.pageID}:transport:[1-9][0-9]*$`));\n first.uninstall();\n });\n test(\"push responses are filtered to this client \\u2014 foreign (recovery) results are dropped\", async function() {\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n if (request.path === \"/pull\") {\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n }\n var mutation2 = request.body.mutations[0];\n return jsonResponse({\n pushResponse: {\n mutations: [\n {\n id: {\n clientID: \"previous-session-client\",\n id: 7\n },\n result: {\n error: \"alreadyProcessed\",\n details: \"recovered mutation already applied\"\n }\n },\n {\n id: {\n clientID: mutation2.clientID,\n id: mutation2.id\n },\n result: {}\n }\n ]\n }\n });\n });\n install(fetch);\n var zero = createZero();\n var mutation = zero.mutate.project.create({\n id: \"p-recovery\",\n ownerId: \"u1\",\n name: \"recovered\"\n });\n await mutation.client;\n await mutation.server;\n });\n test(\"pull 409 (client cookie ahead of server) resets client state instead of reconnect-looping\", async function() {\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n expect(request.path).toBe(\"/pull\");\n return jsonResponse({\n error: \"future cookie 299 is ahead of server cookie 66\"\n }, {\n status: 409\n });\n });\n install(fetch);\n var onClientStateNotFound = vi.fn();\n createZero({\n onClientStateNotFound\n });\n await eventually(function() {\n return expect(onClientStateNotFound).toHaveBeenCalled();\n }, 5e3);\n });\n});\nfunction install(fetch) {\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch\n });\n transports.push(transport);\n return transport;\n}\nfunction createZero() {\n var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var zero = new Zero({\n server: ORIGIN,\n userID: \"u1\",\n auth: \"token-u1\",\n schema: zeroHttpFixtureSchema,\n kvStore: \"mem\",\n storageKey: `zero-http-test-${++storageID}`,\n mutators: zeroHttpFixtureMutators,\n pingTimeoutMs: options.pingTimeoutMs,\n onClientStateNotFound: options.onClientStateNotFound,\n logLevel: options.logSink ? \"debug\" : void 0,\n logSink: options.logSink\n });\n zeros.push(zero);\n return zero;\n}\nfunction recordRequest(input, init) {\n var url = new URL(String(input));\n var _init_headers;\n var headers = Object.fromEntries(Object.entries((_init_headers = init === null || init === void 0 ? void 0 : init.headers) !== null && _init_headers !== void 0 ? _init_headers : {}).map(function(param) {\n var [key, value] = param;\n return [\n key.toLowerCase(),\n value\n ];\n }));\n return {\n url: url.toString(),\n path: url.pathname,\n headers,\n body: (init === null || init === void 0 ? void 0 : init.body) ? JSON.parse(String(init.body)) : void 0\n };\n}\nfunction jsonResponse(body, init) {\n var _init_status;\n return new Response(JSON.stringify(body), {\n status: (_init_status = init === null || init === void 0 ? void 0 : init.status) !== null && _init_status !== void 0 ? _init_status : 200,\n statusText: init === null || init === void 0 ? void 0 : init.statusText,\n headers: {\n \"content-type\": \"application/json\",\n ...init === null || init === void 0 ? void 0 : init.headers\n }\n });\n}\nfunction unchangedPullFetch() {\n return vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n expect(request.path).toBe(\"/pull\");\n return jsonResponse({\n cookie: request.body.cookie,\n unchanged: true\n });\n });\n}\nfunction useFakeNativeWebSocket() {\n var previous = globalThis.WebSocket;\n var sockets = [];\n var FakeNativeWebSocket = /* @__PURE__ */ (function() {\n \"use strict\";\n function FakeNativeWebSocket2(url) {\n _class_call_check(this, FakeNativeWebSocket2);\n _define_property(this, \"url\", void 0);\n _define_property(this, \"onmessage\", null);\n _define_property(this, \"onclose\", null);\n _define_property(this, \"onerror\", null);\n this.url = String(url);\n sockets.push(this);\n }\n _create_class(FakeNativeWebSocket2, [\n {\n key: \"close\",\n value: function close() {\n var _this_onclose, _this;\n (_this_onclose = (_this = this).onclose) === null || _this_onclose === void 0 ? void 0 : _this_onclose.call(_this);\n }\n }\n ]);\n return FakeNativeWebSocket2;\n })();\n _define_property(FakeNativeWebSocket, \"CONNECTING\", 0);\n _define_property(FakeNativeWebSocket, \"OPEN\", 1);\n _define_property(FakeNativeWebSocket, \"CLOSING\", 2);\n _define_property(FakeNativeWebSocket, \"CLOSED\", 3);\n globalThis.WebSocket = FakeNativeWebSocket;\n restoreNativeWebSocket = function() {\n globalThis.WebSocket = previous;\n };\n return sockets;\n}\nasync function waitForComplete(view) {\n return new Promise(function(resolve, reject) {\n var timeout = setTimeout(function() {\n return reject(new Error(\"timed out waiting for complete query\"));\n }, 5e3);\n var cleanup = function() {\n };\n cleanup = view.addListener(function(data, resultType) {\n if (resultType !== \"complete\") return;\n clearTimeout(timeout);\n cleanup();\n resolve(JSON.parse(JSON.stringify(data)));\n });\n });\n}\nasync function eventually(assertion) {\n var timeout = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 1e3;\n var started = Date.now();\n var lastError;\n while (Date.now() - started < timeout) {\n try {\n await assertion();\n return;\n } catch (error) {\n lastError = error;\n await sleep(10);\n }\n }\n throw lastError;\n}\nfunction sleep(ms) {\n return new Promise(function(resolve) {\n return setTimeout(resolve, ms);\n });\n}\nfunction openRawSocket() {\n return openRawSocketWithMessages().messages;\n}\nfunction openRawSocketWithMessages(opts) {\n var url = new URL(`${ORIGIN}/sync/v51/connect`);\n url.protocol = \"wss:\";\n url.searchParams.set(\"clientID\", \"c1\");\n url.searchParams.set(\"clientGroupID\", \"cg1\");\n url.searchParams.set(\"userID\", \"u1\");\n url.searchParams.set(\"baseCookie\", \"\");\n url.searchParams.set(\"lmid\", \"0\");\n var _opts_wsid;\n url.searchParams.set(\"wsid\", (_opts_wsid = opts === null || opts === void 0 ? void 0 : opts.wsid) !== null && _opts_wsid !== void 0 ? _opts_wsid : \"ws-test\");\n if ((opts === null || opts === void 0 ? void 0 : opts.attemptStartedAt) !== void 0) {\n url.searchParams.set(\"ts\", String(opts.attemptStartedAt));\n }\n var messages = [];\n var _opts_desiredQueriesPatch, _opts_authToken;\n var socket = new WebSocket(url, encodeSecProtocol([\n \"initConnection\",\n {\n desiredQueriesPatch: (_opts_desiredQueriesPatch = opts === null || opts === void 0 ? void 0 : opts.desiredQueriesPatch) !== null && _opts_desiredQueriesPatch !== void 0 ? _opts_desiredQueriesPatch : []\n }\n ], (_opts_authToken = opts === null || opts === void 0 ? void 0 : opts.authToken) !== null && _opts_authToken !== void 0 ? _opts_authToken : \"token-u1\"));\n socket.addEventListener(\"message\", function(event) {\n messages.push(JSON.parse(String(event.data)));\n });\n return {\n messages,\n socket\n };\n}\nfunction pushBody(id) {\n return {\n clientGroupID: \"cg1\",\n pushVersion: 1,\n requestID: `push-${id}`,\n timestamp: Date.now(),\n mutations: [\n {\n type: \"custom\",\n name: \"project|create\",\n id,\n clientID: \"c1\",\n args: [\n {\n id: `p${id}`,\n ownerId: \"u1\",\n name: `project ${id}`\n }\n ]\n }\n ]\n };\n}\nfunction findMessage(messages, type) {\n var message = messages.find(function(item) {\n return item[0] === type;\n });\n expect(message).toBeDefined();\n return message;\n}\nfunction encodeSecProtocol(initConnectionMessage, authToken) {\n return encodeURIComponent(Buffer.from(JSON.stringify({\n initConnectionMessage,\n authToken\n })).toString(\"base64\"));\n}\nfunction defer() {\n var resolve;\n var reject;\n var promise = new Promise(function(res, rej) {\n resolve = res;\n reject = rej;\n });\n return {\n promise,\n resolve,\n reject\n };\n}\nfunction installWithQueries(fetch, queryTransform) {\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n queryTransform\n });\n transports.push(transport);\n return transport;\n}\ndescribe(\"zero-http query-aware extension\", function() {\n test(\"ships desired queries with pull state (transformed AST) and emits server got-query ack\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n var request = recordRequest(input, init);\n requests.push(request);\n return jsonResponse({\n cookie: 1,\n lastMutationIDChanges: {},\n rowsPatch: [\n {\n op: \"clear\"\n }\n ],\n gotQueries: {\n version: 1,\n patch: [\n {\n op: \"put\",\n hash: \"h1\"\n }\n ]\n }\n });\n });\n installWithQueries(fetch, function(name, args) {\n return {\n resolved: name,\n args\n };\n });\n var { messages } = openRawSocketWithMessages({\n desiredQueriesPatch: [\n {\n op: \"put\",\n hash: \"h1\",\n name: \"byOwner\",\n args: [\n {\n ownerId: \"u1\"\n }\n ]\n }\n ]\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(0);\n });\n expect(requests[0].body.queries).toEqual({\n version: 1,\n patch: [\n {\n op: \"put\",\n hash: \"h1\",\n ast: {\n resolved: \"byOwner\",\n args: [\n {\n ownerId: \"u1\"\n }\n ]\n }\n }\n ]\n });\n await eventually(function() {\n var poke = messages.find(function(m) {\n return m[0] === \"pokePart\" && Array.isArray(m[1].gotQueriesPatch);\n });\n expect(poke === null || poke === void 0 ? void 0 : poke[1].gotQueriesPatch).toEqual([\n {\n op: \"put\",\n hash: \"h1\"\n }\n ]);\n });\n });\n test(\"an ad-hoc put with an inline ast ships that ast unchanged\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n requests.push(recordRequest(input, init));\n return jsonResponse({\n cookie: 1,\n unchanged: true\n });\n });\n installWithQueries(fetch, function() {\n throw new Error(\"transform should not run for an inline ast\");\n });\n openRawSocketWithMessages({\n desiredQueriesPatch: [\n {\n op: \"put\",\n hash: \"h2\",\n ast: {\n inline: true\n }\n }\n ]\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(0);\n });\n expect(requests[0].body.queries.patch).toEqual([\n {\n op: \"put\",\n hash: \"h2\",\n ast: {\n inline: true\n }\n }\n ]);\n });\n test(\"reconnect re-ships the desired set\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n requests.push(recordRequest(input, init));\n return jsonResponse({\n cookie: 1,\n unchanged: true\n });\n });\n installWithQueries(fetch, function(name) {\n return {\n resolved: name\n };\n });\n var desired = [\n {\n op: \"put\",\n hash: \"h1\",\n name: \"byOwner\",\n args: []\n }\n ];\n var first = openRawSocketWithMessages({\n desiredQueriesPatch: desired\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(0);\n });\n first.socket.close();\n var before = requests.length;\n openRawSocketWithMessages({\n desiredQueriesPatch: desired\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(before);\n });\n var replay = requests[requests.length - 1].body.queries;\n expect(replay.patch).toEqual([\n {\n op: \"put\",\n hash: \"h1\",\n ast: {\n resolved: \"byOwner\"\n }\n }\n ]);\n });\n test(\"queryForward ships name+args for the server to resolve (no client transform)\", async function() {\n var requests = [];\n var fetch = vi.fn(async function(input, init) {\n requests.push(recordRequest(input, init));\n return jsonResponse({\n cookie: 1,\n unchanged: true\n });\n });\n var transport = installHttpPullTransport({\n origin: ORIGIN,\n fetch,\n queryForward: true\n });\n transports.push(transport);\n openRawSocketWithMessages({\n desiredQueriesPatch: [\n {\n op: \"put\",\n hash: \"h3\",\n name: \"byOwner\",\n args: [\n {\n ownerId: \"u1\"\n }\n ],\n // Zero may include a locally evaluable AST on a named query put.\n // queryForward must discard it so the server remains authoritative.\n ast: {\n table: \"secret\"\n }\n }\n ]\n });\n await eventually(function() {\n return expect(requests.length).toBeGreaterThan(0);\n });\n expect(requests[0].body.queries.patch).toEqual([\n {\n op: \"put\",\n hash: \"h3\",\n name: \"byOwner\",\n args: [\n {\n ownerId: \"u1\"\n }\n ]\n }\n ]);\n });\n});\n//# sourceMappingURL=transport.test.js.map\n"],"mappings":"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","ignoreList":[]}
|