@metabase/cli 0.3.2-alpha.fix-transform-test-ee-path.8ac2a7a → 0.4.0-alpha.release-65-integration-branch.31ca6bb

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 (318) hide show
  1. package/dist/{add-collection-B_-eMU_k.mjs → add-collection-B-Kczwcj.mjs} +5 -5
  2. package/dist/{alert-Dalin_DD.mjs → alert-Ne0ivd5m.mjs} +7 -7
  3. package/dist/{alerts-DpBgrjPI.mjs → alerts-Fakzg9iP.mjs} +6 -6
  4. package/dist/{append-C1JNVALm.mjs → append-DCDVqPmR.mjs} +4 -4
  5. package/dist/archive-55sDfnHf.mjs +32 -0
  6. package/dist/{archive-CdKf_Eqq.mjs → archive-BNJit8eD.mjs} +3 -3
  7. package/dist/{archive-DckxlWBt.mjs → archive-BbNqts-V.mjs} +3 -3
  8. package/dist/{archive-B51prFgS.mjs → archive-C93UR4Uc.mjs} +3 -3
  9. package/dist/{archive-CISXgZAI.mjs → archive-CGmvQht4.mjs} +5 -5
  10. package/dist/{archive-cAdUa1-2.mjs → archive-CL8wqAzm.mjs} +3 -3
  11. package/dist/{archive-DVHxeDKS.mjs → archive-CSdktxvW.mjs} +5 -5
  12. package/dist/{archive-CicPYX27.mjs → archive-CpCSY4RT.mjs} +5 -5
  13. package/dist/{archive-CwITzj_j.mjs → archive-DCCkQTjQ.mjs} +5 -5
  14. package/dist/{archive-BkITQyWW.mjs → archive-DCE087yD.mjs} +4 -4
  15. package/dist/{archive-DA3OiLEE.mjs → archive-DEef7eB8.mjs} +3 -3
  16. package/dist/{archive-52ZHbFDm2.mjs → archive-DIZu7o4C.mjs} +4 -4
  17. package/dist/{auth-A96JOCQx.mjs → auth-Bx4QQhqt.mjs} +5 -5
  18. package/dist/body-CB2eDFFb.mjs +17 -0
  19. package/dist/branch-flag-pFQPNYKr.mjs +9 -0
  20. package/dist/{branches-CbcwWYL9.mjs → branches-B6ilUG-7.mjs} +3 -3
  21. package/dist/breaking-Dg3-8yDF.mjs +36 -0
  22. package/dist/broken-BNBD4Eo3.mjs +37 -0
  23. package/dist/bulk-discard-values-DfKXuZpR.mjs +49 -0
  24. package/dist/bulk-edit-oUCfDQ_M.mjs +53 -0
  25. package/dist/bulk-rescan-values-B8pNlXUH.mjs +28 -0
  26. package/dist/bulk-sync-schema-tRp7jBJt.mjs +28 -0
  27. package/dist/{cancel-DpDcVY7M.mjs → cancel-Bl4BMkwI.mjs} +3 -3
  28. package/dist/{cancel-task-B4RDvIYb.mjs → cancel-task-CWWo7vLf.mjs} +4 -4
  29. package/dist/card-CQD4D8mw.mjs +25 -0
  30. package/dist/{card-CEkp1mcI.mjs → card-CQNUT9pm.mjs} +1 -1
  31. package/dist/{card-voh1k4hl.mjs → card-P5mBknsl.mjs} +3 -11
  32. package/dist/{cards-BC0JX8Yg.mjs → cards-BIUYdSIR.mjs} +6 -6
  33. package/dist/cli.mjs +420 -111
  34. package/dist/{client-ClL6gf7G.mjs → client-BHIFvEg2.mjs} +863 -316
  35. package/dist/{collection-DYM0p3Xl.mjs → collection-BG3Ksea-.mjs} +1 -1
  36. package/dist/collection-CuaTd10G.mjs +21 -0
  37. package/dist/{collection-BxdPxD38.mjs → collection-D3KXhvnc.mjs} +7 -5
  38. package/dist/{collection-namespace-Dv0l-V9K.mjs → collection-namespace-ZQePD67z.mjs} +2 -2
  39. package/dist/{content-translation-BXIXL4eW.mjs → content-translation-BRdNdAmn.mjs} +3 -3
  40. package/dist/copy-BMEaYmTb.mjs +55 -0
  41. package/dist/copy-CbDfVZRC.mjs +36 -0
  42. package/dist/copy-flags-anRhAvB5.mjs +32 -0
  43. package/dist/{create-Dhai9zAt.mjs → create-5cDaZcRL.mjs} +3 -3
  44. package/dist/{create-DWFJdyIr.mjs → create-BEN-2XFK.mjs} +3 -3
  45. package/dist/create-BJG630xB.mjs +48 -0
  46. package/dist/{create-NCKHHdov.mjs → create-BTQB1lqX.mjs} +4 -4
  47. package/dist/{create-kZIIEN2Y.mjs → create-C3TmU1Bi.mjs} +6 -6
  48. package/dist/create-C7O9tPL2.mjs +34 -0
  49. package/dist/{create-BVNhtAgF.mjs → create-C8hsOv_D.mjs} +6 -6
  50. package/dist/{create-D--Z1S3p2.mjs → create-CBSsW8Hm.mjs} +6 -6
  51. package/dist/{create-BcsVwXgS2.mjs → create-CG6WWY6k.mjs} +4 -4
  52. package/dist/{create--fiwuTWc.mjs → create-D2Shlb7t.mjs} +3 -3
  53. package/dist/{create-DmN2gFc4.mjs → create-DVEqry26.mjs} +4 -4
  54. package/dist/{create-YetX69Re.mjs → create-D_pNX7d0.mjs} +3 -3
  55. package/dist/{create-Za1EskpV.mjs → create-R0Q-nRlq.mjs} +4 -4
  56. package/dist/{create-Bryrkb9g.mjs → create-SqmOf6WQ.mjs} +6 -6
  57. package/dist/{create-branch-CseVn3lp.mjs → create-branch-Cb3CWojg.mjs} +4 -4
  58. package/dist/{create-BbjSOTN-.mjs → create-c2zR9y4J.mjs} +4 -4
  59. package/dist/{create-CHr8MPPq.mjs → create-xt4ff6fP.mjs} +3 -3
  60. package/dist/{create-B9qXQ_wV.mjs → create-zpJIRn9j.mjs} +5 -5
  61. package/dist/{csv-DNzesu8y.mjs → csv-CRNOhy4X.mjs} +4 -4
  62. package/dist/{current-task-DRTKZcP9.mjs → current-task-DFo1ZJ51.mjs} +4 -4
  63. package/dist/dashboard-D11YAa7I.mjs +35 -0
  64. package/dist/{dashboard-D0hwTC-f.mjs → dashboard-Phz3XpRM.mjs} +2 -1
  65. package/dist/{dashboard-DgK81azj.mjs → dashboard-XSTr9QCr.mjs} +6 -2
  66. package/dist/data-action-BiHjjVjc.mjs +24 -0
  67. package/dist/data-action-DZxVB_hD.mjs +85 -0
  68. package/dist/data-action-R9qxJDPA.mjs +40 -0
  69. package/dist/database-BT7DVgSr.mjs +45 -0
  70. package/dist/{database-C3E9PZSx.mjs → database-Kq2AL5jH.mjs} +1 -1
  71. package/dist/dataset-BmvCxGoE.mjs +66 -0
  72. package/dist/{db-BDijt81U.mjs → db-C8lj73Dz.mjs} +7 -7
  73. package/dist/delete-09O7BTNw.mjs +44 -0
  74. package/dist/{delete-wFsy80db.mjs → delete-CYgNpHl7.mjs} +4 -4
  75. package/dist/{delete-BudvZkvK.mjs → delete-D_ZNoYVv.mjs} +4 -4
  76. package/dist/{delete--15it-A8.mjs → delete-HWeQtc4M.mjs} +4 -4
  77. package/dist/delete-I4eFpsed.mjs +44 -0
  78. package/dist/{delete-Dc8E5YwZ.mjs → delete-My8TX-B2.mjs} +4 -4
  79. package/dist/{delete-BxjJ66BS.mjs → delete-qwdN0N7e.mjs} +4 -4
  80. package/dist/delete-runtime-BbmRg_in.mjs +55 -0
  81. package/dist/{delete-table-5AQpn8OB.mjs → delete-table-BCvjX7bh.mjs} +4 -4
  82. package/dist/{dependencies-C1ogC3BV.mjs → dependencies-BAE4YPXX.mjs} +5 -5
  83. package/dist/dependency-CIam7zmr.mjs +15 -0
  84. package/dist/dependency-DzLH3J8P.mjs +165 -0
  85. package/dist/dependency-zElFM-os.mjs +111 -0
  86. package/dist/dependents-Dv6tLdSs.mjs +52 -0
  87. package/dist/{dirty-CSLDYO-K.mjs → dirty-CZORg0i0.mjs} +5 -5
  88. package/dist/discard-values-DKnP-JHr.mjs +55 -0
  89. package/dist/{document-CA0Q6lqu.mjs → document-C18b5rM6.mjs} +1 -1
  90. package/dist/{document-BHpLJbKU.mjs → document-DFCj1Az_.mjs} +2 -1
  91. package/dist/document-uxz96Lah.mjs +20 -0
  92. package/dist/{download-Ddap1OAo.mjs → download-BImtTll0.mjs} +2 -2
  93. package/dist/{eid-HnrWhPoe.mjs → eid-D0FxhT9H.mjs} +11 -10
  94. package/dist/entity-DWp9WJbU.mjs +20 -0
  95. package/dist/entry-flags-3sDWwa90.mjs +42 -0
  96. package/dist/{events-CXqetjcS.mjs → events-BzCjVA3-.mjs} +4 -4
  97. package/dist/execute-BhHbkBqf.mjs +45 -0
  98. package/dist/export-CjqjDnaZ.mjs +74 -0
  99. package/dist/export-flags-BETJHNcw.mjs +81 -0
  100. package/dist/export-preflight-DzvIP6TB.mjs +35 -0
  101. package/dist/{field-CcN4oZy6.mjs → field-5nivEfd6.mjs} +33 -3
  102. package/dist/field-fBpiGiqr.mjs +21 -0
  103. package/dist/field-wmN6raOG.mjs +128 -0
  104. package/dist/{fields-DxHxuxwO.mjs → fields-C-au1eLO.mjs} +6 -6
  105. package/dist/filter-flags-BIFcA2TT.mjs +72 -0
  106. package/dist/fks-83QIm8xb.mjs +36 -0
  107. package/dist/{get-CDnmpfHQ.mjs → get-BMHbEGbr.mjs} +4 -4
  108. package/dist/{get-BiPclcIP.mjs → get-BTCOzSkl.mjs} +3 -3
  109. package/dist/{get-DmKtPNOy.mjs → get-BawLhSwW.mjs} +3 -3
  110. package/dist/{get-BcoJ9Aha.mjs → get-BjqqFG2m.mjs} +3 -3
  111. package/dist/{get-C3cuZNeW.mjs → get-C-R_Fdsi.mjs} +3 -3
  112. package/dist/{get-H6kInHIx.mjs → get-C73V2KsB.mjs} +5 -5
  113. package/dist/{get-BGLvyOO3.mjs → get-C9sq2boy.mjs} +5 -5
  114. package/dist/{get-B2pj2q3X.mjs → get-Cggv6yLC.mjs} +4 -4
  115. package/dist/{get-CxUQyhte.mjs → get-CkXc0Xld.mjs} +5 -5
  116. package/dist/{get-BF2vdF3W.mjs → get-CqNEVAX_2.mjs} +3 -3
  117. package/dist/{get-Dtre5jzh.mjs → get-D7h7uH4k.mjs} +5 -5
  118. package/dist/get-DGmE5fmp.mjs +31 -0
  119. package/dist/{get-D_x-ENFe.mjs → get-DTTsPd-c.mjs} +5 -5
  120. package/dist/{get-DW7mCaGe.mjs → get-DXBXhPrU.mjs} +5 -5
  121. package/dist/{get-CE9_4Q7E.mjs → get-D_v1IAL1.mjs} +3 -3
  122. package/dist/{get-eJilYnHk.mjs → get-DkzO3G5p.mjs} +5 -5
  123. package/dist/{get-DjlQhgD4.mjs → get-Dvr_69L7.mjs} +3 -3
  124. package/dist/get-NOMvMvYJ.mjs +36 -0
  125. package/dist/{get-C_tdSMwW2.mjs → get-YPDWhgm_2.mjs} +4 -4
  126. package/dist/{get-b0CoPz5B.mjs → get-Z36_0HX_.mjs} +4 -4
  127. package/dist/{get-run-BE1HtJDW.mjs → get-run-v1QHn-Mx.mjs} +4 -4
  128. package/dist/{git-sync-BwBRmEhE.mjs → git-sync-COokpYgc.mjs} +12 -3
  129. package/dist/git-sync-DspFahwV.mjs +165 -0
  130. package/dist/git-sync-VAqASCQ5.mjs +29 -0
  131. package/dist/glossary-BlNCrYbw.mjs +30 -0
  132. package/dist/glossary-Brnk2PBi.mjs +14 -0
  133. package/dist/glossary-LmZWwCNP.mjs +21 -0
  134. package/dist/graph-B6OliqnW.mjs +34 -0
  135. package/dist/{group-YQQ5GIcP.mjs → group-bpD_KcjA.mjs} +1 -1
  136. package/dist/{has-remote-changes-Cj1KhBOT.mjs → has-remote-changes-iTRCU9j0.mjs} +4 -4
  137. package/dist/{import-DLb9VN4l.mjs → import-CdSs5CtT.mjs} +19 -8
  138. package/dist/{input-D5tQEfqN.mjs → input-D8qW-KtR.mjs} +6 -2
  139. package/dist/{is-dirty-BxtgV2xF.mjs → is-dirty-B5fj9NeS.mjs} +2 -2
  140. package/dist/{items-DLUYc5-z.mjs → items-BxWnNEh7.mjs} +8 -8
  141. package/dist/{key-PYetuQ13.mjs → key-BynJSK9u.mjs} +1 -1
  142. package/dist/{library-BNSxXOpc.mjs → library-BHHgurW0.mjs} +5 -5
  143. package/dist/{library-PGCfm0UA.mjs → library-BOv5SY24.mjs} +1 -1
  144. package/dist/{library-BPIzb3K_.mjs → library-Ck0EK5bi.mjs} +4 -2
  145. package/dist/{list-cIMww2Me.mjs → list-BPMOLrwn.mjs} +5 -5
  146. package/dist/{list-jhQSgh6i.mjs → list-BTcEm4td.mjs} +3 -3
  147. package/dist/{list-M8J10Ozk.mjs → list-BTgAbqeS.mjs} +4 -4
  148. package/dist/{list-CERbeLbQ.mjs → list-Bop1NTbU.mjs} +6 -6
  149. package/dist/{list-BQnOEB3W.mjs → list-By9XJRiv.mjs} +3 -3
  150. package/dist/list-CNC-XHbN.mjs +35 -0
  151. package/dist/{list-CX9qZ-bx.mjs → list-CPWgBkPa.mjs} +4 -4
  152. package/dist/{list-C5mS_ehX.mjs → list-Cpa0Se7M.mjs} +5 -5
  153. package/dist/list-DA9KsA0o.mjs +101 -0
  154. package/dist/{list-Dat8QNcf.mjs → list-DE9gYY3I.mjs} +3 -3
  155. package/dist/{list-COLpwXW4.mjs → list-DFJt2-fY.mjs} +4 -4
  156. package/dist/{list-CBLxhaNZ.mjs → list-DUcnAb1h.mjs} +3 -3
  157. package/dist/{list-CehE6KBV.mjs → list-DW4-u7eO.mjs} +5 -5
  158. package/dist/{list-CQbiSx26.mjs → list-DbXnSL2x.mjs} +5 -5
  159. package/dist/list-DgsM9YQX.mjs +28 -0
  160. package/dist/{list-Sd7jGZoX.mjs → list-Dzzt6Yee.mjs} +3 -3
  161. package/dist/{list-BUz6KOfw.mjs → list-ZHLsjxXg.mjs} +6 -6
  162. package/dist/{list-CzRzCbCY.mjs → list-e7yvJYMw.mjs} +3 -3
  163. package/dist/{list-B1soS8QW.mjs → list-hN_Tu2T6.mjs} +6 -6
  164. package/dist/{list-BcP1DTJH.mjs → list-zyKxxNvn.mjs} +3 -3
  165. package/dist/{login-BfLqBfCd.mjs → login-B7nGQDZK.mjs} +6 -6
  166. package/dist/{logout-BpRXB3Ze.mjs → logout-pZffAh1G.mjs} +2 -2
  167. package/dist/{measure-Ds8O5Evr.mjs → measure-AtnrCTCC.mjs} +6 -6
  168. package/dist/moderation-review-BdqEH6N1.mjs +31 -0
  169. package/dist/{notification-DVrLkjFT.mjs → notification-DOYdl0ao.mjs} +1 -1
  170. package/dist/{parameter-values-DhrkLXoN.mjs → parameter-values-CxTkEjCs.mjs} +3 -3
  171. package/dist/{parse-enum-Dc0dMZ3P.mjs → parse-enum-CLIXMsd8.mjs} +1 -1
  172. package/dist/parse-id-7ja3HUdB.mjs +13 -0
  173. package/dist/{parse-ref-DTDld_LJ.mjs → parse-ref-Cw5fa4FI.mjs} +1 -1
  174. package/dist/parse-text-T0lTXzTZ.mjs +11 -0
  175. package/dist/{path-_GHFrTLx.mjs → path-DM4vyihl.mjs} +4 -4
  176. package/dist/{poll-KLl4Eq8Y.mjs → poll-Dz4tUm2f.mjs} +2 -2
  177. package/dist/{preflight-BpYtF0IU.mjs → preflight-DaZ2z2C1.mjs} +3 -3
  178. package/dist/{process-CLtOWKBn.mjs → process-D0HdqZ3r.mjs} +1 -1
  179. package/dist/{publish-D-7Zlmuk.mjs → publish-C0HCL04a.mjs} +4 -4
  180. package/dist/{pulse-x0gFxWfG.mjs → pulse-D1uh8UIU.mjs} +1 -1
  181. package/dist/{query-B1CZztxs.mjs → query-BC-C6efK.mjs} +14 -33
  182. package/dist/query-BKtMP5eH.mjs +13 -0
  183. package/dist/query-CAFPlqfi.mjs +329 -0
  184. package/dist/remapping-CgA6UJGU.mjs +53 -0
  185. package/dist/{remove-collection-C4saCFxz.mjs → remove-collection-DoctJa9g.mjs} +5 -5
  186. package/dist/{render-6O_eF-P1.mjs → render-Bvm9mta6.mjs} +2 -2
  187. package/dist/{replace-BuR4f2Ai.mjs → replace-CaFJd9fO.mjs} +4 -4
  188. package/dist/rescan-values-7VOGCLMe.mjs +32 -0
  189. package/dist/{rescan-values-CNOiiWQ5.mjs → rescan-values-sJRwcHsk.mjs} +5 -5
  190. package/dist/{run-DijA_BXt.mjs → run-COHDQ5J4.mjs} +3 -3
  191. package/dist/{run-QEUbWNm7.mjs → run-RXpFlDAB.mjs} +7 -7
  192. package/dist/{runs-BSlhVeDO.mjs → runs-CUYdCKiE.mjs} +5 -5
  193. package/dist/{runtime-Dtb93zKy.mjs → runtime-B8RtMb4B.mjs} +21 -82
  194. package/dist/{schema-tables-BE3rEb6I.mjs → schema-tables-CO5qyZBe.mjs} +6 -6
  195. package/dist/{schemas-yDjBiwlH.mjs → schemas-CzHHgDdF.mjs} +4 -4
  196. package/dist/search-BWb052_b.mjs +131 -0
  197. package/dist/search-Cc9vHNae.mjs +85 -0
  198. package/dist/{segment-Cm6zQjJW.mjs → segment-C_rsUkHK.mjs} +6 -6
  199. package/dist/{send-kC8oerkT.mjs → send-C-3bkpni.mjs} +3 -3
  200. package/dist/{set-tFhPkxrL.mjs → set-BDkT37OT.mjs} +4 -4
  201. package/dist/{set-active-lDKhAlij.mjs → set-active-CDJTfQEc.mjs} +3 -3
  202. package/dist/set-sensitivity-DVrINHde.mjs +57 -0
  203. package/dist/{setting-DrJXCaFE.mjs → setting-CoLzd08x.mjs} +4 -4
  204. package/dist/{setup-BWY9M0iR.mjs → setup-C4F4XYbU.mjs} +3 -3
  205. package/dist/{signal-Csom0mt5.mjs → signal-CxWeLszu.mjs} +1 -1
  206. package/dist/{skill-list-CCes8pKe.mjs → skill-list-BgihWuPf.mjs} +2 -2
  207. package/dist/{skills-DE9ej5Rg.mjs → skills-4qDjKRSk.mjs} +2 -2
  208. package/dist/{skills-DPRN2384.mjs → skills-BWEFRpUj.mjs} +3 -3
  209. package/dist/snippet-CYd8D9SK.mjs +19 -0
  210. package/dist/{stash-C9oDvQ9P.mjs → stash-CZ1x0rox.mjs} +6 -6
  211. package/dist/{status-DSdXmNC3.mjs → status-BM6eYW7I.mjs} +3 -3
  212. package/dist/{status-CkpujA26.mjs → status-gqpPZvue.mjs} +7 -7
  213. package/dist/{subscription-DKOKoHRG.mjs → subscription-pSuO241O.mjs} +6 -6
  214. package/dist/{subscriptions-C5SyJL4B.mjs → subscriptions-n5zJ9rYZ.mjs} +6 -6
  215. package/dist/{summary-DTPgXsc0.mjs → summary-DvIf2EiO.mjs} +5 -5
  216. package/dist/sync-schema-Cc21crxQ.mjs +32 -0
  217. package/dist/{sync-schema-DKKkNSR7.mjs → sync-schema-D1t8rhdQ.mjs} +6 -6
  218. package/dist/sync-task-CXFoqlpF.mjs +53 -0
  219. package/dist/{table-DfuY0N8e.mjs → table-Ci6bhZkb.mjs} +35 -12
  220. package/dist/table-CxvaDiIZ.mjs +155 -0
  221. package/dist/table-Dc0dLfyg.mjs +26 -0
  222. package/dist/table-selector-flags-BVZvnhUa.mjs +42 -0
  223. package/dist/text-DaNkPRwt.mjs +6 -0
  224. package/dist/timeline-BqU5sOb6.mjs +21 -0
  225. package/dist/{timeline-event-n4Lzet7l.mjs → timeline-event-jn1SOKd4.mjs} +6 -6
  226. package/dist/transform-BUIlFqpv.mjs +28 -0
  227. package/dist/{transform-CtqB1WYo.mjs → transform-CNBIV7No.mjs} +1 -1
  228. package/dist/transform-job-DsbY9mme.mjs +22 -0
  229. package/dist/{transform-tag-D6NXqWaX.mjs → transform-tag-C0jzV6Dk.mjs} +5 -5
  230. package/dist/{transforms-O4NtXqFz.mjs → transforms-DwTy_Quh.mjs} +5 -5
  231. package/dist/tree-p2j6IVy-.mjs +34 -0
  232. package/dist/{unpublish-DvWefKJi.mjs → unpublish-B-961jX1.mjs} +3 -3
  233. package/dist/unreferenced-Dxy-aYI7.mjs +36 -0
  234. package/dist/{update-DXmZuJho.mjs → update-BFYRBbRu.mjs} +6 -6
  235. package/dist/{update-xEegxIyH.mjs → update-BGeaPntx.mjs} +5 -5
  236. package/dist/{update-Bah7N8QX.mjs → update-BnIEN390.mjs} +5 -5
  237. package/dist/{update-To6A1Ugu.mjs → update-CALlEgIC.mjs} +4 -4
  238. package/dist/{update-76nzOc71.mjs → update-CHkVN69L.mjs} +13 -8
  239. package/dist/{update-AJ2JmwDl.mjs → update-CKqL9PmU.mjs} +5 -5
  240. package/dist/{update-DmgRIp7o.mjs → update-CYGYUCFQ.mjs} +4 -4
  241. package/dist/update-CuQy2g51.mjs +52 -0
  242. package/dist/{update-DOdcflLH.mjs → update-D4TGE6FS.mjs} +7 -7
  243. package/dist/{update-H_fdjugs.mjs → update-D7xi-0bU.mjs} +4 -4
  244. package/dist/{update-2KIpYgyj.mjs → update-DK77vtFF.mjs} +6 -6
  245. package/dist/{update-7oKvP1HC.mjs → update-DKDQTlnV.mjs} +5 -5
  246. package/dist/update-DXxJHC8y.mjs +41 -0
  247. package/dist/update-DiJK0uRG.mjs +181 -0
  248. package/dist/{update-CGJvIS-l.mjs → update-MD1Kwq1P.mjs} +4 -4
  249. package/dist/{update-dashcard-DjT5QOkL.mjs → update-dashcard-DuTjOh14.mjs} +6 -6
  250. package/dist/{update-D7dG7H-z.mjs → update-hvO4VpfZ.mjs} +7 -7
  251. package/dist/{update-DV54H3L5.mjs → update-qDZvnwvf.mjs} +7 -7
  252. package/dist/{update-BB6Go_RX.mjs → update-tltXCUwR.mjs} +4 -4
  253. package/dist/{upgrade-CuJx9fX4.mjs → upgrade-Ca-Ss5jb.mjs} +4 -4
  254. package/dist/{upload-DOO94rCQ.mjs → upload-C2fhpKkP.mjs} +2 -2
  255. package/dist/upload-Dw7mVr9u.mjs +13 -0
  256. package/dist/{upload-CboARPZm.mjs → upload-t6dkccqn.mjs} +3 -3
  257. package/dist/{uuid-InwZlrpQ.mjs → uuid-BMlJZT8z.mjs} +2 -2
  258. package/dist/{validate-D6-Vg_kn.mjs → validate-D7e110oU.mjs} +1 -1
  259. package/dist/{validate-query-B90KYPQr.mjs → validate-query-BzbZmenf.mjs} +7 -3
  260. package/dist/{values-CsZLk1Ls.mjs → values-CXN4xTTh.mjs} +5 -5
  261. package/dist/verify-CPVfwKSu.mjs +38 -0
  262. package/dist/verify-flags-CMpRkMPa.mjs +58 -0
  263. package/dist/verify-k-JB-k3D.mjs +38 -0
  264. package/dist/{verify-DrGjZwBM.mjs → verify-t-CEmvoG.mjs} +3 -3
  265. package/dist/{wait-BmzdarP9.mjs → wait-KSkq7kKW.mjs} +6 -6
  266. package/dist/{wait-flags-CiJGrTCT.mjs → wait-flags-KX7NHdj4.mjs} +2 -2
  267. package/dist/{window-DSb1tqSe.mjs → window-CI_QD04s.mjs} +1 -1
  268. package/package.json +1 -1
  269. package/skill-data/core/SKILL.md +24 -23
  270. package/skill-data/dashboard/SKILL.md +1 -1
  271. package/skill-data/data-action/SKILL.md +125 -0
  272. package/skill-data/document/SKILL.md +12 -1
  273. package/skill-data/git-sync/SKILL.md +61 -9
  274. package/skill-data/mbql/SKILL.md +5 -0
  275. package/skill-data/metadata/SKILL.md +36 -6
  276. package/skill-data/native-sql/SKILL.md +1 -1
  277. package/skill-data/transform/SKILL.md +1 -63
  278. package/dist/body-CshgcV6U.mjs +0 -17
  279. package/dist/card-CefVYtF7.mjs +0 -24
  280. package/dist/collection-Be5AHVWP.mjs +0 -20
  281. package/dist/create-DiJ8bUb-.mjs +0 -34
  282. package/dist/dashboard-CMw13KXM.mjs +0 -33
  283. package/dist/database-JtHTqSpq.mjs +0 -26
  284. package/dist/delete-Bsdwqh7H.mjs +0 -44
  285. package/dist/delete-runtime-BKEzJn22.mjs +0 -49
  286. package/dist/document-BGzVip5_.mjs +0 -19
  287. package/dist/export-IFZdgYZ2.mjs +0 -63
  288. package/dist/field-BJ6HoLRd.mjs +0 -18
  289. package/dist/field-fDtIrY6D.mjs +0 -80
  290. package/dist/get-i0KInCw9.mjs +0 -32
  291. package/dist/get-jofVjU6e.mjs +0 -31
  292. package/dist/git-sync-TjX1r_wF.mjs +0 -136
  293. package/dist/git-sync-xKC1sqC4.mjs +0 -28
  294. package/dist/list-Cuhf2lKL.mjs +0 -35
  295. package/dist/list-D-SyhKFw.mjs +0 -34
  296. package/dist/parse-id-DtM6q9HU.mjs +0 -10
  297. package/dist/query-CxESKMve.mjs +0 -114
  298. package/dist/query-result-E4Q-Gra6.mjs +0 -15
  299. package/dist/run-FmRruANb.mjs +0 -64
  300. package/dist/search-CR_xNArA.mjs +0 -97
  301. package/dist/selectors-C-vgMcGK.mjs +0 -35
  302. package/dist/snippet-DWHTSo9c.mjs +0 -19
  303. package/dist/sync-task-BtDnTXCP.mjs +0 -38
  304. package/dist/table-C6h4tIRw.mjs +0 -37
  305. package/dist/table-I8NXSdUC.mjs +0 -18
  306. package/dist/timeline-B_ESH-6W.mjs +0 -21
  307. package/dist/transform-BNuNiH9d.mjs +0 -28
  308. package/dist/transform-job-B7yc6dfH.mjs +0 -22
  309. package/dist/transform-test-BjjCQ2xm.mjs +0 -169
  310. package/dist/transform-test-C1Oqtfb-.mjs +0 -16
  311. package/dist/transform-test-gzDcbypy.mjs +0 -25
  312. package/dist/transport-CyVo29u7.mjs +0 -313
  313. package/dist/tree-CuyF116R.mjs +0 -26
  314. package/dist/update-l3PyNQKG.mjs +0 -41
  315. package/dist/upload-2YFFBSln.mjs +0 -13
  316. package/skill-data/transform-test-plan/SKILL.md +0 -171
  317. package/skill-data/transform-test-plan/references/checklist.md +0 -81
  318. package/skill-data/transform-test-plan/references/checks.md +0 -263
package/dist/cli.mjs CHANGED
@@ -120,15 +120,6 @@ var InternalError = class extends MetabaseError {
120
120
  this.name = "InternalError";
121
121
  }
122
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
123
  var AbortError = class extends MetabaseError {
133
124
  category = "abort";
134
125
  isRetryable = false;
@@ -198,18 +189,283 @@ function toAliasArray(alias) {
198
189
  if (alias === void 0) return [];
199
190
  return Array.isArray(alias) ? alias : [alias];
200
191
  }
201
- function normalizeFlag(value) {
202
- return value.replace(/^-+/, "").replace(/-/g, "").toLowerCase();
203
- }
204
- function flagConsumesValue(token, argsDef) {
205
- if (token.includes("=")) return false;
206
- const name = normalizeFlag(token);
192
+ const NEGATION_PREFIX = "--no-";
193
+ const INLINE_VALUE = "=";
194
+ const LONG_PREFIX = "--";
195
+ const SHORT_PREFIX = "-";
196
+ const SHORT_FLAG_LENGTH = 2;
197
+ const WORD_SEPARATORS = /* @__PURE__ */ new Set([
198
+ "-",
199
+ "_",
200
+ "/",
201
+ "."
202
+ ]);
203
+ const NEGATIVE_NUMBER = /^-\.?\d/;
204
+ const DIGIT = /\d/;
205
+ function flagSpellings(argsDef) {
206
+ const spellings = /* @__PURE__ */ new Map();
207
207
  for (const [key, def] of Object.entries(argsDef)) {
208
- if (def.type !== "string" && def.type !== "enum") continue;
209
- if (normalizeFlag(key) === name) return true;
210
- if (toAliasArray(def.alias).some((alias) => normalizeFlag(alias) === name)) return true;
208
+ if (def.type === "positional") continue;
209
+ const takes = flagTakes(def);
210
+ const aliases = "alias" in def ? toAliasArray(def.alias) : [];
211
+ const words = splitWords(key);
212
+ for (const name of /* @__PURE__ */ new Set([
213
+ key,
214
+ camelCase(words),
215
+ kebabCase(words),
216
+ ...aliases
217
+ ])) {
218
+ spellings.set(`${LONG_PREFIX}${name}`, {
219
+ key,
220
+ negated: false,
221
+ takes
222
+ });
223
+ spellings.set(`${NEGATION_PREFIX}${name}`, {
224
+ key,
225
+ negated: true,
226
+ takes
227
+ });
228
+ }
229
+ for (const letter of aliases.filter((alias) => alias.length === 1)) spellings.set(`${SHORT_PREFIX}${letter}`, {
230
+ key,
231
+ negated: false,
232
+ takes
233
+ });
211
234
  }
212
- return false;
235
+ return spellings;
236
+ }
237
+ function flagTakes(def) {
238
+ if (def.type === "string" && "list" in def && def.list === true) return "list";
239
+ return def.type === "string" || def.type === "enum" ? "value" : "nothing";
240
+ }
241
+ function parseFlagToken(token, spellings) {
242
+ const equals = token.indexOf(INLINE_VALUE);
243
+ const name = equals === -1 ? token : token.slice(0, equals);
244
+ const inlineValue = equals === -1 ? null : readInlineValue(token, name);
245
+ const flag = spellings.get(name);
246
+ if (flag !== void 0) return {
247
+ name,
248
+ flag: flag.negated && inlineValue !== null ? null : flag,
249
+ inlineValue
250
+ };
251
+ const short = name.slice(0, SHORT_FLAG_LENGTH);
252
+ const shortFlag = name.startsWith(LONG_PREFIX) ? void 0 : spellings.get(short);
253
+ if (shortFlag !== void 0 && shortFlag.takes !== "nothing") return {
254
+ name: short,
255
+ flag: shortFlag,
256
+ inlineValue: readInlineValue(token, short)
257
+ };
258
+ return {
259
+ name,
260
+ flag: null,
261
+ inlineValue
262
+ };
263
+ }
264
+ function readInlineValue(token, name) {
265
+ const start = name.startsWith(LONG_PREFIX) ? name.length + 1 : name.length;
266
+ return token.slice(start);
267
+ }
268
+ function isFlagToken(token) {
269
+ return token.startsWith(SHORT_PREFIX) && token !== SHORT_PREFIX && !NEGATIVE_NUMBER.test(token);
270
+ }
271
+ function isNegativeNumber(token) {
272
+ return NEGATIVE_NUMBER.test(token);
273
+ }
274
+ function* readArgv(rawArgs, spellings, start = 0) {
275
+ let index = start;
276
+ while (index < rawArgs.length) {
277
+ const token = rawArgs[index];
278
+ if (token === void 0) return;
279
+ if (token === "--") {
280
+ yield {
281
+ kind: "separator",
282
+ index
283
+ };
284
+ for (const [offset, rest] of rawArgs.slice(index + 1).entries()) yield {
285
+ kind: "positional",
286
+ index: index + 1 + offset,
287
+ token: rest
288
+ };
289
+ return;
290
+ }
291
+ if (!isFlagToken(token)) {
292
+ yield {
293
+ kind: "positional",
294
+ index,
295
+ token
296
+ };
297
+ index += 1;
298
+ continue;
299
+ }
300
+ const item = readFlag(rawArgs, index, parseFlagToken(token, spellings));
301
+ yield item;
302
+ index = item.end;
303
+ }
304
+ }
305
+ function readFlag(rawArgs, index, parsed) {
306
+ const { flag } = parsed;
307
+ const consumesNext = flag !== null && flag.takes !== "nothing" && !flag.negated && parsed.inlineValue === null;
308
+ const next = consumesNext ? rawArgs[index + 1] : void 0;
309
+ const end = next === void 0 ? index + 1 : index + 2;
310
+ const value = consumesNext ? next ?? null : parsed.inlineValue;
311
+ return {
312
+ kind: "flag",
313
+ index,
314
+ ...parsed,
315
+ consumesNext,
316
+ value,
317
+ end
318
+ };
319
+ }
320
+ function splitWords(name) {
321
+ const words = [];
322
+ let word = "";
323
+ let previousUpper = null;
324
+ for (const char of name) {
325
+ if (WORD_SEPARATORS.has(char)) {
326
+ words.push(word);
327
+ word = "";
328
+ previousUpper = null;
329
+ continue;
330
+ }
331
+ const upper = DIGIT.test(char) ? null : char !== char.toLowerCase();
332
+ if (previousUpper === false && upper === true) {
333
+ words.push(word);
334
+ word = char;
335
+ } else if (previousUpper === true && upper === false && word.length > 1) {
336
+ words.push(word.slice(0, -1));
337
+ word = `${word.slice(-1)}${char}`;
338
+ } else word += char;
339
+ previousUpper = upper;
340
+ }
341
+ words.push(word);
342
+ return words;
343
+ }
344
+ function camelCase(words) {
345
+ const pascal = words.map((word) => `${word.charAt(0).toUpperCase()}${word.slice(1)}`).join("");
346
+ return `${pascal.charAt(0).toLowerCase()}${pascal.slice(1)}`;
347
+ }
348
+ function kebabCase(words) {
349
+ return words.map((word) => word.toLowerCase()).join("-");
350
+ }
351
+ function parseCsv(raw) {
352
+ return raw.split(",").map((part) => part.trim()).filter((part) => part.length > 0);
353
+ }
354
+ function parseEnumCsv(raw, schema, flagName) {
355
+ if (raw === void 0) return;
356
+ const allowed = Object.values(schema.enum).join(", ");
357
+ const parts = parseCsv(raw);
358
+ if (parts.length === 0) throw new ConfigError(`invalid ${flagName} value: "${raw}" (expected one of: ${allowed})`);
359
+ const accepted = [];
360
+ const rejected = [];
361
+ for (const part of parts) {
362
+ const result = schema.safeParse(part);
363
+ if (result.success) accepted.push(result.data);
364
+ else rejected.push(part);
365
+ }
366
+ if (rejected.length > 0) throw new ConfigError(`invalid ${flagName} value: ${rejected.join(", ")} (expected one of: ${allowed})`);
367
+ return accepted;
368
+ }
369
+ function parseEnum(raw, schema, flagName) {
370
+ if (raw === void 0 || raw === "") return;
371
+ const result = schema.safeParse(raw);
372
+ if (!result.success) throw new ConfigError(`invalid ${flagName} value: "${raw}" (expected one of: ${Object.values(schema.enum).join(", ")})`);
373
+ return result.data;
374
+ }
375
+ //#endregion
376
+ //#region src/commands/argv.ts
377
+ const BUILTIN_FLAGS = [
378
+ "--help",
379
+ "-h",
380
+ "--version",
381
+ "-v"
382
+ ];
383
+ const SHELL_SAFE_WORD = /^[\w.,:/@%+=-]+$/;
384
+ function commandSpellings(argsDef) {
385
+ const builtins = BUILTIN_FLAGS.map((flag) => [flag, {
386
+ key: flag,
387
+ negated: false,
388
+ takes: "nothing"
389
+ }]);
390
+ return new Map([...builtins, ...flagSpellings(argsDef)]);
391
+ }
392
+ function separatePositionals(rawArgs, argsDef) {
393
+ const flagTokens = [];
394
+ const positionals = [];
395
+ for (const item of readArgv(rawArgs, commandSpellings(argsDef))) if (item.kind === "flag") flagTokens.push(...rawArgs.slice(item.index, item.end));
396
+ else if (item.kind === "positional") positionals.push(item.token);
397
+ if (!positionals.some(isNegativeNumber)) return [...rawArgs];
398
+ return [
399
+ ...flagTokens,
400
+ "--",
401
+ ...positionals
402
+ ];
403
+ }
404
+ function givenFlagKeys(rawArgs, argsDef) {
405
+ const keys = /* @__PURE__ */ new Set();
406
+ for (const item of readArgv(rawArgs, flagSpellings(argsDef))) if (item.kind === "flag" && item.flag !== null && !item.flag.negated) keys.add(item.flag.key);
407
+ return keys;
408
+ }
409
+ function assertArgv(rawArgs, argsDef) {
410
+ const spellings = commandSpellings(argsDef);
411
+ const valueFlags = [];
412
+ const positionals = [];
413
+ for (const item of readArgv(rawArgs, spellings)) if (item.kind === "positional") positionals.push(item.token);
414
+ else if (item.kind === "flag") {
415
+ const valueFlag = readValueFlag(item, spellings);
416
+ if (valueFlag !== null) valueFlags.push(valueFlag);
417
+ }
418
+ assertEachGivenOnce(valueFlags);
419
+ assertPositionalCount(positionals, argsDef);
420
+ }
421
+ function readValueFlag(item, spellings) {
422
+ const { flag, name } = item;
423
+ if (flag === null) throw new ConfigError(`unknown flag: ${name}`);
424
+ if (flag.takes === "nothing") return null;
425
+ if (flag.negated) throw new ConfigError(`${name}: ${`--${name.slice(5)}`} takes a value, so it cannot be negated`);
426
+ return {
427
+ name,
428
+ flag,
429
+ value: readFlagValue(item, spellings)
430
+ };
431
+ }
432
+ function assertPositionalCount(positionals, argsDef) {
433
+ const declared = Object.entries(argsDef).filter(([, def]) => def.type === "positional").map(([name]) => `<${name}>`);
434
+ const extra = positionals[declared.length];
435
+ if (extra === void 0) return;
436
+ throw new ConfigError(`unexpected argument: "${extra}" (${declared.length === 0 ? "this command takes no positional arguments" : `this command takes ${declared.join(" ")}; quote an argument that contains spaces`})`);
437
+ }
438
+ function assertEachGivenOnce(valueFlags) {
439
+ const first = /* @__PURE__ */ new Map();
440
+ for (const repeat of valueFlags) {
441
+ const earlier = first.get(repeat.flag.key);
442
+ if (earlier === void 0) {
443
+ first.set(repeat.flag.key, repeat);
444
+ continue;
445
+ }
446
+ const also = earlier.name === repeat.name ? "" : ` (also as ${earlier.name})`;
447
+ const joined = joinedSpelling(repeat, valueFlags);
448
+ throw new ConfigError(`${repeat.name} is given more than once${also}; pass it once${joined}`);
449
+ }
450
+ }
451
+ function joinedSpelling(repeat, valueFlags) {
452
+ if (repeat.flag.takes !== "list") return "";
453
+ const joined = valueFlags.filter((valueFlag) => valueFlag.flag.key === repeat.flag.key).map((valueFlag) => valueFlag.value).join(",");
454
+ return `, as --${repeat.flag.key}=${quoteForShell(joined)}`;
455
+ }
456
+ function quoteForShell(value) {
457
+ if (SHELL_SAFE_WORD.test(value)) return value;
458
+ return `'${value.replaceAll("'", `'\\''`)}'`;
459
+ }
460
+ function readFlagValue(item, spellings) {
461
+ const { name, value, consumesNext } = item;
462
+ if (value === null || consumesNext && value === "--") throw new ConfigError(`${name} needs a value`);
463
+ if (consumesNext && readsAsFlag(value, spellings)) throw new ConfigError(`${name} needs a value, but the flag ${parseFlagToken(value, spellings).name} follows it; write ${name}=<value> for a value that starts with "-"`);
464
+ return value;
465
+ }
466
+ function readsAsFlag(value, spellings) {
467
+ if (!isFlagToken(value)) return false;
468
+ return value.startsWith("--no-") || parseFlagToken(value, spellings).flag !== null;
213
469
  }
214
470
  //#endregion
215
471
  //#region src/output/types.ts
@@ -240,7 +496,13 @@ function listEnvelopeShape(item) {
240
496
  }
241
497
  //#endregion
242
498
  //#region src/commands/flags.ts
243
- const outputFlags = {
499
+ function listFlag(def) {
500
+ return {
501
+ ...def,
502
+ list: true
503
+ };
504
+ }
505
+ const formatFlags = {
244
506
  format: {
245
507
  type: "string",
246
508
  description: "auto | json | text",
@@ -249,15 +511,18 @@ const outputFlags = {
249
511
  json: {
250
512
  type: "boolean",
251
513
  description: "Shorthand for --format json"
252
- },
514
+ }
515
+ };
516
+ const outputFlags = {
517
+ ...formatFlags,
253
518
  full: {
254
519
  type: "boolean",
255
520
  description: "Return the full object (default: compact)"
256
521
  },
257
- fields: {
522
+ fields: listFlag({
258
523
  type: "string",
259
524
  description: "Dot-paths, comma separated (mutually exclusive with --full)"
260
- },
525
+ }),
261
526
  maxBytes: {
262
527
  type: "string",
263
528
  description: "Output size cap; 0 disables",
@@ -309,50 +574,32 @@ const connectionFlags = {
309
574
  };
310
575
  //#endregion
311
576
  //#region src/commands/global-flags.ts
312
- const ARGUMENT_SEPARATOR = "--";
313
- const NEGATION_PREFIX = "no-";
314
- const GLOBAL_FLAG_ARGS = {
577
+ const GLOBAL_FLAG_SPELLINGS = flagSpellings({
315
578
  ...outputFlags,
316
579
  ...listFlags,
317
580
  ...profileFlag,
318
581
  ...connectionFlags
319
- };
320
- const GLOBAL_FLAG_NAMES = buildGlobalFlagNames();
321
- function buildGlobalFlagNames() {
322
- const names = /* @__PURE__ */ new Set();
323
- for (const [key, def] of Object.entries(GLOBAL_FLAG_ARGS)) {
324
- names.add(normalizeFlag(key));
325
- if ("alias" in def) for (const alias of toAliasArray(def.alias)) names.add(normalizeFlag(alias));
326
- }
327
- return names;
328
- }
329
- function isGlobalFlag(token) {
330
- if (!token.startsWith("-") || token === ARGUMENT_SEPARATOR) return false;
331
- const raw = token.includes("=") ? token.slice(0, token.indexOf("=")) : token;
332
- const name = normalizeFlag(raw);
333
- if (GLOBAL_FLAG_NAMES.has(name)) return true;
334
- const bare = raw.replace(/^-+/, "");
335
- if (bare.startsWith(NEGATION_PREFIX)) return GLOBAL_FLAG_NAMES.has(normalizeFlag(bare.slice(3)));
336
- return false;
337
- }
582
+ });
338
583
  function hoistGlobalFlags(rawArgs) {
339
- const leading = [];
340
- let index = 0;
341
- while (index < rawArgs.length) {
342
- const token = rawArgs[index];
343
- if (token === void 0 || !isGlobalFlag(token)) break;
344
- leading.push(token);
345
- index += 1;
346
- if (flagConsumesValue(token, GLOBAL_FLAG_ARGS) && index < rawArgs.length) {
347
- const value = rawArgs[index];
348
- if (value !== void 0) {
349
- leading.push(value);
350
- index += 1;
351
- }
352
- }
584
+ const end = leadingGlobalFlagsEnd(rawArgs);
585
+ if (end === 0) return [...rawArgs];
586
+ const leading = rawArgs.slice(0, end);
587
+ const rest = rawArgs.slice(end);
588
+ const separator = rest.indexOf("--");
589
+ if (separator === -1) return [...rest, ...leading];
590
+ return [
591
+ ...rest.slice(0, separator),
592
+ ...leading,
593
+ ...rest.slice(separator)
594
+ ];
595
+ }
596
+ function leadingGlobalFlagsEnd(rawArgs) {
597
+ let end = 0;
598
+ for (const item of readArgv(rawArgs, GLOBAL_FLAG_SPELLINGS)) {
599
+ if (item.kind !== "flag" || item.flag === null) return end;
600
+ end = item.end;
353
601
  }
354
- if (leading.length === 0) return [...rawArgs];
355
- return [...rawArgs.slice(index), ...leading];
602
+ return end;
356
603
  }
357
604
  //#endregion
358
605
  //#region src/core/system-ca.ts
@@ -367,7 +614,7 @@ function trustSystemCa() {
367
614
  //#endregion
368
615
  //#region package.json
369
616
  var name = "@metabase/cli";
370
- var version = "0.3.2-alpha.fix-transform-test-ee-path.8ac2a7a";
617
+ var version = "0.4.0-alpha.release-65-integration-branch.31ca6bb";
371
618
  var description = "Metabase CLI";
372
619
  //#endregion
373
620
  //#region src/runtime/command-augment.ts
@@ -387,37 +634,39 @@ const main = defineCommand({
387
634
  description
388
635
  },
389
636
  subCommands: {
390
- auth: () => import("./auth-A96JOCQx.mjs").then((mod) => mod.default),
391
- db: () => import("./db-BDijt81U.mjs").then((mod) => mod.default),
392
- table: () => import("./table-I8NXSdUC.mjs").then((mod) => mod.default),
393
- field: () => import("./field-BJ6HoLRd.mjs").then((mod) => mod.default),
394
- upload: () => import("./upload-2YFFBSln.mjs").then((mod) => mod.default),
395
- "content-translation": () => import("./content-translation-BXIXL4eW.mjs").then((mod) => mod.default),
396
- card: () => import("./card-CefVYtF7.mjs").then((mod) => mod.default),
397
- dashboard: () => import("./dashboard-CMw13KXM.mjs").then((mod) => mod.default),
398
- subscription: () => import("./subscription-DKOKoHRG.mjs").then((mod) => mod.default),
399
- alert: () => import("./alert-Dalin_DD.mjs").then((mod) => mod.default),
400
- collection: () => import("./collection-Be5AHVWP.mjs").then((mod) => mod.default),
401
- library: () => import("./library-BNSxXOpc.mjs").then((mod) => mod.default),
402
- document: () => import("./document-BGzVip5_.mjs").then((mod) => mod.default),
403
- transform: () => import("./transform-BNuNiH9d.mjs").then((mod) => mod.default),
404
- "transform-job": () => import("./transform-job-B7yc6dfH.mjs").then((mod) => mod.default),
405
- "transform-tag": () => import("./transform-tag-D6NXqWaX.mjs").then((mod) => mod.default),
406
- "transform-test": () => import("./transform-test-C1Oqtfb-.mjs").then((mod) => mod.default),
407
- setting: () => import("./setting-DrJXCaFE.mjs").then((mod) => mod.default),
408
- search: () => import("./search-CR_xNArA.mjs").then((mod) => mod.default),
409
- "git-sync": () => import("./git-sync-xKC1sqC4.mjs").then((mod) => mod.default),
410
- setup: () => import("./setup-BWY9M0iR.mjs").then((mod) => mod.default),
411
- snippet: () => import("./snippet-DWHTSo9c.mjs").then((mod) => mod.default),
412
- segment: () => import("./segment-Cm6zQjJW.mjs").then((mod) => mod.default),
413
- measure: () => import("./measure-Ds8O5Evr.mjs").then((mod) => mod.default),
414
- timeline: () => import("./timeline-B_ESH-6W.mjs").then((mod) => mod.default),
415
- "timeline-event": () => import("./timeline-event-n4Lzet7l.mjs").then((mod) => mod.default),
416
- eid: () => import("./eid-HnrWhPoe.mjs").then((mod) => mod.default),
417
- query: () => import("./query-CxESKMve.mjs").then((mod) => mod.default),
418
- uuid: () => import("./uuid-InwZlrpQ.mjs").then((mod) => mod.default),
419
- upgrade: () => import("./upgrade-CuJx9fX4.mjs").then((mod) => mod.default),
420
- skills: () => import("./skills-DPRN2384.mjs").then((mod) => mod.default)
637
+ auth: () => import("./auth-Bx4QQhqt.mjs").then((mod) => mod.default),
638
+ db: () => import("./db-C8lj73Dz.mjs").then((mod) => mod.default),
639
+ table: () => import("./table-Dc0dLfyg.mjs").then((mod) => mod.default),
640
+ field: () => import("./field-fBpiGiqr.mjs").then((mod) => mod.default),
641
+ upload: () => import("./upload-Dw7mVr9u.mjs").then((mod) => mod.default),
642
+ "content-translation": () => import("./content-translation-BRdNdAmn.mjs").then((mod) => mod.default),
643
+ card: () => import("./card-CQD4D8mw.mjs").then((mod) => mod.default),
644
+ dashboard: () => import("./dashboard-D11YAa7I.mjs").then((mod) => mod.default),
645
+ subscription: () => import("./subscription-pSuO241O.mjs").then((mod) => mod.default),
646
+ "data-action": () => import("./data-action-BiHjjVjc.mjs").then((mod) => mod.default),
647
+ alert: () => import("./alert-Ne0ivd5m.mjs").then((mod) => mod.default),
648
+ collection: () => import("./collection-CuaTd10G.mjs").then((mod) => mod.default),
649
+ library: () => import("./library-BHHgurW0.mjs").then((mod) => mod.default),
650
+ document: () => import("./document-uxz96Lah.mjs").then((mod) => mod.default),
651
+ glossary: () => import("./glossary-Brnk2PBi.mjs").then((mod) => mod.default),
652
+ transform: () => import("./transform-BUIlFqpv.mjs").then((mod) => mod.default),
653
+ "transform-job": () => import("./transform-job-DsbY9mme.mjs").then((mod) => mod.default),
654
+ "transform-tag": () => import("./transform-tag-C0jzV6Dk.mjs").then((mod) => mod.default),
655
+ setting: () => import("./setting-CoLzd08x.mjs").then((mod) => mod.default),
656
+ search: () => import("./search-BWb052_b.mjs").then((mod) => mod.default),
657
+ "git-sync": () => import("./git-sync-VAqASCQ5.mjs").then((mod) => mod.default),
658
+ setup: () => import("./setup-C4F4XYbU.mjs").then((mod) => mod.default),
659
+ snippet: () => import("./snippet-CYd8D9SK.mjs").then((mod) => mod.default),
660
+ segment: () => import("./segment-C_rsUkHK.mjs").then((mod) => mod.default),
661
+ measure: () => import("./measure-AtnrCTCC.mjs").then((mod) => mod.default),
662
+ dependency: () => import("./dependency-CIam7zmr.mjs").then((mod) => mod.default),
663
+ timeline: () => import("./timeline-BqU5sOb6.mjs").then((mod) => mod.default),
664
+ "timeline-event": () => import("./timeline-event-jn1SOKd4.mjs").then((mod) => mod.default),
665
+ eid: () => import("./eid-D0FxhT9H.mjs").then((mod) => mod.default),
666
+ query: () => import("./query-CAFPlqfi.mjs").then((mod) => mod.default),
667
+ uuid: () => import("./uuid-BMlJZT8z.mjs").then((mod) => mod.default),
668
+ upgrade: () => import("./upgrade-Ca-Ss5jb.mjs").then((mod) => mod.default),
669
+ skills: () => import("./skills-BWEFRpUj.mjs").then((mod) => mod.default)
421
670
  }
422
671
  });
423
672
  setMetabaseAugment(main, {
@@ -590,6 +839,18 @@ function jsonByteLength(value) {
590
839
  function isPlainObject(value) {
591
840
  return typeof value === "object" && value !== null && !Array.isArray(value);
592
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
+ }
593
854
  //#endregion
594
855
  //#region src/output/projection.ts
595
856
  function projectForList(item, view, opts) {
@@ -682,7 +943,7 @@ function renderRows(head, rows) {
682
943
  return table.toString();
683
944
  }
684
945
  function formatCell(row, column) {
685
- const value = row[column.key];
946
+ const value = column.value === void 0 ? row[column.key] : column.value(row);
686
947
  if (column.format !== void 0) return column.format(value);
687
948
  return formatScalar(value);
688
949
  }
@@ -825,7 +1086,6 @@ function exitCodeFor(category) {
825
1086
  case "response-shape":
826
1087
  case "timeout":
827
1088
  case "internal":
828
- case "failed":
829
1089
  case "unknown": return FAILURE_EXIT_CODE;
830
1090
  }
831
1091
  }
@@ -876,6 +1136,8 @@ function writeJsonError(handled, exitCode, verbose) {
876
1136
  //#endregion
877
1137
  //#region ../client/src/version/features.ts
878
1138
  const FEATURE_RULES = {
1139
+ dataActionCollections: { since: 65 },
1140
+ dataActionsWithoutModel: { since: 65 },
879
1141
  transforms: { since: 59 },
880
1142
  transformJobActivation: { since: 61 },
881
1143
  measures: { since: 59 },
@@ -891,6 +1153,11 @@ const FEATURE_RULES = {
891
1153
  since: 63,
892
1154
  tokenFeature: "remote_sync"
893
1155
  },
1156
+ remoteSyncBranchGuard: { since: 63 },
1157
+ remoteSyncMerge: {
1158
+ since: 63,
1159
+ tokenFeature: "remote_sync"
1160
+ },
894
1161
  contentTranslation: {
895
1162
  since: 58,
896
1163
  tokenFeature: "content_translation"
@@ -907,6 +1174,10 @@ const FEATURE_RULES = {
907
1174
  transformJobRunIdIsNumeric: { since: 64 },
908
1175
  transformCheckpointReset: { since: 60 },
909
1176
  fieldDataSensitivity: { since: 64 },
1177
+ fieldRemappingAppendsDisplayColumns: {
1178
+ since: 58,
1179
+ until: 59
1180
+ },
910
1181
  transformDagRuns: { since: 64 },
911
1182
  unifiedTransformRuns: { since: 64 },
912
1183
  transformTests: {
@@ -918,6 +1189,10 @@ const FEATURE_RULES = {
918
1189
  invalidMbqlIsBadRequest: { since: 59 },
919
1190
  boxplotDisplay: { since: 59 },
920
1191
  nativeTableTemplateTag: { since: 59 },
1192
+ compiledQueryOmitsCollection: {
1193
+ since: 59,
1194
+ until: 62
1195
+ },
921
1196
  smartLinkMeasureModel: { since: 60 },
922
1197
  dashboardSubscriptionFilters: {
923
1198
  since: 58,
@@ -931,15 +1206,22 @@ const FEATURE_RULES = {
931
1206
  since: 59,
932
1207
  tokenFeature: "dependencies"
933
1208
  },
934
- dependencyKebabCaseFilters: { since: 60 },
1209
+ dependencyAsyncBackfill: {
1210
+ since: 60,
1211
+ tokenFeature: "dependencies"
1212
+ },
1213
+ measureDependencyGraph: { since: 59 },
935
1214
  tableListAccessFilters: { since: 59 },
936
1215
  tableListTransformTargets: { since: 60 },
1216
+ tableListPublishedFilter: { since: 63 },
937
1217
  tableUnusedFilter: {
938
1218
  since: 58,
939
1219
  tokenFeature: "dependencies"
940
1220
  },
941
1221
  tableDataLayerTiers: { since: 59 },
942
1222
  bulkTableEdit: { since: 59 },
1223
+ tableUserValueWithdrawal: { since: 64 },
1224
+ bulkTableSync: { since: 59 },
943
1225
  erd: {
944
1226
  since: 62,
945
1227
  tokenFeature: "schema-viewer"
@@ -963,7 +1245,8 @@ const FEATURE_RULES = {
963
1245
  },
964
1246
  metricDefinitionQuery: { since: 60 },
965
1247
  metricDimensionListing: { since: 64 },
966
- oauthFullAccessScope: { since: 63 }
1248
+ oauthFullAccessScope: { since: 63 },
1249
+ exportCsvByteOrderMark: { since: 63 }
967
1250
  };
968
1251
  function isFeatureName(name) {
969
1252
  return Object.hasOwn(FEATURE_RULES, name);
@@ -1001,7 +1284,6 @@ const METHOD_REQUIREMENTS = {
1001
1284
  "card.exportQuery": [],
1002
1285
  "card.queryMetadata": [],
1003
1286
  "collection.list": [],
1004
- "collection.listWithLibrary": [],
1005
1287
  "collection.get": [],
1006
1288
  "collection.create": [],
1007
1289
  "collection.update": [],
@@ -1020,6 +1302,13 @@ const METHOD_REQUIREMENTS = {
1020
1302
  "dashboard.checkCardReferences": [],
1021
1303
  "dashboard.parameterValues": [],
1022
1304
  "dashboard.searchParameterValues": [],
1305
+ "dataAction.list": [],
1306
+ "dataAction.get": [],
1307
+ "dataAction.create": ["dataActionsWithoutModel"],
1308
+ "dataAction.update": [],
1309
+ "dataAction.archive": [],
1310
+ "dataAction.delete": [],
1311
+ "dataAction.execute": [],
1023
1312
  "database.list": [],
1024
1313
  "database.get": [],
1025
1314
  "database.schemas": [],
@@ -1045,6 +1334,7 @@ const METHOD_REQUIREMENTS = {
1045
1334
  "erd.get": ["erd"],
1046
1335
  "field.get": [],
1047
1336
  "field.update": [],
1337
+ "field.setDataSensitivity": ["fieldDataSensitivity"],
1048
1338
  "field.search": [],
1049
1339
  "field.remapping": [],
1050
1340
  "field.summary": [],
@@ -1064,6 +1354,7 @@ const METHOD_REQUIREMENTS = {
1064
1354
  "gitSync.syncedCollections": ["remoteSync"],
1065
1355
  "gitSync.remoteUrl": [],
1066
1356
  "gitSync.branch": [],
1357
+ "gitSync.trackedBranch": [],
1067
1358
  "gitSync.waitForTask": ["remoteSync"],
1068
1359
  "glossary.list": [],
1069
1360
  "glossary.create": [],
@@ -1127,7 +1418,11 @@ const METHOD_REQUIREMENTS = {
1127
1418
  "table.fks": [],
1128
1419
  "table.syncSchema": [],
1129
1420
  "table.rescanValues": [],
1421
+ "table.discardValues": [],
1130
1422
  "table.bulkEdit": ["bulkTableEdit"],
1423
+ "table.bulkSyncSchema": ["bulkTableSync"],
1424
+ "table.bulkRescanValues": ["bulkTableSync"],
1425
+ "table.bulkDiscardValues": ["bulkTableSync"],
1131
1426
  "table.appendCsv": [],
1132
1427
  "table.replaceCsv": [],
1133
1428
  "timeline.list": [],
@@ -1464,7 +1759,9 @@ async function walkCommandPath(root, rawArgs) {
1464
1759
  const match = await findSubCommand(subCommands, token);
1465
1760
  if (match === null) return {
1466
1761
  segments,
1467
- unknownToken: token
1762
+ unknownToken: token,
1763
+ command: current,
1764
+ argsStart: index
1468
1765
  };
1469
1766
  segments.push(match.name);
1470
1767
  current = match.command;
@@ -1472,7 +1769,17 @@ async function walkCommandPath(root, rawArgs) {
1472
1769
  }
1473
1770
  return {
1474
1771
  segments,
1475
- unknownToken: null
1772
+ unknownToken: null,
1773
+ command: current,
1774
+ argsStart: index
1775
+ };
1776
+ }
1777
+ async function resolveLeafArgv(root, rawArgs) {
1778
+ const path = await walkCommandPath(root, rawArgs);
1779
+ if (path.unknownToken !== null || await resolveCitty(path.command.subCommands) !== void 0) return null;
1780
+ return {
1781
+ argsDef: await resolveCitty(path.command.args) ?? {},
1782
+ argsStart: path.argsStart
1476
1783
  };
1477
1784
  }
1478
1785
  async function resolveBreadcrumb(root, rawArgs) {
@@ -1483,16 +1790,11 @@ async function findUnknownCommand(root, rawArgs) {
1483
1790
  return (await walkCommandPath(root, rawArgs)).unknownToken;
1484
1791
  }
1485
1792
  function skipFlags(rawArgs, start, argsDef) {
1486
- let index = start;
1487
- while (index < rawArgs.length) {
1488
- const token = rawArgs[index];
1489
- if (token === void 0) return index;
1490
- if (token === "--") return rawArgs.length;
1491
- if (!token.startsWith("-")) return index;
1492
- if (flagConsumesValue(token, argsDef)) index += 1;
1493
- index += 1;
1793
+ for (const item of readArgv(rawArgs, flagSpellings(argsDef), start)) {
1794
+ if (item.kind === "positional") return item.index;
1795
+ if (item.kind === "separator") return rawArgs.length;
1494
1796
  }
1495
- return index;
1797
+ return rawArgs.length;
1496
1798
  }
1497
1799
  async function findSubCommand(subCommands, token) {
1498
1800
  const direct = subCommands[token];
@@ -1542,7 +1844,7 @@ const JSON_HELP_FLAG = "--json";
1542
1844
  async function run() {
1543
1845
  installInterruptHandler((code) => process.exit(code));
1544
1846
  trustSystemCa();
1545
- const rawArgs = hoistGlobalFlags(process.argv.slice(2));
1847
+ const rawArgs = await normalizeArgv(process.argv.slice(2));
1546
1848
  const wantsJsonHelp = rawArgs.includes(JSON_HELP_FLAG);
1547
1849
  const showUsageWithBreadcrumb = async (cmd, parent) => {
1548
1850
  const breadcrumb = await resolveBreadcrumb(main, rawArgs);
@@ -1568,8 +1870,15 @@ async function run() {
1568
1870
  rawArgs
1569
1871
  });
1570
1872
  }
1873
+ async function normalizeArgv(argv) {
1874
+ const hoisted = hoistGlobalFlags(argv);
1875
+ const leaf = await resolveLeafArgv(main, hoisted);
1876
+ if (leaf === null) return hoisted;
1877
+ const leafArgs = separatePositionals(hoisted.slice(leaf.argsStart), leaf.argsDef);
1878
+ return [...hoisted.slice(0, leaf.argsStart), ...leafArgs];
1879
+ }
1571
1880
  run().catch((error) => {
1572
1881
  reportError(error);
1573
1882
  });
1574
1883
  //#endregion
1575
- export { FailedResultError as $, ENV_SKILLS_DIR as A, listFlags as B, promptSelect as C, ENV_API_KEY as D, warn as E, ProfileRefreshedError as F, listEnvelopeSchema as G, outputFlags as H, setMetabaseAugment as I, normalizeFlag as J, listEnvelopeSchemaWithExtras as K, name as L, ENV_URL as M, consumeLegacyEnvWarnings as N, ENV_DISABLE_KEYRING as O, readEnv as P, ConfigError as Q, version as R, promptPassword as S, listTruncationNotice as T, profileFlag as U, listFlagsWithDefaultLimit as V, DEFAULT_MAX_BYTES as W, AbortError as X, toAliasArray as Y, ChainedRequestError as Z, formatScalar as _, Features as a, UnknownError as at, isPlainObject as b, ruleGap as c, isFileNotFoundError as ct, renderList as d, InternalError as et, renderListWithExtras as f, MALFORMED_CELL as g, writeText as h, FEATURE_RULES as i, TimeoutError as it, ENV_SKIP_PREFLIGHT as j, ENV_PROFILE as k, reportError as l, KNOWN_RANGE as lt, writeJson as m, methodRequirements as n, NetworkError as nt, evaluateFeatures as o, ValidationError as ot, renderSummary as p, flagConsumesValue as q, FEATURE_NAMES as r, ResponseShapeError as rt, isFeatureName as s, errorMessage as st, interruptSignal as t, MetabaseError as tt, renderItem as u, escapeJsonPointerSegment as ut, renderRows as v, promptText as w, promptConfirm as x, projectForList as y, connectionFlags as z };
1884
+ export { givenFlagKeys as $, ENV_API_KEY as A, name as B, isPlainObject as C, promptText as D, promptSelect as E, ENV_URL as F, listFlags as G, connectionFlags as H, consumeLegacyEnvWarnings as I, profileFlag as J, listFlagsWithDefaultLimit as K, readEnv as L, ENV_PROFILE as M, ENV_SKILLS_DIR as N, listTruncationNotice as O, ENV_SKIP_PREFLIGHT as P, assertArgv as Q, ProfileRefreshedError as R, isBlank as S, promptPassword as T, formatFlags as U, version as V, listFlag as W, listEnvelopeSchema as X, DEFAULT_MAX_BYTES as Y, listEnvelopeSchemaWithExtras as Z, MALFORMED_CELL as _, escapeJsonPointerSegment as _t, Features as a, ConfigError as at, projectForList as b, ruleGap as c, NetworkError as ct, renderList as d, UnknownError as dt, parseCsv as et, renderListWithExtras as f, ValidationError as ft, writeText as g, KNOWN_RANGE as gt, writeJson as h, isFileNotFoundError as ht, FEATURE_RULES as i, ChainedRequestError as it, ENV_DISABLE_KEYRING as j, warn as k, reportError as l, ResponseShapeError as lt, serializeJson as m, formatZodIssue as mt, methodRequirements as n, parseEnumCsv as nt, evaluateFeatures as o, InternalError as ot, renderSummary as p, errorMessage as pt, outputFlags as q, FEATURE_NAMES as r, AbortError as rt, isFeatureName as s, MetabaseError as st, interruptSignal as t, parseEnum as tt, renderItem as u, TimeoutError as ut, formatScalar as v, promptConfirm as w, NOT_BLANK as x, renderRows as y, setMetabaseAugment as z };