@metabase/cli 0.5.2 → 0.5.4

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 (345) hide show
  1. package/README.md +1 -1
  2. package/dist/{add-collection-C0BQHjJd.mjs → add-collection-D2x34KVO.mjs} +3 -3
  3. package/dist/{alert-mXHOt00T.mjs → alert-B-w0c61D.mjs} +7 -7
  4. package/dist/{alerts-CyB1Z7AU.mjs → alerts-nnrpqD-U.mjs} +6 -6
  5. package/dist/api-key-9jVV67hF.mjs +38 -0
  6. package/dist/api-key-CTyXuYui.mjs +13 -0
  7. package/dist/api-key-DbsqHlN6.mjs +31 -0
  8. package/dist/{append-DeHhUAeY.mjs → append-BPrVW4RB.mjs} +4 -4
  9. package/dist/{archive-DRMXvkiI.mjs → archive-BYo35OGC.mjs} +5 -5
  10. package/dist/{archive-Bi-Sfq5T.mjs → archive-BZVRJYTT.mjs} +5 -5
  11. package/dist/{archive-CCKxZEuq.mjs → archive-Bw_cvk_4.mjs} +3 -3
  12. package/dist/{archive-qy0CFo1s2.mjs → archive-CJFUFozc.mjs} +5 -5
  13. package/dist/{archive-CfNLlebd.mjs → archive-CTZs6Hl6.mjs} +5 -5
  14. package/dist/{archive-CDSAXKKB.mjs → archive-Ccf6Qqrf.mjs} +3 -3
  15. package/dist/{archive-DfDqPgtk.mjs → archive-Cwetg5kK.mjs} +5 -5
  16. package/dist/{archive-CjVd1fJ5.mjs → archive-DBQnauVo.mjs} +5 -5
  17. package/dist/{archive-CpvpGZlz.mjs → archive-F5hoWW7f.mjs} +5 -5
  18. package/dist/{archive-DpgtAdEa.mjs → archive-OZQaaQkK.mjs} +5 -5
  19. package/dist/{archive-B1MA5MZp.mjs → archive-p7gGwh0n.mjs} +5 -5
  20. package/dist/{archive-HCVTRXI2.mjs → archive-tmrsG41w.mjs} +3 -3
  21. package/dist/{auth-_cdypXeX.mjs → auth-eogOlU4X.mjs} +5 -5
  22. package/dist/{branch-flag-CPTQ4wXp.mjs → branch-flag-BvIdNB5z.mjs} +1 -1
  23. package/dist/{branches-C7mNYAky.mjs → branches-CERgKqFq.mjs} +3 -3
  24. package/dist/{breaking-BindR3ZW.mjs → breaking-B8f_vl0i.mjs} +6 -6
  25. package/dist/{broken-SoXfkx7d.mjs → broken-mrkOdV4j.mjs} +8 -8
  26. package/dist/{bulk-discard-values-D_d5_1w5.mjs → bulk-discard-values-BQ3z6nJb.mjs} +5 -5
  27. package/dist/{bulk-edit-Cce05vb_.mjs → bulk-edit-CJxoxDGQ.mjs} +7 -7
  28. package/dist/{bulk-rescan-values-DIQN4VT_.mjs → bulk-rescan-values-DflzyxEj.mjs} +5 -5
  29. package/dist/{bulk-sync-schema-DLWf5dCl.mjs → bulk-sync-schema-CBIs4yHs.mjs} +5 -5
  30. package/dist/{cancel-rnd6UI-6.mjs → cancel-CyTRWSOr.mjs} +3 -3
  31. package/dist/{cancel-task-acq1GT6Z.mjs → cancel-task-BuZsQuLp.mjs} +2 -2
  32. package/dist/{card-QR3zEu6E.mjs → card-BJRZ5D5Q.mjs} +2 -2
  33. package/dist/card-DA1W3Axw.mjs +25 -0
  34. package/dist/{card-3NmUiU5F.mjs → card-VipF12MJ.mjs} +1 -1
  35. package/dist/{cards-DmzPtx81.mjs → cards-BEeFNiCt.mjs} +6 -6
  36. package/dist/cli.mjs +142 -292
  37. package/dist/{client-D-Aw6JLk.mjs → client-DvWllzKd.mjs} +401 -189
  38. package/dist/{collection-D5vt2IJ_.mjs → collection-Bf3lv-zo.mjs} +1 -1
  39. package/dist/collection-C98jgufi.mjs +21 -0
  40. package/dist/{collection-DNmFKALA.mjs → collection-Cz2qLX2m.mjs} +1 -1
  41. package/dist/{collection-namespace-Dl8_7xII.mjs → collection-namespace-C0JcSEwN.mjs} +2 -1
  42. package/dist/{content-translation-DxT1OMnP.mjs → content-translation-1coWME1P.mjs} +3 -3
  43. package/dist/{copy-BTdTiDQo.mjs → copy-DVe4rcLK.mjs} +6 -6
  44. package/dist/{copy-flags-CTM91pxH.mjs → copy-flags-DZ5Cy-Gk.mjs} +2 -2
  45. package/dist/{copy-CyFf3e2Y.mjs → copy-hE6SaHfb.mjs} +6 -6
  46. package/dist/{create-CuJJd7Rh.mjs → create-B3P62NaN.mjs} +4 -5
  47. package/dist/{create-BH6zpwKD.mjs → create-B3kz_fHg.mjs} +4 -5
  48. package/dist/{create-Dn8V5siS.mjs → create-BPRuU7Mv.mjs} +7 -8
  49. package/dist/{create-DeCPAYJi.mjs → create-BjH0i2BC.mjs} +9 -10
  50. package/dist/{create-Ch-NbeMr.mjs → create-Btwnm6D2.mjs} +9 -10
  51. package/dist/{create-Ce5YVusp.mjs → create-CCb2_Kcc.mjs} +6 -7
  52. package/dist/{create-DeiBnRRz.mjs → create-D271V9Cf.mjs} +9 -9
  53. package/dist/create-D6Xm2b2D.mjs +37 -0
  54. package/dist/{create-roJbQOmm.mjs → create-DCoo3sI2.mjs} +4 -4
  55. package/dist/{create-B6dABrs7.mjs → create-DEIIUohY2.mjs} +10 -11
  56. package/dist/{create-qtTB8rIE.mjs → create-DJg0Ohj5.mjs} +9 -10
  57. package/dist/{create-C3rabvE_.mjs → create-DR5tpMUA.mjs} +4 -5
  58. package/dist/{create-BwIOlpLc.mjs → create-DR8g_rEL.mjs} +6 -7
  59. package/dist/{create-GU8_GNbN.mjs → create-DXivfl69.mjs} +4 -5
  60. package/dist/create-DdfFgF-w.mjs +33 -0
  61. package/dist/{create-DsCydgm22.mjs → create-DkFCjBp3.mjs} +6 -7
  62. package/dist/{create-B3QZpifA.mjs → create-Dz4c8E33.mjs} +9 -10
  63. package/dist/{create-Bg3WTMMU.mjs → create-LpdQKxUt.mjs} +7 -7
  64. package/dist/{create-D6NLpIzV.mjs → create-XCzUuT42.mjs} +4 -5
  65. package/dist/{create-DiG165B2.mjs → create-XVjr8IDS.mjs} +6 -7
  66. package/dist/{create-branch-C4Ql9G2g.mjs → create-branch-D_nbKxDS.mjs} +3 -2
  67. package/dist/{csv-DmuyyLdz.mjs → csv-LP7sE-CS.mjs} +4 -4
  68. package/dist/{current-task-C2PPBVVv.mjs → current-task-DhgwtGN3.mjs} +3 -3
  69. package/dist/{dashboard-D5E3fMKh.mjs → dashboard-Bx2sYijR.mjs} +1 -1
  70. package/dist/dashboard-CR97_zXn.mjs +35 -0
  71. package/dist/{dashboard-Chjy5GKR.mjs → dashboard-Cwsf-e9T.mjs} +23 -6
  72. package/dist/data-action-C4jE-RLb.mjs +24 -0
  73. package/dist/{data-action-DZxVB_hD.mjs → data-action-CuvI17XF.mjs} +8 -2
  74. package/dist/{data-action-R9qxJDPA.mjs → data-action-DLj9cgpu.mjs} +1 -1
  75. package/dist/data-app-BUW-HlUo.mjs +52 -0
  76. package/dist/data-app-BlBvvRzC.mjs +41 -0
  77. package/dist/data-app-Blz61mG5.mjs +29 -0
  78. package/dist/data-app-project-DjDDWgUF.mjs +58 -0
  79. package/dist/{database-CxykzTAA.mjs → database-C5ucihp3.mjs} +2 -2
  80. package/dist/{database-D8XzgJEz.mjs → database-u_spHEa0.mjs} +1 -1
  81. package/dist/{dataset-DIQLAp2P.mjs → dataset-LJxNN6p5.mjs} +3 -3
  82. package/dist/{db-BgKKN1-4.mjs → db-D8mPRqZc.mjs} +8 -8
  83. package/dist/{delete-DiZg2wit.mjs → delete-8k7oYDFr.mjs} +4 -4
  84. package/dist/{delete-_XC6R-Jn.mjs → delete-B1SbEVIc.mjs} +4 -4
  85. package/dist/{delete-CS6hsBnd.mjs → delete-CaaPrNOf.mjs} +4 -4
  86. package/dist/{delete-5ZOvFr-7.mjs → delete-CqyBkMCd.mjs} +4 -4
  87. package/dist/{delete-DeqGTuwO.mjs → delete-CuyGTe0i.mjs} +4 -4
  88. package/dist/delete-DC-DEYSq.mjs +44 -0
  89. package/dist/{delete-B3aylPHD.mjs → delete-DWTqIlbr.mjs} +4 -4
  90. package/dist/delete-DaqzPLcG.mjs +40 -0
  91. package/dist/{delete-DtIbkF42.mjs → delete-DuaJ8PUI.mjs} +4 -4
  92. package/dist/{delete-CH32Ew4m.mjs → delete-ZjLpkwgx.mjs} +4 -4
  93. package/dist/delete-runtime-DOOy3gzH.mjs +73 -0
  94. package/dist/{delete-table-BEuMlqw1.mjs → delete-table-CnGv1gx9.mjs} +4 -4
  95. package/dist/{dependencies-DD48u9i3.mjs → dependencies-D6SNdLW8.mjs} +6 -6
  96. package/dist/dependency-Bbg9x1V9.mjs +15 -0
  97. package/dist/{dependency-CaC6XuTY.mjs → dependency-C1DExO6k.mjs} +8 -5
  98. package/dist/{dependency-Dxvb2Znu.mjs → dependency-DcM96XJ-.mjs} +4 -3
  99. package/dist/{dependents-ByfHs8pO.mjs → dependents-BizQb14Q.mjs} +9 -9
  100. package/dist/{dirty-DsrGfLit.mjs → dirty-BHwdHOEj.mjs} +3 -3
  101. package/dist/{discard-values-BfpwwC62.mjs → discard-values-BWlh2ce8.mjs} +5 -5
  102. package/dist/document-B6254tue.mjs +20 -0
  103. package/dist/{document-UMG6me2P.mjs → document-BHOQq2T_.mjs} +2 -2
  104. package/dist/{document-DVIu3Vj4.mjs → document-lS1XZEF3.mjs} +1 -1
  105. package/dist/{download-kpgGtfpw.mjs → download-D2wEAgi_.mjs} +2 -2
  106. package/dist/{eid-Tp-ACZ4O.mjs → eid-KtWIPUCC.mjs} +5 -5
  107. package/dist/{entity-DjDkaMkB.mjs → entity-DICgy4Bl.mjs} +2 -2
  108. package/dist/{entry-flags-nhBrUS6p.mjs → entry-flags-DLS6r8Vf.mjs} +5 -6
  109. package/dist/{events-Dm9-ofXu.mjs → events-B8yMqrrD.mjs} +4 -4
  110. package/dist/{execute-BL0dAlrp.mjs → execute-Bebvab7D.mjs} +7 -8
  111. package/dist/{export-CIW-dHft.mjs → export-BNj3RvAl.mjs} +6 -5
  112. package/dist/{export-flags-CpukgETM.mjs → export-flags-iXfEILf7.mjs} +3 -2
  113. package/dist/{export-preflight-BMlz3Hp9.mjs → export-preflight-F3OapAD5.mjs} +3 -3
  114. package/dist/{field-DoWQUl7V.mjs → field-C2qOViFZ.mjs} +8 -2
  115. package/dist/{field-BVz4AS3f.mjs → field-CT4r6b92.mjs} +1 -1
  116. package/dist/field-DQAcCjXr.mjs +21 -0
  117. package/dist/{fields-CcerFaiu.mjs → fields-BkAS_wIA.mjs} +6 -6
  118. package/dist/{filter-flags-DhE4olyf.mjs → filter-flags-ezqqsOQL.mjs} +4 -4
  119. package/dist/{fks-CYfBesHV.mjs → fks--SaqvPw1.mjs} +6 -6
  120. package/dist/{get-DKbGKa6F.mjs → get-B1S1kW2N.mjs} +5 -5
  121. package/dist/{get-Be7yjY9v.mjs → get-B1uiZyyi.mjs} +5 -5
  122. package/dist/{get-BaiyMem3.mjs → get-B2nBYYCw.mjs} +4 -4
  123. package/dist/{get-CmxYFUuR.mjs → get-BSKpQJVB.mjs} +5 -5
  124. package/dist/{get-BFloqjrN.mjs → get-BjgB5l7X.mjs} +5 -5
  125. package/dist/{get-RCDF-hEq.mjs → get-Boql3_0n.mjs} +5 -5
  126. package/dist/{get-CEJE9Rmp.mjs → get-BseHija1.mjs} +5 -5
  127. package/dist/{get-eNRULmE5.mjs → get-C9VumVZ3.mjs} +6 -5
  128. package/dist/{get--E7UvR-v.mjs → get-CGPxAoow.mjs} +3 -3
  129. package/dist/{get-HzDQViDP2.mjs → get-CM9IOr82.mjs} +3 -3
  130. package/dist/{get-CRfrkxqc.mjs → get-CTTKQDr7.mjs} +5 -5
  131. package/dist/{get-DHSuVxrH.mjs → get-CU1zKfBS.mjs} +5 -5
  132. package/dist/{get-Dp45rXRS.mjs → get-CWDz6eV2.mjs} +3 -3
  133. package/dist/{get-p2sZvp7v.mjs → get-C_hatP_z.mjs} +3 -3
  134. package/dist/get-Cdcj1c9U.mjs +28 -0
  135. package/dist/{get-BLnQ2aut.mjs → get-CiLYhFjU.mjs} +5 -5
  136. package/dist/{get-LRTRu85E.mjs → get-De6qpuzO.mjs} +5 -5
  137. package/dist/{get-CZgAr8rM.mjs → get-VpGfaL7c.mjs} +5 -5
  138. package/dist/{get-BvEHWLGL.mjs → get-f2km9wsq.mjs} +3 -3
  139. package/dist/{get-Cj3-w_Nu.mjs → get-gGSl7Se4.mjs} +5 -5
  140. package/dist/{get-B0RQPTV-2.mjs → get-iOs1ci6x.mjs} +5 -5
  141. package/dist/{get-run-C3AHKn3-.mjs → get-run-CHup8cMl.mjs} +5 -5
  142. package/dist/{get-DRhcS76J.mjs → get-uHs9Ve-4.mjs} +5 -5
  143. package/dist/git-sync-Czena0TW.mjs +29 -0
  144. package/dist/glossary-BVxRpD7o.mjs +14 -0
  145. package/dist/{glossary-BkGmCI4X.mjs → glossary-CQRW3Z4d.mjs} +1 -1
  146. package/dist/{glossary-QN-hHfOT.mjs → glossary-iPIWrEbP.mjs} +1 -1
  147. package/dist/{graph-BGOYocJc.mjs → graph-B7SlzpkC.mjs} +6 -6
  148. package/dist/{group-81zoQcEP.mjs → group--6adAsqG.mjs} +2 -2
  149. package/dist/{has-remote-changes-DxsRvZsw.mjs → has-remote-changes-DZq7q2Wk.mjs} +2 -2
  150. package/dist/{import-izn2_OsW.mjs → import-DKZF0kMU.mjs} +6 -5
  151. package/dist/input-gate-registry-Dh8QjKgW.mjs +14 -0
  152. package/dist/{is-dirty-DHYYRl6Y.mjs → is-dirty-haRLODo1.mjs} +2 -2
  153. package/dist/{items-mIoZBqUc.mjs → items-BGWE5hLl.mjs} +7 -6
  154. package/dist/{key-BYEv4Wgq.mjs → key-DLrpCgdZ.mjs} +1 -1
  155. package/dist/{library-wUiD2jbw.mjs → library-BprxuqZl.mjs} +1 -1
  156. package/dist/{library-DKIqzyUk.mjs → library-C4g9pdiS.mjs} +8 -3
  157. package/dist/{library-5I0TlXmf.mjs → library-e3aiJ1Yb.mjs} +5 -5
  158. package/dist/{list-BKhJfFyB.mjs → list-B9yhUzCc.mjs} +5 -5
  159. package/dist/{list-CpxEOoqw.mjs → list-BNel4hYs.mjs} +6 -6
  160. package/dist/{list-D8jiz8YP.mjs → list-Bbc8VYDi.mjs} +3 -3
  161. package/dist/{list-CT7AOXTS.mjs → list-BiIZdUoN.mjs} +5 -5
  162. package/dist/list-C-AnwSRP.mjs +33 -0
  163. package/dist/list-CNiCM1NL.mjs +29 -0
  164. package/dist/{list-DV4wojtv.mjs → list-COPGHkWL.mjs} +5 -5
  165. package/dist/{list-CTlIVHeG.mjs → list-CsXdnNyp.mjs} +5 -5
  166. package/dist/{list-DVnPzc5m.mjs → list-D0ASRA_6.mjs} +6 -6
  167. package/dist/{list-B6TYzXyW.mjs → list-DAa4EWlv.mjs} +5 -5
  168. package/dist/{list-CmOTwt_z.mjs → list-DDt1iLXj.mjs} +4 -4
  169. package/dist/{list-C6roDyBd.mjs → list-DFuydMdV.mjs} +6 -6
  170. package/dist/{list-C1dEh2yq.mjs → list-DFxfpa4W.mjs} +6 -6
  171. package/dist/{list-OWPg67JC.mjs → list-DJyIkrY1.mjs} +5 -5
  172. package/dist/{list-CuEPFHrk.mjs → list-DUCxqhtn.mjs} +5 -5
  173. package/dist/{list-B8FPpgct.mjs → list-D_8GeDG-.mjs} +3 -3
  174. package/dist/{list-NeImhwLD.mjs → list-DcXqKZyg.mjs} +5 -5
  175. package/dist/{list-C3CXHKTW.mjs → list-DednUvr3.mjs} +3 -3
  176. package/dist/{list-O_nmgwSj.mjs → list-Dvf1iB8r.mjs} +3 -3
  177. package/dist/{list-jT5ndEGr.mjs → list-HI7Mpoy-.mjs} +5 -5
  178. package/dist/{list-BEBAq1xc.mjs → list-OUSeeuXb.mjs} +5 -5
  179. package/dist/{list-BxIulkp3.mjs → list-P7FnSsbZ.mjs} +6 -6
  180. package/dist/{list-C-f-G-cC.mjs → list-gcDxZ7Th.mjs} +5 -5
  181. package/dist/{login-DOW1mr40.mjs → login-APHXId1p.mjs} +6 -5
  182. package/dist/{logout-BQ8wywf7.mjs → logout-V0pxj6AM.mjs} +3 -2
  183. package/dist/{measure-CtfjqJFP.mjs → measure-BMWrX1ca.mjs} +3 -1
  184. package/dist/{measure-Bz-bGn-Z.mjs → measure-DnGWkKyx.mjs} +6 -6
  185. package/dist/{measure-4P0bOlZ3.mjs → measure-DqZG65of.mjs} +1 -1
  186. package/dist/{notification-DaA4bBHW.mjs → notification-B5yMuPmo.mjs} +6 -1
  187. package/dist/{notification-W2SVssyY.mjs → notification-BEJaEZS2.mjs} +2 -2
  188. package/dist/{parameter-DvRQMKd2.mjs → parameter-Bucz3cLJ.mjs} +1 -1
  189. package/dist/{parameter-values-B7rr6fcy.mjs → parameter-values-DfZSEK3O.mjs} +6 -5
  190. package/dist/{parse-enum-DAcTzG1q.mjs → parse-enum-CEXPuN9H.mjs} +1 -1
  191. package/dist/{parse-id-5BZGQ9Vd.mjs → parse-id-EXZan40V.mjs} +1 -1
  192. package/dist/{parse-ref-ByXc-pls.mjs → parse-ref-D28NvwpR.mjs} +1 -1
  193. package/dist/{parse-text-FgX60vIg.mjs → parse-text-C4LYzIFa.mjs} +1 -1
  194. package/dist/{path-CHQguAPa.mjs → path-Bni-pnKS.mjs} +4 -4
  195. package/dist/{poll-CgtcJopL.mjs → poll-vxN__4cz.mjs} +2 -2
  196. package/dist/predicates-0C0TsWcJ.mjs +219 -0
  197. package/dist/{preflight-ChTKhB8Y.mjs → preflight-4iy2qzsh.mjs} +3 -2
  198. package/dist/{process-aqXm5QgC.mjs → process-BQC3mK2k.mjs} +1 -1
  199. package/dist/{publish-CaoFOucS.mjs → publish-DkYn86ak.mjs} +5 -4
  200. package/dist/{pulse-CC81N2_0.mjs → pulse-B2AmIWsO.mjs} +11 -4
  201. package/dist/{pulse-JPrq6NFP.mjs → pulse-CPSpum5U.mjs} +2 -2
  202. package/dist/{query-0u1WR1bV.mjs → query-CZbI4Rlv.mjs} +17 -29
  203. package/dist/{query-CzDBwAZD.mjs → query-gHeYfWj_.mjs} +7 -6
  204. package/dist/{remapping-CodmT28F.mjs → remapping-hcWkFQsx.mjs} +5 -5
  205. package/dist/{remove-collection-DfUsf6Dd.mjs → remove-collection-Qne5ww6M.mjs} +3 -3
  206. package/dist/{render-DP6UoZNT.mjs → render-d1-sCPn_.mjs} +3 -2
  207. package/dist/{replace-qWiUOgmn.mjs → replace-DoU0IFGd.mjs} +4 -4
  208. package/dist/{requirement-check-sfmyH2PH.mjs → requirement-check-BoVSK1uK.mjs} +2 -2
  209. package/dist/{rescan-values-BuDmeda3.mjs → rescan-values-COzM86P5.mjs} +5 -5
  210. package/dist/{rescan-values-BcrhdSj_.mjs → rescan-values-s82n_You.mjs} +5 -5
  211. package/dist/{run-BG_5lR0x.mjs → run-Bwj4Uuxk.mjs} +4 -4
  212. package/dist/{run-BBRnFayr.mjs → run-JYNbEO_V.mjs} +6 -5
  213. package/dist/{run-DXXD-CnS.mjs → run-Q7fHux1F.mjs} +5 -4
  214. package/dist/{runs-CovgMSwy.mjs → runs-GQD6FO2k.mjs} +6 -6
  215. package/dist/{runtime-Cmes70jO.mjs → runtime-iIsqiOwO.mjs} +51 -9
  216. package/dist/scaffold-CJo9l-2p.mjs +50 -0
  217. package/dist/schema-2JhmK8FM.mjs +283 -0
  218. package/dist/{schema-tables-CjKl8jr5.mjs → schema-tables-CarGLayY.mjs} +6 -6
  219. package/dist/{schemas-CAGvBAD_.mjs → schemas-oSjtuQ4G.mjs} +4 -4
  220. package/dist/{search-DFU6FHRd.mjs → search-Ca0sIr28.mjs} +7 -6
  221. package/dist/{search-OpYS2Ub4.mjs → search-CvGEL2h-.mjs} +6 -5
  222. package/dist/{segment-D-SKpFzF.mjs → segment-BJCEJwNY.mjs} +6 -6
  223. package/dist/{segment-C_gl5ag6.mjs → segment-CWVASaM1.mjs} +1 -1
  224. package/dist/{segment-OsrbUDzw.mjs → segment-Cf-DrdjE.mjs} +3 -1
  225. package/dist/{send-DNu83_3E.mjs → send-B4nZI6CU.mjs} +3 -3
  226. package/dist/{set-CGYZcLVo.mjs → set-BjMZCdN8.mjs} +5 -6
  227. package/dist/{set-active-32IaLx1O.mjs → set-active-CWDdv3kN.mjs} +4 -4
  228. package/dist/set-bundle-C2uk4jdt.mjs +40 -0
  229. package/dist/{set-data-actions-DRhgAfhE.mjs → set-data-actions-lWl05ekf.mjs} +6 -6
  230. package/dist/set-enabled-CPhw1AX4.mjs +41 -0
  231. package/dist/{set-sensitivity-D_i3XEe8.mjs → set-sensitivity-B7WI5BJC.mjs} +6 -6
  232. package/dist/{setting-BBn9Lv9J.mjs → setting-BvPpFjJT.mjs} +4 -4
  233. package/dist/{setup-CO7QV-ao.mjs → setup-BnczkG96.mjs} +1 -1
  234. package/dist/{setup-8d7Uplhy.mjs → setup-DPRa8Uxm.mjs} +5 -6
  235. package/dist/{signal-D8MH3LMN.mjs → signal-BNUlQjpc.mjs} +1 -1
  236. package/dist/{skill-list-D2FhhYS3.mjs → skill-list-BoJITnw8.mjs} +1 -1
  237. package/dist/{skills-BeIDC-_H.mjs → skills-BCivFuuZ.mjs} +3 -3
  238. package/dist/{skills-BZGd_9d3.mjs → skills-BY3MCR8i.mjs} +3 -2
  239. package/dist/slug-COdwq63O.mjs +15 -0
  240. package/dist/snippet-BcN1UwoS.mjs +19 -0
  241. package/dist/{stash-Dyc1xZ8u.mjs → stash-leoW1fby.mjs} +5 -4
  242. package/dist/{status-CQZwl1PX.mjs → status-AA4APlwZ.mjs} +3 -3
  243. package/dist/{status-lCN8unWe.mjs → status-BezD_K-g.mjs} +4 -4
  244. package/dist/{subscription-CEFxmtGH.mjs → subscription-BDukZFlC.mjs} +6 -6
  245. package/dist/{subscriptions-AU14uznL.mjs → subscriptions-CU4E_p7B.mjs} +6 -6
  246. package/dist/{summary-Do9IBOQM.mjs → summary-BFspP71W.mjs} +5 -5
  247. package/dist/{sync-schema-_gw9RQyF.mjs → sync-schema-BhRhsm8Y.mjs} +6 -6
  248. package/dist/{sync-schema-B3nyoKZl.mjs → sync-schema-BtjC-PNY.mjs} +5 -5
  249. package/dist/{sync-task-DNKG9Bk4.mjs → sync-task-Gf86CU9l.mjs} +1 -1
  250. package/dist/{table-BDsqRU7a.mjs → table-BNA9Or05.mjs} +3 -3
  251. package/dist/table-Dzp1uANs.mjs +26 -0
  252. package/dist/{table-CF7zW9cI.mjs → table-hgrX1i-R.mjs} +36 -5
  253. package/dist/{table-selector-flags-CHfrVpYQ.mjs → table-selector-flags-BpFFoSaT.mjs} +4 -3
  254. package/dist/{text-C2VwKF9D.mjs → text-8nOxfC17.mjs} +1 -1
  255. package/dist/timeline-Cr5d4Oer.mjs +21 -0
  256. package/dist/{timeline-event-B-nGnoVL.mjs → timeline-event-BiYDbW3r.mjs} +6 -6
  257. package/dist/{transform-DiW7bREn.mjs → transform-B62craFM.mjs} +76 -7
  258. package/dist/transform-C-0nV5Et.mjs +28 -0
  259. package/dist/{transform-CWGJB8N_.mjs → transform-DKPtUV54.mjs} +2 -2
  260. package/dist/transform-job-B9MPk7S5.mjs +22 -0
  261. package/dist/{transform-job-ClX8e5iO.mjs → transform-job-CDIb3B9o.mjs} +6 -1
  262. package/dist/{transform-job-BBZ5L46v.mjs → transform-job-D18XRLBK.mjs} +1 -1
  263. package/dist/{transform-tag-dKCqQPTd.mjs → transform-tag-DQXOPhmt.mjs} +5 -5
  264. package/dist/transform-test-wmAjyaka.mjs +16 -0
  265. package/dist/{transforms-DRAws1f4.mjs → transforms-DcXL4Dox.mjs} +6 -6
  266. package/dist/{transport-Ck4anhoc.mjs → transport-DZSxmmtY.mjs} +5 -4
  267. package/dist/{tree-Ddsj298M.mjs → tree-DrYYCdXP.mjs} +4 -3
  268. package/dist/typed-schema-DEzmTY3J.mjs +45 -0
  269. package/dist/{unpublish-BMfjQ8UV.mjs → unpublish-D8hmulCx.mjs} +3 -3
  270. package/dist/{unreferenced-DRQrvH5r.mjs → unreferenced-C3CqO3tu.mjs} +6 -6
  271. package/dist/{update-C1VwtJWu.mjs → update-3lRE8G9k.mjs} +10 -11
  272. package/dist/{update-BCC1Igr2.mjs → update-4TDRNrV-.mjs} +7 -8
  273. package/dist/{update-0AoF6QJ_.mjs → update-4sOfpwpv.mjs} +5 -6
  274. package/dist/{update-BQLTaw3z.mjs → update-552UGPAG.mjs} +7 -8
  275. package/dist/{update-DpP1EEC0.mjs → update-7iXRB23T2.mjs} +7 -8
  276. package/dist/{update-Bpsdi6kM.mjs → update-B21GAnzT.mjs} +7 -8
  277. package/dist/{update-6sfqiInZ.mjs → update-BVz0oIwS.mjs} +10 -11
  278. package/dist/{update-CGpiLu7N.mjs → update-BxRFktpB.mjs} +8 -9
  279. package/dist/{update-CnxzmPRG.mjs → update-CEDMvgJI.mjs} +11 -12
  280. package/dist/{update-BIL0JPqm.mjs → update-CcNYCalv.mjs} +5 -6
  281. package/dist/{update-DlFHoUxe.mjs → update-CctMr2T1.mjs} +8 -8
  282. package/dist/{update-DrT10fxQ.mjs → update-Ch6AAOeh.mjs} +5 -6
  283. package/dist/{update-_hHnM1Hx.mjs → update-CtuLA42g.mjs} +11 -11
  284. package/dist/{update-C19B1Sry.mjs → update-DVD77mVR.mjs} +5 -6
  285. package/dist/{update-C1x90FSH.mjs → update-DmMHHn75.mjs} +10 -11
  286. package/dist/{update-D1aKeWfo.mjs → update-DvGIaZdl.mjs} +5 -6
  287. package/dist/{update-BtfUX9CN.mjs → update-LlJM4tUd.mjs} +10 -11
  288. package/dist/{update-8eXJso_l.mjs → update-Zv7PP8nl.mjs} +7 -8
  289. package/dist/{update-dashcard-CDI0Tnxy.mjs → update-dashcard-BijqiYQd.mjs} +7 -8
  290. package/dist/{update-pXVhyiFo.mjs → update-l4WRN6Jh.mjs} +7 -8
  291. package/dist/update-sma1ZRm2.mjs +36 -0
  292. package/dist/{upgrade-Cfouv1Ii.mjs → upgrade-TzILOkiM.mjs} +5 -4
  293. package/dist/upload-B37bUVl_.mjs +13 -0
  294. package/dist/{upload-DnLXgUA-.mjs → upload-CdiDKe69.mjs} +2 -2
  295. package/dist/{upload-DIEcI5iM.mjs → upload-Do-kOGtc.mjs} +3 -3
  296. package/dist/{uuid-D0sH5txV.mjs → uuid-Dqq2WfAT.mjs} +3 -2
  297. package/dist/{validate-BQ7vI8_x.mjs → validate-moGYlHxB.mjs} +8 -18
  298. package/dist/validate-query-Bf5FhhMI.mjs +72 -0
  299. package/dist/{values-BFPO6y5o.mjs → values-CtY5zv0m.mjs} +5 -5
  300. package/dist/{verify-C-StvB4f.mjs → verify-BiB8jzXB.mjs} +3 -3
  301. package/dist/{verify-CuGs0X3C.mjs → verify-DBTlWx-S.mjs} +3 -3
  302. package/dist/{verify-7fW020r_.mjs → verify-DJ7fGyLL.mjs} +4 -3
  303. package/dist/{wait-Cvt8xO0h.mjs → wait-DEYagfq4.mjs} +5 -5
  304. package/dist/{wait-flags-BnZ-dfE2.mjs → wait-flags-C3cu_O0w.mjs} +2 -2
  305. package/dist/{window-CfK_j6m1.mjs → window-D1w7B0vh.mjs} +1 -1
  306. package/package.json +2 -2
  307. package/skill-data/core/SKILL.md +14 -13
  308. package/skill-data/data-action/SKILL.md +1 -1
  309. package/skill-data/data-app/SKILL.md +138 -0
  310. package/skill-data/data-app/template/.env.local.example +2 -0
  311. package/skill-data/data-app/template/LICENSE +21 -0
  312. package/skill-data/data-app/template/README.md +29 -0
  313. package/skill-data/data-app/template/gitignore +5 -0
  314. package/skill-data/data-app/template/package.json +25 -0
  315. package/skill-data/data-app/template/src/App.tsx +9 -0
  316. package/skill-data/data-app/template/src/index.tsx +14 -0
  317. package/skill-data/data-app/template/src/theme.ts +25 -0
  318. package/skill-data/data-app/template/tsconfig.json +25 -0
  319. package/skill-data/data-app/template/vite.config.ts +3 -0
  320. package/skill-data/data-app-actions/SKILL.md +96 -0
  321. package/skill-data/data-app-data/SKILL.md +158 -0
  322. package/skill-data/data-app-filters/SKILL.md +87 -0
  323. package/skill-data/data-app-ui/SKILL.md +120 -0
  324. package/skill-data/mbql/SKILL.md +3 -3
  325. package/skill-data/native-sql/SKILL.md +1 -1
  326. package/skill-data/native-sql/references/template-tags.md +1 -1
  327. package/dist/body-C0VnEiRV.mjs +0 -16
  328. package/dist/card-BnL92zoT.mjs +0 -25
  329. package/dist/collection-DRHGwFSL.mjs +0 -21
  330. package/dist/dashboard-Bq1pae4N.mjs +0 -35
  331. package/dist/data-action-BZ2PvlaP.mjs +0 -24
  332. package/dist/delete-runtime-DRGveT8H.mjs +0 -55
  333. package/dist/dependency-6kfpR8Ga.mjs +0 -15
  334. package/dist/document-C0mZEg5w.mjs +0 -20
  335. package/dist/field-BUkyWiWk.mjs +0 -21
  336. package/dist/git-sync-CNTB5jvI.mjs +0 -29
  337. package/dist/glossary-B9Eo4hXc.mjs +0 -14
  338. package/dist/snippet-CpZ5cJ_y.mjs +0 -19
  339. package/dist/table-Cb_Uvw8m.mjs +0 -26
  340. package/dist/timeline-x0s_3sfc.mjs +0 -21
  341. package/dist/transform-job-Dlx2c6II.mjs +0 -22
  342. package/dist/transform-kP11Mv9_.mjs +0 -28
  343. package/dist/transform-test-jFuzVhlT.mjs +0 -16
  344. package/dist/upload-Cqv-In6j.mjs +0 -13
  345. package/dist/validate-query-YtH3d5BP.mjs +0 -38
package/dist/cli.mjs CHANGED
@@ -1,206 +1,10 @@
1
1
  #!/usr/bin/env node
2
+ import { a as ChainedRequestError, b as toMetabaseError, g as errorMessage, h as ValidationError, i as AbortError, l as MetabaseError, o as ConfigError, r as isPlainObject, x as KNOWN_RANGE } from "./predicates-0C0TsWcJ.mjs";
2
3
  import { defineCommand, parseArgs, renderUsage, runMain } from "citty";
3
- import { ZodError, core, z } from "zod";
4
+ import { z } from "zod";
4
5
  import tls from "node:tls";
5
6
  import { confirm, isCancel, password, select, text } from "@clack/prompts";
6
7
  import Table from "cli-table3";
7
- //#region ../client/src/json-pointer.ts
8
- function escapeJsonPointerSegment(key) {
9
- if (typeof key === "number") return String(key);
10
- return (typeof key === "symbol" ? key.toString() : key).replaceAll("~", "~0").replaceAll("/", "~1");
11
- }
12
- //#endregion
13
- //#region ../client/src/version/known-range.ts
14
- const KNOWN_RANGE = {
15
- min: 58,
16
- max: 64
17
- };
18
- //#endregion
19
- //#region ../client/src/errors.ts
20
- var MetabaseError = class extends Error {
21
- get userMessage() {
22
- return this.message;
23
- }
24
- };
25
- var NetworkError = class extends MetabaseError {
26
- category = "network";
27
- isRetryable = true;
28
- developerDetail;
29
- constructor(message, developerDetail) {
30
- super(message);
31
- this.name = "NetworkError";
32
- this.developerDetail = developerDetail;
33
- }
34
- };
35
- var TimeoutError = class extends MetabaseError {
36
- category = "timeout";
37
- isRetryable = true;
38
- developerDetail;
39
- constructor(message, developerDetail) {
40
- super(message);
41
- this.name = "TimeoutError";
42
- this.developerDetail = developerDetail;
43
- }
44
- };
45
- var ValidationError = class extends MetabaseError {
46
- category = "validation";
47
- isRetryable = false;
48
- developerDetail;
49
- constructor(message, developerDetail) {
50
- super(message);
51
- this.name = "ValidationError";
52
- this.developerDetail = developerDetail;
53
- }
54
- get userMessage() {
55
- const issues = this.developerDetail.zodIssues;
56
- if (issues.length === 0) return this.message;
57
- return `${this.message}\n${formatIssueLines(issues, VALIDATION_ISSUE_FORMAT)}`;
58
- }
59
- };
60
- const VALIDATION_MAX_ISSUES = 10;
61
- const RESPONSE_SHAPE_MAX_ISSUES = 5;
62
- const VALIDATION_ISSUE_FORMAT = {
63
- max: VALIDATION_MAX_ISSUES,
64
- formatIssue: (issue) => `${formatZodIssuePointer(issue.path)}: ${issue.message}`
65
- };
66
- const RESPONSE_SHAPE_ISSUE_FORMAT = {
67
- max: RESPONSE_SHAPE_MAX_ISSUES,
68
- formatIssue: formatZodIssue
69
- };
70
- function formatIssueLines(issues, format) {
71
- const head = issues.slice(0, format.max).map(format.formatIssue);
72
- const overflow = issues.length - format.max;
73
- if (overflow > 0) head.push(`... and ${overflow} more`);
74
- return head.map((line) => ` ${line}`).join("\n");
75
- }
76
- function formatZodIssuePointer(path) {
77
- if (path.length === 0) return "/";
78
- return path.map((key) => `/${escapeJsonPointerSegment(key)}`).join("");
79
- }
80
- const RESPONSE_SHAPE_LEAD_UNKNOWN_VERSION = "Metabase returned unexpected response shape";
81
- var ResponseShapeError = class ResponseShapeError extends MetabaseError {
82
- category = "response-shape";
83
- isRetryable = false;
84
- developerDetail;
85
- constructor(message, developerDetail) {
86
- super(message);
87
- this.name = "ResponseShapeError";
88
- this.developerDetail = developerDetail;
89
- }
90
- static fromZodIssues(developerDetail) {
91
- return new ResponseShapeError(formatResponseShapeMessage(developerDetail), developerDetail);
92
- }
93
- };
94
- function formatResponseShapeMessage(detail) {
95
- const { zodIssues: issues, serverTag, serverSkew } = detail;
96
- const lead = serverTag === null ? RESPONSE_SHAPE_LEAD_UNKNOWN_VERSION : `On Metabase ${describeServer(serverTag, serverSkew)} the response shape was unexpected`;
97
- if (issues.length === 0) return lead;
98
- return `${lead}:\n${formatIssueLines(issues, RESPONSE_SHAPE_ISSUE_FORMAT)}`;
99
- }
100
- function describeServer(tag, skew) {
101
- if (skew === "newer-than-known") return `${tag} (newer than this client supports, up to v${KNOWN_RANGE.max})`;
102
- if (skew === "development") return `development build ${tag} (newer than every release)`;
103
- return tag;
104
- }
105
- var ConfigError = class extends MetabaseError {
106
- category = "config";
107
- isRetryable = false;
108
- developerDetail = null;
109
- constructor(message) {
110
- super(message);
111
- this.name = "ConfigError";
112
- }
113
- };
114
- var InternalError = class extends MetabaseError {
115
- category = "internal";
116
- isRetryable = false;
117
- developerDetail = null;
118
- constructor(message) {
119
- super(message);
120
- this.name = "InternalError";
121
- }
122
- };
123
- var FailedResultError = class extends MetabaseError {
124
- category = "failed";
125
- isRetryable = false;
126
- developerDetail = null;
127
- constructor(message) {
128
- super(message);
129
- this.name = "FailedResultError";
130
- }
131
- };
132
- var AbortError = class extends MetabaseError {
133
- category = "abort";
134
- isRetryable = false;
135
- developerDetail = null;
136
- constructor(message = "aborted") {
137
- super(message);
138
- this.name = "AbortError";
139
- }
140
- };
141
- function isNonInterruptFailure(error) {
142
- return error instanceof MetabaseError && !(error instanceof AbortError);
143
- }
144
- var ChainedRequestError = class extends MetabaseError {
145
- cause;
146
- constructor(message, cause) {
147
- super(message);
148
- this.name = "ChainedRequestError";
149
- this.cause = cause;
150
- }
151
- get category() {
152
- return this.cause.category;
153
- }
154
- get isRetryable() {
155
- return this.cause.isRetryable;
156
- }
157
- get developerDetail() {
158
- return this.cause.developerDetail;
159
- }
160
- };
161
- var UnknownError = class extends MetabaseError {
162
- category = "unknown";
163
- isRetryable = false;
164
- developerDetail;
165
- constructor(input) {
166
- super(input.originalMessage);
167
- this.name = "UnknownError";
168
- this.developerDetail = input;
169
- }
170
- };
171
- var PartialWriteError = class extends MetabaseError {
172
- category = "partial-write";
173
- isRetryable = false;
174
- developerDetail;
175
- constructor(message, developerDetail) {
176
- super(message);
177
- this.name = "PartialWriteError";
178
- this.developerDetail = developerDetail;
179
- }
180
- };
181
- function toMetabaseError(error) {
182
- if (error instanceof MetabaseError) return error;
183
- if (error instanceof ZodError) return new ConfigError(error.issues.map(formatZodIssue).join("; "));
184
- if (error instanceof Error) return new UnknownError({
185
- originalMessage: error.message,
186
- stack: error.stack ?? null
187
- });
188
- return new UnknownError({
189
- originalMessage: String(error),
190
- stack: null
191
- });
192
- }
193
- function formatZodIssue(issue) {
194
- const path = core.toDotPath(issue.path);
195
- return path === "" ? issue.message : `${path}: ${issue.message}`;
196
- }
197
- function isFileNotFoundError(value) {
198
- return value instanceof Error && "code" in value && value.code === "ENOENT";
199
- }
200
- function errorMessage(value) {
201
- return value instanceof Error ? value.message : String(value);
202
- }
203
- //#endregion
204
8
  //#region src/runtime/citty.ts
205
9
  async function resolveCitty(value) {
206
10
  if (value === void 0) return;
@@ -664,11 +468,12 @@ const profileFlag = { profile: {
664
468
  description: "Named profile (default: 'default')",
665
469
  alias: "p"
666
470
  } };
471
+ const urlFlag = { url: {
472
+ type: "string",
473
+ description: "Metabase URL"
474
+ } };
667
475
  const connectionFlags = {
668
- url: {
669
- type: "string",
670
- description: "Metabase URL"
671
- },
476
+ ...urlFlag,
672
477
  apiKey: {
673
478
  type: "string",
674
479
  description: "API key",
@@ -722,7 +527,7 @@ function trustSystemCa() {
722
527
  //#endregion
723
528
  //#region package.json
724
529
  var name = "@metabase/cli";
725
- var version = "0.5.2";
530
+ var version = "0.5.4";
726
531
  var description = "Metabase CLI";
727
532
  //#endregion
728
533
  //#region src/runtime/command-augment.ts
@@ -742,40 +547,43 @@ const main = defineCommand({
742
547
  description
743
548
  },
744
549
  subCommands: {
745
- auth: () => import("./auth-_cdypXeX.mjs").then((mod) => mod.default),
746
- db: () => import("./db-BgKKN1-4.mjs").then((mod) => mod.default),
747
- table: () => import("./table-Cb_Uvw8m.mjs").then((mod) => mod.default),
748
- field: () => import("./field-BUkyWiWk.mjs").then((mod) => mod.default),
749
- upload: () => import("./upload-Cqv-In6j.mjs").then((mod) => mod.default),
750
- "content-translation": () => import("./content-translation-DxT1OMnP.mjs").then((mod) => mod.default),
751
- card: () => import("./card-BnL92zoT.mjs").then((mod) => mod.default),
752
- dashboard: () => import("./dashboard-Bq1pae4N.mjs").then((mod) => mod.default),
753
- subscription: () => import("./subscription-CEFxmtGH.mjs").then((mod) => mod.default),
754
- "data-action": () => import("./data-action-BZ2PvlaP.mjs").then((mod) => mod.default),
755
- alert: () => import("./alert-mXHOt00T.mjs").then((mod) => mod.default),
756
- collection: () => import("./collection-DRHGwFSL.mjs").then((mod) => mod.default),
757
- library: () => import("./library-5I0TlXmf.mjs").then((mod) => mod.default),
758
- document: () => import("./document-C0mZEg5w.mjs").then((mod) => mod.default),
759
- glossary: () => import("./glossary-B9Eo4hXc.mjs").then((mod) => mod.default),
760
- transform: () => import("./transform-kP11Mv9_.mjs").then((mod) => mod.default),
761
- "transform-job": () => import("./transform-job-Dlx2c6II.mjs").then((mod) => mod.default),
762
- "transform-tag": () => import("./transform-tag-dKCqQPTd.mjs").then((mod) => mod.default),
763
- "transform-test": () => import("./transform-test-jFuzVhlT.mjs").then((mod) => mod.default),
764
- setting: () => import("./setting-BBn9Lv9J.mjs").then((mod) => mod.default),
765
- search: () => import("./search-OpYS2Ub4.mjs").then((mod) => mod.default),
766
- "git-sync": () => import("./git-sync-CNTB5jvI.mjs").then((mod) => mod.default),
767
- setup: () => import("./setup-8d7Uplhy.mjs").then((mod) => mod.default),
768
- snippet: () => import("./snippet-CpZ5cJ_y.mjs").then((mod) => mod.default),
769
- segment: () => import("./segment-D-SKpFzF.mjs").then((mod) => mod.default),
770
- measure: () => import("./measure-Bz-bGn-Z.mjs").then((mod) => mod.default),
771
- dependency: () => import("./dependency-6kfpR8Ga.mjs").then((mod) => mod.default),
772
- timeline: () => import("./timeline-x0s_3sfc.mjs").then((mod) => mod.default),
773
- "timeline-event": () => import("./timeline-event-B-nGnoVL.mjs").then((mod) => mod.default),
774
- eid: () => import("./eid-Tp-ACZ4O.mjs").then((mod) => mod.default),
775
- query: () => import("./query-0u1WR1bV.mjs").then((mod) => mod.default),
776
- uuid: () => import("./uuid-D0sH5txV.mjs").then((mod) => mod.default),
777
- upgrade: () => import("./upgrade-Cfouv1Ii.mjs").then((mod) => mod.default),
778
- skills: () => import("./skills-BeIDC-_H.mjs").then((mod) => mod.default)
550
+ auth: () => import("./auth-eogOlU4X.mjs").then((mod) => mod.default),
551
+ db: () => import("./db-D8mPRqZc.mjs").then((mod) => mod.default),
552
+ table: () => import("./table-Dzp1uANs.mjs").then((mod) => mod.default),
553
+ field: () => import("./field-DQAcCjXr.mjs").then((mod) => mod.default),
554
+ upload: () => import("./upload-B37bUVl_.mjs").then((mod) => mod.default),
555
+ "content-translation": () => import("./content-translation-1coWME1P.mjs").then((mod) => mod.default),
556
+ card: () => import("./card-DA1W3Axw.mjs").then((mod) => mod.default),
557
+ dashboard: () => import("./dashboard-CR97_zXn.mjs").then((mod) => mod.default),
558
+ subscription: () => import("./subscription-BDukZFlC.mjs").then((mod) => mod.default),
559
+ "data-action": () => import("./data-action-C4jE-RLb.mjs").then((mod) => mod.default),
560
+ "data-app": () => import("./data-app-BlBvvRzC.mjs").then((mod) => mod.default),
561
+ "api-key": () => import("./api-key-CTyXuYui.mjs").then((mod) => mod.default),
562
+ alert: () => import("./alert-B-w0c61D.mjs").then((mod) => mod.default),
563
+ collection: () => import("./collection-C98jgufi.mjs").then((mod) => mod.default),
564
+ library: () => import("./library-e3aiJ1Yb.mjs").then((mod) => mod.default),
565
+ document: () => import("./document-B6254tue.mjs").then((mod) => mod.default),
566
+ glossary: () => import("./glossary-BVxRpD7o.mjs").then((mod) => mod.default),
567
+ transform: () => import("./transform-C-0nV5Et.mjs").then((mod) => mod.default),
568
+ "transform-job": () => import("./transform-job-B9MPk7S5.mjs").then((mod) => mod.default),
569
+ "transform-tag": () => import("./transform-tag-DQXOPhmt.mjs").then((mod) => mod.default),
570
+ "transform-test": () => import("./transform-test-wmAjyaka.mjs").then((mod) => mod.default),
571
+ setting: () => import("./setting-BvPpFjJT.mjs").then((mod) => mod.default),
572
+ search: () => import("./search-CvGEL2h-.mjs").then((mod) => mod.default),
573
+ "git-sync": () => import("./git-sync-Czena0TW.mjs").then((mod) => mod.default),
574
+ setup: () => import("./setup-DPRa8Uxm.mjs").then((mod) => mod.default),
575
+ snippet: () => import("./snippet-BcN1UwoS.mjs").then((mod) => mod.default),
576
+ segment: () => import("./segment-BJCEJwNY.mjs").then((mod) => mod.default),
577
+ measure: () => import("./measure-DnGWkKyx.mjs").then((mod) => mod.default),
578
+ dependency: () => import("./dependency-Bbg9x1V9.mjs").then((mod) => mod.default),
579
+ timeline: () => import("./timeline-Cr5d4Oer.mjs").then((mod) => mod.default),
580
+ "timeline-event": () => import("./timeline-event-BiYDbW3r.mjs").then((mod) => mod.default),
581
+ eid: () => import("./eid-KtWIPUCC.mjs").then((mod) => mod.default),
582
+ query: () => import("./query-CZbI4Rlv.mjs").then((mod) => mod.default),
583
+ schema: () => import("./schema-2JhmK8FM.mjs").then((mod) => mod.default),
584
+ uuid: () => import("./uuid-Dqq2WfAT.mjs").then((mod) => mod.default),
585
+ upgrade: () => import("./upgrade-TzILOkiM.mjs").then((mod) => mod.default),
586
+ skills: () => import("./skills-BCivFuuZ.mjs").then((mod) => mod.default)
779
587
  }
780
588
  });
781
589
  setMetabaseAugment(main, {
@@ -788,7 +596,7 @@ setMetabaseAugment(main, {
788
596
  skill: "data-workflow",
789
597
  purpose: "guided end-to-end: raw data → clean tables → metrics → answers → dashboards"
790
598
  }],
791
- inputSchema: null,
599
+ input: null,
792
600
  outputSchema: null,
793
601
  requires: null
794
602
  });
@@ -835,23 +643,6 @@ function isJsonContentType(contentType) {
835
643
  return contentType !== null && contentType.includes("application/json");
836
644
  }
837
645
  //#endregion
838
- //#region ../client/src/predicates.ts
839
- function isPlainObject(value) {
840
- return typeof value === "object" && value !== null && !Array.isArray(value);
841
- }
842
- const JAVA_WHITESPACE = " \n\v\f\r            \u2028\u2029  ";
843
- const UNICODE_ESCAPE_DIGITS = 4;
844
- function unicodeEscape(char) {
845
- return `\\u${char.charCodeAt(0).toString(16).padStart(UNICODE_ESCAPE_DIGITS, "0")}`;
846
- }
847
- const JAVA_WHITESPACE_ESCAPED = [...JAVA_WHITESPACE].map(unicodeEscape).join("");
848
- /** Matches a string Metabase reads as not blank: one holding a character that is not Java whitespace. */
849
- const NOT_BLANK = new RegExp(`[^${JAVA_WHITESPACE_ESCAPED}]`);
850
- /** Whether Metabase reads `value` as blank: empty, or Java whitespace only. */
851
- function isBlank(value) {
852
- return !NOT_BLANK.test(value);
853
- }
854
- //#endregion
855
646
  //#region ../client/src/http/sanitize.ts
856
647
  const SECRET_HEADER_NAMES = /* @__PURE__ */ new Set([
857
648
  "authorization",
@@ -1167,14 +958,22 @@ function defaultMessageForStatus(status) {
1167
958
  const FEATURE_RULES = {
1168
959
  dataActionCollections: { since: 65 },
1169
960
  dataActionsWithoutModel: { since: 65 },
961
+ dataApps: {
962
+ since: 65,
963
+ tokenFeature: "data-apps"
964
+ },
1170
965
  transforms: { since: 59 },
1171
966
  transformJobActivation: { since: 61 },
1172
967
  measures: { since: 59 },
968
+ collectionItemMeasures: { since: 61 },
969
+ explorations: { since: 65 },
970
+ tableFromDefinition: { since: 64 },
1173
971
  library: {
1174
972
  since: 59,
1175
973
  tokenFeature: "library"
1176
974
  },
1177
975
  libraryDashboards: { since: 65 },
976
+ tablePublishTargetCollection: { since: 62 },
1178
977
  remoteSync: {
1179
978
  since: 58,
1180
979
  tokenFeature: "remote_sync"
@@ -1202,6 +1001,7 @@ const FEATURE_RULES = {
1202
1001
  tokenFeature: "content_verification"
1203
1002
  },
1204
1003
  transformTargetTableId: { since: 61 },
1004
+ transformSourceTablesAsList: { since: 60 },
1205
1005
  transformTargetTableLinkedOnCreate: {
1206
1006
  since: 61,
1207
1007
  until: 61
@@ -1242,6 +1042,7 @@ const FEATURE_RULES = {
1242
1042
  tokenFeature: "dependencies"
1243
1043
  },
1244
1044
  measureDependencyGraph: { since: 59 },
1045
+ actionDependencyGraph: { since: 65 },
1245
1046
  tableListAccessFilters: { since: 59 },
1246
1047
  tableListTransformTargets: { since: 60 },
1247
1048
  tableListPublishedFilter: { since: 63 },
@@ -1267,7 +1068,7 @@ const FEATURE_RULES = {
1267
1068
  tokenFeature: "transforms-python"
1268
1069
  },
1269
1070
  pythonTestRun: {
1270
- since: 60,
1071
+ since: 58,
1271
1072
  tokenFeature: "transforms-python"
1272
1073
  },
1273
1074
  sourceReplacement: {
@@ -1284,6 +1085,23 @@ function isFeatureName(name) {
1284
1085
  }
1285
1086
  const FEATURE_NAMES = Object.keys(FEATURE_RULES).filter(isFeatureName);
1286
1087
  const Features = z.record(z.enum(FEATURE_NAMES), z.boolean());
1088
+ /**
1089
+ * Which servers hold `feature`, as a reader says it: the majors its rule spans and the token
1090
+ * feature it needs, each left out where every supported server meets it.
1091
+ */
1092
+ function featureAvailability(feature) {
1093
+ const rule = FEATURE_RULES[feature];
1094
+ const token = rule.tokenFeature === void 0 ? null : `token ${rule.tokenFeature}`;
1095
+ const parts = [majorSpan(rule), token].filter((part) => part !== null);
1096
+ if (parts.length === 0) throw new Error(`${feature} holds on every supported server, so it gates nothing`);
1097
+ return parts.join(", ");
1098
+ }
1099
+ function majorSpan(rule) {
1100
+ const floor = rule.since > KNOWN_RANGE.min ? `v${rule.since}` : null;
1101
+ if (rule.until === void 0) return floor === null ? null : `${floor}+`;
1102
+ if (floor === null) return `up to v${rule.until}`;
1103
+ return rule.since === rule.until ? `${floor} only` : `${floor}-v${rule.until}`;
1104
+ }
1287
1105
  function evaluateFeatures(major, tokenFeatures) {
1288
1106
  const entries = FEATURE_NAMES.map((name) => [name, ruleHolds(FEATURE_RULES[name], major, tokenFeatures)]);
1289
1107
  return Features.parse(Object.fromEntries(entries));
@@ -1803,6 +1621,9 @@ function writeJsonError(handled, exitCode, verbose) {
1803
1621
  //#endregion
1804
1622
  //#region ../client/src/version/requirements.ts
1805
1623
  const METHOD_REQUIREMENTS = {
1624
+ "apiKey.list": [],
1625
+ "apiKey.create": [],
1626
+ "apiKey.delete": [],
1806
1627
  "card.list": [],
1807
1628
  "card.get": [],
1808
1629
  "card.create": [],
@@ -1837,6 +1658,13 @@ const METHOD_REQUIREMENTS = {
1837
1658
  "dataAction.archive": [],
1838
1659
  "dataAction.delete": [],
1839
1660
  "dataAction.execute": [],
1661
+ "dataApp.list": ["dataApps"],
1662
+ "dataApp.get": ["dataApps"],
1663
+ "dataApp.create": ["dataApps"],
1664
+ "dataApp.update": ["dataApps"],
1665
+ "dataApp.replaceBundle": ["dataApps"],
1666
+ "dataApp.typedSchema": ["dataApps"],
1667
+ "dataApp.delete": ["dataApps"],
1840
1668
  "database.list": [],
1841
1669
  "database.get": [],
1842
1670
  "database.update": [],
@@ -2053,8 +1881,6 @@ z.object({
2053
1881
  skills: z.array(CommandHelpSkill),
2054
1882
  examples: z.array(z.string()),
2055
1883
  args: z.array(CommandHelpArg),
2056
- inputSchema: z.unknown().nullable(),
2057
- outputSchema: z.unknown().nullable(),
2058
1884
  requires: CommandHelpRequires.nullable()
2059
1885
  });
2060
1886
  const CommandIndexEntry = z.object({
@@ -2070,7 +1896,7 @@ const EMPTY_AUGMENT = {
2070
1896
  examples: [],
2071
1897
  details: null,
2072
1898
  skills: [],
2073
- inputSchema: null,
1899
+ input: null,
2074
1900
  outputSchema: null,
2075
1901
  requires: null
2076
1902
  };
@@ -2084,8 +1910,6 @@ async function buildHelpEntry(cmd, path) {
2084
1910
  skills: Array.from(augment.skills),
2085
1911
  examples: Array.from(augment.examples),
2086
1912
  args: convertArgs(args),
2087
- inputSchema: augment.inputSchema ? z.toJSONSchema(augment.inputSchema) : null,
2088
- outputSchema: augment.outputSchema ? z.toJSONSchema(augment.outputSchema) : null,
2089
1913
  requires: augment.requires
2090
1914
  };
2091
1915
  if (augment.details !== null) entry.details = augment.details;
@@ -2100,6 +1924,37 @@ async function buildHelpIndex(cmd, path) {
2100
1924
  commands: await walk(cmd, path)
2101
1925
  };
2102
1926
  }
1927
+ async function resolveCommandPath(root, segments) {
1928
+ let current = root;
1929
+ for (const [index, segment] of segments.entries()) {
1930
+ const subCommands = await resolveCitty(current.subCommands);
1931
+ const match = subCommands === void 0 ? null : await findSubCommand(subCommands, segment);
1932
+ if (match === null) throw new ConfigError(`unknown command: ${segments.slice(0, index + 1).join(" ")}`);
1933
+ current = match.command;
1934
+ }
1935
+ return current;
1936
+ }
1937
+ async function findSubCommand(subCommands, token) {
1938
+ const direct = Object.hasOwn(subCommands, token) ? subCommands[token] : void 0;
1939
+ if (direct !== void 0) {
1940
+ const command = await resolveCitty(direct);
1941
+ if (command === void 0) return null;
1942
+ return {
1943
+ name: (await resolveCitty(command.meta))?.name ?? token,
1944
+ command
1945
+ };
1946
+ }
1947
+ for (const [key, loader] of Object.entries(subCommands)) {
1948
+ const command = await resolveCitty(loader);
1949
+ if (command === void 0) continue;
1950
+ const meta = await resolveCitty(command.meta);
1951
+ if (toAliasArray(meta?.alias).includes(token)) return {
1952
+ name: meta?.name ?? key,
1953
+ command
1954
+ };
1955
+ }
1956
+ return null;
1957
+ }
2103
1958
  async function walk(cmd, path) {
2104
1959
  const meta = await resolveCitty(cmd.meta);
2105
1960
  if (meta?.hidden === true) return [];
@@ -2152,12 +2007,11 @@ const OPTIONS_HEADER = "OPTIONS";
2152
2007
  const LINE_PREFIX = " ";
2153
2008
  const COLUMN_GAP = " ";
2154
2009
  const COMMAND_PLACEHOLDER = "<command> [options]";
2155
- const CLI_NAME = "mb";
2156
2010
  const HELP_FLAG_SPEC = "-h, --help";
2157
2011
  const HELP_FLAG_DESCRIPTION = "Show help for this command";
2158
- const GETTING_STARTED_HINT = `First time? Run \`${CLI_NAME} auth login\` to connect to a Metabase instance.`;
2012
+ const GETTING_STARTED_HINT = `First time? Run \`mb auth login\` to connect to a Metabase instance.`;
2159
2013
  const SKILLS_HEADER = "AGENT SKILLS";
2160
- const SKILLS_LIST_ITEM = `${CLI_NAME} skills list — every bundled skill`;
2014
+ const SKILLS_LIST_ITEM = `mb skills list — every bundled skill`;
2161
2015
  async function showUsage(cmd, parent, breadcrumb) {
2162
2016
  const lines = (await renderUsage(cmd, parent)).replace(ANSI_PATTERN, "").split("\n").map((line) => line.replace(TRAILING_WHITESPACE, ""));
2163
2017
  const cmdMeta = await resolveCitty(cmd.meta);
@@ -2178,7 +2032,14 @@ async function showUsage(cmd, parent, breadcrumb) {
2178
2032
  if (examples.length > 0) sections.push(renderExamples(examples));
2179
2033
  if (skills.length > 0) sections.push(renderSkillsSection(skills, isRoot));
2180
2034
  if (isRoot) sections.push(GETTING_STARTED_HINT);
2181
- sections.push(machineHelpHint(breadcrumb ?? cittyName, hasSubCommands));
2035
+ const schemas = {
2036
+ body: augment !== null && augment.input !== null,
2037
+ output: augment !== null && augment.outputSchema !== null
2038
+ };
2039
+ sections.push(machineHelpHint(breadcrumb ?? cittyName, {
2040
+ hasSubCommands,
2041
+ schemas
2042
+ }));
2182
2043
  await writeUsage(sections.join("\n\n") + "\n");
2183
2044
  }
2184
2045
  async function showUsageJson(cmd, breadcrumb) {
@@ -2193,12 +2054,22 @@ function writeUsage(text) {
2193
2054
  }
2194
2055
  function breadcrumbPath(breadcrumb) {
2195
2056
  const segments = breadcrumb.split(" ").filter((segment) => segment.length > 0);
2196
- return segments[0] === CLI_NAME ? segments.slice(1) : segments;
2057
+ return segments[0] === "mb" ? segments.slice(1) : segments;
2197
2058
  }
2198
- const MACHINE_HELP_LEAF_LABEL = "Machine-readable help (flags, output schema):";
2199
2059
  const MACHINE_HELP_INDEX_LABEL = "Machine-readable command index:";
2200
- function machineHelpHint(breadcrumb, hasSubCommands) {
2201
- return `${hasSubCommands ? MACHINE_HELP_INDEX_LABEL : MACHINE_HELP_LEAF_LABEL} ${breadcrumb} --help --json`;
2060
+ const MACHINE_HELP_LEAF_LABEL = "Machine-readable help (flags):";
2061
+ function machineHelpHint(breadcrumb, target) {
2062
+ if (target.hasSubCommands) return `${MACHINE_HELP_INDEX_LABEL} ${breadcrumb} --help --json`;
2063
+ const helpLine = `${MACHINE_HELP_LEAF_LABEL} ${breadcrumb} --help --json`;
2064
+ const schemaLine = schemaHint(breadcrumbPath(breadcrumb).join(" "), target.schemas);
2065
+ return schemaLine === null ? helpLine : `${helpLine}\n${schemaLine}`;
2066
+ }
2067
+ function schemaHint(command, schemas) {
2068
+ const schema = `mb schema ${command}`;
2069
+ if (schemas.body && schemas.output) return `Body and output schemas: ${schema} [--output]`;
2070
+ if (schemas.body) return `Body schema: ${schema}`;
2071
+ if (schemas.output) return `Output schema: ${schema} --output`;
2072
+ return null;
2202
2073
  }
2203
2074
  function transformBody(lines, rewrite) {
2204
2075
  return injectHelpOption(lines.map((line, index) => {
@@ -2314,7 +2185,7 @@ async function resolveLeafArgv(root, rawArgs) {
2314
2185
  }
2315
2186
  async function resolveBreadcrumb(root, rawArgs) {
2316
2187
  const { segments } = await walkCommandPath(root, rawArgs);
2317
- return segments.length > 0 ? segments.join(" ") : CLI_NAME;
2188
+ return segments.length > 0 ? segments.join(" ") : "mb";
2318
2189
  }
2319
2190
  async function findUnknownCommand(root, rawArgs) {
2320
2191
  return (await walkCommandPath(root, rawArgs)).unknownToken;
@@ -2326,27 +2197,6 @@ function skipFlags(rawArgs, start, argsDef) {
2326
2197
  }
2327
2198
  return rawArgs.length;
2328
2199
  }
2329
- async function findSubCommand(subCommands, token) {
2330
- const direct = subCommands[token];
2331
- if (direct !== void 0) {
2332
- const command = await resolveCitty(direct);
2333
- if (command === void 0) return null;
2334
- return {
2335
- name: (await resolveCitty(command.meta))?.name ?? token,
2336
- command
2337
- };
2338
- }
2339
- for (const [key, loader] of Object.entries(subCommands)) {
2340
- const command = await resolveCitty(loader);
2341
- if (command === void 0) continue;
2342
- const meta = await resolveCitty(command.meta);
2343
- if (toAliasArray(meta?.alias).includes(token)) return {
2344
- name: meta?.name ?? key,
2345
- command
2346
- };
2347
- }
2348
- return null;
2349
- }
2350
2200
  //#endregion
2351
2201
  //#region src/runtime/interrupt.ts
2352
2202
  const INTERRUPT_REASON = new AbortError("interrupted");
@@ -2442,4 +2292,4 @@ run().catch((error) => {
2442
2292
  reportError(error);
2443
2293
  });
2444
2294
  //#endregion
2445
- export { parseJsonResult as $, ENV_URL as A, UnknownError as At, Features as B, preflightUncheckedNotice as C, FailedResultError as Ct, ENV_PROFILE as D, PartialWriteError as Dt, ENV_DISABLE_KEYRING as E, NetworkError as Et, RequirementFailure as F, isNonInterruptFailure as Ft, chainRequestFailure as G, isFeatureName as H, missingTokenFeatureMessage as I, KNOWN_RANGE as It, isBlank as J, isRetryableStatus as K, versionTooOldMessage as L, escapeJsonPointerSegment as Lt, readEnv as M, errorMessage as Mt, ProfileRefreshedError as N, formatZodIssue as Nt, ENV_SKILLS_DIR as O, ResponseShapeError as Ot, CapabilityError as P, isFileNotFoundError as Pt, parseJsonOrPlain as Q, FEATURE_NAMES as R, preflightSkippedNotice as S, ConfigError as St, ENV_API_KEY as T, MetabaseError as Tt, ruleGap as U, evaluateFeatures as V, HttpError as W, JSON_CONTENT_TYPE as X, isPlainObject as Y, parseJson as Z, promptConfirm as _, givenFlagKeys as _t, renderItem as a, listFlag as at, promptText as b, parseEnumCsv as bt, renderSummary as c, outputFlags as ct, writeJson as d, resolveOutputFormat as dt, setMetabaseAugment as et, writeText as f, parseInteger as ft, projectForList as g, assertArgv as gt, renderRows as h, listEnvelopeSchemaWithExtras as ht, reportError as i, formatFlags as it, consumeLegacyEnvWarnings as j, ValidationError as jt, ENV_SKIP_PREFLIGHT as k, TimeoutError as kt, renderSummaryWithinMaxBytes as l, profileFlag as lt, formatScalar as m, listEnvelopeSchema as mt, isMethodKey as n, version as nt, renderList as o, listFlags as ot, MALFORMED_CELL as p, parseOptionalInteger as pt, NOT_BLANK as q, methodRequirements as r, connectionFlags as rt, renderListWithExtras as s, listFlagsWithDefaultLimit as st, interruptSignal as t, name as tt, serializeJson as u, resolveCommonFlags as ut, promptPassword as v, parseCsv as vt, warn as w, InternalError as wt, listTruncationNotice as x, AbortError as xt, promptSelect as y, parseEnum as yt, FEATURE_RULES as z };
2295
+ export { main as $, ENV_SKIP_PREFLIGHT as A, FEATURE_RULES as B, preflightSkippedNotice as C, resolveCitty as Ct, ENV_DISABLE_KEYRING as D, ENV_API_KEY as E, CapabilityError as F, ruleGap as G, evaluateFeatures as H, RequirementFailure as I, isRetryableStatus as J, HttpError as K, missingTokenFeatureMessage as L, consumeLegacyEnvWarnings as M, readEnv as N, ENV_PROFILE as O, ProfileRefreshedError as P, parseJsonResult as Q, versionTooOldMessage as R, listTruncationNotice as S, parseEnumCsv as St, warn as T, featureAvailability as U, Features as V, isFeatureName as W, parseJson as X, JSON_CONTENT_TYPE as Y, parseJsonOrPlain as Z, projectForList as _, listEnvelopeSchemaWithExtras as _t, reportError as a, formatFlags as at, promptSelect as b, parseCsv as bt, renderListWithExtras as c, listFlagsWithDefaultLimit as ct, serializeJson as d, urlFlag as dt, getMetabaseAugment as et, writeJson as f, resolveCommonFlags as ft, renderRows as g, listEnvelopeSchema as gt, formatScalar as h, parseOptionalInteger as ht, methodRequirements as i, connectionFlags as it, ENV_URL as j, ENV_SKILLS_DIR as k, renderSummary as l, outputFlags as lt, MALFORMED_CELL as m, parseInteger as mt, resolveCommandPath as n, name as nt, renderItem as o, listFlag as ot, writeText as p, resolveOutputFormat as pt, chainRequestFailure as q, isMethodKey as r, version as rt, renderList as s, listFlags as st, interruptSignal as t, setMetabaseAugment as tt, renderSummaryWithinMaxBytes as u, profileFlag as ut, promptConfirm as v, assertArgv as vt, preflightUncheckedNotice as w, promptText as x, parseEnum as xt, promptPassword as y, givenFlagKeys as yt, FEATURE_NAMES as z };