@futdevpro/ccap 1.1.3223 → 1.1.3441

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/cli/build/_collections/update/update-verify-install.interface.d.ts +23 -0
  2. package/cli/build/_collections/update/update-verify-install.interface.d.ts.map +1 -0
  3. package/cli/build/_collections/update/update-verify-install.interface.js +3 -0
  4. package/cli/build/_collections/update/update-verify-install.interface.js.map +1 -0
  5. package/cli/build/_collections/update/update-verify-install.util.d.ts +50 -0
  6. package/cli/build/_collections/update/update-verify-install.util.d.ts.map +1 -0
  7. package/cli/build/_collections/update/update-verify-install.util.js +179 -0
  8. package/cli/build/_collections/update/update-verify-install.util.js.map +1 -0
  9. package/cli/build/_collections/update/update-verify-install.util.spec.d.ts +6 -0
  10. package/cli/build/_collections/update/update-verify-install.util.spec.d.ts.map +1 -0
  11. package/cli/build/_collections/update/update-verify-install.util.spec.js +117 -0
  12. package/cli/build/_collections/update/update-verify-install.util.spec.js.map +1 -0
  13. package/cli/build/_commands/cc-inspect-options.interface.d.ts +11 -0
  14. package/cli/build/_commands/cc-inspect-options.interface.d.ts.map +1 -0
  15. package/cli/build/_commands/cc-inspect-options.interface.js +3 -0
  16. package/cli/build/_commands/cc-inspect-options.interface.js.map +1 -0
  17. package/cli/build/_commands/cc-inspect.d.ts +33 -0
  18. package/cli/build/_commands/cc-inspect.d.ts.map +1 -0
  19. package/cli/build/_commands/cc-inspect.js +228 -0
  20. package/cli/build/_commands/cc-inspect.js.map +1 -0
  21. package/cli/build/_commands/input.d.ts +55 -0
  22. package/cli/build/_commands/input.d.ts.map +1 -0
  23. package/cli/build/_commands/input.interface.d.ts +21 -0
  24. package/cli/build/_commands/input.interface.d.ts.map +1 -0
  25. package/cli/build/_commands/input.interface.js +3 -0
  26. package/cli/build/_commands/input.interface.js.map +1 -0
  27. package/cli/build/_commands/input.js +183 -0
  28. package/cli/build/_commands/input.js.map +1 -0
  29. package/cli/build/_commands/input.spec.d.ts +8 -0
  30. package/cli/build/_commands/input.spec.d.ts.map +1 -0
  31. package/cli/build/_commands/input.spec.js +63 -0
  32. package/cli/build/_commands/input.spec.js.map +1 -0
  33. package/cli/build/_commands/skill-doc.d.ts +63 -0
  34. package/cli/build/_commands/skill-doc.d.ts.map +1 -0
  35. package/cli/build/_commands/skill-doc.interface.d.ts +19 -0
  36. package/cli/build/_commands/skill-doc.interface.d.ts.map +1 -0
  37. package/cli/build/_commands/skill-doc.interface.js +3 -0
  38. package/cli/build/_commands/skill-doc.interface.js.map +1 -0
  39. package/cli/build/_commands/skill-doc.js +421 -0
  40. package/cli/build/_commands/skill-doc.js.map +1 -0
  41. package/cli/build/_commands/skill-doc.spec.d.ts +10 -0
  42. package/cli/build/_commands/skill-doc.spec.d.ts.map +1 -0
  43. package/cli/build/_commands/skill-doc.spec.js +112 -0
  44. package/cli/build/_commands/skill-doc.spec.js.map +1 -0
  45. package/cli/build/_commands/update.d.ts.map +1 -1
  46. package/cli/build/_commands/update.js +59 -0
  47. package/cli/build/_commands/update.js.map +1 -1
  48. package/cli/build/_commands/update.spec.js +12 -0
  49. package/cli/build/_commands/update.spec.js.map +1 -1
  50. package/cli/build/program.js +51 -0
  51. package/cli/build/program.js.map +1 -1
  52. package/client-dist/{agent-instances.module-V7DKSWVC.js → agent-instances.module-4ADMPXCV.js} +2 -2
  53. package/client-dist/ca.module-RVGC3WQC.js +5 -0
  54. package/client-dist/{ca.module-MVE3OLDD.js.map → ca.module-RVGC3WQC.js.map} +3 -3
  55. package/client-dist/cc-usage-dashboard.component-OQS2BC4L.js +2 -0
  56. package/client-dist/cc-usage-dashboard.component-OQS2BC4L.js.map +7 -0
  57. package/client-dist/cc.module-SPB35JNX.js +4 -0
  58. package/client-dist/cc.module-SPB35JNX.js.map +7 -0
  59. package/client-dist/{chunk-7HSUCNW5.js → chunk-2ATSF4KC.js} +7 -3
  60. package/client-dist/{chunk-7HSUCNW5.js.map → chunk-2ATSF4KC.js.map} +2 -2
  61. package/client-dist/{chunk-CRYF37M7.js → chunk-3HJWN4W6.js} +2 -2
  62. package/client-dist/{chunk-D2UUXA6L.js → chunk-4EV32FFZ.js} +2 -2
  63. package/client-dist/{chunk-AX7QIINI.js → chunk-4H3E32UH.js} +2 -2
  64. package/client-dist/{chunk-KYVIZZWW.js → chunk-4LCJ4GNK.js} +19 -19
  65. package/client-dist/chunk-4LCJ4GNK.js.map +7 -0
  66. package/client-dist/{chunk-OUBNMT7L.js → chunk-5NW5UGVZ.js} +2 -2
  67. package/client-dist/{chunk-HLNT234H.js → chunk-AM5URSKV.js} +2 -2
  68. package/client-dist/{chunk-SYCUR4MY.js → chunk-AMROWQBM.js} +2 -2
  69. package/client-dist/{chunk-PTCJL62W.js → chunk-AR6EOT63.js} +2 -2
  70. package/client-dist/{chunk-OLK5MJ4J.js → chunk-B25EGDHU.js} +2 -2
  71. package/client-dist/{chunk-4SFV57IQ.js → chunk-BQTJHETS.js} +2 -2
  72. package/client-dist/{chunk-XTUQJ3W6.js → chunk-COOWEMEW.js} +2 -2
  73. package/client-dist/{chunk-TOFOK5W7.js → chunk-E3JXFFHE.js} +2 -2
  74. package/client-dist/{chunk-OQW6FXRJ.js → chunk-ESIGVRCK.js} +2 -2
  75. package/client-dist/{chunk-JMZKJLUE.js → chunk-EVMDNGBK.js} +2 -2
  76. package/client-dist/{chunk-6GSTJE3R.js → chunk-F6VMAVI5.js} +2 -2
  77. package/client-dist/chunk-FRVRMJQF.js +2 -0
  78. package/client-dist/chunk-FRVRMJQF.js.map +7 -0
  79. package/client-dist/chunk-G5SK3OBM.js +2 -0
  80. package/client-dist/chunk-G5SK3OBM.js.map +7 -0
  81. package/client-dist/{chunk-VO5ZLOZM.js → chunk-GBOES7QW.js} +2 -2
  82. package/client-dist/{chunk-2OAF6FCL.js → chunk-GTERKRTR.js} +2 -2
  83. package/client-dist/{chunk-7X22BWF7.js → chunk-HD4CODAD.js} +2 -2
  84. package/client-dist/{chunk-2EMFCVYO.js → chunk-I3FSMGMK.js} +2 -2
  85. package/client-dist/{chunk-VGTXKD6D.js → chunk-IFYHOOVA.js} +2 -2
  86. package/client-dist/{chunk-IINV7GMO.js → chunk-IUAZJ3PT.js} +2 -2
  87. package/client-dist/chunk-IUAZJ3PT.js.map +7 -0
  88. package/client-dist/{chunk-PFBJ7ZHP.js → chunk-IVLMVAVJ.js} +2 -2
  89. package/client-dist/chunk-KBMXCICX.js +2 -0
  90. package/client-dist/chunk-KBMXCICX.js.map +7 -0
  91. package/client-dist/{chunk-3D32XY5M.js → chunk-KIKSSJKL.js} +2 -2
  92. package/client-dist/{chunk-U2EBQMSE.js → chunk-LPNQ5PRN.js} +2 -2
  93. package/client-dist/{chunk-4JKJRGJX.js → chunk-MO37SUK2.js} +2 -2
  94. package/client-dist/{chunk-BC7H7K5F.js → chunk-MYVEHPA7.js} +2 -2
  95. package/client-dist/{chunk-JEHOIN7Y.js → chunk-N55GOFVU.js} +2 -2
  96. package/client-dist/{chunk-R5WCLLO5.js → chunk-NNUHTCXG.js} +2 -2
  97. package/client-dist/{chunk-TP2634XD.js → chunk-OKTAADTQ.js} +2 -2
  98. package/client-dist/{chunk-DURLBTAJ.js → chunk-ONS7XQYD.js} +2 -2
  99. package/client-dist/chunk-OYB7GU43.js +2 -0
  100. package/client-dist/chunk-OYB7GU43.js.map +7 -0
  101. package/client-dist/{chunk-7SAFEFWU.js → chunk-PVSQ5ZEZ.js} +14 -14
  102. package/client-dist/{chunk-7SAFEFWU.js.map → chunk-PVSQ5ZEZ.js.map} +3 -3
  103. package/client-dist/{chunk-PG7CJVEP.js → chunk-PZN2OI7U.js} +2 -2
  104. package/client-dist/{chunk-C4JDDOQR.js → chunk-QUD3BEHN.js} +2 -2
  105. package/client-dist/{chunk-DJVWZQNB.js → chunk-QUEYZI42.js} +2 -2
  106. package/client-dist/chunk-R2IBKJ4K.js +2 -0
  107. package/client-dist/chunk-R2IBKJ4K.js.map +7 -0
  108. package/client-dist/{chunk-3TMVRWAB.js → chunk-RAHCHCWR.js} +2 -2
  109. package/client-dist/{chunk-SQWHJTFE.js → chunk-RCCUSGIN.js} +2 -2
  110. package/client-dist/{chunk-GADEZIXI.js → chunk-RL5LPTPO.js} +2 -2
  111. package/client-dist/{chunk-5C3KCWYF.js → chunk-SDVXPGB7.js} +2 -2
  112. package/client-dist/{chunk-CLQC45GB.js → chunk-TNLHQRL7.js} +2 -2
  113. package/client-dist/{chunk-JZHYGU3K.js → chunk-TWK7BOB7.js} +2 -2
  114. package/client-dist/{chunk-ILG5WENK.js → chunk-U62YECNK.js} +2 -2
  115. package/client-dist/{chunk-RSPVPEQ4.js → chunk-UOC6UYZT.js} +2 -2
  116. package/client-dist/{chunk-AI7WKHRQ.js → chunk-VDQROW6J.js} +2 -2
  117. package/client-dist/{chunk-3PA6BJES.js → chunk-VMXIXZV2.js} +2 -2
  118. package/client-dist/chunk-VQ4GBHH7.js +2 -0
  119. package/client-dist/chunk-VQ4GBHH7.js.map +7 -0
  120. package/client-dist/{chunk-CFHQS3UB.js → chunk-WRI37SX4.js} +2 -2
  121. package/client-dist/{chunk-MS5OG7JD.js → chunk-XLSL262Q.js} +2 -2
  122. package/client-dist/{chunk-SLSTIBOT.js → chunk-Y6V4NGLU.js} +2 -2
  123. package/client-dist/{chunk-SLSTIBOT.js.map → chunk-Y6V4NGLU.js.map} +1 -1
  124. package/client-dist/{chunk-3PLWSRB4.js → chunk-YN4H6MW2.js} +2 -2
  125. package/client-dist/{chunk-OEEQNIJG.js → chunk-Z5FUR5ZW.js} +2 -2
  126. package/client-dist/{chunk-MY75XBDH.js → chunk-ZCHMBEHT.js} +2 -2
  127. package/client-dist/{chunk-LIQPVSH3.js → chunk-ZPJ6KYMA.js} +2 -2
  128. package/client-dist/consultant.module-UWXLFLDS.js +3 -0
  129. package/client-dist/{consultant.module-WUUVSVHL.js.map → consultant.module-UWXLFLDS.js.map} +3 -3
  130. package/client-dist/{crd.module-IRGVOYD5.js → crd.module-2I2BDC3A.js} +2 -2
  131. package/client-dist/{dashboard.module-NPPSZHO6.js → dashboard.module-X2A6LOTA.js} +2 -2
  132. package/client-dist/{do.module-GKQTJOXR.js → do.module-CJWEKZ4L.js} +2 -2
  133. package/client-dist/{document-library.module-JK3K7QNJ.js → document-library.module-WJSFZPA7.js} +2 -2
  134. package/client-dist/{embedding-eval.module-LVESAMPN.js → embedding-eval.module-FOALIAQW.js} +2 -2
  135. package/client-dist/{embedding-registry.module-3ECACZZ3.js → embedding-registry.module-SS646R4H.js} +2 -2
  136. package/client-dist/err.module-SR4ZAOQH.js +6 -0
  137. package/client-dist/err.module-SR4ZAOQH.js.map +7 -0
  138. package/client-dist/{feedback.module-AHG7462C.js → feedback.module-T3MZQKXV.js} +2 -2
  139. package/client-dist/{host-runtime-mcp.module-XFUI7B65.js → host-runtime-mcp.module-FBZZGQGD.js} +2 -2
  140. package/client-dist/index.html +2 -2
  141. package/client-dist/{live-dev-pipeline.module-OMK67DGM.js → live-dev-pipeline.module-OKQYFSJL.js} +2 -2
  142. package/client-dist/{logs.module-FWACECVV.js → logs.module-SHHOD5XW.js} +2 -2
  143. package/client-dist/{main-H4AYPQ2E.js → main-L3WW2VTB.js} +4 -4
  144. package/client-dist/{main-H4AYPQ2E.js.map → main-L3WW2VTB.js.map} +3 -3
  145. package/client-dist/{master-control-remote-poc.module-GQ6RMPRB.js → master-control-remote-poc.module-ITXHYU5K.js} +2 -2
  146. package/client-dist/{mobile-app.module-YSARX6QC.js → mobile-app.module-Q3W3PU4O.js} +2 -2
  147. package/client-dist/{model-registry.module-SJOUSDXZ.js → model-registry.module-DGN55LTQ.js} +2 -2
  148. package/client-dist/oc.module-DYSATWML.js +3 -0
  149. package/client-dist/{oc.module-CDGBJ6I4.js.map → oc.module-DYSATWML.js.map} +3 -3
  150. package/client-dist/orc.module-NQO6OLPK.js +2 -0
  151. package/client-dist/orc.module-NQO6OLPK.js.map +7 -0
  152. package/client-dist/{project-management.module-LWZLB6VU.js → project-management.module-T7NBKKSR.js} +2 -2
  153. package/client-dist/project-source-routed.module-YO54LEGN.js +2 -0
  154. package/client-dist/{scheduler.module-VH647PWD.js → scheduler.module-4CMBOTGZ.js} +2 -2
  155. package/client-dist/session.module-V4SRPQRZ.js +12 -0
  156. package/client-dist/session.module-V4SRPQRZ.js.map +7 -0
  157. package/client-dist/{set.module-XHJR4XUD.js → set.module-32SVEWTG.js} +5 -5
  158. package/client-dist/{set.module-XHJR4XUD.js.map → set.module-32SVEWTG.js.map} +3 -3
  159. package/client-dist/{setup.module-RRQZ62B2.js → setup.module-5T6MCMR4.js} +2 -2
  160. package/client-dist/styles-CTUT42AQ.css +2 -0
  161. package/client-dist/styles-CTUT42AQ.css.map +7 -0
  162. package/client-dist/{terminals.module-QKIQS6FH.js → terminals.module-AQO2TVO2.js} +2 -2
  163. package/client-dist/{voice-notes-poc.module-K3FB6OIB.js → voice-notes-poc.module-EI2HY7YJ.js} +2 -2
  164. package/client-dist/{wfs.module-JVR53PGJ.js → wfs.module-AHRZE5WB.js} +2 -2
  165. package/package.json +1 -1
  166. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.d.ts.map +1 -1
  167. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js +5 -0
  168. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js.map +1 -1
  169. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.d.ts.map +1 -1
  170. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.js +8 -1
  171. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.js.map +1 -1
  172. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.d.ts +11 -0
  173. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.d.ts.map +1 -0
  174. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.js +20 -0
  175. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.js.map +1 -0
  176. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.d.ts +65 -0
  177. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.d.ts.map +1 -0
  178. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.js +222 -0
  179. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.js.map +1 -0
  180. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.d.ts +7 -0
  181. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.d.ts.map +1 -0
  182. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.js +213 -0
  183. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.js.map +1 -0
  184. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.d.ts +58 -0
  185. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.d.ts.map +1 -0
  186. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.js +3 -0
  187. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.js.map +1 -0
  188. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.d.ts.map +1 -1
  189. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.js +14 -0
  190. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.js.map +1 -1
  191. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.d.ts +35 -0
  192. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.d.ts.map +1 -0
  193. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.js +80 -0
  194. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.js.map +1 -0
  195. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.d.ts +47 -0
  196. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.d.ts.map +1 -0
  197. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.js +100 -0
  198. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.js.map +1 -0
  199. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.d.ts +2 -0
  200. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.d.ts.map +1 -0
  201. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.js +162 -0
  202. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.js.map +1 -0
  203. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.d.ts +2 -0
  204. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.d.ts.map +1 -1
  205. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.js +16 -0
  206. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.js.map +1 -1
  207. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.d.ts.map +1 -1
  208. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.js +22 -4
  209. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.js.map +1 -1
  210. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts +58 -0
  211. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts.map +1 -1
  212. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js +64 -0
  213. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js.map +1 -1
  214. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.d.ts.map +1 -1
  215. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.js +3 -0
  216. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.js.map +1 -1
  217. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.d.ts +17 -0
  218. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.d.ts.map +1 -1
  219. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.js +65 -5
  220. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.js.map +1 -1
  221. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.d.ts +9 -0
  222. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.d.ts.map +1 -0
  223. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.js +213 -0
  224. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.js.map +1 -0
  225. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.d.ts +47 -0
  226. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.d.ts.map +1 -0
  227. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.js +71 -0
  228. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.js.map +1 -0
  229. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts +36 -0
  230. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts.map +1 -1
  231. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js +93 -6
  232. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js.map +1 -1
  233. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js +85 -21
  234. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js.map +1 -1
  235. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.d.ts.map +1 -1
  236. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.js +81 -1
  237. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.js.map +1 -1
  238. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.d.ts.map +1 -1
  239. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.js +14 -2
  240. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.js.map +1 -1
  241. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.d.ts.map +1 -1
  242. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.js +19 -0
  243. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.js.map +1 -1
  244. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.d.ts +4 -0
  245. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.d.ts.map +1 -1
  246. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.js +6 -0
  247. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.js.map +1 -1
  248. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts +13 -0
  249. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts.map +1 -1
  250. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js +21 -0
  251. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js.map +1 -1
  252. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.interface.d.ts +33 -0
  253. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.interface.d.ts.map +1 -1
  254. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.d.ts.map +1 -1
  255. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.js +10 -3
  256. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.js.map +1 -1
  257. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.d.ts +54 -0
  258. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.d.ts.map +1 -1
  259. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js +163 -75
  260. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js.map +1 -1
  261. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.d.ts +6 -1
  262. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.d.ts.map +1 -1
  263. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.js +32 -9
  264. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.js.map +1 -1
  265. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.spec.js +20 -2
  266. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.spec.js.map +1 -1
  267. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.d.ts +25 -0
  268. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.d.ts.map +1 -1
  269. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js +301 -1
  270. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js.map +1 -1
  271. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.d.ts +20 -3
  272. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.d.ts.map +1 -1
  273. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.js +62 -7
  274. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.js.map +1 -1
  275. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.spec.js +10 -0
  276. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.spec.js.map +1 -1
  277. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts +11 -18
  278. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts.map +1 -1
  279. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js +40 -48
  280. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js.map +1 -1
  281. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.d.ts +8 -0
  282. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.d.ts.map +1 -1
  283. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.js +13 -2
  284. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.js.map +1 -1
  285. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.d.ts.map +1 -1
  286. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.js +8 -3
  287. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.js.map +1 -1
  288. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.d.ts.map +1 -1
  289. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.js +12 -0
  290. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.js.map +1 -1
  291. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.d.ts +10 -0
  292. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.d.ts.map +1 -1
  293. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.js +18 -0
  294. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.js.map +1 -1
  295. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.spec.js +32 -3
  296. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.spec.js.map +1 -1
  297. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.d.ts +42 -0
  298. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.d.ts.map +1 -0
  299. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.js +73 -0
  300. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.js.map +1 -0
  301. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.d.ts +10 -0
  302. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.d.ts.map +1 -0
  303. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.js +89 -0
  304. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.js.map +1 -0
  305. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts +8 -1
  306. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts.map +1 -1
  307. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.d.ts +10 -0
  308. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.d.ts.map +1 -0
  309. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.js +74 -0
  310. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.js.map +1 -0
  311. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts +37 -0
  312. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts.map +1 -1
  313. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js +117 -0
  314. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js.map +1 -1
  315. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.d.ts +11 -0
  316. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.d.ts.map +1 -1
  317. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.js +11 -1
  318. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.js.map +1 -1
  319. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.spec.js +65 -0
  320. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.spec.js.map +1 -1
  321. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.d.ts +15 -0
  322. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.d.ts.map +1 -0
  323. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.js +122 -0
  324. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.js.map +1 -0
  325. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.d.ts.map +1 -1
  326. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js +24 -0
  327. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js.map +1 -1
  328. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts +30 -0
  329. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts.map +1 -1
  330. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js +91 -2
  331. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js.map +1 -1
  332. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.d.ts.map +1 -1
  333. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.js +10 -0
  334. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.js.map +1 -1
  335. package/server/build/src/_modules/scheduler/_collections/utils/sch-jitter.util.spec.js +4 -2
  336. package/server/build/src/_modules/scheduler/_collections/utils/sch-jitter.util.spec.js.map +1 -1
  337. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts +9 -0
  338. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts.map +1 -1
  339. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.d.ts.map +1 -1
  340. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js +1 -0
  341. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js.map +1 -1
  342. package/client-dist/ca.module-MVE3OLDD.js +0 -5
  343. package/client-dist/cc-usage-dashboard.component-F7S4MG67.js +0 -2
  344. package/client-dist/cc-usage-dashboard.component-F7S4MG67.js.map +0 -7
  345. package/client-dist/cc.module-GOXYWYW2.js +0 -4
  346. package/client-dist/cc.module-GOXYWYW2.js.map +0 -7
  347. package/client-dist/chunk-4GPIIB3D.js +0 -2
  348. package/client-dist/chunk-4GPIIB3D.js.map +0 -7
  349. package/client-dist/chunk-EGRHWZRV.js +0 -1
  350. package/client-dist/chunk-EGRHWZRV.js.map +0 -7
  351. package/client-dist/chunk-GZDOO5NB.js +0 -2
  352. package/client-dist/chunk-GZDOO5NB.js.map +0 -7
  353. package/client-dist/chunk-IINV7GMO.js.map +0 -7
  354. package/client-dist/chunk-KYVIZZWW.js.map +0 -7
  355. package/client-dist/chunk-MZLFEWAN.js +0 -2
  356. package/client-dist/chunk-MZLFEWAN.js.map +0 -7
  357. package/client-dist/chunk-QPEW5PI4.js +0 -2
  358. package/client-dist/chunk-QPEW5PI4.js.map +0 -7
  359. package/client-dist/consultant.module-WUUVSVHL.js +0 -3
  360. package/client-dist/err.module-B666YXQT.js +0 -6
  361. package/client-dist/err.module-B666YXQT.js.map +0 -7
  362. package/client-dist/oc.module-CDGBJ6I4.js +0 -3
  363. package/client-dist/orc.module-5S7GBE4E.js +0 -2
  364. package/client-dist/orc.module-5S7GBE4E.js.map +0 -7
  365. package/client-dist/project-source-routed.module-FDCQCUUB.js +0 -2
  366. package/client-dist/session.module-AKETH5O2.js +0 -12
  367. package/client-dist/session.module-AKETH5O2.js.map +0 -7
  368. package/client-dist/styles-KHQAHCL5.css +0 -2
  369. package/client-dist/styles-KHQAHCL5.css.map +0 -7
  370. /package/client-dist/{agent-instances.module-V7DKSWVC.js.map → agent-instances.module-4ADMPXCV.js.map} +0 -0
  371. /package/client-dist/{chunk-CRYF37M7.js.map → chunk-3HJWN4W6.js.map} +0 -0
  372. /package/client-dist/{chunk-D2UUXA6L.js.map → chunk-4EV32FFZ.js.map} +0 -0
  373. /package/client-dist/{chunk-AX7QIINI.js.map → chunk-4H3E32UH.js.map} +0 -0
  374. /package/client-dist/{chunk-OUBNMT7L.js.map → chunk-5NW5UGVZ.js.map} +0 -0
  375. /package/client-dist/{chunk-HLNT234H.js.map → chunk-AM5URSKV.js.map} +0 -0
  376. /package/client-dist/{chunk-SYCUR4MY.js.map → chunk-AMROWQBM.js.map} +0 -0
  377. /package/client-dist/{chunk-PTCJL62W.js.map → chunk-AR6EOT63.js.map} +0 -0
  378. /package/client-dist/{chunk-OLK5MJ4J.js.map → chunk-B25EGDHU.js.map} +0 -0
  379. /package/client-dist/{chunk-4SFV57IQ.js.map → chunk-BQTJHETS.js.map} +0 -0
  380. /package/client-dist/{chunk-XTUQJ3W6.js.map → chunk-COOWEMEW.js.map} +0 -0
  381. /package/client-dist/{chunk-TOFOK5W7.js.map → chunk-E3JXFFHE.js.map} +0 -0
  382. /package/client-dist/{chunk-OQW6FXRJ.js.map → chunk-ESIGVRCK.js.map} +0 -0
  383. /package/client-dist/{chunk-JMZKJLUE.js.map → chunk-EVMDNGBK.js.map} +0 -0
  384. /package/client-dist/{chunk-6GSTJE3R.js.map → chunk-F6VMAVI5.js.map} +0 -0
  385. /package/client-dist/{chunk-VO5ZLOZM.js.map → chunk-GBOES7QW.js.map} +0 -0
  386. /package/client-dist/{chunk-2OAF6FCL.js.map → chunk-GTERKRTR.js.map} +0 -0
  387. /package/client-dist/{chunk-7X22BWF7.js.map → chunk-HD4CODAD.js.map} +0 -0
  388. /package/client-dist/{chunk-2EMFCVYO.js.map → chunk-I3FSMGMK.js.map} +0 -0
  389. /package/client-dist/{chunk-VGTXKD6D.js.map → chunk-IFYHOOVA.js.map} +0 -0
  390. /package/client-dist/{chunk-PFBJ7ZHP.js.map → chunk-IVLMVAVJ.js.map} +0 -0
  391. /package/client-dist/{chunk-3D32XY5M.js.map → chunk-KIKSSJKL.js.map} +0 -0
  392. /package/client-dist/{chunk-U2EBQMSE.js.map → chunk-LPNQ5PRN.js.map} +0 -0
  393. /package/client-dist/{chunk-4JKJRGJX.js.map → chunk-MO37SUK2.js.map} +0 -0
  394. /package/client-dist/{chunk-BC7H7K5F.js.map → chunk-MYVEHPA7.js.map} +0 -0
  395. /package/client-dist/{chunk-JEHOIN7Y.js.map → chunk-N55GOFVU.js.map} +0 -0
  396. /package/client-dist/{chunk-R5WCLLO5.js.map → chunk-NNUHTCXG.js.map} +0 -0
  397. /package/client-dist/{chunk-TP2634XD.js.map → chunk-OKTAADTQ.js.map} +0 -0
  398. /package/client-dist/{chunk-DURLBTAJ.js.map → chunk-ONS7XQYD.js.map} +0 -0
  399. /package/client-dist/{chunk-PG7CJVEP.js.map → chunk-PZN2OI7U.js.map} +0 -0
  400. /package/client-dist/{chunk-C4JDDOQR.js.map → chunk-QUD3BEHN.js.map} +0 -0
  401. /package/client-dist/{chunk-DJVWZQNB.js.map → chunk-QUEYZI42.js.map} +0 -0
  402. /package/client-dist/{chunk-3TMVRWAB.js.map → chunk-RAHCHCWR.js.map} +0 -0
  403. /package/client-dist/{chunk-SQWHJTFE.js.map → chunk-RCCUSGIN.js.map} +0 -0
  404. /package/client-dist/{chunk-GADEZIXI.js.map → chunk-RL5LPTPO.js.map} +0 -0
  405. /package/client-dist/{chunk-5C3KCWYF.js.map → chunk-SDVXPGB7.js.map} +0 -0
  406. /package/client-dist/{chunk-CLQC45GB.js.map → chunk-TNLHQRL7.js.map} +0 -0
  407. /package/client-dist/{chunk-JZHYGU3K.js.map → chunk-TWK7BOB7.js.map} +0 -0
  408. /package/client-dist/{chunk-ILG5WENK.js.map → chunk-U62YECNK.js.map} +0 -0
  409. /package/client-dist/{chunk-RSPVPEQ4.js.map → chunk-UOC6UYZT.js.map} +0 -0
  410. /package/client-dist/{chunk-AI7WKHRQ.js.map → chunk-VDQROW6J.js.map} +0 -0
  411. /package/client-dist/{chunk-3PA6BJES.js.map → chunk-VMXIXZV2.js.map} +0 -0
  412. /package/client-dist/{chunk-CFHQS3UB.js.map → chunk-WRI37SX4.js.map} +0 -0
  413. /package/client-dist/{chunk-MS5OG7JD.js.map → chunk-XLSL262Q.js.map} +0 -0
  414. /package/client-dist/{chunk-3PLWSRB4.js.map → chunk-YN4H6MW2.js.map} +0 -0
  415. /package/client-dist/{chunk-OEEQNIJG.js.map → chunk-Z5FUR5ZW.js.map} +0 -0
  416. /package/client-dist/{chunk-MY75XBDH.js.map → chunk-ZCHMBEHT.js.map} +0 -0
  417. /package/client-dist/{chunk-LIQPVSH3.js.map → chunk-ZPJ6KYMA.js.map} +0 -0
  418. /package/client-dist/{crd.module-IRGVOYD5.js.map → crd.module-2I2BDC3A.js.map} +0 -0
  419. /package/client-dist/{dashboard.module-NPPSZHO6.js.map → dashboard.module-X2A6LOTA.js.map} +0 -0
  420. /package/client-dist/{do.module-GKQTJOXR.js.map → do.module-CJWEKZ4L.js.map} +0 -0
  421. /package/client-dist/{document-library.module-JK3K7QNJ.js.map → document-library.module-WJSFZPA7.js.map} +0 -0
  422. /package/client-dist/{embedding-eval.module-LVESAMPN.js.map → embedding-eval.module-FOALIAQW.js.map} +0 -0
  423. /package/client-dist/{embedding-registry.module-3ECACZZ3.js.map → embedding-registry.module-SS646R4H.js.map} +0 -0
  424. /package/client-dist/{feedback.module-AHG7462C.js.map → feedback.module-T3MZQKXV.js.map} +0 -0
  425. /package/client-dist/{host-runtime-mcp.module-XFUI7B65.js.map → host-runtime-mcp.module-FBZZGQGD.js.map} +0 -0
  426. /package/client-dist/{live-dev-pipeline.module-OMK67DGM.js.map → live-dev-pipeline.module-OKQYFSJL.js.map} +0 -0
  427. /package/client-dist/{logs.module-FWACECVV.js.map → logs.module-SHHOD5XW.js.map} +0 -0
  428. /package/client-dist/{master-control-remote-poc.module-GQ6RMPRB.js.map → master-control-remote-poc.module-ITXHYU5K.js.map} +0 -0
  429. /package/client-dist/{mobile-app.module-YSARX6QC.js.map → mobile-app.module-Q3W3PU4O.js.map} +0 -0
  430. /package/client-dist/{model-registry.module-SJOUSDXZ.js.map → model-registry.module-DGN55LTQ.js.map} +0 -0
  431. /package/client-dist/{project-management.module-LWZLB6VU.js.map → project-management.module-T7NBKKSR.js.map} +0 -0
  432. /package/client-dist/{project-source-routed.module-FDCQCUUB.js.map → project-source-routed.module-YO54LEGN.js.map} +0 -0
  433. /package/client-dist/{scheduler.module-VH647PWD.js.map → scheduler.module-4CMBOTGZ.js.map} +0 -0
  434. /package/client-dist/{setup.module-RRQZ62B2.js.map → setup.module-5T6MCMR4.js.map} +0 -0
  435. /package/client-dist/{terminals.module-QKIQS6FH.js.map → terminals.module-AQO2TVO2.js.map} +0 -0
  436. /package/client-dist/{voice-notes-poc.module-K3FB6OIB.js.map → voice-notes-poc.module-EI2HY7YJ.js.map} +0 -0
  437. /package/client-dist/{wfs.module-JVR53PGJ.js.map → wfs.module-AHRZE5WB.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as r}from"./chunk-OEEQNIJG.js";import{G as i}from"./chunk-TBMJSIBB.js";var p=(()=>{class e{transform(t){return r.formatRelativeTime(t)}static \u0275fac=function(a){return new(a||e)};static \u0275pipe=i({name:"ccapRelativeTime",type:e,pure:!0,standalone:!0})}return e})();export{p as a};
2
- //# sourceMappingURL=chunk-3PLWSRB4.js.map
1
+ import{a as r}from"./chunk-Z5FUR5ZW.js";import{G as i}from"./chunk-TBMJSIBB.js";var p=(()=>{class e{transform(t){return r.formatRelativeTime(t)}static \u0275fac=function(a){return new(a||e)};static \u0275pipe=i({name:"ccapRelativeTime",type:e,pure:!0,standalone:!0})}return e})();export{p as a};
2
+ //# sourceMappingURL=chunk-YN4H6MW2.js.map
@@ -1,2 +1,2 @@
1
- import{p as h}from"./chunk-SLSTIBOT.js";import{h as S}from"./chunk-TBMJSIBB.js";var c=S(h()),f=60,d=60*60,g=60*60*24,M=7,m=class{static formatRelativeTime(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let a=new Date,i=a.getTime()-n.getTime(),o=Math.floor(i/c.second);if(o<0)return"";if(o<f)return"just now";let e=Math.floor(o/f);if(e<60)return e===1?"1 minute ago":`${e} minutes ago`;let s=Math.floor(o/d);if(s<24)return s===1?"1 hour ago":`${s} hours ago`;let r=Math.floor(o/g);if(r<=M)return r===1?"1 day ago":`${r} days ago`;let u={month:"short",day:"numeric",year:n.getFullYear()!==a.getFullYear()?"numeric":void 0};return n.toLocaleDateString(void 0,u)}static formatCompactRelativeTime(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let i=Date.now()-n.getTime();if(i<0)return"just now";let o=Math.floor(i/c.second),e=Math.floor(o/f),s=Math.floor(o/d),r=Math.floor(o/g);return o<f?"just now":e<60?`${e}m ago`:s<24?`${s}h ago`:r<30?`${r}d ago`:`${Math.floor(r/30)}mo ago`}static formatAbsoluteForTooltip(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let a=String(n.getFullYear()),i=String(n.getMonth()+1).padStart(2,"0"),o=String(n.getDate()).padStart(2,"0"),e=String(n.getHours()).padStart(2,"0"),s=String(n.getMinutes()).padStart(2,"0"),r=String(n.getSeconds()).padStart(2,"0");return`${a}-${i}-${o} ${e}:${s}:${r}`}};export{m as a};
2
- //# sourceMappingURL=chunk-OEEQNIJG.js.map
1
+ import{p as h}from"./chunk-Y6V4NGLU.js";import{h as S}from"./chunk-TBMJSIBB.js";var c=S(h()),f=60,d=60*60,g=60*60*24,M=7,m=class{static formatRelativeTime(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let a=new Date,i=a.getTime()-n.getTime(),o=Math.floor(i/c.second);if(o<0)return"";if(o<f)return"just now";let e=Math.floor(o/f);if(e<60)return e===1?"1 minute ago":`${e} minutes ago`;let s=Math.floor(o/d);if(s<24)return s===1?"1 hour ago":`${s} hours ago`;let r=Math.floor(o/g);if(r<=M)return r===1?"1 day ago":`${r} days ago`;let u={month:"short",day:"numeric",year:n.getFullYear()!==a.getFullYear()?"numeric":void 0};return n.toLocaleDateString(void 0,u)}static formatCompactRelativeTime(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let i=Date.now()-n.getTime();if(i<0)return"just now";let o=Math.floor(i/c.second),e=Math.floor(o/f),s=Math.floor(o/d),r=Math.floor(o/g);return o<f?"just now":e<60?`${e}m ago`:s<24?`${s}h ago`:r<30?`${r}d ago`:`${Math.floor(r/30)}mo ago`}static formatAbsoluteForTooltip(t){if(t==null)return"";let n=typeof t=="string"?new Date(t):t;if(Number.isNaN(n.getTime()))return"";let a=String(n.getFullYear()),i=String(n.getMonth()+1).padStart(2,"0"),o=String(n.getDate()).padStart(2,"0"),e=String(n.getHours()).padStart(2,"0"),s=String(n.getMinutes()).padStart(2,"0"),r=String(n.getSeconds()).padStart(2,"0");return`${a}-${i}-${o} ${e}:${s}:${r}`}};export{m as a};
2
+ //# sourceMappingURL=chunk-Z5FUR5ZW.js.map
@@ -1,3 +1,3 @@
1
- import{a as R,b as O}from"./chunk-3PA6BJES.js";import{a as q}from"./chunk-2EMFCVYO.js";import{a as g}from"./chunk-UFBTR2BG.js";import{a as U}from"./chunk-5C3KCWYF.js";import{e as P}from"./chunk-JZHYGU3K.js";import{h as y,j as L}from"./chunk-7SAFEFWU.js";import{p as D}from"./chunk-SLSTIBOT.js";import{C as v,R as T,a as h,aa as p,b as S,h as E,k as d,y as A}from"./chunk-TBMJSIBB.js";var f=E(D());var _=class u{static compareAsc(C,e){let s=(C.sequence??0)-(e.sequence??0);if(s!==0)return s;let n=typeof C.timestamp=="string"?C.timestamp:"",t=typeof e.timestamp=="string"?e.timestamp:"",o=n.localeCompare(t);if(o!==0)return o;let i=typeof C.messageKey=="string"?C.messageKey:"",r=typeof e.messageKey=="string"?e.messageKey:"";return i.localeCompare(r)}static sortAsc(C){return[...C].sort(u.compareAsc)}};var M=E(D());var x=(()=>{class u{parent;agentToolUseIds=new Set;activeSubAgentId="";toolUseIdToName=new Map;init(e){this.parent=e}resetTrackingState(){this.toolUseIdToName.clear(),this.agentToolUseIds.clear(),this.activeSubAgentId=""}handleSocketEvent(e,s){let n=e.event,t=e.payload;try{let o=typeof t.ccapId=="string"?t.ccapId:"";if(n!=="cc:rate-limit-update"&&n!=="ext-session-msg:message"&&n!=="ext-session-msg:update"&&o&&s.selectedCcapId&&o!==s.selectedCcapId){M.DyFM_Log.info(`CCAP_CcSession_DS | socket event dropped by instance filter | event: ${n} | eventCcapId: ${o} | selectedCcapId: ${s.selectedCcapId}`);return}switch(n){case"cc-session:status":this.handleStatusUpdate(t);break;case"cc-session:output":this.handleOutputChunk(t);break;case"cc-session:event":this.handleSessionEvent(t);break;case"cc-session:list-update":this.handleListUpdate(t);break;case"cc-session:session-update":this.handleSessionItemUpdate(t);break;case"agent-events":this.handleAgentEvent(t);break;case"ext-session-msg:message":this.handleAssembledMessage(t);break;case"ext-session-msg:update":this.handleAssembledMessageUpdate(t);break;case"cc:rate-limit-update":this.handleRateLimitBroadcast(t);break}}catch(o){let i=o instanceof Error?o.message:String(o);M.DyFM_Log.error(`CCAP_CcSession_DS | socket event error | event: ${n}`,o),s.globalErrorShowError(o instanceof Error?o:new Error(`CC Session socket event processing failed: ${n} \u2014 ${i}`),"cc-session-socket-event")}}pushConsoleMessageFromEvent(e,s,n){let t=e.data;switch(e.eventType){case"response-chunk":{this.pushResponseChunkBlocks(t);break}case"tool-call-start":{let o=t.name??t.tool_name??"unknown",i=typeof t.id=="string"?t.id:"";i&&this.toolUseIdToName.set(i,o),o==="Agent"&&i&&this.agentToolUseIds.add(i);let r=t.input,a=r?u.summarizeToolInput(r):"",l=a?`${o}: ${a}`:o,c=o==="Edit"?u.buildEditExpandableContent(r):void 0,m=o==="Agent"?"":this.activeSubAgentId;this.parent.pushConsoleMessage({type:"tool",text:l,expandableContent:c,rawData:t,parentAgentId:m||void 0});break}case"tool-call-end":{let o=t.content??t.output,i=typeof o=="string"?o:"",r=i.length>200?i.substring(0,200)+"\u2026":i;if(r){let a=i.length>200?i:void 0;this.parent.pushConsoleMessage({type:"tool-result",text:r,expandableContent:a,rawData:t,parentAgentId:this.activeSubAgentId||void 0})}break}case"response-complete":{this.activeSubAgentId="";let o=t.cost_usd,i=typeof o=="number"?` ($${o.toFixed(4)})`:"",r=typeof t.model=="string"?` \xB7 ${t.model}`:"";this.parent.pushConsoleMessage({type:"result",text:`Response complete${r}${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)}),this.accumulateUsage(t);break}case"prompt-sent":{let o=typeof t.content=="string"?t.content:"";o&&(this.parent.consoleMessages_$().some(a=>a.type==="prompt"&&a.text===o.trim())||this.parent.pushConsoleMessage({type:"prompt",text:o,rawData:t,expandableContent:JSON.stringify(t,null,2)}));break}case"status-change":{let o=typeof t.from=="string"?t.from:"",i=typeof t.to=="string"?t.to:"";if(i){let r=typeof t.statusMessage=="string"?t.statusMessage:void 0,a=o?`${o} \u2192 ${i}`:i,l=r?`${a} \u2014 ${r}`:a;this.parent.pushConsoleMessage({type:"status",text:l,isStatus:!0,rawData:t,expandableContent:JSON.stringify(t,null,2)})}break}case"config-change":{let o=t.update,i=o&&typeof o=="object"?Object.keys(o).join(", "):"unknown";this.parent.pushConsoleMessage({type:"info",text:`Config updated: ${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"error":{let o=typeof t.message=="string"?t.message:"Unknown error";this.parent.pushConsoleMessage({type:"error",text:o,rawData:t,expandableContent:JSON.stringify(t,null,2)}),s&&n(new Error(`CC Session error: ${o}`),"cc-session-event");break}case"usage-update":{this.accumulateUsage(t);break}case"cli-chunk":{this.handleCliChunkEvent(t);break}case"runner-overflow":{let i=`Runner buffer overflow: ${typeof t.droppedCount=="number"?t.droppedCount:0} output items lost during server disconnect`;this.parent.pushConsoleMessage({type:"error",text:i,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"interrupted-prompt":{let o=typeof t.reason=="string"?t.reason:"",i=typeof t.lastPrompt=="string"?t.lastPrompt:"",r=i.length>80?i.substring(0,80)+"\u2026":i,a=r?`Prompt interrupted (${o}): "${r}"`:`Prompt interrupted${o?" ("+o+")":""}`;this.parent.pushConsoleMessage({type:"status",text:a,isStatus:!0,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"session-init":{let o=typeof t.model=="string"?t.model:"",i=typeof t.claudeCodeVersion=="string"?t.claudeCodeVersion:"",r=typeof t.permissionMode=="string"?t.permissionMode:"",a=[];o&&a.push(o),r&&a.push(r),i&&a.push(`v${i}`);let l=a.length>0?`CLI init: ${a.join(" \xB7 ")}`:"CLI initialized",c=JSON.stringify(t,null,2);this.parent.pushConsoleMessage({type:"info",text:l,rawData:t,expandableContent:c});break}case"config-mismatch":{let o=t.mismatches,i=Array.isArray(o)?o.map(r=>`${r.field}: requested "${r.requested}" \u2192 actual "${r.actual}"`).join(", "):"unknown mismatch";this.parent.pushConsoleMessage({type:"error",text:`Config mismatch: ${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"cli-args-record":{let o=typeof t.model=="string"?t.model:"default",i=typeof t.reasoningEffort=="string"?t.reasoningEffort:"default",r=typeof t.mode=="string"?t.mode:"normal",a=typeof t.permissionPolicy=="string"?t.permissionPolicy:"default",l=`CLI spawn: model=${o} \xB7 effort=${i} \xB7 mode=${r} \xB7 permission=${a}`;this.parent.pushConsoleMessage({type:"info",text:l,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"stdout-line":case"stderr-line":break;default:{let o=e.eventType;this.parent.pushConsoleMessage({type:"raw",text:o,rawData:t});break}}}handleStatusUpdate(e){let s=e.sessionId??"",n=e.status??"",t=e.statusMessage;this.parent.lastStatusUpdate_$.set({sessionId:s,status:n,statusMessage:t});let i=this.parent.sessions_$().map(a=>a.sessionId===s?S(h({},a),{status:n,statusMessage:t}):a);this.parent.sessions_$.set(i);let r=this.parent.selectedSession_$();if(r?.session.sessionId===s){let a=u.isLiveCcSessionStatus(n);this.parent.selectedSession_$.set(S(h({},r),{session:S(h({},r.session),{status:n,statusMessage:t}),runtime:S(h({},r.runtime),{isLive:a,runtimeStatus:n})}))}if(n==="errored"){let a=(t??"").trim();if(a.startsWith("Auto-recovery: terminal runner dropped silently")||a.startsWith("Exit code:"))M.DyFM_Log.warn(`CCAP_CcSession | user-task-fail diagnostic (NOT recorded to /errors) | sessionId: ${s} | statusMessage: ${a}`);else{let c=t?`CC Session error (${s}): ${t}`:`CC Session error (${s}): session entered errored state`;this.parent.showGlobalError(new Error(c),"cc-session-status")}}this.parent.evaluateSessionEventsPolling()}handleOutputChunk(e){let s=e.sessionId??"";if(s&&s!==this.parent.activeSessionId_$())return;let n=e.content??"",t=e.type??"stdout",o=this.parent.liveOutput_$(),i=n.split(`
1
+ import{a as R,b as O}from"./chunk-VMXIXZV2.js";import{a as q}from"./chunk-I3FSMGMK.js";import{a as g}from"./chunk-UFBTR2BG.js";import{a as U}from"./chunk-SDVXPGB7.js";import{e as P}from"./chunk-TWK7BOB7.js";import{h as y,j as L}from"./chunk-PVSQ5ZEZ.js";import{p as D}from"./chunk-Y6V4NGLU.js";import{C as v,R as T,a as h,aa as p,b as S,h as E,k as d,y as A}from"./chunk-TBMJSIBB.js";var f=E(D());var _=class u{static compareAsc(C,e){let s=(C.sequence??0)-(e.sequence??0);if(s!==0)return s;let n=typeof C.timestamp=="string"?C.timestamp:"",t=typeof e.timestamp=="string"?e.timestamp:"",o=n.localeCompare(t);if(o!==0)return o;let i=typeof C.messageKey=="string"?C.messageKey:"",r=typeof e.messageKey=="string"?e.messageKey:"";return i.localeCompare(r)}static sortAsc(C){return[...C].sort(u.compareAsc)}};var M=E(D());var x=(()=>{class u{parent;agentToolUseIds=new Set;activeSubAgentId="";toolUseIdToName=new Map;init(e){this.parent=e}resetTrackingState(){this.toolUseIdToName.clear(),this.agentToolUseIds.clear(),this.activeSubAgentId=""}handleSocketEvent(e,s){let n=e.event,t=e.payload;try{let o=typeof t.ccapId=="string"?t.ccapId:"";if(n!=="cc:rate-limit-update"&&n!=="ext-session-msg:message"&&n!=="ext-session-msg:update"&&o&&s.selectedCcapId&&o!==s.selectedCcapId){M.DyFM_Log.info(`CCAP_CcSession_DS | socket event dropped by instance filter | event: ${n} | eventCcapId: ${o} | selectedCcapId: ${s.selectedCcapId}`);return}switch(n){case"cc-session:status":this.handleStatusUpdate(t);break;case"cc-session:output":this.handleOutputChunk(t);break;case"cc-session:event":this.handleSessionEvent(t);break;case"cc-session:list-update":this.handleListUpdate(t);break;case"cc-session:session-update":this.handleSessionItemUpdate(t);break;case"agent-events":this.handleAgentEvent(t);break;case"ext-session-msg:message":this.handleAssembledMessage(t);break;case"ext-session-msg:update":this.handleAssembledMessageUpdate(t);break;case"cc:rate-limit-update":this.handleRateLimitBroadcast(t);break}}catch(o){let i=o instanceof Error?o.message:String(o);M.DyFM_Log.error(`CCAP_CcSession_DS | socket event error | event: ${n}`,o),s.globalErrorShowError(o instanceof Error?o:new Error(`CC Session socket event processing failed: ${n} \u2014 ${i}`),"cc-session-socket-event")}}pushConsoleMessageFromEvent(e,s,n){let t=e.data;switch(e.eventType){case"response-chunk":{this.pushResponseChunkBlocks(t);break}case"tool-call-start":{let o=t.name??t.tool_name??"unknown",i=typeof t.id=="string"?t.id:"";i&&this.toolUseIdToName.set(i,o),o==="Agent"&&i&&this.agentToolUseIds.add(i);let r=t.input,a=r?u.summarizeToolInput(r):"",l=a?`${o}: ${a}`:o,c=o==="Edit"?u.buildEditExpandableContent(r):void 0,m=o==="Agent"?"":this.activeSubAgentId;this.parent.pushConsoleMessage({type:"tool",text:l,expandableContent:c,rawData:t,parentAgentId:m||void 0});break}case"tool-call-end":{let o=t.content??t.output,i=typeof o=="string"?o:"",r=i.length>200?i.substring(0,200)+"\u2026":i;if(r){let a=i.length>200?i:void 0;this.parent.pushConsoleMessage({type:"tool-result",text:r,expandableContent:a,rawData:t,parentAgentId:this.activeSubAgentId||void 0})}break}case"response-complete":{this.activeSubAgentId="";let o=t.cost_usd,i=typeof o=="number"?` ($${o.toFixed(4)})`:"",r=typeof t.model=="string"?` \xB7 ${t.model}`:"";this.parent.pushConsoleMessage({type:"result",text:`Response complete${r}${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)}),this.accumulateUsage(t);break}case"prompt-sent":{let o=typeof t.content=="string"?t.content:"";o&&(this.parent.consoleMessages_$().some(a=>a.type==="prompt"&&a.text===o.trim())||this.parent.pushConsoleMessage({type:"prompt",text:o,rawData:t,expandableContent:JSON.stringify(t,null,2)}));break}case"status-change":{let o=typeof t.from=="string"?t.from:"",i=typeof t.to=="string"?t.to:"";if(i){let r=typeof t.statusMessage=="string"?t.statusMessage:void 0,a=o?`${o} \u2192 ${i}`:i,l=r?`${a} \u2014 ${r}`:a;this.parent.pushConsoleMessage({type:"status",text:l,isStatus:!0,rawData:t,expandableContent:JSON.stringify(t,null,2)})}break}case"config-change":{let o=t.update,i=o&&typeof o=="object"?Object.keys(o).join(", "):"unknown";this.parent.pushConsoleMessage({type:"info",text:`Config updated: ${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"error":{let o=typeof t.message=="string"?t.message:"Unknown error";this.parent.pushConsoleMessage({type:"error",text:o,rawData:t,expandableContent:JSON.stringify(t,null,2)}),s&&n(new Error(`CC Session error: ${o}`),"cc-session-event");break}case"usage-update":{this.accumulateUsage(t);break}case"cli-chunk":{this.handleCliChunkEvent(t);break}case"runner-overflow":{let i=`Runner buffer overflow: ${typeof t.droppedCount=="number"?t.droppedCount:0} output items lost during server disconnect`;this.parent.pushConsoleMessage({type:"error",text:i,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"interrupted-prompt":{let o=typeof t.reason=="string"?t.reason:"",i=typeof t.lastPrompt=="string"?t.lastPrompt:"",r=i.length>80?i.substring(0,80)+"\u2026":i,a=r?`Prompt interrupted (${o}): "${r}"`:`Prompt interrupted${o?" ("+o+")":""}`;this.parent.pushConsoleMessage({type:"status",text:a,isStatus:!0,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"session-init":{let o=typeof t.model=="string"?t.model:"",i=typeof t.claudeCodeVersion=="string"?t.claudeCodeVersion:"",r=typeof t.permissionMode=="string"?t.permissionMode:"",a=[];o&&a.push(o),r&&a.push(r),i&&a.push(`v${i}`);let l=a.length>0?`CLI init: ${a.join(" \xB7 ")}`:"CLI initialized",c=JSON.stringify(t,null,2);this.parent.pushConsoleMessage({type:"info",text:l,rawData:t,expandableContent:c});break}case"config-mismatch":{let o=t.mismatches,i=Array.isArray(o)?o.map(r=>`${r.field}: requested "${r.requested}" \u2192 actual "${r.actual}"`).join(", "):"unknown mismatch";this.parent.pushConsoleMessage({type:"error",text:`Config mismatch: ${i}`,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"cli-args-record":{let o=typeof t.model=="string"?t.model:"default",i=typeof t.reasoningEffort=="string"?t.reasoningEffort:"default",r=typeof t.mode=="string"?t.mode:"normal",a=typeof t.permissionPolicy=="string"?t.permissionPolicy:"default",l=`CLI spawn: model=${o} \xB7 effort=${i} \xB7 mode=${r} \xB7 permission=${a}`;this.parent.pushConsoleMessage({type:"info",text:l,rawData:t,expandableContent:JSON.stringify(t,null,2)});break}case"stdout-line":case"stderr-line":break;default:{let o=e.eventType;this.parent.pushConsoleMessage({type:"raw",text:o,rawData:t});break}}}handleStatusUpdate(e){let s=e.sessionId??"",n=e.status??"",t=e.statusMessage;this.parent.lastStatusUpdate_$.set({sessionId:s,status:n,statusMessage:t});let i=this.parent.sessions_$().map(a=>a.sessionId===s?S(h({},a),{status:n,statusMessage:t}):a);this.parent.sessions_$.set(i);let r=this.parent.selectedSession_$();if(r?.session.sessionId===s){let a=u.isLiveCcSessionStatus(n);this.parent.selectedSession_$.set(S(h({},r),{session:S(h({},r.session),{status:n,statusMessage:t}),runtime:S(h({},r.runtime),{isLive:a,runtimeStatus:n})}))}if(n==="errored"){let a=(t??"").trim();if(a.startsWith("Auto-recovery: terminal runner dropped silently")||a.startsWith("Exit code:"))M.DyFM_Log.warn(`CCAP_CcSession | user-task-fail diagnostic (NOT recorded to /errors) | sessionId: ${s} | statusMessage: ${a}`);else{let c=t?`CC Session error (${s}): ${t}`:`CC Session error (${s}): session entered errored state`;this.parent.showGlobalError(new Error(c),"cc-session-status")}}this.parent.evaluateSessionEventsPolling()}handleOutputChunk(e){let s=e.sessionId??"";if(s&&s!==this.parent.activeSessionId_$())return;let n=e.content??"",t=e.type??"stdout",o=this.parent.liveOutput_$(),i=n.split(`
2
2
  `),r=3e3;if(t==="stderr"){let c=new Set(this.parent.liveStderrLines_$()),m=o.length;for(let I=0;I<i.length;I++)c.add(m+I);this.parent.liveStderrLines_$.set(c)}let l=[...o,...i];if(l.length>r){let c=l.length-r,m=l.slice(c),I=this.parent.liveStderrLines_$(),b=new Set;for(let w of I){let $=w-c;$>=0&&b.add($)}this.parent.liveStderrLines_$.set(b),this.parent.liveOutput_$.set(m)}else this.parent.liveOutput_$.set(l)}handleSessionEvent(e){let s=e.sessionId??"";if(s&&s!==this.parent.activeSessionId_$())return;let n=e.event??{},t={sessionId:s,eventType:n.eventType??"",timestamp:n.timestamp??"",data:n.data??{},sequence:n.sequence??0,eventSource:typeof n.eventSource=="string"?n.eventSource:void 0};if(t.sequence<=this.parent.getLastKnownEventSequence())return;this.parent.setLastKnownEventSequence(t.sequence);let o=this.parent.selectedSessionEvents_$();this.parent.selectedSessionEvents_$.set([...o,t]),this.pushConsoleMessageFromEvent(t,!0,(i,r)=>{this.parent.showGlobalError(i,r)})}handleAgentEvent(e){let s=typeof e.phase=="string"?e.phase:void 0;if(s)switch(s){case g.runInitialization:this.parent.pushConsoleMessage({type:"status",text:"RUN initialization",isStatus:!0});break;case g.analyze:this.parent.pushConsoleMessage({type:"status",text:"Analyzing incoming message",isStatus:!0});break;case g.analyzeResult:{let n=typeof e.runIntent=="string"?e.runIntent:"";n&&this.parent.pushConsoleMessage({type:"run-intent",text:n,isStatus:!1});break}case g.assemble:this.parent.pushConsoleMessage({type:"status",text:"Refreshing Context",isStatus:!0});break;case g.executionStart:this.parent.pushConsoleMessage({type:"status",text:"Starting Agent",isStatus:!0});break;case g.llmAgenticLoop:this.parent.pushConsoleMessage({type:"status",text:"Selecting next move",isStatus:!0});break;case g.agenticLoopIteration:{let n=typeof e.action=="string"?e.action:"",t=typeof e.tool=="string"?e.tool:"",o=typeof e.intent=="string"?e.intent:"",i=[];n&&i.push(n),t&&i.push(t),o&&i.push(o);let r=i.join(" \xB7 ");r&&this.parent.pushConsoleMessage({type:"iteration",text:r,isStatus:!1});break}case g.llmToolDescription:this.parent.pushConsoleMessage({type:"status",text:"Assembling tool inputs",isStatus:!0});break;case g.llmToolErrorRetry:this.parent.pushConsoleMessage({type:"status",text:"Figuring out what's wrong",isStatus:!0});break;case g.toolErrorRetry:this.parent.pushConsoleMessage({type:"status",text:"Trying to fix inputs",isStatus:!0});break;case g.executionEnd:this.parent.pushConsoleMessage({type:"status",text:"Finishing run",isStatus:!0});break;case g.finalization:case g.llmRunFinalization:this.parent.pushConsoleMessage({type:"status",text:"Gathering what we've done",isStatus:!0});break;case g.postFinalization:this.parent.pushConsoleMessage({type:"status",text:"Memorizing stuff",isStatus:!0});break;case g.runFlowComplete:this.parent.pushConsoleMessage({type:"status",text:"Getting back to user",isStatus:!0});break}}handleRateLimitBroadcast(e){let s=e.rate_limit_info;if(!s||typeof s!="object")return;let n=s,t={status:typeof n.status=="string"?n.status:"",resetsAt:typeof n.resetsAt=="number"?n.resetsAt:0,rateLimitType:typeof n.rateLimitType=="string"?n.rateLimitType:"",utilization:typeof n.utilization=="number"?n.utilization:0,surpassedThreshold:typeof n.surpassedThreshold=="number"?n.surpassedThreshold:0,isUsingOverage:n.isUsingOverage===!0,receivedAt:new Date().toISOString()};this.parent.rateLimitInfo_$.set(t)}handleListUpdate(e){let s=e.sessions??[],o=[...this.parent.sessions_$().some(i=>i.isArchived===!0)?s:s.filter(i=>!i.isArchived)].sort((i,r)=>{let a=i.lastActivityAt?new Date(i.lastActivityAt).getTime():0;return(r.lastActivityAt?new Date(r.lastActivityAt).getTime():0)-a});this.parent.sessions_$.set(o),this.mergeActiveSessionDetail(s)}handleSessionItemUpdate(e){let s=typeof e.sessionId=="string"?e.sessionId:"";if(!s)return;let n=typeof e.update=="object"&&e.update!==null?e.update:{},o=this.parent.sessions_$().map(r=>r.sessionId!==s?r:u.applySessionFieldUpdate(r,n));this.parent.sessions_$.set(o);let i=this.parent.selectedSession_$();i?.session.sessionId===s&&this.parent.selectedSession_$.set(S(h({},i),{session:u.applySessionFieldUpdate(i.session,n)}))}static applySessionFieldUpdate(e,s){let n=h({},e);return typeof s.toolCallCountIncrement=="number"&&(n.toolCallCount=(n.toolCallCount??0)+s.toolCallCountIncrement),typeof s.promptCountIncrement=="number"&&(n.promptCount=(n.promptCount??0)+s.promptCountIncrement),typeof s.inputTokensIncrement=="number"&&(n.inputTokensTotal=(n.inputTokensTotal??0)+s.inputTokensIncrement),typeof s.outputTokensIncrement=="number"&&(n.outputTokensTotal=(n.outputTokensTotal??0)+s.outputTokensIncrement),typeof s.costUsdIncrement=="number"&&(n.costUsdTotal=(n.costUsdTotal??0)+s.costUsdIncrement),typeof s.status=="string"&&(n.status=s.status),(typeof s.statusMessage=="string"||s.statusMessage===void 0)&&(n.statusMessage=s.statusMessage),typeof s.lastActivityAt=="string"&&(n.lastActivityAt=s.lastActivityAt),typeof s.lastPrompt=="string"&&(n.lastPrompt=s.lastPrompt),typeof s.activeModel=="string"&&(n.activeModel=s.activeModel),n}mergeActiveSessionDetail(e){let s=this.parent.activeSessionId_$();if(!s)return;let n=this.parent.selectedSession_$();if(!n)return;let t=e.find(o=>o.sessionId===s);t&&this.parent.selectedSession_$.set(S(h({},n),{session:h(h({},n.session),t)}))}handleAssembledMessage(e){let s=typeof e.sessionId=="string"?e.sessionId:"",n=this.parent.activeSessionId_$();if(!s||s!==n)return;let t=e.message;if(!t||typeof t!="object"){M.DyFM_Log.warn("CCAP_CcSession_DS | handleAssembledMessage dropped: invalid message payload",{sessionId:s,payloadKeys:Object.keys(e)});return}let o=t,i=this.parent.assembledMessages_$(),r=typeof o.messageKey=="string"?o.messageKey:"";r&&i.some(a=>a.messageKey===r)||this.parent.assembledMessages_$.set(_.sortAsc([...i,o]))}handleAssembledMessageUpdate(e){let s=typeof e.sessionId=="string"?e.sessionId:"";if(!s||s!==this.parent.activeSessionId_$())return;let n=typeof e.messageKey=="string"?e.messageKey:"";if(!n)return;let t=e.update;if(!t||typeof t!="object")return;let o=t,i=this.parent.assembledMessages_$(),r=i.findIndex(c=>c.messageKey===n);if(r<0)return;let a=h({},i[r]);typeof o.bodyText=="string"&&(a.bodyText=o.bodyText),o.toolResult!==void 0&&(a.toolResult=o.toolResult),typeof o.toolStatus=="string"&&(a.toolStatus=o.toolStatus),o.headerStatusDot!==void 0&&(a.headerStatusDot=typeof o.headerStatusDot=="string"?o.headerStatusDot:void 0);let l=[...i];l[r]=a,this.parent.assembledMessages_$.set(l)}handleCliChunkEvent(e){let s=typeof e.type=="string"?e.type:"";if(s==="rate_limit_event"){let n=e.rate_limit_info;if(n&&typeof n=="object"){let t=n,o={status:typeof t.status=="string"?t.status:"",resetsAt:typeof t.resetsAt=="number"?t.resetsAt:0,rateLimitType:typeof t.rateLimitType=="string"?t.rateLimitType:"",utilization:typeof t.utilization=="number"?t.utilization:0,surpassedThreshold:typeof t.surpassedThreshold=="number"?t.surpassedThreshold:0,isUsingOverage:t.isUsingOverage===!0,receivedAt:new Date().toISOString()};this.parent.rateLimitInfo_$.set(o)}return}if(s==="system"){this.handleCliChunkSystemEvent(e);return}this.handleCliChunkToolResults(e)||this.parent.pushConsoleMessage({type:"raw",text:s||"cli-chunk",rawData:e})}handleCliChunkSystemEvent(e){let s=typeof e.subtype=="string"?e.subtype:"",n=typeof e.description=="string"?e.description:u.buildSystemEventBrief({subtype:s,data:e}),t=typeof e.tool_use_id=="string"?e.tool_use_id:"";t&&this.agentToolUseIds.has(t)&&(this.activeSubAgentId=t);let o=t&&this.agentToolUseIds.has(t)?t:this.activeSubAgentId||void 0,i=typeof e.last_tool_name=="string"?e.last_tool_name:"";if(s==="task_progress"&&i){this.parent.pushConsoleMessage({type:"tool",text:`${i}: ${n}`,isStatus:!1,rawData:e,parentAgentId:o});return}this.parent.pushConsoleMessage({type:"status-update",text:n,subtype:s,isStatus:!1,rawData:e,parentAgentId:o})}pushResponseChunkBlocks(e){let s=e.message,n=s&&typeof s=="object"?s.content:e.content;if(Array.isArray(n)){for(let t of n){if(!t||typeof t!="object")continue;let o=t,i=typeof o.type=="string"?o.type:"";if(i==="text"){let r=typeof o.text=="string"?o.text:"";r&&(this.activeSubAgentId="",this.parent.pushConsoleMessage({type:"assistant",text:r,rawData:e}))}else if(i==="tool_use")this.handleResponseChunkToolUse(o,e);else if(i==="tool_result")this.handleResponseChunkToolResult(o);else if(i==="thinking"){let r=typeof o.thinking=="string"?o.thinking:"";r&&this.parent.pushConsoleMessage({type:"thinking",text:r,rawData:o,parentAgentId:this.activeSubAgentId||void 0})}else i&&this.parent.pushConsoleMessage({type:"raw",text:i,rawData:o})}return}if(typeof n=="string"&&n){this.parent.pushConsoleMessage({type:"assistant",text:n,rawData:e});return}this.parent.pushConsoleMessage({type:"raw",text:"response-chunk",rawData:e})}handleResponseChunkToolUse(e,s){let n=typeof e.name=="string"?e.name:"unknown",t=typeof e.id=="string"?e.id:"";t&&this.toolUseIdToName.set(t,n),n==="Agent"&&t&&this.agentToolUseIds.add(t);let o=e.input,i=o?u.summarizeToolInput(o):"",r=i?`${n}: ${i}`:n,a=n==="Edit"?u.buildEditExpandableContent(o):void 0,l=n==="Agent"?"":this.activeSubAgentId;this.parent.pushConsoleMessage({type:"tool",text:r,expandableContent:a,rawData:e,parentAgentId:l||void 0})}handleResponseChunkToolResult(e){let s=typeof e.tool_use_id=="string"?e.tool_use_id:"",n=s&&this.agentToolUseIds.has(s)?s:this.activeSubAgentId||"",t=e.content??e.output,o=typeof t=="string"?t:"",i=o.length>200?o.substring(0,200)+"\u2026":o||"tool_result";this.parent.pushConsoleMessage({type:"tool-result",text:i,expandableContent:o.length>200?o:void 0,rawData:e,parentAgentId:n||void 0})}handleCliChunkToolResults(e){if((typeof e.type=="string"?e.type:"")!=="user")return!1;let n=e.message,t=n&&typeof n=="object"?n.content:null;if(!Array.isArray(t))return!1;let o=typeof e.parent_tool_use_id=="string"?e.parent_tool_use_id:"",i=!1;for(let r of t){if(!r||typeof r!="object")continue;let a=r,l=typeof a.type=="string"?a.type:"";if(l==="tool_result"){let c=typeof a.tool_use_id=="string"?a.tool_use_id:"",m=c?this.toolUseIdToName.get(c)??"":"",I=a.content,b=typeof I=="string"?I:"",w=a.is_error===!0,$=m?`${m}: `:"",k=b.length>200?b.substring(0,200)+"\u2026":b||"tool result",F=w?`${$}ERROR \u2014 ${k}`:`${$}${k}`;this.parent.pushConsoleMessage({type:"tool-result",text:F,expandableContent:b.length>200?b:void 0,rawData:S(h({},a),{parent_tool_use_id:o||void 0}),parentAgentId:o||void 0}),i=!0}else if(l==="text"&&o){let c=typeof a.text=="string"?a.text:"";if(c){let m=c.length>200?c.substring(0,200)+"\u2026":c;this.parent.pushConsoleMessage({type:"tool-result",text:m,expandableContent:c.length>200?c:void 0,rawData:{tool_use_id:o,type:"sub-agent-prompt",text:c},parentAgentId:o}),i=!0}}}return i}static isLiveCcSessionStatus(e){return e==="running"||e==="waiting-input"||e==="starting"}static buildSystemEventBrief(e){switch(e.subtype){case"init":{let s=typeof e.data.cwd=="string"?e.data.cwd:"",n=typeof e.data.model=="string"?e.data.model:"",t=["init"];return s&&t.push(s),n&&t.push(n),t.join(" \xB7 ")}case"task_updated":{let s=e.data.patch,n=s&&typeof s=="object"&&typeof s.status=="string"?s.status:"";return n?`task ${n}`:"task updated"}case"task_notification":{let s=typeof e.data.status=="string"?e.data.status:"";return s?`task ${s}`:"task notification"}default:return e.subtype||"system"}}static buildEditExpandableContent(e){if(!e||typeof e!="object")return;let s=e,n=s.old_string,t=s.new_string;if(typeof n!="string"||typeof t!="string")return;let o=500,i=n.length>o?n.substring(0,o)+"\u2026":n,r=t.length>o?t.substring(0,o)+"\u2026":t;return JSON.stringify({old:i,new:r})}static summarizeToolInput(e){if(typeof e=="string")return e.length>120?e.substring(0,120)+"\u2026":e;if(e&&typeof e=="object"){let s=e,n=s.file_path??s.path,t=s.command,o=s.pattern;if(typeof n=="string")return n;if(typeof t=="string")return t.length>120?t.substring(0,120)+"\u2026":t;if(typeof o=="string")return o}return""}accumulateUsage(e){let s=e.usage,n=typeof e.cost_usd=="number"?e.cost_usd:0,t=0,o=0;if(s&&typeof s=="object"){let r=s;t=typeof r.input_tokens=="number"?r.input_tokens:typeof r.promptTokens=="number"?r.promptTokens:0,o=typeof r.output_tokens=="number"?r.output_tokens:typeof r.completionTokens=="number"?r.completionTokens:0}let i=this.parent.sessionUsage_$();this.parent.sessionUsage_$.set({promptTokens:i.promptTokens+t,completionTokens:i.completionTokens+o,totalTokens:i.totalTokens+t+o,costUsd:i.costUsd+n})}static \u0275fac=function(s){return new(s||u)};static \u0275prov=A({token:u,factory:u.\u0275fac,providedIn:"root"})}return u})();var ne=(()=>{class u{sessions_$=p([]);sessionsLoading_$=p(!1);sessionsLoadError_$=p(null);selectedSession_$=p(null);selectedSessionLoading_$=p(!1);selectedSessionEvents_$=p([]);liveOutput_$=p([]);liveStderrLines_$=p(new Set);consoleMessages_$=p([]);assembledMessages_$=p([]);assembledMessagesHasMore_$=p(!1);isLoadingOlderMessages_$=p(!1);assembledMessagesLoaded_$=p(!1);lastStatusUpdate_$=p(null);sessionUsage_$=p({promptTokens:0,completionTokens:0,totalTokens:0,costUsd:0});rateLimitInfo_$=p(null);activeSessionId_$=p("");ccSession_AS=v(R);extSessionMsg_AS=v(q);globalError_CS=v(L);socket_CS=v(P);ngZone=v(T);peiContext_DS=v(U);socketEventHandler_CS=v(x);eventSubscription=null;reconnectSubscription=null;lastKnownEventSequence=-1;static SESSION_EVENTS_POLL_INTERVAL_MS=5*f.second;sessionEventsPollHandle=null;isSessionEventsPollInFlight=!1;constructor(){this.socketEventHandler_CS.init(this),this.eventSubscription=this.socket_CS.event$.subscribe(e=>{this.ngZone.run(()=>{this.socketEventHandler_CS.handleSocketEvent(e,{selectedCcapId:this.peiContext_DS.activeCcapId_$(),globalErrorShowError:(s,n)=>{this.globalError_CS.showError(s,n)}})})}),this.reconnectSubscription=this.socket_CS.connected$.subscribe(e=>{if(!e)return;let s=this.activeSessionId_$();s&&(this.socket_CS.emit("cc-session:subscribe",{sessionId:s}),this.loadAssembledMessages({sessionId:s}).catch(()=>{}),this.loadSessionDetail({sessionId:s}).catch(()=>{})),this.loadSessions().catch(()=>{}),this.backfillMissedEvents()})}ngOnDestroy(){this.stopSessionEventsPolling(),this.eventSubscription&&(this.eventSubscription.unsubscribe(),this.eventSubscription=null),this.reconnectSubscription&&(this.reconnectSubscription.unsubscribe(),this.reconnectSubscription=null)}showGlobalError(e,s){this.globalError_CS.showError(e,s)}getLastKnownEventSequence(){return this.lastKnownEventSequence}setLastKnownEventSequence(e){this.lastKnownEventSequence=e}evaluateSessionEventsPolling(){let e=this.activeSessionId_$(),s=this.resolveActiveSessionStatusForEventsPolling();!!(e&&this.lastKnownEventSequence>=0&&s!=null&&x.isLiveCcSessionStatus(s))?this.ensureSessionEventsPollingStarted():this.stopSessionEventsPolling()}loadSessions(e){return d(this,null,function*(){this.sessionsLoading_$.set(!0),this.sessionsLoadError_$.set(null);try{let n=[...(yield this.ccSession_AS.listSessions({status:e?.status,workspacePath:e?.workspacePath,includeArchived:e?.includeArchived})).sessions].sort((t,o)=>{let i=t.lastActivityAt?new Date(t.lastActivityAt).getTime():0;return(o.lastActivityAt?new Date(o.lastActivityAt).getTime():0)-i});this.sessions_$.set(n)}catch(s){this.sessionsLoadError_$.set(s)}finally{this.sessionsLoading_$.set(!1)}})}loadPersistedRateLimitState(e){return d(this,null,function*(){let s=e.ccapId?.trim()??"";if(s)try{let n=yield this.ccSession_AS.getRateLimitState({ccapId:s});this.mergePersistedRateLimitState(n.items)}catch(n){f.DyFM_Log.warn(`ClaudeCode_DS | loadPersistedRateLimitState failed (non-blocking) | ccapId: ${s} | ${n instanceof Error?n.message:String(n)}`)}})}mergePersistedRateLimitState(e){if(this.rateLimitInfo_$()!==null)return;let s=O.mapServerItemsToClientInfo(e);s!==null&&this.rateLimitInfo_$.set(s)}loadSessionDetail(e){return d(this,null,function*(){this.selectedSessionLoading_$.set(!0);try{let s=yield this.ccSession_AS.getSession({sessionId:e.sessionId}),n=this.activeSessionId_$();if(n&&n!==e.sessionId){f.DyFM_Log.info(`CCAP_CcSession_DS | loadSessionDetail stale response \u2014 discarded | requestedSessionId: ${e.sessionId} | currentActiveSessionId: ${n}`);return}this.selectedSession_$.set(s)}catch(s){let n=this.activeSessionId_$();if(n&&n!==e.sessionId)return;this.selectedSession_$.set(null);let t=s instanceof Error?s.message:"Failed to load session details";this.pushConsoleMessage({type:"error",text:`Load session failed: ${t}`})}finally{this.selectedSessionLoading_$.set(!1),this.evaluateSessionEventsPolling()}})}loadSessionEvents(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.getSessionEvents({sessionId:e.sessionId,eventType:e.eventType,limit:e.limit??500,latest:!0}),n=this.activeSessionId_$();if(n&&n!==e.sessionId){f.DyFM_Log.info(`CCAP_CcSession_DS | loadSessionEvents stale response \u2014 discarded | requestedSessionId: ${e.sessionId} | currentActiveSessionId: ${n}`);return}this.selectedSessionEvents_$.set(s.events),this.updateLastKnownSequence(s.events);for(let t of s.events)this.socketEventHandler_CS.pushConsoleMessageFromEvent(t,!1,(o,i)=>{this.globalError_CS.showError(o,i)});this.loadAssembledMessages({sessionId:e.sessionId}).catch(()=>{})}catch{let n=this.activeSessionId_$();if(n&&n!==e.sessionId)return;this.selectedSessionEvents_$.set([])}finally{this.evaluateSessionEventsPolling()}})}createSession(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.createSession(e),n=String(s.session.sessionId||"");return yield this.loadSessions(),n}catch(s){throw this.pushConsoleMessage({type:"error",text:`Create session failed: ${y.getErrorMessageForDisplay(s)}`}),s}})}sendPrompt(e){return d(this,null,function*(){let s=e.attachments?.filter(n=>n.isImage&&!!n.base64).map(n=>`data:${n.mimeType};base64,${n.base64}`);this.pushConsoleMessage({type:"prompt",text:e.content,imageDataUrls:s?.length?s:void 0});try{let n=yield this.ccSession_AS.sendPrompt(e);n.relayed&&(n.targetOnline?this.pushConsoleMessage({type:"info",text:`Prompt relayed to remote instance (task: ${n.taskId?.substring(0,8)}\u2026)`}):this.pushConsoleMessage({type:"error",text:`\u26A0 A t\xE1voli instance jelenleg offline \u2014 a prompt queue-ban v\xE1rakozik (task: ${n.taskId?.substring(0,8)}\u2026) \xE9s csak akkor k\xE9zbes\xEDt\u0151dik, ha a target instance online lesz. Ellen\u0151rizd, hogy mindk\xE9t instance fut, \xE9s a Settings \u2192 Cluster sharedSecret azonos.`})),this.evaluateSessionEventsPolling()}catch(n){throw this.pushConsoleMessage({type:"error",text:`Send failed: ${y.getErrorMessageForDisplay(n)}`}),this.globalError_CS.showError(n,"CC Session sendPrompt"),n}})}forkSession(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.forkSession({sessionId:e.sessionId,label:e.label}),n=String(s.session.sessionId||"");return yield this.loadSessions(),n}catch(s){throw this.pushConsoleMessage({type:"error",text:`Fork session failed: ${y.getErrorMessageForDisplay(s)}`}),s}})}resumeSession(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.resumeSession(e);s.relayed&&this.pushConsoleMessage({type:"info",text:s.targetOnline?"Resume relayed to remote instance":"Resume queued for offline remote instance"}),yield this.loadSessions()}catch(s){throw this.pushConsoleMessage({type:"error",text:`Resume failed: ${y.getErrorMessageForDisplay(s)}`}),s}})}stopExecution(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.stopExecution(e);if(s.relayed){this.pushSystemAssembledMessage({sessionId:e.sessionId,text:s.targetOnline?"Stop execution relayed to remote instance":"Stop execution queued for offline remote instance",role:"info"});return}let n=s.message||"Execution stopped";this.pushSystemAssembledMessage({sessionId:e.sessionId,text:n,role:"info"})}catch(s){throw this.pushSystemAssembledMessage({sessionId:e.sessionId,text:`Stop execution failed: ${y.getErrorMessageForDisplay(s)}`,role:"error"}),s}})}loadDiagnostic(e){return d(this,null,function*(){try{return yield this.ccSession_AS.getDiagnostic({sessionId:e.sessionId})}catch(s){return f.DyFM_Log.error(`CCAP_CcSession_DS | loadDiagnostic failed | sessionId: ${e.sessionId}`,s),null}})}terminateSession(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.terminateSession(e);s.relayed?this.pushSystemAssembledMessage({sessionId:e.sessionId,text:s.targetOnline?"Terminate relayed to remote instance":"Terminate queued for offline remote instance",role:"info"}):this.pushSystemAssembledMessage({sessionId:e.sessionId,text:"Session terminated",role:"status"}),yield this.loadSessions()}catch(s){throw this.pushSystemAssembledMessage({sessionId:e.sessionId,text:`Terminate failed: ${y.getErrorMessageForDisplay(s)}`,role:"error"}),s}})}restartRunner(e){return d(this,null,function*(){try{let s=yield this.ccSession_AS.restartRunner(e);this.pushSystemAssembledMessage({sessionId:e.sessionId,text:`Runner restarted (new terminalId: ${s.newTerminalId.slice(0,8)}\u2026). New terminal window should open shortly.`,role:"info"})}catch(s){throw this.pushSystemAssembledMessage({sessionId:e.sessionId,text:`Runner restart failed: ${y.getErrorMessageForDisplay(s)}`,role:"error"}),s}})}setSessionArchived(e){return d(this,null,function*(){try{yield this.ccSession_AS.setSessionArchived(e),yield this.loadSessions()}catch(s){throw this.pushConsoleMessage({type:"error",text:`Archive failed: ${y.getErrorMessageForDisplay(s)}`}),s}})}updateSessionConfig(e){return d(this,null,function*(){try{yield this.ccSession_AS.updateSessionConfig(e);let s=this.selectedSession_$();if(s?.session.sessionId===e.sessionId){let n=h({},s.session);e.label!=null&&(n.label=e.label),e.mode!=null&&(n.mode=e.mode),e.permissionPolicy!=null&&(n.permissionPolicy=e.permissionPolicy),e.reasoningEffort!=null&&(n.reasoningEffort=e.reasoningEffort),e.model!=null&&(n.model=e.model),e.isDebugMode!=null&&(n.isDebugMode=e.isDebugMode),this.selectedSession_$.set(S(h({},s),{session:n}))}if(e.label!=null){let n=this.sessions_$(),t=n.findIndex(o=>o.sessionId===e.sessionId);if(t>=0){let o=[...n];o[t]=S(h({},o[t]),{label:e.label}),this.sessions_$.set(o)}}}catch(s){throw this.pushConsoleMessage({type:"error",text:`Config update failed: ${y.getErrorMessageForDisplay(s)}`}),s}})}setActiveSessionId(e){let s=this.activeSessionId_$();s!==e&&this.stopSessionEventsPolling(),s&&s!==e&&this.socket_CS.emit("cc-session:unsubscribe",{sessionId:s}),this.activeSessionId_$.set(e),e&&this.socket_CS.emit("cc-session:subscribe",{sessionId:e})}clearLiveOutput(){this.stopSessionEventsPolling(),this.liveOutput_$.set([]),this.liveStderrLines_$.set(new Set),this.consoleMessages_$.set([]),this.assembledMessages_$.set([]),this.assembledMessagesHasMore_$.set(!1),this.isLoadingOlderMessages_$.set(!1),this.assembledMessagesLoaded_$.set(!1),this.selectedSession_$.set(null),this.selectedSessionEvents_$.set([]),this.lastStatusUpdate_$.set(null),this.sessionUsage_$.set({promptTokens:0,completionTokens:0,totalTokens:0,costUsd:0}),this.lastKnownEventSequence=-1,this.socketEventHandler_CS.resetTrackingState()}pushConsoleMessage(e){let s=e.type==="assistant"||e.type==="prompt"?e.text.trim():e.text,n={listKey:e.listKey??this.allocateConsoleListKey(),type:e.type,text:s,timestamp:e.timestamp??new Date().toISOString(),isStatus:e.isStatus??!1,expandableContent:e.expandableContent,rawData:e.rawData,subtype:e.subtype,parentAgentId:e.parentAgentId,imageDataUrls:e.imageDataUrls},t=this.consoleMessages_$();this.consoleMessages_$.set([...t,n])}loadAssembledMessages(e){return d(this,null,function*(){try{let s=yield this.extSessionMsg_AS.getMessages({sessionId:e.sessionId,latest:!0}),n=this.activeSessionId_$();if(n&&n!==e.sessionId){f.DyFM_Log.info(`CCAP_CcSession_DS | loadAssembledMessages stale \u2014 discarded | requestedSessionId: ${e.sessionId} | currentActiveSessionId: ${n} | restMessageCount: ${s.messages.length}`);return}let t=this.assembledMessages_$(),o=new Set(s.messages.map(r=>r.messageKey).filter(r=>typeof r=="string"&&r.length>0)),i=t.filter(r=>!o.has(r.messageKey));this.assembledMessages_$.set(_.sortAsc([...s.messages,...i])),this.assembledMessagesHasMore_$.set(s.hasMore)}catch(s){f.DyFM_Log.error(`CCAP_CcSession_DS | loadAssembledMessages failed | sessionId: ${e.sessionId}`,s)}finally{this.assembledMessagesLoaded_$.set(!0)}})}loadOlderAssembledMessages(e){return d(this,null,function*(){if(this.isLoadingOlderMessages_$()||!this.assembledMessagesHasMore_$())return;let s=this.assembledMessages_$();if(!s.length)return;let n=s.reduce((t,o)=>(o.sequence??0)<t?o.sequence??0:t,s[0].sequence??0);this.isLoadingOlderMessages_$.set(!0);try{let t=yield this.extSessionMsg_AS.getMessages({sessionId:e.sessionId,beforeSequence:n,limit:e.limit??50});t.messages.length&&this.assembledMessages_$.set(_.sortAsc([...t.messages,...s])),this.assembledMessagesHasMore_$.set(t.hasMore)}catch(t){f.DyFM_Log.error(`CCAP_CcSession_DS | loadOlderAssembledMessages failed | sessionId: ${e.sessionId}`,t)}finally{this.isLoadingOlderMessages_$.set(!1)}})}pushSystemAssembledMessage(e){let s=this.assembledMessages_$(),n=s.length?s.reduce((o,i)=>(i.sequence??0)>o?i.sequence??0:o,0):0,t={messageKey:`sys-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,sessionId:e.sessionId,sessionType:"cc",messageRole:e.role,bodyText:e.text,timestamp:new Date().toISOString(),sequence:n+1};this.assembledMessages_$.set(_.sortAsc([...s,t])),this.pushConsoleMessage({type:e.role==="error"?"error":e.role==="status"?"status":"info",text:e.text,isStatus:e.role==="status"})}allocateConsoleListKey(){return globalThis.crypto.randomUUID()}pullEventsSinceLastKnownSequence(e){return d(this,null,function*(){let s=this.activeSessionId_$();if(!(!s||this.lastKnownEventSequence<0))try{let t=(yield this.ccSession_AS.getSessionEvents({sessionId:s,sinceSequence:this.lastKnownEventSequence})).events;if(!t.length)return;this.ngZone.run(()=>{let o=this.activeSessionId_$();if(o!==s){f.DyFM_Log.info(`CCAP_CcSession_DS | pull(${e}) stale \u2014 discarded | requestedSessionId: ${s} | currentActiveSessionId: ${o} | newEventCount: ${t.length}`);return}let i=this.selectedSessionEvents_$();this.selectedSessionEvents_$.set([...i,...t]);for(let r of t)this.socketEventHandler_CS.pushConsoleMessageFromEvent(r,!0,(a,l)=>{this.globalError_CS.showError(a,l)});this.updateLastKnownSequence(t)})}catch(n){let t=e==="poll"?"session events poll failed":"backfill failed";f.DyFM_Log.warn(`CCAP_CcSession_DS | ${t}`,n)}})}backfillMissedEvents(){return d(this,null,function*(){yield this.pullEventsSinceLastKnownSequence("backfill")})}updateLastKnownSequence(e){for(let s of e)s.sequence>this.lastKnownEventSequence&&(this.lastKnownEventSequence=s.sequence)}resolveActiveSessionStatusForEventsPolling(){let e=this.activeSessionId_$();if(!e)return null;let s=this.selectedSession_$();if(s?.session.sessionId===e)return s.session.status;let n=this.lastStatusUpdate_$();return n?.sessionId===e?n.status:this.sessions_$().find(o=>o.sessionId===e)?.status??null}ensureSessionEventsPollingStarted(){this.sessionEventsPollHandle===null&&(this.sessionEventsPollHandle=setInterval(()=>{this.onSessionEventsPollTick()},u.SESSION_EVENTS_POLL_INTERVAL_MS))}stopSessionEventsPolling(){this.sessionEventsPollHandle!==null&&(clearInterval(this.sessionEventsPollHandle),this.sessionEventsPollHandle=null),this.isSessionEventsPollInFlight=!1}onSessionEventsPollTick(){return d(this,null,function*(){if(!this.isSessionEventsPollInFlight){this.isSessionEventsPollInFlight=!0;try{yield this.pullEventsSinceLastKnownSequence("poll");let e=this.activeSessionId_$();e&&(yield this.loadAssembledMessages({sessionId:e}))}finally{this.isSessionEventsPollInFlight=!1}}})}static \u0275fac=function(s){return new(s||u)};static \u0275prov=A({token:u,factory:u.\u0275fac,providedIn:"root"})}return u})();export{ne as a};
3
- //# sourceMappingURL=chunk-MY75XBDH.js.map
3
+ //# sourceMappingURL=chunk-ZCHMBEHT.js.map
@@ -1,2 +1,2 @@
1
- import{a as ne}from"./chunk-Q2PKIGLB.js";import{g as fe}from"./chunk-7HSUCNW5.js";import{a as ue}from"./chunk-7JUIBZEE.js";import{a as me}from"./chunk-C7XPBJTG.js";import{a as te}from"./chunk-DJVWZQNB.js";import{o as B,p as L,v as ce}from"./chunk-EO4DNTT4.js";import{f as _e}from"./chunk-KYVIZZWW.js";import{a as R}from"./chunk-5UPNU54P.js";import{I as pe}from"./chunk-SLSTIBOT.js";import{$a as X,C as v,D as y,E as oe,Fa as s,Ga as h,Ha as x,I as re,Ia as V,J as D,Ja as le,K as w,Kb as de,L as E,M as j,Z as l,a as J,aa as u,b as K,bb as Q,da as _,ga as C,ha as H,hb as Z,ia as O,ja as k,k as I,la as c,na as U,oa as b,p as F,pa as P,qa as i,ra as o,sa as m,sb as ee,ua as M,ub as ae,va as S,wa as p,xb as se,y as Y,z as ie}from"./chunk-TBMJSIBB.js";var A="ccap-projectSource",T=class{static savePanelWidth(a,e){R.writeNumber(`${A}:panelWidth:${a}`,e)}static loadPanelWidth(a,e){return R.readNumber(`${A}:panelWidth:${a}`,e)}static savePanelOpen(a,e){R.writeBoolean(`${A}:panelOpen:${a}`,e)}static loadPanelOpen(a,e){return R.readBoolean(`${A}:panelOpen:${a}`,e)}static saveSelectedProjectId(a){R.writeString(`${A}:selectedProjectId`,a)}static loadSelectedProjectId(){return R.readString(`${A}:selectedProjectId`)??""}static saveExpandedFolders(a){R.writeJson(`${A}:expandedFolders`,a)}static loadExpandedFolders(){let a=R.readJson(`${A}:expandedFolders`,[]);return Array.isArray(a)?a:[]}static saveOpenTabIds(a){R.writeJson(`${A}:openTabIds`,a)}static loadOpenTabIds(){let a=R.readJson(`${A}:openTabIds`,[]);return Array.isArray(a)?a:[]}static saveActiveTabId(a){R.writeString(`${A}:activeTabId`,a)}static loadActiveTabId(){return R.readString(`${A}:activeTabId`)??""}};var he=(()=>{class t{baseUrl=`${pe.api.baseUrl}/project-source`;http=v(se);startIngestion(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingest`,{mode:e.mode})}listIngestionRuns(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingestion-runs`)}getIngestionStatus(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingestion-status`)}listFiles(e){let n=new URLSearchParams;e.sourceType&&n.set("sourceType",e.sourceType),e.projectPart&&n.set("projectPart",e.projectPart),e.moduleName&&n.set("moduleName",e.moduleName),e.fileRole&&n.set("fileRole",e.fileRole),e.requirementCode&&n.set("requirementCode",e.requirementCode),e.search&&n.set("search",e.search);let r=n.toString(),d=`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files${r?"?"+r:""}`;return this.http.get(d)}getFileDetail(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files/${encodeURIComponent(e.fileId)}`)}getRequirementCodes(e){let n=e.codePrefix?`?codePrefix=${encodeURIComponent(e.codePrefix)}`:"";return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/requirement-codes${n}`)}getStats(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/stats`)}getModules(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/modules`)}deleteProjectData(e){return this.http.delete(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}`)}startEmbedding(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/embed`,{registryEntryId:e.registryEntryId})}getEmbeddingStatus(e){let n=`?registryEntryId=${encodeURIComponent(e.registryEntryId)}`;return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/embedding-status${n}`)}search(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/search`,{registryEntryId:e.registryEntryId,query:e.query,topK:e.topK??10,metric:e.metric??"cosine",filters:e.filters})}listRelations(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/relations`)}getRelationsForFile(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files/${encodeURIComponent(e.fileId)}/relations`)}listRunFlows(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/run-flows`)}listDataFlows(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/data-flows`)}listDescriptions(e){let n=e.elementType?`?elementType=${encodeURIComponent(e.elementType)}`:"";return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/descriptions${n}`)}updateDescription(e){return this.http.put(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/descriptions/${encodeURIComponent(e.descId)}`,{description:e.description})}static \u0275fac=function(n){return new(n||t)};static \u0275prov=Y({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var G=class t{static buildFileTree(a){let e=new Map,n=[];for(let r of a.files){let d=r.relativePath.split("/"),f=n,$="";for(let W=0;W<d.length-1;W++){$=$?$+"/"+d[W]:d[W];let z=e.get($);z||(z={path:$,name:d[W],isFolder:!0,children:[],file:null,fileCount:0},e.set($,z),f.push(z)),f=z.children}let q=d[d.length-1];f.push({path:r.relativePath,name:q,isFolder:!1,children:[],file:r,fileCount:0})}return t.sortAndCount({nodes:n}),n}static filterTreeBySearch(a){if(!a.query.trim())return a.nodes;let e=te.normalizeForSearch(a.query);return t.filterNodes({nodes:a.nodes,normalizedQuery:e})}static sortAndCount(a){let e=0;a.nodes.sort((n,r)=>n.isFolder&&!r.isFolder?-1:!n.isFolder&&r.isFolder?1:n.name.localeCompare(r.name));for(let n of a.nodes)n.isFolder?(n.fileCount=t.sortAndCount({nodes:n.children}),e+=n.fileCount):e++;return e}static filterNodes(a){let e=[];for(let n of a.nodes){let r=te.normalizeForSearch(n.name).includes(a.normalizedQuery);if(n.isFolder){let d=t.filterNodes({nodes:n.children,normalizedQuery:a.normalizedQuery});(d.length>0||r)&&e.push(K(J({},n),{children:d.length>0?d:n.children,fileCount:d.reduce((f,$)=>f+($.isFolder?$.fileCount:1),0)}))}else r&&e.push(n)}return e}};var g=(()=>{class t{selectedProjectId_$=u(null);projects_$=u([]);stats_$=u(null);latestRun_$=u(null);isIngesting_$=u(!1);files_$=u([]);filesTotal_$=u(0);fileTree_$=u([]);expandedFolders_$=u(new Set);treeSearchQuery_$=u("");openTabs_$=u([]);activeTabId_$=u(null);tabFileCache=new Map;selectedFile_$=u(null);selectedFileChunks_$=u([]);selectedChunkIndex_$=u(null);requirementCodes_$=u([]);availableModules_$=u([]);filterSourceType_$=u("");filterProjectPart_$=u("");filterModule_$=u("");filterFileRole_$=u("");filterReqCode_$=u("");filterSearch_$=u("");isFileTreeOpen_$=u(!0);isInfoPanelOpen_$=u(!0);isEmbedded_$=u(!1);isSearchPanelOpen_$=u(!1);embeddingStatus_$=u(null);isEmbedding_$=u(!1);searchQuery_$=u("");searchResults_$=u([]);isSearching_$=u(!1);selectedRegistryEntryId_$=u(null);relations_$=u([]);runFlows_$=u([]);dataFlows_$=u([]);descriptions_$=u([]);searchMetric_$=u("cosine");isLoading_$=u(!1);error_$=u(null);ps_AS=v(he);pm_AS=v(_e);statusPollTimer=null;loadProjects(){return I(this,null,function*(){try{let n=((yield this.pm_AS.listProjects()).projects??[]).filter(r=>r.localPath&&r.isActive).map(r=>({id:r._id??"",name:r.name??"",localPath:r.localPath??""}));this.projects_$.set(n)}catch(e){this.error_$.set(e instanceof Error?e.message:"Projekt lista bet\xF6lt\xE9se sikertelen.")}})}selectProject(e){return I(this,null,function*(){let n=this.selectedProjectId_$()===e.projectId;n&&this.files_$().length>0||(this.selectedProjectId_$.set(e.projectId),this.error_$.set(null),T.saveSelectedProjectId(e.projectId),n||(this.openTabs_$.set([]),this.activeTabId_$.set(null),this.tabFileCache.clear(),this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.selectedChunkIndex_$.set(null)),yield Promise.all([this.loadStats(),this.loadIngestionStatus(),this.loadModules(),this.loadFilesAndBuildTree(),this.loadRequirementCodes(),this.loadDescriptions()]))})}startIngestion(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n){this.isIngesting_$.set(!0),this.error_$.set(null);try{yield F(this.ps_AS.startIngestion({projectId:n,mode:e.mode})),this.startStatusPolling()}catch(r){this.error_$.set(r instanceof Error?r.message:"Ingestion ind\xEDt\xE1s sikertelen."),this.isIngesting_$.set(!1)}}})}loadIngestionStatus(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getIngestionStatus({projectId:e})),r=this.latestRun_$();if((n.run?.status!==r?.status||n.run?.totalChunksCreated!==r?.totalChunksCreated||n.run?.completedAt!==r?.completedAt)&&this.latestRun_$.set(n.run),n.run?.status==="running")this.isIngesting_$.set(!0);else{let f=this.isIngesting_$();this.isIngesting_$.set(!1),this.stopStatusPolling(),f&&(this.loadFilesAndBuildTree(),this.loadStats(),this.loadRequirementCodes())}}catch(n){this.error_$.set(n instanceof Error?n.message:"Ingestion st\xE1tusz bet\xF6lt\xE9se sikertelen.")}})}loadFilesAndBuildTree(){return I(this,null,function*(){yield this.loadFiles(),this.rebuildTree()})}loadFiles(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e){this.isLoading_$.set(!0),this.error_$.set(null);try{let n=yield F(this.ps_AS.listFiles({projectId:e,sourceType:this.filterSourceType_$()||void 0,projectPart:this.filterProjectPart_$()||void 0,moduleName:this.filterModule_$()||void 0,fileRole:this.filterFileRole_$()||void 0,requirementCode:this.filterReqCode_$()||void 0,search:this.filterSearch_$()||void 0}));this.files_$.set(n.items),this.filesTotal_$.set(n.total)}catch(n){this.error_$.set(n instanceof Error?n.message:"F\xE1jl lista bet\xF6lt\xE9se sikertelen.")}finally{this.isLoading_$.set(!1)}}})}rebuildTree(){let e=G.buildFileTree({files:this.files_$()});this.fileTree_$.set(e)}toggleFolder(e){this.expandedFolders_$.update(n=>{let r=new Set(n);return r.has(e.folderPath)?r.delete(e.folderPath):r.add(e.folderPath),T.saveExpandedFolders(Array.from(r)),r})}openFileInTab(e){let n=e.file.id,r=this.openTabs_$();if(r.some($=>$.fileId===n)){this.setActiveTab({fileId:n});return}let f={fileId:n,fileName:e.file.fileName,relativePath:e.file.relativePath,isLoading:!1};this.openTabs_$.set([...r,f]),this.setActiveTab({fileId:n}),this.persistTabs(),this.tabFileCache.has(n)||this.loadFileForTab({fileId:n})}closeTab(e){let n=this.openTabs_$(),r=n.findIndex(f=>f.fileId===e.fileId);if(r===-1)return;let d=n.filter(f=>f.fileId!==e.fileId);if(this.openTabs_$.set(d),this.tabFileCache.delete(e.fileId),this.activeTabId_$()===e.fileId)if(d.length>0){let f=Math.min(r,d.length-1);this.setActiveTab({fileId:d[f].fileId})}else this.activeTabId_$.set(null),this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.selectedChunkIndex_$.set(null);this.persistTabs()}setActiveTab(e){this.activeTabId_$.set(e.fileId),this.selectedChunkIndex_$.set(null),T.saveActiveTabId(e.fileId);let n=this.tabFileCache.get(e.fileId);n?(this.selectedFile_$.set(n.file),this.selectedFileChunks_$.set(n.chunks),this.loadRelationsForFile({fileId:e.fileId})):(this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.loadFileForTab({fileId:e.fileId}))}selectChunk(e){let n=this.selectedChunkIndex_$();this.selectedChunkIndex_$.set(n===e.chunkIndex?null:e.chunkIndex)}loadStats(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getStats({projectId:e}));this.stats_$.set(n.stats)}catch(n){this.error_$.set(n instanceof Error?n.message:"Statisztik\xE1k bet\xF6lt\xE9se sikertelen.")}})}loadRequirementCodes(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getRequirementCodes({projectId:e}));this.requirementCodes_$.set(n.items)}catch(n){this.error_$.set(n instanceof Error?n.message:"Requirement k\xF3dok bet\xF6lt\xE9se sikertelen.")}})}loadModules(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getModules({projectId:e}));this.availableModules_$.set(n.modules)}catch(n){this.error_$.set(n instanceof Error?n.message:"Modul lista bet\xF6lt\xE9se sikertelen.")}})}toggleFileTree(){let e=!this.isFileTreeOpen_$();this.isFileTreeOpen_$.set(e),T.savePanelOpen("fileTree",e)}toggleInfoPanel(){let e=!this.isInfoPanelOpen_$();this.isInfoPanelOpen_$.set(e),T.savePanelOpen("infoPanel",e)}toggleSearchPanel(){this.isSearchPanelOpen_$.set(!this.isSearchPanelOpen_$())}loadEmbeddingStatus(){return I(this,null,function*(){let e=this.selectedProjectId_$(),n=this.selectedRegistryEntryId_$();if(!(!e||!n))try{let r=yield F(this.ps_AS.getEmbeddingStatus({projectId:e,registryEntryId:n}));this.embeddingStatus_$.set(r)}catch(r){this.error_$.set(r instanceof Error?r.message:"Embedding st\xE1tusz bet\xF6lt\xE9se sikertelen.")}})}startEmbedding(){return I(this,null,function*(){let e=this.selectedProjectId_$(),n=this.selectedRegistryEntryId_$();if(!(!e||!n)){this.isEmbedding_$.set(!0),this.error_$.set(null);try{yield F(this.ps_AS.startEmbedding({projectId:e,registryEntryId:n})),this.startEmbeddingPolling()}catch(r){this.error_$.set(r instanceof Error?r.message:"Embedding ind\xEDt\xE1s sikertelen."),this.isEmbedding_$.set(!1)}}})}search(e){return I(this,null,function*(){let n=this.selectedProjectId_$(),r=this.selectedRegistryEntryId_$();if(!(!n||!r||!e.query.trim())){this.isSearching_$.set(!0),this.error_$.set(null);try{let d=yield F(this.ps_AS.search({projectId:n,registryEntryId:r,query:e.query,metric:this.searchMetric_$()}));this.searchResults_$.set(d.results)}catch(d){this.error_$.set(d instanceof Error?d.message:"Keres\xE9s sikertelen.")}finally{this.isSearching_$.set(!1)}}})}navigateToSearchResult(e){let n=this.files_$().find(r=>r.relativePath===e.result.file.relativePath);n&&(this.openFileInTab({file:n}),this.isSearchPanelOpen_$.set(!1))}loadRelationsForFile(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n)try{let r=yield F(this.ps_AS.getRelationsForFile({projectId:n,fileId:e.fileId}));this.relations_$.set([...r.outgoing,...r.incoming])}catch{}})}loadRunFlows(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listRunFlows({projectId:e}));this.runFlows_$.set(n.items)}catch{}})}loadDataFlows(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listDataFlows({projectId:e}));this.dataFlows_$.set(n.items)}catch{}})}loadDescriptions(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listDescriptions({projectId:e}));this.descriptions_$.set(n.items)}catch{}})}updateDescription(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n)try{yield F(this.ps_AS.updateDescription({projectId:n,descId:e.descId,description:e.description})),yield this.loadDescriptions()}catch(r){this.error_$.set(r instanceof Error?r.message:"Description friss\xEDt\xE9s sikertelen.")}})}embeddingPollTimer=null;startEmbeddingPolling(){this.stopEmbeddingPolling(),this.embeddingPollTimer=setInterval(()=>{this.loadEmbeddingStatus().then(()=>{this.embeddingStatus_$()?.pending===0&&(this.isEmbedding_$.set(!1),this.stopEmbeddingPolling())})},3e3)}stopEmbeddingPolling(){this.embeddingPollTimer&&(clearInterval(this.embeddingPollTimer),this.embeddingPollTimer=null)}loadFileForTab(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n){this.updateTabLoading({fileId:e.fileId,isLoading:!0});try{let r=yield F(this.ps_AS.getFileDetail({projectId:n,fileId:e.fileId}));this.tabFileCache.set(e.fileId,{file:r.file,chunks:r.chunks}),this.activeTabId_$()===e.fileId&&(this.selectedFile_$.set(r.file),this.selectedFileChunks_$.set(r.chunks),this.loadRelationsForFile({fileId:e.fileId}))}catch(r){this.error_$.set(r instanceof Error?r.message:"F\xE1jl detail bet\xF6lt\xE9se sikertelen.")}finally{this.updateTabLoading({fileId:e.fileId,isLoading:!1})}}})}updateTabLoading(e){this.openTabs_$.update(n=>n.map(r=>r.fileId===e.fileId?K(J({},r),{isLoading:e.isLoading}):r))}persistTabs(){let e=this.openTabs_$().map(r=>r.fileId);T.saveOpenTabIds(e);let n=this.activeTabId_$();n&&T.saveActiveTabId(n)}startStatusPolling(){this.stopStatusPolling(),this.statusPollTimer=setInterval(()=>{this.loadIngestionStatus()},3e3)}stopStatusPolling(){this.statusPollTimer&&(clearInterval(this.statusPollTimer),this.statusPollTimer=null)}restoreFromStorage(){this.isFileTreeOpen_$.set(T.loadPanelOpen("fileTree",!0)),this.isInfoPanelOpen_$.set(T.loadPanelOpen("infoPanel",!0));let e=T.loadExpandedFolders();e.length>0&&this.expandedFolders_$.set(new Set(e))}ngOnDestroy(){this.stopStatusPolling(),this.stopEmbeddingPolling()}static \u0275fac=function(n){return new(n||t)};static \u0275prov=Y({token:t,factory:t.\u0275fac})}return t})();var je=(t,a)=>a.id;function Me(t,a){if(t&1&&(i(0,"option",14),s(1),o()),t&2){let e=a.$implicit;C("value",e.id),l(),h(e.name)}}function Re(t,a){if(t&1){let e=M();i(0,"select",12),S("change",function(r){D(e);let d=p();return w(d.handleProjectChange(r.target.value))}),i(1,"option",13),s(2,"Select project..."),o(),b(3,Me,2,2,"option",14,je),o()}if(t&2){let e,n=p();C("value",(e=n.ps_DS.selectedProjectId_$())!==null&&e!==void 0?e:""),l(3),P(n.ps_DS.projects_$())}}function Ae(t,a){t&1&&(m(0,"span",18),s(1," Ingesting... "))}function Ne(t,a){t&1&&(s(0," Ingest "),E(),i(1,"svg",16),m(2,"polyline",3),o())}function Ve(t,a){if(t&1){let e=M();i(0,"div",17)(1,"button",19),S("click",function(){D(e);let r=p(2);return w(r.handleStartIngestion("full"))}),s(2," Full ingestion "),o(),i(3,"button",19),S("click",function(){D(e);let r=p(2);return w(r.handleStartIngestion("incremental"))}),s(4," Incremental "),o()()}}function Oe(t,a){if(t&1){let e=M();i(0,"div",6)(1,"button",15),S("click",function(){D(e);let r=p();return w(r.handleToggleIngestMenu())}),_(2,Ae,2,0)(3,Ne,3,0,":svg:svg",16),o(),_(4,Ve,5,0,"div",17),o()}if(t&2){let e=p();l(),O("opacity-50",e.ps_DS.isIngesting_$()),C("disabled",e.ps_DS.isIngesting_$()),l(),c(e.ps_DS.isIngesting_$()?2:3),l(2),c(e.isIngestMenuOpen_$()&&!e.ps_DS.isIngesting_$()?4:-1)}}function Ue(t,a){if(t&1&&(i(0,"span",8),s(1),o()),t&2){let e=a;C("title",e.relativePath),l(),x(" ",e.relativePath," ")}}function Be(t,a){t&1&&(i(0,"span",9),s(1,"No file selected"),o())}function Le(t,a){t&1&&(i(0,"span",9),s(1,"Select a project to begin"),o())}function Ge(t,a){if(t&1&&(i(0,"span",20),s(1),o(),i(2,"span",21),s(3,"|"),o(),i(4,"span",20),s(5),o(),m(6,"span",4)),t&2){let e=a;l(),x(" ",e.totalFiles," files "),l(4),x(" ",e.totalChunks," chunks ")}}var Se=(()=>{class t{ps_DS=v(g);isIngestMenuOpen_$=u(!1);handleProjectChange(e){e&&this.ps_DS.selectProject({projectId:e})}handleStartIngestion(e){this.isIngestMenuOpen_$.set(!1),this.ps_DS.startIngestion({mode:e})}handleToggleIngestMenu(){this.isIngestMenuOpen_$.update(e=>!e)}handleToggleFileTree(){this.ps_DS.toggleFileTree()}handleToggleSearchPanel(){this.ps_DS.toggleSearchPanel()}handleToggleInfoPanel(){this.ps_DS.toggleInfoPanel()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-ide-toolbar"]],hostAttrs:[1,"block","shrink-0"],decls:19,vars:12,consts:[["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"],[1,"bg-ccapBg","border","border-neonDefault","text-neutral-300","text-xs","rounded","px-2","py-1","max-w-[180px]","truncate","focus:outline-none","focus:border-neonCyan",3,"value"],[1,"relative","shrink-0"],["sSessionToolbarCenter","",1,"flex","items-center","justify-center","gap-2","min-w-0"],[1,"text-xs","text-neutral-500","truncate","max-w-[400px]",3,"title"],[1,"text-xs","text-neutral-500"],["sSessionToolbarRight","",1,"flex","items-center","gap-1","min-w-0","flex-wrap","justify-end"],[1,"px-2","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"click"],[1,"bg-ccapBg","border","border-neonDefault","text-neutral-300","text-xs","rounded","px-2","py-1","max-w-[180px]","truncate","focus:outline-none","focus:border-neonCyan",3,"change","value"],["value","","disabled",""],[3,"value"],[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",3,"click","disabled"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2",1,"w-3","h-3"],[1,"absolute","top-full","left-0","mt-1","bg-ccapSurface","border","border-neonDefault","rounded","shadow-lg","z-20","min-w-[140px]"],[1,"w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"block","w-full","text-left","px-3","py-1.5","text-xs","text-neutral-300","hover:bg-neonCyan/10","hover:text-neonCyan","transition-colors",3,"click"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"text-[10px]","text-neutral-600","shrink-0"]],template:function(n,r){if(n&1&&(i(0,"app-s-session-shell-toolbar")(1,"div",0)(2,"button",1),S("click",function(){return r.handleToggleFileTree()}),E(),i(3,"svg",2),m(4,"polyline",3),o(),s(5," Files "),o(),j(),m(6,"div",4),_(7,Re,5,1,"select",5)(8,Oe,5,5,"div",6),o(),i(9,"div",7),_(10,Ue,2,2,"span",8)(11,Be,2,0,"span",9)(12,Le,2,0,"span",9),o(),i(13,"div",10),_(14,Ge,7,2),i(15,"button",11),S("click",function(){return r.handleToggleSearchPanel()}),s(16," Search "),o(),i(17,"button",11),S("click",function(){return r.handleToggleInfoPanel()}),s(18," Info "),o()()()),n&2){let d,f;l(3),O("rotate-90",r.ps_DS.isFileTreeOpen_$())("-rotate-90",!r.ps_DS.isFileTreeOpen_$()),l(4),c(r.ps_DS.isEmbedded_$()?-1:7),l(),c(r.ps_DS.selectedProjectId_$()?8:-1),l(2),c((d=r.ps_DS.selectedFile_$())?10:r.ps_DS.selectedProjectId_$()?11:12,d),l(4),c((f=r.ps_DS.stats_$())?14:-1,f),l(),k(r.ps_DS.isSearchPanelOpen_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600"),l(2),k(r.ps_DS.isInfoPanelOpen_$()?"border-neonCyan/50 text-neonCyan bg-neonCyan/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600")}},dependencies:[B,L,me],encapsulation:2})}return t})();var We=(t,a)=>a.path;function ze(t,a){if(t&1&&m(0,"app-ps-file-tree-node",6),t&2){let e=a.$implicit,n=p(3);C("node",e)("depth",n.depth+1)}}function He(t,a){if(t&1&&b(0,ze,1,2,"app-ps-file-tree-node",6,We),t&2){let e=p(2);P(e.node.children)}}function Xe(t,a){if(t&1){let e=M();i(0,"button",1),S("click",function(){D(e);let r=p();return w(r.handleFolderToggle())}),E(),i(1,"svg",2),m(2,"polyline",3),o(),j(),i(3,"span",4),s(4),o(),i(5,"span",5),s(6),o()(),_(7,He,2,0)}if(t&2){let e=p();H("padding-left",e.depth*16+4,"px"),l(),O("rotate-90",e.isExpanded),l(3),h(e.node.name),l(2),x(" ",e.node.fileCount," "),l(),c(e.isExpanded?7:-1)}}function Qe(t,a){if(t&1&&(i(0,"span",9),s(1),o()),t&2){let e=p(2);l(),h(e.node.file.chunkCount)}}function Je(t,a){if(t&1){let e=M();i(0,"button",7),S("click",function(){D(e);let r=p();return w(r.handleFileClick())}),m(1,"span",8),i(2,"span",4),s(3),o(),_(4,Qe,2,1,"span",9),o()}if(t&2){let e=p();k(e.isActiveFile?"border-l-2 border-neonCyan bg-neonCyan/5 text-neonCyan":"text-neutral-400 hover:bg-neonCyan/5 hover:text-neutral-300 border-l-2 border-transparent"),H("padding-left",e.depth*16+20,"px"),l(),k((e.node.file==null?null:e.node.file.sourceType)==="code"?"bg-neonCyan/60":(e.node.file==null?null:e.node.file.sourceType)==="rule"?"bg-neonAmber/60":"bg-neonGreen/60"),l(2),h(e.node.name),l(),c(e.node.file&&e.node.file.chunkCount?4:-1)}}var Ce=(()=>{class t{node;depth;ps_DS=v(g);handleFolderToggle(){this.ps_DS.toggleFolder({folderPath:this.node.path})}handleFileClick(){this.node.file&&this.ps_DS.openFileInTab({file:this.node.file})}get isExpanded(){return this.ps_DS.expandedFolders_$().has(this.node.path)}get isActiveFile(){return!this.node.isFolder&&!!this.node.file&&this.ps_DS.activeTabId_$()===this.node.file.id}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-file-tree-node"]],hostAttrs:[1,"block"],inputs:{node:"node",depth:"depth"},decls:2,vars:1,consts:[[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","transition-colors",3,"padding-left","class"],[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","text-neutral-400","hover:bg-neonCyan/5","hover:text-neutral-300","transition-colors","group",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","mr-1","shrink-0","transition-transform","duration-100"],["points","9 18 15 12 9 6"],[1,"truncate"],[1,"ml-auto","text-[10px]","text-neutral-600","group-hover:text-neutral-500","shrink-0"],[3,"node","depth"],[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","transition-colors",3,"click"],[1,"w-2","h-2","rounded-full","mr-1.5","shrink-0"],[1,"ml-auto","text-[10px]","text-neutral-600","shrink-0"]],template:function(n,r){n&1&&_(0,Xe,8,7)(1,Je,5,8,"button",0),n&2&&c(r.node.isFolder?0:1)},dependencies:[t],encapsulation:2})}return t})();var Ye=(t,a)=>a.path;function Ze(t,a){t&1&&(i(0,"div",3),s(1," Loading... "),o())}function et(t,a){t&1&&(i(0,"div",4),s(1," No files found "),o())}function tt(t,a){if(t&1&&m(0,"app-ps-file-tree-node",17),t&2){let e=a.$implicit;C("node",e)("depth",0)}}function nt(t,a){if(t&1&&b(0,tt,1,2,"app-ps-file-tree-node",17,Ye),t&2){let e=p();P(e.filteredTree_$())}}function it(t,a){if(t&1&&(i(0,"option",18),s(1),o()),t&2){let e=a.$implicit;C("value",e),l(),h(e)}}function ot(t,a){if(t&1){let e=M();i(0,"select",6),S("change",function(r){D(e);let d=p();return w(d.handleModuleChange(r.target.value))}),i(1,"option",7),s(2,"All modules"),o(),b(3,it,2,2,"option",18,U),o()}if(t&2){let e=p();C("value",e.ps_DS.filterModule_$()),l(3),P(e.ps_DS.availableModules_$())}}var ve=(()=>{class t{ps_DS=v(g);filteredTree_$=Z(()=>{let e=this.ps_DS.treeSearchQuery_$(),n=this.ps_DS.fileTree_$();return e.trim()?G.filterTreeBySearch({nodes:n,query:e}):n});handleSearchChange(e){this.ps_DS.treeSearchQuery_$.set(e)}handleSourceTypeChange(e){this.ps_DS.filterSourceType_$.set(e),this.ps_DS.loadFilesAndBuildTree()}handleProjectPartChange(e){this.ps_DS.filterProjectPart_$.set(e),this.ps_DS.loadFilesAndBuildTree()}handleModuleChange(e){this.ps_DS.filterModule_$.set(e),this.ps_DS.loadFilesAndBuildTree()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-file-tree"]],hostAttrs:[1,"flex","flex-col","h-full","overflow-hidden"],decls:30,vars:5,consts:[[1,"shrink-0","p-2","border-b","border-neonDefault/30"],["type","text","placeholder","Search files...",1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-1","text-xs","text-neutral-300","placeholder-neutral-600","focus:outline-none","focus:border-neonCyan/60",3,"input","value"],[1,"flex-1","overflow-y-auto","overflow-x-hidden","min-h-0","py-1"],[1,"flex","items-center","justify-center","py-8","text-neutral-500","text-xs"],[1,"flex","items-center","justify-center","py-8","text-neutral-600","text-xs"],[1,"shrink-0","border-t","border-neonDefault/30","p-2","space-y-1"],[1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"change","value"],["value",""],["value","code"],["value","document"],["value","rule"],["value","server"],["value","client"],["value","cli"],["value","e2e"],["value","shared"],[1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"value"],[3,"node","depth"],[3,"value"]],template:function(n,r){n&1&&(i(0,"div",0)(1,"input",1),S("input",function(f){return r.handleSearchChange(f.target.value)}),o()(),i(2,"div",2),_(3,Ze,2,0,"div",3)(4,et,2,0,"div",4)(5,nt,2,0),o(),i(6,"div",5)(7,"select",6),S("change",function(f){return r.handleSourceTypeChange(f.target.value)}),i(8,"option",7),s(9,"All types"),o(),i(10,"option",8),s(11,"Code"),o(),i(12,"option",9),s(13,"Document"),o(),i(14,"option",10),s(15,"Rule"),o()(),i(16,"select",6),S("change",function(f){return r.handleProjectPartChange(f.target.value)}),i(17,"option",7),s(18,"All parts"),o(),i(19,"option",11),s(20,"Server"),o(),i(21,"option",12),s(22,"Client"),o(),i(23,"option",13),s(24,"CLI"),o(),i(25,"option",14),s(26,"E2E"),o(),i(27,"option",15),s(28,"Shared"),o()(),_(29,ot,5,1,"select",16),o()),n&2&&(l(),C("value",r.ps_DS.treeSearchQuery_$()),l(2),c(r.ps_DS.isLoading_$()?3:r.filteredTree_$().length?5:4),l(4),C("value",r.ps_DS.filterSourceType_$()),l(9),C("value",r.ps_DS.filterProjectPart_$()),l(13),c(r.ps_DS.availableModules_$().length?29:-1))},dependencies:[B,L,Ce],encapsulation:2})}return t})();var lt=(t,a)=>a.fileId;function at(t,a){t&1&&m(0,"span",3)}function st(t,a){if(t&1){let e=M();i(0,"button",2),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleTabClick(r))}),_(1,at,1,0,"span",3),i(2,"span",4),s(3),o(),i(4,"span",5),S("click",function(r){let d=D(e).$implicit,f=p(2);return w(f.handleTabClose(r,d))}),E(),i(5,"svg",6),m(6,"line",7)(7,"line",8),o()()()}if(t&2){let e=a.$implicit,n=p(2);k(n.ps_DS.activeTabId_$()===e.fileId?"border-b-2 border-b-neonCyan text-neonCyan bg-neonCyan/5":"text-neutral-400 hover:text-neutral-300 hover:bg-neutral-800 border-b-2 border-b-transparent"),l(),c(e.isLoading?1:-1),l(2),h(e.fileName)}}function dt(t,a){if(t&1&&(i(0,"div",0),b(1,st,8,4,"button",1,lt),o()),t&2){let e=p();l(),P(e.ps_DS.openTabs_$())}}var ge=(()=>{class t{ps_DS=v(g);handleTabClick(e){this.ps_DS.setActiveTab({fileId:e.fileId})}handleTabClose(e,n){e.stopPropagation(),this.ps_DS.closeTab({fileId:n.fileId})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-tab-bar"]],hostAttrs:[1,"block","shrink-0"],decls:1,vars:1,consts:[[1,"flex","items-stretch","overflow-x-auto","border-b","border-neonDefault/30","bg-ccapBg","scrollbar-thin","scrollbar-thumb-neutral-700"],[1,"flex","items-center","gap-1.5","px-3","py-1.5","text-xs","whitespace-nowrap","border-r","border-neonDefault/20","transition-colors","shrink-0","max-w-[200px]","group",3,"class"],[1,"flex","items-center","gap-1.5","px-3","py-1.5","text-xs","whitespace-nowrap","border-r","border-neonDefault/20","transition-colors","shrink-0","max-w-[200px]","group",3,"click"],[1,"w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"truncate"],[1,"ml-1","w-4","h-4","flex","items-center","justify-center","rounded","hover:bg-neutral-600","text-neutral-500","hover:text-neutral-200","opacity-0","group-hover:opacity-100","transition-opacity","shrink-0",3,"click"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2.5",1,"w-2.5","h-2.5"],["x1","18","y1","6","x2","6","y2","18"],["x1","6","y1","6","x2","18","y2","18"]],template:function(n,r){n&1&&_(0,dt,3,0,"div",0),n&2&&c(r.ps_DS.openTabs_$().length?0:-1)},encapsulation:2})}return t})();var pt=(t,a)=>a.id;function _t(t,a){t&1&&(i(0,"div",1),E(),i(1,"svg",4),m(2,"path",5)(3,"polyline",6),o(),j(),i(4,"span",7),s(5,"Open a file from the tree"),o()())}function mt(t,a){t&1&&(i(0,"div",2),s(1," No chunks available for this file "),o())}function ut(t,a){if(t&1&&m(0,"span",12),t&2){let e=p().$implicit;C("title","Embedded: "+e.dimensions+"d, "+e.embeddingTimeMs+"ms")}}function ft(t,a){t&1&&m(0,"span",13)}function ht(t,a){t&1&&m(0,"span",14)}function xt(t,a){if(t&1&&(i(0,"span",15),s(1),o()),t&2){let e=p().$implicit;l(),V(" L",e.lineStart,"-",e.lineEnd," ")}}function St(t,a){if(t&1&&(i(0,"span",17),s(1),o()),t&2){let e=p().$implicit;l(),x(" ",e.chunkType," ")}}function Ct(t,a){if(t&1&&(i(0,"span",18),s(1),o()),t&2){let e=p().$implicit;C("title",e.headerPath),l(),x(" ",e.headerPath," ")}}function vt(t,a){if(t&1&&(i(0,"span",20),s(1),o()),t&2){let e=a.$implicit;l(),x(" ",e," ")}}function gt(t,a){if(t&1&&b(0,vt,2,1,"span",20,U),t&2){let e=p().$implicit;P(e.requirementCodes)}}function It(t,a){if(t&1){let e=M();i(0,"div",9),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleChunkClick(r))}),i(1,"div",10)(2,"span",11),s(3),o(),_(4,ut,1,1,"span",12)(5,ft,1,0,"span",13)(6,ht,1,0,"span",14)(7,xt,2,2,"span",15),i(8,"span",16),s(9),o(),_(10,St,2,1,"span",17)(11,Ct,2,2,"span",18)(12,gt,2,0),o(),i(13,"pre",19),s(14),o()()}if(t&2){let e=a.$implicit,n=p(2);k(n.ps_DS.selectedChunkIndex_$()===e.chunkIndex?"ring-1 ring-neonCyan/40 bg-neonCyan/3 border-neonCyan/30":"border-neonDefault/20 hover:border-neonDefault/40 bg-ccapSurface"),l(3),x(" #",e.chunkIndex," "),l(),c(e.embeddingStatus==="completed"?4:e.embeddingStatus==="error"?5:6),l(3),c(e.lineStart!==void 0&&e.lineEnd!==void 0?7:-1),l(2),V(" C",e.charStart,"-",e.charEnd," "),l(),c(e.chunkType?10:-1),l(),c(e.headerPath?11:-1),l(),c(e.requirementCodes.length?12:-1),l(2),h(e.text)}}function bt(t,a){if(t&1&&(i(0,"div",3),b(1,It,15,11,"div",8,pt),o()),t&2){let e=p();l(),P(e.ps_DS.selectedFileChunks_$())}}var Ie=(()=>{class t{ps_DS=v(g);handleChunkClick(e){this.ps_DS.selectChunk({chunkIndex:e.chunkIndex})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-chunk-viewer"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],decls:4,vars:1,consts:[[1,"flex-1","overflow-y-auto","min-h-0","p-3"],[1,"flex","flex-col","items-center","justify-center","h-full","text-neutral-600"],[1,"flex","items-center","justify-center","h-full","text-neutral-600","text-sm"],[1,"space-y-2"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1",1,"w-12","h-12","mb-3","text-neutral-700"],["d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"],["points","13 2 13 9 20 9"],[1,"text-sm"],[1,"rounded","border","transition-all","cursor-pointer",3,"class"],[1,"rounded","border","transition-all","cursor-pointer",3,"click"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/10"],[1,"text-[10px]","font-mono","text-neutral-500"],[1,"w-2","h-2","rounded-full","bg-neonGreen","shrink-0",3,"title"],["title","Embedding error",1,"w-2","h-2","rounded-full","bg-red-400","shrink-0"],["title","Not embedded",1,"w-2","h-2","rounded-full","bg-neutral-600","shrink-0"],[1,"text-[10px]","text-neutral-600"],[1,"text-[10px]","text-neutral-600","font-mono"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonCyan/10","text-neonCyan"],[1,"text-[10px]","text-neutral-500","truncate","max-w-[250px]",3,"title"],[1,"px-3","py-2","text-xs","text-neutral-300","font-mono","whitespace-pre-wrap","break-words","overflow-x-auto","max-h-[400px]","overflow-y-auto","leading-relaxed"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber"]],template:function(n,r){n&1&&(i(0,"div",0),_(1,_t,6,0,"div",1)(2,mt,2,0,"div",2)(3,bt,3,0,"div",3),o()),n&2&&(l(),c(r.ps_DS.activeTabId_$()?!r.ps_DS.selectedFileChunks_$().length&&!r.ps_DS.isLoading_$()?2:3:1))},encapsulation:2})}return t})();var $t=(t,a)=>a.code,be=(t,a)=>a.id;function yt(t,a){if(t&1&&(i(0,"div",22)(1,"div",13),s(2,"Module"),o(),i(3,"div",20),s(4),o()()),t&2){let e=p();l(4),h(e.moduleName)}}function Et(t,a){if(t&1&&(i(0,"div")(1,"div",13),s(2,"Role"),o(),i(3,"div",20),s(4),o()()),t&2){let e=p();l(4),h(e.fileRole)}}function kt(t,a){if(t&1&&(i(0,"div",25),s(1),o()),t&2){let e=p(2);l(),h(e.errorMessage)}}function Dt(t,a){if(t&1&&(i(0,"div",23)(1,"div",24),s(2,"Error"),o(),_(3,kt,2,1,"div",25),o()),t&2){let e=p();l(3),c(e.errorMessage?3:-1)}}function wt(t,a){if(t&1&&(i(0,"span",28),s(1),o()),t&2){let e=a.$implicit;l(),x(" ",e," ")}}function Ft(t,a){if(t&1&&(i(0,"div",22)(1,"div",26),s(2,"Requirements"),o(),i(3,"div",27),b(4,wt,2,1,"span",28,U),o()()),t&2){let e=p();l(4),P(e.requirementCodes)}}function jt(t,a){if(t&1&&(i(0,"div",13),s(1,"Path"),o(),i(2,"div",17),s(3),o(),i(4,"div",18)(5,"div")(6,"div",13),s(7,"Type"),o(),i(8,"span",19),s(9),o()(),i(10,"div")(11,"div",13),s(12,"Part"),o(),i(13,"div",20),s(14),o()(),i(15,"div")(16,"div",13),s(17,"Extension"),o(),i(18,"div",21),s(19),o()(),i(20,"div")(21,"div",13),s(22,"Lines"),o(),i(23,"div",20),s(24),o()(),i(25,"div")(26,"div",13),s(27,"Size"),o(),i(28,"div",20),s(29),o()(),i(30,"div")(31,"div",13),s(32,"Chunks"),o(),i(33,"div",20),s(34),o()()(),_(35,yt,5,1,"div",22)(36,Et,5,1,"div")(37,Dt,4,1,"div",23)(38,Ft,6,0,"div",22)),t&2){let e=a;l(3),h(e.relativePath),l(5),k(e.sourceType==="code"?"bg-neonCyan/10 text-neonCyan":e.sourceType==="rule"?"bg-neonAmber/10 text-neonAmber":"bg-neonGreen/10 text-neonGreen"),l(),x(" ",e.sourceType," "),l(5),h(e.projectPart),l(5),h(e.fileExtension),l(5),h(e.lineCount),l(5),x("",e.fileSizeBytes," B"),l(5),h(e.chunkCount),l(),c(e.moduleName?35:-1),l(),c(e.fileRole?36:-1),l(),c(e.status==="error"?37:-1),l(),c(e.requirementCodes.length?38:-1)}}function Mt(t,a){t&1&&(i(0,"div",6),s(1,"No file selected"),o())}function Rt(t,a){if(t&1&&(i(0,"span",8),s(1),o()),t&2){let e=p();l(),x(" ",e.ps_DS.requirementCodes_$().length," ")}}function At(t,a){t&1&&(i(0,"div",6),s(1,"No requirement codes"),o())}function Nt(t,a){if(t&1&&(i(0,"div",29)(1,"span",30),s(2),o(),i(3,"span",31),s(4),o()()),t&2){let e=a.$implicit;l(2),x(" ",e.code," "),l(2),V(" ",e.fileCount,"f / ",e.chunkCount,"c ")}}function Vt(t,a){if(t&1&&b(0,Nt,5,3,"div",29,$t),t&2){let e=p();P(e.ps_DS.requirementCodes_$())}}function Ot(t,a){if(t&1&&(i(0,"span",35),s(1),o()),t&2){let e=p().$implicit;l(),h(e.externalPackage)}}function Ut(t,a){if(t&1&&(i(0,"span",36),s(1),o()),t&2){let e,n,r=p().$implicit;C("title",(e=r.targetFilePath)!==null&&e!==void 0?e:""),l(),x(" ",(n=r.targetSymbol)!==null&&n!==void 0?n:r.targetFilePath," ")}}function Bt(t,a){if(t&1&&(i(0,"div",33)(1,"span",34),s(2),o(),_(3,Ot,2,1,"span",35)(4,Ut,2,2,"span",36),o()),t&2){let e=a.$implicit;l(),k(e.relationType==="import"?"bg-blue-900/50 text-blue-300":e.relationType==="injection"?"bg-purple-900/50 text-purple-300":e.relationType==="inheritance"?"bg-orange-900/50 text-orange-300":"bg-neutral-700 text-neutral-300"),l(),x(" ",e.relationType," "),l(),c(e.isExternalTarget?3:4)}}function Lt(t,a){if(t&1&&(i(0,"details",7)(1,"summary",2),E(),i(2,"svg",3),m(3,"polyline",4),o(),s(4," Relations "),j(),i(5,"span",8),s(6),o()(),i(7,"div",32),b(8,Bt,5,4,"div",33,be),o()()),t&2){let e=p();l(6),x(" ",e.ps_DS.relations_$().length," "),l(2),P(e.ps_DS.relations_$())}}function Gt(t,a){t&1&&m(0,"span",10)}function qt(t,a){if(t&1&&(i(0,"div")(1,"div",13),s(2,"Duration"),o(),i(3,"div",20),s(4),X(5,"number"),o()()),t&2){let e=p();l(4),x(" ",Q(5,1,e.durationMs/1e3,"1.0-1"),"s ")}}function Wt(t,a){if(t&1&&(i(0,"span",42),s(1),o()),t&2){let e=p();l(),x("err:",e.filesErrored,"")}}function zt(t,a){if(t&1&&(i(0,"div",43),s(1),o()),t&2){let e=p();l(),h(e.errorMessage)}}function Ht(t,a){if(t&1&&(i(0,"pre",44),s(1),o()),t&2){let e=p();l(),h(e.errorDetails)}}function Xt(t,a){if(t&1&&(i(0,"div",37)(1,"div")(2,"div",13),s(3,"Status"),o(),i(4,"div",38),s(5),o()(),i(6,"div")(7,"div",13),s(8,"Mode"),o(),i(9,"div",20),s(10),o()(),_(11,qt,6,4,"div"),i(12,"div")(13,"div",13),s(14,"Scanned"),o(),i(15,"div",20),s(16),o()()(),i(17,"div",39)(18,"span",40),s(19),o(),i(20,"span",41),s(21),o(),i(22,"span",42),s(23),o(),i(24,"span",13),s(25),o(),_(26,Wt,2,1,"span",42),o(),_(27,zt,2,1,"div",43)(28,Ht,2,1,"pre",44)),t&2){let e=a;l(4),k(e.status==="completed"?"text-neonGreen":e.status==="running"?"text-neonCyan":e.status==="failed"?"text-red-400":"text-neutral-400"),l(),x(" ",e.status," "),l(5),h(e.mode),l(),c(e.durationMs?11:-1),l(5),h(e.totalFilesScanned),l(3),x("+",e.filesNew,""),l(2),x("~",e.filesChanged,""),l(2),x("-",e.filesDeleted,""),l(2),x("=",e.filesUnchanged,""),l(),c(e.filesErrored?26:-1),l(),c(e.errorMessage?27:-1),l(),c(e.errorDetails?28:-1)}}function Qt(t,a){t&1&&(i(0,"div",6),s(1,"No ingestion runs"),o())}function Jt(t,a){t&1&&m(0,"span",11)}function Kt(t,a){if(t&1&&(i(0,"div",45),m(1,"div",46),o(),i(2,"div",13),s(3),X(4,"number"),o(),i(5,"div",47)(6,"div",48)(7,"div",49),s(8),o(),i(9,"div",35),s(10,"Total"),o()(),i(11,"div",48)(12,"div",50),s(13),o(),i(14,"div",35),s(15,"Done"),o()(),i(16,"div",48)(17,"div",51),s(18),o(),i(19,"div",35),s(20,"Pending"),o()(),i(21,"div",48)(22,"div",52),s(23),o(),i(24,"div",35),s(25,"Error"),o()()()),t&2){let e=a;l(),H("width",e.total>0?e.completed/e.total*100:0,"%"),l(2),le(" ",e.completed,"/",e.total," embedded (",e.total>0?Q(4,9,e.completed/e.total*100,"1.0-0"):0,"%) "),l(5),h(e.total),l(5),h(e.completed),l(5),h(e.pending),l(5),h(e.error)}}function Yt(t,a){t&1&&(i(0,"div",13),s(1,"No embedding status"),o())}function Zt(t,a){t&1&&(i(0,"span",16),m(1,"span",53),s(2," Embedding... "),o())}function en(t,a){t&1&&s(0," Embed Now ")}function tn(t,a){if(t&1&&(i(0,"div",58),s(1),o()),t&2){let e=p().$implicit;l(),h(e.description)}}function nn(t,a){t&1&&(i(0,"div",59),s(1,"No description"),o())}function on(t,a){if(t&1&&(i(0,"div",54)(1,"div",55)(2,"span",56),s(3),o(),i(4,"span",57),s(5),o()(),_(6,tn,2,1,"div",58)(7,nn,2,0,"div",59),o()),t&2){let e=a.$implicit;l(3),x(" ",e.elementType," "),l(2),h(e.displayName),l(),c(e.description?6:7)}}function rn(t,a){if(t&1&&(i(0,"details",7)(1,"summary",2),E(),i(2,"svg",3),m(3,"polyline",4),o(),s(4," Descriptions "),j(),i(5,"span",8),s(6),o()(),i(7,"div",32),b(8,on,8,3,"div",54,be),o()()),t&2){let e=p();l(6),x(" ",e.ps_DS.descriptions_$().length," "),l(2),P(e.ps_DS.descriptions_$())}}var Pe=(()=>{class t{ps_DS=v(g);handleStartEmbedding(){this.ps_DS.startEmbedding()}handleLoadEmbeddingStatus(){this.ps_DS.loadEmbeddingStatus()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-info-panel"]],hostAttrs:[1,"flex","flex-col","h-full","overflow-hidden"],decls:42,vars:14,consts:[[1,"flex-1","overflow-y-auto","min-h-0","p-2","space-y-2"],["open","",1,"group"],[1,"flex","items-center","gap-1","cursor-pointer","text-xs","font-semibold","text-neutral-300","py-1.5","px-2","rounded","hover:bg-neonCyan/5","transition-colors","select-none","border","border-neonDefault/20"],["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-100","group-open:rotate-90","text-neutral-500"],["points","9 18 15 12 9 6"],[1,"mt-1","px-2","pb-1","space-y-1"],[1,"text-xs","text-neutral-600","py-2"],[1,"group"],[1,"ml-auto","text-[10px]","text-neutral-500"],[1,"mt-1","px-2","pb-1","space-y-1","max-h-[240px]","overflow-y-auto"],[1,"ml-1","w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"ml-1","w-2","h-2","rounded-full","bg-neonGreen","animate-pulse","shrink-0"],[1,"mt-1","px-2","pb-1","space-y-2"],[1,"text-[10px]","text-neutral-500"],["type","text","placeholder","Embedding Registry Entry ID","title","Paste the registry entry ID from Embedding Model Registry",1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"change","value"],[1,"w-full","px-2","py-1","text-[10px]","border","rounded","transition-colors",3,"click","disabled"],[1,"inline-flex","items-center","gap-1"],[1,"text-xs","text-neutral-300","break-all","font-mono"],[1,"grid","grid-cols-2","gap-x-2","gap-y-1","mt-1"],[1,"text-xs","px-1.5","py-0.5","rounded-full","inline-block"],[1,"text-xs","text-neutral-300"],[1,"text-xs","text-neutral-300","font-mono"],[1,"mt-1"],[1,"mt-2","text-[10px]","text-red-400","bg-red-900/20","rounded","p-1.5"],[1,"font-bold"],[1,"mt-0.5","break-words"],[1,"text-[10px]","text-neutral-500","mb-0.5"],[1,"flex","flex-wrap","gap-1"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber"],[1,"flex","items-center","gap-2","py-0.5"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber","shrink-0","font-mono"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"mt-1","px-2","pb-1","space-y-1","max-h-40","overflow-y-auto"],[1,"text-[10px]","flex","items-center","gap-1","py-0.5"],[1,"px-1","py-0.5","rounded","text-[9px]"],[1,"text-neutral-500"],[1,"text-neutral-400","truncate",3,"title"],[1,"grid","grid-cols-2","gap-x-2","gap-y-1"],[1,"text-xs","font-mono"],[1,"flex","flex-wrap","gap-1.5","mt-1"],[1,"text-[10px]","text-neonGreen"],[1,"text-[10px]","text-neonAmber"],[1,"text-[10px]","text-red-400"],[1,"text-[10px]","text-red-400","mt-1","break-words"],[1,"text-[9px]","text-red-300","bg-red-900/10","rounded","p-1","mt-1","max-h-20","overflow-y-auto","whitespace-pre-wrap"],[1,"w-full","bg-neutral-800","rounded-full","h-1.5"],[1,"bg-neonGreen","h-1.5","rounded-full","transition-all"],[1,"grid","grid-cols-4","gap-1","text-center","text-[10px]"],[1,"bg-neutral-800/60","rounded","p-1"],[1,"text-neutral-300","font-mono"],[1,"text-neonGreen","font-mono"],[1,"text-neonAmber","font-mono"],[1,"text-red-400","font-mono"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"],[1,"text-[10px]","py-1","border-b","border-neonDefault/10"],[1,"flex","items-center","gap-1"],[1,"px-1","py-0.5","rounded","text-[9px]","bg-neonAmber/10","text-neonAmber"],[1,"text-neutral-300","font-medium"],[1,"text-neutral-500","mt-0.5"],[1,"text-neutral-600","italic","mt-0.5"]],template:function(n,r){if(n&1&&(i(0,"div",0)(1,"details",1)(2,"summary",2),E(),i(3,"svg",3),m(4,"polyline",4),o(),s(5," File Info "),o(),j(),i(6,"div",5),_(7,jt,39,13)(8,Mt,2,0,"div",6),o()(),i(9,"details",7)(10,"summary",2),E(),i(11,"svg",3),m(12,"polyline",4),o(),s(13," Requirements "),_(14,Rt,2,1,"span",8),o(),j(),i(15,"div",9),_(16,At,2,0,"div",6)(17,Vt,2,0),o()(),_(18,Lt,10,1,"details",7),i(19,"details",7)(20,"summary",2),E(),i(21,"svg",3),m(22,"polyline",4),o(),s(23," Ingestion "),_(24,Gt,1,0,"span",10),o(),j(),i(25,"div",5),_(26,Xt,29,13)(27,Qt,2,0,"div",6),o()(),i(28,"details",1)(29,"summary",2),E(),i(30,"svg",3),m(31,"polyline",4),o(),s(32," RAG / Embedding "),_(33,Jt,1,0,"span",11),o(),j(),i(34,"div",12),_(35,Kt,26,12)(36,Yt,2,0,"div",13),i(37,"input",14),S("change",function(f){return r.ps_DS.selectedRegistryEntryId_$.set(f.target.value),r.handleLoadEmbeddingStatus()}),o(),i(38,"button",15),S("click",function(){return r.handleStartEmbedding()}),_(39,Zt,3,0,"span",16)(40,en,1,0),o()()(),_(41,rn,10,1,"details",7),o()),n&2){let d,f,$,q;l(7),c((d=r.ps_DS.selectedFile_$())?7:8,d),l(7),c(r.ps_DS.requirementCodes_$().length?14:-1),l(2),c(r.ps_DS.requirementCodes_$().length?17:16),l(2),c(r.ps_DS.relations_$().length>0?18:-1),l(6),c(r.ps_DS.isIngesting_$()?24:-1),l(2),c((f=r.ps_DS.latestRun_$())?26:27,f),l(7),c(r.ps_DS.isEmbedding_$()?33:-1),l(2),c(($=r.ps_DS.embeddingStatus_$())?35:36,$),l(2),C("value",(q=r.ps_DS.selectedRegistryEntryId_$())!==null&&q!==void 0?q:""),l(),k(r.ps_DS.isEmbedding_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10 opacity-50":"border-neonGreen/30 text-neonGreen hover:bg-neonGreen/10"),C("disabled",r.ps_DS.isEmbedding_$()||!r.ps_DS.selectedRegistryEntryId_$()),l(),c(r.ps_DS.isEmbedding_$()?39:40),l(2),c(r.ps_DS.descriptions_$().length>0?41:-1)}},dependencies:[ee],encapsulation:2})}return t})();function an(t,a){if(t&1&&(i(0,"span",1),s(1),o()),t&2){let e=p();l(),h(e.selectedProjectName_$())}}function sn(t,a){t&1&&(i(0,"span",1),s(1,"No project"),o())}function dn(t,a){if(t&1&&(i(0,"span",10),s(1),o()),t&2){let e=p(2);l(),x(" Chunk #",e.ps_DS.selectedChunkIndex_$()," ")}}function cn(t,a){if(t&1&&(m(0,"span",2),i(1,"span",9),s(2),o(),i(3,"span",1),s(4),o(),_(5,dn,2,1,"span",10)),t&2){let e=p();l(2),h(a.fileName),l(2),x("",e.ps_DS.selectedFileChunks_$().length," chunks"),l(),c(e.ps_DS.selectedChunkIndex_$()!==null?5:-1)}}function pn(t,a){t&1&&(i(0,"span",4),m(1,"span",11),s(2," Ingesting "),o())}function _n(t,a){t&1&&(i(0,"span",5),m(1,"span",12),s(2," Embedding "),o())}function mn(t,a){if(t&1&&(i(0,"span",6),s(1),o()),t&2){let e=a;l(),V(" ",e.completed,"/",e.total," emb ")}}function un(t,a){if(t&1&&(i(0,"span",7),s(1),o()),t&2){let e,n=p();C("title",(e=n.ps_DS.error_$())!==null&&e!==void 0?e:""),l(),x(" ",n.ps_DS.error_$()," ")}}function fn(t,a){t&1&&(i(0,"span",8),s(1,"Loading..."),o())}var Te=(()=>{class t{ps_DS=v(g);selectedProjectName_$=Z(()=>{let e=this.ps_DS.selectedProjectId_$();return e?this.ps_DS.projects_$().find(r=>r.id===e)?.name??"":""});static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-status-bar"]],hostAttrs:[1,"block","shrink-0"],decls:13,vars:8,consts:[[1,"flex","items-center","gap-3","px-3","py-1","border-t","border-neonDefault/30","bg-ccapBg","text-[10px]","text-neutral-500"],[1,"shrink-0"],[1,"w-px","h-3","bg-neutral-700","shrink-0"],[1,"flex-1"],[1,"flex","items-center","gap-1","text-neonCyan","shrink-0"],[1,"flex","items-center","gap-1","text-neonGreen","shrink-0"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"text-red-400","truncate","max-w-[300px]","shrink-0",3,"title"],[1,"text-neutral-500","shrink-0"],[1,"truncate","max-w-[300px]"],[1,"text-neonCyan","shrink-0"],[1,"w-1.5","h-1.5","rounded-full","bg-neonCyan","animate-pulse"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"]],template:function(n,r){if(n&1&&(i(0,"div",0),_(1,an,2,1,"span",1)(2,sn,2,0,"span",1),m(3,"span",2),i(4,"span",1),s(5),o(),_(6,cn,6,3),m(7,"span",3),_(8,pn,3,0,"span",4)(9,_n,3,0,"span",5)(10,mn,2,2,"span",6)(11,un,2,2,"span",7)(12,fn,2,0,"span",8),o()),n&2){let d,f;l(),c(r.selectedProjectName_$()?1:2),l(4),x("",r.ps_DS.filesTotal_$()," files"),l(),c((d=r.ps_DS.selectedFile_$())?6:-1,d),l(2),c(r.ps_DS.isIngesting_$()?8:-1),l(),c(r.ps_DS.isEmbedding_$()?9:-1),l(),c((f=r.ps_DS.embeddingStatus_$())?10:-1,f),l(),c(r.ps_DS.error_$()?11:-1),l(),c(r.ps_DS.isLoading_$()?12:-1)}},encapsulation:2})}return t})();var xn=(t,a)=>a.chunkId;function Sn(t,a){t&1&&(i(0,"span",3),m(1,"span",14),s(2," Searching... "),o())}function Cn(t,a){t&1&&s(0," Search ")}function vn(t,a){t&1&&(i(0,"div",10)(1,"span",15),m(2,"span",16),s(3," Searching... "),o()())}function gn(t,a){t&1&&(i(0,"div",11),s(1," No results found "),o())}function In(t,a){t&1&&(i(0,"div",12),E(),i(1,"svg",17),m(2,"circle",18)(3,"line",19),o(),j(),i(4,"span",20),s(5,"Enter a query to search"),o()())}function bn(t,a){if(t&1&&(i(0,"span",28),s(1),o()),t&2){let e=p().$implicit;l(),x(" ",e.file.sourceType," ")}}function Pn(t,a){if(t&1&&(i(0,"span",29),s(1),o()),t&2){let e=p().$implicit;l(),h(e.file.projectPart)}}function Tn(t,a){if(t&1&&(i(0,"span",30),s(1),o()),t&2){let e=p().$implicit;l(),h(e.file.moduleName)}}function $n(t,a){if(t&1&&(i(0,"span",31),s(1),o()),t&2){let e=p().$implicit;l(),V(" L",e.lineStart,"-",e.lineEnd," ")}}function yn(t,a){if(t&1){let e=M();i(0,"div",22),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleResultClick(r))}),i(1,"div",23)(2,"span",24),s(3),X(4,"number"),o(),i(5,"span",25),s(6),o(),i(7,"span",26),s(8),o()(),i(9,"div",27),_(10,bn,2,1,"span",28)(11,Pn,2,1,"span",29)(12,Tn,2,1,"span",30)(13,$n,2,2,"span",31),o(),i(14,"pre",32),s(15),o()()}if(t&2){let e=a.$implicit;l(2),k(e.score>=.8?"bg-neonGreen/15 text-neonGreen":e.score>=.6?"bg-neonAmber/15 text-neonAmber":"bg-neutral-700/50 text-neutral-400"),l(),x(" ",Q(4,11,e.score,"1.2-2")," "),l(2),C("title",e.file.relativePath),l(),x(" ",e.file.relativePath," "),l(2),x(" #",e.chunkIndex," "),l(2),c(e.file.sourceType?10:-1),l(),c(e.file.projectPart?11:-1),l(),c(e.file.moduleName?12:-1),l(),c(e.lineStart!==void 0&&e.lineEnd!==void 0?13:-1),l(2),h(e.text)}}function En(t,a){if(t&1&&(i(0,"div",13),b(1,yn,16,14,"div",21,xn),o()),t&2){let e=p();l(),P(e.ps_DS.searchResults_$())}}var $e=(()=>{class t{ps_DS=v(g);handleSearch(){this.ps_DS.search({query:this.ps_DS.searchQuery_$()})}handleResultClick(e){this.ps_DS.navigateToSearchResult({result:e})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-search-panel"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],decls:18,vars:7,consts:[[1,"flex","items-center","gap-2","px-3","py-2","border-b","border-neonDefault/20","shrink-0"],["type","text","placeholder","Semantic search...",1,"flex-1","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-1","text-xs","text-neutral-300","focus:outline-none","focus:border-neonGreen/60","placeholder:text-neutral-600",3,"input","keydown.enter","value"],[1,"px-3","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"click","disabled"],[1,"inline-flex","items-center","gap-1"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/20","shrink-0"],[1,"bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400",3,"change","value"],["value","cosine"],["value","euclidean"],["value","dot-product"],[1,"flex-1","overflow-y-auto","min-h-0","p-3"],[1,"flex","items-center","justify-center","h-full","text-neutral-600"],[1,"flex","items-center","justify-center","h-full","text-neutral-600","text-sm"],[1,"flex","flex-col","items-center","justify-center","h-full","text-neutral-600"],[1,"space-y-2"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"],[1,"inline-flex","items-center","gap-2","text-sm"],[1,"w-2","h-2","rounded-full","bg-neonGreen","animate-pulse"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1",1,"w-12","h-12","mb-3","text-neutral-700"],["cx","11","cy","11","r","8"],["x1","21","y1","21","x2","16.65","y2","16.65"],[1,"text-sm"],[1,"rounded","border","border-neonDefault/20","hover:border-neonGreen/40","bg-ccapSurface","hover:bg-neonGreen/3","transition-all","cursor-pointer"],[1,"rounded","border","border-neonDefault/20","hover:border-neonGreen/40","bg-ccapSurface","hover:bg-neonGreen/3","transition-all","cursor-pointer",3,"click"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/10"],[1,"text-[10px]","font-mono","px-1.5","py-0.5","rounded-full","shrink-0"],[1,"text-xs","text-neutral-400","truncate",3,"title"],[1,"text-[10px]","text-neutral-600","shrink-0","ml-auto"],[1,"flex","items-center","gap-1.5","px-3","py-1"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonCyan/10","text-neonCyan"],[1,"text-[10px]","text-neutral-500"],[1,"text-[10px]","text-neutral-600"],[1,"text-[10px]","text-neutral-600","ml-auto"],[1,"px-3","py-2","text-[11px]","text-neutral-400","font-mono","whitespace-pre-wrap","break-words","max-h-[120px]","overflow-y-auto","leading-relaxed"]],template:function(n,r){n&1&&(i(0,"div",0)(1,"input",1),S("input",function(f){return r.ps_DS.searchQuery_$.set(f.target.value)})("keydown.enter",function(){return r.handleSearch()}),o(),i(2,"button",2),S("click",function(){return r.handleSearch()}),_(3,Sn,3,0,"span",3)(4,Cn,1,0),o()(),i(5,"div",4)(6,"select",5),S("change",function(f){return r.ps_DS.searchMetric_$.set(f.target.value)}),i(7,"option",6),s(8,"Cosine"),o(),i(9,"option",7),s(10,"Euclidean"),o(),i(11,"option",8),s(12,"Dot Product"),o()()(),i(13,"div",9),_(14,vn,4,0,"div",10)(15,gn,2,0,"div",11)(16,In,6,0,"div",12)(17,En,3,0,"div",13),o()),n&2&&(l(),C("value",r.ps_DS.searchQuery_$()),l(),k(r.ps_DS.isSearching_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10 opacity-50":"border-neonGreen/30 text-neonGreen hover:bg-neonGreen/10"),C("disabled",r.ps_DS.isSearching_$()||!r.ps_DS.searchQuery_$()),l(),c(r.ps_DS.isSearching_$()?3:4),l(3),C("value",r.ps_DS.searchMetric_$()),l(8),c(r.ps_DS.isSearching_$()?14:!r.ps_DS.searchResults_$().length&&r.ps_DS.searchQuery_$()?15:r.ps_DS.searchResults_$().length?17:16))},dependencies:[B,L,ee],encapsulation:2})}return t})();function Dn(t,a){t&1&&m(0,"app-ps-search-panel")}function wn(t,a){t&1&&m(0,"app-ps-chunk-viewer")}var ji=(()=>{class t{projectId;ps_DS=v(g);fileTreeWidth_$=u(260);infoPanelWidth_$=u(300);isResizing_$=u(!1);ngOnInit(){this.fileTreeWidth_$.set(Math.max(160,Math.min(500,T.loadPanelWidth("fileTree",260)))),this.infoPanelWidth_$.set(Math.max(200,Math.min(550,T.loadPanelWidth("infoPanel",300)))),this.ps_DS.restoreFromStorage(),this.projectId?(this.ps_DS.isEmbedded_$.set(!0),this.ps_DS.selectProject({projectId:this.projectId})):(this.ps_DS.isEmbedded_$.set(!1),this.ps_DS.loadProjects().then(()=>{let e=T.loadSelectedProjectId();e&&this.ps_DS.projects_$().some(n=>n.id===e)&&this.ps_DS.selectProject({projectId:e})}))}ngOnChanges(e){if(e.projectId&&!e.projectId.firstChange){let n=e.projectId.currentValue;n&&this.ps_DS.selectProject({projectId:n})}}handleFileTreeResizeStart(e){let n=this.fileTreeWidth_$(),r=e.clientX;this.isResizing_$.set(!0),ne.attachUntilPointerUp({startEvent:e,onMove:d=>{let f=d.clientX-r,$=Math.max(160,Math.min(500,n+f));this.fileTreeWidth_$.set($)},onEnd:()=>{this.isResizing_$.set(!1),T.savePanelWidth("fileTree",this.fileTreeWidth_$())}})}handleInfoPanelResizeStart(e){let n=this.infoPanelWidth_$(),r=e.clientX;this.isResizing_$.set(!0),ne.attachUntilPointerUp({startEvent:e,onMove:d=>{let f=r-d.clientX,$=Math.max(200,Math.min(550,n+f));this.infoPanelWidth_$.set($)},onEnd:()=>{this.isResizing_$.set(!1),T.savePanelWidth("infoPanel",this.infoPanelWidth_$())}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-ide-shell"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],inputs:{projectId:"projectId"},features:[re],decls:12,vars:8,consts:[[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],[3,"startResizeStart","endResizeStart","isStartOpen","isEndOpen","startWidthPx","endWidthPx","isResizing"],["sDetailColumnStart",""],["sDetailColumnMain","",1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],["sDetailColumnEnd",""]],template:function(n,r){n&1&&(i(0,"div",0),m(1,"app-ps-ide-toolbar"),i(2,"app-s-session-detail-three-column-layout",1),S("startResizeStart",function(f){return r.handleFileTreeResizeStart(f)})("endResizeStart",function(f){return r.handleInfoPanelResizeStart(f)}),i(3,"div",2),m(4,"app-ps-file-tree"),o(),i(5,"div",3),m(6,"app-ps-tab-bar"),_(7,Dn,1,0,"app-ps-search-panel")(8,wn,1,0,"app-ps-chunk-viewer"),o(),i(9,"div",4),m(10,"app-ps-info-panel"),o()(),m(11,"app-ps-status-bar"),o()),n&2&&(O("select-none",r.isResizing_$()),l(2),C("isStartOpen",r.ps_DS.isFileTreeOpen_$())("isEndOpen",r.ps_DS.isInfoPanelOpen_$())("startWidthPx",r.fileTreeWidth_$())("endWidthPx",r.infoPanelWidth_$())("isResizing",r.isResizing_$()),l(5),c(r.ps_DS.isSearchPanelOpen_$()?7:8))},dependencies:[ue,Se,ve,ge,Ie,Pe,Te,$e],encapsulation:2})}return t})();var oo=(()=>{class t{static \u0275fac=function(n){return new(n||t)};static \u0275mod=oe({type:t});static \u0275inj=ie({providers:[g],imports:[ae,ce,de,fe]})}return t})();export{ji as a,oo as b};
2
- //# sourceMappingURL=chunk-LIQPVSH3.js.map
1
+ import{a as ne}from"./chunk-Q2PKIGLB.js";import{g as fe}from"./chunk-2ATSF4KC.js";import{a as ue}from"./chunk-7JUIBZEE.js";import{a as me}from"./chunk-C7XPBJTG.js";import{a as te}from"./chunk-QUEYZI42.js";import{o as B,p as L,v as ce}from"./chunk-EO4DNTT4.js";import{f as _e}from"./chunk-4LCJ4GNK.js";import{a as R}from"./chunk-5UPNU54P.js";import{I as pe}from"./chunk-Y6V4NGLU.js";import{$a as X,C as v,D as y,E as oe,Fa as s,Ga as h,Ha as x,I as re,Ia as V,J as D,Ja as le,K as w,Kb as de,L as E,M as j,Z as l,a as J,aa as u,b as K,bb as Q,da as _,ga as C,ha as H,hb as Z,ia as O,ja as k,k as I,la as c,na as U,oa as b,p as F,pa as P,qa as i,ra as o,sa as m,sb as ee,ua as M,ub as ae,va as S,wa as p,xb as se,y as Y,z as ie}from"./chunk-TBMJSIBB.js";var A="ccap-projectSource",T=class{static savePanelWidth(a,e){R.writeNumber(`${A}:panelWidth:${a}`,e)}static loadPanelWidth(a,e){return R.readNumber(`${A}:panelWidth:${a}`,e)}static savePanelOpen(a,e){R.writeBoolean(`${A}:panelOpen:${a}`,e)}static loadPanelOpen(a,e){return R.readBoolean(`${A}:panelOpen:${a}`,e)}static saveSelectedProjectId(a){R.writeString(`${A}:selectedProjectId`,a)}static loadSelectedProjectId(){return R.readString(`${A}:selectedProjectId`)??""}static saveExpandedFolders(a){R.writeJson(`${A}:expandedFolders`,a)}static loadExpandedFolders(){let a=R.readJson(`${A}:expandedFolders`,[]);return Array.isArray(a)?a:[]}static saveOpenTabIds(a){R.writeJson(`${A}:openTabIds`,a)}static loadOpenTabIds(){let a=R.readJson(`${A}:openTabIds`,[]);return Array.isArray(a)?a:[]}static saveActiveTabId(a){R.writeString(`${A}:activeTabId`,a)}static loadActiveTabId(){return R.readString(`${A}:activeTabId`)??""}};var he=(()=>{class t{baseUrl=`${pe.api.baseUrl}/project-source`;http=v(se);startIngestion(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingest`,{mode:e.mode})}listIngestionRuns(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingestion-runs`)}getIngestionStatus(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/ingestion-status`)}listFiles(e){let n=new URLSearchParams;e.sourceType&&n.set("sourceType",e.sourceType),e.projectPart&&n.set("projectPart",e.projectPart),e.moduleName&&n.set("moduleName",e.moduleName),e.fileRole&&n.set("fileRole",e.fileRole),e.requirementCode&&n.set("requirementCode",e.requirementCode),e.search&&n.set("search",e.search);let r=n.toString(),d=`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files${r?"?"+r:""}`;return this.http.get(d)}getFileDetail(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files/${encodeURIComponent(e.fileId)}`)}getRequirementCodes(e){let n=e.codePrefix?`?codePrefix=${encodeURIComponent(e.codePrefix)}`:"";return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/requirement-codes${n}`)}getStats(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/stats`)}getModules(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/modules`)}deleteProjectData(e){return this.http.delete(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}`)}startEmbedding(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/embed`,{registryEntryId:e.registryEntryId})}getEmbeddingStatus(e){let n=`?registryEntryId=${encodeURIComponent(e.registryEntryId)}`;return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/embedding-status${n}`)}search(e){return this.http.post(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/search`,{registryEntryId:e.registryEntryId,query:e.query,topK:e.topK??10,metric:e.metric??"cosine",filters:e.filters})}listRelations(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/relations`)}getRelationsForFile(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/files/${encodeURIComponent(e.fileId)}/relations`)}listRunFlows(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/run-flows`)}listDataFlows(e){return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/data-flows`)}listDescriptions(e){let n=e.elementType?`?elementType=${encodeURIComponent(e.elementType)}`:"";return this.http.get(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/descriptions${n}`)}updateDescription(e){return this.http.put(`${this.baseUrl}/projects/${encodeURIComponent(e.projectId)}/descriptions/${encodeURIComponent(e.descId)}`,{description:e.description})}static \u0275fac=function(n){return new(n||t)};static \u0275prov=Y({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var G=class t{static buildFileTree(a){let e=new Map,n=[];for(let r of a.files){let d=r.relativePath.split("/"),f=n,$="";for(let W=0;W<d.length-1;W++){$=$?$+"/"+d[W]:d[W];let z=e.get($);z||(z={path:$,name:d[W],isFolder:!0,children:[],file:null,fileCount:0},e.set($,z),f.push(z)),f=z.children}let q=d[d.length-1];f.push({path:r.relativePath,name:q,isFolder:!1,children:[],file:r,fileCount:0})}return t.sortAndCount({nodes:n}),n}static filterTreeBySearch(a){if(!a.query.trim())return a.nodes;let e=te.normalizeForSearch(a.query);return t.filterNodes({nodes:a.nodes,normalizedQuery:e})}static sortAndCount(a){let e=0;a.nodes.sort((n,r)=>n.isFolder&&!r.isFolder?-1:!n.isFolder&&r.isFolder?1:n.name.localeCompare(r.name));for(let n of a.nodes)n.isFolder?(n.fileCount=t.sortAndCount({nodes:n.children}),e+=n.fileCount):e++;return e}static filterNodes(a){let e=[];for(let n of a.nodes){let r=te.normalizeForSearch(n.name).includes(a.normalizedQuery);if(n.isFolder){let d=t.filterNodes({nodes:n.children,normalizedQuery:a.normalizedQuery});(d.length>0||r)&&e.push(K(J({},n),{children:d.length>0?d:n.children,fileCount:d.reduce((f,$)=>f+($.isFolder?$.fileCount:1),0)}))}else r&&e.push(n)}return e}};var g=(()=>{class t{selectedProjectId_$=u(null);projects_$=u([]);stats_$=u(null);latestRun_$=u(null);isIngesting_$=u(!1);files_$=u([]);filesTotal_$=u(0);fileTree_$=u([]);expandedFolders_$=u(new Set);treeSearchQuery_$=u("");openTabs_$=u([]);activeTabId_$=u(null);tabFileCache=new Map;selectedFile_$=u(null);selectedFileChunks_$=u([]);selectedChunkIndex_$=u(null);requirementCodes_$=u([]);availableModules_$=u([]);filterSourceType_$=u("");filterProjectPart_$=u("");filterModule_$=u("");filterFileRole_$=u("");filterReqCode_$=u("");filterSearch_$=u("");isFileTreeOpen_$=u(!0);isInfoPanelOpen_$=u(!0);isEmbedded_$=u(!1);isSearchPanelOpen_$=u(!1);embeddingStatus_$=u(null);isEmbedding_$=u(!1);searchQuery_$=u("");searchResults_$=u([]);isSearching_$=u(!1);selectedRegistryEntryId_$=u(null);relations_$=u([]);runFlows_$=u([]);dataFlows_$=u([]);descriptions_$=u([]);searchMetric_$=u("cosine");isLoading_$=u(!1);error_$=u(null);ps_AS=v(he);pm_AS=v(_e);statusPollTimer=null;loadProjects(){return I(this,null,function*(){try{let n=((yield this.pm_AS.listProjects()).projects??[]).filter(r=>r.localPath&&r.isActive).map(r=>({id:r._id??"",name:r.name??"",localPath:r.localPath??""}));this.projects_$.set(n)}catch(e){this.error_$.set(e instanceof Error?e.message:"Projekt lista bet\xF6lt\xE9se sikertelen.")}})}selectProject(e){return I(this,null,function*(){let n=this.selectedProjectId_$()===e.projectId;n&&this.files_$().length>0||(this.selectedProjectId_$.set(e.projectId),this.error_$.set(null),T.saveSelectedProjectId(e.projectId),n||(this.openTabs_$.set([]),this.activeTabId_$.set(null),this.tabFileCache.clear(),this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.selectedChunkIndex_$.set(null)),yield Promise.all([this.loadStats(),this.loadIngestionStatus(),this.loadModules(),this.loadFilesAndBuildTree(),this.loadRequirementCodes(),this.loadDescriptions()]))})}startIngestion(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n){this.isIngesting_$.set(!0),this.error_$.set(null);try{yield F(this.ps_AS.startIngestion({projectId:n,mode:e.mode})),this.startStatusPolling()}catch(r){this.error_$.set(r instanceof Error?r.message:"Ingestion ind\xEDt\xE1s sikertelen."),this.isIngesting_$.set(!1)}}})}loadIngestionStatus(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getIngestionStatus({projectId:e})),r=this.latestRun_$();if((n.run?.status!==r?.status||n.run?.totalChunksCreated!==r?.totalChunksCreated||n.run?.completedAt!==r?.completedAt)&&this.latestRun_$.set(n.run),n.run?.status==="running")this.isIngesting_$.set(!0);else{let f=this.isIngesting_$();this.isIngesting_$.set(!1),this.stopStatusPolling(),f&&(this.loadFilesAndBuildTree(),this.loadStats(),this.loadRequirementCodes())}}catch(n){this.error_$.set(n instanceof Error?n.message:"Ingestion st\xE1tusz bet\xF6lt\xE9se sikertelen.")}})}loadFilesAndBuildTree(){return I(this,null,function*(){yield this.loadFiles(),this.rebuildTree()})}loadFiles(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e){this.isLoading_$.set(!0),this.error_$.set(null);try{let n=yield F(this.ps_AS.listFiles({projectId:e,sourceType:this.filterSourceType_$()||void 0,projectPart:this.filterProjectPart_$()||void 0,moduleName:this.filterModule_$()||void 0,fileRole:this.filterFileRole_$()||void 0,requirementCode:this.filterReqCode_$()||void 0,search:this.filterSearch_$()||void 0}));this.files_$.set(n.items),this.filesTotal_$.set(n.total)}catch(n){this.error_$.set(n instanceof Error?n.message:"F\xE1jl lista bet\xF6lt\xE9se sikertelen.")}finally{this.isLoading_$.set(!1)}}})}rebuildTree(){let e=G.buildFileTree({files:this.files_$()});this.fileTree_$.set(e)}toggleFolder(e){this.expandedFolders_$.update(n=>{let r=new Set(n);return r.has(e.folderPath)?r.delete(e.folderPath):r.add(e.folderPath),T.saveExpandedFolders(Array.from(r)),r})}openFileInTab(e){let n=e.file.id,r=this.openTabs_$();if(r.some($=>$.fileId===n)){this.setActiveTab({fileId:n});return}let f={fileId:n,fileName:e.file.fileName,relativePath:e.file.relativePath,isLoading:!1};this.openTabs_$.set([...r,f]),this.setActiveTab({fileId:n}),this.persistTabs(),this.tabFileCache.has(n)||this.loadFileForTab({fileId:n})}closeTab(e){let n=this.openTabs_$(),r=n.findIndex(f=>f.fileId===e.fileId);if(r===-1)return;let d=n.filter(f=>f.fileId!==e.fileId);if(this.openTabs_$.set(d),this.tabFileCache.delete(e.fileId),this.activeTabId_$()===e.fileId)if(d.length>0){let f=Math.min(r,d.length-1);this.setActiveTab({fileId:d[f].fileId})}else this.activeTabId_$.set(null),this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.selectedChunkIndex_$.set(null);this.persistTabs()}setActiveTab(e){this.activeTabId_$.set(e.fileId),this.selectedChunkIndex_$.set(null),T.saveActiveTabId(e.fileId);let n=this.tabFileCache.get(e.fileId);n?(this.selectedFile_$.set(n.file),this.selectedFileChunks_$.set(n.chunks),this.loadRelationsForFile({fileId:e.fileId})):(this.selectedFile_$.set(null),this.selectedFileChunks_$.set([]),this.loadFileForTab({fileId:e.fileId}))}selectChunk(e){let n=this.selectedChunkIndex_$();this.selectedChunkIndex_$.set(n===e.chunkIndex?null:e.chunkIndex)}loadStats(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getStats({projectId:e}));this.stats_$.set(n.stats)}catch(n){this.error_$.set(n instanceof Error?n.message:"Statisztik\xE1k bet\xF6lt\xE9se sikertelen.")}})}loadRequirementCodes(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getRequirementCodes({projectId:e}));this.requirementCodes_$.set(n.items)}catch(n){this.error_$.set(n instanceof Error?n.message:"Requirement k\xF3dok bet\xF6lt\xE9se sikertelen.")}})}loadModules(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.getModules({projectId:e}));this.availableModules_$.set(n.modules)}catch(n){this.error_$.set(n instanceof Error?n.message:"Modul lista bet\xF6lt\xE9se sikertelen.")}})}toggleFileTree(){let e=!this.isFileTreeOpen_$();this.isFileTreeOpen_$.set(e),T.savePanelOpen("fileTree",e)}toggleInfoPanel(){let e=!this.isInfoPanelOpen_$();this.isInfoPanelOpen_$.set(e),T.savePanelOpen("infoPanel",e)}toggleSearchPanel(){this.isSearchPanelOpen_$.set(!this.isSearchPanelOpen_$())}loadEmbeddingStatus(){return I(this,null,function*(){let e=this.selectedProjectId_$(),n=this.selectedRegistryEntryId_$();if(!(!e||!n))try{let r=yield F(this.ps_AS.getEmbeddingStatus({projectId:e,registryEntryId:n}));this.embeddingStatus_$.set(r)}catch(r){this.error_$.set(r instanceof Error?r.message:"Embedding st\xE1tusz bet\xF6lt\xE9se sikertelen.")}})}startEmbedding(){return I(this,null,function*(){let e=this.selectedProjectId_$(),n=this.selectedRegistryEntryId_$();if(!(!e||!n)){this.isEmbedding_$.set(!0),this.error_$.set(null);try{yield F(this.ps_AS.startEmbedding({projectId:e,registryEntryId:n})),this.startEmbeddingPolling()}catch(r){this.error_$.set(r instanceof Error?r.message:"Embedding ind\xEDt\xE1s sikertelen."),this.isEmbedding_$.set(!1)}}})}search(e){return I(this,null,function*(){let n=this.selectedProjectId_$(),r=this.selectedRegistryEntryId_$();if(!(!n||!r||!e.query.trim())){this.isSearching_$.set(!0),this.error_$.set(null);try{let d=yield F(this.ps_AS.search({projectId:n,registryEntryId:r,query:e.query,metric:this.searchMetric_$()}));this.searchResults_$.set(d.results)}catch(d){this.error_$.set(d instanceof Error?d.message:"Keres\xE9s sikertelen.")}finally{this.isSearching_$.set(!1)}}})}navigateToSearchResult(e){let n=this.files_$().find(r=>r.relativePath===e.result.file.relativePath);n&&(this.openFileInTab({file:n}),this.isSearchPanelOpen_$.set(!1))}loadRelationsForFile(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n)try{let r=yield F(this.ps_AS.getRelationsForFile({projectId:n,fileId:e.fileId}));this.relations_$.set([...r.outgoing,...r.incoming])}catch{}})}loadRunFlows(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listRunFlows({projectId:e}));this.runFlows_$.set(n.items)}catch{}})}loadDataFlows(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listDataFlows({projectId:e}));this.dataFlows_$.set(n.items)}catch{}})}loadDescriptions(){return I(this,null,function*(){let e=this.selectedProjectId_$();if(e)try{let n=yield F(this.ps_AS.listDescriptions({projectId:e}));this.descriptions_$.set(n.items)}catch{}})}updateDescription(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n)try{yield F(this.ps_AS.updateDescription({projectId:n,descId:e.descId,description:e.description})),yield this.loadDescriptions()}catch(r){this.error_$.set(r instanceof Error?r.message:"Description friss\xEDt\xE9s sikertelen.")}})}embeddingPollTimer=null;startEmbeddingPolling(){this.stopEmbeddingPolling(),this.embeddingPollTimer=setInterval(()=>{this.loadEmbeddingStatus().then(()=>{this.embeddingStatus_$()?.pending===0&&(this.isEmbedding_$.set(!1),this.stopEmbeddingPolling())})},3e3)}stopEmbeddingPolling(){this.embeddingPollTimer&&(clearInterval(this.embeddingPollTimer),this.embeddingPollTimer=null)}loadFileForTab(e){return I(this,null,function*(){let n=this.selectedProjectId_$();if(n){this.updateTabLoading({fileId:e.fileId,isLoading:!0});try{let r=yield F(this.ps_AS.getFileDetail({projectId:n,fileId:e.fileId}));this.tabFileCache.set(e.fileId,{file:r.file,chunks:r.chunks}),this.activeTabId_$()===e.fileId&&(this.selectedFile_$.set(r.file),this.selectedFileChunks_$.set(r.chunks),this.loadRelationsForFile({fileId:e.fileId}))}catch(r){this.error_$.set(r instanceof Error?r.message:"F\xE1jl detail bet\xF6lt\xE9se sikertelen.")}finally{this.updateTabLoading({fileId:e.fileId,isLoading:!1})}}})}updateTabLoading(e){this.openTabs_$.update(n=>n.map(r=>r.fileId===e.fileId?K(J({},r),{isLoading:e.isLoading}):r))}persistTabs(){let e=this.openTabs_$().map(r=>r.fileId);T.saveOpenTabIds(e);let n=this.activeTabId_$();n&&T.saveActiveTabId(n)}startStatusPolling(){this.stopStatusPolling(),this.statusPollTimer=setInterval(()=>{this.loadIngestionStatus()},3e3)}stopStatusPolling(){this.statusPollTimer&&(clearInterval(this.statusPollTimer),this.statusPollTimer=null)}restoreFromStorage(){this.isFileTreeOpen_$.set(T.loadPanelOpen("fileTree",!0)),this.isInfoPanelOpen_$.set(T.loadPanelOpen("infoPanel",!0));let e=T.loadExpandedFolders();e.length>0&&this.expandedFolders_$.set(new Set(e))}ngOnDestroy(){this.stopStatusPolling(),this.stopEmbeddingPolling()}static \u0275fac=function(n){return new(n||t)};static \u0275prov=Y({token:t,factory:t.\u0275fac})}return t})();var je=(t,a)=>a.id;function Me(t,a){if(t&1&&(i(0,"option",14),s(1),o()),t&2){let e=a.$implicit;C("value",e.id),l(),h(e.name)}}function Re(t,a){if(t&1){let e=M();i(0,"select",12),S("change",function(r){D(e);let d=p();return w(d.handleProjectChange(r.target.value))}),i(1,"option",13),s(2,"Select project..."),o(),b(3,Me,2,2,"option",14,je),o()}if(t&2){let e,n=p();C("value",(e=n.ps_DS.selectedProjectId_$())!==null&&e!==void 0?e:""),l(3),P(n.ps_DS.projects_$())}}function Ae(t,a){t&1&&(m(0,"span",18),s(1," Ingesting... "))}function Ne(t,a){t&1&&(s(0," Ingest "),E(),i(1,"svg",16),m(2,"polyline",3),o())}function Ve(t,a){if(t&1){let e=M();i(0,"div",17)(1,"button",19),S("click",function(){D(e);let r=p(2);return w(r.handleStartIngestion("full"))}),s(2," Full ingestion "),o(),i(3,"button",19),S("click",function(){D(e);let r=p(2);return w(r.handleStartIngestion("incremental"))}),s(4," Incremental "),o()()}}function Oe(t,a){if(t&1){let e=M();i(0,"div",6)(1,"button",15),S("click",function(){D(e);let r=p();return w(r.handleToggleIngestMenu())}),_(2,Ae,2,0)(3,Ne,3,0,":svg:svg",16),o(),_(4,Ve,5,0,"div",17),o()}if(t&2){let e=p();l(),O("opacity-50",e.ps_DS.isIngesting_$()),C("disabled",e.ps_DS.isIngesting_$()),l(),c(e.ps_DS.isIngesting_$()?2:3),l(2),c(e.isIngestMenuOpen_$()&&!e.ps_DS.isIngesting_$()?4:-1)}}function Ue(t,a){if(t&1&&(i(0,"span",8),s(1),o()),t&2){let e=a;C("title",e.relativePath),l(),x(" ",e.relativePath," ")}}function Be(t,a){t&1&&(i(0,"span",9),s(1,"No file selected"),o())}function Le(t,a){t&1&&(i(0,"span",9),s(1,"Select a project to begin"),o())}function Ge(t,a){if(t&1&&(i(0,"span",20),s(1),o(),i(2,"span",21),s(3,"|"),o(),i(4,"span",20),s(5),o(),m(6,"span",4)),t&2){let e=a;l(),x(" ",e.totalFiles," files "),l(4),x(" ",e.totalChunks," chunks ")}}var Se=(()=>{class t{ps_DS=v(g);isIngestMenuOpen_$=u(!1);handleProjectChange(e){e&&this.ps_DS.selectProject({projectId:e})}handleStartIngestion(e){this.isIngestMenuOpen_$.set(!1),this.ps_DS.startIngestion({mode:e})}handleToggleIngestMenu(){this.isIngestMenuOpen_$.update(e=>!e)}handleToggleFileTree(){this.ps_DS.toggleFileTree()}handleToggleSearchPanel(){this.ps_DS.toggleSearchPanel()}handleToggleInfoPanel(){this.ps_DS.toggleInfoPanel()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-ide-toolbar"]],hostAttrs:[1,"block","shrink-0"],decls:19,vars:12,consts:[["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"],[1,"bg-ccapBg","border","border-neonDefault","text-neutral-300","text-xs","rounded","px-2","py-1","max-w-[180px]","truncate","focus:outline-none","focus:border-neonCyan",3,"value"],[1,"relative","shrink-0"],["sSessionToolbarCenter","",1,"flex","items-center","justify-center","gap-2","min-w-0"],[1,"text-xs","text-neutral-500","truncate","max-w-[400px]",3,"title"],[1,"text-xs","text-neutral-500"],["sSessionToolbarRight","",1,"flex","items-center","gap-1","min-w-0","flex-wrap","justify-end"],[1,"px-2","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"click"],[1,"bg-ccapBg","border","border-neonDefault","text-neutral-300","text-xs","rounded","px-2","py-1","max-w-[180px]","truncate","focus:outline-none","focus:border-neonCyan",3,"change","value"],["value","","disabled",""],[3,"value"],[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",3,"click","disabled"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2",1,"w-3","h-3"],[1,"absolute","top-full","left-0","mt-1","bg-ccapSurface","border","border-neonDefault","rounded","shadow-lg","z-20","min-w-[140px]"],[1,"w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"block","w-full","text-left","px-3","py-1.5","text-xs","text-neutral-300","hover:bg-neonCyan/10","hover:text-neonCyan","transition-colors",3,"click"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"text-[10px]","text-neutral-600","shrink-0"]],template:function(n,r){if(n&1&&(i(0,"app-s-session-shell-toolbar")(1,"div",0)(2,"button",1),S("click",function(){return r.handleToggleFileTree()}),E(),i(3,"svg",2),m(4,"polyline",3),o(),s(5," Files "),o(),j(),m(6,"div",4),_(7,Re,5,1,"select",5)(8,Oe,5,5,"div",6),o(),i(9,"div",7),_(10,Ue,2,2,"span",8)(11,Be,2,0,"span",9)(12,Le,2,0,"span",9),o(),i(13,"div",10),_(14,Ge,7,2),i(15,"button",11),S("click",function(){return r.handleToggleSearchPanel()}),s(16," Search "),o(),i(17,"button",11),S("click",function(){return r.handleToggleInfoPanel()}),s(18," Info "),o()()()),n&2){let d,f;l(3),O("rotate-90",r.ps_DS.isFileTreeOpen_$())("-rotate-90",!r.ps_DS.isFileTreeOpen_$()),l(4),c(r.ps_DS.isEmbedded_$()?-1:7),l(),c(r.ps_DS.selectedProjectId_$()?8:-1),l(2),c((d=r.ps_DS.selectedFile_$())?10:r.ps_DS.selectedProjectId_$()?11:12,d),l(4),c((f=r.ps_DS.stats_$())?14:-1,f),l(),k(r.ps_DS.isSearchPanelOpen_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600"),l(2),k(r.ps_DS.isInfoPanelOpen_$()?"border-neonCyan/50 text-neonCyan bg-neonCyan/10":"border-neutral-700 text-neutral-500 hover:text-neutral-300 hover:border-neutral-600")}},dependencies:[B,L,me],encapsulation:2})}return t})();var We=(t,a)=>a.path;function ze(t,a){if(t&1&&m(0,"app-ps-file-tree-node",6),t&2){let e=a.$implicit,n=p(3);C("node",e)("depth",n.depth+1)}}function He(t,a){if(t&1&&b(0,ze,1,2,"app-ps-file-tree-node",6,We),t&2){let e=p(2);P(e.node.children)}}function Xe(t,a){if(t&1){let e=M();i(0,"button",1),S("click",function(){D(e);let r=p();return w(r.handleFolderToggle())}),E(),i(1,"svg",2),m(2,"polyline",3),o(),j(),i(3,"span",4),s(4),o(),i(5,"span",5),s(6),o()(),_(7,He,2,0)}if(t&2){let e=p();H("padding-left",e.depth*16+4,"px"),l(),O("rotate-90",e.isExpanded),l(3),h(e.node.name),l(2),x(" ",e.node.fileCount," "),l(),c(e.isExpanded?7:-1)}}function Qe(t,a){if(t&1&&(i(0,"span",9),s(1),o()),t&2){let e=p(2);l(),h(e.node.file.chunkCount)}}function Je(t,a){if(t&1){let e=M();i(0,"button",7),S("click",function(){D(e);let r=p();return w(r.handleFileClick())}),m(1,"span",8),i(2,"span",4),s(3),o(),_(4,Qe,2,1,"span",9),o()}if(t&2){let e=p();k(e.isActiveFile?"border-l-2 border-neonCyan bg-neonCyan/5 text-neonCyan":"text-neutral-400 hover:bg-neonCyan/5 hover:text-neutral-300 border-l-2 border-transparent"),H("padding-left",e.depth*16+20,"px"),l(),k((e.node.file==null?null:e.node.file.sourceType)==="code"?"bg-neonCyan/60":(e.node.file==null?null:e.node.file.sourceType)==="rule"?"bg-neonAmber/60":"bg-neonGreen/60"),l(2),h(e.node.name),l(),c(e.node.file&&e.node.file.chunkCount?4:-1)}}var Ce=(()=>{class t{node;depth;ps_DS=v(g);handleFolderToggle(){this.ps_DS.toggleFolder({folderPath:this.node.path})}handleFileClick(){this.node.file&&this.ps_DS.openFileInTab({file:this.node.file})}get isExpanded(){return this.ps_DS.expandedFolders_$().has(this.node.path)}get isActiveFile(){return!this.node.isFolder&&!!this.node.file&&this.ps_DS.activeTabId_$()===this.node.file.id}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-file-tree-node"]],hostAttrs:[1,"block"],inputs:{node:"node",depth:"depth"},decls:2,vars:1,consts:[[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","transition-colors",3,"padding-left","class"],[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","text-neutral-400","hover:bg-neonCyan/5","hover:text-neutral-300","transition-colors","group",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","mr-1","shrink-0","transition-transform","duration-100"],["points","9 18 15 12 9 6"],[1,"truncate"],[1,"ml-auto","text-[10px]","text-neutral-600","group-hover:text-neutral-500","shrink-0"],[3,"node","depth"],[1,"flex","items-center","w-full","text-left","py-0.5","pr-2","text-xs","transition-colors",3,"click"],[1,"w-2","h-2","rounded-full","mr-1.5","shrink-0"],[1,"ml-auto","text-[10px]","text-neutral-600","shrink-0"]],template:function(n,r){n&1&&_(0,Xe,8,7)(1,Je,5,8,"button",0),n&2&&c(r.node.isFolder?0:1)},dependencies:[t],encapsulation:2})}return t})();var Ye=(t,a)=>a.path;function Ze(t,a){t&1&&(i(0,"div",3),s(1," Loading... "),o())}function et(t,a){t&1&&(i(0,"div",4),s(1," No files found "),o())}function tt(t,a){if(t&1&&m(0,"app-ps-file-tree-node",17),t&2){let e=a.$implicit;C("node",e)("depth",0)}}function nt(t,a){if(t&1&&b(0,tt,1,2,"app-ps-file-tree-node",17,Ye),t&2){let e=p();P(e.filteredTree_$())}}function it(t,a){if(t&1&&(i(0,"option",18),s(1),o()),t&2){let e=a.$implicit;C("value",e),l(),h(e)}}function ot(t,a){if(t&1){let e=M();i(0,"select",6),S("change",function(r){D(e);let d=p();return w(d.handleModuleChange(r.target.value))}),i(1,"option",7),s(2,"All modules"),o(),b(3,it,2,2,"option",18,U),o()}if(t&2){let e=p();C("value",e.ps_DS.filterModule_$()),l(3),P(e.ps_DS.availableModules_$())}}var ve=(()=>{class t{ps_DS=v(g);filteredTree_$=Z(()=>{let e=this.ps_DS.treeSearchQuery_$(),n=this.ps_DS.fileTree_$();return e.trim()?G.filterTreeBySearch({nodes:n,query:e}):n});handleSearchChange(e){this.ps_DS.treeSearchQuery_$.set(e)}handleSourceTypeChange(e){this.ps_DS.filterSourceType_$.set(e),this.ps_DS.loadFilesAndBuildTree()}handleProjectPartChange(e){this.ps_DS.filterProjectPart_$.set(e),this.ps_DS.loadFilesAndBuildTree()}handleModuleChange(e){this.ps_DS.filterModule_$.set(e),this.ps_DS.loadFilesAndBuildTree()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-file-tree"]],hostAttrs:[1,"flex","flex-col","h-full","overflow-hidden"],decls:30,vars:5,consts:[[1,"shrink-0","p-2","border-b","border-neonDefault/30"],["type","text","placeholder","Search files...",1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-1","text-xs","text-neutral-300","placeholder-neutral-600","focus:outline-none","focus:border-neonCyan/60",3,"input","value"],[1,"flex-1","overflow-y-auto","overflow-x-hidden","min-h-0","py-1"],[1,"flex","items-center","justify-center","py-8","text-neutral-500","text-xs"],[1,"flex","items-center","justify-center","py-8","text-neutral-600","text-xs"],[1,"shrink-0","border-t","border-neonDefault/30","p-2","space-y-1"],[1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"change","value"],["value",""],["value","code"],["value","document"],["value","rule"],["value","server"],["value","client"],["value","cli"],["value","e2e"],["value","shared"],[1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"value"],[3,"node","depth"],[3,"value"]],template:function(n,r){n&1&&(i(0,"div",0)(1,"input",1),S("input",function(f){return r.handleSearchChange(f.target.value)}),o()(),i(2,"div",2),_(3,Ze,2,0,"div",3)(4,et,2,0,"div",4)(5,nt,2,0),o(),i(6,"div",5)(7,"select",6),S("change",function(f){return r.handleSourceTypeChange(f.target.value)}),i(8,"option",7),s(9,"All types"),o(),i(10,"option",8),s(11,"Code"),o(),i(12,"option",9),s(13,"Document"),o(),i(14,"option",10),s(15,"Rule"),o()(),i(16,"select",6),S("change",function(f){return r.handleProjectPartChange(f.target.value)}),i(17,"option",7),s(18,"All parts"),o(),i(19,"option",11),s(20,"Server"),o(),i(21,"option",12),s(22,"Client"),o(),i(23,"option",13),s(24,"CLI"),o(),i(25,"option",14),s(26,"E2E"),o(),i(27,"option",15),s(28,"Shared"),o()(),_(29,ot,5,1,"select",16),o()),n&2&&(l(),C("value",r.ps_DS.treeSearchQuery_$()),l(2),c(r.ps_DS.isLoading_$()?3:r.filteredTree_$().length?5:4),l(4),C("value",r.ps_DS.filterSourceType_$()),l(9),C("value",r.ps_DS.filterProjectPart_$()),l(13),c(r.ps_DS.availableModules_$().length?29:-1))},dependencies:[B,L,Ce],encapsulation:2})}return t})();var lt=(t,a)=>a.fileId;function at(t,a){t&1&&m(0,"span",3)}function st(t,a){if(t&1){let e=M();i(0,"button",2),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleTabClick(r))}),_(1,at,1,0,"span",3),i(2,"span",4),s(3),o(),i(4,"span",5),S("click",function(r){let d=D(e).$implicit,f=p(2);return w(f.handleTabClose(r,d))}),E(),i(5,"svg",6),m(6,"line",7)(7,"line",8),o()()()}if(t&2){let e=a.$implicit,n=p(2);k(n.ps_DS.activeTabId_$()===e.fileId?"border-b-2 border-b-neonCyan text-neonCyan bg-neonCyan/5":"text-neutral-400 hover:text-neutral-300 hover:bg-neutral-800 border-b-2 border-b-transparent"),l(),c(e.isLoading?1:-1),l(2),h(e.fileName)}}function dt(t,a){if(t&1&&(i(0,"div",0),b(1,st,8,4,"button",1,lt),o()),t&2){let e=p();l(),P(e.ps_DS.openTabs_$())}}var ge=(()=>{class t{ps_DS=v(g);handleTabClick(e){this.ps_DS.setActiveTab({fileId:e.fileId})}handleTabClose(e,n){e.stopPropagation(),this.ps_DS.closeTab({fileId:n.fileId})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-tab-bar"]],hostAttrs:[1,"block","shrink-0"],decls:1,vars:1,consts:[[1,"flex","items-stretch","overflow-x-auto","border-b","border-neonDefault/30","bg-ccapBg","scrollbar-thin","scrollbar-thumb-neutral-700"],[1,"flex","items-center","gap-1.5","px-3","py-1.5","text-xs","whitespace-nowrap","border-r","border-neonDefault/20","transition-colors","shrink-0","max-w-[200px]","group",3,"class"],[1,"flex","items-center","gap-1.5","px-3","py-1.5","text-xs","whitespace-nowrap","border-r","border-neonDefault/20","transition-colors","shrink-0","max-w-[200px]","group",3,"click"],[1,"w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"truncate"],[1,"ml-1","w-4","h-4","flex","items-center","justify-center","rounded","hover:bg-neutral-600","text-neutral-500","hover:text-neutral-200","opacity-0","group-hover:opacity-100","transition-opacity","shrink-0",3,"click"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","2.5",1,"w-2.5","h-2.5"],["x1","18","y1","6","x2","6","y2","18"],["x1","6","y1","6","x2","18","y2","18"]],template:function(n,r){n&1&&_(0,dt,3,0,"div",0),n&2&&c(r.ps_DS.openTabs_$().length?0:-1)},encapsulation:2})}return t})();var pt=(t,a)=>a.id;function _t(t,a){t&1&&(i(0,"div",1),E(),i(1,"svg",4),m(2,"path",5)(3,"polyline",6),o(),j(),i(4,"span",7),s(5,"Open a file from the tree"),o()())}function mt(t,a){t&1&&(i(0,"div",2),s(1," No chunks available for this file "),o())}function ut(t,a){if(t&1&&m(0,"span",12),t&2){let e=p().$implicit;C("title","Embedded: "+e.dimensions+"d, "+e.embeddingTimeMs+"ms")}}function ft(t,a){t&1&&m(0,"span",13)}function ht(t,a){t&1&&m(0,"span",14)}function xt(t,a){if(t&1&&(i(0,"span",15),s(1),o()),t&2){let e=p().$implicit;l(),V(" L",e.lineStart,"-",e.lineEnd," ")}}function St(t,a){if(t&1&&(i(0,"span",17),s(1),o()),t&2){let e=p().$implicit;l(),x(" ",e.chunkType," ")}}function Ct(t,a){if(t&1&&(i(0,"span",18),s(1),o()),t&2){let e=p().$implicit;C("title",e.headerPath),l(),x(" ",e.headerPath," ")}}function vt(t,a){if(t&1&&(i(0,"span",20),s(1),o()),t&2){let e=a.$implicit;l(),x(" ",e," ")}}function gt(t,a){if(t&1&&b(0,vt,2,1,"span",20,U),t&2){let e=p().$implicit;P(e.requirementCodes)}}function It(t,a){if(t&1){let e=M();i(0,"div",9),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleChunkClick(r))}),i(1,"div",10)(2,"span",11),s(3),o(),_(4,ut,1,1,"span",12)(5,ft,1,0,"span",13)(6,ht,1,0,"span",14)(7,xt,2,2,"span",15),i(8,"span",16),s(9),o(),_(10,St,2,1,"span",17)(11,Ct,2,2,"span",18)(12,gt,2,0),o(),i(13,"pre",19),s(14),o()()}if(t&2){let e=a.$implicit,n=p(2);k(n.ps_DS.selectedChunkIndex_$()===e.chunkIndex?"ring-1 ring-neonCyan/40 bg-neonCyan/3 border-neonCyan/30":"border-neonDefault/20 hover:border-neonDefault/40 bg-ccapSurface"),l(3),x(" #",e.chunkIndex," "),l(),c(e.embeddingStatus==="completed"?4:e.embeddingStatus==="error"?5:6),l(3),c(e.lineStart!==void 0&&e.lineEnd!==void 0?7:-1),l(2),V(" C",e.charStart,"-",e.charEnd," "),l(),c(e.chunkType?10:-1),l(),c(e.headerPath?11:-1),l(),c(e.requirementCodes.length?12:-1),l(2),h(e.text)}}function bt(t,a){if(t&1&&(i(0,"div",3),b(1,It,15,11,"div",8,pt),o()),t&2){let e=p();l(),P(e.ps_DS.selectedFileChunks_$())}}var Ie=(()=>{class t{ps_DS=v(g);handleChunkClick(e){this.ps_DS.selectChunk({chunkIndex:e.chunkIndex})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-chunk-viewer"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],decls:4,vars:1,consts:[[1,"flex-1","overflow-y-auto","min-h-0","p-3"],[1,"flex","flex-col","items-center","justify-center","h-full","text-neutral-600"],[1,"flex","items-center","justify-center","h-full","text-neutral-600","text-sm"],[1,"space-y-2"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1",1,"w-12","h-12","mb-3","text-neutral-700"],["d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"],["points","13 2 13 9 20 9"],[1,"text-sm"],[1,"rounded","border","transition-all","cursor-pointer",3,"class"],[1,"rounded","border","transition-all","cursor-pointer",3,"click"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/10"],[1,"text-[10px]","font-mono","text-neutral-500"],[1,"w-2","h-2","rounded-full","bg-neonGreen","shrink-0",3,"title"],["title","Embedding error",1,"w-2","h-2","rounded-full","bg-red-400","shrink-0"],["title","Not embedded",1,"w-2","h-2","rounded-full","bg-neutral-600","shrink-0"],[1,"text-[10px]","text-neutral-600"],[1,"text-[10px]","text-neutral-600","font-mono"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonCyan/10","text-neonCyan"],[1,"text-[10px]","text-neutral-500","truncate","max-w-[250px]",3,"title"],[1,"px-3","py-2","text-xs","text-neutral-300","font-mono","whitespace-pre-wrap","break-words","overflow-x-auto","max-h-[400px]","overflow-y-auto","leading-relaxed"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber"]],template:function(n,r){n&1&&(i(0,"div",0),_(1,_t,6,0,"div",1)(2,mt,2,0,"div",2)(3,bt,3,0,"div",3),o()),n&2&&(l(),c(r.ps_DS.activeTabId_$()?!r.ps_DS.selectedFileChunks_$().length&&!r.ps_DS.isLoading_$()?2:3:1))},encapsulation:2})}return t})();var $t=(t,a)=>a.code,be=(t,a)=>a.id;function yt(t,a){if(t&1&&(i(0,"div",22)(1,"div",13),s(2,"Module"),o(),i(3,"div",20),s(4),o()()),t&2){let e=p();l(4),h(e.moduleName)}}function Et(t,a){if(t&1&&(i(0,"div")(1,"div",13),s(2,"Role"),o(),i(3,"div",20),s(4),o()()),t&2){let e=p();l(4),h(e.fileRole)}}function kt(t,a){if(t&1&&(i(0,"div",25),s(1),o()),t&2){let e=p(2);l(),h(e.errorMessage)}}function Dt(t,a){if(t&1&&(i(0,"div",23)(1,"div",24),s(2,"Error"),o(),_(3,kt,2,1,"div",25),o()),t&2){let e=p();l(3),c(e.errorMessage?3:-1)}}function wt(t,a){if(t&1&&(i(0,"span",28),s(1),o()),t&2){let e=a.$implicit;l(),x(" ",e," ")}}function Ft(t,a){if(t&1&&(i(0,"div",22)(1,"div",26),s(2,"Requirements"),o(),i(3,"div",27),b(4,wt,2,1,"span",28,U),o()()),t&2){let e=p();l(4),P(e.requirementCodes)}}function jt(t,a){if(t&1&&(i(0,"div",13),s(1,"Path"),o(),i(2,"div",17),s(3),o(),i(4,"div",18)(5,"div")(6,"div",13),s(7,"Type"),o(),i(8,"span",19),s(9),o()(),i(10,"div")(11,"div",13),s(12,"Part"),o(),i(13,"div",20),s(14),o()(),i(15,"div")(16,"div",13),s(17,"Extension"),o(),i(18,"div",21),s(19),o()(),i(20,"div")(21,"div",13),s(22,"Lines"),o(),i(23,"div",20),s(24),o()(),i(25,"div")(26,"div",13),s(27,"Size"),o(),i(28,"div",20),s(29),o()(),i(30,"div")(31,"div",13),s(32,"Chunks"),o(),i(33,"div",20),s(34),o()()(),_(35,yt,5,1,"div",22)(36,Et,5,1,"div")(37,Dt,4,1,"div",23)(38,Ft,6,0,"div",22)),t&2){let e=a;l(3),h(e.relativePath),l(5),k(e.sourceType==="code"?"bg-neonCyan/10 text-neonCyan":e.sourceType==="rule"?"bg-neonAmber/10 text-neonAmber":"bg-neonGreen/10 text-neonGreen"),l(),x(" ",e.sourceType," "),l(5),h(e.projectPart),l(5),h(e.fileExtension),l(5),h(e.lineCount),l(5),x("",e.fileSizeBytes," B"),l(5),h(e.chunkCount),l(),c(e.moduleName?35:-1),l(),c(e.fileRole?36:-1),l(),c(e.status==="error"?37:-1),l(),c(e.requirementCodes.length?38:-1)}}function Mt(t,a){t&1&&(i(0,"div",6),s(1,"No file selected"),o())}function Rt(t,a){if(t&1&&(i(0,"span",8),s(1),o()),t&2){let e=p();l(),x(" ",e.ps_DS.requirementCodes_$().length," ")}}function At(t,a){t&1&&(i(0,"div",6),s(1,"No requirement codes"),o())}function Nt(t,a){if(t&1&&(i(0,"div",29)(1,"span",30),s(2),o(),i(3,"span",31),s(4),o()()),t&2){let e=a.$implicit;l(2),x(" ",e.code," "),l(2),V(" ",e.fileCount,"f / ",e.chunkCount,"c ")}}function Vt(t,a){if(t&1&&b(0,Nt,5,3,"div",29,$t),t&2){let e=p();P(e.ps_DS.requirementCodes_$())}}function Ot(t,a){if(t&1&&(i(0,"span",35),s(1),o()),t&2){let e=p().$implicit;l(),h(e.externalPackage)}}function Ut(t,a){if(t&1&&(i(0,"span",36),s(1),o()),t&2){let e,n,r=p().$implicit;C("title",(e=r.targetFilePath)!==null&&e!==void 0?e:""),l(),x(" ",(n=r.targetSymbol)!==null&&n!==void 0?n:r.targetFilePath," ")}}function Bt(t,a){if(t&1&&(i(0,"div",33)(1,"span",34),s(2),o(),_(3,Ot,2,1,"span",35)(4,Ut,2,2,"span",36),o()),t&2){let e=a.$implicit;l(),k(e.relationType==="import"?"bg-blue-900/50 text-blue-300":e.relationType==="injection"?"bg-purple-900/50 text-purple-300":e.relationType==="inheritance"?"bg-orange-900/50 text-orange-300":"bg-neutral-700 text-neutral-300"),l(),x(" ",e.relationType," "),l(),c(e.isExternalTarget?3:4)}}function Lt(t,a){if(t&1&&(i(0,"details",7)(1,"summary",2),E(),i(2,"svg",3),m(3,"polyline",4),o(),s(4," Relations "),j(),i(5,"span",8),s(6),o()(),i(7,"div",32),b(8,Bt,5,4,"div",33,be),o()()),t&2){let e=p();l(6),x(" ",e.ps_DS.relations_$().length," "),l(2),P(e.ps_DS.relations_$())}}function Gt(t,a){t&1&&m(0,"span",10)}function qt(t,a){if(t&1&&(i(0,"div")(1,"div",13),s(2,"Duration"),o(),i(3,"div",20),s(4),X(5,"number"),o()()),t&2){let e=p();l(4),x(" ",Q(5,1,e.durationMs/1e3,"1.0-1"),"s ")}}function Wt(t,a){if(t&1&&(i(0,"span",42),s(1),o()),t&2){let e=p();l(),x("err:",e.filesErrored,"")}}function zt(t,a){if(t&1&&(i(0,"div",43),s(1),o()),t&2){let e=p();l(),h(e.errorMessage)}}function Ht(t,a){if(t&1&&(i(0,"pre",44),s(1),o()),t&2){let e=p();l(),h(e.errorDetails)}}function Xt(t,a){if(t&1&&(i(0,"div",37)(1,"div")(2,"div",13),s(3,"Status"),o(),i(4,"div",38),s(5),o()(),i(6,"div")(7,"div",13),s(8,"Mode"),o(),i(9,"div",20),s(10),o()(),_(11,qt,6,4,"div"),i(12,"div")(13,"div",13),s(14,"Scanned"),o(),i(15,"div",20),s(16),o()()(),i(17,"div",39)(18,"span",40),s(19),o(),i(20,"span",41),s(21),o(),i(22,"span",42),s(23),o(),i(24,"span",13),s(25),o(),_(26,Wt,2,1,"span",42),o(),_(27,zt,2,1,"div",43)(28,Ht,2,1,"pre",44)),t&2){let e=a;l(4),k(e.status==="completed"?"text-neonGreen":e.status==="running"?"text-neonCyan":e.status==="failed"?"text-red-400":"text-neutral-400"),l(),x(" ",e.status," "),l(5),h(e.mode),l(),c(e.durationMs?11:-1),l(5),h(e.totalFilesScanned),l(3),x("+",e.filesNew,""),l(2),x("~",e.filesChanged,""),l(2),x("-",e.filesDeleted,""),l(2),x("=",e.filesUnchanged,""),l(),c(e.filesErrored?26:-1),l(),c(e.errorMessage?27:-1),l(),c(e.errorDetails?28:-1)}}function Qt(t,a){t&1&&(i(0,"div",6),s(1,"No ingestion runs"),o())}function Jt(t,a){t&1&&m(0,"span",11)}function Kt(t,a){if(t&1&&(i(0,"div",45),m(1,"div",46),o(),i(2,"div",13),s(3),X(4,"number"),o(),i(5,"div",47)(6,"div",48)(7,"div",49),s(8),o(),i(9,"div",35),s(10,"Total"),o()(),i(11,"div",48)(12,"div",50),s(13),o(),i(14,"div",35),s(15,"Done"),o()(),i(16,"div",48)(17,"div",51),s(18),o(),i(19,"div",35),s(20,"Pending"),o()(),i(21,"div",48)(22,"div",52),s(23),o(),i(24,"div",35),s(25,"Error"),o()()()),t&2){let e=a;l(),H("width",e.total>0?e.completed/e.total*100:0,"%"),l(2),le(" ",e.completed,"/",e.total," embedded (",e.total>0?Q(4,9,e.completed/e.total*100,"1.0-0"):0,"%) "),l(5),h(e.total),l(5),h(e.completed),l(5),h(e.pending),l(5),h(e.error)}}function Yt(t,a){t&1&&(i(0,"div",13),s(1,"No embedding status"),o())}function Zt(t,a){t&1&&(i(0,"span",16),m(1,"span",53),s(2," Embedding... "),o())}function en(t,a){t&1&&s(0," Embed Now ")}function tn(t,a){if(t&1&&(i(0,"div",58),s(1),o()),t&2){let e=p().$implicit;l(),h(e.description)}}function nn(t,a){t&1&&(i(0,"div",59),s(1,"No description"),o())}function on(t,a){if(t&1&&(i(0,"div",54)(1,"div",55)(2,"span",56),s(3),o(),i(4,"span",57),s(5),o()(),_(6,tn,2,1,"div",58)(7,nn,2,0,"div",59),o()),t&2){let e=a.$implicit;l(3),x(" ",e.elementType," "),l(2),h(e.displayName),l(),c(e.description?6:7)}}function rn(t,a){if(t&1&&(i(0,"details",7)(1,"summary",2),E(),i(2,"svg",3),m(3,"polyline",4),o(),s(4," Descriptions "),j(),i(5,"span",8),s(6),o()(),i(7,"div",32),b(8,on,8,3,"div",54,be),o()()),t&2){let e=p();l(6),x(" ",e.ps_DS.descriptions_$().length," "),l(2),P(e.ps_DS.descriptions_$())}}var Pe=(()=>{class t{ps_DS=v(g);handleStartEmbedding(){this.ps_DS.startEmbedding()}handleLoadEmbeddingStatus(){this.ps_DS.loadEmbeddingStatus()}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-info-panel"]],hostAttrs:[1,"flex","flex-col","h-full","overflow-hidden"],decls:42,vars:14,consts:[[1,"flex-1","overflow-y-auto","min-h-0","p-2","space-y-2"],["open","",1,"group"],[1,"flex","items-center","gap-1","cursor-pointer","text-xs","font-semibold","text-neutral-300","py-1.5","px-2","rounded","hover:bg-neonCyan/5","transition-colors","select-none","border","border-neonDefault/20"],["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-100","group-open:rotate-90","text-neutral-500"],["points","9 18 15 12 9 6"],[1,"mt-1","px-2","pb-1","space-y-1"],[1,"text-xs","text-neutral-600","py-2"],[1,"group"],[1,"ml-auto","text-[10px]","text-neutral-500"],[1,"mt-1","px-2","pb-1","space-y-1","max-h-[240px]","overflow-y-auto"],[1,"ml-1","w-2","h-2","rounded-full","bg-neonCyan","animate-pulse","shrink-0"],[1,"ml-1","w-2","h-2","rounded-full","bg-neonGreen","animate-pulse","shrink-0"],[1,"mt-1","px-2","pb-1","space-y-2"],[1,"text-[10px]","text-neutral-500"],["type","text","placeholder","Embedding Registry Entry ID","title","Paste the registry entry ID from Embedding Model Registry",1,"w-full","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400","focus:outline-none","focus:border-neonCyan/60",3,"change","value"],[1,"w-full","px-2","py-1","text-[10px]","border","rounded","transition-colors",3,"click","disabled"],[1,"inline-flex","items-center","gap-1"],[1,"text-xs","text-neutral-300","break-all","font-mono"],[1,"grid","grid-cols-2","gap-x-2","gap-y-1","mt-1"],[1,"text-xs","px-1.5","py-0.5","rounded-full","inline-block"],[1,"text-xs","text-neutral-300"],[1,"text-xs","text-neutral-300","font-mono"],[1,"mt-1"],[1,"mt-2","text-[10px]","text-red-400","bg-red-900/20","rounded","p-1.5"],[1,"font-bold"],[1,"mt-0.5","break-words"],[1,"text-[10px]","text-neutral-500","mb-0.5"],[1,"flex","flex-wrap","gap-1"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber"],[1,"flex","items-center","gap-2","py-0.5"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonAmber/10","text-neonAmber","shrink-0","font-mono"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"mt-1","px-2","pb-1","space-y-1","max-h-40","overflow-y-auto"],[1,"text-[10px]","flex","items-center","gap-1","py-0.5"],[1,"px-1","py-0.5","rounded","text-[9px]"],[1,"text-neutral-500"],[1,"text-neutral-400","truncate",3,"title"],[1,"grid","grid-cols-2","gap-x-2","gap-y-1"],[1,"text-xs","font-mono"],[1,"flex","flex-wrap","gap-1.5","mt-1"],[1,"text-[10px]","text-neonGreen"],[1,"text-[10px]","text-neonAmber"],[1,"text-[10px]","text-red-400"],[1,"text-[10px]","text-red-400","mt-1","break-words"],[1,"text-[9px]","text-red-300","bg-red-900/10","rounded","p-1","mt-1","max-h-20","overflow-y-auto","whitespace-pre-wrap"],[1,"w-full","bg-neutral-800","rounded-full","h-1.5"],[1,"bg-neonGreen","h-1.5","rounded-full","transition-all"],[1,"grid","grid-cols-4","gap-1","text-center","text-[10px]"],[1,"bg-neutral-800/60","rounded","p-1"],[1,"text-neutral-300","font-mono"],[1,"text-neonGreen","font-mono"],[1,"text-neonAmber","font-mono"],[1,"text-red-400","font-mono"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"],[1,"text-[10px]","py-1","border-b","border-neonDefault/10"],[1,"flex","items-center","gap-1"],[1,"px-1","py-0.5","rounded","text-[9px]","bg-neonAmber/10","text-neonAmber"],[1,"text-neutral-300","font-medium"],[1,"text-neutral-500","mt-0.5"],[1,"text-neutral-600","italic","mt-0.5"]],template:function(n,r){if(n&1&&(i(0,"div",0)(1,"details",1)(2,"summary",2),E(),i(3,"svg",3),m(4,"polyline",4),o(),s(5," File Info "),o(),j(),i(6,"div",5),_(7,jt,39,13)(8,Mt,2,0,"div",6),o()(),i(9,"details",7)(10,"summary",2),E(),i(11,"svg",3),m(12,"polyline",4),o(),s(13," Requirements "),_(14,Rt,2,1,"span",8),o(),j(),i(15,"div",9),_(16,At,2,0,"div",6)(17,Vt,2,0),o()(),_(18,Lt,10,1,"details",7),i(19,"details",7)(20,"summary",2),E(),i(21,"svg",3),m(22,"polyline",4),o(),s(23," Ingestion "),_(24,Gt,1,0,"span",10),o(),j(),i(25,"div",5),_(26,Xt,29,13)(27,Qt,2,0,"div",6),o()(),i(28,"details",1)(29,"summary",2),E(),i(30,"svg",3),m(31,"polyline",4),o(),s(32," RAG / Embedding "),_(33,Jt,1,0,"span",11),o(),j(),i(34,"div",12),_(35,Kt,26,12)(36,Yt,2,0,"div",13),i(37,"input",14),S("change",function(f){return r.ps_DS.selectedRegistryEntryId_$.set(f.target.value),r.handleLoadEmbeddingStatus()}),o(),i(38,"button",15),S("click",function(){return r.handleStartEmbedding()}),_(39,Zt,3,0,"span",16)(40,en,1,0),o()()(),_(41,rn,10,1,"details",7),o()),n&2){let d,f,$,q;l(7),c((d=r.ps_DS.selectedFile_$())?7:8,d),l(7),c(r.ps_DS.requirementCodes_$().length?14:-1),l(2),c(r.ps_DS.requirementCodes_$().length?17:16),l(2),c(r.ps_DS.relations_$().length>0?18:-1),l(6),c(r.ps_DS.isIngesting_$()?24:-1),l(2),c((f=r.ps_DS.latestRun_$())?26:27,f),l(7),c(r.ps_DS.isEmbedding_$()?33:-1),l(2),c(($=r.ps_DS.embeddingStatus_$())?35:36,$),l(2),C("value",(q=r.ps_DS.selectedRegistryEntryId_$())!==null&&q!==void 0?q:""),l(),k(r.ps_DS.isEmbedding_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10 opacity-50":"border-neonGreen/30 text-neonGreen hover:bg-neonGreen/10"),C("disabled",r.ps_DS.isEmbedding_$()||!r.ps_DS.selectedRegistryEntryId_$()),l(),c(r.ps_DS.isEmbedding_$()?39:40),l(2),c(r.ps_DS.descriptions_$().length>0?41:-1)}},dependencies:[ee],encapsulation:2})}return t})();function an(t,a){if(t&1&&(i(0,"span",1),s(1),o()),t&2){let e=p();l(),h(e.selectedProjectName_$())}}function sn(t,a){t&1&&(i(0,"span",1),s(1,"No project"),o())}function dn(t,a){if(t&1&&(i(0,"span",10),s(1),o()),t&2){let e=p(2);l(),x(" Chunk #",e.ps_DS.selectedChunkIndex_$()," ")}}function cn(t,a){if(t&1&&(m(0,"span",2),i(1,"span",9),s(2),o(),i(3,"span",1),s(4),o(),_(5,dn,2,1,"span",10)),t&2){let e=p();l(2),h(a.fileName),l(2),x("",e.ps_DS.selectedFileChunks_$().length," chunks"),l(),c(e.ps_DS.selectedChunkIndex_$()!==null?5:-1)}}function pn(t,a){t&1&&(i(0,"span",4),m(1,"span",11),s(2," Ingesting "),o())}function _n(t,a){t&1&&(i(0,"span",5),m(1,"span",12),s(2," Embedding "),o())}function mn(t,a){if(t&1&&(i(0,"span",6),s(1),o()),t&2){let e=a;l(),V(" ",e.completed,"/",e.total," emb ")}}function un(t,a){if(t&1&&(i(0,"span",7),s(1),o()),t&2){let e,n=p();C("title",(e=n.ps_DS.error_$())!==null&&e!==void 0?e:""),l(),x(" ",n.ps_DS.error_$()," ")}}function fn(t,a){t&1&&(i(0,"span",8),s(1,"Loading..."),o())}var Te=(()=>{class t{ps_DS=v(g);selectedProjectName_$=Z(()=>{let e=this.ps_DS.selectedProjectId_$();return e?this.ps_DS.projects_$().find(r=>r.id===e)?.name??"":""});static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-status-bar"]],hostAttrs:[1,"block","shrink-0"],decls:13,vars:8,consts:[[1,"flex","items-center","gap-3","px-3","py-1","border-t","border-neonDefault/30","bg-ccapBg","text-[10px]","text-neutral-500"],[1,"shrink-0"],[1,"w-px","h-3","bg-neutral-700","shrink-0"],[1,"flex-1"],[1,"flex","items-center","gap-1","text-neonCyan","shrink-0"],[1,"flex","items-center","gap-1","text-neonGreen","shrink-0"],[1,"text-[10px]","text-neutral-500","shrink-0"],[1,"text-red-400","truncate","max-w-[300px]","shrink-0",3,"title"],[1,"text-neutral-500","shrink-0"],[1,"truncate","max-w-[300px]"],[1,"text-neonCyan","shrink-0"],[1,"w-1.5","h-1.5","rounded-full","bg-neonCyan","animate-pulse"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"]],template:function(n,r){if(n&1&&(i(0,"div",0),_(1,an,2,1,"span",1)(2,sn,2,0,"span",1),m(3,"span",2),i(4,"span",1),s(5),o(),_(6,cn,6,3),m(7,"span",3),_(8,pn,3,0,"span",4)(9,_n,3,0,"span",5)(10,mn,2,2,"span",6)(11,un,2,2,"span",7)(12,fn,2,0,"span",8),o()),n&2){let d,f;l(),c(r.selectedProjectName_$()?1:2),l(4),x("",r.ps_DS.filesTotal_$()," files"),l(),c((d=r.ps_DS.selectedFile_$())?6:-1,d),l(2),c(r.ps_DS.isIngesting_$()?8:-1),l(),c(r.ps_DS.isEmbedding_$()?9:-1),l(),c((f=r.ps_DS.embeddingStatus_$())?10:-1,f),l(),c(r.ps_DS.error_$()?11:-1),l(),c(r.ps_DS.isLoading_$()?12:-1)}},encapsulation:2})}return t})();var xn=(t,a)=>a.chunkId;function Sn(t,a){t&1&&(i(0,"span",3),m(1,"span",14),s(2," Searching... "),o())}function Cn(t,a){t&1&&s(0," Search ")}function vn(t,a){t&1&&(i(0,"div",10)(1,"span",15),m(2,"span",16),s(3," Searching... "),o()())}function gn(t,a){t&1&&(i(0,"div",11),s(1," No results found "),o())}function In(t,a){t&1&&(i(0,"div",12),E(),i(1,"svg",17),m(2,"circle",18)(3,"line",19),o(),j(),i(4,"span",20),s(5,"Enter a query to search"),o()())}function bn(t,a){if(t&1&&(i(0,"span",28),s(1),o()),t&2){let e=p().$implicit;l(),x(" ",e.file.sourceType," ")}}function Pn(t,a){if(t&1&&(i(0,"span",29),s(1),o()),t&2){let e=p().$implicit;l(),h(e.file.projectPart)}}function Tn(t,a){if(t&1&&(i(0,"span",30),s(1),o()),t&2){let e=p().$implicit;l(),h(e.file.moduleName)}}function $n(t,a){if(t&1&&(i(0,"span",31),s(1),o()),t&2){let e=p().$implicit;l(),V(" L",e.lineStart,"-",e.lineEnd," ")}}function yn(t,a){if(t&1){let e=M();i(0,"div",22),S("click",function(){let r=D(e).$implicit,d=p(2);return w(d.handleResultClick(r))}),i(1,"div",23)(2,"span",24),s(3),X(4,"number"),o(),i(5,"span",25),s(6),o(),i(7,"span",26),s(8),o()(),i(9,"div",27),_(10,bn,2,1,"span",28)(11,Pn,2,1,"span",29)(12,Tn,2,1,"span",30)(13,$n,2,2,"span",31),o(),i(14,"pre",32),s(15),o()()}if(t&2){let e=a.$implicit;l(2),k(e.score>=.8?"bg-neonGreen/15 text-neonGreen":e.score>=.6?"bg-neonAmber/15 text-neonAmber":"bg-neutral-700/50 text-neutral-400"),l(),x(" ",Q(4,11,e.score,"1.2-2")," "),l(2),C("title",e.file.relativePath),l(),x(" ",e.file.relativePath," "),l(2),x(" #",e.chunkIndex," "),l(2),c(e.file.sourceType?10:-1),l(),c(e.file.projectPart?11:-1),l(),c(e.file.moduleName?12:-1),l(),c(e.lineStart!==void 0&&e.lineEnd!==void 0?13:-1),l(2),h(e.text)}}function En(t,a){if(t&1&&(i(0,"div",13),b(1,yn,16,14,"div",21,xn),o()),t&2){let e=p();l(),P(e.ps_DS.searchResults_$())}}var $e=(()=>{class t{ps_DS=v(g);handleSearch(){this.ps_DS.search({query:this.ps_DS.searchQuery_$()})}handleResultClick(e){this.ps_DS.navigateToSearchResult({result:e})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-search-panel"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],decls:18,vars:7,consts:[[1,"flex","items-center","gap-2","px-3","py-2","border-b","border-neonDefault/20","shrink-0"],["type","text","placeholder","Semantic search...",1,"flex-1","bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-1","text-xs","text-neutral-300","focus:outline-none","focus:border-neonGreen/60","placeholder:text-neutral-600",3,"input","keydown.enter","value"],[1,"px-3","py-1","text-xs","border","rounded","transition-colors","shrink-0",3,"click","disabled"],[1,"inline-flex","items-center","gap-1"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/20","shrink-0"],[1,"bg-ccapBg","border","border-neonDefault/40","rounded","px-2","py-0.5","text-[10px]","text-neutral-400",3,"change","value"],["value","cosine"],["value","euclidean"],["value","dot-product"],[1,"flex-1","overflow-y-auto","min-h-0","p-3"],[1,"flex","items-center","justify-center","h-full","text-neutral-600"],[1,"flex","items-center","justify-center","h-full","text-neutral-600","text-sm"],[1,"flex","flex-col","items-center","justify-center","h-full","text-neutral-600"],[1,"space-y-2"],[1,"w-1.5","h-1.5","rounded-full","bg-neonGreen","animate-pulse"],[1,"inline-flex","items-center","gap-2","text-sm"],[1,"w-2","h-2","rounded-full","bg-neonGreen","animate-pulse"],["viewBox","0 0 24 24","fill","none","stroke","currentColor","stroke-width","1",1,"w-12","h-12","mb-3","text-neutral-700"],["cx","11","cy","11","r","8"],["x1","21","y1","21","x2","16.65","y2","16.65"],[1,"text-sm"],[1,"rounded","border","border-neonDefault/20","hover:border-neonGreen/40","bg-ccapSurface","hover:bg-neonGreen/3","transition-all","cursor-pointer"],[1,"rounded","border","border-neonDefault/20","hover:border-neonGreen/40","bg-ccapSurface","hover:bg-neonGreen/3","transition-all","cursor-pointer",3,"click"],[1,"flex","items-center","gap-2","px-3","py-1.5","border-b","border-neonDefault/10"],[1,"text-[10px]","font-mono","px-1.5","py-0.5","rounded-full","shrink-0"],[1,"text-xs","text-neutral-400","truncate",3,"title"],[1,"text-[10px]","text-neutral-600","shrink-0","ml-auto"],[1,"flex","items-center","gap-1.5","px-3","py-1"],[1,"text-[10px]","px-1.5","py-0.5","rounded-full","bg-neonCyan/10","text-neonCyan"],[1,"text-[10px]","text-neutral-500"],[1,"text-[10px]","text-neutral-600"],[1,"text-[10px]","text-neutral-600","ml-auto"],[1,"px-3","py-2","text-[11px]","text-neutral-400","font-mono","whitespace-pre-wrap","break-words","max-h-[120px]","overflow-y-auto","leading-relaxed"]],template:function(n,r){n&1&&(i(0,"div",0)(1,"input",1),S("input",function(f){return r.ps_DS.searchQuery_$.set(f.target.value)})("keydown.enter",function(){return r.handleSearch()}),o(),i(2,"button",2),S("click",function(){return r.handleSearch()}),_(3,Sn,3,0,"span",3)(4,Cn,1,0),o()(),i(5,"div",4)(6,"select",5),S("change",function(f){return r.ps_DS.searchMetric_$.set(f.target.value)}),i(7,"option",6),s(8,"Cosine"),o(),i(9,"option",7),s(10,"Euclidean"),o(),i(11,"option",8),s(12,"Dot Product"),o()()(),i(13,"div",9),_(14,vn,4,0,"div",10)(15,gn,2,0,"div",11)(16,In,6,0,"div",12)(17,En,3,0,"div",13),o()),n&2&&(l(),C("value",r.ps_DS.searchQuery_$()),l(),k(r.ps_DS.isSearching_$()?"border-neonGreen/50 text-neonGreen bg-neonGreen/10 opacity-50":"border-neonGreen/30 text-neonGreen hover:bg-neonGreen/10"),C("disabled",r.ps_DS.isSearching_$()||!r.ps_DS.searchQuery_$()),l(),c(r.ps_DS.isSearching_$()?3:4),l(3),C("value",r.ps_DS.searchMetric_$()),l(8),c(r.ps_DS.isSearching_$()?14:!r.ps_DS.searchResults_$().length&&r.ps_DS.searchQuery_$()?15:r.ps_DS.searchResults_$().length?17:16))},dependencies:[B,L,ee],encapsulation:2})}return t})();function Dn(t,a){t&1&&m(0,"app-ps-search-panel")}function wn(t,a){t&1&&m(0,"app-ps-chunk-viewer")}var ji=(()=>{class t{projectId;ps_DS=v(g);fileTreeWidth_$=u(260);infoPanelWidth_$=u(300);isResizing_$=u(!1);ngOnInit(){this.fileTreeWidth_$.set(Math.max(160,Math.min(500,T.loadPanelWidth("fileTree",260)))),this.infoPanelWidth_$.set(Math.max(200,Math.min(550,T.loadPanelWidth("infoPanel",300)))),this.ps_DS.restoreFromStorage(),this.projectId?(this.ps_DS.isEmbedded_$.set(!0),this.ps_DS.selectProject({projectId:this.projectId})):(this.ps_DS.isEmbedded_$.set(!1),this.ps_DS.loadProjects().then(()=>{let e=T.loadSelectedProjectId();e&&this.ps_DS.projects_$().some(n=>n.id===e)&&this.ps_DS.selectProject({projectId:e})}))}ngOnChanges(e){if(e.projectId&&!e.projectId.firstChange){let n=e.projectId.currentValue;n&&this.ps_DS.selectProject({projectId:n})}}handleFileTreeResizeStart(e){let n=this.fileTreeWidth_$(),r=e.clientX;this.isResizing_$.set(!0),ne.attachUntilPointerUp({startEvent:e,onMove:d=>{let f=d.clientX-r,$=Math.max(160,Math.min(500,n+f));this.fileTreeWidth_$.set($)},onEnd:()=>{this.isResizing_$.set(!1),T.savePanelWidth("fileTree",this.fileTreeWidth_$())}})}handleInfoPanelResizeStart(e){let n=this.infoPanelWidth_$(),r=e.clientX;this.isResizing_$.set(!0),ne.attachUntilPointerUp({startEvent:e,onMove:d=>{let f=r-d.clientX,$=Math.max(200,Math.min(550,n+f));this.infoPanelWidth_$.set($)},onEnd:()=>{this.isResizing_$.set(!1),T.savePanelWidth("infoPanel",this.infoPanelWidth_$())}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=y({type:t,selectors:[["app-ps-ide-shell"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],inputs:{projectId:"projectId"},features:[re],decls:12,vars:8,consts:[[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],[3,"startResizeStart","endResizeStart","isStartOpen","isEndOpen","startWidthPx","endWidthPx","isResizing"],["sDetailColumnStart",""],["sDetailColumnMain","",1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],["sDetailColumnEnd",""]],template:function(n,r){n&1&&(i(0,"div",0),m(1,"app-ps-ide-toolbar"),i(2,"app-s-session-detail-three-column-layout",1),S("startResizeStart",function(f){return r.handleFileTreeResizeStart(f)})("endResizeStart",function(f){return r.handleInfoPanelResizeStart(f)}),i(3,"div",2),m(4,"app-ps-file-tree"),o(),i(5,"div",3),m(6,"app-ps-tab-bar"),_(7,Dn,1,0,"app-ps-search-panel")(8,wn,1,0,"app-ps-chunk-viewer"),o(),i(9,"div",4),m(10,"app-ps-info-panel"),o()(),m(11,"app-ps-status-bar"),o()),n&2&&(O("select-none",r.isResizing_$()),l(2),C("isStartOpen",r.ps_DS.isFileTreeOpen_$())("isEndOpen",r.ps_DS.isInfoPanelOpen_$())("startWidthPx",r.fileTreeWidth_$())("endWidthPx",r.infoPanelWidth_$())("isResizing",r.isResizing_$()),l(5),c(r.ps_DS.isSearchPanelOpen_$()?7:8))},dependencies:[ue,Se,ve,ge,Ie,Pe,Te,$e],encapsulation:2})}return t})();var oo=(()=>{class t{static \u0275fac=function(n){return new(n||t)};static \u0275mod=oe({type:t});static \u0275inj=ie({providers:[g],imports:[ae,ce,de,fe]})}return t})();export{ji as a,oo as b};
2
+ //# sourceMappingURL=chunk-ZPJ6KYMA.js.map
@@ -0,0 +1,3 @@
1
+ import{a as Oe}from"./chunk-G5SK3OBM.js";import{a as Ve}from"./chunk-Q2PKIGLB.js";import{a as we}from"./chunk-E3JXFFHE.js";import{a as Ie,b as X}from"./chunk-IUAZJ3PT.js";import"./chunk-OYB7GU43.js";import{g as Re}from"./chunk-2ATSF4KC.js";import"./chunk-3HJWN4W6.js";import"./chunk-7JUIBZEE.js";import{a as Pe,b as Ee,c as q}from"./chunk-C7XPBJTG.js";import{b as te,f as ke,g as Ae}from"./chunk-EVMDNGBK.js";import"./chunk-WPHEQXWB.js";import{b as Me}from"./chunk-IFYHOOVA.js";import"./chunk-QUEYZI42.js";import"./chunk-R2IBKJ4K.js";import"./chunk-Z5FUR5ZW.js";import"./chunk-Q2NVIOCY.js";import{a as De}from"./chunk-4H3E32UH.js";import{a as ee}from"./chunk-J32YRK3S.js";import"./chunk-LPNQ5PRN.js";import"./chunk-AMROWQBM.js";import"./chunk-NNUHTCXG.js";import"./chunk-V3VQWJQL.js";import"./chunk-F6VMAVI5.js";import"./chunk-TWK7BOB7.js";import"./chunk-ZBTWQZNB.js";import"./chunk-FLAJXIYW.js";import{b as ve,c as N,f as W,i as B,n as z,o as j,p as H,v as Se}from"./chunk-EO4DNTT4.js";import{k as Te}from"./chunk-4LCJ4GNK.js";import{a as V}from"./chunk-5UPNU54P.js";import{j as ye}from"./chunk-PVSQ5ZEZ.js";import{I as $e}from"./chunk-Y6V4NGLU.js";import{Aa as he,Ba as me,C as x,D as I,E as se,Eb as xe,Fa as _,Fb as ge,Ga as k,Gb as F,J as m,K as u,Kb as be,L as le,M as de,Z as d,aa as l,ca as ce,da as M,ga as f,ha as _e,hb as b,ia as R,jb as ue,k as C,la as y,na as P,oa as S,p as v,pa as $,q as re,qa as r,ra as s,sa as w,ua as E,ub as fe,va as h,wa as c,xb as Ce,y as U,z as ae,za as pe}from"./chunk-TBMJSIBB.js";var Q="ccap-consultant",T=class{static savePanelOpen(a,e){V.writeBoolean(`${Q}:panelOpen:${a}`,e)}static loadPanelOpen(a,e){return V.readBoolean(`${Q}:panelOpen:${a}`,e)}static savePanelWidth(a,e){V.writeNumber(`${Q}:panelWidth:${a}`,e)}static loadPanelWidth(a,e){return V.readNumber(`${Q}:panelWidth:${a}`,e)}};var Le=(()=>{class i{baseUrl=`${$e.api.baseUrl}/consultant`;http=x(Ce);listThreads(){return v(this.http.get(this.baseUrl))}getPickerOptions(){return v(this.http.get(`${this.baseUrl}/picker-options`))}createThread(e){return v(this.http.post(this.baseUrl,e))}getThread(e){return v(this.http.get(`${this.baseUrl}/${encodeURIComponent(e)}`))}patchThread(e){let t={};return e.label!=null&&(t.label=e.label),e.providerInstanceId!=null&&(t.providerInstanceId=e.providerInstanceId),e.model!=null&&(t.model=e.model),v(this.http.patch(`${this.baseUrl}/${encodeURIComponent(e.threadId)}`,t))}deleteThread(e){return v(this.http.delete(`${this.baseUrl}/${encodeURIComponent(e)}`))}postMessage(e){return v(this.http.post(`${this.baseUrl}/${encodeURIComponent(e.threadId)}/messages`,{text:e.text,allowWebSearch:e.allowWebSearch,attachments:e.attachments}))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=U({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var G=(()=>{class i{consultant_AS=x(Le);globalError_CS=x(ye);threads_$=l([]);threadsLoading_$=l(!1);threadsError_$=l(null);selectedThread_$=l(null);selectedThreadLoading_$=l(!1);selectedThreadError_$=l(null);sending_$=l(!1);activeThreadId_$=l("");defaults_$=l({providerInstanceId:"",model:""});pickerOptions_$=l([]);pickerOptionsLoading_$=l(!1);loadPickerOptions(){return C(this,null,function*(){this.pickerOptionsLoading_$.set(!0);try{let e=yield this.consultant_AS.getPickerOptions(),t=Array.isArray(e.entries)?e.entries.map(i.parseRegistryEntry).filter(n=>n!==null):[];this.pickerOptions_$.set(t),this.defaults_$.set({providerInstanceId:typeof e.defaults?.providerInstanceId=="string"?e.defaults.providerInstanceId:"",model:typeof e.defaults?.model=="string"?e.defaults.model:""})}catch(e){this.globalError_CS.showError(e,"Consultant_DataService.loadPickerOptions")}finally{this.pickerOptionsLoading_$.set(!1)}})}loadThreads(){return C(this,null,function*(){this.threadsLoading_$.set(!0),this.threadsError_$.set(null);try{let e=yield this.consultant_AS.listThreads(),n=(Array.isArray(e.threads)?e.threads:[]).map(o=>({threadId:typeof o.threadId=="string"?o.threadId:"",label:typeof o.label=="string"?o.label:"",providerInstanceId:typeof o.providerInstanceId=="string"?o.providerInstanceId:"",model:typeof o.model=="string"?o.model:"",messageCount:typeof o.messageCount=="number"?o.messageCount:0,updatedAt:typeof o.updatedAt=="string"?o.updatedAt:""}));this.threads_$.set(n)}catch(e){this.threadsError_$.set(e),this.globalError_CS.showError(e,"Consultant_DataService.loadThreads")}finally{this.threadsLoading_$.set(!1)}})}loadThreadDetail(e){return C(this,null,function*(){this.activeThreadId_$.set(e),this.selectedThreadLoading_$.set(!0),this.selectedThreadError_$.set(null);try{let t=yield this.consultant_AS.getThread(e),n=i.parseThreadDetail(t.thread);this.selectedThread_$.set(n)}catch(t){this.selectedThreadError_$.set(t),this.globalError_CS.showError(t,"Consultant_DataService.loadThreadDetail")}finally{this.selectedThreadLoading_$.set(!1)}})}sendMessage(e){return C(this,null,function*(){this.sending_$.set(!0);try{let n=(yield this.consultant_AS.postMessage(e)).thread;if(i.isPlainRecord(n)){let o=i.parseThreadDetail(n);this.selectedThread_$.set(o)}yield this.loadThreads()}catch(t){throw this.globalError_CS.showError(t,"Consultant_DataService.sendMessage"),t}finally{this.sending_$.set(!1)}})}updateThreadConfig(e){return C(this,null,function*(){try{let t=yield this.consultant_AS.patchThread(e),n=i.parseThreadDetail(t.thread);this.selectedThread_$.set(n),yield this.loadThreads()}catch(t){throw this.globalError_CS.showError(t,"Consultant_DataService.updateThreadConfig"),t}})}createThread(e){return C(this,null,function*(){try{let n=(yield this.consultant_AS.createThread(e)).thread.threadId,o=typeof n=="string"?n:"";return yield this.loadThreads(),o}catch(t){throw this.globalError_CS.showError(t,"Consultant_DataService.createThread"),t}})}deleteThread(e){return C(this,null,function*(){try{yield this.consultant_AS.deleteThread(e),this.activeThreadId_$()===e&&(this.selectedThread_$.set(null),this.activeThreadId_$.set("")),yield this.loadThreads()}catch(t){throw this.globalError_CS.showError(t,"Consultant_DataService.deleteThread"),t}})}static parseThreadDetail(e){let t=typeof e.threadId=="string"?e.threadId:"";if(!t.length)return null;let n=e.messages,o=[];if(Array.isArray(n))for(let p of n){if(!i.isPlainRecord(p))continue;let A=typeof p.id=="string"?p.id:"",Y=p.role;if(Y!=="user"&&Y!=="assistant")continue;let L={id:A,role:Y};typeof p.rawUserText=="string"&&(L.rawUserText=p.rawUserText),typeof p.content=="string"&&(L.content=p.content);let ie=p.userParts;if(Array.isArray(ie)){let oe=[];for(let D of ie){if(!i.isPlainRecord(D))continue;let J=D.type;if(J!=="text"&&J!=="image_url")continue;let Z={type:J};typeof D.text=="string"&&(Z.text=D.text),typeof D.imageUrl=="string"&&(Z.imageUrl=D.imageUrl),oe.push(Z)}L.userParts=oe}o.push(L)}return{threadId:t,label:typeof e.label=="string"?e.label:"",providerInstanceId:typeof e.providerInstanceId=="string"?e.providerInstanceId:"",model:typeof e.model=="string"?e.model:"",messages:o,updatedAt:typeof e.updatedAt=="string"?e.updatedAt:""}}static isPlainRecord(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}static parseRegistryEntry(e){if(!i.isPlainRecord(e))return null;let t=typeof e.provider=="string"?e.provider:"",n=typeof e.modelName=="string"?e.modelName:"";if(!t.length||!n.length)return null;let o=e.capabilities,p=Array.isArray(o)?o.filter(A=>typeof A=="string"):void 0;return{id:typeof e.id=="string"?e.id:"",provider:t,modelName:n,enabled:e.enabled===!0,capabilities:p}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=U({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var g=class{static collectSortedProviders(a){let e=new Set;for(let t of a){let n=t.provider.trim();n.length>0&&e.add(n)}return[...e].sort()}static collectSortedModelsForProvider(a,e){let t=e.trim();if(!t.length)return[];let n=[];for(let o of a){let p=o.modelName.trim();o.provider===t&&p.length>0&&n.push(p)}return[...new Set(n)].sort()}};var je=(i,a)=>a.id;function He(i,a){i&1&&(r(0,"div",5),_(1,"Loading..."),s())}function Xe(i,a){if(i&1){let e=E();r(0,"app-s-session-info-card",9),h("selected",function(n){m(e);let o=c(2);return u(o.handleSelectThread(n))})("contextMenu",function(n){m(e);let o=c(2);return u(o.handleRowContextMenu(n))}),s()}if(i&2){let e=a.$implicit,t=c(2);f("view",e)("isActive",t.consultant_DS.activeThreadId_$()===e.id)}}function qe(i,a){if(i&1&&S(0,Xe,1,2,"app-s-session-info-card",8,je),i&2){let e=c();$(e.threadRowViews_$())}}function Qe(i,a){i&1&&(r(0,"div",6),_(1,"No threads"),s())}function Ge(i,a){if(i&1&&(r(0,"option",16),_(1),s()),i&2){let e=a.$implicit,t=c(2);f("value",e),d(),k(t.providerDisplayLabelsMap_$()[e]||e)}}function Ke(i,a){if(i&1&&(r(0,"option",16),_(1),s()),i&2){let e=a.$implicit;f("value",e),d(),k(e)}}function Ye(i,a){if(i&1){let e=E();r(0,"div",10),h("click",function(){m(e);let n=c();return u(n.handleCloseCreate())}),r(1,"div",11),h("click",function(n){return m(e),u(n.stopPropagation())}),r(2,"h3",12),_(3,"New consultant thread"),s(),r(4,"div",13)(5,"label",14),_(6,"Label (optional)"),s(),r(7,"input",15),h("ngModelChange",function(n){m(e);let o=c();return u(o.newLabel_$.set(n))}),s(),r(8,"label",14),_(9,"Provider"),s(),r(10,"select",15),h("ngModelChange",function(n){m(e);let o=c();return u(o.handleProviderChange(n))}),S(11,Ge,2,2,"option",16,P),s(),r(13,"label",14),_(14,"Model"),s(),r(15,"select",15),h("ngModelChange",function(n){m(e);let o=c();return u(o.newModel_$.set(n))}),S(16,Ke,2,2,"option",16,P),s()(),r(18,"div",17)(19,"button",18),h("click",function(){m(e);let n=c();return u(n.handleCloseCreate())}),_(20," Cancel "),s(),r(21,"button",19),h("click",function(){m(e);let n=c();return u(n.handleCreateThread())}),_(22," Create "),s()()()()}if(i&2){let e=c();d(7),f("ngModel",e.newLabel_$()),d(3),f("ngModel",e.newProvider_$()),d(),$(e.providerOptions_$()),d(4),f("ngModel",e.newModel_$()),d(),$(e.modelsForNewProvider_$()),d(5),f("disabled",e.isCreating_$()||!e.newProvider_$().trim()||!e.newModel_$().trim())}}function Je(i,a){if(i&1){let e=E();r(0,"div",20),h("click",function(){m(e);let n=c();return u(n.handleCloseCtxMenu())}),s(),r(1,"div",21)(2,"button",22),h("click",function(){m(e);let n=c();return u(n.handleCtxDelete())}),_(3," Delete "),s()()}if(i&2){let e=c();d(),_e("left",e.ctxMenuPos_$().x,"px")("top",e.ctxMenuPos_$().y,"px")}}var Ue=(()=>{class i{consultant_DS=x(G);router=x(F);modelRegistry_DS=x(De);isCreateOpen_$=l(!1);newLabel_$=l("");newProvider_$=l("");newModel_$=l("");isCreating_$=l(!1);providerOptions_$=b(()=>g.collectSortedProviders(this.consultant_DS.pickerOptions_$()));modelsForNewProvider_$=b(()=>g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),this.newProvider_$()));providerDisplayLabelsMap_$=b(()=>{let e=this.modelRegistry_DS.setupConfigForRegistry_$(),t=this.providerOptions_$(),n={};for(let o of t)n[o]==null&&(n[o]=ee.getProviderDisplayLabel(o,e));return n});threadProviderDisplayLabels_$=b(()=>{let e=this.modelRegistry_DS.setupConfigForRegistry_$(),t=new Set;for(let o of this.consultant_DS.threads_$()){let p=o.providerInstanceId.trim();p.length>0&&t.add(p)}for(let o of this.providerOptions_$())t.add(o);let n={};for(let o of t)n[o]=ee.getProviderDisplayLabel(o,e);return n});threadRowViews_$=b(()=>this.consultant_DS.threads_$().map(e=>({id:e.threadId,label:e.label||e.threadId,status:"",statusColorClass:"bg-neutral-600",isArchived:!1,lastActivityAt:e.updatedAt,isRunning:!1})));ctxMenuThread_$=l(null);ctxMenuPos_$=l({x:0,y:0});ngOnInit(){this.consultant_DS.loadThreads(),this.consultant_DS.loadPickerOptions(),this.modelRegistry_DS.loadSetupConfigForRegistry()}handleSelectThread(e){this.router.navigate(["/consultant",e])}handleOpenCreate(){return C(this,null,function*(){yield this.consultant_DS.loadPickerOptions();let e=this.consultant_DS.defaults_$(),t=this.providerOptions_$();if(e.providerInstanceId.length>0&&t.includes(e.providerInstanceId)){let n=g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),e.providerInstanceId);e.model.length>0&&n.includes(e.model)?(this.newProvider_$.set(e.providerInstanceId),this.newModel_$.set(e.model)):(this.newProvider_$.set(e.providerInstanceId),this.newModel_$.set(n[0]??""))}else{let n=t[0]??"";this.newProvider_$.set(n);let o=g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),n);this.newModel_$.set(o[0]??"")}this.newLabel_$.set(""),this.isCreateOpen_$.set(!0)})}handleCloseCreate(){this.isCreateOpen_$.set(!1)}handleProviderChange(e){this.newProvider_$.set(e);let t=g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),e);this.newModel_$.set(t[0]??"")}handleCreateThread(){return C(this,null,function*(){let e=this.newProvider_$().trim(),t=this.newModel_$().trim();if(!(!e.length||!t.length)){this.isCreating_$.set(!0);try{let n=this.newLabel_$().trim(),o=yield this.consultant_DS.createThread({label:n.length>0?n:void 0,providerInstanceId:e,model:t});this.isCreateOpen_$.set(!1),o.length>0&&this.router.navigate(["/consultant",o])}finally{this.isCreating_$.set(!1)}}})}handleRowContextMenu(e){let t=this.consultant_DS.threads_$().find(n=>n.threadId===e.id);t&&(this.ctxMenuThread_$.set(t),this.ctxMenuPos_$.set({x:e.event.clientX,y:e.event.clientY}))}handleCloseCtxMenu(){this.ctxMenuThread_$.set(null)}handleCtxDelete(){return C(this,null,function*(){let e=this.ctxMenuThread_$();if(e){this.handleCloseCtxMenu();try{yield this.consultant_DS.deleteThread(e.threadId),this.router.navigate(["/consultant"])}catch{}}})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=I({type:i,selectors:[["app-ccap-consultant-dashboard"]],hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],decls:12,vars:3,consts:[[1,"flex","flex-col","flex-1","min-h-0"],[1,"shrink-0","p-2","border-b","border-neonDefault","flex","items-center","gap-2"],[1,"text-xs","font-semibold","text-neutral-300","flex-1","truncate"],["type","button",1,"px-2","py-1","text-xs","border","border-neonDefault","text-neutral-300","hover:bg-neutral-700","rounded","transition-colors",3,"click"],[1,"flex-1","overflow-y-auto"],[1,"p-3","text-xs","text-neutral-500"],[1,"p-4","text-center","text-neutral-500","text-xs"],[1,"fixed","inset-0","z-40","flex","items-center","justify-center","bg-black/60","p-4"],[3,"view","isActive"],[3,"selected","contextMenu","view","isActive"],[1,"fixed","inset-0","z-40","flex","items-center","justify-center","bg-black/60","p-4",3,"click"],[1,"w-full","max-w-md","rounded-lg","border","border-neonDefault","bg-neutral-900","p-4","shadow-xl",3,"click"],[1,"text-sm","font-semibold","text-neutral-200","mb-3"],[1,"flex","flex-col","gap-2","text-xs"],[1,"text-neutral-400"],[1,"w-full","px-2","py-1","rounded","bg-neutral-800","border","border-neutral-600","text-neutral-200",3,"ngModelChange","ngModel"],[3,"value"],[1,"flex","justify-end","gap-2","mt-4"],["type","button",1,"px-2","py-1","text-xs","border","border-neutral-600","text-neutral-400","rounded",3,"click"],["type","button",1,"px-2","py-1","text-xs","border","border-neonDefault","text-neutral-200","rounded","disabled:opacity-40",3,"click","disabled"],[1,"fixed","inset-0","z-40",3,"click"],[1,"fixed","z-50","min-w-[140px]","bg-neutral-900","border","border-neutral-700","rounded-lg","shadow-xl","py-1","text-xs"],[1,"w-full","text-left","px-3","py-1.5","text-red-400","hover:bg-red-500/10","transition-colors",3,"click"]],template:function(t,n){if(t&1&&(r(0,"div",0)(1,"div",1)(2,"span",2),_(3,"Consultant"),s(),r(4,"button",3),h("click",function(){return n.handleOpenCreate()}),_(5," + New "),s()(),r(6,"div",4),M(7,He,2,0,"div",5)(8,qe,2,0)(9,Qe,2,0,"div",6),s()(),M(10,Ye,23,4,"div",7)(11,Je,4,4)),t&2){let o;d(7),y(n.consultant_DS.threadsLoading_$()?7:n.threadRowViews_$().length?8:9),d(3),y(n.isCreateOpen_$()?10:-1),d(),y((o=n.ctxMenuThread_$())?11:-1,o)}},dependencies:[j,H,N,z,W,B,Me],encapsulation:2})}return i})();var Be=(()=>{class i{sidebarWidth_$=l(320);isSidebarOpen_$=l(!0);isResizing_$=l(!1);ngOnInit(){let e=T.loadPanelWidth("sidebar",320);this.sidebarWidth_$.set(Math.max(200,Math.min(600,e))),this.isSidebarOpen_$.set(T.loadPanelOpen("sidebar",!0))}handleSidebarResizeStart(e){let t=e.clientX,n=this.sidebarWidth_$();this.isResizing_$.set(!0),Ve.attachUntilPointerUp({startEvent:e,onMove:o=>{let p=o.clientX-t,A=Math.max(200,Math.min(600,n+p));this.sidebarWidth_$.set(A)},onEnd:()=>{this.isResizing_$.set(!1),T.savePanelWidth("sidebar",this.sidebarWidth_$())}})}handleToggleSidebar(){this.isSidebarOpen_$.update(e=>!e),T.savePanelOpen("sidebar",this.isSidebarOpen_$())}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=I({type:i,selectors:[["app-ccap-consultant-shell"]],hostAttrs:[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],decls:14,vars:9,consts:[[1,"flex","min-h-0","w-full","flex-1","flex-col","overflow-hidden"],["sSessionToolbarLeft","",1,"flex","items-center","gap-1","min-w-0"],["type","button",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"],["sSessionToolbarCenter","",1,"min-w-0"],["sSessionToolbarRight","",1,"min-w-0"],[3,"sidebarResizeStart","isSidebarOpen","sidebarWidthPx","isResizing"],["sSessionShellSidebar","",1,"flex","flex-col","overflow-hidden","h-full"],["sSessionShellMain","",1,"flex","min-h-0","flex-1","flex-col","overflow-hidden","[&>router-outlet]:contents"]],template:function(t,n){t&1&&(r(0,"div",0)(1,"app-s-session-shell-toolbar")(2,"div",1)(3,"button",2),h("click",function(){return n.handleToggleSidebar()}),le(),r(4,"svg",3),w(5,"polyline",4),s(),_(6," Consultant "),s()(),de(),w(7,"div",5)(8,"div",6),s(),r(9,"app-s-resizable-session-shell-layout",7),h("sidebarResizeStart",function(p){return n.handleSidebarResizeStart(p)}),r(10,"div",8),w(11,"app-ccap-consultant-dashboard"),s(),r(12,"div",9),w(13,"router-outlet"),s()()()),t&2&&(R("select-none",n.isResizing_$()),d(4),R("rotate-90",n.isSidebarOpen_$())("-rotate-90",!n.isSidebarOpen_$()),d(5),f("isSidebarOpen",n.isSidebarOpen_$())("sidebarWidthPx",n.sidebarWidth_$())("isResizing",n.isResizing_$()))},dependencies:[ge,Pe,Ee,Ue],encapsulation:2})}return i})();var K=class i{static fromMessage(a){let e=a.role==="user",t=e?i.buildUserBodyText(a):a.content??"";return{listKey:a.id,kind:e?te.userPrompt:te.assistant,bodyText:t,isUserAligned:e,flags:{showCopy:!0,showRawInfo:!1,useEditDiffForExpandable:!1}}}static buildUserBodyText(a){let e=(a.rawUserText??"").trim();return(a.userParts?.length??0)>1?e.length>0?`${e}
2
+ [attachments]`:"[attachments]":e.length>0?e:a.content??""}};var et=(i,a)=>a.listKey;function tt(i,a){i&1&&(r(0,"div",0),_(1," Select a thread or create a new consultant chat. "),s())}function nt(i,a){i&1&&(r(0,"div",1),_(1,"Loading\u2026"),s())}function it(i,a){if(i&1&&(r(0,"option",8),_(1),s()),i&2){let e=a.$implicit;f("value",e),d(),k(e)}}function ot(i,a){if(i&1&&(r(0,"option",8),_(1),s()),i&2){let e=a.$implicit;f("value",e),d(),k(e)}}function rt(i,a){if(i&1&&(r(0,"div",18),w(1,"app-s-agent-console-message-bubble",19),s()),i&2){let e=a.$implicit;R("self-end",e.isUserAligned===!0)("self-start",e.isUserAligned!==!0),d(),f("view",e)}}function at(i,a){if(i&1){let e=E();r(0,"app-s-session-chat-column-layout")(1,"div",2)(2,"div",3)(3,"div",4)(4,"span",5),_(5,"Label"),s(),r(6,"input",6),h("ngModelChange",function(n){m(e);let o=c(2);return u(o.localLabel_$.set(n))}),s()(),r(7,"div",4)(8,"span",5),_(9,"Provider"),s(),r(10,"select",7),h("ngModelChange",function(n){m(e);let o=c(2);return u(o.handleProviderChange(n))}),S(11,it,2,2,"option",8,P),s()(),r(13,"div",4)(14,"span",5),_(15,"Model"),s(),r(16,"select",6),h("ngModelChange",function(n){m(e);let o=c(2);return u(o.localModel_$.set(n))}),S(17,ot,2,2,"option",8,P),s()(),r(19,"button",9),h("click",function(){m(e);let n=c(2);return u(n.handleApplyConfig())}),_(20," Apply "),s(),r(21,"button",10),h("click",function(){m(e);let n=c(2);return u(n.handleDeleteThread())}),_(22," Delete "),s()()(),r(23,"div",11),S(24,rt,2,5,"div",12,et),s(),r(26,"div",13)(27,"label",14)(28,"input",15),h("ngModelChange",function(n){m(e);let o=c(2);return u(o.allowWebSearch_$.set(n))}),s(),_(29," Allow web search (Brave) "),s(),r(30,"app-s-session-input",16),h("draftTextChange",function(n){m(e);let o=c(2);return u(o.composerText_$.set(n))})("sendRequested",function(){m(e);let n=c(2);return u(n.handleSend())})("attachmentsChanged",function(n){m(e);let o=c(2);return u(o.handleAttachmentsChanged(n))}),r(31,"app-ccap-voice-record-button",17),h("transcriptSegmentReady",function(n){m(e);let o=c(2);return u(o.handleVoiceSegment(n))}),s()()()()}if(i&2){let e=c(2);d(6),f("ngModel",e.localLabel_$()),d(4),f("ngModel",e.localProvider_$()),d(),$(e.providerOptions_$()),d(5),f("ngModel",e.localModel_$()),d(),$(e.modelsForSelectedProvider_$()),d(7),$(e.consultantBubbleViews_$()),d(4),f("ngModel",e.allowWebSearch_$()),d(2),f("draftText",e.composerText_$())("isSending",e.consultant_DS.sending_$())("enableAttachments",!0)("textareaRows",3),d(),f("compactLayout",!0)}}function st(i,a){i&1&&(r(0,"div",0),_(1," Thread not loaded. "),s())}function lt(i,a){if(i&1&&M(0,at,32,9,"app-s-session-chat-column-layout")(1,st,2,0,"div",0),i&2){let e=c();y(e.consultant_DS.selectedThread_$()?0:1)}}var ne=(()=>{class i extends we{consultant_DS=x(G);route=x(xe);router=x(F);voiceInputUi_DS=x(Ie);sessionInputRef;composerText_$=l("");allowWebSearch_$=l(!1);localLabel_$=l("");localProvider_$=l("");localModel_$=l("");providerOptions_$=b(()=>g.collectSortedProviders(this.consultant_DS.pickerOptions_$()));modelsForSelectedProvider_$=b(()=>g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),this.localProvider_$()));consultantBubbleViews_$=b(()=>{let e=this.consultant_DS.selectedThread_$();return e?e.messages.map(t=>K.fromMessage(t)):[]});pendingAttachments=[];constructor(){super(),this.addSubscription(this.route.paramMap.pipe(re(e=>e.get("threadId")??"")).subscribe(e=>{e.length>0?this.consultant_DS.loadThreadDetail(e):(this.consultant_DS.selectedThread_$.set(null),this.consultant_DS.activeThreadId_$.set(""))})),ue(()=>{let e=this.consultant_DS.selectedThread_$();e!=null&&(this.localLabel_$.set(e.label),this.localProvider_$.set(e.providerInstanceId),this.localModel_$.set(e.model))},{allowSignalWrites:!0}),this.consultant_DS.loadPickerOptions()}ngOnDestroy(){super.ngOnDestroy()}handleProviderChange(e){this.localProvider_$.set(e);let t=g.collectSortedModelsForProvider(this.consultant_DS.pickerOptions_$(),e),n=this.localModel_$();t.includes(n)||this.localModel_$.set(t[0]??"")}handleApplyConfig(){return C(this,null,function*(){let e=this.consultant_DS.activeThreadId_$();e.length&&(yield this.consultant_DS.updateThreadConfig({threadId:e,label:this.localLabel_$(),providerInstanceId:this.localProvider_$(),model:this.localModel_$()}))})}handleDeleteThread(){return C(this,null,function*(){let e=this.consultant_DS.activeThreadId_$();e.length&&(yield this.consultant_DS.deleteThread(e),this.router.navigate(["/consultant"]))})}handleAttachmentsChanged(e){this.pendingAttachments=e}handleVoiceSegment(e){let t=this.composerText_$().trim(),n=Oe.deduplicateOverlap(t,e.text,e.overlapPrevMs).trim();n.length>0&&this.composerText_$.set(t.length>0?`${t} ${n}`:n),this.voiceInputUi_DS.autoSendAfterVoice_$()&&e.isFinal&&this.handleSend()}handleSend(){return C(this,null,function*(){let e=this.consultant_DS.activeThreadId_$();if(!e.length)return;let t=this.composerText_$().trim(),n=[...this.pendingAttachments];if(!t.length&&!n.length)return;let o=n.map(p=>({kind:p.isImage?"image":"textDocument",mimeType:p.mimeType,fileName:p.fileName,dataBase64:p.base64}));yield this.consultant_DS.sendMessage({threadId:e,text:t,allowWebSearch:this.allowWebSearch_$(),attachments:o}),this.composerText_$.set(""),this.pendingAttachments=[],this.sessionInputRef?.clearAttachments()})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=I({type:i,selectors:[["app-ccap-consultant-detail"]],viewQuery:function(t,n){if(t&1&&pe(q,5),t&2){let o;he(o=me())&&(n.sessionInputRef=o.first)}},hostAttrs:[1,"flex","flex-col","flex-1","min-h-0","overflow-hidden"],features:[ce],decls:3,vars:1,consts:[[1,"flex","flex-1","items-center","justify-center","p-4","text-xs","text-neutral-500"],[1,"flex","flex-1","items-center","justify-center","text-xs","text-neutral-500"],["sChatColumnHeader","",1,"flex","shrink-0","flex-col","gap-2","border-b","border-neonDefault","bg-ccapSurface","p-2"],[1,"flex","flex-wrap","items-end","gap-2"],[1,"flex","flex-col","gap-0.5"],[1,"text-[10px]","text-neutral-500"],[1,"w-40","rounded","border","border-neutral-600","bg-neutral-800","px-2","py-1","text-xs","text-neutral-200",3,"ngModelChange","ngModel"],[1,"w-36","rounded","border","border-neutral-600","bg-neutral-800","px-2","py-1","text-xs","text-neutral-200",3,"ngModelChange","ngModel"],[3,"value"],["type","button",1,"rounded","border","border-neonDefault","px-2","py-1","text-xs","text-neutral-300",3,"click"],["type","button",1,"ml-auto","rounded","border","border-red-900","px-2","py-1","text-xs","text-red-300",3,"click"],["sChatColumnScroll","",1,"flex","flex-col","gap-3","p-3"],[1,"max-w-[85%]",3,"self-end","self-start"],["sChatColumnComposer","",1,"flex","flex-col"],[1,"flex","cursor-pointer","items-center","gap-2","px-2","pt-1","text-[10px]","text-neutral-400"],["type","checkbox",3,"ngModelChange","ngModel"],["acceptedFileTypes","image/png,image/jpeg,image/webp,image/gif,.txt,.md,text/plain,text/markdown","placeholder","Message\u2026",3,"draftTextChange","sendRequested","attachmentsChanged","draftText","isSending","enableAttachments","textareaRows"],["sInputTextareaAccessory","",3,"transcriptSegmentReady","compactLayout"],[1,"max-w-[85%]"],[3,"view"]],template:function(t,n){t&1&&M(0,tt,2,0,"div",0)(1,nt,2,0,"div",1)(2,lt,2,1),t&2&&y(n.consultant_DS.activeThreadId_$()?n.consultant_DS.selectedThreadLoading_$()?1:2:0)},dependencies:[j,H,N,ve,z,W,B,X,q,ke,Ae],encapsulation:2})}return i})();var dt=[{path:"",component:Be,children:[{path:"",component:ne},{path:":threadId",component:ne}]}],bn=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=se({type:i});static \u0275inj=ae({imports:[fe,Se,be.forChild(dt),Te,X,Re]})}return i})();export{bn as Consultant_Module};
3
+ //# sourceMappingURL=consultant.module-UWXLFLDS.js.map