@dylanpiercey/work 0.1.1 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -0
- package/bin/work.mjs +244 -4
- package/dist/{_Dzz52ZtI.js → _KRMk2duX.js} +378 -12
- package/dist/_ZwD1NY8D.js +2 -0
- package/dist/_h48l7A55.js +169 -0
- package/dist/index.mjs +8621 -7550
- package/dist/public/assets/_0vrYNi0q.js +1 -0
- package/dist/public/assets/{_DvKnakqk.js → _1nwEHbOU.js} +1 -1
- package/dist/public/assets/_1nwEHbOU.js.br +0 -0
- package/dist/public/assets/_3qg1gNHu.js +1 -0
- package/dist/public/assets/_6_cAsPFk.js +1 -0
- package/dist/public/assets/_8mmvS8Ic.js +1 -0
- package/dist/public/assets/{_DX5u6Wvm.js → _9s8_FJP0.js} +1 -1
- package/dist/public/assets/_9s8_FJP0.js.br +0 -0
- package/dist/public/assets/_B0cZNayr.js +1 -0
- package/dist/public/assets/_B23wGSFP.js +1 -0
- package/dist/public/assets/_B4BVKmh0.js +1 -0
- package/dist/public/assets/_B6oF-RIK.js +1 -0
- package/dist/public/assets/_B7SrX3Jp.js +1 -0
- package/dist/public/assets/{_BzGHediB.js → _B7cXT0VU.js} +1 -1
- package/dist/public/assets/_B7cXT0VU.js.br +0 -0
- package/dist/public/assets/{_DcOkTFth.js → _B8zhI-xd.js} +1 -1
- package/dist/public/assets/_B9epMiSr.js +1 -0
- package/dist/public/assets/{_B1D0PIz3.js → _BAYrWdA-.js} +1 -1
- package/dist/public/assets/_BAYrWdA-.js.br +0 -0
- package/dist/public/assets/{_pXG8fRON.js → _BAeMnj2l.js} +1 -1
- package/dist/public/assets/_BAeMnj2l.js.br +0 -0
- package/dist/public/assets/_BAs5Ke57.js +1 -0
- package/dist/public/assets/{_DomK7Scb.js → _BDkvoJS4.js} +1 -1
- package/dist/public/assets/_BDkvoJS4.js.br +0 -0
- package/dist/public/assets/{_TrcWRD8T.js → _BE2H3NPA.js} +7 -7
- package/dist/public/assets/_BE2H3NPA.js.br +0 -0
- package/dist/public/assets/{_-5UNb9-C.js → _BEL3zCP_.js} +1 -1
- package/dist/public/assets/_BEL3zCP_.js.br +0 -0
- package/dist/public/assets/{_FlITqTCo.js → _BGYXkARu.js} +1 -1
- package/dist/public/assets/_BGYXkARu.js.br +0 -0
- package/dist/public/assets/{_CxA3Yab0.js → _BHL0M4hx.js} +1 -1
- package/dist/public/assets/_BHL0M4hx.js.br +0 -0
- package/dist/public/assets/{_1JXC9nFp.js → _BIN7xPBA.js} +1 -1
- package/dist/public/assets/_BIN7xPBA.js.br +0 -0
- package/dist/public/assets/{_CFUREq1M.js → _BPa71So4.js} +1 -1
- package/dist/public/assets/_BPa71So4.js.br +0 -0
- package/dist/public/assets/_BQgqTOA6.js +1 -0
- package/dist/public/assets/_BVOSK21c.js +1 -0
- package/dist/public/assets/{_BVQosHjY.js → _BWdb49DN.js} +1 -1
- package/dist/public/assets/_BWdb49DN.js.br +0 -0
- package/dist/public/assets/{_C-EkQeP_.js → _BZMc12pa.js} +1 -1
- package/dist/public/assets/_BZMc12pa.js.br +0 -0
- package/dist/public/assets/{_BkcPY2j0.js → _BcS532Mh.js} +1 -1
- package/dist/public/assets/_BcS532Mh.js.br +0 -0
- package/dist/public/assets/_Bd3RfEz5.js +1 -0
- package/dist/public/assets/{_yUmRJIJ6.js → _BdS-SIP5.js} +1 -1
- package/dist/public/assets/_BdS-SIP5.js.br +0 -0
- package/dist/public/assets/{_B3NfNm8M.js → _BfU4-P5_.js} +13 -13
- package/dist/public/assets/_BfU4-P5_.js.br +0 -0
- package/dist/public/assets/{_DUs3ZGbj.js → _BidDqDX-.js} +1 -1
- package/dist/public/assets/_BidDqDX-.js.br +0 -0
- package/dist/public/assets/{_Cx_aJfDp.js → _Blw8tTg6.js} +1 -1
- package/dist/public/assets/_Blw8tTg6.js.br +0 -0
- package/dist/public/assets/{_CfGEGt_k.js → _BnIxui8m.js} +1 -1
- package/dist/public/assets/_BnIxui8m.js.br +0 -0
- package/dist/public/assets/{_DRHCy0UF.js → _BnnnKUB5.js} +1 -1
- package/dist/public/assets/_BnnnKUB5.js.br +0 -0
- package/dist/public/assets/_BoFnbJY1.js +1 -0
- package/dist/public/assets/{_Cb_k_JA_.js → _BotYlEwM.js} +1 -1
- package/dist/public/assets/_BotYlEwM.js.br +0 -0
- package/dist/public/assets/_BphDw0sE.js +1 -0
- package/dist/public/assets/_BqeBwjz2.js +1 -0
- package/dist/public/assets/{_BtZ2AatF.js → _Bs2mrt6D.js} +1 -1
- package/dist/public/assets/{_BRQ6iQ5p.js → _BtNwLErW.js} +1 -1
- package/dist/public/assets/_BtNwLErW.js.br +0 -0
- package/dist/public/assets/_Bv7YPgSd.js +1 -0
- package/dist/public/assets/{_CWG813ur.js → _BvrmMS2E.js} +1 -1
- package/dist/public/assets/_BvrmMS2E.js.br +0 -0
- package/dist/public/assets/{_DgWKSW-Y.js → _BwX_PmTl.js} +1 -1
- package/dist/public/assets/_BwX_PmTl.js.br +0 -0
- package/dist/public/assets/{_DEOryr7w.js → _C05-oJk8.js} +1 -1
- package/dist/public/assets/_C05-oJk8.js.br +0 -0
- package/dist/public/assets/{_CCVkYcN5.js → _C2yU1dLq.js} +1 -1
- package/dist/public/assets/_C2yU1dLq.js.br +0 -0
- package/dist/public/assets/{_CKLGAGKJ.js → _C2z40jpl.js} +1 -1
- package/dist/public/assets/_C2z40jpl.js.br +0 -0
- package/dist/public/assets/_C6HTijVG.js +1 -0
- package/dist/public/assets/{_1xOByopP.js → _C6lJdZzj.js} +1 -1
- package/dist/public/assets/_C6lJdZzj.js.br +0 -0
- package/dist/public/assets/_C7vMBzAL.js +1 -0
- package/dist/public/assets/_C7vMBzAL.js.br +0 -0
- package/dist/public/assets/{_B_0C2_RO.js → _C8pXYUZJ.js} +1 -1
- package/dist/public/assets/_C8pXYUZJ.js.br +0 -0
- package/dist/public/assets/_C9zPmOH2.js +2 -0
- package/dist/public/assets/_C9zPmOH2.js.br +0 -0
- package/dist/public/assets/_CA7mM4qX.js +1 -0
- package/dist/public/assets/{_DM60dKRs.js → _CBENFdjy.js} +1 -1
- package/dist/public/assets/_CBENFdjy.js.br +0 -0
- package/dist/public/assets/_CDlUndl3.js +1 -0
- package/dist/public/assets/_CDlUndl3.js.br +0 -0
- package/dist/public/assets/_CEPIxYBN.js +86 -0
- package/dist/public/assets/_CEPIxYBN.js.br +0 -0
- package/dist/public/assets/{_B7VYILLZ.js → _CFHivO5W.js} +1 -1
- package/dist/public/assets/_CFHivO5W.js.br +0 -0
- package/dist/public/assets/{_C98JZr09.js → _CGylDsvz.js} +1 -1
- package/dist/public/assets/_CGylDsvz.js.br +0 -0
- package/dist/public/assets/_CISImxw1.js +1 -0
- package/dist/public/assets/{_m2tRa0jk.js → _CJAgrixe.js} +1 -1
- package/dist/public/assets/_CJAgrixe.js.br +0 -0
- package/dist/public/assets/_CJEPkQp1.js +1 -0
- package/dist/public/assets/_CLF8kSpu.js +1 -0
- package/dist/public/assets/{_DxD_AC3a.js → _CMe89-TR.js} +1 -1
- package/dist/public/assets/_CMe89-TR.js.br +0 -0
- package/dist/public/assets/{_CY87Y7QL.js → _CQl6IKdI.js} +1 -1
- package/dist/public/assets/_CQl6IKdI.js.br +0 -0
- package/dist/public/assets/_CR1lhMQ3.js +1 -0
- package/dist/public/assets/_CRBiqW8E.js +1 -0
- package/dist/public/assets/{_UaKPY71M.js → _CRvIHvZK.js} +1 -1
- package/dist/public/assets/_CRvIHvZK.js.br +0 -0
- package/dist/public/assets/_CT-EgIiU.js +1 -0
- package/dist/public/assets/_CVXUwEfP.js +1 -0
- package/dist/public/assets/_CW5A7nA-.js +1 -0
- package/dist/public/assets/{_Do1ltY2a.js → _CWuvWHgA.js} +1 -1
- package/dist/public/assets/_CWuvWHgA.js.br +0 -0
- package/dist/public/assets/{_CfdK8EeQ.js → _CXSkYGoG.js} +1 -1
- package/dist/public/assets/_CXSkYGoG.js.br +0 -0
- package/dist/public/assets/_CYtwao4w.js +1 -0
- package/dist/public/assets/{_CUsrMpdL.js → _CZTHGPNy.js} +1 -1
- package/dist/public/assets/_CZTHGPNy.js.br +0 -0
- package/dist/public/assets/{_HM_QqtJi.js → _CappgGwi.js} +1 -1
- package/dist/public/assets/_CappgGwi.js.br +0 -0
- package/dist/public/assets/_CeARoEjl.js +1 -0
- package/dist/public/assets/_CeARoEjl.js.br +0 -0
- package/dist/public/assets/{_BDUjU8Ev.js → _Cf7js-r0.js} +1 -1
- package/dist/public/assets/{_Dbm6zAQS.js → _ChJB1hf1.js} +1 -1
- package/dist/public/assets/_ChJB1hf1.js.br +0 -0
- package/dist/public/assets/_ChkvWPVl.js +1 -0
- package/dist/public/assets/{_C0Ib7MZF.js → _CkLUNG6d.js} +1 -1
- package/dist/public/assets/_CkLUNG6d.js.br +0 -0
- package/dist/public/assets/_Cm2gzAKb.js +1 -0
- package/dist/public/assets/_CmCI2k_X.js +1 -0
- package/dist/public/assets/{_D9r_Fn0I.js → _CnIFQPqM.js} +1 -1
- package/dist/public/assets/_CnIFQPqM.js.br +0 -0
- package/dist/public/assets/_CpzkPBcd.js +1 -0
- package/dist/public/assets/{_DL3w8c_p.js → _Cqij7P1t.js} +1 -1
- package/dist/public/assets/_Cqij7P1t.js.br +0 -0
- package/dist/public/assets/_CsGBY_OR.js +1 -0
- package/dist/public/assets/_Cvq7oyHi.js +1 -0
- package/dist/public/assets/_CxQnabfk.js +6 -0
- package/dist/public/assets/_CxQnabfk.js.br +0 -0
- package/dist/public/assets/_Cxuln-KJ.js +1 -0
- package/dist/public/assets/{_DifjKObE.js → _CzjTMNNg.js} +1 -1
- package/dist/public/assets/_CzjTMNNg.js.br +0 -0
- package/dist/public/assets/{_CiYQhf81.js → _D-ewgB-g.js} +1 -1
- package/dist/public/assets/_D-ewgB-g.js.br +0 -0
- package/dist/public/assets/_D-lSuOqN.js +1 -0
- package/dist/public/assets/{_kWQ0dtYZ.js → _D0toMFV3.js} +1 -1
- package/dist/public/assets/_D0toMFV3.js.br +0 -0
- package/dist/public/assets/{_JEvx8ub4.js → _D1SAzhRo.js} +1 -1
- package/dist/public/assets/_D1SAzhRo.js.br +0 -0
- package/dist/public/assets/{_ClHPjF-1.js → _D2NPwpCK.js} +1 -1
- package/dist/public/assets/_D2NPwpCK.js.br +0 -0
- package/dist/public/assets/_D2pdXUO3.js +1 -0
- package/dist/public/assets/{_DzKW89Sx.js → _D36AHDIn.js} +1 -1
- package/dist/public/assets/_D36AHDIn.js.br +0 -0
- package/dist/public/assets/{_EefWj858.js → _D39T9Hc3.js} +1 -1
- package/dist/public/assets/_D39T9Hc3.js.br +0 -0
- package/dist/public/assets/{_DJqEBkNd.js → _D4iaGiBC.js} +1 -1
- package/dist/public/assets/_D4iaGiBC.js.br +0 -0
- package/dist/public/assets/{_BPSTqkJn.js → _D60_NLSK.js} +1 -1
- package/dist/public/assets/_D60_NLSK.js.br +0 -0
- package/dist/public/assets/{_Di1ccq_2.js → _D6O591m8.js} +1 -1
- package/dist/public/assets/_D6O591m8.js.br +0 -0
- package/dist/public/assets/_D6OrE8WN.js +1 -0
- package/dist/public/assets/_D6b9irVv.js +1 -0
- package/dist/public/assets/_D7e9Ia7P.js +1 -0
- package/dist/public/assets/_D95nSKbk.js +1 -0
- package/dist/public/assets/_D9qcWm-q.js +1 -0
- package/dist/public/assets/_D9uiExWV.js +1 -0
- package/dist/public/assets/{__cyRVmTO.js → _DAPIaEl7.js} +1 -1
- package/dist/public/assets/_DAPIaEl7.js.br +0 -0
- package/dist/public/assets/_DBOZe4SW.js +1 -0
- package/dist/public/assets/{_Cmmdd2e3.js → _DCfgIXDZ.js} +1 -1
- package/dist/public/assets/_DCfgIXDZ.js.br +0 -0
- package/dist/public/assets/_DDrn7T44.js +1 -0
- package/dist/public/assets/{_DQyjuXTi.js → _DDs3ube1.js} +1 -1
- package/dist/public/assets/_DDs3ube1.js.br +0 -0
- package/dist/public/assets/_DEKJL8_K.js +1 -0
- package/dist/public/assets/_DJOVMSj1.js +1 -0
- package/dist/public/assets/{_CqCenHOp.js → _DJSmALSy.js} +1 -1
- package/dist/public/assets/_DJSmALSy.js.br +0 -0
- package/dist/public/assets/_DLFpqsl0.js +1 -0
- package/dist/public/assets/_DOyEaX0U.js +1 -0
- package/dist/public/assets/{_B1-W0Sn2.js → _DQd4Gai0.js} +1 -1
- package/dist/public/assets/_DQd4Gai0.js.br +0 -0
- package/dist/public/assets/_DQlvpXhI.js +1 -0
- package/dist/public/assets/_DQlvpXhI.js.br +0 -0
- package/dist/public/assets/{_DZvkgS3V.js → _DRTaehFU.js} +1 -1
- package/dist/public/assets/_DRTaehFU.js.br +0 -0
- package/dist/public/assets/_DTKyMAAU.js +1 -0
- package/dist/public/assets/{_3aBl7SEn.js → _DWuVY-5K.js} +1 -1
- package/dist/public/assets/_DWuVY-5K.js.br +0 -0
- package/dist/public/assets/_DXAMCgpo.js +1 -0
- package/dist/public/assets/_DXAMCgpo.js.br +0 -0
- package/dist/public/assets/{_BSWN-v3P.js → _DXBIA5Jf.js} +1 -1
- package/dist/public/assets/_DXBIA5Jf.js.br +0 -0
- package/dist/public/assets/_Da14xaff.js +1 -0
- package/dist/public/assets/_Da14xaff.js.br +0 -0
- package/dist/public/assets/_DbXR2mlf.js +1 -0
- package/dist/public/assets/{_HmkI4Rfn.js → _Dbp_FIBr.js} +1 -1
- package/dist/public/assets/_Dbp_FIBr.js.br +0 -0
- package/dist/public/assets/_Dc_Ittsm.js +1 -0
- package/dist/public/assets/_DdYt8SWd.js +1 -0
- package/dist/public/assets/{_vcLBrU2m.js → _DgWkLH_d.js} +1 -1
- package/dist/public/assets/_DgWkLH_d.js.br +0 -0
- package/dist/public/assets/_Dh5xTE2G.js +1 -0
- package/dist/public/assets/{_CDY0RpYX.js → _DiE4MtP8.js} +1 -1
- package/dist/public/assets/_DiE4MtP8.js.br +0 -0
- package/dist/public/assets/_DjGr7GRl.js +1 -0
- package/dist/public/assets/_DjGr7GRl.js.br +0 -0
- package/dist/public/assets/_DotQ0YLh.js +2 -0
- package/dist/public/assets/_DotQ0YLh.js.br +0 -0
- package/dist/public/assets/_DqAfN3OQ.js +1 -0
- package/dist/public/assets/{_BKIx7IZP.js → _DqMNzDjo.js} +1 -1
- package/dist/public/assets/_DqMNzDjo.js.br +0 -0
- package/dist/public/assets/{_BsJZPHmz.js → _Dqqxf-zK.js} +1 -1
- package/dist/public/assets/_Dqqxf-zK.js.br +0 -0
- package/dist/public/assets/{_dsj7vMTW.js → _Dufbr-KL.js} +1 -1
- package/dist/public/assets/_Dufbr-KL.js.br +0 -0
- package/dist/public/assets/_Dv-q-Ej7.js +1 -0
- package/dist/public/assets/{_BHU5aikZ.js → _Dvfi_oP5.js} +1 -1
- package/dist/public/assets/_DvyJx5yW.js +1 -0
- package/dist/public/assets/_DvyJx5yW.js.br +0 -0
- package/dist/public/assets/_DxMb2QV8.js +1 -0
- package/dist/public/assets/{_BKHtiW96.js → _DyYpJ-H0.js} +1 -1
- package/dist/public/assets/_DyYpJ-H0.js.br +0 -0
- package/dist/public/assets/_DyhlHfZJ.js +1 -0
- package/dist/public/assets/_Dz053N5t.js +1 -0
- package/dist/public/assets/{_BLfzQY-3.js → _L54I8aS4.js} +1 -1
- package/dist/public/assets/_L54I8aS4.js.br +0 -0
- package/dist/public/assets/_Ly-2Xkdk.js +1 -0
- package/dist/public/assets/{_BSFJEuJX.js → _NN0jQCcG.js} +1 -1
- package/dist/public/assets/_NN0jQCcG.js.br +0 -0
- package/dist/public/assets/{_7YrArFMB.js → _OzsIhJyG.js} +1 -1
- package/dist/public/assets/_OzsIhJyG.js.br +0 -0
- package/dist/public/assets/_QJUmfZ1o.js +1 -0
- package/dist/public/assets/{_iutZ4EDe.js → _VdeOc79W.js} +1 -1
- package/dist/public/assets/_VdeOc79W.js.br +0 -0
- package/dist/public/assets/_VkEFwEn-.js +1 -0
- package/dist/public/assets/_ahp1rb5o.js +1 -0
- package/dist/public/assets/{_VPLoEBTS.js → _aqBpT1uJ.js} +1 -1
- package/dist/public/assets/{_DBD57l1T.js → _bgu_OKRO.js} +1 -1
- package/dist/public/assets/_bgu_OKRO.js.br +0 -0
- package/dist/public/assets/{_C81nSl09.js → _fqHAtYJz.js} +1 -1
- package/dist/public/assets/_fqHAtYJz.js.br +0 -0
- package/dist/public/assets/_hdoOlF1z.js +1 -0
- package/dist/public/assets/{_CtqGSS84.js → _iFV4welK.js} +1 -1
- package/dist/public/assets/_iFV4welK.js.br +0 -0
- package/dist/public/assets/_ihgadrBp.js +1 -0
- package/dist/public/assets/_lJgrZjR9.js +1 -0
- package/dist/public/assets/_lJgrZjR9.js.br +0 -0
- package/dist/public/assets/_oNShN50G.js +1 -0
- package/dist/public/assets/{_C8bqYk4J.js → _oR1qIlrw.js} +1 -1
- package/dist/public/assets/_oR1qIlrw.js.br +0 -0
- package/dist/public/assets/_pxC2PRJZ.js +1 -0
- package/dist/public/assets/_q6iLcLGY.js +1 -0
- package/dist/public/assets/_qnKDgwVg.js +1 -0
- package/dist/public/assets/_rYWHy2XX.js +1 -0
- package/dist/public/assets/{_CHdpLB95.js → _snlh9j-I.js} +1 -1
- package/dist/public/assets/_snlh9j-I.js.br +0 -0
- package/dist/public/assets/_uGH3cvIZ.js +1 -0
- package/dist/public/assets/_uRhnGFfv.js +1 -0
- package/dist/public/assets/{_DMJHTH74.js → _wOX1zfjU.js} +1 -1
- package/dist/public/assets/_wOX1zfjU.js.br +0 -0
- package/dist/public/assets/_xMc_vDaT.js +1 -0
- package/dist/public/assets/{_DSUBv-Bl.js → _zGPxyhe6.js} +1 -1
- package/dist/public/assets/_zGPxyhe6.js.br +0 -0
- package/dist/public/assets/files-view-dOlOeiFQ.js +2 -0
- package/dist/public/assets/manage-workspace-CO4jGUSH.js +2 -0
- package/dist/public/assets/new-hhTJEH33.js +1 -0
- package/dist/public/assets/new-workspace-w6SV5jo2.js +2 -0
- package/dist/public/assets/review-view-DhbS4oNh.js +2 -0
- package/dist/public/assets/settings-hhTJEH33.js +1 -0
- package/dist/public/assets/settings-page-DpRlMZTu.js +2 -0
- package/dist/public/assets/styles-BfKP6xyD.css +1 -0
- package/dist/public/assets/styles-BfKP6xyD.css.br +0 -0
- package/dist/public/assets/w-hhTJEH33.js +1 -0
- package/dist/public/assets/w._-DSFmri_t.js +1 -0
- package/dist/public/assets/w._-hhTJEH33.js +1 -0
- package/dist/public/assets/w._-kFbho4FJ.js +1 -0
- package/dist/rtc-helper.mjs +1170 -0
- package/lib/preview/media.mjs +5 -4
- package/lib/setup/doctor.d.mts +11 -0
- package/lib/setup/doctor.mjs +23 -2
- package/lib/setup/firewall.d.mts +76 -0
- package/lib/setup/firewall.mjs +598 -0
- package/package.json +3 -2
- package/dist/_D1C-XIqT.js +0 -168
- package/dist/_HbAW5Cbt.js +0 -2
- package/dist/public/assets/_-5UNb9-C.js.br +0 -0
- package/dist/public/assets/_06rtP_SB.js +0 -1
- package/dist/public/assets/_14yhXek7.js +0 -1
- package/dist/public/assets/_14yhXek7.js.br +0 -0
- package/dist/public/assets/_1JXC9nFp.js.br +0 -0
- package/dist/public/assets/_1Yit_Y5R.js +0 -1
- package/dist/public/assets/_1ZPfR2B8.js +0 -6
- package/dist/public/assets/_1ZPfR2B8.js.br +0 -0
- package/dist/public/assets/_1xOByopP.js.br +0 -0
- package/dist/public/assets/_3aBl7SEn.js.br +0 -0
- package/dist/public/assets/_5aMLV2Vy.js +0 -1
- package/dist/public/assets/_7YrArFMB.js.br +0 -0
- package/dist/public/assets/_B1-W0Sn2.js.br +0 -0
- package/dist/public/assets/_B1D0PIz3.js.br +0 -0
- package/dist/public/assets/_B1agoKUa.js +0 -1
- package/dist/public/assets/_B3NfNm8M.js.br +0 -0
- package/dist/public/assets/_B7VYILLZ.js.br +0 -0
- package/dist/public/assets/_B7sPBy0J.js +0 -1
- package/dist/public/assets/_B81p6DSw.js +0 -1
- package/dist/public/assets/_BAkSKCkz.js +0 -1
- package/dist/public/assets/_BHZPTv1U.js +0 -1
- package/dist/public/assets/_BKHtiW96.js.br +0 -0
- package/dist/public/assets/_BKIx7IZP.js.br +0 -0
- package/dist/public/assets/_BLfzQY-3.js.br +0 -0
- package/dist/public/assets/_BPSTqkJn.js.br +0 -0
- package/dist/public/assets/_BQZOimBB.js +0 -1
- package/dist/public/assets/_BRQ6iQ5p.js.br +0 -0
- package/dist/public/assets/_BRVURc4u.js +0 -1
- package/dist/public/assets/_BSFJEuJX.js.br +0 -0
- package/dist/public/assets/_BSWN-v3P.js.br +0 -0
- package/dist/public/assets/_BTVAQr2c.js +0 -1
- package/dist/public/assets/_BUD1pBC0.js +0 -1
- package/dist/public/assets/_BVGzCczb.js +0 -1
- package/dist/public/assets/_BVQosHjY.js.br +0 -0
- package/dist/public/assets/_B_0C2_RO.js.br +0 -0
- package/dist/public/assets/_BaA31ms5.js +0 -1
- package/dist/public/assets/_BgCHJGlO.js +0 -1
- package/dist/public/assets/_BhpRLDbL.js +0 -1
- package/dist/public/assets/_BhpRLDbL.js.br +0 -0
- package/dist/public/assets/_BkKcjMAC.js +0 -1
- package/dist/public/assets/_BkcPY2j0.js.br +0 -0
- package/dist/public/assets/_BlTVd_3d.js +0 -1
- package/dist/public/assets/_BlqlLmEY.js +0 -1
- package/dist/public/assets/_BoNfxc9P.js +0 -1
- package/dist/public/assets/_BoPk1gXL.js +0 -1
- package/dist/public/assets/_BqswW9B9.js +0 -1
- package/dist/public/assets/_BricqzsO.js +0 -1
- package/dist/public/assets/_BrreckIa.js +0 -1
- package/dist/public/assets/_BsJZPHmz.js.br +0 -0
- package/dist/public/assets/_BtRYwaBb.js +0 -1
- package/dist/public/assets/_BvPBKjRP.js +0 -1
- package/dist/public/assets/_BvPBKjRP.js.br +0 -0
- package/dist/public/assets/_ByrrjMU9.js +0 -1
- package/dist/public/assets/_BzGHediB.js.br +0 -0
- package/dist/public/assets/_BzvTKm92.js +0 -1
- package/dist/public/assets/_C-EkQeP_.js.br +0 -0
- package/dist/public/assets/_C0Ib7MZF.js.br +0 -0
- package/dist/public/assets/_C2p1Z5Lf.js +0 -86
- package/dist/public/assets/_C2p1Z5Lf.js.br +0 -0
- package/dist/public/assets/_C3iiOlxd.js +0 -1
- package/dist/public/assets/_C81nSl09.js.br +0 -0
- package/dist/public/assets/_C8bqYk4J.js.br +0 -0
- package/dist/public/assets/_C98JZr09.js.br +0 -0
- package/dist/public/assets/_CB4VkmGZ.js +0 -1
- package/dist/public/assets/_CCVkYcN5.js.br +0 -0
- package/dist/public/assets/_CDY0RpYX.js.br +0 -0
- package/dist/public/assets/_CE2GEqMx.js +0 -1
- package/dist/public/assets/_CE2GEqMx.js.br +0 -0
- package/dist/public/assets/_CFUREq1M.js.br +0 -0
- package/dist/public/assets/_CHdh6bII.js +0 -1
- package/dist/public/assets/_CHdpLB95.js.br +0 -0
- package/dist/public/assets/_CKLGAGKJ.js.br +0 -0
- package/dist/public/assets/_CMRt2lyQ.js +0 -1
- package/dist/public/assets/_CN1zW1AT.js +0 -1
- package/dist/public/assets/_CN1zW1AT.js.br +0 -0
- package/dist/public/assets/_CUILmj9R.js +0 -1
- package/dist/public/assets/_CUhP8KQ8.js +0 -1
- package/dist/public/assets/_CUsrMpdL.js.br +0 -0
- package/dist/public/assets/_CVG0_w9T.js +0 -1
- package/dist/public/assets/_CWG813ur.js.br +0 -0
- package/dist/public/assets/_CY87Y7QL.js.br +0 -0
- package/dist/public/assets/_CYAsKva_.js +0 -1
- package/dist/public/assets/_CajKYNSY.js +0 -1
- package/dist/public/assets/_Cb_k_JA_.js.br +0 -0
- package/dist/public/assets/_Ce8PlfMD.js +0 -1
- package/dist/public/assets/_CfGEGt_k.js.br +0 -0
- package/dist/public/assets/_CfdK8EeQ.js.br +0 -0
- package/dist/public/assets/_CgOKmAwr.js +0 -1
- package/dist/public/assets/_CiYQhf81.js.br +0 -0
- package/dist/public/assets/_Cj9DHPRL.js +0 -1
- package/dist/public/assets/_ClHPjF-1.js.br +0 -0
- package/dist/public/assets/_Cmmdd2e3.js.br +0 -0
- package/dist/public/assets/_Cn9Ia4SS.js +0 -1
- package/dist/public/assets/_Cn9Ia4SS.js.br +0 -0
- package/dist/public/assets/_CnTzFbuG.js +0 -1
- package/dist/public/assets/_CqCenHOp.js.br +0 -0
- package/dist/public/assets/_CtqGSS84.js.br +0 -0
- package/dist/public/assets/_CttfwM-c.js +0 -1
- package/dist/public/assets/_CxA3Yab0.js.br +0 -0
- package/dist/public/assets/_Cx_aJfDp.js.br +0 -0
- package/dist/public/assets/_D2L_ILOW.js +0 -1
- package/dist/public/assets/_D47lCu0c.js +0 -1
- package/dist/public/assets/_D5W-uGIK.js +0 -1
- package/dist/public/assets/_D6BbZLrc.js +0 -1
- package/dist/public/assets/_D6RVeCAn.js +0 -1
- package/dist/public/assets/_D75V4jV-.js +0 -1
- package/dist/public/assets/_D9r_Fn0I.js.br +0 -0
- package/dist/public/assets/_DBD57l1T.js.br +0 -0
- package/dist/public/assets/_DCWILZgL.js +0 -1
- package/dist/public/assets/_DEOryr7w.js.br +0 -0
- package/dist/public/assets/_DF54Iz7o.js +0 -1
- package/dist/public/assets/_DFamU2Uj.js +0 -2
- package/dist/public/assets/_DFamU2Uj.js.br +0 -0
- package/dist/public/assets/_DHmBuyCO.js +0 -1
- package/dist/public/assets/_DHmBuyCO.js.br +0 -0
- package/dist/public/assets/_DJqEBkNd.js.br +0 -0
- package/dist/public/assets/_DL3w8c_p.js.br +0 -0
- package/dist/public/assets/_DLVL-4MP.js +0 -1
- package/dist/public/assets/_DM60dKRs.js.br +0 -0
- package/dist/public/assets/_DMJHTH74.js.br +0 -0
- package/dist/public/assets/_DMLv6KA6.js +0 -1
- package/dist/public/assets/_DQYpgyzr.js +0 -1
- package/dist/public/assets/_DQYpgyzr.js.br +0 -0
- package/dist/public/assets/_DQyjuXTi.js.br +0 -0
- package/dist/public/assets/_DRHCy0UF.js.br +0 -0
- package/dist/public/assets/_DSUBv-Bl.js.br +0 -0
- package/dist/public/assets/_DUFM9qLV.js +0 -1
- package/dist/public/assets/_DUFM9qLV.js.br +0 -0
- package/dist/public/assets/_DUs3ZGbj.js.br +0 -0
- package/dist/public/assets/_DX5u6Wvm.js.br +0 -0
- package/dist/public/assets/_DZvkgS3V.js.br +0 -0
- package/dist/public/assets/_Dbm6zAQS.js.br +0 -0
- package/dist/public/assets/_Ddf1gumD.js +0 -1
- package/dist/public/assets/_De6E9M7R.js +0 -1
- package/dist/public/assets/_DgWKSW-Y.js.br +0 -0
- package/dist/public/assets/_DhEN6T4v.js +0 -1
- package/dist/public/assets/_Di1ccq_2.js.br +0 -0
- package/dist/public/assets/_DifjKObE.js.br +0 -0
- package/dist/public/assets/_Dn10ABa-.js +0 -1
- package/dist/public/assets/_Do1ltY2a.js.br +0 -0
- package/dist/public/assets/_DomK7Scb.js.br +0 -0
- package/dist/public/assets/_DtWggCxt.js +0 -1
- package/dist/public/assets/_DtqqybyQ.js +0 -1
- package/dist/public/assets/_DvKnakqk.js.br +0 -0
- package/dist/public/assets/_DxD_AC3a.js.br +0 -0
- package/dist/public/assets/_Dxo7m9cG.js +0 -1
- package/dist/public/assets/_DzKW89Sx.js.br +0 -0
- package/dist/public/assets/_DzTHCioH.js +0 -1
- package/dist/public/assets/_EefWj858.js.br +0 -0
- package/dist/public/assets/_FlITqTCo.js.br +0 -0
- package/dist/public/assets/_GkEw2S0T.js +0 -1
- package/dist/public/assets/_HM_QqtJi.js.br +0 -0
- package/dist/public/assets/_HmkI4Rfn.js.br +0 -0
- package/dist/public/assets/_JEvx8ub4.js.br +0 -0
- package/dist/public/assets/_JOb8B3tz.js +0 -1
- package/dist/public/assets/_LEIhjFrO.js +0 -1
- package/dist/public/assets/_STJhwy7U.js +0 -1
- package/dist/public/assets/_TrcWRD8T.js.br +0 -0
- package/dist/public/assets/_UaKPY71M.js.br +0 -0
- package/dist/public/assets/_UhK3lkm0.js +0 -1
- package/dist/public/assets/_Zeftz3t1.js +0 -1
- package/dist/public/assets/__cyRVmTO.js.br +0 -0
- package/dist/public/assets/_awfYTHit.js +0 -1
- package/dist/public/assets/_dsj7vMTW.js.br +0 -0
- package/dist/public/assets/_eqpiOhSM.js +0 -1
- package/dist/public/assets/_iutZ4EDe.js.br +0 -0
- package/dist/public/assets/_kWQ0dtYZ.js.br +0 -0
- package/dist/public/assets/_knvMqXQh.js +0 -1
- package/dist/public/assets/_lwC7sIgC.js +0 -1
- package/dist/public/assets/_m2tRa0jk.js.br +0 -0
- package/dist/public/assets/_pXG8fRON.js.br +0 -0
- package/dist/public/assets/_r541ENtr.js +0 -1
- package/dist/public/assets/_rrUx1wn3.js +0 -1
- package/dist/public/assets/_tJvcu7sD.js +0 -1
- package/dist/public/assets/_vcLBrU2m.js.br +0 -0
- package/dist/public/assets/_xZC4Vm70.js +0 -1
- package/dist/public/assets/_yAr5r-uL.js +0 -1
- package/dist/public/assets/_yUmRJIJ6.js.br +0 -0
- package/dist/public/assets/files-view-CTadakLK.js +0 -2
- package/dist/public/assets/manage-workspace-HUAS6qjy.js +0 -2
- package/dist/public/assets/new-CirJkJFl.js +0 -1
- package/dist/public/assets/new-workspace-C3t1nA6z.js +0 -2
- package/dist/public/assets/review-view-DKPNtgmc.js +0 -2
- package/dist/public/assets/settings-CirJkJFl.js +0 -1
- package/dist/public/assets/settings-page-DH-9cN-8.js +0 -2
- package/dist/public/assets/styles-CIeNhVxC.css +0 -1
- package/dist/public/assets/styles-CIeNhVxC.css.br +0 -0
- package/dist/public/assets/w-CirJkJFl.js +0 -1
- package/dist/public/assets/w._-BnShhzdq.js +0 -1
- package/dist/public/assets/w._-CirJkJFl.js +0 -1
- package/dist/public/assets/w._-aCTYfruH.js +0 -1
package/lib/preview/media.mjs
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
// What a browser can render inline for a binary file in review, keyed by
|
|
2
|
-
// extension. Plain ESM with no dependencies: the blob route serves
|
|
3
|
-
// types in this table and the browser picks its element from the
|
|
4
|
-
// so a type can never be displayable at one end and not the other.
|
|
2
|
+
// extension. Plain ESM with no dependencies: the blob route serves inline
|
|
3
|
+
// only the types in this table and the browser picks its element from the
|
|
4
|
+
// same one, so a type can never be displayable at one end and not the other.
|
|
5
5
|
//
|
|
6
6
|
// The allowlist is the security boundary, not a nicety. The app's API and
|
|
7
7
|
// the review page share an origin, so an `image/svg+xml` opened in a tab —
|
|
8
8
|
// or worse a `text/html` — from a repo under review would be script with
|
|
9
9
|
// the reviewer's access to it. Nothing outside this table is ever served
|
|
10
|
-
// inline
|
|
10
|
+
// inline (a `.share/` file of another type goes only as an attachment),
|
|
11
|
+
// and the served response denies scripts on top of that.
|
|
11
12
|
|
|
12
13
|
/** @typedef {"image" | "pdf" | "video"} PreviewKind */
|
|
13
14
|
/** @typedef {{ kind: PreviewKind, type: string }} Preview */
|
package/lib/setup/doctor.d.mts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { TailscaleProbe } from "./tailscale.mjs";
|
|
2
|
+
import type { FirewallProbe } from "./firewall.mjs";
|
|
2
3
|
export interface DoctorTool {
|
|
3
4
|
id: string;
|
|
4
5
|
label: string;
|
|
@@ -50,6 +51,9 @@ export interface Doctor {
|
|
|
50
51
|
staleGhHelpers: string[];
|
|
51
52
|
/** Tailscale, optional: how work is reached from other devices. */
|
|
52
53
|
tailscale: TailscaleProbe;
|
|
54
|
+
/** The host firewall in front of direct connections' UDP port; null
|
|
55
|
+
* with none active (or direct connections off). */
|
|
56
|
+
firewall: FirewallProbe | null;
|
|
53
57
|
}
|
|
54
58
|
export function setupPath(base?: string): string;
|
|
55
59
|
export function which(bin: string): string | null;
|
|
@@ -72,5 +76,12 @@ export function doctor(opts?: {
|
|
|
72
76
|
hosts?: string[];
|
|
73
77
|
port?: string;
|
|
74
78
|
allowedHosts?: string;
|
|
79
|
+
/** The service's direct-connection settings, for the firewall probe. */
|
|
80
|
+
rtcPort?: string;
|
|
81
|
+
listen?: string;
|
|
82
|
+
rtc?: string;
|
|
83
|
+
/** The firewall as the service meets it, read by the caller (the CLI
|
|
84
|
+
* asks the running server); the probe runs here without it. */
|
|
85
|
+
firewall?: FirewallProbe | null | Promise<FirewallProbe | null>;
|
|
75
86
|
}): Promise<Doctor>;
|
|
76
87
|
export function formatDoctor(d: Doctor): string;
|
package/lib/setup/doctor.mjs
CHANGED
|
@@ -7,6 +7,7 @@ import os from "node:os";
|
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import { AGENTS, DEFAULT_GITHUB_HOST, TOOLS } from "./catalog.mjs";
|
|
9
9
|
import { readTailscale, tailscaleLine } from "./tailscale.mjs";
|
|
10
|
+
import { firewallLine, firewallProbe } from "./firewall.mjs";
|
|
10
11
|
|
|
11
12
|
const home = os.homedir();
|
|
12
13
|
|
|
@@ -406,7 +407,8 @@ export async function tailscaleProbe({ port, allowedHosts } = {}) {
|
|
|
406
407
|
* @param {{ hosts?: string[], port?: string, allowedHosts?: string }} [opts]
|
|
407
408
|
* configured GitHub hosts (settings); github.com and any host gh is
|
|
408
409
|
* already signed in to are always included. `port` and `allowedHosts`
|
|
409
|
-
* are the service's, for the Tailscale probe
|
|
410
|
+
* are the service's, for the Tailscale probe; `firewall`, when given, is
|
|
411
|
+
* the service's own firewall reading (`serviceFirewall` in the CLI).
|
|
410
412
|
*/
|
|
411
413
|
export async function doctor(opts = {}) {
|
|
412
414
|
const hostSet = new Set([
|
|
@@ -414,7 +416,7 @@ export async function doctor(opts = {}) {
|
|
|
414
416
|
...(opts.hosts || []),
|
|
415
417
|
...ghKnownHosts(),
|
|
416
418
|
]);
|
|
417
|
-
const [versions, github, awake, extensions, helpers, tailscale] =
|
|
419
|
+
const [versions, github, awake, extensions, helpers, tailscale, firewall] =
|
|
418
420
|
await Promise.all([
|
|
419
421
|
miseVersions(),
|
|
420
422
|
Promise.all([...hostSet].map(githubHostStatus)),
|
|
@@ -422,6 +424,20 @@ export async function doctor(opts = {}) {
|
|
|
422
424
|
ghExtensions(),
|
|
423
425
|
staleGhHelpers(),
|
|
424
426
|
tailscaleProbe(opts),
|
|
427
|
+
// The CLI hands in the service's own reading (bin/work.mjs
|
|
428
|
+
// `serviceFirewall`); the server reads for itself.
|
|
429
|
+
opts.firewall !== undefined
|
|
430
|
+
? opts.firewall
|
|
431
|
+
: firewallProbe({
|
|
432
|
+
rtcPort: opts.rtcPort ?? process.env.WORK_RTC_PORT,
|
|
433
|
+
appPort:
|
|
434
|
+
opts.port ||
|
|
435
|
+
process.env.PORT ||
|
|
436
|
+
process.env.WORK_APP_PORT ||
|
|
437
|
+
"7171",
|
|
438
|
+
listen: opts.listen ?? process.env.WORK_LISTEN,
|
|
439
|
+
rtc: opts.rtc ?? process.env.WORK_RTC,
|
|
440
|
+
}),
|
|
425
441
|
]);
|
|
426
442
|
|
|
427
443
|
const tools = TOOLS.map((t) => {
|
|
@@ -471,6 +487,7 @@ export async function doctor(opts = {}) {
|
|
|
471
487
|
awake,
|
|
472
488
|
staleGhHelpers: helpers,
|
|
473
489
|
tailscale,
|
|
490
|
+
firewall,
|
|
474
491
|
};
|
|
475
492
|
}
|
|
476
493
|
|
|
@@ -500,6 +517,10 @@ export function formatDoctor(d) {
|
|
|
500
517
|
// Optional, so never part of `ready`: it is how work is reached from
|
|
501
518
|
// elsewhere, not what it needs to run.
|
|
502
519
|
lines.push(tailscaleLine(d.tailscale));
|
|
520
|
+
// Optional too: only devices elsewhere on the network lose the direct
|
|
521
|
+
// path to a firewall, and work runs either way.
|
|
522
|
+
const firewall = firewallLine(d.firewall);
|
|
523
|
+
if (firewall) lines.push(firewall);
|
|
503
524
|
// Said only when nothing holds the host: not a readiness gate, since
|
|
504
525
|
// work runs either way, but the one place a headless host would say so.
|
|
505
526
|
if (d.awake === false) {
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export const RULE: string;
|
|
2
|
+
export interface FirewallProbe {
|
|
3
|
+
kind: "firewalld" | "ufw" | "macos";
|
|
4
|
+
/** How it is named in a sentence: `firewalld (zone FedoraServer)`. */
|
|
5
|
+
what: string;
|
|
6
|
+
zone?: string;
|
|
7
|
+
/** The UDP port direct connections use. */
|
|
8
|
+
port: number;
|
|
9
|
+
/** It lets that port in (by its settings, or work's own rule). */
|
|
10
|
+
admits: boolean;
|
|
11
|
+
/** It likely drops it: not admitted by what could be read. */
|
|
12
|
+
likely: boolean;
|
|
13
|
+
/** Its settings were read as they are, not as shipped. */
|
|
14
|
+
exact: boolean;
|
|
15
|
+
/** work's named rule is there. */
|
|
16
|
+
ruled: boolean;
|
|
17
|
+
/** The commands `work setup --firewall` runs (argv, sudo first); empty
|
|
18
|
+
* where it adds nothing. */
|
|
19
|
+
plan: string[][];
|
|
20
|
+
/** Those as one shell line, or the fix to run by hand; null with none. */
|
|
21
|
+
fix: string | null;
|
|
22
|
+
/** What the verdict rests on, when it is not work's rule. */
|
|
23
|
+
why?: string | null;
|
|
24
|
+
/** The node macOS's firewall was asked about (its real path). */
|
|
25
|
+
node?: string;
|
|
26
|
+
/** Whose node that was, as the CLI found it: the running service's
|
|
27
|
+
* own reading, its definition's, or this shell's for want of either. */
|
|
28
|
+
nodeFrom?: "service" | "unit" | "shell";
|
|
29
|
+
}
|
|
30
|
+
export function firewallProbe(opts?: {
|
|
31
|
+
rtcPort?: string | number;
|
|
32
|
+
appPort?: string | number;
|
|
33
|
+
listen?: string;
|
|
34
|
+
rtc?: string;
|
|
35
|
+
node?: string;
|
|
36
|
+
root?: string;
|
|
37
|
+
platform?: string;
|
|
38
|
+
}): Promise<FirewallProbe | null>;
|
|
39
|
+
export interface MacosVerdict {
|
|
40
|
+
admits: boolean;
|
|
41
|
+
exact: boolean;
|
|
42
|
+
why: string;
|
|
43
|
+
needs: "blockall" | "unblock" | "add" | null;
|
|
44
|
+
}
|
|
45
|
+
export function macosVerdict(said: {
|
|
46
|
+
state?: string;
|
|
47
|
+
blockAll?: string;
|
|
48
|
+
signed?: string;
|
|
49
|
+
blocked?: string;
|
|
50
|
+
apps?: string;
|
|
51
|
+
sign?: string;
|
|
52
|
+
paths: string[];
|
|
53
|
+
}): MacosVerdict | null;
|
|
54
|
+
export function globalOn(text?: string): boolean | null;
|
|
55
|
+
export function blockAllOn(text?: string): boolean | null;
|
|
56
|
+
export function allowSigned(text?: string): {
|
|
57
|
+
builtIn: boolean | null;
|
|
58
|
+
downloaded: boolean | null;
|
|
59
|
+
};
|
|
60
|
+
export function listedAs(
|
|
61
|
+
text?: string,
|
|
62
|
+
paths?: string[],
|
|
63
|
+
): "allow" | "block" | null;
|
|
64
|
+
export function appBlocked(text?: string): "allow" | "block" | null;
|
|
65
|
+
export function signatureOf(
|
|
66
|
+
text?: string,
|
|
67
|
+
): "developer-id" | "apple" | "adhoc" | "unsigned" | "other" | null;
|
|
68
|
+
export function serviceNode(
|
|
69
|
+
text: string,
|
|
70
|
+
opts?: { PATH?: string },
|
|
71
|
+
): string | null;
|
|
72
|
+
export function firewallLine(f: FirewallProbe | null): string | null;
|
|
73
|
+
export function applyPlan(
|
|
74
|
+
plan: string[][],
|
|
75
|
+
log: (line: string) => void,
|
|
76
|
+
): { ok: boolean; failed?: string[] };
|