@metabase/cli 0.5.1 → 0.5.2
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-BnGPc0Vv.mjs → add-collection-C0BQHjJd.mjs} +4 -4
- package/dist/{alert-DQkF8jYR.mjs → alert-mXHOt00T.mjs} +6 -6
- package/dist/{alerts-BncG7w1_.mjs → alerts-CyB1Z7AU.mjs} +3 -3
- package/dist/{append-D4ekYCuD.mjs → append-DeHhUAeY.mjs} +3 -3
- package/dist/{archive-EhW6blNc.mjs → archive-B1MA5MZp.mjs} +4 -4
- package/dist/{archive-v08JESCM.mjs → archive-Bi-Sfq5T.mjs} +2 -2
- package/dist/{archive-DjHLWUfC.mjs → archive-CCKxZEuq.mjs} +2 -2
- package/dist/{archive-DnCF-Ecm.mjs → archive-CDSAXKKB.mjs} +2 -2
- package/dist/{archive-BXr9kFNz.mjs → archive-CfNLlebd.mjs} +5 -5
- package/dist/{archive-ULXc3xzI.mjs → archive-CjVd1fJ5.mjs} +2 -2
- package/dist/{archive-BQ4OA-R4.mjs → archive-CpvpGZlz.mjs} +2 -2
- package/dist/{archive-DpCP4yR1.mjs → archive-DRMXvkiI.mjs} +2 -2
- package/dist/{archive-BifJXCHF.mjs → archive-DfDqPgtk.mjs} +2 -2
- package/dist/{archive-DocyUIME.mjs → archive-DpgtAdEa.mjs} +4 -4
- package/dist/{archive-D2WCz3Oe.mjs → archive-HCVTRXI2.mjs} +2 -2
- package/dist/{archive-CxNUeWII2.mjs → archive-qy0CFo1s2.mjs} +4 -4
- package/dist/{auth-BPbsm8yV.mjs → auth-_cdypXeX.mjs} +4 -4
- package/dist/{body-BkkQkGJg.mjs → body-C0VnEiRV.mjs} +2 -2
- package/dist/{branch-flag-CTDvbaBa.mjs → branch-flag-CPTQ4wXp.mjs} +1 -1
- package/dist/{branches-lPHtM_xR.mjs → branches-C7mNYAky.mjs} +2 -2
- package/dist/{breaking-DjMlCD96.mjs → breaking-BindR3ZW.mjs} +5 -5
- package/dist/{broken-DUX3GWS5.mjs → broken-SoXfkx7d.mjs} +7 -7
- package/dist/{bulk-discard-values-Dl8Lzypf.mjs → bulk-discard-values-D_d5_1w5.mjs} +4 -4
- package/dist/{bulk-edit-N2xLVtfG.mjs → bulk-edit-Cce05vb_.mjs} +5 -5
- package/dist/{bulk-rescan-values-BK2rH2Ik.mjs → bulk-rescan-values-DIQN4VT_.mjs} +4 -4
- package/dist/{bulk-sync-schema-BKJc9Rzq.mjs → bulk-sync-schema-DLWf5dCl.mjs} +4 -4
- package/dist/{cancel-DzkRVGIk.mjs → cancel-rnd6UI-6.mjs} +2 -2
- package/dist/{cancel-task-BiTlDY7a.mjs → cancel-task-acq1GT6Z.mjs} +3 -3
- package/dist/{card-CQNUT9pm.mjs → card-3NmUiU5F.mjs} +1 -1
- package/dist/{card-BTBDBsu-.mjs → card-BnL92zoT.mjs} +8 -8
- package/dist/{card-P5mBknsl.mjs → card-QR3zEu6E.mjs} +39 -16
- package/dist/{cards-CSL8ukS1.mjs → cards-DmzPtx81.mjs} +5 -5
- package/dist/cli.mjs +156 -37
- package/dist/{client-BBwYPXDW.mjs → client-D-Aw6JLk.mjs} +114 -39
- package/dist/{collection-CTnYZ2Jj.mjs → collection-D5vt2IJ_.mjs} +1 -1
- package/dist/{collection-B2wRXyTF.mjs → collection-DNmFKALA.mjs} +1 -0
- package/dist/{collection-B19phRNU.mjs → collection-DRHGwFSL.mjs} +7 -7
- package/dist/{collection-namespace-B1OkM7p1.mjs → collection-namespace-Dl8_7xII.mjs} +1 -1
- package/dist/{content-translation-DoGTQnvH.mjs → content-translation-DxT1OMnP.mjs} +2 -2
- package/dist/{copy-BYukQEtf.mjs → copy-BTdTiDQo.mjs} +5 -5
- package/dist/{copy-XlCT3gvG.mjs → copy-CyFf3e2Y.mjs} +3 -3
- package/dist/{copy-flags-ByB2MicL.mjs → copy-flags-CTM91pxH.mjs} +2 -2
- package/dist/{create-Bl9sS7v7.mjs → create-B3QZpifA.mjs} +6 -6
- package/dist/{create-CrtIqtXN.mjs → create-B6dABrs7.mjs} +4 -4
- package/dist/{create-k1Bo7h7g.mjs → create-BH6zpwKD.mjs} +2 -2
- package/dist/{create-D5_c5SHo.mjs → create-Bg3WTMMU.mjs} +2 -2
- package/dist/{create-DxMmIHI4.mjs → create-BwIOlpLc.mjs} +2 -2
- package/dist/{create-BP39g5Jk.mjs → create-C3rabvE_.mjs} +2 -2
- package/dist/{create-CYoarNrb.mjs → create-Ce5YVusp.mjs} +2 -2
- package/dist/{create-CqF7vqXC.mjs → create-Ch-NbeMr.mjs} +4 -4
- package/dist/{create-DBNxy5rN.mjs → create-CuJJd7Rh.mjs} +2 -2
- package/dist/{create-3_oY9KHY.mjs → create-D6NLpIzV.mjs} +2 -2
- package/dist/{create-T4PZPVE9.mjs → create-DeCPAYJi.mjs} +3 -3
- package/dist/{create-Bnb1abv_.mjs → create-DeiBnRRz.mjs} +5 -5
- package/dist/{create-CbT4SPHV.mjs → create-DiG165B2.mjs} +2 -2
- package/dist/{create-Cdt8u1wF.mjs → create-Dn8V5siS.mjs} +5 -5
- package/dist/{create-B3fm5I-l2.mjs → create-DsCydgm22.mjs} +4 -4
- package/dist/{create-DZJQp3r7.mjs → create-GU8_GNbN.mjs} +2 -2
- package/dist/{create-branch-CUNFdKyB.mjs → create-branch-C4Ql9G2g.mjs} +4 -4
- package/dist/{create-CLZ7w83R.mjs → create-qtTB8rIE.mjs} +3 -3
- package/dist/{create-jr4xJgSI.mjs → create-roJbQOmm.mjs} +3 -3
- package/dist/{csv-CcnhKpuj.mjs → csv-DmuyyLdz.mjs} +3 -3
- package/dist/{current-task-nl2z8sHI.mjs → current-task-C2PPBVVv.mjs} +3 -3
- package/dist/{dashboard-BP0p62fp.mjs → dashboard-Bq1pae4N.mjs} +11 -11
- package/dist/{dashboard-Phz3XpRM.mjs → dashboard-Chjy5GKR.mjs} +52 -5
- package/dist/{dashboard-XSTr9QCr.mjs → dashboard-D5E3fMKh.mjs} +1 -1
- package/dist/{data-action-Cr17CfgE.mjs → data-action-BZ2PvlaP.mjs} +7 -7
- package/dist/{database-2HYCdHqK.mjs → database-CxykzTAA.mjs} +14 -3
- package/dist/{database-BewllGR7.mjs → database-D8XzgJEz.mjs} +19 -2
- package/dist/{dataset-D-x2Ho2i.mjs → dataset-DIQLAp2P.mjs} +5 -4
- package/dist/db-BgKKN1-4.mjs +25 -0
- package/dist/{delete-BXMc-g3Q.mjs → delete-5ZOvFr-7.mjs} +3 -3
- package/dist/{delete-Oc2GE170.mjs → delete-B3aylPHD.mjs} +3 -3
- package/dist/{delete-QHsiWYay.mjs → delete-CH32Ew4m.mjs} +3 -3
- package/dist/{delete-BrbmJ3sn.mjs → delete-CS6hsBnd.mjs} +3 -3
- package/dist/{delete-xf2n7SNg.mjs → delete-DeqGTuwO.mjs} +3 -3
- package/dist/{delete-DulVnxD_.mjs → delete-DiZg2wit.mjs} +3 -3
- package/dist/{delete-BOma6qIq.mjs → delete-DtIbkF42.mjs} +3 -3
- package/dist/{delete-BUCh72Bq.mjs → delete-_XC6R-Jn.mjs} +3 -3
- package/dist/{delete-runtime-CkNvZfFA.mjs → delete-runtime-DRGveT8H.mjs} +1 -1
- package/dist/{delete-table-LgJ17t6j.mjs → delete-table-BEuMlqw1.mjs} +3 -3
- package/dist/{dependencies-BE5QW7Lb.mjs → dependencies-DD48u9i3.mjs} +3 -3
- package/dist/{dependency-BlTYysYG.mjs → dependency-6kfpR8Ga.mjs} +5 -5
- package/dist/{dependency-qP1hx2YN.mjs → dependency-CaC6XuTY.mjs} +2 -2
- package/dist/{dependency-BACk_cVP.mjs → dependency-Dxvb2Znu.mjs} +1 -1
- package/dist/{dependents-mbgHQNiv.mjs → dependents-ByfHs8pO.mjs} +8 -8
- package/dist/{dirty-fYlA1N1e.mjs → dirty-DsrGfLit.mjs} +4 -4
- package/dist/{discard-values-cIRBP5nT.mjs → discard-values-BfpwwC62.mjs} +4 -4
- package/dist/{document-BaRQ5fBd.mjs → document-C0mZEg5w.mjs} +6 -6
- package/dist/{download-CokVpeK6.mjs → download-kpgGtfpw.mjs} +1 -1
- package/dist/{eid-CaumGUFD.mjs → eid-Tp-ACZ4O.mjs} +3 -4
- package/dist/{entity-BHYJtRxp.mjs → entity-DjDkaMkB.mjs} +2 -2
- package/dist/{entry-flags-DjICpQkc.mjs → entry-flags-nhBrUS6p.mjs} +3 -3
- package/dist/{events-jEo9fytL.mjs → events-Dm9-ofXu.mjs} +3 -3
- package/dist/{execute-H09Qus4_.mjs → execute-BL0dAlrp.mjs} +3 -3
- package/dist/{export-YtdZo7LZ.mjs → export-CIW-dHft.mjs} +24 -12
- package/dist/{export-flags-DzW0Ktkh.mjs → export-flags-CpukgETM.mjs} +13 -5
- package/dist/{export-preflight-Db_TChn5.mjs → export-preflight-BMlz3Hp9.mjs} +4 -4
- package/dist/{field-DktidTPB.mjs → field-BUkyWiWk.mjs} +7 -7
- package/dist/{field-wmN6raOG.mjs → field-BVz4AS3f.mjs} +1 -1
- package/dist/{field-5nivEfd6.mjs → field-DoWQUl7V.mjs} +58 -45
- package/dist/{fields-DUXlosmx.mjs → fields-CcerFaiu.mjs} +5 -5
- package/dist/{filter-flags-DTDcU7OI.mjs → filter-flags-DhE4olyf.mjs} +4 -4
- package/dist/{fks-Cl2sq-c0.mjs → fks-CYfBesHV.mjs} +5 -5
- package/dist/{get-DtcChy9h.mjs → get--E7UvR-v.mjs} +2 -2
- package/dist/{get-CVMWhbA82.mjs → get-B0RQPTV-2.mjs} +4 -4
- package/dist/{get-FxCF0rxc.mjs → get-BFloqjrN.mjs} +2 -2
- package/dist/{get-CWyRAHpz.mjs → get-BLnQ2aut.mjs} +5 -5
- package/dist/{get-CTtzccwr.mjs → get-BaiyMem3.mjs} +3 -3
- package/dist/{get-Bt_zhviQ.mjs → get-Be7yjY9v.mjs} +5 -5
- package/dist/{get-zPMv3kZE.mjs → get-BvEHWLGL.mjs} +2 -2
- package/dist/{get-okEsnkvC.mjs → get-CEJE9Rmp.mjs} +2 -2
- package/dist/{get-DTDvlLT3.mjs → get-CRfrkxqc.mjs} +2 -2
- package/dist/{get-C_rjxpoe.mjs → get-CZgAr8rM.mjs} +4 -4
- package/dist/{get-BilMWiFq.mjs → get-Cj3-w_Nu.mjs} +2 -2
- package/dist/{get-oQNL6pLY.mjs → get-CmxYFUuR.mjs} +2 -2
- package/dist/{get-XS-6R81E.mjs → get-DHSuVxrH.mjs} +4 -4
- package/dist/{get-DyK_bvg6.mjs → get-DKbGKa6F.mjs} +2 -2
- package/dist/{get-B-WT6ess.mjs → get-DRhcS76J.mjs} +5 -5
- package/dist/{get-CM596pmP.mjs → get-Dp45rXRS.mjs} +2 -2
- package/dist/{get-DySyvotk2.mjs → get-HzDQViDP2.mjs} +2 -2
- package/dist/{get-DPiNYmXo.mjs → get-LRTRu85E.mjs} +2 -2
- package/dist/{get-CqlNUyFY.mjs → get-RCDF-hEq.mjs} +4 -4
- package/dist/{get-GuWW4J24.mjs → get-eNRULmE5.mjs} +3 -3
- package/dist/{get-Cg0up9gm.mjs → get-p2sZvp7v.mjs} +2 -2
- package/dist/{get-run-CFGxSm_S.mjs → get-run-C3AHKn3-.mjs} +2 -2
- package/dist/git-sync-CNTB5jvI.mjs +29 -0
- package/dist/{git-sync-Ch1V1fEK.mjs → git-sync-D1aKczo6.mjs} +15 -8
- package/dist/{git-sync-COokpYgc.mjs → git-sync-DP4wQFzm.mjs} +18 -1
- package/dist/{glossary-BSgRQ2HO.mjs → glossary-B9Eo4hXc.mjs} +4 -4
- package/dist/{graph-Wf4e0XIa.mjs → graph-BGOYocJc.mjs} +5 -5
- package/dist/{has-remote-changes-BsS3XB0P.mjs → has-remote-changes-DxsRvZsw.mjs} +3 -3
- package/dist/{import-CXd5HdB0.mjs → import-izn2_OsW.mjs} +7 -7
- package/dist/{is-dirty-TDcfeOde.mjs → is-dirty-DHYYRl6Y.mjs} +1 -1
- package/dist/{items-BxvhoxYm.mjs → items-mIoZBqUc.mjs} +5 -5
- package/dist/{key-CUPbYxkk.mjs → key-BYEv4Wgq.mjs} +2 -2
- package/dist/{library-DzejNMqX.mjs → library-5I0TlXmf.mjs} +4 -4
- package/dist/{library-BKSFtIV9.mjs → library-DKIqzyUk.mjs} +2 -2
- package/dist/{library-DuIrR8LS.mjs → library-wUiD2jbw.mjs} +1 -1
- package/dist/{list-B5kRBn7k.mjs → list-B6TYzXyW.mjs} +4 -4
- package/dist/{list-3Dh5yeq-.mjs → list-B8FPpgct.mjs} +2 -2
- package/dist/{list-D_fsrh8w.mjs → list-BEBAq1xc.mjs} +2 -2
- package/dist/{list-DlgjWr4r.mjs → list-BKhJfFyB.mjs} +2 -2
- package/dist/{list-DpK3ioES.mjs → list-BxIulkp3.mjs} +5 -5
- package/dist/{list-BUjI5G0_.mjs → list-C-f-G-cC.mjs} +4 -4
- package/dist/{list-6nGX0Rqc.mjs → list-C1dEh2yq.mjs} +5 -5
- package/dist/{list-B3Pngm2j.mjs → list-C3CXHKTW.mjs} +2 -2
- package/dist/{list-Ba7u5Ai9.mjs → list-C6roDyBd.mjs} +5 -5
- package/dist/{list-Do-Xnz0I.mjs → list-CT7AOXTS.mjs} +2 -2
- package/dist/{list-DsR58aMq.mjs → list-CTlIVHeG.mjs} +3 -3
- package/dist/{list-CCCy6cBI.mjs → list-CmOTwt_z.mjs} +3 -3
- package/dist/list-CpxEOoqw.mjs +48 -0
- package/dist/{list-B8V_OESj.mjs → list-CuEPFHrk.mjs} +2 -2
- package/dist/{list-DjlfBd7W.mjs → list-D8jiz8YP.mjs} +2 -2
- package/dist/{list-Cr5Hoq-E.mjs → list-DV4wojtv.mjs} +2 -2
- package/dist/{list-D1Q8H3jn.mjs → list-DVnPzc5m.mjs} +3 -3
- package/dist/{list-CRXTfEFk.mjs → list-NeImhwLD.mjs} +2 -2
- package/dist/{list-D7yH-64Z.mjs → list-OWPg67JC.mjs} +4 -4
- package/dist/{list-Cf6A9Csi.mjs → list-O_nmgwSj.mjs} +2 -2
- package/dist/{list-DA1Fo6S6.mjs → list-jT5ndEGr.mjs} +2 -2
- package/dist/{login-CXbCAcuB.mjs → login-DOW1mr40.mjs} +15 -8
- package/dist/{logout-B6IGzkpG.mjs → logout-BQ8wywf7.mjs} +2 -2
- package/dist/{measure-CbMgNhlG.mjs → measure-Bz-bGn-Z.mjs} +5 -5
- package/dist/{moderation-review-BdqEH6N1.mjs → moderation-review-Bf9bPNQI.mjs} +1 -1
- package/dist/{parameter-Celg0wZa.mjs → parameter-DvRQMKd2.mjs} +6 -6
- package/dist/{parameter-values-IWi_DNhp.mjs → parameter-values-B7rr6fcy.mjs} +21 -7
- package/dist/{parse-enum-B2rGiC6p.mjs → parse-enum-DAcTzG1q.mjs} +1 -1
- package/dist/{parse-id-Cv5eM7sg.mjs → parse-id-5BZGQ9Vd.mjs} +1 -1
- package/dist/{parse-ref-DW7ik6ny.mjs → parse-ref-ByXc-pls.mjs} +1 -1
- package/dist/{parse-text-CUCSWOeR.mjs → parse-text-FgX60vIg.mjs} +1 -1
- package/dist/{path-C9r9urRK.mjs → path-CHQguAPa.mjs} +3 -3
- package/dist/{poll-CX3jPtXb.mjs → poll-CgtcJopL.mjs} +2 -2
- package/dist/{preflight-CiTgqNUy.mjs → preflight-ChTKhB8Y.mjs} +2 -2
- package/dist/{process-DImdroix.mjs → process-aqXm5QgC.mjs} +1 -1
- package/dist/{publish-xH1n74gd.mjs → publish-CaoFOucS.mjs} +4 -4
- package/dist/{pulse-Dz0ocv0l.mjs → pulse-CC81N2_0.mjs} +1 -1
- package/dist/{pulse-CFj1WfIC.mjs → pulse-JPrq6NFP.mjs} +1 -1
- package/dist/{query-CN3BW5WB.mjs → query-0u1WR1bV.mjs} +12 -12
- package/dist/{query-BOCw0FBK.mjs → query-CzDBwAZD.mjs} +17 -7
- package/dist/{remapping-Dggq2Fv0.mjs → remapping-CodmT28F.mjs} +4 -4
- package/dist/{remove-collection-cxSSFxza.mjs → remove-collection-DfUsf6Dd.mjs} +4 -4
- package/dist/{render-Cb8Hct67.mjs → render-DP6UoZNT.mjs} +2 -2
- package/dist/{replace-wVi_XDut.mjs → replace-qWiUOgmn.mjs} +3 -3
- package/dist/{requirement-check-BE3PuGsC.mjs → requirement-check-sfmyH2PH.mjs} +1 -1
- package/dist/{rescan-values-DAp_avxY.mjs → rescan-values-BcrhdSj_.mjs} +4 -4
- package/dist/{rescan-values-C7b1Ghy-.mjs → rescan-values-BuDmeda3.mjs} +4 -4
- package/dist/{run-CUGs7mok.mjs → run-BBRnFayr.mjs} +4 -4
- package/dist/{run-CE6ei7s7.mjs → run-BG_5lR0x.mjs} +2 -2
- package/dist/{run-DywhwjNG.mjs → run-DXXD-CnS.mjs} +4 -4
- package/dist/{runs--14jim_0.mjs → runs-CovgMSwy.mjs} +3 -3
- package/dist/{runtime-Ckns6TKK.mjs → runtime-Cmes70jO.mjs} +63 -80
- package/dist/{schema-tables-CeW0kpA5.mjs → schema-tables-CjKl8jr5.mjs} +5 -5
- package/dist/{schemas-CHMD0HrY.mjs → schemas-CAGvBAD_.mjs} +3 -3
- package/dist/{search-CXRavT7G.mjs → search-1et9tv_s.mjs} +21 -4
- package/dist/{search-LmBQu1Jg.mjs → search-DFU6FHRd.mjs} +5 -5
- package/dist/{search-DyC54bGf.mjs → search-OpYS2Ub4.mjs} +20 -5
- package/dist/{segment-DeT_Yic6.mjs → segment-D-SKpFzF.mjs} +5 -5
- package/dist/{send-BWSJMrDL.mjs → send-DNu83_3E.mjs} +2 -2
- package/dist/{set-r2xiXrT_.mjs → set-CGYZcLVo.mjs} +3 -3
- package/dist/{set-active-C5cLG4_O.mjs → set-active-32IaLx1O.mjs} +2 -2
- package/dist/set-data-actions-DRhgAfhE.mjs +46 -0
- package/dist/{set-sensitivity-BMLKazua.mjs → set-sensitivity-D_i3XEe8.mjs} +5 -5
- package/dist/{setting-CDRusiqP.mjs → setting-BBn9Lv9J.mjs} +3 -3
- package/dist/{setup-BZaJVww3.mjs → setup-8d7Uplhy.mjs} +2 -2
- package/dist/{signal-4tpCIkqR.mjs → signal-D8MH3LMN.mjs} +1 -1
- package/dist/{skills-y2iVfW9k.mjs → skills-BZGd_9d3.mjs} +2 -2
- package/dist/{skills-9ihLaSmM.mjs → skills-BeIDC-_H.mjs} +3 -3
- package/dist/{snippet-Ce0o33Rj.mjs → snippet-CpZ5cJ_y.mjs} +5 -5
- package/dist/{stash-Dj-mnIa4.mjs → stash-Dyc1xZ8u.mjs} +6 -6
- package/dist/{status-B2Xj_q8f.mjs → status-CQZwl1PX.mjs} +2 -2
- package/dist/{status-BtWz7Pzn.mjs → status-lCN8unWe.mjs} +36 -15
- package/dist/{subscription-Dh--agqE.mjs → subscription-CEFxmtGH.mjs} +5 -5
- package/dist/{subscriptions-CJ8Jdp9A.mjs → subscriptions-AU14uznL.mjs} +4 -4
- package/dist/{summary-ccbkNDbC.mjs → summary-Do9IBOQM.mjs} +4 -4
- package/dist/{sync-schema-HwQectZd.mjs → sync-schema-B3nyoKZl.mjs} +4 -4
- package/dist/{sync-schema-CewUOkmm.mjs → sync-schema-_gw9RQyF.mjs} +5 -5
- package/dist/{sync-task-DEzhiaU9.mjs → sync-task-DNKG9Bk4.mjs} +2 -2
- package/dist/{table-CFZU-BRg.mjs → table-BDsqRU7a.mjs} +2 -2
- package/dist/{table-zAdW5_3H.mjs → table-CF7zW9cI.mjs} +33 -20
- package/dist/table-Cb_Uvw8m.mjs +26 -0
- package/dist/{table-selector-flags-p4jun7-v.mjs → table-selector-flags-CHfrVpYQ.mjs} +3 -3
- package/dist/{timeline-event-xAAR6b-v.mjs → timeline-event-B-nGnoVL.mjs} +5 -5
- package/dist/{timeline-DLaBypse.mjs → timeline-x0s_3sfc.mjs} +7 -7
- package/dist/transform-job-Dlx2c6II.mjs +22 -0
- package/dist/transform-kP11Mv9_.mjs +28 -0
- package/dist/{transform-tag-BXusFzMX.mjs → transform-tag-dKCqQPTd.mjs} +4 -4
- package/dist/{transform-test-UsH1udc4.mjs → transform-test-jFuzVhlT.mjs} +6 -6
- package/dist/{transforms-CqV01bMM.mjs → transforms-DRAws1f4.mjs} +3 -3
- package/dist/{transport-0qFZhEuP.mjs → transport-Ck4anhoc.mjs} +4 -4
- package/dist/{tree-Td6rgyOa.mjs → tree-Ddsj298M.mjs} +3 -3
- package/dist/{unpublish-D4XTZsFW.mjs → unpublish-BMfjQ8UV.mjs} +2 -2
- package/dist/{unreferenced-cR-l4zXN.mjs → unreferenced-DRQrvH5r.mjs} +5 -5
- package/dist/{update-C7dZLbsf.mjs → update-0AoF6QJ_.mjs} +3 -3
- package/dist/{update-DrVc25R8.mjs → update-6sfqiInZ.mjs} +4 -4
- package/dist/{update-Js0IiqCq.mjs → update-8eXJso_l.mjs} +5 -5
- package/dist/{update-CND9At61.mjs → update-BCC1Igr2.mjs} +3 -3
- package/dist/{update-DROjGe3Q.mjs → update-BIL0JPqm.mjs} +3 -3
- package/dist/{update-BqkqMOVN.mjs → update-BQLTaw3z.mjs} +5 -5
- package/dist/{update-DFK2iUSP.mjs → update-Bpsdi6kM.mjs} +3 -3
- package/dist/{update-Dk0E66Va.mjs → update-BtfUX9CN.mjs} +7 -7
- package/dist/{update-BJL5975i.mjs → update-C19B1Sry.mjs} +3 -3
- package/dist/{update-CpwWURTp.mjs → update-C1VwtJWu.mjs} +4 -4
- package/dist/{update-DZHgr6Gu.mjs → update-C1x90FSH.mjs} +4 -4
- package/dist/{update-C7Wmom6x.mjs → update-CGpiLu7N.mjs} +7 -7
- package/dist/{update-dQeji6RA.mjs → update-CnxzmPRG.mjs} +5 -5
- package/dist/{update-nGURR-y6.mjs → update-D1aKeWfo.mjs} +3 -3
- package/dist/{update-C4iu-vQm.mjs → update-DlFHoUxe.mjs} +3 -3
- package/dist/{update-DqCZsbLh.mjs → update-DpP1EEC0.mjs} +3 -3
- package/dist/{update-D-cTgmb0.mjs → update-DrT10fxQ.mjs} +3 -3
- package/dist/{update-CHB4kvz-.mjs → update-_hHnM1Hx.mjs} +7 -8
- package/dist/{update-dashcard-BmkfJ7t9.mjs → update-dashcard-CDI0Tnxy.mjs} +6 -6
- package/dist/{update-C8xdeYI2.mjs → update-pXVhyiFo.mjs} +5 -5
- package/dist/{upgrade-B6V_1cUh.mjs → upgrade-Cfouv1Ii.mjs} +4 -4
- package/dist/{upload-Dvjfz16M.mjs → upload-Cqv-In6j.mjs} +3 -3
- package/dist/{upload-CfYmBv51.mjs → upload-DIEcI5iM.mjs} +2 -2
- package/dist/{upload-B6zBzMPW.mjs → upload-DnLXgUA-.mjs} +3 -3
- package/dist/{uuid-B8ynbkqG.mjs → uuid-D0sH5txV.mjs} +2 -2
- package/dist/{validate-C7DGkwb-.mjs → validate-BQ7vI8_x.mjs} +1 -1
- package/dist/{validate-query-CYUvRvVM.mjs → validate-query-YtH3d5BP.mjs} +2 -2
- package/dist/{values-36bzf9cK.mjs → values-BFPO6y5o.mjs} +4 -4
- package/dist/{verify-Cs9e28YA.mjs → verify-7fW020r_.mjs} +3 -3
- package/dist/{verify-C4Tml4fD.mjs → verify-C-StvB4f.mjs} +4 -4
- package/dist/{verify-BdW-GExk.mjs → verify-CuGs0X3C.mjs} +4 -4
- package/dist/{verify-flags-CMpRkMPa.mjs → verify-flags-DEVMB9w0.mjs} +1 -1
- package/dist/{wait-BV6JOdgi.mjs → wait-Cvt8xO0h.mjs} +5 -5
- package/dist/{wait-flags-DjyK03cm.mjs → wait-flags-BnZ-dfE2.mjs} +2 -2
- package/package.json +1 -1
- package/skill-data/data-action/SKILL.md +18 -7
- package/skill-data/git-sync/SKILL.md +3 -3
- package/skill-data/transform/SKILL.md +1 -1
- package/dist/db-m5bQcXdn.mjs +0 -24
- package/dist/embedding-i-KqpefC.mjs +0 -9
- package/dist/git-sync-BwkWeJAz.mjs +0 -29
- package/dist/input-AXP2LCOV.mjs +0 -61
- package/dist/list-CUj04tg3.mjs +0 -38
- package/dist/table-P9ovwcaB.mjs +0 -26
- package/dist/transform-10YE8j5K.mjs +0 -28
- package/dist/transform-job-D97AutnF.mjs +0 -22
package/dist/cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { defineCommand, renderUsage, runMain } from "citty";
|
|
2
|
+
import { defineCommand, parseArgs, renderUsage, runMain } from "citty";
|
|
3
3
|
import { ZodError, core, z } from "zod";
|
|
4
4
|
import tls from "node:tls";
|
|
5
5
|
import { confirm, isCancel, password, select, text } from "@clack/prompts";
|
|
@@ -451,6 +451,15 @@ function readValueFlag(item, spellings) {
|
|
|
451
451
|
value: readFlagValue(item, spellings)
|
|
452
452
|
};
|
|
453
453
|
}
|
|
454
|
+
function assertRequiredPositionals(rawArgs, argsDef) {
|
|
455
|
+
const given = [...readArgv(rawArgs, commandSpellings(argsDef))].filter((item) => item.kind === "positional").length;
|
|
456
|
+
const declared = Object.entries(argsDef).filter(([, def]) => def.type === "positional");
|
|
457
|
+
const missing = declared.slice(given).find(([, def]) => def.required === true);
|
|
458
|
+
if (missing === void 0) return;
|
|
459
|
+
assertArgv(rawArgs, argsDef);
|
|
460
|
+
const usage = declared.map(([name]) => `<${name}>`).join(" ");
|
|
461
|
+
throw new ConfigError(`missing argument: <${missing[0]}> (this command takes ${usage})`);
|
|
462
|
+
}
|
|
454
463
|
function assertPositionalCount(positionals, argsDef) {
|
|
455
464
|
const declared = Object.entries(argsDef).filter(([, def]) => def.type === "positional").map(([name]) => `<${name}>`);
|
|
456
465
|
const extra = positionals[declared.length];
|
|
@@ -490,6 +499,16 @@ function readsAsFlag(value, spellings) {
|
|
|
490
499
|
return value.startsWith("--no-") || parseFlagToken(value, spellings).flag !== null;
|
|
491
500
|
}
|
|
492
501
|
//#endregion
|
|
502
|
+
//#region src/output/format.ts
|
|
503
|
+
function resolveFormat({ json, format, isTty }) {
|
|
504
|
+
const explicit = format !== void 0 && format !== "auto" ? format : null;
|
|
505
|
+
if (explicit !== null && explicit !== "json" && explicit !== "text") throw new ConfigError(`invalid --format value: "${explicit}" (expected: auto, json, text)`);
|
|
506
|
+
if (json && explicit !== null && explicit !== "json") throw new ConfigError(`--json conflicts with --format ${explicit}`);
|
|
507
|
+
if (json) return "json";
|
|
508
|
+
if (explicit !== null) return explicit;
|
|
509
|
+
return isTty ? "text" : "json";
|
|
510
|
+
}
|
|
511
|
+
//#endregion
|
|
493
512
|
//#region src/output/types.ts
|
|
494
513
|
const DEFAULT_MAX_BYTES = 24576;
|
|
495
514
|
function listEnvelopeSchema(item) {
|
|
@@ -517,6 +536,73 @@ function listEnvelopeShape(item) {
|
|
|
517
536
|
};
|
|
518
537
|
}
|
|
519
538
|
//#endregion
|
|
539
|
+
//#region src/commands/parse-integer.ts
|
|
540
|
+
const INTEGER_PATTERN = /^-?\d+$/;
|
|
541
|
+
function parseInteger(value, options) {
|
|
542
|
+
const trimmed = value.trim();
|
|
543
|
+
if (!INTEGER_PATTERN.test(trimmed)) {
|
|
544
|
+
const expected = options.expected ?? "integer";
|
|
545
|
+
throw new ConfigError(`invalid ${options.name}: "${value}" (expected ${expected})`);
|
|
546
|
+
}
|
|
547
|
+
const parsed = Number.parseInt(trimmed, 10);
|
|
548
|
+
if (parsed < options.min) throw new ConfigError(`invalid ${options.name}: ${parsed} (must be ≥ ${options.min})`);
|
|
549
|
+
return parsed;
|
|
550
|
+
}
|
|
551
|
+
function parseOptionalInteger(value, options) {
|
|
552
|
+
if (value === void 0) return null;
|
|
553
|
+
return parseInteger(value, options);
|
|
554
|
+
}
|
|
555
|
+
//#endregion
|
|
556
|
+
//#region src/commands/context.ts
|
|
557
|
+
function resolveOutputFormat(args, options = {}) {
|
|
558
|
+
return resolveFormat({
|
|
559
|
+
json: args.json,
|
|
560
|
+
format: args.format,
|
|
561
|
+
isTty: options.isTty ?? Boolean(process.stdout.isTTY)
|
|
562
|
+
});
|
|
563
|
+
}
|
|
564
|
+
function resolveCommonFlags(args, options = {}) {
|
|
565
|
+
const fields = parseFields(args.fields);
|
|
566
|
+
const full = args.full === true;
|
|
567
|
+
if (full && fields !== void 0) throw new ConfigError("--full conflicts with --fields (use one or neither)");
|
|
568
|
+
return {
|
|
569
|
+
format: resolveOutputFormat(args, options),
|
|
570
|
+
full,
|
|
571
|
+
fields,
|
|
572
|
+
maxBytes: parseMaxBytes(args.maxBytes),
|
|
573
|
+
maxBytesGiven: args.maxBytes !== void 0,
|
|
574
|
+
range: parseRange(args.limit, args.offset),
|
|
575
|
+
url: args.url,
|
|
576
|
+
apiKey: args.apiKey,
|
|
577
|
+
profile: args.profile,
|
|
578
|
+
skipPreflight: args.skipPreflight
|
|
579
|
+
};
|
|
580
|
+
}
|
|
581
|
+
function parseFields(value) {
|
|
582
|
+
if (value === void 0 || value === "") return;
|
|
583
|
+
const parts = parseCsv(value);
|
|
584
|
+
return parts.length > 0 ? parts : void 0;
|
|
585
|
+
}
|
|
586
|
+
function parseMaxBytes(value) {
|
|
587
|
+
return parseInteger(value ?? String(24576), {
|
|
588
|
+
name: "--max-bytes",
|
|
589
|
+
min: 0
|
|
590
|
+
});
|
|
591
|
+
}
|
|
592
|
+
function parseRange(limit, offset) {
|
|
593
|
+
const parsedLimit = parseOptionalInteger(limit, {
|
|
594
|
+
name: "--limit",
|
|
595
|
+
min: 1
|
|
596
|
+
});
|
|
597
|
+
return {
|
|
598
|
+
offset: parseInteger(offset ?? "0", {
|
|
599
|
+
name: "--offset",
|
|
600
|
+
min: 0
|
|
601
|
+
}),
|
|
602
|
+
limit: parsedLimit === null ? void 0 : parsedLimit
|
|
603
|
+
};
|
|
604
|
+
}
|
|
605
|
+
//#endregion
|
|
520
606
|
//#region src/commands/flags.ts
|
|
521
607
|
function listFlag(def) {
|
|
522
608
|
return {
|
|
@@ -636,7 +722,7 @@ function trustSystemCa() {
|
|
|
636
722
|
//#endregion
|
|
637
723
|
//#region package.json
|
|
638
724
|
var name = "@metabase/cli";
|
|
639
|
-
var version = "0.5.
|
|
725
|
+
var version = "0.5.2";
|
|
640
726
|
var description = "Metabase CLI";
|
|
641
727
|
//#endregion
|
|
642
728
|
//#region src/runtime/command-augment.ts
|
|
@@ -656,40 +742,40 @@ const main = defineCommand({
|
|
|
656
742
|
description
|
|
657
743
|
},
|
|
658
744
|
subCommands: {
|
|
659
|
-
auth: () => import("./auth-
|
|
660
|
-
db: () => import("./db-
|
|
661
|
-
table: () => import("./table-
|
|
662
|
-
field: () => import("./field-
|
|
663
|
-
upload: () => import("./upload-
|
|
664
|
-
"content-translation": () => import("./content-translation-
|
|
665
|
-
card: () => import("./card-
|
|
666
|
-
dashboard: () => import("./dashboard-
|
|
667
|
-
subscription: () => import("./subscription-
|
|
668
|
-
"data-action": () => import("./data-action-
|
|
669
|
-
alert: () => import("./alert-
|
|
670
|
-
collection: () => import("./collection-
|
|
671
|
-
library: () => import("./library-
|
|
672
|
-
document: () => import("./document-
|
|
673
|
-
glossary: () => import("./glossary-
|
|
674
|
-
transform: () => import("./transform-
|
|
675
|
-
"transform-job": () => import("./transform-job-
|
|
676
|
-
"transform-tag": () => import("./transform-tag-
|
|
677
|
-
"transform-test": () => import("./transform-test-
|
|
678
|
-
setting: () => import("./setting-
|
|
679
|
-
search: () => import("./search-
|
|
680
|
-
"git-sync": () => import("./git-sync-
|
|
681
|
-
setup: () => import("./setup-
|
|
682
|
-
snippet: () => import("./snippet-
|
|
683
|
-
segment: () => import("./segment-
|
|
684
|
-
measure: () => import("./measure-
|
|
685
|
-
dependency: () => import("./dependency-
|
|
686
|
-
timeline: () => import("./timeline-
|
|
687
|
-
"timeline-event": () => import("./timeline-event-
|
|
688
|
-
eid: () => import("./eid-
|
|
689
|
-
query: () => import("./query-
|
|
690
|
-
uuid: () => import("./uuid-
|
|
691
|
-
upgrade: () => import("./upgrade-
|
|
692
|
-
skills: () => import("./skills-
|
|
745
|
+
auth: () => import("./auth-_cdypXeX.mjs").then((mod) => mod.default),
|
|
746
|
+
db: () => import("./db-BgKKN1-4.mjs").then((mod) => mod.default),
|
|
747
|
+
table: () => import("./table-Cb_Uvw8m.mjs").then((mod) => mod.default),
|
|
748
|
+
field: () => import("./field-BUkyWiWk.mjs").then((mod) => mod.default),
|
|
749
|
+
upload: () => import("./upload-Cqv-In6j.mjs").then((mod) => mod.default),
|
|
750
|
+
"content-translation": () => import("./content-translation-DxT1OMnP.mjs").then((mod) => mod.default),
|
|
751
|
+
card: () => import("./card-BnL92zoT.mjs").then((mod) => mod.default),
|
|
752
|
+
dashboard: () => import("./dashboard-Bq1pae4N.mjs").then((mod) => mod.default),
|
|
753
|
+
subscription: () => import("./subscription-CEFxmtGH.mjs").then((mod) => mod.default),
|
|
754
|
+
"data-action": () => import("./data-action-BZ2PvlaP.mjs").then((mod) => mod.default),
|
|
755
|
+
alert: () => import("./alert-mXHOt00T.mjs").then((mod) => mod.default),
|
|
756
|
+
collection: () => import("./collection-DRHGwFSL.mjs").then((mod) => mod.default),
|
|
757
|
+
library: () => import("./library-5I0TlXmf.mjs").then((mod) => mod.default),
|
|
758
|
+
document: () => import("./document-C0mZEg5w.mjs").then((mod) => mod.default),
|
|
759
|
+
glossary: () => import("./glossary-B9Eo4hXc.mjs").then((mod) => mod.default),
|
|
760
|
+
transform: () => import("./transform-kP11Mv9_.mjs").then((mod) => mod.default),
|
|
761
|
+
"transform-job": () => import("./transform-job-Dlx2c6II.mjs").then((mod) => mod.default),
|
|
762
|
+
"transform-tag": () => import("./transform-tag-dKCqQPTd.mjs").then((mod) => mod.default),
|
|
763
|
+
"transform-test": () => import("./transform-test-jFuzVhlT.mjs").then((mod) => mod.default),
|
|
764
|
+
setting: () => import("./setting-BBn9Lv9J.mjs").then((mod) => mod.default),
|
|
765
|
+
search: () => import("./search-OpYS2Ub4.mjs").then((mod) => mod.default),
|
|
766
|
+
"git-sync": () => import("./git-sync-CNTB5jvI.mjs").then((mod) => mod.default),
|
|
767
|
+
setup: () => import("./setup-8d7Uplhy.mjs").then((mod) => mod.default),
|
|
768
|
+
snippet: () => import("./snippet-CpZ5cJ_y.mjs").then((mod) => mod.default),
|
|
769
|
+
segment: () => import("./segment-D-SKpFzF.mjs").then((mod) => mod.default),
|
|
770
|
+
measure: () => import("./measure-Bz-bGn-Z.mjs").then((mod) => mod.default),
|
|
771
|
+
dependency: () => import("./dependency-6kfpR8Ga.mjs").then((mod) => mod.default),
|
|
772
|
+
timeline: () => import("./timeline-x0s_3sfc.mjs").then((mod) => mod.default),
|
|
773
|
+
"timeline-event": () => import("./timeline-event-B-nGnoVL.mjs").then((mod) => mod.default),
|
|
774
|
+
eid: () => import("./eid-Tp-ACZ4O.mjs").then((mod) => mod.default),
|
|
775
|
+
query: () => import("./query-0u1WR1bV.mjs").then((mod) => mod.default),
|
|
776
|
+
uuid: () => import("./uuid-D0sH5txV.mjs").then((mod) => mod.default),
|
|
777
|
+
upgrade: () => import("./upgrade-Cfouv1Ii.mjs").then((mod) => mod.default),
|
|
778
|
+
skills: () => import("./skills-BeIDC-_H.mjs").then((mod) => mod.default)
|
|
693
779
|
}
|
|
694
780
|
});
|
|
695
781
|
setMetabaseAugment(main, {
|
|
@@ -1753,6 +1839,7 @@ const METHOD_REQUIREMENTS = {
|
|
|
1753
1839
|
"dataAction.execute": [],
|
|
1754
1840
|
"database.list": [],
|
|
1755
1841
|
"database.get": [],
|
|
1842
|
+
"database.update": [],
|
|
1756
1843
|
"database.schemas": [],
|
|
1757
1844
|
"database.schemaTables": [],
|
|
1758
1845
|
"database.syncSchema": [],
|
|
@@ -1796,6 +1883,7 @@ const METHOD_REQUIREMENTS = {
|
|
|
1796
1883
|
"gitSync.syncedCollections": ["remoteSync"],
|
|
1797
1884
|
"gitSync.remoteUrl": [],
|
|
1798
1885
|
"gitSync.branch": ["remoteSync"],
|
|
1886
|
+
"gitSync.remote": ["remoteSync"],
|
|
1799
1887
|
"gitSync.trackedBranch": ["remoteSync"],
|
|
1800
1888
|
"gitSync.waitForTask": ["remoteSync"],
|
|
1801
1889
|
"glossary.list": [],
|
|
@@ -2283,6 +2371,7 @@ function installInterruptHandler(exit) {
|
|
|
2283
2371
|
//#region src/cli.ts
|
|
2284
2372
|
const HELP_FLAGS = /* @__PURE__ */ new Set(["--help", "-h"]);
|
|
2285
2373
|
const JSON_HELP_FLAG = "--json";
|
|
2374
|
+
const OUTPUT_FORMAT_FLAGS = ["json", "format"];
|
|
2286
2375
|
async function run() {
|
|
2287
2376
|
installInterruptHandler((code) => process.exit(code));
|
|
2288
2377
|
trustSystemCa();
|
|
@@ -2306,12 +2395,42 @@ async function run() {
|
|
|
2306
2395
|
reportError(new ConfigError(`unknown command: ${unknown}`));
|
|
2307
2396
|
return;
|
|
2308
2397
|
}
|
|
2398
|
+
if (await refusedLeafArgv(rawArgs)) return;
|
|
2309
2399
|
}
|
|
2310
2400
|
await runMain(main, {
|
|
2311
2401
|
showUsage: showUsageWithBreadcrumb,
|
|
2312
2402
|
rawArgs
|
|
2313
2403
|
});
|
|
2314
2404
|
}
|
|
2405
|
+
async function refusedLeafArgv(rawArgs) {
|
|
2406
|
+
const leaf = await resolveLeafArgv(main, rawArgs);
|
|
2407
|
+
if (leaf === null) return false;
|
|
2408
|
+
const leafArgs = rawArgs.slice(leaf.argsStart);
|
|
2409
|
+
try {
|
|
2410
|
+
assertRequiredPositionals(leafArgs, leaf.argsDef);
|
|
2411
|
+
return false;
|
|
2412
|
+
} catch (error) {
|
|
2413
|
+
reportError(error, reportFormat(leafArgs, leaf.argsDef));
|
|
2414
|
+
return true;
|
|
2415
|
+
}
|
|
2416
|
+
}
|
|
2417
|
+
function reportFormat(leafArgs, argsDef) {
|
|
2418
|
+
const outputFlags = Object.fromEntries(OUTPUT_FORMAT_FLAGS.flatMap((key) => {
|
|
2419
|
+
const def = argsDef[key];
|
|
2420
|
+
return def === void 0 ? [] : [[key, def]];
|
|
2421
|
+
}));
|
|
2422
|
+
const parsed = parseArgs([...leafArgs], outputFlags);
|
|
2423
|
+
const format = parsed["format"];
|
|
2424
|
+
const json = parsed["json"] === true;
|
|
2425
|
+
try {
|
|
2426
|
+
return resolveOutputFormat(typeof format === "string" ? {
|
|
2427
|
+
json,
|
|
2428
|
+
format
|
|
2429
|
+
} : { json });
|
|
2430
|
+
} catch {
|
|
2431
|
+
return;
|
|
2432
|
+
}
|
|
2433
|
+
}
|
|
2315
2434
|
async function normalizeArgv(argv) {
|
|
2316
2435
|
const hoisted = hoistGlobalFlags(argv);
|
|
2317
2436
|
const leaf = await resolveLeafArgv(main, hoisted);
|
|
@@ -2323,4 +2442,4 @@ run().catch((error) => {
|
|
|
2323
2442
|
reportError(error);
|
|
2324
2443
|
});
|
|
2325
2444
|
//#endregion
|
|
2326
|
-
export { parseJsonResult as $, ENV_URL as A,
|
|
2445
|
+
export { parseJsonResult as $, ENV_URL as A, UnknownError as At, Features as B, preflightUncheckedNotice as C, FailedResultError as Ct, ENV_PROFILE as D, PartialWriteError as Dt, ENV_DISABLE_KEYRING as E, NetworkError as Et, RequirementFailure as F, isNonInterruptFailure as Ft, chainRequestFailure as G, isFeatureName as H, missingTokenFeatureMessage as I, KNOWN_RANGE as It, isBlank as J, isRetryableStatus as K, versionTooOldMessage as L, escapeJsonPointerSegment as Lt, readEnv as M, errorMessage as Mt, ProfileRefreshedError as N, formatZodIssue as Nt, ENV_SKILLS_DIR as O, ResponseShapeError as Ot, CapabilityError as P, isFileNotFoundError as Pt, parseJsonOrPlain as Q, FEATURE_NAMES as R, preflightSkippedNotice as S, ConfigError as St, ENV_API_KEY as T, MetabaseError as Tt, ruleGap as U, evaluateFeatures as V, HttpError as W, JSON_CONTENT_TYPE as X, isPlainObject as Y, parseJson as Z, promptConfirm as _, givenFlagKeys as _t, renderItem as a, listFlag as at, promptText as b, parseEnumCsv as bt, renderSummary as c, outputFlags as ct, writeJson as d, resolveOutputFormat as dt, setMetabaseAugment as et, writeText as f, parseInteger as ft, projectForList as g, assertArgv as gt, renderRows as h, listEnvelopeSchemaWithExtras as ht, reportError as i, formatFlags as it, consumeLegacyEnvWarnings as j, ValidationError as jt, ENV_SKIP_PREFLIGHT as k, TimeoutError as kt, renderSummaryWithinMaxBytes as l, profileFlag as lt, formatScalar as m, listEnvelopeSchema as mt, isMethodKey as n, version as nt, renderList as o, listFlags as ot, MALFORMED_CELL as p, parseOptionalInteger as pt, NOT_BLANK as q, methodRequirements as r, connectionFlags as rt, renderListWithExtras as s, listFlagsWithDefaultLimit as st, interruptSignal as t, name as tt, serializeJson as u, resolveCommonFlags as ut, promptPassword as v, parseCsv as vt, warn as w, InternalError as wt, listTruncationNotice as x, AbortError as xt, promptSelect as y, parseEnum as yt, FEATURE_RULES as z };
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Dt as PartialWriteError, Ft as isNonInterruptFailure, Mt as errorMessage, Nt as formatZodIssue, Ot as ResponseShapeError, P as CapabilityError, Q as parseJsonOrPlain, St as ConfigError, W as HttpError, Y as isPlainObject, kt as TimeoutError, n as isMethodKey, r as methodRequirements, wt as InternalError } from "./cli.mjs";
|
|
2
2
|
import { n as Notification, r as NotificationCardPayload, t as CARD_PAYLOAD_TYPE } from "./notification-DaA4bBHW.mjs";
|
|
3
|
-
import {
|
|
4
|
-
import { n as featureFailures, r as supersedingFeature, t as checkFeatures } from "./requirement-check-
|
|
5
|
-
import { n as createTransport } from "./transport-
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { V as profileFromProperties, tt as SessionProperties } from "./runtime-Cmes70jO.mjs";
|
|
4
|
+
import { n as featureFailures, r as supersedingFeature, t as checkFeatures } from "./requirement-check-sfmyH2PH.mjs";
|
|
5
|
+
import { n as createTransport } from "./transport-Ck4anhoc.mjs";
|
|
6
|
+
import { i as CardDetail, o as CardQueryResult, t as Card } from "./card-QR3zEu6E.mjs";
|
|
7
|
+
import { f as FieldWithDataSensitivity, g as fieldRemappedValueSchema, h as fieldDetailSchema, n as FieldBaseType, o as FieldSearchMatches, s as FieldSemanticType, u as FieldValues } from "./field-DoWQUl7V.mjs";
|
|
8
|
+
import { r as ModerationReviewCreateInput, t as ModerationReview } from "./moderation-review-Bf9bPNQI.mjs";
|
|
9
|
+
import { a as TemporalUnit, r as ParameterValues } from "./parameter-DvRQMKd2.mjs";
|
|
8
10
|
import { r as PivotExportFormat, t as DatasetQuery } from "./query-BKtMP5eH.mjs";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { t as Database } from "./database-2HYCdHqK.mjs";
|
|
11
|
+
import { b as TableVisibilityType, p as TableQueryMetadata, s as TableDataLayerTier, t as Table, u as TableForeignKey, v as TableSelectors } from "./table-CF7zW9cI.mjs";
|
|
12
|
+
import { c as DatabaseWithSettings, t as Database } from "./database-CxykzTAA.mjs";
|
|
12
13
|
import { t as Snippet } from "./snippet-CyKAgIZl.mjs";
|
|
13
|
-
import { r as QueryMetadata, t as CompiledQuery } from "./dataset-
|
|
14
|
-
import { c as CollectionItem, m as CollectionTreeNode, r as Collection } from "./collection-
|
|
14
|
+
import { r as QueryMetadata, t as CompiledQuery } from "./dataset-DIQLAp2P.mjs";
|
|
15
|
+
import { c as CollectionItem, m as CollectionTreeNode, r as Collection } from "./collection-DNmFKALA.mjs";
|
|
15
16
|
import { t as ContentTranslationUploadResult } from "./content-translation-BrHOrmj9.mjs";
|
|
16
|
-
import {
|
|
17
|
+
import { o as DashboardDetail, r as DashboardCopy, t as Dashboard, u as Dashcard } from "./dashboard-Chjy5GKR.mjs";
|
|
17
18
|
import { a as DataActionExecuteResult, s as dataActionSchema } from "./data-action-DZxVB_hD.mjs";
|
|
18
|
-
import { r as pollUntil } from "./poll-
|
|
19
|
-
import { i as DependencyEntity, s as DependencyGraph, t as BreakingSource, u as DependencyNode } from "./dependency-
|
|
19
|
+
import { r as pollUntil } from "./poll-CgtcJopL.mjs";
|
|
20
|
+
import { i as DependencyEntity, s as DependencyGraph, t as BreakingSource, u as DependencyNode } from "./dependency-CaC6XuTY.mjs";
|
|
20
21
|
import { t as Document } from "./document-UMG6me2P.mjs";
|
|
21
22
|
import { i as EidTranslateResult } from "./eid-translation-Ba92VOHe.mjs";
|
|
22
|
-
import {
|
|
23
|
+
import { a as SyncExportPreflight, f as SyncTask, g as isSyncTaskTerminal, l as SyncRemoteChanges, n as SyncBranchCreated, r as SyncDirtyItem, t as RemoteSyncState, u as SyncSettingsUpdateResult } from "./git-sync-DP4wQFzm.mjs";
|
|
23
24
|
import { t as Glossary } from "./glossary-QN-hHfOT.mjs";
|
|
24
|
-
import { a as libraryWireSchema, i as LibraryPublishTablesInput, n as LibraryCollectionInfo, o as toLibrary } from "./library-
|
|
25
|
+
import { a as libraryWireSchema, i as LibraryPublishTablesInput, n as LibraryCollectionInfo, o as toLibrary } from "./library-DKIqzyUk.mjs";
|
|
25
26
|
import { t as Measure } from "./measure-CtfjqJFP.mjs";
|
|
26
|
-
import {
|
|
27
|
-
import { t as Pulse } from "./pulse-Dz0ocv0l.mjs";
|
|
27
|
+
import { t as Pulse } from "./pulse-CC81N2_0.mjs";
|
|
28
28
|
import { a as TransformDagTransform, d as TransformTarget, g as transformRowSchema, h as transformDetailSchema, i as TransformDagRunResult, l as TransformRunSummary, m as isTransformRunTerminal, o as TransformRun, p as isTransformRunFailed, u as TransformSourceTableEntry } from "./transform-DiW7bREn.mjs";
|
|
29
|
-
import { r as SearchResult } from "./search-
|
|
29
|
+
import { r as SearchResult } from "./search-1et9tv_s.mjs";
|
|
30
30
|
import { t as Segment } from "./segment-OsrbUDzw.mjs";
|
|
31
31
|
import { t as Setting } from "./setting-DTiLCW8g.mjs";
|
|
32
32
|
import { n as SetupResult } from "./setup-CO7QV-ao.mjs";
|
|
@@ -77,11 +77,11 @@ function cardResource(transport) {
|
|
|
77
77
|
}
|
|
78
78
|
/** Get one card by id. */
|
|
79
79
|
async function get(id, options = {}) {
|
|
80
|
-
return transport.requestParsed(
|
|
80
|
+
return transport.requestParsed(CardDetail, `/api/card/${id}`, { ...options });
|
|
81
81
|
}
|
|
82
82
|
/** Create a card — a question, a model, or a metric — from a full card body. */
|
|
83
83
|
async function create(params, options = {}) {
|
|
84
|
-
return transport.requestParsed(
|
|
84
|
+
return transport.requestParsed(CardDetail, "/api/card", {
|
|
85
85
|
...options,
|
|
86
86
|
method: "POST",
|
|
87
87
|
body: params
|
|
@@ -89,7 +89,7 @@ function cardResource(transport) {
|
|
|
89
89
|
}
|
|
90
90
|
/** Update a card by id, patching only the fields the body carries. */
|
|
91
91
|
async function update(id, params, options = {}) {
|
|
92
|
-
return transport.requestParsed(
|
|
92
|
+
return transport.requestParsed(CardDetail, `/api/card/${id}`, {
|
|
93
93
|
...options,
|
|
94
94
|
method: "PUT",
|
|
95
95
|
body: params
|
|
@@ -99,12 +99,20 @@ function cardResource(transport) {
|
|
|
99
99
|
async function archive(id, options = {}) {
|
|
100
100
|
return update(id, { archived: true }, options);
|
|
101
101
|
}
|
|
102
|
-
/**
|
|
102
|
+
/**
|
|
103
|
+
* Run the query associated with a Card and return the query result envelope. A result served
|
|
104
|
+
* from the cache carries the time it was computed in `cached`; `ignore_cache` runs the query
|
|
105
|
+
* against the database instead. The rows stop at the server's row limit for an API run, which
|
|
106
|
+
* `rows_truncated` carries when it cut them; `exportQuery` runs under the larger download limit.
|
|
107
|
+
*/
|
|
103
108
|
async function query(id, params, options = {}) {
|
|
104
109
|
return transport.requestParsed(CardQueryResult, `/api/card/${id}/query`, {
|
|
105
110
|
...options,
|
|
106
111
|
method: "POST",
|
|
107
|
-
body: {
|
|
112
|
+
body: {
|
|
113
|
+
parameters: params.parameters,
|
|
114
|
+
ignore_cache: params.ignore_cache
|
|
115
|
+
}
|
|
108
116
|
});
|
|
109
117
|
}
|
|
110
118
|
/**
|
|
@@ -217,13 +225,17 @@ async function listCollectionsAs(transport, schema, options = {}) {
|
|
|
217
225
|
function collectionResource(transport) {
|
|
218
226
|
/**
|
|
219
227
|
* List collections. `filter` picks a server-side preset: everything, archived, or personal. Every
|
|
220
|
-
* preset includes the Library collections that match it.
|
|
228
|
+
* preset includes the Library collections that match it. `namespace` lists that namespace's
|
|
229
|
+
* collections, with its root, instead of the default namespace's.
|
|
221
230
|
*/
|
|
222
231
|
async function list(params = {}, options = {}) {
|
|
223
232
|
return {
|
|
224
233
|
data: await transport.requestParsed(CollectionApiList, "/api/collection", {
|
|
225
234
|
...options,
|
|
226
|
-
query:
|
|
235
|
+
query: {
|
|
236
|
+
...COLLECTION_LIST_QUERY[params.filter ?? DEFAULT_LIST_FILTER],
|
|
237
|
+
namespace: params.namespace
|
|
238
|
+
}
|
|
227
239
|
}),
|
|
228
240
|
total: null
|
|
229
241
|
};
|
|
@@ -479,15 +491,26 @@ function dashboardResource(transport) {
|
|
|
479
491
|
}
|
|
480
492
|
/**
|
|
481
493
|
* Update a dashboard by id, patching only the fields the body carries. `dashcards` and `tabs` are
|
|
482
|
-
* full replacements: whatever the
|
|
494
|
+
* full replacements: whatever the arrays omit is deleted from the dashboard. A body with
|
|
495
|
+
* `dashcards` and no `tabs` key keeps the current tabs, read first: the server takes the missing
|
|
496
|
+
* key for an empty list and deletes every tab, or fails on a dashcard that still names one.
|
|
483
497
|
*/
|
|
484
498
|
async function update(id, params, options = {}) {
|
|
499
|
+
const body = await withCurrentTabs(id, params, options);
|
|
485
500
|
return transport.requestParsed(DashboardDetail, `/api/dashboard/${id}`, {
|
|
486
501
|
...options,
|
|
487
502
|
method: "PUT",
|
|
488
|
-
body
|
|
503
|
+
body
|
|
489
504
|
});
|
|
490
505
|
}
|
|
506
|
+
async function withCurrentTabs(id, params, options) {
|
|
507
|
+
if (params.dashcards === void 0 || params.tabs !== void 0) return params;
|
|
508
|
+
const current = await get(id, options);
|
|
509
|
+
return {
|
|
510
|
+
...params,
|
|
511
|
+
tabs: tabWrites(current.tabs)
|
|
512
|
+
};
|
|
513
|
+
}
|
|
491
514
|
/**
|
|
492
515
|
* Copy a dashboard, with its tabs and dashcards, into `collection_id` (root when absent). A deep
|
|
493
516
|
* copy duplicates its questions and metrics and references its models. With `is_deep_copy`
|
|
@@ -520,7 +543,7 @@ function dashboardResource(transport) {
|
|
|
520
543
|
/**
|
|
521
544
|
* Patch one dashcard on a dashboard. Metabase exposes no dashcard endpoint and its dashboard PUT
|
|
522
545
|
* is a full replace of `dashcards`, so the patch is read-modify-written over the dashboard as it
|
|
523
|
-
* currently stands.
|
|
546
|
+
* currently stands, its tabs sent back unchanged.
|
|
524
547
|
*/
|
|
525
548
|
async function updateDashcard(dashboardId, dashcardId, params, options = {}) {
|
|
526
549
|
const dashboard = await get(dashboardId, options);
|
|
@@ -530,7 +553,10 @@ function dashboardResource(transport) {
|
|
|
530
553
|
...target,
|
|
531
554
|
...params
|
|
532
555
|
});
|
|
533
|
-
const refreshed = (await update(dashboardId, {
|
|
556
|
+
const refreshed = (await update(dashboardId, {
|
|
557
|
+
dashcards: dashboard.dashcards.map((dashcard) => stripEntityId(dashcard.id === dashcardId ? patched : dashcard)),
|
|
558
|
+
tabs: tabWrites(dashboard.tabs)
|
|
559
|
+
}, options)).dashcards.find((dashcard) => dashcard.id === dashcardId);
|
|
534
560
|
if (refreshed === void 0) throw new Error(`PUT /api/dashboard/${dashboardId}: dashcard ${dashcardId} missing from response`);
|
|
535
561
|
return refreshed;
|
|
536
562
|
}
|
|
@@ -569,17 +595,26 @@ function dashboardResource(transport) {
|
|
|
569
595
|
}
|
|
570
596
|
/**
|
|
571
597
|
* Fetch the selectable values for a dashboard parameter, through the chain-filter value endpoint.
|
|
598
|
+
* `constraints` sets other parameters' values, which narrow the values of a parameter linked to
|
|
599
|
+
* them.
|
|
572
600
|
*/
|
|
573
|
-
async function parameterValues(dashboardId, parameterId, options = {}) {
|
|
574
|
-
return transport.requestParsed(ParameterValues, `/api/dashboard/${dashboardId}/params/${encodeURIComponent(parameterId)}/values`, {
|
|
601
|
+
async function parameterValues(dashboardId, parameterId, constraints = {}, options = {}) {
|
|
602
|
+
return transport.requestParsed(ParameterValues, `/api/dashboard/${dashboardId}/params/${encodeURIComponent(parameterId)}/values`, {
|
|
603
|
+
...options,
|
|
604
|
+
query: constraints
|
|
605
|
+
});
|
|
575
606
|
}
|
|
576
607
|
/**
|
|
577
608
|
* Search a dashboard parameter's selectable values: the server returns only values containing the
|
|
578
|
-
* substring, capped at the first 1000 matches.
|
|
609
|
+
* substring, capped at the first 1000 matches. `constraints` narrows them as `parameterValues`
|
|
610
|
+
* does.
|
|
579
611
|
*/
|
|
580
|
-
async function searchParameterValues(dashboardId, parameterId, query, options = {}) {
|
|
612
|
+
async function searchParameterValues(dashboardId, parameterId, query, constraints = {}, options = {}) {
|
|
581
613
|
const parameter = encodeURIComponent(parameterId);
|
|
582
|
-
return transport.requestParsed(ParameterValues, `/api/dashboard/${dashboardId}/params/${parameter}/search/${encodeURIComponent(query)}`, {
|
|
614
|
+
return transport.requestParsed(ParameterValues, `/api/dashboard/${dashboardId}/params/${parameter}/search/${encodeURIComponent(query)}`, {
|
|
615
|
+
...options,
|
|
616
|
+
query: constraints
|
|
617
|
+
});
|
|
583
618
|
}
|
|
584
619
|
return {
|
|
585
620
|
list,
|
|
@@ -617,6 +652,12 @@ function groupByCardId(references) {
|
|
|
617
652
|
}
|
|
618
653
|
return grouped;
|
|
619
654
|
}
|
|
655
|
+
function tabWrites(tabs) {
|
|
656
|
+
return tabs.map(({ id, name }) => ({
|
|
657
|
+
id,
|
|
658
|
+
name
|
|
659
|
+
}));
|
|
660
|
+
}
|
|
620
661
|
function stripEntityId(dashcard) {
|
|
621
662
|
const { entity_id: _entity_id, id, size_x, size_y, row, col, ...rest } = dashcard;
|
|
622
663
|
return {
|
|
@@ -735,6 +776,14 @@ function databaseResource(transport) {
|
|
|
735
776
|
query: { include: params.include }
|
|
736
777
|
});
|
|
737
778
|
}
|
|
779
|
+
/** Update a database's settings by id; the server merges them into the ones it holds. */
|
|
780
|
+
async function update(id, params, options = {}) {
|
|
781
|
+
return transport.requestParsed(DatabaseWithSettings, `/api/database/${id}`, {
|
|
782
|
+
...options,
|
|
783
|
+
method: "PUT",
|
|
784
|
+
body: params
|
|
785
|
+
});
|
|
786
|
+
}
|
|
738
787
|
/** List the schema names in a database. */
|
|
739
788
|
async function schemas(id, options = {}) {
|
|
740
789
|
return {
|
|
@@ -786,6 +835,7 @@ function databaseResource(transport) {
|
|
|
786
835
|
return {
|
|
787
836
|
list,
|
|
788
837
|
get,
|
|
838
|
+
update,
|
|
789
839
|
schemas,
|
|
790
840
|
schemaTables,
|
|
791
841
|
syncSchema,
|
|
@@ -1285,6 +1335,11 @@ const RemoteSyncBranchProperty = SessionProperties.extend({ "remote-sync-branch"
|
|
|
1285
1335
|
const RemoteSyncUrlProperty = SessionProperties.extend({ "remote-sync-url": z.string().nullable().optional() });
|
|
1286
1336
|
const BRANCH_UNREADABLE_MESSAGE = "the remote-sync-branch setting is not readable: only admins see it, and a server without remote sync has none";
|
|
1287
1337
|
const BRANCH_UNSET_MESSAGE = "git-sync tracks no branch: the remote-sync-branch setting is unset";
|
|
1338
|
+
const RemoteSyncStateProperty = RemoteSyncBranchProperty.extend({
|
|
1339
|
+
"remote-sync-enabled": z.boolean().optional(),
|
|
1340
|
+
"remote-sync-type": RemoteSyncState.shape.sync_type.optional()
|
|
1341
|
+
});
|
|
1342
|
+
const REMOTE_SYNC_STATE_ABSENT_MESSAGE = "the remote-sync-enabled and remote-sync-type settings are absent: the server has no remote-sync module";
|
|
1288
1343
|
function isRemoteUnreadable(error) {
|
|
1289
1344
|
if (!(error instanceof HttpError)) return false;
|
|
1290
1345
|
return error.status === 403 || error.status === 404;
|
|
@@ -1401,13 +1456,14 @@ function gitSyncResource(transport) {
|
|
|
1401
1456
|
merge: params.merge
|
|
1402
1457
|
}
|
|
1403
1458
|
});
|
|
1404
|
-
|
|
1459
|
+
const accepted = {
|
|
1405
1460
|
message: started.message,
|
|
1406
|
-
task_id: started.task_id
|
|
1461
|
+
task_id: started.task_id,
|
|
1462
|
+
branch: branchName ?? null
|
|
1407
1463
|
};
|
|
1464
|
+
if (params.wait === void 0) return accepted;
|
|
1408
1465
|
return {
|
|
1409
|
-
|
|
1410
|
-
task_id: started.task_id,
|
|
1466
|
+
...accepted,
|
|
1411
1467
|
final: await settle(params.wait, options)
|
|
1412
1468
|
};
|
|
1413
1469
|
}
|
|
@@ -1527,6 +1583,24 @@ function gitSyncResource(transport) {
|
|
|
1527
1583
|
return tracked;
|
|
1528
1584
|
}
|
|
1529
1585
|
/**
|
|
1586
|
+
* Whether a remote is configured, through the settings or the environment, the direction the
|
|
1587
|
+
* instance syncs in, which is `read-only` until an admin sets it, and the branch it tracks, all
|
|
1588
|
+
* from one read. The remote's URL is visible to admins only and absent when the environment sets
|
|
1589
|
+
* it, so `configured` is read from its own setting. Refused like `branch` when the caller may not
|
|
1590
|
+
* read the branch, and on a server without the remote-sync module.
|
|
1591
|
+
*/
|
|
1592
|
+
function remote(properties) {
|
|
1593
|
+
const tracked = branch(properties);
|
|
1594
|
+
const configured = properties["remote-sync-enabled"];
|
|
1595
|
+
const syncType = properties["remote-sync-type"];
|
|
1596
|
+
if (configured === void 0 || syncType === void 0) throw new ConfigError(REMOTE_SYNC_STATE_ABSENT_MESSAGE);
|
|
1597
|
+
return {
|
|
1598
|
+
configured,
|
|
1599
|
+
sync_type: syncType,
|
|
1600
|
+
branch: tracked
|
|
1601
|
+
};
|
|
1602
|
+
}
|
|
1603
|
+
/**
|
|
1530
1604
|
* The branch git-sync tracks, refused when none is configured, the server has no remote sync, or
|
|
1531
1605
|
* the caller may not read it.
|
|
1532
1606
|
*/
|
|
@@ -1564,6 +1638,7 @@ function gitSyncResource(transport) {
|
|
|
1564
1638
|
syncedCollections: refuse("syncedCollections", syncedCollections),
|
|
1565
1639
|
remoteUrl,
|
|
1566
1640
|
branch: refuseAfterReading("branch", RemoteSyncBranchProperty, branch),
|
|
1641
|
+
remote: refuseAfterReading("remote", RemoteSyncStateProperty, remote),
|
|
1567
1642
|
trackedBranch: refuseAfterReading("trackedBranch", RemoteSyncBranchProperty, trackedBranch),
|
|
1568
1643
|
waitForTask: explain("waitForTask", waitForTask)
|
|
1569
1644
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as CollectionCompact, l as CollectionItemCompact } from "./collection-
|
|
1
|
+
import { a as CollectionCompact, l as CollectionItemCompact } from "./collection-DNmFKALA.mjs";
|
|
2
2
|
//#region src/output/views/collection.ts
|
|
3
3
|
const collectionView = {
|
|
4
4
|
compactPick: CollectionCompact,
|
|
@@ -8,13 +8,13 @@ var collection_default = defineCommandGroup({
|
|
|
8
8
|
purpose: "collection ref forms and the transforms namespace"
|
|
9
9
|
}],
|
|
10
10
|
subCommands: {
|
|
11
|
-
list: () => import("./list-
|
|
12
|
-
get: () => import("./get-
|
|
13
|
-
items: () => import("./items-
|
|
14
|
-
tree: () => import("./tree-
|
|
15
|
-
create: () => import("./create-
|
|
16
|
-
update: () => import("./update-
|
|
17
|
-
archive: () => import("./archive-
|
|
11
|
+
list: () => import("./list-CpxEOoqw.mjs").then((mod) => mod.default),
|
|
12
|
+
get: () => import("./get-RCDF-hEq.mjs").then((mod) => mod.default),
|
|
13
|
+
items: () => import("./items-mIoZBqUc.mjs").then((mod) => mod.default),
|
|
14
|
+
tree: () => import("./tree-Ddsj298M.mjs").then((mod) => mod.default),
|
|
15
|
+
create: () => import("./create-Dn8V5siS.mjs").then((mod) => mod.default),
|
|
16
|
+
update: () => import("./update-_hHnM1Hx.mjs").then((mod) => mod.default),
|
|
17
|
+
archive: () => import("./archive-DpgtAdEa.mjs").then((mod) => mod.default)
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { St as ConfigError, W as HttpError } from "./cli.mjs";
|
|
2
2
|
//#region src/commands/transform/collection-namespace.ts
|
|
3
3
|
const TRANSFORMS_NAMESPACE_HINT = "transforms can only be filed in a :transforms-namespace collection. Create one with `mb collection create --body '{\"name\":\"…\"}' --namespace transforms` and pass its id as collection_id, or omit collection_id to leave the transform uncollected.";
|
|
4
4
|
function enrichTransformCollectionError(error) {
|
|
@@ -4,8 +4,8 @@ var content_translation_default = defineCommandGroup({
|
|
|
4
4
|
name: "content-translation",
|
|
5
5
|
description: "Download or replace the content translation dictionary",
|
|
6
6
|
subCommands: {
|
|
7
|
-
download: () => import("./download-
|
|
8
|
-
upload: () => import("./upload-
|
|
7
|
+
download: () => import("./download-kpgGtfpw.mjs").then((mod) => mod.default),
|
|
8
|
+
upload: () => import("./upload-DIEcI5iM.mjs").then((mod) => mod.default)
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
//#endregion
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { c as renderSummary, ct as outputFlags, lt as profileFlag, rt as connectionFlags } from "./cli.mjs";
|
|
2
|
-
import { t as
|
|
3
|
-
import { t as
|
|
4
|
-
import { r as DashboardCopy } from "./dashboard-
|
|
5
|
-
import { t as dashboardCopyView } from "./dashboard-
|
|
6
|
-
import { n as parseCopyFlags, t as copyFlags } from "./copy-flags-
|
|
2
|
+
import { t as parseId } from "./parse-id-5BZGQ9Vd.mjs";
|
|
3
|
+
import { t as defineMetabaseCommand } from "./runtime-Cmes70jO.mjs";
|
|
4
|
+
import { r as DashboardCopy } from "./dashboard-Chjy5GKR.mjs";
|
|
5
|
+
import { t as dashboardCopyView } from "./dashboard-D5E3fMKh.mjs";
|
|
6
|
+
import { n as parseCopyFlags, t as copyFlags } from "./copy-flags-CTM91pxH.mjs";
|
|
7
7
|
//#region src/commands/dashboard/copy.ts
|
|
8
8
|
var copy_default = defineMetabaseCommand({
|
|
9
9
|
meta: {
|