@futdevpro/ccap 1.1.2595 → 1.1.2598

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 (181) hide show
  1. package/client-dist/{agent-instances.module-TWPWKSOH.js → agent-instances.module-AHL76OC3.js} +2 -2
  2. package/client-dist/{ca.module-CUM7GMOC.js → ca.module-QTT64ILI.js} +2 -2
  3. package/client-dist/{cc.module-GYDW327B.js → cc.module-OMGSGHOD.js} +2 -2
  4. package/client-dist/{chunk-L3KT4OJM.js → chunk-3WKHCCFW.js} +2 -2
  5. package/client-dist/{chunk-FOECE6W3.js → chunk-4BE2B7WH.js} +2 -2
  6. package/client-dist/{chunk-NMSKEUZ4.js → chunk-53NYFJLY.js} +2 -2
  7. package/client-dist/{chunk-HHQI3DLR.js → chunk-64JB44FZ.js} +2 -2
  8. package/client-dist/{chunk-JI75WYQ4.js → chunk-6HPHF5RC.js} +2 -2
  9. package/client-dist/{chunk-YK6JIDE3.js → chunk-72HMFKGM.js} +2 -2
  10. package/client-dist/{chunk-XNZ5PN4L.js → chunk-7JK6S5F7.js} +2 -2
  11. package/client-dist/{chunk-7Y5EUJ7W.js → chunk-7YXOX4OA.js} +2 -2
  12. package/client-dist/{chunk-DQUAB65V.js → chunk-ADZTPYLS.js} +2 -2
  13. package/client-dist/{chunk-GDL3WDH5.js → chunk-B2XJDRXR.js} +2 -2
  14. package/client-dist/{chunk-GGWYZGZQ.js → chunk-B4GTZVLK.js} +2 -2
  15. package/client-dist/{chunk-IKOOWU4V.js → chunk-BSAIYSDK.js} +2 -2
  16. package/client-dist/{chunk-ZQ2JI7OA.js → chunk-CLMTZD47.js} +2 -2
  17. package/client-dist/{chunk-U6WJH5D3.js → chunk-CTYD3KKT.js} +2 -2
  18. package/client-dist/{chunk-LK4DKZBV.js → chunk-D22LORSI.js} +2 -2
  19. package/client-dist/{chunk-7FXJWMO4.js → chunk-DAJHW7U7.js} +2 -2
  20. package/client-dist/{chunk-QDJM2CPE.js → chunk-FGMBR6HP.js} +2 -2
  21. package/client-dist/{chunk-QKRZHBJP.js → chunk-GH5M3TTB.js} +2 -2
  22. package/client-dist/{chunk-GZTYEDRR.js → chunk-GQTRBGFA.js} +2 -2
  23. package/client-dist/{chunk-ZFM5LKS4.js → chunk-GSTSAXG3.js} +2 -2
  24. package/client-dist/{chunk-AYPTQ6OU.js → chunk-IESDFENC.js} +2 -2
  25. package/client-dist/{chunk-CN6MXOVR.js → chunk-IJRWX342.js} +2 -2
  26. package/client-dist/{chunk-H7YAD57H.js → chunk-IN3P5CCI.js} +2 -2
  27. package/client-dist/{chunk-3HTRATOL.js → chunk-JAZXW22Q.js} +2 -2
  28. package/client-dist/{chunk-W4TPTMEB.js → chunk-JC3MNMDV.js} +2 -2
  29. package/client-dist/{chunk-MHWXIGVP.js → chunk-JQXTJMHD.js} +2 -2
  30. package/client-dist/{chunk-BHENEPX4.js → chunk-KDOFP7K3.js} +2 -2
  31. package/client-dist/{chunk-NQOCY7PA.js → chunk-KQXWQZ2E.js} +2 -2
  32. package/client-dist/{chunk-HD22E3YT.js → chunk-KZJRGXZW.js} +2 -2
  33. package/client-dist/{chunk-CQYMS3RY.js → chunk-LIWUIPCY.js} +2 -2
  34. package/client-dist/{chunk-CQYMS3RY.js.map → chunk-LIWUIPCY.js.map} +1 -1
  35. package/client-dist/{chunk-LB6ZH65Z.js → chunk-LZRE7NSH.js} +2 -2
  36. package/client-dist/{chunk-IYVP6MOA.js → chunk-MJYVGLI7.js} +2 -2
  37. package/client-dist/{chunk-YEUFDVYR.js → chunk-MVLJBDAH.js} +2 -2
  38. package/client-dist/{chunk-EOV7J7CJ.js → chunk-NEHXBC2T.js} +2 -2
  39. package/client-dist/{chunk-U3XPK2SF.js → chunk-NEKDW47N.js} +2 -2
  40. package/client-dist/{chunk-W4NHRZ2U.js → chunk-NVXVSEK4.js} +2 -2
  41. package/client-dist/{chunk-7UTBQMMR.js → chunk-NWD3T5DE.js} +2 -2
  42. package/client-dist/{chunk-L2L6Y2DM.js → chunk-OSIR6RKV.js} +2 -2
  43. package/client-dist/{chunk-56OCQ46F.js → chunk-OUY7K6IW.js} +2 -2
  44. package/client-dist/{chunk-DQLKNMCX.js → chunk-RDS7JWHX.js} +2 -2
  45. package/client-dist/{chunk-2NNZ6UMG.js → chunk-RGJA6FGB.js} +2 -2
  46. package/client-dist/{chunk-W2JDURVY.js → chunk-RZVRG2F3.js} +2 -2
  47. package/client-dist/{chunk-SYKML45Q.js → chunk-SQ6AE52B.js} +2 -2
  48. package/client-dist/{chunk-URSVKJZY.js → chunk-TTTTOPGG.js} +2 -2
  49. package/client-dist/{chunk-R4VXMVUV.js → chunk-U4VIPQKR.js} +2 -2
  50. package/client-dist/{chunk-P2XZHWHQ.js → chunk-UA322OTA.js} +2 -2
  51. package/client-dist/{chunk-K7KUEXCT.js → chunk-UI7QXWOB.js} +2 -2
  52. package/client-dist/{chunk-CMWL6LFR.js → chunk-UMJTXY32.js} +2 -2
  53. package/client-dist/{chunk-HUPMWXEJ.js → chunk-V4BNZRME.js} +2 -2
  54. package/client-dist/{chunk-ISW7UBKH.js → chunk-VDCSGHFQ.js} +2 -2
  55. package/client-dist/{chunk-VBMNIBIY.js → chunk-W4O7J57Z.js} +2 -2
  56. package/client-dist/{chunk-6OOUY7EV.js → chunk-WE4SDMAR.js} +2 -2
  57. package/client-dist/{chunk-EW5BKDXP.js → chunk-WZS3NLV7.js} +2 -2
  58. package/client-dist/{chunk-GM2XG6IS.js → chunk-XFEGQDVS.js} +2 -2
  59. package/client-dist/{chunk-CY33TCPH.js → chunk-XK2R36L2.js} +2 -2
  60. package/client-dist/{chunk-QXDZZMS3.js → chunk-XNV6IK4C.js} +2 -2
  61. package/client-dist/{consultant.module-NUUEWMVU.js → consultant.module-SBWMHFKJ.js} +2 -2
  62. package/client-dist/{crd.module-LFSLZ65J.js → crd.module-XOZS37DR.js} +2 -2
  63. package/client-dist/{dashboard.module-HWKDEUIR.js → dashboard.module-ZOPW3K7J.js} +2 -2
  64. package/client-dist/{do.module-XS3ZAVKY.js → do.module-KB5SKUIJ.js} +2 -2
  65. package/client-dist/{document-library.module-Q42RVWJL.js → document-library.module-KNL2QBPX.js} +2 -2
  66. package/client-dist/{embedding-eval.module-H25ZLN4D.js → embedding-eval.module-KLSMH5UJ.js} +2 -2
  67. package/client-dist/{embedding-registry.module-Z7BEHFGI.js → embedding-registry.module-ZTXGU2ED.js} +2 -2
  68. package/client-dist/{err.module-OLBRFCKB.js → err.module-CMB4DTLV.js} +2 -2
  69. package/client-dist/{feedback.module-6OTR5FGJ.js → feedback.module-BJVDUZRZ.js} +2 -2
  70. package/client-dist/{host-runtime-mcp.module-ZVNZQCAN.js → host-runtime-mcp.module-OMBUBB7M.js} +2 -2
  71. package/client-dist/index.html +1 -1
  72. package/client-dist/{live-dev-pipeline.module-THME4YI3.js → live-dev-pipeline.module-UYI2EB37.js} +2 -2
  73. package/client-dist/{logs.module-UISWO4CZ.js → logs.module-FQA6WZDK.js} +2 -2
  74. package/client-dist/{main-77QFG7GC.js → main-QEXMC6S5.js} +3 -3
  75. package/client-dist/{master-control-remote-poc.module-U47T7KHJ.js → master-control-remote-poc.module-EIC2OUL6.js} +2 -2
  76. package/client-dist/{mobile-app.module-VWZJQ5WU.js → mobile-app.module-Q73E4TZM.js} +2 -2
  77. package/client-dist/{model-registry.module-LOPGVSHK.js → model-registry.module-HFB6B6BK.js} +2 -2
  78. package/client-dist/{oc.module-XUGA3AKR.js → oc.module-L67EQBCA.js} +2 -2
  79. package/client-dist/{orc.module-DVUM4C3N.js → orc.module-RHE5K72L.js} +2 -2
  80. package/client-dist/{project-management.module-HGBACFQU.js → project-management.module-RDIFLM76.js} +2 -2
  81. package/client-dist/project-source-routed.module-O7C5MBHE.js +2 -0
  82. package/client-dist/{scheduler.module-DATJQC6M.js → scheduler.module-3BQJ6MZM.js} +2 -2
  83. package/client-dist/{session.module-WBAORVIU.js → session.module-MPAZDBWZ.js} +2 -2
  84. package/client-dist/{set.module-CSEEOAG6.js → set.module-ZOQ7AN7B.js} +2 -2
  85. package/client-dist/{setup.module-OZRYAB7X.js → setup.module-QPZL4SPQ.js} +2 -2
  86. package/client-dist/{terminals.module-XA7PFO6P.js → terminals.module-FPH2NERB.js} +2 -2
  87. package/client-dist/{voice-notes-poc.module-UIQ3U6HF.js → voice-notes-poc.module-6HPHLYL7.js} +2 -2
  88. package/client-dist/{wfs.module-IYXT63OG.js → wfs.module-R5JGOAKU.js} +2 -2
  89. package/package.json +1 -1
  90. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.d.ts +23 -0
  91. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.d.ts.map +1 -1
  92. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.js +55 -0
  93. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.js.map +1 -1
  94. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.spec.js +75 -0
  95. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/error-handling.data-service.spec.js.map +1 -1
  96. package/client-dist/project-source-routed.module-RSENODJ7.js +0 -2
  97. /package/client-dist/{agent-instances.module-TWPWKSOH.js.map → agent-instances.module-AHL76OC3.js.map} +0 -0
  98. /package/client-dist/{ca.module-CUM7GMOC.js.map → ca.module-QTT64ILI.js.map} +0 -0
  99. /package/client-dist/{cc.module-GYDW327B.js.map → cc.module-OMGSGHOD.js.map} +0 -0
  100. /package/client-dist/{chunk-L3KT4OJM.js.map → chunk-3WKHCCFW.js.map} +0 -0
  101. /package/client-dist/{chunk-FOECE6W3.js.map → chunk-4BE2B7WH.js.map} +0 -0
  102. /package/client-dist/{chunk-NMSKEUZ4.js.map → chunk-53NYFJLY.js.map} +0 -0
  103. /package/client-dist/{chunk-HHQI3DLR.js.map → chunk-64JB44FZ.js.map} +0 -0
  104. /package/client-dist/{chunk-JI75WYQ4.js.map → chunk-6HPHF5RC.js.map} +0 -0
  105. /package/client-dist/{chunk-YK6JIDE3.js.map → chunk-72HMFKGM.js.map} +0 -0
  106. /package/client-dist/{chunk-XNZ5PN4L.js.map → chunk-7JK6S5F7.js.map} +0 -0
  107. /package/client-dist/{chunk-7Y5EUJ7W.js.map → chunk-7YXOX4OA.js.map} +0 -0
  108. /package/client-dist/{chunk-DQUAB65V.js.map → chunk-ADZTPYLS.js.map} +0 -0
  109. /package/client-dist/{chunk-GDL3WDH5.js.map → chunk-B2XJDRXR.js.map} +0 -0
  110. /package/client-dist/{chunk-GGWYZGZQ.js.map → chunk-B4GTZVLK.js.map} +0 -0
  111. /package/client-dist/{chunk-IKOOWU4V.js.map → chunk-BSAIYSDK.js.map} +0 -0
  112. /package/client-dist/{chunk-ZQ2JI7OA.js.map → chunk-CLMTZD47.js.map} +0 -0
  113. /package/client-dist/{chunk-U6WJH5D3.js.map → chunk-CTYD3KKT.js.map} +0 -0
  114. /package/client-dist/{chunk-LK4DKZBV.js.map → chunk-D22LORSI.js.map} +0 -0
  115. /package/client-dist/{chunk-7FXJWMO4.js.map → chunk-DAJHW7U7.js.map} +0 -0
  116. /package/client-dist/{chunk-QDJM2CPE.js.map → chunk-FGMBR6HP.js.map} +0 -0
  117. /package/client-dist/{chunk-QKRZHBJP.js.map → chunk-GH5M3TTB.js.map} +0 -0
  118. /package/client-dist/{chunk-GZTYEDRR.js.map → chunk-GQTRBGFA.js.map} +0 -0
  119. /package/client-dist/{chunk-ZFM5LKS4.js.map → chunk-GSTSAXG3.js.map} +0 -0
  120. /package/client-dist/{chunk-AYPTQ6OU.js.map → chunk-IESDFENC.js.map} +0 -0
  121. /package/client-dist/{chunk-CN6MXOVR.js.map → chunk-IJRWX342.js.map} +0 -0
  122. /package/client-dist/{chunk-H7YAD57H.js.map → chunk-IN3P5CCI.js.map} +0 -0
  123. /package/client-dist/{chunk-3HTRATOL.js.map → chunk-JAZXW22Q.js.map} +0 -0
  124. /package/client-dist/{chunk-W4TPTMEB.js.map → chunk-JC3MNMDV.js.map} +0 -0
  125. /package/client-dist/{chunk-MHWXIGVP.js.map → chunk-JQXTJMHD.js.map} +0 -0
  126. /package/client-dist/{chunk-BHENEPX4.js.map → chunk-KDOFP7K3.js.map} +0 -0
  127. /package/client-dist/{chunk-NQOCY7PA.js.map → chunk-KQXWQZ2E.js.map} +0 -0
  128. /package/client-dist/{chunk-HD22E3YT.js.map → chunk-KZJRGXZW.js.map} +0 -0
  129. /package/client-dist/{chunk-LB6ZH65Z.js.map → chunk-LZRE7NSH.js.map} +0 -0
  130. /package/client-dist/{chunk-IYVP6MOA.js.map → chunk-MJYVGLI7.js.map} +0 -0
  131. /package/client-dist/{chunk-YEUFDVYR.js.map → chunk-MVLJBDAH.js.map} +0 -0
  132. /package/client-dist/{chunk-EOV7J7CJ.js.map → chunk-NEHXBC2T.js.map} +0 -0
  133. /package/client-dist/{chunk-U3XPK2SF.js.map → chunk-NEKDW47N.js.map} +0 -0
  134. /package/client-dist/{chunk-W4NHRZ2U.js.map → chunk-NVXVSEK4.js.map} +0 -0
  135. /package/client-dist/{chunk-7UTBQMMR.js.map → chunk-NWD3T5DE.js.map} +0 -0
  136. /package/client-dist/{chunk-L2L6Y2DM.js.map → chunk-OSIR6RKV.js.map} +0 -0
  137. /package/client-dist/{chunk-56OCQ46F.js.map → chunk-OUY7K6IW.js.map} +0 -0
  138. /package/client-dist/{chunk-DQLKNMCX.js.map → chunk-RDS7JWHX.js.map} +0 -0
  139. /package/client-dist/{chunk-2NNZ6UMG.js.map → chunk-RGJA6FGB.js.map} +0 -0
  140. /package/client-dist/{chunk-W2JDURVY.js.map → chunk-RZVRG2F3.js.map} +0 -0
  141. /package/client-dist/{chunk-SYKML45Q.js.map → chunk-SQ6AE52B.js.map} +0 -0
  142. /package/client-dist/{chunk-URSVKJZY.js.map → chunk-TTTTOPGG.js.map} +0 -0
  143. /package/client-dist/{chunk-R4VXMVUV.js.map → chunk-U4VIPQKR.js.map} +0 -0
  144. /package/client-dist/{chunk-P2XZHWHQ.js.map → chunk-UA322OTA.js.map} +0 -0
  145. /package/client-dist/{chunk-K7KUEXCT.js.map → chunk-UI7QXWOB.js.map} +0 -0
  146. /package/client-dist/{chunk-CMWL6LFR.js.map → chunk-UMJTXY32.js.map} +0 -0
  147. /package/client-dist/{chunk-HUPMWXEJ.js.map → chunk-V4BNZRME.js.map} +0 -0
  148. /package/client-dist/{chunk-ISW7UBKH.js.map → chunk-VDCSGHFQ.js.map} +0 -0
  149. /package/client-dist/{chunk-VBMNIBIY.js.map → chunk-W4O7J57Z.js.map} +0 -0
  150. /package/client-dist/{chunk-6OOUY7EV.js.map → chunk-WE4SDMAR.js.map} +0 -0
  151. /package/client-dist/{chunk-EW5BKDXP.js.map → chunk-WZS3NLV7.js.map} +0 -0
  152. /package/client-dist/{chunk-GM2XG6IS.js.map → chunk-XFEGQDVS.js.map} +0 -0
  153. /package/client-dist/{chunk-CY33TCPH.js.map → chunk-XK2R36L2.js.map} +0 -0
  154. /package/client-dist/{chunk-QXDZZMS3.js.map → chunk-XNV6IK4C.js.map} +0 -0
  155. /package/client-dist/{consultant.module-NUUEWMVU.js.map → consultant.module-SBWMHFKJ.js.map} +0 -0
  156. /package/client-dist/{crd.module-LFSLZ65J.js.map → crd.module-XOZS37DR.js.map} +0 -0
  157. /package/client-dist/{dashboard.module-HWKDEUIR.js.map → dashboard.module-ZOPW3K7J.js.map} +0 -0
  158. /package/client-dist/{do.module-XS3ZAVKY.js.map → do.module-KB5SKUIJ.js.map} +0 -0
  159. /package/client-dist/{document-library.module-Q42RVWJL.js.map → document-library.module-KNL2QBPX.js.map} +0 -0
  160. /package/client-dist/{embedding-eval.module-H25ZLN4D.js.map → embedding-eval.module-KLSMH5UJ.js.map} +0 -0
  161. /package/client-dist/{embedding-registry.module-Z7BEHFGI.js.map → embedding-registry.module-ZTXGU2ED.js.map} +0 -0
  162. /package/client-dist/{err.module-OLBRFCKB.js.map → err.module-CMB4DTLV.js.map} +0 -0
  163. /package/client-dist/{feedback.module-6OTR5FGJ.js.map → feedback.module-BJVDUZRZ.js.map} +0 -0
  164. /package/client-dist/{host-runtime-mcp.module-ZVNZQCAN.js.map → host-runtime-mcp.module-OMBUBB7M.js.map} +0 -0
  165. /package/client-dist/{live-dev-pipeline.module-THME4YI3.js.map → live-dev-pipeline.module-UYI2EB37.js.map} +0 -0
  166. /package/client-dist/{logs.module-UISWO4CZ.js.map → logs.module-FQA6WZDK.js.map} +0 -0
  167. /package/client-dist/{main-77QFG7GC.js.map → main-QEXMC6S5.js.map} +0 -0
  168. /package/client-dist/{master-control-remote-poc.module-U47T7KHJ.js.map → master-control-remote-poc.module-EIC2OUL6.js.map} +0 -0
  169. /package/client-dist/{mobile-app.module-VWZJQ5WU.js.map → mobile-app.module-Q73E4TZM.js.map} +0 -0
  170. /package/client-dist/{model-registry.module-LOPGVSHK.js.map → model-registry.module-HFB6B6BK.js.map} +0 -0
  171. /package/client-dist/{oc.module-XUGA3AKR.js.map → oc.module-L67EQBCA.js.map} +0 -0
  172. /package/client-dist/{orc.module-DVUM4C3N.js.map → orc.module-RHE5K72L.js.map} +0 -0
  173. /package/client-dist/{project-management.module-HGBACFQU.js.map → project-management.module-RDIFLM76.js.map} +0 -0
  174. /package/client-dist/{project-source-routed.module-RSENODJ7.js.map → project-source-routed.module-O7C5MBHE.js.map} +0 -0
  175. /package/client-dist/{scheduler.module-DATJQC6M.js.map → scheduler.module-3BQJ6MZM.js.map} +0 -0
  176. /package/client-dist/{session.module-WBAORVIU.js.map → session.module-MPAZDBWZ.js.map} +0 -0
  177. /package/client-dist/{set.module-CSEEOAG6.js.map → set.module-ZOQ7AN7B.js.map} +0 -0
  178. /package/client-dist/{setup.module-OZRYAB7X.js.map → setup.module-QPZL4SPQ.js.map} +0 -0
  179. /package/client-dist/{terminals.module-XA7PFO6P.js.map → terminals.module-FPH2NERB.js.map} +0 -0
  180. /package/client-dist/{voice-notes-poc.module-UIQ3U6HF.js.map → voice-notes-poc.module-6HPHLYL7.js.map} +0 -0
  181. /package/client-dist/{wfs.module-IYXT63OG.js.map → wfs.module-R5JGOAKU.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{a as ne}from"./chunk-Q2PKIGLB.js";import{g as fe}from"./chunk-W4NHRZ2U.js";import{a as ue}from"./chunk-7JUIBZEE.js";import{a as me}from"./chunk-C7XPBJTG.js";import{a as te}from"./chunk-2NNZ6UMG.js";import{o as B,p as L,v as ce}from"./chunk-EO4DNTT4.js";import{f as _e}from"./chunk-EOV7J7CJ.js";import{a as R}from"./chunk-5UPNU54P.js";import{I as pe}from"./chunk-CQYMS3RY.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-FOECE6W3.js.map
1
+ import{a as ne}from"./chunk-Q2PKIGLB.js";import{g as fe}from"./chunk-NVXVSEK4.js";import{a as ue}from"./chunk-7JUIBZEE.js";import{a as me}from"./chunk-C7XPBJTG.js";import{a as te}from"./chunk-RGJA6FGB.js";import{o as B,p as L,v as ce}from"./chunk-EO4DNTT4.js";import{f as _e}from"./chunk-NEHXBC2T.js";import{a as R}from"./chunk-5UPNU54P.js";import{I as pe}from"./chunk-LIWUIPCY.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-4BE2B7WH.js.map
@@ -1,2 +1,2 @@
1
- import{p as C}from"./chunk-CQYMS3RY.js";import{aa as f,h as p,k as h,y as m}from"./chunk-TBMJSIBB.js";var a=function(o){return o.stopped="stopped",o.standby="standby",o.running="running",o}(a||{});var k={navigator_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 k\xF6rnyezet nem t\xE1mogatja a navigator API-t.",media_devices_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 ezen az oldalon nem ad hozz\xE1f\xE9r\xE9st a mikrofonhoz.",secure_context_required:"A hangfelv\xE9tel ezen az oldalon nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 csak biztons\xE1gos kapcsolatban (HTTPS vagy localhost) enged\xE9lyezi a mikrofont."},v={media_devices_unavailable:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on.",secure_context_required:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on."},d=class{static wrapGetUserMediaError(s){if(s instanceof Error&&"code"in s&&typeof s.code=="string"&&s.code.startsWith("CCAP_"))return s;let e=s instanceof DOMException||s instanceof Error?s.name:"UnknownError",t,i;switch(e){case"NotAllowedError":t="CCAP_MIC_PERMISSION_DENIED",i="Microphone access denied by user or browser policy";break;case"NotFoundError":t="CCAP_MIC_NOT_FOUND",i="No microphone device found on this device";break;case"NotReadableError":t="CCAP_MIC_NOT_READABLE",i="Microphone hardware error or device already in use by another application";break;case"OverconstrainedError":t="CCAP_MIC_OVERCONSTRAINED",i="Microphone does not support the requested audio constraints";break;case"AbortError":t="CCAP_MIC_ABORTED",i="Microphone access request was aborted by the system";break;case"SecurityError":t="CCAP_MIC_SECURITY_ERROR",i="Microphone access blocked by document security policy (Permissions-Policy / iframe)";break;default:t="CCAP_MIC_UNKNOWN_ERROR",i=`getUserMedia failed with ${e}`;break}let n=new Error(i);return n.code=t,n.cause=s,n}static getGetUserMediaErrorMessage(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"A mikrofon haszn\xE1lata nem enged\xE9lyezett: a b\xF6ng\xE9sz\u0151 vagy a felhaszn\xE1l\xF3 megtagadta a hozz\xE1f\xE9r\xE9st.";case"NotFoundError":return"Nem tal\xE1lhat\xF3 mikrofon ezen az eszk\xF6z\xF6n.";case"NotReadableError":return"A mikrofon nem olvashat\xF3: hardverhiba vagy egy m\xE1sik alkalmaz\xE1s haszn\xE1lja.";case"OverconstrainedError":return"A mikrofon nem t\xE1mogatja a k\xE9rt audio be\xE1ll\xEDt\xE1sokat.";case"AbortError":return"A mikrofon-hozz\xE1f\xE9r\xE9si k\xE9r\xE9s megszakadt.";case"SecurityError":return"A mikrofon-hozz\xE1f\xE9r\xE9st a biztons\xE1gi szab\xE1lyzat (Permissions-Policy / iframe) blokkolta.";default:return"A mikrofon el\xE9r\xE9se sikertelen (ismeretlen hiba)."}}static getGetUserMediaErrorHint(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"Enged\xE9lyezd a mikrofont a b\xF6ng\xE9sz\u0151 c\xEDmsor\xE1ban (lakat ikon \u2192 Mikrofon \u2192 Enged\xE9lyez\xE9s), majd pr\xF3b\xE1ld \xFAjra. Androidon: Be\xE1ll\xEDt\xE1sok \u2192 Alkalmaz\xE1sok \u2192 Chrome \u2192 Enged\xE9lyek \u2192 Mikrofon.";case"NotReadableError":return"Z\xE1rd be a mikrofont haszn\xE1l\xF3 m\xE1sik alkalmaz\xE1st (pl. vide\xF3h\xEDv\xE1s, diktafon), majd pr\xF3b\xE1ld \xFAjra.";case"SecurityError":return'Ha az alkalmaz\xE1s iframe-ben fut, az iframe-nek "allow=microphone" attrib\xFAtumra van sz\xFCks\xE9ge.';default:return""}}static getMediaRecordingAvailability(){return typeof navigator>"u"?{supported:!1,reason:"navigator_unavailable"}:typeof window<"u"&&window.isSecureContext===!1?{supported:!1,reason:"secure_context_required"}:navigator.mediaDevices==null?{supported:!1,reason:"media_devices_unavailable"}:{supported:!0}}static getMediaUnavailableReportMessage(s){return`Media recording not available (reason: ${s}). Use HTTPS or localhost for microphone access.`}static getMediaUnavailableHint(s){return v[s]??""}static getMediaUnavailableMessage(s){return k[s]??"A hangfelv\xE9tel nem el\xE9rhet\u0151 ezen az oldalon."}};var r=p(C());var A=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/ogg","audio/mp4"],z=(()=>{class o{volumeGate=.05;silenceTimeLimitMs=5*r.second;timesliceMs=5*r.second;segmentMaxChunks=6;segmentSoftFlushMinChunks=4;getUserMediaTimeoutMs=15*r.second;state_$=f(a.stopped);mediaStream=null;mediaRecorder=null;audioContext=null;analyser=null;audioSourceNode=null;volumeAnimationId=null;chunkIndex=0;chunks=[];isRestartingForFlush=!1;selectedMime="";onChunkCb=null;onVolumeCb=null;onErrorCb=null;deviceChangeHandler=null;silenceStartTime=null;setOnChunk(e){this.onChunkCb=e}setOnVolume(e){this.onVolumeCb=e}setOnError(e){this.onErrorCb=e}selectMime(){for(let e of A)if(MediaRecorder.isTypeSupported(e))return e;return"audio/webm"}getExtension(){return this.selectedMime.startsWith("audio/webm")?"webm":this.selectedMime.startsWith("audio/ogg")?"ogg":this.selectedMime.startsWith("audio/mp4")?"mp4":"webm"}startListening(){return h(this,null,function*(){if(this.state_$()===a.stopped)try{let e=d.getMediaRecordingAvailability();if(!e.supported){let n=`Media recording not available (reason: ${e.reason??"unknown"})`,l=new Error(n);throw l.code="CCAP_MEDIA_NOT_AVAILABLE",l}let t=null;try{let n=navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),l=new Promise((c,g)=>{t=setTimeout(()=>{let u=new Error(`getUserMedia timed out after ${this.getUserMediaTimeoutMs}ms`);u.code="CCAP_MIC_TIMEOUT",g(u)},this.getUserMediaTimeoutMs)});this.mediaStream=yield Promise.race([n,l])}catch(n){throw d.wrapGetUserMediaError(n)}finally{t!==null&&clearTimeout(t)}let i=this.mediaStream.getAudioTracks()[0];i&&(r.DyFM_Log.info("[CCAP] mic track settings",i.getSettings()),i.onended=()=>{r.DyFM_Log.info("[CCAP] mic track ended unexpectedly"),this.stopListening(),this.onErrorCb?.(new Error("Microphone track ended unexpectedly (device disconnected?)"))}),this.registerDeviceChangeListener(),this.selectedMime=this.selectMime(),this.startVolumeLoop(),this.state_$.set(a.standby)}catch(e){throw this.state_$.set(a.stopped),e}})}stopListening(){let e=this.state_$()===a.running;e&&this.stopCapture(!0),this.stopVolumeLoop(),e||this.stopMediaRecorder(),this.silenceStartTime=null,this.unregisterDeviceChangeListener(),this.mediaStream&&(this.mediaStream.getTracks().forEach(t=>t.stop()),this.mediaStream=null),this.state_$.set(a.stopped)}startCapture(){return h(this,null,function*(){try{if(this.mediaStream==null&&(yield this.startListening()),this.mediaStream==null)return;this.silenceStartTime=null,this.chunks=[],this.createAndStartRecorder(),this.state_$.set(a.running)}catch(e){this.stopVolumeLoop(),this.state_$.set(a.stopped),this.onErrorCb?.(e)}})}stopCapture(e=!1,t=!1){if(this.isRestartingForFlush=!1,!(this.mediaRecorder==null||this.state_$()!==a.running)){try{this.mediaRecorder.stop()}catch(i){r.DyFM_Log.info("[CCAP] mediaRecorder.stop() failed (likely already inactive)",i),this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}if(t){this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}this.mediaRecorder.onstop=()=>{this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped)}}}createAndStartRecorder(){this.mediaStream&&(this.mediaRecorder=new MediaRecorder(this.mediaStream,{mimeType:this.selectedMime,audioBitsPerSecond:128e3}),this.mediaRecorder.ondataavailable=e=>{if(e.data.size>0&&this.chunks.push(e.data),this.state_$()!==a.running||this.isRestartingForFlush)return;let t=this.chunks.length>=this.segmentMaxChunks,i=this.chunks.length>=this.segmentSoftFlushMinChunks&&this.silenceStartTime!==null;(t||i)&&this.restartRecorderForFlush()},this.mediaRecorder.start(this.timesliceMs))}restartRecorderForFlush(){if(!(!this.mediaRecorder||this.mediaRecorder.state==="inactive")){this.isRestartingForFlush=!0,this.silenceStartTime=null,r.DyFM_Log.info("[CCAP] restartRecorderForFlush: stopping current recorder for mid-recording flush"),this.mediaRecorder.onstop=()=>{this.isRestartingForFlush=!1,this.mediaRecorder=null;let e=this.chunks.length;if(this.flushChunksAsSegment(!1),r.DyFM_Log.info(`[CCAP] restartRecorderForFlush: flushed ${e} chunks as segment`),this.state_$()!==a.running||!this.mediaStream){r.DyFM_Log.info("[CCAP] restartRecorderForFlush: not restarting (state changed or no stream)");return}this.createAndStartRecorder(),r.DyFM_Log.info("[CCAP] restartRecorderForFlush: new recorder started for next segment")};try{this.mediaRecorder.stop()}catch{this.isRestartingForFlush=!1,this.mediaRecorder=null,this.flushChunksAsSegment(!1)}}}flushChunksAsSegment(e){if(this.chunks.length===0)return;let t=new Blob(this.chunks,{type:this.selectedMime}),i={mimeType:this.selectedMime,filename:`audio-${Date.now()}.${this.getExtension()}`,chunkIndex:this.chunkIndex++,isFinal:e};this.chunks=[],this.onChunkCb?.(t,i)}startVolumeLoop(){if(this.mediaStream==null||this.onVolumeCb==null)return;this.audioContext=new AudioContext,this.audioContext.state==="suspended"&&this.audioContext.resume().catch(()=>{}),this.audioContext.onstatechange=()=>{let i=this.audioContext?.state??"unknown";r.DyFM_Log.info("[CCAP] AudioContext state changed:",i),i==="suspended"&&this.state_$()!==a.stopped&&this.audioContext?.resume().catch(()=>{})},this.audioSourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.analyser=this.audioContext.createAnalyser(),this.analyser.fftSize=2048,this.analyser.smoothingTimeConstant=.8,this.audioSourceNode.connect(this.analyser);let e=new Float32Array(this.analyser.fftSize),t=()=>{if(this.analyser==null||this.onVolumeCb==null)return;this.analyser.getFloatTimeDomainData(e);let i=0;for(let c=0;c<e.length;c++)i+=Math.abs(e[c]);let n=i/e.length;this.onVolumeCb(n);let l=this.state_$();if(l===a.standby&&n>=this.volumeGate){this.startCapture(),this.volumeAnimationId=requestAnimationFrame(t);return}l===a.running&&!this.isRestartingForFlush&&(n<this.volumeGate?this.silenceStartTime===null?this.silenceStartTime=Date.now():Date.now()-this.silenceStartTime>=this.silenceTimeLimitMs&&(this.stopCapture(),this.silenceStartTime=null):this.silenceStartTime=null),this.volumeAnimationId=requestAnimationFrame(t)};t()}stopVolumeLoop(){this.volumeAnimationId!=null&&(cancelAnimationFrame(this.volumeAnimationId),this.volumeAnimationId=null),this.audioSourceNode=null,this.audioContext!=null&&(this.audioContext.onstatechange=null,this.audioContext.close().catch(()=>{}),this.audioContext=null),this.analyser=null}stopMediaRecorder(){if(this.mediaRecorder!=null&&this.mediaRecorder.state!=="inactive"){try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null}this.chunks=[],this.isRestartingForFlush=!1}registerDeviceChangeListener(){try{this.deviceChangeHandler=()=>{r.DyFM_Log.info("[CCAP] media device change detected")},navigator.mediaDevices.addEventListener("devicechange",this.deviceChangeHandler)}catch{this.deviceChangeHandler=null}}unregisterDeviceChangeListener(){if(this.deviceChangeHandler){try{navigator.mediaDevices.removeEventListener("devicechange",this.deviceChangeHandler)}catch{}this.deviceChangeHandler=null}}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{a,d as b,z as c};
2
- //# sourceMappingURL=chunk-NMSKEUZ4.js.map
1
+ import{p as C}from"./chunk-LIWUIPCY.js";import{aa as f,h as p,k as h,y as m}from"./chunk-TBMJSIBB.js";var a=function(o){return o.stopped="stopped",o.standby="standby",o.running="running",o}(a||{});var k={navigator_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 k\xF6rnyezet nem t\xE1mogatja a navigator API-t.",media_devices_unavailable:"A hangfelv\xE9tel nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 ezen az oldalon nem ad hozz\xE1f\xE9r\xE9st a mikrofonhoz.",secure_context_required:"A hangfelv\xE9tel ezen az oldalon nem el\xE9rhet\u0151: a b\xF6ng\xE9sz\u0151 csak biztons\xE1gos kapcsolatban (HTTPS vagy localhost) enged\xE9lyezi a mikrofont."},v={media_devices_unavailable:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on.",secure_context_required:"A mikrofonhoz haszn\xE1ld az alkalmaz\xE1st HTTPS c\xEDmen (pl. https://localhost:39051) vagy localhost-on."},d=class{static wrapGetUserMediaError(s){if(s instanceof Error&&"code"in s&&typeof s.code=="string"&&s.code.startsWith("CCAP_"))return s;let e=s instanceof DOMException||s instanceof Error?s.name:"UnknownError",t,i;switch(e){case"NotAllowedError":t="CCAP_MIC_PERMISSION_DENIED",i="Microphone access denied by user or browser policy";break;case"NotFoundError":t="CCAP_MIC_NOT_FOUND",i="No microphone device found on this device";break;case"NotReadableError":t="CCAP_MIC_NOT_READABLE",i="Microphone hardware error or device already in use by another application";break;case"OverconstrainedError":t="CCAP_MIC_OVERCONSTRAINED",i="Microphone does not support the requested audio constraints";break;case"AbortError":t="CCAP_MIC_ABORTED",i="Microphone access request was aborted by the system";break;case"SecurityError":t="CCAP_MIC_SECURITY_ERROR",i="Microphone access blocked by document security policy (Permissions-Policy / iframe)";break;default:t="CCAP_MIC_UNKNOWN_ERROR",i=`getUserMedia failed with ${e}`;break}let n=new Error(i);return n.code=t,n.cause=s,n}static getGetUserMediaErrorMessage(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"A mikrofon haszn\xE1lata nem enged\xE9lyezett: a b\xF6ng\xE9sz\u0151 vagy a felhaszn\xE1l\xF3 megtagadta a hozz\xE1f\xE9r\xE9st.";case"NotFoundError":return"Nem tal\xE1lhat\xF3 mikrofon ezen az eszk\xF6z\xF6n.";case"NotReadableError":return"A mikrofon nem olvashat\xF3: hardverhiba vagy egy m\xE1sik alkalmaz\xE1s haszn\xE1lja.";case"OverconstrainedError":return"A mikrofon nem t\xE1mogatja a k\xE9rt audio be\xE1ll\xEDt\xE1sokat.";case"AbortError":return"A mikrofon-hozz\xE1f\xE9r\xE9si k\xE9r\xE9s megszakadt.";case"SecurityError":return"A mikrofon-hozz\xE1f\xE9r\xE9st a biztons\xE1gi szab\xE1lyzat (Permissions-Policy / iframe) blokkolta.";default:return"A mikrofon el\xE9r\xE9se sikertelen (ismeretlen hiba)."}}static getGetUserMediaErrorHint(s){switch(s instanceof DOMException||s instanceof Error?s.name:""){case"NotAllowedError":return"Enged\xE9lyezd a mikrofont a b\xF6ng\xE9sz\u0151 c\xEDmsor\xE1ban (lakat ikon \u2192 Mikrofon \u2192 Enged\xE9lyez\xE9s), majd pr\xF3b\xE1ld \xFAjra. Androidon: Be\xE1ll\xEDt\xE1sok \u2192 Alkalmaz\xE1sok \u2192 Chrome \u2192 Enged\xE9lyek \u2192 Mikrofon.";case"NotReadableError":return"Z\xE1rd be a mikrofont haszn\xE1l\xF3 m\xE1sik alkalmaz\xE1st (pl. vide\xF3h\xEDv\xE1s, diktafon), majd pr\xF3b\xE1ld \xFAjra.";case"SecurityError":return'Ha az alkalmaz\xE1s iframe-ben fut, az iframe-nek "allow=microphone" attrib\xFAtumra van sz\xFCks\xE9ge.';default:return""}}static getMediaRecordingAvailability(){return typeof navigator>"u"?{supported:!1,reason:"navigator_unavailable"}:typeof window<"u"&&window.isSecureContext===!1?{supported:!1,reason:"secure_context_required"}:navigator.mediaDevices==null?{supported:!1,reason:"media_devices_unavailable"}:{supported:!0}}static getMediaUnavailableReportMessage(s){return`Media recording not available (reason: ${s}). Use HTTPS or localhost for microphone access.`}static getMediaUnavailableHint(s){return v[s]??""}static getMediaUnavailableMessage(s){return k[s]??"A hangfelv\xE9tel nem el\xE9rhet\u0151 ezen az oldalon."}};var r=p(C());var A=["audio/webm;codecs=opus","audio/webm","audio/ogg;codecs=opus","audio/ogg","audio/mp4"],z=(()=>{class o{volumeGate=.05;silenceTimeLimitMs=5*r.second;timesliceMs=5*r.second;segmentMaxChunks=6;segmentSoftFlushMinChunks=4;getUserMediaTimeoutMs=15*r.second;state_$=f(a.stopped);mediaStream=null;mediaRecorder=null;audioContext=null;analyser=null;audioSourceNode=null;volumeAnimationId=null;chunkIndex=0;chunks=[];isRestartingForFlush=!1;selectedMime="";onChunkCb=null;onVolumeCb=null;onErrorCb=null;deviceChangeHandler=null;silenceStartTime=null;setOnChunk(e){this.onChunkCb=e}setOnVolume(e){this.onVolumeCb=e}setOnError(e){this.onErrorCb=e}selectMime(){for(let e of A)if(MediaRecorder.isTypeSupported(e))return e;return"audio/webm"}getExtension(){return this.selectedMime.startsWith("audio/webm")?"webm":this.selectedMime.startsWith("audio/ogg")?"ogg":this.selectedMime.startsWith("audio/mp4")?"mp4":"webm"}startListening(){return h(this,null,function*(){if(this.state_$()===a.stopped)try{let e=d.getMediaRecordingAvailability();if(!e.supported){let n=`Media recording not available (reason: ${e.reason??"unknown"})`,l=new Error(n);throw l.code="CCAP_MEDIA_NOT_AVAILABLE",l}let t=null;try{let n=navigator.mediaDevices.getUserMedia({audio:{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,channelCount:1}}),l=new Promise((c,g)=>{t=setTimeout(()=>{let u=new Error(`getUserMedia timed out after ${this.getUserMediaTimeoutMs}ms`);u.code="CCAP_MIC_TIMEOUT",g(u)},this.getUserMediaTimeoutMs)});this.mediaStream=yield Promise.race([n,l])}catch(n){throw d.wrapGetUserMediaError(n)}finally{t!==null&&clearTimeout(t)}let i=this.mediaStream.getAudioTracks()[0];i&&(r.DyFM_Log.info("[CCAP] mic track settings",i.getSettings()),i.onended=()=>{r.DyFM_Log.info("[CCAP] mic track ended unexpectedly"),this.stopListening(),this.onErrorCb?.(new Error("Microphone track ended unexpectedly (device disconnected?)"))}),this.registerDeviceChangeListener(),this.selectedMime=this.selectMime(),this.startVolumeLoop(),this.state_$.set(a.standby)}catch(e){throw this.state_$.set(a.stopped),e}})}stopListening(){let e=this.state_$()===a.running;e&&this.stopCapture(!0),this.stopVolumeLoop(),e||this.stopMediaRecorder(),this.silenceStartTime=null,this.unregisterDeviceChangeListener(),this.mediaStream&&(this.mediaStream.getTracks().forEach(t=>t.stop()),this.mediaStream=null),this.state_$.set(a.stopped)}startCapture(){return h(this,null,function*(){try{if(this.mediaStream==null&&(yield this.startListening()),this.mediaStream==null)return;this.silenceStartTime=null,this.chunks=[],this.createAndStartRecorder(),this.state_$.set(a.running)}catch(e){this.stopVolumeLoop(),this.state_$.set(a.stopped),this.onErrorCb?.(e)}})}stopCapture(e=!1,t=!1){if(this.isRestartingForFlush=!1,!(this.mediaRecorder==null||this.state_$()!==a.running)){try{this.mediaRecorder.stop()}catch(i){r.DyFM_Log.info("[CCAP] mediaRecorder.stop() failed (likely already inactive)",i),this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}if(t){this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped);return}this.mediaRecorder.onstop=()=>{this.mediaRecorder=null,this.flushChunksAsSegment(e),this.state_$.set(this.mediaStream?a.standby:a.stopped)}}}createAndStartRecorder(){this.mediaStream&&(this.mediaRecorder=new MediaRecorder(this.mediaStream,{mimeType:this.selectedMime,audioBitsPerSecond:128e3}),this.mediaRecorder.ondataavailable=e=>{if(e.data.size>0&&this.chunks.push(e.data),this.state_$()!==a.running||this.isRestartingForFlush)return;let t=this.chunks.length>=this.segmentMaxChunks,i=this.chunks.length>=this.segmentSoftFlushMinChunks&&this.silenceStartTime!==null;(t||i)&&this.restartRecorderForFlush()},this.mediaRecorder.start(this.timesliceMs))}restartRecorderForFlush(){if(!(!this.mediaRecorder||this.mediaRecorder.state==="inactive")){this.isRestartingForFlush=!0,this.silenceStartTime=null,r.DyFM_Log.info("[CCAP] restartRecorderForFlush: stopping current recorder for mid-recording flush"),this.mediaRecorder.onstop=()=>{this.isRestartingForFlush=!1,this.mediaRecorder=null;let e=this.chunks.length;if(this.flushChunksAsSegment(!1),r.DyFM_Log.info(`[CCAP] restartRecorderForFlush: flushed ${e} chunks as segment`),this.state_$()!==a.running||!this.mediaStream){r.DyFM_Log.info("[CCAP] restartRecorderForFlush: not restarting (state changed or no stream)");return}this.createAndStartRecorder(),r.DyFM_Log.info("[CCAP] restartRecorderForFlush: new recorder started for next segment")};try{this.mediaRecorder.stop()}catch{this.isRestartingForFlush=!1,this.mediaRecorder=null,this.flushChunksAsSegment(!1)}}}flushChunksAsSegment(e){if(this.chunks.length===0)return;let t=new Blob(this.chunks,{type:this.selectedMime}),i={mimeType:this.selectedMime,filename:`audio-${Date.now()}.${this.getExtension()}`,chunkIndex:this.chunkIndex++,isFinal:e};this.chunks=[],this.onChunkCb?.(t,i)}startVolumeLoop(){if(this.mediaStream==null||this.onVolumeCb==null)return;this.audioContext=new AudioContext,this.audioContext.state==="suspended"&&this.audioContext.resume().catch(()=>{}),this.audioContext.onstatechange=()=>{let i=this.audioContext?.state??"unknown";r.DyFM_Log.info("[CCAP] AudioContext state changed:",i),i==="suspended"&&this.state_$()!==a.stopped&&this.audioContext?.resume().catch(()=>{})},this.audioSourceNode=this.audioContext.createMediaStreamSource(this.mediaStream),this.analyser=this.audioContext.createAnalyser(),this.analyser.fftSize=2048,this.analyser.smoothingTimeConstant=.8,this.audioSourceNode.connect(this.analyser);let e=new Float32Array(this.analyser.fftSize),t=()=>{if(this.analyser==null||this.onVolumeCb==null)return;this.analyser.getFloatTimeDomainData(e);let i=0;for(let c=0;c<e.length;c++)i+=Math.abs(e[c]);let n=i/e.length;this.onVolumeCb(n);let l=this.state_$();if(l===a.standby&&n>=this.volumeGate){this.startCapture(),this.volumeAnimationId=requestAnimationFrame(t);return}l===a.running&&!this.isRestartingForFlush&&(n<this.volumeGate?this.silenceStartTime===null?this.silenceStartTime=Date.now():Date.now()-this.silenceStartTime>=this.silenceTimeLimitMs&&(this.stopCapture(),this.silenceStartTime=null):this.silenceStartTime=null),this.volumeAnimationId=requestAnimationFrame(t)};t()}stopVolumeLoop(){this.volumeAnimationId!=null&&(cancelAnimationFrame(this.volumeAnimationId),this.volumeAnimationId=null),this.audioSourceNode=null,this.audioContext!=null&&(this.audioContext.onstatechange=null,this.audioContext.close().catch(()=>{}),this.audioContext=null),this.analyser=null}stopMediaRecorder(){if(this.mediaRecorder!=null&&this.mediaRecorder.state!=="inactive"){try{this.mediaRecorder.stop()}catch{}this.mediaRecorder=null}this.chunks=[],this.isRestartingForFlush=!1}registerDeviceChangeListener(){try{this.deviceChangeHandler=()=>{r.DyFM_Log.info("[CCAP] media device change detected")},navigator.mediaDevices.addEventListener("devicechange",this.deviceChangeHandler)}catch{this.deviceChangeHandler=null}}unregisterDeviceChangeListener(){if(this.deviceChangeHandler){try{navigator.mediaDevices.removeEventListener("devicechange",this.deviceChangeHandler)}catch{}this.deviceChangeHandler=null}}static \u0275fac=function(t){return new(t||o)};static \u0275prov=m({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{a,d as b,z as c};
2
+ //# sourceMappingURL=chunk-53NYFJLY.js.map
@@ -1,2 +1,2 @@
1
- import{e as $}from"./chunk-CMWL6LFR.js";import{I as h,p as S}from"./chunk-CQYMS3RY.js";import{C as u,aa as a,h as C,k as m,p as c,xb as y,y as _}from"./chunk-TBMJSIBB.js";var f=C(S());var T=(()=>{class n{baseUrl=`${h.api.baseUrl}/terminals`;http=u(y);getTerminals(){return c(this.http.get(this.baseUrl))}startTerminal(t){return c(this.http.post(`${this.baseUrl}/start`,{path:t.path},{headers:{"Content-Type":"application/json"}}))}runCommand(t,e){return c(this.http.post(`${this.baseUrl}/${encodeURIComponent(t)}/command`,{action:e.action,command:e.command,code:e.code},{headers:{"Content-Type":"application/json"}}))}deleteTerminal(t){return c(this.http.delete(`${this.baseUrl}/${encodeURIComponent(t)}`))}closeTerminal(t){return c(this.http.post(`${this.baseUrl}/${encodeURIComponent(t)}/close`,{},{headers:{"Content-Type":"application/json"}}))}static \u0275fac=function(e){return new(e||n)};static \u0275prov=_({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var R="terminal:list",A="terminal:list:result",q="terminal:start",b="terminal:start:result",p="terminal:attach",N="terminal:command-result",M="terminal:command-output",k="terminal:command-stdin";function E(n){if(n==null||typeof n!="object")return null;let s=n,t=typeof s.terminalId=="string"?s.terminalId:"";if(!t.trim())return null;let e=s.type,r=e==="exec"||e==="cc-runner"||e==="ca-runner"?e:void 0;return{_id:typeof s._id=="string"?s._id:void 0,terminalId:t.trim(),path:typeof s.path=="string"?s.path:void 0,status:typeof s.status=="string"?s.status:void 0,__created:typeof s.__created=="string"?s.__created:void 0,__lastModified:typeof s.__lastModified=="string"?s.__lastModified:void 0,type:r,sessionId:typeof s.sessionId=="string"?s.sessionId:void 0,command:typeof s.command=="string"?s.command:void 0}}var B=(()=>{class n{terminals_$=a([]);terminalsLoading_$=a(!1);terminalsLoadError_$=a(null);selectedTerminalId_$=a("");commandResults_$=a([]);startLoading_$=a(!1);startError_$=a(null);runCommandLoading_$=a(!1);runCommandError_$=a(null);interactiveRequestId_$=a(null);interactiveOutput_$=a("");eventSubscription=null;terminal_AS=u(T);socket_CS=u($);constructor(){this.eventSubscription=this.socket_CS.event$.subscribe(t=>{if(t.event===A){let r=(Array.isArray(t.payload.terminals)?t.payload.terminals:[]).map(i=>E(i)).filter(i=>i!==null);this.terminals_$.set(r),this.terminalsLoading_$.set(!1),t.payload.error!==void 0&&t.payload.error!==null&&this.terminalsLoadError_$.set(t.payload.error)}else if(t.event===b){if(this.startLoading_$.set(!1),t.payload.error!==void 0&&t.payload.error!==null){this.startError_$.set(t.payload.error);return}this.startError_$.set(null);let e=typeof t.payload.terminalId=="string"?t.payload.terminalId:"",r=typeof t.payload.path=="string"?t.payload.path:"";e&&(this.terminals_$.update(i=>i.some(l=>l.terminalId===e)?i:[{terminalId:e,path:r,status:t.payload.status},...i]),this.selectedTerminalId_$.set(e),this.socket_CS.emit(p,{terminalId:e}),this.commandResults_$.set([]),this.clearInteractiveState())}else if(t.event===N){if((typeof t.payload.terminalId=="string"?t.payload.terminalId:"")!==this.selectedTerminalId_$())return;let r=t.payload.interactive===!0,i=t.payload.interactiveEnd===!0,o=typeof t.payload.exitCode=="number"?t.payload.exitCode:void 0;if(r){let d=typeof t.payload.requestId=="string"?t.payload.requestId:"";this.interactiveRequestId_$.set(d||null),this.interactiveOutput_$.set("");return}if(i){let d=this.interactiveOutput_$();this.interactiveRequestId_$.set(null),this.interactiveOutput_$.set("");let g=o!==void 0?`Session ended. Exit code: ${o}`:"Session ended.";this.commandResults_$.update(I=>[...d.trim().length>0?[...I,{output:d.trim(),success:!0}]:I,{output:g,success:!0,interactiveEnd:!0,exitCode:o}]);return}let l={requestId:typeof t.payload.requestId=="string"?t.payload.requestId:void 0,output:typeof t.payload.output=="string"?t.payload.output:"",success:t.payload.success===!0,error:typeof t.payload.error=="string"?t.payload.error:void 0};this.commandResults_$.update(d=>[...d,l])}else if(t.event===M){let e=typeof t.payload.terminalId=="string"?t.payload.terminalId.trim():"",r=typeof t.payload.requestId=="string"?String(t.payload.requestId).trim():"",i=typeof t.payload.chunk=="string"?t.payload.chunk:"",o=(this.interactiveRequestId_$()??"").trim(),l=(this.selectedTerminalId_$()??"").trim();if(o.length===0||r!==o){h.production||f.DyFM_Log.info("CCAP_Terminal | command-output kisz\u0171rve: requestId mismatch",{requestId:r,currentRequestId:o});return}if(e.length>0&&l.length>0&&e!==l){h.production||f.DyFM_Log.info("CCAP_Terminal | command-output kisz\u0171rve: terminalId mismatch",{terminalId:e,selectedId:l});return}this.interactiveOutput_$.update(d=>d+i)}})}requestTerminalListViaSocket(){this.terminalsLoadError_$.set(null),this.terminalsLoading_$.set(!0),this.socket_CS.emit(R,{})}loadTerminalsRest(){return m(this,null,function*(){this.terminalsLoadError_$.set(null),this.terminalsLoading_$.set(!0);try{let t=yield this.terminal_AS.getTerminals(),r=(Array.isArray(t?.terminals)?t.terminals:[]).map(i=>E(i)).filter(i=>i!==null);this.terminals_$.set(r)}catch(t){this.terminalsLoadError_$.set(t)}finally{this.terminalsLoading_$.set(!1)}})}startTerminalRest(t){return m(this,null,function*(){this.startError_$.set(null),this.startLoading_$.set(!0);try{let e=yield this.terminal_AS.startTerminal(t);this.startError_$.set(null),e.terminalId&&(this.terminals_$.update(r=>r.some(o=>o.terminalId===e.terminalId)?r:[{terminalId:e.terminalId,path:e.path,status:e.status},...r]),this.selectedTerminalId_$.set(e.terminalId),this.socket_CS.emit(p,{terminalId:e.terminalId}),this.commandResults_$.set([]),this.clearInteractiveState())}catch(e){this.startError_$.set(e)}finally{this.startLoading_$.set(!1)}})}startTerminalViaSocket(t){this.startError_$.set(null),this.startLoading_$.set(!0),this.socket_CS.emit(q,{path:t.path})}sendStdin(t){let e=this.selectedTerminalId_$(),r=this.interactiveRequestId_$();!e||!r||this.socket_CS.emit(k,{terminalId:e,requestId:r,data:typeof t=="string"?t:""})}clearInteractiveState(){this.interactiveRequestId_$.set(null),this.interactiveOutput_$.set("")}attachToTerminal(t){this.selectedTerminalId_$.set(t),this.socket_CS.emit(p,{terminalId:t}),this.commandResults_$.set([]),this.clearInteractiveState()}deleteTerminal(t){return m(this,null,function*(){let e=(t??"").trim();if(e){this.runCommandError_$.set(null);try{yield this.terminal_AS.deleteTerminal(e),this.terminals_$.update(r=>r.filter(i=>(i.terminalId??"")!==e)),this.selectedTerminalId_$()===e&&(this.selectedTerminalId_$.set(""),this.clearInteractiveState())}catch(r){this.runCommandError_$.set(r)}}})}closeTerminal(t){return m(this,null,function*(){let e=(t??"").trim();if(e){this.runCommandError_$.set(null);try{yield this.terminal_AS.closeTerminal(e),this.selectedTerminalId_$()===e&&this.clearInteractiveState(),yield this.loadTerminalsRest()}catch(r){this.runCommandError_$.set(r)}}})}runCommand(t){return m(this,null,function*(){let e=this.selectedTerminalId_$();if(!e){this.runCommandError_$.set(new Error("No terminal selected"));return}this.runCommandError_$.set(null),this.runCommandLoading_$.set(!0);try{let r=yield this.terminal_AS.runCommand(e,t);this.runCommandError_$.set(null),r.interactive===!0&&typeof r.requestId=="string"?(this.interactiveRequestId_$.set(r.requestId),this.interactiveOutput_$.set("")):this.commandResults_$.update(i=>[...i,{output:r.output,success:r.success,error:r.error}])}catch(r){this.runCommandError_$.set(r)}finally{this.runCommandLoading_$.set(!1)}})}ngOnDestroy(){this.eventSubscription&&(this.eventSubscription.unsubscribe(),this.eventSubscription=null)}static \u0275fac=function(e){return new(e||n)};static \u0275prov=_({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();export{B as a};
2
- //# sourceMappingURL=chunk-HHQI3DLR.js.map
1
+ import{e as $}from"./chunk-UMJTXY32.js";import{I as h,p as S}from"./chunk-LIWUIPCY.js";import{C as u,aa as a,h as C,k as m,p as c,xb as y,y as _}from"./chunk-TBMJSIBB.js";var f=C(S());var T=(()=>{class n{baseUrl=`${h.api.baseUrl}/terminals`;http=u(y);getTerminals(){return c(this.http.get(this.baseUrl))}startTerminal(t){return c(this.http.post(`${this.baseUrl}/start`,{path:t.path},{headers:{"Content-Type":"application/json"}}))}runCommand(t,e){return c(this.http.post(`${this.baseUrl}/${encodeURIComponent(t)}/command`,{action:e.action,command:e.command,code:e.code},{headers:{"Content-Type":"application/json"}}))}deleteTerminal(t){return c(this.http.delete(`${this.baseUrl}/${encodeURIComponent(t)}`))}closeTerminal(t){return c(this.http.post(`${this.baseUrl}/${encodeURIComponent(t)}/close`,{},{headers:{"Content-Type":"application/json"}}))}static \u0275fac=function(e){return new(e||n)};static \u0275prov=_({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var R="terminal:list",A="terminal:list:result",q="terminal:start",b="terminal:start:result",p="terminal:attach",N="terminal:command-result",M="terminal:command-output",k="terminal:command-stdin";function E(n){if(n==null||typeof n!="object")return null;let s=n,t=typeof s.terminalId=="string"?s.terminalId:"";if(!t.trim())return null;let e=s.type,r=e==="exec"||e==="cc-runner"||e==="ca-runner"?e:void 0;return{_id:typeof s._id=="string"?s._id:void 0,terminalId:t.trim(),path:typeof s.path=="string"?s.path:void 0,status:typeof s.status=="string"?s.status:void 0,__created:typeof s.__created=="string"?s.__created:void 0,__lastModified:typeof s.__lastModified=="string"?s.__lastModified:void 0,type:r,sessionId:typeof s.sessionId=="string"?s.sessionId:void 0,command:typeof s.command=="string"?s.command:void 0}}var B=(()=>{class n{terminals_$=a([]);terminalsLoading_$=a(!1);terminalsLoadError_$=a(null);selectedTerminalId_$=a("");commandResults_$=a([]);startLoading_$=a(!1);startError_$=a(null);runCommandLoading_$=a(!1);runCommandError_$=a(null);interactiveRequestId_$=a(null);interactiveOutput_$=a("");eventSubscription=null;terminal_AS=u(T);socket_CS=u($);constructor(){this.eventSubscription=this.socket_CS.event$.subscribe(t=>{if(t.event===A){let r=(Array.isArray(t.payload.terminals)?t.payload.terminals:[]).map(i=>E(i)).filter(i=>i!==null);this.terminals_$.set(r),this.terminalsLoading_$.set(!1),t.payload.error!==void 0&&t.payload.error!==null&&this.terminalsLoadError_$.set(t.payload.error)}else if(t.event===b){if(this.startLoading_$.set(!1),t.payload.error!==void 0&&t.payload.error!==null){this.startError_$.set(t.payload.error);return}this.startError_$.set(null);let e=typeof t.payload.terminalId=="string"?t.payload.terminalId:"",r=typeof t.payload.path=="string"?t.payload.path:"";e&&(this.terminals_$.update(i=>i.some(l=>l.terminalId===e)?i:[{terminalId:e,path:r,status:t.payload.status},...i]),this.selectedTerminalId_$.set(e),this.socket_CS.emit(p,{terminalId:e}),this.commandResults_$.set([]),this.clearInteractiveState())}else if(t.event===N){if((typeof t.payload.terminalId=="string"?t.payload.terminalId:"")!==this.selectedTerminalId_$())return;let r=t.payload.interactive===!0,i=t.payload.interactiveEnd===!0,o=typeof t.payload.exitCode=="number"?t.payload.exitCode:void 0;if(r){let d=typeof t.payload.requestId=="string"?t.payload.requestId:"";this.interactiveRequestId_$.set(d||null),this.interactiveOutput_$.set("");return}if(i){let d=this.interactiveOutput_$();this.interactiveRequestId_$.set(null),this.interactiveOutput_$.set("");let g=o!==void 0?`Session ended. Exit code: ${o}`:"Session ended.";this.commandResults_$.update(I=>[...d.trim().length>0?[...I,{output:d.trim(),success:!0}]:I,{output:g,success:!0,interactiveEnd:!0,exitCode:o}]);return}let l={requestId:typeof t.payload.requestId=="string"?t.payload.requestId:void 0,output:typeof t.payload.output=="string"?t.payload.output:"",success:t.payload.success===!0,error:typeof t.payload.error=="string"?t.payload.error:void 0};this.commandResults_$.update(d=>[...d,l])}else if(t.event===M){let e=typeof t.payload.terminalId=="string"?t.payload.terminalId.trim():"",r=typeof t.payload.requestId=="string"?String(t.payload.requestId).trim():"",i=typeof t.payload.chunk=="string"?t.payload.chunk:"",o=(this.interactiveRequestId_$()??"").trim(),l=(this.selectedTerminalId_$()??"").trim();if(o.length===0||r!==o){h.production||f.DyFM_Log.info("CCAP_Terminal | command-output kisz\u0171rve: requestId mismatch",{requestId:r,currentRequestId:o});return}if(e.length>0&&l.length>0&&e!==l){h.production||f.DyFM_Log.info("CCAP_Terminal | command-output kisz\u0171rve: terminalId mismatch",{terminalId:e,selectedId:l});return}this.interactiveOutput_$.update(d=>d+i)}})}requestTerminalListViaSocket(){this.terminalsLoadError_$.set(null),this.terminalsLoading_$.set(!0),this.socket_CS.emit(R,{})}loadTerminalsRest(){return m(this,null,function*(){this.terminalsLoadError_$.set(null),this.terminalsLoading_$.set(!0);try{let t=yield this.terminal_AS.getTerminals(),r=(Array.isArray(t?.terminals)?t.terminals:[]).map(i=>E(i)).filter(i=>i!==null);this.terminals_$.set(r)}catch(t){this.terminalsLoadError_$.set(t)}finally{this.terminalsLoading_$.set(!1)}})}startTerminalRest(t){return m(this,null,function*(){this.startError_$.set(null),this.startLoading_$.set(!0);try{let e=yield this.terminal_AS.startTerminal(t);this.startError_$.set(null),e.terminalId&&(this.terminals_$.update(r=>r.some(o=>o.terminalId===e.terminalId)?r:[{terminalId:e.terminalId,path:e.path,status:e.status},...r]),this.selectedTerminalId_$.set(e.terminalId),this.socket_CS.emit(p,{terminalId:e.terminalId}),this.commandResults_$.set([]),this.clearInteractiveState())}catch(e){this.startError_$.set(e)}finally{this.startLoading_$.set(!1)}})}startTerminalViaSocket(t){this.startError_$.set(null),this.startLoading_$.set(!0),this.socket_CS.emit(q,{path:t.path})}sendStdin(t){let e=this.selectedTerminalId_$(),r=this.interactiveRequestId_$();!e||!r||this.socket_CS.emit(k,{terminalId:e,requestId:r,data:typeof t=="string"?t:""})}clearInteractiveState(){this.interactiveRequestId_$.set(null),this.interactiveOutput_$.set("")}attachToTerminal(t){this.selectedTerminalId_$.set(t),this.socket_CS.emit(p,{terminalId:t}),this.commandResults_$.set([]),this.clearInteractiveState()}deleteTerminal(t){return m(this,null,function*(){let e=(t??"").trim();if(e){this.runCommandError_$.set(null);try{yield this.terminal_AS.deleteTerminal(e),this.terminals_$.update(r=>r.filter(i=>(i.terminalId??"")!==e)),this.selectedTerminalId_$()===e&&(this.selectedTerminalId_$.set(""),this.clearInteractiveState())}catch(r){this.runCommandError_$.set(r)}}})}closeTerminal(t){return m(this,null,function*(){let e=(t??"").trim();if(e){this.runCommandError_$.set(null);try{yield this.terminal_AS.closeTerminal(e),this.selectedTerminalId_$()===e&&this.clearInteractiveState(),yield this.loadTerminalsRest()}catch(r){this.runCommandError_$.set(r)}}})}runCommand(t){return m(this,null,function*(){let e=this.selectedTerminalId_$();if(!e){this.runCommandError_$.set(new Error("No terminal selected"));return}this.runCommandError_$.set(null),this.runCommandLoading_$.set(!0);try{let r=yield this.terminal_AS.runCommand(e,t);this.runCommandError_$.set(null),r.interactive===!0&&typeof r.requestId=="string"?(this.interactiveRequestId_$.set(r.requestId),this.interactiveOutput_$.set("")):this.commandResults_$.update(i=>[...i,{output:r.output,success:r.success,error:r.error}])}catch(r){this.runCommandError_$.set(r)}finally{this.runCommandLoading_$.set(!1)}})}ngOnDestroy(){this.eventSubscription&&(this.eventSubscription.unsubscribe(),this.eventSubscription=null)}static \u0275fac=function(e){return new(e||n)};static \u0275prov=_({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();export{B as a};
2
+ //# sourceMappingURL=chunk-64JB44FZ.js.map
@@ -1,2 +1,2 @@
1
- import{f as l}from"./chunk-EOV7J7CJ.js";import{N as p}from"./chunk-CQYMS3RY.js";import{C as i,aa as n,k as o,y as c}from"./chunk-TBMJSIBB.js";var d=(()=>{class a{settingsGeneral_DS=i(p);pm_AS=i(l);workspacePathPickerOptions_$=n([]);refreshWorkspacePathPickerOptions(){return o(this,null,function*(){yield this.settingsGeneral_DS.loadDefaultWorkspacePath();let t=this.settingsGeneral_DS.defaultWorkspacePath_$().trim(),e=[];t&&e.push({label:"Default Workspace",path:t}),this.workspacePathPickerOptions_$.set(e);try{let f=(yield this.pm_AS.listProjects()).projects.filter(s=>!!s.localPath&&!!s.isActive).map(s=>({label:s.name||"Unnamed Project",path:s.localPath??""})),r=[];t&&r.push({label:"Default Workspace",path:t}),r.push(...f),this.workspacePathPickerOptions_$.set(r)}catch{}})}resolveInitialWorkspacePath(t){let e=this.settingsGeneral_DS.defaultWorkspacePath_$().trim();return t.lastWorkspacePath.trim()||e}static \u0275fac=function(e){return new(e||a)};static \u0275prov=c({token:a,factory:a.\u0275fac,providedIn:"root"})}return a})();export{d as a};
2
- //# sourceMappingURL=chunk-JI75WYQ4.js.map
1
+ import{f as l}from"./chunk-NEHXBC2T.js";import{N as p}from"./chunk-LIWUIPCY.js";import{C as i,aa as n,k as o,y as c}from"./chunk-TBMJSIBB.js";var d=(()=>{class a{settingsGeneral_DS=i(p);pm_AS=i(l);workspacePathPickerOptions_$=n([]);refreshWorkspacePathPickerOptions(){return o(this,null,function*(){yield this.settingsGeneral_DS.loadDefaultWorkspacePath();let t=this.settingsGeneral_DS.defaultWorkspacePath_$().trim(),e=[];t&&e.push({label:"Default Workspace",path:t}),this.workspacePathPickerOptions_$.set(e);try{let f=(yield this.pm_AS.listProjects()).projects.filter(s=>!!s.localPath&&!!s.isActive).map(s=>({label:s.name||"Unnamed Project",path:s.localPath??""})),r=[];t&&r.push({label:"Default Workspace",path:t}),r.push(...f),this.workspacePathPickerOptions_$.set(r)}catch{}})}resolveInitialWorkspacePath(t){let e=this.settingsGeneral_DS.defaultWorkspacePath_$().trim();return t.lastWorkspacePath.trim()||e}static \u0275fac=function(e){return new(e||a)};static \u0275prov=c({token:a,factory:a.\u0275fac,providedIn:"root"})}return a})();export{d as a};
2
+ //# sourceMappingURL=chunk-6HPHF5RC.js.map
@@ -1,2 +1,2 @@
1
- import{a as p}from"./chunk-L3KT4OJM.js";import{p as m}from"./chunk-CQYMS3RY.js";import{G as i,h as s}from"./chunk-TBMJSIBB.js";var l=(()=>{class r{transform(n){return p.getDurationBand(n)}static \u0275fac=function(t){return new(t||r)};static \u0275pipe=i({name:"ccapDurationBand",type:r,pure:!0,standalone:!0})}return r})();var f=s(m()),a=f.second,u=60*a,c=60*u,o=class{static formatGenerationTimeMs(e){if(e==null||typeof e!="number"||Number.isNaN(e))return"\u2013";if(e<a)return`${Math.round(e)} ms`;if(e<u){let t=e/a;return t>=10||t%1===0?`${Math.round(t)} s`:`${t.toFixed(1)} s`}if(e<c){let t=e/u;return t>=10||t%1===0?`${Math.round(t)} min`:`${t.toFixed(1)} min`}let n=e/c;return n>=10||n%1===0?`${Math.round(n)} h`:`${n.toFixed(1)} h`}};var $=(()=>{class r{transform(n){return o.formatGenerationTimeMs(n)}static \u0275fac=function(t){return new(t||r)};static \u0275pipe=i({name:"ccapGenerationTime",type:r,pure:!0,standalone:!0})}return r})();export{l as a,$ as b};
2
- //# sourceMappingURL=chunk-YK6JIDE3.js.map
1
+ import{a as p}from"./chunk-3WKHCCFW.js";import{p as m}from"./chunk-LIWUIPCY.js";import{G as i,h as s}from"./chunk-TBMJSIBB.js";var l=(()=>{class r{transform(n){return p.getDurationBand(n)}static \u0275fac=function(t){return new(t||r)};static \u0275pipe=i({name:"ccapDurationBand",type:r,pure:!0,standalone:!0})}return r})();var f=s(m()),a=f.second,u=60*a,c=60*u,o=class{static formatGenerationTimeMs(e){if(e==null||typeof e!="number"||Number.isNaN(e))return"\u2013";if(e<a)return`${Math.round(e)} ms`;if(e<u){let t=e/a;return t>=10||t%1===0?`${Math.round(t)} s`:`${t.toFixed(1)} s`}if(e<c){let t=e/u;return t>=10||t%1===0?`${Math.round(t)} min`:`${t.toFixed(1)} min`}let n=e/c;return n>=10||n%1===0?`${Math.round(n)} h`:`${n.toFixed(1)} h`}};var $=(()=>{class r{transform(n){return o.formatGenerationTimeMs(n)}static \u0275fac=function(t){return new(t||r)};static \u0275pipe=i({name:"ccapGenerationTime",type:r,pure:!0,standalone:!0})}return r})();export{l as a,$ as b};
2
+ //# sourceMappingURL=chunk-72HMFKGM.js.map
@@ -1,2 +1,2 @@
1
- import{I as a}from"./chunk-CQYMS3RY.js";import{C as n,p as t,xb as o,y as i}from"./chunk-TBMJSIBB.js";var m=(()=>{class r{baseUrl=`${a.api.baseUrl}/setup`;http=n(o);getSetupStatus(){return t(this.http.get(`${this.baseUrl}/status`))}getVaultStatus(){return t(this.http.get(`${this.baseUrl}/vault-status`))}getVaultKeyGenerate(){return t(this.http.get(`${this.baseUrl}/vault-key/generate`))}postVaultKey(e){return t(this.http.post(`${this.baseUrl}/vault-key`,{vaultKey:e}))}postSetup(e){return t(this.http.post(this.baseUrl,e))}putSetupConfig(e){let s=`${a.api.baseUrl}/settings`;return t(this.http.put(`${s}/config`,e))}static \u0275fac=function(s){return new(s||r)};static \u0275prov=i({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();export{m as a};
2
- //# sourceMappingURL=chunk-XNZ5PN4L.js.map
1
+ import{I as a}from"./chunk-LIWUIPCY.js";import{C as n,p as t,xb as o,y as i}from"./chunk-TBMJSIBB.js";var m=(()=>{class r{baseUrl=`${a.api.baseUrl}/setup`;http=n(o);getSetupStatus(){return t(this.http.get(`${this.baseUrl}/status`))}getVaultStatus(){return t(this.http.get(`${this.baseUrl}/vault-status`))}getVaultKeyGenerate(){return t(this.http.get(`${this.baseUrl}/vault-key/generate`))}postVaultKey(e){return t(this.http.post(`${this.baseUrl}/vault-key`,{vaultKey:e}))}postSetup(e){return t(this.http.post(this.baseUrl,e))}putSetupConfig(e){let s=`${a.api.baseUrl}/settings`;return t(this.http.put(`${s}/config`,e))}static \u0275fac=function(s){return new(s||r)};static \u0275prov=i({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();export{m as a};
2
+ //# sourceMappingURL=chunk-7JK6S5F7.js.map
@@ -1,2 +1,2 @@
1
- import{I as d}from"./chunk-CQYMS3RY.js";import{C as o,p as n,xb as l,y as s}from"./chunk-TBMJSIBB.js";var p=(()=>{class r{baseUrl=`${d.api.baseUrl}/model-registry`;http=o(l);getList(e){let t=new URLSearchParams;e?.provider!==void 0&&e.provider.trim()!==""&&t.set("provider",e.provider.trim()),e?.modelName!==void 0&&e.modelName.trim()!==""&&t.set("modelName",e.modelName.trim()),e?.enabled===!0?t.set("enabled","true"):e?.enabled===!1&&t.set("enabled","false"),e?.inactiveProviderOnly===!0&&t.set("inactiveProviderOnly","true");let i=t.toString(),u=`${this.baseUrl}/list${i!==""?`?${i}`:""}`;return n(this.http.get(u))}sync(){return n(this.http.post(`${this.baseUrl}/sync`,{}))}setEnabled(e,t){return n(this.http.patch(`${this.baseUrl}/patch/${encodeURIComponent(e)}`,{enabled:t}))}patchEntry(e,t){let i={};return t.enabled!==void 0&&(i.enabled=t.enabled),t.reasoningLevelForTest!==void 0&&(i.reasoningLevelForTest=t.reasoningLevelForTest),t.capabilities!==void 0&&(i.capabilities=t.capabilities),n(this.http.patch(`${this.baseUrl}/patch/${encodeURIComponent(e)}`,i))}bulkSetEnabled(e,t){return n(this.http.patch(`${this.baseUrl}/bulk-enabled`,{ids:e,enabled:t}))}deleteEntry(e){return n(this.http.delete(`${this.baseUrl}/entry/${encodeURIComponent(e)}`))}deleteEntries(e){return n(this.http.post(`${this.baseUrl}/delete-entries`,{ids:e}))}getTestResults(e){let t=new URLSearchParams;e.provider&&t.set("provider",e.provider),e.model&&t.set("model",e.model),e.limit!==void 0&&t.set("limit",String(e.limit)),e.reasoningLevel!==void 0&&e.reasoningLevel.trim()!==""&&t.set("reasoningLevel",e.reasoningLevel.trim());let i=t.toString();return n(this.http.get(`${this.baseUrl}/test-results${i?`?${i}`:""}`))}getPrompts(){return n(this.http.get(`${this.baseUrl}/prompts`))}startTestRun(e,t){let i={modelIds:e};return t!==void 0&&t.length>0&&(i.promptIds=t),n(this.http.post(`${this.baseUrl}/test-run`,i))}getTestRunStatus(e){return n(this.http.get(`${this.baseUrl}/test-run/${e}`))}static \u0275fac=function(t){return new(t||r)};static \u0275prov=s({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();export{p as a};
2
- //# sourceMappingURL=chunk-7Y5EUJ7W.js.map
1
+ import{I as d}from"./chunk-LIWUIPCY.js";import{C as o,p as n,xb as l,y as s}from"./chunk-TBMJSIBB.js";var p=(()=>{class r{baseUrl=`${d.api.baseUrl}/model-registry`;http=o(l);getList(e){let t=new URLSearchParams;e?.provider!==void 0&&e.provider.trim()!==""&&t.set("provider",e.provider.trim()),e?.modelName!==void 0&&e.modelName.trim()!==""&&t.set("modelName",e.modelName.trim()),e?.enabled===!0?t.set("enabled","true"):e?.enabled===!1&&t.set("enabled","false"),e?.inactiveProviderOnly===!0&&t.set("inactiveProviderOnly","true");let i=t.toString(),u=`${this.baseUrl}/list${i!==""?`?${i}`:""}`;return n(this.http.get(u))}sync(){return n(this.http.post(`${this.baseUrl}/sync`,{}))}setEnabled(e,t){return n(this.http.patch(`${this.baseUrl}/patch/${encodeURIComponent(e)}`,{enabled:t}))}patchEntry(e,t){let i={};return t.enabled!==void 0&&(i.enabled=t.enabled),t.reasoningLevelForTest!==void 0&&(i.reasoningLevelForTest=t.reasoningLevelForTest),t.capabilities!==void 0&&(i.capabilities=t.capabilities),n(this.http.patch(`${this.baseUrl}/patch/${encodeURIComponent(e)}`,i))}bulkSetEnabled(e,t){return n(this.http.patch(`${this.baseUrl}/bulk-enabled`,{ids:e,enabled:t}))}deleteEntry(e){return n(this.http.delete(`${this.baseUrl}/entry/${encodeURIComponent(e)}`))}deleteEntries(e){return n(this.http.post(`${this.baseUrl}/delete-entries`,{ids:e}))}getTestResults(e){let t=new URLSearchParams;e.provider&&t.set("provider",e.provider),e.model&&t.set("model",e.model),e.limit!==void 0&&t.set("limit",String(e.limit)),e.reasoningLevel!==void 0&&e.reasoningLevel.trim()!==""&&t.set("reasoningLevel",e.reasoningLevel.trim());let i=t.toString();return n(this.http.get(`${this.baseUrl}/test-results${i?`?${i}`:""}`))}getPrompts(){return n(this.http.get(`${this.baseUrl}/prompts`))}startTestRun(e,t){let i={modelIds:e};return t!==void 0&&t.length>0&&(i.promptIds=t),n(this.http.post(`${this.baseUrl}/test-run`,i))}getTestRunStatus(e){return n(this.http.get(`${this.baseUrl}/test-run/${e}`))}static \u0275fac=function(t){return new(t||r)};static \u0275prov=s({token:r,factory:r.\u0275fac,providedIn:"root"})}return r})();export{p as a};
2
+ //# sourceMappingURL=chunk-7YXOX4OA.js.map
@@ -1,2 +1,2 @@
1
- import{a as g}from"./chunk-3HTRATOL.js";import{a as u}from"./chunk-U6WJH5D3.js";import{L as c,t as l}from"./chunk-CQYMS3RY.js";import{C as d,aa as n,k as i,p as r,y as a}from"./chunk-TBMJSIBB.js";var D=(()=>{class o{documents_$=n([]);selectedDocument_$=n(null);selectedChunkCount_$=n(0);isLoading_$=n(!1);uploadStatus_$=n("idle");error_$=n(null);defaultCorpusDocumentId_$=n("");registryEntries_$=n([]);registryLoading_$=n(!1);selectedRegistryEntryId_$=n("");indexingStatus_$=n(null);indexingActive_$=n(!1);indexingPollInterval=null;docLibrary_AS=d(g);erg_AS=d(u);settings_AS=d(c);loadDocuments(){return i(this,null,function*(){this.isLoading_$.set(!0),this.error_$.set(null);try{let e=yield r(this.docLibrary_AS.listDocuments());this.documents_$.set(e.items)}catch(e){let t=e instanceof Error?e.message:"Dokumentum-lista bet\xF6lt\xE9se sikertelen.";this.error_$.set(t)}finally{this.isLoading_$.set(!1)}})}loadDocumentDetail(e){return i(this,null,function*(){this.isLoading_$.set(!0),this.error_$.set(null);try{let t=yield r(this.docLibrary_AS.getDocument({documentId:e.documentId}));this.selectedDocument_$.set(t.document),this.selectedChunkCount_$.set(t.chunkCount)}catch(t){let s=t instanceof Error?t.message:"Dokumentum detail bet\xF6lt\xE9se sikertelen.";this.error_$.set(s)}finally{this.isLoading_$.set(!1)}})}uploadDocument(e){return i(this,null,function*(){this.uploadStatus_$.set("uploading"),this.error_$.set(null);let t=new FormData;t.append("file",e.file),t.append("name",e.name),e.description!==void 0&&e.description.trim()!==""&&t.append("description",e.description.trim());try{let s=yield r(this.docLibrary_AS.uploadDocument({formData:t}));return this.uploadStatus_$.set("done"),s}catch(s){let m=s instanceof Error?s.message:"Dokumentum felt\xF6lt\xE9se sikertelen.";throw this.error_$.set(m),this.uploadStatus_$.set("error"),s}})}deleteDocument(e){return i(this,null,function*(){this.error_$.set(null);try{yield r(this.docLibrary_AS.deleteDocument({documentId:e.documentId}));let t=this.documents_$();this.documents_$.set(t.filter(s=>s.id!==e.documentId))}catch(t){let s=t instanceof Error?t.message:"Dokumentum t\xF6rl\xE9se sikertelen.";throw this.error_$.set(s),t}})}loadRegistryEntries(){return i(this,null,function*(){this.registryLoading_$.set(!0);try{let e=yield this.erg_AS.getList({enabled:!0});this.registryEntries_$.set(e.list)}catch(e){let t=e instanceof Error?e.message:"Registry lista bet\xF6lt\xE9se sikertelen.";this.error_$.set(t)}finally{this.registryLoading_$.set(!1)}})}startIndexing(e){return i(this,null,function*(){this.error_$.set(null);try{yield r(this.docLibrary_AS.startIndexing({documentId:e.documentId,registryEntryId:e.registryEntryId})),this.indexingActive_$.set(!0),this.startIndexingPolling({documentId:e.documentId,registryEntryId:e.registryEntryId})}catch(t){let s=t instanceof Error?t.message:"Indexel\xE9s ind\xEDt\xE1sa sikertelen.";throw this.error_$.set(s),t}})}loadIndexingStatus(e){return i(this,null,function*(){try{let t=yield r(this.docLibrary_AS.getIndexingStatus({documentId:e.documentId,registryEntryId:e.registryEntryId}));this.indexingStatus_$.set(t)}catch{this.indexingStatus_$.set(null)}})}startIndexingPolling(e){this.stopIndexingPolling();let t=1500;this.indexingPollInterval=setInterval(()=>{this.pollIndexingStatus(e)},t),this.pollIndexingStatus(e)}pollIndexingStatus(e){return i(this,null,function*(){try{let t=yield r(this.docLibrary_AS.getIndexingStatus({documentId:e.documentId,registryEntryId:e.registryEntryId}));this.indexingStatus_$.set(t),t.total>0&&t.pending===0&&this.stopIndexingPolling()}catch{this.stopIndexingPolling()}})}stopIndexingPolling(){this.indexingPollInterval!==null&&(clearInterval(this.indexingPollInterval),this.indexingPollInterval=null),this.indexingActive_$.set(!1)}ngOnDestroy(){this.stopIndexingPolling()}loadDefaultCorpusDocumentId(){return i(this,null,function*(){try{let e=yield this.settings_AS.getSection(l.modelTesting),t=typeof e.embeddingTestCorpusDocumentId=="string"?e.embeddingTestCorpusDocumentId:"";this.defaultCorpusDocumentId_$.set(t)}catch{}})}setDefaultCorpusDocumentId(e){return i(this,null,function*(){this.error_$.set(null);try{let t=yield this.settings_AS.getSection(l.modelTesting),s={testAnalysisProvider:t.testAnalysisProvider??"open-ai",testAnalysisModel:t.testAnalysisModel??"",embeddingTestCorpusDocumentId:e.documentId};yield this.settings_AS.saveSection(l.modelTesting,s),this.defaultCorpusDocumentId_$.set(e.documentId)}catch(t){let s=t instanceof Error?t.message:"Default corpus be\xE1ll\xEDt\xE1sa sikertelen.";throw this.error_$.set(s),t}})}static \u0275fac=function(t){return new(t||o)};static \u0275prov=a({token:o,factory:o.\u0275fac})}return o})();export{D as a};
2
- //# sourceMappingURL=chunk-DQUAB65V.js.map
1
+ import{a as g}from"./chunk-JAZXW22Q.js";import{a as u}from"./chunk-CTYD3KKT.js";import{L as c,t as l}from"./chunk-LIWUIPCY.js";import{C as d,aa as n,k as i,p as r,y as a}from"./chunk-TBMJSIBB.js";var D=(()=>{class o{documents_$=n([]);selectedDocument_$=n(null);selectedChunkCount_$=n(0);isLoading_$=n(!1);uploadStatus_$=n("idle");error_$=n(null);defaultCorpusDocumentId_$=n("");registryEntries_$=n([]);registryLoading_$=n(!1);selectedRegistryEntryId_$=n("");indexingStatus_$=n(null);indexingActive_$=n(!1);indexingPollInterval=null;docLibrary_AS=d(g);erg_AS=d(u);settings_AS=d(c);loadDocuments(){return i(this,null,function*(){this.isLoading_$.set(!0),this.error_$.set(null);try{let e=yield r(this.docLibrary_AS.listDocuments());this.documents_$.set(e.items)}catch(e){let t=e instanceof Error?e.message:"Dokumentum-lista bet\xF6lt\xE9se sikertelen.";this.error_$.set(t)}finally{this.isLoading_$.set(!1)}})}loadDocumentDetail(e){return i(this,null,function*(){this.isLoading_$.set(!0),this.error_$.set(null);try{let t=yield r(this.docLibrary_AS.getDocument({documentId:e.documentId}));this.selectedDocument_$.set(t.document),this.selectedChunkCount_$.set(t.chunkCount)}catch(t){let s=t instanceof Error?t.message:"Dokumentum detail bet\xF6lt\xE9se sikertelen.";this.error_$.set(s)}finally{this.isLoading_$.set(!1)}})}uploadDocument(e){return i(this,null,function*(){this.uploadStatus_$.set("uploading"),this.error_$.set(null);let t=new FormData;t.append("file",e.file),t.append("name",e.name),e.description!==void 0&&e.description.trim()!==""&&t.append("description",e.description.trim());try{let s=yield r(this.docLibrary_AS.uploadDocument({formData:t}));return this.uploadStatus_$.set("done"),s}catch(s){let m=s instanceof Error?s.message:"Dokumentum felt\xF6lt\xE9se sikertelen.";throw this.error_$.set(m),this.uploadStatus_$.set("error"),s}})}deleteDocument(e){return i(this,null,function*(){this.error_$.set(null);try{yield r(this.docLibrary_AS.deleteDocument({documentId:e.documentId}));let t=this.documents_$();this.documents_$.set(t.filter(s=>s.id!==e.documentId))}catch(t){let s=t instanceof Error?t.message:"Dokumentum t\xF6rl\xE9se sikertelen.";throw this.error_$.set(s),t}})}loadRegistryEntries(){return i(this,null,function*(){this.registryLoading_$.set(!0);try{let e=yield this.erg_AS.getList({enabled:!0});this.registryEntries_$.set(e.list)}catch(e){let t=e instanceof Error?e.message:"Registry lista bet\xF6lt\xE9se sikertelen.";this.error_$.set(t)}finally{this.registryLoading_$.set(!1)}})}startIndexing(e){return i(this,null,function*(){this.error_$.set(null);try{yield r(this.docLibrary_AS.startIndexing({documentId:e.documentId,registryEntryId:e.registryEntryId})),this.indexingActive_$.set(!0),this.startIndexingPolling({documentId:e.documentId,registryEntryId:e.registryEntryId})}catch(t){let s=t instanceof Error?t.message:"Indexel\xE9s ind\xEDt\xE1sa sikertelen.";throw this.error_$.set(s),t}})}loadIndexingStatus(e){return i(this,null,function*(){try{let t=yield r(this.docLibrary_AS.getIndexingStatus({documentId:e.documentId,registryEntryId:e.registryEntryId}));this.indexingStatus_$.set(t)}catch{this.indexingStatus_$.set(null)}})}startIndexingPolling(e){this.stopIndexingPolling();let t=1500;this.indexingPollInterval=setInterval(()=>{this.pollIndexingStatus(e)},t),this.pollIndexingStatus(e)}pollIndexingStatus(e){return i(this,null,function*(){try{let t=yield r(this.docLibrary_AS.getIndexingStatus({documentId:e.documentId,registryEntryId:e.registryEntryId}));this.indexingStatus_$.set(t),t.total>0&&t.pending===0&&this.stopIndexingPolling()}catch{this.stopIndexingPolling()}})}stopIndexingPolling(){this.indexingPollInterval!==null&&(clearInterval(this.indexingPollInterval),this.indexingPollInterval=null),this.indexingActive_$.set(!1)}ngOnDestroy(){this.stopIndexingPolling()}loadDefaultCorpusDocumentId(){return i(this,null,function*(){try{let e=yield this.settings_AS.getSection(l.modelTesting),t=typeof e.embeddingTestCorpusDocumentId=="string"?e.embeddingTestCorpusDocumentId:"";this.defaultCorpusDocumentId_$.set(t)}catch{}})}setDefaultCorpusDocumentId(e){return i(this,null,function*(){this.error_$.set(null);try{let t=yield this.settings_AS.getSection(l.modelTesting),s={testAnalysisProvider:t.testAnalysisProvider??"open-ai",testAnalysisModel:t.testAnalysisModel??"",embeddingTestCorpusDocumentId:e.documentId};yield this.settings_AS.saveSection(l.modelTesting,s),this.defaultCorpusDocumentId_$.set(e.documentId)}catch(t){let s=t instanceof Error?t.message:"Default corpus be\xE1ll\xEDt\xE1sa sikertelen.";throw this.error_$.set(s),t}})}static \u0275fac=function(t){return new(t||o)};static \u0275prov=a({token:o,factory:o.\u0275fac})}return o})();export{D as a};
2
+ //# sourceMappingURL=chunk-ADZTPYLS.js.map