neoorm 0.8.0 → 0.8.2

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 (380) hide show
  1. package/README.md +13 -6
  2. package/dist/bin/neoorm.d.ts +1 -1
  3. package/dist/bin/neoorm.d.ts.map +1 -1
  4. package/dist/bin/neoorm.js +148 -75
  5. package/dist/bin/neoorm.js.map +1 -1
  6. package/dist/codegen/diff-manifest.d.ts.map +1 -1
  7. package/dist/codegen/diff-manifest.js +106 -4
  8. package/dist/codegen/diff-manifest.js.map +1 -1
  9. package/dist/codegen/generate-summary.d.ts +5 -1
  10. package/dist/codegen/generate-summary.d.ts.map +1 -1
  11. package/dist/codegen/generate-summary.js +10 -1
  12. package/dist/codegen/generate-summary.js.map +1 -1
  13. package/dist/codegen/generate.d.ts +24 -4
  14. package/dist/codegen/generate.d.ts.map +1 -1
  15. package/dist/codegen/generate.js +150 -13
  16. package/dist/codegen/generate.js.map +1 -1
  17. package/dist/codegen/manifest-relations.d.ts +2 -0
  18. package/dist/codegen/manifest-relations.d.ts.map +1 -1
  19. package/dist/codegen/manifest-relations.js +2 -1
  20. package/dist/codegen/manifest-relations.js.map +1 -1
  21. package/dist/codegen/schema-to-manifest.d.ts +1 -1
  22. package/dist/codegen/schema-to-manifest.d.ts.map +1 -1
  23. package/dist/codegen/schema-to-manifest.js +349 -29
  24. package/dist/codegen/schema-to-manifest.js.map +1 -1
  25. package/dist/codegen/validation/emit-elysia.d.ts +4 -0
  26. package/dist/codegen/validation/emit-elysia.d.ts.map +1 -0
  27. package/dist/codegen/validation/emit-elysia.js +304 -0
  28. package/dist/codegen/validation/emit-elysia.js.map +1 -0
  29. package/dist/codegen/validation/emit-typebox.d.ts +4 -0
  30. package/dist/codegen/validation/emit-typebox.d.ts.map +1 -0
  31. package/dist/codegen/validation/emit-typebox.js +360 -0
  32. package/dist/codegen/validation/emit-typebox.js.map +1 -0
  33. package/dist/codegen/validation/emit-zod.d.ts +4 -0
  34. package/dist/codegen/validation/emit-zod.d.ts.map +1 -0
  35. package/dist/codegen/validation/emit-zod.js +288 -0
  36. package/dist/codegen/validation/emit-zod.js.map +1 -0
  37. package/dist/codegen/validation/from-manifest.d.ts +5 -0
  38. package/dist/codegen/validation/from-manifest.d.ts.map +1 -0
  39. package/dist/codegen/validation/from-manifest.js +284 -0
  40. package/dist/codegen/validation/from-manifest.js.map +1 -0
  41. package/dist/codegen/validation/infer.d.ts +47 -0
  42. package/dist/codegen/validation/infer.d.ts.map +1 -0
  43. package/dist/codegen/validation/infer.js +2 -0
  44. package/dist/codegen/validation/infer.js.map +1 -0
  45. package/dist/codegen/validation/json-generic-types.d.ts +7 -0
  46. package/dist/codegen/validation/json-generic-types.d.ts.map +1 -0
  47. package/dist/codegen/validation/json-generic-types.js +295 -0
  48. package/dist/codegen/validation/json-generic-types.js.map +1 -0
  49. package/dist/codegen/validation/types.d.ts +84 -0
  50. package/dist/codegen/validation/types.d.ts.map +1 -0
  51. package/dist/codegen/validation/types.js +6 -0
  52. package/dist/codegen/validation/types.js.map +1 -0
  53. package/dist/config.d.ts +8 -0
  54. package/dist/config.d.ts.map +1 -1
  55. package/dist/config.js +30 -0
  56. package/dist/config.js.map +1 -1
  57. package/dist/datasource-provider.d.ts +5 -1
  58. package/dist/datasource-provider.d.ts.map +1 -1
  59. package/dist/datasource-provider.js +21 -2
  60. package/dist/datasource-provider.js.map +1 -1
  61. package/dist/dialect/column-kind-support.d.ts +9 -0
  62. package/dist/dialect/column-kind-support.d.ts.map +1 -0
  63. package/dist/dialect/column-kind-support.js +25 -0
  64. package/dist/dialect/column-kind-support.js.map +1 -0
  65. package/dist/dialect/fk.d.ts +30 -1
  66. package/dist/dialect/fk.d.ts.map +1 -1
  67. package/dist/dialect/fk.js +113 -0
  68. package/dist/dialect/fk.js.map +1 -1
  69. package/dist/dialect/index.d.ts +6 -1
  70. package/dist/dialect/index.d.ts.map +1 -1
  71. package/dist/dialect/index.js +5 -0
  72. package/dist/dialect/index.js.map +1 -1
  73. package/dist/dialect/mariadb.d.ts +4 -0
  74. package/dist/dialect/mariadb.d.ts.map +1 -0
  75. package/dist/dialect/mariadb.js +15 -0
  76. package/dist/dialect/mariadb.js.map +1 -0
  77. package/dist/dialect/mariadb.test.d.ts +2 -0
  78. package/dist/dialect/mariadb.test.d.ts.map +1 -0
  79. package/dist/dialect/mariadb.test.js +151 -0
  80. package/dist/dialect/mariadb.test.js.map +1 -0
  81. package/dist/dialect/mysql-family.d.ts +14 -0
  82. package/dist/dialect/mysql-family.d.ts.map +1 -0
  83. package/dist/dialect/mysql-family.js +453 -0
  84. package/dist/dialect/mysql-family.js.map +1 -0
  85. package/dist/dialect/mysql.d.ts +6 -0
  86. package/dist/dialect/mysql.d.ts.map +1 -0
  87. package/dist/dialect/mysql.js +16 -0
  88. package/dist/dialect/mysql.js.map +1 -0
  89. package/dist/dialect/mysql.test.d.ts +2 -0
  90. package/dist/dialect/mysql.test.d.ts.map +1 -0
  91. package/dist/dialect/mysql.test.js +211 -0
  92. package/dist/dialect/mysql.test.js.map +1 -0
  93. package/dist/dialect/placeholders.d.ts +7 -0
  94. package/dist/dialect/placeholders.d.ts.map +1 -0
  95. package/dist/dialect/placeholders.js +18 -0
  96. package/dist/dialect/placeholders.js.map +1 -0
  97. package/dist/dialect/postgres.d.ts +2 -1
  98. package/dist/dialect/postgres.d.ts.map +1 -1
  99. package/dist/dialect/postgres.js +93 -30
  100. package/dist/dialect/postgres.js.map +1 -1
  101. package/dist/dialect/resolve.d.ts +13 -0
  102. package/dist/dialect/resolve.d.ts.map +1 -0
  103. package/dist/dialect/resolve.js +66 -0
  104. package/dist/dialect/resolve.js.map +1 -0
  105. package/dist/dialect/shared.d.ts +8 -1
  106. package/dist/dialect/shared.d.ts.map +1 -1
  107. package/dist/dialect/shared.js +37 -0
  108. package/dist/dialect/shared.js.map +1 -1
  109. package/dist/dialect/sqlite.d.ts.map +1 -1
  110. package/dist/dialect/sqlite.js +50 -18
  111. package/dist/dialect/sqlite.js.map +1 -1
  112. package/dist/dialect/sqlite.test.js +43 -1
  113. package/dist/dialect/sqlite.test.js.map +1 -1
  114. package/dist/dialect/types.d.ts +60 -3
  115. package/dist/dialect/types.d.ts.map +1 -1
  116. package/dist/docs/pages.d.ts.map +1 -1
  117. package/dist/docs/pages.js +5 -0
  118. package/dist/docs/pages.js.map +1 -1
  119. package/dist/docs/render.js +1 -1
  120. package/dist/index.d.ts +6 -3
  121. package/dist/index.d.ts.map +1 -1
  122. package/dist/index.js +5 -2
  123. package/dist/index.js.map +1 -1
  124. package/dist/init/scaffold.d.ts +2 -1
  125. package/dist/init/scaffold.d.ts.map +1 -1
  126. package/dist/init/scaffold.js.map +1 -1
  127. package/dist/init/templates.d.ts +3 -2
  128. package/dist/init/templates.d.ts.map +1 -1
  129. package/dist/init/templates.js +19 -9
  130. package/dist/init/templates.js.map +1 -1
  131. package/dist/introspect/group-fks.d.ts +24 -0
  132. package/dist/introspect/group-fks.d.ts.map +1 -0
  133. package/dist/introspect/group-fks.js +48 -0
  134. package/dist/introspect/group-fks.js.map +1 -0
  135. package/dist/introspect/mysql/to-manifest.d.ts +4 -0
  136. package/dist/introspect/mysql/to-manifest.d.ts.map +1 -0
  137. package/dist/introspect/mysql/to-manifest.js +317 -0
  138. package/dist/introspect/mysql/to-manifest.js.map +1 -0
  139. package/dist/introspect/pull.d.ts +1 -0
  140. package/dist/introspect/pull.d.ts.map +1 -1
  141. package/dist/introspect/pull.js +186 -9
  142. package/dist/introspect/pull.js.map +1 -1
  143. package/dist/introspect/queries.d.ts +11 -1
  144. package/dist/introspect/queries.d.ts.map +1 -1
  145. package/dist/introspect/queries.js +43 -12
  146. package/dist/introspect/queries.js.map +1 -1
  147. package/dist/introspect/sqlite/to-manifest.d.ts.map +1 -1
  148. package/dist/introspect/sqlite/to-manifest.js +99 -26
  149. package/dist/introspect/sqlite/to-manifest.js.map +1 -1
  150. package/dist/introspect/to-manifest.d.ts.map +1 -1
  151. package/dist/introspect/to-manifest.js +154 -28
  152. package/dist/introspect/to-manifest.js.map +1 -1
  153. package/dist/migrate/dev-lock.d.ts +15 -0
  154. package/dist/migrate/dev-lock.d.ts.map +1 -0
  155. package/dist/migrate/dev-lock.js +101 -0
  156. package/dist/migrate/dev-lock.js.map +1 -0
  157. package/dist/migrate/runner.d.ts.map +1 -1
  158. package/dist/migrate/runner.js +143 -51
  159. package/dist/migrate/runner.js.map +1 -1
  160. package/dist/plugins/builtin.d.ts +62 -12
  161. package/dist/plugins/builtin.d.ts.map +1 -1
  162. package/dist/plugins/builtin.js +378 -30
  163. package/dist/plugins/builtin.js.map +1 -1
  164. package/dist/plugins/index.d.ts +1 -0
  165. package/dist/plugins/index.d.ts.map +1 -1
  166. package/dist/plugins/index.js.map +1 -1
  167. package/dist/plugins/json/operators.d.ts.map +1 -1
  168. package/dist/plugins/json/operators.js +69 -3
  169. package/dist/plugins/json/operators.js.map +1 -1
  170. package/dist/plugins/postgis/columns.d.ts.map +1 -1
  171. package/dist/plugins/postgis/columns.js +52 -0
  172. package/dist/plugins/postgis/columns.js.map +1 -1
  173. package/dist/plugins/postgis/columns.test.js +13 -0
  174. package/dist/plugins/postgis/columns.test.js.map +1 -1
  175. package/dist/plugins/postgis/operators.d.ts.map +1 -1
  176. package/dist/plugins/postgis/operators.js +15 -3
  177. package/dist/plugins/postgis/operators.js.map +1 -1
  178. package/dist/plugins/types.d.ts +3 -0
  179. package/dist/plugins/types.d.ts.map +1 -1
  180. package/dist/runtime/client.d.ts +31 -4
  181. package/dist/runtime/client.d.ts.map +1 -1
  182. package/dist/runtime/client.js +131 -6
  183. package/dist/runtime/client.js.map +1 -1
  184. package/dist/runtime/driver.d.ts +2 -0
  185. package/dist/runtime/driver.d.ts.map +1 -1
  186. package/dist/runtime/driver.js +12 -0
  187. package/dist/runtime/driver.js.map +1 -1
  188. package/dist/runtime/error-hints.d.ts.map +1 -1
  189. package/dist/runtime/error-hints.js +37 -10
  190. package/dist/runtime/error-hints.js.map +1 -1
  191. package/dist/runtime/executor.d.ts +1 -0
  192. package/dist/runtime/executor.d.ts.map +1 -1
  193. package/dist/runtime/executor.js +7 -1
  194. package/dist/runtime/executor.js.map +1 -1
  195. package/dist/runtime/mariadb-driver.d.ts +25 -0
  196. package/dist/runtime/mariadb-driver.d.ts.map +1 -0
  197. package/dist/runtime/mariadb-driver.js +103 -0
  198. package/dist/runtime/mariadb-driver.js.map +1 -0
  199. package/dist/runtime/mysql-driver.d.ts +25 -0
  200. package/dist/runtime/mysql-driver.d.ts.map +1 -0
  201. package/dist/runtime/mysql-driver.js +101 -0
  202. package/dist/runtime/mysql-driver.js.map +1 -0
  203. package/dist/runtime/mysql-error.d.ts +15 -0
  204. package/dist/runtime/mysql-error.d.ts.map +1 -0
  205. package/dist/runtime/mysql-error.js +119 -0
  206. package/dist/runtime/mysql-error.js.map +1 -0
  207. package/dist/runtime/mysql-family-pool.d.ts +50 -0
  208. package/dist/runtime/mysql-family-pool.d.ts.map +1 -0
  209. package/dist/runtime/mysql-family-pool.js +52 -0
  210. package/dist/runtime/mysql-family-pool.js.map +1 -0
  211. package/dist/runtime/mysql-family-pool.test.d.ts +2 -0
  212. package/dist/runtime/mysql-family-pool.test.d.ts.map +1 -0
  213. package/dist/runtime/mysql-family-pool.test.js +169 -0
  214. package/dist/runtime/mysql-family-pool.test.js.map +1 -0
  215. package/dist/runtime/mysql-placeholders.d.ts +18 -0
  216. package/dist/runtime/mysql-placeholders.d.ts.map +1 -0
  217. package/dist/runtime/mysql-placeholders.js +133 -0
  218. package/dist/runtime/mysql-placeholders.js.map +1 -0
  219. package/dist/runtime/mysql-placeholders.test.d.ts +2 -0
  220. package/dist/runtime/mysql-placeholders.test.d.ts.map +1 -0
  221. package/dist/runtime/mysql-placeholders.test.js +33 -0
  222. package/dist/runtime/mysql-placeholders.test.js.map +1 -0
  223. package/dist/runtime/query/aggregate.d.ts.map +1 -1
  224. package/dist/runtime/query/aggregate.js +3 -3
  225. package/dist/runtime/query/aggregate.js.map +1 -1
  226. package/dist/runtime/query/compile-aggregate.d.ts +1 -1
  227. package/dist/runtime/query/compile-aggregate.d.ts.map +1 -1
  228. package/dist/runtime/query/compile-aggregate.js +33 -28
  229. package/dist/runtime/query/compile-aggregate.js.map +1 -1
  230. package/dist/runtime/query/compile-where.d.ts +9 -9
  231. package/dist/runtime/query/compile-where.d.ts.map +1 -1
  232. package/dist/runtime/query/compile-where.js +108 -76
  233. package/dist/runtime/query/compile-where.js.map +1 -1
  234. package/dist/runtime/query/compile-write.d.ts +9 -9
  235. package/dist/runtime/query/compile-write.d.ts.map +1 -1
  236. package/dist/runtime/query/compile-write.js +77 -63
  237. package/dist/runtime/query/compile-write.js.map +1 -1
  238. package/dist/runtime/query/count.d.ts.map +1 -1
  239. package/dist/runtime/query/count.js +4 -1
  240. package/dist/runtime/query/count.js.map +1 -1
  241. package/dist/runtime/query/create.d.ts.map +1 -1
  242. package/dist/runtime/query/create.js +38 -12
  243. package/dist/runtime/query/create.js.map +1 -1
  244. package/dist/runtime/query/cursor.d.ts +1 -1
  245. package/dist/runtime/query/cursor.d.ts.map +1 -1
  246. package/dist/runtime/query/cursor.js +6 -7
  247. package/dist/runtime/query/cursor.js.map +1 -1
  248. package/dist/runtime/query/delete.d.ts.map +1 -1
  249. package/dist/runtime/query/delete.js +41 -15
  250. package/dist/runtime/query/delete.js.map +1 -1
  251. package/dist/runtime/query/execute.d.ts +1 -0
  252. package/dist/runtime/query/execute.d.ts.map +1 -1
  253. package/dist/runtime/query/execute.js +23 -8
  254. package/dist/runtime/query/execute.js.map +1 -1
  255. package/dist/runtime/query/find-or-create.d.ts +1 -1
  256. package/dist/runtime/query/find-or-create.d.ts.map +1 -1
  257. package/dist/runtime/query/find-or-create.js +16 -8
  258. package/dist/runtime/query/find-or-create.js.map +1 -1
  259. package/dist/runtime/query/find.d.ts +2 -0
  260. package/dist/runtime/query/find.d.ts.map +1 -1
  261. package/dist/runtime/query/find.js +116 -68
  262. package/dist/runtime/query/find.js.map +1 -1
  263. package/dist/runtime/query/group-by.d.ts.map +1 -1
  264. package/dist/runtime/query/group-by.js.map +1 -1
  265. package/dist/runtime/query/mutation-returning.d.ts +10 -0
  266. package/dist/runtime/query/mutation-returning.d.ts.map +1 -0
  267. package/dist/runtime/query/mutation-returning.js +85 -0
  268. package/dist/runtime/query/mutation-returning.js.map +1 -0
  269. package/dist/runtime/query/paginate.d.ts.map +1 -1
  270. package/dist/runtime/query/paginate.js +3 -3
  271. package/dist/runtime/query/paginate.js.map +1 -1
  272. package/dist/runtime/query/projection.d.ts.map +1 -1
  273. package/dist/runtime/query/projection.js +1 -1
  274. package/dist/runtime/query/projection.js.map +1 -1
  275. package/dist/runtime/query/relation-join.d.ts +5 -0
  276. package/dist/runtime/query/relation-join.d.ts.map +1 -0
  277. package/dist/runtime/query/relation-join.js +26 -0
  278. package/dist/runtime/query/relation-join.js.map +1 -0
  279. package/dist/runtime/query/relation-planner.d.ts +1 -1
  280. package/dist/runtime/query/relation-planner.d.ts.map +1 -1
  281. package/dist/runtime/query/relation-planner.js +72 -58
  282. package/dist/runtime/query/relation-planner.js.map +1 -1
  283. package/dist/runtime/query/relation-writes.d.ts +2 -2
  284. package/dist/runtime/query/relation-writes.d.ts.map +1 -1
  285. package/dist/runtime/query/relation-writes.js +272 -116
  286. package/dist/runtime/query/relation-writes.js.map +1 -1
  287. package/dist/runtime/query/table-index.d.ts +1 -1
  288. package/dist/runtime/query/table-index.d.ts.map +1 -1
  289. package/dist/runtime/query/table-index.js +17 -10
  290. package/dist/runtime/query/table-index.js.map +1 -1
  291. package/dist/runtime/query/unique.d.ts +3 -0
  292. package/dist/runtime/query/unique.d.ts.map +1 -1
  293. package/dist/runtime/query/unique.js +26 -6
  294. package/dist/runtime/query/unique.js.map +1 -1
  295. package/dist/runtime/query/unique.test.js +110 -7
  296. package/dist/runtime/query/unique.test.js.map +1 -1
  297. package/dist/runtime/query/update.d.ts.map +1 -1
  298. package/dist/runtime/query/update.js +89 -23
  299. package/dist/runtime/query/update.js.map +1 -1
  300. package/dist/runtime/query/updated-at.js +2 -2
  301. package/dist/runtime/query/updated-at.js.map +1 -1
  302. package/dist/runtime/query/upsert.d.ts.map +1 -1
  303. package/dist/runtime/query/upsert.js +29 -5
  304. package/dist/runtime/query/upsert.js.map +1 -1
  305. package/dist/runtime/sqlite-open.js +1 -1
  306. package/dist/runtime/sqlite-open.js.map +1 -1
  307. package/dist/runtime/transaction.d.ts +1 -0
  308. package/dist/runtime/transaction.d.ts.map +1 -1
  309. package/dist/runtime/transaction.js +8 -0
  310. package/dist/runtime/transaction.js.map +1 -1
  311. package/dist/runtime/types.d.ts +10 -2
  312. package/dist/runtime/types.d.ts.map +1 -1
  313. package/dist/schema/column-constraints.d.ts +26 -0
  314. package/dist/schema/column-constraints.d.ts.map +1 -0
  315. package/dist/schema/column-constraints.js +143 -0
  316. package/dist/schema/column-constraints.js.map +1 -0
  317. package/dist/schema/column.d.ts +92 -3
  318. package/dist/schema/column.d.ts.map +1 -1
  319. package/dist/schema/column.js +17 -11
  320. package/dist/schema/column.js.map +1 -1
  321. package/dist/schema/index.d.ts +9 -6
  322. package/dist/schema/index.d.ts.map +1 -1
  323. package/dist/schema/index.js +8 -2
  324. package/dist/schema/index.js.map +1 -1
  325. package/dist/schema/json-column.d.ts +9 -0
  326. package/dist/schema/json-column.d.ts.map +1 -0
  327. package/dist/schema/json-column.js +11 -0
  328. package/dist/schema/json-column.js.map +1 -0
  329. package/dist/schema/many-to-many.d.ts +1 -1
  330. package/dist/schema/many-to-many.d.ts.map +1 -1
  331. package/dist/schema/nested-relation-types.d.ts +10 -9
  332. package/dist/schema/nested-relation-types.d.ts.map +1 -1
  333. package/dist/schema/relation-types.d.ts +80 -19
  334. package/dist/schema/relation-types.d.ts.map +1 -1
  335. package/dist/schema/relation.d.ts +11 -1
  336. package/dist/schema/relation.d.ts.map +1 -1
  337. package/dist/schema/relation.js +6 -0
  338. package/dist/schema/relation.js.map +1 -1
  339. package/dist/schema/table.d.ts +74 -11
  340. package/dist/schema/table.d.ts.map +1 -1
  341. package/dist/schema/table.js +93 -7
  342. package/dist/schema/table.js.map +1 -1
  343. package/dist/schema/types.d.ts +7 -6
  344. package/dist/schema/types.d.ts.map +1 -1
  345. package/dist/sql/builder.d.ts +13 -3
  346. package/dist/sql/builder.d.ts.map +1 -1
  347. package/dist/sql/builder.js +155 -5
  348. package/dist/sql/builder.js.map +1 -1
  349. package/dist/sql/index.d.ts +1 -0
  350. package/dist/sql/index.d.ts.map +1 -1
  351. package/dist/sql/index.js.map +1 -1
  352. package/dist/sql/qualify-tables.d.ts +15 -0
  353. package/dist/sql/qualify-tables.d.ts.map +1 -0
  354. package/dist/sql/qualify-tables.js +206 -0
  355. package/dist/sql/qualify-tables.js.map +1 -0
  356. package/dist/sql/template.d.ts +5 -0
  357. package/dist/sql/template.d.ts.map +1 -1
  358. package/dist/sql/template.js +23 -3
  359. package/dist/sql/template.js.map +1 -1
  360. package/dist/utils/load-ts.d.ts +2 -1
  361. package/dist/utils/load-ts.d.ts.map +1 -1
  362. package/dist/utils/load-ts.js +13 -1
  363. package/dist/utils/load-ts.js.map +1 -1
  364. package/docs/cli.md +4 -4
  365. package/docs/configuration.md +12 -5
  366. package/docs/elysia.md +131 -0
  367. package/docs/errors.md +1 -1
  368. package/docs/examples.md +4 -2
  369. package/docs/getting-started.md +28 -2
  370. package/docs/mariadb.md +149 -0
  371. package/docs/migrations.md +5 -3
  372. package/docs/mysql.md +134 -0
  373. package/docs/plugins.md +2 -0
  374. package/docs/queries.md +14 -11
  375. package/docs/relations.md +19 -4
  376. package/docs/schema.md +100 -9
  377. package/docs/sqlite.md +14 -2
  378. package/docs/typebox.md +139 -0
  379. package/docs/zod.md +128 -0
  380. package/package.json +33 -3
@@ -2,7 +2,7 @@ import type { ColumnBuilder } from "./column.js";
2
2
  import type { ColumnWhereInput, InferColumnValue } from "./column-where.js";
3
3
  import type { ManyToManyExtra } from "./many-to-many.js";
4
4
  import type { FkBuilder, FkMeta } from "./relation.js";
5
- import type { ColumnDef, ScalarColumnKeys, TableDef } from "./table.js";
5
+ import type { ColumnDef, ScalarColumnKeys, TableDef, TableExtra } from "./table.js";
6
6
  type IsPrimary<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
7
7
  primary: true;
8
8
  } ? true : false : false;
@@ -32,11 +32,19 @@ export type InferInsertRow<TColumns extends Record<string, ColumnDef>, TSchema e
32
32
  [K in ScalarColumnKeys<TColumns> as IsRequired<TColumns[K]> extends true ? K : never]: InferColumnValue<TColumns[K], TSchema>;
33
33
  };
34
34
  /** Primary-key reference for relation `connect` writes (`{ id }` when the PK is `id`). */
35
- export type ConnectInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = [ScalarPkName<TColumns>] extends [never] ? {
35
+ export type ExtraPrimaryKeyColumns<TExtras extends readonly TableExtra[]> = Extract<TExtras[number], {
36
+ kind: "primaryKey";
37
+ columns: readonly string[];
38
+ }> extends {
39
+ columns: infer C;
40
+ } ? C extends readonly (infer N)[] ? [string] extends [N] ? never : N : never : never;
41
+ export type ConnectPkName<TColumns extends Record<string, ColumnDef>, TExtras extends readonly TableExtra[] = readonly TableExtra[]> = ScalarPkName<TColumns> | (ExtraPrimaryKeyColumns<TExtras> & keyof TColumns & string);
42
+ export type ConnectInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>, TExtras extends readonly TableExtra[] = readonly TableExtra[]> = [ConnectPkName<TColumns, TExtras>] extends [never] ? {
36
43
  id: string;
37
44
  } : {
38
- [K in ScalarPkName<TColumns>]: InferColumnValue<TColumns[K], TSchema>;
45
+ [K in ConnectPkName<TColumns, TExtras>]: InferColumnValue<TColumns[K], TSchema>;
39
46
  };
47
+ type TableConnectInput<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = ConnectInput<TSchema[TAccessor]["_columns"], TSchema, TSchema[TAccessor]["_extras"]>;
40
48
  export type ConnectOrCreateItem<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
41
49
  where: Partial<InferSelectRow<TColumns, TSchema>>;
42
50
  create: InferInsertRow<TColumns, TSchema>;
@@ -109,8 +117,26 @@ type OutgoingFkRelationEntry<TSchema extends Record<string, TableDef>, C extends
109
117
  export type OutgoingFkRelations<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = MergeRelationUnion<{
110
118
  [K in keyof TColumns]: OutgoingFkRelationEntry<TSchema, TColumns[K], K & string>;
111
119
  }[keyof TColumns]>;
120
+ type ExtraFkRelationEntry<TSchema extends Record<string, TableDef>, E> = E extends {
121
+ kind: "foreignKey";
122
+ _as: infer As extends string;
123
+ targetTable: infer T extends string;
124
+ } ? As extends "" ? never : T extends keyof TSchema & string ? {
125
+ [P in As]: T;
126
+ } : never : never;
127
+ export type ExtraOutgoingFkRelations<TSchema extends Record<string, TableDef>, TExtras extends readonly TableExtra[]> = MergeRelationUnion<ExtraFkRelationEntry<TSchema, TExtras[number]>>;
128
+ type ExtraInverseFkRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, E> = E extends {
129
+ kind: "foreignKey";
130
+ _inverse: infer Inv extends string;
131
+ targetTable: infer T extends string;
132
+ } ? Inv extends "" ? never : T extends TAccessor ? {
133
+ [P in Inv]: TSourceAccessor;
134
+ } : never : never;
135
+ export type ExtraInverseFkRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
136
+ [S in keyof TSchema & string]: ExtraInverseFkRelationEntry<TSchema, TAccessor, S, TSchema[S]["_extras"][number]>;
137
+ }[keyof TSchema & string]>;
112
138
  /** Inverse relations from other tables pointing at this table (inverse name -> source accessor) */
113
- export type InverseRelationEntryForSource<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
139
+ export type InverseRelationEntryForSource<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, _K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
114
140
  target: infer TTarget extends string;
115
141
  inverse: infer Inv extends string;
116
142
  unique: infer TUnique extends boolean;
@@ -156,7 +182,7 @@ type InlineM2MRelationEntry<TSchema extends Record<string, TableDef>, C extends
156
182
  export type InlineM2MRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeInverseRelationUnion<{
157
183
  [K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
158
184
  }[keyof TSchema[TAccessor]["_columns"]]>;
159
- type InlineM2MInverseRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
185
+ type InlineM2MInverseRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, _K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
160
186
  [P in M2MInverseOf<TSourceAccessor, C>]: TSourceAccessor;
161
187
  } : never : never;
162
188
  /** Inverse inline m2m relations on the target table (name defaults to the source accessor). */
@@ -166,7 +192,7 @@ export type InlineM2MInverseRelations<TSchema extends Record<string, TableDef>,
166
192
  }[keyof TSchema[S]["_columns"]];
167
193
  }[keyof TSchema & string]>;
168
194
  /** All relation names on a table -> target schema accessor */
169
- export type RelationAccessors<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = OutgoingFkRelations<TSchema, TSchema[TAccessor]["_columns"]> & InverseRelations<TSchema, TAccessor> & JunctionM2MRelations<TSchema, TAccessor> & InlineM2MRelations<TSchema, TAccessor> & InlineM2MInverseRelations<TSchema, TAccessor>;
195
+ export type RelationAccessors<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = OutgoingFkRelations<TSchema, TSchema[TAccessor]["_columns"]> & ExtraOutgoingFkRelations<TSchema, TSchema[TAccessor]["_extras"]> & InverseRelations<TSchema, TAccessor> & ExtraInverseFkRelations<TSchema, TAccessor> & JunctionM2MRelations<TSchema, TAccessor> & InlineM2MRelations<TSchema, TAccessor> & InlineM2MInverseRelations<TSchema, TAccessor>;
170
196
  export type ColumnNames<TColumns extends Record<string, ColumnDef>> = ScalarColumnKeys<TColumns>;
171
197
  /** Target schema accessor for a relation name on a table */
172
198
  export type RelationTarget<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string> = RelationAccessors<TSchema, TAccessor>[TRelation];
@@ -248,9 +274,9 @@ type IsManyRelation<TSchema extends Record<string, TableDef>, TAccessor extends
248
274
  type InferWithRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W> = {
249
275
  [R in keyof W & keyof RelationAccessors<TSchema, TAccessor> & string]: [
250
276
  NonNullable<RelationAccessors<TSchema, TAccessor>[R]>
251
- ] extends [never] ? never : NonNullable<RelationAccessors<TSchema, TAccessor>[R]> extends infer TTarget extends keyof TSchema & string ? InferRelationIncludeResult<TSchema, TAccessor, R, W[R]> extends infer Row ? [Row] extends [never] ? never : IsManyRelation<TSchema, TAccessor, R> extends true ? Row[] : Row | null : never : never;
277
+ ] extends [never] ? never : NonNullable<RelationAccessors<TSchema, TAccessor>[R]> extends infer _TTarget extends keyof TSchema & string ? InferRelationIncludeResult<TSchema, TAccessor, R, W[R]> extends infer Row ? [Row] extends [never] ? never : IsManyRelation<TSchema, TAccessor, R> extends true ? Row[] : Row | null : never : never;
252
278
  };
253
- type InferCountResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W> = W extends {
279
+ type InferCountResult<TSchema extends Record<string, TableDef>, _TAccessor extends keyof TSchema & string, W> = W extends {
254
280
  _count: infer C;
255
281
  } ? C extends Record<string, unknown> ? {
256
282
  _count: {
@@ -284,7 +310,7 @@ type OutgoingFkRelationWhereEntry<TSchema extends Record<string, TableDef>, TAcc
284
310
  } : never : TTarget extends keyof TSchema & string ? IsThroughTable<TSchema[TTarget]["_columns"]> extends true ? never : {
285
311
  [P in FkRelationName<As, K>]?: FkTargetMatchesAccessor<TSchema, TTarget, TAccessor> extends true ? ShallowWhereInput<TSchema[TTarget]["_columns"], TSchema, TTarget> : WhereInput<TSchema[TTarget]["_columns"], TSchema, TTarget>;
286
312
  } : never : never;
287
- type InverseRelationWhereEntry<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
313
+ type InverseRelationWhereEntry<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, _K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
288
314
  target: infer TTarget extends string;
289
315
  inverse: infer Inv extends string;
290
316
  unique: infer TUnique extends boolean;
@@ -309,7 +335,7 @@ type InlineM2MWhereRelationEntry<TSchema extends Record<string, TableDef>, C ext
309
335
  export type InlineM2MWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
310
336
  [K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MWhereRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
311
337
  }[keyof TSchema[TAccessor]["_columns"]]>;
312
- type InlineM2MInverseWhereRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
338
+ type InlineM2MInverseWhereRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, _K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
313
339
  [P in M2MInverseOf<TSourceAccessor, C>]?: ManyRelationFilter<TSchema, TSourceAccessor>;
314
340
  } : never : never;
315
341
  export type InlineM2MInverseWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
@@ -317,13 +343,47 @@ export type InlineM2MInverseWhereMap<TSchema extends Record<string, TableDef>, T
317
343
  [K in keyof TSchema[S]["_columns"]]: InlineM2MInverseWhereRelationEntry<TSchema, TAccessor, S, TSchema[S]["_columns"][K], K & string>;
318
344
  }[keyof TSchema[S]["_columns"]]>;
319
345
  }[keyof TSchema & string]>;
346
+ export type ExtraOutgoingFkWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<TSchema[TAccessor]["_extras"][number] extends infer E ? E extends {
347
+ kind: "foreignKey";
348
+ _as: infer As extends string;
349
+ targetTable: infer T extends string;
350
+ } ? As extends "" ? never : T extends keyof TSchema & string ? {
351
+ [P in As]?: [T] extends [TAccessor] ? ShallowWhereInput<TSchema[T]["_columns"], TSchema, T> : WhereInput<TSchema[T]["_columns"], TSchema, T>;
352
+ } : never : never : never>;
353
+ export type ExtraInverseFkWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
354
+ [S in keyof TSchema & string]: TSchema[S]["_extras"][number] extends infer E ? E extends {
355
+ kind: "foreignKey";
356
+ _inverse: infer Inv extends string;
357
+ targetTable: infer T extends string;
358
+ } ? Inv extends "" ? never : T extends TAccessor ? {
359
+ [P in Inv]?: [S] extends [TAccessor] ? ShallowManyRelationFilter<TSchema, S> : ManyRelationFilter<TSchema, S>;
360
+ } : never : never : never;
361
+ }[keyof TSchema & string]>;
362
+ type ExtraOutgoingFkWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<TSchema[TAccessor]["_extras"][number] extends infer E ? E extends {
363
+ kind: "foreignKey";
364
+ _as: infer As extends string;
365
+ targetTable: infer T extends string;
366
+ } ? As extends "" ? never : T extends keyof TSchema & string ? {
367
+ [P in As]?: ToOneRelationWriteForAccessor<TSchema, T, ColumnDef> & {
368
+ disconnect?: true;
369
+ };
370
+ } : never : never : never>;
371
+ type ExtraInverseFkWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
372
+ [S in keyof TSchema & string]: TSchema[S]["_extras"][number] extends infer E ? E extends {
373
+ kind: "foreignKey";
374
+ _inverse: infer Inv extends string;
375
+ targetTable: infer T extends string;
376
+ } ? Inv extends "" ? never : T extends TAccessor ? {
377
+ [P in Inv]?: import("./nested-relation-types.js").ToManyRelationWrite<TSchema, TAccessor, S>;
378
+ } : never : never : never;
379
+ }[keyof TSchema & string]>;
320
380
  export type RelationWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
321
381
  [K in keyof TSchema[TAccessor]["_columns"]]: OutgoingFkRelationWhereEntry<TSchema, TAccessor, TSchema[TAccessor]["_columns"][K], K & string>;
322
382
  }[keyof TSchema[TAccessor]["_columns"]]> & MergeRelationUnion<{
323
383
  [K in keyof TSchema & string]: MergeRelationUnion<InverseRelationWhereEntriesForTable<TSchema, TAccessor, K>>;
324
384
  }[keyof TSchema & string]> & MergeRelationUnion<{
325
385
  [K in keyof TSchema & string]: K extends TAccessor ? never : IsThroughTable<TSchema[K]["_columns"]> extends true ? HasFkTo<TSchema, K, TAccessor> extends true ? JunctionM2MWhereEntry<TSchema, TAccessor, K> : never : never;
326
- }[keyof TSchema & string]> & InlineM2MWhereMap<TSchema, TAccessor> & InlineM2MInverseWhereMap<TSchema, TAccessor>;
386
+ }[keyof TSchema & string]> & InlineM2MWhereMap<TSchema, TAccessor> & InlineM2MInverseWhereMap<TSchema, TAccessor> & ExtraOutgoingFkWhereMap<TSchema, TAccessor> & ExtraInverseFkWhereMap<TSchema, TAccessor>;
327
387
  export type LogicalWhereInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
328
388
  AND?: WhereInput<TColumns, TSchema, TAccessor>[];
329
389
  OR?: WhereInput<TColumns, TSchema, TAccessor>[];
@@ -337,8 +397,9 @@ type DisconnectWriteForFk<C extends ColumnDef> = C extends FkBuilder ? C["_meta"
337
397
  disconnect?: true;
338
398
  } : Record<never, never> : Record<never, never>;
339
399
  type ToOneRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TFkColumn extends ColumnDef> = TAccessor extends keyof TSchema & string ? {
340
- connect?: ConnectInput<TSchema[TAccessor]["_columns"], TSchema>;
400
+ connect?: TableConnectInput<TSchema, TAccessor>;
341
401
  create?: InferInsertRow<TSchema[TAccessor]["_columns"], TSchema>;
402
+ connectOrCreate?: ConnectOrCreateItem<TSchema[TAccessor]["_columns"], TSchema>;
342
403
  } & DisconnectWriteForFk<TFkColumn> : never;
343
404
  type FkTargetAccessor<TSchema extends Record<string, TableDef>, TTarget extends string> = TTarget extends `${infer Acc}.${string}` ? Acc extends keyof TSchema & string ? Acc : never : TTarget extends keyof TSchema & string ? TTarget : never;
344
405
  type OutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = {
@@ -347,10 +408,10 @@ type OutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColum
347
408
  } ? FkTargetAccessor<TSchema, TColumns[K]["_meta"]["target"]> extends keyof TSchema & string ? FkRelationName<As, K> : never : never : never : never]?: TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? FkTargetAccessor<TSchema, TColumns[K]["_meta"]["target"]> extends infer Acc extends keyof TSchema & string ? ToOneRelationWriteForAccessor<TSchema, Acc, TColumns[K]> : never : never : never;
348
409
  };
349
410
  type M2MRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = TTargetAccessor extends keyof TSchema & string ? {
350
- connect?: ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
351
- disconnect?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
352
- delete?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
353
- set?: ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
411
+ connect?: TableConnectInput<TSchema, TTargetAccessor>[];
412
+ disconnect?: true | TableConnectInput<TSchema, TTargetAccessor>[];
413
+ delete?: true | TableConnectInput<TSchema, TTargetAccessor>[];
414
+ set?: TableConnectInput<TSchema, TTargetAccessor>[];
354
415
  connectOrCreate?: ConnectOrCreateItem<TSchema[TTargetAccessor]["_columns"], TSchema>[];
355
416
  } : never;
356
417
  type InlineM2MWriteRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends infer TTarget extends keyof TSchema & string ? {
@@ -359,7 +420,7 @@ type InlineM2MWriteRelationEntry<TSchema extends Record<string, TableDef>, C ext
359
420
  export type InlineM2MWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
360
421
  [K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MWriteRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
361
422
  }[keyof TSchema[TAccessor]["_columns"]]>;
362
- type InlineM2MInverseWriteRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
423
+ type InlineM2MInverseWriteRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, _K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
363
424
  [P in M2MInverseOf<TSourceAccessor, C>]?: M2MRelationWriteForAccessor<TSchema, TSourceAccessor>;
364
425
  } : never : never;
365
426
  export type InlineM2MInverseWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
@@ -377,8 +438,8 @@ type JunctionM2MRelationWriteMap<TSchema extends Record<string, TableDef>, TAcce
377
438
  [K in keyof TSchema & string]: K extends TAccessor ? never : [IsThroughTable<TSchema[K]["_columns"]>] extends [true] ? [HasFkTo<TSchema, K, TAccessor>] extends [true] ? JunctionM2MWriteEntry<TSchema, TAccessor, K> : never : never;
378
439
  }[keyof TSchema & string]>;
379
440
  /** Typed relation writes for create. */
380
- export type RelationCreateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
441
+ export type RelationCreateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & ExtraOutgoingFkWriteMap<TSchema, TAccessor> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & ExtraInverseFkWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
381
442
  /** Typed relation writes for update. */
382
- export type RelationUpdateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
443
+ export type RelationUpdateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & ExtraOutgoingFkWriteMap<TSchema, TAccessor> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & ExtraInverseFkWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
383
444
  export type { NestedCreateInput } from "./nested-relation-types.js";
384
445
  //# sourceMappingURL=relation-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/relation-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAExE,KAAK,SAAS,CAAC,CAAC,IACf,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACtC,CAAC,SAAS;IAAE,OAAO,EAAE,IAAI,CAAA;CAAE,GAC1B,IAAI,GACJ,KAAK,GACN,KAAK,CAAC;AASV,KAAK,WAAW,CAAC,CAAC,IACjB,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACtC,CAAC,SAAS;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B,IAAI,GACJ,KAAK,GACN,KAAK,CAAC;AAEV,KAAK,UAAU,CAAC,CAAC,IAChB,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACtC,CAAC,SAAS;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAE,GAC3C,KAAK,GACL,CAAC,SAAS;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE,GAC7B,KAAK,GACL,CAAC,SAAS;IAAE,YAAY,EAAE,OAAO,CAAA;CAAE,GAClC,KAAK,GACL,CAAC,SAAS;IAAE,QAAQ,EAAE,KAAK,CAAA;CAAE,GAC5B,IAAI,GACJ,KAAK,GACT,CAAC,SAAS,SAAS,GAClB,KAAK,GACL,KAAK,CAAC;AAEX,8DAA8D;AAC9D,MAAM,MAAM,cAAc,CACzB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE;KACF,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;CACzE,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,eAAe,CAC1B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;AAElE,6EAA6E;AAC7E,MAAM,MAAM,cAAc,CACzB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE;KACF,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACpE,KAAK,GACL,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACpC,KAAK,GACL,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;CAC/C,GAAG;KACF,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GACrE,CAAC,GACD,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;CACjD,CAAC;AAEF,0FAA0F;AAC1F,MAAM,MAAM,YAAY,CACvB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GACzC;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,GACd;KACC,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAC9C,QAAQ,CAAC,CAAC,CAAC,EACX,OAAO,CACP;CACD,CAAC;AAEJ,MAAM,MAAM,mBAAmB,CAC9B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE;IACH,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAClD,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,YAAY,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;KACrE,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc;CAClD,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;KACrE,CAAC,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACvE,CAAC,SAAS;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,GAC1B,CAAC,GACD,KAAK,GACN,KAAK;CACR,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC;AAE3B,MAAM,MAAM,iBAAiB,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IACvE,YAAY,CAAC,QAAQ,CAAC,CAAC;AAExB,MAAM,MAAM,WAAW,CACtB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,QAAQ,SAAS,YAAY,CAAC,QAAQ,CAAC,EACvC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAChE,IAAI,CACP,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,EAC/B,CAAC,MAAM,QAAQ,GAAG,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,GAC9D,YAAY,CAAC,QAAQ,CAAC,CACxB,CAAC;AAEF,iEAAiE;AACjE,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAC;AAEtE,wFAAwF;AACxF,KAAK,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAExC,gGAAgG;AAChG,KAAK,kBAAkB,CAAC,CAAC,IAAI;KAC3B,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS;SACrD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;KAClB,GACE,CAAC,GACD,KAAK;CACR,CAAC;AAEF,+EAA+E;AAC/E,KAAK,yBAAyB,CAAC,CAAC,IAAI;KAClC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,OAAO,CACnD,CAAC,EACD;SAAG,CAAC,IAAI,CAAC,GAAG,OAAO;KAAE,CACrB,CAAC,CAAC,CAAC;CACJ,CAAC;AAEF,KAAK,QAAQ,CAAC,CAAC,IACd,CAAC,SAAS,SAAS,CAClB,MAAM,OAAO,EACb,MAAM,GAAG,EACT,MAAM,QAAQ,EACd,MAAM,OAAO,EACb,MAAM,SAAS,CACf,GACE,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,GAClD,KAAK,CAAC;AAEV,wEAAwE;AACxE,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,GACxD,CAAC,GACD,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,GACxB,CAAC,GACD,CAAC,CAAC;AAEN,+EAA+E;AAC/E,KAAK,WAAW,GACb,MAAM,GACN,QAAQ,GACR,SAAS,GACT,OAAO,GACP,UAAU,GACV,cAAc,GACd,UAAU,GACV,OAAO,GACP,MAAM,GACN,MAAM,GACN,OAAO,GACP,QAAQ,GACR,OAAO,CAAC;AAEX,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAChC,SAAS,CAAC,CAAC,CAAC,SAAS,WAAW,GAC7B,CAAC,GACD,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,GACzB,GAAG,CAAC,IAAI,GACR,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,GACxB,GAAG,CAAC,GAAG,GACP,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,GACxB,GAAG,CAAC,GAAG,GACP,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,GACzB,GAAG,CAAC,IAAI,GACR,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,GACzB,GAAG,CAAC,IAAI,GACR,CAAC,SAAS,GAAG,MAAM,CAAC,KAAK,GACxB,GAAG,CAAC,GAAG,GACP,CAAC,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,GACzC,CAAC,GACD,CAAC,SAAS,GAAG,MAAM,CAAC,GAAG,GACtB,CAAC,GACD,CAAC,CAAC;AAEd,MAAM,MAAM,cAAc,CACzB,EAAE,SAAS,MAAM,EACjB,CAAC,SAAS,MAAM,IACb,MAAM,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AAEzE,MAAM,MAAM,aAAa,CACxB,GAAG,SAAS,MAAM,EAClB,eAAe,SAAS,MAAM,EAC9B,OAAO,SAAS,OAAO,IACpB,MAAM,SAAS,GAAG,GACnB,OAAO,SAAS,IAAI,GACnB,WAAW,CAAC,eAAe,CAAC,GAC5B,eAAe,GAChB,GAAG,SAAS,EAAE,GACb,OAAO,SAAS,IAAI,GACnB,WAAW,CAAC,eAAe,CAAC,GAC5B,eAAe,GAChB,GAAG,CAAC;AAER,KAAK,aAAa,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;KAC/D,CAAC,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,GAAG,CAAC,GAAG,KAAK;CAChE,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC;AAE3B,KAAK,gBAAgB,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAC/D,aAAa,CAAC,QAAQ,CAAC,SAAS,MAAM,KAAK,SAAS,MAAM,QAAQ,GAAG,MAAM,GACxE,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,MAAM,MAAM,SAC5D,MAAM,QAAQ,GAAG,MAAM,GACtB,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,SAAS,KAAK,GAC7D,IAAI,GACJ,KAAK,GACN,KAAK,GACN,KAAK,CAAC;AAEV,KAAK,kBAAkB,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;KACpE,CAAC,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,GACvE,CAAC,SAAS;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,GAC1B,CAAC,GACD,CAAC,SAAS;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GACvB,CAAC,GACD,KAAK,GACP,KAAK;CACR,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC;AAE3B,oFAAoF;AACpF,KAAK,cAAc,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;IACjE,kBAAkB,CAAC,QAAQ,CAAC;CAC5B,SAAS,CAAC,KAAK,CAAC,GACd,gBAAgB,CAAC,QAAQ,CAAC,GAC1B,KAAK,CAAC;AAET,0EAA0E;AAC1E,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,QAAQ,SAAS,MAAM,IACpB;KACF,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,QAAQ,GACrE,CAAC,GACD,KAAK;CACR,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC;AAE1B,gFAAgF;AAChF,KAAK,uBAAuB,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IAEhB,QAAQ,CAAC,CAAC,CAAC,SAAS;IACnB,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC;IACrC,EAAE,EAAE,MAAM,EAAE,SAAS,MAAM,CAAC;CAC5B,GACE,OAAO,SAAS,GAAG,MAAM,GAAG,IAAI,MAAM,EAAE,GACvC,GAAG,SAAS,MAAM,OAAO,GAAG,MAAM,GACjC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GACpD,KAAK,GACL;KAAG,CAAC,IAAI,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG;CAAE,GACtC,KAAK,GACN,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GACxD,KAAK,GACL;KAAG,CAAC,IAAI,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO;CAAE,GAC1C,KAAK,GACP,KAAK,CAAC;AAEV,MAAM,MAAM,mBAAmB,CAC9B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IACvC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,QAAQ,GAAG,uBAAuB,CAC7C,OAAO,EACP,QAAQ,CAAC,CAAC,CAAC,EACX,CAAC,GAAG,MAAM,CACV;CACD,CAAC,MAAM,QAAQ,CAAC,CACjB,CAAC;AAEF,mGAAmG;AACnG,MAAM,MAAM,6BAA6B,CACxC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IAEhB,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GAC9D,KAAK,GACL,QAAQ,CAAC,CAAC,CAAC,SAAS;IACnB,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,CAAC;IAClC,MAAM,EAAE,MAAM,OAAO,SAAS,OAAO,CAAC;CACtC,GACA,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,eAAe,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,GAC1D;KACC,CAAC,IAAI,aAAa,CAClB,GAAG,EACH,eAAe,EACf,OAAO,CACP,GAAG,eAAe;CACnB,GACA,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,GAClC;KACC,CAAC,IAAI,aAAa,CAClB,GAAG,EACH,eAAe,EACf,OAAO,CACP,GAAG,eAAe;CACnB,GACA,KAAK,GACP,KAAK,CAAC;AAEX,MAAM,MAAM,8BAA8B,CACzC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C;KACF,CAAC,IAAI,aAAa,CAClB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CACpC,GAAG,6BAA6B,CAChC,OAAO,EACP,SAAS,EACT,eAAe,EACf,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACvC,CAAC,CACD;CACD,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAEvD,MAAM,MAAM,gBAAgB,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,yBAAyB,CAC5B;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,yBAAyB,CACvD,8BAA8B,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CACrD;CACD,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAQF,KAAK,uBAAuB,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,OAAO,SAAS,MAAM,EACtB,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,IAAI,MAAM,EAAE,CAAC,GAC7C,IAAI,GACJ,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,GAC5B,IAAI,GACJ,KAAK,CAAC;AAEV,KAAK,aAAa,CACjB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,EAC/C,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,EAC/C,MAAM,SAAS,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,IAEnE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS;IAC/D,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC;CACrC,GACE,uBAAuB,CACvB,OAAO,EACP,OAAO,EACP,gBAAgB,CAChB,SAAS,IAAI,GACZ,KAAK,GACL,OAAO,SAAS,GAAG,MAAM,GAAG,IAAI,MAAM,EAAE,GACvC,GAAG,SAAS,MAAM,OAAO,GAAG,MAAM,GACjC,GAAG,GACH,KAAK,GACN,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrC,OAAO,GACP,KAAK,GACR,KAAK,CAAC;AAEV,qEAAqE;AACrE,KAAK,gBAAgB,CACpB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,IAC5C,kBAAkB,CACrB;KACE,CAAC,IAAI,aAAa,CAClB,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CACrC,GAAG,aAAa,CAChB,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,CAAC,CACD,SAAS,MAAM,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,GAClD;SAAG,CAAC,IAAI,MAAM,GAAG,MAAM;KAAE,GACzB,KAAK;CACR,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CACvD,CAAC;AAEF,KAAK,cAAc,CAClB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,EAC/C,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC;KACF,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,QAAQ,CACpE,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CACxC,SAAS;QAAE,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAA;KAAE,GAC/C,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,CAAC,SAAS,IAAI,GAChE,IAAI,GACJ,KAAK,GACN,KAAK;CACR,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAExD,KAAK,OAAO,CACX,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,EAC/C,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IAExC,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,SAAS,CAAC,SAAS,MAAM,CAAC,GACjE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAClB,KAAK,GACL,IAAI,GACL,KAAK,CAAC;AAEV,MAAM,MAAM,oBAAoB,CAC/B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,SAAS,SAAS,GAC/C,KAAK,GACL,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GAClD,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,SAAS,IAAI,GAC1C,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,GACvC,KAAK,GACN,KAAK;CACT,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAEF,KAAK,WAAW,CAAC,CAAC,IACjB,CAAC,SAAS,eAAe,CAAC,MAAM,OAAO,EAAE,MAAM,IAAI,EAAE,MAAM,KAAK,CAAC,GAC9D,OAAO,GACP,KAAK,CAAC;AAEV,wFAAwF;AACxF,KAAK,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,IACjC,CAAC,SAAS,eAAe,CAAC,MAAM,QAAQ,EAAE,MAAM,GAAG,EAAE,MAAM,KAAK,CAAC,GAC9D,GAAG,SAAS,EAAE,GACb,CAAC,GACD,GAAG,GACJ,CAAC,CAAC;AAEN,6FAA6F;AAC7F,KAAK,YAAY,CAAC,OAAO,SAAS,MAAM,EAAE,CAAC,IAC1C,CAAC,SAAS,eAAe,CAAC,MAAM,QAAQ,EAAE,MAAM,IAAI,EAAE,MAAM,IAAI,CAAC,GAC9D,IAAI,SAAS,EAAE,GACd,OAAO,GACP,IAAI,GACL,OAAO,CAAC;AAEZ,KAAK,sBAAsB,CAC1B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GAClE;KAAG,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO;CAAE,GACnC,KAAK,GACN,KAAK,CAAC;AAET,qFAAqF;AACrF,MAAM,MAAM,kBAAkB,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,yBAAyB,CAC5B;KACE,CAAC,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,sBAAsB,CAClE,OAAO,EACP,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CACV;CACD,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CACvC,CAAC;AAEF,KAAK,6BAA6B,CACjC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,SAAS,GAC/B;KAAG,CAAC,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC,GAAG,eAAe;CAAE,GAC5D,KAAK,GACN,KAAK,CAAC;AAET,+FAA+F;AAC/F,MAAM,MAAM,yBAAyB,CACpC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,yBAAyB,CAC5B;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG;SAC7B,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,6BAA6B,CACjE,OAAO,EACP,SAAS,EACT,CAAC,EACD,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACzB,CAAC,GAAG,MAAM,CACV;KACD,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;CAC/B,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAEF,8DAA8D;AAC9D,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,GAC/D,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,GACpC,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,GACxC,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,GACtC,yBAAyB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAE/C,MAAM,MAAM,WAAW,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IACjE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AAE5B,4DAA4D;AAC5D,MAAM,MAAM,cAAc,CACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,IACnE,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;AAErD,KAAK,aAAa,CACjB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC;AAEzC,sFAAsF;AACtF,MAAM,MAAM,WAAW,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAC/D,SAAS,WAAW,CAAC,QAAQ,CAAC,EAAE,GAChC,MAAM,CAAC;KAAG,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI;CAAE,CAAC,CAAC;AAEnD,4EAA4E;AAC5E,MAAM,MAAM,SAAS,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAC/D,WAAW,CAAC,QAAQ,CAAC,CAAC;AAEvB,8FAA8F;AAC9F,MAAM,MAAM,mBAAmB,CAC9B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C;IACH,MAAM,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAC9D,KAAK,CAAC,EAAE,UAAU,CACjB,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,EACvC,OAAO,EACP,eAAe,CACf,CAAC;IACF,OAAO,CAAC,EAAE,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAC9C,kFAAkF;IAClF,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,WAAW,CACtB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,EACtE,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IAEtC,OAAO,GACP,mBAAmB,CACnB,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,GAC5C,MAAM,OAAO,GACb,MAAM,CACN,CAAC;AAEL;;;GAGG;AACH,MAAM,MAAM,YAAY,CACvB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,MAAM,CACT;KACE,CAAC,IAAI,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,GACvD,WAAW,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,GAClC,SAAS;CACZ,GAAG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;CAChD,CACD,CAAC;AAEF,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,EACtE,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IAEtC,IAAI,GACJ;IACA,KAAK,CAAC,EAAE,UAAU,CACjB,aAAa,CACZ,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,GAC5C,MAAM,OAAO,GACb,MAAM,CACP,EACD,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,GAC5C,MAAM,OAAO,GACb,MAAM,CACP,CAAC;CACD,CAAC;AAEL,MAAM,MAAM,kBAAkB,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,MAAM,CAAC;KACT,CAAC,IAAI,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAChD,MAAM,CAAC,CAAC,EAAE,iBAAiB,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC;CACnD,CAAC,CAAC;AAEH,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,SAAS,WAAW,CAAC,EAAE,GACpE,CAAC,GACD,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK;CAAE,CAAC,MAAM,CAAC,CAAC,GAC1D,KAAK,CAAC;AAEV,uFAAuF;AACvF,MAAM,MAAM,aAAa,CACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,CAAC,GAAG,SAAS,IACV,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzE,MAAM,MAAM,WAAW,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CACrE,GAAG,EACH,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CACzB,CAAC;AAEF,MAAM,MAAM,SAAS,CAAC,GAAG,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CACnE,GAAG,EACH,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CACzB,CAAC;AAEF,qDAAqD;AACrD,MAAM,MAAM,UAAU,CAAC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI;KACnE,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS;QACtD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;KACxB,GACE,CAAC,SAAS;QAAE,MAAM,EAAE,IAAI,CAAA;KAAE,GACzB,CAAC,GACD,KAAK,GACN,KAAK;CACR,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE9B,6GAA6G;AAC7G,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,SAAS,WAAW,GAAG,KAAK,IAAI,CAAC,SAC7D,IAAI,GACJ,SAAS,GACT,CAAC,GACD,CAAC,SAAS,SAAS,CAAC,MAAM,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,GAChE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,GAC9B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GACb,CAAC,CAAC;AAEP,2FAA2F;AAC3F,MAAM,MAAM,YAAY,CACvB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACjC,IAAI,GAAG;IACV,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,GAAG,SAAS,EAChE,IAAI,CAAC,EAAE,CAAC,GACN,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;CACjD,CAAC;AAEF,KAAK,mBAAmB,CACvB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C,eAAe,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;AAEnE,KAAK,qBAAqB,CACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,QAAQ,IACL,QAAQ,SAAS;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,cAAc,CAAC;CACrC,GACE,WAAW,CACX,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAC7D,CAAC,CACD,GACA,CAAC,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,kBAAkB,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,GAChD,WAAW,CAAC,GACf,QAAQ,SAAS;IAAE,aAAa,EAAE,IAAI,CAAA;CAAE,GACvC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,GAC7D,eAAe,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;AAEnE,MAAM,MAAM,0BAA0B,CACrC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,EACtE,QAAQ,IACL,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,GACvE,CAAC,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;IACxE,KAAK;CACL,GACC,KAAK,GACL,WAAW,CACV,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,CAChD,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrD,QAAQ,SAAS;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;CACxB,GACC,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,GACjD,QAAQ,SAAS,IAAI,GACpB,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,GACrC,QAAQ,SAAS,KAAK,GAAG,SAAS,GACjC,KAAK,GACL,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,GACxC,KAAK,GACP,KAAK,CAAC;AAET,KAAK,cAAc,CAClB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,SAAS,SAAS,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,IACnE,SAAS,SAAS,MAAM,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,GAC7D,IAAI,GACJ,SAAS,SAAS,MAAM,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,GAC/D,IAAI,GACJ,SAAS,SAAS,MAAM,kBAAkB,CAAC,OAAO,EAAE,SAAS,CAAC,GAC7D,IAAI,GACJ,SAAS,SAAS,MAAM,yBAAyB,CAChD,OAAO,EACP,SAAS,CACT,GACA,IAAI,GACJ,KAAK,CAAC;AAEZ,KAAK,kBAAkB,CACtB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,CAAC,IACE;KACF,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,MAAM,GAAG;QACtE,WAAW,CAAC,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;KACrD,SAAS,CAAC,KAAK,CAAC,GACd,KAAK,GACL,WAAW,CACV,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CACxC,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrD,0BAA0B,CAC1B,OAAO,EACP,SAAS,EACT,CAAC,EACD,CAAC,CAAC,CAAC,CAAC,CACJ,SAAS,MAAM,GAAG,GACjB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,GACpB,KAAK,GACL,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,GACjD,GAAG,EAAE,GACL,GAAG,GAAG,IAAI,GACZ,KAAK,GACN,KAAK;CACT,CAAC;AAEF,KAAK,gBAAgB,CACpB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,CAAC,IACE,CAAC,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC9B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC;IAAE,MAAM,EAAE;SAAG,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM;KAAE,CAAA;CAAE,GAC/C,WAAW,GACZ,WAAW,CAAC;AAEf,MAAM,MAAM,eAAe,CAC1B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,CAAC,EACD,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe,CACtD,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAC9B,OAAO,CACP,IACE,CAAC,SAAS,SAAS,GACpB,KAAK,GACL,MAAM,CACN,KAAK,GACJ,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,GACzC,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CACxC,CAAC;AAEJ,sFAAsF;AACtF,MAAM,MAAM,eAAe,CAC1B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,CAAC,EACD,CAAC,GAAG,SAAS,EACb,CAAC,GAAG,SAAS,EACb,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe,CAC5D,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAC9B,OAAO,CACP,EACD,aAAa,SAAS,OAAO,GAAG,KAAK,IAClC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACxB,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACtB,eAAe,CACf,OAAO,EACP,SAAS,EACT,CAAC,EACD,aAAa,SAAS,IAAI,GACvB,WAAW,GACX,IAAI,CACJ,WAAW,EACX,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAC1C,CACH,GACA,eAAe,CACf,OAAO,EACP,SAAS,EACT,CAAC,EACD,SAAS,CACR,aAAa,SAAS,IAAI,GACvB,WAAW,GACX,IAAI,CACJ,WAAW,EACX,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAC1C,EACH,CAAC,CACD,CACD,GACD,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACtB,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GACnE,KAAK,CAAC;AAEV,kFAAkF;AAClF,KAAK,iBAAiB,CACrB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACnE,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,OAAO,GAAG,MAAM,IAC9D;IACH,GAAG,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;IACxD,EAAE,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;IACvD,GAAG,CAAC,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;CACtD,GAAG,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAExC,KAAK,yBAAyB,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C;IACH,IAAI,CAAC,EAAE,iBAAiB,CACvB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;IACF,KAAK,CAAC,EAAE,iBAAiB,CACxB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;IACF,IAAI,CAAC,EAAE,iBAAiB,CACvB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;CACF,CAAC;AAEF,MAAM,MAAM,kBAAkB,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C;IACH,IAAI,CAAC,EAAE,UAAU,CAChB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;IACF,KAAK,CAAC,EAAE,UAAU,CACjB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;IACF,IAAI,CAAC,EAAE,UAAU,CAChB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,EACP,eAAe,CACf,CAAC;CACF,CAAC;AAEF,KAAK,4BAA4B,CAChC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IAEhB,QAAQ,CAAC,CAAC,CAAC,SAAS;IACnB,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC;IACrC,EAAE,EAAE,MAAM,EAAE,SAAS,MAAM,CAAC;CAC5B,GACE,OAAO,SAAS,GAAG,MAAM,GAAG,IAAI,MAAM,EAAE,GACvC,GAAG,SAAS,MAAM,OAAO,GAAG,MAAM,GACjC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GACpD,KAAK,GACL;KACC,CAAC,IAAI,cAAc,CACnB,EAAE,EACF,CAAC,CACD,CAAC,CAAC,EAAE,uBAAuB,CAC3B,OAAO,EACP,OAAO,EACP,SAAS,CACT,SAAS,IAAI,GACX,iBAAiB,CACjB,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EACxB,OAAO,EACP,GAAG,CACH,GACA,UAAU,CACV,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,EACxB,OAAO,EACP,GAAG,CACH;CACH,GACD,KAAK,GACN,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GACxD,KAAK,GACL;KACC,CAAC,IAAI,cAAc,CACnB,EAAE,EACF,CAAC,CACD,CAAC,CAAC,EAAE,uBAAuB,CAC3B,OAAO,EACP,OAAO,EACP,SAAS,CACT,SAAS,IAAI,GACX,iBAAiB,CACjB,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,EAC5B,OAAO,EACP,OAAO,CACP,GACA,UAAU,CACV,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,EAC5B,OAAO,EACP,OAAO,CACP;CACH,GACD,KAAK,GACP,KAAK,CAAC;AAEV,KAAK,yBAAyB,CAC7B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IAEhB,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GAC9D,KAAK,GACL,QAAQ,CAAC,CAAC,CAAC,SAAS;IACnB,MAAM,EAAE,MAAM,OAAO,SAAS,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,CAAC;IAClC,MAAM,EAAE,MAAM,OAAO,SAAS,OAAO,CAAC;CACtC,GACA,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,eAAe,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,GAC1D;KACC,CAAC,IAAI,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE;QACrD,eAAe;KACf,SAAS,CAAC,eAAe,CAAC,GACxB,yBAAyB,CACzB,OAAO,EACP,eAAe,CACf,GACA,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC;CAC/C,GACA,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,GAClC;KACC,CAAC,IAAI,aAAa,CAClB,GAAG,EACH,eAAe,EACf,OAAO,CACP,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC,eAAe,CAAC,GAC7C,yBAAyB,CACzB,OAAO,EACP,eAAe,CACf,GACA,kBAAkB,CAAC,OAAO,EAAE,eAAe,CAAC;CAC/C,GACA,KAAK,GACP,KAAK,CAAC;AAEX,KAAK,qBAAqB,CACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,IAC5C,kBAAkB,CACrB;KACE,CAAC,IAAI,aAAa,CAClB,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CACrC,GAAG,aAAa,CAChB,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,CAAC,CACD,SAAS,MAAM,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,GAClD;SAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC;KAAE,GACvD,KAAK;CACR,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CACvD,CAAC;AAEF,KAAK,mCAAmC,CACvC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C;KACF,CAAC,IAAI,aAAa,CAClB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CACpC,GAAG,yBAAyB,CAC5B,OAAO,EACP,SAAS,EACT,eAAe,EACf,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACvC,CAAC,CACD;CACD,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAEvD,KAAK,2BAA2B,CAC/B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GAClE;KACC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC;CAC7D,GACA,KAAK,GACN,KAAK,CAAC;AAET,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,2BAA2B,CACvE,OAAO,EACP,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CACV;CACD,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CACvC,CAAC;AAEF,KAAK,kCAAkC,CACtC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,SAAS,GAC/B;KACC,CAAC,IAAI,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAC3D,OAAO,EACP,eAAe,CACf;CACD,GACA,KAAK,GACN,KAAK,CAAC;AAET,MAAM,MAAM,wBAAwB,CACnC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,kBAAkB,CAChD;SACE,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,kCAAkC,CACtE,OAAO,EACP,SAAS,EACT,CAAC,EACD,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACzB,CAAC,GAAG,MAAM,CACV;KACD,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAC/B;CACD,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAEF,MAAM,MAAM,gBAAgB,CAC3B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,4BAA4B,CACxE,OAAO,EACP,SAAS,EACT,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CACV;CACD,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CACvC,GACA,kBAAkB,CACjB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,kBAAkB,CAChD,mCAAmC,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAC1D;CACD,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,GACD,kBAAkB,CACjB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,SAAS,SAAS,GAC/C,KAAK,GACL,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,SAAS,IAAI,GAClD,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,SAAS,IAAI,GAC1C,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,GAC5C,KAAK,GACN,KAAK;CACT,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,GACD,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GACrC,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAE9C,MAAM,MAAM,iBAAiB,CAC5B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC;IACH,GAAG,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;IACjD,EAAE,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;IAChD,GAAG,CAAC,EAAE,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;CAC/C,CAAC;AAEF,gEAAgE;AAChE,MAAM,MAAM,UAAU,CACrB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAC1C,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACnE,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,OAAO,GAAG,MAAM,IAC9D,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAC,GAClD,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,GACnC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAEtC,KAAK,oBAAoB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,SAAS,SAAS,GACjE,CAAC,CAAC,OAAO,CAAC,SAAS;IAAE,QAAQ,EAAE,IAAI,CAAA;CAAE,GACpC;IAAE,UAAU,CAAC,EAAE,IAAI,CAAA;CAAE,GACrB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GACrB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAExB,KAAK,6BAA6B,CACjC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,SAAS,SAAS,SAAS,IACxB,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,GACzC;IACA,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;CACjE,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAClC,KAAK,CAAC;AAET,KAAK,gBAAgB,CACpB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,OAAO,SAAS,MAAM,IACnB,OAAO,SAAS,GAAG,MAAM,GAAG,IAAI,MAAM,EAAE,GACzC,GAAG,SAAS,MAAM,OAAO,GAAG,MAAM,GACjC,GAAG,GACH,KAAK,GACN,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GACrC,OAAO,GACP,KAAK,CAAC;AAEV,KAAK,0BAA0B,CAC9B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IACvC;KACF,CAAC,IAAI,MAAM,QAAQ,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,GAC3D,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,GAClC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,EAAE,SAAS,MAAM,CAAA;KAAE,GAC3D,gBAAgB,CAChB,OAAO,EACP,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAC9B,SAAS,MAAM,OAAO,GAAG,MAAM,GAC9B,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,GACrB,KAAK,GACN,KAAK,GACN,KAAK,GACN,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,GACtC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,MAAM,GAClC,gBAAgB,CAChB,OAAO,EACP,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAC9B,SAAS,MAAM,GAAG,SAAS,MAAM,OAAO,GAAG,MAAM,GAChD,6BAA6B,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,GACxD,KAAK,GACN,KAAK,GACN,KAAK;CACR,CAAC;AAEF,KAAK,2BAA2B,CAC/B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,IAC3C,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,GAC/C;IACA,OAAO,CAAC,EAAE,YAAY,CACrB,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,CACP,EAAE,CAAC;IACJ,UAAU,CAAC,EACR,IAAI,GACJ,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IACjE,MAAM,CAAC,EACJ,IAAI,GACJ,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IACjE,GAAG,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IACpE,eAAe,CAAC,EAAE,mBAAmB,CACpC,OAAO,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,EACpC,OAAO,CACP,EAAE,CAAC;CACJ,GACA,KAAK,CAAC;AAET,KAAK,2BAA2B,CAC/B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,MAAM,OAAO,SAAS,MAAM,OAAO,GAAG,MAAM,GAClE;KACC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,2BAA2B,CACnD,OAAO,EACP,OAAO,CACP;CACD,GACA,KAAK,GACN,KAAK,CAAC;AAET,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAAG,2BAA2B,CACvE,OAAO,EACP,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACjC,CAAC,GAAG,MAAM,CACV;CACD,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,CACvC,CAAC;AAEF,KAAK,kCAAkC,CACtC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,eAAe,SAAS,MAAM,OAAO,GAAG,MAAM,EAC9C,CAAC,SAAS,SAAS,EACnB,CAAC,SAAS,MAAM,IACb,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,GAC9B,WAAW,CAAC,CAAC,CAAC,SAAS,SAAS,GAC/B;KACC,CAAC,IAAI,YAAY,CACjB,eAAe,EACf,CAAC,CACD,CAAC,CAAC,EAAE,2BAA2B,CAAC,OAAO,EAAE,eAAe,CAAC;CAC1D,GACA,KAAK,GACN,KAAK,CAAC;AAET,MAAM,MAAM,wBAAwB,CACnC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,kBAAkB,CAChD;SACE,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,kCAAkC,CACtE,OAAO,EACP,SAAS,EACT,CAAC,EACD,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACzB,CAAC,GAAG,MAAM,CACV;KACD,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAC/B;CACD,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAEF,KAAK,0BAA0B,CAC9B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,EAC/C,MAAM,SAAS,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,IAEnE,aAAa,CACZ,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,MAAM,CACN,SAAS,MAAM,MAAM,SAAS,MAAM,OAAO,GAAG,MAAM,GAClD;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC;CAAE,GAChE,KAAK,CAAC;AAEV,KAAK,qBAAqB,CACzB,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,EACxC,gBAAgB,SAAS,MAAM,OAAO,GAAG,MAAM,IAC5C,kBAAkB,CACrB;KACE,CAAC,IAAI,aAAa,CAClB,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CACrC,GAAG,0BAA0B,CAAC,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAC;CACvE,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CACvD,CAAC;AAEF,KAAK,2BAA2B,CAC/B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,kBAAkB,CACrB;KACE,CAAC,IAAI,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,SAAS,SAAS,GAC/C,KAAK,GACL,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GACtD,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAC9C,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,GAC5C,KAAK,GACN,KAAK;CACT,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,CACzB,CAAC;AAEF,wCAAwC;AACxC,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,MAAM,CACT,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,GAClE,OAAO,4BAA4B,EAAE,uBAAuB,CAC3D,OAAO,EACP,SAAS,CACT,GACD,2BAA2B,CAAC,OAAO,EAAE,SAAS,CAAC,GAC/C,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GACrC,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC,CAC7C,CAAC;AAEF,wCAAwC;AACxC,MAAM,MAAM,iBAAiB,CAC5B,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACxC,SAAS,SAAS,MAAM,OAAO,GAAG,MAAM,IACrC,MAAM,CACT,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,GAClE,OAAO,4BAA4B,EAAE,uBAAuB,CAC3D,OAAO,EACP,SAAS,CACT,GACD,2BAA2B,CAAC,OAAO,EAAE,SAAS,CAAC,GAC/C,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,GACrC,wBAAwB,CAAC,OAAO,EAAE,SAAS,CAAC,CAC7C,CAAC;AAEF,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/relation-types.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,11 @@
1
1
  import type { ColumnBuilder, ColumnMeta } from "./column.js";
2
2
  import type { TableDef } from "./table.js";
3
- /** Foreign-key `ON DELETE` action passed to {@link fk}.onDelete. */
3
+ /** Foreign-key `ON DELETE` / `ON UPDATE` action passed to {@link fk}. */
4
4
  export type OnDeleteAction = "cascade" | "restrict" | "set null" | "no action";
5
+ /** Same actions as {@link OnDeleteAction}, for `ON UPDATE`. */
6
+ export type OnUpdateAction = OnDeleteAction;
7
+ /** `DEFERRABLE INITIALLY …` timing (`NOT DEFERRABLE` when omitted). */
8
+ export type FkDeferrable = "immediate" | "deferred";
5
9
  /** Internal metadata for a foreign-key column builder. */
6
10
  export type FkMeta<TTarget extends string = string, TAs extends string = string, TInverse extends string = string, TUnique extends boolean = boolean, TNullable extends boolean = boolean> = Omit<ColumnMeta, "kind" | "unique" | "nullable"> & {
7
11
  kind: "fk";
@@ -12,6 +16,8 @@ export type FkMeta<TTarget extends string = string, TAs extends string = string,
12
16
  as: TAs;
13
17
  inverse: TInverse;
14
18
  onDelete?: OnDeleteAction;
19
+ onUpdate?: OnUpdateAction;
20
+ deferrable?: FkDeferrable;
15
21
  unique: TUnique;
16
22
  nullable: TNullable;
17
23
  };
@@ -44,6 +50,10 @@ export interface FkBuilder<TTarget extends string = string, TAs extends string =
44
50
  inverse<TNext extends string>(name: TNext): FkBuilder<TTarget, TAs, TNext, TUnique, TNullable>;
45
51
  /** `ON DELETE` action for the foreign-key constraint. */
46
52
  onDelete(action: OnDeleteAction): FkBuilder<TTarget, TAs, TInverse, TUnique, TNullable>;
53
+ /** `ON UPDATE` action for the foreign-key constraint. */
54
+ onUpdate(action: OnUpdateAction): FkBuilder<TTarget, TAs, TInverse, TUnique, TNullable>;
55
+ /** Mark the constraint `DEFERRABLE` (Postgres and SQLite). */
56
+ deferrable(timing?: FkDeferrable): FkBuilder<TTarget, TAs, TInverse, TUnique, TNullable>;
47
57
  }
48
58
  /** Accessor target (`users` or `users.id`) for an owned column reference. */
49
59
  type ColumnTargetOf<C extends ColumnBuilder<unknown>> = C extends ColumnBuilder<unknown, infer M> ? M extends {
@@ -1 +1 @@
1
- {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../src/schema/relation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../src/schema/relation.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,12 @@ export function fk(target) {
72
72
  onDelete(action) {
73
73
  return withMeta({ ...next, onDelete: action });
74
74
  },
75
+ onUpdate(action) {
76
+ return withMeta({ ...next, onUpdate: action });
77
+ },
78
+ deferrable(timing = "immediate") {
79
+ return withMeta({ ...next, deferrable: timing });
80
+ },
75
81
  };
76
82
  }
77
83
  return withMeta(meta);
@@ -1 +1 @@
1
- {"version":3,"file":"relation.js","sourceRoot":"","sources":["../../src/schema/relation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AA6EtD,SAAS,UAAU,CAAC,KAAc;IACjC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,YAAY,IAAI,KAAK;QACrB,UAAU,IAAI,KAAK,CACnB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,OAAO,IAAI,KAAK;QAChB,OAAO,IAAI,KAAK,CAChB,CAAC;AACH,CAAC;AAOD,SAAS,mBAAmB,CAAC,MAAe;IAC3C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrC,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC5C,CAAC;IACD,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IACrD,CAAC;IACD,MAAM,WAAW,CAChB,eAAe,CAAC,cAAc,EAC9B,+BAA+B,MAAM,CAAC,MAAM,CAAC,EAAE,CAC/C,CAAC;AACH,CAAC;AA8BD,MAAM,UAAU,EAAE,CACjB,MAAkD;IAElD,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,IAAI,GAAkD;QAC3D,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACnD,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;YACzB,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;YAC7C,CAAC,CAAC,EAAE,CAAC;QACN,EAAE,EAAE,EAAE;QACN,OAAO,EAAE,EAAE;KACX,CAAC;IAEF,SAAS,QAAQ,CAMhB,IAAuC;QAEvC,OAAO;YACN,KAAK,EAAE,IAAqB;YAC5B,KAAK,EAAE,IAAI;YACX,OAAO;gBACN,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/C,CAAC;YACD,MAAM;gBACL,OAAO,QAAQ,CAAsB,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,OAAO;gBACN,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,KAAK;gBACJ,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3C,CAAC;YACD,MAAM;gBACL,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5C,CAAC;YACD,GAAG,CAAC,IAAY;gBACf,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,CAAC;YACD,EAAE,CAAC,IAAY;gBACd,OAAO,QAAQ,CAAuB,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,CAAuB,IAAW;gBACxC,OAAO,QAAQ,CAAqB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,QAAQ,CAAC,MAAsB;gBAC9B,OAAO,QAAQ,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;YAChD,CAAC;SACD,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,uBAAuB,CACtC,IAAY,EACZ,MAAgC;IAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CACtC,EAAE,CAAC,CAAC,CAAC,CAAC;QACP,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,WAAW,CAChB,eAAe,CAAC,sBAAsB,EACtC,8DAA8D;gBAC7D,kDAAkD,CACnD,CAAC;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,WAAW,CAChB,eAAe,CAAC,cAAc,EAC9B,yFAAyF,CACzF,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAC3C,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CACpC,EAAE,CAAC,CAAC,CAAC,CAAC;QACP,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,WAAW,CAChB,eAAe,CAAC,sBAAsB,EACtC,8DAA8D,CAC9D,CAAC;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;QAChB,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IAClC,CAAC;IACD,OAAO;QACN,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QACnC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;KAClC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"relation.js","sourceRoot":"","sources":["../../src/schema/relation.ts"],"names":[],"mappings":"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"}