on-zero 0.16.20 → 0.16.21

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 (329) hide show
  1. package/dist/cjs/cli.cjs +6 -0
  2. package/dist/cjs/cli.native.js +6 -0
  3. package/dist/cjs/cli.native.js.map +1 -1
  4. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  5. package/dist/cjs/config.native.js.map +1 -1
  6. package/dist/cjs/createPermissions.native.js.map +1 -1
  7. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  8. package/dist/cjs/createUseQuery.cjs +14 -4
  9. package/dist/cjs/createUseQuery.native.js +18 -5
  10. package/dist/cjs/createUseQuery.native.js.map +1 -1
  11. package/dist/cjs/createUseQueryDirect.cjs +13 -2
  12. package/dist/cjs/createUseQueryDirect.native.js +14 -2
  13. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  14. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
  15. package/dist/cjs/createZeroClient.cjs +21 -3
  16. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  17. package/dist/cjs/createZeroClient.exportProbe.test.native.js.map +1 -1
  18. package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -1
  19. package/dist/cjs/createZeroClient.httpAuth.test.native.js.map +1 -1
  20. package/dist/cjs/createZeroClient.native.js +28 -3
  21. package/dist/cjs/createZeroClient.native.js.map +1 -1
  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.cjs +57 -30
  29. package/dist/cjs/generate.native.js +92 -31
  30. package/dist/cjs/generate.native.js.map +1 -1
  31. package/dist/cjs/generate.test.cjs +147 -0
  32. package/dist/cjs/generate.test.native.js +147 -0
  33. package/dist/cjs/generate.test.native.js.map +1 -1
  34. package/dist/cjs/helpers/NullToOptional.native.js.map +1 -1
  35. package/dist/cjs/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
  36. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  37. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  38. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  39. package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
  40. package/dist/cjs/helpers/ellipsis.native.js.map +1 -1
  41. package/dist/cjs/helpers/emitter.native.js.map +1 -1
  42. package/dist/cjs/helpers/ensure.native.js.map +1 -1
  43. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  44. package/dist/cjs/helpers/errors.native.js.map +1 -1
  45. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  46. package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -1
  47. package/dist/cjs/helpers/globalValue.native.js.map +1 -1
  48. package/dist/cjs/helpers/hostStorageScope.native.js.map +1 -1
  49. package/dist/cjs/helpers/mapObject.native.js.map +1 -1
  50. package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -1
  51. package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -1
  52. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  53. package/dist/cjs/helpers/mutatorContext.test.native.js.map +1 -1
  54. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  55. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  56. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  57. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  58. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  59. package/dist/cjs/helpers/sleep.native.js.map +1 -1
  60. package/dist/cjs/helpers/time.native.js.map +1 -1
  61. package/dist/cjs/helpers/tuple.native.js.map +1 -1
  62. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  63. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  64. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  65. package/dist/cjs/index.native.js.map +1 -1
  66. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  67. package/dist/cjs/modelRegistry.native.js.map +1 -1
  68. package/dist/cjs/multi.cjs +10 -5
  69. package/dist/cjs/multi.native.js +10 -5
  70. package/dist/cjs/multi.native.js.map +1 -1
  71. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  72. package/dist/cjs/multiInstanceMutations.test.native.js.map +1 -1
  73. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  74. package/dist/cjs/multiPartition.test.cjs +46 -2
  75. package/dist/cjs/multiPartition.test.native.js +50 -2
  76. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  77. package/dist/cjs/mutations.native.js.map +1 -1
  78. package/dist/cjs/mutations.test.native.js.map +1 -1
  79. package/dist/cjs/native-typescript.cjs +50 -11
  80. package/dist/cjs/native-typescript.native.js +158 -30
  81. package/dist/cjs/native-typescript.native.js.map +1 -1
  82. package/dist/cjs/provideZero.eagerInstance.test.cjs +22 -0
  83. package/dist/cjs/provideZero.eagerInstance.test.native.js +30 -0
  84. package/dist/cjs/provideZero.eagerInstance.test.native.js.map +1 -1
  85. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  86. package/dist/cjs/provideZero.ssr.test.native.js.map +1 -1
  87. package/dist/cjs/queryErrorRecovery.cjs +93 -0
  88. package/dist/cjs/queryErrorRecovery.native.js +205 -0
  89. package/dist/cjs/queryErrorRecovery.native.js.map +1 -0
  90. package/dist/cjs/queryJson.native.js.map +1 -1
  91. package/dist/cjs/queryRegistry.native.js.map +1 -1
  92. package/dist/cjs/resolveQuery.native.js.map +1 -1
  93. package/dist/cjs/run.native.js.map +1 -1
  94. package/dist/cjs/server.native.js.map +1 -1
  95. package/dist/cjs/server.test.native.js.map +1 -1
  96. package/dist/cjs/serverWhere.native.js.map +1 -1
  97. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  98. package/dist/cjs/state.native.js.map +1 -1
  99. package/dist/cjs/streaming.native.js.map +1 -1
  100. package/dist/cjs/testSetup.native.js.map +1 -1
  101. package/dist/cjs/types.native.js.map +1 -1
  102. package/dist/cjs/usePermission.test.native.js.map +1 -1
  103. package/dist/cjs/useQuery.aggregate.zero.test.cjs +199 -4
  104. package/dist/cjs/useQuery.aggregate.zero.test.native.js +212 -4
  105. package/dist/cjs/useQuery.aggregate.zero.test.native.js.map +1 -1
  106. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  107. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  108. package/dist/cjs/useStreamingField.loop.test.native.js.map +1 -1
  109. package/dist/cjs/useStreamingField.native.js.map +1 -1
  110. package/dist/cjs/vite-plugin.cjs +10 -0
  111. package/dist/cjs/vite-plugin.native.js +10 -0
  112. package/dist/cjs/vite-plugin.native.js.map +1 -1
  113. package/dist/cjs/where.native.js.map +1 -1
  114. package/dist/cjs/zeroRunner.native.js.map +1 -1
  115. package/dist/cjs/zql.native.js.map +1 -1
  116. package/dist/esm/cli.mjs +6 -0
  117. package/dist/esm/cli.mjs.map +1 -1
  118. package/dist/esm/cli.native.js +7 -1
  119. package/dist/esm/cli.native.js.map +1 -1
  120. package/dist/esm/combineZeroClients.native.js +4 -4
  121. package/dist/esm/combineZeroClients.native.js.map +1 -1
  122. package/dist/esm/config.native.js.map +1 -1
  123. package/dist/esm/createPermissions.native.js +4 -4
  124. package/dist/esm/createPermissions.native.js.map +1 -1
  125. package/dist/esm/createSchemaFromDrizzle.native.js +1 -1
  126. package/dist/esm/createSchemaFromDrizzle.native.js.map +1 -1
  127. package/dist/esm/createUseQuery.mjs +16 -6
  128. package/dist/esm/createUseQuery.mjs.map +1 -1
  129. package/dist/esm/createUseQuery.native.js +24 -11
  130. package/dist/esm/createUseQuery.native.js.map +1 -1
  131. package/dist/esm/createUseQueryDirect.mjs +13 -2
  132. package/dist/esm/createUseQueryDirect.mjs.map +1 -1
  133. package/dist/esm/createUseQueryDirect.native.js +19 -7
  134. package/dist/esm/createUseQueryDirect.native.js.map +1 -1
  135. package/dist/esm/createZeroClient.authData.test.native.js +2 -2
  136. package/dist/esm/createZeroClient.authData.test.native.js.map +1 -1
  137. package/dist/esm/createZeroClient.connection.test.native.js +1 -1
  138. package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
  139. package/dist/esm/createZeroClient.exportProbe.test.native.js +1 -1
  140. package/dist/esm/createZeroClient.exportProbe.test.native.js.map +1 -1
  141. package/dist/esm/createZeroClient.headless.test.native.js +2 -2
  142. package/dist/esm/createZeroClient.headless.test.native.js.map +1 -1
  143. package/dist/esm/createZeroClient.httpAuth.test.native.js +1 -1
  144. package/dist/esm/createZeroClient.httpAuth.test.native.js.map +1 -1
  145. package/dist/esm/createZeroClient.mjs +21 -3
  146. package/dist/esm/createZeroClient.mjs.map +1 -1
  147. package/dist/esm/createZeroClient.native.js +49 -24
  148. package/dist/esm/createZeroClient.native.js.map +1 -1
  149. package/dist/esm/createZeroClient.recovery.test.native.js +2 -2
  150. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  151. package/dist/esm/generate-helpers.native.js.map +1 -1
  152. package/dist/esm/generate-helpers.test.native.js +1 -1
  153. package/dist/esm/generate-helpers.test.native.js.map +1 -1
  154. package/dist/esm/generate-layout.native.js.map +1 -1
  155. package/dist/esm/generate-lite.native.js +1 -1
  156. package/dist/esm/generate-lite.native.js.map +1 -1
  157. package/dist/esm/generate-lite.test.native.js +1 -1
  158. package/dist/esm/generate-lite.test.native.js.map +1 -1
  159. package/dist/esm/generate.mjs +57 -30
  160. package/dist/esm/generate.mjs.map +1 -1
  161. package/dist/esm/generate.native.js +95 -34
  162. package/dist/esm/generate.native.js.map +1 -1
  163. package/dist/esm/generate.test.mjs +147 -0
  164. package/dist/esm/generate.test.mjs.map +1 -1
  165. package/dist/esm/generate.test.native.js +148 -1
  166. package/dist/esm/generate.test.native.js.map +1 -1
  167. package/dist/esm/helpers/NullToOptional.native.js.map +1 -1
  168. package/dist/esm/helpers/asyncContext.hostStorage.test.native.js +7 -7
  169. package/dist/esm/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
  170. package/dist/esm/helpers/batchQuery.native.js +1 -1
  171. package/dist/esm/helpers/batchQuery.native.js.map +1 -1
  172. package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
  173. package/dist/esm/helpers/createMutators.native.js +4 -4
  174. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  175. package/dist/esm/helpers/createMutators.test.native.js +2 -2
  176. package/dist/esm/helpers/createMutators.test.native.js.map +1 -1
  177. package/dist/esm/helpers/ellipsis.native.js.map +1 -1
  178. package/dist/esm/helpers/emitter.native.js.map +1 -1
  179. package/dist/esm/helpers/ensure.native.js +1 -1
  180. package/dist/esm/helpers/ensure.native.js.map +1 -1
  181. package/dist/esm/helpers/ensureLoggedIn.native.js +2 -2
  182. package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
  183. package/dist/esm/helpers/errors.native.js.map +1 -1
  184. package/dist/esm/helpers/getAuth.native.js +3 -3
  185. package/dist/esm/helpers/getAuth.native.js.map +1 -1
  186. package/dist/esm/helpers/getCurrentComponentStack.native.js.map +1 -1
  187. package/dist/esm/helpers/globalValue.native.js.map +1 -1
  188. package/dist/esm/helpers/hostStorageScope.native.js.map +1 -1
  189. package/dist/esm/helpers/mapObject.native.js.map +1 -1
  190. package/dist/esm/helpers/mutationLifecycle.native.js +1 -1
  191. package/dist/esm/helpers/mutationLifecycle.native.js.map +1 -1
  192. package/dist/esm/helpers/mutationLifecycle.test.native.js +1 -1
  193. package/dist/esm/helpers/mutationLifecycle.test.native.js.map +1 -1
  194. package/dist/esm/helpers/mutatorContext.native.js +1 -1
  195. package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
  196. package/dist/esm/helpers/mutatorContext.test.native.js +6 -6
  197. package/dist/esm/helpers/mutatorContext.test.native.js.map +1 -1
  198. package/dist/esm/helpers/prettyFormatZeroQuery.native.js +1 -1
  199. package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  200. package/dist/esm/helpers/queryContext.native.js +1 -1
  201. package/dist/esm/helpers/queryContext.native.js.map +1 -1
  202. package/dist/esm/helpers/recoverZeroClient.native.js +1 -1
  203. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
  204. package/dist/esm/helpers/recoverZeroClient.test.native.js +2 -2
  205. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
  206. package/dist/esm/helpers/showZeroClientError.native.js +1 -1
  207. package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
  208. package/dist/esm/helpers/sleep.native.js +1 -1
  209. package/dist/esm/helpers/sleep.native.js.map +1 -1
  210. package/dist/esm/helpers/time.native.js.map +1 -1
  211. package/dist/esm/helpers/tuple.native.js.map +1 -1
  212. package/dist/esm/helpers/useMutation.native.js.map +1 -1
  213. package/dist/esm/helpers/useMutation.test.native.js +1 -1
  214. package/dist/esm/helpers/useMutation.test.native.js.map +1 -1
  215. package/dist/esm/helpers/useZeroDebug.native.js +2 -2
  216. package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
  217. package/dist/esm/index.native.js +23 -23
  218. package/dist/esm/index.native.js.map +1 -1
  219. package/dist/esm/instanceRegistry.native.js +2 -2
  220. package/dist/esm/instanceRegistry.native.js.map +1 -1
  221. package/dist/esm/modelRegistry.native.js.map +1 -1
  222. package/dist/esm/multi.mjs +10 -5
  223. package/dist/esm/multi.mjs.map +1 -1
  224. package/dist/esm/multi.native.js +15 -10
  225. package/dist/esm/multi.native.js.map +1 -1
  226. package/dist/esm/multiInstance.test.native.js +10 -10
  227. package/dist/esm/multiInstance.test.native.js.map +1 -1
  228. package/dist/esm/multiInstanceMutations.test.native.js +4 -4
  229. package/dist/esm/multiInstanceMutations.test.native.js.map +1 -1
  230. package/dist/esm/multiInstanceNested.test.native.js +3 -3
  231. package/dist/esm/multiInstanceNested.test.native.js.map +1 -1
  232. package/dist/esm/multiPartition.test.mjs +47 -3
  233. package/dist/esm/multiPartition.test.mjs.map +1 -1
  234. package/dist/esm/multiPartition.test.native.js +52 -4
  235. package/dist/esm/multiPartition.test.native.js.map +1 -1
  236. package/dist/esm/mutations.native.js +2 -2
  237. package/dist/esm/mutations.native.js.map +1 -1
  238. package/dist/esm/mutations.test.native.js +4 -4
  239. package/dist/esm/mutations.test.native.js.map +1 -1
  240. package/dist/esm/native-typescript.mjs +50 -11
  241. package/dist/esm/native-typescript.mjs.map +1 -1
  242. package/dist/esm/native-typescript.native.js +158 -30
  243. package/dist/esm/native-typescript.native.js.map +1 -1
  244. package/dist/esm/provideZero.eagerInstance.test.mjs +22 -0
  245. package/dist/esm/provideZero.eagerInstance.test.mjs.map +1 -1
  246. package/dist/esm/provideZero.eagerInstance.test.native.js +31 -1
  247. package/dist/esm/provideZero.eagerInstance.test.native.js.map +1 -1
  248. package/dist/esm/provideZero.hydration.test.native.js +2 -2
  249. package/dist/esm/provideZero.hydration.test.native.js.map +1 -1
  250. package/dist/esm/provideZero.ssr.test.native.js +2 -2
  251. package/dist/esm/provideZero.ssr.test.native.js.map +1 -1
  252. package/dist/esm/queryErrorRecovery.mjs +66 -0
  253. package/dist/esm/queryErrorRecovery.mjs.map +1 -0
  254. package/dist/esm/queryErrorRecovery.native.js +175 -0
  255. package/dist/esm/queryErrorRecovery.native.js.map +1 -0
  256. package/dist/esm/queryJson.native.js +1 -1
  257. package/dist/esm/queryJson.native.js.map +1 -1
  258. package/dist/esm/queryRegistry.native.js.map +1 -1
  259. package/dist/esm/resolveQuery.native.js +2 -2
  260. package/dist/esm/resolveQuery.native.js.map +1 -1
  261. package/dist/esm/run.native.js +4 -4
  262. package/dist/esm/run.native.js.map +1 -1
  263. package/dist/esm/server.native.js +10 -10
  264. package/dist/esm/server.native.js.map +1 -1
  265. package/dist/esm/server.test.native.js +2 -2
  266. package/dist/esm/server.test.native.js.map +1 -1
  267. package/dist/esm/serverWhere.native.js +1 -1
  268. package/dist/esm/serverWhere.native.js.map +1 -1
  269. package/dist/esm/serverWhere.test.native.js +3 -3
  270. package/dist/esm/serverWhere.test.native.js.map +1 -1
  271. package/dist/esm/state.native.js +1 -1
  272. package/dist/esm/state.native.js.map +1 -1
  273. package/dist/esm/streaming.native.js +1 -1
  274. package/dist/esm/streaming.native.js.map +1 -1
  275. package/dist/esm/testSetup.native.js.map +1 -1
  276. package/dist/esm/types.native.js.map +1 -1
  277. package/dist/esm/usePermission.test.native.js +3 -3
  278. package/dist/esm/usePermission.test.native.js.map +1 -1
  279. package/dist/esm/useQuery.aggregate.zero.test.mjs +197 -2
  280. package/dist/esm/useQuery.aggregate.zero.test.mjs.map +1 -1
  281. package/dist/esm/useQuery.aggregate.zero.test.native.js +212 -4
  282. package/dist/esm/useQuery.aggregate.zero.test.native.js.map +1 -1
  283. package/dist/esm/useQuery.empty.test.native.js +3 -3
  284. package/dist/esm/useQuery.empty.test.native.js.map +1 -1
  285. package/dist/esm/useQuery.ssr.test.native.js +2 -2
  286. package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
  287. package/dist/esm/useStreamingField.loop.test.native.js +1 -1
  288. package/dist/esm/useStreamingField.loop.test.native.js.map +1 -1
  289. package/dist/esm/useStreamingField.native.js.map +1 -1
  290. package/dist/esm/vite-plugin.mjs +10 -0
  291. package/dist/esm/vite-plugin.mjs.map +1 -1
  292. package/dist/esm/vite-plugin.native.js +11 -1
  293. package/dist/esm/vite-plugin.native.js.map +1 -1
  294. package/dist/esm/where.native.js +3 -3
  295. package/dist/esm/where.native.js.map +1 -1
  296. package/dist/esm/zeroRunner.native.js +1 -1
  297. package/dist/esm/zeroRunner.native.js.map +1 -1
  298. package/dist/esm/zql.native.js +1 -1
  299. package/dist/esm/zql.native.js.map +1 -1
  300. package/package.json +4 -4
  301. package/src/cli.ts +6 -0
  302. package/src/createUseQuery.tsx +20 -5
  303. package/src/createUseQueryDirect.tsx +17 -1
  304. package/src/createZeroClient.tsx +37 -4
  305. package/src/generate.test.ts +116 -0
  306. package/src/generate.ts +109 -52
  307. package/src/multi.ts +11 -3
  308. package/src/multiPartition.test.ts +55 -11
  309. package/src/native-typescript.ts +64 -11
  310. package/src/provideZero.eagerInstance.test.tsx +27 -0
  311. package/src/queryErrorRecovery.ts +95 -0
  312. package/src/useQuery.aggregate.zero.test.tsx +187 -2
  313. package/src/vite-plugin.ts +10 -0
  314. package/types/createUseQuery.d.ts +3 -1
  315. package/types/createUseQuery.d.ts.map +1 -1
  316. package/types/createUseQueryDirect.d.ts +3 -1
  317. package/types/createUseQueryDirect.d.ts.map +1 -1
  318. package/types/createZeroClient.d.ts +3 -1
  319. package/types/createZeroClient.d.ts.map +1 -1
  320. package/types/generate.d.ts +4 -0
  321. package/types/generate.d.ts.map +1 -1
  322. package/types/multi.d.ts +3 -1
  323. package/types/multi.d.ts.map +1 -1
  324. package/types/native-typescript.d.ts +7 -1
  325. package/types/native-typescript.d.ts.map +1 -1
  326. package/types/queryErrorRecovery.d.ts +33 -0
  327. package/types/queryErrorRecovery.d.ts.map +1 -0
  328. package/types/useQuery.aggregate.zero.test.d.ts.map +1 -1
  329. package/types/vite-plugin.d.ts.map +1 -1
@@ -42,6 +42,7 @@ var import_recoverZeroClient = require("./helpers/recoverZeroClient.cjs");
42
42
  var import_useMutation = require("./helpers/useMutation.cjs");
43
43
  var import_instanceRegistry = require("./instanceRegistry.cjs");
44
44
  var import_modelRegistry = require("./modelRegistry.cjs");
45
+ var import_queryErrorRecovery = require("./queryErrorRecovery.cjs");
45
46
  var import_queryJson = require("./queryJson.cjs");
46
47
  var import_queryRegistry = require("./queryRegistry.cjs");
47
48
  var import_resolveQuery = require("./resolveQuery.cjs");
@@ -171,6 +172,7 @@ function createZeroClientInternal({
171
172
  }
172
173
  let clientMutators = null;
173
174
  const installedTransports = /* @__PURE__ */new WeakMap();
175
+ const queryFaults = /* @__PURE__ */new WeakMap();
174
176
  function getClientMutators() {
175
177
  clientMutators ??= (0, import_createMutators.createMutators)({
176
178
  models,
@@ -240,7 +242,12 @@ function createZeroClientInternal({
240
242
  onClientStateNotFound: options.onClientStateNotFound ?? recovery.onClientStateNotFound
241
243
  });
242
244
  instanceRef.current = createdInstance;
243
- if (installedTransport) installedTransports.set(createdInstance, installedTransport);
245
+ if (installedTransport) {
246
+ installedTransports.set(createdInstance, installedTransport);
247
+ queryFaults.set(createdInstance, new import_queryErrorRecovery.QueryFaults(() => {
248
+ void installedTransport?.pull?.();
249
+ }));
250
+ }
244
251
  (0, import_recoverZeroClient.primeGroupCache)(recoveryDeps);
245
252
  return createdInstance;
246
253
  }
@@ -342,13 +349,15 @@ function createZeroClientInternal({
342
349
  const AuthDataContext = (0, import_react2.createContext)({});
343
350
  const useQuery = (0, import_createUseQuery.createUseQuery)({
344
351
  DisabledContext,
345
- customQueries
352
+ customQueries,
353
+ getQueryFaults: zero2 => queryFaults.get(zero2)
346
354
  });
347
355
  const useQueryDirect = createDirectUseQuery ? createDirectUseQuery({
348
356
  DisabledContext,
349
357
  customQueries,
350
358
  getZero: () => zeroRuntime.zero,
351
- zeroVersion: zeroInstanceVersion
359
+ zeroVersion: zeroInstanceVersion,
360
+ getQueryFaults: zero2 => queryFaults.get(zero2)
352
361
  }) : createUnavailableDirectUseQuery();
353
362
  const createUsePermission = useQueryImpl => {
354
363
  if (import_platform.IS_SERVER_RUNTIME) {
@@ -703,12 +712,20 @@ function createZeroClientInternal({
703
712
  });
704
713
  };
705
714
  const ProvideZero = import_platform.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
715
+ const publishedMounts = /* @__PURE__ */new Map();
706
716
  const SetZeroInstance = () => {
707
717
  const zeroInstance = (0, import_react.useZero)();
708
718
  publishZeroInstance(zeroInstance);
709
719
  (0, import_react2.useInsertionEffect)(() => {
710
720
  publishZeroInstance(zeroInstance);
721
+ publishedMounts.set(zeroInstance, (publishedMounts.get(zeroInstance) ?? 0) + 1);
711
722
  return () => {
723
+ const remaining = publishedMounts.get(zeroInstance) - 1;
724
+ if (remaining > 0) {
725
+ publishedMounts.set(zeroInstance, remaining);
726
+ return;
727
+ }
728
+ publishedMounts.delete(zeroInstance);
712
729
  if (!unpublishZeroInstance(zeroInstance)) return;
713
730
  mutationLifecycle.fence();
714
731
  };
@@ -814,6 +831,7 @@ function createZeroClientInternal({
814
831
  const unsubscribeTransport = installedTransport ? installedTransport.subscribeLifecycle(event => {
815
832
  if (event.type === "pull" && event.clientID === zeroInstance.clientID) {
816
833
  authRefreshAttempts = 0;
834
+ if (event.queryErrors) queryFaults.get(zeroInstance)?.update(event.queryErrors);
817
835
  }
818
836
  }) : void 0;
819
837
  const handle = () => {
@@ -1 +1 @@
1
- {"version":3,"names":["import_jsx_runtime","require","import_zero","import_react","import_client","import_vitest","import_createZeroClient","_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","fakeZero","vi","hoisted","FakeConnectionState","FakeConnectionState2","initial","_this","Set","cb","listeners","add","delete","current","set","next","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","err","return","FakeZero","FakeZero2","options","context","connection","state","name","connect","fn","errors","close","run","preload","cleanup","complete","Promise","resolve","instances","push","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","table","columns","id","string","body","primaryKey","schema","createSchema","tables","client","createZeroClient","models","groupedQueries","instanceName","container","root","beforeEach","document","createElement","dataset","zeroState","zeroConnected","zeroReason","afterEach","act","unmount","mount","extraProps","arguments","userID","createRoot","render","jsx","ProvideZero","cacheURL","children","at","test","readinessClient","ready","waitForZero","expect","toBe","install","transport","toHaveBeenCalledOnce","toHaveBeenCalledWith","refreshAuth","events","off","zeroEvents","listen","event","auth","reason","toHaveBeenCalledTimes","toContainEqual","type","reasonKey","message","not","toHaveBeenCalled","nextToken","attempt","_fakeZero_instances__options","_fakeZero_instances_","first","disable","toHaveLength","StrictMode","some","status"],"sources":["../../src/createZeroClient.connection.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["import_jsx_runtime","require","import_zero","import_react","import_client","import_vitest","import_createZeroClient","_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","fakeZero","vi","hoisted","FakeConnectionState","FakeConnectionState2","initial","_this","Set","cb","listeners","add","delete","current","set","next","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","err","return","FakeZero","FakeZero2","options","context","connection","state","name","connect","fn","errors","close","run","preload","cleanup","complete","Promise","resolve","instances","push","mock","importOriginal","actual","Zero","globalThis","IS_REACT_ACT_ENVIRONMENT","noteTable","table","columns","id","string","body","primaryKey","schema","createSchema","tables","client","createZeroClient","models","groupedQueries","instanceName","container","root","beforeEach","document","createElement","dataset","zeroState","zeroConnected","zeroReason","afterEach","act","unmount","mount","extraProps","arguments","userID","createRoot","render","jsx","ProvideZero","cacheURL","children","at","test","readinessClient","ready","waitForZero","expect","toBe","install","transport","toHaveBeenCalledOnce","toHaveBeenCalledWith","refreshAuth","events","off","zeroEvents","listen","event","auth","reason","toHaveBeenCalledTimes","toContainEqual","type","reasonKey","message","not","toHaveBeenCalled","nextToken","attempt","_fakeZero_instances__options","_fakeZero_instances_","first","disable","toHaveLength","StrictMode","some","status","connectionDataset","zeroCacheUrl","toBeUndefined","useFakeTimers","advanceTimersByTime","useRealTimers","headlessClient","connectHeadless"],"sources":["createZeroClient.connection.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_zero = require(\"@rocicorp/zero\");\nvar import_react = require(\"react\");\nvar import_client = require(\"react-dom/client\");\nvar import_vitest = require(\"vitest\");\nvar import_createZeroClient = require(\"./createZeroClient\");\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\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 obj[key] = value;\n return obj;\n}\nvar fakeZero = import_vitest.vi.hoisted(function() {\n var FakeConnectionState = /* @__PURE__ */ (function() {\n \"use strict\";\n function FakeConnectionState2(initial) {\n var _this = this;\n _class_call_check(this, FakeConnectionState2);\n _define_property(this, \"current\", void 0);\n _define_property(this, \"listeners\", /* @__PURE__ */ new Set());\n _define_property(this, \"subscribe\", function(cb) {\n _this.listeners.add(cb);\n return function() {\n _this.listeners.delete(cb);\n };\n });\n this.current = initial;\n }\n _create_class(FakeConnectionState2, [\n {\n key: \"set\",\n value: function set(next) {\n this.current = next;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.listeners[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var cb = _step.value;\n cb();\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n ]);\n return FakeConnectionState2;\n })();\n var FakeZero = function FakeZero2(options) {\n \"use strict\";\n _class_call_check(this, FakeZero2);\n _define_property(this, \"options\", void 0);\n _define_property(this, \"context\", void 0);\n _define_property(this, \"connection\", void 0);\n _define_property(this, \"delete\", void 0);\n _define_property(this, \"close\", void 0);\n _define_property(this, \"run\", void 0);\n _define_property(this, \"preload\", void 0);\n this.options = options;\n this.context = {};\n this.connection = {\n state: new FakeConnectionState({\n name: \"connecting\"\n }),\n connect: import_vitest.vi.fn(async function() {\n })\n };\n this.delete = import_vitest.vi.fn(async function() {\n return {\n errors: []\n };\n });\n this.close = import_vitest.vi.fn();\n this.run = import_vitest.vi.fn(async function() {\n return [];\n });\n this.preload = import_vitest.vi.fn(function() {\n return {\n cleanup: function cleanup() {\n },\n complete: Promise.resolve()\n };\n });\n instances.push(this);\n };\n var instances = [];\n return {\n FakeZero,\n FakeConnectionState,\n instances\n };\n});\nimport_vitest.vi.mock(\"@rocicorp/zero\", async function(importOriginal) {\n var actual = await importOriginal();\n return {\n ...actual,\n Zero: fakeZero.FakeZero\n };\n});\nglobalThis.IS_REACT_ACT_ENVIRONMENT = true;\nvar noteTable = (0, import_zero.table)(\"note\").columns({\n id: (0, import_zero.string)(),\n body: (0, import_zero.string)()\n}).primaryKey(\"id\");\nvar schema = (0, import_zero.createSchema)({\n tables: [\n noteTable\n ]\n});\nvar client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"connection-test\"\n});\nvar container;\nvar root;\n(0, import_vitest.beforeEach)(function() {\n fakeZero.instances.length = 0;\n container = document.createElement(\"div\");\n root = null;\n delete document.body.dataset.zeroState;\n delete document.body.dataset.zeroConnected;\n delete document.body.dataset.zeroReason;\n});\n(0, import_vitest.afterEach)(function() {\n if (root) (0, import_react.act)(function() {\n return root === null || root === void 0 ? void 0 : root.unmount();\n });\n});\nasync function mount() {\n var extraProps = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, userID = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : \"conn\";\n root = (0, import_client.createRoot)(container);\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID,\n ...extraProps,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n }));\n await Promise.resolve();\n });\n return fakeZero.instances.at(-1);\n}\n(0, import_vitest.test)(\"waitForZero resolves when the provider publishes its active instance\", async function() {\n var readinessClient = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"readiness-test\"\n });\n var ready = readinessClient.waitForZero();\n root = (0, import_client.createRoot)(container);\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(readinessClient.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"readiness\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n }));\n await Promise.resolve();\n });\n (0, import_vitest.expect)(await ready).toBe(fakeZero.instances.at(-1));\n});\n(0, import_vitest.test)(\"installs the supplied client transport for the provider server\", async function() {\n var install = import_vitest.vi.fn();\n await mount({\n transport: {\n install\n }\n }, \"transport-test\");\n (0, import_vitest.expect)(install).toHaveBeenCalledOnce();\n (0, import_vitest.expect)(install).toHaveBeenCalledWith(\"http://127.0.0.1:7788/zero\");\n});\n(0, import_vitest.test)(\"refreshAuth reconnects in place on needs-auth, once per transition\", async function() {\n var refreshAuth = import_vitest.vi.fn(async function() {\n return \"fresh-token\";\n });\n var events = [];\n var off = client.zeroEvents.listen(function(event) {\n if (event) events.push(event);\n });\n var instance = await mount({\n auth: \"expired-token\",\n refreshAuth\n }, \"conn-auth\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"needs-auth\",\n reason: \"token expired\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n await (0, import_react.act)(async function() {\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({\n auth: \"fresh-token\"\n });\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"error\",\n reasonKey: \"connection-needs-auth\",\n message: \"token expired\"\n });\n off();\n});\n(0, import_vitest.test)(\"refreshAuth leaves needs-auth parked when refresh returns the active token\", async function() {\n var refreshAuth = import_vitest.vi.fn(async function() {\n return \"expired-token\";\n });\n var instance = await mount({\n auth: \"expired-token\",\n refreshAuth\n }, \"conn-auth-unchanged\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"needs-auth\",\n reason: \"token expired\"\n });\n await Promise.resolve();\n });\n await (0, import_react.act)(async function() {\n await Promise.resolve();\n });\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n (0, import_vitest.expect)(instance.connection.connect).not.toHaveBeenCalled();\n (0, import_vitest.expect)(instance.connection.state.current.name).toBe(\"needs-auth\");\n});\n(0, import_vitest.test)(\"refreshAuth stops after three consecutively rejected replacement tokens\", async function() {\n var nextToken = 0;\n var refreshAuth = import_vitest.vi.fn(async function() {\n return `replacement-token-${++nextToken}`;\n });\n var instance = await mount({\n auth: \"expired-token\",\n refreshAuth\n }, \"conn-auth-bounded\");\n for (var attempt = 0; attempt < 4; attempt++) {\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"needs-auth\",\n reason: \"token rejected\"\n });\n await Promise.resolve();\n });\n await (0, import_react.act)(async function() {\n await Promise.resolve();\n });\n if (attempt < 3) {\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"connecting\"\n });\n await Promise.resolve();\n });\n }\n }\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(3);\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledTimes(3);\n (0, import_vitest.expect)(instance.connection.state.current.name).toBe(\"needs-auth\");\n});\n(0, import_vitest.test)(\"a disabled logout cannot revive its closed authenticated instance\", async function() {\n var _fakeZero_instances__options, _fakeZero_instances_;\n var first = await mount({\n auth: \"old-token\"\n }, \"conn-auth-cycle\");\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"conn-auth-cycle\",\n auth: void 0,\n disable: true,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n }));\n await Promise.resolve();\n });\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"conn-auth-cycle\",\n auth: \"fresh-token\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n }));\n await Promise.resolve();\n });\n (0, import_vitest.expect)(fakeZero.instances).toHaveLength(2);\n (0, import_vitest.expect)(fakeZero.instances[1]).not.toBe(first);\n (0, import_vitest.expect)((_fakeZero_instances_ = fakeZero.instances[1]) === null || _fakeZero_instances_ === void 0 ? void 0 : (_fakeZero_instances__options = _fakeZero_instances_.options) === null || _fakeZero_instances__options === void 0 ? void 0 : _fakeZero_instances__options.auth).toBe(\"fresh-token\");\n});\n(0, import_vitest.test)(\"a remounted provider reconnects its cached instance when auth changed\", async function() {\n var instance = await mount({\n auth: \"old-token\"\n }, \"conn-auth-remount\");\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.unmount();\n root = null;\n await Promise.resolve();\n });\n root = (0, import_client.createRoot)(container);\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"conn-auth-remount\",\n auth: \"fresh-token\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n }));\n await Promise.resolve();\n });\n (0, import_vitest.expect)(fakeZero.instances).toHaveLength(1);\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({\n auth: \"fresh-token\"\n });\n});\n(0, import_vitest.test)(\"a double-invoked render still reconnects on a changed token\", async function() {\n root = (0, import_client.createRoot)(container);\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.StrictMode, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"conn-auth-strict\",\n auth: \"old-token\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n })\n }));\n await Promise.resolve();\n });\n var instance = fakeZero.instances.at(-1);\n await (0, import_react.act)(async function() {\n root === null || root === void 0 ? void 0 : root.render(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.StrictMode, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(client.ProvideZero, {\n cacheURL: \"http://127.0.0.1:7788/zero\",\n userID: \"conn-auth-strict\",\n auth: \"fresh-token\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(\"span\", {\n children: \"ok\"\n })\n })\n }));\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({\n auth: \"fresh-token\"\n });\n});\n(0, import_vitest.test)(\"stale-poke error reconnects instead of surfacing a fatal error\", async function() {\n var events = [];\n var off = client.zeroEvents.listen(function(event) {\n if (event) events.push(event);\n });\n var instance = await mount({}, \"conn-stale\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"error\",\n reason: \"Server returned unexpected base cookie during sync\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledTimes(1);\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith();\n (0, import_vitest.expect)(events.some(function(event) {\n return event.type === \"error\";\n })).toBe(false);\n off();\n});\n(0, import_vitest.test)(\"transport error reconnects in place and publishes trying status\", async function() {\n var events = [];\n var off = client.zeroEvents.listen(function(event) {\n if (event) events.push(event);\n });\n var instance = await mount({}, \"conn-transport\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"error\",\n reason: \"Unexpected internal error: Failed to fetch\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledTimes(1);\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"reconnect\",\n status: \"trying\",\n reasonKey: \"transport\",\n reason: \"Unexpected internal error: Failed to fetch\"\n });\n (0, import_vitest.expect)(events.some(function(event) {\n return event.type === \"error\";\n })).toBe(false);\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"connected\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"reconnect\",\n status: \"connected\"\n });\n off();\n});\n(0, import_vitest.test)(\"server overload publishes waiting status while Zero owns retry backoff\", async function() {\n var events = [];\n var off = client.zeroEvents.listen(function(event) {\n if (event) events.push(event);\n });\n var instance = await mount({}, \"conn-overload\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"connecting\",\n reason: \"ServerOverloaded: retry later\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).not.toHaveBeenCalled();\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"reconnect\",\n status: \"waiting\",\n reasonKey: \"server-overloaded\",\n reason: \"ServerOverloaded: retry later\"\n });\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"connecting\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"reconnect\",\n status: \"trying\",\n reasonKey: \"server-overloaded\",\n reason: \"ServerOverloaded: retry later\"\n });\n off();\n});\n(0, import_vitest.test)(\"connectionDataset mirrors connection state onto the body dataset\", async function() {\n var instance = await mount({\n connectionDataset: true\n }, \"conn-dataset\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"connected\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(document.body.dataset.zeroState).toBe(\"connected\");\n (0, import_vitest.expect)(document.body.dataset.zeroConnected).toBe(\"true\");\n (0, import_vitest.expect)(document.body.dataset.zeroCacheUrl).toBe(\"http://127.0.0.1:7788/zero\");\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"error\",\n reason: \"boom\"\n });\n await Promise.resolve();\n });\n (0, import_vitest.expect)(document.body.dataset.zeroState).toBe(\"error\");\n (0, import_vitest.expect)(document.body.dataset.zeroConnected).toBeUndefined();\n (0, import_vitest.expect)(document.body.dataset.zeroReason).toBe(\"boom\");\n});\n(0, import_vitest.test)(\"fatal error state stays terminal and reports the reason\", async function() {\n import_vitest.vi.useFakeTimers();\n try {\n var instance = await mount({}, \"conn-fatal\");\n var events = [];\n var off = client.zeroEvents.listen(function(event) {\n if (event) events.push(event);\n });\n await (0, import_react.act)(async function() {\n instance.connection.state.set({\n name: \"error\",\n reason: \"Got open event but connect start time is undefined\"\n });\n await Promise.resolve();\n });\n await (0, import_react.act)(async function() {\n import_vitest.vi.advanceTimersByTime(6e4);\n await Promise.resolve();\n });\n (0, import_vitest.expect)(instance.connection.connect).not.toHaveBeenCalled();\n (0, import_vitest.expect)(events).toContainEqual({\n type: \"error\",\n reasonKey: \"connection-error\",\n message: \"Got open event but connect start time is undefined\"\n });\n off();\n } finally {\n import_vitest.vi.useRealTimers();\n }\n});\n(0, import_vitest.test)(\"connectHeadless refreshes auth on needs-auth with no react tree\", async function() {\n var headlessClient = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"headless-auth-test\"\n });\n var refreshAuth = import_vitest.vi.fn(async function() {\n return \"headless-fresh-token\";\n });\n var connection = headlessClient.connectHeadless({\n userID: \"headless-auth\",\n cacheURL: \"http://127.0.0.1:7788/zero\",\n refreshAuth\n });\n var instance = fakeZero.instances.at(-1);\n instance.connection.state.set({\n name: \"needs-auth\",\n reason: \"token expired\"\n });\n await Promise.resolve();\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n await Promise.resolve();\n (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({\n auth: \"headless-fresh-token\"\n });\n instance.connection.state.set({\n name: \"needs-auth\",\n reason: \"token expired again\"\n });\n await Promise.resolve();\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n await connection.close();\n});\n//# sourceMappingURL=createZeroClient.connection.test.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["import_zero","require","import_vitest","import_createZeroClient","userTable","table","columns","id","string","name","primaryKey","schema","createSchema","tables","describe","zero","createZeroClient","models","groupedQueries","probe","byId","args","instanceName","test","expect","prototype","toBeUndefined","Object","toString","call","toBe","Symbol","toPrimitive"],"sources":["../../src/createZeroClient.exportProbe.test.tsx"],"sourcesContent":[null],"mappings":"AAAA;;AACA,IAAAA,WAAA,GAAAC,OAAuC;AAEvC,IAAAC,aAAA,GAAAD,OAAA,SAAiC;AAIjC,IAAAE,uBAAkB,GAAAF,OAAA,+BAAsB,CAAE;AAC1C,IAAAG,SAAM,OAASJ,WAAA,CAAAK,KAAA,QAAa,EAAEC,OAAA,CAAQ;EAAaC,EASnD,MAAAP,WAAA,CAAAQ,MAAS;EACPC,IAAA,EAAM,EAAE,EAAAT,WAAS,CAAAQ,MAAA;AAAiB,GAAAE,UAChC;AAAA,IACAC,MAAA,GAAS,IAAAX,WAAA,CAAAY,YAAA;EAAAC,MACT,GAAgBT,SACP;AAC2B;AAClC,IACFF,aAAA,CAAAY,QAAA;EAAA,IACA;IAAAC;EAAA,KAAc,GAAAZ,uBAAA,CAAAa,gBAAA;IACfL,MAAA;IAEDM,MAAA;IACEC,cAAA;MACAC,KAAA;QACAC,IAAA,WAAAA,KAAAC,IAAA;UACG,OAA4CA,IAAO;QACpD;MACF;IACD;IAEDC,YAAA;EACE;EAA4D,IAC1DpB,aAAA,CAAAqB,IAAA;IACF,IAAArB,aAAA,CAAAsB,MAAA,EAAAT,IAAA,CAAAU,SAAA,EAAAC,aAAA;IACD,IAAAxB,aAAA,CAAAsB,MAAA,EAAAG,MAAA,CAAAF,SAAA,CAAAG,QAAA,CAAAC,IAAA,CAAAd,IAAA,GAAAe,IAAA;IACF,IAAA5B,aAAA,CAAAsB,MAAA,EAAAT,IAAA,CAAAgB,MAAA,CAAAC,WAAA,GAAAN,aAAA","ignoreList":[]}
1
+ {"version":3,"names":["import_zero","require","import_vitest","import_createZeroClient","userTable","table","columns","id","string","name","primaryKey","schema","createSchema","tables","describe","zero","createZeroClient","models","groupedQueries","probe","byId","args","instanceName","test","expect","prototype","toBeUndefined","Object","toString","call","toBe","Symbol","toPrimitive","iterator","query","toThrow"],"sources":["createZeroClient.exportProbe.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_zero = require(\"@rocicorp/zero\");\nvar import_vitest = require(\"vitest\");\nvar import_createZeroClient = require(\"./createZeroClient\");\nvar userTable = (0, import_zero.table)(\"user\").columns({\n id: (0, import_zero.string)(),\n name: (0, import_zero.string)()\n}).primaryKey(\"id\");\nvar schema = (0, import_zero.createSchema)({\n tables: [\n userTable\n ]\n});\n(0, import_vitest.describe)(\"zero proxy identity probes with no instance\", function() {\n var { zero } = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {\n probe: {\n byId: function byId(args) {\n return args;\n }\n }\n },\n instanceName: \"export-probe\"\n });\n (0, import_vitest.test)(\"reads that can never be Zero API answer undefined instead of throwing\", function() {\n (0, import_vitest.expect)(zero.prototype).toBeUndefined();\n (0, import_vitest.expect)(Object.prototype.toString.call(zero)).toBe(\"[object Object]\");\n (0, import_vitest.expect)(zero[Symbol.toPrimitive]).toBeUndefined();\n (0, import_vitest.expect)(zero[Symbol.iterator]).toBeUndefined();\n });\n (0, import_vitest.test)(\"real API access still throws loudly\", function() {\n (0, import_vitest.expect)(function() {\n return zero.query;\n }).toThrow(/Zero instance not initialized/);\n });\n});\n//# sourceMappingURL=createZeroClient.exportProbe.test.js.map\n"],"mappings":"AAAA,YAAY;;AACZ,IAAIA,WAAW,GAAGC,OAAO,CAAC,gBAAgB,CAAC;AAC3C,IAAIC,aAAa,GAAGD,OAAO,CAAC,QAAQ,CAAC;AACrC,IAAIE,uBAAuB,GAAGF,OAAO,CAAC,8BAAoB,CAAC;AAC3D,IAAIG,SAAS,GAAG,CAAC,CAAC,EAAEJ,WAAW,CAACK,KAAK,EAAE,MAAM,CAAC,CAACC,OAAO,CAAC;EACrDC,EAAE,EAAE,CAAC,CAAC,EAAEP,WAAW,CAACQ,MAAM,EAAE,CAAC;EAC7BC,IAAI,EAAE,CAAC,CAAC,EAAET,WAAW,CAACQ,MAAM,EAAE;AAChC,CAAC,CAAC,CAACE,UAAU,CAAC,IAAI,CAAC;AACnB,IAAIC,MAAM,GAAG,CAAC,CAAC,EAAEX,WAAW,CAACY,YAAY,EAAE;EACzCC,MAAM,EAAE,CACNT,SAAS;AAEb,CAAC,CAAC;AACF,CAAC,CAAC,EAAEF,aAAa,CAACY,QAAQ,EAAE,6CAA6C,EAAE,YAAW;EACpF,IAAI;IAAEC;EAAK,CAAC,GAAG,CAAC,CAAC,EAAEZ,uBAAuB,CAACa,gBAAgB,EAAE;IAC3DL,MAAM;IACNM,MAAM,EAAE,CAAC,CAAC;IACVC,cAAc,EAAE;MACdC,KAAK,EAAE;QACLC,IAAI,EAAE,SAASA,IAAIA,CAACC,IAAI,EAAE;UACxB,OAAOA,IAAI;QACb;MACF;IACF,CAAC;IACDC,YAAY,EAAE;EAChB,CAAC,CAAC;EACF,CAAC,CAAC,EAAEpB,aAAa,CAACqB,IAAI,EAAE,uEAAuE,EAAE,YAAW;IAC1G,CAAC,CAAC,EAAErB,aAAa,CAACsB,MAAM,EAAET,IAAI,CAACU,SAAS,CAAC,CAACC,aAAa,CAAC,CAAC;IACzD,CAAC,CAAC,EAAExB,aAAa,CAACsB,MAAM,EAAEG,MAAM,CAACF,SAAS,CAACG,QAAQ,CAACC,IAAI,CAACd,IAAI,CAAC,CAAC,CAACe,IAAI,CAAC,iBAAiB,CAAC;IACvF,CAAC,CAAC,EAAE5B,aAAa,CAACsB,MAAM,EAAET,IAAI,CAACgB,MAAM,CAACC,WAAW,CAAC,CAAC,CAACN,aAAa,CAAC,CAAC;IACnE,CAAC,CAAC,EAAExB,aAAa,CAACsB,MAAM,EAAET,IAAI,CAACgB,MAAM,CAACE,QAAQ,CAAC,CAAC,CAACP,aAAa,CAAC,CAAC;EAClE,CAAC,CAAC;EACF,CAAC,CAAC,EAAExB,aAAa,CAACqB,IAAI,EAAE,qCAAqC,EAAE,YAAW;IACxE,CAAC,CAAC,EAAErB,aAAa,CAACsB,MAAM,EAAE,YAAW;MACnC,OAAOT,IAAI,CAACmB,KAAK;IACnB,CAAC,CAAC,CAACC,OAAO,CAAC,+BAA+B,CAAC;EAC7C,CAAC,CAAC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["import_zero","require","import_vitest","import_createZeroClient","import_useMutation","_type_of","obj","Symbol","constructor","userTable","table","columns","id","string","name","primaryKey","schema","createSchema","tables","byId","byId2","args","test","client","createZeroClient","models","groupedQueries","headlessTest","instanceName","pending","before","Promise","race","waitForZero","resolve","expect","toBe","connection","connectHeadless","userID","kvStore","storageKey","zero","close","first","headlessHotTest","refreshed","clientID","toThrow","user","mutate","insert","insert2","Error","headlessObservedMutationTest"],"sources":["../../src/createZeroClient.headless.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["import_zero","require","import_vitest","import_createZeroClient","import_useMutation","_type_of","obj","Symbol","constructor","userTable","table","columns","id","string","name","primaryKey","schema","createSchema","tables","byId","byId2","args","test","client","createZeroClient","models","groupedQueries","headlessTest","instanceName","pending","before","Promise","race","waitForZero","resolve","expect","toBe","connection","connectHeadless","userID","kvStore","storageKey","zero","close","first","headlessHotTest","refreshed","clientID","toThrow","user","mutate","insert","insert2","Error","headlessObservedMutationTest","errors","dispose","onMutationError","error","push","Reflect","get","result","apply","all","toHaveLength","toMatchObject","kind","message","length","missing","toEqual","scope"],"sources":["createZeroClient.headless.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_zero = require(\"@rocicorp/zero\");\nvar import_vitest = require(\"vitest\");\nvar import_createZeroClient = require(\"./createZeroClient\");\nvar import_useMutation = require(\"./helpers/useMutation\");\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nvar userTable = (0, import_zero.table)(\"user\").columns({\n id: (0, import_zero.string)(),\n name: (0, import_zero.string)()\n}).primaryKey(\"id\");\nvar schema = (0, import_zero.createSchema)({\n tables: [\n userTable\n ]\n});\nvar byId = function byId2(args) {\n return args;\n};\n(0, import_vitest.test)(\"connectHeadless publishes the instance with no react tree\", async function() {\n var client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {\n headlessTest: {\n byId\n }\n },\n instanceName: \"headless-test\"\n });\n var pending = /* @__PURE__ */ Symbol(\"pending\");\n var before = await Promise.race([\n client.waitForZero(),\n Promise.resolve(pending)\n ]);\n (0, import_vitest.expect)(before).toBe(pending);\n var connection = client.connectHeadless({\n userID: \"user-headless\",\n kvStore: \"mem\",\n storageKey: \"headless-test\"\n });\n (0, import_vitest.expect)(await client.waitForZero()).toBe(connection.zero);\n await connection.close();\n});\n(0, import_vitest.test)(\"a hot-recreated client resolves the mounted same-name instance\", async function() {\n var first = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {\n headlessHotTest: {\n byId\n }\n },\n instanceName: \"headless-hot-test\"\n });\n var connection = first.connectHeadless({\n userID: \"user-headless-hot\",\n kvStore: \"mem\",\n storageKey: \"headless-hot-test\"\n });\n var refreshed = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {\n headlessHotTest: {\n byId\n }\n },\n instanceName: \"headless-hot-test\"\n });\n (0, import_vitest.expect)(refreshed.zero.clientID).toBe(connection.zero.clientID);\n (0, import_vitest.expect)(await refreshed.waitForZero()).toBe(connection.zero);\n await connection.close();\n (0, import_vitest.expect)(function() {\n return refreshed.zero.clientID;\n }).toThrow(/not initialized/);\n});\n(0, import_vitest.test)(\"direct facade mutations surface client failures without explicit observation\", async function() {\n var client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {\n user: {\n mutate: {\n insert: async function insert2() {\n throw new Error(\"optimistic mutation failed\");\n }\n }\n }\n },\n groupedQueries: {\n headlessObservedMutationTest: {\n byId\n }\n },\n instanceName: \"headless-observed-mutation-test\"\n });\n var connection = client.connectHeadless({\n userID: \"user-headless-observed-mutation\",\n kvStore: \"mem\",\n storageKey: \"headless-observed-mutation-test\"\n });\n var errors = [];\n var dispose = (0, import_useMutation.onMutationError)(function(error) {\n return errors.push(error);\n });\n var mutate = Reflect.get(client.zero, \"mutate\");\n var user = Reflect.get(mutate, \"user\");\n var insert = Reflect.get(user, \"insert\");\n var result = Reflect.apply(insert, null, [\n {\n id: \"u1\",\n name: \"Ada\"\n }\n ]);\n if (result === null || (typeof result === \"undefined\" ? \"undefined\" : _type_of(result)) !== \"object\") {\n throw new Error(\"mutation did not return client/server promises\");\n }\n await Promise.all([\n Reflect.get(result, \"client\"),\n Reflect.get(result, \"server\")\n ]);\n await Promise.resolve();\n (0, import_vitest.expect)(errors).toHaveLength(1);\n (0, import_vitest.expect)(errors[0]).toMatchObject({\n kind: \"app\",\n message: \"optimistic mutation failed\"\n });\n errors.length = 0;\n var missing = Reflect.get(user, \"createdAfterClientConstruction\");\n (0, import_vitest.expect)(function() {\n return Reflect.apply(missing, null, [\n {}\n ]);\n }).toThrow(\"mutation 'user.createdAfterClientConstruction' is not registered\");\n (0, import_vitest.expect)(errors).toEqual([\n {\n scope: \"client\",\n kind: \"zero\",\n message: \"[on-zero] mutation 'user.createdAfterClientConstruction' is not registered on the active Zero client.\"\n }\n ]);\n dispose();\n await connection.close();\n});\n//# sourceMappingURL=createZeroClient.headless.test.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["import_zero","require","import_client","import_vitest","import_createZeroClient","noteTable","table","columns","id","string","primaryKey","schema","createSchema","tables","response","body","status","arguments","length","Response","JSON","stringify","headers","eventually","assertion","timeoutMs","deadline","Date","now","lastError","error","Promise","resolve","setTimeout","test","authorizations","fetch","vi","fn","_input","init","push","Headers","get","refreshAuth","client","createZeroClient","models","groupedQueries","instanceName","connection","connectHeadless","userID","auth","cacheURL","kvStore","transport","createZeroClientTransport","expect","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
+ {"version":3,"names":["import_zero","require","import_client","import_vitest","import_createZeroClient","noteTable","table","columns","id","string","primaryKey","schema","createSchema","tables","response","body","status","arguments","length","Response","JSON","stringify","headers","eventually","assertion","timeoutMs","deadline","Date","now","lastError","error","Promise","resolve","setTimeout","test","authorizations","fetch","vi","fn","_input","init","push","Headers","get","refreshAuth","client","createZeroClient","models","groupedQueries","instanceName","connection","connectHeadless","userID","auth","cacheURL","kvStore","transport","createZeroClientTransport","expect","zero","state","current","name","toBe","toEqual","toHaveBeenCalledTimes","close","authorization","cookie","lastMutationIDChanges","rowsPatch","replacement","toHaveLength"],"sources":["createZeroClient.httpAuth.test.native.js"],"sourcesContent":["\"use strict\";\nvar import_zero = require(\"@rocicorp/zero\");\nvar import_client = require(\"orez-lite/client\");\nvar import_vitest = require(\"vitest\");\nvar import_createZeroClient = require(\"./createZeroClient\");\nvar noteTable = (0, import_zero.table)(\"note\").columns({\n id: (0, import_zero.string)()\n}).primaryKey(\"id\");\nvar schema = (0, import_zero.createSchema)({\n tables: [\n noteTable\n ]\n});\nfunction response(body) {\n var status = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 200;\n return new Response(JSON.stringify(body), {\n status,\n headers: {\n \"content-type\": \"application/json\"\n }\n });\n}\nasync function eventually(assertion) {\n var timeoutMs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 2e3;\n var deadline = Date.now() + timeoutMs;\n var lastError;\n while (Date.now() < deadline) {\n try {\n assertion();\n return;\n } catch (error) {\n lastError = error;\n await new Promise(function(resolve) {\n return setTimeout(resolve, 5);\n });\n }\n }\n throw lastError;\n}\n(0, import_vitest.test)(\"unchanged unauthorized auth parks after one real HTTP transport request\", async function() {\n var authorizations = [];\n var fetch = import_vitest.vi.fn(async function(_input, init) {\n authorizations.push(new Headers(init === null || init === void 0 ? void 0 : init.headers).get(\"authorization\"));\n return response({\n error: \"missing authentication\"\n }, 401);\n });\n var refreshAuth = import_vitest.vi.fn(async function() {\n return \"expired-token\";\n });\n var client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"http-auth-unchanged\"\n });\n var connection = client.connectHeadless({\n userID: \"unauthorized-user\",\n auth: \"expired-token\",\n cacheURL: \"https://http-auth-unchanged.orez.test/zero\",\n kvStore: \"mem\",\n transport: (0, import_client.createZeroClientTransport)({\n fetch\n }),\n refreshAuth\n });\n try {\n await eventually(function() {\n return (0, import_vitest.expect)(connection.zero.connection.state.current.name).toBe(\"needs-auth\");\n });\n await new Promise(function(resolve) {\n return setTimeout(resolve, 100);\n });\n (0, import_vitest.expect)(authorizations).toEqual([\n \"Bearer expired-token\"\n ]);\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n (0, import_vitest.expect)(connection.zero.connection.state.current.name).toBe(\"needs-auth\");\n } finally {\n await connection.close();\n }\n});\n(0, import_vitest.test)(\"warm headless client refreshes an expired bearer and reconnects\", async function() {\n var authorizations = [];\n var fetch = import_vitest.vi.fn(async function(_input, init) {\n var authorization = new Headers(init === null || init === void 0 ? void 0 : init.headers).get(\"authorization\");\n authorizations.push(authorization);\n if (authorization === \"Bearer expired-token\") {\n return response({\n error: \"expired bearer\"\n }, 401);\n }\n return response({\n cookie: 1,\n lastMutationIDChanges: {},\n rowsPatch: []\n });\n });\n var refreshAuth = import_vitest.vi.fn(async function() {\n return \"fresh-token\";\n });\n var client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"http-auth-refresh\"\n });\n var connection = client.connectHeadless({\n userID: \"authorized-user\",\n auth: \"expired-token\",\n cacheURL: \"https://http-auth-refresh.orez.test/zero\",\n kvStore: \"mem\",\n transport: (0, import_client.createZeroClientTransport)({\n fetch\n }),\n refreshAuth\n });\n try {\n await eventually(function() {\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(1);\n (0, import_vitest.expect)(authorizations).toEqual([\n \"Bearer expired-token\",\n \"Bearer fresh-token\"\n ]);\n (0, import_vitest.expect)(connection.zero.connection.state.current.name).toBe(\"connected\");\n });\n } finally {\n await connection.close();\n }\n});\n(0, import_vitest.test)(\"three rejected replacement bearers leave a real HTTP client parked\", async function() {\n var authorizations = [];\n var replacement = 0;\n var fetch = import_vitest.vi.fn(async function(_input, init) {\n authorizations.push(new Headers(init === null || init === void 0 ? void 0 : init.headers).get(\"authorization\"));\n return response({\n error: \"project access required\"\n }, 403);\n });\n var refreshAuth = import_vitest.vi.fn(async function() {\n return `replacement-token-${++replacement}`;\n });\n var client = (0, import_createZeroClient.createZeroClient)({\n schema,\n models: {},\n groupedQueries: {},\n instanceName: \"http-auth-bounded\"\n });\n var connection = client.connectHeadless({\n userID: \"unauthorized-user\",\n auth: \"expired-token\",\n cacheURL: \"https://http-auth-bounded.orez.test/zero\",\n kvStore: \"mem\",\n transport: (0, import_client.createZeroClientTransport)({\n fetch\n }),\n refreshAuth\n });\n try {\n await eventually(function() {\n return (0, import_vitest.expect)(authorizations).toHaveLength(4);\n });\n await new Promise(function(resolve) {\n return setTimeout(resolve, 100);\n });\n (0, import_vitest.expect)(authorizations).toEqual([\n \"Bearer expired-token\",\n \"Bearer replacement-token-1\",\n \"Bearer replacement-token-2\",\n \"Bearer replacement-token-3\"\n ]);\n (0, import_vitest.expect)(refreshAuth).toHaveBeenCalledTimes(3);\n (0, import_vitest.expect)(connection.zero.connection.state.current.name).toBe(\"needs-auth\");\n } finally {\n await connection.close();\n }\n});\n//# sourceMappingURL=createZeroClient.httpAuth.test.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -45,6 +45,7 @@ var import_recoverZeroClient = require("./helpers/recoverZeroClient.native.js");
45
45
  var import_useMutation = require("./helpers/useMutation.native.js");
46
46
  var import_instanceRegistry = require("./instanceRegistry.native.js");
47
47
  var import_modelRegistry = require("./modelRegistry.native.js");
48
+ var import_queryErrorRecovery = require("./queryErrorRecovery.native.js");
48
49
  var import_queryJson = require("./queryJson.native.js");
49
50
  var import_queryRegistry = require("./queryRegistry.native.js");
50
51
  var import_resolveQuery = require("./resolveQuery.native.js");
@@ -277,6 +278,7 @@ function createZeroClientInternal(param) {
277
278
  }
278
279
  var clientMutators = null;
279
280
  var installedTransports = /* @__PURE__ */new WeakMap();
281
+ var queryFaults = /* @__PURE__ */new WeakMap();
280
282
  function getClientMutators() {
281
283
  clientMutators !== null && clientMutators !== void 0 ? clientMutators : clientMutators = (0, import_createMutators.createMutators)({
282
284
  models,
@@ -360,7 +362,13 @@ function createZeroClientInternal(param) {
360
362
  onClientStateNotFound: (_options_onClientStateNotFound = options.onClientStateNotFound) !== null && _options_onClientStateNotFound !== void 0 ? _options_onClientStateNotFound : recovery.onClientStateNotFound
361
363
  });
362
364
  instanceRef.current = createdInstance;
363
- if (installedTransport) installedTransports.set(createdInstance, installedTransport);
365
+ if (installedTransport) {
366
+ installedTransports.set(createdInstance, installedTransport);
367
+ queryFaults.set(createdInstance, new import_queryErrorRecovery.QueryFaults(function () {
368
+ var _installedTransport_pull;
369
+ void (installedTransport === null || installedTransport === void 0 ? void 0 : (_installedTransport_pull = installedTransport.pull) === null || _installedTransport_pull === void 0 ? void 0 : _installedTransport_pull.call(installedTransport));
370
+ }));
371
+ }
364
372
  (0, import_recoverZeroClient.primeGroupCache)(recoveryDeps);
365
373
  return createdInstance;
366
374
  }
@@ -509,7 +517,10 @@ function createZeroClientInternal(param) {
509
517
  var AuthDataContext = /* @__PURE__ */(0, import_react2.createContext)({});
510
518
  var useQuery = (0, import_createUseQuery.createUseQuery)({
511
519
  DisabledContext,
512
- customQueries
520
+ customQueries,
521
+ getQueryFaults: function getQueryFaults(zero2) {
522
+ return queryFaults.get(zero2);
523
+ }
513
524
  });
514
525
  var useQueryDirect = createDirectUseQuery ? createDirectUseQuery({
515
526
  DisabledContext,
@@ -517,7 +528,10 @@ function createZeroClientInternal(param) {
517
528
  getZero: function getZero() {
518
529
  return zeroRuntime.zero;
519
530
  },
520
- zeroVersion: zeroInstanceVersion
531
+ zeroVersion: zeroInstanceVersion,
532
+ getQueryFaults: function getQueryFaults(zero2) {
533
+ return queryFaults.get(zero2);
534
+ }
521
535
  }) : createUnavailableDirectUseQuery();
522
536
  var createUsePermission = function createUsePermission2(useQueryImpl) {
523
537
  if (import_platform.IS_SERVER_RUNTIME) {
@@ -950,12 +964,21 @@ function createZeroClientInternal(param) {
950
964
  });
951
965
  };
952
966
  var ProvideZero = import_platform.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
967
+ var publishedMounts = /* @__PURE__ */new Map();
953
968
  var SetZeroInstance = function SetZeroInstance2() {
954
969
  var zeroInstance = (0, import_react.useZero)();
955
970
  publishZeroInstance(zeroInstance);
956
971
  (0, import_react2.useInsertionEffect)(function () {
972
+ var _publishedMounts_get;
957
973
  publishZeroInstance(zeroInstance);
974
+ publishedMounts.set(zeroInstance, ((_publishedMounts_get = publishedMounts.get(zeroInstance)) !== null && _publishedMounts_get !== void 0 ? _publishedMounts_get : 0) + 1);
958
975
  return function () {
976
+ var remaining = publishedMounts.get(zeroInstance) - 1;
977
+ if (remaining > 0) {
978
+ publishedMounts.set(zeroInstance, remaining);
979
+ return;
980
+ }
981
+ publishedMounts.delete(zeroInstance);
959
982
  if (!unpublishZeroInstance(zeroInstance)) return;
960
983
  mutationLifecycle.fence();
961
984
  };
@@ -1065,7 +1088,9 @@ function createZeroClientInternal(param) {
1065
1088
  var installedTransport = installedTransports.get(zeroInstance);
1066
1089
  var unsubscribeTransport = installedTransport ? installedTransport.subscribeLifecycle(function (event) {
1067
1090
  if (event.type === "pull" && event.clientID === zeroInstance.clientID) {
1091
+ var _queryFaults_get;
1068
1092
  authRefreshAttempts = 0;
1093
+ if (event.queryErrors) (_queryFaults_get = queryFaults.get(zeroInstance)) === null || _queryFaults_get === void 0 ? void 0 : _queryFaults_get.update(event.queryErrors);
1069
1094
  }
1070
1095
  }) : void 0;
1071
1096
  var handle = function handle2() {