@metabase/cli 0.4.1-alpha.fix-transform-test-ee-path.b41b46c → 0.4.1-alpha.release-65-integration-branch.5cbe297
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{add-collection-CcjydN8e.mjs → add-collection-hv29px39.mjs} +2 -2
- package/dist/{alert-DBTU8iHe.mjs → alert-DnTCjYIu.mjs} +6 -6
- package/dist/{alerts-DsgnumqY.mjs → alerts-_ELZ12ye.mjs} +3 -3
- package/dist/{append-DUFn3_Og.mjs → append-B9sLLPYT.mjs} +2 -2
- package/dist/archive-3MQyc5Ih.mjs +32 -0
- package/dist/{archive-CI-WE7dA.mjs → archive-BAHzxkPR.mjs} +2 -2
- package/dist/{archive-sfqadV_a.mjs → archive-BRX5fKPb.mjs} +2 -2
- package/dist/{archive-jwyopr47.mjs → archive-BdX0Uvf2.mjs} +2 -2
- package/dist/{archive-CC6THE3k.mjs → archive-BhIeDoLk.mjs} +2 -2
- package/dist/{archive-DVgglC0F.mjs → archive-CKWWyI1i.mjs} +2 -2
- package/dist/{archive-CcPTctIo.mjs → archive-CdfyB0To.mjs} +2 -2
- package/dist/{archive-CWs273rN.mjs → archive-CwBk5vxQ.mjs} +4 -4
- package/dist/{archive-BEzfnrwM.mjs → archive-D22VL5Bx.mjs} +2 -2
- package/dist/{archive-DjQkD1WI.mjs → archive-DD8C0Krt2.mjs} +2 -2
- package/dist/{archive-Bxl1oeJr.mjs → archive-DDUSmbjn.mjs} +2 -2
- package/dist/{archive-BTfOiOnx.mjs → archive-ZnHzMJaM.mjs} +2 -2
- package/dist/{auth-IQKgyb_x.mjs → auth-Ca84a5fv.mjs} +4 -4
- package/dist/{body-CT1cQrhp.mjs → body-BVrHLwJU.mjs} +1 -1
- package/dist/{branches-ByUeNOBP.mjs → branches-frSt4WcS.mjs} +1 -1
- package/dist/{breaking-BKR88YVq.mjs → breaking-zlgxxwdd.mjs} +4 -4
- package/dist/{broken-DeS3_Cg2.mjs → broken-BUAzpKLc.mjs} +6 -6
- package/dist/{bulk-discard-values-DY7svs0d.mjs → bulk-discard-values-DU15VJPb.mjs} +3 -3
- package/dist/{bulk-edit-3EfcsqCu.mjs → bulk-edit-TSa4lNkM.mjs} +2 -2
- package/dist/{bulk-rescan-values-BpwnC_WY.mjs → bulk-rescan-values-BYJAsPC1.mjs} +2 -2
- package/dist/{bulk-sync-schema-Dwbs0TsG.mjs → bulk-sync-schema-DtaOwEtW.mjs} +2 -2
- package/dist/{cancel-Nz4jJ-Ey.mjs → cancel-DCOvSQsq.mjs} +2 -2
- package/dist/{cancel-task-CX_qYiJ0.mjs → cancel-task-osQLETJh.mjs} +1 -1
- package/dist/{card-DSrgU7lT.mjs → card-CQNUT9pm.mjs} +1 -1
- package/dist/{card-DmQO85ej.mjs → card-P2-4BkXV.mjs} +8 -8
- package/dist/{card-Bv4ZN0oV.mjs → card-P5mBknsl.mjs} +2 -12
- package/dist/{cards-FUW8-5PO.mjs → cards-B1pyPl77.mjs} +2 -2
- package/dist/cli.mjs +44 -34
- package/dist/{client-5y-BaV3d.mjs → client-1UIUBA_V.mjs} +84 -6
- package/dist/{collection-BPVrTfTv.mjs → collection-BI8Fy9vS.mjs} +7 -7
- package/dist/{collection-namespace-Q_up_tSg.mjs → collection-namespace-Cizv6-94.mjs} +1 -1
- package/dist/{content-translation-CSkaKlqa.mjs → content-translation-XnHISl5-.mjs} +2 -2
- package/dist/{copy-WlNBviDZ.mjs → copy-BCVW48Jq.mjs} +3 -3
- package/dist/{copy-fikpWJO4.mjs → copy-DAKdksBm.mjs} +3 -3
- package/dist/{copy-flags-j38p0var.mjs → copy-flags-D7NTgAz1.mjs} +1 -1
- package/dist/{create-DQM_AB3I.mjs → create--b64pMVM.mjs} +2 -2
- package/dist/{create-CEezFRTJ.mjs → create-B1ifNWcE.mjs} +2 -2
- package/dist/{create-DqGen4jU.mjs → create-B57D5E-o.mjs} +2 -2
- package/dist/{create-Dp1597uC.mjs → create-B5eo9PSN.mjs} +2 -2
- package/dist/{create-BI73JzZN.mjs → create-BOvtRwRz.mjs} +3 -3
- package/dist/{create-BmCz5lro.mjs → create-BfA1pnmS.mjs} +2 -2
- package/dist/{create-DdnC7PkI.mjs → create-Br5JxAeE.mjs} +3 -3
- package/dist/{create-CYqqBKhE.mjs → create-BzE4q6F_.mjs} +3 -3
- package/dist/create-C7fVbQbQ.mjs +48 -0
- package/dist/{create-CLLcjbzq.mjs → create-CW4WF073.mjs} +2 -2
- package/dist/{create-CC89lXeE.mjs → create-CuhQ1Khk.mjs} +2 -2
- package/dist/{create-C0MNevKK.mjs → create-D2iZsTRV.mjs} +2 -2
- package/dist/{create-yLNBBrwG.mjs → create-D7zeAm-0.mjs} +1 -1
- package/dist/{create-COv2mYmk.mjs → create-KyeJjhxH2.mjs} +2 -2
- package/dist/{create-9sPJd45D.mjs → create-XnYN2zoc.mjs} +4 -4
- package/dist/{create-branch-Cflee_NY.mjs → create-branch-Cli5cXvk.mjs} +1 -1
- package/dist/{create-CO6gBV7I.mjs → create-cqbpWaOi.mjs} +5 -5
- package/dist/{create-Ci7o6-Fk.mjs → create-g4pZa_Xa.mjs} +2 -2
- package/dist/{create-C4dDHOzR.mjs → create-qCgnB-oZ.mjs} +2 -2
- package/dist/{csv-CX1wws5-.mjs → csv-CWIcAm_-.mjs} +2 -2
- package/dist/{current-task-BTnORR7t.mjs → current-task-eBjusv2o.mjs} +1 -1
- package/dist/{dashboard-c_wOMtS9.mjs → dashboard-C-YJxDam.mjs} +11 -11
- package/dist/data-action-DER3EMD7.mjs +24 -0
- package/dist/data-action-DZxVB_hD.mjs +85 -0
- package/dist/data-action-R9qxJDPA.mjs +40 -0
- package/dist/{database-D-CRyRIv.mjs → database-BT7DVgSr.mjs} +1 -1
- package/dist/{database-MlUPpitM.mjs → database-Kq2AL5jH.mjs} +1 -1
- package/dist/{dataset-p5oNPQgL.mjs → dataset-BmvCxGoE.mjs} +1 -1
- package/dist/{db-DNevs1XU.mjs → db-_H9HAS6H.mjs} +6 -6
- package/dist/delete-B0O-mf63.mjs +44 -0
- package/dist/{delete-dfrM_M6T.mjs → delete-BMvVkW-m.mjs} +2 -2
- package/dist/{delete-D5Jy83V-.mjs → delete-BW5QXiyJ.mjs} +2 -2
- package/dist/{delete-ChmqxYa7.mjs → delete-BztmAfPc.mjs} +2 -2
- package/dist/{delete-BJ18ifIG.mjs → delete-C7QmQlp9.mjs} +2 -2
- package/dist/{delete-CCUYbNae.mjs → delete-CynbfvS2.mjs} +2 -2
- package/dist/{delete-Ch797MmM.mjs → delete-DOn2uk0u.mjs} +2 -2
- package/dist/{delete-CZTG4wI2.mjs → delete-DPU-uQxU.mjs} +2 -2
- package/dist/{delete-table-0xxoSknN.mjs → delete-table-DFqm6bAq.mjs} +2 -2
- package/dist/{dependencies-GvzMLOS2.mjs → dependencies-DZ-kMsDa.mjs} +2 -2
- package/dist/{dependency-DaGeVAHF.mjs → dependency-B4J1bwFh.mjs} +1 -1
- package/dist/{dependency-BZxbh7qe.mjs → dependency-BHKwKjhO.mjs} +1 -1
- package/dist/{dependency-D6DMbPVm.mjs → dependency-v9fHJ-N-.mjs} +5 -5
- package/dist/{dependents-BRqKb0Pu.mjs → dependents-Ia2fe_KK.mjs} +6 -6
- package/dist/{dirty-Bq2cf5AG.mjs → dirty-BrXAPows.mjs} +1 -1
- package/dist/{discard-values-k5-ePxWl.mjs → discard-values-B9mTgFbV.mjs} +3 -3
- package/dist/{document-DCqe5MO9.mjs → document-CGvUmD9i.mjs} +6 -6
- package/dist/{download-Dpbarf8I.mjs → download-CZdsDdhG.mjs} +1 -1
- package/dist/{eid-BEc1p_um.mjs → eid-DsGNJ16z.mjs} +2 -2
- package/dist/{entity-c_Br4SFc.mjs → entity-BFajNdQp.mjs} +1 -1
- package/dist/{entry-flags-z8cZTfaQ.mjs → entry-flags-BaZUoxUR.mjs} +1 -1
- package/dist/{events-DBpOpy2y.mjs → events-rkMIMpnS.mjs} +2 -2
- package/dist/execute-DvBse4aF.mjs +45 -0
- package/dist/{export-F-R_vF48.mjs → export-BCkzx9zk.mjs} +2 -2
- package/dist/{export-flags-QbLI0sKz.mjs → export-flags-TuwwRhD6.mjs} +1 -1
- package/dist/{export-preflight-0BvDa8Oz.mjs → export-preflight-p7botJyN.mjs} +1 -1
- package/dist/{field-CcCQ0goz.mjs → field-C9AcBe8x.mjs} +7 -7
- package/dist/{fields-DOdrazv2.mjs → fields-CJVXOLbB.mjs} +2 -2
- package/dist/{filter-flags-DiUgZ6vZ.mjs → filter-flags-yY4RM312.mjs} +3 -2
- package/dist/{fks-41Ig_ZQ2.mjs → fks-B6hjrdJP.mjs} +2 -2
- package/dist/{get-BlLUy1G0.mjs → get-B5L4BUGK.mjs} +1 -1
- package/dist/{get-DaxwG0AP.mjs → get-BYtFVJHT.mjs} +2 -2
- package/dist/{get-2l2CbHc6.mjs → get-BvUNnNRq.mjs} +2 -2
- package/dist/get-BwKQw_rR.mjs +31 -0
- package/dist/{get-Bby33eun.mjs → get-BxUgfEPW.mjs} +1 -1
- package/dist/{get-DwUB0K2G.mjs → get-C6uLL4bJ.mjs} +2 -2
- package/dist/{get-BAV-KpLU.mjs → get-CWBN0G-4.mjs} +4 -4
- package/dist/{get-BjJdy_Iw.mjs → get-CXeFg0F2.mjs} +2 -2
- package/dist/{get-aC5jUA1y.mjs → get-CoJcgFky.mjs} +3 -3
- package/dist/{get-YinpF0y5.mjs → get-D1p-5ibI.mjs} +2 -2
- package/dist/{get-B8hREA2A.mjs → get-D7HPiBB0.mjs} +2 -2
- package/dist/{get-OKOOd2yb.mjs → get-DPlSzRI0.mjs} +2 -2
- package/dist/{get-DxpDAUz4.mjs → get-DSjITPED.mjs} +2 -2
- package/dist/{get-D1c-C-_Q2.mjs → get-Do1LC4I52.mjs} +2 -2
- package/dist/{get-BVaN-tgY.mjs → get-DpYTiE4D.mjs} +2 -2
- package/dist/{get-CVJFF8Lb.mjs → get-DsbDxSpy.mjs} +2 -2
- package/dist/{get-CfeNeyGE.mjs → get-DyS1mRI6.mjs} +2 -2
- package/dist/{get-Dwp_BfIp.mjs → get-Eforof5e.mjs} +4 -4
- package/dist/{get-CPhMYZDP.mjs → get-oLc5jgid2.mjs} +2 -2
- package/dist/{get-run-PeXiUJwf.mjs → get-run-bU-d--nM.mjs} +2 -2
- package/dist/{get-CjK2GzFn.mjs → get-xmhwvAQJ.mjs} +1 -1
- package/dist/{get-TbBkN-jS.mjs → get-zotSW00n.mjs} +2 -2
- package/dist/git-sync-D4R0cHvk.mjs +29 -0
- package/dist/{glossary-LdAlftZW.mjs → glossary-C6EnoEXg.mjs} +4 -4
- package/dist/{graph-M7V_js_w.mjs → graph-CHXJ6mB7.mjs} +5 -5
- package/dist/{has-remote-changes-D7uABGR0.mjs → has-remote-changes-BXEe8Sv5.mjs} +1 -1
- package/dist/{import-CABYSyWS.mjs → import-DZQb4bUo.mjs} +2 -2
- package/dist/{is-dirty-DpQBXuVa.mjs → is-dirty-DwQ2_CCB.mjs} +1 -1
- package/dist/{items-BqUCPf-J.mjs → items-DNdICQ7M.mjs} +1 -1
- package/dist/{library-DDrpsgMv.mjs → library-Cdj_uj1H.mjs} +4 -4
- package/dist/{list-D217irjK.mjs → list-03zaydQe.mjs} +1 -1
- package/dist/{list-DO767sO1.mjs → list-2EWHwbQs.mjs} +1 -1
- package/dist/{list-CLRezReA.mjs → list-89ZgbsvW.mjs} +3 -3
- package/dist/{list-BygxQkq7.mjs → list-Be6kDkyT.mjs} +2 -2
- package/dist/{list-C9H24xr5.mjs → list-C-WGqRqN.mjs} +1 -1
- package/dist/{list-BQXq0A65.mjs → list-C7PV9fYj.mjs} +1 -1
- package/dist/{list-ISpYiawJ.mjs → list-CLJvuPXn.mjs} +3 -3
- package/dist/{list-Dd9o6Tut.mjs → list-CYlPgzD1.mjs} +1 -1
- package/dist/{list-CONZkA9i.mjs → list-CZoaZc9g.mjs} +1 -1
- package/dist/{list-CQJABPGk.mjs → list-CzxrdWB8.mjs} +2 -2
- package/dist/{list-BFAc460G.mjs → list-DcHPY1Ti.mjs} +1 -1
- package/dist/{list-CZF_gQnI.mjs → list-DoLqxEjq.mjs} +1 -1
- package/dist/{list-CEU9UXaZ.mjs → list-DsyvHBAv.mjs} +1 -1
- package/dist/{list-BXRUiZuH.mjs → list-F4ENGV7j.mjs} +1 -1
- package/dist/{list-CHUwj_Qh.mjs → list-M20foZz2.mjs} +1 -1
- package/dist/{list-Hiq5T4Bt.mjs → list-OKHcr76i.mjs} +1 -1
- package/dist/list-Owrzgtkc.mjs +28 -0
- package/dist/{list-D0MlsdSX.mjs → list-__Q79YXk.mjs} +1 -1
- package/dist/{list-yDJq3wNs.mjs → list-epIn3uFZ.mjs} +3 -3
- package/dist/{list-aHFBopQd.mjs → list-gqemddWB.mjs} +3 -3
- package/dist/{list-glgnTw7w.mjs → list-hINHmdMT.mjs} +1 -1
- package/dist/{login-DCWam2ec.mjs → login-BSqGgX8S.mjs} +3 -3
- package/dist/{logout-CmrJqhkc.mjs → logout-D92O4mQK.mjs} +1 -1
- package/dist/{measure-c_VUyXFN.mjs → measure-DhX_mmZK.mjs} +5 -5
- package/dist/{parameter-values-CnwWZrJ_.mjs → parameter-values-BY2WA9qg.mjs} +2 -2
- package/dist/{parse-id-aMXePsUP.mjs → parse-id-CxHp2akh.mjs} +1 -1
- package/dist/{path-CGbz-QSr.mjs → path-D4Q1ZzCw.mjs} +2 -2
- package/dist/{preflight-ChJ0pemy.mjs → preflight-BPaonBKy.mjs} +1 -1
- package/dist/{publish-7ke00CtK.mjs → publish-BhgyrJ6c.mjs} +2 -2
- package/dist/query-BKtMP5eH.mjs +13 -0
- package/dist/{query-8M7ZN2Ca.mjs → query-CsBe-kJn.mjs} +5 -5
- package/dist/{query-DNa-fGS7.mjs → query-DvlGWjgG.mjs} +9 -8
- package/dist/{remapping-Cy1CEown.mjs → remapping-CCEivr42.mjs} +2 -2
- package/dist/{remove-collection-B2CL66No.mjs → remove-collection-LpgGBYCl.mjs} +2 -2
- package/dist/{render-ColPG5G7.mjs → render-D5ehBS-7.mjs} +1 -1
- package/dist/{replace-COC3ggyx.mjs → replace-DeWgkbfZ.mjs} +2 -2
- package/dist/{rescan-values-DUX58myu.mjs → rescan-values-CDDVS1tl.mjs} +2 -2
- package/dist/{rescan-values-DXzXTw9a.mjs → rescan-values-aF18XAv6.mjs} +4 -4
- package/dist/{run-T2a4m1x9.mjs → run-Buf4B8QH.mjs} +3 -3
- package/dist/{run-C_nqwWmC.mjs → run-DlG3Ykj1.mjs} +3 -3
- package/dist/{run-C5wf-lug.mjs → run-DyGMvbMm.mjs} +2 -2
- package/dist/{runs-Datc76Wu.mjs → runs-D2CXgW10.mjs} +2 -2
- package/dist/{runtime-C3AL15Dp.mjs → runtime-X6hVzSMW.mjs} +1 -1
- package/dist/{schema-tables-CR2S5mNc.mjs → schema-tables-FUOIyoUU.mjs} +2 -2
- package/dist/{schemas-OrGjEuVc.mjs → schemas-CmfNeqzG.mjs} +2 -2
- package/dist/{search-BEXBlfak.mjs → search-CLpDqYpY.mjs} +2 -2
- package/dist/{search-CJYSB5eP.mjs → search-Dl7xzF6Q.mjs} +2 -2
- package/dist/{segment-Tt8GaRnc.mjs → segment-Bx28f38v.mjs} +5 -5
- package/dist/{send-uNLODakO.mjs → send-CoGV2zkp.mjs} +2 -2
- package/dist/{set-DRp3F4wz.mjs → set-CrR9IumN.mjs} +2 -2
- package/dist/{set-active-CAt6ieXS.mjs → set-active-CbiJv8Hg.mjs} +1 -1
- package/dist/{set-sensitivity--Qq2RXVE.mjs → set-sensitivity-CTHVxpnU.mjs} +2 -2
- package/dist/{setting-DMqvipRp.mjs → setting-CUxdweNJ.mjs} +3 -3
- package/dist/{setup-B2PC1NVz.mjs → setup-4uySIB-t.mjs} +2 -2
- package/dist/{skill-list-Cyx1935Q.mjs → skill-list-goCqmfFF.mjs} +1 -1
- package/dist/{skills-D7wu2iff.mjs → skills-86j411Qz.mjs} +3 -3
- package/dist/{skills-Dlp0MK6g.mjs → skills-DeWsLMwC.mjs} +1 -1
- package/dist/{snippet-D-5bKT_U.mjs → snippet-C3gamfFK.mjs} +5 -5
- package/dist/{stash-CHeQPI8Z.mjs → stash-BNKlbxtD.mjs} +2 -2
- package/dist/{status-Bdt5XWrQ.mjs → status-B7bwHLkk.mjs} +2 -2
- package/dist/{status-gTN3G-rs.mjs → status-Bul9El-c.mjs} +1 -1
- package/dist/{subscription-C9alueg1.mjs → subscription-DPAGevGU.mjs} +5 -5
- package/dist/{subscriptions-DJKbcxDy.mjs → subscriptions-DIRsHcKP.mjs} +3 -3
- package/dist/{summary-kaC0aINr.mjs → summary-CeVt80Kb.mjs} +2 -2
- package/dist/{sync-schema-CyKovAb9.mjs → sync-schema-B9fLcZoa.mjs} +5 -5
- package/dist/{sync-schema-C29bGCtt.mjs → sync-schema-oDTbhjW1.mjs} +2 -2
- package/dist/table-C--k-JXA.mjs +26 -0
- package/dist/{table-selector-flags-CSoedTgm.mjs → table-selector-flags-BUR0-n6j.mjs} +1 -1
- package/dist/{timeline-BetOmLYk.mjs → timeline-ClMmTycg.mjs} +7 -7
- package/dist/{timeline-event-DN3y8vwW.mjs → timeline-event-BY2Hj72e.mjs} +5 -5
- package/dist/transform-BZaNFGeK.mjs +28 -0
- package/dist/transform-job-QMI2qWin.mjs +22 -0
- package/dist/{transform-tag-CIKnNaQH.mjs → transform-tag-CzjLKILh.mjs} +4 -4
- package/dist/{transform-test-C5Havg4o.mjs → transform-test-B9le1jKH.mjs} +6 -6
- package/dist/{transforms-BQjwZKTN.mjs → transforms-0uhBh0H4.mjs} +2 -2
- package/dist/{transport-DuU3fLui.mjs → transport-BmNrb0Lz.mjs} +1 -1
- package/dist/{tree-C21CG5rm.mjs → tree-oBEw8hDj.mjs} +1 -1
- package/dist/{unpublish-C7MRZTmS.mjs → unpublish-BJ9OKN1N.mjs} +2 -2
- package/dist/{unreferenced-BJUIC_Ct.mjs → unreferenced-D6UyA_Nu.mjs} +4 -4
- package/dist/{update-CZ2eSAV5.mjs → update-7zsDGAWa.mjs} +3 -3
- package/dist/{update-B2F22ryV.mjs → update-BK_SpSrG.mjs} +3 -3
- package/dist/{update-9b4JHJWR.mjs → update-BZgHTH5P.mjs} +3 -3
- package/dist/update-Bdi40RG0.mjs +52 -0
- package/dist/{update-DDH6FTe6.mjs → update-BqrZ-8IK.mjs} +3 -3
- package/dist/{update-BXFGGYT8.mjs → update-CEhub3Wz.mjs} +4 -4
- package/dist/{update-EpHReUGk.mjs → update-CHA4VWKT.mjs} +6 -6
- package/dist/{update-CuYvtXQY.mjs → update-CKJ6Das4.mjs} +3 -3
- package/dist/{update-CCHTQjsP.mjs → update-CKe2Bwpv.mjs} +3 -3
- package/dist/{update-BQben_Xm.mjs → update-CXfLvhmK.mjs} +3 -3
- package/dist/{update-DEnsF5zT.mjs → update-CYQkWLpZ.mjs} +3 -3
- package/dist/{update-IEVAFvpi.mjs → update-Cv6IMLyu.mjs} +3 -3
- package/dist/{update-CYy-r_Jq.mjs → update-D9eLVWFQ.mjs} +4 -4
- package/dist/{update-CVO8Srng.mjs → update-DGwGjOnH.mjs} +3 -3
- package/dist/{update-D6oHLn1g.mjs → update-DKagaJw0.mjs} +3 -3
- package/dist/{update-CBcJTZo6.mjs → update-DgmlUn64.mjs} +3 -3
- package/dist/{update-DX1s6KnO.mjs → update-DneJLQXe.mjs} +5 -5
- package/dist/{update-C0QcHFIP.mjs → update-M7yDPmJ-.mjs} +3 -3
- package/dist/{update-Duxk_-dC.mjs → update-bGDXSnBh.mjs} +4 -4
- package/dist/{update-dashcard-C4ZndfvP.mjs → update-dashcard-DNsf-gJ1.mjs} +3 -3
- package/dist/{upgrade-o2DpB66j.mjs → upgrade-BRJH93W0.mjs} +1 -1
- package/dist/{upload-CEtKrueq.mjs → upload-CGz8u2wG.mjs} +1 -1
- package/dist/{upload-BqNErDXE.mjs → upload-T5wS1XtL.mjs} +3 -3
- package/dist/{uuid-D9oozo8p.mjs → uuid-3qmLYgrG.mjs} +1 -1
- package/dist/{validate-query-BEYjmSv2.mjs → validate-query-DIcK8alR.mjs} +5 -1
- package/dist/{values-De8aGDiJ.mjs → values-Bn2Wcz4t.mjs} +2 -2
- package/dist/{verify-DVjaammv.mjs → verify-C2K-zMuQ.mjs} +2 -2
- package/dist/{verify-DKmz4xJs.mjs → verify-CA4PEHlO.mjs} +2 -2
- package/dist/{verify-ob8JSLxv.mjs → verify-CCX2N98Q.mjs} +2 -2
- package/dist/{wait-BN_MzTng.mjs → wait-DCgCJBqX.mjs} +2 -2
- package/dist/{wait-flags-DQlX2yM_.mjs → wait-flags-aRQHTjwg.mjs} +1 -1
- package/package.json +1 -1
- package/skill-data/core/SKILL.md +1 -4
- package/skill-data/data-action/SKILL.md +125 -0
- package/skill-data/native-sql/SKILL.md +1 -1
- package/dist/git-sync-CO199xCu.mjs +0 -29
- package/dist/table-8c-V5afO.mjs +0 -26
- package/dist/transform-job-DALBzYVV.mjs +0 -22
- package/dist/transform-p-6_thIh.mjs +0 -28
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: data-action
|
|
3
|
+
description: Author and run Metabase data actions with the `mb` CLI — saved, parameterized native SQL writes (INSERT, UPDATE, DELETE) filed in a collection and run with values. Covers enabling them on a database, the body, mapping template tags to parameters, running, and the lifecycle. Triggers — "add a data action", "let users update a row", "a button that inserts a record", "run a write query", "a form that saves to the database", "delete rows from Metabase".
|
|
4
|
+
allowed-tools: Read, Write, Edit, Bash, AskUserQuestion
|
|
5
|
+
requires: [dataActionsWithoutModel]
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Data actions
|
|
9
|
+
|
|
10
|
+
A **data action** is one native SQL statement that writes — `INSERT`, `UPDATE` or `DELETE` — with named inputs. It lives in a collection, and dashboards, apps and `mb data-action execute` run it with values.
|
|
11
|
+
|
|
12
|
+
Flag conventions and `./.scratch` are in `core`; the native query and its template tags follow `native-sql`. This skill covers what a data action adds.
|
|
13
|
+
|
|
14
|
+
## Check the database first
|
|
15
|
+
|
|
16
|
+
Data actions are off on every database until an admin turns on **Model actions** for it (Admin → Databases → the database). `mb` cannot change that setting.
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
mb db get <id> --full --json
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
- `features` must contain `"actions"` — otherwise the driver cannot run writes; pick another database.
|
|
23
|
+
- `settings["database-enable-actions"]` must be `true`. If it is not, ask the user to have an admin enable it. Create and execute fail with `Actions are not enabled.` until then.
|
|
24
|
+
|
|
25
|
+
## The body
|
|
26
|
+
|
|
27
|
+
```json
|
|
28
|
+
{
|
|
29
|
+
"name": "Set order note",
|
|
30
|
+
"type": "query",
|
|
31
|
+
"database_id": 1,
|
|
32
|
+
"collection_id": 12,
|
|
33
|
+
"dataset_query": {
|
|
34
|
+
"lib/type": "mbql/query",
|
|
35
|
+
"database": 1,
|
|
36
|
+
"stages": [
|
|
37
|
+
{
|
|
38
|
+
"lib/type": "mbql.stage/native",
|
|
39
|
+
"native": "UPDATE orders SET note = {{note}} WHERE id = {{order_id}}",
|
|
40
|
+
"template-tags": {
|
|
41
|
+
"order_id": {
|
|
42
|
+
"id": "order_id",
|
|
43
|
+
"name": "order_id",
|
|
44
|
+
"display-name": "Order ID",
|
|
45
|
+
"type": "number",
|
|
46
|
+
"required": true
|
|
47
|
+
},
|
|
48
|
+
"note": {
|
|
49
|
+
"id": "note",
|
|
50
|
+
"name": "note",
|
|
51
|
+
"display-name": "Note",
|
|
52
|
+
"type": "text",
|
|
53
|
+
"required": true
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
]
|
|
58
|
+
},
|
|
59
|
+
"parameters": [
|
|
60
|
+
{
|
|
61
|
+
"id": "order_id",
|
|
62
|
+
"slug": "order_id",
|
|
63
|
+
"name": "Order ID",
|
|
64
|
+
"type": "number/=",
|
|
65
|
+
"target": ["variable", ["template-tag", "order_id"]],
|
|
66
|
+
"required": true
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"id": "note",
|
|
70
|
+
"slug": "note",
|
|
71
|
+
"name": "Note",
|
|
72
|
+
"type": "string/=",
|
|
73
|
+
"target": ["variable", ["template-tag", "note"]],
|
|
74
|
+
"required": true
|
|
75
|
+
}
|
|
76
|
+
]
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
- `type` is always `"query"`. Never set `model_id` or `type: "implicit"`; `mb data-action create` refuses both.
|
|
81
|
+
- `database_id` and `dataset_query.database` are the same id (`mb db list`). Omit `collection_id` for the root collection (`mb collection list`).
|
|
82
|
+
- One statement, no `;`. `create` and `update` validate `dataset_query` as `native-sql` does.
|
|
83
|
+
|
|
84
|
+
## Parameters: one per template tag
|
|
85
|
+
|
|
86
|
+
Each `{{name}}` needs a `template-tags` entry and a `parameters` entry, all using the same name:
|
|
87
|
+
|
|
88
|
+
| Tag `type` | Parameter `type` |
|
|
89
|
+
| ---------- | ---------------- |
|
|
90
|
+
| `number` | `number/=` |
|
|
91
|
+
| `text` | `string/=` |
|
|
92
|
+
| `date` | `date/single` |
|
|
93
|
+
| `boolean` | `boolean/=` |
|
|
94
|
+
|
|
95
|
+
- Parameter `id` and `slug` are the tag name; `target` is `["variable", ["template-tag", "<name>"]]`.
|
|
96
|
+
- Use raw variables only. A field filter (`type: "dimension"`), snippet or card reference does not work in a write — write the comparison yourself (`WHERE id = {{order_id}}`).
|
|
97
|
+
- Set `required: true` on every input the statement cannot run without (`WHERE` keys, `NOT NULL` columns).
|
|
98
|
+
- Wrap an optional input in `[[ … ]]` with `required: false`; the clause drops out when no value is given. This makes one action do partial updates: `UPDATE orders SET updated_at = now() [[, note = {{note}}]] [[, status = {{status}}]] WHERE id = {{order_id}}`.
|
|
99
|
+
|
|
100
|
+
## Run it
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
mb data-action execute <id> --body '{"parameters":{"order_id":1042,"note":"rush delivery"}}'
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
`parameters` is keyed by parameter `id`. The result is `{"rows-affected": <n>}`. A missing required value is refused. A run cannot be undone, so confirm with the user before running against data that matters, and test a new action on a row created for the purpose.
|
|
107
|
+
|
|
108
|
+
## Lifecycle
|
|
109
|
+
|
|
110
|
+
| Task | Command |
|
|
111
|
+
| ------------------------ | ---------------------------------------------------------------------------------------- |
|
|
112
|
+
| Find | `mb data-action list` (unarchived only), `mb search --models action <text>` |
|
|
113
|
+
| Inspect | `mb data-action get <id> --full --json` |
|
|
114
|
+
| Change SQL, inputs, name | `mb data-action update <id> --file patch.json` (changed fields only) |
|
|
115
|
+
| Move | `mb data-action update <id> --body '{"collection_id":<id>}'` |
|
|
116
|
+
| Archive / restore | `mb data-action archive <id>` / `mb data-action update <id> --body '{"archived":false}'` |
|
|
117
|
+
| Delete | `mb data-action delete <id> --yes` (also removes the dashboard buttons that run it) |
|
|
118
|
+
|
|
119
|
+
Archiving or deleting a collection archives or deletes its data actions. Existing model-bound or implicit data actions still list, run and archive; leave them as they are.
|
|
120
|
+
|
|
121
|
+
## Don't
|
|
122
|
+
|
|
123
|
+
- Don't create a model for a data action.
|
|
124
|
+
- Don't concatenate values into the SQL; every value goes through a template tag.
|
|
125
|
+
- Don't run a data action on production data without the user's go-ahead.
|
|
@@ -112,6 +112,6 @@ mb card query 12 --parameters '[{"type":"string/=","target":["dimension",["templ
|
|
|
112
112
|
|
|
113
113
|
- Don't wrap a field filter in an operator (`WHERE col = {{ff}}`) — write it bare (`WHERE {{ff}}`).
|
|
114
114
|
- Don't author the flat `{type:"native", …}` form — send the native stage above.
|
|
115
|
-
- Don't use native SQL for DDL or multiple statements — the editor is read-only, single-statement; `CREATE`/`UPDATE`/`;`-chained SQL is unsupported. To materialize a table, use a `transform
|
|
115
|
+
- Don't use native SQL for DDL or multiple statements — the editor is read-only, single-statement; `CREATE`/`UPDATE`/`;`-chained SQL is unsupported. To materialize a table, use a `transform`; to write rows (`INSERT`/`UPDATE`/`DELETE`), use a data action (`data-action`).
|
|
116
116
|
- Don't expect `[[ ]]` to save you from a case/type mismatch — `WHERE plan = {{p}}` returns zero rows on a case-sensitive engine if the value's case is off; that's a value problem, not syntax.
|
|
117
117
|
- Don't reach for native when a structured query fits — you lose the engine-independence and readability of an `mbql.stage/mbql` stage.
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { t as defineCommandGroup } from "./group-D4w87fXL.mjs";
|
|
2
|
-
//#region src/commands/git-sync/index.ts
|
|
3
|
-
var git_sync_default = defineCommandGroup({
|
|
4
|
-
name: "git-sync",
|
|
5
|
-
description: "Sync Metabase content with a git remote",
|
|
6
|
-
skills: [{
|
|
7
|
-
skill: "git-sync",
|
|
8
|
-
purpose: "import/export round-trip and dirty checks"
|
|
9
|
-
}],
|
|
10
|
-
subCommands: {
|
|
11
|
-
status: () => import("./status-gTN3G-rs.mjs").then((mod) => mod.default),
|
|
12
|
-
"is-dirty": () => import("./is-dirty-DpQBXuVa.mjs").then((mod) => mod.default),
|
|
13
|
-
"has-remote-changes": () => import("./has-remote-changes-D7uABGR0.mjs").then((mod) => mod.default),
|
|
14
|
-
dirty: () => import("./dirty-Bq2cf5AG.mjs").then((mod) => mod.default),
|
|
15
|
-
"current-task": () => import("./current-task-BTnORR7t.mjs").then((mod) => mod.default),
|
|
16
|
-
"cancel-task": () => import("./cancel-task-CX_qYiJ0.mjs").then((mod) => mod.default),
|
|
17
|
-
wait: () => import("./wait-BN_MzTng.mjs").then((mod) => mod.default),
|
|
18
|
-
import: () => import("./import-CABYSyWS.mjs").then((mod) => mod.default),
|
|
19
|
-
export: () => import("./export-F-R_vF48.mjs").then((mod) => mod.default),
|
|
20
|
-
"export-preflight": () => import("./export-preflight-0BvDa8Oz.mjs").then((mod) => mod.default),
|
|
21
|
-
stash: () => import("./stash-CHeQPI8Z.mjs").then((mod) => mod.default),
|
|
22
|
-
branches: () => import("./branches-ByUeNOBP.mjs").then((mod) => mod.default),
|
|
23
|
-
"create-branch": () => import("./create-branch-Cflee_NY.mjs").then((mod) => mod.default),
|
|
24
|
-
"add-collection": () => import("./add-collection-CcjydN8e.mjs").then((mod) => mod.default),
|
|
25
|
-
"remove-collection": () => import("./remove-collection-B2CL66No.mjs").then((mod) => mod.default)
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
//#endregion
|
|
29
|
-
export { git_sync_default as default };
|
package/dist/table-8c-V5afO.mjs
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { t as defineCommandGroup } from "./group-D4w87fXL.mjs";
|
|
2
|
-
//#region src/commands/table/index.ts
|
|
3
|
-
var table_default = defineCommandGroup({
|
|
4
|
-
name: "table",
|
|
5
|
-
description: "Manage Metabase tables",
|
|
6
|
-
skills: [{
|
|
7
|
-
skill: "metadata",
|
|
8
|
-
purpose: "table and column metadata, semantic types, visibility"
|
|
9
|
-
}],
|
|
10
|
-
subCommands: {
|
|
11
|
-
list: () => import("./list-BygxQkq7.mjs").then((m) => m.default),
|
|
12
|
-
get: () => import("./get-YinpF0y5.mjs").then((m) => m.default),
|
|
13
|
-
fields: () => import("./fields-DOdrazv2.mjs").then((m) => m.default),
|
|
14
|
-
fks: () => import("./fks-41Ig_ZQ2.mjs").then((m) => m.default),
|
|
15
|
-
update: () => import("./update-DEnsF5zT.mjs").then((m) => m.default),
|
|
16
|
-
"sync-schema": () => import("./sync-schema-C29bGCtt.mjs").then((m) => m.default),
|
|
17
|
-
"rescan-values": () => import("./rescan-values-DUX58myu.mjs").then((m) => m.default),
|
|
18
|
-
"discard-values": () => import("./discard-values-k5-ePxWl.mjs").then((m) => m.default),
|
|
19
|
-
"bulk-edit": () => import("./bulk-edit-3EfcsqCu.mjs").then((m) => m.default),
|
|
20
|
-
"bulk-sync-schema": () => import("./bulk-sync-schema-Dwbs0TsG.mjs").then((m) => m.default),
|
|
21
|
-
"bulk-rescan-values": () => import("./bulk-rescan-values-BpwnC_WY.mjs").then((m) => m.default),
|
|
22
|
-
"bulk-discard-values": () => import("./bulk-discard-values-DY7svs0d.mjs").then((m) => m.default)
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
//#endregion
|
|
26
|
-
export { table_default as default };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { t as defineCommandGroup } from "./group-D4w87fXL.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-Dd9o6Tut.mjs").then((mod) => mod.default),
|
|
12
|
-
get: () => import("./get-BVaN-tgY.mjs").then((mod) => mod.default),
|
|
13
|
-
create: () => import("./create-DqGen4jU.mjs").then((mod) => mod.default),
|
|
14
|
-
update: () => import("./update-CBcJTZo6.mjs").then((mod) => mod.default),
|
|
15
|
-
delete: () => import("./delete-ChmqxYa7.mjs").then((mod) => mod.default),
|
|
16
|
-
run: () => import("./run-C5wf-lug.mjs").then((mod) => mod.default),
|
|
17
|
-
transforms: () => import("./transforms-BQjwZKTN.mjs").then((mod) => mod.default),
|
|
18
|
-
"set-active": () => import("./set-active-CAt6ieXS.mjs").then((mod) => mod.default)
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
//#endregion
|
|
22
|
-
export { transform_job_default as default };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { t as defineCommandGroup } from "./group-D4w87fXL.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-DO767sO1.mjs").then((mod) => mod.default),
|
|
15
|
-
get: () => import("./get-B8hREA2A.mjs").then((mod) => mod.default),
|
|
16
|
-
dependencies: () => import("./dependencies-GvzMLOS2.mjs").then((mod) => mod.default),
|
|
17
|
-
create: () => import("./create-9sPJd45D.mjs").then((mod) => mod.default),
|
|
18
|
-
update: () => import("./update-DX1s6KnO.mjs").then((mod) => mod.default),
|
|
19
|
-
delete: () => import("./delete-Ch797MmM.mjs").then((mod) => mod.default),
|
|
20
|
-
"delete-table": () => import("./delete-table-0xxoSknN.mjs").then((mod) => mod.default),
|
|
21
|
-
run: () => import("./run-T2a4m1x9.mjs").then((mod) => mod.default),
|
|
22
|
-
cancel: () => import("./cancel-Nz4jJ-Ey.mjs").then((mod) => mod.default),
|
|
23
|
-
"get-run": () => import("./get-run-PeXiUJwf.mjs").then((mod) => mod.default),
|
|
24
|
-
runs: () => import("./runs-Datc76Wu.mjs").then((mod) => mod.default)
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
//#endregion
|
|
28
|
-
export { transform_default as default };
|