@metabase/cli 0.5.5 → 0.5.7-alpha.bryan-rci-6-coverage.6f886fd

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 (290) hide show
  1. package/dist/{add-collection-lgBkahhW.mjs → add-collection-C7c6Y3T3.mjs} +3 -3
  2. package/dist/{alert-32mfYFy1.mjs → alert-J0qLs6rc.mjs} +7 -7
  3. package/dist/{alerts-DWVmtHEJ.mjs → alerts-mjDIdof3.mjs} +6 -6
  4. package/dist/api-key-Bw2jDvT4.mjs +13 -0
  5. package/dist/{append-CdzKyHhn.mjs → append-yaTEz2AE.mjs} +4 -4
  6. package/dist/{archive-BmutUzPS.mjs → archive-B93SkIvs.mjs} +4 -4
  7. package/dist/{archive-DOXrtANg.mjs → archive-BmU6DnFz.mjs} +4 -4
  8. package/dist/{archive-24zg3Ckb.mjs → archive-CbtQNK96.mjs} +3 -3
  9. package/dist/{archive-NhewLr23.mjs → archive-Cg67G-qa.mjs} +3 -3
  10. package/dist/{archive-BTxrM_x2.mjs → archive-CgcNck0G.mjs} +3 -3
  11. package/dist/{archive-BZxa5zJk.mjs → archive-DYdHrm6V.mjs} +3 -3
  12. package/dist/{archive-CHQOH-nm.mjs → archive-Dg9eMYU6.mjs} +3 -3
  13. package/dist/{archive-DEOq8OqU.mjs → archive-DrCoSvio.mjs} +3 -3
  14. package/dist/{archive-DbaGJh7E.mjs → archive-DzXi2Frh.mjs} +3 -3
  15. package/dist/{archive-B4G4EE9n.mjs → archive-P-y61Wi_.mjs} +3 -3
  16. package/dist/{archive-Uws1E_p8.mjs → archive-VZ0dgYTd.mjs} +5 -5
  17. package/dist/{archive-B3_fjvid.mjs → archive-rhxBPOrL.mjs} +3 -3
  18. package/dist/{auth-bVvBp9Tl.mjs → auth-CxN5tDg1.mjs} +5 -5
  19. package/dist/{branches-CkOAJk1H.mjs → branches-1ZK62u6h.mjs} +3 -3
  20. package/dist/{breaking-CMpEeieT.mjs → breaking-Bv4wZN9X.mjs} +5 -5
  21. package/dist/{broken-DFFLXiYc.mjs → broken-BU7MrnHI.mjs} +6 -6
  22. package/dist/{bulk-discard-values-D4eFBtKc.mjs → bulk-discard-values-6TLs4p2e.mjs} +5 -5
  23. package/dist/{bulk-edit-CLJeGY2E.mjs → bulk-edit-CYnFA1xm.mjs} +3 -3
  24. package/dist/{bulk-rescan-values-DsaGKIo_.mjs → bulk-rescan-values-T__5XlPh.mjs} +4 -4
  25. package/dist/{bulk-sync-schema-CN797vy9.mjs → bulk-sync-schema-V1Tpqvxg.mjs} +4 -4
  26. package/dist/{cancel-CRpzqIUu.mjs → cancel-RTd-Bg5f.mjs} +3 -3
  27. package/dist/{cancel-task-CpZcj7HB.mjs → cancel-task-B6GpgrME.mjs} +2 -2
  28. package/dist/card-BlSUKf2e.mjs +25 -0
  29. package/dist/{cards-DJMTrFQg.mjs → cards-hYVyzntk.mjs} +4 -4
  30. package/dist/ci-CPRKvyWe.mjs +9 -0
  31. package/dist/cli.mjs +43 -39
  32. package/dist/{client-D2ycdMRO.mjs → client-C_5K9lZA.mjs} +16 -11
  33. package/dist/collection-CeaSalia.mjs +21 -0
  34. package/dist/{collection-namespace-C0JcSEwN.mjs → collection-namespace-D0_-6eWp.mjs} +1 -1
  35. package/dist/{content-translation-7qPz-dIU.mjs → content-translation-Bux3aWnt.mjs} +3 -3
  36. package/dist/{copy-BeFjqXXc.mjs → copy-B8HnAc11.mjs} +4 -4
  37. package/dist/{copy-D9-xBYYq.mjs → copy-BAP_y6s1.mjs} +4 -4
  38. package/dist/{copy-flags-DZ5Cy-Gk.mjs → copy-flags-VQzi7vqf.mjs} +1 -1
  39. package/dist/{create-cpxnjNMC.mjs → create-B0l5arU2.mjs} +2 -2
  40. package/dist/{create-Cc07ouKB.mjs → create-BOn7IisH.mjs} +2 -2
  41. package/dist/{create-DJ0Xrpod.mjs → create-BUPy6vmU.mjs} +2 -2
  42. package/dist/{create-BfgTvPvI.mjs → create-BWrIVbLC.mjs} +2 -2
  43. package/dist/{create-ypwRxrcj.mjs → create-BcbdVQr_.mjs} +2 -2
  44. package/dist/{create-DBSpDnaA.mjs → create-Bckej8a2.mjs} +3 -3
  45. package/dist/{create-CLQVeQ0w.mjs → create-BfD4GgYA.mjs} +2 -2
  46. package/dist/{create-Dr-q5oWx2.mjs → create-BmEECHlW2.mjs} +4 -4
  47. package/dist/{create-Dj5y7xbA.mjs → create-CH2ebn9r.mjs} +4 -4
  48. package/dist/{create-DIZGUCFE.mjs → create-CUcwiQgH.mjs} +2 -2
  49. package/dist/{create-Ba8nYAWL.mjs → create-C_5-HH9u.mjs} +3 -3
  50. package/dist/{create-D4FT8Xj8.mjs → create-CzVYAVbb.mjs} +3 -3
  51. package/dist/{create-BlYxQv6U.mjs → create-D70fh_7H.mjs} +2 -2
  52. package/dist/{create-CplN1ey8.mjs → create-DF7jPhn1.mjs} +2 -2
  53. package/dist/{create-n5cH8Tq-.mjs → create-DNkqcne5.mjs} +2 -2
  54. package/dist/{create--eZb0G2P.mjs → create-Dd_NNxYT.mjs} +2 -2
  55. package/dist/{create-DBCOYtqn.mjs → create-DqtqJZa8.mjs} +2 -2
  56. package/dist/create-Ds6gZXFm.mjs +48 -0
  57. package/dist/{create-Dt6gdbAH.mjs → create-Z3UZdGTY.mjs} +3 -3
  58. package/dist/{create-branch-CKQkpU-_.mjs → create-branch-CQyWpIxd.mjs} +2 -2
  59. package/dist/{create-DHTl3wVv.mjs → create-qCZ9z3II.mjs} +2 -2
  60. package/dist/{csv-CxWsxJIB.mjs → csv-CFL145Ta.mjs} +4 -4
  61. package/dist/{current-task-DB7UTh6J.mjs → current-task-l8KZ0nv8.mjs} +2 -2
  62. package/dist/dashboard-CIOXUaBJ.mjs +35 -0
  63. package/dist/{data-action-DLj9cgpu.mjs → data-action-Co_Yf1uC.mjs} +23 -5
  64. package/dist/{data-action-CuvI17XF.mjs → data-action-DAw6WRTH.mjs} +43 -10
  65. package/dist/data-action-_7UX21i9.mjs +24 -0
  66. package/dist/{data-app--T695WPM.mjs → data-app-CxQNqhV2.mjs} +10 -10
  67. package/dist/{data-app-project-DjDDWgUF.mjs → data-app-project-B_zd-YrJ.mjs} +2 -2
  68. package/dist/{db-CpK3QluZ.mjs → db-DlDWN6UP.mjs} +8 -8
  69. package/dist/{delete-TcDfZNz2.mjs → delete-3KVEIg6-.mjs} +4 -4
  70. package/dist/{delete-Bw8CMa_A.mjs → delete-BlLyxBY_.mjs} +4 -4
  71. package/dist/{delete-AwOJ1x-D.mjs → delete-BmPR3qB0.mjs} +4 -4
  72. package/dist/{delete-9YIc_L2E.mjs → delete-CcY_tcx4.mjs} +4 -4
  73. package/dist/{delete-CUzOTiI8.mjs → delete-CfkSkxHN.mjs} +4 -4
  74. package/dist/{delete-CE19WUPi.mjs → delete-D3D0CTo-.mjs} +3 -3
  75. package/dist/{delete-DbAOgu73.mjs → delete-Dj0ImrZL.mjs} +4 -4
  76. package/dist/{delete-trx8NIoh.mjs → delete-DweFD4-0.mjs} +4 -4
  77. package/dist/{delete-B9GABYEJ.mjs → delete-Eje0xxEa.mjs} +4 -4
  78. package/dist/{delete-D784J3ur.mjs → delete-YFXRPnnb.mjs} +4 -4
  79. package/dist/{delete-runtime-DOOy3gzH.mjs → delete-runtime-C05-0fcn.mjs} +1 -1
  80. package/dist/{delete-table-a8acciQe.mjs → delete-table-BqpeGdMY.mjs} +4 -4
  81. package/dist/{dependencies-BcPdAMYB.mjs → dependencies-DhA1jbDT.mjs} +5 -5
  82. package/dist/{dependency-DcM96XJ-.mjs → dependency-BPCRTBKd.mjs} +1 -1
  83. package/dist/dependency-BPwCXzX4.mjs +15 -0
  84. package/dist/{dependents-CRZaiOzg.mjs → dependents-4KgDZ4tl.mjs} +6 -6
  85. package/dist/{dirty-1taTj3G6.mjs → dirty-DWwwmOmi.mjs} +3 -3
  86. package/dist/{discard-values-DmiWAx4J.mjs → discard-values-6nmAd4kW.mjs} +5 -5
  87. package/dist/document-CC60L29U.mjs +20 -0
  88. package/dist/{download-CEvVDGeC.mjs → download-ZCfcKa2L.mjs} +2 -2
  89. package/dist/{eid-pO_lMTI9.mjs → eid-CjLvyBgT.mjs} +2 -2
  90. package/dist/{entry-flags-CswcY8bG.mjs → entry-flags-2u45mDJ4.mjs} +1 -1
  91. package/dist/{events-cGDPEL5_.mjs → events-B_UxJw3Z.mjs} +4 -4
  92. package/dist/{execute-DHGbJpPr.mjs → execute-Dg94sYQd.mjs} +11 -7
  93. package/dist/{export-B0NUSP6q.mjs → export-BdLB30iy.mjs} +3 -3
  94. package/dist/{export-flags-iXfEILf7.mjs → export-flags-DvdxpRMt.mjs} +1 -1
  95. package/dist/{export-preflight-Bbl1bHpI.mjs → export-preflight-ChaWosZf.mjs} +2 -2
  96. package/dist/field-ClWwbYtG.mjs +21 -0
  97. package/dist/{fields-M66PaKdV.mjs → fields-B1cPeIGv.mjs} +4 -4
  98. package/dist/{filter-flags-ezqqsOQL.mjs → filter-flags-BEz2s28-.mjs} +1 -1
  99. package/dist/{fks-BvOGzID5.mjs → fks-DgvW6D_7.mjs} +5 -5
  100. package/dist/{get-Bt2Q516N.mjs → get-B69NUYR0.mjs} +4 -4
  101. package/dist/{get-ZSLfDowg.mjs → get-B94nj2uY.mjs} +2 -2
  102. package/dist/{get-Cfg52y7X.mjs → get-BK7nxbPU.mjs} +2 -2
  103. package/dist/{get-zGreQNnG.mjs → get-BM9AFJAi.mjs} +2 -2
  104. package/dist/{get-jzChrvn2.mjs → get-BYNEZFNj.mjs} +5 -5
  105. package/dist/{get-DGlZtzfB.mjs → get-BxrS4Vi8.mjs} +4 -4
  106. package/dist/{get-CEreA2oN.mjs → get-C_bCGVsR.mjs} +3 -3
  107. package/dist/{get-SOCVdBIU.mjs → get-Ck2LNXxw.mjs} +3 -3
  108. package/dist/{get-BL_9fN-q.mjs → get-CmWe9xq9.mjs} +5 -5
  109. package/dist/{get-DKZLwN3K.mjs → get-D4oXmJTn.mjs} +5 -5
  110. package/dist/{get-CCLnfOOE.mjs → get-DC1lAsH_.mjs} +3 -3
  111. package/dist/{get-D-ElxFlQ.mjs → get-DIR9LODa.mjs} +4 -4
  112. package/dist/{get-0T9zeyCh.mjs → get-DStLX5Ah.mjs} +3 -3
  113. package/dist/{get-wPkejadn.mjs → get-DckpwiZG.mjs} +4 -4
  114. package/dist/{get-HtzPLpy2.mjs → get-DkSvigdw.mjs} +3 -3
  115. package/dist/{get-CJFg7YM5.mjs → get-Dsm_2AXn.mjs} +3 -3
  116. package/dist/{get-uB7jROcz.mjs → get-DuVVF8xb.mjs} +3 -3
  117. package/dist/{get-D-8G7EoL.mjs → get-Ljt0QVR0.mjs} +3 -3
  118. package/dist/{get-B3Ceh_7N.mjs → get-UNjwy8OI.mjs} +3 -3
  119. package/dist/{get-D7y_z5K7.mjs → get-VrzY4qxg.mjs} +2 -2
  120. package/dist/{get-BzIQK_mt.mjs → get-jphhROdg.mjs} +3 -3
  121. package/dist/{get-C3j93ivl.mjs → get-n9udbUQS.mjs} +3 -3
  122. package/dist/{get-run-BZP_z57v.mjs → get-run-D5vfGnIN.mjs} +4 -4
  123. package/dist/git-sync-Bc9pf1LL.mjs +29 -0
  124. package/dist/glossary-CAzA-OIR.mjs +14 -0
  125. package/dist/{graph-CdKi07zZ.mjs → graph-CvIhSOEe.mjs} +4 -4
  126. package/dist/{group--6adAsqG.mjs → group-KiKh0UFs.mjs} +1 -1
  127. package/dist/{has-remote-changes-d_JyzdPX.mjs → has-remote-changes-57yJkr3b.mjs} +2 -2
  128. package/dist/{import-1bK-qrjV.mjs → import-HHsz_zDq.mjs} +3 -3
  129. package/dist/{is-dirty-BXwvuTeD.mjs → is-dirty-CxX_4rBC.mjs} +2 -2
  130. package/dist/{items-Dzh_xylQ.mjs → items-B2NR1_u3.mjs} +3 -3
  131. package/dist/{library-BA1QssFE.mjs → library-DXvOVBTe.mjs} +5 -5
  132. package/dist/{list-DuaFmOCz.mjs → list-B44qweQa.mjs} +3 -3
  133. package/dist/{list-Dn5_L-85.mjs → list-BK4VwtKe.mjs} +3 -3
  134. package/dist/{list-BWNw-ppI.mjs → list-BTpj7dv4.mjs} +5 -5
  135. package/dist/{list-B5D3leO9.mjs → list-BU72dCx0.mjs} +3 -3
  136. package/dist/{list-DHX7-8Ae.mjs → list-BsQHh8w4.mjs} +3 -3
  137. package/dist/{list-0TtkxraU.mjs → list-Bwi5npRx.mjs} +3 -3
  138. package/dist/{list-_jHBfq0E.mjs → list-C6A-Eqgv.mjs} +5 -5
  139. package/dist/{list-DR9dswtK.mjs → list-CNoCRL4D.mjs} +3 -3
  140. package/dist/{list-D_SfsO_-.mjs → list-CY54buuD.mjs} +4 -4
  141. package/dist/{list-DQNbHPNQ.mjs → list-CcZAP1sH.mjs} +5 -5
  142. package/dist/{list-iFtmAfVv.mjs → list-CtW9rAs4.mjs} +3 -3
  143. package/dist/{list-CdpEUPL-.mjs → list-DEQvaioL.mjs} +5 -5
  144. package/dist/{list-CvQlMhrb.mjs → list-DJ0_FcgB.mjs} +6 -6
  145. package/dist/{list-Dv3s_PIu.mjs → list-DJogq3Ez.mjs} +3 -3
  146. package/dist/{list-Dz2YVD7m.mjs → list-DMbtH6tY.mjs} +3 -3
  147. package/dist/{list-7qcWFDXR.mjs → list-DQ5BDB52.mjs} +4 -4
  148. package/dist/{list-B70w2ibG.mjs → list-DhCSllG2.mjs} +3 -3
  149. package/dist/{list-TzuL_7GA.mjs → list-DiN5mPrk.mjs} +3 -3
  150. package/dist/{list-2doqGDIF.mjs → list-Dv8U4e-C.mjs} +3 -3
  151. package/dist/{list-DSi8mf_F.mjs → list-JS7ASJc-.mjs} +4 -4
  152. package/dist/{list-DDV5PylU.mjs → list-L4_At_o9.mjs} +3 -3
  153. package/dist/{list-BjpGurur.mjs → list-l09h4Zp6.mjs} +3 -3
  154. package/dist/{list-B75rzgSi.mjs → list-rA9U_VyF.mjs} +3 -3
  155. package/dist/{login-LAFw5Xxu.mjs → login-DVLN1666.mjs} +33 -16
  156. package/dist/{logout-CjYzDvLH.mjs → logout-BiZxbftK.mjs} +2 -2
  157. package/dist/{measure-DgtOyIoD.mjs → measure-B7Ud8GU1.mjs} +6 -6
  158. package/dist/{notification-BEJaEZS2.mjs → notification-Bj45MgWm.mjs} +1 -1
  159. package/dist/{parameter-values-CRwVLpRD.mjs → parameter-values-BwaIYczs.mjs} +3 -3
  160. package/dist/{parse-id-EXZan40V.mjs → parse-id-BXkvTl89.mjs} +1 -1
  161. package/dist/{path-BA_GGcGN.mjs → path-BbR0QB1I.mjs} +4 -4
  162. package/dist/{poll-vxN__4cz.mjs → poll-D5eA9cN2.mjs} +1 -1
  163. package/dist/{preflight-4iy2qzsh.mjs → preflight-BJ5Bve-N.mjs} +1 -1
  164. package/dist/process-cDa9fEBe.mjs +144 -0
  165. package/dist/{publish--I94MMjp.mjs → publish-d_WnLoJD.mjs} +3 -3
  166. package/dist/{pulse-CPSpum5U.mjs → pulse-DhddeMMG.mjs} +1 -1
  167. package/dist/{query-O1b4qIr4.mjs → query-DFb-XQNz.mjs} +3 -3
  168. package/dist/{query-C8w04b4F.mjs → query-Dkod9Tev.mjs} +4 -4
  169. package/dist/{remapping-BdX4nj-U.mjs → remapping-clW2Rgcz.mjs} +3 -3
  170. package/dist/{remove-collection-dltKu8LO.mjs → remove-collection-CjRtrkLW.mjs} +3 -3
  171. package/dist/{render-DK2j4BwQ.mjs → render-C_Oy6cF5.mjs} +1 -1
  172. package/dist/{replace-BfO6UFZN.mjs → replace-8hEY7br8.mjs} +4 -4
  173. package/dist/{requirement-check-1fcffJj6.mjs → requirement-check-B7MNfiXv.mjs} +2 -2
  174. package/dist/{rescan-values-0-c5Gqtx.mjs → rescan-values-0owEJyWj.mjs} +4 -4
  175. package/dist/{rescan-values-7bbNa7WZ.mjs → rescan-values-DaEu5sVZ.mjs} +3 -3
  176. package/dist/{run-BS_wUAsi.mjs → run-BlCJ0MYm.mjs} +4 -4
  177. package/dist/{run-Cf1nJahe.mjs → run-CXv_3NQt.mjs} +3 -3
  178. package/dist/{run-5b123gPi.mjs → run-Cr7QHB5S.mjs} +6 -6
  179. package/dist/run-Dc3u_olU.mjs +819 -0
  180. package/dist/{runs-BJ4uy05c.mjs → runs-624fiVP3.mjs} +5 -5
  181. package/dist/{runtime-D5yfliIq.mjs → runtime-DsfR_yrb.mjs} +78 -40
  182. package/dist/{scaffold-aUy3Ik4q.mjs → scaffold-D4Jo6VQc.mjs} +4 -4
  183. package/dist/{schema-Ds_j3N1I.mjs → schema-DXsx2_Mk.mjs} +2 -2
  184. package/dist/{schema-tables-BuFF9Psy.mjs → schema-tables-Bat1bYLS.mjs} +5 -5
  185. package/dist/{schemas-DaDsur6B.mjs → schemas-B8bgnxOA.mjs} +4 -4
  186. package/dist/{search-CTZzUd_j.mjs → search-BslDGFtS.mjs} +4 -4
  187. package/dist/{search-BcJgmPU3.mjs → search-fXh_MkLZ.mjs} +4 -4
  188. package/dist/{segment-zy4VVraQ.mjs → segment-Bb7JTPmv.mjs} +6 -6
  189. package/dist/{send-D0ikejQU.mjs → send-YnL6iiOt.mjs} +3 -3
  190. package/dist/{set-CjAaw2ZL.mjs → set-CydWEHNW.mjs} +2 -2
  191. package/dist/{set-active-BQjKw1wk.mjs → set-active-C-x_A0AY.mjs} +2 -2
  192. package/dist/{set-bundle-6Qknum1I.mjs → set-bundle-DaHlkEYA.mjs} +5 -5
  193. package/dist/{set-data-actions-LcWEP4RO.mjs → set-data-actions-C3NwuCSF.mjs} +3 -3
  194. package/dist/{set-enabled-C8Yww7Yv.mjs → set-enabled-CjUOudzn.mjs} +2 -2
  195. package/dist/{set-sensitivity-OVcL2PbY.mjs → set-sensitivity-DAodU0MG.mjs} +3 -3
  196. package/dist/{setting-BsIBFvRP.mjs → setting-Bil7qFf0.mjs} +4 -4
  197. package/dist/{setup-BxUd_KYl.mjs → setup-B8GRygkY.mjs} +2 -2
  198. package/dist/{skill-list-BoJITnw8.mjs → skill-list-4LagdTq5.mjs} +1 -1
  199. package/dist/{skills-CQRgUHI3.mjs → skills-CW1wIl0c.mjs} +3 -3
  200. package/dist/{skills-BQBerRAk.mjs → skills-DYfZF1GA.mjs} +4 -39
  201. package/dist/snippet-D9g83-mO.mjs +19 -0
  202. package/dist/{stash-BGqpcbSW.mjs → stash-T0WRHnFD.mjs} +3 -3
  203. package/dist/{status-_wPMW1wq.mjs → status-BRMzSa12.mjs} +3 -3
  204. package/dist/{status-CcOJIgfB.mjs → status-CW1bsfaP.mjs} +2 -2
  205. package/dist/{subscription-CqUIrnUJ.mjs → subscription-Edc8UK2V.mjs} +6 -6
  206. package/dist/{subscriptions-BP83ctRX.mjs → subscriptions-DMiWl84r.mjs} +6 -6
  207. package/dist/{summary-Byz6Y1v-.mjs → summary-CFnwsMoV.mjs} +3 -3
  208. package/dist/{sync-schema-DQBHc3bt.mjs → sync-schema-COvbx-g4.mjs} +4 -4
  209. package/dist/{sync-schema-BJ-AtcCq.mjs → sync-schema-VzwA_5tH.mjs} +4 -4
  210. package/dist/table-CC-rFakp.mjs +26 -0
  211. package/dist/{table-BNA9Or05.mjs → table-DFbkLSgK.mjs} +1 -1
  212. package/dist/{table-selector-flags-BpFFoSaT.mjs → table-selector-flags-BhZo8RHH.mjs} +2 -2
  213. package/dist/timeline-C2ZUL_9F.mjs +21 -0
  214. package/dist/{timeline-event-BHfAXJrB.mjs → timeline-event-BqM82_7L.mjs} +6 -6
  215. package/dist/transform-BtB6iOJ9.mjs +28 -0
  216. package/dist/{transform-DKPtUV54.mjs → transform-CKeLIqoc.mjs} +1 -1
  217. package/dist/transform-job-I2Q5f0yN.mjs +22 -0
  218. package/dist/{transform-tag-DZEvmwxY.mjs → transform-tag-CxXDADhM.mjs} +5 -5
  219. package/dist/transform-test-B6jvvXeh.mjs +16 -0
  220. package/dist/{transform-test-C49ZTK7M.mjs → transform-test-C0c4zjcf.mjs} +1 -1
  221. package/dist/{transform-test-Bexa_K89.mjs → transform-test-DHTxBt4k.mjs} +2 -2
  222. package/dist/{transforms-D1wwWdCY.mjs → transforms-WyRUDM1j.mjs} +5 -5
  223. package/dist/{transport-BWixD5Ww.mjs → transport-Byycx3RW.mjs} +3 -4
  224. package/dist/{tree-IymKTTCK.mjs → tree-CMeV4bI8.mjs} +2 -2
  225. package/dist/{typed-schema-gaIKntyu.mjs → typed-schema-DsGXH-La.mjs} +3 -3
  226. package/dist/{unpublish-BnP0O_S2.mjs → unpublish-EaVPnnZ5.mjs} +3 -3
  227. package/dist/{unreferenced-DDkcn8EQ.mjs → unreferenced-BvE7ke0M.mjs} +5 -5
  228. package/dist/{update-CKrLtJWZ.mjs → update--uKYjq9_.mjs} +4 -4
  229. package/dist/{update-C_VV1SP8.mjs → update-B8EnadKJ.mjs} +3 -3
  230. package/dist/{update-CFkOEnUu.mjs → update-BDghcetp.mjs} +3 -3
  231. package/dist/{update-DL1Iex_M.mjs → update-BPhLIVs9.mjs} +2 -2
  232. package/dist/{update-DntKWUl2.mjs → update-BSWoKNrf.mjs} +3 -3
  233. package/dist/{update-BsEG1dRm.mjs → update-Bb1HPTH2.mjs} +4 -4
  234. package/dist/{update-Cga4lrX5.mjs → update-BgQ9TU63.mjs} +5 -5
  235. package/dist/{update-gAPjldWw.mjs → update-BtWR4ri9.mjs} +3 -3
  236. package/dist/{update-ReSzm23m.mjs → update-CFYVJJqw.mjs} +3 -3
  237. package/dist/{update-D9eA9UOf.mjs → update-CNzu9eG1.mjs} +5 -5
  238. package/dist/{update-K8FwdJEV.mjs → update-CT9e8m-I.mjs} +3 -3
  239. package/dist/{update-BAocDvnS.mjs → update-DZPo69an.mjs} +4 -4
  240. package/dist/{update-Bfws2FN2.mjs → update-Dcwpy8BO.mjs} +3 -3
  241. package/dist/{update-CgJwzutJ.mjs → update-DjBJQCNg.mjs} +3 -3
  242. package/dist/{update-C0p1E-hs.mjs → update-DrY4i6eO.mjs} +4 -4
  243. package/dist/{update-D9fs-PSK.mjs → update-DwGo58Kc.mjs} +4 -4
  244. package/dist/{update-BemK_tZ_.mjs → update-DyXj5mTv.mjs} +3 -3
  245. package/dist/{update-dashcard-Bpv45o1_.mjs → update-dashcard-BhT2FBd4.mjs} +3 -3
  246. package/dist/{update-BiBazvzY.mjs → update-t2zdccd5.mjs} +5 -5
  247. package/dist/{update-CsH0lSpQ2.mjs → update-wh2EjN242.mjs} +3 -3
  248. package/dist/{update-CyfLXFKR.mjs → update-xYxKw2UB.mjs} +3 -3
  249. package/dist/{upgrade-D3aDQZwd.mjs → upgrade-BqBjnjjU.mjs} +3 -4
  250. package/dist/upload-C0GfBUvp.mjs +13 -0
  251. package/dist/{upload-BAD_9okY.mjs → upload-D0zRTkyv.mjs} +1 -1
  252. package/dist/{upload-B8HbBXb8.mjs → upload-kM0-7Bx2.mjs} +3 -3
  253. package/dist/{uuid-BIDBDPLI.mjs → uuid-DsuYe9z7.mjs} +2 -2
  254. package/dist/{values-BDekphEw.mjs → values-kLEvyjSy.mjs} +3 -3
  255. package/dist/{verify-k0WHgc16.mjs → verify-ChvmI4lq.mjs} +3 -3
  256. package/dist/{verify-CMTrDvAW.mjs → verify-CvYsiaqY.mjs} +3 -3
  257. package/dist/{verify-BnZqq9Aw.mjs → verify-D27n5y3t.mjs} +3 -3
  258. package/dist/{wait-C69z8PSw.mjs → wait-DioDMGLJ.mjs} +4 -4
  259. package/dist/{wait-flags-C3cu_O0w.mjs → wait-flags-Qqvlb3Rv.mjs} +2 -2
  260. package/dist/{window-D1w7B0vh.mjs → window-BoW2xWwm.mjs} +1 -1
  261. package/dist/yaml-QoEP-7KU.mjs +38 -0
  262. package/package.json +1 -1
  263. package/skill-data/core/SKILL.md +1 -1
  264. package/skill-data/data-action/SKILL.md +50 -18
  265. package/skill-data/data-app/SKILL.md +3 -3
  266. package/skill-data/data-app/template/README.md +6 -2
  267. package/skill-data/data-app/template/gitignore +1 -1
  268. package/skill-data/data-app/template/package.json +1 -0
  269. package/skill-data/data-app-actions/SKILL.md +11 -5
  270. package/skill-data/mbql/SKILL.md +2 -2
  271. package/dist/api-key-DJfhPe4x.mjs +0 -13
  272. package/dist/card-nOX_QJ9u.mjs +0 -25
  273. package/dist/collection-Cs84x7WB.mjs +0 -21
  274. package/dist/create-B57Sj0om.mjs +0 -47
  275. package/dist/dashboard-DeSaOt2Z.mjs +0 -35
  276. package/dist/data-action-Dpt7pfzd.mjs +0 -24
  277. package/dist/dependency-_SgcW_fL.mjs +0 -15
  278. package/dist/document-DB6YGtqX.mjs +0 -20
  279. package/dist/field-AkNMIQnx.mjs +0 -21
  280. package/dist/git-sync-DaHnqpYi.mjs +0 -29
  281. package/dist/glossary-Br_mSh3i.mjs +0 -14
  282. package/dist/process-BQC3mK2k.mjs +0 -71
  283. package/dist/signal-BNUlQjpc.mjs +0 -25
  284. package/dist/snippet-CRLI3fYI.mjs +0 -19
  285. package/dist/table-nIdBLcz7.mjs +0 -26
  286. package/dist/timeline-Cw581KRT.mjs +0 -21
  287. package/dist/transform-job-sCgr8r-t.mjs +0 -22
  288. package/dist/transform-l1oC8oUS.mjs +0 -28
  289. package/dist/transform-test-hxkx6M8c.mjs +0 -16
  290. package/dist/upload-BqJLNCb1.mjs +0 -13
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as TimelineCompact } from "./timeline-DcsCXNUt.mjs";
5
5
  import { n as timelineView } from "./timeline-BgWz8DYK.mjs";
6
6
  //#region src/commands/timeline/list.ts
@@ -1,8 +1,8 @@
1
- import { T as warn, _t as listEnvelopeSchemaWithExtras, c as renderListWithExtras, lt as outputFlags, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { r as readCachedServerProfile, s as resolveProfileName, t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
4
- import { i as loadVisibleSkills, o as selectForProfile } from "./skills-BQBerRAk.mjs";
5
- import { i as unfilteredFlag, n as renderSkillList, r as skillFilterNotices, t as UnavailableSkills } from "./skill-list-BoJITnw8.mjs";
1
+ import { E as warn, c as renderListWithExtras, ct as listFlags, dt as profileFlag, ut as outputFlags, vt as listEnvelopeSchemaWithExtras } from "./cli.mjs";
2
+ import { r as readCachedServerProfile, s as resolveProfileName, t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
+ import { i as loadVisibleSkills, o as selectForProfile } from "./skills-DYfZF1GA.mjs";
5
+ import { i as unfilteredFlag, n as renderSkillList, r as skillFilterNotices, t as UnavailableSkills } from "./skill-list-4LagdTq5.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/skills/list.ts
8
8
  const SkillSummary = z.object({
@@ -1,9 +1,9 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
3
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
4
- import { n as windowList } from "./window-D1w7B0vh.mjs";
5
- import { n as TransformTestCompact } from "./transform-test-Bexa_K89.mjs";
6
- import { n as transformTestView } from "./transform-test-C49ZTK7M.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
3
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
5
+ import { n as TransformTestCompact } from "./transform-test-DHTxBt4k.mjs";
6
+ import { n as transformTestView } from "./transform-test-C0c4zjcf.mjs";
7
7
  //#region src/commands/transform-test/list.ts
8
8
  const TransformTestListEnvelope = listEnvelopeSchema(TransformTestCompact);
9
9
  var list_default = defineMetabaseCommand({
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag, xt as parseEnum } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { St as parseEnum, _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { i as DatabaseListInclude, n as DatabaseCompact } from "./database-C5ucihp3.mjs";
5
5
  import { r as databaseView } from "./database-u_spHEa0.mjs";
6
6
  //#region src/commands/db/list.ts
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as ApiKeyCompact } from "./api-key-DbsqHlN6.mjs";
5
5
  import { t as apiKeyView } from "./api-key-9jVV67hF.mjs";
6
6
  //#region src/commands/api-key/list.ts
@@ -1,8 +1,8 @@
1
- import { gt as listEnvelopeSchema, ht as parseOptionalInteger, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, gt as parseOptionalInteger, s as renderList, ut as outputFlags } from "./cli.mjs";
2
2
  import { a as NotificationCompact } from "./notification-B5yMuPmo.mjs";
3
- import { t as notificationView } from "./notification-BEJaEZS2.mjs";
4
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
5
- import { n as windowList } from "./window-D1w7B0vh.mjs";
3
+ import { t as notificationView } from "./notification-Bj45MgWm.mjs";
4
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
5
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
6
6
  //#region src/commands/alert/list.ts
7
7
  const AlertListEnvelope = listEnvelopeSchema(NotificationCompact);
8
8
  var list_default = defineMetabaseCommand({
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as SnippetCompact } from "./snippet-CyKAgIZl.mjs";
5
5
  import { t as snippetView } from "./snippet-oJLaYW9V.mjs";
6
6
  //#region src/commands/snippet/list.ts
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { r as TransformJobCompact } from "./transform-job-CDIb3B9o.mjs";
5
5
  import { t as transformJobView } from "./transform-job-D18XRLBK.mjs";
6
6
  //#region src/commands/transform-job/list.ts
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as DataAppCompact } from "./data-app-BUW-HlUo.mjs";
5
5
  import { t as dataAppView } from "./data-app-Blz61mG5.mjs";
6
6
  //#region src/commands/data-app/list.ts
@@ -1,8 +1,8 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as TransformCompact } from "./transform-B62craFM.mjs";
5
- import { n as transformView } from "./transform-DKPtUV54.mjs";
5
+ import { n as transformView } from "./transform-CKeLIqoc.mjs";
6
6
  //#region src/commands/transform/list.ts
7
7
  const TransformListEnvelope = listEnvelopeSchema(TransformCompact);
8
8
  var list_default = defineMetabaseCommand({
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { a as CardListFilter, n as CardCompact } from "./card-BJRZ5D5Q.mjs";
5
5
  import { n as cardView } from "./card-VipF12MJ.mjs";
6
6
  import { t as parseEnumFlag } from "./parse-enum-CEXPuN9H.mjs";
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as SettingCompact } from "./setting-DTiLCW8g.mjs";
5
5
  import { n as settingView } from "./setting-CwRYgHYN.mjs";
6
6
  //#region src/commands/setting/list.ts
@@ -1,6 +1,6 @@
1
- import { gt as listEnvelopeSchema, it as connectionFlags, lt as outputFlags, s as renderList, st as listFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
1
+ import { _t as listEnvelopeSchema, at as connectionFlags, ct as listFlags, dt as profileFlag, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
4
  import { n as SegmentCompact } from "./segment-Cf-DrdjE.mjs";
5
5
  import { t as segmentView } from "./segment-CWVASaM1.mjs";
6
6
  //#region src/commands/segment/list.ts
@@ -1,9 +1,9 @@
1
1
  import { g as errorMessage, o as ConfigError, p as TimeoutError, u as NetworkError } from "./predicates-0C0TsWcJ.mjs";
2
- import { T as warn, b as promptSelect, it as connectionFlags, l as renderSummary, lt as outputFlags, t as interruptSignal, ut as profileFlag, x as promptText, y as promptPassword } from "./cli.mjs";
3
- import { A as revokeOAuthCredential, E as USER_AGENT, F as tryDiscoverMetadata, J as normalizeUrl, K as oauthCredentialFromTokens, M as discoverLoginMetadata, N as exchangeCode, P as registerClient, T as OAUTH_CLIENT_NAME, X as summarizeServer, Y as ServerSummary, _ as writeOAuthProfile, a as explicitProfileName, b as writeProfile, c as DEFAULT_PROFILE, d as consumeKeyringDowngradeWarning, f as keyringFallbackWarning, j as OAUTH_SCOPE, k as readInput, o as readEnvCredentials, t as defineMetabaseCommand, u as consumeKeychainResidualWarning, v as writeProbeFailure, x as ProbedUser, y as writeProbeResult } from "./runtime-D5yfliIq.mjs";
4
- import { t as verifyAndProbe } from "./verify-k0WHgc16.mjs";
5
- import { a as renderUserRole, i as renderUserName, n as renderSkew, o as renderVersionTag } from "./render-DK2j4BwQ.mjs";
6
- import { t as openBrowser } from "./process-BQC3mK2k.mjs";
2
+ import { E as warn, S as promptText, at as connectionFlags, b as promptPassword, dt as profileFlag, l as renderSummary, t as interruptSignal, ut as outputFlags, x as promptSelect } from "./cli.mjs";
3
+ import { $ as ServerSummary, A as revokeOAuthCredential, E as USER_AGENT, F as tryDiscoverMetadata, G as untilAborted, K as whenAborted, M as discoverLoginMetadata, N as exchangeCode, P as registerClient, Q as normalizeUrl, T as OAUTH_CLIENT_NAME, W as throwIfAborted, X as oauthCredentialFromTokens, _ as writeOAuthProfile, a as explicitProfileName, b as writeProfile, c as DEFAULT_PROFILE, d as consumeKeyringDowngradeWarning, et as summarizeServer, f as keyringFallbackWarning, j as OAUTH_SCOPE, k as readInput, o as readEnvCredentials, t as defineMetabaseCommand, u as consumeKeychainResidualWarning, v as writeProbeFailure, x as ProbedUser, y as writeProbeResult } from "./runtime-DsfR_yrb.mjs";
4
+ import { t as verifyAndProbe } from "./verify-ChvmI4lq.mjs";
5
+ import { a as renderUserRole, i as renderUserName, n as renderSkew, o as renderVersionTag } from "./render-C_Oy6cF5.mjs";
6
+ import { n as openBrowser } from "./process-cDa9fEBe.mjs";
7
7
  import { z } from "zod";
8
8
  import { createServer } from "node:http";
9
9
  import { createHash, randomBytes } from "node:crypto";
@@ -43,11 +43,13 @@ function serverPort(server) {
43
43
  if (address === null || typeof address === "string") throw new ConfigError("could not determine loopback callback port");
44
44
  return address.port;
45
45
  }
46
- function startCallbackServer(expectedState, timeoutMs = DEFAULT_TIMEOUT_MS) {
46
+ function startCallbackServer(expectedState, timeoutMs = DEFAULT_TIMEOUT_MS, signal) {
47
47
  return new Promise((resolveServer, rejectServer) => {
48
+ throwIfAborted(signal);
48
49
  let settle = null;
49
50
  let fail = null;
50
51
  let outcome = null;
52
+ let closed = false;
51
53
  const server = createServer((req, res) => {
52
54
  const rawUrl = req.url ?? "";
53
55
  if (!isCallbackPath(rawUrl)) {
@@ -86,11 +88,28 @@ function startCallbackServer(expectedState, timeoutMs = DEFAULT_TIMEOUT_MS) {
86
88
  deliver(new ConfigError(`timed out waiting for browser login after ${timeoutMs}ms`));
87
89
  }, timeoutMs);
88
90
  timer.unref();
91
+ const stopWatchingAbort = whenAborted(signal, (reason) => {
92
+ rejectServer(reason);
93
+ deliver(reason);
94
+ close();
95
+ });
96
+ function close() {
97
+ closed = true;
98
+ clearTimeout(timer);
99
+ stopWatchingAbort();
100
+ server.close();
101
+ server.closeAllConnections();
102
+ }
89
103
  server.on("error", (error) => {
90
104
  rejectServer(error);
91
105
  deliver(error);
106
+ close();
92
107
  });
93
108
  server.listen(0, LOOPBACK_HOST, () => {
109
+ if (closed) {
110
+ server.close();
111
+ return;
112
+ }
94
113
  const port = serverPort(server);
95
114
  resolveServer({
96
115
  redirectUri: `http://${LOOPBACK_HOST}:${port}${CALLBACK_PATH}`,
@@ -105,11 +124,7 @@ function startCallbackServer(expectedState, timeoutMs = DEFAULT_TIMEOUT_MS) {
105
124
  fail = reject;
106
125
  });
107
126
  },
108
- close() {
109
- clearTimeout(timer);
110
- server.close();
111
- server.closeAllConnections();
112
- }
127
+ close
113
128
  });
114
129
  });
115
130
  });
@@ -143,14 +158,15 @@ async function resolveClientId(input, registrationEndpoint, redirectUri) {
143
158
  registrationEndpoint,
144
159
  redirectUri,
145
160
  clientName: input.clientName,
146
- userAgent: input.userAgent
161
+ userAgent: input.userAgent,
162
+ signal: input.signal
147
163
  })).client_id;
148
164
  }
149
165
  async function oauthLogin(input, deps) {
150
- const metadata = input.metadata ?? await discoverLoginMetadata(input.baseUrl, input.userAgent);
166
+ const metadata = input.metadata ?? await discoverLoginMetadata(input.baseUrl, input.userAgent, input.signal);
151
167
  const pkce = generatePkce();
152
168
  const state = randomState();
153
- const server = await startCallbackServer(state, input.timeoutMs);
169
+ const server = await startCallbackServer(state, input.timeoutMs, input.signal);
154
170
  try {
155
171
  const clientId = await resolveClientId(input, metadata.registration_endpoint, server.redirectUri);
156
172
  const authorizeUrl = buildAuthorizeUrl(metadata.authorization_endpoint, {
@@ -162,7 +178,7 @@ async function oauthLogin(input, deps) {
162
178
  state,
163
179
  scope: OAUTH_SCOPE
164
180
  });
165
- const opened = await deps.openBrowser(authorizeUrl);
181
+ const opened = await untilAborted(deps.openBrowser(authorizeUrl), input.signal);
166
182
  deps.onAuthorizeUrl(authorizeUrl, opened);
167
183
  const callback = await server.waitForCallback();
168
184
  const tokens = await exchangeCode({
@@ -171,7 +187,8 @@ async function oauthLogin(input, deps) {
171
187
  redirectUri: server.redirectUri,
172
188
  clientId,
173
189
  codeVerifier: pkce.verifier,
174
- userAgent: input.userAgent
190
+ userAgent: input.userAgent,
191
+ signal: input.signal
175
192
  });
176
193
  if (tokens.refresh_token === void 0) throw new ConfigError("token endpoint did not return a refresh token");
177
194
  return oauthCredentialFromTokens(tokens, tokens.refresh_token, clientId, deps.now());
@@ -1,6 +1,6 @@
1
1
  import { g as errorMessage } from "./predicates-0C0TsWcJ.mjs";
2
- import { T as warn, l as renderSummary, lt as outputFlags, ut as profileFlag, v as promptConfirm } from "./cli.mjs";
3
- import { A as revokeOAuthCredential, E as USER_AGENT, l as clearProfile, m as readProfileCredential, s as resolveProfileName, t as defineMetabaseCommand, u as consumeKeychainResidualWarning } from "./runtime-D5yfliIq.mjs";
2
+ import { E as warn, dt as profileFlag, l as renderSummary, ut as outputFlags, y as promptConfirm } from "./cli.mjs";
3
+ import { A as revokeOAuthCredential, E as USER_AGENT, l as clearProfile, m as readProfileCredential, s as resolveProfileName, t as defineMetabaseCommand, u as consumeKeychainResidualWarning } from "./runtime-DsfR_yrb.mjs";
4
4
  import { z } from "zod";
5
5
  //#region src/commands/auth/logout.ts
6
6
  const LogoutResult = z.object({
@@ -1,4 +1,4 @@
1
- import { t as defineCommandGroup } from "./group--6adAsqG.mjs";
1
+ import { t as defineCommandGroup } from "./group-KiKh0UFs.mjs";
2
2
  //#region src/commands/measure/index.ts
3
3
  var measure_default = defineCommandGroup({
4
4
  name: "measure",
@@ -11,11 +11,11 @@ var measure_default = defineCommandGroup({
11
11
  purpose: "define reusable measures"
12
12
  }],
13
13
  subCommands: {
14
- list: () => import("./list-DuaFmOCz.mjs").then((mod) => mod.default),
15
- get: () => import("./get-D-8G7EoL.mjs").then((mod) => mod.default),
16
- create: () => import("./create-ypwRxrcj.mjs").then((mod) => mod.default),
17
- update: () => import("./update-DntKWUl2.mjs").then((mod) => mod.default),
18
- archive: () => import("./archive-BTxrM_x2.mjs").then((mod) => mod.default)
14
+ list: () => import("./list-B44qweQa.mjs").then((mod) => mod.default),
15
+ get: () => import("./get-Ljt0QVR0.mjs").then((mod) => mod.default),
16
+ create: () => import("./create-BcbdVQr_.mjs").then((mod) => mod.default),
17
+ update: () => import("./update-BSWoKNrf.mjs").then((mod) => mod.default),
18
+ archive: () => import("./archive-CgcNck0G.mjs").then((mod) => mod.default)
19
19
  }
20
20
  });
21
21
  //#endregion
@@ -1,4 +1,4 @@
1
- import { m as MALFORMED_CELL } from "./cli.mjs";
1
+ import { h as MALFORMED_CELL } from "./cli.mjs";
2
2
  import { a as NotificationCompact, c as NotificationSubscription, i as NotificationCardPayload, s as NotificationHandler } from "./notification-B5yMuPmo.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/output/views/notification.ts
@@ -1,7 +1,7 @@
1
1
  import { o as ConfigError } from "./predicates-0C0TsWcJ.mjs";
2
- import { X as parseJson, it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
3
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
4
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
2
+ import { Z as parseJson, at as connectionFlags, dt as profileFlag, l as renderSummary, ut as outputFlags } from "./cli.mjs";
3
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
4
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
5
5
  import { a as ParameterValuesCompact, i as ParameterValues } from "./parameter-Bucz3cLJ.mjs";
6
6
  import { l as DashboardParameterConstraints } from "./dashboard-Cwsf-e9T.mjs";
7
7
  //#region src/output/views/parameter.ts
@@ -1,4 +1,4 @@
1
- import { mt as parseInteger } from "./cli.mjs";
1
+ import { ht as parseInteger } from "./cli.mjs";
2
2
  //#region src/commands/parse-id.ts
3
3
  function parseId(value, name = "id") {
4
4
  return parseInteger(value, {
@@ -1,7 +1,7 @@
1
- import { gt as listEnvelopeSchema, lt as outputFlags, s as renderList, st as listFlags } from "./cli.mjs";
2
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
3
- import { n as windowList } from "./window-D1w7B0vh.mjs";
4
- import { i as loadVisibleSkills, n as findSkillByName, r as loadAllSkills } from "./skills-BQBerRAk.mjs";
1
+ import { _t as listEnvelopeSchema, ct as listFlags, s as renderList, ut as outputFlags } from "./cli.mjs";
2
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
3
+ import { n as windowList } from "./window-BoW2xWwm.mjs";
4
+ import { i as loadVisibleSkills, n as findSkillByName, r as loadAllSkills } from "./skills-DYfZF1GA.mjs";
5
5
  import { z } from "zod";
6
6
  //#region src/commands/skills/path.ts
7
7
  const SkillPath = z.object({
@@ -1,5 +1,5 @@
1
1
  import { p as TimeoutError } from "./predicates-0C0TsWcJ.mjs";
2
- import { n as throwIfAborted, t as combineAborts } from "./signal-BNUlQjpc.mjs";
2
+ import { U as combineAborts, W as throwIfAborted } from "./runtime-DsfR_yrb.mjs";
3
3
  import { setTimeout } from "node:timers/promises";
4
4
  //#region ../client/src/poll.ts
5
5
  const DEFAULT_INTERVAL_MS = 2e3;
@@ -1,5 +1,5 @@
1
1
  import { l as MetabaseError, o as ConfigError } from "./predicates-0C0TsWcJ.mjs";
2
- import { f as writeJson, q as chainRequestFailure } from "./cli.mjs";
2
+ import { J as chainRequestFailure, f as writeJson } from "./cli.mjs";
3
3
  import "./validate-moGYlHxB.mjs";
4
4
  //#region src/commands/dashboard/preflight.ts
5
5
  async function preflightDashcardCardReferences(client, dashcards) {
@@ -0,0 +1,144 @@
1
+ import { v as isFileNotFoundError } from "./predicates-0C0TsWcJ.mjs";
2
+ import { spawn } from "node:child_process";
3
+ //#region src/runtime/process.ts
4
+ var ProcessNotFoundError = class extends Error {
5
+ command;
6
+ constructor(command) {
7
+ super(`command not found: ${command}`);
8
+ this.name = "ProcessNotFoundError";
9
+ this.command = command;
10
+ }
11
+ };
12
+ var ProcessTimeoutError = class extends Error {
13
+ command;
14
+ timeoutMs;
15
+ constructor(command, timeoutMs) {
16
+ super(`command timed out after ${timeoutMs}ms: ${command}`);
17
+ this.name = "ProcessTimeoutError";
18
+ this.command = command;
19
+ this.timeoutMs = timeoutMs;
20
+ }
21
+ };
22
+ function spawnAndCollect(command, args, options) {
23
+ const timeoutSignal = options.timeoutMs !== void 0 && options.timeoutMs > 0 ? AbortSignal.timeout(options.timeoutMs) : void 0;
24
+ return new Promise((resolve, reject) => {
25
+ const child = spawn(command, args, {
26
+ stdio: [
27
+ "pipe",
28
+ "pipe",
29
+ "pipe"
30
+ ],
31
+ env: options.env ?? process.env,
32
+ ...options.cwd !== void 0 ? { cwd: options.cwd } : {},
33
+ ...timeoutSignal !== void 0 ? {
34
+ signal: timeoutSignal,
35
+ killSignal: "SIGKILL"
36
+ } : {},
37
+ ...options.shell === true ? { shell: true } : {}
38
+ });
39
+ const stdoutChunks = [];
40
+ let stderr = "";
41
+ child.stdout.on("data", (chunk) => {
42
+ stdoutChunks.push(chunk);
43
+ });
44
+ child.stderr.on("data", (chunk) => {
45
+ stderr += chunk.toString("utf8");
46
+ });
47
+ child.on("error", (error) => {
48
+ if (isFileNotFoundError(error)) {
49
+ reject(new ProcessNotFoundError(command));
50
+ return;
51
+ }
52
+ if (timeoutSignal?.aborted) {
53
+ reject(new ProcessTimeoutError(command, options.timeoutMs ?? 0));
54
+ return;
55
+ }
56
+ reject(error);
57
+ });
58
+ child.on("close", (code) => {
59
+ if (timeoutSignal?.aborted) {
60
+ reject(new ProcessTimeoutError(command, options.timeoutMs ?? 0));
61
+ return;
62
+ }
63
+ const stdoutBuffer = Buffer.concat(stdoutChunks);
64
+ resolve({
65
+ stdout: new Uint8Array(stdoutBuffer.buffer, stdoutBuffer.byteOffset, stdoutBuffer.length),
66
+ stderr,
67
+ exitCode: code
68
+ });
69
+ });
70
+ if (options.stdin === void 0) child.stdin.end();
71
+ else child.stdin.end(options.stdin);
72
+ });
73
+ }
74
+ const stdoutDecoder = new TextDecoder("utf-8");
75
+ async function runProcess(command, args, options = {}) {
76
+ const result = await spawnAndCollect(command, args, options);
77
+ return {
78
+ stdout: stdoutDecoder.decode(result.stdout),
79
+ stderr: result.stderr,
80
+ exitCode: result.exitCode
81
+ };
82
+ }
83
+ function runProcessBinary(command, args, options = {}) {
84
+ return spawnAndCollect(command, args, options);
85
+ }
86
+ function streamProcess(command, args, options = {}) {
87
+ return new Promise((resolve, reject) => {
88
+ const child = spawn(command, args, {
89
+ stdio: "inherit",
90
+ ...options.shell === true ? { shell: true } : {}
91
+ });
92
+ child.on("error", (error) => {
93
+ if (isFileNotFoundError(error)) {
94
+ reject(new ProcessNotFoundError(command));
95
+ return;
96
+ }
97
+ reject(error);
98
+ });
99
+ child.on("close", (code) => resolve(code));
100
+ });
101
+ }
102
+ const CMD_METACHARACTERS = /[&|<>^()"%!]/g;
103
+ function escapeForCmd(value) {
104
+ return value.replace(CMD_METACHARACTERS, (char) => `^${char}`);
105
+ }
106
+ function browserOpener(platform, url) {
107
+ if (platform === "darwin") return {
108
+ command: "open",
109
+ args: [url],
110
+ windowsVerbatim: false
111
+ };
112
+ if (platform === "win32") return {
113
+ command: "cmd",
114
+ args: [
115
+ "/c",
116
+ "start",
117
+ "\"\"",
118
+ escapeForCmd(url)
119
+ ],
120
+ windowsVerbatim: true
121
+ };
122
+ return {
123
+ command: "xdg-open",
124
+ args: [url],
125
+ windowsVerbatim: false
126
+ };
127
+ }
128
+ function openBrowser(url) {
129
+ const opener = browserOpener(process.platform, url);
130
+ return new Promise((resolve) => {
131
+ const child = spawn(opener.command, opener.args, {
132
+ stdio: "ignore",
133
+ detached: true,
134
+ ...opener.windowsVerbatim ? { windowsVerbatimArguments: true } : {}
135
+ });
136
+ child.on("error", () => resolve(false));
137
+ child.on("spawn", () => {
138
+ child.unref();
139
+ resolve(true);
140
+ });
141
+ });
142
+ }
143
+ //#endregion
144
+ export { streamProcess as a, runProcessBinary as i, openBrowser as n, runProcess as r, ProcessNotFoundError as t };
@@ -1,8 +1,8 @@
1
1
  import { g as errorMessage } from "./predicates-0C0TsWcJ.mjs";
2
- import { T as warn, it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
3
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
2
+ import { E as warn, at as connectionFlags, dt as profileFlag, l as renderSummary, ut as outputFlags } from "./cli.mjs";
3
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
4
  import { a as CollectionCompact, r as Collection } from "./collection-Cz2qLX2m.mjs";
5
- import { i as tableSelectorFlags, n as parseTableSelectors } from "./table-selector-flags-BpFFoSaT.mjs";
5
+ import { i as tableSelectorFlags, n as parseTableSelectors } from "./table-selector-flags-BhZo8RHH.mjs";
6
6
  import { z } from "zod";
7
7
  //#region src/commands/git-sync/sync-scope.ts
8
8
  function isOutsideSyncScope(collection) {
@@ -1,4 +1,4 @@
1
- import { m as MALFORMED_CELL } from "./cli.mjs";
1
+ import { h as MALFORMED_CELL } from "./cli.mjs";
2
2
  import { n as PulseChannel, r as PulseCompact } from "./pulse-B2AmIWsO.mjs";
3
3
  import { z } from "zod";
4
4
  //#region src/output/views/pulse.ts
@@ -1,6 +1,6 @@
1
1
  import { o as ConfigError } from "./predicates-0C0TsWcJ.mjs";
2
- import { K as HttpError, X as parseJson, d as serializeJson, f as writeJson, it as connectionFlags, l as renderSummary, lt as outputFlags, m as MALFORMED_CELL, o as renderItem, q as chainRequestFailure, ut as profileFlag } from "./cli.mjs";
3
- import { n as readJsonBody, t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
2
+ import { J as chainRequestFailure, Z as parseJson, at as connectionFlags, d as serializeJson, dt as profileFlag, f as writeJson, h as MALFORMED_CELL, l as renderSummary, o as renderItem, q as HttpError, ut as outputFlags } from "./cli.mjs";
3
+ import { n as readJsonBody, t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
4
  import { t as bodyInputFlags } from "./body-flags-AqKpN01Y.mjs";
5
5
  import { o as CardQueryResult } from "./card-BJRZ5D5Q.mjs";
6
6
  import { n as Field } from "./field-C2qOViFZ.mjs";
@@ -12,7 +12,7 @@ import { a as VirtualTable, i as QueryMetadataCompact, n as CompiledQueryCompact
12
12
  import { t as cardQueryView } from "./card-VipF12MJ.mjs";
13
13
  import { a as isMbql5Query, n as ValidationOutcome, o as validateQuery, r as assertNotLegacyEnvelopeWrappingMbql5 } from "./validate-moGYlHxB.mjs";
14
14
  import { QUERY_DOCUMENTS, skipValidateFlag } from "./validate-query-Bf5FhhMI.mjs";
15
- import { i as formatQueryResult, n as exportFlags, r as readExportRequest, t as assertStreamedOutput } from "./export-flags-iXfEILf7.mjs";
15
+ import { i as formatQueryResult, n as exportFlags, r as readExportRequest, t as assertStreamedOutput } from "./export-flags-DvdxpRMt.mjs";
16
16
  import { t as pipeToStdout } from "./stream-McixcoUl.mjs";
17
17
  import { z } from "zod";
18
18
  //#region src/output/views/dataset.ts
@@ -1,10 +1,10 @@
1
1
  import { o as ConfigError } from "./predicates-0C0TsWcJ.mjs";
2
- import { X as parseJson, ht as parseOptionalInteger, it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
3
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
4
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
2
+ import { Z as parseJson, at as connectionFlags, dt as profileFlag, gt as parseOptionalInteger, l as renderSummary, ut as outputFlags } from "./cli.mjs";
3
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
4
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
5
5
  import { o as CardQueryResult } from "./card-BJRZ5D5Q.mjs";
6
6
  import { t as cardQueryView } from "./card-VipF12MJ.mjs";
7
- import { i as formatQueryResult, n as exportFlags, r as readExportRequest, t as assertStreamedOutput } from "./export-flags-iXfEILf7.mjs";
7
+ import { i as formatQueryResult, n as exportFlags, r as readExportRequest, t as assertStreamedOutput } from "./export-flags-DvdxpRMt.mjs";
8
8
  import { t as pipeToStdout } from "./stream-McixcoUl.mjs";
9
9
  import { z } from "zod";
10
10
  //#region src/commands/card/query.ts
@@ -1,6 +1,6 @@
1
- import { h as formatScalar, it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
3
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
1
+ import { at as connectionFlags, dt as profileFlag, g as formatScalar, l as renderSummary, ut as outputFlags } from "./cli.mjs";
2
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
3
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
4
  import { n as parseText } from "./parse-text-C4LYzIFa.mjs";
5
5
  import { i as fieldRemappingMissView, r as fieldRemappingMatchView, t as FieldRemappingResult, u as toValueLabel } from "./field-CT4r6b92.mjs";
6
6
  //#region src/commands/field/remapping.ts
@@ -1,6 +1,6 @@
1
- import { it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
3
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
1
+ import { at as connectionFlags, dt as profileFlag, l as renderSummary, ut as outputFlags } from "./cli.mjs";
2
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
3
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
4
  import { u as SyncSettingsUpdateResult } from "./git-sync-DP4wQFzm.mjs";
5
5
  import { c as syncSettingsUpdateView } from "./git-sync-D1aKczo6.mjs";
6
6
  //#region src/commands/git-sync/remove-collection.ts
@@ -1,6 +1,6 @@
1
1
  import { x as KNOWN_RANGE } from "./predicates-0C0TsWcJ.mjs";
2
2
  import "./cli.mjs";
3
- import { Z as Skew } from "./runtime-D5yfliIq.mjs";
3
+ import { tt as Skew } from "./runtime-DsfR_yrb.mjs";
4
4
  //#region src/commands/auth/render.ts
5
5
  const SKEW_LABEL = Object.freeze({
6
6
  supported: "supported",
@@ -1,8 +1,8 @@
1
- import { it as connectionFlags, l as renderSummary, lt as outputFlags, ut as profileFlag } from "./cli.mjs";
2
- import { t as parseId } from "./parse-id-EXZan40V.mjs";
3
- import { t as defineMetabaseCommand } from "./runtime-D5yfliIq.mjs";
1
+ import { at as connectionFlags, dt as profileFlag, l as renderSummary, ut as outputFlags } from "./cli.mjs";
2
+ import { t as parseId } from "./parse-id-BXkvTl89.mjs";
3
+ import { t as defineMetabaseCommand } from "./runtime-DsfR_yrb.mjs";
4
4
  import { n as UploadUpdateResult } from "./upload-DAtxBBms.mjs";
5
- import { n as requireUploadFilePath, t as readCsvFile } from "./upload-BAD_9okY.mjs";
5
+ import { n as requireUploadFilePath, t as readCsvFile } from "./upload-D0zRTkyv.mjs";
6
6
  import { n as uploadUpdateResultView } from "./upload-C3z5ZaXA.mjs";
7
7
  //#region src/commands/upload/replace.ts
8
8
  var replace_default = defineMetabaseCommand({