@metabase/cli 0.3.2-alpha.fix-transform-test-ee-path.8ac2a7a → 0.4.0

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 (305) hide show
  1. package/dist/{add-collection-B_-eMU_k.mjs → add-collection-CC6KSwjX.mjs} +5 -5
  2. package/dist/{alert-Dalin_DD.mjs → alert-Dt6La9tK.mjs} +7 -7
  3. package/dist/{alerts-DpBgrjPI.mjs → alerts-ClKnJqgB.mjs} +6 -6
  4. package/dist/{append-C1JNVALm.mjs → append-pnaQWP_A.mjs} +4 -4
  5. package/dist/{archive-B51prFgS.mjs → archive-By1pLYtO.mjs} +3 -3
  6. package/dist/{archive-CwITzj_j.mjs → archive-CLu2TGW5.mjs} +5 -5
  7. package/dist/{archive-52ZHbFDm2.mjs → archive-COP9joWU.mjs} +4 -4
  8. package/dist/{archive-cAdUa1-2.mjs → archive-CSnBFcQ_.mjs} +3 -3
  9. package/dist/{archive-DA3OiLEE.mjs → archive-Ct1eyolN.mjs} +3 -3
  10. package/dist/{archive-CdKf_Eqq.mjs → archive-D7nAQcCz.mjs} +3 -3
  11. package/dist/{archive-CISXgZAI.mjs → archive-DEDA48w3.mjs} +5 -5
  12. package/dist/{archive-DVHxeDKS.mjs → archive-DJAsSzCz.mjs} +5 -5
  13. package/dist/{archive-BkITQyWW.mjs → archive-DtabbPUk.mjs} +4 -4
  14. package/dist/{archive-DckxlWBt.mjs → archive-YNpa8daf.mjs} +3 -3
  15. package/dist/{archive-CicPYX27.mjs → archive-ewitrKdx.mjs} +5 -5
  16. package/dist/{auth-A96JOCQx.mjs → auth-DdLhXCn-.mjs} +5 -5
  17. package/dist/body-Dd-TwYYL.mjs +17 -0
  18. package/dist/branch-flag-pFQPNYKr.mjs +9 -0
  19. package/dist/{branches-CbcwWYL9.mjs → branches-ZvGNhed6.mjs} +3 -3
  20. package/dist/breaking-BLswgvkA.mjs +36 -0
  21. package/dist/broken-BN0nL2hf.mjs +37 -0
  22. package/dist/bulk-discard-values-DFJUjSnE.mjs +49 -0
  23. package/dist/bulk-edit-Brqr67bu.mjs +53 -0
  24. package/dist/bulk-rescan-values-DndXXi2N.mjs +28 -0
  25. package/dist/bulk-sync-schema-mO-t2QlL.mjs +28 -0
  26. package/dist/{cancel-DpDcVY7M.mjs → cancel-DP03dXBf.mjs} +3 -3
  27. package/dist/{cancel-task-B4RDvIYb.mjs → cancel-task-CELBfBPP.mjs} +4 -4
  28. package/dist/{card-voh1k4hl.mjs → card-Bv4ZN0oV.mjs} +5 -3
  29. package/dist/card-CFd-GUEM.mjs +25 -0
  30. package/dist/{card-CEkp1mcI.mjs → card-DSrgU7lT.mjs} +1 -1
  31. package/dist/{cards-BC0JX8Yg.mjs → cards-Cn2ywFTJ.mjs} +6 -6
  32. package/dist/cli.mjs +410 -111
  33. package/dist/{client-ClL6gf7G.mjs → client-ToLiPu9q.mjs} +785 -316
  34. package/dist/{collection-DYM0p3Xl.mjs → collection-BG3Ksea-.mjs} +1 -1
  35. package/dist/collection-BKNShKcY.mjs +21 -0
  36. package/dist/{collection-BxdPxD38.mjs → collection-D3KXhvnc.mjs} +7 -5
  37. package/dist/{collection-namespace-Dv0l-V9K.mjs → collection-namespace-CWW6hZxK.mjs} +2 -2
  38. package/dist/{content-translation-BXIXL4eW.mjs → content-translation-C19SqZWp.mjs} +3 -3
  39. package/dist/copy-BGK8Wz6d.mjs +55 -0
  40. package/dist/copy-COLUuiuF.mjs +36 -0
  41. package/dist/copy-flags-eU8aa0zj.mjs +32 -0
  42. package/dist/{create-BbjSOTN-.mjs → create-B2tuInV9.mjs} +4 -4
  43. package/dist/{create-Za1EskpV.mjs → create-B3TKri1E.mjs} +4 -4
  44. package/dist/{create--fiwuTWc.mjs → create-B4gXKDRr.mjs} +3 -3
  45. package/dist/create-B63JphYe.mjs +34 -0
  46. package/dist/{create-NCKHHdov.mjs → create-BH6kLjHS.mjs} +4 -4
  47. package/dist/{create-Dhai9zAt.mjs → create-BwifyhyL.mjs} +3 -3
  48. package/dist/{create-DWFJdyIr.mjs → create-Colz5bOO.mjs} +3 -3
  49. package/dist/{create-BcsVwXgS2.mjs → create-CulUZgN1.mjs} +4 -4
  50. package/dist/{create-D--Z1S3p2.mjs → create-Cxuqr3kT.mjs} +6 -6
  51. package/dist/{create-Bryrkb9g.mjs → create-CzW_UTE7.mjs} +6 -6
  52. package/dist/{create-kZIIEN2Y.mjs → create-DNR8RMvV.mjs} +6 -6
  53. package/dist/{create-DmN2gFc4.mjs → create-DSHeoV7e.mjs} +4 -4
  54. package/dist/{create-BVNhtAgF.mjs → create-DWbW2WSc.mjs} +6 -6
  55. package/dist/{create-CHr8MPPq.mjs → create-Dx8nfjGs.mjs} +3 -3
  56. package/dist/{create-B9qXQ_wV.mjs → create-XGomrTz5.mjs} +5 -5
  57. package/dist/{create-branch-CseVn3lp.mjs → create-branch-DxL7KUZp.mjs} +4 -4
  58. package/dist/{create-YetX69Re.mjs → create-g1f2yJ4s.mjs} +3 -3
  59. package/dist/{csv-DNzesu8y.mjs → csv-C6TEfLMi.mjs} +4 -4
  60. package/dist/{current-task-DRTKZcP9.mjs → current-task-CHs0zNFM.mjs} +4 -4
  61. package/dist/dashboard-AWrXqQ7a.mjs +35 -0
  62. package/dist/{dashboard-D0hwTC-f.mjs → dashboard-Phz3XpRM.mjs} +2 -1
  63. package/dist/{dashboard-DgK81azj.mjs → dashboard-XSTr9QCr.mjs} +6 -2
  64. package/dist/database-D-CRyRIv.mjs +45 -0
  65. package/dist/{database-C3E9PZSx.mjs → database-MlUPpitM.mjs} +1 -1
  66. package/dist/dataset-p5oNPQgL.mjs +66 -0
  67. package/dist/{db-BDijt81U.mjs → db-BFSeETMO.mjs} +7 -7
  68. package/dist/{delete-Dc8E5YwZ.mjs → delete-BUKgSJhh.mjs} +4 -4
  69. package/dist/{delete-BxjJ66BS.mjs → delete-CPBByycV.mjs} +4 -4
  70. package/dist/{delete-wFsy80db.mjs → delete-Cucqn4-V.mjs} +4 -4
  71. package/dist/{delete--15it-A8.mjs → delete-D79TlpcE.mjs} +4 -4
  72. package/dist/delete-DZJxBmdU.mjs +44 -0
  73. package/dist/{delete-BudvZkvK.mjs → delete-DndykJn2.mjs} +4 -4
  74. package/dist/delete-runtime-BbmRg_in.mjs +55 -0
  75. package/dist/{delete-table-5AQpn8OB.mjs → delete-table-CbsWcjh5.mjs} +4 -4
  76. package/dist/{dependencies-C1ogC3BV.mjs → dependencies-B-880phi.mjs} +5 -5
  77. package/dist/dependency-DBUJwXqv.mjs +15 -0
  78. package/dist/dependency-DKSjKT8P.mjs +165 -0
  79. package/dist/dependency-DSxKm9oS.mjs +111 -0
  80. package/dist/dependents-C_FDnpZs.mjs +52 -0
  81. package/dist/{dirty-CSLDYO-K.mjs → dirty-B-Is68--.mjs} +5 -5
  82. package/dist/discard-values-yzH-kIsr.mjs +55 -0
  83. package/dist/document-BRaba87v.mjs +20 -0
  84. package/dist/{document-CA0Q6lqu.mjs → document-C18b5rM6.mjs} +1 -1
  85. package/dist/{document-BHpLJbKU.mjs → document-DFCj1Az_.mjs} +2 -1
  86. package/dist/{download-Ddap1OAo.mjs → download-DluF-vnU.mjs} +2 -2
  87. package/dist/{eid-HnrWhPoe.mjs → eid-Dz-mP40j.mjs} +11 -10
  88. package/dist/entity-CA4zfRt4.mjs +20 -0
  89. package/dist/entry-flags-7x7bIyOQ.mjs +42 -0
  90. package/dist/{events-CXqetjcS.mjs → events-2sOk6H09.mjs} +4 -4
  91. package/dist/export-BKkAJOFb.mjs +74 -0
  92. package/dist/export-flags-NiZ7C3Gm.mjs +81 -0
  93. package/dist/export-preflight-CwJ_3-iX.mjs +35 -0
  94. package/dist/{field-CcN4oZy6.mjs → field-5nivEfd6.mjs} +33 -3
  95. package/dist/field-BARgq5I9.mjs +21 -0
  96. package/dist/field-wmN6raOG.mjs +128 -0
  97. package/dist/{fields-DxHxuxwO.mjs → fields-Bod0s_uV.mjs} +6 -6
  98. package/dist/filter-flags-BYcbB85j.mjs +71 -0
  99. package/dist/fks-IUw66K_Q.mjs +36 -0
  100. package/dist/{get-eJilYnHk.mjs → get-B8DUMrCw.mjs} +5 -5
  101. package/dist/{get-C3cuZNeW.mjs → get-BGqvoGQM.mjs} +3 -3
  102. package/dist/{get-DmKtPNOy.mjs → get-BSUsfysk.mjs} +3 -3
  103. package/dist/{get-DW7mCaGe.mjs → get-BXsLkoit.mjs} +5 -5
  104. package/dist/{get-Dtre5jzh.mjs → get-BXssHyJ1.mjs} +5 -5
  105. package/dist/get-Bct52yPw.mjs +36 -0
  106. package/dist/{get-BiPclcIP.mjs → get-Besqwy32.mjs} +3 -3
  107. package/dist/{get-BcoJ9Aha.mjs → get-BfSX-OeS.mjs} +3 -3
  108. package/dist/{get-BF2vdF3W.mjs → get-Biy4gOzu2.mjs} +3 -3
  109. package/dist/{get-C_tdSMwW2.mjs → get-CYIeiTZ9.mjs} +4 -4
  110. package/dist/{get-b0CoPz5B.mjs → get-CaEiQnSw.mjs} +4 -4
  111. package/dist/{get-CxUQyhte.mjs → get-Cl81y0Md.mjs} +5 -5
  112. package/dist/{get-B2pj2q3X.mjs → get-D1NjMXAH.mjs} +4 -4
  113. package/dist/{get-D_x-ENFe.mjs → get-D2cPuOPR.mjs} +5 -5
  114. package/dist/{get-DjlQhgD4.mjs → get-DITlshJH.mjs} +3 -3
  115. package/dist/{get-CE9_4Q7E.mjs → get-DLyg6Al9.mjs} +3 -3
  116. package/dist/{get-CDnmpfHQ.mjs → get-DQZfaVNq.mjs} +4 -4
  117. package/dist/{get-BGLvyOO3.mjs → get-DtBqoGTa.mjs} +5 -5
  118. package/dist/{get-H6kInHIx.mjs → get-_ik_5_lQ.mjs} +5 -5
  119. package/dist/{get-run-BE1HtJDW.mjs → get-run-CEc_tr5b.mjs} +4 -4
  120. package/dist/{git-sync-BwBRmEhE.mjs → git-sync-COokpYgc.mjs} +12 -3
  121. package/dist/git-sync-DKcaddkV.mjs +29 -0
  122. package/dist/git-sync-DspFahwV.mjs +165 -0
  123. package/dist/glossary-BlNCrYbw.mjs +30 -0
  124. package/dist/glossary-CWIX8Zh6.mjs +14 -0
  125. package/dist/glossary-LmZWwCNP.mjs +21 -0
  126. package/dist/graph-f6Bp1e8U.mjs +34 -0
  127. package/dist/{group-YQQ5GIcP.mjs → group-bpD_KcjA.mjs} +1 -1
  128. package/dist/{has-remote-changes-Cj1KhBOT.mjs → has-remote-changes-B8MmN6yh.mjs} +4 -4
  129. package/dist/{import-DLb9VN4l.mjs → import-Bhq15KgP.mjs} +19 -8
  130. package/dist/{input-D5tQEfqN.mjs → input-D8qW-KtR.mjs} +6 -2
  131. package/dist/{is-dirty-BxtgV2xF.mjs → is-dirty-CAsVuVx8.mjs} +2 -2
  132. package/dist/{items-DLUYc5-z.mjs → items-BZJomiDE.mjs} +8 -8
  133. package/dist/{key-PYetuQ13.mjs → key-BynJSK9u.mjs} +1 -1
  134. package/dist/{library-BNSxXOpc.mjs → library-B7wDH-Nc.mjs} +5 -5
  135. package/dist/{library-PGCfm0UA.mjs → library-BOv5SY24.mjs} +1 -1
  136. package/dist/{library-BPIzb3K_.mjs → library-Ck0EK5bi.mjs} +4 -2
  137. package/dist/{list-BUz6KOfw.mjs → list-B2uUl26x.mjs} +6 -6
  138. package/dist/{list-CERbeLbQ.mjs → list-B4luDSYj.mjs} +6 -6
  139. package/dist/{list-jhQSgh6i.mjs → list-B8ND9t2h.mjs} +3 -3
  140. package/dist/{list-M8J10Ozk.mjs → list-BT5t8ZOl.mjs} +4 -4
  141. package/dist/{list-Dat8QNcf.mjs → list-BT7xiUQe.mjs} +3 -3
  142. package/dist/{list-cIMww2Me.mjs → list-BWFCv_zk.mjs} +5 -5
  143. package/dist/{list-B1soS8QW.mjs → list-BtZVe1Nq.mjs} +6 -6
  144. package/dist/{list-C5mS_ehX.mjs → list-BwdSG-P5.mjs} +5 -5
  145. package/dist/{list-BQnOEB3W.mjs → list-C-A-2HFq.mjs} +3 -3
  146. package/dist/list-C9x--9Jq.mjs +101 -0
  147. package/dist/{list-CX9qZ-bx.mjs → list-CCdXig7b.mjs} +4 -4
  148. package/dist/{list-Sd7jGZoX.mjs → list-CJDFoOHb.mjs} +3 -3
  149. package/dist/{list-CzRzCbCY.mjs → list-CLFu3mQB.mjs} +3 -3
  150. package/dist/{list-CBLxhaNZ.mjs → list-Cd40Kr0R.mjs} +3 -3
  151. package/dist/{list-COLpwXW4.mjs → list-Cj_mTxbY.mjs} +4 -4
  152. package/dist/{list-CQbiSx26.mjs → list-CtS50R7m.mjs} +5 -5
  153. package/dist/{list-CehE6KBV.mjs → list-CvZyTwmV.mjs} +5 -5
  154. package/dist/list-DcnNlYQA.mjs +35 -0
  155. package/dist/{list-BcP1DTJH.mjs → list-DtgbtE3_.mjs} +3 -3
  156. package/dist/{login-BfLqBfCd.mjs → login-Bi_nGMJ9.mjs} +6 -6
  157. package/dist/{logout-BpRXB3Ze.mjs → logout-CiHQJWTu.mjs} +2 -2
  158. package/dist/{measure-Ds8O5Evr.mjs → measure-D2qq5e8f.mjs} +6 -6
  159. package/dist/moderation-review-BdqEH6N1.mjs +31 -0
  160. package/dist/{notification-DVrLkjFT.mjs → notification-DOYdl0ao.mjs} +1 -1
  161. package/dist/{parameter-values-DhrkLXoN.mjs → parameter-values-CZow98nb.mjs} +3 -3
  162. package/dist/{parse-enum-Dc0dMZ3P.mjs → parse-enum-CLIXMsd8.mjs} +1 -1
  163. package/dist/parse-id-BW09NysN.mjs +13 -0
  164. package/dist/{parse-ref-DTDld_LJ.mjs → parse-ref-Cw5fa4FI.mjs} +1 -1
  165. package/dist/parse-text-T0lTXzTZ.mjs +11 -0
  166. package/dist/{path-_GHFrTLx.mjs → path-K6LPLYPb.mjs} +4 -4
  167. package/dist/{poll-KLl4Eq8Y.mjs → poll-Dz4tUm2f.mjs} +2 -2
  168. package/dist/{preflight-BpYtF0IU.mjs → preflight-CX6cqB90.mjs} +3 -3
  169. package/dist/{process-CLtOWKBn.mjs → process-D0HdqZ3r.mjs} +1 -1
  170. package/dist/{publish-D-7Zlmuk.mjs → publish-COatW4Un.mjs} +4 -4
  171. package/dist/{pulse-x0gFxWfG.mjs → pulse-D1uh8UIU.mjs} +1 -1
  172. package/dist/query-BJXTIDhy.mjs +328 -0
  173. package/dist/{query-B1CZztxs.mjs → query-DmvkyDfo.mjs} +14 -33
  174. package/dist/remapping-CPAvDKHV.mjs +53 -0
  175. package/dist/{remove-collection-C4saCFxz.mjs → remove-collection-Bg-sNX3U.mjs} +5 -5
  176. package/dist/{render-6O_eF-P1.mjs → render-BSfDD6ip.mjs} +2 -2
  177. package/dist/{replace-BuR4f2Ai.mjs → replace-RCHeZLUT.mjs} +4 -4
  178. package/dist/{rescan-values-CNOiiWQ5.mjs → rescan-values-CpDGYZvf.mjs} +5 -5
  179. package/dist/rescan-values-PeMnpaFY.mjs +32 -0
  180. package/dist/{run-DijA_BXt.mjs → run-CaQ7kubO.mjs} +3 -3
  181. package/dist/{run-QEUbWNm7.mjs → run-DkRkZRgf.mjs} +7 -7
  182. package/dist/{runs-BSlhVeDO.mjs → runs-BDjoVJ0P.mjs} +5 -5
  183. package/dist/{runtime-Dtb93zKy.mjs → runtime-CZ5zh32z.mjs} +21 -82
  184. package/dist/{schema-tables-BE3rEb6I.mjs → schema-tables-C2qjLcPq.mjs} +6 -6
  185. package/dist/{schemas-yDjBiwlH.mjs → schemas-D8hfNduk.mjs} +4 -4
  186. package/dist/search-BrQQuNmh.mjs +131 -0
  187. package/dist/search-CnTXKJgx.mjs +85 -0
  188. package/dist/{segment-Cm6zQjJW.mjs → segment-Bi6eqj3e.mjs} +6 -6
  189. package/dist/{send-kC8oerkT.mjs → send-CAjgVNlA.mjs} +3 -3
  190. package/dist/{set-tFhPkxrL.mjs → set-BXTkYWid.mjs} +4 -4
  191. package/dist/{set-active-lDKhAlij.mjs → set-active-CBQVCePU.mjs} +3 -3
  192. package/dist/set-sensitivity-D39kGTob.mjs +57 -0
  193. package/dist/{setting-DrJXCaFE.mjs → setting-CPkvkc4H.mjs} +4 -4
  194. package/dist/{setup-BWY9M0iR.mjs → setup-Be3xDXHi.mjs} +3 -3
  195. package/dist/{signal-Csom0mt5.mjs → signal-CxWeLszu.mjs} +1 -1
  196. package/dist/{skill-list-CCes8pKe.mjs → skill-list-CBGq30sI.mjs} +2 -2
  197. package/dist/{skills-DE9ej5Rg.mjs → skills-CJ9eXouJ.mjs} +2 -2
  198. package/dist/{skills-DPRN2384.mjs → skills-DyiLycMY.mjs} +3 -3
  199. package/dist/snippet-QirK70R_.mjs +19 -0
  200. package/dist/{stash-C9oDvQ9P.mjs → stash-BVN3s5N_.mjs} +6 -6
  201. package/dist/{status-CkpujA26.mjs → status-BtbMmIWo.mjs} +7 -7
  202. package/dist/{status-DSdXmNC3.mjs → status-CxP6w3aL.mjs} +3 -3
  203. package/dist/{subscription-DKOKoHRG.mjs → subscription-Dr-YHARg.mjs} +6 -6
  204. package/dist/{subscriptions-C5SyJL4B.mjs → subscriptions-8tM8TTeQ.mjs} +6 -6
  205. package/dist/{summary-DTPgXsc0.mjs → summary-DKx6ptQe.mjs} +5 -5
  206. package/dist/sync-schema-B8RY0Ra4.mjs +32 -0
  207. package/dist/{sync-schema-DKKkNSR7.mjs → sync-schema-kNriXZjG.mjs} +6 -6
  208. package/dist/sync-task-CXFoqlpF.mjs +53 -0
  209. package/dist/table-CZnT6d9x.mjs +26 -0
  210. package/dist/{table-DfuY0N8e.mjs → table-Ci6bhZkb.mjs} +35 -12
  211. package/dist/table-CxvaDiIZ.mjs +155 -0
  212. package/dist/table-selector-flags-1bYkAKld.mjs +42 -0
  213. package/dist/text-DaNkPRwt.mjs +6 -0
  214. package/dist/timeline-CUzx6uXi.mjs +21 -0
  215. package/dist/{timeline-event-n4Lzet7l.mjs → timeline-event-DpNm4dkn.mjs} +6 -6
  216. package/dist/{transform-CtqB1WYo.mjs → transform-CNBIV7No.mjs} +1 -1
  217. package/dist/transform-g4-HHzDp.mjs +28 -0
  218. package/dist/transform-job-DqBtnTrG.mjs +22 -0
  219. package/dist/{transform-tag-D6NXqWaX.mjs → transform-tag-nTb0Ivpj.mjs} +5 -5
  220. package/dist/{transforms-O4NtXqFz.mjs → transforms-BSsAfwAg.mjs} +5 -5
  221. package/dist/tree-lMvw1jnZ.mjs +34 -0
  222. package/dist/{unpublish-DvWefKJi.mjs → unpublish-CYFDd828.mjs} +3 -3
  223. package/dist/unreferenced-8Xdq76Kw.mjs +36 -0
  224. package/dist/{update-AJ2JmwDl.mjs → update-6P_GYCLT.mjs} +5 -5
  225. package/dist/{update-76nzOc71.mjs → update-B28EJzrx.mjs} +13 -8
  226. package/dist/{update-To6A1Ugu.mjs → update-BDunZa7G.mjs} +4 -4
  227. package/dist/{update-2KIpYgyj.mjs → update-BT2yNB_g.mjs} +6 -6
  228. package/dist/{update-DmgRIp7o.mjs → update-BnMUSFYZ.mjs} +4 -4
  229. package/dist/update-BwrYeKso.mjs +41 -0
  230. package/dist/{update-DOdcflLH.mjs → update-C7DEMiu-.mjs} +7 -7
  231. package/dist/{update-CGJvIS-l.mjs → update-CITzAFG8.mjs} +4 -4
  232. package/dist/update-CLl8tE20.mjs +181 -0
  233. package/dist/{update-BB6Go_RX.mjs → update-CM5uuhjB.mjs} +4 -4
  234. package/dist/{update-xEegxIyH.mjs → update-CQXcsvaa.mjs} +5 -5
  235. package/dist/{update-DV54H3L5.mjs → update-Cs2zv_L2.mjs} +7 -7
  236. package/dist/{update-Bah7N8QX.mjs → update-D--Fw7-_.mjs} +5 -5
  237. package/dist/{update-H_fdjugs.mjs → update-D9p0N8ky.mjs} +4 -4
  238. package/dist/{update-7oKvP1HC.mjs → update-DAzRx0of.mjs} +5 -5
  239. package/dist/{update-DXmZuJho.mjs → update-D_DCOOAB.mjs} +6 -6
  240. package/dist/{update-D7dG7H-z.mjs → update-_sYM1GuU.mjs} +7 -7
  241. package/dist/{update-dashcard-DjT5QOkL.mjs → update-dashcard-VNnIqHDI.mjs} +6 -6
  242. package/dist/{upgrade-CuJx9fX4.mjs → upgrade-Tj_reACv.mjs} +4 -4
  243. package/dist/upload-BKxOpSz3.mjs +13 -0
  244. package/dist/{upload-DOO94rCQ.mjs → upload-C2fhpKkP.mjs} +2 -2
  245. package/dist/{upload-CboARPZm.mjs → upload-Dg91ldGg.mjs} +3 -3
  246. package/dist/{uuid-InwZlrpQ.mjs → uuid-Blpv_e0S.mjs} +2 -2
  247. package/dist/{validate-D6-Vg_kn.mjs → validate-D7e110oU.mjs} +1 -1
  248. package/dist/{validate-query-B90KYPQr.mjs → validate-query-C7LuKiUT.mjs} +2 -2
  249. package/dist/{values-CsZLk1Ls.mjs → values-PonkbYAK.mjs} +5 -5
  250. package/dist/verify-DixUBbd2.mjs +38 -0
  251. package/dist/verify-Dv7ER11c.mjs +38 -0
  252. package/dist/{verify-DrGjZwBM.mjs → verify-Mpb65a5v.mjs} +3 -3
  253. package/dist/verify-flags-CMpRkMPa.mjs +58 -0
  254. package/dist/{wait-BmzdarP9.mjs → wait-CaH6XHQV.mjs} +6 -6
  255. package/dist/{wait-flags-CiJGrTCT.mjs → wait-flags-rUU4NUrv.mjs} +2 -2
  256. package/dist/{window-DSb1tqSe.mjs → window-CI_QD04s.mjs} +1 -1
  257. package/package.json +1 -1
  258. package/skill-data/core/SKILL.md +24 -23
  259. package/skill-data/dashboard/SKILL.md +1 -1
  260. package/skill-data/document/SKILL.md +12 -1
  261. package/skill-data/git-sync/SKILL.md +61 -9
  262. package/skill-data/mbql/SKILL.md +5 -0
  263. package/skill-data/metadata/SKILL.md +36 -6
  264. package/skill-data/transform/SKILL.md +1 -63
  265. package/dist/body-CshgcV6U.mjs +0 -17
  266. package/dist/card-CefVYtF7.mjs +0 -24
  267. package/dist/collection-Be5AHVWP.mjs +0 -20
  268. package/dist/create-DiJ8bUb-.mjs +0 -34
  269. package/dist/dashboard-CMw13KXM.mjs +0 -33
  270. package/dist/database-JtHTqSpq.mjs +0 -26
  271. package/dist/delete-Bsdwqh7H.mjs +0 -44
  272. package/dist/delete-runtime-BKEzJn22.mjs +0 -49
  273. package/dist/document-BGzVip5_.mjs +0 -19
  274. package/dist/export-IFZdgYZ2.mjs +0 -63
  275. package/dist/field-BJ6HoLRd.mjs +0 -18
  276. package/dist/field-fDtIrY6D.mjs +0 -80
  277. package/dist/get-i0KInCw9.mjs +0 -32
  278. package/dist/get-jofVjU6e.mjs +0 -31
  279. package/dist/git-sync-TjX1r_wF.mjs +0 -136
  280. package/dist/git-sync-xKC1sqC4.mjs +0 -28
  281. package/dist/list-Cuhf2lKL.mjs +0 -35
  282. package/dist/list-D-SyhKFw.mjs +0 -34
  283. package/dist/parse-id-DtM6q9HU.mjs +0 -10
  284. package/dist/query-CxESKMve.mjs +0 -114
  285. package/dist/query-result-E4Q-Gra6.mjs +0 -15
  286. package/dist/run-FmRruANb.mjs +0 -64
  287. package/dist/search-CR_xNArA.mjs +0 -97
  288. package/dist/selectors-C-vgMcGK.mjs +0 -35
  289. package/dist/snippet-DWHTSo9c.mjs +0 -19
  290. package/dist/sync-task-BtDnTXCP.mjs +0 -38
  291. package/dist/table-C6h4tIRw.mjs +0 -37
  292. package/dist/table-I8NXSdUC.mjs +0 -18
  293. package/dist/timeline-B_ESH-6W.mjs +0 -21
  294. package/dist/transform-BNuNiH9d.mjs +0 -28
  295. package/dist/transform-job-B7yc6dfH.mjs +0 -22
  296. package/dist/transform-test-BjjCQ2xm.mjs +0 -169
  297. package/dist/transform-test-C1Oqtfb-.mjs +0 -16
  298. package/dist/transform-test-gzDcbypy.mjs +0 -25
  299. package/dist/transport-CyVo29u7.mjs +0 -313
  300. package/dist/tree-CuyF116R.mjs +0 -26
  301. package/dist/update-l3PyNQKG.mjs +0 -41
  302. package/dist/upload-2YFFBSln.mjs +0 -13
  303. package/skill-data/transform-test-plan/SKILL.md +0 -171
  304. package/skill-data/transform-test-plan/references/checklist.md +0 -81
  305. package/skill-data/transform-test-plan/references/checks.md +0 -263
@@ -1,4 +1,4 @@
1
- import { a as DatabaseSyncResult, n as DatabaseCompact } from "./database-JtHTqSpq.mjs";
1
+ import { a as DatabaseSyncResult, n as DatabaseCompact } from "./database-D-CRyRIv.mjs";
2
2
  //#region src/output/views/database.ts
3
3
  const databaseView = {
4
4
  compactPick: DatabaseCompact,
@@ -0,0 +1,66 @@
1
+ import { n as FieldBaseType, r as FieldCompact, s as FieldSemanticType, t as Field } from "./field-5nivEfd6.mjs";
2
+ import { m as TableQueryMetadataCompact, p as TableQueryMetadata } from "./table-Ci6bhZkb.mjs";
3
+ import { n as DatabaseCompact, o as DatabaseVirtualTable, s as DatabaseVirtualTableCompact, t as Database } from "./database-D-CRyRIv.mjs";
4
+ import { n as SnippetCompact, t as Snippet } from "./snippet-CyKAgIZl.mjs";
5
+ import { z } from "zod";
6
+ //#region ../client/src/domain/dataset.ts
7
+ const CompiledQuery = z.object({
8
+ query: z.union([z.string(), z.array(z.unknown())]),
9
+ params: z.array(z.unknown()).nullable().optional(),
10
+ collection: z.string().nullable().optional()
11
+ }).loose();
12
+ const CompiledQueryWireWithoutCollection = CompiledQuery.omit({ collection: true });
13
+ function withUnknownCollection(wire) {
14
+ return {
15
+ ...wire,
16
+ collection: null
17
+ };
18
+ }
19
+ /** The shape `POST /api/dataset/native` answers on a server with `features`, read as `CompiledQuery`. */
20
+ function compiledQuerySchema(features) {
21
+ return features.compiledQueryOmitsCollection ? CompiledQueryWireWithoutCollection.transform(withUnknownCollection) : CompiledQuery;
22
+ }
23
+ const CompiledQueryCompact = CompiledQuery.pick({
24
+ query: true,
25
+ params: true,
26
+ collection: true
27
+ }).strip();
28
+ const FieldRef = z.tuple([
29
+ z.literal("field"),
30
+ z.string(),
31
+ z.object({ "base-type": FieldBaseType }).loose()
32
+ ]);
33
+ const VirtualField = z.object({
34
+ id: z.union([z.number().int(), FieldRef]),
35
+ table_id: z.string(),
36
+ name: z.string(),
37
+ display_name: z.string(),
38
+ base_type: FieldBaseType,
39
+ semantic_type: FieldSemanticType.nullable(),
40
+ fk_target_field_id: z.number().int().nullable().optional()
41
+ }).loose();
42
+ const VirtualFieldCompact = VirtualField.pick({
43
+ id: true,
44
+ table_id: true,
45
+ name: true,
46
+ display_name: true,
47
+ base_type: true,
48
+ semantic_type: true,
49
+ fk_target_field_id: true
50
+ }).strip();
51
+ const VirtualTable = DatabaseVirtualTable.extend({ fields: z.array(VirtualField) });
52
+ const VirtualTableCompact = DatabaseVirtualTableCompact.extend({ fields: z.array(VirtualFieldCompact) });
53
+ const QueryMetadata = z.object({
54
+ databases: z.array(Database),
55
+ tables: z.array(z.union([TableQueryMetadata, VirtualTable])),
56
+ fields: z.array(Field),
57
+ snippets: z.array(Snippet)
58
+ }).loose();
59
+ const QueryMetadataCompact = z.object({
60
+ databases: z.array(DatabaseCompact),
61
+ tables: z.array(z.union([TableQueryMetadataCompact, VirtualTableCompact])),
62
+ fields: z.array(FieldCompact),
63
+ snippets: z.array(SnippetCompact)
64
+ });
65
+ //#endregion
66
+ export { VirtualTable as a, QueryMetadataCompact as i, CompiledQueryCompact as n, compiledQuerySchema as o, QueryMetadata as r, CompiledQuery as t };
@@ -1,4 +1,4 @@
1
- import { t as defineCommandGroup } from "./group-YQQ5GIcP.mjs";
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
2
  //#region src/commands/db/index.ts
3
3
  var db_default = defineCommandGroup({
4
4
  name: "db",
@@ -12,12 +12,12 @@ var db_default = defineCommandGroup({
12
12
  purpose: "model a raw database into clean tables"
13
13
  }],
14
14
  subCommands: {
15
- list: () => import("./list-CQbiSx26.mjs").then((m) => m.default),
16
- get: () => import("./get-eJilYnHk.mjs").then((m) => m.default),
17
- schemas: () => import("./schemas-yDjBiwlH.mjs").then((m) => m.default),
18
- "schema-tables": () => import("./schema-tables-BE3rEb6I.mjs").then((m) => m.default),
19
- "sync-schema": () => import("./sync-schema-DKKkNSR7.mjs").then((m) => m.default),
20
- "rescan-values": () => import("./rescan-values-CNOiiWQ5.mjs").then((m) => m.default)
15
+ list: () => import("./list-CtS50R7m.mjs").then((m) => m.default),
16
+ get: () => import("./get-B8DUMrCw.mjs").then((m) => m.default),
17
+ schemas: () => import("./schemas-D8hfNduk.mjs").then((m) => m.default),
18
+ "schema-tables": () => import("./schema-tables-C2qjLcPq.mjs").then((m) => m.default),
19
+ "sync-schema": () => import("./sync-schema-kNriXZjG.mjs").then((m) => m.default),
20
+ "rescan-values": () => import("./rescan-values-CpDGYZvf.mjs").then((m) => m.default)
21
21
  }
22
22
  });
23
23
  //#endregion
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/transform-job/delete.ts
6
6
  var delete_default = defineMetabaseCommand({
7
7
  meta: {
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/transform/delete.ts
6
6
  var delete_default = defineMetabaseCommand({
7
7
  meta: {
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/timeline/delete.ts
6
6
  var delete_default = defineMetabaseCommand({
7
7
  meta: {
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/timeline-event/delete.ts
6
6
  var delete_default = defineMetabaseCommand({
7
7
  meta: {
@@ -0,0 +1,44 @@
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
+ //#region src/commands/glossary/delete.ts
6
+ var delete_default = defineMetabaseCommand({
7
+ meta: {
8
+ name: "delete",
9
+ description: "Delete a glossary entry by id"
10
+ },
11
+ requires: ["glossary.delete"],
12
+ args: {
13
+ ...outputFlags,
14
+ ...profileFlag,
15
+ ...connectionFlags,
16
+ yes: {
17
+ type: "boolean",
18
+ description: "Skip confirmation",
19
+ default: false
20
+ },
21
+ id: {
22
+ type: "positional",
23
+ description: "Glossary entry id",
24
+ required: true
25
+ }
26
+ },
27
+ outputSchema: DeleteResult,
28
+ examples: ["mb glossary delete 3 --yes", "mb glossary delete 3"],
29
+ async run({ args, ctx, getClient }) {
30
+ const id = parseId(args.id);
31
+ const client = await getClient();
32
+ await confirmAndDelete({
33
+ id,
34
+ yes: args.yes,
35
+ promptMessage: `Delete glossary entry ${id}?`,
36
+ successMessage: `Deleted glossary entry ${id}.`,
37
+ abortMessage: `Aborted; glossary entry ${id} was not deleted.`,
38
+ deleteResource: () => client.glossary.delete(id),
39
+ ctx
40
+ });
41
+ }
42
+ });
43
+ //#endregion
44
+ export { delete_default as default };
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/transform-tag/delete.ts
6
6
  var delete_default = defineMetabaseCommand({
7
7
  meta: {
@@ -0,0 +1,55 @@
1
+ import { at as ConfigError, p as renderSummary, w as promptConfirm } from "./cli.mjs";
2
+ import { z } from "zod";
3
+ //#region src/commands/delete-runtime.ts
4
+ const DeleteResult = z.object({
5
+ deleted: z.boolean(),
6
+ aborted: z.boolean(),
7
+ id: z.number().int()
8
+ });
9
+ const deleteResultView = {
10
+ compactPick: DeleteResult,
11
+ tableColumns: [
12
+ {
13
+ key: "id",
14
+ label: "ID"
15
+ },
16
+ {
17
+ key: "deleted",
18
+ label: "Deleted"
19
+ },
20
+ {
21
+ key: "aborted",
22
+ label: "Aborted"
23
+ }
24
+ ]
25
+ };
26
+ async function confirmDestructive(args) {
27
+ if (args.yes) return true;
28
+ if (process.stdin.isTTY !== true) throw new ConfigError(`refusing to ${args.action} without confirmation — pass --yes to proceed non-interactively`);
29
+ return promptConfirm({
30
+ message: args.promptMessage,
31
+ initialValue: false
32
+ });
33
+ }
34
+ async function confirmAndDelete(args) {
35
+ if (!await confirmDestructive({
36
+ yes: args.yes,
37
+ action: `delete ${args.id}`,
38
+ promptMessage: args.promptMessage
39
+ })) {
40
+ renderSummary({
41
+ deleted: false,
42
+ aborted: true,
43
+ id: args.id
44
+ }, deleteResultView, args.abortMessage, args.ctx);
45
+ return;
46
+ }
47
+ await args.deleteResource();
48
+ renderSummary({
49
+ deleted: true,
50
+ aborted: false,
51
+ id: args.id
52
+ }, deleteResultView, args.successMessage, args.ctx);
53
+ }
54
+ //#endregion
55
+ export { confirmAndDelete as n, confirmDestructive as r, DeleteResult as t };
@@ -1,7 +1,7 @@
1
- import { H as outputFlags, U as profileFlag, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BKEzJn22.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as confirmAndDelete, t as DeleteResult } from "./delete-runtime-BbmRg_in.mjs";
5
5
  //#region src/commands/transform/delete-table.ts
6
6
  var delete_table_default = defineMetabaseCommand({
7
7
  meta: {
@@ -1,9 +1,9 @@
1
- import { B as listFlags, G as listEnvelopeSchema, H as outputFlags, U as profileFlag, d as renderList, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as windowList } from "./window-DSb1tqSe.mjs";
1
+ import { G as listFlags, H as connectionFlags, J as profileFlag, X as listEnvelopeSchema, d as renderList, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as windowList } from "./window-CI_QD04s.mjs";
5
5
  import { n as TransformCompact } from "./transform-DiW7bREn.mjs";
6
- import { n as transformView } from "./transform-CtqB1WYo.mjs";
6
+ import { n as transformView } from "./transform-CNBIV7No.mjs";
7
7
  //#region src/commands/transform/dependencies.ts
8
8
  const TransformDependenciesEnvelope = listEnvelopeSchema(TransformCompact);
9
9
  var dependencies_default = defineMetabaseCommand({
@@ -0,0 +1,15 @@
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
+ //#region src/commands/dependency/index.ts
3
+ var dependency_default = defineCommandGroup({
4
+ name: "dependency",
5
+ description: "Trace what Metabase content depends on and what depends on it",
6
+ subCommands: {
7
+ graph: () => import("./graph-f6Bp1e8U.mjs").then((m) => m.default),
8
+ dependents: () => import("./dependents-C_FDnpZs.mjs").then((m) => m.default),
9
+ broken: () => import("./broken-BN0nL2hf.mjs").then((m) => m.default),
10
+ unreferenced: () => import("./unreferenced-8Xdq76Kw.mjs").then((m) => m.default),
11
+ breaking: () => import("./breaking-BLswgvkA.mjs").then((m) => m.default)
12
+ }
13
+ });
14
+ //#endregion
15
+ export { dependency_default as default };
@@ -0,0 +1,165 @@
1
+ import { s as CardType } from "./card-Bv4ZN0oV.mjs";
2
+ import { i as CollectionAuthorityLevel, s as CollectionId } from "./collection-D3KXhvnc.mjs";
3
+ import { z } from "zod";
4
+ //#region ../client/src/domain/dependency.ts
5
+ const DependencyType = z.enum([
6
+ "table",
7
+ "card",
8
+ "snippet",
9
+ "transform",
10
+ "dashboard",
11
+ "document",
12
+ "sandbox",
13
+ "segment",
14
+ "measure"
15
+ ]);
16
+ const DependencyUsageType = z.enum([
17
+ "table",
18
+ "snippet",
19
+ "transform",
20
+ "dashboard",
21
+ "document",
22
+ "sandbox",
23
+ "segment",
24
+ "question",
25
+ "model",
26
+ "metric",
27
+ "measure"
28
+ ]);
29
+ const DependencyFindingErrorType = z.enum([
30
+ "missing-column",
31
+ "missing-table-alias",
32
+ "missing-table",
33
+ "missing-card",
34
+ "duplicate-column",
35
+ "syntax-error",
36
+ "validation-exception-error"
37
+ ]);
38
+ const DependencyErrorSourceType = z.enum([
39
+ "table",
40
+ "card",
41
+ "transform"
42
+ ]);
43
+ const DependentsSortColumn = z.enum([
44
+ "name",
45
+ "location",
46
+ "view-count"
47
+ ]);
48
+ const DependencyItemsSortColumn = z.enum([
49
+ "name",
50
+ "location",
51
+ "dependents-with-errors",
52
+ "dependents-errors"
53
+ ]);
54
+ const DependencyCollectionRef = z.object({
55
+ id: CollectionId,
56
+ name: z.string(),
57
+ authority_level: CollectionAuthorityLevel.nullable(),
58
+ is_personal: z.boolean().optional()
59
+ }).loose();
60
+ const DependencyContainerRef = z.object({
61
+ id: z.number().int(),
62
+ name: z.string()
63
+ }).loose();
64
+ const DependencyDatabaseRef = z.object({
65
+ id: z.number().int(),
66
+ name: z.string()
67
+ }).loose();
68
+ const DependencyTableRef = z.object({
69
+ id: z.number().int(),
70
+ name: z.string(),
71
+ display_name: z.string()
72
+ }).loose();
73
+ const DependencyEntityData = z.object({
74
+ name: z.string().nullable().optional(),
75
+ display_name: z.string().nullable().optional(),
76
+ description: z.string().nullable().optional(),
77
+ type: CardType.nullable().optional(),
78
+ display: z.string().nullable().optional(),
79
+ database_id: z.number().int().nullable().optional(),
80
+ db_id: z.number().int().nullable().optional(),
81
+ schema: z.string().nullable().optional(),
82
+ collection_id: CollectionId.nullable().optional(),
83
+ collection: DependencyCollectionRef.nullable().optional(),
84
+ dashboard_id: z.number().int().nullable().optional(),
85
+ dashboard: DependencyContainerRef.nullable().optional(),
86
+ document_id: z.number().int().nullable().optional(),
87
+ document: DependencyContainerRef.nullable().optional(),
88
+ db: DependencyDatabaseRef.nullable().optional(),
89
+ table_id: z.number().int().nullable().optional(),
90
+ table: DependencyTableRef.nullable().optional(),
91
+ view_count: z.number().int().nullable().optional()
92
+ }).loose();
93
+ const DependencyEntity = z.object({
94
+ id: z.number().int(),
95
+ type: DependencyType,
96
+ data: DependencyEntityData
97
+ }).loose();
98
+ const DependencyEntityDataCompact = DependencyEntityData.pick({
99
+ name: true,
100
+ display_name: true,
101
+ description: true,
102
+ type: true,
103
+ database_id: true,
104
+ db_id: true,
105
+ schema: true,
106
+ table_id: true,
107
+ collection_id: true,
108
+ dashboard_id: true,
109
+ document_id: true,
110
+ view_count: true
111
+ }).strip().extend({
112
+ db: DependencyDatabaseRef.pick({
113
+ id: true,
114
+ name: true
115
+ }).strip().nullable().optional(),
116
+ table: DependencyTableRef.pick({
117
+ id: true,
118
+ name: true,
119
+ display_name: true
120
+ }).strip().nullable().optional(),
121
+ collection: DependencyCollectionRef.pick({
122
+ id: true,
123
+ name: true,
124
+ authority_level: true,
125
+ is_personal: true
126
+ }).strip().nullable().optional(),
127
+ dashboard: DependencyContainerRef.pick({
128
+ id: true,
129
+ name: true
130
+ }).strip().nullable().optional(),
131
+ document: DependencyContainerRef.pick({
132
+ id: true,
133
+ name: true
134
+ }).strip().nullable().optional()
135
+ });
136
+ const DependencyEntityCompact = DependencyEntity.pick({
137
+ id: true,
138
+ type: true
139
+ }).strip().extend({ data: DependencyEntityDataCompact });
140
+ const DependencyNode = DependencyEntity.extend({ dependents_count: z.partialRecord(DependencyUsageType, z.number().int()).nullable() });
141
+ const DependencyNodeCompact = DependencyEntityCompact.extend({ dependents_count: DependencyNode.shape.dependents_count });
142
+ const DependencyFindingError = z.object({
143
+ id: z.number().int(),
144
+ analyzed_entity_type: DependencyType,
145
+ analyzed_entity_id: z.number().int(),
146
+ error_type: DependencyFindingErrorType,
147
+ error_detail: z.string().nullable().optional(),
148
+ source_entity_type: DependencyErrorSourceType.nullable().optional(),
149
+ source_entity_id: z.number().int().nullable().optional()
150
+ }).loose();
151
+ const BreakingSource = DependencyNode.extend({ dependents_errors: z.array(DependencyFindingError).nullable().optional() });
152
+ const BreakingSourceCompact = DependencyNodeCompact.extend({ dependents_errors: BreakingSource.shape.dependents_errors });
153
+ const DependencyEdge = z.object({
154
+ from_entity_type: DependencyType,
155
+ from_entity_id: z.number().int(),
156
+ to_entity_type: DependencyType,
157
+ to_entity_id: z.number().int()
158
+ }).loose();
159
+ const DependencyGraph = z.object({
160
+ nodes: z.array(DependencyNode),
161
+ edges: z.array(DependencyEdge)
162
+ }).loose();
163
+ const DependencyGraphCompact = DependencyGraph.pick({ edges: true }).strip().extend({ nodes: z.array(DependencyNodeCompact) });
164
+ //#endregion
165
+ export { DependencyEntityCompact as a, DependencyGraphCompact as c, DependencyNodeCompact as d, DependencyType as f, DependencyEntity as i, DependencyItemsSortColumn as l, BreakingSourceCompact as n, DependencyEntityData as o, DependentsSortColumn as p, DependencyEdge as r, DependencyGraph as s, BreakingSource as t, DependencyNode as u };
@@ -0,0 +1,111 @@
1
+ import { _ as MALFORMED_CELL, v as formatScalar } from "./cli.mjs";
2
+ import { a as DependencyEntityCompact, c as DependencyGraphCompact, d as DependencyNodeCompact, n as BreakingSourceCompact, o as DependencyEntityData, r as DependencyEdge } from "./dependency-DKSjKT8P.mjs";
3
+ import { z } from "zod";
4
+ //#region src/output/views/dependency.ts
5
+ const DependentsCount = DependencyNodeCompact.shape.dependents_count;
6
+ const DependentsErrors = BreakingSourceCompact.shape.dependents_errors;
7
+ const GraphNodes = z.array(DependencyNodeCompact);
8
+ const GraphEdges = z.array(DependencyEdge);
9
+ const GRAPH_ITEM_SEPARATOR = "; ";
10
+ function formatEntityName(value) {
11
+ const parsed = DependencyEntityData.safeParse(value);
12
+ if (!parsed.success) return MALFORMED_CELL;
13
+ return formatScalar(parsed.data.display_name ?? parsed.data.name);
14
+ }
15
+ function entityLocation({ type, data }) {
16
+ switch (type) {
17
+ case "card": return (data.dashboard ?? data.document ?? data.collection)?.name ?? null;
18
+ case "table": return data.db?.name ?? null;
19
+ case "segment":
20
+ case "measure": return data.table?.display_name ?? null;
21
+ case "snippet":
22
+ case "dashboard":
23
+ case "document": return data.collection?.name ?? null;
24
+ case "transform":
25
+ case "sandbox": return null;
26
+ }
27
+ }
28
+ function formatDependentsCount(value) {
29
+ const parsed = DependentsCount.safeParse(value);
30
+ if (!parsed.success) return MALFORMED_CELL;
31
+ if (parsed.data === null) return "";
32
+ return Object.entries(parsed.data).map(([usage, count]) => `${usage}: ${count}`).join(", ");
33
+ }
34
+ function formatDependentsErrors(value) {
35
+ const parsed = DependentsErrors.safeParse(value);
36
+ if (!parsed.success) return MALFORMED_CELL;
37
+ if (parsed.data === null || parsed.data === void 0) return "";
38
+ return parsed.data.map(formatFindingError).join("; ");
39
+ }
40
+ function formatFindingError(error) {
41
+ return `${error.analyzed_entity_type} ${error.analyzed_entity_id}: ${error.error_type}`;
42
+ }
43
+ function formatGraphNodes(value) {
44
+ const parsed = GraphNodes.safeParse(value);
45
+ if (!parsed.success) return MALFORMED_CELL;
46
+ return parsed.data.map((node) => `${node.type} ${node.id} ${formatEntityName(node.data)}`.trimEnd()).join(GRAPH_ITEM_SEPARATOR);
47
+ }
48
+ function formatGraphEdges(value) {
49
+ const parsed = GraphEdges.safeParse(value);
50
+ if (!parsed.success) return MALFORMED_CELL;
51
+ return parsed.data.map((edge) => `${edge.from_entity_type} ${edge.from_entity_id} -> ${edge.to_entity_type} ${edge.to_entity_id}`).join(GRAPH_ITEM_SEPARATOR);
52
+ }
53
+ const entityColumns = [
54
+ {
55
+ key: "id",
56
+ label: "ID"
57
+ },
58
+ {
59
+ key: "type",
60
+ label: "Type"
61
+ },
62
+ {
63
+ key: "data",
64
+ label: "Name",
65
+ format: formatEntityName
66
+ },
67
+ {
68
+ key: "data",
69
+ label: "Location",
70
+ value: entityLocation
71
+ }
72
+ ];
73
+ const dependentsCountColumn = {
74
+ key: "dependents_count",
75
+ label: "Dependents",
76
+ format: formatDependentsCount
77
+ };
78
+ const dependencyEntityView = {
79
+ compactPick: DependencyEntityCompact,
80
+ tableColumns: entityColumns
81
+ };
82
+ const dependencyNodeView = {
83
+ compactPick: DependencyNodeCompact,
84
+ tableColumns: [...entityColumns, dependentsCountColumn]
85
+ };
86
+ const breakingSourceView = {
87
+ compactPick: BreakingSourceCompact,
88
+ tableColumns: [
89
+ ...entityColumns,
90
+ dependentsCountColumn,
91
+ {
92
+ key: "dependents_errors",
93
+ label: "Errors",
94
+ format: formatDependentsErrors
95
+ }
96
+ ]
97
+ };
98
+ const dependencyGraphView = {
99
+ compactPick: DependencyGraphCompact,
100
+ tableColumns: [{
101
+ key: "nodes",
102
+ label: "Nodes",
103
+ format: formatGraphNodes
104
+ }, {
105
+ key: "edges",
106
+ label: "Edges",
107
+ format: formatGraphEdges
108
+ }]
109
+ };
110
+ //#endregion
111
+ export { dependencyNodeView as i, dependencyEntityView as n, dependencyGraphView as r, breakingSourceView as t };
@@ -0,0 +1,52 @@
1
+ import { G as listFlags, H as connectionFlags, J as profileFlag, X as listEnvelopeSchema, d as renderList, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { t as parseId } from "./parse-id-BW09NysN.mjs";
4
+ import { n as windowList } from "./window-CI_QD04s.mjs";
5
+ import { d as DependencyNodeCompact } from "./dependency-DKSjKT8P.mjs";
6
+ import { t as parseOptionalText } from "./parse-text-T0lTXzTZ.mjs";
7
+ import { i as dependencyNodeView } from "./dependency-DSxKm9oS.mjs";
8
+ import { i as readDependentFilters, r as queryFlag, t as dependentFilterFlags } from "./filter-flags-BYcbB85j.mjs";
9
+ import { n as parseDependencyType, t as entityArgs } from "./entity-CA4zfRt4.mjs";
10
+ //#region src/commands/dependency/dependents.ts
11
+ const DependencyDependentsListEnvelope = listEnvelopeSchema(DependencyNodeCompact);
12
+ var dependents_default = defineMetabaseCommand({
13
+ meta: {
14
+ name: "dependents",
15
+ description: "List the entities that depend directly on an entity"
16
+ },
17
+ details: "Each row is a dependent with its own `dependents_count` by kind, so a chain can be followed one hop at a time. `--broken` keeps only the dependents whose query analysis failed, whatever the cause, and each row's `dependents_count` then counts only its broken dependents. The server sorts and filters; the window is applied here.",
18
+ requires: ["dependency.dependents"],
19
+ args: {
20
+ ...outputFlags,
21
+ ...listFlags,
22
+ ...profileFlag,
23
+ ...connectionFlags,
24
+ ...entityArgs,
25
+ ...dependentFilterFlags,
26
+ ...queryFlag,
27
+ broken: {
28
+ type: "boolean",
29
+ description: "Only the dependents whose query analysis failed, whatever the cause"
30
+ }
31
+ },
32
+ outputSchema: DependencyDependentsListEnvelope,
33
+ examples: [
34
+ "mb dependency dependents table 12",
35
+ "mb dependency dependents card 1 --dependent-types card,dashboard --json",
36
+ "mb dependency dependents table 12 --broken --json",
37
+ "mb dependency dependents card 1 --sort-column view-count --sort-direction desc"
38
+ ],
39
+ async run({ args, ctx, getClient }) {
40
+ const type = parseDependencyType(args.type);
41
+ const id = parseId(args.id);
42
+ const filters = readDependentFilters(args);
43
+ const { data } = await (await getClient()).dependency.dependents(type, id, {
44
+ ...filters,
45
+ broken: args.broken ? true : void 0,
46
+ query: parseOptionalText(args.query, "--query")
47
+ });
48
+ renderList(windowList(data, ctx.range), dependencyNodeView, ctx);
49
+ }
50
+ });
51
+ //#endregion
52
+ export { dependents_default as default };
@@ -1,8 +1,8 @@
1
- import { B as listFlags, G as listEnvelopeSchema, H as outputFlags, U as profileFlag, d as renderList, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { n as windowList } from "./window-DSb1tqSe.mjs";
4
- import { r as SyncDirtyItemCompact } from "./git-sync-BwBRmEhE.mjs";
5
- import { n as syncDirtyItemView } from "./git-sync-TjX1r_wF.mjs";
1
+ import { G as listFlags, H as connectionFlags, J as profileFlag, X as listEnvelopeSchema, d as renderList, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-CZ5zh32z.mjs";
3
+ import { n as windowList } from "./window-CI_QD04s.mjs";
4
+ import { r as SyncDirtyItemCompact } from "./git-sync-COokpYgc.mjs";
5
+ import { r as syncDirtyItemView } from "./git-sync-DspFahwV.mjs";
6
6
  //#region src/commands/git-sync/dirty.ts
7
7
  const SyncDirtyListEnvelope = listEnvelopeSchema(SyncDirtyItemCompact);
8
8
  var dirty_default = defineMetabaseCommand({