@metabase/cli 0.1.18 → 0.2.1-alpha.bcm-ghy-4075-spawn-default-profile.eb120d1
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/README.md +283 -45
- package/dist/add-collection-CCpC-GUz.mjs +9 -0
- package/dist/{add-collection-CRZAFCZy.mjs → add-collection-CLXfrgp4.mjs} +4 -5
- package/dist/append-DMcxP1LM.mjs +42 -0
- package/dist/archive-4WqMsPWB.mjs +38 -0
- package/dist/{archive-De4yVEV8.mjs → archive-5inmbMDL.mjs} +5 -7
- package/dist/{archive-3mEhK9_H.mjs → archive-BggM_AuL.mjs} +5 -7
- package/dist/{archive-Z8ZM-ilB.mjs → archive-BmhehbS0.mjs} +8 -9
- package/dist/{archive-d74nDcp4.mjs → archive-BwIZzWGe.mjs} +5 -7
- package/dist/{archive-CFHYRF65.mjs → archive-DErhQn8A.mjs} +5 -7
- package/dist/archive-DTnz1suV.mjs +38 -0
- package/dist/{archive-C3RWdM-2.mjs → archive-Q1387APe.mjs} +7 -8
- package/dist/{archive-errg-EKw.mjs → archive-h-3H5b4K.mjs} +5 -7
- package/dist/auth-DzCAiArV.mjs +22 -0
- package/dist/{body-BS2s2zDl.mjs → body-5snfmiwR.mjs} +3 -3
- package/dist/{branches-mcyT7wI-.mjs → branches-PL170CYS.mjs} +5 -7
- package/dist/{cancel-B2l-i2NS.mjs → cancel-EFKcF5J_.mjs} +4 -6
- package/dist/{cancel-task-CugcIeIi.mjs → cancel-task-mFFx0d5m.mjs} +5 -7
- package/dist/capabilities-CiaAfUgX.mjs +684 -0
- package/dist/{card-DEmcRlNO.mjs → card-B8G5jQQT.mjs} +24 -18
- package/dist/card-BsfdXK0O.mjs +26 -0
- package/dist/{cards-BGkz5BeZ.mjs → cards-BI7zKb9M.mjs} +7 -8
- package/dist/cli.mjs +178 -29
- package/dist/collection-2h_by9Ue.mjs +23 -0
- package/dist/{collection-DrLpA1SO.mjs → collection-C52Ndi_O.mjs} +5 -3
- package/dist/{collection-namespace-BP_LJrAD.mjs → collection-namespace-uNA5WhLB.mjs} +2 -2
- package/dist/{create-Cztp5kES.mjs → create-BLD0YniB.mjs} +6 -7
- package/dist/create-BP8EIWrP.mjs +161 -0
- package/dist/{create-CkRFKtFG.mjs → create-BpizGzgQ.mjs} +8 -9
- package/dist/create-BxCsAdqc.mjs +45 -0
- package/dist/{create-DzyMvAVy.mjs → create-CBKT7SE_.mjs} +8 -9
- package/dist/{create-D8KA4zJA.mjs → create-CQ32FwVe.mjs} +11 -11
- package/dist/{create-YfGzANNB.mjs → create-CU3bYpsT.mjs} +8 -9
- package/dist/create-DAH24ltu.mjs +45 -0
- package/dist/{create-BOmmMSjF.mjs → create-DutkaD7P.mjs} +11 -12
- package/dist/{create-B4HAEEE0.mjs → create-FuZa4j1N.mjs} +8 -9
- package/dist/{create-wpvDXSSY.mjs → create-KveE3j3p.mjs} +12 -13
- package/dist/{create-DhrftYre.mjs → create-VrSowEbj.mjs} +14 -14
- package/dist/{create-CD9Rp8qs.mjs → create-acWKw4Y1.mjs} +14 -14
- package/dist/{create-branch-DsoMfx_2.mjs → create-branch-CP1Y4_El.mjs} +5 -7
- package/dist/{create-kWzqvTGR.mjs → create-xPfmI1Tu.mjs} +11 -12
- package/dist/csv-CZyYi0vi.mjs +58 -0
- package/dist/{current-task-WuKPZpZ6.mjs → current-task-BR4koo9z.mjs} +5 -7
- package/dist/dashboard-ARgJfamb.mjs +35 -0
- package/dist/{dashboard-DOplbKyQ.mjs → dashboard-BLihjDXg.mjs} +35 -15
- package/dist/{database-D9fftP-i.mjs → database-BOqzcexD.mjs} +2 -2
- package/dist/db-dbnxMPSR.mjs +27 -0
- package/dist/{delete-Buai0_e_.mjs → delete-BpL3vaaT.mjs} +6 -8
- package/dist/{delete-BCitmugk.mjs → delete-C5DqDwev.mjs} +6 -8
- package/dist/delete-DCDFLHFa.mjs +49 -0
- package/dist/delete-P2Qlsr_s.mjs +49 -0
- package/dist/{delete-CmGh0jo1.mjs → delete-ea_ns1uM.mjs} +6 -8
- package/dist/{delete-runtime-B0ha5QR4.mjs → delete-runtime-DdBn6poA.mjs} +2 -3
- package/dist/{delete-table-BOkYxdjA.mjs → delete-table-tM048btr.mjs} +6 -8
- package/dist/{dependencies-XZrEvHUA.mjs → dependencies-DdOTClO2.mjs} +5 -7
- package/dist/destroy-B51EPvOJ.mjs +168 -0
- package/dist/{dirty-B-5NDbG9.mjs → dirty-CEQYmhNF.mjs} +5 -7
- package/dist/{document-1W7NRaO_.mjs → document-D4zB-5a0.mjs} +20 -4
- package/dist/document-DR1FLOn9.mjs +22 -0
- package/dist/{eid-BCuJRv7a.mjs → eid-CtKGjAkz.mjs} +10 -11
- package/dist/embedding-CKdw8q7p.mjs +11 -0
- package/dist/events-C26DZ6yZ.mjs +44 -0
- package/dist/{export-Dod2gdyE.mjs → export-CippuWZJ.mjs} +5 -10
- package/dist/export-Cy2DFtR2.mjs +10 -0
- package/dist/field-CXDndCbB.mjs +21 -0
- package/dist/{field-CMY_LWUe.mjs → field-DsXTeqBy.mjs} +6 -4
- package/dist/{fields-B0yttrzR.mjs → fields-Xm_HVNcX.mjs} +6 -8
- package/dist/get-3O7hv4zv.mjs +67 -0
- package/dist/{get-D-pNrQGA.mjs → get-B0cq1uGy.mjs} +5 -7
- package/dist/{get-k6M5nGMC.mjs → get-B90bXbpw.mjs} +5 -7
- package/dist/{get-D7QMqPOK.mjs → get-BQBu2c94.mjs} +5 -7
- package/dist/{get-CfeYa0v5.mjs → get-BQz45IBF.mjs} +6 -7
- package/dist/get-BSfKWZNJ.mjs +35 -0
- package/dist/get-BdNC8WM8.mjs +38 -0
- package/dist/{get-DBY5esTW.mjs → get-Bj66bcuU.mjs} +5 -7
- package/dist/{get-BpZ81hX8.mjs → get-BrKqMM1d.mjs} +5 -7
- package/dist/{get-9p0Gt1c7.mjs → get-CjZWjRa5.mjs} +5 -7
- package/dist/{get-DISgP66L.mjs → get-CwGqARAf.mjs} +16 -9
- package/dist/{get-BkGh9BPd.mjs → get-D5crrFSf.mjs} +5 -7
- package/dist/{get-Dz7fcqoG.mjs → get-DTkvGu_J.mjs} +8 -9
- package/dist/{get-u5Uq9vms.mjs → get-DX2fp6BB.mjs} +4 -6
- package/dist/get-DYuJVlP-.mjs +35 -0
- package/dist/{get-DJ8huA8y.mjs → get-FIE88hj9.mjs} +7 -8
- package/dist/{get-B0OsW6jk.mjs → get-Ihx_XaaI.mjs} +5 -7
- package/dist/{get-run-DQJVpDw1.mjs → get-run-lVwhQVFx.mjs} +5 -7
- package/dist/{get-CbpHt4Hs.mjs → get-z0BKkiRX.mjs} +4 -6
- package/dist/git-sync-CmB4YBmS.mjs +31 -0
- package/dist/{group-BNE_RiH5.mjs → group-CILtQqCL.mjs} +2 -1
- package/dist/{has-remote-changes-DvQBXudi.mjs → has-remote-changes-DHrYSnTg.mjs} +5 -7
- package/dist/{import-PGS8-DwE.mjs → import-BU40xXSF.mjs} +7 -9
- package/dist/{input-7Sj85_K7.mjs → input-BGyHn0Kr.mjs} +6 -3
- package/dist/{is-dirty-DyEVFQVJ.mjs → is-dirty-BPluqPPP.mjs} +3 -4
- package/dist/is-dirty-DOy1TRcf.mjs +8 -0
- package/dist/{items-CkFEy2Du.mjs → items-BZpYkImP.mjs} +6 -8
- package/dist/{key-bltP32Pm.mjs → key-B8UAsQmB.mjs} +1 -1
- package/dist/{library-1AAVbk-K.mjs → library-BGWDIfEM.mjs} +6 -6
- package/dist/list-B037kJtH.mjs +39 -0
- package/dist/{list-82NkvRpI.mjs → list-B7Ihu6XI.mjs} +7 -8
- package/dist/{list-pQ22nXhQ.mjs → list-BCeZlfpQ.mjs} +4 -6
- package/dist/{list-CKzpoTgP.mjs → list-Bct00qku.mjs} +6 -8
- package/dist/{list-D-rgDFa5.mjs → list-Be8xMtS3.mjs} +8 -9
- package/dist/{list-Bb8YRON_.mjs → list-CjBPVJqd.mjs} +4 -6
- package/dist/{list-BCYTTCFD.mjs → list-CoqHnusK.mjs} +4 -6
- package/dist/{list-B9wXg3qi.mjs → list-CvaoHnl-.mjs} +3 -5
- package/dist/{list-BVzu2RIZ.mjs → list-DamRE5Ds.mjs} +4 -6
- package/dist/{list-BWAYDSbQ.mjs → list-DmopauvJ.mjs} +4 -6
- package/dist/{list-CJx5q-Yn.mjs → list-M_1sdYNH.mjs} +6 -8
- package/dist/{list-CK0p7vvK.mjs → list-Ov6bYzT9.mjs} +7 -8
- package/dist/{list-Sgo3RfDY.mjs → list-SfpASSFx.mjs} +4 -6
- package/dist/{list-BBxRjuMn.mjs → list-fPfgG0PY.mjs} +4 -6
- package/dist/list-lsPeumLP.mjs +34 -0
- package/dist/{list-BY4S32Lg.mjs → list-sn9M7QQX.mjs} +4 -6
- package/dist/{list-CjF12k1G.mjs → list-wxIVl45_.mjs} +5 -7
- package/dist/listing-wFZuS5li.mjs +10 -0
- package/dist/{login-C6ZAnGHz.mjs → login-CRlmR4op.mjs} +61 -23
- package/dist/{logout-CWjyY3Y8.mjs → logout-DSZEUxSQ.mjs} +5 -7
- package/dist/{measure-DoJvtCaA.mjs → measure-C3G1srWb.mjs} +5 -4
- package/dist/measure-Ka0n3426.mjs +25 -0
- package/dist/{parameter-values-DmDOuE-j.mjs → parameter-values-CwW8Xes7.mjs} +5 -7
- package/dist/{parse-enum-BL9i_brN.mjs → parse-enum-ooCsJWn6.mjs} +1 -1
- package/dist/parse-id-xS1tWJAq.mjs +18 -0
- package/dist/{parse-ref-CB_KvF9h.mjs → parse-ref-j4lxaQmd.mjs} +1 -1
- package/dist/{path-D8IJ4YrW.mjs → path-CVmg-bmf.mjs} +4 -6
- package/dist/{poll-hgnrHBoh.mjs → poll-CuTlWBwI.mjs} +2 -2
- package/dist/{poll-task-NQNLT_aA.mjs → poll-task-DhsYs8Hx.mjs} +2 -2
- package/dist/{preflight-DvaPQHHf.mjs → preflight-D3VgjEg7.mjs} +4 -5
- package/dist/{process-j8UHMHc2.mjs → process-7c8BcQEi.mjs} +1 -1
- package/dist/profile-name-CZ1-Vtrh.mjs +7 -0
- package/dist/{prompt-C85xd9HR.mjs → prompt-jQnNKtlx.mjs} +1 -1
- package/dist/{publish-BntmFR6g.mjs → publish-DFTCsjHU.mjs} +13 -10
- package/dist/{query-DSKQZu91.mjs → query-CPq-dhFV.mjs} +15 -15
- package/dist/{query-BQfgKV68.mjs → query-Dfx69iJ4.mjs} +9 -10
- package/dist/{query-result-D6mfoVfQ.mjs → query-result-Cg7odyR_.mjs} +1 -1
- package/dist/{remove-collection-BguaI3-6.mjs → remove-collection-DUAMhx5L.mjs} +7 -9
- package/dist/replace-DZWd6avZ.mjs +42 -0
- package/dist/requests-DYrDe-D0.mjs +96 -0
- package/dist/{rescan-values-DjD6IW3J.mjs → rescan-values-DZSnEFA0.mjs} +7 -9
- package/dist/{resolve-Dj2MTBkn.mjs → resolve-BTZuO3Yq.mjs} +22 -15
- package/dist/{run-Bp1yxkBN.mjs → run-B2b3Bjmv.mjs} +4 -6
- package/dist/{run-RQfQj7Rk.mjs → run-ryZ4sXK5.mjs} +7 -9
- package/dist/{runs-CSsatfWb.mjs → runs-F82HVSie.mjs} +5 -7
- package/dist/{runtime-oxjmrYoP.mjs → runtime-C6ASrgVA.mjs} +944 -909
- package/dist/{schema-tables-5I5pCxHl.mjs → schema-tables-CCOKb715.mjs} +6 -8
- package/dist/{schemas-CfzFCfBt.mjs → schemas-LtVrNECH.mjs} +4 -6
- package/dist/{search-Vo-BqliA.mjs → search-9GSZHgJQ.mjs} +4 -6
- package/dist/segment-C40bORNZ.mjs +25 -0
- package/dist/{segment-TXktTCfU.mjs → segment-CxRYEXeO.mjs} +6 -5
- package/dist/{selectors-DBnJsKlW.mjs → selectors-B2nDmrIV.mjs} +3 -3
- package/dist/{set-1Vh0AF-T.mjs → set-C57KDMGM.mjs} +9 -9
- package/dist/{set-active-C0mUZlNN.mjs → set-active-BDHGHtj2.mjs} +4 -6
- package/dist/setting-zrJwy48C.mjs +20 -0
- package/dist/{setup-CzYFvFK5.mjs → setup-Doq8atTG.mjs} +11 -12
- package/dist/{skills-B6gfH0iR.mjs → skills-y-KsUqT9.mjs} +1 -1
- package/dist/{skills-CR2xyV33.mjs → skills-yuzH_o8s.mjs} +3 -3
- package/dist/{snippet-CtA2Pkoa.mjs → snippet-C8PVaPY9.mjs} +7 -4
- package/dist/snippet-ScFM8re8.mjs +22 -0
- package/dist/{stash-CQHXwBu_.mjs → stash-D_u6z4q6.mjs} +7 -9
- package/dist/{status-C_7aqTvB.mjs → status--Dm2Jv6k.mjs} +5 -7
- package/dist/{status-DXQkM18v.mjs → status-CDPhDX5I.mjs} +27 -13
- package/dist/{summary-1aNpQc8j.mjs → summary-C9a2cBTE.mjs} +5 -7
- package/dist/{sync-schema-BqLp5uTS.mjs → sync-schema-CDIWNCGI.mjs} +9 -11
- package/dist/sync-scope-DW2QpGwv.mjs +55 -0
- package/dist/{table-DE3i82T_.mjs → table-3onHpwcb.mjs} +16 -4
- package/dist/table-BKehBm_E.mjs +21 -0
- package/dist/timeline-DEaiuB5V.mjs +157 -0
- package/dist/timeline-event-CLWMxvE0.mjs +22 -0
- package/dist/timeline-n3Nw9Egt.mjs +24 -0
- package/dist/transform-CrOOqKen.mjs +31 -0
- package/dist/{transform-DEF38FWe.mjs → transform-DP6J2ber.mjs} +31 -5
- package/dist/transform-job-J-E0Mec7.mjs +25 -0
- package/dist/transform-tag-Bkyasy_s.mjs +21 -0
- package/dist/{transforms-BelyllUL.mjs → transforms-w2a5qsjJ.mjs} +5 -7
- package/dist/{tree-YvmwGql7.mjs → tree-JZC6vD9q.mjs} +4 -6
- package/dist/{unpublish-CHjGLMu9.mjs → unpublish-BsfIH46y.mjs} +5 -7
- package/dist/{update-D7vc8GBF.mjs → update-B8hn6VxO.mjs} +12 -13
- package/dist/{update-BKhekuqr.mjs → update-BSNK36fk.mjs} +15 -15
- package/dist/update-BTFj6WHo.mjs +52 -0
- package/dist/{update-BACl_bJS.mjs → update-BfIGjAVA.mjs} +9 -10
- package/dist/{update-CrRz47aj.mjs → update-C1_aIL6X.mjs} +15 -15
- package/dist/{update-K-jjQ0Aw.mjs → update-CXKWHOIN.mjs} +10 -11
- package/dist/{update-BnHYSu96.mjs → update-Cg09lBb5.mjs} +13 -14
- package/dist/update-D01S8hnw.mjs +52 -0
- package/dist/{update-txUfAJxy.mjs → update-DKQjMsuE.mjs} +9 -10
- package/dist/{update-Zz01Woxj.mjs → update-DSlSr7Ky.mjs} +9 -10
- package/dist/{update-C9fndCqb.mjs → update-QaBVvlz9.mjs} +9 -10
- package/dist/{update-BGMJTpA6.mjs → update-WLb9099y.mjs} +12 -13
- package/dist/{update-BWlN3QDo.mjs → update-bFNKpay8.mjs} +9 -10
- package/dist/{update-dashcard-Dvth-yLC.mjs → update-dashcard-CKZC7scy.mjs} +11 -11
- package/dist/{upgrade-DsXlfPef.mjs → upgrade-DkK1ZbEY.mjs} +5 -7
- package/dist/upload-DOMoaR9f.mjs +16 -0
- package/dist/{uuid-ByJmWV7b.mjs → uuid-DDbLKnbe.mjs} +3 -5
- package/dist/{validate-BqNW4Sk1.mjs → validate-DqQ7DQnP.mjs} +1 -2
- package/dist/{validate-query-CcZVKYPV.mjs → validate-query-BYG7lyaY.mjs} +2 -3
- package/dist/{values-CIjJI4sz.mjs → values-Bc99Kkuv.mjs} +5 -7
- package/dist/{verify-Jsuc2dat.mjs → verify-WvMbaT8W.mjs} +2 -2
- package/dist/{wait-5ltTFvSa.mjs → wait-DmgEPnHW.mjs} +6 -8
- package/dist/{wait-flags-D6kd_G7c.mjs → wait-flags-BpzyrpAL.mjs} +2 -2
- package/dist/workspace-BgH_4xFO.mjs +75 -0
- package/dist/workspace-LFtHxcw9.mjs +19 -0
- package/package.json +1 -1
- package/skill-data/core/SKILL.md +31 -23
- package/skill-data/dashboard/SKILL.md +26 -3
- package/skill-data/data-workflow/SKILL.md +17 -15
- package/skill-data/git-sync/SKILL.md +20 -5
- package/skill-data/visualization/SKILL.md +1 -0
- package/dist/add-collection-DbalcC3_.mjs +0 -11
- package/dist/auth--PWX0oj5.mjs +0 -22
- package/dist/capabilities-N0jo5U7S.mjs +0 -239
- package/dist/card-D07WYCQY.mjs +0 -26
- package/dist/collection-Dss2qSEF.mjs +0 -23
- package/dist/dashboard-Crh4v6Fq.mjs +0 -35
- package/dist/db-BCAURQei.mjs +0 -28
- package/dist/document-upxL2nKH.mjs +0 -22
- package/dist/error-BaBm-UrT.mjs +0 -227
- package/dist/field-CloFa1oe.mjs +0 -21
- package/dist/get-B8tugTku.mjs +0 -50
- package/dist/git-sync-C9m-OHac.mjs +0 -31
- package/dist/is-dirty-DpyKeGAJ.mjs +0 -10
- package/dist/manifest-BVf8P4bl.mjs +0 -126
- package/dist/measure-Cbly1r0E.mjs +0 -25
- package/dist/metadata-CW5Lfw5d.mjs +0 -39
- package/dist/metadata-aQAqseCm.mjs +0 -38
- package/dist/notice-DyVl5aYB.mjs +0 -206
- package/dist/parse-id-DlXnOcmP.mjs +0 -12
- package/dist/segment-BuN_IoM8.mjs +0 -25
- package/dist/setting-BbdKR-lO.mjs +0 -20
- package/dist/snippet-Bzo2U9Fv.mjs +0 -22
- package/dist/table-BwGOz97O.mjs +0 -22
- package/dist/transform-B65ZD9-e.mjs +0 -31
- package/dist/transform-job-BWVKXSV6.mjs +0 -25
- package/dist/transform-tag-C4qvmicL.mjs +0 -21
- /package/dist/{body-flags-DWTTxJpP.mjs → body-flags-CgHgJBRC.mjs} +0 -0
- /package/dist/{command-augment-DdZIfx1V.mjs → command-augment-D9pI9Vbh.mjs} +0 -0
- /package/dist/{parameter-CiJ4CwWE.mjs → parameter-BZ6y-Gfs.mjs} +0 -0
- /package/dist/{render-BTKnWL0d.mjs → render-CkuFkWlQ.mjs} +0 -0
- /package/dist/{transform-job-CtixL4An.mjs → transform-job-B5x8aYfV.mjs} +0 -0
- /package/dist/{transform-tag-rsIrckCM.mjs → transform-tag-BRwfWeHf.mjs} +0 -0
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/collection/index.ts
|
|
5
|
-
var collection_default = defineCommandGroup({
|
|
6
|
-
name: "collection",
|
|
7
|
-
description: "Manage Metabase collections",
|
|
8
|
-
skills: [{
|
|
9
|
-
skill: "core",
|
|
10
|
-
purpose: "collection ref forms and the transforms namespace"
|
|
11
|
-
}],
|
|
12
|
-
subCommands: {
|
|
13
|
-
list: () => import("./list-CK0p7vvK.mjs").then((mod) => mod.default),
|
|
14
|
-
get: () => import("./get-D7QMqPOK.mjs").then((mod) => mod.default),
|
|
15
|
-
items: () => import("./items-CkFEy2Du.mjs").then((mod) => mod.default),
|
|
16
|
-
tree: () => import("./tree-YvmwGql7.mjs").then((mod) => mod.default),
|
|
17
|
-
create: () => import("./create-D8KA4zJA.mjs").then((mod) => mod.default),
|
|
18
|
-
archive: () => import("./archive-De4yVEV8.mjs").then((mod) => mod.default)
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
//#endregion
|
|
23
|
-
export { collection_default as default };
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/dashboard/index.ts
|
|
5
|
-
var dashboard_default = defineCommandGroup({
|
|
6
|
-
name: "dashboard",
|
|
7
|
-
description: "Manage Metabase dashboards",
|
|
8
|
-
skills: [
|
|
9
|
-
{
|
|
10
|
-
skill: "dashboard",
|
|
11
|
-
purpose: "wiring filters, linked filters, cross-filtering, click behavior, tabs"
|
|
12
|
-
},
|
|
13
|
-
{
|
|
14
|
-
skill: "visualization",
|
|
15
|
-
purpose: "dashcard display and visualization_settings"
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
skill: "core",
|
|
19
|
-
purpose: "the 24-column dashcard grid layout"
|
|
20
|
-
}
|
|
21
|
-
],
|
|
22
|
-
subCommands: {
|
|
23
|
-
list: () => import("./list-82NkvRpI.mjs").then((mod) => mod.default),
|
|
24
|
-
get: () => import("./get-DJ8huA8y.mjs").then((mod) => mod.default),
|
|
25
|
-
cards: () => import("./cards-BGkz5BeZ.mjs").then((mod) => mod.default),
|
|
26
|
-
"parameter-values": () => import("./parameter-values-DmDOuE-j.mjs").then((mod) => mod.default),
|
|
27
|
-
create: () => import("./create-CD9Rp8qs.mjs").then((mod) => mod.default),
|
|
28
|
-
update: () => import("./update-BKhekuqr.mjs").then((mod) => mod.default),
|
|
29
|
-
"update-dashcard": () => import("./update-dashcard-Dvth-yLC.mjs").then((mod) => mod.default),
|
|
30
|
-
archive: () => import("./archive-C3RWdM-2.mjs").then((mod) => mod.default)
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
//#endregion
|
|
35
|
-
export { dashboard_default as default };
|
package/dist/db-BCAURQei.mjs
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/db/index.ts
|
|
5
|
-
var db_default = defineCommandGroup({
|
|
6
|
-
name: "db",
|
|
7
|
-
description: "Inspect and sync Metabase databases",
|
|
8
|
-
alias: "database",
|
|
9
|
-
skills: [{
|
|
10
|
-
skill: "core",
|
|
11
|
-
purpose: "the database traversal ladder and schema sync"
|
|
12
|
-
}, {
|
|
13
|
-
skill: "data-workflow",
|
|
14
|
-
purpose: "model a raw database into clean tables"
|
|
15
|
-
}],
|
|
16
|
-
subCommands: {
|
|
17
|
-
list: () => import("./list-CKzpoTgP.mjs").then((m) => m.default),
|
|
18
|
-
get: () => import("./get-B8tugTku.mjs").then((m) => m.default),
|
|
19
|
-
metadata: () => import("./metadata-CW5Lfw5d.mjs").then((m) => m.default),
|
|
20
|
-
schemas: () => import("./schemas-CfzFCfBt.mjs").then((m) => m.default),
|
|
21
|
-
"schema-tables": () => import("./schema-tables-5I5pCxHl.mjs").then((m) => m.default),
|
|
22
|
-
"sync-schema": () => import("./sync-schema-BqLp5uTS.mjs").then((m) => m.default),
|
|
23
|
-
"rescan-values": () => import("./rescan-values-DjD6IW3J.mjs").then((m) => m.default)
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
//#endregion
|
|
28
|
-
export { db_default as default };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/document/index.ts
|
|
5
|
-
var document_default = defineCommandGroup({
|
|
6
|
-
name: "document",
|
|
7
|
-
description: "Manage Metabase documents",
|
|
8
|
-
skills: [{
|
|
9
|
-
skill: "document",
|
|
10
|
-
purpose: "author the ProseMirror document body"
|
|
11
|
-
}],
|
|
12
|
-
subCommands: {
|
|
13
|
-
list: () => import("./list-BWAYDSbQ.mjs").then((mod) => mod.default),
|
|
14
|
-
get: () => import("./get-BkGh9BPd.mjs").then((mod) => mod.default),
|
|
15
|
-
create: () => import("./create-DzyMvAVy.mjs").then((mod) => mod.default),
|
|
16
|
-
update: () => import("./update-txUfAJxy.mjs").then((mod) => mod.default),
|
|
17
|
-
archive: () => import("./archive-d74nDcp4.mjs").then((mod) => mod.default)
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { document_default as default };
|
package/dist/error-BaBm-UrT.mjs
DELETED
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
import { toMetabaseError, warn } from "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
|
|
4
|
-
//#region src/output/types.ts
|
|
5
|
-
const DEFAULT_MAX_BYTES = 65536;
|
|
6
|
-
function listEnvelopeSchema(item) {
|
|
7
|
-
return z.object({
|
|
8
|
-
data: z.array(item),
|
|
9
|
-
returned: z.number().int().nonnegative(),
|
|
10
|
-
total: z.number().int().nonnegative().nullable().optional(),
|
|
11
|
-
limit: z.number().int().nonnegative().optional(),
|
|
12
|
-
truncated: z.object({
|
|
13
|
-
reason: z.literal("max_bytes"),
|
|
14
|
-
bytes: z.number().int().nonnegative()
|
|
15
|
-
}).optional()
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
function wrapList(items) {
|
|
19
|
-
return {
|
|
20
|
-
data: items,
|
|
21
|
-
returned: items.length,
|
|
22
|
-
total: items.length
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
//#endregion
|
|
27
|
-
//#region src/commands/flags.ts
|
|
28
|
-
const outputFlags = {
|
|
29
|
-
format: {
|
|
30
|
-
type: "string",
|
|
31
|
-
description: "auto | json | text",
|
|
32
|
-
default: "auto"
|
|
33
|
-
},
|
|
34
|
-
json: {
|
|
35
|
-
type: "boolean",
|
|
36
|
-
description: "Shorthand for --format json"
|
|
37
|
-
},
|
|
38
|
-
full: {
|
|
39
|
-
type: "boolean",
|
|
40
|
-
description: "Return the full object (default: compact)"
|
|
41
|
-
},
|
|
42
|
-
fields: {
|
|
43
|
-
type: "string",
|
|
44
|
-
description: "Dot-paths, comma separated (mutually exclusive with --full)"
|
|
45
|
-
},
|
|
46
|
-
maxBytes: {
|
|
47
|
-
type: "string",
|
|
48
|
-
description: "Output size cap; 0 disables",
|
|
49
|
-
default: String(DEFAULT_MAX_BYTES),
|
|
50
|
-
alias: "max-bytes"
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
const profileFlag = { profile: {
|
|
54
|
-
type: "string",
|
|
55
|
-
description: "Named profile (default: 'default')",
|
|
56
|
-
alias: "p"
|
|
57
|
-
} };
|
|
58
|
-
const connectionFlags = {
|
|
59
|
-
url: {
|
|
60
|
-
type: "string",
|
|
61
|
-
description: "Metabase URL"
|
|
62
|
-
},
|
|
63
|
-
apiKey: {
|
|
64
|
-
type: "string",
|
|
65
|
-
description: "API key",
|
|
66
|
-
alias: "api-key"
|
|
67
|
-
},
|
|
68
|
-
skipPreflight: {
|
|
69
|
-
type: "boolean",
|
|
70
|
-
description: "Skip the server version capability check for this command",
|
|
71
|
-
alias: "skip-preflight"
|
|
72
|
-
}
|
|
73
|
-
};
|
|
74
|
-
|
|
75
|
-
//#endregion
|
|
76
|
-
//#region package.json
|
|
77
|
-
var name = "@metabase/cli";
|
|
78
|
-
var version = "0.1.18";
|
|
79
|
-
var description = "Metabase CLI";
|
|
80
|
-
var license = "AGPL-3.0";
|
|
81
|
-
var repository = {
|
|
82
|
-
"type": "git",
|
|
83
|
-
"url": "git+https://github.com/metabase/mb-cli.git"
|
|
84
|
-
};
|
|
85
|
-
var bin = { "mb": "./dist/cli.mjs" };
|
|
86
|
-
var files = [
|
|
87
|
-
"dist",
|
|
88
|
-
"skills",
|
|
89
|
-
"skill-data",
|
|
90
|
-
".claude-plugin"
|
|
91
|
-
];
|
|
92
|
-
var type = "module";
|
|
93
|
-
var publishConfig = {
|
|
94
|
-
"access": "public",
|
|
95
|
-
"registry": "https://registry.npmjs.org/"
|
|
96
|
-
};
|
|
97
|
-
var scripts = {
|
|
98
|
-
"build": "tsdown",
|
|
99
|
-
"dev": "tsdown --watch",
|
|
100
|
-
"start": "node dist/cli.mjs",
|
|
101
|
-
"test": "vitest run --project unit",
|
|
102
|
-
"test:watch": "vitest --project unit",
|
|
103
|
-
"test:e2e": "vitest run --project e2e",
|
|
104
|
-
"test:e2e:watch": "vitest --project e2e",
|
|
105
|
-
"e2e:up": "docker compose -f tests/e2e/docker-compose.yml up -d --wait",
|
|
106
|
-
"e2e:down": "docker compose -f tests/e2e/docker-compose.yml down -v",
|
|
107
|
-
"e2e:bootstrap": "bun tests/e2e/setup/bootstrap.ts",
|
|
108
|
-
"e2e:matrix": "bun scripts/e2e-matrix.ts",
|
|
109
|
-
"e2e:logs": "docker compose -f tests/e2e/docker-compose.yml logs -f metabase",
|
|
110
|
-
"typecheck": "tsc --noEmit",
|
|
111
|
-
"lint": "oxlint",
|
|
112
|
-
"lint:fix": "oxlint --fix",
|
|
113
|
-
"lint:skills": "uvx skillsaw lint skill-data/ --strict",
|
|
114
|
-
"format": "oxfmt",
|
|
115
|
-
"format:check": "oxfmt --check",
|
|
116
|
-
"sync:representations": "bun run scripts/sync-representations.ts",
|
|
117
|
-
"prepublishOnly": "tsdown && publint"
|
|
118
|
-
};
|
|
119
|
-
var dependencies = {
|
|
120
|
-
"@clack/prompts": "^0.8.2",
|
|
121
|
-
"@napi-rs/keyring": "^1.3.0",
|
|
122
|
-
"ajv": "^8.17.1",
|
|
123
|
-
"ajv-formats": "^3.0.1",
|
|
124
|
-
"citty": "^0.2.2",
|
|
125
|
-
"cli-table3": "^0.6.5",
|
|
126
|
-
"semver": "^7.8.0",
|
|
127
|
-
"yaml": "^2.8.4",
|
|
128
|
-
"zod": "^4.0.0"
|
|
129
|
-
};
|
|
130
|
-
var devDependencies = {
|
|
131
|
-
"@types/js-yaml": "^4.0.9",
|
|
132
|
-
"@types/node": "^22.10.0",
|
|
133
|
-
"@types/semver": "^7.7.1",
|
|
134
|
-
"execa": "^9.5.2",
|
|
135
|
-
"fast-check": "^4.7.0",
|
|
136
|
-
"js-yaml": "^4.1.0",
|
|
137
|
-
"oxfmt": "^0.47.0",
|
|
138
|
-
"oxlint": "^1.62.0",
|
|
139
|
-
"publint": "^0.3.0",
|
|
140
|
-
"tsdown": "^0.9.0",
|
|
141
|
-
"typescript": "^5.7.2",
|
|
142
|
-
"vitest": "^2.1.8"
|
|
143
|
-
};
|
|
144
|
-
var engines = { "node": ">=20.6" };
|
|
145
|
-
var package_default = {
|
|
146
|
-
name,
|
|
147
|
-
version,
|
|
148
|
-
description,
|
|
149
|
-
license,
|
|
150
|
-
repository,
|
|
151
|
-
bin,
|
|
152
|
-
files,
|
|
153
|
-
type,
|
|
154
|
-
publishConfig,
|
|
155
|
-
scripts,
|
|
156
|
-
dependencies,
|
|
157
|
-
devDependencies,
|
|
158
|
-
engines
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
//#endregion
|
|
162
|
-
//#region src/core/env.ts
|
|
163
|
-
const CANONICAL_PREFIX = "MB_";
|
|
164
|
-
const LEGACY_PREFIX = "METABASE_";
|
|
165
|
-
const ENV_URL = "MB_URL";
|
|
166
|
-
const ENV_API_KEY = "MB_API_KEY";
|
|
167
|
-
const ENV_PROFILE = "MB_PROFILE";
|
|
168
|
-
const ENV_VERBOSE = "MB_VERBOSE";
|
|
169
|
-
const ENV_SKIP_PREFLIGHT = "MB_CLI_SKIP_PREFLIGHT";
|
|
170
|
-
const ENV_DISABLE_KEYRING = "MB_CLI_DISABLE_KEYRING";
|
|
171
|
-
function legacyNameFor(canonical) {
|
|
172
|
-
return LEGACY_PREFIX + canonical.slice(CANONICAL_PREFIX.length);
|
|
173
|
-
}
|
|
174
|
-
const legacyVarsUsed = new Set();
|
|
175
|
-
function readEnv(canonical) {
|
|
176
|
-
const direct = process.env[canonical];
|
|
177
|
-
if (direct !== void 0) return direct;
|
|
178
|
-
const legacyValue = process.env[legacyNameFor(canonical)];
|
|
179
|
-
if (legacyValue !== void 0) {
|
|
180
|
-
legacyVarsUsed.add(canonical);
|
|
181
|
-
return legacyValue;
|
|
182
|
-
}
|
|
183
|
-
return void 0;
|
|
184
|
-
}
|
|
185
|
-
function consumeLegacyEnvWarnings() {
|
|
186
|
-
if (legacyVarsUsed.size === 0) return [];
|
|
187
|
-
const messages = [...legacyVarsUsed].map(legacyEnvWarning);
|
|
188
|
-
legacyVarsUsed.clear();
|
|
189
|
-
return messages;
|
|
190
|
-
}
|
|
191
|
-
function legacyEnvWarning(canonical) {
|
|
192
|
-
return `warning: ${legacyNameFor(canonical)} is deprecated; set ${canonical} instead`;
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
//#endregion
|
|
196
|
-
//#region src/output/error.ts
|
|
197
|
-
const VERBOSE_BREADCRUMB = "(rerun with MB_VERBOSE=1 for details)";
|
|
198
|
-
function reportError(error, format) {
|
|
199
|
-
const handled = toMetabaseError(error);
|
|
200
|
-
const verbose = readEnv(ENV_VERBOSE) === "1";
|
|
201
|
-
if (format === "json") writeJsonError(handled, verbose);
|
|
202
|
-
else writeTextError(handled, verbose);
|
|
203
|
-
for (const message of consumeLegacyEnvWarnings()) warn(message);
|
|
204
|
-
process.exitCode = handled.exitCode;
|
|
205
|
-
}
|
|
206
|
-
function writeTextError(handled, verbose) {
|
|
207
|
-
process.stderr.write(handled.userMessage + "\n");
|
|
208
|
-
if (handled.developerDetail === null) return;
|
|
209
|
-
if (verbose) process.stderr.write(JSON.stringify(handled.developerDetail, null, 2) + "\n");
|
|
210
|
-
else process.stderr.write(VERBOSE_BREADCRUMB + "\n");
|
|
211
|
-
}
|
|
212
|
-
function writeJsonError(handled, verbose) {
|
|
213
|
-
const payload = {
|
|
214
|
-
category: handled.category,
|
|
215
|
-
message: handled.userMessage,
|
|
216
|
-
exitCode: handled.exitCode
|
|
217
|
-
};
|
|
218
|
-
if (verbose && handled.developerDetail !== null) payload.detail = handled.developerDetail;
|
|
219
|
-
const envelope = {
|
|
220
|
-
ok: false,
|
|
221
|
-
error: payload
|
|
222
|
-
};
|
|
223
|
-
process.stderr.write(JSON.stringify(envelope, null, 2) + "\n");
|
|
224
|
-
}
|
|
225
|
-
|
|
226
|
-
//#endregion
|
|
227
|
-
export { DEFAULT_MAX_BYTES, ENV_API_KEY, ENV_DISABLE_KEYRING, ENV_PROFILE, ENV_SKIP_PREFLIGHT, ENV_URL, connectionFlags, consumeLegacyEnvWarnings, listEnvelopeSchema, outputFlags, package_default, profileFlag, readEnv, reportError, wrapList };
|
package/dist/field-CloFa1oe.mjs
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/field/index.ts
|
|
5
|
-
var field_default = defineCommandGroup({
|
|
6
|
-
name: "field",
|
|
7
|
-
description: "Manage Metabase fields",
|
|
8
|
-
skills: [{
|
|
9
|
-
skill: "metadata",
|
|
10
|
-
purpose: "semantic types, FK targets, visibility, dropdown behavior"
|
|
11
|
-
}],
|
|
12
|
-
subCommands: {
|
|
13
|
-
get: () => import("./get-B0OsW6jk.mjs").then((m) => m.default),
|
|
14
|
-
values: () => import("./values-CIjJI4sz.mjs").then((m) => m.default),
|
|
15
|
-
summary: () => import("./summary-1aNpQc8j.mjs").then((m) => m.default),
|
|
16
|
-
update: () => import("./update-BACl_bJS.mjs").then((m) => m.default)
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
//#endregion
|
|
21
|
-
export { field_default as default };
|
package/dist/get-B8tugTku.mjs
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import { connectionFlags, outputFlags, profileFlag } from "./error-BaBm-UrT.mjs";
|
|
3
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
4
|
-
import { defineMetabaseCommand, parseEnum } from "./runtime-oxjmrYoP.mjs";
|
|
5
|
-
import { renderItem } from "./capabilities-N0jo5U7S.mjs";
|
|
6
|
-
import "./field-CMY_LWUe.mjs";
|
|
7
|
-
import { parseId } from "./parse-id-DlXnOcmP.mjs";
|
|
8
|
-
import "./table-DE3i82T_.mjs";
|
|
9
|
-
import { Database, databaseView } from "./database-D9fftP-i.mjs";
|
|
10
|
-
import { z } from "zod";
|
|
11
|
-
|
|
12
|
-
//#region src/commands/db/get.ts
|
|
13
|
-
const DatabaseGetInclude = z.enum(["tables", "tables.fields"]);
|
|
14
|
-
var get_default = defineMetabaseCommand({
|
|
15
|
-
meta: {
|
|
16
|
-
name: "get",
|
|
17
|
-
description: "Get a database by id"
|
|
18
|
-
},
|
|
19
|
-
capabilities: { minVersion: 58 },
|
|
20
|
-
args: {
|
|
21
|
-
...outputFlags,
|
|
22
|
-
...profileFlag,
|
|
23
|
-
...connectionFlags,
|
|
24
|
-
include: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: `Hydrate related entities: ${DatabaseGetInclude.options.join("|")}`
|
|
27
|
-
},
|
|
28
|
-
id: {
|
|
29
|
-
type: "positional",
|
|
30
|
-
description: "Database id",
|
|
31
|
-
required: true
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
outputSchema: Database,
|
|
35
|
-
examples: [
|
|
36
|
-
"mb db get 1",
|
|
37
|
-
"mb db get 1 --json",
|
|
38
|
-
"mb db get 1 --include tables.fields --json"
|
|
39
|
-
],
|
|
40
|
-
async run({ args, ctx, getClient }) {
|
|
41
|
-
const id = parseId(args.id);
|
|
42
|
-
const include = parseEnum(args.include, DatabaseGetInclude, "--include");
|
|
43
|
-
const client = await getClient();
|
|
44
|
-
const database = await client.requestParsed(Database, `/api/database/${id}`, { query: { include } });
|
|
45
|
-
renderItem(database, databaseView, ctx);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
//#endregion
|
|
50
|
-
export { get_default as default };
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/git-sync/index.ts
|
|
5
|
-
var git_sync_default = defineCommandGroup({
|
|
6
|
-
name: "git-sync",
|
|
7
|
-
description: "Sync Metabase content with a git remote",
|
|
8
|
-
skills: [{
|
|
9
|
-
skill: "git-sync",
|
|
10
|
-
purpose: "import/export round-trip and dirty checks"
|
|
11
|
-
}],
|
|
12
|
-
subCommands: {
|
|
13
|
-
status: () => import("./status-DXQkM18v.mjs").then((mod) => mod.default),
|
|
14
|
-
"is-dirty": () => import("./is-dirty-DpyKeGAJ.mjs").then((mod) => mod.default),
|
|
15
|
-
"has-remote-changes": () => import("./has-remote-changes-DvQBXudi.mjs").then((mod) => mod.default),
|
|
16
|
-
dirty: () => import("./dirty-B-5NDbG9.mjs").then((mod) => mod.default),
|
|
17
|
-
"current-task": () => import("./current-task-WuKPZpZ6.mjs").then((mod) => mod.default),
|
|
18
|
-
"cancel-task": () => import("./cancel-task-CugcIeIi.mjs").then((mod) => mod.default),
|
|
19
|
-
wait: () => import("./wait-5ltTFvSa.mjs").then((mod) => mod.default),
|
|
20
|
-
import: () => import("./import-PGS8-DwE.mjs").then((mod) => mod.default),
|
|
21
|
-
export: () => import("./export-Dod2gdyE.mjs").then((mod) => mod.default),
|
|
22
|
-
stash: () => import("./stash-CQHXwBu_.mjs").then((mod) => mod.default),
|
|
23
|
-
branches: () => import("./branches-mcyT7wI-.mjs").then((mod) => mod.default),
|
|
24
|
-
"create-branch": () => import("./create-branch-DsoMfx_2.mjs").then((mod) => mod.default),
|
|
25
|
-
"add-collection": () => import("./add-collection-DbalcC3_.mjs").then((mod) => mod.default),
|
|
26
|
-
"remove-collection": () => import("./remove-collection-BguaI3-6.mjs").then((mod) => mod.default)
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
//#endregion
|
|
31
|
-
export { git_sync_default as default };
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import "./error-BaBm-UrT.mjs";
|
|
3
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
4
|
-
import "./runtime-oxjmrYoP.mjs";
|
|
5
|
-
import "./capabilities-N0jo5U7S.mjs";
|
|
6
|
-
import "./poll-hgnrHBoh.mjs";
|
|
7
|
-
import "./poll-task-NQNLT_aA.mjs";
|
|
8
|
-
import { IsDirtyResult, is_dirty_default } from "./is-dirty-DyEVFQVJ.mjs";
|
|
9
|
-
|
|
10
|
-
export { is_dirty_default as default };
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { resolveCitty, toAliasArray } from "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import { getMetabaseAugment } from "./command-augment-DdZIfx1V.mjs";
|
|
3
|
-
import { Capabilities, writeJson } from "./capabilities-N0jo5U7S.mjs";
|
|
4
|
-
import { defineCommand } from "citty";
|
|
5
|
-
import { z } from "zod";
|
|
6
|
-
|
|
7
|
-
//#region src/runtime/manifest.ts
|
|
8
|
-
const ManifestArg = z.object({
|
|
9
|
-
name: z.string(),
|
|
10
|
-
type: z.enum([
|
|
11
|
-
"string",
|
|
12
|
-
"boolean",
|
|
13
|
-
"positional",
|
|
14
|
-
"enum"
|
|
15
|
-
]),
|
|
16
|
-
required: z.boolean(),
|
|
17
|
-
description: z.string().optional(),
|
|
18
|
-
default: z.union([
|
|
19
|
-
z.string(),
|
|
20
|
-
z.boolean(),
|
|
21
|
-
z.number()
|
|
22
|
-
]).optional(),
|
|
23
|
-
alias: z.array(z.string()).optional(),
|
|
24
|
-
options: z.array(z.string()).optional()
|
|
25
|
-
});
|
|
26
|
-
const ManifestSkill = z.object({
|
|
27
|
-
skill: z.string(),
|
|
28
|
-
purpose: z.string()
|
|
29
|
-
});
|
|
30
|
-
const ManifestEntry = z.object({
|
|
31
|
-
command: z.string(),
|
|
32
|
-
description: z.string(),
|
|
33
|
-
details: z.string().optional(),
|
|
34
|
-
skills: z.array(ManifestSkill),
|
|
35
|
-
examples: z.array(z.string()),
|
|
36
|
-
args: z.array(ManifestArg),
|
|
37
|
-
outputSchema: z.unknown().nullable(),
|
|
38
|
-
capabilities: Capabilities.nullable()
|
|
39
|
-
});
|
|
40
|
-
const Manifest = z.object({
|
|
41
|
-
version: z.literal(1),
|
|
42
|
-
commands: z.array(ManifestEntry)
|
|
43
|
-
});
|
|
44
|
-
async function buildManifest(root) {
|
|
45
|
-
return {
|
|
46
|
-
version: 1,
|
|
47
|
-
commands: await walk(root, [])
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
async function walk(cmd, path) {
|
|
51
|
-
const meta = await resolveCitty(cmd.meta);
|
|
52
|
-
if (meta?.hidden === true) return [];
|
|
53
|
-
const subCommands = await resolveCitty(cmd.subCommands);
|
|
54
|
-
if (subCommands && Object.keys(subCommands).length > 0) {
|
|
55
|
-
const groups = await Promise.all(Object.entries(subCommands).map(async ([name, lazy]) => {
|
|
56
|
-
const sub = await resolveCitty(lazy);
|
|
57
|
-
return sub ? walk(sub, [...path, name]) : [];
|
|
58
|
-
}));
|
|
59
|
-
return groups.flat();
|
|
60
|
-
}
|
|
61
|
-
const args = await resolveCitty(cmd.args) ?? {};
|
|
62
|
-
const augment = getMetabaseAugment(cmd);
|
|
63
|
-
if (augment === null) return [];
|
|
64
|
-
const entry = {
|
|
65
|
-
command: path.join(" "),
|
|
66
|
-
description: readDescription(meta),
|
|
67
|
-
skills: Array.from(augment.skills),
|
|
68
|
-
examples: Array.from(augment.examples),
|
|
69
|
-
args: convertArgs(args),
|
|
70
|
-
outputSchema: augment.outputSchema ? z.toJSONSchema(augment.outputSchema) : null,
|
|
71
|
-
capabilities: augment.capabilities
|
|
72
|
-
};
|
|
73
|
-
if (augment.details !== null) entry.details = augment.details;
|
|
74
|
-
return [entry];
|
|
75
|
-
}
|
|
76
|
-
function readDescription(meta) {
|
|
77
|
-
if (meta === void 0) return "";
|
|
78
|
-
return typeof meta.description === "string" ? meta.description : "";
|
|
79
|
-
}
|
|
80
|
-
function convertArgs(args) {
|
|
81
|
-
return Object.entries(args).map(([name, def]) => convertArg(name, def));
|
|
82
|
-
}
|
|
83
|
-
function convertArg(name, def) {
|
|
84
|
-
const arg = {
|
|
85
|
-
name,
|
|
86
|
-
type: def.type ?? "string",
|
|
87
|
-
required: def.required === true && def.default === void 0
|
|
88
|
-
};
|
|
89
|
-
if (def.description) arg.description = def.description;
|
|
90
|
-
if (isPrimitiveDefault(def.default)) arg.default = def.default;
|
|
91
|
-
const alias = readAlias(def);
|
|
92
|
-
if (alias.length > 0) arg.alias = alias;
|
|
93
|
-
const options = readOptions(def);
|
|
94
|
-
if (options.length > 0) arg.options = options;
|
|
95
|
-
return arg;
|
|
96
|
-
}
|
|
97
|
-
function readOptions(def) {
|
|
98
|
-
if (!("options" in def) || !Array.isArray(def.options)) return [];
|
|
99
|
-
return [...def.options];
|
|
100
|
-
}
|
|
101
|
-
function readAlias(def) {
|
|
102
|
-
return "alias" in def ? toAliasArray(def.alias) : [];
|
|
103
|
-
}
|
|
104
|
-
function isPrimitiveDefault(value) {
|
|
105
|
-
return typeof value === "string" || typeof value === "boolean" || typeof value === "number";
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
//#endregion
|
|
109
|
-
//#region src/commands/manifest.ts
|
|
110
|
-
function createManifestCommand(root) {
|
|
111
|
-
return defineCommand({
|
|
112
|
-
meta: {
|
|
113
|
-
name: "__manifest",
|
|
114
|
-
description: "Emit machine-readable command manifest as JSON (for agents)",
|
|
115
|
-
hidden: true
|
|
116
|
-
},
|
|
117
|
-
args: {},
|
|
118
|
-
async run() {
|
|
119
|
-
const manifest = await buildManifest(root);
|
|
120
|
-
writeJson(manifest);
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
//#endregion
|
|
126
|
-
export { createManifestCommand };
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
2
|
-
import { defineCommandGroup } from "./group-BNE_RiH5.mjs";
|
|
3
|
-
|
|
4
|
-
//#region src/commands/measure/index.ts
|
|
5
|
-
var measure_default = defineCommandGroup({
|
|
6
|
-
name: "measure",
|
|
7
|
-
description: "Manage Metabase measures",
|
|
8
|
-
skills: [{
|
|
9
|
-
skill: "mbql",
|
|
10
|
-
purpose: "the definition aggregation"
|
|
11
|
-
}, {
|
|
12
|
-
skill: "data-workflow",
|
|
13
|
-
purpose: "define reusable measures"
|
|
14
|
-
}],
|
|
15
|
-
subCommands: {
|
|
16
|
-
list: () => import("./list-pQ22nXhQ.mjs").then((mod) => mod.default),
|
|
17
|
-
get: () => import("./get-9p0Gt1c7.mjs").then((mod) => mod.default),
|
|
18
|
-
create: () => import("./create-BOmmMSjF.mjs").then((mod) => mod.default),
|
|
19
|
-
update: () => import("./update-BGMJTpA6.mjs").then((mod) => mod.default),
|
|
20
|
-
archive: () => import("./archive-errg-EKw.mjs").then((mod) => mod.default)
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
|
|
24
|
-
//#endregion
|
|
25
|
-
export { measure_default as default };
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import { connectionFlags, outputFlags, profileFlag } from "./error-BaBm-UrT.mjs";
|
|
3
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
4
|
-
import { defineMetabaseCommand } from "./runtime-oxjmrYoP.mjs";
|
|
5
|
-
import { renderItem } from "./capabilities-N0jo5U7S.mjs";
|
|
6
|
-
import "./field-CMY_LWUe.mjs";
|
|
7
|
-
import { parseId } from "./parse-id-DlXnOcmP.mjs";
|
|
8
|
-
import "./table-DE3i82T_.mjs";
|
|
9
|
-
import { Database, databaseView } from "./database-D9fftP-i.mjs";
|
|
10
|
-
|
|
11
|
-
//#region src/commands/db/metadata.ts
|
|
12
|
-
var metadata_default = defineMetabaseCommand({
|
|
13
|
-
meta: {
|
|
14
|
-
name: "metadata",
|
|
15
|
-
description: "Get a database with its tables and fields hydrated"
|
|
16
|
-
},
|
|
17
|
-
capabilities: { minVersion: 58 },
|
|
18
|
-
args: {
|
|
19
|
-
...outputFlags,
|
|
20
|
-
...profileFlag,
|
|
21
|
-
...connectionFlags,
|
|
22
|
-
id: {
|
|
23
|
-
type: "positional",
|
|
24
|
-
description: "Database id",
|
|
25
|
-
required: true
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
outputSchema: Database,
|
|
29
|
-
examples: ["mb db metadata 1", "mb db metadata 1 --json"],
|
|
30
|
-
async run({ args, ctx, getClient }) {
|
|
31
|
-
const id = parseId(args.id);
|
|
32
|
-
const client = await getClient();
|
|
33
|
-
const database = await client.requestParsed(Database, `/api/database/${id}/metadata`);
|
|
34
|
-
renderItem(database, databaseView, ctx);
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
//#endregion
|
|
39
|
-
export { metadata_default as default };
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import "./notice-DyVl5aYB.mjs";
|
|
2
|
-
import { connectionFlags, outputFlags, profileFlag } from "./error-BaBm-UrT.mjs";
|
|
3
|
-
import "./command-augment-DdZIfx1V.mjs";
|
|
4
|
-
import { defineMetabaseCommand } from "./runtime-oxjmrYoP.mjs";
|
|
5
|
-
import { renderItem } from "./capabilities-N0jo5U7S.mjs";
|
|
6
|
-
import "./field-CMY_LWUe.mjs";
|
|
7
|
-
import { parseId } from "./parse-id-DlXnOcmP.mjs";
|
|
8
|
-
import { TableQueryMetadata, tableView } from "./table-DE3i82T_.mjs";
|
|
9
|
-
|
|
10
|
-
//#region src/commands/table/metadata.ts
|
|
11
|
-
var metadata_default = defineMetabaseCommand({
|
|
12
|
-
meta: {
|
|
13
|
-
name: "metadata",
|
|
14
|
-
description: "Get a table with its fields, FKs, and dimensions hydrated"
|
|
15
|
-
},
|
|
16
|
-
capabilities: { minVersion: 58 },
|
|
17
|
-
args: {
|
|
18
|
-
...outputFlags,
|
|
19
|
-
...profileFlag,
|
|
20
|
-
...connectionFlags,
|
|
21
|
-
id: {
|
|
22
|
-
type: "positional",
|
|
23
|
-
description: "Table id",
|
|
24
|
-
required: true
|
|
25
|
-
}
|
|
26
|
-
},
|
|
27
|
-
outputSchema: TableQueryMetadata,
|
|
28
|
-
examples: ["mb table metadata 42", "mb table metadata 42 --json"],
|
|
29
|
-
async run({ args, ctx, getClient }) {
|
|
30
|
-
const id = parseId(args.id);
|
|
31
|
-
const client = await getClient();
|
|
32
|
-
const table = await client.requestParsed(TableQueryMetadata, `/api/table/${id}/query_metadata`);
|
|
33
|
-
renderItem(table, tableView, ctx);
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
//#endregion
|
|
38
|
-
export { metadata_default as default };
|