@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
@@ -1,6 +1,6 @@
1
- import { H as outputFlags, U as profileFlag, p as renderSummary, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as readBody } from "./body-CshgcV6U.mjs";
1
+ import { H as connectionFlags, J as profileFlag, p as renderSummary, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { t as readBody } from "./body-CB2eDFFb.mjs";
4
4
  import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
5
5
  import { n as SetupResult, r as SetupResultCompact, t as SetupInput } from "./setup-CO7QV-ao.mjs";
6
6
  //#region src/output/views/setup.ts
@@ -1,4 +1,4 @@
1
- import { X as AbortError, st as errorMessage, tt as MetabaseError } from "./cli.mjs";
1
+ import { pt as errorMessage, rt as AbortError, st as MetabaseError } from "./cli.mjs";
2
2
  //#region ../client/src/signal.ts
3
3
  function combineAborts(...signals) {
4
4
  return AbortSignal.any(signals.filter((signal) => signal !== void 0));
@@ -1,5 +1,5 @@
1
- import { E as warn, T as listTruncationNotice } from "./cli.mjs";
2
- import { nt as RequirementFailure } from "./runtime-Dtb93zKy.mjs";
1
+ import { O as listTruncationNotice, k as warn } from "./cli.mjs";
2
+ import { et as RequirementFailure } from "./runtime-B8RtMb4B.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/output/skill-list.ts
5
5
  const UnavailableSkillJson = z.object({
@@ -1,5 +1,5 @@
1
- import { A as ENV_SKILLS_DIR, P as readEnv, Q as ConfigError, ct as isFileNotFoundError, ot as ValidationError, r as FEATURE_NAMES, s as isFeatureName, st as errorMessage } from "./cli.mjs";
2
- import { Z as checkFeatures, n as parseCsv } from "./runtime-Dtb93zKy.mjs";
1
+ import { L as readEnv, N as ENV_SKILLS_DIR, at as ConfigError, et as parseCsv, ft as ValidationError, ht as isFileNotFoundError, pt as errorMessage, r as FEATURE_NAMES, s as isFeatureName } from "./cli.mjs";
2
+ import { J as checkFeatures } from "./runtime-B8RtMb4B.mjs";
3
3
  import { z } from "zod";
4
4
  import { closeSync, openSync, readFileSync, readSync, readdirSync, statSync } from "node:fs";
5
5
  import { dirname, join, resolve } from "node:path";
@@ -7,9 +7,9 @@ var skills_default = defineCommand({
7
7
  },
8
8
  default: "list",
9
9
  subCommands: {
10
- list: () => import("./list-cIMww2Me.mjs").then((m) => m.default),
11
- get: () => import("./get-H6kInHIx.mjs").then((m) => m.default),
12
- path: () => import("./path-_GHFrTLx.mjs").then((m) => m.default)
10
+ list: () => import("./list-BPMOLrwn.mjs").then((m) => m.default),
11
+ get: () => import("./get-C73V2KsB.mjs").then((m) => m.default),
12
+ path: () => import("./path-DM4vyihl.mjs").then((m) => m.default)
13
13
  }
14
14
  });
15
15
  //#endregion
@@ -0,0 +1,19 @@
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
+ //#region src/commands/snippet/index.ts
3
+ var snippet_default = defineCommandGroup({
4
+ name: "snippet",
5
+ description: "Manage Metabase native query snippets",
6
+ skills: [{
7
+ skill: "core",
8
+ purpose: "native-SQL snippets and body input"
9
+ }],
10
+ subCommands: {
11
+ list: () => import("./list-zyKxxNvn.mjs").then((mod) => mod.default),
12
+ get: () => import("./get-BTCOzSkl.mjs").then((mod) => mod.default),
13
+ create: () => import("./create-5cDaZcRL.mjs").then((mod) => mod.default),
14
+ update: () => import("./update-MD1Kwq1P.mjs").then((mod) => mod.default),
15
+ archive: () => import("./archive-BNJit8eD.mjs").then((mod) => mod.default)
16
+ }
17
+ });
18
+ //#endregion
19
+ export { snippet_default as default };
@@ -1,9 +1,9 @@
1
- import { H as outputFlags, Q as ConfigError, U as profileFlag, p as renderSummary, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { l as SyncStashResult } from "./git-sync-BwBRmEhE.mjs";
4
- import { n as parseWaitFlags, t as gitSyncWaitFlags } from "./wait-flags-CiJGrTCT.mjs";
5
- import { s as syncStashView } from "./git-sync-TjX1r_wF.mjs";
6
- import { a as throwIfFailedTask, i as taskPollOptions, n as formatSyncTask } from "./sync-task-BtDnTXCP.mjs";
1
+ import { H as connectionFlags, J as profileFlag, at as ConfigError, p as renderSummary, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { u as SyncStashResult } from "./git-sync-COokpYgc.mjs";
4
+ import { n as parseWaitFlags, t as gitSyncWaitFlags } from "./wait-flags-KX7NHdj4.mjs";
5
+ import { l as syncStashView } from "./git-sync-DspFahwV.mjs";
6
+ import { a as throwIfFailedTask, i as taskPollOptions, n as formatSyncTask } from "./sync-task-CXFoqlpF.mjs";
7
7
  //#region src/commands/git-sync/stash.ts
8
8
  const DEFAULT_STASH_MESSAGE = "Stashed from mb CLI";
9
9
  var stash_default = defineMetabaseCommand({
@@ -1,6 +1,6 @@
1
- import { H as outputFlags, U as profileFlag, u as renderItem } from "./cli.mjs";
2
- import { C as ProbedUser, E as profileAuthMethod, T as ProfileLastFailure, X as summarizeServer, Y as ServerSummary, _ as readProfileRecord, l as resolveProfileName, q as displayUrl, t as defineMetabaseCommand, w as ProfileAuthMethod } from "./runtime-Dtb93zKy.mjs";
3
- import { a as renderUserRole, i as renderUserName, n as renderSkew, o as renderVersionTag, r as renderTimestamp, t as renderAuthMethod } from "./render-6O_eF-P1.mjs";
1
+ import { J as profileFlag, q as outputFlags, u as renderItem } from "./cli.mjs";
2
+ import { C as profileAuthMethod, K as ServerSummary, S as ProfileLastFailure, W as displayUrl, b as ProbedUser, m as readProfileRecord, o as resolveProfileName, q as summarizeServer, t as defineMetabaseCommand, x as ProfileAuthMethod } from "./runtime-B8RtMb4B.mjs";
3
+ import { a as renderUserRole, i as renderUserName, n as renderSkew, o as renderVersionTag, r as renderTimestamp, t as renderAuthMethod } from "./render-Bvm9mta6.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/auth/status.ts
6
6
  const AuthStatus = z.object({
@@ -1,8 +1,8 @@
1
- import { H as outputFlags, U as profileFlag, p as renderSummary, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { r as Collection } from "./collection-BxdPxD38.mjs";
4
- import { u as SyncTask } from "./git-sync-BwBRmEhE.mjs";
5
- import { n as formatSyncTask } from "./sync-task-BtDnTXCP.mjs";
1
+ import { H as connectionFlags, J as profileFlag, p as renderSummary, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { r as Collection } from "./collection-D3KXhvnc.mjs";
4
+ import { d as SyncTask } from "./git-sync-COokpYgc.mjs";
5
+ import { n as formatSyncTask } from "./sync-task-CXFoqlpF.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/git-sync/status.ts
8
8
  const SyncedCollection = Collection.pick({
@@ -56,12 +56,12 @@ var status_default = defineMetabaseCommand({
56
56
  examples: ["mb git-sync status", "mb git-sync status --json"],
57
57
  async run({ ctx, getClient }) {
58
58
  const mb = await getClient();
59
- const [branch, isDirty, currentTask, collections] = await Promise.all([
60
- mb.gitSync.branch(),
59
+ const [isDirty, currentTask, collections] = await Promise.all([
61
60
  mb.gitSync.isDirty(),
62
61
  mb.gitSync.currentTask(),
63
62
  mb.gitSync.syncedCollections()
64
63
  ]);
64
+ const branch = await mb.gitSync.branch();
65
65
  const syncedCollections = collections.data.map((collection) => ({
66
66
  id: collection.id,
67
67
  name: collection.name
@@ -1,4 +1,4 @@
1
- import { t as defineCommandGroup } from "./group-YQQ5GIcP.mjs";
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
2
  //#region src/commands/subscription/index.ts
3
3
  var subscription_default = defineCommandGroup({
4
4
  name: "subscription",
@@ -11,11 +11,11 @@ var subscription_default = defineCommandGroup({
11
11
  purpose: "the dashboard and dashcards a subscription delivers"
12
12
  }],
13
13
  subCommands: {
14
- list: () => import("./list-CX9qZ-bx.mjs").then((mod) => mod.default),
15
- get: () => import("./get-C_tdSMwW2.mjs").then((mod) => mod.default),
16
- create: () => import("./create-BcsVwXgS2.mjs").then((mod) => mod.default),
17
- update: () => import("./update-AJ2JmwDl.mjs").then((mod) => mod.default),
18
- archive: () => import("./archive-52ZHbFDm2.mjs").then((mod) => mod.default)
14
+ list: () => import("./list-CPWgBkPa.mjs").then((mod) => mod.default),
15
+ get: () => import("./get-YPDWhgm_2.mjs").then((mod) => mod.default),
16
+ create: () => import("./create-CG6WWY6k.mjs").then((mod) => mod.default),
17
+ update: () => import("./update-CKqL9PmU.mjs").then((mod) => mod.default),
18
+ archive: () => import("./archive-DIZu7o4C.mjs").then((mod) => mod.default)
19
19
  }
20
20
  });
21
21
  //#endregion
@@ -1,9 +1,9 @@
1
- import { B as listFlags, H as outputFlags, U as profileFlag, d as renderList, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { n as windowList } from "./window-DSb1tqSe.mjs";
5
- import { t as pulseView } from "./pulse-x0gFxWfG.mjs";
6
- import { SubscriptionListEnvelope } from "./list-CX9qZ-bx.mjs";
1
+ import { G as listFlags, H as connectionFlags, J as profileFlag, d as renderList, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
4
+ import { n as windowList } from "./window-CI_QD04s.mjs";
5
+ import { t as pulseView } from "./pulse-D1uh8UIU.mjs";
6
+ import { SubscriptionListEnvelope } from "./list-CPWgBkPa.mjs";
7
7
  //#region src/commands/dashboard/subscriptions.ts
8
8
  var subscriptions_default = defineMetabaseCommand({
9
9
  meta: {
@@ -1,8 +1,8 @@
1
- import { H as outputFlags, U as profileFlag, u as renderItem, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { s as FieldSummary } from "./field-CcN4oZy6.mjs";
5
- import { t as fieldSummaryView } from "./field-fDtIrY6D.mjs";
1
+ import { H as connectionFlags, J as profileFlag, q as outputFlags, u as renderItem } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
4
+ import { c as FieldSummary } from "./field-5nivEfd6.mjs";
5
+ import { a as fieldSummaryView } from "./field-wmN6raOG.mjs";
6
6
  //#region src/commands/field/summary.ts
7
7
  var summary_default = defineMetabaseCommand({
8
8
  meta: {
@@ -0,0 +1,32 @@
1
+ import { H as connectionFlags, J as profileFlag, p as renderSummary, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
4
+ import { g as TableSchemaSyncResult } from "./table-Ci6bhZkb.mjs";
5
+ import { o as tableSchemaSyncResultView } from "./table-CxvaDiIZ.mjs";
6
+ //#region src/commands/table/sync-schema.ts
7
+ var sync_schema_default = defineMetabaseCommand({
8
+ meta: {
9
+ name: "sync-schema",
10
+ description: "Trigger a manual schema sync for one table"
11
+ },
12
+ details: "Queues an async sync of this one table and returns immediately; the server reports no completion to wait on. The sync re-reads the table's columns, fingerprints them, and refreshes its cached field values; it never discovers new tables, so use `mb db sync-schema <db-id>` for a table the warehouse just gained. A warehouse the server cannot connect to is refused with a 422. To sync a set of tables use `mb table bulk-sync-schema`.",
13
+ requires: ["table.syncSchema"],
14
+ args: {
15
+ ...outputFlags,
16
+ ...profileFlag,
17
+ ...connectionFlags,
18
+ id: {
19
+ type: "positional",
20
+ description: "Table id",
21
+ required: true
22
+ }
23
+ },
24
+ outputSchema: TableSchemaSyncResult,
25
+ examples: ["mb table sync-schema 42", "mb table sync-schema 42 --json"],
26
+ async run({ args, ctx, getClient }) {
27
+ const id = parseId(args.id);
28
+ renderSummary(await (await getClient()).table.syncSchema(id), tableSchemaSyncResultView, `Schema sync queued for table ${id}.`, ctx);
29
+ }
30
+ });
31
+ //#endregion
32
+ export { sync_schema_default as default };
@@ -1,9 +1,9 @@
1
- import { H as outputFlags, U as profileFlag, p as renderSummary, z as connectionFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-Dtb93zKy.mjs";
3
- import { t as parseId } from "./parse-id-DtM6q9HU.mjs";
4
- import { a as DatabaseSyncResult } from "./database-JtHTqSpq.mjs";
5
- import { t as databaseSyncResultView } from "./database-C3E9PZSx.mjs";
6
- import { i as waitFlags, n as parseWaitFlags } from "./wait-flags-CiJGrTCT.mjs";
1
+ import { H as connectionFlags, J as profileFlag, p as renderSummary, q as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
3
+ import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
4
+ import { a as DatabaseSyncResult } from "./database-BT7DVgSr.mjs";
5
+ import { t as databaseSyncResultView } from "./database-Kq2AL5jH.mjs";
6
+ import { i as waitFlags, n as parseWaitFlags } from "./wait-flags-KX7NHdj4.mjs";
7
7
  //#region src/commands/db/sync-schema.ts
8
8
  var sync_schema_default = defineMetabaseCommand({
9
9
  meta: {
@@ -0,0 +1,53 @@
1
+ import { d as SyncTask, p as isSyncTaskFailed } from "./git-sync-COokpYgc.mjs";
2
+ import { z } from "zod";
3
+ //#region src/commands/git-sync/sync-task.ts
4
+ const SyncTaskIdle = z.object({ status: z.literal("idle") });
5
+ const SyncTaskOrIdle = z.union([SyncTask, SyncTaskIdle]);
6
+ const syncTaskIdleView = {
7
+ compactPick: SyncTaskIdle,
8
+ tableColumns: [{
9
+ key: "status",
10
+ label: "Status"
11
+ }]
12
+ };
13
+ function taskPollOptions(schedule) {
14
+ return {
15
+ ...schedule,
16
+ backoff: "exponential"
17
+ };
18
+ }
19
+ const CONFLICT_REMEDY = "The server now counts the remote's commit as synced, so a retry, --merge included, would not see its changes: keep one side with import --force or export --force, or push Metabase's side to a new branch with create-branch then export.";
20
+ const DIVERGED_EXPORT = "the remote branch moved past the last sync";
21
+ function throwIfFailedTask(final, verb) {
22
+ if (final === null || !isSyncTaskFailed(final.status)) return;
23
+ const failure = withDetail(`git-sync ${verb} ${final.status}`, taskDetail(final));
24
+ if (final.status === "conflict") throw new Error(`${sentence(failure)} ${CONFLICT_REMEDY}`);
25
+ throw new Error(failure);
26
+ }
27
+ function taskDetail(task) {
28
+ if (task.error_message) return task.error_message;
29
+ const conflicts = task.conflicts ?? null;
30
+ if (conflicts !== null && conflicts.length > 0) return conflicts.join("; ");
31
+ if (task.status === "conflict" && task.sync_task_type === "export") return DIVERGED_EXPORT;
32
+ return null;
33
+ }
34
+ function withDetail(head, detail) {
35
+ return detail === null ? head : `${head}: ${detail}`;
36
+ }
37
+ function sentence(text) {
38
+ return text.endsWith(".") ? text : `${text}.`;
39
+ }
40
+ function formatSyncTask(task) {
41
+ const label = `${task.sync_task_type === "export" ? "Export" : "Import"} task #${task.id}`;
42
+ const detail = taskDetail(task);
43
+ switch (task.status) {
44
+ case "running": return `${label} is running${task.progress === null ? "" : ` (${Math.round(task.progress * 100)}%)`}.`;
45
+ case "successful": return `${label} succeeded.`;
46
+ case "errored": return sentence(withDetail(`${label} errored`, detail));
47
+ case "timed-out": return sentence(withDetail(`${label} timed out`, detail));
48
+ case "conflict": return sentence(withDetail(`${label} hit conflicts`, detail));
49
+ case "cancelled": return `${label} was cancelled.`;
50
+ }
51
+ }
52
+ //#endregion
53
+ export { throwIfFailedTask as a, taskPollOptions as i, formatSyncTask as n, syncTaskIdleView as r, SyncTaskOrIdle as t };
@@ -1,4 +1,4 @@
1
- import { r as FieldCompact, t as Field } from "./field-CcN4oZy6.mjs";
1
+ import { r as FieldCompact, t as Field } from "./field-5nivEfd6.mjs";
2
2
  import { z } from "zod";
3
3
  //#region ../client/src/domain/table.ts
4
4
  const TableEntityType = z.enum([
@@ -30,7 +30,7 @@ const Table = z.object({
30
30
  schema: z.string().nullable(),
31
31
  entity_type: TableEntityType.nullable(),
32
32
  visibility_type: TableVisibilityType.nullable().optional(),
33
- active: z.boolean().optional(),
33
+ active: z.boolean(),
34
34
  is_published: z.boolean().optional(),
35
35
  collection_id: z.number().int().nullable().optional(),
36
36
  fields: z.array(Field).optional()
@@ -45,8 +45,10 @@ const TableCompact = Table.pick({
45
45
  db_id: true,
46
46
  schema: true,
47
47
  entity_type: true,
48
+ active: true,
48
49
  is_published: true
49
50
  }).strip().extend({ fields: z.array(FieldCompact).optional() });
51
+ const TableQueryMetadataCompact = TableCompact.extend({ fields: z.array(FieldCompact) });
50
52
  const TableDataAuthority = z.enum([
51
53
  "unconfigured",
52
54
  "authoritative",
@@ -89,32 +91,53 @@ const TableUpdateInput = z.object({
89
91
  owner_user_id: z.number().int().nullable().optional(),
90
92
  collection_id: z.number().int().positive().nullable().optional()
91
93
  }).loose();
92
- z.object({
94
+ const TableSchemaId = z.string().regex(/^[1-9]\d{0,17}:[^:]*$/, { error: "expected a schema id \"<db-id>:<schema>\" with a positive database id" });
95
+ const TableSelectors = z.object({
93
96
  database_ids: z.array(z.number().int().positive()).optional(),
94
- schema_ids: z.array(z.string().min(1)).optional(),
97
+ schema_ids: z.array(TableSchemaId).optional(),
95
98
  table_ids: z.array(z.number().int().positive()).optional()
96
- }).extend({
99
+ }).strict();
100
+ const TableBulkEditFields = z.object({
97
101
  data_authority: TableDataAuthority.nullable().optional(),
98
102
  data_source: TableDataSource.nullable().optional(),
99
103
  data_layer: TableDataLayerTier.nullable().optional(),
100
104
  entity_type: TableEntityType.nullable().optional(),
101
105
  owner_email: z.string().nullable().optional(),
102
- owner_user_id: z.number().int().nullable().optional()
103
- }).strict();
106
+ owner_user_id: z.number().int().positive().nullable().optional()
107
+ });
108
+ const TableBulkEditInput = TableSelectors.extend(TableBulkEditFields.shape).strict();
109
+ const TableSchemaSyncResult = z.object({
110
+ id: z.number().int(),
111
+ status: z.literal("ok")
112
+ });
113
+ const TableFieldValuesResult = z.object({
114
+ id: z.number().int(),
115
+ status: z.literal("success")
116
+ });
117
+ const TableSelectionResult = TableSelectors.extend({ accepted: z.literal(true) }).strict();
118
+ const TableBulkEditResult = TableBulkEditInput.extend({ accepted: z.literal(true) }).strict();
119
+ const TableForeignKeyEnd = Field.extend({ table: Table });
104
120
  const TableForeignKey = z.object({
105
121
  relationship: z.literal("Mt1"),
106
122
  origin_id: z.number().int(),
107
- origin: Field,
123
+ origin: TableForeignKeyEnd,
108
124
  destination_id: z.number().int(),
109
- destination: Field
125
+ destination: TableForeignKeyEnd
110
126
  }).loose();
111
- TableForeignKey.pick({
127
+ const TableForeignKeyOriginCompact = FieldCompact.extend({ table: Table.pick({
128
+ id: true,
129
+ name: true,
130
+ display_name: true,
131
+ schema: true,
132
+ db_id: true
133
+ }).strip() });
134
+ const TableForeignKeyCompact = TableForeignKey.pick({
112
135
  relationship: true,
113
136
  origin_id: true,
114
137
  destination_id: true
115
138
  }).strip().extend({
116
- origin: FieldCompact,
139
+ origin: TableForeignKeyOriginCompact,
117
140
  destination: FieldCompact
118
141
  });
119
142
  //#endregion
120
- export { TableGetInclude as a, TableVisibilityType as c, TableForeignKey as i, TableCompact as n, TableQueryMetadata as o, TableDataLayerTier as r, TableUpdateInput as s, Table as t };
143
+ export { TableSelectionResult as _, TableCompact as a, TableVisibilityType as b, TableDataSource as c, TableForeignKeyCompact as d, TableGetInclude as f, TableSchemaSyncResult as g, TableSchemaId as h, TableBulkEditResult as i, TableFieldValuesResult as l, TableQueryMetadataCompact as m, TableBulkEditFields as n, TableDataLayer as o, TableQueryMetadata as p, TableBulkEditInput as r, TableDataLayerTier as s, Table as t, TableForeignKey as u, TableSelectors as v, TableUpdateInput as y };
@@ -0,0 +1,155 @@
1
+ import { _ as MALFORMED_CELL } from "./cli.mjs";
2
+ import { r as FieldCompact } from "./field-5nivEfd6.mjs";
3
+ import { _ as TableSelectionResult, a as TableCompact, d as TableForeignKeyCompact, g as TableSchemaSyncResult, i as TableBulkEditResult, l as TableFieldValuesResult, n as TableBulkEditFields, v as TableSelectors } from "./table-Ci6bhZkb.mjs";
4
+ import { z } from "zod";
5
+ //#region src/output/views/table.ts
6
+ function formatFieldName(value) {
7
+ const parsed = FieldCompact.safeParse(value);
8
+ return parsed.success ? parsed.data.name : MALFORMED_CELL;
9
+ }
10
+ function formatOriginField(value) {
11
+ const parsed = TableForeignKeyCompact.shape.origin.safeParse(value);
12
+ if (!parsed.success) return MALFORMED_CELL;
13
+ const { table, name } = parsed.data;
14
+ return `${table.schema ? `${table.schema}.${table.name}` : table.name}.${name}`;
15
+ }
16
+ const tableView = {
17
+ compactPick: TableCompact,
18
+ tableColumns: [
19
+ {
20
+ key: "id",
21
+ label: "ID"
22
+ },
23
+ {
24
+ key: "db_id",
25
+ label: "DB"
26
+ },
27
+ {
28
+ key: "schema",
29
+ label: "Schema"
30
+ },
31
+ {
32
+ key: "name",
33
+ label: "Name"
34
+ },
35
+ {
36
+ key: "display_name",
37
+ label: "Display Name"
38
+ },
39
+ {
40
+ key: "description",
41
+ label: "Description"
42
+ },
43
+ {
44
+ key: "active",
45
+ label: "Active"
46
+ },
47
+ {
48
+ key: "is_published",
49
+ label: "Published"
50
+ }
51
+ ]
52
+ };
53
+ const tableForeignKeyView = {
54
+ compactPick: TableForeignKeyCompact,
55
+ tableColumns: [
56
+ {
57
+ key: "origin_id",
58
+ label: "Origin ID"
59
+ },
60
+ {
61
+ key: "origin",
62
+ label: "Origin Field",
63
+ format: formatOriginField
64
+ },
65
+ {
66
+ key: "destination_id",
67
+ label: "Destination ID"
68
+ },
69
+ {
70
+ key: "destination",
71
+ label: "Destination Field",
72
+ format: formatFieldName
73
+ },
74
+ {
75
+ key: "relationship",
76
+ label: "Relationship"
77
+ }
78
+ ]
79
+ };
80
+ const SYNC_RESULT_COLUMNS = [{
81
+ key: "id",
82
+ label: "Table"
83
+ }, {
84
+ key: "status",
85
+ label: "Status"
86
+ }];
87
+ const tableSchemaSyncResultView = {
88
+ compactPick: TableSchemaSyncResult,
89
+ tableColumns: [...SYNC_RESULT_COLUMNS]
90
+ };
91
+ const tableFieldValuesResultView = {
92
+ compactPick: TableFieldValuesResult,
93
+ tableColumns: [...SYNC_RESULT_COLUMNS]
94
+ };
95
+ const TableValuesDiscardResult = z.object({
96
+ id: z.number().int(),
97
+ discarded: z.boolean(),
98
+ aborted: z.boolean()
99
+ });
100
+ const tableValuesDiscardResultView = {
101
+ compactPick: TableValuesDiscardResult,
102
+ tableColumns: [
103
+ {
104
+ key: "id",
105
+ label: "Table"
106
+ },
107
+ {
108
+ key: "discarded",
109
+ label: "Discarded"
110
+ },
111
+ {
112
+ key: "aborted",
113
+ label: "Aborted"
114
+ }
115
+ ]
116
+ };
117
+ const SELECTOR_COLUMNS = TableSelectors.keyof().options.map((key) => ({ key }));
118
+ const tableSelectionResultView = {
119
+ compactPick: TableSelectionResult,
120
+ tableColumns: [{
121
+ key: "accepted",
122
+ label: "Accepted"
123
+ }, ...SELECTOR_COLUMNS]
124
+ };
125
+ const TableSelectionDiscardResult = TableSelectionResult.extend({
126
+ accepted: z.boolean(),
127
+ aborted: z.boolean()
128
+ });
129
+ const tableSelectionDiscardResultView = {
130
+ compactPick: TableSelectionDiscardResult,
131
+ tableColumns: [
132
+ {
133
+ key: "accepted",
134
+ label: "Accepted"
135
+ },
136
+ {
137
+ key: "aborted",
138
+ label: "Aborted"
139
+ },
140
+ ...SELECTOR_COLUMNS
141
+ ]
142
+ };
143
+ const tableBulkEditResultView = {
144
+ compactPick: TableBulkEditResult,
145
+ tableColumns: [
146
+ {
147
+ key: "accepted",
148
+ label: "Accepted"
149
+ },
150
+ ...SELECTOR_COLUMNS,
151
+ ...TableBulkEditFields.keyof().options.map((key) => ({ key }))
152
+ ]
153
+ };
154
+ //#endregion
155
+ export { tableForeignKeyView as a, tableSelectionResultView as c, tableFieldValuesResultView as i, tableValuesDiscardResultView as l, TableValuesDiscardResult as n, tableSchemaSyncResultView as o, tableBulkEditResultView as r, tableSelectionDiscardResultView as s, TableSelectionDiscardResult as t, tableView as u };
@@ -0,0 +1,26 @@
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
+ //#region src/commands/table/index.ts
3
+ var table_default = defineCommandGroup({
4
+ name: "table",
5
+ description: "Manage Metabase tables",
6
+ skills: [{
7
+ skill: "metadata",
8
+ purpose: "table and column metadata, semantic types, visibility"
9
+ }],
10
+ subCommands: {
11
+ list: () => import("./list-DA9KsA0o.mjs").then((m) => m.default),
12
+ get: () => import("./get-DTTsPd-c.mjs").then((m) => m.default),
13
+ fields: () => import("./fields-C-au1eLO.mjs").then((m) => m.default),
14
+ fks: () => import("./fks-83QIm8xb.mjs").then((m) => m.default),
15
+ update: () => import("./update-BFYRBbRu.mjs").then((m) => m.default),
16
+ "sync-schema": () => import("./sync-schema-Cc21crxQ.mjs").then((m) => m.default),
17
+ "rescan-values": () => import("./rescan-values-7VOGCLMe.mjs").then((m) => m.default),
18
+ "discard-values": () => import("./discard-values-DKnP-JHr.mjs").then((m) => m.default),
19
+ "bulk-edit": () => import("./bulk-edit-oUCfDQ_M.mjs").then((m) => m.default),
20
+ "bulk-sync-schema": () => import("./bulk-sync-schema-tRp7jBJt.mjs").then((m) => m.default),
21
+ "bulk-rescan-values": () => import("./bulk-rescan-values-B8pNlXUH.mjs").then((m) => m.default),
22
+ "bulk-discard-values": () => import("./bulk-discard-values-DfKXuZpR.mjs").then((m) => m.default)
23
+ }
24
+ });
25
+ //#endregion
26
+ export { table_default as default };
@@ -0,0 +1,42 @@
1
+ import { W as listFlag, at as ConfigError } from "./cli.mjs";
2
+ import { n as parseIdCsv } from "./parse-id-7ja3HUdB.mjs";
3
+ import { h as TableSchemaId, v as TableSelectors } from "./table-Ci6bhZkb.mjs";
4
+ //#region src/commands/table-selector-flags.ts
5
+ const tableSelectorFlags = {
6
+ "table-ids": listFlag({
7
+ type: "string",
8
+ description: "Comma-separated table ids"
9
+ }),
10
+ "db-ids": listFlag({
11
+ type: "string",
12
+ description: "Comma-separated database ids"
13
+ }),
14
+ schemas: listFlag({
15
+ type: "string",
16
+ description: "Comma-separated schema ids, each \"<db-id>:<schema>\" (e.g. 1:public; 1: for the tables with no schema)"
17
+ })
18
+ };
19
+ const SELECTOR_FLAGS = {
20
+ table_ids: "table-ids",
21
+ database_ids: "db-ids",
22
+ schema_ids: "schemas"
23
+ };
24
+ const SELECTION_DETAILS = "Select with --table-ids, --db-ids, or --schemas (each schema id is \"<db-id>:<schema>\", e.g. 1:public, and 1: selects the tables of database 1 that have no schema); the selectors are unioned. Only an admin or a data analyst may call it; anyone else gets a 403. The server answers the same whether or not a selector matched a table, so the output restates the accepted request and cannot say which tables were affected.";
25
+ function selectionSummary(action, selectors) {
26
+ return `${action} accepted for the tables selected by ${TableSelectors.keyof().options.filter((key) => selectors[key] !== void 0).map((key) => `--${SELECTOR_FLAGS[key]}`).join(", ")}; the server does not report which tables matched.`;
27
+ }
28
+ function parseSchemaId(part) {
29
+ const value = part.trim();
30
+ if (!TableSchemaId.safeParse(value).success) throw new ConfigError(`invalid schema id: "${value}" (expected "<db-id>:<schema>" with a positive database id)`);
31
+ return value;
32
+ }
33
+ function parseTableSelectors(args) {
34
+ const selectors = {};
35
+ if (args["table-ids"] !== void 0) selectors.table_ids = parseIdCsv(args["table-ids"], "table id");
36
+ if (args["db-ids"] !== void 0) selectors.database_ids = parseIdCsv(args["db-ids"], "database id");
37
+ if (args.schemas !== void 0) selectors.schema_ids = args.schemas.split(",").map(parseSchemaId);
38
+ if (Object.keys(selectors).length === 0) throw new ConfigError("provide at least one selector: --table-ids, --db-ids, or --schemas");
39
+ return selectors;
40
+ }
41
+ //#endregion
42
+ export { tableSelectorFlags as i, parseTableSelectors as n, selectionSummary as r, SELECTION_DETAILS as t };
@@ -0,0 +1,6 @@
1
+ import { x as NOT_BLANK } from "./cli.mjs";
2
+ import { z } from "zod";
3
+ //#region ../client/src/domain/text.ts
4
+ const NonBlankText = z.string().regex(NOT_BLANK, "must not be blank");
5
+ //#endregion
6
+ export { NonBlankText as t };
@@ -0,0 +1,21 @@
1
+ import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
2
+ //#region src/commands/timeline/index.ts
3
+ var timeline_default = defineCommandGroup({
4
+ name: "timeline",
5
+ description: "Manage Metabase timelines (event annotations for time-series charts)",
6
+ skills: [{
7
+ skill: "core",
8
+ purpose: "collection scoping — events render only on questions in the timeline's collection"
9
+ }],
10
+ subCommands: {
11
+ list: () => import("./list-BTcEm4td.mjs").then((mod) => mod.default),
12
+ get: () => import("./get-C-R_Fdsi.mjs").then((mod) => mod.default),
13
+ events: () => import("./events-BzCjVA3-.mjs").then((mod) => mod.default),
14
+ create: () => import("./create-D_pNX7d0.mjs").then((mod) => mod.default),
15
+ update: () => import("./update-D7xi-0bU.mjs").then((mod) => mod.default),
16
+ archive: () => import("./archive-CL8wqAzm.mjs").then((mod) => mod.default),
17
+ delete: () => import("./delete-CYgNpHl7.mjs").then((mod) => mod.default)
18
+ }
19
+ });
20
+ //#endregion
21
+ export { timeline_default as default };