on-zero 0.7.10 → 0.8.0

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 (546) hide show
  1. package/{readme.md → README.md} +172 -231
  2. package/dist/cjs/cli.cjs +5 -2
  3. package/dist/cjs/cli.native.js +5 -2
  4. package/dist/cjs/cli.native.js.map +1 -1
  5. package/dist/cjs/combineZeroClients.cjs +2 -2
  6. package/dist/cjs/combineZeroClients.native.js +6 -6
  7. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  8. package/dist/cjs/config.cjs +30 -0
  9. package/dist/cjs/config.native.js +33 -0
  10. package/dist/cjs/config.native.js.map +1 -0
  11. package/dist/cjs/createPermissions.cjs +2 -2
  12. package/dist/cjs/createPermissions.native.js +17 -27
  13. package/dist/cjs/createPermissions.native.js.map +1 -1
  14. package/dist/cjs/createUseQuery.cjs +3 -3
  15. package/dist/cjs/createUseQuery.native.js +4 -4
  16. package/dist/cjs/createUseQuery.native.js.map +1 -1
  17. package/dist/cjs/createUseQueryDirect.cjs +4 -3
  18. package/dist/cjs/createUseQueryDirect.native.js +14 -18
  19. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  20. package/dist/cjs/createZeroClient.cjs +29 -9
  21. package/dist/cjs/createZeroClient.connection.test.cjs +11 -0
  22. package/dist/cjs/createZeroClient.connection.test.native.js +14 -7
  23. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  24. package/dist/cjs/createZeroClient.native.js +58 -32
  25. package/dist/cjs/createZeroClient.native.js.map +1 -1
  26. package/dist/cjs/createZeroClient.recovery.test.cjs +90 -3
  27. package/dist/cjs/createZeroClient.recovery.test.native.js +109 -19
  28. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  29. package/dist/cjs/generate-helpers.cjs +70 -17
  30. package/dist/cjs/generate-helpers.native.js +110 -23
  31. package/dist/cjs/generate-helpers.native.js.map +1 -1
  32. package/dist/cjs/generate-layout.cjs +586 -0
  33. package/dist/cjs/generate-layout.native.js +1275 -0
  34. package/dist/cjs/generate-layout.native.js.map +1 -0
  35. package/dist/cjs/generate-lite.cjs +295 -27
  36. package/dist/cjs/generate-lite.native.js +854 -102
  37. package/dist/cjs/generate-lite.native.js.map +1 -1
  38. package/dist/cjs/generate-lite.test.cjs +433 -41
  39. package/dist/cjs/generate-lite.test.native.js +446 -41
  40. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  41. package/dist/cjs/generate.cjs +172 -94
  42. package/dist/cjs/generate.native.js +324 -148
  43. package/dist/cjs/generate.native.js.map +1 -1
  44. package/dist/cjs/generate.test.cjs +362 -45
  45. package/dist/cjs/generate.test.native.js +374 -45
  46. package/dist/cjs/generate.test.native.js.map +1 -1
  47. package/dist/cjs/helpers/NullToOptional.cjs +18 -0
  48. package/dist/cjs/helpers/NullToOptional.native.js +21 -0
  49. package/dist/cjs/helpers/NullToOptional.native.js.map +1 -0
  50. package/dist/cjs/helpers/asyncContext.cjs +128 -0
  51. package/dist/cjs/helpers/asyncContext.native.js +87 -0
  52. package/dist/cjs/helpers/asyncContext.native.js.map +1 -0
  53. package/dist/cjs/helpers/batchQuery.cjs +2 -2
  54. package/dist/cjs/helpers/batchQuery.native.js +2 -2
  55. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  56. package/dist/cjs/helpers/createMutators.cjs +7 -4
  57. package/dist/cjs/helpers/createMutators.native.js +12 -9
  58. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  59. package/dist/cjs/helpers/createMutators.test.native.js +2 -2
  60. package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
  61. package/dist/cjs/helpers/ellipsis.cjs +35 -0
  62. package/dist/cjs/helpers/ellipsis.native.js +38 -0
  63. package/dist/cjs/helpers/ellipsis.native.js.map +1 -0
  64. package/dist/cjs/helpers/emitter.cjs +99 -0
  65. package/dist/cjs/helpers/emitter.native.js +125 -0
  66. package/dist/cjs/helpers/emitter.native.js.map +1 -0
  67. package/dist/cjs/helpers/ensure.cjs +33 -0
  68. package/dist/cjs/helpers/ensure.native.js +37 -0
  69. package/dist/cjs/helpers/ensure.native.js.map +1 -0
  70. package/dist/cjs/helpers/ensureLoggedIn.cjs +2 -2
  71. package/dist/cjs/helpers/ensureLoggedIn.native.js +3 -3
  72. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  73. package/dist/cjs/helpers/errors.cjs +40 -0
  74. package/dist/cjs/helpers/errors.native.js +152 -0
  75. package/dist/cjs/helpers/errors.native.js.map +1 -0
  76. package/dist/cjs/helpers/getCurrentComponentStack.cjs +71 -0
  77. package/dist/cjs/helpers/getCurrentComponentStack.native.js +93 -0
  78. package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -0
  79. package/dist/cjs/helpers/globalValue.cjs +39 -0
  80. package/dist/cjs/helpers/globalValue.native.js +42 -0
  81. package/dist/cjs/helpers/globalValue.native.js.map +1 -0
  82. package/dist/cjs/helpers/mapObject.cjs +36 -0
  83. package/dist/cjs/helpers/mapObject.native.js +39 -0
  84. package/dist/cjs/helpers/mapObject.native.js.map +1 -0
  85. package/dist/cjs/helpers/mutationLifecycle.cjs +251 -0
  86. package/dist/cjs/helpers/mutationLifecycle.native.js +392 -0
  87. package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -0
  88. package/dist/cjs/helpers/mutationLifecycle.test.cjs +174 -0
  89. package/dist/cjs/helpers/mutationLifecycle.test.native.js +182 -0
  90. package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -0
  91. package/dist/cjs/helpers/mutatorContext.cjs +3 -3
  92. package/dist/cjs/helpers/mutatorContext.native.js +5 -5
  93. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  94. package/dist/cjs/helpers/platform.cjs +31 -0
  95. package/dist/cjs/helpers/platform.native.js +33 -0
  96. package/dist/cjs/helpers/platform.native.js.map +1 -0
  97. package/dist/cjs/helpers/prettyFormatZeroQuery.cjs +2 -2
  98. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js +7 -7
  99. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  100. package/dist/cjs/helpers/queryContext.cjs +2 -2
  101. package/dist/cjs/helpers/queryContext.native.js +4 -4
  102. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  103. package/dist/cjs/helpers/recoverZeroClient.cjs +14 -15
  104. package/dist/cjs/helpers/recoverZeroClient.native.js +26 -23
  105. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  106. package/dist/cjs/helpers/recoverZeroClient.test.cjs +10 -8
  107. package/dist/cjs/helpers/recoverZeroClient.test.native.js +17 -21
  108. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  109. package/dist/cjs/helpers/sleep.cjs +34 -0
  110. package/dist/cjs/helpers/sleep.native.js +39 -0
  111. package/dist/cjs/helpers/sleep.native.js.map +1 -0
  112. package/dist/cjs/helpers/time.cjs +47 -0
  113. package/dist/cjs/helpers/time.native.js +80 -0
  114. package/dist/cjs/helpers/time.native.js.map +1 -0
  115. package/dist/cjs/helpers/tuple.cjs +18 -0
  116. package/dist/cjs/helpers/tuple.native.js +21 -0
  117. package/dist/cjs/helpers/tuple.native.js.map +1 -0
  118. package/dist/cjs/helpers/useMutation.native.js +5 -5
  119. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  120. package/dist/cjs/helpers/useMutation.test.native.js +1 -1
  121. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  122. package/dist/cjs/helpers/useZeroDebug.cjs +2 -2
  123. package/dist/cjs/helpers/useZeroDebug.native.js +7 -8
  124. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  125. package/dist/cjs/index.cjs +9 -1
  126. package/dist/cjs/index.native.js +8 -0
  127. package/dist/cjs/index.native.js.map +1 -1
  128. package/dist/cjs/instanceRegistry.cjs +16 -4
  129. package/dist/cjs/instanceRegistry.native.js +56 -6
  130. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  131. package/dist/cjs/multi.cjs +34 -13
  132. package/dist/cjs/multi.native.js +39 -17
  133. package/dist/cjs/multi.native.js.map +1 -1
  134. package/dist/cjs/multiInstance.test.cjs +6 -2
  135. package/dist/cjs/multiInstance.test.native.js +13 -9
  136. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  137. package/dist/cjs/multiInstanceNested.test.native.js +10 -10
  138. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  139. package/dist/cjs/multiPartition.test.cjs +85 -36
  140. package/dist/cjs/multiPartition.test.native.js +102 -39
  141. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  142. package/dist/cjs/mutations.cjs +2 -2
  143. package/dist/cjs/mutations.native.js +4 -4
  144. package/dist/cjs/mutations.native.js.map +1 -1
  145. package/dist/cjs/mutations.test.native.js +3 -3
  146. package/dist/cjs/mutations.test.native.js.map +1 -1
  147. package/dist/cjs/provideZero.hydration.test.cjs +3 -3
  148. package/dist/cjs/provideZero.hydration.test.native.js +4 -4
  149. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  150. package/dist/cjs/run.cjs +1 -1
  151. package/dist/cjs/run.native.js +3 -3
  152. package/dist/cjs/run.native.js.map +1 -1
  153. package/dist/cjs/server.cjs +20 -16
  154. package/dist/cjs/server.native.js +50 -57
  155. package/dist/cjs/server.native.js.map +1 -1
  156. package/dist/cjs/server.test.cjs +129 -6
  157. package/dist/cjs/server.test.native.js +141 -10
  158. package/dist/cjs/server.test.native.js.map +1 -1
  159. package/dist/cjs/serverWhere.test.native.js +3 -3
  160. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  161. package/dist/cjs/state.cjs +2 -2
  162. package/dist/cjs/state.native.js +10 -10
  163. package/dist/cjs/state.native.js.map +1 -1
  164. package/dist/cjs/usePermission.test.native.js +3 -3
  165. package/dist/cjs/usePermission.test.native.js.map +1 -1
  166. package/dist/cjs/useQuery.empty.test.cjs +3 -3
  167. package/dist/cjs/useQuery.empty.test.native.js +6 -6
  168. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  169. package/dist/cjs/useQuery.ssr.test.native.js +2 -2
  170. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  171. package/dist/cjs/vite-plugin.cjs +7 -8
  172. package/dist/cjs/vite-plugin.native.js +11 -11
  173. package/dist/cjs/vite-plugin.native.js.map +1 -1
  174. package/dist/cjs/where.cjs +3 -3
  175. package/dist/cjs/where.native.js +4 -4
  176. package/dist/cjs/where.native.js.map +1 -1
  177. package/dist/esm/cli.mjs +6 -3
  178. package/dist/esm/cli.mjs.map +1 -1
  179. package/dist/esm/cli.native.js +6 -3
  180. package/dist/esm/cli.native.js.map +1 -1
  181. package/dist/esm/combineZeroClients.mjs +1 -1
  182. package/dist/esm/combineZeroClients.mjs.map +1 -1
  183. package/dist/esm/combineZeroClients.native.js +5 -5
  184. package/dist/esm/combineZeroClients.native.js.map +1 -1
  185. package/dist/esm/config.mjs +5 -0
  186. package/dist/esm/config.mjs.map +1 -0
  187. package/dist/esm/config.native.js +5 -0
  188. package/dist/esm/config.native.js.map +1 -0
  189. package/dist/esm/createPermissions.mjs +1 -1
  190. package/dist/esm/createPermissions.mjs.map +1 -1
  191. package/dist/esm/createPermissions.native.js +16 -26
  192. package/dist/esm/createPermissions.native.js.map +1 -1
  193. package/dist/esm/createUseQuery.mjs +2 -2
  194. package/dist/esm/createUseQuery.mjs.map +1 -1
  195. package/dist/esm/createUseQuery.native.js +3 -3
  196. package/dist/esm/createUseQuery.native.js.map +1 -1
  197. package/dist/esm/createUseQueryDirect.mjs +2 -1
  198. package/dist/esm/createUseQueryDirect.mjs.map +1 -1
  199. package/dist/esm/createUseQueryDirect.native.js +12 -16
  200. package/dist/esm/createUseQueryDirect.native.js.map +1 -1
  201. package/dist/esm/createZeroClient.connection.test.mjs +11 -0
  202. package/dist/esm/createZeroClient.connection.test.mjs.map +1 -1
  203. package/dist/esm/createZeroClient.connection.test.native.js +14 -7
  204. package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
  205. package/dist/esm/createZeroClient.mjs +25 -5
  206. package/dist/esm/createZeroClient.mjs.map +1 -1
  207. package/dist/esm/createZeroClient.native.js +54 -28
  208. package/dist/esm/createZeroClient.native.js.map +1 -1
  209. package/dist/esm/createZeroClient.recovery.test.mjs +90 -3
  210. package/dist/esm/createZeroClient.recovery.test.mjs.map +1 -1
  211. package/dist/esm/createZeroClient.recovery.test.native.js +109 -19
  212. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  213. package/dist/esm/generate-helpers.mjs +70 -18
  214. package/dist/esm/generate-helpers.mjs.map +1 -1
  215. package/dist/esm/generate-helpers.native.js +110 -24
  216. package/dist/esm/generate-helpers.native.js.map +1 -1
  217. package/dist/esm/generate-layout.mjs +560 -0
  218. package/dist/esm/generate-layout.mjs.map +1 -0
  219. package/dist/esm/generate-layout.native.js +1246 -0
  220. package/dist/esm/generate-layout.native.js.map +1 -0
  221. package/dist/esm/generate-lite.mjs +296 -28
  222. package/dist/esm/generate-lite.mjs.map +1 -1
  223. package/dist/esm/generate-lite.native.js +855 -103
  224. package/dist/esm/generate-lite.native.js.map +1 -1
  225. package/dist/esm/generate-lite.test.mjs +434 -42
  226. package/dist/esm/generate-lite.test.mjs.map +1 -1
  227. package/dist/esm/generate-lite.test.native.js +447 -42
  228. package/dist/esm/generate-lite.test.native.js.map +1 -1
  229. package/dist/esm/generate.mjs +172 -96
  230. package/dist/esm/generate.mjs.map +1 -1
  231. package/dist/esm/generate.native.js +324 -150
  232. package/dist/esm/generate.native.js.map +1 -1
  233. package/dist/esm/generate.test.mjs +366 -49
  234. package/dist/esm/generate.test.mjs.map +1 -1
  235. package/dist/esm/generate.test.native.js +378 -49
  236. package/dist/esm/generate.test.native.js.map +1 -1
  237. package/dist/esm/helpers/NullToOptional.mjs +2 -0
  238. package/dist/esm/helpers/NullToOptional.mjs.map +1 -0
  239. package/dist/esm/helpers/NullToOptional.native.js +2 -0
  240. package/dist/esm/helpers/NullToOptional.native.js.map +1 -0
  241. package/dist/esm/helpers/asyncContext.mjs +102 -0
  242. package/dist/esm/helpers/asyncContext.mjs.map +1 -0
  243. package/dist/esm/helpers/asyncContext.native.js +58 -0
  244. package/dist/esm/helpers/asyncContext.native.js.map +1 -0
  245. package/dist/esm/helpers/batchQuery.mjs +1 -1
  246. package/dist/esm/helpers/batchQuery.native.js +1 -1
  247. package/dist/esm/helpers/createMutators.mjs +5 -2
  248. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  249. package/dist/esm/helpers/createMutators.native.js +10 -7
  250. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  251. package/dist/esm/helpers/createMutators.test.native.js +2 -2
  252. package/dist/esm/helpers/createMutators.test.native.js.map +1 -1
  253. package/dist/esm/helpers/ellipsis.mjs +10 -0
  254. package/dist/esm/helpers/ellipsis.mjs.map +1 -0
  255. package/dist/esm/helpers/ellipsis.native.js +10 -0
  256. package/dist/esm/helpers/ellipsis.native.js.map +1 -0
  257. package/dist/esm/helpers/emitter.mjs +72 -0
  258. package/dist/esm/helpers/emitter.mjs.map +1 -0
  259. package/dist/esm/helpers/emitter.native.js +95 -0
  260. package/dist/esm/helpers/emitter.native.js.map +1 -0
  261. package/dist/esm/helpers/ensure.mjs +8 -0
  262. package/dist/esm/helpers/ensure.mjs.map +1 -0
  263. package/dist/esm/helpers/ensure.native.js +9 -0
  264. package/dist/esm/helpers/ensure.native.js.map +1 -0
  265. package/dist/esm/helpers/ensureLoggedIn.mjs +1 -1
  266. package/dist/esm/helpers/ensureLoggedIn.mjs.map +1 -1
  267. package/dist/esm/helpers/ensureLoggedIn.native.js +2 -2
  268. package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
  269. package/dist/esm/helpers/errors.mjs +14 -0
  270. package/dist/esm/helpers/errors.mjs.map +1 -0
  271. package/dist/esm/helpers/errors.native.js +123 -0
  272. package/dist/esm/helpers/errors.native.js.map +1 -0
  273. package/dist/esm/helpers/getCurrentComponentStack.mjs +35 -0
  274. package/dist/esm/helpers/getCurrentComponentStack.mjs.map +1 -0
  275. package/dist/esm/helpers/getCurrentComponentStack.native.js +54 -0
  276. package/dist/esm/helpers/getCurrentComponentStack.native.js.map +1 -0
  277. package/dist/esm/helpers/globalValue.mjs +14 -0
  278. package/dist/esm/helpers/globalValue.mjs.map +1 -0
  279. package/dist/esm/helpers/globalValue.native.js +14 -0
  280. package/dist/esm/helpers/globalValue.native.js.map +1 -0
  281. package/dist/esm/helpers/mapObject.mjs +11 -0
  282. package/dist/esm/helpers/mapObject.mjs.map +1 -0
  283. package/dist/esm/helpers/mapObject.native.js +11 -0
  284. package/dist/esm/helpers/mapObject.native.js.map +1 -0
  285. package/dist/esm/helpers/mutationLifecycle.mjs +221 -0
  286. package/dist/esm/helpers/mutationLifecycle.mjs.map +1 -0
  287. package/dist/esm/helpers/mutationLifecycle.native.js +359 -0
  288. package/dist/esm/helpers/mutationLifecycle.native.js.map +1 -0
  289. package/dist/esm/helpers/mutationLifecycle.test.mjs +175 -0
  290. package/dist/esm/helpers/mutationLifecycle.test.mjs.map +1 -0
  291. package/dist/esm/helpers/mutationLifecycle.test.native.js +180 -0
  292. package/dist/esm/helpers/mutationLifecycle.test.native.js.map +1 -0
  293. package/dist/esm/helpers/mutatorContext.mjs +1 -1
  294. package/dist/esm/helpers/mutatorContext.native.js +4 -4
  295. package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
  296. package/dist/esm/helpers/platform.mjs +5 -0
  297. package/dist/esm/helpers/platform.mjs.map +1 -0
  298. package/dist/esm/helpers/platform.native.js +4 -0
  299. package/dist/esm/helpers/platform.native.js.map +1 -0
  300. package/dist/esm/helpers/prettyFormatZeroQuery.mjs +1 -1
  301. package/dist/esm/helpers/prettyFormatZeroQuery.native.js +6 -6
  302. package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  303. package/dist/esm/helpers/queryContext.mjs +1 -1
  304. package/dist/esm/helpers/queryContext.native.js +3 -3
  305. package/dist/esm/helpers/queryContext.native.js.map +1 -1
  306. package/dist/esm/helpers/recoverZeroClient.mjs +14 -15
  307. package/dist/esm/helpers/recoverZeroClient.mjs.map +1 -1
  308. package/dist/esm/helpers/recoverZeroClient.native.js +26 -23
  309. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
  310. package/dist/esm/helpers/recoverZeroClient.test.mjs +8 -6
  311. package/dist/esm/helpers/recoverZeroClient.test.mjs.map +1 -1
  312. package/dist/esm/helpers/recoverZeroClient.test.native.js +15 -19
  313. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
  314. package/dist/esm/helpers/sleep.mjs +9 -0
  315. package/dist/esm/helpers/sleep.mjs.map +1 -0
  316. package/dist/esm/helpers/sleep.native.js +11 -0
  317. package/dist/esm/helpers/sleep.native.js.map +1 -0
  318. package/dist/esm/helpers/time.mjs +22 -0
  319. package/dist/esm/helpers/time.mjs.map +1 -0
  320. package/dist/esm/helpers/time.native.js +52 -0
  321. package/dist/esm/helpers/time.native.js.map +1 -0
  322. package/dist/esm/helpers/tuple.mjs +2 -0
  323. package/dist/esm/helpers/tuple.mjs.map +1 -0
  324. package/dist/esm/helpers/tuple.native.js +2 -0
  325. package/dist/esm/helpers/tuple.native.js.map +1 -0
  326. package/dist/esm/helpers/useMutation.native.js +5 -5
  327. package/dist/esm/helpers/useMutation.native.js.map +1 -1
  328. package/dist/esm/helpers/useMutation.test.native.js +1 -1
  329. package/dist/esm/helpers/useMutation.test.native.js.map +1 -1
  330. package/dist/esm/helpers/useZeroDebug.mjs +1 -1
  331. package/dist/esm/helpers/useZeroDebug.mjs.map +1 -1
  332. package/dist/esm/helpers/useZeroDebug.native.js +6 -7
  333. package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
  334. package/dist/esm/index.js +3 -1
  335. package/dist/esm/index.js.map +1 -1
  336. package/dist/esm/index.mjs +3 -1
  337. package/dist/esm/index.mjs.map +1 -1
  338. package/dist/esm/index.native.js +3 -1
  339. package/dist/esm/index.native.js.map +1 -1
  340. package/dist/esm/instanceRegistry.mjs +13 -2
  341. package/dist/esm/instanceRegistry.mjs.map +1 -1
  342. package/dist/esm/instanceRegistry.native.js +53 -4
  343. package/dist/esm/instanceRegistry.native.js.map +1 -1
  344. package/dist/esm/multi.mjs +33 -12
  345. package/dist/esm/multi.mjs.map +1 -1
  346. package/dist/esm/multi.native.js +38 -16
  347. package/dist/esm/multi.native.js.map +1 -1
  348. package/dist/esm/multiInstance.test.mjs +5 -1
  349. package/dist/esm/multiInstance.test.mjs.map +1 -1
  350. package/dist/esm/multiInstance.test.native.js +12 -8
  351. package/dist/esm/multiInstance.test.native.js.map +1 -1
  352. package/dist/esm/multiInstanceNested.test.native.js +10 -10
  353. package/dist/esm/multiInstanceNested.test.native.js.map +1 -1
  354. package/dist/esm/multiPartition.test.mjs +86 -37
  355. package/dist/esm/multiPartition.test.mjs.map +1 -1
  356. package/dist/esm/multiPartition.test.native.js +103 -40
  357. package/dist/esm/multiPartition.test.native.js.map +1 -1
  358. package/dist/esm/mutations.mjs +1 -1
  359. package/dist/esm/mutations.mjs.map +1 -1
  360. package/dist/esm/mutations.native.js +3 -3
  361. package/dist/esm/mutations.native.js.map +1 -1
  362. package/dist/esm/mutations.test.native.js +3 -3
  363. package/dist/esm/mutations.test.native.js.map +1 -1
  364. package/dist/esm/provideZero.hydration.test.mjs +1 -1
  365. package/dist/esm/provideZero.hydration.test.mjs.map +1 -1
  366. package/dist/esm/provideZero.hydration.test.native.js +2 -2
  367. package/dist/esm/provideZero.hydration.test.native.js.map +1 -1
  368. package/dist/esm/run.mjs +1 -1
  369. package/dist/esm/run.mjs.map +1 -1
  370. package/dist/esm/run.native.js +3 -3
  371. package/dist/esm/run.native.js.map +1 -1
  372. package/dist/esm/server.mjs +20 -15
  373. package/dist/esm/server.mjs.map +1 -1
  374. package/dist/esm/server.native.js +50 -56
  375. package/dist/esm/server.native.js.map +1 -1
  376. package/dist/esm/server.test.mjs +130 -7
  377. package/dist/esm/server.test.mjs.map +1 -1
  378. package/dist/esm/server.test.native.js +142 -11
  379. package/dist/esm/server.test.native.js.map +1 -1
  380. package/dist/esm/serverWhere.test.mjs.map +1 -1
  381. package/dist/esm/serverWhere.test.native.js +3 -3
  382. package/dist/esm/serverWhere.test.native.js.map +1 -1
  383. package/dist/esm/state.mjs +1 -1
  384. package/dist/esm/state.mjs.map +1 -1
  385. package/dist/esm/state.native.js +9 -9
  386. package/dist/esm/state.native.js.map +1 -1
  387. package/dist/esm/usePermission.test.native.js +3 -3
  388. package/dist/esm/usePermission.test.native.js.map +1 -1
  389. package/dist/esm/useQuery.empty.test.mjs +1 -1
  390. package/dist/esm/useQuery.empty.test.mjs.map +1 -1
  391. package/dist/esm/useQuery.empty.test.native.js +4 -4
  392. package/dist/esm/useQuery.empty.test.native.js.map +1 -1
  393. package/dist/esm/useQuery.ssr.test.native.js +2 -2
  394. package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
  395. package/dist/esm/vite-plugin.mjs +7 -8
  396. package/dist/esm/vite-plugin.mjs.map +1 -1
  397. package/dist/esm/vite-plugin.native.js +11 -11
  398. package/dist/esm/vite-plugin.native.js.map +1 -1
  399. package/dist/esm/where.mjs +1 -1
  400. package/dist/esm/where.mjs.map +1 -1
  401. package/dist/esm/where.native.js +2 -2
  402. package/dist/esm/where.native.js.map +1 -1
  403. package/package.json +18 -6
  404. package/src/cli.ts +11 -3
  405. package/src/combineZeroClients.tsx +18 -10
  406. package/src/config.ts +72 -0
  407. package/src/createPermissions.ts +3 -4
  408. package/src/createUseQuery.tsx +8 -8
  409. package/src/createUseQueryDirect.tsx +11 -10
  410. package/src/createZeroClient.authData.test.tsx +1 -1
  411. package/src/createZeroClient.connection.test.tsx +13 -2
  412. package/src/createZeroClient.recovery.test.tsx +100 -4
  413. package/src/createZeroClient.tsx +87 -30
  414. package/src/generate-helpers.ts +108 -31
  415. package/src/generate-layout.ts +841 -0
  416. package/src/generate-lite.test.ts +421 -42
  417. package/src/generate-lite.ts +479 -43
  418. package/src/generate.test.ts +552 -90
  419. package/src/generate.ts +360 -163
  420. package/src/helpers/NullToOptional.ts +5 -0
  421. package/src/helpers/asyncContext.native.ts +90 -0
  422. package/src/helpers/asyncContext.ts +159 -0
  423. package/src/helpers/batchQuery.ts +2 -2
  424. package/src/helpers/createMutators.ts +11 -8
  425. package/src/helpers/ellipsis.ts +9 -0
  426. package/src/helpers/emitter.tsx +106 -0
  427. package/src/helpers/ensure.ts +10 -0
  428. package/src/helpers/ensureLoggedIn.ts +1 -2
  429. package/src/helpers/errors.ts +13 -0
  430. package/src/helpers/getCurrentComponentStack.ts +56 -0
  431. package/src/helpers/globalValue.ts +40 -0
  432. package/src/helpers/mapObject.ts +14 -0
  433. package/src/helpers/mutationLifecycle.test.ts +180 -0
  434. package/src/helpers/mutationLifecycle.ts +313 -0
  435. package/src/helpers/mutatorContext.ts +3 -3
  436. package/src/helpers/platform.native.ts +2 -0
  437. package/src/helpers/platform.ts +16 -0
  438. package/src/helpers/prettyFormatZeroQuery.ts +2 -2
  439. package/src/helpers/queryContext.ts +2 -2
  440. package/src/helpers/recoverZeroClient.test.ts +23 -21
  441. package/src/helpers/recoverZeroClient.ts +56 -49
  442. package/src/helpers/sleep.ts +8 -0
  443. package/src/helpers/time.ts +51 -0
  444. package/src/helpers/tuple.ts +1 -0
  445. package/src/helpers/useMutation.tsx +3 -3
  446. package/src/helpers/useZeroDebug.ts +3 -3
  447. package/src/index.ts +13 -1
  448. package/src/instanceRegistry.ts +19 -6
  449. package/src/multi.ts +75 -31
  450. package/src/multiInstance.test.tsx +31 -13
  451. package/src/multiInstanceNested.test.tsx +2 -2
  452. package/src/multiPartition.test.ts +62 -27
  453. package/src/mutations.ts +10 -10
  454. package/src/provideZero.hydration.test.tsx +1 -1
  455. package/src/resolveQuery.ts +2 -2
  456. package/src/run.ts +7 -7
  457. package/src/server.test.ts +117 -18
  458. package/src/server.ts +70 -43
  459. package/src/serverWhere.ts +2 -2
  460. package/src/state.ts +2 -2
  461. package/src/types.ts +47 -6
  462. package/src/useQuery.empty.test.tsx +3 -3
  463. package/src/useQuery.ssr.test.ts +1 -1
  464. package/src/vite-plugin.ts +12 -9
  465. package/src/where.ts +6 -7
  466. package/src/zeroRunner.ts +2 -2
  467. package/types/combineZeroClients.d.ts +11 -5
  468. package/types/combineZeroClients.d.ts.map +1 -1
  469. package/types/config.d.ts +62 -0
  470. package/types/config.d.ts.map +1 -0
  471. package/types/createPermissions.d.ts.map +1 -1
  472. package/types/createUseQuery.d.ts.map +1 -1
  473. package/types/createUseQueryDirect.d.ts +1 -1
  474. package/types/createUseQueryDirect.d.ts.map +1 -1
  475. package/types/createZeroClient.d.ts +22 -12
  476. package/types/createZeroClient.d.ts.map +1 -1
  477. package/types/createZeroClient.recovery.test.d.ts.map +1 -1
  478. package/types/generate-helpers.d.ts +17 -2
  479. package/types/generate-helpers.d.ts.map +1 -1
  480. package/types/generate-layout.d.ts +26 -0
  481. package/types/generate-layout.d.ts.map +1 -0
  482. package/types/generate-lite.d.ts +29 -1
  483. package/types/generate-lite.d.ts.map +1 -1
  484. package/types/generate.d.ts +20 -0
  485. package/types/generate.d.ts.map +1 -1
  486. package/types/helpers/NullToOptional.d.ts +6 -0
  487. package/types/helpers/NullToOptional.d.ts.map +1 -0
  488. package/types/helpers/asyncContext.d.ts +15 -0
  489. package/types/helpers/asyncContext.d.ts.map +1 -0
  490. package/types/helpers/asyncContext.native.d.ts +8 -0
  491. package/types/helpers/asyncContext.native.d.ts.map +1 -0
  492. package/types/helpers/createMutators.d.ts +2 -1
  493. package/types/helpers/createMutators.d.ts.map +1 -1
  494. package/types/helpers/ellipsis.d.ts +2 -0
  495. package/types/helpers/ellipsis.d.ts.map +1 -0
  496. package/types/helpers/emitter.d.ts +21 -0
  497. package/types/helpers/emitter.d.ts.map +1 -0
  498. package/types/helpers/ensure.d.ts +2 -0
  499. package/types/helpers/ensure.d.ts.map +1 -0
  500. package/types/helpers/ensureLoggedIn.d.ts.map +1 -1
  501. package/types/helpers/errors.d.ts +7 -0
  502. package/types/helpers/errors.d.ts.map +1 -0
  503. package/types/helpers/getCurrentComponentStack.d.ts +2 -0
  504. package/types/helpers/getCurrentComponentStack.d.ts.map +1 -0
  505. package/types/helpers/globalValue.d.ts +23 -0
  506. package/types/helpers/globalValue.d.ts.map +1 -0
  507. package/types/helpers/mapObject.d.ts +4 -0
  508. package/types/helpers/mapObject.d.ts.map +1 -0
  509. package/types/helpers/mutationLifecycle.d.ts +44 -0
  510. package/types/helpers/mutationLifecycle.d.ts.map +1 -0
  511. package/types/helpers/mutationLifecycle.test.d.ts +2 -0
  512. package/types/helpers/mutationLifecycle.test.d.ts.map +1 -0
  513. package/types/helpers/platform.d.ts +3 -0
  514. package/types/helpers/platform.d.ts.map +1 -0
  515. package/types/helpers/platform.native.d.ts +3 -0
  516. package/types/helpers/platform.native.d.ts.map +1 -0
  517. package/types/helpers/recoverZeroClient.d.ts +13 -9
  518. package/types/helpers/recoverZeroClient.d.ts.map +1 -1
  519. package/types/helpers/sleep.d.ts +2 -0
  520. package/types/helpers/sleep.d.ts.map +1 -0
  521. package/types/helpers/time.d.ts +28 -0
  522. package/types/helpers/time.d.ts.map +1 -0
  523. package/types/helpers/tuple.d.ts +2 -0
  524. package/types/helpers/tuple.d.ts.map +1 -0
  525. package/types/index.d.ts +3 -1
  526. package/types/index.d.ts.map +1 -1
  527. package/types/instanceRegistry.d.ts +1 -0
  528. package/types/instanceRegistry.d.ts.map +1 -1
  529. package/types/multi.d.ts +23 -1
  530. package/types/multi.d.ts.map +1 -1
  531. package/types/mutations.d.ts +1 -1
  532. package/types/mutations.d.ts.map +1 -1
  533. package/types/run.d.ts.map +1 -1
  534. package/types/server.d.ts +12 -8
  535. package/types/server.d.ts.map +1 -1
  536. package/types/state.d.ts +1 -1
  537. package/types/state.d.ts.map +1 -1
  538. package/types/types.d.ts +23 -1
  539. package/types/types.d.ts.map +1 -1
  540. package/types/vite-plugin.d.ts.map +1 -1
  541. package/types/where.d.ts.map +1 -1
  542. package/lint/ssr-guards.js +0 -165
  543. package/test-fixtures/server-return-types.ts +0 -58
  544. package/test-fixtures/tsconfig.json +0 -13
  545. package/tsconfig.json +0 -26
  546. package/vitest.config.ts +0 -8
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQueryDirect_exports","__export","createUseQueryDirect","module","exports","import_bindings","require","import_helpers","import_react","import_createUseQuery","import_resolveQuery","_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","DISABLED_SUBSCRIBE","emptyArray","resultTypeUnknown","type","resultTypeComplete","resultTypeError","emptySnapshotSingularUnknown","emptySnapshotSingularComplete","emptySnapshotSingularError","emptySnapshotPluralUnknown","emptySnapshotPluralComplete","emptySnapshotPluralError","getDefaultSnapshot","singular","makeError","retry","error","_error_message","message","_error_error","refetch","details","getSnapshot","data","resultType","Array","isArray","DirectViewWrapper","DirectViewWrapper2","query","zero","ttl","onDematerialized","_this","listeners","Set","onData","cloned","deepClone","snapshot","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","listener","err","return","destroyView","materializeIfNeeded","subscribe","notify","add","destroyTimer","clearTimeout","delete","size","setTimeout","view","materialize","addListener"],"sources":["../../src/createUseQueryDirect.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,4BAAA;AAAAC,QAAA,CAAAD,4BAAA;EAAAE,oBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAKO,CAAAK,4BAAA;AACP,IAAAK,eAAA,GAAiEC,OAAA;AACjE,IAAAC,cAAA,GAAgFD,OAAA;AAEhF,IAAAE,YAAA,GAAAF,OAAA,QAMO;AACP,IAAAG,qBAAA,GAA6BH,OAAA;AAe7B,IAAAI,mBAAM,GAAAJ,OAA2B,2BAAM;AAAC,SAAAK,kBAAAC,QAAA,EAAAC,WAAA;EAsCxC,IAAM,EAAAD,QAAA,YAAkCC,WAAA;IACxC,MAAM,IAAAC,SAAA,oCAAsC;EAC5C;AACA;AACA,SAAMC,kBAAAC,MAAA,EAAAC,KAAgD;EACtD,KAAM,IAAAC,CAAA,MAAAA,CAAA,GAAAD,KAAA,CAAAE,MAAA,EAAAD,CAAA,EAAiD;IACvD,IAAME,UAAA,GAAAH,KAAA,CAAAC,CAAA;IACNE,UAAM,CAAAC,UAAA,GAAAD,UAA8C,CAAAC,UAAY;IAChED,UAAM,CAAAE,YAAA;IACN,IAAM,WAAAF,UAAA,EAAAA,UAA4C,CAAAG,QAAY;IAE9DC,MAAS,CAAAC,cAAA,CAAAT,MAAmB,EAAAI,UAAmB,CAAAM,GAAA,EAAAN,UAAA;EAC7C;AACF;AAEA,SAASO,aAAUA,CAAAd,WAA6C,EAAAe,UAAA,EAAAC,WAAA;EAC9D,IAAAD,UAAM,EAAUb,iBAAO,CAAWF,WAAA,CAAAiB,SAAA,EAAAF,UAAA;EAClC,IAAAC,WAAO,EAAAd,iBAAA,CAAAF,WAAA,EAAAgB,WAAA;EAAA,OACLhB,WAAM;AAAA;AACN,SACAkB,gBAASA,CAAAC,GAAA,EAAAN,GAAA,EAAA3B,KAAA;EAAA,IACT2B,GAAA,IAAOM,GAAA;IAAAR,MACL,CAAAC,cAAa,CAAAO,GAAS,EAAAN,GAAA;MACtB3B,KAAA;MACAsB,UAAW;MACbC,YAAA;MACFC,QAAA;IACF;EAEA,OAAS;IAOPS,GAAI,CAAAN,GAAA,IAAA3B,KAAY;EACd;EACA,OAAIiC,GAAA;AACF;AACF,IAAAC,kBAAO,YAAAA,CAAA;EACT,oBAOA;AACE;AACA,IAAAC,UAAI;AACF,IAAAC,iBAAe,GAAC;EAClBC,IAAA;AAAO;AAGT,IAAAC,kBAAmB;EACnBD,IAAI;AACJ;AACF,IAAAE,eAAA;EAEAF,IAAM;AAAwC;AAOzB,IAAAG,4BAAA,IACA,QACTJ,iBAAA,CACS;AACA,IAAAK,6BAAA,IAEjB,QACAH,kBAAK,CAAoB;AAC3B,IAdQI,0BAAA,IACA,QACSH,eAAY,CAAoB;AACzC,IAaAI,0BAA6C,IACnDR,UAAM,EACNC,iBAAK,CAAW;AACT,IAAAQ,2BACL,IAAAT,UACA,EAAAG,kBACK;AACL,IACFO,wBAAA,IACAV,UAAA,EACEI,eAAS;AACX,SACFO,mBAAAC,QAAA;EAEQ,OAAAA,QAAc,GAAAP,4BAAA,GAAAG,0BAAA;AACpB;AACA,SAAKK,UAAAC,KAAA,EAAAC,KAAoB;EAC3B,IAAAC,cAAA;EAEQ,IAAAC,OAAA,IAAAD,cAAsB,GAAAD,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAAE,OAAA,cAAAD,cAAA,cAAAA,cAAA;EAC5B,IAAAE,YAAe;EACf,OAAK;IACLhB,IAAA,EAAK,OAAK;IACZY,KAAA;IAEQK,OAAA,EAAAL,KAAc;IACpBC,KAAA,EAAM;MACNb,IAAK,GAAAgB,YAAO,GAAAH,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAAA,KAAA,cAAAG,YAAA,cAAAA,YAAA;MACZD,OAAK;MACL,IAAI,CAAAF,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAAK,OAAA;QACFA,OAAQ,EAAAL,KAAQ,CAAAK;MAClB,MAAQ;IAER;EACF;AAAA;AAGE,SAAKC,WAAMA,CAAAT,QAAA,EAAAU,IAAA,EAAAC,UAAA,EAAAT,KAAA,EAAAC,KAAA;EACX,IAAAH,QAAK,IAAMU,IAAA,KAAU,KAAG;IAC1B,IAAAC,UAAA,wBAAAjB,6BAAA;IAEA,IAAAiB,UAAa,YAAuB,SAAAR,KAAA,IAClC,KAAK,GACLF,SAAS,CAAAC,KAAA,EAAAC,KAAA,EACP,GAAAR,0BAAkB;IAClB,OAAKF,4BAAe;EAAA;EAEtB,KAAAO,QAAK,KAAAU,IAAA,QAAoB,IAAAE,KAAA,CAAAC,OAAA,CAAAH,IAAA,KAAAA,IAAA,CAAArC,MAAA;IAEzB,IAAAsC,UAAa,wBAAAd,2BAAA;IACX,IAAAc,UAAK,KAAU,OAAO,SAAMR,KAAA,IAC5Bf,UAAS,EACPa,SAAK,CAAAC,KAAA,EAAAC,KAAe,EAClB,GAAAL,wBAAoB;IACpB,OAAAF,0BAA0B;EAC1B;EACA,IAAAe,UAAK,iBAAiB,OAAI,CAAAD,IAC5B,EAAKnB,kBACP;EAEJ,IAAAoB,UAAA,sBAEAD,IAAA,EACFT,SAAA,CAAAC,KAAA,EAAAC,KAAA,EAEA;EACmB,QAEjBO,IAAA,EAMErB,iBAAM,CACN;AAEA;AACE,IAAAyB,iBAAM,GAAW,2BAAmB;EACpC,YAAO;;EAAA,SACLC,kBAAWA,CAAAC,KAAA,EAAAC,IAAA,EAAAC,GAAA,EAAAlB,QAAA,EAAAmB,gBAAA;IAAA,IACXC,KAAA;IAAmBvD,iBACrB,OAAAkD,kBAAA;IACF9B,gBAAA;IAEAA,gBAAgB,KAAK,QAAQ,OAAI;IACjCA,gBAAgB,OAAM,KAAI,EAAI;IAC9BA,gBAAW;IACTA,gBAAW;IAAAA,gBACT;IAAAA,gBACA;IAAAA,gBACA;IAAAA,gBACA,KAAe,gBAAO;IAAAA,gBACrB,eAAmB;IAClBA,gBAAS,KAAM,SAAQ,OAAM;IAC3BA,gBAAK,KAAM,aAAW;IAAAA,gBACxB;IAAA,IACF,CAAA+B,KAAA,GAAAA,KAAA;IAAA,IACF,CAAAC,IAAA,GAAAA,IAAA;IACA,KAAAC,GAAK,GAAAA,GAAM;IACb,KAAAlB,QAAO,GAAAA,QAAA;IACL,KAAAmB,gBAAkB,GAAAA,gBAAA;IACpB,KAAAE,SAAA,sBAAAC,GAAA;IAEA,KAAAC,MAAO,aAAAb,IAAA,EAAAC,UAAA,EAAAR,KAAA;MACT,IAAAqB,MAAA,GAAAd,IAAA,2BAAAnD,eAAA,CAAAkE,SAAA,EAAAf,IAAA;MACFU,KAAA,CAAAM,QAAA,GAAAjB,WAAA,CAAAW,KAAA,CAAApB,QAAA,EAAAwB,MAAA,EAAAb,UAAA,EAAAS,KAAA,CAAAlB,KAAA,EAAAC,KAAA;MAEO,IAASwB,yBAAgD;QAAAC,iBAAA;QAAAC,cAAA;MAC9D;QACA,SAAAC,SAAA,GAAAV,KAAA,CAAAC,SAAA,CAAAU,MAAA,CAAAC,QAAA,KAAAC,KAAA,IAAAN,yBAAA,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;UACA,IAAAS,QAAA,GAAAH,KAAA,CAAAhF,KAAA;UACAmF,QAAA;QACoE;MAOhE,SAAAC,GAAA;QACFT,iBAAkB;QAChBC,cAAe,GAAAQ,GAAA;MACf,UAAM;QACN;UACF,KAAAV,yBAAA,IAAAG,SAAA,CAAAQ,MAAA;YACFR,SAAA,CAAAQ,MAAA;UAEM;QAEN,UAAS;UACD,IAAAV,iBAAc;YACb,MAAIC,cAAiB;UAEtB;QACN;MAEA;IACA;IACA,IAAI,CAAA3B,KAAA,GAAO,YAAY;MACrBkB,KAAA,CAAAmB,WAAU;MACZnB,KAAA,CAAAoB,mBAAoB;IAClB;IACA,KAAAC,SAAM,GAAQ,UAAOC,MAAA;MACvBtB,KAAA,CAAAC,SAAA,CAAAsB,GAAA,CAAAD,MAAA;MAEA,IAAMtB,KAAA,CAAAwB,YAAY,KAAW;QAK7BC,YAAM,CAAAzB,KAAA,CAAAwB,YAAe;QACnBxB,KAAA,CAAAwB,YAAM;MAA0C;MAAAxB,KAAA,CAAAoB,mBAAA;MAGhD,OAAK,YAAS;QAChBpB,KAAA,CAAAC,SAAA,CAAAyB,MAAA,CAAAJ,MAAA;QAEA,IAAMtB,KAAA,CAAAC,SAAA,CAAA0B,IAAgB;UAChB3B,KAAA,CAAAwB,YAAU,GAAAI,UAAA,aAAY;YAEtB5B,KAAA,CAAAwB,YAAO;YACL,IAAAxB,KAAO,CAAAC,SAAQ,CAAA0B,IAAA;YAChB3B,KAAM,CAAAmB,WAAO;YAUZnB,KAAA,CAAAD,gBACJ,CAAAC,KAAQ;UAGV,GAAO;QAGL;MAEJ;IACA;IAAY,IACV,CAAAX,WAAY,eAAY;MACxB,OAAOW,KAAK,CAAAM,QAAA;IAAc;IAE5B,KAAAA,QAAA,GAAA3B,kBAAA,CAAAC,QAAA;IAEA,IAAI,CAACwC,mBAAa;EAChB;EACA3D,aAAO,CAAAkC,kBAAA,GACT;IAEAnC,GAAI,uBAAgB;IAClB3B,KAAA,EAAO,SAAQuF,oBAAA;MACjB,SAAAS,IAAA;MAEA,IAAO,CAAAA,IAAA,QAAAhC,IAAA,CAAAiC,WAAA,MAAAlC,KAAA;QACTE,GAAA,OAAAA;MAEA,CAAO;MACT,KAAA+B,IAAA,CAAAE,WAAA,MAAA5B,MAAA","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQueryDirect_exports","__export","createUseQueryDirect","module","exports","import_bindings","require","import_react","import_createUseQuery","import_emitter","import_platform","import_resolveQuery","_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","DISABLED_SUBSCRIBE","DISABLED_SUBSCRIBE2","emptyArray","resultTypeUnknown","type","resultTypeComplete","resultTypeError","emptySnapshotSingularUnknown","emptySnapshotSingularComplete","emptySnapshotSingularError","emptySnapshotPluralUnknown","emptySnapshotPluralComplete","emptySnapshotPluralError","getDefaultSnapshot","singular","makeError","retry","error","_ref","_ref1","message","refetch","details","getSnapshot","data","resultType","Array","isArray","DirectViewWrapper","DirectViewWrapper2","query","zero","ttl","onDematerialized","_this","listeners","Set","onData","cloned","deepClone","snapshot","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","listener","err","return","destroyView","materializeIfNeeded","subscribe","notify","add","destroyTimer","clearTimeout","delete","size","setTimeout","view","materialize","addListener"],"sources":["../../src/createUseQueryDirect.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -28,12 +28,14 @@ __export(createZeroClient_exports, {
28
28
  module.exports = __toCommonJS(createZeroClient_exports);
29
29
  var import_zero = require("@rocicorp/zero");
30
30
  var import_react = require("@rocicorp/zero/react");
31
- var import_helpers = require("@take-out/helpers");
32
31
  var import_react2 = require("react");
33
32
  var import_createPermissions = require("./createPermissions.cjs");
34
33
  var import_createUseQuery = require("./createUseQuery.cjs");
35
34
  var import_createMutators = require("./helpers/createMutators.cjs");
35
+ var import_emitter = require("./helpers/emitter.cjs");
36
36
  var import_getAuth = require("./helpers/getAuth.cjs");
37
+ var import_mutationLifecycle = require("./helpers/mutationLifecycle.cjs");
38
+ var import_platform = require("./helpers/platform.cjs");
37
39
  var import_recoverZeroClient = require("./helpers/recoverZeroClient.cjs");
38
40
  var import_instanceRegistry = require("./instanceRegistry.cjs");
39
41
  var import_modelRegistry = require("./modelRegistry.cjs");
@@ -75,6 +77,7 @@ function createZeroClientInternal({
75
77
  groupedQueries,
76
78
  permissionStrategy = "optimistic",
77
79
  instanceName = "default",
80
+ serverAckTimeoutRecoveryThreshold = 2,
78
81
  createDirectUseQuery
79
82
  }) {
80
83
  (0, import_state.setSchema)(schema, (0, import_zero.createBuilder)(schema));
@@ -198,8 +201,14 @@ function createZeroClientInternal({
198
201
  }
199
202
  });
200
203
  const emitterScope = instanceName === "default" ? "" : `:${instanceName}`;
201
- const zeroEvents = (0, import_helpers.createEmitter)(`zero${emitterScope}`, null);
202
- const zeroInstanceVersion = createDirectUseQuery ? (0, import_helpers.createEmitter)(`zero-instance-version${emitterScope}`, 0) : null;
204
+ const zeroEvents = (0, import_emitter.createEmitter)(`zero${emitterScope}`, null);
205
+ let recoverFromAckTimeout = () => {};
206
+ const ackTimeoutRecoveryThreshold = Number.isFinite(serverAckTimeoutRecoveryThreshold) && serverAckTimeoutRecoveryThreshold >= 2 ? Math.floor(serverAckTimeoutRecoveryThreshold) : 2;
207
+ const mutationLifecycle = (0, import_mutationLifecycle.createMutationLifecycle)({
208
+ ackTimeoutRecoveryThreshold,
209
+ recoverFromAckTimeout: input => recoverFromAckTimeout(input)
210
+ });
211
+ const zeroInstanceVersion = createDirectUseQuery ? (0, import_emitter.createEmitter)(`zero-instance-version${emitterScope}`, 0) : null;
203
212
  const AuthDataContext = (0, import_react2.createContext)({});
204
213
  const useQuery = (0, import_createUseQuery.createUseQuery)({
205
214
  DisabledContext,
@@ -212,7 +221,7 @@ function createZeroClientInternal({
212
221
  zeroVersion: zeroInstanceVersion
213
222
  }) : createUnavailableDirectUseQuery();
214
223
  const createUsePermission = useQueryImpl => {
215
- if (import_helpers.IS_SERVER_RUNTIME) {
224
+ if (import_platform.IS_SERVER_RUNTIME) {
216
225
  return () => null;
217
226
  }
218
227
  return function usePermission2(table, objOrId, enabled = typeof objOrId !== "undefined", debug = false) {
@@ -274,6 +283,7 @@ function createZeroClientInternal({
274
283
  }
275
284
  function invalidateZeroInstance(instanceToInvalidate) {
276
285
  if (!instanceToInvalidate) return;
286
+ mutationLifecycle.fence();
277
287
  if (clearZeroInstanceReferences(instanceToInvalidate)) {
278
288
  zeroInstanceVersion?.emit(zeroInstanceVersion.value + 1);
279
289
  }
@@ -282,6 +292,7 @@ function createZeroClientInternal({
282
292
  } catch {}
283
293
  }
284
294
  async function deleteZeroInstance(instanceToDelete) {
295
+ mutationLifecycle.fence();
285
296
  try {
286
297
  return await instanceToDelete?.delete();
287
298
  } finally {
@@ -348,7 +359,7 @@ function createZeroClientInternal({
348
359
  beforeReload,
349
360
  scheduleReload,
350
361
  guardStorage,
351
- benignLogFilter,
362
+ benignLogPatterns,
352
363
  refreshAuth,
353
364
  connectionDataset,
354
365
  disable,
@@ -382,10 +393,11 @@ function createZeroClientInternal({
382
393
  const instanceKey = JSON.stringify([Object.entries({
383
394
  kvStore: "mem",
384
395
  ...props
385
- }).filter(([key, value]) => key !== "auth" && typeof value !== "function" && value !== void 0).sort(([a], [b]) => a < b ? -1 : 1), hasAuth, transport, remintGeneration]);
396
+ }).filter(([key, value]) => key !== "auth" && typeof value !== "function" && value !== void 0).sort(([a], [b]) => a < b ? -1 : 1), hasAuth, transport, benignLogPatterns?.map(pattern => typeof pattern === "string" ? pattern : `/${pattern.source}/${pattern.flags}`), remintGeneration]);
386
397
  const [instance2, setInstance] = (0, import_react2.useState)();
387
398
  (0, import_react2.useLayoutEffect)(() => {
388
399
  if (latestZeroInstance && (disable || cachedZero?.key !== instanceKey)) {
400
+ mutationLifecycle.fence();
389
401
  unpublishZeroInstance(latestZeroInstance);
390
402
  }
391
403
  }, [disable, instanceKey]);
@@ -406,6 +418,7 @@ function createZeroClientInternal({
406
418
  if (cached?.key !== instanceKey) {
407
419
  if (cached) {
408
420
  clearZeroInstanceReferences(cached.instance);
421
+ mutationLifecycle.fence();
409
422
  cached.instance.close();
410
423
  }
411
424
  const instanceRef = {
@@ -417,9 +430,11 @@ function createZeroClientInternal({
417
430
  beforeReload,
418
431
  scheduleReload,
419
432
  guardStorage,
420
- benignLogFilter
433
+ benignLogPatterns: [...(transport?.logClassifications?.benign ?? []), ...(benignLogPatterns ?? [])],
434
+ onRecovery: () => mutationLifecycle.fence()
421
435
  };
422
436
  const recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
437
+ recoverFromAckTimeout = recovery.onServerAckTimeout;
423
438
  const createdInstance = new import_zero.Zero({
424
439
  kvStore: "mem",
425
440
  ...options,
@@ -474,11 +489,12 @@ function createZeroClientInternal({
474
489
  })
475
490
  });
476
491
  };
477
- const ProvideZero = import_helpers.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
492
+ const ProvideZero = import_platform.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
478
493
  const SetZeroInstance = () => {
479
494
  const zeroInstance = (0, import_react.useZero)();
480
495
  if (zeroInstance !== latestZeroInstance) {
481
496
  latestZeroInstance = zeroInstance;
497
+ mutationLifecycle.activate();
482
498
  const runner = (query, options) => zeroInstance.run(query, options);
483
499
  instance.runner = runner;
484
500
  (0, import_zeroRunner.setRunner)(runner);
@@ -536,6 +552,7 @@ function createZeroClientInternal({
536
552
  if (name === "error" || name === "needs-auth") {
537
553
  zeroEvents2.emit({
538
554
  type: "error",
555
+ reasonKey: name === "needs-auth" ? "connection-needs-auth" : "connection-error",
539
556
  message: reason || name
540
557
  });
541
558
  }
@@ -585,6 +602,9 @@ function createZeroClientInternal({
585
602
  preload,
586
603
  getQuery,
587
604
  waitForZero,
588
- remint
605
+ remint,
606
+ enqueueBackgroundMutation: mutationLifecycle.enqueueBackgroundMutation,
607
+ awaitMutationClient: mutationLifecycle.awaitMutationClient,
608
+ awaitMutationServer: mutationLifecycle.awaitMutationServer
589
609
  };
590
610
  }
@@ -132,6 +132,10 @@ async function mount(extraProps = {}, userID = "conn") {
132
132
  });
133
133
  (0, import_vitest.test)("refreshAuth reconnects in place on needs-auth, once per transition", async () => {
134
134
  const refreshAuth = import_vitest.vi.fn(async () => "fresh-token");
135
+ const events = [];
136
+ const off = client.zeroEvents.listen(event => {
137
+ if (event) events.push(event);
138
+ });
135
139
  const instance = await mount({
136
140
  refreshAuth
137
141
  }, "conn-auth");
@@ -149,6 +153,12 @@ async function mount(extraProps = {}, userID = "conn") {
149
153
  (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({
150
154
  auth: "fresh-token"
151
155
  });
156
+ (0, import_vitest.expect)(events).toContainEqual({
157
+ type: "error",
158
+ reasonKey: "connection-needs-auth",
159
+ message: "token expired"
160
+ });
161
+ off();
152
162
  });
153
163
  (0, import_vitest.test)("stale-poke error reconnects instead of surfacing a fatal error", async () => {
154
164
  const events = [];
@@ -214,6 +224,7 @@ async function mount(extraProps = {}, userID = "conn") {
214
224
  (0, import_vitest.expect)(instance.connection.connect).not.toHaveBeenCalled();
215
225
  (0, import_vitest.expect)(events).toContainEqual({
216
226
  type: "error",
227
+ reasonKey: "connection-error",
217
228
  message: "Got open event but connect start time is undefined"
218
229
  });
219
230
  off();
@@ -7,9 +7,7 @@ var import_client = require("react-dom/client");
7
7
  var import_vitest = require("vitest");
8
8
  var import_createZeroClient = require("./createZeroClient.native.js");
9
9
  function _class_call_check(instance, Constructor) {
10
- if (!(instance instanceof Constructor)) {
11
- throw new TypeError("Cannot call a class as a function");
12
- }
10
+ if (!(instance instanceof Constructor)) throw new TypeError("Cannot call a class as a function");
13
11
  }
14
12
  function _defineProperties(target, props) {
15
13
  for (var i = 0; i < props.length; i++) {
@@ -33,9 +31,7 @@ function _define_property(obj, key, value) {
33
31
  configurable: true,
34
32
  writable: true
35
33
  });
36
- } else {
37
- obj[key] = value;
38
- }
34
+ } else obj[key] = value;
39
35
  return obj;
40
36
  }
41
37
  var fakeZero = import_vitest.vi.hoisted(function () {
@@ -107,7 +103,7 @@ var fakeZero = import_vitest.vi.hoisted(function () {
107
103
  }));
108
104
  _define_property(this, "preload", import_vitest.vi.fn(function () {
109
105
  return {
110
- cleanup: function () {},
106
+ cleanup: function cleanup() {},
111
107
  complete: Promise.resolve()
112
108
  };
113
109
  }));
@@ -208,6 +204,10 @@ async function mount() {
208
204
  var refreshAuth = import_vitest.vi.fn(async function () {
209
205
  return "fresh-token";
210
206
  });
207
+ var events = [];
208
+ var off = client.zeroEvents.listen(function (event) {
209
+ if (event) events.push(event);
210
+ });
211
211
  var instance = await mount({
212
212
  refreshAuth
213
213
  }, "conn-auth");
@@ -225,6 +225,12 @@ async function mount() {
225
225
  (0, import_vitest.expect)(instance.connection.connect).toHaveBeenCalledWith({
226
226
  auth: "fresh-token"
227
227
  });
228
+ (0, import_vitest.expect)(events).toContainEqual({
229
+ type: "error",
230
+ reasonKey: "connection-needs-auth",
231
+ message: "token expired"
232
+ });
233
+ off();
228
234
  });
229
235
  (0, import_vitest.test)("stale-poke error reconnects instead of surfacing a fatal error", async function () {
230
236
  var events = [];
@@ -292,6 +298,7 @@ async function mount() {
292
298
  (0, import_vitest.expect)(instance.connection.connect).not.toHaveBeenCalled();
293
299
  (0, import_vitest.expect)(events).toContainEqual({
294
300
  type: "error",
301
+ reasonKey: "connection-error",
295
302
  message: "Got open event but connect start time is undefined"
296
303
  });
297
304
  off();
@@ -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","state","name","connect","fn","errors","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"],"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","state","name","connect","fn","errors","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"],"sources":["../../src/createZeroClient.connection.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -31,12 +31,14 @@ module.exports = __toCommonJS(createZeroClient_exports);
31
31
  var import_jsx_runtime = require("react/jsx-runtime");
32
32
  var import_zero = require("@rocicorp/zero");
33
33
  var import_react = require("@rocicorp/zero/react");
34
- var import_helpers = require("@take-out/helpers");
35
34
  var import_react2 = require("react");
36
35
  var import_createPermissions = require("./createPermissions.native.js");
37
36
  var import_createUseQuery = require("./createUseQuery.native.js");
38
37
  var import_createMutators = require("./helpers/createMutators.native.js");
38
+ var import_emitter = require("./helpers/emitter.native.js");
39
39
  var import_getAuth = require("./helpers/getAuth.native.js");
40
+ var import_mutationLifecycle = require("./helpers/mutationLifecycle.native.js");
41
+ var import_platform = require("./helpers/platform.native.js");
40
42
  var import_recoverZeroClient = require("./helpers/recoverZeroClient.native.js");
41
43
  var import_instanceRegistry = require("./instanceRegistry.native.js");
42
44
  var import_modelRegistry = require("./modelRegistry.native.js");
@@ -102,6 +104,7 @@ function createZeroClientInternal(param) {
102
104
  groupedQueries,
103
105
  permissionStrategy = "optimistic",
104
106
  instanceName = "default",
107
+ serverAckTimeoutRecoveryThreshold = 2,
105
108
  createDirectUseQuery
106
109
  } = param;
107
110
  (0, import_state.setSchema)(schema, (0, import_zero.createBuilder)(schema));
@@ -165,8 +168,8 @@ function createZeroClientInternal(param) {
165
168
  }
166
169
  }
167
170
  var permissionCheckFns = {};
168
- var createPermissionCheckFn = function (table) {
169
- var fn = function (args) {
171
+ var createPermissionCheckFn = function createPermissionCheckFn2(table) {
172
+ var fn = function fn2(args) {
170
173
  var perm = (0, import_modelRegistry.getMutationsPermissions)(table);
171
174
  var base = import_zql.zql[table];
172
175
  if (!args.objOrId) {
@@ -258,14 +261,14 @@ function createZeroClientInternal(param) {
258
261
  return Promise.reject((_signal_reason = signal.reason) !== null && _signal_reason !== void 0 ? _signal_reason : new Error("Waiting for the Zero instance was aborted"));
259
262
  }
260
263
  return new Promise(function (resolve, reject) {
261
- var onReady = function (instance2) {
264
+ var onReady = function onReady2(instance2) {
262
265
  signal === null || signal === void 0 ? void 0 : signal.removeEventListener("abort", onAbort);
263
266
  resolve(instance2);
264
267
  };
265
- var onAbort = function () {
268
+ var onAbort = function onAbort2() {
269
+ var _ref;
266
270
  zeroReadyWaiters.delete(onReady);
267
- var _signal_reason2;
268
- reject((_signal_reason2 = signal === null || signal === void 0 ? void 0 : signal.reason) !== null && _signal_reason2 !== void 0 ? _signal_reason2 : new Error("Waiting for the Zero instance was aborted"));
271
+ reject((_ref = signal === null || signal === void 0 ? void 0 : signal.reason) !== null && _ref !== void 0 ? _ref : new Error("Waiting for the Zero instance was aborted"));
269
272
  };
270
273
  zeroReadyWaiters.add(onReady);
271
274
  signal === null || signal === void 0 ? void 0 : signal.addEventListener("abort", onAbort, {
@@ -274,7 +277,7 @@ function createZeroClientInternal(param) {
274
277
  });
275
278
  }
276
279
  function lazyMutatePath(path) {
277
- var resolve = function () {
280
+ var resolve = function resolve2() {
278
281
  if (latestZeroInstance === null) {
279
282
  throw new Error(`Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.`);
280
283
  }
@@ -329,8 +332,16 @@ function createZeroClientInternal(param) {
329
332
  }
330
333
  });
331
334
  var emitterScope = instanceName === "default" ? "" : `:${instanceName}`;
332
- var zeroEvents = (0, import_helpers.createEmitter)(`zero${emitterScope}`, null);
333
- var zeroInstanceVersion = createDirectUseQuery ? (0, import_helpers.createEmitter)(`zero-instance-version${emitterScope}`, 0) : null;
335
+ var zeroEvents = (0, import_emitter.createEmitter)(`zero${emitterScope}`, null);
336
+ var recoverFromAckTimeout = function recoverFromAckTimeout2() {};
337
+ var ackTimeoutRecoveryThreshold = Number.isFinite(serverAckTimeoutRecoveryThreshold) && serverAckTimeoutRecoveryThreshold >= 2 ? Math.floor(serverAckTimeoutRecoveryThreshold) : 2;
338
+ var mutationLifecycle = (0, import_mutationLifecycle.createMutationLifecycle)({
339
+ ackTimeoutRecoveryThreshold,
340
+ recoverFromAckTimeout: function recoverFromAckTimeout1(input) {
341
+ return recoverFromAckTimeout(input);
342
+ }
343
+ });
344
+ var zeroInstanceVersion = createDirectUseQuery ? (0, import_emitter.createEmitter)(`zero-instance-version${emitterScope}`, 0) : null;
334
345
  var AuthDataContext = /* @__PURE__ */(0, import_react2.createContext)({});
335
346
  var useQuery = (0, import_createUseQuery.createUseQuery)({
336
347
  DisabledContext,
@@ -339,13 +350,13 @@ function createZeroClientInternal(param) {
339
350
  var useQueryDirect = createDirectUseQuery ? createDirectUseQuery({
340
351
  DisabledContext,
341
352
  customQueries,
342
- getZero: function () {
353
+ getZero: function getZero() {
343
354
  return latestZeroInstance;
344
355
  },
345
356
  zeroVersion: zeroInstanceVersion
346
357
  }) : createUnavailableDirectUseQuery();
347
- var createUsePermission = function (useQueryImpl) {
348
- if (import_helpers.IS_SERVER_RUNTIME) {
358
+ var createUsePermission = function createUsePermission2(useQueryImpl) {
359
+ if (import_platform.IS_SERVER_RUNTIME) {
349
360
  return function () {
350
361
  return null;
351
362
  };
@@ -411,14 +422,16 @@ function createZeroClientInternal(param) {
411
422
  }
412
423
  function invalidateZeroInstance(instanceToInvalidate) {
413
424
  if (!instanceToInvalidate) return;
425
+ mutationLifecycle.fence();
414
426
  if (clearZeroInstanceReferences(instanceToInvalidate)) {
415
427
  zeroInstanceVersion === null || zeroInstanceVersion === void 0 ? void 0 : zeroInstanceVersion.emit(zeroInstanceVersion.value + 1);
416
428
  }
417
429
  try {
418
430
  instanceToInvalidate.close();
419
- } catch (e) {}
431
+ } catch (unused) {}
420
432
  }
421
433
  async function deleteZeroInstance(instanceToDelete) {
434
+ mutationLifecycle.fence();
422
435
  try {
423
436
  return await (instanceToDelete === null || instanceToDelete === void 0 ? void 0 : instanceToDelete.delete());
424
437
  } finally {
@@ -450,7 +463,7 @@ function createZeroClientInternal(param) {
450
463
  current: {
451
464
  name: "closed"
452
465
  },
453
- subscribe: function () {
466
+ subscribe: function subscribe() {
454
467
  return function () {};
455
468
  }
456
469
  };
@@ -460,15 +473,15 @@ function createZeroClientInternal(param) {
460
473
  connection: {
461
474
  state: DISABLED_ZERO_STUB_CONNECTION_STATE
462
475
  },
463
- materialize: function () {
476
+ materialize: function materialize() {
464
477
  return {
465
- addListener: function () {},
466
- destroy: function () {},
467
- updateTTL: function () {}
478
+ addListener: function addListener() {},
479
+ destroy: function destroy() {},
480
+ updateTTL: function updateTTL() {}
468
481
  };
469
482
  }
470
483
  };
471
- var ProvideZeroServer = function (param2) {
484
+ var ProvideZeroServer = function ProvideZeroServer2(param2) {
472
485
  var {
473
486
  children,
474
487
  authData: authDataIn
@@ -492,7 +505,7 @@ function createZeroClientInternal(param) {
492
505
  })
493
506
  });
494
507
  };
495
- var ProvideZeroClient = function (param2) {
508
+ var ProvideZeroClient = function ProvideZeroClient2(param2) {
496
509
  var {
497
510
  children,
498
511
  authData: authDataIn,
@@ -500,12 +513,13 @@ function createZeroClientInternal(param) {
500
513
  beforeReload,
501
514
  scheduleReload,
502
515
  guardStorage,
503
- benignLogFilter,
516
+ benignLogPatterns,
504
517
  refreshAuth,
505
518
  connectionDataset,
506
519
  disable,
507
520
  ...props
508
521
  } = param2;
522
+ var _ref, _props_cacheURL;
509
523
  var auth = "auth" in props ? props.auth : void 0;
510
524
  var hasAuth = typeof auth === "string";
511
525
  var stableAuthDataRef = (0, import_react2.useRef)(authDataIn !== null && authDataIn !== void 0 ? authDataIn : null);
@@ -514,7 +528,6 @@ function createZeroClientInternal(param) {
514
528
  } else if (!hasAuth) {
515
529
  stableAuthDataRef.current = null;
516
530
  }
517
- var _ref;
518
531
  var authData = (_ref = authDataIn !== null && authDataIn !== void 0 ? authDataIn : stableAuthDataRef.current) !== null && _ref !== void 0 ? _ref : null;
519
532
  (0, import_state.setAuthData)(authData);
520
533
  var mutators = (0, import_react2.useMemo)(function () {
@@ -548,10 +561,13 @@ function createZeroClientInternal(param) {
548
561
  var [a] = param3,
549
562
  [b] = param1;
550
563
  return a < b ? -1 : 1;
551
- }), hasAuth, transport, remintGeneration]);
564
+ }), hasAuth, transport, benignLogPatterns === null || benignLogPatterns === void 0 ? void 0 : benignLogPatterns.map(function (pattern) {
565
+ return typeof pattern === "string" ? pattern : `/${pattern.source}/${pattern.flags}`;
566
+ }), remintGeneration]);
552
567
  var [instance2, setInstance] = (0, import_react2.useState)();
553
568
  (0, import_react2.useLayoutEffect)(function () {
554
569
  if (latestZeroInstance && (disable || (cachedZero === null || cachedZero === void 0 ? void 0 : cachedZero.key) !== instanceKey)) {
570
+ mutationLifecycle.fence();
555
571
  unpublishZeroInstance(latestZeroInstance);
556
572
  }
557
573
  }, [disable, instanceKey]);
@@ -571,25 +587,31 @@ function createZeroClientInternal(param) {
571
587
  transport.install(serverURL);
572
588
  }
573
589
  if ((cached === null || cached === void 0 ? void 0 : cached.key) !== instanceKey) {
590
+ var _ref2, _options_logSink, _options_onUpdateNeeded, _options_onClientStateNotFound;
591
+ var _transport_logClassifications;
574
592
  if (cached) {
575
593
  clearZeroInstanceReferences(cached.instance);
594
+ mutationLifecycle.fence();
576
595
  cached.instance.close();
577
596
  }
578
597
  var instanceRef = {
579
598
  current: null
580
599
  };
581
600
  var recoveryDeps = {
582
- deleteLocalState: function () {
601
+ deleteLocalState: function deleteLocalState() {
583
602
  return deleteZeroInstance(instanceRef.current);
584
603
  },
585
604
  zeroEvents,
586
605
  beforeReload,
587
606
  scheduleReload,
588
607
  guardStorage,
589
- benignLogFilter
608
+ benignLogPatterns: [...((_ref2 = transport === null || transport === void 0 ? void 0 : (_transport_logClassifications = transport.logClassifications) === null || _transport_logClassifications === void 0 ? void 0 : _transport_logClassifications.benign) !== null && _ref2 !== void 0 ? _ref2 : []), ...(benignLogPatterns !== null && benignLogPatterns !== void 0 ? benignLogPatterns : [])],
609
+ onRecovery: function onRecovery() {
610
+ return mutationLifecycle.fence();
611
+ }
590
612
  };
591
613
  var recovery = (0, import_recoverZeroClient.makeZeroRecovery)(recoveryDeps);
592
- var _options_logSink, _options_onUpdateNeeded, _options_onClientStateNotFound;
614
+ recoverFromAckTimeout = recovery.onServerAckTimeout;
593
615
  var createdInstance = new import_zero.Zero({
594
616
  kvStore: "mem",
595
617
  ...options,
@@ -633,7 +655,6 @@ function createZeroClientInternal(param) {
633
655
  }
634
656
  }, [instance2, auth]);
635
657
  var liveInstance = disable ? void 0 : instance2;
636
- var _props_cacheURL;
637
658
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(AuthDataContext.Provider, {
638
659
  value: authData,
639
660
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(DisabledContext.Provider, {
@@ -650,12 +671,13 @@ function createZeroClientInternal(param) {
650
671
  })
651
672
  });
652
673
  };
653
- var ProvideZero = import_helpers.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
654
- var SetZeroInstance = function () {
674
+ var ProvideZero = import_platform.IS_SERVER_RUNTIME ? ProvideZeroServer : ProvideZeroClient;
675
+ var SetZeroInstance = function SetZeroInstance2() {
655
676
  var zeroInstance = (0, import_react.useZero)();
656
677
  if (zeroInstance !== latestZeroInstance) {
657
678
  latestZeroInstance = zeroInstance;
658
- var runner = function (query, options) {
679
+ mutationLifecycle.activate();
680
+ var runner = function runner2(query, options) {
659
681
  return zeroInstance.run(query, options);
660
682
  };
661
683
  instance.runner = runner;
@@ -738,6 +760,7 @@ function createZeroClientInternal(param) {
738
760
  if (name === "error" || name === "needs-auth") {
739
761
  zeroEvents2.emit({
740
762
  type: "error",
763
+ reasonKey: name === "needs-auth" ? "connection-needs-auth" : "connection-error",
741
764
  message: reason || name
742
765
  });
743
766
  }
@@ -788,7 +811,10 @@ function createZeroClientInternal(param) {
788
811
  preload,
789
812
  getQuery,
790
813
  waitForZero,
791
- remint
814
+ remint,
815
+ enqueueBackgroundMutation: mutationLifecycle.enqueueBackgroundMutation,
816
+ awaitMutationClient: mutationLifecycle.awaitMutationClient,
817
+ awaitMutationServer: mutationLifecycle.awaitMutationServer
792
818
  };
793
819
  }
794
820
  //# sourceMappingURL=createZeroClient.native.js.map