@chrisjowen/wheelhouse 0.1.0 → 0.2.0
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 +87 -56
- package/build/client/_app/immutable/assets/0.CKUND0qa.css +1 -0
- package/build/client/_app/immutable/assets/0.CKUND0qa.css.br +0 -0
- package/build/client/_app/immutable/assets/0.CKUND0qa.css.gz +0 -0
- package/build/client/_app/immutable/assets/DocSheet.CaO2v_qh.css +1 -0
- package/build/client/_app/immutable/assets/DocSheet.CaO2v_qh.css.br +0 -0
- package/build/client/_app/immutable/assets/DocSheet.CaO2v_qh.css.gz +0 -0
- package/build/client/_app/immutable/chunks/08Q01-Mc.js +1 -0
- package/build/client/_app/immutable/chunks/08Q01-Mc.js.br +0 -0
- package/build/client/_app/immutable/chunks/08Q01-Mc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/0TvUxbRv.js +1 -0
- package/build/client/_app/immutable/chunks/0TvUxbRv.js.br +2 -0
- package/build/client/_app/immutable/chunks/0TvUxbRv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/3Of2kn6M.js +5 -0
- package/build/client/_app/immutable/chunks/3Of2kn6M.js.br +0 -0
- package/build/client/_app/immutable/chunks/3Of2kn6M.js.gz +0 -0
- package/build/client/_app/immutable/chunks/5fVeMNeJ.js +1 -0
- package/build/client/_app/immutable/chunks/5fVeMNeJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/5fVeMNeJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/A8GZ5Uuc.js +1 -0
- package/build/client/_app/immutable/chunks/A8GZ5Uuc.js.br +0 -0
- package/build/client/_app/immutable/chunks/A8GZ5Uuc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/AHy1Hzhf.js +1 -0
- package/build/client/_app/immutable/chunks/AHy1Hzhf.js.br +0 -0
- package/build/client/_app/immutable/chunks/AHy1Hzhf.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B3jXa2LJ.js +1 -0
- package/build/client/_app/immutable/chunks/B3jXa2LJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/B3jXa2LJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEDHe9fo.js +1 -0
- package/build/client/_app/immutable/chunks/BEDHe9fo.js.br +0 -0
- package/build/client/_app/immutable/chunks/BEDHe9fo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BJ_s8GdZ.js +2 -0
- package/build/client/_app/immutable/chunks/BJ_s8GdZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/BJ_s8GdZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BKd0HUNP.js +1 -0
- package/build/client/_app/immutable/chunks/BKd0HUNP.js.br +1 -0
- package/build/client/_app/immutable/chunks/BKd0HUNP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BLL4xbEj.js +1 -0
- package/build/client/_app/immutable/chunks/BLL4xbEj.js.br +0 -0
- package/build/client/_app/immutable/chunks/BLL4xbEj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BUUcNufp.js +1 -0
- package/build/client/_app/immutable/chunks/BUUcNufp.js.br +0 -0
- package/build/client/_app/immutable/chunks/BUUcNufp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BVXUMEgB.js +1 -0
- package/build/client/_app/immutable/chunks/BVXUMEgB.js.br +0 -0
- package/build/client/_app/immutable/chunks/BVXUMEgB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BY5XjwMm.js +1 -0
- package/build/client/_app/immutable/chunks/BY5XjwMm.js.br +0 -0
- package/build/client/_app/immutable/chunks/BY5XjwMm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BdZ-2OIO.js +1 -0
- package/build/client/_app/immutable/chunks/BdZ-2OIO.js.br +0 -0
- package/build/client/_app/immutable/chunks/BdZ-2OIO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BdvB_H6l.js +1 -0
- package/build/client/_app/immutable/chunks/BdvB_H6l.js.br +0 -0
- package/build/client/_app/immutable/chunks/BdvB_H6l.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BkLV0FAz.js +1 -0
- package/build/client/_app/immutable/chunks/BkLV0FAz.js.br +0 -0
- package/build/client/_app/immutable/chunks/BkLV0FAz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bm8huziG.js +1 -0
- package/build/client/_app/immutable/chunks/Bm8huziG.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bm8huziG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BnMEvq-8.js +1 -0
- package/build/client/_app/immutable/chunks/BnMEvq-8.js.br +0 -0
- package/build/client/_app/immutable/chunks/BnMEvq-8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BngQrigD.js +1 -0
- package/build/client/_app/immutable/chunks/BngQrigD.js.br +0 -0
- package/build/client/_app/immutable/chunks/BngQrigD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BqQtpLRF.js +5 -0
- package/build/client/_app/immutable/chunks/BqQtpLRF.js.br +0 -0
- package/build/client/_app/immutable/chunks/BqQtpLRF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bx2K4OII.js +1 -0
- package/build/client/_app/immutable/chunks/Bx2K4OII.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bx2K4OII.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bypc6r1_.js +1 -0
- package/build/client/_app/immutable/chunks/Bypc6r1_.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bypc6r1_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C16DfZ5a.js +1 -0
- package/build/client/_app/immutable/chunks/C16DfZ5a.js.br +1 -0
- package/build/client/_app/immutable/chunks/C16DfZ5a.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3Yi7wCu.js +1 -0
- package/build/client/_app/immutable/chunks/C3Yi7wCu.js.br +0 -0
- package/build/client/_app/immutable/chunks/C3Yi7wCu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3e5IrpE.js +1 -0
- package/build/client/_app/immutable/chunks/C3e5IrpE.js.br +0 -0
- package/build/client/_app/immutable/chunks/C3e5IrpE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3o9xHsB.js +1 -0
- package/build/client/_app/immutable/chunks/C3o9xHsB.js.br +0 -0
- package/build/client/_app/immutable/chunks/C3o9xHsB.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C6q0X9xa.js +1 -0
- package/build/client/_app/immutable/chunks/C6q0X9xa.js.br +0 -0
- package/build/client/_app/immutable/chunks/C6q0X9xa.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C74jQQYs.js +1 -0
- package/build/client/_app/immutable/chunks/C74jQQYs.js.br +0 -0
- package/build/client/_app/immutable/chunks/C74jQQYs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CBHYGBBU.js +4 -0
- package/build/client/_app/immutable/chunks/CBHYGBBU.js.br +0 -0
- package/build/client/_app/immutable/chunks/CBHYGBBU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CD3hbDYc.js +1 -0
- package/build/client/_app/immutable/chunks/CD3hbDYc.js.br +0 -0
- package/build/client/_app/immutable/chunks/CD3hbDYc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CE3Ue5FU.js +1 -0
- package/build/client/_app/immutable/chunks/CE3Ue5FU.js.br +0 -0
- package/build/client/_app/immutable/chunks/CE3Ue5FU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CGGuNYjO.js +1 -0
- package/build/client/_app/immutable/chunks/CGGuNYjO.js.br +0 -0
- package/build/client/_app/immutable/chunks/CGGuNYjO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CH_9Gtej.js +1 -0
- package/build/client/_app/immutable/chunks/CH_9Gtej.js.br +0 -0
- package/build/client/_app/immutable/chunks/CH_9Gtej.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CIj4gWfs.js +1 -0
- package/build/client/_app/immutable/chunks/CIj4gWfs.js.br +0 -0
- package/build/client/_app/immutable/chunks/CIj4gWfs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJ3NIasv.js +1 -0
- package/build/client/_app/immutable/chunks/CJ3NIasv.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJ3NIasv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CKEJURpk.js +1 -0
- package/build/client/_app/immutable/chunks/CKEJURpk.js.br +0 -0
- package/build/client/_app/immutable/chunks/CKEJURpk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CPmGhju_.js +1 -0
- package/build/client/_app/immutable/chunks/CPmGhju_.js.br +1 -0
- package/build/client/_app/immutable/chunks/CPmGhju_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CXcL7cOb.js +1 -0
- package/build/client/_app/immutable/chunks/CXcL7cOb.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXcL7cOb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CXgAyvD-.js +1 -0
- package/build/client/_app/immutable/chunks/CXgAyvD-.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXgAyvD-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CZBcpBnY.js +1 -0
- package/build/client/_app/immutable/chunks/CZBcpBnY.js.br +0 -0
- package/build/client/_app/immutable/chunks/CZBcpBnY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CZPeboo-.js +1 -0
- package/build/client/_app/immutable/chunks/CZPeboo-.js.br +0 -0
- package/build/client/_app/immutable/chunks/CZPeboo-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cb-gOV5k.js +1 -0
- package/build/client/_app/immutable/chunks/Cb-gOV5k.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cb-gOV5k.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cl72MTSX.js +1 -0
- package/build/client/_app/immutable/chunks/Cl72MTSX.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cl72MTSX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cl7r7DFs.js +1 -0
- package/build/client/_app/immutable/chunks/Cl7r7DFs.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cl7r7DFs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cm8CSK8p.js +1 -0
- package/build/client/_app/immutable/chunks/Cm8CSK8p.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cm8CSK8p.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cng04DK0.js +1 -0
- package/build/client/_app/immutable/chunks/Cng04DK0.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cng04DK0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CqOnPLsz.js +1 -0
- package/build/client/_app/immutable/chunks/CqOnPLsz.js.br +0 -0
- package/build/client/_app/immutable/chunks/CqOnPLsz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cqy1lT7e.js +1 -0
- package/build/client/_app/immutable/chunks/Cqy1lT7e.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cqy1lT7e.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CrjvgIhR.js +1 -0
- package/build/client/_app/immutable/chunks/CrjvgIhR.js.br +0 -0
- package/build/client/_app/immutable/chunks/CrjvgIhR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CsRBDrRN.js +1 -0
- package/build/client/_app/immutable/chunks/CsRBDrRN.js.br +0 -0
- package/build/client/_app/immutable/chunks/CsRBDrRN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CwwFbl61.js +62 -0
- package/build/client/_app/immutable/chunks/CwwFbl61.js.br +0 -0
- package/build/client/_app/immutable/chunks/CwwFbl61.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D0JSbOCt.js +1 -0
- package/build/client/_app/immutable/chunks/D0JSbOCt.js.br +0 -0
- package/build/client/_app/immutable/chunks/D0JSbOCt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D25j-NnT.js +1 -0
- package/build/client/_app/immutable/chunks/D25j-NnT.js.br +0 -0
- package/build/client/_app/immutable/chunks/D25j-NnT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D5hwKKRv.js +1 -0
- package/build/client/_app/immutable/chunks/D5hwKKRv.js.br +0 -0
- package/build/client/_app/immutable/chunks/D5hwKKRv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DBxUIz0k.js +1 -0
- package/build/client/_app/immutable/chunks/DBxUIz0k.js.br +0 -0
- package/build/client/_app/immutable/chunks/DBxUIz0k.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DH7t4M9x.js +1 -0
- package/build/client/_app/immutable/chunks/DH7t4M9x.js.br +0 -0
- package/build/client/_app/immutable/chunks/DH7t4M9x.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DIsXG5DF.js +1 -0
- package/build/client/_app/immutable/chunks/DIsXG5DF.js.br +0 -0
- package/build/client/_app/immutable/chunks/DIsXG5DF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DNgh8jh8.js +1 -0
- package/build/client/_app/immutable/chunks/DNgh8jh8.js.br +0 -0
- package/build/client/_app/immutable/chunks/DNgh8jh8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DOWSzKHL.js +1 -0
- package/build/client/_app/immutable/chunks/DOWSzKHL.js.br +0 -0
- package/build/client/_app/immutable/chunks/DOWSzKHL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DSbOoIPC.js +1 -0
- package/build/client/_app/immutable/chunks/DSbOoIPC.js.br +0 -0
- package/build/client/_app/immutable/chunks/DSbOoIPC.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DUYBhCSA.js +1 -0
- package/build/client/_app/immutable/chunks/DUYBhCSA.js.br +0 -0
- package/build/client/_app/immutable/chunks/DUYBhCSA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfDxKk91.js +2 -0
- package/build/client/_app/immutable/chunks/DfDxKk91.js.br +0 -0
- package/build/client/_app/immutable/chunks/DfDxKk91.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DhfQd5fc.js +1 -0
- package/build/client/_app/immutable/chunks/DhfQd5fc.js.br +0 -0
- package/build/client/_app/immutable/chunks/DhfQd5fc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DmYFgZ4g.js +6 -0
- package/build/client/_app/immutable/chunks/DmYFgZ4g.js.br +0 -0
- package/build/client/_app/immutable/chunks/DmYFgZ4g.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dn-83VwV.js +1 -0
- package/build/client/_app/immutable/chunks/Dn-83VwV.js.br +1 -0
- package/build/client/_app/immutable/chunks/Dn-83VwV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dnnuh6qK.js +1 -0
- package/build/client/_app/immutable/chunks/Dnnuh6qK.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dnnuh6qK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DocaGLjv.js +1 -0
- package/build/client/_app/immutable/chunks/DocaGLjv.js.br +0 -0
- package/build/client/_app/immutable/chunks/DocaGLjv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dqlbq2bD.js +2 -0
- package/build/client/_app/immutable/chunks/Dqlbq2bD.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dqlbq2bD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DugIbHkD.js +1 -0
- package/build/client/_app/immutable/chunks/DugIbHkD.js.br +0 -0
- package/build/client/_app/immutable/chunks/DugIbHkD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dy07EIjs.js +1 -0
- package/build/client/_app/immutable/chunks/Dy07EIjs.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dy07EIjs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dy_X9Fgu.js +1 -0
- package/build/client/_app/immutable/chunks/Dy_X9Fgu.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dy_X9Fgu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/I26VQaTs.js +2 -0
- package/build/client/_app/immutable/chunks/I26VQaTs.js.br +0 -0
- package/build/client/_app/immutable/chunks/I26VQaTs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/IsTbwoyV.js +1 -0
- package/build/client/_app/immutable/chunks/IsTbwoyV.js.br +0 -0
- package/build/client/_app/immutable/chunks/IsTbwoyV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Km1CymxJ.js +1 -0
- package/build/client/_app/immutable/chunks/Km1CymxJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/Km1CymxJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Me06-nC7.js +1 -0
- package/build/client/_app/immutable/chunks/Me06-nC7.js.br +0 -0
- package/build/client/_app/immutable/chunks/Me06-nC7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/PQApLOOr.js +1 -0
- package/build/client/_app/immutable/chunks/PQApLOOr.js.br +0 -0
- package/build/client/_app/immutable/chunks/PQApLOOr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/WcvPAxq7.js +1 -0
- package/build/client/_app/immutable/chunks/WcvPAxq7.js.br +0 -0
- package/build/client/_app/immutable/chunks/WcvPAxq7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ZoG8qKMx.js +1 -0
- package/build/client/_app/immutable/chunks/ZoG8qKMx.js.br +0 -0
- package/build/client/_app/immutable/chunks/ZoG8qKMx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/cZnJ0mAm.js +7 -0
- package/build/client/_app/immutable/chunks/cZnJ0mAm.js.br +0 -0
- package/build/client/_app/immutable/chunks/cZnJ0mAm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/qb_JS6rP.js +1 -0
- package/build/client/_app/immutable/chunks/qb_JS6rP.js.br +0 -0
- package/build/client/_app/immutable/chunks/qb_JS6rP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/riwaJFkb.js +3 -0
- package/build/client/_app/immutable/chunks/riwaJFkb.js.br +0 -0
- package/build/client/_app/immutable/chunks/riwaJFkb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/wDLVOANX.js +2 -0
- package/build/client/_app/immutable/chunks/wDLVOANX.js.br +0 -0
- package/build/client/_app/immutable/chunks/wDLVOANX.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CNnpPQtw.js +2 -0
- package/build/client/_app/immutable/entry/app.CNnpPQtw.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CNnpPQtw.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BGpEqKH0.js +1 -0
- package/build/client/_app/immutable/entry/start.BGpEqKH0.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BGpEqKH0.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.CGlGdRWB.js +8 -0
- package/build/client/_app/immutable/nodes/0.CGlGdRWB.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.CGlGdRWB.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B4M0q1v4.js +1 -0
- package/build/client/_app/immutable/nodes/1.B4M0q1v4.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.B4M0q1v4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.LJhhE6c8.js +3 -0
- package/build/client/_app/immutable/nodes/10.LJhhE6c8.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.LJhhE6c8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.CM_xAozz.js +1 -0
- package/build/client/_app/immutable/nodes/11.CM_xAozz.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.CM_xAozz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.UENbuJYy.js +14 -0
- package/build/client/_app/immutable/nodes/12.UENbuJYy.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.UENbuJYy.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.NbAfy9an.js +150 -0
- package/build/client/_app/immutable/nodes/13.NbAfy9an.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.NbAfy9an.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.BgyPK-jf.js +11 -0
- package/build/client/_app/immutable/nodes/15.BgyPK-jf.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.BgyPK-jf.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.DcgniGJK.js +9 -0
- package/build/client/_app/immutable/nodes/16.DcgniGJK.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.DcgniGJK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.CB9DXHxS.js +2 -0
- package/build/client/_app/immutable/nodes/17.CB9DXHxS.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.CB9DXHxS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.BHa-KoGE.js +6 -0
- package/build/client/_app/immutable/nodes/18.BHa-KoGE.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.BHa-KoGE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/19._VaGaWBD.js +1 -0
- package/build/client/_app/immutable/nodes/19._VaGaWBD.js.br +0 -0
- package/build/client/_app/immutable/nodes/19._VaGaWBD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DKxd0T79.js +14 -0
- package/build/client/_app/immutable/nodes/2.DKxd0T79.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DKxd0T79.js.gz +0 -0
- package/build/client/_app/immutable/nodes/20.C10FVhEw.js +10 -0
- package/build/client/_app/immutable/nodes/20.C10FVhEw.js.br +0 -0
- package/build/client/_app/immutable/nodes/20.C10FVhEw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/21.BhyJIr3P.js +6 -0
- package/build/client/_app/immutable/nodes/21.BhyJIr3P.js.br +0 -0
- package/build/client/_app/immutable/nodes/21.BhyJIr3P.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CcRoRYc-.js +5 -0
- package/build/client/_app/immutable/nodes/3.CcRoRYc-.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CcRoRYc-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.BulJqGnt.js +1 -0
- package/build/client/_app/immutable/nodes/4.BulJqGnt.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BulJqGnt.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BT3hraTU.js +1 -0
- package/build/client/_app/immutable/nodes/5.BT3hraTU.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BT3hraTU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DtNMha3Y.js +7 -0
- package/build/client/_app/immutable/nodes/6.DtNMha3Y.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DtNMha3Y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.Bv6Vn8eC.js +4 -0
- package/build/client/_app/immutable/nodes/7.Bv6Vn8eC.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.Bv6Vn8eC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DgQz7-Cb.js +1 -0
- package/build/client/_app/immutable/nodes/9.DgQz7-Cb.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DgQz7-Cb.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/handler.js +7 -7
- package/build/index.js +7 -7
- package/build/server/chunks/chunks/AllowanceMeter.js-DBpmESX6.js +42 -0
- package/build/server/chunks/chunks/DecisionCard.js-B1YgF5EF.js +446 -0
- package/build/server/chunks/chunks/DictateTextarea.js-CbkGsd1h.js +415 -0
- package/build/server/chunks/chunks/DocSheet.js-BPPDMi3P.js +50 -0
- package/build/server/chunks/chunks/EtaLine.js-5SCP9O1f.js +79 -0
- package/build/server/chunks/chunks/EveryProjectSwitch.js-DzcwkHh4.js +200 -0
- package/build/server/chunks/chunks/Icon.js-CVZZ-yuB.js +129 -0
- package/build/server/chunks/chunks/InsightsNav.js-Cmn5y1to.js +18 -0
- package/build/server/chunks/chunks/InstallPlugin.js-B46b-IrK.js +45 -0
- package/build/server/chunks/chunks/LinkedText.js-COjHV297.js +43 -0
- package/build/server/chunks/chunks/ProjectBanner.js-ByPp7Y_e.js +111 -0
- package/build/server/chunks/chunks/ProjectStateMark.js-BkRD8cX4.js +61 -0
- package/build/server/chunks/chunks/QuestionList.js-CppuauNj.js +187 -0
- package/build/server/chunks/chunks/ResizableRail.js-BS8hRLV0.js +395 -0
- package/build/server/chunks/chunks/SettingsNav.js-BtJIv5cc.js +22 -0
- package/build/server/chunks/chunks/SlotContent.js-B4p1QLQN.js +748 -0
- package/build/server/chunks/chunks/StageTrack.js-DHvZX7Bl.js +111 -0
- package/build/server/chunks/chunks/TimeBar.js-CUFKEJW9.js +32 -0
- package/build/server/chunks/chunks/TimeLegend.js-B3Wl61jM.js +29 -0
- package/build/server/chunks/chunks/aliases.svelte.js-C_vCoKdk.js +138 -0
- package/build/server/chunks/chunks/arrow-down.js-Bt3fQooI.js +18 -0
- package/build/server/chunks/chunks/arrow-left.js-BKiSMzvI.js +18 -0
- package/build/server/chunks/chunks/arrow-right.js-CNYqcx0M.js +18 -0
- package/build/server/chunks/chunks/arrow-up.js-DHbXk79z.js +18 -0
- package/build/server/chunks/chunks/attachments.js-BAnnqpd-.js +48 -0
- package/build/server/chunks/chunks/bell.js-CXJp-3UZ.js +150 -0
- package/build/server/chunks/chunks/berths.js-CuAE9lHW.js +268 -0
- package/build/server/chunks/chunks/book-open.js-C2rohN3N.js +23 -0
- package/build/server/chunks/chunks/button.js-BF2PsvWw.js +7311 -0
- package/build/server/chunks/chunks/chat.svelte.js--pRzj_Xo.js +545 -0
- package/build/server/chunks/chunks/check.js-32sYHVxG.js +15 -0
- package/build/server/chunks/chunks/checks.js-DR3fVVpO.js +242 -0
- package/build/server/chunks/chunks/chevron-down.js-CH53s_me.js +15 -0
- package/build/server/chunks/chunks/chevron-left.js-D5RHY-kD.js +15 -0
- package/build/server/chunks/chunks/chevron-right.js-DCBAqAae.js +15 -0
- package/build/server/chunks/chunks/circle-alert.js-XTuAj7ZH.js +23 -0
- package/build/server/chunks/chunks/circle-dashed.js-fXv_bIo-.js +24 -0
- package/build/server/chunks/chunks/circle-dot.js-C950Kosw.js +18 -0
- package/build/server/chunks/chunks/client.js-B_5mNqUe.js +24 -0
- package/build/server/chunks/chunks/clock.js-CHhHTWK_.js +18 -0
- package/build/server/chunks/chunks/compass.js-k2sRSGWn.js +23 -0
- package/build/server/chunks/chunks/detail.js-DDoqeh1A.js +144 -0
- package/build/server/chunks/chunks/docpath.js-D27w_pf9.js +47 -0
- package/build/server/chunks/chunks/external-link.js-BQs1euhR.js +24 -0
- package/build/server/chunks/chunks/file-text.js-CnuVvHlB.js +26 -0
- package/build/server/chunks/chunks/gauge.js-Cbb1aqE7.js +35 -0
- package/build/server/chunks/chunks/git-pull-request.js-BMzktlcs.js +20 -0
- package/build/server/chunks/chunks/hand.js-BA9yKAan.js +25 -0
- package/build/server/chunks/chunks/harbour.js-PHLHOFea.js +117 -0
- package/build/server/chunks/chunks/html.js-FW6Ia4bL.js +8 -0
- package/build/server/chunks/chunks/http.js-CBM8xgUM.js +25 -0
- package/build/server/chunks/chunks/http2.js-fIdVBJaD.js +26 -0
- package/build/server/chunks/chunks/inbox.js-Dv8a1ecX.js +184 -0
- package/build/server/chunks/chunks/inbox.svelte.js-n7K3YnGB.js +171 -0
- package/build/server/chunks/chunks/index-server.js-DsObimPA.js +9 -0
- package/build/server/chunks/chunks/index-server2.js-Fb2GE8KQ.js +17 -0
- package/build/server/chunks/chunks/index.js-B0NFhRTN.js +1524 -0
- package/build/server/chunks/chunks/index2.js-Bxt1T6_K.js +46 -0
- package/build/server/chunks/chunks/internal.js-BlgsFxfY.js +146 -0
- package/build/server/chunks/chunks/live.svelte.js-By2dseJB.js +253 -0
- package/build/server/chunks/chunks/loader-circle.js-rQHvIWN7.js +16 -0
- package/build/server/chunks/chunks/markdown.js-CApgGpeX.js +2634 -0
- package/build/server/chunks/chunks/message-circle-question-mark.js-DbmaS9k_.js +25 -0
- package/build/server/chunks/chunks/message-square-text.js-CyRiNGB8.js +25 -0
- package/build/server/chunks/chunks/message-square.js-XK15WVZq.js +22 -0
- package/build/server/chunks/chunks/messages-square.js-BXH8BHfd.js +28 -0
- package/build/server/chunks/chunks/minus.js-DKvkj8VD.js +15 -0
- package/build/server/chunks/chunks/monitor-play.js-4ed3ghDf.js +28 -0
- package/build/server/chunks/chunks/nav.js-DwnXJgxd.js +29 -0
- package/build/server/chunks/chunks/plus.js-caVrjGZc.js +15 -0
- package/build/server/chunks/chunks/preview.js-hrimfbCG.js +69 -0
- package/build/server/chunks/chunks/prreview.js-Cg9LDxJp.js +92 -0
- package/build/server/chunks/chunks/repo.js-CuWUNKbP.js +33 -0
- package/build/server/chunks/chunks/requests.js-DiL4Poa9.js +42 -0
- package/build/server/chunks/chunks/restart.js-Dv1_ODgZ.js +12 -0
- package/build/server/chunks/chunks/root.js-60iebdW4.js +3105 -0
- package/build/server/chunks/chunks/rotate-cw.js-M4SHOpYI.js +21 -0
- package/build/server/chunks/chunks/runtime.js-BuGWYyZZ.js +16470 -0
- package/build/server/chunks/chunks/scale.js-S5g8YUqL.js +21 -0
- package/build/server/chunks/chunks/scroll-lock.js-Ci_ylINL.js +2811 -0
- package/build/server/chunks/chunks/service.js-DQK1kj-4.js +914 -0
- package/build/server/chunks/chunks/settings.js-C_6kvzhM.js +862 -0
- package/build/server/chunks/chunks/square-terminal.js-D9D9_9_V.js +30 -0
- package/build/server/chunks/chunks/store.js-XXOawxPN.js +317 -0
- package/build/server/chunks/chunks/tone.js-Dxsl-adt.js +31 -0
- package/build/server/chunks/chunks/triangle-alert.js-ClLszsZE.js +25 -0
- package/build/server/chunks/chunks/uploads.js-D45pIvPk.js +107 -0
- package/build/server/chunks/chunks/urls.js-BrlC6XZ8.js +8 -0
- package/build/server/chunks/chunks/utils.js-BJgm9WbO.js +2985 -0
- package/build/server/chunks/chunks/vault.js-CTaWe09z.js +162 -0
- package/build/server/chunks/chunks/view.js-CrOFjYk4.js +76 -0
- package/build/server/chunks/chunks/views.js-DyGxvskG.js +124 -0
- package/build/server/chunks/chunks/words.js-Cte4wOB4.js +48 -0
- package/build/server/chunks/chunks/x.js-YxaUOlq9.js +18 -0
- package/build/server/chunks/entries/endpoints/api/apps/_op_/_server.ts.js-DSkVUNdc.js +90 -0
- package/build/server/chunks/entries/endpoints/api/events/_server.ts.js-CYnLRjOH.js +106 -0
- package/build/server/chunks/entries/endpoints/api/files/_server.ts.js-CG8IGmSp.js +49 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/chat/_server.ts.js-fmzKkrXb.js +83 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/commands/_server.ts.js-BgIU3add.js +119 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/dismiss/_server.ts.js-Ba9E_53E.js +45 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/input/_server.ts.js-BQZBERsR.js +51 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/interrupt/_server.ts.js-BnT3VHSx.js +44 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/messages/_server.ts.js-DRYHwJ7R.js +66 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/pick/_server.ts.js-BD2B1ByG.js +54 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/start/_server.ts.js-DB-m2WWH.js +44 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/uploads/_day_/_id_/_name_/_server.ts.js-CK3swjFX.js +32 -0
- package/build/server/chunks/entries/endpoints/api/firstmate/uploads/_server.ts.js-WCE63uer.js +40 -0
- package/build/server/chunks/entries/endpoints/api/fleet/_server.ts.js-D5-3acjK.js +36 -0
- package/build/server/chunks/entries/endpoints/api/gateway/_server.ts.js-B2I7jHdc.js +100 -0
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-BFSqEG5B.js +36 -0
- package/build/server/chunks/entries/endpoints/api/inbox/_server.ts.js-BpUaHfsf.js +60 -0
- package/build/server/chunks/entries/endpoints/api/inbox/report/_server.ts.js-BNRD4HyF.js +51 -0
- package/build/server/chunks/entries/endpoints/api/insights/_server.ts.js-7808SNDM.js +36 -0
- package/build/server/chunks/entries/endpoints/api/plugins/_plugin_/config/_server.ts.js-B-cQTShG.js +71 -0
- package/build/server/chunks/entries/endpoints/api/plugins/_plugin_/load/_server.ts.js-CPAHSih2.js +23 -0
- package/build/server/chunks/entries/endpoints/api/plugins/_plugin_/ui/_...path_/_server.ts.js-DW3M1pzH.js +59 -0
- package/build/server/chunks/entries/endpoints/api/plugins/_plugin_/update/_server.ts.js-DDTSw0pX.js +35 -0
- package/build/server/chunks/entries/endpoints/api/plugins/_server.ts.js-BlD-1l6V.js +36 -0
- package/build/server/chunks/entries/endpoints/api/plugins/inspect/_server.ts.js-IT-jeApI.js +35 -0
- package/build/server/chunks/entries/endpoints/api/plugins/install/_server.ts.js-DQqKN2MF.js +38 -0
- package/build/server/chunks/entries/endpoints/api/plugins/updates/_server.ts.js-D7rx-bwI.js +23 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/_server.ts.js-BC0HjK9M.js +41 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/commands/_server.ts.js-aVmcjStV.js +50 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/consent/_server.ts.js-BuHN_WYU.js +62 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/draft/_server.ts.js-Dx0x7sws.js +49 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/file/_server.ts.js-CcCDMmmF.js +72 -0
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/test/_server.ts.js-BsOOyTNM.js +55 -0
- package/build/server/chunks/entries/endpoints/api/services/_server.ts.js-DGyU8Zmu.js +55 -0
- package/build/server/chunks/entries/endpoints/api/slots/_server.ts.js-1B8fEiat.js +44 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/_server.ts.js-D4CKazw-.js +41 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/artifacts/_...name_/_server.ts.js-CUKo26Ia.js +60 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/diff/_server.ts.js-BOa2lgvP.js +48 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/output/_server.ts.js-BmI8Ofms.js +93 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/preview/_server.ts.js-C2mJi22c.js +110 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/_server.ts.js-8pN6fHl8.js +43 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/ask/_server.ts.js-D6D9O8Su.js +49 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/check/_server.ts.js-BAaCwzOf.js +48 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/guide/_server.ts.js-DfP2iNta.js +48 -0
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/runs/_run_/stop/_server.ts.js-DZDaSSYT.js +41 -0
- package/build/server/chunks/entries/endpoints/api/vault/_server.ts.js-CJNUplXf.js +54 -0
- package/build/server/chunks/entries/endpoints/api/wheelhouse/update/_server.ts.js-CVqjWsw8.js +23 -0
- package/build/server/chunks/entries/endpoints/api/wheelhouse/upgrade/_server.ts.js-CE2zzWtC.js +23 -0
- package/build/server/chunks/entries/endpoints/projects/_server.ts.js-uMp6dcat.js +7 -0
- package/build/server/chunks/entries/fallbacks/error.svelte.js-DnpcUjRk.js +15 -0
- package/build/server/chunks/entries/hooks.server.js-FjSdw_QS.js +54 -0
- package/build/server/chunks/entries/pages/_layout.server.ts.js-BkWAC802.js +22 -0
- package/build/server/chunks/entries/pages/_layout.svelte.js-DstinFjN.js +8746 -0
- package/build/server/chunks/entries/pages/_page.server.ts.js-BXkuWJh7.js +16 -0
- package/build/server/chunks/entries/pages/_page.svelte.js-ehBbQlco.js +2194 -0
- package/build/server/chunks/entries/pages/decisions/_page.server.ts.js-B2YZfjBk.js +11 -0
- package/build/server/chunks/entries/pages/decisions/_page.svelte.js-C3NsHXP-.js +184 -0
- package/build/server/chunks/entries/pages/files/_page.server.ts.js-CT3pm5a6.js +17 -0
- package/build/server/chunks/entries/pages/files/_page.svelte.js-Bj-5ZaJn.js +61 -0
- package/build/server/chunks/entries/pages/harbour/_page.server.ts.js-CcLkegHq.js +46 -0
- package/build/server/chunks/entries/pages/harbour/_page.svelte.js-hBC6QUHZ.js +580 -0
- package/build/server/chunks/entries/pages/headroom/_page.server.ts.js-BazCFIuz.js +11 -0
- package/build/server/chunks/entries/pages/headroom/_page.svelte.js-BLFQjLz8.js +149 -0
- package/build/server/chunks/entries/pages/inbox/_page.svelte.js-rjm303kf.js +185 -0
- package/build/server/chunks/entries/pages/plugins/_page.server.ts.js-D_nxVVQ0.js +11 -0
- package/build/server/chunks/entries/pages/plugins/_plugin_/_page_/_page.server.ts.js-BRQpg3kQ.js +16 -0
- package/build/server/chunks/entries/pages/plugins/_plugin_/_page_/_page.svelte.js-DazeLLT8.js +52 -0
- package/build/server/chunks/entries/pages/projects/_id_/_page.server.ts.js-BIypd_XU.js +23 -0
- package/build/server/chunks/entries/pages/projects/_id_/_page.svelte.js-DJajtLup.js +945 -0
- package/build/server/chunks/entries/pages/projects/_id_/_plugin_/_tab_/_page.server.ts.js-BwAOIwUv.js +21 -0
- package/build/server/chunks/entries/pages/projects/_id_/_plugin_/_tab_/_page.svelte.js-Cm8mxt61.js +74 -0
- package/build/server/chunks/entries/pages/projects/_id_/passage/_page.server.ts.js-CnfqlJgl.js +27 -0
- package/build/server/chunks/entries/pages/projects/_id_/passage/_page.svelte.js-CuMA-rCM.js +433 -0
- package/build/server/chunks/entries/pages/projects/_id_/passage/edit/_page.server.ts.js-CG14M19O.js +15 -0
- package/build/server/chunks/entries/pages/projects/_id_/passage/edit/_page.svelte.js-mtGQO-dJ.js +1880 -0
- package/build/server/chunks/entries/pages/settings/_page.server.ts.js-DnBg1UuM.js +11 -0
- package/build/server/chunks/entries/pages/settings/gateway/_page.server.ts.js-Zgfe-LX9.js +11 -0
- package/build/server/chunks/entries/pages/settings/gateway/_page.svelte.js-BmbSSxk6.js +208 -0
- package/build/server/chunks/entries/pages/settings/plugins/_page.server.ts.js-DZ4oJmnj.js +19 -0
- package/build/server/chunks/entries/pages/settings/plugins/_page.svelte.js-gBZCjZlg.js +1847 -0
- package/build/server/chunks/entries/pages/settings/plugins/_plugin_/_page.server.ts.js-Dm-tgyir.js +17 -0
- package/build/server/chunks/entries/pages/settings/plugins/_plugin_/_page.svelte.js-BFGxdrrb.js +220 -0
- package/build/server/chunks/entries/pages/tasks/_id_/_page.server.ts.js-Llp3a0Fb.js +25 -0
- package/build/server/chunks/entries/pages/tasks/_id_/_page.svelte.js-LgJMZ2RE.js +2107 -0
- package/build/server/chunks/entries/pages/tasks/_id_/doc/_page.server.ts.js-DuWuEdZ2.js +24 -0
- package/build/server/chunks/entries/pages/tasks/_id_/doc/_page.svelte.js-BOMmvf6G.js +80 -0
- package/build/server/chunks/entries/pages/tasks/_id_/review/_page.server.ts.js-BMQF9I9c.js +15 -0
- package/build/server/chunks/entries/pages/tasks/_id_/review/_page.svelte.js-k659tqiw.js +657 -0
- package/build/server/chunks/entries/pages/time/_page.server.ts.js-DstGu3ji.js +11 -0
- package/build/server/chunks/entries/pages/time/_page.svelte.js-Ckn0YUW_.js +108 -0
- package/build/server/chunks/handler-BRidfBIY.js +1474 -0
- package/build/server/chunks/index.js-Dhoi5wa_.js +4296 -0
- package/build/server/chunks/manifest.js-CF4aVg77.js +537 -0
- package/build/server/chunks/nodes/0.js-B2yTHeOL.js +41 -0
- package/build/server/chunks/nodes/1.js-BoD2_1or.js +9 -0
- package/build/server/chunks/nodes/10.js-C2XmTW8j.js +43 -0
- package/build/server/chunks/nodes/11.js-CAJnQkWH.js +42 -0
- package/build/server/chunks/nodes/12.js-Cu57dOUj.js +43 -0
- package/build/server/chunks/nodes/13.js-1g1BRnk_.js +42 -0
- package/build/server/chunks/nodes/14.js-Cl3VZ6XR.js +12 -0
- package/build/server/chunks/nodes/15.js-BqL5jpLU.js +41 -0
- package/build/server/chunks/nodes/16.js-DibdTAKZ.js +41 -0
- package/build/server/chunks/nodes/17.js-BUFA5Avk.js +44 -0
- package/build/server/chunks/nodes/18.js-cxLrKmMx.js +42 -0
- package/build/server/chunks/nodes/19.js-DMbI3mDp.js +42 -0
- package/build/server/chunks/nodes/2.js-8QSIq2KZ.js +41 -0
- package/build/server/chunks/nodes/20.js-BNXpftag.js +42 -0
- package/build/server/chunks/nodes/21.js-DdJK6h7p.js +41 -0
- package/build/server/chunks/nodes/3.js-DHT7fiTy.js +41 -0
- package/build/server/chunks/nodes/4.js-DvjrLz8n.js +41 -0
- package/build/server/chunks/nodes/5.js-CvUGUQbi.js +45 -0
- package/build/server/chunks/nodes/6.js-ptKHsAn6.js +41 -0
- package/build/server/chunks/nodes/7.js-BigF9SYG.js +9 -0
- package/build/server/chunks/nodes/8.js-D32pPbKa.js +12 -0
- package/build/server/chunks/nodes/9.js-DkS4HHqV.js +41 -0
- package/dist/cli.js +2156 -62
- package/dist/wh-vault.js +1007 -0
- package/package.json +5 -3
- package/plugins/github-issues/.wheelhouse-plugin/plugin.json +44 -0
- package/plugins/github-issues/README.md +16 -0
- package/plugins/github-issues/wheelhouse/server/index.js +463 -0
- package/plugins/project-links/.wheelhouse-plugin/plugin.json +25 -0
- package/plugins/project-links/README.md +17 -0
- package/plugins/project-links/wheelhouse/server/index.js +278 -0
- package/plugins/project-links/wheelhouse/ui/index.js +87 -0
- package/plugins/vault/.wheelhouse-plugin/plugin.json +22 -0
- package/plugins/vault/README.md +18 -0
- package/plugins/vault/wheelhouse/server/index.js +297 -0
- package/build/client/_app/immutable/assets/0.DaQhCSel.css +0 -1
- package/build/client/_app/immutable/assets/0.DaQhCSel.css.br +0 -0
- package/build/client/_app/immutable/assets/0.DaQhCSel.css.gz +0 -0
- package/build/client/_app/immutable/assets/12.DT1C9nmd.css +0 -1
- package/build/client/_app/immutable/assets/12.DT1C9nmd.css.br +0 -0
- package/build/client/_app/immutable/assets/12.DT1C9nmd.css.gz +0 -0
- package/build/client/_app/immutable/assets/14.CjNfSPQ6.css +0 -1
- package/build/client/_app/immutable/assets/14.CjNfSPQ6.css.br +0 -0
- package/build/client/_app/immutable/assets/14.CjNfSPQ6.css.gz +0 -0
- package/build/client/_app/immutable/chunks/36FDwM1G.js +0 -1
- package/build/client/_app/immutable/chunks/36FDwM1G.js.br +0 -0
- package/build/client/_app/immutable/chunks/36FDwM1G.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B1XxiJam.js +0 -1
- package/build/client/_app/immutable/chunks/B1XxiJam.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1XxiJam.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B2wEHue2.js +0 -1
- package/build/client/_app/immutable/chunks/B2wEHue2.js.br +0 -0
- package/build/client/_app/immutable/chunks/B2wEHue2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BAurN1n6.js +0 -2
- package/build/client/_app/immutable/chunks/BAurN1n6.js.br +0 -0
- package/build/client/_app/immutable/chunks/BAurN1n6.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEAYWcbT.js +0 -1
- package/build/client/_app/immutable/chunks/BEAYWcbT.js.br +0 -0
- package/build/client/_app/immutable/chunks/BEAYWcbT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BGINfGsV.js +0 -1
- package/build/client/_app/immutable/chunks/BGINfGsV.js.br +0 -4
- package/build/client/_app/immutable/chunks/BGINfGsV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BHsdHLbF.js +0 -1
- package/build/client/_app/immutable/chunks/BHsdHLbF.js.br +0 -0
- package/build/client/_app/immutable/chunks/BHsdHLbF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BR5v76-T.js +0 -1
- package/build/client/_app/immutable/chunks/BR5v76-T.js.br +0 -0
- package/build/client/_app/immutable/chunks/BR5v76-T.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BUo4hMcM.js +0 -1
- package/build/client/_app/immutable/chunks/BUo4hMcM.js.br +0 -0
- package/build/client/_app/immutable/chunks/BUo4hMcM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BVVO3JPx.js +0 -1
- package/build/client/_app/immutable/chunks/BVVO3JPx.js.br +0 -0
- package/build/client/_app/immutable/chunks/BVVO3JPx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BZm5e4fE.js +0 -1
- package/build/client/_app/immutable/chunks/BZm5e4fE.js.br +0 -0
- package/build/client/_app/immutable/chunks/BZm5e4fE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bfi4vm-w.js +0 -1
- package/build/client/_app/immutable/chunks/Bfi4vm-w.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bfi4vm-w.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BiTivU7x.js +0 -1
- package/build/client/_app/immutable/chunks/BiTivU7x.js.br +0 -0
- package/build/client/_app/immutable/chunks/BiTivU7x.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BiuLIp4b.js +0 -1
- package/build/client/_app/immutable/chunks/BiuLIp4b.js.br +0 -0
- package/build/client/_app/immutable/chunks/BiuLIp4b.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bns_F-QV.js +0 -1
- package/build/client/_app/immutable/chunks/Bns_F-QV.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bns_F-QV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Brlpgp90.js +0 -1
- package/build/client/_app/immutable/chunks/Brlpgp90.js.br +0 -0
- package/build/client/_app/immutable/chunks/Brlpgp90.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BunkbzFG.js +0 -1
- package/build/client/_app/immutable/chunks/BunkbzFG.js.br +0 -0
- package/build/client/_app/immutable/chunks/BunkbzFG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwOfqJw9.js +0 -1
- package/build/client/_app/immutable/chunks/BwOfqJw9.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwOfqJw9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C-xrRA1Y.js +0 -1
- package/build/client/_app/immutable/chunks/C-xrRA1Y.js.br +0 -0
- package/build/client/_app/immutable/chunks/C-xrRA1Y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C2_XZrIO.js +0 -7
- package/build/client/_app/immutable/chunks/C2_XZrIO.js.br +0 -0
- package/build/client/_app/immutable/chunks/C2_XZrIO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C2d4bDYU.js +0 -1
- package/build/client/_app/immutable/chunks/C2d4bDYU.js.br +0 -0
- package/build/client/_app/immutable/chunks/C2d4bDYU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C6BQPSOs.js +0 -62
- package/build/client/_app/immutable/chunks/C6BQPSOs.js.br +0 -0
- package/build/client/_app/immutable/chunks/C6BQPSOs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CDphfOBv.js +0 -1
- package/build/client/_app/immutable/chunks/CDphfOBv.js.br +0 -0
- package/build/client/_app/immutable/chunks/CDphfOBv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CHoQMvOZ.js +0 -1
- package/build/client/_app/immutable/chunks/CHoQMvOZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/CHoQMvOZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CIE0U5Ih.js +0 -1
- package/build/client/_app/immutable/chunks/CIE0U5Ih.js.br +0 -0
- package/build/client/_app/immutable/chunks/CIE0U5Ih.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CLs9Rkbg.js +0 -1
- package/build/client/_app/immutable/chunks/CLs9Rkbg.js.br +0 -0
- package/build/client/_app/immutable/chunks/CLs9Rkbg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/COQ3aAYj.js +0 -1
- package/build/client/_app/immutable/chunks/COQ3aAYj.js.br +0 -0
- package/build/client/_app/immutable/chunks/COQ3aAYj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/COiIt96y.js +0 -1
- package/build/client/_app/immutable/chunks/COiIt96y.js.br +0 -0
- package/build/client/_app/immutable/chunks/COiIt96y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CQ7gIAH8.js +0 -1
- package/build/client/_app/immutable/chunks/CQ7gIAH8.js.br +0 -2
- package/build/client/_app/immutable/chunks/CQ7gIAH8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CQlHU-Rx.js +0 -1
- package/build/client/_app/immutable/chunks/CQlHU-Rx.js.br +0 -0
- package/build/client/_app/immutable/chunks/CQlHU-Rx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CXfdgbLv.js +0 -1
- package/build/client/_app/immutable/chunks/CXfdgbLv.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXfdgbLv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CeYIQAXD.js +0 -1
- package/build/client/_app/immutable/chunks/CeYIQAXD.js.br +0 -0
- package/build/client/_app/immutable/chunks/CeYIQAXD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CewXGI4o.js +0 -14
- package/build/client/_app/immutable/chunks/CewXGI4o.js.br +0 -0
- package/build/client/_app/immutable/chunks/CewXGI4o.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CfdzAfq2.js +0 -1
- package/build/client/_app/immutable/chunks/CfdzAfq2.js.br +0 -0
- package/build/client/_app/immutable/chunks/CfdzAfq2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CkFDaaNz.js +0 -1
- package/build/client/_app/immutable/chunks/CkFDaaNz.js.br +0 -0
- package/build/client/_app/immutable/chunks/CkFDaaNz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CkLriSVx.js +0 -1
- package/build/client/_app/immutable/chunks/CkLriSVx.js.br +0 -0
- package/build/client/_app/immutable/chunks/CkLriSVx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Clzs_eXS.js +0 -5
- package/build/client/_app/immutable/chunks/Clzs_eXS.js.br +0 -0
- package/build/client/_app/immutable/chunks/Clzs_eXS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CrCQ2NNA.js +0 -1
- package/build/client/_app/immutable/chunks/CrCQ2NNA.js.br +0 -0
- package/build/client/_app/immutable/chunks/CrCQ2NNA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CrgqcyB_.js +0 -1
- package/build/client/_app/immutable/chunks/CrgqcyB_.js.br +0 -0
- package/build/client/_app/immutable/chunks/CrgqcyB_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CtlVBKf-.js +0 -1
- package/build/client/_app/immutable/chunks/CtlVBKf-.js.br +0 -0
- package/build/client/_app/immutable/chunks/CtlVBKf-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D4aeBIhU.js +0 -1
- package/build/client/_app/immutable/chunks/D4aeBIhU.js.br +0 -0
- package/build/client/_app/immutable/chunks/D4aeBIhU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8Hx-_mj.js +0 -1
- package/build/client/_app/immutable/chunks/D8Hx-_mj.js.br +0 -3
- package/build/client/_app/immutable/chunks/D8Hx-_mj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DC8T2WRZ.js +0 -1
- package/build/client/_app/immutable/chunks/DC8T2WRZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/DC8T2WRZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DGy76IbW.js +0 -2
- package/build/client/_app/immutable/chunks/DGy76IbW.js.br +0 -0
- package/build/client/_app/immutable/chunks/DGy76IbW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DIABVMrA.js +0 -1
- package/build/client/_app/immutable/chunks/DIABVMrA.js.br +0 -0
- package/build/client/_app/immutable/chunks/DIABVMrA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DLith9Yi.js +0 -1
- package/build/client/_app/immutable/chunks/DLith9Yi.js.br +0 -0
- package/build/client/_app/immutable/chunks/DLith9Yi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DPTtvukI.js +0 -1
- package/build/client/_app/immutable/chunks/DPTtvukI.js.br +0 -0
- package/build/client/_app/immutable/chunks/DPTtvukI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Da92_52d.js +0 -1
- package/build/client/_app/immutable/chunks/Da92_52d.js.br +0 -0
- package/build/client/_app/immutable/chunks/Da92_52d.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Db0WMrvR.js +0 -1
- package/build/client/_app/immutable/chunks/Db0WMrvR.js.br +0 -0
- package/build/client/_app/immutable/chunks/Db0WMrvR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dlb_KqyS.js +0 -2
- package/build/client/_app/immutable/chunks/Dlb_KqyS.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dlb_KqyS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DmcreR7o.js +0 -1
- package/build/client/_app/immutable/chunks/DmcreR7o.js.br +0 -0
- package/build/client/_app/immutable/chunks/DmcreR7o.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dq9kJk5R.js +0 -1
- package/build/client/_app/immutable/chunks/Dq9kJk5R.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dq9kJk5R.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DxGQT-Hz.js +0 -1
- package/build/client/_app/immutable/chunks/DxGQT-Hz.js.br +0 -0
- package/build/client/_app/immutable/chunks/DxGQT-Hz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ET-O1REu.js +0 -1
- package/build/client/_app/immutable/chunks/ET-O1REu.js.br +0 -0
- package/build/client/_app/immutable/chunks/ET-O1REu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ewrw42Vq.js +0 -1
- package/build/client/_app/immutable/chunks/Ewrw42Vq.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ewrw42Vq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/FQ69txbU.js +0 -1
- package/build/client/_app/immutable/chunks/FQ69txbU.js.br +0 -0
- package/build/client/_app/immutable/chunks/FQ69txbU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/L-6wuY5f.js +0 -2
- package/build/client/_app/immutable/chunks/L-6wuY5f.js.br +0 -0
- package/build/client/_app/immutable/chunks/L-6wuY5f.js.gz +0 -0
- package/build/client/_app/immutable/chunks/M201SoVK.js +0 -1
- package/build/client/_app/immutable/chunks/M201SoVK.js.br +0 -1
- package/build/client/_app/immutable/chunks/M201SoVK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/OeqXO44y.js +0 -1
- package/build/client/_app/immutable/chunks/OeqXO44y.js.br +0 -0
- package/build/client/_app/immutable/chunks/OeqXO44y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/PPVm8Dsz.js +0 -1
- package/build/client/_app/immutable/chunks/PPVm8Dsz.js.br +0 -0
- package/build/client/_app/immutable/chunks/PPVm8Dsz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/QAFSHLn2.js +0 -1
- package/build/client/_app/immutable/chunks/QAFSHLn2.js.br +0 -0
- package/build/client/_app/immutable/chunks/QAFSHLn2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Tm9AblHs.js +0 -1
- package/build/client/_app/immutable/chunks/Tm9AblHs.js.br +0 -0
- package/build/client/_app/immutable/chunks/Tm9AblHs.js.gz +0 -0
- package/build/client/_app/immutable/chunks/bvY4yrzM.js +0 -4
- package/build/client/_app/immutable/chunks/bvY4yrzM.js.br +0 -0
- package/build/client/_app/immutable/chunks/bvY4yrzM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/eMSiEzFi.js +0 -1
- package/build/client/_app/immutable/chunks/eMSiEzFi.js.br +0 -0
- package/build/client/_app/immutable/chunks/eMSiEzFi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/iVpzjqp1.js +0 -1
- package/build/client/_app/immutable/chunks/iVpzjqp1.js.br +0 -0
- package/build/client/_app/immutable/chunks/iVpzjqp1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/m3YfhLk1.js +0 -1
- package/build/client/_app/immutable/chunks/m3YfhLk1.js.br +0 -0
- package/build/client/_app/immutable/chunks/m3YfhLk1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/p7x6PRF0.js +0 -1
- package/build/client/_app/immutable/chunks/p7x6PRF0.js.br +0 -0
- package/build/client/_app/immutable/chunks/p7x6PRF0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/t4rxsdjl.js +0 -74
- package/build/client/_app/immutable/chunks/t4rxsdjl.js.br +0 -0
- package/build/client/_app/immutable/chunks/t4rxsdjl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/uD7-7yV9.js +0 -1
- package/build/client/_app/immutable/chunks/uD7-7yV9.js.br +0 -4
- package/build/client/_app/immutable/chunks/uD7-7yV9.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.D22_AlD8.js +0 -2
- package/build/client/_app/immutable/entry/app.D22_AlD8.js.br +0 -0
- package/build/client/_app/immutable/entry/app.D22_AlD8.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.xwa7znED.js +0 -1
- package/build/client/_app/immutable/entry/start.xwa7znED.js.br +0 -0
- package/build/client/_app/immutable/entry/start.xwa7znED.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DsfUbybd.js +0 -5
- package/build/client/_app/immutable/nodes/0.DsfUbybd.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DsfUbybd.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.9tnApS8T.js +0 -1
- package/build/client/_app/immutable/nodes/1.9tnApS8T.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.9tnApS8T.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.CbyVViLq.js +0 -14
- package/build/client/_app/immutable/nodes/10.CbyVViLq.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.CbyVViLq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.xg5UTCOx.js +0 -77
- package/build/client/_app/immutable/nodes/11.xg5UTCOx.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.xg5UTCOx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.C6hLGaov.js +0 -32
- package/build/client/_app/immutable/nodes/12.C6hLGaov.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.C6hLGaov.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.DHbTeLkm.js +0 -5
- package/build/client/_app/immutable/nodes/13.DHbTeLkm.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.DHbTeLkm.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.BMIOGjF-.js +0 -1
- package/build/client/_app/immutable/nodes/14.BMIOGjF-.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.BMIOGjF-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.DYSMqa5A.js +0 -10
- package/build/client/_app/immutable/nodes/15.DYSMqa5A.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.DYSMqa5A.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.B0mX0t_j.js +0 -6
- package/build/client/_app/immutable/nodes/16.B0mX0t_j.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.B0mX0t_j.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.CSYV0jmk.js +0 -4
- package/build/client/_app/immutable/nodes/2.CSYV0jmk.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.CSYV0jmk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.X5qqsIUa.js +0 -5
- package/build/client/_app/immutable/nodes/3.X5qqsIUa.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.X5qqsIUa.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.Di4k8SR2.js +0 -3
- package/build/client/_app/immutable/nodes/4.Di4k8SR2.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Di4k8SR2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.DMFYTxVa.js +0 -7
- package/build/client/_app/immutable/nodes/5.DMFYTxVa.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DMFYTxVa.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.6yDAURLV.js +0 -4
- package/build/client/_app/immutable/nodes/6.6yDAURLV.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.6yDAURLV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.xxvMU05c.js +0 -1
- package/build/client/_app/immutable/nodes/7.xxvMU05c.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.xxvMU05c.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.GSaWotW8.js +0 -1
- package/build/client/_app/immutable/nodes/8.GSaWotW8.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.GSaWotW8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.CEiUwDDg.js +0 -1
- package/build/client/_app/immutable/nodes/9.CEiUwDDg.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.CEiUwDDg.js.gz +0 -0
- package/build/server/chunks/chunks/AllowanceMeter.js-C9jRsAGU.js +0 -42
- package/build/server/chunks/chunks/DecisionCard.js-u1VQ9s_v.js +0 -350
- package/build/server/chunks/chunks/DictateTextarea.js-BlEnOzcN.js +0 -85
- package/build/server/chunks/chunks/EtaLine.js-Pa4_VV6V.js +0 -79
- package/build/server/chunks/chunks/Icon.js-D7CY3joB.js +0 -129
- package/build/server/chunks/chunks/InsightsNav.js-BlxFBJfj.js +0 -22
- package/build/server/chunks/chunks/MicButton.js-BZSQAyuM.js +0 -336
- package/build/server/chunks/chunks/QuestionList.js-DglKezUe.js +0 -259
- package/build/server/chunks/chunks/SlotContent.js-YqZXXtRz.js +0 -1977
- package/build/server/chunks/chunks/StageTrack.js-BaorW-yk.js +0 -59
- package/build/server/chunks/chunks/TimeBar.js-k38rc7ZI.js +0 -32
- package/build/server/chunks/chunks/TimeLegend.js-BQVvgsvs.js +0 -29
- package/build/server/chunks/chunks/access.js-CS2pJasF.js +0 -816
- package/build/server/chunks/chunks/anchor.js-ByXDBfbi.js +0 -20
- package/build/server/chunks/chunks/arrow-down.js-DXDJc9EE.js +0 -18
- package/build/server/chunks/chunks/arrow-left.js-6Yey35CE.js +0 -18
- package/build/server/chunks/chunks/arrow-right.js-CfbPWRqu.js +0 -18
- package/build/server/chunks/chunks/arrow-up.js-AhghNbhW.js +0 -18
- package/build/server/chunks/chunks/bell.js-CAlv92RY.js +0 -143
- package/build/server/chunks/chunks/blocks.js-BL9jLCe-.js +0 -710
- package/build/server/chunks/chunks/bus.svelte.js-DRTptEhF.js +0 -9
- package/build/server/chunks/chunks/button.js-HeBqLheH.js +0 -7311
- package/build/server/chunks/chunks/chat.svelte.js-Cgdbtjbw.js +0 -537
- package/build/server/chunks/chunks/check.js-bmUhmMEz.js +0 -15
- package/build/server/chunks/chunks/checks.js-BnIxIaus.js +0 -175
- package/build/server/chunks/chunks/chevron-down.js-D75hVSIe.js +0 -15
- package/build/server/chunks/chunks/chevron-right.js-yhLg_GaH.js +0 -15
- package/build/server/chunks/chunks/circle-dashed.js-Bm3gZCXK.js +0 -24
- package/build/server/chunks/chunks/client.js-BUNengrw.js +0 -24
- package/build/server/chunks/chunks/clock.js-D7JTvRbC.js +0 -18
- package/build/server/chunks/chunks/compass.js-Tq6uiG8I.js +0 -23
- package/build/server/chunks/chunks/detail.js-CSjOmiVi.js +0 -133
- package/build/server/chunks/chunks/external-link.js-WxVF0xXO.js +0 -24
- package/build/server/chunks/chunks/file-text.js-CAo3vdqd.js +0 -26
- package/build/server/chunks/chunks/gauge.js-Dw9bgE72.js +0 -35
- package/build/server/chunks/chunks/git-pull-request.js-Cx1w8BQr.js +0 -20
- package/build/server/chunks/chunks/hammer.js-fp_Kidfj.js +0 -24
- package/build/server/chunks/chunks/hand.js-xkYPYJZj.js +0 -37
- package/build/server/chunks/chunks/harbour.js-xu7EfIHk.js +0 -113
- package/build/server/chunks/chunks/http.js-TzZuOtxn.js +0 -25
- package/build/server/chunks/chunks/http2.js-Cr9xuMRL.js +0 -26
- package/build/server/chunks/chunks/inbox.js-CW2sFmx9.js +0 -114
- package/build/server/chunks/chunks/inbox.svelte.js-OoKhjjWM.js +0 -134
- package/build/server/chunks/chunks/index-server.js-CtyUzIGY.js +0 -17
- package/build/server/chunks/chunks/index-server2.js-DMc-UvjC.js +0 -19
- package/build/server/chunks/chunks/index.js-Bn6j9diM.js +0 -1524
- package/build/server/chunks/chunks/index2.js-CXaRTuov.js +0 -46
- package/build/server/chunks/chunks/internal.js-Co-6PAQm.js +0 -146
- package/build/server/chunks/chunks/live.svelte.js-BRUTNc9D.js +0 -196
- package/build/server/chunks/chunks/loader-circle.js-IYRaUYWq.js +0 -16
- package/build/server/chunks/chunks/message-circle-question-mark.js-DwrMi0ty.js +0 -25
- package/build/server/chunks/chunks/message-square-text.js-N5uEmy8L.js +0 -25
- package/build/server/chunks/chunks/message-square.js-Hp-6BHgG.js +0 -22
- package/build/server/chunks/chunks/minus.js-bsfnwE-h.js +0 -15
- package/build/server/chunks/chunks/monitor-play.js-B7qbbPH6.js +0 -28
- package/build/server/chunks/chunks/preview.js-CVD-Kwks.js +0 -68
- package/build/server/chunks/chunks/prreview.js-C5XxDIu2.js +0 -85
- package/build/server/chunks/chunks/root.js-CQzYN4Pu.js +0 -3105
- package/build/server/chunks/chunks/runtime.js-C0n924wq.js +0 -13280
- package/build/server/chunks/chunks/scale.js-vP4G0lZM.js +0 -21
- package/build/server/chunks/chunks/shield-check.js-PJLnCKD9.js +0 -23
- package/build/server/chunks/chunks/spec.js-B0yI1XqG.js +0 -307
- package/build/server/chunks/chunks/split.js-BsCU24rQ.js +0 -20
- package/build/server/chunks/chunks/square-terminal.js-D5Z4Sl2-.js +0 -47
- package/build/server/chunks/chunks/tone.js-r2qFVrZC.js +0 -30
- package/build/server/chunks/chunks/trash.js-DYFbRevY.js +0 -46
- package/build/server/chunks/chunks/triangle-alert.js-DuE40HSU.js +0 -38
- package/build/server/chunks/chunks/utils.js-DTSGDHlH.js +0 -2956
- package/build/server/chunks/chunks/view.js-BtcLmKUY.js +0 -76
- package/build/server/chunks/chunks/view2.js-BdUXqNlY.js +0 -87
- package/build/server/chunks/chunks/views.js-B0wP-tuB.js +0 -137
- package/build/server/chunks/chunks/waypoints.js-D3HN7bje.js +0 -67
- package/build/server/chunks/chunks/x.js-tlds9Ooz.js +0 -18
- package/build/server/chunks/entries/endpoints/api/events/_server.ts.js-DNHG661Q.js +0 -93
- package/build/server/chunks/entries/endpoints/api/firstmate/chat/_server.ts.js-XBUQePMq.js +0 -74
- package/build/server/chunks/entries/endpoints/api/firstmate/commands/_server.ts.js-D1tzpRWy.js +0 -110
- package/build/server/chunks/entries/endpoints/api/firstmate/input/_server.ts.js-DqhQUZUA.js +0 -42
- package/build/server/chunks/entries/endpoints/api/firstmate/interrupt/_server.ts.js-LsZer0Bi.js +0 -35
- package/build/server/chunks/entries/endpoints/api/firstmate/messages/_server.ts.js-DQob0XkJ.js +0 -57
- package/build/server/chunks/entries/endpoints/api/firstmate/pick/_server.ts.js-DgFjtYYL.js +0 -45
- package/build/server/chunks/entries/endpoints/api/firstmate/start/_server.ts.js-DOoA4rRW.js +0 -35
- package/build/server/chunks/entries/endpoints/api/fleet/_server.ts.js-DZQsFY87.js +0 -27
- package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-DuSzTlq5.js +0 -27
- package/build/server/chunks/entries/endpoints/api/inbox/_server.ts.js-C15XwPXH.js +0 -51
- package/build/server/chunks/entries/endpoints/api/insights/_server.ts.js--gavJO4f.js +0 -27
- package/build/server/chunks/entries/endpoints/api/plugins/_server.ts.js-CsTy_jT6.js +0 -27
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/_server.ts.js-BWOcGtOU.js +0 -32
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/commands/_server.ts.js-Kjwbc2wm.js +0 -41
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/consent/_server.ts.js-BTIb8CUb.js +0 -53
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/draft/_server.ts.js-Vh52yDJ9.js +0 -40
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/file/_server.ts.js-LJDJLrpB.js +0 -63
- package/build/server/chunks/entries/endpoints/api/projects/_id_/passage/test/_server.ts.js-CdDBYH6K.js +0 -46
- package/build/server/chunks/entries/endpoints/api/services/_server.ts.js-DoElFmWK.js +0 -46
- package/build/server/chunks/entries/endpoints/api/slots/_server.ts.js-KiiPnPLF.js +0 -35
- package/build/server/chunks/entries/endpoints/api/specs/_id_/_server.ts.js-LMXTPr04.js +0 -59
- package/build/server/chunks/entries/endpoints/api/specs/_id_/build-request/_server.ts.js-bqjJGIjt.js +0 -47
- package/build/server/chunks/entries/endpoints/api/specs/_id_/comments/_comment_/_server.ts.js-DD1qQE9w.js +0 -36
- package/build/server/chunks/entries/endpoints/api/specs/_id_/comments/_server.ts.js-Bby1xkpH.js +0 -57
- package/build/server/chunks/entries/endpoints/api/specs/_id_/images/_name_/_server.ts.js-CPX8OLQa.js +0 -49
- package/build/server/chunks/entries/endpoints/api/specs/_id_/images/_server.ts.js-BjBV4SVl.js +0 -55
- package/build/server/chunks/entries/endpoints/api/specs/_id_/sent/_server.ts.js-BAqm0IW0.js +0 -36
- package/build/server/chunks/entries/endpoints/api/specs/_id_/turn/_server.ts.js-CNFIHA70.js +0 -82
- package/build/server/chunks/entries/endpoints/api/specs/_server.ts.js-Bix9PKKr.js +0 -40
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/_server.ts.js-CT7cLDQU.js +0 -32
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/artifacts/_...name_/_server.ts.js-zCsm8UJT.js +0 -51
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/diff/_server.ts.js-ccyEPbua.js +0 -39
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/output/_server.ts.js-eZPQtK6T.js +0 -84
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/preview/_server.ts.js-CW76hSLW.js +0 -102
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/_server.ts.js-Cjuig1dr.js +0 -34
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/ask/_server.ts.js-C04r1OFS.js +0 -40
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/check/_server.ts.js-Ca5VNJtJ.js +0 -39
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/guide/_server.ts.js-BKLIKSUM.js +0 -39
- package/build/server/chunks/entries/endpoints/api/tasks/_id_/review/runs/_run_/stop/_server.ts.js-C-D9zXgK.js +0 -32
- package/build/server/chunks/entries/fallbacks/error.svelte.js-DlN_tCrh.js +0 -15
- package/build/server/chunks/entries/hooks.server.js-Cgq1_RNe.js +0 -40
- package/build/server/chunks/entries/pages/_layout.server.ts.js-B7EWMhm1.js +0 -20
- package/build/server/chunks/entries/pages/_layout.svelte.js-BJuZaosz.js +0 -10454
- package/build/server/chunks/entries/pages/_page.server.ts.js-CrjekE3C.js +0 -16
- package/build/server/chunks/entries/pages/_page.svelte.js-BI4c5H0n.js +0 -3699
- package/build/server/chunks/entries/pages/decisions/_page.server.ts.js-Olm_zS-k.js +0 -11
- package/build/server/chunks/entries/pages/decisions/_page.svelte.js-ClTz3O_K.js +0 -167
- package/build/server/chunks/entries/pages/harbour/_page.server.ts.js-CVhhNUGy.js +0 -20
- package/build/server/chunks/entries/pages/harbour/_page.svelte.js-43FRNSVK.js +0 -1346
- package/build/server/chunks/entries/pages/headroom/_page.server.ts.js-Bv8GukD1.js +0 -11
- package/build/server/chunks/entries/pages/headroom/_page.svelte.js-zmKQdAwy.js +0 -135
- package/build/server/chunks/entries/pages/inbox/_page.svelte.js-wTvAFPNM.js +0 -175
- package/build/server/chunks/entries/pages/plugins/_plugin_/_page_/_page.server.ts.js-BJRmRxez.js +0 -15
- package/build/server/chunks/entries/pages/plugins/_plugin_/_page_/_page.svelte.js-DfAqJJ3i.js +0 -55
- package/build/server/chunks/entries/pages/projects/_id_/_plugin_/_tab_/_page.server.ts.js-DawJ61h-.js +0 -15
- package/build/server/chunks/entries/pages/projects/_id_/_plugin_/_tab_/_page.svelte.js-B472Pugu.js +0 -66
- package/build/server/chunks/entries/pages/projects/_id_/passage/_page.server.ts.js-Cm-4qkeb.js +0 -14
- package/build/server/chunks/entries/pages/projects/_id_/passage/_page.svelte.js-CWjEArXY.js +0 -394
- package/build/server/chunks/entries/pages/projects/_id_/passage/edit/_page.server.ts.js-DWNW8L5o.js +0 -15
- package/build/server/chunks/entries/pages/projects/_id_/passage/edit/_page.svelte.js-iHacn81K.js +0 -1859
- package/build/server/chunks/entries/pages/projects/_page.server.ts.js-BVDM5Frg.js +0 -37
- package/build/server/chunks/entries/pages/projects/_page.svelte.js-B_NQ-Wg3.js +0 -270
- package/build/server/chunks/entries/pages/spec/_page.server.ts.js-B3atEUDm.js +0 -31
- package/build/server/chunks/entries/pages/spec/_page.svelte.js-BJjweG9u.js +0 -1561
- package/build/server/chunks/entries/pages/tasks/_id_/_page.server.ts.js-BDQIO7Ft.js +0 -25
- package/build/server/chunks/entries/pages/tasks/_id_/_page.svelte.js-Dr2wwDJG.js +0 -2063
- package/build/server/chunks/entries/pages/tasks/_id_/doc/_page.server.ts.js-Bw-3fcQ6.js +0 -24
- package/build/server/chunks/entries/pages/tasks/_id_/doc/_page.svelte.js-DOyZ1QzI.js +0 -145
- package/build/server/chunks/entries/pages/tasks/_id_/review/_page.server.ts.js-CJek9uLa.js +0 -15
- package/build/server/chunks/entries/pages/tasks/_id_/review/_page.svelte.js-BDaRELgE.js +0 -692
- package/build/server/chunks/entries/pages/time/_page.server.ts.js-An6F-Ydg.js +0 -11
- package/build/server/chunks/entries/pages/time/_page.svelte.js-CSXGxvVs.js +0 -107
- package/build/server/chunks/handler-BnRz5A8m.js +0 -1474
- package/build/server/chunks/index.js-C8djlQGs.js +0 -4296
- package/build/server/chunks/manifest.js-YAglwkb0.js +0 -434
- package/build/server/chunks/nodes/0.js-lkzICUiD.js +0 -32
- package/build/server/chunks/nodes/1.js-BJHI215Q.js +0 -9
- package/build/server/chunks/nodes/10.js-BWB-fD67.js +0 -33
- package/build/server/chunks/nodes/11.js-DWkXu85W.js +0 -33
- package/build/server/chunks/nodes/12.js-CKTx5eRx.js +0 -37
- package/build/server/chunks/nodes/13.js-C9YUj8Wf.js +0 -33
- package/build/server/chunks/nodes/14.js-CvfRHrCy.js +0 -33
- package/build/server/chunks/nodes/15.js-D_eEoMQb.js +0 -33
- package/build/server/chunks/nodes/16.js-BQhgpvij.js +0 -32
- package/build/server/chunks/nodes/2.js-C-3t-e-a.js +0 -32
- package/build/server/chunks/nodes/3.js-DgwKYi6C.js +0 -32
- package/build/server/chunks/nodes/4.js-DRDQ1cZ6.js +0 -34
- package/build/server/chunks/nodes/5.js-Bn5aoN6C.js +0 -32
- package/build/server/chunks/nodes/6.js-lazTWxVv.js +0 -9
- package/build/server/chunks/nodes/7.js-PUjlFfxr.js +0 -32
- package/build/server/chunks/nodes/8.js-DYPhaWV-.js +0 -34
- package/build/server/chunks/nodes/9.js-C2q_Jaiu.js +0 -32
- /package/build/client/_app/immutable/assets/{15.KLSHp5Yu.css → 20.KLSHp5Yu.css} +0 -0
- /package/build/client/_app/immutable/assets/{15.KLSHp5Yu.css.br → 20.KLSHp5Yu.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{15.KLSHp5Yu.css.gz → 20.KLSHp5Yu.css.gz} +0 -0
- /package/build/client/_app/immutable/assets/{4.5dJKCkOT.css → 5.5dJKCkOT.css} +0 -0
- /package/build/client/_app/immutable/assets/{4.5dJKCkOT.css.br → 5.5dJKCkOT.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{4.5dJKCkOT.css.gz → 5.5dJKCkOT.css.gz} +0 -0
- /package/build/client/_app/immutable/assets/{MicButton.Dga9zAug.css → DictateTextarea.Dga9zAug.css} +0 -0
- /package/build/client/_app/immutable/assets/{MicButton.Dga9zAug.css.br → DictateTextarea.Dga9zAug.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{MicButton.Dga9zAug.css.gz → DictateTextarea.Dga9zAug.css.gz} +0 -0
|
@@ -0,0 +1,914 @@
|
|
|
1
|
+
import { d as defaultConfigDir, b as defaultPluginsDir, r as readInstalled, w as writeInstalled, f as manifestPath, p as parseManifest, k as readPluginSettings, s as settingViews, n as parseGiven, o as gatherSettings, q as writePluginSettings, a as PLUGINS_FILE } from './settings.js-C_6kvzhM.js';
|
|
2
|
+
import { execFile } from 'node:child_process';
|
|
3
|
+
import { readFile, realpath, rename, mkdtemp, rm, stat, mkdir } from 'node:fs/promises';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { a as addressWords } from './words.js-Cte4wOB4.js';
|
|
6
|
+
import { tmpdir } from 'node:os';
|
|
7
|
+
import { c as canRestart, r as restartSoon } from './restart.js-Dv1_ODgZ.js';
|
|
8
|
+
|
|
9
|
+
const NAME = /^[A-Za-z0-9_.-]+$/;
|
|
10
|
+
const SHA$1 = /^[0-9a-f]{7,40}$/;
|
|
11
|
+
function parseSource(spec) {
|
|
12
|
+
const m = /^([^/@\s]+)\/([^/@\s]+?)(?:\.git)?(?:@(\S+))?$/.exec(spec.trim());
|
|
13
|
+
if (!m || !NAME.test(m[1]) || !NAME.test(m[2]) || m[1].startsWith("-") || m[2].startsWith(".")) {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
const ref = m[3] ?? null;
|
|
17
|
+
if (ref !== null && (ref.startsWith("-") || !/^[A-Za-z0-9_./-]+$/.test(ref))) return null;
|
|
18
|
+
return { org: m[1], repo: m[2], ref };
|
|
19
|
+
}
|
|
20
|
+
const runGit = (args, cwd) => new Promise((resolve) => {
|
|
21
|
+
execFile(
|
|
22
|
+
"git",
|
|
23
|
+
args,
|
|
24
|
+
{
|
|
25
|
+
cwd,
|
|
26
|
+
env: { ...process.env, GIT_TERMINAL_PROMPT: "0" },
|
|
27
|
+
maxBuffer: 4 * 1024 * 1024
|
|
28
|
+
},
|
|
29
|
+
(err, stdout, stderr) => resolve({
|
|
30
|
+
code: err ? typeof err.code === "number" ? err.code : 1 : 0,
|
|
31
|
+
stdout: String(stdout),
|
|
32
|
+
stderr: String(stderr)
|
|
33
|
+
})
|
|
34
|
+
);
|
|
35
|
+
});
|
|
36
|
+
const githubUrl$1 = (s) => `https://github.com/${s.org}/${s.repo}.git`;
|
|
37
|
+
const short = (commit) => commit.slice(0, 12);
|
|
38
|
+
const label = (r) => `${r.repository}${r.ref ? `@${r.ref}` : ""}`;
|
|
39
|
+
class Refused extends Error {
|
|
40
|
+
}
|
|
41
|
+
async function fetchSource(source, into, deps) {
|
|
42
|
+
const git = deps.git ?? runGit;
|
|
43
|
+
const url = (deps.gitUrl ?? githubUrl$1)(source);
|
|
44
|
+
const step = async (args) => {
|
|
45
|
+
const r = await git(args, into);
|
|
46
|
+
if (r.code !== 0)
|
|
47
|
+
throw new Refused(r.stderr.trim().split("\n").pop() || `git ${args[0]} failed`);
|
|
48
|
+
return r.stdout.trim();
|
|
49
|
+
};
|
|
50
|
+
await step(["init", "-q"]);
|
|
51
|
+
const want = source.ref ?? "HEAD";
|
|
52
|
+
const shallow = await git(["fetch", "-q", "--depth", "1", url, want], into);
|
|
53
|
+
if (shallow.code !== 0) {
|
|
54
|
+
if (!source.ref || !SHA$1.test(source.ref)) {
|
|
55
|
+
throw new Refused(
|
|
56
|
+
`could not fetch ${source.org}/${source.repo}${source.ref ? ` at ${source.ref}` : ""}: ${shallow.stderr.trim().split("\n").pop() ?? ""}`
|
|
57
|
+
);
|
|
58
|
+
}
|
|
59
|
+
await step(["fetch", "-q", url]);
|
|
60
|
+
await step(["checkout", "-q", "--detach", source.ref]);
|
|
61
|
+
} else {
|
|
62
|
+
await step(["checkout", "-q", "--detach", "FETCH_HEAD"]);
|
|
63
|
+
}
|
|
64
|
+
const commit = await step(["rev-parse", "HEAD"]);
|
|
65
|
+
await rm(path.join(into, ".git"), { recursive: true, force: true });
|
|
66
|
+
return commit;
|
|
67
|
+
}
|
|
68
|
+
async function checkCopy(dir) {
|
|
69
|
+
let text;
|
|
70
|
+
try {
|
|
71
|
+
text = await readFile(manifestPath(dir), "utf8");
|
|
72
|
+
} catch {
|
|
73
|
+
throw new Refused("it has no .wheelhouse-plugin/plugin.json, so it is not a Wheelhouse plugin");
|
|
74
|
+
}
|
|
75
|
+
const parsed = parseManifest(text);
|
|
76
|
+
if (!parsed.ok) throw new Refused(`its manifest is not valid: ${parsed.error}`);
|
|
77
|
+
const m = parsed.manifest;
|
|
78
|
+
const base = await realpath(dir);
|
|
79
|
+
for (const [what, rel] of [
|
|
80
|
+
["server entry", m.wheelhouse.server],
|
|
81
|
+
["ui bundle", m.wheelhouse.ui]
|
|
82
|
+
]) {
|
|
83
|
+
if (!rel) continue;
|
|
84
|
+
let file;
|
|
85
|
+
try {
|
|
86
|
+
file = await realpath(path.join(base, rel));
|
|
87
|
+
if (!(await stat(file)).isFile()) throw new Error();
|
|
88
|
+
} catch {
|
|
89
|
+
throw new Refused(`its ${what} ${rel} is missing`);
|
|
90
|
+
}
|
|
91
|
+
if (!file.startsWith(base + path.sep))
|
|
92
|
+
throw new Refused(`its ${what} leads outside the plugin`);
|
|
93
|
+
}
|
|
94
|
+
return m;
|
|
95
|
+
}
|
|
96
|
+
function enabledText(m) {
|
|
97
|
+
const w = m.wheelhouse;
|
|
98
|
+
return w.enabledWhenHomeFile ? `while the Firstmate home has ${w.enabledWhenHomeFile}` : w.enabledWhenFile ? `for projects whose clone has ${w.enabledWhenFile}` : w.enabledByDefault ? "for every project" : "only where your plugins file turns it on";
|
|
99
|
+
}
|
|
100
|
+
function describeManifest(m, from, commit) {
|
|
101
|
+
const w = m.wheelhouse;
|
|
102
|
+
const enabled = enabledText(m);
|
|
103
|
+
return [
|
|
104
|
+
`${m.displayName} (${m.name}) ${m.version}`,
|
|
105
|
+
...m.description ? [` ${m.description}`] : [],
|
|
106
|
+
` From: ${from}`,
|
|
107
|
+
` Commit: ${commit}`,
|
|
108
|
+
...m.author ? [` Author: ${m.author.name}${m.author.url ? ` <${m.author.url}>` : ""}`] : [],
|
|
109
|
+
...m.repository ? [` Homepage: ${m.repository}`] : [],
|
|
110
|
+
` Contract: plugin API ${w.apiVersion}`,
|
|
111
|
+
` Slots: ${w.contributions.map((c) => `${c.slot} (${c.id})`).join(", ") || "none"}`,
|
|
112
|
+
` Services: ${w.services.map((s) => `${s.id} (${s.scope})`).join(", ") || "none"}`,
|
|
113
|
+
` Settings: ${w.settings.map((s) => `${s.key}${s.required ? " (required)" : ""}`).join(", ") || "none"}`,
|
|
114
|
+
...w.mcpServers.length ? [
|
|
115
|
+
` MCP apps: ${w.mcpServers.map((s) => `${s.id} (on ${s.service})`).join(", ")}, drawn in a sandboxed frame`
|
|
116
|
+
] : [],
|
|
117
|
+
...w.hostRoutes.length ? [
|
|
118
|
+
` Answers: ${w.hostRoutes.map((r) => r.host).join(", ")} on Wheelhouse’s port, with its own code`
|
|
119
|
+
] : [],
|
|
120
|
+
...w.addressRewrites.length ? [
|
|
121
|
+
` Addresses: opens addresses on this computer at ${w.addressRewrites.map((r) => r.to).join(", ")}`
|
|
122
|
+
] : [],
|
|
123
|
+
` UI bundle: ${w.ui ?? "none"}`,
|
|
124
|
+
` On: ${enabled}`,
|
|
125
|
+
"",
|
|
126
|
+
"Its code runs with your permissions: its server entry inside Wheelhouse, and",
|
|
127
|
+
"its UI bundle in Wheelhouse’s pages. Wheelhouse gives it read-only helpers, but",
|
|
128
|
+
"does not sandbox it. Install only plugins you trust."
|
|
129
|
+
];
|
|
130
|
+
}
|
|
131
|
+
async function withStaging(dir, work) {
|
|
132
|
+
await mkdir(dir, { recursive: true });
|
|
133
|
+
const staging = await mkdtemp(path.join(dir, ".staging-"));
|
|
134
|
+
try {
|
|
135
|
+
return await work(staging);
|
|
136
|
+
} finally {
|
|
137
|
+
await rm(staging, { recursive: true, force: true });
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
async function guarded(work) {
|
|
141
|
+
try {
|
|
142
|
+
return await work();
|
|
143
|
+
} catch (e) {
|
|
144
|
+
if (e instanceof Refused) return { ok: false, error: e.message };
|
|
145
|
+
throw e;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
function given(pairs2) {
|
|
149
|
+
const g2 = parseGiven(pairs2 ?? []);
|
|
150
|
+
if (!g2.ok) throw new Refused(g2.error);
|
|
151
|
+
return g2.given;
|
|
152
|
+
}
|
|
153
|
+
async function settle(m, deps, o) {
|
|
154
|
+
if (!m.wheelhouse.settings.length && !Object.keys(o.given).length) return null;
|
|
155
|
+
const current = await readPluginSettings(deps.configDir, m.name);
|
|
156
|
+
if (!current.ok) throw new Refused(current.error);
|
|
157
|
+
const r = await gatherSettings(m.name, m.wheelhouse.settings, {
|
|
158
|
+
current: current.settings,
|
|
159
|
+
given: o.given,
|
|
160
|
+
ask: o.yes ? null : deps.ask ?? null,
|
|
161
|
+
intro: `${m.displayName} needs some settings (Enter keeps the one in brackets):`,
|
|
162
|
+
log: deps.log
|
|
163
|
+
});
|
|
164
|
+
if (!r.ok) throw new Refused(r.error);
|
|
165
|
+
return r.settings;
|
|
166
|
+
}
|
|
167
|
+
async function keepSettings(id, settings, deps) {
|
|
168
|
+
const w = await writePluginSettings(deps.configDir, id, settings);
|
|
169
|
+
if (!w.ok) throw new Refused(`could not keep ${id}'s settings: ${w.error}`);
|
|
170
|
+
deps.log(`Kept ${id}'s settings in ${path.join(deps.configDir, PLUGINS_FILE)}.`);
|
|
171
|
+
}
|
|
172
|
+
async function reload(deps, what, yes) {
|
|
173
|
+
const r = await deps.restart(async (url, busy) => {
|
|
174
|
+
deps.log(`Restarting Wheelhouse at ${url} stops what it is running:`);
|
|
175
|
+
for (const b of busy) deps.log(` - ${b}`);
|
|
176
|
+
return yes || deps.confirm("Restart it now?");
|
|
177
|
+
});
|
|
178
|
+
for (const url of r.restarted) deps.log(`Restarting Wheelhouse at ${url} to ${what}.`);
|
|
179
|
+
for (const url of r.kept) deps.log(`Left Wheelhouse at ${url} running; restart it to ${what}.`);
|
|
180
|
+
for (const f of r.failed) {
|
|
181
|
+
deps.log(`Could not restart Wheelhouse at ${f.url} (${f.reason}); restart it to ${what}.`);
|
|
182
|
+
}
|
|
183
|
+
if (!r.restarted.length && !r.kept.length && !r.failed.length) {
|
|
184
|
+
deps.log(`Wheelhouse is not running; it will ${what} when it next starts.`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
async function record(deps) {
|
|
188
|
+
const r = await readInstalled(deps.dir);
|
|
189
|
+
if (!r.ok) throw new Refused(r.error);
|
|
190
|
+
return r.installed;
|
|
191
|
+
}
|
|
192
|
+
function expected(commit, expect, repository) {
|
|
193
|
+
if (expect !== void 0 && commit !== expect) {
|
|
194
|
+
throw new Refused(
|
|
195
|
+
`${repository} is at ${short(commit)} now, not ${short(expect)} as when you looked; look it up again`
|
|
196
|
+
);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
async function preview(m, at, deps, installed) {
|
|
200
|
+
const current = await readPluginSettings(deps.configDir, m.name);
|
|
201
|
+
const have = current.ok ? current.settings : {};
|
|
202
|
+
const w = m.wheelhouse;
|
|
203
|
+
return {
|
|
204
|
+
id: m.name,
|
|
205
|
+
name: m.displayName,
|
|
206
|
+
version: m.version,
|
|
207
|
+
description: m.description,
|
|
208
|
+
...at,
|
|
209
|
+
author: m.author?.name ?? null,
|
|
210
|
+
homepage: m.repository,
|
|
211
|
+
apiVersion: w.apiVersion,
|
|
212
|
+
slots: w.contributions.map((c) => c.slot),
|
|
213
|
+
services: w.services.map((x) => `${x.id} (${x.scope})`),
|
|
214
|
+
addresses: addressWords(
|
|
215
|
+
w.hostRoutes.map((r) => r.host),
|
|
216
|
+
w.addressRewrites.map((r) => r.to)
|
|
217
|
+
),
|
|
218
|
+
ui: w.ui,
|
|
219
|
+
on: enabledText(m),
|
|
220
|
+
settings: settingViews(w.settings, have),
|
|
221
|
+
installed
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
function inspect(spec, deps) {
|
|
225
|
+
return guardedInspect(async () => {
|
|
226
|
+
const source = parseSource(spec);
|
|
227
|
+
if (!source) throw new Refused(`"${spec}" is not org/repo or org/repo@ref`);
|
|
228
|
+
const installed = await record(deps);
|
|
229
|
+
const repository = `${source.org}/${source.repo}`;
|
|
230
|
+
return withStaging(deps.dir, async (staging) => {
|
|
231
|
+
const commit = await fetchSource(source, staging, deps);
|
|
232
|
+
const m = await checkCopy(staging);
|
|
233
|
+
if (installed.plugins[m.name]) {
|
|
234
|
+
throw new Refused(
|
|
235
|
+
`${m.name} is already installed from ${label(installed.plugins[m.name])}; update it from its row instead`
|
|
236
|
+
);
|
|
237
|
+
}
|
|
238
|
+
if (await exists(path.join(deps.dir, m.name))) {
|
|
239
|
+
throw new Refused(`${path.join(deps.dir, m.name)} already exists; remove it first`);
|
|
240
|
+
}
|
|
241
|
+
return preview(m, { repository, ref: source.ref, commit }, deps, null);
|
|
242
|
+
});
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
function inspectUpdate(id, deps, o = {}) {
|
|
246
|
+
return guardedInspect(async () => {
|
|
247
|
+
const installed = await record(deps);
|
|
248
|
+
const was = installed.plugins[id];
|
|
249
|
+
if (!was) throw new Refused(`${id} is not installed`);
|
|
250
|
+
const [org, repo] = was.repository.split("/");
|
|
251
|
+
const ref = o.ref === void 0 ? was.ref : o.ref;
|
|
252
|
+
const source = { org, repo, ref };
|
|
253
|
+
if (!parseSource(`${org}/${repo}${ref ? `@${ref}` : ""}`)) {
|
|
254
|
+
throw new Refused(`"${ref}" is not a ref`);
|
|
255
|
+
}
|
|
256
|
+
return withStaging(deps.dir, async (staging) => {
|
|
257
|
+
const commit = await fetchSource(source, staging, deps);
|
|
258
|
+
if (commit === was.commit) throw new Refused(`${id} is already at ${short(commit)}`);
|
|
259
|
+
const m = await checkCopy(staging);
|
|
260
|
+
if (m.name !== id) {
|
|
261
|
+
throw new Refused(`${was.repository} now names its plugin "${m.name}", not "${id}"`);
|
|
262
|
+
}
|
|
263
|
+
return preview(m, { repository: was.repository, ref, commit }, deps, {
|
|
264
|
+
version: was.version,
|
|
265
|
+
commit: was.commit,
|
|
266
|
+
ref: was.ref
|
|
267
|
+
});
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
async function guardedInspect(work) {
|
|
272
|
+
try {
|
|
273
|
+
return { ok: true, preview: await work() };
|
|
274
|
+
} catch (e) {
|
|
275
|
+
if (e instanceof Refused) return { ok: false, error: e.message };
|
|
276
|
+
throw e;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
function install(spec, deps, o = {}) {
|
|
280
|
+
return guarded(async () => {
|
|
281
|
+
const source = parseSource(spec);
|
|
282
|
+
if (!source) throw new Refused(`"${spec}" is not org/repo or org/repo@ref`);
|
|
283
|
+
const answers = given(o.settings);
|
|
284
|
+
const installed = await record(deps);
|
|
285
|
+
const repository = `${source.org}/${source.repo}`;
|
|
286
|
+
return withStaging(deps.dir, async (staging) => {
|
|
287
|
+
deps.log(`Fetching ${repository}${source.ref ? ` at ${source.ref}` : ""}…`);
|
|
288
|
+
const commit = await fetchSource(source, staging, deps);
|
|
289
|
+
expected(commit, o.expect, repository);
|
|
290
|
+
const m = await checkCopy(staging);
|
|
291
|
+
const target = path.join(deps.dir, m.name);
|
|
292
|
+
if (installed.plugins[m.name]) {
|
|
293
|
+
throw new Refused(
|
|
294
|
+
`${m.name} is already installed from ${label(installed.plugins[m.name])}; use \`wheelhouse plugin update ${m.name}\``
|
|
295
|
+
);
|
|
296
|
+
}
|
|
297
|
+
if (await exists(target)) {
|
|
298
|
+
throw new Refused(`${target} already exists; remove it first`);
|
|
299
|
+
}
|
|
300
|
+
for (const line of describeManifest(
|
|
301
|
+
m,
|
|
302
|
+
`${repository}${source.ref ? ` (${source.ref})` : ""}`,
|
|
303
|
+
commit
|
|
304
|
+
))
|
|
305
|
+
deps.log(line);
|
|
306
|
+
if (!o.yes && !await deps.confirm(`Install ${m.name}?`)) {
|
|
307
|
+
throw new Refused("not installed");
|
|
308
|
+
}
|
|
309
|
+
const settings = await settle(m, deps, { yes: o.yes, given: answers });
|
|
310
|
+
if (settings) await keepSettings(m.name, settings, deps);
|
|
311
|
+
await rename(staging, target);
|
|
312
|
+
installed.plugins[m.name] = {
|
|
313
|
+
repository,
|
|
314
|
+
ref: source.ref,
|
|
315
|
+
commit,
|
|
316
|
+
version: m.version,
|
|
317
|
+
installedAt: (deps.now?.() ?? /* @__PURE__ */ new Date()).toISOString(),
|
|
318
|
+
enabled: true
|
|
319
|
+
};
|
|
320
|
+
await writeInstalled(deps.dir, installed);
|
|
321
|
+
deps.log(`Installed ${m.name} ${m.version} at ${short(commit)}.`);
|
|
322
|
+
await reload(deps, `load ${m.name}`, o.yes);
|
|
323
|
+
return { ok: true };
|
|
324
|
+
});
|
|
325
|
+
});
|
|
326
|
+
}
|
|
327
|
+
function update(id, deps, o = {}) {
|
|
328
|
+
return guarded(async () => {
|
|
329
|
+
const answers = given(o.settings);
|
|
330
|
+
const installed = await record(deps);
|
|
331
|
+
const was = installed.plugins[id];
|
|
332
|
+
if (!was) throw new Refused(`${id} is not installed`);
|
|
333
|
+
const [org, repo] = was.repository.split("/");
|
|
334
|
+
const source = { org, repo, ref: o.ref ?? was.ref };
|
|
335
|
+
if (!parseSource(`${org}/${repo}${source.ref ? `@${source.ref}` : ""}`)) {
|
|
336
|
+
throw new Refused(`"${source.ref}" is not a ref`);
|
|
337
|
+
}
|
|
338
|
+
return withStaging(deps.dir, async (staging) => {
|
|
339
|
+
deps.log(`Fetching ${was.repository}${source.ref ? ` at ${source.ref}` : ""}…`);
|
|
340
|
+
const commit = await fetchSource(source, staging, deps);
|
|
341
|
+
expected(commit, o.expect, was.repository);
|
|
342
|
+
if (commit === was.commit) {
|
|
343
|
+
if (source.ref !== was.ref) {
|
|
344
|
+
installed.plugins[id] = { ...was, ref: source.ref };
|
|
345
|
+
await writeInstalled(deps.dir, installed);
|
|
346
|
+
}
|
|
347
|
+
deps.log(`${id} is already at ${short(commit)}.`);
|
|
348
|
+
return { ok: true };
|
|
349
|
+
}
|
|
350
|
+
const m = await checkCopy(staging);
|
|
351
|
+
if (m.name !== id) {
|
|
352
|
+
throw new Refused(`${was.repository} now names its plugin "${m.name}", not "${id}"`);
|
|
353
|
+
}
|
|
354
|
+
deps.log(
|
|
355
|
+
`Update ${id} from ${was.version} (${short(was.commit)}) to ${m.version} (${short(commit)}):`
|
|
356
|
+
);
|
|
357
|
+
for (const line of describeManifest(
|
|
358
|
+
m,
|
|
359
|
+
`${was.repository}${source.ref ? ` (${source.ref})` : ""}`,
|
|
360
|
+
commit
|
|
361
|
+
))
|
|
362
|
+
deps.log(line);
|
|
363
|
+
if (!o.yes && !await deps.confirm(`Update ${id}?`)) throw new Refused("not updated");
|
|
364
|
+
const settings = await settle(m, deps, { yes: o.yes, given: answers });
|
|
365
|
+
if (settings) await keepSettings(id, settings, deps);
|
|
366
|
+
const target = path.join(deps.dir, id);
|
|
367
|
+
const old = await mkdtemp(path.join(deps.dir, ".old-"));
|
|
368
|
+
const parked = path.join(old, id);
|
|
369
|
+
if (await exists(target)) await rename(target, parked);
|
|
370
|
+
try {
|
|
371
|
+
await rename(staging, target);
|
|
372
|
+
} catch (e) {
|
|
373
|
+
if (await exists(parked)) await rename(parked, target);
|
|
374
|
+
throw e;
|
|
375
|
+
} finally {
|
|
376
|
+
await rm(old, { recursive: true, force: true });
|
|
377
|
+
}
|
|
378
|
+
installed.plugins[id] = {
|
|
379
|
+
...was,
|
|
380
|
+
ref: source.ref,
|
|
381
|
+
commit,
|
|
382
|
+
version: m.version,
|
|
383
|
+
installedAt: (deps.now?.() ?? /* @__PURE__ */ new Date()).toISOString()
|
|
384
|
+
};
|
|
385
|
+
await writeInstalled(deps.dir, installed);
|
|
386
|
+
deps.log(`Updated ${id} to ${m.version} at ${short(commit)}.`);
|
|
387
|
+
await reload(deps, `load ${id} ${m.version}`, o.yes);
|
|
388
|
+
return { ok: true };
|
|
389
|
+
});
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
function setEnabled(id, enabled, deps, o = {}) {
|
|
393
|
+
return guarded(async () => {
|
|
394
|
+
const installed = await record(deps);
|
|
395
|
+
const r = installed.plugins[id];
|
|
396
|
+
if (!r) throw new Refused(`${id} is not installed`);
|
|
397
|
+
installed.plugins[id] = { ...r, enabled };
|
|
398
|
+
await writeInstalled(deps.dir, installed);
|
|
399
|
+
deps.log(`${id} is ${enabled ? "on" : "off"}.`);
|
|
400
|
+
await reload(deps, `${enabled ? "load" : "unload"} ${id}`, o.yes);
|
|
401
|
+
return { ok: true };
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
async function exists(p) {
|
|
405
|
+
try {
|
|
406
|
+
await stat(p);
|
|
407
|
+
return true;
|
|
408
|
+
} catch {
|
|
409
|
+
return false;
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
const SEMVER = /^v?(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/;
|
|
413
|
+
function parseVersion(s) {
|
|
414
|
+
const m = SEMVER.exec(s.trim());
|
|
415
|
+
if (!m) return null;
|
|
416
|
+
return { major: +m[1], minor: +m[2], patch: +m[3], pre: m[4] ?? null };
|
|
417
|
+
}
|
|
418
|
+
function comparePre(a, b) {
|
|
419
|
+
if (a === b) return 0;
|
|
420
|
+
if (a === null) return 1;
|
|
421
|
+
if (b === null) return -1;
|
|
422
|
+
const pa = a.split(".");
|
|
423
|
+
const pb = b.split(".");
|
|
424
|
+
for (let i = 0; i < Math.max(pa.length, pb.length); i++) {
|
|
425
|
+
if (pa[i] === void 0) return -1;
|
|
426
|
+
if (pb[i] === void 0) return 1;
|
|
427
|
+
const na = /^\d+$/.test(pa[i]) ? Number(pa[i]) : null;
|
|
428
|
+
const nb = /^\d+$/.test(pb[i]) ? Number(pb[i]) : null;
|
|
429
|
+
if (na !== null && nb !== null) {
|
|
430
|
+
if (na !== nb) return na < nb ? -1 : 1;
|
|
431
|
+
} else if (na !== null) return -1;
|
|
432
|
+
else if (nb !== null) return 1;
|
|
433
|
+
else if (pa[i] !== pb[i]) return pa[i] < pb[i] ? -1 : 1;
|
|
434
|
+
}
|
|
435
|
+
return 0;
|
|
436
|
+
}
|
|
437
|
+
function compareVersions(a, b) {
|
|
438
|
+
const va = parseVersion(a);
|
|
439
|
+
const vb = parseVersion(b);
|
|
440
|
+
if (!va || !vb) return null;
|
|
441
|
+
for (const k of ["major", "minor", "patch"]) {
|
|
442
|
+
if (va[k] !== vb[k]) return va[k] < vb[k] ? -1 : 1;
|
|
443
|
+
}
|
|
444
|
+
return comparePre(va.pre, vb.pre);
|
|
445
|
+
}
|
|
446
|
+
function newerTag(current, tags) {
|
|
447
|
+
const cur = parseVersion(current);
|
|
448
|
+
if (!cur) return null;
|
|
449
|
+
let best = null;
|
|
450
|
+
for (const t of tags) {
|
|
451
|
+
const v = parseVersion(t);
|
|
452
|
+
if (!v || v.pre !== null && cur.pre === null) continue;
|
|
453
|
+
if ((compareVersions(t, current) ?? 0) <= 0) continue;
|
|
454
|
+
if (best === null || (compareVersions(t, best) ?? 0) > 0) best = t;
|
|
455
|
+
}
|
|
456
|
+
return best;
|
|
457
|
+
}
|
|
458
|
+
function parseLsRemote(text) {
|
|
459
|
+
const out = { head: null, heads: /* @__PURE__ */ new Map(), tags: /* @__PURE__ */ new Map() };
|
|
460
|
+
const peeled = /* @__PURE__ */ new Map();
|
|
461
|
+
for (const line of text.split("\n")) {
|
|
462
|
+
const [sha, ref] = line.trim().split(/\s+/);
|
|
463
|
+
if (!sha || !ref || !/^[0-9a-f]{40}$/.test(sha)) continue;
|
|
464
|
+
if (ref === "HEAD") out.head = sha;
|
|
465
|
+
else if (ref.startsWith("refs/heads/")) out.heads.set(ref.slice(11), sha);
|
|
466
|
+
else if (ref.startsWith("refs/tags/")) {
|
|
467
|
+
const name = ref.slice(10);
|
|
468
|
+
if (name.endsWith("^{}")) peeled.set(name.slice(0, -3), sha);
|
|
469
|
+
else out.tags.set(name, sha);
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
for (const [name, sha] of peeled) out.tags.set(name, sha);
|
|
473
|
+
return out;
|
|
474
|
+
}
|
|
475
|
+
const githubUrl = (s) => `https://github.com/${s.org}/${s.repo}.git`;
|
|
476
|
+
const SHA = /^[0-9a-f]{7,40}$/;
|
|
477
|
+
async function checkPlugin(id, r, deps = {}) {
|
|
478
|
+
const base = {
|
|
479
|
+
id,
|
|
480
|
+
repository: r.repository,
|
|
481
|
+
ref: r.ref,
|
|
482
|
+
commit: r.commit,
|
|
483
|
+
version: r.version,
|
|
484
|
+
latest: null,
|
|
485
|
+
reason: null
|
|
486
|
+
};
|
|
487
|
+
const [org, repo] = r.repository.split("/");
|
|
488
|
+
const url = (deps.gitUrl ?? githubUrl)({ org, repo, ref: r.ref });
|
|
489
|
+
const res = await (deps.git ?? runGit)(["ls-remote", url], tmpdir());
|
|
490
|
+
if (res.code !== 0) {
|
|
491
|
+
const why = res.stderr.trim().split("\n").pop() || "git ls-remote failed";
|
|
492
|
+
return { ...base, state: "error", reason: `could not reach ${r.repository}: ${why}` };
|
|
493
|
+
}
|
|
494
|
+
const refs = parseLsRemote(res.stdout);
|
|
495
|
+
const moved = (commit, ref) => commit && commit !== r.commit ? { ...base, state: "available", latest: { ref, commit } } : { ...base, state: "current" };
|
|
496
|
+
if (r.ref === null) return moved(refs.head, null);
|
|
497
|
+
if (refs.tags.has(r.ref)) {
|
|
498
|
+
const tag = newerTag(r.ref, [...refs.tags.keys()]);
|
|
499
|
+
if (tag) {
|
|
500
|
+
return {
|
|
501
|
+
...base,
|
|
502
|
+
state: "newer-tag",
|
|
503
|
+
latest: { ref: tag, commit: refs.tags.get(tag) }
|
|
504
|
+
};
|
|
505
|
+
}
|
|
506
|
+
return moved(refs.tags.get(r.ref), r.ref);
|
|
507
|
+
}
|
|
508
|
+
if (refs.heads.has(r.ref)) return moved(refs.heads.get(r.ref), r.ref);
|
|
509
|
+
if (SHA.test(r.ref)) return { ...base, state: "pinned" };
|
|
510
|
+
return {
|
|
511
|
+
...base,
|
|
512
|
+
state: "error",
|
|
513
|
+
reason: `${r.repository} has no branch or tag ${r.ref} any more`
|
|
514
|
+
};
|
|
515
|
+
}
|
|
516
|
+
async function checkPlugins(dir, deps = {}) {
|
|
517
|
+
const checkedAt = (deps.now?.() ?? /* @__PURE__ */ new Date()).toISOString();
|
|
518
|
+
const installed = await readInstalled(dir);
|
|
519
|
+
if (!installed.ok) {
|
|
520
|
+
return {
|
|
521
|
+
schema: "wheelhouse-plugin-updates.v1",
|
|
522
|
+
checkedAt,
|
|
523
|
+
plugins: [],
|
|
524
|
+
error: installed.error
|
|
525
|
+
};
|
|
526
|
+
}
|
|
527
|
+
const rows = Object.entries(installed.installed.plugins).sort(([a], [b]) => a.localeCompare(b));
|
|
528
|
+
return {
|
|
529
|
+
schema: "wheelhouse-plugin-updates.v1",
|
|
530
|
+
checkedAt,
|
|
531
|
+
plugins: await Promise.all(rows.map(([id, r]) => checkPlugin(id, r, deps))),
|
|
532
|
+
error: null
|
|
533
|
+
};
|
|
534
|
+
}
|
|
535
|
+
const COMMITS_SHOWN = 20;
|
|
536
|
+
const runCommand = (cmd, args, cwd) => new Promise((resolve) => {
|
|
537
|
+
execFile(cmd, args, { cwd, maxBuffer: 64 * 1024 * 1024 }, (err, stdout, stderr) => {
|
|
538
|
+
const output = `${String(stdout)}${String(stderr)}`;
|
|
539
|
+
resolve({
|
|
540
|
+
code: err ? typeof err.code === "number" ? err.code : 1 : 0,
|
|
541
|
+
output: output.slice(-6e4)
|
|
542
|
+
});
|
|
543
|
+
});
|
|
544
|
+
});
|
|
545
|
+
function githubRepository(url) {
|
|
546
|
+
const m = /^(?:https?:\/\/(?:[^@/]+@)?github\.com\/|(?:ssh:\/\/)?git@github\.com[:/])([^/]+)\/([^/]+?)(?:\.git)?\/?$/.exec(
|
|
547
|
+
url.trim()
|
|
548
|
+
);
|
|
549
|
+
return m ? `${m[1]}/${m[2]}` : null;
|
|
550
|
+
}
|
|
551
|
+
function packageVersion(text) {
|
|
552
|
+
if (text === null) return null;
|
|
553
|
+
try {
|
|
554
|
+
const v = JSON.parse(text).version;
|
|
555
|
+
return typeof v === "string" ? v : null;
|
|
556
|
+
} catch {
|
|
557
|
+
return null;
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
const lastLine = (s) => s.trim().split("\n").pop() ?? "";
|
|
561
|
+
async function checkClone(deps) {
|
|
562
|
+
const git = deps.git ?? runGit;
|
|
563
|
+
const g2 = async (...args) => git(args, deps.dir);
|
|
564
|
+
const out = {
|
|
565
|
+
schema: "wheelhouse-update.v1",
|
|
566
|
+
checkedAt: (deps.now?.() ?? /* @__PURE__ */ new Date()).toISOString(),
|
|
567
|
+
state: "unsupported",
|
|
568
|
+
reason: null,
|
|
569
|
+
dir: deps.dir,
|
|
570
|
+
repository: null,
|
|
571
|
+
branch: null,
|
|
572
|
+
current: { commit: null, version: null },
|
|
573
|
+
latest: null,
|
|
574
|
+
commits: [],
|
|
575
|
+
behind: 0,
|
|
576
|
+
changes: []
|
|
577
|
+
};
|
|
578
|
+
out.current.version = packageVersion(
|
|
579
|
+
await readFile(path.join(deps.dir, "package.json"), "utf8").catch(() => null)
|
|
580
|
+
);
|
|
581
|
+
const top = await g2("rev-parse", "--show-toplevel");
|
|
582
|
+
const here = await realpath(deps.dir).catch(() => deps.dir);
|
|
583
|
+
if (top.code !== 0 || await realpath(top.stdout.trim()).catch(() => "") !== here) {
|
|
584
|
+
out.reason = `${deps.dir} is not a git clone, so Wheelhouse cannot upgrade it; update it the way it was installed (for npm, \`npm install -g @chrisjowen/wheelhouse\`)`;
|
|
585
|
+
return out;
|
|
586
|
+
}
|
|
587
|
+
const head = await g2("rev-parse", "HEAD");
|
|
588
|
+
out.current.commit = head.code === 0 ? head.stdout.trim() : null;
|
|
589
|
+
const origin = await g2("remote", "get-url", "origin");
|
|
590
|
+
if (origin.code !== 0) {
|
|
591
|
+
out.reason = `${deps.dir} has no origin remote to upgrade from`;
|
|
592
|
+
return out;
|
|
593
|
+
}
|
|
594
|
+
out.repository = githubRepository(origin.stdout);
|
|
595
|
+
const symref = await g2("ls-remote", "--symref", "origin", "HEAD");
|
|
596
|
+
const branch = /^ref: refs\/heads\/(\S+)\s+HEAD$/m.exec(symref.stdout)?.[1] ?? null;
|
|
597
|
+
if (symref.code !== 0 || !branch) {
|
|
598
|
+
out.state = "error";
|
|
599
|
+
out.reason = `could not reach origin: ${lastLine(symref.stderr) || "it named no default branch"}`;
|
|
600
|
+
return out;
|
|
601
|
+
}
|
|
602
|
+
out.branch = branch;
|
|
603
|
+
const fetched = await g2("fetch", "--quiet", "--no-tags", "origin", `refs/heads/${branch}`);
|
|
604
|
+
if (fetched.code !== 0) {
|
|
605
|
+
out.state = "error";
|
|
606
|
+
out.reason = `could not fetch ${branch}: ${lastLine(fetched.stderr)}`;
|
|
607
|
+
return out;
|
|
608
|
+
}
|
|
609
|
+
const latest = (await g2("rev-parse", "FETCH_HEAD")).stdout.trim();
|
|
610
|
+
const remotePkg = await g2("show", `${latest}:package.json`);
|
|
611
|
+
out.latest = {
|
|
612
|
+
commit: latest,
|
|
613
|
+
version: packageVersion(remotePkg.code === 0 ? remotePkg.stdout : null)
|
|
614
|
+
};
|
|
615
|
+
const counts = (await g2("rev-list", "--left-right", "--count", `HEAD...${latest}`)).stdout.trim().split(/\s+/).map(Number);
|
|
616
|
+
const ahead = counts[0] || 0;
|
|
617
|
+
out.behind = counts[1] || 0;
|
|
618
|
+
if (out.behind === 0) {
|
|
619
|
+
out.state = "current";
|
|
620
|
+
return out;
|
|
621
|
+
}
|
|
622
|
+
const log = await g2("log", "--format=%H%x1f%s%x1f%cI", `-n${COMMITS_SHOWN}`, `HEAD..${latest}`);
|
|
623
|
+
out.commits = log.stdout.split("\n").filter(Boolean).map((l) => {
|
|
624
|
+
const [sha, subject, date] = l.split("");
|
|
625
|
+
return { sha, subject, date };
|
|
626
|
+
});
|
|
627
|
+
const on = await g2("symbolic-ref", "--quiet", "--short", "HEAD");
|
|
628
|
+
const status = await g2("status", "--porcelain", "--untracked-files=no");
|
|
629
|
+
const changes = status.stdout.split("\n").filter((l) => l.trim());
|
|
630
|
+
out.state = "refused";
|
|
631
|
+
if (on.code !== 0) {
|
|
632
|
+
out.reason = `${deps.dir} is not on a branch (detached HEAD), so it cannot fast-forward to ${branch}`;
|
|
633
|
+
} else if (on.stdout.trim() !== branch) {
|
|
634
|
+
out.reason = `${deps.dir} is on ${on.stdout.trim()}, not ${branch}, so it cannot fast-forward`;
|
|
635
|
+
} else if (changes.length) {
|
|
636
|
+
out.reason = `${deps.dir} has local changes; commit or discard them, then check again`;
|
|
637
|
+
out.changes = changes;
|
|
638
|
+
} else if (ahead > 0) {
|
|
639
|
+
out.reason = `${deps.dir} has ${ahead} commit${ahead === 1 ? "" : "s"} that ${branch} does not, so it cannot fast-forward`;
|
|
640
|
+
} else {
|
|
641
|
+
out.state = "available";
|
|
642
|
+
}
|
|
643
|
+
return out;
|
|
644
|
+
}
|
|
645
|
+
async function upgradeClone(deps, onStep = () => {
|
|
646
|
+
}) {
|
|
647
|
+
const git = deps.git ?? runGit;
|
|
648
|
+
const run = deps.run ?? runCommand;
|
|
649
|
+
onStep("fetch");
|
|
650
|
+
const check = await checkClone(deps);
|
|
651
|
+
if (check.state !== "available" || !check.latest) {
|
|
652
|
+
const error = check.state === "current" ? `Wheelhouse is already up to date with ${check.branch}` : check.reason ?? "there is nothing to upgrade to";
|
|
653
|
+
return { ok: false, step: "fetch", error, output: "", check };
|
|
654
|
+
}
|
|
655
|
+
onStep("fast-forward");
|
|
656
|
+
const ff = await git(["merge", "--ff-only", "--quiet", check.latest.commit], deps.dir);
|
|
657
|
+
if (ff.code !== 0) {
|
|
658
|
+
return {
|
|
659
|
+
ok: false,
|
|
660
|
+
step: "fast-forward",
|
|
661
|
+
error: `could not fast-forward: ${lastLine(ff.stderr)}`,
|
|
662
|
+
output: ff.stderr,
|
|
663
|
+
check
|
|
664
|
+
};
|
|
665
|
+
}
|
|
666
|
+
for (const [step, args] of [
|
|
667
|
+
["install", ["ci"]],
|
|
668
|
+
["build", ["run", "build"]]
|
|
669
|
+
]) {
|
|
670
|
+
onStep(step);
|
|
671
|
+
const r = await run("npm", [...args], deps.dir);
|
|
672
|
+
if (r.code !== 0) {
|
|
673
|
+
return {
|
|
674
|
+
ok: false,
|
|
675
|
+
step,
|
|
676
|
+
error: `npm ${args.join(" ")} failed (exit ${r.code}); the clone is at ${check.latest.commit.slice(0, 7)} but its build is incomplete, so rebuild it (npm ci && npm run build) before Wheelhouse restarts`,
|
|
677
|
+
output: r.output,
|
|
678
|
+
check
|
|
679
|
+
};
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
return { ok: true, check, from: check.current.commit, to: check.latest.commit };
|
|
683
|
+
}
|
|
684
|
+
const CHECK_EVERY_MS = 6 * 60 * 60 * 1e3;
|
|
685
|
+
const fresh = () => ({
|
|
686
|
+
check: null,
|
|
687
|
+
checking: null,
|
|
688
|
+
job: null,
|
|
689
|
+
plugins: null,
|
|
690
|
+
pluginsChecking: null,
|
|
691
|
+
changing: null
|
|
692
|
+
});
|
|
693
|
+
class UpdateService {
|
|
694
|
+
constructor(deps) {
|
|
695
|
+
this.deps = deps;
|
|
696
|
+
}
|
|
697
|
+
deps;
|
|
698
|
+
s = fresh();
|
|
699
|
+
now = () => this.deps.now?.() ?? Date.now();
|
|
700
|
+
log = (line) => (this.deps.log ?? console.log)(line);
|
|
701
|
+
stale = (at) => !at || this.now() - Date.parse(at) >= CHECK_EVERY_MS;
|
|
702
|
+
/** The directory Wheelhouse runs from, as `wheelhouse open` names it. */
|
|
703
|
+
installDir() {
|
|
704
|
+
return this.deps.env.WHEELHOUSE_INSTALL_DIR || null;
|
|
705
|
+
}
|
|
706
|
+
cloneDeps(dir) {
|
|
707
|
+
return { now: () => new Date(this.now()), ...this.deps.clone, dir };
|
|
708
|
+
}
|
|
709
|
+
pluginDeps() {
|
|
710
|
+
return {
|
|
711
|
+
dir: defaultPluginsDir(this.deps.env),
|
|
712
|
+
configDir: defaultConfigDir(this.deps.env),
|
|
713
|
+
...this.deps.plugins,
|
|
714
|
+
confirm: async () => true,
|
|
715
|
+
// The page restarts this Wheelhouse itself once the change is kept.
|
|
716
|
+
restart: async () => ({ restarted: [], failed: [], kept: [] }),
|
|
717
|
+
log: () => {
|
|
718
|
+
}
|
|
719
|
+
};
|
|
720
|
+
}
|
|
721
|
+
/** Check Wheelhouse now; a check already under way is shared. */
|
|
722
|
+
checkWheelhouse() {
|
|
723
|
+
if (this.s.checking) return this.s.checking;
|
|
724
|
+
const dir = this.installDir();
|
|
725
|
+
const run = dir ? checkClone(this.cloneDeps(dir)) : Promise.resolve({
|
|
726
|
+
schema: "wheelhouse-update.v1",
|
|
727
|
+
checkedAt: new Date(this.now()).toISOString(),
|
|
728
|
+
state: "unsupported",
|
|
729
|
+
reason: "this Wheelhouse was not started by `wheelhouse open`, so it does not know where it is installed",
|
|
730
|
+
dir: "",
|
|
731
|
+
repository: null,
|
|
732
|
+
branch: null,
|
|
733
|
+
current: { commit: null, version: null },
|
|
734
|
+
latest: null,
|
|
735
|
+
commits: [],
|
|
736
|
+
behind: 0,
|
|
737
|
+
changes: []
|
|
738
|
+
});
|
|
739
|
+
this.s.checking = run.then((c) => this.s.check = c).finally(() => this.s.checking = null);
|
|
740
|
+
return this.s.checking;
|
|
741
|
+
}
|
|
742
|
+
/** The captain asked to check again: that also puts a failed upgrade behind them. */
|
|
743
|
+
checkWheelhouseNow() {
|
|
744
|
+
if (this.s.job?.state === "failed") this.s.job = null;
|
|
745
|
+
return this.checkWheelhouse();
|
|
746
|
+
}
|
|
747
|
+
/** Wheelhouse's state; starts a check in the background when the last one is stale. */
|
|
748
|
+
async wheelhouse() {
|
|
749
|
+
if (!this.s.checking && !this.s.changing && this.stale(this.s.check?.checkedAt)) {
|
|
750
|
+
void this.checkWheelhouse().catch(() => {
|
|
751
|
+
});
|
|
752
|
+
}
|
|
753
|
+
return {
|
|
754
|
+
schema: "wheelhouse-self-update.v1",
|
|
755
|
+
check: this.s.check,
|
|
756
|
+
checking: this.s.checking !== null,
|
|
757
|
+
job: this.s.job,
|
|
758
|
+
canRestart: canRestart(),
|
|
759
|
+
busy: await this.deps.busy?.() ?? []
|
|
760
|
+
};
|
|
761
|
+
}
|
|
762
|
+
/** Why a change cannot start now, or null. */
|
|
763
|
+
refuseChange() {
|
|
764
|
+
if (this.s.changing) return `Wait for ${this.s.changing} to finish.`;
|
|
765
|
+
if (!canRestart()) {
|
|
766
|
+
return "This Wheelhouse was not started by `wheelhouse open`, so it cannot restart itself to load a change.";
|
|
767
|
+
}
|
|
768
|
+
return null;
|
|
769
|
+
}
|
|
770
|
+
/**
|
|
771
|
+
* Start upgrading Wheelhouse: returns at once (or why it cannot start), and
|
|
772
|
+
* the job's progress shows in `wheelhouse()`. Ends by restarting.
|
|
773
|
+
*/
|
|
774
|
+
startUpgrade() {
|
|
775
|
+
const refused = this.refuseChange();
|
|
776
|
+
if (refused) return { ok: false, error: refused };
|
|
777
|
+
const dir = this.installDir();
|
|
778
|
+
if (!dir) return { ok: false, error: "This Wheelhouse does not know where it is installed." };
|
|
779
|
+
this.s.changing = "the Wheelhouse upgrade";
|
|
780
|
+
const job = {
|
|
781
|
+
state: "running",
|
|
782
|
+
step: "fetch",
|
|
783
|
+
to: null,
|
|
784
|
+
error: null,
|
|
785
|
+
output: null,
|
|
786
|
+
startedAt: new Date(this.now()).toISOString()
|
|
787
|
+
};
|
|
788
|
+
this.s.job = job;
|
|
789
|
+
this.log("Upgrading Wheelhouse…");
|
|
790
|
+
void upgradeClone(this.cloneDeps(dir), (step) => {
|
|
791
|
+
job.step = step;
|
|
792
|
+
}).then((r) => {
|
|
793
|
+
if (r.check) this.s.check = r.check;
|
|
794
|
+
if (!r.ok) {
|
|
795
|
+
job.state = "failed";
|
|
796
|
+
job.error = r.error;
|
|
797
|
+
job.output = r.output.slice(-4e3) || null;
|
|
798
|
+
this.log(`Wheelhouse was not upgraded: ${r.error}.`);
|
|
799
|
+
return;
|
|
800
|
+
}
|
|
801
|
+
job.to = r.to;
|
|
802
|
+
job.step = "restart";
|
|
803
|
+
job.state = "restarting";
|
|
804
|
+
this.log(`Upgraded Wheelhouse to ${r.to.slice(0, 7)}; restarting.`);
|
|
805
|
+
restartSoon();
|
|
806
|
+
}).catch((e) => {
|
|
807
|
+
job.state = "failed";
|
|
808
|
+
job.error = e.message;
|
|
809
|
+
}).finally(() => {
|
|
810
|
+
if (job.state === "failed") this.s.changing = null;
|
|
811
|
+
});
|
|
812
|
+
return { ok: true };
|
|
813
|
+
}
|
|
814
|
+
/** Check every installed plugin now; a check under way is shared. */
|
|
815
|
+
checkPlugins() {
|
|
816
|
+
if (this.s.pluginsChecking) return this.s.pluginsChecking;
|
|
817
|
+
this.s.pluginsChecking = checkPlugins(defaultPluginsDir(this.deps.env), {
|
|
818
|
+
...this.deps.plugins,
|
|
819
|
+
now: () => new Date(this.now())
|
|
820
|
+
}).then((v) => this.s.plugins = v).finally(() => this.s.pluginsChecking = null);
|
|
821
|
+
return this.s.pluginsChecking;
|
|
822
|
+
}
|
|
823
|
+
/** The installed plugins' update state; checks in the background when stale. */
|
|
824
|
+
async plugins() {
|
|
825
|
+
if (!this.s.pluginsChecking && this.stale(this.s.plugins?.checkedAt)) {
|
|
826
|
+
void this.checkPlugins().catch(() => {
|
|
827
|
+
});
|
|
828
|
+
}
|
|
829
|
+
return {
|
|
830
|
+
...this.s.plugins ?? {
|
|
831
|
+
schema: "wheelhouse-plugin-updates.v1",
|
|
832
|
+
checkedAt: null,
|
|
833
|
+
plugins: [],
|
|
834
|
+
error: null
|
|
835
|
+
},
|
|
836
|
+
checking: this.s.pluginsChecking !== null,
|
|
837
|
+
busy: await this.deps.busy?.() ?? []
|
|
838
|
+
};
|
|
839
|
+
}
|
|
840
|
+
inspectInstall(repo, ref) {
|
|
841
|
+
return inspect(ref ? `${repo}@${ref}` : repo, this.pluginDeps());
|
|
842
|
+
}
|
|
843
|
+
/** `ref` moves it to that tag, branch or commit; null keeps the one it was installed from. */
|
|
844
|
+
inspectUpdate(id, ref) {
|
|
845
|
+
return inspectUpdate(id, this.pluginDeps(), ref ? { ref } : {});
|
|
846
|
+
}
|
|
847
|
+
/** Install what a look-up showed (exactly that commit), keep its settings, then restart. */
|
|
848
|
+
installPlugin(o) {
|
|
849
|
+
return this.change(
|
|
850
|
+
`installing ${o.repo}`,
|
|
851
|
+
() => install(o.ref ? `${o.repo}@${o.ref}` : o.repo, this.pluginDeps(), {
|
|
852
|
+
yes: true,
|
|
853
|
+
expect: o.commit,
|
|
854
|
+
settings: pairs(o.settings)
|
|
855
|
+
})
|
|
856
|
+
);
|
|
857
|
+
}
|
|
858
|
+
/** Update `id` to what a look-up showed (exactly that commit), keep new settings, then restart. */
|
|
859
|
+
updatePlugin(id, o) {
|
|
860
|
+
return this.change(
|
|
861
|
+
`updating ${id}`,
|
|
862
|
+
() => update(id, this.pluginDeps(), {
|
|
863
|
+
yes: true,
|
|
864
|
+
expect: o.commit,
|
|
865
|
+
...o.ref ? { ref: o.ref } : {},
|
|
866
|
+
settings: pairs(o.settings)
|
|
867
|
+
})
|
|
868
|
+
);
|
|
869
|
+
}
|
|
870
|
+
/** Turn an installed plugin that is off back on (as `wheelhouse plugin enable`), then restart to load it. */
|
|
871
|
+
loadPlugin(id) {
|
|
872
|
+
return this.change(
|
|
873
|
+
`turning on ${id}`,
|
|
874
|
+
() => setEnabled(id, true, this.pluginDeps(), { yes: true })
|
|
875
|
+
);
|
|
876
|
+
}
|
|
877
|
+
async change(what, work) {
|
|
878
|
+
const refused = this.refuseChange();
|
|
879
|
+
if (refused) return { ok: false, error: refused };
|
|
880
|
+
this.s.changing = what;
|
|
881
|
+
let r;
|
|
882
|
+
try {
|
|
883
|
+
r = await work();
|
|
884
|
+
} catch (e) {
|
|
885
|
+
this.s.changing = null;
|
|
886
|
+
throw e;
|
|
887
|
+
}
|
|
888
|
+
if (!r.ok) {
|
|
889
|
+
this.s.changing = null;
|
|
890
|
+
return r;
|
|
891
|
+
}
|
|
892
|
+
this.s.plugins = null;
|
|
893
|
+
this.log(`Wheelhouse is restarting after ${what}.`);
|
|
894
|
+
restartSoon();
|
|
895
|
+
return { ok: true, restarting: true };
|
|
896
|
+
}
|
|
897
|
+
/** Forget everything (tests). */
|
|
898
|
+
reset() {
|
|
899
|
+
this.s = fresh();
|
|
900
|
+
}
|
|
901
|
+
}
|
|
902
|
+
const pairs = (settings) => Object.entries(settings).map(([k, v]) => `${k}=${v}`);
|
|
903
|
+
const KEY = /* @__PURE__ */ Symbol.for("wheelhouse.updates");
|
|
904
|
+
const g = globalThis;
|
|
905
|
+
function updateService() {
|
|
906
|
+
g[KEY] ??= new UpdateService({
|
|
907
|
+
env: process.env,
|
|
908
|
+
busy: async () => (await import('./runtime.js-BuGWYyZZ.js').then((n) => n.S)).busyRuntime()
|
|
909
|
+
});
|
|
910
|
+
return g[KEY];
|
|
911
|
+
}
|
|
912
|
+
|
|
913
|
+
export { updateService as u };
|
|
914
|
+
//# sourceMappingURL=service.js-DQK1kj-4.js.map
|