@metabase/cli 0.1.4 → 0.1.6
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/.claude-plugin/marketplace.json +19 -0
- package/README.md +147 -101
- package/dist/{add-collection-CffaBB-Y.mjs → add-collection-BU8r3r2M.mjs} +9 -4
- package/dist/add-collection-C0w6ACQF.mjs +11 -0
- package/dist/{archive-uJrslh9r.mjs → archive-BNinrUak.mjs} +9 -8
- package/dist/{archive-GdGm7l2e.mjs → archive-C1enZgKV.mjs} +8 -7
- package/dist/archive-CDA0KxL8.mjs +40 -0
- package/dist/{archive-BAcEXbT9.mjs → archive-CRhiBpPJ.mjs} +9 -8
- package/dist/{archive-B_B3MQp0.mjs → archive-DMPS8Kih.mjs} +9 -8
- package/dist/archive-lWgqiFAt.mjs +40 -0
- package/dist/auth-CzXb_zB2.mjs +19 -0
- package/dist/{body-D6dHGjMT.mjs → body-DjdFxjpg.mjs} +4 -4
- package/dist/{branches-Bpe40fEd.mjs → branches-B1WRfG7-.mjs} +11 -7
- package/dist/{cancel-BWTY6oYI.mjs → cancel-Dl_Ho056.mjs} +7 -6
- package/dist/{cancel-task--BfiAXfS.mjs → cancel-task-CdigdCaO.mjs} +11 -7
- package/dist/capabilities-7e9MgquN.mjs +29 -0
- package/dist/card-DP4rfoOi.mjs +21 -0
- package/dist/{card-CQxvHeyP.mjs → card-DlCAaAPq.mjs} +1 -1
- package/dist/{cards-CVlFJxYh.mjs → cards-BGiJS675.mjs} +8 -7
- package/dist/cli.mjs +267 -44
- package/dist/collection-tY18ezvn.mjs +21 -0
- package/dist/{predicates-CGO17Q15.mjs → command-augment-BH9qgQ5u.mjs} +66 -14
- package/dist/create-BNiva__H.mjs +52 -0
- package/dist/{create-izE3EKCt.mjs → create-BTcpaop_.mjs} +9 -8
- package/dist/{create-BykvNpSA.mjs → create-BYlIju0b.mjs} +14 -12
- package/dist/{create-Bu-YhIDL.mjs → create-Be_0Vier.mjs} +10 -9
- package/dist/{create-DYoc9IXW.mjs → create-CHF313Qg.mjs} +13 -9
- package/dist/{create-Cz3_Wxdt.mjs → create-CwGtmwqm.mjs} +14 -12
- package/dist/{create-DP8RrLDi.mjs → create-CzzrbL0u.mjs} +10 -9
- package/dist/{create-BzElku2l.mjs → create-DGth_uOp.mjs} +14 -12
- package/dist/{create-branch-B49UQyCK.mjs → create-branch-DKZkoQ64.mjs} +11 -7
- package/dist/{create-DQVdMT2Y.mjs → create-dhxPxfF3.mjs} +16 -14
- package/dist/{credentials-xKSoP6eh.mjs → credentials-dzeq7ckm.mjs} +12 -10
- package/dist/{current-task-DweHmjlk.mjs → current-task-CCRzm0_7.mjs} +11 -7
- package/dist/dashboard-ChM_Tu0l.mjs +22 -0
- package/dist/{dashboard-CnMD04PQ.mjs → dashboard-FY5UzJ_Z.mjs} +2 -1
- package/dist/{database-BNlvldUL.mjs → database-CIXwHKjK.mjs} +3 -3
- package/dist/{database-vvig8k4x.mjs → database-lH-B3G1I.mjs} +1 -1
- package/dist/db-DrQn_i3W.mjs +22 -0
- package/dist/{remove-B3ZEqBF7.mjs → delete-CM3jnAeQ.mjs} +21 -20
- package/dist/{delete-DojHmKeM.mjs → delete-Dimc-2y8.mjs} +9 -8
- package/dist/{delete-DIz9Tgz5.mjs → delete-ZjnV35OJ.mjs} +9 -8
- package/dist/{delete-runtime-BkAdygbs.mjs → delete-runtime-B6RQo_pw.mjs} +5 -3
- package/dist/{delete-table-DjN8E3sd.mjs → delete-table-agZJpivt.mjs} +9 -8
- package/dist/{deprovision-_HDcBApz.mjs → deprovision-CwxcIT3k.mjs} +16 -12
- package/dist/{dirty-Co8V0SZ3.mjs → dirty-D4d0yHqj.mjs} +11 -7
- package/dist/{docker-D9sC_37H.mjs → docker-Oq80q3tu.mjs} +4 -4
- package/dist/{translate-CG_Ka0dO.mjs → eid-BXzaQh0o.mjs} +37 -22
- package/dist/error-C9S6PN3-.mjs +190 -0
- package/dist/{export-CVMFxoo1.mjs → export-DTygoXBP.mjs} +17 -16
- package/dist/field-Z6Pcxf4n.mjs +19 -0
- package/dist/{fields-Coha7vKv.mjs → fields-CoQi99gv.mjs} +9 -8
- package/dist/{get-DXv2FkA7.mjs → get-Bzys7vgp.mjs} +8 -7
- package/dist/{get-bNtA7vWe.mjs → get-C2p383Qc.mjs} +8 -7
- package/dist/{get-Br6WayZv.mjs → get-C3HdQ91a.mjs} +8 -7
- package/dist/{get-BOtKerj8.mjs → get-CP3Z3NiH.mjs} +9 -8
- package/dist/{get-BSKoL8ek.mjs → get-C_w1kvN3.mjs} +9 -8
- package/dist/{get-Be6EFh94.mjs → get-CzuzeKSe.mjs} +10 -9
- package/dist/{get-BVTz9B_H.mjs → get-D3SbEQSE.mjs} +10 -9
- package/dist/get-DFxZXaKz.mjs +79 -0
- package/dist/{get-DZrV7v9d.mjs → get-DQTZG_NP.mjs} +8 -7
- package/dist/{get-CJwzbVjc.mjs → get-DSWFjy7O.mjs} +8 -7
- package/dist/{get-BxzCKVC6.mjs → get-Ddr0XLh7.mjs} +8 -7
- package/dist/{get-AOvWo48B.mjs → get-Hc93A0Yz.mjs} +8 -7
- package/dist/{get-C_6K7MSW.mjs → get-lb7q3JYs.mjs} +7 -6
- package/dist/get-run-B7sKdaDU.mjs +38 -0
- package/dist/git-sync-CiGAad76.mjs +28 -0
- package/dist/{has-remote-changes-D6xgsuUr.mjs → has-remote-changes-BY10-nnE.mjs} +11 -7
- package/dist/{import-Dv0ORSNw.mjs → import-CiMz4Wz-.mjs} +17 -16
- package/dist/{input-BQ-BZA8h.mjs → input-cMSEqISy.mjs} +7 -4
- package/dist/{is-dirty-WNi8a6O9.mjs → is-dirty-BZOaryxT.mjs} +9 -4
- package/dist/is-dirty-Ume4oV0j.mjs +10 -0
- package/dist/{items-CTcAMknV.mjs → items-BWfvkY-J.mjs} +9 -8
- package/dist/key-C2XG394c.mjs +17 -0
- package/dist/license-Dxarh-gG.mjs +17 -0
- package/dist/{list-FXuSCYpa.mjs → list--OYdUTtu.mjs} +7 -6
- package/dist/{list-8oVMvlLV.mjs → list-2j7GsXsl.mjs} +7 -6
- package/dist/{list-xQmtQPSl.mjs → list-BI4zr8LW.mjs} +10 -8
- package/dist/{list-DhWG5jiW.mjs → list-Brgh-Z2v.mjs} +8 -6
- package/dist/{list-DSs0Q78i.mjs → list-C3hfovHv.mjs} +7 -6
- package/dist/{list-DvUjMQze.mjs → list-CL7eCOQE.mjs} +7 -6
- package/dist/list-Clz5igWg.mjs +44 -0
- package/dist/list-D4sFiqX8.mjs +173 -0
- package/dist/{list-BxdXvGTK.mjs → list-DXH7TlkU.mjs} +9 -7
- package/dist/{list-CocYwmnI.mjs → list-DZ8fNUoQ.mjs} +9 -8
- package/dist/{list-DjhZU-FY.mjs → list-SOG0whQ-.mjs} +7 -6
- package/dist/{list-DI7K3K6k.mjs → list-d58BprgJ.mjs} +7 -6
- package/dist/{list-NiwCL_1X.mjs → list-sD5N3fGk.mjs} +9 -8
- package/dist/{list-CbJeP0Z6.mjs → list-zSO0DMw-.mjs} +10 -6
- package/dist/{login-SXsSH0I1.mjs → login-Bm2AnCez.mjs} +65 -80
- package/dist/{logout-bgOXjxbN.mjs → logout-BlyRJODO.mjs} +8 -7
- package/dist/{logs-BnwVbFuD.mjs → logs-CywPikkL.mjs} +9 -8
- package/dist/{manifest-CGM7XNLC.mjs → manifest-BBR46KFM.mjs} +15 -15
- package/dist/measure-C44EK_xt.mjs +20 -0
- package/dist/{measure-BEQfnLdN.mjs → measure-ClESGxIb.mjs} +2 -2
- package/dist/{metadata-Bu2HOmuX.mjs → metadata-B8ZSF9LA.mjs} +10 -9
- package/dist/{metadata-B0WZT3Yb.mjs → metadata-DqiI2q9q.mjs} +9 -8
- package/dist/parse-enum-CrEWOhuY.mjs +11 -0
- package/dist/{parse-id-B3B-0hUA.mjs → parse-id-lk_K-CEF.mjs} +1 -1
- package/dist/{parse-ref-D1yeDOn8.mjs → parse-ref-BiETXmvm.mjs} +1 -1
- package/dist/{parse-schemas-DgtVLikM.mjs → parse-schemas-BqUdWUwq.mjs} +2 -2
- package/dist/path-AEtZ3mBq.mjs +58 -0
- package/dist/{poll-BCnrcUVf.mjs → poll-DHKDpCiq.mjs} +2 -2
- package/dist/{poll-task-0b1V6G-8.mjs → poll-task-Cooi0lQV.mjs} +3 -20
- package/dist/{preflight-5ACaYnDp.mjs → preflight-aXV5LyDs.mjs} +4 -4
- package/dist/{process-FjsqDwKo.mjs → process-C7V8LJ-j.mjs} +1 -1
- package/dist/{prompt-DgDNy_Pc.mjs → prompt-CFKoys7k.mjs} +3 -1
- package/dist/{provision-29Zt62Ft.mjs → provision-UWcNDoDe.mjs} +29 -24
- package/dist/{ps-BMFiRCi4.mjs → ps-CJU0EbrC.mjs} +5 -3
- package/dist/ps-DEroLgbI.mjs +11 -0
- package/dist/{query-DxA353Hy.mjs → query-AaKzYnTY.mjs} +9 -8
- package/dist/{query-aba8MEe_.mjs → query-BlsVNZpD.mjs} +15 -13
- package/dist/{remove-BfgU_CQi.mjs → remove-BFWun0e8.mjs} +9 -8
- package/dist/{remove-collection-Brv72xUe.mjs → remove-collection-CoCmrrQs.mjs} +13 -9
- package/dist/{render-DuoDUTVL.mjs → render-CfznwleY.mjs} +15 -17
- package/dist/render-OQn3iRsI.mjs +32 -0
- package/dist/{rescan-values-DIAdjoq7.mjs → rescan-values-C0FDsjT7.mjs} +10 -9
- package/dist/{run-CgXRo0hD.mjs → run-B4Wn43zm.mjs} +10 -9
- package/dist/{runs-DtLRw6xg.mjs → runs-Bbaszr18.mjs} +9 -8
- package/dist/{runtime-Br8L4NPm.mjs → runtime-Dmv5VtUK.mjs} +657 -428
- package/dist/{schema-tables-DiKMY6lx.mjs → schema-tables-CaWinbuK.mjs} +9 -8
- package/dist/{schemas-Bvr8cOzo.mjs → schemas-DUgGpAyB.mjs} +7 -6
- package/dist/{search-BT_TCcTd.mjs → search-BLrBXLUk.mjs} +12 -16
- package/dist/segment-B3Uwwcsm.mjs +20 -0
- package/dist/{set-DtG0KH6P.mjs → set-B8cUbRLD.mjs} +13 -12
- package/dist/{set-CAIkXlPy.mjs → set-DfGsta5O.mjs} +11 -10
- package/dist/{setting-BDOi5fk_.mjs → setting-D2p2MA7f.mjs} +3 -3
- package/dist/{setup-LjTvvlJy.mjs → setup-C9ikBRw_.mjs} +9 -8
- package/dist/skills-CUHIcQS6.mjs +18 -0
- package/dist/skills-CiN1OQ8W.mjs +191 -0
- package/dist/snippet-B7D0uWlz.mjs +20 -0
- package/dist/{start-CXKt0Q7A.mjs → start-3PX3ahjT.mjs} +68 -36
- package/dist/{stash-dRw1UEwg.mjs → stash-EIDcSvpF.mjs} +17 -16
- package/dist/{status-C2niMfrQ.mjs → status-95ElRAu9.mjs} +12 -8
- package/dist/status-B0_MiZEf.mjs +100 -0
- package/dist/status-CEplmC44.mjs +34 -0
- package/dist/{stop-BdedYfwU.mjs → stop-CQ0XGrN8.mjs} +11 -10
- package/dist/{summary-BPDA4K99.mjs → summary-C12LiEuJ.mjs} +8 -7
- package/dist/{sync-schema-D95LLRpf.mjs → sync-schema-Ba8M3DiX.mjs} +10 -9
- package/dist/{table-B-PYcgGb.mjs → table-C7a5V6Zn.mjs} +1 -1
- package/dist/table-e6h8SLVX.mjs +20 -0
- package/dist/transform-BMYh1lsC.mjs +25 -0
- package/dist/transform-job-Cm7z5TfH.mjs +20 -0
- package/dist/{transform-job-Csr86muI.mjs → transform-job-DeTDPMxt.mjs} +1 -1
- package/dist/{tree-DazZT7dR.mjs → tree-Des2ZG9d.mjs} +6 -5
- package/dist/{update-DE6kjV-f.mjs → update-Bx54nWEI.mjs} +17 -15
- package/dist/{update-bW-i6gjZ.mjs → update-CyIZdbIQ.mjs} +11 -10
- package/dist/{update-djgvzO3K.mjs → update-DBi5U8zb.mjs} +16 -14
- package/dist/{update-CJSDB6S8.mjs → update-DHZubok3.mjs} +18 -14
- package/dist/{update-BBfvArCx.mjs → update-DSgceARZ.mjs} +11 -10
- package/dist/{update-DSWZSfpw.mjs → update-DzAN4SPj.mjs} +15 -13
- package/dist/{update-WyRKlQPh.mjs → update-F6DmZncY.mjs} +11 -10
- package/dist/{update-DTIWJxob.mjs → update-_QfgNa53.mjs} +12 -11
- package/dist/{update-dashcard-BhD5x__K.mjs → update-dashcard-wpSjv4M7.mjs} +11 -10
- package/dist/{update-9kVyE3BJ.mjs → update-mYVnoYNV.mjs} +15 -13
- package/dist/{update-659eQR1L.mjs → update-njHe3j-s.mjs} +15 -13
- package/dist/{upgrade-D58rvXHM.mjs → upgrade-iAuvhX-W.mjs} +9 -8
- package/dist/{url-DKkSu2D8.mjs → url-DWaT6WIZ.mjs} +11 -10
- package/dist/{uuid-BF20B59s.mjs → uuid-CMKnS8-z.mjs} +8 -6
- package/dist/{validate-CB0bu50i.mjs → validate-dPEOnOf8.mjs} +2 -1
- package/dist/{validate-query-CavIA0Q2.mjs → validate-query-Cw6WE5Y8.mjs} +3 -3
- package/dist/{values-DyjmpcbT.mjs → values-BfSTAbzc.mjs} +8 -7
- package/dist/verify-D5YtTqqp.mjs +79 -0
- package/dist/{wait-CeUPCgdc.mjs → wait-8yV9_WIo.mjs} +2 -2
- package/dist/{wait-DhkTaV6E.mjs → wait-Bv3Tsnv4.mjs} +12 -8
- package/dist/{wait-flags-BR-yqe7y.mjs → wait-flags-Dzq9BGQY.mjs} +20 -9
- package/dist/workspace-CKLZrR7l.mjs +26 -0
- package/dist/{workspace-credentials-Cctumbru.mjs → workspace-credentials-BXpABsNZ.mjs} +2 -41
- package/dist/yaml-YTQiYJ9s.mjs +43 -0
- package/package.json +6 -2
- package/skill-data/core/SKILL.md +177 -0
- package/skill-data/git-sync/SKILL.md +196 -0
- package/skill-data/mbql/SKILL.md +156 -0
- package/skill-data/mbql/references/operators.md +253 -0
- package/skill-data/transform/SKILL.md +197 -0
- package/skill-data/viz/SKILL.md +137 -0
- package/skill-data/viz/references/settings.md +312 -0
- package/skill-data/workspace/SKILL.md +390 -0
- package/skills/metabase-cli/SKILL.md +21 -0
- package/dist/add-collection-CPL1njYZ.mjs +0 -11
- package/dist/api-key-9p1UPnXn.mjs +0 -13
- package/dist/auth-N4w5xtwW.mjs +0 -19
- package/dist/card-4rZRb5bc.mjs +0 -20
- package/dist/collection-Cp_B02I4.mjs +0 -19
- package/dist/command-augment-D9pI9Vbh.mjs +0 -11
- package/dist/create-doyv3SxU.mjs +0 -50
- package/dist/create-ov-De5dO.mjs +0 -125
- package/dist/dashboard-BYBiA-IG.mjs +0 -20
- package/dist/db-CObVU22j.mjs +0 -22
- package/dist/eid-Cr5r-t9B.mjs +0 -13
- package/dist/field-CbljasCH.mjs +0 -18
- package/dist/flag-pair-Fmcdkrfx.mjs +0 -17
- package/dist/get-run-CSrXHDGS.mjs +0 -36
- package/dist/git-sync-BGkS8o5b.mjs +0 -28
- package/dist/is-dirty-BOZ4xz92.mjs +0 -10
- package/dist/key-CCJdVWKc.mjs +0 -12
- package/dist/license-DLLTpFvP.mjs +0 -17
- package/dist/list-BNzdnE1c.mjs +0 -55
- package/dist/measure-B54VtKym.mjs +0 -19
- package/dist/package-D-aVYFKM.mjs +0 -80
- package/dist/ps-C5FOLwL2.mjs +0 -11
- package/dist/segment-C2ui5dSd.mjs +0 -19
- package/dist/snippet-BcgVYsoR.mjs +0 -19
- package/dist/status-BEONmJWv.mjs +0 -32
- package/dist/status-BWep0PFe.mjs +0 -56
- package/dist/table-lCNGbvej.mjs +0 -19
- package/dist/transform-BGAm1s4f.mjs +0 -24
- package/dist/transform-job-cNTJ30pm.mjs +0 -19
- package/dist/workspace-DtcBldk0.mjs +0 -24
- /package/dist/{body-flags-BK7J6Daz.mjs → body-flags-D7q87Btw.mjs} +0 -0
- /package/dist/{field-B3gvaqpK.mjs → field-yomXlkvl.mjs} +0 -0
- /package/dist/{paginate-CTSfuYiF.mjs → paginate-Dfm9eO9A.mjs} +0 -0
- /package/dist/{revision-message-flag-oyq2xrDU.mjs → revision-message-flag-WmsIzUOM.mjs} +0 -0
- /package/dist/{segment-BMrUBz94.mjs → segment-Be2v4ilr.mjs} +0 -0
- /package/dist/{setting-CTaAeMci.mjs → setting-oL97SNeO.mjs} +0 -0
- /package/dist/{snippet-Dw0Sjzkr.mjs → snippet-COggaWxx.mjs} +0 -0
- /package/dist/{transform-IEX4Mx3X.mjs → transform-GTW3G-01.mjs} +0 -0
- /package/dist/{workspace-C5q4nbpY.mjs → workspace-BBXJczJK.mjs} +0 -0
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import { ConfigError, isNotFoundError } from "./
|
|
1
|
+
import { ConfigError, isNotFoundError } from "./command-augment-BH9qgQ5u.mjs";
|
|
2
2
|
import { readFile } from "node:fs/promises";
|
|
3
3
|
|
|
4
4
|
//#region src/runtime/input.ts
|
|
5
|
-
const
|
|
5
|
+
const DEFAULT_FLAG_NAME = "--body";
|
|
6
|
+
function sourceList(flagName) {
|
|
7
|
+
return `${flagName ?? DEFAULT_FLAG_NAME}, --file, stdin, or a positional argument`;
|
|
8
|
+
}
|
|
6
9
|
async function readInput(sources) {
|
|
7
10
|
if (sources.flag) return sources.flag;
|
|
8
11
|
if (sources.file) return await readFileSource(sources.file);
|
|
@@ -12,7 +15,7 @@ async function readInput(sources) {
|
|
|
12
15
|
}
|
|
13
16
|
if (sources.positional) return sources.positional;
|
|
14
17
|
const required = sources.required ?? true;
|
|
15
|
-
if (required) throw new ConfigError(`input required: provide one of ${
|
|
18
|
+
if (required) throw new ConfigError(`input required: provide one of ${sourceList(sources.flagName)}`);
|
|
16
19
|
return "";
|
|
17
20
|
}
|
|
18
21
|
async function readFileSource(path) {
|
|
@@ -31,4 +34,4 @@ async function readStdin() {
|
|
|
31
34
|
}
|
|
32
35
|
|
|
33
36
|
//#endregion
|
|
34
|
-
export { readInput };
|
|
37
|
+
export { DEFAULT_FLAG_NAME, readInput };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { connectionFlags, outputFlags, profileFlag } from "./error-C9S6PN3-.mjs";
|
|
2
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
3
|
+
import { renderScalar } from "./render-CfznwleY.mjs";
|
|
4
|
+
import { REMOTE_SYNC_PATHS } from "./poll-task-Cooi0lQV.mjs";
|
|
4
5
|
import { z } from "zod";
|
|
5
6
|
|
|
6
7
|
//#region src/commands/git-sync/is-dirty.ts
|
|
@@ -17,6 +18,10 @@ var is_dirty_default = defineMetabaseCommand({
|
|
|
17
18
|
name: "is-dirty",
|
|
18
19
|
description: "Check whether Metabase has unsynced local changes"
|
|
19
20
|
},
|
|
21
|
+
capabilities: {
|
|
22
|
+
minVersion: 60,
|
|
23
|
+
tokenFeature: "remote_sync"
|
|
24
|
+
},
|
|
20
25
|
args: {
|
|
21
26
|
...outputFlags,
|
|
22
27
|
...profileFlag,
|
|
@@ -27,7 +32,7 @@ var is_dirty_default = defineMetabaseCommand({
|
|
|
27
32
|
async run({ ctx, getClient }) {
|
|
28
33
|
const client = await getClient();
|
|
29
34
|
const result = await client.requestParsed(IsDirtyResult, REMOTE_SYNC_PATHS.isDirty);
|
|
30
|
-
|
|
35
|
+
renderScalar(result, isDirtyView, result.is_dirty ? "dirty" : "clean", ctx);
|
|
31
36
|
}
|
|
32
37
|
});
|
|
33
38
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import "./error-C9S6PN3-.mjs";
|
|
3
|
+
import "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import "./render-CfznwleY.mjs";
|
|
6
|
+
import "./poll-task-Cooi0lQV.mjs";
|
|
7
|
+
import "./poll-DHKDpCiq.mjs";
|
|
8
|
+
import { IsDirtyResult, is_dirty_default } from "./is-dirty-BZOaryxT.mjs";
|
|
9
|
+
|
|
10
|
+
export { is_dirty_default as default };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { parseId } from "./parse-id-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand, parseEnum, parseEnumCsv } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { parseId } from "./parse-id-lk_K-CEF.mjs";
|
|
7
7
|
import { COLLECTION_ITEM_FILTER_MODELS, COLLECTION_PINNED_STATES, CollectionItem, CollectionItemCompact, CollectionItemFilterModel, CollectionPinnedState, collectionItemView } from "./collection-B3sPXRLs.mjs";
|
|
8
|
-
import { parseCollectionRef } from "./parse-ref-
|
|
9
|
-
import { collectPaginated } from "./paginate-
|
|
8
|
+
import { parseCollectionRef } from "./parse-ref-BiETXmvm.mjs";
|
|
9
|
+
import { collectPaginated } from "./paginate-Dfm9eO9A.mjs";
|
|
10
10
|
|
|
11
11
|
//#region src/commands/collection/items.ts
|
|
12
12
|
const CollectionItemListEnvelope = listEnvelopeSchema(CollectionItemCompact);
|
|
@@ -15,6 +15,7 @@ var items_default = defineMetabaseCommand({
|
|
|
15
15
|
name: "items",
|
|
16
16
|
description: "List items inside a collection"
|
|
17
17
|
},
|
|
18
|
+
capabilities: { minVersion: 58 },
|
|
18
19
|
args: {
|
|
19
20
|
...outputFlags,
|
|
20
21
|
...profileFlag,
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ConfigError, errorMessage } from "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/commands/setting/key.ts
|
|
4
|
+
const SETTING_KEY_PATTERN = /^[A-Za-z][A-Za-z0-9_-]*$/;
|
|
5
|
+
const UNKNOWN_SETTING_PREFIX = "Unknown setting:";
|
|
6
|
+
function parseSettingKey(value) {
|
|
7
|
+
const trimmed = value.trim();
|
|
8
|
+
if (!SETTING_KEY_PATTERN.test(trimmed)) throw new ConfigError(`invalid setting key: "${value}" (expected kebab-case identifier)`);
|
|
9
|
+
return trimmed;
|
|
10
|
+
}
|
|
11
|
+
function rethrowSettingError(error, key) {
|
|
12
|
+
if (errorMessage(error).startsWith(UNKNOWN_SETTING_PREFIX)) throw new ConfigError(`unknown setting: ${key}`);
|
|
13
|
+
throw error;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
//#endregion
|
|
17
|
+
export { parseSettingKey, rethrowSettingError };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { defineCommand } from "citty";
|
|
2
|
+
|
|
3
|
+
//#region src/commands/workspace/license/index.ts
|
|
4
|
+
var license_default = defineCommand({
|
|
5
|
+
meta: {
|
|
6
|
+
name: "license",
|
|
7
|
+
description: "Manage the Metabase Enterprise license token used by workspace start"
|
|
8
|
+
},
|
|
9
|
+
subCommands: {
|
|
10
|
+
set: () => import("./set-B8cUbRLD.mjs").then((m) => m.default),
|
|
11
|
+
status: () => import("./status-CEplmC44.mjs").then((m) => m.default),
|
|
12
|
+
remove: () => import("./remove-BFWun0e8.mjs").then((m) => m.default)
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
//#endregion
|
|
17
|
+
export { license_default as default };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { Snippet, SnippetCompact, snippetView } from "./snippet-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { Snippet, SnippetCompact, snippetView } from "./snippet-COggaWxx.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/snippet/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List native query snippets"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 58 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { Setting, SettingCompact, settingView } from "./setting-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { Setting, SettingCompact, settingView } from "./setting-oL97SNeO.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/setting/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List all settings (admin)"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 58 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import "./field-
|
|
7
|
-
import { Card, CardCompact, cardView } from "./card-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import "./field-yomXlkvl.mjs";
|
|
7
|
+
import { Card, CardCompact, cardView } from "./card-DlCAaAPq.mjs";
|
|
8
|
+
import { parseEnumFlag } from "./parse-enum-CrEWOhuY.mjs";
|
|
8
9
|
import { z } from "zod";
|
|
9
10
|
|
|
10
11
|
//#region src/commands/card/list.ts
|
|
@@ -25,6 +26,7 @@ var list_default = defineMetabaseCommand({
|
|
|
25
26
|
name: "list",
|
|
26
27
|
description: "List cards (questions, models, metrics)"
|
|
27
28
|
},
|
|
29
|
+
capabilities: { minVersion: 58 },
|
|
28
30
|
args: {
|
|
29
31
|
...outputFlags,
|
|
30
32
|
...profileFlag,
|
|
@@ -47,7 +49,7 @@ var list_default = defineMetabaseCommand({
|
|
|
47
49
|
"mb card list --filter using_model --model-id 42 --json"
|
|
48
50
|
],
|
|
49
51
|
async run({ args, ctx, getClient }) {
|
|
50
|
-
const filter =
|
|
52
|
+
const filter = parseEnumFlag(args.filter, CardListFilter, "filter");
|
|
51
53
|
const modelId = args.modelId === void 0 || args.modelId === "" ? void 0 : args.modelId;
|
|
52
54
|
const client = await getClient();
|
|
53
55
|
const items = await client.requestParsed(CardApiList, "/api/card", { query: {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { parseEnumFlag } from "./parse-enum-CrEWOhuY.mjs";
|
|
6
7
|
import { Collection, CollectionCompact, collectionView } from "./collection-B3sPXRLs.mjs";
|
|
7
8
|
import { z } from "zod";
|
|
8
9
|
|
|
@@ -24,6 +25,7 @@ var list_default = defineMetabaseCommand({
|
|
|
24
25
|
name: "list",
|
|
25
26
|
description: "List collections"
|
|
26
27
|
},
|
|
28
|
+
capabilities: { minVersion: 58 },
|
|
27
29
|
args: {
|
|
28
30
|
...outputFlags,
|
|
29
31
|
...profileFlag,
|
|
@@ -41,7 +43,7 @@ var list_default = defineMetabaseCommand({
|
|
|
41
43
|
"mb collection list --filter archived --json"
|
|
42
44
|
],
|
|
43
45
|
async run({ args, ctx, getClient }) {
|
|
44
|
-
const filter =
|
|
46
|
+
const filter = parseEnumFlag(args.filter, CollectionListFilter, "filter");
|
|
45
47
|
const client = await getClient();
|
|
46
48
|
const items = await client.requestParsed(CollectionApiList, "/api/collection", { query: COLLECTION_LIST_QUERY[filter] });
|
|
47
49
|
renderList(wrapList(items), collectionView, ctx);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { Transform, TransformCompact, transformView } from "./transform-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { Transform, TransformCompact, transformView } from "./transform-GTW3G-01.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/transform/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List transforms"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 59 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { Measure, MeasureCompact, measureView } from "./measure-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { Measure, MeasureCompact, measureView } from "./measure-ClESGxIb.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/measure/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List measures"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 59 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { listEnvelopeSchema, outputFlags, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import "./yaml-YTQiYJ9s.mjs";
|
|
7
|
+
import { loadVisibleSkills } from "./skills-CiN1OQ8W.mjs";
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
|
|
10
|
+
//#region src/commands/skills/list.ts
|
|
11
|
+
const SkillSummary = z.object({
|
|
12
|
+
name: z.string(),
|
|
13
|
+
description: z.string()
|
|
14
|
+
});
|
|
15
|
+
const SkillListEnvelope = listEnvelopeSchema(SkillSummary);
|
|
16
|
+
const skillSummaryView = {
|
|
17
|
+
compactPick: SkillSummary,
|
|
18
|
+
tableColumns: [{
|
|
19
|
+
key: "name",
|
|
20
|
+
label: "Name"
|
|
21
|
+
}, {
|
|
22
|
+
key: "description",
|
|
23
|
+
label: "Description"
|
|
24
|
+
}]
|
|
25
|
+
};
|
|
26
|
+
var list_default = defineMetabaseCommand({
|
|
27
|
+
meta: {
|
|
28
|
+
name: "list",
|
|
29
|
+
description: "List skills bundled with this CLI. Hidden discovery stubs are omitted from the default listing."
|
|
30
|
+
},
|
|
31
|
+
args: { ...outputFlags },
|
|
32
|
+
outputSchema: SkillListEnvelope,
|
|
33
|
+
examples: ["mb skills list", "mb skills list --json"],
|
|
34
|
+
run({ ctx }) {
|
|
35
|
+
const items = loadVisibleSkills().map((s) => ({
|
|
36
|
+
name: s.name,
|
|
37
|
+
description: s.description
|
|
38
|
+
}));
|
|
39
|
+
renderList(wrapList(items), skillSummaryView, ctx);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
//#endregion
|
|
44
|
+
export { list_default as default };
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { listEnvelopeSchema, outputFlags, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { ParsedVersionSchema, ProbedUser, ProfileLastFailure, TokenFeatures, defineMetabaseCommand, listProfileRecords, originOnly, readProfile, writeProbeFailure, writeProbeResult } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import { verifyAndProbe } from "./verify-D5YtTqqp.mjs";
|
|
5
|
+
import { warn } from "./capabilities-7e9MgquN.mjs";
|
|
6
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
7
|
+
import { renderTimestamp, renderUserRole, renderVersionTag } from "./render-OQn3iRsI.mjs";
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
|
|
10
|
+
//#region src/commands/auth/list.ts
|
|
11
|
+
const AuthProfileStatus = z.enum([
|
|
12
|
+
"ok",
|
|
13
|
+
"auth-failed",
|
|
14
|
+
"network-error",
|
|
15
|
+
"server-error",
|
|
16
|
+
"not-probed"
|
|
17
|
+
]);
|
|
18
|
+
const AuthProfile = z.object({
|
|
19
|
+
profile: z.string(),
|
|
20
|
+
url: z.string(),
|
|
21
|
+
authenticated: z.boolean(),
|
|
22
|
+
status: AuthProfileStatus,
|
|
23
|
+
user: ProbedUser.nullable(),
|
|
24
|
+
version: ParsedVersionSchema.nullable(),
|
|
25
|
+
tokenFeatures: TokenFeatures.nullable(),
|
|
26
|
+
lastProbedAt: z.iso.datetime().nullable(),
|
|
27
|
+
lastFailure: ProfileLastFailure.nullable()
|
|
28
|
+
});
|
|
29
|
+
const AuthProfileListEnvelope = listEnvelopeSchema(AuthProfile);
|
|
30
|
+
const STATUS_LABEL = Object.freeze({
|
|
31
|
+
ok: "OK",
|
|
32
|
+
"auth-failed": "Auth failed",
|
|
33
|
+
"network-error": "Network error",
|
|
34
|
+
"server-error": "Server error",
|
|
35
|
+
"not-probed": "Not probed"
|
|
36
|
+
});
|
|
37
|
+
const authProfileView = {
|
|
38
|
+
compactPick: AuthProfile,
|
|
39
|
+
tableColumns: [
|
|
40
|
+
{
|
|
41
|
+
key: "profile",
|
|
42
|
+
label: "Profile"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
key: "url",
|
|
46
|
+
label: "URL"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
key: "status",
|
|
50
|
+
label: "Status",
|
|
51
|
+
format: (value) => renderStatus(value)
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
key: "user",
|
|
55
|
+
label: "Role",
|
|
56
|
+
format: (value) => renderUserRole(value)
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
key: "version",
|
|
60
|
+
label: "Version",
|
|
61
|
+
format: (value) => renderVersionTag(value)
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
key: "lastProbedAt",
|
|
65
|
+
label: "Last probed",
|
|
66
|
+
format: (value) => renderTimestamp(value)
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
};
|
|
70
|
+
function renderStatus(value) {
|
|
71
|
+
const parsed = AuthProfileStatus.safeParse(value);
|
|
72
|
+
return parsed.success ? STATUS_LABEL[parsed.data] : "—";
|
|
73
|
+
}
|
|
74
|
+
var list_default = defineMetabaseCommand({
|
|
75
|
+
meta: {
|
|
76
|
+
name: "list",
|
|
77
|
+
description: "List configured authentication profiles"
|
|
78
|
+
},
|
|
79
|
+
capabilities: { minVersion: 58 },
|
|
80
|
+
args: { ...outputFlags },
|
|
81
|
+
outputSchema: AuthProfileListEnvelope,
|
|
82
|
+
examples: ["mb auth list", "mb auth list --json"],
|
|
83
|
+
async run({ ctx }) {
|
|
84
|
+
const records = await listProfileRecords();
|
|
85
|
+
const verifications = await Promise.all(records.map(verifyOne));
|
|
86
|
+
const items = [];
|
|
87
|
+
for (const entry of verifications) items.push(await persistAndProject(entry));
|
|
88
|
+
renderList(wrapList(items), authProfileView, ctx);
|
|
89
|
+
for (const item of items) if (item.status === "auth-failed" && item.lastFailure !== null) warn(`${item.profile}: ${item.lastFailure.reason}. Run \`mb auth login --profile ${item.profile}\` to update the token.`);
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
async function verifyOne(record) {
|
|
93
|
+
const profile = await readProfile(record.name);
|
|
94
|
+
if (profile === null) return {
|
|
95
|
+
record,
|
|
96
|
+
url: record.url,
|
|
97
|
+
verification: { kind: "no-creds" }
|
|
98
|
+
};
|
|
99
|
+
const result = await verifyAndProbe(profile.url, profile.apiKey);
|
|
100
|
+
if (result.ok) return {
|
|
101
|
+
record,
|
|
102
|
+
url: profile.url,
|
|
103
|
+
verification: {
|
|
104
|
+
kind: "success",
|
|
105
|
+
user: result.user,
|
|
106
|
+
server: result.server
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
return {
|
|
110
|
+
record,
|
|
111
|
+
url: profile.url,
|
|
112
|
+
verification: {
|
|
113
|
+
kind: "failure",
|
|
114
|
+
failure: result
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
async function persistAndProject(entry) {
|
|
119
|
+
const { record, url, verification } = entry;
|
|
120
|
+
if (verification.kind === "no-creds") return toJson(record, "not-probed");
|
|
121
|
+
if (verification.kind === "success") {
|
|
122
|
+
const probe = await writeProbeResult(record.name, {
|
|
123
|
+
user: verification.user,
|
|
124
|
+
server: verification.server
|
|
125
|
+
});
|
|
126
|
+
if (probe === null) return toJson(record, "not-probed");
|
|
127
|
+
return projectSuccess(record.name, url, probe);
|
|
128
|
+
}
|
|
129
|
+
const failure = await writeProbeFailure(record.name, {
|
|
130
|
+
kind: verification.failure.kind,
|
|
131
|
+
reason: verification.failure.message
|
|
132
|
+
});
|
|
133
|
+
if (failure === null) return toJson(record, "not-probed");
|
|
134
|
+
return toJson({
|
|
135
|
+
...record,
|
|
136
|
+
lastFailure: failure
|
|
137
|
+
}, statusFromVerification(verification.failure));
|
|
138
|
+
}
|
|
139
|
+
function projectSuccess(name, url, probe) {
|
|
140
|
+
return {
|
|
141
|
+
profile: name,
|
|
142
|
+
url: originOnly(url),
|
|
143
|
+
authenticated: true,
|
|
144
|
+
status: "ok",
|
|
145
|
+
user: probe.user,
|
|
146
|
+
version: probe.version,
|
|
147
|
+
tokenFeatures: probe.tokenFeatures,
|
|
148
|
+
lastProbedAt: probe.at,
|
|
149
|
+
lastFailure: null
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
function toJson(record, status) {
|
|
153
|
+
const probe = record.lastProbe;
|
|
154
|
+
return {
|
|
155
|
+
profile: record.name,
|
|
156
|
+
url: originOnly(record.url),
|
|
157
|
+
authenticated: status === "ok",
|
|
158
|
+
status,
|
|
159
|
+
user: probe?.user ?? null,
|
|
160
|
+
version: probe?.version ?? null,
|
|
161
|
+
tokenFeatures: probe?.tokenFeatures ?? null,
|
|
162
|
+
lastProbedAt: probe?.at ?? null,
|
|
163
|
+
lastFailure: record.lastFailure
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
function statusFromVerification(failure) {
|
|
167
|
+
if (failure.kind === "auth") return "auth-failed";
|
|
168
|
+
if (failure.kind === "network") return "network-error";
|
|
169
|
+
return "server-error";
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
//#endregion
|
|
173
|
+
export { list_default as default };
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { parseEnumFlag } from "./parse-enum-CrEWOhuY.mjs";
|
|
7
|
+
import { Dashboard, DashboardCompact, dashboardView } from "./dashboard-FY5UzJ_Z.mjs";
|
|
7
8
|
import { z } from "zod";
|
|
8
9
|
|
|
9
10
|
//#region src/commands/dashboard/list.ts
|
|
@@ -19,6 +20,7 @@ var list_default = defineMetabaseCommand({
|
|
|
19
20
|
name: "list",
|
|
20
21
|
description: "List dashboards"
|
|
21
22
|
},
|
|
23
|
+
capabilities: { minVersion: 58 },
|
|
22
24
|
args: {
|
|
23
25
|
...outputFlags,
|
|
24
26
|
...profileFlag,
|
|
@@ -36,7 +38,7 @@ var list_default = defineMetabaseCommand({
|
|
|
36
38
|
"mb dashboard list --filter archived --json"
|
|
37
39
|
],
|
|
38
40
|
async run({ args, ctx, getClient }) {
|
|
39
|
-
const filter =
|
|
41
|
+
const filter = parseEnumFlag(args.filter, DashboardListFilter, "filter");
|
|
40
42
|
const client = await getClient();
|
|
41
43
|
const items = await client.requestParsed(DashboardApiList, "/api/dashboard", { query: { f: filter } });
|
|
42
44
|
renderList(wrapList(items), dashboardView, ctx);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import "./field-
|
|
7
|
-
import "./table-
|
|
8
|
-
import { Database, DatabaseCompact, databaseView } from "./database-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand, parseEnum } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import "./field-yomXlkvl.mjs";
|
|
7
|
+
import "./table-C7a5V6Zn.mjs";
|
|
8
|
+
import { Database, DatabaseCompact, databaseView } from "./database-lH-B3G1I.mjs";
|
|
9
9
|
import { z } from "zod";
|
|
10
10
|
|
|
11
11
|
//#region src/commands/db/list.ts
|
|
@@ -20,6 +20,7 @@ var list_default = defineMetabaseCommand({
|
|
|
20
20
|
name: "list",
|
|
21
21
|
description: "List databases"
|
|
22
22
|
},
|
|
23
|
+
capabilities: { minVersion: 58 },
|
|
23
24
|
args: {
|
|
24
25
|
...outputFlags,
|
|
25
26
|
...profileFlag,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { Segment, SegmentCompact, segmentView } from "./segment-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { Segment, SegmentCompact, segmentView } from "./segment-Be2v4ilr.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/segment/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List segments"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 58 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
import {
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { TransformJob, TransformJobCompact, transformJobView } from "./transform-job-
|
|
1
|
+
import "./command-augment-BH9qgQ5u.mjs";
|
|
2
|
+
import { connectionFlags, listEnvelopeSchema, outputFlags, profileFlag, wrapList } from "./error-C9S6PN3-.mjs";
|
|
3
|
+
import { defineMetabaseCommand } from "./runtime-Dmv5VtUK.mjs";
|
|
4
|
+
import "./capabilities-7e9MgquN.mjs";
|
|
5
|
+
import { renderList } from "./render-CfznwleY.mjs";
|
|
6
|
+
import { TransformJob, TransformJobCompact, transformJobView } from "./transform-job-DeTDPMxt.mjs";
|
|
7
7
|
import { z } from "zod";
|
|
8
8
|
|
|
9
9
|
//#region src/commands/transform-job/list.ts
|
|
@@ -14,6 +14,7 @@ var list_default = defineMetabaseCommand({
|
|
|
14
14
|
name: "list",
|
|
15
15
|
description: "List transform jobs"
|
|
16
16
|
},
|
|
17
|
+
capabilities: { minVersion: 59 },
|
|
17
18
|
args: {
|
|
18
19
|
...outputFlags,
|
|
19
20
|
...profileFlag,
|