@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.
Files changed (486) hide show
  1. package/README.md +28 -0
  2. package/bin/work.mjs +244 -4
  3. package/dist/{_Dzz52ZtI.js → _KRMk2duX.js} +378 -12
  4. package/dist/_ZwD1NY8D.js +2 -0
  5. package/dist/_h48l7A55.js +169 -0
  6. package/dist/index.mjs +8621 -7550
  7. package/dist/public/assets/_0vrYNi0q.js +1 -0
  8. package/dist/public/assets/{_DvKnakqk.js → _1nwEHbOU.js} +1 -1
  9. package/dist/public/assets/_1nwEHbOU.js.br +0 -0
  10. package/dist/public/assets/_3qg1gNHu.js +1 -0
  11. package/dist/public/assets/_6_cAsPFk.js +1 -0
  12. package/dist/public/assets/_8mmvS8Ic.js +1 -0
  13. package/dist/public/assets/{_DX5u6Wvm.js → _9s8_FJP0.js} +1 -1
  14. package/dist/public/assets/_9s8_FJP0.js.br +0 -0
  15. package/dist/public/assets/_B0cZNayr.js +1 -0
  16. package/dist/public/assets/_B23wGSFP.js +1 -0
  17. package/dist/public/assets/_B4BVKmh0.js +1 -0
  18. package/dist/public/assets/_B6oF-RIK.js +1 -0
  19. package/dist/public/assets/_B7SrX3Jp.js +1 -0
  20. package/dist/public/assets/{_BzGHediB.js → _B7cXT0VU.js} +1 -1
  21. package/dist/public/assets/_B7cXT0VU.js.br +0 -0
  22. package/dist/public/assets/{_DcOkTFth.js → _B8zhI-xd.js} +1 -1
  23. package/dist/public/assets/_B9epMiSr.js +1 -0
  24. package/dist/public/assets/{_B1D0PIz3.js → _BAYrWdA-.js} +1 -1
  25. package/dist/public/assets/_BAYrWdA-.js.br +0 -0
  26. package/dist/public/assets/{_pXG8fRON.js → _BAeMnj2l.js} +1 -1
  27. package/dist/public/assets/_BAeMnj2l.js.br +0 -0
  28. package/dist/public/assets/_BAs5Ke57.js +1 -0
  29. package/dist/public/assets/{_DomK7Scb.js → _BDkvoJS4.js} +1 -1
  30. package/dist/public/assets/_BDkvoJS4.js.br +0 -0
  31. package/dist/public/assets/{_TrcWRD8T.js → _BE2H3NPA.js} +7 -7
  32. package/dist/public/assets/_BE2H3NPA.js.br +0 -0
  33. package/dist/public/assets/{_-5UNb9-C.js → _BEL3zCP_.js} +1 -1
  34. package/dist/public/assets/_BEL3zCP_.js.br +0 -0
  35. package/dist/public/assets/{_FlITqTCo.js → _BGYXkARu.js} +1 -1
  36. package/dist/public/assets/_BGYXkARu.js.br +0 -0
  37. package/dist/public/assets/{_CxA3Yab0.js → _BHL0M4hx.js} +1 -1
  38. package/dist/public/assets/_BHL0M4hx.js.br +0 -0
  39. package/dist/public/assets/{_1JXC9nFp.js → _BIN7xPBA.js} +1 -1
  40. package/dist/public/assets/_BIN7xPBA.js.br +0 -0
  41. package/dist/public/assets/{_CFUREq1M.js → _BPa71So4.js} +1 -1
  42. package/dist/public/assets/_BPa71So4.js.br +0 -0
  43. package/dist/public/assets/_BQgqTOA6.js +1 -0
  44. package/dist/public/assets/_BVOSK21c.js +1 -0
  45. package/dist/public/assets/{_BVQosHjY.js → _BWdb49DN.js} +1 -1
  46. package/dist/public/assets/_BWdb49DN.js.br +0 -0
  47. package/dist/public/assets/{_C-EkQeP_.js → _BZMc12pa.js} +1 -1
  48. package/dist/public/assets/_BZMc12pa.js.br +0 -0
  49. package/dist/public/assets/{_BkcPY2j0.js → _BcS532Mh.js} +1 -1
  50. package/dist/public/assets/_BcS532Mh.js.br +0 -0
  51. package/dist/public/assets/_Bd3RfEz5.js +1 -0
  52. package/dist/public/assets/{_yUmRJIJ6.js → _BdS-SIP5.js} +1 -1
  53. package/dist/public/assets/_BdS-SIP5.js.br +0 -0
  54. package/dist/public/assets/{_B3NfNm8M.js → _BfU4-P5_.js} +13 -13
  55. package/dist/public/assets/_BfU4-P5_.js.br +0 -0
  56. package/dist/public/assets/{_DUs3ZGbj.js → _BidDqDX-.js} +1 -1
  57. package/dist/public/assets/_BidDqDX-.js.br +0 -0
  58. package/dist/public/assets/{_Cx_aJfDp.js → _Blw8tTg6.js} +1 -1
  59. package/dist/public/assets/_Blw8tTg6.js.br +0 -0
  60. package/dist/public/assets/{_CfGEGt_k.js → _BnIxui8m.js} +1 -1
  61. package/dist/public/assets/_BnIxui8m.js.br +0 -0
  62. package/dist/public/assets/{_DRHCy0UF.js → _BnnnKUB5.js} +1 -1
  63. package/dist/public/assets/_BnnnKUB5.js.br +0 -0
  64. package/dist/public/assets/_BoFnbJY1.js +1 -0
  65. package/dist/public/assets/{_Cb_k_JA_.js → _BotYlEwM.js} +1 -1
  66. package/dist/public/assets/_BotYlEwM.js.br +0 -0
  67. package/dist/public/assets/_BphDw0sE.js +1 -0
  68. package/dist/public/assets/_BqeBwjz2.js +1 -0
  69. package/dist/public/assets/{_BtZ2AatF.js → _Bs2mrt6D.js} +1 -1
  70. package/dist/public/assets/{_BRQ6iQ5p.js → _BtNwLErW.js} +1 -1
  71. package/dist/public/assets/_BtNwLErW.js.br +0 -0
  72. package/dist/public/assets/_Bv7YPgSd.js +1 -0
  73. package/dist/public/assets/{_CWG813ur.js → _BvrmMS2E.js} +1 -1
  74. package/dist/public/assets/_BvrmMS2E.js.br +0 -0
  75. package/dist/public/assets/{_DgWKSW-Y.js → _BwX_PmTl.js} +1 -1
  76. package/dist/public/assets/_BwX_PmTl.js.br +0 -0
  77. package/dist/public/assets/{_DEOryr7w.js → _C05-oJk8.js} +1 -1
  78. package/dist/public/assets/_C05-oJk8.js.br +0 -0
  79. package/dist/public/assets/{_CCVkYcN5.js → _C2yU1dLq.js} +1 -1
  80. package/dist/public/assets/_C2yU1dLq.js.br +0 -0
  81. package/dist/public/assets/{_CKLGAGKJ.js → _C2z40jpl.js} +1 -1
  82. package/dist/public/assets/_C2z40jpl.js.br +0 -0
  83. package/dist/public/assets/_C6HTijVG.js +1 -0
  84. package/dist/public/assets/{_1xOByopP.js → _C6lJdZzj.js} +1 -1
  85. package/dist/public/assets/_C6lJdZzj.js.br +0 -0
  86. package/dist/public/assets/_C7vMBzAL.js +1 -0
  87. package/dist/public/assets/_C7vMBzAL.js.br +0 -0
  88. package/dist/public/assets/{_B_0C2_RO.js → _C8pXYUZJ.js} +1 -1
  89. package/dist/public/assets/_C8pXYUZJ.js.br +0 -0
  90. package/dist/public/assets/_C9zPmOH2.js +2 -0
  91. package/dist/public/assets/_C9zPmOH2.js.br +0 -0
  92. package/dist/public/assets/_CA7mM4qX.js +1 -0
  93. package/dist/public/assets/{_DM60dKRs.js → _CBENFdjy.js} +1 -1
  94. package/dist/public/assets/_CBENFdjy.js.br +0 -0
  95. package/dist/public/assets/_CDlUndl3.js +1 -0
  96. package/dist/public/assets/_CDlUndl3.js.br +0 -0
  97. package/dist/public/assets/_CEPIxYBN.js +86 -0
  98. package/dist/public/assets/_CEPIxYBN.js.br +0 -0
  99. package/dist/public/assets/{_B7VYILLZ.js → _CFHivO5W.js} +1 -1
  100. package/dist/public/assets/_CFHivO5W.js.br +0 -0
  101. package/dist/public/assets/{_C98JZr09.js → _CGylDsvz.js} +1 -1
  102. package/dist/public/assets/_CGylDsvz.js.br +0 -0
  103. package/dist/public/assets/_CISImxw1.js +1 -0
  104. package/dist/public/assets/{_m2tRa0jk.js → _CJAgrixe.js} +1 -1
  105. package/dist/public/assets/_CJAgrixe.js.br +0 -0
  106. package/dist/public/assets/_CJEPkQp1.js +1 -0
  107. package/dist/public/assets/_CLF8kSpu.js +1 -0
  108. package/dist/public/assets/{_DxD_AC3a.js → _CMe89-TR.js} +1 -1
  109. package/dist/public/assets/_CMe89-TR.js.br +0 -0
  110. package/dist/public/assets/{_CY87Y7QL.js → _CQl6IKdI.js} +1 -1
  111. package/dist/public/assets/_CQl6IKdI.js.br +0 -0
  112. package/dist/public/assets/_CR1lhMQ3.js +1 -0
  113. package/dist/public/assets/_CRBiqW8E.js +1 -0
  114. package/dist/public/assets/{_UaKPY71M.js → _CRvIHvZK.js} +1 -1
  115. package/dist/public/assets/_CRvIHvZK.js.br +0 -0
  116. package/dist/public/assets/_CT-EgIiU.js +1 -0
  117. package/dist/public/assets/_CVXUwEfP.js +1 -0
  118. package/dist/public/assets/_CW5A7nA-.js +1 -0
  119. package/dist/public/assets/{_Do1ltY2a.js → _CWuvWHgA.js} +1 -1
  120. package/dist/public/assets/_CWuvWHgA.js.br +0 -0
  121. package/dist/public/assets/{_CfdK8EeQ.js → _CXSkYGoG.js} +1 -1
  122. package/dist/public/assets/_CXSkYGoG.js.br +0 -0
  123. package/dist/public/assets/_CYtwao4w.js +1 -0
  124. package/dist/public/assets/{_CUsrMpdL.js → _CZTHGPNy.js} +1 -1
  125. package/dist/public/assets/_CZTHGPNy.js.br +0 -0
  126. package/dist/public/assets/{_HM_QqtJi.js → _CappgGwi.js} +1 -1
  127. package/dist/public/assets/_CappgGwi.js.br +0 -0
  128. package/dist/public/assets/_CeARoEjl.js +1 -0
  129. package/dist/public/assets/_CeARoEjl.js.br +0 -0
  130. package/dist/public/assets/{_BDUjU8Ev.js → _Cf7js-r0.js} +1 -1
  131. package/dist/public/assets/{_Dbm6zAQS.js → _ChJB1hf1.js} +1 -1
  132. package/dist/public/assets/_ChJB1hf1.js.br +0 -0
  133. package/dist/public/assets/_ChkvWPVl.js +1 -0
  134. package/dist/public/assets/{_C0Ib7MZF.js → _CkLUNG6d.js} +1 -1
  135. package/dist/public/assets/_CkLUNG6d.js.br +0 -0
  136. package/dist/public/assets/_Cm2gzAKb.js +1 -0
  137. package/dist/public/assets/_CmCI2k_X.js +1 -0
  138. package/dist/public/assets/{_D9r_Fn0I.js → _CnIFQPqM.js} +1 -1
  139. package/dist/public/assets/_CnIFQPqM.js.br +0 -0
  140. package/dist/public/assets/_CpzkPBcd.js +1 -0
  141. package/dist/public/assets/{_DL3w8c_p.js → _Cqij7P1t.js} +1 -1
  142. package/dist/public/assets/_Cqij7P1t.js.br +0 -0
  143. package/dist/public/assets/_CsGBY_OR.js +1 -0
  144. package/dist/public/assets/_Cvq7oyHi.js +1 -0
  145. package/dist/public/assets/_CxQnabfk.js +6 -0
  146. package/dist/public/assets/_CxQnabfk.js.br +0 -0
  147. package/dist/public/assets/_Cxuln-KJ.js +1 -0
  148. package/dist/public/assets/{_DifjKObE.js → _CzjTMNNg.js} +1 -1
  149. package/dist/public/assets/_CzjTMNNg.js.br +0 -0
  150. package/dist/public/assets/{_CiYQhf81.js → _D-ewgB-g.js} +1 -1
  151. package/dist/public/assets/_D-ewgB-g.js.br +0 -0
  152. package/dist/public/assets/_D-lSuOqN.js +1 -0
  153. package/dist/public/assets/{_kWQ0dtYZ.js → _D0toMFV3.js} +1 -1
  154. package/dist/public/assets/_D0toMFV3.js.br +0 -0
  155. package/dist/public/assets/{_JEvx8ub4.js → _D1SAzhRo.js} +1 -1
  156. package/dist/public/assets/_D1SAzhRo.js.br +0 -0
  157. package/dist/public/assets/{_ClHPjF-1.js → _D2NPwpCK.js} +1 -1
  158. package/dist/public/assets/_D2NPwpCK.js.br +0 -0
  159. package/dist/public/assets/_D2pdXUO3.js +1 -0
  160. package/dist/public/assets/{_DzKW89Sx.js → _D36AHDIn.js} +1 -1
  161. package/dist/public/assets/_D36AHDIn.js.br +0 -0
  162. package/dist/public/assets/{_EefWj858.js → _D39T9Hc3.js} +1 -1
  163. package/dist/public/assets/_D39T9Hc3.js.br +0 -0
  164. package/dist/public/assets/{_DJqEBkNd.js → _D4iaGiBC.js} +1 -1
  165. package/dist/public/assets/_D4iaGiBC.js.br +0 -0
  166. package/dist/public/assets/{_BPSTqkJn.js → _D60_NLSK.js} +1 -1
  167. package/dist/public/assets/_D60_NLSK.js.br +0 -0
  168. package/dist/public/assets/{_Di1ccq_2.js → _D6O591m8.js} +1 -1
  169. package/dist/public/assets/_D6O591m8.js.br +0 -0
  170. package/dist/public/assets/_D6OrE8WN.js +1 -0
  171. package/dist/public/assets/_D6b9irVv.js +1 -0
  172. package/dist/public/assets/_D7e9Ia7P.js +1 -0
  173. package/dist/public/assets/_D95nSKbk.js +1 -0
  174. package/dist/public/assets/_D9qcWm-q.js +1 -0
  175. package/dist/public/assets/_D9uiExWV.js +1 -0
  176. package/dist/public/assets/{__cyRVmTO.js → _DAPIaEl7.js} +1 -1
  177. package/dist/public/assets/_DAPIaEl7.js.br +0 -0
  178. package/dist/public/assets/_DBOZe4SW.js +1 -0
  179. package/dist/public/assets/{_Cmmdd2e3.js → _DCfgIXDZ.js} +1 -1
  180. package/dist/public/assets/_DCfgIXDZ.js.br +0 -0
  181. package/dist/public/assets/_DDrn7T44.js +1 -0
  182. package/dist/public/assets/{_DQyjuXTi.js → _DDs3ube1.js} +1 -1
  183. package/dist/public/assets/_DDs3ube1.js.br +0 -0
  184. package/dist/public/assets/_DEKJL8_K.js +1 -0
  185. package/dist/public/assets/_DJOVMSj1.js +1 -0
  186. package/dist/public/assets/{_CqCenHOp.js → _DJSmALSy.js} +1 -1
  187. package/dist/public/assets/_DJSmALSy.js.br +0 -0
  188. package/dist/public/assets/_DLFpqsl0.js +1 -0
  189. package/dist/public/assets/_DOyEaX0U.js +1 -0
  190. package/dist/public/assets/{_B1-W0Sn2.js → _DQd4Gai0.js} +1 -1
  191. package/dist/public/assets/_DQd4Gai0.js.br +0 -0
  192. package/dist/public/assets/_DQlvpXhI.js +1 -0
  193. package/dist/public/assets/_DQlvpXhI.js.br +0 -0
  194. package/dist/public/assets/{_DZvkgS3V.js → _DRTaehFU.js} +1 -1
  195. package/dist/public/assets/_DRTaehFU.js.br +0 -0
  196. package/dist/public/assets/_DTKyMAAU.js +1 -0
  197. package/dist/public/assets/{_3aBl7SEn.js → _DWuVY-5K.js} +1 -1
  198. package/dist/public/assets/_DWuVY-5K.js.br +0 -0
  199. package/dist/public/assets/_DXAMCgpo.js +1 -0
  200. package/dist/public/assets/_DXAMCgpo.js.br +0 -0
  201. package/dist/public/assets/{_BSWN-v3P.js → _DXBIA5Jf.js} +1 -1
  202. package/dist/public/assets/_DXBIA5Jf.js.br +0 -0
  203. package/dist/public/assets/_Da14xaff.js +1 -0
  204. package/dist/public/assets/_Da14xaff.js.br +0 -0
  205. package/dist/public/assets/_DbXR2mlf.js +1 -0
  206. package/dist/public/assets/{_HmkI4Rfn.js → _Dbp_FIBr.js} +1 -1
  207. package/dist/public/assets/_Dbp_FIBr.js.br +0 -0
  208. package/dist/public/assets/_Dc_Ittsm.js +1 -0
  209. package/dist/public/assets/_DdYt8SWd.js +1 -0
  210. package/dist/public/assets/{_vcLBrU2m.js → _DgWkLH_d.js} +1 -1
  211. package/dist/public/assets/_DgWkLH_d.js.br +0 -0
  212. package/dist/public/assets/_Dh5xTE2G.js +1 -0
  213. package/dist/public/assets/{_CDY0RpYX.js → _DiE4MtP8.js} +1 -1
  214. package/dist/public/assets/_DiE4MtP8.js.br +0 -0
  215. package/dist/public/assets/_DjGr7GRl.js +1 -0
  216. package/dist/public/assets/_DjGr7GRl.js.br +0 -0
  217. package/dist/public/assets/_DotQ0YLh.js +2 -0
  218. package/dist/public/assets/_DotQ0YLh.js.br +0 -0
  219. package/dist/public/assets/_DqAfN3OQ.js +1 -0
  220. package/dist/public/assets/{_BKIx7IZP.js → _DqMNzDjo.js} +1 -1
  221. package/dist/public/assets/_DqMNzDjo.js.br +0 -0
  222. package/dist/public/assets/{_BsJZPHmz.js → _Dqqxf-zK.js} +1 -1
  223. package/dist/public/assets/_Dqqxf-zK.js.br +0 -0
  224. package/dist/public/assets/{_dsj7vMTW.js → _Dufbr-KL.js} +1 -1
  225. package/dist/public/assets/_Dufbr-KL.js.br +0 -0
  226. package/dist/public/assets/_Dv-q-Ej7.js +1 -0
  227. package/dist/public/assets/{_BHU5aikZ.js → _Dvfi_oP5.js} +1 -1
  228. package/dist/public/assets/_DvyJx5yW.js +1 -0
  229. package/dist/public/assets/_DvyJx5yW.js.br +0 -0
  230. package/dist/public/assets/_DxMb2QV8.js +1 -0
  231. package/dist/public/assets/{_BKHtiW96.js → _DyYpJ-H0.js} +1 -1
  232. package/dist/public/assets/_DyYpJ-H0.js.br +0 -0
  233. package/dist/public/assets/_DyhlHfZJ.js +1 -0
  234. package/dist/public/assets/_Dz053N5t.js +1 -0
  235. package/dist/public/assets/{_BLfzQY-3.js → _L54I8aS4.js} +1 -1
  236. package/dist/public/assets/_L54I8aS4.js.br +0 -0
  237. package/dist/public/assets/_Ly-2Xkdk.js +1 -0
  238. package/dist/public/assets/{_BSFJEuJX.js → _NN0jQCcG.js} +1 -1
  239. package/dist/public/assets/_NN0jQCcG.js.br +0 -0
  240. package/dist/public/assets/{_7YrArFMB.js → _OzsIhJyG.js} +1 -1
  241. package/dist/public/assets/_OzsIhJyG.js.br +0 -0
  242. package/dist/public/assets/_QJUmfZ1o.js +1 -0
  243. package/dist/public/assets/{_iutZ4EDe.js → _VdeOc79W.js} +1 -1
  244. package/dist/public/assets/_VdeOc79W.js.br +0 -0
  245. package/dist/public/assets/_VkEFwEn-.js +1 -0
  246. package/dist/public/assets/_ahp1rb5o.js +1 -0
  247. package/dist/public/assets/{_VPLoEBTS.js → _aqBpT1uJ.js} +1 -1
  248. package/dist/public/assets/{_DBD57l1T.js → _bgu_OKRO.js} +1 -1
  249. package/dist/public/assets/_bgu_OKRO.js.br +0 -0
  250. package/dist/public/assets/{_C81nSl09.js → _fqHAtYJz.js} +1 -1
  251. package/dist/public/assets/_fqHAtYJz.js.br +0 -0
  252. package/dist/public/assets/_hdoOlF1z.js +1 -0
  253. package/dist/public/assets/{_CtqGSS84.js → _iFV4welK.js} +1 -1
  254. package/dist/public/assets/_iFV4welK.js.br +0 -0
  255. package/dist/public/assets/_ihgadrBp.js +1 -0
  256. package/dist/public/assets/_lJgrZjR9.js +1 -0
  257. package/dist/public/assets/_lJgrZjR9.js.br +0 -0
  258. package/dist/public/assets/_oNShN50G.js +1 -0
  259. package/dist/public/assets/{_C8bqYk4J.js → _oR1qIlrw.js} +1 -1
  260. package/dist/public/assets/_oR1qIlrw.js.br +0 -0
  261. package/dist/public/assets/_pxC2PRJZ.js +1 -0
  262. package/dist/public/assets/_q6iLcLGY.js +1 -0
  263. package/dist/public/assets/_qnKDgwVg.js +1 -0
  264. package/dist/public/assets/_rYWHy2XX.js +1 -0
  265. package/dist/public/assets/{_CHdpLB95.js → _snlh9j-I.js} +1 -1
  266. package/dist/public/assets/_snlh9j-I.js.br +0 -0
  267. package/dist/public/assets/_uGH3cvIZ.js +1 -0
  268. package/dist/public/assets/_uRhnGFfv.js +1 -0
  269. package/dist/public/assets/{_DMJHTH74.js → _wOX1zfjU.js} +1 -1
  270. package/dist/public/assets/_wOX1zfjU.js.br +0 -0
  271. package/dist/public/assets/_xMc_vDaT.js +1 -0
  272. package/dist/public/assets/{_DSUBv-Bl.js → _zGPxyhe6.js} +1 -1
  273. package/dist/public/assets/_zGPxyhe6.js.br +0 -0
  274. package/dist/public/assets/files-view-dOlOeiFQ.js +2 -0
  275. package/dist/public/assets/manage-workspace-CO4jGUSH.js +2 -0
  276. package/dist/public/assets/new-hhTJEH33.js +1 -0
  277. package/dist/public/assets/new-workspace-w6SV5jo2.js +2 -0
  278. package/dist/public/assets/review-view-DhbS4oNh.js +2 -0
  279. package/dist/public/assets/settings-hhTJEH33.js +1 -0
  280. package/dist/public/assets/settings-page-DpRlMZTu.js +2 -0
  281. package/dist/public/assets/styles-BfKP6xyD.css +1 -0
  282. package/dist/public/assets/styles-BfKP6xyD.css.br +0 -0
  283. package/dist/public/assets/w-hhTJEH33.js +1 -0
  284. package/dist/public/assets/w._-DSFmri_t.js +1 -0
  285. package/dist/public/assets/w._-hhTJEH33.js +1 -0
  286. package/dist/public/assets/w._-kFbho4FJ.js +1 -0
  287. package/dist/rtc-helper.mjs +1170 -0
  288. package/lib/preview/media.mjs +5 -4
  289. package/lib/setup/doctor.d.mts +11 -0
  290. package/lib/setup/doctor.mjs +23 -2
  291. package/lib/setup/firewall.d.mts +76 -0
  292. package/lib/setup/firewall.mjs +598 -0
  293. package/package.json +3 -2
  294. package/dist/_D1C-XIqT.js +0 -168
  295. package/dist/_HbAW5Cbt.js +0 -2
  296. package/dist/public/assets/_-5UNb9-C.js.br +0 -0
  297. package/dist/public/assets/_06rtP_SB.js +0 -1
  298. package/dist/public/assets/_14yhXek7.js +0 -1
  299. package/dist/public/assets/_14yhXek7.js.br +0 -0
  300. package/dist/public/assets/_1JXC9nFp.js.br +0 -0
  301. package/dist/public/assets/_1Yit_Y5R.js +0 -1
  302. package/dist/public/assets/_1ZPfR2B8.js +0 -6
  303. package/dist/public/assets/_1ZPfR2B8.js.br +0 -0
  304. package/dist/public/assets/_1xOByopP.js.br +0 -0
  305. package/dist/public/assets/_3aBl7SEn.js.br +0 -0
  306. package/dist/public/assets/_5aMLV2Vy.js +0 -1
  307. package/dist/public/assets/_7YrArFMB.js.br +0 -0
  308. package/dist/public/assets/_B1-W0Sn2.js.br +0 -0
  309. package/dist/public/assets/_B1D0PIz3.js.br +0 -0
  310. package/dist/public/assets/_B1agoKUa.js +0 -1
  311. package/dist/public/assets/_B3NfNm8M.js.br +0 -0
  312. package/dist/public/assets/_B7VYILLZ.js.br +0 -0
  313. package/dist/public/assets/_B7sPBy0J.js +0 -1
  314. package/dist/public/assets/_B81p6DSw.js +0 -1
  315. package/dist/public/assets/_BAkSKCkz.js +0 -1
  316. package/dist/public/assets/_BHZPTv1U.js +0 -1
  317. package/dist/public/assets/_BKHtiW96.js.br +0 -0
  318. package/dist/public/assets/_BKIx7IZP.js.br +0 -0
  319. package/dist/public/assets/_BLfzQY-3.js.br +0 -0
  320. package/dist/public/assets/_BPSTqkJn.js.br +0 -0
  321. package/dist/public/assets/_BQZOimBB.js +0 -1
  322. package/dist/public/assets/_BRQ6iQ5p.js.br +0 -0
  323. package/dist/public/assets/_BRVURc4u.js +0 -1
  324. package/dist/public/assets/_BSFJEuJX.js.br +0 -0
  325. package/dist/public/assets/_BSWN-v3P.js.br +0 -0
  326. package/dist/public/assets/_BTVAQr2c.js +0 -1
  327. package/dist/public/assets/_BUD1pBC0.js +0 -1
  328. package/dist/public/assets/_BVGzCczb.js +0 -1
  329. package/dist/public/assets/_BVQosHjY.js.br +0 -0
  330. package/dist/public/assets/_B_0C2_RO.js.br +0 -0
  331. package/dist/public/assets/_BaA31ms5.js +0 -1
  332. package/dist/public/assets/_BgCHJGlO.js +0 -1
  333. package/dist/public/assets/_BhpRLDbL.js +0 -1
  334. package/dist/public/assets/_BhpRLDbL.js.br +0 -0
  335. package/dist/public/assets/_BkKcjMAC.js +0 -1
  336. package/dist/public/assets/_BkcPY2j0.js.br +0 -0
  337. package/dist/public/assets/_BlTVd_3d.js +0 -1
  338. package/dist/public/assets/_BlqlLmEY.js +0 -1
  339. package/dist/public/assets/_BoNfxc9P.js +0 -1
  340. package/dist/public/assets/_BoPk1gXL.js +0 -1
  341. package/dist/public/assets/_BqswW9B9.js +0 -1
  342. package/dist/public/assets/_BricqzsO.js +0 -1
  343. package/dist/public/assets/_BrreckIa.js +0 -1
  344. package/dist/public/assets/_BsJZPHmz.js.br +0 -0
  345. package/dist/public/assets/_BtRYwaBb.js +0 -1
  346. package/dist/public/assets/_BvPBKjRP.js +0 -1
  347. package/dist/public/assets/_BvPBKjRP.js.br +0 -0
  348. package/dist/public/assets/_ByrrjMU9.js +0 -1
  349. package/dist/public/assets/_BzGHediB.js.br +0 -0
  350. package/dist/public/assets/_BzvTKm92.js +0 -1
  351. package/dist/public/assets/_C-EkQeP_.js.br +0 -0
  352. package/dist/public/assets/_C0Ib7MZF.js.br +0 -0
  353. package/dist/public/assets/_C2p1Z5Lf.js +0 -86
  354. package/dist/public/assets/_C2p1Z5Lf.js.br +0 -0
  355. package/dist/public/assets/_C3iiOlxd.js +0 -1
  356. package/dist/public/assets/_C81nSl09.js.br +0 -0
  357. package/dist/public/assets/_C8bqYk4J.js.br +0 -0
  358. package/dist/public/assets/_C98JZr09.js.br +0 -0
  359. package/dist/public/assets/_CB4VkmGZ.js +0 -1
  360. package/dist/public/assets/_CCVkYcN5.js.br +0 -0
  361. package/dist/public/assets/_CDY0RpYX.js.br +0 -0
  362. package/dist/public/assets/_CE2GEqMx.js +0 -1
  363. package/dist/public/assets/_CE2GEqMx.js.br +0 -0
  364. package/dist/public/assets/_CFUREq1M.js.br +0 -0
  365. package/dist/public/assets/_CHdh6bII.js +0 -1
  366. package/dist/public/assets/_CHdpLB95.js.br +0 -0
  367. package/dist/public/assets/_CKLGAGKJ.js.br +0 -0
  368. package/dist/public/assets/_CMRt2lyQ.js +0 -1
  369. package/dist/public/assets/_CN1zW1AT.js +0 -1
  370. package/dist/public/assets/_CN1zW1AT.js.br +0 -0
  371. package/dist/public/assets/_CUILmj9R.js +0 -1
  372. package/dist/public/assets/_CUhP8KQ8.js +0 -1
  373. package/dist/public/assets/_CUsrMpdL.js.br +0 -0
  374. package/dist/public/assets/_CVG0_w9T.js +0 -1
  375. package/dist/public/assets/_CWG813ur.js.br +0 -0
  376. package/dist/public/assets/_CY87Y7QL.js.br +0 -0
  377. package/dist/public/assets/_CYAsKva_.js +0 -1
  378. package/dist/public/assets/_CajKYNSY.js +0 -1
  379. package/dist/public/assets/_Cb_k_JA_.js.br +0 -0
  380. package/dist/public/assets/_Ce8PlfMD.js +0 -1
  381. package/dist/public/assets/_CfGEGt_k.js.br +0 -0
  382. package/dist/public/assets/_CfdK8EeQ.js.br +0 -0
  383. package/dist/public/assets/_CgOKmAwr.js +0 -1
  384. package/dist/public/assets/_CiYQhf81.js.br +0 -0
  385. package/dist/public/assets/_Cj9DHPRL.js +0 -1
  386. package/dist/public/assets/_ClHPjF-1.js.br +0 -0
  387. package/dist/public/assets/_Cmmdd2e3.js.br +0 -0
  388. package/dist/public/assets/_Cn9Ia4SS.js +0 -1
  389. package/dist/public/assets/_Cn9Ia4SS.js.br +0 -0
  390. package/dist/public/assets/_CnTzFbuG.js +0 -1
  391. package/dist/public/assets/_CqCenHOp.js.br +0 -0
  392. package/dist/public/assets/_CtqGSS84.js.br +0 -0
  393. package/dist/public/assets/_CttfwM-c.js +0 -1
  394. package/dist/public/assets/_CxA3Yab0.js.br +0 -0
  395. package/dist/public/assets/_Cx_aJfDp.js.br +0 -0
  396. package/dist/public/assets/_D2L_ILOW.js +0 -1
  397. package/dist/public/assets/_D47lCu0c.js +0 -1
  398. package/dist/public/assets/_D5W-uGIK.js +0 -1
  399. package/dist/public/assets/_D6BbZLrc.js +0 -1
  400. package/dist/public/assets/_D6RVeCAn.js +0 -1
  401. package/dist/public/assets/_D75V4jV-.js +0 -1
  402. package/dist/public/assets/_D9r_Fn0I.js.br +0 -0
  403. package/dist/public/assets/_DBD57l1T.js.br +0 -0
  404. package/dist/public/assets/_DCWILZgL.js +0 -1
  405. package/dist/public/assets/_DEOryr7w.js.br +0 -0
  406. package/dist/public/assets/_DF54Iz7o.js +0 -1
  407. package/dist/public/assets/_DFamU2Uj.js +0 -2
  408. package/dist/public/assets/_DFamU2Uj.js.br +0 -0
  409. package/dist/public/assets/_DHmBuyCO.js +0 -1
  410. package/dist/public/assets/_DHmBuyCO.js.br +0 -0
  411. package/dist/public/assets/_DJqEBkNd.js.br +0 -0
  412. package/dist/public/assets/_DL3w8c_p.js.br +0 -0
  413. package/dist/public/assets/_DLVL-4MP.js +0 -1
  414. package/dist/public/assets/_DM60dKRs.js.br +0 -0
  415. package/dist/public/assets/_DMJHTH74.js.br +0 -0
  416. package/dist/public/assets/_DMLv6KA6.js +0 -1
  417. package/dist/public/assets/_DQYpgyzr.js +0 -1
  418. package/dist/public/assets/_DQYpgyzr.js.br +0 -0
  419. package/dist/public/assets/_DQyjuXTi.js.br +0 -0
  420. package/dist/public/assets/_DRHCy0UF.js.br +0 -0
  421. package/dist/public/assets/_DSUBv-Bl.js.br +0 -0
  422. package/dist/public/assets/_DUFM9qLV.js +0 -1
  423. package/dist/public/assets/_DUFM9qLV.js.br +0 -0
  424. package/dist/public/assets/_DUs3ZGbj.js.br +0 -0
  425. package/dist/public/assets/_DX5u6Wvm.js.br +0 -0
  426. package/dist/public/assets/_DZvkgS3V.js.br +0 -0
  427. package/dist/public/assets/_Dbm6zAQS.js.br +0 -0
  428. package/dist/public/assets/_Ddf1gumD.js +0 -1
  429. package/dist/public/assets/_De6E9M7R.js +0 -1
  430. package/dist/public/assets/_DgWKSW-Y.js.br +0 -0
  431. package/dist/public/assets/_DhEN6T4v.js +0 -1
  432. package/dist/public/assets/_Di1ccq_2.js.br +0 -0
  433. package/dist/public/assets/_DifjKObE.js.br +0 -0
  434. package/dist/public/assets/_Dn10ABa-.js +0 -1
  435. package/dist/public/assets/_Do1ltY2a.js.br +0 -0
  436. package/dist/public/assets/_DomK7Scb.js.br +0 -0
  437. package/dist/public/assets/_DtWggCxt.js +0 -1
  438. package/dist/public/assets/_DtqqybyQ.js +0 -1
  439. package/dist/public/assets/_DvKnakqk.js.br +0 -0
  440. package/dist/public/assets/_DxD_AC3a.js.br +0 -0
  441. package/dist/public/assets/_Dxo7m9cG.js +0 -1
  442. package/dist/public/assets/_DzKW89Sx.js.br +0 -0
  443. package/dist/public/assets/_DzTHCioH.js +0 -1
  444. package/dist/public/assets/_EefWj858.js.br +0 -0
  445. package/dist/public/assets/_FlITqTCo.js.br +0 -0
  446. package/dist/public/assets/_GkEw2S0T.js +0 -1
  447. package/dist/public/assets/_HM_QqtJi.js.br +0 -0
  448. package/dist/public/assets/_HmkI4Rfn.js.br +0 -0
  449. package/dist/public/assets/_JEvx8ub4.js.br +0 -0
  450. package/dist/public/assets/_JOb8B3tz.js +0 -1
  451. package/dist/public/assets/_LEIhjFrO.js +0 -1
  452. package/dist/public/assets/_STJhwy7U.js +0 -1
  453. package/dist/public/assets/_TrcWRD8T.js.br +0 -0
  454. package/dist/public/assets/_UaKPY71M.js.br +0 -0
  455. package/dist/public/assets/_UhK3lkm0.js +0 -1
  456. package/dist/public/assets/_Zeftz3t1.js +0 -1
  457. package/dist/public/assets/__cyRVmTO.js.br +0 -0
  458. package/dist/public/assets/_awfYTHit.js +0 -1
  459. package/dist/public/assets/_dsj7vMTW.js.br +0 -0
  460. package/dist/public/assets/_eqpiOhSM.js +0 -1
  461. package/dist/public/assets/_iutZ4EDe.js.br +0 -0
  462. package/dist/public/assets/_kWQ0dtYZ.js.br +0 -0
  463. package/dist/public/assets/_knvMqXQh.js +0 -1
  464. package/dist/public/assets/_lwC7sIgC.js +0 -1
  465. package/dist/public/assets/_m2tRa0jk.js.br +0 -0
  466. package/dist/public/assets/_pXG8fRON.js.br +0 -0
  467. package/dist/public/assets/_r541ENtr.js +0 -1
  468. package/dist/public/assets/_rrUx1wn3.js +0 -1
  469. package/dist/public/assets/_tJvcu7sD.js +0 -1
  470. package/dist/public/assets/_vcLBrU2m.js.br +0 -0
  471. package/dist/public/assets/_xZC4Vm70.js +0 -1
  472. package/dist/public/assets/_yAr5r-uL.js +0 -1
  473. package/dist/public/assets/_yUmRJIJ6.js.br +0 -0
  474. package/dist/public/assets/files-view-CTadakLK.js +0 -2
  475. package/dist/public/assets/manage-workspace-HUAS6qjy.js +0 -2
  476. package/dist/public/assets/new-CirJkJFl.js +0 -1
  477. package/dist/public/assets/new-workspace-C3t1nA6z.js +0 -2
  478. package/dist/public/assets/review-view-DKPNtgmc.js +0 -2
  479. package/dist/public/assets/settings-CirJkJFl.js +0 -1
  480. package/dist/public/assets/settings-page-DH-9cN-8.js +0 -2
  481. package/dist/public/assets/styles-CIeNhVxC.css +0 -1
  482. package/dist/public/assets/styles-CIeNhVxC.css.br +0 -0
  483. package/dist/public/assets/w-CirJkJFl.js +0 -1
  484. package/dist/public/assets/w._-BnShhzdq.js +0 -1
  485. package/dist/public/assets/w._-CirJkJFl.js +0 -1
  486. package/dist/public/assets/w._-aCTYfruH.js +0 -1
@@ -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 only the
3
- // types in this table and the browser picks its element from the same one,
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, and the served response denies scripts on top of that.
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 */
@@ -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;
@@ -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[] };