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":["import_vitest","require","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","not","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","queryCount","tableName","primaryKeys","columns","builderText","types","tables"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"AAAA;;AAEA,IAAAA,aAAA,GAAAC,OAA6B;AAO7B,IAAAC,oBAAmB,GAAoDD,OAAA;AACrE,SAAOE,SAAOA,CAAAC,KAAA,EAAS;EACrB,iBAAcC,IAAA,EAAMC,IAAI;IACxB,IAAIC,KAAC,GAAOH,KAAA,CAAAE,IAAA;IACV,KAAAC,KAAM,EAAI;MACZ,UAAAC,KAAA,4BAAAF,IAAA;IACA;IACF,OAAAC,KAAA;EACF;AAEA;AAAY,IAEZE,GAAA;AACE,IAAAT,aAAA,CAAAU,QAAK;EACH,IAAAV,aAAsC,CAAAW,IAAA;IAAA,IACnCC,KAAM;MACP,CAAC,GAAGH,GAAG,iBAAiB,GAAG;MAC7B,IAAAA,GAAA;IAEA;IAAiD,IAC9CI,QAAM;MAAoB,IACzBJ,GAAA,iBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YAEEC,IAAA;YACFC,aAAA;UACA;YAEED,IAAA;YACFC,aAAA;UACF,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACA,CAAC;MAA0B,IACzBX,GAAA,iBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YACQC,IAAA;YAEN;YACFC,aAAA;UACF,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACF;IAEA;IAA4B,IAC1BC,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MACAV,KAAK;MACLW,GAAA,EAAAd,GAAO;MACRe,KAAA,EAAArB,SAAA,CAAAU,QAAA;IAGD;IAAiD,EAC/C,EAAAb,aAAA,CAAAyB,MAAA,EAAAC,MAAA,CAAAC,IAAA,CAAAN,MAAA,CAAAT,KAAA,EAAAgB,IAAA,IAAAC,OAAA,EACA,aACA,aACD,qBAGD;IACA,IAAAC,MAAA,GAAAT,MAAA,CAAAT,KAAA,CAAO,WAAQ;IACf,IAAAZ,aAAA,CAAAyB,MAAA,EAAOK,MAAM,EAAEC,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOK,MAAM,EAAEC,SAAA,CAAU,8CAAmB;IAC5C,IAAA/B,aAAA,CAAAyB,MAAA,EAAOK,MAAM,EAAEC,SAAI,oBAAU;IAC7B,IAAA/B,aAAA,CAAAyB,MAAA,EAAOK,MAAM,EAAEE,GAAA,CAAAD,SAAU;IAGzB,IAAA/B,aAAM,CAAAyB,MAAkB,EAAAK,MAAO,EAAAC,SAAM,0BAAoB;IACzD,IAAAE,eAAA,GAAAZ,MAAO,CAAAT,KAAA,qBAA2B;IAClC,IAAAZ,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU;IAClC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU;IAClC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU;IAClC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU,uBAAS;IAC3C,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU;IAElC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAe,EAAEF,SAAA,CAAU;IAElC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOQ,eAAO,EAAUF,SAAQ;IAChC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOJ,MAAA,CAAOa,UAAA,CAAW,CAAAC,IAAE,EAAK,CAAC;IACjC,IAAAnC,aAAA,CAAAyB,MAAA,EAAOJ,MAAA,CAAOe,WAAA,EAAaD,IAAE,GAAK;IACnC,IAAAnC,aAAA,CAAAyB,MAAA,EAAAJ,MAAA,CAAAgB,aAAA,EAAAF,IAAA;EAED;EACE,IAAAnC,aAAsC,CAAAW,IAAA;IAAA,IACnCC,KAAM;MACP,CAAC,GAAGH,GAAG,uBAAuB,GAAG;MACnC,IAAAA,GAAA;IAEA;IAAiD,IAC9CI,QAAM;MAA0B,IAC/BJ,GAAA,uBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YAEEC,IAAA,oBAAe;YAAAC,aAAA;AAAA;AAAA;AAAA;AAAA;UAMnB,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACA,CAAC;MAAgC,IAC/BX,GAAA,uBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YAEEC,IAAA;YAAeC,aAAA;AAAA;AAAA;AAAA;AAAA;UAMnB,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACF;IAEA;IAA4B,IAC1BC,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MACAV,KAAK;MACLW,GAAA,EAAAd,GAAO;MACRe,KAAA,EAAArB,SAAA,CAAAU,QAAA;IAED;IACA,IAAAyB,MAAA,GAAAjB,MAAA,CAAAT,KAAA,CAAO,oBAAkB;IACzB,IAAAZ,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU,uBAAuB;IAChD,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU,uBAAS;IAClC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU,mCAAmC;IAC5D,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAI,oCAAU,CAAgC;IAC7D,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEN,GAAA,CAAID,SAAA,CAAU,gCAAsB;IACpD,IAAA/B,aAAA,CAAAyB,MAAA,EAAAa,MAAA,EAAAN,GAAA,CAAAD,SAAA;EAED;EACE,IAAA/B,aAAsC,CAAAW,IAAA;IAAA,IACnCC,KAAM;MACT,IAAAH,GAAA;IAEA;IAAiD,IAC9CI,QAAM;MAAqB,IAC1BJ,GAAA,kBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YAEEC,IAAA;YAAeC,aAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;UAQnB,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACF;IAEA;IAA4B,IAC1BC,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MACAV,KAAK;MACLW,GAAA,EAAAd,GAAO;MACRe,KAAA,EAAArB,SAAA,CAAAU,QAAA;IAED;IACA,IAAAyB,MAAA,GAAAjB,MAAA,CAAAT,KAAA,CAAO,oBAAkB;IACzB,IAAAZ,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU;IACzB,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAI,wCAAgB;IACnC,IAAA/B,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEN,GAAA,CAAID,SAAA,CAAU;IAC9B,IAAA/B,aAAA,CAAAyB,MAAA,EAAAa,MAAA,EAAAN,GAAA,CAAAD,SAAA;EAED;EACE,IAAA/B,aAAsC,CAAAW,IAAA;IAAA,IACnCC,KAAM;MACT,IAAAH,GAAA;IAEA;IAAiD,IAC9CI,QAAM;MAAoB,IACzBJ,GAAA,iBAAW;QAAAK,SACT;UAEEC,SAAA,EAAU;UAAAC,QACR;YACQC,IAAA;YAAA;YAAA;YAIN;YACFC,aAAA;UACA;YACQD,IAAA;YAEN;YACFC,aAAA;UACF,EACA;UACFC,MAAA;QACF,EACA;QACFC,OAAA;MACF;IAEA;IAA4B,IAC1BC,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MACAV,KAAK;MACLW,GAAA,EAAAd,GAAO;MACRe,KAAA,EAAArB,SAAA,CAAAU,QAAA;IAED;IACA,IAAAyB,MAAA,GAAAjB,MAAA,CAAAT,KAAA,CAAO,oBAAkB;IACzB,IAAAZ,aAAA,CAAAyB,MAAA,EAAOa,MAAM,EAAEP,SAAA,CAAU,sBAAqB;IAC/C,IAAA/B,aAAA,CAAAyB,MAAA,EAAAa,MAAA,EAAAP,SAAA;EAED;EACE,IAAA/B,aAAsC,CAAAW,IAAA;IAAA,IACnCC,KAAM;MACT,IAAAH,GAAA;IAEA;IAAiD,IAC9CI,QAAM;MAAuB,IAC5BJ,GAAA,oBAAW;QAAAK,SACT;UAEEC,SAAA,EAAW,SAAQ;UACnBC,QAAQ,GACV;YACFC,IAAA;YACAC,aAAU;UACZ,EACF;UAEMC,MAAA;QACJ,EACA;QACAC,OAAO;MACR;IAED;IACD,IAAAC,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MAEDV,KAAA;MACEW,GAAA,EAAMd,GAAA;MACJe,KAAI,EAAGrB,SAAA,CAAAU,QAAiB;IAAG,EAC3B;IACF,IAAAb,aAAA,CAAAyB,MAAA,EAAAJ,MAAA,CAAAT,KAAA,wBAAAmB,SAAA;EAEA;EAAiD,IAC/C/B,aAAO,CAAAW,IAAA,8DAAoB;IAAA,IACzBC,KAAA;MAAY,IACZH,GAAA,iBAAU;MACZ,IAAAA,GAAA;IAAA;IAC4B,IAC1BI,QAAA,GAAW;MAAC,IACZJ,GAAA,iBAAS;QAAAK,SAAA;QAAAM,OAEL;MAAsC;MAAA,IAExCX,GAAE,kBAAkB;QAAgCK,SAAA;QAAAM,OAElD;QAA4C;QAE9C;UACEH,IAAA,EAAM;UACNC,aAAA,EACE;QACJ;QAAA;QAEA;UAAgDD,IAAA;UAE9CC,aAAM;QACV;QACF;QACF;UAEMD,IAAA,cAAS;UACbC,aAAA;QACA,CAAK;QACL;QACD;UAGDD,IAAA;UACAC,aAAA;QAEM;QACN;QAEM;UACND,IAAA;UACAC,aAAA;QACA;QACA;QAEA;UACAD,IAAA,cAAO;UACPC,aAAA;QAEA;MAGA;IAEA;IACD,IAAAG,MAAA,OAAAnB,oBAAA,CAAAoB,YAAA;MAEDV,KAAA;MACEW,GAAA,EAAMd,GAAA;MACJe,KAAI,EAAGrB,SAAA,CAAAU,QAAiB;IAC1B;IAEA,IAAAb,aAAiD,CAAAyB,MAAA,EAAAJ,MAAA,CAAAT,KAAA,uBAAA2B,WAAA;IAAA,EAC/C,EAACvC,aAAM,CAAAyB,MAAA,EAAiBJ,MAAG,CAAAT,KAAA,sBAAA2B,WAAA;IAAA,IACzBC,OAAA,GAAAnB,MAAW,CAAAT,KAAA;IAAA,IAAAZ,aACT,CAAAyB,MAAA,EAAAe,OAAA,EAAAT,SAAA;IAAA,IAAAO,MACE,GAAAjB,MAAW,CAAAT,KAAA;IAAA,IAAAZ,aACX,CAAUyB,MAAC,EAAAa,MAAA,EAAAP,SAAA;IAAA,IAAA/B,aACH,CAAAyB,MAAA,EAAAa,MAAA,EAAAP,SAAA;IAAA,IAAA/B,aACN,CAAAyB,MAAW,EAAAa,MAAA,EAAAP,SAAA;IAAA,IAAA/B,aACX,CAAAyB,MAAc,EAAAa,MAAI,EAAAP,SAAA;IAAA,IAAA/B,aAClB,CAAAyB,MAAS,EAAAa,MAAA,EAAAG,OAAA;IAAA,IAAAzC,aACL,CAAAyB,MAAM,EAAMa,MAAA,EAAAP,SAAa,sBAAW;IAAA,IAAA/B,aACpC,CAAAyB,MAAM,EAAAa,MAAS,EAAAP,SAAa,2CAAW;IAAA,IAAA/B,aACvC,CAAAyB,MAAM,EAAAa,MAAY,EAAAP,SAAA,yBAAwB;IAAA,IAAA/B,aAC1C,CAAAyB,MAAM,EAAAa,MAAQ,EAAAG,OAAa,2CAAY;IAAA,IAAAzC,aACvC,CAAAyB,MAAM,EAAAa,MAAQ,EAAAN,GAAA,CAAAD,SAAa,0BAAsB;IAAA,IAAA/B,aACrD,CAAAyB,MAAA,EAAAJ,MAAA,CAAAqB,UAAA,EAAAP,IAAA;EAAA;EACF,IAAAnC,aACF,CAAAW,IAAA;IAAA,IACFC,KAAA;MAAA,IACAH,GAAA,iBAAU;IAAA;IAEd,IAAAI,QAAA;MAEA,IAAMJ,GAAA,iBAAS;QACbK,SAAA,GACA;UACAC,SAAO,EAAU;UAClBC,QAAA;UAEDG,MAAA;YACAwB,SAAA,QAAO;YACPC,WAAA,GAEM,IAAQ,CACd;YAEMC,OAAS,GACf;cAGM5B,IAAS,MAAO;cACtB6B,WAAA,EAAO;YACP,GACA;cAEA7B,IAAA,SAAO;cACR6B,WAAA;YAED,GACQ;cACG7B,IAAA,YAAoB;cACpB6B,WAAA;YACA,GACA;cACA7B,IAAA;cACA6B,WAAA;YACT,GAEM;cACG7B,IAAA,QAAiB;cACtB6B,WAAc;YACd,CAAS;UAEb;QAEM,EACJ;QACA1B,OAAK;MACL;IACF,CAAC;IAED,IAAAC,MAAA,OAAAnB,oBAAc,CAAAoB,YAAiB,EAAC;MAChCV,KAAM;MACNW,GAAA,EAAAd,GAAA;MACAe,KAAA,EAAArB,SAAA,CAAAU,QAAO;IACP;IACA,IAAAb,aAAA,CAAAyB,MAAA,EAAOJ,MAAM,CAAAe,WAAM,EAAAD,IAAU;IAC7B,IAAAnC,aAAA,CAAAyB,MAAA,EAAOJ,MAAM,CAAAT,KAAM,WAAU,GAAA2B,WAAW;IACzC,IAAAvC,aAAA,CAAAyB,MAAA,EAAAJ,MAAA,CAAAT,KAAA,eAAA2B,WAAA;IAED,IAAAQ,KAAA,GAAA1B,MAAA,CAAAT,KAAK;IACH,IAAAZ,aAAsC,CAAAyB,MAAA,EAAAsB,KAAA,EAAAhB,SAAA;IAAA,IACnCiB,MAAM,GAAA3B,MAAA,CAAAT,KAAA,YAAuB;IAChC,IAAAZ,aAAA,CAAAyB,MAAA,EAAAuB,MAAA,EAAAjB,SAAA;IAEA,IAAAO,MAAM,GAAAjB,MAA2C,CAAAT,KAAA;IAAA,EAC/C,EAACZ,aAAM,CAAAyB,MAAA,EAAAa,MAAuB,EAAAP,SAAA;IAAA,IAC5B/B,aAAW,CAAAyB,MAAA,EAAAa,MAAA,EAAAP,SAAA;IAAA,IAAA/B,aACT,CAAAyB,MAAA,EAAAa,MAAA,EAAAP,SAAA;IAAA,IAAA/B,aACE,CAAAyB,MAAW,EAAAJ,MAAA,CAAAgB,aAAA,EAAAF,IAAA;EAAA;EACoD,IAAAnC,aAC/D,CAAQW,IAAA;IAAA,IAAAC,KACV;MAAA,IACFH,GAAA;MAAA,IACAA,GAAA,mBAAU;MACZ,IAAAA,GAAA;MACF,IAAAA,GAAA;MAEA,IAAMA,GAAA,sBAAS,uBAAa;MAC1B,IAAAA,GAAA;IAAA;IACK,IACLI,QAAO;MACR,IAAAJ,GAAA;QAGDK,SAAM,EAAS,CACf;UACDC,SAAA;UACFC,QAAA","ignoreList":[]}
1
+ {"version":3,"names":["import_vm","require","import_vitest","import_generate_lite","makeParse","table","_src","path","entry","Error","DIR","afterEach","vi","restoreAllMocks","describe","test","files","fixtures","mutations","modelName","handlers","name","paramTypeText","schema","queries","result","generateLite","dir","parse","expect","Object","keys","sort","toEqual","models","toContain","not","syncedMutations","modelCount","toBe","schemaCount","mutationCount","synced","toBeDefined","grouped","toMatch","queryCount","tableName","primaryKeys","columns","builderText","types","tables","warn","spyOn","console","mockImplementation","source","endsWith","includes","toHaveBeenCalledOnce","toHaveBeenCalledWith","mockRestore","toThrow","empty","dataConfig","instances","project","scope","relatedPaths","relations","sourceTable","targetTable","instance","find","syncTables","supportTables","_context_instances_default","_context_instances","imports","runnable","replace","context","groupedQueries","post","runInNewContext","default","_context_instances_control","_context_instances_project","_context_instances1","control"],"sources":["../../src/generate-lite.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -33,8 +33,10 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
33
33
  }), mod);
34
34
  var generate_exports = {};
35
35
  __export(generate_exports, {
36
+ deriveDataMembership: () => deriveDataMembership,
36
37
  generate: () => generate,
37
38
  generateDrizzleSchemaFile: () => generateDrizzleSchemaFile,
39
+ generateDrizzleSchemaInputFile: () => generateDrizzleSchemaInputFile,
38
40
  watch: () => watch
39
41
  });
40
42
  module.exports = __toCommonJS(generate_exports);
@@ -42,11 +44,13 @@ var import_node_crypto = require("node:crypto");
42
44
  var import_node_fs = require("node:fs");
43
45
  var import_node_path = require("node:path");
44
46
  var import_generate_helpers = require("./generate-helpers.cjs");
47
+ var import_generate_layout = require("./generate-layout.cjs");
45
48
  const hash = s => (0, import_node_crypto.createHash)("sha256").update(s).digest("hex");
46
- const GENERATOR_CACHE_VERSION = "1";
49
+ const GENERATOR_CACHE_VERSION = "5";
47
50
  const isGeneratorSourceFile = name => name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
48
- function hashInputTree(baseDir, generatedDir) {
51
+ function hashInputTree(sourceRoots, generatedDir) {
49
52
  const parts = [];
53
+ const seen = /* @__PURE__ */new Set();
50
54
  const walk = dir => {
51
55
  if (!(0, import_node_fs.existsSync)(dir)) return;
52
56
  const entries = (0, import_node_fs.readdirSync)(dir, {
@@ -55,14 +59,16 @@ function hashInputTree(baseDir, generatedDir) {
55
59
  for (const entry of entries) {
56
60
  const full = (0, import_node_path.resolve)(dir, entry.name);
57
61
  if (entry.isDirectory()) {
58
- if (entry.name === "node_modules" || full === generatedDir) continue;
62
+ if (entry.name === "node_modules" || entry.name === "generated" || full === generatedDir) continue;
59
63
  walk(full);
60
64
  } else if (entry.isFile() && isGeneratorSourceFile(entry.name)) {
65
+ if (seen.has(full)) continue;
66
+ seen.add(full);
61
67
  parts.push(`${full}\0${(0, import_node_fs.readFileSync)(full, "utf-8")}`);
62
68
  }
63
69
  }
64
70
  };
65
- walk(baseDir);
71
+ for (const root of sourceRoots) walk(root);
66
72
  return hash(parts.join("\0"));
67
73
  }
68
74
  let generateCache = {};
@@ -550,27 +556,87 @@ function generateDrizzleSchemaFile(schema) {
550
556
  lines.push(``);
551
557
  return lines.join("\n");
552
558
  }
559
+ function dataMembershipFromLayout(layout) {
560
+ return {
561
+ instances: Object.fromEntries(layout.instances.map(instance => [instance.name, {
562
+ tables: instance.namespaces.map(namespace => namespace.name).sort(),
563
+ syncTables: [...instance.syncTables],
564
+ supportTables: [...instance.supportTables],
565
+ scope: instance.scope
566
+ }])),
567
+ allTables: [...new Set(layout.instances.flatMap(instance => [...instance.syncTables, ...instance.supportTables]))].sort()
568
+ };
569
+ }
570
+ async function deriveDataMembership(options) {
571
+ const ts = await import("typescript");
572
+ const layout = (0, import_generate_layout.discoverDataLayout)(ts, (0, import_node_path.resolve)(options.dir), options.config ? (0, import_node_path.resolve)(options.config) : void 0);
573
+ return dataMembershipFromLayout(layout);
574
+ }
575
+ async function generateDrizzleSchemaInputFile(options) {
576
+ const ts = await import("typescript");
577
+ const baseDir = (0, import_node_path.resolve)(options.dir);
578
+ const layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, options.config ? (0, import_node_path.resolve)(options.config) : void 0);
579
+ const tableNames = dataMembershipFromLayout(layout).allTables;
580
+ const relationsPath = layout.metadataPaths.find(path => (0, import_node_path.basename)(path) === "relations.ts" && (0, import_node_path.dirname)(path) === (0, import_node_path.resolve)((0, import_node_path.dirname)(baseDir), "database")) ?? layout.metadataPaths.find(path => (0, import_node_path.basename)(path) === "relations.ts");
581
+ const relationEntries = [];
582
+ if (relationsPath) {
583
+ const source = ts.createSourceFile(relationsPath, (0, import_node_fs.readFileSync)(relationsPath, "utf8"), ts.ScriptTarget.Latest, true);
584
+ const included = new Set(tableNames);
585
+ const visit = node => {
586
+ if (!ts.isCallExpression(node) || node.expression.getText(source) !== "defineRelations") {
587
+ ts.forEachChild(node, visit);
588
+ return;
589
+ }
590
+ const factory = node.arguments[1];
591
+ if (!factory || !ts.isArrowFunction(factory) && !ts.isFunctionExpression(factory)) {
592
+ return;
593
+ }
594
+ const body = ts.isParenthesizedExpression(factory.body) ? factory.body.expression : factory.body;
595
+ if (!ts.isObjectLiteralExpression(body)) return;
596
+ for (const tableProperty of body.properties) {
597
+ if (!ts.isPropertyAssignment(tableProperty) || !ts.isObjectLiteralExpression(tableProperty.initializer)) {
598
+ continue;
599
+ }
600
+ const table = tableProperty.name.getText(source).replace(/^['"]|['"]$/g, "");
601
+ if (!included.has(table)) continue;
602
+ const relations = [];
603
+ for (const relationProperty of tableProperty.initializer.properties) {
604
+ if (!ts.isPropertyAssignment(relationProperty) || !ts.isCallExpression(relationProperty.initializer) || !ts.isPropertyAccessExpression(relationProperty.initializer.expression)) {
605
+ continue;
606
+ }
607
+ const target = relationProperty.initializer.expression.name.text;
608
+ if (included.has(target)) relations.push(relationProperty.getText(source));
609
+ }
610
+ relationEntries.push(` ${tableProperty.name.getText(source)}: {${relations.length ? `
611
+ ${relations.map(relation => ` ${relation},`).join("\n")}
612
+ ` : ""}},`);
613
+ }
614
+ };
615
+ visit(source);
616
+ }
617
+ const schemaImportPath = JSON.stringify(options.schemaImportPath);
618
+ return ["// auto-generated from the on-zero data layout", `import { defineRelations } from 'drizzle-orm'`, `import * as schema from ${schemaImportPath}`, "", `export { ${tableNames.join(", ")} } from ${schemaImportPath}`, `export const relations = defineRelations(schema, (r) => ({`, ...relationEntries, `}))`, ""].join("\n");
619
+ }
553
620
  async function generate(options) {
554
621
  const {
555
622
  dir,
556
623
  after,
557
624
  silent,
558
- force
625
+ force,
626
+ config
559
627
  } = options;
560
628
  const baseDir = (0, import_node_path.resolve)(dir);
561
- const mutationsDir = (0, import_node_path.resolve)(baseDir, "mutations");
562
- const usesMutationsDir = (0, import_node_fs.existsSync)(mutationsDir);
563
- const modelsDir = usesMutationsDir ? mutationsDir : (0, import_node_path.resolve)(baseDir, "models");
564
- const modelsDirName = usesMutationsDir ? "mutations" : "models";
565
629
  const generatedDir = (0, import_node_path.resolve)(baseDir, "generated");
566
- const queriesDir = (0, import_node_path.resolve)(baseDir, "queries");
567
630
  if (!(0, import_node_fs.existsSync)(generatedDir)) {
568
631
  (0, import_node_fs.mkdirSync)(generatedDir, {
569
632
  recursive: true
570
633
  });
571
634
  }
572
635
  loadCache();
573
- const inputHash = hashInputTree(baseDir, generatedDir);
636
+ const ts = await import("typescript");
637
+ const layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, config ? (0, import_node_path.resolve)(config) : void 0);
638
+ const metadataHash = hash(layout.metadataPaths.map(path => `${path}\0${(0, import_node_fs.readFileSync)(path, "utf8")}`).join("\0"));
639
+ const inputHash = hash(`${hashInputTree(layout.sourceRoots, generatedDir)}\0${metadataHash}`);
574
640
  if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && (0, import_node_fs.existsSync)((0, import_node_path.resolve)(generatedDir, "models.ts"))) {
575
641
  let counts = {};
576
642
  try {
@@ -584,19 +650,24 @@ async function generate(options) {
584
650
  mutationCount: counts.mutationCount ?? 0
585
651
  };
586
652
  }
587
- const allModelFiles = (0, import_node_fs.readdirSync)(modelsDir).filter(isGeneratorSourceFile).sort();
588
- const filesWithSchema = allModelFiles.filter(f => (0, import_node_fs.readFileSync)((0, import_node_path.resolve)(modelsDir, f), "utf-8").includes("export const schema = table("));
589
- const allModelNames = allModelFiles.map(f => (0, import_node_path.basename)(f, ".ts"));
590
- const schemaModelNames = filesWithSchema.map(f => (0, import_node_path.basename)(f, ".ts"));
591
- const writeResults = [writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "models.ts"), (0, import_generate_helpers.generateModelsFile)(allModelNames, modelsDirName)),
653
+ const modelNamespaces = layout.namespaces.filter(namespace => namespace.modelPath !== null);
654
+ const filesWithSchema = modelNamespaces.filter(namespace => (0, import_node_fs.readFileSync)(namespace.modelPath, "utf-8").includes("export const schema = table("));
655
+ const modelModules = modelNamespaces.map(namespace => ({
656
+ name: namespace.name,
657
+ importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, namespace.modelPath)
658
+ }));
659
+ const schemaModules = filesWithSchema.map(namespace => ({
660
+ name: namespace.name,
661
+ importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, namespace.modelPath)
662
+ }));
663
+ const writeResults = [writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "models.ts"), (0, import_generate_helpers.generateModelsFile)(modelModules)),
592
664
  // only generate types.ts and tables.ts when model files define schemas.
593
665
  // when using drizzle-zero CLI for schema generation, these files are
594
666
  // managed externally and should not be overwritten.
595
- ...(filesWithSchema.length > 0 ? [writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "types.ts"), (0, import_generate_helpers.generateTypesFile)(schemaModelNames)), writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "tables.ts"), (0, import_generate_helpers.generateTablesFile)(schemaModelNames, modelsDirName))] : []), writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "README.md"), (0, import_generate_helpers.generateReadmeFile)())];
667
+ ...(filesWithSchema.length > 0 ? [writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "types.ts"), (0, import_generate_helpers.generateTypesFile)(schemaModules.map(module2 => module2.name))), writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "tables.ts"), (0, import_generate_helpers.generateTablesFile)(schemaModules))] : []), writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "README.md"), (0, import_generate_helpers.generateReadmeFile)())];
596
668
  let filesChanged = writeResults.filter(Boolean).length;
597
669
  let queryCount = 0;
598
670
  let mutationCount = 0;
599
- const ts = await import("typescript");
600
671
  const typeToValibot = paramType => {
601
672
  try {
602
673
  return (0, import_generate_helpers.parseTypeString)(paramType.trim());
@@ -604,81 +675,88 @@ async function generate(options) {
604
675
  return null;
605
676
  }
606
677
  };
607
- if ((0, import_node_fs.existsSync)(queriesDir)) {
608
- const queryFiles = (0, import_node_fs.readdirSync)(queriesDir).filter(isGeneratorSourceFile);
609
- const allQueries = [];
610
- let queryResolver = null;
611
- const getQueryResolver = () => {
612
- if (!queryResolver) {
613
- const allFiles = (0, import_node_fs.readdirSync)(queriesDir).filter(isGeneratorSourceFile).map(f => ({
614
- path: (0, import_node_path.resolve)(queriesDir, f),
615
- content: (0, import_node_fs.readFileSync)((0, import_node_path.resolve)(queriesDir, f), "utf-8")
616
- }));
617
- queryResolver = createTypeResolver(ts, allFiles, queriesDir);
618
- }
619
- return queryResolver;
620
- };
621
- for (const file of queryFiles) {
622
- const filePath = (0, import_node_path.resolve)(queriesDir, file);
623
- const fileBaseName = (0, import_node_path.basename)(file, ".ts");
624
- try {
625
- const content = (0, import_node_fs.readFileSync)(filePath, "utf-8");
626
- const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
627
- ts.forEachChild(sourceFile, node => {
628
- if (ts.isVariableStatement(node)) {
629
- const exportModifier = node.modifiers?.find(m => m.kind === ts.SyntaxKind.ExportKeyword);
630
- if (!exportModifier) return;
631
- const declaration = node.declarationList.declarations[0];
632
- if (!declaration || !ts.isVariableDeclaration(declaration)) return;
633
- const name = declaration.name.getText(sourceFile);
634
- if (name === "permission") return;
635
- if (declaration.initializer && ts.isArrowFunction(declaration.initializer)) {
636
- const params = declaration.initializer.parameters;
637
- let paramType = "void";
638
- if (params.length > 0) {
639
- const param = params[0];
640
- paramType = param.type?.getText(sourceFile) || "unknown";
641
- }
642
- let valibotCode = typeToValibot(paramType);
643
- if (!valibotCode && params.length > 0 && params[0].type) {
644
- const resolver = getQueryResolver();
645
- const resolverSourceFile = resolver.program.getSourceFile(filePath);
646
- if (resolverSourceFile) {
647
- const resolvedType = resolveParamType(ts, resolver, resolverSourceFile, name, 0);
648
- if (resolvedType) {
649
- valibotCode = resolver.typeToValibot(resolvedType);
650
- }
678
+ const allQueries = [];
679
+ let queryResolver = null;
680
+ const getQueryResolver = () => {
681
+ if (!queryResolver) {
682
+ const allFiles = [...new Set(layout.namespaces.flatMap(namespace => namespace.sourcePaths))].map(path => ({
683
+ path,
684
+ content: (0, import_node_fs.readFileSync)(path, "utf-8")
685
+ }));
686
+ queryResolver = createTypeResolver(ts, allFiles, baseDir);
687
+ }
688
+ return queryResolver;
689
+ };
690
+ for (const namespace of layout.namespaces.filter(namespace2 => namespace2.queryPath !== null)) {
691
+ const filePath = namespace.queryPath;
692
+ try {
693
+ const content = (0, import_node_fs.readFileSync)(filePath, "utf-8");
694
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
695
+ ts.forEachChild(sourceFile, node => {
696
+ if (ts.isVariableStatement(node)) {
697
+ const exportModifier = node.modifiers?.find(m => m.kind === ts.SyntaxKind.ExportKeyword);
698
+ if (!exportModifier) return;
699
+ const declaration = node.declarationList.declarations[0];
700
+ if (!declaration || !ts.isVariableDeclaration(declaration)) return;
701
+ const name = declaration.name.getText(sourceFile);
702
+ if (["mutate", "permission", "schema", "where"].includes(name)) return;
703
+ if (declaration.initializer && ts.isArrowFunction(declaration.initializer)) {
704
+ const params = declaration.initializer.parameters;
705
+ let paramType = "void";
706
+ if (params.length > 0) {
707
+ const param = params[0];
708
+ paramType = param.type?.getText(sourceFile) || "unknown";
709
+ }
710
+ let valibotCode = typeToValibot(paramType);
711
+ if (!valibotCode && params.length > 0 && params[0].type) {
712
+ const resolver = getQueryResolver();
713
+ const resolverSourceFile = resolver.program.getSourceFile(filePath);
714
+ if (resolverSourceFile) {
715
+ const resolvedType = resolveParamType(ts, resolver, resolverSourceFile, name, 0);
716
+ if (resolvedType) {
717
+ valibotCode = resolver.typeToValibot(resolvedType);
651
718
  }
652
719
  }
653
- if (valibotCode) {
654
- allQueries.push({
655
- name,
656
- params: paramType,
657
- valibotCode,
658
- sourceFile: fileBaseName
659
- });
660
- } else if (!silent && paramType !== "void") {
661
- console.error(`\u2717 ${name}: could not resolve type "${paramType}"`);
662
- }
720
+ }
721
+ if (valibotCode) {
722
+ allQueries.push({
723
+ name,
724
+ params: paramType,
725
+ valibotCode,
726
+ sourceFile: namespace.name,
727
+ importPath: (0, import_generate_layout.namespaceImportPath)(baseDir, filePath)
728
+ });
729
+ } else if (!silent && paramType !== "void") {
730
+ console.error(`\u2717 ${name}: could not resolve type "${paramType}"`);
663
731
  }
664
732
  }
665
- });
666
- } catch (err) {
667
- if (!silent) console.error(`Error processing ${file}:`, err);
668
- }
733
+ }
734
+ });
735
+ } catch (err) {
736
+ if (!silent) console.error(`Error processing ${filePath}:`, err);
669
737
  }
670
- queryCount = allQueries.length;
671
- const groupedChanged = writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "groupedQueries.ts"), (0, import_generate_helpers.generateGroupedQueriesFile)(allQueries));
672
- const syncedChanged = writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "syncedQueries.ts"), (0, import_generate_helpers.generateSyncedQueriesFile)(allQueries));
673
- if (groupedChanged) filesChanged++;
674
- if (syncedChanged) filesChanged++;
675
738
  }
739
+ queryCount = allQueries.length;
740
+ const groupedChanged = writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "groupedQueries.ts"), (0, import_generate_helpers.generateGroupedQueriesFile)(allQueries));
741
+ const syncedChanged = writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "syncedQueries.ts"), (0, import_generate_helpers.generateSyncedQueriesFile)(allQueries));
742
+ if (groupedChanged) filesChanged++;
743
+ if (syncedChanged) filesChanged++;
744
+ const instancesChanged = writeFileIfChanged((0, import_node_path.resolve)(generatedDir, "instances.ts"), (0, import_generate_helpers.generateInstancesFile)(layout.instances.map(instance => ({
745
+ name: instance.name,
746
+ scope: instance.scope,
747
+ queryNames: instance.namespaces.map(namespace => namespace.name).filter(name => allQueries.some(query => query.sourceFile === name)),
748
+ modelNames: instance.namespaces.filter(namespace => namespace.modelPath).map(namespace => namespace.name),
749
+ tables: instance.namespaces.map(namespace => namespace.name),
750
+ syncTables: instance.syncTables,
751
+ supportTables: instance.supportTables
752
+ }))));
753
+ if (instancesChanged) filesChanged++;
676
754
  const allModelMutations = [];
677
755
  const mutationFiles = [];
678
756
  const unresolvedModels = [];
679
- for (const file of allModelFiles) {
680
- const filePath = (0, import_node_path.resolve)(modelsDir, file);
681
- const fileBaseName = (0, import_node_path.basename)(file, ".ts");
757
+ for (const namespace of modelNamespaces) {
758
+ const filePath = namespace.modelPath;
759
+ const fileBaseName = namespace.name;
682
760
  try {
683
761
  const content = (0, import_node_fs.readFileSync)(filePath, "utf-8");
684
762
  mutationFiles.push({
@@ -700,7 +778,7 @@ async function generate(options) {
700
778
  }
701
779
  }
702
780
  } catch (err) {
703
- if (!silent) console.error(`Error extracting mutations from ${file}:`, err);
781
+ if (!silent) console.error(`Error extracting mutations from ${filePath}:`, err);
704
782
  }
705
783
  }
706
784
  if (unresolvedModels.length > 0) {
@@ -721,7 +799,7 @@ async function generate(options) {
721
799
  }
722
800
  return results;
723
801
  };
724
- const allFiles = collectTsFiles(baseDir);
802
+ const allFiles = [...new Map(layout.sourceRoots.flatMap(collectTsFiles).map(file => [file.path, file])).values()];
725
803
  const modelResolver = createTypeResolver(ts, allFiles, baseDir);
726
804
  for (const {
727
805
  baseName,
@@ -750,7 +828,7 @@ async function generate(options) {
750
828
  if (mutationsChanged) filesChanged++;
751
829
  }
752
830
  if (filesChanged > 0 && !silent) {
753
- console.info(`\u2713 ${allModelFiles.length} models (${filesWithSchema.length} schemas)${queryCount ? `, ${queryCount} queries` : ""}${mutationCount ? `, ${mutationCount} mutations` : ""}`);
831
+ console.info(`\u2713 ${modelNamespaces.length} models (${filesWithSchema.length} schemas)${queryCount ? `, ${queryCount} queries` : ""}${mutationCount ? `, ${mutationCount} mutations` : ""}`);
754
832
  }
755
833
  if (filesChanged > 0 && after) {
756
834
  const {
@@ -771,7 +849,7 @@ async function generate(options) {
771
849
  generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
772
850
  generateCache.__inputHash = inputHash;
773
851
  generateCache.__counts = JSON.stringify({
774
- modelCount: allModelFiles.length,
852
+ modelCount: modelNamespaces.length,
775
853
  schemaCount: filesWithSchema.length,
776
854
  queryCount,
777
855
  mutationCount
@@ -779,7 +857,7 @@ async function generate(options) {
779
857
  saveCache();
780
858
  return {
781
859
  filesChanged,
782
- modelCount: allModelFiles.length,
860
+ modelCount: modelNamespaces.length,
783
861
  schemaCount: filesWithSchema.length,
784
862
  queryCount,
785
863
  mutationCount
@@ -791,9 +869,6 @@ async function watch(options) {
791
869
  debounce = 1e3
792
870
  } = options;
793
871
  const baseDir = (0, import_node_path.resolve)(dir);
794
- const mutationsDir = (0, import_node_path.resolve)(baseDir, "mutations");
795
- const modelsDir = (0, import_node_fs.existsSync)(mutationsDir) ? mutationsDir : (0, import_node_path.resolve)(baseDir, "models");
796
- const queriesDir = (0, import_node_path.resolve)(baseDir, "queries");
797
872
  const generatedDir = (0, import_node_path.resolve)(baseDir, "generated");
798
873
  await generate({
799
874
  ...options,
@@ -813,10 +888,13 @@ ${event} ${path}`);
813
888
  });
814
889
  }, debounce);
815
890
  };
816
- const watcher = chokidar.watch([modelsDir, queriesDir], {
891
+ const databaseDir = (0, import_node_path.resolve)((0, import_node_path.dirname)(baseDir), "database");
892
+ const ts = await import("typescript");
893
+ const layout = (0, import_generate_layout.discoverDataLayout)(ts, baseDir, options.config ? (0, import_node_path.resolve)(options.config) : void 0);
894
+ const watcher = chokidar.watch([... /* @__PURE__ */new Set([...layout.sourceRoots, ...((0, import_node_fs.existsSync)(databaseDir) ? [databaseDir] : [])])], {
817
895
  persistent: true,
818
896
  ignoreInitial: true,
819
- ignored: [generatedDir]
897
+ ignored: [generatedDir, /node_modules/]
820
898
  });
821
899
  watcher.on("change", path => debouncedRegenerate(path, "\u{1F4DD}"));
822
900
  watcher.on("add", path => debouncedRegenerate(path, "\u2795"));