on-zero 0.16.7 → 0.16.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/cjs/cli.native.js.map +1 -1
  2. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  3. package/dist/cjs/config.native.js.map +1 -1
  4. package/dist/cjs/createPermissions.native.js.map +1 -1
  5. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  6. package/dist/cjs/createUseQuery.native.js.map +1 -1
  7. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  8. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
  9. package/dist/cjs/createZeroClient.cjs +32 -6
  10. package/dist/cjs/createZeroClient.connection.test.cjs +52 -0
  11. package/dist/cjs/createZeroClient.connection.test.native.js +56 -0
  12. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  13. package/dist/cjs/createZeroClient.exportProbe.test.native.js.map +1 -1
  14. package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -1
  15. package/dist/cjs/createZeroClient.httpAuth.test.cjs +144 -0
  16. package/dist/cjs/createZeroClient.httpAuth.test.native.js +167 -0
  17. package/dist/cjs/createZeroClient.httpAuth.test.native.js.map +1 -0
  18. package/dist/cjs/createZeroClient.native.js +32 -6
  19. package/dist/cjs/createZeroClient.native.js.map +1 -1
  20. package/dist/cjs/createZeroClient.recovery.test.cjs +53 -0
  21. package/dist/cjs/createZeroClient.recovery.test.native.js +53 -0
  22. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  23. package/dist/cjs/generate-helpers.native.js.map +1 -1
  24. package/dist/cjs/generate-helpers.test.native.js.map +1 -1
  25. package/dist/cjs/generate-layout.native.js.map +1 -1
  26. package/dist/cjs/generate-lite.native.js.map +1 -1
  27. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  28. package/dist/cjs/generate.native.js.map +1 -1
  29. package/dist/cjs/generate.test.native.js.map +1 -1
  30. package/dist/cjs/helpers/NullToOptional.native.js.map +1 -1
  31. package/dist/cjs/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
  32. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  33. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  34. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  35. package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
  36. package/dist/cjs/helpers/ellipsis.native.js.map +1 -1
  37. package/dist/cjs/helpers/emitter.native.js.map +1 -1
  38. package/dist/cjs/helpers/ensure.native.js.map +1 -1
  39. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  40. package/dist/cjs/helpers/errors.native.js.map +1 -1
  41. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  42. package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -1
  43. package/dist/cjs/helpers/globalValue.native.js.map +1 -1
  44. package/dist/cjs/helpers/hostStorageScope.native.js.map +1 -1
  45. package/dist/cjs/helpers/mapObject.native.js.map +1 -1
  46. package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -1
  47. package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -1
  48. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  49. package/dist/cjs/helpers/mutatorContext.test.native.js.map +1 -1
  50. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  51. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  52. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  53. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  54. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  55. package/dist/cjs/helpers/sleep.native.js.map +1 -1
  56. package/dist/cjs/helpers/time.native.js.map +1 -1
  57. package/dist/cjs/helpers/tuple.native.js.map +1 -1
  58. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  59. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  60. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  61. package/dist/cjs/index.native.js.map +1 -1
  62. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  63. package/dist/cjs/modelRegistry.native.js.map +1 -1
  64. package/dist/cjs/multi.native.js.map +1 -1
  65. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  66. package/dist/cjs/multiInstanceMutations.test.native.js.map +1 -1
  67. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  68. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  69. package/dist/cjs/mutations.native.js.map +1 -1
  70. package/dist/cjs/mutations.test.native.js.map +1 -1
  71. package/dist/cjs/provideZero.eagerInstance.test.native.js.map +1 -1
  72. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  73. package/dist/cjs/provideZero.ssr.test.native.js.map +1 -1
  74. package/dist/cjs/queryRegistry.native.js.map +1 -1
  75. package/dist/cjs/resolveQuery.native.js.map +1 -1
  76. package/dist/cjs/run.native.js.map +1 -1
  77. package/dist/cjs/server.native.js.map +1 -1
  78. package/dist/cjs/server.test.native.js.map +1 -1
  79. package/dist/cjs/serverWhere.native.js.map +1 -1
  80. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  81. package/dist/cjs/state.native.js.map +1 -1
  82. package/dist/cjs/streaming.native.js.map +1 -1
  83. package/dist/cjs/testSetup.native.js.map +1 -1
  84. package/dist/cjs/types.native.js.map +1 -1
  85. package/dist/cjs/usePermission.test.native.js.map +1 -1
  86. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  87. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  88. package/dist/cjs/useStreamingField.loop.test.native.js.map +1 -1
  89. package/dist/cjs/useStreamingField.native.js.map +1 -1
  90. package/dist/cjs/vite-plugin.native.js.map +1 -1
  91. package/dist/cjs/where.native.js.map +1 -1
  92. package/dist/cjs/zeroRunner.native.js.map +1 -1
  93. package/dist/cjs/zql.native.js.map +1 -1
  94. package/dist/esm/createZeroClient.connection.test.mjs +52 -0
  95. package/dist/esm/createZeroClient.connection.test.mjs.map +1 -1
  96. package/dist/esm/createZeroClient.connection.test.native.js +56 -0
  97. package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
  98. package/dist/esm/createZeroClient.httpAuth.test.mjs +145 -0
  99. package/dist/esm/createZeroClient.httpAuth.test.mjs.map +1 -0
  100. package/dist/esm/createZeroClient.httpAuth.test.native.js +165 -0
  101. package/dist/esm/createZeroClient.httpAuth.test.native.js.map +1 -0
  102. package/dist/esm/createZeroClient.mjs +33 -7
  103. package/dist/esm/createZeroClient.mjs.map +1 -1
  104. package/dist/esm/createZeroClient.native.js +33 -7
  105. package/dist/esm/createZeroClient.native.js.map +1 -1
  106. package/dist/esm/createZeroClient.recovery.test.mjs +54 -1
  107. package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
  108. package/dist/esm/createZeroClient.recovery.test.native.js +54 -1
  109. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  110. package/dist/esm/index.native.js.map +1 -1
  111. package/package.json +2 -2
  112. package/src/createZeroClient.connection.test.tsx +50 -1
  113. package/src/createZeroClient.httpAuth.test.ts +144 -0
  114. package/src/createZeroClient.recovery.test.tsx +61 -1
  115. package/src/createZeroClient.tsx +58 -14
  116. package/types/createZeroClient.d.ts +2 -1
  117. package/types/createZeroClient.d.ts.map +1 -1
  118. package/types/createZeroClient.httpAuth.test.d.ts +2 -0
  119. package/types/createZeroClient.httpAuth.test.d.ts.map +1 -0
@@ -0,0 +1,145 @@
1
+ import { createSchema, string, table } from "@rocicorp/zero";
2
+ import { createZeroClientTransport } from "orez-lite/client";
3
+ import { expect, test, vi } from "vitest";
4
+ import { createZeroClient } from "./createZeroClient.mjs";
5
+ const noteTable = table("note").columns({
6
+ id: string()
7
+ }).primaryKey("id");
8
+ const schema = createSchema({
9
+ tables: [noteTable]
10
+ });
11
+ function response(body, status = 200) {
12
+ return new Response(JSON.stringify(body), {
13
+ status,
14
+ headers: {
15
+ "content-type": "application/json"
16
+ }
17
+ });
18
+ }
19
+ async function eventually(assertion, timeoutMs = 2e3) {
20
+ const deadline = Date.now() + timeoutMs;
21
+ let lastError;
22
+ while (Date.now() < deadline) {
23
+ try {
24
+ assertion();
25
+ return;
26
+ } catch (error) {
27
+ lastError = error;
28
+ await new Promise(resolve => setTimeout(resolve, 5));
29
+ }
30
+ }
31
+ throw lastError;
32
+ }
33
+ test("unchanged unauthorized auth parks after one real HTTP transport request", async () => {
34
+ const authorizations = [];
35
+ const fetch = vi.fn(async (_input, init) => {
36
+ authorizations.push(new Headers(init?.headers).get("authorization"));
37
+ return response({
38
+ error: "missing authentication"
39
+ }, 401);
40
+ });
41
+ const refreshAuth = vi.fn(async () => "expired-token");
42
+ const client = createZeroClient({
43
+ schema,
44
+ models: {},
45
+ groupedQueries: {},
46
+ instanceName: "http-auth-unchanged"
47
+ });
48
+ const connection = client.connectHeadless({
49
+ userID: "unauthorized-user",
50
+ auth: "expired-token",
51
+ cacheURL: "https://http-auth-unchanged.orez.test/zero",
52
+ kvStore: "mem",
53
+ transport: createZeroClientTransport({
54
+ fetch
55
+ }),
56
+ refreshAuth
57
+ });
58
+ try {
59
+ await eventually(() => expect(connection.zero.connection.state.current.name).toBe("needs-auth"));
60
+ await new Promise(resolve => setTimeout(resolve, 100));
61
+ expect(authorizations).toEqual(["Bearer expired-token"]);
62
+ expect(refreshAuth).toHaveBeenCalledTimes(1);
63
+ expect(connection.zero.connection.state.current.name).toBe("needs-auth");
64
+ } finally {
65
+ await connection.close();
66
+ }
67
+ });
68
+ test("warm headless client refreshes an expired bearer and reconnects", async () => {
69
+ const authorizations = [];
70
+ const fetch = vi.fn(async (_input, init) => {
71
+ const authorization = new Headers(init?.headers).get("authorization");
72
+ authorizations.push(authorization);
73
+ if (authorization === "Bearer expired-token") {
74
+ return response({
75
+ error: "expired bearer"
76
+ }, 401);
77
+ }
78
+ return response({
79
+ cookie: 1,
80
+ lastMutationIDChanges: {},
81
+ rowsPatch: []
82
+ });
83
+ });
84
+ const refreshAuth = vi.fn(async () => "fresh-token");
85
+ const client = createZeroClient({
86
+ schema,
87
+ models: {},
88
+ groupedQueries: {},
89
+ instanceName: "http-auth-refresh"
90
+ });
91
+ const connection = client.connectHeadless({
92
+ userID: "authorized-user",
93
+ auth: "expired-token",
94
+ cacheURL: "https://http-auth-refresh.orez.test/zero",
95
+ kvStore: "mem",
96
+ transport: createZeroClientTransport({
97
+ fetch
98
+ }),
99
+ refreshAuth
100
+ });
101
+ try {
102
+ await eventually(() => expect(connection.zero.connection.state.current.name).toBe("connected"));
103
+ expect(refreshAuth).toHaveBeenCalledTimes(1);
104
+ expect(authorizations).toEqual(["Bearer expired-token", "Bearer fresh-token"]);
105
+ } finally {
106
+ await connection.close();
107
+ }
108
+ });
109
+ test("three rejected replacement bearers leave a real HTTP client parked", async () => {
110
+ const authorizations = [];
111
+ let replacement = 0;
112
+ const fetch = vi.fn(async (_input, init) => {
113
+ authorizations.push(new Headers(init?.headers).get("authorization"));
114
+ return response({
115
+ error: "project access required"
116
+ }, 403);
117
+ });
118
+ const refreshAuth = vi.fn(async () => `replacement-token-${++replacement}`);
119
+ const client = createZeroClient({
120
+ schema,
121
+ models: {},
122
+ groupedQueries: {},
123
+ instanceName: "http-auth-bounded"
124
+ });
125
+ const connection = client.connectHeadless({
126
+ userID: "unauthorized-user",
127
+ auth: "expired-token",
128
+ cacheURL: "https://http-auth-bounded.orez.test/zero",
129
+ kvStore: "mem",
130
+ transport: createZeroClientTransport({
131
+ fetch
132
+ }),
133
+ refreshAuth
134
+ });
135
+ try {
136
+ await eventually(() => expect(authorizations).toHaveLength(4));
137
+ await new Promise(resolve => setTimeout(resolve, 100));
138
+ expect(authorizations).toEqual(["Bearer expired-token", "Bearer replacement-token-1", "Bearer replacement-token-2", "Bearer replacement-token-3"]);
139
+ expect(refreshAuth).toHaveBeenCalledTimes(3);
140
+ expect(connection.zero.connection.state.current.name).toBe("needs-auth");
141
+ } finally {
142
+ await connection.close();
143
+ }
144
+ });
145
+ //# sourceMappingURL=createZeroClient.httpAuth.test.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createSchema","string","table","createZeroClientTransport","expect","test","vi","createZeroClient","noteTable","columns","id","primaryKey","schema","tables","response","body","status","Response","JSON","stringify","headers","eventually","assertion","timeoutMs","deadline","Date","now","lastError","error","Promise","resolve","setTimeout","authorizations","fetch","fn","_input","init","push","Headers","get","refreshAuth","client","models","groupedQueries","instanceName","connection","connectHeadless","userID","auth","cacheURL","kvStore","transport","zero","state","current","name","toBe","toEqual","toHaveBeenCalledTimes","close","authorization","cookie","lastMutationIDChanges","rowsPatch","replacement","toHaveLength"],"sources":["../../src/createZeroClient.httpAuth.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,165 @@
1
+ import { createSchema, string, table } from "@rocicorp/zero";
2
+ import { createZeroClientTransport } from "orez-lite/client";
3
+ import { expect, test, vi } from "vitest";
4
+ import { createZeroClient } from "./createZeroClient.native.js";
5
+ var noteTable = table("note").columns({
6
+ id: string()
7
+ }).primaryKey("id");
8
+ var schema = createSchema({
9
+ tables: [noteTable]
10
+ });
11
+ function response(body) {
12
+ var status = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 200;
13
+ return new Response(JSON.stringify(body), {
14
+ status,
15
+ headers: {
16
+ "content-type": "application/json"
17
+ }
18
+ });
19
+ }
20
+ async function eventually(assertion) {
21
+ var timeoutMs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 2e3;
22
+ var deadline = Date.now() + timeoutMs;
23
+ var lastError;
24
+ while (Date.now() < deadline) {
25
+ try {
26
+ assertion();
27
+ return;
28
+ } catch (error) {
29
+ lastError = error;
30
+ await new Promise(function (resolve) {
31
+ return setTimeout(resolve, 5);
32
+ });
33
+ }
34
+ }
35
+ throw lastError;
36
+ }
37
+ test("unchanged unauthorized auth parks after one real HTTP transport request", async function () {
38
+ var authorizations = [];
39
+ var fetch = vi.fn(async function (_input, init) {
40
+ authorizations.push(new Headers(init === null || init === void 0 ? void 0 : init.headers).get("authorization"));
41
+ return response({
42
+ error: "missing authentication"
43
+ }, 401);
44
+ });
45
+ var refreshAuth = vi.fn(async function () {
46
+ return "expired-token";
47
+ });
48
+ var client = createZeroClient({
49
+ schema,
50
+ models: {},
51
+ groupedQueries: {},
52
+ instanceName: "http-auth-unchanged"
53
+ });
54
+ var connection = client.connectHeadless({
55
+ userID: "unauthorized-user",
56
+ auth: "expired-token",
57
+ cacheURL: "https://http-auth-unchanged.orez.test/zero",
58
+ kvStore: "mem",
59
+ transport: createZeroClientTransport({
60
+ fetch
61
+ }),
62
+ refreshAuth
63
+ });
64
+ try {
65
+ await eventually(function () {
66
+ return expect(connection.zero.connection.state.current.name).toBe("needs-auth");
67
+ });
68
+ await new Promise(function (resolve) {
69
+ return setTimeout(resolve, 100);
70
+ });
71
+ expect(authorizations).toEqual(["Bearer expired-token"]);
72
+ expect(refreshAuth).toHaveBeenCalledTimes(1);
73
+ expect(connection.zero.connection.state.current.name).toBe("needs-auth");
74
+ } finally {
75
+ await connection.close();
76
+ }
77
+ });
78
+ test("warm headless client refreshes an expired bearer and reconnects", async function () {
79
+ var authorizations = [];
80
+ var fetch = vi.fn(async function (_input, init) {
81
+ var authorization = new Headers(init === null || init === void 0 ? void 0 : init.headers).get("authorization");
82
+ authorizations.push(authorization);
83
+ if (authorization === "Bearer expired-token") {
84
+ return response({
85
+ error: "expired bearer"
86
+ }, 401);
87
+ }
88
+ return response({
89
+ cookie: 1,
90
+ lastMutationIDChanges: {},
91
+ rowsPatch: []
92
+ });
93
+ });
94
+ var refreshAuth = vi.fn(async function () {
95
+ return "fresh-token";
96
+ });
97
+ var client = createZeroClient({
98
+ schema,
99
+ models: {},
100
+ groupedQueries: {},
101
+ instanceName: "http-auth-refresh"
102
+ });
103
+ var connection = client.connectHeadless({
104
+ userID: "authorized-user",
105
+ auth: "expired-token",
106
+ cacheURL: "https://http-auth-refresh.orez.test/zero",
107
+ kvStore: "mem",
108
+ transport: createZeroClientTransport({
109
+ fetch
110
+ }),
111
+ refreshAuth
112
+ });
113
+ try {
114
+ await eventually(function () {
115
+ return expect(connection.zero.connection.state.current.name).toBe("connected");
116
+ });
117
+ expect(refreshAuth).toHaveBeenCalledTimes(1);
118
+ expect(authorizations).toEqual(["Bearer expired-token", "Bearer fresh-token"]);
119
+ } finally {
120
+ await connection.close();
121
+ }
122
+ });
123
+ test("three rejected replacement bearers leave a real HTTP client parked", async function () {
124
+ var authorizations = [];
125
+ var replacement = 0;
126
+ var fetch = vi.fn(async function (_input, init) {
127
+ authorizations.push(new Headers(init === null || init === void 0 ? void 0 : init.headers).get("authorization"));
128
+ return response({
129
+ error: "project access required"
130
+ }, 403);
131
+ });
132
+ var refreshAuth = vi.fn(async function () {
133
+ return `replacement-token-${++replacement}`;
134
+ });
135
+ var client = createZeroClient({
136
+ schema,
137
+ models: {},
138
+ groupedQueries: {},
139
+ instanceName: "http-auth-bounded"
140
+ });
141
+ var connection = client.connectHeadless({
142
+ userID: "unauthorized-user",
143
+ auth: "expired-token",
144
+ cacheURL: "https://http-auth-bounded.orez.test/zero",
145
+ kvStore: "mem",
146
+ transport: createZeroClientTransport({
147
+ fetch
148
+ }),
149
+ refreshAuth
150
+ });
151
+ try {
152
+ await eventually(function () {
153
+ return expect(authorizations).toHaveLength(4);
154
+ });
155
+ await new Promise(function (resolve) {
156
+ return setTimeout(resolve, 100);
157
+ });
158
+ expect(authorizations).toEqual(["Bearer expired-token", "Bearer replacement-token-1", "Bearer replacement-token-2", "Bearer replacement-token-3"]);
159
+ expect(refreshAuth).toHaveBeenCalledTimes(3);
160
+ expect(connection.zero.connection.state.current.name).toBe("needs-auth");
161
+ } finally {
162
+ await connection.close();
163
+ }
164
+ });
165
+ //# sourceMappingURL=createZeroClient.httpAuth.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createSchema","string","table","createZeroClientTransport","expect","test","vi","createZeroClient","noteTable","columns","id","primaryKey","schema","tables","response","body","status","arguments","length","Response","JSON","stringify","headers","eventually","assertion","timeoutMs","deadline","Date","now","lastError","error","Promise","resolve","setTimeout","authorizations","fetch","fn","_input","init","push","Headers","get","refreshAuth","client","models","groupedQueries","instanceName","connection","connectHeadless","userID","auth","cacheURL","kvStore","transport","zero","state","current","name","toBe","toEqual","toHaveBeenCalledTimes","close","authorization","cookie","lastMutationIDChanges","rowsPatch"],"sources":["../../src/createZeroClient.httpAuth.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  import { createBuilder, defineQueries, defineQuery, Zero as ZeroClient } from "@rocicorp/zero";
2
2
  import { useZero, ZeroContext } from "@rocicorp/zero/react";
3
- import { createContext, memo, useContext, useEffect, useLayoutEffect, useRef, useState } from "react";
3
+ import { createContext, memo, useContext, useEffect, useInsertionEffect, useLayoutEffect, useRef, useState } from "react";
4
4
  import { createPermissions } from "./createPermissions.mjs";
5
5
  import { createUseQuery } from "./createUseQuery.mjs";
6
6
  import { clearZeroClientData } from "./helpers/clearZeroClientData.mjs";
@@ -22,6 +22,7 @@ import { getRawWhere, setEvaluatingPermission } from "./where.mjs";
22
22
  import { setRunner } from "./zeroRunner.mjs";
23
23
  import { zql } from "./zql.mjs";
24
24
  import { jsx, jsxs } from "react/jsx-runtime";
25
+ const MAX_AUTH_REFRESH_ATTEMPTS = 3;
25
26
  function getZeroProxyValue(instance, key) {
26
27
  const value = Reflect.get(instance, key, instance);
27
28
  if (typeof value !== "function") return value;
@@ -136,6 +137,7 @@ function createZeroClientInternal({
136
137
  return generation;
137
138
  }
138
139
  let clientMutators = null;
140
+ const installedTransports = /* @__PURE__ */new WeakMap();
139
141
  function getClientMutators() {
140
142
  clientMutators ??= createMutators({
141
143
  models,
@@ -154,12 +156,13 @@ function createZeroClientInternal({
154
156
  guardStorage,
155
157
  benignLogPatterns
156
158
  }) {
159
+ let installedTransport;
157
160
  if (transport) {
158
161
  const serverURL = options.cacheURL ?? options.server;
159
162
  if (typeof serverURL !== "string") {
160
163
  throw new Error(`client transport requires a server URL`);
161
164
  }
162
- transport.install(serverURL);
165
+ installedTransport = transport.install(serverURL);
163
166
  }
164
167
  const instanceRef = {
165
168
  current: null
@@ -196,6 +199,7 @@ function createZeroClientInternal({
196
199
  onClientStateNotFound: options.onClientStateNotFound ?? recovery.onClientStateNotFound
197
200
  });
198
201
  instanceRef.current = createdInstance;
202
+ if (installedTransport) installedTransports.set(createdInstance, installedTransport);
199
203
  return createdInstance;
200
204
  }
201
205
  function publishZeroInstance(zeroInstance) {
@@ -596,6 +600,7 @@ function createZeroClientInternal({
596
600
  value: liveInstance ? getZeroProviderGeneration(liveInstance) : null,
597
601
  children: [liveInstance ? /* @__PURE__ */jsx(SetZeroInstance, {}) : null, liveInstance ? /* @__PURE__ */jsx(ConnectionMonitor, {
598
602
  zeroEvents,
603
+ auth,
599
604
  refreshAuth,
600
605
  exposeDataset: connectionDataset,
601
606
  datasetCacheUrl: connectionDataset ? props.cacheURL ?? props.server : void 0
@@ -609,7 +614,7 @@ function createZeroClientInternal({
609
614
  const SetZeroInstance = () => {
610
615
  const zeroInstance = useZero();
611
616
  publishZeroInstance(zeroInstance);
612
- useLayoutEffect(() => {
617
+ useInsertionEffect(() => {
613
618
  publishZeroInstance(zeroInstance);
614
619
  return () => {
615
620
  if (!unpublishZeroInstance(zeroInstance)) return;
@@ -645,6 +650,7 @@ function createZeroClientInternal({
645
650
  zeroInstanceVersion?.emit(zeroInstanceVersion.value + 1);
646
651
  const unwatch = watchZeroConnection({
647
652
  zeroInstance,
653
+ auth: options.auth,
648
654
  refreshAuth
649
655
  });
650
656
  return {
@@ -660,12 +666,15 @@ function createZeroClientInternal({
660
666
  function watchZeroConnection(args) {
661
667
  const {
662
668
  zeroInstance,
669
+ auth,
663
670
  refreshAuth,
664
671
  exposeDataset,
665
672
  datasetCacheUrl
666
673
  } = args;
667
674
  let prevState = zeroInstance.connection.state.current.name;
668
675
  let hasConnected = false;
676
+ let active = true;
677
+ let activeAuth = auth;
669
678
  const currentReconnect = zeroEvents.value?.type === "reconnect" && zeroEvents.value.status !== "connected" ? zeroEvents.value : null;
670
679
  let reconnect = currentReconnect ? {
671
680
  reasonKey: currentReconnect.reasonKey,
@@ -673,6 +682,13 @@ function createZeroClientInternal({
673
682
  } : null;
674
683
  let recoverableError = null;
675
684
  let needsAuth = false;
685
+ let authRefreshAttempts = 0;
686
+ const installedTransport = installedTransports.get(zeroInstance);
687
+ const unsubscribeTransport = installedTransport ? installedTransport.subscribeLifecycle(event => {
688
+ if (event.type === "pull" && event.clientID === zeroInstance.clientID) {
689
+ authRefreshAttempts = 0;
690
+ }
691
+ }) : void 0;
676
692
  const handle = () => {
677
693
  const state = zeroInstance.connection.state.current;
678
694
  const name = state.name;
@@ -686,6 +702,7 @@ function createZeroClientInternal({
686
702
  if (name === "connected") {
687
703
  hasConnected = true;
688
704
  recoverableError = null;
705
+ if (!installedTransport) authRefreshAttempts = 0;
689
706
  if (reconnect) {
690
707
  reconnect = null;
691
708
  emitReconnectStatus({
@@ -734,10 +751,13 @@ function createZeroClientInternal({
734
751
  });
735
752
  }
736
753
  if (name === "needs-auth") {
737
- if (refreshAuth && !needsAuth) {
754
+ if (refreshAuth && !needsAuth && authRefreshAttempts < MAX_AUTH_REFRESH_ATTEMPTS) {
738
755
  needsAuth = true;
739
756
  void refreshAuth().then(token => {
740
- if (token) zeroInstance.connection?.connect?.({
757
+ if (!active || !token || token === activeAuth) return;
758
+ activeAuth = token;
759
+ authRefreshAttempts++;
760
+ return zeroInstance.connection?.connect?.({
741
761
  auth: token
742
762
  });
743
763
  }).catch(() => {});
@@ -758,10 +778,15 @@ function createZeroClientInternal({
758
778
  };
759
779
  const unsubscribe = zeroInstance.connection.state.subscribe(handle);
760
780
  handle();
761
- return unsubscribe;
781
+ return () => {
782
+ active = false;
783
+ unsubscribeTransport?.();
784
+ unsubscribe();
785
+ };
762
786
  }
763
787
  const ConnectionMonitor = memo(({
764
788
  zeroEvents: _zeroEvents,
789
+ auth,
765
790
  refreshAuth,
766
791
  exposeDataset,
767
792
  datasetCacheUrl
@@ -769,10 +794,11 @@ function createZeroClientInternal({
769
794
  const zeroInstance = useZero();
770
795
  useEffect(() => watchZeroConnection({
771
796
  zeroInstance,
797
+ auth,
772
798
  refreshAuth,
773
799
  exposeDataset,
774
800
  datasetCacheUrl
775
- }), [zeroInstance, refreshAuth, exposeDataset, datasetCacheUrl]);
801
+ }), [zeroInstance, auth, refreshAuth, exposeDataset, datasetCacheUrl]);
776
802
  return null;
777
803
  });
778
804
  function preload(fnArg, paramsOrOptions, optionsArg) {
@@ -1 +1 @@
1
- {"version":3,"names":["createBuilder","defineQueries","defineQuery","Zero","ZeroClient","useZero","ZeroContext","createContext","memo","useContext","useEffect","useLayoutEffect","useRef","useState","createPermissions","createUseQuery","clearZeroClientData","createMutators","createEmitter","getAuth","readHostStorageScope","createMutationLifecycle","IS_SERVER_RUNTIME","composeRecoveryLogSink","isRecoverableZeroStalePokeMessage","makeZeroRecovery","observeMutation","reportMutationInvocationError","registerClientInstance","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","getZeroProxyValue","instance","key","value","Reflect","get","bound","bind","property","ownKeys","descriptor","Object","getOwnPropertyDescriptor","defineProperty","createUnavailableDirectUseQuery","useQueryDirect","Error","createZeroClient","options","createZeroClientInternal","schema","models","groupedQueries","aggregates","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","customQueries","namespaces","keys","queryNames","flatMap","map","zeroRuntime","runtime","DisabledContext","ZeroProviderGenerationContext","zeroProviderGenerations","WeakMap","useZeroProviderGeneration","getZeroProviderGeneration","zeroInstance","existing","generation","isCurrent","zero","set","clientMutators","getClientMutators","authData","bindCan","constructZeroInstance","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","serverURL","cacheURL","server","install","instanceRef","current","recoveryDeps","deleteLocalState","deleteZeroInstance","zeroEvents","logClassifications","benign","onRecovery","mutationLifecycle","fence","recoverInPlace","remint","dropLocalState","recovery","createdInstance","kvStore","mutators","logSink","onUpdateNeeded","onClientStateNotFound","publishZeroInstance","activate","runner","query","run","waiters","readyWaiters","clear","onReady","waitForZero","signal","Promise","resolve","aborted","reject","reason","removeEventListener","onAbort","delete","add","addEventListener","once","lazyMutatePath","path","target","mutate","label","length","join","Proxy","lazyMutator","_","apply","__","assertWritable","result","claimMutation","error","instanceToDelete","emitterScope","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","recoverFromAckTimeout","input","reconnectInPlace","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","getZero","zeroVersion","createUsePermission","useQueryImpl","usePermission","enabled","debug","disableMode","lastRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","type","usePermissionDirect","cachedZero","retiredZero","Map","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","clearZeroInstanceReferences","invalidateZeroInstance","emit","close","opts","now","Date","sinceLast","catch","retire","parked","values","live","parkedInstance","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","children","authDataIn","Provider","ProvideZeroClient","refreshAuth","connectionDataset","disable","props","hasAuth","stableAuthDataRef","hostScope","scopedProps","storageKey","__testZero","window","URLSearchParams","search","has","url","URL","href","searchParams","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","instanceKey","JSON","stringify","filter","sort","a","b","pattern","source","flags","liveInstance","activeZero","revived","nextCachedZero","size","outgoing","connect","SetZeroInstance","ConnectionMonitor","exposeDataset","datasetCacheUrl","ProvideZero","connectHeadless","unwatch","watchZeroConnection","prevState","hasConnected","currentReconnect","reconnect","recoverableError","needsAuth","handle","document","body","dataset","zeroState","zeroCacheUrl","zeroReason","slice","zeroConnected","reconnectReasonKey","includes","token","message","unsubscribe","_zeroEvents","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest","getQuery","ControlQueries","action","whenDisabled","mode","drainBackgroundMutations","enqueueBackgroundMutation","awaitMutationClient","awaitMutationServer"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createBuilder","defineQueries","defineQuery","Zero","ZeroClient","useZero","ZeroContext","createContext","memo","useContext","useEffect","useInsertionEffect","useLayoutEffect","useRef","useState","createPermissions","createUseQuery","clearZeroClientData","createMutators","createEmitter","getAuth","readHostStorageScope","createMutationLifecycle","IS_SERVER_RUNTIME","composeRecoveryLogSink","isRecoverableZeroStalePokeMessage","makeZeroRecovery","observeMutation","reportMutationInvocationError","registerClientInstance","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","MAX_AUTH_REFRESH_ATTEMPTS","getZeroProxyValue","instance","key","value","Reflect","get","bound","bind","property","ownKeys","descriptor","Object","getOwnPropertyDescriptor","defineProperty","createUnavailableDirectUseQuery","useQueryDirect","Error","createZeroClient","options","createZeroClientInternal","schema","models","groupedQueries","aggregates","permissionStrategy","instanceName","serverAckTimeoutRecoveryThreshold","createDirectUseQuery","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","customQueries","namespaces","keys","queryNames","flatMap","map","zeroRuntime","runtime","DisabledContext","ZeroProviderGenerationContext","zeroProviderGenerations","WeakMap","useZeroProviderGeneration","getZeroProviderGeneration","zeroInstance","existing","generation","isCurrent","zero","set","clientMutators","installedTransports","getClientMutators","authData","bindCan","constructZeroInstance","transport","beforeReload","scheduleReload","guardStorage","benignLogPatterns","installedTransport","serverURL","cacheURL","server","install","instanceRef","current","recoveryDeps","deleteLocalState","deleteZeroInstance","zeroEvents","logClassifications","benign","onRecovery","mutationLifecycle","fence","recoverInPlace","remint","dropLocalState","recovery","createdInstance","kvStore","mutators","logSink","onUpdateNeeded","onClientStateNotFound","publishZeroInstance","activate","runner","query","run","waiters","readyWaiters","clear","onReady","waitForZero","signal","Promise","resolve","aborted","reject","reason","removeEventListener","onAbort","delete","add","addEventListener","once","lazyMutatePath","path","target","mutate","label","length","join","Proxy","lazyMutator","_","apply","__","assertWritable","result","claimMutation","error","instanceToDelete","emitterScope","ackTimeoutRecoveryThreshold","Number","isFinite","Math","floor","recoverFromAckTimeout","input","reconnectInPlace","consecutiveTimeouts","timeoutMs","zeroInstanceVersion","AuthDataContext","useQuery","getZero","zeroVersion","createUsePermission","useQueryImpl","usePermission","enabled","debug","disableMode","lastRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","console","info","type","usePermissionDirect","cachedZero","retiredZero","Map","REMINT_GUARD_MS","REMINT_MAX_ATTEMPTS","REMINT_ATTEMPT_RESET_MS","remintControl","bump","lastRemintAt","remintAttempts","unpublishZeroInstance","instanceToInvalidate","clearZeroInstanceReferences","invalidateZeroInstance","emit","close","opts","now","Date","sinceLast","catch","retire","parked","values","live","parkedInstance","emitReconnectStatus","event","reasonKey","reloadPage","location","globalThis","reload","DISABLED_ZERO_STUB_CONNECTION_STATE","subscribe","DISABLED_ZERO_STUB","clientID","context","connection","state","materialize","addListener","destroy","updateTTL","ProvideZeroServer","children","authDataIn","Provider","ProvideZeroClient","refreshAuth","connectionDataset","disable","props","hasAuth","stableAuthDataRef","hostScope","scopedProps","storageKey","__testZero","window","URLSearchParams","search","has","url","URL","href","searchParams","closeZero","then","replace","toString","remintGeneration","setRemintGeneration","instanceKey","JSON","stringify","filter","sort","a","b","pattern","source","flags","liveInstance","activeZero","revived","nextCachedZero","size","outgoing","connect","SetZeroInstance","ConnectionMonitor","exposeDataset","datasetCacheUrl","ProvideZero","connectHeadless","unwatch","watchZeroConnection","prevState","hasConnected","active","activeAuth","currentReconnect","reconnect","recoverableError","needsAuth","authRefreshAttempts","unsubscribeTransport","subscribeLifecycle","handle","document","body","dataset","zeroState","zeroCacheUrl","zeroReason","slice","zeroConnected","reconnectReasonKey","includes","token","message","unsubscribe","_zeroEvents","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest","getQuery","ControlQueries","action","whenDisabled","mode","drainBackgroundMutations","enqueueBackgroundMutation","awaitMutationClient","awaitMutationServer"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}