@metabase/cli 0.3.0-alpha.extract-api-client.e9b2dd5 → 0.3.1-alpha.fix-transform-test-ee-path.a3ca6dd

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 (269) hide show
  1. package/dist/{add-collection-B3Ty8SzB.mjs → add-collection-BEg-1pt8.mjs} +6 -9
  2. package/dist/{alert-DT-ee7yf.mjs → alert-CBwtJ3lE.mjs} +7 -7
  3. package/dist/{alerts-Bf2RH_p_.mjs → alerts-Bn9ZhFYK.mjs} +7 -7
  4. package/dist/{append-DFzQRPMd.mjs → append-F7kfyk0p.mjs} +6 -5
  5. package/dist/{archive-ByvA49Kz.mjs → archive-2VqBgcyE.mjs} +5 -5
  6. package/dist/{archive-4tmm946K.mjs → archive-3_KVbxIk.mjs} +4 -4
  7. package/dist/{archive-Cd29QC0c.mjs → archive-7tZyaUWv.mjs} +4 -4
  8. package/dist/{archive-Dr9Xnx_Z.mjs → archive-Bonv-Hcf.mjs} +6 -6
  9. package/dist/{archive-C7w49Grr.mjs → archive-BzEvapLz.mjs} +6 -6
  10. package/dist/{archive-CwAdlv63.mjs → archive-CAwDiQWt2.mjs} +6 -6
  11. package/dist/{archive-lQqs13Uz.mjs → archive-CE-RKcle.mjs} +6 -6
  12. package/dist/{archive-B6eXiyER.mjs → archive-Da3-hnRM.mjs} +4 -4
  13. package/dist/{archive-gid9Y09v.mjs → archive-IBHOtOMk.mjs} +4 -4
  14. package/dist/{archive-BxNPHxOY.mjs → archive-TBo05bZZ.mjs} +6 -6
  15. package/dist/{archive-ChORH5JH.mjs → archive-k79AXZhh.mjs} +4 -4
  16. package/dist/{auth-Dltxua89.mjs → auth-CLZuUSzL.mjs} +5 -5
  17. package/dist/{body-Cur4NJt9.mjs → body-Q8iNnt-X.mjs} +3 -3
  18. package/dist/{branches-DchlyU0i.mjs → branches-CjMIMKse.mjs} +4 -7
  19. package/dist/{cancel-BMQa5R1Z.mjs → cancel-H4vYr5Jv.mjs} +4 -4
  20. package/dist/{cancel-task-C5CU1pxU.mjs → cancel-task-p09LCbgs.mjs} +5 -8
  21. package/dist/{card-zyUkr2nS.mjs → card-CEkp1mcI.mjs} +1 -1
  22. package/dist/card-DlVb10D3.mjs +24 -0
  23. package/dist/{card-DZxRmver.mjs → card-voh1k4hl.mjs} +14 -11
  24. package/dist/{cards-SccWvRQD.mjs → cards-DDG6RObF.mjs} +7 -7
  25. package/dist/cli.mjs +567 -68
  26. package/dist/client-toDDqakD.mjs +4093 -0
  27. package/dist/{collection-CfulNRBG.mjs → collection-BxdPxD38.mjs} +1 -1
  28. package/dist/{collection-CGoVLvcD.mjs → collection-DYM0p3Xl.mjs} +1 -1
  29. package/dist/{collection-namespace-GwydWBF3.mjs → collection-namespace-DDI9-HgU.mjs} +2 -2
  30. package/dist/collection-p_sficxo.mjs +20 -0
  31. package/dist/content-translation-BrHOrmj9.mjs +5 -0
  32. package/dist/content-translation-DcTEH_d7.mjs +12 -0
  33. package/dist/{create-CAWytBE5.mjs → create-BLxdMJgQ.mjs} +5 -5
  34. package/dist/{create-BNQ_DytP.mjs → create-BPN1cX7b.mjs} +4 -4
  35. package/dist/{create-CHQx7jq4.mjs → create-BjCpsMQM.mjs} +5 -5
  36. package/dist/{create-CD008jdE.mjs → create-BovrhBQn.mjs} +12 -8
  37. package/dist/{create-DV-Ln5Mo.mjs → create-CVCPD-1F.mjs} +4 -4
  38. package/dist/{create-DJmXXQoq.mjs → create-CVPGOx7u2.mjs} +8 -8
  39. package/dist/{create-Beh-2uoN.mjs → create-Chs5c8vx.mjs} +6 -6
  40. package/dist/{create-BOLwWt8Q.mjs → create-D04fl6ec.mjs} +5 -5
  41. package/dist/{create-C79vErX0.mjs → create-D5mN20oE.mjs} +7 -7
  42. package/dist/{create-DF4QtgDL.mjs → create-D88Im3X22.mjs} +6 -6
  43. package/dist/{create-tQbnuz-I.mjs → create-DQfOV9Sm.mjs} +6 -6
  44. package/dist/{create-CCh_LyW9.mjs → create-DWU4j22P.mjs} +4 -4
  45. package/dist/create-DjP2yUyn.mjs +34 -0
  46. package/dist/{create-CAQV2g6V.mjs → create-Dk6Zm3ZH.mjs} +7 -7
  47. package/dist/{create-zeveFdnd.mjs → create-DkmeJGMy.mjs} +5 -8
  48. package/dist/{create-i14Wv3Tj.mjs → create-TQr3briq.mjs} +4 -4
  49. package/dist/{create-branch-CYo6jZth.mjs → create-branch-Bs6BlkgQ.mjs} +5 -9
  50. package/dist/{csv-B2Jgb1GM.mjs → csv-BsN6FmY-.mjs} +6 -5
  51. package/dist/{current-task-MpBFGttd.mjs → current-task-cCmLLVcv.mjs} +5 -8
  52. package/dist/{dashboard-BHJBoaG7.mjs → dashboard-CpIEKEgu.mjs} +10 -10
  53. package/dist/{dashboard-BCpSq_G-.mjs → dashboard-D0hwTC-f.mjs} +12 -2
  54. package/dist/{dashboard-CsIFFpzK.mjs → dashboard-DgK81azj.mjs} +1 -1
  55. package/dist/{database-B19qlLKZ.mjs → database-C3E9PZSx.mjs} +1 -1
  56. package/dist/{database-C8G6ZKG0.mjs → database-JtHTqSpq.mjs} +1 -1
  57. package/dist/{db-DsfojyeH.mjs → db-BbvcmfWM.mjs} +7 -7
  58. package/dist/{delete-B8e01xAG.mjs → delete-C4_rcfNu.mjs} +5 -5
  59. package/dist/delete-CLdDYdYG.mjs +44 -0
  60. package/dist/{delete-DFmX7jTp.mjs → delete-D13SLwhr.mjs} +5 -5
  61. package/dist/{delete-Ob06PPie.mjs → delete-D3-jMLu5.mjs} +5 -5
  62. package/dist/{delete-BApOjQvl.mjs → delete-DLirF5iq.mjs} +5 -5
  63. package/dist/{delete-Ck0q4Dzp.mjs → delete-JBjvxdIU.mjs} +5 -5
  64. package/dist/{delete-runtime-D74s6vhu.mjs → delete-runtime-BKEzJn22.mjs} +1 -2
  65. package/dist/{delete-table-DuyhGrvA.mjs → delete-table-Gwk7JL5c.mjs} +5 -5
  66. package/dist/{dependencies-Bj3QrGIm.mjs → dependencies-B7vl9Ovb.mjs} +7 -7
  67. package/dist/{dirty-DNYoM6Bp.mjs → dirty-CIZeASXG.mjs} +6 -9
  68. package/dist/{document-Cd2mmqCp.mjs → document-BHpLJbKU.mjs} +5 -0
  69. package/dist/{document-D6OybtP2.mjs → document-CA0Q6lqu.mjs} +1 -1
  70. package/dist/document-ceJW4VuL.mjs +19 -0
  71. package/dist/download-B-krJch0.mjs +25 -0
  72. package/dist/{eid-WTZmDdsr.mjs → eid-C0D92gZW.mjs} +4 -5
  73. package/dist/{events-Bn7jh5lP.mjs → events-CuLeaey6.mjs} +5 -5
  74. package/dist/{export-BjfoZRDJ.mjs → export-DeuLpt3x.mjs} +7 -10
  75. package/dist/{field-Zau6Hc6X.mjs → field-B8Hndt4p.mjs} +5 -5
  76. package/dist/{field-Cr2DPUG9.mjs → field-CcN4oZy6.mjs} +16 -1
  77. package/dist/{field-BPsNa-TO.mjs → field-fDtIrY6D.mjs} +1 -1
  78. package/dist/{fields-CBBa-Prp.mjs → fields-CAchmFh4.mjs} +7 -7
  79. package/dist/{get-CDJFVvhj.mjs → get-BH3Tgfgf.mjs} +4 -4
  80. package/dist/{get-CDMGbgrh.mjs → get-BJOxfbDP.mjs} +4 -4
  81. package/dist/{get-B_xdF1kq.mjs → get-BOjTqIMx.mjs} +6 -6
  82. package/dist/{get-D_h-G9bn.mjs → get-C1BPEbyl.mjs} +6 -6
  83. package/dist/{get-Dmj9Ygz1.mjs → get-C8dcHjd6.mjs} +6 -6
  84. package/dist/{get-DkWO0EI0.mjs → get-CArTALOt.mjs} +6 -6
  85. package/dist/get-CMCAgpxn.mjs +93 -0
  86. package/dist/{get-CnbUCzDM.mjs → get-CjDHpz6A.mjs} +4 -4
  87. package/dist/{get-ByBOq30r.mjs → get-ClNkea9I.mjs} +6 -6
  88. package/dist/{get-DRvsATp-.mjs → get-CvAMxfPD.mjs} +6 -6
  89. package/dist/{get-B7sMgsFs.mjs → get-D8qaSSEH.mjs} +4 -4
  90. package/dist/{get-00lyLv6R.mjs → get-DCvnNk3f.mjs} +6 -6
  91. package/dist/{get-DY03Azx9.mjs → get-DEwfm3Yl.mjs} +5 -8
  92. package/dist/{get-C2-Q3iQ5.mjs → get-DXWrGwWH.mjs} +4 -4
  93. package/dist/get-DbXTkB4u.mjs +32 -0
  94. package/dist/{get-DYO1kywc.mjs → get-DvF9oooq.mjs} +5 -5
  95. package/dist/{get-DdsoHaKH.mjs → get-d055CJ1T.mjs} +4 -4
  96. package/dist/{get-Bz99dAxK.mjs → get-kBTeBtLe.mjs} +6 -6
  97. package/dist/{get-DmpB6J9g.mjs → get-ohue3YrV2.mjs} +6 -6
  98. package/dist/{get-run-Cnux9ln0.mjs → get-run-X6zhp0dW.mjs} +6 -6
  99. package/dist/{get-Dn9ZiSZr.mjs → get-wIZrb7oN.mjs} +6 -6
  100. package/dist/git-sync-BkTmSgdD.mjs +28 -0
  101. package/dist/{git-sync-BDnxPrqU.mjs → git-sync-BwBRmEhE.mjs} +18 -1
  102. package/dist/{git-sync-DxD_ng48.mjs → git-sync-TjX1r_wF.mjs} +1 -1
  103. package/dist/{group-DBM87IgC.mjs → group-YQQ5GIcP.mjs} +2 -2
  104. package/dist/{has-remote-changes-C684Redh.mjs → has-remote-changes-zCtdEGs-.mjs} +5 -8
  105. package/dist/{import-Rmmttboo.mjs → import-DkAy_Xi8.mjs} +7 -10
  106. package/dist/{input-DH9i67x_.mjs → input-DEvkIjGr.mjs} +1 -1
  107. package/dist/{is-dirty-DYeJYhBz.mjs → is-dirty-Dfk2Xf-W.mjs} +3 -6
  108. package/dist/{items-CQlPXBXE.mjs → items-CiSBrc9d.mjs} +7 -7
  109. package/dist/{key-BEhqIzIQ.mjs → key-PYetuQ13.mjs} +1 -1
  110. package/dist/library-BPIzb3K_.mjs +81 -0
  111. package/dist/{library-Bsm5KsFF.mjs → library-FBj2Je-M.mjs} +5 -5
  112. package/dist/{library-DfYAT2Ep.mjs → library-PGCfm0UA.mjs} +1 -1
  113. package/dist/list-9CJczyF5.mjs +60 -0
  114. package/dist/{list-DE9FM957.mjs → list-B6tDzQsv.mjs} +4 -4
  115. package/dist/{list-BtkWNtvY.mjs → list-BDJkJc8s.mjs} +7 -7
  116. package/dist/{list-BzVTHOoH.mjs → list-Br0g0oDR.mjs} +6 -6
  117. package/dist/{list-CNUiF8Z7.mjs → list-C9-2J0Nu.mjs} +6 -6
  118. package/dist/{list-B4hJuMhA.mjs → list-CGjdrAhT.mjs} +7 -7
  119. package/dist/{list-BtmsNOEn.mjs → list-CHOJQ1uR.mjs} +4 -4
  120. package/dist/{list-CKK-s3Ty.mjs → list-CK4S_aDK.mjs} +4 -4
  121. package/dist/{list-C5Zs8nrb.mjs → list-CYONHM9n.mjs} +6 -6
  122. package/dist/{list-CQwOgIlj.mjs → list-CrwbvMEG.mjs} +6 -6
  123. package/dist/{list-BOET6zhP.mjs → list-D6WZmnG_.mjs} +4 -4
  124. package/dist/{list-DMKDsBRd.mjs → list-DD_tjCmP.mjs} +7 -7
  125. package/dist/{list-DF2rvoO1.mjs → list-Dqv3nOEe.mjs} +14 -13
  126. package/dist/{list-CQDprvW0.mjs → list-Hjsg2N8L.mjs} +7 -7
  127. package/dist/{list-CMpoc2TN.mjs → list-M4Twal0d.mjs} +5 -5
  128. package/dist/{list-BpFp9Wre.mjs → list-UbzhJFFn.mjs} +4 -4
  129. package/dist/list-W5y4079U.mjs +35 -0
  130. package/dist/{list-BP3MPq-M.mjs → list-f5HIVoLN.mjs} +4 -4
  131. package/dist/{list-B8nAGwP4.mjs → list-uCAP4vmQ.mjs} +6 -6
  132. package/dist/{login-CGHeSjlP.mjs → login-CIzUMkf3.mjs} +15 -12
  133. package/dist/{logout-DAxOlbv4.mjs → logout-CRm_AaoF.mjs} +3 -4
  134. package/dist/{measure-BsYv0p26.mjs → measure-DPXeIN18.mjs} +6 -6
  135. package/dist/{notification-Fcq1fIPw.mjs → notification-DVrLkjFT.mjs} +1 -1
  136. package/dist/{parameter-DUKR8NXo.mjs → parameter-Celg0wZa.mjs} +1 -1
  137. package/dist/{parameter-values-CJTdqd8c.mjs → parameter-values-rOHoy3k0.mjs} +5 -6
  138. package/dist/{parse-enum-D0Jfm_Bz.mjs → parse-enum-Dc0dMZ3P.mjs} +1 -1
  139. package/dist/{parse-id-C_jmKFaa.mjs → parse-id-CYZAIB58.mjs} +1 -1
  140. package/dist/{parse-ref-ibKVB0J4.mjs → parse-ref-DTDld_LJ.mjs} +1 -1
  141. package/dist/{path-B5gHvrYL.mjs → path-D9_unWc1.mjs} +5 -5
  142. package/dist/{poll-75SvT7Zv.mjs → poll-CZeXepUQ.mjs} +2 -2
  143. package/dist/{preflight-YpPQo-sa.mjs → preflight-BIxRV-bm.mjs} +3 -4
  144. package/dist/{process-DBOOrmET.mjs → process-CTrfxxaC.mjs} +1 -1
  145. package/dist/{publish-DijrxaCW.mjs → publish-N509vd0U.mjs} +9 -9
  146. package/dist/{pulse-BmsDenXm.mjs → pulse-Dz0ocv0l.mjs} +1 -1
  147. package/dist/{pulse-DhG6I9mI.mjs → pulse-x0gFxWfG.mjs} +2 -2
  148. package/dist/{query-Dc__-KJH.mjs → query-JvMjF22L.mjs} +9 -10
  149. package/dist/{query-result-DBDwk8TS.mjs → query-result-E4Q-Gra6.mjs} +1 -1
  150. package/dist/{query-BbqECzmF.mjs → query-yh5Wkfmc.mjs} +11 -18
  151. package/dist/{remove-collection-BOnxYvhj.mjs → remove-collection-B0E0dlZt.mjs} +6 -9
  152. package/dist/{render-CI93iP0I.mjs → render-Tlz6OCMU.mjs} +13 -2
  153. package/dist/{replace-Cq4CxVa-.mjs → replace-BwbYo6-2.mjs} +6 -5
  154. package/dist/{rescan-values-Dr_j416g.mjs → rescan-values-BiMPb5Z5.mjs} +6 -6
  155. package/dist/{run-DdGJ544X.mjs → run-B9aA1aNI.mjs} +26 -14
  156. package/dist/run-D37ntUQo.mjs +50 -0
  157. package/dist/{run-C3DkS6NP.mjs → run-Dbh3nvzF.mjs} +6 -6
  158. package/dist/{runs-CUNWiidL.mjs → runs-BuUzKR-x.mjs} +7 -7
  159. package/dist/{runtime-DiKyBxOw.mjs → runtime-CwhhhwcB.mjs} +946 -246
  160. package/dist/{schema-tables-CV386fnC.mjs → schema-tables-9PvvygPu.mjs} +7 -7
  161. package/dist/{schemas-DM-UqZBQ.mjs → schemas-DqkQI39t.mjs} +5 -5
  162. package/dist/{search-DFBwUc6d.mjs → search-BAXg-EJw.mjs} +2 -1
  163. package/dist/{search-DmGScXs8.mjs → search-BjAwR-oP.mjs} +6 -6
  164. package/dist/{segment-BzUGM2Fr.mjs → segment-1nBcugv8.mjs} +6 -6
  165. package/dist/{selectors-DGDn0Hto.mjs → selectors-DFNdyhPn.mjs} +3 -3
  166. package/dist/{send-CVxxEpDB.mjs → send-D4tYN3aN.mjs} +4 -4
  167. package/dist/{set-DFolTjbd.mjs → set-D_Mh2eVO.mjs} +5 -5
  168. package/dist/{set-active-BD8L1lPX.mjs → set-active-jY5VZsO8.mjs} +5 -5
  169. package/dist/{setting-DyhaeICs.mjs → setting-9ULb5wjN.mjs} +4 -4
  170. package/dist/{setup-BbDQN8fe.mjs → setup-DMaIuuCV.mjs} +4 -4
  171. package/dist/{signal-CMd0EFUa.mjs → signal-k7cm5N6h.mjs} +11 -2
  172. package/dist/skill-list-Bucy7UE2.mjs +76 -0
  173. package/dist/{skills--vK6J-e4.mjs → skills-Dyfqgobg.mjs} +3 -3
  174. package/dist/skills-PjjRtYqi.mjs +351 -0
  175. package/dist/snippet-DNoTIGAs.mjs +19 -0
  176. package/dist/{stash-D0S4JmAz.mjs → stash-C6BEM6_u.mjs} +7 -11
  177. package/dist/{status-BhswxJL1.mjs → status-DiP093Vm.mjs} +11 -9
  178. package/dist/{status-hL1am-HV.mjs → status-wAg5ajzM.mjs} +12 -11
  179. package/dist/stream-McixcoUl.mjs +7 -0
  180. package/dist/{subscription-_d5fB45F.mjs → subscription-CEeI0pSr.mjs} +6 -6
  181. package/dist/{subscriptions-s4TF6Ax3.mjs → subscriptions-B9cMNuIS.mjs} +7 -7
  182. package/dist/{summary-CsPvcUwW.mjs → summary-D0NP2NoT.mjs} +6 -6
  183. package/dist/{sync-schema-DaZ_MV-u.mjs → sync-schema-BgJ6KEqa.mjs} +7 -7
  184. package/dist/{sync-task-BACcrs0i.mjs → sync-task-BXeWuARG.mjs} +1 -1
  185. package/dist/{table-DYoC1kPn.mjs → table-9bTG6zSa.mjs} +5 -5
  186. package/dist/{table-CsIJNPFf.mjs → table-C6h4tIRw.mjs} +1 -1
  187. package/dist/{table-CeeTJgQb.mjs → table-DfuY0N8e.mjs} +51 -4
  188. package/dist/timeline-Ck53UgDh.mjs +21 -0
  189. package/dist/{timeline-event-CNQdCTDg.mjs → timeline-event-POmQ2TD2.mjs} +6 -6
  190. package/dist/transform-BC39AgQF.mjs +28 -0
  191. package/dist/{transform-DoTyyXAu.mjs → transform-CtqB1WYo.mjs} +2 -2
  192. package/dist/{transform-D3QX0jxA.mjs → transform-DiW7bREn.mjs} +68 -5
  193. package/dist/{transform-job-50GZHhKH.mjs → transform-job-AaMZRxAq.mjs} +1 -1
  194. package/dist/{transform-job-DRrK28IH.mjs → transform-job-CCguL6LP.mjs} +41 -4
  195. package/dist/transform-job-D-zUFmZU.mjs +22 -0
  196. package/dist/{transform-tag-_tgwlsdB.mjs → transform-tag-CP7FRU5G.mjs} +5 -5
  197. package/dist/transform-test-BjjCQ2xm.mjs +169 -0
  198. package/dist/transform-test-CKNQS_kC.mjs +16 -0
  199. package/dist/transform-test-gzDcbypy.mjs +25 -0
  200. package/dist/{transforms-oU4zizbO.mjs → transforms-DDSNP4eL.mjs} +7 -7
  201. package/dist/{tree-CH-f3bjP.mjs → tree-CAnMS2dm.mjs} +4 -5
  202. package/dist/{unpublish-BUl9RU5C.mjs → unpublish-DF1XQMWJ.mjs} +4 -7
  203. package/dist/{update-BZPllQoR.mjs → update-BS1yiwOO.mjs} +5 -5
  204. package/dist/{update-CO4m4wH3.mjs → update-Bb89y-0M.mjs} +8 -8
  205. package/dist/{update-C4YJQFDS.mjs → update-BbiVvdm1.mjs} +7 -7
  206. package/dist/{update-BCS5FxKr.mjs → update-BcdLQu7-.mjs} +9 -9
  207. package/dist/{update-cYkvbqK8.mjs → update-BjcWwrPc.mjs} +5 -5
  208. package/dist/{update-tX9mKBN_.mjs → update-BoJJ6Gel.mjs} +9 -9
  209. package/dist/{update-CHNSUHK4.mjs → update-C09GGTjN.mjs} +5 -5
  210. package/dist/{update-BzMDeZiU.mjs → update-C33R41eM.mjs} +7 -7
  211. package/dist/{update-CmDTljK-.mjs → update-C6KQZMDF.mjs} +7 -7
  212. package/dist/{update-bD_Jh5-s.mjs → update-CFqdElFO.mjs} +6 -6
  213. package/dist/{update-CVPAwJaH.mjs → update-CHsXoUJQ.mjs} +6 -6
  214. package/dist/update-CaJO1rWk.mjs +41 -0
  215. package/dist/{update-CvOO8TED.mjs → update-CmXGZPCR.mjs} +7 -7
  216. package/dist/{update-D-NE60AV.mjs → update-DFJSD3_l.mjs} +7 -7
  217. package/dist/{update-Nfi44RrE.mjs → update-DOeBAoul.mjs} +6 -6
  218. package/dist/{update-BiFDBcEH.mjs → update-DiowA7ud.mjs} +5 -5
  219. package/dist/{update-dashcard-C3TuYO_k.mjs → update-dashcard-DSL6Bogg.mjs} +7 -7
  220. package/dist/{upgrade-DXMV4AyP.mjs → upgrade-CBxr91bH.mjs} +6 -8
  221. package/dist/upload-C3z5ZaXA.mjs +24 -0
  222. package/dist/upload-CSHcnonI.mjs +13 -0
  223. package/dist/upload-DTyF-p8X.mjs +39 -0
  224. package/dist/upload-Do2PBSeH.mjs +23 -0
  225. package/dist/{uuid-BJkDWj9p.mjs → uuid-CwEbjDp8.mjs} +3 -4
  226. package/dist/{validate-BWchyW0V.mjs → validate-EAB-1EkK.mjs} +1 -1
  227. package/dist/{validate-query-DaGYSmpQ.mjs → validate-query-CQG86147.mjs} +2 -3
  228. package/dist/{values-Dxf1JEoA.mjs → values-69IZEVXu.mjs} +6 -6
  229. package/dist/{verify-K96rItG5.mjs → verify-Dg5YBI0l.mjs} +3 -18
  230. package/dist/{wait-DoMDH226.mjs → wait-DVXEJXd3.mjs} +7 -10
  231. package/dist/{wait-flags-DWEF9tX4.mjs → wait-flags-CkRgnfww.mjs} +2 -2
  232. package/dist/{window-BkvrP0gB.mjs → window-DSb1tqSe.mjs} +1 -1
  233. package/package.json +1 -1
  234. package/skill-data/core/SKILL.md +31 -14
  235. package/skill-data/dashboard/SKILL.md +2 -2
  236. package/skill-data/data-workflow/references/building-clean-tables.md +6 -2
  237. package/skill-data/data-workflow/references/reusable-definitions.md +11 -3
  238. package/skill-data/document/SKILL.md +4 -1
  239. package/skill-data/git-sync/SKILL.md +5 -0
  240. package/skill-data/mbql/SKILL.md +1 -1
  241. package/skill-data/mbql/references/operators.md +20 -15
  242. package/skill-data/metadata/SKILL.md +1 -1
  243. package/skill-data/metadata/references/semantic-types.md +7 -1
  244. package/skill-data/native-sql/references/template-tags.md +6 -2
  245. package/skill-data/notification/SKILL.md +7 -1
  246. package/skill-data/transform/SKILL.md +75 -3
  247. package/skill-data/transform-test-plan/SKILL.md +171 -0
  248. package/skill-data/transform-test-plan/references/checklist.md +81 -0
  249. package/skill-data/transform-test-plan/references/checks.md +259 -0
  250. package/skill-data/visualization/SKILL.md +11 -3
  251. package/skill-data/visualization/references/settings.md +6 -4
  252. package/skills/metabase-cli/SKILL.md +1 -1
  253. package/dist/card-CHI2bmds.mjs +0 -24
  254. package/dist/client-BqhzKdLM.mjs +0 -2194
  255. package/dist/collection-CY0AB99E.mjs +0 -20
  256. package/dist/document-BbskZPTT.mjs +0 -19
  257. package/dist/get-CvI--9S_.mjs +0 -80
  258. package/dist/git-sync-MQQYRYLg.mjs +0 -28
  259. package/dist/library-ClLgrAXy.mjs +0 -19
  260. package/dist/list-UhpKG6_m.mjs +0 -98
  261. package/dist/network-error-CEb9ymDW.mjs +0 -423
  262. package/dist/predicates-Bkm2IoeX.mjs +0 -170
  263. package/dist/skills-DTCrMcix.mjs +0 -216
  264. package/dist/snippet-DRwKb2x7.mjs +0 -19
  265. package/dist/timeline-xlDbEKWg.mjs +0 -21
  266. package/dist/transform-Bs0EWijQ.mjs +0 -28
  267. package/dist/transform-job-BcLChRup.mjs +0 -22
  268. package/dist/upload-CH632qW6.mjs +0 -46
  269. package/dist/upload-Dey_8rLf.mjs +0 -13
@@ -1,170 +0,0 @@
1
- import { ZodError, core } from "zod";
2
- //#region ../client/src/json-pointer.ts
3
- function escapeJsonPointerSegment(key) {
4
- if (typeof key === "number") return String(key);
5
- return (typeof key === "symbol" ? key.toString() : key).replaceAll("~", "~0").replaceAll("/", "~1");
6
- }
7
- //#endregion
8
- //#region ../client/src/errors.ts
9
- var MetabaseError = class extends Error {
10
- get userMessage() {
11
- return this.message;
12
- }
13
- };
14
- var NetworkError = class extends MetabaseError {
15
- category = "network";
16
- isRetryable = true;
17
- developerDetail;
18
- constructor(message, developerDetail) {
19
- super(message);
20
- this.name = "NetworkError";
21
- this.developerDetail = developerDetail;
22
- }
23
- };
24
- var TimeoutError = class extends MetabaseError {
25
- category = "timeout";
26
- isRetryable = true;
27
- developerDetail;
28
- constructor(message, developerDetail) {
29
- super(message);
30
- this.name = "TimeoutError";
31
- this.developerDetail = developerDetail;
32
- }
33
- };
34
- var ValidationError = class extends MetabaseError {
35
- category = "validation";
36
- isRetryable = false;
37
- developerDetail;
38
- constructor(message, developerDetail) {
39
- super(message);
40
- this.name = "ValidationError";
41
- this.developerDetail = developerDetail;
42
- }
43
- get userMessage() {
44
- const issues = this.developerDetail.zodIssues;
45
- if (issues.length === 0) return this.message;
46
- return `${this.message}\n${formatIssueLines(issues, VALIDATION_ISSUE_FORMAT)}`;
47
- }
48
- };
49
- const VALIDATION_MAX_ISSUES = 10;
50
- const RESPONSE_SHAPE_MAX_ISSUES = 5;
51
- const VALIDATION_ISSUE_FORMAT = {
52
- max: VALIDATION_MAX_ISSUES,
53
- formatIssue: (issue) => `${formatZodIssuePointer(issue.path)}: ${issue.message}`
54
- };
55
- const RESPONSE_SHAPE_ISSUE_FORMAT = {
56
- max: RESPONSE_SHAPE_MAX_ISSUES,
57
- formatIssue: formatZodIssue
58
- };
59
- function formatIssueLines(issues, format) {
60
- const head = issues.slice(0, format.max).map(format.formatIssue);
61
- const overflow = issues.length - format.max;
62
- if (overflow > 0) head.push(`... and ${overflow} more`);
63
- return head.map((line) => ` ${line}`).join("\n");
64
- }
65
- function formatZodIssuePointer(path) {
66
- if (path.length === 0) return "/";
67
- return path.map((key) => `/${escapeJsonPointerSegment(key)}`).join("");
68
- }
69
- const RESPONSE_SHAPE_LEAD_UNKNOWN_VERSION = "Metabase returned unexpected response shape";
70
- var ResponseShapeError = class ResponseShapeError extends MetabaseError {
71
- category = "response-shape";
72
- isRetryable = false;
73
- developerDetail;
74
- constructor(message, developerDetail) {
75
- super(message);
76
- this.name = "ResponseShapeError";
77
- this.developerDetail = developerDetail;
78
- }
79
- static fromZodIssues(developerDetail) {
80
- return new ResponseShapeError(formatResponseShapeMessage(developerDetail.zodIssues, developerDetail.serverTag), developerDetail);
81
- }
82
- };
83
- function formatResponseShapeMessage(issues, serverTag) {
84
- const lead = serverTag === null ? RESPONSE_SHAPE_LEAD_UNKNOWN_VERSION : `On Metabase ${serverTag} the response shape was unexpected`;
85
- if (issues.length === 0) return lead;
86
- return `${lead}:\n${formatIssueLines(issues, RESPONSE_SHAPE_ISSUE_FORMAT)}`;
87
- }
88
- var ConfigError = class extends MetabaseError {
89
- category = "config";
90
- isRetryable = false;
91
- developerDetail = null;
92
- constructor(message) {
93
- super(message);
94
- this.name = "ConfigError";
95
- }
96
- };
97
- var InternalError = class extends MetabaseError {
98
- category = "internal";
99
- isRetryable = false;
100
- developerDetail = null;
101
- constructor(message) {
102
- super(message);
103
- this.name = "InternalError";
104
- }
105
- };
106
- var AbortError = class extends MetabaseError {
107
- category = "abort";
108
- isRetryable = false;
109
- developerDetail = null;
110
- constructor(message = "aborted") {
111
- super(message);
112
- this.name = "AbortError";
113
- }
114
- };
115
- var ChainedRequestError = class extends MetabaseError {
116
- cause;
117
- constructor(message, cause) {
118
- super(message);
119
- this.name = "ChainedRequestError";
120
- this.cause = cause;
121
- }
122
- get category() {
123
- return this.cause.category;
124
- }
125
- get isRetryable() {
126
- return this.cause.isRetryable;
127
- }
128
- get developerDetail() {
129
- return this.cause.developerDetail;
130
- }
131
- };
132
- var UnknownError = class extends MetabaseError {
133
- category = "unknown";
134
- isRetryable = false;
135
- developerDetail;
136
- constructor(input) {
137
- super(input.originalMessage);
138
- this.name = "UnknownError";
139
- this.developerDetail = input;
140
- }
141
- };
142
- function toMetabaseError(error) {
143
- if (error instanceof MetabaseError) return error;
144
- if (error instanceof ZodError) return new ConfigError(error.issues.map(formatZodIssue).join("; "));
145
- if (error instanceof Error) return new UnknownError({
146
- originalMessage: error.message,
147
- stack: error.stack ?? null
148
- });
149
- return new UnknownError({
150
- originalMessage: String(error),
151
- stack: null
152
- });
153
- }
154
- function formatZodIssue(issue) {
155
- const path = core.toDotPath(issue.path);
156
- return path === "" ? issue.message : `${path}: ${issue.message}`;
157
- }
158
- function isFileNotFoundError(value) {
159
- return value instanceof Error && "code" in value && value.code === "ENOENT";
160
- }
161
- function errorMessage(value) {
162
- return value instanceof Error ? value.message : String(value);
163
- }
164
- //#endregion
165
- //#region ../client/src/predicates.ts
166
- function isPlainObject(value) {
167
- return typeof value === "object" && value !== null && !Array.isArray(value);
168
- }
169
- //#endregion
170
- export { InternalError as a, ResponseShapeError as c, ValidationError as d, errorMessage as f, escapeJsonPointerSegment as h, ConfigError as i, TimeoutError as l, toMetabaseError as m, AbortError as n, MetabaseError as o, isFileNotFoundError as p, ChainedRequestError as r, NetworkError as s, isPlainObject as t, UnknownError as u };
@@ -1,216 +0,0 @@
1
- import { d as ValidationError, f as errorMessage, i as ConfigError, p as isFileNotFoundError } from "./predicates-Bkm2IoeX.mjs";
2
- import { O as readEnv, w as ENV_SKILLS_DIR } from "./cli.mjs";
3
- import { z } from "zod";
4
- import { closeSync, openSync, readFileSync, readSync, readdirSync, statSync } from "node:fs";
5
- import { dirname, join, resolve } from "node:path";
6
- import { fileURLToPath } from "node:url";
7
- import { YAMLParseError, parse } from "yaml";
8
- //#region src/runtime/yaml.ts
9
- function parseYamlResult(input, schema, opts = {}) {
10
- const sourcePrefix = opts.source ? `${opts.source}: ` : "";
11
- let raw;
12
- try {
13
- raw = parse(input);
14
- } catch (error) {
15
- if (error instanceof YAMLParseError) return {
16
- ok: false,
17
- error: new ConfigError(`${sourcePrefix}invalid YAML: ${error.message}`)
18
- };
19
- return {
20
- ok: false,
21
- error: new ConfigError(`${sourcePrefix}invalid YAML: ${errorMessage(error)}`)
22
- };
23
- }
24
- const parsed = schema.safeParse(raw);
25
- if (!parsed.success) return {
26
- ok: false,
27
- error: new ValidationError(`${sourcePrefix}value did not match expected schema`, {
28
- source: opts.source ?? "<input>",
29
- zodIssues: parsed.error.issues
30
- })
31
- };
32
- return {
33
- ok: true,
34
- value: parsed.data
35
- };
36
- }
37
- //#endregion
38
- //#region src/core/skills.ts
39
- const Frontmatter = z.object({
40
- name: z.string().min(1),
41
- description: z.string().default(""),
42
- hidden: z.boolean().default(false)
43
- }).loose();
44
- const SkillExtraFile = z.object({
45
- path: z.string(),
46
- content: z.string()
47
- });
48
- const SkillContent = z.object({
49
- name: z.string(),
50
- description: z.string(),
51
- body: z.string(),
52
- references: z.array(SkillExtraFile),
53
- templates: z.array(SkillExtraFile)
54
- });
55
- const SKILL_DIR_NAMES = ["skills", "skill-data"];
56
- const SKILL_MD_FILENAME = "SKILL.md";
57
- const SKILL_REFERENCES_DIR = "references";
58
- const SKILL_TEMPLATES_DIR = "templates";
59
- const FRONTMATTER_PREFIX_BYTES = 8192;
60
- const FRONTMATTER_FENCE = "---";
61
- function loadAllSkills() {
62
- return discoverSkills(resolveSkillDirs());
63
- }
64
- function loadVisibleSkills() {
65
- return loadAllSkills().filter((s) => !s.hidden);
66
- }
67
- function findSkillByName(all, name) {
68
- const hit = all.find((s) => s.name === name);
69
- if (hit === void 0) throw new ConfigError(`unknown skill name: ${name} (${availableSkillNames(all)})`);
70
- return hit;
71
- }
72
- function selectSkillsByNames(all, requested) {
73
- if (requested.length === 0) throw new ConfigError("no skill names provided");
74
- const byName = new Map(all.map((s) => [s.name, s]));
75
- const missing = [];
76
- const found = [];
77
- for (const name of requested) {
78
- const hit = byName.get(name);
79
- if (hit === void 0) {
80
- missing.push(name);
81
- continue;
82
- }
83
- found.push(hit);
84
- }
85
- if (missing.length > 0) throw new ConfigError(`unknown skill name(s): ${missing.join(", ")} (${availableSkillNames(all)})`);
86
- return found;
87
- }
88
- function availableSkillNames(all) {
89
- const names = all.filter((s) => !s.hidden).map((s) => s.name);
90
- return `available: ${names.length === 0 ? "none" : names.join(", ")}`;
91
- }
92
- function resolveSkillDirs() {
93
- const override = readEnv(ENV_SKILLS_DIR);
94
- if (override !== void 0 && override !== "") {
95
- if (!isDirectory(override)) throw new ConfigError(`${ENV_SKILLS_DIR} points at ${override}, which is not a directory`);
96
- return [resolve(override)];
97
- }
98
- const root = findPackageRoot();
99
- if (root === null) return [];
100
- return SKILL_DIR_NAMES.map((name) => join(root, name)).filter(isDirectory);
101
- }
102
- function findPackageRoot() {
103
- let dir = dirname(fileURLToPath(import.meta.url));
104
- while (true) {
105
- for (const name of SKILL_DIR_NAMES) if (isDirectory(join(dir, name))) return dir;
106
- const parent = dirname(dir);
107
- if (parent === dir) return null;
108
- dir = parent;
109
- }
110
- }
111
- function discoverSkills(dirs) {
112
- const skills = [];
113
- for (const dir of dirs) {
114
- let entries;
115
- try {
116
- entries = readdirSync(dir);
117
- } catch (error) {
118
- if (isFileNotFoundError(error)) continue;
119
- throw error;
120
- }
121
- for (const entryName of entries) {
122
- const skillDir = join(dir, entryName);
123
- const fm = readFrontmatterFromSkill(skillDir);
124
- if (fm === null) continue;
125
- skills.push({
126
- name: fm.name,
127
- description: fm.description,
128
- hidden: fm.hidden,
129
- dir: skillDir
130
- });
131
- }
132
- }
133
- skills.sort((a, b) => a.name.localeCompare(b.name));
134
- return skills;
135
- }
136
- function readFrontmatterFromSkill(skillDir) {
137
- const prefix = readFilePrefix(join(skillDir, SKILL_MD_FILENAME), FRONTMATTER_PREFIX_BYTES);
138
- if (prefix === null) return null;
139
- return parseFrontmatter(prefix);
140
- }
141
- function readFilePrefix(path, maxBytes) {
142
- let fd;
143
- try {
144
- fd = openSync(path, "r");
145
- } catch (error) {
146
- if (isFileNotFoundError(error)) return null;
147
- throw error;
148
- }
149
- try {
150
- const buffer = Buffer.alloc(maxBytes);
151
- const bytesRead = readSync(fd, buffer, 0, maxBytes, 0);
152
- return buffer.toString("utf8", 0, bytesRead);
153
- } finally {
154
- closeSync(fd);
155
- }
156
- }
157
- function parseFrontmatter(content) {
158
- const trimmed = content.trimStart();
159
- if (!trimmed.startsWith(FRONTMATTER_FENCE)) return null;
160
- const afterOpening = trimmed.slice(3);
161
- const closingIndex = afterOpening.indexOf(`\n${FRONTMATTER_FENCE}`);
162
- if (closingIndex < 0) return null;
163
- const result = parseYamlResult(afterOpening.slice(0, closingIndex), Frontmatter);
164
- if (!result.ok) return null;
165
- return result.value;
166
- }
167
- function readSkillContent(info, opts) {
168
- const body = readFileSync(join(info.dir, SKILL_MD_FILENAME), "utf8");
169
- if (!opts.includeExtras) return {
170
- name: info.name,
171
- description: info.description,
172
- body,
173
- references: [],
174
- templates: []
175
- };
176
- return {
177
- name: info.name,
178
- description: info.description,
179
- body,
180
- references: collectExtraFiles(info.dir, SKILL_REFERENCES_DIR),
181
- templates: collectExtraFiles(info.dir, SKILL_TEMPLATES_DIR)
182
- };
183
- }
184
- function collectExtraFiles(skillDir, subdirName) {
185
- const subdir = join(skillDir, subdirName);
186
- if (!isDirectory(subdir)) return [];
187
- const entries = readdirSync(subdir).toSorted();
188
- const out = [];
189
- for (const entry of entries) {
190
- const full = join(subdir, entry);
191
- if (!isFile(full)) continue;
192
- out.push({
193
- path: `${subdirName}/${entry}`,
194
- content: readFileSync(full, "utf8")
195
- });
196
- }
197
- return out;
198
- }
199
- function isDirectory(path) {
200
- try {
201
- return statSync(path).isDirectory();
202
- } catch (error) {
203
- if (isFileNotFoundError(error)) return false;
204
- throw error;
205
- }
206
- }
207
- function isFile(path) {
208
- try {
209
- return statSync(path).isFile();
210
- } catch (error) {
211
- if (isFileNotFoundError(error)) return false;
212
- throw error;
213
- }
214
- }
215
- //#endregion
216
- export { readSkillContent as a, loadVisibleSkills as i, findSkillByName as n, selectSkillsByNames as o, loadAllSkills as r, SkillContent as t };
@@ -1,19 +0,0 @@
1
- import { t as defineCommandGroup } from "./group-DBM87IgC.mjs";
2
- //#region src/commands/snippet/index.ts
3
- var snippet_default = defineCommandGroup({
4
- name: "snippet",
5
- description: "Manage Metabase native query snippets",
6
- skills: [{
7
- skill: "core",
8
- purpose: "native-SQL snippets and body input"
9
- }],
10
- subCommands: {
11
- list: () => import("./list-BOET6zhP.mjs").then((mod) => mod.default),
12
- get: () => import("./get-C2-Q3iQ5.mjs").then((mod) => mod.default),
13
- create: () => import("./create-BNQ_DytP.mjs").then((mod) => mod.default),
14
- update: () => import("./update-CHNSUHK4.mjs").then((mod) => mod.default),
15
- archive: () => import("./archive-ChORH5JH.mjs").then((mod) => mod.default)
16
- }
17
- });
18
- //#endregion
19
- export { snippet_default as default };
@@ -1,21 +0,0 @@
1
- import { t as defineCommandGroup } from "./group-DBM87IgC.mjs";
2
- //#region src/commands/timeline/index.ts
3
- var timeline_default = defineCommandGroup({
4
- name: "timeline",
5
- description: "Manage Metabase timelines (event annotations for time-series charts)",
6
- skills: [{
7
- skill: "core",
8
- purpose: "collection scoping — events render only on questions in the timeline's collection"
9
- }],
10
- subCommands: {
11
- list: () => import("./list-BP3MPq-M.mjs").then((mod) => mod.default),
12
- get: () => import("./get-CnbUCzDM.mjs").then((mod) => mod.default),
13
- events: () => import("./events-Bn7jh5lP.mjs").then((mod) => mod.default),
14
- create: () => import("./create-DV-Ln5Mo.mjs").then((mod) => mod.default),
15
- update: () => import("./update-cYkvbqK8.mjs").then((mod) => mod.default),
16
- archive: () => import("./archive-Cd29QC0c.mjs").then((mod) => mod.default),
17
- delete: () => import("./delete-Ob06PPie.mjs").then((mod) => mod.default)
18
- }
19
- });
20
- //#endregion
21
- export { timeline_default as default };
@@ -1,28 +0,0 @@
1
- import { t as defineCommandGroup } from "./group-DBM87IgC.mjs";
2
- //#region src/commands/transform/index.ts
3
- var transform_default = defineCommandGroup({
4
- name: "transform",
5
- description: "Manage Metabase transforms",
6
- skills: [{
7
- skill: "transform",
8
- purpose: "body shape, run-with-wait, iterate"
9
- }, {
10
- skill: "mbql",
11
- purpose: "MBQL source.query bodies"
12
- }],
13
- subCommands: {
14
- list: () => import("./list-C5Zs8nrb.mjs").then((mod) => mod.default),
15
- get: () => import("./get-ByBOq30r.mjs").then((mod) => mod.default),
16
- dependencies: () => import("./dependencies-Bj3QrGIm.mjs").then((mod) => mod.default),
17
- create: () => import("./create-DJmXXQoq.mjs").then((mod) => mod.default),
18
- update: () => import("./update-BCS5FxKr.mjs").then((mod) => mod.default),
19
- delete: () => import("./delete-Ck0q4Dzp.mjs").then((mod) => mod.default),
20
- "delete-table": () => import("./delete-table-DuyhGrvA.mjs").then((mod) => mod.default),
21
- run: () => import("./run-C3DkS6NP.mjs").then((mod) => mod.default),
22
- cancel: () => import("./cancel-BMQa5R1Z.mjs").then((mod) => mod.default),
23
- "get-run": () => import("./get-run-Cnux9ln0.mjs").then((mod) => mod.default),
24
- runs: () => import("./runs-CUNWiidL.mjs").then((mod) => mod.default)
25
- }
26
- });
27
- //#endregion
28
- export { transform_default as default };
@@ -1,22 +0,0 @@
1
- import { t as defineCommandGroup } from "./group-DBM87IgC.mjs";
2
- //#region src/commands/transform-job/index.ts
3
- var transform_job_default = defineCommandGroup({
4
- name: "transform-job",
5
- description: "Manage Metabase transform jobs",
6
- skills: [{
7
- skill: "transform",
8
- purpose: "tag-driven job schedules"
9
- }],
10
- subCommands: {
11
- list: () => import("./list-BzVTHOoH.mjs").then((mod) => mod.default),
12
- get: () => import("./get-DRvsATp-.mjs").then((mod) => mod.default),
13
- create: () => import("./create-Beh-2uoN.mjs").then((mod) => mod.default),
14
- update: () => import("./update-CmDTljK-.mjs").then((mod) => mod.default),
15
- delete: () => import("./delete-DFmX7jTp.mjs").then((mod) => mod.default),
16
- run: () => import("./run-DdGJ544X.mjs").then((mod) => mod.default),
17
- transforms: () => import("./transforms-oU4zizbO.mjs").then((mod) => mod.default),
18
- "set-active": () => import("./set-active-BD8L1lPX.mjs").then((mod) => mod.default)
19
- }
20
- });
21
- //#endregion
22
- export { transform_job_default as default };
@@ -1,46 +0,0 @@
1
- import { i as ConfigError, p as isFileNotFoundError } from "./predicates-Bkm2IoeX.mjs";
2
- import { n as fileNotFoundError } from "./input-DH9i67x_.mjs";
3
- import { n as UploadUpdateResult, t as UploadResult } from "./upload-DAtxBBms.mjs";
4
- import { basename } from "node:path";
5
- import { readFile } from "node:fs/promises";
6
- //#region src/output/views/upload.ts
7
- const uploadResultView = {
8
- compactPick: UploadResult,
9
- tableColumns: [{
10
- key: "model_id",
11
- label: "Model ID"
12
- }, {
13
- key: "table_id",
14
- label: "Table ID"
15
- }]
16
- };
17
- const uploadUpdateResultView = {
18
- compactPick: UploadUpdateResult,
19
- tableColumns: [{
20
- key: "table_id",
21
- label: "Table ID"
22
- }, {
23
- key: "action",
24
- label: "Action"
25
- }]
26
- };
27
- //#endregion
28
- //#region src/runtime/upload.ts
29
- function requireUploadFilePath(file) {
30
- if (typeof file !== "string" || file.trim() === "") throw new ConfigError("provide the CSV file to upload with --file <path>");
31
- return file;
32
- }
33
- async function readCsvFile(path) {
34
- try {
35
- const bytes = await readFile(path);
36
- return {
37
- filename: basename(path),
38
- bytes
39
- };
40
- } catch (error) {
41
- if (isFileNotFoundError(error)) throw fileNotFoundError(path);
42
- throw error;
43
- }
44
- }
45
- //#endregion
46
- export { uploadUpdateResultView as i, requireUploadFilePath as n, uploadResultView as r, readCsvFile as t };
@@ -1,13 +0,0 @@
1
- import { t as defineCommandGroup } from "./group-DBM87IgC.mjs";
2
- //#region src/commands/upload/index.ts
3
- var upload_default = defineCommandGroup({
4
- name: "upload",
5
- description: "Upload CSV files into Metabase",
6
- subCommands: {
7
- csv: () => import("./csv-B2Jgb1GM.mjs").then((m) => m.default),
8
- append: () => import("./append-DFzQRPMd.mjs").then((m) => m.default),
9
- replace: () => import("./replace-Cq4CxVa-.mjs").then((m) => m.default)
10
- }
11
- });
12
- //#endregion
13
- export { upload_default as default };