on-zero 0.16.20 → 0.16.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/dist/cjs/cli.cjs +6 -0
  2. package/dist/cjs/cli.native.js +6 -0
  3. package/dist/cjs/cli.native.js.map +1 -1
  4. package/dist/cjs/combineZeroClients.native.js.map +1 -1
  5. package/dist/cjs/config.native.js.map +1 -1
  6. package/dist/cjs/createPermissions.native.js.map +1 -1
  7. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  8. package/dist/cjs/createUseQuery.cjs +14 -4
  9. package/dist/cjs/createUseQuery.native.js +18 -5
  10. package/dist/cjs/createUseQuery.native.js.map +1 -1
  11. package/dist/cjs/createUseQueryDirect.cjs +13 -2
  12. package/dist/cjs/createUseQueryDirect.native.js +14 -2
  13. package/dist/cjs/createUseQueryDirect.native.js.map +1 -1
  14. package/dist/cjs/createZeroClient.authData.test.native.js.map +1 -1
  15. package/dist/cjs/createZeroClient.cjs +21 -3
  16. package/dist/cjs/createZeroClient.connection.test.native.js.map +1 -1
  17. package/dist/cjs/createZeroClient.exportProbe.test.native.js.map +1 -1
  18. package/dist/cjs/createZeroClient.headless.test.native.js.map +1 -1
  19. package/dist/cjs/createZeroClient.httpAuth.test.native.js.map +1 -1
  20. package/dist/cjs/createZeroClient.native.js +28 -3
  21. package/dist/cjs/createZeroClient.native.js.map +1 -1
  22. package/dist/cjs/createZeroClient.recovery.test.native.js.map +1 -1
  23. package/dist/cjs/generate-helpers.native.js.map +1 -1
  24. package/dist/cjs/generate-helpers.test.native.js.map +1 -1
  25. package/dist/cjs/generate-layout.native.js.map +1 -1
  26. package/dist/cjs/generate-lite.native.js.map +1 -1
  27. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  28. package/dist/cjs/generate.cjs +57 -30
  29. package/dist/cjs/generate.native.js +92 -31
  30. package/dist/cjs/generate.native.js.map +1 -1
  31. package/dist/cjs/generate.test.cjs +147 -0
  32. package/dist/cjs/generate.test.native.js +147 -0
  33. package/dist/cjs/generate.test.native.js.map +1 -1
  34. package/dist/cjs/helpers/NullToOptional.native.js.map +1 -1
  35. package/dist/cjs/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
  36. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  37. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  38. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  39. package/dist/cjs/helpers/createMutators.test.native.js.map +1 -1
  40. package/dist/cjs/helpers/ellipsis.native.js.map +1 -1
  41. package/dist/cjs/helpers/emitter.native.js.map +1 -1
  42. package/dist/cjs/helpers/ensure.native.js.map +1 -1
  43. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  44. package/dist/cjs/helpers/errors.native.js.map +1 -1
  45. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  46. package/dist/cjs/helpers/getCurrentComponentStack.native.js.map +1 -1
  47. package/dist/cjs/helpers/globalValue.native.js.map +1 -1
  48. package/dist/cjs/helpers/hostStorageScope.native.js.map +1 -1
  49. package/dist/cjs/helpers/mapObject.native.js.map +1 -1
  50. package/dist/cjs/helpers/mutationLifecycle.native.js.map +1 -1
  51. package/dist/cjs/helpers/mutationLifecycle.test.native.js.map +1 -1
  52. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  53. package/dist/cjs/helpers/mutatorContext.test.native.js.map +1 -1
  54. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  55. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  56. package/dist/cjs/helpers/recoverZeroClient.native.js.map +1 -1
  57. package/dist/cjs/helpers/recoverZeroClient.test.native.js.map +1 -1
  58. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  59. package/dist/cjs/helpers/sleep.native.js.map +1 -1
  60. package/dist/cjs/helpers/time.native.js.map +1 -1
  61. package/dist/cjs/helpers/tuple.native.js.map +1 -1
  62. package/dist/cjs/helpers/useMutation.native.js.map +1 -1
  63. package/dist/cjs/helpers/useMutation.test.native.js.map +1 -1
  64. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  65. package/dist/cjs/index.native.js.map +1 -1
  66. package/dist/cjs/instanceRegistry.native.js.map +1 -1
  67. package/dist/cjs/modelRegistry.native.js.map +1 -1
  68. package/dist/cjs/multi.cjs +10 -5
  69. package/dist/cjs/multi.native.js +10 -5
  70. package/dist/cjs/multi.native.js.map +1 -1
  71. package/dist/cjs/multiInstance.test.native.js.map +1 -1
  72. package/dist/cjs/multiInstanceMutations.test.native.js.map +1 -1
  73. package/dist/cjs/multiInstanceNested.test.native.js.map +1 -1
  74. package/dist/cjs/multiPartition.test.cjs +46 -2
  75. package/dist/cjs/multiPartition.test.native.js +50 -2
  76. package/dist/cjs/multiPartition.test.native.js.map +1 -1
  77. package/dist/cjs/mutations.native.js.map +1 -1
  78. package/dist/cjs/mutations.test.native.js.map +1 -1
  79. package/dist/cjs/native-typescript.cjs +50 -11
  80. package/dist/cjs/native-typescript.native.js +158 -30
  81. package/dist/cjs/native-typescript.native.js.map +1 -1
  82. package/dist/cjs/provideZero.eagerInstance.test.cjs +22 -0
  83. package/dist/cjs/provideZero.eagerInstance.test.native.js +30 -0
  84. package/dist/cjs/provideZero.eagerInstance.test.native.js.map +1 -1
  85. package/dist/cjs/provideZero.hydration.test.native.js.map +1 -1
  86. package/dist/cjs/provideZero.ssr.test.native.js.map +1 -1
  87. package/dist/cjs/queryErrorRecovery.cjs +93 -0
  88. package/dist/cjs/queryErrorRecovery.native.js +205 -0
  89. package/dist/cjs/queryErrorRecovery.native.js.map +1 -0
  90. package/dist/cjs/queryJson.native.js.map +1 -1
  91. package/dist/cjs/queryRegistry.native.js.map +1 -1
  92. package/dist/cjs/resolveQuery.native.js.map +1 -1
  93. package/dist/cjs/run.native.js.map +1 -1
  94. package/dist/cjs/server.native.js.map +1 -1
  95. package/dist/cjs/server.test.native.js.map +1 -1
  96. package/dist/cjs/serverWhere.native.js.map +1 -1
  97. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  98. package/dist/cjs/state.native.js.map +1 -1
  99. package/dist/cjs/streaming.native.js.map +1 -1
  100. package/dist/cjs/testSetup.native.js.map +1 -1
  101. package/dist/cjs/types.native.js.map +1 -1
  102. package/dist/cjs/usePermission.test.native.js.map +1 -1
  103. package/dist/cjs/useQuery.aggregate.zero.test.cjs +199 -4
  104. package/dist/cjs/useQuery.aggregate.zero.test.native.js +212 -4
  105. package/dist/cjs/useQuery.aggregate.zero.test.native.js.map +1 -1
  106. package/dist/cjs/useQuery.empty.test.native.js.map +1 -1
  107. package/dist/cjs/useQuery.ssr.test.native.js.map +1 -1
  108. package/dist/cjs/useStreamingField.loop.test.native.js.map +1 -1
  109. package/dist/cjs/useStreamingField.native.js.map +1 -1
  110. package/dist/cjs/vite-plugin.cjs +10 -0
  111. package/dist/cjs/vite-plugin.native.js +10 -0
  112. package/dist/cjs/vite-plugin.native.js.map +1 -1
  113. package/dist/cjs/where.native.js.map +1 -1
  114. package/dist/cjs/zeroRunner.native.js.map +1 -1
  115. package/dist/cjs/zql.native.js.map +1 -1
  116. package/dist/esm/cli.mjs +6 -0
  117. package/dist/esm/cli.mjs.map +1 -1
  118. package/dist/esm/cli.native.js +7 -1
  119. package/dist/esm/cli.native.js.map +1 -1
  120. package/dist/esm/combineZeroClients.native.js +4 -4
  121. package/dist/esm/combineZeroClients.native.js.map +1 -1
  122. package/dist/esm/config.native.js.map +1 -1
  123. package/dist/esm/createPermissions.native.js +4 -4
  124. package/dist/esm/createPermissions.native.js.map +1 -1
  125. package/dist/esm/createSchemaFromDrizzle.native.js +1 -1
  126. package/dist/esm/createSchemaFromDrizzle.native.js.map +1 -1
  127. package/dist/esm/createUseQuery.mjs +16 -6
  128. package/dist/esm/createUseQuery.mjs.map +1 -1
  129. package/dist/esm/createUseQuery.native.js +24 -11
  130. package/dist/esm/createUseQuery.native.js.map +1 -1
  131. package/dist/esm/createUseQueryDirect.mjs +13 -2
  132. package/dist/esm/createUseQueryDirect.mjs.map +1 -1
  133. package/dist/esm/createUseQueryDirect.native.js +19 -7
  134. package/dist/esm/createUseQueryDirect.native.js.map +1 -1
  135. package/dist/esm/createZeroClient.authData.test.native.js +2 -2
  136. package/dist/esm/createZeroClient.authData.test.native.js.map +1 -1
  137. package/dist/esm/createZeroClient.connection.test.native.js +1 -1
  138. package/dist/esm/createZeroClient.connection.test.native.js.map +1 -1
  139. package/dist/esm/createZeroClient.exportProbe.test.native.js +1 -1
  140. package/dist/esm/createZeroClient.exportProbe.test.native.js.map +1 -1
  141. package/dist/esm/createZeroClient.headless.test.native.js +2 -2
  142. package/dist/esm/createZeroClient.headless.test.native.js.map +1 -1
  143. package/dist/esm/createZeroClient.httpAuth.test.native.js +1 -1
  144. package/dist/esm/createZeroClient.httpAuth.test.native.js.map +1 -1
  145. package/dist/esm/createZeroClient.mjs +21 -3
  146. package/dist/esm/createZeroClient.mjs.map +1 -1
  147. package/dist/esm/createZeroClient.native.js +49 -24
  148. package/dist/esm/createZeroClient.native.js.map +1 -1
  149. package/dist/esm/createZeroClient.recovery.test.native.js +2 -2
  150. package/dist/esm/createZeroClient.recovery.test.native.js.map +1 -1
  151. package/dist/esm/generate-helpers.native.js.map +1 -1
  152. package/dist/esm/generate-helpers.test.native.js +1 -1
  153. package/dist/esm/generate-helpers.test.native.js.map +1 -1
  154. package/dist/esm/generate-layout.native.js.map +1 -1
  155. package/dist/esm/generate-lite.native.js +1 -1
  156. package/dist/esm/generate-lite.native.js.map +1 -1
  157. package/dist/esm/generate-lite.test.native.js +1 -1
  158. package/dist/esm/generate-lite.test.native.js.map +1 -1
  159. package/dist/esm/generate.mjs +57 -30
  160. package/dist/esm/generate.mjs.map +1 -1
  161. package/dist/esm/generate.native.js +95 -34
  162. package/dist/esm/generate.native.js.map +1 -1
  163. package/dist/esm/generate.test.mjs +147 -0
  164. package/dist/esm/generate.test.mjs.map +1 -1
  165. package/dist/esm/generate.test.native.js +148 -1
  166. package/dist/esm/generate.test.native.js.map +1 -1
  167. package/dist/esm/helpers/NullToOptional.native.js.map +1 -1
  168. package/dist/esm/helpers/asyncContext.hostStorage.test.native.js +7 -7
  169. package/dist/esm/helpers/asyncContext.hostStorage.test.native.js.map +1 -1
  170. package/dist/esm/helpers/batchQuery.native.js +1 -1
  171. package/dist/esm/helpers/batchQuery.native.js.map +1 -1
  172. package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
  173. package/dist/esm/helpers/createMutators.native.js +4 -4
  174. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  175. package/dist/esm/helpers/createMutators.test.native.js +2 -2
  176. package/dist/esm/helpers/createMutators.test.native.js.map +1 -1
  177. package/dist/esm/helpers/ellipsis.native.js.map +1 -1
  178. package/dist/esm/helpers/emitter.native.js.map +1 -1
  179. package/dist/esm/helpers/ensure.native.js +1 -1
  180. package/dist/esm/helpers/ensure.native.js.map +1 -1
  181. package/dist/esm/helpers/ensureLoggedIn.native.js +2 -2
  182. package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
  183. package/dist/esm/helpers/errors.native.js.map +1 -1
  184. package/dist/esm/helpers/getAuth.native.js +3 -3
  185. package/dist/esm/helpers/getAuth.native.js.map +1 -1
  186. package/dist/esm/helpers/getCurrentComponentStack.native.js.map +1 -1
  187. package/dist/esm/helpers/globalValue.native.js.map +1 -1
  188. package/dist/esm/helpers/hostStorageScope.native.js.map +1 -1
  189. package/dist/esm/helpers/mapObject.native.js.map +1 -1
  190. package/dist/esm/helpers/mutationLifecycle.native.js +1 -1
  191. package/dist/esm/helpers/mutationLifecycle.native.js.map +1 -1
  192. package/dist/esm/helpers/mutationLifecycle.test.native.js +1 -1
  193. package/dist/esm/helpers/mutationLifecycle.test.native.js.map +1 -1
  194. package/dist/esm/helpers/mutatorContext.native.js +1 -1
  195. package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
  196. package/dist/esm/helpers/mutatorContext.test.native.js +6 -6
  197. package/dist/esm/helpers/mutatorContext.test.native.js.map +1 -1
  198. package/dist/esm/helpers/prettyFormatZeroQuery.native.js +1 -1
  199. package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  200. package/dist/esm/helpers/queryContext.native.js +1 -1
  201. package/dist/esm/helpers/queryContext.native.js.map +1 -1
  202. package/dist/esm/helpers/recoverZeroClient.native.js +1 -1
  203. package/dist/esm/helpers/recoverZeroClient.native.js.map +1 -1
  204. package/dist/esm/helpers/recoverZeroClient.test.native.js +2 -2
  205. package/dist/esm/helpers/recoverZeroClient.test.native.js.map +1 -1
  206. package/dist/esm/helpers/showZeroClientError.native.js +1 -1
  207. package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
  208. package/dist/esm/helpers/sleep.native.js +1 -1
  209. package/dist/esm/helpers/sleep.native.js.map +1 -1
  210. package/dist/esm/helpers/time.native.js.map +1 -1
  211. package/dist/esm/helpers/tuple.native.js.map +1 -1
  212. package/dist/esm/helpers/useMutation.native.js.map +1 -1
  213. package/dist/esm/helpers/useMutation.test.native.js +1 -1
  214. package/dist/esm/helpers/useMutation.test.native.js.map +1 -1
  215. package/dist/esm/helpers/useZeroDebug.native.js +2 -2
  216. package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
  217. package/dist/esm/index.native.js +23 -23
  218. package/dist/esm/index.native.js.map +1 -1
  219. package/dist/esm/instanceRegistry.native.js +2 -2
  220. package/dist/esm/instanceRegistry.native.js.map +1 -1
  221. package/dist/esm/modelRegistry.native.js.map +1 -1
  222. package/dist/esm/multi.mjs +10 -5
  223. package/dist/esm/multi.mjs.map +1 -1
  224. package/dist/esm/multi.native.js +15 -10
  225. package/dist/esm/multi.native.js.map +1 -1
  226. package/dist/esm/multiInstance.test.native.js +10 -10
  227. package/dist/esm/multiInstance.test.native.js.map +1 -1
  228. package/dist/esm/multiInstanceMutations.test.native.js +4 -4
  229. package/dist/esm/multiInstanceMutations.test.native.js.map +1 -1
  230. package/dist/esm/multiInstanceNested.test.native.js +3 -3
  231. package/dist/esm/multiInstanceNested.test.native.js.map +1 -1
  232. package/dist/esm/multiPartition.test.mjs +47 -3
  233. package/dist/esm/multiPartition.test.mjs.map +1 -1
  234. package/dist/esm/multiPartition.test.native.js +52 -4
  235. package/dist/esm/multiPartition.test.native.js.map +1 -1
  236. package/dist/esm/mutations.native.js +2 -2
  237. package/dist/esm/mutations.native.js.map +1 -1
  238. package/dist/esm/mutations.test.native.js +4 -4
  239. package/dist/esm/mutations.test.native.js.map +1 -1
  240. package/dist/esm/native-typescript.mjs +50 -11
  241. package/dist/esm/native-typescript.mjs.map +1 -1
  242. package/dist/esm/native-typescript.native.js +158 -30
  243. package/dist/esm/native-typescript.native.js.map +1 -1
  244. package/dist/esm/provideZero.eagerInstance.test.mjs +22 -0
  245. package/dist/esm/provideZero.eagerInstance.test.mjs.map +1 -1
  246. package/dist/esm/provideZero.eagerInstance.test.native.js +31 -1
  247. package/dist/esm/provideZero.eagerInstance.test.native.js.map +1 -1
  248. package/dist/esm/provideZero.hydration.test.native.js +2 -2
  249. package/dist/esm/provideZero.hydration.test.native.js.map +1 -1
  250. package/dist/esm/provideZero.ssr.test.native.js +2 -2
  251. package/dist/esm/provideZero.ssr.test.native.js.map +1 -1
  252. package/dist/esm/queryErrorRecovery.mjs +66 -0
  253. package/dist/esm/queryErrorRecovery.mjs.map +1 -0
  254. package/dist/esm/queryErrorRecovery.native.js +175 -0
  255. package/dist/esm/queryErrorRecovery.native.js.map +1 -0
  256. package/dist/esm/queryJson.native.js +1 -1
  257. package/dist/esm/queryJson.native.js.map +1 -1
  258. package/dist/esm/queryRegistry.native.js.map +1 -1
  259. package/dist/esm/resolveQuery.native.js +2 -2
  260. package/dist/esm/resolveQuery.native.js.map +1 -1
  261. package/dist/esm/run.native.js +4 -4
  262. package/dist/esm/run.native.js.map +1 -1
  263. package/dist/esm/server.native.js +10 -10
  264. package/dist/esm/server.native.js.map +1 -1
  265. package/dist/esm/server.test.native.js +2 -2
  266. package/dist/esm/server.test.native.js.map +1 -1
  267. package/dist/esm/serverWhere.native.js +1 -1
  268. package/dist/esm/serverWhere.native.js.map +1 -1
  269. package/dist/esm/serverWhere.test.native.js +3 -3
  270. package/dist/esm/serverWhere.test.native.js.map +1 -1
  271. package/dist/esm/state.native.js +1 -1
  272. package/dist/esm/state.native.js.map +1 -1
  273. package/dist/esm/streaming.native.js +1 -1
  274. package/dist/esm/streaming.native.js.map +1 -1
  275. package/dist/esm/testSetup.native.js.map +1 -1
  276. package/dist/esm/types.native.js.map +1 -1
  277. package/dist/esm/usePermission.test.native.js +3 -3
  278. package/dist/esm/usePermission.test.native.js.map +1 -1
  279. package/dist/esm/useQuery.aggregate.zero.test.mjs +197 -2
  280. package/dist/esm/useQuery.aggregate.zero.test.mjs.map +1 -1
  281. package/dist/esm/useQuery.aggregate.zero.test.native.js +212 -4
  282. package/dist/esm/useQuery.aggregate.zero.test.native.js.map +1 -1
  283. package/dist/esm/useQuery.empty.test.native.js +3 -3
  284. package/dist/esm/useQuery.empty.test.native.js.map +1 -1
  285. package/dist/esm/useQuery.ssr.test.native.js +2 -2
  286. package/dist/esm/useQuery.ssr.test.native.js.map +1 -1
  287. package/dist/esm/useStreamingField.loop.test.native.js +1 -1
  288. package/dist/esm/useStreamingField.loop.test.native.js.map +1 -1
  289. package/dist/esm/useStreamingField.native.js.map +1 -1
  290. package/dist/esm/vite-plugin.mjs +10 -0
  291. package/dist/esm/vite-plugin.mjs.map +1 -1
  292. package/dist/esm/vite-plugin.native.js +11 -1
  293. package/dist/esm/vite-plugin.native.js.map +1 -1
  294. package/dist/esm/where.native.js +3 -3
  295. package/dist/esm/where.native.js.map +1 -1
  296. package/dist/esm/zeroRunner.native.js +1 -1
  297. package/dist/esm/zeroRunner.native.js.map +1 -1
  298. package/dist/esm/zql.native.js +1 -1
  299. package/dist/esm/zql.native.js.map +1 -1
  300. package/package.json +4 -4
  301. package/src/cli.ts +6 -0
  302. package/src/createUseQuery.tsx +20 -5
  303. package/src/createUseQueryDirect.tsx +17 -1
  304. package/src/createZeroClient.tsx +37 -4
  305. package/src/generate.test.ts +116 -0
  306. package/src/generate.ts +109 -52
  307. package/src/multi.ts +11 -3
  308. package/src/multiPartition.test.ts +55 -11
  309. package/src/native-typescript.ts +64 -11
  310. package/src/provideZero.eagerInstance.test.tsx +27 -0
  311. package/src/queryErrorRecovery.ts +95 -0
  312. package/src/useQuery.aggregate.zero.test.tsx +187 -2
  313. package/src/vite-plugin.ts +10 -0
  314. package/types/createUseQuery.d.ts +3 -1
  315. package/types/createUseQuery.d.ts.map +1 -1
  316. package/types/createUseQueryDirect.d.ts +3 -1
  317. package/types/createUseQueryDirect.d.ts.map +1 -1
  318. package/types/createZeroClient.d.ts +3 -1
  319. package/types/createZeroClient.d.ts.map +1 -1
  320. package/types/generate.d.ts +4 -0
  321. package/types/generate.d.ts.map +1 -1
  322. package/types/multi.d.ts +3 -1
  323. package/types/multi.d.ts.map +1 -1
  324. package/types/native-typescript.d.ts +7 -1
  325. package/types/native-typescript.d.ts.map +1 -1
  326. package/types/queryErrorRecovery.d.ts +33 -0
  327. package/types/queryErrorRecovery.d.ts.map +1 -0
  328. package/types/useQuery.aggregate.zero.test.d.ts.map +1 -1
  329. package/types/vite-plugin.d.ts.map +1 -1
@@ -7,9 +7,9 @@ import { CRUD_MUTATION_NAMES, formatObjectKey, generateAggregatesFile, generateG
7
7
  import { discoverDataLayout, namespaceImportPath } from "./generate-layout.mjs";
8
8
  import { collectTypeScriptSourcePaths, createNativeTypeScriptProject } from "./native-typescript.mjs";
9
9
  const hash = s => createHash("sha256").update(s).digest("hex");
10
- const GENERATOR_CACHE_VERSION = "8";
10
+ const GENERATOR_CACHE_VERSION = "10";
11
11
  const isGeneratorSourceFile = name => name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
12
- function hashInputTree(sourceRoots, generatedDir) {
12
+ function hashInputTree(sourceRoots, generatedDir, dependencyPaths) {
13
13
  const parts = [];
14
14
  const seen = /* @__PURE__ */new Set();
15
15
  const walk = dir => {
@@ -30,6 +30,11 @@ function hashInputTree(sourceRoots, generatedDir) {
30
30
  }
31
31
  };
32
32
  for (const root of sourceRoots) walk(root);
33
+ for (const path of dependencyPaths) {
34
+ if (seen.has(path) || path.startsWith(`${generatedDir}/`) || !existsSync(path)) continue;
35
+ seen.add(path);
36
+ parts.push(`${path}\0${readFileSync(path, "utf-8")}`);
37
+ }
33
38
  return hash(parts.join("\0"));
34
39
  }
35
40
  let generateCache = {};
@@ -296,11 +301,12 @@ function extractSchemaColumns(sourceFile, columns, primaryKeys) {
296
301
  async function tsTypeToValibot(project, type, seen = /* @__PURE__ */new Set()) {
297
302
  const checker = project.checker;
298
303
  const flags = type.flags;
304
+ let path = seen;
299
305
  if (flags & (TypeFlags.Object | TypeFlags.Intersection)) {
300
306
  if (seen.has(type.id)) return "v.unknown()";
301
- seen.add(type.id);
307
+ path = new Set(seen).add(type.id);
302
308
  }
303
- const recurse = value => tsTypeToValibot(project, value, seen);
309
+ const recurse = value => tsTypeToValibot(project, value, path);
304
310
  if (flags & TypeFlags.String) return "v.string()";
305
311
  if (flags & TypeFlags.Number) return "v.number()";
306
312
  if (flags & TypeFlags.Boolean) return "v.boolean()";
@@ -483,13 +489,16 @@ function dataMembershipFromLayout(layout) {
483
489
  allTables: [...new Set(layout.instances.flatMap(instance => [...instance.syncTables, ...instance.supportTables]))].sort()
484
490
  };
485
491
  }
486
- async function loadGeneratorProject(baseDir) {
492
+ async function loadGeneratorProject(baseDir, deferSources = false, tsconfig) {
487
493
  const sourcePaths = collectTypeScriptSourcePaths([baseDir, resolve(dirname(baseDir), "database")]);
488
- return createNativeTypeScriptProject(baseDir, sourcePaths);
494
+ return createNativeTypeScriptProject(baseDir, sourcePaths, {
495
+ deferSources,
496
+ tsconfig: tsconfig ? resolve(tsconfig) : void 0
497
+ });
489
498
  }
490
499
  async function deriveDataMembership(options) {
491
500
  const baseDir = resolve(options.dir);
492
- const project = await loadGeneratorProject(baseDir);
501
+ const project = await loadGeneratorProject(baseDir, false, options.tsconfig);
493
502
  try {
494
503
  const layout = discoverDataLayout(project, baseDir, options.config ? resolve(options.config) : void 0);
495
504
  return dataMembershipFromLayout(layout);
@@ -499,7 +508,7 @@ async function deriveDataMembership(options) {
499
508
  }
500
509
  async function generateDrizzleSchemaInputFile(options) {
501
510
  const baseDir = resolve(options.dir);
502
- const project = await loadGeneratorProject(baseDir);
511
+ const project = await loadGeneratorProject(baseDir, false, options.tsconfig);
503
512
  try {
504
513
  return generateDrizzleSchemaInputFileWithProject(options, project);
505
514
  } finally {
@@ -551,7 +560,7 @@ ${relations.map(relation => ` ${relation},`).join("\n")}
551
560
  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");
552
561
  }
553
562
  async function generate(options) {
554
- const project = await loadGeneratorProject(resolve(options.dir));
563
+ const project = await loadGeneratorProject(resolve(options.dir), true, options.tsconfig);
555
564
  try {
556
565
  return await generateWithProject(options, project);
557
566
  } finally {
@@ -574,36 +583,44 @@ async function generateWithProject(options, project) {
574
583
  });
575
584
  }
576
585
  loadCache();
577
- const layout = discoverDataLayout(project, baseDir, config ? resolve(config) : void 0);
578
- const metadataHash = hash(layout.metadataPaths.map(path => `${path}\0${readFileSync(path, "utf8")}`).join("\0"));
586
+ const configPath = config ? resolve(config) : resolve(baseDir, "on-zero.config.ts");
587
+ let cachedInputs = null;
588
+ if (generateCache.__configPath === configPath) {
589
+ try {
590
+ const value = JSON.parse(generateCache.__layoutInputs || "null");
591
+ if (value && typeof value === "object" && "sourceRoots" in value && Array.isArray(value.sourceRoots) && value.sourceRoots.every(path => typeof path === "string") && "metadataPaths" in value && Array.isArray(value.metadataPaths) && value.metadataPaths.every(path => typeof path === "string")) {
592
+ cachedInputs = {
593
+ sourceRoots: value.sourceRoots,
594
+ metadataPaths: value.metadataPaths
595
+ };
596
+ }
597
+ } catch {}
598
+ }
599
+ const dependencyPaths = await project.sourceFilePaths();
600
+ const hashInputs = layout2 => {
601
+ const metadataHash = hash(layout2.metadataPaths.map(path => `${path}\0${readFileSync(path, "utf8")}`).join("\0"));
602
+ return hash(`${hashInputTree(layout2.sourceRoots, generatedDir, dependencyPaths)}\0${metadataHash}\0${externalZeroConfig}\0${project.configurationKey}`);
603
+ };
579
604
  const databaseSchemaPath = resolve(dirname(baseDir), "database/schema.ts");
580
605
  const needsDrizzleSchema = existsSync(databaseSchemaPath);
581
606
  const externalZeroConfigPath = resolve(dirname(databaseSchemaPath), "drizzle-zero.config.ts");
582
607
  const externalZeroConfig = existsSync(externalZeroConfigPath) ? readFileSync(externalZeroConfigPath, "utf8") : null;
583
608
  const needsSqliteZeroSchema = needsDrizzleSchema && externalZeroConfig === null;
584
- const inputHash = hash(`${hashInputTree(layout.sourceRoots, generatedDir)}\0${metadataHash}\0${externalZeroConfig}`);
585
- if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash &&
609
+ let cachedInputHash = null;
610
+ if (cachedInputs) {
611
+ try {
612
+ cachedInputHash = hashInputs(cachedInputs);
613
+ } catch {}
614
+ }
615
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === cachedInputHash &&
586
616
  // the input hash deliberately skips the generated directory, so it cannot
587
617
  // notice that the outputs themselves moved. existence is not correctness
588
618
  // either: a checkout, merge or revert leaves every file present and stale.
589
619
  // confirm the bytes on disk still match what the cache says it wrote there
590
620
  // before skipping the build, or the fast path serves someone else's output.
591
621
  //
592
- // a consumer that formats generated output after this runs never hits the
593
- // fast path again, because the cache holds the bytes written here and disk
594
- // holds the formatted ones. soot does exactly that, `on-zero generate &&
595
- // generate-instance-tables && oxfmt src/data/generated/`, and the number is
596
- // already taken: 2.50s median before, 3.69s after, four warm runs each in
597
- // one checkout with only the pin swapped, so about 1.2 seconds or 47
598
- // percent on this step. the full three-command script went 2.65s to 3.14s
599
- // with a spread that swallows most of it.
600
- //
601
- // the shape matters more than the number. this is not a cache that hits
602
- // less often, it is a cache that never hits, so the cost does not degrade
603
- // gracefully and grows with the generated output rather than staying at
604
- // 1.2s. correct and slower beats fast and stale, which is why it is written
605
- // this way, but if generate time ever becomes the complaint, record the
606
- // hash after the consumer's formatter runs rather than weakening this.
622
+ // successful after commands record their final output hashes. formatting
623
+ // therefore keeps the fast path without trusting stale generated bytes.
607
624
  Object.entries(generateCache).every(([cachedPath, cachedHash]) => {
608
625
  if (!cachedPath.startsWith(generatedDir)) return true;
609
626
  try {
@@ -624,6 +641,9 @@ async function generateWithProject(options, project) {
624
641
  mutationCount: counts.mutationCount ?? 0
625
642
  };
626
643
  }
644
+ await project.loadSources();
645
+ const layout = discoverDataLayout(project, baseDir, config ? resolve(config) : void 0);
646
+ const inputHash = hashInputs(layout);
627
647
  const modelNamespaces = layout.namespaces.filter(namespace => namespace.modelPath !== null);
628
648
  const filesWithSchema = modelNamespaces.filter(namespace => readFileSync(namespace.modelPath, "utf-8").includes("export const schema = table("));
629
649
  const modelModules = modelNamespaces.map(namespace => ({
@@ -813,11 +833,18 @@ async function generateWithProject(options, project) {
813
833
  ON_ZERO_GENERATED_DIR: generatedDir
814
834
  }
815
835
  });
836
+ const outputHashes = Object.fromEntries(Object.keys(generateCache).filter(filePath => filePath.startsWith(generatedDir)).map(filePath => [filePath, hash(readFileSync(filePath, "utf-8"))]));
837
+ Object.assign(generateCache, outputHashes);
816
838
  } catch (err) {
817
839
  if (!silent) console.error(`Error running after command: ${err}`);
818
840
  }
819
841
  }
820
842
  generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
843
+ generateCache.__configPath = configPath;
844
+ generateCache.__layoutInputs = JSON.stringify({
845
+ sourceRoots: layout.sourceRoots,
846
+ metadataPaths: layout.metadataPaths
847
+ });
821
848
  generateCache.__inputHash = inputHash;
822
849
  generateCache.__counts = JSON.stringify({
823
850
  modelCount: modelNamespaces.length,
@@ -860,14 +887,14 @@ ${event} ${path}`);
860
887
  }, debounce);
861
888
  };
862
889
  const databaseDir = resolve(dirname(baseDir), "database");
863
- const project = await loadGeneratorProject(baseDir);
890
+ const project = await loadGeneratorProject(baseDir, false, options.tsconfig);
864
891
  let layout;
865
892
  try {
866
893
  layout = discoverDataLayout(project, baseDir, options.config ? resolve(options.config) : void 0);
867
894
  } finally {
868
895
  await project.close();
869
896
  }
870
- const watcher = chokidar.watch([... /* @__PURE__ */new Set([...layout.sourceRoots, ...(existsSync(databaseDir) ? [databaseDir] : [])])], {
897
+ const watcher = chokidar.watch([... /* @__PURE__ */new Set([...layout.sourceRoots, ...(options.tsconfig ? [resolve(options.tsconfig)] : []), ...(existsSync(databaseDir) ? [databaseDir] : [])])], {
871
898
  persistent: true,
872
899
  ignoreInitial: true,
873
900
  ignored: [generatedDir, /node_modules/]
@@ -1 +1 @@
1
- {"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","ts","ObjectFlags","SymbolFlags","TypeFlags","CRUD_MUTATION_NAMES","formatObjectKey","generateAggregatesFile","generateGroupedQueriesFile","generateInstancesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","renderDrizzleZeroSqliteSchemaModule","shouldSkipObjectKey","discoverDataLayout","namespaceImportPath","collectTypeScriptSourcePaths","createNativeTypeScriptProject","hash","s","update","digest","GENERATOR_CACHE_VERSION","isGeneratorSourceFile","name","endsWith","hashInputTree","sourceRoots","generatedDir","parts","seen","Set","walk","dir","entries","withFileTypes","sort","a","b","entry","full","isDirectory","isFile","has","add","push","root","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","onDisk","createTypeResolver","project","resolveType","node","checker","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","typeNode","forEachChild","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","readMutationsCall","call","args","arguments","length","only","hasTable","crud","handlersArg","isObjectLiteralExpression","handlers","options","prop","properties","isPropertyAssignment","isIdentifier","isStringLiteral","text","FalseKeyword","resolveMutationParamTypes","nodes","Map","isCallExpression","isMethodDeclaration","params","init","isFunctionExpression","set","resolved","expanded","extractMutationsFromModel","fileName","silent","resolvedValibot","mutateNode","modelName","hasCRUD","columns","primaryKeys","custom","extractSchemaColumns","paramType","valibotCode","secondParam","get","visit","expression","arg","obj","colName","initText","colType","flags","Object","Intersection","id","recurse","value","String","Number","Boolean","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayLikeType","typeArgs","isTypeReference","getTypeArguments","indexInfo","getIndexInfosOfType","find","info","keyType","elementType","valueType","isStringLiteralType","isNumberLiteralType","isBooleanLiteralType","isUnionType","members","getTypes","hasNull","member","hasUndefined","rest","filter","every","BooleanLiteral","inner","inner2","Promise","all","map","resolveSymbolType","property","symbolType","getTypeOfSymbol","isErrorType","declaration","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","objectToValibot","props","propType","isOptional","Optional","val","startsWith","isIntersectionType","getPropertiesOfType","isTupleType","isObjectType","objectFlags","Reference","symbol","getSymbol","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","tableName","t","colEntries","pkArgs","primaryKey","k","tableSource","relTableNames","relationships","rels","relEntries","relBody","relName","hops","hop","fn2","cardinality","sf","sourceField","f","df","destField","destSchema","Error","fn","hopCode","tableList","n","relList","dataMembershipFromLayout","layout","instances","fromEntries","instance","syncTables","supportTables","scope","allTables","flatMap","loadGeneratorProject","baseDir","sourcePaths","deriveDataMembership","config","close","generateDrizzleSchemaInputFile","generateDrizzleSchemaInputFileWithProject","relationsPath","metadataPaths","path","relationEntries","source","included","factory","body","isParenthesizedExpression","tableProperty","table","replace","relations","relationProperty","isPropertyAccessExpression","target","relation","schemaImportPath","generate","generateWithProject","after","force","metadataHash","databaseSchemaPath","needsDrizzleSchema","externalZeroConfigPath","externalZeroConfig","needsSqliteZeroSchema","inputHash","__generatorVersion","__inputHash","cachedPath","cachedHash","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","modelNamespaces","namespaces","namespace","modelPath","filesWithSchema","includes","modelModules","importPath","schemaModules","writeResults","module","membership","drizzleSchema","sqliteSchema","trim","allQueries","namespace2","queryPath","candidates","exportModifier","projectForFile","candidate","resolvedType","console","error","err","groupedChanged","syncedChanged","instancesChanged","queryNames","query","modelNames","aggregateNamespaces","aggregatePath","aggregatesChanged","allModelMutations","unresolvedModels","fileBaseName","result","hasUnresolved","baseName","modelResolver","resolvedTypes","size","idx","findIndex","model","mutationsChanged","execSync","stdio","env","ON_ZERO_GENERATED_DIR","watch","debounce","chokidar","debounceTimer","debouncedRegenerate","event","clearTimeout","setTimeout","databaseDir","watcher","persistent","ignoreInitial","ignored","on"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,QAAkB;AAC3B,SAASC,UAAA,EAAYC,SAAA,EAAWC,YAAA,EAAcC,WAAA,EAAaC,aAAA,QAAqB;AAChF,SAASC,QAAA,EAAUC,OAAA,EAASC,OAAA,QAAe;AAE3C,YAAYC,EAAA,MAAQ;AACpB,SACEC,WAAA,EACAC,WAAA,EACAC,SAAA,QAIK;AAEP,SACEC,mBAAA,EACAC,eAAA,EACAC,sBAAA,EACAC,0BAAA,EACAC,qBAAA,EACAC,kBAAA,EACAC,kBAAA,EACAC,2BAAA,EACAC,yBAAA,EACAC,kBAAA,EACAC,iBAAA,EACAC,eAAA,EACAC,eAAA,EACAC,mCAAA,EACAC,mBAAA,QACK;AACP,SAASC,kBAAA,EAAoBC,mBAAA,QAA2B;AACxD,SACEC,4BAAA,EACAC,6BAAA,QAEK;AAKP,MAAMC,IAAA,GAAQC,CAAA,IAAcjC,UAAA,CAAW,QAAQ,EAAEkC,MAAA,CAAOD,CAAC,EAAEE,MAAA,CAAO,KAAK;AACvE,MAAMC,uBAAA,GAA0B;AAEhC,MAAMC,qBAAA,GAAyBC,IAAA,IAC7BA,IAAA,CAAKC,QAAA,CAAS,KAAK,KACnB,CAACD,IAAA,CAAKC,QAAA,CAAS,OAAO,KACtB,CAACD,IAAA,CAAKC,QAAA,CAAS,UAAU,KACzB,CAACD,IAAA,CAAKC,QAAA,CAAS,UAAU;AAQ3B,SAASC,cAAcC,WAAA,EAAuBC,YAAA,EAA8B;EAC1E,MAAMC,KAAA,GAAkB,EAAC;EACzB,MAAMC,IAAA,GAAO,mBAAIC,GAAA,CAAY;EAC7B,MAAMC,IAAA,GAAQC,GAAA,IAAgB;IAC5B,IAAI,CAAC9C,UAAA,CAAW8C,GAAG,GAAG;IACtB,MAAMC,OAAA,GAAU5C,WAAA,CAAY2C,GAAA,EAAK;MAAEE,aAAA,EAAe;IAAK,CAAC,EAAEC,IAAA,CAAK,CAACC,CAAA,EAAGC,CAAA,KACjED,CAAA,CAAEb,IAAA,GAAOc,CAAA,CAAEd,IAAA,GAAO,KAAK,CACzB;IACA,WAAWe,KAAA,IAASL,OAAA,EAAS;MAC3B,MAAMM,IAAA,GAAO9C,OAAA,CAAQuC,GAAA,EAAKM,KAAA,CAAMf,IAAI;MACpC,IAAIe,KAAA,CAAME,WAAA,CAAY,GAAG;QACvB,IACEF,KAAA,CAAMf,IAAA,KAAS,kBACfe,KAAA,CAAMf,IAAA,KAAS,eACfgB,IAAA,KAASZ,YAAA,EAET;QACFI,IAAA,CAAKQ,IAAI;MACX,WAAWD,KAAA,CAAMG,MAAA,CAAO,KAAKnB,qBAAA,CAAsBgB,KAAA,CAAMf,IAAI,GAAG;QAC9D,IAAIM,IAAA,CAAKa,GAAA,CAAIH,IAAI,GAAG;QACpBV,IAAA,CAAKc,GAAA,CAAIJ,IAAI;QACbX,KAAA,CAAMgB,IAAA,CAAK,GAAGL,IAAI,KAAKnD,YAAA,CAAamD,IAAA,EAAM,OAAO,CAAC,EAAE;MACtD;IACF;EACF;EACA,WAAWM,IAAA,IAAQnB,WAAA,EAAaK,IAAA,CAAKc,IAAI;EACzC,OAAO5B,IAAA,CAAKW,KAAA,CAAMkB,IAAA,CAAK,IAAI,CAAC;AAC9B;AAEA,IAAIC,aAAA,GAAwC,CAAC;AAC7C,IAAIC,iBAAA,GAAoB;AAExB,SAASC,YAAA,EAAc;EACrB,IAAIjB,GAAA,GAAMkB,OAAA,CAAQC,GAAA,CAAI;EACtB,OAAOnB,GAAA,KAAQ,KAAK;IAClB,MAAMoB,EAAA,GAAK3D,OAAA,CAAQuC,GAAA,EAAK,cAAc;IACtC,IAAI9C,UAAA,CAAWkE,EAAE,GAAG;MAClB,MAAMC,QAAA,GAAW5D,OAAA,CAAQ2D,EAAA,EAAI,UAAU;MACvC,IAAI,CAAClE,UAAA,CAAWmE,QAAQ,GAAG;QACzBlE,SAAA,CAAUkE,QAAA,EAAU;UAAEC,SAAA,EAAW;QAAK,CAAC;MACzC;MACA,OAAOD,QAAA;IACT;IACArB,GAAA,GAAMvC,OAAA,CAAQuC,GAAA,EAAK,IAAI;EACzB;EACA,OAAO;AACT;AAEA,SAASuB,UAAA,EAAY;EACnB,MAAMF,QAAA,GAAWJ,WAAA,CAAY;EAC7B,IAAI,CAACI,QAAA,EAAU;EACfL,iBAAA,GAAoBvD,OAAA,CAAQ4D,QAAA,EAAU,qBAAqB;EAC3D,IAAI;IACFN,aAAA,GAAgBS,IAAA,CAAKC,KAAA,CAAMrE,YAAA,CAAa4D,iBAAA,EAAmB,OAAO,CAAC;EACrE,QAAQ;IACND,aAAA,GAAgB,CAAC;EACnB;AACF;AAEA,SAASW,UAAA,EAAY;EACnB,IAAIV,iBAAA,EAAmB;IACrB1D,aAAA,CAAc0D,iBAAA,EAAmBQ,IAAA,CAAKG,SAAA,CAAUZ,aAAa,IAAI,MAAM,OAAO;EAChF;AACF;AAEA,SAASa,mBAAmBC,QAAA,EAAkBC,OAAA,EAA0B;EACtE,MAAMC,WAAA,GAAc9C,IAAA,CAAK6C,OAAO;EAOhC,IAAIE,MAAA,GAAwB;EAC5B,IAAI;IACFA,MAAA,GAAS5E,YAAA,CAAayE,QAAA,EAAU,OAAO;EACzC,QAAQ,CAAC;EAET,IAAIG,MAAA,KAAW,QAAQ/C,IAAA,CAAK+C,MAAM,MAAMD,WAAA,EAAa;IACnDhB,aAAA,CAAcc,QAAQ,IAAIE,WAAA;IAC1B,OAAO;EACT;EAEAzE,aAAA,CAAcuE,QAAA,EAAUC,OAAA,EAAS,OAAO;EACxCf,aAAA,CAAcc,QAAQ,IAAIE,WAAA;EAC1B,OAAO;AACT;AAKA,SAASE,mBAAmBC,OAAA,EAAkB;EAC5C,OAAO;IACLA,OAAA;IACA,MAAMC,YAAYC,IAAA,EAAyC;MACzD,IAAI;QACF,OAAQ,OAAMF,OAAA,CAAQG,OAAA,CAAQC,mBAAA,CAAoBF,IAAI,MAAM;MAC9D,QAAQ;QACN,OAAO;MACT;IACF;IACA,MAAMG,cAAcC,IAAA,EAA6B;MAC/C,OAAOC,eAAA,CAAgBP,OAAA,EAASM,IAAI;IACtC;EACF;AACF;AAGA,eAAeE,iBACbC,QAAA,EACAC,UAAA,EACAC,UAAA,EACAC,UAAA,EACsB;EACtB,IAAIC,QAAA,GAA+B;EAEnCH,UAAA,CAAWI,YAAA,CAAcZ,IAAA,IAAS;IAChC,IAAIW,QAAA,EAAU;IACd,IAAI,CAACrF,EAAA,CAAGuF,mBAAA,CAAoBb,IAAI,GAAG;IACnC,IAAI,CAACA,IAAA,CAAKc,SAAA,EAAWC,IAAA,CAAMC,CAAA,IAAMA,CAAA,CAAEC,IAAA,KAAS3F,EAAA,CAAG4F,UAAA,CAAWC,aAAa,GAAG;IAE1E,MAAMC,IAAA,GAAOpB,IAAA,CAAKqB,eAAA,CAAgBC,YAAA,CAAa,CAAC;IAChD,IAAI,CAACF,IAAA,IAAQ,CAAC9F,EAAA,CAAGiG,qBAAA,CAAsBH,IAAI,GAAG;IAC9C,IAAIA,IAAA,CAAKjE,IAAA,CAAKqE,OAAA,CAAQhB,UAAU,MAAMC,UAAA,EAAY;IAElD,IAAIW,IAAA,CAAKK,WAAA,IAAenG,EAAA,CAAGoG,eAAA,CAAgBN,IAAA,CAAKK,WAAW,GAAG;MAC5D,MAAME,KAAA,GAAQP,IAAA,CAAKK,WAAA,CAAYG,UAAA,CAAWlB,UAAU;MACpD,IAAIiB,KAAA,EAAOvB,IAAA,EAAM;QACfO,QAAA,GAAWgB,KAAA,CAAMvB,IAAA;MACnB;IACF;EACF,CAAC;EAED,OAAOO,QAAA,GAAWJ,QAAA,CAASR,WAAA,CAAYY,QAAQ,IAAI;AACrD;AASA,SAASkB,kBAAkBC,IAAA,EAIzB;EACA,MAAMC,IAAA,GAAOD,IAAA,CAAKE,SAAA;EAElB,IAAID,IAAA,CAAKE,MAAA,GAAS,GAAG;IACnB,MAAMC,IAAA,GAAOH,IAAA,CAAK,CAAC;IACnB,OAAO;MACLI,QAAA,EAAU;MACVC,IAAA,EAAM;MACNC,WAAA,EAAaH,IAAA,IAAQ5G,EAAA,CAAGgH,yBAAA,CAA0BJ,IAAI,IAAIA,IAAA,GAAO;IACnE;EACF;EAEA,MAAMK,QAAA,GAAWR,IAAA,CAAK,CAAC;EACvB,MAAMS,OAAA,GAAUT,IAAA,CAAK,CAAC;EAEtB,IAAIK,IAAA,GAAO;EACX,IAAII,OAAA,IAAWlH,EAAA,CAAGgH,yBAAA,CAA0BE,OAAO,GAAG;IACpD,WAAWC,IAAA,IAAQD,OAAA,CAAQE,UAAA,EAAY;MACrC,IAAI,CAACpH,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,GAAG;MACpC,IACE,EAAEnH,EAAA,CAAGsH,YAAA,CAAaH,IAAA,CAAKtF,IAAI,KAAK7B,EAAA,CAAGuH,eAAA,CAAgBJ,IAAA,CAAKtF,IAAI,MAC5DsF,IAAA,CAAKtF,IAAA,CAAK2F,IAAA,KAAS,QAEnB;MAGF,IAAIL,IAAA,CAAKhB,WAAA,CAAYR,IAAA,KAAS3F,EAAA,CAAG4F,UAAA,CAAW6B,YAAA,EAAcX,IAAA,GAAO;IACnE;EACF;EAEA,OAAO;IACLD,QAAA,EAAU;IACVC,IAAA;IACAC,WAAA,EAAaE,QAAA,IAAYjH,EAAA,CAAGgH,yBAAA,CAA0BC,QAAQ,IAAIA,QAAA,GAAW;EAC/E;AACF;AAIA,eAAeS,0BACbzC,QAAA,EACAC,UAAA,EAC4B;EAC5B,MAAMyC,KAAA,GAAQ,mBAAIC,GAAA,CAAyB;EAE3C1C,UAAA,CAAWI,YAAA,CAAcZ,IAAA,IAAS;IAChC,IAAI,CAAC1E,EAAA,CAAGuF,mBAAA,CAAoBb,IAAI,GAAG;IACnC,IAAI,CAACA,IAAA,CAAKc,SAAA,EAAWC,IAAA,CAAMC,CAAA,IAAMA,CAAA,CAAEC,IAAA,KAAS3F,EAAA,CAAG4F,UAAA,CAAWC,aAAa,GAAG;IAE1E,MAAMC,IAAA,GAAOpB,IAAA,CAAKqB,eAAA,CAAgBC,YAAA,CAAa,CAAC;IAChD,IAAI,CAACF,IAAA,IAAQ,CAAC9F,EAAA,CAAGiG,qBAAA,CAAsBH,IAAI,GAAG;IAC9C,IAAIA,IAAA,CAAKjE,IAAA,CAAKqE,OAAA,CAAQhB,UAAU,MAAM,UAAU;IAEhD,IAAI,CAACY,IAAA,CAAKK,WAAA,IAAe,CAACnG,EAAA,CAAG6H,gBAAA,CAAiB/B,IAAA,CAAKK,WAAW,GAAG;IAEjE,MAAM;MAAEY;IAAY,IAAIR,iBAAA,CAAkBT,IAAA,CAAKK,WAAW;IAC1D,IAAI,CAACY,WAAA,EAAa;IAElB,WAAWI,IAAA,IAAQJ,WAAA,CAAYK,UAAA,EAAY;MACzC,IAAI,CAACpH,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,KAAK,CAACnH,EAAA,CAAG8H,mBAAA,CAAoBX,IAAI,GAAG;MACrE,MAAMtF,IAAA,GAAOsF,IAAA,CAAKtF,IAAA,EAAMqE,OAAA,CAAQhB,UAAU;MAC1C,IAAI,CAACrD,IAAA,EAAM;MAEX,IAAIkG,MAAA,GAAuD;MAC3D,IAAI/H,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,GAAG;QACjC,MAAMa,IAAA,GAAOb,IAAA,CAAKhB,WAAA;QAClB,IAAInG,EAAA,CAAGoG,eAAA,CAAgB4B,IAAI,KAAKhI,EAAA,CAAGiI,oBAAA,CAAqBD,IAAI,GAAG;UAC7DD,MAAA,GAASC,IAAA,CAAK1B,UAAA;QAChB;MACF,WAAWtG,EAAA,CAAG8H,mBAAA,CAAoBX,IAAI,GAAG;QACvCY,MAAA,GAASZ,IAAA,CAAKb,UAAA;MAChB;MAEA,IAAI,CAACyB,MAAA,IAAUA,MAAA,CAAOpB,MAAA,GAAS,GAAG;MAClC,MAAMtB,QAAA,GAAW0C,MAAA,CAAO,CAAC,EAAGjD,IAAA;MAC5B,IAAI,CAACO,QAAA,EAAU;MAEfsC,KAAA,CAAMO,GAAA,CAAIrG,IAAA,EAAMwD,QAAQ;IAC1B;EACF,CAAC;EAED,MAAM8C,QAAA,GAAW,mBAAIP,GAAA,CAAkB;EACvC,WAAW,CAAC/F,IAAA,EAAM6C,IAAI,KAAKiD,KAAA,EAAO;IAChC,MAAMS,QAAA,GAAW,MAAMnD,QAAA,CAASR,WAAA,CAAYC,IAAI;IAChD,IAAI0D,QAAA,EAAUD,QAAA,CAASD,GAAA,CAAIrG,IAAA,EAAMuG,QAAQ;EAC3C;EACA,OAAOD,QAAA;AACT;AAEA,SAASE,0BACPnD,UAAA,EACAd,OAAA,EACAkE,QAAA,EACAC,MAAA,EACA1D,aAAA,EACA2D,eAAA,EACuB;EACvB,IAAIC,UAAA,GAAuC;EAG3CvD,UAAA,CAAWI,YAAA,CAAcZ,IAAA,IAAS;IAChC,IAAI,CAAC1E,EAAA,CAAGuF,mBAAA,CAAoBb,IAAI,GAAG;IACnC,IAAI,CAACA,IAAA,CAAKc,SAAA,EAAWC,IAAA,CAAMC,CAAA,IAAMA,CAAA,CAAEC,IAAA,KAAS3F,EAAA,CAAG4F,UAAA,CAAWC,aAAa,GAAG;IAC1E,MAAMC,IAAA,GAAOpB,IAAA,CAAKqB,eAAA,CAAgBC,YAAA,CAAa,CAAC;IAChD,IAAI,CAACF,IAAA,IAAQ,CAAC9F,EAAA,CAAGiG,qBAAA,CAAsBH,IAAI,GAAG;IAC9C,IAAIA,IAAA,CAAKjE,IAAA,CAAKqE,OAAA,CAAQhB,UAAU,MAAM,UAAU;IAChD,IAAIY,IAAA,CAAKK,WAAA,IAAenG,EAAA,CAAG6H,gBAAA,CAAiB/B,IAAA,CAAKK,WAAW,GAAG;MAC7DsC,UAAA,GAAa3C,IAAA,CAAKK,WAAA;IACpB;EACF,CAAC;EAED,IAAI,CAACsC,UAAA,EAAY;IACf,OAAO;MACLC,SAAA,EAAW7I,QAAA,CAASyI,QAAA,EAAU,KAAK;MACnCK,OAAA,EAAS;MACTC,OAAA,EAAS,CAAC;MACVC,WAAA,EAAa,EAAC;MACdC,MAAA,EAAQ;IACV;EACF;EAEA,MAAMtC,IAAA,GAAOiC,UAAA;EAIb,MAAM;IAAE5B,QAAA;IAAUC,IAAA;IAAMC;EAAY,IAAIR,iBAAA,CAAkBC,IAAI;EAC9D,MAAMmC,OAAA,GAAU9B,QAAA,IAAYC,IAAA;EAG5B,MAAM8B,OAAA,GAAwC,CAAC;EAC/C,MAAMC,WAAA,GAAwB,EAAC;EAE/B,IAAIF,OAAA,EAAS;IAEXI,oBAAA,CAAqB7D,UAAA,EAAY0D,OAAA,EAASC,WAAW;EACvD;EAGA,MAAMC,MAAA,GAA8B,EAAC;EAErC,IAAI/B,WAAA,EAAa;IACf,WAAWI,IAAA,IAAQJ,WAAA,CAAYK,UAAA,EAAY;MACzC,IAAI,CAACpH,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,KAAK,CAACnH,EAAA,CAAG8H,mBAAA,CAAoBX,IAAI,GAAG;MAErE,MAAMtF,IAAA,GAAOsF,IAAA,CAAKtF,IAAA,EAAMqE,OAAA,CAAQhB,UAAU;MAC1C,IAAI,CAACrD,IAAA,EAAM;MAGX,IAAIkG,MAAA,GAAuD;MAE3D,IAAI/H,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,GAAG;QACjC,MAAMa,IAAA,GAAOb,IAAA,CAAKhB,WAAA;QAClB,IAAInG,EAAA,CAAGoG,eAAA,CAAgB4B,IAAI,KAAKhI,EAAA,CAAGiI,oBAAA,CAAqBD,IAAI,GAAG;UAC7DD,MAAA,GAASC,IAAA,CAAK1B,UAAA;QAChB;MACF,WAAWtG,EAAA,CAAG8H,mBAAA,CAAoBX,IAAI,GAAG;QACvCY,MAAA,GAASZ,IAAA,CAAKb,UAAA;MAChB;MAEA,IAAI,CAACyB,MAAA,EAAQ;MAGb,IAAIA,MAAA,CAAOpB,MAAA,GAAS,GAAG;QACrBmC,MAAA,CAAO5F,IAAA,CAAK;UAAErB,IAAA;UAAMmH,SAAA,EAAW;UAAQC,WAAA,EAAa;QAAG,CAAC;QACxD;MACF;MAEA,MAAMC,WAAA,GAAcnB,MAAA,CAAO,CAAC;MAC5B,MAAMiB,SAAA,GAAYE,WAAA,CAAYpE,IAAA,EAAMoB,OAAA,CAAQhB,UAAU,KAAK;MAE3D,IAAI8D,SAAA,KAAc,WAAW;QAC3BF,MAAA,CAAO5F,IAAA,CAAK;UAAErB,IAAA;UAAMmH,SAAA,EAAW;UAAWC,WAAA,EAAa;QAAG,CAAC;QAC3D;MACF;MAEA,IAAIA,WAAA,GAAcpE,aAAA,CAAcmE,SAAS;MAGzC,IAAI,CAACC,WAAA,IAAeT,eAAA,EAAiB;QACnCS,WAAA,GAAcT,eAAA,CAAgBW,GAAA,CAAItH,IAAI,KAAK;MAC7C;MAEAiH,MAAA,CAAO5F,IAAA,CAAK;QACVrB,IAAA;QACAmH,SAAA;QACAC,WAAA,EAAaA,WAAA,IAAe;MAC9B,CAAC;IACH;EACF;EAEA,OAAO;IACLP,SAAA,EAAW;IACXC,OAAA;IACAC,OAAA;IACAC,WAAA;IACAC;EACF;AACF;AAEA,SAASC,qBACP7D,UAAA,EACA0D,OAAA,EACAC,WAAA,EACA;EAEA,SAASO,MAAM1E,IAAA,EAAe;IAC5B,IAAI1E,EAAA,CAAG6H,gBAAA,CAAiBnD,IAAI,GAAG;MAC7B,MAAM8C,IAAA,GAAO9C,IAAA,CAAK2E,UAAA,CAAWnD,OAAA,CAAQhB,UAAU;MAG/C,IAAIsC,IAAA,CAAK1F,QAAA,CAAS,aAAa,GAAG;QAChC,WAAWwH,GAAA,IAAO5E,IAAA,CAAKgC,SAAA,EAAW;UAChC,IAAI1G,EAAA,CAAGuH,eAAA,CAAgB+B,GAAG,GAAG;YAC3BT,WAAA,CAAY3F,IAAA,CAAKoG,GAAA,CAAI9B,IAAI;UAC3B;QACF;MACF;MAGA,IAAIA,IAAA,CAAK1F,QAAA,CAAS,UAAU,KAAK4C,IAAA,CAAKgC,SAAA,CAAUC,MAAA,KAAW,GAAG;QAC5D,MAAM4C,GAAA,GAAM7E,IAAA,CAAKgC,SAAA,CAAU,CAAC;QAC5B,IAAI1G,EAAA,CAAGgH,yBAAA,CAA0BuC,GAAG,GAAG;UACrC,WAAWpC,IAAA,IAAQoC,GAAA,CAAInC,UAAA,EAAY;YACjC,IAAI,CAACpH,EAAA,CAAGqH,oBAAA,CAAqBF,IAAI,GAAG;YACpC,MAAMqC,OAAA,GAAUrC,IAAA,CAAKtF,IAAA,EAAMqE,OAAA,CAAQhB,UAAU;YAC7C,IAAI,CAACsE,OAAA,EAAS;YAEd,MAAMC,QAAA,GAAWtC,IAAA,CAAKhB,WAAA,CAAYD,OAAA,CAAQhB,UAAU;YACpD,MAAMwE,OAAA,GAAU3I,eAAA,CAAgB0I,QAAQ;YACxCb,OAAA,CAAQY,OAAO,IAAIE,OAAA;UACrB;QACF;MACF;IACF;IACAhF,IAAA,CAAKY,YAAA,CAAa8D,KAAK;EACzB;EACAA,KAAA,CAAMlE,UAAU;AAClB;AAGA,eAAeH,gBACbP,OAAA,EACAM,IAAA,EACA3C,IAAA,GAAO,mBAAIC,GAAA,CAAY,GACN;EACjB,MAAMuC,OAAA,GAAUH,OAAA,CAAQG,OAAA;EAGxB,MAAMgF,KAAA,GAAQ7E,IAAA,CAAK6E,KAAA;EACnB,IAAIA,KAAA,IAASxJ,SAAA,CAAUyJ,MAAA,GAASzJ,SAAA,CAAU0J,YAAA,GAAe;IACvD,IAAI1H,IAAA,CAAKa,GAAA,CAAI8B,IAAA,CAAKgF,EAAE,GAAG,OAAO;IAC9B3H,IAAA,CAAKc,GAAA,CAAI6B,IAAA,CAAKgF,EAAE;EAClB;EAEA,MAAMC,OAAA,GAAWC,KAAA,IAAgBjF,eAAA,CAAgBP,OAAA,EAASwF,KAAA,EAAO7H,IAAI;EAGrE,IAAIwH,KAAA,GAAQxJ,SAAA,CAAU8J,MAAA,EAAQ,OAAO;EACrC,IAAIN,KAAA,GAAQxJ,SAAA,CAAU+J,MAAA,EAAQ,OAAO;EACrC,IAAIP,KAAA,GAAQxJ,SAAA,CAAUgK,OAAA,EAAS,OAAO;EACtC,IAAIR,KAAA,GAAQxJ,SAAA,CAAUiK,IAAA,IAAQT,KAAA,GAAQxJ,SAAA,CAAUkK,SAAA,EAAW,OAAO;EAClE,IAAIV,KAAA,GAAQxJ,SAAA,CAAUmK,IAAA,EAAM,OAAO;EACnC,IAAIX,KAAA,GAAQxJ,SAAA,CAAUoK,GAAA,IAAOZ,KAAA,GAAQxJ,SAAA,CAAUqK,OAAA,EAAS,OAAO;EAC/D,IAAIb,KAAA,GAAQxJ,SAAA,CAAUsK,KAAA,EAAO,OAAO;EACpC,IAAId,KAAA,GAAQxJ,SAAA,CAAUuK,eAAA,EAAiB,OAAO;EAC9C,IAAIf,KAAA,GAAQxJ,SAAA,CAAUyJ,MAAA,KAAW,MAAMjF,OAAA,CAAQgG,eAAA,CAAgB7F,IAAI,IAAI;IACrE,MAAM8F,QAAA,GAAW9F,IAAA,CAAK+F,eAAA,CAAgB,IAAI,MAAMlG,OAAA,CAAQmG,gBAAA,CAAiBhG,IAAI,IAAI,EAAC;IAClF,MAAMiG,SAAA,IAAa,MAAMpG,OAAA,CAAQqG,mBAAA,CAAoBlG,IAAI,GAAGmG,IAAA,CAAMC,IAAA,IAChEf,OAAA,CAAQe,IAAA,CAAKC,OAAA,CAAQxB,KAAA,GAAQxJ,SAAA,CAAU+J,MAAM,CAC/C;IACA,MAAMkB,WAAA,GAAcR,QAAA,CAASjE,MAAA,KAAW,IAAIiE,QAAA,CAAS,CAAC,IAAIG,SAAA,EAAWM,SAAA;IACrE,OAAO,WAAWD,WAAA,GAAc,MAAMrB,OAAA,CAAQqB,WAAW,IAAI,aAAa;EAC5E;EAGA,IAAItG,IAAA,CAAKwG,mBAAA,CAAoB,GAAG;IAC9B,OAAO,aAAaxH,IAAA,CAAKG,SAAA,CAAUa,IAAA,CAAKkF,KAAK,CAAC;EAChD;EACA,IAAIlF,IAAA,CAAKyG,mBAAA,CAAoB,GAAG;IAC9B,OAAO,aAAazG,IAAA,CAAKkF,KAAK;EAChC;EACA,IAAIlF,IAAA,CAAK0G,oBAAA,CAAqB,GAAG;IAC/B,OAAO,aAAa1G,IAAA,CAAKkF,KAAK;EAChC;EAGA,IAAIlF,IAAA,CAAK2G,WAAA,CAAY,GAAG;IACtB,MAAMC,OAAA,GAAU,MAAM5G,IAAA,CAAK6G,QAAA,CAAS;IACpC,MAAMC,OAAA,GAAUF,OAAA,CAAQjG,IAAA,CAAMoG,MAAA,IAAWA,MAAA,CAAOlC,KAAA,GAAQxJ,SAAA,CAAUmK,IAAI;IACtE,MAAMwB,YAAA,GAAeJ,OAAA,CAAQjG,IAAA,CAC1BoG,MAAA,IAAWA,MAAA,CAAOlC,KAAA,IAASxJ,SAAA,CAAUkK,SAAA,GAAYlK,SAAA,CAAUiK,IAAA,CAC9D;IACA,MAAM2B,IAAA,GAAOL,OAAA,CAAQM,MAAA,CAClBH,MAAA,IACC,EAAEA,MAAA,CAAOlC,KAAA,IAASxJ,SAAA,CAAUmK,IAAA,GAAOnK,SAAA,CAAUkK,SAAA,GAAYlK,SAAA,CAAUiK,IAAA,EACvE;IACA,IACE2B,IAAA,CAAKpF,MAAA,KAAW,KAChBoF,IAAA,CAAKE,KAAA,CAAOJ,MAAA,IAAWA,MAAA,CAAOlC,KAAA,GAAQxJ,SAAA,CAAU+L,cAAc,GAC9D;MACA,IAAIC,MAAA,GAAQ;MACZ,IAAIP,OAAA,EAASO,MAAA,GAAQ,cAAcC,MAAK;MACxC,IAAIN,YAAA,EAAcK,MAAA,GAAQ,cAAcC,MAAK;MAC7C,OAAOD,MAAA;IACT;IAEA,IAAIJ,IAAA,CAAKpF,MAAA,KAAW,GAAG,OAAO;IAE9B,IAAIwF,KAAA,GACFJ,IAAA,CAAKpF,MAAA,KAAW,IACZ,MAAMoD,OAAA,CAAQgC,IAAA,CAAK,CAAC,CAAE,IACtB,aAAa,MAAMM,OAAA,CAAQC,GAAA,CAAIP,IAAA,CAAKQ,GAAA,CAAIxC,OAAO,CAAC,GAAG3G,IAAA,CAAK,IAAI,CAAC;IAEnE,IAAIwI,OAAA,EAASO,KAAA,GAAQ,cAAcA,KAAK;IACxC,IAAIL,YAAA,EAAcK,KAAA,GAAQ,cAAcA,KAAK;IAC7C,OAAOA,KAAA;EACT;EAEA,MAAMK,iBAAA,GAAoB,MAAOC,QAAA,IAAqB;IACpD,MAAMC,UAAA,GAAa,MAAM/H,OAAA,CAAQgI,eAAA,CAAgBF,QAAQ;IACzD,IAAIC,UAAA,IAAc,CAACA,UAAA,CAAWE,WAAA,CAAY,GAAG,OAAOF,UAAA;IACpD,MAAMG,WAAA,GAAcJ,QAAA,CAASK,gBAAA,IAAoBL,QAAA,CAASzG,YAAA,CAAa,CAAC;IACxE,MAAMtB,IAAA,GAAOmI,WAAA,GAAc,MAAMA,WAAA,CAAY9M,OAAA,CAAQyE,OAAO,IAAI;IAChE,IAAIE,IAAA,EAAM,OAAOC,OAAA,CAAQoI,yBAAA,CAA0BN,QAAA,EAAU/H,IAAI;IACjE,OAAOC,OAAA,CAAQqI,uBAAA,CAAwBP,QAAQ;EACjD;EAEA,MAAMQ,eAAA,GAAkB,MAAOC,KAAA,IAA6B;IAC1D,IAAIA,KAAA,CAAMvG,MAAA,KAAW,GAAG,OAAO;IAC/B,MAAMpE,OAAA,GAAoB,EAAC;IAC3B,WAAW4E,IAAA,IAAQ+F,KAAA,EAAO;MACxB,MAAMrL,IAAA,GAAOsF,IAAA,CAAKtF,IAAA;MAClB,IAAIX,mBAAA,CAAoBW,IAAI,GAAG;MAC/B,MAAMsL,QAAA,GAAW,MAAMX,iBAAA,CAAkBrF,IAAI;MAC7C,MAAMiG,UAAA,GAAajD,OAAA,CAAQhD,IAAA,CAAKwC,KAAA,GAAQzJ,WAAA,CAAYmN,QAAQ;MAC5D,IAAIC,GAAA,GAAM,MAAMvD,OAAA,CAAQoD,QAAQ;MAChC,IAAIC,UAAA,IAAc,CAACE,GAAA,CAAIC,UAAA,CAAW,aAAa,GAAG;QAChDD,GAAA,GAAM,cAAcA,GAAG;MACzB;MACA/K,OAAA,CAAQW,IAAA,CAAK,GAAG7C,eAAA,CAAgBwB,IAAI,CAAC,KAAKyL,GAAG,EAAE;IACjD;IACA,IAAI/K,OAAA,CAAQoE,MAAA,KAAW,GAAG,OAAO;IACjC,OAAO;AAAA,MAAmBpE,OAAA,CAAQa,IAAA,CAAK,SAAS,CAAC;AAAA;EACnD;EAGA,IAAI0B,IAAA,CAAK0I,kBAAA,CAAmB,GAAG;IAC7B,OAAOP,eAAA,CAAgB,MAAMtI,OAAA,CAAQ8I,mBAAA,CAAoB3I,IAAI,CAAC;EAChE;EAEA,IAAIA,IAAA,CAAK4I,WAAA,CAAY,GAAG;IACtB,MAAM9C,QAAA,GAAW,MAAMjG,OAAA,CAAQmG,gBAAA,CAAiBhG,IAAI;IACpD,OAAO,aAAa,MAAMuH,OAAA,CAAQC,GAAA,CAAI1B,QAAA,CAAS2B,GAAA,CAAIxC,OAAO,CAAC,GAAG3G,IAAA,CAAK,IAAI,CAAC;EAC1E;EAEA,IAAI0B,IAAA,CAAK6I,YAAA,CAAa,GAAG;IACvB,IAAI7I,IAAA,CAAK8I,WAAA,GAAc3N,WAAA,CAAY4N,SAAA,IAAa/I,IAAA,CAAK+F,eAAA,CAAgB,GAAG;MACtE,MAAMiD,MAAA,GAAS,MAAMhJ,IAAA,CAAKiJ,SAAA,CAAU;MACpC,MAAMnD,QAAA,GAAW,MAAMjG,OAAA,CAAQmG,gBAAA,CAAiBhG,IAAI;MACpD,KACGgJ,MAAA,EAAQjM,IAAA,KAAS,WAAWiM,MAAA,EAAQjM,IAAA,KAAS,oBAC9C+I,QAAA,CAASjE,MAAA,KAAW,GACpB;QACA,OAAO,WAAW,MAAMoD,OAAA,CAAQa,QAAA,CAAS,CAAC,CAAE,CAAC;MAC/C;IACF;IACA,MAAMsC,KAAA,GAAQ,MAAMvI,OAAA,CAAQ8I,mBAAA,CAAoB3I,IAAI;IACpD,IAAIoI,KAAA,CAAMvG,MAAA,GAAS,GAAG,OAAOsG,eAAA,CAAgBC,KAAK;EACpD;EAGA,WAAWnC,SAAA,IAAa,MAAMpG,OAAA,CAAQqG,mBAAA,CAAoBlG,IAAI,GAAG;IAC/D,IAAIiG,SAAA,CAAUI,OAAA,CAAQxB,KAAA,GAAQxJ,SAAA,CAAU8J,MAAA,EAAQ;MAC9C,OAAO,wBAAwB,MAAMF,OAAA,CAAQgB,SAAA,CAAUM,SAAS,CAAC;IACnE;IACA,IAAIN,SAAA,CAAUI,OAAA,CAAQxB,KAAA,GAAQxJ,SAAA,CAAU+J,MAAA,EAAQ;MAC9C,OAAO,wBAAwB,MAAMH,OAAA,CAAQgB,SAAA,CAAUM,SAAS,CAAC;IACnE;EACF;EAEA,OAAO;AACT;AAkCA,SAAS2C,uBAAuBC,GAAA,EAA2B;EACzD,MAAMC,QAAA,GACJD,GAAA,CAAInJ,IAAA,KAAS,WACT,WACAmJ,GAAA,CAAInJ,IAAA,KAAS,WACX,WACAmJ,GAAA,CAAInJ,IAAA,KAAS,YACX,YACA;EACV,IAAIqJ,IAAA,GAAO,GAAGD,QAAQ;EACtB,IAAID,GAAA,CAAIG,UAAA,EAAY;IAClBD,IAAA,IAAQ,UAAUF,GAAA,CAAIG,UAAU;EAClC;EACA,IAAIH,GAAA,CAAII,QAAA,EAAU;IAChBF,IAAA,IAAQ;EACV;EACA,OAAOA,IAAA;AACT;AAQO,SAASG,0BAA0BC,MAAA,EAAmC;EAC3E,MAAMC,KAAA,GAAkB,CACtB,gEACA,sGACA,GACF;EAEA,MAAMC,UAAA,GAAa7E,MAAA,CAAO8E,IAAA,CAAKH,MAAA,CAAOI,MAAM,EAAElM,IAAA,CAAK;EAGnD,WAAWmM,SAAA,IAAaH,UAAA,EAAY;IAClC,MAAMI,CAAA,GAAIN,MAAA,CAAOI,MAAA,CAAOC,SAAS;IACjC,MAAME,UAAA,GAAalF,MAAA,CAAOrH,OAAA,CAAQsM,CAAA,CAAEjG,OAAO,EACxC2D,GAAA,CAAI,CAAC,CAAC/C,OAAA,EAASyE,GAAG,MAAM,OAAOzE,OAAO,KAAKwE,sBAAA,CAAuBC,GAAG,CAAC,GAAG,EACzE7K,IAAA,CAAK,IAAI;IACZ,MAAM2L,MAAA,GAASF,CAAA,CAAEG,UAAA,CAAWzC,GAAA,CAAK0C,CAAA,IAAM,IAAIA,CAAC,GAAG,EAAE7L,IAAA,CAAK,IAAI;IAE1D,MAAM8L,WAAA,GAAcL,CAAA,CAAET,UAAA,GAClB,SAAStK,IAAA,CAAKG,SAAA,CAAU4K,CAAA,CAAEhN,IAAI,CAAC,UAAUiC,IAAA,CAAKG,SAAA,CAAU4K,CAAA,CAAET,UAAU,CAAC,MACrE,SAAStK,IAAA,CAAKG,SAAA,CAAU4K,CAAA,CAAEhN,IAAI,CAAC;IACnC2M,KAAA,CAAMtL,IAAA,CAAK,SAAS0L,SAAS,WAAWM,WAAW,EAAE;IACrDV,KAAA,CAAMtL,IAAA,CAAK,cAAc;IACzBsL,KAAA,CAAMtL,IAAA,CAAK4L,UAAU;IACrBN,KAAA,CAAMtL,IAAA,CAAK,MAAM;IACjBsL,KAAA,CAAMtL,IAAA,CAAK,iBAAiB6L,MAAM,GAAG;IACrCP,KAAA,CAAMtL,IAAA,CAAK,EAAE;EACf;EAGA,MAAMiM,aAAA,GAAgBvF,MAAA,CAAO8E,IAAA,CAAKH,MAAA,CAAOa,aAAa,EAAE3M,IAAA,CAAK;EAC7D,WAAWmM,SAAA,IAAaO,aAAA,EAAe;IACrC,MAAME,IAAA,GAAOd,MAAA,CAAOa,aAAA,CAAcR,SAAS;IAC3C,MAAMU,UAAA,GAAa1F,MAAA,CAAOrH,OAAA,CAAQ8M,IAAI;IACtC,IAAIC,UAAA,CAAW3I,MAAA,KAAW,GAAG;IAE7B,MAAM4I,OAAA,GAAUD,UAAA,CACb/C,GAAA,CAAI,CAAC,CAACiD,OAAA,EAASC,IAAI,MAAM;MAExB,IAAIA,IAAA,CAAK9I,MAAA,KAAW,GAAG;QACrB,MAAM+I,GAAA,GAAMD,IAAA,CAAK,CAAC;QAClB,MAAME,GAAA,GAAKD,GAAA,CAAIE,WAAA,KAAgB,QAAQ,QAAQ;QAC/C,MAAMC,EAAA,GAAKH,GAAA,CAAII,WAAA,CAAYvD,GAAA,CAAKwD,CAAA,IAAM,IAAIA,CAAC,GAAG,EAAE3M,IAAA,CAAK,IAAI;QACzD,MAAM4M,EAAA,GAAKN,GAAA,CAAIO,SAAA,CAAU1D,GAAA,CAAKwD,CAAA,IAAM,IAAIA,CAAC,GAAG,EAAE3M,IAAA,CAAK,IAAI;QACvD,OAAO,OAAOoM,OAAO,KAAKG,GAAE;AAAA,sBAA2BE,EAAE;AAAA,oBAAyBH,GAAA,CAAIQ,UAAU;AAAA,oBAA6BF,EAAE;AAAA;MACjI;MAEA,IAAIP,IAAA,CAAK9I,MAAA,KAAW,GAAG;QACrB,MAAM,IAAIwJ,KAAA,CACR,gBAAgBvB,SAAS,IAAIY,OAAO,4BACtC;MACF;MACA,MAAMI,WAAA,GAAcH,IAAA,CAAK,CAAC,EAAGG,WAAA;MAC7B,IAAIH,IAAA,CAAKhK,IAAA,CAAMiK,GAAA,IAAQA,GAAA,CAAIE,WAAA,KAAgBA,WAAW,GAAG;QACvD,MAAM,IAAIO,KAAA,CAAM,gBAAgBvB,SAAS,IAAIY,OAAO,2BAA2B;MACjF;MACA,MAAMY,EAAA,GAAKR,WAAA,KAAgB,QAAQ,QAAQ;MAC3C,MAAMS,OAAA,GAAUZ,IAAA,CACblD,GAAA,CAAKmD,GAAA,IAAQ;QACZ,MAAMG,EAAA,GAAKH,GAAA,CAAII,WAAA,CAAYvD,GAAA,CAAKwD,CAAA,IAAM,IAAIA,CAAC,GAAG,EAAE3M,IAAA,CAAK,IAAI;QACzD,MAAM4M,EAAA,GAAKN,GAAA,CAAIO,SAAA,CAAU1D,GAAA,CAAKwD,CAAA,IAAM,IAAIA,CAAC,GAAG,EAAE3M,IAAA,CAAK,IAAI;QACvD,OAAO,mBAAmByM,EAAE,kBAAkBH,GAAA,CAAIQ,UAAU,sBAAsBF,EAAE;MACtF,CAAC,EACA5M,IAAA,CAAK,IAAI;MACZ,OAAO,OAAOoM,OAAO,KAAKY,EAAE,IAAIC,OAAO;IACzC,CAAC,EACAjN,IAAA,CAAK,KAAK;IAEboL,KAAA,CAAMtL,IAAA,CACJ,SAAS0L,SAAS,iCAAiCA,SAAS,8BAC9D;IACAJ,KAAA,CAAMtL,IAAA,CAAKqM,OAAO;IAClBf,KAAA,CAAMtL,IAAA,CAAK,KAAK;IAChBsL,KAAA,CAAMtL,IAAA,CAAK,EAAE;EACf;EAGA,MAAMoN,SAAA,GAAY7B,UAAA,CAAWlC,GAAA,CAAKgE,CAAA,IAAM,KAAKA,CAAC,QAAQ,EAAEnN,IAAA,CAAK,IAAI;EACjE,MAAMoN,OAAA,GAAUrB,aAAA,CACbnD,MAAA,CAAQuE,CAAA,IAAM3G,MAAA,CAAO8E,IAAA,CAAKH,MAAA,CAAOa,aAAA,CAAcmB,CAAC,CAAE,EAAE5J,MAAA,GAAS,CAAC,EAC9D4F,GAAA,CAAKgE,CAAA,IAAM,KAAKA,CAAC,gBAAgB,EACjCnN,IAAA,CAAK,IAAI;EAEZoL,KAAA,CAAMtL,IAAA,CAAK,sCAAsC;EACjDsL,KAAA,CAAMtL,IAAA,CAAK,aAAa;EACxBsL,KAAA,CAAMtL,IAAA,CAAKoN,SAAS;EACpB9B,KAAA,CAAMtL,IAAA,CAAK,MAAM;EACjBsL,KAAA,CAAMtL,IAAA,CAAK,oBAAoB;EAC/BsL,KAAA,CAAMtL,IAAA,CAAKsN,OAAO;EAClBhC,KAAA,CAAMtL,IAAA,CAAK,MAAM;EACjBsL,KAAA,CAAMtL,IAAA,CAAK,IAAI;EACfsL,KAAA,CAAMtL,IAAA,CAAK,EAAE;EAEb,OAAOsL,KAAA,CAAMpL,IAAA,CAAK,IAAI;AACxB;AAyCA,SAASqN,yBAAyBC,MAAA,EAAoC;EACpE,OAAO;IACLC,SAAA,EAAW/G,MAAA,CAAOgH,WAAA,CAChBF,MAAA,CAAOC,SAAA,CAAUpE,GAAA,CAAKsE,QAAA,IAAa,CACjCA,QAAA,CAAShP,IAAA,EACT;MACE8M,MAAA,EAAQ,CAAC,GAAGkC,QAAA,CAASlC,MAAM;MAC3BmC,UAAA,EAAY,CAAC,GAAGD,QAAA,CAASC,UAAU;MACnCC,aAAA,EAAe,CAAC,GAAGF,QAAA,CAASE,aAAa;MACzCC,KAAA,EAAOH,QAAA,CAASG;IAClB,EACD,CACH;IACAC,SAAA,EAAW,CACT,GAAG,IAAI7O,GAAA,CACLsO,MAAA,CAAOC,SAAA,CAAUO,OAAA,CAASL,QAAA,IAAa,CACrC,GAAGA,QAAA,CAASC,UAAA,EACZ,GAAGD,QAAA,CAASE,aAAA,CACb,CACH,EACF,CAAEtO,IAAA,CAAK;EACT;AACF;AAEA,eAAe0O,qBAAqBC,OAAA,EAAmD;EACrF,MAAMC,WAAA,GAAchQ,4BAAA,CAA6B,CAC/C+P,OAAA,EACArR,OAAA,CAAQD,OAAA,CAAQsR,OAAO,GAAG,UAAU,EACrC;EACD,OAAO9P,6BAAA,CAA8B8P,OAAA,EAASC,WAAW;AAC3D;AAEA,eAAsBC,qBAAqBpK,OAAA,EAGf;EAC1B,MAAMkK,OAAA,GAAUrR,OAAA,CAAQmH,OAAA,CAAQ5E,GAAG;EACnC,MAAMkC,OAAA,GAAU,MAAM2M,oBAAA,CAAqBC,OAAO;EAClD,IAAI;IACF,MAAMV,MAAA,GAASvP,kBAAA,CACbqD,OAAA,EACA4M,OAAA,EACAlK,OAAA,CAAQqK,MAAA,GAASxR,OAAA,CAAQmH,OAAA,CAAQqK,MAAM,IAAI,MAC7C;IACA,OAAOd,wBAAA,CAAyBC,MAAM;EACxC,UAAE;IACA,MAAMlM,OAAA,CAAQgN,KAAA,CAAM;EACtB;AACF;AAEA,eAAsBC,+BAA+BvK,OAAA,EAIjC;EAClB,MAAMkK,OAAA,GAAUrR,OAAA,CAAQmH,OAAA,CAAQ5E,GAAG;EACnC,MAAMkC,OAAA,GAAU,MAAM2M,oBAAA,CAAqBC,OAAO;EAClD,IAAI;IACF,OAAOM,yCAAA,CAA0CxK,OAAA,EAAS1C,OAAO;EACnE,UAAE;IACA,MAAMA,OAAA,CAAQgN,KAAA,CAAM;EACtB;AACF;AAEA,eAAeE,0CACbxK,OAAA,EACA1C,OAAA,EACiB;EACjB,MAAM4M,OAAA,GAAUrR,OAAA,CAAQmH,OAAA,CAAQ5E,GAAG;EACnC,MAAMoO,MAAA,GAASvP,kBAAA,CACbqD,OAAA,EACA4M,OAAA,EACAlK,OAAA,CAAQqK,MAAA,GAASxR,OAAA,CAAQmH,OAAA,CAAQqK,MAAM,IAAI,MAC7C;EACA,MAAM9C,UAAA,GAAagC,wBAAA,CAAyBC,MAAM,EAAEO,SAAA;EACpD,MAAMU,aAAA,GACJjB,MAAA,CAAOkB,aAAA,CAAc3G,IAAA,CAClB4G,IAAA,IACChS,QAAA,CAASgS,IAAI,MAAM,kBACnB/R,OAAA,CAAQ+R,IAAI,MAAM9R,OAAA,CAAQD,OAAA,CAAQsR,OAAO,GAAG,UAAU,CAC1D,KAAKV,MAAA,CAAOkB,aAAA,CAAc3G,IAAA,CAAM4G,IAAA,IAAShS,QAAA,CAASgS,IAAI,MAAM,cAAc;EAC5E,MAAMC,eAAA,GAA4B,EAAC;EAEnC,IAAIH,aAAA,EAAe;IACjB,MAAMI,MAAA,GAASvN,OAAA,CAAQU,UAAA,CAAWyM,aAAa;IAC/C,MAAMK,QAAA,GAAW,IAAI5P,GAAA,CAAIqM,UAAU;IACnC,MAAMrF,KAAA,GAAS1E,IAAA,IAAkB;MAC/B,IACE,CAAC1E,EAAA,CAAG6H,gBAAA,CAAiBnD,IAAI,KACzBA,IAAA,CAAK2E,UAAA,CAAWnD,OAAA,CAAQ6L,MAAM,MAAM,mBACpC;QACArN,IAAA,CAAKY,YAAA,CAAa8D,KAAK;QACvB;MACF;MACA,MAAM6I,OAAA,GAAUvN,IAAA,CAAKgC,SAAA,CAAU,CAAC;MAChC,IACE,CAACuL,OAAA,IACA,CAACjS,EAAA,CAAGoG,eAAA,CAAgB6L,OAAO,KAAK,CAACjS,EAAA,CAAGiI,oBAAA,CAAqBgK,OAAO,GACjE;QACA;MACF;MACA,MAAMC,IAAA,GAAOlS,EAAA,CAAGmS,yBAAA,CAA0BF,OAAA,CAAQC,IAAI,IAClDD,OAAA,CAAQC,IAAA,CAAK7I,UAAA,GACb4I,OAAA,CAAQC,IAAA;MACZ,IAAI,CAAClS,EAAA,CAAGgH,yBAAA,CAA0BkL,IAAI,GAAG;MAEzC,WAAWE,aAAA,IAAiBF,IAAA,CAAK9K,UAAA,EAAY;QAC3C,IACE,CAACpH,EAAA,CAAGqH,oBAAA,CAAqB+K,aAAa,KACtC,CAACpS,EAAA,CAAGgH,yBAAA,CAA0BoL,aAAA,CAAcjM,WAAW,GACvD;UACA;QACF;QACA,MAAMkM,KAAA,GAAQD,aAAA,CAAcvQ,IAAA,CAAKqE,OAAA,CAAQ6L,MAAM,EAAEO,OAAA,CAAQ,gBAAgB,EAAE;QAC3E,IAAI,CAACN,QAAA,CAAShP,GAAA,CAAIqP,KAAK,GAAG;QAC1B,MAAME,SAAA,GAAsB,EAAC;QAC7B,WAAWC,gBAAA,IAAoBJ,aAAA,CAAcjM,WAAA,CAAYiB,UAAA,EAAY;UACnE,IACE,CAACpH,EAAA,CAAGqH,oBAAA,CAAqBmL,gBAAgB,KACzC,CAACxS,EAAA,CAAG6H,gBAAA,CAAiB2K,gBAAA,CAAiBrM,WAAW,KACjD,CAACnG,EAAA,CAAGyS,0BAAA,CAA2BD,gBAAA,CAAiBrM,WAAA,CAAYkD,UAAU,GACtE;YACA;UACF;UACA,MAAMqJ,MAAA,GAASF,gBAAA,CAAiBrM,WAAA,CAAYkD,UAAA,CAAWxH,IAAA,CAAK2F,IAAA;UAC5D,IAAIwK,QAAA,CAAShP,GAAA,CAAI0P,MAAM,GAAGH,SAAA,CAAUrP,IAAA,CAAKsP,gBAAA,CAAiBtM,OAAA,CAAQ6L,MAAM,CAAC;QAC3E;QACAD,eAAA,CAAgB5O,IAAA,CACd,KAAKkP,aAAA,CAAcvQ,IAAA,CAAKqE,OAAA,CAAQ6L,MAAM,CAAC,MAAMQ,SAAA,CAAU5L,MAAA,GAAS;AAAA,EAAK4L,SAAA,CAAUhG,GAAA,CAAKoG,QAAA,IAAa,OAAOA,QAAQ,GAAG,EAAEvP,IAAA,CAAK,IAAI,CAAC;AAAA,MAAS,EAAE,IAC5I;MACF;IACF;IACAgG,KAAA,CAAM2I,MAAM;EACd;EAEA,MAAMa,gBAAA,GAAmB9O,IAAA,CAAKG,SAAA,CAAUiD,OAAA,CAAQ0L,gBAAgB;EAChE,OAAO,CACL,kDACA,iDACA,2BAA2BA,gBAAgB,IAC3C,IACA,YAAYnE,UAAA,CAAWrL,IAAA,CAAK,IAAI,CAAC,WAAWwP,gBAAgB,IAC5D,8DACA,GAAGd,eAAA,EACH,OACA,GACF,CAAE1O,IAAA,CAAK,IAAI;AACb;AAEA,eAAsByP,SAAS3L,OAAA,EAAmD;EAChF,MAAM1C,OAAA,GAAU,MAAM2M,oBAAA,CAAqBpR,OAAA,CAAQmH,OAAA,CAAQ5E,GAAG,CAAC;EAC/D,IAAI;IACF,OAAO,MAAMwQ,mBAAA,CAAoB5L,OAAA,EAAS1C,OAAO;EACnD,UAAE;IACA,MAAMA,OAAA,CAAQgN,KAAA,CAAM;EACtB;AACF;AAEA,eAAesB,oBACb5L,OAAA,EACA1C,OAAA,EACyB;EACzB,MAAM;IAAElC,GAAA;IAAKyQ,KAAA;IAAOxK,MAAA;IAAQyK,KAAA;IAAOzB;EAAO,IAAIrK,OAAA;EAC9C,MAAMkK,OAAA,GAAUrR,OAAA,CAAQuC,GAAG;EAC3B,MAAML,YAAA,GAAelC,OAAA,CAAQqR,OAAA,EAAS,WAAW;EAEjD,IAAI,CAAC5R,UAAA,CAAWyC,YAAY,GAAG;IAC7BxC,SAAA,CAAUwC,YAAA,EAAc;MAAE2B,SAAA,EAAW;IAAK,CAAC;EAC7C;EAEAC,SAAA,CAAU;EAIV,MAAM6M,MAAA,GAASvP,kBAAA,CACbqD,OAAA,EACA4M,OAAA,EACAG,MAAA,GAASxR,OAAA,CAAQwR,MAAM,IAAI,MAC7B;EACA,MAAM0B,YAAA,GAAe1R,IAAA,CACnBmP,MAAA,CAAOkB,aAAA,CACJrF,GAAA,CAAKsF,IAAA,IAAS,GAAGA,IAAI,KAAKnS,YAAA,CAAamS,IAAA,EAAM,MAAM,CAAC,EAAE,EACtDzO,IAAA,CAAK,IAAI,CACd;EAOA,MAAM8P,kBAAA,GAAqBnT,OAAA,CAAQD,OAAA,CAAQsR,OAAO,GAAG,oBAAoB;EACzE,MAAM+B,kBAAA,GAAqB3T,UAAA,CAAW0T,kBAAkB;EACxD,MAAME,sBAAA,GAAyBrT,OAAA,CAC7BD,OAAA,CAAQoT,kBAAkB,GAC1B,wBACF;EACA,MAAMG,kBAAA,GAAqB7T,UAAA,CAAW4T,sBAAsB,IACxD1T,YAAA,CAAa0T,sBAAA,EAAwB,MAAM,IAC3C;EACJ,MAAME,qBAAA,GAAwBH,kBAAA,IAAsBE,kBAAA,KAAuB;EAC3E,MAAME,SAAA,GAAYhS,IAAA,CAChB,GAAGQ,aAAA,CAAc2O,MAAA,CAAO1O,WAAA,EAAaC,YAAY,CAAC,KAAKgR,YAAY,KAAKI,kBAAkB,EAC5F;EACA,IACE,CAACL,KAAA,IACD3P,aAAA,CAAcmQ,kBAAA,KAAuB7R,uBAAA,IACrC0B,aAAA,CAAcoQ,WAAA,KAAgBF,SAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAsB9B3J,MAAA,CAAOrH,OAAA,CAAQc,aAAa,EAAE4I,KAAA,CAAM,CAAC,CAACyH,UAAA,EAAYC,UAAU,MAAM;IAChE,IAAI,CAACD,UAAA,CAAWnG,UAAA,CAAWtL,YAAY,GAAG,OAAO;IACjD,IAAI;MACF,OAAOV,IAAA,CAAK7B,YAAA,CAAagU,UAAA,EAAY,OAAO,CAAC,MAAMC,UAAA;IACrD,QAAQ;MACN,OAAO;IACT;EACF,CAAC,KACDnU,UAAA,CAAWO,OAAA,CAAQkC,YAAA,EAAc,WAAW,CAAC,MAC5C,CAACkR,kBAAA,IAAsB3T,UAAA,CAAWO,OAAA,CAAQkC,YAAA,EAAc,kBAAkB,CAAC,OAC3E,CAACqR,qBAAA,IAAyB9T,UAAA,CAAWO,OAAA,CAAQkC,YAAA,EAAc,WAAW,CAAC,IACxE;IACA,IAAI2R,MAAA,GAAkC,CAAC;IACvC,IAAI;MACFA,MAAA,GAAS9P,IAAA,CAAKC,KAAA,CAAMV,aAAA,CAAcwQ,QAAA,IAAY,IAAI;IACpD,QAAQ,CAAC;IACT,OAAO;MACLC,YAAA,EAAc;MACdC,UAAA,EAAYH,MAAA,CAAOG,UAAA,IAAc;MACjCC,WAAA,EAAaJ,MAAA,CAAOI,WAAA,IAAe;MACnCC,UAAA,EAAYL,MAAA,CAAOK,UAAA,IAAc;MACjCC,aAAA,EAAeN,MAAA,CAAOM,aAAA,IAAiB;IACzC;EACF;EAEA,MAAMC,eAAA,GAAkBzD,MAAA,CAAO0D,UAAA,CAAWpI,MAAA,CACvCqI,SAAA,IACCA,SAAA,CAAUC,SAAA,KAAc,IAC5B;EACA,MAAMC,eAAA,GAAkBJ,eAAA,CAAgBnI,MAAA,CAAQqI,SAAA,IAC9C3U,YAAA,CAAa2U,SAAA,CAAUC,SAAA,EAAW,OAAO,EAAEE,QAAA,CAAS,8BAA8B,CACpF;EACA,MAAMC,YAAA,GAAeN,eAAA,CAAgB5H,GAAA,CAAK8H,SAAA,KAAe;IACvDxS,IAAA,EAAMwS,SAAA,CAAUxS,IAAA;IAChB6S,UAAA,EAAYtT,mBAAA,CAAoBgQ,OAAA,EAASiD,SAAA,CAAUC,SAAS;EAC9D,EAAE;EACF,MAAMK,aAAA,GAAgBJ,eAAA,CAAgBhI,GAAA,CAAK8H,SAAA,KAAe;IACxDxS,IAAA,EAAMwS,SAAA,CAAUxS,IAAA;IAChB6S,UAAA,EAAYtT,mBAAA,CAAoBgQ,OAAA,EAASiD,SAAA,CAAUC,SAAS;EAC9D,EAAE;EACF,MAAMM,YAAA,GAAe,CACnB1Q,kBAAA,CACEnE,OAAA,CAAQkC,YAAA,EAAc,WAAW,GACjCxB,kBAAA,CAAmBgU,YAAY,CACjC;EAAA;EAAA;EAAA;EAIA,IAAIF,eAAA,CAAgB5N,MAAA,GAAS,IACzB,CACEzC,kBAAA,CACEnE,OAAA,CAAQkC,YAAA,EAAc,UAAU,GAChCnB,iBAAA,CAAkB6T,aAAA,CAAcpI,GAAA,CAAKsI,MAAA,IAAWA,MAAA,CAAOhT,IAAI,CAAC,CAC9D,GACAqC,kBAAA,CACEnE,OAAA,CAAQkC,YAAA,EAAc,WAAW,GACjCpB,kBAAA,CAAmB8T,aAAa,CAClC,EACF,GACA,EAAC,GACLzQ,kBAAA,CAAmBnE,OAAA,CAAQkC,YAAA,EAAc,WAAW,GAAGvB,kBAAA,CAAmB,CAAC,EAC7E;EAEA,IAAIoT,YAAA,GAAec,YAAA,CAAa5I,MAAA,CAAO7B,OAAO,EAAExD,MAAA;EAChD,IAAIwM,kBAAA,EAAoB;IACtB,MAAM2B,UAAA,GAAarE,wBAAA,CAAyBC,MAAM;IAClD,MAAMqE,aAAA,GAAgB,MAAMrD,yCAAA,CAC1B;MACEpP,GAAA,EAAK8O,OAAA;MACLwB,gBAAA,EAAkB;MAClBrB;IACF,GACA/M,OACF;IACA,IAAIN,kBAAA,CAAmBnE,OAAA,CAAQkC,YAAA,EAAc,kBAAkB,GAAG8S,aAAa,GAAG;MAChFjB,YAAA;IACF;IAEA,IAAIR,qBAAA,EAAuB;MACzB,MAAM0B,YAAA,GAAe/T,mCAAA,CAAoC;QACvDyT,UAAA,EAAY;QACZjG,UAAA,EAAYqG,UAAA,CAAW7D;MACzB,CAAC;MACD,IAAI/M,kBAAA,CAAmBnE,OAAA,CAAQkC,YAAA,EAAc,WAAW,GAAG+S,YAAY,GAAG;QACxElB,YAAA;MACF;IACF;EACF;EACA,IAAIG,UAAA,GAAa;EACjB,IAAIC,aAAA,GAAgB;EAKpB,MAAMrP,aAAA,GAAiBmE,SAAA,IAAqC;IAC1D,IAAI;MACF,OAAOhI,eAAA,CAAgBgI,SAAA,CAAUiM,IAAA,CAAK,CAAC;IACzC,QAAQ;MACN,OAAO;IACT;EACF;EAEA,MAAMC,UAAA,GAMD,EAAC;EAEN,WAAWb,SAAA,IAAa3D,MAAA,CAAO0D,UAAA,CAAWpI,MAAA,CACvCqI,UAAA,IACCc,UAAA,CAAUC,SAAA,KAAc,IAC5B,GAAG;IACD,MAAMjR,QAAA,GAAWkQ,SAAA,CAAUe,SAAA;IAE3B,IAAI;MACF,MAAMlQ,UAAA,GAAaV,OAAA,CAAQU,UAAA,CAAWf,QAAQ;MAC9C,MAAMkR,UAAA,GAID,EAAC;MAENnQ,UAAA,CAAWI,YAAA,CAAcZ,IAAA,IAAS;QAChC,IAAI1E,EAAA,CAAGuF,mBAAA,CAAoBb,IAAI,GAAG;UAChC,MAAM4Q,cAAA,GAAiB5Q,IAAA,CAAKc,SAAA,EAAWyF,IAAA,CACpCvF,CAAA,IAAMA,CAAA,CAAEC,IAAA,KAAS3F,EAAA,CAAG4F,UAAA,CAAWC,aAClC;UACA,IAAI,CAACyP,cAAA,EAAgB;UAErB,MAAMzI,WAAA,GAAcnI,IAAA,CAAKqB,eAAA,CAAgBC,YAAA,CAAa,CAAC;UACvD,IAAI,CAAC6G,WAAA,IAAe,CAAC7M,EAAA,CAAGiG,qBAAA,CAAsB4G,WAAW,GAAG;UAE5D,MAAMhL,IAAA,GAAOgL,WAAA,CAAYhL,IAAA,CAAKqE,OAAA,CAAQhB,UAAU;UAChD,IAAI,CAAC,UAAU,cAAc,UAAU,OAAO,EAAEsP,QAAA,CAAS3S,IAAI,GAAG;UAEhE,IAAIgL,WAAA,CAAY1G,WAAA,IAAenG,EAAA,CAAGoG,eAAA,CAAgByG,WAAA,CAAY1G,WAAW,GAAG;YAC1E,MAAM4B,MAAA,GAAS8E,WAAA,CAAY1G,WAAA,CAAYG,UAAA;YACvC,IAAI0C,SAAA,GAAY;YAEhB,IAAIjB,MAAA,CAAOpB,MAAA,GAAS,GAAG;cACrB,MAAMN,KAAA,GAAQ0B,MAAA,CAAO,CAAC;cACtBiB,SAAA,GAAY3C,KAAA,CAAMvB,IAAA,EAAMoB,OAAA,CAAQhB,UAAU,KAAK;YACjD;YACAmQ,UAAA,CAAWnS,IAAA,CAAK;cAAErB,IAAA;cAAMmH,SAAA;cAAW3D,QAAA,EAAU0C,MAAA,CAAO,CAAC,GAAGjD,IAAA,IAAQ;YAAK,CAAC;UACxE;QACF;MACF,CAAC;MAED,MAAMG,QAAA,GAAWV,kBAAA,CAAmBC,OAAA,CAAQ+Q,cAAA,CAAepR,QAAQ,CAAC;MACpE,WAAWqR,SAAA,IAAaH,UAAA,EAAY;QAClC,IAAIpM,WAAA,GAAcpE,aAAA,CAAc2Q,SAAA,CAAUxM,SAAS;QACnD,IAAI,CAACC,WAAA,IAAeuM,SAAA,CAAUnQ,QAAA,EAAU;UACtC,MAAMoQ,YAAA,GAAe,MAAMzQ,gBAAA,CACzBC,QAAA,EACAC,UAAA,EACAsQ,SAAA,CAAU3T,IAAA,EACV,CACF;UACA,IAAI4T,YAAA,EAAcxM,WAAA,GAAc,MAAMhE,QAAA,CAASJ,aAAA,CAAc4Q,YAAY;QAC3E;QACA,IAAIxM,WAAA,EAAa;UACfiM,UAAA,CAAWhS,IAAA,CAAK;YACdrB,IAAA,EAAM2T,SAAA,CAAU3T,IAAA;YAChBkG,MAAA,EAAQyN,SAAA,CAAUxM,SAAA;YAClBC,WAAA;YACA/D,UAAA,EAAYmP,SAAA,CAAUxS,IAAA;YACtB6S,UAAA,EAAYtT,mBAAA,CAAoBgQ,OAAA,EAASjN,QAAQ;UACnD,CAAC;QACH,WAAW,CAACoE,MAAA,IAAUiN,SAAA,CAAUxM,SAAA,KAAc,QAAQ;UACpD0M,OAAA,CAAQC,KAAA,CACN,UAAKH,SAAA,CAAU3T,IAAI,6BAA6B2T,SAAA,CAAUxM,SAAS,GACrE;QACF;MACF;IACF,SAAS4M,GAAA,EAAK;MACZ,IAAI,CAACrN,MAAA,EAAQmN,OAAA,CAAQC,KAAA,CAAM,oBAAoBxR,QAAQ,KAAKyR,GAAG;IACjE;EACF;EAEA3B,UAAA,GAAaiB,UAAA,CAAWvO,MAAA;EAExB,MAAMkP,cAAA,GAAiB3R,kBAAA,CACrBnE,OAAA,CAAQkC,YAAA,EAAc,mBAAmB,GACzC1B,0BAAA,CAA2B2U,UAAU,CACvC;EACA,MAAMY,aAAA,GAAgB5R,kBAAA,CACpBnE,OAAA,CAAQkC,YAAA,EAAc,kBAAkB,GACxCrB,yBAAA,CAA0BsU,UAAU,CACtC;EAEA,IAAIW,cAAA,EAAgB/B,YAAA;EACpB,IAAIgC,aAAA,EAAehC,YAAA;EAEnB,MAAMiC,gBAAA,GAAmB7R,kBAAA,CACvBnE,OAAA,CAAQkC,YAAA,EAAc,cAAc,GACpCzB,qBAAA,CACEkQ,MAAA,CAAOC,SAAA,CAAUpE,GAAA,CAAKsE,QAAA,KAAc;IAClChP,IAAA,EAAMgP,QAAA,CAAShP,IAAA;IACfmP,KAAA,EAAOH,QAAA,CAASG,KAAA;IAChBgF,UAAA,EAAYnF,QAAA,CAASuD,UAAA,CAClB7H,GAAA,CAAK8H,SAAA,IAAcA,SAAA,CAAUxS,IAAI,EACjCmK,MAAA,CAAQnK,IAAA,IAASqT,UAAA,CAAWzP,IAAA,CAAMwQ,KAAA,IAAUA,KAAA,CAAM/Q,UAAA,KAAerD,IAAI,CAAC;IACzEqU,UAAA,EAAYrF,QAAA,CAASuD,UAAA,CAClBpI,MAAA,CAAQqI,SAAA,IAAcA,SAAA,CAAUC,SAAS,EACzC/H,GAAA,CAAK8H,SAAA,IAAcA,SAAA,CAAUxS,IAAI;IACpC8M,MAAA,EAAQkC,QAAA,CAASlC,MAAA;IACjBmC,UAAA,EAAYD,QAAA,CAASC,UAAA;IACrBC,aAAA,EAAeF,QAAA,CAASE;EAC1B,EAAE,CACJ,CACF;EACA,IAAIgF,gBAAA,EAAkBjC,YAAA;EAEtB,MAAMqC,mBAAA,GAAsBzF,MAAA,CAAO0D,UAAA,CAAWpI,MAAA,CAC3CqI,SAAA,IACCA,SAAA,CAAU+B,aAAA,KAAkB,IAChC;EACA,IAAID,mBAAA,CAAoBxP,MAAA,GAAS,GAAG;IAClC,MAAM0P,iBAAA,GAAoBnS,kBAAA,CACxBnE,OAAA,CAAQkC,YAAA,EAAc,eAAe,GACrC3B,sBAAA,CACE6V,mBAAA,CAAoB5J,GAAA,CAAK8H,SAAA,KAAe;MACtCxS,IAAA,EAAMwS,SAAA,CAAUxS,IAAA;MAChB6S,UAAA,EAAYtT,mBAAA,CAAoBgQ,OAAA,EAASiD,SAAA,CAAU+B,aAAa;IAClE,EAAE,CACJ,CACF;IACA,IAAIC,iBAAA,EAAmBvC,YAAA;EACzB;EAGA,MAAMwC,iBAAA,GAAsC,EAAC;EAG7C,MAAMC,gBAAA,GAAkE,EAAC;EAEzE,WAAWlC,SAAA,IAAaF,eAAA,EAAiB;IACvC,MAAMhQ,QAAA,GAAWkQ,SAAA,CAAUC,SAAA;IAC3B,MAAMkC,YAAA,GAAenC,SAAA,CAAUxS,IAAA;IAE/B,IAAI;MACF,MAAMuC,OAAA,GAAU1E,YAAA,CAAayE,QAAA,EAAU,OAAO;MAE9C,MAAMe,UAAA,GAAaV,OAAA,CAAQU,UAAA,CAAWf,QAAQ;MAC9C,MAAMsS,MAAA,GAASpO,yBAAA,CACbnD,UAAA,EACAd,OAAA,EACAD,QAAA,EACA,CAAC,CAACoE,MAAA,EACF1D,aACF;MAEA,IAAI4R,MAAA,EAAQ;QACVA,MAAA,CAAO/N,SAAA,GAAY8N,YAAA;QACnBF,iBAAA,CAAkBpT,IAAA,CAAKuT,MAAM;QAG7B,MAAMC,aAAA,GAAgBD,MAAA,CAAO3N,MAAA,CAAOrD,IAAA,CACjCC,CAAA,IAAMA,CAAA,CAAEsD,SAAA,KAAc,UAAUtD,CAAA,CAAEsD,SAAA,KAAc,aAAa,CAACtD,CAAA,CAAEuD,WACnE;QACA,IAAIyN,aAAA,EAAe;UACjBH,gBAAA,CAAiBrT,IAAA,CAAK;YAAEyT,QAAA,EAAUH,YAAA;YAAcrS;UAAS,CAAC;QAC5D;MACF;IACF,SAASyR,GAAA,EAAK;MACZ,IAAI,CAACrN,MAAA,EAAQmN,OAAA,CAAQC,KAAA,CAAM,mCAAmCxR,QAAQ,KAAKyR,GAAG;IAChF;EACF;EAGA,IAAIW,gBAAA,CAAiB5P,MAAA,GAAS,GAAG;IAC/B,WAAW;MAAEgQ,QAAA;MAAUxS;IAAS,KAAKoS,gBAAA,EAAkB;MACrD,MAAMrR,UAAA,GAAaV,OAAA,CAAQU,UAAA,CAAWf,QAAQ;MAC9C,MAAMyS,aAAA,GAAgBrS,kBAAA,CAAmBC,OAAA,CAAQ+Q,cAAA,CAAepR,QAAQ,CAAC;MACzE,MAAM0S,aAAA,GAAgB,MAAMnP,yBAAA,CAA0BkP,aAAA,EAAe1R,UAAU;MAC/E,IAAI2R,aAAA,CAAcC,IAAA,KAAS,GAAG;MAC9B,MAAMtO,eAAA,GAAkB,mBAAIZ,GAAA,CAAoB;MAChD,WAAW,CAAC/F,IAAA,EAAMiD,IAAI,KAAK+R,aAAA,EAAe;QACxCrO,eAAA,CAAgBN,GAAA,CAAIrG,IAAA,EAAM,MAAM+U,aAAA,CAAc/R,aAAA,CAAcC,IAAI,CAAC;MACnE;MAGA,MAAMV,OAAA,GAAU1E,YAAA,CAAayE,QAAA,EAAU,OAAO;MAC9C,MAAMsS,MAAA,GAASpO,yBAAA,CACbnD,UAAA,EACAd,OAAA,EACAD,QAAA,EACA,CAAC,CAACoE,MAAA,EACF1D,aAAA,EACA2D,eACF;MAEA,IAAIiO,MAAA,EAAQ;QACVA,MAAA,CAAO/N,SAAA,GAAYiO,QAAA;QAEnB,MAAMI,GAAA,GAAMT,iBAAA,CAAkBU,SAAA,CAAWtR,CAAA,IAAMA,CAAA,CAAEgD,SAAA,KAAciO,QAAQ;QACvE,IAAII,GAAA,IAAO,GAAGT,iBAAA,CAAkBS,GAAG,IAAIN,MAAA;MACzC;IACF;EACF;EAGA,WAAWQ,KAAA,IAASX,iBAAA,EAAmB;IACrC,IAAIW,KAAA,CAAMtO,OAAA,EAASuL,aAAA,IAAiB9T,mBAAA,CAAoBuG,MAAA;IACxDuN,aAAA,IAAiB+C,KAAA,CAAMnO,MAAA,CAAOkD,MAAA,CAC3BtG,CAAA,IAAM,CAACuR,KAAA,CAAMtO,OAAA,IAAW,CAACvI,mBAAA,CAAoBqF,IAAA,CAAM5D,IAAA,IAASA,IAAA,KAAS6D,CAAA,CAAE7D,IAAI,CAC9E,EAAE8E,MAAA;EACJ;EAEA,IAAI2P,iBAAA,CAAkB3P,MAAA,GAAS,GAAG;IAChC,MAAMuQ,gBAAA,GAAmBhT,kBAAA,CACvBnE,OAAA,CAAQkC,YAAA,EAAc,oBAAoB,GAC1CtB,2BAAA,CAA4B2V,iBAAiB,CAC/C;IACA,IAAIY,gBAAA,EAAkBpD,YAAA;EACxB;EAEA,IAAIA,YAAA,GAAe,KAAK,CAACvL,MAAA,EAAQ;IAC/BmN,OAAA,CAAQxK,IAAA,CACN,UAAKiJ,eAAA,CAAgBxN,MAAM,YAAY4N,eAAA,CAAgB5N,MAAM,YAAYsN,UAAA,GAAa,KAAKA,UAAU,aAAa,EAAE,GAAGC,aAAA,GAAgB,KAAKA,aAAa,eAAe,EAAE,EAC5K;EACF;EAGA,IAAIJ,YAAA,GAAe,KAAKf,KAAA,EAAO;IAC7B,MAAM;MAAEoE;IAAS,IAAI,MAAM,OAAO,oBAAoB;IACtD,IAAI;MACFA,QAAA,CAASpE,KAAA,EAAO;QACdqE,KAAA,EAAO;QACPC,GAAA,EAAK;UAAE,GAAG7T,OAAA,CAAQ6T,GAAA;UAAKC,qBAAA,EAAuBrV;QAAa;MAC7D,CAAC;IACH,SAAS2T,GAAA,EAAK;MACZ,IAAI,CAACrN,MAAA,EAAQmN,OAAA,CAAQC,KAAA,CAAM,gCAAgCC,GAAG,EAAE;IAClE;EACF;EAGAvS,aAAA,CAAcmQ,kBAAA,GAAqB7R,uBAAA;EACnC0B,aAAA,CAAcoQ,WAAA,GAAcF,SAAA;EAC5BlQ,aAAA,CAAcwQ,QAAA,GAAW/P,IAAA,CAAKG,SAAA,CAAU;IACtC8P,UAAA,EAAYI,eAAA,CAAgBxN,MAAA;IAC5BqN,WAAA,EAAaO,eAAA,CAAgB5N,MAAA;IAC7BsN,UAAA;IACAC;EACF,CAAC;EACDlQ,SAAA,CAAU;EAEV,OAAO;IACL8P,YAAA;IACAC,UAAA,EAAYI,eAAA,CAAgBxN,MAAA;IAC5BqN,WAAA,EAAaO,eAAA,CAAgB5N,MAAA;IAC7BsN,UAAA;IACAC;EACF;AACF;AAEA,eAAsBqD,MAAMrQ,OAAA,EAAuB;EACjD,MAAM;IAAE5E,GAAA;IAAKkV,QAAA,GAAW;EAAK,IAAItQ,OAAA;EACjC,MAAMkK,OAAA,GAAUrR,OAAA,CAAQuC,GAAG;EAC3B,MAAML,YAAA,GAAelC,OAAA,CAAQqR,OAAA,EAAS,WAAW;EAGjD,MAAMyB,QAAA,CAAS;IAAE,GAAG3L,OAAA;IAASqB,MAAA,EAAQ;EAAK,CAAC;EAC3CmN,OAAA,CAAQxK,IAAA,CAAK,yBAAkB;EAE/B,MAAMuM,QAAA,GAAW,MAAM,OAAO,UAAU;EAExC,IAAIC,aAAA,GAAsD;EAE1D,MAAMC,mBAAA,GAAsBA,CAAC9F,IAAA,EAAc+F,KAAA,KAAkB;IAC3D,IAAIF,aAAA,EAAeG,YAAA,CAAaH,aAAa;IAC7ChC,OAAA,CAAQxK,IAAA,CAAK;AAAA,EAAK0M,KAAK,IAAI/F,IAAI,EAAE;IACjC6F,aAAA,GAAgBI,UAAA,CAAW,MAAM;MAC/BjF,QAAA,CAAS;QAAE,GAAG3L,OAAA;QAASqB,MAAA,EAAQ;MAAM,CAAC;IACxC,GAAGiP,QAAQ;EACb;EAEA,MAAMO,WAAA,GAAchY,OAAA,CAAQD,OAAA,CAAQsR,OAAO,GAAG,UAAU;EACxD,MAAM5M,OAAA,GAAU,MAAM2M,oBAAA,CAAqBC,OAAO;EAClD,IAAIV,MAAA;EACJ,IAAI;IACFA,MAAA,GAASvP,kBAAA,CACPqD,OAAA,EACA4M,OAAA,EACAlK,OAAA,CAAQqK,MAAA,GAASxR,OAAA,CAAQmH,OAAA,CAAQqK,MAAM,IAAI,MAC7C;EACF,UAAE;IACA,MAAM/M,OAAA,CAAQgN,KAAA,CAAM;EACtB;EACA,MAAMwG,OAAA,GAAUP,QAAA,CAASF,KAAA,CACvB,CACE,IAAG,mBAAInV,GAAA,CAAI,CACT,GAAGsO,MAAA,CAAO1O,WAAA,EACV,IAAIxC,UAAA,CAAWuY,WAAW,IAAI,CAACA,WAAW,IAAI,EAAC,EAChD,EACH,EACA;IACEE,UAAA,EAAY;IACZC,aAAA,EAAe;IACfC,OAAA,EAAS,CAAClW,YAAA,EAAc,cAAc;EACxC,CACF;EAEA+V,OAAA,CAAQI,EAAA,CAAG,UAAWvG,IAAA,IAAS8F,mBAAA,CAAoB9F,IAAA,EAAM,WAAI,CAAC;EAC9DmG,OAAA,CAAQI,EAAA,CAAG,OAAQvG,IAAA,IAAS8F,mBAAA,CAAoB9F,IAAA,EAAM,QAAG,CAAC;EAC1DmG,OAAA,CAAQI,EAAA,CAAG,UAAWvG,IAAA,IAAS8F,mBAAA,CAAoB9F,IAAA,EAAM,kBAAM,CAAC;EAEhE,OAAOmG,OAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","dirname","resolve","ts","ObjectFlags","SymbolFlags","TypeFlags","CRUD_MUTATION_NAMES","formatObjectKey","generateAggregatesFile","generateGroupedQueriesFile","generateInstancesFile","generateModelsFile","generateReadmeFile","generateSyncedMutationsFile","generateSyncedQueriesFile","generateTablesFile","generateTypesFile","parseColumnType","parseTypeString","renderDrizzleZeroSqliteSchemaModule","shouldSkipObjectKey","discoverDataLayout","namespaceImportPath","collectTypeScriptSourcePaths","createNativeTypeScriptProject","hash","s","update","digest","GENERATOR_CACHE_VERSION","isGeneratorSourceFile","name","endsWith","hashInputTree","sourceRoots","generatedDir","dependencyPaths","parts","seen","Set","walk","dir","entries","withFileTypes","sort","a","b","entry","full","isDirectory","isFile","has","add","push","root","path","startsWith","join","generateCache","generateCachePath","getCacheDir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","onDisk","createTypeResolver","project","resolveType","node","checker","getTypeFromTypeNode","typeToValibot","type","tsTypeToValibot","resolveParamType","resolver","sourceFile","exportName","paramIndex","typeNode","forEachChild","isVariableStatement","modifiers","some","m","kind","SyntaxKind","ExportKeyword","decl","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","param","parameters","readMutationsCall","call","args","arguments","length","only","hasTable","crud","handlersArg","isObjectLiteralExpression","handlers","options","prop","properties","isPropertyAssignment","isIdentifier","isStringLiteral","text","FalseKeyword","resolveMutationParamTypes","nodes","Map","isCallExpression","isMethodDeclaration","params","init","isFunctionExpression","set","resolved","expanded","extractMutationsFromModel","fileName","silent","resolvedValibot","mutateNode","modelName","hasCRUD","columns","primaryKeys","custom","extractSchemaColumns","paramType","valibotCode","secondParam","get","visit","expression","arg","obj","colName","initText","colType","flags","Object","Intersection","id","recurse","value","String","Number","Boolean","Void","Undefined","Null","Any","Unknown","Never","TemplateLiteral","isArrayLikeType","typeArgs","isTypeReference","getTypeArguments","indexInfo","getIndexInfosOfType","find","info","keyType","elementType","valueType","isStringLiteralType","isNumberLiteralType","isBooleanLiteralType","isUnionType","members","getTypes","hasNull","member","hasUndefined","rest","filter","every","BooleanLiteral","inner","inner2","Promise","all","map","resolveSymbolType","property","symbolType","getTypeOfSymbol","isErrorType","declaration","valueDeclaration","getTypeOfSymbolAtLocation","getDeclaredTypeOfSymbol","objectToValibot","props","propType","isOptional","Optional","val","isIntersectionType","getPropertiesOfType","isTupleType","isObjectType","objectFlags","Reference","symbol","getSymbol","serializeColumnBuilder","col","zeroType","expr","serverName","optional","generateDrizzleSchemaFile","schema","lines","tableNames","keys","tables","tableName","t","colEntries","pkArgs","primaryKey","k","tableSource","relTableNames","relationships","rels","relEntries","relBody","relName","hops","hop","fn2","cardinality","sf","sourceField","f","df","destField","destSchema","Error","fn","hopCode","tableList","n","relList","dataMembershipFromLayout","layout","instances","fromEntries","instance","syncTables","supportTables","scope","allTables","flatMap","loadGeneratorProject","baseDir","deferSources","tsconfig","sourcePaths","deriveDataMembership","config","close","generateDrizzleSchemaInputFile","generateDrizzleSchemaInputFileWithProject","relationsPath","metadataPaths","relationEntries","source","included","factory","body","isParenthesizedExpression","tableProperty","table","replace","relations","relationProperty","isPropertyAccessExpression","target","relation","schemaImportPath","generate","generateWithProject","after","force","configPath","cachedInputs","__configPath","__layoutInputs","Array","isArray","sourceFilePaths","hashInputs","metadataHash","externalZeroConfig","configurationKey","databaseSchemaPath","needsDrizzleSchema","externalZeroConfigPath","needsSqliteZeroSchema","cachedInputHash","__generatorVersion","__inputHash","cachedPath","cachedHash","counts","__counts","filesChanged","modelCount","schemaCount","queryCount","mutationCount","loadSources","inputHash","modelNamespaces","namespaces","namespace","modelPath","filesWithSchema","includes","modelModules","importPath","schemaModules","writeResults","module","membership","drizzleSchema","sqliteSchema","trim","allQueries","namespace2","queryPath","candidates","exportModifier","projectForFile","candidate","resolvedType","console","error","err","groupedChanged","syncedChanged","instancesChanged","queryNames","query","modelNames","aggregateNamespaces","aggregatePath","aggregatesChanged","allModelMutations","unresolvedModels","fileBaseName","result","hasUnresolved","baseName","modelResolver","resolvedTypes","size","idx","findIndex","model","mutationsChanged","execSync","stdio","env","ON_ZERO_GENERATED_DIR","outputHashes","assign","watch","debounce","chokidar","debounceTimer","debouncedRegenerate","event","clearTimeout","setTimeout","databaseDir","watcher","persistent","ignoreInitial","ignored","on"],"sources":["../../src/generate.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,17 +3,22 @@ import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from
3
3
  import { basename, dirname, resolve } from "path";
4
4
  import * as ts from "typescript/unstable/ast";
5
5
  import { ObjectFlags, SymbolFlags, TypeFlags } from "typescript/unstable/async";
6
- import { CRUD_MUTATION_NAMES, formatObjectKey, generateAggregatesFile, generateGroupedQueriesFile, generateInstancesFile, generateModelsFile, generateReadmeFile, generateSyncedMutationsFile, generateSyncedQueriesFile, generateTablesFile, generateTypesFile, parseColumnType, parseTypeString, renderDrizzleZeroSqliteSchemaModule, shouldSkipObjectKey } from "./generate-helpers.native.js";
7
- import { discoverDataLayout, namespaceImportPath } from "./generate-layout.native.js";
8
- import { collectTypeScriptSourcePaths, createNativeTypeScriptProject } from "./native-typescript.native.js";
6
+ import { CRUD_MUTATION_NAMES, formatObjectKey, generateAggregatesFile, generateGroupedQueriesFile, generateInstancesFile, generateModelsFile, generateReadmeFile, generateSyncedMutationsFile, generateSyncedQueriesFile, generateTablesFile, generateTypesFile, parseColumnType, parseTypeString, renderDrizzleZeroSqliteSchemaModule, shouldSkipObjectKey } from "./generate-helpers";
7
+ import { discoverDataLayout, namespaceImportPath } from "./generate-layout";
8
+ import { collectTypeScriptSourcePaths, createNativeTypeScriptProject } from "./native-typescript";
9
+ function _type_of(obj) {
10
+ "@swc/helpers - typeof";
11
+
12
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
13
+ }
9
14
  var hash = function hash2(s) {
10
15
  return createHash("sha256").update(s).digest("hex");
11
16
  };
12
- var GENERATOR_CACHE_VERSION = "8";
17
+ var GENERATOR_CACHE_VERSION = "10";
13
18
  var isGeneratorSourceFile = function isGeneratorSourceFile2(name) {
14
19
  return name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
15
20
  };
16
- function hashInputTree(sourceRoots, generatedDir) {
21
+ function hashInputTree(sourceRoots, generatedDir, dependencyPaths) {
17
22
  var parts = [];
18
23
  var seen = /* @__PURE__ */new Set();
19
24
  var walk = function walk1(dir) {
@@ -76,6 +81,30 @@ function hashInputTree(sourceRoots, generatedDir) {
76
81
  }
77
82
  }
78
83
  }
84
+ var _iteratorNormalCompletion1 = true,
85
+ _didIteratorError1 = false,
86
+ _iteratorError1 = void 0;
87
+ try {
88
+ for (var _iterator1 = dependencyPaths[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
89
+ var path = _step1.value;
90
+ if (seen.has(path) || path.startsWith(`${generatedDir}/`) || !existsSync(path)) continue;
91
+ seen.add(path);
92
+ parts.push(`${path}\0${readFileSync(path, "utf-8")}`);
93
+ }
94
+ } catch (err) {
95
+ _didIteratorError1 = true;
96
+ _iteratorError1 = err;
97
+ } finally {
98
+ try {
99
+ if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
100
+ _iterator1.return();
101
+ }
102
+ } finally {
103
+ if (_didIteratorError1) {
104
+ throw _iteratorError1;
105
+ }
106
+ }
107
+ }
79
108
  return hash(parts.join("\0"));
80
109
  }
81
110
  var generateCache = {};
@@ -471,12 +500,13 @@ async function tsTypeToValibot(project, type) {
471
500
  var seen = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : /* @__PURE__ */new Set();
472
501
  var checker = project.checker;
473
502
  var flags = type.flags;
503
+ var path = seen;
474
504
  if (flags & (TypeFlags.Object | TypeFlags.Intersection)) {
475
505
  if (seen.has(type.id)) return "v.unknown()";
476
- seen.add(type.id);
506
+ path = new Set(seen).add(type.id);
477
507
  }
478
508
  var recurse = function recurse2(value) {
479
- return tsTypeToValibot(project, value, seen);
509
+ return tsTypeToValibot(project, value, path);
480
510
  };
481
511
  if (flags & TypeFlags.String) return "v.string()";
482
512
  if (flags & TypeFlags.Number) return "v.number()";
@@ -775,12 +805,17 @@ function dataMembershipFromLayout(layout) {
775
805
  };
776
806
  }
777
807
  async function loadGeneratorProject(baseDir) {
808
+ var deferSources = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false,
809
+ tsconfig = arguments.length > 2 ? arguments[2] : void 0;
778
810
  var sourcePaths = collectTypeScriptSourcePaths([baseDir, resolve(dirname(baseDir), "database")]);
779
- return createNativeTypeScriptProject(baseDir, sourcePaths);
811
+ return createNativeTypeScriptProject(baseDir, sourcePaths, {
812
+ deferSources,
813
+ tsconfig: tsconfig ? resolve(tsconfig) : void 0
814
+ });
780
815
  }
781
816
  async function deriveDataMembership(options) {
782
817
  var baseDir = resolve(options.dir);
783
- var project = await loadGeneratorProject(baseDir);
818
+ var project = await loadGeneratorProject(baseDir, false, options.tsconfig);
784
819
  try {
785
820
  var layout = discoverDataLayout(project, baseDir, options.config ? resolve(options.config) : void 0);
786
821
  return dataMembershipFromLayout(layout);
@@ -790,7 +825,7 @@ async function deriveDataMembership(options) {
790
825
  }
791
826
  async function generateDrizzleSchemaInputFile(options) {
792
827
  var baseDir = resolve(options.dir);
793
- var project = await loadGeneratorProject(baseDir);
828
+ var project = await loadGeneratorProject(baseDir, false, options.tsconfig);
794
829
  try {
795
830
  return generateDrizzleSchemaInputFileWithProject(options, project);
796
831
  } finally {
@@ -887,7 +922,7 @@ ${relations.map(function (relation) {
887
922
  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");
888
923
  }
889
924
  async function generate(options) {
890
- var project = await loadGeneratorProject(resolve(options.dir));
925
+ var project = await loadGeneratorProject(resolve(options.dir), true, options.tsconfig);
891
926
  try {
892
927
  return await generateWithProject(options, project);
893
928
  } finally {
@@ -910,38 +945,50 @@ async function generateWithProject(options, project) {
910
945
  });
911
946
  }
912
947
  loadCache();
913
- var layout = discoverDataLayout(project, baseDir, config ? resolve(config) : void 0);
914
- var metadataHash = hash(layout.metadataPaths.map(function (path) {
915
- return `${path}\0${readFileSync(path, "utf8")}`;
916
- }).join("\0"));
948
+ var configPath = config ? resolve(config) : resolve(baseDir, "on-zero.config.ts");
949
+ var cachedInputs = null;
950
+ if (generateCache.__configPath === configPath) {
951
+ try {
952
+ var value = JSON.parse(generateCache.__layoutInputs || "null");
953
+ if (value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && "sourceRoots" in value && Array.isArray(value.sourceRoots) && value.sourceRoots.every(function (path) {
954
+ return typeof path === "string";
955
+ }) && "metadataPaths" in value && Array.isArray(value.metadataPaths) && value.metadataPaths.every(function (path) {
956
+ return typeof path === "string";
957
+ })) {
958
+ cachedInputs = {
959
+ sourceRoots: value.sourceRoots,
960
+ metadataPaths: value.metadataPaths
961
+ };
962
+ }
963
+ } catch (unused) {}
964
+ }
965
+ var dependencyPaths = await project.sourceFilePaths();
966
+ var hashInputs = function hashInputs2(layout2) {
967
+ var metadataHash = hash(layout2.metadataPaths.map(function (path) {
968
+ return `${path}\0${readFileSync(path, "utf8")}`;
969
+ }).join("\0"));
970
+ return hash(`${hashInputTree(layout2.sourceRoots, generatedDir, dependencyPaths)}\0${metadataHash}\0${externalZeroConfig}\0${project.configurationKey}`);
971
+ };
917
972
  var databaseSchemaPath = resolve(dirname(baseDir), "database/schema.ts");
918
973
  var needsDrizzleSchema = existsSync(databaseSchemaPath);
919
974
  var externalZeroConfigPath = resolve(dirname(databaseSchemaPath), "drizzle-zero.config.ts");
920
975
  var externalZeroConfig = existsSync(externalZeroConfigPath) ? readFileSync(externalZeroConfigPath, "utf8") : null;
921
976
  var needsSqliteZeroSchema = needsDrizzleSchema && externalZeroConfig === null;
922
- var inputHash = hash(`${hashInputTree(layout.sourceRoots, generatedDir)}\0${metadataHash}\0${externalZeroConfig}`);
923
- if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash &&
977
+ var cachedInputHash = null;
978
+ if (cachedInputs) {
979
+ try {
980
+ cachedInputHash = hashInputs(cachedInputs);
981
+ } catch (unused) {}
982
+ }
983
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === cachedInputHash &&
924
984
  // the input hash deliberately skips the generated directory, so it cannot
925
985
  // notice that the outputs themselves moved. existence is not correctness
926
986
  // either: a checkout, merge or revert leaves every file present and stale.
927
987
  // confirm the bytes on disk still match what the cache says it wrote there
928
988
  // before skipping the build, or the fast path serves someone else's output.
929
989
  //
930
- // a consumer that formats generated output after this runs never hits the
931
- // fast path again, because the cache holds the bytes written here and disk
932
- // holds the formatted ones. soot does exactly that, `on-zero generate &&
933
- // generate-instance-tables && oxfmt src/data/generated/`, and the number is
934
- // already taken: 2.50s median before, 3.69s after, four warm runs each in
935
- // one checkout with only the pin swapped, so about 1.2 seconds or 47
936
- // percent on this step. the full three-command script went 2.65s to 3.14s
937
- // with a spread that swallows most of it.
938
- //
939
- // the shape matters more than the number. this is not a cache that hits
940
- // less often, it is a cache that never hits, so the cost does not degrade
941
- // gracefully and grows with the generated output rather than staying at
942
- // 1.2s. correct and slower beats fast and stale, which is why it is written
943
- // this way, but if generate time ever becomes the complaint, record the
944
- // hash after the consumer's formatter runs rather than weakening this.
990
+ // successful after commands record their final output hashes. formatting
991
+ // therefore keeps the fast path without trusting stale generated bytes.
945
992
  Object.entries(generateCache).every(function (param) {
946
993
  var [cachedPath, cachedHash] = param;
947
994
  if (!cachedPath.startsWith(generatedDir)) return true;
@@ -964,6 +1011,9 @@ async function generateWithProject(options, project) {
964
1011
  mutationCount: (_counts_mutationCount = counts.mutationCount) !== null && _counts_mutationCount !== void 0 ? _counts_mutationCount : 0
965
1012
  };
966
1013
  }
1014
+ await project.loadSources();
1015
+ var layout = discoverDataLayout(project, baseDir, config ? resolve(config) : void 0);
1016
+ var inputHash = hashInputs(layout);
967
1017
  var modelNamespaces = layout.namespaces.filter(function (namespace2) {
968
1018
  return namespace2.modelPath !== null;
969
1019
  });
@@ -1312,11 +1362,22 @@ async function generateWithProject(options, project) {
1312
1362
  ON_ZERO_GENERATED_DIR: generatedDir
1313
1363
  }
1314
1364
  });
1365
+ var outputHashes = Object.fromEntries(Object.keys(generateCache).filter(function (filePath2) {
1366
+ return filePath2.startsWith(generatedDir);
1367
+ }).map(function (filePath2) {
1368
+ return [filePath2, hash(readFileSync(filePath2, "utf-8"))];
1369
+ }));
1370
+ Object.assign(generateCache, outputHashes);
1315
1371
  } catch (err) {
1316
1372
  if (!silent) console.error(`Error running after command: ${err}`);
1317
1373
  }
1318
1374
  }
1319
1375
  generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
1376
+ generateCache.__configPath = configPath;
1377
+ generateCache.__layoutInputs = JSON.stringify({
1378
+ sourceRoots: layout.sourceRoots,
1379
+ metadataPaths: layout.metadataPaths
1380
+ });
1320
1381
  generateCache.__inputHash = inputHash;
1321
1382
  generateCache.__counts = JSON.stringify({
1322
1383
  modelCount: modelNamespaces.length,
@@ -1359,14 +1420,14 @@ ${event} ${path}`);
1359
1420
  }, debounce);
1360
1421
  };
1361
1422
  var databaseDir = resolve(dirname(baseDir), "database");
1362
- var project = await loadGeneratorProject(baseDir);
1423
+ var project = await loadGeneratorProject(baseDir, false, options.tsconfig);
1363
1424
  var layout;
1364
1425
  try {
1365
1426
  layout = discoverDataLayout(project, baseDir, options.config ? resolve(options.config) : void 0);
1366
1427
  } finally {
1367
1428
  await project.close();
1368
1429
  }
1369
- var watcher = chokidar.watch([... /* @__PURE__ */new Set([...layout.sourceRoots, ...(existsSync(databaseDir) ? [databaseDir] : [])])], {
1430
+ var watcher = chokidar.watch([... /* @__PURE__ */new Set([...layout.sourceRoots, ...(options.tsconfig ? [resolve(options.tsconfig)] : []), ...(existsSync(databaseDir) ? [databaseDir] : [])])], {
1370
1431
  persistent: true,
1371
1432
  ignoreInitial: true,
1372
1433
  ignored: [generatedDir, /node_modules/]