@recombine-ai/bosun 0.9.1 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.svelte-kit/tsconfig.json +8 -1
- package/README.md +2 -0
- package/bin/bosun.js +198 -12
- package/build/client/_app/immutable/assets/0.B4t3dozz.css +1 -0
- package/build/client/_app/immutable/assets/0.B4t3dozz.css.br +0 -0
- package/build/client/_app/immutable/assets/0.B4t3dozz.css.gz +0 -0
- package/build/client/_app/immutable/chunks/7E8m6dwk.js +1 -0
- package/build/client/_app/immutable/chunks/7E8m6dwk.js.br +0 -0
- package/build/client/_app/immutable/chunks/7E8m6dwk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/7qRqthsa.js +1 -0
- package/build/client/_app/immutable/chunks/7qRqthsa.js.br +2 -0
- package/build/client/_app/immutable/chunks/7qRqthsa.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ajb1KYIn.js +1 -0
- package/build/client/_app/immutable/chunks/Ajb1KYIn.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ajb1KYIn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B0iEglSe.js +1 -0
- package/build/client/_app/immutable/chunks/B0iEglSe.js.br +0 -0
- package/build/client/_app/immutable/chunks/B0iEglSe.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{B394X4Dm.js → BIpSIzUr.js} +1 -1
- package/build/client/_app/immutable/chunks/BIpSIzUr.js.br +0 -0
- package/build/client/_app/immutable/chunks/BIpSIzUr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BM0jKynj.js +1 -0
- package/build/client/_app/immutable/chunks/BM0jKynj.js.br +0 -0
- package/build/client/_app/immutable/chunks/BM0jKynj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BTvePR6r.js +1 -0
- package/build/client/_app/immutable/chunks/BTvePR6r.js.br +2 -0
- package/build/client/_app/immutable/chunks/BTvePR6r.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bcu62lFq.js +1 -0
- package/build/client/_app/immutable/chunks/Bcu62lFq.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bcu62lFq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwtfALfL.js +11 -0
- package/build/client/_app/immutable/chunks/BwtfALfL.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwtfALfL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BxsDwlgp.js +4 -0
- package/build/client/_app/immutable/chunks/BxsDwlgp.js.br +0 -0
- package/build/client/_app/immutable/chunks/BxsDwlgp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C-whEtKd.js +1 -0
- package/build/client/_app/immutable/chunks/C-whEtKd.js.br +2 -0
- package/build/client/_app/immutable/chunks/C-whEtKd.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C1WqE8CP.js +1 -0
- package/build/client/_app/immutable/chunks/C1WqE8CP.js.br +2 -0
- package/build/client/_app/immutable/chunks/C1WqE8CP.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C4D-JXnS.js +1 -0
- package/build/client/_app/immutable/chunks/C4D-JXnS.js.br +0 -0
- package/build/client/_app/immutable/chunks/C4D-JXnS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C4SnSfql.js +1 -0
- package/build/client/_app/immutable/chunks/C4SnSfql.js.br +0 -0
- package/build/client/_app/immutable/chunks/C4SnSfql.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CF66fWJN.js +1 -0
- package/build/client/_app/immutable/chunks/CF66fWJN.js.br +0 -0
- package/build/client/_app/immutable/chunks/CF66fWJN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CZNq9Fp2.js → CNLU4B3p.js} +1 -1
- package/build/client/_app/immutable/chunks/CNLU4B3p.js.br +0 -0
- package/build/client/_app/immutable/chunks/CNLU4B3p.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CXo2BVs0.js +1 -0
- package/build/client/_app/immutable/chunks/CXo2BVs0.js.br +0 -0
- package/build/client/_app/immutable/chunks/CXo2BVs0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CZLNSMhF.js +33 -0
- package/build/client/_app/immutable/chunks/CZLNSMhF.js.br +0 -0
- package/build/client/_app/immutable/chunks/CZLNSMhF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CqO5tR2_.js +1 -0
- package/build/client/_app/immutable/chunks/CqO5tR2_.js.br +0 -0
- package/build/client/_app/immutable/chunks/CqO5tR2_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CqxCTxvJ.js +1 -0
- package/build/client/_app/immutable/chunks/CqxCTxvJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/CqxCTxvJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-wf2QNc.js +1 -0
- package/build/client/_app/immutable/chunks/D-wf2QNc.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-wf2QNc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D4obUD_s.js +1 -0
- package/build/client/_app/immutable/chunks/D4obUD_s.js.br +0 -0
- package/build/client/_app/immutable/chunks/D4obUD_s.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D8e7SQh9.js +1 -0
- package/build/client/_app/immutable/chunks/D8e7SQh9.js.br +0 -0
- package/build/client/_app/immutable/chunks/D8e7SQh9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DNLcpWO_.js +1 -0
- package/build/client/_app/immutable/chunks/DNLcpWO_.js.br +0 -0
- package/build/client/_app/immutable/chunks/DNLcpWO_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DTXUDKH5.js +8 -0
- package/build/client/_app/immutable/chunks/DTXUDKH5.js.br +0 -0
- package/build/client/_app/immutable/chunks/DTXUDKH5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DYhTBLDc.js +2 -0
- package/build/client/_app/immutable/chunks/DYhTBLDc.js.br +0 -0
- package/build/client/_app/immutable/chunks/DYhTBLDc.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DhBm2Vx9.js +1 -0
- package/build/client/_app/immutable/chunks/DhBm2Vx9.js.br +0 -0
- package/build/client/_app/immutable/chunks/DhBm2Vx9.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dp760K13.js +2 -0
- package/build/client/_app/immutable/chunks/Dp760K13.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dp760K13.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dv0gjm25.js +1 -0
- package/build/client/_app/immutable/chunks/Dv0gjm25.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dv0gjm25.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dv8m1cTI.js +1 -0
- package/build/client/_app/immutable/chunks/Dv8m1cTI.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dv8m1cTI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/HJHYLHDn.js +1 -0
- package/build/client/_app/immutable/chunks/HJHYLHDn.js.br +0 -0
- package/build/client/_app/immutable/chunks/HJHYLHDn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/HXxIsSOO.js +1 -0
- package/build/client/_app/immutable/chunks/HXxIsSOO.js.br +0 -0
- package/build/client/_app/immutable/chunks/HXxIsSOO.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{8mHyIC1B.js → JcG4w2gF.js} +1 -1
- package/build/client/_app/immutable/chunks/JcG4w2gF.js.br +0 -0
- package/build/client/_app/immutable/chunks/JcG4w2gF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/OA8UcISh.js +1 -0
- package/build/client/_app/immutable/chunks/OA8UcISh.js.br +0 -0
- package/build/client/_app/immutable/chunks/OA8UcISh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/T0seCQS_.js +1 -0
- package/build/client/_app/immutable/chunks/T0seCQS_.js.br +0 -0
- package/build/client/_app/immutable/chunks/T0seCQS_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/_yZg6Sf-.js +2 -0
- package/build/client/_app/immutable/chunks/_yZg6Sf-.js.br +0 -0
- package/build/client/_app/immutable/chunks/_yZg6Sf-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/gULlE0tz.js +1 -0
- package/build/client/_app/immutable/chunks/gULlE0tz.js.br +2 -0
- package/build/client/_app/immutable/chunks/gULlE0tz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/xC2C8d09.js +1 -0
- package/build/client/_app/immutable/chunks/xC2C8d09.js.br +0 -0
- package/build/client/_app/immutable/chunks/xC2C8d09.js.gz +0 -0
- package/build/client/_app/immutable/chunks/xebNt8-Z.js +1 -0
- package/build/client/_app/immutable/chunks/xebNt8-Z.js.br +0 -0
- package/build/client/_app/immutable/chunks/xebNt8-Z.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.C4wJtvtH.js +2 -0
- package/build/client/_app/immutable/entry/app.C4wJtvtH.js.br +0 -0
- package/build/client/_app/immutable/entry/app.C4wJtvtH.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BId2vqhS.js +1 -0
- package/build/client/_app/immutable/entry/start.BId2vqhS.js.br +2 -0
- package/build/client/_app/immutable/entry/start.BId2vqhS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.cfpwGp_4.js → 0.BCmKHiYo.js} +2 -2
- package/build/client/_app/immutable/nodes/0.BCmKHiYo.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.BCmKHiYo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.8skEZBEw.js +1 -0
- package/build/client/_app/immutable/nodes/1.8skEZBEw.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.8skEZBEw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.YgmBfSWN.js +5 -0
- package/build/client/_app/immutable/nodes/10.YgmBfSWN.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.YgmBfSWN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{11.BVI-eEdV.js → 11.CsTD16Gn.js} +1 -1
- package/build/client/_app/immutable/nodes/11.CsTD16Gn.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.CsTD16Gn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{12.BHSGZYEC.js → 12.DYXd_leK.js} +1 -1
- package/build/client/_app/immutable/nodes/12.DYXd_leK.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.DYXd_leK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{13.CZ_7M4AF.js → 13.DQMjAUKq.js} +1 -1
- package/build/client/_app/immutable/nodes/13.DQMjAUKq.js.br +1 -0
- package/build/client/_app/immutable/nodes/13.DQMjAUKq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{14.D96_XEm-.js → 14.C59tyoG0.js} +1 -1
- package/build/client/_app/immutable/nodes/14.C59tyoG0.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.C59tyoG0.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.Wmhj7gOy.js +1 -0
- package/build/client/_app/immutable/nodes/15.Wmhj7gOy.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.Wmhj7gOy.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{16.MpUk9w5x.js → 16.DRwcAQjb.js} +1 -1
- package/build/client/_app/immutable/nodes/16.DRwcAQjb.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.DRwcAQjb.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.D8ydco6g.js +3 -0
- package/build/client/_app/immutable/nodes/17.D8ydco6g.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.D8ydco6g.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.C67CqGm5.js +11 -0
- package/build/client/_app/immutable/nodes/18.C67CqGm5.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.C67CqGm5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.BdQ4KFOK.js +35 -0
- package/build/client/_app/immutable/nodes/2.BdQ4KFOK.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BdQ4KFOK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.nCmkz6kS.js +1 -0
- package/build/client/_app/immutable/nodes/3.nCmkz6kS.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.nCmkz6kS.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.DAwO0_Am.js +1 -0
- package/build/client/_app/immutable/nodes/4.DAwO0_Am.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.DAwO0_Am.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.C_SvvZjG.js +1 -0
- package/build/client/_app/immutable/nodes/5.C_SvvZjG.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.C_SvvZjG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.DfOe9lph.js +1 -0
- package/build/client/_app/immutable/nodes/6.DfOe9lph.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DfOe9lph.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.CkeP1yO3.js → 7.7N4iPidV.js} +1 -1
- package/build/client/_app/immutable/nodes/7.7N4iPidV.js.br +1 -0
- package/build/client/_app/immutable/nodes/7.7N4iPidV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DWNYX1kH.js +2 -0
- package/build/client/_app/immutable/nodes/8.DWNYX1kH.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DWNYX1kH.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.D7SG4T7Z.js +2 -0
- package/build/client/_app/immutable/nodes/9.D7SG4T7Z.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.D7SG4T7Z.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/server/chunks/0-D5BNSI7t.js +9 -0
- package/build/server/chunks/0-D5BNSI7t.js.map +1 -0
- package/build/server/chunks/1-C1mGPV-S.js +9 -0
- package/build/server/chunks/{1--P6amfWt.js.map → 1-C1mGPV-S.js.map} +1 -1
- package/build/server/chunks/10-BUo1e_HG.js +9 -0
- package/build/server/chunks/10-BUo1e_HG.js.map +1 -0
- package/build/server/chunks/{11-D9ueFvgV.js → 11-CB5q84io.js} +3 -3
- package/build/server/chunks/{11-D9ueFvgV.js.map → 11-CB5q84io.js.map} +1 -1
- package/build/server/chunks/{12-s9qxLZI8.js → 12-CfqC_Y1R.js} +3 -3
- package/build/server/chunks/{12-s9qxLZI8.js.map → 12-CfqC_Y1R.js.map} +1 -1
- package/build/server/chunks/{13-DSBw3elU.js → 13-ByddfU7G.js} +3 -3
- package/build/server/chunks/{13-DSBw3elU.js.map → 13-ByddfU7G.js.map} +1 -1
- package/build/server/chunks/{14-Dys1MDrz.js → 14-Dk7DCwHC.js} +3 -3
- package/build/server/chunks/{14-Dys1MDrz.js.map → 14-Dk7DCwHC.js.map} +1 -1
- package/build/server/chunks/15-CZBxPMAc.js +9 -0
- package/build/server/chunks/15-CZBxPMAc.js.map +1 -0
- package/build/server/chunks/{16-BRBiMoCX.js → 16-Y9KLA9UF.js} +3 -3
- package/build/server/chunks/{16-BRBiMoCX.js.map → 16-Y9KLA9UF.js.map} +1 -1
- package/build/server/chunks/17-iNFqG1My.js +9 -0
- package/build/server/chunks/17-iNFqG1My.js.map +1 -0
- package/build/server/chunks/18-u8T5X6fM.js +9 -0
- package/build/server/chunks/18-u8T5X6fM.js.map +1 -0
- package/build/server/chunks/2-tLlSByHA.js +9 -0
- package/build/server/chunks/2-tLlSByHA.js.map +1 -0
- package/build/server/chunks/3-D1KY9yVZ.js +9 -0
- package/build/server/chunks/3-D1KY9yVZ.js.map +1 -0
- package/build/server/chunks/4-7zu0cJha.js +9 -0
- package/build/server/chunks/4-7zu0cJha.js.map +1 -0
- package/build/server/chunks/5-DblV-OAd.js +9 -0
- package/build/server/chunks/5-DblV-OAd.js.map +1 -0
- package/build/server/chunks/6-BDC5budM.js +9 -0
- package/build/server/chunks/6-BDC5budM.js.map +1 -0
- package/build/server/chunks/{7-BixmjuY5.js → 7-olXOjo4r.js} +3 -3
- package/build/server/chunks/{7-BixmjuY5.js.map → 7-olXOjo4r.js.map} +1 -1
- package/build/server/chunks/8-DhmD-opq.js +9 -0
- package/build/server/chunks/8-DhmD-opq.js.map +1 -0
- package/build/server/chunks/9-BGj28GI6.js +9 -0
- package/build/server/chunks/9-BGj28GI6.js.map +1 -0
- package/build/server/chunks/{AgentSidebar-DqMxRWln.js → AgentSidebar-XdGj1sqT.js} +32 -24
- package/build/server/chunks/AgentSidebar-XdGj1sqT.js.map +1 -0
- package/build/server/chunks/{Button-qfXYs6Cv.js → Button-Dsy3QY7B.js} +5 -5
- package/build/server/chunks/Button-Dsy3QY7B.js.map +1 -0
- package/build/server/chunks/{ChatStepTrace-Bvxmgz7y.js → ChatStepTrace-1q74tVYO.js} +118 -267
- package/build/server/chunks/ChatStepTrace-1q74tVYO.js.map +1 -0
- package/build/server/chunks/{ContextEditor-CsiHhmH8.js → ContextEditor-D5B2mO8Z.js} +6 -5
- package/build/server/chunks/ContextEditor-D5B2mO8Z.js.map +1 -0
- package/build/server/chunks/{Dropdown-DroDbZQ6.js → Dropdown-7dp1qEYv.js} +4 -4
- package/build/server/chunks/Dropdown-7dp1qEYv.js.map +1 -0
- package/build/server/chunks/{Icon-SOvOgynh.js → Icon-CXFHkSIr.js} +7 -7
- package/build/server/chunks/Icon-CXFHkSIr.js.map +1 -0
- package/build/server/chunks/{Input-D-7S8dEO.js → Input-CHFlfduw.js} +4 -4
- package/build/server/chunks/Input-CHFlfduw.js.map +1 -0
- package/build/server/chunks/{Modal-CBKUwUGm.js → Modal-DtVsRmmO.js} +131 -93
- package/build/server/chunks/Modal-DtVsRmmO.js.map +1 -0
- package/build/server/chunks/{Tab-DMBlstpi.js → Tab-CD1H0E3P.js} +6 -7
- package/build/server/chunks/Tab-CD1H0E3P.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-CqwbWo_W.js → _layout.svelte-B2lwUacy.js} +142 -154
- package/build/server/chunks/_layout.svelte-B2lwUacy.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-B3_pVwfN.js → _layout.svelte-C5eqrEen.js} +10 -9
- package/build/server/chunks/_layout.svelte-C5eqrEen.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-BnUNGsUV.js → _layout.svelte-C7JgNCIu.js} +15 -15
- package/build/server/chunks/_layout.svelte-C7JgNCIu.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-DuOlsMHY.js → _layout.svelte-DJ4kDgDL.js} +62 -60
- package/build/server/chunks/_layout.svelte-DJ4kDgDL.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BB_XBfMx.js → _page.svelte-BYVcy49A.js} +8 -8
- package/build/server/chunks/_page.svelte-BYVcy49A.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DASkT6Tk.js → _page.svelte-Bl1WcAXy.js} +18 -26
- package/build/server/chunks/_page.svelte-Bl1WcAXy.js.map +1 -0
- package/build/server/chunks/{_page.svelte-Tl1k8pGd.js → _page.svelte-BpRksNEG.js} +18 -17
- package/build/server/chunks/_page.svelte-BpRksNEG.js.map +1 -0
- package/build/server/chunks/{_page.svelte-c2LBV2K4.js → _page.svelte-CA3-vgl2.js} +182 -171
- package/build/server/chunks/_page.svelte-CA3-vgl2.js.map +1 -0
- package/build/server/chunks/{_page.svelte-B8NFVmqA.js → _page.svelte-DDpBtd3X.js} +9 -9
- package/build/server/chunks/_page.svelte-DDpBtd3X.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BaDwHJpC.js → _page.svelte-DbV3HGn5.js} +3 -4
- package/build/server/chunks/_page.svelte-DbV3HGn5.js.map +1 -0
- package/build/server/chunks/{_page.svelte-Ch8DnIjK.js → _page.svelte-FufhMKh4.js} +182 -141
- package/build/server/chunks/_page.svelte-FufhMKh4.js.map +1 -0
- package/build/server/chunks/_page.svelte-GaxktsuT.js +1410 -0
- package/build/server/chunks/_page.svelte-GaxktsuT.js.map +1 -0
- package/build/server/chunks/{_server.ts-DviONucl.js → _server.ts-CtO28tLc.js} +2 -2
- package/build/server/chunks/{_server.ts-DviONucl.js.map → _server.ts-CtO28tLc.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CUTB_pVv.js → _server.ts-D_eo_OAK.js} +2 -2
- package/build/server/chunks/{_server.ts-CUTB_pVv.js.map → _server.ts-D_eo_OAK.js.map} +1 -1
- package/build/server/chunks/{agents-context-DJAK2Ml6.js → agents-context-rV2narXG.js} +2 -2
- package/build/server/chunks/agents-context-rV2narXG.js.map +1 -0
- package/build/server/chunks/{client-tqD_VlIn.js → client-DzvEkq51.js} +14 -2
- package/build/server/chunks/client-DzvEkq51.js.map +1 -0
- package/build/server/chunks/{edit-workspace-context-BQXwYkgE.js → edit-workspace-context-B1nYQ5hD.js} +2 -3
- package/build/server/chunks/edit-workspace-context-B1nYQ5hD.js.map +1 -0
- package/build/server/chunks/error.svelte-DA-yulF5.js +15 -0
- package/build/server/chunks/error.svelte-DA-yulF5.js.map +1 -0
- package/build/server/chunks/{events-Hd1jvlZp.js → events-BQ65tUJo.js} +15 -18
- package/build/server/chunks/events-BQ65tUJo.js.map +1 -0
- package/build/server/chunks/{hooks-BJphIAi-.js → hooks.universal-BJphIAi-.js} +1 -1
- package/build/server/chunks/hooks.universal-BJphIAi-.js.map +1 -0
- package/build/server/chunks/index-CSpGrMM2.js +4062 -0
- package/build/server/chunks/index-CSpGrMM2.js.map +1 -0
- package/build/server/chunks/{index-Djsj11qr.js → index-NcxaM188.js} +26 -4
- package/build/server/chunks/index-NcxaM188.js.map +1 -0
- package/build/server/chunks/{index-server-BI-Ep7Rw.js → index-server-DsYEXu5n.js} +2 -3
- package/build/server/chunks/index-server-DsYEXu5n.js.map +1 -0
- package/build/server/chunks/{index3-Cp9d5nmD.js → index2-DO4B3D-P.js} +5 -5
- package/build/server/chunks/index2-DO4B3D-P.js.map +1 -0
- package/build/server/chunks/{index-BSa6KzSq.js → index3-qVi61CNf.js} +2 -2
- package/build/server/chunks/{index-BSa6KzSq.js.map → index3-qVi61CNf.js.map} +1 -1
- package/build/server/chunks/latency--f3JYIRg.js +157 -0
- package/build/server/chunks/latency--f3JYIRg.js.map +1 -0
- package/build/server/chunks/{log-content.svelte-B3ZvaoLs.js → log-content.svelte-CfQzj-v_.js} +2 -2
- package/build/server/chunks/{log-content.svelte-B3ZvaoLs.js.map → log-content.svelte-CfQzj-v_.js.map} +1 -1
- package/build/server/chunks/root-CDJwhpIB.js +1152 -0
- package/build/server/chunks/root-CDJwhpIB.js.map +1 -0
- package/build/server/chunks/{source-selection-hOQHZ-fn.js → source-selection-eA--VEKo.js} +17 -2
- package/build/server/chunks/source-selection-eA--VEKo.js.map +1 -0
- package/build/server/chunks/state.svelte-DT7cgvTK.js +11 -0
- package/build/server/chunks/state.svelte-DT7cgvTK.js.map +1 -0
- package/build/server/chunks/trpc-client-D8L6vWf4.js +14 -0
- package/build/server/chunks/trpc-client-D8L6vWf4.js.map +1 -0
- package/build/server/index.js +2467 -2815
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +22 -22
- package/build/server/manifest.js.map +1 -1
- package/package.json +5 -1
- package/src/backend/roleplay/router.ts +14 -8
- package/src/backend/server.ts +22 -3
- package/build/client/_app/immutable/assets/0.DkT7Ji57.css +0 -1
- package/build/client/_app/immutable/assets/0.DkT7Ji57.css.br +0 -0
- package/build/client/_app/immutable/assets/0.DkT7Ji57.css.gz +0 -0
- package/build/client/_app/immutable/assets/ChatStepTrace.CDucuryp.css +0 -1
- package/build/client/_app/immutable/assets/ChatStepTrace.CDucuryp.css.br +0 -0
- package/build/client/_app/immutable/assets/ChatStepTrace.CDucuryp.css.gz +0 -0
- package/build/client/_app/immutable/chunks/3HVf2z3Q.js +0 -1
- package/build/client/_app/immutable/chunks/3HVf2z3Q.js.br +0 -0
- package/build/client/_app/immutable/chunks/3HVf2z3Q.js.gz +0 -0
- package/build/client/_app/immutable/chunks/8mHyIC1B.js.br +0 -0
- package/build/client/_app/immutable/chunks/8mHyIC1B.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B394X4Dm.js.br +0 -0
- package/build/client/_app/immutable/chunks/B394X4Dm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B5CoBEt2.js +0 -1330
- package/build/client/_app/immutable/chunks/B5CoBEt2.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5CoBEt2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B7r4ghJg.js +0 -1
- package/build/client/_app/immutable/chunks/B7r4ghJg.js.br +0 -2
- package/build/client/_app/immutable/chunks/B7r4ghJg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEJ5fU19.js +0 -1
- package/build/client/_app/immutable/chunks/BEJ5fU19.js.br +0 -0
- package/build/client/_app/immutable/chunks/BEJ5fU19.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BFchB-2I.js +0 -1
- package/build/client/_app/immutable/chunks/BFchB-2I.js.br +0 -0
- package/build/client/_app/immutable/chunks/BFchB-2I.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BRMnbBOX.js +0 -1
- package/build/client/_app/immutable/chunks/BRMnbBOX.js.br +0 -0
- package/build/client/_app/immutable/chunks/BRMnbBOX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BUApaBEI.js +0 -1
- package/build/client/_app/immutable/chunks/BUApaBEI.js.br +0 -0
- package/build/client/_app/immutable/chunks/BUApaBEI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bb9ZigkD.js +0 -2
- package/build/client/_app/immutable/chunks/Bb9ZigkD.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bb9ZigkD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BiBGf8wR.js +0 -1
- package/build/client/_app/immutable/chunks/BiBGf8wR.js.br +0 -0
- package/build/client/_app/immutable/chunks/BiBGf8wR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bk5z628g.js +0 -1
- package/build/client/_app/immutable/chunks/Bk5z628g.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bk5z628g.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BmJonxL2.js +0 -1
- package/build/client/_app/immutable/chunks/BmJonxL2.js.br +0 -0
- package/build/client/_app/immutable/chunks/BmJonxL2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BqYZT6mz.js +0 -5
- package/build/client/_app/immutable/chunks/BqYZT6mz.js.br +0 -0
- package/build/client/_app/immutable/chunks/BqYZT6mz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C1rQHXql.js +0 -1
- package/build/client/_app/immutable/chunks/C1rQHXql.js.br +0 -0
- package/build/client/_app/immutable/chunks/C1rQHXql.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C3cmQ-ZQ.js +0 -1
- package/build/client/_app/immutable/chunks/C3cmQ-ZQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/C3cmQ-ZQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C8-d_pGN.js +0 -11
- package/build/client/_app/immutable/chunks/C8-d_pGN.js.br +0 -0
- package/build/client/_app/immutable/chunks/C8-d_pGN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CB3MYTwM.js +0 -2
- package/build/client/_app/immutable/chunks/CB3MYTwM.js.br +0 -0
- package/build/client/_app/immutable/chunks/CB3MYTwM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJHvtD7r.js +0 -8
- package/build/client/_app/immutable/chunks/CJHvtD7r.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJHvtD7r.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CMN-Rq6J.js +0 -1
- package/build/client/_app/immutable/chunks/CMN-Rq6J.js.br +0 -0
- package/build/client/_app/immutable/chunks/CMN-Rq6J.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CWj6FrbW.js +0 -1
- package/build/client/_app/immutable/chunks/CWj6FrbW.js.br +0 -0
- package/build/client/_app/immutable/chunks/CWj6FrbW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CZNq9Fp2.js.br +0 -0
- package/build/client/_app/immutable/chunks/CZNq9Fp2.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CmatTLDp.js +0 -1
- package/build/client/_app/immutable/chunks/CmatTLDp.js.br +0 -0
- package/build/client/_app/immutable/chunks/CmatTLDp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js +0 -33
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js.br +0 -0
- package/build/client/_app/immutable/chunks/CnRh8Bgk.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Cob_zFH5.js +0 -1
- package/build/client/_app/immutable/chunks/Cob_zFH5.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cob_zFH5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DAyj7AJo.js +0 -1
- package/build/client/_app/immutable/chunks/DAyj7AJo.js.br +0 -0
- package/build/client/_app/immutable/chunks/DAyj7AJo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DCT4VKzQ.js +0 -1
- package/build/client/_app/immutable/chunks/DCT4VKzQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/DCT4VKzQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DJH8-Pxb.js +0 -1
- package/build/client/_app/immutable/chunks/DJH8-Pxb.js.br +0 -0
- package/build/client/_app/immutable/chunks/DJH8-Pxb.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DMtzEpj5.js +0 -2
- package/build/client/_app/immutable/chunks/DMtzEpj5.js.br +0 -0
- package/build/client/_app/immutable/chunks/DMtzEpj5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DT74mAuZ.js +0 -1
- package/build/client/_app/immutable/chunks/DT74mAuZ.js.br +0 -0
- package/build/client/_app/immutable/chunks/DT74mAuZ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D_iTaAhh.js +0 -1
- package/build/client/_app/immutable/chunks/D_iTaAhh.js.br +0 -0
- package/build/client/_app/immutable/chunks/D_iTaAhh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DgnCUaz1.js +0 -1
- package/build/client/_app/immutable/chunks/DgnCUaz1.js.br +0 -0
- package/build/client/_app/immutable/chunks/DgnCUaz1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/hp4PFHFv.js +0 -1
- package/build/client/_app/immutable/chunks/hp4PFHFv.js.br +0 -2
- package/build/client/_app/immutable/chunks/hp4PFHFv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/rHISuZrQ.js +0 -1
- package/build/client/_app/immutable/chunks/rHISuZrQ.js.br +0 -0
- package/build/client/_app/immutable/chunks/rHISuZrQ.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CE1yZowM.js +0 -2
- package/build/client/_app/immutable/entry/app.CE1yZowM.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CE1yZowM.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.D15lqSpY.js +0 -1
- package/build/client/_app/immutable/entry/start.D15lqSpY.js.br +0 -2
- package/build/client/_app/immutable/entry/start.D15lqSpY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.cfpwGp_4.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.cfpwGp_4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.CHri8WYe.js +0 -1
- package/build/client/_app/immutable/nodes/1.CHri8WYe.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.CHri8WYe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.CNlp77FZ.js +0 -5
- package/build/client/_app/immutable/nodes/10.CNlp77FZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.CNlp77FZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.BVI-eEdV.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.BVI-eEdV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/12.BHSGZYEC.js.br +0 -0
- package/build/client/_app/immutable/nodes/12.BHSGZYEC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/13.CZ_7M4AF.js.br +0 -0
- package/build/client/_app/immutable/nodes/13.CZ_7M4AF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/14.D96_XEm-.js.br +0 -0
- package/build/client/_app/immutable/nodes/14.D96_XEm-.js.gz +0 -0
- package/build/client/_app/immutable/nodes/15.DJq8KQca.js +0 -1
- package/build/client/_app/immutable/nodes/15.DJq8KQca.js.br +0 -0
- package/build/client/_app/immutable/nodes/15.DJq8KQca.js.gz +0 -0
- package/build/client/_app/immutable/nodes/16.MpUk9w5x.js.br +0 -0
- package/build/client/_app/immutable/nodes/16.MpUk9w5x.js.gz +0 -0
- package/build/client/_app/immutable/nodes/17.BTYNQV25.js +0 -4
- package/build/client/_app/immutable/nodes/17.BTYNQV25.js.br +0 -0
- package/build/client/_app/immutable/nodes/17.BTYNQV25.js.gz +0 -0
- package/build/client/_app/immutable/nodes/18.B8hhkZZh.js +0 -11
- package/build/client/_app/immutable/nodes/18.B8hhkZZh.js.br +0 -0
- package/build/client/_app/immutable/nodes/18.B8hhkZZh.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DZ1cMXf3.js +0 -35
- package/build/client/_app/immutable/nodes/2.DZ1cMXf3.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DZ1cMXf3.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CCm10CUg.js +0 -1
- package/build/client/_app/immutable/nodes/3.CCm10CUg.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CCm10CUg.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.Bh8P8-OG.js +0 -1
- package/build/client/_app/immutable/nodes/4.Bh8P8-OG.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Bh8P8-OG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BqUmLlVD.js +0 -1
- package/build/client/_app/immutable/nodes/5.BqUmLlVD.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BqUmLlVD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.Bt2W7P40.js +0 -1
- package/build/client/_app/immutable/nodes/6.Bt2W7P40.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.Bt2W7P40.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.CkeP1yO3.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.CkeP1yO3.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.CaESldgZ.js +0 -2
- package/build/client/_app/immutable/nodes/8.CaESldgZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CaESldgZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.Td5mdQc9.js +0 -2
- package/build/client/_app/immutable/nodes/9.Td5mdQc9.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.Td5mdQc9.js.gz +0 -0
- package/build/server/chunks/0-bHCVPlND.js +0 -9
- package/build/server/chunks/0-bHCVPlND.js.map +0 -1
- package/build/server/chunks/1--P6amfWt.js +0 -9
- package/build/server/chunks/10-BWSo2Lz2.js +0 -9
- package/build/server/chunks/10-BWSo2Lz2.js.map +0 -1
- package/build/server/chunks/15-D8gRuCBg.js +0 -9
- package/build/server/chunks/15-D8gRuCBg.js.map +0 -1
- package/build/server/chunks/17-CoHFBhYv.js +0 -9
- package/build/server/chunks/17-CoHFBhYv.js.map +0 -1
- package/build/server/chunks/18-BbzKL6Ws.js +0 -9
- package/build/server/chunks/18-BbzKL6Ws.js.map +0 -1
- package/build/server/chunks/2-C4K8hcZz.js +0 -9
- package/build/server/chunks/2-C4K8hcZz.js.map +0 -1
- package/build/server/chunks/3-DE5hYVwf.js +0 -9
- package/build/server/chunks/3-DE5hYVwf.js.map +0 -1
- package/build/server/chunks/4-Cg9g_jQ6.js +0 -9
- package/build/server/chunks/4-Cg9g_jQ6.js.map +0 -1
- package/build/server/chunks/5-QQH3C-Ro.js +0 -9
- package/build/server/chunks/5-QQH3C-Ro.js.map +0 -1
- package/build/server/chunks/6-BrZQQi63.js +0 -9
- package/build/server/chunks/6-BrZQQi63.js.map +0 -1
- package/build/server/chunks/8-msXmgb8C.js +0 -9
- package/build/server/chunks/8-msXmgb8C.js.map +0 -1
- package/build/server/chunks/9-F1QcQ0ns.js +0 -9
- package/build/server/chunks/9-F1QcQ0ns.js.map +0 -1
- package/build/server/chunks/AgentSidebar-DqMxRWln.js.map +0 -1
- package/build/server/chunks/Button-qfXYs6Cv.js.map +0 -1
- package/build/server/chunks/ChatStepTrace-Bvxmgz7y.js.map +0 -1
- package/build/server/chunks/ContextEditor-CsiHhmH8.js.map +0 -1
- package/build/server/chunks/Dropdown-DroDbZQ6.js.map +0 -1
- package/build/server/chunks/Icon-SOvOgynh.js.map +0 -1
- package/build/server/chunks/Input-D-7S8dEO.js.map +0 -1
- package/build/server/chunks/Modal-CBKUwUGm.js.map +0 -1
- package/build/server/chunks/Tab-DMBlstpi.js.map +0 -1
- package/build/server/chunks/_layout.svelte-B3_pVwfN.js.map +0 -1
- package/build/server/chunks/_layout.svelte-BnUNGsUV.js.map +0 -1
- package/build/server/chunks/_layout.svelte-CqwbWo_W.js.map +0 -1
- package/build/server/chunks/_layout.svelte-DuOlsMHY.js.map +0 -1
- package/build/server/chunks/_page.svelte-B8NFVmqA.js.map +0 -1
- package/build/server/chunks/_page.svelte-BB_XBfMx.js.map +0 -1
- package/build/server/chunks/_page.svelte-BaDwHJpC.js.map +0 -1
- package/build/server/chunks/_page.svelte-Ch8DnIjK.js.map +0 -1
- package/build/server/chunks/_page.svelte-DASkT6Tk.js.map +0 -1
- package/build/server/chunks/_page.svelte-Tl1k8pGd.js.map +0 -1
- package/build/server/chunks/_page.svelte-VFizsKQC.js +0 -763
- package/build/server/chunks/_page.svelte-VFizsKQC.js.map +0 -1
- package/build/server/chunks/_page.svelte-c2LBV2K4.js.map +0 -1
- package/build/server/chunks/agents-context-DJAK2Ml6.js.map +0 -1
- package/build/server/chunks/client-tqD_VlIn.js.map +0 -1
- package/build/server/chunks/context-B0vutJuA.js +0 -1819
- package/build/server/chunks/context-B0vutJuA.js.map +0 -1
- package/build/server/chunks/edit-workspace-context-BQXwYkgE.js.map +0 -1
- package/build/server/chunks/error.svelte-DZg1sSW2.js +0 -14
- package/build/server/chunks/error.svelte-DZg1sSW2.js.map +0 -1
- package/build/server/chunks/events-Hd1jvlZp.js.map +0 -1
- package/build/server/chunks/hooks-BJphIAi-.js.map +0 -1
- package/build/server/chunks/index-Djsj11qr.js.map +0 -1
- package/build/server/chunks/index-server-BI-Ep7Rw.js.map +0 -1
- package/build/server/chunks/index2-BpEbpEAf.js +0 -828
- package/build/server/chunks/index2-BpEbpEAf.js.map +0 -1
- package/build/server/chunks/index3-Cp9d5nmD.js.map +0 -1
- package/build/server/chunks/source-selection-hOQHZ-fn.js.map +0 -1
- package/build/server/chunks/state.svelte-DbqYHGBV.js +0 -10
- package/build/server/chunks/state.svelte-DbqYHGBV.js.map +0 -1
- package/build/server/chunks/trpc-client-Bucti7HD.js +0 -13
- package/build/server/chunks/trpc-client-Bucti7HD.js.map +0 -1
- package/build/server/chunks/utils-KcIDVAAe.js +0 -238
- package/build/server/chunks/utils-KcIDVAAe.js.map +0 -1
|
@@ -25,10 +25,14 @@
|
|
|
25
25
|
"moduleResolution": "bundler",
|
|
26
26
|
"module": "esnext",
|
|
27
27
|
"noEmit": true,
|
|
28
|
-
"target": "esnext"
|
|
28
|
+
"target": "esnext",
|
|
29
|
+
"types": [
|
|
30
|
+
"node"
|
|
31
|
+
]
|
|
29
32
|
},
|
|
30
33
|
"include": [
|
|
31
34
|
"ambient.d.ts",
|
|
35
|
+
"env.d.ts",
|
|
32
36
|
"non-ambient.d.ts",
|
|
33
37
|
"./types/**/$types.d.ts",
|
|
34
38
|
"../vite.config.js",
|
|
@@ -36,6 +40,9 @@
|
|
|
36
40
|
"../src/**/*.js",
|
|
37
41
|
"../src/**/*.ts",
|
|
38
42
|
"../src/**/*.svelte",
|
|
43
|
+
"../test/**/*.js",
|
|
44
|
+
"../test/**/*.ts",
|
|
45
|
+
"../test/**/*.svelte",
|
|
39
46
|
"../tests/**/*.js",
|
|
40
47
|
"../tests/**/*.ts",
|
|
41
48
|
"../tests/**/*.svelte"
|
package/README.md
CHANGED
package/bin/bosun.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import { ChildProcess, spawn } from 'child_process'
|
|
4
4
|
import dotenv from 'dotenv'
|
|
5
5
|
import { existsSync, readFileSync, watch } from 'fs'
|
|
6
|
+
import { createServer } from 'net'
|
|
6
7
|
import { resolve, dirname } from 'path'
|
|
7
8
|
import { fileURLToPath } from 'url'
|
|
8
9
|
|
|
@@ -30,17 +31,25 @@ let frontendProcess = null
|
|
|
30
31
|
/** @type any */
|
|
31
32
|
let restartTimer = null
|
|
32
33
|
|
|
34
|
+
let isShuttingDown = false
|
|
35
|
+
const expectedExits = new WeakSet()
|
|
36
|
+
|
|
33
37
|
const envPath = resolve(process.cwd(), '.env')
|
|
34
38
|
const envConfig = existsSync(envPath) ? dotenv.parse(readFileSync(envPath)) : {}
|
|
39
|
+
const baseEnv = { ...process.env, ...envConfig }
|
|
40
|
+
|
|
41
|
+
/** @type {{ frontend: number, ws: number, trpc: number } | null} */
|
|
42
|
+
let ports = null
|
|
35
43
|
|
|
36
44
|
main()
|
|
37
45
|
|
|
38
46
|
/* ========= Implementation =========== */
|
|
39
47
|
|
|
40
|
-
function main() {
|
|
48
|
+
async function main() {
|
|
41
49
|
// Initial start
|
|
42
50
|
try {
|
|
43
51
|
checkBosunLibVersionMatch()
|
|
52
|
+
ports = await selectPorts()
|
|
44
53
|
|
|
45
54
|
// Start backend
|
|
46
55
|
restartBackend()
|
|
@@ -50,6 +59,11 @@ function main() {
|
|
|
50
59
|
frontendProcess = startFrontend()
|
|
51
60
|
}
|
|
52
61
|
console.log('✅ Bosun started')
|
|
62
|
+
if (!args.includes('--backend-only')) {
|
|
63
|
+
console.log(`UI: http://localhost:${ports.frontend}`)
|
|
64
|
+
}
|
|
65
|
+
console.log(`WebSocket: ws://localhost:${ports.ws}`)
|
|
66
|
+
console.log(`tRPC: http://localhost:${ports.trpc}`)
|
|
53
67
|
|
|
54
68
|
// Watch for changes
|
|
55
69
|
const watchPath = resolve(process.cwd(), 'src')
|
|
@@ -72,43 +86,64 @@ function main() {
|
|
|
72
86
|
}
|
|
73
87
|
|
|
74
88
|
function startBackend() {
|
|
89
|
+
if (!ports) throw new Error('Ports were not selected before starting the backend.')
|
|
90
|
+
|
|
75
91
|
const tsxBin = process.platform === 'win32' ? 'tsx.cmd' : 'tsx'
|
|
76
92
|
const tsxPath = resolve(rootDir, 'node_modules', '.bin', tsxBin)
|
|
77
93
|
const serverPath = resolve(rootDir, 'src', 'backend', 'server.ts')
|
|
94
|
+
const command = process.platform === 'win32' ? tsxPath : process.execPath
|
|
95
|
+
const commandArgs = process.platform === 'win32' ? [serverPath] : [tsxPath, serverPath]
|
|
78
96
|
|
|
79
|
-
|
|
97
|
+
const child = spawn(command, commandArgs, {
|
|
80
98
|
cwd: process.cwd(),
|
|
81
99
|
stdio: 'inherit',
|
|
82
100
|
env: {
|
|
83
|
-
...
|
|
84
|
-
|
|
101
|
+
...baseEnv,
|
|
102
|
+
BOSUN_WS_PORT: String(ports.ws),
|
|
103
|
+
BOSUN_TRPC_PORT: String(ports.trpc),
|
|
104
|
+
PUBLIC_WS_HOST: `ws://localhost:${ports.ws}`,
|
|
105
|
+
PUBLIC_WS_PORT: String(ports.ws),
|
|
106
|
+
PUBLIC_TRPC_URL: `http://localhost:${ports.trpc}`,
|
|
107
|
+
PUBLIC_TRPC_PORT: String(ports.trpc),
|
|
85
108
|
BOSUN_NPX_RUN: 'true'
|
|
86
109
|
},
|
|
87
110
|
shell: process.platform === 'win32'
|
|
88
111
|
})
|
|
112
|
+
watchChild(child, 'backend')
|
|
113
|
+
return child
|
|
89
114
|
}
|
|
90
115
|
|
|
91
116
|
function startFrontend() {
|
|
117
|
+
if (!ports) throw new Error('Ports were not selected before starting the frontend.')
|
|
118
|
+
|
|
92
119
|
const frontPath = resolve(rootDir, 'build', 'index.js')
|
|
93
|
-
const bodySizeLimit =
|
|
120
|
+
const bodySizeLimit = baseEnv.BODY_SIZE_LIMIT || 'Infinity'
|
|
94
121
|
|
|
95
|
-
|
|
122
|
+
const child = spawn(process.execPath, [frontPath], {
|
|
96
123
|
cwd: process.cwd(),
|
|
97
124
|
stdio: 'inherit',
|
|
98
125
|
env: {
|
|
99
|
-
...
|
|
100
|
-
...envConfig,
|
|
126
|
+
...baseEnv,
|
|
101
127
|
HOST: 'localhost',
|
|
102
|
-
PORT:
|
|
128
|
+
PORT: String(ports.frontend),
|
|
129
|
+
PUBLIC_WS_HOST: `ws://localhost:${ports.ws}`,
|
|
130
|
+
PUBLIC_WS_HOSTNAME: 'localhost',
|
|
131
|
+
PUBLIC_WS_PORT: String(ports.ws),
|
|
132
|
+
PUBLIC_TRPC_URL: `http://localhost:${ports.trpc}`,
|
|
133
|
+
PUBLIC_TRPC_HOSTNAME: 'localhost',
|
|
134
|
+
PUBLIC_TRPC_PORT: String(ports.trpc),
|
|
103
135
|
// Latency recordings are uploaded as WAV files and can be large.
|
|
104
136
|
BODY_SIZE_LIMIT: bodySizeLimit
|
|
105
137
|
},
|
|
106
138
|
shell: process.platform === 'win32'
|
|
107
139
|
})
|
|
140
|
+
watchChild(child, 'frontend')
|
|
141
|
+
return child
|
|
108
142
|
}
|
|
109
143
|
|
|
110
144
|
function restartBackend() {
|
|
111
145
|
if (backendProcess) {
|
|
146
|
+
expectedExits.add(backendProcess)
|
|
112
147
|
backendProcess.kill()
|
|
113
148
|
}
|
|
114
149
|
try {
|
|
@@ -128,12 +163,163 @@ function debouncedRestart() {
|
|
|
128
163
|
}, 300)
|
|
129
164
|
}
|
|
130
165
|
|
|
166
|
+
async function selectPorts() {
|
|
167
|
+
const reserved = new Set()
|
|
168
|
+
|
|
169
|
+
const frontend = await findAvailablePort(
|
|
170
|
+
readPreferredPort(['BOSUN_FRONTEND_PORT', 'BOSUN_PORT'], 5177),
|
|
171
|
+
reserved
|
|
172
|
+
)
|
|
173
|
+
reserved.add(frontend)
|
|
174
|
+
|
|
175
|
+
const ws = await findAvailablePort(
|
|
176
|
+
readPreferredPort(
|
|
177
|
+
['BOSUN_WS_PORT', 'PUBLIC_WS_PORT'],
|
|
178
|
+
portFromUrl(baseEnv.PUBLIC_WS_HOST) ?? 8080
|
|
179
|
+
),
|
|
180
|
+
reserved
|
|
181
|
+
)
|
|
182
|
+
reserved.add(ws)
|
|
183
|
+
|
|
184
|
+
const trpc = await findAvailablePort(
|
|
185
|
+
readPreferredPort(
|
|
186
|
+
['BOSUN_TRPC_PORT', 'PUBLIC_TRPC_PORT'],
|
|
187
|
+
portFromUrl(baseEnv.PUBLIC_TRPC_URL) ?? 2022
|
|
188
|
+
),
|
|
189
|
+
reserved
|
|
190
|
+
)
|
|
191
|
+
|
|
192
|
+
return { frontend, ws, trpc }
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* @param {string[]} names
|
|
197
|
+
* @param {number} fallback
|
|
198
|
+
*/
|
|
199
|
+
function readPreferredPort(names, fallback) {
|
|
200
|
+
for (const name of names) {
|
|
201
|
+
const value = baseEnv[name]
|
|
202
|
+
if (value) return parsePort(value, name)
|
|
203
|
+
}
|
|
204
|
+
return fallback
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* @param {string | undefined} value
|
|
209
|
+
*/
|
|
210
|
+
function portFromUrl(value) {
|
|
211
|
+
if (!value) return null
|
|
212
|
+
try {
|
|
213
|
+
const url = new URL(value)
|
|
214
|
+
return url.port ? parsePort(url.port, value) : null
|
|
215
|
+
} catch {
|
|
216
|
+
return null
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* @param {string | number} value
|
|
222
|
+
* @param {string} source
|
|
223
|
+
*/
|
|
224
|
+
function parsePort(value, source) {
|
|
225
|
+
const port = Number(value)
|
|
226
|
+
if (!Number.isInteger(port) || port < 1 || port > 65535) {
|
|
227
|
+
throw new Error(`Invalid port for ${source}: ${value}`)
|
|
228
|
+
}
|
|
229
|
+
return port
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
/**
|
|
233
|
+
* @param {number} preferredPort
|
|
234
|
+
* @param {Set<number>} reserved
|
|
235
|
+
*/
|
|
236
|
+
async function findAvailablePort(preferredPort, reserved) {
|
|
237
|
+
for (let port = preferredPort; port <= 65535; port++) {
|
|
238
|
+
if (reserved.has(port)) continue
|
|
239
|
+
if (await isPortAvailable(port)) return port
|
|
240
|
+
}
|
|
241
|
+
throw new Error(`Cannot find an available port at or above ${preferredPort}.`)
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
/**
|
|
245
|
+
* @param {number} port
|
|
246
|
+
*/
|
|
247
|
+
function isPortAvailable(port) {
|
|
248
|
+
return Promise.all([
|
|
249
|
+
canListenOnPort(port),
|
|
250
|
+
canListenOnPort(port, '127.0.0.1'),
|
|
251
|
+
canListenOnPort(port, '::1')
|
|
252
|
+
]).then((checks) => checks.every(Boolean))
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* @param {number} port
|
|
257
|
+
* @param {string} [host]
|
|
258
|
+
*/
|
|
259
|
+
function canListenOnPort(port, host) {
|
|
260
|
+
return new Promise((resolveAvailable) => {
|
|
261
|
+
const server = createServer()
|
|
262
|
+
|
|
263
|
+
server.once('error', (error) => {
|
|
264
|
+
if (host === '::1' && isUnsupportedIpv6Error(error)) {
|
|
265
|
+
resolveAvailable(true)
|
|
266
|
+
return
|
|
267
|
+
}
|
|
268
|
+
resolveAvailable(false)
|
|
269
|
+
})
|
|
270
|
+
|
|
271
|
+
server.once('listening', () => {
|
|
272
|
+
server.close(() => resolveAvailable(true))
|
|
273
|
+
})
|
|
274
|
+
|
|
275
|
+
server.listen(host ? { port, host } : { port })
|
|
276
|
+
})
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* @param {unknown} error
|
|
281
|
+
*/
|
|
282
|
+
function isUnsupportedIpv6Error(error) {
|
|
283
|
+
return (
|
|
284
|
+
error instanceof Error &&
|
|
285
|
+
'code' in error &&
|
|
286
|
+
(error.code === 'EAFNOSUPPORT' || error.code === 'EINVAL')
|
|
287
|
+
)
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
/**
|
|
291
|
+
* @param {ChildProcess} child
|
|
292
|
+
* @param {string} name
|
|
293
|
+
*/
|
|
294
|
+
function watchChild(child, name) {
|
|
295
|
+
child.on('error', (error) => {
|
|
296
|
+
if (isShuttingDown) return
|
|
297
|
+
console.error(`❌ Bosun ${name} failed to start:`, error.message)
|
|
298
|
+
shutdown(1)
|
|
299
|
+
})
|
|
300
|
+
|
|
301
|
+
child.on('exit', (code, signal) => {
|
|
302
|
+
if (isShuttingDown || expectedExits.has(child)) return
|
|
303
|
+
|
|
304
|
+
const reason = signal ? `signal ${signal}` : `exit code ${code ?? 1}`
|
|
305
|
+
console.error(`❌ Bosun ${name} stopped unexpectedly (${reason}).`)
|
|
306
|
+
shutdown(code ?? 1)
|
|
307
|
+
})
|
|
308
|
+
}
|
|
309
|
+
|
|
131
310
|
// Handle cleanup
|
|
132
|
-
process.on('SIGINT', () =>
|
|
311
|
+
process.on('SIGINT', () => shutdown(0))
|
|
312
|
+
process.on('SIGTERM', () => shutdown(0))
|
|
313
|
+
|
|
314
|
+
/**
|
|
315
|
+
* @param {number} code
|
|
316
|
+
*/
|
|
317
|
+
function shutdown(code) {
|
|
318
|
+
isShuttingDown = true
|
|
133
319
|
if (backendProcess) backendProcess.kill()
|
|
134
320
|
if (frontendProcess) frontendProcess.kill()
|
|
135
|
-
process.exit(
|
|
136
|
-
}
|
|
321
|
+
process.exit(code)
|
|
322
|
+
}
|
|
137
323
|
|
|
138
324
|
function isLinked() {
|
|
139
325
|
return !__filename.includes('node_modules/@recombine-ai/bosun')
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DarkerGrotesque,ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-2{top:.5rem;right:.5rem;bottom:.5rem;left:.5rem}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-left-28{left:-7rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-2{bottom:.5rem}.bottom-full{bottom:100%}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.right-0{right:0}.right-2{right:.5rem}.right-6{right:1.5rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.z-popover{z-index:1300}.m-0{margin:0}.m-4{margin:1rem}.m-auto{margin:auto}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-7{margin-left:1.75rem}.ml-9{margin-left:2.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-48{margin-top:12rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.contents{display:contents}.hidden{display:none}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-7{width:1.75rem;height:1.75rem}.h-0\.5{height:.125rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[55vh\]{height:55vh}.h-\[65vh\]{height:65vh}.h-\[70vh\]{height:70vh}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.h-xl{height:90px}.max-h-56{max-height:14rem}.max-h-60{max-height:15rem}.max-h-96{max-height:24rem}.max-h-\[60vh\]{max-height:60vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[calc\(90vh-7rem\)\]{max-height:calc(90vh - 7rem)}.min-h-0{min-height:0px}.min-h-11{min-height:2.75rem}.min-h-96{min-height:24rem}.\!w-\[80vw\]{width:80vw!important}.\!w-\[85vw\]{width:85vw!important}.w-1\/3{width:33.333333%}.w-16{width:4rem}.w-2{width:.5rem}.w-2\/3{width:66.666667%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-50vw{width:50vw}.w-56{width:14rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-\[95vw\]{width:95vw}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.w-xl{width:90px}.min-w-0{min-width:0px}.min-w-fit{min-width:-moz-fit-content;min-width:fit-content}.min-w-full{min-width:100%}.min-w-xl{min-width:90px}.\!max-w-3xl{max-width:48rem!important}.\!max-w-4xl{max-width:56rem!important}.\!max-w-5xl{max-width:64rem!important}.max-w-2xl{max-width:42rem}.max-w-6xl{max-width:72rem}.max-w-\[28rem\]{max-width:28rem}.max-w-\[34rem\]{max-width:34rem}.max-w-\[70\%\]{max-width:70%}.max-w-\[83\%\]{max-width:83%}.max-w-\[90\%\]{max-width:90%}.max-w-\[min\(26rem\,90vw\)\]{max-width:min(26rem,90vw)}.flex-1{flex:1 1 0%}.flex-none{flex:none}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-text{cursor:text}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;user-select:text}.resize{resize:both}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[140px_minmax\(0\,1fr\)\]{grid-template-columns:140px minmax(0,1fr)}.grid-cols-\[1fr\,2\.25rem\]{grid-template-columns:1fr 2.25rem}.grid-cols-\[2\.25rem\,1fr\]{grid-template-columns:2.25rem 1fr}.grid-cols-\[minmax\(140px\,2fr\)_minmax\(0\,10fr\)_minmax\(0\,11fr\)\]{grid-template-columns:minmax(140px,2fr) minmax(0,10fr) minmax(0,11fr)}.grid-rows-3{grid-template-rows:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-0{row-gap:0px}.gap-y-1{row-gap:.25rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.justify-self-end{justify-self:end}.justify-self-center{justify-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-scroll{overflow:scroll}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-nowrap{text-wrap:nowrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.\!rounded-none{border-radius:0!important}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:8px}.rounded-md{border-radius:5px}.rounded-none{border-radius:0}.rounded-sm{border-radius:3px}.rounded-b{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-r-none{border-top-right-radius:0;border-bottom-right-radius:0}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.\!border{border-width:1px!important}.border{border-width:1px}.border-0{border-width:0px}.border-thin{border-width:.4px}.border-x{border-left-width:1px;border-right-width:1px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-b-thin{border-bottom-width:.4px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-r{border-right-width:1px}.border-r-thin{border-right-width:.4px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-none{border-style:none}.\!border-rc-gray-500{--tw-border-opacity: 1 !important;border-color:rgb(75 75 75 / var(--tw-border-opacity, 1))!important}.border-emerald-500{--tw-border-opacity: 1;border-color:rgb(16 185 129 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-rc-gray-050{border-color:#ffffff1a}.border-rc-gray-110{border-color:#dddddd1a}.border-rc-gray-200\/80{border-color:#afafafcc}.border-rc-gray-300{--tw-border-opacity: 1;border-color:rgb(118 118 118 / var(--tw-border-opacity, 1))}.border-rc-gray-300\/40{border-color:#76767666}.border-rc-gray-500{--tw-border-opacity: 1;border-color:rgb(75 75 75 / var(--tw-border-opacity, 1))}.border-rc-gray-500\/80{border-color:#4b4b4bcc}.border-rc-gray-600{--tw-border-opacity: 1;border-color:rgb(55 55 55 / var(--tw-border-opacity, 1))}.border-rc-gray-650{--tw-border-opacity: 1;border-color:rgb(38 38 38 / var(--tw-border-opacity, 1))}.border-rc-gray-700{--tw-border-opacity: 1;border-color:rgb(34 34 34 / var(--tw-border-opacity, 1))}.border-rc-gray-700\/50{border-color:#22222280}.border-rc-gray-700\/60{border-color:#2229}.border-rc-green-200\/90{border-color:#00b58ae6}.border-rc-green-450{border-color:#0457431a}.border-rc-red-600{--tw-border-opacity: 1;border-color:rgb(255 102 102 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/70{border-color:#ef4444b3}.border-transparent{border-color:transparent}.border-r-gray-700\/50{border-right-color:#37415180}.border-r-rc-gray-600{--tw-border-opacity: 1;border-right-color:rgb(55 55 55 / var(--tw-border-opacity, 1))}.\!bg-rc-gray-700{--tw-bg-opacity: 1 !important;background-color:rgb(34 34 34 / var(--tw-bg-opacity, 1))!important}.bg-black\/20{background-color:#0003}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-rc-gray-600{--tw-bg-opacity: 1;background-color:rgb(55 55 55 / var(--tw-bg-opacity, 1))}.bg-rc-gray-700{--tw-bg-opacity: 1;background-color:rgb(34 34 34 / var(--tw-bg-opacity, 1))}.bg-rc-gray-700\/45{background-color:#22222273}.bg-rc-gray-700\/60{background-color:#2229}.bg-rc-gray-700\/70{background-color:#222222b3}.bg-rc-gray-800{--tw-bg-opacity: 1;background-color:rgb(29 29 29 / var(--tw-bg-opacity, 1))}.bg-rc-gray-800\/40{background-color:#1d1d1d66}.bg-rc-gray-900{--tw-bg-opacity: 1;background-color:rgb(25 25 25 / var(--tw-bg-opacity, 1))}.bg-rc-gray-900\/40{background-color:#19191966}.bg-rc-gray-900\/60{background-color:#19191999}.bg-rc-gray-900\/95{background-color:#191919f2}.bg-rc-gray-930{background-color:#00000003}.bg-rc-gray-930\/90{background-color:#000000e6}.bg-rc-gray-980{--tw-bg-opacity: 1;background-color:rgb(24 24 24 / var(--tw-bg-opacity, 1))}.bg-rc-green-200{--tw-bg-opacity: 1;background-color:rgb(0 181 138 / var(--tw-bg-opacity, 1))}.bg-rc-green-350{background-color:#09754f99}.bg-rc-green-700{--tw-bg-opacity: 1;background-color:rgb(0 90 69 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-950\/20{background-color:#450a0a33}.bg-red-950\/30{background-color:#450a0a4d}.bg-red-950\/40{background-color:#450a0a66}.bg-transparent{background-color:transparent}.object-contain{-o-object-fit:contain;object-fit:contain}.\!p-2{padding:.5rem!important}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.\!pb-1{padding-bottom:.25rem!important}.\!pr-8{padding-right:2rem!important}.\!pt-\[5px\]{padding-top:5px!important}.pb-1{padding-bottom:.25rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-3{padding-bottom:.75rem}.pb-6{padding-bottom:1.5rem}.pb-xs{padding-bottom:2px}.pl-11{padding-left:2.75rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-5{padding-left:1.25rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pr-80{padding-right:20rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-40{padding-top:10rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.align-text-bottom{vertical-align:text-bottom}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:DarkerGrotesque,ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.text-4xl{font-size:2.25rem;line-height:1.2}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[16px\]{font-size:16px}.text-base{font-size:.875rem;line-height:1.2}.text-lg{font-size:1.125rem;line-height:1.2;letter-spacing:.005em}.text-sm{font-size:.8125rem;line-height:1.25;letter-spacing:.005em}.text-xl{font-size:1.25rem;line-height:.9;letter-spacing:.005em}.text-xs{font-size:.75rem;line-height:1.1;letter-spacing:.01em}.\!font-medium{font-weight:500!important}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.2\]{line-height:1.2}.leading-\[30px\]{line-height:30px}.leading-none{line-height:1}.leading-snug{line-height:1.375}.tracking-wide{letter-spacing:.025em}.text-emerald-500{--tw-text-opacity: 1;color:rgb(16 185 129 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-inherit{color:inherit}.text-rc-blue{--tw-text-opacity: 1;color:rgb(86 156 214 / var(--tw-text-opacity, 1))}.text-rc-gray-050{color:#ffffff1a}.text-rc-gray-100{--tw-text-opacity: 1;color:rgb(221 221 221 / var(--tw-text-opacity, 1))}.text-rc-gray-200{--tw-text-opacity: 1;color:rgb(175 175 175 / var(--tw-text-opacity, 1))}.text-rc-gray-200\/70{color:#afafafb3}.text-rc-gray-300{--tw-text-opacity: 1;color:rgb(118 118 118 / var(--tw-text-opacity, 1))}.text-rc-gray-400{--tw-text-opacity: 1;color:rgb(99 99 99 / var(--tw-text-opacity, 1))}.text-rc-gray-400\/70{color:#636363b3}.text-rc-gray-500{--tw-text-opacity: 1;color:rgb(75 75 75 / var(--tw-text-opacity, 1))}.text-rc-green-200{--tw-text-opacity: 1;color:rgb(0 181 138 / var(--tw-text-opacity, 1))}.text-rc-green-350{color:#09754f99}.text-rc-green-400{--tw-text-opacity: 1;color:rgb(4 87 67 / var(--tw-text-opacity, 1))}.text-rc-red-600{--tw-text-opacity: 1;color:rgb(255 102 102 / var(--tw-text-opacity, 1))}.text-rc-red-800{--tw-text-opacity: 1;color:rgb(255 129 101 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.placeholder-rc-gray-300::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(118 118 118 / var(--tw-placeholder-opacity, 1))}.placeholder-rc-gray-300::placeholder{--tw-placeholder-opacity: 1;color:rgb(118 118 118 / var(--tw-placeholder-opacity, 1))}.\!accent-rc-gray-600{accent-color:#373737!important}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-65{opacity:.65}.opacity-80{opacity:.8}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.12\)\]{--tw-shadow: 0 0 0 1px rgba(0,0,0,.12);--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow: 0 0 0 1px rgba(0,0,0,.28);--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-inner-white-soft{--tw-shadow: inset 0 0 10px 0 rgba(255,255,255,.1);--tw-shadow-colored: inset 0 0 10px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 0 0 1px rgba(118, 118, 118, .4);--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-2xl{--tw-backdrop-blur: blur(40px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-3xl{--tw-backdrop-blur: blur(64px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.analysis-quote{border-radius:2px}.analysis-quote-focus{box-shadow:inset 0 0 0 1px #fecacaf2,inset 0 0 0 3px #dc262640;border-radius:2px}.analysis-quote-l1{background:#dc26262e}.analysis-quote-l2{background:#dc26263d}.analysis-quote-l3{background:#dc26264d}.analysis-quote-l4{background:#dc26265c}.analysis-quote-l5{background:#dc26266b}.analysis-quote-l6{background:#dc26267a}.analysis-quote-l7{background:#dc26268a}.analysis-quote-l8{background:#dc262699}.analysis-quote-l9{background:#dc2626a8}.analysis-quote-l10{background:#dc2626b8}.monaco-editor .test-expected-output{color:#00b58a!important}.monaco-editor .test-expected-output-tag{color:#ce9178!important}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.last\:border-b-0:last-child{border-bottom-width:0px}.checked\:border-rc-gray-200:checked{--tw-border-opacity: 1;border-color:rgb(175 175 175 / var(--tw-border-opacity, 1))}.checked\:bg-rc-gray-600:checked{--tw-bg-opacity: 1;background-color:rgb(55 55 55 / var(--tw-bg-opacity, 1))}.hover\:border:hover{border-width:1px}.hover\:border-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.hover\:border-rc-gray-200:hover{--tw-border-opacity: 1;border-color:rgb(175 175 175 / var(--tw-border-opacity, 1))}.hover\:border-rc-gray-400:hover{--tw-border-opacity: 1;border-color:rgb(99 99 99 / var(--tw-border-opacity, 1))}.hover\:border-rc-gray-500:hover{--tw-border-opacity: 1;border-color:rgb(75 75 75 / var(--tw-border-opacity, 1))}.hover\:border-rc-green-200:hover{--tw-border-opacity: 1;border-color:rgb(0 181 138 / var(--tw-border-opacity, 1))}.hover\:bg-rc-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(55 55 55 / var(--tw-bg-opacity, 1))}.hover\:bg-rc-gray-650:hover{--tw-bg-opacity: 1;background-color:rgb(38 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-rc-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(34 34 34 / var(--tw-bg-opacity, 1))}.hover\:bg-rc-gray-700\/70:hover{background-color:#222222b3}.hover\:bg-rc-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(29 29 29 / var(--tw-bg-opacity, 1))}.hover\:bg-rc-gray-800\/40:hover{background-color:#1d1d1d66}.hover\:bg-rc-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(25 25 25 / var(--tw-bg-opacity, 1))}.hover\:bg-rc-green-250:hover{background-color:#005c3b99}.hover\:bg-rc-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(0 90 69 / var(--tw-bg-opacity, 1))}.hover\:bg-double-gradient:hover{background-image:linear-gradient(0deg,#00000003,#00000003),linear-gradient(0deg,#ffffff0d,#ffffff0d)}.hover\:text-gray-100:hover{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-rc-gray-100:hover{--tw-text-opacity: 1;color:rgb(221 221 221 / var(--tw-text-opacity, 1))}.hover\:text-rc-gray-200:hover{--tw-text-opacity: 1;color:rgb(175 175 175 / var(--tw-text-opacity, 1))}.hover\:text-rc-green-100:hover{--tw-text-opacity: 1;color:rgb(147 255 109 / var(--tw-text-opacity, 1))}.hover\:text-rc-green-250:hover{color:#005c3b99}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-gray-500:focus{--tw-border-opacity: 1;border-color:rgb(107 114 128 / var(--tw-border-opacity, 1))}.focus\:border-rc-gray-300:focus{--tw-border-opacity: 1;border-color:rgb(118 118 118 / var(--tw-border-opacity, 1))}.focus\:border-rc-gray-400:focus{--tw-border-opacity: 1;border-color:rgb(99 99 99 / var(--tw-border-opacity, 1))}.focus\:bg-rc-gray-400:focus{--tw-bg-opacity: 1;background-color:rgb(99 99 99 / var(--tw-bg-opacity, 1))}.focus\:bg-rc-green-200:focus{--tw-bg-opacity: 1;background-color:rgb(0 181 138 / var(--tw-bg-opacity, 1))}.focus\:bg-double-gradient:focus{background-image:linear-gradient(0deg,#00000003,#00000003),linear-gradient(0deg,#ffffff0d,#ffffff0d)}.focus\:text-gray-100:focus{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-0:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-rc-gray-300:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(118 118 118 / var(--tw-ring-opacity, 1))}.focus-visible\:border-rc-gray-400:focus-visible{--tw-border-opacity: 1;border-color:rgb(99 99 99 / var(--tw-border-opacity, 1))}.focus-visible\:shadow-none:focus-visible{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:outline:focus-visible{outline-style:solid}.focus-visible\:outline-2:focus-visible{outline-width:2px}.focus-visible\:-outline-offset-2:focus-visible{outline-offset:-2px}.active\:border-rc-gray-200:active{--tw-border-opacity: 1;border-color:rgb(175 175 175 / var(--tw-border-opacity, 1))}.active\:border-rc-gray-400:active{--tw-border-opacity: 1;border-color:rgb(99 99 99 / var(--tw-border-opacity, 1))}.active\:bg-rc-gray-600:active{--tw-bg-opacity: 1;background-color:rgb(55 55 55 / var(--tw-bg-opacity, 1))}.active\:bg-rc-green-250:active{background-color:#005c3b99}.active\:bg-double-gradient:active{background-image:linear-gradient(0deg,#00000003,#00000003),linear-gradient(0deg,#ffffff0d,#ffffff0d)}.active\:text-gray-100:active{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:cursor-wait:disabled{cursor:wait}.disabled\:opacity-35:disabled{opacity:.35}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}.disabled\:hover\:bg-transparent:hover:disabled{background-color:transparent}.disabled\:hover\:text-rc-gray-400:hover:disabled{--tw-text-opacity: 1;color:rgb(99 99 99 / var(--tw-text-opacity, 1))}.group:hover .group-hover\:text-rc-gray-200{--tw-text-opacity: 1;color:rgb(175 175 175 / var(--tw-text-opacity, 1))}.aria-selected\:text-rc-green-200[aria-selected=true]{--tw-text-opacity: 1;color:rgb(0 181 138 / var(--tw-text-opacity, 1))}.aria-selected\:after\:absolute[aria-selected=true]:after{content:var(--tw-content);position:absolute}.aria-selected\:after\:inset-x-0[aria-selected=true]:after{content:var(--tw-content);left:0;right:0}.aria-selected\:after\:bottom-0[aria-selected=true]:after{content:var(--tw-content);bottom:0}.aria-selected\:after\:h-0\.5[aria-selected=true]:after{content:var(--tw-content);height:.125rem}.aria-selected\:after\:bg-rc-green-200[aria-selected=true]:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(0 181 138 / var(--tw-bg-opacity, 1))}.aria-selected\:after\:content-\[\'\'\][aria-selected=true]:after{--tw-content: "";content:var(--tw-content)}@media (min-width: 640px){.sm\:max-w-\[80\%\]{max-width:80%}.sm\:max-w-\[85\%\]{max-width:85%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 768px){.md\:max-w-\[70\%\]{max-width:70%}.md\:max-w-\[75\%\]{max-width:75%}}@media (min-width: 1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}body{margin:0;padding:0;font-family:DarkerGrotesque,ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.875rem;line-height:1.2;font-weight:400;--tw-text-opacity: 1;color:rgb(118 118 118 / var(--tw-text-opacity, 1))}*{margin:0;padding:0;box-sizing:border-box}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var B=Object.defineProperty;var g=i=>{throw TypeError(i)};var D=(i,e,s)=>e in i?B(i,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[e]=s;var w=(i,e,s)=>D(i,typeof e!="symbol"?e+"":e,s),y=(i,e,s)=>e.has(i)||g("Cannot "+s);var t=(i,e,s)=>(y(i,e,"read from private field"),s?s.call(i):e.get(i)),l=(i,e,s)=>e.has(i)?g("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(i):e.set(i,s),M=(i,e,s,a)=>(y(i,e,"write to private field"),a?a.call(i,s):e.set(i,s),s);import{a6 as x,ac as k,a7 as z,x as A,z as F,Q as C,A as Q,F as S,ab as X,X as j}from"./Dv8m1cTI.js";var c,n,r,u,p,_,v;class G{constructor(e,s=!0){w(this,"anchor");l(this,c,new Map);l(this,n,new Map);l(this,r,new Map);l(this,u,new Set);l(this,p,!0);l(this,_,e=>{if(t(this,c).has(e)){var s=t(this,c).get(e),a=t(this,n).get(s);if(a)x(a),t(this,u).delete(s);else{var h=t(this,r).get(s);h&&(x(h.effect),t(this,n).set(s,h.effect),t(this,r).delete(s),h.fragment.lastChild.remove(),this.anchor.before(h.fragment),a=h.effect)}for(const[f,o]of t(this,c)){if(t(this,c).delete(f),f===e)break;const d=t(this,r).get(o);d&&(k(d.effect),t(this,r).delete(o))}for(const[f,o]of t(this,n)){if(f===s||t(this,u).has(f))continue;const d=()=>{if(Array.from(t(this,c).values()).includes(f)){var b=document.createDocumentFragment();X(o,b),b.append(A()),t(this,r).set(f,{effect:o,fragment:b})}else k(o);t(this,u).delete(f),t(this,n).delete(f)};t(this,p)||!a?(t(this,u).add(f),z(o,d,!1)):d()}}});l(this,v,e=>{t(this,c).delete(e);const s=Array.from(t(this,c).values());for(const[a,h]of t(this,r))s.includes(a)||(k(h.effect),t(this,r).delete(a))});this.anchor=e,M(this,p,s)}ensure(e,s){var a=C,h=j();if(s&&!t(this,n).has(e)&&!t(this,r).has(e))if(h){var f=document.createDocumentFragment(),o=A();f.append(o),t(this,r).set(e,{effect:F(()=>s(o)),fragment:f})}else t(this,n).set(e,F(()=>s(this.anchor)));if(t(this,c).set(a,e),h){for(const[d,m]of t(this,n))d===e?a.unskip_effect(m):a.skip_effect(m);for(const[d,m]of t(this,r))d===e?a.unskip_effect(m.effect):a.skip_effect(m.effect);a.oncommit(t(this,_)),a.ondiscard(t(this,v))}else Q&&(this.anchor=S),t(this,_).call(this,a)}}c=new WeakMap,n=new WeakMap,r=new WeakMap,u=new WeakMap,p=new WeakMap,_=new WeakMap,v=new WeakMap;export{G as B};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{m as a}from"./Dv8m1cTI.js";a();
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as j,a as b,f as q}from"./C4SnSfql.js";import{o as K}from"./C-whEtKd.js";import{p as M,f as R,a as W,j as t,q as L,w as c,c as T,r as k,t as B,v as F}from"./Dv8m1cTI.js";import{i as G}from"./CXo2BVs0.js";import{c as N,s as H}from"./C4D-JXnS.js";import{b as h}from"./B0iEglSe.js";import{p as i}from"./HJHYLHDn.js";import{P as I}from"./DNLcpWO_.js";var J=q('<div class="popover svelte-1fd3ybn" role="dialog" aria-modal="true"><div class="popover svelte-1fd3ybn" role="dialog" aria-modal="true"><!></div></div>');function te(e,n){M(n,!0);let v=i(n,"open",3,!1),d=i(n,"anchorEl",3,null),w=i(n,"id",3,""),O=i(n,"placement",3,"bottom-start"),x=i(n,"offset",19,()=>[0,2]),z=i(n,"flip",3,!0),A=i(n,"preventOverflow",3,!0),y=i(n,"onClose",3,()=>{}),a=L(null),l=L(null);function g(){y()()}function C(o){if(v()&&t(a)&&d()){const s=o.target;!t(a).contains(s)&&!d().contains(s)&&g()}}function E(o){o.key==="Escape"&&v()&&g()}K(()=>{document.addEventListener("click",C,!0),document.addEventListener("keydown",E);const o=()=>{t(l)&&t(l).update()},s=()=>{t(l)&&t(l).update()};return window.addEventListener("resize",o),window.addEventListener("scroll",s,!0),()=>{document.removeEventListener("click",C,!0),document.removeEventListener("keydown",E),window.removeEventListener("resize",o),window.removeEventListener("scroll",s,!0)}});var _=j(),D=R(_);{var P=o=>{h(I(o,{get referenceEl(){return d()},get placement(){return O()},get offset(){return x()},get flip(){return z()},get preventOverflow(){return A()},children:p=>{var f=J(),u=T(f),S=T(u);n.children(S),k(u),h(u,r=>c(a,r),()=>t(a)),k(f),h(f,r=>c(a,r),()=>t(a)),B(()=>{var r;N(f,"id",w()),N(u,"id",w()),H(u,`min-width:${((r=d())==null?void 0:r.offsetWidth)??0}px`)}),b(p,f)},$$slots:{default:!0}}),p=>c(l,p,!0),()=>t(l))};G(D,o=>{v()&&d()&&o(P)})}b(e,_),W()}let m=F([]);function ie(e){return!Q(e)&&!U(e)}function Q(e){return"operationName"in e&&"method"in e&&"path"in e}function U(e){return"eventName"in e&&"role"in e&&"medium"in e&&"content"in e}function ae(e){m.push(e)}function le(e){console.log("[chat-content] addApiCallTrace",e==null?void 0:e.operationName,e==null?void 0:e.method,e==null?void 0:e.path,e),m.push(e)}function se(e){console.log("[chat-content] addConversationalTrace",e==null?void 0:e.eventName,e==null?void 0:e.role,e==null?void 0:e.medium,e),m.push(e)}function re(){m.length=0}export{te as D,Q as a,U as b,m as c,re as d,ae as e,le as f,se as g,ie as i};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{b as S,e as T,P as x,h as E,ag as O,ah as Y,ai as k}from"./Dv8m1cTI.js";function n(r,s){return r===s||(r==null?void 0:r[k])===s}function D(r={},s,i,A){var h=S.r,p=O;return T(()=>{var f,t;return x(()=>{f=t,t=[],E(()=>{n(i(...t),r)||(s(r,...t),f&&n(i(...f),r)&&s(null,...f))})}),()=>{let a=p;for(;a!==h&&a.parent!==null&&a.parent.f&Y;)a=a.parent;const w=()=>{t&&n(i(...t),r)&&s(null,...t)},c=a.teardown;a.teardown=()=>{w(),c==null||c()}}}),r}export{D as b};
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{at as o,
|
|
1
|
+
import{at as o,h as a,aE as d}from"./Dv8m1cTI.js";function p(s,u,t){if(s==null)return u(void 0),o;const e=a(()=>s.subscribe(u,t));return e.unsubscribe?()=>e.unsubscribe():e}const i=[];function h(s,u=o){let t=null;const e=new Set;function c(r){if(d(s,r)&&(s=r,t)){const b=!i.length;for(const n of e)n[1](),i.push(n,s);if(b){for(let n=0;n<i.length;n+=2)i[n][0](i[n+1]);i.length=0}}}function f(r){c(r(s))}function l(r,b=o){const n=[r,b];return e.add(n),e.size===1&&(t=u(c,f)||o),r(s),()=>{e.delete(n),e.size===0&&t&&(t(),t=null)}}return{set:c,update:f,subscribe:l}}function _(s){let u;return p(s,t=>u=t)(),u}export{_ as g,p as s,h as w};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{O as k,h as t,P as _,Q as f,R as m,A as b}from"./Dv8m1cTI.js";function i(e,a,v=a){var c=new WeakSet;k(e,"input",async r=>{var l=r?e.defaultValue:e.value;if(l=s(e)?u(l):l,v(l),f!==null&&c.add(f),await m(),l!==(l=a())){var h=e.selectionStart,d=e.selectionEnd,n=e.value.length;if(e.value=l??"",d!==null){var o=e.value.length;h===d&&d===n&&o>n?(e.selectionStart=o,e.selectionEnd=o):(e.selectionStart=h,e.selectionEnd=Math.min(d,o))}}}),(b&&e.defaultValue!==e.value||t(a)==null&&e.value)&&(v(s(e)?u(e.value):e.value),f!==null&&c.add(f)),_(()=>{var r=a();if(e===document.activeElement){var l=f;if(c.has(l))return}s(e)&&r===u(e.value)||e.type==="date"&&!r&&!e.value||r!==e.value&&(e.value=r??"")})}function E(e,a,v=a){k(e,"change",c=>{var r=c?e.defaultChecked:e.checked;v(r)}),(b&&e.defaultChecked!==e.checked||t(a)==null)&&v(e.checked),_(()=>{var c=a();e.checked=!!c})}function s(e){var a=e.type;return a==="number"||a==="range"}function u(e){return e===""?null:+e}export{E as a,i as b};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{I as t}from"./Dv8m1cTI.js";const[s,o]=t();export{s as g,o as s};
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y,A as o,J as v,K as f,L as l,M as m,E as p,D as i,N as T,F as A}from"./Dv8m1cTI.js";import{B as E}from"./7E8m6dwk.js";function g(d,_,e){var s;o&&(s=A,v());var r=new E(d);y(()=>{var a=_()??null;if(o){var h=l(s),c=h===T,u=a!==null;if(c!==u){var t=m();p(t),r.anchor=t,i(!1),r.ensure(a,a&&(n=>e(n,a))),i(!0);return}}r.ensure(a,a&&(n=>e(n,a)))},f)}export{g as c};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{a as f,f as p}from"./C4SnSfql.js";import{p as v,a as x,j as h,c as _,r as z,n as C}from"./Dv8m1cTI.js";import{s as k}from"./D4obUD_s.js";import{a as w}from"./C4D-JXnS.js";import{b as B}from"./B0iEglSe.js";import{p as r,r as j}from"./HJHYLHDn.js";var N=new Set(["$$slots","$$events","$$legacy","variant","size","type","disabled","class","children","el"]),S=p("<button><!></button>");function H(o,e){v(e,!0);let s=r(e,"variant",3,"primary"),n=r(e,"size",3,"medium"),d=r(e,"type",3,"button"),i=r(e,"disabled",3,!1),b=r(e,"class",3,""),a=r(e,"el",15),l=j(e,N);const c={primary:"border border-thin border-rc-green-450 backdrop-blur-xl rounded-lg text-rc-gray-100 font-bold bg-rc-green-350 hover:bg-rc-green-250 focus:bg-rc-green-200 focus:outline-none active:bg-rc-green-250",secondary:"border border-thin border-rc-gray-050 backdrop-blur-2xl rounded-lg text-rc-gray-100 font-bold bg-rc-gray-930 hover:bg-double-gradient focus:bg-double-gradient focus:outline-none active:bg-double-gradient",outlined:"border border-rc-gray-500 bg-rc-gray-900 font-semibold hover:bg-rc-gray-700 hover:border-rc-gray-400 focus:outline-none focus:ring-0 focus:border-rc-gray-400 active:border-rc-gray-400",ghost:"bg-transparent rounded-lg hover:text-gray-100 focus:text-gray-100 active:text-gray-100"},g={big:"px-4 py-2 text-base",medium:"px-4 py-2 text-base",small:"px-4 py-2 text-base"};let u=C(()=>`text-gray-200
|
|
2
|
+
rounded
|
|
3
|
+
transition-colors
|
|
4
|
+
disabled:opacity-50
|
|
5
|
+
disabled:cursor-not-allowed
|
|
6
|
+
disabled:pointer-events-none
|
|
7
|
+
${c[s()]}
|
|
8
|
+
${g[n()]}
|
|
9
|
+
cursor-pointer
|
|
10
|
+
${b()}
|
|
11
|
+
`.trim());var t=S();w(t,()=>({type:d(),class:h(u),disabled:i(),...l}));var y=_(t);k(y,()=>e.children),z(t),B(t,m=>a(m),()=>a()),f(o,t),x()}export{H as B};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DLQqXQ6R.js","./C1FmrZbK.js","../assets/editor.BMIWPGx3.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{a as i,f as x,d as rt,b as ee,t as Z}from"./C4SnSfql.js";import{o as dt,a as at}from"./C-whEtKd.js";import{p as Ge,j as t,w as L,d as tt,c as n,r as o,t as M,a as We,q as te,f as je,s as d,n as l,o as se}from"./Dv8m1cTI.js";import{s as j}from"./_yZg6Sf-.js";import{i as C}from"./CXo2BVs0.js";import{s as fe,c as ut}from"./DYhTBLDc.js";import{M as Qe}from"./DTXUDKH5.js";import{T as nt,a as ye}from"./xebNt8-Z.js";import{B as Ze}from"./BwtfALfL.js";import{I as ot}from"./Dp760K13.js";import{c as vt}from"./C4D-JXnS.js";import{_ as ft}from"./C1FmrZbK.js";import{b as mt}from"./B0iEglSe.js";import{p as Re}from"./HJHYLHDn.js";import{e as gt,a as ht}from"./BU7aeYn4.js";import{g as kt}from"./D-wf2QNc.js";import{t as Pt}from"./DhBm2Vx9.js";import{c as ct,i as St}from"./Ajb1KYIn.js";function it(le={}){const e=le.thresholdPx??4,J=le.dragCursor??"text";let G=0,y=0,p=!1,P=!1,s=null,w=null;function F(){P=!1,p=!1,s==null||s.style.removeProperty("cursor"),s=null,w==null||w.abort(),w=null}function q(v){if(typeof window>"u"||v.button!==0)return;w==null||w.abort(),w=null,s==null||s.style.removeProperty("cursor"),G=v.clientX,y=v.clientY,p=!1,P=!0,s=v.currentTarget instanceof HTMLElement?v.currentTarget:null;const V=new AbortController;w=V;const me=de=>{if(!P||p)return;const ue=Math.abs(de.clientX-G),pe=Math.abs(de.clientY-y);ue+pe<e||(p=!0,s==null||s.style.setProperty("cursor",J))},ge=()=>{P=!1,s==null||s.style.removeProperty("cursor"),s=null,V.abort(),w===V&&(w=null)};window.addEventListener("pointermove",me,{signal:V.signal}),window.addEventListener("pointerup",ge,{signal:V.signal}),window.addEventListener("pointercancel",ge,{signal:V.signal})}function _(v){return v.detail>0&&p}return{onPointerDown:q,shouldSuppressClick:_,cleanup:F}}var Tt=x('<div><div class="h-full w-full"></div></div>');function Ne(le,e){Ge(e,!0);let J=Re(e,"language",3,"json"),G=Re(e,"class",3,""),y=null,p=null,P=te(null),s=te(!1);dt(()=>{if(!t(P))return;gt();let q=!1;return ft(()=>import("./DLQqXQ6R.js").then(_=>_.e),__vite__mapDeps([0,1,2]),import.meta.url).then(_=>{q||(ht(_),y=_.editor.create(t(P),{value:e.value??"",language:J(),theme:"bosun-dark",lineNumbers:"off",readOnly:!0,automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,wordWrap:"on",overviewRulerBorder:!1,hideCursorInOverviewRuler:!0,matchBrackets:"never",bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:"off",selectionHighlight:!1,renderLineHighlight:"none",contextmenu:!1}),p=y.getModel(),L(s,!0))}).catch(_=>{console.error("ReadOnlyMonaco: failed to init",_)}),()=>{q=!0;const _=p;if(p=null,y){try{y.setModel(null)}catch{}y.dispose(),y=null}try{_==null||_.dispose()}catch{}}}),tt(()=>{if(!y||!t(s))return;const q=e.value??"";y.getValue()!==q&&y.setValue(q)});var w=Tt(),F=n(w);mt(F,q=>L(P,q),()=>t(P)),o(w),M(()=>fe(w,1,`overflow-hidden rounded-md border border-rc-gray-700 ${G()}`)),i(le,w),We()}var Ct=x('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),Mt=x('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),Nt=x("<!> <!>",1),Rt=x('<div class="flex flex-col gap-3"><!> <div class="flex flex-wrap items-center justify-between gap-2 text-sm text-rc-gray-200"><div class="flex flex-wrap items-center gap-x-4 gap-y-1"><div><span class="text-rc-gray-400">Timing:</span> </div> <div><span class="text-rc-gray-400">Response time:</span> </div> <div><span class="text-rc-gray-400">URL:</span> </div></div> <!></div> <div><!> <div class="mt-2 h-[55vh]"><!></div></div></div>'),At=x('<button type="button" class="flex w-full cursor-pointer select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40"><!> <!> <span> </span></button> <!>',1);function Sr(le,e){Ge(e,!0);let J=te(!1),G=te("request");const y=it();at(y.cleanup);function p(h){try{if(typeof h=="string"){const b=h.trim();if(!b)return"";const W=JSON.parse(b);return JSON.stringify(W,null,2)}}catch{}try{return JSON.stringify(h??null,null,2)}catch{return String(h)}}function P(h){return new Date(h).toISOString()}function s(h){if(typeof h!="number"||!Number.isFinite(h))return null;const b=new Date(h);if(Number.isNaN(b.getTime()))return null;const W=String(b.getHours()).padStart(2,"0"),xe=String(b.getMinutes()).padStart(2,"0"),we=String(b.getSeconds()).padStart(2,"0");return`${W}:${xe}:${we}`}const w=l(()=>s(e.trace.createdAt)),F=l(()=>{if(e.trace.error!=null)return e.trace.error;if(!(e.trace.ok===!1||typeof e.trace.status=="number"&&e.trace.status>=400))return;const b=e.trace.response;return b&&typeof b=="object"&&"error"in b&&b.error!=null?b.error:{status:e.trace.status,ok:e.trace.ok}}),q=l(()=>t(F)!=null),_=l(()=>`API: ${e.trace.operationName}`),v=l(()=>e.trace.operationName),V=l(()=>typeof e.trace.createdAt!="number"?"—":P(e.trace.createdAt));async function me(){const h=p(e.trace);try{await navigator.clipboard.writeText(h)}catch(b){console.error("Failed to copy",b)}}const ge=l(()=>p({method:e.trace.method,path:e.trace.path,baseUrl:e.trace.baseUrl,request:e.trace.request})),de=l(()=>p({status:e.trace.status,ok:e.trace.ok,response:e.trace.response,error:t(F)})),ue=l(()=>t(F)!=null?p(t(F)):"");var pe=At(),_e=je(pe),$=n(_e);{let h=l(()=>t(q)?"close":"checkmark"),b=l(()=>t(q)?"self-center text-red-400":"self-center text-rc-green-200");ot($,{get name(){return t(h)},width:18,height:18,get class(){return t(b)}})}var re=d($,2);{var Ae=h=>{var b=Ct(),W=n(b,!0);o(b),M(()=>j(W,t(w))),i(h,b)};C(re,h=>{t(w)&&h(Ae)})}var he=d(re,2),Le=n(he,!0);o(he),o(_e);var Be=d(_e,2);{var qe=h=>{Qe(h,{get title(){return t(_)},class:"!w-[85vw] !max-w-5xl",get open(){return t(J)},set open(W){L(J,W,!0)},children:W=>{var xe=Rt(),we=n(xe);{var ze=S=>{var ae=Mt(),ce=n(ae,!0);o(ae),M(()=>j(ce,t(ue))),i(S,ae)};C(we,S=>{t(ue)&&S(ze)})}var Ie=d(we,2),De=n(Ie),Oe=n(De),c=d(n(Oe));o(Oe);var k=d(Oe,2),D=d(n(k));o(k);var N=d(k,2),U=d(n(N));o(N),o(De);var Y=d(De,2);Ze(Y,{variant:"secondary",size:"small",onclick:me,children:(S,ae)=>{se();var ce=Z("Copy raw trace");i(S,ce)},$$slots:{default:!0}}),o(Ie);var O=d(Ie,2),E=n(O);nt(E,{get value(){return t(G)},ariaLabel:"API trace tabs",onChange:({value:S})=>L(G,S,!0),children:(S,ae)=>{var ce=Nt(),be=je(ce);ye(be,{value:"request",class:"px-3",children:(u,I)=>{se();var z=Z("Request");i(u,z)},$$slots:{default:!0}});var H=d(be,2);ye(H,{value:"response",class:"px-3",children:(u,I)=>{se();var z=Z("Response");i(u,z)},$$slots:{default:!0}}),i(S,ce)},$$slots:{default:!0}});var X=d(E,2),R=n(X);{var B=S=>{Ne(S,{get value(){return t(ge)},language:"json",class:"h-full"})},K=S=>{Ne(S,{get value(){return t(de)},language:"json",class:"h-full"})};C(R,S=>{t(G)==="request"?S(B):S(K,-1)})}o(X),o(O),o(xe),M(S=>{j(c,` ${t(V)??""}`),j(D,` ${S??""}`),j(U,` ${e.trace.path??""}`)},[()=>typeof e.trace.durationMs=="number"?`${Math.round(e.trace.durationMs)}ms`:"—"]),i(W,xe)},$$slots:{default:!0}})};C(Be,h=>{t(J)&&h(qe)})}M(()=>{fe(he,1,ut(t(q)?"text-red-200":"")),j(Le,t(v))}),ee("pointerdown",_e,function(...h){var b;(b=y.onPointerDown)==null||b.apply(this,h)}),ee("click",_e,h=>{y.shouldSuppressClick(h)||L(J,!0)}),i(le,pe),We()}rt(["pointerdown","click"]);var Lt=x('<div><div class="h-full w-full"></div></div>');function It(le,e){Ge(e,!0);let J=Re(e,"language",3,"markdown"),G=Re(e,"class",3,""),y=te(null),p=null,P=null,s=null,w=te(!1);dt(()=>{if(!t(y))return;gt();let _=!1;return ft(()=>import("./DLQqXQ6R.js").then(v=>v.e),__vite__mapDeps([0,1,2]),import.meta.url).then(v=>{if(_)return;ht(v),P=v,p=v.editor.createDiffEditor(t(y),{theme:"bosun-dark",readOnly:!0,automaticLayout:!0,lineNumbers:"off",renderSideBySide:!0,renderIndicators:!0,ignoreTrimWhitespace:!1,diffWordWrap:"on",diffAlgorithm:"advanced",maxComputationTime:2e4,renderMarginRevertIcon:!1,renderGutterMenu:!1,minimap:{enabled:!1},scrollBeyondLastLine:!1,wordWrap:"on",overviewRulerBorder:!1,hideCursorInOverviewRuler:!0,matchBrackets:"never",bracketPairColorization:{enabled:!1},guides:{highlightActiveBracketPair:!1,bracketPairs:!1,bracketPairsHorizontal:!1},occurrencesHighlight:"off",selectionHighlight:!1,renderLineHighlight:"none",contextmenu:!1,originalEditable:!1});const V=v.editor.createModel(e.original??"",J()),me=v.editor.createModel(e.modified??"",J());s={original:V,modified:me},p.setModel({original:V,modified:me}),L(w,!0)}).catch(v=>{console.error("ReadOnlyMonacoDiff: failed to init",v)}),()=>{if(_=!0,p){try{p.setModel(null)}catch{}p.dispose(),p=null}s&&(s.original.dispose(),s.modified.dispose(),s=null),P=null}}),tt(()=>{if(!p||!s||!t(w))return;const _=e.original??"",v=e.modified??"";s.original.getValue()!==_&&s.original.setValue(_),s.modified.getValue()!==v&&s.modified.setValue(v)}),tt(()=>{if(!p||!s||!t(w)||!P)return;const _=J()||"markdown";s.original.getLanguageId()!==_&&P.editor.setModelLanguage(s.original,_),s.modified.getLanguageId()!==_&&P.editor.setModelLanguage(s.modified,_)});var F=Lt(),q=n(F);mt(q,_=>L(y,_),()=>t(y)),o(F),M(()=>fe(F,1,`overflow-hidden rounded-md border border-rc-gray-700 ${G()}`)),i(le,F),We()}var Dt=x('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),Ot=x('<span><span class="cursor-pointer" title="Show prompt-cache calc JSON"> </span></span>'),Et=x("<span> </span>"),Ht=x('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),jt=x("<!> <!> <!> <!> <!>",1),Bt=x('<div class="flex h-full flex-col gap-2"><div class="grid grid-cols-2 gap-2"><div class="flex items-center justify-start"><!></div> <div class="flex items-center justify-end"><!></div></div> <!></div>'),Ft=x('<div class="flex flex-col gap-3"><!> <div class="flex flex-wrap items-center gap-x-4 gap-y-1 text-sm text-rc-gray-200"><div><span class="text-rc-gray-400">Timing:</span> </div> <div><span class="text-rc-gray-400">Response time:</span> —</div> <div><span class="text-rc-gray-400">Model:</span> </div></div> <div><!> <div class="mt-2 h-[55vh]"><!></div></div></div>'),qt=x('<div class="h-[65vh]"><!></div>'),zt=x('<div class="flex w-full select-text items-baseline gap-2 truncate rounded-md bg-transparent px-2 py-1 text-left text-sm text-rc-gray-200 hover:bg-rc-gray-800/40"><button type="button" class="flex min-w-0 cursor-pointer items-baseline gap-2 truncate bg-transparent p-0 text-left text-sm text-rc-gray-200"><!> <!> <span> </span></button> <!> <!></div> <!> <!>',1);function Tr(le,e){Ge(e,!0);let J=te(!1),G=te(!1),y=te("response");const p=it();at(p.cleanup);function P(r){return r&&typeof r.renderedPrompt=="string"?r.renderedPrompt:null}function s(r,a){if(r===a)return r.length;const f=Math.min(r.length,a.length);for(let m=0;m<f;m++)if(r.charCodeAt(m)!==a.charCodeAt(m))return m;return f}function w(r,a){const f=Math.max(r.length,a.length);if(f===0)return 100;const m=s(r,a);return Math.floor(m/f*100)}function F(r,a){const f=r.length,m=a.length,g=s(r,a),T=Math.max(f,m),Q=T===0?100:Math.floor(g/T*100);return{currentLength:f,baselineLength:m,commonPrefixLength:g,denom:T,similarityPct:Q}}function q(r,a){const g=r.slice(0,600),T=r.slice(Math.max(g.length,r.length-600)),Q=Math.max(0,r.length-g.length-T.length);return{length:r.length,head:g,tail:T,omittedChars:Q}}function _(r){const a=r.llmUsage;return!a||typeof a.promptTokens!="number"||!Number.isFinite(a.promptTokens)||a.promptTokens<=0||typeof a.cachedPromptTokens!="number"||!Number.isFinite(a.cachedPromptTokens)||a.cachedPromptTokens<0?null:Math.max(0,Math.min(100,Math.floor(a.cachedPromptTokens/a.promptTokens*100)))}function v(r){const a=new WeakSet;try{return JSON.stringify(r,(f,m)=>{if(typeof m=="bigint")return m.toString();if(m instanceof Error)return{name:m.name,message:m.message,stack:m.stack};if(typeof m=="object"&&m!==null){if(a.has(m))return"[Circular]";a.add(m)}return m},2)??""}catch{return String(r)}}function V(r){if(r==null)return"";if(typeof r=="string"){const a=r.trim();if(!a)return"";try{return JSON.stringify(JSON.parse(a),null,2)}catch{return r}}return v(r)}function me(r){return new Date(r).toISOString()}function ge(r){if(typeof r!="number"||!Number.isFinite(r))return null;const a=new Date(r);if(Number.isNaN(a.getTime()))return null;const f=String(a.getHours()).padStart(2,"0"),m=String(a.getMinutes()).padStart(2,"0"),g=String(a.getSeconds()).padStart(2,"0");return`${f}:${m}:${g}`}const de=l(()=>ge(e.trace.createdAt)),ue=l(()=>e.trace.error!=null),pe=l(()=>`AI: ${e.trace.name}`),_e=l(()=>e.trace.name),$=l(()=>{if(e.trace.name!=="main")return null;const r=P(e.trace),a=P(e.compareTrace);return r==null||a==null?null:w(r,a)}),re=l(()=>e.trace.name!=="main"?null:_(e.trace)),Ae=90,he=90,Le=/<break\b[^>]*\/?>/i,Be='<break /> tag disables streaming and increases latency. If pauses are not large enough, use "..." instead.';function qe(r){return typeof r=="string"&&Le.test(r)}const h=l(()=>e.trace.name!=="main"?null:t(re)!=null?t(re)===0&&t($)!=null&&t($)>=he?{text:"0% tokens cached. Cache miss",className:"text-red-200"}:t(re)>=Ae?{text:`${t(re)}% tokens cached`,className:"text-rc-gray-400"}:{text:`${t(re)}% tokens cached - move dynamic parts of prompt to the bottom`,className:"text-red-200"}:t($)!=null?t($)>=Ae?{text:`${t($)}%`,className:"text-rc-gray-400"}:{text:`${t($)}% cached - move dynamic parts of prompt to the bottom`,className:"text-red-200"}:null),b=l(()=>qe(e.trace.response)?{text:"LLM output has <break /> tags",className:"text-red-200"}:null),W=l(()=>{var Pe;if(e.trace.name!=="main")return null;const r=P(e.trace),a=P(e.compareTrace),f=r!=null&&a!=null?F(r,a):null,m=e.trace.llmUsage??null,g=t(re),T=g===0&&(f==null?void 0:f.similarityPct)!=null&&f.similarityPct>=he;return{version:1,labelSource:g!=null?"llmUsage":t($)!=null?"promptSimilarityFallback":"none",thresholds:{okPct:Ae,cacheMissSimilarityPct:he},inputs:{llmUsage:m,currentRenderedPrompt:r!=null?q(r):null,baselineRenderedPrompt:a!=null?q(a):null},computed:{cachedTokensPct:g,promptSimilarityPct:(f==null?void 0:f.similarityPct)??null,promptSimilarity:f,cacheMiss:T},decision:{text:((Pe=t(h))==null?void 0:Pe.text)??null}}}),xe=l(()=>t(W)?v(t(W)):"{}"),we=l(()=>V(e.trace.response)),ze=l(()=>{const r=e.trace.response;if(typeof r!="string")return"json";try{return JSON.parse(r),"json"}catch{return"text"}}),Ie=l(()=>e.trace.stringifiedConversation??""),De=l(()=>V(e.trace.renderedPrompt)),Oe=l(()=>V(e.trace.receivedPrompt)),c=l(()=>V(e.trace.receivedContext)),k=l(()=>V(e.trace.schema)),D=l(()=>e.trace.error?v(e.trace.error):"");function N(r){return r==null?"":typeof r=="string"?r:v(r)}const U=l(()=>N(e.trace.receivedPrompt)),Y=l(()=>N(e.trace.renderedPrompt));let O=te(null),E=te(null);async function X(r){try{const a=r==="raw"?t(U):t(Y);await navigator.clipboard.writeText(a),L(O,r,!0),t(E)&&clearTimeout(t(E)),L(E,window.setTimeout(()=>{L(O,null),L(E,null)},2e3),!0)}catch(a){console.error("Failed to copy prompt",a)}}var R=zt(),B=je(R),K=n(B),S=n(K);{let r=l(()=>t(ue)?"close":"checkmark"),a=l(()=>t(ue)?"self-center text-red-400":"self-center text-rc-green-200");ot(S,{get name(){return t(r)},width:18,height:18,get class(){return t(a)}})}var ae=d(S,2);{var ce=r=>{var a=Dt(),f=n(a,!0);o(a),M(()=>j(f,t(de))),i(r,a)};C(ae,r=>{t(de)&&r(ce)})}var be=d(ae,2),H=n(be);o(be),o(K);var u=d(K,2);{var I=r=>{var a=Ot(),f=n(a),m=n(f,!0);o(f),o(a),M(()=>{fe(a,1,`shrink-0 text-xs ${t(h).className}`),j(m,t(h).text)}),ee("click",f,g=>{g.stopPropagation(),!p.shouldSuppressClick(g)&&t(W)&&L(G,!0)}),i(r,a)};C(u,r=>{t(h)!=null&&r(I)})}var z=d(u,2);{var ne=r=>{var a=Et();vt(a,"title",Be);var f=n(a,!0);o(a),M(()=>{fe(a,1,`shrink-0 text-xs ${t(b).className}`),j(f,t(b).text)}),i(r,a)};C(z,r=>{t(b)!=null&&r(ne)})}o(B);var Ee=d(B,2);{var He=r=>{Qe(r,{get title(){return t(pe)},class:"!w-[85vw] !max-w-5xl",get open(){return t(J)},set open(f){L(J,f,!0)},children:f=>{var m=Ft(),g=n(m);{var T=A=>{var Te=Ht(),Ce=n(Te,!0);o(Te),M(()=>j(Ce,t(D))),i(A,Te)};C(g,A=>{t(D)&&A(T)})}var Q=d(g,2),Pe=n(Q),$e=d(n(Pe));o(Pe);var Xe=d(Pe,4),oe=d(n(Xe));o(Xe),o(Q);var Se=d(Q,2),st=n(Se);nt(st,{get value(){return t(y)},ariaLabel:"Step trace tabs",onChange:({value:A})=>L(y,A,!0),children:(A,Te)=>{var Ce=jt(),Fe=je(Ce);ye(Fe,{value:"response",class:"px-3",children:(ie,Me)=>{se();var ve=Z("Response");i(ie,ve)},$$slots:{default:!0}});var Ye=d(Fe,2);ye(Ye,{value:"conversation",class:"px-3",children:(ie,Me)=>{se();var ve=Z("Conversation");i(ie,ve)},$$slots:{default:!0}});var Ve=d(Ye,2);ye(Ve,{value:"prompt",class:"px-3",children:(ie,Me)=>{se();var ve=Z("Prompt");i(ie,ve)},$$slots:{default:!0}});var Ke=d(Ve,2);ye(Ke,{value:"context",class:"px-3",children:(ie,Me)=>{se();var ve=Z("Context");i(ie,ve)},$$slots:{default:!0}});var et=d(Ke,2);ye(et,{value:"schema",class:"px-3",children:(ie,Me)=>{se();var ve=Z("Schema");i(ie,ve)},$$slots:{default:!0}}),i(A,Ce)},$$slots:{default:!0}});var lt=d(st,2),xt=n(lt);{var bt=A=>{Ne(A,{get value(){return t(we)},get language(){return t(ze)},class:"h-full"})},_t=A=>{Ne(A,{get value(){return t(Ie)},language:"text",class:"h-full"})},yt=A=>{var Te=Bt(),Ce=n(Te),Fe=n(Ce),Ye=n(Fe);{let ie=l(()=>!t(U).trim());Ze(Ye,{variant:"secondary",size:"small",get disabled(){return t(ie)},onclick:()=>X("raw"),children:(Me,ve)=>{se();var Ue=Z();M(()=>j(Ue,t(O)==="raw"?"Copied raw prompt":"Copy raw prompt")),i(Me,Ue)},$$slots:{default:!0}})}o(Fe);var Ve=d(Fe,2),Ke=n(Ve);{let ie=l(()=>!t(Y).trim());Ze(Ke,{variant:"secondary",size:"small",get disabled(){return t(ie)},onclick:()=>X("rendered"),children:(Me,ve)=>{se();var Ue=Z();M(()=>j(Ue,t(O)==="rendered"?"Copied rendered prompt":"Copy rendered prompt")),i(Me,Ue)},$$slots:{default:!0}})}o(Ve),o(Ce);var et=d(Ce,2);It(et,{get original(){return t(Oe)},get modified(){return t(De)},language:"markdown",class:"min-h-0 flex-1"}),o(Te),i(A,Te)},pt=A=>{Ne(A,{get value(){return t(c)},language:"json",class:"h-full"})},wt=A=>{Ne(A,{get value(){return t(k)},language:"json",class:"h-full"})};C(xt,A=>{t(y)==="response"?A(bt):t(y)==="conversation"?A(_t,1):t(y)==="prompt"?A(yt,2):t(y)==="context"?A(pt,3):A(wt,-1)})}o(lt),o(Se),o(m),M(A=>{j($e,` ${A??""}`),j(oe,` ${e.trace.model??"—"??""}`)},[()=>typeof e.trace.createdAt=="number"?me(e.trace.createdAt):"—"]),i(f,m)},$$slots:{default:!0}})};C(Ee,r=>{t(J)&&r(He)})}var Je=d(Ee,2);{var ke=r=>{Qe(r,{title:"Prompt cache calc",class:"!w-[85vw] !max-w-5xl",get open(){return t(G)},set open(f){L(G,f,!0)},children:f=>{var m=qt(),g=n(m);Ne(g,{get value(){return t(xe)},language:"json",class:"h-full"}),o(m),i(f,m)},$$slots:{default:!0}})};C(Je,r=>{t(G)&&r(ke)})}M(()=>{fe(be,1,ut(t(ue)?"text-red-200":"")),j(H,`AI: ${t(_e)??""}`)}),ee("pointerdown",K,function(...r){var a;(a=p.onPointerDown)==null||a.apply(this,r)}),ee("click",K,r=>{p.shouldSuppressClick(r)||L(J,!0)}),i(le,R),We()}rt(["pointerdown","click"]);var Jt=x('<span class="text-[13px] leading-none text-rc-gray-400"> </span>'),Vt=x('<div class="min-w-0 break-words"> </div>'),Ut=x('<div class="min-w-0 break-words">Conversation hanged up.</div>'),Gt=x('<div class="flex w-full justify-center"><div role="button" tabindex="0"><div class="flex flex-wrap items-baseline gap-x-2 gap-y-0"><!> <!></div></div></div>'),Wt=x('<div class="mr-2 mt-1 flex h-5 w-5 shrink-0 items-center justify-center rounded-sm bg-rc-green-700 text-sm uppercase text-rc-gray-100 backdrop-blur-md"> </div>'),Xt=x('<button type="button" title="Revert to before this message" class="mr-2 mt-1 shrink-0 self-start rounded p-1 text-rc-gray-500 opacity-80 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none"><!></button>'),Yt=x('<div class="mt-1 text-right text-xs text-rc-gray-200/70"> </div>'),Kt=x('<button type="button"><!></button>'),Qt=x('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-rc-gray-400">Analyze</button>'),Zt=x('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">Regenerate</button>'),$t=x('<button type="button" class="inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 text-rc-gray-400 transition-colors hover:bg-rc-gray-900 hover:text-rc-gray-200 focus:outline-none focus-visible:outline-none">See variants</button>'),er=x('<div class="mt-1 flex flex-wrap items-center gap-x-2 gap-y-1"><!> <!> <!> <!></div>'),tr=x('<!> <!> <div><div role="button" tabindex="0" class="cursor-pointer select-text"><div><div> </div> <!></div></div> <!></div>',1),rr=x('<div class="rounded-md border border-red-500 bg-red-950/40 p-3 font-mono text-sm text-red-200"> </div>'),ar=x("<!> <!>",1),nr=x('<div class="whitespace-pre-wrap break-words rounded-md border border-rc-gray-650 bg-rc-gray-900/60 p-3 text-sm text-rc-gray-100"> </div>'),or=x('<div class="flex flex-col gap-3"><!> <div class="flex items-center justify-between gap-2 text-sm text-rc-gray-200"><div class="text-rc-gray-400"> </div> <!></div> <div><!> <div class="mt-2 h-[55vh] overflow-auto"><!></div></div></div>'),ir=x("<div><!></div> <!>",1);function Cr(le,e){Ge(e,!0);let J=Re(e,"analyzeDisabled",3,!1),G=Re(e,"showSeeVariants",3,!1),y=Re(e,"variantSelectionState",3,"none"),p=Re(e,"suppressActionRow",3,!1),P=te(!1),s=te("idle"),w=te("content");const F=it();at(F.cleanup);function q(c){return c?c.split("/").at(-1)??c:""}function _(c){const k=q(c).trim().charAt(0);return k?k.toUpperCase():"?"}const v=l(()=>e.trace.role==="system"?"system":e.trace.eventName==="finished-main-streaming-step"||e.trace.eventName==="sent-message"?"agent":(e.trace.role==="user","user")),V=l(()=>t(v)==="agent"?"max-w-[83%]":t(v)==="user"?"max-w-[90%] sm:max-w-[80%] md:max-w-[70%]":t(v)==="system"?"max-w-[90%] sm:max-w-[85%] md:max-w-[75%]":""),me=l(()=>{var c;return t(v)==="user"&&!!e.onRevert&&((c=e.trace)==null?void 0:c.bosunPrevStateId)!==void 0}),ge=l(()=>e.trace.error!=null),de=l(()=>y()==="source");function ue(){L(P,!0),L(w,"content")}function pe(c){var k;if(!F.shouldSuppressClick(c)){if(t(de)){(k=e.onSelectInVariantMode)==null||k.call(e,e.trace);return}ue()}}function _e(c){if(typeof c!="number"||!Number.isFinite(c))return null;const k=new Date(c);if(Number.isNaN(k.getTime()))return null;const D=String(k.getHours()).padStart(2,"0"),N=String(k.getMinutes()).padStart(2,"0"),U=String(k.getSeconds()).padStart(2,"0");return`${D}:${N}:${U}`}const $=l(()=>{var c;return _e((c=e.trace)==null?void 0:c.createdAt)});function re(c){try{return JSON.stringify(c??null,null,2)}catch{return String(c)}}async function Ae(){try{await navigator.clipboard.writeText(re(e.trace))}catch(c){console.error("Failed to copy",c)}}function he(){return t(v)==="agent"&&e.trace.eventName!=="transfer-requested"&&!!(e.agentId&&e.agentId.trim())&&(e.trace.eventName==="finished-main-streaming-step"||e.trace.eventName==="sent-message")}function Le(){return t(v)==="agent"&&e.trace.eventName!=="transfer-requested"&&!!(e.agentId&&e.agentId.trim())&&(e.trace.eventName==="finished-main-streaming-step"||e.trace.eventName==="sent-message")}function Be(){return Le()}function qe(c,k){const D=(c??"").trim();if(!D)return"";const N=D.split(`
|
|
3
|
+
`).map(O=>O.trimEnd()).filter(O=>O.trim()!=="");if(!N.length)return"";const U=N[N.length-1],Y=(k??"").trim();return Y&&U.includes(Y)&&N.pop(),N.join(`
|
|
4
|
+
`)}async function h(){try{L(s,"idle");const c=(e.agentId||"").trim();if(!c)throw new Error("Agent id is not available; cannot add test");const k=ct.indexOf(e.trace);let D="";if(k!==-1)for(let O=k-1;O>=0;O--){const E=ct[O];if(St(E)&&typeof E.stringifiedConversation=="string"){const X=E.stringifiedConversation.trim();if(X){D=X;break}}}const N=(e.trace.content??"").trim(),Y={pinned:"TRUE",assertion_type:"llm-rubric",assertion_value:"",conversation:qe(D,N),expected_output:N,similarity_threshold:"60",timeout:"0",context:e.context||{}};await Pt.tests.addTest.mutate({agent:c,seed:Y,mergeContexts:!0}),L(s,"ok"),kt(`/edit/${encodeURIComponent(c)}/tests`),setTimeout(()=>L(s,"idle"),3e3)}catch(c){console.error("Failed to add test",c),L(s,"error"),setTimeout(()=>L(s,"idle"),4e3)}}var b=ir(),W=je(b);let xe;var we=n(W);{var ze=c=>{var k=Gt(),D=n(k),N=n(D),U=n(N);{var Y=R=>{var B=Jt(),K=n(B,!0);o(B),M(()=>j(K,t($))),i(R,B)};C(U,R=>{t($)&&R(Y)})}var O=d(U,2);{var E=R=>{var B=Vt(),K=n(B);o(B),M(()=>j(K,`Transfer requested: ${e.trace.content??""}`)),i(R,B)},X=R=>{var B=Ut();i(R,B)};C(O,R=>{e.trace.eventName==="transfer-requested"?R(E):R(X,-1)})}o(N),o(D),o(k),M(()=>fe(D,1,`cursor-pointer select-text rounded-full border border-rc-gray-650 bg-rc-gray-800/40 px-4 py-2 text-sm text-rc-gray-100 ${t(ge)?"border-red-500 bg-red-950/30 text-red-200":""}`)),ee("pointerdown",D,function(...R){var B;(B=F.onPointerDown)==null||B.apply(this,R)}),ee("click",D,R=>{F.shouldSuppressClick(R)||ue()}),i(c,k)},Ie=c=>{var k=tr(),D=je(k);{var N=H=>{var u=Wt(),I=n(u,!0);o(u),M((z,ne)=>{vt(u,"title",z),j(I,ne)},[()=>q(e.agentId),()=>_(e.agentId)]),i(H,u)};C(D,H=>{t(v)==="agent"&&e.agentId&&H(N)})}var U=d(D,2);{var Y=H=>{var u=Xt(),I=n(u);ot(I,{name:"undo",width:16,height:16}),o(u),ee("click",u,z=>{var ne;z.stopPropagation(),(ne=e.onRevert)==null||ne.call(e,e.trace)}),i(H,u)};C(U,H=>{t(me)&&H(Y)})}var O=d(U,2),E=n(O),X=n(E),R=n(X),B=n(R,!0);o(R);var K=d(R,2);{var S=H=>{var u=Yt(),I=n(u,!0);o(u),M(()=>j(I,t($))),i(H,u)};C(K,H=>{t($)&&H(S)})}o(X),o(E);var ae=d(E,2);{var ce=H=>{var u=er(),I=n(u);{var z=g=>{var T=Kt(),Q=n(T);{var Pe=oe=>{var Se=Z("Added");i(oe,Se)},$e=oe=>{var Se=Z("Failed");i(oe,Se)},Xe=oe=>{var Se=Z("Add test");i(oe,Se)};C(Q,oe=>{t(s)==="ok"?oe(Pe):t(s)==="error"?oe($e,1):oe(Xe,-1)})}o(T),M(()=>fe(T,1,`inline-flex items-center text-nowrap rounded border-0 bg-transparent px-1 py-0.5 transition-colors focus:outline-none focus-visible:outline-none ${t(s)!=="idle"?"cursor-default text-rc-gray-400":"cursor-pointer text-rc-gray-400 hover:bg-rc-gray-900 hover:text-rc-gray-200"}`)),ee("click",T,oe=>{oe.stopPropagation(),h()}),i(g,T)},ne=l(()=>he());C(I,g=>{t(ne)&&g(z)})}var Ee=d(I,2);{var He=g=>{var T=Qt();M(()=>T.disabled=J()),ee("click",T,Q=>{Q.stopPropagation(),e.onAnalyze(e.trace)}),i(g,T)},Je=l(()=>Le()&&e.onAnalyze);C(Ee,g=>{t(Je)&&g(He)})}var ke=d(Ee,2);{var r=g=>{var T=Zt();ee("click",T,Q=>{Q.stopPropagation(),e.onRegenerate(e.trace)}),i(g,T)},a=l(()=>Be()&&e.onRegenerate);C(ke,g=>{t(a)&&g(r)})}var f=d(ke,2);{var m=g=>{var T=$t();ee("click",T,Q=>{Q.stopPropagation(),e.onSeeVariants(e.trace)}),i(g,T)};C(f,g=>{G()&&e.onSeeVariants&&g(m)})}o(u),i(H,u)},be=l(()=>!p()&&(Le()||he()||Be()&&e.onRegenerate||G()));C(ae,H=>{t(be)&&H(ce)})}o(O),M(()=>{fe(O,1,`min-w-0 ${t(V)??""}`),fe(X,1,`rounded-lg ${t(v)==="system"?"justify-between whitespace-pre-line break-words border border-emerald-500 text-emerald-500":t(de)?"w-full whitespace-pre-line break-words border border-rc-green-450 bg-transparent backdrop-blur-md hover:bg-rc-green-700":t(v)!=="user"?"w-full whitespace-pre-line break-words bg-rc-green-700 backdrop-blur-md":"whitespace-pre-line break-words bg-rc-gray-700"} ${t(v)==="system"||t(de)?"":"border-thin border-rc-gray-110"} p-2 pt-1 text-rc-gray-100 ${t(ge)?"border-red-500 bg-red-950/30 text-red-200":""}`),j(B,e.trace.content)}),ee("pointerdown",E,function(...H){var u;(u=F.onPointerDown)==null||u.apply(this,H)}),ee("click",E,pe),i(c,k)};C(we,c=>{e.trace.eventName==="transfer-requested"||e.trace.eventName==="hangup-requested"?c(ze):c(Ie,-1)})}o(W);var De=d(W,2);{var Oe=c=>{{const k=N=>{var U=or(),Y=n(U);{var O=u=>{var I=rr(),z=n(I,!0);o(I),M(ne=>j(z,ne),[()=>re(e.trace.error)]),i(u,I)};C(Y,u=>{t(ge)&&u(O)})}var E=d(Y,2),X=n(E),R=n(X);o(X);var B=d(X,2);Ze(B,{variant:"secondary",size:"small",onclick:Ae,children:(u,I)=>{se();var z=Z("Copy raw trace");i(u,z)},$$slots:{default:!0}}),o(E);var K=d(E,2),S=n(K);nt(S,{get value(){return t(w)},ariaLabel:"Conversational trace tabs",onChange:({value:u})=>L(w,u,!0),children:(u,I)=>{var z=ar(),ne=je(z);ye(ne,{value:"content",class:"px-3",children:(He,Je)=>{se();var ke=Z("Content");i(He,ke)},$$slots:{default:!0}});var Ee=d(ne,2);ye(Ee,{value:"raw",class:"px-3",children:(He,Je)=>{se();var ke=Z("Raw");i(He,ke)},$$slots:{default:!0}}),i(u,z)},$$slots:{default:!0}});var ae=d(S,2),ce=n(ae);{var be=u=>{var I=nr(),z=n(I,!0);o(I),M(()=>j(z,e.trace.content)),i(u,I)},H=u=>{{let I=l(()=>re(e.trace));Ne(u,{get value(){return t(I)},language:"json",class:"h-full"})}};C(ce,u=>{t(w)==="content"?u(be):u(H,-1)})}o(ae),o(K),o(U),M(()=>j(R,`${e.trace.role??""} • ${e.trace.medium??""}`)),i(N,U)};let D=l(()=>`Conversation: ${e.trace.eventName}`);Qe(c,{get title(){return t(D)},class:"!w-[80vw] !max-w-4xl",get open(){return t(P)},set open(N){L(P,N,!0)},children:k,$$slots:{default:!0}})}};C(De,c=>{t(P)&&c(Oe)})}M(()=>xe=fe(W,1,"group mb-2 flex w-full items-start",null,xe,{"justify-end":t(v)==="user"||t(v)==="system"})),i(le,b),We()}rt(["pointerdown","click"]);export{Sr as C,Tr as a,Cr as b};
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{aj as e,d as u,b as t,ak as c,h as a}from"./Dv8m1cTI.js";function l(n){t===null&&e(),c&&t.l!==null?s(t).m.push(n):u(()=>{const o=a(n);if(typeof o=="function")return o})}function i(n){t===null&&e(),l(()=>()=>a(n))}function s(n){var o=n.l;return o.u??(o.u={a:[],b:[],m:[]})}export{i as a,l as o};
|
|
Binary file
|