@futdevpro/ccap 1.1.2869 → 1.1.2881
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/client-dist/{agent-instances.module-3LXXHDID.js → agent-instances.module-U742BGNW.js} +2 -2
- package/client-dist/{ca.module-MYYCM2JJ.js → ca.module-WANXRIO7.js} +2 -2
- package/client-dist/cc-usage-dashboard.component-TPMSJIGI.js +2 -0
- package/client-dist/cc-usage-dashboard.component-TPMSJIGI.js.map +7 -0
- package/client-dist/{cc.module-S6E7DTHJ.js → cc.module-JZUXUXHP.js} +2 -2
- package/client-dist/{chunk-ISWTCW7W.js → chunk-26DXMUXV.js} +2 -2
- package/client-dist/{chunk-KB7B22JR.js → chunk-2LJT2APC.js} +2 -2
- package/client-dist/{chunk-RIVVMZSH.js → chunk-435IBC6L.js} +2 -2
- package/client-dist/{chunk-Z5SR576N.js → chunk-467OMXRK.js} +2 -2
- package/client-dist/{chunk-6XORNZET.js → chunk-46N7EC7U.js} +2 -2
- package/client-dist/{chunk-YIQBC2QJ.js → chunk-4OKUKX55.js} +2 -2
- package/client-dist/{chunk-5LSG6VTE.js → chunk-4RRBZXYU.js} +2 -2
- package/client-dist/{chunk-3LN5752S.js → chunk-4TBE5I3U.js} +2 -2
- package/client-dist/{chunk-TKCU7CDK.js → chunk-6A2IM2XR.js} +2 -2
- package/client-dist/{chunk-JWWJ6DPT.js → chunk-6BQHKSUP.js} +2 -2
- package/client-dist/{chunk-OWAXNU7Q.js → chunk-6IYFOHCN.js} +2 -2
- package/client-dist/{chunk-OU3F7ZJU.js → chunk-6NWEJXDU.js} +2 -2
- package/client-dist/{chunk-OUIQTJDB.js → chunk-767Z7I55.js} +2 -2
- package/client-dist/{chunk-JNIJEGC3.js → chunk-AS2SYIJB.js} +2 -2
- package/client-dist/{chunk-VIFXYYPK.js → chunk-BHWHGLKC.js} +2 -2
- package/client-dist/{chunk-ZVHVFEBL.js → chunk-CILMMQ5V.js} +2 -2
- package/client-dist/{chunk-JRG7FXDC.js → chunk-CSHUFD2L.js} +2 -2
- package/client-dist/{chunk-KK4QAETW.js → chunk-DNHL6M7F.js} +2 -2
- package/client-dist/{chunk-5AKIWMP2.js → chunk-DUN255KX.js} +2 -2
- package/client-dist/{chunk-YOSTW7HD.js → chunk-EBSMIZTK.js} +2 -2
- package/client-dist/{chunk-TYQN5TDD.js → chunk-EY32IBWM.js} +2 -2
- package/client-dist/{chunk-TOGFLAZ7.js → chunk-FJGBPKHK.js} +2 -2
- package/client-dist/{chunk-TEY575GB.js → chunk-GDAL4G4Y.js} +2 -2
- package/client-dist/{chunk-2BU3PEIR.js → chunk-GR3CXOIX.js} +2 -2
- package/client-dist/{chunk-7WZCSUSH.js → chunk-HDCFO7OE.js} +2 -2
- package/client-dist/{chunk-2PDIEP7E.js → chunk-HFVIX2ZG.js} +2 -2
- package/client-dist/{chunk-APKFZ3NB.js → chunk-HPBX6VCV.js} +2 -2
- package/client-dist/{chunk-GQFCMJB7.js → chunk-IR4THKPA.js} +2 -2
- package/client-dist/{chunk-OX65HIMB.js → chunk-J5NYZUBP.js} +2 -2
- package/client-dist/{chunk-76SBSCFD.js → chunk-JDK64BE7.js} +2 -2
- package/client-dist/{chunk-YDSE5YMB.js → chunk-KMEGS6BP.js} +2 -2
- package/client-dist/{chunk-XNIVMROA.js → chunk-KQLKM7RB.js} +2 -2
- package/client-dist/{chunk-FQGSNRKX.js → chunk-LERWAULE.js} +2 -2
- package/client-dist/{chunk-NNKE5Y76.js → chunk-M3RL34GF.js} +2 -2
- package/client-dist/{chunk-HBQZEBLB.js → chunk-NJPSU6MN.js} +2 -2
- package/client-dist/{chunk-N7DN2GHR.js → chunk-ONEB5UF5.js} +2 -2
- package/client-dist/{chunk-ETSUU22G.js → chunk-OP2PE3KG.js} +2 -2
- package/client-dist/{chunk-ETSUU22G.js.map → chunk-OP2PE3KG.js.map} +1 -1
- package/client-dist/{chunk-R7R6POCN.js → chunk-OZGFJXOA.js} +2 -2
- package/client-dist/{chunk-DM757UXT.js → chunk-PPRG7F5A.js} +2 -2
- package/client-dist/{chunk-AP4ZGZ3Q.js → chunk-PQUBI6TC.js} +2 -2
- package/client-dist/{chunk-W3R2EMPM.js → chunk-Q6JQHJME.js} +2 -2
- package/client-dist/{chunk-QGWYDTS3.js → chunk-QDTY7SR6.js} +2 -2
- package/client-dist/{chunk-JLHB4EGI.js → chunk-RQ2HFT2L.js} +2 -2
- package/client-dist/{chunk-YZEV52S3.js → chunk-RRN36VPR.js} +2 -2
- package/client-dist/{chunk-NID5T5OA.js → chunk-S4GJTHYZ.js} +2 -2
- package/client-dist/{chunk-6UO45CXV.js → chunk-SKHAAE4A.js} +2 -2
- package/client-dist/{chunk-GB63TGH2.js → chunk-TSPROG7P.js} +2 -2
- package/client-dist/{chunk-2V7JR7SO.js → chunk-U7ZBDYGU.js} +2 -2
- package/client-dist/{chunk-WJHZKMS6.js → chunk-VQWGWQDA.js} +2 -2
- package/client-dist/{chunk-GPNYGY72.js → chunk-X7HHJQ2O.js} +2 -2
- package/client-dist/{chunk-6RS5GTKC.js → chunk-XH3SQ4UP.js} +2 -2
- package/client-dist/{chunk-SC7L2BUT.js → chunk-XHF463TC.js} +2 -2
- package/client-dist/{chunk-35NYQ66T.js → chunk-XJEATRA4.js} +2 -2
- package/client-dist/{chunk-2J4JC47Y.js → chunk-XSXQC64X.js} +2 -2
- package/client-dist/{chunk-5ZIYBSP7.js → chunk-YE57GLWU.js} +2 -2
- package/client-dist/{chunk-TTIUP6WD.js → chunk-YX6NZTP7.js} +2 -2
- package/client-dist/{consultant.module-OKAHHHIM.js → consultant.module-WL4WEIIF.js} +2 -2
- package/client-dist/{crd.module-G6Z36XAU.js → crd.module-OE3ML5C7.js} +2 -2
- package/client-dist/{dashboard.module-6RDWDPLM.js → dashboard.module-NBINBB72.js} +2 -2
- package/client-dist/{do.module-REZMQY2N.js → do.module-BLTXJC4T.js} +2 -2
- package/client-dist/{document-library.module-HNEY63TN.js → document-library.module-TXGZT2VZ.js} +2 -2
- package/client-dist/{embedding-eval.module-5T6NKDKA.js → embedding-eval.module-PYE5NL5R.js} +2 -2
- package/client-dist/{embedding-registry.module-CMPQ7NS2.js → embedding-registry.module-46PAOMQR.js} +2 -2
- package/client-dist/{err.module-CVZWIOMI.js → err.module-B743IN5O.js} +2 -2
- package/client-dist/{feedback.module-CRCF4W25.js → feedback.module-H4YSPDLF.js} +2 -2
- package/client-dist/{host-runtime-mcp.module-7ODIDC5L.js → host-runtime-mcp.module-6SK6OZH7.js} +2 -2
- package/client-dist/index.html +2 -2
- package/client-dist/{live-dev-pipeline.module-V26BMG6N.js → live-dev-pipeline.module-MCPAY2LG.js} +2 -2
- package/client-dist/{logs.module-PLE5ABP6.js → logs.module-CJF7RLV7.js} +2 -2
- package/client-dist/{main-EBGS6D7B.js → main-NZFBSJOQ.js} +3 -3
- package/client-dist/{master-control-remote-poc.module-ZB5IS3LQ.js → master-control-remote-poc.module-LJ5ANCQ6.js} +2 -2
- package/client-dist/{mobile-app.module-5UZRMRJ6.js → mobile-app.module-G7LAAOOP.js} +2 -2
- package/client-dist/{model-registry.module-IWCKDRUO.js → model-registry.module-WDAX2AHY.js} +2 -2
- package/client-dist/{oc.module-44GVU6IT.js → oc.module-T43BN7CJ.js} +2 -2
- package/client-dist/{orc.module-QG7H5CON.js → orc.module-R3P5Y4YW.js} +2 -2
- package/client-dist/{project-management.module-6K7Q55KX.js → project-management.module-ODMCGFYI.js} +2 -2
- package/client-dist/project-source-routed.module-M22ABRHR.js +2 -0
- package/client-dist/{scheduler.module-WIEM3UPU.js → scheduler.module-TZLVYYMO.js} +2 -2
- package/client-dist/{session.module-FMEFK7VS.js → session.module-3XGXYP4K.js} +2 -2
- package/client-dist/{set.module-2ACVRQVB.js → set.module-M3PJXM3W.js} +5 -5
- package/client-dist/{set.module-2ACVRQVB.js.map → set.module-M3PJXM3W.js.map} +3 -3
- package/client-dist/{setup.module-C6ICVZKP.js → setup.module-2U3R4YDE.js} +2 -2
- package/client-dist/styles-OJOSC7GL.css +2 -0
- package/client-dist/styles-OJOSC7GL.css.map +7 -0
- package/client-dist/{terminals.module-F5BMBKBP.js → terminals.module-ULIXEKUD.js} +2 -2
- package/client-dist/{voice-notes-poc.module-SXROQC4L.js → voice-notes-poc.module-GZGIIFPR.js} +2 -2
- package/client-dist/{wfs.module-IFEXPLHA.js → wfs.module-6B4QN7NS.js} +2 -2
- package/package.json +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/account/cc-account-usage-probe.util.d.ts +85 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/account/cc-account-usage-probe.util.d.ts.map +1 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/account/cc-account-usage-probe.util.js +264 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/account/cc-account-usage-probe.util.js.map +1 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account-route.control-service.d.ts +18 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account-route.control-service.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account-route.control-service.js +93 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account-route.control-service.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account.controller.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account.controller.js +14 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/cc-account/cc-account.controller.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account-pool.control-service.d.ts +36 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account-pool.control-service.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account-pool.control-service.js +136 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account-pool.control-service.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account.data-service.d.ts +11 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account.data-service.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account.data-service.js +40 -0
- package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/account/cc-account.data-service.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.d.ts +4 -4
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.js +12 -7
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.spec.js +17 -14
- package/server/build/src/_modules/external-sessions/_services/exs-instance-presence.service.spec.js.map +1 -1
- package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.d.ts +6 -2
- package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.d.ts.map +1 -1
- package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.js +8 -4
- package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.js.map +1 -1
- package/server/build/src/_modules/peer-instance/_models/interfaces/pei-heartbeat-status.interface.d.ts +23 -0
- package/server/build/src/_modules/peer-instance/_models/interfaces/pei-heartbeat-status.interface.d.ts.map +1 -0
- package/server/build/src/_modules/peer-instance/_models/interfaces/pei-heartbeat-status.interface.js +3 -0
- package/server/build/src/_modules/peer-instance/_models/interfaces/pei-heartbeat-status.interface.js.map +1 -0
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat-self-healing.spec.d.ts +10 -0
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat-self-healing.spec.d.ts.map +1 -0
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat-self-healing.spec.js +81 -0
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat-self-healing.spec.js.map +1 -0
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.d.ts +49 -2
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.d.ts.map +1 -1
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js +107 -6
- package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js.map +1 -1
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client-active-reconnect.spec.d.ts +8 -0
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client-active-reconnect.spec.d.ts.map +1 -0
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client-active-reconnect.spec.js +112 -0
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client-active-reconnect.spec.js.map +1 -0
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts +26 -1
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts.map +1 -1
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js +60 -7
- package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js.map +1 -1
- package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts +8 -0
- package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts.map +1 -1
- package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.d.ts.map +1 -1
- package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js +8 -2
- package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js.map +1 -1
- package/client-dist/cc-usage-dashboard.component-BZERJBJ7.js +0 -2
- package/client-dist/cc-usage-dashboard.component-BZERJBJ7.js.map +0 -7
- package/client-dist/project-source-routed.module-72C4RPOH.js +0 -2
- package/client-dist/styles-WS3OIV37.css +0 -2
- package/client-dist/styles-WS3OIV37.css.map +0 -7
- /package/client-dist/{agent-instances.module-3LXXHDID.js.map → agent-instances.module-U742BGNW.js.map} +0 -0
- /package/client-dist/{ca.module-MYYCM2JJ.js.map → ca.module-WANXRIO7.js.map} +0 -0
- /package/client-dist/{cc.module-S6E7DTHJ.js.map → cc.module-JZUXUXHP.js.map} +0 -0
- /package/client-dist/{chunk-ISWTCW7W.js.map → chunk-26DXMUXV.js.map} +0 -0
- /package/client-dist/{chunk-KB7B22JR.js.map → chunk-2LJT2APC.js.map} +0 -0
- /package/client-dist/{chunk-RIVVMZSH.js.map → chunk-435IBC6L.js.map} +0 -0
- /package/client-dist/{chunk-Z5SR576N.js.map → chunk-467OMXRK.js.map} +0 -0
- /package/client-dist/{chunk-6XORNZET.js.map → chunk-46N7EC7U.js.map} +0 -0
- /package/client-dist/{chunk-YIQBC2QJ.js.map → chunk-4OKUKX55.js.map} +0 -0
- /package/client-dist/{chunk-5LSG6VTE.js.map → chunk-4RRBZXYU.js.map} +0 -0
- /package/client-dist/{chunk-3LN5752S.js.map → chunk-4TBE5I3U.js.map} +0 -0
- /package/client-dist/{chunk-TKCU7CDK.js.map → chunk-6A2IM2XR.js.map} +0 -0
- /package/client-dist/{chunk-JWWJ6DPT.js.map → chunk-6BQHKSUP.js.map} +0 -0
- /package/client-dist/{chunk-OWAXNU7Q.js.map → chunk-6IYFOHCN.js.map} +0 -0
- /package/client-dist/{chunk-OU3F7ZJU.js.map → chunk-6NWEJXDU.js.map} +0 -0
- /package/client-dist/{chunk-OUIQTJDB.js.map → chunk-767Z7I55.js.map} +0 -0
- /package/client-dist/{chunk-JNIJEGC3.js.map → chunk-AS2SYIJB.js.map} +0 -0
- /package/client-dist/{chunk-VIFXYYPK.js.map → chunk-BHWHGLKC.js.map} +0 -0
- /package/client-dist/{chunk-ZVHVFEBL.js.map → chunk-CILMMQ5V.js.map} +0 -0
- /package/client-dist/{chunk-JRG7FXDC.js.map → chunk-CSHUFD2L.js.map} +0 -0
- /package/client-dist/{chunk-KK4QAETW.js.map → chunk-DNHL6M7F.js.map} +0 -0
- /package/client-dist/{chunk-5AKIWMP2.js.map → chunk-DUN255KX.js.map} +0 -0
- /package/client-dist/{chunk-YOSTW7HD.js.map → chunk-EBSMIZTK.js.map} +0 -0
- /package/client-dist/{chunk-TYQN5TDD.js.map → chunk-EY32IBWM.js.map} +0 -0
- /package/client-dist/{chunk-TOGFLAZ7.js.map → chunk-FJGBPKHK.js.map} +0 -0
- /package/client-dist/{chunk-TEY575GB.js.map → chunk-GDAL4G4Y.js.map} +0 -0
- /package/client-dist/{chunk-2BU3PEIR.js.map → chunk-GR3CXOIX.js.map} +0 -0
- /package/client-dist/{chunk-7WZCSUSH.js.map → chunk-HDCFO7OE.js.map} +0 -0
- /package/client-dist/{chunk-2PDIEP7E.js.map → chunk-HFVIX2ZG.js.map} +0 -0
- /package/client-dist/{chunk-APKFZ3NB.js.map → chunk-HPBX6VCV.js.map} +0 -0
- /package/client-dist/{chunk-GQFCMJB7.js.map → chunk-IR4THKPA.js.map} +0 -0
- /package/client-dist/{chunk-OX65HIMB.js.map → chunk-J5NYZUBP.js.map} +0 -0
- /package/client-dist/{chunk-76SBSCFD.js.map → chunk-JDK64BE7.js.map} +0 -0
- /package/client-dist/{chunk-YDSE5YMB.js.map → chunk-KMEGS6BP.js.map} +0 -0
- /package/client-dist/{chunk-XNIVMROA.js.map → chunk-KQLKM7RB.js.map} +0 -0
- /package/client-dist/{chunk-FQGSNRKX.js.map → chunk-LERWAULE.js.map} +0 -0
- /package/client-dist/{chunk-NNKE5Y76.js.map → chunk-M3RL34GF.js.map} +0 -0
- /package/client-dist/{chunk-HBQZEBLB.js.map → chunk-NJPSU6MN.js.map} +0 -0
- /package/client-dist/{chunk-N7DN2GHR.js.map → chunk-ONEB5UF5.js.map} +0 -0
- /package/client-dist/{chunk-R7R6POCN.js.map → chunk-OZGFJXOA.js.map} +0 -0
- /package/client-dist/{chunk-DM757UXT.js.map → chunk-PPRG7F5A.js.map} +0 -0
- /package/client-dist/{chunk-AP4ZGZ3Q.js.map → chunk-PQUBI6TC.js.map} +0 -0
- /package/client-dist/{chunk-W3R2EMPM.js.map → chunk-Q6JQHJME.js.map} +0 -0
- /package/client-dist/{chunk-QGWYDTS3.js.map → chunk-QDTY7SR6.js.map} +0 -0
- /package/client-dist/{chunk-JLHB4EGI.js.map → chunk-RQ2HFT2L.js.map} +0 -0
- /package/client-dist/{chunk-YZEV52S3.js.map → chunk-RRN36VPR.js.map} +0 -0
- /package/client-dist/{chunk-NID5T5OA.js.map → chunk-S4GJTHYZ.js.map} +0 -0
- /package/client-dist/{chunk-6UO45CXV.js.map → chunk-SKHAAE4A.js.map} +0 -0
- /package/client-dist/{chunk-GB63TGH2.js.map → chunk-TSPROG7P.js.map} +0 -0
- /package/client-dist/{chunk-2V7JR7SO.js.map → chunk-U7ZBDYGU.js.map} +0 -0
- /package/client-dist/{chunk-WJHZKMS6.js.map → chunk-VQWGWQDA.js.map} +0 -0
- /package/client-dist/{chunk-GPNYGY72.js.map → chunk-X7HHJQ2O.js.map} +0 -0
- /package/client-dist/{chunk-6RS5GTKC.js.map → chunk-XH3SQ4UP.js.map} +0 -0
- /package/client-dist/{chunk-SC7L2BUT.js.map → chunk-XHF463TC.js.map} +0 -0
- /package/client-dist/{chunk-35NYQ66T.js.map → chunk-XJEATRA4.js.map} +0 -0
- /package/client-dist/{chunk-2J4JC47Y.js.map → chunk-XSXQC64X.js.map} +0 -0
- /package/client-dist/{chunk-5ZIYBSP7.js.map → chunk-YE57GLWU.js.map} +0 -0
- /package/client-dist/{chunk-TTIUP6WD.js.map → chunk-YX6NZTP7.js.map} +0 -0
- /package/client-dist/{consultant.module-OKAHHHIM.js.map → consultant.module-WL4WEIIF.js.map} +0 -0
- /package/client-dist/{crd.module-G6Z36XAU.js.map → crd.module-OE3ML5C7.js.map} +0 -0
- /package/client-dist/{dashboard.module-6RDWDPLM.js.map → dashboard.module-NBINBB72.js.map} +0 -0
- /package/client-dist/{do.module-REZMQY2N.js.map → do.module-BLTXJC4T.js.map} +0 -0
- /package/client-dist/{document-library.module-HNEY63TN.js.map → document-library.module-TXGZT2VZ.js.map} +0 -0
- /package/client-dist/{embedding-eval.module-5T6NKDKA.js.map → embedding-eval.module-PYE5NL5R.js.map} +0 -0
- /package/client-dist/{embedding-registry.module-CMPQ7NS2.js.map → embedding-registry.module-46PAOMQR.js.map} +0 -0
- /package/client-dist/{err.module-CVZWIOMI.js.map → err.module-B743IN5O.js.map} +0 -0
- /package/client-dist/{feedback.module-CRCF4W25.js.map → feedback.module-H4YSPDLF.js.map} +0 -0
- /package/client-dist/{host-runtime-mcp.module-7ODIDC5L.js.map → host-runtime-mcp.module-6SK6OZH7.js.map} +0 -0
- /package/client-dist/{live-dev-pipeline.module-V26BMG6N.js.map → live-dev-pipeline.module-MCPAY2LG.js.map} +0 -0
- /package/client-dist/{logs.module-PLE5ABP6.js.map → logs.module-CJF7RLV7.js.map} +0 -0
- /package/client-dist/{main-EBGS6D7B.js.map → main-NZFBSJOQ.js.map} +0 -0
- /package/client-dist/{master-control-remote-poc.module-ZB5IS3LQ.js.map → master-control-remote-poc.module-LJ5ANCQ6.js.map} +0 -0
- /package/client-dist/{mobile-app.module-5UZRMRJ6.js.map → mobile-app.module-G7LAAOOP.js.map} +0 -0
- /package/client-dist/{model-registry.module-IWCKDRUO.js.map → model-registry.module-WDAX2AHY.js.map} +0 -0
- /package/client-dist/{oc.module-44GVU6IT.js.map → oc.module-T43BN7CJ.js.map} +0 -0
- /package/client-dist/{orc.module-QG7H5CON.js.map → orc.module-R3P5Y4YW.js.map} +0 -0
- /package/client-dist/{project-management.module-6K7Q55KX.js.map → project-management.module-ODMCGFYI.js.map} +0 -0
- /package/client-dist/{project-source-routed.module-72C4RPOH.js.map → project-source-routed.module-M22ABRHR.js.map} +0 -0
- /package/client-dist/{scheduler.module-WIEM3UPU.js.map → scheduler.module-TZLVYYMO.js.map} +0 -0
- /package/client-dist/{session.module-FMEFK7VS.js.map → session.module-3XGXYP4K.js.map} +0 -0
- /package/client-dist/{setup.module-C6ICVZKP.js.map → setup.module-2U3R4YDE.js.map} +0 -0
- /package/client-dist/{terminals.module-F5BMBKBP.js.map → terminals.module-ULIXEKUD.js.map} +0 -0
- /package/client-dist/{voice-notes-poc.module-SXROQC4L.js.map → voice-notes-poc.module-GZGIIFPR.js.map} +0 -0
- /package/client-dist/{wfs.module-IFEXPLHA.js.map → wfs.module-6B4QN7NS.js.map} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as le,b as Ae,c as Vt,d as Lt,e as Re,f as Ft}from"./chunk-APKFZ3NB.js";import{a as de,b as ce,c as Rt,d as Oe}from"./chunk-7WZCSUSH.js";import"./chunk-EGRHWZRV.js";import{a as Pe}from"./chunk-TYQN5TDD.js";import{a as Me}from"./chunk-YZEV52S3.js";import{a as ge}from"./chunk-Q2PKIGLB.js";import{a as wt}from"./chunk-R7R6POCN.js";import{a as W}from"./chunk-Z5SR576N.js";import{a as qe}from"./chunk-YRVQSWSZ.js";import{a as bt}from"./chunk-GQFCMJB7.js";import{a as vt,b as $e}from"./chunk-GPNYGY72.js";import"./chunk-KB7B22JR.js";import"./chunk-NNKE5Y76.js";import"./chunk-L44637OO.js";import"./chunk-TKCU7CDK.js";import"./chunk-UFBTR2BG.js";import{a as ae}from"./chunk-OX65HIMB.js";import"./chunk-2BU3PEIR.js";import"./chunk-6RS5GTKC.js";import"./chunk-5AKIWMP2.js";import{e as Pt,f as At,g as Ot}from"./chunk-W3R2EMPM.js";import"./chunk-WJHZKMS6.js";import{a as $t}from"./chunk-7JUIBZEE.js";import{a as kt,b as It,c as Dt}from"./chunk-C7XPBJTG.js";import{a as Et,b as U,c as Ke,f as Mt}from"./chunk-JNIJEGC3.js";import"./chunk-WPHEQXWB.js";import{a as yt,c as Tt}from"./chunk-OUIQTJDB.js";import{b as De,c as Ee}from"./chunk-AP4ZGZ3Q.js";import"./chunk-YOSTW7HD.js";import"./chunk-6XORNZET.js";import"./chunk-Q2NVIOCY.js";import{a as re}from"./chunk-XOGAYT52.js";import"./chunk-OU3F7ZJU.js";import"./chunk-JLHB4EGI.js";import"./chunk-N7DN2GHR.js";import"./chunk-V3VQWJQL.js";import"./chunk-2V7JR7SO.js";import"./chunk-TOGFLAZ7.js";import"./chunk-ZBTWQZNB.js";import{a as Y}from"./chunk-FLAJXIYW.js";import{c as mt,f as ut,i as Ct,n as ft,o as xt,p as ht,v as gt}from"./chunk-EO4DNTT4.js";import"./chunk-QGWYDTS3.js";import{a as O}from"./chunk-5UPNU54P.js";import{j as St}from"./chunk-JWWJ6DPT.js";import{p as dt}from"./chunk-ETSUU22G.js";import{$a as F,Aa as Ce,Ba as fe,C as $,Cb as Ie,D as z,E as Ye,Ea as xe,Eb as ct,Fa as d,Fb as pt,G as ie,Ga as T,Gb as se,Ha as D,Ia as J,J as u,K as C,Kb as _t,L as M,M as L,N as Ze,Pa as he,Qa as nt,Ra as ye,T as ve,Ta as Te,U as Q,Va as He,W as G,Xa as it,Z as a,_ as et,a as Be,aa as v,ab as j,b as We,bb as ot,ca as tt,da as g,db as st,fa as _e,ga as b,h as Ge,ha as we,hb as A,ia as me,ib as at,ja as V,jb as ke,k as R,la as _,mb as X,oa as N,ob as rt,pa as H,pb as lt,qa as o,ra as s,sa as S,ta as Ne,ua as k,ub as oe,va as f,wa as c,y as Je,z as Xe,za as ue}from"./chunk-TBMJSIBB.js";function an(t,r){t&1&&(o(0,"div",3),M(),o(1,"svg",5),S(2,"path",6),s(),L(),o(3,"span",7),d(4,"Plan accepted"),s()())}function rn(t,r){if(t&1){let e=k();o(0,"button",8),f("click",function(){u(e);let n=c(2);return C(n.handleAccept())}),M(),o(1,"svg",9),S(2,"path",6),s(),d(3," Accept plan "),s()}}function ln(t,r){if(t&1&&(o(0,"div",0),S(1,"div",1),o(2,"div",2),g(3,an,5,0,"div",3)(4,rn,4,0,"button",4),s()()),t&2){let e=c();a(),b("innerHTML",r,G),a(2),_(e.isAccepted_$()?3:4)}}var Ve=(()=>{class t{sanitizer=$(Ie);rawData=Q(void 0);accepted=ve();isAccepted_$=v(!1);planText_$=A(()=>{let e=this.rawData();if(!e)return"";let i=e.input;if(!i||typeof i!="object")return"";let n=i.plan;return typeof n=="string"?n:""});planHtml_$=A(()=>{let e=this.planText_$();if(!e)return null;let i=Et.toSanitizedHtml(e);return this.sanitizer.bypassSecurityTrustHtml(i)});handleAccept(){this.isAccepted_$()||(this.isAccepted_$.set(!0),this.accepted.emit())}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-s-agent-tool-plan-view"]],hostAttrs:[1,"block"],inputs:{rawData:[1,"rawData"]},outputs:{accepted:"accepted"},standalone:!0,features:[Te],decls:1,vars:1,consts:[[1,"px-2.5","py-2","space-y-2"],[1,"ccap-assistant-md","leading-snug","sm:leading-normal","break-words","text-neutral-200","text-xs","sm:text-sm","min-w-0","max-h-[400px]","overflow-y-auto","overflow-x-auto","pr-1",3,"innerHTML"],[1,"flex","justify-end","pt-1","border-t","border-orange-500/10"],[1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-green-500/10","border","border-green-500/25"],["type","button",1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-ccapAccent/10","border","border-ccapAccent/30","text-ccapAccent","text-[11px]","font-medium","cursor-pointer","hover:bg-ccapAccent/20","hover:border-ccapAccent/50","transition-colors"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5","text-green-400"],["d","M3.5 8.5l3 3 6-6"],[1,"text-[11px]","text-green-400","font-medium"],["type","button",1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-ccapAccent/10","border","border-ccapAccent/30","text-ccapAccent","text-[11px]","font-medium","cursor-pointer","hover:bg-ccapAccent/20","hover:border-ccapAccent/50","transition-colors",3,"click"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5"]],template:function(i,n){if(i&1&&g(0,ln,5,2,"div",0),i&2){let l;_((l=n.planHtml_$())?0:-1,l)}},dependencies:[oe],styles:[`@charset "UTF-8";.ccap-assistant-md[_ngcontent-%COMP%]{font-size:inherit;line-height:1.55;text-align:left;color:#ffffffeb}.ccap-assistant-md[_ngcontent-%COMP%] [_ngcontent-%COMP%]:first-child{margin-top:0}.ccap-assistant-md[_ngcontent-%COMP%] [_ngcontent-%COMP%]:last-child{margin-bottom:0}.ccap-assistant-md[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:600;color:#fffffff7;letter-spacing:.01em}.ccap-assistant-md[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{font-size:1.2em;margin-top:1.5rem;margin-bottom:.6rem;padding-bottom:.45rem;border-bottom:1px solid rgba(0,245,255,.28)}.ccap-assistant-md[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:1.1em;margin-top:1.35rem;margin-bottom:.55rem;padding-bottom:.35rem;border-bottom:1px solid rgba(0,245,255,.16)}.ccap-assistant-md[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:1.02em;margin-top:1.15rem;margin-bottom:.45rem;color:#00f5ffe0}.ccap-assistant-md[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-size:.95em;margin-top:.95rem;margin-bottom:.35rem;color:#ffffffc7}.ccap-assistant-md[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:.5rem 0}.ccap-assistant-md[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:650;color:#fffffffa}.ccap-assistant-md[_ngcontent-%COMP%] em[_ngcontent-%COMP%]{font-style:italic;color:#ffffffd9}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin:.6rem 0;padding-left:1.5rem;list-style-type:disc}.ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:.6rem 0;padding-left:1.5rem;list-style-type:decimal}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin:.15rem 0;line-height:1.5}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{list-style-type:circle}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{list-style-type:square}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] + li[_ngcontent-%COMP%]{margin-top:.25rem}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] > ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%]{margin-top:.15rem;margin-bottom:.1rem}.ccap-assistant-md[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,245,255,.38) 12%,rgba(0,245,255,.38) 88%,transparent 100%);margin:2.2rem 0}.ccap-assistant-md[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%]{margin:.75rem 0;padding:.45rem .85rem;border-left:3px solid rgba(0,245,255,.4);background:#00f5ff0a;border-radius:0 .25rem .25rem 0;color:#ffffffd9}.ccap-assistant-md[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:.2rem 0}.ccap-assistant-md[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{width:100%;border-collapse:separate;border-spacing:0;margin:1rem 0;font-size:.9em;display:block;overflow-x:auto;border:1px solid rgba(0,245,255,.32);border-radius:.3rem}.ccap-assistant-md[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{position:sticky;top:0}.ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{background:#00f5ff24;font-weight:600;color:#00f5ffeb;border-bottom:1px solid rgba(0,245,255,.22);border-right:1px solid rgba(0,245,255,.12);padding:.45rem .7rem;text-align:left;vertical-align:top;white-space:nowrap}.ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:last-child{border-right:none}.ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:1px solid rgba(255,255,255,.16);border-right:1px solid rgba(255,255,255,.12);padding:.4rem .7rem;text-align:left;vertical-align:top}.ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:last-child{border-right:none}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td[_ngcontent-%COMP%]{border-bottom:none}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(2n){background:#ffffff08}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background:#00f5ff0e}.ccap-assistant-md[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:.55rem 0;padding:.6rem .75rem;border-radius:.3rem;background:#00000080;border:1px solid rgba(255,255,255,.08);overflow-x:auto;font-size:.88em}.ccap-assistant-md[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.ccap-assistant-md[_ngcontent-%COMP%] p[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{padding:.1rem .28rem;border-radius:.2rem;background:#00f5ff12;color:#00f5ffeb;border:1px solid rgba(0,245,255,.12)}.ccap-assistant-md[_ngcontent-%COMP%] pre[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:transparent;color:inherit;border:none;padding:0;font-size:inherit}.ccap-assistant-md[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#38bdf8;text-decoration:underline;text-underline-offset:2px}.ccap-assistant-md[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#7dd3fc}
|
|
1
|
+
import{a as le,b as Ae,c as Vt,d as Lt,e as Re,f as Ft}from"./chunk-HPBX6VCV.js";import{a as de,b as ce,c as Rt,d as Oe}from"./chunk-HDCFO7OE.js";import"./chunk-EGRHWZRV.js";import{a as Pe}from"./chunk-EY32IBWM.js";import{a as Me}from"./chunk-RRN36VPR.js";import{a as ge}from"./chunk-Q2PKIGLB.js";import{a as wt}from"./chunk-OZGFJXOA.js";import{a as W}from"./chunk-467OMXRK.js";import{a as qe}from"./chunk-YRVQSWSZ.js";import{a as bt}from"./chunk-IR4THKPA.js";import{a as vt,b as $e}from"./chunk-X7HHJQ2O.js";import"./chunk-2LJT2APC.js";import"./chunk-M3RL34GF.js";import"./chunk-L44637OO.js";import"./chunk-6A2IM2XR.js";import"./chunk-UFBTR2BG.js";import{a as ae}from"./chunk-J5NYZUBP.js";import"./chunk-GR3CXOIX.js";import"./chunk-XH3SQ4UP.js";import"./chunk-DUN255KX.js";import{e as Pt,f as At,g as Ot}from"./chunk-Q6JQHJME.js";import"./chunk-VQWGWQDA.js";import{a as $t}from"./chunk-7JUIBZEE.js";import{a as kt,b as It,c as Dt}from"./chunk-C7XPBJTG.js";import{a as Et,b as U,c as Ke,f as Mt}from"./chunk-AS2SYIJB.js";import"./chunk-WPHEQXWB.js";import{a as yt,c as Tt}from"./chunk-767Z7I55.js";import{b as De,c as Ee}from"./chunk-PQUBI6TC.js";import"./chunk-EBSMIZTK.js";import"./chunk-46N7EC7U.js";import"./chunk-Q2NVIOCY.js";import{a as re}from"./chunk-XOGAYT52.js";import"./chunk-6NWEJXDU.js";import"./chunk-RQ2HFT2L.js";import"./chunk-ONEB5UF5.js";import"./chunk-V3VQWJQL.js";import"./chunk-U7ZBDYGU.js";import"./chunk-FJGBPKHK.js";import"./chunk-ZBTWQZNB.js";import{a as Y}from"./chunk-FLAJXIYW.js";import{c as mt,f as ut,i as Ct,n as ft,o as xt,p as ht,v as gt}from"./chunk-EO4DNTT4.js";import"./chunk-QDTY7SR6.js";import{a as O}from"./chunk-5UPNU54P.js";import{j as St}from"./chunk-6BQHKSUP.js";import{p as dt}from"./chunk-OP2PE3KG.js";import{$a as F,Aa as Ce,Ba as fe,C as $,Cb as Ie,D as z,E as Ye,Ea as xe,Eb as ct,Fa as d,Fb as pt,G as ie,Ga as T,Gb as se,Ha as D,Ia as J,J as u,K as C,Kb as _t,L as M,M as L,N as Ze,Pa as he,Qa as nt,Ra as ye,T as ve,Ta as Te,U as Q,Va as He,W as G,Xa as it,Z as a,_ as et,a as Be,aa as v,ab as j,b as We,bb as ot,ca as tt,da as g,db as st,fa as _e,ga as b,h as Ge,ha as we,hb as A,ia as me,ib as at,ja as V,jb as ke,k as R,la as _,mb as X,oa as N,ob as rt,pa as H,pb as lt,qa as o,ra as s,sa as S,ta as Ne,ua as k,ub as oe,va as f,wa as c,y as Je,z as Xe,za as ue}from"./chunk-TBMJSIBB.js";function an(t,r){t&1&&(o(0,"div",3),M(),o(1,"svg",5),S(2,"path",6),s(),L(),o(3,"span",7),d(4,"Plan accepted"),s()())}function rn(t,r){if(t&1){let e=k();o(0,"button",8),f("click",function(){u(e);let n=c(2);return C(n.handleAccept())}),M(),o(1,"svg",9),S(2,"path",6),s(),d(3," Accept plan "),s()}}function ln(t,r){if(t&1&&(o(0,"div",0),S(1,"div",1),o(2,"div",2),g(3,an,5,0,"div",3)(4,rn,4,0,"button",4),s()()),t&2){let e=c();a(),b("innerHTML",r,G),a(2),_(e.isAccepted_$()?3:4)}}var Ve=(()=>{class t{sanitizer=$(Ie);rawData=Q(void 0);accepted=ve();isAccepted_$=v(!1);planText_$=A(()=>{let e=this.rawData();if(!e)return"";let i=e.input;if(!i||typeof i!="object")return"";let n=i.plan;return typeof n=="string"?n:""});planHtml_$=A(()=>{let e=this.planText_$();if(!e)return null;let i=Et.toSanitizedHtml(e);return this.sanitizer.bypassSecurityTrustHtml(i)});handleAccept(){this.isAccepted_$()||(this.isAccepted_$.set(!0),this.accepted.emit())}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-s-agent-tool-plan-view"]],hostAttrs:[1,"block"],inputs:{rawData:[1,"rawData"]},outputs:{accepted:"accepted"},standalone:!0,features:[Te],decls:1,vars:1,consts:[[1,"px-2.5","py-2","space-y-2"],[1,"ccap-assistant-md","leading-snug","sm:leading-normal","break-words","text-neutral-200","text-xs","sm:text-sm","min-w-0","max-h-[400px]","overflow-y-auto","overflow-x-auto","pr-1",3,"innerHTML"],[1,"flex","justify-end","pt-1","border-t","border-orange-500/10"],[1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-green-500/10","border","border-green-500/25"],["type","button",1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-ccapAccent/10","border","border-ccapAccent/30","text-ccapAccent","text-[11px]","font-medium","cursor-pointer","hover:bg-ccapAccent/20","hover:border-ccapAccent/50","transition-colors"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5","text-green-400"],["d","M3.5 8.5l3 3 6-6"],[1,"text-[11px]","text-green-400","font-medium"],["type","button",1,"inline-flex","items-center","gap-1.5","px-3","py-1","rounded-md","bg-ccapAccent/10","border","border-ccapAccent/30","text-ccapAccent","text-[11px]","font-medium","cursor-pointer","hover:bg-ccapAccent/20","hover:border-ccapAccent/50","transition-colors",3,"click"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5"]],template:function(i,n){if(i&1&&g(0,ln,5,2,"div",0),i&2){let l;_((l=n.planHtml_$())?0:-1,l)}},dependencies:[oe],styles:[`@charset "UTF-8";.ccap-assistant-md[_ngcontent-%COMP%]{font-size:inherit;line-height:1.55;text-align:left;color:#ffffffeb}.ccap-assistant-md[_ngcontent-%COMP%] [_ngcontent-%COMP%]:first-child{margin-top:0}.ccap-assistant-md[_ngcontent-%COMP%] [_ngcontent-%COMP%]:last-child{margin-bottom:0}.ccap-assistant-md[_ngcontent-%COMP%] h1[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-weight:600;color:#fffffff7;letter-spacing:.01em}.ccap-assistant-md[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{font-size:1.2em;margin-top:1.5rem;margin-bottom:.6rem;padding-bottom:.45rem;border-bottom:1px solid rgba(0,245,255,.28)}.ccap-assistant-md[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-size:1.1em;margin-top:1.35rem;margin-bottom:.55rem;padding-bottom:.35rem;border-bottom:1px solid rgba(0,245,255,.16)}.ccap-assistant-md[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:1.02em;margin-top:1.15rem;margin-bottom:.45rem;color:#00f5ffe0}.ccap-assistant-md[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-size:.95em;margin-top:.95rem;margin-bottom:.35rem;color:#ffffffc7}.ccap-assistant-md[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:.5rem 0}.ccap-assistant-md[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:650;color:#fffffffa}.ccap-assistant-md[_ngcontent-%COMP%] em[_ngcontent-%COMP%]{font-style:italic;color:#ffffffd9}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{margin:.6rem 0;padding-left:1.5rem;list-style-type:disc}.ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{margin:.6rem 0;padding-left:1.5rem;list-style-type:decimal}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin:.15rem 0;line-height:1.5}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ul[_ngcontent-%COMP%]{list-style-type:circle}.ccap-assistant-md[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%] ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ol[_ngcontent-%COMP%] ol[_ngcontent-%COMP%]{list-style-type:square}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] + li[_ngcontent-%COMP%]{margin-top:.25rem}.ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] > ul[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] > ol[_ngcontent-%COMP%]{margin-top:.15rem;margin-bottom:.1rem}.ccap-assistant-md[_ngcontent-%COMP%] hr[_ngcontent-%COMP%]{border:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(0,245,255,.38) 12%,rgba(0,245,255,.38) 88%,transparent 100%);margin:2.2rem 0}.ccap-assistant-md[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%]{margin:.75rem 0;padding:.45rem .85rem;border-left:3px solid rgba(0,245,255,.4);background:#00f5ff0a;border-radius:0 .25rem .25rem 0;color:#ffffffd9}.ccap-assistant-md[_ngcontent-%COMP%] blockquote[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:.2rem 0}.ccap-assistant-md[_ngcontent-%COMP%] table[_ngcontent-%COMP%]{width:100%;border-collapse:separate;border-spacing:0;margin:1rem 0;font-size:.9em;display:block;overflow-x:auto;border:1px solid rgba(0,245,255,.32);border-radius:.3rem}.ccap-assistant-md[_ngcontent-%COMP%] thead[_ngcontent-%COMP%]{position:sticky;top:0}.ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{background:#00f5ff24;font-weight:600;color:#00f5ffeb;border-bottom:1px solid rgba(0,245,255,.22);border-right:1px solid rgba(0,245,255,.12);padding:.45rem .7rem;text-align:left;vertical-align:top;white-space:nowrap}.ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%]:last-child{border-right:none}.ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{border-bottom:1px solid rgba(255,255,255,.16);border-right:1px solid rgba(255,255,255,.12);padding:.4rem .7rem;text-align:left;vertical-align:top}.ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:last-child{border-right:none}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:last-child td[_ngcontent-%COMP%]{border-bottom:none}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:nth-child(2n){background:#ffffff08}.ccap-assistant-md[_ngcontent-%COMP%] tbody[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background:#00f5ff0e}.ccap-assistant-md[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:.55rem 0;padding:.6rem .75rem;border-radius:.3rem;background:#00000080;border:1px solid rgba(255,255,255,.08);overflow-x:auto;font-size:.88em}.ccap-assistant-md[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em}.ccap-assistant-md[_ngcontent-%COMP%] p[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] li[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] td[_ngcontent-%COMP%] code[_ngcontent-%COMP%], .ccap-assistant-md[_ngcontent-%COMP%] th[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{padding:.1rem .28rem;border-radius:.2rem;background:#00f5ff12;color:#00f5ffeb;border:1px solid rgba(0,245,255,.12)}.ccap-assistant-md[_ngcontent-%COMP%] pre[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{background:transparent;color:inherit;border:none;padding:0;font-size:inherit}.ccap-assistant-md[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#38bdf8;text-decoration:underline;text-underline-offset:2px}.ccap-assistant-md[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#7dd3fc}
|
|
2
2
|
/*# sourceMappingURL=s-agent-tool-plan-view.component-PVG3EXHY.css.map */`]})}return t})();var cn=(t,r)=>r.content,pn=(t,r,e)=>({"text-neutral-500 line-through":t,"text-blue-300":r,"text-neutral-300":e});function _n(t,r){t&1&&(M(),o(0,"svg",5),S(1,"path",10),s())}function mn(t,r){t&1&&(o(0,"span",6),S(1,"span",11),s())}function un(t,r){t&1&&(o(0,"span",6),S(1,"span",12),s())}function Cn(t,r){if(t&1&&(o(0,"div",9),d(1),s()),t&2){let e=c().$implicit;a(),T(e.activeForm)}}function fn(t,r){if(t&1&&(o(0,"div",4),g(1,_n,2,0,":svg:svg",5)(2,mn,2,0,"span",6)(3,un,2,0,"span",6),o(4,"div",7)(5,"span",8),d(6),s(),g(7,Cn,2,1,"div",9),s()()),t&2){let e,i=r.$implicit;a(),_((e=i.status)==="completed"?1:e==="in_progress"?2:3),a(4),b("ngClass",it(4,pn,i.status==="completed",i.status==="in_progress",i.status!=="completed"&&i.status!=="in_progress")),a(),T(i.content),a(),_(i.status==="in_progress"&&i.activeForm?7:-1)}}function xn(t,r){if(t&1&&(o(0,"div",0)(1,"div",1)(2,"span",2),d(3,"Tasks"),s(),o(4,"span",3),d(5),s()(),N(6,fn,8,8,"div",4,cn),s()),t&2){let e=c();a(5),J("",e.completedCount_$(),"/",e.totalCount_$(),""),a(),H(e.todos_$())}}var Fe=(()=>{class t{rawData=Q(void 0);todos_$=A(()=>{let e=this.rawData();if(!e)return[];let i=e.input;if(!i||typeof i!="object")return[];let n=i.todos;return Array.isArray(n)?n.filter(l=>typeof l=="object"&&l!==null&&typeof l.content=="string"):[]});completedCount_$=A(()=>this.todos_$().filter(e=>e.status==="completed").length);totalCount_$=A(()=>this.todos_$().length);static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-s-agent-tool-todo-list"]],hostAttrs:[1,"block"],inputs:{rawData:[1,"rawData"]},standalone:!0,features:[Te],decls:1,vars:1,consts:[[1,"px-2.5","py-1.5","space-y-0.5"],[1,"flex","items-center","gap-1.5","mb-1"],[1,"text-[10px]","text-neutral-500","uppercase","tracking-wider","font-medium"],[1,"text-[10px]","text-neutral-600"],[1,"flex","items-start","gap-2","py-0.5"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-4","h-4","text-green-400","shrink-0","mt-px"],[1,"w-4","h-4","shrink-0","mt-px","flex","items-center","justify-center"],[1,"min-w-0"],[1,"text-[11px]","leading-relaxed","break-words",3,"ngClass"],[1,"text-[9px]","text-blue-400/50","mt-px"],["d","M3.5 8.5l3 3 6-6"],[1,"w-3","h-3","rounded-full","border-2","border-blue-400/40","border-t-blue-400","animate-spin"],[1,"w-3","h-3","rounded-full","border","border-neutral-600"]],template:function(i,n){i&1&&g(0,xn,8,2,"div",0),i&2&&_(n.todos_$().length?0:-1)},dependencies:[oe,X],encapsulation:2})}return t})();var P="ccap-ccSession",y=class{static saveProjectFilter(r){O.writeString(`${P}:projectFilter`,r)}static loadProjectFilter(){return O.readString(`${P}:projectFilter`)??""}static saveLastWorkspacePath(r){O.writeString(`${P}:lastWorkspacePath`,r)}static loadLastWorkspacePath(){return O.readString(`${P}:lastWorkspacePath`)??""}static saveLastLabel(r){O.writeString(`${P}:lastLabel`,r)}static loadLastLabel(){return O.readString(`${P}:lastLabel`)??""}static savePromptDraft(r,e){Oe.saveDraft(P,r,e)}static loadPromptDraft(r){return Oe.loadDraft(P,r)}static clearPromptDraft(r){Oe.clearDraft(P,r)}static savePanelOpen(r,e){O.writeBoolean(`${P}:panelOpen:${r}`,e)}static loadPanelOpen(r,e){return O.readBoolean(`${P}:panelOpen:${r}`,e)}static savePanelWidth(r,e){O.writeNumber(`${P}:panelWidth:${r}`,e)}static loadPanelWidth(r,e){return O.readNumber(`${P}:panelWidth:${r}`,e)}static saveSessionMode(r){O.writeString(`${P}:sessionMode`,r)}static loadSessionMode(){return O.readString(`${P}:sessionMode`)??"normal"}static saveSessionEffort(r){O.writeString(`${P}:sessionEffort`,r)}static loadSessionEffort(){return O.readString(`${P}:sessionEffort`)??"high"}static saveSessionModel(r){O.writeString(`${P}:sessionModel`,r)}static loadSessionModel(){return O.readString(`${P}:sessionModel`)??"sonnet"}static saveStatusHistory(r){O.writeBoolean(`${P}:statusHistory`,r)}static loadStatusHistory(){return O.readBoolean(`${P}:statusHistory`,!1)}static saveLastSessionId(r){O.writeString(`${P}:lastSessionId`,r)}static loadLastSessionId(){return O.readString(`${P}:lastSessionId`)??""}static saveLastCcapId(r){O.writeString(`${P}:lastCcapId`,r)}static loadLastCcapId(){return O.readString(`${P}:lastCcapId`)??""}static saveShowStatusUpdates(r){O.writeBoolean(`${P}:showStatusUpdates`,r)}static loadShowStatusUpdates(){return O.readBoolean(`${P}:showStatusUpdates`,!0)}static saveShowArchived(r){O.writeBoolean(`${P}:showArchived`,r)}static loadShowArchived(){return O.readBoolean(`${P}:showArchived`,!1)}};var K=(()=>{class t{ccSession_DS=$(W);isTimelinePanelOpen_$=v(y.loadPanelOpen("timeline",!1));isMetadataPanelOpen_$=v(y.loadPanelOpen("metadata",!1));isResuming_$=v(!1);isTerminating_$=v(!1);isStopping_$=v(!1);isForking_$=v(!1);isShowSessionStatus_$=v(y.loadStatusHistory());isShowAgentUpdates_$=v(y.loadShowStatusUpdates());handleToggleTimeline(){let e=!this.isTimelinePanelOpen_$();this.isTimelinePanelOpen_$.set(e),y.savePanelOpen("timeline",e)}handleToggleMetadata(){let e=!this.isMetadataPanelOpen_$();this.isMetadataPanelOpen_$.set(e),y.savePanelOpen("metadata",e)}handleToggleSessionStatus(){let e=!this.isShowSessionStatus_$();this.isShowSessionStatus_$.set(e),y.saveStatusHistory(e)}handleToggleAgentUpdates(){let e=!this.isShowAgentUpdates_$();this.isShowAgentUpdates_$.set(e),y.saveShowStatusUpdates(e)}handleResume(){return R(this,null,function*(){let e=this.ccSession_DS.selectedSession_$();if(!e||this.isResuming_$())return;let i=e.session.sessionId;if(i){this.isResuming_$.set(!0);try{yield this.ccSession_DS.resumeSession({sessionId:i})}catch{}finally{this.isResuming_$.set(!1)}}})}handleStopExecution(){return R(this,null,function*(){let e=this.ccSession_DS.selectedSession_$();if(!e||this.isStopping_$())return;let i=e.session.sessionId;if(i){this.isStopping_$.set(!0);try{yield this.ccSession_DS.stopExecution({sessionId:i})}catch{}finally{this.isStopping_$.set(!1)}}})}handleFork(){return R(this,null,function*(){let e=this.ccSession_DS.selectedSession_$();if(!e||this.isForking_$())return null;let i=e.session.sessionId;if(!i||!e.session.claudeSessionId)return null;this.isForking_$.set(!0);try{return yield this.ccSession_DS.forkSession({sessionId:i})}catch{return null}finally{this.isForking_$.set(!1)}})}handleTerminate(){return R(this,null,function*(){let e=this.ccSession_DS.selectedSession_$();if(!e||this.isTerminating_$())return;let i=e.session.sessionId;if(i){this.isTerminating_$.set(!0);try{yield this.ccSession_DS.terminateSession({sessionId:i})}catch{}finally{this.isTerminating_$.set(!1)}}})}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Je({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var bn=(t,r)=>r._id,vn=(t,r)=>r.path;function wn(t,r){if(t&1&&(o(0,"option",26),d(1),s()),t&2){let e=c().$implicit;b("value",e.localPath),a(),T(e.name)}}function yn(t,r){if(t&1&&g(0,wn,2,2,"option",26),t&2){let e=r.$implicit;_(e.localPath?0:-1)}}function Tn(t,r){t&1&&(o(0,"div",12),d(1,"Loading sessions..."),s())}function kn(t,r){t&1&&(o(0,"div",13),d(1,"Failed to load sessions"),s())}function In(t,r){if(t&1){let e=k();o(0,"app-s-session-select",27),f("selected",function(n){u(e);let l=c();return C(l.handleSelectSession(n))})("contextMenu",function(n){u(e);let l=c();return C(l.handleRowContextMenu(n))})("scheduleIndicatorClicked",function(n){u(e);let l=c();return C(l.handleScheduleIndicatorClick(n))})("coordinatorIndicatorClicked",function(n){u(e);let l=c();return C(l.handleCoordinatorIndicatorClick(n))}),s()}if(t&2){let e=c();b("rows",e.sessionRowViews_$())("activeId",e.ccSession_DS.activeSessionId_$())("hideSearch",!0)}}function $n(t,r){t&1&&(o(0,"div",12),d(1,"No sessions found"),s())}function Dn(t,r){if(t&1&&(o(0,"option",26),d(1),s()),t&2){let e=r.$implicit;b("value",e.path),a(),J("",e.label," \u2014 ",e.path,"")}}function En(t,r){if(t&1){let e=k();o(0,"select",28),f("ngModelChange",function(n){u(e);let l=c();return C(l.handlePathOptionChange(n))}),o(1,"option",29),d(2,"Select a path..."),s(),N(3,Dn,2,3,"option",26,vn),o(5,"option",30),d(6,"Custom path..."),s()()}if(t&2){let e=c();b("ngModel",e.selectedPathOption_$()),a(3),H(e.newAgentSessionWorkspace_DS.workspacePathPickerOptions_$())}}function Mn(t,r){if(t&1){let e=k();o(0,"div",33)(1,"input",34,0),f("input",function(){u(e);let n=xe(2),l=c(2);return C(l.renameValue_$.set(n.value))})("keydown.enter",function(){u(e);let n=c(2);return C(n.handleCtxRenameConfirm())})("keydown.escape",function(){u(e);let n=c(2);return C(n.handleCloseCtxMenu())}),s()()}if(t&2){let e=c(2);a(),b("value",e.renameValue_$())}}function Pn(t,r){if(t&1){let e=k();o(0,"button",35),f("click",function(){u(e);let n=c(3);return C(n.handleCtxResume())}),d(1," Resume "),s()}}function An(t,r){if(t&1){let e=k();S(0,"div",37),o(1,"button",38),f("click",function(){u(e);let n=c(3);return C(n.handleCtxTerminate())}),d(2," Terminate "),s()}}function On(t,r){if(t&1){let e=k();o(0,"button",35),f("click",function(){u(e);let n=c(2);return C(n.handleCtxRenameStart())}),d(1," Rename "),s(),o(2,"button",35),f("click",function(){u(e);let n=c(2);return C(n.handleCtxToggleArchive())}),d(3),s(),g(4,Pn,2,0,"button",36)(5,An,3,0)}if(t&2){let e=c();a(3),D(" ",e.isArchived?"Unarchive":"Archive"," "),a(),_(e.status==="completed"||e.status==="errored"?4:-1),a(),_(e.status==="running"||e.status==="starting"||e.status==="waiting-input"?5:-1)}}function Rn(t,r){if(t&1){let e=k();o(0,"div",31),f("click",function(){u(e);let n=c();return C(n.handleCloseCtxMenu())}),s(),o(1,"div",32),g(2,Mn,3,1,"div",33)(3,On,6,3),s()}if(t&2){let e=c();a(),we("left",e.ctxMenuPos_$().x,"px")("top",e.ctxMenuPos_$().y,"px"),a(),_(e.isRenaming_$()?2:3)}}var jt=(()=>{class t{ccSession_DS=$(W);newAgentSessionWorkspace_DS=$(wt);pm_DS=$(yt);peiContext_DS=$(ae);scheduledJobs_DS=$(Me);coordinator_DS=$(Pe);router=$(se);instanceChangeEffect=ke(()=>{let e=this.peiContext_DS.activeCcapId_$(),i=this.showArchived_$();e&&at(()=>{this.ccSession_DS.loadSessions({includeArchived:i||void 0})})});projectFilter_$=v("");filteredSessions_$=A(()=>{let e=this.ccSession_DS.sessions_$(),i=this.projectFilter_$();if(!i)return e;let n=t.normalizePath(i);return e.filter(l=>!!l.workspacePath&&t.normalizePath(l.workspacePath)===n)});sessionRowViews_$=A(()=>{let e=this.scheduledJobs_DS.scheduledSessionIds_$(),i=this.coordinator_DS.coordinatedSessionIds_$();return this.filteredSessions_$().map(n=>({id:n.sessionId,label:n.label||n.sessionId,status:n.status,statusColorClass:qe.resolve(n.status),workspacePath:n.workspacePath,isArchived:!!n.isArchived,lastActivityAt:n.lastActivityAt,promptCount:n.promptCount,isRunning:qe.isRunning(n.status),hasSchedule:e.has(n.sessionId),hasCoordinator:i.has(n.sessionId)}))});isCreateDialogOpen_$=v(!1);schedulePopupSessionId_$=v(null);coordinatorPopupSessionId_$=v(null);newSessionWorkspacePath_$=v("");newSessionLabel_$=v("");isCreating_$=v(!1);showArchived_$=v(!1);selectedPathOption_$=v("");sessionSelected=ve();ctxMenuSession_$=v(null);ctxMenuPos_$=v({x:0,y:0});isRenaming_$=v(!1);renameValue_$=v("");ngOnInit(){let e=y.loadProjectFilter();e&&this.projectFilter_$.set(e);let i=y.loadShowArchived();this.showArchived_$.set(i),!this.pm_DS.projectsLoadedOnce_$()&&!this.pm_DS.projectsLoading_$()&&this.pm_DS.loadProjects(),this.peiContext_DS.ensureInitialized().then(()=>{this.ccSession_DS.loadSessions({includeArchived:i||void 0})}),this.scheduledJobs_DS.loadAll(),this.coordinator_DS.loadAllCoordinatorsForManagementPage()}handleSelectSession(e){let i=this.peiContext_DS.activeCcapId_$(),n=i?["/cc-session",i,e]:["/cc-session",e];this.router.navigate(n),this.sessionSelected.emit()}handleOpenCreateDialog(){return R(this,null,function*(){if(this.isCreateDialogOpen_$.set(!0),yield this.newAgentSessionWorkspace_DS.refreshWorkspacePathPickerOptions(),!this.newSessionWorkspacePath_$()){let i=this.newAgentSessionWorkspace_DS.resolveInitialWorkspacePath({lastWorkspacePath:y.loadLastWorkspacePath()});if(i){this.newSessionWorkspacePath_$.set(i);let n=this.newAgentSessionWorkspace_DS.workspacePathPickerOptions_$().some(l=>l.path===i);this.selectedPathOption_$.set(n?i:"custom")}}let e=y.loadLastLabel();e&&this.newSessionLabel_$.set(e)})}handlePathOptionChange(e){this.selectedPathOption_$.set(e),e&&e!=="custom"&&this.newSessionWorkspacePath_$.set(e)}handleCloseCreateDialog(){this.isCreateDialogOpen_$.set(!1),this.newSessionWorkspacePath_$.set(""),this.newSessionLabel_$.set(""),this.selectedPathOption_$.set("")}handleCreateSession(){return R(this,null,function*(){let e=this.newSessionWorkspacePath_$();if(!(!e||this.isCreating_$())){this.isCreating_$.set(!0);try{y.saveLastWorkspacePath(e),y.saveLastLabel(this.newSessionLabel_$());let i=y.loadSessionMode(),n=y.loadSessionEffort(),l=yield this.ccSession_DS.createSession({workspacePath:e,label:this.newSessionLabel_$()||void 0,mode:i||void 0,reasoningEffort:n||void 0});if(this.handleCloseCreateDialog(),l){let p=this.peiContext_DS.activeCcapId_$(),m=p?["/cc-session",p,l]:["/cc-session",l];this.router.navigate(m)}}catch{this.handleCloseCreateDialog()}finally{this.isCreating_$.set(!1)}}})}handleProjectFilterChange(e){this.projectFilter_$.set(e),y.saveProjectFilter(e)}handleToggleShowArchived(){let e=!this.showArchived_$();this.showArchived_$.set(e),y.saveShowArchived(e),this.handleRefresh()}handleToggleArchive(e,i){return R(this,null,function*(){e.stopPropagation();try{yield this.ccSession_DS.setSessionArchived({sessionId:i.sessionId,isArchived:!i.isArchived}),this.handleRefresh()}catch{}})}handleRowContextMenu(e){this.isRenaming_$.set(!1);let i=this.filteredSessions_$().find(n=>n.sessionId===e.id);i&&(this.ctxMenuSession_$.set(i),this.ctxMenuPos_$.set({x:e.event.clientX,y:e.event.clientY}))}handleScheduleIndicatorClick(e){this.schedulePopupSessionId_$.set(e)}handleCloseSchedulePopup(){this.schedulePopupSessionId_$.set(null)}handleCoordinatorIndicatorClick(e){this.coordinatorPopupSessionId_$.set(e)}handleCloseCoordinatorPopup(){this.coordinatorPopupSessionId_$.set(null)}handleCloseCtxMenu(){this.ctxMenuSession_$.set(null),this.isRenaming_$.set(!1),this.renameValue_$.set("")}handleCtxRenameStart(){let e=this.ctxMenuSession_$();e&&(this.renameValue_$.set(e.label||""),this.isRenaming_$.set(!0),setTimeout(()=>{let i=document.querySelector("#ctxRenameInput");i&&(i.focus(),i.select())},0))}handleCtxRenameConfirm(){return R(this,null,function*(){let e=this.ctxMenuSession_$();if(!e)return;let i=this.renameValue_$().trim();if(i!==(e.label||""))try{yield this.ccSession_DS.updateSessionConfig({sessionId:e.sessionId,label:i})}catch{}this.handleCloseCtxMenu()})}handleCtxToggleArchive(){return R(this,null,function*(){let e=this.ctxMenuSession_$();if(e){this.handleCloseCtxMenu();try{yield this.ccSession_DS.setSessionArchived({sessionId:e.sessionId,isArchived:!e.isArchived}),this.handleRefresh()}catch{}}})}handleCtxTerminate(){return R(this,null,function*(){let e=this.ctxMenuSession_$();if(e){this.handleCloseCtxMenu();try{yield this.ccSession_DS.terminateSession({sessionId:e.sessionId}),this.handleRefresh()}catch{}}})}handleCtxResume(){return R(this,null,function*(){let e=this.ctxMenuSession_$();if(e){this.handleCloseCtxMenu();try{yield this.ccSession_DS.resumeSession({sessionId:e.sessionId}),this.handleRefresh()}catch{}}})}handleRefresh(){this.ccSession_DS.loadSessions({includeArchived:this.showArchived_$()||void 0})}static normalizePath(e){let i=e.trim().toLowerCase().replace(/\\/g,"/");for(;i.endsWith("/")&&i.length>1;)i=i.slice(0,-1);return i}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-dashboard"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],outputs:{sessionSelected:"sessionSelected"},decls:41,vars:24,consts:[["renameInput",""],[1,"p-2","border-b","border-neonDefault"],[1,"flex","items-center","justify-between","p-3","border-b","border-neonDefault"],[1,"text-sm","font-semibold","text-neutral-200"],[1,"flex","gap-1"],["title","Refresh",1,"px-2","py-1","text-xs","border","border-neonDefault","text-neutral-300","hover:bg-neutral-700","rounded","transition-colors",3,"click"],[1,"px-2","py-1","text-xs","border","border-ccapAccent","text-ccapAccent","hover:bg-ccapAccent","hover:text-white","hover:shadow-neon-glow-accent","rounded","transition-colors",3,"click"],[1,"p-2","border-b","border-neonDefault","flex","gap-2","items-center"],[1,"flex-1","bg-neutral-900","text-neutral-300","text-xs","rounded","px-2","py-1","border","border-neonDefault",3,"ngModelChange","ngModel"],["value",""],[1,"px-2","py-1","text-[10px]","border","rounded","transition-colors","whitespace-nowrap",3,"click","title"],[1,"flex-1","overflow-y-auto"],[1,"p-4","text-center","text-neutral-500","text-sm"],[1,"p-4","text-center","text-red-400","text-sm"],["kind","cc",3,"rows","activeId","hideSearch"],[3,"closed","isOpen","title","maxWidth","closeOnBackdropClick"],[1,"mb-2"],[1,"text-xs","text-neutral-400","block","mb-1"],[1,"w-full","bg-neutral-900","text-neutral-300","text-xs","rounded","px-2","py-1.5","border","border-neonDefault","focus:border-neonCyan","focus:outline-none","mb-1.5",3,"ngModel"],["type","text","placeholder","/path/to/workspace",1,"w-full","bg-neutral-900","text-neutral-200","text-sm","rounded","px-2","py-1.5","border","border-neonDefault","focus:border-neonCyan","focus:outline-none",3,"ngModelChange","ngModel"],[1,"mb-3"],["type","text","placeholder","My session",1,"w-full","bg-neutral-900","text-neutral-200","text-sm","rounded","px-2","py-1.5","border","border-neonDefault","focus:border-neonCyan","focus:outline-none",3,"ngModelChange","ngModel"],[1,"flex","justify-end","gap-2"],[1,"px-3","py-1.5","text-xs","border","border-neonDefault","text-neutral-300","hover:bg-neutral-700","rounded","transition-colors",3,"click","disabled"],[1,"px-3","py-1.5","text-xs","border","border-ccapAccent","text-ccapAccent","hover:bg-ccapAccent","hover:text-white","disabled:opacity-50","rounded","transition-colors",3,"click","disabled"],[3,"closed","sessionId","isOpen"],[3,"value"],["kind","cc",3,"selected","contextMenu","scheduleIndicatorClicked","coordinatorIndicatorClicked","rows","activeId","hideSearch"],[1,"w-full","bg-neutral-900","text-neutral-300","text-xs","rounded","px-2","py-1.5","border","border-neonDefault","focus:border-neonCyan","focus:outline-none","mb-1.5",3,"ngModelChange","ngModel"],["value","","disabled",""],["value","custom"],[1,"fixed","inset-0","z-40",3,"click"],[1,"fixed","z-50","min-w-[160px]","bg-neutral-900","border","border-neutral-700","rounded-lg","shadow-xl","py-1","text-xs"],[1,"px-2","py-1.5"],["id","ctxRenameInput","type","text",1,"w-full","bg-neutral-800","text-neutral-200","text-xs","rounded","px-2","py-1","border","border-neonDefault","focus:border-neonCyan","focus:outline-none",3,"input","keydown.enter","keydown.escape","value"],[1,"w-full","text-left","px-3","py-1.5","text-neutral-300","hover:bg-neutral-800","transition-colors",3,"click"],[1,"w-full","text-left","px-3","py-1.5","text-neutral-300","hover:bg-neutral-800","transition-colors"],[1,"border-t","border-neutral-700","my-1"],[1,"w-full","text-left","px-3","py-1.5","text-red-400","hover:bg-red-500/10","transition-colors",3,"click"]],template:function(i,n){if(i&1&&(o(0,"div",1),S(1,"app-s-instance-chip-row-with-info"),s(),o(2,"div",2)(3,"h2",3),d(4,"CC Sessions"),s(),o(5,"div",4)(6,"button",5),f("click",function(){return n.handleRefresh()}),d(7," Refresh "),s(),o(8,"button",6),f("click",function(){return n.handleOpenCreateDialog()}),d(9," + New "),s()()(),o(10,"div",7)(11,"select",8),f("ngModelChange",function(p){return n.handleProjectFilterChange(p)}),o(12,"option",9),d(13,"All projects"),s(),N(14,yn,1,1,null,null,bn),s(),o(16,"button",10),f("click",function(){return n.handleToggleShowArchived()}),d(17),s()(),o(18,"div",11),g(19,Tn,2,0,"div",12)(20,kn,2,0,"div",13)(21,In,1,3,"app-s-session-select",14)(22,$n,2,0,"div",12),s(),o(23,"app-s-modal",15),f("closed",function(){return n.isCreateDialogOpen_$.set(!1)}),o(24,"div",16)(25,"label",17),d(26,"Workspace Path *"),s(),g(27,En,7,1,"select",18),o(28,"input",19),f("ngModelChange",function(p){return n.newSessionWorkspacePath_$.set(p)}),s()(),o(29,"div",20)(30,"label",17),d(31,"Label (optional)"),s(),o(32,"input",21),f("ngModelChange",function(p){return n.newSessionLabel_$.set(p)}),s()(),o(33,"div",22)(34,"button",23),f("click",function(){return n.handleCloseCreateDialog()}),d(35," Cancel "),s(),o(36,"button",24),f("click",function(){return n.handleCreateSession()}),d(37),s()()(),o(38,"app-sch-schedule-popup",25),f("closed",function(){return n.handleCloseSchedulePopup()}),s(),o(39,"app-crd-info-popup",25),f("closed",function(){return n.handleCloseCoordinatorPopup()}),s(),g(40,Rn,4,5)),i&2){let l;a(11),b("ngModel",n.projectFilter_$()),a(3),H(n.pm_DS.projects_$()),a(2),V(n.showArchived_$()?"border-amber-500/60 text-amber-400 bg-amber-500/10 hover:bg-amber-500/20":"border-neonDefault text-neutral-500 hover:text-neutral-300 hover:bg-neutral-700"),b("title",n.showArchived_$()?"Hide archived sessions":"Show archived sessions"),a(),D(" ",n.showArchived_$()?"Archived ON":"Archived"," "),a(2),_(n.ccSession_DS.sessionsLoading_$()?19:-1),a(),_(n.ccSession_DS.sessionsLoadError_$()?20:-1),a(),_(n.sessionRowViews_$().length?21:-1),a(),_(!n.ccSession_DS.sessionsLoading_$()&&!n.sessionRowViews_$().length?22:-1),a(),b("isOpen",n.isCreateDialogOpen_$())("title","New CC Session")("maxWidth","sm")("closeOnBackdropClick",!1),a(4),_(n.newAgentSessionWorkspace_DS.workspacePathPickerOptions_$().length?27:-1),a(),b("ngModel",n.newSessionWorkspacePath_$()),a(4),b("ngModel",n.newSessionLabel_$()),a(2),b("disabled",n.isCreating_$()),a(2),b("disabled",n.isCreating_$()||!n.newSessionWorkspacePath_$()),a(),D(" ",n.isCreating_$()?"Creating...":"Create"," "),a(),b("sessionId",n.schedulePopupSessionId_$())("isOpen",n.schedulePopupSessionId_$()!==null),a(),b("sessionId",n.coordinatorPopupSessionId_$())("isOpen",n.coordinatorPopupSessionId_$()!==null),a(),_((l=n.ctxMenuSession_$())?40:-1,l)}},dependencies:[xt,ht,mt,ft,ut,Ct,Ae,Y,de,ce,Tt],encapsulation:2})}return t})();var Ue=(()=>{class t{transform(e){switch(e){case"running":return"bg-yellow-500";case"waiting-input":return"bg-green-500";case"starting":return"bg-yellow-500";case"creating":return"bg-yellow-400";case"completed":return"bg-blue-500";case"errored":return"bg-red-500";case"terminated":return"bg-red-700";case"stalled":return"bg-orange-500";default:return"bg-neutral-600"}}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=ie({name:"ccSessionStatusColor",type:t,pure:!0})}return t})();function Fn(t,r){t&1&&S(0,"div",5)}function Un(t,r){if(t&1){let e=k();o(0,"button",14),f("click",function(){u(e);let n=c();return C(n.detailUi_DS.handleToggleMetadata())}),d(1," Info "),s()}if(t&2){let e=c();V(e.detailUi_DS.isMetadataPanelOpen_$()?"border-neonCyan/50 text-neonCyan bg-neonCyan/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600")}}function jn(t,r){t&1&&S(0,"span",18)}function zn(t,r){if(t&1&&(S(0,"span",17),F(1,"ccSessionStatusColor"),g(2,jn,1,0,"span",18)),t&2){c(2);let e=ye(1);b("ngClass",j(1,3,e.detail.session.status))("title",e.detail.session.status),a(2),_(e.detail.runtime.isLive?2:-1)}}function Bn(t,r){t&1&&(o(0,"span",16),d(1,"Loading\u2026"),s())}function Wn(t,r){if(t&1&&(o(0,"span",15),d(1),s(),g(2,zn,3,5)(3,Bn,2,0,"span",16)),t&2){c();let e=ye(1);b("title",e.title),a(),D(" ",e.title," "),a(),_(e.detail?2:-1),a(),_(e.isLoading&&!e.showActions?3:-1)}}function Nn(t,r){if(t&1){let e=k();o(0,"button",23),f("click",function(){u(e);let n=c(2);return C(n.detailUi_DS.handleStopExecution())}),d(1),s()}if(t&2){let e=c(2);b("disabled",e.detailUi_DS.isStopping_$()),a(),D(" ",e.detailUi_DS.isStopping_$()?"Stopping\u2026":"Stop"," ")}}function Hn(t,r){if(t&1){let e=k();he(0),o(1,"div",9)(2,"button",19),f("click",function(){u(e);let n=c();return C(n.detailUi_DS.handleToggleTimeline())}),d(3," Timeline "),s(),o(4,"button",20),f("click",function(){u(e);let n=c();return C(n.handleForkSession())}),d(5),s(),S(6,"span",21),g(7,Nn,2,2,"button",22),s()}if(t&2){let e=c(),n=ye(1).detail;a(2),V(e.detailUi_DS.isTimelinePanelOpen_$()?"border-neonCyan/50 text-neonCyan bg-neonCyan/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600"),a(2),b("disabled",e.detailUi_DS.isForking_$()||!n.session.claudeSessionId)("title",e.detailUi_DS.isForking_$()?"Fork in progress\u2026":n.session.claudeSessionId?"Fork conversation into new session":"Cannot fork: no conversation yet"),a(),D(" ",e.detailUi_DS.isForking_$()?"Forking\u2026":"Fork"," "),a(2),_(n.session.status==="running"?7:-1)}}var Ht=(()=>{class t{router=$(se);peiContext_DS=$(ae);ccSession_DS=$(W);detailUi_DS=$(K);sidebarWidth_$=v(320);isSidebarOpen_$=v(!0);isResizing_$=v(!1);ccTopBarContext_$=A(()=>{let e=this.ccSession_DS.activeSessionId_$();if(!e)return null;let i=this.ccSession_DS.selectedSessionLoading_$(),n=this.ccSession_DS.selectedSession_$(),p=this.ccSession_DS.sessions_$().find(I=>I.sessionId===e),m=n?.session.sessionId===e;return{title:(m?n.session.label||n.session.sessionId:null)??(p?p.label||p.sessionId:e),detail:m?n:null,showActions:m&&!i,isLoading:i}});ngOnInit(){let e=y.loadPanelWidth("sidebar",320);this.sidebarWidth_$.set(Math.max(200,Math.min(600,e))),this.isSidebarOpen_$.set(y.loadPanelOpen("sidebar",!0))}handleSidebarResizeStart(e){let i=e.clientX,n=this.sidebarWidth_$();this.isResizing_$.set(!0),ge.attachUntilPointerUp({startEvent:e,onMove:l=>{let p=l.clientX-i,m=Math.max(200,Math.min(600,n+p));this.sidebarWidth_$.set(m)},onEnd:()=>{this.isResizing_$.set(!1),y.savePanelWidth("sidebar",this.sidebarWidth_$())}})}handleToggleSidebar(){this.isSidebarOpen_$.update(e=>!e),y.savePanelOpen("sidebar",this.isSidebarOpen_$())}handleSessionSelectedFromDashboard(){window.innerWidth<640&&this.isSidebarOpen_$.set(!1)}handleForkSession(){return R(this,null,function*(){let e=yield this.detailUi_DS.handleFork();if(e){let i=this.peiContext_DS.activeCcapId_$(),n=i?["/cc-session",i,e]:["/cc-session",e];yield this.router.navigate(n)}})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-shell"]],hostAttrs:[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],decls:19,vars:14,consts:[[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],["sSessionToolbarLeft","",1,"flex","items-center","gap-1","min-w-0"],[1,"px-2","py-1","text-xs","border","border-neonDefault","text-neutral-300","hover:bg-neutral-700","rounded","transition-colors","flex","items-center","gap-1","shrink-0",3,"click"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3","h-3","shrink-0","transition-transform","duration-150"],["points","6 9 12 15 18 9"],[1,"w-px","h-4","bg-neutral-700","shrink-0","self-center","mx-0.5"],["type","button",1,"px-2","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"class"],["sSessionToolbarCenter","",1,"flex","flex-wrap","items-center","justify-center","gap-2","min-w-0","max-w-[min(100vw-10rem,48rem)]"],["sSessionToolbarRight","",1,"flex","items-center","gap-1","min-w-0","flex-wrap","justify-end"],[1,"flex","gap-1","shrink-0","items-center","flex-wrap","justify-end"],[3,"sidebarResizeStart","isSidebarOpen","sidebarWidthPx","isResizing"],["sSessionShellSidebar","",1,"flex","flex-col","overflow-hidden","h-full"],[3,"sessionSelected"],["sSessionShellMain","",1,"flex","min-h-0","flex-1","flex-col","overflow-hidden","[&>router-outlet]:contents"],["type","button",1,"px-2","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"click"],[1,"text-sm","font-semibold","text-neutral-200","truncate","text-center","min-w-0","max-w-[min(240px,35vw)]",3,"title"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"w-2","h-2","rounded-full","shrink-0",3,"ngClass","title"],["title","Live",1,"w-2","h-2","rounded-full","bg-green-500","animate-pulse","shrink-0"],[1,"px-2","py-1","text-xs","border","rounded","transition-colors",3,"click"],[1,"px-2","py-1","text-xs","border","border-neutral-700","text-neutral-500","hover:text-neutral-300","hover:border-neutral-600","disabled:opacity-40","rounded","transition-colors",3,"click","disabled","title"],[1,"w-px","bg-neutral-700","mx-0.5","self-stretch","min-h-[1.25rem]"],[1,"px-2","py-1","text-xs","border","border-neonRed/50","text-red-300","hover:bg-red-950/40","disabled:opacity-40","rounded","transition-colors",3,"disabled"],[1,"px-2","py-1","text-xs","border","border-neonRed/50","text-red-300","hover:bg-red-950/40","disabled:opacity-40","rounded","transition-colors",3,"click","disabled"]],template:function(i,n){if(i&1){let l=k();o(0,"div",0),he(1),o(2,"app-s-session-shell-toolbar")(3,"div",1)(4,"button",2),f("click",function(){return u(l),C(n.handleToggleSidebar())}),M(),o(5,"svg",3),S(6,"polyline",4),s(),d(7," Sessions "),s(),g(8,Fn,1,0,"div",5)(9,Un,2,2,"button",6),s(),L(),o(10,"div",7),g(11,Wn,4,4),s(),o(12,"div",8),g(13,Hn,8,6,"div",9),s()(),o(14,"app-s-resizable-session-shell-layout",10),f("sidebarResizeStart",function(m){return u(l),C(n.handleSidebarResizeStart(m))}),o(15,"div",11)(16,"app-ccap-cc-dashboard",12),f("sessionSelected",function(){return u(l),C(n.handleSessionSelectedFromDashboard())}),s()(),o(17,"div",13),S(18,"router-outlet"),s()()()}if(i&2){me("select-none",n.isResizing_$()),a();let l=nt(n.ccTopBarContext_$());a(4),me("rotate-90",n.isSidebarOpen_$())("-rotate-90",!n.isSidebarOpen_$()),a(3),_(l?8:-1),a(),_(l&&l.showActions&&l.detail?9:-1),a(2),_(l?11:-1),a(2),_(l&&l.showActions&&l.detail?13:-1),a(),b("isSidebarOpen",n.isSidebarOpen_$())("sidebarWidthPx",n.sidebarWidth_$())("isResizing",n.isResizing_$())}},dependencies:[X,pt,kt,It,jt,Ue],encapsulation:2})}return t})();var te=Ge(dt());var Se=function(t){return t.normal="normal",t.plan="plan",t}(Se||{});var pe=function(t){return t.sonnet="sonnet",t.opus="opus",t.haiku="haiku",t}(pe||{});var be=class t{static fromDisplayItem(r){let e=t.mapMessageTypeToKind(r.messageType),i=r.pairedResult?{text:r.pairedResult.text,expandableContent:r.pairedResult.expandableContent,rawData:r.pairedResult.rawData,isError:r.pairedResult.isError}:void 0,n=r.messageType==="tool"&&r.toolName==="Edit"&&!!r.expandableContent;return{listKey:r.listKey,kind:e,bodyText:r.text,toolName:r.toolName,expandableContent:r.expandableContent,pairedResult:i,rawData:r.rawData,subtype:r.subtype,isUserAligned:r.messageType==="prompt",flags:{showCopy:!0,showRawInfo:!0,useEditDiffForExpandable:n}}}static mapMessageTypeToKind(r){switch(r){case"prompt":return U.userPrompt;case"assistant":return U.assistant;case"tool":return U.tool;case"tool-result":return U.toolResult;case"error":return U.error;case"info":return U.info;case"status":return U.status;case"result":return U.result;case"run-intent":return U.runIntent;case"iteration":return U.iteration;case"thinking":return U.thinking;case"status-update":return U.statusUpdate;case"raw":return U.raw;case"tool-group":return U.toolGroup;case"sub-agent-group":return U.subAgentGroup;default:return U.info}}};var je=(()=>{class t{sanitizer;constructor(e){this.sanitizer=e}transform(e){if(!e)return this.sanitizer.bypassSecurityTrustHtml('<span class="text-neutral-500">{}</span>');try{let i=JSON.stringify(e,null,2),n=this.highlightJson(i);return this.sanitizer.bypassSecurityTrustHtml(n)}catch{return this.sanitizer.bypassSecurityTrustHtml('<span class="text-neutral-500">{}</span>')}}MULTILINE_THRESHOLD=150;highlightJson(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/("(\\u[\da-fA-F]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+-]?\d+)?)/g,n=>/^"/.test(n)?/:$/.test(n)?`<span style="color:#7dd3fc">${n}</span>`:n.length>this.MULTILINE_THRESHOLD&&n.includes("\\n")?this.formatMultilineString(n):`<span style="color:#86efac">${n}</span>`:/true|false/.test(n)?`<span style="color:#fbbf24">${n}</span>`:/null/.test(n)?`<span style="color:#a78bfa">${n}</span>`:`<span style="color:#fb923c">${n}</span>`)}formatMultilineString(e){return'<span style="color:#86efac">"</span><span style="display:block;margin:2px 0;padding:4px 8px;border-left:2px solid rgba(134,239,172,0.25);background:rgba(134,239,172,0.04);border-radius:0 4px 4px 0;color:#86efac;opacity:0.85;white-space:pre-wrap;word-break:break-word;font-size:0.9em;line-height:1.5">'+e.slice(1,-1).replace(/\\n/g,`
|
|
3
3
|
`).replace(/\\t/g," ").replace(/\\r/g,"").replace(/\\"/g,'"').replace(/\\\\/g,"\\")+'</span><span style="color:#86efac">"</span>'}static \u0275fac=function(i){return new(i||t)(et(Ie,16))};static \u0275pipe=ie({name:"ccSessionJsonFormat",type:t,pure:!0})}return t})();var qn=["chatScroll"],Kn=["sessionInput"],Qn=(t,r)=>r.promptListKey,Qe=(t,r)=>r.listKey,Gn=(t,r)=>r.trackKey,Kt=t=>({$implicit:t});function Jn(t,r){if(t&1){let e=k();o(0,"div",14),f("click",function(){u(e);let n=c();return C(n.handleStickyPromptClick())}),o(1,"div",15)(2,"span",16),d(3,"YOU"),s(),o(4,"span",17),d(5),s(),M(),o(6,"svg",18),S(7,"path",19),s()()()}if(t&2){let e=c();a(5),T(e.lastPromptText_$())}}function Xn(t,r){if(t&1){let e=k();o(0,"button",34),f("click",function(){u(e);let n=c(3).$implicit,l=c();return C(l.handleOpenInfoPopup(n))}),o(1,"span",35),d(2,"i"),s()()}}function Yn(t,r){if(t&1){let e=k();o(0,"app-s-agent-tool-plan-view",36),f("accepted",function(){u(e);let n=c(4);return C(n.handlePlanAccepted())}),s()}if(t&2){let e=c(3).$implicit;b("rawData",e.rawData)}}function Zn(t,r){if(t&1&&S(0,"app-s-agent-tool-todo-list",33),t&2){let e=c(3).$implicit;b("rawData",e.rawData)}}function ei(t,r){if(t&1&&(o(0,"div",29),S(1,"span",30),F(2,"sAgentToolIcon"),o(3,"span",31),d(4),s(),g(5,Xn,3,0,"button",32),s(),g(6,Yn,1,1,"app-s-agent-tool-plan-view",33)(7,Zn,1,1,"app-s-agent-tool-todo-list",33)),t&2){let e,i=c(2).$implicit;a(),b("innerHTML",j(2,4,(e=i.toolName)!==null&&e!==void 0?e:""),G),a(3),T(i.toolName==="ExitPlanMode"?"Plan":i.toolName),a(),_(i.rawData?5:-1),a(),_(i.toolName==="ExitPlanMode"?6:7)}}function ti(t,r){if(t&1){let e=k();o(0,"app-s-agent-tool-call-card",37),f("toolRawInfoClick",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenInfoPopup(n))})("pairedRawInfoClick",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenPairedResultInfo(n))}),s()}if(t&2){let e,i,n,l,p=c(2).$implicit;b("toolName",(e=p.toolName)!==null&&e!==void 0?e:"")("summaryText",p.text)("toolDescription",(i=p.toolDescription)!==null&&i!==void 0?i:"")("isPathRtl",p.toolName==="Read")("showToolRawInfo",!!p.rawData||!!(p.pairedResult!=null&&p.pairedResult.rawData))("expandableContent",(n=p.expandableContent)!==null&&n!==void 0?n:"")("pairedResult",(l=p.pairedResult)!==null&&l!==void 0?l:null)}}function ni(t,r){if(t&1&&(o(0,"div",20)(1,"div",27),g(2,ei,8,6)(3,ti,1,7,"app-s-agent-tool-call-card",28),s()()),t&2){let e=c().$implicit;a(2),_(e.toolName==="TodoWrite"||e.toolName==="ExitPlanMode"?2:3)}}function ii(t,r){if(t&1){let e=k();o(0,"app-s-agent-tool-call-card",45),f("toolRawInfoClick",function(){u(e);let n=c().$implicit,l=c(3);return C(l.handleOpenInfoPopup(n))})("pairedRawInfoClick",function(){u(e);let n=c().$implicit,l=c(3);return C(l.handleOpenPairedResultInfo(n))}),s()}if(t&2){let e,i,n,l,p=c().$implicit;b("toolName",(e=p.toolName)!==null&&e!==void 0?e:"")("summaryText",p.text)("toolDescription",(i=p.toolDescription)!==null&&i!==void 0?i:"")("isPathRtl",p.toolName==="Read")("showToolRawInfo",!!p.rawData||!!(p.pairedResult!=null&&p.pairedResult.rawData))("expandableContent",(n=p.expandableContent)!==null&&n!==void 0?n:"")("pairedResult",(l=p.pairedResult)!==null&&l!==void 0?l:null)}}function oi(t,r){if(t&1&&(o(0,"div",44)(1,"span",46),d(2),s()()),t&2){let e=c().$implicit;a(2),T(e.text)}}function si(t,r){if(t&1&&g(0,ii,1,7,"app-s-agent-tool-call-card",43)(1,oi,3,1,"div",44),t&2){let e=r.$implicit;_(e.messageType==="tool"?0:-1),a(),_(e.messageType==="tool-result"?1:-1)}}function ai(t,r){if(t&1&&(o(0,"div",20)(1,"details",38)(2,"summary",39),S(3,"span",30),F(4,"sAgentToolIcon"),o(5,"span",31),d(6),s(),M(),o(7,"svg",40),S(8,"path",41),s()(),L(),o(9,"div",42),N(10,si,2,2,null,null,Qe),s()()()),t&2){let e=c().$implicit;a(3),b("innerHTML",j(4,2,e.groupToolName),G),a(3),T(e.text),a(4),H(e.groupItems)}}function ri(t,r){t&1&&(o(0,"span",58),S(1,"span",63),o(2,"span",64),d(3,"running"),s()())}function li(t,r){if(t&1){let e=k();o(0,"button",65),f("click",function(n){u(e);let l=c(2).$implicit;return c().handleOpenInfoPopup(l.groupItems[0]),C(n.stopPropagation())}),o(1,"span",66),d(2,"i"),s()()}}function di(t,r){if(t&1){let e=k();o(0,"details",67),f("click",function(n){return u(e),C(n.stopPropagation())}),o(1,"summary",68),M(),o(2,"svg",69),S(3,"path",41),s(),L(),o(4,"span",70),d(5),s()(),o(6,"div",71)(7,"pre",72),d(8),s()()()}if(t&2){let e=c(2).$implicit;a(5),T(e.groupItems[0].pairedResult.text),a(3),T(e.groupItems[0].pairedResult.expandableContent||e.groupItems[0].pairedResult.text)}}function ci(t,r){if(t&1&&Ne(0,73),t&2){let e=c().$implicit;c(3);let i=xe(2);b("ngTemplateOutlet",i)("ngTemplateOutletContext",He(2,Kt,e))}}function pi(t,r){if(t&1&&g(0,ci,1,4,"ng-container",73),t&2){let e=r.$index;_(e>0?0:-1)}}function _i(t,r){if(t&1&&(o(0,"div",21)(1,"details",47)(2,"summary",48),M(),o(3,"svg",49),S(4,"rect",50)(5,"circle",51)(6,"circle",52)(7,"path",53)(8,"path",54),s(),L(),o(9,"span",55),d(10,"Sub-agent"),s(),o(11,"span",56),d(12),s(),o(13,"span",57),d(14),s(),g(15,ri,4,0,"span",58)(16,li,3,0,"button",59),M(),o(17,"svg",60),S(18,"path",41),s()(),g(19,di,9,2,"details",61),L(),o(20,"div",62),N(21,pi,1,1,null,null,Qe),s()()()),t&2){let e,i=c().$implicit;a(12),T(i.text),a(2),T(((e=i.groupItems==null?null:i.groupItems.length)!==null&&e!==void 0?e:0)>1?i.groupItems.length-1:0),a(),_(!(i.groupItems==null||i.groupItems[0]==null)&&i.groupItems[0].pairedResult?-1:15),a(),_(!(i.groupItems==null||i.groupItems[0]==null)&&i.groupItems[0].rawData?16:-1),a(3),_(!(i.groupItems==null||i.groupItems[0]==null)&&i.groupItems[0].pairedResult?19:-1),a(2),H(i.groupItems)}}function mi(t,r){if(t&1){let e=k();o(0,"button",78),f("click",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenInfoPopup(n))}),o(1,"span",79),d(2,"i"),s()()}}function ui(t,r){if(t&1&&(o(0,"div",22)(1,"div",74),S(2,"span",75),o(3,"span",76),d(4),s(),g(5,mi,3,0,"button",77),s()()),t&2){let e=c().$implicit;a(4),T(e.text),a(),_(e.rawData?5:-1)}}function Ci(t,r){t&1&&(o(0,"span",83),d(1,"Run intent: "),s())}function fi(t,r){if(t&1&&(o(0,"div",23)(1,"div",80),S(2,"span",81),o(3,"span",82),g(4,Ci,2,0,"span",83),d(5),s()()()),t&2){let e=c().$implicit;a(4),_(e.isLatestMessage?-1:4),a(),D(" ",e.text," ")}}function xi(t,r){if(t&1&&(o(0,"div",20)(1,"div",84),S(2,"span",85),o(3,"span",86),d(4),s()()()),t&2){let e=c().$implicit;a(4),T(e.text)}}function hi(t,r){if(t&1){let e=k();o(0,"button",98),f("click",function(n){u(e);let l=c(2).$implicit;return c().handleOpenInfoPopup(l),C(n.stopPropagation())}),o(1,"span",99),d(2,"i"),s()()}}function gi(t,r){if(t&1&&(o(0,"div",24)(1,"details",87)(2,"summary",88),M(),o(3,"svg",89),S(4,"circle",90)(5,"path",91)(6,"circle",92),s(),L(),o(7,"span",93),d(8,"Thinking"),s(),o(9,"span",94),d(10),s(),g(11,hi,3,0,"button",95),s(),o(12,"div",96)(13,"pre",97),d(14),s()()()()),t&2){let e=c().$implicit;a(10),T(e.text),a(),_(e.rawData?11:-1),a(3),T(e.text)}}function Si(t,r){if(t&1){let e=k();o(0,"button",104),f("click",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenInfoPopup(n))}),o(1,"span",105),d(2,"i"),s()()}}function bi(t,r){if(t&1&&(o(0,"div",25)(1,"div",100),S(2,"span",101),o(3,"span",102),d(4),s(),g(5,Si,3,0,"button",103),s()()),t&2){let e=c().$implicit;a(4),T(e.text),a(),_(e.rawData?5:-1)}}function vi(t,r){if(t&1&&(o(0,"span",110),d(1),s()),t&2){let e=c(2).$implicit;a(),T(e.subtype)}}function wi(t,r){if(t&1){let e=k();o(0,"button",112),f("click",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenInfoPopup(n))}),o(1,"span",113),d(2,"i"),s()()}}function yi(t,r){if(t&1&&(o(0,"div",26)(1,"div",106),M(),o(2,"svg",107),S(3,"path",108),s(),L(),o(4,"span",109),d(5),s(),g(6,vi,2,1,"span",110)(7,wi,3,0,"button",111),s()()),t&2){let e=c().$implicit;a(5),T(e.text),a(),_(e.subtype?6:-1),a(),_(e.rawData?7:-1)}}function Ti(t,r){if(t&1){let e=k();o(0,"button",121),f("click",function(){u(e);let n=c(2).$implicit,l=c();return C(l.handleOpenInfoPopup(n))}),o(1,"span",122),d(2,"i"),s()()}}function ki(t,r){if(t&1&&(S(0,"pre",120),F(1,"ccSessionJsonFormat")),t&2){let e=c(2).$implicit;b("innerHTML",j(1,1,e.rawData),G)}}function Ii(t,r){if(t&1&&(o(0,"div",24)(1,"div",114)(2,"div",115),S(3,"span",116),o(4,"span",117),d(5),s(),o(6,"span",118),d(7,"needs brief"),s(),g(8,Ti,3,0,"button",119),s(),g(9,ki,2,3,"pre",120),s()()),t&2){let e=c().$implicit;a(5),T(e.text),a(3),_(e.rawData?8:-1),a(),_(e.rawData?9:-1)}}function $i(t,r){if(t&1&&g(0,ni,4,1,"div",20)(1,ai,12,4,"div",20)(2,_i,23,5,"div",21)(3,ui,6,2,"div",22)(4,fi,6,2,"div",23)(5,xi,5,1,"div",20)(6,gi,15,3,"div",24)(7,bi,6,2,"div",25)(8,yi,8,3,"div",26)(9,Ii,10,3,"div",24),t&2){let e,i=r.$implicit;_((e=i.messageType)==="tool"?0:e==="tool-group"?1:e==="sub-agent-group"?2:e==="result"?3:e==="run-intent"?4:e==="iteration"?5:e==="thinking"?6:e==="status"?7:e==="status-update"?8:e==="raw"?9:-1)}}function Di(t,r){t&1&&(o(0,"div",6)(1,"div",123),M(),o(2,"svg",124),S(3,"path",108),s(),L(),o(4,"span",125),d(5,"Loading older messages..."),s()()())}function Ei(t,r){if(t&1){let e=k();o(0,"div",126)(1,"div",128)(2,"app-s-agent-console-message-bubble",129),f("ttsCached",function(n){u(e);let l=c(2);return C(l.handleTtsCached(n))}),s()()()}if(t&2){let e=c().$implicit;_e("data-prompt-key",e.promptListKey)("data-prompt-text",e.promptText),a(2),b("view",e.promptBubbleView)}}function Mi(t,r){if(t&1){let e=k();o(0,"div",136)(1,"div",137)(2,"app-s-agent-console-message-bubble",129),f("ttsCached",function(n){u(e);let l=c(4);return C(l.handleTtsCached(n))}),s()()()}if(t&2){let e=c().$implicit;me("justify-end",e.messageType==="prompt"),a(),V(e.messageType==="prompt"?"w-[85%]":e.messageType==="tool"||e.messageType==="tool-result"?"w-[90%] ml-4":"w-[90%]"),a(),b("view",e.bubbleView)}}function Pi(t,r){if(t&1&&Ne(0,73),t&2){let e=c().$implicit;c(3);let i=xe(2);b("ngTemplateOutlet",i)("ngTemplateOutletContext",He(2,Kt,e))}}function Ai(t,r){if(t&1&&g(0,Mi,3,5,"div",135)(1,Pi,1,4,"ng-container",73),t&2){let e=r.$implicit;_(e.bubbleView?0:1)}}function Oi(t,r){if(t&1&&(o(0,"details",127)(1,"summary",130),M(),o(2,"svg",131),S(3,"path",41),s(),L(),o(4,"span",132),d(5),s(),S(6,"div",133),s(),o(7,"div",134),N(8,Ai,2,1,null,null,Qe),s()()),t&2){let e=c().$implicit;a(5),D("",e.items.length," events"),a(3),H(e.items)}}function Ri(t,r){if(t&1&&g(0,Ei,3,3,"div",126)(1,Oi,10,1,"details",127),t&2){let e=r.$implicit;_(e.promptBubbleView?0:-1),a(),_(e.items.length?1:-1)}}function Vi(t,r){t&1&&(o(0,"div",138)(1,"div",140),S(2,"div",141),s(),o(3,"div",142),S(4,"div",143),s(),o(5,"div",140),S(6,"div",144),s(),o(7,"div",145),M(),o(8,"svg",146),S(9,"path",108),s(),L(),o(10,"span",147),d(11,"Loading chat history\u2026"),s()()())}function Li(t,r){t&1&&(o(0,"div",139)(1,"span",148),d(2,"\u{1F4AC}"),s(),o(3,"span",149),d(4,"Send a prompt to start the conversation"),s()())}function Fi(t,r){if(t&1&&g(0,Vi,12,0,"div",138)(1,Li,5,0,"div",139),t&2){let e=c();_(e.ccSession_DS.assembledMessagesLoaded_$()?1:0)}}function Ui(t,r){t&1&&(M(),o(0,"svg",153),S(1,"path",154),s(),L(),o(2,"span"),d(3,"Copied!"),s())}function ji(t,r){t&1&&(M(),o(0,"svg",155),S(1,"path",156),s(),L(),o(2,"span"),d(3,"Copy last 30 events"),s())}function zi(t,r){t&1&&(M(),o(0,"svg",153),S(1,"path",154),s(),L(),o(2,"span"),d(3,"Copied!"),s())}function Bi(t,r){t&1&&(M(),o(0,"svg",155),S(1,"rect",157)(2,"path",158),s(),L(),o(3,"span"),d(4,"Copy JSON"),s())}function Wi(t,r){if(t&1&&(o(0,"section")(1,"div",159),d(2,"Primary (message / tool call)"),s(),o(3,"pre",160),d(4),s()()),t&2){let e=c();a(4),T(e.primaryJson)}}function Ni(t,r){if(t&1&&(o(0,"div",161)(1,"div",162),d(2),s(),o(3,"pre",160),d(4),s()()),t&2){let e=r.$implicit,i=c(2);a(2),J(" Part ",e.index+1," / ",i.streamParts.length," "),a(2),T(e.json)}}function Hi(t,r){if(t&1&&(o(0,"section")(1,"div",159),d(2,"Stream mirror payloads (each chunk)"),s(),N(3,Ni,5,3,"div",161,Gn),s()),t&2){let e=c();a(3),H(e.streamParts)}}function qi(t,r){if(t&1&&(o(0,"section")(1,"div",159),d(2,"Paired tool result"),s(),o(3,"pre",160),d(4),s()()),t&2){let e=c();a(4),T(e.pairedJson)}}function Ki(t,r){if(t&1){let e=k();o(0,"div",150)(1,"button",151),f("click",function(){u(e);let n=c();return C(n.handleCopyLast30Events())}),g(2,Ui,4,0)(3,ji,4,0),s(),o(4,"button",151),f("click",function(){u(e);let n=c();return C(n.handleCopyInfoPopup())}),g(5,zi,4,0)(6,Bi,5,0),s()(),o(7,"div",152),g(8,Wi,5,1,"section")(9,Hi,5,0,"section")(10,qi,5,1,"section"),s()}if(t&2){let e=r,i=c();a(),V(i.isLast30Copied_$()?"bg-green-500/15 border border-green-500/30 text-green-300":"bg-neutral-800 border border-neutral-700 text-neutral-400 hover:text-neutral-200 hover:border-neutral-600"),a(),_(i.isLast30Copied_$()?2:3),a(2),V(i.isInfoCopied_$()?"bg-green-500/15 border border-green-500/30 text-green-300":"bg-neutral-800 border border-neutral-700 text-neutral-400 hover:text-neutral-200 hover:border-neutral-600"),a(),_(i.isInfoCopied_$()?5:6),a(3),_(e.primaryJson?8:-1),a(),_(e.showStreamBreakdown?9:-1),a(),_(e.pairedJson?10:-1)}}var Qt=(()=>{class t{sessionId=Q("");ccSession_DS=$(W);detailUi_DS=$(K);sessionQueue_DS=$(Rt);voiceInputUi_DS=$(vt);ttsCachedKeys_$=v(new Set);handleTtsCached(e){this.ttsCachedKeys_$.update(i=>new Set([...i,e]))}promptInput_$=v("");isAutoScroll_$=v(!0);isSending_$=v(!1);isExecuting_$=A(()=>this.ccSession_DS.selectedSession_$()?.session?.status==="running");selectedMode_$=v(y.loadSessionMode()||Se.normal);selectedEffort_$=v(y.loadSessionEffort()||re.high);selectedModel_$=v(y.loadSessionModel()||pe.sonnet);modeOptions=[Se.normal,Se.plan];effortOptions=[re.none,re.low,re.mid,re.high];modelOptions=[pe.sonnet,pe.opus,pe.haiku];modelName_$=A(()=>{let e=this.ccSession_DS.selectedSession_$();return e?.session?.activeModel||e?.session?.model||""});usage_$=A(()=>this.ccSession_DS.sessionUsage_$());usageText_$=A(()=>{let e=this.usage_$();if(!e.totalTokens)return"";let i=e.totalTokens>1e3?`${(e.totalTokens/1e3).toFixed(1)}k`:String(e.totalTokens),n=e.costUsd>0?` \xB7 $${e.costUsd.toFixed(4)}`:"";return`${i} tokens${n}`});chatTurns_$=A(()=>{let e=this.ccSession_DS.assembledMessages_$();if(e.length>0)return this.buildTurnsFromAssembledMessages(e);if(!this.ccSession_DS.assembledMessagesLoaded_$())return[];let i=this.ccSession_DS.consoleMessages_$(),n=this.isShowSessionStatus(),l=this.isShowAgentUpdates(),p=this.sessionId(),m=this.ttsCachedKeys_$(),w=[],x=null;for(let h of i)if(!(h.type==="status-update"&&!l))if(h.type==="prompt")x={promptText:h.text,promptListKey:h.listKey,promptBubbleView:{listKey:h.listKey,kind:U.userPrompt,bodyText:h.text,timestampIso:h.timestamp,isUserAligned:!0,flags:{showCopy:!0,showRawInfo:!1,useEditDiffForExpandable:!1},tts:h.text.trim().length>0?{messageKey:h.listKey,sessionId:p,role:"user",content:h.text,timestampIso:h.timestamp,hasTtsAudio:m.has(h.listKey)}:void 0,imageDataUrls:h.imageDataUrls},items:[]},w.push(x);else{x||(x={promptText:"",promptListKey:`__no-prompt-${w.length}`,items:[]},w.push(x));let I={listKey:h.listKey,messageType:h.type,text:h.text,isStatus:h.isStatus,expandableContent:h.expandableContent,isLatestMessage:!1,rawData:h.rawData,timestamp:h.timestamp,subtype:h.subtype,parentAgentId:h.parentAgentId};h.type==="tool"&&(I.toolName=this.extractToolNameFromMsg(h),I.toolDescription=this.extractToolDescription(h.rawData)),x.items.push(I)}if(w.length){let h=w[w.length-1];h.items.length&&(h.items[h.items.length-1].isLatestMessage=!0)}if(!n)for(let h of w){let I=-1;for(let E=h.items.length-1;E>=0;E--)if(h.items[E].isStatus){I=E;break}I>=0&&(h.items=h.items.filter((E,B)=>!E.isStatus||B===I))}for(let h of w)h.items=this.pairToolCallsWithResults(h.items);for(let h of w)h.items=this.groupSubAgentItems(h.items);for(let h of w)h.items=this.groupConsecutiveToolItems(h.items);for(let h of w)h.items=h.items.map(I=>{if(!(I.messageType==="assistant"||I.messageType==="error"||I.messageType==="tool-result"||I.messageType==="info"))return I;let B=be.fromDisplayItem(I);return I.messageType==="assistant"&&I.text.trim().length>0&&(B.tts={messageKey:I.listKey,sessionId:p,role:"assistant",content:I.text,timestampIso:I.timestamp??new Date().toISOString(),hasTtsAudio:m.has(I.listKey)}),We(Be({},I),{bubbleView:B})});return w});stickyPromptInfo_$=v(null);lastPromptText_$=A(()=>this.stickyPromptInfo_$()?.promptText??"");isShowSessionStatus=Q(!1);isShowAgentUpdates=Q(!0);isShowStickyPrompt_$=v(!1);isInfoPopupOpen_$=v(!1);infoPopupBundle_$=v(null);infoPopupTitle_$=v("");isInfoCopied_$=v(!1);isLast30Copied_$=v(!1);chatScrollRef;sessionInputRef;pendingAttachments_$=v([]);previousItemCount=0;constructor(){ke(()=>{let e=this.sessionId();if(e){let i=y.loadPromptDraft(e);this.promptInput_$.set(i),this.sessionQueue_DS.subscribeToSession({sessionId:e,baseRoute:"cc-session"})}},{allowSignalWrites:!0})}ngOnDestroy(){this.sessionQueue_DS.unsubscribe()}ngAfterViewChecked(){let e=this.ccSession_DS.assembledMessages_$(),i=this.ccSession_DS.consoleMessages_$(),n=e.length+i.length;this.isAutoScroll_$()&&n>this.previousItemCount&&this.scrollToBottom(),this.previousItemCount=n}handleSendPrompt(){return R(this,null,function*(){let e=this.promptInput_$().trim(),i=this.pendingAttachments_$();if(!e&&!i.length||this.isSending_$())return;let n=this.sessionId();if(n){this.isSending_$.set(!0),y.clearPromptDraft(n);try{yield this.ccSession_DS.sendPrompt({sessionId:n,content:e,attachments:i.length>0?i:void 0}),this.promptInput_$.set(""),this.sessionInputRef?.clearAttachments()}catch{y.savePromptDraft(n,e)}finally{this.isSending_$.set(!1)}}})}handleAttachmentsChanged(e){this.pendingAttachments_$.set(e)}handlePromptInputChange(e){this.promptInput_$.set(e);let i=this.sessionId();i&&y.savePromptDraft(i,e)}handleQuickCastAction(e){return R(this,null,function*(){let i=e.trim(),n=this.sessionId();if(!(!i||!n||this.isSending_$())){this.isSending_$.set(!0);try{yield this.ccSession_DS.sendPrompt({sessionId:n,content:i})}finally{this.isSending_$.set(!1)}}})}handleVoiceSegment(e){let i=e.text.trim();if(!i.length)return;let n=this.promptInput_$().trim(),l=n.length>0?`${n} ${i}`:i;this.handlePromptInputChange(l),this.voiceInputUi_DS.autoSendAfterVoice_$()&&e.isFinal&&this.handleSendPrompt()}handleRestartRunnerClicked(){let e=this.sessionId().trim();e&&this.ccSession_DS.restartRunner({sessionId:e})}handlePlanAccepted(){let e=this.sessionId();e&&this.ccSession_DS.sendPrompt({sessionId:e,content:"plan approved, proceed"}).catch(i=>{te.DyFM_Log.error("[CCAP] cc-console plan-accept send",i)})}handleKeydown(e){e.key==="Enter"&&!e.shiftKey&&(e.preventDefault(),this.handleSendPrompt())}handleSelectMode(e){this.selectedMode_$.set(e),y.saveSessionMode(e);let i=this.sessionId();i&&this.ccSession_DS.updateSessionConfig({sessionId:i,mode:e}).catch(n=>{te.DyFM_Log.error("[CCAP] cc-session-console config-update mode",n)})}handleSelectEffort(e){this.selectedEffort_$.set(e),y.saveSessionEffort(e);let i=this.sessionId();i&&this.ccSession_DS.updateSessionConfig({sessionId:i,reasoningEffort:e}).catch(n=>{te.DyFM_Log.error("[CCAP] cc-session-console config-update effort",n)})}handleSelectModel(e){this.selectedModel_$.set(e),y.saveSessionModel(e);let i=this.sessionId();i&&this.ccSession_DS.updateSessionConfig({sessionId:i,model:e}).catch(n=>{te.DyFM_Log.error("[CCAP] cc-session-console config-update model",n)})}handleChatScroll(){let e=this.chatScrollRef?.nativeElement;if(!e)return;this.updateStickyPrompt(e);let i=e.scrollHeight-e.scrollTop-e.clientHeight<60;this.isAutoScroll_$.set(i),e.scrollTop<40&&this.ccSession_DS.assembledMessagesHasMore_$()&&this.loadOlderMessages(e)}updateStickyPrompt(e){if(!(e.scrollTop>80)){this.isShowStickyPrompt_$.set(!1),this.stickyPromptInfo_$.set(null);return}let l=e.getBoundingClientRect().top+50,p=e.querySelectorAll("[data-prompt-key]"),m=this.isShowStickyPrompt_$(),w=l-8,x=l+24,h=null;for(let I=p.length-1;I>=0;I--){let E=p[I],B=E.getBoundingClientRect(),ne=m?x:w;if(B.bottom<ne){let Z=E.getAttribute("data-prompt-key")??"",ee=E.getAttribute("data-prompt-text")??"";Z&&ee&&(h={promptListKey:Z,promptText:ee});break}}this.stickyPromptInfo_$.set(h),this.isShowStickyPrompt_$.set(!!h)}handleStickyPromptClick(){let e=this.stickyPromptInfo_$();if(!e)return;let i=this.chatScrollRef?.nativeElement;if(!i)return;let n=i.querySelector(`[data-prompt-key="${e.promptListKey}"]`);if(!n)return;let l=i.getBoundingClientRect(),p=n.getBoundingClientRect(),m=58;i.scrollTop+=p.top-l.top-m}loadOlderMessages(e){return R(this,null,function*(){let i=this.sessionId();if(!i)return;let n=e.scrollHeight;yield this.ccSession_DS.loadOlderAssembledMessages({sessionId:i}),requestAnimationFrame(()=>{let l=e.scrollHeight;e.scrollTop=l-n,requestAnimationFrame(()=>{this.updateStickyPrompt(e)})})})}handleOpenInfoPopup(e){Ke.ccItemHasAnyRaw(e)&&(this.infoPopupTitle_$.set(e.messageType),this.infoPopupBundle_$.set(Ke.buildForCcConsoleItem(e)),this.isInfoPopupOpen_$.set(!0))}handleOpenPairedResultInfo(e){this.handleOpenInfoPopup(e)}handleCloseInfoPopup(){this.isInfoPopupOpen_$.set(!1),this.infoPopupBundle_$.set(null),this.isInfoCopied_$.set(!1),this.isLast30Copied_$.set(!1)}handleCopyInfoPopup(){let e=this.infoPopupBundle_$();e&&navigator.clipboard.writeText(e.copyJsonString).then(()=>{this.isInfoCopied_$.set(!0),setTimeout(()=>{this.isInfoCopied_$.set(!1)},2e3)}).catch(i=>{te.DyFM_Log.error("[CCAP] cc-session-console clipboard-copy",i)})}handleCopyLast30Events(){let i=this.ccSession_DS.assembledMessages_$().slice(-30),n=JSON.stringify(i,null,2);navigator.clipboard.writeText(n).then(()=>{this.isLast30Copied_$.set(!0),setTimeout(()=>{this.isLast30Copied_$.set(!1)},2e3)}).catch(l=>{te.DyFM_Log.error("[CCAP] cc-session-console clipboard-copy-last30",l)})}pairToolCallsWithResults(e){let i=new Map;for(let l=0;l<e.length;l++){let p=e[l];if(p.messageType==="tool"&&p.rawData){let m=typeof p.rawData.id=="string"?p.rawData.id:"";m&&i.set(m,l)}}if(!i.size)return e;let n=new Set;for(let l=0;l<e.length;l++){let p=e[l];if(p.messageType==="tool-result"&&p.rawData){let m=typeof p.rawData.tool_use_id=="string"?p.rawData.tool_use_id:"",w=m?i.get(m):void 0;w!==void 0&&(e[w].pairedResult={text:p.text,expandableContent:p.expandableContent,rawData:p.rawData},n.add(l))}}return n.size?e.filter((l,p)=>!n.has(p)):e}extractToolNameFromMsg(e){if(e.rawData){let n=e.rawData.name??e.rawData.tool_name??e.rawData.last_tool_name;if(typeof n=="string")return n}let i=e.text.indexOf(":");return i>0?e.text.substring(0,i).trim():e.text.trim()}extractToolDescription(e){if(!e)return;let i=e.input;if(!i||typeof i!="object")return;let n=i.description;return typeof n=="string"?n:void 0}extractToolName(e){if(e.toolName)return e.toolName;if(e.rawData){let n=e.rawData.name??e.rawData.tool_name??e.rawData.last_tool_name;if(typeof n=="string")return n}let i=e.text.indexOf(":");return i>0?e.text.substring(0,i).trim():e.text.trim()}groupSubAgentItems(e){let i=new Map;for(let m=0;m<e.length;m++){let w=e[m];if(w.messageType==="tool"&&w.toolName==="Agent"&&w.rawData){let x=typeof w.rawData.id=="string"?w.rawData.id:"";x&&i.set(x,{item:w,index:m})}}if(!i.size)return e;let n=new Map,l=new Set;for(let m=0;m<e.length;m++){let w=e[m];if(w.parentAgentId&&(l.add(m),i.has(w.parentAgentId))){let x=n.get(w.parentAgentId)??[];x.push(w),n.set(w.parentAgentId,x)}}let p=[];for(let m=0;m<e.length;m++){if(l.has(m))continue;let w=e[m];if(w.messageType==="tool"&&w.toolName==="Agent"&&w.rawData){let x=typeof w.rawData.id=="string"?w.rawData.id:"",h=n.get(x)??[],I=[w,...h],E=w.rawData?.input,B=E&&typeof E=="object"&&typeof E.subagent_type=="string"?E.subagent_type:"",ne=E&&typeof E=="object"&&typeof E.description=="string"?E.description:"",Z=B?`${B}: ${ne||"..."}`:ne||"Sub-agent",ee=this.groupConsecutiveToolItems(I);p.push({listKey:w.listKey,messageType:"sub-agent-group",text:Z,isStatus:!1,isLatestMessage:!1,groupItems:ee,groupToolName:B||"Agent"})}else p.push(w)}return p}buildTurnsFromAssembledMessages(e){let i=this.isShowAgentUpdates(),n=this.isShowSessionStatus(),l=this.sessionId(),p=this.ttsCachedKeys_$(),m=[],w=null;for(let x of e){let h=x.messageRole==="status-update"&&x.subtype==="task_progress"&&!!x.rawData?.last_tool_name;if(!(x.messageRole==="status-update"&&!i&&!h))if(x.messageRole==="user"&&x.isUserAligned===!0)w={promptText:x.bodyText,promptListKey:x.messageKey,promptBubbleView:{listKey:x.messageKey,kind:U.userPrompt,bodyText:x.bodyText,timestampIso:x.timestamp,isUserAligned:!0,rawData:x.rawData,flags:{showCopy:!0,showRawInfo:!!x.rawData,useEditDiffForExpandable:!1},tts:x.bodyText.trim().length>0?{messageKey:x.messageKey,sessionId:l,role:"user",content:x.bodyText,timestampIso:x.timestamp,hasTtsAudio:p.has(x.messageKey)}:void 0},items:[]},m.push(w);else{w||(w={promptText:"",promptListKey:`__no-prompt-${m.length}`,items:[]},m.push(w));let I=x.rawData&&typeof x.rawData.last_tool_name=="string"?x.rawData.last_tool_name:"",E=x.messageRole==="status-update"&&x.subtype==="task_progress"&&!!I,B=E?"tool":x.messageRole,ne=B==="status"||B==="status-update",Z=t.mapAssembledRoleToMessageType(B),ee={listKey:x.messageKey,messageType:Z,text:E?`${I}: ${x.bodyText}`:x.bodyText,isStatus:ne,expandableContent:x.expandableContent,isLatestMessage:!1,rawData:x.rawData,timestamp:x.timestamp,subtype:x.subtype,parentAgentId:x.parentAgentId,toolName:x.toolName||(E?I:void 0),toolDescription:Z==="tool"?this.extractToolDescription(x.rawData):void 0};x.toolResult&&(ee.pairedResult={text:x.toolResult.text,expandableContent:x.toolResult.expandableContent,rawData:x.toolResult.rawData,isError:x.toolResult.isError}),w.items.push(ee)}}if(m.length){let x=m[m.length-1];x.items.length&&(x.items[x.items.length-1].isLatestMessage=!0)}if(!n)for(let x of m){let h=-1;for(let I=x.items.length-1;I>=0;I--)if(x.items[I].isStatus){h=I;break}h>=0&&(x.items=x.items.filter((I,E)=>!I.isStatus||E===h))}for(let x of m)x.items=this.groupSubAgentItems(x.items);for(let x of m)x.items=this.groupConsecutiveToolItems(x.items);for(let x of m)x.items=x.items.map(h=>{if(!(h.messageType==="assistant"||h.messageType==="error"||h.messageType==="tool-result"||h.messageType==="info"))return h;let E=be.fromDisplayItem(h);return h.messageType==="assistant"&&h.text.trim().length>0&&(E.tts={messageKey:h.listKey,sessionId:l,role:"assistant",content:h.text,timestampIso:h.timestamp??new Date().toISOString(),hasTtsAudio:p.has(h.listKey)}),We(Be({},h),{bubbleView:E})});return m}groupConsecutiveToolItems(e){let i=[],n=[],l="",p=()=>{if(!n.length)return;let m=n.filter(w=>w.messageType==="tool").length;m>=2?i.push({listKey:n[0].listKey,messageType:"tool-group",text:`${l} \xD7 ${m}`,isStatus:!1,isLatestMessage:!1,groupItems:n,groupToolName:l}):i.push(...n),n=[],l=""};for(let m of e){if(m.messageType==="tool"){let w=this.extractToolName(m);l&&l!==w&&p(),l=w,n.push(m);continue}if(m.messageType==="tool-result"&&n.length){n.push(m);continue}p(),i.push(m)}return p(),i}static mapAssembledRoleToMessageType(e){switch(e){case"user":return"prompt";case"assistant":return"assistant";case"tool":return"tool";case"tool-result":return"tool-result";case"status":return"status";case"error":return"error";case"info":return"info";case"result":return"result";case"thinking":return"thinking";case"status-update":return"status-update";default:return"info"}}scrollToBottom(){let e=this.chatScrollRef?.nativeElement;e&&(e.scrollTop=e.scrollHeight)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-console"]],viewQuery:function(i,n){if(i&1&&(ue(qn,5),ue(Kn,5)),i&2){let l;Ce(l=fe())&&(n.chatScrollRef=l.first),Ce(l=fe())&&(n.sessionInputRef=l.first)}},hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],inputs:{sessionId:[1,"sessionId"],isShowSessionStatus:[1,"isShowSessionStatus"],isShowAgentUpdates:[1,"isShowAgentUpdates"]},decls:20,vars:28,consts:[["itemRenderer",""],["chatScroll",""],["sessionInput",""],[1,"sticky","top-0","z-10","px-4","py-2","bg-ccapBg/95","backdrop-blur-sm","border-b","border-neonCyan/20","shrink-0","cursor-pointer","hover:bg-ccapBg/80","transition-colors","group/sticky"],[1,"relative","flex-1","flex","flex-col","min-h-0"],[1,"flex-1","overflow-y-auto","min-h-0","px-3","py-3",3,"scroll"],[1,"flex","justify-center","py-3"],[3,"sessionId"],[3,"actionSelected"],[3,"restartRunnerClicked","sessionId","showRestartRunner"],[1,"absolute","bottom-4","right-4","z-30","pointer-events-auto"],[3,"transcriptSegmentReady","compactLayout"],["placeholder","Type a message... (Enter to send)",3,"draftTextChange","attachmentsChanged","sendRequested","queueRequested","stopRequested","modeChanged","modelChanged","effortChanged","queueEditStart","queueEditTextChange","queueEditSave","queueEditCancel","queueRemoveItem","queueSendNow","queueMoveUp","queueMoveDown","draftText","isExecuting","isSending","isStopping","enableAttachments","modeOptions","selectedMode","modelOptions","selectedModel","effortOptions","selectedEffort","usageText","textareaRows","queueItems","isQueueLocked","editingQueueItemId","editingQueueText"],["maxWidth","4xl","headerBorderClass","border-neonCyan/30",3,"closed","isOpen","title"],[1,"sticky","top-0","z-10","px-4","py-2","bg-ccapBg/95","backdrop-blur-sm","border-b","border-neonCyan/20","shrink-0","cursor-pointer","hover:bg-ccapBg/80","transition-colors","group/sticky",3,"click"],[1,"flex","items-start","gap-2"],[1,"text-[10px]","text-neonCyan/70","font-medium","mt-0.5","shrink-0"],[1,"text-xs","text-neonCyan/90","line-clamp-2","leading-relaxed","group-hover/sticky:text-neonCyan"],["viewBox","0 0 12 12","fill","none","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"w-3","h-3","text-neonCyan/40","shrink-0","mt-0.5","group-hover/sticky:text-neonCyan/70","transition-colors"],["d","M6 9V3M3 5.5L6 3l3 2.5"],[1,"flex","justify-start","mb-1.5"],[1,"mb-2"],[1,"flex","justify-start","mb-2","group/msg"],[1,"flex","justify-start","mb-2"],[1,"flex","justify-start","mb-1.5","group/msg"],[1,"flex","justify-center","mb-1.5"],[1,"flex","justify-center","mb-1","group/msg"],[1,"bg-orange-500/5","border","border-orange-500/15","rounded-lg","max-w-[90%]","overflow-hidden"],["layout","full","density","comfortable",3,"toolName","summaryText","toolDescription","isPathRtl","showToolRawInfo","expandableContent","pairedResult"],[1,"flex","items-center","gap-1.5","px-2.5","py-1","border-b","border-orange-500/10"],[1,"text-orange-400","shrink-0","flex","items-center",3,"innerHTML"],[1,"text-[11px]","text-orange-300/90","font-medium"],[1,"ml-auto","shrink-0","w-4","h-4","rounded-full","bg-orange-500/20","border","border-orange-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-orange-500/40"],[3,"rawData"],[1,"ml-auto","shrink-0","w-4","h-4","rounded-full","bg-orange-500/20","border","border-orange-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-orange-500/40",3,"click"],[1,"text-[8px]","text-orange-300","font-bold","leading-none"],[3,"accepted","rawData"],["layout","full","density","comfortable",3,"toolRawInfoClick","pairedRawInfoClick","toolName","summaryText","toolDescription","isPathRtl","showToolRawInfo","expandableContent","pairedResult"],["open","",1,"bg-orange-500/5","border","border-orange-500/15","rounded-lg","max-w-[90%]","overflow-hidden"],[1,"flex","items-center","gap-1.5","px-2.5","py-1","cursor-pointer","select-none","hover:bg-orange-500/8","transition-colors"],["viewBox","0 0 12 12","fill","none",1,"w-3","h-3","text-orange-400/50","ml-1","transition-transform","[details[open]>&]:rotate-90"],["d","M4.5 2.5l4 3.5-4 3.5","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round"],[1,"px-2","pb-1.5","pt-0.5","space-y-0.5"],["layout","nested","density","compact",3,"toolName","summaryText","toolDescription","isPathRtl","showToolRawInfo","expandableContent","pairedResult"],[1,"pl-5","mb-0.5"],["layout","nested","density","compact",3,"toolRawInfoClick","pairedRawInfoClick","toolName","summaryText","toolDescription","isPathRtl","showToolRawInfo","expandableContent","pairedResult"],[1,"text-[10px]","text-neutral-500","line-clamp-1"],[1,"border","border-indigo-500/20","rounded-lg","overflow-hidden","bg-indigo-500/3"],[1,"flex","items-center","gap-1.5","px-2.5","py-1.5","cursor-pointer","select-none","hover:bg-indigo-500/8","transition-colors","list-none","[&::-webkit-details-marker]:hidden","group/sah"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5","text-indigo-400","shrink-0"],["x","3","y","5","width","10","height","8","rx","2"],["cx","6","cy","9","r","1"],["cx","10","cy","9","r","1"],["d","M8 2v3"],["d","M6 2h4"],[1,"text-[10px]","text-indigo-400/60","font-medium","uppercase","tracking-wider","shrink-0"],[1,"text-[11px]","text-indigo-300/90","font-medium","truncate"],[1,"text-[9px]","text-indigo-400/40","shrink-0"],["title","Sub-agent in progress \u2014 m\xE9g nincs eredm\xE9ny",1,"flex","items-center","gap-1","text-[10px]","text-amber-300/90","shrink-0"],[1,"shrink-0","w-4","h-4","rounded-full","bg-indigo-500/20","border","border-indigo-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-indigo-500/40"],["viewBox","0 0 12 12","fill","none",1,"w-3","h-3","text-indigo-400/40","ml-auto","shrink-0","transition-transform","[[open]>&]:rotate-90"],[1,"border-t","border-indigo-500/10"],[1,"px-2","pb-2","pt-1","space-y-0.5","border-t","border-indigo-500/10"],["aria-hidden","true",1,"inline-block","w-2","h-2","animate-spin","rounded-full","border","border-amber-400/60","border-t-amber-200"],[1,"uppercase","tracking-wider"],[1,"shrink-0","w-4","h-4","rounded-full","bg-indigo-500/20","border","border-indigo-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-indigo-500/40",3,"click"],[1,"text-[8px]","text-indigo-300","font-bold","leading-none"],[1,"border-t","border-indigo-500/10",3,"click"],[1,"flex","items-center","gap-1","px-2.5","py-1","bg-indigo-500/5","cursor-pointer","select-none","hover:bg-indigo-500/8","transition-colors","list-none","[&::-webkit-details-marker]:hidden"],["viewBox","0 0 12 12","fill","none",1,"w-2.5","h-2.5","text-indigo-400/40","shrink-0","transition-transform","[[open]>&]:rotate-90"],[1,"text-[10px]","text-indigo-300/40","truncate","leading-relaxed"],[1,"px-2.5","py-1.5","bg-indigo-500/5","border-t","border-indigo-500/8"],[1,"text-[10px]","text-indigo-200/40","whitespace-pre-wrap","break-words","max-h-[200px]","overflow-y-auto","overflow-x-auto","leading-relaxed"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"inline-flex","items-center","gap-1.5","bg-green-500/8","border","border-green-500/20","rounded-lg","px-2.5","py-1"],[1,"w-1.5","h-1.5","rounded-full","bg-green-400","shrink-0"],[1,"text-[11px]","text-green-300/90","break-words","min-w-0"],[1,"ml-1","w-4","h-4","rounded-full","bg-green-500/20","border","border-green-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-green-500/40"],[1,"ml-1","w-4","h-4","rounded-full","bg-green-500/20","border","border-green-500/30","flex","items-center","justify-center","cursor-pointer","hover:bg-green-500/40",3,"click"],[1,"text-[8px]","text-green-300","font-bold","leading-none"],[1,"inline-flex","items-start","gap-1.5","bg-blue-500/8","border","border-blue-500/20","rounded-lg","px-2.5","py-1.5","max-w-[90%]"],[1,"w-1.5","h-1.5","rounded-full","bg-blue-400","shrink-0","mt-0.5"],[1,"text-[11px]","text-blue-300/90","leading-relaxed","min-w-0","break-words"],[1,"text-blue-400/60","font-medium"],[1,"inline-flex","items-center","gap-1.5","bg-violet-500/8","border","border-violet-500/20","rounded-lg","px-2.5","py-1"],[1,"w-1.5","h-1.5","rounded-full","bg-violet-400","shrink-0"],[1,"text-[11px]","text-violet-300/90","truncate","max-w-[80%]"],[1,"bg-sky-500/5","border","border-sky-500/15","rounded-lg","max-w-[90%]","overflow-hidden"],[1,"flex","items-center","gap-1.5","px-2.5","py-1","cursor-pointer","select-none","hover:bg-sky-500/8","transition-colors"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5","text-sky-400","shrink-0"],["cx","8","cy","8","r","6"],["d","M6 6.5a2 2 0 0 1 3.5 1.5c0 1-1.5 1.5-1.5 1.5"],["cx","8","cy","12","r","0.5","fill","currentColor"],[1,"text-[11px]","text-sky-300/80","font-medium"],[1,"text-[10px]","text-sky-400/40","ml-1","truncate","min-w-0"],[1,"ml-auto","shrink-0","w-3.5","h-3.5","rounded-full","bg-sky-500/15","flex","items-center","justify-center","cursor-pointer","hover:bg-sky-500/30"],[1,"px-2.5","pb-2","pt-1"],[1,"text-[10px]","text-sky-200/60","whitespace-pre-wrap","break-words","max-h-[200px]","overflow-y-auto","overflow-x-auto","leading-relaxed"],[1,"ml-auto","shrink-0","w-3.5","h-3.5","rounded-full","bg-sky-500/15","flex","items-center","justify-center","cursor-pointer","hover:bg-sky-500/30",3,"click"],[1,"text-[7px]","text-sky-300/60","font-bold","leading-none"],[1,"inline-flex","items-center","gap-1.5","bg-neonPurple/8","border","border-neonPurple/20","rounded-full","px-3","py-0.5"],[1,"w-1","h-1","rounded-full","bg-neonPurple","animate-pulse","shrink-0"],[1,"text-[10px]","text-neonPurple/80","truncate"],[1,"shrink-0","w-3.5","h-3.5","rounded-full","bg-neonPurple/15","flex","items-center","justify-center","cursor-pointer","hover:bg-neonPurple/30"],[1,"shrink-0","w-3.5","h-3.5","rounded-full","bg-neonPurple/15","flex","items-center","justify-center","cursor-pointer","hover:bg-neonPurple/30",3,"click"],[1,"text-[7px]","text-neonPurple/60","font-bold","leading-none"],[1,"inline-flex","items-center","gap-1.5","bg-teal-500/6","border","border-teal-500/15","rounded-full","px-3","py-0.5","max-w-[85%]"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2",1,"w-3","h-3","text-teal-400/70","shrink-0","animate-spin"],["d","M8 2a6 6 0 0 1 6 6","stroke-linecap","round"],[1,"text-[10px]","text-teal-300/70","truncate"],[1,"text-[8px]","text-teal-400/40","shrink-0"],[1,"shrink-0","w-3.5","h-3.5","rounded-full","bg-teal-500/15","flex","items-center","justify-center","cursor-pointer","hover:bg-teal-500/30"],[1,"shrink-0","w-3.5","h-3.5","rounded-full","bg-teal-500/15","flex","items-center","justify-center","cursor-pointer","hover:bg-teal-500/30",3,"click"],[1,"text-[7px]","text-teal-300/60","font-bold","leading-none"],[1,"bg-neutral-800/60","border","border-amber-500/15","rounded-lg","px-2.5","py-1.5","max-w-[85%]"],[1,"flex","items-center","gap-1.5","mb-1"],[1,"w-1.5","h-1.5","rounded-full","bg-amber-400","shrink-0"],[1,"text-[10px]","text-neutral-400","font-medium","uppercase","tracking-wider"],[1,"text-[8px]","text-amber-500/60","italic","ml-1"],[1,"ml-auto","w-4","h-4","rounded-full","bg-neutral-700/80","border","border-neutral-600/50","flex","items-center","justify-center","cursor-pointer","hover:bg-neutral-600"],[1,"text-[10px]","text-neutral-500","whitespace-pre-wrap","break-words","max-h-[120px]","overflow-y-auto","overflow-x-auto","leading-relaxed",3,"innerHTML"],[1,"ml-auto","w-4","h-4","rounded-full","bg-neutral-700/80","border","border-neutral-600/50","flex","items-center","justify-center","cursor-pointer","hover:bg-neutral-600",3,"click"],[1,"text-[8px]","text-neutral-300","font-bold","leading-none"],[1,"inline-flex","items-center","gap-2","px-3","py-1.5","rounded-full","bg-neutral-800/60","border","border-neutral-700/50"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2",1,"w-3.5","h-3.5","text-neonCyan/70","animate-spin"],[1,"text-[11px]","text-neutral-400"],[1,"flex","justify-end","mb-3"],["open","",1,"mb-3"],[1,"max-w-[85%]","min-w-0"],[3,"ttsCached","view"],[1,"flex","items-center","gap-1.5","mb-1.5","cursor-pointer","select-none","list-none","[&::-webkit-details-marker]:hidden","group/sum"],["viewBox","0 0 12 12","fill","none",1,"w-3","h-3","text-neutral-600","shrink-0","transition-transform","[[open]>&]:rotate-90"],[1,"text-[10px]","text-neutral-600","group-hover/sum:text-neutral-400","transition-colors"],[1,"flex-1","h-px","bg-neutral-800","ml-1"],[1,"pl-1"],[1,"flex","mb-2","w-full","min-w-0",3,"justify-end"],[1,"flex","mb-2","w-full","min-w-0"],[1,"min-w-0"],["aria-label","Chat history bet\xF6lt\xE9se folyamatban",1,"flex","flex-col","gap-3","px-2","py-4"],[1,"flex","flex-col","items-center","justify-center","h-full","text-neutral-500","gap-2"],[1,"flex","justify-end"],[1,"w-[60%]","max-w-[420px]","h-12","rounded-lg","bg-neutral-800/50","animate-pulse"],[1,"flex","justify-start"],[1,"w-[75%]","max-w-[520px]","h-20","rounded-lg","bg-neutral-800/50","animate-pulse"],[1,"w-[55%]","max-w-[380px]","h-10","rounded-lg","bg-neutral-800/50","animate-pulse"],[1,"flex","items-center","justify-center","gap-2","mt-2"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2",1,"w-3","h-3","text-neonCyan/70","animate-spin"],[1,"text-[10px]","text-neutral-500"],[1,"text-2xl"],[1,"text-xs"],[1,"flex","justify-end","gap-2","mb-2"],[1,"inline-flex","items-center","gap-1.5","px-2.5","py-1","rounded-md","text-[11px]","transition-colors","cursor-pointer",3,"click"],[1,"space-y-4","max-h-[60vh]","overflow-y-auto","p-1"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5"],["d","M3 8.5l3 3 7-7"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5"],["d","M2 4h12M2 8h12M2 12h8"],["x","5","y","5","width","9","height","9","rx","1.5"],["d","M3 11V3a1.5 1.5 0 0 1 1.5-1.5H11"],[1,"text-[9px]","text-neutral-500","uppercase","tracking-wide","mb-1"],[1,"text-xs","leading-relaxed","whitespace-pre-wrap","break-words","overflow-x-auto","font-mono","text-neutral-300"],[1,"mb-3","last:mb-0"],[1,"text-[8px]","text-neutral-600","mb-0.5"]],template:function(i,n){if(i&1){let l=k();g(0,Jn,8,1,"div",3)(1,$i,10,1,"ng-template",null,0,st),o(3,"div",4)(4,"div",5,1),f("scroll",function(){return u(l),C(n.handleChatScroll())}),g(6,Di,6,0,"div",6),N(7,Ri,2,2,null,null,Qn),g(9,Fi,2,1),s(),S(10,"app-s-session-schedule-overlay",7),o(11,"app-s-session-quickcast-overlay",8),f("actionSelected",function(m){return u(l),C(n.handleQuickCastAction(m))}),s(),S(12,"app-s-session-coordinator-overlay",7),o(13,"app-s-session-quick-settings-overlay",9),f("restartRunnerClicked",function(){return u(l),C(n.handleRestartRunnerClicked())}),s(),o(14,"div",10)(15,"app-ccap-voice-record-button",11),f("transcriptSegmentReady",function(m){return u(l),C(n.handleVoiceSegment(m))}),s()()(),o(16,"app-s-session-input",12,2),f("draftTextChange",function(m){return u(l),C(n.handlePromptInputChange(m))})("attachmentsChanged",function(m){return u(l),C(n.handleAttachmentsChanged(m))})("sendRequested",function(){return u(l),C(n.handleSendPrompt())})("queueRequested",function(){return u(l),C(n.handleSendPrompt())})("stopRequested",function(){return u(l),C(n.detailUi_DS.handleStopExecution())})("modeChanged",function(m){return u(l),C(n.handleSelectMode(m))})("modelChanged",function(m){return u(l),C(n.handleSelectModel(m))})("effortChanged",function(m){return u(l),C(n.handleSelectEffort(m))})("queueEditStart",function(m){return u(l),C(n.sessionQueue_DS.startEditing(m))})("queueEditTextChange",function(m){return u(l),C(n.sessionQueue_DS.editingText_$.set(m))})("queueEditSave",function(){return u(l),C(n.sessionQueue_DS.saveEdit())})("queueEditCancel",function(){return u(l),C(n.sessionQueue_DS.cancelEdit())})("queueRemoveItem",function(m){return u(l),C(n.sessionQueue_DS.removeItem(m))})("queueSendNow",function(m){return u(l),C(n.sessionQueue_DS.sendNow(m))})("queueMoveUp",function(m){return u(l),C(n.sessionQueue_DS.reorderItem({queueItemId:m,direction:"up"}))})("queueMoveDown",function(m){return u(l),C(n.sessionQueue_DS.reorderItem({queueItemId:m,direction:"down"}))}),s(),o(18,"app-s-modal",13),f("closed",function(){return u(l),C(n.handleCloseInfoPopup())}),g(19,Ki,11,9),s()}if(i&2){let l;_(n.isShowStickyPrompt_$()?0:-1),a(6),_(n.ccSession_DS.isLoadingOlderMessages_$()?6:-1),a(),H(n.chatTurns_$()),a(2),_(n.chatTurns_$().length?-1:9),a(),b("sessionId",n.sessionId()),a(2),b("sessionId",n.sessionId()),a(),b("sessionId",n.sessionId())("showRestartRunner",!0),a(2),b("compactLayout",!0),a(),b("draftText",n.promptInput_$())("isExecuting",n.isExecuting_$())("isSending",n.isSending_$())("isStopping",n.detailUi_DS.isStopping_$())("enableAttachments",!0)("modeOptions",n.modeOptions)("selectedMode",n.selectedMode_$())("modelOptions",n.modelOptions)("selectedModel",n.selectedModel_$())("effortOptions",n.effortOptions)("selectedEffort",n.selectedEffort_$())("usageText",n.usageText_$())("textareaRows",2)("queueItems",n.sessionQueue_DS.items_$())("isQueueLocked",n.sessionQueue_DS.isLocked_$())("editingQueueItemId",n.sessionQueue_DS.editingItemId_$())("editingQueueText",n.sessionQueue_DS.editingText_$()),a(2),b("isOpen",n.isInfoPopupOpen_$())("title","Event details \u2014 "+n.infoPopupTitle_$()),a(),_((l=n.infoPopupBundle_$())?19:-1,l)}},dependencies:[rt,Y,$e,Ve,Fe,Vt,Lt,Re,Ft,Dt,Mt,At,Pt,je],encapsulation:2})}return t})();var Gt=(()=>{class t{transform(e){switch(e){case"status-change":return"bg-purple-600";case"prompt-sent":return"bg-blue-600";case"response-chunk":return"bg-green-600";case"response-complete":return"bg-green-500";case"tool-call-start":return"bg-orange-500";case"tool-call-end":return"bg-orange-400";case"stdout-line":return"bg-neutral-600";case"stderr-line":return"bg-red-500";case"error":return"bg-red-600";case"file-operation":return"bg-cyan-600";case"shell-command":return"bg-yellow-600";case"session-init":return"bg-blue-500";case"config-mismatch":return"bg-amber-600";case"cli-args-record":return"bg-slate-500";case"usage-update":return"bg-teal-600";case"config-change":return"bg-indigo-500";case"runner-overflow":return"bg-red-700";case"interrupted-prompt":return"bg-amber-500";case"cli-chunk":return"bg-neutral-500";default:return"bg-neutral-600"}}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=ie({name:"ccSessionEventTypeColor",type:t,pure:!0})}return t})();var Yi=["eventList"],Zi=(t,r)=>r.sequence;function eo(t,r){t&1&&(o(0,"span",14),d(1," CCAP "),s())}function to(t,r){t&1&&(M(),o(0,"svg",19),S(1,"path",22),s())}function no(t,r){t&1&&(M(),o(0,"svg",20),S(1,"rect",23)(2,"path",24),s())}function io(t,r){if(t&1&&(S(0,"pre",21),F(1,"ccSessionJsonFormat")),t&2){let e=c().$implicit;b("innerHTML",j(1,1,e.data),G)}}function oo(t,r){if(t&1){let e=k();o(0,"div",12),f("click",function(){let n=u(e).$implicit,l=c();return C(l.handleToggleEvent(n.sequence))}),o(1,"div",13),g(2,eo,2,0,"span",14),o(3,"span",15),F(4,"ccSessionEventTypeColor"),d(5),s(),o(6,"span",16),d(7),s(),o(8,"span",17),F(9,"sAbsoluteTime"),d(10),F(11,"sTimeAgo"),s(),o(12,"button",18),f("click",function(n){let l=u(e).$implicit,p=c();return C(p.handleCopyEvent(l,n))}),g(13,to,2,0,":svg:svg",19)(14,no,3,0,":svg:svg",20),s()(),g(15,io,2,3,"pre",21),s()}if(t&2){let e=r.$implicit,i=c();a(2),_(e.eventSource==="ccap-internal"?2:-1),a(),b("ngClass",j(4,8,e.eventType)),a(2),D(" ",e.eventType," "),a(2),D(" #",e.sequence," "),a(),b("title",j(9,10,e.timestamp)),a(2),D(" ",j(11,12,e.timestamp)," "),a(3),_(i.copiedSequence_$()===e.sequence?13:14),a(2),_(i.isExpanded(e.sequence)?15:-1)}}function so(t,r){t&1&&(o(0,"div",11),d(1,"No events yet"),s())}var Jt=(()=>{class t{ccSession_DS=$(W);detailUi_DS=$(K);globalError_CS=$(St);expandedSequences_$=v(new Set);isAutoScroll_$=v(!0);copiedSequence_$=v(null);eventListRef;previousEventCount=0;ngAfterViewChecked(){let e=this.ccSession_DS.selectedSessionEvents_$().length;this.isAutoScroll_$()&&e>this.previousEventCount&&this.scrollToBottom(),this.previousEventCount=e}handleToggleEvent(e){let i=this.expandedSequences_$(),n=new Set(i);n.has(e)?n.delete(e):n.add(e),this.expandedSequences_$.set(n)}handleToggleAutoScroll(){this.isAutoScroll_$.update(e=>!e)}isExpanded(e){return this.expandedSequences_$().has(e)}handleCopyEvent(e,i){return R(this,null,function*(){i.stopPropagation();let n=JSON.stringify(e.data,null,2);(yield this.globalError_CS.copyToClipboard(n)).ok&&(this.copiedSequence_$.set(e.sequence),setTimeout(()=>{this.copiedSequence_$.set(null)},1500))})}scrollToBottom(){let e=this.eventListRef?.nativeElement;e&&(e.scrollTop=e.scrollHeight)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-timeline"]],viewQuery:function(i,n){if(i&1&&ue(Yi,5),i&2){let l;Ce(l=fe())&&(n.eventListRef=l.first)}},hostAttrs:[1,"flex","flex-col","h-full","overflow-hidden"],decls:18,vars:8,consts:[["eventList",""],[1,"flex","items-center","justify-between","p-2","border-b","border-neonDefault","shrink-0"],[1,"flex","items-center","gap-1"],[1,"text-xs","text-neutral-400","font-medium"],[1,"text-xs","text-neutral-500"],[1,"text-[10px]","px-1.5","py-0.5","border","rounded","transition-colors",3,"click"],[1,"flex","items-center","gap-1","px-2","py-1.5","border-b","border-neonDefault","shrink-0"],["title","Session lifecycle status changes (running, waiting, completed...)",1,"px-2","py-0.5","text-[10px]","border","rounded","transition-colors",3,"click"],["title","Agent progress updates (task_progress, tool status...)",1,"px-2","py-0.5","text-[10px]","border","rounded","transition-colors",3,"click"],[1,"flex-1","overflow-y-auto","min-h-0"],[1,"px-2","py-1","border-b","border-neutral-700/30","cursor-pointer","hover:bg-neutral-800/30","transition-colors"],[1,"p-3","text-center","text-neutral-500","text-xs"],[1,"px-2","py-1","border-b","border-neutral-700/30","cursor-pointer","hover:bg-neutral-800/30","transition-colors",3,"click"],[1,"flex","items-center","gap-1.5"],["title","CCAP-internal event (saj\xE1t rendszer state-reconciliation / force-reset / recovery)",1,"text-[9px]","px-1","py-0.5","rounded","bg-purple-700","text-white","whitespace-nowrap","leading-none","font-semibold"],[1,"text-[9px]","px-1","py-0.5","rounded","text-white","whitespace-nowrap","leading-none",3,"ngClass"],[1,"text-[10px]","text-neutral-600","leading-none"],[1,"text-[10px]","text-neutral-400","ml-auto","leading-none",3,"title"],["title","Copy event data",1,"ml-1","p-0.5","rounded","transition-colors","text-neutral-500","hover:text-neonCyan","shrink-0",3,"click"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","2",1,"w-3","h-3","text-green-400"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","1.5",1,"w-3","h-3"],[1,"mt-1","p-2","bg-neutral-900","border","border-neutral-700/50","rounded","text-[10px]","text-neonCyan/70","overflow-x-auto","max-h-60","whitespace-pre-wrap","break-words","font-mono",3,"innerHTML"],["d","M3 8.5L6.5 12L13 4","stroke-linecap","round","stroke-linejoin","round"],["x","5","y","5","width","8","height","8","rx","1","stroke-linecap","round","stroke-linejoin","round"],["d","M3 11V3h8","stroke-linecap","round","stroke-linejoin","round"]],template:function(i,n){if(i&1){let l=k();o(0,"div",1)(1,"div",2)(2,"span",3),d(3,"Event Timeline"),s(),o(4,"span",4),d(5),s()(),o(6,"button",5),f("click",function(){return u(l),C(n.handleToggleAutoScroll())}),d(7," Auto-scroll "),s()(),o(8,"div",6)(9,"button",7),f("click",function(){return u(l),C(n.detailUi_DS.handleToggleSessionStatus())}),d(10," Session status "),s(),o(11,"button",8),f("click",function(){return u(l),C(n.detailUi_DS.handleToggleAgentUpdates())}),d(12," Agent updates "),s()(),o(13,"div",9,0),N(15,oo,16,14,"div",10,Zi),g(17,so,2,0,"div",11),s()}i&2&&(a(5),D(" (",n.ccSession_DS.selectedSessionEvents_$().length,") "),a(),V(n.isAutoScroll_$()?"border-neonCyan text-neonCyan shadow-neon-glow-cyan":"border-neonDefault text-neutral-400"),a(3),V(n.detailUi_DS.isShowSessionStatus_$()?"border-neonPurple/50 text-neonPurple bg-neonPurple/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600"),a(2),V(n.detailUi_DS.isShowAgentUpdates_$()?"border-teal-500/50 text-teal-400 bg-teal-500/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600"),a(4),H(n.ccSession_DS.selectedSessionEvents_$()),a(2),_(n.ccSession_DS.selectedSessionEvents_$().length?-1:17))},dependencies:[X,De,Ee,Gt,je],encapsulation:2})}return t})();var Xt=Ge(dt());function ro(t,r){if(t&1){let e=k();o(0,"button",41),f("click",function(){u(e);let n=c(2);return C(n.handleScheduleBadgeClick())}),M(),o(1,"svg",42),S(2,"rect",43)(3,"line",44)(4,"line",45)(5,"line",46),s()()}}function lo(t,r){if(t&1){let e=k();o(0,"button",47),f("click",function(){u(e);let n=c(2);return C(n.handleCoordinatorBadgeClick())}),M(),o(1,"svg",42),S(2,"circle",48)(3,"polygon",49),s()()}}function co(t,r){if(t&1){let e=k();o(0,"button",50),f("click",function(){u(e);let n=c(2);return C(n.detailUi_DS.handleResume())}),d(1),s()}if(t&2){let e=c(2);b("disabled",e.detailUi_DS.isResuming_$()),a(),D(" ",e.detailUi_DS.isResuming_$()?"Resuming...":"Resume"," ")}}function po(t,r){if(t&1&&(o(0,"span"),d(1),s()),t&2){let e=c(2);a(),J("",e.rateLimitScopeLabel_$()," ",e.rateLimitPercent_$(),"%")}}function _o(t,r){t&1&&(o(0,"span"),d(1,"Rate limit"),s())}function mo(t,r){if(t&1&&(he(0),o(1,"div",55)(2,"span",29),d(3,"Status"),s(),o(4,"span",56),d(5),s()(),o(6,"div",55)(7,"span",29),d(8,"Scope"),s(),o(9,"span",57),d(10),o(11,"span",58),d(12),s()()(),o(13,"div")(14,"div",59)(15,"span",29),d(16,"Utilization"),s(),o(17,"span",60),d(18),s()(),o(19,"div",61),S(20,"div",62),s()(),o(21,"div",55)(22,"span",29),d(23,"Warning threshold"),s(),o(24,"span",57),d(25),s()(),o(26,"div",55)(27,"span",29),d(28,"Resets in"),s(),o(29,"span",57),d(30),s()(),o(31,"div",55)(32,"span",29),d(33,"Overage"),s(),o(34,"span",63),d(35),s()(),o(36,"div",64)(37,"span",65),d(38),F(39,"date"),s()()),t&2){let e=c(3),i=e.rateLimitInfo_$();a(4),V(e.isRateLimitOverThreshold_$()?"text-red-400":"text-green-400"),a(),D(" ",i.status," "),a(5),D(" ",e.rateLimitScopeLabel_$()," "),a(2),D("(",i.rateLimitType,")"),a(6),D("",e.rateLimitPercent_$(),"%"),a(2),V(e.isRateLimitOverThreshold_$()?"bg-red-500":e.rateLimitPercent_$()>50?"bg-amber-500":"bg-green-500"),we("width",e.rateLimitPercent_$(),"%"),_e("data-utilization-color",e.isRateLimitOverThreshold_$()?"red":e.rateLimitPercent_$()>50?"amber":"green"),a(5),D("",e.rateLimitThresholdPercent_$(),"%"),a(5),T(e.rateLimitResetText_$()),a(4),V(i.isUsingOverage?"text-amber-400":"text-neutral-400"),a(),D(" ",i.isUsingOverage?"active":"inactive"," "),a(3),D("Last updated: ",ot(39,17,i.receivedAt,"HH:mm:ss"),"")}}function uo(t,r){t&1&&(o(0,"div",54),d(1," No rate limit data yet "),s())}function Co(t,r){if(t&1){let e=k();o(0,"div",51),f("click",function(){u(e);let n=c(2);return C(n.handleToggleRateLimit())}),s(),o(1,"div",52)(2,"div",53),d(3,"Rate Limit Info"),s(),g(4,mo,40,20)(5,uo,2,0,"div",54),s()}if(t&2){let e=c(2);a(4),_(e.rateLimitInfo_$()?4:5)}}function fo(t,r){t&1&&S(0,"span",19)}function xo(t,r){if(t&1&&(o(0,"div",20),d(1),s()),t&2){let e=c();a(),T(e.session.statusMessage)}}function ho(t,r){if(t&1&&(o(0,"div",21)(1,"div",17),d(2,"Actor"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),D(" ",e.session.actorLabel||e.session.actorId," ")}}function go(t,r){if(t&1&&(o(0,"div",21)(1,"div",17),d(2,"Process ID"),s(),o(3,"div",66),d(4),s()()),t&2){let e=c();a(4),T(e.session.processId)}}function So(t,r){if(t&1&&(o(0,"div",21)(1,"div",17),d(2,"Claude Session"),s(),o(3,"div",22),d(4),s()()),t&2){let e=c();a(4),T(e.session.claudeSessionId)}}function bo(t,r){if(t&1&&(o(0,"div",21)(1,"div",17),d(2,"Last Prompt"),s(),o(3,"div",67),d(4),s()()),t&2){let e=c();a(4),T(e.session.lastPrompt)}}function vo(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Started"),s(),o(3,"div",68),F(4,"sAbsoluteTime"),d(5),F(6,"sTimeAgo"),s()()),t&2){let e=c();a(3),b("title",j(4,2,e.session.startedAt)),a(2),T(j(6,4,e.session.startedAt))}}function wo(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Last Activity"),s(),o(3,"div",68),F(4,"sAbsoluteTime"),d(5),F(6,"sTimeAgo"),s()()),t&2){let e=c();a(3),b("title",j(4,2,e.session.lastActivityAt)),a(2),T(j(6,4,e.session.lastActivityAt))}}function yo(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Completed"),s(),o(3,"div",68),F(4,"sAbsoluteTime"),d(5),F(6,"sTimeAgo"),s()()),t&2){let e=c();a(3),b("title",j(4,2,e.session.completedAt)),a(2),T(j(6,4,e.session.completedAt))}}function To(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Model"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.session.activeModel||e.session.model)}}function ko(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Mode"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.session.mode)}}function Io(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Permission"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.session.permissionPolicy)}}function $o(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Effort"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.session.reasoningEffort)}}function Do(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Max Turns"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.session.maxTurns)}}function Eo(t,r){if(t&1){let e=k();o(0,"button",69),f("click",function(){u(e);let n=c(),l=c();return C(l.handleToggleDebugMode(n.session.sessionId,!0))}),d(1," on (--debug) "),s()}}function Mo(t,r){if(t&1){let e=k();o(0,"button",70),f("click",function(){u(e);let n=c(),l=c();return C(l.handleToggleDebugMode(n.session.sessionId,!1))}),d(1," off "),s()}}function Po(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Cost"),s(),o(3,"div",73),d(4),s()()),t&2){let e=c(2);a(4),D("$",e.session.costUsdTotal.toFixed(4),"")}}function Ao(t,r){if(t&1&&(S(0,"hr",24),o(1,"h3",25),d(2," Usage "),s(),o(3,"div",71)(4,"div",27)(5,"div",72),d(6),s(),o(7,"div",29),d(8,"Input"),s()(),o(9,"div",27)(10,"div",72),d(11),s(),o(12,"div",29),d(13,"Output"),s()()(),g(14,Po,5,1,"div",30)),t&2){let e=c(),i=c();a(6),T(i.formatTokens(e.session.inputTokensTotal)),a(5),T(i.formatTokens(e.session.outputTokensTotal)),a(3),_(e.session.costUsdTotal?14:-1)}}function Oo(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Runtime Status"),s(),o(3,"div",35),d(4),s()()),t&2){let e=c();a(4),T(e.runtime.runtimeStatus)}}function Ro(t,r){if(t&1&&(o(0,"div",30)(1,"div",31),d(2,"Runner"),s(),o(3,"div",34),d(4),s()()),t&2){let e=c();a(3),V(e.runtime.isTerminalRunnerConnected?"text-neonGreen":"text-amber-400"),a(),D(" ",e.runtime.isTerminalRunnerConnected?"connected":"disconnected"," ")}}function Vo(t,r){if(t&1){let e=k();o(0,"div",1)(1,"div",2)(2,"div",3)(3,"h3",4),d(4," Session Info "),s(),g(5,ro,6,0,"button",5)(6,lo,4,0,"button",6),s(),o(7,"button",7),f("click",function(){u(e);let n=c();return C(n.isArchiveConfirmOpen_$.set(!0))}),d(8),s()(),o(9,"div",8),g(10,co,2,2,"button",9),o(11,"button",10),f("click",function(){u(e);let n=c();return C(n.handleRestartRunner())}),d(12," \u21BB Restart runner "),s(),o(13,"div",11)(14,"button",12),f("click",function(){u(e);let n=c();return C(n.handleToggleRateLimit())}),M(),o(15,"svg",13),S(16,"circle",14)(17,"path",15),s(),g(18,po,2,2,"span")(19,_o,2,0,"span"),s(),g(20,Co,6,1),s()(),L(),o(21,"div",16)(22,"div",17),d(23,"Status"),s(),o(24,"div",3)(25,"span",18),F(26,"ccSessionStatusColor"),d(27),s(),g(28,fo,1,0,"span",19),s(),g(29,xo,2,1,"div",20),s(),o(30,"div",21)(31,"div",17),d(32,"Session ID"),s(),o(33,"div",22),d(34),s()(),o(35,"div",21)(36,"div",17),d(37,"Workspace"),s(),o(38,"div",23),d(39),s()(),g(40,ho,5,1,"div",21)(41,go,5,1,"div",21)(42,So,5,1,"div",21),S(43,"hr",24),o(44,"h3",25),d(45," Statistics "),s(),o(46,"div",26)(47,"div",27)(48,"div",28),d(49),s(),o(50,"div",29),d(51,"Prompts"),s()(),o(52,"div",27)(53,"div",28),d(54),s(),o(55,"div",29),d(56,"Tool Calls"),s()()(),g(57,bo,5,1,"div",21),S(58,"hr",24),o(59,"h3",25),d(60," Timestamps "),s(),g(61,vo,7,6,"div",30)(62,wo,7,6,"div",30)(63,yo,7,6,"div",30),S(64,"hr",24),o(65,"h3",25),d(66," Configuration "),s(),g(67,To,5,1,"div",30)(68,ko,5,1,"div",30)(69,Io,5,1,"div",30)(70,$o,5,1,"div",30)(71,Do,5,1,"div",30),o(72,"div",30)(73,"div",31),d(74,"Debug Mode"),s(),g(75,Eo,2,0,"button",32)(76,Mo,2,0,"button",33),s(),g(77,Ao,15,3),S(78,"hr",24),o(79,"h3",25),d(80," Runtime "),s(),o(81,"div",30)(82,"div",31),d(83,"Live"),s(),o(84,"div",34),d(85),s()(),g(86,Oo,5,1,"div",30),o(87,"div",30)(88,"div",31),d(89,"Output Buffer"),s(),o(90,"div",35),d(91),s()(),o(92,"div",30)(93,"div",31),d(94,"Runner Mode"),s(),o(95,"div",35),d(96),s()(),g(97,Ro,5,3,"div",30),s(),o(98,"app-s-modal",36),f("closed",function(){u(e);let n=c();return C(n.isArchiveConfirmOpen_$.set(!1))}),o(99,"p",37),d(100),s(),o(101,"div",38)(102,"button",39),f("click",function(){u(e);let n=c();return C(n.isArchiveConfirmOpen_$.set(!1))}),d(103," Cancel "),s(),o(104,"button",40),f("click",function(){let n=u(e),l=c();return C(l.handleConfirmToggleArchive(n.session))}),d(105),s()()()}if(t&2){let e=r,i=c();a(5),_(i.hasSchedule_$()?5:-1),a(),_(i.hasCoordinator_$()?6:-1),a(),V(e.session.isArchived?"text-amber-400 border border-amber-500/60 bg-amber-500/10 hover:bg-amber-500/20":"text-neutral-500 border border-neutral-700 hover:text-neutral-300 hover:bg-neutral-700"),b("title",e.session.isArchived?"Unarchive session":"Archive session"),a(),D(" ",e.session.isArchived?"Unarchive":"Archive"," "),a(2),_(e.session.status==="completed"||e.session.status==="errored"?10:-1),a(4),V(i.rateLimitInfo_$()?i.isRateLimitOverThreshold_$()?"border-red-500/30 text-red-400/80 hover:bg-red-500/10":"border-green-500/30 text-green-400/80 hover:bg-green-500/10":"border-neutral-700 text-neutral-500"),_e("data-rate-limit-state",i.rateLimitInfo_$()?i.isRateLimitOverThreshold_$()?"reached":"allowed":"unknown"),a(4),_(i.rateLimitInfo_$()?18:19),a(2),_(i.isRateLimitOpen_$()?20:-1),a(5),b("ngClass",j(26,47,e.session.status)),a(2),D(" ",e.session.status," "),a(),_(e.runtime.isLive?28:-1),a(),_(e.session.statusMessage?29:-1),a(5),T(e.session.sessionId),a(5),T(e.session.workspacePath),a(),_(e.session.actorId||e.session.actorLabel?40:-1),a(),_(e.session.processId?41:-1),a(),_(e.session.claudeSessionId?42:-1),a(7),T(e.session.promptCount),a(5),T(e.session.toolCallCount),a(3),_(e.session.lastPrompt?57:-1),a(4),_(e.session.startedAt?61:-1),a(),_(e.session.lastActivityAt?62:-1),a(),_(e.session.completedAt?63:-1),a(4),_(e.session.activeModel||e.session.model?67:-1),a(),_(e.session.mode?68:-1),a(),_(e.session.permissionPolicy?69:-1),a(),_(e.session.reasoningEffort?70:-1),a(),_(e.session.maxTurns?71:-1),a(4),_(e.session.isDebugMode?75:76),a(2),_(e.session.inputTokensTotal||e.session.outputTokensTotal||e.session.costUsdTotal?77:-1),a(7),V(e.runtime.isLive?"text-neonGreen":"text-neutral-500"),a(),D(" ",e.runtime.isLive?"Yes":"No"," "),a(),_(e.runtime.runtimeStatus?86:-1),a(5),D("",e.runtime.outputBufferLength," lines"),a(5),D(" ",e.runtime.isTerminalMode?"terminal":"direct"," "),a(),_(e.runtime.isTerminalMode?97:-1),a(),b("isOpen",i.isArchiveConfirmOpen_$())("title",e.session.isArchived?"Unarchive Session":"Archive Session")("maxWidth","sm")("closeOnBackdropClick",!0),a(2),D(" ",e.session.isArchived?"Are you sure you want to unarchive this session?":"Are you sure you want to archive this session?"," "),a(5),D(" ",e.session.isArchived?"Unarchive":"Archive"," ")}}var Yt=(()=>{class t{ccSession_DS=$(W);detailUi_DS=$(K);scheduledJobs_DS=$(Me);coordinator_DS=$(Pe);hasSchedule_$=A(()=>{let e=this.ccSession_DS.activeSessionId_$();return e?this.scheduledJobs_DS.scheduledSessionIds_$().has(e):!1});hasCoordinator_$=A(()=>{let e=this.ccSession_DS.activeSessionId_$();return e?this.coordinator_DS.coordinatedSessionIds_$().has(e):!1});isRateLimitOpen_$=v(!1);isArchiveConfirmOpen_$=v(!1);schedulePopupSessionId_$=v(null);coordinatorPopupSessionId_$=v(null);handleScheduleBadgeClick(){let e=this.ccSession_DS.activeSessionId_$();e&&this.schedulePopupSessionId_$.set(e)}handleCloseSchedulePopup(){this.schedulePopupSessionId_$.set(null)}handleCoordinatorBadgeClick(){let e=this.ccSession_DS.activeSessionId_$();e&&this.coordinatorPopupSessionId_$.set(e)}handleCloseCoordinatorPopup(){this.coordinatorPopupSessionId_$.set(null)}handleToggleDebugMode(e,i){if(!e)return;let n=!i;this.ccSession_DS.updateSessionConfig({sessionId:e,isDebugMode:n}).catch(l=>{Xt.DyFM_Log.error("[CCAP] cc-metadata config-update isDebugMode",l)})}rateLimitInfo_$=A(()=>this.ccSession_DS.rateLimitInfo_$());rateLimitResetText_$=A(()=>le.formatResetText(this.rateLimitInfo_$()));rateLimitPercent_$=A(()=>le.computeUtilizationPercent(this.rateLimitInfo_$()));rateLimitThresholdPercent_$=A(()=>le.computeThresholdPercent(this.rateLimitInfo_$()));rateLimitScopeLabel_$=A(()=>le.formatLimitScopeLabel(this.rateLimitInfo_$()));isRateLimitOverThreshold_$=A(()=>le.isOverThreshold(this.rateLimitInfo_$()));ngOnInit(){this.scheduledJobs_DS.jobs_$().length===0&&this.scheduledJobs_DS.loadAll(),this.coordinator_DS.globalCoordinatorsList_$().length===0&&this.coordinator_DS.loadAllCoordinatorsForManagementPage()}handleToggleRateLimit(){this.isRateLimitOpen_$.update(e=>!e)}handleConfirmToggleArchive(e){return R(this,null,function*(){this.isArchiveConfirmOpen_$.set(!1);try{yield this.ccSession_DS.setSessionArchived({sessionId:e.sessionId,isArchived:!e.isArchived})}catch{}})}handleRestartRunner(){return R(this,null,function*(){let e=this.ccSession_DS.activeSessionId_$();if(e)try{yield this.ccSession_DS.restartRunner({sessionId:e})}catch{}})}formatTokens(e){return e?e>1e3?`${(e/1e3).toFixed(1)}k`:String(e):"0"}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-metadata"]],hostAttrs:[1,"block","h-full","overflow-y-auto"],decls:3,vars:5,consts:[[3,"closed","sessionId","isOpen"],[1,"p-3"],[1,"flex","items-center","justify-between","mb-3"],[1,"flex","items-center","gap-1.5"],[1,"text-xs","font-semibold","text-neutral-400","uppercase","tracking-wider"],["type","button","title","Ehhez a session-h\xF6z tartozik schedule \u2014 kattints a r\xE9szletek\xE9rt","aria-label","Schedule attached \u2014 open popup",1,"text-neonCyan/80","hover:text-neonCyan","focus:outline-none","focus:ring-1","focus:ring-neonCyan/60","rounded","p-0.5"],["type","button","title","Ehhez a session-h\xF6z tartozik koordin\xE1tor \u2014 kattints a r\xE9szletek\xE9rt","aria-label","Coordinator attached \u2014 open popup",1,"text-neonAmber/80","hover:text-neonAmber","focus:outline-none","focus:ring-1","focus:ring-neonAmber/60","rounded","p-0.5"],[1,"text-[10px]","px-1.5","py-0.5","rounded","transition-colors",3,"click","title"],[1,"flex","flex-col","gap-2","mb-4"],["type","button",1,"w-full","px-2","py-1.5","text-xs","border","border-ccapAccent","text-ccapAccent","hover:bg-ccapAccent","hover:text-white","disabled:opacity-50","rounded","transition-colors",3,"disabled"],["type","button","title","Runner kill + respawn (\xFAj CMD/termin\xE1l ablak; haszn\xE1ld ha verzi\xF3-mismatch vagy no-ACK loop van)",1,"w-full","px-2","py-1.5","text-xs","border","border-amber-500/60","text-amber-300","hover:bg-amber-500/10","disabled:opacity-50","rounded","transition-colors",3,"click"],["data-testid","cc-rate-limit-container",1,"relative","w-full","shrink-0"],["type","button","data-testid","cc-rate-limit-button","title","Rate limit info",1,"w-full","px-2","py-1.5","text-xs","border","rounded","transition-colors","flex","items-center","justify-center","gap-1.5",3,"click"],["viewBox","0 0 16 16","fill","none","stroke","currentColor","stroke-width","1.5","stroke-linecap","round","stroke-linejoin","round",1,"w-3.5","h-3.5","shrink-0"],["cx","8","cy","8","r","6"],["d","M8 5v3.5l2 1.5"],[1,"mb-4"],[1,"text-[10px]","text-neutral-500","uppercase","tracking-wider","mb-1"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","text-white",3,"ngClass"],[1,"w-1.5","h-1.5","rounded-full","bg-green-500","animate-pulse"],[1,"text-xs","text-neutral-500","mt-0.5"],[1,"mb-3"],[1,"text-xs","text-neutral-400","font-mono","break-all"],[1,"text-xs","text-neutral-400","break-all"],[1,"border-neutral-700/50","my-3"],[1,"text-xs","font-semibold","text-neutral-400","uppercase","tracking-wider","mb-3"],[1,"grid","grid-cols-2","gap-2","mb-4"],[1,"bg-neutral-800/60","border","border-neonDefault","rounded","p-2","text-center"],[1,"text-lg","font-bold","text-neutral-100"],[1,"text-[10px]","text-neutral-500"],[1,"mb-2"],[1,"text-[10px]","text-neutral-500","uppercase","tracking-wider","mb-0.5"],["type","button","title","CLI --debug flag akt\xEDv \u2014 klikk a kikapcsol\xE1shoz",1,"text-xs","px-2","py-0.5","rounded","border","border-amber-700","text-amber-400","hover:border-amber-500","hover:text-amber-300","transition-colors","duration-150"],["type","button","title","CLI --debug flag inakt\xEDv \u2014 klikk a bekapcsol\xE1shoz",1,"text-xs","px-2","py-0.5","rounded","border","border-neutral-700","text-neutral-500","hover:border-neutral-500","hover:text-neutral-300","transition-colors","duration-150"],[1,"text-xs"],[1,"text-xs","text-neutral-400"],[3,"closed","isOpen","title","maxWidth","closeOnBackdropClick"],[1,"text-sm","text-neutral-300","mb-4"],[1,"flex","justify-end","gap-2"],[1,"px-3","py-1.5","text-xs","border","border-neonDefault","text-neutral-300","hover:bg-neutral-700","rounded","transition-colors",3,"click"],[1,"px-3","py-1.5","text-xs","border","border-amber-500","text-amber-400","hover:bg-amber-500","hover:text-white","rounded","transition-colors",3,"click"],["type","button","title","Ehhez a session-h\xF6z tartozik schedule \u2014 kattints a r\xE9szletek\xE9rt","aria-label","Schedule attached \u2014 open popup",1,"text-neonCyan/80","hover:text-neonCyan","focus:outline-none","focus:ring-1","focus:ring-neonCyan/60","rounded","p-0.5",3,"click"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2","stroke-linecap","round","stroke-linejoin","round","aria-hidden","true",1,"w-3","h-3"],["x","3","y","4","width","18","height","18","rx","2","ry","2"],["x1","16","y1","2","x2","16","y2","6"],["x1","8","y1","2","x2","8","y2","6"],["x1","3","y1","10","x2","21","y2","10"],["type","button","title","Ehhez a session-h\xF6z tartozik koordin\xE1tor \u2014 kattints a r\xE9szletek\xE9rt","aria-label","Coordinator attached \u2014 open popup",1,"text-neonAmber/80","hover:text-neonAmber","focus:outline-none","focus:ring-1","focus:ring-neonAmber/60","rounded","p-0.5",3,"click"],["cx","12","cy","12","r","10"],["points","16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"],["type","button",1,"w-full","px-2","py-1.5","text-xs","border","border-ccapAccent","text-ccapAccent","hover:bg-ccapAccent","hover:text-white","disabled:opacity-50","rounded","transition-colors",3,"click","disabled"],[1,"fixed","inset-0","z-40",3,"click"],["data-testid","cc-rate-limit-popover",1,"absolute","left-0","top-full","mt-1","z-50","w-full","min-w-[16rem]","max-w-[min(100vw-2rem,18rem)]","bg-neutral-900","border","border-neutral-700","rounded-lg","shadow-xl","p-3","space-y-2.5"],[1,"text-xs","font-semibold","text-neutral-200","mb-2"],[1,"text-[11px]","text-neutral-500","text-center","py-2"],[1,"flex","items-center","justify-between"],["data-testid","cc-rate-limit-status",1,"text-[11px]","font-medium"],[1,"text-[11px]","text-neutral-300"],[1,"text-[9px]","text-neutral-500"],[1,"flex","items-center","justify-between","mb-1"],[1,"text-[10px]","text-neutral-300","font-medium"],[1,"w-full","h-1.5","bg-neutral-800","rounded-full","overflow-hidden"],["data-testid","cc-rate-limit-utilization-bar",1,"h-full","rounded-full","transition-all"],[1,"text-[11px]"],[1,"border-t","border-neutral-800","pt-1.5","mt-1.5"],[1,"text-[9px]","text-neutral-600"],[1,"text-xs","text-neutral-400","font-mono"],[1,"text-xs","text-neutral-400","line-clamp-3"],[1,"text-xs","text-neutral-400",3,"title"],["type","button","title","CLI --debug flag akt\xEDv \u2014 klikk a kikapcsol\xE1shoz",1,"text-xs","px-2","py-0.5","rounded","border","border-amber-700","text-amber-400","hover:border-amber-500","hover:text-amber-300","transition-colors","duration-150",3,"click"],["type","button","title","CLI --debug flag inakt\xEDv \u2014 klikk a bekapcsol\xE1shoz",1,"text-xs","px-2","py-0.5","rounded","border","border-neutral-700","text-neutral-500","hover:border-neutral-500","hover:text-neutral-300","transition-colors","duration-150",3,"click"],[1,"grid","grid-cols-2","gap-2","mb-2"],[1,"text-sm","font-bold","text-neutral-100"],[1,"text-xs","text-neonGreen","font-mono"]],template:function(i,n){if(i&1&&(g(0,Vo,106,49),o(1,"app-sch-schedule-popup",0),f("closed",function(){return n.handleCloseSchedulePopup()}),s(),o(2,"app-crd-info-popup",0),f("closed",function(){return n.handleCloseCoordinatorPopup()}),s()),i&2){let l;_((l=n.ccSession_DS.selectedSession_$())?0:-1,l),a(),b("sessionId",n.schedulePopupSessionId_$())("isOpen",n.schedulePopupSessionId_$()!==null),a(),b("sessionId",n.coordinatorPopupSessionId_$())("isOpen",n.coordinatorPopupSessionId_$()!==null)}},dependencies:[X,Y,de,ce,lt,De,Ee,Ue],encapsulation:2})}return t})();function Fo(t,r){t&1&&(o(0,"div",0),d(1," Loading session... "),s())}function Uo(t,r){if(t&1){let e=k();o(0,"app-s-session-detail-three-column-layout",2),f("startResizeStart",function(n){u(e);let l=c();return C(l.handleMetadataResizeStart(n))})("endResizeStart",function(n){u(e);let l=c();return C(l.handleTimelineResizeStart(n))}),o(1,"div",3),S(2,"app-ccap-cc-metadata"),s(),o(3,"div",4),S(4,"app-ccap-cc-console",5),s(),o(5,"div",6),S(6,"app-ccap-cc-timeline"),s()()}if(t&2){let e=c();b("isStartOpen",e.detailUi_DS.isMetadataPanelOpen_$())("isEndOpen",e.detailUi_DS.isTimelinePanelOpen_$())("startWidthPx",e.metadataWidth_$())("endWidthPx",e.timelineWidth_$())("isResizing",e.isResizing_$()),a(4),b("sessionId",e.sessionId_$())("isShowSessionStatus",e.detailUi_DS.isShowSessionStatus_$())("isShowAgentUpdates",e.detailUi_DS.isShowAgentUpdates_$())}}function jo(t,r){t&1&&(o(0,"div",0),d(1," Select a session to view details "),s())}var ze=(()=>{class t extends bt{ccSession_DS=$(W);detailUi_DS=$(K);peiContext_DS=$(ae);route=$(ct);router=$(se);sessionId_$=v("");metadataWidth_$=v(256);timelineWidth_$=v(288);isResizing_$=v(!1);ngOnInit(){this.metadataWidth_$.set(Math.max(160,Math.min(500,y.loadPanelWidth("metadata",256)))),this.timelineWidth_$.set(Math.max(200,Math.min(600,y.loadPanelWidth("timeline",288)))),this.addSubscription(this.route.params.subscribe(e=>{let i=e.sessionId??"",n=e.ccapId??"";if(this.sessionId_$.set(i),i)y.saveLastSessionId(i),n&&y.saveLastCcapId(n),this.peiContext_DS.ensureInitialized().then(()=>{n&&this.peiContext_DS.activeCcapId_$()!==n&&this.peiContext_DS.selectInstance(n),this.ccSession_DS.clearLiveOutput(),this.ccSession_DS.setActiveSessionId(i),this.ccSession_DS.loadSessionDetail({sessionId:i}),this.ccSession_DS.loadSessionEvents({sessionId:i});let l=this.peiContext_DS.activeCcapId_$();l&&this.ccSession_DS.loadPersistedRateLimitState({ccapId:l}).catch(()=>{})});else{let l=y.loadLastSessionId(),p=y.loadLastCcapId();if(l){let m=p?["/cc-session",p,l]:["/cc-session",l];this.router.navigate(m,{replaceUrl:!0})}}}))}ngOnDestroy(){this.ccSession_DS.setActiveSessionId(""),super.ngOnDestroy()}handleMetadataResizeStart(e){let i=this.metadataWidth_$(),n=e.clientX;this.isResizing_$.set(!0),ge.attachUntilPointerUp({startEvent:e,onMove:l=>{let p=l.clientX-n,m=Math.max(160,Math.min(500,i+p));this.metadataWidth_$.set(m)},onEnd:()=>{this.isResizing_$.set(!1),y.savePanelWidth("metadata",this.metadataWidth_$())}})}handleTimelineResizeStart(e){let i=this.timelineWidth_$(),n=e.clientX;this.isResizing_$.set(!0),ge.attachUntilPointerUp({startEvent:e,onMove:l=>{let p=n-l.clientX,m=Math.max(200,Math.min(600,i+p));this.timelineWidth_$.set(m)},onEnd:()=>{this.isResizing_$.set(!1),y.savePanelWidth("timeline",this.timelineWidth_$())}})}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Ze(t)))(n||t)}})();static \u0275cmp=z({type:t,selectors:[["app-ccap-cc-detail"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],features:[tt],decls:3,vars:1,consts:[[1,"flex","items-center","justify-center","h-full","text-neutral-500","text-sm"],[3,"isStartOpen","isEndOpen","startWidthPx","endWidthPx","isResizing"],[3,"startResizeStart","endResizeStart","isStartOpen","isEndOpen","startWidthPx","endWidthPx","isResizing"],["sDetailColumnStart",""],["sDetailColumnMain",""],[3,"sessionId","isShowSessionStatus","isShowAgentUpdates"],["sDetailColumnEnd",""]],template:function(i,n){i&1&&g(0,Fo,2,0,"div",0)(1,Uo,7,8,"app-s-session-detail-three-column-layout",1)(2,jo,2,0,"div",0),i&2&&_(n.ccSession_DS.selectedSessionLoading_$()?0:n.ccSession_DS.selectedSession_$()?1:2)},dependencies:[$t,Qt,Jt,Yt],encapsulation:2})}return t})();var zo=[{path:"",component:Ht,children:[{path:"",pathMatch:"full",component:ze},{path:":ccapId/:sessionId",component:ze},{path:":sessionId",component:ze}]}],fr=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=Ye({type:t});static \u0275inj=Xe({imports:[oe,gt,_t.forChild(zo),Ae,Y,$e,Ve,Fe,de,Re,ce,Ot]})}return t})();export{fr as CcSession_Module};
|
|
4
|
-
//# sourceMappingURL=cc.module-
|
|
4
|
+
//# sourceMappingURL=cc.module-JZUXUXHP.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{a as O}from"./chunk-
|
|
1
|
+
import{a as O}from"./chunk-6A2IM2XR.js";import{a as q}from"./chunk-J5NYZUBP.js";import{d as F}from"./chunk-PQUBI6TC.js";import{e as D}from"./chunk-FJGBPKHK.js";import{h as A,j as k}from"./chunk-6BQHKSUP.js";import{I as R,p as j}from"./chunk-OP2PE3KG.js";import{C as I,R as P,a as S,aa as m,b,h as U,k as f,p as y,vb as g,xb as K,y as w}from"./chunk-TBMJSIBB.js";var C=class{static compareMirrorEventsAsc(n,e){let t=(n.sequence??0)-(e.sequence??0);if(t!==0)return t;let s=typeof n.timestamp=="string"?n.timestamp:"",o=typeof e.timestamp=="string"?e.timestamp:"",i=s.localeCompare(o);if(i!==0)return i;let r=typeof n.eventType=="string"?n.eventType:"",a=typeof e.eventType=="string"?e.eventType:"";return r.localeCompare(a)}};var v=class c{static messageIdsCompatibleForStreamMerge(n,e){let t=(n??"").trim(),s=(e??"").trim();return t.length>0&&s.length>0?t===s:!0}static parseStreamChunkFromMirrorData(n){let e=n.update;if(e===null||typeof e!="object"||Array.isArray(e))return null;let t=c.toPlainRecord(e),s=t.sessionUpdate,o=null;if(s==="agent_message_chunk"&&(o="agent"),s==="user_message_chunk"&&(o="user"),s==="agent_thought_chunk"&&(o="thought"),o===null)return null;let i=t.content;if(i===null||typeof i!="object"||Array.isArray(i))return null;let a=c.toPlainRecord(i).text;if(typeof a!="string"||!a.length)return null;let l=t.messageId,d=typeof l=="string"&&l.length>0?l:void 0;return{role:o,text:a,messageId:d}}static canMergeConsoleTailWithChunk(n){let e=n.prev;if(e.streamTextRole===void 0||e.streamTextRole!==n.parsed.role)return!1;let t=e.streamMessageId,s=n.parsed.messageId;if(!c.messageIdsCompatibleForStreamMerge(t,s))return!1;let o=n.ev.sequence??0,i=e.streamLastSequence??0;return!(o<=i)}static canMergeMirrorChunkEvents(n,e,t){let s=c.parseStreamChunkFromMirrorData(n.data??{});if(s===null||s.role!==t.role)return!1;let o=s.messageId,i=t.messageId;if(!c.messageIdsCompatibleForStreamMerge(o,i))return!1;let r=n.sequence??0;return!((e.sequence??0)<=r)}static foldEventsToTimelineRows(n){let e=[];for(let t of n){let s=c.parseStreamChunkFromMirrorData(t.data??{});if(s!==null){let o=e.length>0?e[e.length-1]:void 0,i=o!==void 0&&o.events.length>0?o.events[o.events.length-1]:void 0;if(o!==void 0&&i!==void 0&&c.canMergeMirrorChunkEvents(i,t,s)){let r=[...o.events,t];e[e.length-1]={rowKey:c.mergedTimelineRowKey(r),events:r}}else e.push({rowKey:`evt-${String(t.sequence??0)}`,events:[t]})}else e.push({rowKey:`evt-${String(t.sequence??0)}`,events:[t]})}return e}static mergedTimelineRowKey(n){if(!n.length)return"evt-empty";let e=n[0].sequence??0,t=n[n.length-1].sequence??0;return`merged-chunk-${String(e)}-${String(t)}`}static toPlainRecord(n){let e={};for(let t of Object.keys(n))e[t]=Reflect.get(n,t);return e}};var M=U(j());var x=class c{static prettyStringifyUnknown(n){try{let e=c.expandEmbeddedJsonStrings(n);return JSON.stringify(e,null,2)}catch{return n==null?String(n):typeof n=="object"?"[Object stringify failed]":String(n)}}static expandEmbeddedJsonStrings(n){if(n==null)return n;if(typeof n=="string"){let t=n;if(!F.looksLikeJson(t))return t;try{let s=JSON.parse(t.trim());return c.expandEmbeddedJsonStrings(s)}catch{return t}}if(typeof n!="object")return n;if(Array.isArray(n))return n.map(t=>c.expandEmbeddedJsonStrings(t));let e={};for(let t of Object.keys(n)){let s=Reflect.get(n,t);e[t]=c.expandEmbeddedJsonStrings(s)}return e}};var T=class c{static buildFromMirrorEvent(n){let e=n.sequence??0,t=n.data!==void 0?n.data:{},s=typeof n.eventType=="string"?n.eventType:"";return s==="prompt-sent"?c.buildPromptSentBrief(e,t):s==="ca-session-update"?c.buildCaSessionUpdateBrief(e,t):c.buildGenericBrief(s,e,t)}static extractSessionUpdateKind(n){let e=n.update;if(e===null||typeof e!="object"||Array.isArray(e))return;let s=c.toPlainRecord(e).sessionUpdate;return typeof s=="string"&&s.length?s:void 0}static buildPromptSentBrief(n,e){let t=e.content;return typeof t!="string"||!t.length?null:{listKey:`mirror-prompt-${String(n)}`,consoleType:"prompt",bodyText:t,mirrorEventType:"prompt-sent",useRawBubbleKind:!1,rawData:e}}static buildCaSessionUpdateBrief(n,e){let t=v.parseStreamChunkFromMirrorData(e);if(t!==null){let o=c.extractSessionUpdateKind(e),i=t.role==="thought";return{listKey:`mirror-chunk-${String(n)}`,consoleType:i?"thinking":"assistant",bodyText:t.text,mirrorEventType:"ca-session-update",briefSubtype:o,useRawBubbleKind:!1,rawData:e,isStreamingTextChunk:!0,streamTextRole:t.role,streamMessageId:t.messageId}}let s=x.prettyStringifyUnknown(e);return{listKey:`mirror-ca-session-update-${String(n)}`,consoleType:"info",bodyText:s,mirrorEventType:"ca-session-update",useRawBubbleKind:!0,rawData:e}}static buildGenericBrief(n,e,t){let s=c.safeListKeySegment(n),o={eventType:n.length?n:"unknown",sequence:e,data:t},i=x.prettyStringifyUnknown(o);return{listKey:`mirror-${s}-${String(e)}`,consoleType:"info",bodyText:i,mirrorEventType:n.length?n:"unknown",useRawBubbleKind:!0,rawData:t}}static safeListKeySegment(n){let e=n.replace(/[^a-zA-Z0-9_-]+/g,"_").replace(/^_+|_+$/g,"");return e.length?e:"event"}static toPlainRecord(n){let e={};for(let t of Object.keys(n))e[t]=Reflect.get(n,t);return e}};var u=class c{static listKeyStart(n){return`ca-tc-${n}-start`}static listKeyProgress(n){return`ca-tc-${n}-progress`}static listKeyResult(n){return`ca-tc-${n}-result`}static listKeyError(n){return`ca-tc-${n}-error`}static tryParseStableListKey(n){let e="ca-tc-";if(!n.startsWith(e))return null;let t=[{suffix:"-progress",role:"progress"},{suffix:"-start",role:"start"},{suffix:"-result",role:"result"},{suffix:"-error",role:"error"}];for(let s of t){if(!n.endsWith(s.suffix))continue;let o=n.slice(e.length,n.length-s.suffix.length);return o.length?{toolCallId:o,role:s.role}:null}return null}static tryParseMirrorData(n){let e=n.update;if(e===null||typeof e!="object"||Array.isArray(e))return null;let t=c.toPlainRecord(e),s=t.sessionUpdate;if(s!=="tool_call"&&s!=="tool_call_update")return null;let o=t.toolCallId;if(typeof o!="string"||!o.trim().length)return null;let i=t.status,r=typeof i=="string"?i:"",a=t.title,l=typeof a=="string"&&a.trim().length?a.trim():void 0,d=t.kind,h=typeof d=="string"&&d.trim().length?d.trim():void 0,p=t.rawOutput,E=t.rawInput,_=t.content,$=t.locations;return{sessionUpdate:s,toolCallId:o.trim(),status:r,title:l,toolKind:h,rawOutput:p!==void 0?p:void 0,rawInput:E!==void 0?E:void 0,content:Array.isArray(_)&&_.length?_:void 0,locations:Array.isArray($)&&$.length?$:void 0}}static hasRawOutputError(n){if(n===null||typeof n!="object"||Array.isArray(n))return!1;let e=c.toPlainRecord(n);return Object.prototype.hasOwnProperty.call(e,"error")}static summarizeRawOutputError(n){if(n===null||typeof n!="object"||Array.isArray(n))return"Tool call failed";let t=c.toPlainRecord(n).error;if(typeof t=="string"&&t.trim().length)return t.trim();try{return JSON.stringify(n)}catch{return"Tool call failed"}}static summarizeRawOutputSuccess(n){if(n===void 0)return"Completed";try{let e=JSON.stringify(n),t=400;return e.length>t?`${e.substring(0,t)}\u2026`:e}catch{return"Completed"}}static formatRawInput(n){if(n==null)return"";try{return JSON.stringify(n,null,2)}catch{return String(n)}}static formatLocations(n){if(!n?.length)return"";let e=[];for(let t of n){if(t===null||typeof t!="object"||Array.isArray(t))continue;let s=c.toPlainRecord(t),o=s.path;if(typeof o!="string"||!o.length)continue;let i=s.line,r=typeof i=="number"?`:${i}`:"";e.push(`${o}${r}`)}return e.join(`
|
|
2
2
|
`)}static formatContent(n){if(!n?.length)return"";let e=[];for(let t of n){if(t===null||typeof t!="object"||Array.isArray(t))continue;let s=c.toPlainRecord(t),o=s.type;if(o==="diff"){let i=s.path,r=s.oldText,a=s.newText,d=[`--- ${typeof i=="string"?i:"(unknown)"}`];typeof r=="string"&&r.length&&d.push(`- ${r.substring(0,500)}${r.length>500?"\u2026":""}`),typeof a=="string"&&a.length&&d.push(`+ ${a.substring(0,500)}${a.length>500?"\u2026":""}`),e.push(d.join(`
|
|
3
3
|
`))}else if(o==="terminal")try{e.push(`[terminal] ${JSON.stringify(s,null,2)}`)}catch{e.push("[terminal output]")}else if(o==="content"){let i=s.parts;if(Array.isArray(i)){for(let r of i)if(r!==null&&typeof r=="object"&&!Array.isArray(r)){let a=c.toPlainRecord(r);typeof a.text=="string"&&e.push(a.text)}}}}return e.join(`
|
|
4
4
|
|
|
5
5
|
`)}static toPlainRecord(n){let e={};for(let t of Object.keys(n))e[t]=Reflect.get(n,t);return e}};var L=(()=>{class c{baseUrl=`${R.api.baseUrl}/ca-session`;http=I(K);peiContext_DS=I(q);withCcapId(e){let t=this.peiContext_DS.activeCcapId_$();return t?e.set("ccapId",t):e}createSession(e){let t=this.withCcapId(new g);return y(this.http.post(this.baseUrl,e,{params:t}))}listSessions(e){let t=this.withCcapId(new g);return e?.status&&(t=t.set("status",e.status)),e?.workspacePath&&(t=t.set("workspacePath",e.workspacePath)),e?.includeArchived&&(t=t.set("includeArchived","1")),y(this.http.get(this.baseUrl,{params:t}))}syncFromAgent(e){let t=this.withCcapId(new g);return y(this.http.post(`${this.baseUrl}/sync`,{cwd:e?.cwd},{params:t}))}getSession(e){let t=this.withCcapId(new g);return y(this.http.get(`${this.baseUrl}/${e}`,{params:t}))}sendPrompt(e){let t=this.withCcapId(new g);return y(this.http.post(`${this.baseUrl}/${e.sessionId}/prompt`,{content:e.content},{params:t}))}stopExecution(e){let t=this.withCcapId(new g);return y(this.http.post(`${this.baseUrl}/${e}/stop-execution`,{},{params:t}))}terminateSession(e){let t=this.withCcapId(new g);return y(this.http.post(`${this.baseUrl}/${e}/terminate`,{},{params:t}))}setSessionArchived(e){let t=this.withCcapId(new g);return y(this.http.patch(`${this.baseUrl}/${e.sessionId}/archive`,{isArchived:e.isArchived},{params:t}))}getSessionEvents(e){let t=this.withCcapId(new g);return e.sinceSequence!=null&&(t=t.set("sinceSequence",String(e.sinceSequence))),e.limit!=null&&(t=t.set("limit",String(e.limit))),y(this.http.get(`${this.baseUrl}/${e.sessionId}/events`,{params:t}))}hydrateSession(e){return y(this.http.post(`${this.baseUrl}/${e.sessionId}/hydrate`,{force:e.force===!0},{params:this.withCcapId(new g)}))}static \u0275fac=function(t){return new(t||c)};static \u0275prov=w({token:c,factory:c.\u0275fac,providedIn:"root"})}return c})();var fe=(()=>{class c{sessions_$=m([]);sessionsLoading_$=m(!1);sessionsLoadError_$=m(null);selectedSession_$=m(null);selectedSessionLoading_$=m(!1);selectedSessionEvents_$=m([]);sessionEventsHasMore_$=m(!1);mirrorRuntime_$=m(null);consoleMessages_$=m([]);assembledMessages_$=m([]);lastStatusUpdate_$=m(null);activeSessionId_$=m("");sessionDetailError_$=m(null);caSession_AS=I(L);extSessionMsg_AS=I(O);globalError_CS=I(k);socket_CS=I(D);ngZone=I(P);eventSubscription=null;reconnectSubscription=null;lastKnownEventSequence=-1;openSessionPollTimer=null;openSessionPollTargetId="";pendingOptimisticPrompts=[];sessionEventsNextSince=null;constructor(){this.eventSubscription=this.socket_CS.event$.subscribe(e=>{this.handleSocketEvent(e)}),this.reconnectSubscription=this.socket_CS.connected$.subscribe(e=>{if(e){let t=this.activeSessionId_$();t&&(this.socket_CS.emit("ca-session:subscribe",{sessionId:t}),this.loadAssembledMessages({sessionId:t}).catch(()=>{}))}})}ngOnDestroy(){this.stopOpenSessionPolling(),this.eventSubscription?.unsubscribe(),this.reconnectSubscription?.unsubscribe()}loadSessions(e){return f(this,null,function*(){this.sessionsLoading_$.set(!0),this.sessionsLoadError_$.set(null);try{let t=yield this.caSession_AS.listSessions({includeArchived:e?.includeArchived}),s=t.sessions,i=(Array.isArray(s)?s:[]).map(E=>this.mapSessionRecord(this.toRecord(E)));this.sessions_$.set(i);let r=t.mirrorRuntime,a=this.toRecord(r),l=a.isAcpConnected,d=a.loadSessionSupported,h=a.isTerminalMode,p=a.isTerminalRunnerConnected;typeof l=="boolean"&&typeof d=="boolean"?this.mirrorRuntime_$.set({isAcpConnected:l,loadSessionSupported:d,isTerminalMode:h===!0,isTerminalRunnerConnected:p===!0}):this.mirrorRuntime_$.set(null)}catch(t){this.sessionsLoadError_$.set(t),this.globalError_CS.showError(t,"ca-session-list")}finally{this.sessionsLoading_$.set(!1)}})}syncFromAgent(e){return f(this,null,function*(){try{yield this.caSession_AS.syncFromAgent({cwd:e?.cwd}),yield this.loadSessions()}catch(t){throw this.globalError_CS.showError(t,"ca-session-sync"),t}})}loadSessionDetail(e){return f(this,null,function*(){this.sessionDetailError_$.set(null),this.selectedSessionLoading_$.set(!0);try{let s=(yield this.caSession_AS.getSession(e.sessionId)).session;this.selectedSession_$.set(this.mapSessionRecord(s)),this.sessionEventsNextSince=null,this.sessionEventsHasMore_$.set(!1);let o=yield this.caSession_AS.getSessionEvents({sessionId:e.sessionId,limit:200}),i=o.events.map(a=>({sessionId:typeof a.sessionId=="string"?a.sessionId:e.sessionId,eventType:typeof a.eventType=="string"?a.eventType:"",timestamp:typeof a.timestamp=="string"?a.timestamp:"",data:this.asRecord(a.data),sequence:typeof a.sequence=="number"?a.sequence:0}));this.selectedSessionEvents_$.set(i),this.sessionEventsHasMore_$.set(o.hasMore===!0);let r=o.nextSinceSequence;return this.sessionEventsNextSince=typeof r=="number"?r:null,this.lastKnownEventSequence=Math.max(-1,...this.selectedSessionEvents_$().map(a=>a.sequence??0)),this.seedConsoleFromMirrorEvents(i),this.loadAssembledMessages({sessionId:e.sessionId}).catch(()=>{}),!0}catch(t){return this.sessionDetailError_$.set(t),this.selectedSession_$.set(null),this.selectedSessionEvents_$.set([]),this.globalError_CS.showError(t,"ca-session-detail"),!1}finally{this.selectedSessionLoading_$.set(!1)}})}loadMoreSessionEvents(e){return f(this,null,function*(){let t=this.sessionEventsNextSince;if(t!=null)try{let s=yield this.caSession_AS.getSessionEvents({sessionId:e.sessionId,sinceSequence:t,limit:200}),o=s.events.map(a=>({sessionId:typeof a.sessionId=="string"?a.sessionId:e.sessionId,eventType:typeof a.eventType=="string"?a.eventType:"",timestamp:typeof a.timestamp=="string"?a.timestamp:"",data:this.asRecord(a.data),sequence:typeof a.sequence=="number"?a.sequence:0})),i=[...this.selectedSessionEvents_$(),...o];i.sort(C.compareMirrorEventsAsc),this.selectedSessionEvents_$.set(i),this.sessionEventsHasMore_$.set(s.hasMore===!0);let r=s.nextSinceSequence;this.sessionEventsNextSince=typeof r=="number"?r:null,this.lastKnownEventSequence=Math.max(this.lastKnownEventSequence,...o.map(a=>a.sequence??0))}catch(s){this.globalError_CS.showError(s,"ca-session-events-page")}})}hydrateFromAgent(e){return f(this,null,function*(){try{yield this.caSession_AS.hydrateSession({sessionId:e.sessionId,force:e.force})}catch(s){throw this.globalError_CS.showError(s,"ca-session-hydrate"),s}if(!(yield this.loadSessionDetail({sessionId:e.sessionId}))){let s=this.sessionDetailError_$();throw s instanceof Error?s:new Error("CA session detail reload after hydrate failed")}})}setActiveSessionId(e){let t=this.activeSessionId_$();t&&t!==e&&this.socket_CS.emit("ca-session:unsubscribe",{sessionId:t}),this.activeSessionId_$.set(e),e&&this.socket_CS.emit("ca-session:subscribe",{sessionId:e})}clearLiveOutput(){this.consoleMessages_$.set([]),this.lastKnownEventSequence=-1,this.pendingOptimisticPrompts.length=0}createSession(e){return f(this,null,function*(){try{let t=yield this.caSession_AS.createSession({workspacePath:e.workspacePath,label:e.label}),o=this.toRecord(t.session).sessionId,i=typeof o=="string"?o:"";return yield this.loadSessions(),i}catch(t){throw t}})}sendPrompt(e){return f(this,null,function*(){let t=`optimistic-prompt-${globalThis.crypto.randomUUID()}`;this.pendingOptimisticPrompts.push({listKey:t,text:e.content}),this.pushConsoleMessage({listKey:t,type:"prompt",text:e.content});try{yield this.caSession_AS.sendPrompt(e)}catch(s){let o=this.pendingOptimisticPrompts.findIndex(i=>i.listKey===t);throw o>=0&&this.pendingOptimisticPrompts.splice(o,1),this.pushConsoleMessage({type:"error",text:A.getErrorMessageForDisplay(s)}),this.globalError_CS.showError(s,"ca-session-prompt"),s}})}stopExecution(e){return f(this,null,function*(){try{yield this.caSession_AS.stopExecution(e)}catch(t){throw this.globalError_CS.showError(t,"ca-session-stop-execution"),t}})}terminateSession(e){return f(this,null,function*(){try{yield this.caSession_AS.terminateSession(e),yield this.loadSessions()}catch(t){throw this.globalError_CS.showError(t,"ca-session-terminate"),t}})}setSessionArchived(e){return f(this,null,function*(){try{let t=yield this.caSession_AS.setSessionArchived(e);yield this.loadSessions(),this.selectedSession_$()?.sessionId===e.sessionId&&t.session!==null&&typeof t.session=="object"&&this.selectedSession_$.set(this.mapSessionRecord(this.toRecord(t.session)))}catch(t){throw this.globalError_CS.showError(t,"ca-session-archive"),t}})}startOpenSessionPolling(e){if(this.stopOpenSessionPolling(),!e)return;this.openSessionPollTargetId=e;let t=10*M.second;this.openSessionPollTimer=globalThis.setInterval(()=>{this.runOpenSessionPollTick(e)},t)}stopOpenSessionPolling(){this.openSessionPollTimer!==null&&(globalThis.clearInterval(this.openSessionPollTimer),this.openSessionPollTimer=null),this.openSessionPollTargetId=""}pushConsoleMessage(e){let t=this.materializeConsoleLineFromPushParams({listKey:e.listKey,type:e.type,text:e.text,timestamp:e.timestamp??new Date().toISOString(),rawData:e.rawData,mirrorEventType:e.mirrorEventType,briefSubtype:e.briefSubtype,useRawBubbleKind:e.useRawBubbleKind,streamTextRole:e.streamTextRole,streamLastSequence:e.streamLastSequence,streamMessageId:e.streamMessageId,streamPartData:e.streamPartData,toolDisplayName:e.toolDisplayName,isToolCallFailedIndicator:e.isToolCallFailedIndicator}),s=this.consoleMessages_$();this.consoleMessages_$.set([...s,t])}appendConsoleMirrorEventOne(e){if(e.eventType==="ca-session-update"){let i=u.tryParseMirrorData(e.data??{});if(i!==null&&this.applyToolCallMirrorEventToLiveConsole({ev:e,parsed:i}))return}let t=T.buildFromMirrorEvent(e);if(t===null||(e.eventType==="prompt-sent"&&t.consoleType==="prompt"&&this.removePendingOptimisticPromptBubbleIfTextMatchesMirror(t.bodyText),this.consoleMessages_$().some(i=>i.listKey===t.listKey))||t.isStreamingTextChunk===!0&&this.tryMergeStreamingMirrorChunkIntoConsole({ev:e,brief:t}))return;let o=typeof e.timestamp=="string"&&e.timestamp.length?e.timestamp:new Date().toISOString();this.pushConsoleMessage(this.buildConsolePushParamsFromBrief({ev:e,brief:t,timestampIso:o}))}tryMergeStreamingMirrorChunkIntoConsole(e){let t=this.consoleMessages_$();if(t.length===0)return!1;let s=t[t.length-1],o=v.parseStreamChunkFromMirrorData(e.ev.data??{});if(o===null||!v.canMergeConsoleTailWithChunk({prev:s,ev:e.ev,parsed:o}))return!1;let i=s.streamPartData!==void 0?[...s.streamPartData]:[];i.push(e.ev.data??{});let r=e.brief.streamMessageId,a=r!==void 0&&r.trim().length>0?r.trim():s.streamMessageId,l=b(S({},s),{text:s.text+e.brief.bodyText,streamLastSequence:e.ev.sequence??s.streamLastSequence,streamMessageId:a,streamPartData:i,rawData:{streamMerged:!0,partCount:i.length,lastChunkSequence:e.ev.sequence,chunkSnapshots:i}}),d=[...t];return d[d.length-1]=l,this.consoleMessages_$.set(d),!0}buildConsolePushParamsFromBrief(e){let t=e.brief;return t.isStreamingTextChunk===!0?{listKey:t.listKey,type:t.consoleType,text:t.bodyText,timestamp:e.timestampIso,rawData:t.rawData,mirrorEventType:t.mirrorEventType,briefSubtype:t.briefSubtype,useRawBubbleKind:t.useRawBubbleKind,streamTextRole:t.streamTextRole,streamLastSequence:e.ev.sequence,streamMessageId:t.streamMessageId,streamPartData:[e.ev.data??{}]}:{listKey:t.listKey,type:t.consoleType,text:t.bodyText,timestamp:e.timestampIso,rawData:t.rawData,mirrorEventType:t.mirrorEventType,briefSubtype:t.briefSubtype,useRawBubbleKind:t.useRawBubbleKind}}buildFoldedConsoleMessagesFromMirrorEvents(e){let t=[];for(let s of e){if(this.tryFoldToolCallMirrorEventIntoOut(t,s))continue;let i=T.buildFromMirrorEvent(s);if(i===null)continue;let r=typeof s.timestamp=="string"&&s.timestamp.length?s.timestamp:new Date().toISOString();if(i.isStreamingTextChunk===!0){let a=v.parseStreamChunkFromMirrorData(s.data??{});if(a===null)continue;let l=t.length>0?t[t.length-1]:void 0;if(l!==void 0&&v.canMergeConsoleTailWithChunk({prev:l,ev:s,parsed:a})){let d=l.streamPartData!==void 0?[...l.streamPartData]:[];d.push(s.data??{});let h=i.streamMessageId,p=h!==void 0&&h.trim().length>0?h.trim():l.streamMessageId;t[t.length-1]=b(S({},l),{text:l.text+i.bodyText,streamLastSequence:s.sequence??l.streamLastSequence,streamMessageId:p,streamPartData:d,rawData:{streamMerged:!0,partCount:d.length,lastChunkSequence:s.sequence,chunkSnapshots:d}})}else t.push(this.materializeConsoleLineFromPushParams(this.buildConsolePushParamsFromBrief({ev:s,brief:i,timestampIso:r})))}else t.push(this.materializeConsoleLineFromPushParams(this.buildConsolePushParamsFromBrief({ev:s,brief:i,timestampIso:r})))}return t}materializeConsoleLineFromPushParams(e){return{listKey:e.listKey??globalThis.crypto.randomUUID(),type:e.type,text:e.text,timestamp:e.timestamp,rawData:e.rawData,mirrorEventType:e.mirrorEventType,briefSubtype:e.briefSubtype,useRawBubbleKind:e.useRawBubbleKind,streamTextRole:e.streamTextRole,streamLastSequence:e.streamLastSequence,streamMessageId:e.streamMessageId,streamPartData:e.streamPartData,toolDisplayName:e.toolDisplayName,isToolCallFailedIndicator:e.isToolCallFailedIndicator}}applyToolCallMirrorEventToLiveConsole(e){let t=e.parsed,s=t.toolCallId,o=typeof e.ev.timestamp=="string"&&e.ev.timestamp.length?e.ev.timestamp:new Date().toISOString(),i=e.ev.data??{};if(t.sessionUpdate==="tool_call"){let r=u.listKeyStart(s);if(this.consoleMessages_$().some(h=>h.listKey===r))return!0;let l=c.toolCallDisplayName(t),d=c.buildToolCallBodyText({displayName:l,parsed:t});return this.pushConsoleMessage({listKey:r,type:"tool",text:d,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call",toolDisplayName:l}),!0}if(t.sessionUpdate==="tool_call_update"&&t.status==="in_progress"){t.rawInput!==void 0&&this.patchLiveToolCallStartInput({toolCallId:s,parsed:t});let r=u.listKeyProgress(s),a="in_progress",l=this.consoleMessages_$(),d=l.findIndex(p=>p.listKey===r),h=this.materializeConsoleLineFromPushParams({listKey:r,type:"status-update",text:a,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"});if(d>=0){let p=[...l];p[d]=h,this.consoleMessages_$.set(p)}else this.consoleMessages_$.set([...l,h]);return!0}if(t.sessionUpdate==="tool_call_update"&&t.status==="completed"){if(u.hasRawOutputError(t.rawOutput)){let d=u.listKeyError(s);if(!this.consoleMessages_$().some(p=>p.listKey===d)){let p=u.summarizeRawOutputError(t.rawOutput);this.pushConsoleMessage({listKey:d,type:"error",text:p,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"}),this.patchLiveConsoleToolCallStartFailed({toolCallId:s})}return!0}let a=u.listKeyResult(s);if(!this.consoleMessages_$().some(d=>d.listKey===a)){let d=u.summarizeRawOutputSuccess(t.rawOutput);this.pushConsoleMessage({listKey:a,type:"tool-result",text:d,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"})}return!0}return!1}tryFoldToolCallMirrorEventIntoOut(e,t){if(t.eventType!=="ca-session-update")return!1;let s=u.tryParseMirrorData(t.data??{});if(s===null)return!1;let o=typeof t.timestamp=="string"&&t.timestamp.length?t.timestamp:new Date().toISOString(),i=t.data??{};if(s.sessionUpdate==="tool_call"){let r=u.listKeyStart(s.toolCallId);if(!e.some(l=>l.listKey===r)){let l=c.toolCallDisplayName(s),d=c.buildToolCallBodyText({displayName:l,parsed:s});e.push(this.materializeConsoleLineFromPushParams({listKey:r,type:"tool",text:d,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call",toolDisplayName:l}))}return!0}if(s.sessionUpdate==="tool_call_update"&&s.status==="in_progress"){s.rawInput!==void 0&&c.patchOutArrayToolCallStartInput(e,s);let r=u.listKeyProgress(s.toolCallId),a=this.materializeConsoleLineFromPushParams({listKey:r,type:"status-update",text:"in_progress",timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"}),l=e.findIndex(d=>d.listKey===r);return l>=0?e[l]=a:e.push(a),!0}if(s.sessionUpdate==="tool_call_update"&&s.status==="completed"){if(u.hasRawOutputError(s.rawOutput)){let d=u.listKeyError(s.toolCallId);if(!e.some(p=>p.listKey===d)){let p=u.summarizeRawOutputError(s.rawOutput);e.push(this.materializeConsoleLineFromPushParams({listKey:d,type:"error",text:p,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"})),c.patchOutArrayToolCallStartFailed(e,s.toolCallId)}return!0}let a=u.listKeyResult(s.toolCallId);if(!e.some(d=>d.listKey===a)){let d=u.summarizeRawOutputSuccess(s.rawOutput);e.push(this.materializeConsoleLineFromPushParams({listKey:a,type:"tool-result",text:d,timestamp:o,rawData:i,mirrorEventType:"ca-session-update",briefSubtype:"tool_call_update"}))}return!0}return!1}patchLiveToolCallStartInput(e){let t=u.listKeyStart(e.toolCallId),s=this.consoleMessages_$(),o=s.findIndex(l=>l.listKey===t);if(o<0)return;let i=s[o].toolDisplayName??"Tool call",r=c.buildToolCallBodyText({displayName:i,parsed:e.parsed}),a=[...s];a[o]=b(S({},a[o]),{text:r}),this.consoleMessages_$.set(a)}patchLiveConsoleToolCallStartFailed(e){let t=u.listKeyStart(e.toolCallId),s=this.consoleMessages_$(),o=s.findIndex(r=>r.listKey===t);if(o<0)return;let i=[...s];i[o]=b(S({},i[o]),{isToolCallFailedIndicator:!0}),this.consoleMessages_$.set(i)}static patchOutArrayToolCallStartFailed(e,t){let s=u.listKeyStart(t),o=e.findIndex(i=>i.listKey===s);o<0||(e[o]=b(S({},e[o]),{isToolCallFailedIndicator:!0}))}static patchOutArrayToolCallStartInput(e,t){let s=u.listKeyStart(t.toolCallId),o=e.findIndex(a=>a.listKey===s);if(o<0)return;let i=e[o].toolDisplayName??"Tool call",r=c.buildToolCallBodyText({displayName:i,parsed:t});e[o]=b(S({},e[o]),{text:r})}static toolCallDisplayName(e){return e.title!==void 0&&e.title.length?e.title:e.toolKind!==void 0&&e.toolKind.length?e.toolKind:"Tool call"}static buildToolCallBodyText(e){let t=[e.displayName],s=u.formatRawInput(e.parsed.rawInput);s.length&&t.push(s);let o=u.formatLocations(e.parsed.locations);return o.length&&t.push(`[locations]
|
|
6
6
|
${o}`),t.join(`
|
|
7
7
|
`)}runOpenSessionPollTick(e){return f(this,null,function*(){if(!(e!==this.activeSessionId_$()||e!==this.openSessionPollTargetId))try{let t=yield this.caSession_AS.getSession(e);this.ngZone.run(()=>{e===this.activeSessionId_$()&&this.selectedSession_$.set(this.mapSessionRecord(this.toRecord(t.session)))});let s=this.lastKnownEventSequence,i=(yield this.caSession_AS.getSessionEvents({sessionId:e,sinceSequence:s>=0?s:void 0,limit:200})).events.map(r=>({sessionId:typeof r.sessionId=="string"?r.sessionId:e,eventType:typeof r.eventType=="string"?r.eventType:"",timestamp:typeof r.timestamp=="string"?r.timestamp:"",data:this.asRecord(r.data),sequence:typeof r.sequence=="number"?r.sequence:0}));if(!i.length)return;this.ngZone.run(()=>{if(e!==this.activeSessionId_$())return;let r=new Map;for(let l of this.selectedSessionEvents_$())r.set(l.sequence??0,l);for(let l of i)r.set(l.sequence??0,l);let a=[...r.values()].sort(C.compareMirrorEventsAsc);this.selectedSessionEvents_$.set(a);for(let l of i)(l.sequence??0)>s&&this.appendConsoleMirrorEventOne(l);this.lastKnownEventSequence=Math.max(s,...i.map(l=>l.sequence??0))})}catch{}})}handleSocketEvent(e){let t=e.event,s=e.payload;try{this.ngZone.run(()=>{switch(t){case"ca-session:status":this.handleStatusUpdate(s);break;case"ca-session:output":this.handleOutputChunk(s);break;case"ca-session:event":this.handleSessionEvent(s);break;case"ca-session:list-update":this.loadSessions().catch(()=>{});break;case"ext-session-msg:message":this.handleAssembledMessage(s);break;case"ext-session-msg:update":this.handleAssembledMessageUpdate(s);break;default:break}})}catch(o){M.DyFM_Log.error(`CCAP_CaSession_DS | socket error | ${t}`,o)}}handleStatusUpdate(e){let t=typeof e.sessionId=="string"?e.sessionId:"",s=typeof e.status=="string"?e.status:"",o=typeof e.statusMessage=="string"?e.statusMessage:void 0;this.lastStatusUpdate_$.set({sessionId:t,status:s,statusMessage:o});let i=this.sessions_$();this.sessions_$.set(i.map(a=>a.sessionId===t?b(S({},a),{status:s,statusMessage:o}):a));let r=this.selectedSession_$();r?.sessionId===t&&this.selectedSession_$.set(b(S({},r),{status:s,statusMessage:o})),s==="errored"&&this.globalError_CS.showError(new Error(o?`CA session error: ${o}`:"CA session errored"),"ca-session-status")}handleOutputChunk(e){let t=typeof e.sessionId=="string"?e.sessionId:"";if(t&&t!==this.activeSessionId_$())return;let s=typeof e.content=="string"?e.content:"",o=typeof e.type=="string"?e.type:"response";if(s){let i={};for(let r of Object.keys(e))i[r]=Reflect.get(e,r);this.pushConsoleMessage({type:o==="error"?"error":"assistant",text:s,rawData:i,mirrorEventType:"ca-session:output"})}}handleSessionEvent(e){let t=typeof e.sessionId=="string"?e.sessionId:"";if(t&&t!==this.activeSessionId_$())return;let s=this.asRecord(e.event),o=typeof s.sequence=="number"?s.sequence:0;if(o<=this.lastKnownEventSequence)return;this.lastKnownEventSequence=o;let i=s.timestamp,r={sessionId:t,eventType:typeof s.eventType=="string"?s.eventType:"",timestamp:typeof i=="string"&&i.length?i:new Date().toISOString(),data:this.asRecord(s.data),sequence:o},a=this.selectedSessionEvents_$();this.selectedSessionEvents_$.set([...a,r]),this.appendConsoleMirrorEventOne(r)}seedConsoleFromMirrorEvents(e){this.pendingOptimisticPrompts.length=0;let t=[...e].sort(C.compareMirrorEventsAsc);this.consoleMessages_$.set(this.buildFoldedConsoleMessagesFromMirrorEvents(t))}removePendingOptimisticPromptBubbleIfTextMatchesMirror(e){let t=this.pendingOptimisticPrompts.findIndex(i=>i.text===e||i.text.trim()===e.trim());if(t<0)return;let s=this.pendingOptimisticPrompts[t];this.pendingOptimisticPrompts.splice(t,1);let o=this.consoleMessages_$().filter(i=>i.listKey!==s.listKey);this.consoleMessages_$.set(o)}mapSessionRecord(e){return{sessionId:typeof e.sessionId=="string"?e.sessionId:void 0,acpSessionId:typeof e.acpSessionId=="string"?e.acpSessionId:void 0,label:typeof e.label=="string"?e.label:void 0,workspacePath:typeof e.workspacePath=="string"?e.workspacePath:void 0,status:typeof e.status=="string"?e.status:void 0,statusMessage:typeof e.statusMessage=="string"?e.statusMessage:void 0,promptCount:typeof e.promptCount=="number"?e.promptCount:void 0,lastPrompt:typeof e.lastPrompt=="string"?e.lastPrompt:void 0,lastActivityAt:typeof e.lastActivityAt=="string"?e.lastActivityAt:void 0,isArchived:e.isArchived===!0,parentSessionId:typeof e.parentSessionId=="string"?e.parentSessionId:void 0,lastSyncAt:typeof e.lastSyncAt=="string"?e.lastSyncAt:void 0,lastSyncError:typeof e.lastSyncError=="string"?e.lastSyncError:void 0,agentInfoName:typeof e.agentInfoName=="string"?e.agentInfoName:void 0,agentInfoVersion:typeof e.agentInfoVersion=="string"?e.agentInfoVersion:void 0,isAcpConnected:typeof e.isAcpConnected=="boolean"?e.isAcpConnected:void 0,loadSessionSupported:typeof e.loadSessionSupported=="boolean"?e.loadSessionSupported:void 0,isTerminalMode:typeof e.isTerminalMode=="boolean"?e.isTerminalMode:void 0,isTerminalRunnerConnected:typeof e.isTerminalRunnerConnected=="boolean"?e.isTerminalRunnerConnected:void 0}}asRecord(e){return this.toRecord(e)}toRecord(e){if(e!==null&&typeof e=="object"&&!Array.isArray(e)){let t={};for(let s of Object.keys(e))t[s]=Reflect.get(e,s);return t}return{}}loadAssembledMessages(e){return f(this,null,function*(){try{let t=yield this.extSessionMsg_AS.getMessages({sessionId:e.sessionId,latest:!0});this.assembledMessages_$.set(t.messages)}catch(t){M.DyFM_Log.error(`CCAP_CaSession_DS | loadAssembledMessages failed | sessionId: ${e.sessionId}`,t)}})}handleAssembledMessage(e){let t=typeof e.sessionId=="string"?e.sessionId:"";if(!t||t!==this.activeSessionId_$())return;let s=e.message;if(!s||typeof s!="object")return;let o=s,i=this.assembledMessages_$();this.assembledMessages_$.set([...i,o])}handleAssembledMessageUpdate(e){let t=typeof e.sessionId=="string"?e.sessionId:"";if(!t||t!==this.activeSessionId_$())return;let s=typeof e.messageKey=="string"?e.messageKey:"";if(!s)return;let o=e.update;if(!o||typeof o!="object")return;let i=o,r=this.assembledMessages_$(),a=r.findIndex(h=>h.messageKey===s);if(a<0)return;let l=S({},r[a]);typeof i.bodyText=="string"&&(l.bodyText=i.bodyText),i.toolResult!==void 0&&(l.toolResult=i.toolResult),typeof i.toolStatus=="string"&&(l.toolStatus=i.toolStatus),i.headerStatusDot!==void 0&&(l.headerStatusDot=typeof i.headerStatusDot=="string"?i.headerStatusDot:void 0);let d=[...r];d[a]=l,this.assembledMessages_$.set(d)}static \u0275fac=function(t){return new(t||c)};static \u0275prov=w({token:c,factory:c.\u0275fac,providedIn:"root"})}return c})();export{C as a,v as b,x as c,u as d,fe as e};
|
|
8
|
-
//# sourceMappingURL=chunk-
|
|
8
|
+
//# sourceMappingURL=chunk-26DXMUXV.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as C}from"./chunk-ETSUU22G.js";import{aa as f,h as p,k as h,y as m}from"./chunk-TBMJSIBB.js";var a=function(o){return o.stopped="stopped",o.standby="standby",o.running="running",o}(a||{});var k={navigator_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 k\xF6rnyezet nem t\xE1mogatja a navigator API-t.",media_devices_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 ezen az oldalon nem ad hozz\xE1f\xE9r\xE9st a mikrofonhoz.",secure_context_required:"A hangfelv\xE9tel ezen az oldalon nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 csak biztons\xE1gos kapcsolatban (HTTPS vagy localhost) enged\xE9lyezi a mikrofont."},v={media_devices_unavailable:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on.",secure_context_required:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on."},d=class{static wrapGetUserMediaError(s){if(s instanceof Error&&"code"in s&&typeof s.code=="string"&&s.code.startsWith("CCAP_"))return s;let e=s instanceof DOMException||s instanceof Error?s.name:"UnknownError",t,i;switch(e){case"NotAllowedError":t="CCAP_MIC_PERMISSION_DENIED",i="Microphone access denied by user or browser policy";break;case"NotFoundError":t="CCAP_MIC_NOT_FOUND",i="No microphone device found on this device";break;case"NotReadableError":t="CCAP_MIC_NOT_READABLE",i="Microphone hardware error or device already in use by another application";break;case"OverconstrainedError":t="CCAP_MIC_OVERCONSTRAINED",i="Microphone does not support the requested audio constraints";break;case"AbortError":t="CCAP_MIC_ABORTED",i="Microphone access request was aborted by the system";break;case"SecurityError":t="CCAP_MIC_SECURITY_ERROR",i="Microphone access blocked by document security policy (Permissions-Policy / iframe)";break;default:t="CCAP_MIC_UNKNOWN_ERROR",i=`getUserMedia failed with ${e}`;break}let n=new Error(i);return n.code=t,n.cause=s,n}static getGetUserMediaErrorMessage(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"A mikrofon haszn\xE1lata nem enged\xE9lyezett: a b\xF6ng\xE9sz\u0151 vagy a felhaszn\xE1l\xF3 megtagadta a hozz\xE1f\xE9r\xE9st.";case"NotFoundError":return"Nem tal\xE1lhat\xF3 mikrofon ezen az eszk\xF6z\xF6n.";case"NotReadableError":return"A mikrofon nem olvashat\xF3: hardverhiba vagy egy m\xE1sik alkalmaz\xE1s haszn\xE1lja.";case"OverconstrainedError":return"A mikrofon nem t\xE1mogatja a k\xE9rt audio be\xE1ll\xEDt\xE1sokat.";case"AbortError":return"A mikrofon-hozz\xE1f\xE9r\xE9si k\xE9r\xE9s megszakadt.";case"SecurityError":return"A mikrofon-hozz\xE1f\xE9r\xE9st a biztons\xE1gi szab\xE1lyzat (Permissions-Policy / iframe) blokkolta.";default:return"A mikrofon el\xE9r\xE9se sikertelen (ismeretlen hiba)."}}static getGetUserMediaErrorHint(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"Enged\xE9lyezd a mikrofont a b\xF6ng\xE9sz\u0151 c\xEDmsor\xE1ban (lakat ikon \u2192 Mikrofon \u2192 Enged\xE9lyez\xE9s), majd pr\xF3b\xE1ld \xFAjra. Androidon: Be\xE1ll\xEDt\xE1sok \u2192 Alkalmaz\xE1sok \u2192 Chrome \u2192 Enged\xE9lyek \u2192 Mikrofon.";case"NotReadableError":return"Z\xE1rd be a mikrofont haszn\xE1l\xF3 m\xE1sik alkalmaz\xE1st (pl. vide\xF3h\xEDv\xE1s, diktafon), majd pr\xF3b\xE1ld \xFAjra.";case"SecurityError":return'Ha az alkalmaz\xE1s iframe-ben fut, az iframe-nek "allow=microphone" attrib\xFAtumra van sz\xFCks\xE9ge.';default:return""}}static getMediaRecordingAvailability(){return typeof navigator>"u"?{supported:!1,reason:"navigator_unavailable"}:typeof window<"u"&&window.isSecureContext===!1?{supported:!1,reason:"secure_context_required"}:navigator.mediaDevices==null?{supported:!1,reason:"media_devices_unavailable"}:{supported:!0}}static getMediaUnavailableReportMessage(s){return`Media recording not available (reason: ${s}). Use HTTPS or localhost for microphone access.`}static getMediaUnavailableHint(s){return v[s]??""}static getMediaUnavailableMessage(s){return k[s]??"A hangfelv\xE9tel nem el\xE9rhet\u0151 ezen az oldalon."}};var r=p(C());var A=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/ogg","audio/mp4"],z=(()=>{class o{volumeGate=.05;silenceTimeLimitMs=5*r.second;timesliceMs=5*r.second;segmentMaxChunks=6;segmentSoftFlushMinChunks=4;getUserMediaTimeoutMs=15*r.second;state_$=f(a.stopped);mediaStream=null;mediaRecorder=null;audioContext=null;analyser=null;audioSourceNode=null;volumeAnimationId=null;chunkIndex=0;chunks=[];isRestartingForFlush=!1;selectedMime="";onChunkCb=null;onVolumeCb=null;onErrorCb=null;deviceChangeHandler=null;silenceStartTime=null;setOnChunk(e){this.onChunkCb=e}setOnVolume(e){this.onVolumeCb=e}setOnError(e){this.onErrorCb=e}selectMime(){for(let e of A)if(MediaRecorder.isTypeSupported(e))return e;return"audio/webm"}getExtension(){return this.selectedMime.startsWith("audio/webm")?"webm":this.selectedMime.startsWith("audio/ogg")?"ogg":this.selectedMime.startsWith("audio/mp4")?"mp4":"webm"}startListening(){return h(this,null,function*(){if(this.state_$()===a.stopped)try{let e=d.getMediaRecordingAvailability();if(!e.supported){let n=`Media recording not available (reason: ${e.reason??"unknown"})`,l=new Error(n);throw l.code="CCAP_MEDIA_NOT_AVAILABLE",l}let t=null;try{let n=navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),l=new Promise((c,g)=>{t=setTimeout(()=>{let u=new Error(`getUserMedia timed out after ${this.getUserMediaTimeoutMs}ms`);u.code="CCAP_MIC_TIMEOUT",g(u)},this.getUserMediaTimeoutMs)});this.mediaStream=yield Promise.race([n,l])}catch(n){throw d.wrapGetUserMediaError(n)}finally{t!==null&&clearTimeout(t)}let i=this.mediaStream.getAudioTracks()[0];i&&(r.DyFM_Log.info("[CCAP] mic track settings",i.getSettings()),i.onended=()=>{r.DyFM_Log.info("[CCAP] mic track ended unexpectedly"),this.stopListening(),this.onErrorCb?.(new Error("Microphone track ended unexpectedly (device disconnected?)"))}),this.registerDeviceChangeListener(),this.selectedMime=this.selectMime(),this.startVolumeLoop(),this.state_$.set(a.standby)}catch(e){throw this.state_$.set(a.stopped),e}})}stopListening(){let e=this.state_$()===a.running;e&&this.stopCapture(!0),this.stopVolumeLoop(),e||this.stopMediaRecorder(),this.silenceStartTime=null,this.unregisterDeviceChangeListener(),this.mediaStream&&(this.mediaStream.getTracks().forEach(t=>t.stop()),this.mediaStream=null),this.state_$.set(a.stopped)}startCapture(){return h(this,null,function*(){try{if(this.mediaStream==null&&(yield this.startListening()),this.mediaStream==null)return;this.silenceStartTime=null,this.chunks=[],this.createAndStartRecorder(),this.state_$.set(a.running)}catch(e){this.stopVolumeLoop(),this.state_$.set(a.stopped),this.onErrorCb?.(e)}})}stopCapture(e=!1,t=!1){if(this.isRestartingForFlush=!1,!(this.mediaRecorder==null||this.state_$()!==a.running)){try{this.mediaRecorder.stop()}catch(i){r.DyFM_Log.info("[CCAP] mediaRecorder.stop() failed (likely already inactive)",i),this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}if(t){this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}this.mediaRecorder.onstop=()=>{this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped)}}}createAndStartRecorder(){this.mediaStream&&(this.mediaRecorder=new MediaRecorder(this.mediaStream,{mimeType:this.selectedMime,audioBitsPerSecond:128e3}),this.mediaRecorder.ondataavailable=e=>{if(e.data.size>0&&this.chunks.push(e.data),this.state_$()!==a.running||this.isRestartingForFlush)return;let t=this.chunks.length>=this.segmentMaxChunks,i=this.chunks.length>=this.segmentSoftFlushMinChunks&&this.silenceStartTime!==null;(t||i)&&this.restartRecorderForFlush()},this.mediaRecorder.start(this.timesliceMs))}restartRecorderForFlush(){if(!(!this.mediaRecorder||this.mediaRecorder.state==="inactive")){this.isRestartingForFlush=!0,this.silenceStartTime=null,r.DyFM_Log.info("[CCAP] restartRecorderForFlush: stopping current recorder for mid-recording flush"),this.mediaRecorder.onstop=()=>{this.isRestartingForFlush=!1,this.mediaRecorder=null;let e=this.chunks.length;if(this.flushChunksAsSegment(!1),r.DyFM_Log.info(`[CCAP] restartRecorderForFlush: flushed ${e} chunks as segment`),this.state_$()!==a.running||!this.mediaStream){r.DyFM_Log.info("[CCAP] restartRecorderForFlush: not restarting (state changed or no stream)");return}this.createAndStartRecorder(),r.DyFM_Log.info("[CCAP] restartRecorderForFlush: new recorder started for next segment")};try{this.mediaRecorder.stop()}catch{this.isRestartingForFlush=!1,this.mediaRecorder=null,this.flushChunksAsSegment(!1)}}}flushChunksAsSegment(e){if(this.chunks.length===0)return;let t=new Blob(this.chunks,{type:this.selectedMime}),i={mimeType:this.selectedMime,filename:`audio-${Date.now()}.${this.getExtension()}`,chunkIndex:this.chunkIndex++,isFinal:e};this.chunks=[],this.onChunkCb?.(t,i)}startVolumeLoop(){if(this.mediaStream==null||this.onVolumeCb==null)return;this.audioContext=new AudioContext,this.audioContext.state==="suspended"&&this.audioContext.resume().catch(()=>{}),this.audioContext.onstatechange=()=>{let i=this.audioContext?.state??"unknown";r.DyFM_Log.info("[CCAP] AudioContext state changed:",i),i==="suspended"&&this.state_$()!==a.stopped&&this.audioContext?.resume().catch(()=>{})},this.audioSourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.analyser=this.audioContext.createAnalyser(),this.analyser.fftSize=2048,this.analyser.smoothingTimeConstant=.8,this.audioSourceNode.connect(this.analyser);let e=new Float32Array(this.analyser.fftSize),t=()=>{if(this.analyser==null||this.onVolumeCb==null)return;this.analyser.getFloatTimeDomainData(e);let i=0;for(let c=0;c<e.length;c++)i+=Math.abs(e[c]);let n=i/e.length;this.onVolumeCb(n);let l=this.state_$();if(l===a.standby&&n>=this.volumeGate){this.startCapture(),this.volumeAnimationId=requestAnimationFrame(t);return}l===a.running&&!this.isRestartingForFlush&&(n<this.volumeGate?this.silenceStartTime===null?this.silenceStartTime=Date.now():Date.now()-this.silenceStartTime>=this.silenceTimeLimitMs&&(this.stopCapture(),this.silenceStartTime=null):this.silenceStartTime=null),this.volumeAnimationId=requestAnimationFrame(t)};t()}stopVolumeLoop(){this.volumeAnimationId!=null&&(cancelAnimationFrame(this.volumeAnimationId),this.volumeAnimationId=null),this.audioSourceNode=null,this.audioContext!=null&&(this.audioContext.onstatechange=null,this.audioContext.close().catch(()=>{}),this.audioContext=null),this.analyser=null}stopMediaRecorder(){if(this.mediaRecorder!=null&&this.mediaRecorder.state!=="inactive"){try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null}this.chunks=[],this.isRestartingForFlush=!1}registerDeviceChangeListener(){try{this.deviceChangeHandler=()=>{r.DyFM_Log.info("[CCAP] media device change detected")},navigator.mediaDevices.addEventListener("devicechange",this.deviceChangeHandler)}catch{this.deviceChangeHandler=null}}unregisterDeviceChangeListener(){if(this.deviceChangeHandler){try{navigator.mediaDevices.removeEventListener("devicechange",this.deviceChangeHandler)}catch{}this.deviceChangeHandler=null}}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{a,d as b,z as c};
|
|
2
|
-
//# sourceMappingURL=chunk-
|
|
1
|
+
import{p as C}from"./chunk-OP2PE3KG.js";import{aa as f,h as p,k as h,y as m}from"./chunk-TBMJSIBB.js";var a=function(o){return o.stopped="stopped",o.standby="standby",o.running="running",o}(a||{});var k={navigator_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 k\xF6rnyezet nem t\xE1mogatja a navigator API-t.",media_devices_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 ezen az oldalon nem ad hozz\xE1f\xE9r\xE9st a mikrofonhoz.",secure_context_required:"A hangfelv\xE9tel ezen az oldalon nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 csak biztons\xE1gos kapcsolatban (HTTPS vagy localhost) enged\xE9lyezi a mikrofont."},v={media_devices_unavailable:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on.",secure_context_required:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on."},d=class{static wrapGetUserMediaError(s){if(s instanceof Error&&"code"in s&&typeof s.code=="string"&&s.code.startsWith("CCAP_"))return s;let e=s instanceof DOMException||s instanceof Error?s.name:"UnknownError",t,i;switch(e){case"NotAllowedError":t="CCAP_MIC_PERMISSION_DENIED",i="Microphone access denied by user or browser policy";break;case"NotFoundError":t="CCAP_MIC_NOT_FOUND",i="No microphone device found on this device";break;case"NotReadableError":t="CCAP_MIC_NOT_READABLE",i="Microphone hardware error or device already in use by another application";break;case"OverconstrainedError":t="CCAP_MIC_OVERCONSTRAINED",i="Microphone does not support the requested audio constraints";break;case"AbortError":t="CCAP_MIC_ABORTED",i="Microphone access request was aborted by the system";break;case"SecurityError":t="CCAP_MIC_SECURITY_ERROR",i="Microphone access blocked by document security policy (Permissions-Policy / iframe)";break;default:t="CCAP_MIC_UNKNOWN_ERROR",i=`getUserMedia failed with ${e}`;break}let n=new Error(i);return n.code=t,n.cause=s,n}static getGetUserMediaErrorMessage(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"A mikrofon haszn\xE1lata nem enged\xE9lyezett: a b\xF6ng\xE9sz\u0151 vagy a felhaszn\xE1l\xF3 megtagadta a hozz\xE1f\xE9r\xE9st.";case"NotFoundError":return"Nem tal\xE1lhat\xF3 mikrofon ezen az eszk\xF6z\xF6n.";case"NotReadableError":return"A mikrofon nem olvashat\xF3: hardverhiba vagy egy m\xE1sik alkalmaz\xE1s haszn\xE1lja.";case"OverconstrainedError":return"A mikrofon nem t\xE1mogatja a k\xE9rt audio be\xE1ll\xEDt\xE1sokat.";case"AbortError":return"A mikrofon-hozz\xE1f\xE9r\xE9si k\xE9r\xE9s megszakadt.";case"SecurityError":return"A mikrofon-hozz\xE1f\xE9r\xE9st a biztons\xE1gi szab\xE1lyzat (Permissions-Policy / iframe) blokkolta.";default:return"A mikrofon el\xE9r\xE9se sikertelen (ismeretlen hiba)."}}static getGetUserMediaErrorHint(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"Enged\xE9lyezd a mikrofont a b\xF6ng\xE9sz\u0151 c\xEDmsor\xE1ban (lakat ikon \u2192 Mikrofon \u2192 Enged\xE9lyez\xE9s), majd pr\xF3b\xE1ld \xFAjra. Androidon: Be\xE1ll\xEDt\xE1sok \u2192 Alkalmaz\xE1sok \u2192 Chrome \u2192 Enged\xE9lyek \u2192 Mikrofon.";case"NotReadableError":return"Z\xE1rd be a mikrofont haszn\xE1l\xF3 m\xE1sik alkalmaz\xE1st (pl. vide\xF3h\xEDv\xE1s, diktafon), majd pr\xF3b\xE1ld \xFAjra.";case"SecurityError":return'Ha az alkalmaz\xE1s iframe-ben fut, az iframe-nek "allow=microphone" attrib\xFAtumra van sz\xFCks\xE9ge.';default:return""}}static getMediaRecordingAvailability(){return typeof navigator>"u"?{supported:!1,reason:"navigator_unavailable"}:typeof window<"u"&&window.isSecureContext===!1?{supported:!1,reason:"secure_context_required"}:navigator.mediaDevices==null?{supported:!1,reason:"media_devices_unavailable"}:{supported:!0}}static getMediaUnavailableReportMessage(s){return`Media recording not available (reason: ${s}). Use HTTPS or localhost for microphone access.`}static getMediaUnavailableHint(s){return v[s]??""}static getMediaUnavailableMessage(s){return k[s]??"A hangfelv\xE9tel nem el\xE9rhet\u0151 ezen az oldalon."}};var r=p(C());var A=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/ogg","audio/mp4"],z=(()=>{class o{volumeGate=.05;silenceTimeLimitMs=5*r.second;timesliceMs=5*r.second;segmentMaxChunks=6;segmentSoftFlushMinChunks=4;getUserMediaTimeoutMs=15*r.second;state_$=f(a.stopped);mediaStream=null;mediaRecorder=null;audioContext=null;analyser=null;audioSourceNode=null;volumeAnimationId=null;chunkIndex=0;chunks=[];isRestartingForFlush=!1;selectedMime="";onChunkCb=null;onVolumeCb=null;onErrorCb=null;deviceChangeHandler=null;silenceStartTime=null;setOnChunk(e){this.onChunkCb=e}setOnVolume(e){this.onVolumeCb=e}setOnError(e){this.onErrorCb=e}selectMime(){for(let e of A)if(MediaRecorder.isTypeSupported(e))return e;return"audio/webm"}getExtension(){return this.selectedMime.startsWith("audio/webm")?"webm":this.selectedMime.startsWith("audio/ogg")?"ogg":this.selectedMime.startsWith("audio/mp4")?"mp4":"webm"}startListening(){return h(this,null,function*(){if(this.state_$()===a.stopped)try{let e=d.getMediaRecordingAvailability();if(!e.supported){let n=`Media recording not available (reason: ${e.reason??"unknown"})`,l=new Error(n);throw l.code="CCAP_MEDIA_NOT_AVAILABLE",l}let t=null;try{let n=navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),l=new Promise((c,g)=>{t=setTimeout(()=>{let u=new Error(`getUserMedia timed out after ${this.getUserMediaTimeoutMs}ms`);u.code="CCAP_MIC_TIMEOUT",g(u)},this.getUserMediaTimeoutMs)});this.mediaStream=yield Promise.race([n,l])}catch(n){throw d.wrapGetUserMediaError(n)}finally{t!==null&&clearTimeout(t)}let i=this.mediaStream.getAudioTracks()[0];i&&(r.DyFM_Log.info("[CCAP] mic track settings",i.getSettings()),i.onended=()=>{r.DyFM_Log.info("[CCAP] mic track ended unexpectedly"),this.stopListening(),this.onErrorCb?.(new Error("Microphone track ended unexpectedly (device disconnected?)"))}),this.registerDeviceChangeListener(),this.selectedMime=this.selectMime(),this.startVolumeLoop(),this.state_$.set(a.standby)}catch(e){throw this.state_$.set(a.stopped),e}})}stopListening(){let e=this.state_$()===a.running;e&&this.stopCapture(!0),this.stopVolumeLoop(),e||this.stopMediaRecorder(),this.silenceStartTime=null,this.unregisterDeviceChangeListener(),this.mediaStream&&(this.mediaStream.getTracks().forEach(t=>t.stop()),this.mediaStream=null),this.state_$.set(a.stopped)}startCapture(){return h(this,null,function*(){try{if(this.mediaStream==null&&(yield this.startListening()),this.mediaStream==null)return;this.silenceStartTime=null,this.chunks=[],this.createAndStartRecorder(),this.state_$.set(a.running)}catch(e){this.stopVolumeLoop(),this.state_$.set(a.stopped),this.onErrorCb?.(e)}})}stopCapture(e=!1,t=!1){if(this.isRestartingForFlush=!1,!(this.mediaRecorder==null||this.state_$()!==a.running)){try{this.mediaRecorder.stop()}catch(i){r.DyFM_Log.info("[CCAP] mediaRecorder.stop() failed (likely already inactive)",i),this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}if(t){this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}this.mediaRecorder.onstop=()=>{this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped)}}}createAndStartRecorder(){this.mediaStream&&(this.mediaRecorder=new MediaRecorder(this.mediaStream,{mimeType:this.selectedMime,audioBitsPerSecond:128e3}),this.mediaRecorder.ondataavailable=e=>{if(e.data.size>0&&this.chunks.push(e.data),this.state_$()!==a.running||this.isRestartingForFlush)return;let t=this.chunks.length>=this.segmentMaxChunks,i=this.chunks.length>=this.segmentSoftFlushMinChunks&&this.silenceStartTime!==null;(t||i)&&this.restartRecorderForFlush()},this.mediaRecorder.start(this.timesliceMs))}restartRecorderForFlush(){if(!(!this.mediaRecorder||this.mediaRecorder.state==="inactive")){this.isRestartingForFlush=!0,this.silenceStartTime=null,r.DyFM_Log.info("[CCAP] restartRecorderForFlush: stopping current recorder for mid-recording flush"),this.mediaRecorder.onstop=()=>{this.isRestartingForFlush=!1,this.mediaRecorder=null;let e=this.chunks.length;if(this.flushChunksAsSegment(!1),r.DyFM_Log.info(`[CCAP] restartRecorderForFlush: flushed ${e} chunks as segment`),this.state_$()!==a.running||!this.mediaStream){r.DyFM_Log.info("[CCAP] restartRecorderForFlush: not restarting (state changed or no stream)");return}this.createAndStartRecorder(),r.DyFM_Log.info("[CCAP] restartRecorderForFlush: new recorder started for next segment")};try{this.mediaRecorder.stop()}catch{this.isRestartingForFlush=!1,this.mediaRecorder=null,this.flushChunksAsSegment(!1)}}}flushChunksAsSegment(e){if(this.chunks.length===0)return;let t=new Blob(this.chunks,{type:this.selectedMime}),i={mimeType:this.selectedMime,filename:`audio-${Date.now()}.${this.getExtension()}`,chunkIndex:this.chunkIndex++,isFinal:e};this.chunks=[],this.onChunkCb?.(t,i)}startVolumeLoop(){if(this.mediaStream==null||this.onVolumeCb==null)return;this.audioContext=new AudioContext,this.audioContext.state==="suspended"&&this.audioContext.resume().catch(()=>{}),this.audioContext.onstatechange=()=>{let i=this.audioContext?.state??"unknown";r.DyFM_Log.info("[CCAP] AudioContext state changed:",i),i==="suspended"&&this.state_$()!==a.stopped&&this.audioContext?.resume().catch(()=>{})},this.audioSourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.analyser=this.audioContext.createAnalyser(),this.analyser.fftSize=2048,this.analyser.smoothingTimeConstant=.8,this.audioSourceNode.connect(this.analyser);let e=new Float32Array(this.analyser.fftSize),t=()=>{if(this.analyser==null||this.onVolumeCb==null)return;this.analyser.getFloatTimeDomainData(e);let i=0;for(let c=0;c<e.length;c++)i+=Math.abs(e[c]);let n=i/e.length;this.onVolumeCb(n);let l=this.state_$();if(l===a.standby&&n>=this.volumeGate){this.startCapture(),this.volumeAnimationId=requestAnimationFrame(t);return}l===a.running&&!this.isRestartingForFlush&&(n<this.volumeGate?this.silenceStartTime===null?this.silenceStartTime=Date.now():Date.now()-this.silenceStartTime>=this.silenceTimeLimitMs&&(this.stopCapture(),this.silenceStartTime=null):this.silenceStartTime=null),this.volumeAnimationId=requestAnimationFrame(t)};t()}stopVolumeLoop(){this.volumeAnimationId!=null&&(cancelAnimationFrame(this.volumeAnimationId),this.volumeAnimationId=null),this.audioSourceNode=null,this.audioContext!=null&&(this.audioContext.onstatechange=null,this.audioContext.close().catch(()=>{}),this.audioContext=null),this.analyser=null}stopMediaRecorder(){if(this.mediaRecorder!=null&&this.mediaRecorder.state!=="inactive"){try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null}this.chunks=[],this.isRestartingForFlush=!1}registerDeviceChangeListener(){try{this.deviceChangeHandler=()=>{r.DyFM_Log.info("[CCAP] media device change detected")},navigator.mediaDevices.addEventListener("devicechange",this.deviceChangeHandler)}catch{this.deviceChangeHandler=null}}unregisterDeviceChangeListener(){if(this.deviceChangeHandler){try{navigator.mediaDevices.removeEventListener("devicechange",this.deviceChangeHandler)}catch{}this.deviceChangeHandler=null}}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{a,d as b,z as c};
|
|
2
|
+
//# sourceMappingURL=chunk-2LJT2APC.js.map
|