@prisma/orm-toolchain 8.0.0-rc.1-dev.45 → 8.0.0-rc.1-dev.46

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 (303) hide show
  1. package/README.md +3 -3
  2. package/dist/{aggregate-BBsCbXgJ.mjs → aggregate-CPZB020V.mjs} +9 -9
  3. package/dist/{aggregate-BBsCbXgJ.mjs.map → aggregate-CPZB020V.mjs.map} +1 -1
  4. package/dist/{aggregate-CA6bJ8UO.d.mts → aggregate-DLUJLq5Y.d.mts} +3 -3
  5. package/dist/{aggregate-CA6bJ8UO.d.mts.map → aggregate-DLUJLq5Y.d.mts.map} +1 -1
  6. package/dist/cli-telemetry.d.mts +19 -5
  7. package/dist/cli-telemetry.d.mts.map +1 -1
  8. package/dist/cli-telemetry.mjs +287 -8
  9. package/dist/cli-telemetry.mjs.map +1 -1
  10. package/dist/cli.d.mts +11 -13
  11. package/dist/cli.d.mts.map +1 -1
  12. package/dist/cli.mjs +5382 -1095
  13. package/dist/cli.mjs.map +1 -1
  14. package/dist/cli__control-api.d.mts +298 -27
  15. package/dist/cli__control-api.d.mts.map +1 -1
  16. package/dist/cli__control-api.mjs +2 -19
  17. package/dist/cli__control-api__testing.d.mts +1 -1
  18. package/dist/cli__control-api__testing.mjs.map +1 -1
  19. package/dist/cli__init-output.d.mts +0 -1
  20. package/dist/cli__init-output.d.mts.map +1 -1
  21. package/dist/cli__init-output.mjs +1 -1
  22. package/dist/cli__migration-cli.mjs +9 -9
  23. package/dist/cli__migration-cli.mjs.map +1 -1
  24. package/dist/config-loader.d.mts +1 -1
  25. package/dist/config-loader.mjs +1 -1
  26. package/dist/{contract-snapshot-store-B0G1Fw_F-C4JjmWEA.mjs → contract-snapshot-store-B0G1Fw_F-CHc4QfKb.mjs} +4 -4
  27. package/dist/{contract-snapshot-store-B0G1Fw_F-C4JjmWEA.mjs.map → contract-snapshot-store-B0G1Fw_F-CHc4QfKb.mjs.map} +1 -1
  28. package/dist/{cli-errors-iquUoY6O-BFboxglv.d.mts → db-verify-BwgNK50T-DGvKgFCK.d.mts} +81 -81
  29. package/dist/db-verify-BwgNK50T-DGvKgFCK.d.mts.map +1 -0
  30. package/dist/emitter.d.mts +1 -1
  31. package/dist/{errors-CXbGUWGu-BQi6YS-H.mjs → errors-CXbGUWGu-CstQHPh6.mjs} +2 -2
  32. package/dist/{errors-CXbGUWGu-BQi6YS-H.mjs.map → errors-CXbGUWGu-CstQHPh6.mjs.map} +1 -1
  33. package/dist/{errors-KWM8yBAL.d.mts → errors-D59OCpoI.d.mts} +2 -2
  34. package/dist/{errors-KWM8yBAL.d.mts.map → errors-D59OCpoI.d.mts.map} +1 -1
  35. package/dist/{exports-B3xY_FHp.mjs → exports-8ZUN43ve.mjs} +6 -6
  36. package/dist/exports-8ZUN43ve.mjs.map +1 -0
  37. package/dist/{exports-BZLNbtkY.mjs → exports-BZaG8_w_.mjs} +64 -36
  38. package/dist/exports-BZaG8_w_.mjs.map +1 -0
  39. package/dist/{graph-membership-BViWUMpP-Cgu4Z2ox.mjs → graph-membership-BViWUMpP-C4lYYJdU.mjs} +2 -2
  40. package/dist/{graph-membership-BViWUMpP-Cgu4Z2ox.mjs.map → graph-membership-BViWUMpP-C4lYYJdU.mjs.map} +1 -1
  41. package/dist/{import-roots-NDOIEDVj.mjs → import-roots-CNFBPAT1.mjs} +10 -3
  42. package/dist/{import-roots-NDOIEDVj.mjs.map → import-roots-CNFBPAT1.mjs.map} +1 -1
  43. package/dist/{import-roots-B6CtsWXb.d.mts → import-roots-CfoYgejL.d.mts} +2 -2
  44. package/dist/{import-roots-B6CtsWXb.d.mts.map → import-roots-CfoYgejL.d.mts.map} +1 -1
  45. package/dist/{index-mCsi_ND5.d.mts → index-DRs7L6N0.d.mts} +11 -3
  46. package/dist/index-DRs7L6N0.d.mts.map +1 -0
  47. package/dist/{index-CnOyYxmv.d.mts → index-Dgwl8Tzs.d.mts} +2 -2
  48. package/dist/{index-CnOyYxmv.d.mts.map → index-Dgwl8Tzs.d.mts.map} +1 -1
  49. package/dist/{invariants-CTHy88OP-DJ-i5yTz.mjs → invariants-CTHy88OP-CYI2a8IO.mjs} +2 -2
  50. package/dist/{invariants-CTHy88OP-DJ-i5yTz.mjs.map → invariants-CTHy88OP-CYI2a8IO.mjs.map} +1 -1
  51. package/dist/{io-635GlNx1-D94PxRc-.mjs → io-635GlNx1-D3zrw2qu.mjs} +4 -4
  52. package/dist/{io-635GlNx1-D94PxRc-.mjs.map → io-635GlNx1-D3zrw2qu.mjs.map} +1 -1
  53. package/dist/{migration-graph-_SJImD5V-D5RCc651.mjs → migration-graph-_SJImD5V-BURyY1KM.mjs} +2 -2
  54. package/dist/{migration-graph-_SJImD5V-D5RCc651.mjs.map → migration-graph-_SJImD5V-BURyY1KM.mjs.map} +1 -1
  55. package/dist/{migration-gubSSeMk.mjs → migration-hspPIEeV.mjs} +4 -4
  56. package/dist/{migration-gubSSeMk.mjs.map → migration-hspPIEeV.mjs.map} +1 -1
  57. package/dist/migration-tools.d.mts +4 -4
  58. package/dist/migration-tools.mjs +13 -13
  59. package/dist/migration-tools__aggregate.d.mts +1 -1
  60. package/dist/migration-tools__aggregate.mjs +1 -1
  61. package/dist/migration-tools__contract-snapshot-store.mjs +1 -1
  62. package/dist/migration-tools__errors.d.mts +1 -1
  63. package/dist/migration-tools__errors.mjs +1 -1
  64. package/dist/migration-tools__invariants.mjs +1 -1
  65. package/dist/migration-tools__io.mjs +1 -1
  66. package/dist/migration-tools__migration-graph.mjs +2 -2
  67. package/dist/migration-tools__migration-ts.mjs +1 -1
  68. package/dist/migration-tools__migration.mjs +1 -1
  69. package/dist/migration-tools__ref-resolution.mjs +1 -1
  70. package/dist/migration-tools__refs.mjs +1 -1
  71. package/dist/migration-tools__spaces.d.mts +2 -2
  72. package/dist/migration-tools__spaces.mjs +2 -2
  73. package/dist/{migration-ts-BoHxxGvi.mjs → migration-ts-DdVm0rws.mjs} +2 -2
  74. package/dist/{migration-ts-BoHxxGvi.mjs.map → migration-ts-DdVm0rws.mjs.map} +1 -1
  75. package/dist/{output-DP3woAjV-BxCr9nHA.mjs → output-CovTDY14-CUoAqLML.mjs} +3 -45
  76. package/dist/output-CovTDY14-CUoAqLML.mjs.map +1 -0
  77. package/dist/publish-surface.d.mts +2 -2
  78. package/dist/publish-surface.mjs +2 -2
  79. package/dist/publish-surface__import-roots.d.mts +1 -1
  80. package/dist/publish-surface__import-roots.mjs +1 -1
  81. package/dist/publish-surface__shells.d.mts +1 -1
  82. package/dist/publish-surface__shells.mjs +1 -1
  83. package/dist/quick-reference-mongo.md +12 -9
  84. package/dist/quick-reference-postgres.md +12 -9
  85. package/dist/readme-mongo.md +2 -2
  86. package/dist/readme-postgres.md +2 -2
  87. package/dist/ref-h6InR6dO-rGfl18Jv.mjs +4686 -0
  88. package/dist/ref-h6InR6dO-rGfl18Jv.mjs.map +1 -0
  89. package/dist/{ref-resolution-sGcINe7o.mjs → ref-resolution-HeNBXW53.mjs} +2 -2
  90. package/dist/{ref-resolution-sGcINe7o.mjs.map → ref-resolution-HeNBXW53.mjs.map} +1 -1
  91. package/dist/{refs-WK86uYYp-B6EZkmmT.mjs → refs-WK86uYYp-gM8tvWQP.mjs} +2 -2
  92. package/dist/{refs-WK86uYYp-B6EZkmmT.mjs.map → refs-WK86uYYp-gM8tvWQP.mjs.map} +1 -1
  93. package/dist/{shells-BenrJHp2.mjs → shells-C4HbRAr5.mjs} +13 -14
  94. package/dist/shells-C4HbRAr5.mjs.map +1 -0
  95. package/dist/{shells-COHV_Ozf.d.mts → shells-CIUmT4u4.d.mts} +14 -20
  96. package/dist/shells-CIUmT4u4.d.mts.map +1 -0
  97. package/dist/{spaces-BG2w0P8d.mjs → spaces-4qMOAYE9.mjs} +7 -7
  98. package/dist/{spaces-BG2w0P8d.mjs.map → spaces-4qMOAYE9.mjs.map} +1 -1
  99. package/dist/{spaces-tWQi7CUv.d.mts → spaces-Dj65JrwZ.d.mts} +2 -2
  100. package/dist/{spaces-tWQi7CUv.d.mts.map → spaces-Dj65JrwZ.d.mts.map} +1 -1
  101. package/dist/{verify-contract-spaces-Cc1u_wJo-BilPJS2S.d.mts → verify-contract-spaces-C3PiFBk3-DfomYyOE.d.mts} +3 -3
  102. package/dist/{verify-contract-spaces-Cc1u_wJo-BilPJS2S.d.mts.map → verify-contract-spaces-C3PiFBk3-DfomYyOE.d.mts.map} +1 -1
  103. package/dist/{verify-contract-spaces-DhJTb0zM-_oh6W6lp.mjs → verify-contract-spaces-DhJTb0zM-B62maCfE.mjs} +4 -4
  104. package/dist/{verify-contract-spaces-DhJTb0zM-_oh6W6lp.mjs.map → verify-contract-spaces-DhJTb0zM-B62maCfE.mjs.map} +1 -1
  105. package/dist/vite-plugin-contract-emit.d.mts +2 -2
  106. package/dist/vite-plugin-contract-emit.mjs +5 -5
  107. package/dist/vite-plugin-contract-emit.mjs.map +1 -1
  108. package/package.json +14 -38
  109. package/dist/bin__prisma-next.mjs +0 -512
  110. package/dist/bin__prisma-next.mjs.map +0 -1
  111. package/dist/caught-errors-BZo7zcRc-C-pIEasG.mjs +0 -14
  112. package/dist/caught-errors-BZo7zcRc-C-pIEasG.mjs.map +0 -1
  113. package/dist/cli-errors-B4zTLaqQ-CXgjO9t4.mjs +0 -347
  114. package/dist/cli-errors-B4zTLaqQ-CXgjO9t4.mjs.map +0 -1
  115. package/dist/cli-errors-iquUoY6O-BFboxglv.d.mts.map +0 -1
  116. package/dist/cli__commands__contract-emit.d.mts +0 -2
  117. package/dist/cli__commands__contract-emit.mjs +0 -2
  118. package/dist/cli__commands__contract-infer.d.mts +0 -7
  119. package/dist/cli__commands__contract-infer.d.mts.map +0 -1
  120. package/dist/cli__commands__contract-infer.mjs +0 -2
  121. package/dist/cli__commands__db-init.d.mts +0 -7
  122. package/dist/cli__commands__db-init.d.mts.map +0 -1
  123. package/dist/cli__commands__db-init.mjs +0 -2
  124. package/dist/cli__commands__db-schema.d.mts +0 -7
  125. package/dist/cli__commands__db-schema.d.mts.map +0 -1
  126. package/dist/cli__commands__db-schema.mjs +0 -2
  127. package/dist/cli__commands__db-sign.d.mts +0 -7
  128. package/dist/cli__commands__db-sign.d.mts.map +0 -1
  129. package/dist/cli__commands__db-sign.mjs +0 -2
  130. package/dist/cli__commands__db-update.d.mts +0 -7
  131. package/dist/cli__commands__db-update.d.mts.map +0 -1
  132. package/dist/cli__commands__db-update.mjs +0 -2
  133. package/dist/cli__commands__db-verify.d.mts +0 -7
  134. package/dist/cli__commands__db-verify.d.mts.map +0 -1
  135. package/dist/cli__commands__db-verify.mjs +0 -2
  136. package/dist/cli__commands__migrate.d.mts +0 -57
  137. package/dist/cli__commands__migrate.d.mts.map +0 -1
  138. package/dist/cli__commands__migrate.mjs +0 -2
  139. package/dist/cli__commands__migration-check.d.mts +0 -8
  140. package/dist/cli__commands__migration-check.d.mts.map +0 -1
  141. package/dist/cli__commands__migration-check.mjs +0 -3
  142. package/dist/cli__commands__migration-graph.d.mts +0 -38
  143. package/dist/cli__commands__migration-graph.d.mts.map +0 -1
  144. package/dist/cli__commands__migration-graph.mjs +0 -2
  145. package/dist/cli__commands__migration-list.d.mts +0 -39
  146. package/dist/cli__commands__migration-list.d.mts.map +0 -1
  147. package/dist/cli__commands__migration-list.mjs +0 -2
  148. package/dist/cli__commands__migration-log.d.mts +0 -20
  149. package/dist/cli__commands__migration-log.d.mts.map +0 -1
  150. package/dist/cli__commands__migration-log.mjs +0 -2
  151. package/dist/cli__commands__migration-new.d.mts +0 -7
  152. package/dist/cli__commands__migration-new.d.mts.map +0 -1
  153. package/dist/cli__commands__migration-new.mjs +0 -2
  154. package/dist/cli__commands__migration-plan.d.mts +0 -34
  155. package/dist/cli__commands__migration-plan.d.mts.map +0 -1
  156. package/dist/cli__commands__migration-plan.mjs +0 -2
  157. package/dist/cli__commands__migration-show.d.mts +0 -27
  158. package/dist/cli__commands__migration-show.d.mts.map +0 -1
  159. package/dist/cli__commands__migration-show.mjs +0 -2
  160. package/dist/cli__commands__migration-status.d.mts +0 -55
  161. package/dist/cli__commands__migration-status.d.mts.map +0 -1
  162. package/dist/cli__commands__migration-status.mjs +0 -3
  163. package/dist/cli__commands__ref.d.mts +0 -7
  164. package/dist/cli__commands__ref.d.mts.map +0 -1
  165. package/dist/cli__commands__ref.mjs +0 -2
  166. package/dist/cli__commands__telemetry.d.mts +0 -7
  167. package/dist/cli__commands__telemetry.d.mts.map +0 -1
  168. package/dist/cli__commands__telemetry.mjs +0 -2
  169. package/dist/client-C6Qp5ujC-Dxb7r79B.mjs +0 -1653
  170. package/dist/client-C6Qp5ujC-Dxb7r79B.mjs.map +0 -1
  171. package/dist/code-templates-C-jirr19-DDQB0WGo.mjs +0 -295
  172. package/dist/code-templates-C-jirr19-DDQB0WGo.mjs.map +0 -1
  173. package/dist/combine-verify-results-B87B_pMc-D4l22OqY.mjs +0 -65
  174. package/dist/combine-verify-results-B87B_pMc-D4l22OqY.mjs.map +0 -1
  175. package/dist/command-helpers-BCgwcqTe-lNCtppzM.mjs +0 -776
  176. package/dist/command-helpers-BCgwcqTe-lNCtppzM.mjs.map +0 -1
  177. package/dist/contract-at-errors-BSoDI0Hw-BXeUNE3s.mjs +0 -44
  178. package/dist/contract-at-errors-BSoDI0Hw-BXeUNE3s.mjs.map +0 -1
  179. package/dist/contract-emit-BG7KL4zk-_a0J310Z.mjs +0 -331
  180. package/dist/contract-emit-BG7KL4zk-_a0J310Z.mjs.map +0 -1
  181. package/dist/contract-emit-BkEj3siG-C8M-IyvS.mjs +0 -2
  182. package/dist/contract-emit-CvwNE4R1-DEn1V1Zo.d.mts +0 -7
  183. package/dist/contract-emit-CvwNE4R1-DEn1V1Zo.d.mts.map +0 -1
  184. package/dist/contract-emit-GknCmgn_-BSWdFprC.mjs +0 -154
  185. package/dist/contract-emit-GknCmgn_-BSWdFprC.mjs.map +0 -1
  186. package/dist/contract-enrichment-DrMvvY2A-DxNGeF4d.mjs +0 -56
  187. package/dist/contract-enrichment-DrMvvY2A-DxNGeF4d.mjs.map +0 -1
  188. package/dist/contract-infer-BwIDGl7v-CZrdWXAr.mjs +0 -74
  189. package/dist/contract-infer-BwIDGl7v-CZrdWXAr.mjs.map +0 -1
  190. package/dist/contract-snapshot-resolution-De2VvOJn-DqIAV9cr.mjs +0 -82
  191. package/dist/contract-snapshot-resolution-De2VvOJn-DqIAV9cr.mjs.map +0 -1
  192. package/dist/contract-space-aggregate-loader-fa04OIaL-B7LXHle3.mjs +0 -303
  193. package/dist/contract-space-aggregate-loader-fa04OIaL-B7LXHle3.mjs.map +0 -1
  194. package/dist/db-init-BolXrKAI-CwG-zEDW.mjs +0 -109
  195. package/dist/db-init-BolXrKAI-CwG-zEDW.mjs.map +0 -1
  196. package/dist/db-init-failure-B5cQML4A-5zr-99Ek.mjs +0 -44
  197. package/dist/db-init-failure-B5cQML4A-5zr-99Ek.mjs.map +0 -1
  198. package/dist/db-schema-DvdLBdEY-Dl6e1d_Y.mjs +0 -48
  199. package/dist/db-schema-DvdLBdEY-Dl6e1d_Y.mjs.map +0 -1
  200. package/dist/db-sign-DCp4c8CA-B3tun-kh.mjs +0 -172
  201. package/dist/db-sign-DCp4c8CA-B3tun-kh.mjs.map +0 -1
  202. package/dist/db-update-CfayE8WE-CPhQyDaZ.mjs +0 -171
  203. package/dist/db-update-CfayE8WE-CPhQyDaZ.mjs.map +0 -1
  204. package/dist/db-verify-BN7IrOAL-kEzRNJUl.mjs +0 -358
  205. package/dist/db-verify-BN7IrOAL-kEzRNJUl.mjs.map +0 -1
  206. package/dist/exports-B3xY_FHp.mjs.map +0 -1
  207. package/dist/exports-BZLNbtkY.mjs.map +0 -1
  208. package/dist/exports-CqNUihkI.mjs +0 -276
  209. package/dist/exports-CqNUihkI.mjs.map +0 -1
  210. package/dist/format-Ca7dUE6B-BMFqrc6D.mjs +0 -110
  211. package/dist/format-Ca7dUE6B-BMFqrc6D.mjs.map +0 -1
  212. package/dist/framework-components-Bau7o1-J-DTp6AUoq.mjs +0 -60
  213. package/dist/framework-components-Bau7o1-J-DTp6AUoq.mjs.map +0 -1
  214. package/dist/global-flags-BpoOYtNZ-CHZD3fud.d.mts +0 -35
  215. package/dist/global-flags-BpoOYtNZ-CHZD3fud.d.mts.map +0 -1
  216. package/dist/index-mCsi_ND5.d.mts.map +0 -1
  217. package/dist/init-DC7zPKka-BSiUrPw3.mjs +0 -800
  218. package/dist/init-DC7zPKka-BSiUrPw3.mjs.map +0 -1
  219. package/dist/inspect-live-schema-BPHXdvqW-DrzL2ZkQ.mjs +0 -95
  220. package/dist/inspect-live-schema-BPHXdvqW-DrzL2ZkQ.mjs.map +0 -1
  221. package/dist/integrity-violation-to-check-failure-BmWMLAae-DqiC4_3p.mjs +0 -115
  222. package/dist/integrity-violation-to-check-failure-BmWMLAae-DqiC4_3p.mjs.map +0 -1
  223. package/dist/invariants-Bltd8DyA-Cg_1Lu0q.mjs +0 -53
  224. package/dist/invariants-Bltd8DyA-Cg_1Lu0q.mjs.map +0 -1
  225. package/dist/legend-DGv9e2_0-BtetgRz4.mjs +0 -22
  226. package/dist/legend-DGv9e2_0-BtetgRz4.mjs.map +0 -1
  227. package/dist/migrate-BXATUjYE-Do79Imf-.mjs +0 -343
  228. package/dist/migrate-BXATUjYE-Do79Imf-.mjs.map +0 -1
  229. package/dist/migrate-failure-D4NvkoCk-0bttmQs2.mjs +0 -96
  230. package/dist/migrate-failure-D4NvkoCk-0bttmQs2.mjs.map +0 -1
  231. package/dist/migrate-show-B8UJ9dmb-C4RTPbDk.d.mts +0 -63
  232. package/dist/migrate-show-B8UJ9dmb-C4RTPbDk.d.mts.map +0 -1
  233. package/dist/migrate-show-C_9xR4Qt-B-Y0PGKw.mjs +0 -199
  234. package/dist/migrate-show-C_9xR4Qt-B-Y0PGKw.mjs.map +0 -1
  235. package/dist/migration-check-Bbdw7t-r-C2VTMK61.mjs +0 -358
  236. package/dist/migration-check-Bbdw7t-r-C2VTMK61.mjs.map +0 -1
  237. package/dist/migration-check-DbHgYK7F-7mtYNVFu.mjs +0 -163
  238. package/dist/migration-check-DbHgYK7F-7mtYNVFu.mjs.map +0 -1
  239. package/dist/migration-command-scaffold-SzjR2naH-Yi3-rNfX.mjs +0 -121
  240. package/dist/migration-command-scaffold-SzjR2naH-Yi3-rNfX.mjs.map +0 -1
  241. package/dist/migration-graph-B8WxW_tm-qGNf7jQh.mjs +0 -35
  242. package/dist/migration-graph-B8WxW_tm-qGNf7jQh.mjs.map +0 -1
  243. package/dist/migration-graph-BOwu76mF-kOTWFvfV.mjs +0 -144
  244. package/dist/migration-graph-BOwu76mF-kOTWFvfV.mjs.map +0 -1
  245. package/dist/migration-graph-command-render-h0VdTkSM-C3rPZEw1.mjs +0 -2127
  246. package/dist/migration-graph-command-render-h0VdTkSM-C3rPZEw1.mjs.map +0 -1
  247. package/dist/migration-graph-sections-BBHPOFN--COKyUKQ4.mjs +0 -69
  248. package/dist/migration-graph-sections-BBHPOFN--COKyUKQ4.mjs.map +0 -1
  249. package/dist/migration-list-CKuYcMQq-CubZzE9i.mjs +0 -130
  250. package/dist/migration-list-CKuYcMQq-CubZzE9i.mjs.map +0 -1
  251. package/dist/migration-list-CY08bD8I-PoXuv94c.mjs +0 -102
  252. package/dist/migration-list-CY08bD8I-PoXuv94c.mjs.map +0 -1
  253. package/dist/migration-log-CUbGla-9-BLIrWjwN.mjs +0 -123
  254. package/dist/migration-log-CUbGla-9-BLIrWjwN.mjs.map +0 -1
  255. package/dist/migration-log-table-eES9lPjv-BCFm8qJr.mjs +0 -116
  256. package/dist/migration-log-table-eES9lPjv-BCFm8qJr.mjs.map +0 -1
  257. package/dist/migration-new-ChvZjf5X-BFhEM0BF.mjs +0 -70
  258. package/dist/migration-new-ChvZjf5X-BFhEM0BF.mjs.map +0 -1
  259. package/dist/migration-new-DXMvJdbB-BkrpDfcr.mjs +0 -130
  260. package/dist/migration-new-DXMvJdbB-BkrpDfcr.mjs.map +0 -1
  261. package/dist/migration-path-target-JDWqF9kj-B7zoMq6X.mjs +0 -38
  262. package/dist/migration-path-target-JDWqF9kj-B7zoMq6X.mjs.map +0 -1
  263. package/dist/migration-plan-BV9f5Xjq-DiyscOMc.d.mts +0 -164
  264. package/dist/migration-plan-BV9f5Xjq-DiyscOMc.d.mts.map +0 -1
  265. package/dist/migration-plan-Bz1hOTHF-CFCtPuOv.mjs +0 -192
  266. package/dist/migration-plan-Bz1hOTHF-CFCtPuOv.mjs.map +0 -1
  267. package/dist/migration-plan-Cfz0efEL-DMNFq5b2.mjs +0 -621
  268. package/dist/migration-plan-Cfz0efEL-DMNFq5b2.mjs.map +0 -1
  269. package/dist/migration-show-BGdR1xnT-Cg3M0FPh.mjs +0 -178
  270. package/dist/migration-show-BGdR1xnT-Cg3M0FPh.mjs.map +0 -1
  271. package/dist/migration-status-BIrAJ5af-D-_mMBUA.mjs +0 -427
  272. package/dist/migration-status-BIrAJ5af-D-_mMBUA.mjs.map +0 -1
  273. package/dist/output-DP3woAjV-BxCr9nHA.mjs.map +0 -1
  274. package/dist/progress-adapter-CjAeTxY_-BXYSd1eY.mjs +0 -43
  275. package/dist/progress-adapter-CjAeTxY_-BXYSd1eY.mjs.map +0 -1
  276. package/dist/project-import-root-B4nM-VWX-D__g0hTb.mjs +0 -101
  277. package/dist/project-import-root-B4nM-VWX-D__g0hTb.mjs.map +0 -1
  278. package/dist/redact-secrets-DuKoiMax-Cfe2XVhc.mjs +0 -1476
  279. package/dist/redact-secrets-DuKoiMax-Cfe2XVhc.mjs.map +0 -1
  280. package/dist/ref-4x6BGSsd-ClaoZIQh.mjs +0 -95
  281. package/dist/ref-4x6BGSsd-ClaoZIQh.mjs.map +0 -1
  282. package/dist/ref-WXLIR9Xm-12IUtoBU.mjs +0 -104
  283. package/dist/ref-WXLIR9Xm-12IUtoBU.mjs.map +0 -1
  284. package/dist/ref-advancement-DaZBzm7m-WoqnFAyr.mjs +0 -96
  285. package/dist/ref-advancement-DaZBzm7m-WoqnFAyr.mjs.map +0 -1
  286. package/dist/ref-resolution-BSN1amKm-C6-TTM2N.mjs +0 -16
  287. package/dist/ref-resolution-BSN1amKm-C6-TTM2N.mjs.map +0 -1
  288. package/dist/refs-fQLFcMoq-aTBeUU9H.mjs +0 -47
  289. package/dist/refs-fQLFcMoq-aTBeUU9H.mjs.map +0 -1
  290. package/dist/schemas-BGgjiKV0-Rh8RlMCl.d.mts +0 -206
  291. package/dist/schemas-BGgjiKV0-Rh8RlMCl.d.mts.map +0 -1
  292. package/dist/schemas-CYSD83Cu-Bff4PPoi.mjs +0 -119
  293. package/dist/schemas-CYSD83Cu-Bff4PPoi.mjs.map +0 -1
  294. package/dist/shells-BenrJHp2.mjs.map +0 -1
  295. package/dist/shells-COHV_Ozf.d.mts.map +0 -1
  296. package/dist/telemetry-BD52LETE-Cqeb7ebh.mjs +0 -121
  297. package/dist/telemetry-BD52LETE-Cqeb7ebh.mjs.map +0 -1
  298. package/dist/terminal-ui-BN4QOsm5-Bf3pim46.d.mts +0 -133
  299. package/dist/terminal-ui-BN4QOsm5-Bf3pim46.d.mts.map +0 -1
  300. package/dist/terminal-ui-Cqz4LVL7-B0mcVdLy.mjs +0 -676
  301. package/dist/terminal-ui-Cqz4LVL7-B0mcVdLy.mjs.map +0 -1
  302. package/dist/verify-Cogr_Fj9-D3lCWA6t.mjs +0 -283
  303. package/dist/verify-Cogr_Fj9-D3lCWA6t.mjs.map +0 -1
@@ -1,427 +0,0 @@
1
- import { o as loadConfigForSections } from "./exports-BZLNbtkY.mjs";
2
- import { F as errorUnexpected, L as requireLiveDatabase, t as CliStructuredError$1 } from "./cli-errors-B4zTLaqQ-CXgjO9t4.mjs";
3
- import { r as createTerminalUI } from "./terminal-ui-Cqz4LVL7-B0mcVdLy.mjs";
4
- import { _ as resolveMigrationPaths, b as setCommandExamples, f as maskConnectionUrl, h as readContractEnvelope, m as parseGlobalFlagsOrExit, n as closeQuietly, s as formatStyledHeader, t as addGlobalOptions, u as handleResult, x as setCommandSeeAlso, y as setCommandDescriptions } from "./command-helpers-BCgwcqTe-lNCtppzM.mjs";
5
- import { i as loadContractRawSafely, l as refusePackageCorruptionOnAggregate, r as buildReadAggregate } from "./contract-space-aggregate-loader-fa04OIaL-B7LXHle3.mjs";
6
- import { t as createControlClient } from "./client-C6Qp5ujC-Dxb7r79B.mjs";
7
- import { i as refuseUnknownInvariants, r as refuseMissingInvariantPath, t as hasMigrationPath } from "./invariants-Bltd8DyA-Cg_1Lu0q.mjs";
8
- import { t as resolveContractRef } from "./ref-resolution-BSN1amKm-C6-TTM2N.mjs";
9
- import { n as migrationSpaceListEntriesFromAggregate, r as runMigrationList, t as listRefsByContractHash } from "./migration-list-CY08bD8I-PoXuv94c.mjs";
10
- import { m as indentMigrationGraphTreeBlock, o as computeGlobalMaxDirNameWidth, s as computeGlobalMaxEdgeTreePrefixWidth, v as renderMigrationGraphLegend, y as renderMigrationGraphSpaceTree } from "./migration-graph-command-render-h0VdTkSM-C3rPZEw1.mjs";
11
- import { a as statusForMigrationHash, i as readMigrationRefs, n as deriveStatusEdgeAnnotations, r as originHashForStatus, t as appliedHashesFromLedger } from "./refs-fQLFcMoq-aTBeUU9H.mjs";
12
- import { n as validateLegendOptions, t as shouldShowLegend } from "./legend-DGv9e2_0-BtetgRz4.mjs";
13
- import { ifDefined } from "@prisma/orm-framework/utils/defined";
14
- import { dim, yellow } from "colorette";
15
- import { notOk, ok } from "@prisma/orm-framework/utils/result";
16
- import { Command } from "commander";
17
- //#region ../../../1-framework/3-tooling/cli/dist/migration-status-BIrAJ5af.mjs
18
- function shortDisplayHash(hash) {
19
- return hash.slice(0, 12);
20
- }
21
- function resolveTarget(contractHash, activeRefHash) {
22
- return activeRefHash ?? contractHash;
23
- }
24
- function buildStatusMigrations(listMigrations, annotations) {
25
- return listMigrations.map((migration) => ({
26
- ...migration,
27
- status: statusForMigrationHash(migration.hash, annotations)
28
- }));
29
- }
30
- function renderSpaceTree(args) {
31
- const graph = args.space.graph();
32
- if (graph.nodes.size === 0) return "";
33
- return renderMigrationGraphSpaceTree({
34
- graph,
35
- migrations: args.migrations,
36
- liveContractHash: args.liveContractHash,
37
- refsByHash: listRefsByContractHash(args.space),
38
- statusOverlayByHash: args.statusOverlay,
39
- colorize: args.colorize,
40
- glyphMode: args.glyphMode,
41
- isAppSpace: args.isAppSpace,
42
- ...args.showDbMarker && args.markerHash !== void 0 ? { dbHash: args.markerHash } : {},
43
- ...args.globalMaxEdgeTreePrefixWidth !== void 0 ? { globalMaxEdgeTreePrefixWidth: args.globalMaxEdgeTreePrefixWidth } : {},
44
- ...args.globalMaxDirNameWidth !== void 0 ? { globalMaxDirNameWidth: args.globalMaxDirNameWidth } : {}
45
- });
46
- }
47
- function countPending(migrations) {
48
- return migrations.filter((m) => m.status === "pending").length;
49
- }
50
- function buildNoPathSummary(args) {
51
- const markerPart = args.markerHash !== void 0 ? `the database state (${shortDisplayHash(args.markerHash)})` : "the database state";
52
- const targetShort = shortDisplayHash(args.targetHash);
53
- if (!args.explicitTarget) return `No migration path from ${markerPart} to the application's contract (${targetShort}). Run \`prisma-next migration plan --name <name>\` to author one.`;
54
- return `No migration path from ${markerPart} to ${args.refName !== void 0 ? `the target (${targetShort} via \`${args.refName}\`)` : `the target (${targetShort})`}. Run \`prisma-next migration plan --name <name>\` to author one, or pass \`--to <contract>\` to pick a reachable target.`;
55
- }
56
- function buildStatusHeadline(args) {
57
- if (args.markerDiverged && args.markerHash !== void 0) return `Database marker ${shortDisplayHash(args.markerHash)} is not in the on-disk migration graph`;
58
- if (args.pendingCount === 0) return "Up to date";
59
- return `${args.pendingCount} pending — run \`prisma-next migrate --to ${shortDisplayHash(args.targetHash)}\``;
60
- }
61
- function formatStatusSummary(result, colorize) {
62
- const c = (fn, s) => colorize ? fn(s) : s;
63
- const lines = [];
64
- const pendingTotal = result.spaces.reduce((sum, space) => sum + countPending(space.migrations), 0);
65
- if (result.diagnostics.some((d) => d.code === "MIGRATION.MARKER_NOT_IN_HISTORY") || pendingTotal > 0) lines.push(c(yellow, result.summary));
66
- else lines.push(result.summary);
67
- const missingInvariantsDiagnostic = result.diagnostics.find((d) => d.code === "MIGRATION.MISSING_INVARIANTS");
68
- if (missingInvariantsDiagnostic !== void 0) lines.push(c(dim, missingInvariantsDiagnostic.message));
69
- return lines.join("\n");
70
- }
71
- function formatStatusHumanOutput(result, colorize) {
72
- const sections = [];
73
- for (const section of result.treeSections) {
74
- if (section.showHeading) sections.push(`${section.space}:`);
75
- if (section.tree.length > 0) sections.push(section.tree);
76
- else sections.push("(no migrations)");
77
- sections.push("");
78
- }
79
- sections.push(formatStatusSummary(result, colorize));
80
- return sections.join("\n").trimEnd();
81
- }
82
- async function readMarkersAndLedgers(args) {
83
- const markersBySpace = /* @__PURE__ */ new Map();
84
- const all = await args.client.readAllMarkers();
85
- for (const [spaceId, marker] of all) markersBySpace.set(spaceId, marker);
86
- const ledgersBySpace = /* @__PURE__ */ new Map();
87
- for (const spaceId of args.spaceIds) ledgersBySpace.set(spaceId, await args.client.readLedger(spaceId));
88
- return {
89
- markersBySpace,
90
- ledgersBySpace
91
- };
92
- }
93
- async function executeMigrationStatusCommand(options, flags, ui) {
94
- const configResult = await loadConfigForSections(options.config, [
95
- "family",
96
- "target",
97
- "adapter",
98
- "driver",
99
- "extensions",
100
- "db",
101
- "migrations",
102
- "contract"
103
- ]);
104
- if (!configResult.ok) return configResult;
105
- const config = configResult.value;
106
- const { configPath, migrationsDir, migrationsRelative, refsDir } = resolveMigrationPaths(options.config, config, process.cwd());
107
- const dbConnection = options.db ?? config.db?.connection;
108
- const hasDriver = !!config.driver;
109
- const usingFromOverride = options.from !== void 0;
110
- if (!usingFromOverride) {
111
- const missingDb = requireLiveDatabase({
112
- dbConnection,
113
- hasDriver,
114
- why: "migration status needs a database connection to read the marker and ledger (or pass --from for offline path preview)",
115
- retryCommand: "prisma-next migration status --from <contract>"
116
- });
117
- if (missingDb) return notOk(missingDb);
118
- }
119
- const refsResult = await readMigrationRefs(refsDir);
120
- if (!refsResult.ok) return notOk(refsResult.failure);
121
- const allRefs = refsResult.value;
122
- const diagnostics = [];
123
- const loaded = await buildReadAggregate(config, { migrationsDir });
124
- if (!loaded.ok) return notOk(loaded.failure);
125
- const contractHash = loaded.value.contractHash;
126
- try {
127
- await readContractEnvelope(config);
128
- } catch (error) {
129
- diagnostics.push({
130
- code: "CONTRACT.UNREADABLE",
131
- severity: "warn",
132
- message: `Could not read contract: ${error instanceof Error ? error.message : "unknown error"}`,
133
- hints: ["Run 'prisma-next contract emit' to generate a valid contract"]
134
- });
135
- }
136
- const { aggregate } = loaded.value;
137
- if (await loadContractRawSafely(config) !== null) {
138
- const corruptionFailure = refusePackageCorruptionOnAggregate(aggregate);
139
- if (corruptionFailure) return notOk(corruptionFailure);
140
- }
141
- const appGraph = aggregate.app.graph();
142
- let activeRefHash;
143
- let activeRefName;
144
- let activeRefEntry;
145
- let fromOverrideHash;
146
- if (options.to) {
147
- const refResult = resolveContractRef(options.to, {
148
- graph: appGraph,
149
- refs: allRefs
150
- });
151
- if (!refResult.ok) return notOk(refResult.failure);
152
- activeRefHash = refResult.value.hash;
153
- if (refResult.value.provenance.kind === "ref") {
154
- activeRefName = refResult.value.provenance.refName;
155
- activeRefEntry = allRefs[activeRefName];
156
- }
157
- }
158
- if (options.from) {
159
- const fromResult = resolveContractRef(options.from, {
160
- graph: appGraph,
161
- refs: allRefs
162
- });
163
- if (!fromResult.ok) return notOk(fromResult.failure);
164
- fromOverrideHash = fromResult.value.hash;
165
- }
166
- const requiredInvariants = [...activeRefEntry?.invariants ?? []].sort();
167
- if (!flags.json && !flags.quiet) {
168
- const details = [{
169
- label: "config",
170
- value: configPath
171
- }, {
172
- label: "migrations",
173
- value: migrationsRelative
174
- }];
175
- if (dbConnection && hasDriver) details.push({
176
- label: "database",
177
- value: maskConnectionUrl(String(dbConnection))
178
- });
179
- if (activeRefName) details.push({
180
- label: "ref",
181
- value: activeRefName
182
- });
183
- if (options.from) details.push({
184
- label: "from",
185
- value: options.from
186
- });
187
- if (options.space) details.push({
188
- label: "space",
189
- value: options.space
190
- });
191
- const header = formatStyledHeader({
192
- command: "migration status",
193
- description: "Show migration history and applied status",
194
- details,
195
- flags
196
- });
197
- ui.stderr(header);
198
- if (shouldShowLegend(options, flags)) {
199
- ui.stderr(renderMigrationGraphLegend({
200
- colorize: flags.color !== false,
201
- glyphMode: ui.resolveGlyphMode(options.ascii === true)
202
- }));
203
- ui.stderr("");
204
- }
205
- }
206
- const listResult = runMigrationList({
207
- spaces: await migrationSpaceListEntriesFromAggregate(aggregate, migrationsDir),
208
- ...ifDefined("spaceFilter", options.space)
209
- });
210
- if (!listResult.ok) return listResult;
211
- const scopedSpaces = listResult.value.spaces;
212
- const showSpaceHeadings = scopedSpaces.length > 1;
213
- let markersBySpace = /* @__PURE__ */ new Map();
214
- let ledgersBySpace = /* @__PURE__ */ new Map();
215
- let connected = false;
216
- if (dbConnection && hasDriver && !usingFromOverride) {
217
- const client = createControlClient({
218
- family: config.family,
219
- target: config.target,
220
- adapter: config.adapter,
221
- driver: config.driver,
222
- extensions: config.extensions ?? []
223
- });
224
- try {
225
- await client.connect(dbConnection);
226
- connected = true;
227
- const read = await readMarkersAndLedgers({
228
- client,
229
- spaceIds: scopedSpaces.map((s) => s.space)
230
- });
231
- markersBySpace = new Map(read.markersBySpace);
232
- ledgersBySpace = new Map(read.ledgersBySpace);
233
- } catch (error) {
234
- if (CliStructuredError$1.is(error)) return notOk(error);
235
- return notOk(errorUnexpected(error instanceof Error ? error.message : String(error), { why: `Failed to read database state: ${error instanceof Error ? error.message : String(error)}` }));
236
- } finally {
237
- await closeQuietly(client);
238
- }
239
- }
240
- if (activeRefEntry && activeRefEntry.invariants.length > 0 && connected) {
241
- const invariantRefusal = refuseUnknownInvariants({
242
- graph: appGraph,
243
- markerInvariants: markersBySpace.get(aggregate.app.spaceId)?.invariants ?? [],
244
- refInvariants: activeRefEntry.invariants,
245
- ...ifDefined("refName", activeRefName)
246
- });
247
- if (invariantRefusal) return notOk(invariantRefusal);
248
- }
249
- const showAppliedOverlay = connected && !usingFromOverride;
250
- const showDbMarker = connected && !usingFromOverride;
251
- const glyphMode = ui.resolveGlyphMode(options.ascii === true);
252
- const colorize = flags.color !== false;
253
- const statusSpaces = [];
254
- const treeSections = [];
255
- let markerDiverged = false;
256
- let markerCannotReachTarget = false;
257
- let headlineTargetHash = activeRefHash ?? contractHash;
258
- let totalPending = 0;
259
- const globalLayoutInputs = showSpaceHeadings ? scopedSpaces.filter((spaceEntry) => spaceEntry.migrations.length > 0).map((spaceEntry) => ({
260
- graph: aggregate.space(spaceEntry.space).graph(),
261
- liveContractHash: contractHash
262
- })) : [];
263
- const globalMaxEdgeTreePrefixWidth = globalLayoutInputs.length > 0 ? computeGlobalMaxEdgeTreePrefixWidth(globalLayoutInputs) : void 0;
264
- const globalMaxDirNameWidth = globalLayoutInputs.length > 0 ? computeGlobalMaxDirNameWidth(globalLayoutInputs) : void 0;
265
- for (const spaceEntry of scopedSpaces) {
266
- const space = aggregate.space(spaceEntry.space);
267
- if (space === void 0) continue;
268
- const graph = space.graph();
269
- const spaceContractHash = space.contract().storage.storageHash;
270
- const targetHash = resolveTarget(spaceContractHash, activeRefHash);
271
- if (spaceEntry.space === aggregate.app.spaceId) headlineTargetHash = targetHash;
272
- const markerRecord = markersBySpace.get(spaceEntry.space);
273
- const markerHash = usingFromOverride ? fromOverrideHash : markerRecord?.storageHash ?? void 0;
274
- const originHash = originHashForStatus(markerHash);
275
- const markerInGraph = markerHash === void 0 || graph.nodes.has(markerHash) || markerHash === spaceContractHash;
276
- if (connected && !usingFromOverride && markerInGraph && originHash !== targetHash && !hasMigrationPath(graph, originHash, targetHash)) markerCannotReachTarget = true;
277
- if (connected && !usingFromOverride && markerHash !== void 0 && !markerInGraph) {
278
- markerDiverged = true;
279
- diagnostics.push({
280
- code: "MIGRATION.MARKER_NOT_IN_HISTORY",
281
- severity: "warn",
282
- message: "Database was updated outside the migration system (marker does not match any migration)",
283
- hints: ["Run 'prisma-next db sign' to overwrite the marker if the database already matches the contract", "Run 'prisma-next db update' to push the current contract to the database"]
284
- });
285
- }
286
- const ledger = ledgersBySpace.get(spaceEntry.space) ?? [];
287
- const annotations = deriveStatusEdgeAnnotations({
288
- graph,
289
- targetHash,
290
- originHash,
291
- appliedMigrationHashes: showAppliedOverlay ? appliedHashesFromLedger(ledger) : /* @__PURE__ */ new Set(),
292
- showAppliedOverlay
293
- });
294
- const isAppSpace = spaceEntry.space === aggregate.app.spaceId;
295
- const tree = renderSpaceTree({
296
- space,
297
- liveContractHash: contractHash,
298
- migrations: spaceEntry.migrations,
299
- markerHash,
300
- showDbMarker,
301
- statusOverlay: annotations,
302
- colorize,
303
- glyphMode,
304
- isAppSpace,
305
- ...globalMaxEdgeTreePrefixWidth !== void 0 ? { globalMaxEdgeTreePrefixWidth } : {},
306
- ...globalMaxDirNameWidth !== void 0 ? { globalMaxDirNameWidth } : {}
307
- });
308
- const migrations = buildStatusMigrations(spaceEntry.migrations, annotations);
309
- const pending = countPending(migrations);
310
- totalPending += pending;
311
- statusSpaces.push({
312
- space: spaceEntry.space,
313
- currentContract: markerHash ?? null,
314
- targetContract: targetHash,
315
- migrations: [...migrations]
316
- });
317
- const displayTree = showSpaceHeadings && tree.length > 0 ? indentMigrationGraphTreeBlock(tree, " ") : tree;
318
- treeSections.push({
319
- space: spaceEntry.space,
320
- tree: displayTree,
321
- showHeading: showSpaceHeadings
322
- });
323
- }
324
- if (connected && requiredInvariants.length > 0) {
325
- const markerInvariants = markersBySpace.get(aggregate.app.spaceId)?.invariants ?? [];
326
- const markerSet = new Set(markerInvariants);
327
- const missing = requiredInvariants.filter((id) => !markerSet.has(id));
328
- if (missing.length > 0) {
329
- diagnostics.push({
330
- code: "MIGRATION.MISSING_INVARIANTS",
331
- severity: "warn",
332
- ...ifDefined("ref", activeRefName),
333
- invariants: missing,
334
- message: `missing invariant(s): ${missing.join(", ")}`
335
- });
336
- if (activeRefHash !== void 0) {
337
- const pathRefusal = refuseMissingInvariantPath({
338
- graph: appGraph,
339
- originHash: originHashForStatus(markersBySpace.get(aggregate.app.spaceId)?.storageHash),
340
- targetHash: activeRefHash,
341
- missing,
342
- ...ifDefined("refName", activeRefName)
343
- });
344
- if (pathRefusal) return notOk(pathRefusal);
345
- }
346
- }
347
- }
348
- const appMarkerHash = markersBySpace.get(aggregate.app.spaceId)?.storageHash;
349
- const summary = markerCannotReachTarget ? buildNoPathSummary({
350
- markerHash: appMarkerHash,
351
- targetHash: headlineTargetHash,
352
- explicitTarget: options.to !== void 0,
353
- refName: activeRefName
354
- }) : buildStatusHeadline({
355
- pendingCount: totalPending,
356
- targetHash: headlineTargetHash,
357
- markerDiverged,
358
- markerHash: appMarkerHash
359
- });
360
- if (scopedSpaces.every((s) => s.migrations.length === 0)) return ok({
361
- ok: true,
362
- spaces: statusSpaces,
363
- summary: "No migrations found",
364
- diagnostics,
365
- treeSections
366
- });
367
- return ok({
368
- ok: true,
369
- spaces: statusSpaces,
370
- summary,
371
- diagnostics,
372
- treeSections
373
- });
374
- }
375
- function createMigrationStatusCommand() {
376
- const command = new Command("status");
377
- setCommandDescriptions(command, "Show migration path and pending status", "Shows which migrations are pending between the database marker and\nthe target contract. Requires a database connection.\nPass --from for an offline path preview without a database.\nUse `migration graph` for topology, `migration log` for history,\nand `migration list` for on-disk enumeration.");
378
- setCommandExamples(command, [
379
- "prisma-next migration status --db $DATABASE_URL",
380
- "prisma-next migration status --to production --db $DATABASE_URL",
381
- "prisma-next migration status --from abc123 --to production",
382
- "prisma-next migration status --from abc123 --to production --json",
383
- "prisma-next migration status --ascii --from abc123 --to production",
384
- "prisma-next migration status --legend --from abc123 --to production"
385
- ]);
386
- setCommandSeeAlso(command, [
387
- {
388
- verb: "migration log",
389
- oneLiner: "Show executed migration history"
390
- },
391
- {
392
- verb: "migration list",
393
- oneLiner: "List on-disk migrations"
394
- },
395
- {
396
- verb: "migration graph",
397
- oneLiner: "Show the migration graph topology"
398
- },
399
- {
400
- verb: "migration show",
401
- oneLiner: "Display migration package contents"
402
- }
403
- ]);
404
- addGlobalOptions(command).option("--db <url>", "Database connection string").option("--config <path>", "Path to prisma-next.config.ts").option("--space <id>", "Narrow output to a single contract space").option("--to <contract>", "Target contract reference (hash, prefix, ref name, migration dir name, <dir>^, or ./path)").option("--from <contract>", "Origin contract reference; same grammar as --to. Supplying --from switches to offline path computation.").option("--legend", "Print a key for the tree glyphs and lane colors").option("--ascii", "Use ASCII glyphs (pipe-friendly)").action(async (options) => {
405
- const flags = parseGlobalFlagsOrExit(options);
406
- const ui = createTerminalUI(flags);
407
- const legendValidation = validateLegendOptions(options, flags);
408
- if (!legendValidation.ok) process.exit(handleResult(legendValidation, flags, ui));
409
- const exitCode = handleResult(await executeMigrationStatusCommand(options, flags, ui), flags, ui, (statusResult) => {
410
- if (flags.json) {
411
- const jsonResult = {
412
- ok: true,
413
- spaces: [...statusResult.spaces],
414
- summary: statusResult.summary,
415
- diagnostics: [...statusResult.diagnostics]
416
- };
417
- ui.output(JSON.stringify(jsonResult, null, 2));
418
- } else if (!flags.quiet) ui.output(formatStatusHumanOutput(statusResult, flags.color !== false));
419
- });
420
- process.exit(exitCode);
421
- });
422
- return command;
423
- }
424
- //#endregion
425
- export { formatStatusHumanOutput as a, executeMigrationStatusCommand as i, buildStatusHeadline as n, formatStatusSummary as o, createMigrationStatusCommand as r, buildNoPathSummary as t };
426
-
427
- //# sourceMappingURL=migration-status-BIrAJ5af-D-_mMBUA.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migration-status-BIrAJ5af-D-_mMBUA.mjs","names":["CliStructuredError"],"sources":["../../../../1-framework/3-tooling/cli/dist/migration-status-BIrAJ5af.mjs"],"sourcesContent":["import { I as requireLiveDatabase, P as errorUnexpected, t as CliStructuredError } from \"./cli-errors-B4zTLaqQ.mjs\";\nimport { t as createTerminalUI } from \"./terminal-ui-Cqz4LVL7.mjs\";\nimport { S as formatStyledHeader, _ as parseGlobalFlagsOrExit, a as maskConnectionUrl, c as resolveMigrationPaths, d as setCommandExamples, f as setCommandSeeAlso, n as closeQuietly, o as readContractEnvelope, t as addGlobalOptions, u as setCommandDescriptions, v as handleResult } from \"./command-helpers-BCgwcqTe.mjs\";\nimport { i as loadContractRawSafely, l as refusePackageCorruptionOnAggregate, r as buildReadAggregate } from \"./contract-space-aggregate-loader-fa04OIaL.mjs\";\nimport { t as createControlClient } from \"./client-C6Qp5ujC.mjs\";\nimport { n as refuseUnknownInvariants, r as hasMigrationPath, t as refuseMissingInvariantPath } from \"./invariants-Bltd8DyA.mjs\";\nimport { t as resolveContractRef } from \"./ref-resolution-BSN1amKm.mjs\";\nimport { n as migrationSpaceListEntriesFromAggregate, r as runMigrationList, t as listRefsByContractHash } from \"./migration-list-CY08bD8I.mjs\";\nimport { a as renderMigrationGraphLegend, d as computeGlobalMaxEdgeTreePrefixWidth, m as renderMigrationGraphSpaceTree, p as indentMigrationGraphTreeBlock, u as computeGlobalMaxDirNameWidth } from \"./migration-graph-command-render-h0VdTkSM.mjs\";\nimport { n as validateLegendOptions, t as shouldShowLegend } from \"./legend-DGv9e2_0.mjs\";\nimport { a as statusForMigrationHash, i as originHashForStatus, n as appliedHashesFromLedger, r as deriveStatusEdgeAnnotations, t as readMigrationRefs } from \"./refs-fQLFcMoq.mjs\";\nimport { Command } from \"commander\";\nimport { loadConfigForSections } from \"@internal/config-loader\";\nimport { ifDefined } from \"@internal/utils/defined\";\nimport { notOk, ok } from \"@internal/utils/result\";\nimport { dim, yellow } from \"colorette\";\n//#region src/commands/migration-status.ts\nfunction shortDisplayHash(hash) {\n\treturn hash.slice(0, 12);\n}\nfunction resolveTarget(contractHash, activeRefHash) {\n\treturn activeRefHash ?? contractHash;\n}\nfunction buildStatusMigrations(listMigrations, annotations) {\n\treturn listMigrations.map((migration) => ({\n\t\t...migration,\n\t\tstatus: statusForMigrationHash(migration.hash, annotations)\n\t}));\n}\nfunction renderSpaceTree(args) {\n\tconst graph = args.space.graph();\n\tif (graph.nodes.size === 0) return \"\";\n\treturn renderMigrationGraphSpaceTree({\n\t\tgraph,\n\t\tmigrations: args.migrations,\n\t\tliveContractHash: args.liveContractHash,\n\t\trefsByHash: listRefsByContractHash(args.space),\n\t\tstatusOverlayByHash: args.statusOverlay,\n\t\tcolorize: args.colorize,\n\t\tglyphMode: args.glyphMode,\n\t\tisAppSpace: args.isAppSpace,\n\t\t...args.showDbMarker && args.markerHash !== void 0 ? { dbHash: args.markerHash } : {},\n\t\t...args.globalMaxEdgeTreePrefixWidth !== void 0 ? { globalMaxEdgeTreePrefixWidth: args.globalMaxEdgeTreePrefixWidth } : {},\n\t\t...args.globalMaxDirNameWidth !== void 0 ? { globalMaxDirNameWidth: args.globalMaxDirNameWidth } : {}\n\t});\n}\nfunction countPending(migrations) {\n\treturn migrations.filter((m) => m.status === \"pending\").length;\n}\nfunction buildNoPathSummary(args) {\n\tconst markerPart = args.markerHash !== void 0 ? `the database state (${shortDisplayHash(args.markerHash)})` : \"the database state\";\n\tconst targetShort = shortDisplayHash(args.targetHash);\n\tif (!args.explicitTarget) return `No migration path from ${markerPart} to the application's contract (${targetShort}). Run \\`prisma-next migration plan --name <name>\\` to author one.`;\n\treturn `No migration path from ${markerPart} to ${args.refName !== void 0 ? `the target (${targetShort} via \\`${args.refName}\\`)` : `the target (${targetShort})`}. Run \\`prisma-next migration plan --name <name>\\` to author one, or pass \\`--to <contract>\\` to pick a reachable target.`;\n}\nfunction buildStatusHeadline(args) {\n\tif (args.markerDiverged && args.markerHash !== void 0) return `Database marker ${shortDisplayHash(args.markerHash)} is not in the on-disk migration graph`;\n\tif (args.pendingCount === 0) return \"Up to date\";\n\treturn `${args.pendingCount} pending — run \\`prisma-next migrate --to ${shortDisplayHash(args.targetHash)}\\``;\n}\nfunction formatStatusSummary(result, colorize) {\n\tconst c = (fn, s) => colorize ? fn(s) : s;\n\tconst lines = [];\n\tconst pendingTotal = result.spaces.reduce((sum, space) => sum + countPending(space.migrations), 0);\n\tif (result.diagnostics.some((d) => d.code === \"MIGRATION.MARKER_NOT_IN_HISTORY\") || pendingTotal > 0) lines.push(c(yellow, result.summary));\n\telse lines.push(result.summary);\n\tconst missingInvariantsDiagnostic = result.diagnostics.find((d) => d.code === \"MIGRATION.MISSING_INVARIANTS\");\n\tif (missingInvariantsDiagnostic !== void 0) lines.push(c(dim, missingInvariantsDiagnostic.message));\n\treturn lines.join(\"\\n\");\n}\nfunction formatStatusHumanOutput(result, colorize) {\n\tconst sections = [];\n\tfor (const section of result.treeSections) {\n\t\tif (section.showHeading) sections.push(`${section.space}:`);\n\t\tif (section.tree.length > 0) sections.push(section.tree);\n\t\telse sections.push(\"(no migrations)\");\n\t\tsections.push(\"\");\n\t}\n\tsections.push(formatStatusSummary(result, colorize));\n\treturn sections.join(\"\\n\").trimEnd();\n}\nasync function readMarkersAndLedgers(args) {\n\tconst markersBySpace = /* @__PURE__ */ new Map();\n\tconst all = await args.client.readAllMarkers();\n\tfor (const [spaceId, marker] of all) markersBySpace.set(spaceId, marker);\n\tconst ledgersBySpace = /* @__PURE__ */ new Map();\n\tfor (const spaceId of args.spaceIds) ledgersBySpace.set(spaceId, await args.client.readLedger(spaceId));\n\treturn {\n\t\tmarkersBySpace,\n\t\tledgersBySpace\n\t};\n}\nasync function executeMigrationStatusCommand(options, flags, ui) {\n\tconst configResult = await loadConfigForSections(options.config, [\n\t\t\"family\",\n\t\t\"target\",\n\t\t\"adapter\",\n\t\t\"driver\",\n\t\t\"extensions\",\n\t\t\"db\",\n\t\t\"migrations\",\n\t\t\"contract\"\n\t]);\n\tif (!configResult.ok) return configResult;\n\tconst config = configResult.value;\n\tconst { configPath, migrationsDir, migrationsRelative, refsDir } = resolveMigrationPaths(options.config, config, process.cwd());\n\tconst dbConnection = options.db ?? config.db?.connection;\n\tconst hasDriver = !!config.driver;\n\tconst usingFromOverride = options.from !== void 0;\n\tif (!usingFromOverride) {\n\t\tconst missingDb = requireLiveDatabase({\n\t\t\tdbConnection,\n\t\t\thasDriver,\n\t\t\twhy: \"migration status needs a database connection to read the marker and ledger (or pass --from for offline path preview)\",\n\t\t\tretryCommand: \"prisma-next migration status --from <contract>\"\n\t\t});\n\t\tif (missingDb) return notOk(missingDb);\n\t}\n\tconst refsResult = await readMigrationRefs(refsDir);\n\tif (!refsResult.ok) return notOk(refsResult.failure);\n\tconst allRefs = refsResult.value;\n\tconst diagnostics = [];\n\tconst loaded = await buildReadAggregate(config, { migrationsDir });\n\tif (!loaded.ok) return notOk(loaded.failure);\n\tconst contractHash = loaded.value.contractHash;\n\ttry {\n\t\tawait readContractEnvelope(config);\n\t} catch (error) {\n\t\tdiagnostics.push({\n\t\t\tcode: \"CONTRACT.UNREADABLE\",\n\t\t\tseverity: \"warn\",\n\t\t\tmessage: `Could not read contract: ${error instanceof Error ? error.message : \"unknown error\"}`,\n\t\t\thints: [\"Run 'prisma-next contract emit' to generate a valid contract\"]\n\t\t});\n\t}\n\tconst { aggregate } = loaded.value;\n\tif (await loadContractRawSafely(config) !== null) {\n\t\tconst corruptionFailure = refusePackageCorruptionOnAggregate(aggregate);\n\t\tif (corruptionFailure) return notOk(corruptionFailure);\n\t}\n\tconst appGraph = aggregate.app.graph();\n\tlet activeRefHash;\n\tlet activeRefName;\n\tlet activeRefEntry;\n\tlet fromOverrideHash;\n\tif (options.to) {\n\t\tconst refResult = resolveContractRef(options.to, {\n\t\t\tgraph: appGraph,\n\t\t\trefs: allRefs\n\t\t});\n\t\tif (!refResult.ok) return notOk(refResult.failure);\n\t\tactiveRefHash = refResult.value.hash;\n\t\tif (refResult.value.provenance.kind === \"ref\") {\n\t\t\tactiveRefName = refResult.value.provenance.refName;\n\t\t\tactiveRefEntry = allRefs[activeRefName];\n\t\t}\n\t}\n\tif (options.from) {\n\t\tconst fromResult = resolveContractRef(options.from, {\n\t\t\tgraph: appGraph,\n\t\t\trefs: allRefs\n\t\t});\n\t\tif (!fromResult.ok) return notOk(fromResult.failure);\n\t\tfromOverrideHash = fromResult.value.hash;\n\t}\n\tconst requiredInvariants = [...activeRefEntry?.invariants ?? []].sort();\n\tif (!flags.json && !flags.quiet) {\n\t\tconst details = [{\n\t\t\tlabel: \"config\",\n\t\t\tvalue: configPath\n\t\t}, {\n\t\t\tlabel: \"migrations\",\n\t\t\tvalue: migrationsRelative\n\t\t}];\n\t\tif (dbConnection && hasDriver) details.push({\n\t\t\tlabel: \"database\",\n\t\t\tvalue: maskConnectionUrl(String(dbConnection))\n\t\t});\n\t\tif (activeRefName) details.push({\n\t\t\tlabel: \"ref\",\n\t\t\tvalue: activeRefName\n\t\t});\n\t\tif (options.from) details.push({\n\t\t\tlabel: \"from\",\n\t\t\tvalue: options.from\n\t\t});\n\t\tif (options.space) details.push({\n\t\t\tlabel: \"space\",\n\t\t\tvalue: options.space\n\t\t});\n\t\tconst header = formatStyledHeader({\n\t\t\tcommand: \"migration status\",\n\t\t\tdescription: \"Show migration history and applied status\",\n\t\t\tdetails,\n\t\t\tflags\n\t\t});\n\t\tui.stderr(header);\n\t\tif (shouldShowLegend(options, flags)) {\n\t\t\tui.stderr(renderMigrationGraphLegend({\n\t\t\t\tcolorize: flags.color !== false,\n\t\t\t\tglyphMode: ui.resolveGlyphMode(options.ascii === true)\n\t\t\t}));\n\t\t\tui.stderr(\"\");\n\t\t}\n\t}\n\tconst listResult = runMigrationList({\n\t\tspaces: await migrationSpaceListEntriesFromAggregate(aggregate, migrationsDir),\n\t\t...ifDefined(\"spaceFilter\", options.space)\n\t});\n\tif (!listResult.ok) return listResult;\n\tconst scopedSpaces = listResult.value.spaces;\n\tconst showSpaceHeadings = scopedSpaces.length > 1;\n\tlet markersBySpace = /* @__PURE__ */ new Map();\n\tlet ledgersBySpace = /* @__PURE__ */ new Map();\n\tlet connected = false;\n\tif (dbConnection && hasDriver && !usingFromOverride) {\n\t\tconst client = createControlClient({\n\t\t\tfamily: config.family,\n\t\t\ttarget: config.target,\n\t\t\tadapter: config.adapter,\n\t\t\tdriver: config.driver,\n\t\t\textensions: config.extensions ?? []\n\t\t});\n\t\ttry {\n\t\t\tawait client.connect(dbConnection);\n\t\t\tconnected = true;\n\t\t\tconst read = await readMarkersAndLedgers({\n\t\t\t\tclient,\n\t\t\t\tspaceIds: scopedSpaces.map((s) => s.space)\n\t\t\t});\n\t\t\tmarkersBySpace = new Map(read.markersBySpace);\n\t\t\tledgersBySpace = new Map(read.ledgersBySpace);\n\t\t} catch (error) {\n\t\t\tif (CliStructuredError.is(error)) return notOk(error);\n\t\t\treturn notOk(errorUnexpected(error instanceof Error ? error.message : String(error), { why: `Failed to read database state: ${error instanceof Error ? error.message : String(error)}` }));\n\t\t} finally {\n\t\t\tawait closeQuietly(client);\n\t\t}\n\t}\n\tif (activeRefEntry && activeRefEntry.invariants.length > 0 && connected) {\n\t\tconst invariantRefusal = refuseUnknownInvariants({\n\t\t\tgraph: appGraph,\n\t\t\tmarkerInvariants: markersBySpace.get(aggregate.app.spaceId)?.invariants ?? [],\n\t\t\trefInvariants: activeRefEntry.invariants,\n\t\t\t...ifDefined(\"refName\", activeRefName)\n\t\t});\n\t\tif (invariantRefusal) return notOk(invariantRefusal);\n\t}\n\tconst showAppliedOverlay = connected && !usingFromOverride;\n\tconst showDbMarker = connected && !usingFromOverride;\n\tconst glyphMode = ui.resolveGlyphMode(options.ascii === true);\n\tconst colorize = flags.color !== false;\n\tconst statusSpaces = [];\n\tconst treeSections = [];\n\tlet markerDiverged = false;\n\tlet markerCannotReachTarget = false;\n\tlet headlineTargetHash = activeRefHash ?? contractHash;\n\tlet totalPending = 0;\n\tconst globalLayoutInputs = showSpaceHeadings ? scopedSpaces.filter((spaceEntry) => spaceEntry.migrations.length > 0).map((spaceEntry) => ({\n\t\tgraph: aggregate.space(spaceEntry.space).graph(),\n\t\tliveContractHash: contractHash\n\t})) : [];\n\tconst globalMaxEdgeTreePrefixWidth = globalLayoutInputs.length > 0 ? computeGlobalMaxEdgeTreePrefixWidth(globalLayoutInputs) : void 0;\n\tconst globalMaxDirNameWidth = globalLayoutInputs.length > 0 ? computeGlobalMaxDirNameWidth(globalLayoutInputs) : void 0;\n\tfor (const spaceEntry of scopedSpaces) {\n\t\tconst space = aggregate.space(spaceEntry.space);\n\t\tif (space === void 0) continue;\n\t\tconst graph = space.graph();\n\t\tconst spaceContractHash = space.contract().storage.storageHash;\n\t\tconst targetHash = resolveTarget(spaceContractHash, activeRefHash);\n\t\tif (spaceEntry.space === aggregate.app.spaceId) headlineTargetHash = targetHash;\n\t\tconst markerRecord = markersBySpace.get(spaceEntry.space);\n\t\tconst markerHash = usingFromOverride ? fromOverrideHash : markerRecord?.storageHash ?? void 0;\n\t\tconst originHash = originHashForStatus(markerHash);\n\t\tconst markerInGraph = markerHash === void 0 || graph.nodes.has(markerHash) || markerHash === spaceContractHash;\n\t\tif (connected && !usingFromOverride && markerInGraph && originHash !== targetHash && !hasMigrationPath(graph, originHash, targetHash)) markerCannotReachTarget = true;\n\t\tif (connected && !usingFromOverride && markerHash !== void 0 && !markerInGraph) {\n\t\t\tmarkerDiverged = true;\n\t\t\tdiagnostics.push({\n\t\t\t\tcode: \"MIGRATION.MARKER_NOT_IN_HISTORY\",\n\t\t\t\tseverity: \"warn\",\n\t\t\t\tmessage: \"Database was updated outside the migration system (marker does not match any migration)\",\n\t\t\t\thints: [\"Run 'prisma-next db sign' to overwrite the marker if the database already matches the contract\", \"Run 'prisma-next db update' to push the current contract to the database\"]\n\t\t\t});\n\t\t}\n\t\tconst ledger = ledgersBySpace.get(spaceEntry.space) ?? [];\n\t\tconst annotations = deriveStatusEdgeAnnotations({\n\t\t\tgraph,\n\t\t\ttargetHash,\n\t\t\toriginHash,\n\t\t\tappliedMigrationHashes: showAppliedOverlay ? appliedHashesFromLedger(ledger) : /* @__PURE__ */ new Set(),\n\t\t\tshowAppliedOverlay\n\t\t});\n\t\tconst isAppSpace = spaceEntry.space === aggregate.app.spaceId;\n\t\tconst tree = renderSpaceTree({\n\t\t\tspace,\n\t\t\tliveContractHash: contractHash,\n\t\t\tmigrations: spaceEntry.migrations,\n\t\t\tmarkerHash,\n\t\t\tshowDbMarker,\n\t\t\tstatusOverlay: annotations,\n\t\t\tcolorize,\n\t\t\tglyphMode,\n\t\t\tisAppSpace,\n\t\t\t...globalMaxEdgeTreePrefixWidth !== void 0 ? { globalMaxEdgeTreePrefixWidth } : {},\n\t\t\t...globalMaxDirNameWidth !== void 0 ? { globalMaxDirNameWidth } : {}\n\t\t});\n\t\tconst migrations = buildStatusMigrations(spaceEntry.migrations, annotations);\n\t\tconst pending = countPending(migrations);\n\t\ttotalPending += pending;\n\t\tstatusSpaces.push({\n\t\t\tspace: spaceEntry.space,\n\t\t\tcurrentContract: markerHash ?? null,\n\t\t\ttargetContract: targetHash,\n\t\t\tmigrations: [...migrations]\n\t\t});\n\t\tconst displayTree = showSpaceHeadings && tree.length > 0 ? indentMigrationGraphTreeBlock(tree, \" \") : tree;\n\t\ttreeSections.push({\n\t\t\tspace: spaceEntry.space,\n\t\t\ttree: displayTree,\n\t\t\tshowHeading: showSpaceHeadings\n\t\t});\n\t}\n\tif (connected && requiredInvariants.length > 0) {\n\t\tconst markerInvariants = markersBySpace.get(aggregate.app.spaceId)?.invariants ?? [];\n\t\tconst markerSet = new Set(markerInvariants);\n\t\tconst missing = requiredInvariants.filter((id) => !markerSet.has(id));\n\t\tif (missing.length > 0) {\n\t\t\tdiagnostics.push({\n\t\t\t\tcode: \"MIGRATION.MISSING_INVARIANTS\",\n\t\t\t\tseverity: \"warn\",\n\t\t\t\t...ifDefined(\"ref\", activeRefName),\n\t\t\t\tinvariants: missing,\n\t\t\t\tmessage: `missing invariant(s): ${missing.join(\", \")}`\n\t\t\t});\n\t\t\tif (activeRefHash !== void 0) {\n\t\t\t\tconst pathRefusal = refuseMissingInvariantPath({\n\t\t\t\t\tgraph: appGraph,\n\t\t\t\t\toriginHash: originHashForStatus(markersBySpace.get(aggregate.app.spaceId)?.storageHash),\n\t\t\t\t\ttargetHash: activeRefHash,\n\t\t\t\t\tmissing,\n\t\t\t\t\t...ifDefined(\"refName\", activeRefName)\n\t\t\t\t});\n\t\t\t\tif (pathRefusal) return notOk(pathRefusal);\n\t\t\t}\n\t\t}\n\t}\n\tconst appMarkerHash = markersBySpace.get(aggregate.app.spaceId)?.storageHash;\n\tconst summary = markerCannotReachTarget ? buildNoPathSummary({\n\t\tmarkerHash: appMarkerHash,\n\t\ttargetHash: headlineTargetHash,\n\t\texplicitTarget: options.to !== void 0,\n\t\trefName: activeRefName\n\t}) : buildStatusHeadline({\n\t\tpendingCount: totalPending,\n\t\ttargetHash: headlineTargetHash,\n\t\tmarkerDiverged,\n\t\tmarkerHash: appMarkerHash\n\t});\n\tif (scopedSpaces.every((s) => s.migrations.length === 0)) return ok({\n\t\tok: true,\n\t\tspaces: statusSpaces,\n\t\tsummary: \"No migrations found\",\n\t\tdiagnostics,\n\t\ttreeSections\n\t});\n\treturn ok({\n\t\tok: true,\n\t\tspaces: statusSpaces,\n\t\tsummary,\n\t\tdiagnostics,\n\t\ttreeSections\n\t});\n}\nfunction createMigrationStatusCommand() {\n\tconst command = new Command(\"status\");\n\tsetCommandDescriptions(command, \"Show migration path and pending status\", \"Shows which migrations are pending between the database marker and\\nthe target contract. Requires a database connection.\\nPass --from for an offline path preview without a database.\\nUse `migration graph` for topology, `migration log` for history,\\nand `migration list` for on-disk enumeration.\");\n\tsetCommandExamples(command, [\n\t\t\"prisma-next migration status --db $DATABASE_URL\",\n\t\t\"prisma-next migration status --to production --db $DATABASE_URL\",\n\t\t\"prisma-next migration status --from abc123 --to production\",\n\t\t\"prisma-next migration status --from abc123 --to production --json\",\n\t\t\"prisma-next migration status --ascii --from abc123 --to production\",\n\t\t\"prisma-next migration status --legend --from abc123 --to production\"\n\t]);\n\tsetCommandSeeAlso(command, [\n\t\t{\n\t\t\tverb: \"migration log\",\n\t\t\toneLiner: \"Show executed migration history\"\n\t\t},\n\t\t{\n\t\t\tverb: \"migration list\",\n\t\t\toneLiner: \"List on-disk migrations\"\n\t\t},\n\t\t{\n\t\t\tverb: \"migration graph\",\n\t\t\toneLiner: \"Show the migration graph topology\"\n\t\t},\n\t\t{\n\t\t\tverb: \"migration show\",\n\t\t\toneLiner: \"Display migration package contents\"\n\t\t}\n\t]);\n\taddGlobalOptions(command).option(\"--db <url>\", \"Database connection string\").option(\"--config <path>\", \"Path to prisma-next.config.ts\").option(\"--space <id>\", \"Narrow output to a single contract space\").option(\"--to <contract>\", \"Target contract reference (hash, prefix, ref name, migration dir name, <dir>^, or ./path)\").option(\"--from <contract>\", \"Origin contract reference; same grammar as --to. Supplying --from switches to offline path computation.\").option(\"--legend\", \"Print a key for the tree glyphs and lane colors\").option(\"--ascii\", \"Use ASCII glyphs (pipe-friendly)\").action(async (options) => {\n\t\tconst flags = parseGlobalFlagsOrExit(options);\n\t\tconst ui = createTerminalUI(flags);\n\t\tconst legendValidation = validateLegendOptions(options, flags);\n\t\tif (!legendValidation.ok) process.exit(handleResult(legendValidation, flags, ui));\n\t\tconst exitCode = handleResult(await executeMigrationStatusCommand(options, flags, ui), flags, ui, (statusResult) => {\n\t\t\tif (flags.json) {\n\t\t\t\tconst jsonResult = {\n\t\t\t\t\tok: true,\n\t\t\t\t\tspaces: [...statusResult.spaces],\n\t\t\t\t\tsummary: statusResult.summary,\n\t\t\t\t\tdiagnostics: [...statusResult.diagnostics]\n\t\t\t\t};\n\t\t\t\tui.output(JSON.stringify(jsonResult, null, 2));\n\t\t\t} else if (!flags.quiet) ui.output(formatStatusHumanOutput(statusResult, flags.color !== false));\n\t\t});\n\t\tprocess.exit(exitCode);\n\t});\n\treturn command;\n}\n//#endregion\nexport { formatStatusHumanOutput as a, executeMigrationStatusCommand as i, buildStatusHeadline as n, formatStatusSummary as o, createMigrationStatusCommand as r, buildNoPathSummary as t };\n\n//# sourceMappingURL=migration-status-BIrAJ5af.mjs.map"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"output-DP3woAjV-BxCr9nHA.mjs","names":[],"sources":["../../../../1-framework/3-tooling/cli/dist/output-DP3woAjV.mjs"],"sourcesContent":["import { type } from \"arktype\";\n//#region src/commands/init/output.ts\n/**\n* arktype schema for the structured success document `init --json` writes\n* to stdout (FR1.5). The same shape backs the human-readable outro\n* renderer (FR10), so the two output modes carry identical information.\n*\n* `target` is normalised to the user-facing flag value (`mongodb` rather\n* than the internal `mongo`) so consumers can round-trip the document\n* straight into a follow-up `--target` invocation.\n*\n* The `ok: true` literal is the documented success/error discriminator —\n* see [Style Guide § JSON Semantics](../../../../../../../docs/CLI%20Style%20Guide.md#json-semantics).\n* Error envelopes (`CliErrorEnvelope`) carry `ok: false` so consumers can\n* branch with `if (doc.ok)` without inspecting the rest of the structure.\n*/\nconst InitOutputSchema = type({\n\tok: \"true\",\n\ttarget: \"'postgres'|'mongodb'\",\n\tauthoring: \"'psl'|'typescript'\",\n\tschemaPath: \"string\",\n\tfilesWritten: \"string[]\",\n\t/**\n\t* FR9.1 — paths removed from disk during this run: contract artifacts\n\t* (`contract.json`, `contract.d.ts`, `ops.json`, `migration.json`) an\n\t* earlier run left behind, which only a re-init has, and the retired\n\t* agent-skill directories, which every run removes when it finds them.\n\t*/\n\tfilesDeleted: \"string[]\",\n\t/**\n\t* What became of the dependency install. `skipped` is the deliberate\n\t* `--skip-install`; `failed` is an install that ran and did not succeed,\n\t* which leaves a scaffolded project that cannot run yet. `deps` and\n\t* `devDeps` list what was installed, so both non-`installed` states\n\t* carry them empty.\n\t*/\n\tpackagesInstalled: {\n\t\tstatus: \"'installed'|'skipped'|'failed'\",\n\t\tdeps: \"string[]\",\n\t\tdevDeps: \"string[]\"\n\t},\n\tcontractEmitted: \"boolean\",\n\tnextSteps: \"string[]\",\n\twarnings: \"string[]\"\n});\n/**\n* Serialises the output document for `--json`. Sorted keys are not enforced\n* — `JSON.stringify` preserves insertion order, and the schema field order\n* is the documented order, which matches what users will see when they\n* `jq .` the result.\n*/\nfunction formatInitJson(output) {\n\treturn JSON.stringify(output, null, 2);\n}\n/**\n* Renders the human-readable outro on stderr (FR10.1). Re-uses the same\n* data structure as the JSON output so the two stay in lock-step.\n*\n* Warnings come before \"Next steps\" because they describe state the user\n* needs to be aware of before acting on the next-steps list.\n*/\nfunction renderInitOutro(ui, output, flags) {\n\tif (flags.quiet || flags.json) return;\n\tfor (const warning of output.warnings) ui.warn(warning);\n\tconst lines = [];\n\tlines.push(`Target: ${output.target}`);\n\tlines.push(`Authoring: ${output.authoring}`);\n\tlines.push(`Schema: ${output.schemaPath}`);\n\tlines.push(\"\");\n\tlines.push(\"Files written:\");\n\tfor (const file of output.filesWritten) lines.push(` • ${file}`);\n\tif (output.filesDeleted.length > 0) {\n\t\tlines.push(\"\");\n\t\tlines.push(\"Removed (stale artifacts and retired skill directories):\");\n\t\tfor (const file of output.filesDeleted) lines.push(` • ${file}`);\n\t}\n\tif (output.packagesInstalled.status === \"installed\") {\n\t\tlines.push(\"\");\n\t\tlines.push(\"Packages installed:\");\n\t\tfor (const dep of output.packagesInstalled.deps) lines.push(` • ${dep}`);\n\t\tfor (const dep of output.packagesInstalled.devDeps) lines.push(` • ${dep} (dev)`);\n\t}\n\tlines.push(\"\");\n\tlines.push(\"Next steps:\");\n\tfor (const step of output.nextSteps) lines.push(` ${step}`);\n\tui.note(lines.join(\"\\n\"), \"Done\");\n}\n/**\n* Builds the `nextSteps` array from the resolved scaffold state. Steps are\n* ordered by the workflow a user needs to follow: install what is missing →\n* configure connection → (emit if not yet done) → run a starter query →\n* docs / agent skill.\n*\n* The strings are stable and human-readable; agents wanting to act on them\n* should match on substrings (e.g. \"DATABASE_URL\") rather than exact text,\n* since copy may evolve.\n*/\nfunction buildNextSteps(options) {\n\tconst steps = [];\n\tlet stepNumber = 1;\n\tconst push = (text) => {\n\t\tsteps.push(`${stepNumber}. ${text}`);\n\t\tstepNumber += 1;\n\t};\n\tif (options.packagesInstalled === \"failed\") push(\"Install the project dependencies with your package manager — the install this run attempted failed, so nothing else here will work yet.\");\n\tif (options.packagesInstalled === \"skipped\") push(\"Install the project dependencies with your package manager (this run skipped them).\");\n\tpush(\"Set DATABASE_URL in your environment (export it or add it to .env).\");\n\tif (!options.contractEmitted) {\n\t\tpush(`Emit the contract: \\`${options.emitCommand}\\``);\n\t\tpush(`Edit your schema at ${options.schemaPath}, then re-run the emit command.`);\n\t} else push(`Edit your schema at ${options.schemaPath}, then re-run \\`${options.emitCommand}\\`.`);\n\tpush(\"Open prisma-next.md for a quick reference on how to write your first typed query.\");\n\tif (options.skillRegistered) push(\"Prisma Next skills are registered with your agent runtime — open the project in your IDE and ask the agent to add a model, run a query, or plan a migration.\");\n\treturn steps;\n}\n//#endregion\nexport { renderInitOutro as i, buildNextSteps as n, formatInitJson as r, InitOutputSchema as t };\n\n//# sourceMappingURL=output-DP3woAjV.mjs.map"],"mappings":";;;;;;;;;;;;;;;;AAgBA,MAAM,mBAAmB,KAAK;CAC7B,IAAI;CACJ,QAAQ;CACR,WAAW;CACX,YAAY;CACZ,cAAc;;;;;;;CAOd,cAAc;;;;;;;;CAQd,mBAAmB;EAClB,QAAQ;EACR,MAAM;EACN,SAAS;CACV;CACA,iBAAiB;CACjB,WAAW;CACX,UAAU;AACX,CAAC;;;;;;;AAOD,SAAS,eAAe,QAAQ;CAC/B,OAAO,KAAK,UAAU,QAAQ,MAAM,CAAC;AACtC;;;;;;;;AAQA,SAAS,gBAAgB,IAAI,QAAQ,OAAO;CAC3C,IAAI,MAAM,SAAS,MAAM,MAAM;CAC/B,KAAK,MAAM,WAAW,OAAO,UAAU,GAAG,KAAK,OAAO;CACtD,MAAM,QAAQ,CAAC;CACf,MAAM,KAAK,cAAc,OAAO,QAAQ;CACxC,MAAM,KAAK,cAAc,OAAO,WAAW;CAC3C,MAAM,KAAK,cAAc,OAAO,YAAY;CAC5C,MAAM,KAAK,EAAE;CACb,MAAM,KAAK,gBAAgB;CAC3B,KAAK,MAAM,QAAQ,OAAO,cAAc,MAAM,KAAK,OAAO,MAAM;CAChE,IAAI,OAAO,aAAa,SAAS,GAAG;EACnC,MAAM,KAAK,EAAE;EACb,MAAM,KAAK,0DAA0D;EACrE,KAAK,MAAM,QAAQ,OAAO,cAAc,MAAM,KAAK,OAAO,MAAM;CACjE;CACA,IAAI,OAAO,kBAAkB,WAAW,aAAa;EACpD,MAAM,KAAK,EAAE;EACb,MAAM,KAAK,qBAAqB;EAChC,KAAK,MAAM,OAAO,OAAO,kBAAkB,MAAM,MAAM,KAAK,OAAO,KAAK;EACxE,KAAK,MAAM,OAAO,OAAO,kBAAkB,SAAS,MAAM,KAAK,OAAO,IAAI,OAAO;CAClF;CACA,MAAM,KAAK,EAAE;CACb,MAAM,KAAK,aAAa;CACxB,KAAK,MAAM,QAAQ,OAAO,WAAW,MAAM,KAAK,KAAK,MAAM;CAC3D,GAAG,KAAK,MAAM,KAAK,IAAI,GAAG,MAAM;AACjC;;;;;;;;;;;AAWA,SAAS,eAAe,SAAS;CAChC,MAAM,QAAQ,CAAC;CACf,IAAI,aAAa;CACjB,MAAM,QAAQ,SAAS;EACtB,MAAM,KAAK,GAAG,WAAW,IAAI,MAAM;EACnC,cAAc;CACf;CACA,IAAI,QAAQ,sBAAsB,UAAU,KAAK,yIAAyI;CAC1L,IAAI,QAAQ,sBAAsB,WAAW,KAAK,qFAAqF;CACvI,KAAK,qEAAqE;CAC1E,IAAI,CAAC,QAAQ,iBAAiB;EAC7B,KAAK,wBAAwB,QAAQ,YAAY,GAAG;EACpD,KAAK,uBAAuB,QAAQ,WAAW,gCAAgC;CAChF,OAAO,KAAK,uBAAuB,QAAQ,WAAW,kBAAkB,QAAQ,YAAY,IAAI;CAChG,KAAK,mFAAmF;CACxF,IAAI,QAAQ,iBAAiB,KAAK,8JAA8J;CAChM,OAAO;AACR"}
@@ -1,43 +0,0 @@
1
- //#region ../../../1-framework/3-tooling/cli/dist/progress-adapter-CjAeTxY_.mjs
2
- /**
3
- * Creates a progress adapter that converts control-api progress events
4
- * into CLI spinner/progress output on stderr.
5
- *
6
- * The adapter:
7
- * - Starts/succeeds spinners for top-level span boundaries
8
- * - Prints per-operation lines for nested spans (e.g., migration operations under 'apply')
9
- * - Respects quiet/json/non-TTY flags (no-op in those cases)
10
- */
11
- function createProgressAdapter(options) {
12
- const { ui, flags } = options;
13
- if (flags.quiet || flags.json || !ui.isInteractive) return () => {};
14
- const activeSpans = /* @__PURE__ */ new Map();
15
- return (event) => {
16
- if (event.kind === "spanStart") {
17
- if (event.parentSpanId) {
18
- ui.step(`${event.label}...`);
19
- return;
20
- }
21
- const spinner = ui.spinner();
22
- spinner.start(event.label);
23
- activeSpans.set(event.spanId, {
24
- spinner,
25
- startTime: Date.now(),
26
- label: event.label
27
- });
28
- } else if (event.kind === "spanEnd") {
29
- const spanState = activeSpans.get(event.spanId);
30
- if (spanState) {
31
- const elapsed = Date.now() - spanState.startTime;
32
- if (event.outcome === "error") spanState.spinner.error(`${spanState.label} (failed)`);
33
- else if (event.outcome === "skipped") spanState.spinner.stop(`${spanState.label} (skipped)`);
34
- else spanState.spinner.stop(`${spanState.label} (${elapsed}ms)`);
35
- activeSpans.delete(event.spanId);
36
- }
37
- }
38
- };
39
- }
40
- //#endregion
41
- export { createProgressAdapter as t };
42
-
43
- //# sourceMappingURL=progress-adapter-CjAeTxY_-BXYSd1eY.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"progress-adapter-CjAeTxY_-BXYSd1eY.mjs","names":[],"sources":["../../../../1-framework/3-tooling/cli/dist/progress-adapter-CjAeTxY_.mjs"],"sourcesContent":["//#region src/utils/progress-adapter.ts\n/**\n* Creates a progress adapter that converts control-api progress events\n* into CLI spinner/progress output on stderr.\n*\n* The adapter:\n* - Starts/succeeds spinners for top-level span boundaries\n* - Prints per-operation lines for nested spans (e.g., migration operations under 'apply')\n* - Respects quiet/json/non-TTY flags (no-op in those cases)\n*/\nfunction createProgressAdapter(options) {\n\tconst { ui, flags } = options;\n\tif (flags.quiet || flags.json || !ui.isInteractive) return () => {};\n\tconst activeSpans = /* @__PURE__ */ new Map();\n\treturn (event) => {\n\t\tif (event.kind === \"spanStart\") {\n\t\t\tif (event.parentSpanId) {\n\t\t\t\tui.step(`${event.label}...`);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst spinner = ui.spinner();\n\t\t\tspinner.start(event.label);\n\t\t\tactiveSpans.set(event.spanId, {\n\t\t\t\tspinner,\n\t\t\t\tstartTime: Date.now(),\n\t\t\t\tlabel: event.label\n\t\t\t});\n\t\t} else if (event.kind === \"spanEnd\") {\n\t\t\tconst spanState = activeSpans.get(event.spanId);\n\t\t\tif (spanState) {\n\t\t\t\tconst elapsed = Date.now() - spanState.startTime;\n\t\t\t\tif (event.outcome === \"error\") spanState.spinner.error(`${spanState.label} (failed)`);\n\t\t\t\telse if (event.outcome === \"skipped\") spanState.spinner.stop(`${spanState.label} (skipped)`);\n\t\t\t\telse spanState.spinner.stop(`${spanState.label} (${elapsed}ms)`);\n\t\t\t\tactiveSpans.delete(event.spanId);\n\t\t\t}\n\t\t}\n\t};\n}\n//#endregion\nexport { createProgressAdapter as t };\n\n//# sourceMappingURL=progress-adapter-CjAeTxY_.mjs.map"],"mappings":";;;;;;;;;;AAUA,SAAS,sBAAsB,SAAS;CACvC,MAAM,EAAE,IAAI,UAAU;CACtB,IAAI,MAAM,SAAS,MAAM,QAAQ,CAAC,GAAG,eAAe,aAAa,CAAC;CAClE,MAAM,8BAA8B,IAAI,IAAI;CAC5C,QAAQ,UAAU;EACjB,IAAI,MAAM,SAAS,aAAa;GAC/B,IAAI,MAAM,cAAc;IACvB,GAAG,KAAK,GAAG,MAAM,MAAM,IAAI;IAC3B;GACD;GACA,MAAM,UAAU,GAAG,QAAQ;GAC3B,QAAQ,MAAM,MAAM,KAAK;GACzB,YAAY,IAAI,MAAM,QAAQ;IAC7B;IACA,WAAW,KAAK,IAAI;IACpB,OAAO,MAAM;GACd,CAAC;EACF,OAAO,IAAI,MAAM,SAAS,WAAW;GACpC,MAAM,YAAY,YAAY,IAAI,MAAM,MAAM;GAC9C,IAAI,WAAW;IACd,MAAM,UAAU,KAAK,IAAI,IAAI,UAAU;IACvC,IAAI,MAAM,YAAY,SAAS,UAAU,QAAQ,MAAM,GAAG,UAAU,MAAM,UAAU;SAC/E,IAAI,MAAM,YAAY,WAAW,UAAU,QAAQ,KAAK,GAAG,UAAU,MAAM,WAAW;SACtF,UAAU,QAAQ,KAAK,GAAG,UAAU,MAAM,IAAI,QAAQ,IAAI;IAC/D,YAAY,OAAO,MAAM,MAAM;GAChC;EACD;CACD;AACD"}