@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
|
@@ -1,1561 +0,0 @@
|
|
|
1
|
-
import { af as head, aj as escape_html, ai as attr, aa as ensure_array_like, ak as stringify, ah as attr_class, _ as derived, a6 as bind_props, ae as spread_props, m as is_array, l as get_prototype_of, o as object_prototype } from '../../../chunks/index.js-Bn6j9diM.js';
|
|
2
|
-
import { g as goto } from '../../../chunks/client.js-BUNengrw.js';
|
|
3
|
-
import { B as Button } from '../../../chunks/button.js-HeBqLheH.js';
|
|
4
|
-
import { a as currentFleet } from '../../../chunks/live.svelte.js-BRUTNc9D.js';
|
|
5
|
-
import { S as SESSION_HEADER } from '../../../chunks/messages.js-CFyGKoqq.js';
|
|
6
|
-
import { h as html, c as composerBus } from '../../../chunks/bus.svelte.js-DRTptEhF.js';
|
|
7
|
-
import { D as DictateTextarea } from '../../../chunks/DictateTextarea.js-BlEnOzcN.js';
|
|
8
|
-
import '../_page.svelte.js-BI4c5H0n.js';
|
|
9
|
-
import { d as dictation } from '../../../chunks/MicButton.js-BZSQAyuM.js';
|
|
10
|
-
import { L as Loader_circle } from '../../../chunks/loader-circle.js-IYRaUYWq.js';
|
|
11
|
-
import { R as Rotate_ccw, P as Plus, T as Trash } from '../../../chunks/trash.js-DYFbRevY.js';
|
|
12
|
-
import { A as Arrow_up } from '../../../chunks/arrow-up.js-AhghNbhW.js';
|
|
13
|
-
import { C as Compass } from '../../../chunks/compass.js-Tq6uiG8I.js';
|
|
14
|
-
import { t as tick } from '../../../chunks/index-server.js-CtyUzIGY.js';
|
|
15
|
-
import { h as specTitle, S as SPEC_SECTIONS, j as sectionFilled, d as specMessage, g as specMarkdown, k as sectionMarkdown, s as summarize } from '../../../chunks/spec.js-B0yI1XqG.js';
|
|
16
|
-
import { X } from '../../../chunks/x.js-tlds9Ooz.js';
|
|
17
|
-
import { I as Icon } from '../../../chunks/Icon.js-D7CY3joB.js';
|
|
18
|
-
import { A as Arrow_left } from '../../../chunks/arrow-left.js-6Yey35CE.js';
|
|
19
|
-
import { A as Arrow_right } from '../../../chunks/arrow-right.js-CfbPWRqu.js';
|
|
20
|
-
import { C as Check } from '../../../chunks/check.js-bmUhmMEz.js';
|
|
21
|
-
import { a as ago } from '../../../chunks/format.js-D3lWEg6U.js';
|
|
22
|
-
import { C as Chevron_down } from '../../../chunks/chevron-down.js-D75hVSIe.js';
|
|
23
|
-
import { H as Hammer } from '../../../chunks/hammer.js-fp_Kidfj.js';
|
|
24
|
-
import '../../../chunks/utils.js-DTSGDHlH.js';
|
|
25
|
-
import '../../../chunks/utils2.js-BQzn9ikS.js';
|
|
26
|
-
import '../../../chunks/exports.js-BZBK1HC9.js';
|
|
27
|
-
import '../../../chunks/root.js-CQzYN4Pu.js';
|
|
28
|
-
import '../../../chunks/index2.js-CXaRTuov.js';
|
|
29
|
-
import '../../../chunks/slots.svelte.js-0Ejhe-hS.js';
|
|
30
|
-
import '../../../chunks/keys.js-CdtCzv-v.js';
|
|
31
|
-
import '../../../chunks/harbour.js-xu7EfIHk.js';
|
|
32
|
-
import '../../../chunks/chat.svelte.js-Cgdbtjbw.js';
|
|
33
|
-
import '../../../chunks/blocks.js-BL9jLCe-.js';
|
|
34
|
-
import 'yaml';
|
|
35
|
-
import '../../../chunks/SlotContent.js-YqZXXtRz.js';
|
|
36
|
-
import '../../../chunks/external-link.js-WxVF0xXO.js';
|
|
37
|
-
import '../../../chunks/git-pull-request.js-Cx1w8BQr.js';
|
|
38
|
-
import '../../../chunks/index-server2.js-DMc-UvjC.js';
|
|
39
|
-
import '../../../chunks/anchor.js-ByXDBfbi.js';
|
|
40
|
-
import '../../../chunks/triangle-alert.js-DuE40HSU.js';
|
|
41
|
-
import '../../../chunks/file-text.js-CAo3vdqd.js';
|
|
42
|
-
import '../../../chunks/square-terminal.js-D5Z4Sl2-.js';
|
|
43
|
-
import '../../../chunks/split.js-BsCU24rQ.js';
|
|
44
|
-
import '../../../chunks/message-square-text.js-N5uEmy8L.js';
|
|
45
|
-
import '../../../chunks/hand.js-xkYPYJZj.js';
|
|
46
|
-
import '../../../chunks/circle-dashed.js-Bm3gZCXK.js';
|
|
47
|
-
import '../../../chunks/chevron-right.js-yhLg_GaH.js';
|
|
48
|
-
import '../../../chunks/message-circle-question-mark.js-DwrMi0ty.js';
|
|
49
|
-
import '../../../chunks/gauge.js-Dw9bgE72.js';
|
|
50
|
-
import '../../../chunks/insights.js-CzzfyHGp.js';
|
|
51
|
-
import '../../../chunks/EtaLine.js-Pa4_VV6V.js';
|
|
52
|
-
import '../../../chunks/checks.js-BnIxIaus.js';
|
|
53
|
-
import '../../../chunks/clock.js-D7JTvRbC.js';
|
|
54
|
-
import '../../../chunks/StageTrack.js-BaorW-yk.js';
|
|
55
|
-
import '../../../chunks/tone.js-r2qFVrZC.js';
|
|
56
|
-
import '../../../chunks/AllowanceMeter.js-C9jRsAGU.js';
|
|
57
|
-
import '../../../chunks/TimeBar.js-k38rc7ZI.js';
|
|
58
|
-
import '../../../chunks/inbox.svelte.js-OoKhjjWM.js';
|
|
59
|
-
import '../../../chunks/inbox.js-CW2sFmx9.js';
|
|
60
|
-
import '../../../chunks/DecisionCard.js-u1VQ9s_v.js';
|
|
61
|
-
import '../../../chunks/monitor-play.js-B7qbbPH6.js';
|
|
62
|
-
import '../../../chunks/scale.js-vP4G0lZM.js';
|
|
63
|
-
import '../../../chunks/message-square.js-Hp-6BHgG.js';
|
|
64
|
-
|
|
65
|
-
const empty = [];
|
|
66
|
-
function snapshot(value, skip_warning = false, no_tojson = false) {
|
|
67
|
-
return clone(value, /* @__PURE__ */ new Map(), "", empty, null, no_tojson);
|
|
68
|
-
}
|
|
69
|
-
function clone(value, cloned, path, paths, original = null, no_tojson = false) {
|
|
70
|
-
if (typeof value === "object" && value !== null) {
|
|
71
|
-
var unwrapped = cloned.get(value);
|
|
72
|
-
if (unwrapped !== void 0) return unwrapped;
|
|
73
|
-
if (value instanceof Map) return (
|
|
74
|
-
/** @type {Snapshot<T>} */
|
|
75
|
-
new Map(value)
|
|
76
|
-
);
|
|
77
|
-
if (value instanceof Set) return (
|
|
78
|
-
/** @type {Snapshot<T>} */
|
|
79
|
-
new Set(value)
|
|
80
|
-
);
|
|
81
|
-
if (is_array(value)) {
|
|
82
|
-
var copy = (
|
|
83
|
-
/** @type {Snapshot<any>} */
|
|
84
|
-
Array(value.length)
|
|
85
|
-
);
|
|
86
|
-
cloned.set(value, copy);
|
|
87
|
-
if (original !== null) {
|
|
88
|
-
cloned.set(original, copy);
|
|
89
|
-
}
|
|
90
|
-
for (var i = 0; i < value.length; i += 1) {
|
|
91
|
-
var element = value[i];
|
|
92
|
-
if (i in value) {
|
|
93
|
-
copy[i] = clone(element, cloned, path, paths, null, no_tojson);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
return copy;
|
|
97
|
-
}
|
|
98
|
-
if (get_prototype_of(value) === object_prototype) {
|
|
99
|
-
copy = {};
|
|
100
|
-
cloned.set(value, copy);
|
|
101
|
-
if (original !== null) {
|
|
102
|
-
cloned.set(original, copy);
|
|
103
|
-
}
|
|
104
|
-
for (var key of Object.keys(value)) {
|
|
105
|
-
copy[key] = clone(
|
|
106
|
-
// @ts-expect-error
|
|
107
|
-
value[key],
|
|
108
|
-
cloned,
|
|
109
|
-
path,
|
|
110
|
-
paths,
|
|
111
|
-
null,
|
|
112
|
-
no_tojson
|
|
113
|
-
);
|
|
114
|
-
}
|
|
115
|
-
return copy;
|
|
116
|
-
}
|
|
117
|
-
if (value instanceof Date) {
|
|
118
|
-
value.getTime();
|
|
119
|
-
return (
|
|
120
|
-
/** @type {Snapshot<T>} */
|
|
121
|
-
structuredClone(value)
|
|
122
|
-
);
|
|
123
|
-
}
|
|
124
|
-
if (typeof /** @type {T & { toJSON?: any } } */
|
|
125
|
-
value.toJSON === "function" && !no_tojson) {
|
|
126
|
-
return clone(
|
|
127
|
-
/** @type {T & { toJSON(): any } } */
|
|
128
|
-
value.toJSON(),
|
|
129
|
-
cloned,
|
|
130
|
-
path,
|
|
131
|
-
paths,
|
|
132
|
-
// Associate the instance with the toJSON clone
|
|
133
|
-
value
|
|
134
|
-
);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
if (value instanceof EventTarget) {
|
|
138
|
-
return (
|
|
139
|
-
/** @type {Snapshot<T>} */
|
|
140
|
-
value
|
|
141
|
-
);
|
|
142
|
-
}
|
|
143
|
-
try {
|
|
144
|
-
return (
|
|
145
|
-
/** @type {Snapshot<T>} */
|
|
146
|
-
structuredClone(value)
|
|
147
|
-
);
|
|
148
|
-
} catch (e) {
|
|
149
|
-
return (
|
|
150
|
-
/** @type {Snapshot<T>} */
|
|
151
|
-
value
|
|
152
|
-
);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
function File_plus_corner($$renderer, $$props) {
|
|
156
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
157
|
-
const iconData = {
|
|
158
|
-
"name": "file-plus-corner",
|
|
159
|
-
"size": 24,
|
|
160
|
-
"node": [
|
|
161
|
-
[
|
|
162
|
-
"path",
|
|
163
|
-
{
|
|
164
|
-
"d": "M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35"
|
|
165
|
-
}
|
|
166
|
-
],
|
|
167
|
-
["path", { "d": "M14 2v5a1 1 0 0 0 1 1h5" }],
|
|
168
|
-
["path", { "d": "M14 19h6" }],
|
|
169
|
-
["path", { "d": "M17 16v6" }]
|
|
170
|
-
],
|
|
171
|
-
"aliases": ["file-plus-2"]
|
|
172
|
-
};
|
|
173
|
-
Icon($$renderer, spread_props([props, { icon: iconData }]));
|
|
174
|
-
}
|
|
175
|
-
function Image_plus($$renderer, $$props) {
|
|
176
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
177
|
-
const iconData = {
|
|
178
|
-
"name": "image-plus",
|
|
179
|
-
"size": 24,
|
|
180
|
-
"node": [
|
|
181
|
-
["path", { "d": "M16 5h6" }],
|
|
182
|
-
["path", { "d": "M19 2v6" }],
|
|
183
|
-
[
|
|
184
|
-
"path",
|
|
185
|
-
{
|
|
186
|
-
"d": "M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5"
|
|
187
|
-
}
|
|
188
|
-
],
|
|
189
|
-
["path", { "d": "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21" }],
|
|
190
|
-
["circle", { "cx": "9", "cy": "9", "r": "2" }]
|
|
191
|
-
]
|
|
192
|
-
};
|
|
193
|
-
Icon($$renderer, spread_props([props, { icon: iconData }]));
|
|
194
|
-
}
|
|
195
|
-
function Message_square_plus($$renderer, $$props) {
|
|
196
|
-
let { $$slots, $$events, ...props } = $$props;
|
|
197
|
-
const iconData = {
|
|
198
|
-
"name": "message-square-plus",
|
|
199
|
-
"size": 24,
|
|
200
|
-
"node": [
|
|
201
|
-
[
|
|
202
|
-
"path",
|
|
203
|
-
{
|
|
204
|
-
"d": "M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"
|
|
205
|
-
}
|
|
206
|
-
],
|
|
207
|
-
["path", { "d": "M12 8v6" }],
|
|
208
|
-
["path", { "d": "M9 11h6" }]
|
|
209
|
-
]
|
|
210
|
-
};
|
|
211
|
-
Icon($$renderer, spread_props([props, { icon: iconData }]));
|
|
212
|
-
}
|
|
213
|
-
function agentHead($$renderer) {
|
|
214
|
-
$$renderer.push(`<span class="flex size-7 shrink-0 items-center justify-center rounded-full border border-brass bg-card text-sea" aria-hidden="true">`);
|
|
215
|
-
Compass($$renderer, { class: "size-4" });
|
|
216
|
-
$$renderer.push(`<!----></span>`);
|
|
217
|
-
}
|
|
218
|
-
function Interview($$renderer, $$props) {
|
|
219
|
-
$$renderer.component(($$renderer2) => {
|
|
220
|
-
let {
|
|
221
|
-
draft,
|
|
222
|
-
busy,
|
|
223
|
-
streaming,
|
|
224
|
-
activity,
|
|
225
|
-
error,
|
|
226
|
-
pending,
|
|
227
|
-
model,
|
|
228
|
-
effort,
|
|
229
|
-
onAnswer,
|
|
230
|
-
onRetry
|
|
231
|
-
/** The agent's message so far, while it writes. */
|
|
232
|
-
/** What the agent is looking at in the project, while it does. */
|
|
233
|
-
/** What the captain just said, shown until the interview's record of it arrives. */
|
|
234
|
-
} = $$props;
|
|
235
|
-
let answer = "";
|
|
236
|
-
const turns = derived(() => draft.interview.turns);
|
|
237
|
-
const started = derived(() => turns().length > 0);
|
|
238
|
-
const last = derived(() => turns().at(-1));
|
|
239
|
-
const offered = derived(() => !busy && last()?.role === "agent" ? last() : null);
|
|
240
|
-
const unanswered = derived(() => !busy && last()?.role === "captain");
|
|
241
|
-
const usage = derived(() => draft.interview.usage);
|
|
242
|
-
async function send() {
|
|
243
|
-
if (dictation.phase !== "idle") dictation.commit();
|
|
244
|
-
const text = answer.trim();
|
|
245
|
-
if (!text || busy) return;
|
|
246
|
-
const before = answer;
|
|
247
|
-
answer = "";
|
|
248
|
-
if (!await onAnswer(text)) answer = before;
|
|
249
|
-
}
|
|
250
|
-
function onkeydown(e) {
|
|
251
|
-
if (e.key === "Enter" && !e.shiftKey && !e.isComposing) {
|
|
252
|
-
e.preventDefault();
|
|
253
|
-
void send();
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
const tokens = (n) => n >= 1e3 ? `${(n / 1e3).toFixed(1)}k` : String(n);
|
|
257
|
-
const usageNote = derived(() => usage().turns ? ` · ${usage().turns} turn${usage().turns === 1 ? "" : "s"}, ${tokens(usage().inputTokens)} tokens in, ${tokens(usage().outputTokens)} out${usage().costUsd > 0 ? `, about $${usage().costUsd.toFixed(2)} at API prices` : ""}` : "");
|
|
258
|
-
let $$settled = true;
|
|
259
|
-
let $$inner_renderer;
|
|
260
|
-
function $$render_inner($$renderer3) {
|
|
261
|
-
$$renderer3.push(`<div class="flex min-h-0 flex-col"><div class="max-h-[65dvh] min-h-0 flex-1 space-y-5 overflow-y-auto pr-1 xl:max-h-[calc(100dvh-20rem)]" aria-live="polite"${attr("aria-busy", busy)}>`);
|
|
262
|
-
if (!started()) {
|
|
263
|
-
$$renderer3.push(`<!--[0--><div class="rounded-lg border border-dashed border-hair p-5"><h2 class="font-display text-xl font-medium">What do you want built?</h2> <p class="mt-2 max-w-prose text-sm text-muted-foreground">Describe the idea in a sentence or two. The interviewer asks one question at a time,
|
|
264
|
-
offers answers with the one it recommends, and writes the spec alongside as you go.
|
|
265
|
-
Comment on anything in the spec and it will be addressed. When it is ready, send it to
|
|
266
|
-
build.</p></div>`);
|
|
267
|
-
} else {
|
|
268
|
-
$$renderer3.push("<!--[-1-->");
|
|
269
|
-
}
|
|
270
|
-
$$renderer3.push(`<!--]--> <!--[-->`);
|
|
271
|
-
const each_array = ensure_array_like(turns());
|
|
272
|
-
for (let i = 0, $$length = each_array.length; i < $$length; i++) {
|
|
273
|
-
let t = each_array[i];
|
|
274
|
-
if (t.role === "agent") {
|
|
275
|
-
$$renderer3.push(`<!--[0--><div class="flex items-start gap-3">`);
|
|
276
|
-
agentHead($$renderer3);
|
|
277
|
-
$$renderer3.push(`<!----> <div class="min-w-0 flex-1"><p class="mb-1 text-xs text-muted-foreground"><span class="font-semibold text-foreground">Interviewer</span></p> <div class="bubble bubble-firstmate chat-md text-[0.95rem]">`);
|
|
278
|
-
{
|
|
279
|
-
$$renderer3.push(`<!--[-1-->${escape_html(t.text)}`);
|
|
280
|
-
}
|
|
281
|
-
$$renderer3.push(`<!--]--></div> `);
|
|
282
|
-
if (offered() === t && t.options.length) {
|
|
283
|
-
$$renderer3.push(`<!--[0--><div class="mt-2 flex flex-wrap gap-2" role="group" aria-label="Suggested answers"><!--[-->`);
|
|
284
|
-
const each_array_1 = ensure_array_like(t.options);
|
|
285
|
-
for (let k = 0, $$length2 = each_array_1.length; k < $$length2; k++) {
|
|
286
|
-
let o = each_array_1[k];
|
|
287
|
-
$$renderer3.push(`<button${attr_class(`rounded-md border px-3 py-1.5 text-left text-sm hover:bg-accent ${t.recommended === k ? "border-brass bg-card" : "border-hair bg-card"}`)}>${escape_html(o)} `);
|
|
288
|
-
if (t.recommended === k) {
|
|
289
|
-
$$renderer3.push(`<!--[0--><span class="ml-1.5 text-[0.7rem] font-medium tracking-wide text-brass uppercase">Recommended</span>`);
|
|
290
|
-
} else {
|
|
291
|
-
$$renderer3.push("<!--[-1-->");
|
|
292
|
-
}
|
|
293
|
-
$$renderer3.push(`<!--]--></button>`);
|
|
294
|
-
}
|
|
295
|
-
$$renderer3.push(`<!--]--></div>`);
|
|
296
|
-
} else {
|
|
297
|
-
$$renderer3.push("<!--[-1-->");
|
|
298
|
-
}
|
|
299
|
-
$$renderer3.push(`<!--]--></div></div>`);
|
|
300
|
-
} else {
|
|
301
|
-
$$renderer3.push(`<!--[-1--><div class="flex justify-end"><div class="bubble bubble-captain max-w-[85%] text-[0.95rem]">${escape_html(t.text)}</div></div>`);
|
|
302
|
-
}
|
|
303
|
-
$$renderer3.push(`<!--]-->`);
|
|
304
|
-
}
|
|
305
|
-
$$renderer3.push(`<!--]--> `);
|
|
306
|
-
if (pending) {
|
|
307
|
-
$$renderer3.push(`<!--[0--><div class="flex justify-end"><div class="bubble bubble-captain max-w-[85%] text-[0.95rem]">${escape_html(pending)}</div></div>`);
|
|
308
|
-
} else {
|
|
309
|
-
$$renderer3.push("<!--[-1-->");
|
|
310
|
-
}
|
|
311
|
-
$$renderer3.push(`<!--]--> `);
|
|
312
|
-
if (busy) {
|
|
313
|
-
$$renderer3.push(`<!--[0--><div class="flex items-start gap-3">`);
|
|
314
|
-
agentHead($$renderer3);
|
|
315
|
-
$$renderer3.push(`<!----> <div class="min-w-0 flex-1"><p class="mb-1 flex items-center gap-2 text-xs text-muted-foreground"><span class="font-semibold text-foreground">Interviewer</span> `);
|
|
316
|
-
Loader_circle($$renderer3, { class: "size-3 animate-spin", "aria-hidden": "true" });
|
|
317
|
-
$$renderer3.push(`<!----> ${escape_html(activity ?? (streaming ? "Writing…" : "Thinking…"))}</p> `);
|
|
318
|
-
if (streaming) {
|
|
319
|
-
$$renderer3.push(`<!--[0--><div class="bubble bubble-firstmate chat-md text-[0.95rem]">`);
|
|
320
|
-
{
|
|
321
|
-
$$renderer3.push(`<!--[-1-->${escape_html(streaming)}`);
|
|
322
|
-
}
|
|
323
|
-
$$renderer3.push(`<!--]--></div>`);
|
|
324
|
-
} else {
|
|
325
|
-
$$renderer3.push("<!--[-1-->");
|
|
326
|
-
}
|
|
327
|
-
$$renderer3.push(`<!--]--></div></div>`);
|
|
328
|
-
} else {
|
|
329
|
-
$$renderer3.push("<!--[-1-->");
|
|
330
|
-
}
|
|
331
|
-
$$renderer3.push(`<!--]--> `);
|
|
332
|
-
if (draft.interview.done && !busy && last()?.role === "agent") {
|
|
333
|
-
$$renderer3.push(`<!--[0--><p class="rounded-md border border-sea/40 bg-sea/5 px-4 py-3 text-sm">The interviewer thinks the spec is ready. Read it over, comment on anything that is off, and
|
|
334
|
-
send it to build when you are happy. You can keep answering to add more.</p>`);
|
|
335
|
-
} else {
|
|
336
|
-
$$renderer3.push("<!--[-1-->");
|
|
337
|
-
}
|
|
338
|
-
$$renderer3.push(`<!--]--> `);
|
|
339
|
-
if (error) {
|
|
340
|
-
$$renderer3.push(`<!--[0--><div class="flex flex-wrap items-center gap-3 rounded-md border border-danger/30 bg-danger/5 px-4 py-3" role="alert"><p class="min-w-0 flex-1 text-sm text-danger">${escape_html(error)}</p> `);
|
|
341
|
-
if (unanswered()) {
|
|
342
|
-
$$renderer3.push("<!--[0-->");
|
|
343
|
-
Button($$renderer3, {
|
|
344
|
-
variant: "outline",
|
|
345
|
-
size: "sm",
|
|
346
|
-
onclick: onRetry,
|
|
347
|
-
children: ($$renderer4) => {
|
|
348
|
-
Rotate_ccw($$renderer4, { "aria-hidden": "true" });
|
|
349
|
-
$$renderer4.push(`<!---->Try again`);
|
|
350
|
-
},
|
|
351
|
-
$$slots: { default: true }
|
|
352
|
-
});
|
|
353
|
-
} else {
|
|
354
|
-
$$renderer3.push("<!--[-1-->");
|
|
355
|
-
}
|
|
356
|
-
$$renderer3.push(`<!--]--></div>`);
|
|
357
|
-
} else if (unanswered()) {
|
|
358
|
-
$$renderer3.push(`<!--[1--><div class="flex items-center gap-3 text-sm text-muted-foreground">Your last answer has no reply yet. `);
|
|
359
|
-
Button($$renderer3, {
|
|
360
|
-
variant: "outline",
|
|
361
|
-
size: "sm",
|
|
362
|
-
onclick: onRetry,
|
|
363
|
-
children: ($$renderer4) => {
|
|
364
|
-
Rotate_ccw($$renderer4, { "aria-hidden": "true" });
|
|
365
|
-
$$renderer4.push(`<!---->Ask the interviewer`);
|
|
366
|
-
},
|
|
367
|
-
$$slots: { default: true }
|
|
368
|
-
});
|
|
369
|
-
$$renderer3.push(`<!----></div>`);
|
|
370
|
-
} else {
|
|
371
|
-
$$renderer3.push("<!--[-1-->");
|
|
372
|
-
}
|
|
373
|
-
$$renderer3.push(`<!--]--></div> <div class="mt-4 border-t border-hair pt-4"><label for="spec-answer" class="sr-only">${escape_html(started() ? "Your answer" : "What you want built")}</label> <div class="flex items-end gap-2"><div class="min-w-0 flex-1">`);
|
|
374
|
-
DictateTextarea($$renderer3, {
|
|
375
|
-
id: "spec-answer",
|
|
376
|
-
"data-answer": true,
|
|
377
|
-
rows: started() ? 2 : 3,
|
|
378
|
-
placeholder: started() ? "Answer in your own words, or pick a suggestion…" : "e.g. Let a family add their trip photos to one shared album",
|
|
379
|
-
onkeydown,
|
|
380
|
-
class: "bg-card text-[0.95rem]",
|
|
381
|
-
get value() {
|
|
382
|
-
return answer;
|
|
383
|
-
},
|
|
384
|
-
set value($$value) {
|
|
385
|
-
answer = $$value;
|
|
386
|
-
$$settled = false;
|
|
387
|
-
}
|
|
388
|
-
});
|
|
389
|
-
$$renderer3.push(`<!----></div> `);
|
|
390
|
-
Button($$renderer3, {
|
|
391
|
-
size: "icon",
|
|
392
|
-
onclick: send,
|
|
393
|
-
disabled: busy || !answer.trim(),
|
|
394
|
-
"aria-label": started() ? "Send answer" : "Start the interview",
|
|
395
|
-
title: "Send (Enter)",
|
|
396
|
-
children: ($$renderer4) => {
|
|
397
|
-
if (busy) {
|
|
398
|
-
$$renderer4.push("<!--[0-->");
|
|
399
|
-
Loader_circle($$renderer4, { class: "animate-spin", "aria-hidden": "true" });
|
|
400
|
-
} else {
|
|
401
|
-
$$renderer4.push("<!--[-1-->");
|
|
402
|
-
Arrow_up($$renderer4, { "aria-hidden": "true" });
|
|
403
|
-
}
|
|
404
|
-
$$renderer4.push(`<!--]-->`);
|
|
405
|
-
},
|
|
406
|
-
$$slots: { default: true }
|
|
407
|
-
});
|
|
408
|
-
$$renderer3.push(`<!----></div> <p class="mt-2 text-xs text-muted-foreground">Enter sends, Shift+Enter starts a new line. Interviewer: Claude ${escape_html(model)}, ${escape_html(effort)} effort, read-only${escape_html(usageNote())}.</p></div></div>`);
|
|
409
|
-
}
|
|
410
|
-
do {
|
|
411
|
-
$$settled = true;
|
|
412
|
-
$$inner_renderer = $$renderer2.copy();
|
|
413
|
-
$$render_inner($$inner_renderer);
|
|
414
|
-
} while (!$$settled);
|
|
415
|
-
$$renderer2.subsume($$inner_renderer);
|
|
416
|
-
});
|
|
417
|
-
}
|
|
418
|
-
function ListField($$renderer, $$props) {
|
|
419
|
-
$$renderer.component(($$renderer2) => {
|
|
420
|
-
let {
|
|
421
|
-
items = void 0,
|
|
422
|
-
label,
|
|
423
|
-
item,
|
|
424
|
-
addLabel,
|
|
425
|
-
placeholder,
|
|
426
|
-
numbered = false,
|
|
427
|
-
multiline = false
|
|
428
|
-
/** The list's name, e.g. "Requirements". */
|
|
429
|
-
/** One entry's name, e.g. "Requirement". */
|
|
430
|
-
} = $$props;
|
|
431
|
-
let list = void 0;
|
|
432
|
-
const entry = (i) => list?.querySelectorAll("[data-entry]")[i];
|
|
433
|
-
async function add(at = items.length) {
|
|
434
|
-
items = [...items.slice(0, at), "", ...items.slice(at)];
|
|
435
|
-
await tick();
|
|
436
|
-
}
|
|
437
|
-
async function remove(i) {
|
|
438
|
-
items = items.filter((_, j) => j !== i);
|
|
439
|
-
await tick();
|
|
440
|
-
entry(Math.min(i, items.length - 1))?.focus();
|
|
441
|
-
}
|
|
442
|
-
function onkeydown(e, i) {
|
|
443
|
-
if (e.key === "Enter" && !e.shiftKey && !e.isComposing && (!multiline || e.metaKey)) {
|
|
444
|
-
e.preventDefault();
|
|
445
|
-
void add(i + 1);
|
|
446
|
-
} else if (e.key === "Backspace" && !items[i] && items.length > 1) {
|
|
447
|
-
e.preventDefault();
|
|
448
|
-
void remove(i).then(() => entry(Math.max(0, i - 1))?.focus());
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
let $$settled = true;
|
|
452
|
-
let $$inner_renderer;
|
|
453
|
-
function $$render_inner($$renderer3) {
|
|
454
|
-
$$renderer3.push(`<fieldset class="min-w-0"><legend class="text-sm font-medium">${escape_html(label)}</legend> <p class="mt-0.5 text-xs text-muted-foreground">${escape_html(multiline ? "⌘ Enter" : "Enter")} adds another; an empty one is left out.</p> <ol class="mt-2 space-y-2"><!--[-->`);
|
|
455
|
-
const each_array = ensure_array_like(items);
|
|
456
|
-
for (let i = 0, $$length = each_array.length; i < $$length; i++) {
|
|
457
|
-
each_array[i];
|
|
458
|
-
$$renderer3.push(`<li class="flex items-start gap-2"><span class="tabular mt-2 w-6 shrink-0 text-right text-sm text-muted-foreground" aria-hidden="true">${escape_html(numbered ? `${i + 1}.` : "•")}</span> `);
|
|
459
|
-
if (multiline) {
|
|
460
|
-
$$renderer3.push("<!--[0-->");
|
|
461
|
-
DictateTextarea($$renderer3, {
|
|
462
|
-
"data-entry": true,
|
|
463
|
-
rows: 2,
|
|
464
|
-
placeholder,
|
|
465
|
-
"aria-label": `${stringify(item)} ${stringify(i + 1)}`,
|
|
466
|
-
class: "min-h-10 bg-card",
|
|
467
|
-
onkeydown: (e) => onkeydown(e, i),
|
|
468
|
-
get value() {
|
|
469
|
-
return items[i];
|
|
470
|
-
},
|
|
471
|
-
set value($$value) {
|
|
472
|
-
items[i] = $$value;
|
|
473
|
-
$$settled = false;
|
|
474
|
-
}
|
|
475
|
-
});
|
|
476
|
-
} else {
|
|
477
|
-
$$renderer3.push(`<!--[-1--><input data-entry=""${attr("value", items[i])}${attr("placeholder", placeholder)}${attr("aria-label", `${stringify(item)} ${stringify(i + 1)}`)} class="h-9 w-full min-w-0 rounded-md border border-input bg-card px-2.5 text-sm shadow-xs outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50"/>`);
|
|
478
|
-
}
|
|
479
|
-
$$renderer3.push(`<!--]--> <button type="button" class="mt-1 rounded-md p-1.5 text-muted-foreground hover:bg-muted hover:text-foreground"${attr("aria-label", `Remove ${stringify(item.toLowerCase())} ${stringify(i + 1)}`)}>`);
|
|
480
|
-
X($$renderer3, { class: "size-4" });
|
|
481
|
-
$$renderer3.push(`<!----></button></li>`);
|
|
482
|
-
}
|
|
483
|
-
$$renderer3.push(`<!--]--></ol> <button type="button" class="mt-2 inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-sm text-sea hover:bg-muted">`);
|
|
484
|
-
Plus($$renderer3, { class: "size-4", "aria-hidden": "true" });
|
|
485
|
-
$$renderer3.push(`<!---->${escape_html(addLabel)}</button></fieldset>`);
|
|
486
|
-
}
|
|
487
|
-
do {
|
|
488
|
-
$$settled = true;
|
|
489
|
-
$$inner_renderer = $$renderer2.copy();
|
|
490
|
-
$$render_inner($$inner_renderer);
|
|
491
|
-
} while (!$$settled);
|
|
492
|
-
$$renderer2.subsume($$inner_renderer);
|
|
493
|
-
bind_props($$props, { items });
|
|
494
|
-
});
|
|
495
|
-
}
|
|
496
|
-
function field($$renderer, id, label, hint) {
|
|
497
|
-
$$renderer.push(`<label${attr("for", id)} class="block text-sm font-medium">${escape_html(label)}</label> <p class="mt-0.5 text-xs text-muted-foreground">${escape_html(hint)}</p>`);
|
|
498
|
-
}
|
|
499
|
-
function SectionFields($$renderer, $$props) {
|
|
500
|
-
$$renderer.component(($$renderer2) => {
|
|
501
|
-
let {
|
|
502
|
-
draft,
|
|
503
|
-
section,
|
|
504
|
-
projects,
|
|
505
|
-
imageUrl,
|
|
506
|
-
uploading = false,
|
|
507
|
-
uploadError = null
|
|
508
|
-
/** Project names Firstmate knows, offered as suggestions. */
|
|
509
|
-
} = $$props;
|
|
510
|
-
const newProject = derived(() => !!draft.project.trim() && projects.length > 0 && !projects.some((p) => p.toLowerCase() === draft.project.trim().toLowerCase()));
|
|
511
|
-
let $$settled = true;
|
|
512
|
-
let $$inner_renderer;
|
|
513
|
-
function $$render_inner($$renderer3) {
|
|
514
|
-
$$renderer3.push(`<div class="space-y-6">`);
|
|
515
|
-
if (section === "project") {
|
|
516
|
-
$$renderer3.push(`<!--[0--><div>`);
|
|
517
|
-
field($$renderer3, "spec-project", "Project", "Pick one Firstmate knows, or type a new name.");
|
|
518
|
-
$$renderer3.push(`<!----> <input id="spec-project" class="h-9 w-full min-w-0 rounded-md border border-input bg-card px-2.5 text-sm shadow-xs outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 mt-2" list="spec-projects" autocomplete="off"${attr("value", draft.project)}/> <datalist id="spec-projects"><!--[-->`);
|
|
519
|
-
const each_array = ensure_array_like(projects);
|
|
520
|
-
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
521
|
-
let p = each_array[$$index];
|
|
522
|
-
$$renderer3.option({ value: p }, ($$renderer4) => {
|
|
523
|
-
});
|
|
524
|
-
}
|
|
525
|
-
$$renderer3.push(`<!--]--></datalist> `);
|
|
526
|
-
if (newProject()) {
|
|
527
|
-
$$renderer3.push(`<!--[0--><p class="mt-1.5 text-xs text-muted-foreground">A project Firstmate does not know yet; it will ask where it lives.</p>`);
|
|
528
|
-
} else {
|
|
529
|
-
$$renderer3.push("<!--[-1-->");
|
|
530
|
-
}
|
|
531
|
-
$$renderer3.push(`<!--]--></div> <div>`);
|
|
532
|
-
field($$renderer3, "spec-title", "Title", "A short name for the work.");
|
|
533
|
-
$$renderer3.push(`<!----> <input id="spec-title" class="h-9 w-full min-w-0 rounded-md border border-input bg-card px-2.5 text-sm shadow-xs outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 mt-2"${attr("value", draft.title)}/></div> <div>`);
|
|
534
|
-
field($$renderer3, "spec-summary", "In one sentence", "What it is, as you would say it aloud.");
|
|
535
|
-
$$renderer3.push(`<!----> `);
|
|
536
|
-
DictateTextarea($$renderer3, {
|
|
537
|
-
id: "spec-summary",
|
|
538
|
-
class: "mt-2 bg-card",
|
|
539
|
-
rows: 2,
|
|
540
|
-
get value() {
|
|
541
|
-
return draft.summary;
|
|
542
|
-
},
|
|
543
|
-
set value($$value) {
|
|
544
|
-
draft.summary = $$value;
|
|
545
|
-
$$settled = false;
|
|
546
|
-
}
|
|
547
|
-
});
|
|
548
|
-
$$renderer3.push(`<!----></div>`);
|
|
549
|
-
} else if (section === "problem") {
|
|
550
|
-
$$renderer3.push(`<!--[1--><div>`);
|
|
551
|
-
field($$renderer3, "spec-problem", "The problem", "What is wrong or missing today.");
|
|
552
|
-
$$renderer3.push(`<!----> `);
|
|
553
|
-
DictateTextarea($$renderer3, {
|
|
554
|
-
id: "spec-problem",
|
|
555
|
-
class: "mt-2 min-h-28 bg-card",
|
|
556
|
-
get value() {
|
|
557
|
-
return draft.problem;
|
|
558
|
-
},
|
|
559
|
-
set value($$value) {
|
|
560
|
-
draft.problem = $$value;
|
|
561
|
-
$$settled = false;
|
|
562
|
-
}
|
|
563
|
-
});
|
|
564
|
-
$$renderer3.push(`<!----></div> <div>`);
|
|
565
|
-
field($$renderer3, "spec-goal", "The goal", "What will be true once this is done.");
|
|
566
|
-
$$renderer3.push(`<!----> `);
|
|
567
|
-
DictateTextarea($$renderer3, {
|
|
568
|
-
id: "spec-goal",
|
|
569
|
-
class: "mt-2 min-h-24 bg-card",
|
|
570
|
-
get value() {
|
|
571
|
-
return draft.goal;
|
|
572
|
-
},
|
|
573
|
-
set value($$value) {
|
|
574
|
-
draft.goal = $$value;
|
|
575
|
-
$$settled = false;
|
|
576
|
-
}
|
|
577
|
-
});
|
|
578
|
-
$$renderer3.push(`<!----></div>`);
|
|
579
|
-
} else if (section === "audience") {
|
|
580
|
-
$$renderer3.push(`<!--[2--><div>`);
|
|
581
|
-
field($$renderer3, "spec-audience", "Who it is for", "Who uses it, what they are trying to get done, and how often.");
|
|
582
|
-
$$renderer3.push(`<!----> `);
|
|
583
|
-
DictateTextarea($$renderer3, {
|
|
584
|
-
id: "spec-audience",
|
|
585
|
-
class: "mt-2 min-h-32 bg-card",
|
|
586
|
-
get value() {
|
|
587
|
-
return draft.audience;
|
|
588
|
-
},
|
|
589
|
-
set value($$value) {
|
|
590
|
-
draft.audience = $$value;
|
|
591
|
-
$$settled = false;
|
|
592
|
-
}
|
|
593
|
-
});
|
|
594
|
-
$$renderer3.push(`<!----></div>`);
|
|
595
|
-
} else if (section === "journeys") {
|
|
596
|
-
$$renderer3.push("<!--[3-->");
|
|
597
|
-
ListField($$renderer3, {
|
|
598
|
-
label: "Journeys",
|
|
599
|
-
item: "Journey",
|
|
600
|
-
addLabel: "Add a journey",
|
|
601
|
-
placeholder: "Describe one journey, step by step",
|
|
602
|
-
numbered: true,
|
|
603
|
-
multiline: true,
|
|
604
|
-
get items() {
|
|
605
|
-
return draft.journeys;
|
|
606
|
-
},
|
|
607
|
-
set items($$value) {
|
|
608
|
-
draft.journeys = $$value;
|
|
609
|
-
$$settled = false;
|
|
610
|
-
}
|
|
611
|
-
});
|
|
612
|
-
} else if (section === "scope") {
|
|
613
|
-
$$renderer3.push(`<!--[4--><div>`);
|
|
614
|
-
field($$renderer3, "spec-scope", "In scope", "What this piece of work includes.");
|
|
615
|
-
$$renderer3.push(`<!----> `);
|
|
616
|
-
DictateTextarea($$renderer3, {
|
|
617
|
-
id: "spec-scope",
|
|
618
|
-
class: "mt-2 min-h-24 bg-card",
|
|
619
|
-
get value() {
|
|
620
|
-
return draft.scope;
|
|
621
|
-
},
|
|
622
|
-
set value($$value) {
|
|
623
|
-
draft.scope = $$value;
|
|
624
|
-
$$settled = false;
|
|
625
|
-
}
|
|
626
|
-
});
|
|
627
|
-
$$renderer3.push(`<!----></div> <div>`);
|
|
628
|
-
field($$renderer3, "spec-non-goals", "Not in scope", "What it deliberately leaves for later.");
|
|
629
|
-
$$renderer3.push(`<!----> `);
|
|
630
|
-
DictateTextarea($$renderer3, {
|
|
631
|
-
id: "spec-non-goals",
|
|
632
|
-
class: "mt-2 min-h-24 bg-card",
|
|
633
|
-
get value() {
|
|
634
|
-
return draft.nonGoals;
|
|
635
|
-
},
|
|
636
|
-
set value($$value) {
|
|
637
|
-
draft.nonGoals = $$value;
|
|
638
|
-
$$settled = false;
|
|
639
|
-
}
|
|
640
|
-
});
|
|
641
|
-
$$renderer3.push(`<!----></div>`);
|
|
642
|
-
} else if (section === "requirements") {
|
|
643
|
-
$$renderer3.push("<!--[5-->");
|
|
644
|
-
ListField($$renderer3, {
|
|
645
|
-
label: "Requirements",
|
|
646
|
-
item: "Requirement",
|
|
647
|
-
addLabel: "Add a requirement",
|
|
648
|
-
placeholder: "One thing that must be true when it is done",
|
|
649
|
-
get items() {
|
|
650
|
-
return draft.requirements;
|
|
651
|
-
},
|
|
652
|
-
set items($$value) {
|
|
653
|
-
draft.requirements = $$value;
|
|
654
|
-
$$settled = false;
|
|
655
|
-
}
|
|
656
|
-
});
|
|
657
|
-
} else if (section === "ui") {
|
|
658
|
-
$$renderer3.push(`<!--[6--><div>`);
|
|
659
|
-
field($$renderer3, "spec-ui", "Look and feel", "Layout, tone, anything to match or avoid.");
|
|
660
|
-
$$renderer3.push(`<!----> `);
|
|
661
|
-
DictateTextarea($$renderer3, {
|
|
662
|
-
id: "spec-ui",
|
|
663
|
-
class: "mt-2 min-h-24 bg-card",
|
|
664
|
-
get value() {
|
|
665
|
-
return draft.uiNotes;
|
|
666
|
-
},
|
|
667
|
-
set value($$value) {
|
|
668
|
-
draft.uiNotes = $$value;
|
|
669
|
-
$$settled = false;
|
|
670
|
-
}
|
|
671
|
-
});
|
|
672
|
-
$$renderer3.push(`<!----></div> `);
|
|
673
|
-
ListField($$renderer3, {
|
|
674
|
-
label: "References",
|
|
675
|
-
item: "Reference",
|
|
676
|
-
addLabel: "Add a link",
|
|
677
|
-
placeholder: "https://… or the name of a page to follow",
|
|
678
|
-
get items() {
|
|
679
|
-
return draft.links;
|
|
680
|
-
},
|
|
681
|
-
set items($$value) {
|
|
682
|
-
draft.links = $$value;
|
|
683
|
-
$$settled = false;
|
|
684
|
-
}
|
|
685
|
-
});
|
|
686
|
-
$$renderer3.push(`<!----> <div><p class="text-sm font-medium">Screenshots</p> <p class="mt-0.5 text-xs text-muted-foreground">Drop pictures here, paste them, or choose files. Firstmate receives each one with its
|
|
687
|
-
caption.</p> <div${attr_class(`mt-2 rounded-lg border border-dashed p-4 transition-colors ${"border-hair"}`)}>`);
|
|
688
|
-
if (draft.images.length) {
|
|
689
|
-
$$renderer3.push(`<!--[0--><ul class="mb-4 grid grid-cols-[repeat(auto-fill,minmax(10rem,1fr))] gap-3"><!--[-->`);
|
|
690
|
-
const each_array_1 = ensure_array_like(draft.images);
|
|
691
|
-
for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {
|
|
692
|
-
let img = each_array_1[$$index_1];
|
|
693
|
-
$$renderer3.push(`<li class="min-w-0 rounded-md border bg-card p-2"><div class="relative"><img${attr("src", imageUrl(img))}${attr("alt", img.caption || "Screenshot")} class="aspect-video w-full rounded-sm bg-muted object-cover" loading="lazy"/> <button type="button" class="absolute top-1 right-1 rounded-full bg-background/90 p-1 text-muted-foreground shadow-sm hover:text-foreground" aria-label="Remove this screenshot">`);
|
|
694
|
-
X($$renderer3, { class: "size-3.5" });
|
|
695
|
-
$$renderer3.push(`<!----></button></div> <input class="mt-2 h-8 w-full min-w-0 rounded-sm border border-transparent bg-transparent px-1 text-xs outline-none hover:border-input focus-visible:border-ring"${attr("value", img.caption)} placeholder="Caption" aria-label="Caption"/></li>`);
|
|
696
|
-
}
|
|
697
|
-
$$renderer3.push(`<!--]--></ul>`);
|
|
698
|
-
} else {
|
|
699
|
-
$$renderer3.push("<!--[-1-->");
|
|
700
|
-
}
|
|
701
|
-
$$renderer3.push(`<!--]--> <button type="button" class="inline-flex items-center gap-2 rounded-md px-2 py-1 text-sm text-sea hover:bg-muted"${attr("disabled", uploading, true)}>`);
|
|
702
|
-
if (uploading) {
|
|
703
|
-
$$renderer3.push("<!--[0-->");
|
|
704
|
-
Loader_circle($$renderer3, { class: "size-4 animate-spin", "aria-hidden": "true" });
|
|
705
|
-
$$renderer3.push(`<!---->Adding…`);
|
|
706
|
-
} else {
|
|
707
|
-
$$renderer3.push("<!--[-1-->");
|
|
708
|
-
Image_plus($$renderer3, { class: "size-4", "aria-hidden": "true" });
|
|
709
|
-
$$renderer3.push(`<!---->Choose screenshots`);
|
|
710
|
-
}
|
|
711
|
-
$$renderer3.push(`<!--]--></button> <input type="file" accept="image/png,image/jpeg,image/webp,image/gif" multiple="" class="hidden"/> `);
|
|
712
|
-
if (uploadError) {
|
|
713
|
-
$$renderer3.push(`<!--[0--><p class="mt-2 text-sm text-danger" role="alert">${escape_html(uploadError)}</p>`);
|
|
714
|
-
} else {
|
|
715
|
-
$$renderer3.push("<!--[-1-->");
|
|
716
|
-
}
|
|
717
|
-
$$renderer3.push(`<!--]--></div></div>`);
|
|
718
|
-
} else if (section === "constraints") {
|
|
719
|
-
$$renderer3.push(`<!--[7--><div>`);
|
|
720
|
-
field($$renderer3, "spec-constraints", "Constraints", "Rules it must follow: technology, data, permissions, deadlines.");
|
|
721
|
-
$$renderer3.push(`<!----> `);
|
|
722
|
-
DictateTextarea($$renderer3, {
|
|
723
|
-
id: "spec-constraints",
|
|
724
|
-
class: "mt-2 min-h-24 bg-card",
|
|
725
|
-
get value() {
|
|
726
|
-
return draft.constraints;
|
|
727
|
-
},
|
|
728
|
-
set value($$value) {
|
|
729
|
-
draft.constraints = $$value;
|
|
730
|
-
$$settled = false;
|
|
731
|
-
}
|
|
732
|
-
});
|
|
733
|
-
$$renderer3.push(`<!----></div> <div>`);
|
|
734
|
-
field($$renderer3, "spec-risks", "Risks", "What could go wrong, or needs extra care.");
|
|
735
|
-
$$renderer3.push(`<!----> `);
|
|
736
|
-
DictateTextarea($$renderer3, {
|
|
737
|
-
id: "spec-risks",
|
|
738
|
-
class: "mt-2 min-h-24 bg-card",
|
|
739
|
-
get value() {
|
|
740
|
-
return draft.risks;
|
|
741
|
-
},
|
|
742
|
-
set value($$value) {
|
|
743
|
-
draft.risks = $$value;
|
|
744
|
-
$$settled = false;
|
|
745
|
-
}
|
|
746
|
-
});
|
|
747
|
-
$$renderer3.push(`<!----></div>`);
|
|
748
|
-
} else if (section === "questions") {
|
|
749
|
-
$$renderer3.push("<!--[8-->");
|
|
750
|
-
ListField($$renderer3, {
|
|
751
|
-
label: "Questions",
|
|
752
|
-
item: "Question",
|
|
753
|
-
addLabel: "Add a question",
|
|
754
|
-
placeholder: "Something still to decide",
|
|
755
|
-
get items() {
|
|
756
|
-
return draft.questions;
|
|
757
|
-
},
|
|
758
|
-
set items($$value) {
|
|
759
|
-
draft.questions = $$value;
|
|
760
|
-
$$settled = false;
|
|
761
|
-
}
|
|
762
|
-
});
|
|
763
|
-
} else {
|
|
764
|
-
$$renderer3.push("<!--[-1-->");
|
|
765
|
-
}
|
|
766
|
-
$$renderer3.push(`<!--]--></div>`);
|
|
767
|
-
}
|
|
768
|
-
do {
|
|
769
|
-
$$settled = true;
|
|
770
|
-
$$inner_renderer = $$renderer2.copy();
|
|
771
|
-
$$render_inner($$inner_renderer);
|
|
772
|
-
} while (!$$settled);
|
|
773
|
-
$$renderer2.subsume($$inner_renderer);
|
|
774
|
-
});
|
|
775
|
-
}
|
|
776
|
-
function SpecPreview($$renderer, $$props) {
|
|
777
|
-
$$renderer.component(($$renderer2) => {
|
|
778
|
-
let mode = "document";
|
|
779
|
-
$$renderer2.push(`<div class="flex items-center gap-1" role="radiogroup" aria-label="Preview as"><!--[-->`);
|
|
780
|
-
const each_array = ensure_array_like(
|
|
781
|
-
// Scroll when the section (or whether it shows yet) changes, not on every keystroke.
|
|
782
|
-
[["document", "Document"], ["sent", "As sent"]]
|
|
783
|
-
);
|
|
784
|
-
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
785
|
-
let [m, label] = each_array[$$index];
|
|
786
|
-
$$renderer2.push(`<button role="radio"${attr("aria-checked", mode === m)}${attr_class(`rounded-full border px-3 py-0.5 text-xs ${mode === m ? "border-foreground/30 bg-accent font-medium" : "border-transparent text-muted-foreground hover:text-foreground"}`)}>${escape_html(label)}</button>`);
|
|
787
|
-
}
|
|
788
|
-
$$renderer2.push(`<!--]--></div> <div class="relative mt-3 rounded-lg border bg-card px-6 py-5 shadow-xs xl:max-h-[calc(100dvh-13rem)] xl:overflow-y-auto">`);
|
|
789
|
-
{
|
|
790
|
-
$$renderer2.push("<!--[-1-->");
|
|
791
|
-
}
|
|
792
|
-
$$renderer2.push(`<!--]--></div>`);
|
|
793
|
-
});
|
|
794
|
-
}
|
|
795
|
-
function QuickForm($$renderer, $$props) {
|
|
796
|
-
$$renderer.component(($$renderer2) => {
|
|
797
|
-
let {
|
|
798
|
-
draft,
|
|
799
|
-
projects,
|
|
800
|
-
imageUrl,
|
|
801
|
-
uploading,
|
|
802
|
-
uploadError
|
|
803
|
-
/** The spec as Markdown, with pictures the page can show. */
|
|
804
|
-
/** The message as sent. */
|
|
805
|
-
} = $$props;
|
|
806
|
-
let step = 0;
|
|
807
|
-
const section = derived(() => SPEC_SECTIONS[step]);
|
|
808
|
-
const filled = derived(() => SPEC_SECTIONS.filter((s) => sectionFilled(draft, s.id)).length);
|
|
809
|
-
async function go(i) {
|
|
810
|
-
step = i;
|
|
811
|
-
await tick();
|
|
812
|
-
return;
|
|
813
|
-
}
|
|
814
|
-
$$renderer2.push(`<div class="grid items-start gap-8 xl:grid-cols-2"><section class="min-w-0 scroll-mt-20" aria-labelledby="section-heading"><div class="flex flex-wrap items-baseline gap-3"><label><span class="sr-only">Section</span> `);
|
|
815
|
-
$$renderer2.select(
|
|
816
|
-
{
|
|
817
|
-
class: "h-8 rounded-md border border-input bg-card px-2 text-xs",
|
|
818
|
-
value: step,
|
|
819
|
-
onchange: (e) => go(Number(e.currentTarget.value))
|
|
820
|
-
},
|
|
821
|
-
($$renderer3) => {
|
|
822
|
-
$$renderer3.push(`<!--[-->`);
|
|
823
|
-
const each_array = ensure_array_like(SPEC_SECTIONS);
|
|
824
|
-
for (let i = 0, $$length = each_array.length; i < $$length; i++) {
|
|
825
|
-
let s = each_array[i];
|
|
826
|
-
$$renderer3.option({ value: i }, ($$renderer4) => {
|
|
827
|
-
$$renderer4.push(`Step ${escape_html(i + 1)} of ${escape_html(SPEC_SECTIONS.length)}: ${escape_html(s.title)}${escape_html(sectionFilled(draft, s.id) ? " ✓" : "")}`);
|
|
828
|
-
});
|
|
829
|
-
}
|
|
830
|
-
$$renderer3.push(`<!--]-->`);
|
|
831
|
-
}
|
|
832
|
-
);
|
|
833
|
-
$$renderer2.push(`</label> <p class="text-xs text-muted-foreground">${escape_html(filled())} of ${escape_html(SPEC_SECTIONS.length)} sections written</p></div> <h2 id="section-heading" tabindex="-1" class="mt-2 scroll-mt-20 font-display text-2xl font-medium outline-none">${escape_html(section().title)}</h2> <p class="mt-1 max-w-prose text-sm text-muted-foreground">${escape_html(section().prompt)}</p> <p class="mt-3 max-w-prose border-l-2 border-hair pl-3 text-sm text-muted-foreground italic"><span class="not-italic">For example:</span> ${escape_html(section().example)}</p> <div class="mt-6"><!---->`);
|
|
834
|
-
{
|
|
835
|
-
SectionFields($$renderer2, {
|
|
836
|
-
draft,
|
|
837
|
-
section: section().id,
|
|
838
|
-
projects,
|
|
839
|
-
imageUrl,
|
|
840
|
-
uploading,
|
|
841
|
-
uploadError
|
|
842
|
-
});
|
|
843
|
-
}
|
|
844
|
-
$$renderer2.push(`<!----></div> <div class="mt-8 flex flex-wrap items-center gap-3 border-t border-hair pt-5">`);
|
|
845
|
-
Button($$renderer2, {
|
|
846
|
-
variant: "ghost",
|
|
847
|
-
onclick: () => go(step - 1),
|
|
848
|
-
disabled: step === 0,
|
|
849
|
-
children: ($$renderer3) => {
|
|
850
|
-
Arrow_left($$renderer3, { "aria-hidden": "true" });
|
|
851
|
-
$$renderer3.push(`<!---->Back`);
|
|
852
|
-
},
|
|
853
|
-
$$slots: { default: true }
|
|
854
|
-
});
|
|
855
|
-
$$renderer2.push(`<!----> `);
|
|
856
|
-
if (step < SPEC_SECTIONS.length - 1) {
|
|
857
|
-
$$renderer2.push("<!--[0-->");
|
|
858
|
-
Button($$renderer2, {
|
|
859
|
-
variant: "outline",
|
|
860
|
-
onclick: () => go(step + 1),
|
|
861
|
-
children: ($$renderer3) => {
|
|
862
|
-
$$renderer3.push(`<!---->Next: ${escape_html(SPEC_SECTIONS[step + 1].title)}`);
|
|
863
|
-
Arrow_right($$renderer3, { "aria-hidden": "true" });
|
|
864
|
-
$$renderer3.push(`<!---->`);
|
|
865
|
-
},
|
|
866
|
-
$$slots: { default: true }
|
|
867
|
-
});
|
|
868
|
-
} else {
|
|
869
|
-
$$renderer2.push(`<!--[-1--><p class="text-sm text-muted-foreground">That is every section. Read the preview, then send it to build.</p>`);
|
|
870
|
-
}
|
|
871
|
-
$$renderer2.push(`<!--]--></div></section> <section class="min-w-0 xl:sticky xl:top-20" aria-labelledby="preview-heading"><h2 id="preview-heading" class="section-label">Preview</h2> <div class="mt-3">`);
|
|
872
|
-
SpecPreview($$renderer2, {
|
|
873
|
-
focus: section().id === "project" ? null : section().title
|
|
874
|
-
});
|
|
875
|
-
$$renderer2.push(`<!----></div></section></div>`);
|
|
876
|
-
});
|
|
877
|
-
}
|
|
878
|
-
function SpecDocument($$renderer, $$props) {
|
|
879
|
-
$$renderer.component(($$renderer2) => {
|
|
880
|
-
let { draft, changed, busy, onComment } = $$props;
|
|
881
|
-
const sections = SPEC_SECTIONS.filter((s) => s.id !== "project");
|
|
882
|
-
const covered = derived(() => SPEC_SECTIONS.filter((s) => sectionFilled(draft, s.id)).length);
|
|
883
|
-
const html$1 = (id) => "";
|
|
884
|
-
const comments = (id) => draft.comments.filter((c) => c.section === id);
|
|
885
|
-
const openCount = derived(() => draft.comments.filter((c) => !c.resolvedAt).length);
|
|
886
|
-
const changedTitles = derived(() => SPEC_SECTIONS.filter((s) => changed.includes(s.id)).map((s) => s.id === "project" ? "Title and summary" : s.title));
|
|
887
|
-
let writing = null;
|
|
888
|
-
let text = "";
|
|
889
|
-
let posting = false;
|
|
890
|
-
async function post() {
|
|
891
|
-
if (!writing || !text.trim() || posting) return;
|
|
892
|
-
posting = true;
|
|
893
|
-
const ok = await onComment({ ...writing, text: text.trim() });
|
|
894
|
-
posting = false;
|
|
895
|
-
if (ok) {
|
|
896
|
-
writing = null;
|
|
897
|
-
text = "";
|
|
898
|
-
window.getSelection()?.removeAllRanges();
|
|
899
|
-
}
|
|
900
|
-
}
|
|
901
|
-
function onkeydown(e) {
|
|
902
|
-
if (e.key === "Enter" && (e.metaKey || e.ctrlKey)) {
|
|
903
|
-
e.preventDefault();
|
|
904
|
-
void post();
|
|
905
|
-
} else if (e.key === "Escape") {
|
|
906
|
-
writing = null;
|
|
907
|
-
}
|
|
908
|
-
}
|
|
909
|
-
function commentBox($$renderer3, section) {
|
|
910
|
-
if (writing?.section === section) {
|
|
911
|
-
$$renderer3.push(`<!--[0--><div class="mt-3 rounded-md border border-brass/50 bg-background p-3" data-comment-box="">`);
|
|
912
|
-
if (writing.quote) {
|
|
913
|
-
$$renderer3.push(`<!--[0--><p class="mb-2 border-l-2 border-brass pl-2 text-xs text-muted-foreground italic">“${escape_html(writing.quote)}”</p>`);
|
|
914
|
-
} else {
|
|
915
|
-
$$renderer3.push("<!--[-1-->");
|
|
916
|
-
}
|
|
917
|
-
$$renderer3.push(`<!--]--> `);
|
|
918
|
-
DictateTextarea($$renderer3, {
|
|
919
|
-
rows: 2,
|
|
920
|
-
placeholder: "What should change here?",
|
|
921
|
-
"aria-label": "Your comment",
|
|
922
|
-
onkeydown,
|
|
923
|
-
get value() {
|
|
924
|
-
return text;
|
|
925
|
-
},
|
|
926
|
-
set value($$value) {
|
|
927
|
-
text = $$value;
|
|
928
|
-
$$settled = false;
|
|
929
|
-
}
|
|
930
|
-
});
|
|
931
|
-
$$renderer3.push(`<!----> <div class="mt-2 flex items-center justify-end gap-2">`);
|
|
932
|
-
Button($$renderer3, {
|
|
933
|
-
variant: "ghost",
|
|
934
|
-
size: "sm",
|
|
935
|
-
onclick: () => writing = null,
|
|
936
|
-
children: ($$renderer4) => {
|
|
937
|
-
$$renderer4.push(`<!---->Cancel`);
|
|
938
|
-
},
|
|
939
|
-
$$slots: { default: true }
|
|
940
|
-
});
|
|
941
|
-
$$renderer3.push(`<!----> `);
|
|
942
|
-
Button($$renderer3, {
|
|
943
|
-
size: "sm",
|
|
944
|
-
onclick: post,
|
|
945
|
-
disabled: !text.trim() || posting,
|
|
946
|
-
children: ($$renderer4) => {
|
|
947
|
-
if (posting) {
|
|
948
|
-
$$renderer4.push("<!--[0-->");
|
|
949
|
-
Loader_circle($$renderer4, { class: "animate-spin", "aria-hidden": "true" });
|
|
950
|
-
} else {
|
|
951
|
-
$$renderer4.push("<!--[-1-->");
|
|
952
|
-
}
|
|
953
|
-
$$renderer4.push(`<!--]--> Comment`);
|
|
954
|
-
},
|
|
955
|
-
$$slots: { default: true }
|
|
956
|
-
});
|
|
957
|
-
$$renderer3.push(`<!----></div></div>`);
|
|
958
|
-
} else {
|
|
959
|
-
$$renderer3.push("<!--[-1-->");
|
|
960
|
-
}
|
|
961
|
-
$$renderer3.push(`<!--]-->`);
|
|
962
|
-
}
|
|
963
|
-
function commentList($$renderer3, section) {
|
|
964
|
-
const list = comments(section);
|
|
965
|
-
if (list.length) {
|
|
966
|
-
$$renderer3.push(`<!--[0--><ul class="mt-3 space-y-2" aria-label="Comments"><!--[-->`);
|
|
967
|
-
const each_array = ensure_array_like(list);
|
|
968
|
-
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
969
|
-
let c = each_array[$$index];
|
|
970
|
-
$$renderer3.push(`<li${attr_class(`rounded-md border px-3 py-2 text-sm ${c.resolvedAt ? "border-hair bg-muted/40 text-muted-foreground" : "border-brass/50 bg-background"}`)}><div class="flex items-start gap-2"><div class="min-w-0 flex-1">`);
|
|
971
|
-
if (c.quote) {
|
|
972
|
-
$$renderer3.push(`<!--[0--><p class="mb-1 border-l-2 border-brass/70 pl-2 text-xs italic">“${escape_html(c.quote)}”</p>`);
|
|
973
|
-
} else {
|
|
974
|
-
$$renderer3.push("<!--[-1-->");
|
|
975
|
-
}
|
|
976
|
-
$$renderer3.push(`<!--]--> <p${attr_class(`break-words ${c.resolvedAt ? "" : "text-foreground"}`)}>${escape_html(c.text)}</p> `);
|
|
977
|
-
if (c.resolvedAt) {
|
|
978
|
-
$$renderer3.push(`<!--[0--><p class="mt-1 flex items-start gap-1.5 text-xs">`);
|
|
979
|
-
Check($$renderer3, {
|
|
980
|
-
class: "mt-0.5 size-3.5 shrink-0 text-sea",
|
|
981
|
-
"aria-hidden": "true"
|
|
982
|
-
});
|
|
983
|
-
$$renderer3.push(`<!----> <span><span class="sr-only">Resolved:</span>${escape_html(c.reply || "Addressed.")}</span></p>`);
|
|
984
|
-
} else {
|
|
985
|
-
$$renderer3.push(`<!--[-1--><p class="mt-1 flex items-center gap-1.5 text-xs text-muted-foreground">`);
|
|
986
|
-
if (busy) {
|
|
987
|
-
$$renderer3.push("<!--[0-->");
|
|
988
|
-
Loader_circle($$renderer3, { class: "size-3 animate-spin", "aria-hidden": "true" });
|
|
989
|
-
$$renderer3.push(`<!---->The
|
|
990
|
-
interviewer is on it`);
|
|
991
|
-
} else {
|
|
992
|
-
$$renderer3.push(`<!--[-1-->Open: the interviewer addresses it next`);
|
|
993
|
-
}
|
|
994
|
-
$$renderer3.push(`<!--]--></p>`);
|
|
995
|
-
}
|
|
996
|
-
$$renderer3.push(`<!--]--></div> `);
|
|
997
|
-
if (!c.resolvedAt) {
|
|
998
|
-
$$renderer3.push(`<!--[0--><button class="-mt-0.5 -mr-1 rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground" aria-label="Remove this comment" title="Remove this comment">`);
|
|
999
|
-
X($$renderer3, { class: "size-3.5", "aria-hidden": "true" });
|
|
1000
|
-
$$renderer3.push(`<!----></button>`);
|
|
1001
|
-
} else {
|
|
1002
|
-
$$renderer3.push("<!--[-1-->");
|
|
1003
|
-
}
|
|
1004
|
-
$$renderer3.push(`<!--]--></div></li>`);
|
|
1005
|
-
}
|
|
1006
|
-
$$renderer3.push(`<!--]--></ul>`);
|
|
1007
|
-
} else {
|
|
1008
|
-
$$renderer3.push("<!--[-1-->");
|
|
1009
|
-
}
|
|
1010
|
-
$$renderer3.push(`<!--]-->`);
|
|
1011
|
-
}
|
|
1012
|
-
function commentButton($$renderer3, section, label) {
|
|
1013
|
-
$$renderer3.push(`<button class="comment-btn ml-auto shrink-0 rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground svelte-byyley"${attr("aria-label", `Comment on ${stringify(label)}`)}${attr("title", `Comment on ${stringify(label)}`)}>`);
|
|
1014
|
-
Message_square_plus($$renderer3, { class: "size-4", "aria-hidden": "true" });
|
|
1015
|
-
$$renderer3.push(`<!----></button>`);
|
|
1016
|
-
}
|
|
1017
|
-
let $$settled = true;
|
|
1018
|
-
let $$inner_renderer;
|
|
1019
|
-
function $$render_inner($$renderer3) {
|
|
1020
|
-
$$renderer3.push(`<div class="spec-doc relative rounded-lg border border-hair bg-card px-5 py-5 sm:px-7 sm:py-6"><p class="flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-muted-foreground"><span class="tabular">${escape_html(covered())} of ${escape_html(SPEC_SECTIONS.length)} sections covered</span> `);
|
|
1021
|
-
if (openCount()) {
|
|
1022
|
-
$$renderer3.push(`<!--[0--><span class="text-brass">${escape_html(openCount())} open comment${escape_html(openCount() === 1 ? "" : "s")}</span>`);
|
|
1023
|
-
} else {
|
|
1024
|
-
$$renderer3.push("<!--[-1-->");
|
|
1025
|
-
}
|
|
1026
|
-
$$renderer3.push(`<!--]--> `);
|
|
1027
|
-
if (draft.interview.done) {
|
|
1028
|
-
$$renderer3.push(`<!--[0--><span class="rounded-full border border-sea/50 px-2 py-0.5 font-medium text-sea">Ready to build</span>`);
|
|
1029
|
-
} else {
|
|
1030
|
-
$$renderer3.push("<!--[-1-->");
|
|
1031
|
-
}
|
|
1032
|
-
$$renderer3.push(`<!--]--></p> `);
|
|
1033
|
-
if (changedTitles().length) {
|
|
1034
|
-
$$renderer3.push(`<!--[0--><p class="mt-1 text-xs text-muted-foreground" aria-live="polite">Just changed: ${escape_html(changedTitles().join(", "))}.</p>`);
|
|
1035
|
-
} else {
|
|
1036
|
-
$$renderer3.push("<!--[-1-->");
|
|
1037
|
-
}
|
|
1038
|
-
$$renderer3.push(`<!--]--> <header data-section="project"${attr_class(`doc-section mt-4 ${changed.includes("project") ? "is-updated" : ""}`, "svelte-byyley")}><div class="flex items-start gap-2"><h2 class="min-w-0 flex-1 font-display text-[1.7rem] leading-tight font-medium">${escape_html(specTitle(draft))}</h2> `);
|
|
1039
|
-
commentButton($$renderer3, "project", "the title and summary");
|
|
1040
|
-
$$renderer3.push(`<!----></div> `);
|
|
1041
|
-
if (sectionMarkdown(draft, "project")) {
|
|
1042
|
-
$$renderer3.push(`<!--[0--><div class="chat-md mt-2 text-[0.95rem]">${html(html$1())}</div>`);
|
|
1043
|
-
} else {
|
|
1044
|
-
$$renderer3.push(`<!--[-1--><p class="mt-2 text-sm text-muted-foreground italic">The project and a one-line summary appear here as the interview goes.</p>`);
|
|
1045
|
-
}
|
|
1046
|
-
$$renderer3.push(`<!--]--> `);
|
|
1047
|
-
commentList($$renderer3, "project");
|
|
1048
|
-
$$renderer3.push(`<!----> `);
|
|
1049
|
-
commentBox($$renderer3, "project");
|
|
1050
|
-
$$renderer3.push(`<!----></header> <!--[-->`);
|
|
1051
|
-
const each_array_1 = ensure_array_like(sections);
|
|
1052
|
-
for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {
|
|
1053
|
-
let s = each_array_1[$$index_1];
|
|
1054
|
-
const body = sectionMarkdown(draft, s.id);
|
|
1055
|
-
$$renderer3.push(`<section${attr("data-section", s.id)}${attr_class(`doc-section mt-6 ${changed.includes(s.id) ? "is-updated" : ""}`, "svelte-byyley")}${attr("aria-labelledby", `doc-${stringify(s.id)}`)}><div class="flex items-center gap-2 border-b border-hair pb-1"><h3${attr("id", `doc-${stringify(s.id)}`)} class="font-display text-[1.2rem] font-medium">${escape_html(s.title)}</h3> `);
|
|
1056
|
-
if (changed.includes(s.id)) {
|
|
1057
|
-
$$renderer3.push(`<!--[0--><span class="rounded-full bg-brass/15 px-2 py-0.5 text-[0.7rem] font-medium tracking-wide text-brass">Updated</span>`);
|
|
1058
|
-
} else {
|
|
1059
|
-
$$renderer3.push("<!--[-1-->");
|
|
1060
|
-
}
|
|
1061
|
-
$$renderer3.push(`<!--]--> `);
|
|
1062
|
-
commentButton($$renderer3, s.id, s.title);
|
|
1063
|
-
$$renderer3.push(`<!----></div> `);
|
|
1064
|
-
if (body) {
|
|
1065
|
-
$$renderer3.push(`<!--[0--><div class="chat-md doc-md mt-2 text-[0.95rem] svelte-byyley">${html(html$1(s.id))}</div>`);
|
|
1066
|
-
} else {
|
|
1067
|
-
$$renderer3.push(`<!--[-1--><p class="mt-2 text-sm text-muted-foreground italic">Not covered yet.</p>`);
|
|
1068
|
-
}
|
|
1069
|
-
$$renderer3.push(`<!--]--> `);
|
|
1070
|
-
commentList($$renderer3, s.id);
|
|
1071
|
-
$$renderer3.push(`<!----> `);
|
|
1072
|
-
commentBox($$renderer3, s.id);
|
|
1073
|
-
$$renderer3.push(`<!----></section>`);
|
|
1074
|
-
}
|
|
1075
|
-
$$renderer3.push(`<!--]--> `);
|
|
1076
|
-
{
|
|
1077
|
-
$$renderer3.push("<!--[-1-->");
|
|
1078
|
-
}
|
|
1079
|
-
$$renderer3.push(`<!--]--></div>`);
|
|
1080
|
-
}
|
|
1081
|
-
do {
|
|
1082
|
-
$$settled = true;
|
|
1083
|
-
$$inner_renderer = $$renderer2.copy();
|
|
1084
|
-
$$render_inner($$inner_renderer);
|
|
1085
|
-
} while (!$$settled);
|
|
1086
|
-
$$renderer2.subsume($$inner_renderer);
|
|
1087
|
-
});
|
|
1088
|
-
}
|
|
1089
|
-
function _page($$renderer, $$props) {
|
|
1090
|
-
$$renderer.component(($$renderer2) => {
|
|
1091
|
-
let { data } = $$props;
|
|
1092
|
-
const clone2 = (d) => d ? JSON.parse(JSON.stringify(d)) : null;
|
|
1093
|
-
const initial = clone2(data.draft);
|
|
1094
|
-
let draft = initial;
|
|
1095
|
-
let specs = data.specs;
|
|
1096
|
-
let savedJson = JSON.stringify(initial);
|
|
1097
|
-
let saveState = "saved";
|
|
1098
|
-
let saveError = null;
|
|
1099
|
-
let uploading = false;
|
|
1100
|
-
let uploadError = null;
|
|
1101
|
-
let confirmDelete = false;
|
|
1102
|
-
let busy = false;
|
|
1103
|
-
let now = Date.now();
|
|
1104
|
-
let working = !!data.interviewer?.busy;
|
|
1105
|
-
let streaming = "";
|
|
1106
|
-
let activity = null;
|
|
1107
|
-
let turnError = null;
|
|
1108
|
-
let pendingAnswer = null;
|
|
1109
|
-
let commentsWaiting = false;
|
|
1110
|
-
let pane = "interview";
|
|
1111
|
-
let specUnseen = false;
|
|
1112
|
-
initial?.id ?? null;
|
|
1113
|
-
const fleet = derived(currentFleet);
|
|
1114
|
-
const projects = derived(() => (fleet()?.projects ?? []).map((p) => p.name).filter(Boolean));
|
|
1115
|
-
const imageUrl = (img) => `/api/specs/${encodeURIComponent(draft?.id ?? "")}/images/${encodeURIComponent(img.name)}`;
|
|
1116
|
-
const preview = derived(() => draft ? specMarkdown(draft, imageUrl) : "");
|
|
1117
|
-
const asSent = derived(() => draft ? specMessage(draft, () => "attached").replace(/!\[([^\]]*)\]\(<attached>\)/g, "[Screenshot: $1, sent as a file]") : "");
|
|
1118
|
-
const lastAgent = derived(() => draft?.interview.turns.findLast((t) => t.role === "agent") ?? null);
|
|
1119
|
-
const changed = derived(() => lastAgent()?.changed ?? []);
|
|
1120
|
-
const openComments = derived(() => draft?.comments.filter((c) => !c.resolvedAt).length ?? 0);
|
|
1121
|
-
const hasWhat = derived(() => !!draft && (!!draft.title.trim() || !!draft.summary.trim()));
|
|
1122
|
-
const hasProject = derived(() => !!draft?.project.trim());
|
|
1123
|
-
const editedSinceSent = (s) => !!s.sentAt && Date.parse(s.updatedAt) - Date.parse(s.sentAt) > 5e3;
|
|
1124
|
-
const canSend = derived(() => hasWhat() && hasProject() && !busy && !working);
|
|
1125
|
-
const headers = (extra = {}) => ({ [SESSION_HEADER]: data.sessionToken, ...extra });
|
|
1126
|
-
async function problem(res) {
|
|
1127
|
-
const body = await res.json().catch(() => null);
|
|
1128
|
-
return body?.message ?? `Wheelhouse answered ${res.status}.`;
|
|
1129
|
-
}
|
|
1130
|
-
function adopt(d) {
|
|
1131
|
-
if (!d || d.id !== draft?.id) return;
|
|
1132
|
-
const local = saveState === "saved" ? null : { project: draft.project, mode: draft.mode };
|
|
1133
|
-
const next = clone2(d);
|
|
1134
|
-
savedJson = JSON.stringify(next);
|
|
1135
|
-
if (local) Object.assign(next, local);
|
|
1136
|
-
draft = next;
|
|
1137
|
-
specs = specs.map((s) => s.id === d.id ? summarize(d) : s);
|
|
1138
|
-
if (pendingAnswer && d.interview.turns.at(-1)?.role === "captain") pendingAnswer = null;
|
|
1139
|
-
}
|
|
1140
|
-
let timer;
|
|
1141
|
-
let saving = Promise.resolve(true);
|
|
1142
|
-
function save(keepalive = false) {
|
|
1143
|
-
clearTimeout(timer);
|
|
1144
|
-
saving = saving.then(() => saveNow(keepalive));
|
|
1145
|
-
return saving;
|
|
1146
|
-
}
|
|
1147
|
-
async function saveNow(keepalive) {
|
|
1148
|
-
if (!draft) return true;
|
|
1149
|
-
const snapshot$1 = draft;
|
|
1150
|
-
const json = JSON.stringify(snapshot$1);
|
|
1151
|
-
if (json === savedJson) {
|
|
1152
|
-
saveState = "saved";
|
|
1153
|
-
return true;
|
|
1154
|
-
}
|
|
1155
|
-
saveState = "saving";
|
|
1156
|
-
const base = JSON.parse(savedJson);
|
|
1157
|
-
const edited = ["project", "title", "mode"].filter((f) => base?.[f] !== snapshot$1[f]);
|
|
1158
|
-
try {
|
|
1159
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(snapshot$1.id)}`, {
|
|
1160
|
-
method: "PUT",
|
|
1161
|
-
headers: headers({ "content-type": "application/json" }),
|
|
1162
|
-
body: JSON.stringify({ ...snapshot$1, edited }),
|
|
1163
|
-
keepalive
|
|
1164
|
-
});
|
|
1165
|
-
if (!res.ok) {
|
|
1166
|
-
saveError = await problem(res);
|
|
1167
|
-
saveState = "error";
|
|
1168
|
-
return false;
|
|
1169
|
-
}
|
|
1170
|
-
const stored = (await res.json()).draft;
|
|
1171
|
-
saveError = null;
|
|
1172
|
-
specs = specs.map((s) => s.id === stored.id ? summarize(stored) : s);
|
|
1173
|
-
if (draft?.id === stored.id) {
|
|
1174
|
-
savedJson = JSON.stringify(stored);
|
|
1175
|
-
if (JSON.stringify(snapshot(draft)) === json) draft = clone2(stored);
|
|
1176
|
-
if (pendingAnswer && stored.interview.turns.at(-1)?.role === "captain") pendingAnswer = null;
|
|
1177
|
-
}
|
|
1178
|
-
saveState = draft && JSON.stringify(draft) !== savedJson ? "unsaved" : "saved";
|
|
1179
|
-
return true;
|
|
1180
|
-
} catch {
|
|
1181
|
-
saveError = "Could not reach the Wheelhouse server.";
|
|
1182
|
-
saveState = "error";
|
|
1183
|
-
return false;
|
|
1184
|
-
}
|
|
1185
|
-
}
|
|
1186
|
-
let wide = true;
|
|
1187
|
-
async function* events(res) {
|
|
1188
|
-
const reader = res.body.pipeThrough(new TextDecoderStream()).getReader();
|
|
1189
|
-
let buf = "";
|
|
1190
|
-
for (; ; ) {
|
|
1191
|
-
const { value, done } = await reader.read();
|
|
1192
|
-
if (done) return;
|
|
1193
|
-
buf += value;
|
|
1194
|
-
let end;
|
|
1195
|
-
while ((end = buf.indexOf("\n\n")) >= 0) {
|
|
1196
|
-
const chunk = buf.slice(0, end);
|
|
1197
|
-
buf = buf.slice(end + 2);
|
|
1198
|
-
const event = /^event: (.*)$/m.exec(chunk)?.[1];
|
|
1199
|
-
const body = /^data: (.*)$/m.exec(chunk)?.[1];
|
|
1200
|
-
if (event && body) yield { event, data: JSON.parse(body) };
|
|
1201
|
-
}
|
|
1202
|
-
}
|
|
1203
|
-
}
|
|
1204
|
-
async function runTurn(answer) {
|
|
1205
|
-
if (!draft || working) return false;
|
|
1206
|
-
const id = draft.id;
|
|
1207
|
-
if (!await save()) return false;
|
|
1208
|
-
working = true;
|
|
1209
|
-
streaming = "";
|
|
1210
|
-
activity = null;
|
|
1211
|
-
turnError = null;
|
|
1212
|
-
pendingAnswer = answer;
|
|
1213
|
-
let accepted = false;
|
|
1214
|
-
try {
|
|
1215
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(id)}/turn`, {
|
|
1216
|
-
method: "POST",
|
|
1217
|
-
headers: headers({ "content-type": "application/json" }),
|
|
1218
|
-
body: JSON.stringify(answer ? { answer } : {})
|
|
1219
|
-
});
|
|
1220
|
-
if (!res.ok || !res.body) {
|
|
1221
|
-
turnError = await problem(res);
|
|
1222
|
-
if (res.status === 409) void waitForTurn();
|
|
1223
|
-
return false;
|
|
1224
|
-
}
|
|
1225
|
-
accepted = true;
|
|
1226
|
-
for await (const e of events(res)) {
|
|
1227
|
-
const d = e.data;
|
|
1228
|
-
if (e.event === "text") {
|
|
1229
|
-
streaming += d.text ?? "";
|
|
1230
|
-
activity = null;
|
|
1231
|
-
} else if (e.event === "reset") streaming = "";
|
|
1232
|
-
else if (e.event === "tool") activity = `Reading ${d.detail || d.name}`;
|
|
1233
|
-
else if (e.event === "done") {
|
|
1234
|
-
adopt(d.draft);
|
|
1235
|
-
if (pane === "interview" && lastAgent()?.changed.length) specUnseen = true;
|
|
1236
|
-
} else if (e.event === "error") {
|
|
1237
|
-
turnError = d.message ?? "The interviewer stopped.";
|
|
1238
|
-
adopt(d.draft);
|
|
1239
|
-
}
|
|
1240
|
-
}
|
|
1241
|
-
return true;
|
|
1242
|
-
} catch {
|
|
1243
|
-
turnError ??= "Lost touch with the Wheelhouse server. Reload to see where the interview got to.";
|
|
1244
|
-
return accepted;
|
|
1245
|
-
} finally {
|
|
1246
|
-
if (draft?.id === id) {
|
|
1247
|
-
working = false;
|
|
1248
|
-
streaming = "";
|
|
1249
|
-
activity = null;
|
|
1250
|
-
pendingAnswer = null;
|
|
1251
|
-
if (commentsWaiting) {
|
|
1252
|
-
commentsWaiting = false;
|
|
1253
|
-
void runTurn(null);
|
|
1254
|
-
}
|
|
1255
|
-
}
|
|
1256
|
-
}
|
|
1257
|
-
}
|
|
1258
|
-
async function waitForTurn() {
|
|
1259
|
-
const id = draft?.id;
|
|
1260
|
-
if (!id) return;
|
|
1261
|
-
working = true;
|
|
1262
|
-
for (; ; ) {
|
|
1263
|
-
await new Promise((r) => setTimeout(r, 1500));
|
|
1264
|
-
if (draft?.id !== id) return;
|
|
1265
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(id)}`).catch(() => null);
|
|
1266
|
-
if (!res?.ok) continue;
|
|
1267
|
-
const body = await res.json();
|
|
1268
|
-
if (body.busy) continue;
|
|
1269
|
-
adopt(body.draft);
|
|
1270
|
-
working = false;
|
|
1271
|
-
if (turnError?.startsWith("The interviewer is already")) turnError = null;
|
|
1272
|
-
return;
|
|
1273
|
-
}
|
|
1274
|
-
}
|
|
1275
|
-
async function addComment(c) {
|
|
1276
|
-
if (!draft) return false;
|
|
1277
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(draft.id)}/comments`, {
|
|
1278
|
-
method: "POST",
|
|
1279
|
-
headers: headers({ "content-type": "application/json" }),
|
|
1280
|
-
body: JSON.stringify(c)
|
|
1281
|
-
}).catch(() => null);
|
|
1282
|
-
if (!res?.ok) {
|
|
1283
|
-
turnError = res ? await problem(res) : "Could not reach the Wheelhouse server.";
|
|
1284
|
-
return false;
|
|
1285
|
-
}
|
|
1286
|
-
adopt((await res.json()).draft);
|
|
1287
|
-
if (working) commentsWaiting = true;
|
|
1288
|
-
else void runTurn(null);
|
|
1289
|
-
return true;
|
|
1290
|
-
}
|
|
1291
|
-
async function newSpec() {
|
|
1292
|
-
busy = true;
|
|
1293
|
-
if (!await save()) {
|
|
1294
|
-
busy = false;
|
|
1295
|
-
return;
|
|
1296
|
-
}
|
|
1297
|
-
try {
|
|
1298
|
-
const res = await fetch("/api/specs", { method: "POST", headers: headers() });
|
|
1299
|
-
if (!res.ok) {
|
|
1300
|
-
saveError = await problem(res);
|
|
1301
|
-
saveState = "error";
|
|
1302
|
-
return;
|
|
1303
|
-
}
|
|
1304
|
-
const { draft: d } = await res.json();
|
|
1305
|
-
await goto(`/spec?id=${encodeURIComponent(d.id)}`, { invalidateAll: true });
|
|
1306
|
-
} finally {
|
|
1307
|
-
busy = false;
|
|
1308
|
-
}
|
|
1309
|
-
}
|
|
1310
|
-
async function remove() {
|
|
1311
|
-
if (!draft) return;
|
|
1312
|
-
busy = true;
|
|
1313
|
-
clearTimeout(timer);
|
|
1314
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(draft.id)}`, { method: "DELETE", headers: headers() }).catch(() => null);
|
|
1315
|
-
busy = false;
|
|
1316
|
-
confirmDelete = false;
|
|
1317
|
-
if (!res?.ok && res?.status !== 404) {
|
|
1318
|
-
saveError = res ? await problem(res) : "Could not reach the Wheelhouse server.";
|
|
1319
|
-
saveState = "error";
|
|
1320
|
-
return;
|
|
1321
|
-
}
|
|
1322
|
-
savedJson = "null";
|
|
1323
|
-
draft = null;
|
|
1324
|
-
await goto("/spec", {});
|
|
1325
|
-
}
|
|
1326
|
-
async function send() {
|
|
1327
|
-
if (!draft || !canSend()) return;
|
|
1328
|
-
busy = true;
|
|
1329
|
-
const id = draft.id;
|
|
1330
|
-
try {
|
|
1331
|
-
if (!await save()) return;
|
|
1332
|
-
const res = await fetch(`/api/specs/${encodeURIComponent(id)}/build-request`, { method: "POST", headers: headers() }).catch(() => null);
|
|
1333
|
-
if (!res?.ok) {
|
|
1334
|
-
saveError = res ? await problem(res) : "Could not reach the Wheelhouse server.";
|
|
1335
|
-
saveState = "error";
|
|
1336
|
-
return;
|
|
1337
|
-
}
|
|
1338
|
-
const { message } = await res.json();
|
|
1339
|
-
const token = data.sessionToken;
|
|
1340
|
-
composerBus.outgoing = {
|
|
1341
|
-
text: message,
|
|
1342
|
-
from: `/spec?id=${encodeURIComponent(id)}`,
|
|
1343
|
-
onSent: () => {
|
|
1344
|
-
void fetch(`/api/specs/${encodeURIComponent(id)}/sent`, { method: "POST", headers: { [SESSION_HEADER]: token } });
|
|
1345
|
-
}
|
|
1346
|
-
};
|
|
1347
|
-
await goto("/");
|
|
1348
|
-
} finally {
|
|
1349
|
-
busy = false;
|
|
1350
|
-
}
|
|
1351
|
-
}
|
|
1352
|
-
const saveLabel = derived(() => saveState === "saving" ? "Saving…" : saveState === "unsaved" ? "Unsaved changes" : saveState === "error" ? "Not saved" : "Saved");
|
|
1353
|
-
const sendHint = derived(() => {
|
|
1354
|
-
if (!draft) return "";
|
|
1355
|
-
if (!hasWhat()) return "Send to build once the spec has a title or a summary.";
|
|
1356
|
-
if (!hasProject()) return "Choose the project it is for, then send it to build.";
|
|
1357
|
-
if (working) return "Wait for the interviewer to finish its turn.";
|
|
1358
|
-
if (draft.sentAt) {
|
|
1359
|
-
return `Sent to build ${ago(draft.sentAt, now)}${editedSinceSent(draft) ? "; edited since" : ""}.`;
|
|
1360
|
-
}
|
|
1361
|
-
return `Sends the spec to Firstmate as one build request for ${draft.project.trim()}.`;
|
|
1362
|
-
});
|
|
1363
|
-
head("1flepf4", $$renderer2, ($$renderer3) => {
|
|
1364
|
-
$$renderer3.title(($$renderer4) => {
|
|
1365
|
-
$$renderer4.push(`<title>Spec · Wheelhouse</title>`);
|
|
1366
|
-
});
|
|
1367
|
-
});
|
|
1368
|
-
$$renderer2.push(`<main class="px-4 py-6 sm:px-6 lg:px-10"><div class="surface px-4 py-6 sm:px-8 sm:py-8"><h1 class="text-2xl">Write a spec</h1> <p class="mt-1 max-w-prose text-sm text-muted-foreground">An interviewer asks you one question at a time and writes the spec as you answer. Comment on
|
|
1369
|
-
anything in the spec to have it changed, then send it to build.</p> `);
|
|
1370
|
-
if (data.problem) {
|
|
1371
|
-
$$renderer2.push(`<!--[0--><p class="mt-8 rounded-lg border border-dashed p-6 text-sm text-muted-foreground">${escape_html(data.problem)}</p>`);
|
|
1372
|
-
} else {
|
|
1373
|
-
$$renderer2.push(`<!--[-1--><div class="mt-8 grid items-start gap-8 lg:grid-cols-[14rem_minmax(0,1fr)]"><aside class="min-w-0 lg:sticky lg:top-20"><details class="group"${attr("open", wide, true)}><summary class="section-label list-none lg:pointer-events-none [&::-webkit-details-marker]:hidden"><span id="specs-heading">Your specs</span><span class="lg:hidden"> (${escape_html(specs.length)})</span> `);
|
|
1374
|
-
Chevron_down($$renderer2, {
|
|
1375
|
-
class: "size-4 shrink-0 transition-transform group-open:rotate-180 lg:hidden",
|
|
1376
|
-
"aria-hidden": "true"
|
|
1377
|
-
});
|
|
1378
|
-
$$renderer2.push(`<!----></summary> `);
|
|
1379
|
-
Button($$renderer2, {
|
|
1380
|
-
variant: "outline",
|
|
1381
|
-
size: "sm",
|
|
1382
|
-
class: "mt-3 w-full justify-start",
|
|
1383
|
-
onclick: newSpec,
|
|
1384
|
-
disabled: busy,
|
|
1385
|
-
children: ($$renderer3) => {
|
|
1386
|
-
File_plus_corner($$renderer3, { "aria-hidden": "true" });
|
|
1387
|
-
$$renderer3.push(`<!---->New spec`);
|
|
1388
|
-
},
|
|
1389
|
-
$$slots: { default: true }
|
|
1390
|
-
});
|
|
1391
|
-
$$renderer2.push(`<!----> `);
|
|
1392
|
-
if (specs.length) {
|
|
1393
|
-
$$renderer2.push(`<!--[0--><ul class="mt-3 space-y-0.5" aria-labelledby="specs-heading"><!--[-->`);
|
|
1394
|
-
const each_array = ensure_array_like(specs);
|
|
1395
|
-
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
1396
|
-
let s = each_array[$$index];
|
|
1397
|
-
const open = draft?.id === s.id;
|
|
1398
|
-
$$renderer2.push(`<li><a${attr("href", `/spec?id=${stringify(encodeURIComponent(s.id))}`)}${attr("aria-current", open ? "page" : void 0)}${attr_class(`block rounded-md border-l-2 px-3 py-2 hover:bg-muted ${open ? "border-brass bg-accent" : "border-transparent"}`)}><span class="block truncate text-sm font-medium">${escape_html(open && draft ? specTitle(draft) : s.title)}</span> <span class="block truncate text-xs text-muted-foreground">${escape_html([
|
|
1399
|
-
(open && draft ? draft.project.trim() : s.project) || null,
|
|
1400
|
-
s.sentAt ? editedSinceSent(s) ? "Edited since sent" : "Sent" : null,
|
|
1401
|
-
`edited ${ago(s.updatedAt, now)}`
|
|
1402
|
-
].filter(Boolean).join(" · "))}</span></a></li>`);
|
|
1403
|
-
}
|
|
1404
|
-
$$renderer2.push(`<!--]--></ul>`);
|
|
1405
|
-
} else {
|
|
1406
|
-
$$renderer2.push("<!--[-1-->");
|
|
1407
|
-
}
|
|
1408
|
-
$$renderer2.push(`<!--]--></details></aside> `);
|
|
1409
|
-
if (!draft) {
|
|
1410
|
-
$$renderer2.push(`<!--[0--><section class="rounded-lg border border-dashed p-8" aria-label="No spec open"><h2 class="font-display text-xl font-medium">Start a spec for Firstmate</h2> <p class="mt-2 max-w-prose text-sm text-muted-foreground">Say what you want built. An interviewer grills you on it one question at a time,
|
|
1411
|
-
offering answers with the one it recommends, and writes the spec as you go: the
|
|
1412
|
-
problem, who it is for, how they use it, what is in and out, how you will know it is
|
|
1413
|
-
done, and what to watch out for. Your work is saved as you go.</p> `);
|
|
1414
|
-
Button($$renderer2, {
|
|
1415
|
-
class: "mt-5",
|
|
1416
|
-
onclick: newSpec,
|
|
1417
|
-
disabled: busy,
|
|
1418
|
-
children: ($$renderer3) => {
|
|
1419
|
-
File_plus_corner($$renderer3, { "aria-hidden": "true" });
|
|
1420
|
-
$$renderer3.push(`<!---->Start a spec`);
|
|
1421
|
-
},
|
|
1422
|
-
$$slots: { default: true }
|
|
1423
|
-
});
|
|
1424
|
-
$$renderer2.push(`<!----></section>`);
|
|
1425
|
-
} else {
|
|
1426
|
-
$$renderer2.push(`<!--[-1--><div class="min-w-0"><div class="flex flex-wrap items-center gap-x-4 gap-y-3 border-b border-hair pb-4"><div class="flex rounded-md border border-hair p-0.5" role="radiogroup" aria-label="Build the spec with"><!--[-->`);
|
|
1427
|
-
const each_array_1 = ensure_array_like([["interview", "Interview"], ["form", "Quick form"]]);
|
|
1428
|
-
for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {
|
|
1429
|
-
let [m, label] = each_array_1[$$index_1];
|
|
1430
|
-
$$renderer2.push(`<button role="radio"${attr("aria-checked", draft.mode === m)}${attr_class(`rounded px-3 py-1 text-sm ${draft.mode === m ? "bg-accent font-medium text-foreground" : "text-muted-foreground hover:text-foreground"}`)}>${escape_html(label)}</button>`);
|
|
1431
|
-
}
|
|
1432
|
-
$$renderer2.push(`<!--]--></div> <label class="flex min-w-0 items-center gap-2 text-sm"><span class="text-muted-foreground">Project</span> <input class="h-8 w-44 min-w-0 rounded-md border border-input bg-card px-2.5 text-sm shadow-xs outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50" name="project" list="spec-projects"${attr("value", draft.project)} placeholder="Choose a project"/> <datalist id="spec-projects"><!--[-->`);
|
|
1433
|
-
const each_array_2 = ensure_array_like(projects());
|
|
1434
|
-
for (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {
|
|
1435
|
-
let p = each_array_2[$$index_2];
|
|
1436
|
-
$$renderer2.option({ value: p }, ($$renderer3) => {
|
|
1437
|
-
});
|
|
1438
|
-
}
|
|
1439
|
-
$$renderer2.push(`<!--]--></datalist></label> <p${attr_class(`text-xs ${saveState === "error" ? "text-danger" : "text-muted-foreground"}`)} aria-live="polite">${escape_html(saveLabel())}</p> <div class="ml-auto flex items-center gap-2">`);
|
|
1440
|
-
if (!confirmDelete) {
|
|
1441
|
-
$$renderer2.push("<!--[0-->");
|
|
1442
|
-
Button($$renderer2, {
|
|
1443
|
-
variant: "ghost",
|
|
1444
|
-
size: "sm",
|
|
1445
|
-
class: "text-muted-foreground",
|
|
1446
|
-
onclick: () => confirmDelete = true,
|
|
1447
|
-
children: ($$renderer3) => {
|
|
1448
|
-
Trash($$renderer3, { "aria-hidden": "true" });
|
|
1449
|
-
$$renderer3.push(`<!---->Delete`);
|
|
1450
|
-
},
|
|
1451
|
-
$$slots: { default: true }
|
|
1452
|
-
});
|
|
1453
|
-
} else {
|
|
1454
|
-
$$renderer2.push("<!--[-1-->");
|
|
1455
|
-
}
|
|
1456
|
-
$$renderer2.push(`<!--]--> `);
|
|
1457
|
-
Button($$renderer2, {
|
|
1458
|
-
onclick: send,
|
|
1459
|
-
disabled: !canSend(),
|
|
1460
|
-
children: ($$renderer3) => {
|
|
1461
|
-
if (busy) {
|
|
1462
|
-
$$renderer3.push("<!--[0-->");
|
|
1463
|
-
Loader_circle($$renderer3, { class: "animate-spin", "aria-hidden": "true" });
|
|
1464
|
-
} else {
|
|
1465
|
-
$$renderer3.push("<!--[-1-->");
|
|
1466
|
-
Hammer($$renderer3, { "aria-hidden": "true" });
|
|
1467
|
-
}
|
|
1468
|
-
$$renderer3.push(`<!--]--> ${escape_html(draft.sentAt ? "Send to build again" : "Send to build")}`);
|
|
1469
|
-
},
|
|
1470
|
-
$$slots: { default: true }
|
|
1471
|
-
});
|
|
1472
|
-
$$renderer2.push(`<!----></div></div> <p class="mt-2 text-xs text-muted-foreground">${escape_html(sendHint())}</p> `);
|
|
1473
|
-
if (saveState === "error" && saveError) {
|
|
1474
|
-
$$renderer2.push(`<!--[0--><p class="mt-2 text-sm text-danger" role="alert">${escape_html(saveError)}</p>`);
|
|
1475
|
-
} else {
|
|
1476
|
-
$$renderer2.push("<!--[-1-->");
|
|
1477
|
-
}
|
|
1478
|
-
$$renderer2.push(`<!--]--> `);
|
|
1479
|
-
if (confirmDelete) {
|
|
1480
|
-
$$renderer2.push(`<!--[0--><div class="mt-3 flex flex-wrap items-center gap-3 rounded-md border border-danger/30 bg-danger/5 px-4 py-3" role="group" aria-label="Delete this spec"><p class="text-sm">Delete “${escape_html(specTitle(draft))}”, its interview and its screenshots for good?</p> <div class="ml-auto flex gap-2">`);
|
|
1481
|
-
Button($$renderer2, {
|
|
1482
|
-
variant: "ghost",
|
|
1483
|
-
size: "sm",
|
|
1484
|
-
onclick: () => confirmDelete = false,
|
|
1485
|
-
children: ($$renderer3) => {
|
|
1486
|
-
$$renderer3.push(`<!---->Keep it`);
|
|
1487
|
-
},
|
|
1488
|
-
$$slots: { default: true }
|
|
1489
|
-
});
|
|
1490
|
-
$$renderer2.push(`<!----> `);
|
|
1491
|
-
Button($$renderer2, {
|
|
1492
|
-
variant: "destructive",
|
|
1493
|
-
size: "sm",
|
|
1494
|
-
onclick: remove,
|
|
1495
|
-
disabled: busy,
|
|
1496
|
-
children: ($$renderer3) => {
|
|
1497
|
-
$$renderer3.push(`<!---->Delete`);
|
|
1498
|
-
},
|
|
1499
|
-
$$slots: { default: true }
|
|
1500
|
-
});
|
|
1501
|
-
$$renderer2.push(`<!----></div></div>`);
|
|
1502
|
-
} else {
|
|
1503
|
-
$$renderer2.push("<!--[-1-->");
|
|
1504
|
-
}
|
|
1505
|
-
$$renderer2.push(`<!--]--> <div class="mt-6">`);
|
|
1506
|
-
if (draft.mode === "form") {
|
|
1507
|
-
$$renderer2.push("<!--[0-->");
|
|
1508
|
-
QuickForm($$renderer2, {
|
|
1509
|
-
draft,
|
|
1510
|
-
projects: projects(),
|
|
1511
|
-
imageUrl,
|
|
1512
|
-
preview: preview(),
|
|
1513
|
-
asSent: asSent(),
|
|
1514
|
-
uploading,
|
|
1515
|
-
uploadError
|
|
1516
|
-
});
|
|
1517
|
-
} else {
|
|
1518
|
-
$$renderer2.push(`<!--[-1--><div class="mb-4 flex rounded-md border border-hair p-0.5 xl:hidden" role="tablist" aria-label="Show"><button role="tab"${attr("aria-selected", pane === "interview")}${attr_class(`flex-1 rounded px-3 py-1.5 text-sm ${"bg-accent font-medium"}`)}>Interview</button> <button role="tab"${attr("aria-selected", pane === "spec")}${attr_class(`flex flex-1 items-center justify-center gap-1.5 rounded px-3 py-1.5 text-sm ${"text-muted-foreground"}`)}>Spec`);
|
|
1519
|
-
if (openComments()) {
|
|
1520
|
-
$$renderer2.push(`<!--[0--><span class="text-xs text-brass">(${escape_html(openComments())})</span>`);
|
|
1521
|
-
} else {
|
|
1522
|
-
$$renderer2.push("<!--[-1-->");
|
|
1523
|
-
}
|
|
1524
|
-
$$renderer2.push(`<!--]--> `);
|
|
1525
|
-
if (specUnseen) {
|
|
1526
|
-
$$renderer2.push(`<!--[0--><span class="size-1.5 rounded-full bg-brass" aria-label="Updated" role="img"></span>`);
|
|
1527
|
-
} else {
|
|
1528
|
-
$$renderer2.push("<!--[-1-->");
|
|
1529
|
-
}
|
|
1530
|
-
$$renderer2.push(`<!--]--></button></div> <div class="grid items-start gap-8 xl:grid-cols-[minmax(0,1fr)_minmax(0,1.15fr)]"><section${attr_class(`min-w-0 ${""}`)} aria-label="Interview">`);
|
|
1531
|
-
Interview($$renderer2, {
|
|
1532
|
-
draft,
|
|
1533
|
-
busy: working,
|
|
1534
|
-
streaming,
|
|
1535
|
-
activity,
|
|
1536
|
-
error: turnError,
|
|
1537
|
-
pending: pendingAnswer,
|
|
1538
|
-
model: data.interviewer?.model ?? "sonnet",
|
|
1539
|
-
effort: data.interviewer?.effort ?? "low",
|
|
1540
|
-
onAnswer: (text) => runTurn(text),
|
|
1541
|
-
onRetry: () => void runTurn(null)
|
|
1542
|
-
});
|
|
1543
|
-
$$renderer2.push(`<!----></section> <section${attr_class(`min-w-0 xl:sticky xl:top-20 xl:max-h-[calc(100dvh-7rem)] xl:overflow-y-auto ${"hidden xl:block"}`)} aria-label="The spec">`);
|
|
1544
|
-
SpecDocument($$renderer2, {
|
|
1545
|
-
draft,
|
|
1546
|
-
changed: changed(),
|
|
1547
|
-
busy: working,
|
|
1548
|
-
onComment: addComment
|
|
1549
|
-
});
|
|
1550
|
-
$$renderer2.push(`<!----></section></div>`);
|
|
1551
|
-
}
|
|
1552
|
-
$$renderer2.push(`<!--]--></div></div>`);
|
|
1553
|
-
}
|
|
1554
|
-
$$renderer2.push(`<!--]--></div>`);
|
|
1555
|
-
}
|
|
1556
|
-
$$renderer2.push(`<!--]--></div></main>`);
|
|
1557
|
-
});
|
|
1558
|
-
}
|
|
1559
|
-
|
|
1560
|
-
export { _page as default };
|
|
1561
|
-
//# sourceMappingURL=_page.svelte.js-BJjweG9u.js.map
|