@metabase/cli 0.3.2 → 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.
- package/dist/{add-collection-BjVAdZ1n.mjs → add-collection-B-Kczwcj.mjs} +5 -5
- package/dist/{alert-DCLhfwdv.mjs → alert-Ne0ivd5m.mjs} +7 -7
- package/dist/{alerts-DRin_wt2.mjs → alerts-Fakzg9iP.mjs} +6 -6
- package/dist/{append-DQ9rPJHZ.mjs → append-DCDVqPmR.mjs} +4 -4
- package/dist/archive-55sDfnHf.mjs +32 -0
- package/dist/{archive-_c-ISZmi.mjs → archive-BNJit8eD.mjs} +3 -3
- package/dist/{archive-o5cWV3vZ.mjs → archive-BbNqts-V.mjs} +3 -3
- package/dist/{archive-D6xzHaM3.mjs → archive-C93UR4Uc.mjs} +3 -3
- package/dist/{archive-BzVxRqpL.mjs → archive-CGmvQht4.mjs} +5 -5
- package/dist/{archive-COFQAHAL.mjs → archive-CL8wqAzm.mjs} +3 -3
- package/dist/{archive-BVRKE9Ev.mjs → archive-CSdktxvW.mjs} +5 -5
- package/dist/{archive-D3yPvUtz.mjs → archive-CpCSY4RT.mjs} +5 -5
- package/dist/{archive-xcgoVPwv.mjs → archive-DCCkQTjQ.mjs} +5 -5
- package/dist/{archive-BPCgmLcV.mjs → archive-DCE087yD.mjs} +4 -4
- package/dist/{archive-1YVo-Wsu.mjs → archive-DEef7eB8.mjs} +3 -3
- package/dist/{archive-HeRygdKz2.mjs → archive-DIZu7o4C.mjs} +4 -4
- package/dist/{auth-DJn5T6zA.mjs → auth-Bx4QQhqt.mjs} +5 -5
- package/dist/body-CB2eDFFb.mjs +17 -0
- package/dist/branch-flag-pFQPNYKr.mjs +9 -0
- package/dist/{branches-CUyPxeeW.mjs → branches-B6ilUG-7.mjs} +3 -3
- package/dist/breaking-Dg3-8yDF.mjs +36 -0
- package/dist/broken-BNBD4Eo3.mjs +37 -0
- package/dist/bulk-discard-values-DfKXuZpR.mjs +49 -0
- package/dist/bulk-edit-oUCfDQ_M.mjs +53 -0
- package/dist/bulk-rescan-values-B8pNlXUH.mjs +28 -0
- package/dist/bulk-sync-schema-tRp7jBJt.mjs +28 -0
- package/dist/{cancel-BNuVls58.mjs → cancel-Bl4BMkwI.mjs} +3 -3
- package/dist/{cancel-task-DUmlQQpi.mjs → cancel-task-CWWo7vLf.mjs} +4 -4
- package/dist/card-CQD4D8mw.mjs +25 -0
- package/dist/{card-CEkp1mcI.mjs → card-CQNUT9pm.mjs} +1 -1
- package/dist/{card-voh1k4hl.mjs → card-P5mBknsl.mjs} +3 -11
- package/dist/{cards-_gbvw3wp.mjs → cards-BIUYdSIR.mjs} +6 -6
- package/dist/cli.mjs +420 -100
- package/dist/{client-BnK0evYf.mjs → client-BHIFvEg2.mjs} +394 -316
- package/dist/{collection-DYM0p3Xl.mjs → collection-BG3Ksea-.mjs} +1 -1
- package/dist/collection-CuaTd10G.mjs +21 -0
- package/dist/{collection-BxdPxD38.mjs → collection-D3KXhvnc.mjs} +7 -5
- package/dist/{collection-namespace-DM90lA8C.mjs → collection-namespace-ZQePD67z.mjs} +2 -2
- package/dist/{content-translation-CqB3peU9.mjs → content-translation-BRdNdAmn.mjs} +3 -3
- package/dist/copy-BMEaYmTb.mjs +55 -0
- package/dist/copy-CbDfVZRC.mjs +36 -0
- package/dist/copy-flags-anRhAvB5.mjs +32 -0
- package/dist/{create-BIUVvIGH.mjs → create-5cDaZcRL.mjs} +3 -3
- package/dist/{create-CwXUMOMd.mjs → create-BEN-2XFK.mjs} +3 -3
- package/dist/create-BJG630xB.mjs +48 -0
- package/dist/{create-IFjwHs0G.mjs → create-BTQB1lqX.mjs} +4 -4
- package/dist/{create-BMKuihoI.mjs → create-C3TmU1Bi.mjs} +6 -6
- package/dist/create-C7O9tPL2.mjs +34 -0
- package/dist/{create-DVo8-IzZ.mjs → create-C8hsOv_D.mjs} +6 -6
- package/dist/{create-DNx9TGHs.mjs → create-CBSsW8Hm.mjs} +6 -6
- package/dist/{create-Cm9Z-rfe2.mjs → create-CG6WWY6k.mjs} +4 -4
- package/dist/{create-BSvTs-EV.mjs → create-D2Shlb7t.mjs} +3 -3
- package/dist/{create-DMVw9nrZ.mjs → create-DVEqry26.mjs} +4 -4
- package/dist/{create-B48rmY8v.mjs → create-D_pNX7d0.mjs} +3 -3
- package/dist/{create-D4Y69cDF.mjs → create-R0Q-nRlq.mjs} +4 -4
- package/dist/{create-CUHpxANR.mjs → create-SqmOf6WQ.mjs} +6 -6
- package/dist/{create-branch-Cw-uXows.mjs → create-branch-Cb3CWojg.mjs} +4 -4
- package/dist/{create-CnJKj9Nl.mjs → create-c2zR9y4J.mjs} +4 -4
- package/dist/{create-va8bByVt.mjs → create-xt4ff6fP.mjs} +3 -3
- package/dist/{create-B7S5fCkD.mjs → create-zpJIRn9j.mjs} +5 -5
- package/dist/{csv-CaKx1oFZ.mjs → csv-CRNOhy4X.mjs} +4 -4
- package/dist/{current-task-lGh69Z1i.mjs → current-task-DFo1ZJ51.mjs} +4 -4
- package/dist/dashboard-D11YAa7I.mjs +35 -0
- package/dist/{dashboard-D0hwTC-f.mjs → dashboard-Phz3XpRM.mjs} +2 -1
- package/dist/{dashboard-DgK81azj.mjs → dashboard-XSTr9QCr.mjs} +6 -2
- package/dist/data-action-BiHjjVjc.mjs +24 -0
- package/dist/data-action-DZxVB_hD.mjs +85 -0
- package/dist/data-action-R9qxJDPA.mjs +40 -0
- package/dist/database-BT7DVgSr.mjs +45 -0
- package/dist/{database-C3E9PZSx.mjs → database-Kq2AL5jH.mjs} +1 -1
- package/dist/dataset-BmvCxGoE.mjs +66 -0
- package/dist/{db-BRHPjshe.mjs → db-C8lj73Dz.mjs} +7 -7
- package/dist/delete-09O7BTNw.mjs +44 -0
- package/dist/{delete-Ci0aDYpf.mjs → delete-CYgNpHl7.mjs} +4 -4
- package/dist/{delete-G6EiGn2Q.mjs → delete-D_ZNoYVv.mjs} +4 -4
- package/dist/{delete-BxBadE3q.mjs → delete-HWeQtc4M.mjs} +4 -4
- package/dist/delete-I4eFpsed.mjs +44 -0
- package/dist/{delete-DMETa-37.mjs → delete-My8TX-B2.mjs} +4 -4
- package/dist/{delete-CQWCfqHf.mjs → delete-qwdN0N7e.mjs} +4 -4
- package/dist/delete-runtime-BbmRg_in.mjs +55 -0
- package/dist/{delete-table-N4rZtt1T.mjs → delete-table-BCvjX7bh.mjs} +4 -4
- package/dist/{dependencies-edN0P1SS.mjs → dependencies-BAE4YPXX.mjs} +5 -5
- package/dist/dependency-CIam7zmr.mjs +15 -0
- package/dist/dependency-DzLH3J8P.mjs +165 -0
- package/dist/dependency-zElFM-os.mjs +111 -0
- package/dist/dependents-Dv6tLdSs.mjs +52 -0
- package/dist/{dirty-U51bMoCP.mjs → dirty-CZORg0i0.mjs} +5 -5
- package/dist/discard-values-DKnP-JHr.mjs +55 -0
- package/dist/{document-CA0Q6lqu.mjs → document-C18b5rM6.mjs} +1 -1
- package/dist/{document-BHpLJbKU.mjs → document-DFCj1Az_.mjs} +2 -1
- package/dist/document-uxz96Lah.mjs +20 -0
- package/dist/{download-BJA6k-e6.mjs → download-BImtTll0.mjs} +2 -2
- package/dist/{eid-BtlRU1E0.mjs → eid-D0FxhT9H.mjs} +11 -10
- package/dist/entity-DWp9WJbU.mjs +20 -0
- package/dist/entry-flags-3sDWwa90.mjs +42 -0
- package/dist/{events-B5rnOo-L.mjs → events-BzCjVA3-.mjs} +4 -4
- package/dist/execute-BhHbkBqf.mjs +45 -0
- package/dist/export-CjqjDnaZ.mjs +74 -0
- package/dist/export-flags-BETJHNcw.mjs +81 -0
- package/dist/export-preflight-DzvIP6TB.mjs +35 -0
- package/dist/{field-CcN4oZy6.mjs → field-5nivEfd6.mjs} +33 -3
- package/dist/field-fBpiGiqr.mjs +21 -0
- package/dist/field-wmN6raOG.mjs +128 -0
- package/dist/{fields-zQ6O_W_H.mjs → fields-C-au1eLO.mjs} +6 -6
- package/dist/filter-flags-BIFcA2TT.mjs +72 -0
- package/dist/fks-83QIm8xb.mjs +36 -0
- package/dist/{get-93wuhTn2.mjs → get-BMHbEGbr.mjs} +4 -4
- package/dist/{get-DXwlZjw0.mjs → get-BTCOzSkl.mjs} +3 -3
- package/dist/{get-CekXFP3x.mjs → get-BawLhSwW.mjs} +3 -3
- package/dist/{get-BLjcCXp8.mjs → get-BjqqFG2m.mjs} +3 -3
- package/dist/{get-is8x5f2n.mjs → get-C-R_Fdsi.mjs} +3 -3
- package/dist/{get-DC_huYD8.mjs → get-C73V2KsB.mjs} +5 -5
- package/dist/{get-CG6G-mzV.mjs → get-C9sq2boy.mjs} +5 -5
- package/dist/{get-Cf6a4fFN.mjs → get-Cggv6yLC.mjs} +4 -4
- package/dist/{get-xPv7e5Ez.mjs → get-CkXc0Xld.mjs} +5 -5
- package/dist/{get-BLcS4il2.mjs → get-CqNEVAX_2.mjs} +3 -3
- package/dist/{get-DhpMuTSt.mjs → get-D7h7uH4k.mjs} +5 -5
- package/dist/get-DGmE5fmp.mjs +31 -0
- package/dist/{get-EFsmL4le.mjs → get-DTTsPd-c.mjs} +5 -5
- package/dist/{get-CeSQptdl.mjs → get-DXBXhPrU.mjs} +5 -5
- package/dist/{get-CTp5l7aU.mjs → get-D_v1IAL1.mjs} +3 -3
- package/dist/{get-BDrmBZ1z.mjs → get-DkzO3G5p.mjs} +5 -5
- package/dist/{get-Dg-S07ri.mjs → get-Dvr_69L7.mjs} +3 -3
- package/dist/get-NOMvMvYJ.mjs +36 -0
- package/dist/{get-BSoMWp4t2.mjs → get-YPDWhgm_2.mjs} +4 -4
- package/dist/{get-CwiJWeH4.mjs → get-Z36_0HX_.mjs} +4 -4
- package/dist/{get-run-DwY4sFGy.mjs → get-run-v1QHn-Mx.mjs} +4 -4
- package/dist/{git-sync-BwBRmEhE.mjs → git-sync-COokpYgc.mjs} +12 -3
- package/dist/git-sync-DspFahwV.mjs +165 -0
- package/dist/git-sync-VAqASCQ5.mjs +29 -0
- package/dist/glossary-BlNCrYbw.mjs +30 -0
- package/dist/glossary-Brnk2PBi.mjs +14 -0
- package/dist/glossary-LmZWwCNP.mjs +21 -0
- package/dist/graph-B6OliqnW.mjs +34 -0
- package/dist/{group-YQQ5GIcP.mjs → group-bpD_KcjA.mjs} +1 -1
- package/dist/{has-remote-changes-DE2_14FK.mjs → has-remote-changes-iTRCU9j0.mjs} +4 -4
- package/dist/{import-Cs7wk058.mjs → import-CdSs5CtT.mjs} +19 -8
- package/dist/{input-DEvkIjGr.mjs → input-D8qW-KtR.mjs} +6 -2
- package/dist/{is-dirty-XqDfqXGi.mjs → is-dirty-B5fj9NeS.mjs} +2 -2
- package/dist/{items-BloAjPwA.mjs → items-BxWnNEh7.mjs} +8 -8
- package/dist/{key-PYetuQ13.mjs → key-BynJSK9u.mjs} +1 -1
- package/dist/{library-Dgq_5BFh.mjs → library-BHHgurW0.mjs} +5 -5
- package/dist/{library-PGCfm0UA.mjs → library-BOv5SY24.mjs} +1 -1
- package/dist/{library-BPIzb3K_.mjs → library-Ck0EK5bi.mjs} +4 -2
- package/dist/{list-D9d5ocYi.mjs → list-BPMOLrwn.mjs} +5 -5
- package/dist/{list-D04uiS3F.mjs → list-BTcEm4td.mjs} +3 -3
- package/dist/{list-CghNKfYJ.mjs → list-BTgAbqeS.mjs} +4 -4
- package/dist/{list-3ErmGdY0.mjs → list-Bop1NTbU.mjs} +6 -6
- package/dist/{list-yV6CyPzn.mjs → list-By9XJRiv.mjs} +3 -3
- package/dist/list-CNC-XHbN.mjs +35 -0
- package/dist/{list-CUJ1wem9.mjs → list-CPWgBkPa.mjs} +4 -4
- package/dist/{list-sdCIS2Df.mjs → list-Cpa0Se7M.mjs} +5 -5
- package/dist/list-DA9KsA0o.mjs +101 -0
- package/dist/{list-VzrtA9lt.mjs → list-DE9gYY3I.mjs} +3 -3
- package/dist/{list-CUXlZiS1.mjs → list-DFJt2-fY.mjs} +4 -4
- package/dist/{list-BZnf3RmA.mjs → list-DUcnAb1h.mjs} +3 -3
- package/dist/{list-vsXIMssK.mjs → list-DW4-u7eO.mjs} +5 -5
- package/dist/{list-f8Csdjyc.mjs → list-DbXnSL2x.mjs} +5 -5
- package/dist/list-DgsM9YQX.mjs +28 -0
- package/dist/{list-BfLo1xI8.mjs → list-Dzzt6Yee.mjs} +3 -3
- package/dist/{list-CZCaqPoo.mjs → list-ZHLsjxXg.mjs} +6 -6
- package/dist/{list-Bzm5mXRo.mjs → list-e7yvJYMw.mjs} +3 -3
- package/dist/{list-DboUvg-Y.mjs → list-hN_Tu2T6.mjs} +6 -6
- package/dist/{list-DuJezLm_.mjs → list-zyKxxNvn.mjs} +3 -3
- package/dist/{login-Vw51Gts5.mjs → login-B7nGQDZK.mjs} +6 -6
- package/dist/{logout-BDIqoVhv.mjs → logout-pZffAh1G.mjs} +2 -2
- package/dist/{measure-LY9Tp9QZ.mjs → measure-AtnrCTCC.mjs} +6 -6
- package/dist/moderation-review-BdqEH6N1.mjs +31 -0
- package/dist/{notification-DVrLkjFT.mjs → notification-DOYdl0ao.mjs} +1 -1
- package/dist/{parameter-values-DWjmO7Ai.mjs → parameter-values-CxTkEjCs.mjs} +3 -3
- package/dist/{parse-enum-Dc0dMZ3P.mjs → parse-enum-CLIXMsd8.mjs} +1 -1
- package/dist/parse-id-7ja3HUdB.mjs +13 -0
- package/dist/{parse-ref-DTDld_LJ.mjs → parse-ref-Cw5fa4FI.mjs} +1 -1
- package/dist/parse-text-T0lTXzTZ.mjs +11 -0
- package/dist/{path-BUUAGYO5.mjs → path-DM4vyihl.mjs} +4 -4
- package/dist/{poll-CZeXepUQ.mjs → poll-Dz4tUm2f.mjs} +2 -2
- package/dist/{preflight-DcULqq8E.mjs → preflight-DaZ2z2C1.mjs} +3 -3
- package/dist/{process-CTrfxxaC.mjs → process-D0HdqZ3r.mjs} +1 -1
- package/dist/{publish-qVFmJQ1E.mjs → publish-C0HCL04a.mjs} +4 -4
- package/dist/{pulse-x0gFxWfG.mjs → pulse-D1uh8UIU.mjs} +1 -1
- package/dist/{query-Cq1lmqL5.mjs → query-BC-C6efK.mjs} +14 -33
- package/dist/query-BKtMP5eH.mjs +13 -0
- package/dist/query-CAFPlqfi.mjs +329 -0
- package/dist/remapping-CgA6UJGU.mjs +53 -0
- package/dist/{remove-collection-DBqh2Lqm.mjs → remove-collection-DoctJa9g.mjs} +5 -5
- package/dist/{render-Gx1hR7IF.mjs → render-Bvm9mta6.mjs} +2 -2
- package/dist/{replace-CujInVY9.mjs → replace-CaFJd9fO.mjs} +4 -4
- package/dist/rescan-values-7VOGCLMe.mjs +32 -0
- package/dist/{rescan-values-HypqBCSK.mjs → rescan-values-sJRwcHsk.mjs} +5 -5
- package/dist/{run-DEkQSOQa.mjs → run-COHDQ5J4.mjs} +3 -3
- package/dist/{run-b3jyF29q.mjs → run-RXpFlDAB.mjs} +4 -4
- package/dist/{runs-GHqHLGy4.mjs → runs-CUYdCKiE.mjs} +5 -5
- package/dist/{runtime-nCPku2nN.mjs → runtime-B8RtMb4B.mjs} +21 -82
- package/dist/{schema-tables-B5L05Y1L.mjs → schema-tables-CO5qyZBe.mjs} +6 -6
- package/dist/{schemas-Clx26p_4.mjs → schemas-CzHHgDdF.mjs} +4 -4
- package/dist/search-BWb052_b.mjs +131 -0
- package/dist/search-Cc9vHNae.mjs +85 -0
- package/dist/{segment-DiRJcbam.mjs → segment-C_rsUkHK.mjs} +6 -6
- package/dist/{send-DIHkDNBN.mjs → send-C-3bkpni.mjs} +3 -3
- package/dist/{set-D77qUZML.mjs → set-BDkT37OT.mjs} +4 -4
- package/dist/{set-active-DCdFgD0O.mjs → set-active-CDJTfQEc.mjs} +3 -3
- package/dist/set-sensitivity-DVrINHde.mjs +57 -0
- package/dist/{setting-DR9bj232.mjs → setting-CoLzd08x.mjs} +4 -4
- package/dist/{setup-DGa2LLEp.mjs → setup-C4F4XYbU.mjs} +3 -3
- package/dist/{signal-k7cm5N6h.mjs → signal-CxWeLszu.mjs} +1 -1
- package/dist/{skill-list-DAvGGHzS.mjs → skill-list-BgihWuPf.mjs} +2 -2
- package/dist/{skills-CqtNuSXM.mjs → skills-4qDjKRSk.mjs} +2 -2
- package/dist/{skills-CCn7cyMP.mjs → skills-BWEFRpUj.mjs} +3 -3
- package/dist/snippet-CYd8D9SK.mjs +19 -0
- package/dist/{stash-BTtsV0AG.mjs → stash-CZ1x0rox.mjs} +6 -6
- package/dist/{status-XgSS3StV.mjs → status-BM6eYW7I.mjs} +3 -3
- package/dist/{status-CW7Dt-nV.mjs → status-gqpPZvue.mjs} +7 -7
- package/dist/{subscription-CofRU47d.mjs → subscription-pSuO241O.mjs} +6 -6
- package/dist/{subscriptions-DCuuPF6U.mjs → subscriptions-n5zJ9rYZ.mjs} +6 -6
- package/dist/{summary-uGlgKE3C.mjs → summary-DvIf2EiO.mjs} +5 -5
- package/dist/sync-schema-Cc21crxQ.mjs +32 -0
- package/dist/{sync-schema-Cu9rD3eH.mjs → sync-schema-D1t8rhdQ.mjs} +6 -6
- package/dist/sync-task-CXFoqlpF.mjs +53 -0
- package/dist/{table-DfuY0N8e.mjs → table-Ci6bhZkb.mjs} +35 -12
- package/dist/table-CxvaDiIZ.mjs +155 -0
- package/dist/table-Dc0dLfyg.mjs +26 -0
- package/dist/table-selector-flags-BVZvnhUa.mjs +42 -0
- package/dist/text-DaNkPRwt.mjs +6 -0
- package/dist/timeline-BqU5sOb6.mjs +21 -0
- package/dist/{timeline-event-D-h0A_oh.mjs → timeline-event-jn1SOKd4.mjs} +6 -6
- package/dist/transform-BUIlFqpv.mjs +28 -0
- package/dist/{transform-CtqB1WYo.mjs → transform-CNBIV7No.mjs} +1 -1
- package/dist/transform-job-DsbY9mme.mjs +22 -0
- package/dist/{transform-tag-BLp_p9J-.mjs → transform-tag-C0jzV6Dk.mjs} +5 -5
- package/dist/{transforms-n2IwEcbU.mjs → transforms-DwTy_Quh.mjs} +5 -5
- package/dist/tree-p2j6IVy-.mjs +34 -0
- package/dist/{unpublish-DVQCAa3g.mjs → unpublish-B-961jX1.mjs} +3 -3
- package/dist/unreferenced-Dxy-aYI7.mjs +36 -0
- package/dist/{update-CnkPYL2i.mjs → update-BFYRBbRu.mjs} +6 -6
- package/dist/{update-ChpOukqq.mjs → update-BGeaPntx.mjs} +5 -5
- package/dist/{update-NGq0yXZk.mjs → update-BnIEN390.mjs} +5 -5
- package/dist/{update-DffrdV4b.mjs → update-CALlEgIC.mjs} +4 -4
- package/dist/{update-DFdBeJwc.mjs → update-CHkVN69L.mjs} +13 -8
- package/dist/{update-oQeQyqKO.mjs → update-CKqL9PmU.mjs} +5 -5
- package/dist/{update-rFRPLlb6.mjs → update-CYGYUCFQ.mjs} +4 -4
- package/dist/update-CuQy2g51.mjs +52 -0
- package/dist/{update-B7CikkI0.mjs → update-D4TGE6FS.mjs} +7 -7
- package/dist/{update-D9H6Lh5U.mjs → update-D7xi-0bU.mjs} +4 -4
- package/dist/{update-DKO9HF1f.mjs → update-DK77vtFF.mjs} +6 -6
- package/dist/{update-CKDRuduL.mjs → update-DKDQTlnV.mjs} +5 -5
- package/dist/update-DXxJHC8y.mjs +41 -0
- package/dist/update-DiJK0uRG.mjs +181 -0
- package/dist/{update-CAsqNhDC.mjs → update-MD1Kwq1P.mjs} +4 -4
- package/dist/{update-dashcard-DvPqLJ3N.mjs → update-dashcard-DuTjOh14.mjs} +6 -6
- package/dist/{update-DScUzKLI.mjs → update-hvO4VpfZ.mjs} +7 -7
- package/dist/{update-D4ggtuG4.mjs → update-qDZvnwvf.mjs} +7 -7
- package/dist/{update-C05J2nZ2.mjs → update-tltXCUwR.mjs} +4 -4
- package/dist/{upgrade-BRgw0fvn.mjs → upgrade-Ca-Ss5jb.mjs} +4 -4
- package/dist/{upload-Do2PBSeH.mjs → upload-C2fhpKkP.mjs} +2 -2
- package/dist/upload-Dw7mVr9u.mjs +13 -0
- package/dist/{upload-BrfbcbBW.mjs → upload-t6dkccqn.mjs} +3 -3
- package/dist/{uuid-B4eij1d7.mjs → uuid-BMlJZT8z.mjs} +2 -2
- package/dist/{validate-xR_MHBNR.mjs → validate-D7e110oU.mjs} +1 -1
- package/dist/{validate-query-D6_ad-Gi.mjs → validate-query-BzbZmenf.mjs} +7 -3
- package/dist/{values-xgOftPq5.mjs → values-CXN4xTTh.mjs} +5 -5
- package/dist/verify-CPVfwKSu.mjs +38 -0
- package/dist/verify-flags-CMpRkMPa.mjs +58 -0
- package/dist/verify-k-JB-k3D.mjs +38 -0
- package/dist/{verify-DTOA_wVM.mjs → verify-t-CEmvoG.mjs} +3 -3
- package/dist/{wait-BjeFgR13.mjs → wait-KSkq7kKW.mjs} +6 -6
- package/dist/{wait-flags-BCeCnaz3.mjs → wait-flags-KX7NHdj4.mjs} +2 -2
- package/dist/{window-DSb1tqSe.mjs → window-CI_QD04s.mjs} +1 -1
- package/package.json +1 -1
- package/skill-data/core/SKILL.md +18 -11
- package/skill-data/dashboard/SKILL.md +1 -1
- package/skill-data/data-action/SKILL.md +125 -0
- package/skill-data/document/SKILL.md +12 -1
- package/skill-data/git-sync/SKILL.md +61 -9
- package/skill-data/mbql/SKILL.md +5 -0
- package/skill-data/metadata/SKILL.md +36 -6
- package/skill-data/native-sql/SKILL.md +1 -1
- package/dist/body-Cu94pH4P.mjs +0 -17
- package/dist/card-ByOzVxpI.mjs +0 -24
- package/dist/collection-BGbW7u_Q.mjs +0 -20
- package/dist/dashboard-Bzjz2v6u.mjs +0 -33
- package/dist/database-JtHTqSpq.mjs +0 -26
- package/dist/delete-runtime-BKEzJn22.mjs +0 -49
- package/dist/document-DqJ7Cysa.mjs +0 -19
- package/dist/export-DO2josC0.mjs +0 -63
- package/dist/field-CHZByaXa.mjs +0 -18
- package/dist/field-fDtIrY6D.mjs +0 -80
- package/dist/get-yHIEezeG.mjs +0 -31
- package/dist/git-sync-NhfLSZA6.mjs +0 -28
- package/dist/git-sync-TjX1r_wF.mjs +0 -136
- package/dist/list-DgteFn01.mjs +0 -34
- package/dist/parse-id-whJX4DAb.mjs +0 -10
- package/dist/query-BPtIy79s.mjs +0 -114
- package/dist/query-result-E4Q-Gra6.mjs +0 -15
- package/dist/search-DxiuY5EV.mjs +0 -97
- package/dist/selectors-rEFuyXPZ.mjs +0 -35
- package/dist/snippet-g9JTDxqu.mjs +0 -19
- package/dist/sync-task-BXeWuARG.mjs +0 -37
- package/dist/table-C6h4tIRw.mjs +0 -37
- package/dist/table-Di-EY7pg.mjs +0 -18
- package/dist/timeline-D7EsWZm6.mjs +0 -21
- package/dist/transform-8XK1LIgC.mjs +0 -28
- package/dist/transform-job-CTizQkWy.mjs +0 -22
- package/dist/tree-cqxiDh2b.mjs +0 -26
- package/dist/upload-VXBFKzLT.mjs +0 -13
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { H as connectionFlags, J as profileFlag, S as isBlank, at as ConfigError, lt as ResponseShapeError, p as renderSummary, q as outputFlags, st as MetabaseError } from "./cli.mjs";
|
|
2
|
+
import { F as chainRequestFailure, t as defineMetabaseCommand, tt as parseInteger } from "./runtime-B8RtMb4B.mjs";
|
|
3
|
+
import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
|
|
4
|
+
import { r as givenValue } from "./input-D8qW-KtR.mjs";
|
|
5
|
+
import { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
6
|
+
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
7
|
+
import { g as CollectionUpdateInput, r as Collection } from "./collection-D3KXhvnc.mjs";
|
|
8
|
+
import { t as parseEnumFlag } from "./parse-enum-CLIXMsd8.mjs";
|
|
9
|
+
import { n as collectionView } from "./collection-BG3Ksea-.mjs";
|
|
10
|
+
import { z } from "zod";
|
|
11
|
+
//#region src/commands/collection/update-flags.ts
|
|
12
|
+
const ROOT_PARENT = "root";
|
|
13
|
+
const ArchivedWord = z.enum(["true", "false"]);
|
|
14
|
+
const updateFlags = {
|
|
15
|
+
...bodyInputFlags,
|
|
16
|
+
name: {
|
|
17
|
+
type: "string",
|
|
18
|
+
description: "New name"
|
|
19
|
+
},
|
|
20
|
+
description: {
|
|
21
|
+
type: "string",
|
|
22
|
+
description: "New description"
|
|
23
|
+
},
|
|
24
|
+
"clear-description": {
|
|
25
|
+
type: "boolean",
|
|
26
|
+
description: "Remove the description"
|
|
27
|
+
},
|
|
28
|
+
"parent-id": {
|
|
29
|
+
type: "string",
|
|
30
|
+
description: `Collection to move it under, or '${ROOT_PARENT}' for the top level`
|
|
31
|
+
},
|
|
32
|
+
archived: {
|
|
33
|
+
type: "string",
|
|
34
|
+
description: "true moves it to the trash, false restores it (default: leave as is)"
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
/** A body beside a patch flag would be dropped or half-applied, so the two are alternatives. */
|
|
38
|
+
async function readUpdateInput(args) {
|
|
39
|
+
const { given, patch } = patchFromFlags(args);
|
|
40
|
+
if (given.length === 0) return readBody({
|
|
41
|
+
flag: args.body,
|
|
42
|
+
file: args.file
|
|
43
|
+
}, CollectionUpdateInput);
|
|
44
|
+
if (givenValue(args.body) !== null || givenValue(args.file) !== null) throw new ConfigError(`${given.join(", ")} cannot be combined with --body or --file`);
|
|
45
|
+
return patch;
|
|
46
|
+
}
|
|
47
|
+
function patchFromFlags(args) {
|
|
48
|
+
const given = [];
|
|
49
|
+
const patch = {};
|
|
50
|
+
const clearDescription = args["clear-description"] === true;
|
|
51
|
+
if (args.name !== void 0) {
|
|
52
|
+
given.push("--name");
|
|
53
|
+
patch.name = requireText(args.name, "--name");
|
|
54
|
+
}
|
|
55
|
+
if (args.description !== void 0 && clearDescription) throw new ConfigError("--description cannot be combined with --clear-description");
|
|
56
|
+
if (args.description !== void 0) {
|
|
57
|
+
given.push("--description");
|
|
58
|
+
patch.description = requireText(args.description, "--description");
|
|
59
|
+
}
|
|
60
|
+
if (clearDescription) {
|
|
61
|
+
given.push("--clear-description");
|
|
62
|
+
patch.description = null;
|
|
63
|
+
}
|
|
64
|
+
if (args["parent-id"] !== void 0) {
|
|
65
|
+
given.push("--parent-id");
|
|
66
|
+
patch.parent_id = parseParentId(args["parent-id"]);
|
|
67
|
+
}
|
|
68
|
+
if (args.archived !== void 0) {
|
|
69
|
+
given.push("--archived");
|
|
70
|
+
patch.archived = parseEnumFlag(args.archived, ArchivedWord, "--archived") === "true";
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
given,
|
|
74
|
+
patch
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function requireText(value, flag) {
|
|
78
|
+
if (isBlank(value)) throw new ConfigError(`${flag} must not be blank`);
|
|
79
|
+
return value;
|
|
80
|
+
}
|
|
81
|
+
function parseParentId(value) {
|
|
82
|
+
if (value === ROOT_PARENT) return null;
|
|
83
|
+
return parseInteger(value, {
|
|
84
|
+
name: "--parent-id",
|
|
85
|
+
min: 1,
|
|
86
|
+
expected: `integer or "${ROOT_PARENT}"`
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
//#endregion
|
|
90
|
+
//#region src/commands/collection/update.ts
|
|
91
|
+
const TRASH_REF = "trash";
|
|
92
|
+
const MOVE_KEYS = /* @__PURE__ */ new Set(["parent_id", "archived"]);
|
|
93
|
+
var update_default = defineMetabaseCommand({
|
|
94
|
+
meta: {
|
|
95
|
+
name: "update",
|
|
96
|
+
description: "Rename, describe, move, trash, or restore a collection by id (partial)"
|
|
97
|
+
},
|
|
98
|
+
details: "Patches only what you send: `--name`, `--description` or `--clear-description`, `--parent-id` (`root` moves it to the top level), `--archived true|false`, or a JSON body with any of `name`, `description`, `parent_id`, `authority_level`, `archived`. The server reads an absent `archived` as false, so when the patch leaves it out the CLI reads the collection first and sends its current state: an archived collection stays archived unless you pass `--archived false`. The server ignores `parent_id` in a request that trashes a collection, so moving and trashing a live collection together is sent as the move and then the trash. A collection enters the Trash only by being trashed, so a `--parent-id` that names the Trash (looked up with one more request whenever `--parent-id` is a collection id) is read as the trash alone with `--archived true` and refused otherwise. Setting `authority_level` needs admin and the Official Collections feature. Takes the integer id only; `root`, `trash`, and entity ids are refused.",
|
|
99
|
+
requires: [
|
|
100
|
+
"collection.get",
|
|
101
|
+
"collection.update",
|
|
102
|
+
"collection.archive"
|
|
103
|
+
],
|
|
104
|
+
args: {
|
|
105
|
+
...outputFlags,
|
|
106
|
+
...profileFlag,
|
|
107
|
+
...connectionFlags,
|
|
108
|
+
...updateFlags,
|
|
109
|
+
id: {
|
|
110
|
+
type: "positional",
|
|
111
|
+
description: "Collection id",
|
|
112
|
+
required: true
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
inputSchema: CollectionUpdateInput,
|
|
116
|
+
outputSchema: Collection,
|
|
117
|
+
examples: [
|
|
118
|
+
"mb collection update 4 --name \"Marketing\"",
|
|
119
|
+
"mb collection update 4 --description \"Campaign reporting\" --parent-id 2",
|
|
120
|
+
"mb collection update 4 --parent-id root",
|
|
121
|
+
"mb collection update 4 --clear-description",
|
|
122
|
+
"mb collection update 4 --archived false",
|
|
123
|
+
"mb collection update 4 --body '{\"parent_id\":null,\"authority_level\":\"official\"}'",
|
|
124
|
+
"mb collection update 4 --file patch.json --json"
|
|
125
|
+
],
|
|
126
|
+
async run({ args, ctx, getClient }) {
|
|
127
|
+
const id = parseId(args.id);
|
|
128
|
+
const input = await readUpdateInput(args);
|
|
129
|
+
const client = await getClient();
|
|
130
|
+
const patch = withoutTrashParent(input, typeof input.parent_id === "number" ? await client.collection.get(TRASH_REF) : null);
|
|
131
|
+
const render = (updated) => {
|
|
132
|
+
renderSummary(updated, collectionView, `Updated collection ${updated.id} "${updated.name}".`, ctx);
|
|
133
|
+
};
|
|
134
|
+
const trashesAndMoves = patch.archived === true && patch.parent_id !== void 0;
|
|
135
|
+
if (patch.archived !== void 0 && !trashesAndMoves) {
|
|
136
|
+
render(await client.collection.update(id, patch));
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
const stored = await client.collection.get(id);
|
|
140
|
+
const storedIsArchived = storedArchived(stored);
|
|
141
|
+
const staysUnderParent = stored.parent_id === patch.parent_id;
|
|
142
|
+
if (patch.archived === void 0 || storedIsArchived || staysUnderParent) {
|
|
143
|
+
render(await client.collection.update(id, {
|
|
144
|
+
...patch,
|
|
145
|
+
archived: patch.archived ?? storedIsArchived
|
|
146
|
+
}));
|
|
147
|
+
return;
|
|
148
|
+
}
|
|
149
|
+
await client.collection.update(id, {
|
|
150
|
+
...patch,
|
|
151
|
+
archived: false
|
|
152
|
+
});
|
|
153
|
+
render(await client.collection.archive(id).catch((error) => {
|
|
154
|
+
throw chainTrashFailure(error, id, patch);
|
|
155
|
+
}));
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
function withoutTrashParent(patch, trash) {
|
|
159
|
+
if (trash === null || patch.parent_id !== trash.id) return patch;
|
|
160
|
+
if (patch.archived !== true) throw new ConfigError(`collection ${trash.id} is the Trash, which a collection enters only by being trashed: pass --archived true (archived: true in a body) instead of naming it as the parent`);
|
|
161
|
+
const trashOnly = { ...patch };
|
|
162
|
+
delete trashOnly.parent_id;
|
|
163
|
+
return trashOnly;
|
|
164
|
+
}
|
|
165
|
+
function storedArchived(collection) {
|
|
166
|
+
if (collection.archived === void 0) {
|
|
167
|
+
const source = `collection ${collection.id}`;
|
|
168
|
+
throw new ResponseShapeError(`${source} came back without "archived", so whether it is in the trash is unknown`, {
|
|
169
|
+
kind: "decoded",
|
|
170
|
+
source,
|
|
171
|
+
value: null
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
return collection.archived;
|
|
175
|
+
}
|
|
176
|
+
function chainTrashFailure(error, id, patch) {
|
|
177
|
+
if (!(error instanceof MetabaseError)) return error;
|
|
178
|
+
return chainRequestFailure(error, `collection ${id} was ${Object.keys(patch).some((key) => !MOVE_KEYS.has(key)) ? "updated and moved" : "moved"}, but moving it to the trash failed: ${error.userMessage}`);
|
|
179
|
+
}
|
|
180
|
+
//#endregion
|
|
181
|
+
export { update_default as default };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import { t as readBody } from "./body-
|
|
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 { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
5
5
|
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
6
6
|
import { i as SnippetUpdateInput, t as Snippet } from "./snippet-CyKAgIZl.mjs";
|
|
7
7
|
import { t as snippetView } from "./snippet-oJLaYW9V.mjs";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import { t as readBody } from "./body-
|
|
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 { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
5
5
|
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
6
|
+
import { d as DashcardPatchInput, l as Dashcard } from "./dashboard-Phz3XpRM.mjs";
|
|
7
|
+
import { r as dashcardView } from "./dashboard-XSTr9QCr.mjs";
|
|
8
8
|
//#region src/commands/dashboard/update-dashcard.ts
|
|
9
9
|
var update_dashcard_default = defineMetabaseCommand({
|
|
10
10
|
meta: {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import { t as readBody } from "./body-
|
|
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 { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
5
5
|
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
6
|
-
import { c as CardUpdateInput, t as Card } from "./card-
|
|
7
|
-
import { n as cardView } from "./card-
|
|
8
|
-
import {
|
|
6
|
+
import { c as CardUpdateInput, t as Card } from "./card-P5mBknsl.mjs";
|
|
7
|
+
import { n as cardView } from "./card-CQNUT9pm.mjs";
|
|
8
|
+
import { o as preflightMbql5Query, s as skipValidateFlag, t as CARD_DATASET_QUERY_LABELS } from "./validate-query-BzbZmenf.mjs";
|
|
9
9
|
//#region src/commands/card/update.ts
|
|
10
10
|
var update_default = defineMetabaseCommand({
|
|
11
11
|
meta: {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import { t as readBody } from "./body-
|
|
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 { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
5
5
|
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
6
6
|
import { f as TransformUpdateInput, t as Transform } from "./transform-DiW7bREn.mjs";
|
|
7
|
-
import { a as
|
|
8
|
-
import { n as transformView } from "./transform-
|
|
9
|
-
import { t as enrichTransformCollectionError } from "./collection-namespace-
|
|
7
|
+
import { a as TRANSFORM_SOURCE_QUERY_LABELS, o as preflightMbql5Query, s as skipValidateFlag } from "./validate-query-BzbZmenf.mjs";
|
|
8
|
+
import { n as transformView } from "./transform-CNBIV7No.mjs";
|
|
9
|
+
import { t as enrichTransformCollectionError } from "./collection-namespace-ZQePD67z.mjs";
|
|
10
10
|
//#region src/commands/transform/update.ts
|
|
11
11
|
var update_default = defineMetabaseCommand({
|
|
12
12
|
meta: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import { t as readBody } from "./body-
|
|
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 { t as readBody } from "./body-CB2eDFFb.mjs";
|
|
5
5
|
import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
|
|
6
6
|
import { i as TransformTagUpdateInput, t as TransformTag } from "./transform-tag-CcElGp3C.mjs";
|
|
7
7
|
import { t as transformTagView } from "./transform-tag-Dmb4u3-Q.mjs";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { n as throwIfAborted, t as combineAborts } from "./signal-
|
|
4
|
-
import { n as streamProcess } from "./process-
|
|
1
|
+
import { B as name, V as version, ct as NetworkError, dt as UnknownError, g as writeText, pt as errorMessage, q as outputFlags, rt as AbortError, t as interruptSignal, u as renderItem, ut as TimeoutError, w as promptConfirm } from "./cli.mjs";
|
|
2
|
+
import { P as HttpError, R as parseJson, T as USER_AGENT, t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
|
|
3
|
+
import { n as throwIfAborted, t as combineAborts } from "./signal-CxWeLszu.mjs";
|
|
4
|
+
import { n as streamProcess } from "./process-D0HdqZ3r.mjs";
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
import { realpathSync } from "node:fs";
|
|
7
7
|
import { compare, valid } from "semver";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as fileNotFoundError } from "./input-
|
|
1
|
+
import { at as ConfigError, ht as isFileNotFoundError } from "./cli.mjs";
|
|
2
|
+
import { n as fileNotFoundError } from "./input-D8qW-KtR.mjs";
|
|
3
3
|
import { basename } from "node:path";
|
|
4
4
|
import { readFile } from "node:fs/promises";
|
|
5
5
|
//#region src/runtime/upload.ts
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { t as defineCommandGroup } from "./group-bpD_KcjA.mjs";
|
|
2
|
+
//#region src/commands/upload/index.ts
|
|
3
|
+
var upload_default = defineCommandGroup({
|
|
4
|
+
name: "upload",
|
|
5
|
+
description: "Upload CSV files into Metabase",
|
|
6
|
+
subCommands: {
|
|
7
|
+
csv: () => import("./csv-CRNOhy4X.mjs").then((m) => m.default),
|
|
8
|
+
append: () => import("./append-DCDVqPmR.mjs").then((m) => m.default),
|
|
9
|
+
replace: () => import("./replace-CaFJd9fO.mjs").then((m) => m.default)
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
//#endregion
|
|
13
|
+
export { upload_default as default };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
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
3
|
import { t as ContentTranslationUploadResult } from "./content-translation-BrHOrmj9.mjs";
|
|
4
|
-
import { n as requireUploadFilePath, t as readCsvFile } from "./upload-
|
|
4
|
+
import { n as requireUploadFilePath, t as readCsvFile } from "./upload-C2fhpKkP.mjs";
|
|
5
5
|
//#region src/output/views/content-translation.ts
|
|
6
6
|
const contentTranslationUploadView = {
|
|
7
7
|
compactPick: ContentTranslationUploadResult,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { at as ConfigError, g as writeText, h as writeJson, q as outputFlags } from "./cli.mjs";
|
|
2
|
+
import { t as defineMetabaseCommand, tt as parseInteger } from "./runtime-B8RtMb4B.mjs";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
5
5
|
//#region src/commands/uuid.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { C as isPlainObject, _t as escapeJsonPointerSegment, at as ConfigError } from "./cli.mjs";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import Ajv2020 from "ajv/dist/2020.js";
|
|
4
4
|
import addFormats from "ajv-formats";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as validateQuery, i as isMbql5Query, n as assertNotLegacyEnvelopeWrappingMbql5 } from "./validate-
|
|
1
|
+
import { at as ConfigError, h as writeJson } from "./cli.mjs";
|
|
2
|
+
import { a as validateQuery, i as isMbql5Query, n as assertNotLegacyEnvelopeWrappingMbql5 } from "./validate-D7e110oU.mjs";
|
|
3
3
|
//#region src/commands/validate-query.ts
|
|
4
4
|
const skipValidateFlag = { "skip-validate": {
|
|
5
5
|
type: "boolean",
|
|
@@ -9,6 +9,10 @@ const CARD_DATASET_QUERY_LABELS = {
|
|
|
9
9
|
contextLabel: "card.dataset_query validation failed",
|
|
10
10
|
bodyNoun: "dataset_query"
|
|
11
11
|
};
|
|
12
|
+
const DATA_ACTION_DATASET_QUERY_LABELS = {
|
|
13
|
+
contextLabel: "dataAction.dataset_query validation failed",
|
|
14
|
+
bodyNoun: "dataset_query"
|
|
15
|
+
};
|
|
12
16
|
const TRANSFORM_SOURCE_QUERY_LABELS = {
|
|
13
17
|
contextLabel: "transform.source.query validation failed",
|
|
14
18
|
bodyNoun: "source.query"
|
|
@@ -31,4 +35,4 @@ function preflightMbql5Query(query, labels, options) {
|
|
|
31
35
|
throw new ConfigError(`${labels.contextLabel}: ${outcome.errors.length} error(s) — fix them, or pass --skip-validate to send anyway`);
|
|
32
36
|
}
|
|
33
37
|
//#endregion
|
|
34
|
-
export {
|
|
38
|
+
export { TRANSFORM_SOURCE_QUERY_LABELS as a, SEGMENT_DEFINITION_LABELS as i, DATA_ACTION_DATASET_QUERY_LABELS as n, preflightMbql5Query as o, MEASURE_DEFINITION_LABELS as r, skipValidateFlag as s, CARD_DATASET_QUERY_LABELS as t };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { t as parseId } from "./parse-id-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
1
|
+
import { H as connectionFlags, J as profileFlag, p as renderSummary, q as outputFlags, v as formatScalar } from "./cli.mjs";
|
|
2
|
+
import { t as defineMetabaseCommand } from "./runtime-B8RtMb4B.mjs";
|
|
3
|
+
import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
|
|
4
|
+
import { u as FieldValues } from "./field-5nivEfd6.mjs";
|
|
5
|
+
import { s as fieldValuesView } from "./field-wmN6raOG.mjs";
|
|
6
6
|
//#region src/commands/field/values.ts
|
|
7
7
|
var values_default = defineMetabaseCommand({
|
|
8
8
|
meta: {
|
|
@@ -0,0 +1,38 @@
|
|
|
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 { t as ModerationReview } from "./moderation-review-BdqEH6N1.mjs";
|
|
5
|
+
import { i as moderationReviewView, n as verifyFlags, r as describeReview, t as reviewInput } from "./verify-flags-CMpRkMPa.mjs";
|
|
6
|
+
//#region src/commands/card/verify.ts
|
|
7
|
+
var verify_default = defineMetabaseCommand({
|
|
8
|
+
meta: {
|
|
9
|
+
name: "verify",
|
|
10
|
+
description: "Mark a card verified, or withdraw the mark with --remove"
|
|
11
|
+
},
|
|
12
|
+
details: "Records a moderation review on the card (admins only). Verified content carries a check mark in the product and ranks higher in search. Each call adds a review and makes it the card's most recent one; `--remove` records a review with no status, which withdraws the verification, as does changing the card's query. `--text` stores a note with the review. `card get <id> --fields moderation_reviews` reads the reviews, newest first. Prints the review.",
|
|
13
|
+
requires: ["moderationReview.create"],
|
|
14
|
+
args: {
|
|
15
|
+
...outputFlags,
|
|
16
|
+
...profileFlag,
|
|
17
|
+
...connectionFlags,
|
|
18
|
+
...verifyFlags,
|
|
19
|
+
id: {
|
|
20
|
+
type: "positional",
|
|
21
|
+
description: "Card id",
|
|
22
|
+
required: true
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
outputSchema: ModerationReview,
|
|
26
|
+
examples: [
|
|
27
|
+
"mb card verify 1",
|
|
28
|
+
"mb card verify 1 --text \"Reviewed the joins\" --json",
|
|
29
|
+
"mb card verify 1 --remove"
|
|
30
|
+
],
|
|
31
|
+
async run({ args, ctx, getClient }) {
|
|
32
|
+
const id = parseId(args.id);
|
|
33
|
+
const review = await (await getClient()).moderationReview.create(reviewInput("card", id, args));
|
|
34
|
+
renderSummary(review, moderationReviewView, describeReview(review), ctx);
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//#endregion
|
|
38
|
+
export { verify_default as default };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { n as ModerationReviewCompact } from "./moderation-review-BdqEH6N1.mjs";
|
|
2
|
+
//#region src/output/views/moderation-review.ts
|
|
3
|
+
const moderationReviewView = {
|
|
4
|
+
compactPick: ModerationReviewCompact,
|
|
5
|
+
tableColumns: [
|
|
6
|
+
{
|
|
7
|
+
key: "id",
|
|
8
|
+
label: "ID"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
key: "moderated_item_type",
|
|
12
|
+
label: "Item type"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
key: "moderated_item_id",
|
|
16
|
+
label: "Item ID"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
key: "status",
|
|
20
|
+
label: "Status"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
key: "text",
|
|
24
|
+
label: "Text"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
key: "most_recent",
|
|
28
|
+
label: "Most recent"
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
};
|
|
32
|
+
function describeReview(review) {
|
|
33
|
+
const target = `${review.moderated_item_type} ${review.moderated_item_id}`;
|
|
34
|
+
if (review.status === null) return `Marked ${target} unverified.`;
|
|
35
|
+
return `Verified ${target}.`;
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/commands/verify-flags.ts
|
|
39
|
+
const verifyFlags = {
|
|
40
|
+
text: {
|
|
41
|
+
type: "string",
|
|
42
|
+
description: "Note stored with the review"
|
|
43
|
+
},
|
|
44
|
+
remove: {
|
|
45
|
+
type: "boolean",
|
|
46
|
+
description: "Withdraw the verification instead of granting it"
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
function reviewInput(itemType, itemId, args) {
|
|
50
|
+
return {
|
|
51
|
+
moderated_item_id: itemId,
|
|
52
|
+
moderated_item_type: itemType,
|
|
53
|
+
status: args.remove ? null : "verified",
|
|
54
|
+
text: args.text
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//#endregion
|
|
58
|
+
export { moderationReviewView as i, verifyFlags as n, describeReview as r, reviewInput as t };
|
|
@@ -0,0 +1,38 @@
|
|
|
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 { t as ModerationReview } from "./moderation-review-BdqEH6N1.mjs";
|
|
5
|
+
import { i as moderationReviewView, n as verifyFlags, r as describeReview, t as reviewInput } from "./verify-flags-CMpRkMPa.mjs";
|
|
6
|
+
//#region src/commands/dashboard/verify.ts
|
|
7
|
+
var verify_default = defineMetabaseCommand({
|
|
8
|
+
meta: {
|
|
9
|
+
name: "verify",
|
|
10
|
+
description: "Mark a dashboard verified, or withdraw the mark with --remove"
|
|
11
|
+
},
|
|
12
|
+
details: "Records a moderation review on the dashboard (admins only). Verified content carries a check mark in the product and ranks higher in search. Each call adds a review and makes it the dashboard's most recent one; `--remove` records a review with no status, which withdraws the verification. `--text` stores a note with the review. `dashboard get <id> --fields moderation_reviews` reads the reviews, newest first. Prints the review.",
|
|
13
|
+
requires: ["moderationReview.create"],
|
|
14
|
+
args: {
|
|
15
|
+
...outputFlags,
|
|
16
|
+
...profileFlag,
|
|
17
|
+
...connectionFlags,
|
|
18
|
+
...verifyFlags,
|
|
19
|
+
id: {
|
|
20
|
+
type: "positional",
|
|
21
|
+
description: "Dashboard id",
|
|
22
|
+
required: true
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
outputSchema: ModerationReview,
|
|
26
|
+
examples: [
|
|
27
|
+
"mb dashboard verify 1",
|
|
28
|
+
"mb dashboard verify 1 --text \"Reviewed the joins\" --json",
|
|
29
|
+
"mb dashboard verify 1 --remove"
|
|
30
|
+
],
|
|
31
|
+
async run({ args, ctx, getClient }) {
|
|
32
|
+
const id = parseId(args.id);
|
|
33
|
+
const review = await (await getClient()).moderationReview.create(reviewInput("dashboard", id, args));
|
|
34
|
+
renderSummary(review, moderationReviewView, describeReview(review), ctx);
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
//#endregion
|
|
38
|
+
export { verify_default as default };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { n as createClient } from "./client-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { n as createClient } from "./client-BHIFvEg2.mjs";
|
|
2
|
+
import { ct as NetworkError, pt as errorMessage, st as MetabaseError, ut as TimeoutError } from "./cli.mjs";
|
|
3
|
+
import { P as HttpError, Q as probeServer, T as USER_AGENT } from "./runtime-B8RtMb4B.mjs";
|
|
4
4
|
//#region src/core/auth/verify.ts
|
|
5
5
|
const VERIFY_TIMEOUT_MS = 15e3;
|
|
6
6
|
async function verifyAndProbe(url, credential, options = {}) {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { H as
|
|
2
|
-
import { t as defineMetabaseCommand } from "./runtime-
|
|
3
|
-
import { n as DEFAULT_TIMEOUT_MS, t as DEFAULT_INTERVAL_MS } from "./poll-
|
|
4
|
-
import { r as parseWaitSchedule } from "./wait-flags-
|
|
5
|
-
import {
|
|
6
|
-
import { a as throwIfFailedTask, i as taskPollOptions, n as formatSyncTask, r as syncTaskIdleView, t as SyncTaskOrIdle } from "./sync-task-
|
|
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 { n as DEFAULT_TIMEOUT_MS, t as DEFAULT_INTERVAL_MS } from "./poll-Dz4tUm2f.mjs";
|
|
4
|
+
import { r as parseWaitSchedule } from "./wait-flags-KX7NHdj4.mjs";
|
|
5
|
+
import { u as syncTaskView } from "./git-sync-DspFahwV.mjs";
|
|
6
|
+
import { a as throwIfFailedTask, i as taskPollOptions, n as formatSyncTask, r as syncTaskIdleView, t as SyncTaskOrIdle } from "./sync-task-CXFoqlpF.mjs";
|
|
7
7
|
//#region src/commands/git-sync/wait.ts
|
|
8
8
|
const WaitResult = SyncTaskOrIdle;
|
|
9
9
|
var wait_default = defineMetabaseCommand({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as interruptSignal } from "./cli.mjs";
|
|
2
|
-
import { t as parseId } from "./parse-id-
|
|
3
|
-
import { n as DEFAULT_TIMEOUT_MS, t as DEFAULT_INTERVAL_MS } from "./poll-
|
|
2
|
+
import { t as parseId } from "./parse-id-7ja3HUdB.mjs";
|
|
3
|
+
import { n as DEFAULT_TIMEOUT_MS, t as DEFAULT_INTERVAL_MS } from "./poll-Dz4tUm2f.mjs";
|
|
4
4
|
//#region src/commands/wait-flags.ts
|
|
5
5
|
const waitScheduleFlags = {
|
|
6
6
|
timeout: {
|