@futdevpro/ccap 1.1.2509 → 1.1.2582

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 (305) hide show
  1. package/client-dist/{agent-instances.module-QQHSIHVZ.js → agent-instances.module-7VEBBM5Y.js} +2 -2
  2. package/client-dist/ca.module-ZFHRCLF7.js +5 -0
  3. package/client-dist/ca.module-ZFHRCLF7.js.map +7 -0
  4. package/client-dist/cc.module-JZX6WYEJ.js +4 -0
  5. package/client-dist/cc.module-JZX6WYEJ.js.map +7 -0
  6. package/client-dist/{chunk-SQDIXJP2.js → chunk-25EU3GLD.js} +2 -2
  7. package/client-dist/{chunk-JAUNNZJN.js → chunk-2O52ESML.js} +2 -2
  8. package/client-dist/{chunk-APXVQISJ.js → chunk-2SPJ3JFQ.js} +2 -2
  9. package/client-dist/{chunk-KFS5VDDV.js → chunk-3FTM2EWS.js} +2 -2
  10. package/client-dist/{chunk-JUWOVLJL.js → chunk-3SNKGBZL.js} +2 -2
  11. package/client-dist/{chunk-ZQCAHEXF.js → chunk-3TXLV3DA.js} +2 -2
  12. package/client-dist/{chunk-TJENOBO6.js → chunk-53QIVVCG.js} +2 -2
  13. package/client-dist/{chunk-G7FLLFQV.js → chunk-6BANNHB6.js} +2 -2
  14. package/client-dist/{chunk-XNHRRX4L.js → chunk-AHZ2P3Z3.js} +2 -2
  15. package/client-dist/{chunk-Q4YAQFNP.js → chunk-AYBZUIVP.js} +2 -2
  16. package/client-dist/{chunk-2HIXFHTS.js → chunk-BC56SIVJ.js} +3 -3
  17. package/client-dist/chunk-BC56SIVJ.js.map +1 -0
  18. package/client-dist/{chunk-PUFVETM4.js → chunk-BDL5F3DK.js} +2 -2
  19. package/client-dist/{chunk-KTAWOOUI.js → chunk-CN2EISGD.js} +2 -2
  20. package/client-dist/{chunk-FVJHSIII.js → chunk-CTB35A3I.js} +2 -2
  21. package/client-dist/{chunk-KZUKSPQS.js → chunk-CXE46KLX.js} +2 -2
  22. package/client-dist/{chunk-V4X7URSF.js → chunk-CZEGJES4.js} +2 -2
  23. package/client-dist/{chunk-NJUY7I3Y.js → chunk-D4YCGDYF.js} +2 -2
  24. package/client-dist/{chunk-72FQNGJO.js → chunk-D5YBMGLK.js} +2 -2
  25. package/client-dist/{chunk-CKR2NA35.js → chunk-DR5CW2Q5.js} +2 -2
  26. package/client-dist/{chunk-JIZE3HXP.js → chunk-DTMD64OK.js} +2 -2
  27. package/client-dist/{chunk-H7BIO73O.js → chunk-ERTQ57LC.js} +2 -2
  28. package/client-dist/{chunk-5L4G3C5C.js → chunk-F763HXOW.js} +2 -2
  29. package/client-dist/{chunk-AY3XK6RS.js → chunk-FH7BZ5KC.js} +2 -2
  30. package/client-dist/{chunk-QHUBJGWS.js → chunk-FKFHKEJ6.js} +2 -2
  31. package/client-dist/{chunk-TM2SED26.js → chunk-GH6753SA.js} +2 -2
  32. package/client-dist/{chunk-XQKHUGZW.js → chunk-GYAPUB7L.js} +2 -2
  33. package/client-dist/{chunk-CJVTAHYF.js → chunk-IX66ULOP.js} +2 -2
  34. package/client-dist/{chunk-4FSRDTZN.js → chunk-KNCYCQVI.js} +2 -2
  35. package/client-dist/{chunk-5MNGROTB.js → chunk-M4TYKIMG.js} +2 -2
  36. package/client-dist/{chunk-AM2JGX23.js → chunk-NJZZZGTL.js} +2 -2
  37. package/client-dist/{chunk-F46E5KZ3.js → chunk-OVYV3NO4.js} +2 -2
  38. package/client-dist/{chunk-AQ72GJMX.js → chunk-OZ2XX74S.js} +2 -2
  39. package/client-dist/{chunk-Y6PUQHIU.js → chunk-PWFZ6PI4.js} +2 -2
  40. package/client-dist/{chunk-OQ24BGZJ.js → chunk-RIPG5ILJ.js} +2 -2
  41. package/client-dist/{chunk-4RFLGW5L.js → chunk-T3KV2MBE.js} +2 -2
  42. package/client-dist/{chunk-O65C5CZH.js → chunk-T7O5N6F5.js} +2 -2
  43. package/client-dist/{chunk-MSY74RUJ.js → chunk-TYFIVDHM.js} +2 -2
  44. package/client-dist/{chunk-U5VAWMNB.js → chunk-U4EZD6B3.js} +2 -2
  45. package/client-dist/chunk-U7PPOB3Z.js +3 -0
  46. package/client-dist/{chunk-6XRGBDSK.js.map → chunk-U7PPOB3Z.js.map} +4 -4
  47. package/client-dist/{chunk-G44KM4TW.js → chunk-UDXUA4QP.js} +2 -2
  48. package/client-dist/{chunk-PYVQEDEW.js → chunk-UKMTMXFC.js} +2 -2
  49. package/client-dist/{chunk-NTUVOM4B.js → chunk-UKTCBZ23.js} +2 -2
  50. package/client-dist/{chunk-YWWHFCS3.js → chunk-USYW262H.js} +2 -2
  51. package/client-dist/{chunk-GNW4X5RC.js → chunk-UXQXE4O4.js} +2 -2
  52. package/client-dist/{chunk-2E6OA2KT.js → chunk-VA5ORQEA.js} +2 -2
  53. package/client-dist/{chunk-WX6TVKDG.js → chunk-VD2IXKGO.js} +2 -2
  54. package/client-dist/{chunk-LTRCLVM3.js → chunk-W3N4KJQU.js} +2 -2
  55. package/client-dist/{chunk-RRV4AJML.js → chunk-WKKV76Y4.js} +2 -2
  56. package/client-dist/{chunk-EMTKUTBC.js → chunk-WRTBJFYJ.js} +2 -2
  57. package/client-dist/{chunk-FOUQZW4D.js → chunk-WTKKMZP3.js} +2 -2
  58. package/client-dist/{chunk-OG33J4ZD.js → chunk-XZ6U37UV.js} +2 -2
  59. package/client-dist/{chunk-VW3WQQBF.js → chunk-YKPMO3C3.js} +2 -2
  60. package/client-dist/{chunk-M7Z2O4RG.js → chunk-ZIAX3RD5.js} +2 -2
  61. package/client-dist/{chunk-3R7FDMZ3.js → chunk-ZPHUSRQ2.js} +2 -2
  62. package/client-dist/chunk-ZR3JTDG2.js +2 -0
  63. package/client-dist/chunk-ZR3JTDG2.js.map +7 -0
  64. package/client-dist/{chunk-VM45PE3J.js → chunk-ZVEM6BEV.js} +2 -2
  65. package/client-dist/{consultant.module-HFZCP4N4.js → consultant.module-355QJ5VP.js} +2 -2
  66. package/client-dist/{crd.module-6R37JW4V.js → crd.module-23O7HPSP.js} +2 -2
  67. package/client-dist/{dashboard.module-YAZCCU26.js → dashboard.module-B3DBG7VA.js} +2 -2
  68. package/client-dist/do-chat-popup.component-3NJKFEEW.css.map +7 -0
  69. package/client-dist/{do-instance-panel.component-K5IGXVCT.css.map → do-instance-panel.component-MDYTDDAF.css.map} +2 -2
  70. package/client-dist/do-office-scene.component-Z3ULZ7BC.css.map +7 -0
  71. package/client-dist/do.module-T3T4EI72.js +18 -0
  72. package/client-dist/do.module-T3T4EI72.js.map +7 -0
  73. package/client-dist/{document-library.module-EFTFUIXJ.js → document-library.module-HCB3IBFU.js} +2 -2
  74. package/client-dist/{embedding-eval.module-NIPCFFWB.js → embedding-eval.module-Y4S72P6L.js} +2 -2
  75. package/client-dist/{embedding-registry.module-4GLSQNAT.js → embedding-registry.module-WRLE4M2R.js} +2 -2
  76. package/client-dist/{err.module-2RPVCWXD.js → err.module-NEHVNIDC.js} +2 -2
  77. package/client-dist/{feedback.module-WVLKZ533.js → feedback.module-M22IIOC3.js} +2 -2
  78. package/client-dist/{host-runtime-mcp.module-GRW6RSCA.js → host-runtime-mcp.module-BTQGLDN3.js} +2 -2
  79. package/client-dist/index.html +2 -2
  80. package/client-dist/{live-dev-pipeline.module-P3DEM6CE.js → live-dev-pipeline.module-TBWOJ2K7.js} +2 -2
  81. package/client-dist/{logs.module-U6KCQYDU.js → logs.module-WLXYHRBN.js} +2 -2
  82. package/client-dist/main-CPF6CLMC.js +7 -0
  83. package/client-dist/main-CPF6CLMC.js.map +7 -0
  84. package/client-dist/{master-control-remote-poc.module-RYSKRGXU.js → master-control-remote-poc.module-NZ4AZJHI.js} +2 -2
  85. package/client-dist/{mobile-app.module-EBMTWXS2.js → mobile-app.module-JUBFTHW3.js} +2 -2
  86. package/client-dist/{model-registry.module-F6R5MSBB.js → model-registry.module-AIAGFPNO.js} +2 -2
  87. package/client-dist/oc.module-KYUWTHHM.js +3 -0
  88. package/client-dist/oc.module-KYUWTHHM.js.map +7 -0
  89. package/client-dist/{orc.module-NJQ6XGPN.js → orc.module-BMV7EOI7.js} +2 -2
  90. package/client-dist/{project-management.module-JQEQIHL2.js → project-management.module-X5VO2F54.js} +11 -11
  91. package/client-dist/project-management.module-X5VO2F54.js.map +7 -0
  92. package/client-dist/project-source-routed.module-CTOB53C7.js +2 -0
  93. package/client-dist/{scheduler.module-WWPV25AU.js → scheduler.module-IKACZ62P.js} +2 -2
  94. package/client-dist/session.module-GLASF7US.js +12 -0
  95. package/client-dist/session.module-GLASF7US.js.map +7 -0
  96. package/client-dist/set.module-COGQHP7X.js +11 -0
  97. package/client-dist/{set.module-IKSASSWS.js.map → set.module-COGQHP7X.js.map} +3 -3
  98. package/client-dist/{setup.module-RVTO6I3R.js → setup.module-CWFUSK2V.js} +2 -2
  99. package/client-dist/styles-JBAOFG2I.css +2 -0
  100. package/client-dist/styles-JBAOFG2I.css.map +7 -0
  101. package/client-dist/{terminals.module-AZEN47GZ.js → terminals.module-FIV7G4Y6.js} +2 -2
  102. package/client-dist/{voice-notes-poc.module-5JUTNIBP.js → voice-notes-poc.module-HWX6J3HW.js} +2 -2
  103. package/client-dist/{wfs.module-5MMNXIRW.js → wfs.module-AF5XUOHR.js} +2 -2
  104. package/package.json +1 -1
  105. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js +1 -1
  106. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js.map +1 -1
  107. package/server/build/src/_modules/ai-systems/_modules/model-registry/_models/data-models/mrg-instance-registry.data-model.d.ts +7 -0
  108. package/server/build/src/_modules/ai-systems/_modules/model-registry/_models/data-models/mrg-instance-registry.data-model.d.ts.map +1 -1
  109. package/server/build/src/_modules/ai-systems/_modules/model-registry/_models/data-models/mrg-instance-registry.data-model.js +8 -0
  110. package/server/build/src/_modules/ai-systems/_modules/model-registry/_models/data-models/mrg-instance-registry.data-model.js.map +1 -1
  111. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.d.ts +5 -0
  112. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.d.ts.map +1 -1
  113. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.js +19 -2
  114. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.js.map +1 -1
  115. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.spec.js +12 -0
  116. package/server/build/src/_modules/ccap-agent/_modules/agent-path/_modules/default-path/default-path.util.spec.js.map +1 -1
  117. package/server/build/src/_modules/ccap-agent/_modules/tools/_modules/fixed-tools/_modules/self/_collections/utils/self.util.spec.js +37 -0
  118. package/server/build/src/_modules/ccap-agent/_modules/tools/_modules/fixed-tools/_modules/self/_collections/utils/self.util.spec.js.map +1 -1
  119. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts +31 -0
  120. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts.map +1 -0
  121. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js +29 -0
  122. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js.map +1 -0
  123. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.d.ts +28 -0
  124. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.d.ts.map +1 -0
  125. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.js +40 -0
  126. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.js.map +1 -0
  127. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.spec.d.ts +6 -0
  128. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.spec.d.ts.map +1 -0
  129. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.spec.js +39 -0
  130. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-transient-terminal-error.util.spec.js.map +1 -0
  131. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts +13 -0
  132. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts.map +1 -1
  133. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js +13 -3
  134. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js.map +1 -1
  135. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js +40 -0
  136. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js.map +1 -1
  137. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts +21 -0
  138. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts.map +1 -1
  139. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js +45 -1
  140. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js.map +1 -1
  141. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.d.ts.map +1 -1
  142. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js +48 -11
  143. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js.map +1 -1
  144. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.d.ts.map +1 -1
  145. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js +35 -7
  146. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js.map +1 -1
  147. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-grace-period.control-service.spec.js +41 -0
  148. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-grace-period.control-service.spec.js.map +1 -1
  149. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-runner-versions.control-service.spec.d.ts +12 -0
  150. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-runner-versions.control-service.spec.d.ts.map +1 -0
  151. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-runner-versions.control-service.spec.js +62 -0
  152. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal-runner-versions.control-service.spec.js.map +1 -0
  153. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts +26 -31
  154. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts.map +1 -1
  155. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js +91 -68
  156. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js.map +1 -1
  157. package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.d.ts +1 -0
  158. package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.d.ts.map +1 -1
  159. package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.js +6 -0
  160. package/server/build/src/_modules/external-sessions/_services/exs-instance-registry.data-service.js.map +1 -1
  161. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts +33 -0
  162. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts.map +1 -0
  163. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.js +3 -0
  164. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.js.map +1 -0
  165. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts +33 -0
  166. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts.map +1 -1
  167. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js +78 -1
  168. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js.map +1 -1
  169. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.spec.js +60 -0
  170. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.spec.js.map +1 -1
  171. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.d.ts.map +1 -1
  172. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js +3 -0
  173. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js.map +1 -1
  174. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.spec.d.ts +9 -0
  175. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.spec.d.ts.map +1 -0
  176. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.spec.js +43 -0
  177. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.spec.js.map +1 -0
  178. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts +44 -0
  179. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts.map +1 -1
  180. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js +94 -0
  181. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js.map +1 -1
  182. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts +39 -2
  183. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts.map +1 -1
  184. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.js +0 -7
  185. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.js.map +1 -1
  186. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-peer-result.interface.d.ts +13 -0
  187. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-peer-result.interface.d.ts.map +1 -0
  188. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-peer-result.interface.js +3 -0
  189. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-peer-result.interface.js.map +1 -0
  190. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-ws-result.interface.d.ts +23 -0
  191. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-ws-result.interface.d.ts.map +1 -0
  192. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-ws-result.interface.js +3 -0
  193. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-reconnect-ws-result.interface.js.map +1 -0
  194. package/server/build/src/_modules/setup-config/_routes/setup-config.controller.d.ts.map +1 -1
  195. package/server/build/src/_modules/setup-config/_routes/setup-config.controller.js +24 -0
  196. package/server/build/src/_modules/setup-config/_routes/setup-config.controller.js.map +1 -1
  197. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.d.ts +43 -5
  198. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.d.ts.map +1 -1
  199. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js +156 -7
  200. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js.map +1 -1
  201. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.spec.d.ts +4 -3
  202. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.spec.d.ts.map +1 -1
  203. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.spec.js +91 -3
  204. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.spec.js.map +1 -1
  205. package/server/build/src/_modules/setup-config/_services/setup-config.control-service.js +1 -1
  206. package/server/build/src/_modules/setup-config/_services/setup-config.control-service.js.map +1 -1
  207. package/client-dist/ca.module-FTQALPNM.js +0 -5
  208. package/client-dist/ca.module-FTQALPNM.js.map +0 -7
  209. package/client-dist/cc.module-UPCFEGEY.js +0 -4
  210. package/client-dist/cc.module-UPCFEGEY.js.map +0 -7
  211. package/client-dist/chunk-2HIXFHTS.js.map +0 -1
  212. package/client-dist/chunk-3UDLOQR2.js +0 -2
  213. package/client-dist/chunk-3UDLOQR2.js.map +0 -7
  214. package/client-dist/chunk-6XRGBDSK.js +0 -3
  215. package/client-dist/do-character.component-PZHI3KZL.css.map +0 -7
  216. package/client-dist/do-chat-popup.component-FXZ46EHV.css.map +0 -7
  217. package/client-dist/do-office-scene.component-ILYUPFGH.css.map +0 -7
  218. package/client-dist/do.module-QV56KZQO.js +0 -18
  219. package/client-dist/do.module-QV56KZQO.js.map +0 -7
  220. package/client-dist/main-F4G6PI7V.js +0 -7
  221. package/client-dist/main-F4G6PI7V.js.map +0 -7
  222. package/client-dist/oc.module-VIBOASVG.js +0 -3
  223. package/client-dist/oc.module-VIBOASVG.js.map +0 -7
  224. package/client-dist/project-management.module-JQEQIHL2.js.map +0 -7
  225. package/client-dist/project-source-routed.module-LZCPWG6J.js +0 -2
  226. package/client-dist/session.module-YYFJ6B5X.js +0 -12
  227. package/client-dist/session.module-YYFJ6B5X.js.map +0 -7
  228. package/client-dist/set.module-IKSASSWS.js +0 -11
  229. package/client-dist/styles-ILB5HBSL.css +0 -2
  230. package/client-dist/styles-ILB5HBSL.css.map +0 -7
  231. /package/client-dist/{agent-instances.module-QQHSIHVZ.js.map → agent-instances.module-7VEBBM5Y.js.map} +0 -0
  232. /package/client-dist/{chunk-SQDIXJP2.js.map → chunk-25EU3GLD.js.map} +0 -0
  233. /package/client-dist/{chunk-JAUNNZJN.js.map → chunk-2O52ESML.js.map} +0 -0
  234. /package/client-dist/{chunk-APXVQISJ.js.map → chunk-2SPJ3JFQ.js.map} +0 -0
  235. /package/client-dist/{chunk-KFS5VDDV.js.map → chunk-3FTM2EWS.js.map} +0 -0
  236. /package/client-dist/{chunk-JUWOVLJL.js.map → chunk-3SNKGBZL.js.map} +0 -0
  237. /package/client-dist/{chunk-ZQCAHEXF.js.map → chunk-3TXLV3DA.js.map} +0 -0
  238. /package/client-dist/{chunk-TJENOBO6.js.map → chunk-53QIVVCG.js.map} +0 -0
  239. /package/client-dist/{chunk-G7FLLFQV.js.map → chunk-6BANNHB6.js.map} +0 -0
  240. /package/client-dist/{chunk-XNHRRX4L.js.map → chunk-AHZ2P3Z3.js.map} +0 -0
  241. /package/client-dist/{chunk-Q4YAQFNP.js.map → chunk-AYBZUIVP.js.map} +0 -0
  242. /package/client-dist/{chunk-PUFVETM4.js.map → chunk-BDL5F3DK.js.map} +0 -0
  243. /package/client-dist/{chunk-KTAWOOUI.js.map → chunk-CN2EISGD.js.map} +0 -0
  244. /package/client-dist/{chunk-FVJHSIII.js.map → chunk-CTB35A3I.js.map} +0 -0
  245. /package/client-dist/{chunk-KZUKSPQS.js.map → chunk-CXE46KLX.js.map} +0 -0
  246. /package/client-dist/{chunk-V4X7URSF.js.map → chunk-CZEGJES4.js.map} +0 -0
  247. /package/client-dist/{chunk-NJUY7I3Y.js.map → chunk-D4YCGDYF.js.map} +0 -0
  248. /package/client-dist/{chunk-72FQNGJO.js.map → chunk-D5YBMGLK.js.map} +0 -0
  249. /package/client-dist/{chunk-CKR2NA35.js.map → chunk-DR5CW2Q5.js.map} +0 -0
  250. /package/client-dist/{chunk-JIZE3HXP.js.map → chunk-DTMD64OK.js.map} +0 -0
  251. /package/client-dist/{chunk-H7BIO73O.js.map → chunk-ERTQ57LC.js.map} +0 -0
  252. /package/client-dist/{chunk-5L4G3C5C.js.map → chunk-F763HXOW.js.map} +0 -0
  253. /package/client-dist/{chunk-AY3XK6RS.js.map → chunk-FH7BZ5KC.js.map} +0 -0
  254. /package/client-dist/{chunk-QHUBJGWS.js.map → chunk-FKFHKEJ6.js.map} +0 -0
  255. /package/client-dist/{chunk-TM2SED26.js.map → chunk-GH6753SA.js.map} +0 -0
  256. /package/client-dist/{chunk-XQKHUGZW.js.map → chunk-GYAPUB7L.js.map} +0 -0
  257. /package/client-dist/{chunk-CJVTAHYF.js.map → chunk-IX66ULOP.js.map} +0 -0
  258. /package/client-dist/{chunk-4FSRDTZN.js.map → chunk-KNCYCQVI.js.map} +0 -0
  259. /package/client-dist/{chunk-5MNGROTB.js.map → chunk-M4TYKIMG.js.map} +0 -0
  260. /package/client-dist/{chunk-AM2JGX23.js.map → chunk-NJZZZGTL.js.map} +0 -0
  261. /package/client-dist/{chunk-F46E5KZ3.js.map → chunk-OVYV3NO4.js.map} +0 -0
  262. /package/client-dist/{chunk-AQ72GJMX.js.map → chunk-OZ2XX74S.js.map} +0 -0
  263. /package/client-dist/{chunk-Y6PUQHIU.js.map → chunk-PWFZ6PI4.js.map} +0 -0
  264. /package/client-dist/{chunk-OQ24BGZJ.js.map → chunk-RIPG5ILJ.js.map} +0 -0
  265. /package/client-dist/{chunk-4RFLGW5L.js.map → chunk-T3KV2MBE.js.map} +0 -0
  266. /package/client-dist/{chunk-O65C5CZH.js.map → chunk-T7O5N6F5.js.map} +0 -0
  267. /package/client-dist/{chunk-MSY74RUJ.js.map → chunk-TYFIVDHM.js.map} +0 -0
  268. /package/client-dist/{chunk-U5VAWMNB.js.map → chunk-U4EZD6B3.js.map} +0 -0
  269. /package/client-dist/{chunk-G44KM4TW.js.map → chunk-UDXUA4QP.js.map} +0 -0
  270. /package/client-dist/{chunk-PYVQEDEW.js.map → chunk-UKMTMXFC.js.map} +0 -0
  271. /package/client-dist/{chunk-NTUVOM4B.js.map → chunk-UKTCBZ23.js.map} +0 -0
  272. /package/client-dist/{chunk-YWWHFCS3.js.map → chunk-USYW262H.js.map} +0 -0
  273. /package/client-dist/{chunk-GNW4X5RC.js.map → chunk-UXQXE4O4.js.map} +0 -0
  274. /package/client-dist/{chunk-2E6OA2KT.js.map → chunk-VA5ORQEA.js.map} +0 -0
  275. /package/client-dist/{chunk-WX6TVKDG.js.map → chunk-VD2IXKGO.js.map} +0 -0
  276. /package/client-dist/{chunk-LTRCLVM3.js.map → chunk-W3N4KJQU.js.map} +0 -0
  277. /package/client-dist/{chunk-RRV4AJML.js.map → chunk-WKKV76Y4.js.map} +0 -0
  278. /package/client-dist/{chunk-EMTKUTBC.js.map → chunk-WRTBJFYJ.js.map} +0 -0
  279. /package/client-dist/{chunk-FOUQZW4D.js.map → chunk-WTKKMZP3.js.map} +0 -0
  280. /package/client-dist/{chunk-OG33J4ZD.js.map → chunk-XZ6U37UV.js.map} +0 -0
  281. /package/client-dist/{chunk-VW3WQQBF.js.map → chunk-YKPMO3C3.js.map} +0 -0
  282. /package/client-dist/{chunk-M7Z2O4RG.js.map → chunk-ZIAX3RD5.js.map} +0 -0
  283. /package/client-dist/{chunk-3R7FDMZ3.js.map → chunk-ZPHUSRQ2.js.map} +0 -0
  284. /package/client-dist/{chunk-VM45PE3J.js.map → chunk-ZVEM6BEV.js.map} +0 -0
  285. /package/client-dist/{consultant.module-HFZCP4N4.js.map → consultant.module-355QJ5VP.js.map} +0 -0
  286. /package/client-dist/{crd.module-6R37JW4V.js.map → crd.module-23O7HPSP.js.map} +0 -0
  287. /package/client-dist/{dashboard.module-YAZCCU26.js.map → dashboard.module-B3DBG7VA.js.map} +0 -0
  288. /package/client-dist/{document-library.module-EFTFUIXJ.js.map → document-library.module-HCB3IBFU.js.map} +0 -0
  289. /package/client-dist/{embedding-eval.module-NIPCFFWB.js.map → embedding-eval.module-Y4S72P6L.js.map} +0 -0
  290. /package/client-dist/{embedding-registry.module-4GLSQNAT.js.map → embedding-registry.module-WRLE4M2R.js.map} +0 -0
  291. /package/client-dist/{err.module-2RPVCWXD.js.map → err.module-NEHVNIDC.js.map} +0 -0
  292. /package/client-dist/{feedback.module-WVLKZ533.js.map → feedback.module-M22IIOC3.js.map} +0 -0
  293. /package/client-dist/{host-runtime-mcp.module-GRW6RSCA.js.map → host-runtime-mcp.module-BTQGLDN3.js.map} +0 -0
  294. /package/client-dist/{live-dev-pipeline.module-P3DEM6CE.js.map → live-dev-pipeline.module-TBWOJ2K7.js.map} +0 -0
  295. /package/client-dist/{logs.module-U6KCQYDU.js.map → logs.module-WLXYHRBN.js.map} +0 -0
  296. /package/client-dist/{master-control-remote-poc.module-RYSKRGXU.js.map → master-control-remote-poc.module-NZ4AZJHI.js.map} +0 -0
  297. /package/client-dist/{mobile-app.module-EBMTWXS2.js.map → mobile-app.module-JUBFTHW3.js.map} +0 -0
  298. /package/client-dist/{model-registry.module-F6R5MSBB.js.map → model-registry.module-AIAGFPNO.js.map} +0 -0
  299. /package/client-dist/{orc.module-NJQ6XGPN.js.map → orc.module-BMV7EOI7.js.map} +0 -0
  300. /package/client-dist/{project-source-routed.module-LZCPWG6J.js.map → project-source-routed.module-CTOB53C7.js.map} +0 -0
  301. /package/client-dist/{scheduler.module-WWPV25AU.js.map → scheduler.module-IKACZ62P.js.map} +0 -0
  302. /package/client-dist/{setup.module-RVTO6I3R.js.map → setup.module-CWFUSK2V.js.map} +0 -0
  303. /package/client-dist/{terminals.module-AZEN47GZ.js.map → terminals.module-FIV7G4Y6.js.map} +0 -0
  304. /package/client-dist/{voice-notes-poc.module-5JUTNIBP.js.map → voice-notes-poc.module-HWX6J3HW.js.map} +0 -0
  305. /package/client-dist/{wfs.module-5MMNXIRW.js.map → wfs.module-AF5XUOHR.js.map} +0 -0
@@ -1,2 +0,0 @@
1
- import{a as Y,b as Re}from"./chunk-M7Z2O4RG.js";import{a as ye}from"./chunk-UFBTR2BG.js";import{a as Q,b as S}from"./chunk-6Y7O2W4H.js";import{a as we,b as Ie,c as ge,d as Ce}from"./chunk-NTUVOM4B.js";import{a as ve}from"./chunk-Q4YAQFNP.js";import{e as he}from"./chunk-APXVQISJ.js";import{L as fe,p as q,t as ie}from"./chunk-2HIXFHTS.js";import{C as k,a as A,aa as P,b as M,d as Se,h as K,hb as E,jb as me,k as $,wb as pe,y as z}from"./chunk-TBMJSIBB.js";var R=function(i){return i.standing="standing",i.working="working",i.sitting="sitting",i.walkingIn="walking-in",i.walkingOut="walking-out",i.walkingBetween="walking-between",i}(R||{});var D=function(i){return i.workstation="workstation",i.rest="rest",i.meeting="meeting",i}(D||{});var v=function(i){return i.ccap="ccap",i.openclaw="openclaw",i.ccSession="cc-session",i.caSession="ca-session",i}(v||{});var W=function(i){return i.average="average",i.slim="slim",i.stocky="stocky",i.athletic="athletic",i}(W||{});var U=function(i){return i.casual="casual",i.formal="formal",i.hoodie="hoodie",i.tshirt="tshirt",i}(U||{});var V=function(i){return i.short="short",i.long="long",i.spiky="spiky",i.curly="curly",i.bald="bald",i.mohawk="mohawk",i}(V||{});var it=["#f5c592","#e8a96e","#d4845a","#c06a3c","#9b5930","#7a3d1c","#4a2412"],ot=["#1a1006","#3b2505","#6b3d11","#9b6720","#c9a227","#e8d5a3","#f0f0f0","#a0a0a0","#2a4080","#8b1a2a"],at=["#1e40af","#166534","#7f1d1d","#4c1d95","#134e4a","#713f12","#374151","#6b21a8","#0f766e","#1e3a5f","#b45309","#be185d","#475569"],rt=["#1e293b","#374151","#292524","#1e3a5f","#1a2e05","#2d1b69","#3b1a08","#1a1a2e"],ct=["#1a1a1a","#3b5998","#2d8a4e","#8b4513","#4b0082","#5f9ea0"],O={skinColor:"#e8a96e",hairColor:"#1a1006",hairStyle:V.short,shirtColor:"#1e40af",clothingStyle:U.casual,pantsColor:"#1e293b",eyeColor:"#1a1a1a",bodyType:W.average,displayName:""},T={skinColor:"#b0bec5",hairColor:"#37474f",hairStyle:V.short,shirtColor:"#0288d1",clothingStyle:U.tshirt,pantsColor:"#263238",eyeColor:"#00bcd4",bodyType:W.average,displayName:""},_={skinColor:"#d4c4a8",hairColor:"#2d1b0e",hairStyle:V.short,shirtColor:"#5b21b6",clothingStyle:U.casual,pantsColor:"#312e81",eyeColor:"#4338ca",bodyType:W.average,displayName:""},b={skinColor:"#e2e8f0",hairColor:"#0f172a",hairStyle:V.short,shirtColor:"#0d9488",clothingStyle:U.casual,pantsColor:"#134e4a",eyeColor:"#14b8a6",bodyType:W.average,displayName:""};var Ae=2e3;var G=(()=>{class i{static officeInstanceIdPrefix="cai:";static build(e){return`${i.officeInstanceIdPrefix}${e.ccapId.trim()}`}static parseCcapId(e){let t=e.trim();if(!t.startsWith(i.officeInstanceIdPrefix))return null;let s=t.slice(i.officeInstanceIdPrefix.length).trim();return s.length>0?s:null}}return i})();var X=(()=>{class i{static officeInstanceIdPrefix="cci:";static build(e){return`${i.officeInstanceIdPrefix}${e.ccapId.trim()}`}static parseCcapId(e){let t=e.trim();if(!t.startsWith(i.officeInstanceIdPrefix))return null;let s=t.slice(i.officeInstanceIdPrefix.length).trim();return s.length>0?s:null}}return i})();var x=class i{static clampGrid(n){return{workstationCols:i.clampDim(n.workstationCols),workstationRows:i.clampDim(n.workstationRows),restCols:i.clampDim(n.restCols),restRows:i.clampDim(n.restRows),meetingCols:i.clampDim(n.meetingCols),meetingRows:i.clampDim(n.meetingRows)}}static computeDerived(n){let e=i.clampGrid(n),t=4*32,s=3*32,a=i.computeWorkspaceWidthPx(e.workstationCols),o=i.computeLoungeWidthPx(e.restCols),r=6*32,c=a+r+o,u=8*32,l=c+u,m=e.workstationRows*6*32,f=3*32+e.meetingRows*5*32+3*32,h=Math.max(2*32,Math.round(f/2)),I=s+m,d=2*32,p=I+h+32,g=t-32,w=d,y=c+2*32,C=p-w,N=p+3*32,te={x:t,y:s,w:a,h:m},se={x:t+a,y:s,w:r,h:p-s},ce={x:t+a+r,y:s,w:o,h:p-s},ne={x:t,y:I,w:a,h},Oe=t+a,le=t+a+r,Te=I,_e={x:se.x+Math.round(se.w/2),y:p-2*32},be=i.buildWorkstationSlots(e,te),ue=i.buildMeetingSlots(e,ne),Le=i.buildWorkstationDesks(e,te),de=i.buildLoungeSeatingLayout(e,ce),Ne=de.restSlots,$e=de.loungeSofas,Fe=i.buildConferenceFurniture(ne,ue),We=t+Math.round(a/2),Ue=le+Math.round(o/2),Ve=t+Math.round(a/2),Ge=s+32,Xe=d+32/2;return{worldW:l,worldH:N,environmentOverflowPx:3e3,buildingOuter:{x:g,y:w,w:y,h:C},floorWorkspace:te,floorLobby:se,floorLounge:ce,floorConference:ne,zoneSplitX:Oe,zoneSplitLobbyLoungeX:le,topFloorBottomY:Te,door:_e,workstationSlots:be,restSlots:Ne,meetingSlots:ue,workstationDesks:Le,loungeSofas:$e,conference:Fe,windowsNorthY:Xe,labelWorkspaceX:We,labelLoungeX:Ue,labelConferenceX:Ve,ceilingNeonY:Ge}}static workstationCapacity(n){let e=i.clampGrid(n);return e.workstationCols*e.workstationRows}static restCapacity(n){let e=i.clampGrid(n);return e.restCols*e.restRows}static meetingCapacity(n){let e=i.clampGrid(n);return e.meetingCols*e.meetingRows}static clampDim(n){if(!Number.isFinite(n))return 1;let e=Math.floor(n);return e<1?1:e>12?12:e}static computeWorkspaceWidthPx(n){let s=128+n*256;return Math.max(896,s)}static computeLoungeWidthPx(n){return 140+n*170}static buildWorkstationSlots(n,e){let t=[],s=i.workstationPitchX(n.workstationCols,e.w),a=e.x+64,o=i.workstationRowFeetY(n.workstationRows,e);for(let r=0;r<n.workstationRows;r++)for(let c=0;c<n.workstationCols;c++)t.push({x:Math.round(a+c*s),y:o[r]});return t}static workstationPitchX(n,e){return n<=1?0:n===3&&e===896?96:Math.max(96,Math.round((e-192)/(n-1)))}static workstationRowFeetY(n,e){if(n===3)return[e.y+112,e.y+250,e.y+452];let t=[],s=48,o=e.h-s-48,r=n<=1?0:o/(n-1);for(let c=0;c<n;c++)t.push(Math.round(e.y+s+c*r));return t}static buildWorkstationDesks(n,e){let t=[],s=i.workstationPitchX(n.workstationCols,e.w),a=e.x+64,o=i.workstationDeskTopY(n.workstationRows,e);for(let r=0;r<n.workstationRows;r++)for(let c=0;c<n.workstationCols;c++){let l=Math.round(a+c*s)-32,m=o[r],f=(r+c)%2===0;t.push({trackId:`ws-${r}-${c}`,x:l,y:m,monitorIsCyan:f})}return t}static workstationDeskTopY(n,e){return n===3?[e.y+64,e.y+256,e.y+404]:i.workstationRowFeetY(n,e).map(s=>s-48)}static buildLoungeSeatingLayout(n,e){let t=[],s=[],m=e.w-40,h=(e.h-2*28)/Math.max(1,n.restRows);for(let I=0;I<n.restRows;I++){let d=e.y+28+I*h,p=h-22;if(n.restCols<=1){let g=Math.min(188,Math.max(104,e.w-40)),w=e.x+Math.round((e.w-g)/2),y=Math.round(d+p*.12);t.push({trackId:`lounge-${I}-0`,x:w,y,w:g,h:44}),s.push({x:w+Math.round(g/2),y:y+44+16})}else{let g=(n.restCols-1)*14,w=Math.max(84,Math.round((m-g)/n.restCols));for(let y=0;y<n.restCols;y++){let C=e.x+20+y*(w+14),N=Math.round(d+p*.12);t.push({trackId:`lounge-${I}-${y}`,x:C,y:N,w,h:44}),s.push({x:C+Math.round(w/2),y:N+44+16})}}}return{restSlots:s,loungeSofas:t}}static buildMeetingSlots(n,e){let t=[],s=e.h/Math.max(1,n.meetingRows+1),a=e.w/Math.max(1,n.meetingCols+1);for(let o=0;o<n.meetingRows;o++)for(let r=0;r<n.meetingCols;r++)t.push({x:Math.round(e.x+a*(r+1)),y:Math.round(e.y+s*(o+1))});return t}static buildConferenceFurniture(n,e){let t=Math.min(420,n.w-80),s=56,a={x:n.x+Math.round((n.w-t)/2),y:n.y+Math.round(n.h/2)-Math.round(s/2),w:t,h:s},o=e.map((r,c)=>({trackId:`conf-chair-${c}`,x:r.x,y:r.y}));return{table:a,chairs:o}}};var J={workstationCols:3,workstationRows:3,restCols:2,restRows:3,meetingCols:2,meetingRows:2,maxEverWorkstationCols:3,maxEverWorkstationRows:3,maxEverRestCols:2,maxEverRestRows:3,maxEverMeetingCols:2,maxEverMeetingRows:2},Me=(()=>{class i{settings_AS=k(fe);layoutPersisted_$=P(J);saveTimerId;grid_$=E(()=>{let e=this.layoutPersisted_$();return{workstationCols:e.workstationCols,workstationRows:e.workstationRows,restCols:e.restCols,restRows:e.restRows,meetingCols:e.meetingCols,meetingRows:e.meetingRows}});derived_$=E(()=>x.computeDerived(this.grid_$()));workstationCapacity_$=E(()=>x.workstationCapacity(this.grid_$()));restCapacity_$=E(()=>x.restCapacity(this.grid_$()));meetingCapacity_$=E(()=>x.meetingCapacity(this.grid_$()));maxEverDisplay_$=E(()=>this.layoutPersisted_$());constructor(){this.loadFromServer()}loadFromServer(){return $(this,null,function*(){try{let e=yield this.settings_AS.getSection(ie.darkOfficeLayout);if(e==null||Object.keys(e).length===0){this.layoutPersisted_$.set(J);return}let t=i.parsePayload(e);this.layoutPersisted_$.set(t)}catch{this.layoutPersisted_$.set(J)}})}ensureMinCapacitiesFromSceneCharacters(e){let t=0,s=0,a=0;for(let c of e)c.scenePlacement===D.meeting?a++:c.presence===S.working?t++:s++;let o=this.layoutPersisted_$(),r=A({},o);r=i.expandGridToFit(r,t,s,a),!i.isSamePersisted(o,r)&&(this.layoutPersisted_$.set(r),this.scheduleDebouncedSave())}applyPersistedFromUser(e){return $(this,null,function*(){this.layoutPersisted_$.set(A({},e)),yield this.saveNow()})}validateProposedGridAgainstSceneCharacters(e){let t=x.clampGrid(e.grid),s=0,a=0,o=0;for(let l of e.characters)l.scenePlacement===D.meeting?o++:l.presence===S.working?s++:a++;let r=x.workstationCapacity(t),c=x.restCapacity(t),u=x.meetingCapacity(t);return s<=r&&a<=c&&o<=u?null:`Dark office layout rejected: scene occupancy exceeds proposed capacity. workstation=${s}/${r}, rest=${a}/${c}, meeting=${o}/${u}.`}getWorkstationSlots(){return this.derived_$().workstationSlots}getRestSlots(){return this.derived_$().restSlots}getMeetingSlots(){return this.derived_$().meetingSlots}getDoorPosition(){return this.derived_$().door}scheduleDebouncedSave(){this.saveTimerId!==void 0&&clearTimeout(this.saveTimerId),this.saveTimerId=setTimeout(()=>{this.saveTimerId=void 0,this.saveNow()},500)}saveNow(){return $(this,null,function*(){let e={workstationCols:this.layoutPersisted_$().workstationCols,workstationRows:this.layoutPersisted_$().workstationRows,restCols:this.layoutPersisted_$().restCols,restRows:this.layoutPersisted_$().restRows,meetingCols:this.layoutPersisted_$().meetingCols,meetingRows:this.layoutPersisted_$().meetingRows,maxEverWorkstationCols:this.layoutPersisted_$().maxEverWorkstationCols,maxEverWorkstationRows:this.layoutPersisted_$().maxEverWorkstationRows,maxEverRestCols:this.layoutPersisted_$().maxEverRestCols,maxEverRestRows:this.layoutPersisted_$().maxEverRestRows,maxEverMeetingCols:this.layoutPersisted_$().maxEverMeetingCols,maxEverMeetingRows:this.layoutPersisted_$().maxEverMeetingRows};try{yield this.settings_AS.saveSection(ie.darkOfficeLayout,e)}catch{}})}static parsePayload(e){let t=(o,r)=>{let c=e[o];return typeof c=="number"&&Number.isFinite(c)?Math.floor(c):r},s=J,a={workstationCols:t("workstationCols",s.workstationCols),workstationRows:t("workstationRows",s.workstationRows),restCols:t("restCols",s.restCols),restRows:t("restRows",s.restRows),meetingCols:t("meetingCols",s.meetingCols),meetingRows:t("meetingRows",s.meetingRows),maxEverWorkstationCols:t("maxEverWorkstationCols",s.maxEverWorkstationCols),maxEverWorkstationRows:t("maxEverWorkstationRows",s.maxEverWorkstationRows),maxEverRestCols:t("maxEverRestCols",s.maxEverRestCols),maxEverRestRows:t("maxEverRestRows",s.maxEverRestRows),maxEverMeetingCols:t("maxEverMeetingCols",s.maxEverMeetingCols),maxEverMeetingRows:t("maxEverMeetingRows",s.maxEverMeetingRows)};return i.clampPersisted(a)}static clampPersisted(e){let t=a=>{if(!Number.isFinite(a))return 1;let o=Math.floor(a);return o<1?1:o>12?12:o},s={workstationCols:t(e.workstationCols),workstationRows:t(e.workstationRows),restCols:t(e.restCols),restRows:t(e.restRows),meetingCols:t(e.meetingCols),meetingRows:t(e.meetingRows),maxEverWorkstationCols:t(e.maxEverWorkstationCols),maxEverWorkstationRows:t(e.maxEverWorkstationRows),maxEverRestCols:t(e.maxEverRestCols),maxEverRestRows:t(e.maxEverRestRows),maxEverMeetingCols:t(e.maxEverMeetingCols),maxEverMeetingRows:t(e.maxEverMeetingRows)};return s.maxEverWorkstationCols=Math.max(s.maxEverWorkstationCols,s.workstationCols),s.maxEverWorkstationRows=Math.max(s.maxEverWorkstationRows,s.workstationRows),s.maxEverRestCols=Math.max(s.maxEverRestCols,s.restCols),s.maxEverRestRows=Math.max(s.maxEverRestRows,s.restRows),s.maxEverMeetingCols=Math.max(s.maxEverMeetingCols,s.meetingCols),s.maxEverMeetingRows=Math.max(s.maxEverMeetingRows,s.meetingRows),s}static isSamePersisted(e,t){return e.workstationCols===t.workstationCols&&e.workstationRows===t.workstationRows&&e.restCols===t.restCols&&e.restRows===t.restRows&&e.meetingCols===t.meetingCols&&e.meetingRows===t.meetingRows&&e.maxEverWorkstationCols===t.maxEverWorkstationCols&&e.maxEverWorkstationRows===t.maxEverWorkstationRows&&e.maxEverRestCols===t.maxEverRestCols&&e.maxEverRestRows===t.maxEverRestRows&&e.maxEverMeetingCols===t.maxEverMeetingCols&&e.maxEverMeetingRows===t.maxEverMeetingRows}static expandGridToFit(e,t,s,a){let o=e.workstationCols,r=e.workstationRows,c=e.restCols,u=e.restRows,l=e.meetingCols,m=e.meetingRows;for(;o*r<t&&(o<12||r<12);)o<=r?o=Math.min(12,o+1):r=Math.min(12,r+1);for(;c*u<s&&(c<12||u<12);)c<=u?c=Math.min(12,c+1):u=Math.min(12,u+1);for(;l*m<a&&(l<12||m<12);)l<=m?l=Math.min(12,l+1):m=Math.min(12,m+1);let f={workstationCols:o,workstationRows:r,restCols:c,restRows:u,meetingCols:l,meetingRows:m,maxEverWorkstationCols:Math.max(e.maxEverWorkstationCols,o),maxEverWorkstationRows:Math.max(e.maxEverWorkstationRows,r),maxEverRestCols:Math.max(e.maxEverRestCols,c),maxEverRestRows:Math.max(e.maxEverRestRows,u),maxEverMeetingCols:Math.max(e.maxEverMeetingCols,l),maxEverMeetingRows:Math.max(e.maxEverMeetingRows,m)};return i.clampPersisted(f)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=z({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var ee=K(q());var B=function(i){return i.connected="connected",i.disconnected="disconnected",i.error="error",i.unreachable="unreachable",i}(B||{});var L=class{static pickCcapPrimary(n){if(!n.length)return null;let e=(o,r)=>new Date(r.lastActivityAt).getTime()-new Date(o.lastActivityAt).getTime(),t=n.filter(o=>o.hasActiveRun===!0||o.presence===S.working);return t.length>0?[...t].sort(e)[0]??null:[...n].sort(e)[0]??null}static pickCciPrimary(n){if(!n.length)return null;let e=(o,r)=>new Date(r.lastActivityAt).getTime()-new Date(o.lastActivityAt).getTime(),t=n.filter(o=>o.hasActiveSession===!0||o.presence===S.working);return t.length>0?[...t].sort(e)[0]??null:[...n].sort(e)[0]??null}static pickCaiPrimary(n){if(!n.length)return null;let e=(o,r)=>new Date(r.lastActivityAt).getTime()-new Date(o.lastActivityAt).getTime(),t=n.filter(o=>o.hasActiveSession===!0||o.presence===S.working);return t.length>0?[...t].sort(e)[0]??null:[...n].sort(e)[0]??null}};var j=class{static pickPrimary(n){if(!n.length)return null;let e=(o,r)=>new Date(r.lastActivityAt).getTime()-new Date(o.lastActivityAt).getTime(),t=n.filter(o=>o.hasActiveSession);return t.length>0?[...t].sort(e)[0]??null:[...n].sort(e)[0]??null}};var ke=K(q()),xe=2*ke.minute;var Z=class i{static mapGatewaySessionsResponse(n){let e=[];for(let t of n.sessions){let s=i.mapOneSession(t);s!==null&&e.push(s)}return e}static mapOneSession(n){let e=typeof n.key=="string"?n.key:typeof n.sessionId=="string"?n.sessionId:typeof n.id=="string"?n.id:"";if(!e.trim())return null;let t=typeof n.status=="string"?n.status.trim().toLowerCase():"",s=i.resolvePresenceFromGatewaySession({statusLower:t,raw:n}),a=s===S.working,o=Y.extractTimestamp(n,Y.GATEWAY_SESSION_LAST_ACTIVITY_FIELD_NAMES)??new Date().toISOString(),r=typeof n.label=="string"?n.label:typeof n.name=="string"?n.name:typeof n.title=="string"?n.title:void 0,u=(typeof n.statusMessage=="string"?n.statusMessage:void 0)?.trim()||(t.length>0?t:"OpenClaw session"),l=typeof n.lastPrompt=="string"?n.lastPrompt:void 0;return{sessionId:e,sessionName:r,presence:s,lastActivityAt:o,hasActiveSession:a,activitySummary:u,lastMessage:l}}static resolvePresenceFromGatewaySession(n){let e=n.statusLower;return e==="connecting"?S.working:i.hasRecentGatewayOutputTimestamp(n.raw)?S.working:e?S.idle:S.idle}static hasRecentGatewayOutputTimestamp(n){let e=Y.extractTimestamp(n,Y.GATEWAY_OUTPUT_ONLY_TIMESTAMP_FIELD_NAMES);if(!e?.length)return!1;let t=Date.parse(e);return Number.isNaN(t)?!1:Date.now()-t<=xe}};var oe=function(i){return i.creating="creating",i.connecting="connecting",i.waitingInput="waiting-input",i.running="running",i.errored="errored",i.completed="completed",i.terminated="terminated",i.disconnected="disconnected",i}(oe||{});var Pe=K(q()),ae=(()=>{class i{static INTERESTING_SESSION_WINDOW_MS=5*Pe.minute;static prune(e,t){if(e.length===0)return[];let s=t.nowMs,a=t.recentWindowMs,o=[];for(let u of e){let l=new Date(u.lastActivityAt).getTime();Number.isNaN(l)||o.push({row:u,ms:l})}if(o.length===0)return[];let r=o.filter(u=>s-u.ms<=a),c=u=>{let m=[...u].sort((f,h)=>{let I=h.ms-f.ms;return I!==0?I:f.row.sessionId.localeCompare(h.row.sessionId)})[0];if(!m)throw new Error("DO_InstanceTrackerSessionStatuses_Prune_Util | empty sort");return m.row};if(r.length>0){let u=new Map;for(let l of r){let m=u.get(l.row.sessionId);(!m||l.ms>=m.ms)&&u.set(l.row.sessionId,l)}return[...u.values()].sort((l,m)=>m.ms-l.ms).map(l=>l.row)}return[c(o)]}}return i})();var F=class i{static resolveCcapSessionStatuses(n){let e=i.mapRawToCcapSessionStatuses(n.inst.rawSessionStatuses),t=e.length>0?e:i.snapshotCcapSessionStatuses({darkOffice_DS:n.darkOffice_DS,instanceId:n.inst.instanceId});return i.applyInterestingSessionWindow(t)}static resolveOciSessionStatuses(n){let e=i.mapRawToOciSessionStatuses(n.inst.rawSessionStatuses),t=e.length>0?e:i.snapshotOciSessionStatuses({darkOffice_DS:n.darkOffice_DS,instanceId:n.inst.instanceId});return i.applyInterestingSessionWindow(t)}static resolveCciSessionStatuses(n){let e=X.parseCcapId(n.inst.instanceId);if(!e)return[];let t=i.mapRawToCciSessionStatuses(n.inst.rawSessionStatuses),s=t.length>0?t:i.snapshotCciSessionStatuses({darkOffice_DS:n.darkOffice_DS,ccapId:e});return i.applyInterestingSessionWindow(s)}static resolveCaiSessionStatuses(n){let e=G.parseCcapId(n.inst.instanceId);if(!e)return[];let t=i.mapRawToCaiSessionStatuses(n.inst.rawSessionStatuses),s=t.length>0?t:i.snapshotCaiSessionStatuses({darkOffice_DS:n.darkOffice_DS,ccapId:e});return i.applyInterestingSessionWindow(s)}static applyInterestingSessionWindow(n){return ae.prune(n,{nowMs:Date.now(),recentWindowMs:ae.INTERESTING_SESSION_WINDOW_MS})}static snapshotCcapSessionStatuses(n){let t=n.darkOffice_DS.getCcapInstanceDataSnapshot(n.instanceId)?.sessionStatuses;return Array.isArray(t)?t:[]}static snapshotOciSessionStatuses(n){let t=n.darkOffice_DS.getOciInstanceDataSnapshot(n.instanceId)?.sessionStatuses;return Array.isArray(t)?t:[]}static snapshotCciSessionStatuses(n){let t=n.darkOffice_DS.getCciInstanceDataSnapshot(n.ccapId)?.sessionStatuses;return Array.isArray(t)?t:[]}static snapshotCaiSessionStatuses(n){let t=n.darkOffice_DS.getCaiInstanceDataSnapshot(n.ccapId)?.sessionStatuses;return Array.isArray(t)?t:[]}static mapRawToCcapSessionStatuses(n){if(!Array.isArray(n)||n.length===0)return[];let e=[];for(let t of n){if(!("hasActiveRun"in t))continue;let s=t.hasActiveRun;if(typeof s!="boolean")continue;let a=t.sessionId;if(typeof a!="string")continue;let o=t.presence;if(!i.isPresenceEnum(o))continue;let r=t.lastActivityAt;if(typeof r!="string")continue;let c=t.activitySummary;if(typeof c!="string")continue;let u=t.sessionName,l=t.lastMessage,m;if("activeRunPhase"in t){let h=t.activeRunPhase;if(h==null)m=void 0;else if(i.isRunFlowPhaseValue(h))m=h;else continue}let f;if("activeRunId"in t){let h=t.activeRunId;if(typeof h=="string")f=h;else if(h!=null)continue}e.push({sessionId:a,sessionName:typeof u=="string"?u:void 0,presence:o,lastActivityAt:r,hasActiveRun:s,activeRunId:f,activeRunPhase:m,activitySummary:c,lastMessage:typeof l=="string"?l:void 0})}return e}static mapRawToCaiSessionStatuses(n){if(!Array.isArray(n)||n.length===0)return[];let e=[];for(let t of n){if("hasActiveRun"in t||!("hasActiveSession"in t)||!("currentCaSessionStatus"in t))continue;let s=i.tryMapToOciOrCciShape(t);if(s===null)continue;let a=Reflect.get(t,"currentCaSessionStatus"),o;i.isCaSessionStatusValue(a)&&(o=a),e.push({sessionId:s.sessionId,sessionName:s.sessionName,presence:s.presence,lastActivityAt:s.lastActivityAt,hasActiveSession:s.hasActiveSession,currentCaSessionStatus:o,activitySummary:s.activitySummary,lastMessage:s.lastMessage})}return e}static mapRawToOciSessionStatuses(n){if(!Array.isArray(n)||n.length===0)return[];let e=[];for(let t of n){if("hasActiveRun"in t||!("hasActiveSession"in t))continue;let s=i.tryMapToOciOrCciShape(t);s!==null&&e.push(s)}return e}static mapRawToCciSessionStatuses(n){if(!Array.isArray(n)||n.length===0)return[];let e=[];for(let t of n){if("hasActiveRun"in t||!("hasActiveSession"in t))continue;let s=i.tryMapToOciOrCciShape(t);if(s===null)continue;let a;if("currentCcSessionStatus"in t){let o=t.currentCcSessionStatus;typeof o=="string"&&(a=o)}e.push({sessionId:s.sessionId,sessionName:s.sessionName,presence:s.presence,lastActivityAt:s.lastActivityAt,hasActiveSession:s.hasActiveSession,currentCcSessionStatus:a,activitySummary:s.activitySummary,lastMessage:s.lastMessage})}return e}static tryMapToOciOrCciShape(n){if(!("hasActiveSession"in n))return null;let e=Reflect.get(n,"hasActiveSession");if(typeof e!="boolean")return null;let t=n.sessionId;if(typeof t!="string")return null;let s=n.presence;if(!i.isPresenceEnum(s))return null;let a=n.lastActivityAt;if(typeof a!="string")return null;let o=n.activitySummary;if(typeof o!="string")return null;let r=n.sessionName,c=n.lastMessage;return{sessionId:t,sessionName:typeof r=="string"?r:void 0,presence:s,lastActivityAt:a,hasActiveSession:e,activitySummary:o,lastMessage:typeof c=="string"?c:void 0}}static isPresenceEnum(n){return typeof n!="string"?!1:Object.values(S).includes(n)}static isRunFlowPhaseValue(n){if(typeof n!="string")return!1;let e=Object.values(ye);for(let t of e)if(t===n)return!0;return!1}static isCaSessionStatusValue(n){if(typeof n!="string")return!1;let e=Object.values(oe);for(let t of e)if(t===n)return!0;return!1}};var Ee=72,H=class i{static buildLastMessageDerivedStatusLabel(n){let e=n.trim();return e&&e.startsWith("[QUEUE]")?"Message queued":""}static buildPanelActiveSessionRows(n){let e=n.rawSessionStatuses;if(!e||e.length===0)return[];let t=n.characterType,s;return t===v.openclaw||t===v.ccSession||t===v.caSession?s=i.collectActiveOciOrCciFromUnion(e):s=i.collectActiveCcapFromUnion(e),s.length<=1?[]:s}static buildSessionDisplayLabel(n,e){let t=e?.trim();return t||i.shortenSessionId(n)}static truncateLastMessagePreview(n){let e=n.trim();return e?e.length<=Ee?e:`${e.slice(0,Ee-1)}\u2026`:""}static isCcapSessionRow(n){return"hasActiveRun"in n}static isOciOrCciSessionRow(n){return"hasActiveSession"in n}static isCcapSessionActive(n){return n.hasActiveRun===!0?!0:n.presence===S.working}static isOciOrCciSessionActive(n){return n.hasActiveSession===!0?!0:n.presence===S.working}static isSessionActiveForSceneDuplication(n){if(n.row.presence===S.offline)return!1;let e=n.characterType;return e===v.openclaw||e===v.ccSession||e===v.caSession?i.isOciOrCciSessionRow(n.row)?i.isOciOrCciSessionActive(n.row):!1:i.isCcapSessionRow(n.row)?i.isCcapSessionActive(n.row):!1}static shortenSessionId(n){return n.length<=10?n:`${n.slice(0,8)}\u2026`}static collectActiveCcapFromUnion(n){let e=[];for(let t of n){if(!i.isCcapSessionRow(t)||!i.isCcapSessionActive(t))continue;let s=i.truncateLastMessagePreview(t.lastMessage??"");e.push({sessionId:t.sessionId,displayLabel:i.buildSessionDisplayLabel(t.sessionId,t.sessionName),presence:t.presence,activitySummary:t.activitySummary,lastMessagePreview:s})}return e}static collectActiveOciOrCciFromUnion(n){let e=[];for(let t of n){if(!i.isOciOrCciSessionRow(t)||!i.isOciOrCciSessionActive(t))continue;let s=i.truncateLastMessagePreview(t.lastMessage??"");e.push({sessionId:t.sessionId,displayLabel:i.buildSessionDisplayLabel(t.sessionId,t.sessionName),presence:t.presence,activitySummary:t.activitySummary,lastMessagePreview:s})}return e}};var De=K(q());var re=(()=>{class i{static sceneRecentActivityWindowMs=5*De.minute;static parseLastActivityMs(e){let t=Date.parse(e);return Number.isNaN(t)?Number.NaN:t}static isSessionRecentAndOnline(e){if(e.presence===S.offline)return!1;let t=i.parseLastActivityMs(e.lastActivityAtIso);return Number.isNaN(t)?!1:e.nowMs-t<=e.windowMs}static rowLastActivityIso(e){return e.lastActivityAt??""}static isSessionWorkingForSceneCharacter(e){return e.presence===S.working||"hasActiveRun"in e&&e.hasActiveRun===!0||"hasActiveSession"in e&&e.hasActiveSession===!0}static isWorkingSessionRecentAndOnline(e){return i.isSessionWorkingForSceneCharacter(e.row)?i.isSessionRecentAndOnline({lastActivityAtIso:i.rowLastActivityIso(e.row),presence:e.row.presence,nowMs:e.nowMs,windowMs:e.windowMs}):!1}static pickNewestSessionByLastActivity(e){let t=e.sessions;return t.length===0?null:[...t].sort((o,r)=>{let c=i.parseLastActivityMs(i.rowLastActivityIso(o)),u=i.parseLastActivityMs(i.rowLastActivityIso(r)),l=!Number.isNaN(c),m=!Number.isNaN(u);return l&&m&&u!==c?u-c:l!==m?l?-1:1:o.sessionId.localeCompare(r.sessionId)})[0]??null}}return i})();var Be="instance-data:session-status-updated",je="openclaw-instance-data:status-updated",He="cci-instance-data:status-updated",Ke="cai-instance-data:status-updated",ys=(()=>{class i{instances_$=P([]);characters_$=E(()=>{let e=this.expandInstancesToCharacters(this.instances_$());return this.assignDistinctSlotsForScene(e)});loading_$=P(!1);loadError_$=P(null);isServerUnreachable_$=P(!1);selectedInstanceId_$=P(null);chatPopupSessionId_$=P(null);instanceStatusDetailInstanceId_$=P(null);instanceData_AS=k(ge);ociInstanceData_AS=k(ve);cciInstanceData_AS=k(Ie);caiInstanceData_AS=k(we);runtimeInstances_DS=k(Ce);socket_CS=k(he);ocSession_DS=k(Re);darkOfficeLayout_DS=k(Me);constructor(){me(()=>{this.darkOfficeLayout_DS.ensureMinCapacitiesFromSceneCharacters(this.characters_$())},{allowSignalWrites:!0}),this.socket_CS.event$.subscribe(e=>{e.event===Be?this.handleInstanceStatusUpdate(e.payload):e.event===je?this.handleOciInstanceStatusUpdate(e.payload):e.event===He?this.handleCciInstanceStatusUpdate(e.payload):e.event===Ke&&this.handleCaiInstanceStatusUpdate(e.payload)})}workstationSlotMap=new Map;restSlotMap=new Map;patchTimerMap=new Map;meetingRoomLingerMs=2*ee.minute;sessionMeetingRoomUntilByKey=new Map;loadInstanceData(){return $(this,null,function*(){this.loading_$.set(!0),this.loadError_$.set(null);try{yield this.runtimeInstances_DS.loadCcapInstanceList();let e=this.runtimeInstances_DS.ccapInstanceListError_$();if(e){e instanceof pe&&e.status===0?this.isServerUnreachable_$.set(!0):this.loadError_$.set(e);return}yield this.runtimeInstances_DS.loadOciInstanceListAllowEmpty(),yield this.runtimeInstances_DS.loadCciInstanceListAllowEmpty(),yield this.runtimeInstances_DS.loadCaiInstanceListAllowEmpty(),this.isServerUnreachable_$.set(!1);let s=this.runtimeInstances_DS.ccapInstanceList_$().filter(m=>m.status===Q.active),a=this.runtimeInstances_DS.ociInstanceList_$(),o=yield this.enrichOciListWithGatewaySessions({list:a}),c=this.runtimeInstances_DS.cciInstanceList_$().filter(m=>m.status===Q.active),l=this.runtimeInstances_DS.caiInstanceList_$().filter(m=>m.status===Q.active);this.applyAllInstanceData(s,o,c,l)}finally{this.loading_$.set(!1)}})}enrichOciListWithGatewaySessions(e){return $(this,null,function*(){return yield Promise.all(e.list.map(s=>$(this,null,function*(){let a=s.sessionStatuses??[];if(!(s.connectionStatus===B.connected)||a.length>0)return s;try{let r=yield this.ocSession_DS.fetchGatewaySessionsForInstance({instanceId:s.instanceId}),c=Z.mapGatewaySessionsResponse({sessions:r.rawSessions});return c.length===0?s:M(A({},s),{sessionStatuses:c})}catch(r){return ee.DyFM_Error.logSimple("CCAP_DarkOffice_DS | enrichOciListWithGatewaySessions failed",r),s}})))})}saveVisuals(e,t){this.instances_$.update(s=>s.map(a=>a.instanceId===e?M(A({},a),{visuals:t}):a)),this.schedulePatch(e,t)}dismissError(){this.loadError_$.set(null)}openChatPopup(e){this.chatPopupSessionId_$.set(e)}closeChatPopup(){this.chatPopupSessionId_$.set(null)}selectInstance(e){this.selectedInstanceId_$.set(e)}openInstanceStatusDetail(e){this.instanceStatusDetailInstanceId_$.set(e)}closeInstanceStatusDetail(){this.instanceStatusDetailInstanceId_$.set(null)}getCcapInstanceDataSnapshot(e){return this.runtimeInstances_DS.ccapInstanceList_$().find(t=>t.ccapId===e)}getOciInstanceDataSnapshot(e){return this.runtimeInstances_DS.ociInstanceList_$().find(t=>t.instanceId===e)}getCciInstanceDataSnapshot(e){return this.runtimeInstances_DS.cciInstanceList_$().find(t=>t.ccapId===e)}getCaiInstanceDataSnapshot(e){return this.runtimeInstances_DS.caiInstanceList_$().find(t=>t.ccapId===e)}resolveOfficeInstanceById(e){return e?this.instances_$().find(a=>a.instanceId===e)??null:null}resolveModalCcapSessionStatuses(e){return F.resolveCcapSessionStatuses({inst:e,darkOffice_DS:this})}resolveModalOciSessionStatuses(e){return F.resolveOciSessionStatuses({inst:e,darkOffice_DS:this})}resolveModalCciSessionStatuses(e){return F.resolveCciSessionStatuses({inst:e,darkOffice_DS:this})}resolveModalCaiSessionStatuses(e){return F.resolveCaiSessionStatuses({inst:e,darkOffice_DS:this})}buildInstanceStatusDetailRuntimeHint(e){let t=e.characterType??v.ccap;if(t===v.openclaw)return this.resolveModalOciSessionStatuses(e).length>0||this.getOciInstanceDataSnapshot(e.instanceId)?"":"No matching OCI row in runtime list (last load only; socket updates may not refresh this list).";if(t===v.ccSession){let o=X.parseCcapId(e.instanceId);return!o||this.resolveModalCciSessionStatuses(e).length>0||this.getCciInstanceDataSnapshot(o)?"":"No matching CCI row in runtime list (last load only; socket updates may not refresh this list)."}if(t===v.caSession){let o=G.parseCcapId(e.instanceId);return!o||this.resolveModalCaiSessionStatuses(e).length>0||this.getCaiInstanceDataSnapshot(o)?"":"No matching CAI row in runtime list (last load only; socket updates may not refresh this list)."}return this.resolveModalCcapSessionStatuses(e).length>0||this.getCcapInstanceDataSnapshot(e.instanceId)?"":"No matching CCAP row in runtime list (last load only; socket updates may not refresh this list)."}pruneExpiredMeetingRoomKeys(e){for(let t of[...this.sessionMeetingRoomUntilByKey.keys()]){let s=this.sessionMeetingRoomUntilByKey.get(t);s!==void 0&&s<=e&&this.sessionMeetingRoomUntilByKey.delete(t)}}applyMeetingRoomTransitionForSessionDiff(e){let t=Date.now();this.pruneExpiredMeetingRoomKeys(t);let s=new Map;for(let a of e.previousRows??[])s.set(a.sessionId,a.presence);for(let a of e.nextRows??[]){let o=s.get(a.sessionId),r=`${e.baseInstanceId}::${a.sessionId}`;o===S.working&&a.presence===S.idle&&this.sessionMeetingRoomUntilByKey.set(r,t+this.meetingRoomLingerMs)}}resolveScenePlacementForSessionKey(e){let t=`${e.baseInstanceId}::${e.sessionId}`,s=this.sessionMeetingRoomUntilByKey.get(t);if(s!==void 0&&Date.now()<s)return D.meeting}handleInstanceStatusUpdate(e){let t=typeof e.ccapId=="string"?e.ccapId:void 0,s=e.sessionStatuses,a=Array.isArray(s)?s:void 0;if(!t||!a)return;let o=this.instances_$(),r=o.findIndex(h=>h.instanceId===t);if(r<0){this.loadInstanceData();return}let c=o[r];this.applyMeetingRoomTransitionForSessionDiff({baseInstanceId:t,previousRows:c.rawSessionStatuses,nextRows:a});let u=this.resolveSessionInfoFromStatuses(a),l=this.assignSlot(t,u.presence,c),m=this.resolveAnimState(u.presence,c.presence,c.animState),f=this.applyPanelCardProjection(M(A({},c),{presence:u.presence,activitySummary:u.activitySummary,currentRunFlowPhase:u.currentRunFlowPhase,latestSessionId:u.latestSessionId,lastMessage:u.lastMessage,animState:m,previousPresence:c.presence,assignedSlotIndex:l,rawSessionStatuses:a}));this.instances_$.update(h=>h.map(I=>I.instanceId===t?f:I))}resolveSessionInfoFromStatuses(e){if(e.length===0)return{presence:S.idle,activitySummary:"No CCAP Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let s=L.pickCcapPrimary(e)??e[0];return{presence:s.presence,activitySummary:s.activitySummary,currentRunFlowPhase:s.activeRunPhase??null,latestSessionId:s.sessionId,lastMessage:s.lastMessage??""}}applyPanelCardProjection(e){let t=e.sessionName??"";if(!t&&e.latestSessionId&&e.rawSessionStatuses){for(let s of e.rawSessionStatuses)if(s.sessionId===e.latestSessionId){t=s.sessionName??"";break}}return M(A({},e),{sessionName:t,lastMessageDerivedStatusLabel:H.buildLastMessageDerivedStatusLabel(e.lastMessage),panelActiveSessionRows:H.buildPanelActiveSessionRows({characterType:e.characterType,rawSessionStatuses:e.rawSessionStatuses})})}applyAllInstanceData(e,t,s,a){let o=this.instances_$(),r=new Map(o.map(d=>[d.instanceId,d])),c=e.map(d=>{let p=r.get(d.ccapId),g=p?.visuals??this.mapToVisuals(d),w=this.resolveSessionInfo(d),y=this.assignSlot(d.ccapId,w.presence,p),C=this.resolveAnimState(w.presence,p?.presence??null,p?.animState??null);return this.applyPanelCardProjection({instanceId:d.ccapId,presence:w.presence,activitySummary:w.activitySummary,currentRunFlowPhase:w.currentRunFlowPhase,latestSessionId:w.latestSessionId,lastMessage:w.lastMessage,visuals:g,animState:C,previousPresence:p?.presence??null,assignedSlotIndex:y,characterType:v.ccap,connectionStatus:null,rawSessionStatuses:d.sessionStatuses??[],lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]})}),u=t.map(d=>{let p=r.get(d.instanceId),g=p?.visuals??this.mapOciToVisuals(d),w=this.resolveOciSessionInfo(d),y=this.assignSlot(d.instanceId,w.presence,p),C=this.resolveAnimState(w.presence,p?.presence??null,p?.animState??null);return this.applyPanelCardProjection({instanceId:d.instanceId,presence:w.presence,activitySummary:w.activitySummary,currentRunFlowPhase:null,latestSessionId:w.latestSessionId,lastMessage:w.lastMessage,visuals:g,animState:C,previousPresence:p?.presence??null,assignedSlotIndex:y,characterType:v.openclaw,connectionStatus:d.connectionStatus??null,rawSessionStatuses:d.sessionStatuses??[],lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]})}),l=s.map(d=>{let p=X.build({ccapId:d.ccapId}),g=r.get(p),w=g?.visuals??this.mapCciToVisuals(d),y=this.resolveCciSessionInfo(d),C=this.assignSlot(p,y.presence,g),N=this.resolveAnimState(y.presence,g?.presence??null,g?.animState??null);return this.applyPanelCardProjection({instanceId:p,presence:y.presence,activitySummary:y.activitySummary,currentRunFlowPhase:y.currentRunFlowPhase,latestSessionId:y.latestSessionId,lastMessage:y.lastMessage,visuals:w,animState:N,previousPresence:g?.presence??null,assignedSlotIndex:C,characterType:v.ccSession,connectionStatus:null,rawSessionStatuses:d.sessionStatuses??[],lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]})}),m=a.map(d=>{let p=G.build({ccapId:d.ccapId}),g=r.get(p),w=g?.visuals??this.mapCaiToVisuals(d),y=this.resolveCaiSessionInfo(d),C=this.assignSlot(p,y.presence,g),N=this.resolveAnimState(y.presence,g?.presence??null,g?.animState??null);return this.applyPanelCardProjection({instanceId:p,presence:y.presence,activitySummary:y.activitySummary,currentRunFlowPhase:y.currentRunFlowPhase,latestSessionId:y.latestSessionId,lastMessage:y.lastMessage,visuals:w,animState:N,previousPresence:g?.presence??null,assignedSlotIndex:C,characterType:v.caSession,connectionStatus:null,rawSessionStatuses:d.sessionStatuses??[],lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]})}),f=[...c,...u,...l,...m];for(let d of f){let p=r.get(d.instanceId);this.applyMeetingRoomTransitionForSessionDiff({baseInstanceId:d.instanceId,previousRows:p?.rawSessionStatuses,nextRows:d.rawSessionStatuses})}let h=new Set(f.map(d=>d.instanceId)),I=o.filter(d=>!h.has(d.instanceId)&&d.animState!==R.walkingOut).map(d=>this.applyPanelCardProjection(M(A({},d),{animState:R.walkingOut})));this.instances_$.set([...f,...I]),I.length>0&&setTimeout(()=>{this.instances_$.update(d=>d.filter(p=>h.has(p.instanceId)))},Ae+200)}mapToVisuals(e){let t=e.darkOfficeVisuals;return{skinColor:t?.skinColor??O.skinColor,hairColor:t?.hairColor??O.hairColor,hairStyle:t?.hairStyle??O.hairStyle,shirtColor:t?.shirtColor??O.shirtColor,clothingStyle:t?.clothingStyle??O.clothingStyle,pantsColor:t?.pantsColor??O.pantsColor,eyeColor:t?.eyeColor??O.eyeColor,bodyType:t?.bodyType??O.bodyType,displayName:e.name??""}}resolveSessionInfo(e){let t=e.sessionStatuses;if(!t||t.length===0)return{presence:S.idle,activitySummary:"No CCAP Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let a=L.pickCcapPrimary(t)??t[0];return{presence:a.presence,activitySummary:a.activitySummary,currentRunFlowPhase:a.activeRunPhase??null,latestSessionId:a.sessionId,lastMessage:a.lastMessage??""}}mapOciToVisuals(e){let t=e.darkOfficeVisuals;return{skinColor:t?.skinColor??T.skinColor,hairColor:t?.hairColor??T.hairColor,hairStyle:t?.hairStyle??T.hairStyle,shirtColor:t?.shirtColor??T.shirtColor,clothingStyle:t?.clothingStyle??T.clothingStyle,pantsColor:t?.pantsColor??T.pantsColor,eyeColor:t?.eyeColor??T.eyeColor,bodyType:t?.bodyType??T.bodyType,displayName:e.label??""}}mapCaiToVisuals(e){let t=e.darkOfficeVisuals;return{skinColor:t?.skinColor??b.skinColor,hairColor:t?.hairColor??b.hairColor,hairStyle:t?.hairStyle??b.hairStyle,shirtColor:t?.shirtColor??b.shirtColor,clothingStyle:t?.clothingStyle??b.clothingStyle,pantsColor:t?.pantsColor??b.pantsColor,eyeColor:t?.eyeColor??b.eyeColor,bodyType:t?.bodyType??b.bodyType,displayName:e.name??""}}resolveCaiSessionInfo(e){let t=e.sessionStatuses??[];if(t.length===0)return{presence:S.idle,activitySummary:"No CA Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let a=L.pickCaiPrimary(t)??t[0];return{presence:a.presence,activitySummary:a.activitySummary,currentRunFlowPhase:a.currentCaSessionStatus??null,latestSessionId:a.sessionId,lastMessage:a.lastMessage??""}}mapCciToVisuals(e){let t=e.darkOfficeVisuals;return{skinColor:t?.skinColor??_.skinColor,hairColor:t?.hairColor??_.hairColor,hairStyle:t?.hairStyle??_.hairStyle,shirtColor:t?.shirtColor??_.shirtColor,clothingStyle:t?.clothingStyle??_.clothingStyle,pantsColor:t?.pantsColor??_.pantsColor,eyeColor:t?.eyeColor??_.eyeColor,bodyType:t?.bodyType??_.bodyType,displayName:e.name??""}}resolveCciSessionInfo(e){let t=e.sessionStatuses??[];if(t.length===0)return{presence:S.idle,activitySummary:"No CC Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let a=L.pickCciPrimary(t)??t[0];return{presence:a.presence,activitySummary:a.activitySummary,currentRunFlowPhase:a.currentCcSessionStatus??null,latestSessionId:a.sessionId,lastMessage:a.lastMessage??""}}resolveOciSessionInfo(e){if(!(e.connectionStatus===B.connected))return{presence:S.offline,activitySummary:"Gateway disconnected",latestSessionId:null,lastMessage:""};let s=e.sessionStatuses??[];if(s.length===0)return{presence:S.idle,activitySummary:"Connected",latestSessionId:null,lastMessage:""};let a=j.pickPrimary(s);return a?{presence:a.presence,activitySummary:a.activitySummary,latestSessionId:a.sessionId,lastMessage:a.lastMessage??""}:{presence:S.idle,activitySummary:"Connected",latestSessionId:null,lastMessage:""}}handleOciInstanceStatusUpdate(e){let t=typeof e.instanceId=="string"?e.instanceId:void 0,s=e.sessionStatuses,a=Array.isArray(s)?s:void 0,o=typeof e.connectionStatus=="string"?e.connectionStatus:void 0;if(!t)return;let r=this.instances_$(),c=r.findIndex(p=>p.instanceId===t);if(!(o===B.connected)&&c>=0){let p=r[c],g=this.assignSlot(t,S.offline,p),w=this.resolveAnimState(S.offline,p.presence,p.animState);this.instances_$.update(y=>y.map(C=>C.instanceId===t?this.applyPanelCardProjection(M(A({},C),{presence:S.offline,activitySummary:"Gateway disconnected",lastMessage:"",animState:w,previousPresence:p.presence,assignedSlotIndex:g,connectionStatus:o??C.connectionStatus})):C));return}if(c<0){this.loadInstanceData();return}let l=r[c],m=a??[];this.applyMeetingRoomTransitionForSessionDiff({baseInstanceId:t,previousRows:l.rawSessionStatuses,nextRows:m});let f;if(m.length>0){let p=j.pickPrimary(m);p?f={presence:p.presence,activitySummary:p.activitySummary,latestSessionId:p.sessionId,lastMessage:p.lastMessage??""}:f={presence:S.idle,activitySummary:"Connected",latestSessionId:null,lastMessage:""}}else f={presence:S.idle,activitySummary:"Connected",latestSessionId:null,lastMessage:""};let h=this.assignSlot(t,f.presence,l),I=this.resolveAnimState(f.presence,l.presence,l.animState),d=this.applyPanelCardProjection(M(A({},l),{presence:f.presence,activitySummary:f.activitySummary,latestSessionId:f.latestSessionId,lastMessage:f.lastMessage,animState:I,previousPresence:l.presence,assignedSlotIndex:h,connectionStatus:o??l.connectionStatus,rawSessionStatuses:m}));this.instances_$.update(p=>p.map(g=>g.instanceId===t?d:g))}handleCciInstanceStatusUpdate(e){let t=typeof e.officeInstanceId=="string"?e.officeInstanceId:void 0,s=e.sessionStatuses,a=Array.isArray(s)?s:void 0;if(!t)return;let o=this.instances_$(),r=o.findIndex(I=>I.instanceId===t);if(r<0){this.loadInstanceData();return}let c=o[r],u=a??[];this.applyMeetingRoomTransitionForSessionDiff({baseInstanceId:t,previousRows:c.rawSessionStatuses,nextRows:u});let l=this.resolveSessionInfoFromCciStatuses(u),m=this.assignSlot(t,l.presence,c),f=this.resolveAnimState(l.presence,c.presence,c.animState),h=this.applyPanelCardProjection(M(A({},c),{presence:l.presence,activitySummary:l.activitySummary,currentRunFlowPhase:l.currentRunFlowPhase,latestSessionId:l.latestSessionId,lastMessage:l.lastMessage,animState:f,previousPresence:c.presence,assignedSlotIndex:m,rawSessionStatuses:u}));this.instances_$.update(I=>I.map(d=>d.instanceId===t?h:d))}handleCaiInstanceStatusUpdate(e){let t=typeof e.officeInstanceId=="string"?e.officeInstanceId:void 0,s=e.sessionStatuses,a=Array.isArray(s)?s:void 0;if(!t)return;let o=this.instances_$(),r=o.findIndex(I=>I.instanceId===t);if(r<0){this.loadInstanceData();return}let c=o[r],u=a??[];this.applyMeetingRoomTransitionForSessionDiff({baseInstanceId:t,previousRows:c.rawSessionStatuses,nextRows:u});let l=this.resolveSessionInfoFromCaiStatuses(u),m=this.assignSlot(t,l.presence,c),f=this.resolveAnimState(l.presence,c.presence,c.animState),h=this.applyPanelCardProjection(M(A({},c),{presence:l.presence,activitySummary:l.activitySummary,currentRunFlowPhase:l.currentRunFlowPhase,latestSessionId:l.latestSessionId,lastMessage:l.lastMessage,animState:f,previousPresence:c.presence,assignedSlotIndex:m,rawSessionStatuses:u}));this.instances_$.update(I=>I.map(d=>d.instanceId===t?h:d))}resolveSessionInfoFromCciStatuses(e){if(e.length===0)return{presence:S.idle,activitySummary:"No CC Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let s=L.pickCciPrimary(e)??e[0];return{presence:s.presence,activitySummary:s.activitySummary,currentRunFlowPhase:s.currentCcSessionStatus??null,latestSessionId:s.sessionId,lastMessage:s.lastMessage??""}}resolveSessionInfoFromCaiStatuses(e){if(e.length===0)return{presence:S.idle,activitySummary:"No CA Session activity",currentRunFlowPhase:null,latestSessionId:null,lastMessage:""};let s=L.pickCaiPrimary(e)??e[0];return{presence:s.presence,activitySummary:s.activitySummary,currentRunFlowPhase:s.currentCaSessionStatus??null,latestSessionId:s.sessionId,lastMessage:s.lastMessage??""}}schedulePatch(e,t){let s=this.patchTimerMap.get(e);s!==void 0&&clearTimeout(s);let a=setTimeout(()=>{this.patchTimerMap.delete(e);let m=t,{displayName:o}=m,r=Se(m,["displayName"]),c=this.instances_$().find(f=>f.instanceId===e),u=G.parseCcapId(e),l=X.parseCcapId(e);u!==null?this.caiInstanceData_AS.patchByCcapId({ccapId:u,name:o||void 0,darkOfficeVisuals:r}):l!==null?this.cciInstanceData_AS.patchByCcapId({ccapId:l,name:o||void 0,darkOfficeVisuals:r}):c?.characterType===v.openclaw?this.ociInstanceData_AS.patchVisuals({instanceId:e,label:o||void 0,darkOfficeVisuals:r}):this.instanceData_AS.patchByCcapId({ccapId:e,name:o||void 0,darkOfficeVisuals:r})},300);this.patchTimerMap.set(e,a)}assignSlot(e,t,s){let a=t===S.working,o=a?this.workstationSlotMap:this.restSlotMap,r=a?this.darkOfficeLayout_DS.workstationCapacity_$():this.darkOfficeLayout_DS.restCapacity_$();if(o.has(e))return o.get(e);this.workstationSlotMap.delete(e),this.restSlotMap.delete(e);let c=new Set(o.values());for(let l=0;l<r;l++)if(!c.has(l))return o.set(e,l),l;let u=r;for(;c.has(u);)u++;return o.set(e,u),u}resolveAnimState(e,t,s){return t===S.offline&&e!==S.offline?R.walkingIn:t!==null&&t!==S.offline&&e===S.offline?R.walkingOut:s===R.walkingIn?R.walkingIn:s===R.walkingBetween?R.walkingBetween:t!==null&&t!==S.offline&&e!==S.offline&&t!==e?R.walkingBetween:e===S.working?R.working:e===S.idle?R.sitting:R.standing}assignDistinctSlotsForScene(e){let t=0,s=0,a=0;return e.map(o=>{let r;return o.scenePlacement===D.meeting?r=a++:o.presence===S.working?r=t++:r=s++,M(A({},o),{assignedSlotIndex:r})})}expandInstancesToCharacters(e){let t=[],s=Date.now(),a=re.sceneRecentActivityWindowMs;for(let o of e){if(o.presence===S.offline)continue;t.push(this.buildInstanceBaselineCharacter(o));let r=o.rawSessionStatuses??[];for(let c of r)re.isWorkingSessionRecentAndOnline({row:c,nowMs:s,windowMs:a})&&t.push(this.buildPerSessionOfficeCharacter(o,c))}return t}buildInstanceBaselineCharacter(e){return this.applyPanelCardProjection(M(A({},e),{instanceId:e.instanceId,sessionId:void 0,sessionName:"",presence:S.idle,activitySummary:e.activitySummary,lastMessage:"",latestSessionId:null,currentRunFlowPhase:null,assignedSlotIndex:0,animState:R.sitting,previousPresence:null,scenePlacement:void 0,rawSessionStatuses:e.rawSessionStatuses,lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]}))}buildPerSessionOfficeCharacter(e,t){let s=`${e.instanceId}::${t.sessionId}`,o=(t.presence===S.working?void 0:this.resolveScenePlacementForSessionKey({baseInstanceId:e.instanceId,sessionId:t.sessionId}))===D.meeting?D.meeting:void 0;return this.applyPanelCardProjection(M(A({},e),{instanceId:s,sessionId:t.sessionId,sessionName:t.sessionName??"",presence:t.presence,activitySummary:t.activitySummary,lastMessage:t.lastMessage??"",latestSessionId:t.sessionId,currentRunFlowPhase:i.resolveSessionRunFlowPhaseLabel(t),assignedSlotIndex:0,animState:t.presence===S.working?R.working:R.sitting,previousPresence:null,scenePlacement:o,rawSessionStatuses:void 0,lastMessageDerivedStatusLabel:"",panelActiveSessionRows:[]}))}static resolveSessionRunFlowPhaseLabel(e){return"activeRunPhase"in e?e.activeRunPhase??null:"currentCcSessionStatus"in e?e.currentCcSessionStatus??null:"currentCaSessionStatus"in e?e.currentCaSessionStatus??null:null}static \u0275fac=function(t){return new(t||i)};static \u0275prov=z({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();export{R as a,D as b,v as c,B as d,W as e,U as f,V as g,it as h,ot as i,at as j,rt as k,ct as l,G as m,X as n,re as o,Me as p,ys as q};
2
- //# sourceMappingURL=chunk-3UDLOQR2.js.map