@c9up/atlas 0.2.0 → 0.2.1

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 (234) hide show
  1. package/README.md +8 -0
  2. package/db.darwin-arm64.node +0 -0
  3. package/db.darwin-x64.node +0 -0
  4. package/db.linux-arm64-gnu.node +0 -0
  5. package/db.linux-x64-gnu.node +0 -0
  6. package/db.win32-x64-msvc.node +0 -0
  7. package/dist/AtlasProvider.d.ts +60 -7
  8. package/dist/AtlasProvider.d.ts.map +1 -1
  9. package/dist/AtlasProvider.js +204 -38
  10. package/dist/AtlasProvider.js.map +1 -1
  11. package/dist/BaseEntity.d.ts +17 -0
  12. package/dist/BaseEntity.d.ts.map +1 -1
  13. package/dist/BaseEntity.js.map +1 -1
  14. package/dist/BaseModel.d.ts +63 -27
  15. package/dist/BaseModel.d.ts.map +1 -1
  16. package/dist/BaseModel.js +108 -51
  17. package/dist/BaseModel.js.map +1 -1
  18. package/dist/BaseRepository.d.ts +11 -1
  19. package/dist/BaseRepository.d.ts.map +1 -1
  20. package/dist/BaseRepository.js +95 -20
  21. package/dist/BaseRepository.js.map +1 -1
  22. package/dist/ConnectionManager.d.ts +106 -0
  23. package/dist/ConnectionManager.d.ts.map +1 -0
  24. package/dist/ConnectionManager.js +228 -0
  25. package/dist/ConnectionManager.js.map +1 -0
  26. package/dist/ModelQuery.d.ts +256 -43
  27. package/dist/ModelQuery.d.ts.map +1 -1
  28. package/dist/ModelQuery.js +899 -231
  29. package/dist/ModelQuery.js.map +1 -1
  30. package/dist/Transaction.d.ts +54 -1
  31. package/dist/Transaction.d.ts.map +1 -1
  32. package/dist/Transaction.js +121 -59
  33. package/dist/Transaction.js.map +1 -1
  34. package/dist/adapters/NapiDbAdapter.d.ts +11 -0
  35. package/dist/adapters/NapiDbAdapter.d.ts.map +1 -1
  36. package/dist/adapters/NapiDbAdapter.js +35 -7
  37. package/dist/adapters/NapiDbAdapter.js.map +1 -1
  38. package/dist/console/contract.d.ts +62 -0
  39. package/dist/console/contract.d.ts.map +1 -0
  40. package/dist/console/contract.js +38 -0
  41. package/dist/console/contract.js.map +1 -0
  42. package/dist/console/factoryCommands.d.ts +23 -0
  43. package/dist/console/factoryCommands.d.ts.map +1 -0
  44. package/dist/console/factoryCommands.js +62 -0
  45. package/dist/console/factoryCommands.js.map +1 -0
  46. package/dist/console/migrationCommands.d.ts +38 -8
  47. package/dist/console/migrationCommands.d.ts.map +1 -1
  48. package/dist/console/migrationCommands.js +157 -50
  49. package/dist/console/migrationCommands.js.map +1 -1
  50. package/dist/console/schemaCheckCommand.d.ts +11 -17
  51. package/dist/console/schemaCheckCommand.d.ts.map +1 -1
  52. package/dist/console/schemaCheckCommand.js +21 -15
  53. package/dist/console/schemaCheckCommand.js.map +1 -1
  54. package/dist/console/schemaDumpCommand.d.ts +30 -0
  55. package/dist/console/schemaDumpCommand.d.ts.map +1 -0
  56. package/dist/console/schemaDumpCommand.js +69 -0
  57. package/dist/console/schemaDumpCommand.js.map +1 -0
  58. package/dist/console/schemaGenerateCommand.d.ts +100 -0
  59. package/dist/console/schemaGenerateCommand.d.ts.map +1 -0
  60. package/dist/console/schemaGenerateCommand.js +246 -0
  61. package/dist/console/schemaGenerateCommand.js.map +1 -0
  62. package/dist/console/seederCommands.d.ts +46 -0
  63. package/dist/console/seederCommands.d.ts.map +1 -0
  64. package/dist/console/seederCommands.js +136 -0
  65. package/dist/console/seederCommands.js.map +1 -0
  66. package/dist/decorators/entity.d.ts +13 -2
  67. package/dist/decorators/entity.d.ts.map +1 -1
  68. package/dist/decorators/entity.js +10 -0
  69. package/dist/decorators/entity.js.map +1 -1
  70. package/dist/decorators/hooks.d.ts +3 -3
  71. package/dist/decorators/hooks.d.ts.map +1 -1
  72. package/dist/decorators/hooks.js.map +1 -1
  73. package/dist/events.d.ts +5 -0
  74. package/dist/events.d.ts.map +1 -1
  75. package/dist/events.js.map +1 -1
  76. package/dist/factories.d.ts +8 -0
  77. package/dist/factories.d.ts.map +1 -0
  78. package/dist/factories.js +8 -0
  79. package/dist/factories.js.map +1 -0
  80. package/dist/index.d.ts +11 -5
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +12 -4
  83. package/dist/index.js.map +1 -1
  84. package/dist/lucid-schema.d.ts +15 -0
  85. package/dist/lucid-schema.d.ts.map +1 -0
  86. package/dist/lucid-schema.js +16 -0
  87. package/dist/lucid-schema.js.map +1 -0
  88. package/dist/orm.d.ts +14 -0
  89. package/dist/orm.d.ts.map +1 -0
  90. package/dist/orm.js +14 -0
  91. package/dist/orm.js.map +1 -0
  92. package/dist/query/DatabaseQueryBuilder.d.ts +557 -0
  93. package/dist/query/DatabaseQueryBuilder.d.ts.map +1 -0
  94. package/dist/query/DatabaseQueryBuilder.js +1798 -0
  95. package/dist/query/DatabaseQueryBuilder.js.map +1 -0
  96. package/dist/query/DmlBuilder.d.ts +62 -0
  97. package/dist/query/DmlBuilder.d.ts.map +1 -0
  98. package/dist/query/DmlBuilder.js +84 -0
  99. package/dist/query/DmlBuilder.js.map +1 -0
  100. package/dist/query/QueryBuilder.d.ts +5 -0
  101. package/dist/query/QueryBuilder.d.ts.map +1 -1
  102. package/dist/query/QueryBuilder.js +7 -0
  103. package/dist/query/QueryBuilder.js.map +1 -1
  104. package/dist/query/RawQueryBuilder.d.ts +47 -0
  105. package/dist/query/RawQueryBuilder.d.ts.map +1 -0
  106. package/dist/query/RawQueryBuilder.js +138 -0
  107. package/dist/query/RawQueryBuilder.js.map +1 -0
  108. package/dist/query/interpolate.d.ts +45 -0
  109. package/dist/query/interpolate.d.ts.map +1 -0
  110. package/dist/query/interpolate.js +51 -0
  111. package/dist/query/interpolate.js.map +1 -0
  112. package/dist/query/native.d.ts +8 -0
  113. package/dist/query/native.d.ts.map +1 -1
  114. package/dist/query/native.js +14 -0
  115. package/dist/query/native.js.map +1 -1
  116. package/dist/query/operators.d.ts +4 -0
  117. package/dist/query/operators.d.ts.map +1 -0
  118. package/dist/query/operators.js +27 -0
  119. package/dist/query/operators.js.map +1 -0
  120. package/dist/schema/Migration.d.ts +31 -7
  121. package/dist/schema/Migration.d.ts.map +1 -1
  122. package/dist/schema/Migration.js +34 -7
  123. package/dist/schema/Migration.js.map +1 -1
  124. package/dist/schema/MigrationRunner.d.ts +56 -6
  125. package/dist/schema/MigrationRunner.d.ts.map +1 -1
  126. package/dist/schema/MigrationRunner.js +382 -112
  127. package/dist/schema/MigrationRunner.js.map +1 -1
  128. package/dist/schema/Schema.d.ts +59 -2
  129. package/dist/schema/Schema.d.ts.map +1 -1
  130. package/dist/schema/Schema.js +143 -9
  131. package/dist/schema/Schema.js.map +1 -1
  132. package/dist/schema/SchemaDumper.d.ts +121 -0
  133. package/dist/schema/SchemaDumper.d.ts.map +1 -0
  134. package/dist/schema/SchemaDumper.js +365 -0
  135. package/dist/schema/SchemaDumper.js.map +1 -0
  136. package/dist/schema/Seeder.d.ts +13 -0
  137. package/dist/schema/Seeder.d.ts.map +1 -1
  138. package/dist/schema/Seeder.js +28 -5
  139. package/dist/schema/Seeder.js.map +1 -1
  140. package/dist/schema/TableBuilder.d.ts +27 -8
  141. package/dist/schema/TableBuilder.d.ts.map +1 -1
  142. package/dist/schema/TableBuilder.js +50 -12
  143. package/dist/schema/TableBuilder.js.map +1 -1
  144. package/dist/schema/catalog.d.ts +25 -1
  145. package/dist/schema/catalog.d.ts.map +1 -1
  146. package/dist/schema/catalog.js +69 -22
  147. package/dist/schema/catalog.js.map +1 -1
  148. package/dist/schema/introspect.d.ts +1 -1
  149. package/dist/schema/introspect.d.ts.map +1 -1
  150. package/dist/schema/introspect.js +26 -11
  151. package/dist/schema/introspect.js.map +1 -1
  152. package/dist/seeders.d.ts +7 -0
  153. package/dist/seeders.d.ts.map +1 -0
  154. package/dist/seeders.js +7 -0
  155. package/dist/seeders.js.map +1 -0
  156. package/dist/services/db.d.ts +120 -9
  157. package/dist/services/db.d.ts.map +1 -1
  158. package/dist/services/db.js +182 -26
  159. package/dist/services/db.js.map +1 -1
  160. package/dist/testing/DatabaseCleanup.d.ts +29 -6
  161. package/dist/testing/DatabaseCleanup.d.ts.map +1 -1
  162. package/dist/testing/DatabaseCleanup.js +44 -17
  163. package/dist/testing/DatabaseCleanup.js.map +1 -1
  164. package/dist/testing/DbAssertions.d.ts +48 -0
  165. package/dist/testing/DbAssertions.d.ts.map +1 -0
  166. package/dist/testing/DbAssertions.js +80 -0
  167. package/dist/testing/DbAssertions.js.map +1 -0
  168. package/dist/testing/Factory.d.ts +111 -25
  169. package/dist/testing/Factory.d.ts.map +1 -1
  170. package/dist/testing/Factory.js +331 -56
  171. package/dist/testing/Factory.js.map +1 -1
  172. package/dist/testing/TestUtils.d.ts +49 -0
  173. package/dist/testing/TestUtils.d.ts.map +1 -0
  174. package/dist/testing/TestUtils.js +79 -0
  175. package/dist/testing/TestUtils.js.map +1 -0
  176. package/dist/testing/index.d.ts +3 -1
  177. package/dist/testing/index.d.ts.map +1 -1
  178. package/dist/testing/index.js +3 -1
  179. package/dist/testing/index.js.map +1 -1
  180. package/dist/types/relations.d.ts +31 -0
  181. package/dist/types/relations.d.ts.map +1 -0
  182. package/dist/types/relations.js +20 -0
  183. package/dist/types/relations.js.map +1 -0
  184. package/index.darwin-arm64.node +0 -0
  185. package/index.darwin-x64.node +0 -0
  186. package/index.linux-arm64-gnu.node +0 -0
  187. package/index.linux-x64-gnu.node +0 -0
  188. package/index.win32-x64-msvc.node +0 -0
  189. package/package.json +30 -2
  190. package/src/AtlasProvider.ts +297 -51
  191. package/src/BaseEntity.ts +29 -0
  192. package/src/BaseModel.ts +174 -37
  193. package/src/BaseRepository.ts +136 -17
  194. package/src/ConnectionManager.ts +298 -0
  195. package/src/ModelQuery.ts +1309 -260
  196. package/src/Transaction.ts +194 -60
  197. package/src/adapters/NapiDbAdapter.ts +72 -14
  198. package/src/console/contract.ts +96 -0
  199. package/src/console/factoryCommands.ts +73 -0
  200. package/src/console/migrationCommands.ts +253 -63
  201. package/src/console/schemaCheckCommand.ts +26 -22
  202. package/src/console/schemaDumpCommand.ts +96 -0
  203. package/src/console/schemaGenerateCommand.ts +380 -0
  204. package/src/console/seederCommands.ts +174 -0
  205. package/src/decorators/entity.ts +18 -2
  206. package/src/decorators/hooks.ts +5 -3
  207. package/src/events.ts +5 -0
  208. package/src/factories.ts +10 -0
  209. package/src/index.ts +50 -3
  210. package/src/lucid-schema.ts +22 -0
  211. package/src/orm.ts +13 -0
  212. package/src/query/DatabaseQueryBuilder.ts +2724 -0
  213. package/src/query/DmlBuilder.ts +131 -0
  214. package/src/query/QueryBuilder.ts +8 -0
  215. package/src/query/RawQueryBuilder.ts +173 -0
  216. package/src/query/interpolate.ts +73 -0
  217. package/src/query/native.ts +29 -0
  218. package/src/query/operators.ts +27 -0
  219. package/src/schema/Migration.ts +36 -7
  220. package/src/schema/MigrationRunner.ts +483 -119
  221. package/src/schema/Schema.ts +168 -19
  222. package/src/schema/SchemaDumper.ts +518 -0
  223. package/src/schema/Seeder.ts +47 -10
  224. package/src/schema/TableBuilder.ts +48 -11
  225. package/src/schema/catalog.ts +94 -24
  226. package/src/schema/introspect.ts +26 -9
  227. package/src/seeders.ts +16 -0
  228. package/src/services/db.ts +343 -31
  229. package/src/testing/DatabaseCleanup.ts +73 -21
  230. package/src/testing/DbAssertions.ts +127 -0
  231. package/src/testing/Factory.ts +559 -79
  232. package/src/testing/TestUtils.ts +123 -0
  233. package/src/testing/index.ts +12 -1
  234. package/src/types/relations.ts +43 -0
@@ -257,9 +257,8 @@ export class TableBuilder {
257
257
  * t.uuid('id').primary() // no DEFAULT
258
258
  * // and at insert: db.insert({ id: crypto.randomUUID(), ... })
259
259
  *
260
- * See `AUDIT-migration-templates.md` (shipped at the package root) for
261
- * the full audit and the escape-hatch procedure if a future story makes
262
- * the helper dialect-aware.
260
+ * (A dialect-aware escape hatch can be added later if a future story needs
261
+ * per-dialect PK defaults.)
263
262
  */
264
263
  id() {
265
264
  return this.uuid("id").primary().defaultTo(new RawSql("gen_random_uuid()"));
@@ -283,13 +282,33 @@ export class TableBuilder {
283
282
  * t.timestamp('updated_at').notNullable()
284
283
  * // and at insert: db.insert({ created_at: new Date().toISOString(), ... })
285
284
  *
286
- * See `AUDIT-migration-templates.md` (shipped at the package root) for
287
- * the full audit and the escape-hatch procedure if a future story makes
288
- * the helper dialect-aware.
285
+ * (A dialect-aware escape hatch can be added later if a future story needs
286
+ * per-dialect PK defaults.)
289
287
  */
290
- timestamps() {
291
- this.timestamp("created_at").notNullable().defaultTo(new RawSql("NOW()"));
292
- this.timestamp("updated_at").notNullable().defaultTo(new RawSql("NOW()"));
288
+ /**
289
+ * Add `created_at` / `updated_at` columns (Adonis Lucid / Knex
290
+ * `timestamps(useTimestamps, defaultToNow)`).
291
+ *
292
+ * - `useTimestamps` (default `true`): `timestamp` type; `false` → `dateTime`.
293
+ * - `defaultToNow` (default `true`): `NOT NULL DEFAULT CURRENT_TIMESTAMP`;
294
+ * `false` → nullable, no default.
295
+ *
296
+ * The default uses `CURRENT_TIMESTAMP`, which every dialect understands —
297
+ * unlike `NOW()`, which SQLite rejects. So `timestamps()` and the Lucid
298
+ * `timestamps(true, true)` form both port to SQLite/Postgres/MySQL unchanged.
299
+ */
300
+ timestamps(useTimestamps = true, defaultToNow = true) {
301
+ const add = (name) => {
302
+ if (useTimestamps)
303
+ this.timestamp(name);
304
+ else
305
+ this.dateTime(name);
306
+ if (defaultToNow) {
307
+ this.notNullable().defaultTo(new RawSql("CURRENT_TIMESTAMP"));
308
+ }
309
+ };
310
+ add("created_at");
311
+ add("updated_at");
293
312
  return this;
294
313
  }
295
314
  // ─── Column modifiers ─────────────────────────────────────
@@ -322,9 +341,28 @@ export class TableBuilder {
322
341
  this.#currentColumn.unsigned = true;
323
342
  return this;
324
343
  }
325
- references(table, column = "id") {
326
- if (this.#currentColumn)
327
- this.#currentColumn.references = { table, column };
344
+ /**
345
+ * Declare the current column a foreign key.
346
+ *
347
+ * - `references('users', 'id')` — atlas form `(table, column='id')`.
348
+ * - `references('users.id')` — Lucid/Knex dotted `'table.column'` shorthand, so
349
+ * a migration copied from Lucid resolves the target the same way. A single
350
+ * argument without a dot is treated as the table name (column defaults to
351
+ * `id`), preserving the atlas one-arg behaviour.
352
+ */
353
+ references(tableOrPath, column) {
354
+ let table = tableOrPath;
355
+ let col = column ?? "id";
356
+ const dot = tableOrPath.indexOf(".");
357
+ // Dotted shorthand only when no explicit column was passed — an explicit
358
+ // second arg always wins, so `references('a.b', 'c')` stays (table 'a.b').
359
+ if (dot !== -1 && column === undefined) {
360
+ table = tableOrPath.slice(0, dot);
361
+ col = tableOrPath.slice(dot + 1);
362
+ }
363
+ if (this.#currentColumn) {
364
+ this.#currentColumn.references = { table, column: col };
365
+ }
328
366
  return this;
329
367
  }
330
368
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"TableBuilder.js","sourceRoot":"","sources":["../../src/schema/TableBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAEN,sBAAsB,EACtB,eAAe,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAqB,kBAAkB,EAAE,MAAM,UAAU,CAAC;AACjE,OAAO,EAaN,aAAa,GACb,MAAM,YAAY,CAAC;AAEpB;;;;GAIG;AACH,MAAM,OAAO,iBAAiB;IACpB,WAAW,CAAsB;IAE1C,YAAY,UAA+B;QAC1C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,gDAAgD;IAChD,UAAU,CAAC,OAAmC;QAC7C,IAAI,CAAC,WAAW,CAAC,OAAO;YACvB,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,KAAa;QACpB,IAAI,CAAC,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,QAAQ,CAAC,MAAyB;QACjC,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,QAAQ,CAAC,MAAyB;QACjC,IAAI,CAAC,WAAW,CAAC,QAAQ,GAAG,MAAM,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC;CACD;AASD,wEAAwE;AACxE,MAAM,OAAO,YAAY;IACf,SAAS,CAAS;IAClB,IAAI,CAAmB;IAChC,QAAQ,GAAuB,EAAE,CAAC;IAClC,QAAQ,GAAsB,EAAE,CAAC;IACjC,cAAc,CAAoB;IAClC,oEAAoE;IACpE,WAAW,GAAqB,EAAE,CAAC;IACnC,yFAAyF;IACzF,YAAY,GAA0B,EAAE,CAAC;IACzC,QAAQ,GAAqB,EAAE,CAAC;IAChC,qEAAqE;IACrE,UAAU,CAAgE;IAC1E;;;;;OAKG;IACH,mBAAmB,GAAG,KAAK,CAAC;IAE5B,YAAY,SAAiB,EAAE,OAAyB,QAAQ;QAC/D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,6DAA6D;IAE7D,IAAI,CAAC,IAAY;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,IAAI,GAAG,IAAI;QACrB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,sEAAsE;IACtE,aAAa,CAAC,IAAI,GAAG,IAAI;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,MAAM,GAAG,GAAG;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7D,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,IAAY,EAAE,WAAwB,MAAM;QAChD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,gGAAgG;IAChG,SAAS,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC3C,CAAC;IACD,yGAAyG;IACzG,OAAO,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,sFAAsF;IACtF,QAAQ,CAAC,IAAY;QACpB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;IACD,UAAU,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,CAAC,IAAY,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC;QAC9C,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1C,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAY,EAAE,SAAkB,EAAE,KAAc;QACrD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,qJAAqJ;IACrJ,MAAM,CAAC,IAAY,EAAE,SAAkB,EAAE,KAAc;QACtD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAED,OAAO,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,CAAC,IAAY;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IACD;;;;OAIG;IACH,IAAI,CAAC,IAAY,EAAE,SAAkB;QACpC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;QACnE,OAAO,IAAI,CAAC;IACb,CAAC;IACD;;;;;;;OAOG;IACH,SAAS,CACR,IAAY,EACZ,UAAmD,EAAE;QAErD,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAC3E,OAAO,IAAI,CAAC;IACb,CAAC;IACD,yHAAyH;IACzH,QAAQ,CACP,IAAY,EACZ,UAAmD,EAAE;QAErD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IACD;;;;;;;;OAQG;IACH,WAAW,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,IAAY;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IACD;;;;;;;;;OASG;IACH,KAAK,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IACD;;;OAGG;IACH,MAAM,CAAC,IAAY,EAAE,MAAe;QACnC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7D,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;OASG;IACH,YAAY,CAAC,IAAY,EAAE,IAAY;QACtC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACtC,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5D,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,IAAY,EAAE,MAAgB;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC9B,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,MAAM,CAAC;QAC7D,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,EAAE;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,UAAU;QACT,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D,WAAW;QACV,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC9D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,QAAQ;QACP,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,KAAmB;QAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,kFAAkF;IAClF,QAAQ;QACP,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC7D,OAAO,IAAI,CAAC;IACb,CAAC;IAED,UAAU,CAAC,KAAa,EAAE,MAAM,GAAG,IAAI;QACtC,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,UAAU,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,MAAyB;QACjC,IAAI,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC;QAClD,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,2GAA2G;IAC3G,QAAQ,CAAC,MAAyB;QACjC,IAAI,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC;QAClD,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,IAAY;QACnB,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;QAC5D,OAAO,IAAI,CAAC;IACb,CAAC;IAED,0IAA0I;IAC1I,OAAO,CAAC,SAAiB;QACxB,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,SAAS,CAAC;QACjE,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,KAAK;QACJ,IAAI,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mGAAmG;IACnG,KAAK,CAAC,MAAc;QACnB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D,4EAA4E;IAC5E,aAAa,CAAC,cAAuB;QACpC,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAC3C,cAAc,CACd,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,aAAa,CAAC,cAAuB;QACpC,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,EAC3C,cAAc,CACd,CAAC;IACH,CAAC;IAED,oHAAoH;IACpH,OAAO,CAAC,MAA6B,EAAE,cAAuB;QAC7D,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,EAC1D,cAAc,CACd,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,UAAU,CAAC,MAA6B,EAAE,cAAuB;QAChE,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,EAC7D,cAAc,CACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,YAAY,CACX,KAAiE,EACjE,cAAuB;QAEvB,qEAAqE;QACrE,wCAAwC;QACxC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC,CAAE,KAA4C,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,CAAC,CAAC,GAAI,KAA+B,CAAC,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAClD,cAAc,CACd,CAAC;IACH,CAAC;IAED,wIAAwI;IACxI,WAAW,CACV,QAAuB,EACvB,MAAc,EACd,cAAuB;QAEvB,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAC3D,cAAc,CACd,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CAAC,OAAe,EAAE,cAAuB;QAClD,OAAO,IAAI,CAAC,SAAS,CACpB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EACjD,cAAc,CACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAiB,EAAE,cAAuB;QAC/C,IAAI,CAAC,eAAe,CAAC;YACpB,UAAU,EAAE,OAAO;YACnB,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE;SACjC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,8DAA8D;IAC9D,UAAU,CAAC,GAAG,eAAyB;QACtC,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;YACpC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D;;;;OAIG;IACH,OAAO,CAAC,OAA2B,EAAE,cAAuB;QAC3D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,cAAc;gBAAE,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5D,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,eAAe,CAAC;YACpB,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,OAA2B,EAAE,cAAuB;QAC1D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,cAAc;gBAAE,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC;YAC3D,OAAO,IAAI,CAAC;QACb,CAAC;QACD,IAAI,CAAC,eAAe,CAAC;YACpB,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC/D,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACH,OAAO,CACN,OAAmC,EACnC,cAAuB;QAEvB,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;QACpE,MAAM,UAAU,GAAwB,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACnE,IAAI,CAAC,eAAe,CAAC;YACpB,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC;YAC7D,OAAO,EAAE,IAAI;YACb,UAAU;SACV,CAAC,CAAC;QACH,wEAAwE;QACxE,kEAAkE;QAClE,OAAO,IAAI,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAED,6DAA6D;IAE7D,6HAA6H;IAC7H,WAAW,CAAC,cAAuB;QAClC,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,kHAAkH;IAClH,UAAU,CACT,OAAmC,EACnC,cAAuB;QAEvB,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC;YACtB,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC;SAC/D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6GAA6G;IAC7G,WAAW,CACV,OAAmC,EACnC,cAAuB;QAEvB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC;YACtB,EAAE,EAAE,aAAa;YACjB,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC;SAChE,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,sEAAsE;IACtE,cAAc;QACb,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IACrD,CAAC;IAED,6DAA6D;IAE7D,wEAAwE;IACxE,MAAM,CAAC,IAAY;QAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;QAC5B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,0EAA0E;IAC1E,OAAO,CAAC,IAAY;QACnB,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,wIAAwI;IACxI,YAAY,CAAC,IAAY;QACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,8GAA8G;IAC9G,YAAY,CAAC,IAAY;QACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D,KAAK,CAAC,OAA0B,EAAE,IAAa;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACvD,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,KAAK;SACb,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,WAAW,CAAC,OAA0B,EAAE,IAAa;QACpD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,IAAI,IAAI,OAAO,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS;YAC9D,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D;;;;;;;;;;OAUG;IACH,KAAK;QACJ,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACd,6FAA6F,CAC7F,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,SAAS,GAAmB;gBACjC,EAAE,EAAE,aAAa;gBACjB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,WAAW,EAAE,IAAI,CAAC,mBAAmB;oBACpC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ;oBACzB,CAAC,CAAC,SAAS;aACZ,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;YAChE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,+CAA+C;IAC/C,UAAU,CAAC,IAAY;QACtB,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,qEAAqE;IACrE,WAAW,CAAC,GAAG,KAAe;QAC7B,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,mDAAmD;IACnD,YAAY,CAAC,IAAY,EAAE,EAAU;QACpC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACxC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,IAAY;QACvB,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACvC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,+GAA+G;IAC/G,YAAY,CAAC,IAAY;QACxB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACxC,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6DAA6D;IAE7D,UAAU;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IACD,UAAU;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IACD,8DAA8D;IAC9D,aAAa;QACZ,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9B,CAAC;IAED,uDAAuD;IACvD,YAAY,CACX,UAAwB,eAAe,EAAE,EACzC,UAAqC,EAAE;QAEvC,MAAM,IAAI,GACT,IAAI,CAAC,IAAI,KAAK,OAAO;YACpB,CAAC,CAAC;gBACA,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACvC,EAAE,CAAC,EAAE,KAAK,WAAW;oBACpB,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;oBACzD,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,aAAa;wBACxB,CAAC,CAAC;4BACA,EAAE,EAAE,EAAE,CAAC,EAAE;4BACT,MAAM,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,MAAM,CAAC;4BACxC,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,IAAI;yBACnC;wBACF,CAAC,CAAC,EAAE,CACN;aACD;YACF,CAAC,CAAC;gBACA,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;gBAC3D,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,MAAM,EAAE,CAAC,CAAC,MAAM;iBAChB,CAAC,CAAC;gBACH,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;gBACzC,WAAW,EAAE,IAAI,CAAC,YAAY;gBAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ;aACtB,CAAC;QACL,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,UAAU,CAAC;QACpE,mEAAmE;QACnE,yEAAyE;QACzE,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjC,UAAU,CAAC,IAAI,CACd,GAAG,sBAAsB,CACxB;oBACC,IAAI,EAAE,aAAa;oBACnB,KAAK,EAAE,IAAI,CAAC,SAAS;oBACrB,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,MAAM,EAAE,GAAG,CAAC,MAAM;iBAClB,EACD,OAAO,CACP,CAAC,UAAU,CACZ,CAAC;YACH,CAAC;QACF,CAAC;QACD,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,8EAA8E;IAC9E,gBAAgB,CAAC,CAAmB;QACnC,OAAO;YACN,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,IAAI;YACxB,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI;YAC9B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI;YACtB,wEAAwE;YACxE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,IAAI;YACxB,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;YAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,aAAa,EAAE,CAAC,CAAC,aAAa,IAAI,KAAK;YACvC,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;YAC7B,OAAO,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;YAC/B,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI;YAChC,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;YAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI;YAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;SAC5B,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,IAAyB;QACxC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,gDAAgD;IAChD,SAAS,CACR,KAA0C,EAC1C,cAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC;QACzC,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACd,4GAA4G,CAC5G,CAAC;QACH,CAAC;QACD,IAAI,CAAC,eAAe,CAAC;YACpB,UAAU,EAAE,OAAO;YACnB,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;SACnB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;OAKG;IACH,eAAe,CACd,OAAmC,EACnC,MAA4B;QAE5B,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QAC/D,OAAO,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,MAAM,EAAE,CAAC;IACxD,CAAC;IAED,gBAAgB,CAAC,MAAc;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACd,mBAAmB,MAAM,kFAAkF,CAC3G,CAAC;QACH,CAAC;IACF,CAAC;IAED,sGAAsG;IACtG,iBAAiB,CAAC,EAAkB;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,IAAgB;QACxC,MAAM,GAAG,GAAqB;YAC7B,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK;SACb,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC;QAC1B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,EAAE,GAAiD;gBACxD,EAAE,EAAE,WAAW;gBACf,MAAM,EAAE,GAAG;aACX,CAAC;YACF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC1B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACtB,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,SAAS,CACR,IAAY,EACZ,IAAwB,EACxB,SAAkB,EAClB,KAAc;QAEd,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1C,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,IAA8B;QAC1D,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC;YACzC,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"TableBuilder.js","sourceRoot":"","sources":["../../src/schema/TableBuilder.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,21 @@ import type { AtlasDialect } from "../query/native.js";
15
15
  export interface CatalogConnection {
16
16
  query<T = Record<string, unknown>>(sql: string, params?: unknown[]): Promise<T[]>;
17
17
  execute(sql: string, params?: unknown[]): Promise<unknown>;
18
+ /**
19
+ * Optional: run a batch of statements atomically on ONE pinned pooled
20
+ * connection. When present, {@link runWithoutForeignKeys} uses it so the FK
21
+ * toggle and the operations can't scatter across the pool.
22
+ */
23
+ runInTransaction?(batch: readonly {
24
+ sql: string;
25
+ params?: unknown[];
26
+ }[]): Promise<number>;
27
+ /**
28
+ * Optional MANAGED interactive transaction pinned to ONE connection (Lucid
29
+ * `db.transaction(cb)`). When present, {@link runWithoutForeignKeys} uses it
30
+ * on MySQL so the FK restore runs in a real `finally` on that same connection.
31
+ */
32
+ transaction?<T>(callback: (trx: CatalogConnection) => Promise<T>): Promise<T>;
18
33
  }
19
34
  export interface ListTablesOptions {
20
35
  /**
@@ -23,6 +38,12 @@ export interface ListTablesOptions {
23
38
  * because it re-creates the tracking table afterwards.
24
39
  */
25
40
  includeFrameworkTables?: boolean;
41
+ /**
42
+ * PostgreSQL only — restrict the listing to these schemas instead of just the
43
+ * current one (Adonis Lucid `schemaGeneration.schemas`). Ignored on
44
+ * sqlite/mysql, which have no schema namespace of this kind.
45
+ */
46
+ schemas?: string[];
26
47
  }
27
48
  /** List every base table in the current schema/database, for `dialect`. */
28
49
  export declare function listUserTables(db: CatalogConnection, dialect: AtlasDialect, options?: ListTablesOptions): Promise<string[]>;
@@ -43,5 +64,8 @@ export declare function columnExists(db: CatalogConnection, dialect: AtlasDialec
43
64
  * order. Postgres has no session-level switch (it uses `TRUNCATE … CASCADE` /
44
65
  * `DROP … CASCADE` instead), so this is a no-op there.
45
66
  */
46
- export declare function withoutForeignKeys<T>(db: CatalogConnection, dialect: AtlasDialect, fn: () => Promise<T>): Promise<T>;
67
+ export declare function runWithoutForeignKeys(db: CatalogConnection, dialect: AtlasDialect, statements: ReadonlyArray<{
68
+ sql: string;
69
+ params?: unknown[];
70
+ }>): Promise<void>;
47
71
  //# sourceMappingURL=catalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/schema/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IACjC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAGhB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAQD,MAAM,WAAW,iBAAiB;IACjC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,2EAA2E;AAC3E,wBAAsB,cAAc,CACnC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,iBAAsB,GAC7B,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CACjC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,CAAC,CAoBlB;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,EACzC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,CAAC,CAAC,CAoBZ"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/schema/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IACjC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,OAAO,EAAE,GAChB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAGhB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D;;;;OAIG;IACH,gBAAgB,CAAC,CAChB,KAAK,EAAE,SAAS;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;KAAE,EAAE,GACnD,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC9E;AAQD,MAAM,WAAW,iBAAiB;IACjC;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,2EAA2E;AAC3E,wBAAsB,cAAc,CACnC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,iBAAsB,GAC7B,OAAO,CAAC,MAAM,EAAE,CAAC,CAyCnB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAChC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,IAAI,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CACjC,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,CAAC,CAoBlB;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAC1C,EAAE,EAAE,iBAAiB,EACrB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,aAAa,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC,GAC5D,OAAO,CAAC,IAAI,CAAC,CAyDf"}
@@ -6,6 +6,7 @@
6
6
  * dialect's own catalog (`sqlite_master`, `pg_tables`, `information_schema`);
7
7
  * they are framework introspection, not user queries, so they stay raw SQL.
8
8
  */
9
+ import { AtlasError } from "../errors.js";
9
10
  /**
10
11
  * Prefix for framework-private tables (migrations bookkeeping), following the
11
12
  * same `ream_`-prefix convention as AdonisJS's `adonis_`.
@@ -14,21 +15,34 @@ const FRAMEWORK_PREFIX = "ream_";
14
15
  /** List every base table in the current schema/database, for `dialect`. */
15
16
  export async function listUserTables(db, dialect, options = {}) {
16
17
  let sql;
18
+ const params = [];
17
19
  switch (dialect) {
18
20
  case "sqlite":
19
21
  sql =
20
22
  "SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'";
21
23
  break;
22
24
  case "postgres":
23
- sql =
24
- "SELECT tablename AS name FROM pg_tables WHERE schemaname = current_schema()";
25
+ // Restrict to the given schemas (Lucid `schemas`) or the current one.
26
+ // Bind each schema as its own scalar placeholder — atlas's driver binds
27
+ // arrays as text, so `schemaname = ANY($1)` would fail; an IN list works.
28
+ if (options.schemas && options.schemas.length > 0) {
29
+ const placeholders = options.schemas.map((_, i) => `$${i + 1}`);
30
+ params.push(...options.schemas);
31
+ sql = `SELECT tablename AS name FROM pg_tables WHERE schemaname IN (${placeholders.join(", ")})`;
32
+ }
33
+ else {
34
+ sql =
35
+ "SELECT tablename AS name FROM pg_tables WHERE schemaname = current_schema()";
36
+ }
25
37
  break;
26
38
  case "mysql":
39
+ // CAST to CHAR: MySQL returns information_schema identifier columns as
40
+ // binary (Uint8Array), which the string filter below would drop.
27
41
  sql =
28
- "SELECT table_name AS name FROM information_schema.tables WHERE table_schema = DATABASE() AND table_type = 'BASE TABLE'";
42
+ "SELECT CAST(table_name AS CHAR) AS name FROM information_schema.tables WHERE table_schema = DATABASE() AND table_type = 'BASE TABLE'";
29
43
  break;
30
44
  }
31
- const rows = await db.query(sql);
45
+ const rows = await db.query(sql, params);
32
46
  const names = [];
33
47
  for (const row of rows) {
34
48
  if (typeof row.name !== "string")
@@ -87,25 +101,58 @@ export async function columnExists(db, dialect, table, column) {
87
101
  * order. Postgres has no session-level switch (it uses `TRUNCATE … CASCADE` /
88
102
  * `DROP … CASCADE` instead), so this is a no-op there.
89
103
  */
90
- export async function withoutForeignKeys(db, dialect, fn) {
91
- const off = dialect === "sqlite"
92
- ? "PRAGMA foreign_keys = OFF"
93
- : dialect === "mysql"
94
- ? "SET FOREIGN_KEY_CHECKS = 0"
95
- : null;
96
- const on = dialect === "sqlite"
97
- ? "PRAGMA foreign_keys = ON"
98
- : dialect === "mysql"
99
- ? "SET FOREIGN_KEY_CHECKS = 1"
100
- : null;
101
- if (off)
102
- await db.execute(off);
103
- try {
104
- return await fn();
104
+ export async function runWithoutForeignKeys(db, dialect, statements) {
105
+ if (statements.length === 0)
106
+ return;
107
+ // MySQL: `SET FOREIGN_KEY_CHECKS` is a SESSION variable (not transactional),
108
+ // so it MUST be restored in a real `finally` on the SAME pinned connection —
109
+ // otherwise a mid-batch failure leaves the pooled connection with FK checks
110
+ // off. Use the managed interactive transaction: SET 0 → ops → finally SET 1,
111
+ // all on the one pinned connection, restore guaranteed even on error.
112
+ if (dialect === "mysql") {
113
+ // MySQL `SET FOREIGN_KEY_CHECKS` is a SESSION variable (not transactional),
114
+ // so it MUST be restored in a real `finally` on the SAME pinned connection.
115
+ // That needs the managed interactive transaction: SET 0 → ops → finally
116
+ // SET 1, restore guaranteed even on error. Without transaction() there is
117
+ // no safe restore — a mid-batch failure would leave the pooled connection
118
+ // with FK checks OFF (a poisoned connection). Refuse rather than corrupt.
119
+ if (!db.transaction) {
120
+ throw new AtlasError("E_MYSQL_FK_REQUIRES_TRANSACTION", "Suspending MySQL foreign-key checks needs an interactive transaction() to restore them in a finally — a session-level SET can't be rolled back, so a failure mid-batch would leave the pooled connection with FK checks disabled. This adapter has none.", {
121
+ hint: "Use a real connection (createNapiConnection) or an adapter that implements transaction().",
122
+ });
123
+ }
124
+ await db.transaction(async (trx) => {
125
+ try {
126
+ await trx.execute("SET FOREIGN_KEY_CHECKS = 0");
127
+ for (const stmt of statements) {
128
+ await trx.execute(stmt.sql, stmt.params);
129
+ }
130
+ }
131
+ finally {
132
+ await trx.execute("SET FOREIGN_KEY_CHECKS = 1");
133
+ }
134
+ });
135
+ return;
136
+ }
137
+ // sqlite/postgres: run the FK toggle + ops on ONE pinned connection via
138
+ // runInTransaction so a pool can't scatter the connection-local toggle away
139
+ // from the ops.
140
+ // - sqlite: `PRAGMA defer_foreign_keys` is transaction-scoped and auto-resets
141
+ // at txn end (no leak); plain `PRAGMA foreign_keys` is ignored in a txn;
142
+ // - postgres: no session toggle — drops use CASCADE and `truncateAll` uses
143
+ // `TRUNCATE … CASCADE`, so pg statements are already FK-safe.
144
+ const batch = [];
145
+ if (dialect === "sqlite") {
146
+ batch.push({ sql: "PRAGMA defer_foreign_keys = ON" });
147
+ }
148
+ batch.push(...statements);
149
+ if (db.runInTransaction) {
150
+ await db.runInTransaction(batch);
151
+ return;
105
152
  }
106
- finally {
107
- if (on)
108
- await db.execute(on);
153
+ // No transaction support at all (a bare fake): best effort, single connection.
154
+ for (const stmt of batch) {
155
+ await db.execute(stmt.sql, stmt.params);
109
156
  }
110
157
  }
111
158
  //# sourceMappingURL=catalog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/schema/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/schema/catalog.ts"],"names":[],"mappings":"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"}
@@ -30,5 +30,5 @@ export interface IntrospectedColumn {
30
30
  * Introspect one table. Returns its columns, or `null` when the table does not
31
31
  * exist in the database (a distinct, reportable drift — not an error).
32
32
  */
33
- export declare function introspectTable(db: SchemaIntrospectable, dialect: AtlasDialect, table: string): Promise<IntrospectedColumn[] | null>;
33
+ export declare function introspectTable(db: SchemaIntrospectable, dialect: AtlasDialect, table: string, schema?: string): Promise<IntrospectedColumn[] | null>;
34
34
  //# sourceMappingURL=introspect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../src/schema/introspect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACpC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;CAC3E;AAED,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACpB;AAaD;;;GAGG;AACH,wBAAsB,eAAe,CACpC,EAAE,EAAE,oBAAoB,EACxB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,GACX,OAAO,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,CAUtC"}
1
+ {"version":3,"file":"introspect.d.ts","sourceRoot":"","sources":["../../src/schema/introspect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACpC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;CAC3E;AAED,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;CACpB;AAaD;;;GAGG;AACH,wBAAsB,eAAe,CACpC,EAAE,EAAE,oBAAoB,EACxB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,kBAAkB,EAAE,GAAG,IAAI,CAAC,CAWtC"}
@@ -19,15 +19,17 @@ function assertIdent(name) {
19
19
  * Introspect one table. Returns its columns, or `null` when the table does not
20
20
  * exist in the database (a distinct, reportable drift — not an error).
21
21
  */
22
- export async function introspectTable(db, dialect, table) {
22
+ export async function introspectTable(db, dialect, table, schema) {
23
23
  assertIdent(table);
24
+ if (schema !== undefined)
25
+ assertIdent(schema);
24
26
  switch (dialect) {
25
27
  case "sqlite":
26
28
  return introspectSqlite(db, table);
27
29
  case "postgres":
28
- return introspectPostgres(db, table);
30
+ return introspectPostgres(db, table, schema);
29
31
  case "mysql":
30
- return introspectMysql(db, table);
32
+ return introspectMysql(db, table, schema);
31
33
  }
32
34
  }
33
35
  async function introspectSqlite(db, table) {
@@ -42,11 +44,14 @@ async function introspectSqlite(db, table) {
42
44
  primaryKey: Number(r.pk) > 0,
43
45
  }));
44
46
  }
45
- async function introspectPostgres(db, table) {
47
+ async function introspectPostgres(db, table, schema) {
48
+ // Target a specific schema when given (Lucid `schemas`), else the current one.
49
+ const schemaPred = schema ? "$2" : "current_schema()";
50
+ const args = schema ? [table, schema] : [table];
46
51
  const cols = await db.query(`SELECT column_name, data_type, is_nullable, column_default
47
52
  FROM information_schema.columns
48
- WHERE table_schema = current_schema() AND table_name = $1
49
- ORDER BY ordinal_position`, [table]);
53
+ WHERE table_schema = ${schemaPred} AND table_name = $1
54
+ ORDER BY ordinal_position`, args);
50
55
  if (cols.length === 0)
51
56
  return null;
52
57
  const pkRows = await db.query(`SELECT kcu.column_name
@@ -54,7 +59,8 @@ async function introspectPostgres(db, table) {
54
59
  JOIN information_schema.key_column_usage kcu
55
60
  ON kcu.constraint_name = tc.constraint_name
56
61
  AND kcu.table_schema = tc.table_schema
57
- WHERE tc.table_name = $1 AND tc.constraint_type = 'PRIMARY KEY'`, [table]);
62
+ WHERE tc.table_name = $1 AND tc.constraint_type = 'PRIMARY KEY'
63
+ AND tc.table_schema = ${schemaPred}`, args);
58
64
  const pks = new Set(pkRows.map((r) => String(r.column_name)));
59
65
  return cols.map((r) => ({
60
66
  name: String(r.column_name),
@@ -64,11 +70,20 @@ async function introspectPostgres(db, table) {
64
70
  primaryKey: pks.has(String(r.column_name)),
65
71
  }));
66
72
  }
67
- async function introspectMysql(db, table) {
68
- const rows = await db.query(`SELECT column_name, data_type, is_nullable, column_default, column_key
73
+ async function introspectMysql(db, table, schema) {
74
+ // In MySQL a "schema" IS a database; target it when given, else DATABASE().
75
+ const schemaPred = schema ? "?" : "DATABASE()";
76
+ const args = schema ? [schema, table] : [table];
77
+ // CAST the identifier/enum columns to CHAR: MySQL returns information_schema
78
+ // text as binary (Uint8Array), which `String(...)` would turn into byte lists.
79
+ const rows = await db.query(`SELECT CAST(column_name AS CHAR) AS column_name,
80
+ CAST(data_type AS CHAR) AS data_type,
81
+ CAST(is_nullable AS CHAR) AS is_nullable,
82
+ column_default,
83
+ CAST(column_key AS CHAR) AS column_key
69
84
  FROM information_schema.columns
70
- WHERE table_schema = DATABASE() AND table_name = ?
71
- ORDER BY ordinal_position`, [table]);
85
+ WHERE table_schema = ${schemaPred} AND table_name = ?
86
+ ORDER BY ordinal_position`, args);
72
87
  if (rows.length === 0)
73
88
  return null;
74
89
  return rows.map((r) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../src/schema/introspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"introspect.js","sourceRoot":"","sources":["../../src/schema/introspect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * `@c9up/atlas/seeders` — Adonis Lucid seeders parity subpath. The `BaseSeeder`
3
+ * base class plus the runners and the `make:seeder` / `db:seed` console commands.
4
+ */
5
+ export { dbSeedCommand, makeSeederCommand, type SeederCommandOptions, } from "./console/seederCommands.js";
6
+ export { BaseSeeder, runSeederDirectory, runSeeders, Seeder, } from "./schema/Seeder.js";
7
+ //# sourceMappingURL=seeders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seeders.d.ts","sourceRoot":"","sources":["../src/seeders.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,aAAa,EACb,iBAAiB,EACjB,KAAK,oBAAoB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,MAAM,GACN,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * `@c9up/atlas/seeders` — Adonis Lucid seeders parity subpath. The `BaseSeeder`
3
+ * base class plus the runners and the `make:seeder` / `db:seed` console commands.
4
+ */
5
+ export { dbSeedCommand, makeSeederCommand, } from "./console/seederCommands.js";
6
+ export { BaseSeeder, runSeederDirectory, runSeeders, Seeder, } from "./schema/Seeder.js";
7
+ //# sourceMappingURL=seeders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seeders.js","sourceRoot":"","sources":["../src/seeders.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACN,aAAa,EACb,iBAAiB,GAEjB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACN,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,MAAM,GACN,MAAM,oBAAoB,CAAC"}