@dylanpiercey/work 0.2.17 → 0.2.19
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/README.md +16 -0
- package/bin/cli/README.md +34 -0
- package/bin/cli/_progress.mjs +68 -0
- package/bin/cli/_repo.mjs +32 -0
- package/bin/cli/_target.mjs +49 -0
- package/bin/cli/agent.mjs +153 -0
- package/bin/cli/branches.mjs +79 -0
- package/bin/cli/config.mjs +175 -0
- package/bin/cli/host.mjs +142 -0
- package/bin/cli/lsp.mjs +117 -0
- package/bin/cli/notify.mjs +53 -0
- package/bin/cli/open.mjs +37 -0
- package/bin/cli/repo.mjs +98 -0
- package/bin/cli/session.mjs +296 -0
- package/bin/cli/skill.mjs +99 -0
- package/bin/cli/stack.mjs +51 -0
- package/bin/cli/status.mjs +86 -0
- package/bin/cli/topic.mjs +585 -0
- package/bin/cli/workspace.mjs +184 -0
- package/bin/work.mjs +411 -80
- package/dist/{_Bj-WwfnW.js → _CsokArOR.js} +183 -59
- package/dist/_L2HNAA_8.js +2 -0
- package/dist/__TCdgPY5.js +173 -0
- package/dist/index.mjs +3917 -2606
- package/dist/public/assets/{_C9jR1P3s.js → _-7Amnss4.js} +1 -1
- package/dist/public/assets/_-7Amnss4.js.br +0 -0
- package/dist/public/assets/_0XXNUttq.js +1 -0
- package/dist/public/assets/{_CIrZGxEf.js → _0sTkxfPx.js} +1 -1
- package/dist/public/assets/_0sTkxfPx.js.br +0 -0
- package/dist/public/assets/_0zzYbK0A.js +1 -0
- package/dist/public/assets/{_CJgqLdsx.js → _1M3oZPSf.js} +1 -1
- package/dist/public/assets/_1M3oZPSf.js.br +0 -0
- package/dist/public/assets/_2O5HnHht.js +1 -0
- package/dist/public/assets/_7WlUaJPH.js +1 -0
- package/dist/public/assets/_8Tr7ByPg.js +1 -0
- package/dist/public/assets/_9AXMmQSO.js +1 -0
- package/dist/public/assets/_B1VqbV-X.js +1 -0
- package/dist/public/assets/{_BxS3xvmE.js → _B9I2AEux.js} +1 -1
- package/dist/public/assets/_B9I2AEux.js.br +0 -0
- package/dist/public/assets/{_DO_4_u2Q.js → _B9qGqvit.js} +1 -1
- package/dist/public/assets/{_CIWiehYG.js → _B9xuaMHt.js} +1 -1
- package/dist/public/assets/_B9xuaMHt.js.br +0 -0
- package/dist/public/assets/{_BqWlTTxo.js → _BAWjkhA8.js} +1 -1
- package/dist/public/assets/_BAWjkhA8.js.br +0 -0
- package/dist/public/assets/{_CNUs2Gqk.js → _BBCzcNZY.js} +1 -1
- package/dist/public/assets/_BBCzcNZY.js.br +0 -0
- package/dist/public/assets/_BBW2szHh.js +1 -0
- package/dist/public/assets/_BCP2Njnu.js +1 -0
- package/dist/public/assets/{_A-jpjc8j.js → _BClUYs-k.js} +1 -1
- package/dist/public/assets/_BClUYs-k.js.br +0 -0
- package/dist/public/assets/{_B5JxE4Sx.js → _BDdZkZRc.js} +1 -1
- package/dist/public/assets/_BDdZkZRc.js.br +0 -0
- package/dist/public/assets/_BEDmGSgS.js +1 -0
- package/dist/public/assets/_BEDmGSgS.js.br +0 -0
- package/dist/public/assets/_BH9BIky6.js +1 -0
- package/dist/public/assets/_BH9BIky6.js.br +0 -0
- package/dist/public/assets/_BLdi8Ee5.js +1 -0
- package/dist/public/assets/{_C449plW0.js → _BPDSQUbl.js} +1 -1
- package/dist/public/assets/_BPDSQUbl.js.br +0 -0
- package/dist/public/assets/{_B19mS3yM.js → _BQW1kIop.js} +1 -1
- package/dist/public/assets/_BQW1kIop.js.br +0 -0
- package/dist/public/assets/_BQeoUfFw.js +1 -0
- package/dist/public/assets/_BRzroLbh.js +1 -0
- package/dist/public/assets/_BSXsTYSe.js +1 -0
- package/dist/public/assets/_BTXDT3Na.js +1 -0
- package/dist/public/assets/_BXm4xeFI.js +1 -0
- package/dist/public/assets/_BY8UeogK.js +1 -0
- package/dist/public/assets/_BYpyhp64.js +1 -0
- package/dist/public/assets/_BYpyhp64.js.br +0 -0
- package/dist/public/assets/_B_Kz7LnY.js +1 -0
- package/dist/public/assets/{_DqGOYRpi.js → _Bcc0Xs64.js} +1 -1
- package/dist/public/assets/_Bcc0Xs64.js.br +0 -0
- package/dist/public/assets/{_Do6b-nfX.js → _BdSsUhCi.js} +1 -1
- package/dist/public/assets/_BdSsUhCi.js.br +0 -0
- package/dist/public/assets/_BdaWssEH.js +1 -0
- package/dist/public/assets/{_BHyWcuOR.js → _BhecGD7y.js} +1 -1
- package/dist/public/assets/_BhecGD7y.js.br +0 -0
- package/dist/public/assets/_Bj9dpPhN.js +1 -0
- package/dist/public/assets/{_DorQTaAa.js → _BjZqS7za.js} +1 -1
- package/dist/public/assets/_BjZqS7za.js.br +0 -0
- package/dist/public/assets/_BkSUiyHK.js +1 -0
- package/dist/public/assets/_BlshXH2Y.js +16 -0
- package/dist/public/assets/_BlshXH2Y.js.br +0 -0
- package/dist/public/assets/_BmX-VP7w.js +1 -0
- package/dist/public/assets/{_v3HPnNBs.js → _BmpOmFbo.js} +1 -1
- package/dist/public/assets/_BmpOmFbo.js.br +0 -0
- package/dist/public/assets/_Bo6YntUl.js +1 -0
- package/dist/public/assets/_BprZx4vg.js +2 -0
- package/dist/public/assets/_BprZx4vg.js.br +0 -0
- package/dist/public/assets/_Bqm7OnIV.js +1 -0
- package/dist/public/assets/_BquBGUNK.js +1 -0
- package/dist/public/assets/_BquBGUNK.js.br +0 -0
- package/dist/public/assets/_BrB66aRZ.js +1 -0
- package/dist/public/assets/{_BA-MNdjL.js → _Bt03HU8S.js} +1 -1
- package/dist/public/assets/{_BTWfPOi-.js → _BtedGrGs.js} +1 -1
- package/dist/public/assets/_BtedGrGs.js.br +0 -0
- package/dist/public/assets/{_DUdEYxV0.js → _C-BYkx5h.js} +1 -1
- package/dist/public/assets/_C-BYkx5h.js.br +0 -0
- package/dist/public/assets/{_BUW_V5kN.js → _C-DhXiEm.js} +1 -1
- package/dist/public/assets/_C-DhXiEm.js.br +0 -0
- package/dist/public/assets/_C-NBFnST.js +1 -0
- package/dist/public/assets/{_BoTzWlXR.js → _C1RigMYD.js} +1 -1
- package/dist/public/assets/_C1RigMYD.js.br +0 -0
- package/dist/public/assets/_C2vRS-ES.js +1 -0
- package/dist/public/assets/{_CrlNjDih.js → _C3fslTAD.js} +1 -1
- package/dist/public/assets/_C3fslTAD.js.br +0 -0
- package/dist/public/assets/{_BuMTHEPk.js → _C4EYjWGn.js} +1 -1
- package/dist/public/assets/_C4EYjWGn.js.br +0 -0
- package/dist/public/assets/{_yp48NYOW.js → _C6Yt6h_R.js} +1 -1
- package/dist/public/assets/_C6Yt6h_R.js.br +0 -0
- package/dist/public/assets/{_cyorvuL1.js → _C7Y4xApK.js} +1 -1
- package/dist/public/assets/_C7Y4xApK.js.br +0 -0
- package/dist/public/assets/{_D4CkNo0r.js → _CB52LkYt.js} +1 -1
- package/dist/public/assets/_CB52LkYt.js.br +0 -0
- package/dist/public/assets/{_CxgPm_xy.js → _CBEKHwUV.js} +1 -1
- package/dist/public/assets/_CBEKHwUV.js.br +0 -0
- package/dist/public/assets/_CBSLBYQF.js +1 -0
- package/dist/public/assets/_CBgzBB_k.js +1 -0
- package/dist/public/assets/_CBgzBB_k.js.br +0 -0
- package/dist/public/assets/{_CCONYsJT.js → _CCoTlnvb.js} +1 -1
- package/dist/public/assets/_CCoTlnvb.js.br +0 -0
- package/dist/public/assets/_CD26To-f.js +1 -0
- package/dist/public/assets/_CDyWgQ0v.js +6 -0
- package/dist/public/assets/_CDyWgQ0v.js.br +0 -0
- package/dist/public/assets/{_vX9d6g5Y.js → _CEC5O89D.js} +1 -1
- package/dist/public/assets/_CEC5O89D.js.br +0 -0
- package/dist/public/assets/_CF2kEAU7.js +1 -0
- package/dist/public/assets/_CFURqbmO.js +1 -0
- package/dist/public/assets/{_Cwtn28hL.js → _CG383oZY.js} +1 -1
- package/dist/public/assets/_CG383oZY.js.br +0 -0
- package/dist/public/assets/_CHNJosg3.js +1 -0
- package/dist/public/assets/{_Cc_GUPR4.js → _CHmEM8Sm.js} +1 -1
- package/dist/public/assets/_CHmEM8Sm.js.br +0 -0
- package/dist/public/assets/_CIfCdAzS.js +1 -0
- package/dist/public/assets/_CKyzH0fl.js +1 -0
- package/dist/public/assets/{_BCB8LQS3.js → _CL8DzBla.js} +1 -1
- package/dist/public/assets/_CL8DzBla.js.br +0 -0
- package/dist/public/assets/_CNYS94C5.js +1 -0
- package/dist/public/assets/_CNhypHJN.js +1 -0
- package/dist/public/assets/_CO-FkxlA.js +1 -0
- package/dist/public/assets/_COiGBSpO.js +1 -0
- package/dist/public/assets/_COvolvRQ.js +1 -0
- package/dist/public/assets/{_Di78jTI-.js → _CPaMvBMG.js} +1 -1
- package/dist/public/assets/_CPaMvBMG.js.br +0 -0
- package/dist/public/assets/{_C7bHTlG1.js → _CPj_VL66.js} +1 -1
- package/dist/public/assets/_CPj_VL66.js.br +0 -0
- package/dist/public/assets/_CQJC8Vx4.js +1 -0
- package/dist/public/assets/_CRHNlzBC.js +1 -0
- package/dist/public/assets/{_C1-Nli75.js → _CToqok6Q.js} +1 -1
- package/dist/public/assets/_CToqok6Q.js.br +0 -0
- package/dist/public/assets/_CUFKkl0B.js +1 -0
- package/dist/public/assets/_CZsOUa-q.js +1 -0
- package/dist/public/assets/{_D8uBvHXU.js → _C_D5TPb7.js} +1 -1
- package/dist/public/assets/_C_D5TPb7.js.br +0 -0
- package/dist/public/assets/_CdHI48v6.js +1 -0
- package/dist/public/assets/{_BfQeZPXW.js → _CdpmkkzR.js} +1 -1
- package/dist/public/assets/_CdpmkkzR.js.br +0 -0
- package/dist/public/assets/{_6klEiBhY.js → _CdtjIoUd.js} +1 -1
- package/dist/public/assets/_CdtjIoUd.js.br +0 -0
- package/dist/public/assets/_Ce9Tv01m.js +1 -0
- package/dist/public/assets/_CeC7Lv10.js +1 -0
- package/dist/public/assets/{_CYhJ6ae-.js → _CfP0f0PU.js} +1 -1
- package/dist/public/assets/_CfP0f0PU.js.br +0 -0
- package/dist/public/assets/_Cg7DH3xk.js +1 -0
- package/dist/public/assets/_Cg7DH3xk.js.br +0 -0
- package/dist/public/assets/_CikNq0z8.js +1 -0
- package/dist/public/assets/{_DK-MOyi_.js → _Cl7LTITm.js} +1 -1
- package/dist/public/assets/_Cl7LTITm.js.br +0 -0
- package/dist/public/assets/{_BT7DMail.js → _Cmtl59QM.js} +1 -1
- package/dist/public/assets/_Cmtl59QM.js.br +0 -0
- package/dist/public/assets/_CshYq_Dp.js +1 -0
- package/dist/public/assets/{_Dj5RDA5P.js → _CspPbDoP.js} +1 -1
- package/dist/public/assets/_CspPbDoP.js.br +0 -0
- package/dist/public/assets/{_Ca2DTddL.js → _Ctjz3BD9.js} +1 -1
- package/dist/public/assets/_Ctjz3BD9.js.br +0 -0
- package/dist/public/assets/{_C5c3o9N3.js → _CuglAToi.js} +1 -1
- package/dist/public/assets/_CuglAToi.js.br +0 -0
- package/dist/public/assets/_CwSoAVRN.js +1 -0
- package/dist/public/assets/_D0XQV-Hm.js +1 -0
- package/dist/public/assets/{_D_GeNCls.js → _D36PnqCD.js} +1 -1
- package/dist/public/assets/_D36PnqCD.js.br +0 -0
- package/dist/public/assets/{_DYqx8g78.js → _D3IviZbJ.js} +1 -1
- package/dist/public/assets/_D3IviZbJ.js.br +0 -0
- package/dist/public/assets/_D6rgUB9O.js +1 -0
- package/dist/public/assets/{_Dwe1TUjY.js → _D7qWWxdI.js} +1 -1
- package/dist/public/assets/_D7qWWxdI.js.br +0 -0
- package/dist/public/assets/{_CPbClwhX.js → _D8ac72_O.js} +1 -1
- package/dist/public/assets/_D8ac72_O.js.br +0 -0
- package/dist/public/assets/_D9WWxrQR.js +1 -0
- package/dist/public/assets/_D9hI5dSA.js +1 -0
- package/dist/public/assets/{_DzlXwaiG.js → _DCrPsldZ.js} +1 -1
- package/dist/public/assets/_DCrPsldZ.js.br +0 -0
- package/dist/public/assets/{_ChPy2IX4.js → _DDcVFyaQ.js} +1 -1
- package/dist/public/assets/_DDcVFyaQ.js.br +0 -0
- package/dist/public/assets/_DDhkKo8Q.js +1 -0
- package/dist/public/assets/{_CY_Z-kV5.js → _DJBR8Qwq.js} +1 -1
- package/dist/public/assets/_DJBR8Qwq.js.br +0 -0
- package/dist/public/assets/{_CxHuLHdz.js → _DLpa6VYT.js} +1 -1
- package/dist/public/assets/_DMqe6rR-.js +1 -0
- package/dist/public/assets/{_DbLQjG4R.js → _DN7pTn2g.js} +1 -1
- package/dist/public/assets/_DN7pTn2g.js.br +0 -0
- package/dist/public/assets/_DP8UuFuJ.js +1 -0
- package/dist/public/assets/_DQedUaqM.js +1 -0
- package/dist/public/assets/{_DPiemRX1.js → _DSCqWPO0.js} +1 -1
- package/dist/public/assets/_DSCqWPO0.js.br +0 -0
- package/dist/public/assets/{_BoEcMQmX.js → _DSeQngGR.js} +1 -1
- package/dist/public/assets/_DSeQngGR.js.br +0 -0
- package/dist/public/assets/{_D-0pUYXq.js → _DTNiWZFr.js} +1 -1
- package/dist/public/assets/_DTNiWZFr.js.br +0 -0
- package/dist/public/assets/_DThlusXY.js +1 -0
- package/dist/public/assets/_DUK16H19.js +1 -0
- package/dist/public/assets/_DUZ13t3U.js +1 -0
- package/dist/public/assets/{_BHgwN0LC.js → _DWb03VKf.js} +1 -1
- package/dist/public/assets/_DWb03VKf.js.br +0 -0
- package/dist/public/assets/_DWsyhfgn.js +1 -0
- package/dist/public/assets/_DXuzYhW6.js +1 -0
- package/dist/public/assets/_DXyOzA2b.js +1 -0
- package/dist/public/assets/{_BXcMBVCY.js → _DYUFCi44.js} +1 -1
- package/dist/public/assets/_DYUFCi44.js.br +0 -0
- package/dist/public/assets/{_BwSXxzqy.js → _DYhs8iJg.js} +12 -12
- package/dist/public/assets/_DYhs8iJg.js.br +0 -0
- package/dist/public/assets/{_Dhn3A3KJ.js → _D__ojGam.js} +1 -1
- package/dist/public/assets/_D__ojGam.js.br +0 -0
- package/dist/public/assets/_DaFI_W5D.js +1 -0
- package/dist/public/assets/{_BiY8chB-.js → _DbT6uo7W.js} +1 -1
- package/dist/public/assets/_DbT6uo7W.js.br +0 -0
- package/dist/public/assets/_DhnT0cCE.js +1 -0
- package/dist/public/assets/_Dm9OGn2q.js +1 -0
- package/dist/public/assets/_DmkeGFoM.js +1 -0
- package/dist/public/assets/{_DVLNzEkW.js → _DmoI4cIl.js} +1 -1
- package/dist/public/assets/_DmoI4cIl.js.br +0 -0
- package/dist/public/assets/{_zcAaK79d.js → _DpbHp8yR.js} +1 -1
- package/dist/public/assets/_DpbHp8yR.js.br +0 -0
- package/dist/public/assets/_Dqz_HBE1.js +1 -0
- package/dist/public/assets/{_DOKecL0e.js → _DsehEuMD.js} +1 -1
- package/dist/public/assets/_DsehEuMD.js.br +0 -0
- package/dist/public/assets/{_D-pUpBL1.js → _Dtx52FYB.js} +1 -1
- package/dist/public/assets/_DuEyirL6.js +1 -0
- package/dist/public/assets/_DuuloSIi.js +1 -0
- package/dist/public/assets/{_Ch-UiovX.js → _DuyCZnNC.js} +1 -1
- package/dist/public/assets/_DuyCZnNC.js.br +0 -0
- package/dist/public/assets/{_BQEpu56f.js → _Dw1P6xZJ.js} +1 -1
- package/dist/public/assets/_Dw1P6xZJ.js.br +0 -0
- package/dist/public/assets/{_C-lB_p3U.js → _DzNFlI0M.js} +1 -1
- package/dist/public/assets/_DzNFlI0M.js.br +0 -0
- package/dist/public/assets/{_CYQ4srZb.js → _EcMqP1xI.js} +1 -1
- package/dist/public/assets/_EcMqP1xI.js.br +0 -0
- package/dist/public/assets/{_0KruTMn9.js → _G1BLeMns.js} +1 -1
- package/dist/public/assets/_G1BLeMns.js.br +0 -0
- package/dist/public/assets/{_FwFz43m8.js → _G8KNSVdM.js} +1 -1
- package/dist/public/assets/_G8KNSVdM.js.br +0 -0
- package/dist/public/assets/{_3fvr5bU1.js → _J1v2clxU.js} +1 -1
- package/dist/public/assets/_J1v2clxU.js.br +0 -0
- package/dist/public/assets/{_Depr5Jps.js → _J3wdy6bJ.js} +1 -1
- package/dist/public/assets/_J3wdy6bJ.js.br +0 -0
- package/dist/public/assets/{_-ycNE92Z.js → _MHZgY1AQ.js} +1 -1
- package/dist/public/assets/_MHZgY1AQ.js.br +0 -0
- package/dist/public/assets/_NHTZitq1.js +2 -0
- package/dist/public/assets/_NHTZitq1.js.br +0 -0
- package/dist/public/assets/{_Cw-dmwPJ.js → _PsuNqRL9.js} +20 -20
- package/dist/public/assets/_PsuNqRL9.js.br +0 -0
- package/dist/public/assets/{_CXVkXsw1.js → _T5HFHZgl.js} +1 -1
- package/dist/public/assets/_T5HFHZgl.js.br +0 -0
- package/dist/public/assets/{_4_sKOYsy.js → _UZAFx6D8.js} +1 -1
- package/dist/public/assets/_UZAFx6D8.js.br +0 -0
- package/dist/public/assets/_XA8_RQXF.js +1 -0
- package/dist/public/assets/{_BTh4v5Tr.js → _XsB9KmcW.js} +1 -1
- package/dist/public/assets/_XsB9KmcW.js.br +0 -0
- package/dist/public/assets/{_i4iteLF8.js → _YoXk_8Bl.js} +1 -1
- package/dist/public/assets/_YoXk_8Bl.js.br +0 -0
- package/dist/public/assets/_YubCdy3Z.js +1 -0
- package/dist/public/assets/{_Q5s6o5H4.js → _bDI-pCZR.js} +1 -1
- package/dist/public/assets/_bDI-pCZR.js.br +0 -0
- package/dist/public/assets/{_TynjiShF.js → _bHL-NcWS.js} +1 -1
- package/dist/public/assets/_bHL-NcWS.js.br +0 -0
- package/dist/public/assets/_bqRzDYc8.js +1 -0
- package/dist/public/assets/{_OpbuiQ7h.js → _briyaWgK.js} +1 -1
- package/dist/public/assets/_briyaWgK.js.br +0 -0
- package/dist/public/assets/{_pEUCjhqm.js → _dVHSDgPC.js} +1 -1
- package/dist/public/assets/_dVHSDgPC.js.br +0 -0
- package/dist/public/assets/_gkZjZ9I4.js +1 -0
- package/dist/public/assets/_plyCYAnN.js +1 -0
- package/dist/public/assets/_q0Z44mWJ.js +1 -0
- package/dist/public/assets/_q0Z44mWJ.js.br +0 -0
- package/dist/public/assets/{_BPNSknLT.js → _qAsGEOt5.js} +1 -1
- package/dist/public/assets/_qAsGEOt5.js.br +0 -0
- package/dist/public/assets/{_Dks8YY2K.js → _qxffRpjc.js} +1 -1
- package/dist/public/assets/{_BOBYB-cj.js → _uCKs5N6Q.js} +1 -1
- package/dist/public/assets/_uCKs5N6Q.js.br +0 -0
- package/dist/public/assets/_utWnC80Q.js +1 -0
- package/dist/public/assets/_utvzcBHT.js +1 -0
- package/dist/public/assets/_v8WbCPI8.js +1 -0
- package/dist/public/assets/_yK4b_Bl5.js +1 -0
- package/dist/public/assets/_yoQW4BY5.js +1 -0
- package/dist/public/assets/_zB6USXHX.js +1 -0
- package/dist/public/assets/{_Quh6tl1u.js → _zN8SypHW.js} +1 -1
- package/dist/public/assets/_zN8SypHW.js.br +0 -0
- package/dist/public/assets/files-view-Fl0rU3Ns.js +2 -0
- package/dist/public/assets/manage-workspace-DggRcsXf.js +2 -0
- package/dist/public/assets/new-C7NxTJAT.js +1 -0
- package/dist/public/assets/new-workspace-C0pw5Iz1.js +2 -0
- package/dist/public/assets/review-view-C4YQ0J-X.js +2 -0
- package/dist/public/assets/settings-C7NxTJAT.js +1 -0
- package/dist/public/assets/settings-page-Cl_1tWCv.js +2 -0
- package/dist/public/assets/styles-Vcsj4CA7.css +1 -0
- package/dist/public/assets/styles-Vcsj4CA7.css.br +0 -0
- package/dist/public/assets/w-C7NxTJAT.js +1 -0
- package/dist/public/assets/w._-BbFH2lR-.js +1 -0
- package/dist/public/assets/w._-C7NxTJAT.js +1 -0
- package/dist/public/assets/w._-YIzLOiyZ.js +1 -0
- package/dist/public/sw.js +11 -4
- package/dist/public/sw.js.br +0 -0
- package/lib/ports/url.d.mts +20 -0
- package/lib/ports/url.mjs +80 -0
- package/lib/preview/media.d.mts +1 -1
- package/lib/preview/media.mjs +15 -2
- package/package.json +1 -1
- package/dist/_CLoLdV87.js +0 -2
- package/dist/_DPpY3UqO.js +0 -167
- package/dist/public/assets/_-ycNE92Z.js.br +0 -0
- package/dist/public/assets/_0KruTMn9.js.br +0 -0
- package/dist/public/assets/_0NH5yJMx.js +0 -1
- package/dist/public/assets/_1CAp-NbR.js +0 -1
- package/dist/public/assets/_3fvr5bU1.js.br +0 -0
- package/dist/public/assets/_4Dkmi0BI.js +0 -1
- package/dist/public/assets/_4_sKOYsy.js.br +0 -0
- package/dist/public/assets/_6klEiBhY.js.br +0 -0
- package/dist/public/assets/_7_64OpLh.js +0 -1
- package/dist/public/assets/_7p-zxUs0.js +0 -1
- package/dist/public/assets/_8RAv3gFP.js +0 -1
- package/dist/public/assets/_9PDxaMA9.js +0 -1
- package/dist/public/assets/_9PDxaMA9.js.br +0 -0
- package/dist/public/assets/_9mbDrbe7.js +0 -1
- package/dist/public/assets/_A-jpjc8j.js.br +0 -0
- package/dist/public/assets/_B0JwTeu6.js +0 -1
- package/dist/public/assets/_B19mS3yM.js.br +0 -0
- package/dist/public/assets/_B1Sfrnda.js +0 -1
- package/dist/public/assets/_B3i0wS_I.js +0 -1
- package/dist/public/assets/_B5JxE4Sx.js.br +0 -0
- package/dist/public/assets/_B9RLcC8I.js +0 -1
- package/dist/public/assets/_BCB8LQS3.js.br +0 -0
- package/dist/public/assets/_BE7UYyYb.js +0 -1
- package/dist/public/assets/_BHgwN0LC.js.br +0 -0
- package/dist/public/assets/_BHyWcuOR.js.br +0 -0
- package/dist/public/assets/_BIpUDgQH.js +0 -16
- package/dist/public/assets/_BIpUDgQH.js.br +0 -0
- package/dist/public/assets/_BMlgaRlM.js +0 -1
- package/dist/public/assets/_BOBYB-cj.js.br +0 -0
- package/dist/public/assets/_BPNSknLT.js.br +0 -0
- package/dist/public/assets/_BQEpu56f.js.br +0 -0
- package/dist/public/assets/_BT7DMail.js.br +0 -0
- package/dist/public/assets/_BTJHQNIz.js +0 -1
- package/dist/public/assets/_BTWfPOi-.js.br +0 -0
- package/dist/public/assets/_BTh4v5Tr.js.br +0 -0
- package/dist/public/assets/_BUW_V5kN.js.br +0 -0
- package/dist/public/assets/_BXcMBVCY.js.br +0 -0
- package/dist/public/assets/_B_MtJKnj.js +0 -1
- package/dist/public/assets/_Bay3D1io.js +0 -1
- package/dist/public/assets/_BfQeZPXW.js.br +0 -0
- package/dist/public/assets/_BgKjJWz_.js +0 -1
- package/dist/public/assets/_BiY8chB-.js.br +0 -0
- package/dist/public/assets/_Bk5THQZb.js +0 -1
- package/dist/public/assets/_BmeQRnXS.js +0 -1
- package/dist/public/assets/_BoEcMQmX.js.br +0 -0
- package/dist/public/assets/_BoTzWlXR.js.br +0 -0
- package/dist/public/assets/_BqWlTTxo.js.br +0 -0
- package/dist/public/assets/_BuMTHEPk.js.br +0 -0
- package/dist/public/assets/_BubhcEjq.js +0 -1
- package/dist/public/assets/_BwSXxzqy.js.br +0 -0
- package/dist/public/assets/_BxS3xvmE.js.br +0 -0
- package/dist/public/assets/_ByvA6zJz.js +0 -1
- package/dist/public/assets/_Bz2Sejcy.js +0 -1
- package/dist/public/assets/_C-lB_p3U.js.br +0 -0
- package/dist/public/assets/_C1-Nli75.js.br +0 -0
- package/dist/public/assets/_C3mw4T_r.js +0 -1
- package/dist/public/assets/_C449plW0.js.br +0 -0
- package/dist/public/assets/_C5c3o9N3.js.br +0 -0
- package/dist/public/assets/_C7bHTlG1.js.br +0 -0
- package/dist/public/assets/_C8mt6nRC.js +0 -1
- package/dist/public/assets/_C9jR1P3s.js.br +0 -0
- package/dist/public/assets/_CCONYsJT.js.br +0 -0
- package/dist/public/assets/_CCZAROAW.js +0 -1
- package/dist/public/assets/_CCZAROAW.js.br +0 -0
- package/dist/public/assets/_CG3s9pE5.js +0 -1
- package/dist/public/assets/_CIWiehYG.js.br +0 -0
- package/dist/public/assets/_CIrZGxEf.js.br +0 -0
- package/dist/public/assets/_CIurl9jC.js +0 -1
- package/dist/public/assets/_CJgqLdsx.js.br +0 -0
- package/dist/public/assets/_CMbVHIgP.js +0 -1
- package/dist/public/assets/_CNUs2Gqk.js.br +0 -0
- package/dist/public/assets/_CPbClwhX.js.br +0 -0
- package/dist/public/assets/_CQUlxerJ.js +0 -1
- package/dist/public/assets/_CTDYlYHi.js +0 -1
- package/dist/public/assets/_CXVkXsw1.js.br +0 -0
- package/dist/public/assets/_CY5EBxZ6.js +0 -1
- package/dist/public/assets/_CYQ4srZb.js.br +0 -0
- package/dist/public/assets/_CY_Z-kV5.js.br +0 -0
- package/dist/public/assets/_CYhJ6ae-.js.br +0 -0
- package/dist/public/assets/_CZbVK94d.js +0 -1
- package/dist/public/assets/_C_A97h_2.js +0 -1
- package/dist/public/assets/_C_A97h_2.js.br +0 -0
- package/dist/public/assets/_C_Y5Dwzy.js +0 -1
- package/dist/public/assets/_Ca2DTddL.js.br +0 -0
- package/dist/public/assets/_Cc2nu3_5.js +0 -1
- package/dist/public/assets/_Cc_GUPR4.js.br +0 -0
- package/dist/public/assets/_CgFUs0bE.js +0 -1
- package/dist/public/assets/_Ch-UiovX.js.br +0 -0
- package/dist/public/assets/_ChDp0-FJ.js +0 -1
- package/dist/public/assets/_ChPy2IX4.js.br +0 -0
- package/dist/public/assets/_Chsgo2e1.js +0 -1
- package/dist/public/assets/_CjECwrWB.js +0 -1
- package/dist/public/assets/_CmW74dH7.js +0 -1
- package/dist/public/assets/_CmhAUlqu.js +0 -1
- package/dist/public/assets/_CrlNjDih.js.br +0 -0
- package/dist/public/assets/_CvzTEaQq.js +0 -1
- package/dist/public/assets/_Cw-dmwPJ.js.br +0 -0
- package/dist/public/assets/_Cwtn28hL.js.br +0 -0
- package/dist/public/assets/_CxgPm_xy.js.br +0 -0
- package/dist/public/assets/_D-0pUYXq.js.br +0 -0
- package/dist/public/assets/_D-rV-z_T.js +0 -1
- package/dist/public/assets/_D4CkNo0r.js.br +0 -0
- package/dist/public/assets/_D4fP_viq.js +0 -1
- package/dist/public/assets/_D570Sd6p.js +0 -1
- package/dist/public/assets/_D6Gudpw8.js +0 -1
- package/dist/public/assets/_D8ZTP1ck.js +0 -1
- package/dist/public/assets/_D8uBvHXU.js.br +0 -0
- package/dist/public/assets/_D8xGEGlm.js +0 -1
- package/dist/public/assets/_D9GZHKow.js +0 -1
- package/dist/public/assets/_DE0eZjad.js +0 -1
- package/dist/public/assets/_DElIEG9n.js +0 -1
- package/dist/public/assets/_DF0n9xzn.js +0 -2
- package/dist/public/assets/_DF0n9xzn.js.br +0 -0
- package/dist/public/assets/_DFX_tXcw.js +0 -1
- package/dist/public/assets/_DJ2gfhU_.js +0 -1
- package/dist/public/assets/_DK-MOyi_.js.br +0 -0
- package/dist/public/assets/_DOKecL0e.js.br +0 -0
- package/dist/public/assets/_DPXXIOLX.js +0 -1
- package/dist/public/assets/_DPb3t58B.js +0 -1
- package/dist/public/assets/_DPiemRX1.js.br +0 -0
- package/dist/public/assets/_DPpbgqBC.js +0 -1
- package/dist/public/assets/_DRVSLjxA.js +0 -1
- package/dist/public/assets/_DTHWnu6M.js +0 -1
- package/dist/public/assets/_DUdEYxV0.js.br +0 -0
- package/dist/public/assets/_DVLNzEkW.js.br +0 -0
- package/dist/public/assets/_DWpx2Uof.js +0 -1
- package/dist/public/assets/_DXYEUAmC.js +0 -1
- package/dist/public/assets/_DYTVambU.js +0 -1
- package/dist/public/assets/_DYqx8g78.js.br +0 -0
- package/dist/public/assets/_DZanHI_X.js +0 -1
- package/dist/public/assets/_DZanHI_X.js.br +0 -0
- package/dist/public/assets/_D_GeNCls.js.br +0 -0
- package/dist/public/assets/_DbLQjG4R.js.br +0 -0
- package/dist/public/assets/_DbmusecK.js +0 -1
- package/dist/public/assets/_DbmusecK.js.br +0 -0
- package/dist/public/assets/_DemN-D5U.js +0 -1
- package/dist/public/assets/_Depr5Jps.js.br +0 -0
- package/dist/public/assets/_DhJfHI4f.js +0 -1
- package/dist/public/assets/_Dhn3A3KJ.js.br +0 -0
- package/dist/public/assets/_Di78jTI-.js.br +0 -0
- package/dist/public/assets/_DiBTtPlu.js +0 -1
- package/dist/public/assets/_Dj5RDA5P.js.br +0 -0
- package/dist/public/assets/_DkjKARSS.js +0 -1
- package/dist/public/assets/_Do6b-nfX.js.br +0 -0
- package/dist/public/assets/_DorQTaAa.js.br +0 -0
- package/dist/public/assets/_DpxVmwni.js +0 -1
- package/dist/public/assets/_DqGOYRpi.js.br +0 -0
- package/dist/public/assets/_DsbxQ1i8.js +0 -1
- package/dist/public/assets/_Dt_P7K1V.js +0 -6
- package/dist/public/assets/_Dt_P7K1V.js.br +0 -0
- package/dist/public/assets/_Dwe1TUjY.js.br +0 -0
- package/dist/public/assets/_DyROQKS8.js +0 -1
- package/dist/public/assets/_DzEUPsq0.js +0 -1
- package/dist/public/assets/_DzlXwaiG.js.br +0 -0
- package/dist/public/assets/_FwFz43m8.js.br +0 -0
- package/dist/public/assets/_OpbuiQ7h.js.br +0 -0
- package/dist/public/assets/_Q5s6o5H4.js.br +0 -0
- package/dist/public/assets/_Quh6tl1u.js.br +0 -0
- package/dist/public/assets/_Rh99sjDe.js +0 -1
- package/dist/public/assets/_SEE1XtID.js +0 -1
- package/dist/public/assets/_SZjr1kid.js +0 -1
- package/dist/public/assets/_T7rMqM5P.js +0 -1
- package/dist/public/assets/_TynjiShF.js.br +0 -0
- package/dist/public/assets/_UENAEFcY.js +0 -1
- package/dist/public/assets/_UwTOb1gP.js +0 -1
- package/dist/public/assets/_WrxtT1Ok.js +0 -1
- package/dist/public/assets/_WrxtT1Ok.js.br +0 -0
- package/dist/public/assets/_bcvRRCkB.js +0 -1
- package/dist/public/assets/_cyorvuL1.js.br +0 -0
- package/dist/public/assets/_gi--JOq8.js +0 -1
- package/dist/public/assets/_i4iteLF8.js.br +0 -0
- package/dist/public/assets/_i7vMugBN.js +0 -1
- package/dist/public/assets/_j7jPRUEQ.js +0 -2
- package/dist/public/assets/_j7jPRUEQ.js.br +0 -0
- package/dist/public/assets/_pEUCjhqm.js.br +0 -0
- package/dist/public/assets/_qkJuNTl-.js +0 -1
- package/dist/public/assets/_uuZJDLIV.js +0 -1
- package/dist/public/assets/_v3HPnNBs.js.br +0 -0
- package/dist/public/assets/_vX9d6g5Y.js.br +0 -0
- package/dist/public/assets/_vhysM7gk.js +0 -1
- package/dist/public/assets/_vjwPQHk_.js +0 -1
- package/dist/public/assets/_yp48NYOW.js.br +0 -0
- package/dist/public/assets/_zcAaK79d.js.br +0 -0
- package/dist/public/assets/_zwPrEKxN.js +0 -1
- package/dist/public/assets/_zwPrEKxN.js.br +0 -0
- package/dist/public/assets/files-view-CzRAql9-.js +0 -2
- package/dist/public/assets/manage-workspace-C-c1R4pP.js +0 -2
- package/dist/public/assets/new-DWfNwssk.js +0 -1
- package/dist/public/assets/new-workspace-B8XAfkIH.js +0 -2
- package/dist/public/assets/review-view-DivHZNBf.js +0 -2
- package/dist/public/assets/settings-DWfNwssk.js +0 -1
- package/dist/public/assets/settings-page-BN9Hj1ui.js +0 -2
- package/dist/public/assets/styles-NmwxQh5L.css +0 -1
- package/dist/public/assets/styles-NmwxQh5L.css.br +0 -0
- package/dist/public/assets/w-DWfNwssk.js +0 -1
- package/dist/public/assets/w._-C9dj1aZ0.js +0 -1
- package/dist/public/assets/w._-D7_D4HlM.js +0 -1
- package/dist/public/assets/w._-DWfNwssk.js +0 -1
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
// `work workspace create|archive|unarchive|delete`: making and putting
|
|
2
|
+
// away workspaces from a terminal, as New and Manage do.
|
|
3
|
+
import { follow, opId } from "./_progress.mjs";
|
|
4
|
+
import { namesRepo, repoName } from "./_repo.mjs";
|
|
5
|
+
|
|
6
|
+
/** Where the app shows a workspace: paths the terminal opens in the app,
|
|
7
|
+
* the same as `/w/…` links anywhere in its output. */
|
|
8
|
+
const links = (ws) => ({
|
|
9
|
+
terminal: `/w/${ws.id}`,
|
|
10
|
+
review: `/w/${ws.id}/review`,
|
|
11
|
+
files: `/w/${ws.id}/files`,
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
function printWorkspace(ws, verb) {
|
|
15
|
+
console.log(`${verb} ${ws.name} (${ws.id})`);
|
|
16
|
+
console.log(` path: ${ws.display_path || ws.path}`);
|
|
17
|
+
console.log(` branch: ${ws.branch}`);
|
|
18
|
+
for (const r of ws.repos) {
|
|
19
|
+
console.log(
|
|
20
|
+
` repo: ${r.worktree}/ ${r.full_name} (base ${r.base_branch})`,
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
const l = links(ws);
|
|
24
|
+
console.log(` terminal: ${l.terminal}`);
|
|
25
|
+
console.log(` review: ${l.review}`);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/** Whether a session of this shell runs in `ws`: archiving or deleting
|
|
29
|
+
* it stops the session the command runs in. Asked of the workspace's own
|
|
30
|
+
* session list, not the status snapshot, which is kept a few seconds. */
|
|
31
|
+
async function runsHere(ctx, ws) {
|
|
32
|
+
const sid = process.env.WORK_SESSION_ID;
|
|
33
|
+
if (!sid) return false;
|
|
34
|
+
const sessions = await ctx.api.get(
|
|
35
|
+
`/api/workspaces/${encodeURIComponent(ws.id)}/sessions`,
|
|
36
|
+
);
|
|
37
|
+
return (sessions || []).some((s) => s.id === sid);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/** The workspace an archive/delete names: always by name or id, never the
|
|
41
|
+
* one the shell happens to be in. */
|
|
42
|
+
async function named(ctx, verb) {
|
|
43
|
+
const [arg] = ctx.parse();
|
|
44
|
+
if (!arg)
|
|
45
|
+
ctx.die(
|
|
46
|
+
`name the workspace to ${verb}: work workspace ${verb} <name|id> (see: work workspaces)`,
|
|
47
|
+
);
|
|
48
|
+
return (await ctx.resolveWorkspace(arg)).ws;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** Archive, unarchive or delete: the server's one action route. */
|
|
52
|
+
async function act(ctx, ws, action) {
|
|
53
|
+
return follow(ctx, ws.id, () =>
|
|
54
|
+
ctx.api.post(`/api/workspaces/${encodeURIComponent(ws.id)}`, { action }),
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** @type {Array<{name: string, aliases?: string[], summary: string, help: string, run: (ctx: any) => Promise<void>}>} */
|
|
59
|
+
export const commands = [
|
|
60
|
+
{
|
|
61
|
+
name: "workspace create",
|
|
62
|
+
summary: "make a workspace: work ws create <name> [repo…]",
|
|
63
|
+
help: `work workspace create <name> [repo…] [--base <repo>=<branch>] [--fork <repo>]
|
|
64
|
+
Make a workspace, as New does: a folder under the work root, a branch of
|
|
65
|
+
its own, and a worktree of each repo on it. A repo is owner/name,
|
|
66
|
+
host/owner/name (GitHub Enterprise) or a clone URL. Each is checked out
|
|
67
|
+
from its default branch unless --base names another (--base <branch>
|
|
68
|
+
alone when there is one repo); --fork forks it to your account first and
|
|
69
|
+
clones the fork. Clone and checkout progress goes to stderr. Prints the
|
|
70
|
+
workspace and its terminal and review links (--json: the workspace).
|
|
71
|
+
e.g. work ws create login-fix marko-js/marko --base marko=main`,
|
|
72
|
+
async run(ctx) {
|
|
73
|
+
const [name, ...specs] = ctx.parse(["--base", "--fork"]);
|
|
74
|
+
if (!name)
|
|
75
|
+
ctx.die("name the workspace: work workspace create <name> [repo…]");
|
|
76
|
+
const repos = specs.map((s) => {
|
|
77
|
+
const fullName = repoName(s);
|
|
78
|
+
if (!fullName)
|
|
79
|
+
ctx.die(
|
|
80
|
+
`not a repo: ${s} (owner/name, host/owner/name or a clone URL)`,
|
|
81
|
+
);
|
|
82
|
+
return { fullName };
|
|
83
|
+
});
|
|
84
|
+
for (const spec of ctx.flags("--base")) {
|
|
85
|
+
const eq = spec.indexOf("=");
|
|
86
|
+
const key = eq < 0 ? null : spec.slice(0, eq);
|
|
87
|
+
const branch = eq < 0 ? spec : spec.slice(eq + 1);
|
|
88
|
+
const target = key
|
|
89
|
+
? repos.filter((r) => namesRepo(key, r.fullName))
|
|
90
|
+
: repos.length === 1
|
|
91
|
+
? repos
|
|
92
|
+
: [];
|
|
93
|
+
if (target.length !== 1)
|
|
94
|
+
ctx.die(
|
|
95
|
+
key
|
|
96
|
+
? `--base ${spec}: ${target.length ? "names more than one repo" : "names no repo given"}`
|
|
97
|
+
: "--base <branch> alone needs exactly one repo; name it: --base <repo>=<branch>",
|
|
98
|
+
);
|
|
99
|
+
target[0].baseBranch = branch;
|
|
100
|
+
}
|
|
101
|
+
for (const key of ctx.flags("--fork")) {
|
|
102
|
+
const target = repos.filter((r) => namesRepo(key, r.fullName));
|
|
103
|
+
if (target.length !== 1) ctx.die(`--fork ${key}: names no one repo`);
|
|
104
|
+
target[0].fork = true;
|
|
105
|
+
}
|
|
106
|
+
const op = opId();
|
|
107
|
+
const ws = await follow(ctx, op, () =>
|
|
108
|
+
ctx.api.post("/api/workspaces", { name, repos, opId: op }),
|
|
109
|
+
);
|
|
110
|
+
ctx.out({ ...ws, links: links(ws) }, () => printWorkspace(ws, "created"));
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: "workspace archive",
|
|
115
|
+
summary: "archive a workspace (stops its sessions; keeps its files)",
|
|
116
|
+
help: `work workspace archive <name|id> [--yes]
|
|
117
|
+
Archive a workspace, as the app's archive does: its sessions and
|
|
118
|
+
processes stop and it leaves the list; its folder, branches and review
|
|
119
|
+
stay, and work workspace unarchive brings it back. Archiving the
|
|
120
|
+
workspace this shell runs in stops this session too, so that needs --yes.`,
|
|
121
|
+
async run(ctx) {
|
|
122
|
+
const ws = await named(ctx, "archive");
|
|
123
|
+
if (ws.status === "archived") {
|
|
124
|
+
ctx.out({ id: ws.id, status: "archived" }, () =>
|
|
125
|
+
console.log(`${ws.name} is already archived`),
|
|
126
|
+
);
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
if (!ctx.yes && (await runsHere(ctx, ws)))
|
|
130
|
+
ctx.die(
|
|
131
|
+
`${ws.name} is the workspace this shell runs in: archiving it stops this session. Pass --yes to go ahead`,
|
|
132
|
+
);
|
|
133
|
+
await act(ctx, ws, "archive");
|
|
134
|
+
ctx.out({ id: ws.id, status: "archived" }, () =>
|
|
135
|
+
console.log(
|
|
136
|
+
`archived ${ws.name} (work workspace unarchive ${ws.name} brings it back)`,
|
|
137
|
+
),
|
|
138
|
+
);
|
|
139
|
+
},
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
name: "workspace unarchive",
|
|
143
|
+
aliases: ["workspace restore"],
|
|
144
|
+
summary: "bring an archived workspace back",
|
|
145
|
+
help: `work workspace unarchive <name|id>
|
|
146
|
+
Bring an archived workspace back into the list. One restored from a
|
|
147
|
+
backup that was never put on disk is cloned now, in the background (the
|
|
148
|
+
app shows how far it has got).`,
|
|
149
|
+
async run(ctx) {
|
|
150
|
+
const ws = await named(ctx, "unarchive");
|
|
151
|
+
if (ws.status === "active") {
|
|
152
|
+
ctx.out({ id: ws.id, status: "active" }, () =>
|
|
153
|
+
console.log(`${ws.name} is not archived`),
|
|
154
|
+
);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
await act(ctx, ws, "restore");
|
|
158
|
+
ctx.out({ id: ws.id, status: "active", links: links(ws) }, () =>
|
|
159
|
+
console.log(`unarchived ${ws.name}: ${links(ws).terminal}`),
|
|
160
|
+
);
|
|
161
|
+
},
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
name: "workspace delete",
|
|
165
|
+
summary: "delete a workspace and its files (--yes)",
|
|
166
|
+
help: `work workspace delete <name|id> --yes
|
|
167
|
+
Delete a workspace: its sessions and processes stop, its folder is
|
|
168
|
+
removed and its local branches are deleted — uncommitted and unpushed
|
|
169
|
+
work in it is lost. Branches already pushed, and their PRs, stay on
|
|
170
|
+
GitHub. Asks for --yes; archive instead to keep it.`,
|
|
171
|
+
async run(ctx) {
|
|
172
|
+
const ws = await named(ctx, "delete");
|
|
173
|
+
const here = await runsHere(ctx, ws);
|
|
174
|
+
if (!ctx.yes)
|
|
175
|
+
ctx.die(
|
|
176
|
+
`deleting ${ws.name} removes ${ws.display_path || ws.path} and its local branches; uncommitted and unpushed work is lost${here ? ", and this session stops (it runs there)" : ""}. Pass --yes to go ahead, or archive it instead`,
|
|
177
|
+
);
|
|
178
|
+
await act(ctx, ws, "delete");
|
|
179
|
+
ctx.out({ id: ws.id, deleted: true }, () =>
|
|
180
|
+
console.log(`deleted ${ws.name}`),
|
|
181
|
+
);
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
];
|