@dylanpiercey/work 0.2.25 → 0.2.27
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/bin/cli/branches.mjs +5 -1
- package/dist/{_C0jqB-CL.js → _DDAjcBsZ.js} +71 -71
- package/dist/index.mjs +969 -908
- package/dist/public/assets/_-faV08e8.js +1 -0
- package/dist/public/assets/_-lZrhrbN.js +1 -0
- package/dist/public/assets/{_DhgZLOP4.js → _3DcSidD1.js} +1 -1
- package/dist/public/assets/_3DcSidD1.js.br +0 -0
- package/dist/public/assets/_3PsHe4bb.js +1 -0
- package/dist/public/assets/{_DwO4_KlL.js → _4-IBI0Wn.js} +1 -1
- package/dist/public/assets/_4-IBI0Wn.js.br +0 -0
- package/dist/public/assets/_8qzPhKsu.js +1 -0
- package/dist/public/assets/_B-sa5fp-.js +1 -0
- package/dist/public/assets/_B-xFYWHP.js +1 -0
- package/dist/public/assets/_B0Q8waOa.js +1 -0
- package/dist/public/assets/{_DAc5P0Tq.js → _B2-SwRFw.js} +1 -1
- package/dist/public/assets/_B2-SwRFw.js.br +0 -0
- package/dist/public/assets/_B2Wdb3WJ.js +1 -0
- package/dist/public/assets/_B4AOPBEb.js +1 -0
- package/dist/public/assets/{_DgAYZPtd.js → _B4RTOif8.js} +2 -2
- package/dist/public/assets/_B4RTOif8.js.br +0 -0
- package/dist/public/assets/_B623mj1w.js +1 -0
- package/dist/public/assets/{_BHpwo3pV.js → _B6zt7nov.js} +1 -1
- package/dist/public/assets/_B6zt7nov.js.br +0 -0
- package/dist/public/assets/_B7t7QIzo.js +1 -0
- package/dist/public/assets/_BB9Txhm5.js +1 -0
- package/dist/public/assets/_BC7PZtyx.js +1 -0
- package/dist/public/assets/{_DVc7jXIG.js → _BCgYpDrN.js} +1 -1
- package/dist/public/assets/_BCgYpDrN.js.br +0 -0
- package/dist/public/assets/{_BZQB2204.js → _BEe3YNkF.js} +1 -1
- package/dist/public/assets/_BEe3YNkF.js.br +0 -0
- package/dist/public/assets/_BHFA_lPj.js +1 -0
- package/dist/public/assets/{_C2y0tmgK.js → _BIGof8iy.js} +1 -1
- package/dist/public/assets/_BIGof8iy.js.br +0 -0
- package/dist/public/assets/{_B7tkawQT.js → _BIUuaaVc.js} +2 -2
- package/dist/public/assets/_BIUuaaVc.js.br +0 -0
- package/dist/public/assets/_BKsSaWSw.js +1 -0
- package/dist/public/assets/_BKsSaWSw.js.br +0 -0
- package/dist/public/assets/_BLUCn1dd.js +1 -0
- package/dist/public/assets/{_BvNQLfc4.js → _BLdVDkGQ.js} +1 -1
- package/dist/public/assets/_BLdVDkGQ.js.br +0 -0
- package/dist/public/assets/{_tuHBYCL3.js → _BMpgdqmy.js} +1 -1
- package/dist/public/assets/_BMpgdqmy.js.br +0 -0
- package/dist/public/assets/{_NLNd72-Y.js → _BOdjVdJs.js} +1 -1
- package/dist/public/assets/_BOdjVdJs.js.br +0 -0
- package/dist/public/assets/{_CIbYjP43.js → _BPyUvKx6.js} +1 -1
- package/dist/public/assets/_BPyUvKx6.js.br +0 -0
- package/dist/public/assets/{_DRSu-WSN.js → _BPzgQc_S.js} +1 -1
- package/dist/public/assets/_BPzgQc_S.js.br +0 -0
- package/dist/public/assets/{_D3Ci9IpP.js → _BQ2vcprU.js} +1 -1
- package/dist/public/assets/_BQxhO31I.js +1 -0
- package/dist/public/assets/_BROMDpBR.js +1 -0
- package/dist/public/assets/{_BhUijjJj.js → _BRzneWL9.js} +1 -1
- package/dist/public/assets/_BRzneWL9.js.br +0 -0
- package/dist/public/assets/_BUmgmay0.js +1 -0
- package/dist/public/assets/{_BB5w80WL.js → _BWWaKHkH.js} +1 -1
- package/dist/public/assets/_BWWaKHkH.js.br +0 -0
- package/dist/public/assets/{_D8Y8OuSd.js → _BXSZ_EAo.js} +1 -1
- package/dist/public/assets/_BXSZ_EAo.js.br +0 -0
- package/dist/public/assets/{_BAA6M_qP.js → _B_-YQiMi.js} +1 -1
- package/dist/public/assets/_B_-YQiMi.js.br +0 -0
- package/dist/public/assets/_B_Fy_gS2.js +1 -0
- package/dist/public/assets/{_CJ3CynCs.js → _B_TbJVYf.js} +1 -1
- package/dist/public/assets/_B_TbJVYf.js.br +0 -0
- package/dist/public/assets/{_N17k0AUO.js → _Ba99YPH7.js} +1 -1
- package/dist/public/assets/_Ba99YPH7.js.br +0 -0
- package/dist/public/assets/{_CKDkglpP.js → _BbCf-0OR.js} +1 -1
- package/dist/public/assets/_BbCf-0OR.js.br +0 -0
- package/dist/public/assets/_BbDSIRuz.js +1 -0
- package/dist/public/assets/_BbWM1RJd.js +1 -0
- package/dist/public/assets/{_DUMZVSqe.js → _BblNadWW.js} +1 -1
- package/dist/public/assets/_BblNadWW.js.br +0 -0
- package/dist/public/assets/_Bd5qH_ET.js +1 -0
- package/dist/public/assets/_BdfgARQn.js +1 -0
- package/dist/public/assets/{_C2zJPa-j.js → _BdqBwfHB.js} +1 -1
- package/dist/public/assets/_BdqBwfHB.js.br +0 -0
- package/dist/public/assets/_BeJsts5I.js +1 -0
- package/dist/public/assets/{_CmccfrUL.js → _BepFxOFb.js} +1 -1
- package/dist/public/assets/_BepFxOFb.js.br +0 -0
- package/dist/public/assets/_BgGvVCi_.js +1 -0
- package/dist/public/assets/{_CDt9qbOO.js → _BgwCKZ8-.js} +1 -1
- package/dist/public/assets/_BgwCKZ8-.js.br +0 -0
- package/dist/public/assets/{_DIdWMwhe.js → _Bi_5Ao8u.js} +1 -1
- package/dist/public/assets/_Bi_5Ao8u.js.br +0 -0
- package/dist/public/assets/{_CvlGgCgA.js → _BivlcK2b.js} +1 -1
- package/dist/public/assets/_BivlcK2b.js.br +0 -0
- package/dist/public/assets/_Bj0mmf63.js +1 -0
- package/dist/public/assets/{_B7sAK3rf.js → _BkoVGNIF.js} +1 -1
- package/dist/public/assets/_BkoVGNIF.js.br +0 -0
- package/dist/public/assets/_BmLU8huH.js +1 -0
- package/dist/public/assets/{_D5XFsjyE.js → _BnL19FUk.js} +1 -1
- package/dist/public/assets/_BnL19FUk.js.br +0 -0
- package/dist/public/assets/{_Dq947wTV.js → _Br8IXpnj.js} +5 -5
- package/dist/public/assets/_Br8IXpnj.js.br +0 -0
- package/dist/public/assets/_BufxiMJQ.js +1 -0
- package/dist/public/assets/{_CFrlmGPb.js → _BvE9n3Nk.js} +1 -1
- package/dist/public/assets/_BvE9n3Nk.js.br +0 -0
- package/dist/public/assets/{_BGsvGmtK.js → _BwRscix1.js} +1 -1
- package/dist/public/assets/_BwRscix1.js.br +0 -0
- package/dist/public/assets/_C-xy_RbT.js +1 -0
- package/dist/public/assets/_C0XnVyXd.js +1 -0
- package/dist/public/assets/{_DbIVIWVO.js → _C2cBlAFc.js} +1 -1
- package/dist/public/assets/_C2cBlAFc.js.br +0 -0
- package/dist/public/assets/{_ByQJ7LF4.js → _C4f7S8JD.js} +1 -1
- package/dist/public/assets/_C4f7S8JD.js.br +0 -0
- package/dist/public/assets/_C94ydGkX.js +1 -0
- package/dist/public/assets/_C9IyzePi.js +1 -0
- package/dist/public/assets/{_B6_WLMJi.js → _CAfsM4Aw.js} +1 -1
- package/dist/public/assets/_CAfsM4Aw.js.br +0 -0
- package/dist/public/assets/{_Beyc-Xsa.js → _CBk0XI3h.js} +1 -1
- package/dist/public/assets/_CBk0XI3h.js.br +0 -0
- package/dist/public/assets/_CC8K_HdS.js +1 -0
- package/dist/public/assets/_CDfEb8PD.js +1 -0
- package/dist/public/assets/{_CXGKxkXO.js → _CEw9FTPN.js} +1 -1
- package/dist/public/assets/_CEw9FTPN.js.br +0 -0
- package/dist/public/assets/_CK03n2AB.js +1 -0
- package/dist/public/assets/_CKE19Sj6.js +1 -0
- package/dist/public/assets/{_DT3dK74Q.js → _CK_1ijBG.js} +1 -1
- package/dist/public/assets/_CK_1ijBG.js.br +0 -0
- package/dist/public/assets/{_DY-TpJ8r.js → _CMuhHF1_.js} +1 -1
- package/dist/public/assets/_CMuhHF1_.js.br +0 -0
- package/dist/public/assets/{_D_AcTgCV.js → _CNSt-F4i.js} +1 -1
- package/dist/public/assets/_CNSt-F4i.js.br +0 -0
- package/dist/public/assets/{_9LZMQsWk.js → _CNbBtFvd.js} +1 -1
- package/dist/public/assets/_CNbBtFvd.js.br +0 -0
- package/dist/public/assets/{_Dy2ZmK8T.js → _CPyH_wio.js} +1 -1
- package/dist/public/assets/_CPyH_wio.js.br +0 -0
- package/dist/public/assets/{_B91tpTwE.js → _CRU6G0bW.js} +1 -1
- package/dist/public/assets/_CRU6G0bW.js.br +0 -0
- package/dist/public/assets/_CS8DRdO6.js +1 -0
- package/dist/public/assets/{_DSjjrIUk.js → _CSJbgtSE.js} +1 -1
- package/dist/public/assets/_CSJbgtSE.js.br +0 -0
- package/dist/public/assets/{_YlW2OtxR.js → _CV2MxYwO.js} +1 -1
- package/dist/public/assets/_CV2MxYwO.js.br +0 -0
- package/dist/public/assets/_CbaGp8IK.js +1 -0
- package/dist/public/assets/{_3z4U5yAj.js → _Cbqqax1B.js} +1 -1
- package/dist/public/assets/_Cbqqax1B.js.br +0 -0
- package/dist/public/assets/{_DN4qfzJZ.js → _Cds3wJDq.js} +1 -1
- package/dist/public/assets/_Cds3wJDq.js.br +0 -0
- package/dist/public/assets/{_DY8DHmAe.js → _CdwEhxya.js} +1 -1
- package/dist/public/assets/_CdwEhxya.js.br +0 -0
- package/dist/public/assets/{_BU214RiN.js → _CebRQHak.js} +1 -1
- package/dist/public/assets/_CebRQHak.js.br +0 -0
- package/dist/public/assets/_Ch2uEQx8.js +1 -0
- package/dist/public/assets/_CkfxipEE.js +1 -0
- package/dist/public/assets/{_mN0msEVf.js → _CmXW2ayQ.js} +1 -1
- package/dist/public/assets/_CmXW2ayQ.js.br +0 -0
- package/dist/public/assets/_CmqP4GeD.js +1 -0
- package/dist/public/assets/{_C7Y7zxOd.js → _Cpzo7SZk.js} +1 -1
- package/dist/public/assets/_Cpzo7SZk.js.br +0 -0
- package/dist/public/assets/{_P55-xlZx.js → _CqwBobzE.js} +6 -6
- package/dist/public/assets/_CqwBobzE.js.br +0 -0
- package/dist/public/assets/_CrFxpiku.js +1 -0
- package/dist/public/assets/_CrX8AjUs.js +1 -0
- package/dist/public/assets/{_BeumRtRb.js → _Cv5UQjKC.js} +1 -1
- package/dist/public/assets/_Cv5UQjKC.js.br +0 -0
- package/dist/public/assets/_Cv5xYC1-.js +1 -0
- package/dist/public/assets/_Cv5xYC1-.js.br +0 -0
- package/dist/public/assets/_CwQ2mXvq.js +1 -0
- package/dist/public/assets/_CxqjyoCN.js +1 -0
- package/dist/public/assets/{_AdsZZXF4.js → _CyK0SPJ0.js} +20 -20
- package/dist/public/assets/_CyK0SPJ0.js.br +0 -0
- package/dist/public/assets/{_D1RferGz.js → _D0woUGQ2.js} +1 -1
- package/dist/public/assets/_D0woUGQ2.js.br +0 -0
- package/dist/public/assets/_D1FUURh3.js +1 -0
- package/dist/public/assets/_D4WDjpDD.js +1 -0
- package/dist/public/assets/{_BgojYZh1.js → _D4genPpn.js} +1 -1
- package/dist/public/assets/_D4genPpn.js.br +0 -0
- package/dist/public/assets/{_B3nkNnXm.js → _D4u6UVR-.js} +1 -1
- package/dist/public/assets/_D4u6UVR-.js.br +0 -0
- package/dist/public/assets/{_PT3yzrbH.js → _D5cTCYFn.js} +1 -1
- package/dist/public/assets/{_cD-1rSR0.js → _D8L5Ci6w.js} +1 -1
- package/dist/public/assets/_D8L5Ci6w.js.br +0 -0
- package/dist/public/assets/{_BSWbHxCY.js → _D9My8aQO.js} +1 -1
- package/dist/public/assets/_D9My8aQO.js.br +0 -0
- package/dist/public/assets/{_CzVwuFx1.js → _DGvodZlR.js} +1 -1
- package/dist/public/assets/_DGvodZlR.js.br +0 -0
- package/dist/public/assets/_DHoW9H92.js +1 -0
- package/dist/public/assets/_DI-_ehda.js +1 -0
- package/dist/public/assets/_DIHjcKHw.js +1 -0
- package/dist/public/assets/{_CBxJtA8-.js → _DIpOuScW.js} +1 -1
- package/dist/public/assets/_DIpOuScW.js.br +0 -0
- package/dist/public/assets/{_CBjY-Owk.js → _DKZHF4Nv.js} +1 -1
- package/dist/public/assets/_DKZHF4Nv.js.br +0 -0
- package/dist/public/assets/{_D4q27YcR.js → _DLm9Havl.js} +2 -2
- package/dist/public/assets/_DLm9Havl.js.br +0 -0
- package/dist/public/assets/{_-kI3GOeS.js → _DMfntr1s.js} +1 -1
- package/dist/public/assets/_DMfntr1s.js.br +0 -0
- package/dist/public/assets/_DMm87oUv.js +1 -0
- package/dist/public/assets/_DOhsbDLa.js +1 -0
- package/dist/public/assets/{_BmFEr68s.js → _DQi3fIYP.js} +1 -1
- package/dist/public/assets/_DQi3fIYP.js.br +0 -0
- package/dist/public/assets/{_D8KWswb0.js → _DSE8pg3h.js} +1 -1
- package/dist/public/assets/_DSE8pg3h.js.br +0 -0
- package/dist/public/assets/_D_6eD8j3.js +1 -0
- package/dist/public/assets/_DcxtAmo-.js +1 -0
- package/dist/public/assets/{_BawmACQw.js → _DdOasiF_.js} +1 -1
- package/dist/public/assets/_DdOasiF_.js.br +0 -0
- package/dist/public/assets/{_Bj791NWn.js → _DdnHJ8Kq.js} +1 -1
- package/dist/public/assets/_DdnHJ8Kq.js.br +0 -0
- package/dist/public/assets/_DezI6gnA.js +1 -0
- package/dist/public/assets/{_DBNoOugb.js → _DfNVsO8k.js} +1 -1
- package/dist/public/assets/_DfNVsO8k.js.br +0 -0
- package/dist/public/assets/_DgjF1STl.js +1 -0
- package/dist/public/assets/{_Dia8vw0n.js → _DhoMF2cz.js} +1 -1
- package/dist/public/assets/_DhoMF2cz.js.br +0 -0
- package/dist/public/assets/{_5B_JQzQu.js → _DjSqGVfl.js} +1 -1
- package/dist/public/assets/_DjSqGVfl.js.br +0 -0
- package/dist/public/assets/_DkFEbOBr.js +1 -0
- package/dist/public/assets/_DkkcAqbk.js +1 -0
- package/dist/public/assets/_Dp9TI35N.js +1 -0
- package/dist/public/assets/{_BBF0tnse.js → _DpULBssi.js} +1 -1
- package/dist/public/assets/_DpULBssi.js.br +0 -0
- package/dist/public/assets/_DpzCznBl.js +1 -0
- package/dist/public/assets/{_COOttE1w.js → _DrvAhj7O.js} +1 -1
- package/dist/public/assets/_DrvAhj7O.js.br +0 -0
- package/dist/public/assets/_DsVAGttj.js +1 -0
- package/dist/public/assets/_DuHu0WRs.js +1 -0
- package/dist/public/assets/{_NSlW70PO.js → _DuNMiqGZ.js} +1 -1
- package/dist/public/assets/_DuNMiqGZ.js.br +0 -0
- package/dist/public/assets/_DulJnxtm.js +1 -0
- package/dist/public/assets/{_C7jvXNag.js → _Dumi0RZ1.js} +1 -1
- package/dist/public/assets/_Dumi0RZ1.js.br +0 -0
- package/dist/public/assets/_DvJc1jSF.js +1 -0
- package/dist/public/assets/{_Cs1w06Cs.js → _DwOSwLjq.js} +1 -1
- package/dist/public/assets/_DwOSwLjq.js.br +0 -0
- package/dist/public/assets/{_BOx4DoEG.js → _Dx0tsmHe.js} +1 -1
- package/dist/public/assets/_Dx0tsmHe.js.br +0 -0
- package/dist/public/assets/{_BcQ5DQmA.js → _E3S13WyV.js} +1 -1
- package/dist/public/assets/_FjvRrhCB.js +1 -0
- package/dist/public/assets/{_CdCZ28Ds.js → _G-GLfHX8.js} +1 -1
- package/dist/public/assets/_G-GLfHX8.js.br +0 -0
- package/dist/public/assets/{_D97qp8Qo.js → _G1EPp0PT.js} +1 -1
- package/dist/public/assets/_KrsBZBn3.js +1 -0
- package/dist/public/assets/_MR9h7pkP.js +1 -0
- package/dist/public/assets/{_CyYD6aqo.js → _NATcBWS4.js} +1 -1
- package/dist/public/assets/_NATcBWS4.js.br +0 -0
- package/dist/public/assets/{_g44xIxuC.js → _OsNkXSZB.js} +6 -6
- package/dist/public/assets/_OsNkXSZB.js.br +0 -0
- package/dist/public/assets/{_BuOA7y0Q.js → _Qo-0ok5W.js} +1 -1
- package/dist/public/assets/_Qo-0ok5W.js.br +0 -0
- package/dist/public/assets/_RD_Hz0H2.js +1 -0
- package/dist/public/assets/_RV_K_kHP.js +1 -0
- package/dist/public/assets/{_DThSzqCB.js → _TCOeDlhN.js} +1 -1
- package/dist/public/assets/_UoM3DIZw.js +1 -0
- package/dist/public/assets/{_BiLxP6RD.js → _VkJUIicU.js} +1 -1
- package/dist/public/assets/_VkJUIicU.js.br +0 -0
- package/dist/public/assets/_WdENvayy.js +1 -0
- package/dist/public/assets/{_yseYrl9j.js → _Z-GJPVlS.js} +1 -1
- package/dist/public/assets/{_BZhglPNq.js → _b6KoGl3T.js} +1 -1
- package/dist/public/assets/_b6KoGl3T.js.br +0 -0
- package/dist/public/assets/{_CxZPR9o6.js → _ek3ORfsa.js} +1 -1
- package/dist/public/assets/_ek3ORfsa.js.br +0 -0
- package/dist/public/assets/{_CFjYOkqy.js → _fH8hCjbL.js} +1 -1
- package/dist/public/assets/_fH8hCjbL.js.br +0 -0
- package/dist/public/assets/_fuNRGkMa.js +1 -0
- package/dist/public/assets/{_BTSoj3wt.js → _gW77953_.js} +1 -1
- package/dist/public/assets/_gW77953_.js.br +0 -0
- package/dist/public/assets/{_ByJSAVsB.js → _htAYY3cR.js} +1 -1
- package/dist/public/assets/_htAYY3cR.js.br +0 -0
- package/dist/public/assets/_kSD4rzLI.js +1 -0
- package/dist/public/assets/{_D0GMo9Y1.js → _lYsK448e.js} +1 -1
- package/dist/public/assets/_lYsK448e.js.br +0 -0
- package/dist/public/assets/_mplkJgT0.js +1 -0
- package/dist/public/assets/{_yDrjhhJM.js → _nNZypv5M.js} +1 -1
- package/dist/public/assets/_nNZypv5M.js.br +0 -0
- package/dist/public/assets/_oMjldHvb.js +1 -0
- package/dist/public/assets/{_D6WaPEUJ.js → _owsls_KV.js} +1 -1
- package/dist/public/assets/_owsls_KV.js.br +0 -0
- package/dist/public/assets/{_CE2XZzCG.js → _qQNZOtN1.js} +1 -1
- package/dist/public/assets/_qQNZOtN1.js.br +0 -0
- package/dist/public/assets/_rBdtlfyy.js +1 -0
- package/dist/public/assets/{_DcAzPygU.js → _vKg7PBfN.js} +1 -1
- package/dist/public/assets/_vKg7PBfN.js.br +0 -0
- package/dist/public/assets/_vjVYHF3d.js +1 -0
- package/dist/public/assets/_vrzgL0Wk.js +1 -0
- package/dist/public/assets/_xJf-SuLN.js +1 -0
- package/dist/public/assets/{_DtUHmSgv.js → _zBTheEl3.js} +1 -1
- package/dist/public/assets/_zBTheEl3.js.br +0 -0
- package/dist/public/assets/files-view-UKaYNe4G.js +2 -0
- package/dist/public/assets/manage-workspace-Ck4Sbcut.js +2 -0
- package/dist/public/assets/new-CxpCkv-N.js +1 -0
- package/dist/public/assets/new-workspace-DSCQSeB-.js +2 -0
- package/dist/public/assets/review-view-BvXcLpwu.js +2 -0
- package/dist/public/assets/settings-CxpCkv-N.js +1 -0
- package/dist/public/assets/settings-page-CsWZu0Xz.js +2 -0
- package/dist/public/assets/styles-DsAPj1i4.css +1 -0
- package/dist/public/assets/styles-DsAPj1i4.css.br +0 -0
- package/dist/public/assets/w-CxpCkv-N.js +1 -0
- package/dist/public/assets/w._-C7I7a8wD.js +1 -0
- package/dist/public/assets/w._-CxpCkv-N.js +1 -0
- package/dist/public/assets/w._-pj9rjug_.js +1 -0
- package/package.json +1 -1
- package/dist/public/assets/_-kI3GOeS.js.br +0 -0
- package/dist/public/assets/_3KDJRitR.js +0 -1
- package/dist/public/assets/_3rli7DCF.js +0 -1
- package/dist/public/assets/_3z4U5yAj.js.br +0 -0
- package/dist/public/assets/_4fKJbkf1.js +0 -1
- package/dist/public/assets/_5B_JQzQu.js.br +0 -0
- package/dist/public/assets/_6-KjcfMs.js +0 -1
- package/dist/public/assets/_75LHF1xz.js +0 -1
- package/dist/public/assets/_9LZMQsWk.js.br +0 -0
- package/dist/public/assets/_AdsZZXF4.js.br +0 -0
- package/dist/public/assets/_B-2L6woX.js +0 -1
- package/dist/public/assets/_B1VvRvTB.js +0 -1
- package/dist/public/assets/_B3nkNnXm.js.br +0 -0
- package/dist/public/assets/_B6_WLMJi.js.br +0 -0
- package/dist/public/assets/_B7sAK3rf.js.br +0 -0
- package/dist/public/assets/_B7tkawQT.js.br +0 -0
- package/dist/public/assets/_B8nt6Slz.js +0 -1
- package/dist/public/assets/_B91tpTwE.js.br +0 -0
- package/dist/public/assets/_BAA6M_qP.js.br +0 -0
- package/dist/public/assets/_BB5w80WL.js.br +0 -0
- package/dist/public/assets/_BBF0tnse.js.br +0 -0
- package/dist/public/assets/_BBxa-P-y.js +0 -1
- package/dist/public/assets/_BDv8d3aq.js +0 -1
- package/dist/public/assets/_BGsvGmtK.js.br +0 -0
- package/dist/public/assets/_BHpwo3pV.js.br +0 -0
- package/dist/public/assets/_BKxjt9fW.js +0 -1
- package/dist/public/assets/_BMpnfeXM.js +0 -1
- package/dist/public/assets/_BOx4DoEG.js.br +0 -0
- package/dist/public/assets/_BS7nZUPB.js +0 -1
- package/dist/public/assets/_BSWbHxCY.js.br +0 -0
- package/dist/public/assets/_BSojMDcw.js +0 -1
- package/dist/public/assets/_BTSoj3wt.js.br +0 -0
- package/dist/public/assets/_BU214RiN.js.br +0 -0
- package/dist/public/assets/_BUFxei3D.js +0 -1
- package/dist/public/assets/_BWDT5LSf.js +0 -1
- package/dist/public/assets/_BY1lrzB2.js +0 -1
- package/dist/public/assets/_BZEcMcJR.js +0 -1
- package/dist/public/assets/_BZQB2204.js.br +0 -0
- package/dist/public/assets/_BZhglPNq.js.br +0 -0
- package/dist/public/assets/_BawmACQw.js.br +0 -0
- package/dist/public/assets/_Bc5hRZw7.js +0 -1
- package/dist/public/assets/_Bcjm1xFP.js +0 -1
- package/dist/public/assets/_BeumRtRb.js.br +0 -0
- package/dist/public/assets/_Beyc-Xsa.js.br +0 -0
- package/dist/public/assets/_BgojYZh1.js.br +0 -0
- package/dist/public/assets/_BhUijjJj.js.br +0 -0
- package/dist/public/assets/_BiLxP6RD.js.br +0 -0
- package/dist/public/assets/_Bj791NWn.js.br +0 -0
- package/dist/public/assets/_BmDnge_D.js +0 -1
- package/dist/public/assets/_BmFEr68s.js.br +0 -0
- package/dist/public/assets/_BpfdofDP.js +0 -1
- package/dist/public/assets/_Bplq2Q0Z.js +0 -1
- package/dist/public/assets/_BsBCzJdk.js +0 -1
- package/dist/public/assets/_BuOA7y0Q.js.br +0 -0
- package/dist/public/assets/_BuwiSesg.js +0 -1
- package/dist/public/assets/_BvNQLfc4.js.br +0 -0
- package/dist/public/assets/_BxL97cif.js +0 -1
- package/dist/public/assets/_ByJSAVsB.js.br +0 -0
- package/dist/public/assets/_ByQJ7LF4.js.br +0 -0
- package/dist/public/assets/_C0oNPhE6.js +0 -1
- package/dist/public/assets/_C2y0tmgK.js.br +0 -0
- package/dist/public/assets/_C2zJPa-j.js.br +0 -0
- package/dist/public/assets/_C3ppNeBl.js +0 -1
- package/dist/public/assets/_C4fRJVcm.js +0 -1
- package/dist/public/assets/_C7Y7zxOd.js.br +0 -0
- package/dist/public/assets/_C7jvXNag.js.br +0 -0
- package/dist/public/assets/_CBjY-Owk.js.br +0 -0
- package/dist/public/assets/_CBxJtA8-.js.br +0 -0
- package/dist/public/assets/_CDt9qbOO.js.br +0 -0
- package/dist/public/assets/_CE2XZzCG.js.br +0 -0
- package/dist/public/assets/_CFjYOkqy.js.br +0 -0
- package/dist/public/assets/_CFrlmGPb.js.br +0 -0
- package/dist/public/assets/_CIbYjP43.js.br +0 -0
- package/dist/public/assets/_CIqr2E-Z.js +0 -1
- package/dist/public/assets/_CJ3CynCs.js.br +0 -0
- package/dist/public/assets/_CJMen7S8.js +0 -1
- package/dist/public/assets/_CKDkglpP.js.br +0 -0
- package/dist/public/assets/_CO78rfNI.js +0 -1
- package/dist/public/assets/_COOttE1w.js.br +0 -0
- package/dist/public/assets/_COeAM4yX.js +0 -1
- package/dist/public/assets/_CV1XzTHF.js +0 -1
- package/dist/public/assets/_CWQ8L5Cw.js +0 -1
- package/dist/public/assets/_CXGKxkXO.js.br +0 -0
- package/dist/public/assets/_CamgKCb9.js +0 -1
- package/dist/public/assets/_Cb4uDl3F.js +0 -1
- package/dist/public/assets/_CbwqktMI.js +0 -1
- package/dist/public/assets/_Ccz8FgmZ.js +0 -1
- package/dist/public/assets/_Ccz8FgmZ.js.br +0 -0
- package/dist/public/assets/_CdCZ28Ds.js.br +0 -0
- package/dist/public/assets/_Cdq1chtg.js +0 -1
- package/dist/public/assets/_CdvBPzrZ.js +0 -1
- package/dist/public/assets/_CeVcsxyE.js +0 -1
- package/dist/public/assets/_Cf2KBIuc.js +0 -1
- package/dist/public/assets/_CfxWM8m5.js +0 -1
- package/dist/public/assets/_CiZYgdZ7.js +0 -1
- package/dist/public/assets/_CmKqDjtG.js +0 -1
- package/dist/public/assets/_CmccfrUL.js.br +0 -0
- package/dist/public/assets/_CqM5U4Nt.js +0 -1
- package/dist/public/assets/_Cs1w06Cs.js.br +0 -0
- package/dist/public/assets/_CtWeib89.js +0 -1
- package/dist/public/assets/_CvlGgCgA.js.br +0 -0
- package/dist/public/assets/_CxZPR9o6.js.br +0 -0
- package/dist/public/assets/_CyYD6aqo.js.br +0 -0
- package/dist/public/assets/_CzVwuFx1.js.br +0 -0
- package/dist/public/assets/_D0GMo9Y1.js.br +0 -0
- package/dist/public/assets/_D1RferGz.js.br +0 -0
- package/dist/public/assets/_D4q27YcR.js.br +0 -0
- package/dist/public/assets/_D5Ofkvm_.js +0 -1
- package/dist/public/assets/_D5XFsjyE.js.br +0 -0
- package/dist/public/assets/_D5yWyDHd.js +0 -1
- package/dist/public/assets/_D69FxN5T.js +0 -1
- package/dist/public/assets/_D6WaPEUJ.js.br +0 -0
- package/dist/public/assets/_D7O5UfJx.js +0 -1
- package/dist/public/assets/_D8KWswb0.js.br +0 -0
- package/dist/public/assets/_D8Y8OuSd.js.br +0 -0
- package/dist/public/assets/_DAc5P0Tq.js.br +0 -0
- package/dist/public/assets/_DBNoOugb.js.br +0 -0
- package/dist/public/assets/_DC0nz9hY.js +0 -1
- package/dist/public/assets/_DEwXlIFR.js +0 -1
- package/dist/public/assets/_DIdWMwhe.js.br +0 -0
- package/dist/public/assets/_DK_Mg3Uu.js +0 -1
- package/dist/public/assets/_DN4qfzJZ.js.br +0 -0
- package/dist/public/assets/_DQE-0uxQ.js +0 -1
- package/dist/public/assets/_DRNgui9d.js +0 -1
- package/dist/public/assets/_DRSu-WSN.js.br +0 -0
- package/dist/public/assets/_DRlmzrbh.js +0 -1
- package/dist/public/assets/_DSjjrIUk.js.br +0 -0
- package/dist/public/assets/_DT3dK74Q.js.br +0 -0
- package/dist/public/assets/_DUMZVSqe.js.br +0 -0
- package/dist/public/assets/_DVc7jXIG.js.br +0 -0
- package/dist/public/assets/_DY-TpJ8r.js.br +0 -0
- package/dist/public/assets/_DY8DHmAe.js.br +0 -0
- package/dist/public/assets/_D_AcTgCV.js.br +0 -0
- package/dist/public/assets/_DaP1qV3l.js +0 -1
- package/dist/public/assets/_DbIVIWVO.js.br +0 -0
- package/dist/public/assets/_DcAzPygU.js.br +0 -0
- package/dist/public/assets/_DgAYZPtd.js.br +0 -0
- package/dist/public/assets/_DhgZLOP4.js.br +0 -0
- package/dist/public/assets/_Dia8vw0n.js.br +0 -0
- package/dist/public/assets/_Dk7nrnBX.js +0 -1
- package/dist/public/assets/_DkfIZwub.js +0 -1
- package/dist/public/assets/_DpO-56Rm.js +0 -1
- package/dist/public/assets/_Dq947wTV.js.br +0 -0
- package/dist/public/assets/_DqYTIZww.js +0 -1
- package/dist/public/assets/_DtUHmSgv.js.br +0 -0
- package/dist/public/assets/_DwO4_KlL.js.br +0 -0
- package/dist/public/assets/_DwoGuqHG.js +0 -1
- package/dist/public/assets/_Dy2ZmK8T.js.br +0 -0
- package/dist/public/assets/_Gh-GaA86.js +0 -1
- package/dist/public/assets/_MJuw39ym.js +0 -1
- package/dist/public/assets/_N17k0AUO.js.br +0 -0
- package/dist/public/assets/_NLNd72-Y.js.br +0 -0
- package/dist/public/assets/_NSlW70PO.js.br +0 -0
- package/dist/public/assets/_P55-xlZx.js.br +0 -0
- package/dist/public/assets/_PWL7HWcH.js +0 -1
- package/dist/public/assets/_Rk9ba3XI.js +0 -1
- package/dist/public/assets/_Ru__4D8t.js +0 -1
- package/dist/public/assets/_Shrmfsq5.js +0 -1
- package/dist/public/assets/_TuTXrRqk.js +0 -1
- package/dist/public/assets/_X8dyf9XG.js +0 -1
- package/dist/public/assets/_YOp-b2VF.js +0 -1
- package/dist/public/assets/_YlW2OtxR.js.br +0 -0
- package/dist/public/assets/__DYKyMP8.js +0 -1
- package/dist/public/assets/_aY8JSH8-.js +0 -1
- package/dist/public/assets/_aY8JSH8-.js.br +0 -0
- package/dist/public/assets/_cD-1rSR0.js.br +0 -0
- package/dist/public/assets/_dtBymh4C.js +0 -1
- package/dist/public/assets/_g44xIxuC.js.br +0 -0
- package/dist/public/assets/_mN0msEVf.js.br +0 -0
- package/dist/public/assets/_nXnRiOBU.js +0 -1
- package/dist/public/assets/_rv7ZzCx5.js +0 -1
- package/dist/public/assets/_tuHBYCL3.js.br +0 -0
- package/dist/public/assets/_tuhK1P1S.js +0 -1
- package/dist/public/assets/_yDrjhhJM.js.br +0 -0
- package/dist/public/assets/_yY2Cj2kE.js +0 -1
- package/dist/public/assets/_zUK10a_s.js +0 -1
- package/dist/public/assets/files-view-C8IBkepj.js +0 -2
- package/dist/public/assets/manage-workspace-DkWH24a8.js +0 -2
- package/dist/public/assets/new-C_Vv6GHE.js +0 -1
- package/dist/public/assets/new-workspace-IyUPSxFN.js +0 -2
- package/dist/public/assets/review-view-CCGilqtv.js +0 -2
- package/dist/public/assets/settings-C_Vv6GHE.js +0 -1
- package/dist/public/assets/settings-page-BQVuESg9.js +0 -2
- package/dist/public/assets/styles-oPOujz3_.css +0 -1
- package/dist/public/assets/styles-oPOujz3_.css.br +0 -0
- package/dist/public/assets/w-C_Vv6GHE.js +0 -1
- package/dist/public/assets/w._-C_Vv6GHE.js +0 -1
- package/dist/public/assets/w._-DGVZgJDn.js +0 -1
- package/dist/public/assets/w._-qhFQCl0q.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{rn as e}from"./_g44xIxuC.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"Shell","name":"shellscript","patterns":[{"include":"#initial_context"}],"repository":{"alias_statement":{"begin":"[\\\\t ]*+(alias)[\\\\t ]*+((?:((?<!\\\\w)-\\\\w+)\\\\b[\\\\t ]*+)*)[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))","beginCaptures":{"1":{"name":"storage.type.alias.shell"},"2":{"patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"}]},"3":{"name":"string.unquoted.argument.shell constant.other.option.shell"},"4":{"name":"variable.other.assignment.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"variable.other.assignment.shell"},"7":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"8":{"name":"punctuation.definition.array.access.shell"},"9":{"name":"keyword.operator.assignment.shell"},"10":{"name":"keyword.operator.assignment.compound.shell"},"11":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?=[\\\\t ]|$)|(?:(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&))","endCaptures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"name":"meta.expression.assignment.alias.shell","patterns":[{"include":"#normal_context"}]},"argument":{"begin":"[\\\\t ]++(?![\\\\n#\\\\&(\\\\[|]|$|;)","beginCaptures":{},"end":"(?=[\\\\t \\\\&;|]|$|[\\\\n)\`])","endCaptures":{},"name":"meta.argument.shell","patterns":[{"include":"#argument_context"},{"include":"#line_continuation"}]},"argument_context":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell","patterns":[{"match":"\\\\*","name":"variable.language.special.wildcard.shell"},{"include":"#variable"},{"include":"#numeric_literal"},{"captures":{"1":{"name":"constant.language.$1.shell"}},"match":"(?<!\\\\w)\\\\b(true|false)\\\\b(?!\\\\w)"}]}},"match":"[\\\\t ]*+([^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]+(?!>))"},{"include":"#normal_context"}]},"arithmetic_double":{"patterns":[{"begin":"\\\\(\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"end":"\\\\)\\\\s*\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"arithmetic_no_dollar":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"array_access_inline":{"captures":{"1":{"name":"punctuation.section.array.shell"},"2":{"patterns":[{"include":"#special_expansion"},{"include":"#string"},{"include":"#variable"}]},"3":{"name":"punctuation.section.array.shell"}},"match":"(\\\\[)([^]\\\\[]+)(])"},"array_value":{"begin":"[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))[\\\\t ]*+(\\\\()","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"punctuation.definition.array.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.shell"}},"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"variable.other.assignment.array.shell entity.other.attribute-name.shell"},"2":{"name":"keyword.operator.assignment.shell punctuation.definition.assignment.shell"}},"match":"((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(=)"},{"captures":{"1":{"name":"punctuation.definition.bracket.named-array.shell"},"2":{"name":"string.unquoted.shell entity.other.attribute-name.bracket.shell"},"3":{"name":"punctuation.definition.bracket.named-array.shell"},"4":{"name":"punctuation.definition.assignment.shell"}},"match":"(\\\\[)(.+?)(])(=)"},{"include":"#normal_context"},{"include":"#simple_unquoted"}]},"assignment_statement":{"patterns":[{"include":"#array_value"},{"include":"#modified_assignment_statement"},{"include":"#normal_assignment_statement"}]},"basic_command_name":{"captures":{"1":{"name":"storage.modifier.$1.shell"},"2":{"name":"entity.name.function.call.shell entity.name.command.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|[.:])(?!/)(?!\\\\w)(?!-)","name":"support.function.builtin.shell"},{"include":"#variable"}]}},"match":"(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?:((?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$))|((?![\\"']|\\\\\\\\\\\\n?$)[^\\\\t\\\\n\\\\r !\\"'<>]+?))(?:(?=[\\\\t ])|(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\))","name":"meta.statement.command.name.basic.shell"},"block_comment":{"begin":"\\\\s*+(/\\\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.shell"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.shell"}},"name":"comment.block.shell"},"boolean":{"match":"\\\\b(?:true|false)\\\\b","name":"constant.language.$0.shell"},"case_statement":{"begin":"\\\\b(case)\\\\b[\\\\t ]*+(.+?)[\\\\t ]*+\\\\b(in)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.shell"},"2":{"patterns":[{"include":"#initial_context"}]},"3":{"name":"keyword.control.in.shell"}},"end":"\\\\besac\\\\b","endCaptures":{"0":{"name":"keyword.control.esac.shell"}},"name":"meta.case.shell","patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.operator.pattern.case.default.shell"}},"match":"[\\\\t ]*+(\\\\* *\\\\))"},{"begin":"(?<!\\\\))(?![\\\\t ]*+(?:esac\\\\b|$))","beginCaptures":{},"end":"(?=\\\\besac\\\\b)|(\\\\))","endCaptures":{"1":{"name":"keyword.operator.pattern.case.shell"}},"name":"meta.case.entry.pattern.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"(?<=\\\\))","beginCaptures":{},"end":"(;;)|(?=\\\\besac\\\\b)","endCaptures":{"1":{"name":"punctuation.terminator.statement.case.shell"}},"name":"meta.case.entry.body.shell","patterns":[{"include":"#typical_statements"},{"include":"#initial_context"}]}]},"case_statement_context":{"patterns":[{"match":"\\\\*","name":"variable.language.special.quantifier.star.shell keyword.operator.quantifier.star.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\+","name":"variable.language.special.quantifier.plus.shell keyword.operator.quantifier.plus.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\?","name":"variable.language.special.quantifier.question.shell keyword.operator.quantifier.question.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"@","name":"variable.language.special.at.shell keyword.operator.at.shell punctuation.definition.regex.at.shell"},{"match":"\\\\|","name":"keyword.operator.orvariable.language.special.or.shell keyword.operator.alternation.ruby.shell punctuation.definition.regex.alternation.shell punctuation.separator.regex.alternation.shell"},{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"match":"(?<=\\\\tin| in|[\\\\t ]|;;)\\\\(","name":"keyword.operator.pattern.case.shell"},{"begin":"(?<=\\\\S)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"name":"meta.parenthese.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"name":"string.regexp.character-class.shell","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"}]},{"include":"#string"},{"match":"[^\\\\t\\\\n )*?@\\\\[|]","name":"string.unquoted.pattern.shell string.regexp.unquoted.shell"}]},"command_name_range":{"begin":"\\\\G","beginCaptures":{},"end":"(?=[\\\\t \\\\&;|]|$|[\\\\n)\`])|(?=<)","endCaptures":{},"name":"meta.statement.command.name.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"entity.name.function.call.shell entity.name.command.shell keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|[.:])(?!/)(?!\\\\w)(?!-)","name":"entity.name.function.call.shell entity.name.command.shell support.function.builtin.shell"},{"include":"#variable"},{"captures":{"1":{"name":"entity.name.function.call.shell entity.name.command.shell"}},"match":"(?<!\\\\w)(?<=\\\\G|[\\"')}])([^\\\\t\\\\n\\\\r \\"\\\\&');->\`{|]+)"},{"begin":"(?:\\\\G|(?<![\\\\t\\\\n #\\\\&;{|]))(\\\\$?)((\\")|('))","beginCaptures":{"1":{"name":"meta.statement.command.name.quoted.shell punctuation.definition.string.shell entity.name.function.call.shell entity.name.command.shell"},"2":{},"3":{"name":"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},"4":{"name":"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"}},"end":"(?<!\\\\G)(?<=\\\\2)","endCaptures":{},"patterns":[{"include":"#continuation_of_single_quoted_command_name"},{"include":"#continuation_of_double_quoted_command_name"}]},{"include":"#line_continuation"},{"include":"#simple_unquoted"}]},"command_statement":{"begin":"[\\\\t ]*+(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\n?$)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"},{"include":"#heredoc"}]},"comment":{"captures":{"1":{"name":"comment.line.number-sign.shell meta.shebang.shell"},"2":{"name":"punctuation.definition.comment.shebang.shell"},"3":{"name":"comment.line.number-sign.shell"},"4":{"name":"punctuation.definition.comment.shell"}},"match":"(?:^|[\\\\t ]++)(?:((#!).*)|((#).*))"},"comments":{"patterns":[{"include":"#block_comment"},{"include":"#line_comment"}]},"compound-command":{"patterns":[{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical-expression"},{"include":"#initial_context"}]},{"begin":"(?<=\\\\s|^)\\\\{(?=\\\\s|$)","beginCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"end":"(?<=^|;)\\\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"continuation_of_double_quoted_command_name":{"begin":"\\\\G(?<=\\")","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.double entity.name.function.call entity.name.command","end":"\\"","endCaptures":{"0":{"name":"string.quoted.double.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}},"patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"continuation_of_single_quoted_command_name":{"begin":"\\\\G(?<=')","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.single entity.name.function.call entity.name.command","end":"'","endCaptures":{"0":{"name":"string.quoted.single.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}}},"custom_command_names":{"patterns":[]},"custom_commands":{"patterns":[]},"double_quote_context":{"patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"double_quote_escape_char":{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},"floating_keyword":{"patterns":[{"match":"(?<=^|[\\\\t \\\\&;])(?:then|elif|else|done|end|do|if|fi)(?=[\\\\t \\\\&;]|$)","name":"keyword.control.$0.shell"}]},"for_statement":{"patterns":[{"begin":"\\\\b(for)\\\\b[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))[\\\\t ]*+\\\\b(in)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.shell"},"2":{"name":"variable.other.for.shell"},"3":{"name":"keyword.control.in.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.in.shell","patterns":[{"include":"#string"},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},{"begin":"\\\\b(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.shell","patterns":[{"include":"#arithmetic_double"},{"include":"#normal_context"}]}]},"function_definition":{"applyEndPatternLast":1,"begin":"[\\\\t ]*+(?:\\\\b(function)\\\\b[\\\\t ]*+([^\\\\t\\\\n\\\\r \\"'()=]+)(?:(\\\\()[\\\\t ]*+(\\\\)))?|([^\\\\t\\\\n\\\\r \\"'()=]+)[\\\\t ]*+(\\\\()[\\\\t ]*+(\\\\)))","beginCaptures":{"1":{"name":"storage.type.function.shell"},"2":{"name":"entity.name.function.shell"},"3":{"name":"punctuation.definition.arguments.shell"},"4":{"name":"punctuation.definition.arguments.shell"},"5":{"name":"entity.name.function.shell"},"6":{"name":"punctuation.definition.arguments.shell"},"7":{"name":"punctuation.definition.arguments.shell"}},"end":"(?<=[)}])","endCaptures":{},"name":"meta.function.shell","patterns":[{"match":"\\\\G[\\\\t\\\\n ]"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"include":"#initial_context"}]},"heredoc":{"patterns":[{"begin":"((?<!<)<<-)[\\\\t ]*+([\\"'])[\\\\t ]*+([^\\"']+?)(?=[\\"\\\\&';<\\\\s])(\\\\2)(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.indent.$3","end":"^\\\\t*\\\\3(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.$0.shell"}},"patterns":[]},{"begin":"((?<!<)<<(?!<))[\\\\t ]*+([\\"'])[\\\\t ]*+([^\\"']+?)(?=[\\"\\\\&';<\\\\s])(\\\\2)(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.no-indent.$3","end":"^\\\\3(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[]},{"begin":"((?<!<)<<-)[\\\\t ]*+([^\\\\t \\"']+)(?=[\\"\\\\&';<\\\\s])(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.indent.$2","end":"^\\\\t*\\\\2(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"((?<!<)<<(?!<))[\\\\t ]*+([^\\\\t \\"']+)(?=[\\"\\\\&';<\\\\s])(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.no-indent.$2","end":"^\\\\2(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]}]},"herestring":{"patterns":[{"begin":"(<<<)\\\\s*(('))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.single.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.single.shell","end":"(')","endCaptures":{"0":{"name":"string.quoted.single.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell"},{"begin":"(<<<)\\\\s*((\\"))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.double.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.double.shell","end":"(\\")","endCaptures":{"0":{"name":"string.quoted.double.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell","patterns":[{"include":"#double_quote_context"}]},{"captures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.unquoted.herestring.shell","patterns":[{"include":"#initial_context"}]}},"match":"(<<<)\\\\s*(([^)\\\\\\\\\\\\s]|\\\\\\\\.)+)","name":"meta.herestring.shell"}]},"initial_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#logical_expression_double"},{"include":"#logical_expression_single"},{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#loop"},{"include":"#function_definition"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#misc_ranges"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#alias_statement"},{"include":"#normal_statement"},{"include":"#string"},{"include":"#support"}]},"inline_comment":{"captures":{"1":{"name":"comment.block.shell punctuation.definition.comment.begin.shell"},"2":{"name":"comment.block.shell"},"3":{"patterns":[{"match":"\\\\*/","name":"comment.block.shell punctuation.definition.comment.end.shell"},{"match":"\\\\*","name":"comment.block.shell"}]}},"match":"(/\\\\*)((?:[^*]|\\\\*++[^/])*+(\\\\*++/))"},"interpolation":{"patterns":[{"include":"#arithmetic_dollar"},{"include":"#subshell_dollar"},{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"name":"string.interpolated.backtick.shell","patterns":[{"match":"\\\\\\\\[$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"begin":"(?<=\\\\W)(?=#)(?!#\\\\{)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.shell"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.shell"}},"end":"(?=\`)","name":"comment.line.number-sign.shell"}]},{"include":"#initial_context"}]}]},"keyword":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])(then|else|elif|fi|for|in|do|done|select|continue|esac|while|until|return)(?=[\\\\&;\\\\s]|$)","name":"keyword.control.shell"},{"match":"(?<=^|[\\\\&;\\\\s])(?:export|declare|typeset|local|readonly)(?=[\\\\&;\\\\s]|$)","name":"storage.modifier.shell"}]},"line_comment":{"begin":"\\\\s*+(//)","beginCaptures":{"1":{"name":"punctuation.definition.comment.shell"}},"end":"(?<=\\\\n)(?<!\\\\\\\\\\\\n)","endCaptures":{},"name":"comment.line.double-slash.shell","patterns":[{"include":"#line_continuation_character"}]},"line_continuation":{"match":"\\\\\\\\(?=\\\\n)","name":"constant.character.escape.line-continuation.shell"},"logical-expression":{"patterns":[{"include":"#arithmetic_no_dollar"},{"match":"=[=~]?|!=?|[<>]|&&|\\\\|\\\\|","name":"keyword.operator.logical.shell"},{"match":"(?<!\\\\S)-(nt|ot|ef|eq|ne|l[et]|g[et]|[GLNOSa-hknopr-uwxz])\\\\b","name":"keyword.operator.logical.shell"}]},"logical_expression_context":{"patterns":[{"include":"#regex_comparison"},{"include":"#arithmetic_no_dollar"},{"include":"#logical-expression"},{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#comment"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"logical_expression_double":{"begin":"\\\\[\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"logical_expression_single":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"loop":{"patterns":[{"begin":"(?<=^|[\\\\&;\\\\s])(for)\\\\s+(.+?)\\\\s+(in)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell","patterns":[{"include":"#string"}]},"3":{"name":"keyword.control.shell"}},"end":"(?<=^|[\\\\&;\\\\s])done(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.for-in-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])(while|until)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"}},"end":"(?<=^|[\\\\&;\\\\s])done(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.while-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])(select)\\\\s+((?:[^\\\\\\\\\\\\s]|\\\\\\\\.)+)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell"}},"end":"(?<=^|[\\\\&;\\\\s])(done)(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"1":{"name":"keyword.control.shell"}},"name":"meta.scope.select-block.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])if(?=[\\\\&;\\\\s]|$)","beginCaptures":{"0":{"name":"keyword.control.if.shell"}},"end":"(?<=^|[\\\\&;\\\\s])fi(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"keyword.control.fi.shell"}},"name":"meta.scope.if-block.shell","patterns":[{"include":"#initial_context"}]}]},"math":{"patterns":[{"include":"#variable"},{"match":"\\\\+{1,2}|-{1,2}|[!~]|\\\\*{1,2}|[%/]|<[<=]?|>[=>]?|==|!=|^|\\\\|{1,2}|&{1,2}|[,:=?]|[-%\\\\&*+/^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[Xx]\\\\h+","name":"constant.numeric.hex.shell"},{"match":";","name":"punctuation.separator.semicolon.range"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9@-Z_a-z]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"},{"match":"(?<!\\\\w)[0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"}]},"math_operators":{"patterns":[{"match":"\\\\+{1,2}|-{1,2}|[!~]|\\\\*{1,2}|[%/]|<[<=]?|>[=>]?|==|!=|^|\\\\|{1,2}|&{1,2}|[,:=?]|[-%\\\\&*+/^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[Xx]\\\\h+","name":"constant.numeric.hex.shell"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9@-Z_a-z]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"}]},"misc_ranges":{"patterns":[{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#subshell_dollar"},{"begin":"(?<![^\\\\t ])(\\\\{)(?![$\\\\w])","beginCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"modified_assignment_statement":{"begin":"(?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$)","beginCaptures":{"0":{"name":"storage.modifier.$0.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell meta.expression.assignment.modified.shell","patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"},{"include":"#array_value"},{"captures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"10":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"11":{"name":"constant.numeric.shell constant.numeric.other.shell"},"12":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"13":{"name":"constant.numeric.shell constant.numeric.version.shell"},"14":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))?(?:(?<=[\\\\t =]|^|[(\\\\[{])(?:(?:(?:(?:(?:(0[Xx]\\\\h+)|(0\\\\d+))|(\\\\d{1,2}#[0-9@-Z_a-z]+))|(-?\\\\d+\\\\.\\\\d+))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?=[\\\\t ]|$|[);}]))?"},{"include":"#normal_context"}]},"modifiers":{"match":"(?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$)","name":"storage.modifier.$0.shell"},"normal_assignment_statement":{"begin":"[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.expression.assignment.shell","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#normal_assignment_statement"},{"begin":"(?<=[\\\\t ])(?![\\\\t ]|\\\\w+=)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.env.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"}]},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},"normal_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#misc_ranges"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"},{"include":"#parenthese"}]},"normal_statement":{"begin":"(?!^[\\\\t ]*+$)(?:(?<=(?:^until| until|\\\\tuntil|^while| while|\\\\twhile|^elif| elif|\\\\telif|^else| else|\\\\telse|^then| then|\\\\tthen|^do| do|\\\\tdo|^if| if|\\\\tif) )|(?<=^|[!\\\\&(;\`{|]))[\\\\t ]*+(?!nocorrect\\\\W|nocorrect\\\\$|function\\\\W|function\\\\$|foreach\\\\W|foreach\\\\$|repeat\\\\W|repeat\\\\$|logout\\\\W|logout\\\\$|coproc\\\\W|coproc\\\\$|select\\\\W|select\\\\$|while\\\\W|while\\\\$|pushd\\\\W|pushd\\\\$|until\\\\W|until\\\\$|case\\\\W|case\\\\$|done\\\\W|done\\\\$|elif\\\\W|elif\\\\$|else\\\\W|else\\\\$|esac\\\\W|esac\\\\$|popd\\\\W|popd\\\\$|then\\\\W|then\\\\$|time\\\\W|time\\\\$|for\\\\W|for\\\\$|end\\\\W|end\\\\$|fi\\\\W|fi\\\\$|do\\\\W|do\\\\$|in\\\\W|in\\\\$|if\\\\W|if\\\\$)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell","patterns":[{"include":"#typical_statements"}]},"normal_statement_seperator":{"captures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"match":"(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&)"},"numeric_literal":{"captures":{"1":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"2":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"3":{"name":"constant.numeric.shell constant.numeric.other.shell"},"4":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"5":{"name":"constant.numeric.shell constant.numeric.version.shell"},"6":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"(?<=[\\\\t =]|^|[(\\\\[{])(?:(?:(?:(?:(?:(0[Xx]\\\\h+)|(0\\\\d+))|(\\\\d{1,2}#[0-9@-Z_a-z]+))|(-?\\\\d+\\\\.\\\\d+))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?=[\\\\t ]|$|[);}])"},"option":{"begin":"[\\\\t ]++(-)((?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;]))","beginCaptures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"contentName":"string.unquoted.argument constant.other.option","end":"(?=[\\\\t ])|(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"patterns":[{"include":"#option_context"}]},"option_context":{"patterns":[{"include":"#misc_ranges"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"parenthese":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"name":"meta.parenthese.group.shell","patterns":[{"include":"#initial_context"}]}]},"pathname":{"patterns":[{"match":"(?<=[:=\\\\s]|^)~","name":"keyword.operator.tilde.shell"},{"match":"[*?]","name":"keyword.operator.glob.shell"},{"begin":"([!*+?@])(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.extglob.shell"},"2":{"name":"punctuation.definition.extglob.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.extglob.shell"}},"name":"meta.structure.extglob.shell","patterns":[{"include":"#initial_context"}]}]},"pipeline":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])(time)(?=[\\\\&;\\\\s]|$)","name":"keyword.other.shell"},{"match":"[!|]","name":"keyword.operator.pipe.shell"}]},"redirect_fix":{"captures":{"1":{"name":"keyword.operator.redirect.shell"},"2":{"name":"string.unquoted.argument.shell"}},"match":"(>>?)[\\\\t ]*+([^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]+)"},"redirect_number":{"captures":{"1":{"name":"keyword.operator.redirect.stdout.shell"},"2":{"name":"keyword.operator.redirect.stderr.shell"},"3":{"name":"keyword.operator.redirect.$3.shell"}},"match":"(?<=[\\\\t ])(?:(1)|(2)|(\\\\d+))(?=>)"},"redirection":{"patterns":[{"begin":"[<>]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.process-substitution.shell","patterns":[{"include":"#initial_context"}]},{"match":"(?<![<>])(&>|\\\\d*>&\\\\d*|\\\\d*(>>|[<>])|\\\\d*<&|\\\\d*<>)(?![<>])","name":"keyword.operator.redirect.shell"}]},"regex_comparison":{"match":"=~","name":"keyword.operator.logical.regex.shell"},"regexp":{"patterns":[{"match":".+"}]},"simple_options":{"captures":{"0":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"match":"[\\\\t ]++(-)(\\\\w+)"}]}},"match":"(?:[\\\\t ]++-\\\\w+)*"},"simple_unquoted":{"match":"[^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]","name":"string.unquoted.shell"},"special_expansion":{"match":"!|:[-=?]?|[*@]|##?|%%|[%/]","name":"keyword.operator.expansion.shell"},"start_of_command":{"match":"[\\\\t ]*+(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\n?$)"},"string":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.shell"},{"begin":"\\\\$?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.double.shell","patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"\\\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.dollar.shell","patterns":[{"match":"\\\\\\\\['\\\\\\\\abefnrtv]","name":"constant.character.escape.ansi-c.shell"},{"match":"\\\\\\\\[0-9]{3}\\"","name":"constant.character.escape.octal.shell"},{"match":"\\\\\\\\x\\\\h{2}\\"","name":"constant.character.escape.hex.shell"},{"match":"\\\\\\\\c.\\"","name":"constant.character.escape.control-char.shell"}]}]},"subshell_dollar":{"patterns":[{"begin":"\\\\$\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"name":"meta.scope.subshell","patterns":[{"include":"#parenthese"},{"include":"#initial_context"}]}]},"support":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])[.:](?=[\\\\&;\\\\s]|$)","name":"support.function.builtin.shell"}]},"typical_statements":{"patterns":[{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#while_statement"},{"include":"#function_definition"},{"include":"#command_statement"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#normal_context"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.all.shell"},"2":{"name":"variable.parameter.positional.all.shell"}},"match":"(\\\\$)(@(?!\\\\w))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"variable.parameter.positional.shell"}},"match":"(\\\\$)([0-9](?!\\\\w))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.language.special.shell"},"2":{"name":"variable.language.special.shell"}},"match":"(\\\\$)([-!#$*0?_](?!\\\\w))"},{"begin":"(\\\\$)(\\\\{)[\\\\t ]*+(?=\\\\d)","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"contentName":"meta.parameter-expansion","end":"}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"[0-9]+","name":"variable.parameter.positional.shell"},{"match":"(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"begin":"(\\\\$)(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell"}},"contentName":"meta.parameter-expansion","end":"}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.other.normal.shell"},"2":{"name":"variable.other.normal.shell"}},"match":"(\\\\$)(\\\\w+(?!\\\\w))"}]},"while_statement":{"patterns":[{"begin":"\\\\b(while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.while.shell","patterns":[{"include":"#line_continuation"},{"include":"#math_operators"},{"include":"#option"},{"include":"#simple_unquoted"},{"include":"#normal_context"},{"include":"#string"}]}]}},"scopeName":"source.shell","aliases":["bash","sh","shell","zsh"]}`))];export{t as n,n as t};
|
|
1
|
+
import{rn as e}from"./_OsNkXSZB.js";var t=e({default:()=>n}),n=[Object.freeze(JSON.parse(`{"displayName":"Shell","name":"shellscript","patterns":[{"include":"#initial_context"}],"repository":{"alias_statement":{"begin":"[\\\\t ]*+(alias)[\\\\t ]*+((?:((?<!\\\\w)-\\\\w+)\\\\b[\\\\t ]*+)*)[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))","beginCaptures":{"1":{"name":"storage.type.alias.shell"},"2":{"patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"}]},"3":{"name":"string.unquoted.argument.shell constant.other.option.shell"},"4":{"name":"variable.other.assignment.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"variable.other.assignment.shell"},"7":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"8":{"name":"punctuation.definition.array.access.shell"},"9":{"name":"keyword.operator.assignment.shell"},"10":{"name":"keyword.operator.assignment.compound.shell"},"11":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?=[\\\\t ]|$)|(?:(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&))","endCaptures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"name":"meta.expression.assignment.alias.shell","patterns":[{"include":"#normal_context"}]},"argument":{"begin":"[\\\\t ]++(?![\\\\n#\\\\&(\\\\[|]|$|;)","beginCaptures":{},"end":"(?=[\\\\t \\\\&;|]|$|[\\\\n)\`])","endCaptures":{},"name":"meta.argument.shell","patterns":[{"include":"#argument_context"},{"include":"#line_continuation"}]},"argument_context":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell","patterns":[{"match":"\\\\*","name":"variable.language.special.wildcard.shell"},{"include":"#variable"},{"include":"#numeric_literal"},{"captures":{"1":{"name":"constant.language.$1.shell"}},"match":"(?<!\\\\w)\\\\b(true|false)\\\\b(?!\\\\w)"}]}},"match":"[\\\\t ]*+([^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]+(?!>))"},{"include":"#normal_context"}]},"arithmetic_double":{"patterns":[{"begin":"\\\\(\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"end":"\\\\)\\\\s*\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"arithmetic_no_dollar":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"array_access_inline":{"captures":{"1":{"name":"punctuation.section.array.shell"},"2":{"patterns":[{"include":"#special_expansion"},{"include":"#string"},{"include":"#variable"}]},"3":{"name":"punctuation.section.array.shell"}},"match":"(\\\\[)([^]\\\\[]+)(])"},"array_value":{"begin":"[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))[\\\\t ]*+(\\\\()","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"punctuation.definition.array.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.shell"}},"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"variable.other.assignment.array.shell entity.other.attribute-name.shell"},"2":{"name":"keyword.operator.assignment.shell punctuation.definition.assignment.shell"}},"match":"((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(=)"},{"captures":{"1":{"name":"punctuation.definition.bracket.named-array.shell"},"2":{"name":"string.unquoted.shell entity.other.attribute-name.bracket.shell"},"3":{"name":"punctuation.definition.bracket.named-array.shell"},"4":{"name":"punctuation.definition.assignment.shell"}},"match":"(\\\\[)(.+?)(])(=)"},{"include":"#normal_context"},{"include":"#simple_unquoted"}]},"assignment_statement":{"patterns":[{"include":"#array_value"},{"include":"#modified_assignment_statement"},{"include":"#normal_assignment_statement"}]},"basic_command_name":{"captures":{"1":{"name":"storage.modifier.$1.shell"},"2":{"name":"entity.name.function.call.shell entity.name.command.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|[.:])(?!/)(?!\\\\w)(?!-)","name":"support.function.builtin.shell"},{"include":"#variable"}]}},"match":"(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?:((?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$))|((?![\\"']|\\\\\\\\\\\\n?$)[^\\\\t\\\\n\\\\r !\\"'<>]+?))(?:(?=[\\\\t ])|(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\))","name":"meta.statement.command.name.basic.shell"},"block_comment":{"begin":"\\\\s*+(/\\\\*)","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.shell"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.shell"}},"name":"comment.block.shell"},"boolean":{"match":"\\\\b(?:true|false)\\\\b","name":"constant.language.$0.shell"},"case_statement":{"begin":"\\\\b(case)\\\\b[\\\\t ]*+(.+?)[\\\\t ]*+\\\\b(in)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.shell"},"2":{"patterns":[{"include":"#initial_context"}]},"3":{"name":"keyword.control.in.shell"}},"end":"\\\\besac\\\\b","endCaptures":{"0":{"name":"keyword.control.esac.shell"}},"name":"meta.case.shell","patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.operator.pattern.case.default.shell"}},"match":"[\\\\t ]*+(\\\\* *\\\\))"},{"begin":"(?<!\\\\))(?![\\\\t ]*+(?:esac\\\\b|$))","beginCaptures":{},"end":"(?=\\\\besac\\\\b)|(\\\\))","endCaptures":{"1":{"name":"keyword.operator.pattern.case.shell"}},"name":"meta.case.entry.pattern.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"(?<=\\\\))","beginCaptures":{},"end":"(;;)|(?=\\\\besac\\\\b)","endCaptures":{"1":{"name":"punctuation.terminator.statement.case.shell"}},"name":"meta.case.entry.body.shell","patterns":[{"include":"#typical_statements"},{"include":"#initial_context"}]}]},"case_statement_context":{"patterns":[{"match":"\\\\*","name":"variable.language.special.quantifier.star.shell keyword.operator.quantifier.star.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\+","name":"variable.language.special.quantifier.plus.shell keyword.operator.quantifier.plus.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\?","name":"variable.language.special.quantifier.question.shell keyword.operator.quantifier.question.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"@","name":"variable.language.special.at.shell keyword.operator.at.shell punctuation.definition.regex.at.shell"},{"match":"\\\\|","name":"keyword.operator.orvariable.language.special.or.shell keyword.operator.alternation.ruby.shell punctuation.definition.regex.alternation.shell punctuation.separator.regex.alternation.shell"},{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"match":"(?<=\\\\tin| in|[\\\\t ]|;;)\\\\(","name":"keyword.operator.pattern.case.shell"},{"begin":"(?<=\\\\S)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"name":"meta.parenthese.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"name":"string.regexp.character-class.shell","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"}]},{"include":"#string"},{"match":"[^\\\\t\\\\n )*?@\\\\[|]","name":"string.unquoted.pattern.shell string.regexp.unquoted.shell"}]},"command_name_range":{"begin":"\\\\G","beginCaptures":{},"end":"(?=[\\\\t \\\\&;|]|$|[\\\\n)\`])|(?=<)","endCaptures":{},"name":"meta.statement.command.name.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"entity.name.function.call.shell entity.name.command.shell keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|[.:])(?!/)(?!\\\\w)(?!-)","name":"entity.name.function.call.shell entity.name.command.shell support.function.builtin.shell"},{"include":"#variable"},{"captures":{"1":{"name":"entity.name.function.call.shell entity.name.command.shell"}},"match":"(?<!\\\\w)(?<=\\\\G|[\\"')}])([^\\\\t\\\\n\\\\r \\"\\\\&');->\`{|]+)"},{"begin":"(?:\\\\G|(?<![\\\\t\\\\n #\\\\&;{|]))(\\\\$?)((\\")|('))","beginCaptures":{"1":{"name":"meta.statement.command.name.quoted.shell punctuation.definition.string.shell entity.name.function.call.shell entity.name.command.shell"},"2":{},"3":{"name":"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},"4":{"name":"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"}},"end":"(?<!\\\\G)(?<=\\\\2)","endCaptures":{},"patterns":[{"include":"#continuation_of_single_quoted_command_name"},{"include":"#continuation_of_double_quoted_command_name"}]},{"include":"#line_continuation"},{"include":"#simple_unquoted"}]},"command_statement":{"begin":"[\\\\t ]*+(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\n?$)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"},{"include":"#heredoc"}]},"comment":{"captures":{"1":{"name":"comment.line.number-sign.shell meta.shebang.shell"},"2":{"name":"punctuation.definition.comment.shebang.shell"},"3":{"name":"comment.line.number-sign.shell"},"4":{"name":"punctuation.definition.comment.shell"}},"match":"(?:^|[\\\\t ]++)(?:((#!).*)|((#).*))"},"comments":{"patterns":[{"include":"#block_comment"},{"include":"#line_comment"}]},"compound-command":{"patterns":[{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical-expression"},{"include":"#initial_context"}]},{"begin":"(?<=\\\\s|^)\\\\{(?=\\\\s|$)","beginCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"end":"(?<=^|;)\\\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"continuation_of_double_quoted_command_name":{"begin":"\\\\G(?<=\\")","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.double entity.name.function.call entity.name.command","end":"\\"","endCaptures":{"0":{"name":"string.quoted.double.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}},"patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"continuation_of_single_quoted_command_name":{"begin":"\\\\G(?<=')","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.single entity.name.function.call entity.name.command","end":"'","endCaptures":{"0":{"name":"string.quoted.single.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}}},"custom_command_names":{"patterns":[]},"custom_commands":{"patterns":[]},"double_quote_context":{"patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"double_quote_escape_char":{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},"floating_keyword":{"patterns":[{"match":"(?<=^|[\\\\t \\\\&;])(?:then|elif|else|done|end|do|if|fi)(?=[\\\\t \\\\&;]|$)","name":"keyword.control.$0.shell"}]},"for_statement":{"patterns":[{"begin":"\\\\b(for)\\\\b[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))[\\\\t ]*+\\\\b(in)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.shell"},"2":{"name":"variable.other.for.shell"},"3":{"name":"keyword.control.in.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.in.shell","patterns":[{"include":"#string"},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},{"begin":"\\\\b(for)\\\\b","beginCaptures":{"1":{"name":"keyword.control.for.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.shell","patterns":[{"include":"#arithmetic_double"},{"include":"#normal_context"}]}]},"function_definition":{"applyEndPatternLast":1,"begin":"[\\\\t ]*+(?:\\\\b(function)\\\\b[\\\\t ]*+([^\\\\t\\\\n\\\\r \\"'()=]+)(?:(\\\\()[\\\\t ]*+(\\\\)))?|([^\\\\t\\\\n\\\\r \\"'()=]+)[\\\\t ]*+(\\\\()[\\\\t ]*+(\\\\)))","beginCaptures":{"1":{"name":"storage.type.function.shell"},"2":{"name":"entity.name.function.shell"},"3":{"name":"punctuation.definition.arguments.shell"},"4":{"name":"punctuation.definition.arguments.shell"},"5":{"name":"entity.name.function.shell"},"6":{"name":"punctuation.definition.arguments.shell"},"7":{"name":"punctuation.definition.arguments.shell"}},"end":"(?<=[)}])","endCaptures":{},"name":"meta.function.shell","patterns":[{"match":"\\\\G[\\\\t\\\\n ]"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"include":"#initial_context"}]},"heredoc":{"patterns":[{"begin":"((?<!<)<<-)[\\\\t ]*+([\\"'])[\\\\t ]*+([^\\"']+?)(?=[\\"\\\\&';<\\\\s])(\\\\2)(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.indent.$3","end":"^\\\\t*\\\\3(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.$0.shell"}},"patterns":[]},{"begin":"((?<!<)<<(?!<))[\\\\t ]*+([\\"'])[\\\\t ]*+([^\\"']+?)(?=[\\"\\\\&';<\\\\s])(\\\\2)(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.no-indent.$3","end":"^\\\\3(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[]},{"begin":"((?<!<)<<-)[\\\\t ]*+([^\\\\t \\"']+)(?=[\\"\\\\&';<\\\\s])(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.indent.$2","end":"^\\\\t*\\\\2(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"((?<!<)<<(?!<))[\\\\t ]*+([^\\\\t \\"']+)(?=[\\"\\\\&';<\\\\s])(.*)","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.no-indent.$2","end":"^\\\\2(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]}]},"herestring":{"patterns":[{"begin":"(<<<)\\\\s*(('))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.single.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.single.shell","end":"(')","endCaptures":{"0":{"name":"string.quoted.single.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell"},{"begin":"(<<<)\\\\s*((\\"))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.double.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.double.shell","end":"(\\")","endCaptures":{"0":{"name":"string.quoted.double.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell","patterns":[{"include":"#double_quote_context"}]},{"captures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.unquoted.herestring.shell","patterns":[{"include":"#initial_context"}]}},"match":"(<<<)\\\\s*(([^)\\\\\\\\\\\\s]|\\\\\\\\.)+)","name":"meta.herestring.shell"}]},"initial_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#logical_expression_double"},{"include":"#logical_expression_single"},{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#loop"},{"include":"#function_definition"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#misc_ranges"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#alias_statement"},{"include":"#normal_statement"},{"include":"#string"},{"include":"#support"}]},"inline_comment":{"captures":{"1":{"name":"comment.block.shell punctuation.definition.comment.begin.shell"},"2":{"name":"comment.block.shell"},"3":{"patterns":[{"match":"\\\\*/","name":"comment.block.shell punctuation.definition.comment.end.shell"},{"match":"\\\\*","name":"comment.block.shell"}]}},"match":"(/\\\\*)((?:[^*]|\\\\*++[^/])*+(\\\\*++/))"},"interpolation":{"patterns":[{"include":"#arithmetic_dollar"},{"include":"#subshell_dollar"},{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"name":"string.interpolated.backtick.shell","patterns":[{"match":"\\\\\\\\[$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"begin":"(?<=\\\\W)(?=#)(?!#\\\\{)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.shell"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.shell"}},"end":"(?=\`)","name":"comment.line.number-sign.shell"}]},{"include":"#initial_context"}]}]},"keyword":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])(then|else|elif|fi|for|in|do|done|select|continue|esac|while|until|return)(?=[\\\\&;\\\\s]|$)","name":"keyword.control.shell"},{"match":"(?<=^|[\\\\&;\\\\s])(?:export|declare|typeset|local|readonly)(?=[\\\\&;\\\\s]|$)","name":"storage.modifier.shell"}]},"line_comment":{"begin":"\\\\s*+(//)","beginCaptures":{"1":{"name":"punctuation.definition.comment.shell"}},"end":"(?<=\\\\n)(?<!\\\\\\\\\\\\n)","endCaptures":{},"name":"comment.line.double-slash.shell","patterns":[{"include":"#line_continuation_character"}]},"line_continuation":{"match":"\\\\\\\\(?=\\\\n)","name":"constant.character.escape.line-continuation.shell"},"logical-expression":{"patterns":[{"include":"#arithmetic_no_dollar"},{"match":"=[=~]?|!=?|[<>]|&&|\\\\|\\\\|","name":"keyword.operator.logical.shell"},{"match":"(?<!\\\\S)-(nt|ot|ef|eq|ne|l[et]|g[et]|[GLNOSa-hknopr-uwxz])\\\\b","name":"keyword.operator.logical.shell"}]},"logical_expression_context":{"patterns":[{"include":"#regex_comparison"},{"include":"#arithmetic_no_dollar"},{"include":"#logical-expression"},{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#comment"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"logical_expression_double":{"begin":"\\\\[\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"logical_expression_single":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"loop":{"patterns":[{"begin":"(?<=^|[\\\\&;\\\\s])(for)\\\\s+(.+?)\\\\s+(in)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell","patterns":[{"include":"#string"}]},"3":{"name":"keyword.control.shell"}},"end":"(?<=^|[\\\\&;\\\\s])done(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.for-in-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])(while|until)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"}},"end":"(?<=^|[\\\\&;\\\\s])done(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.while-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])(select)\\\\s+((?:[^\\\\\\\\\\\\s]|\\\\\\\\.)+)(?=[\\\\&;\\\\s]|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell"}},"end":"(?<=^|[\\\\&;\\\\s])(done)(?=[\\\\&;\\\\s]|$|\\\\))","endCaptures":{"1":{"name":"keyword.control.shell"}},"name":"meta.scope.select-block.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|[\\\\&;\\\\s])if(?=[\\\\&;\\\\s]|$)","beginCaptures":{"0":{"name":"keyword.control.if.shell"}},"end":"(?<=^|[\\\\&;\\\\s])fi(?=[\\\\&;\\\\s]|$)","endCaptures":{"0":{"name":"keyword.control.fi.shell"}},"name":"meta.scope.if-block.shell","patterns":[{"include":"#initial_context"}]}]},"math":{"patterns":[{"include":"#variable"},{"match":"\\\\+{1,2}|-{1,2}|[!~]|\\\\*{1,2}|[%/]|<[<=]?|>[=>]?|==|!=|^|\\\\|{1,2}|&{1,2}|[,:=?]|[-%\\\\&*+/^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[Xx]\\\\h+","name":"constant.numeric.hex.shell"},{"match":";","name":"punctuation.separator.semicolon.range"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9@-Z_a-z]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"},{"match":"(?<!\\\\w)[0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"}]},"math_operators":{"patterns":[{"match":"\\\\+{1,2}|-{1,2}|[!~]|\\\\*{1,2}|[%/]|<[<=]?|>[=>]?|==|!=|^|\\\\|{1,2}|&{1,2}|[,:=?]|[-%\\\\&*+/^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[Xx]\\\\h+","name":"constant.numeric.hex.shell"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9@-Z_a-z]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"}]},"misc_ranges":{"patterns":[{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#subshell_dollar"},{"begin":"(?<![^\\\\t ])(\\\\{)(?![$\\\\w])","beginCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"modified_assignment_statement":{"begin":"(?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$)","beginCaptures":{"0":{"name":"storage.modifier.$0.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell meta.expression.assignment.modified.shell","patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"},{"include":"#array_value"},{"captures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"10":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"11":{"name":"constant.numeric.shell constant.numeric.other.shell"},"12":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"13":{"name":"constant.numeric.shell constant.numeric.version.shell"},"14":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))?(?:(?<=[\\\\t =]|^|[(\\\\[{])(?:(?:(?:(?:(?:(0[Xx]\\\\h+)|(0\\\\d+))|(\\\\d{1,2}#[0-9@-Z_a-z]+))|(-?\\\\d+\\\\.\\\\d+))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?=[\\\\t ]|$|[);}]))?"},{"include":"#normal_context"}]},"modifiers":{"match":"(?<=^|[\\\\t \\\\&;])(?:readonly|declare|typeset|export|local)(?=[\\\\t \\\\&;]|$)","name":"storage.modifier.$0.shell"},"normal_assignment_statement":{"begin":"[\\\\t ]*+((?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w))(?:(\\\\[)((?:(?:\\\\$?(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)|@)|\\\\*)|(-?\\\\d+))(]))?(?:(?:(=)|(\\\\+=))|(-=))","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.expression.assignment.shell","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#normal_assignment_statement"},{"begin":"(?<=[\\\\t ])(?![\\\\t ]|\\\\w+=)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.env.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"}]},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},"normal_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#misc_ranges"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"},{"include":"#parenthese"}]},"normal_statement":{"begin":"(?!^[\\\\t ]*+$)(?:(?<=(?:^until| until|\\\\tuntil|^while| while|\\\\twhile|^elif| elif|\\\\telif|^else| else|\\\\telse|^then| then|\\\\tthen|^do| do|\\\\tdo|^if| if|\\\\tif) )|(?<=^|[!\\\\&(;\`{|]))[\\\\t ]*+(?!nocorrect\\\\W|nocorrect\\\\$|function\\\\W|function\\\\$|foreach\\\\W|foreach\\\\$|repeat\\\\W|repeat\\\\$|logout\\\\W|logout\\\\$|coproc\\\\W|coproc\\\\$|select\\\\W|select\\\\$|while\\\\W|while\\\\$|pushd\\\\W|pushd\\\\$|until\\\\W|until\\\\$|case\\\\W|case\\\\$|done\\\\W|done\\\\$|elif\\\\W|elif\\\\$|else\\\\W|else\\\\$|esac\\\\W|esac\\\\$|popd\\\\W|popd\\\\$|then\\\\W|then\\\\$|time\\\\W|time\\\\$|for\\\\W|for\\\\$|end\\\\W|end\\\\$|fi\\\\W|fi\\\\$|do\\\\W|do\\\\$|in\\\\W|in\\\\$|if\\\\W|if\\\\$)","beginCaptures":{},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell","patterns":[{"include":"#typical_statements"}]},"normal_statement_seperator":{"captures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"match":"(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&)"},"numeric_literal":{"captures":{"1":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"2":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"3":{"name":"constant.numeric.shell constant.numeric.other.shell"},"4":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"5":{"name":"constant.numeric.shell constant.numeric.version.shell"},"6":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"(?<=[\\\\t =]|^|[(\\\\[{])(?:(?:(?:(?:(?:(0[Xx]\\\\h+)|(0\\\\d+))|(\\\\d{1,2}#[0-9@-Z_a-z]+))|(-?\\\\d+\\\\.\\\\d+))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?=[\\\\t ]|$|[);}])"},"option":{"begin":"[\\\\t ]++(-)((?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;]))","beginCaptures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"contentName":"string.unquoted.argument constant.other.option","end":"(?=[\\\\t ])|(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"patterns":[{"include":"#option_context"}]},"option_context":{"patterns":[{"include":"#misc_ranges"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"parenthese":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"name":"meta.parenthese.group.shell","patterns":[{"include":"#initial_context"}]}]},"pathname":{"patterns":[{"match":"(?<=[:=\\\\s]|^)~","name":"keyword.operator.tilde.shell"},{"match":"[*?]","name":"keyword.operator.glob.shell"},{"begin":"([!*+?@])(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.extglob.shell"},"2":{"name":"punctuation.definition.extglob.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.extglob.shell"}},"name":"meta.structure.extglob.shell","patterns":[{"include":"#initial_context"}]}]},"pipeline":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])(time)(?=[\\\\&;\\\\s]|$)","name":"keyword.other.shell"},{"match":"[!|]","name":"keyword.operator.pipe.shell"}]},"redirect_fix":{"captures":{"1":{"name":"keyword.operator.redirect.shell"},"2":{"name":"string.unquoted.argument.shell"}},"match":"(>>?)[\\\\t ]*+([^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]+)"},"redirect_number":{"captures":{"1":{"name":"keyword.operator.redirect.stdout.shell"},"2":{"name":"keyword.operator.redirect.stderr.shell"},"3":{"name":"keyword.operator.redirect.$3.shell"}},"match":"(?<=[\\\\t ])(?:(1)|(2)|(\\\\d+))(?=>)"},"redirection":{"patterns":[{"begin":"[<>]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.process-substitution.shell","patterns":[{"include":"#initial_context"}]},{"match":"(?<![<>])(&>|\\\\d*>&\\\\d*|\\\\d*(>>|[<>])|\\\\d*<&|\\\\d*<>)(?![<>])","name":"keyword.operator.redirect.shell"}]},"regex_comparison":{"match":"=~","name":"keyword.operator.logical.regex.shell"},"regexp":{"patterns":[{"match":".+"}]},"simple_options":{"captures":{"0":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"match":"[\\\\t ]++(-)(\\\\w+)"}]}},"match":"(?:[\\\\t ]++-\\\\w+)*"},"simple_unquoted":{"match":"[^\\\\t\\\\n \\"$\\\\&-);<>\\\\\\\\\`|]","name":"string.unquoted.shell"},"special_expansion":{"match":"!|:[-=?]?|[*@]|##?|%%|[%/]","name":"keyword.operator.expansion.shell"},"start_of_command":{"match":"[\\\\t ]*+(?![\\\\n!#\\\\&()<>\\\\[{|]|$|[\\\\t ;])(?!nocorrect |nocorrect\\\\t|nocorrect$|readonly |readonly\\\\t|readonly$|function |function\\\\t|function$|foreach |foreach\\\\t|foreach$|coproc |coproc\\\\t|coproc$|logout |logout\\\\t|logout$|export |export\\\\t|export$|select |select\\\\t|select$|repeat |repeat\\\\t|repeat$|pushd |pushd\\\\t|pushd$|until |until\\\\t|until$|while |while\\\\t|while$|local |local\\\\t|local$|case |case\\\\t|case$|done |done\\\\t|done$|elif |elif\\\\t|elif$|else |else\\\\t|else$|esac |esac\\\\t|esac$|popd |popd\\\\t|popd$|then |then\\\\t|then$|time |time\\\\t|time$|for |for\\\\t|for$|end |end\\\\t|end$|fi |fi\\\\t|fi$|do |do\\\\t|do$|in |in\\\\t|in$|if |if\\\\t|if$)(?!\\\\\\\\\\\\n?$)"},"string":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.shell"},{"begin":"\\\\$?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.double.shell","patterns":[{"match":"\\\\\\\\[\\\\n\\"$\\\\\\\\\`]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"\\\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.dollar.shell","patterns":[{"match":"\\\\\\\\['\\\\\\\\abefnrtv]","name":"constant.character.escape.ansi-c.shell"},{"match":"\\\\\\\\[0-9]{3}\\"","name":"constant.character.escape.octal.shell"},{"match":"\\\\\\\\x\\\\h{2}\\"","name":"constant.character.escape.hex.shell"},{"match":"\\\\\\\\c.\\"","name":"constant.character.escape.control-char.shell"}]}]},"subshell_dollar":{"patterns":[{"begin":"\\\\$\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"name":"meta.scope.subshell","patterns":[{"include":"#parenthese"},{"include":"#initial_context"}]}]},"support":{"patterns":[{"match":"(?<=^|[\\\\&;\\\\s])[.:](?=[\\\\&;\\\\s]|$)","name":"support.function.builtin.shell"}]},"typical_statements":{"patterns":[{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#while_statement"},{"include":"#function_definition"},{"include":"#command_statement"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#normal_context"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.all.shell"},"2":{"name":"variable.parameter.positional.all.shell"}},"match":"(\\\\$)(@(?!\\\\w))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"variable.parameter.positional.shell"}},"match":"(\\\\$)([0-9](?!\\\\w))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.language.special.shell"},"2":{"name":"variable.language.special.shell"}},"match":"(\\\\$)([-!#$*0?_](?!\\\\w))"},{"begin":"(\\\\$)(\\\\{)[\\\\t ]*+(?=\\\\d)","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"contentName":"meta.parameter-expansion","end":"}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"[0-9]+","name":"variable.parameter.positional.shell"},{"match":"(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"begin":"(\\\\$)(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell"}},"contentName":"meta.parameter-expansion","end":"}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"(?<!\\\\w)[-0-9A-Z_a-z]+(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.other.normal.shell"},"2":{"name":"variable.other.normal.shell"}},"match":"(\\\\$)(\\\\w+(?!\\\\w))"}]},"while_statement":{"patterns":[{"begin":"\\\\b(while)\\\\b","beginCaptures":{"1":{"name":"keyword.control.while.shell"}},"end":"(?=[\\\\n\\\\&);\`{|}]|[\\\\t ]*#|])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.while.shell","patterns":[{"include":"#line_continuation"},{"include":"#math_operators"},{"include":"#option"},{"include":"#simple_unquoted"},{"include":"#normal_context"},{"include":"#string"}]}]}},"scopeName":"source.shell","aliases":["bash","sh","shell","zsh"]}`))];export{t as n,n as t};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$input_findOpenChange as e}from"./_CqwBobzE.js";export{e as _};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Et as e,Kt as t,Ot as n,Yn as r,kt as i,qt as a}from"./_B7tkawQT.js";import{n as o,o as ee,r as s,s as te}from"./_Cxuln-KJ.js";var c=0,l=1,u=2,d=3,ne=8e3,re=16384,f=class{delay;queue=[];timer;constructor(e){this.delay=e}run(e){let t=this.delay();if(t<=0&&!this.queue.length)return e();this.queue.push({due:performance.now()+t,fn:e}),this.arm()}arm(){if(this.timer!==void 0||!this.queue.length)return;let e=Math.max(0,this.queue[0].due-performance.now());this.timer=setTimeout(()=>{this.timer=void 0;let e=performance.now();for(;this.queue.length&&this.queue[0].due<=e+1;)this.queue.shift().fn();this.arm()},e)}};function ie(e,t){let n=new f(t),r=new f(t),i=[],a=c,o={get readyState(){return a},get binaryType(){return e.binaryType},set binaryType(t){e.binaryType=t},onopen:null,onmessage:null,onclose:null,send(t){n.run(()=>{e.readyState===l&&e.send(t)})},close(t){a<u&&(a=u),n.run(()=>e.close(t))},addEventListener(e,t){i.push(t)}};return e.onopen=e=>n.run(()=>r.run(()=>{if(a===c){a=l,o.onopen?.(e);for(let e of i)e()}})),e.onmessage=e=>r.run(()=>{a!==d&&o.onmessage?.(e)}),e.onclose=e=>r.run(()=>{a=d,o.onclose?.(e)}),o}var ae=class{dc;gone;readyState=c;binaryType=`arraybuffer`;onopen=null;onmessage=null;onclose=null;opens=[];code=null;timer;out;back;unpack=null;constructor(e,t,n,r,i){this.dc=e,this.gone=i,this.out=new f(r),this.back=new f(r),e.binaryType=`arraybuffer`,this.timer=setTimeout(()=>this.fail(),ne),n&&(this.unpack=new se(n,e=>this.receive(e),()=>this.fail()));let a=this.unpack;e.onopen=()=>this.out.run(()=>e.send(t)),e.onmessage=e=>this.back.run(()=>{a&&e.data instanceof ArrayBuffer?a.write(e.data):this.receive(e.data)}),e.onclose=()=>this.back.run(()=>{a?a.end().then(()=>this.closed()):this.closed()})}send(e){this.readyState===l&&this.out.run(()=>{if(this.dc.readyState===`open`){if(typeof e==`string`)this.dc.send(e);else for(let t of ue(e))this.dc.send(t)}})}close(e){if(this.readyState>=u)return;let t=this.readyState===l&&e!==void 0;this.readyState=u,clearTimeout(this.timer),this.out.run(()=>{t&&this.dc.readyState===`open`&&this.dc.send(JSON.stringify({bye:e})),this.dc.close()}),setTimeout(()=>this.closed(),ne)}addEventListener(e,t){this.opens.push(t)}goingAway(){this.readyState===l&&this.dc.readyState===`open`&&this.dc.send(JSON.stringify({bye:1001}))}fail(){if(this.readyState!==d){try{this.dc.close()}catch{}this.closed()}}receive(e){if(this.readyState!==d){if(e instanceof ArrayBuffer){let t=le(e);if(t!==null){this.code=t;return}}if(this.readyState===c){clearTimeout(this.timer),this.readyState=l,this.onopen?.(new Event(`open`));for(let e of this.opens)e()}this.onmessage?.(new MessageEvent(`message`,{data:e}))}}closed(){this.readyState!==d&&(this.readyState=d,clearTimeout(this.timer),this.unpack?.cancel(),this.gone(this),this.onclose?.(new CloseEvent(`close`,{code:this.code??1006})))}},oe=255,se=class{deliver;failed;writer;reader;text=new TextDecoder;word=null;pumped;broken=!1;constructor(e,t,n){this.deliver=t,this.failed=n;let r=new DecompressionStream(e);this.writer=r.writable.getWriter(),this.reader=r.readable.getReader(),this.pumped=this.pump()}write(e){this.writer.write(e).catch(()=>this.fail())}async end(){await this.writer.close().catch(()=>this.fail()),await this.pumped}cancel(){this.broken=!0,this.reader.cancel().catch(()=>{})}fail(){this.broken||(this.broken=!0,this.failed())}async pump(){try{for(;;){let{value:e,done:t}=await this.reader.read();if(t||this.broken)return;this.split(e)}}catch{this.fail()}}split(e){let t=0;for(;t<e.length;){let n=e.indexOf(oe,t),r=n<0?e.length:n;if(this.word)this.word.push(e.subarray(t,r));else if(r>t){let n=this.text.decode(e.subarray(t,r),{stream:!0});n&&this.deliver(n)}if(n<0)return;this.word?(this.deliver(ce(this.word)),this.word=null):this.word=[],t=n+1}}};function ce(e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t.buffer}function le(e){if(e.byteLength>32)return null;try{let t=JSON.parse(new TextDecoder().decode(e))?.bye;return Number.isInteger(t)?t:null}catch{return null}}function*ue(e){if(e.length<=re){yield e;return}for(let t=0;t<e.length;){let n=Math.min(t+re,e.length);for(;n<e.length&&n>t+1&&(e[n]&192)==128;)n--;yield e.subarray(t,n),t=n}}var de=10,fe=3,pe=5e3,me=10,he=5,ge=.2,_e=3,ve=2e3,ye=12e3,be=1e4,xe=5e3,Se=5e3,Ce=[2e3,5e3,15e3,3e4,6e4],we=15,p=`off`,m=0,h=0,g=null,_=`ws`,v=null,y=null,b=``,x=null,S=`none`,C=null,w=!1,T=!1,E=!1,D=0,O=[],k=[],A=0,j=0,Te=0,M=!1,N=0,P=[],F=new Set,I=[],L,R,z,Ee,B=null,De=new f(()=>m/2),Oe=new f(()=>m/2),ke=new f(()=>h/2),Ae=new f(()=>h/2),V=new Map,je=0,H=Me();function Me(){let e=null;try{localStorage.getItem(`work:direct-checks`)&&(e=localStorage.getItem(`work:direct-codec`))}catch{}for(let t of e?[e]:[`brotli`,`deflate-raw`])try{return new DecompressionStream(t),t}catch{}return null}var Ne={open(e){if(_===`rtc`&&Ge()){let t=new ae(y.createDataChannel(`term`),H?`${e}${e.includes(`?`)?`&`:`?`}codec=${H}`:e,H,()=>h/2,e=>F.delete(e));return F.add(t),{conn:t,transport:`rtc`}}let t=location.protocol===`https:`?`wss`:`ws`;return{conn:ie(new WebSocket(`${t}://${location.host}${e}`),()=>m/2),transport:`ws`}}};r(()=>{(y||g)&&(X(`signed out: direct path closed`),g=null,clearTimeout(L),G())});function Pe(){let e=p;Ie(),e!==`off`&&p!==`off`&&Fe()}function Fe(){i({rtc:`hello`,peer:y?b:void 0})}function Ie(){let e=a();if(m=t(),e===p)return Z();let n=p;if(p=e,p===`off`)return Re();X(`mode ${p}`),n===`off`?Le():Be(),Z()}function Le(){te(Ne),B=new AbortController;let t=B.signal;e().addEventListener(`rtc`,e=>ze(e.data),{signal:t}),document.addEventListener(`visibilitychange`,()=>{if(document.visibilityState!==`visible`){N=Date.now();return}N&&Date.now()-N>Se&&(X(`visible again`),K()),N=0},{signal:t}),window.addEventListener(`online`,()=>{X(`online`),K()},{signal:t}),window.addEventListener(`offline`,()=>{X(`offline`),J(`ws`,`offline`,!1)},{signal:t}),navigator.connection?.addEventListener(`change`,()=>{X(`network change`),K()},{signal:t}),window.addEventListener(`pagehide`,()=>{for(let e of F)e.goingAway();y&&(i({rtc:`close`,id:b}),y.close())},{signal:t}),Ee=setInterval(()=>void Je(fe),pe),Fe(),Ze();for(let e of s())e.transport&&!e.routed&&e.move(!0)}function Re(){X(`off`),te(null);for(let e of s())e.routed&&e.move(!0);B?.abort(),B=null,clearInterval(Ee),clearTimeout(L),G(),g=null,_=`ws`,O=[],ee(null)}function ze(e){let t=e.data;switch(e.type){case`rtc.hello`:{let e=g;g=t,(e?.path!==g.path||e?.available!==g.available)&&X(`path ${g.path}${g.available?``:` · direct unavailable: ${g.error??`not loaded`}`}`),Be(e?.path!==g.path);break}case`rtc.echo`:{let e=Number(t?.n);Oe.run(()=>V.get(e)?.());break}case`rtc.pair`:t?.id===b&&(C={local:String(t.page),remote:String(t.server)},X(`pair: ${C.local} ↔ ${C.remote}`));break;case`rtc.answer`:if(t?.id===b&&y){let e=y;e.setRemoteDescription({type:`answer`,sdp:String(t.sdp)}).then(()=>{for(let t of P.splice(0))e.addIceCandidate(t).catch(()=>{})}).catch(e=>W(`answer refused: ${e.message}`))}break;case`rtc.candidate`:if(t?.id===b&&y){let e={candidate:String(t.candidate),sdpMid:String(t.mid)};y.remoteDescription?y.addIceCandidate(e).catch(()=>{}):P.push(e)}break;case`rtc.port`:{let e=g?.routerPort;g&&={...g,routerPort:t};let n=g?.routerPort;n&&(e?.state!==n.state||e?.allowed!==n.allowed)&&X(n.state===`mapped`?`router port ${n.external} → ${n.internal}`:n.state===`error`?`router port: ${n.error}`:n.allowed?`router port ${n.state}`:`router port not allowed`),T&&n?.allowed&&!e?.allowed&&!q()&&U();break}case`rtc.error`:if(t?.id!==b)break;t.unavailable&&g&&(g={...g,available:!1,error:String(t.error)}),W(`server: ${String(t.error)}`)}Z()}function Be(e=!0){if(p!==`off`&&g&&g.available){if(p===`auto`&&g.path!==`proxied`){(e||y)&&X(`Auto: the path is ${g.path}, not probing`),G();return}p===`always`&&q()&&!v&&J(`rtc`,`Always`),y||U()}}function Ve(){return p!==`off`&&!!g?.available&&(p===`always`||g.path===`proxied`)}function U(){if(clearTimeout(L),G(),!g||!Ve()||!n())return;let e=`p${Math.random().toString(36).slice(2,12)}`,t=new RTCPeerConnection({iceServers:g.stun.length?[{urls:g.stun}]:[]});y=t,b=e,P=[],S=t.iceConnectionState;let r=t.createDataChannel(`ctl`);x=r,X(T?`probe started (asking for the router port)`:`probe started`),r.onopen=()=>{y===t&&(clearTimeout(R),Te=0,j=0,w=!1,D=performance.now(),X(`direct path open`),Je(de,!0))},r.onmessage=e=>{let t=NaN;try{t=Number(JSON.parse(String(e.data)).p)}catch{}Ae.run(()=>{D=performance.now(),V.get(t)?.()})},r.onclose=()=>{y===t&&W(`control channel closed`)},t.onicecandidate=n=>{y===t&&n.candidate?.candidate&&i({rtc:`candidate`,id:e,candidate:n.candidate.candidate,mid:n.candidate.sdpMid??`0`})},t.oniceconnectionstatechange=()=>{y===t&&(S=t.iceConnectionState,X(`ICE ${S}`),We(t),Z())},R=setTimeout(()=>{y===t&&r.readyState!==`open`&&He()},be);let a=E;E=!1,t.setLocalDescription().then(()=>{y!==t||a||i({rtc:`offer`,id:e,sdp:t.localDescription.sdp,mode:p,needsPort:T})||W(`events socket closed`)}).catch(e=>W(e.message)),Z()}function He(){w=!0,(p===`always`||g?.path===`proxied`)&&(T=!0),W(`not connected`)}function Ue(){if(!w||!g)return null;let e=g.routerPort,t=!!g.firewall?.likely,n=`Couldn't reach this machine directly from this network.`;return T?e?.allowed?e.state===`error`?{text:`${n} Its router's port failed: ${e.error}.`,needs:null,walled:t}:e.state===`mapped`?{text:`${n} Not even through its router's port ${e.external}.`,needs:null,walled:t}:{text:`Opening a port on this machine's router…`,needs:null,walled:!1}:{text:n,needs:`router-port`,walled:t}:{text:n,needs:null,walled:t}}function We(e){clearTimeout(z);let t=e.iceConnectionState;if(t!==`connected`&&t!==`completed`){if(t===`disconnected`){J(`ws`,`ICE disconnected`,!1),z=setTimeout(()=>{y===e&&e.iceConnectionState===`disconnected`&&W(`ICE stayed disconnected`)},xe);return}t===`failed`?C?W(`ICE failed`):He():t===`closed`&&W(`ICE closed`)}}function W(e){if(!y||(X(`direct path lost: ${e}`),J(`ws`,e,!1),G(),!Ve()))return;let t=Ce[Math.min(Te++,Ce.length-1)];L=setTimeout(()=>{document.visibilityState===`visible`?U():N||=Date.now()-Se-1},t)}function G(){clearTimeout(R),clearTimeout(z);let e=y;if(e){y=null,x=null,C=null,S=`none`,k=[],A=0,j=0,J(`ws`,`direct path closed`,!1),Y(!1),i({rtc:`close`,id:b});for(let e of[...F])e.fail();try{e.close()}catch{}Z()}}function K(){if(Ve()){if(!q()){let e=y?.iceConnectionState;(!y||e===`disconnected`||e===`failed`)&&U();return}qe().then(e=>{e===null?W(`no answer`):Je(fe)})}}function q(){return!!y&&x?.readyState===`open`&&(y.iceConnectionState===`connected`||y.iceConnectionState===`completed`)}function Ge(){return q()&&performance.now()-D<ye}function Ke(){let e=++je,t=performance.now();return new Promise(n=>{let r=setTimeout(a,ve,null);function a(t){clearTimeout(r),V.delete(e),n(t)}V.set(e,()=>a(performance.now()-t)),De.run(()=>{i({rtc:`echo`,n:e})||a(null)})})}function qe(){let e=x,t=++je,n=performance.now();return new Promise(r=>{let i=setTimeout(a,ve,null);function a(e){clearTimeout(i),V.delete(t),r(e)}V.set(t,()=>a(performance.now()-n)),ke.run(()=>{if(e?.readyState!==`open`)return a(null);e.send(JSON.stringify({p:t}))})})}async function Je(e,t=!1){if(!M&&p!==`off`&&q()){M=!0;try{for(let t=0;t<e;t++){let e=await Ke();if(e!==null&&Xe(O,e),!q())break;let t=await qe();if(t!==null)Xe(k,t),j=0;else if(++j>=2){W(`round trips unanswered`);break}}}finally{M=!1}t&&X(`samples: WS ${$(Q(O))} · direct ${$(Q(k))} (median of ${e})`),Ye(t),Y()}}function Ye(e){if(Z(),!q()||v)return;if(p===`always`)return J(`rtc`,`Always`);let t=Q(O),n=Q(k);if(t===null||n===null)return;let r=n<=t-he&&n<=t*.8,i=n>=t+he&&n>=t*1.2;if(_===`ws`){r?J(`rtc`,`direct ${$(n)} vs WS ${$(t)}`):e&&X(`staying on WS: direct ${$(n)} vs WS ${$(t)} (needs ${he} ms and ${ge*100}% faster)`);return}if(!i){A=0;return}A++,A>=_e?J(`ws`,`direct ${$(n)} slower than WS ${$(t)}, ${_e} windows`):X(`direct ${$(n)} slower than WS ${$(t)} (${A} of ${_e})`)}function J(e,t,n=!0){_!==e&&(_=e,A=0,X(e===`rtc`?`switched to direct: ${t}`:`switched to WS: ${t}`),Y(n),Z())}function Y(e=!0){let t=_===`rtc`&&Ge()?`rtc`:`ws`;for(let n of s())n.transport&&n.transport!==t&&n.move(e)}function X(e){I.push({at:Date.now(),text:e}),I.length>we&&I.splice(0,I.length-we),Z()}function Z(){p!==`off`&&ee({mode:p,path:g?.path??null,available:g?g.available:null,error:g?.error??null,chosen:_,wsMs:Q(O),rtcMs:q()?Q(k):null,ice:S,pair:C,codec:H,delay:m,trouble:Ue()?.text??null,needs:Ue()?.needs??null,walled:Ue()?.walled??!1,firewall:g?.firewall??null,routerPort:g?.routerPort??null,log:[...I]})}function Xe(e,t){e.push(t),e.length>me&&e.splice(0,e.length-me)}function Q(e){if(!e.length)return null;let t=[...e].sort((e,t)=>e-t),n=t.length>>1;return t.length%2?t[n]:(t[n-1]+t[n])/2}function $(e){return e===null?`–`:`${e<10?e.toFixed(1):Math.round(e)} ms`}function Ze(){try{if(!localStorage.getItem(`work:direct-checks`))return}catch{return}let e=new Map,t=e=>s().find(t=>t.sessionId===e);window.__workDirect={status:()=>o(),setRtcDelay(e){h=e},force(e){v=e,e?J(e,`forced`):Ye(!1)},serverClose(){i({rtc:`close`,id:b})},failNext(){E=!0},terms:()=>s().map(e=>({sessionId:e.sessionId,transport:e.transport})),screen:e=>t(e)?.screen()??null,record(n){let r={text:[],at:[]};e.set(n,r);let i=t(n);i&&(i.tap=e=>{r.text.push(e),r.at.push(performance.now())})},recorded:t=>e.get(t)?.text.join(``)??``,arrivals:t=>e.get(t)?.at??[],async wire(){let e=0;return(await y?.getStats())?.forEach(t=>{t.type===`candidate-pair`&&(e+=Number(t.bytesReceived)||0)}),e},async remoteCandidates(){let e=[];return(await y?.getStats())?.forEach(t=>{t.type===`remote-candidate`&&e.push(`${t.candidateType} ${t.address??t.ip}:${t.port}`)}),e}}}export{Pe as eventsHello,Ie as syncMode};
|
|
1
|
+
import{Et as e,Kt as t,Ot as n,Yn as r,kt as i,qt as a}from"./_BIUuaaVc.js";import{n as o,o as ee,r as s,s as te}from"./_Cxuln-KJ.js";var c=0,l=1,u=2,d=3,ne=8e3,re=16384,f=class{delay;queue=[];timer;constructor(e){this.delay=e}run(e){let t=this.delay();if(t<=0&&!this.queue.length)return e();this.queue.push({due:performance.now()+t,fn:e}),this.arm()}arm(){if(this.timer!==void 0||!this.queue.length)return;let e=Math.max(0,this.queue[0].due-performance.now());this.timer=setTimeout(()=>{this.timer=void 0;let e=performance.now();for(;this.queue.length&&this.queue[0].due<=e+1;)this.queue.shift().fn();this.arm()},e)}};function ie(e,t){let n=new f(t),r=new f(t),i=[],a=c,o={get readyState(){return a},get binaryType(){return e.binaryType},set binaryType(t){e.binaryType=t},onopen:null,onmessage:null,onclose:null,send(t){n.run(()=>{e.readyState===l&&e.send(t)})},close(t){a<u&&(a=u),n.run(()=>e.close(t))},addEventListener(e,t){i.push(t)}};return e.onopen=e=>n.run(()=>r.run(()=>{if(a===c){a=l,o.onopen?.(e);for(let e of i)e()}})),e.onmessage=e=>r.run(()=>{a!==d&&o.onmessage?.(e)}),e.onclose=e=>r.run(()=>{a=d,o.onclose?.(e)}),o}var ae=class{dc;gone;readyState=c;binaryType=`arraybuffer`;onopen=null;onmessage=null;onclose=null;opens=[];code=null;timer;out;back;unpack=null;constructor(e,t,n,r,i){this.dc=e,this.gone=i,this.out=new f(r),this.back=new f(r),e.binaryType=`arraybuffer`,this.timer=setTimeout(()=>this.fail(),ne),n&&(this.unpack=new se(n,e=>this.receive(e),()=>this.fail()));let a=this.unpack;e.onopen=()=>this.out.run(()=>e.send(t)),e.onmessage=e=>this.back.run(()=>{a&&e.data instanceof ArrayBuffer?a.write(e.data):this.receive(e.data)}),e.onclose=()=>this.back.run(()=>{a?a.end().then(()=>this.closed()):this.closed()})}send(e){this.readyState===l&&this.out.run(()=>{if(this.dc.readyState===`open`){if(typeof e==`string`)this.dc.send(e);else for(let t of ue(e))this.dc.send(t)}})}close(e){if(this.readyState>=u)return;let t=this.readyState===l&&e!==void 0;this.readyState=u,clearTimeout(this.timer),this.out.run(()=>{t&&this.dc.readyState===`open`&&this.dc.send(JSON.stringify({bye:e})),this.dc.close()}),setTimeout(()=>this.closed(),ne)}addEventListener(e,t){this.opens.push(t)}goingAway(){this.readyState===l&&this.dc.readyState===`open`&&this.dc.send(JSON.stringify({bye:1001}))}fail(){if(this.readyState!==d){try{this.dc.close()}catch{}this.closed()}}receive(e){if(this.readyState!==d){if(e instanceof ArrayBuffer){let t=le(e);if(t!==null){this.code=t;return}}if(this.readyState===c){clearTimeout(this.timer),this.readyState=l,this.onopen?.(new Event(`open`));for(let e of this.opens)e()}this.onmessage?.(new MessageEvent(`message`,{data:e}))}}closed(){this.readyState!==d&&(this.readyState=d,clearTimeout(this.timer),this.unpack?.cancel(),this.gone(this),this.onclose?.(new CloseEvent(`close`,{code:this.code??1006})))}},oe=255,se=class{deliver;failed;writer;reader;text=new TextDecoder;word=null;pumped;broken=!1;constructor(e,t,n){this.deliver=t,this.failed=n;let r=new DecompressionStream(e);this.writer=r.writable.getWriter(),this.reader=r.readable.getReader(),this.pumped=this.pump()}write(e){this.writer.write(e).catch(()=>this.fail())}async end(){await this.writer.close().catch(()=>this.fail()),await this.pumped}cancel(){this.broken=!0,this.reader.cancel().catch(()=>{})}fail(){this.broken||(this.broken=!0,this.failed())}async pump(){try{for(;;){let{value:e,done:t}=await this.reader.read();if(t||this.broken)return;this.split(e)}}catch{this.fail()}}split(e){let t=0;for(;t<e.length;){let n=e.indexOf(oe,t),r=n<0?e.length:n;if(this.word)this.word.push(e.subarray(t,r));else if(r>t){let n=this.text.decode(e.subarray(t,r),{stream:!0});n&&this.deliver(n)}if(n<0)return;this.word?(this.deliver(ce(this.word)),this.word=null):this.word=[],t=n+1}}};function ce(e){let t=new Uint8Array(e.reduce((e,t)=>e+t.length,0)),n=0;for(let r of e)t.set(r,n),n+=r.length;return t.buffer}function le(e){if(e.byteLength>32)return null;try{let t=JSON.parse(new TextDecoder().decode(e))?.bye;return Number.isInteger(t)?t:null}catch{return null}}function*ue(e){if(e.length<=re){yield e;return}for(let t=0;t<e.length;){let n=Math.min(t+re,e.length);for(;n<e.length&&n>t+1&&(e[n]&192)==128;)n--;yield e.subarray(t,n),t=n}}var de=10,fe=3,pe=5e3,me=10,he=5,ge=.2,_e=3,ve=2e3,ye=12e3,be=1e4,xe=5e3,Se=5e3,Ce=[2e3,5e3,15e3,3e4,6e4],we=15,p=`off`,m=0,h=0,g=null,_=`ws`,v=null,y=null,b=``,x=null,S=`none`,C=null,w=!1,T=!1,E=!1,D=0,O=[],k=[],A=0,j=0,Te=0,M=!1,N=0,P=[],F=new Set,I=[],L,R,z,Ee,B=null,De=new f(()=>m/2),Oe=new f(()=>m/2),ke=new f(()=>h/2),Ae=new f(()=>h/2),V=new Map,je=0,H=Me();function Me(){let e=null;try{localStorage.getItem(`work:direct-checks`)&&(e=localStorage.getItem(`work:direct-codec`))}catch{}for(let t of e?[e]:[`brotli`,`deflate-raw`])try{return new DecompressionStream(t),t}catch{}return null}var Ne={open(e){if(_===`rtc`&&Ge()){let t=new ae(y.createDataChannel(`term`),H?`${e}${e.includes(`?`)?`&`:`?`}codec=${H}`:e,H,()=>h/2,e=>F.delete(e));return F.add(t),{conn:t,transport:`rtc`}}let t=location.protocol===`https:`?`wss`:`ws`;return{conn:ie(new WebSocket(`${t}://${location.host}${e}`),()=>m/2),transport:`ws`}}};r(()=>{(y||g)&&(X(`signed out: direct path closed`),g=null,clearTimeout(L),G())});function Pe(){let e=p;Ie(),e!==`off`&&p!==`off`&&Fe()}function Fe(){i({rtc:`hello`,peer:y?b:void 0})}function Ie(){let e=a();if(m=t(),e===p)return Z();let n=p;if(p=e,p===`off`)return Re();X(`mode ${p}`),n===`off`?Le():Be(),Z()}function Le(){te(Ne),B=new AbortController;let t=B.signal;e().addEventListener(`rtc`,e=>ze(e.data),{signal:t}),document.addEventListener(`visibilitychange`,()=>{if(document.visibilityState!==`visible`){N=Date.now();return}N&&Date.now()-N>Se&&(X(`visible again`),K()),N=0},{signal:t}),window.addEventListener(`online`,()=>{X(`online`),K()},{signal:t}),window.addEventListener(`offline`,()=>{X(`offline`),J(`ws`,`offline`,!1)},{signal:t}),navigator.connection?.addEventListener(`change`,()=>{X(`network change`),K()},{signal:t}),window.addEventListener(`pagehide`,()=>{for(let e of F)e.goingAway();y&&(i({rtc:`close`,id:b}),y.close())},{signal:t}),Ee=setInterval(()=>void Je(fe),pe),Fe(),Ze();for(let e of s())e.transport&&!e.routed&&e.move(!0)}function Re(){X(`off`),te(null);for(let e of s())e.routed&&e.move(!0);B?.abort(),B=null,clearInterval(Ee),clearTimeout(L),G(),g=null,_=`ws`,O=[],ee(null)}function ze(e){let t=e.data;switch(e.type){case`rtc.hello`:{let e=g;g=t,(e?.path!==g.path||e?.available!==g.available)&&X(`path ${g.path}${g.available?``:` · direct unavailable: ${g.error??`not loaded`}`}`),Be(e?.path!==g.path);break}case`rtc.echo`:{let e=Number(t?.n);Oe.run(()=>V.get(e)?.());break}case`rtc.pair`:t?.id===b&&(C={local:String(t.page),remote:String(t.server)},X(`pair: ${C.local} ↔ ${C.remote}`));break;case`rtc.answer`:if(t?.id===b&&y){let e=y;e.setRemoteDescription({type:`answer`,sdp:String(t.sdp)}).then(()=>{for(let t of P.splice(0))e.addIceCandidate(t).catch(()=>{})}).catch(e=>W(`answer refused: ${e.message}`))}break;case`rtc.candidate`:if(t?.id===b&&y){let e={candidate:String(t.candidate),sdpMid:String(t.mid)};y.remoteDescription?y.addIceCandidate(e).catch(()=>{}):P.push(e)}break;case`rtc.port`:{let e=g?.routerPort;g&&={...g,routerPort:t};let n=g?.routerPort;n&&(e?.state!==n.state||e?.allowed!==n.allowed)&&X(n.state===`mapped`?`router port ${n.external} → ${n.internal}`:n.state===`error`?`router port: ${n.error}`:n.allowed?`router port ${n.state}`:`router port not allowed`),T&&n?.allowed&&!e?.allowed&&!q()&&U();break}case`rtc.error`:if(t?.id!==b)break;t.unavailable&&g&&(g={...g,available:!1,error:String(t.error)}),W(`server: ${String(t.error)}`)}Z()}function Be(e=!0){if(p!==`off`&&g&&g.available){if(p===`auto`&&g.path!==`proxied`){(e||y)&&X(`Auto: the path is ${g.path}, not probing`),G();return}p===`always`&&q()&&!v&&J(`rtc`,`Always`),y||U()}}function Ve(){return p!==`off`&&!!g?.available&&(p===`always`||g.path===`proxied`)}function U(){if(clearTimeout(L),G(),!g||!Ve()||!n())return;let e=`p${Math.random().toString(36).slice(2,12)}`,t=new RTCPeerConnection({iceServers:g.stun.length?[{urls:g.stun}]:[]});y=t,b=e,P=[],S=t.iceConnectionState;let r=t.createDataChannel(`ctl`);x=r,X(T?`probe started (asking for the router port)`:`probe started`),r.onopen=()=>{y===t&&(clearTimeout(R),Te=0,j=0,w=!1,D=performance.now(),X(`direct path open`),Je(de,!0))},r.onmessage=e=>{let t=NaN;try{t=Number(JSON.parse(String(e.data)).p)}catch{}Ae.run(()=>{D=performance.now(),V.get(t)?.()})},r.onclose=()=>{y===t&&W(`control channel closed`)},t.onicecandidate=n=>{y===t&&n.candidate?.candidate&&i({rtc:`candidate`,id:e,candidate:n.candidate.candidate,mid:n.candidate.sdpMid??`0`})},t.oniceconnectionstatechange=()=>{y===t&&(S=t.iceConnectionState,X(`ICE ${S}`),We(t),Z())},R=setTimeout(()=>{y===t&&r.readyState!==`open`&&He()},be);let a=E;E=!1,t.setLocalDescription().then(()=>{y!==t||a||i({rtc:`offer`,id:e,sdp:t.localDescription.sdp,mode:p,needsPort:T})||W(`events socket closed`)}).catch(e=>W(e.message)),Z()}function He(){w=!0,(p===`always`||g?.path===`proxied`)&&(T=!0),W(`not connected`)}function Ue(){if(!w||!g)return null;let e=g.routerPort,t=!!g.firewall?.likely,n=`Couldn't reach this machine directly from this network.`;return T?e?.allowed?e.state===`error`?{text:`${n} Its router's port failed: ${e.error}.`,needs:null,walled:t}:e.state===`mapped`?{text:`${n} Not even through its router's port ${e.external}.`,needs:null,walled:t}:{text:`Opening a port on this machine's router…`,needs:null,walled:!1}:{text:n,needs:`router-port`,walled:t}:{text:n,needs:null,walled:t}}function We(e){clearTimeout(z);let t=e.iceConnectionState;if(t!==`connected`&&t!==`completed`){if(t===`disconnected`){J(`ws`,`ICE disconnected`,!1),z=setTimeout(()=>{y===e&&e.iceConnectionState===`disconnected`&&W(`ICE stayed disconnected`)},xe);return}t===`failed`?C?W(`ICE failed`):He():t===`closed`&&W(`ICE closed`)}}function W(e){if(!y||(X(`direct path lost: ${e}`),J(`ws`,e,!1),G(),!Ve()))return;let t=Ce[Math.min(Te++,Ce.length-1)];L=setTimeout(()=>{document.visibilityState===`visible`?U():N||=Date.now()-Se-1},t)}function G(){clearTimeout(R),clearTimeout(z);let e=y;if(e){y=null,x=null,C=null,S=`none`,k=[],A=0,j=0,J(`ws`,`direct path closed`,!1),Y(!1),i({rtc:`close`,id:b});for(let e of[...F])e.fail();try{e.close()}catch{}Z()}}function K(){if(Ve()){if(!q()){let e=y?.iceConnectionState;(!y||e===`disconnected`||e===`failed`)&&U();return}qe().then(e=>{e===null?W(`no answer`):Je(fe)})}}function q(){return!!y&&x?.readyState===`open`&&(y.iceConnectionState===`connected`||y.iceConnectionState===`completed`)}function Ge(){return q()&&performance.now()-D<ye}function Ke(){let e=++je,t=performance.now();return new Promise(n=>{let r=setTimeout(a,ve,null);function a(t){clearTimeout(r),V.delete(e),n(t)}V.set(e,()=>a(performance.now()-t)),De.run(()=>{i({rtc:`echo`,n:e})||a(null)})})}function qe(){let e=x,t=++je,n=performance.now();return new Promise(r=>{let i=setTimeout(a,ve,null);function a(e){clearTimeout(i),V.delete(t),r(e)}V.set(t,()=>a(performance.now()-n)),ke.run(()=>{if(e?.readyState!==`open`)return a(null);e.send(JSON.stringify({p:t}))})})}async function Je(e,t=!1){if(!M&&p!==`off`&&q()){M=!0;try{for(let t=0;t<e;t++){let e=await Ke();if(e!==null&&Xe(O,e),!q())break;let t=await qe();if(t!==null)Xe(k,t),j=0;else if(++j>=2){W(`round trips unanswered`);break}}}finally{M=!1}t&&X(`samples: WS ${$(Q(O))} · direct ${$(Q(k))} (median of ${e})`),Ye(t),Y()}}function Ye(e){if(Z(),!q()||v)return;if(p===`always`)return J(`rtc`,`Always`);let t=Q(O),n=Q(k);if(t===null||n===null)return;let r=n<=t-he&&n<=t*.8,i=n>=t+he&&n>=t*1.2;if(_===`ws`){r?J(`rtc`,`direct ${$(n)} vs WS ${$(t)}`):e&&X(`staying on WS: direct ${$(n)} vs WS ${$(t)} (needs ${he} ms and ${ge*100}% faster)`);return}if(!i){A=0;return}A++,A>=_e?J(`ws`,`direct ${$(n)} slower than WS ${$(t)}, ${_e} windows`):X(`direct ${$(n)} slower than WS ${$(t)} (${A} of ${_e})`)}function J(e,t,n=!0){_!==e&&(_=e,A=0,X(e===`rtc`?`switched to direct: ${t}`:`switched to WS: ${t}`),Y(n),Z())}function Y(e=!0){let t=_===`rtc`&&Ge()?`rtc`:`ws`;for(let n of s())n.transport&&n.transport!==t&&n.move(e)}function X(e){I.push({at:Date.now(),text:e}),I.length>we&&I.splice(0,I.length-we),Z()}function Z(){p!==`off`&&ee({mode:p,path:g?.path??null,available:g?g.available:null,error:g?.error??null,chosen:_,wsMs:Q(O),rtcMs:q()?Q(k):null,ice:S,pair:C,codec:H,delay:m,trouble:Ue()?.text??null,needs:Ue()?.needs??null,walled:Ue()?.walled??!1,firewall:g?.firewall??null,routerPort:g?.routerPort??null,log:[...I]})}function Xe(e,t){e.push(t),e.length>me&&e.splice(0,e.length-me)}function Q(e){if(!e.length)return null;let t=[...e].sort((e,t)=>e-t),n=t.length>>1;return t.length%2?t[n]:(t[n-1]+t[n])/2}function $(e){return e===null?`–`:`${e<10?e.toFixed(1):Math.round(e)} ms`}function Ze(){try{if(!localStorage.getItem(`work:direct-checks`))return}catch{return}let e=new Map,t=e=>s().find(t=>t.sessionId===e);window.__workDirect={status:()=>o(),setRtcDelay(e){h=e},force(e){v=e,e?J(e,`forced`):Ye(!1)},serverClose(){i({rtc:`close`,id:b})},failNext(){E=!0},terms:()=>s().map(e=>({sessionId:e.sessionId,transport:e.transport})),screen:e=>t(e)?.screen()??null,record(n){let r={text:[],at:[]};e.set(n,r);let i=t(n);i&&(i.tap=e=>{r.text.push(e),r.at.push(performance.now())})},recorded:t=>e.get(t)?.text.join(``)??``,arrivals:t=>e.get(t)?.at??[],async wire(){let e=0;return(await y?.getStats())?.forEach(t=>{t.type===`candidate-pair`&&(e+=Number(t.bytesReceived)||0)}),e},async remoteCandidates(){let e=[];return(await y?.getStats())?.forEach(t=>{t.type===`remote-candidate`&&e.push(`${t.candidateType} ${t.address??t.ip}:${t.port}`)}),e}}}export{Pe as eventsHello,Ie as syncMode};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{$input_treeOpen as e}from"./_Br8IXpnj.js";export{e as _};
|