@metabase/cli 0.1.0-alpha.workspaces-commands.a3b3a5f → 0.1.0-alpha.workspaces-commands.68d980f

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/README.md +381 -2
  2. package/dist/{add-collection-Ck8F8rfI.mjs → add-collection-Cu4B6KXG.mjs} +3 -3
  3. package/dist/{add-collection-CTwAZIZX.mjs → add-collection-DGV1rqqR.mjs} +6 -6
  4. package/dist/{api-key-BfgphcIw.mjs → api-key-6_Q5e_K0.mjs} +1 -1
  5. package/dist/archive-Bpf0QvqP.mjs +39 -0
  6. package/dist/archive-C2ziJ31w.mjs +44 -0
  7. package/dist/{archive-Bh8wMjxT.mjs → archive-CYgtaA_I.mjs} +3 -3
  8. package/dist/archive-DHjG2vSi.mjs +44 -0
  9. package/dist/auth-BaMPV-un.mjs +19 -0
  10. package/dist/{body-CZVc1-lx.mjs → body-BAdJj5HJ.mjs} +1 -1
  11. package/dist/{branches-BxkxOnfI.mjs → branches-DkwkHvgF.mjs} +4 -4
  12. package/dist/cancel-UgDP_AM-.mjs +56 -0
  13. package/dist/{cancel-task-DgbDOIBj.mjs → cancel-task-DCV5l_rj.mjs} +4 -4
  14. package/dist/card-DI78jgjG.mjs +20 -0
  15. package/dist/{cards-Ci1cFff8.mjs → cards-BXYJMHYy.mjs} +4 -4
  16. package/dist/cli.mjs +23 -20
  17. package/dist/collection-BcMoZLX0.mjs +19 -0
  18. package/dist/{create-Da762ktf.mjs → create-BLwyolnm.mjs} +4 -4
  19. package/dist/{create-Bvk8II_k.mjs → create-BUcIJ1nk.mjs} +4 -4
  20. package/dist/{create-C9pjkU_P.mjs → create-D4_iBwTY.mjs} +3 -3
  21. package/dist/create-D9CEUvL3.mjs +40 -0
  22. package/dist/create-D9zWWm9b.mjs +44 -0
  23. package/dist/{create-DWrrFHC-.mjs → create-DCAvWcNL.mjs} +4 -4
  24. package/dist/{create-DKkn1Lyh.mjs → create-DCEuLMff.mjs} +4 -4
  25. package/dist/create-RneHGLFF.mjs +40 -0
  26. package/dist/{create-branch-tOClZPwN.mjs → create-branch-BfSrjGld.mjs} +4 -4
  27. package/dist/{create-nh6nXg71.mjs → create-n7yxR6s2.mjs} +3 -3
  28. package/dist/{create-dwPoKGVA.mjs → create-yiHTy9qd.mjs} +4 -4
  29. package/dist/{credentials-BNtGhrLA.mjs → credentials-BnX6KoeQ.mjs} +6 -6
  30. package/dist/{current-task-DqAxfixg.mjs → current-task-C60CWYop.mjs} +4 -4
  31. package/dist/dashboard-B8zj0bZS.mjs +20 -0
  32. package/dist/{database-COJdZf-Q.mjs → database-BkSdTiyB.mjs} +3 -3
  33. package/dist/database-GbK7OAPX.mjs +51 -0
  34. package/dist/db-DG-1rI_O.mjs +22 -0
  35. package/dist/{delete-Dys9TjAC.mjs → delete-D39mHiYu.mjs} +4 -4
  36. package/dist/{delete-CPt8lsAb.mjs → delete-nxO9ND-q.mjs} +4 -4
  37. package/dist/{delete-table-CpstZKiT.mjs → delete-table-Dk1C3x9k.mjs} +4 -4
  38. package/dist/{deprovision-BUwyKwUk.mjs → deprovision-CCokm00M.mjs} +8 -8
  39. package/dist/{dirty-DFICkq0n.mjs → dirty-Da9uKlQp.mjs} +4 -4
  40. package/dist/{docker-DLdy5ail.mjs → docker-En_jqSVW.mjs} +2 -2
  41. package/dist/{eid-CdVllbSH.mjs → eid-BQx_tnuC.mjs} +1 -1
  42. package/dist/{export-B64M106G.mjs → export-PQ84ihYr.mjs} +5 -5
  43. package/dist/field-BakUM_Le.mjs +142 -0
  44. package/dist/field-CE-2zFaL.mjs +18 -0
  45. package/dist/fields-BhN1M2TD.mjs +38 -0
  46. package/dist/{get-BCezh5OQ.mjs → get-BifK1SP6.mjs} +3 -3
  47. package/dist/{get-CJXfc3kx.mjs → get-CAYdsSX4.mjs} +4 -4
  48. package/dist/{get-COG6MmwR.mjs → get-CScnOuJ-.mjs} +4 -4
  49. package/dist/{get-CZG4xlat.mjs → get-CaRX225l.mjs} +2 -2
  50. package/dist/get-CbwJfVx1.mjs +36 -0
  51. package/dist/get-CtsZA_BB.mjs +36 -0
  52. package/dist/{get-D3HUYbpw.mjs → get-D64v79fP.mjs} +4 -4
  53. package/dist/get-D6dlsNBD.mjs +49 -0
  54. package/dist/{get-CDijTiom.mjs → get-DM2UkeKJ.mjs} +4 -4
  55. package/dist/{get-BxUYdg4n.mjs → get-DQ0lm-Dx.mjs} +4 -4
  56. package/dist/{get-DJC-mrw8.mjs → get-Dopinaxx.mjs} +7 -7
  57. package/dist/get-DpFyct1X.mjs +36 -0
  58. package/dist/get-run-DpjKXCww.mjs +36 -0
  59. package/dist/{has-remote-changes-CYYZTZBY.mjs → has-remote-changes-BgbCIv30.mjs} +4 -4
  60. package/dist/{import-DF2of9wH.mjs → import-BRC4SYRj.mjs} +5 -5
  61. package/dist/{is-dirty-Un88eXXt.mjs → is-dirty-BduCa9nf.mjs} +2 -2
  62. package/dist/is-dirty-hMK61S1s.mjs +10 -0
  63. package/dist/{items-N_CzelCi.mjs → items-NE7Z-vuw.mjs} +4 -50
  64. package/dist/{license-sxjee9oP.mjs → license-MWU4vLvD.mjs} +3 -3
  65. package/dist/{list-C09pCgov.mjs → list--EFsidRC.mjs} +5 -5
  66. package/dist/{list-HYHuLdci.mjs → list-BB9IsaT4.mjs} +2 -2
  67. package/dist/{list-20u4leMj.mjs → list-BMFbKnG1.mjs} +3 -3
  68. package/dist/list-BPC7KqBQ.mjs +32 -0
  69. package/dist/list-B_XtS5VX.mjs +40 -0
  70. package/dist/{list-CGwBTGMW.mjs → list-Bgt_qxRd.mjs} +28 -7
  71. package/dist/list-C-ucaNmG.mjs +32 -0
  72. package/dist/{list-CrKfUerD.mjs → list-C1wNHDPl.mjs} +2 -2
  73. package/dist/{list-CkzHOMtE.mjs → list-CR1Dkcbk.mjs} +3 -3
  74. package/dist/{list-BuNa0fZI.mjs → list-D6KnlTOp.mjs} +3 -3
  75. package/dist/{list-C_yKP2-c.mjs → list-DeNHJECx.mjs} +3 -3
  76. package/dist/{list-BSiAMxrA.mjs → list-_4_qW2nQ.mjs} +2 -2
  77. package/dist/{list-CuGEV_Qx.mjs → list-jHGjjZdC.mjs} +3 -3
  78. package/dist/{login-DD9SPbq9.mjs → login-B30jvHfe.mjs} +2 -2
  79. package/dist/{logout-aC-vTsuI.mjs → logout-bWublBcN.mjs} +2 -2
  80. package/dist/{logs-D4WcMOIr.mjs → logs-DsiDIT90.mjs} +5 -5
  81. package/dist/measure-B1GKcZxO.mjs +67 -0
  82. package/dist/measure-Bc9tjbVl.mjs +19 -0
  83. package/dist/metadata-DCFEJsKY.mjs +37 -0
  84. package/dist/{get-Ck2PTv-d.mjs → metadata-DCVxSKX7.mjs} +13 -11
  85. package/dist/{package-CkA529J7.mjs → package-Be4_p9f8.mjs} +1 -1
  86. package/dist/paginate-CnTxzOh2.mjs +49 -0
  87. package/dist/{parse-id-CcKdsH0O.mjs → parse-id-DKRTKFB2.mjs} +1 -1
  88. package/dist/parse-schemas-CtMwPgZe.mjs +12 -0
  89. package/dist/{poll-BIIpvP2F.mjs → poll-BXEPgd4X.mjs} +1 -1
  90. package/dist/{poll-task-CdsDGOTW.mjs → poll-task-UMS6aAza.mjs} +2 -2
  91. package/dist/{provision-scSEhq2K.mjs → provision-BDtZZK84.mjs} +12 -16
  92. package/dist/{ps-BgfTwWJa.mjs → ps-DcKt1oHS.mjs} +2 -2
  93. package/dist/{ps-CsZyR9iu.mjs → ps-iON5iNUT.mjs} +5 -5
  94. package/dist/{query-zzJ7K7nz.mjs → query-7qZ7dWnE.mjs} +3 -3
  95. package/dist/{query-Cv9WxWrI.mjs → query-DtD0dc_V.mjs} +3 -3
  96. package/dist/{remove-D9Tc4Dx8.mjs → remove-D194SUD-.mjs} +5 -5
  97. package/dist/{remove-BaTxkjUl.mjs → remove-UWzVKtfF.mjs} +2 -2
  98. package/dist/{remove-collection-Bt70a7hs.mjs → remove-collection-BUwKxMsH.mjs} +6 -6
  99. package/dist/rescan-values-zYxt5WcO.mjs +43 -0
  100. package/dist/revision-message-flag-BJiGjb5m.mjs +11 -0
  101. package/dist/{run-DIX5vK-5.mjs → run-DwYkAZHU.mjs} +10 -10
  102. package/dist/runs-CeHd9FOO.mjs +54 -0
  103. package/dist/{runtime-DFoza8Mg.mjs → runtime-Dlk-yyFO.mjs} +1 -1
  104. package/dist/schema-tables-LZG9R38V.mjs +45 -0
  105. package/dist/schemas-ZC7JrOKM.mjs +47 -0
  106. package/dist/{search-Y_x03m2m.mjs → search-StdHjR5q.mjs} +3 -3
  107. package/dist/segment-BVM0WSM7.mjs +19 -0
  108. package/dist/segment-CQ5w3M_W.mjs +70 -0
  109. package/dist/{set-D_0O8rTO.mjs → set-CgDS1Feo.mjs} +5 -5
  110. package/dist/{set-CE0vjKd5.mjs → set-Ey8zuk9j.mjs} +2 -2
  111. package/dist/{setting-Bz8l6Eak.mjs → setting-D4mR5WMp.mjs} +3 -3
  112. package/dist/{setup-DHEvJzOO.mjs → setup-DKRzEM6a.mjs} +3 -3
  113. package/dist/snippet-BO-gCn0H.mjs +19 -0
  114. package/dist/snippet-DRTklDg3.mjs +64 -0
  115. package/dist/{start-DoanhLP0.mjs → start-15kcQYwC.mjs} +7 -7
  116. package/dist/{stash-Cpec6IQq.mjs → stash-CQkpgkAr.mjs} +5 -5
  117. package/dist/{status-BdQk2otc.mjs → status-BmYxYGZE.mjs} +5 -5
  118. package/dist/{status-Ci368pIi.mjs → status-D0LTLSrI.mjs} +2 -2
  119. package/dist/{status-D80Gk_aQ.mjs → status-Dg0qSJtP.mjs} +2 -2
  120. package/dist/{stop-ChzTIRoM.mjs → stop-B9M_LliY.mjs} +6 -6
  121. package/dist/summary-CSGteNEX.mjs +41 -0
  122. package/dist/sync-_BtDG63a.mjs +28 -0
  123. package/dist/sync-schema-BjGQtnol.mjs +43 -0
  124. package/dist/table-C0N9hfqm.mjs +19 -0
  125. package/dist/{table-DimNUJtH.mjs → table-DhB2_Dxd.mjs} +21 -4
  126. package/dist/{transform-DRDHuulD.mjs → transform-92odFxg-.mjs} +45 -3
  127. package/dist/transform-BycLORsG.mjs +24 -0
  128. package/dist/transform-job-B_SvpPfl.mjs +19 -0
  129. package/dist/{translate-CL3KFzKP.mjs → translate-DRajJsf0.mjs} +3 -3
  130. package/dist/{tree-Hqmw922o.mjs → tree-eunCOx9U.mjs} +2 -2
  131. package/dist/update-6BC1K7uY.mjs +51 -0
  132. package/dist/{update-CqxAOcCk.mjs → update-B0bpqs4y.mjs} +4 -4
  133. package/dist/update-BJk9pfiv.mjs +52 -0
  134. package/dist/{update--8dVz3Kc.mjs → update-Bhfzszoc.mjs} +5 -5
  135. package/dist/update-BprFaiqH.mjs +51 -0
  136. package/dist/{update-BsbAZYit.mjs → update-C-i8drfb.mjs} +5 -5
  137. package/dist/{update-CecK4BPY.mjs → update-CSsRBrV5.mjs} +12 -16
  138. package/dist/{update-CBonxnMk.mjs → update-CkrxPRXK.mjs} +5 -5
  139. package/dist/update-D14Sl_IP.mjs +51 -0
  140. package/dist/update-D1mHRo8M.mjs +52 -0
  141. package/dist/{update-dashcard-CrkkLo0u.mjs → update-dashcard-I13krLAG.mjs} +5 -5
  142. package/dist/{url-DvLmyClQ.mjs → url-CRyx47hL.mjs} +5 -5
  143. package/dist/values-BhYRwEvd.mjs +36 -0
  144. package/dist/{wait-DRQ4bYeS.mjs → wait-Dx7gfA8G.mjs} +2 -2
  145. package/dist/{wait-CYN0Q85L.mjs → wait-dqZ8MsDQ.mjs} +5 -5
  146. package/dist/{wait-flags-DhQSVQfa.mjs → wait-flags-Czo_9Q__.mjs} +2 -2
  147. package/dist/{workspace-D1rBvWkD.mjs → workspace-D93cDL8-.mjs} +15 -5
  148. package/dist/workspace-eQ2gxKYO.mjs +24 -0
  149. package/package.json +1 -1
  150. package/dist/auth-cjFae1zW.mjs +0 -19
  151. package/dist/card-y9UYZfLR.mjs +0 -20
  152. package/dist/collection-CcC7wUma.mjs +0 -19
  153. package/dist/dashboard-BlPgitFE.mjs +0 -20
  154. package/dist/database-C5LkxQ5G.mjs +0 -33
  155. package/dist/db-DakWTs11.mjs +0 -17
  156. package/dist/field-Bye6f5p9.mjs +0 -13
  157. package/dist/field-C1ai7Y05.mjs +0 -76
  158. package/dist/is-dirty-UxGvM54J.mjs +0 -10
  159. package/dist/sync-BR86Eo1a.mjs +0 -28
  160. package/dist/table-CQr9uggH.mjs +0 -16
  161. package/dist/transform-D4gUfCiT.mjs +0 -21
  162. package/dist/transform-job-DDNg556V.mjs +0 -19
  163. package/dist/workspace-CidyQImS.mjs +0 -24
  164. /package/dist/{dashboard-BJXi1tGr.mjs → dashboard-C7MhcBfX.mjs} +0 -0
  165. /package/dist/{delete-runtime-Dx4ONQaO.mjs → delete-runtime-DCc3Hie4.mjs} +0 -0
  166. /package/dist/{key-CS6durfH.mjs → key-CjpAYsPz.mjs} +0 -0
  167. /package/dist/{manifest-C7lnUosz.mjs → manifest-CdAV6-YB.mjs} +0 -0
  168. /package/dist/{setting-DEHSnsEV.mjs → setting-DIXJ2haa.mjs} +0 -0
  169. /package/dist/{transform-job-BqYZMjf5.mjs → transform-job-DgApCViL.mjs} +0 -0
  170. /package/dist/{workspace-credentials-CC_99x9r.mjs → workspace-credentials-D_ivv5vy.mjs} +0 -0
@@ -8,9 +8,9 @@ var setting_default = defineCommand({
8
8
  alias: "settings"
9
9
  },
10
10
  subCommands: {
11
- list: () => import("./list-CuGEV_Qx.mjs").then((m) => m.default),
12
- get: () => import("./get-CJXfc3kx.mjs").then((m) => m.default),
13
- set: () => import("./set-D_0O8rTO.mjs").then((m) => m.default)
11
+ list: () => import("./list-jHGjjZdC.mjs").then((m) => m.default),
12
+ get: () => import("./get-CAYdsSX4.mjs").then((m) => m.default),
13
+ set: () => import("./set-CgDS1Feo.mjs").then((m) => m.default)
14
14
  }
15
15
  });
16
16
 
@@ -1,10 +1,10 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
5
  import "./input-DMcm_A5s.mjs";
6
- import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-DFoza8Mg.mjs";
7
- import { readBody } from "./body-CZVc1-lx.mjs";
6
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
7
+ import { readBody } from "./body-BAdJj5HJ.mjs";
8
8
  import { bodyInputFlags } from "./body-flags-BK7J6Daz.mjs";
9
9
  import { z } from "zod";
10
10
 
@@ -0,0 +1,19 @@
1
+ import { defineCommand } from "citty";
2
+
3
+ //#region src/commands/snippet/index.ts
4
+ var snippet_default = defineCommand({
5
+ meta: {
6
+ name: "snippet",
7
+ description: "Inspect Metabase native query snippets"
8
+ },
9
+ subCommands: {
10
+ list: () => import("./list-B_XtS5VX.mjs").then((mod) => mod.default),
11
+ get: () => import("./get-DpFyct1X.mjs").then((mod) => mod.default),
12
+ create: () => import("./create-D9zWWm9b.mjs").then((mod) => mod.default),
13
+ update: () => import("./update-BJk9pfiv.mjs").then((mod) => mod.default),
14
+ archive: () => import("./archive-Bpf0QvqP.mjs").then((mod) => mod.default)
15
+ }
16
+ });
17
+
18
+ //#endregion
19
+ export { snippet_default as default };
@@ -0,0 +1,64 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/domain/snippet.ts
4
+ const Snippet = z.object({
5
+ id: z.number().int(),
6
+ name: z.string(),
7
+ description: z.string().nullable(),
8
+ content: z.string(),
9
+ archived: z.boolean(),
10
+ collection_id: z.number().int().nullable(),
11
+ creator_id: z.number().int(),
12
+ entity_id: z.string().nullable(),
13
+ template_tags: z.record(z.string(), z.unknown()).nullable(),
14
+ created_at: z.string(),
15
+ updated_at: z.string()
16
+ }).loose();
17
+ const SnippetCompact = Snippet.pick({
18
+ id: true,
19
+ name: true,
20
+ description: true,
21
+ archived: true,
22
+ collection_id: true
23
+ }).strip();
24
+ const snippetView = {
25
+ compactPick: SnippetCompact,
26
+ tableColumns: [
27
+ {
28
+ key: "id",
29
+ label: "ID"
30
+ },
31
+ {
32
+ key: "name",
33
+ label: "Name"
34
+ },
35
+ {
36
+ key: "description",
37
+ label: "Description"
38
+ },
39
+ {
40
+ key: "collection_id",
41
+ label: "Collection"
42
+ },
43
+ {
44
+ key: "archived",
45
+ label: "Archived"
46
+ }
47
+ ]
48
+ };
49
+ const SnippetCreateInput = z.object({
50
+ name: z.string().min(1),
51
+ content: z.string(),
52
+ description: z.string().nullable().optional(),
53
+ collection_id: z.number().int().positive().nullable().optional()
54
+ }).loose();
55
+ const SnippetUpdateInput = z.object({
56
+ name: z.string().min(1).optional(),
57
+ content: z.string().optional(),
58
+ description: z.string().nullable().optional(),
59
+ archived: z.boolean().optional(),
60
+ collection_id: z.number().int().positive().nullable().optional()
61
+ }).loose();
62
+
63
+ //#endregion
64
+ export { Snippet, SnippetCompact, SnippetCreateInput, SnippetUpdateInput, snippetView };
@@ -1,13 +1,13 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem, warn } from "./render-BYWlZPEH.mjs";
4
4
  import { ConfigError, errorMessage } from "./errors-C6w1eZ1F.mjs";
5
- import { connectionFlags, defineMetabaseCommand, localUrl, outputFlags, parseInteger, parseOptionalInteger, profileFlag, resolveLicenseToken } from "./runtime-DFoza8Mg.mjs";
6
- import { parseId } from "./parse-id-CcKdsH0O.mjs";
7
- import { pollUntil } from "./poll-BIIpvP2F.mjs";
8
- import { Workspace } from "./workspace-D1rBvWkD.mjs";
9
- import { CONTAINER_REPO_DIR, checkDockerReady, containerLifecycleStatus, containerNameFor, pullImage, removeContainer, runProcess, runWorkspaceContainer, scrubContainerConfig, waitForConfigConsumed } from "./docker-DLdy5ail.mjs";
10
- import { REPO_SYNC_MODES, RepoSyncMode, buildCredentialsJson, generateWorkspaceCredentials, injectCredentialsIntoConfig, injectRepoSettingsIntoConfig } from "./workspace-credentials-CC_99x9r.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, localUrl, outputFlags, parseInteger, parseOptionalInteger, profileFlag, resolveLicenseToken } from "./runtime-Dlk-yyFO.mjs";
6
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
7
+ import { pollUntil } from "./poll-BXEPgd4X.mjs";
8
+ import { Workspace } from "./workspace-D93cDL8-.mjs";
9
+ import { CONTAINER_REPO_DIR, checkDockerReady, containerLifecycleStatus, containerNameFor, pullImage, removeContainer, runProcess, runWorkspaceContainer, scrubContainerConfig, waitForConfigConsumed } from "./docker-En_jqSVW.mjs";
10
+ import { REPO_SYNC_MODES, RepoSyncMode, buildCredentialsJson, generateWorkspaceCredentials, injectCredentialsIntoConfig, injectRepoSettingsIntoConfig } from "./workspace-credentials-D_ivv5vy.mjs";
11
11
  import { z } from "zod";
12
12
  import { stat } from "node:fs/promises";
13
13
  import { resolve } from "node:path";
@@ -1,11 +1,11 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import { ConfigError } from "./errors-C6w1eZ1F.mjs";
5
- import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-DFoza8Mg.mjs";
6
- import { parseId } from "./parse-id-CcKdsH0O.mjs";
7
- import { REMOTE_SYNC_PATHS, SyncTask, pollFlags, pollSyncTask, throwIfFailedTask } from "./poll-task-CdsDGOTW.mjs";
8
- import "./poll-BIIpvP2F.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
6
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
7
+ import { REMOTE_SYNC_PATHS, SyncTask, pollFlags, pollSyncTask, throwIfFailedTask } from "./poll-task-UMS6aAza.mjs";
8
+ import "./poll-BXEPgd4X.mjs";
9
9
  import { z } from "zod";
10
10
 
11
11
  //#region src/commands/sync/stash.ts
@@ -1,11 +1,11 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
- import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-DFoza8Mg.mjs";
6
- import { REMOTE_SYNC_PATHS, SyncTask, fetchCurrentTask, fetchOptionalParsed } from "./poll-task-CdsDGOTW.mjs";
7
- import "./poll-BIIpvP2F.mjs";
8
- import { IsDirtyResult } from "./is-dirty-Un88eXXt.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
6
+ import { REMOTE_SYNC_PATHS, SyncTask, fetchCurrentTask, fetchOptionalParsed } from "./poll-task-UMS6aAza.mjs";
7
+ import "./poll-BXEPgd4X.mjs";
8
+ import { IsDirtyResult } from "./is-dirty-BduCa9nf.mjs";
9
9
  import { z } from "zod";
10
10
 
11
11
  //#region src/commands/sync/status.ts
@@ -1,8 +1,8 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
- import { account, credentials, defineMetabaseCommand, outputFlags } from "./runtime-DFoza8Mg.mjs";
5
+ import { account, credentials, defineMetabaseCommand, outputFlags } from "./runtime-Dlk-yyFO.mjs";
6
6
  import { z } from "zod";
7
7
 
8
8
  //#region src/commands/license/status.ts
@@ -1,8 +1,8 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
- import { account, credentials, defineMetabaseCommand, originOnly, outputFlags, profileFlag, resolveProfileName } from "./runtime-DFoza8Mg.mjs";
5
+ import { account, credentials, defineMetabaseCommand, originOnly, outputFlags, profileFlag, resolveProfileName } from "./runtime-Dlk-yyFO.mjs";
6
6
  import { z } from "zod";
7
7
 
8
8
  //#region src/commands/auth/status.ts
@@ -1,12 +1,12 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
- import { defineMetabaseCommand, outputFlags } from "./runtime-DFoza8Mg.mjs";
6
- import { parseId } from "./parse-id-CcKdsH0O.mjs";
7
- import "./poll-BIIpvP2F.mjs";
8
- import { checkDockerReady, containerLifecycleStatus, containerNameFor, stopContainer } from "./docker-DLdy5ail.mjs";
9
- import { LocalWorkspaceState } from "./ps-BgfTwWJa.mjs";
5
+ import { defineMetabaseCommand, outputFlags } from "./runtime-Dlk-yyFO.mjs";
6
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
7
+ import "./poll-BXEPgd4X.mjs";
8
+ import { checkDockerReady, containerLifecycleStatus, containerNameFor, stopContainer } from "./docker-En_jqSVW.mjs";
9
+ import { LocalWorkspaceState } from "./ps-DcKt1oHS.mjs";
10
10
  import { z } from "zod";
11
11
 
12
12
  //#region src/commands/workspace/stop.ts
@@ -0,0 +1,41 @@
1
+ import "./package-Be4_p9f8.mjs";
2
+ import "./command-augment-D9pI9Vbh.mjs";
3
+ import { renderItem } from "./render-BYWlZPEH.mjs";
4
+ import "./errors-C6w1eZ1F.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
6
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
7
+ import { FieldSummary, FieldSummaryRaw, fieldSummaryView } from "./field-BakUM_Le.mjs";
8
+
9
+ //#region src/commands/field/summary.ts
10
+ var summary_default = defineMetabaseCommand({
11
+ meta: {
12
+ name: "summary",
13
+ description: "Get the row count and distinct count for a field"
14
+ },
15
+ args: {
16
+ ...outputFlags,
17
+ ...profileFlag,
18
+ ...connectionFlags,
19
+ id: {
20
+ type: "positional",
21
+ description: "Field id",
22
+ required: true
23
+ }
24
+ },
25
+ outputSchema: FieldSummary,
26
+ examples: ["metabase field summary 100", "metabase field summary 100 --json"],
27
+ async run({ args, ctx, getClient }) {
28
+ const id = parseId(args.id);
29
+ const client = await getClient();
30
+ const [[, count], [, distincts]] = await client.requestParsed(FieldSummaryRaw, `/api/field/${id}/summary`);
31
+ const summary = {
32
+ field_id: id,
33
+ count,
34
+ distincts
35
+ };
36
+ renderItem(summary, fieldSummaryView, ctx);
37
+ }
38
+ });
39
+
40
+ //#endregion
41
+ export { summary_default as default };
@@ -0,0 +1,28 @@
1
+ import { defineCommand } from "citty";
2
+
3
+ //#region src/commands/sync/index.ts
4
+ var sync_default = defineCommand({
5
+ meta: {
6
+ name: "sync",
7
+ description: "Remote-sync operations (import, export, status, branches)"
8
+ },
9
+ subCommands: {
10
+ status: () => import("./status-BmYxYGZE.mjs").then((mod) => mod.default),
11
+ "is-dirty": () => import("./is-dirty-hMK61S1s.mjs").then((mod) => mod.default),
12
+ "has-remote-changes": () => import("./has-remote-changes-BgbCIv30.mjs").then((mod) => mod.default),
13
+ dirty: () => import("./dirty-Da9uKlQp.mjs").then((mod) => mod.default),
14
+ "current-task": () => import("./current-task-C60CWYop.mjs").then((mod) => mod.default),
15
+ "cancel-task": () => import("./cancel-task-DCV5l_rj.mjs").then((mod) => mod.default),
16
+ wait: () => import("./wait-dqZ8MsDQ.mjs").then((mod) => mod.default),
17
+ import: () => import("./import-BRC4SYRj.mjs").then((mod) => mod.default),
18
+ export: () => import("./export-PQ84ihYr.mjs").then((mod) => mod.default),
19
+ stash: () => import("./stash-CQkpgkAr.mjs").then((mod) => mod.default),
20
+ branches: () => import("./branches-DkwkHvgF.mjs").then((mod) => mod.default),
21
+ "create-branch": () => import("./create-branch-BfSrjGld.mjs").then((mod) => mod.default),
22
+ "add-collection": () => import("./add-collection-DGV1rqqR.mjs").then((mod) => mod.default),
23
+ "remove-collection": () => import("./remove-collection-BUwKxMsH.mjs").then((mod) => mod.default)
24
+ }
25
+ });
26
+
27
+ //#endregion
28
+ export { sync_default as default };
@@ -0,0 +1,43 @@
1
+ import "./package-Be4_p9f8.mjs";
2
+ import "./command-augment-D9pI9Vbh.mjs";
3
+ import { renderItem } from "./render-BYWlZPEH.mjs";
4
+ import "./errors-C6w1eZ1F.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
6
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
7
+ import "./field-BakUM_Le.mjs";
8
+ import "./table-DhB2_Dxd.mjs";
9
+ import { DatabaseSyncResult, databaseSyncResultView } from "./database-GbK7OAPX.mjs";
10
+ import { z } from "zod";
11
+
12
+ //#region src/commands/db/sync-schema.ts
13
+ const SyncSchemaApiResponse = z.object({ status: z.literal("ok") });
14
+ var sync_schema_default = defineMetabaseCommand({
15
+ meta: {
16
+ name: "sync-schema",
17
+ description: "Trigger a manual schema sync for a database"
18
+ },
19
+ args: {
20
+ ...outputFlags,
21
+ ...profileFlag,
22
+ ...connectionFlags,
23
+ id: {
24
+ type: "positional",
25
+ description: "Database id",
26
+ required: true
27
+ }
28
+ },
29
+ outputSchema: DatabaseSyncResult,
30
+ examples: ["metabase db sync-schema 1", "metabase db sync-schema 1 --json"],
31
+ async run({ args, ctx, getClient }) {
32
+ const id = parseId(args.id);
33
+ const client = await getClient();
34
+ const response = await client.requestParsed(SyncSchemaApiResponse, `/api/database/${id}/sync_schema`, { method: "POST" });
35
+ renderItem({
36
+ id,
37
+ status: response.status
38
+ }, databaseSyncResultView, ctx);
39
+ }
40
+ });
41
+
42
+ //#endregion
43
+ export { sync_schema_default as default };
@@ -0,0 +1,19 @@
1
+ import { defineCommand } from "citty";
2
+
3
+ //#region src/commands/table/index.ts
4
+ var table_default = defineCommand({
5
+ meta: {
6
+ name: "table",
7
+ description: "Inspect Metabase tables"
8
+ },
9
+ subCommands: {
10
+ list: () => import("./list--EFsidRC.mjs").then((m) => m.default),
11
+ get: () => import("./get-Dopinaxx.mjs").then((m) => m.default),
12
+ metadata: () => import("./metadata-DCFEJsKY.mjs").then((m) => m.default),
13
+ fields: () => import("./fields-BhN1M2TD.mjs").then((m) => m.default),
14
+ update: () => import("./update-D1mHRo8M.mjs").then((m) => m.default)
15
+ }
16
+ });
17
+
18
+ //#endregion
19
+ export { table_default as default };
@@ -1,4 +1,4 @@
1
- import { Field } from "./field-C1ai7Y05.mjs";
1
+ import { Field } from "./field-BakUM_Le.mjs";
2
2
  import { z } from "zod";
3
3
 
4
4
  //#region src/domain/table.ts
@@ -20,6 +20,12 @@ const TableVisibilityType = z.enum([
20
20
  "technical",
21
21
  "cruft"
22
22
  ]);
23
+ const TableFieldOrder = z.enum([
24
+ "alphabetical",
25
+ "custom",
26
+ "database",
27
+ "smart"
28
+ ]);
23
29
  const Table = z.object({
24
30
  id: z.number().int(),
25
31
  name: z.string(),
@@ -28,10 +34,11 @@ const Table = z.object({
28
34
  db_id: z.number().int(),
29
35
  schema: z.string().nullable(),
30
36
  entity_type: TableEntityType.nullable(),
31
- visibility_type: TableVisibilityType.nullable(),
32
- active: z.boolean(),
37
+ visibility_type: TableVisibilityType.nullable().optional(),
38
+ active: z.boolean().optional(),
33
39
  fields: z.array(Field).optional()
34
40
  }).loose();
41
+ const TableQueryMetadata = Table.extend({ fields: z.array(Field) });
35
42
  const TableCompact = Table.pick({
36
43
  id: true,
37
44
  name: true,
@@ -70,6 +77,16 @@ const tableView = {
70
77
  }
71
78
  ]
72
79
  };
80
+ const TableUpdateInput = z.object({
81
+ display_name: z.string().min(1).optional(),
82
+ entity_type: TableEntityType.nullable().optional(),
83
+ visibility_type: TableVisibilityType.nullable().optional(),
84
+ description: z.string().nullable().optional(),
85
+ caveats: z.string().nullable().optional(),
86
+ points_of_interest: z.string().nullable().optional(),
87
+ show_in_getting_started: z.boolean().optional(),
88
+ field_order: TableFieldOrder.optional()
89
+ }).loose();
73
90
 
74
91
  //#endregion
75
- export { Table, TableCompact, tableView };
92
+ export { Table, TableCompact, TableQueryMetadata, TableUpdateInput, tableView };
@@ -38,6 +38,7 @@ const TransformTableIncrementalTarget = z.object({
38
38
  name: z.string()
39
39
  }).loose();
40
40
  const TransformTarget = z.discriminatedUnion("type", [TransformTableTarget, TransformTableIncrementalTarget]);
41
+ const TransformTargetCompact = z.discriminatedUnion("type", [TransformTableTarget.strip(), TransformTableIncrementalTarget.strip()]);
41
42
  const TransformLastRun = z.object({
42
43
  id: z.number().int(),
43
44
  transform_id: z.number().int(),
@@ -59,6 +60,48 @@ const TransformRun = z.object({
59
60
  message: z.string().nullable(),
60
61
  user_id: z.number().int().nullable()
61
62
  }).loose();
63
+ const TransformRunCompact = TransformRun.pick({
64
+ id: true,
65
+ transform_id: true,
66
+ status: true,
67
+ run_method: true,
68
+ start_time: true,
69
+ end_time: true,
70
+ message: true
71
+ }).strip();
72
+ const transformRunView = {
73
+ compactPick: TransformRunCompact,
74
+ tableColumns: [
75
+ {
76
+ key: "id",
77
+ label: "Run ID"
78
+ },
79
+ {
80
+ key: "transform_id",
81
+ label: "Transform"
82
+ },
83
+ {
84
+ key: "status",
85
+ label: "Status"
86
+ },
87
+ {
88
+ key: "run_method",
89
+ label: "Method"
90
+ },
91
+ {
92
+ key: "start_time",
93
+ label: "Started"
94
+ },
95
+ {
96
+ key: "end_time",
97
+ label: "Ended"
98
+ },
99
+ {
100
+ key: "message",
101
+ label: "Message"
102
+ }
103
+ ]
104
+ };
62
105
  const Transform = z.object({
63
106
  id: z.number().int(),
64
107
  name: z.string(),
@@ -83,9 +126,8 @@ const TransformCompact = Transform.pick({
83
126
  name: true,
84
127
  description: true,
85
128
  source_type: true,
86
- target: true,
87
129
  target_db_id: true
88
- }).strip();
130
+ }).strip().extend({ target: TransformTargetCompact });
89
131
  const transformView = {
90
132
  compactPick: TransformCompact,
91
133
  tableColumns: [
@@ -146,4 +188,4 @@ const TransformUpdateInput = z.object({
146
188
  }).loose();
147
189
 
148
190
  //#endregion
149
- export { Transform, TransformCompact, TransformCreateInput, TransformRun, TransformUpdateInput, transformView };
191
+ export { Transform, TransformCompact, TransformCreateInput, TransformRun, TransformRunCompact, TransformUpdateInput, transformRunView, transformView };
@@ -0,0 +1,24 @@
1
+ import { defineCommand } from "citty";
2
+
3
+ //#region src/commands/transform/index.ts
4
+ var transform_default = defineCommand({
5
+ meta: {
6
+ name: "transform",
7
+ description: "Manage Metabase transforms"
8
+ },
9
+ subCommands: {
10
+ list: () => import("./list-D6KnlTOp.mjs").then((mod) => mod.default),
11
+ get: () => import("./get-DQ0lm-Dx.mjs").then((mod) => mod.default),
12
+ create: () => import("./create-BLwyolnm.mjs").then((mod) => mod.default),
13
+ update: () => import("./update-CkrxPRXK.mjs").then((mod) => mod.default),
14
+ delete: () => import("./delete-D39mHiYu.mjs").then((mod) => mod.default),
15
+ "delete-table": () => import("./delete-table-Dk1C3x9k.mjs").then((mod) => mod.default),
16
+ run: () => import("./run-DwYkAZHU.mjs").then((mod) => mod.default),
17
+ cancel: () => import("./cancel-UgDP_AM-.mjs").then((mod) => mod.default),
18
+ "get-run": () => import("./get-run-DpjKXCww.mjs").then((mod) => mod.default),
19
+ runs: () => import("./runs-CeHd9FOO.mjs").then((mod) => mod.default)
20
+ }
21
+ });
22
+
23
+ //#endregion
24
+ export { transform_default as default };
@@ -0,0 +1,19 @@
1
+ import { defineCommand } from "citty";
2
+
3
+ //#region src/commands/transform-job/index.ts
4
+ var transform_job_default = defineCommand({
5
+ meta: {
6
+ name: "transform-job",
7
+ description: "Manage Metabase transform jobs"
8
+ },
9
+ subCommands: {
10
+ list: () => import("./list-CR1Dkcbk.mjs").then((mod) => mod.default),
11
+ get: () => import("./get-CScnOuJ-.mjs").then((mod) => mod.default),
12
+ create: () => import("./create-yiHTy9qd.mjs").then((mod) => mod.default),
13
+ update: () => import("./update-C-i8drfb.mjs").then((mod) => mod.default),
14
+ delete: () => import("./delete-nxO9ND-q.mjs").then((mod) => mod.default)
15
+ }
16
+ });
17
+
18
+ //#endregion
19
+ export { transform_job_default as default };
@@ -1,10 +1,10 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import { ConfigError } from "./errors-C6w1eZ1F.mjs";
5
5
  import "./input-DMcm_A5s.mjs";
6
- import { connectionFlags, defineMetabaseCommand, outputFlags, parseCsv, profileFlag } from "./runtime-DFoza8Mg.mjs";
7
- import { readBody } from "./body-CZVc1-lx.mjs";
6
+ import { connectionFlags, defineMetabaseCommand, outputFlags, parseCsv, profileFlag } from "./runtime-Dlk-yyFO.mjs";
7
+ import { readBody } from "./body-BAdJj5HJ.mjs";
8
8
  import { bodyInputFlags } from "./body-flags-BK7J6Daz.mjs";
9
9
  import { requireBothOrNeither } from "./flag-pair-Dz-mbq0z.mjs";
10
10
  import { z } from "zod";
@@ -1,8 +1,8 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { writeJson } from "./render-BYWlZPEH.mjs";
4
4
  import { ConfigError } from "./errors-C6w1eZ1F.mjs";
5
- import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-DFoza8Mg.mjs";
5
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
6
6
  import { CollectionTreeNode } from "./collection-BsiGRKXh.mjs";
7
7
  import { z } from "zod";
8
8
 
@@ -0,0 +1,51 @@
1
+ import "./package-Be4_p9f8.mjs";
2
+ import "./command-augment-D9pI9Vbh.mjs";
3
+ import { renderItem } from "./render-BYWlZPEH.mjs";
4
+ import "./errors-C6w1eZ1F.mjs";
5
+ import "./input-DMcm_A5s.mjs";
6
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
7
+ import { readBody } from "./body-BAdJj5HJ.mjs";
8
+ import { bodyInputFlags } from "./body-flags-BK7J6Daz.mjs";
9
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
10
+ import { Field, FieldUpdateInput, fieldView } from "./field-BakUM_Le.mjs";
11
+
12
+ //#region src/commands/field/update.ts
13
+ var update_default = defineMetabaseCommand({
14
+ meta: {
15
+ name: "update",
16
+ description: "Update a field (description, semantic_type, FK target, visibility, etc.)"
17
+ },
18
+ args: {
19
+ ...outputFlags,
20
+ ...profileFlag,
21
+ ...connectionFlags,
22
+ ...bodyInputFlags,
23
+ id: {
24
+ type: "positional",
25
+ description: "Field id",
26
+ required: true
27
+ }
28
+ },
29
+ outputSchema: Field,
30
+ examples: [
31
+ "metabase field update 100 --body '{\"description\":\"customer email\"}'",
32
+ "metabase field update 100 --file patch.json",
33
+ "cat patch.json | metabase field update 100"
34
+ ],
35
+ async run({ args, ctx, getClient }) {
36
+ const id = parseId(args.id);
37
+ const body = await readBody({
38
+ flag: args.body,
39
+ file: args.file
40
+ }, FieldUpdateInput);
41
+ const client = await getClient();
42
+ const updated = await client.requestParsed(Field, `/api/field/${id}`, {
43
+ method: "PUT",
44
+ body
45
+ });
46
+ renderItem(updated, fieldView, ctx);
47
+ }
48
+ });
49
+
50
+ //#endregion
51
+ export { update_default as default };
@@ -1,12 +1,12 @@
1
- import "./package-CkA529J7.mjs";
1
+ import "./package-Be4_p9f8.mjs";
2
2
  import "./command-augment-D9pI9Vbh.mjs";
3
3
  import { renderItem } from "./render-BYWlZPEH.mjs";
4
4
  import "./errors-C6w1eZ1F.mjs";
5
5
  import "./input-DMcm_A5s.mjs";
6
- import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-DFoza8Mg.mjs";
7
- import { readBody } from "./body-CZVc1-lx.mjs";
6
+ import { connectionFlags, defineMetabaseCommand, outputFlags, profileFlag } from "./runtime-Dlk-yyFO.mjs";
7
+ import { readBody } from "./body-BAdJj5HJ.mjs";
8
8
  import { bodyInputFlags } from "./body-flags-BK7J6Daz.mjs";
9
- import { parseId } from "./parse-id-CcKdsH0O.mjs";
9
+ import { parseId } from "./parse-id-DKRTKFB2.mjs";
10
10
  import { Card, CardUpdateInput, cardView } from "./card-BOGKT258.mjs";
11
11
  import { preflightInternalMbql5Query, skipValidateFlag } from "./validate-query-D0aAFTUs.mjs";
12
12