@prisma/orm-target-sqlite 8.0.0-rc.14-dev.35 → 8.0.0-rc.14-dev.37

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 (136) hide show
  1. package/dist/{adapter-Bp_4Bjff-Ce3oZAN1.d.mts → adapter-Bp_4Bjff-CjV5K6YY.d.mts} +3 -3
  2. package/dist/{adapter-Bp_4Bjff-Ce3oZAN1.d.mts.map → adapter-Bp_4Bjff-CjV5K6YY.d.mts.map} +1 -1
  3. package/dist/adapter-C1WN74k-.d.mts +2 -0
  4. package/dist/{adapter-DUwfMiE4-C-kTEDXO.mjs → adapter-Dvjudmph-Dvu8g0lW.mjs} +23 -7
  5. package/dist/adapter-Dvjudmph-Dvu8g0lW.mjs.map +1 -0
  6. package/dist/adapter.d.mts +10 -10
  7. package/dist/adapter.mjs +4 -4
  8. package/dist/adapter__adapter.d.mts +2 -2
  9. package/dist/adapter__adapter.mjs +1 -1
  10. package/dist/adapter__codec-types.d.mts +3 -3
  11. package/dist/adapter__column-types.d.mts +1 -1
  12. package/dist/adapter__column-types.mjs +1 -1
  13. package/dist/adapter__control.d.mts +2 -2
  14. package/dist/adapter__control.mjs +5 -5
  15. package/dist/adapter__control.mjs.map +1 -1
  16. package/dist/adapter__runtime.d.mts +1 -1
  17. package/dist/adapter__runtime.mjs +3 -3
  18. package/dist/adapter__runtime.mjs.map +1 -1
  19. package/dist/adapter__sql-renderer.d.mts +2 -2
  20. package/dist/adapter__sql-renderer.mjs +1 -1
  21. package/dist/adapter__types.d.mts +2 -2
  22. package/dist/{codec-descriptor-BX2XRz4V-DxUIN3j3.mjs → codec-descriptor-Bf6MlyeJ-C1PfQ9LO.mjs} +3 -3
  23. package/dist/{codec-descriptor-BX2XRz4V-DxUIN3j3.mjs.map → codec-descriptor-Bf6MlyeJ-C1PfQ9LO.mjs.map} +1 -1
  24. package/dist/{codec-types-B_IhsOl9-WPSRXocH.d.mts → codec-types-0AMy_n05-BJvXpaEh.d.mts} +14 -4
  25. package/dist/codec-types-0AMy_n05-BJvXpaEh.d.mts.map +1 -0
  26. package/dist/codec-types-BV1uyhho.d.mts +1 -0
  27. package/dist/codec-types-CLFLW8jd.d.mts +2 -0
  28. package/dist/{codecs-DlI8SadA.mjs → codecs-ByvSFGut.mjs} +3 -3
  29. package/dist/{codecs-DlI8SadA.mjs.map → codecs-ByvSFGut.mjs.map} +1 -1
  30. package/dist/{codecs-r7gY3BuR-B6lXeFyH.mjs → codecs-CaOcjLon-BZ4M7GfD.mjs} +119 -45
  31. package/dist/codecs-CaOcjLon-BZ4M7GfD.mjs.map +1 -0
  32. package/dist/{codecs-hLsmWJRa-DfMCx_nO.d.mts → codecs-DeFZ_0jC-CgA8KUIS.d.mts} +37 -28
  33. package/dist/codecs-DeFZ_0jC-CgA8KUIS.d.mts.map +1 -0
  34. package/dist/codecs-xDq4DNf8.d.mts +1 -0
  35. package/dist/column-types-CWeuNngG.mjs +13 -0
  36. package/dist/column-types-CWeuNngG.mjs.map +1 -0
  37. package/dist/{column-types-iWGuW-0W.d.mts → column-types-DzzwJf7V.d.mts} +1 -8
  38. package/dist/column-types-DzzwJf7V.d.mts.map +1 -0
  39. package/dist/{control-1rQ6mko7.mjs → control-4njwExvT.mjs} +2 -1
  40. package/dist/control-4njwExvT.mjs.map +1 -0
  41. package/dist/{control-CEsPGd0f.mjs → control-B6oLQvl-.mjs} +16 -9
  42. package/dist/{control-CEsPGd0f.mjs.map → control-B6oLQvl-.mjs.map} +1 -1
  43. package/dist/{control-DgI8tIaw.d.mts → control-wWiQrj5H.d.mts} +6 -5
  44. package/dist/{control-DgI8tIaw.d.mts.map → control-wWiQrj5H.d.mts.map} +1 -1
  45. package/dist/data-type-entries-Bc09V6WN-Dc00J0G9.mjs +57 -0
  46. package/dist/data-type-entries-Bc09V6WN-Dc00J0G9.mjs.map +1 -0
  47. package/dist/{data-types-ZsgBg_Zg.d.mts → data-types-B_k5-Ohy.d.mts} +4 -11
  48. package/dist/data-types-B_k5-Ohy.d.mts.map +1 -0
  49. package/dist/data-types-pFQMl37_-B-3aK_wd.mjs +73 -0
  50. package/dist/data-types-pFQMl37_-B-3aK_wd.mjs.map +1 -0
  51. package/dist/{default-normalizer-Czg-VtmN-DEbkGbn7.mjs → default-normalizer-Ch3VFnEH-C-h1XtlJ.mjs} +6 -6
  52. package/dist/default-normalizer-Ch3VFnEH-C-h1XtlJ.mjs.map +1 -0
  53. package/dist/{descriptor-meta-AG8POta2-D-k13ZOE.mjs → descriptor-meta-C3n4Dwxu-DJiDDku0.mjs} +5 -5
  54. package/dist/{descriptor-meta-AG8POta2-D-k13ZOE.mjs.map → descriptor-meta-C3n4Dwxu-DJiDDku0.mjs.map} +1 -1
  55. package/dist/{descriptor-meta-CFPBLIHW-BwigY92R.mjs → descriptor-meta-CFPBLIHW-I-y9R_fj.mjs} +2 -2
  56. package/dist/{descriptor-meta-CFPBLIHW-BwigY92R.mjs.map → descriptor-meta-CFPBLIHW-I-y9R_fj.mjs.map} +1 -1
  57. package/dist/{descriptor-meta-runtime-CIrdwmEr-3T3t3kjc.mjs → descriptor-meta-runtime-Dqtz58eJ-BJ4UjLXW.mjs} +3 -3
  58. package/dist/{descriptor-meta-runtime-CIrdwmEr-3T3t3kjc.mjs.map → descriptor-meta-runtime-Dqtz58eJ-BJ4UjLXW.mjs.map} +1 -1
  59. package/dist/driver.mjs +1 -1
  60. package/dist/driver__control.mjs +1 -1
  61. package/dist/{migration-LE8F9qcM.d.mts → migration-Ccuxti02.d.mts} +2 -2
  62. package/dist/{migration-LE8F9qcM.d.mts.map → migration-Ccuxti02.d.mts.map} +1 -1
  63. package/dist/{migration-BA5np0wx.mjs → migration-Di-URWbl.mjs} +2 -2
  64. package/dist/{migration-BA5np0wx.mjs.map → migration-Di-URWbl.mjs.map} +1 -1
  65. package/dist/{op-factory-call-V6Wu86U8-B1Y4idhr.mjs → op-factory-call-HHnPrspy-7shWKb03.mjs} +13 -9
  66. package/dist/op-factory-call-HHnPrspy-7shWKb03.mjs.map +1 -0
  67. package/dist/{pack-B1iD7wyf.d.mts → pack-BIZIGw3P.d.mts} +2 -2
  68. package/dist/{pack-B1iD7wyf.d.mts.map → pack-BIZIGw3P.d.mts.map} +1 -1
  69. package/dist/{planner-Cm5kqc7I-CKSYA8QU.mjs → planner-BgH57J9_-DZQSi5aj.mjs} +5 -5
  70. package/dist/{planner-Cm5kqc7I-CKSYA8QU.mjs.map → planner-BgH57J9_-DZQSi5aj.mjs.map} +1 -1
  71. package/dist/{planner-B37W4Kaw.d.mts → planner-CFIbY54l.d.mts} +2 -2
  72. package/dist/{planner-B37W4Kaw.d.mts.map → planner-CFIbY54l.d.mts.map} +1 -1
  73. package/dist/{planner-produced-sqlite-migration-C6t5lWDq-DXm-Vkhf.d.mts → planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.d.mts} +3 -3
  74. package/dist/planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.d.mts.map +1 -0
  75. package/dist/{planner-produced-sqlite-migration-DWsg0vgl-N6_jUi2G.mjs → planner-produced-sqlite-migration-Rsg1Udsi-DMyO7zT3.mjs} +3 -3
  76. package/dist/{planner-produced-sqlite-migration-DWsg0vgl-N6_jUi2G.mjs.map → planner-produced-sqlite-migration-Rsg1Udsi-DMyO7zT3.mjs.map} +1 -1
  77. package/dist/planner-produced-sqlite-migration-sYbbeyyS.d.mts +1 -0
  78. package/dist/{runtime-CG71EORy.d.mts → runtime-612DH-du.d.mts} +2 -2
  79. package/dist/{runtime-CG71EORy.d.mts.map → runtime-612DH-du.d.mts.map} +1 -1
  80. package/dist/{runtime-B99c4n56.d.mts → runtime-8_WfNAcA.d.mts} +2 -2
  81. package/dist/{runtime-B99c4n56.d.mts.map → runtime-8_WfNAcA.d.mts.map} +1 -1
  82. package/dist/sql-renderer-fyjZG1VX.d.mts +1 -0
  83. package/dist/{sqlite-contract-view-BpNMaU2m-COMDaGaq.d.mts → sqlite-contract-view-BDw8T5Cp-CbLVOPJq.d.mts} +5 -4
  84. package/dist/sqlite-contract-view-BDw8T5Cp-CbLVOPJq.d.mts.map +1 -0
  85. package/dist/{sqlite-migration-2IEGvjRm-BQfd6NLr.d.mts → sqlite-migration-BSUZhMDG-DZU3d7bZ.d.mts} +3 -3
  86. package/dist/{sqlite-migration-2IEGvjRm-BQfd6NLr.d.mts.map → sqlite-migration-BSUZhMDG-DZU3d7bZ.d.mts.map} +1 -1
  87. package/dist/{sqlite-migration-CindFauZ-BM2X6Ha3.mjs → sqlite-migration-CJFj4Xjj-Bkj6DFpZ.mjs} +12 -11
  88. package/dist/sqlite-migration-CJFj4Xjj-Bkj6DFpZ.mjs.map +1 -0
  89. package/dist/target.d.mts +14 -14
  90. package/dist/target.mjs +13 -13
  91. package/dist/target__codec-descriptor.mjs +1 -1
  92. package/dist/target__codec-types.d.mts +3 -3
  93. package/dist/target__codecs.d.mts +2 -2
  94. package/dist/target__codecs.mjs +2 -2
  95. package/dist/target__control.mjs +1 -1
  96. package/dist/target__data-types.d.mts +2 -2
  97. package/dist/target__data-types.mjs +3 -3
  98. package/dist/target__default-normalizer.mjs +1 -1
  99. package/dist/target__migration.d.mts +2 -2
  100. package/dist/target__migration.mjs +2 -2
  101. package/dist/target__op-factory-call.mjs +1 -1
  102. package/dist/target__pack.d.mts +1 -1
  103. package/dist/target__pack.mjs +1 -1
  104. package/dist/target__planner-produced-sqlite-migration.d.mts +2 -2
  105. package/dist/target__planner-produced-sqlite-migration.mjs +1 -1
  106. package/dist/target__planner.d.mts +1 -1
  107. package/dist/target__planner.mjs +1 -1
  108. package/dist/target__runtime.d.mts +2 -2
  109. package/dist/target__runtime.mjs +1 -1
  110. package/dist/target__runtime.mjs.map +1 -1
  111. package/dist/{types-CJW_JAJf.d.mts → types-BwhTlH8P.d.mts} +1 -1
  112. package/package.json +9 -9
  113. package/dist/adapter-C-sqCgrP.d.mts +0 -2
  114. package/dist/adapter-DUwfMiE4-C-kTEDXO.mjs.map +0 -1
  115. package/dist/codec-types-BXwJkshK.d.mts +0 -2
  116. package/dist/codec-types-B_IhsOl9-WPSRXocH.d.mts.map +0 -1
  117. package/dist/codec-types-BhSj11Hl.d.mts +0 -1
  118. package/dist/codecs-DSZbU8RG.d.mts +0 -1
  119. package/dist/codecs-hLsmWJRa-DfMCx_nO.d.mts.map +0 -1
  120. package/dist/codecs-r7gY3BuR-B6lXeFyH.mjs.map +0 -1
  121. package/dist/column-types-NVxgsjFA.mjs +0 -34
  122. package/dist/column-types-NVxgsjFA.mjs.map +0 -1
  123. package/dist/column-types-iWGuW-0W.d.mts.map +0 -1
  124. package/dist/control-1rQ6mko7.mjs.map +0 -1
  125. package/dist/data-type-entries-CL0a2goH-BCEztwoX.mjs +0 -68
  126. package/dist/data-type-entries-CL0a2goH-BCEztwoX.mjs.map +0 -1
  127. package/dist/data-types-Bs4y7eZb-B00ws2B6.mjs +0 -111
  128. package/dist/data-types-Bs4y7eZb-B00ws2B6.mjs.map +0 -1
  129. package/dist/data-types-ZsgBg_Zg.d.mts.map +0 -1
  130. package/dist/default-normalizer-Czg-VtmN-DEbkGbn7.mjs.map +0 -1
  131. package/dist/op-factory-call-V6Wu86U8-B1Y4idhr.mjs.map +0 -1
  132. package/dist/planner-produced-sqlite-migration-C6t5lWDq-DXm-Vkhf.d.mts.map +0 -1
  133. package/dist/planner-produced-sqlite-migration-D7O3_r38.d.mts +0 -1
  134. package/dist/sql-renderer-eeiux6H6.d.mts +0 -1
  135. package/dist/sqlite-contract-view-BpNMaU2m-COMDaGaq.d.mts.map +0 -1
  136. package/dist/sqlite-migration-CindFauZ-BM2X6Ha3.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"descriptor-meta-runtime-CIrdwmEr-3T3t3kjc.mjs","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/descriptor-meta-runtime-CIrdwmEr.mjs"],"sourcesContent":["import { o as sqliteDataTypes } from \"./data-types-Bs4y7eZb.mjs\";\nconst sqliteTargetDescriptorMetaRuntime = {\n\tkind: \"target\",\n\tfamilyId: \"sql\",\n\ttargetId: \"sqlite\",\n\tid: \"sqlite\",\n\tversion: \"0.0.1\",\n\tcapabilities: {},\n\tdataTypes: sqliteDataTypes\n};\n//#endregion\nexport { sqliteTargetDescriptorMetaRuntime as t };\n\n//# sourceMappingURL=descriptor-meta-runtime-CIrdwmEr.mjs.map"],"mappings":";;AACA,MAAM,oCAAoC;CACzC,MAAM;CACN,UAAU;CACV,UAAU;CACV,IAAI;CACJ,SAAS;CACT,cAAc,CAAC;CACf,WAAW;AACZ"}
1
+ {"version":3,"file":"descriptor-meta-runtime-Dqtz58eJ-BJ4UjLXW.mjs","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/descriptor-meta-runtime-Dqtz58eJ.mjs"],"sourcesContent":["import { a as sqliteDataTypes } from \"./data-types-pFQMl37_.mjs\";\nconst sqliteTargetDescriptorMetaRuntime = {\n\tkind: \"target\",\n\tfamilyId: \"sql\",\n\ttargetId: \"sqlite\",\n\tid: \"sqlite\",\n\tversion: \"0.0.1\",\n\tcapabilities: {},\n\tdataTypes: sqliteDataTypes\n};\n//#endregion\nexport { sqliteTargetDescriptorMetaRuntime as t };\n\n//# sourceMappingURL=descriptor-meta-runtime-Dqtz58eJ.mjs.map"],"mappings":";;AACA,MAAM,oCAAoC;CACzC,MAAM;CACN,UAAU;CACV,UAAU;CACV,IAAI;CACJ,SAAS;CACT,cAAc,CAAC;CACf,WAAW;AACZ"}
package/dist/driver.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { t as SqliteControlDriver } from "./control-1rQ6mko7.mjs";
1
+ import { t as SqliteControlDriver } from "./control-4njwExvT.mjs";
2
2
  export { SqliteControlDriver };
@@ -1,2 +1,2 @@
1
- import { n as sqliteDriverDescriptor, t as SqliteControlDriver } from "./control-1rQ6mko7.mjs";
1
+ import { n as sqliteDriverDescriptor, t as SqliteControlDriver } from "./control-4njwExvT.mjs";
2
2
  export { SqliteControlDriver, sqliteDriverDescriptor as default };
@@ -1,5 +1,5 @@
1
1
  import { t as Op } from "./tables-CvLOKCiJ-Ca1eFkWN.mjs";
2
- import "./sqlite-migration-2IEGvjRm-BQfd6NLr.mjs";
2
+ import "./sqlite-migration-BSUZhMDG-DZU3d7bZ.mjs";
3
3
  import { col as col$1, fn as fn$1, foreignKey, lit as lit$1, primaryKey, unique } from "@prisma/orm-family-sql/relational-core/contract-free";
4
4
  import { placeholder } from "@prisma/orm-framework/errors/migration";
5
5
  import { MigrationCLI } from "@prisma/orm-toolchain/cli/migration-cli";
@@ -40,4 +40,4 @@ declare function dataTransform(opts: DataTransformOptions): Op;
40
40
  declare function rawSql(op: Op): Op;
41
41
  //#endregion
42
42
  export { fn$1 as a, placeholder as c, unique as d, dataTransform as i, primaryKey as l, MigrationCLI as n, foreignKey as o, col$1 as r, lit$1 as s, DataTransformOptions as t, rawSql as u };
43
- //# sourceMappingURL=migration-LE8F9qcM.d.mts.map
43
+ //# sourceMappingURL=migration-Ccuxti02.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migration-LE8F9qcM.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/migration.d.mts"],"mappings":";;;;;;;UAMU;;WAEC;;WAEA;;WAEA;;;;;WAKA;;;;;;;;;WASA;;iBAEM,cAAc,MAAM,uBAAuB;;;;;;;;;;iBAU3C,OAAO,IAAI,KAAK"}
1
+ {"version":3,"file":"migration-Ccuxti02.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/migration.d.mts"],"mappings":";;;;;;;UAMU;;WAEC;;WAEA;;WAEA;;;;;WAKA;;;;;;;;;WASA;;iBAEM,cAAc,MAAM,uBAAuB;;;;;;;;;;iBAU3C,OAAO,IAAI,KAAK"}
@@ -1,5 +1,5 @@
1
1
  import { t as buildTargetDetails } from "./planner-target-details-CIQ789Gc-C5U4yVY9.mjs";
2
- import { v as step } from "./op-factory-call-V6Wu86U8-B1Y4idhr.mjs";
2
+ import { v as step } from "./op-factory-call-HHnPrspy-7shWKb03.mjs";
3
3
  import { col as col$1, fn as fn$1, foreignKey, lit as lit$1, primaryKey, unique } from "@prisma/orm-family-sql/relational-core/contract-free";
4
4
  import { placeholder } from "@prisma/orm-framework/errors/migration";
5
5
  import { MigrationCLI } from "@prisma/orm-toolchain/cli/migration-cli";
@@ -44,4 +44,4 @@ function rawSql(op) {
44
44
  //#endregion
45
45
  export { foreignKey as a, primaryKey as c, fn$1 as i, rawSql as l, col$1 as n, lit$1 as o, dataTransform as r, placeholder as s, MigrationCLI as t, unique as u };
46
46
 
47
- //# sourceMappingURL=migration-BA5np0wx.mjs.map
47
+ //# sourceMappingURL=migration-Di-URWbl.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"migration-BA5np0wx.mjs","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/migration.mjs"],"sourcesContent":["import { h as step } from \"./op-factory-call-V6Wu86U8.mjs\";\nimport { t as SqliteMigration } from \"./sqlite-migration-CindFauZ.mjs\";\nimport { t as buildTargetDetails } from \"./planner-target-details-CIQ789Gc.mjs\";\nimport { placeholder } from \"@internal/errors/migration\";\nimport { col, fn, foreignKey, lit, primaryKey, unique } from \"@internal/sql-relational-core/contract-free\";\nimport { MigrationCLI } from \"@internal/cli/migration-cli\";\n//#region src/core/migrations/operations/data-transform.ts\n/**\n* User-facing `dataTransform` factory for the SQLite migration authoring\n* surface. Invoked directly inside a `migration.ts` file to supply a\n* user-authored SQL statement that runs with operation class `'data'`.\n*\n* Typical use: the planner emits a `DataTransformCall` stub when a NOT NULL\n* tightening requires a backfill. The rendered `migration.ts` exposes the\n* backfill as a `placeholder(\"…\")` slot the user fills in with an\n* `UPDATE … WHERE col IS NULL` statement. The filled-in `dataTransform(...)`\n* invocation returns a runnable operation the runner executes before the\n* subsequent recreate-table op copies data into the tightened schema.\n*/\nfunction dataTransform(opts) {\n\treturn {\n\t\tid: opts.id,\n\t\tlabel: opts.label,\n\t\tsummary: opts.description,\n\t\toperationClass: \"data\",\n\t\ttarget: {\n\t\t\tid: \"sqlite\",\n\t\t\tdetails: buildTargetDetails(\"table\", opts.table)\n\t\t},\n\t\tprecheck: [],\n\t\texecute: [step(opts.description, opts.run())],\n\t\tpostcheck: []\n\t};\n}\n//#endregion\n//#region src/core/migrations/operations/raw.ts\n/**\n* Identity factory for an already-materialized\n* `SqlMigrationPlanOperation<SqlitePlanTargetDetails>`. Mirrors the Postgres\n* `rawSql` factory: the planner uses this to carry ops produced by SQL-family\n* paths (codec lifecycle hooks, raw-SQL escape hatches) alongside structured\n* call IR without reverse-engineering their shape.\n*/\nfunction rawSql(op) {\n\treturn op;\n}\n//#endregion\nexport { SqliteMigration as Migration, MigrationCLI, col, dataTransform, fn, foreignKey, lit, placeholder, primaryKey, rawSql, unique };\n\n//# sourceMappingURL=migration.mjs.map"],"mappings":";;;;;;;;;;;;;;;;;;AAmBA,SAAS,cAAc,MAAM;CAC5B,OAAO;EACN,IAAI,KAAK;EACT,OAAO,KAAK;EACZ,SAAS,KAAK;EACd,gBAAgB;EAChB,QAAQ;GACP,IAAI;GACJ,SAAS,mBAAmB,SAAS,KAAK,KAAK;EAChD;EACA,UAAU,CAAC;EACX,SAAS,CAAC,KAAK,KAAK,aAAa,KAAK,IAAI,CAAC,CAAC;EAC5C,WAAW,CAAC;CACb;AACD;;;;;;;;AAUA,SAAS,OAAO,IAAI;CACnB,OAAO;AACR"}
1
+ {"version":3,"file":"migration-Di-URWbl.mjs","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/migration.mjs"],"sourcesContent":["import { h as step } from \"./op-factory-call-HHnPrspy.mjs\";\nimport { t as SqliteMigration } from \"./sqlite-migration-CJFj4Xjj.mjs\";\nimport { t as buildTargetDetails } from \"./planner-target-details-CIQ789Gc.mjs\";\nimport { placeholder } from \"@internal/errors/migration\";\nimport { col, fn, foreignKey, lit, primaryKey, unique } from \"@internal/sql-relational-core/contract-free\";\nimport { MigrationCLI } from \"@internal/cli/migration-cli\";\n//#region src/core/migrations/operations/data-transform.ts\n/**\n* User-facing `dataTransform` factory for the SQLite migration authoring\n* surface. Invoked directly inside a `migration.ts` file to supply a\n* user-authored SQL statement that runs with operation class `'data'`.\n*\n* Typical use: the planner emits a `DataTransformCall` stub when a NOT NULL\n* tightening requires a backfill. The rendered `migration.ts` exposes the\n* backfill as a `placeholder(\"…\")` slot the user fills in with an\n* `UPDATE … WHERE col IS NULL` statement. The filled-in `dataTransform(...)`\n* invocation returns a runnable operation the runner executes before the\n* subsequent recreate-table op copies data into the tightened schema.\n*/\nfunction dataTransform(opts) {\n\treturn {\n\t\tid: opts.id,\n\t\tlabel: opts.label,\n\t\tsummary: opts.description,\n\t\toperationClass: \"data\",\n\t\ttarget: {\n\t\t\tid: \"sqlite\",\n\t\t\tdetails: buildTargetDetails(\"table\", opts.table)\n\t\t},\n\t\tprecheck: [],\n\t\texecute: [step(opts.description, opts.run())],\n\t\tpostcheck: []\n\t};\n}\n//#endregion\n//#region src/core/migrations/operations/raw.ts\n/**\n* Identity factory for an already-materialized\n* `SqlMigrationPlanOperation<SqlitePlanTargetDetails>`. Mirrors the Postgres\n* `rawSql` factory: the planner uses this to carry ops produced by SQL-family\n* paths (codec lifecycle hooks, raw-SQL escape hatches) alongside structured\n* call IR without reverse-engineering their shape.\n*/\nfunction rawSql(op) {\n\treturn op;\n}\n//#endregion\nexport { SqliteMigration as Migration, MigrationCLI, col, dataTransform, fn, foreignKey, lit, placeholder, primaryKey, rawSql, unique };\n\n//# sourceMappingURL=migration.mjs.map"],"mappings":";;;;;;;;;;;;;;;;;;AAmBA,SAAS,cAAc,MAAM;CAC5B,OAAO;EACN,IAAI,KAAK;EACT,OAAO,KAAK;EACZ,SAAS,KAAK;EACd,gBAAgB;EAChB,QAAQ;GACP,IAAI;GACJ,SAAS,mBAAmB,SAAS,KAAK,KAAK;EAChD;EACA,UAAU,CAAC;EACX,SAAS,CAAC,KAAK,KAAK,aAAa,KAAK,IAAI,CAAC,CAAC;EAC5C,WAAW,CAAC;CACb;AACD;;;;;;;;AAUA,SAAS,OAAO,IAAI;CACnB,OAAO;AACR"}
@@ -1,7 +1,8 @@
1
+ import { o as sqliteInteger } from "./data-types-pFQMl37_-B-3aK_wd.mjs";
1
2
  import { n as sqliteError } from "./errors-DnR-sMHS-KkMLIP2U.mjs";
2
- import { n as decodeSqliteDatetime, r as encodeSqliteDatetime } from "./codecs-r7gY3BuR-B6lXeFyH.mjs";
3
+ import { n as decodeSqliteDatetime, r as encodeSqliteDatetime } from "./codecs-CaOcjLon-BZ4M7GfD.mjs";
3
4
  import { i as tableExistsAst, n as createTable, r as indexExistsAst, t as columnExistsAst } from "./ddl-CXduXyOT-nlDP6DGx.mjs";
4
- import { r as stripOuterParens } from "./default-normalizer-Czg-VtmN-DEbkGbn7.mjs";
5
+ import { r as stripOuterParens } from "./default-normalizer-Ch3VFnEH-C-h1XtlJ.mjs";
5
6
  import { n as quoteIdentifier, t as escapeLiteral } from "./sql-utils-C2O4zVkP-Dz3Hb85I.mjs";
6
7
  import { t as buildTargetDetails } from "./planner-target-details-CIQ789Gc-C5U4yVY9.mjs";
7
8
  import { DdlColumn, FunctionColumnDefault, LiteralColumnDefault, opaqueSql } from "@prisma/orm-family-sql/relational-core/ast";
@@ -14,7 +15,7 @@ import { assertNever } from "@prisma/orm-framework/utils/internal-error";
14
15
  import { errorMigrationOperationOptionRemoved, errorUnfilledPlaceholder } from "@prisma/orm-framework/errors/migration";
15
16
  import { REFERENTIAL_ACTION_SQL } from "@prisma/orm-family-sql/contract/referential-action-sql";
16
17
  import { TsExpression, jsonToTsSource, tsArraySource, tsObjectSource, tsQuotedTextSource } from "@prisma/orm-framework/ts-render";
17
- //#region ../../../3-targets/3-targets/sqlite/dist/op-factory-call-V6Wu86U8.mjs
18
+ //#region ../../../3-targets/3-targets/sqlite/dist/op-factory-call-HHnPrspy.mjs
18
19
  /**
19
20
  * Low-level DDL fragment builders for SQLite migrations.
20
21
  *
@@ -33,13 +34,17 @@ function buildColumnTypeSql(column, types, storageTypes = {}) {
33
34
  const dataType = sqlDataTypeOfCodec(resolved.codecId, types);
34
35
  return renderSqlTypeName(dataType, dataTypeParams(dataType, resolved.typeParams)).toUpperCase();
35
36
  }
37
+ const DIGIT_TEXT = /^-?\d+$/;
36
38
  /**
37
- * A datetime default is the stored value itself in SQLite, which compares text byte by byte, so it
38
- * is written as the text the column's codec writes for every row, not as its canonical form.
39
+ * A literal default in SQL. An `integer` column stores digit text in the contract, which is written
40
+ * as the integer it names. A datetime default is the stored value itself in SQLite, which compares
41
+ * text byte by byte, so it is written as the text the column's codec writes for every row, not as
42
+ * its canonical form.
39
43
  */
40
- function renderDefaultLiteral(value, codecId) {
44
+ function renderDefaultLiteral(value, column) {
45
+ if (column?.dataType === sqliteInteger.id && typeof value === "string" && DIGIT_TEXT.test(value)) return value;
41
46
  if (value instanceof Date) return `'${escapeLiteral(encodeSqliteDatetime(value))}'`;
42
- if (typeof value === "string" && codecId === "sqlite/datetime@1") return `'${escapeLiteral(encodeSqliteDatetime(decodeSqliteDatetime(value)))}'`;
47
+ if (typeof value === "string" && column?.codecId === "sqlite/datetime@1") return `'${escapeLiteral(encodeSqliteDatetime(decodeSqliteDatetime(value)))}'`;
43
48
  if (typeof value === "string") return `'${escapeLiteral(value)}'`;
44
49
  if (typeof value === "number" || typeof value === "bigint") return String(value);
45
50
  if (typeof value === "boolean") return value ? "1" : "0";
@@ -58,7 +63,6 @@ function resolveColumnTypeMetadata(column, storageTypes) {
58
63
  if (!referencedType) throw sqliteError("CONTRACT.TYPE_UNKNOWN", `Storage type "${column.typeRef}" referenced by column is not defined in storage.types.`, { meta: { typeRef: column.typeRef } });
59
64
  return {
60
65
  codecId: referencedType.codecId,
61
- nativeType: referencedType.nativeType,
62
66
  typeParams: referencedType.typeParams
63
67
  };
64
68
  }
@@ -1011,4 +1015,4 @@ function renderPostcheck(postcheck) {
1011
1015
  //#endregion
1012
1016
  export { sqliteIdentifiersCollide as _, DropColumnCall as a, RawSqlCall as c, buildColumnTypeSql as d, buildRecreatePostchecks as f, sqliteDefaultToDdlColumnDefault as g, renderDefaultLiteral as h, DataTransformCall as i, RecreateTableCall as l, renameTableSteps as m, CreateIndexCall as n, DropIndexCall as o, buildRecreateSummary as p, CreateTableCall as r, DropTableCall as s, AddColumnCall as t, RenameTableCall as u, step as v };
1013
1017
 
1014
- //# sourceMappingURL=op-factory-call-V6Wu86U8-B1Y4idhr.mjs.map
1018
+ //# sourceMappingURL=op-factory-call-HHnPrspy-7shWKb03.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"op-factory-call-HHnPrspy-7shWKb03.mjs","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/op-factory-call-HHnPrspy.mjs"],"sourcesContent":["import \"./codec-ids-KMliSCRp.mjs\";\nimport { o as sqliteInteger } from \"./data-types-pFQMl37_.mjs\";\nimport { n as sqliteError } from \"./errors-DnR-sMHS.mjs\";\nimport { n as decodeSqliteDatetime, r as encodeSqliteDatetime } from \"./codecs-CaOcjLon.mjs\";\nimport { r as stripOuterParens } from \"./default-normalizer-Ch3VFnEH.mjs\";\nimport { n as quoteIdentifier, t as escapeLiteral } from \"./sql-utils-C2O4zVkP.mjs\";\nimport { i as tableExistsAst, n as columnExistsAst, r as indexExistsAst, t as createTable } from \"./ddl-CXduXyOT.mjs\";\nimport { t as buildTargetDetails } from \"./planner-target-details-CIQ789Gc.mjs\";\nimport { DdlColumn, FunctionColumnDefault, LiteralColumnDefault, opaqueSql } from \"@internal/sql-relational-core/ast\";\nimport { ifDefined } from \"@internal/utils/defined\";\nimport { dataTypeParams, renderSqlTypeName, sqlDataTypeOfCodec } from \"@internal/sql-contract/data-type\";\nimport { blindCast } from \"@internal/utils/casts\";\nimport { issueOutcome } from \"@internal/framework-components/control\";\nimport { RelationalSchemaNodeKind } from \"@internal/sql-schema-ir/types\";\nimport { assertNever } from \"@internal/utils/internal-error\";\nimport { errorMigrationOperationOptionRemoved, errorUnfilledPlaceholder } from \"@internal/errors/migration\";\nimport { REFERENTIAL_ACTION_SQL } from \"@internal/sql-contract/referential-action-sql\";\nimport { TsExpression, jsonToTsSource, tsArraySource, tsObjectSource, tsQuotedTextSource } from \"@internal/ts-render\";\n//#region src/core/migrations/planner-ddl-builders.ts\n/**\n* Low-level DDL fragment builders for SQLite migrations.\n*\n* These helpers consume `StorageColumn` (the contract shape, possibly with\n* `typeRef`) and produce string fragments. They are called once per column\n* at the call-construction boundary in `issue-planner.ts` / strategies to\n* build flat `SqliteColumnSpec`s; the operation factories themselves never\n* see `StorageColumn` or `storageTypes`.\n*/\n/**\n* Renders the column's DDL type token (e.g. `\"INTEGER\"`, `\"TEXT\"`): the name the data type of its\n* codec is written with, in upper case. Resolves `typeRef` against `storageTypes`.\n*/\nfunction buildColumnTypeSql(column, types, storageTypes = {}) {\n\tconst resolved = resolveColumnTypeMetadata(column, storageTypes);\n\tconst dataType = sqlDataTypeOfCodec(resolved.codecId, types);\n\treturn renderSqlTypeName(dataType, dataTypeParams(dataType, resolved.typeParams)).toUpperCase();\n}\nconst DIGIT_TEXT = /^-?\\d+$/;\n/**\n* A literal default in SQL. An `integer` column stores digit text in the contract, which is written\n* as the integer it names. A datetime default is the stored value itself in SQLite, which compares\n* text byte by byte, so it is written as the text the column's codec writes for every row, not as\n* its canonical form.\n*/\nfunction renderDefaultLiteral(value, column) {\n\tif (column?.dataType === sqliteInteger.id && typeof value === \"string\" && DIGIT_TEXT.test(value)) return value;\n\tif (value instanceof Date) return `'${escapeLiteral(encodeSqliteDatetime(value))}'`;\n\tif (typeof value === \"string\" && column?.codecId === \"sqlite/datetime@1\") return `'${escapeLiteral(encodeSqliteDatetime(decodeSqliteDatetime(value)))}'`;\n\tif (typeof value === \"string\") return `'${escapeLiteral(value)}'`;\n\tif (typeof value === \"number\" || typeof value === \"bigint\") return String(value);\n\tif (typeof value === \"boolean\") return value ? \"1\" : \"0\";\n\tif (value === null) return \"NULL\";\n\treturn `'${escapeLiteral(JSON.stringify(value))}'`;\n}\nfunction buildCreateIndexSql(tableName, indexName, columns, unique = false) {\n\treturn `CREATE ${unique ? \"UNIQUE \" : \"\"}INDEX ${quoteIdentifier(indexName)} ON ${quoteIdentifier(tableName)} (${columns.map(quoteIdentifier).join(\", \")})`;\n}\nfunction buildDropIndexSql(indexName) {\n\treturn `DROP INDEX IF EXISTS ${quoteIdentifier(indexName)}`;\n}\nfunction resolveColumnTypeMetadata(column, storageTypes) {\n\tif (!column.typeRef) return column;\n\tconst referencedType = storageTypes[column.typeRef];\n\tif (!referencedType) throw sqliteError(\"CONTRACT.TYPE_UNKNOWN\", `Storage type \"${column.typeRef}\" referenced by column is not defined in storage.types.`, { meta: { typeRef: column.typeRef } });\n\treturn {\n\t\tcodecId: referencedType.codecId,\n\t\ttypeParams: referencedType.typeParams\n\t};\n}\n//#endregion\n//#region src/core/migrations/identifier-case.ts\nfunction foldAsciiLetters(identifier) {\n\treturn identifier.replace(/[A-Z]/g, (letter) => letter.toLowerCase());\n}\n/**\n* Whether SQLite takes two identifiers for the same name. It compares table and index names without regard to the case of ASCII letters, and compares every other character exactly.\n*/\nfunction sqliteIdentifiersCollide(left, right) {\n\treturn foldAsciiLetters(left) === foldAsciiLetters(right);\n}\n//#endregion\n//#region src/core/migrations/operations/shared.ts\nfunction step(description, sql, params) {\n\treturn {\n\t\tdescription,\n\t\tsql,\n\t\t...ifDefined(\"params\", params)\n\t};\n}\n/** The DDL default of a contract default: `autoincrement()` is written as part of the column's type instead. */\nfunction sqliteDefaultToDdlColumnDefault(columnDefault) {\n\tif (!columnDefault) return void 0;\n\tswitch (columnDefault.kind) {\n\t\tcase \"literal\": return new LiteralColumnDefault(columnDefault.value);\n\t\tcase \"function\":\n\t\t\tif (columnDefault.expression === \"autoincrement()\") return void 0;\n\t\t\treturn new FunctionColumnDefault(opaqueSql(columnDefault.expression));\n\t\tdefault: {\n\t\t\tconst exhaustive = columnDefault;\n\t\t\treturn assertNever(exhaustive, `sqliteDefaultToDdlColumnDefault: unhandled kind \"${blindCast(exhaustive).kind}\"`);\n\t\t}\n\t}\n}\n/**\n* A column spec an earlier version wrote carries its default as SQL text in `defaultSql`, empty when it has none.\n*/\nfunction refuseEarlierColumnSpecs(operation, tableName, columns) {\n\tconst earlier = columns.find((column) => Object.hasOwn(column, \"defaultSql\"));\n\tif (earlier === void 0) return;\n\tthrow errorMigrationOperationOptionRemoved({\n\t\toperation,\n\t\toption: \"defaultSql\",\n\t\tsubject: `column ${JSON.stringify(earlier.name)} of table ${JSON.stringify(tableName)}`,\n\t\trewrite: \"Write the column's default as `default: { kind: 'literal', value }` or `default: { kind: 'function', expression }`, with the column's `codecRef`, in place of `defaultSql`, and delete an empty `defaultSql`.\",\n\t\tupgradeEntry: \"migration-ts-column-defaults\"\n\t});\n}\n/** The `DEFAULT …` clause the adapter writes for a column spec, `''` when it has none. */\nfunction renderSpecDefault$1(column, tableName, lowerer) {\n\tconst ddlDefault = column.inlineAutoincrementPrimaryKey ? void 0 : sqliteDefaultToDdlColumnDefault(column.default);\n\treturn lowerer.renderColumnDefault(new DdlColumn({\n\t\tname: column.name,\n\t\ttype: column.typeSql,\n\t\t...ifDefined(\"default\", ddlDefault),\n\t\t...ifDefined(\"codecRef\", column.codecRef)\n\t}), tableName);\n}\n/**\n* Renders a single column's inline DDL fragment within a `CREATE TABLE`\n* statement. Honours the `inlineAutoincrementPrimaryKey` flag — SQLite\n* treats `INTEGER PRIMARY KEY AUTOINCREMENT` as a special form that aliases\n* `rowid`, and the column must not carry a `DEFAULT` or repeat `NOT NULL`.\n*/\nfunction renderColumnDefinition(column, defaultClause) {\n\tconst parts = [quoteIdentifier(column.name), column.typeSql];\n\tif (column.inlineAutoincrementPrimaryKey) parts.push(\"PRIMARY KEY AUTOINCREMENT\");\n\telse {\n\t\tif (defaultClause) parts.push(defaultClause);\n\t\tif (!column.nullable) parts.push(\"NOT NULL\");\n\t}\n\treturn parts.join(\" \");\n}\n/**\n* Renders an inline FOREIGN KEY constraint clause for a `CREATE TABLE`\n* body. Every `SqliteForeignKeySpec` is constraint-bearing by construction\n* (`tableSpecFromNode` only ever builds specs from schema-IR FK nodes, which\n* are themselves constraint-only — a non-constraint FK contributes no node).\n*/\nfunction renderForeignKeyClause(fk) {\n\tlet sql = `${fk.name ? `CONSTRAINT ${quoteIdentifier(fk.name)} ` : \"\"}FOREIGN KEY (${fk.columns.map(quoteIdentifier).join(\", \")}) REFERENCES ${quoteIdentifier(fk.references.table)} (${fk.references.columns.map(quoteIdentifier).join(\", \")})`;\n\tif (fk.onDelete !== void 0) sql += ` ON DELETE ${REFERENTIAL_ACTION_SQL[fk.onDelete]}`;\n\tif (fk.onUpdate !== void 0) sql += ` ON UPDATE ${REFERENTIAL_ACTION_SQL[fk.onUpdate]}`;\n\treturn sql;\n}\n//#endregion\n//#region src/core/migrations/operations/columns.ts\nfunction addColumnExecuteSql(tableName, column, defaultClause) {\n\treturn [\n\t\t`ALTER TABLE ${quoteIdentifier(tableName)}`,\n\t\t`ADD COLUMN ${quoteIdentifier(column.name)} ${column.typeSql}`,\n\t\tdefaultClause,\n\t\tcolumn.nullable ? \"\" : \"NOT NULL\"\n\t].filter(Boolean).join(\" \");\n}\nfunction dropColumnExecuteSql(tableName, columnName) {\n\treturn `ALTER TABLE ${quoteIdentifier(tableName)} DROP COLUMN ${quoteIdentifier(columnName)}`;\n}\nasync function addColumn(tableName, column, lowerer) {\n\trefuseEarlierColumnSpecs(\"addColumn\", tableName, [column]);\n\tconst defaultClause = await renderSpecDefault$1(column, tableName, lowerer);\n\tconst checks = columnExistsAst(tableName, column.name);\n\tconst absent = await lowerer.lowerToExecuteRequest(checks.columnAbsent());\n\tconst present = await lowerer.lowerToExecuteRequest(checks.columnPresent());\n\treturn {\n\t\tid: `column.${tableName}.${column.name}`,\n\t\tlabel: `Add column ${column.name} on ${tableName}`,\n\t\tsummary: `Adds column ${column.name} on ${tableName}`,\n\t\toperationClass: \"additive\",\n\t\ttarget: {\n\t\t\tid: \"sqlite\",\n\t\t\tdetails: buildTargetDetails(\"column\", column.name, tableName)\n\t\t},\n\t\tprecheck: [step(`ensure column \"${column.name}\" is missing`, absent.sql, absent.params)],\n\t\texecute: [step(`add column \"${column.name}\"`, addColumnExecuteSql(tableName, column, defaultClause))],\n\t\tpostcheck: [step(`verify column \"${column.name}\" exists`, present.sql, present.params)]\n\t};\n}\n//#endregion\n//#region src/core/migrations/operations/tables.ts\nasync function tableExistsSteps(lowerer, tableName) {\n\tconst checks = tableExistsAst(tableName);\n\treturn {\n\t\tpresent: await lowerer.lowerToExecuteRequest(checks.tablePresent()),\n\t\tabsent: await lowerer.lowerToExecuteRequest(checks.tableAbsent())\n\t};\n}\n/**\n* Renders the body of a `CREATE TABLE <name> ( … )` statement from a flat\n* `SqliteTableSpec`. SQLite's `INTEGER PRIMARY KEY AUTOINCREMENT` form is\n* inline on the column; the table-level PRIMARY KEY clause is emitted only\n* when no column carries `inlineAutoincrementPrimaryKey`.\n*/\nfunction renderCreateTableSql(tableName, spec, defaultClauses) {\n\tconst columnDefs = spec.columns.map((column, index) => renderColumnDefinition(column, defaultClauses[index] ?? \"\"));\n\tconst constraintDefs = [];\n\tconst hasInlinePk = spec.columns.some((c) => c.inlineAutoincrementPrimaryKey);\n\tif (spec.primaryKey && !hasInlinePk) constraintDefs.push(`PRIMARY KEY (${spec.primaryKey.columns.map(quoteIdentifier).join(\", \")})`);\n\tfor (const u of spec.uniques ?? []) {\n\t\tconst name = u.name ? `CONSTRAINT ${quoteIdentifier(u.name)} ` : \"\";\n\t\tconstraintDefs.push(`${name}UNIQUE (${u.columns.map(quoteIdentifier).join(\", \")})`);\n\t}\n\tfor (const fk of spec.foreignKeys ?? []) {\n\t\tconst clause = renderForeignKeyClause(fk);\n\t\tif (clause) constraintDefs.push(clause);\n\t}\n\tconst allDefs = [...columnDefs, ...constraintDefs];\n\treturn `CREATE TABLE ${quoteIdentifier(tableName)} (\\n ${allDefs.join(\",\\n \")}\\n)`;\n}\nfunction renameTableViaName(toName) {\n\treturn `_prisma_rename_${toName}`;\n}\nfunction renameChangesOnlyCase(fromName, toName) {\n\treturn sqliteIdentifiersCollide(fromName, toName);\n}\n/**\n* SQLite takes names that differ only in the case of ASCII letters for the\n* same name, so such a rename (`userProfile` to `UserProfile`) is refused as\n* \"already exists\" when done in one statement. It goes through a temporary name.\n*/\nfunction renameTableSteps(fromName, toName) {\n\tconst from = quoteIdentifier(fromName);\n\tconst to = quoteIdentifier(toName);\n\tif (!renameChangesOnlyCase(fromName, toName)) return [step(`rename table \"${fromName}\" to \"${toName}\"`, `ALTER TABLE ${from} RENAME TO ${to}`)];\n\tconst viaName = renameTableViaName(toName);\n\tconst via = quoteIdentifier(viaName);\n\treturn [step(`rename table \"${fromName}\" to \"${viaName}\" (SQLite table names are case-insensitive)`, `ALTER TABLE ${from} RENAME TO ${via}`), step(`rename table \"${viaName}\" to \"${toName}\"`, `ALTER TABLE ${via} RENAME TO ${to}`)];\n}\nasync function recreateTable(args, lowerer) {\n\tconst { tableName, contractTable, schemaColumnNames, indexes, summary, postchecks, operationClass } = args;\n\trefuseEarlierColumnSpecs(\"recreateTable\", tableName, contractTable.columns);\n\tconst tempName = `_prisma_new_${tableName}`;\n\tconst liveSet = new Set(schemaColumnNames);\n\tconst sharedColumns = contractTable.columns.filter((c) => liveSet.has(c.name)).map((c) => c.name);\n\tconst columnList = sharedColumns.map(quoteIdentifier).join(\", \");\n\tconst indexStatements = indexes.map((idx) => ({\n\t\tdescription: `recreate index \"${idx.name}\" on \"${tableName}\"`,\n\t\tsql: buildCreateIndexSql(tableName, idx.name, idx.columns)\n\t}));\n\tconst copyStep = sharedColumns.length > 0 ? [step(`copy data from \"${tableName}\" to \"${tempName}\"`, `INSERT INTO ${quoteIdentifier(tempName)} (${columnList}) SELECT ${columnList} FROM ${quoteIdentifier(tableName)}`)] : [];\n\tconst defaultClauses = await renderSpecDefaults(contractTable, tableName, lowerer);\n\tconst clauseByColumn = new Map(contractTable.columns.map((column, index) => [column.name, defaultClauses[index] ?? \"\"]));\n\tconst tableSteps = await tableExistsSteps(lowerer, tableName);\n\tconst tempSteps = await tableExistsSteps(lowerer, tempName);\n\treturn {\n\t\tid: `recreateTable.${tableName}`,\n\t\tlabel: `Recreate table ${tableName}`,\n\t\tsummary,\n\t\toperationClass,\n\t\ttarget: {\n\t\t\tid: \"sqlite\",\n\t\t\tdetails: buildTargetDetails(\"table\", tableName)\n\t\t},\n\t\tprecheck: [step(`ensure table \"${tableName}\" exists`, tableSteps.present.sql, tableSteps.present.params), step(`ensure temp table \"${tempName}\" does not exist`, tempSteps.absent.sql, tempSteps.absent.params)],\n\t\texecute: [\n\t\t\tstep(`create new table \"${tempName}\" with desired schema`, renderCreateTableSql(tempName, contractTable, defaultClauses)),\n\t\t\t...copyStep,\n\t\t\tstep(`drop old table \"${tableName}\"`, `DROP TABLE ${quoteIdentifier(tableName)}`),\n\t\t\tstep(`rename \"${tempName}\" to \"${tableName}\"`, `ALTER TABLE ${quoteIdentifier(tempName)} RENAME TO ${quoteIdentifier(tableName)}`),\n\t\t\t...indexStatements\n\t\t],\n\t\tpostcheck: [\n\t\t\tstep(`verify table \"${tableName}\" exists`, tableSteps.present.sql, tableSteps.present.params),\n\t\t\tstep(`verify temp table \"${tempName}\" is gone`, tempSteps.absent.sql, tempSteps.absent.params),\n\t\t\t...postchecks.flatMap((check) => \"sql\" in check ? [check] : defaultPostcheck(tableName, check, clauseByColumn.get(check.columnDefault)))\n\t\t]\n\t};\n}\nfunction renderSpecDefaults(spec, tableName, lowerer) {\n\treturn Promise.all(spec.columns.map((column) => renderSpecDefault$1(column, tableName, lowerer)));\n}\n/**\n* Checks the column's default is the text of its `DEFAULT …` clause. SQLite's\n* `pragma_table_info.dflt_value` strips the outer parentheses of an expression\n* default, so `(strftime('%Y-%m-%dT%H:%M:%fZ','now'))` is stored as `strftime('%Y-%m-%dT%H:%M:%fZ','now')`; they are\n* stripped here too.\n*/\nfunction defaultPostcheck(tableName, check, clause) {\n\tif (clause === void 0 || !clause.startsWith(\"DEFAULT \")) return [];\n\tconst expectedRaw = stripOuterParens(clause.slice(8));\n\treturn [{\n\t\tdescription: check.description,\n\t\tsql: `SELECT COUNT(*) > 0 FROM pragma_table_info('${escapeLiteral(tableName)}') WHERE name = '${escapeLiteral(check.columnDefault)}' AND dflt_value = '${escapeLiteral(expectedRaw)}'`\n\t}];\n}\n/**\n* Build a one-line summary of a recreate-table operation from the schema-diff\n* issues that triggered it. Lives next to `recreateTable` so the planner\n* (which has the issues) can produce the same description the factory\n* used to build inline. Keeping the formatting target-side keeps\n* `RecreateTableCall` issue-free at the IR layer. `SchemaDiffIssue` carries\n* no rendered message, so this renders one from each issue's path.\n*/\nfunction buildRecreateSummary(tableName, issues) {\n\treturn `Recreates table ${tableName} to apply schema changes: ${issues.map((i) => i.path.join(\"/\")).join(\"; \")}`;\n}\nfunction nodeKindOf(issue) {\n\tconst node = issue.expected ?? issue.actual;\n\tif (node === void 0) return void 0;\n\treturn blindCast(node).nodeKind;\n}\n/** Mirrors `SqlColumnIR.isEqualTo`'s type comparison, isolated so a `not-equal` column issue's postcheck can target type drift and nullability drift independently. */\nfunction columnTypeChanged(expected, actual) {\n\tif (expected.resolvedNativeType !== void 0 && actual.resolvedNativeType !== void 0) return expected.resolvedNativeType !== actual.resolvedNativeType;\n\treturn expected.nativeType !== actual.nativeType || Boolean(expected.many) !== Boolean(actual.many);\n}\n/**\n* Returns the columns the contract expects as the table's primary key. Picks\n* up SQLite's inline `INTEGER PRIMARY KEY AUTOINCREMENT` form when no\n* explicit `primaryKey` clause is set on the spec.\n*/\nfunction expectedPrimaryKeyColumns(spec) {\n\tif (spec.primaryKey) return spec.primaryKey.columns;\n\tconst inlinePk = spec.columns.find((c) => c.inlineAutoincrementPrimaryKey);\n\treturn inlinePk ? [inlinePk.name] : [];\n}\nfunction quoteSqlList(values) {\n\treturn values.map((v) => `'${escapeLiteral(v)}'`).join(\", \");\n}\n/**\n* A condition on the index aliased `l`: it covers exactly these columns. Order is not checked, because SQLite identifies a unique index by its column set.\n*/\nfunction indexCoversExactly(columns) {\n\treturn `(SELECT COUNT(*) FROM pragma_index_info(l.name)) = ${columns.length} AND (SELECT COUNT(*) FROM pragma_index_info(l.name) WHERE name IN (${quoteSqlList(columns)})) = ${columns.length}`;\n}\nfunction columnNameFromNode(issue) {\n\tconst node = issue.expected ?? issue.actual;\n\tif (node === void 0) return void 0;\n\treturn blindCast(node).name;\n}\n/**\n* A column-default issue's own node has no back-reference to its owning\n* column — it's a transient child built by `SqlColumnIR.children()`. The\n* column's id (`column:<name>`) is always the diff path's second-to-last\n* segment for a default issue (`[..., tableId, columnId, 'default']`), so\n* the name is recovered from the path rather than the node.\n*/\nfunction columnNameFromDefaultIssuePath(issue) {\n\tconst columnId = issue.path[issue.path.length - 2];\n\tif (columnId === void 0) return void 0;\n\treturn columnId.startsWith(\"column:\") ? columnId.slice(7) : columnId;\n}\n/**\n* Per-issue postchecks verifying the recreated table's shape against the\n* expected spec. Column-level issues (`sql-column` `not-equal`,\n* `sql-column-default` any reason) emit one targeted check each;\n* constraint-level issues (`sql-primary-key`, `sql-unique`, `sql-foreign-key`,\n* any reason) emit one `pragma_*`-driven check per declared constraint in the\n* expected spec, so a recreated table with the right columns but the wrong\n* PK / unique / FK shape fails the postcheck instead of passing silently.\n* Exported so the planner can pre-build the list at construction time and\n* `RecreateTableCall` doesn't have to carry `SchemaDiffIssue` objects through\n* to render time.\n*/\nfunction buildRecreatePostchecks(tableName, issues, spec) {\n\tconst checks = [];\n\tconst t = escapeLiteral(tableName);\n\tconst byName = new Map(spec.columns.map((c) => [c.name, c]));\n\tlet hasPkIssue = false;\n\tlet hasUniqueIssue = false;\n\tlet hasFkIssue = false;\n\tfor (const issue of issues) {\n\t\tconst nodeKind = nodeKindOf(issue);\n\t\tif (nodeKind === RelationalSchemaNodeKind.column && issueOutcome(issue) === \"not-equal\") {\n\t\t\tconst columnName = columnNameFromNode(issue);\n\t\t\tif (columnName === void 0) continue;\n\t\t\tconst c = escapeLiteral(columnName);\n\t\t\tconst expected = blindCast(issue.expected);\n\t\t\tconst actual = blindCast(issue.actual);\n\t\t\tif (expected.nullable !== actual.nullable) checks.push({\n\t\t\t\tdescription: `verify \"${columnName}\" nullability on \"${tableName}\"`,\n\t\t\t\tsql: `SELECT COUNT(*) > 0 FROM pragma_table_info('${t}') WHERE name = '${c}' AND \"notnull\" = ${expected.nullable ? 0 : 1}`\n\t\t\t});\n\t\t\tif (columnTypeChanged(expected, actual)) {\n\t\t\t\tconst colSpec = byName.get(columnName);\n\t\t\t\tif (colSpec) checks.push({\n\t\t\t\t\tdescription: `verify \"${columnName}\" type on \"${tableName}\"`,\n\t\t\t\t\tsql: `SELECT COUNT(*) > 0 FROM pragma_table_info('${t}') WHERE name = '${c}' AND LOWER(type) = '${escapeLiteral(colSpec.typeSql.toLowerCase())}'`\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tif (nodeKind === RelationalSchemaNodeKind.columnDefault) {\n\t\t\tconst columnName = columnNameFromDefaultIssuePath(issue);\n\t\t\tif (columnName === void 0) continue;\n\t\t\tconst c = escapeLiteral(columnName);\n\t\t\tif (issueOutcome(issue) === \"not-expected\") {\n\t\t\t\tchecks.push({\n\t\t\t\t\tdescription: `verify \"${columnName}\" has no default on \"${tableName}\"`,\n\t\t\t\t\tsql: `SELECT COUNT(*) > 0 FROM pragma_table_info('${t}') WHERE name = '${c}' AND dflt_value IS NULL`\n\t\t\t\t});\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (byName.get(columnName)?.default !== void 0) checks.push({\n\t\t\t\tdescription: `verify \"${columnName}\" default on \"${tableName}\"`,\n\t\t\t\tcolumnDefault: columnName\n\t\t\t});\n\t\t\tcontinue;\n\t\t}\n\t\tif (nodeKind === RelationalSchemaNodeKind.primaryKey) hasPkIssue = true;\n\t\tif (nodeKind === RelationalSchemaNodeKind.unique) hasUniqueIssue = true;\n\t\tif (nodeKind === RelationalSchemaNodeKind.foreignKey) hasFkIssue = true;\n\t}\n\tif (hasPkIssue) {\n\t\tconst pkColumns = expectedPrimaryKeyColumns(spec);\n\t\tconst colCount = pkColumns.length;\n\t\tif (colCount === 0) checks.push({\n\t\t\tdescription: `verify \"${tableName}\" has no primary key`,\n\t\t\tsql: `SELECT (SELECT COUNT(*) FROM pragma_table_info('${t}') WHERE pk > 0) = 0`\n\t\t});\n\t\telse checks.push({\n\t\t\tdescription: `verify primary key on \"${tableName}\"`,\n\t\t\tsql: `SELECT (SELECT COUNT(*) FROM pragma_table_info('${t}') WHERE pk > 0) = ${colCount} AND (SELECT COUNT(*) FROM pragma_table_info('${t}') WHERE pk > 0 AND name IN (${quoteSqlList(pkColumns)})) = ${colCount}`\n\t\t});\n\t}\n\tif (hasUniqueIssue) for (const u of spec.uniques ?? []) {\n\t\tconst description = u.name ? `verify unique constraint \"${u.name}\" on \"${tableName}\"` : `verify unique constraint (${u.columns.join(\", \")}) on \"${tableName}\"`;\n\t\tchecks.push({\n\t\t\tdescription,\n\t\t\tsql: `SELECT EXISTS (SELECT 1 FROM pragma_index_list('${t}') l WHERE l.\"unique\" = 1 AND ${indexCoversExactly(u.columns)})`\n\t\t});\n\t}\n\tif (hasUniqueIssue) {\n\t\tconst expected = (spec.uniques ?? []).map((u) => `(${indexCoversExactly(u.columns)})`);\n\t\tchecks.push({\n\t\t\tdescription: `verify \"${tableName}\" has no unique constraint besides the expected ones`,\n\t\t\tsql: `SELECT NOT EXISTS (SELECT 1 FROM pragma_index_list('${t}') l WHERE l.origin = 'u' AND NOT (${expected.length === 0 ? \"0\" : expected.join(\" OR \")}))`\n\t\t});\n\t}\n\tif (hasFkIssue) {\n\t\tfor (const fk of spec.foreignKeys ?? []) {\n\t\t\tconst refTable = escapeLiteral(fk.references.table);\n\t\t\tconst colCount = fk.columns.length;\n\t\t\tconst tuples = fk.columns.map((from, i) => {\n\t\t\t\tconst to = fk.references.columns[i] ?? from;\n\t\t\t\treturn `('${escapeLiteral(from)}', '${escapeLiteral(to)}')`;\n\t\t\t}).join(\", \");\n\t\t\tconst description = `verify foreign key (${fk.columns.join(\", \")}) → ${fk.references.table}(${fk.references.columns.join(\", \")}) on \"${tableName}\"`;\n\t\t\tchecks.push({\n\t\t\t\tdescription,\n\t\t\t\tsql: `SELECT EXISTS (SELECT 1 FROM pragma_foreign_key_list('${t}') f WHERE f.\"table\" = '${refTable}' GROUP BY f.id HAVING COUNT(*) = ${colCount} AND SUM(CASE WHEN (f.\"from\", f.\"to\") IN (${tuples}) THEN 1 ELSE 0 END) = ${colCount})`\n\t\t\t});\n\t\t}\n\t\tconst expected = spec.foreignKeys?.length ?? 0;\n\t\tchecks.push({\n\t\t\tdescription: `verify \"${tableName}\" has exactly ${expected} foreign keys`,\n\t\t\tsql: `SELECT (SELECT COUNT(DISTINCT id) FROM pragma_foreign_key_list('${t}')) = ${expected}`\n\t\t});\n\t}\n\treturn checks;\n}\n//#endregion\n//#region src/core/migrations/op-factory-call.ts\nconst TARGET_MIGRATION_MODULE = \"@internal/sqlite/migration\";\nvar SqliteOpFactoryCallNode = class extends TsExpression {\n\timportRequirements() {\n\t\treturn [{\n\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\tsymbol: this.factoryName\n\t\t}];\n\t}\n\tfreeze() {\n\t\tObject.freeze(this);\n\t}\n};\nfunction renderDdlColumnDefault(def) {\n\tif (!def) return \"\";\n\tif (def.kind === \"literal\") return `lit(${jsonToTsSource(def.value)})`;\n\treturn `fn(${tsQuotedTextSource(def.expression.text)})`;\n}\nfunction renderDdlColumnAsTsCall(column) {\n\tconst opts = [];\n\tif (column.notNull) opts.push(\"notNull: true\");\n\tif (column.primaryKey) opts.push(\"primaryKey: true\");\n\tif (column.default) opts.push(`default: ${renderDdlColumnDefault(column.default)}`);\n\tif (column.codecRef) opts.push(`codecRef: ${jsonToTsSource(column.codecRef)}`);\n\tconst optsStr = opts.length > 0 ? `, { ${opts.join(\", \")} }` : \"\";\n\treturn `col(${jsonToTsSource(column.name)}, ${jsonToTsSource(column.type)}${optsStr})`;\n}\nfunction renderDdlConstraintAsTsCall(constraint) {\n\tswitch (constraint.kind) {\n\t\tcase \"primary-key\": {\n\t\t\tconst nameOpt = constraint.name ? `, { name: ${jsonToTsSource(constraint.name)} }` : \"\";\n\t\t\treturn `primaryKey(${jsonToTsSource(constraint.columns)}${nameOpt})`;\n\t\t}\n\t\tcase \"foreign-key\": {\n\t\t\tconst opts = [];\n\t\t\tif (constraint.name) opts.push(`name: ${jsonToTsSource(constraint.name)}`);\n\t\t\tif (constraint.onDelete) opts.push(`onDelete: ${jsonToTsSource(constraint.onDelete)}`);\n\t\t\tif (constraint.onUpdate) opts.push(`onUpdate: ${jsonToTsSource(constraint.onUpdate)}`);\n\t\t\tconst optsStr = opts.length > 0 ? `, { ${opts.join(\", \")} }` : \"\";\n\t\t\treturn `foreignKey(${jsonToTsSource(constraint.columns)}, ${jsonToTsSource(constraint.refTable)}, ${jsonToTsSource(constraint.refColumns)}${optsStr})`;\n\t\t}\n\t\tcase \"unique\": {\n\t\t\tconst nameOpt = constraint.name ? `, { name: ${jsonToTsSource(constraint.name)} }` : \"\";\n\t\t\treturn `unique(${jsonToTsSource(constraint.columns)}${nameOpt})`;\n\t\t}\n\t\tcase \"check-expression\": throw sqliteError(\"CONTRACT.CONSTRAINT_INVALID\", `The SQLite target does not support CHECK constraints (constraint \"${constraint.name}\"). The \"checkConstraint\" capability is Postgres-only — remove the \"@@check\" / \"check()\" declaration, or target Postgres.`, { meta: { constraintName: constraint.name } });\n\t}\n}\nfunction constraintImportSymbols(constraints) {\n\tif (!constraints || constraints.length === 0) return [];\n\tconst symbols = /* @__PURE__ */ new Set();\n\tfor (const c of constraints) if (c.kind === \"primary-key\") symbols.add(\"primaryKey\");\n\telse if (c.kind === \"foreign-key\") symbols.add(\"foreignKey\");\n\telse if (c.kind === \"unique\") symbols.add(\"unique\");\n\treturn [...symbols];\n}\nfunction defaultImportSymbols(columns) {\n\tconst symbols = /* @__PURE__ */ new Set();\n\tfor (const col of columns) if (col.default?.kind === \"literal\") symbols.add(\"lit\");\n\telse if (col.default?.kind === \"function\") symbols.add(\"fn\");\n\treturn [...symbols];\n}\nvar CreateTableCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"createTable\";\n\toperationClass = \"additive\";\n\ttableName;\n\tcolumns;\n\tconstraints;\n\tlabel;\n\tconstructor(tableName, columns, constraints) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.columns = Object.freeze([...columns]);\n\t\tthis.constraints = constraints ? Object.freeze([...constraints]) : void 0;\n\t\tthis.label = `Create table ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `CreateTableCall.toOp: a DDL lowerer is required on the SQLite planner path (table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName\n\t\t} });\n\t\tconst ddlNode = createTable({\n\t\t\ttable: this.tableName,\n\t\t\tcolumns: this.columns,\n\t\t\t...ifDefined(\"constraints\", this.constraints)\n\t\t});\n\t\tconst statement = await lowerer.lowerToExecuteRequest(ddlNode);\n\t\tconst tableName = this.tableName;\n\t\tconst tableChecks = tableExistsAst(tableName);\n\t\tconst absent = await lowerer.lowerToExecuteRequest(tableChecks.tableAbsent());\n\t\tconst present = await lowerer.lowerToExecuteRequest(tableChecks.tablePresent());\n\t\treturn {\n\t\t\tid: `table.${tableName}`,\n\t\t\tlabel: `Create table ${tableName}`,\n\t\t\tsummary: `Creates table ${tableName} with required columns`,\n\t\t\toperationClass: \"additive\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"table\", tableName)\n\t\t\t},\n\t\t\tprecheck: [step(`ensure table \"${tableName}\" does not exist`, absent.sql, absent.params)],\n\t\t\texecute: [{\n\t\t\t\tdescription: `create table \"${tableName}\"`,\n\t\t\t\tsql: statement.sql,\n\t\t\t\tparams: statement.params ?? []\n\t\t\t}],\n\t\t\tpostcheck: [step(`verify table \"${tableName}\" exists`, present.sql, present.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\tconst columnsList = this.columns.map(renderDdlColumnAsTsCall).join(\", \");\n\t\tconst constraintsList = this.constraints ? this.constraints.map(renderDdlConstraintAsTsCall).join(\", \") : void 0;\n\t\tconst opts = [];\n\t\topts.push(`table: ${jsonToTsSource(this.tableName)}`);\n\t\topts.push(`columns: [${columnsList}]`);\n\t\tif (constraintsList) opts.push(`constraints: [${constraintsList}]`);\n\t\treturn `this.createTable({ ${opts.join(\", \")} })`;\n\t}\n\timportRequirements() {\n\t\tconst req = [];\n\t\tif (this.columns.length > 0) {\n\t\t\treq.push({\n\t\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\t\tsymbol: \"col\"\n\t\t\t});\n\t\t\tfor (const sym of defaultImportSymbols(this.columns)) req.push({\n\t\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\t\tsymbol: sym\n\t\t\t});\n\t\t}\n\t\tfor (const sym of constraintImportSymbols(this.constraints)) req.push({\n\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\tsymbol: sym\n\t\t});\n\t\treturn req;\n\t}\n};\nvar DropTableCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"dropTable\";\n\toperationClass = \"destructive\";\n\ttableName;\n\tlabel;\n\tconstructor(tableName) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.label = `Drop table ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `DropTableCall.toOp: a lowerer is required on the SQLite planner path (table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName\n\t\t} });\n\t\tconst checks = tableExistsAst(this.tableName);\n\t\tconst present = await lowerer.lowerToExecuteRequest(checks.tablePresent());\n\t\tconst absent = await lowerer.lowerToExecuteRequest(checks.tableAbsent());\n\t\treturn {\n\t\t\tid: `dropTable.${this.tableName}`,\n\t\t\tlabel: `Drop table ${this.tableName}`,\n\t\t\tsummary: `Drops table ${this.tableName} which is not in the contract`,\n\t\t\toperationClass: \"destructive\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"table\", this.tableName)\n\t\t\t},\n\t\t\tprecheck: [step(`ensure table \"${this.tableName}\" exists`, present.sql, present.params)],\n\t\t\texecute: [step(`drop table \"${this.tableName}\"`, `DROP TABLE ${quoteIdentifier(this.tableName)}`)],\n\t\t\tpostcheck: [step(`verify table \"${this.tableName}\" is gone`, absent.sql, absent.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\treturn `this.dropTable({ table: ${jsonToTsSource(this.tableName)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar RenameTableCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"renameTable\";\n\toperationClass = \"widening\";\n\toldTableName;\n\t/** The new name: the table's contract-side identity after the rename. */\n\ttableName;\n\tlabel;\n\tconstructor(oldTableName, tableName) {\n\t\tsuper();\n\t\tthis.oldTableName = oldTableName;\n\t\tthis.tableName = tableName;\n\t\tthis.label = `Rename table ${oldTableName} to ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `RenameTableCall.toOp: a lowerer is required on the SQLite planner path (table \"${this.oldTableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.oldTableName\n\t\t} });\n\t\tconst fromChecks = tableExistsAst(this.oldTableName);\n\t\tconst toChecks = tableExistsAst(this.tableName);\n\t\tconst fromPresent = await lowerer.lowerToExecuteRequest(fromChecks.tablePresent());\n\t\tconst toAbsent = await lowerer.lowerToExecuteRequest(toChecks.tableAbsent());\n\t\tconst viaName = renameTableViaName(this.tableName);\n\t\tconst viaAbsent = renameChangesOnlyCase(this.oldTableName, this.tableName) ? await lowerer.lowerToExecuteRequest(tableExistsAst(viaName).tableAbsent()) : void 0;\n\t\tconst toPresent = await lowerer.lowerToExecuteRequest(toChecks.tablePresent());\n\t\tconst fromAbsent = await lowerer.lowerToExecuteRequest(fromChecks.tableAbsent());\n\t\treturn {\n\t\t\tid: `renameTable.${this.oldTableName}`,\n\t\t\tlabel: this.label,\n\t\t\tsummary: `Renames table ${this.oldTableName} to ${this.tableName}, keeping its rows`,\n\t\t\toperationClass: \"widening\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"table\", this.tableName)\n\t\t\t},\n\t\t\tprecheck: [\n\t\t\t\tstep(`ensure table \"${this.oldTableName}\" exists`, fromPresent.sql, fromPresent.params),\n\t\t\t\tstep(`ensure table \"${this.tableName}\" does not exist`, toAbsent.sql, toAbsent.params),\n\t\t\t\t...viaAbsent === void 0 ? [] : [step(`ensure table \"${viaName}\" does not exist (a rename that only changes case passes through this temporary name, because SQLite compares table names without case)`, viaAbsent.sql, viaAbsent.params)]\n\t\t\t],\n\t\t\texecute: renameTableSteps(this.oldTableName, this.tableName),\n\t\t\tpostcheck: [step(`verify table \"${this.tableName}\" exists`, toPresent.sql, toPresent.params), step(`verify table \"${this.oldTableName}\" no longer exists`, fromAbsent.sql, fromAbsent.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\treturn `...this.renameTable({ table: ${jsonToTsSource(this.oldTableName)}, to: ${jsonToTsSource(this.tableName)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar RecreateTableCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"recreateTable\";\n\toperationClass;\n\ttableName;\n\tcontractTable;\n\tschemaColumnNames;\n\tindexes;\n\tsummary;\n\tpostchecks;\n\tlabel;\n\tconstructor(args) {\n\t\tsuper();\n\t\tthis.tableName = args.tableName;\n\t\tthis.contractTable = args.contractTable;\n\t\tthis.schemaColumnNames = args.schemaColumnNames;\n\t\tthis.indexes = args.indexes;\n\t\tthis.summary = args.summary;\n\t\tthis.postchecks = args.postchecks;\n\t\tthis.operationClass = args.operationClass;\n\t\tthis.label = `Recreate table ${args.tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `RecreateTableCall.toOp: a lowerer is required on the SQLite planner path (table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName\n\t\t} });\n\t\treturn recreateTable({\n\t\t\ttableName: this.tableName,\n\t\t\tcontractTable: this.contractTable,\n\t\t\tschemaColumnNames: this.schemaColumnNames,\n\t\t\tindexes: this.indexes,\n\t\t\tsummary: this.summary,\n\t\t\tpostchecks: this.postchecks,\n\t\t\toperationClass: this.operationClass\n\t\t}, lowerer);\n\t}\n\trenderTypeScript() {\n\t\treturn `this.recreateTable(${tsObjectSource([\n\t\t\t[\"tableName\", jsonToTsSource(this.tableName)],\n\t\t\t[\"contractTable\", renderTableSpec(this.contractTable)],\n\t\t\t[\"schemaColumnNames\", jsonToTsSource(this.schemaColumnNames)],\n\t\t\t[\"indexes\", jsonToTsSource(this.indexes)],\n\t\t\t[\"summary\", jsonToTsSource(this.summary)],\n\t\t\t[\"postchecks\", tsArraySource(this.postchecks.map(renderPostcheck))],\n\t\t\t[\"operationClass\", jsonToTsSource(this.operationClass)]\n\t\t])})`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar AddColumnCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"addColumn\";\n\toperationClass = \"additive\";\n\ttableName;\n\tcolumnName;\n\tcolumn;\n\tlabel;\n\tconstructor(tableName, column) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.columnName = column.name;\n\t\tthis.column = column;\n\t\tthis.label = `Add column ${column.name} on ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `AddColumnCall.toOp: a lowerer is required on the SQLite planner path (column \"${this.column.name}\" on table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName,\n\t\t\tcolumnName: this.column.name\n\t\t} });\n\t\treturn addColumn(this.tableName, this.column, lowerer);\n\t}\n\trenderTypeScript() {\n\t\treturn `this.addColumn({ table: ${jsonToTsSource(this.tableName)}, column: ${renderColumnSpec(this.column)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar DropColumnCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"dropColumn\";\n\toperationClass = \"destructive\";\n\ttableName;\n\tcolumnName;\n\tlabel;\n\tconstructor(tableName, columnName) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.columnName = columnName;\n\t\tthis.label = `Drop column ${columnName} on ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `DropColumnCall.toOp: a lowerer is required on the SQLite planner path (column \"${this.columnName}\" on table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName,\n\t\t\tcolumnName: this.columnName\n\t\t} });\n\t\tconst checks = columnExistsAst(this.tableName, this.columnName);\n\t\tconst present = await lowerer.lowerToExecuteRequest(checks.columnPresent());\n\t\tconst absent = await lowerer.lowerToExecuteRequest(checks.columnAbsent());\n\t\treturn {\n\t\t\tid: `dropColumn.${this.tableName}.${this.columnName}`,\n\t\t\tlabel: `Drop column ${this.columnName} on ${this.tableName}`,\n\t\t\tsummary: `Drops column ${this.columnName} on ${this.tableName} which is not in the contract`,\n\t\t\toperationClass: \"destructive\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"column\", this.columnName, this.tableName)\n\t\t\t},\n\t\t\tprecheck: [step(`ensure column \"${this.columnName}\" exists on \"${this.tableName}\"`, present.sql, present.params)],\n\t\t\texecute: [step(`drop column \"${this.columnName}\" from \"${this.tableName}\"`, dropColumnExecuteSql(this.tableName, this.columnName))],\n\t\t\tpostcheck: [step(`verify column \"${this.columnName}\" is gone from \"${this.tableName}\"`, absent.sql, absent.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\treturn `this.dropColumn({ table: ${jsonToTsSource(this.tableName)}, column: ${jsonToTsSource(this.columnName)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar CreateIndexCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"createIndex\";\n\toperationClass = \"additive\";\n\ttableName;\n\tindexName;\n\tcolumns;\n\tlabel;\n\tconstructor(tableName, indexName, columns) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.indexName = indexName;\n\t\tthis.columns = columns;\n\t\tthis.label = `Create index ${indexName} on ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `CreateIndexCall.toOp: a lowerer is required on the SQLite planner path (index \"${this.indexName}\" on table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName,\n\t\t\tindexName: this.indexName\n\t\t} });\n\t\tconst checks = indexExistsAst(this.indexName);\n\t\tconst absent = await lowerer.lowerToExecuteRequest(checks.indexAbsent());\n\t\tconst present = await lowerer.lowerToExecuteRequest(checks.indexPresent());\n\t\treturn {\n\t\t\tid: `index.${this.tableName}.${this.indexName}`,\n\t\t\tlabel: `Create index ${this.indexName} on ${this.tableName}`,\n\t\t\tsummary: `Creates index ${this.indexName} on ${this.tableName}`,\n\t\t\toperationClass: \"additive\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"index\", this.indexName, this.tableName)\n\t\t\t},\n\t\t\tprecheck: [step(`ensure index \"${this.indexName}\" is missing`, absent.sql, absent.params)],\n\t\t\texecute: [step(`create index \"${this.indexName}\"`, buildCreateIndexSql(this.tableName, this.indexName, this.columns))],\n\t\t\tpostcheck: [step(`verify index \"${this.indexName}\" exists`, present.sql, present.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\treturn `this.createIndex({ table: ${jsonToTsSource(this.tableName)}, index: ${jsonToTsSource(this.indexName)}, columns: ${jsonToTsSource(this.columns)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\nvar DropIndexCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"dropIndex\";\n\toperationClass = \"destructive\";\n\ttableName;\n\tindexName;\n\tlabel;\n\tconstructor(tableName, indexName) {\n\t\tsuper();\n\t\tthis.tableName = tableName;\n\t\tthis.indexName = indexName;\n\t\tthis.label = `Drop index ${indexName} on ${tableName}`;\n\t\tthis.freeze();\n\t}\n\tasync toOp(lowerer) {\n\t\tif (lowerer === void 0) throw sqliteError(\"MIGRATION.SQLITE_CONTROL_STACK_MISSING\", `DropIndexCall.toOp: a lowerer is required on the SQLite planner path (index \"${this.indexName}\" on table \"${this.tableName}\"). Pass the control adapter to createSqliteMigrationPlanner.`, { meta: {\n\t\t\tfactory: this.factoryName,\n\t\t\ttableName: this.tableName,\n\t\t\tindexName: this.indexName\n\t\t} });\n\t\tconst checks = indexExistsAst(this.indexName);\n\t\tconst present = await lowerer.lowerToExecuteRequest(checks.indexPresent());\n\t\tconst absent = await lowerer.lowerToExecuteRequest(checks.indexAbsent());\n\t\treturn {\n\t\t\tid: `dropIndex.${this.tableName}.${this.indexName}`,\n\t\t\tlabel: `Drop index ${this.indexName} on ${this.tableName}`,\n\t\t\tsummary: `Drops index ${this.indexName} on ${this.tableName} which is not in the contract`,\n\t\t\toperationClass: \"destructive\",\n\t\t\ttarget: {\n\t\t\t\tid: \"sqlite\",\n\t\t\t\tdetails: buildTargetDetails(\"index\", this.indexName, this.tableName)\n\t\t\t},\n\t\t\tprecheck: [step(`ensure index \"${this.indexName}\" exists`, present.sql, present.params)],\n\t\t\texecute: [step(`drop index \"${this.indexName}\"`, buildDropIndexSql(this.indexName))],\n\t\t\tpostcheck: [step(`verify index \"${this.indexName}\" is gone`, absent.sql, absent.params)]\n\t\t};\n\t}\n\trenderTypeScript() {\n\t\treturn `this.dropIndex({ table: ${jsonToTsSource(this.tableName)}, index: ${jsonToTsSource(this.indexName)} })`;\n\t}\n\timportRequirements() {\n\t\treturn [];\n\t}\n};\n/**\n* A planner-generated data-transform stub. The current default strategy\n* (`nullabilityTighteningBackfillStrategy`) emits one of these with a\n* backfill-flavored `id`/`label` when the policy allows `'data'` and the\n* contract tightens a column's nullability, but the op itself is generic —\n* any future strategy that needs a placeholder data step can construct one\n* with its own id/label.\n*\n* `toOp()` always throws `MIGRATION.UNFILLED_PLACEHOLDER`: the planner cannot lower a stubbed\n* transform to a runtime op — the user must edit the rendered\n* `migration.ts` and re-emit.\n*/\nvar DataTransformCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"dataTransform\";\n\toperationClass = \"data\";\n\tid;\n\tlabel;\n\ttableName;\n\tcolumnName;\n\tconstructor(id, label, tableName, columnName) {\n\t\tsuper();\n\t\tthis.id = id;\n\t\tthis.label = label;\n\t\tthis.tableName = tableName;\n\t\tthis.columnName = columnName;\n\t\tthis.freeze();\n\t}\n\ttoOp(_lowerer) {\n\t\tthrow errorUnfilledPlaceholder(this.label);\n\t}\n\trenderTypeScript() {\n\t\tconst slot = `${this.tableName}-${this.columnName}-backfill-sql`;\n\t\treturn [\n\t\t\t\"dataTransform({\",\n\t\t\t` id: ${jsonToTsSource(this.id)},`,\n\t\t\t` label: ${jsonToTsSource(this.label)},`,\n\t\t\t` table: ${jsonToTsSource(this.tableName)},`,\n\t\t\t` description: ${jsonToTsSource(`Backfill NULL ${this.columnName} values in ${this.tableName}`)},`,\n\t\t\t` run: () => placeholder(${jsonToTsSource(slot)}),`,\n\t\t\t\"})\"\n\t\t].join(\"\\n\");\n\t}\n\timportRequirements() {\n\t\treturn [{\n\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\tsymbol: this.factoryName\n\t\t}, {\n\t\t\tmoduleSpecifier: TARGET_MIGRATION_MODULE,\n\t\t\tsymbol: \"placeholder\"\n\t\t}];\n\t}\n};\n/**\n* Laundered pre-built operation. Mirrors Postgres's `RawSqlCall`: wraps an\n* already-materialized `SqlMigrationPlanOperation` (typically produced by a\n* SQL-family helper or a codec lifecycle hook) so the planner can carry it\n* alongside structured call IR. `toOp()` returns the stored op unchanged;\n* `renderTypeScript()` emits `rawSql({...})` with the op serialized as a\n* JSON literal — round-tripping requires every field on the op to be\n* JSON-serializable (no closures).\n*/\nvar RawSqlCall = class extends SqliteOpFactoryCallNode {\n\tfactoryName = \"rawSql\";\n\toperationClass;\n\tlabel;\n\top;\n\tconstructor(op) {\n\t\tsuper();\n\t\tthis.op = op;\n\t\tthis.label = op.label;\n\t\tthis.operationClass = op.operationClass;\n\t\tthis.freeze();\n\t}\n\ttoOp(_lowerer) {\n\t\treturn this.op;\n\t}\n\trenderTypeScript() {\n\t\treturn `rawSql(${jsonToTsSource(this.op)})`;\n\t}\n};\nfunction definedSourceEntries(sources) {\n\treturn Object.entries(sources).flatMap(([key, source]) => source === void 0 ? [] : [[key, source]]);\n}\nfunction renderIfDefined(value) {\n\treturn value === void 0 ? void 0 : jsonToTsSource(value);\n}\nfunction renderColumnSpec(column) {\n\treturn tsObjectSource(definedSourceEntries({\n\t\tname: jsonToTsSource(column.name),\n\t\ttypeSql: jsonToTsSource(column.typeSql),\n\t\tdefault: column.default === void 0 ? void 0 : renderSpecDefault(column.default),\n\t\tcodecRef: renderIfDefined(column.codecRef),\n\t\tnullable: jsonToTsSource(column.nullable),\n\t\tinlineAutoincrementPrimaryKey: renderIfDefined(column.inlineAutoincrementPrimaryKey)\n\t}));\n}\nfunction renderTableSpec(table) {\n\treturn tsObjectSource(definedSourceEntries({\n\t\tcolumns: tsArraySource(table.columns.map(renderColumnSpec)),\n\t\tprimaryKey: renderIfDefined(table.primaryKey),\n\t\tuniques: renderIfDefined(table.uniques),\n\t\tforeignKeys: renderIfDefined(table.foreignKeys)\n\t}));\n}\nfunction renderSpecDefault(columnDefault) {\n\tif (columnDefault.kind === \"literal\") return jsonToTsSource(columnDefault);\n\treturn tsObjectSource(definedSourceEntries({\n\t\tkind: jsonToTsSource(columnDefault.kind),\n\t\texpression: tsQuotedTextSource(columnDefault.expression)\n\t}));\n}\nfunction renderPostcheck(postcheck) {\n\tif (\"sql\" in postcheck) return tsObjectSource(definedSourceEntries({\n\t\tdescription: jsonToTsSource(postcheck.description),\n\t\tsql: tsQuotedTextSource(postcheck.sql)\n\t}));\n\treturn tsObjectSource(definedSourceEntries({\n\t\tdescription: jsonToTsSource(postcheck.description),\n\t\tcolumnDefault: jsonToTsSource(postcheck.columnDefault)\n\t}));\n}\n//#endregion\nexport { buildColumnTypeSql as _, DropColumnCall as a, RawSqlCall as c, buildRecreatePostchecks as d, buildRecreateSummary as f, sqliteIdentifiersCollide as g, step as h, DataTransformCall as i, RecreateTableCall as l, sqliteDefaultToDdlColumnDefault as m, CreateIndexCall as n, DropIndexCall as o, renameTableSteps as p, CreateTableCall as r, DropTableCall as s, AddColumnCall as t, RenameTableCall as u, renderDefaultLiteral as v };\n\n//# sourceMappingURL=op-factory-call-HHnPrspy.mjs.map"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { t as CodecTypes } from "./codec-types-B_IhsOl9-WPSRXocH.mjs";
1
+ import { t as CodecTypes } from "./codec-types-0AMy_n05-BJvXpaEh.mjs";
2
2
  //#region ../../../3-targets/3-targets/sqlite/dist/pack.d.mts
3
3
  //#region src/core/descriptor-meta.d.ts
4
4
  declare const sqliteTargetDescriptorMetaBase: {
@@ -108,4 +108,4 @@ declare const sqliteTargetDescriptorMeta: typeof sqliteTargetDescriptorMetaBase
108
108
  };
109
109
  //#endregion
110
110
  export { sqliteTargetDescriptorMeta as t };
111
- //# sourceMappingURL=pack-B1iD7wyf.d.mts.map
111
+ //# sourceMappingURL=pack-BIZIGw3P.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pack-B1iD7wyf.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/pack.d.mts"],"mappings":";;;cAEc;WACH;WACA;WACA;aACE;eACE;iBACE;iBACA;iBACA;mBACE;;;;aAIN;eACE;iBACE;mBACE;mBACA;qBACE;qBACA;qBACA;qBACA;;qBAEA;qBACA;qBACA;qBACA;;mBAEF;qBACE;;qBAEA;uBACE;yBACE;yBACA;yBACA;2BACE;6BACE;6BACA;;;;uBAIN;yBACE;yBACA;yBACA;2BACE;6BACE;6BACA;;;;;;;iBAOZ;mBACE;mBACA,QAAQ;qBACN;;qBAEA;;qBAEA;uBACE;yBACE;yBACA;;;;;iBAKR;mBACE;mBACA,QAAQ;qBACN;;qBAEA;;qBAEA;uBACE;yBACE;yBACA;;uBAEF;yBACE;yBACA;;;;;;;aAOZ,WAAW,SAAS,kEAAkE;;WAExF;WACA;WACA;WACA;WACA;WACA;WACA,mEAAmE;WACnE,eAAe;;cAEZ,mCAAmC;WACtC,eAAe"}
1
+ {"version":3,"file":"pack-BIZIGw3P.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/pack.d.mts"],"mappings":";;;cAEc;WACH;WACA;WACA;aACE;eACE;iBACE;iBACA;iBACA;mBACE;;;;aAIN;eACE;iBACE;mBACE;mBACA;qBACE;qBACA;qBACA;qBACA;;qBAEA;qBACA;qBACA;qBACA;;mBAEF;qBACE;;qBAEA;uBACE;yBACE;yBACA;yBACA;2BACE;6BACE;6BACA;;;;uBAIN;yBACE;yBACA;yBACA;2BACE;6BACE;6BACA;;;;;;;iBAOZ;mBACE;mBACA,QAAQ;qBACN;;qBAEA;;qBAEA;uBACE;yBACE;yBACA;;;;;iBAKR;mBACE;mBACA,QAAQ;qBACN;;qBAEA;;qBAEA;uBACE;yBACE;yBACA;;uBAEF;yBACE;yBACA;;;;;;;aAOZ,WAAW,SAAS,kEAAkE;;WAExF;WACA;WACA;WACA;WACA;WACA;WACA,mEAAmE;WACnE,eAAe;;cAEZ,mCAAmC;WACtC,eAAe"}
@@ -1,11 +1,11 @@
1
- import { m as renameTableSteps, u as RenameTableCall } from "./op-factory-call-V6Wu86U8-B1Y4idhr.mjs";
2
- import { c as pairIndexReplacements, d as sqlitePlannerStrategies, i as conflictForDisallowedCall, l as planIssues, n as buildSqlitePlanDiff, o as indexNameCaseChange, r as coalesceSubtreeIssues, s as issueNode } from "./sqlite-migration-CindFauZ-BM2X6Ha3.mjs";
3
- import { t as TypeScriptRenderableSqliteMigration } from "./planner-produced-sqlite-migration-DWsg0vgl-N6_jUi2G.mjs";
1
+ import { m as renameTableSteps, u as RenameTableCall } from "./op-factory-call-HHnPrspy-7shWKb03.mjs";
2
+ import { c as pairIndexReplacements, d as sqlitePlannerStrategies, i as conflictForDisallowedCall, l as planIssues, n as buildSqlitePlanDiff, o as indexNameCaseChange, r as coalesceSubtreeIssues, s as issueNode } from "./sqlite-migration-CJFj4Xjj-Bkj6DFpZ.mjs";
3
+ import { t as TypeScriptRenderableSqliteMigration } from "./planner-produced-sqlite-migration-Rsg1Udsi-DMyO7zT3.mjs";
4
4
  import { issueOutcome } from "@prisma/orm-framework/components/control";
5
5
  import { UNBOUND_NAMESPACE_ID } from "@prisma/orm-framework/components/ir";
6
6
  import { RelationalSchemaNodeKind, SqlTableIR } from "@prisma/orm-family-sql/schema-ir/types";
7
7
  import { detectTableNameCaseChanges, extractCodecControlHooks, planFieldEventOperations, plannerFailure } from "@prisma/orm-family-sql/family/control";
8
- //#region ../../../3-targets/3-targets/sqlite/dist/planner-Cm5kqc7I.mjs
8
+ //#region ../../../3-targets/3-targets/sqlite/dist/planner-BgH57J9_.mjs
9
9
  function createSqliteMigrationPlanner(lowerer) {
10
10
  return new SqliteMigrationPlanner(lowerer);
11
11
  }
@@ -188,4 +188,4 @@ function retainUnownedExtras(issues, ownership) {
188
188
  //#endregion
189
189
  export { createSqliteMigrationPlanner as n, SqliteMigrationPlanner as t };
190
190
 
191
- //# sourceMappingURL=planner-Cm5kqc7I-CKSYA8QU.mjs.map
191
+ //# sourceMappingURL=planner-BgH57J9_-DZQSi5aj.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner-Cm5kqc7I-CKSYA8QU.mjs","names":["#lowerer"],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner-Cm5kqc7I.mjs"],"sourcesContent":["import { p as renameTableSteps, u as RenameTableCall } from \"./op-factory-call-V6Wu86U8.mjs\";\nimport { a as conflictForDisallowedCall, c as sqlitePlannerStrategies, i as coalesceSubtreeIssues, l as buildSqlitePlanDiff, n as indexNameCaseChange, o as issueNode, r as pairIndexReplacements, s as planIssues } from \"./sqlite-migration-CindFauZ.mjs\";\nimport { t as TypeScriptRenderableSqliteMigration } from \"./planner-produced-sqlite-migration-DWsg0vgl.mjs\";\nimport { issueOutcome } from \"@internal/framework-components/control\";\nimport { detectTableNameCaseChanges, extractCodecControlHooks, planFieldEventOperations, plannerFailure } from \"@internal/family-sql/control\";\nimport { RelationalSchemaNodeKind, SqlTableIR } from \"@internal/sql-schema-ir/types\";\nimport { UNBOUND_NAMESPACE_ID } from \"@internal/framework-components/ir\";\n//#region src/core/migrations/planner.ts\nfunction createSqliteMigrationPlanner(lowerer) {\n\treturn new SqliteMigrationPlanner(lowerer);\n}\n/**\n* SQLite migration planner — a thin wrapper over `planIssues`.\n*\n* `plan()` diffs the live schema against the target contract via the one\n* differ (`buildSqlitePlanDiff`, producing node-typed `SchemaDiffIssue[]`)\n* and delegates to `planIssues` with the registered strategies. Strategies\n* absorb groups of related issues into composite recipes (e.g. recreating a\n* table to apply type/nullability/default/constraint changes at once);\n* anything not absorbed by a strategy flows through `mapNodeIssueToCall` in\n* the issue planner as a one-off call.\n*\n* FK-backing indexes are already merged into the expected table node's\n* `indexes` at derivation (`contractToSchemaIR`'s `convertTable`), so\n* `mapNodeIssueToCall` handles them uniformly alongside user-declared\n* indexes — no separate expansion step in the planner.\n*/\nvar SqliteMigrationPlanner = class {\n\t#lowerer;\n\tconstructor(lowerer) {\n\t\tthis.#lowerer = lowerer;\n\t}\n\tplan(options) {\n\t\treturn this.planSql(options);\n\t}\n\temptyMigration(context, spaceId) {\n\t\treturn new TypeScriptRenderableSqliteMigration([], {\n\t\t\tfrom: context.fromHash,\n\t\t\tto: context.toHash\n\t\t}, spaceId, context.snapshotsImportPath, void 0, this.#lowerer);\n\t}\n\tplanSql(options) {\n\t\tconst policyResult = this.ensureAdditivePolicy(options.policy);\n\t\tif (policyResult) return policyResult;\n\t\tconst { expected, actual, issues: diffIssues } = this.collectSchemaIssues(options);\n\t\tconst replacedIndexes = pairIndexReplacements(diffIssues, indexNameCaseChange);\n\t\tconst disallowedIndexCalls = replacedIndexes.calls.filter((call) => !options.policy.allowedOperationClasses.includes(call.operationClass));\n\t\tif (disallowedIndexCalls.length > 0) return plannerFailure(disallowedIndexCalls.map((call) => conflictForDisallowedCall(call, options.policy.allowedOperationClasses)));\n\t\tconst issues = diffIssues.filter((issue) => !replacedIndexes.consumed.has(issue));\n\t\tconst caseChangeConflicts = detectTableNameCaseChanges({\n\t\t\tissues,\n\t\t\ttableOf: (issue) => {\n\t\t\t\tconst node = issueNode(issue);\n\t\t\t\treturn node instanceof SqlTableIR ? node : void 0;\n\t\t\t},\n\t\t\tnamespaceIdOf: () => UNBOUND_NAMESPACE_ID,\n\t\t\trenameByHandStatements: (rename) => renameTableSteps(rename.from, rename.to).map((renameStep) => renameStep.sql),\n\t\t\trenameTableCall: (rename) => new RenameTableCall(rename.from, rename.to).renderTypeScript(),\n\t\t\tcontract: options.contract,\n\t\t\tdefaultNamespaceId: UNBOUND_NAMESPACE_ID\n\t\t});\n\t\tif (caseChangeConflicts.length > 0) return plannerFailure(caseChangeConflicts);\n\t\tconst codecHooks = extractCodecControlHooks(options.frameworkComponents);\n\t\tconst result = planIssues({\n\t\t\tissues,\n\t\t\texpected,\n\t\t\tactual,\n\t\t\tpolicy: options.policy,\n\t\t\tframeworkComponents: options.frameworkComponents,\n\t\t\tstrategies: sqlitePlannerStrategies\n\t\t});\n\t\tif (!result.ok) return plannerFailure(result.failure);\n\t\tconst fieldEventOps = planFieldEventOperations({\n\t\t\tpriorContract: options.fromContract,\n\t\t\tnewContract: options.contract,\n\t\t\tcodecHooks\n\t\t});\n\t\tconst calls = [\n\t\t\t...replacedIndexes.calls,\n\t\t\t...result.value.calls,\n\t\t\t...fieldEventOps\n\t\t];\n\t\tconst destination = {\n\t\t\tstorageHash: options.contract.storage.storageHash,\n\t\t\t...options.contract.profileHash !== void 0 ? { profileHash: options.contract.profileHash } : {}\n\t\t};\n\t\treturn {\n\t\t\tkind: \"success\",\n\t\t\tplan: new TypeScriptRenderableSqliteMigration(calls, {\n\t\t\t\tfrom: options.fromContract?.storage.storageHash ?? null,\n\t\t\t\tto: options.contract.storage.storageHash\n\t\t\t}, options.spaceId, options.snapshotsImportPath, destination, this.#lowerer)\n\t\t};\n\t}\n\tensureAdditivePolicy(policy) {\n\t\tif (!policy.allowedOperationClasses.includes(\"additive\")) return plannerFailure([{\n\t\t\tkind: \"unsupportedOperation\",\n\t\t\tsummary: \"Migration planner requires additive operations be allowed\",\n\t\t\twhy: \"The planner requires the \\\"additive\\\" operation class to be allowed in the policy.\"\n\t\t}]);\n\t\treturn null;\n\t}\n\t/**\n\t* Diffs the target contract against the live schema via the one differ\n\t* (the same tree-building `diffSqliteSchema` uses, plus the\n\t* op-render stamper) and prepares the issue list `planIssues` consumes.\n\t*\n\t* Three passes, in order:\n\t* 1. Subtree coalescing — the differ is total (a missing/extra table also\n\t* emits an issue for every column/constraint under it); those nested\n\t* issues are redundant once the table-level `CreateTable`/`DropTable`\n\t* call already accounts for the whole subtree. Runs FIRST, over the\n\t* complete diff: a sibling-owned extra table's column issues must\n\t* collapse into its one table-level issue before the ownership pass,\n\t* because a bare column node carries no table reference — if coalescing\n\t* ran after ownership dropped the table-level issue, the orphaned column\n\t* issues would survive and the planner would emit drops against a\n\t* sibling space's table.\n\t* 2. Ownership — a live extra is only this plan's to drop when no contract\n\t* space owns it. The differ ran against THIS space's contract, so a\n\t* table a sibling owns surfaces here as `not-expected`; the planner asks\n\t* the ownership oracle (the passive aggregate) whether any space declares\n\t* it and, if so, leaves it alone. A table no space owns stays a genuine\n\t* extra. Ownership lives in the aggregate; the planner only asks. No\n\t* oracle (single-space) keeps every extra.\n\t* 3. Strict-mode extras gating — `not-expected` (extra table/column/\n\t* constraint) issues are dropped entirely outside strict mode, mirroring\n\t* the retired coordinate walk's `if (strict) { ...extra_* } }` guards:\n\t* an additive-only plan must never even consider dropping an unclaimed\n\t* object, not just refuse to emit the drop.\n\t*/\n\tcollectSchemaIssues(options) {\n\t\tconst allowed = options.policy.allowedOperationClasses;\n\t\tconst strict = allowed.includes(\"widening\") || allowed.includes(\"destructive\");\n\t\tconst { expected, actual, issues: rawIssues } = buildSqlitePlanDiff({\n\t\t\tcontract: options.contract,\n\t\t\tactualSchema: options.schema,\n\t\t\tframeworkComponents: options.frameworkComponents\n\t\t});\n\t\tconst owned = retainUnownedExtras(coalesceSubtreeIssues(rawIssues), options.ownership);\n\t\treturn {\n\t\t\texpected,\n\t\t\tactual,\n\t\t\tissues: strict ? owned : owned.filter((issue) => issueOutcome(issue) !== \"not-expected\")\n\t\t};\n\t}\n};\n/**\n* Drops a `not-expected` issue when it is a whole extra TABLE that some\n* contract space owns, asking the ownership oracle per node.\n*\n* The consultation applies ONLY to table-level extras — a live table this\n* space's contract lacks — identified by asking the issue's own node\n* (`nodeKind === table`), never by counting path segments. SQLite is a\n* single-namespace target, so every coordinate is qualified with the shared\n* `UNBOUND_NAMESPACE_ID` sentinel (the same one the aggregate's declared\n* entities carry for this target). `entityKind` is the literal `'table'`:\n* this function only ever asks about a node already confirmed to be\n* `RelationalSchemaNodeKind.table` (checked just above), and that's a\n* diff-tree `nodeKind` spelling (`'sql-table'`) distinct from the storage\n* `entries` vocabulary `elementCoordinates` walks (`'table'`) — the literal\n* is that storage-entries spelling. `declaresEntity` answers over the whole\n* composition (self included), so a positive answer on such a table means\n* another space owns it (a table this space owned would be in its expected\n* tree, never an extra): leave it. A negative answer means no space owns\n* it — a genuine orphan to drop.\n*\n* A DEEPER extra (an extra column/constraint on a table this space DOES own —\n* only the child drifted, so the table is in the expected tree) is this\n* space's own drift and is always kept for dropping; asking the oracle there\n* would wrongly suppress it, because the owned table answers `true`. No oracle\n* ⇒ every extra is kept (single-space plan).\n*/\nfunction retainUnownedExtras(issues, ownership) {\n\tif (ownership === void 0) return issues;\n\treturn issues.filter((issue) => {\n\t\tif (issueOutcome(issue) !== \"not-expected\") return true;\n\t\tconst node = issueNode(issue);\n\t\tif (node === void 0 || node.nodeKind !== RelationalSchemaNodeKind.table) return true;\n\t\tconst tableName = issue.path[1];\n\t\treturn tableName === void 0 || !ownership.declaresEntity({\n\t\t\tnamespaceId: UNBOUND_NAMESPACE_ID,\n\t\t\tentityKind: \"table\",\n\t\t\tentityName: tableName\n\t\t});\n\t});\n}\n//#endregion\nexport { createSqliteMigrationPlanner as n, SqliteMigrationPlanner as t };\n\n//# sourceMappingURL=planner-Cm5kqc7I.mjs.map"],"mappings":"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"}
1
+ {"version":3,"file":"planner-BgH57J9_-DZQSi5aj.mjs","names":["#lowerer"],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner-BgH57J9_.mjs"],"sourcesContent":["import { p as renameTableSteps, u as RenameTableCall } from \"./op-factory-call-HHnPrspy.mjs\";\nimport { a as conflictForDisallowedCall, c as sqlitePlannerStrategies, i as coalesceSubtreeIssues, l as buildSqlitePlanDiff, n as indexNameCaseChange, o as issueNode, r as pairIndexReplacements, s as planIssues } from \"./sqlite-migration-CJFj4Xjj.mjs\";\nimport { t as TypeScriptRenderableSqliteMigration } from \"./planner-produced-sqlite-migration-Rsg1Udsi.mjs\";\nimport { issueOutcome } from \"@internal/framework-components/control\";\nimport { detectTableNameCaseChanges, extractCodecControlHooks, planFieldEventOperations, plannerFailure } from \"@internal/family-sql/control\";\nimport { RelationalSchemaNodeKind, SqlTableIR } from \"@internal/sql-schema-ir/types\";\nimport { UNBOUND_NAMESPACE_ID } from \"@internal/framework-components/ir\";\n//#region src/core/migrations/planner.ts\nfunction createSqliteMigrationPlanner(lowerer) {\n\treturn new SqliteMigrationPlanner(lowerer);\n}\n/**\n* SQLite migration planner — a thin wrapper over `planIssues`.\n*\n* `plan()` diffs the live schema against the target contract via the one\n* differ (`buildSqlitePlanDiff`, producing node-typed `SchemaDiffIssue[]`)\n* and delegates to `planIssues` with the registered strategies. Strategies\n* absorb groups of related issues into composite recipes (e.g. recreating a\n* table to apply type/nullability/default/constraint changes at once);\n* anything not absorbed by a strategy flows through `mapNodeIssueToCall` in\n* the issue planner as a one-off call.\n*\n* FK-backing indexes are already merged into the expected table node's\n* `indexes` at derivation (`contractToSchemaIR`'s `convertTable`), so\n* `mapNodeIssueToCall` handles them uniformly alongside user-declared\n* indexes — no separate expansion step in the planner.\n*/\nvar SqliteMigrationPlanner = class {\n\t#lowerer;\n\tconstructor(lowerer) {\n\t\tthis.#lowerer = lowerer;\n\t}\n\tplan(options) {\n\t\treturn this.planSql(options);\n\t}\n\temptyMigration(context, spaceId) {\n\t\treturn new TypeScriptRenderableSqliteMigration([], {\n\t\t\tfrom: context.fromHash,\n\t\t\tto: context.toHash\n\t\t}, spaceId, context.snapshotsImportPath, void 0, this.#lowerer);\n\t}\n\tplanSql(options) {\n\t\tconst policyResult = this.ensureAdditivePolicy(options.policy);\n\t\tif (policyResult) return policyResult;\n\t\tconst { expected, actual, issues: diffIssues } = this.collectSchemaIssues(options);\n\t\tconst replacedIndexes = pairIndexReplacements(diffIssues, indexNameCaseChange);\n\t\tconst disallowedIndexCalls = replacedIndexes.calls.filter((call) => !options.policy.allowedOperationClasses.includes(call.operationClass));\n\t\tif (disallowedIndexCalls.length > 0) return plannerFailure(disallowedIndexCalls.map((call) => conflictForDisallowedCall(call, options.policy.allowedOperationClasses)));\n\t\tconst issues = diffIssues.filter((issue) => !replacedIndexes.consumed.has(issue));\n\t\tconst caseChangeConflicts = detectTableNameCaseChanges({\n\t\t\tissues,\n\t\t\ttableOf: (issue) => {\n\t\t\t\tconst node = issueNode(issue);\n\t\t\t\treturn node instanceof SqlTableIR ? node : void 0;\n\t\t\t},\n\t\t\tnamespaceIdOf: () => UNBOUND_NAMESPACE_ID,\n\t\t\trenameByHandStatements: (rename) => renameTableSteps(rename.from, rename.to).map((renameStep) => renameStep.sql),\n\t\t\trenameTableCall: (rename) => new RenameTableCall(rename.from, rename.to).renderTypeScript(),\n\t\t\tcontract: options.contract,\n\t\t\tdefaultNamespaceId: UNBOUND_NAMESPACE_ID\n\t\t});\n\t\tif (caseChangeConflicts.length > 0) return plannerFailure(caseChangeConflicts);\n\t\tconst codecHooks = extractCodecControlHooks(options.frameworkComponents);\n\t\tconst result = planIssues({\n\t\t\tissues,\n\t\t\texpected,\n\t\t\tactual,\n\t\t\tpolicy: options.policy,\n\t\t\tframeworkComponents: options.frameworkComponents,\n\t\t\tstrategies: sqlitePlannerStrategies\n\t\t});\n\t\tif (!result.ok) return plannerFailure(result.failure);\n\t\tconst fieldEventOps = planFieldEventOperations({\n\t\t\tpriorContract: options.fromContract,\n\t\t\tnewContract: options.contract,\n\t\t\tcodecHooks\n\t\t});\n\t\tconst calls = [\n\t\t\t...replacedIndexes.calls,\n\t\t\t...result.value.calls,\n\t\t\t...fieldEventOps\n\t\t];\n\t\tconst destination = {\n\t\t\tstorageHash: options.contract.storage.storageHash,\n\t\t\t...options.contract.profileHash !== void 0 ? { profileHash: options.contract.profileHash } : {}\n\t\t};\n\t\treturn {\n\t\t\tkind: \"success\",\n\t\t\tplan: new TypeScriptRenderableSqliteMigration(calls, {\n\t\t\t\tfrom: options.fromContract?.storage.storageHash ?? null,\n\t\t\t\tto: options.contract.storage.storageHash\n\t\t\t}, options.spaceId, options.snapshotsImportPath, destination, this.#lowerer)\n\t\t};\n\t}\n\tensureAdditivePolicy(policy) {\n\t\tif (!policy.allowedOperationClasses.includes(\"additive\")) return plannerFailure([{\n\t\t\tkind: \"unsupportedOperation\",\n\t\t\tsummary: \"Migration planner requires additive operations be allowed\",\n\t\t\twhy: \"The planner requires the \\\"additive\\\" operation class to be allowed in the policy.\"\n\t\t}]);\n\t\treturn null;\n\t}\n\t/**\n\t* Diffs the target contract against the live schema via the one differ\n\t* (the same tree-building `diffSqliteSchema` uses, plus the\n\t* op-render stamper) and prepares the issue list `planIssues` consumes.\n\t*\n\t* Three passes, in order:\n\t* 1. Subtree coalescing — the differ is total (a missing/extra table also\n\t* emits an issue for every column/constraint under it); those nested\n\t* issues are redundant once the table-level `CreateTable`/`DropTable`\n\t* call already accounts for the whole subtree. Runs FIRST, over the\n\t* complete diff: a sibling-owned extra table's column issues must\n\t* collapse into its one table-level issue before the ownership pass,\n\t* because a bare column node carries no table reference — if coalescing\n\t* ran after ownership dropped the table-level issue, the orphaned column\n\t* issues would survive and the planner would emit drops against a\n\t* sibling space's table.\n\t* 2. Ownership — a live extra is only this plan's to drop when no contract\n\t* space owns it. The differ ran against THIS space's contract, so a\n\t* table a sibling owns surfaces here as `not-expected`; the planner asks\n\t* the ownership oracle (the passive aggregate) whether any space declares\n\t* it and, if so, leaves it alone. A table no space owns stays a genuine\n\t* extra. Ownership lives in the aggregate; the planner only asks. No\n\t* oracle (single-space) keeps every extra.\n\t* 3. Strict-mode extras gating — `not-expected` (extra table/column/\n\t* constraint) issues are dropped entirely outside strict mode, mirroring\n\t* the retired coordinate walk's `if (strict) { ...extra_* } }` guards:\n\t* an additive-only plan must never even consider dropping an unclaimed\n\t* object, not just refuse to emit the drop.\n\t*/\n\tcollectSchemaIssues(options) {\n\t\tconst allowed = options.policy.allowedOperationClasses;\n\t\tconst strict = allowed.includes(\"widening\") || allowed.includes(\"destructive\");\n\t\tconst { expected, actual, issues: rawIssues } = buildSqlitePlanDiff({\n\t\t\tcontract: options.contract,\n\t\t\tactualSchema: options.schema,\n\t\t\tframeworkComponents: options.frameworkComponents\n\t\t});\n\t\tconst owned = retainUnownedExtras(coalesceSubtreeIssues(rawIssues), options.ownership);\n\t\treturn {\n\t\t\texpected,\n\t\t\tactual,\n\t\t\tissues: strict ? owned : owned.filter((issue) => issueOutcome(issue) !== \"not-expected\")\n\t\t};\n\t}\n};\n/**\n* Drops a `not-expected` issue when it is a whole extra TABLE that some\n* contract space owns, asking the ownership oracle per node.\n*\n* The consultation applies ONLY to table-level extras — a live table this\n* space's contract lacks — identified by asking the issue's own node\n* (`nodeKind === table`), never by counting path segments. SQLite is a\n* single-namespace target, so every coordinate is qualified with the shared\n* `UNBOUND_NAMESPACE_ID` sentinel (the same one the aggregate's declared\n* entities carry for this target). `entityKind` is the literal `'table'`:\n* this function only ever asks about a node already confirmed to be\n* `RelationalSchemaNodeKind.table` (checked just above), and that's a\n* diff-tree `nodeKind` spelling (`'sql-table'`) distinct from the storage\n* `entries` vocabulary `elementCoordinates` walks (`'table'`) — the literal\n* is that storage-entries spelling. `declaresEntity` answers over the whole\n* composition (self included), so a positive answer on such a table means\n* another space owns it (a table this space owned would be in its expected\n* tree, never an extra): leave it. A negative answer means no space owns\n* it — a genuine orphan to drop.\n*\n* A DEEPER extra (an extra column/constraint on a table this space DOES own —\n* only the child drifted, so the table is in the expected tree) is this\n* space's own drift and is always kept for dropping; asking the oracle there\n* would wrongly suppress it, because the owned table answers `true`. No oracle\n* ⇒ every extra is kept (single-space plan).\n*/\nfunction retainUnownedExtras(issues, ownership) {\n\tif (ownership === void 0) return issues;\n\treturn issues.filter((issue) => {\n\t\tif (issueOutcome(issue) !== \"not-expected\") return true;\n\t\tconst node = issueNode(issue);\n\t\tif (node === void 0 || node.nodeKind !== RelationalSchemaNodeKind.table) return true;\n\t\tconst tableName = issue.path[1];\n\t\treturn tableName === void 0 || !ownership.declaresEntity({\n\t\t\tnamespaceId: UNBOUND_NAMESPACE_ID,\n\t\t\tentityKind: \"table\",\n\t\t\tentityName: tableName\n\t\t});\n\t});\n}\n//#endregion\nexport { createSqliteMigrationPlanner as n, SqliteMigrationPlanner as t };\n\n//# sourceMappingURL=planner-BgH57J9_.mjs.map"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { t as SqlitePlanTargetDetails } from "./planner-target-details-xR6UfIcz-CMahymzq.mjs";
2
- import { n as TypeScriptRenderableSqliteMigration } from "./planner-produced-sqlite-migration-C6t5lWDq-DXm-Vkhf.mjs";
2
+ import { n as TypeScriptRenderableSqliteMigration } from "./planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.mjs";
3
3
  import { MigrationPlanner, MigrationScaffoldContext, SchemaOwnership } from "@prisma/orm-framework/components/control";
4
4
  import { MigrationOperationPolicy, SqlMigrationPlanner, SqlPlannerFailureResult } from "@prisma/orm-family-sql/family/control";
5
5
  import { Contract } from "@prisma/orm-framework/contract/types";
@@ -101,4 +101,4 @@ declare class SqliteMigrationPlanner implements SqlMigrationPlanner<SqlitePlanTa
101
101
  }
102
102
  //#endregion
103
103
  export { SqlitePlanResult as n, createSqliteMigrationPlanner as r, SqliteMigrationPlanner as t };
104
- //# sourceMappingURL=planner-B37W4Kaw.d.mts.map
104
+ //# sourceMappingURL=planner-CFIbY54l.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner-B37W4Kaw.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner.d.mts"],"mappings":";;;;;;;;;iBAQiB,6BAA6B,SAAS,wBAAwB;KAC1E;WACM;WACA,MAAM;IACb;;;;;;;;;;;;;;;;;cAiBU,kCAAkC,oBAAoB,0BAA0B;;EAE5F,YAAY,SAAS;EACrB,KAAK;aACM;aACA;aACA,QAAQ;;;;;;;;;;;aAWR,cAAc;aACd,qBAAqB,cAAc;;;;;;aAMnC;;;;;aAKA,YAAY;;;;;;aAMZ;MACP;EACJ,eAAe,SAAS,0BAA0B,kBAAkB;UAC5D;UACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8BA"}
1
+ {"version":3,"file":"planner-CFIbY54l.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner.d.mts"],"mappings":";;;;;;;;;iBAQiB,6BAA6B,SAAS,wBAAwB;KAC1E;WACM;WACA,MAAM;IACb;;;;;;;;;;;;;;;;;cAiBU,kCAAkC,oBAAoB,0BAA0B;;EAE5F,YAAY,SAAS;EACrB,KAAK;aACM;aACA;aACA,QAAQ;;;;;;;;;;;aAWR,cAAc;aACd,qBAAqB,cAAc;;;;;;aAMnC;;;;;aAKA,YAAY;;;;;;aAMZ;MACP;EACJ,eAAe,SAAS,0BAA0B,kBAAkB;UAC5D;UACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA8BA"}
@@ -1,11 +1,11 @@
1
1
  import { t as SqlitePlanTargetDetails } from "./planner-target-details-xR6UfIcz-CMahymzq.mjs";
2
- import { t as SqliteMigration } from "./sqlite-migration-2IEGvjRm-BQfd6NLr.mjs";
2
+ import { t as SqliteMigration } from "./sqlite-migration-BSUZhMDG-DZU3d7bZ.mjs";
3
3
  import { MigrationPlanWithAuthoringSurface, OpFactoryCall } from "@prisma/orm-framework/components/control";
4
4
  import { SqlMigrationPlanOperation } from "@prisma/orm-family-sql/family/control";
5
5
  import { MigrationMeta } from "@prisma/orm-toolchain/migration-tools/migration";
6
6
  import { ImportSpecifierResolver } from "@prisma/orm-framework/components/emission";
7
7
  import { ExecuteRequestLowerer } from "@prisma/orm-family-sql/family/control-adapter";
8
- //#region ../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-C6t5lWDq.d.mts
8
+ //#region ../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-DXcx0sOR.d.mts
9
9
  //#region src/core/migrations/planner-produced-sqlite-migration.d.ts
10
10
  type Op = SqlMigrationPlanOperation<SqlitePlanTargetDetails>;
11
11
  interface SqliteMigrationDestinationInfo {
@@ -28,4 +28,4 @@ declare class TypeScriptRenderableSqliteMigration extends SqliteMigration implem
28
28
  }
29
29
  //#endregion
30
30
  export { TypeScriptRenderableSqliteMigration as n, SqliteMigrationDestinationInfo as t };
31
- //# sourceMappingURL=planner-produced-sqlite-migration-C6t5lWDq-DXm-Vkhf.d.mts.map
31
+ //# sourceMappingURL=planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-DXcx0sOR.d.mts"],"mappings":";;;;;;;;;KAQK,KAAK,0BAA0B;UAC1B;WACC;WACA;;cAEG,4CAA4C,2BAA2B;;EAEnF,YAAY,gBAAgB,iBAAiB,MAAM,eAAe,iBAAiB,6BAA6B,cAAc,gCAAgC,UAAU;MACpK,wBAAwB,KAAK,QAAQ;EACzC,YAAY;MACR,eAAe;;;;;;MAMf;EACJ,iBAAiB,wBAAwB"}
@@ -1,10 +1,10 @@
1
- import { t as SqliteMigration } from "./sqlite-migration-CindFauZ-BM2X6Ha3.mjs";
1
+ import { t as SqliteMigration } from "./sqlite-migration-CJFj4Xjj-Bkj6DFpZ.mjs";
2
2
  import { t as renderOps } from "./render-ops-KxAmAz6d-W2xyvA5y.mjs";
3
3
  import { contractSnapshotJsonSpecifier, contractSnapshotTypesSpecifier } from "@prisma/orm-framework/components/control";
4
4
  import { renderImports } from "@prisma/orm-framework/ts-render";
5
5
  import { resolveRequirementSpecifiers } from "@prisma/orm-framework/components/emission";
6
6
  import { detectScaffoldRuntime, shebangLineFor } from "@prisma/orm-toolchain/migration-tools/migration-ts";
7
- //#region ../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-DWsg0vgl.mjs
7
+ //#region ../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-Rsg1Udsi.mjs
8
8
  /**
9
9
  * Polymorphic TypeScript emitter for the SQLite migration IR. Mirrors the
10
10
  * Postgres `render-typescript.ts` — different base-class + factory module
@@ -147,4 +147,4 @@ var TypeScriptRenderableSqliteMigration = class extends SqliteMigration {
147
147
  //#endregion
148
148
  export { TypeScriptRenderableSqliteMigration as t };
149
149
 
150
- //# sourceMappingURL=planner-produced-sqlite-migration-DWsg0vgl-N6_jUi2G.mjs.map
150
+ //# sourceMappingURL=planner-produced-sqlite-migration-Rsg1Udsi-DMyO7zT3.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"planner-produced-sqlite-migration-DWsg0vgl-N6_jUi2G.mjs","names":["#calls","#meta","#spaceId","#snapshotsImportPath","#destination","#lowerer","#operationsCache"],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-DWsg0vgl.mjs"],"sourcesContent":["import { t as SqliteMigration } from \"./sqlite-migration-CindFauZ.mjs\";\nimport { t as renderOps } from \"./render-ops-KxAmAz6d.mjs\";\nimport { contractSnapshotJsonSpecifier, contractSnapshotTypesSpecifier } from \"@internal/framework-components/control\";\nimport { renderImports } from \"@internal/ts-render\";\nimport { resolveRequirementSpecifiers } from \"@internal/framework-components/emission\";\nimport { detectScaffoldRuntime, shebangLineFor } from \"@internal/migration-tools/migration-ts\";\n//#region src/core/migrations/render-typescript.ts\n/**\n* Polymorphic TypeScript emitter for the SQLite migration IR. Mirrors the\n* Postgres `render-typescript.ts` — different base-class + factory module\n* specifier, same overall shape.\n*/\n/**\n* Always-present base imports for the rendered scaffold. Both come from\n* `@internal/sqlite/migration` so an authored SQLite\n* `migration.ts` only needs a single dependency for its base class and\n* its CLI entrypoint. Mirrors Postgres's `BASE_IMPORTS`.\n*\n* - `Migration` — the facade re-export fixes the `SqlMigration`\n* generic to `SqlitePlanTargetDetails` and the abstract `targetId` to\n* `'sqlite'`.\n* - `MigrationCLI` — the migration-file CLI entrypoint, re-exported from\n* `@internal/cli/migration-cli`. Loads `prisma.config.ts`,\n* assembles a `ControlStack`, and instantiates the migration class.\n*/\nconst BASE_IMPORTS = [{\n\tmoduleSpecifier: \"@internal/sqlite/migration\",\n\tsymbol: \"Migration\"\n}, {\n\tmoduleSpecifier: \"@internal/sqlite/migration\",\n\tsymbol: \"MigrationCLI\"\n}];\nfunction renderCallsToTypeScript(calls, meta) {\n\tconst imports = buildImports(calls, meta);\n\tconst operationsBody = calls.map((c) => c.renderTypeScript()).join(\",\\n\");\n\tconst hasStart = meta.from !== null;\n\tconst startField = hasStart ? [\" override readonly startContractJson = startContract;\"] : [];\n\treturn [\n\t\tshebangLineFor(detectScaffoldRuntime()),\n\t\timports,\n\t\t\"\",\n\t\t`export default class M extends Migration<${hasStart ? \"Start\" : \"never\"}, End> {`,\n\t\t...startField,\n\t\t\" override readonly endContractJson = endContract;\",\n\t\t\"\",\n\t\t\" override get operations() {\",\n\t\t\" return [\",\n\t\tindent(operationsBody, 6),\n\t\t\" ];\",\n\t\t\" }\",\n\t\t\"}\",\n\t\t\"\",\n\t\t\"MigrationCLI.run(import.meta.url, M);\",\n\t\t\"\"\n\t].join(\"\\n\");\n}\nfunction buildImports(calls, meta) {\n\tconst requirements = [...BASE_IMPORTS, ...contractImports(meta)];\n\tfor (const call of calls) for (const req of call.importRequirements()) requirements.push(req);\n\treturn renderImports(resolveRequirementSpecifiers(requirements, meta.resolveImportSpecifier));\n}\n/**\n* The committed contract-JSON imports the scaffold reads its from/to identity\n* from, resolved to the deduplicated snapshot store under\n* `meta.snapshotsImportPath`. The end snapshot is always present; the start\n* snapshot is added only for a non-baseline migration (`meta.from !== null`).\n* The matching `Contract` type imports (aliased `Start`/`End`) feed the\n* `Migration<Start, End>` generics. Baseline emits `Migration<never, End>` with\n* no start imports — `never` is the honest \"no prior contract\" Start.\n*/\nfunction contractImports(meta) {\n\tconst reqs = [{\n\t\tmoduleSpecifier: contractSnapshotJsonSpecifier(meta.snapshotsImportPath, meta.to),\n\t\tsymbol: \"endContract\",\n\t\tkind: \"default\",\n\t\tattributes: { type: \"json\" }\n\t}, {\n\t\tmoduleSpecifier: contractSnapshotTypesSpecifier(meta.snapshotsImportPath, meta.to),\n\t\tsymbol: \"Contract\",\n\t\talias: \"End\",\n\t\ttypeOnly: true\n\t}];\n\tif (meta.from !== null) {\n\t\treqs.push({\n\t\t\tmoduleSpecifier: contractSnapshotJsonSpecifier(meta.snapshotsImportPath, meta.from),\n\t\t\tsymbol: \"startContract\",\n\t\t\tkind: \"default\",\n\t\t\tattributes: { type: \"json\" }\n\t\t});\n\t\treqs.push({\n\t\t\tmoduleSpecifier: contractSnapshotTypesSpecifier(meta.snapshotsImportPath, meta.from),\n\t\t\tsymbol: \"Contract\",\n\t\t\talias: \"Start\",\n\t\t\ttypeOnly: true\n\t\t});\n\t}\n\treturn reqs;\n}\nfunction indent(text, spaces) {\n\tconst pad = \" \".repeat(spaces);\n\treturn text.split(\"\\n\").map((line) => line.trim() ? `${pad}${line}` : line).join(\"\\n\");\n}\n//#endregion\n//#region src/core/migrations/planner-produced-sqlite-migration.ts\nvar TypeScriptRenderableSqliteMigration = class extends SqliteMigration {\n\t#calls;\n\t#meta;\n\t#destination;\n\t#spaceId;\n\t#snapshotsImportPath;\n\t#lowerer;\n\t#operationsCache;\n\tconstructor(calls, meta, spaceId, snapshotsImportPath, destination, lowerer) {\n\t\tsuper();\n\t\tthis.#calls = calls;\n\t\tthis.#meta = meta;\n\t\tthis.#spaceId = spaceId;\n\t\tthis.#snapshotsImportPath = snapshotsImportPath;\n\t\tthis.#destination = destination ?? { storageHash: meta.to };\n\t\tthis.#lowerer = lowerer;\n\t}\n\tget operations() {\n\t\tthis.#operationsCache ??= renderOps(this.#calls, this.#lowerer);\n\t\treturn this.#operationsCache;\n\t}\n\tdescribe() {\n\t\treturn this.#meta;\n\t}\n\tget destination() {\n\t\treturn this.#destination;\n\t}\n\t/**\n\t* Contract space this planner-produced plan applies to. Threaded\n\t* from {@link SqlMigrationPlannerPlanOptions.spaceId} so the runner\n\t* keys the marker row by the right space when executing the plan.\n\t*/\n\tget spaceId() {\n\t\treturn this.#spaceId;\n\t}\n\trenderTypeScript(resolveImportSpecifier) {\n\t\treturn renderCallsToTypeScript(this.#calls, {\n\t\t\tfrom: this.#meta.from,\n\t\t\tto: this.#meta.to,\n\t\t\tsnapshotsImportPath: this.#snapshotsImportPath,\n\t\t\tresolveImportSpecifier\n\t\t});\n\t}\n};\n//#endregion\nexport { TypeScriptRenderableSqliteMigration as t };\n\n//# sourceMappingURL=planner-produced-sqlite-migration-DWsg0vgl.mjs.map"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAM,eAAe,CAAC;CACrB,iBAAiB;CACjB,QAAQ;AACT,GAAG;CACF,iBAAiB;CACjB,QAAQ;AACT,CAAC;AACD,SAAS,wBAAwB,OAAO,MAAM;CAC7C,MAAM,UAAU,aAAa,OAAO,IAAI;CACxC,MAAM,iBAAiB,MAAM,KAAK,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK;CACxE,MAAM,WAAW,KAAK,SAAS;CAC/B,MAAM,aAAa,WAAW,CAAC,wDAAwD,IAAI,CAAC;CAC5F,OAAO;EACN,eAAe,sBAAsB,CAAC;EACtC;EACA;EACA,4CAA4C,WAAW,UAAU,QAAQ;EACzE,GAAG;EACH;EACA;EACA;EACA;EACA,OAAO,gBAAgB,CAAC;EACxB;EACA;EACA;EACA;EACA;EACA;CACD,CAAC,CAAC,KAAK,IAAI;AACZ;AACA,SAAS,aAAa,OAAO,MAAM;CAClC,MAAM,eAAe,CAAC,GAAG,cAAc,GAAG,gBAAgB,IAAI,CAAC;CAC/D,KAAK,MAAM,QAAQ,OAAO,KAAK,MAAM,OAAO,KAAK,mBAAmB,GAAG,aAAa,KAAK,GAAG;CAC5F,OAAO,cAAc,6BAA6B,cAAc,KAAK,sBAAsB,CAAC;AAC7F;;;;;;;;;;AAUA,SAAS,gBAAgB,MAAM;CAC9B,MAAM,OAAO,CAAC;EACb,iBAAiB,8BAA8B,KAAK,qBAAqB,KAAK,EAAE;EAChF,QAAQ;EACR,MAAM;EACN,YAAY,EAAE,MAAM,OAAO;CAC5B,GAAG;EACF,iBAAiB,+BAA+B,KAAK,qBAAqB,KAAK,EAAE;EACjF,QAAQ;EACR,OAAO;EACP,UAAU;CACX,CAAC;CACD,IAAI,KAAK,SAAS,MAAM;EACvB,KAAK,KAAK;GACT,iBAAiB,8BAA8B,KAAK,qBAAqB,KAAK,IAAI;GAClF,QAAQ;GACR,MAAM;GACN,YAAY,EAAE,MAAM,OAAO;EAC5B,CAAC;EACD,KAAK,KAAK;GACT,iBAAiB,+BAA+B,KAAK,qBAAqB,KAAK,IAAI;GACnF,QAAQ;GACR,OAAO;GACP,UAAU;EACX,CAAC;CACF;CACA,OAAO;AACR;AACA,SAAS,OAAO,MAAM,QAAQ;CAC7B,MAAM,MAAM,IAAI,OAAO,MAAM;CAC7B,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,SAAS,KAAK,KAAK,IAAI,GAAG,MAAM,SAAS,IAAI,CAAC,CAAC,KAAK,IAAI;AACtF;AAGA,IAAI,sCAAsC,cAAc,gBAAgB;CACvE;CACA;CACA;CACA;CACA;CACA;CACA;CACA,YAAY,OAAO,MAAM,SAAS,qBAAqB,aAAa,SAAS;EAC5E,MAAM;EACN,KAAKA,SAAS;EACd,KAAKC,QAAQ;EACb,KAAKC,WAAW;EAChB,KAAKC,uBAAuB;EAC5B,KAAKC,eAAe,eAAe,EAAE,aAAa,KAAK,GAAG;EAC1D,KAAKC,WAAW;CACjB;CACA,IAAI,aAAa;EAChB,KAAKC,qBAAqB,UAAU,KAAKN,QAAQ,KAAKK,QAAQ;EAC9D,OAAO,KAAKC;CACb;CACA,WAAW;EACV,OAAO,KAAKL;CACb;CACA,IAAI,cAAc;EACjB,OAAO,KAAKG;CACb;;;;;;CAMA,IAAI,UAAU;EACb,OAAO,KAAKF;CACb;CACA,iBAAiB,wBAAwB;EACxC,OAAO,wBAAwB,KAAKF,QAAQ;GAC3C,MAAM,KAAKC,MAAM;GACjB,IAAI,KAAKA,MAAM;GACf,qBAAqB,KAAKE;GAC1B;EACD,CAAC;CACF;AACD"}
1
+ {"version":3,"file":"planner-produced-sqlite-migration-Rsg1Udsi-DMyO7zT3.mjs","names":["#calls","#meta","#spaceId","#snapshotsImportPath","#destination","#lowerer","#operationsCache"],"sources":["../../../../3-targets/3-targets/sqlite/dist/planner-produced-sqlite-migration-Rsg1Udsi.mjs"],"sourcesContent":["import { t as SqliteMigration } from \"./sqlite-migration-CJFj4Xjj.mjs\";\nimport { t as renderOps } from \"./render-ops-KxAmAz6d.mjs\";\nimport { contractSnapshotJsonSpecifier, contractSnapshotTypesSpecifier } from \"@internal/framework-components/control\";\nimport { renderImports } from \"@internal/ts-render\";\nimport { resolveRequirementSpecifiers } from \"@internal/framework-components/emission\";\nimport { detectScaffoldRuntime, shebangLineFor } from \"@internal/migration-tools/migration-ts\";\n//#region src/core/migrations/render-typescript.ts\n/**\n* Polymorphic TypeScript emitter for the SQLite migration IR. Mirrors the\n* Postgres `render-typescript.ts` — different base-class + factory module\n* specifier, same overall shape.\n*/\n/**\n* Always-present base imports for the rendered scaffold. Both come from\n* `@internal/sqlite/migration` so an authored SQLite\n* `migration.ts` only needs a single dependency for its base class and\n* its CLI entrypoint. Mirrors Postgres's `BASE_IMPORTS`.\n*\n* - `Migration` — the facade re-export fixes the `SqlMigration`\n* generic to `SqlitePlanTargetDetails` and the abstract `targetId` to\n* `'sqlite'`.\n* - `MigrationCLI` — the migration-file CLI entrypoint, re-exported from\n* `@internal/cli/migration-cli`. Loads `prisma.config.ts`,\n* assembles a `ControlStack`, and instantiates the migration class.\n*/\nconst BASE_IMPORTS = [{\n\tmoduleSpecifier: \"@internal/sqlite/migration\",\n\tsymbol: \"Migration\"\n}, {\n\tmoduleSpecifier: \"@internal/sqlite/migration\",\n\tsymbol: \"MigrationCLI\"\n}];\nfunction renderCallsToTypeScript(calls, meta) {\n\tconst imports = buildImports(calls, meta);\n\tconst operationsBody = calls.map((c) => c.renderTypeScript()).join(\",\\n\");\n\tconst hasStart = meta.from !== null;\n\tconst startField = hasStart ? [\" override readonly startContractJson = startContract;\"] : [];\n\treturn [\n\t\tshebangLineFor(detectScaffoldRuntime()),\n\t\timports,\n\t\t\"\",\n\t\t`export default class M extends Migration<${hasStart ? \"Start\" : \"never\"}, End> {`,\n\t\t...startField,\n\t\t\" override readonly endContractJson = endContract;\",\n\t\t\"\",\n\t\t\" override get operations() {\",\n\t\t\" return [\",\n\t\tindent(operationsBody, 6),\n\t\t\" ];\",\n\t\t\" }\",\n\t\t\"}\",\n\t\t\"\",\n\t\t\"MigrationCLI.run(import.meta.url, M);\",\n\t\t\"\"\n\t].join(\"\\n\");\n}\nfunction buildImports(calls, meta) {\n\tconst requirements = [...BASE_IMPORTS, ...contractImports(meta)];\n\tfor (const call of calls) for (const req of call.importRequirements()) requirements.push(req);\n\treturn renderImports(resolveRequirementSpecifiers(requirements, meta.resolveImportSpecifier));\n}\n/**\n* The committed contract-JSON imports the scaffold reads its from/to identity\n* from, resolved to the deduplicated snapshot store under\n* `meta.snapshotsImportPath`. The end snapshot is always present; the start\n* snapshot is added only for a non-baseline migration (`meta.from !== null`).\n* The matching `Contract` type imports (aliased `Start`/`End`) feed the\n* `Migration<Start, End>` generics. Baseline emits `Migration<never, End>` with\n* no start imports — `never` is the honest \"no prior contract\" Start.\n*/\nfunction contractImports(meta) {\n\tconst reqs = [{\n\t\tmoduleSpecifier: contractSnapshotJsonSpecifier(meta.snapshotsImportPath, meta.to),\n\t\tsymbol: \"endContract\",\n\t\tkind: \"default\",\n\t\tattributes: { type: \"json\" }\n\t}, {\n\t\tmoduleSpecifier: contractSnapshotTypesSpecifier(meta.snapshotsImportPath, meta.to),\n\t\tsymbol: \"Contract\",\n\t\talias: \"End\",\n\t\ttypeOnly: true\n\t}];\n\tif (meta.from !== null) {\n\t\treqs.push({\n\t\t\tmoduleSpecifier: contractSnapshotJsonSpecifier(meta.snapshotsImportPath, meta.from),\n\t\t\tsymbol: \"startContract\",\n\t\t\tkind: \"default\",\n\t\t\tattributes: { type: \"json\" }\n\t\t});\n\t\treqs.push({\n\t\t\tmoduleSpecifier: contractSnapshotTypesSpecifier(meta.snapshotsImportPath, meta.from),\n\t\t\tsymbol: \"Contract\",\n\t\t\talias: \"Start\",\n\t\t\ttypeOnly: true\n\t\t});\n\t}\n\treturn reqs;\n}\nfunction indent(text, spaces) {\n\tconst pad = \" \".repeat(spaces);\n\treturn text.split(\"\\n\").map((line) => line.trim() ? `${pad}${line}` : line).join(\"\\n\");\n}\n//#endregion\n//#region src/core/migrations/planner-produced-sqlite-migration.ts\nvar TypeScriptRenderableSqliteMigration = class extends SqliteMigration {\n\t#calls;\n\t#meta;\n\t#destination;\n\t#spaceId;\n\t#snapshotsImportPath;\n\t#lowerer;\n\t#operationsCache;\n\tconstructor(calls, meta, spaceId, snapshotsImportPath, destination, lowerer) {\n\t\tsuper();\n\t\tthis.#calls = calls;\n\t\tthis.#meta = meta;\n\t\tthis.#spaceId = spaceId;\n\t\tthis.#snapshotsImportPath = snapshotsImportPath;\n\t\tthis.#destination = destination ?? { storageHash: meta.to };\n\t\tthis.#lowerer = lowerer;\n\t}\n\tget operations() {\n\t\tthis.#operationsCache ??= renderOps(this.#calls, this.#lowerer);\n\t\treturn this.#operationsCache;\n\t}\n\tdescribe() {\n\t\treturn this.#meta;\n\t}\n\tget destination() {\n\t\treturn this.#destination;\n\t}\n\t/**\n\t* Contract space this planner-produced plan applies to. Threaded\n\t* from {@link SqlMigrationPlannerPlanOptions.spaceId} so the runner\n\t* keys the marker row by the right space when executing the plan.\n\t*/\n\tget spaceId() {\n\t\treturn this.#spaceId;\n\t}\n\trenderTypeScript(resolveImportSpecifier) {\n\t\treturn renderCallsToTypeScript(this.#calls, {\n\t\t\tfrom: this.#meta.from,\n\t\t\tto: this.#meta.to,\n\t\t\tsnapshotsImportPath: this.#snapshotsImportPath,\n\t\t\tresolveImportSpecifier\n\t\t});\n\t}\n};\n//#endregion\nexport { TypeScriptRenderableSqliteMigration as t };\n\n//# sourceMappingURL=planner-produced-sqlite-migration-Rsg1Udsi.mjs.map"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAM,eAAe,CAAC;CACrB,iBAAiB;CACjB,QAAQ;AACT,GAAG;CACF,iBAAiB;CACjB,QAAQ;AACT,CAAC;AACD,SAAS,wBAAwB,OAAO,MAAM;CAC7C,MAAM,UAAU,aAAa,OAAO,IAAI;CACxC,MAAM,iBAAiB,MAAM,KAAK,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,KAAK;CACxE,MAAM,WAAW,KAAK,SAAS;CAC/B,MAAM,aAAa,WAAW,CAAC,wDAAwD,IAAI,CAAC;CAC5F,OAAO;EACN,eAAe,sBAAsB,CAAC;EACtC;EACA;EACA,4CAA4C,WAAW,UAAU,QAAQ;EACzE,GAAG;EACH;EACA;EACA;EACA;EACA,OAAO,gBAAgB,CAAC;EACxB;EACA;EACA;EACA;EACA;EACA;CACD,CAAC,CAAC,KAAK,IAAI;AACZ;AACA,SAAS,aAAa,OAAO,MAAM;CAClC,MAAM,eAAe,CAAC,GAAG,cAAc,GAAG,gBAAgB,IAAI,CAAC;CAC/D,KAAK,MAAM,QAAQ,OAAO,KAAK,MAAM,OAAO,KAAK,mBAAmB,GAAG,aAAa,KAAK,GAAG;CAC5F,OAAO,cAAc,6BAA6B,cAAc,KAAK,sBAAsB,CAAC;AAC7F;;;;;;;;;;AAUA,SAAS,gBAAgB,MAAM;CAC9B,MAAM,OAAO,CAAC;EACb,iBAAiB,8BAA8B,KAAK,qBAAqB,KAAK,EAAE;EAChF,QAAQ;EACR,MAAM;EACN,YAAY,EAAE,MAAM,OAAO;CAC5B,GAAG;EACF,iBAAiB,+BAA+B,KAAK,qBAAqB,KAAK,EAAE;EACjF,QAAQ;EACR,OAAO;EACP,UAAU;CACX,CAAC;CACD,IAAI,KAAK,SAAS,MAAM;EACvB,KAAK,KAAK;GACT,iBAAiB,8BAA8B,KAAK,qBAAqB,KAAK,IAAI;GAClF,QAAQ;GACR,MAAM;GACN,YAAY,EAAE,MAAM,OAAO;EAC5B,CAAC;EACD,KAAK,KAAK;GACT,iBAAiB,+BAA+B,KAAK,qBAAqB,KAAK,IAAI;GACnF,QAAQ;GACR,OAAO;GACP,UAAU;EACX,CAAC;CACF;CACA,OAAO;AACR;AACA,SAAS,OAAO,MAAM,QAAQ;CAC7B,MAAM,MAAM,IAAI,OAAO,MAAM;CAC7B,OAAO,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,SAAS,KAAK,KAAK,IAAI,GAAG,MAAM,SAAS,IAAI,CAAC,CAAC,KAAK,IAAI;AACtF;AAGA,IAAI,sCAAsC,cAAc,gBAAgB;CACvE;CACA;CACA;CACA;CACA;CACA;CACA;CACA,YAAY,OAAO,MAAM,SAAS,qBAAqB,aAAa,SAAS;EAC5E,MAAM;EACN,KAAKA,SAAS;EACd,KAAKC,QAAQ;EACb,KAAKC,WAAW;EAChB,KAAKC,uBAAuB;EAC5B,KAAKC,eAAe,eAAe,EAAE,aAAa,KAAK,GAAG;EAC1D,KAAKC,WAAW;CACjB;CACA,IAAI,aAAa;EAChB,KAAKC,qBAAqB,UAAU,KAAKN,QAAQ,KAAKK,QAAQ;EAC9D,OAAO,KAAKC;CACb;CACA,WAAW;EACV,OAAO,KAAKL;CACb;CACA,IAAI,cAAc;EACjB,OAAO,KAAKG;CACb;;;;;;CAMA,IAAI,UAAU;EACb,OAAO,KAAKF;CACb;CACA,iBAAiB,wBAAwB;EACxC,OAAO,wBAAwB,KAAKF,QAAQ;GAC3C,MAAM,KAAKC,MAAM;GACjB,IAAI,KAAKA,MAAM;GACf,qBAAqB,KAAKE;GAC1B;EACD,CAAC;CACF;AACD"}
@@ -0,0 +1 @@
1
+ import "./planner-produced-sqlite-migration-DXcx0sOR-CcMQKE7n.mjs";
@@ -1,4 +1,4 @@
1
- import { n as createSqliteAdapterWithCodecRegistry } from "./adapter-Bp_4Bjff-Ce3oZAN1.mjs";
1
+ import { n as createSqliteAdapterWithCodecRegistry } from "./adapter-Bp_4Bjff-CjV5K6YY.mjs";
2
2
  import { SqlRuntimeAdapterDescriptor } from "@prisma/orm-family-sql/runtime";
3
3
  import { RuntimeAdapterInstance } from "@prisma/orm-framework/components/execution";
4
4
  //#region ../../../3-targets/6-adapters/sqlite/dist/runtime.d.mts
@@ -7,4 +7,4 @@ type SqliteRuntimeAdapterInstance = RuntimeAdapterInstance<'sql', 'sqlite'> & Re
7
7
  declare const sqliteRuntimeAdapterDescriptor: SqlRuntimeAdapterDescriptor<'sqlite', SqliteRuntimeAdapterInstance>;
8
8
  //#endregion
9
9
  export { sqliteRuntimeAdapterDescriptor as n, SqliteRuntimeAdapterInstance as t };
10
- //# sourceMappingURL=runtime-CG71EORy.d.mts.map
10
+ //# sourceMappingURL=runtime-612DH-du.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-CG71EORy.d.mts","names":[],"sources":["../../../../3-targets/6-adapters/sqlite/dist/runtime.d.mts"],"mappings":";;;;;KAIK,+BAA+B,0CAA0C,kBAAkB;cAClF,gCAAgC,sCAAsC"}
1
+ {"version":3,"file":"runtime-612DH-du.d.mts","names":[],"sources":["../../../../3-targets/6-adapters/sqlite/dist/runtime.d.mts"],"mappings":";;;;;KAIK,+BAA+B,0CAA0C,kBAAkB;cAClF,gCAAgC,sCAAsC"}
@@ -1,4 +1,4 @@
1
- import "./sqlite-contract-view-BpNMaU2m-COMDaGaq.mjs";
1
+ import "./sqlite-contract-view-BDw8T5Cp-CbLVOPJq.mjs";
2
2
  import { Namespace } from "@prisma/orm-framework/components/ir";
3
3
  import { SqlNamespaceInput, SqlStorage } from "@prisma/orm-family-sql/contract/types";
4
4
  import { SqlContractSerializerBase } from "@prisma/orm-family-sql/family/ir";
@@ -25,4 +25,4 @@ declare class SqliteContractSerializer extends SqlContractSerializerBase<Contrac
25
25
  }
26
26
  //#endregion
27
27
  export { SqliteRuntimeTargetInstance as n, sqliteRuntimeTargetDescriptor as r, SqliteContractSerializer as t };
28
- //# sourceMappingURL=runtime-B99c4n56.d.mts.map
28
+ //# sourceMappingURL=runtime-8_WfNAcA.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-B99c4n56.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/runtime.d.mts"],"mappings":";;;;;;;;;;UASU,oCAAoC;cAChC,+BAA+B,qCAAqC;;;;;;;;;cASpE,iCAAiC,0BAA0B,SAAS;EAChF;YACU,yBAAyB,cAAc,KAAK,0BAA0B,YAAY;EAC5F,kBAAkB,UAAU,SAAS,cAAc"}
1
+ {"version":3,"file":"runtime-8_WfNAcA.d.mts","names":[],"sources":["../../../../3-targets/3-targets/sqlite/dist/runtime.d.mts"],"mappings":";;;;;;;;;;UASU,oCAAoC;cAChC,+BAA+B,qCAAqC;;;;;;;;;cASpE,iCAAiC,0BAA0B,SAAS;EAChF;YACU,yBAAyB,cAAc,KAAK,0BAA0B,YAAY;EAC5F,kBAAkB,UAAU,SAAS,cAAc"}
@@ -0,0 +1 @@
1
+ import "./adapter-Bp_4Bjff-CjV5K6YY.mjs";