@futdevpro/ccap 1.1.2984 → 1.1.2988

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 (177) hide show
  1. package/client-dist/{agent-instances.module-3ZLYZHLL.js → agent-instances.module-EZ3HLJRW.js} +2 -2
  2. package/client-dist/{ca.module-P2UO7VDD.js → ca.module-2NK5JZOQ.js} +2 -2
  3. package/client-dist/{cc-usage-dashboard.component-EJBH6IPF.js → cc-usage-dashboard.component-SLFNE2NX.js} +2 -2
  4. package/client-dist/{cc.module-SNBJVQML.js → cc.module-F7LHWQ3A.js} +2 -2
  5. package/client-dist/{chunk-LPGJBXIP.js → chunk-2CZLQZAC.js} +2 -2
  6. package/client-dist/{chunk-LEU5OG5E.js → chunk-35HAXCRL.js} +2 -2
  7. package/client-dist/{chunk-7WYIRD2K.js → chunk-4JZNUGDT.js} +2 -2
  8. package/client-dist/{chunk-6EGMSOHK.js → chunk-4ORBCWDZ.js} +2 -2
  9. package/client-dist/{chunk-DDMTMAFP.js → chunk-565H5Q7X.js} +2 -2
  10. package/client-dist/{chunk-3PGPW7FD.js → chunk-5GCMRTM2.js} +2 -2
  11. package/client-dist/{chunk-T2QHD2ZT.js → chunk-66YFYBOC.js} +2 -2
  12. package/client-dist/{chunk-YCLYE6AO.js → chunk-6CNO7CIR.js} +2 -2
  13. package/client-dist/{chunk-PUL2ZX7M.js → chunk-6IVNYSN4.js} +2 -2
  14. package/client-dist/{chunk-II7FANWT.js → chunk-6UTINZN6.js} +2 -2
  15. package/client-dist/{chunk-25BSNI43.js → chunk-7FDRE6FK.js} +2 -2
  16. package/client-dist/{chunk-DNFIYNPY.js → chunk-ACLAVYA7.js} +2 -2
  17. package/client-dist/{chunk-VJDDNWVB.js → chunk-ALRGHRMX.js} +2 -2
  18. package/client-dist/{chunk-DI3MPF5S.js → chunk-CJXAN5QP.js} +2 -2
  19. package/client-dist/{chunk-UFZQTWMV.js → chunk-CK4L2E6A.js} +2 -2
  20. package/client-dist/{chunk-JEYZMCOF.js → chunk-CPOWA47I.js} +2 -2
  21. package/client-dist/{chunk-KGVWTBSJ.js → chunk-CROOTWQ4.js} +2 -2
  22. package/client-dist/{chunk-WZADCIKD.js → chunk-CZK7PL4V.js} +2 -2
  23. package/client-dist/{chunk-X5MKTTVI.js → chunk-CZVHJQVK.js} +2 -2
  24. package/client-dist/{chunk-NDYDOLIU.js → chunk-EZQXUBC4.js} +2 -2
  25. package/client-dist/{chunk-I2WPA2HC.js → chunk-HK3NW3BA.js} +2 -2
  26. package/client-dist/{chunk-5RUZ6KJ5.js → chunk-HKO57F7B.js} +2 -2
  27. package/client-dist/{chunk-F7EU6GIH.js → chunk-I24ZZ4G3.js} +2 -2
  28. package/client-dist/{chunk-BLCYR3M4.js → chunk-I5LYGLY6.js} +2 -2
  29. package/client-dist/{chunk-OBYLGCFU.js → chunk-IMV4JDM4.js} +2 -2
  30. package/client-dist/{chunk-VM7HJMEE.js → chunk-KOFPH2WQ.js} +2 -2
  31. package/client-dist/{chunk-KXBT37MI.js → chunk-L2E2MBF2.js} +2 -2
  32. package/client-dist/{chunk-W5PNM77N.js → chunk-LNDWBFCV.js} +2 -2
  33. package/client-dist/{chunk-UVK2HWVQ.js → chunk-LOUIZXXC.js} +2 -2
  34. package/client-dist/{chunk-IHNJ5P7R.js → chunk-LP2E4KMW.js} +2 -2
  35. package/client-dist/{chunk-54H5R6JD.js → chunk-M53FIKSO.js} +2 -2
  36. package/client-dist/{chunk-XV57BACA.js → chunk-MIWIPUJL.js} +2 -2
  37. package/client-dist/{chunk-2DUU6CLZ.js → chunk-OJPFXL3T.js} +2 -2
  38. package/client-dist/{chunk-2GKUUPA3.js → chunk-PUVXCR3N.js} +2 -2
  39. package/client-dist/{chunk-5AZYUY2I.js → chunk-QM4JVUVN.js} +2 -2
  40. package/client-dist/{chunk-7VTSWPS6.js → chunk-QYAK3VTE.js} +2 -2
  41. package/client-dist/{chunk-G2C6MMPZ.js → chunk-RJEB2CGY.js} +2 -2
  42. package/client-dist/{chunk-56A4Z3VI.js → chunk-RQSPYGNE.js} +2 -2
  43. package/client-dist/{chunk-524HNDKB.js → chunk-RTAONMUA.js} +2 -2
  44. package/client-dist/{chunk-7JK6WJH4.js → chunk-SAWE7K3L.js} +2 -2
  45. package/client-dist/{chunk-7EWLWNUM.js → chunk-SIC2VUD2.js} +2 -2
  46. package/client-dist/{chunk-ADXSOA7I.js → chunk-SMBU53NX.js} +2 -2
  47. package/client-dist/{chunk-KDCNCCS4.js → chunk-SUAZOLRE.js} +2 -2
  48. package/client-dist/{chunk-WQJGSP26.js → chunk-SYXQFJNU.js} +2 -2
  49. package/client-dist/{chunk-WAKGC2JV.js → chunk-TWUEQMEF.js} +2 -2
  50. package/client-dist/{chunk-3SKHN6CV.js → chunk-VUMU4S4O.js} +2 -2
  51. package/client-dist/{chunk-4BDYCKEN.js → chunk-W4ICO22C.js} +2 -2
  52. package/client-dist/{chunk-4NI7SWFJ.js → chunk-W66474CE.js} +2 -2
  53. package/client-dist/{chunk-X4TJER6K.js → chunk-WKXTPGKW.js} +2 -2
  54. package/client-dist/{chunk-UAP53AU2.js → chunk-X3CIXD4W.js} +2 -2
  55. package/client-dist/{chunk-ZHS2VBCO.js → chunk-XC26T3JJ.js} +2 -2
  56. package/client-dist/{chunk-3K2O7PQQ.js → chunk-XDP5GOHT.js} +2 -2
  57. package/client-dist/{chunk-P4BBEPVX.js → chunk-XO6LJ5A6.js} +2 -2
  58. package/client-dist/{chunk-DXEUZEHM.js → chunk-ZI46JBHS.js} +2 -2
  59. package/client-dist/{chunk-VTI4UAO7.js → chunk-ZJ3DCODZ.js} +2 -2
  60. package/client-dist/{chunk-VTI4UAO7.js.map → chunk-ZJ3DCODZ.js.map} +1 -1
  61. package/client-dist/{chunk-EDEN2H5A.js → chunk-ZRLAS63L.js} +2 -2
  62. package/client-dist/{consultant.module-4VJDHLCF.js → consultant.module-ZRSJ2JPM.js} +2 -2
  63. package/client-dist/{crd.module-TPELVI4V.js → crd.module-TDLM6M2Z.js} +2 -2
  64. package/client-dist/{dashboard.module-WBXYFVIX.js → dashboard.module-VSWWQDEU.js} +2 -2
  65. package/client-dist/{do.module-QNTWU77F.js → do.module-CCOHMJLG.js} +2 -2
  66. package/client-dist/{document-library.module-ZMOC6NI5.js → document-library.module-QLZ4ZUUG.js} +2 -2
  67. package/client-dist/{embedding-eval.module-CYQKRRFE.js → embedding-eval.module-6KORAJ7D.js} +2 -2
  68. package/client-dist/{embedding-registry.module-RQS375G3.js → embedding-registry.module-GJJ5G2Y7.js} +2 -2
  69. package/client-dist/{err.module-P2X6CJ7U.js → err.module-4GLVR2GJ.js} +2 -2
  70. package/client-dist/{feedback.module-AXLJ4A5J.js → feedback.module-U6CCHRVZ.js} +2 -2
  71. package/client-dist/{host-runtime-mcp.module-KZTR6FDB.js → host-runtime-mcp.module-EV5GZKTL.js} +2 -2
  72. package/client-dist/index.html +1 -1
  73. package/client-dist/{live-dev-pipeline.module-4V5I75CQ.js → live-dev-pipeline.module-MWG23KAS.js} +2 -2
  74. package/client-dist/{logs.module-Z6FFDCMF.js → logs.module-YNDMPESQ.js} +2 -2
  75. package/client-dist/{main-O2GTRDZO.js → main-OGUDQHPL.js} +3 -3
  76. package/client-dist/{master-control-remote-poc.module-CFNAQZBI.js → master-control-remote-poc.module-37OSJYRO.js} +2 -2
  77. package/client-dist/{mobile-app.module-WXYUHAEA.js → mobile-app.module-2DXC7DFY.js} +2 -2
  78. package/client-dist/{model-registry.module-WPTYGKHC.js → model-registry.module-Z64FRB5O.js} +2 -2
  79. package/client-dist/{oc.module-M7AJBD6K.js → oc.module-6SHIJS3R.js} +2 -2
  80. package/client-dist/{orc.module-PD3JEE23.js → orc.module-NBZZGOV3.js} +2 -2
  81. package/client-dist/{project-management.module-DJDDZ4WF.js → project-management.module-TR33UVCV.js} +2 -2
  82. package/client-dist/project-source-routed.module-ZZ7SNTUN.js +2 -0
  83. package/client-dist/{scheduler.module-A4EK4LRY.js → scheduler.module-M3LHP2DW.js} +2 -2
  84. package/client-dist/{session.module-DNLRI5LR.js → session.module-FIZ5NYKK.js} +2 -2
  85. package/client-dist/{set.module-UDQXLUFX.js → set.module-4E6WAYIQ.js} +2 -2
  86. package/client-dist/{setup.module-U62VG2GJ.js → setup.module-2AUXXLIR.js} +2 -2
  87. package/client-dist/{terminals.module-DZOI3NYS.js → terminals.module-GCGUOFVO.js} +2 -2
  88. package/client-dist/{voice-notes-poc.module-EECKBW65.js → voice-notes-poc.module-6LVDT3MA.js} +2 -2
  89. package/client-dist/{wfs.module-DISKW4UO.js → wfs.module-XQGZNMEP.js} +2 -2
  90. package/package.json +1 -1
  91. package/client-dist/project-source-routed.module-EQ5JFCS2.js +0 -2
  92. /package/client-dist/{agent-instances.module-3ZLYZHLL.js.map → agent-instances.module-EZ3HLJRW.js.map} +0 -0
  93. /package/client-dist/{ca.module-P2UO7VDD.js.map → ca.module-2NK5JZOQ.js.map} +0 -0
  94. /package/client-dist/{cc-usage-dashboard.component-EJBH6IPF.js.map → cc-usage-dashboard.component-SLFNE2NX.js.map} +0 -0
  95. /package/client-dist/{cc.module-SNBJVQML.js.map → cc.module-F7LHWQ3A.js.map} +0 -0
  96. /package/client-dist/{chunk-LPGJBXIP.js.map → chunk-2CZLQZAC.js.map} +0 -0
  97. /package/client-dist/{chunk-LEU5OG5E.js.map → chunk-35HAXCRL.js.map} +0 -0
  98. /package/client-dist/{chunk-7WYIRD2K.js.map → chunk-4JZNUGDT.js.map} +0 -0
  99. /package/client-dist/{chunk-6EGMSOHK.js.map → chunk-4ORBCWDZ.js.map} +0 -0
  100. /package/client-dist/{chunk-DDMTMAFP.js.map → chunk-565H5Q7X.js.map} +0 -0
  101. /package/client-dist/{chunk-3PGPW7FD.js.map → chunk-5GCMRTM2.js.map} +0 -0
  102. /package/client-dist/{chunk-T2QHD2ZT.js.map → chunk-66YFYBOC.js.map} +0 -0
  103. /package/client-dist/{chunk-YCLYE6AO.js.map → chunk-6CNO7CIR.js.map} +0 -0
  104. /package/client-dist/{chunk-PUL2ZX7M.js.map → chunk-6IVNYSN4.js.map} +0 -0
  105. /package/client-dist/{chunk-II7FANWT.js.map → chunk-6UTINZN6.js.map} +0 -0
  106. /package/client-dist/{chunk-25BSNI43.js.map → chunk-7FDRE6FK.js.map} +0 -0
  107. /package/client-dist/{chunk-DNFIYNPY.js.map → chunk-ACLAVYA7.js.map} +0 -0
  108. /package/client-dist/{chunk-VJDDNWVB.js.map → chunk-ALRGHRMX.js.map} +0 -0
  109. /package/client-dist/{chunk-DI3MPF5S.js.map → chunk-CJXAN5QP.js.map} +0 -0
  110. /package/client-dist/{chunk-UFZQTWMV.js.map → chunk-CK4L2E6A.js.map} +0 -0
  111. /package/client-dist/{chunk-JEYZMCOF.js.map → chunk-CPOWA47I.js.map} +0 -0
  112. /package/client-dist/{chunk-KGVWTBSJ.js.map → chunk-CROOTWQ4.js.map} +0 -0
  113. /package/client-dist/{chunk-WZADCIKD.js.map → chunk-CZK7PL4V.js.map} +0 -0
  114. /package/client-dist/{chunk-X5MKTTVI.js.map → chunk-CZVHJQVK.js.map} +0 -0
  115. /package/client-dist/{chunk-NDYDOLIU.js.map → chunk-EZQXUBC4.js.map} +0 -0
  116. /package/client-dist/{chunk-I2WPA2HC.js.map → chunk-HK3NW3BA.js.map} +0 -0
  117. /package/client-dist/{chunk-5RUZ6KJ5.js.map → chunk-HKO57F7B.js.map} +0 -0
  118. /package/client-dist/{chunk-F7EU6GIH.js.map → chunk-I24ZZ4G3.js.map} +0 -0
  119. /package/client-dist/{chunk-BLCYR3M4.js.map → chunk-I5LYGLY6.js.map} +0 -0
  120. /package/client-dist/{chunk-OBYLGCFU.js.map → chunk-IMV4JDM4.js.map} +0 -0
  121. /package/client-dist/{chunk-VM7HJMEE.js.map → chunk-KOFPH2WQ.js.map} +0 -0
  122. /package/client-dist/{chunk-KXBT37MI.js.map → chunk-L2E2MBF2.js.map} +0 -0
  123. /package/client-dist/{chunk-W5PNM77N.js.map → chunk-LNDWBFCV.js.map} +0 -0
  124. /package/client-dist/{chunk-UVK2HWVQ.js.map → chunk-LOUIZXXC.js.map} +0 -0
  125. /package/client-dist/{chunk-IHNJ5P7R.js.map → chunk-LP2E4KMW.js.map} +0 -0
  126. /package/client-dist/{chunk-54H5R6JD.js.map → chunk-M53FIKSO.js.map} +0 -0
  127. /package/client-dist/{chunk-XV57BACA.js.map → chunk-MIWIPUJL.js.map} +0 -0
  128. /package/client-dist/{chunk-2DUU6CLZ.js.map → chunk-OJPFXL3T.js.map} +0 -0
  129. /package/client-dist/{chunk-2GKUUPA3.js.map → chunk-PUVXCR3N.js.map} +0 -0
  130. /package/client-dist/{chunk-5AZYUY2I.js.map → chunk-QM4JVUVN.js.map} +0 -0
  131. /package/client-dist/{chunk-7VTSWPS6.js.map → chunk-QYAK3VTE.js.map} +0 -0
  132. /package/client-dist/{chunk-G2C6MMPZ.js.map → chunk-RJEB2CGY.js.map} +0 -0
  133. /package/client-dist/{chunk-56A4Z3VI.js.map → chunk-RQSPYGNE.js.map} +0 -0
  134. /package/client-dist/{chunk-524HNDKB.js.map → chunk-RTAONMUA.js.map} +0 -0
  135. /package/client-dist/{chunk-7JK6WJH4.js.map → chunk-SAWE7K3L.js.map} +0 -0
  136. /package/client-dist/{chunk-7EWLWNUM.js.map → chunk-SIC2VUD2.js.map} +0 -0
  137. /package/client-dist/{chunk-ADXSOA7I.js.map → chunk-SMBU53NX.js.map} +0 -0
  138. /package/client-dist/{chunk-KDCNCCS4.js.map → chunk-SUAZOLRE.js.map} +0 -0
  139. /package/client-dist/{chunk-WQJGSP26.js.map → chunk-SYXQFJNU.js.map} +0 -0
  140. /package/client-dist/{chunk-WAKGC2JV.js.map → chunk-TWUEQMEF.js.map} +0 -0
  141. /package/client-dist/{chunk-3SKHN6CV.js.map → chunk-VUMU4S4O.js.map} +0 -0
  142. /package/client-dist/{chunk-4BDYCKEN.js.map → chunk-W4ICO22C.js.map} +0 -0
  143. /package/client-dist/{chunk-4NI7SWFJ.js.map → chunk-W66474CE.js.map} +0 -0
  144. /package/client-dist/{chunk-X4TJER6K.js.map → chunk-WKXTPGKW.js.map} +0 -0
  145. /package/client-dist/{chunk-UAP53AU2.js.map → chunk-X3CIXD4W.js.map} +0 -0
  146. /package/client-dist/{chunk-ZHS2VBCO.js.map → chunk-XC26T3JJ.js.map} +0 -0
  147. /package/client-dist/{chunk-3K2O7PQQ.js.map → chunk-XDP5GOHT.js.map} +0 -0
  148. /package/client-dist/{chunk-P4BBEPVX.js.map → chunk-XO6LJ5A6.js.map} +0 -0
  149. /package/client-dist/{chunk-DXEUZEHM.js.map → chunk-ZI46JBHS.js.map} +0 -0
  150. /package/client-dist/{chunk-EDEN2H5A.js.map → chunk-ZRLAS63L.js.map} +0 -0
  151. /package/client-dist/{consultant.module-4VJDHLCF.js.map → consultant.module-ZRSJ2JPM.js.map} +0 -0
  152. /package/client-dist/{crd.module-TPELVI4V.js.map → crd.module-TDLM6M2Z.js.map} +0 -0
  153. /package/client-dist/{dashboard.module-WBXYFVIX.js.map → dashboard.module-VSWWQDEU.js.map} +0 -0
  154. /package/client-dist/{do.module-QNTWU77F.js.map → do.module-CCOHMJLG.js.map} +0 -0
  155. /package/client-dist/{document-library.module-ZMOC6NI5.js.map → document-library.module-QLZ4ZUUG.js.map} +0 -0
  156. /package/client-dist/{embedding-eval.module-CYQKRRFE.js.map → embedding-eval.module-6KORAJ7D.js.map} +0 -0
  157. /package/client-dist/{embedding-registry.module-RQS375G3.js.map → embedding-registry.module-GJJ5G2Y7.js.map} +0 -0
  158. /package/client-dist/{err.module-P2X6CJ7U.js.map → err.module-4GLVR2GJ.js.map} +0 -0
  159. /package/client-dist/{feedback.module-AXLJ4A5J.js.map → feedback.module-U6CCHRVZ.js.map} +0 -0
  160. /package/client-dist/{host-runtime-mcp.module-KZTR6FDB.js.map → host-runtime-mcp.module-EV5GZKTL.js.map} +0 -0
  161. /package/client-dist/{live-dev-pipeline.module-4V5I75CQ.js.map → live-dev-pipeline.module-MWG23KAS.js.map} +0 -0
  162. /package/client-dist/{logs.module-Z6FFDCMF.js.map → logs.module-YNDMPESQ.js.map} +0 -0
  163. /package/client-dist/{main-O2GTRDZO.js.map → main-OGUDQHPL.js.map} +0 -0
  164. /package/client-dist/{master-control-remote-poc.module-CFNAQZBI.js.map → master-control-remote-poc.module-37OSJYRO.js.map} +0 -0
  165. /package/client-dist/{mobile-app.module-WXYUHAEA.js.map → mobile-app.module-2DXC7DFY.js.map} +0 -0
  166. /package/client-dist/{model-registry.module-WPTYGKHC.js.map → model-registry.module-Z64FRB5O.js.map} +0 -0
  167. /package/client-dist/{oc.module-M7AJBD6K.js.map → oc.module-6SHIJS3R.js.map} +0 -0
  168. /package/client-dist/{orc.module-PD3JEE23.js.map → orc.module-NBZZGOV3.js.map} +0 -0
  169. /package/client-dist/{project-management.module-DJDDZ4WF.js.map → project-management.module-TR33UVCV.js.map} +0 -0
  170. /package/client-dist/{project-source-routed.module-EQ5JFCS2.js.map → project-source-routed.module-ZZ7SNTUN.js.map} +0 -0
  171. /package/client-dist/{scheduler.module-A4EK4LRY.js.map → scheduler.module-M3LHP2DW.js.map} +0 -0
  172. /package/client-dist/{session.module-DNLRI5LR.js.map → session.module-FIZ5NYKK.js.map} +0 -0
  173. /package/client-dist/{set.module-UDQXLUFX.js.map → set.module-4E6WAYIQ.js.map} +0 -0
  174. /package/client-dist/{setup.module-U62VG2GJ.js.map → setup.module-2AUXXLIR.js.map} +0 -0
  175. /package/client-dist/{terminals.module-DZOI3NYS.js.map → terminals.module-GCGUOFVO.js.map} +0 -0
  176. /package/client-dist/{voice-notes-poc.module-EECKBW65.js.map → voice-notes-poc.module-6LVDT3MA.js.map} +0 -0
  177. /package/client-dist/{wfs.module-DISKW4UO.js.map → wfs.module-XQGZNMEP.js.map} +0 -0
@@ -1,4 +1,4 @@
1
- import{a as Bn}from"./chunk-7JK6WJH4.js";import{p as Gn,q as On}from"./chunk-4NI7SWFJ.js";import"./chunk-LEU5OG5E.js";import{a as Ne,b as bt}from"./chunk-L44637OO.js";import{a as zn,b as Kn}from"./chunk-COVCHZOZ.js";import{a as Dn,b as Pn}from"./chunk-UFZQTWMV.js";import{b as An}from"./chunk-WAKGC2JV.js";import"./chunk-VJDDNWVB.js";import"./chunk-UFBTR2BG.js";import"./chunk-54H5R6JD.js";import{b as gt}from"./chunk-3K2O7PQQ.js";import"./chunk-6Y7O2W4H.js";import{d as St}from"./chunk-2DUU6CLZ.js";import"./chunk-6EGMSOHK.js";import{a as vt}from"./chunk-KXBT37MI.js";import{a as Fn,b as pe,c as Pe,g as Ln}from"./chunk-VM7HJMEE.js";import{a as xt}from"./chunk-3PGPW7FD.js";import"./chunk-7JUIBZEE.js";import"./chunk-C7XPBJTG.js";import{h as Vn,i as $e}from"./chunk-DDMTMAFP.js";import"./chunk-WPHEQXWB.js";import{a as _t}from"./chunk-P4BBEPVX.js";import"./chunk-EDEN2H5A.js";import"./chunk-ZHS2VBCO.js";import{a as Tn,b as ft}from"./chunk-56A4Z3VI.js";import"./chunk-X5MKTTVI.js";import"./chunk-Q2NVIOCY.js";import"./chunk-7VTSWPS6.js";import"./chunk-UAP53AU2.js";import{a as je}from"./chunk-NDYDOLIU.js";import{a as $n}from"./chunk-V3VQWJQL.js";import{a as Rn}from"./chunk-3SKHN6CV.js";import"./chunk-X4TJER6K.js";import"./chunk-DNFIYNPY.js";import{a as In}from"./chunk-ZBTWQZNB.js";import{a as Oe}from"./chunk-FLAJXIYW.js";import{b as ne,c as Z,f as J,g as Sn,h as xn,i as Y,j as vn,k as ke,n as oe,o as re,p as ae,q as we,r as De,v as bn}from"./chunk-EO4DNTT4.js";import{a as Cn,j as ie,k as U}from"./chunk-KDCNCCS4.js";import{a as Fe}from"./chunk-5UPNU54P.js";import{c as hn,d as Mn,e as kn,f as wn,j as ut}from"./chunk-T2QHD2ZT.js";import{H as me,I as Ge,K as En,L as yn,M as K,N as pt,p as Me,r as Ie,s as Ae,t as f,u as se,v as Be,x as Ve}from"./chunk-VTI4UAO7.js";import{$a as cn,C as w,D as j,E as nn,Fa as s,Fb as _n,Ga as M,Ha as E,Hb as Ke,Ia as Se,Ib as gn,J as S,Ja as dt,K as x,Kb as fn,L as tt,La as rn,M as jt,Ma as xe,N as G,Na as ve,Oa as be,Pa as he,Q as nt,Qa as an,Ra as Wt,Ta as sn,U as at,Ua as ln,Va as dn,X as ye,Z as l,a as g,aa as A,b as y,bb as mn,da as b,fa as st,ga as p,h as Ee,hb as $,ia as q,j as de,ja as Nt,k as C,la as _,ma as ce,na as fe,oa as I,p as te,pa as V,pb as pn,qa as r,ra as o,sa as T,ua as P,ub as ct,va as u,vb as mt,wa as m,wb as un,xa as on,xb as ze,y as R,ya as lt,z as tn}from"./chunk-TBMJSIBB.js";var Ct=class{slaves=[];setupSlaves(){this.slaves.forEach(d=>{d.setupMaster(this)})}};var jn=Ee(Me());var We=class{static buildAgentEmailSectionPayloadFromForm(d){let e={},n=d.emailSmtpHost.trim();n.length>0&&(e.smtpHost=n);let t=(typeof d.emailSmtpPort=="string"?d.emailSmtpPort:d.emailSmtpPort!=null?String(d.emailSmtpPort):"").trim();t.length>0&&(e.smtpPort=t);let a=d.emailImapHost.trim();a.length>0&&(e.imapHost=a);let c=(typeof d.emailImapPort=="string"?d.emailImapPort:d.emailImapPort!=null?String(d.emailImapPort):"").trim();c.length>0&&(e.imapPort=c);let v=d.emailUser.trim();v.length>0&&(e.user=v);let h=d.emailFrom.trim();return h.length>0&&(e.fromAddress=h),d.emailPassword.trim()&&(e.password=d.emailPassword.trim()),e}};var Et=class{static parseAgentEmailGetSectionResponse(d){return wi(d)?{smtpHost:Le(d,"smtpHost"),smtpPort:Le(d,"smtpPort"),imapHost:Le(d,"imapHost"),imapPort:Le(d,"imapPort"),user:Le(d,"user"),passwordMasked:Le(d,"passwordMasked"),fromAddress:Le(d,"fromAddress")}:null}};function wi(i){return i!==null&&typeof i=="object"&&!Array.isArray(i)}function Le(i,d){let e=i[d];return typeof e=="string"?e:typeof e=="number"&&!Number.isNaN(e)?String(e):""}var N=class{static getSettingsErrorResult(d){if(d instanceof un){let e=d.error,n=null;hn.isRecord(e)?typeof e.error=="string"?n=e.error:e.error!=null?n=String(e.error):typeof e.message=="string"&&(n=e.message):typeof e=="string"&&(n=e);let t=En.getHttpErrorMessage(d,n),a=JSON.stringify({status:d.status,statusText:d.statusText,url:d.url,responseBody:d.error,message:d.message},null,2);return{message:t,stack:a}}return d instanceof Error?{message:d.message,stack:d.stack??""}:{message:String(d),stack:""}}};var Ut=[{id:"gmail",label:"Apply Default Gmail Settings",host:"smtp.gmail.com",port:"587",imapHost:"imap.gmail.com",imapPort:"993"},{id:"outlook",label:"Apply Default Outlook / Office 365 Settings",host:"smtp.office365.com",port:"587",imapHost:"outlook.office365.com",imapPort:"993"}],yt=(()=>{class i extends K{setup_AS=w(_t);section_$=A({form:{emailSmtpHost:"",emailSmtpPort:"",emailImapHost:"",emailImapPort:"",emailImapHostMasked:"",emailImapPortDisplay:"",emailUser:"",emailPassword:"",emailPasswordMasked:"",emailFrom:"",emailSmtpHostMasked:"",emailSmtpPortDisplay:"",emailUserMasked:"",emailProviderPresets:Ut,generatedVaultKey:"",vaultKeyCustom:""},runtime:{vaultKeyGenerateError:"",vaultKeySaveInProgress:!1,vaultKeySaveSuccess:!1,emailPasswordEditMode:!1,emailTestLoading:!1,emailTestLastResult:null}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}testAgentEmailConnection(){return C(this,null,function*(){this.updateRuntime({emailTestLoading:!0,emailTestLastResult:null});try{let e=yield this.settings_AS.postTestAgentEmail();this.updateRuntime({emailTestLastResult:e})}catch(e){jn.DyFM_Error.logSimple("CCAP_SettingsAgentEmail_DS | Agent email connection test failed",e);let n=K.getErrorMessage(e);this.updateRuntime({emailTestLastResult:{ok:!1,smtp:{ok:!1,error:n},imap:{ok:!1,error:n}}})}finally{this.updateRuntime({emailTestLoading:!1})}})}generateVaultKey(){return C(this,null,function*(){this.updateRuntime({vaultKeyGenerateError:""}),this.updateForm({generatedVaultKey:""});try{let e=yield this.setup_AS.getVaultKeyGenerate();this.updateForm({generatedVaultKey:e.vaultKey})}catch(e){this.updateRuntime({vaultKeyGenerateError:N.getSettingsErrorResult(e).message})}})}copyVaultKeyToClipboard(){return C(this,null,function*(){let e=this.getVaultKeyPayloadForSave();if(e)try{yield navigator.clipboard.writeText(e)}catch{}})}getVaultKeyPayloadForSave(){let e=this.section_$().form.generatedVaultKey.trim(),n=this.section_$().form.vaultKeyCustom.trim();return e.length>0?e:n}saveVaultKeyOnServer(){return C(this,null,function*(){let e=this.getVaultKeyPayloadForSave();if(e){this.updateRuntime({vaultKeyGenerateError:"",vaultKeySaveSuccess:!1,vaultKeySaveInProgress:!0});try{yield this.setup_AS.postVaultKey(e),this.updateRuntime({vaultKeySaveSuccess:!0,vaultKeySaveInProgress:!1})}catch(n){this.updateRuntime({vaultKeyGenerateError:N.getSettingsErrorResult(n).message,vaultKeySaveInProgress:!1})}}})}applyEmailProviderPreset(e){let n=this.section_$().form.emailProviderPresets.find(v=>v.id===e);if(!n)return;let t=(n.imapHost??"").trim(),a=(n.imapPort??"").trim(),c={emailSmtpHost:n.host,emailSmtpPort:n.port};t.length>0&&(c.emailImapHost=t),a.length>0&&(c.emailImapPort=a),this.updateForm(c),this.master?.bumpDigest()}updateAgentEmailForm(e){this.updateForm(e),this.master?.bumpDigest()}startEmailPasswordEdit(){this.updateRuntime({emailPasswordEditMode:!0}),this.updateForm({emailPassword:""})}save(){return C(this,null,function*(){let e=yield de(i.prototype,this,"save").call(this);return e.success&&(this.updateRuntime({emailPasswordEditMode:!1}),this.updateForm({emailPassword:""})),e})}getSectionId(){return f.agentEmail}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.agentEmail),n=Et.parseAgentEmailGetSectionResponse(e);if(n==null){this.setSection({form:y(g({},this.section_$().form),{emailSmtpHostMasked:"",emailSmtpPortDisplay:"",emailImapHostMasked:"",emailImapPortDisplay:"",emailUserMasked:"",emailPasswordMasked:"",emailProviderPresets:Ut}),runtime:y(g({},this.section_$().runtime),{emailPasswordEditMode:!1})});return}this.setSection({form:{emailSmtpHost:n.smtpHost,emailSmtpPort:n.smtpPort,emailImapHost:n.imapHost,emailImapPort:n.imapPort,emailImapHostMasked:n.imapHost,emailImapPortDisplay:n.imapPort,emailUser:n.user,emailPassword:"",emailFrom:n.fromAddress,emailSmtpHostMasked:n.smtpHost,emailSmtpPortDisplay:n.smtpPort,emailUserMasked:n.user,emailPasswordMasked:n.passwordMasked,emailProviderPresets:Ut,generatedVaultKey:this.section_$().form.generatedVaultKey,vaultKeyCustom:this.section_$().form.vaultKeyCustom},runtime:y(g({},this.section_$().runtime),{emailPasswordEditMode:!1})})})}buildSaveBody(){return We.buildAgentEmailSectionPayloadFromForm(this.section_$().form)}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Nn=Ee(Me());var Ue=class{static buildLlmProvidersSectionPayloadFromForm(d){let e=d.anthropicLlm,n=d.googleLlm,t=d.deepseekLlm,a=d.fdpaiLlm;return{openAiSettings:{enabled:d.enabledLlmProviders.includes("open-ai"),defaultModel:d.openaiModel,apiKeyRaw:d.openaiApiKey.trim()||void 0},anthropicSettings:{enabled:e.enabled,defaultModel:e.defaultModel.trim(),apiKeyRaw:e.apiKey.trim()||void 0},googleSettings:{enabled:n.enabled,defaultModel:n.defaultModel.trim(),apiKeyRaw:n.apiKey.trim()||void 0},deepseekSettings:{enabled:t.enabled,defaultModel:t.defaultModel.trim(),apiKeyRaw:t.apiKey.trim()||void 0},fdpaiSettings:{enabled:a.enabled,defaultModel:a.defaultModel.trim(),baseUrl:a.baseUrl.trim(),apiKeyRaw:a.apiKey.trim()||void 0},localAiSettings:d.localAiEntries.map(c=>({name:(()=>{let v=c.label?.trim()??"";return v.length>0?v:"Local AI"})(),key:je.parseLocalAiKeyFromInstanceId({instanceId:c.id}),baseUrl:c.baseUrl.trim(),enabled:c.enabled,defaultModel:c.model.trim(),pattern:"openai"})),defaultLlmProvider:d.defaultLlmProvider,callTypeDefaults:d.callTypeDefaults??void 0}}};function ht(){return{enabled:!1,defaultModel:"",baseUrl:"",apiKey:"",apiKeyMasked:""}}function Di(i){return i!=null&&typeof i=="object"&&!Array.isArray(i)}var Te=(()=>{class i extends K{section_$=A({form:{enabledLlmProviders:["open-ai"],openaiApiKey:"",openaiModel:"gpt-4o",localAiEntries:[],defaultLlmProvider:"open-ai",defaultLlmModel:"",openaiApiKeyMasked:"",anthropicLlm:ht(),googleLlm:ht(),deepseekLlm:ht(),fdpaiLlm:ht()},runtime:{openaiApiKeyEditMode:!1,testOpenAiInProgress:!1,testOpenAiSuccess:!1,testOpenAiMessage:"",openaiModelsList:[],loadOpenAiModelsInProgress:!1,openaiModelsLoadError:""}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}setUseOpenAi(e){let n=e?["open-ai"]:[];this.updateForm({enabledLlmProviders:n}),this.master?.bumpDigest()}startOpenaiApiKeyEdit(){this.updateRuntime({openaiApiKeyEditMode:!0}),this.updateForm({openaiApiKey:""})}loadOpenAiModels(){return C(this,null,function*(){this.updateRuntime({openaiModelsLoadError:"",loadOpenAiModelsInProgress:!0});let e=this.section_$();try{let n=yield this.settings_AS.postListLlmModels({providerId:"open-ai",apiKey:e.form.openaiApiKey.trim()||void 0,model:e.form.openaiModel.trim()||void 0});n.success?this.updateRuntime({openaiModelsList:n.models??[],loadOpenAiModelsInProgress:!1}):this.updateRuntime({openaiModelsList:[],openaiModelsLoadError:n.error??"Modelllista lek\xE9r\xE9se sikertelen.",loadOpenAiModelsInProgress:!1})}catch(n){this.updateRuntime({openaiModelsLoadError:N.getSettingsErrorResult(n).message,openaiModelsList:[],loadOpenAiModelsInProgress:!1})}})}loadLocalAiModelsForEntry(e){return C(this,null,function*(){let n=this.section_$(),t=n.form.localAiEntries.findIndex(c=>c.id===e.id);if(t<0)return;let a=n.form.localAiEntries.map((c,v)=>v===t?y(g({},c),{loadInProgress:!0,loadError:void 0}):c);this.updateForm({localAiEntries:a});try{let c=yield this.settings_AS.postListLlmModels({providerId:e.id,baseUrl:e.baseUrl.trim()||void 0}),h=this.section_$().form.localAiEntries.map((k,D)=>{if(D!==t)return k;if(c.success&&c.models?.length){let F=k.model;return F&&!(c.models??[]).includes(F)?F=c.models[0]??"":F||(F=c.models[0]??""),y(g({},k),{modelsList:c.models,loadError:void 0,loadInProgress:!1,model:F})}return y(g({},k),{modelsList:[],loadError:c.error??"Modelllista lek\xE9r\xE9se sikertelen.",loadInProgress:!1})});this.updateForm({localAiEntries:h})}catch(c){let v=N.getSettingsErrorResult(c),k=this.section_$().form.localAiEntries.map((D,F)=>F===t?y(g({},D),{loadError:v.message,loadInProgress:!1}):D);this.updateForm({localAiEntries:k})}})}testOpenAi(){return C(this,null,function*(){this.updateRuntime({testOpenAiInProgress:!0,testOpenAiMessage:""});let e=this.section_$();try{let n=yield this.settings_AS.postTestLlmProvider({providerId:"open-ai",apiKey:e.form.openaiApiKey.trim()||void 0,model:e.form.openaiModel.trim()||void 0});this.updateRuntime({testOpenAiInProgress:!1,testOpenAiSuccess:n.success,testOpenAiMessage:n.success?"Sikeres teszt.":n.error??"Ismeretlen hiba."})}catch(n){let t=N.getSettingsErrorResult(n);this.updateRuntime({testOpenAiInProgress:!1,testOpenAiSuccess:!1,testOpenAiMessage:t.message})}})}testLocalAiForEntry(e){return C(this,null,function*(){let n=this.section_$(),t=n.form.localAiEntries.findIndex(c=>c.id===e.id);if(t<0)return;let a=n.form.localAiEntries.map((c,v)=>v===t?y(g({},c),{testInProgress:!0,testMessage:""}):c);this.updateForm({localAiEntries:a});try{let c=yield this.settings_AS.postTestLlmProvider({providerId:e.id,baseUrl:e.baseUrl.trim()||void 0}),h=this.section_$().form.localAiEntries.map((k,D)=>D===t?y(g({},k),{testInProgress:!1,testSuccess:c.success,testMessage:c.success?"Sikeres teszt.":c.error??"Ismeretlen hiba."}):k);this.updateForm({localAiEntries:h})}catch(c){let v=N.getSettingsErrorResult(c),k=this.section_$().form.localAiEntries.map((D,F)=>F===t?y(g({},D),{testInProgress:!1,testSuccess:!1,testMessage:v.message}):D);this.updateForm({localAiEntries:k})}})}addLocalAiEntry(){let e=globalThis.crypto.randomUUID(),t={id:je.build({localAiKey:e}),baseUrl:"",model:"",enabled:!0,label:"Local AI"},a=this.section_$();this.updateForm({localAiEntries:[...a.form.localAiEntries,t]})}removeLocalAiEntry(e){let n=this.section_$();if(e<0||e>=n.form.localAiEntries.length)return;let t=n.form.localAiEntries.filter((a,c)=>c!==e);this.updateForm({localAiEntries:t})}updateLocalAiEntry(e,n){let t=this.section_$();if(e<0||e>=t.form.localAiEntries.length)return;let a=t.form.localAiEntries.map((c,v)=>v===e?g(g({},c),n):c);this.updateForm({localAiEntries:a})}getEnabledLlmProviderIds(){let e=this.section_$().form,n=[];e.enabledLlmProviders.includes("open-ai")&&n.push("open-ai"),e.anthropicLlm.enabled&&n.push("anthropic"),e.googleLlm.enabled&&n.push("google"),e.deepseekLlm.enabled&&n.push("deepseek"),e.fdpaiLlm.enabled&&n.push("fdp-ai");for(let t of e.localAiEntries)t.enabled&&n.push(t.id);return n.length===0&&n.push("open-ai"),n}getProviderDisplayLabel(e){let n=this.section_$().form.localAiEntries.map(t=>({id:t.id,label:t.label??""}));return $n.resolve(e,n)}updateLlmProvidersForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.llmProviders}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.llmProviders),n=e.openAiSettings,t=!1,a="gpt-4o",c="";if(Di(n)){t=n.enabled===!0;let L=n.defaultModel;typeof L=="string"&&(a=L);let H=n.apiKeyMasked;typeof H=="string"&&(c=H)}let v=Tn.readLlmCloudBucketsFromSectionResponse(e),k=(Array.isArray(e.localAiSettings)?e.localAiSettings:[]).filter(L=>L!=null&&typeof L=="object"&&!Array.isArray(L)).map(L=>{let W=(typeof L.key=="string"?L.key:"").trim();if(!W.length)return null;let O=typeof L.name=="string"?L.name.trim():"",Q=je.build({localAiKey:W}),et=O.length>0?O:"Local AI",ge=L.enabled!==!1;return{id:Q,baseUrl:(typeof L.baseUrl=="string"?L.baseUrl:"").trim(),model:(typeof L.defaultModel=="string"?L.defaultModel:"").trim(),label:et,enabled:ge}}).filter(L=>L!=null),D=t?["open-ai"]:[],F=typeof e.defaultLlmProvider=="string"?e.defaultLlmProvider:"open-ai",z="";if(F==="open-ai")z=a;else if(F==="anthropic")z=v.anthropicLlm.defaultModel;else if(F==="google")z=v.googleLlm.defaultModel;else if(F==="deepseek")z=v.deepseekLlm.defaultModel;else if(F==="fdp-ai")z=v.fdpaiLlm.defaultModel;else{let L=k.find(H=>H.id===F);L&&(z=L.model)}this.setSection({form:{enabledLlmProviders:D,openaiApiKey:"",openaiModel:a,localAiEntries:k,defaultLlmProvider:F,defaultLlmModel:z,openaiApiKeyMasked:c,anthropicLlm:y(g({},v.anthropicLlm),{apiKey:""}),googleLlm:y(g({},v.googleLlm),{apiKey:""}),deepseekLlm:y(g({},v.deepseekLlm),{apiKey:""}),fdpaiLlm:y(g({},v.fdpaiLlm),{apiKey:""}),callTypeDefaults:typeof e.callTypeDefaults=="object"&&e.callTypeDefaults?e.callTypeDefaults:void 0},runtime:this.section_$().runtime})})}save(){return C(this,null,function*(){let e=yield de(i.prototype,this,"save").call(this);return e.success&&(this.updateRuntime({openaiApiKeyEditMode:!1}),this.updateForm({openaiApiKey:""})),e})}buildSaveBody(){return Ue.buildLlmProvidersSectionPayloadFromForm(this.section_$().form)}buildSaveBodyForScope(e){let n=this.section_$().form,t={llmProvidersSaveScope:e};return e===Ie.openAi?(t.openAiSettings={enabled:n.enabledLlmProviders.includes("open-ai"),defaultModel:n.openaiModel,apiKeyRaw:n.openaiApiKey.trim()||void 0},t):e===Ie.localAi?(t.localAiSettings=n.localAiEntries.map(a=>{let c=a.label?.trim()??"";return{name:c.length>0?c:"Local AI",key:je.parseLocalAiKeyFromInstanceId({instanceId:a.id}),baseUrl:a.baseUrl.trim(),enabled:a.enabled,defaultModel:a.model.trim(),pattern:"openai"}}),t):(t.defaultLlmProvider=n.defaultLlmProvider,t.callTypeDefaults=n.callTypeDefaults??void 0,t)}saveWithScope(e){return C(this,null,function*(){this.saving_$.set(!0),this.saveError_$.set(null);try{let n=this.buildSaveBodyForScope(e),t=yield this.doSave(n);return t.success?(yield this.load(),e===Ie.openAi&&(this.updateRuntime({openaiApiKeyEditMode:!1}),this.updateForm({openaiApiKey:""}))):this.saveError_$.set(t.error??"Ment\xE9s sikertelen."),t}catch(n){Nn.DyFM_Error.logSimple(`${this.constructor.name} | saveWithScope failed`,n);let t=K.getErrorMessage(n);return this.saveError_$.set(t),{success:!1,error:t}}finally{this.saving_$.set(!1)}})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Mt=(()=>{class i extends K{section_$=A({form:{placeholderPhase:!1,allowAgentSecretGet:!1,substitutionEnabled:!1,allowedSecretKeysText:"",substitutionPlaceholderPrefix:""},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.secretVault}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.secretVault),n=e.allowedSecretKeysForAgent,t=Array.isArray(n)?n.filter(v=>typeof v=="string"):[],a=e.substitutionPlaceholderPrefix,c=typeof a=="string"?a:"";this.setSection({form:{placeholderPhase:e.placeholderPhase===!0,allowAgentSecretGet:e.allowAgentSecretGet===!0,substitutionEnabled:e.substitutionEnabled===!0,allowedSecretKeysText:t.join(", "),substitutionPlaceholderPrefix:c},runtime:{}})})}buildSaveBody(){let e=this.section_$().form,t=e.allowedSecretKeysText.split(",").map(a=>a.trim()).filter(a=>a.length>0);return{placeholderPhase:e.placeholderPhase,allowAgentSecretGet:e.allowAgentSecretGet,allowedSecretKeysForAgent:t,substitutionEnabled:e.substitutionEnabled,substitutionPlaceholderPrefix:e.substitutionPlaceholderPrefix.trim().length>0?e.substitutionPlaceholderPrefix.trim():void 0}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Wn=(()=>{class i{http=w(ze);baseUrl=`${Ge.api.baseUrl}/rag-sample`;postEmbedSmoke(e){return C(this,null,function*(){let n=e.sampleText.trim().length>0?e.sampleText.trim():"test";return te(this.http.post(`${this.baseUrl}/embed-smoke`,{sampleText:n}))})}static \u0275fac=function(n){return new(n||i)};static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Un=(()=>{class i extends K{ragSample_AS=w(Wn);static migratedDefaultEntryId="ccap-embedding-default";section_$=A({form:{defaultEntryId:i.migratedDefaultEntryId,entries:[{id:i.migratedDefaultEntryId,label:"Default",enabled:!0,embeddingBackend:"ollama",baseUrl:"",modelId:"",dimensions:"",apiKeyRaw:"",apiKeyMasked:""}]},runtime:{embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:"",embedApiKeyEditModeByEntryId:{},embeddingModelsListByEntryId:{},embeddingModelsListLoadingByEntryId:{},embeddingModelsListErrorByEntryId:{}}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.embedding}getSection_$(){return this.section_$}updateEmbeddingEntryById(e,n){let t=e.trim();t.length&&(this.section_$.update(a=>{let c=a.form.entries.findIndex(h=>h.id===t);if(c<0)return a;let v=[...a.form.entries];return v[c]=g(g({},v[c]),n),y(g({},a),{form:y(g({},a.form),{entries:v})})}),this.master?.bumpDigest())}getEmbeddingModelOptionsForEntry(e){let n=this.section_$().runtime.embeddingModelsListByEntryId[e.trim()];return n===void 0?[]:n}getDefaultEmbeddingModelOptions(){let e=this.section_$().form.defaultEntryId.trim();return e.length?this.getEmbeddingModelOptionsForEntry(e):[]}loadEmbeddingModelsForEntry(e){return C(this,null,function*(){let n=e.trim();if(!n.length)return;let t=this.section_$().form.entries.find(c=>c.id===n);if(t===void 0)return;this.updateRuntime({embeddingModelsListLoadingByEntryId:y(g({},this.section_$().runtime.embeddingModelsListLoadingByEntryId),{[n]:!0}),embeddingModelsListErrorByEntryId:y(g({},this.section_$().runtime.embeddingModelsListErrorByEntryId),{[n]:""})});let a=this.section_$().runtime.embedApiKeyEditModeByEntryId[t.id]===!0?t.apiKeyRaw.trim():"";try{let c=yield this.settings_AS.postListEmbeddingModels({embeddingBackend:t.embeddingBackend,baseUrl:t.baseUrl,apiKey:a.length>0?a:void 0,embeddingProfileId:n}),v=this.section_$().runtime;c.success===!0&&c.models!==void 0?this.updateRuntime({embeddingModelsListByEntryId:y(g({},v.embeddingModelsListByEntryId),{[n]:c.models}),embeddingModelsListLoadingByEntryId:y(g({},v.embeddingModelsListLoadingByEntryId),{[n]:!1})}):this.updateRuntime({embeddingModelsListErrorByEntryId:y(g({},v.embeddingModelsListErrorByEntryId),{[n]:c.error??"Ismeretlen hiba"}),embeddingModelsListByEntryId:y(g({},v.embeddingModelsListByEntryId),{[n]:[]}),embeddingModelsListLoadingByEntryId:y(g({},v.embeddingModelsListLoadingByEntryId),{[n]:!1})})}catch(c){let v=c instanceof Error?c.message:"Modell lista sikertelen.",h=this.section_$().runtime;this.updateRuntime({embeddingModelsListErrorByEntryId:y(g({},h.embeddingModelsListErrorByEntryId),{[n]:v}),embeddingModelsListByEntryId:y(g({},h.embeddingModelsListByEntryId),{[n]:[]}),embeddingModelsListLoadingByEntryId:y(g({},h.embeddingModelsListLoadingByEntryId),{[n]:!1})})}})}updateEmbeddingEntryAtIndex(e,n){this.section_$.update(t=>{let a=[...t.form.entries];return e<0||e>=a.length?t:(a[e]=g(g({},a[e]),n),y(g({},t),{form:y(g({},t.form),{entries:a})}))})}addEmbeddingEntry(){let e=globalThis.crypto.randomUUID();this.section_$.update(n=>{let t={id:e,label:"\xDAj embedding provider",enabled:!0,embeddingBackend:"ollama",baseUrl:"",modelId:"",dimensions:"",apiKeyRaw:"",apiKeyMasked:""},a=[...n.form.entries,t],c=n.form.defaultEntryId;return a.some(v=>v.id===c)||(c=a[0].id),y(g({},n),{form:{defaultEntryId:c,entries:a}})})}removeEmbeddingEntryAtIndex(e){this.section_$.update(n=>{if(n.form.entries.length<=1||e<0||e>=n.form.entries.length)return n;let t=n.form.entries[e],a=n.form.entries.filter((z,L)=>L!==e),c=n.form.defaultEntryId;c===t.id&&(c=a[0].id);let v=g({},n.runtime),h=g({},v.embedApiKeyEditModeByEntryId);delete h[t.id],v.embedApiKeyEditModeByEntryId=h;let k=g({},v.embeddingModelsListByEntryId);delete k[t.id],v.embeddingModelsListByEntryId=k;let D=g({},v.embeddingModelsListLoadingByEntryId);delete D[t.id],v.embeddingModelsListLoadingByEntryId=D;let F=g({},v.embeddingModelsListErrorByEntryId);return delete F[t.id],v.embeddingModelsListErrorByEntryId=F,y(g({},n),{form:{defaultEntryId:c,entries:a},runtime:v})})}startEmbedApiKeyEdit(e){this.section_$.update(n=>y(g({},n),{runtime:y(g({},n.runtime),{embedApiKeyEditModeByEntryId:y(g({},n.runtime.embedApiKeyEditModeByEntryId),{[e]:!0})})}))}clearEmbedApiKeyEditModes(){this.section_$.update(e=>y(g({},e),{runtime:y(g({},e.runtime),{embedApiKeyEditModeByEntryId:{}})}))}closeEmbedApiKeyEdit(e){this.section_$.update(n=>{let t=g({},n.runtime.embedApiKeyEditModeByEntryId);return delete t[e],y(g({},n),{runtime:y(g({},n.runtime),{embedApiKeyEditModeByEntryId:t})})})}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.embedding),n=e.entries,t;if(Array.isArray(n)){let a=e.defaultEntryId,c=typeof a=="string"&&a.trim().length>0?a.trim():i.migratedDefaultEntryId,v=n.map(h=>i.parseEntryFromServerRecord(h));if(v.length===0)t=i.defaultFormFromFlatResponse(e);else{let h=c;v.some(k=>k.id===h)||(h=v[0].id),t={defaultEntryId:h,entries:v}}}else t=i.defaultFormFromFlatResponse(e);this.setSection({form:t,runtime:{embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:"",embedApiKeyEditModeByEntryId:{},embeddingModelsListByEntryId:{},embeddingModelsListLoadingByEntryId:{},embeddingModelsListErrorByEntryId:{}}})})}buildSaveBody(){let e=this.section_$().form,n=e.entries.map(t=>{let a=t.dimensions.trim(),c=a.length>0&&Number.isFinite(Number(a))?Math.floor(Number(a)):void 0,v={id:t.id,label:t.label,enabled:t.enabled,embeddingBackend:t.embeddingBackend,baseUrl:t.baseUrl,modelId:t.modelId};return c!==void 0&&c>0&&(v.dimensions=c),t.apiKeyRaw.trim().length>0&&(v.apiKeyRaw=t.apiKeyRaw.trim()),v});return{defaultEntryId:e.defaultEntryId,entries:n}}static defaultFormFromFlatResponse(e){let n=i.parseEntryFromServerRecord({id:i.migratedDefaultEntryId,label:"Default",enabled:!0,embeddingBackend:e.embeddingBackend,baseUrl:e.baseUrl,modelId:e.modelId,dimensions:e.dimensions,apiKeyMasked:e.apiKeyMasked});return{defaultEntryId:n.id,entries:[n]}}runEmbedSmoke(e){return C(this,null,function*(){this.updateRuntime({embedSmokeLoading:!0,embedSmokeMessage:"",embedSmokeError:""});try{let n=yield this.ragSample_AS.postEmbedSmoke({sampleText:e.sampleText});if(n.ok){let t=n.dimension!=null&&Number.isFinite(n.dimension)?String(n.dimension):"?";this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:n.message??`OK, vektor dimenzi\xF3: ${t}`,embedSmokeError:""})}else this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:n.error??"Ismeretlen hiba"})}catch(n){let t=n instanceof Error?n.message:"Embedding smoke sikertelen.";this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:t})}})}static isPlainRecord(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}static parseEntryFromServerRecord(e){let n=i.isPlainRecord(e)?e:{},t=n.id,a=typeof t=="string"&&t.trim().length>0?t.trim():i.migratedDefaultEntryId,c=n.label,v=typeof c=="string"?c:"",h=n.enabled!==!1,k=n.embeddingBackend,D=typeof k=="string"&&k.trim().length>0?k.trim():"ollama",F=typeof n.baseUrl=="string"?n.baseUrl:"",z=typeof n.modelId=="string"?n.modelId:"",L=n.dimensions,H=typeof L=="number"&&Number.isFinite(L)?String(Math.floor(L)):"",W=typeof n.apiKeyMasked=="string"?n.apiKeyMasked:"";return{id:a,label:v,enabled:h,embeddingBackend:D,baseUrl:F,modelId:z,dimensions:H,apiKeyRaw:"",apiKeyMasked:W}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Hn=(()=>{class i extends K{section_$=A({form:{enabled:!1,vectorStoreBackend:"none"}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.rag}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.rag),n=typeof e.vectorStoreBackend=="string"&&e.vectorStoreBackend.trim().length>0?e.vectorStoreBackend.trim():"none";this.setSection({form:{enabled:e.enabled===!0,vectorStoreBackend:n}})})}buildSaveBody(){let e=this.section_$().form;return{enabled:e.enabled,vectorStoreBackend:e.vectorStoreBackend}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var qn=(()=>{class i{baseUrl=`${Ge.api.baseUrl}/developer`;http=w(ze);getReviewsMeta(){return te(this.http.get(`${this.baseUrl}/reviews-meta`)).then(e=>e.meta)}runReviews(e){return te(this.http.post(`${this.baseUrl}/run-reviews`,e))}getAutofixesMeta(){return te(this.http.get(`${this.baseUrl}/autofixes-meta`)).then(e=>e.meta)}runAutofixes(e){return te(this.http.post(`${this.baseUrl}/run-autofixes`,e))}static \u0275fac=function(n){return new(n||i)};static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var kt=(()=>{class i extends K{developer_AS=w(qn);section_$=A({form:{targetPath:"",reviewConfigs:{},postModifyChecksEnabled:!1,postModifyChecksScriptFileExtensions:".ts, .js, .tsx, .jsx",postModifyChecksCompileEnabled:!1,postModifyChecksCompileCommand:"",postModifyChecksLintEnabled:!1,postModifyChecksLintCommand:"",postModifyChecksTimeoutMs:15e3,postModifyChecksReviews:[]},runtime:{isLoadingMeta:!1,metaLoadError:null,reviewMeta:null,isRunning:!1,runResult:null,runError:null,autofixMeta:null,isRunningAutofix:!1,autofixResult:null,autofixError:null}});getSectionId(){return f.developer}getSection_$(){return this.section_$}updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.developer),n=typeof e.targetPath=="string"?e.targetPath:"",t=e.reviewConfigs!==null&&typeof e.reviewConfigs=="object"&&!Array.isArray(e.reviewConfigs)?e.reviewConfigs:{};if(!n.trim())try{n=(yield this.settings_AS.getDefaultWorkspace()).workspacePath||""}catch{}let a=typeof e.postModifyChecks=="object"&&e.postModifyChecks!==null?e.postModifyChecks:{},c=Array.isArray(a.scriptFileExtensions)?a.scriptFileExtensions.join(", "):".ts, .js, .tsx, .jsx";this.updateForm({targetPath:n,reviewConfigs:t,postModifyChecksEnabled:typeof a.enabled=="boolean"?a.enabled:!1,postModifyChecksScriptFileExtensions:c,postModifyChecksCompileEnabled:typeof a.compileEnabled=="boolean"?a.compileEnabled:!1,postModifyChecksCompileCommand:typeof a.compileCommand=="string"?a.compileCommand:"",postModifyChecksLintEnabled:typeof a.lintEnabled=="boolean"?a.lintEnabled:!1,postModifyChecksLintCommand:typeof a.lintCommand=="string"?a.lintCommand:"",postModifyChecksTimeoutMs:typeof a.checkTimeoutMs=="number"&&a.checkTimeoutMs>0?a.checkTimeoutMs:15e3,postModifyChecksReviews:i.parsePostModifyReviews(a.reviews)}),this.section_$().runtime.reviewMeta||this.loadReviewMeta(),this.section_$().runtime.autofixMeta||this.loadAutofixMeta()})}loadReviewMeta(){return C(this,null,function*(){this.updateRuntime({isLoadingMeta:!0,metaLoadError:null});try{let e=yield this.developer_AS.getReviewsMeta();this.updateRuntime({reviewMeta:e,isLoadingMeta:!1})}catch(e){let n=e instanceof Error?e.message:String(e);this.updateRuntime({isLoadingMeta:!1,metaLoadError:n})}})}runReviews(e){return C(this,null,function*(){this.updateRuntime({isRunning:!0,runError:null,runResult:null});try{let n=yield this.developer_AS.runReviews({reviewIds:e});this.updateRuntime({runResult:n,isRunning:!1})}catch(n){let t=n instanceof Error?n.message:String(n);this.updateRuntime({isRunning:!1,runError:t})}})}toggleReview(e,n){let t=g({},this.section_$().form.reviewConfigs),a=t[e];t[e]={isEnabled:n,params:a?.params??{}},this.updateForm({reviewConfigs:t}),this.master?.bumpDigest()}updateReviewParam(e,n,t){let a=g({},this.section_$().form.reviewConfigs),c=a[e];a[e]={isEnabled:c?.isEnabled??!0,params:y(g({},c?.params??{}),{[n]:t})},this.updateForm({reviewConfigs:a}),this.master?.bumpDigest()}loadAutofixMeta(){return C(this,null,function*(){try{let e=yield this.developer_AS.getAutofixesMeta();this.updateRuntime({autofixMeta:e})}catch{}})}runAutofixes(e,n=!0){return C(this,null,function*(){this.updateRuntime({isRunningAutofix:!0,autofixError:null,autofixResult:null});try{let t=yield this.developer_AS.runAutofixes({reviewIds:e,dryRun:n});this.updateRuntime({autofixResult:t,isRunningAutofix:!1})}catch(t){let a=t instanceof Error?t.message:String(t);this.updateRuntime({isRunningAutofix:!1,autofixError:a})}})}buildSaveBody(){let e=this.section_$().form,n=e.postModifyChecksScriptFileExtensions.split(",").map(t=>t.trim()).filter(t=>t.length>0);return{targetPath:e.targetPath,reviewConfigs:e.reviewConfigs,postModifyChecks:{enabled:e.postModifyChecksEnabled,scriptFileExtensions:n,compileEnabled:e.postModifyChecksCompileEnabled,compileCommand:e.postModifyChecksCompileCommand,lintEnabled:e.postModifyChecksLintEnabled,lintCommand:e.postModifyChecksLintCommand,checkTimeoutMs:e.postModifyChecksTimeoutMs,reviews:e.postModifyChecksReviews.map(t=>({id:t.id,name:t.name,command:t.command,enabled:t.enabled}))}}}updateDeveloperForm(e){this.updateForm(e),this.master?.bumpDigest()}static parsePostModifyReviews(e){return Array.isArray(e)?e.filter(n=>typeof n=="object"&&n!==null).map(n=>{let t=n;return{id:typeof t.id=="string"?t.id:i.generatePostModifyReviewId(),name:typeof t.name=="string"?t.name:"",command:typeof t.command=="string"?t.command:"",enabled:typeof t.enabled=="boolean"?t.enabled:!1}}):[]}static generatePostModifyReviewId(){return`review-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}addPostModifyReview(){let e=this.section_$().form.postModifyChecksReviews,n={id:i.generatePostModifyReviewId(),name:"",command:"",enabled:!0};this.updateDeveloperForm({postModifyChecksReviews:[...e,n]})}removePostModifyReview(e){let n=this.section_$().form.postModifyChecksReviews;this.updateDeveloperForm({postModifyChecksReviews:n.filter((t,a)=>a!==e)})}updatePostModifyReviewField(e,n){let a=this.section_$().form.postModifyChecksReviews.map((c,v)=>v===e?g(g({},c),n):c);this.updateDeveloperForm({postModifyChecksReviews:a})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var wt=(()=>{class i extends K{section_$=A({form:{runExecutionPaletteConstraint:me.full,llmDebugConsoleEnabled:!1,sessionLockTimeoutMinutes:15},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}updateAgentRuntimeForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.agentRuntime}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.agentRuntime);this.setSection({form:{runExecutionPaletteConstraint:i.parseRunExecutionPaletteConstraintFromUnknown(e.runExecutionPaletteConstraint),llmDebugConsoleEnabled:typeof e.llmDebugConsoleEnabled=="boolean"?e.llmDebugConsoleEnabled:!1,sessionLockTimeoutMinutes:typeof e.sessionLockTimeoutMinutes=="number"&&e.sessionLockTimeoutMinutes>0?e.sessionLockTimeoutMinutes:15},runtime:{}})})}buildSaveBody(){let e=this.section_$().form;return{runExecutionPaletteConstraint:e.runExecutionPaletteConstraint,llmDebugConsoleEnabled:e.llmDebugConsoleEnabled,sessionLockTimeoutMinutes:e.sessionLockTimeoutMinutes}}static parseRunExecutionPaletteConstraintFromUnknown(e){let n=[me.full,me.askOnly,me.planOnly];for(let t of n)if(e===t)return t;if(typeof e=="string"){let t=e.trim();for(let a of n)if(t===a)return a}return me.full}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Dt=(()=>{class i extends K{section_$=A({form:{braveSearchApiKeyDraft:"",braveSearchApiKeyMasked:""},runtime:{}});getSectionId(){return f.consultant}getSection_$(){return this.section_$}updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.consultant),n=typeof e.braveSearchApiKeyMasked=="string"?e.braveSearchApiKeyMasked:"";this.setSection({form:{braveSearchApiKeyDraft:"",braveSearchApiKeyMasked:n},runtime:{}})})}buildSaveBody(){return{braveSearchApiKey:this.section_$().form.braveSearchApiKeyDraft.trim()}}updateConsultantForm(e){this.updateForm(e),this.master?.bumpDigest()}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var He=class{static splitPendingProviderAccessForDiscordSection(d){let e=[],n=[];for(let t of d)t.channelId?.trim()?e.push(t):n.push(t);return{pendingChannelAccessRequests:e,pendingUserAccessRequests:n}}};var At=(()=>{class i extends K{section_$=A({form:{providerAccess:{},pendingProviderAccessRequests:[],discordGuildAccess:{allowedGuilds:[]},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0,newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}updateGuildEntry(e,n){let a=this.section_$().form.discordGuildAccess.allowedGuilds;if(e<0||e>=a.length)return;let c=a.slice();c[e]=g(g({},c[e]),n),this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:c}})}addGuildEntry(){let e=this.section_$(),n=e.form.newGuildId.trim();if(!n)return;let t=e.form.newGuildName.trim().length>0?e.form.newGuildName.trim():void 0,a=e.form.newGuildChannelId.trim(),c=e.form.newGuildUserId.trim(),v=e.form.newGuildMentionOnly;if(e.form.discordGuildAccess.allowedGuilds.some(k=>k.guildId===n&&(k.channelId?.trim()??"")===a&&(k.userId?.trim()??"")===c))this.updateDiscordAccessForm({newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0});else{let k=this.section_$(),D={guildId:n,guildName:t,channelId:a.length>0?a:void 0,userId:c.length>0?c:void 0,mentionOnly:v?void 0:!1};this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:[...k.form.discordGuildAccess.allowedGuilds,D]},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0})}}removeGuildEntry(e){let t=this.section_$().form.discordGuildAccess.allowedGuilds;e<0||e>=t.length||this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:t.slice(0,e).concat(t.slice(e+1))}})}addProviderAccessEntry(){let e=this.section_$(),n=e.form.newAccessChannelId.trim(),t=e.form.newAccessUserId.trim(),a=e.form.newAccessGuildId.trim();if(!n&&!t)return;let c=e.form.providerAccess.discord??[],v=e.form.newAccessMentionOnly,h={channelId:n||void 0,userId:t||void 0,guildId:a.length>0?a:void 0,mentionOnly:v?void 0:!1};this.updateDiscordAccessForm({providerAccess:y(g({},e.form.providerAccess),{discord:[...c,h]}),newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0})}updateProviderAccessEntry(e,n,t){let a=this.section_$(),c=a.form.providerAccess[e]??[];if(n<0||n>=c.length)return;let v=c.slice();v[n]=g(g({},v[n]),t),this.updateForm({providerAccess:y(g({},a.form.providerAccess),{[e]:v})}),this.master?.bumpDigest()}removeProviderAccessEntry(e,n){let t=this.section_$(),a=t.form.providerAccess[e]??[];if(n<0||n>=a.length)return;let c=a.slice(0,n).concat(a.slice(n+1));if(c.length===0){let v={};for(let[h,k]of Object.entries(t.form.providerAccess))h!==e&&(v[h]=k);this.updateDiscordAccessForm({providerAccess:v})}else this.updateDiscordAccessForm({providerAccess:y(g({},t.form.providerAccess),{[e]:c})})}getSanitizedProviderAccess(){let e={},n=this.section_$().form.providerAccess;for(let[t,a]of Object.entries(n)){if(!Array.isArray(a))continue;let c=a.filter(v=>typeof v.channelId=="string"&&v.channelId.trim().length>0||typeof v.userId=="string"&&v.userId.trim().length>0).map(v=>{let h={channelId:v.channelId?.trim()||void 0,userId:v.userId?.trim()||void 0,channelName:v.channelName?.trim()||void 0,userName:v.userName?.trim()||void 0,guildId:v.guildId?.trim()||void 0,guildName:v.guildName?.trim()||void 0};return v.mentionOnly===!1?y(g({},h),{mentionOnly:!1}):v.mentionOnly===!0?y(g({},h),{mentionOnly:!0}):h});c.length>0&&(e[t]=c)}return e}updateDiscordAccessForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.discordAccess}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.discordAccess),n=Array.isArray(e.channelAccesses)?e.channelAccesses:[],t=n.length>0?{discord:n}:{},a=Array.isArray(e.pendingChannelAccessRequests)?e.pendingChannelAccessRequests:[],c=Array.isArray(e.pendingUserAccessRequests)?e.pendingUserAccessRequests:[],v=[...a,...c],h=Array.isArray(e.discordGuildAccesses)?e.discordGuildAccesses:[];this.setSection({form:{providerAccess:t,pendingProviderAccessRequests:v,discordGuildAccess:{allowedGuilds:h},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0,newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0},runtime:{}})})}buildSaveBody(){let e=this.getSanitizedProviderAccess(),n=this.section_$().form,t=He.splitPendingProviderAccessForDiscordSection(n.pendingProviderAccessRequests),a=n.discordGuildAccess.allowedGuilds.map(c=>{let v={guildId:c.guildId,guildName:c.guildName,channelId:c.channelId?.trim()||void 0,channelName:c.channelName,userId:c.userId?.trim()||void 0,userName:c.userName};return c.mentionOnly===!1?y(g({},v),{mentionOnly:!1}):c.mentionOnly===!0?y(g({},v),{mentionOnly:!0}):v});return{channelAccesses:e.discord??[],userAccesses:[],discordGuildAccesses:a.length>0?a:[],pendingChannelAccessRequests:t.pendingChannelAccessRequests,pendingUserAccessRequests:t.pendingUserAccessRequests}}postProviderAccessAllowForPending(e){return C(this,null,function*(){let n=e.pending;return this.settings_AS.postProviderAccessAllow({providerName:n.providerName,channelId:n.channelId??"",userId:n.userId??"",guildId:n.guildId,channelName:n.channelName,userName:n.userName,guildName:n.guildName})})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Pt=(()=>{class i extends K{section_$=A({form:{mcpEntries:[],mcpAddJsonDraft:"",mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""},runtime:{mcpAddError:"",mcpEditError:"",mcpEntryTestState:{},mcpEntrySyncState:{}}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}addMcpEntryFromJson(){this.updateRuntime({mcpAddError:""});let e=this.section_$().form.mcpAddJsonDraft.trim();if(!e)return;let n=ie.tryParseStrict({text:e,contextLabel:"CCAP_SettingsMcp_add_entry_json"});if(!n.ok){this.updateRuntime({mcpAddError:n.failure.summaryMessage});return}let t=n.value;if(t===null||typeof t!="object"||Array.isArray(t)){this.updateRuntime({mcpAddError:"\xC9rv\xE9nytelen JSON: objektum kell."});return}let a=Object.fromEntries(Object.entries(t)),c=typeof a.name=="string"&&a.name.trim().length>0?a.name.trim():void 0,v=typeof a.transport=="string"&&a.transport.trim().length>0?a.transport.trim():void 0,h=typeof a.command=="string"&&a.command.trim().length>0?a.command.trim():void 0;if(!c||!v||!h){this.updateRuntime({mcpAddError:"K\xF6telez\u0151 mez\u0151k: name, transport, command (nem \xFCres string)."});return}let k,D=a.args;Array.isArray(D)&&(k=D.filter(W=>typeof W=="string"),k.length===0&&(k=void 0));let F,z=a.env;if(z!==null&&typeof z=="object"&&!Array.isArray(z)){let W={};for(let[O,Q]of Object.entries(z))typeof Q=="string"&&(W[O]=Q);Object.keys(W).length>0&&(F=W)}let L={name:c,transport:v,command:h,args:k,env:F},H=this.section_$();this.updateForm({mcpEntries:[...H.form.mcpEntries,L],mcpAddJsonDraft:""})}removeMcpEntry(e){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;let t=n.form.mcpEntries.slice(0,e).concat(n.form.mcpEntries.slice(e+1)),a=n.form.mcpEditIndex,c=n.form.mcpEditDraft,v=n.form.mcpEditArgsStr,h=n.form.mcpEditEnvStr;n.form.mcpEditIndex===e?(a=null,c=null,v="",h=""):n.form.mcpEditIndex!==null&&n.form.mcpEditIndex>e&&(a=n.form.mcpEditIndex-1),this.updateForm({mcpEntries:t,mcpEditIndex:a,mcpEditDraft:c,mcpEditArgsStr:v,mcpEditEnvStr:h}),this.updateRuntime({mcpEditError:""})}getMcpEntryCommandPreview(e){let n=e.command;return n.length>50?n.slice(0,50)+"\u2026":n}getMcpEntryTestState(e){return this.section_$().runtime.mcpEntryTestState[e]??{inProgress:!1,message:"",success:!1}}getMcpEntrySyncState(e){return this.section_$().runtime.mcpEntrySyncState[e]??{inProgress:!1}}updateMcpEditDraftField(e,n){let a=this.section_$().form.mcpEditDraft;a&&(this.updateForm({mcpEditDraft:y(g({},a),{[e]:n})}),this.master?.bumpDigest())}updateMcpEditArgsStr(e){this.updateForm({mcpEditArgsStr:e}),this.master?.bumpDigest()}updateMcpEditEnvStr(e){this.updateForm({mcpEditEnvStr:e}),this.master?.bumpDigest()}openMcpEdit(e){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;let t=n.form.mcpEntries[e],a={name:t.name,transport:t.transport,command:t.command,args:t.args?[...t.args]:void 0,env:t.env?g({},t.env):void 0};this.updateForm({mcpEditIndex:e,mcpEditDraft:a,mcpEditArgsStr:JSON.stringify(a.args??[],null,2),mcpEditEnvStr:JSON.stringify(a.env??{},null,2)}),this.updateRuntime({mcpEditError:""})}cancelMcpEdit(){this.updateForm({mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""}),this.updateRuntime({mcpEditError:""})}saveMcpEdit(){let e=this.section_$();if(this.updateRuntime({mcpEditError:""}),e.form.mcpEditIndex===null||e.form.mcpEditDraft===null)return;let n=e.form.mcpEditDraft,t=n.name.trim(),a=n.transport.trim(),c=n.command.trim();if(!t||!a||!c){this.updateRuntime({mcpEditError:"K\xF6telez\u0151 mez\u0151k: name, transport, command (nem \xFCres string)."});return}let v,h=ie.tryParseStrict({text:e.form.mcpEditArgsStr.trim()||"[]",contextLabel:"CCAP_SettingsMcp_edit_args"});if(!h.ok){this.updateRuntime({mcpEditError:'args: \xE9rv\xE9nyes JSON t\xF6mb kell (pl. [] vagy ["--app","desktop"]).'});return}let k=h.value;Array.isArray(k)&&(v=k.filter(W=>typeof W=="string"),v.length===0&&(v=void 0));let D,F=ie.tryParseStrict({text:e.form.mcpEditEnvStr.trim()||"{}",contextLabel:"CCAP_SettingsMcp_edit_env"});if(!F.ok){this.updateRuntime({mcpEditError:"env: \xE9rv\xE9nyes JSON objektum kell (pl. {})."});return}let z=F.value;if(z!==null&&typeof z=="object"&&!Array.isArray(z)){let W={};for(let[O,Q]of Object.entries(z))typeof Q=="string"&&(W[O]=Q);Object.keys(W).length>0&&(D=W)}let L=e.form.mcpEditIndex,H=e.form.mcpEntries.map((W,O)=>O===L?{name:t,transport:a,command:c,args:v,env:D}:W);this.updateForm({mcpEntries:H,mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""}),this.updateRuntime({mcpEditError:""})}testMcpEntry(e){return C(this,null,function*(){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;this.updateRuntime({mcpEntryTestState:y(g({},n.runtime.mcpEntryTestState),{[e]:{inProgress:!0,message:"",success:!1}})});let t=n.form.mcpEntries[e];try{let a=yield this.settings_AS.postMcpSync(t),c=this.section_$();this.updateRuntime({mcpEntryTestState:y(g({},c.runtime.mcpEntryTestState),{[e]:{inProgress:!1,message:a.success?"El\xE9rhet\u0151.":a.error??"Hiba",success:a.success}})})}catch(a){let c=N.getSettingsErrorResult(a).message,v=this.section_$();this.updateRuntime({mcpEntryTestState:y(g({},v.runtime.mcpEntryTestState),{[e]:{inProgress:!1,message:c,success:!1}})})}})}syncMcpEntry(e){return C(this,null,function*(){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;this.updateRuntime({mcpEntrySyncState:y(g({},n.runtime.mcpEntrySyncState),{[e]:{inProgress:!0,toolCount:void 0,toolNames:void 0,error:void 0}})});let t=n.form.mcpEntries[e];try{let a=yield this.settings_AS.postMcpSync(t),c=this.section_$();this.updateRuntime({mcpEntrySyncState:y(g({},c.runtime.mcpEntrySyncState),{[e]:{inProgress:!1,toolCount:a.toolCount,toolNames:a.toolNames,error:a.success?void 0:a.error??"Hiba"}})})}catch(a){let c=N.getSettingsErrorResult(a).message,v=this.section_$();this.updateRuntime({mcpEntrySyncState:y(g({},v.runtime.mcpEntrySyncState),{[e]:{inProgress:!1,error:c}})})}})}mcpEntryTestState_$=$(()=>this.section_$().runtime.mcpEntryTestState);mcpEntrySyncState_$=$(()=>this.section_$().runtime.mcpEntrySyncState);mcpEntryCommandPreviewMap_$=$(()=>this.section_$().form.mcpEntries.map(e=>this.getMcpEntryCommandPreview(e)));mcpEntrySyncToolNamesStrMap_$=$(()=>{let e=this.section_$().runtime.mcpEntrySyncState,n={};for(let[t,a]of Object.entries(e)){let c=Number(t);Number.isInteger(c)&&a?.toolNames?.length&&(n[c]=a.toolNames.join(", "))}return n});updateMcpForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.mcp}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.mcp),n=Array.isArray(e.mcpEntries)?e.mcpEntries:[];this.setSection({form:{mcpEntries:n,mcpAddJsonDraft:"",mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""},runtime:this.section_$().runtime})})}buildSaveBody(){let e=this.section_$().form;return{mcpEntries:e.mcpEntries.length>0?[...e.mcpEntries]:[]}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var $t=class{static parseCcapLooseToolSchemaFromUnknown(d){if(!Ht(d)||d.type!=="object")return null;let e=d.properties;if(!Ht(e))return null;let n={};for(let a of Object.keys(e)){let c=Jn(e[a]);if(c===null)return null;n[a]=c}let t;if(d.required!==void 0){if(!Array.isArray(d.required)||!d.required.every(a=>typeof a=="string"))return null;t=d.required}return{type:"object",properties:n,required:t}}};function Ht(i){return i!==null&&typeof i=="object"&&!Array.isArray(i)}function Jn(i){if(!Ht(i)||typeof i.type!="string")return null;let d={type:i.type};if(typeof i.description=="string"&&(d.description=i.description),Array.isArray(i.enum)&&i.enum.every(e=>typeof e=="string")&&(d.enum=i.enum),Object.prototype.hasOwnProperty.call(i,"default")&&(d.default=i.default),i.items!==void 0){let e=Jn(i.items);if(e===null)return null;d.items=e}return d}var qt=`{
1
+ import{a as Bn}from"./chunk-SAWE7K3L.js";import{p as Gn,q as On}from"./chunk-W66474CE.js";import"./chunk-35HAXCRL.js";import{a as Ne,b as bt}from"./chunk-L44637OO.js";import{a as zn,b as Kn}from"./chunk-COVCHZOZ.js";import{a as Dn,b as Pn}from"./chunk-CK4L2E6A.js";import{b as An}from"./chunk-TWUEQMEF.js";import"./chunk-ALRGHRMX.js";import"./chunk-UFBTR2BG.js";import"./chunk-M53FIKSO.js";import{b as gt}from"./chunk-XDP5GOHT.js";import"./chunk-6Y7O2W4H.js";import{d as St}from"./chunk-OJPFXL3T.js";import"./chunk-4ORBCWDZ.js";import{a as vt}from"./chunk-L2E2MBF2.js";import{a as Fn,b as pe,c as Pe,g as Ln}from"./chunk-KOFPH2WQ.js";import{a as xt}from"./chunk-5GCMRTM2.js";import"./chunk-7JUIBZEE.js";import"./chunk-C7XPBJTG.js";import{h as Vn,i as $e}from"./chunk-565H5Q7X.js";import"./chunk-WPHEQXWB.js";import{a as _t}from"./chunk-XO6LJ5A6.js";import"./chunk-ZRLAS63L.js";import"./chunk-XC26T3JJ.js";import{a as Tn,b as ft}from"./chunk-RQSPYGNE.js";import"./chunk-CZVHJQVK.js";import"./chunk-Q2NVIOCY.js";import"./chunk-QYAK3VTE.js";import"./chunk-X3CIXD4W.js";import{a as je}from"./chunk-EZQXUBC4.js";import{a as $n}from"./chunk-V3VQWJQL.js";import{a as Rn}from"./chunk-VUMU4S4O.js";import"./chunk-WKXTPGKW.js";import"./chunk-ACLAVYA7.js";import{a as In}from"./chunk-ZBTWQZNB.js";import{a as Oe}from"./chunk-FLAJXIYW.js";import{b as ne,c as Z,f as J,g as Sn,h as xn,i as Y,j as vn,k as ke,n as oe,o as re,p as ae,q as we,r as De,v as bn}from"./chunk-EO4DNTT4.js";import{a as Cn,j as ie,k as U}from"./chunk-SUAZOLRE.js";import{a as Fe}from"./chunk-5UPNU54P.js";import{c as hn,d as Mn,e as kn,f as wn,j as ut}from"./chunk-66YFYBOC.js";import{H as me,I as Ge,K as En,L as yn,M as K,N as pt,p as Me,r as Ie,s as Ae,t as f,u as se,v as Be,x as Ve}from"./chunk-ZJ3DCODZ.js";import{$a as cn,C as w,D as j,E as nn,Fa as s,Fb as _n,Ga as M,Ha as E,Hb as Ke,Ia as Se,Ib as gn,J as S,Ja as dt,K as x,Kb as fn,L as tt,La as rn,M as jt,Ma as xe,N as G,Na as ve,Oa as be,Pa as he,Q as nt,Qa as an,Ra as Wt,Ta as sn,U as at,Ua as ln,Va as dn,X as ye,Z as l,a as g,aa as A,b as y,bb as mn,da as b,fa as st,ga as p,h as Ee,hb as $,ia as q,j as de,ja as Nt,k as C,la as _,ma as ce,na as fe,oa as I,p as te,pa as V,pb as pn,qa as r,ra as o,sa as T,ua as P,ub as ct,va as u,vb as mt,wa as m,wb as un,xa as on,xb as ze,y as R,ya as lt,z as tn}from"./chunk-TBMJSIBB.js";var Ct=class{slaves=[];setupSlaves(){this.slaves.forEach(d=>{d.setupMaster(this)})}};var jn=Ee(Me());var We=class{static buildAgentEmailSectionPayloadFromForm(d){let e={},n=d.emailSmtpHost.trim();n.length>0&&(e.smtpHost=n);let t=(typeof d.emailSmtpPort=="string"?d.emailSmtpPort:d.emailSmtpPort!=null?String(d.emailSmtpPort):"").trim();t.length>0&&(e.smtpPort=t);let a=d.emailImapHost.trim();a.length>0&&(e.imapHost=a);let c=(typeof d.emailImapPort=="string"?d.emailImapPort:d.emailImapPort!=null?String(d.emailImapPort):"").trim();c.length>0&&(e.imapPort=c);let v=d.emailUser.trim();v.length>0&&(e.user=v);let h=d.emailFrom.trim();return h.length>0&&(e.fromAddress=h),d.emailPassword.trim()&&(e.password=d.emailPassword.trim()),e}};var Et=class{static parseAgentEmailGetSectionResponse(d){return wi(d)?{smtpHost:Le(d,"smtpHost"),smtpPort:Le(d,"smtpPort"),imapHost:Le(d,"imapHost"),imapPort:Le(d,"imapPort"),user:Le(d,"user"),passwordMasked:Le(d,"passwordMasked"),fromAddress:Le(d,"fromAddress")}:null}};function wi(i){return i!==null&&typeof i=="object"&&!Array.isArray(i)}function Le(i,d){let e=i[d];return typeof e=="string"?e:typeof e=="number"&&!Number.isNaN(e)?String(e):""}var N=class{static getSettingsErrorResult(d){if(d instanceof un){let e=d.error,n=null;hn.isRecord(e)?typeof e.error=="string"?n=e.error:e.error!=null?n=String(e.error):typeof e.message=="string"&&(n=e.message):typeof e=="string"&&(n=e);let t=En.getHttpErrorMessage(d,n),a=JSON.stringify({status:d.status,statusText:d.statusText,url:d.url,responseBody:d.error,message:d.message},null,2);return{message:t,stack:a}}return d instanceof Error?{message:d.message,stack:d.stack??""}:{message:String(d),stack:""}}};var Ut=[{id:"gmail",label:"Apply Default Gmail Settings",host:"smtp.gmail.com",port:"587",imapHost:"imap.gmail.com",imapPort:"993"},{id:"outlook",label:"Apply Default Outlook / Office 365 Settings",host:"smtp.office365.com",port:"587",imapHost:"outlook.office365.com",imapPort:"993"}],yt=(()=>{class i extends K{setup_AS=w(_t);section_$=A({form:{emailSmtpHost:"",emailSmtpPort:"",emailImapHost:"",emailImapPort:"",emailImapHostMasked:"",emailImapPortDisplay:"",emailUser:"",emailPassword:"",emailPasswordMasked:"",emailFrom:"",emailSmtpHostMasked:"",emailSmtpPortDisplay:"",emailUserMasked:"",emailProviderPresets:Ut,generatedVaultKey:"",vaultKeyCustom:""},runtime:{vaultKeyGenerateError:"",vaultKeySaveInProgress:!1,vaultKeySaveSuccess:!1,emailPasswordEditMode:!1,emailTestLoading:!1,emailTestLastResult:null}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}testAgentEmailConnection(){return C(this,null,function*(){this.updateRuntime({emailTestLoading:!0,emailTestLastResult:null});try{let e=yield this.settings_AS.postTestAgentEmail();this.updateRuntime({emailTestLastResult:e})}catch(e){jn.DyFM_Error.logSimple("CCAP_SettingsAgentEmail_DS | Agent email connection test failed",e);let n=K.getErrorMessage(e);this.updateRuntime({emailTestLastResult:{ok:!1,smtp:{ok:!1,error:n},imap:{ok:!1,error:n}}})}finally{this.updateRuntime({emailTestLoading:!1})}})}generateVaultKey(){return C(this,null,function*(){this.updateRuntime({vaultKeyGenerateError:""}),this.updateForm({generatedVaultKey:""});try{let e=yield this.setup_AS.getVaultKeyGenerate();this.updateForm({generatedVaultKey:e.vaultKey})}catch(e){this.updateRuntime({vaultKeyGenerateError:N.getSettingsErrorResult(e).message})}})}copyVaultKeyToClipboard(){return C(this,null,function*(){let e=this.getVaultKeyPayloadForSave();if(e)try{yield navigator.clipboard.writeText(e)}catch{}})}getVaultKeyPayloadForSave(){let e=this.section_$().form.generatedVaultKey.trim(),n=this.section_$().form.vaultKeyCustom.trim();return e.length>0?e:n}saveVaultKeyOnServer(){return C(this,null,function*(){let e=this.getVaultKeyPayloadForSave();if(e){this.updateRuntime({vaultKeyGenerateError:"",vaultKeySaveSuccess:!1,vaultKeySaveInProgress:!0});try{yield this.setup_AS.postVaultKey(e),this.updateRuntime({vaultKeySaveSuccess:!0,vaultKeySaveInProgress:!1})}catch(n){this.updateRuntime({vaultKeyGenerateError:N.getSettingsErrorResult(n).message,vaultKeySaveInProgress:!1})}}})}applyEmailProviderPreset(e){let n=this.section_$().form.emailProviderPresets.find(v=>v.id===e);if(!n)return;let t=(n.imapHost??"").trim(),a=(n.imapPort??"").trim(),c={emailSmtpHost:n.host,emailSmtpPort:n.port};t.length>0&&(c.emailImapHost=t),a.length>0&&(c.emailImapPort=a),this.updateForm(c),this.master?.bumpDigest()}updateAgentEmailForm(e){this.updateForm(e),this.master?.bumpDigest()}startEmailPasswordEdit(){this.updateRuntime({emailPasswordEditMode:!0}),this.updateForm({emailPassword:""})}save(){return C(this,null,function*(){let e=yield de(i.prototype,this,"save").call(this);return e.success&&(this.updateRuntime({emailPasswordEditMode:!1}),this.updateForm({emailPassword:""})),e})}getSectionId(){return f.agentEmail}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.agentEmail),n=Et.parseAgentEmailGetSectionResponse(e);if(n==null){this.setSection({form:y(g({},this.section_$().form),{emailSmtpHostMasked:"",emailSmtpPortDisplay:"",emailImapHostMasked:"",emailImapPortDisplay:"",emailUserMasked:"",emailPasswordMasked:"",emailProviderPresets:Ut}),runtime:y(g({},this.section_$().runtime),{emailPasswordEditMode:!1})});return}this.setSection({form:{emailSmtpHost:n.smtpHost,emailSmtpPort:n.smtpPort,emailImapHost:n.imapHost,emailImapPort:n.imapPort,emailImapHostMasked:n.imapHost,emailImapPortDisplay:n.imapPort,emailUser:n.user,emailPassword:"",emailFrom:n.fromAddress,emailSmtpHostMasked:n.smtpHost,emailSmtpPortDisplay:n.smtpPort,emailUserMasked:n.user,emailPasswordMasked:n.passwordMasked,emailProviderPresets:Ut,generatedVaultKey:this.section_$().form.generatedVaultKey,vaultKeyCustom:this.section_$().form.vaultKeyCustom},runtime:y(g({},this.section_$().runtime),{emailPasswordEditMode:!1})})})}buildSaveBody(){return We.buildAgentEmailSectionPayloadFromForm(this.section_$().form)}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Nn=Ee(Me());var Ue=class{static buildLlmProvidersSectionPayloadFromForm(d){let e=d.anthropicLlm,n=d.googleLlm,t=d.deepseekLlm,a=d.fdpaiLlm;return{openAiSettings:{enabled:d.enabledLlmProviders.includes("open-ai"),defaultModel:d.openaiModel,apiKeyRaw:d.openaiApiKey.trim()||void 0},anthropicSettings:{enabled:e.enabled,defaultModel:e.defaultModel.trim(),apiKeyRaw:e.apiKey.trim()||void 0},googleSettings:{enabled:n.enabled,defaultModel:n.defaultModel.trim(),apiKeyRaw:n.apiKey.trim()||void 0},deepseekSettings:{enabled:t.enabled,defaultModel:t.defaultModel.trim(),apiKeyRaw:t.apiKey.trim()||void 0},fdpaiSettings:{enabled:a.enabled,defaultModel:a.defaultModel.trim(),baseUrl:a.baseUrl.trim(),apiKeyRaw:a.apiKey.trim()||void 0},localAiSettings:d.localAiEntries.map(c=>({name:(()=>{let v=c.label?.trim()??"";return v.length>0?v:"Local AI"})(),key:je.parseLocalAiKeyFromInstanceId({instanceId:c.id}),baseUrl:c.baseUrl.trim(),enabled:c.enabled,defaultModel:c.model.trim(),pattern:"openai"})),defaultLlmProvider:d.defaultLlmProvider,callTypeDefaults:d.callTypeDefaults??void 0}}};function ht(){return{enabled:!1,defaultModel:"",baseUrl:"",apiKey:"",apiKeyMasked:""}}function Di(i){return i!=null&&typeof i=="object"&&!Array.isArray(i)}var Te=(()=>{class i extends K{section_$=A({form:{enabledLlmProviders:["open-ai"],openaiApiKey:"",openaiModel:"gpt-4o",localAiEntries:[],defaultLlmProvider:"open-ai",defaultLlmModel:"",openaiApiKeyMasked:"",anthropicLlm:ht(),googleLlm:ht(),deepseekLlm:ht(),fdpaiLlm:ht()},runtime:{openaiApiKeyEditMode:!1,testOpenAiInProgress:!1,testOpenAiSuccess:!1,testOpenAiMessage:"",openaiModelsList:[],loadOpenAiModelsInProgress:!1,openaiModelsLoadError:""}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}setUseOpenAi(e){let n=e?["open-ai"]:[];this.updateForm({enabledLlmProviders:n}),this.master?.bumpDigest()}startOpenaiApiKeyEdit(){this.updateRuntime({openaiApiKeyEditMode:!0}),this.updateForm({openaiApiKey:""})}loadOpenAiModels(){return C(this,null,function*(){this.updateRuntime({openaiModelsLoadError:"",loadOpenAiModelsInProgress:!0});let e=this.section_$();try{let n=yield this.settings_AS.postListLlmModels({providerId:"open-ai",apiKey:e.form.openaiApiKey.trim()||void 0,model:e.form.openaiModel.trim()||void 0});n.success?this.updateRuntime({openaiModelsList:n.models??[],loadOpenAiModelsInProgress:!1}):this.updateRuntime({openaiModelsList:[],openaiModelsLoadError:n.error??"Modelllista lek\xE9r\xE9se sikertelen.",loadOpenAiModelsInProgress:!1})}catch(n){this.updateRuntime({openaiModelsLoadError:N.getSettingsErrorResult(n).message,openaiModelsList:[],loadOpenAiModelsInProgress:!1})}})}loadLocalAiModelsForEntry(e){return C(this,null,function*(){let n=this.section_$(),t=n.form.localAiEntries.findIndex(c=>c.id===e.id);if(t<0)return;let a=n.form.localAiEntries.map((c,v)=>v===t?y(g({},c),{loadInProgress:!0,loadError:void 0}):c);this.updateForm({localAiEntries:a});try{let c=yield this.settings_AS.postListLlmModels({providerId:e.id,baseUrl:e.baseUrl.trim()||void 0}),h=this.section_$().form.localAiEntries.map((k,D)=>{if(D!==t)return k;if(c.success&&c.models?.length){let F=k.model;return F&&!(c.models??[]).includes(F)?F=c.models[0]??"":F||(F=c.models[0]??""),y(g({},k),{modelsList:c.models,loadError:void 0,loadInProgress:!1,model:F})}return y(g({},k),{modelsList:[],loadError:c.error??"Modelllista lek\xE9r\xE9se sikertelen.",loadInProgress:!1})});this.updateForm({localAiEntries:h})}catch(c){let v=N.getSettingsErrorResult(c),k=this.section_$().form.localAiEntries.map((D,F)=>F===t?y(g({},D),{loadError:v.message,loadInProgress:!1}):D);this.updateForm({localAiEntries:k})}})}testOpenAi(){return C(this,null,function*(){this.updateRuntime({testOpenAiInProgress:!0,testOpenAiMessage:""});let e=this.section_$();try{let n=yield this.settings_AS.postTestLlmProvider({providerId:"open-ai",apiKey:e.form.openaiApiKey.trim()||void 0,model:e.form.openaiModel.trim()||void 0});this.updateRuntime({testOpenAiInProgress:!1,testOpenAiSuccess:n.success,testOpenAiMessage:n.success?"Sikeres teszt.":n.error??"Ismeretlen hiba."})}catch(n){let t=N.getSettingsErrorResult(n);this.updateRuntime({testOpenAiInProgress:!1,testOpenAiSuccess:!1,testOpenAiMessage:t.message})}})}testLocalAiForEntry(e){return C(this,null,function*(){let n=this.section_$(),t=n.form.localAiEntries.findIndex(c=>c.id===e.id);if(t<0)return;let a=n.form.localAiEntries.map((c,v)=>v===t?y(g({},c),{testInProgress:!0,testMessage:""}):c);this.updateForm({localAiEntries:a});try{let c=yield this.settings_AS.postTestLlmProvider({providerId:e.id,baseUrl:e.baseUrl.trim()||void 0}),h=this.section_$().form.localAiEntries.map((k,D)=>D===t?y(g({},k),{testInProgress:!1,testSuccess:c.success,testMessage:c.success?"Sikeres teszt.":c.error??"Ismeretlen hiba."}):k);this.updateForm({localAiEntries:h})}catch(c){let v=N.getSettingsErrorResult(c),k=this.section_$().form.localAiEntries.map((D,F)=>F===t?y(g({},D),{testInProgress:!1,testSuccess:!1,testMessage:v.message}):D);this.updateForm({localAiEntries:k})}})}addLocalAiEntry(){let e=globalThis.crypto.randomUUID(),t={id:je.build({localAiKey:e}),baseUrl:"",model:"",enabled:!0,label:"Local AI"},a=this.section_$();this.updateForm({localAiEntries:[...a.form.localAiEntries,t]})}removeLocalAiEntry(e){let n=this.section_$();if(e<0||e>=n.form.localAiEntries.length)return;let t=n.form.localAiEntries.filter((a,c)=>c!==e);this.updateForm({localAiEntries:t})}updateLocalAiEntry(e,n){let t=this.section_$();if(e<0||e>=t.form.localAiEntries.length)return;let a=t.form.localAiEntries.map((c,v)=>v===e?g(g({},c),n):c);this.updateForm({localAiEntries:a})}getEnabledLlmProviderIds(){let e=this.section_$().form,n=[];e.enabledLlmProviders.includes("open-ai")&&n.push("open-ai"),e.anthropicLlm.enabled&&n.push("anthropic"),e.googleLlm.enabled&&n.push("google"),e.deepseekLlm.enabled&&n.push("deepseek"),e.fdpaiLlm.enabled&&n.push("fdp-ai");for(let t of e.localAiEntries)t.enabled&&n.push(t.id);return n.length===0&&n.push("open-ai"),n}getProviderDisplayLabel(e){let n=this.section_$().form.localAiEntries.map(t=>({id:t.id,label:t.label??""}));return $n.resolve(e,n)}updateLlmProvidersForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.llmProviders}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.llmProviders),n=e.openAiSettings,t=!1,a="gpt-4o",c="";if(Di(n)){t=n.enabled===!0;let L=n.defaultModel;typeof L=="string"&&(a=L);let H=n.apiKeyMasked;typeof H=="string"&&(c=H)}let v=Tn.readLlmCloudBucketsFromSectionResponse(e),k=(Array.isArray(e.localAiSettings)?e.localAiSettings:[]).filter(L=>L!=null&&typeof L=="object"&&!Array.isArray(L)).map(L=>{let W=(typeof L.key=="string"?L.key:"").trim();if(!W.length)return null;let O=typeof L.name=="string"?L.name.trim():"",Q=je.build({localAiKey:W}),et=O.length>0?O:"Local AI",ge=L.enabled!==!1;return{id:Q,baseUrl:(typeof L.baseUrl=="string"?L.baseUrl:"").trim(),model:(typeof L.defaultModel=="string"?L.defaultModel:"").trim(),label:et,enabled:ge}}).filter(L=>L!=null),D=t?["open-ai"]:[],F=typeof e.defaultLlmProvider=="string"?e.defaultLlmProvider:"open-ai",z="";if(F==="open-ai")z=a;else if(F==="anthropic")z=v.anthropicLlm.defaultModel;else if(F==="google")z=v.googleLlm.defaultModel;else if(F==="deepseek")z=v.deepseekLlm.defaultModel;else if(F==="fdp-ai")z=v.fdpaiLlm.defaultModel;else{let L=k.find(H=>H.id===F);L&&(z=L.model)}this.setSection({form:{enabledLlmProviders:D,openaiApiKey:"",openaiModel:a,localAiEntries:k,defaultLlmProvider:F,defaultLlmModel:z,openaiApiKeyMasked:c,anthropicLlm:y(g({},v.anthropicLlm),{apiKey:""}),googleLlm:y(g({},v.googleLlm),{apiKey:""}),deepseekLlm:y(g({},v.deepseekLlm),{apiKey:""}),fdpaiLlm:y(g({},v.fdpaiLlm),{apiKey:""}),callTypeDefaults:typeof e.callTypeDefaults=="object"&&e.callTypeDefaults?e.callTypeDefaults:void 0},runtime:this.section_$().runtime})})}save(){return C(this,null,function*(){let e=yield de(i.prototype,this,"save").call(this);return e.success&&(this.updateRuntime({openaiApiKeyEditMode:!1}),this.updateForm({openaiApiKey:""})),e})}buildSaveBody(){return Ue.buildLlmProvidersSectionPayloadFromForm(this.section_$().form)}buildSaveBodyForScope(e){let n=this.section_$().form,t={llmProvidersSaveScope:e};return e===Ie.openAi?(t.openAiSettings={enabled:n.enabledLlmProviders.includes("open-ai"),defaultModel:n.openaiModel,apiKeyRaw:n.openaiApiKey.trim()||void 0},t):e===Ie.localAi?(t.localAiSettings=n.localAiEntries.map(a=>{let c=a.label?.trim()??"";return{name:c.length>0?c:"Local AI",key:je.parseLocalAiKeyFromInstanceId({instanceId:a.id}),baseUrl:a.baseUrl.trim(),enabled:a.enabled,defaultModel:a.model.trim(),pattern:"openai"}}),t):(t.defaultLlmProvider=n.defaultLlmProvider,t.callTypeDefaults=n.callTypeDefaults??void 0,t)}saveWithScope(e){return C(this,null,function*(){this.saving_$.set(!0),this.saveError_$.set(null);try{let n=this.buildSaveBodyForScope(e),t=yield this.doSave(n);return t.success?(yield this.load(),e===Ie.openAi&&(this.updateRuntime({openaiApiKeyEditMode:!1}),this.updateForm({openaiApiKey:""}))):this.saveError_$.set(t.error??"Ment\xE9s sikertelen."),t}catch(n){Nn.DyFM_Error.logSimple(`${this.constructor.name} | saveWithScope failed`,n);let t=K.getErrorMessage(n);return this.saveError_$.set(t),{success:!1,error:t}}finally{this.saving_$.set(!1)}})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Mt=(()=>{class i extends K{section_$=A({form:{placeholderPhase:!1,allowAgentSecretGet:!1,substitutionEnabled:!1,allowedSecretKeysText:"",substitutionPlaceholderPrefix:""},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.secretVault}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.secretVault),n=e.allowedSecretKeysForAgent,t=Array.isArray(n)?n.filter(v=>typeof v=="string"):[],a=e.substitutionPlaceholderPrefix,c=typeof a=="string"?a:"";this.setSection({form:{placeholderPhase:e.placeholderPhase===!0,allowAgentSecretGet:e.allowAgentSecretGet===!0,substitutionEnabled:e.substitutionEnabled===!0,allowedSecretKeysText:t.join(", "),substitutionPlaceholderPrefix:c},runtime:{}})})}buildSaveBody(){let e=this.section_$().form,t=e.allowedSecretKeysText.split(",").map(a=>a.trim()).filter(a=>a.length>0);return{placeholderPhase:e.placeholderPhase,allowAgentSecretGet:e.allowAgentSecretGet,allowedSecretKeysForAgent:t,substitutionEnabled:e.substitutionEnabled,substitutionPlaceholderPrefix:e.substitutionPlaceholderPrefix.trim().length>0?e.substitutionPlaceholderPrefix.trim():void 0}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Wn=(()=>{class i{http=w(ze);baseUrl=`${Ge.api.baseUrl}/rag-sample`;postEmbedSmoke(e){return C(this,null,function*(){let n=e.sampleText.trim().length>0?e.sampleText.trim():"test";return te(this.http.post(`${this.baseUrl}/embed-smoke`,{sampleText:n}))})}static \u0275fac=function(n){return new(n||i)};static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Un=(()=>{class i extends K{ragSample_AS=w(Wn);static migratedDefaultEntryId="ccap-embedding-default";section_$=A({form:{defaultEntryId:i.migratedDefaultEntryId,entries:[{id:i.migratedDefaultEntryId,label:"Default",enabled:!0,embeddingBackend:"ollama",baseUrl:"",modelId:"",dimensions:"",apiKeyRaw:"",apiKeyMasked:""}]},runtime:{embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:"",embedApiKeyEditModeByEntryId:{},embeddingModelsListByEntryId:{},embeddingModelsListLoadingByEntryId:{},embeddingModelsListErrorByEntryId:{}}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.embedding}getSection_$(){return this.section_$}updateEmbeddingEntryById(e,n){let t=e.trim();t.length&&(this.section_$.update(a=>{let c=a.form.entries.findIndex(h=>h.id===t);if(c<0)return a;let v=[...a.form.entries];return v[c]=g(g({},v[c]),n),y(g({},a),{form:y(g({},a.form),{entries:v})})}),this.master?.bumpDigest())}getEmbeddingModelOptionsForEntry(e){let n=this.section_$().runtime.embeddingModelsListByEntryId[e.trim()];return n===void 0?[]:n}getDefaultEmbeddingModelOptions(){let e=this.section_$().form.defaultEntryId.trim();return e.length?this.getEmbeddingModelOptionsForEntry(e):[]}loadEmbeddingModelsForEntry(e){return C(this,null,function*(){let n=e.trim();if(!n.length)return;let t=this.section_$().form.entries.find(c=>c.id===n);if(t===void 0)return;this.updateRuntime({embeddingModelsListLoadingByEntryId:y(g({},this.section_$().runtime.embeddingModelsListLoadingByEntryId),{[n]:!0}),embeddingModelsListErrorByEntryId:y(g({},this.section_$().runtime.embeddingModelsListErrorByEntryId),{[n]:""})});let a=this.section_$().runtime.embedApiKeyEditModeByEntryId[t.id]===!0?t.apiKeyRaw.trim():"";try{let c=yield this.settings_AS.postListEmbeddingModels({embeddingBackend:t.embeddingBackend,baseUrl:t.baseUrl,apiKey:a.length>0?a:void 0,embeddingProfileId:n}),v=this.section_$().runtime;c.success===!0&&c.models!==void 0?this.updateRuntime({embeddingModelsListByEntryId:y(g({},v.embeddingModelsListByEntryId),{[n]:c.models}),embeddingModelsListLoadingByEntryId:y(g({},v.embeddingModelsListLoadingByEntryId),{[n]:!1})}):this.updateRuntime({embeddingModelsListErrorByEntryId:y(g({},v.embeddingModelsListErrorByEntryId),{[n]:c.error??"Ismeretlen hiba"}),embeddingModelsListByEntryId:y(g({},v.embeddingModelsListByEntryId),{[n]:[]}),embeddingModelsListLoadingByEntryId:y(g({},v.embeddingModelsListLoadingByEntryId),{[n]:!1})})}catch(c){let v=c instanceof Error?c.message:"Modell lista sikertelen.",h=this.section_$().runtime;this.updateRuntime({embeddingModelsListErrorByEntryId:y(g({},h.embeddingModelsListErrorByEntryId),{[n]:v}),embeddingModelsListByEntryId:y(g({},h.embeddingModelsListByEntryId),{[n]:[]}),embeddingModelsListLoadingByEntryId:y(g({},h.embeddingModelsListLoadingByEntryId),{[n]:!1})})}})}updateEmbeddingEntryAtIndex(e,n){this.section_$.update(t=>{let a=[...t.form.entries];return e<0||e>=a.length?t:(a[e]=g(g({},a[e]),n),y(g({},t),{form:y(g({},t.form),{entries:a})}))})}addEmbeddingEntry(){let e=globalThis.crypto.randomUUID();this.section_$.update(n=>{let t={id:e,label:"\xDAj embedding provider",enabled:!0,embeddingBackend:"ollama",baseUrl:"",modelId:"",dimensions:"",apiKeyRaw:"",apiKeyMasked:""},a=[...n.form.entries,t],c=n.form.defaultEntryId;return a.some(v=>v.id===c)||(c=a[0].id),y(g({},n),{form:{defaultEntryId:c,entries:a}})})}removeEmbeddingEntryAtIndex(e){this.section_$.update(n=>{if(n.form.entries.length<=1||e<0||e>=n.form.entries.length)return n;let t=n.form.entries[e],a=n.form.entries.filter((z,L)=>L!==e),c=n.form.defaultEntryId;c===t.id&&(c=a[0].id);let v=g({},n.runtime),h=g({},v.embedApiKeyEditModeByEntryId);delete h[t.id],v.embedApiKeyEditModeByEntryId=h;let k=g({},v.embeddingModelsListByEntryId);delete k[t.id],v.embeddingModelsListByEntryId=k;let D=g({},v.embeddingModelsListLoadingByEntryId);delete D[t.id],v.embeddingModelsListLoadingByEntryId=D;let F=g({},v.embeddingModelsListErrorByEntryId);return delete F[t.id],v.embeddingModelsListErrorByEntryId=F,y(g({},n),{form:{defaultEntryId:c,entries:a},runtime:v})})}startEmbedApiKeyEdit(e){this.section_$.update(n=>y(g({},n),{runtime:y(g({},n.runtime),{embedApiKeyEditModeByEntryId:y(g({},n.runtime.embedApiKeyEditModeByEntryId),{[e]:!0})})}))}clearEmbedApiKeyEditModes(){this.section_$.update(e=>y(g({},e),{runtime:y(g({},e.runtime),{embedApiKeyEditModeByEntryId:{}})}))}closeEmbedApiKeyEdit(e){this.section_$.update(n=>{let t=g({},n.runtime.embedApiKeyEditModeByEntryId);return delete t[e],y(g({},n),{runtime:y(g({},n.runtime),{embedApiKeyEditModeByEntryId:t})})})}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.embedding),n=e.entries,t;if(Array.isArray(n)){let a=e.defaultEntryId,c=typeof a=="string"&&a.trim().length>0?a.trim():i.migratedDefaultEntryId,v=n.map(h=>i.parseEntryFromServerRecord(h));if(v.length===0)t=i.defaultFormFromFlatResponse(e);else{let h=c;v.some(k=>k.id===h)||(h=v[0].id),t={defaultEntryId:h,entries:v}}}else t=i.defaultFormFromFlatResponse(e);this.setSection({form:t,runtime:{embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:"",embedApiKeyEditModeByEntryId:{},embeddingModelsListByEntryId:{},embeddingModelsListLoadingByEntryId:{},embeddingModelsListErrorByEntryId:{}}})})}buildSaveBody(){let e=this.section_$().form,n=e.entries.map(t=>{let a=t.dimensions.trim(),c=a.length>0&&Number.isFinite(Number(a))?Math.floor(Number(a)):void 0,v={id:t.id,label:t.label,enabled:t.enabled,embeddingBackend:t.embeddingBackend,baseUrl:t.baseUrl,modelId:t.modelId};return c!==void 0&&c>0&&(v.dimensions=c),t.apiKeyRaw.trim().length>0&&(v.apiKeyRaw=t.apiKeyRaw.trim()),v});return{defaultEntryId:e.defaultEntryId,entries:n}}static defaultFormFromFlatResponse(e){let n=i.parseEntryFromServerRecord({id:i.migratedDefaultEntryId,label:"Default",enabled:!0,embeddingBackend:e.embeddingBackend,baseUrl:e.baseUrl,modelId:e.modelId,dimensions:e.dimensions,apiKeyMasked:e.apiKeyMasked});return{defaultEntryId:n.id,entries:[n]}}runEmbedSmoke(e){return C(this,null,function*(){this.updateRuntime({embedSmokeLoading:!0,embedSmokeMessage:"",embedSmokeError:""});try{let n=yield this.ragSample_AS.postEmbedSmoke({sampleText:e.sampleText});if(n.ok){let t=n.dimension!=null&&Number.isFinite(n.dimension)?String(n.dimension):"?";this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:n.message??`OK, vektor dimenzi\xF3: ${t}`,embedSmokeError:""})}else this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:n.error??"Ismeretlen hiba"})}catch(n){let t=n instanceof Error?n.message:"Embedding smoke sikertelen.";this.updateRuntime({embedSmokeLoading:!1,embedSmokeMessage:"",embedSmokeError:t})}})}static isPlainRecord(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}static parseEntryFromServerRecord(e){let n=i.isPlainRecord(e)?e:{},t=n.id,a=typeof t=="string"&&t.trim().length>0?t.trim():i.migratedDefaultEntryId,c=n.label,v=typeof c=="string"?c:"",h=n.enabled!==!1,k=n.embeddingBackend,D=typeof k=="string"&&k.trim().length>0?k.trim():"ollama",F=typeof n.baseUrl=="string"?n.baseUrl:"",z=typeof n.modelId=="string"?n.modelId:"",L=n.dimensions,H=typeof L=="number"&&Number.isFinite(L)?String(Math.floor(L)):"",W=typeof n.apiKeyMasked=="string"?n.apiKeyMasked:"";return{id:a,label:v,enabled:h,embeddingBackend:D,baseUrl:F,modelId:z,dimensions:H,apiKeyRaw:"",apiKeyMasked:W}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Hn=(()=>{class i extends K{section_$=A({form:{enabled:!1,vectorStoreBackend:"none"}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.rag}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.rag),n=typeof e.vectorStoreBackend=="string"&&e.vectorStoreBackend.trim().length>0?e.vectorStoreBackend.trim():"none";this.setSection({form:{enabled:e.enabled===!0,vectorStoreBackend:n}})})}buildSaveBody(){let e=this.section_$().form;return{enabled:e.enabled,vectorStoreBackend:e.vectorStoreBackend}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var qn=(()=>{class i{baseUrl=`${Ge.api.baseUrl}/developer`;http=w(ze);getReviewsMeta(){return te(this.http.get(`${this.baseUrl}/reviews-meta`)).then(e=>e.meta)}runReviews(e){return te(this.http.post(`${this.baseUrl}/run-reviews`,e))}getAutofixesMeta(){return te(this.http.get(`${this.baseUrl}/autofixes-meta`)).then(e=>e.meta)}runAutofixes(e){return te(this.http.post(`${this.baseUrl}/run-autofixes`,e))}static \u0275fac=function(n){return new(n||i)};static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var kt=(()=>{class i extends K{developer_AS=w(qn);section_$=A({form:{targetPath:"",reviewConfigs:{},postModifyChecksEnabled:!1,postModifyChecksScriptFileExtensions:".ts, .js, .tsx, .jsx",postModifyChecksCompileEnabled:!1,postModifyChecksCompileCommand:"",postModifyChecksLintEnabled:!1,postModifyChecksLintCommand:"",postModifyChecksTimeoutMs:15e3,postModifyChecksReviews:[]},runtime:{isLoadingMeta:!1,metaLoadError:null,reviewMeta:null,isRunning:!1,runResult:null,runError:null,autofixMeta:null,isRunningAutofix:!1,autofixResult:null,autofixError:null}});getSectionId(){return f.developer}getSection_$(){return this.section_$}updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.developer),n=typeof e.targetPath=="string"?e.targetPath:"",t=e.reviewConfigs!==null&&typeof e.reviewConfigs=="object"&&!Array.isArray(e.reviewConfigs)?e.reviewConfigs:{};if(!n.trim())try{n=(yield this.settings_AS.getDefaultWorkspace()).workspacePath||""}catch{}let a=typeof e.postModifyChecks=="object"&&e.postModifyChecks!==null?e.postModifyChecks:{},c=Array.isArray(a.scriptFileExtensions)?a.scriptFileExtensions.join(", "):".ts, .js, .tsx, .jsx";this.updateForm({targetPath:n,reviewConfigs:t,postModifyChecksEnabled:typeof a.enabled=="boolean"?a.enabled:!1,postModifyChecksScriptFileExtensions:c,postModifyChecksCompileEnabled:typeof a.compileEnabled=="boolean"?a.compileEnabled:!1,postModifyChecksCompileCommand:typeof a.compileCommand=="string"?a.compileCommand:"",postModifyChecksLintEnabled:typeof a.lintEnabled=="boolean"?a.lintEnabled:!1,postModifyChecksLintCommand:typeof a.lintCommand=="string"?a.lintCommand:"",postModifyChecksTimeoutMs:typeof a.checkTimeoutMs=="number"&&a.checkTimeoutMs>0?a.checkTimeoutMs:15e3,postModifyChecksReviews:i.parsePostModifyReviews(a.reviews)}),this.section_$().runtime.reviewMeta||this.loadReviewMeta(),this.section_$().runtime.autofixMeta||this.loadAutofixMeta()})}loadReviewMeta(){return C(this,null,function*(){this.updateRuntime({isLoadingMeta:!0,metaLoadError:null});try{let e=yield this.developer_AS.getReviewsMeta();this.updateRuntime({reviewMeta:e,isLoadingMeta:!1})}catch(e){let n=e instanceof Error?e.message:String(e);this.updateRuntime({isLoadingMeta:!1,metaLoadError:n})}})}runReviews(e){return C(this,null,function*(){this.updateRuntime({isRunning:!0,runError:null,runResult:null});try{let n=yield this.developer_AS.runReviews({reviewIds:e});this.updateRuntime({runResult:n,isRunning:!1})}catch(n){let t=n instanceof Error?n.message:String(n);this.updateRuntime({isRunning:!1,runError:t})}})}toggleReview(e,n){let t=g({},this.section_$().form.reviewConfigs),a=t[e];t[e]={isEnabled:n,params:a?.params??{}},this.updateForm({reviewConfigs:t}),this.master?.bumpDigest()}updateReviewParam(e,n,t){let a=g({},this.section_$().form.reviewConfigs),c=a[e];a[e]={isEnabled:c?.isEnabled??!0,params:y(g({},c?.params??{}),{[n]:t})},this.updateForm({reviewConfigs:a}),this.master?.bumpDigest()}loadAutofixMeta(){return C(this,null,function*(){try{let e=yield this.developer_AS.getAutofixesMeta();this.updateRuntime({autofixMeta:e})}catch{}})}runAutofixes(e,n=!0){return C(this,null,function*(){this.updateRuntime({isRunningAutofix:!0,autofixError:null,autofixResult:null});try{let t=yield this.developer_AS.runAutofixes({reviewIds:e,dryRun:n});this.updateRuntime({autofixResult:t,isRunningAutofix:!1})}catch(t){let a=t instanceof Error?t.message:String(t);this.updateRuntime({isRunningAutofix:!1,autofixError:a})}})}buildSaveBody(){let e=this.section_$().form,n=e.postModifyChecksScriptFileExtensions.split(",").map(t=>t.trim()).filter(t=>t.length>0);return{targetPath:e.targetPath,reviewConfigs:e.reviewConfigs,postModifyChecks:{enabled:e.postModifyChecksEnabled,scriptFileExtensions:n,compileEnabled:e.postModifyChecksCompileEnabled,compileCommand:e.postModifyChecksCompileCommand,lintEnabled:e.postModifyChecksLintEnabled,lintCommand:e.postModifyChecksLintCommand,checkTimeoutMs:e.postModifyChecksTimeoutMs,reviews:e.postModifyChecksReviews.map(t=>({id:t.id,name:t.name,command:t.command,enabled:t.enabled}))}}}updateDeveloperForm(e){this.updateForm(e),this.master?.bumpDigest()}static parsePostModifyReviews(e){return Array.isArray(e)?e.filter(n=>typeof n=="object"&&n!==null).map(n=>{let t=n;return{id:typeof t.id=="string"?t.id:i.generatePostModifyReviewId(),name:typeof t.name=="string"?t.name:"",command:typeof t.command=="string"?t.command:"",enabled:typeof t.enabled=="boolean"?t.enabled:!1}}):[]}static generatePostModifyReviewId(){return`review-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}addPostModifyReview(){let e=this.section_$().form.postModifyChecksReviews,n={id:i.generatePostModifyReviewId(),name:"",command:"",enabled:!0};this.updateDeveloperForm({postModifyChecksReviews:[...e,n]})}removePostModifyReview(e){let n=this.section_$().form.postModifyChecksReviews;this.updateDeveloperForm({postModifyChecksReviews:n.filter((t,a)=>a!==e)})}updatePostModifyReviewField(e,n){let a=this.section_$().form.postModifyChecksReviews.map((c,v)=>v===e?g(g({},c),n):c);this.updateDeveloperForm({postModifyChecksReviews:a})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var wt=(()=>{class i extends K{section_$=A({form:{runExecutionPaletteConstraint:me.full,llmDebugConsoleEnabled:!1,sessionLockTimeoutMinutes:15},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}updateAgentRuntimeForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.agentRuntime}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.agentRuntime);this.setSection({form:{runExecutionPaletteConstraint:i.parseRunExecutionPaletteConstraintFromUnknown(e.runExecutionPaletteConstraint),llmDebugConsoleEnabled:typeof e.llmDebugConsoleEnabled=="boolean"?e.llmDebugConsoleEnabled:!1,sessionLockTimeoutMinutes:typeof e.sessionLockTimeoutMinutes=="number"&&e.sessionLockTimeoutMinutes>0?e.sessionLockTimeoutMinutes:15},runtime:{}})})}buildSaveBody(){let e=this.section_$().form;return{runExecutionPaletteConstraint:e.runExecutionPaletteConstraint,llmDebugConsoleEnabled:e.llmDebugConsoleEnabled,sessionLockTimeoutMinutes:e.sessionLockTimeoutMinutes}}static parseRunExecutionPaletteConstraintFromUnknown(e){let n=[me.full,me.askOnly,me.planOnly];for(let t of n)if(e===t)return t;if(typeof e=="string"){let t=e.trim();for(let a of n)if(t===a)return a}return me.full}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Dt=(()=>{class i extends K{section_$=A({form:{braveSearchApiKeyDraft:"",braveSearchApiKeyMasked:""},runtime:{}});getSectionId(){return f.consultant}getSection_$(){return this.section_$}updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.consultant),n=typeof e.braveSearchApiKeyMasked=="string"?e.braveSearchApiKeyMasked:"";this.setSection({form:{braveSearchApiKeyDraft:"",braveSearchApiKeyMasked:n},runtime:{}})})}buildSaveBody(){return{braveSearchApiKey:this.section_$().form.braveSearchApiKeyDraft.trim()}}updateConsultantForm(e){this.updateForm(e),this.master?.bumpDigest()}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var He=class{static splitPendingProviderAccessForDiscordSection(d){let e=[],n=[];for(let t of d)t.channelId?.trim()?e.push(t):n.push(t);return{pendingChannelAccessRequests:e,pendingUserAccessRequests:n}}};var At=(()=>{class i extends K{section_$=A({form:{providerAccess:{},pendingProviderAccessRequests:[],discordGuildAccess:{allowedGuilds:[]},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0,newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0},runtime:{}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}updateGuildEntry(e,n){let a=this.section_$().form.discordGuildAccess.allowedGuilds;if(e<0||e>=a.length)return;let c=a.slice();c[e]=g(g({},c[e]),n),this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:c}})}addGuildEntry(){let e=this.section_$(),n=e.form.newGuildId.trim();if(!n)return;let t=e.form.newGuildName.trim().length>0?e.form.newGuildName.trim():void 0,a=e.form.newGuildChannelId.trim(),c=e.form.newGuildUserId.trim(),v=e.form.newGuildMentionOnly;if(e.form.discordGuildAccess.allowedGuilds.some(k=>k.guildId===n&&(k.channelId?.trim()??"")===a&&(k.userId?.trim()??"")===c))this.updateDiscordAccessForm({newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0});else{let k=this.section_$(),D={guildId:n,guildName:t,channelId:a.length>0?a:void 0,userId:c.length>0?c:void 0,mentionOnly:v?void 0:!1};this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:[...k.form.discordGuildAccess.allowedGuilds,D]},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0})}}removeGuildEntry(e){let t=this.section_$().form.discordGuildAccess.allowedGuilds;e<0||e>=t.length||this.updateDiscordAccessForm({discordGuildAccess:{allowedGuilds:t.slice(0,e).concat(t.slice(e+1))}})}addProviderAccessEntry(){let e=this.section_$(),n=e.form.newAccessChannelId.trim(),t=e.form.newAccessUserId.trim(),a=e.form.newAccessGuildId.trim();if(!n&&!t)return;let c=e.form.providerAccess.discord??[],v=e.form.newAccessMentionOnly,h={channelId:n||void 0,userId:t||void 0,guildId:a.length>0?a:void 0,mentionOnly:v?void 0:!1};this.updateDiscordAccessForm({providerAccess:y(g({},e.form.providerAccess),{discord:[...c,h]}),newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0})}updateProviderAccessEntry(e,n,t){let a=this.section_$(),c=a.form.providerAccess[e]??[];if(n<0||n>=c.length)return;let v=c.slice();v[n]=g(g({},v[n]),t),this.updateForm({providerAccess:y(g({},a.form.providerAccess),{[e]:v})}),this.master?.bumpDigest()}removeProviderAccessEntry(e,n){let t=this.section_$(),a=t.form.providerAccess[e]??[];if(n<0||n>=a.length)return;let c=a.slice(0,n).concat(a.slice(n+1));if(c.length===0){let v={};for(let[h,k]of Object.entries(t.form.providerAccess))h!==e&&(v[h]=k);this.updateDiscordAccessForm({providerAccess:v})}else this.updateDiscordAccessForm({providerAccess:y(g({},t.form.providerAccess),{[e]:c})})}getSanitizedProviderAccess(){let e={},n=this.section_$().form.providerAccess;for(let[t,a]of Object.entries(n)){if(!Array.isArray(a))continue;let c=a.filter(v=>typeof v.channelId=="string"&&v.channelId.trim().length>0||typeof v.userId=="string"&&v.userId.trim().length>0).map(v=>{let h={channelId:v.channelId?.trim()||void 0,userId:v.userId?.trim()||void 0,channelName:v.channelName?.trim()||void 0,userName:v.userName?.trim()||void 0,guildId:v.guildId?.trim()||void 0,guildName:v.guildName?.trim()||void 0};return v.mentionOnly===!1?y(g({},h),{mentionOnly:!1}):v.mentionOnly===!0?y(g({},h),{mentionOnly:!0}):h});c.length>0&&(e[t]=c)}return e}updateDiscordAccessForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.discordAccess}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.discordAccess),n=Array.isArray(e.channelAccesses)?e.channelAccesses:[],t=n.length>0?{discord:n}:{},a=Array.isArray(e.pendingChannelAccessRequests)?e.pendingChannelAccessRequests:[],c=Array.isArray(e.pendingUserAccessRequests)?e.pendingUserAccessRequests:[],v=[...a,...c],h=Array.isArray(e.discordGuildAccesses)?e.discordGuildAccesses:[];this.setSection({form:{providerAccess:t,pendingProviderAccessRequests:v,discordGuildAccess:{allowedGuilds:h},newGuildId:"",newGuildName:"",newGuildChannelId:"",newGuildUserId:"",newGuildMentionOnly:!0,newAccessChannelId:"",newAccessUserId:"",newAccessGuildId:"",newAccessMentionOnly:!0},runtime:{}})})}buildSaveBody(){let e=this.getSanitizedProviderAccess(),n=this.section_$().form,t=He.splitPendingProviderAccessForDiscordSection(n.pendingProviderAccessRequests),a=n.discordGuildAccess.allowedGuilds.map(c=>{let v={guildId:c.guildId,guildName:c.guildName,channelId:c.channelId?.trim()||void 0,channelName:c.channelName,userId:c.userId?.trim()||void 0,userName:c.userName};return c.mentionOnly===!1?y(g({},v),{mentionOnly:!1}):c.mentionOnly===!0?y(g({},v),{mentionOnly:!0}):v});return{channelAccesses:e.discord??[],userAccesses:[],discordGuildAccesses:a.length>0?a:[],pendingChannelAccessRequests:t.pendingChannelAccessRequests,pendingUserAccessRequests:t.pendingUserAccessRequests}}postProviderAccessAllowForPending(e){return C(this,null,function*(){let n=e.pending;return this.settings_AS.postProviderAccessAllow({providerName:n.providerName,channelId:n.channelId??"",userId:n.userId??"",guildId:n.guildId,channelName:n.channelName,userName:n.userName,guildName:n.guildName})})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Pt=(()=>{class i extends K{section_$=A({form:{mcpEntries:[],mcpAddJsonDraft:"",mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""},runtime:{mcpAddError:"",mcpEditError:"",mcpEntryTestState:{},mcpEntrySyncState:{}}});updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}updateRuntime(e){this.section_$.update(n=>y(g({},n),{runtime:g(g({},n.runtime),e)}))}setSection(e){this.section_$.set(e)}addMcpEntryFromJson(){this.updateRuntime({mcpAddError:""});let e=this.section_$().form.mcpAddJsonDraft.trim();if(!e)return;let n=ie.tryParseStrict({text:e,contextLabel:"CCAP_SettingsMcp_add_entry_json"});if(!n.ok){this.updateRuntime({mcpAddError:n.failure.summaryMessage});return}let t=n.value;if(t===null||typeof t!="object"||Array.isArray(t)){this.updateRuntime({mcpAddError:"\xC9rv\xE9nytelen JSON: objektum kell."});return}let a=Object.fromEntries(Object.entries(t)),c=typeof a.name=="string"&&a.name.trim().length>0?a.name.trim():void 0,v=typeof a.transport=="string"&&a.transport.trim().length>0?a.transport.trim():void 0,h=typeof a.command=="string"&&a.command.trim().length>0?a.command.trim():void 0;if(!c||!v||!h){this.updateRuntime({mcpAddError:"K\xF6telez\u0151 mez\u0151k: name, transport, command (nem \xFCres string)."});return}let k,D=a.args;Array.isArray(D)&&(k=D.filter(W=>typeof W=="string"),k.length===0&&(k=void 0));let F,z=a.env;if(z!==null&&typeof z=="object"&&!Array.isArray(z)){let W={};for(let[O,Q]of Object.entries(z))typeof Q=="string"&&(W[O]=Q);Object.keys(W).length>0&&(F=W)}let L={name:c,transport:v,command:h,args:k,env:F},H=this.section_$();this.updateForm({mcpEntries:[...H.form.mcpEntries,L],mcpAddJsonDraft:""})}removeMcpEntry(e){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;let t=n.form.mcpEntries.slice(0,e).concat(n.form.mcpEntries.slice(e+1)),a=n.form.mcpEditIndex,c=n.form.mcpEditDraft,v=n.form.mcpEditArgsStr,h=n.form.mcpEditEnvStr;n.form.mcpEditIndex===e?(a=null,c=null,v="",h=""):n.form.mcpEditIndex!==null&&n.form.mcpEditIndex>e&&(a=n.form.mcpEditIndex-1),this.updateForm({mcpEntries:t,mcpEditIndex:a,mcpEditDraft:c,mcpEditArgsStr:v,mcpEditEnvStr:h}),this.updateRuntime({mcpEditError:""})}getMcpEntryCommandPreview(e){let n=e.command;return n.length>50?n.slice(0,50)+"\u2026":n}getMcpEntryTestState(e){return this.section_$().runtime.mcpEntryTestState[e]??{inProgress:!1,message:"",success:!1}}getMcpEntrySyncState(e){return this.section_$().runtime.mcpEntrySyncState[e]??{inProgress:!1}}updateMcpEditDraftField(e,n){let a=this.section_$().form.mcpEditDraft;a&&(this.updateForm({mcpEditDraft:y(g({},a),{[e]:n})}),this.master?.bumpDigest())}updateMcpEditArgsStr(e){this.updateForm({mcpEditArgsStr:e}),this.master?.bumpDigest()}updateMcpEditEnvStr(e){this.updateForm({mcpEditEnvStr:e}),this.master?.bumpDigest()}openMcpEdit(e){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;let t=n.form.mcpEntries[e],a={name:t.name,transport:t.transport,command:t.command,args:t.args?[...t.args]:void 0,env:t.env?g({},t.env):void 0};this.updateForm({mcpEditIndex:e,mcpEditDraft:a,mcpEditArgsStr:JSON.stringify(a.args??[],null,2),mcpEditEnvStr:JSON.stringify(a.env??{},null,2)}),this.updateRuntime({mcpEditError:""})}cancelMcpEdit(){this.updateForm({mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""}),this.updateRuntime({mcpEditError:""})}saveMcpEdit(){let e=this.section_$();if(this.updateRuntime({mcpEditError:""}),e.form.mcpEditIndex===null||e.form.mcpEditDraft===null)return;let n=e.form.mcpEditDraft,t=n.name.trim(),a=n.transport.trim(),c=n.command.trim();if(!t||!a||!c){this.updateRuntime({mcpEditError:"K\xF6telez\u0151 mez\u0151k: name, transport, command (nem \xFCres string)."});return}let v,h=ie.tryParseStrict({text:e.form.mcpEditArgsStr.trim()||"[]",contextLabel:"CCAP_SettingsMcp_edit_args"});if(!h.ok){this.updateRuntime({mcpEditError:'args: \xE9rv\xE9nyes JSON t\xF6mb kell (pl. [] vagy ["--app","desktop"]).'});return}let k=h.value;Array.isArray(k)&&(v=k.filter(W=>typeof W=="string"),v.length===0&&(v=void 0));let D,F=ie.tryParseStrict({text:e.form.mcpEditEnvStr.trim()||"{}",contextLabel:"CCAP_SettingsMcp_edit_env"});if(!F.ok){this.updateRuntime({mcpEditError:"env: \xE9rv\xE9nyes JSON objektum kell (pl. {})."});return}let z=F.value;if(z!==null&&typeof z=="object"&&!Array.isArray(z)){let W={};for(let[O,Q]of Object.entries(z))typeof Q=="string"&&(W[O]=Q);Object.keys(W).length>0&&(D=W)}let L=e.form.mcpEditIndex,H=e.form.mcpEntries.map((W,O)=>O===L?{name:t,transport:a,command:c,args:v,env:D}:W);this.updateForm({mcpEntries:H,mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""}),this.updateRuntime({mcpEditError:""})}testMcpEntry(e){return C(this,null,function*(){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;this.updateRuntime({mcpEntryTestState:y(g({},n.runtime.mcpEntryTestState),{[e]:{inProgress:!0,message:"",success:!1}})});let t=n.form.mcpEntries[e];try{let a=yield this.settings_AS.postMcpSync(t),c=this.section_$();this.updateRuntime({mcpEntryTestState:y(g({},c.runtime.mcpEntryTestState),{[e]:{inProgress:!1,message:a.success?"El\xE9rhet\u0151.":a.error??"Hiba",success:a.success}})})}catch(a){let c=N.getSettingsErrorResult(a).message,v=this.section_$();this.updateRuntime({mcpEntryTestState:y(g({},v.runtime.mcpEntryTestState),{[e]:{inProgress:!1,message:c,success:!1}})})}})}syncMcpEntry(e){return C(this,null,function*(){let n=this.section_$();if(e<0||e>=n.form.mcpEntries.length)return;this.updateRuntime({mcpEntrySyncState:y(g({},n.runtime.mcpEntrySyncState),{[e]:{inProgress:!0,toolCount:void 0,toolNames:void 0,error:void 0}})});let t=n.form.mcpEntries[e];try{let a=yield this.settings_AS.postMcpSync(t),c=this.section_$();this.updateRuntime({mcpEntrySyncState:y(g({},c.runtime.mcpEntrySyncState),{[e]:{inProgress:!1,toolCount:a.toolCount,toolNames:a.toolNames,error:a.success?void 0:a.error??"Hiba"}})})}catch(a){let c=N.getSettingsErrorResult(a).message,v=this.section_$();this.updateRuntime({mcpEntrySyncState:y(g({},v.runtime.mcpEntrySyncState),{[e]:{inProgress:!1,error:c}})})}})}mcpEntryTestState_$=$(()=>this.section_$().runtime.mcpEntryTestState);mcpEntrySyncState_$=$(()=>this.section_$().runtime.mcpEntrySyncState);mcpEntryCommandPreviewMap_$=$(()=>this.section_$().form.mcpEntries.map(e=>this.getMcpEntryCommandPreview(e)));mcpEntrySyncToolNamesStrMap_$=$(()=>{let e=this.section_$().runtime.mcpEntrySyncState,n={};for(let[t,a]of Object.entries(e)){let c=Number(t);Number.isInteger(c)&&a?.toolNames?.length&&(n[c]=a.toolNames.join(", "))}return n});updateMcpForm(e){this.updateForm(e),this.master?.bumpDigest()}getSectionId(){return f.mcp}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.mcp),n=Array.isArray(e.mcpEntries)?e.mcpEntries:[];this.setSection({form:{mcpEntries:n,mcpAddJsonDraft:"",mcpEditIndex:null,mcpEditDraft:null,mcpEditArgsStr:"",mcpEditEnvStr:""},runtime:this.section_$().runtime})})}buildSaveBody(){let e=this.section_$().form;return{mcpEntries:e.mcpEntries.length>0?[...e.mcpEntries]:[]}}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var $t=class{static parseCcapLooseToolSchemaFromUnknown(d){if(!Ht(d)||d.type!=="object")return null;let e=d.properties;if(!Ht(e))return null;let n={};for(let a of Object.keys(e)){let c=Jn(e[a]);if(c===null)return null;n[a]=c}let t;if(d.required!==void 0){if(!Array.isArray(d.required)||!d.required.every(a=>typeof a=="string"))return null;t=d.required}return{type:"object",properties:n,required:t}}};function Ht(i){return i!==null&&typeof i=="object"&&!Array.isArray(i)}function Jn(i){if(!Ht(i)||typeof i.type!="string")return null;let d={type:i.type};if(typeof i.description=="string"&&(d.description=i.description),Array.isArray(i.enum)&&i.enum.every(e=>typeof e=="string")&&(d.enum=i.enum),Object.prototype.hasOwnProperty.call(i,"default")&&(d.default=i.default),i.items!==void 0){let e=Jn(i.items);if(e===null)return null;d.items=e}return d}var qt=`{
2
2
  "type": "object",
3
3
  "properties": {},
4
4
  "required": []
@@ -8,4 +8,4 @@ import{a as Bn}from"./chunk-7JK6WJH4.js";import{p as Gn,q as On}from"./chunk-4NI
8
8
  "${t}"
9
9
 
10
10
  A t\xF6rl\xE9s v\xE9gleges \u2014 a ment\xE9s ut\xE1n az instance \xE9s a hozz\xE1 tartoz\xF3 p\xE1ros\xEDt\xE1si adatok elvesznek.`),this.pendingConfirmAction_=()=>C(this,null,function*(){this.ocRegistry_DS.removeInstance(a)}),this.confirmModalOpen_$.set(!0)}handleConfirmModalDismissed(){this.pendingConfirmAction_=null,this.confirmModalOpen_$.set(!1),this.confirmModalTitle_$.set(""),this.confirmModalBody_$.set("")}handleConfirmModalCancel(){this.handleConfirmModalDismissed()}handleConfirmModalConfirm(){return C(this,null,function*(){let e=this.pendingConfirmAction_;this.pendingConfirmAction_=null,this.confirmModalOpen_$.set(!1),this.confirmModalTitle_$.set(""),this.confirmModalBody_$.set(""),e&&(yield e())})}handleSave(){return C(this,null,function*(){yield this.ocRegistry_DS.save()})}handleSaveInstance(e){return C(this,null,function*(){let n=this.ocRegistry_DS.section_$().form.instances[e];n&&(yield this.ocRegistry_DS.saveInstance(n.instanceId))})}handlePairInstance(e){this.ocRegistry_DS.pairInstance(e).catch(n=>{Zt.DyFM_Log.error("[CCAP] settings-openclaw pairInstance",n)})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=j({type:i,selectors:[["app-ccap-settings-openclaw"]],decls:20,vars:9,consts:[[1,"max-w-3xl","space-y-6"],[1,"flex","items-center","justify-between","mb-2"],[1,"text-lg","font-semibold","text-neutral-100"],[1,"px-3","py-1.5","text-sm","bg-ccapAccent","text-white","rounded","hover:bg-ccapAccent/80","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"text-xs","text-neutral-500"],["sourceLabelOverride","OpenClaw Registry bet\xF6lt\xE9s",1,"block",3,"error"],["sourceLabelOverride","OpenClaw Registry ment\xE9s",1,"block",3,"error"],[1,"text-xs","text-neutral-500","py-4","text-center"],[1,"w-full","py-2","text-xs","border","border-dashed","border-neutral-700","text-neutral-500","hover:border-ccapAccent","hover:text-ccapAccent","rounded-lg","transition-colors"],[3,"closed","isOpen","title","maxWidth"],[1,"text-sm","text-neutral-300","whitespace-pre-wrap"],["modal-footer","",1,"flex","items-center","justify-end","gap-2","px-4","py-3","border-t","border-neutral-700","shrink-0","bg-neutral-900/80"],["type","button",1,"px-3","py-1.5","text-xs","font-semibold","rounded","border","border-neutral-600","text-neutral-300","hover:bg-neutral-700","transition-colors",3,"click"],["type","button",1,"px-3","py-1.5","text-xs","font-semibold","rounded","border","border-neonRed/60","text-neonRed/90","hover:bg-neonRed/10","transition-colors",3,"click"],[1,"text-xs","text-neutral-500","py-6","text-center","border","border-dashed","border-neutral-700","rounded-lg"],[1,"rounded-lg","border","border-neutral-700","bg-neutral-900","p-4","space-y-3"],[1,"w-full","py-2","text-xs","border","border-dashed","border-neutral-700","text-neutral-500","hover:border-ccapAccent","hover:text-ccapAccent","rounded-lg","transition-colors",3,"click"],[1,"flex","items-center","gap-2"],["title","Gateway el\xE9rhet\u0151",1,"w-2","h-2","rounded-full","bg-green-500"],["title","Gateway nem el\xE9rhet\u0151",1,"w-2","h-2","rounded-full","bg-red-500"],["title","Lekapcsol\xF3dva",1,"w-2","h-2","rounded-full","bg-neutral-600"],["title","St\xE1tusz ismeretlen",1,"w-2","h-2","rounded-full","bg-neutral-700"],[1,"px-2","py-0.5","text-[10px]","rounded","bg-green-500/20","text-green-400","font-medium"],[1,"px-2","py-0.5","text-[10px]","rounded","bg-amber-500/20","text-amber-400","font-medium","animate-pulse"],[1,"px-2","py-0.5","text-[10px]","rounded","bg-red-500/20","text-red-400","font-medium"],[1,"px-2","py-0.5","text-[10px]","rounded","bg-neutral-700/50","text-neutral-500","font-medium"],[1,"flex-1","text-sm","font-medium","text-neutral-200","truncate"],[1,"text-[10px]","text-neutral-500","hover:text-red-400","transition-colors","px-1",3,"click"],[1,"grid","grid-cols-3","gap-2","text-[10px]"],[1,"bg-neutral-800/50","rounded","px-2.5","py-1.5"],[1,"text-neutral-600","mb-0.5"],[1,"text-green-400","font-medium"],[1,"text-red-400","font-medium"],[1,"text-neutral-500","font-medium"],[1,"text-neutral-600","font-medium"],[1,"text-amber-400","font-medium"],[1,"block","text-[10px]","text-neutral-500","mb-1"],["type","text","placeholder","pl. default, coder, Local Dev",1,"w-full","px-2","py-1.5","text-xs","bg-neutral-800","border","border-neutral-700","rounded","text-neutral-100","focus:outline-none","focus:border-ccapAccent",3,"ngModelChange","ngModel"],["type","text","placeholder","ws://127.0.0.1:18789",1,"w-full","px-2","py-1.5","text-xs","bg-neutral-800","border","border-neutral-700","rounded","text-neutral-100","font-mono","focus:outline-none","focus:border-ccapAccent",3,"ngModelChange","ngModel"],["saveLabel","Ment\xE9s","savePendingLabel","Ment\xE9s\u2026","inputClass","w-full",3,"startEdit","valueChange","save","name","displayValue","placeholder","editMode","saveDisabled","savePending"],[1,"flex","flex-wrap","items-center","gap-3","pt-1"],[1,"flex","items-center","gap-1.5","cursor-pointer","select-none"],["type","checkbox",1,"accent-ccapAccent",3,"ngModelChange","ngModel"],[1,"text-[10px]","text-neutral-400"],[1,"flex-1"],[1,"px-2.5","py-1","text-[10px]","bg-ccapAccent","text-white","rounded","hover:bg-ccapAccent/80","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"px-2.5","py-1","text-[10px]","border","border-blue-500/50","text-blue-400","hover:bg-blue-500/10","rounded","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"px-2.5","py-1","text-[10px]","border","border-emerald-500/50","text-emerald-400","hover:bg-emerald-500/10","rounded","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"text-[10px]","px-2.5","py-1.5","rounded","whitespace-pre-line","leading-relaxed",3,"class"],[1,"text-[10px]","text-neutral-500","space-y-1","pt-1","border-t","border-neutral-800"],[1,"text-[10px]","pt-2","border-t","border-amber-500/20","bg-amber-500/5","rounded","p-3","space-y-2"],[1,"text-[10px]","pt-2","border-t","border-red-500/20","bg-red-500/5","rounded","p-3","space-y-1.5"],["sourceLabelOverride","Connection test",1,"block",3,"error"],["sourceLabelOverride","Gateway pairing",1,"block",3,"error"],[1,"text-[10px]","px-2.5","py-1.5","rounded","whitespace-pre-line","leading-relaxed"],[1,"text-green-500"],[1,"text-neutral-600"],[1,"flex","items-center","gap-1.5","text-neutral-600"],[1,"font-mono","text-neutral-400"],[1,"flex","items-center","gap-2","text-amber-400","font-medium"],[1,"animate-pulse"],[1,"text-neutral-400","leading-relaxed"],[1,"text-neutral-500","space-y-1.5","leading-relaxed"],[1,"font-medium","text-neutral-400"],[1,"list-decimal","list-inside","space-y-0.5","pl-1"],[1,"bg-neutral-800","px-1.5","py-0.5","rounded","text-neutral-300","font-mono"],[1,"text-emerald-400","font-medium"],[1,"text-neutral-600","pt-1"],[1,"flex","items-center","gap-1.5","text-neutral-600","pt-1"],[1,"flex","items-center","gap-2","text-red-400","font-medium"],[1,"text-neutral-400"],[1,"text-neutral-500"]],template:function(n,t){n&1&&(r(0,"div",0)(1,"div",1)(2,"h2",2),s(3,"OpenClaw Gateway Registry"),o(),r(4,"button",3),u("click",function(){return t.handleSave()}),s(5),o()(),r(6,"p",4),s(7," Regisztr\xE1lt OpenClaw Gateway p\xE9ld\xE1nyok. Az OC Session-\xF6k l\xE9trehoz\xE1sakor ezek alapj\xE1n v\xE1laszthat\xF3 gateway. "),o(),b(8,_d,1,1,"app-ccap-error-display",5)(9,gd,1,1,"app-ccap-error-display",6)(10,fd,2,0,"div",7)(11,Xd,6,1,"button",8),r(12,"app-s-modal",9),u("closed",function(){return t.handleConfirmModalDismissed()}),r(13,"p",10),s(14),o(),r(15,"div",11)(16,"button",12),u("click",function(){return t.handleConfirmModalCancel()}),s(17," M\xE9gse "),o(),r(18,"button",13),u("click",function(){return t.handleConfirmModalConfirm()}),s(19," T\xF6rl\xE9s "),o()()()()),n&2&&(l(4),p("disabled",t.ocRegistry_DS.saving_$()),l(),E(" ",t.ocRegistry_DS.saving_$()?"Ment\xE9s\u2026":"Ment\xE9s"," "),l(3),_(t.ocRegistry_DS.loadError_$()?8:-1),l(),_(t.ocRegistry_DS.saveError_$()?9:-1),l(),_(t.ocRegistry_DS.loading_$()?10:11),l(2),p("isOpen",t.confirmModalOpen_$())("title",t.confirmModalTitle_$())("maxWidth","md"),l(2),M(t.confirmModalBody_$()))},dependencies:[Z,ne,J,Y,pe,Oe,U],encapsulation:2})}return i})();var en="cursor-agent",Ci=(()=>{class i extends K{section_$=A({form:{command:en,argsJson:"[]"}});getSectionId(){return f.caAgent}getSection_$(){return this.section_$}updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.caAgent),n=e.command,t=typeof n=="string"&&n.trim().length>0?n.trim():en,a=[],c=e.args;if(Array.isArray(c))for(let h of c)typeof h=="string"&&a.push(h);let v=JSON.stringify(a,null,2);this.section_$.set({form:{command:t,argsJson:v}})})}buildSaveBody(){let e=this.section_$().form,n=e.argsJson.trim(),t=ie.tryParseStrict({text:n.length>0?n:"[]",contextLabel:"ca-agent.args"});if(!t.ok)throw new Error(t.failure.summaryMessage);let a=i.extractStringArrayFromUnknown(t.value);return{command:e.command.trim().length>0?e.command.trim():en,args:a}}static extractStringArrayFromUnknown(e){if(!Array.isArray(e))throw new Error("args must be a JSON array of strings");let n=[];for(let t of e){if(typeof t!="string")throw new Error("args array must contain only strings");n.push(t)}return n}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function Qd(i,d){if(i&1&&T(0,"app-ccap-error-display",13),i&2){let e=m();p("error",e.caAgent_DS.loadError_$())}}function Zd(i,d){if(i&1&&T(0,"app-ccap-error-display",14),i&2){let e=m();p("error",e.caAgent_DS.saveError_$())}}function e0(i,d){i&1&&(r(0,"div",15),s(1,"Bet\xF6lt\xE9s\u2026"),o())}function t0(i,d){if(i&1){let e=P();he(0),r(1,"div",16)(2,"div",17)(3,"label",18),s(4,"Command"),o(),r(5,"input",19),u("ngModelChange",function(t){S(e);let a=m();return x(a.caAgent_DS.updateForm({command:t}))}),o()(),r(6,"div",17)(7,"label",20),s(8,"Args (JSON array)"),o(),r(9,"textarea",21),u("ngModelChange",function(t){S(e);let a=m();return x(a.caAgent_DS.updateForm({argsJson:t}))}),o()()()}if(i&2){let e=m().caAgent_DS.section_$().form;l(5),p("ngModel",e.command),l(4),p("ngModel",e.argsJson)}}var Ei=(()=>{class i{caAgent_DS=w(Ci);sectionId=f.caAgent;cursorCliDocsInstallationHref=Mn;cursorCliDocsUsingHref=kn;cursorCliInstallPageHref=wn;ngOnInit(){this.caAgent_DS.load()}handleSave(){return C(this,null,function*(){yield this.caAgent_DS.save()})}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=j({type:i,selectors:[["app-ccap-settings-ca-agent"]],decls:63,vars:8,consts:[[1,"max-w-3xl","space-y-6"],[1,"flex","items-center","justify-between","mb-2"],[1,"text-lg","font-semibold","text-neutral-100"],["type","button",1,"px-3","py-1.5","text-sm","bg-ccapAccent","text-white","rounded","hover:bg-ccapAccent/80","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"text-xs","text-neutral-500"],[1,"text-neutral-400"],[1,"rounded-md","border","border-neutral-600","bg-neutral-900/80","p-3","space-y-2","text-xs","text-neutral-400"],[1,"font-medium","text-neutral-300"],[1,"list-disc","list-inside","space-y-1"],[1,"text-neutral-500","break-all"],[1,"text-neutral-500"],[1,"space-y-1","pt-1"],["target","_blank","rel","noopener noreferrer",1,"text-ccapAccent","hover:underline","break-all",3,"href"],["sourceLabelOverride","CA Agent bet\xF6lt\xE9s",1,"block",3,"error"],["sourceLabelOverride","CA Agent ment\xE9s",1,"block",3,"error"],[1,"text-xs","text-neutral-500","py-4","text-center"],[1,"space-y-4","rounded-lg","border","border-neutral-700","bg-neutral-900","p-4"],[1,"space-y-1"],["for","ca-agent-command",1,"block","text-xs","font-medium","text-neutral-400"],["id","ca-agent-command","type","text","name","caAgentCommand","autocomplete","off","spellcheck","false",1,"w-full","px-3","py-2","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","focus:outline-none","focus:ring-1","focus:ring-ccapAccent","font-mono",3,"ngModelChange","ngModel"],["for","ca-agent-args",1,"block","text-xs","font-medium","text-neutral-400"],["id","ca-agent-args","rows","6","name","caAgentArgs","spellcheck","false",1,"w-full","px-3","py-2","rounded","bg-neutral-800","border","border-neutral-600","text-xs","text-neutral-100","focus:outline-none","focus:ring-1","focus:ring-ccapAccent","font-mono",3,"ngModelChange","ngModel"]],template:function(n,t){n&1&&(r(0,"div",0)(1,"div",1)(2,"h2",2),s(3,"CA Agent"),o(),r(4,"button",3),u("click",function(){return t.handleSave()}),s(5),o()(),r(6,"p",4),s(7," A CA session integr\xE1ci\xF3 az Agent subprocess-et ind\xEDtja (stdio JSON-RPC, ACP Client szerep). A "),r(8,"code",5),s(9,"command"),o(),s(10," az executable; az "),r(11,"code",5),s(12,"args"),o(),s(13," strict JSON t\xF6mb (string elemek), pl. "),r(14,"code",5),s(15,"[]"),o(),s(16," vagy "),r(17,"code",5),s(18,'["--help"]'),o(),s(19,". A szerver a Node process "),r(20,"code",5),s(21,"PATH"),o(),s(22," v\xE1ltoz\xF3j\xE1val keresi a parancsot (alap\xE9rtelmez\xE9s: "),r(23,"code",5),s(24,"cursor-agent"),o(),s(25,"); ha a telep\xEDt\xE9s ut\xE1n a g\xE9pen m\xE9g nem el\xE9rhet\u0151, adj meg "),r(26,"strong",5),s(27,"teljes el\xE9r\xE9si utat"),o(),s(28,", vagy ind\xEDtsd a szervert olyan k\xF6rnyezetb\u0151l, ahol a CLI a PATH-on van. K\xF6rnyezeti fel\xFCl\xEDr\xE1s (szerver): "),r(29,"code",5),s(30,"CCAP_CA_SESSION_AGENT_COMMAND"),o(),s(31,". "),o(),r(32,"div",6)(33,"p",7),s(34,"Cursor Agent CLI \u2014 telep\xEDt\xE9s \xE9s dokument\xE1ci\xF3"),o(),r(35,"ul",8)(36,"li"),s(37," Windows (PowerShell): "),r(38,"code",9),s(39,"irm 'https://cursor.com/install?win32=true' | iex"),o(),s(40," \u2014 ut\xE1na ellen\u0151rizd a PATH-ot; \xFAj termin\xE1l / szerver \xFAjraind\xEDt\xE1s sz\xFCks\xE9ges lehet. "),o(),r(41,"li"),s(42," Ha a parancssorban sem tal\xE1lja a "),r(43,"code",10),s(44,"cursor-agent"),o(),s(45,"-et, a Command mez\u0151ben add meg a bin\xE1ris "),r(46,"strong",5),s(47,"abszol\xFAt \xFAtj\xE1t"),o(),s(48,". "),o()(),r(49,"ul",11)(50,"li")(51,"a",12),s(52," Cursor \u2014 CLI installation (hivatalos docs) "),o()(),r(53,"li")(54,"a",12),s(55," Cursor \u2014 Using Agent in CLI (hivatalos docs) "),o()(),r(56,"li")(57,"a",12),s(58," Cursor \u2014 Install / download page "),o()()()(),b(59,Qd,1,1,"app-ccap-error-display",13)(60,Zd,1,1,"app-ccap-error-display",14)(61,e0,2,0,"div",15)(62,t0,10,2,"div",16),o()),n&2&&(l(4),p("disabled",t.caAgent_DS.saving_$()),l(),E(" ",t.caAgent_DS.saving_$()?"Ment\xE9s\u2026":"Ment\xE9s"," "),l(46),p("href",t.cursorCliDocsInstallationHref,ye),l(3),p("href",t.cursorCliDocsUsingHref,ye),l(3),p("href",t.cursorCliInstallPageHref,ye),l(2),_(t.caAgent_DS.loadError_$()?59:-1),l(),_(t.caAgent_DS.saveError_$()?60:-1),l(),_(t.caAgent_DS.loading_$()?61:62))},dependencies:[Z,J,Y,U],encapsulation:2})}return i})();var yi=(()=>{class i{layout_DS=w(Gn);darkOffice_DS=w(On);globalError_CS=w(ut);workstationColsDraft=3;workstationRowsDraft=3;restColsDraft=2;restRowsDraft=3;meetingColsDraft=2;meetingRowsDraft=2;saving_$=A(!1);ngOnInit(){this.layout_DS.loadFromServer().then(()=>{this.syncDraftFromPersisted()}).catch(e=>{this.globalError_CS.showError(e,"settings-dark-office-layout-init")})}syncDraftFromPersisted(){let e=this.layout_DS.maxEverDisplay_$();this.workstationColsDraft=e.workstationCols,this.workstationRowsDraft=e.workstationRows,this.restColsDraft=e.restCols,this.restRowsDraft=e.restRows,this.meetingColsDraft=e.meetingCols,this.meetingRowsDraft=e.meetingRows}handleSave(){return C(this,null,function*(){let e={workstationCols:i.clampDim(this.workstationColsDraft),workstationRows:i.clampDim(this.workstationRowsDraft),restCols:i.clampDim(this.restColsDraft),restRows:i.clampDim(this.restRowsDraft),meetingCols:i.clampDim(this.meetingColsDraft),meetingRows:i.clampDim(this.meetingRowsDraft)},n=this.layout_DS.validateProposedGridAgainstSceneCharacters({grid:e,characters:this.darkOffice_DS.characters_$()});if(n!=null){this.globalError_CS.showError(n,"settings-dark-office-layout");return}let t=this.layout_DS.maxEverDisplay_$(),a={workstationCols:e.workstationCols,workstationRows:e.workstationRows,restCols:e.restCols,restRows:e.restRows,meetingCols:e.meetingCols,meetingRows:e.meetingRows,maxEverWorkstationCols:Math.max(t.maxEverWorkstationCols,e.workstationCols),maxEverWorkstationRows:Math.max(t.maxEverWorkstationRows,e.workstationRows),maxEverRestCols:Math.max(t.maxEverRestCols,e.restCols),maxEverRestRows:Math.max(t.maxEverRestRows,e.restRows),maxEverMeetingCols:Math.max(t.maxEverMeetingCols,e.meetingCols),maxEverMeetingRows:Math.max(t.maxEverMeetingRows,e.meetingRows)};this.saving_$.set(!0);try{yield this.layout_DS.applyPersistedFromUser(a),this.syncDraftFromPersisted()}catch(c){this.globalError_CS.showError(c,"settings-dark-office-layout-save")}finally{this.saving_$.set(!1)}})}static clampDim(e){if(!Number.isFinite(e))return 1;let n=Math.floor(e);return n<1?1:n>12?12:n}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=j({type:i,selectors:[["app-ccap-settings-dark-office-layout"]],decls:45,vars:14,consts:[[1,"max-w-3xl","space-y-6"],[1,"flex","items-center","justify-between","mb-2"],[1,"text-lg","font-semibold","text-neutral-100"],["type","button",1,"px-3","py-1.5","text-sm","bg-ccapAccent","text-white","rounded","hover:bg-ccapAccent/80","transition-colors","disabled:opacity-50",3,"click","disabled"],[1,"text-xs","text-neutral-500"],[1,"text-neutral-400"],[1,"rounded-lg","border","border-neutral-700","bg-neutral-900","p-4","space-y-4"],[1,"text-sm","font-medium","text-neutral-300"],[1,"grid","grid-cols-2","sm:grid-cols-3","gap-3"],[1,"space-y-1"],["for","do-layout-w-cols",1,"block","text-xs","text-neutral-400"],["id","do-layout-w-cols","type","number","min","1","max","12","name","doLayoutWCols",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],["for","do-layout-w-rows",1,"block","text-xs","text-neutral-400"],["id","do-layout-w-rows","type","number","min","1","max","12","name","doLayoutWRows",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],["for","do-layout-r-cols",1,"block","text-xs","text-neutral-400"],["id","do-layout-r-cols","type","number","min","1","max","12","name","doLayoutRCols",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],["for","do-layout-r-rows",1,"block","text-xs","text-neutral-400"],["id","do-layout-r-rows","type","number","min","1","max","12","name","doLayoutRRows",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],["for","do-layout-m-cols",1,"block","text-xs","text-neutral-400"],["id","do-layout-m-cols","type","number","min","1","max","12","name","doLayoutMCols",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],["for","do-layout-m-rows",1,"block","text-xs","text-neutral-400"],["id","do-layout-m-rows","type","number","min","1","max","12","name","doLayoutMRows",1,"w-full","px-2","py-1.5","rounded","bg-neutral-800","border","border-neutral-600","text-sm","text-neutral-100","font-mono",3,"ngModelChange","ngModel"],[1,"rounded-lg","border","border-neutral-700","bg-neutral-950","p-4","space-y-2"],[1,"text-sm","font-medium","text-neutral-400"],[1,"text-xs","font-mono","text-neutral-300"]],template:function(n,t){if(n&1){let a=P();r(0,"div",0)(1,"div",1)(2,"h2",2),s(3,"Dark Office layout"),o(),r(4,"button",3),u("click",function(){return S(a),x(t.handleSave())}),s(5),o()(),r(6,"p",4),s(7," A r\xE1cs m\xE9retei (1\u201312) a workstation / lounge / conference z\xF3n\xE1k kapacit\xE1s\xE1t \xE9s az SVG vil\xE1got hat\xE1rozz\xE1k meg. Cs\xF6kkent\xE9s csak akkor enged\xE9lyezett, ha a jelenlegi scene karakterek sz\xE1ma nem haladja meg az \xFAj kapacit\xE1st. A rendszer automatikusan b\u0151v\xEDt, ha t\xF6bb slot kell \u2014 a "),r(8,"span",5),s(9,"max ever"),o(),s(10," a t\xF6rt\xE9neti plafont mutatja. "),o(),r(11,"div",6)(12,"h3",7),s(13,"Aktu\xE1lis r\xE1cs (piszkozat)"),o(),r(14,"div",8)(15,"div",9)(16,"label",10),s(17,"Workstation oszlop"),o(),r(18,"input",11),be("ngModelChange",function(v){return S(a),ve(t.workstationColsDraft,v)||(t.workstationColsDraft=v),x(v)}),o()(),r(19,"div",9)(20,"label",12),s(21,"Workstation sor"),o(),r(22,"input",13),be("ngModelChange",function(v){return S(a),ve(t.workstationRowsDraft,v)||(t.workstationRowsDraft=v),x(v)}),o()(),r(23,"div",9)(24,"label",14),s(25,"Lounge oszlop"),o(),r(26,"input",15),be("ngModelChange",function(v){return S(a),ve(t.restColsDraft,v)||(t.restColsDraft=v),x(v)}),o()(),r(27,"div",9)(28,"label",16),s(29,"Lounge sor"),o(),r(30,"input",17),be("ngModelChange",function(v){return S(a),ve(t.restRowsDraft,v)||(t.restRowsDraft=v),x(v)}),o()(),r(31,"div",9)(32,"label",18),s(33,"Conference oszlop"),o(),r(34,"input",19),be("ngModelChange",function(v){return S(a),ve(t.meetingColsDraft,v)||(t.meetingColsDraft=v),x(v)}),o()(),r(35,"div",9)(36,"label",20),s(37,"Conference sor"),o(),r(38,"input",21),be("ngModelChange",function(v){return S(a),ve(t.meetingRowsDraft,v)||(t.meetingRowsDraft=v),x(v)}),o()()()(),r(39,"div",22)(40,"h3",23),s(41,"Max ever (read-only)"),o(),he(42),r(43,"p",24),s(44),o()()()}if(n&2){l(4),p("disabled",t.saving_$()),l(),E(" ",t.saving_$()?"Ment\xE9s\u2026":"Ment\xE9s"," "),l(13),xe("ngModel",t.workstationColsDraft),l(4),xe("ngModel",t.workstationRowsDraft),l(4),xe("ngModel",t.restColsDraft),l(4),xe("ngModel",t.restRowsDraft),l(4),xe("ngModel",t.meetingColsDraft),l(4),xe("ngModel",t.meetingRowsDraft);let a=t.layout_DS.maxEverDisplay_$();l(6),rn(" workstation ",a.maxEverWorkstationCols,"\xD7",a.maxEverWorkstationRows," \xB7 lounge ",a.maxEverRestCols,"\xD7",a.maxEverRestRows," \xB7 conference ",a.maxEverMeetingCols,"\xD7",a.maxEverMeetingRows," ")}},dependencies:[Z,ke,J,De,we,Y],encapsulation:2})}return i})();var Mi=Ee(Me());var hi=(()=>{class i extends K{section_$=A({form:{sharedSecret:"",peerPollIntervalSec:null,taskDefaultTimeoutSec:null},runtime:{}});diagnostics_BS=A(null);diagnostics_$=this.diagnostics_BS.asReadonly();diagnosticsLoading_$=A(!1);reBootstrapping_$=A(!1);lastReBootstrapResult_$=A(null);reconnectingWs_$=A(!1);lastReconnectWsResult_$=A(null);reconnectingPeerKey_$=A(null);lastReconnectPeerResult_$=A(null);diagnosticsError_$=A(null);reBootstrapError_$=A(null);reconnectWsError_$=A(null);reconnectPeerError_$=A(null);updateForm(e){this.section_$.update(n=>y(g({},n),{form:g(g({},n.form),e)}))}setSection(e){this.section_$.set(e)}getSectionId(){return f.cluster}getSection_$(){return this.section_$}doLoad(){return C(this,null,function*(){let e=yield this.settings_AS.getSection(f.cluster),n=e.sharedSecret,t=typeof n=="string"?n:"",a=e.peerPollIntervalSec,c=typeof a=="number"&&a>0?a:null,v=e.taskDefaultTimeoutSec,h=typeof v=="number"&&v>0?v:null,k=e.isBootstrapped,D=typeof k=="boolean"?k:void 0;this.setSection({form:{sharedSecret:t,peerPollIntervalSec:c,taskDefaultTimeoutSec:h},runtime:{isBootstrapped:D}})})}buildSaveBody(){let e=this.section_$().form;return{sharedSecret:e.sharedSecret.trim().length>0?e.sharedSecret.trim():void 0,peerPollIntervalSec:e.peerPollIntervalSec??void 0,taskDefaultTimeoutSec:e.taskDefaultTimeoutSec??void 0}}loadDiagnostics(){return C(this,null,function*(){if(!this.diagnosticsLoading_$()){this.diagnosticsLoading_$.set(!0),this.diagnosticsError_$.set(null);try{let e=yield this.settings_AS.getClusterDiagnostics();this.diagnostics_BS.set(e)}catch(e){throw this.diagnosticsError_$.set(e),e}finally{this.diagnosticsLoading_$.set(!1)}}})}triggerReBootstrap(){return C(this,null,function*(){if(this.reBootstrapping_$())return this.lastReBootstrapResult_$()??{triggered:!1,wasAlreadyBootstrapped:!1,isBootstrappedAfter:!1,isSharedSecretSet:!1,message:"Re-bootstrap m\xE1r folyamatban."};this.reBootstrapping_$.set(!0),this.reBootstrapError_$.set(null);try{let e=yield this.settings_AS.postClusterReBootstrap();return this.lastReBootstrapResult_$.set(e),yield this.loadDiagnostics(),e}catch(e){throw this.reBootstrapError_$.set(e),e}finally{this.reBootstrapping_$.set(!1)}})}triggerReconnectWs(){return C(this,null,function*(){if(this.reconnectingWs_$())return this.lastReconnectWsResult_$()??{triggered:!1,isPeiBootstrapped:!1,attemptedPeerCount:0,connectedPeerCount:0,message:"WS-reconnect m\xE1r folyamatban."};this.reconnectingWs_$.set(!0),this.reconnectWsError_$.set(null);try{let e=yield this.settings_AS.postClusterReconnectWs();return this.lastReconnectWsResult_$.set(e),yield this.loadDiagnostics(),e}catch(e){throw this.reconnectWsError_$.set(e),e}finally{this.reconnectingWs_$.set(!1)}})}triggerReconnectPeer(e){return C(this,null,function*(){if(this.reconnectingPeerKey_$())return{found:!1,isWsConnectedAfter:!1,message:"Peer-reconnect m\xE1r folyamatban."};this.reconnectingPeerKey_$.set(e),this.reconnectPeerError_$.set(null);try{let n=yield this.settings_AS.postClusterReconnectPeer(e);return this.lastReconnectPeerResult_$.set({instanceKey:e,response:n}),yield this.loadDiagnostics(),n}catch(n){throw this.reconnectPeerError_$.set(n),n}finally{this.reconnectingPeerKey_$.set(null)}})}static \u0275fac=(()=>{let e;return function(t){return(e||(e=G(i)))(t||i)}})();static \u0275prov=R({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var n0=(i,d)=>d.instanceKey,i0=(i,d)=>d.atMs;function o0(i,d){i&1&&(r(0,"div",5),s(1,"\u2713 PEI cluster akt\xEDv (bootstrap-elt)."),o())}function r0(i,d){i&1&&(r(0,"div",6),s(1,"\u26A0 PEI cluster NEM akt\xEDv \u2014 sharedSecret hi\xE1nyzik vagy hib\xE1s."),o())}function a0(i,d){i&1&&(r(0,"span",19),s(1,"\u2713 Elmentve"),o())}function s0(i,d){if(i&1&&(r(0,"span",20),s(1),o()),i&2){let e=m();l(),M(e.lastSaveError_$())}}function l0(i,d){i&1&&(r(0,"div",21),s(1," M\xE9g nincs sharedSecret be\xE1ll\xEDtva \u2014 a cross-instance dispatch nem fog m\u0171k\xF6dni. Gener\xE1lj egy er\u0151s, v\xE9letlenszer\u0171 stringet (min. 32 karakter) \xE9s \xE1ll\xEDtsd be MINDK\xC9T instance-on UGYANAZT az \xE9rt\xE9ket. "),o())}function d0(i,d){i&1&&T(0,"app-ccap-error-display",28),i&2&&p("error",d)}function c0(i,d){i&1&&T(0,"app-ccap-error-display",29),i&2&&p("error",d)}function m0(i,d){i&1&&T(0,"app-ccap-error-display",30),i&2&&p("error",d)}function p0(i,d){i&1&&T(0,"app-ccap-error-display",31),i&2&&p("error",d)}function u0(i,d){i&1&&(r(0,"span",39),s(1,"(WS-client \xE1ll)"),o())}function _0(i,d){i&1&&s(0," \u2717 nem fut ")}function g0(i,d){if(i&1&&s(0),i&2){let e=m(2);E(" \xB7 \u26A0 ",e.selfHeartbeatStatus.consecutiveFailures," fail ")}}function f0(i,d){if(i&1&&(s(0),b(1,g0,1,1)),i&2){let e=m(),n=m();E(" \u2713 ",n.formatBootstrapAttemptTime(e.selfHeartbeatStatus.lastSuccessAtMs)," "),l(),_(e.selfHeartbeatStatus.consecutiveFailures>0?1:-1)}}function S0(i,d){i&1&&s(0," \u2014 (m\xE9g nem futott) ")}function x0(i,d){if(i&1&&(r(0,"div",40)(1,"span",37),s(2,"Utols\xF3 heartbeat-hiba:"),o(),r(3,"span",45),s(4),o()()),i&2){let e=m(),n=m();l(3),p("title",e.selfHeartbeatStatus.lastFailureAtMs?n.formatBootstrapAttemptTime(e.selfHeartbeatStatus.lastFailureAtMs):""),l(),E(" ",e.selfHeartbeatStatus.lastFailureMessage," ")}}function v0(i,d){if(i&1&&(r(0,"code",59),s(1),o()),i&2){let e=d,n=m(3);q("text-green-300",e===n.currentInstanceAppVersion)("text-amber-300",e!==n.currentInstanceAppVersion),p("title",e===n.currentInstanceAppVersion?"Egyezik":"Mismatch \u2014 saj\xE1t: "+n.currentInstanceAppVersion),l(),M(e)}}function b0(i,d){i&1&&(r(0,"span",54),s(1,"\u2014"),o())}function C0(i,d){if(i&1&&(r(0,"span",56),s(1),o()),i&2){let e=m().$implicit;p("title",e.lastWsErrorAtIso),l(),M(d)}}function E0(i,d){i&1&&(r(0,"span",57),s(1,"\u2014"),o())}function y0(i,d){if(i&1){let e=P();r(0,"tr",50)(1,"td",49),s(2),o(),r(3,"td",49)(4,"span"),s(5),o()(),r(6,"td",49)(7,"span"),s(8),o()(),r(9,"td",51),s(10),o(),r(11,"td",52),b(12,v0,2,6,"code",53)(13,b0,2,0,"span",54),o(),r(14,"td",55),b(15,C0,2,2,"span",56)(16,E0,2,0,"span",57),o(),r(17,"td",52)(18,"button",58),u("click",function(){let t=S(e).$implicit,a=m(3);return x(a.handleReconnectPeer(t.instanceKey))}),s(19),o()(),r(20,"td",49)(21,"code",43),s(22),o()()()}if(i&2){let e,n,t=d.$implicit,a=m(3);l(2),M(t.hostName||"?"),l(2),q("text-green-400",t.isOnline)("text-neutral-500",!t.isOnline),l(),E(" ",t.isOnline?"\u2713":"\u25CB"," "),l(2),q("text-green-400",t.isWsConnected)("text-neutral-500",!t.isWsConnected),l(),E(" ",t.isWsConnected?"\u2713":"\u25CB"," "),l(2),E(" ",t.ageSeconds===null?"sose":t.ageSeconds+"s"," "),l(2),_((e=t.appVersion)?12:13,e),l(3),_((n=t.lastWsErrorMessage)?15:16,n),l(3),p("disabled",a.cluster_DS.reconnectingPeerKey_$()===t.instanceKey||a.cluster_DS.reconnectingWs_$())("title","Csak ezzel a peer-rel WS-kapcsolat \xFAjra\xE9p\xEDt\xE9se: "+t.instanceKey),l(),E(" ",a.cluster_DS.reconnectingPeerKey_$()===t.instanceKey?"\u27F3 \u2026":"\u27F2 Reconnect"," "),l(3),M(t.instanceKey)}}function h0(i,d){if(i&1&&(r(0,"div",44)(1,"div",46),s(2),o(),r(3,"table",47)(4,"thead")(5,"tr",48)(6,"th",49),s(7,"Host"),o(),r(8,"th",49),s(9,"Online"),o(),r(10,"th",49),s(11,"WS"),o(),r(12,"th",49),s(13,"Heartbeat"),o(),r(14,"th",49),s(15,"Verzi\xF3"),o(),r(16,"th",49),s(17,"WS hiba"),o(),r(18,"th",49),s(19,"M\u0171velet"),o(),r(20,"th",49),s(21,"Instance"),o()()(),r(22,"tbody"),I(23,y0,23,18,"tr",50,n0),o()()()),i&2){let e=m();l(2),E("Ismert peer-ek (",e.peers.length,")"),l(21),V(e.peers)}}function M0(i,d){i&1&&(r(0,"div",32),s(1,"Nincs ismert peer instance."),o())}function k0(i,d){if(i&1&&(r(0,"div",35)(1,"div",36)(2,"span",37),s(3,"PEI bootstrapped:"),o(),r(4,"span"),s(5),o()(),r(6,"div",36)(7,"span",37),s(8,"SharedSecret:"),o(),r(9,"span"),s(10),o()(),r(11,"div",36)(12,"span",37),s(13,"Online peer-ek:"),o(),r(14,"span",38),s(15),o()(),r(16,"div",36)(17,"span",37),s(18,"WS-csatlakozott:"),o(),r(19,"span"),s(20),b(21,u0,2,0,"span",39),o()(),r(22,"div",36)(23,"span",37),s(24,"Poll interval:"),o(),r(25,"span",38),s(26),o()(),r(27,"div",36)(28,"span",37),s(29,"Task timeout:"),o(),r(30,"span",38),s(31),o()(),r(32,"div",40)(33,"span",37),s(34,"Aktu\xE1lis instance:"),o(),r(35,"code",41),s(36),o()(),r(37,"div",36)(38,"span",37),s(39,"Saj\xE1t verzi\xF3:"),o(),r(40,"code",41),s(41),o()(),r(42,"div",36)(43,"span",37),s(44,"Bootstrap \xF3ta:"),o(),r(45,"span",42),s(46),o()(),r(47,"div",40)(48,"span",37),s(49,"Saj\xE1t heartbeat:"),o(),r(50,"span",43),b(51,_0,1,0)(52,f0,2,2)(53,S0,1,0),o()(),b(54,x0,5,2,"div",40),o(),b(55,h0,25,1,"div",44)(56,M0,2,0,"div",32)),i&2){let e=d;l(4),q("text-green-400",e.isPeiBootstrapped)("text-red-400",!e.isPeiBootstrapped),l(),E(" ",e.isPeiBootstrapped?"\u2713 akt\xEDv":"\u2717 inakt\xEDv"," "),l(4),q("text-green-400",e.isSharedSecretSet)("text-amber-400",!e.isSharedSecretSet),l(),E(" ",e.isSharedSecretSet?"\u2713 be\xE1ll\xEDtva":"\u2717 hi\xE1nyzik"," "),l(5),M(e.onlinePeerCount),l(4),q("text-green-400",e.connectedPeerCount>0)("text-amber-400",e.connectedPeerCount===0&&e.isWsClientRunning)("text-red-400",!e.isWsClientRunning),l(),E(" ",e.connectedPeerCount," "),l(),_(e.isWsClientRunning?-1:21),l(5),E("",e.effectivePeerPollIntervalSec,"s"),l(5),E("",e.effectiveTaskDefaultTimeoutSec,"s"),l(5),M(e.currentInstanceKey||"(nincs resolved)"),l(5),M(e.currentInstanceAppVersion||"?"),l(4),p("title",e.bootstrappedAtIso),l(),E(" ",e.bootstrappedAtIso?e.bootstrappedAtIso:"\u2014 (m\xE9g sose)"," "),l(4),q("text-green-300",e.selfHeartbeatStatus.consecutiveFailures===0&&e.selfHeartbeatStatus.isRunning)("text-amber-300",e.selfHeartbeatStatus.consecutiveFailures>0&&e.selfHeartbeatStatus.consecutiveFailures<3)("text-red-300",e.selfHeartbeatStatus.consecutiveFailures>=3||!e.selfHeartbeatStatus.isRunning),l(),_(e.selfHeartbeatStatus.isRunning?e.selfHeartbeatStatus.lastSuccessAtMs?52:53:51),l(3),_(e.selfHeartbeatStatus.lastFailureMessage?54:-1),l(),_(e.peers.length>0?55:56)}}function w0(i,d){i&1&&(r(0,"div",32),s(1,"Diagnostics bet\xF6lt\xE9se\u2026"),o())}function D0(i,d){i&1&&(r(0,"div",32),s(1," Diagnostics m\xE9g nincs bet\xF6ltve. Kattints a Friss\xEDt\xE9s gombra. "),o())}function A0(i,d){if(i&1&&(r(0,"tr",50)(1,"td",65),s(2),o(),r(3,"td",64),s(4),o(),r(5,"td",64),s(6),o(),r(7,"td",66),s(8),o()()),i&2){let e=d.$implicit,n=m(4);l(2),E(" ",n.formatBootstrapAttemptTime(e.atMs)," "),l(2),M(e.source),l(),q("text-green-300",e.result==="bootstrapped")("text-neutral-400",e.result==="already-bootstrapped")("text-amber-300",e.result==="no-shared-secret")("text-red-300",e.result==="error"),l(),E(" ",e.result," "),l(2),M(e.reason)}}function P0(i,d){if(i&1&&(r(0,"table",62)(1,"thead")(2,"tr",63)(3,"th",64),s(4,"Id\u0151pont"),o(),r(5,"th",64),s(6,"Forr\xE1s"),o(),r(7,"th",64),s(8,"Eredm\xE9ny"),o(),r(9,"th",64),s(10,"R\xE9szlet"),o()()(),r(11,"tbody"),I(12,A0,9,12,"tr",50,i0),o()()),i&2){let e=m(2);l(12),V(e.bootstrapAttempts)}}function $0(i,d){if(i&1){let e=P();r(0,"div",60)(1,"button",61),u("click",function(){S(e);let t=m(2);return x(t.handleToggleBootstrapLog())}),s(2),o(),b(3,P0,14,0,"table",62),o()}if(i&2){let e=m(),n=m();l(),p("title","Bootstrap-attempt log ("+e.bootstrapAttempts.length+" rekord)"),l(),Se(" ",n.bootstrapLogExpanded_$()?"\u25BC":"\u25B6"," Bootstrap log (",e.bootstrapAttempts.length," rekord) "),l(),_(n.bootstrapLogExpanded_$()?3:-1)}}function T0(i,d){i&1&&b(0,$0,4,4,"div",60),i&2&&_(d.bootstrapAttempts.length>0?0:-1)}function F0(i,d){if(i&1&&(r(0,"div",67)(1,"strong"),s(2,"Re-bootstrap:"),o(),s(3),o()),i&2){let e=d;q("text-green-300",e.triggered||e.isBootstrappedAfter)("text-amber-300",!e.triggered&&!e.isBootstrappedAfter)("border",!0)("border-neutral-800",!0)("bg-neutral-900",!0),l(3),E(" ",e.message," ")}}function I0(i,d){if(i&1&&(r(0,"div",68)(1,"strong"),s(2,"WS-reconnect:"),o(),s(3),o()),i&2){let e=d;q("text-green-300",e.triggered&&e.connectedPeerCount>0)("text-amber-300",e.triggered&&e.connectedPeerCount===0)("text-red-300",!e.triggered)("border-neutral-800",!0),l(3),E(" ",e.message," ")}}function V0(i,d){if(i&1&&(r(0,"div",68)(1,"strong"),s(2,"Peer reconnect"),o(),s(3," ("),r(4,"code",43),s(5),o(),s(6),o()),i&2){let e=d;q("text-green-300",e.response.found&&e.response.isWsConnectedAfter)("text-amber-300",e.response.found&&!e.response.isWsConnectedAfter)("text-red-300",!e.response.found)("border-neutral-800",!0),l(5),M(e.instanceKey),l(),E("): ",e.response.message," ")}}var ki=(()=>{class i{cluster_DS=w(hi);globalError_CS=w(ut);sectionId=f.cluster;saving_$=A(!1);justSavedOk_$=A(!1);lastSaveError_$=A(null);secretMasked_$=A(!0);hasSecret_$=$(()=>this.cluster_DS.section_$().form.sharedSecret.trim().length>0);isBootstrapped_$=$(()=>this.cluster_DS.section_$().runtime.isBootstrapped);secretInputType_$=$(()=>this.secretMasked_$()?"password":"text");bootstrapLogExpanded_$=A(!1);diagnostics_$=this.cluster_DS.diagnostics_$;ngOnInit(){this.cluster_DS.doLoad().catch(e=>{this.globalError_CS.showError(e,"settings-cluster-load")}),this.cluster_DS.loadDiagnostics().catch(e=>{this.globalError_CS.showError(e,"settings-cluster-diagnostics")})}handleRefreshDiagnostics(){return C(this,null,function*(){try{yield this.cluster_DS.loadDiagnostics()}catch(e){this.globalError_CS.showError(e,"settings-cluster-diagnostics-refresh")}})}handleReBootstrap(){return C(this,null,function*(){try{yield this.cluster_DS.triggerReBootstrap()}catch(e){this.globalError_CS.showError(e,"settings-cluster-rebootstrap")}})}handleReconnectWs(){return C(this,null,function*(){try{yield this.cluster_DS.triggerReconnectWs()}catch(e){this.globalError_CS.showError(e,"settings-cluster-reconnect-ws")}})}handleReconnectPeer(e){return C(this,null,function*(){try{yield this.cluster_DS.triggerReconnectPeer(e)}catch(n){this.globalError_CS.showError(n,"settings-cluster-reconnect-peer")}})}handleToggleBootstrapLog(){this.bootstrapLogExpanded_$.update(e=>!e)}formatBootstrapAttemptTime(e){let n=new Date(e);if(Number.isNaN(n.getTime()))return"?";let t=String(n.getHours()).padStart(2,"0"),a=String(n.getMinutes()).padStart(2,"0"),c=String(n.getSeconds()).padStart(2,"0"),v=n.getFullYear(),h=String(n.getMonth()+1).padStart(2,"0"),k=String(n.getDate()).padStart(2,"0");return`${t}:${a}:${c} \xB7 ${v}-${h}-${k}`}handleSharedSecretChange(e){this.cluster_DS.updateForm({sharedSecret:e}),this.justSavedOk_$.set(!1),this.lastSaveError_$.set(null)}handlePeerPollIntervalChange(e){let n=e.trim(),t=n.length>0?Number(n):NaN,a=Number.isFinite(t)&&t>0?t:null;this.cluster_DS.updateForm({peerPollIntervalSec:a}),this.justSavedOk_$.set(!1),this.lastSaveError_$.set(null)}handleTaskTimeoutChange(e){let n=e.trim(),t=n.length>0?Number(n):NaN,a=Number.isFinite(t)&&t>0?t:null;this.cluster_DS.updateForm({taskDefaultTimeoutSec:a}),this.justSavedOk_$.set(!1),this.lastSaveError_$.set(null)}handleToggleSecretMask(){this.secretMasked_$.update(e=>!e)}handleSave(){return C(this,null,function*(){if(!this.saving_$()){this.saving_$.set(!0),this.justSavedOk_$.set(!1),this.lastSaveError_$.set(null);try{let e=yield this.cluster_DS.save();e.success?(this.justSavedOk_$.set(!0),yield this.cluster_DS.doLoad()):this.lastSaveError_$.set(e.error??"Ment\xE9s sikertelen \u2014 ismeretlen hiba.")}catch(e){Mi.DyFM_Log.error("[CCAP] settings-cluster save",e),this.lastSaveError_$.set(e instanceof Error?e.message:String(e))}finally{this.saving_$.set(!1)}}})}getSection(){return this.cluster_DS.section_$()}static \u0275fac=function(n){return new(n||i)};static \u0275cmp=j({type:i,selectors:[["app-ccap-settings-cluster"]],decls:66,vars:27,consts:[[1,"p-4","space-y-4","max-w-2xl"],[1,"space-y-1"],[1,"text-xl","font-semibold","text-neutral-100"],[1,"text-xs","text-neutral-400","leading-relaxed"],[1,"text-amber-300"],[1,"text-[11px]","text-green-400"],[1,"text-[11px]","text-amber-400"],[1,"space-y-3","border","border-neutral-800","rounded-md","p-3"],["for","cluster-shared-secret",1,"block","text-xs","text-neutral-300","mb-1"],[1,"flex","items-center","gap-2"],["id","cluster-shared-secret","autocomplete","off","spellcheck","false","placeholder","min. 32 karakter, v\xE9letlenszer\u0171 string",1,"flex-1","px-2","py-1","text-xs","bg-neutral-900","border","border-neutral-700","rounded","text-neutral-100",3,"input","type","value"],["type","button",1,"px-2","py-1","text-xs","border","border-neutral-700","text-neutral-300","rounded","hover:bg-neutral-800",3,"click","title"],[1,"text-[10px]","text-neutral-500","mt-1"],["for","cluster-poll-interval",1,"block","text-xs","text-neutral-300","mb-1"],["id","cluster-poll-interval","type","number","min","1","placeholder","default: 30",1,"w-full","px-2","py-1","text-xs","bg-neutral-900","border","border-neutral-700","rounded","text-neutral-100",3,"input","value"],["for","cluster-task-timeout",1,"block","text-xs","text-neutral-300","mb-1"],["id","cluster-task-timeout","type","number","min","1","placeholder","default: 60",1,"w-full","px-2","py-1","text-xs","bg-neutral-900","border","border-neutral-700","rounded","text-neutral-100",3,"input","value"],[1,"flex","items-center","gap-3"],["type","button",1,"px-3","py-1.5","text-xs","bg-blue-600","text-white","rounded","hover:bg-blue-500","disabled:opacity-50",3,"click","disabled"],[1,"text-xs","text-green-400"],[1,"text-xs","text-red-400"],[1,"text-[11px]","text-amber-300","border","border-amber-700/40","bg-amber-900/10","rounded","p-2"],[1,"space-y-3","border","border-neutral-800","rounded-md","p-3","mt-4"],[1,"flex","items-center","justify-between"],[1,"text-sm","font-semibold","text-neutral-100"],["type","button","title","Diagnostics \xFAjrat\xF6lt\xE9se a szerverr\u0151l",1,"px-2","py-1","text-[11px]","border","border-neutral-700","text-neutral-300","rounded","hover:bg-neutral-800","disabled:opacity-50",3,"click","disabled"],["type","button","title","PEI bootstrap k\xE9zi \xFAjraind\xEDt\xE1sa (idempotens)",1,"px-2","py-1","text-[11px]","border","border-amber-700/60","text-amber-200","rounded","hover:bg-amber-900/30","disabled:opacity-50",3,"click","disabled"],["type","button","title","Minden peer-rel WS-kapcsolat \xFAjra\xE9p\xEDt\xE9se (PEI WS-client restart)",1,"px-2","py-1","text-[11px]","border","border-cyan-700/60","text-cyan-200","rounded","hover:bg-cyan-900/30","disabled:opacity-50",3,"click","disabled"],["sourceLabelOverride","Cluster diagnostics",1,"block","max-w-2xl",3,"error"],["sourceLabelOverride","Cluster re-bootstrap",1,"block","max-w-2xl",3,"error"],["sourceLabelOverride","Cluster WS-reconnect",1,"block","max-w-2xl",3,"error"],["sourceLabelOverride","Cluster peer-reconnect",1,"block","max-w-2xl",3,"error"],[1,"text-[11px]","text-neutral-500","italic"],[1,"text-[11px]","rounded","p-2","mt-2",3,"text-green-300","text-amber-300","border","border-neutral-800","bg-neutral-900"],[1,"text-[11px]","rounded","p-2","mt-2","border","bg-neutral-900",3,"text-green-300","text-amber-300","text-red-300","border-neutral-800"],[1,"grid","grid-cols-2","gap-x-4","gap-y-1","text-[11px]","text-neutral-300"],[1,"flex","justify-between","border-b","border-neutral-800","py-1"],[1,"text-neutral-400"],[1,"text-neutral-100"],[1,"text-[10px]","text-red-400","ml-1"],[1,"col-span-2","flex","justify-between","border-b","border-neutral-800","py-1"],[1,"text-[10px]","text-neutral-300"],[1,"text-[10px]","text-neutral-300",3,"title"],[1,"text-[10px]"],[1,"mt-2"],[1,"text-[10px]","text-red-300","max-w-[60%]","break-words",3,"title"],[1,"text-[11px]","text-neutral-400","mb-1"],[1,"w-full","text-[11px]","text-neutral-300","border-collapse"],[1,"text-left","text-neutral-500","border-b","border-neutral-800"],[1,"py-1","pr-2"],[1,"border-b","border-neutral-900"],[1,"py-1","pr-2","text-neutral-400"],[1,"py-1","pr-2","whitespace-nowrap"],[1,"text-[10px]",3,"text-green-300","text-amber-300","title"],[1,"text-neutral-600","text-[10px]"],[1,"py-1","pr-2","max-w-[16rem]","break-words"],[1,"text-red-300",3,"title"],[1,"text-neutral-600"],["type","button",1,"px-1.5","py-0.5","text-[10px]","border","border-cyan-700/60","text-cyan-200","rounded","hover:bg-cyan-900/30","disabled:opacity-50",3,"click","disabled","title"],[1,"text-[10px]",3,"title"],[1,"mt-3","border-t","border-neutral-800","pt-2"],["type","button",1,"text-[11px]","text-neutral-400","hover:text-neutral-200",3,"click","title"],[1,"w-full","mt-1","text-[10px]","text-neutral-300","border-collapse"],[1,"text-left","text-neutral-500","border-b","border-neutral-900"],[1,"py-0.5","pr-2"],[1,"py-0.5","pr-2","font-mono","whitespace-nowrap"],[1,"py-0.5","pr-2","text-neutral-400","break-words","max-w-[24rem]"],[1,"text-[11px]","rounded","p-2","mt-2"],[1,"text-[11px]","rounded","p-2","mt-2","border","bg-neutral-900"]],template:function(n,t){if(n&1&&(r(0,"div",0)(1,"header",1)(2,"h1",2),s(3,"Cluster (Peer-Instance)"),o(),r(4,"p",3),s(5," A cross-instance \xFCzenetk\xFCld\xE9s (CC Session, CCAP Session, Scheduler) ezzel a "),r(6,"strong"),s(7,"sharedSecret"),o(),s(8,"-tel hiteles\xEDti a peer-instance kommunik\xE1ci\xF3t. "),r(9,"strong",4),s(10,"Mindk\xE9t instance-on AZONOS"),o(),s(11," \xE9rt\xE9k kell legyen \u2014 k\xFCl\xF6nben a cross-instance dispatch "),r(12,"code"),s(13,"503"),o(),s(14,"-mal bukik ("),r(15,"code"),s(16,"PEI-NOT-CONFIGURED"),o(),s(17,"). "),o(),b(18,o0,2,0,"div",5)(19,r0,2,0,"div",6),o(),r(20,"section",7)(21,"div")(22,"label",8),s(23," Shared secret (HMAC kulcs) "),o(),r(24,"div",9)(25,"input",10),u("input",function(c){return t.handleSharedSecretChange(c.target.value)}),o(),r(26,"button",11),u("click",function(){return t.handleToggleSecretMask()}),s(27),o()(),r(28,"p",12),s(29," Vault-titkos\xEDtva (AES-256-GCM) t\xE1rolva. A bet\xF6lt\xE9skor a szerver placeholder-t ad vissza, nem a t\xE9nyleges \xE9rt\xE9ket \u2014 \xFCresen hagyva ment\xE9sn\xE9l a megl\xE9v\u0151 \xE9rt\xE9k meg\u0151rz\u0151dik. "),o()(),r(30,"div")(31,"label",13),s(32," Peer poll interval (m\xE1sodperc) "),o(),r(33,"input",14),u("input",function(c){return t.handlePeerPollIntervalChange(c.target.value)}),o()(),r(34,"div")(35,"label",15),s(36," Task default timeout (m\xE1sodperc) "),o(),r(37,"input",16),u("input",function(c){return t.handleTaskTimeoutChange(c.target.value)}),o()()(),r(38,"div",17)(39,"button",18),u("click",function(){return t.handleSave()}),s(40),o(),b(41,a0,2,0,"span",19)(42,s0,2,1,"span",20),o(),b(43,l0,2,0,"div",21),r(44,"section",22)(45,"header",23)(46,"h2",24),s(47,"PEI \xE1llapot & debug"),o(),r(48,"div",9)(49,"button",25),u("click",function(){return t.handleRefreshDiagnostics()}),s(50),o(),r(51,"button",26),u("click",function(){return t.handleReBootstrap()}),s(52),o(),r(53,"button",27),u("click",function(){return t.handleReconnectWs()}),s(54),o()()(),b(55,d0,1,1,"app-ccap-error-display",28)(56,c0,1,1,"app-ccap-error-display",29)(57,m0,1,1,"app-ccap-error-display",30)(58,p0,1,1,"app-ccap-error-display",31)(59,k0,57,34)(60,w0,2,0,"div",32)(61,D0,2,0,"div",32)(62,T0,1,1)(63,F0,4,11,"div",33)(64,I0,4,9,"div",34)(65,V0,7,10,"div",34),o()()),n&2){let a,c,v,h,k,D,F,z,L,H,W;l(18),_(t.isBootstrapped_$()===!0?18:t.isBootstrapped_$()===!1?19:-1),l(7),p("type",t.secretInputType_$())("value",t.getSection().form.sharedSecret),l(),p("title",t.secretMasked_$()?"Mutat":"Elrejt"),l(),E(" ",t.secretMasked_$()?"\u{1F441}":"\u{1F648}"," "),l(6),p("value",(a=t.getSection().form.peerPollIntervalSec)!==null&&a!==void 0?a:""),l(4),p("value",(c=t.getSection().form.taskDefaultTimeoutSec)!==null&&c!==void 0?c:""),l(2),p("disabled",t.saving_$()),l(),E(" ",t.saving_$()?"Ment\xE9s\u2026":"Ment\xE9s"," "),l(),_(t.justSavedOk_$()?41:-1),l(),_(t.lastSaveError_$()?42:-1),l(),_(t.hasSecret_$()?-1:43),l(6),p("disabled",t.cluster_DS.diagnosticsLoading_$()),l(),E(" ",t.cluster_DS.diagnosticsLoading_$()?"\u27F3 Friss\xEDt\u2026":"\u27F3 Friss\xEDt\xE9s"," "),l(),p("disabled",t.cluster_DS.reBootstrapping_$()),l(),E(" ",t.cluster_DS.reBootstrapping_$()?"\u2699 Bootstrap\u2026":"\u2699 Re-bootstrap"," "),l(),p("disabled",t.cluster_DS.reconnectingWs_$()),l(),E(" ",t.cluster_DS.reconnectingWs_$()?"\u27F2 WS reconnect\u2026":"\u27F2 Re-connect WS"," "),l(),_((v=t.cluster_DS.diagnosticsError_$())?55:-1,v),l(),_((h=t.cluster_DS.reBootstrapError_$())?56:-1,h),l(),_((k=t.cluster_DS.reconnectWsError_$())?57:-1,k),l(),_((D=t.cluster_DS.reconnectPeerError_$())?58:-1,D),l(),_((F=t.cluster_DS.diagnostics_$())?59:t.cluster_DS.diagnosticsLoading_$()?60:61,F),l(3),_((z=t.diagnostics_$())?62:-1,z),l(),_((L=t.cluster_DS.lastReBootstrapResult_$())?63:-1,L),l(),_((H=t.cluster_DS.lastReconnectWsResult_$())?64:-1,H),l(),_((W=t.cluster_DS.lastReconnectPeerResult_$())?65:-1,W)}},dependencies:[U],encapsulation:2})}return i})();var L0=[{path:"",component:ti,children:[{path:"",pathMatch:"full",redirectTo:"global"},{path:"providers",component:ai},{path:"agent",component:si},{path:"global",component:mi},{path:"instances",component:pi},{path:"secrets",component:fi},{path:"rag",component:Si},{path:"developer",component:vi},{path:"openclaw",component:bi},{path:"ca-agent",component:Ei},{path:"dark-office-layout",component:yi},{path:"cluster",component:ki}]}],Y1=(()=>{class i{static \u0275fac=function(n){return new(n||i)};static \u0275mod=nn({type:i});static \u0275inj=tn({imports:[ct,bn,fn.forChild(L0),Ln,U,xt,Pe,Bt,bt]})}return i})();export{Y1 as Settings_Module};
11
- //# sourceMappingURL=set.module-UDQXLUFX.js.map
11
+ //# sourceMappingURL=set.module-4E6WAYIQ.js.map