@rtc-agent/component 0.2.7-rc.3 → 0.2.8-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/README.md +109 -13
  2. package/dist/.generated/locales/en-US.d.ts +268 -0
  3. package/dist/.generated/locales/en-US.d.ts.map +1 -0
  4. package/dist/assets/{shared-worker-BEaT-a-g.js → shared-worker-CXyjL7E6.js} +210 -210
  5. package/dist/components/activity-bar/rtc-activity-bar.d.ts +67 -0
  6. package/dist/components/activity-bar/rtc-activity-bar.d.ts.map +1 -0
  7. package/dist/components/activity-bar/rtc-activity-bar.styles.d.ts +7 -0
  8. package/dist/components/activity-bar/rtc-activity-bar.styles.d.ts.map +1 -0
  9. package/dist/components/chat-layout/rtc-chat-layout.d.ts +218 -0
  10. package/dist/components/chat-layout/rtc-chat-layout.d.ts.map +1 -0
  11. package/dist/components/chat-layout/rtc-chat-layout.styles.d.ts +11 -0
  12. package/dist/components/chat-layout/rtc-chat-layout.styles.d.ts.map +1 -0
  13. package/dist/components/content-area/rtc-content-area.d.ts +34 -0
  14. package/dist/components/content-area/rtc-content-area.d.ts.map +1 -0
  15. package/dist/components/content-area/rtc-content-area.styles.d.ts +2 -0
  16. package/dist/components/content-area/rtc-content-area.styles.d.ts.map +1 -0
  17. package/dist/components/content-area/rtc-error-message.d.ts +82 -0
  18. package/dist/components/content-area/rtc-error-message.d.ts.map +1 -0
  19. package/dist/components/content-area/rtc-message-list.d.ts +251 -0
  20. package/dist/components/content-area/rtc-message-list.d.ts.map +1 -0
  21. package/dist/components/content-area/rtc-message-list.skeleton-styles.d.ts +13 -0
  22. package/dist/components/content-area/rtc-message-list.skeleton-styles.d.ts.map +1 -0
  23. package/dist/components/content-area/rtc-message-list.styles.d.ts +2 -0
  24. package/dist/components/content-area/rtc-message-list.styles.d.ts.map +1 -0
  25. package/dist/components/content-area/rtc-message-more-menu.d.ts +35 -0
  26. package/dist/components/content-area/rtc-message-more-menu.d.ts.map +1 -0
  27. package/dist/components/content-area/rtc-message.d.ts +208 -0
  28. package/dist/components/content-area/rtc-message.d.ts.map +1 -0
  29. package/dist/components/content-area/rtc-message.styles.d.ts +2 -0
  30. package/dist/components/content-area/rtc-message.styles.d.ts.map +1 -0
  31. package/dist/components/content-area/rtc-scroll-container.d.ts +44 -0
  32. package/dist/components/content-area/rtc-scroll-container.d.ts.map +1 -0
  33. package/dist/components/content-area/rtc-scroll-container.styles.d.ts +2 -0
  34. package/dist/components/content-area/rtc-scroll-container.styles.d.ts.map +1 -0
  35. package/dist/components/content-area/rtc-toolcall-card.d.ts +86 -0
  36. package/dist/components/content-area/rtc-toolcall-card.d.ts.map +1 -0
  37. package/dist/components/content-area/rtc-toolcall-card.styles.d.ts +2 -0
  38. package/dist/components/content-area/rtc-toolcall-card.styles.d.ts.map +1 -0
  39. package/dist/components/content-area/rtc-toolcall-reply.d.ts +77 -0
  40. package/dist/components/content-area/rtc-toolcall-reply.d.ts.map +1 -0
  41. package/dist/components/content-area/rtc-toolcall-reply.styles.d.ts +2 -0
  42. package/dist/components/content-area/rtc-toolcall-reply.styles.d.ts.map +1 -0
  43. package/dist/components/content-area/rtc-user-message.d.ts +116 -0
  44. package/dist/components/content-area/rtc-user-message.d.ts.map +1 -0
  45. package/dist/components/content-area/rtc-user-message.styles.d.ts +22 -0
  46. package/dist/components/content-area/rtc-user-message.styles.d.ts.map +1 -0
  47. package/dist/components/content-area/timeline.styles.d.ts +2 -0
  48. package/dist/components/content-area/timeline.styles.d.ts.map +1 -0
  49. package/dist/components/content-wrapper/rtc-content-wrapper.d.ts +25 -0
  50. package/dist/components/content-wrapper/rtc-content-wrapper.d.ts.map +1 -0
  51. package/dist/components/content-wrapper/rtc-content-wrapper.styles.d.ts +2 -0
  52. package/dist/components/content-wrapper/rtc-content-wrapper.styles.d.ts.map +1 -0
  53. package/dist/components/drawer/rtc-drawer.d.ts +75 -0
  54. package/dist/components/drawer/rtc-drawer.d.ts.map +1 -0
  55. package/dist/components/drawer/rtc-drawer.styles.d.ts +15 -0
  56. package/dist/components/drawer/rtc-drawer.styles.d.ts.map +1 -0
  57. package/dist/components/editor-area/rtc-editor-area.d.ts +119 -0
  58. package/dist/components/editor-area/rtc-editor-area.d.ts.map +1 -0
  59. package/dist/components/editor-area/rtc-editor-area.styles.d.ts +8 -0
  60. package/dist/components/editor-area/rtc-editor-area.styles.d.ts.map +1 -0
  61. package/dist/components/editor-area/rtc-editor-tab.d.ts +84 -0
  62. package/dist/components/editor-area/rtc-editor-tab.d.ts.map +1 -0
  63. package/dist/components/editor-area/rtc-editor-tab.styles.d.ts +8 -0
  64. package/dist/components/editor-area/rtc-editor-tab.styles.d.ts.map +1 -0
  65. package/dist/components/editor-area/rtc-editor-toolbar.d.ts +68 -0
  66. package/dist/components/editor-area/rtc-editor-toolbar.d.ts.map +1 -0
  67. package/dist/components/editor-area/rtc-editor-toolbar.styles.d.ts +8 -0
  68. package/dist/components/editor-area/rtc-editor-toolbar.styles.d.ts.map +1 -0
  69. package/dist/components/empty-state/rtc-empty-state.d.ts +24 -0
  70. package/dist/components/empty-state/rtc-empty-state.d.ts.map +1 -0
  71. package/dist/components/empty-state/rtc-empty-state.styles.d.ts +2 -0
  72. package/dist/components/empty-state/rtc-empty-state.styles.d.ts.map +1 -0
  73. package/dist/components/file-explorer/rtc-file-explorer.d.ts +94 -0
  74. package/dist/components/file-explorer/rtc-file-explorer.d.ts.map +1 -0
  75. package/dist/components/file-explorer/rtc-file-explorer.styles.d.ts +8 -0
  76. package/dist/components/file-explorer/rtc-file-explorer.styles.d.ts.map +1 -0
  77. package/dist/components/file-explorer/rtc-file-tree-item.d.ts +70 -0
  78. package/dist/components/file-explorer/rtc-file-tree-item.d.ts.map +1 -0
  79. package/dist/components/file-explorer/rtc-file-tree-item.styles.d.ts +8 -0
  80. package/dist/components/file-explorer/rtc-file-tree-item.styles.d.ts.map +1 -0
  81. package/dist/components/function-console/rtc-function-console.d.ts +32 -0
  82. package/dist/components/function-console/rtc-function-console.d.ts.map +1 -0
  83. package/dist/components/function-console/rtc-function-console.styles.d.ts +8 -0
  84. package/dist/components/function-console/rtc-function-console.styles.d.ts.map +1 -0
  85. package/dist/components/function-debugger/rtc-function-debugger.d.ts +39 -0
  86. package/dist/components/function-debugger/rtc-function-debugger.d.ts.map +1 -0
  87. package/dist/components/function-debugger/rtc-function-debugger.styles.d.ts +8 -0
  88. package/dist/components/function-debugger/rtc-function-debugger.styles.d.ts.map +1 -0
  89. package/dist/components/function-history/rtc-function-history.d.ts +49 -0
  90. package/dist/components/function-history/rtc-function-history.d.ts.map +1 -0
  91. package/dist/components/function-history/rtc-function-history.styles.d.ts +8 -0
  92. package/dist/components/function-history/rtc-function-history.styles.d.ts.map +1 -0
  93. package/dist/components/function-params/rtc-function-params.d.ts +29 -0
  94. package/dist/components/function-params/rtc-function-params.d.ts.map +1 -0
  95. package/dist/components/function-params/rtc-function-params.styles.d.ts +8 -0
  96. package/dist/components/function-params/rtc-function-params.styles.d.ts.map +1 -0
  97. package/dist/components/function-tree/rtc-function-tree.d.ts +59 -0
  98. package/dist/components/function-tree/rtc-function-tree.d.ts.map +1 -0
  99. package/dist/components/function-tree/rtc-function-tree.styles.d.ts +2 -0
  100. package/dist/components/function-tree/rtc-function-tree.styles.d.ts.map +1 -0
  101. package/dist/components/functions-layout/rtc-functions-layout.d.ts +45 -0
  102. package/dist/components/functions-layout/rtc-functions-layout.d.ts.map +1 -0
  103. package/dist/components/functions-layout/rtc-functions-layout.styles.d.ts +8 -0
  104. package/dist/components/functions-layout/rtc-functions-layout.styles.d.ts.map +1 -0
  105. package/dist/components/input-area/rtc-input-area.d.ts +167 -0
  106. package/dist/components/input-area/rtc-input-area.d.ts.map +1 -0
  107. package/dist/components/input-area/rtc-input-area.styles.d.ts +2 -0
  108. package/dist/components/input-area/rtc-input-area.styles.d.ts.map +1 -0
  109. package/dist/components/login/rtc-login-dialog.d.ts +54 -0
  110. package/dist/components/login/rtc-login-dialog.d.ts.map +1 -0
  111. package/dist/components/login/rtc-login-dialog.styles.d.ts +2 -0
  112. package/dist/components/login/rtc-login-dialog.styles.d.ts.map +1 -0
  113. package/dist/components/login/rtc-login-page.d.ts +39 -0
  114. package/dist/components/login/rtc-login-page.d.ts.map +1 -0
  115. package/dist/components/login/rtc-login-page.styles.d.ts +2 -0
  116. package/dist/components/login/rtc-login-page.styles.d.ts.map +1 -0
  117. package/dist/components/logo/rtc-logo.d.ts +38 -0
  118. package/dist/components/logo/rtc-logo.d.ts.map +1 -0
  119. package/dist/components/markdown-editor/rtc-markdown-editor.d.ts +91 -0
  120. package/dist/components/markdown-editor/rtc-markdown-editor.d.ts.map +1 -0
  121. package/dist/components/markdown-editor/rtc-markdown-editor.styles.d.ts +2 -0
  122. package/dist/components/markdown-editor/rtc-markdown-editor.styles.d.ts.map +1 -0
  123. package/dist/components/notice-bar/rtc-notice-bar.d.ts +23 -0
  124. package/dist/components/notice-bar/rtc-notice-bar.d.ts.map +1 -0
  125. package/dist/components/notice-bar/rtc-notice-bar.styles.d.ts +2 -0
  126. package/dist/components/notice-bar/rtc-notice-bar.styles.d.ts.map +1 -0
  127. package/dist/components/overlay/rtc-ask-user.d.ts +91 -0
  128. package/dist/components/overlay/rtc-ask-user.d.ts.map +1 -0
  129. package/dist/components/overlay/rtc-ask-user.styles.d.ts +11 -0
  130. package/dist/components/overlay/rtc-ask-user.styles.d.ts.map +1 -0
  131. package/dist/components/overlay/rtc-command-panel.d.ts +44 -0
  132. package/dist/components/overlay/rtc-command-panel.d.ts.map +1 -0
  133. package/dist/components/overlay/rtc-command-panel.styles.d.ts +2 -0
  134. package/dist/components/overlay/rtc-command-panel.styles.d.ts.map +1 -0
  135. package/dist/components/overlay/rtc-export-dialog.d.ts +59 -0
  136. package/dist/components/overlay/rtc-export-dialog.d.ts.map +1 -0
  137. package/dist/components/overlay/rtc-export-dialog.styles.d.ts +11 -0
  138. package/dist/components/overlay/rtc-export-dialog.styles.d.ts.map +1 -0
  139. package/dist/components/overlay/rtc-mode-panel.d.ts +30 -0
  140. package/dist/components/overlay/rtc-mode-panel.d.ts.map +1 -0
  141. package/dist/components/overlay/rtc-mode-panel.styles.d.ts +2 -0
  142. package/dist/components/overlay/rtc-mode-panel.styles.d.ts.map +1 -0
  143. package/dist/components/overlay/rtc-overlay-manager.d.ts +30 -0
  144. package/dist/components/overlay/rtc-overlay-manager.d.ts.map +1 -0
  145. package/dist/components/overlay/rtc-overlay-manager.styles.d.ts +2 -0
  146. package/dist/components/overlay/rtc-overlay-manager.styles.d.ts.map +1 -0
  147. package/dist/components/overlay/rtc-restore-confirm.d.ts +37 -0
  148. package/dist/components/overlay/rtc-restore-confirm.d.ts.map +1 -0
  149. package/dist/components/overlay/rtc-restore-confirm.styles.d.ts +2 -0
  150. package/dist/components/overlay/rtc-restore-confirm.styles.d.ts.map +1 -0
  151. package/dist/components/overlay/rtc-scenario-panel.d.ts +33 -0
  152. package/dist/components/overlay/rtc-scenario-panel.d.ts.map +1 -0
  153. package/dist/components/overlay/rtc-scenario-panel.styles.d.ts +2 -0
  154. package/dist/components/overlay/rtc-scenario-panel.styles.d.ts.map +1 -0
  155. package/dist/components/overlay/rtc-session-panel.d.ts +39 -0
  156. package/dist/components/overlay/rtc-session-panel.d.ts.map +1 -0
  157. package/dist/components/overlay/rtc-session-panel.styles.d.ts +2 -0
  158. package/dist/components/overlay/rtc-session-panel.styles.d.ts.map +1 -0
  159. package/dist/components/overlay/rtc-toast.d.ts +51 -0
  160. package/dist/components/overlay/rtc-toast.d.ts.map +1 -0
  161. package/dist/components/overlay/rtc-todo-panel.d.ts +23 -0
  162. package/dist/components/overlay/rtc-todo-panel.d.ts.map +1 -0
  163. package/dist/components/overlay/rtc-todo-panel.styles.d.ts +2 -0
  164. package/dist/components/overlay/rtc-todo-panel.styles.d.ts.map +1 -0
  165. package/dist/components/overlay/rtc-tool-confirm.d.ts +30 -0
  166. package/dist/components/overlay/rtc-tool-confirm.d.ts.map +1 -0
  167. package/dist/components/overlay/rtc-tool-confirm.styles.d.ts +2 -0
  168. package/dist/components/overlay/rtc-tool-confirm.styles.d.ts.map +1 -0
  169. package/dist/components/rtc-agent/helpers/bus-handler.d.ts +110 -0
  170. package/dist/components/rtc-agent/helpers/bus-handler.d.ts.map +1 -0
  171. package/dist/components/rtc-agent/helpers/command-handler.d.ts +25 -0
  172. package/dist/components/rtc-agent/helpers/command-handler.d.ts.map +1 -0
  173. package/dist/components/rtc-agent/helpers/connection-setup.d.ts +89 -0
  174. package/dist/components/rtc-agent/helpers/connection-setup.d.ts.map +1 -0
  175. package/dist/components/rtc-agent/helpers/dialog-helpers.d.ts +63 -0
  176. package/dist/components/rtc-agent/helpers/dialog-helpers.d.ts.map +1 -0
  177. package/dist/components/rtc-agent/helpers/session-loader.d.ts +69 -0
  178. package/dist/components/rtc-agent/helpers/session-loader.d.ts.map +1 -0
  179. package/dist/components/rtc-agent/helpers/vfs-operations.d.ts +155 -0
  180. package/dist/components/rtc-agent/helpers/vfs-operations.d.ts.map +1 -0
  181. package/dist/components/rtc-agent/rtc-agent.d.ts +677 -0
  182. package/dist/components/rtc-agent/rtc-agent.d.ts.map +1 -0
  183. package/dist/components/rtc-agent/rtc-agent.styles.d.ts +16 -0
  184. package/dist/components/rtc-agent/rtc-agent.styles.d.ts.map +1 -0
  185. package/dist/components/session-header/rtc-session-header.d.ts +77 -0
  186. package/dist/components/session-header/rtc-session-header.d.ts.map +1 -0
  187. package/dist/components/session-header/rtc-session-header.styles.d.ts +2 -0
  188. package/dist/components/session-header/rtc-session-header.styles.d.ts.map +1 -0
  189. package/dist/components/session-tree/rtc-session-tab-bar.d.ts +43 -0
  190. package/dist/components/session-tree/rtc-session-tab-bar.d.ts.map +1 -0
  191. package/dist/components/session-tree/rtc-session-tab-bar.styles.d.ts +10 -0
  192. package/dist/components/session-tree/rtc-session-tab-bar.styles.d.ts.map +1 -0
  193. package/dist/components/session-tree/rtc-session-tab.d.ts +33 -0
  194. package/dist/components/session-tree/rtc-session-tab.d.ts.map +1 -0
  195. package/dist/components/session-tree/rtc-session-tab.styles.d.ts +11 -0
  196. package/dist/components/session-tree/rtc-session-tab.styles.d.ts.map +1 -0
  197. package/dist/components/session-tree/rtc-session-tree-item.d.ts +42 -0
  198. package/dist/components/session-tree/rtc-session-tree-item.d.ts.map +1 -0
  199. package/dist/components/session-tree/rtc-session-tree-item.styles.d.ts +11 -0
  200. package/dist/components/session-tree/rtc-session-tree-item.styles.d.ts.map +1 -0
  201. package/dist/components/session-tree/rtc-session-tree.d.ts +71 -0
  202. package/dist/components/session-tree/rtc-session-tree.d.ts.map +1 -0
  203. package/dist/components/session-tree/rtc-session-tree.styles.d.ts +10 -0
  204. package/dist/components/session-tree/rtc-session-tree.styles.d.ts.map +1 -0
  205. package/dist/components/settings/rtc-settings-panel.d.ts +27 -0
  206. package/dist/components/settings/rtc-settings-panel.d.ts.map +1 -0
  207. package/dist/components/settings/rtc-settings-panel.styles.d.ts +8 -0
  208. package/dist/components/settings/rtc-settings-panel.styles.d.ts.map +1 -0
  209. package/dist/components/settings-layout/rtc-settings-layout.d.ts +74 -0
  210. package/dist/components/settings-layout/rtc-settings-layout.d.ts.map +1 -0
  211. package/dist/components/settings-layout/rtc-settings-layout.styles.d.ts +8 -0
  212. package/dist/components/settings-layout/rtc-settings-layout.styles.d.ts.map +1 -0
  213. package/dist/components/settings-layout/rtc-settings-nav.d.ts +62 -0
  214. package/dist/components/settings-layout/rtc-settings-nav.d.ts.map +1 -0
  215. package/dist/components/settings-layout/rtc-settings-nav.styles.d.ts +7 -0
  216. package/dist/components/settings-layout/rtc-settings-nav.styles.d.ts.map +1 -0
  217. package/dist/components/status-bar/rtc-status-bar.d.ts +39 -0
  218. package/dist/components/status-bar/rtc-status-bar.d.ts.map +1 -0
  219. package/dist/components/status-bar/rtc-status-bar.styles.d.ts +11 -0
  220. package/dist/components/status-bar/rtc-status-bar.styles.d.ts.map +1 -0
  221. package/dist/components/title-bar/rtc-title-bar.d.ts +46 -0
  222. package/dist/components/title-bar/rtc-title-bar.d.ts.map +1 -0
  223. package/dist/components/title-bar/rtc-title-bar.styles.d.ts +2 -0
  224. package/dist/components/title-bar/rtc-title-bar.styles.d.ts.map +1 -0
  225. package/dist/components/token-usage/rtc-token-usage.d.ts +60 -0
  226. package/dist/components/token-usage/rtc-token-usage.d.ts.map +1 -0
  227. package/dist/config/auth.d.ts +58 -0
  228. package/dist/config/auth.d.ts.map +1 -0
  229. package/dist/contexts/activity.d.ts +42 -0
  230. package/dist/contexts/activity.d.ts.map +1 -0
  231. package/dist/contexts/auth.d.ts +29 -0
  232. package/dist/contexts/auth.d.ts.map +1 -0
  233. package/dist/contexts/editor.d.ts +43 -0
  234. package/dist/contexts/editor.d.ts.map +1 -0
  235. package/dist/contexts/file-explorer.d.ts +48 -0
  236. package/dist/contexts/file-explorer.d.ts.map +1 -0
  237. package/dist/contexts/function-debug.d.ts +52 -0
  238. package/dist/contexts/function-debug.d.ts.map +1 -0
  239. package/dist/contexts/functions.d.ts +43 -0
  240. package/dist/contexts/functions.d.ts.map +1 -0
  241. package/dist/contexts/logo.d.ts +21 -0
  242. package/dist/contexts/logo.d.ts.map +1 -0
  243. package/dist/contexts/message.d.ts +22 -0
  244. package/dist/contexts/message.d.ts.map +1 -0
  245. package/dist/contexts/mode.d.ts +18 -0
  246. package/dist/contexts/mode.d.ts.map +1 -0
  247. package/dist/contexts/notification.d.ts +21 -0
  248. package/dist/contexts/notification.d.ts.map +1 -0
  249. package/dist/contexts/session-tab.d.ts +10 -0
  250. package/dist/contexts/session-tab.d.ts.map +1 -0
  251. package/dist/contexts/session-tree.d.ts +10 -0
  252. package/dist/contexts/session-tree.d.ts.map +1 -0
  253. package/dist/contexts/session.d.ts +16 -0
  254. package/dist/contexts/session.d.ts.map +1 -0
  255. package/dist/contexts/settings.d.ts +40 -0
  256. package/dist/contexts/settings.d.ts.map +1 -0
  257. package/dist/contexts/skill.d.ts +27 -0
  258. package/dist/contexts/skill.d.ts.map +1 -0
  259. package/dist/contexts/tool-call.d.ts +16 -0
  260. package/dist/contexts/tool-call.d.ts.map +1 -0
  261. package/dist/contexts/turn-count.d.ts +23 -0
  262. package/dist/contexts/turn-count.d.ts.map +1 -0
  263. package/dist/contexts/window-state.d.ts +20 -0
  264. package/dist/contexts/window-state.d.ts.map +1 -0
  265. package/dist/controllers/activity.controller.d.ts +45 -0
  266. package/dist/controllers/activity.controller.d.ts.map +1 -0
  267. package/dist/controllers/auth.controller.d.ts +207 -0
  268. package/dist/controllers/auth.controller.d.ts.map +1 -0
  269. package/dist/controllers/editor-area.controller.d.ts +120 -0
  270. package/dist/controllers/editor-area.controller.d.ts.map +1 -0
  271. package/dist/controllers/editor.controller.d.ts +29 -0
  272. package/dist/controllers/editor.controller.d.ts.map +1 -0
  273. package/dist/controllers/event-binding.controller.d.ts +204 -0
  274. package/dist/controllers/event-binding.controller.d.ts.map +1 -0
  275. package/dist/controllers/file-explorer.controller.d.ts +42 -0
  276. package/dist/controllers/file-explorer.controller.d.ts.map +1 -0
  277. package/dist/controllers/fork.controller.d.ts +63 -0
  278. package/dist/controllers/fork.controller.d.ts.map +1 -0
  279. package/dist/controllers/function-debug.controller.d.ts +67 -0
  280. package/dist/controllers/function-debug.controller.d.ts.map +1 -0
  281. package/dist/controllers/functions.controller.d.ts +31 -0
  282. package/dist/controllers/functions.controller.d.ts.map +1 -0
  283. package/dist/controllers/message.controller.d.ts +192 -0
  284. package/dist/controllers/message.controller.d.ts.map +1 -0
  285. package/dist/controllers/mode.controller.d.ts +26 -0
  286. package/dist/controllers/mode.controller.d.ts.map +1 -0
  287. package/dist/controllers/notification.controller.d.ts +105 -0
  288. package/dist/controllers/notification.controller.d.ts.map +1 -0
  289. package/dist/controllers/persistence.controller.d.ts +145 -0
  290. package/dist/controllers/persistence.controller.d.ts.map +1 -0
  291. package/dist/controllers/session-tab.controller.d.ts +85 -0
  292. package/dist/controllers/session-tab.controller.d.ts.map +1 -0
  293. package/dist/controllers/session-tree.controller.d.ts +44 -0
  294. package/dist/controllers/session-tree.controller.d.ts.map +1 -0
  295. package/dist/controllers/session.controller.d.ts +58 -0
  296. package/dist/controllers/session.controller.d.ts.map +1 -0
  297. package/dist/controllers/settings.controller.d.ts +46 -0
  298. package/dist/controllers/settings.controller.d.ts.map +1 -0
  299. package/dist/controllers/skill.controller.d.ts +81 -0
  300. package/dist/controllers/skill.controller.d.ts.map +1 -0
  301. package/dist/controllers/status-bar.controller.d.ts +32 -0
  302. package/dist/controllers/status-bar.controller.d.ts.map +1 -0
  303. package/dist/controllers/toast.controller.d.ts +29 -0
  304. package/dist/controllers/toast.controller.d.ts.map +1 -0
  305. package/dist/controllers/tool-call.controller.d.ts +38 -0
  306. package/dist/controllers/tool-call.controller.d.ts.map +1 -0
  307. package/dist/controllers/window-interaction.controller.d.ts +130 -0
  308. package/dist/controllers/window-interaction.controller.d.ts.map +1 -0
  309. package/dist/controllers/window-state.controller.d.ts +79 -0
  310. package/dist/controllers/window-state.controller.d.ts.map +1 -0
  311. package/dist/core/builtin-system-group.d.ts +73 -0
  312. package/dist/core/builtin-system-group.d.ts.map +1 -0
  313. package/dist/core/event-bus.d.ts +133 -0
  314. package/dist/core/event-bus.d.ts.map +1 -0
  315. package/dist/core/function-registry.d.ts +196 -0
  316. package/dist/core/function-registry.d.ts.map +1 -0
  317. package/dist/core/i18n.d.ts +25 -0
  318. package/dist/core/i18n.d.ts.map +1 -0
  319. package/dist/core/locale-controller.d.ts +25 -0
  320. package/dist/core/locale-controller.d.ts.map +1 -0
  321. package/dist/core/markdown-generator.d.ts +46 -0
  322. package/dist/core/markdown-generator.d.ts.map +1 -0
  323. package/dist/core/ready.d.ts +33 -0
  324. package/dist/core/ready.d.ts.map +1 -0
  325. package/dist/core/scenario-loader.d.ts +60 -0
  326. package/dist/core/scenario-loader.d.ts.map +1 -0
  327. package/dist/core/theme.d.ts +29 -0
  328. package/dist/core/theme.d.ts.map +1 -0
  329. package/dist/debug-api-core.d.ts +9 -0
  330. package/dist/debug-api-core.d.ts.map +1 -0
  331. package/dist/debug-api-ext.d.ts +16 -0
  332. package/dist/debug-api-ext.d.ts.map +1 -0
  333. package/dist/debug-api-helpers.d.ts +28 -0
  334. package/dist/debug-api-helpers.d.ts.map +1 -0
  335. package/dist/debug-api-types.d.ts +206 -0
  336. package/dist/debug-api-types.d.ts.map +1 -0
  337. package/dist/debug-api.d.ts +10 -0
  338. package/dist/debug-api.d.ts.map +1 -0
  339. package/dist/elements.d.ts +26 -0
  340. package/dist/elements.d.ts.map +1 -0
  341. package/dist/{en-US-B3u0M1QC.js → en-US-DGPo7Pzk.js} +56 -8
  342. package/dist/factory.d.ts +68 -0
  343. package/dist/factory.d.ts.map +1 -0
  344. package/dist/{highlight-languages-Do4vG6hX.js → highlight-languages-BStkA3vP.js} +1 -1
  345. package/dist/icons/icons.d.ts +93 -0
  346. package/dist/icons/icons.d.ts.map +1 -0
  347. package/dist/icons/index.d.ts +8 -0
  348. package/dist/icons/index.d.ts.map +1 -0
  349. package/dist/icons/logo.d.ts +15 -0
  350. package/dist/icons/logo.d.ts.map +1 -0
  351. package/dist/{index-TrHSQq--.js → index-c20k11wZ.js} +28078 -23840
  352. package/dist/index.d.ts +116 -0
  353. package/dist/index.d.ts.map +1 -0
  354. package/dist/index.js +39 -36
  355. package/dist/index.umd.js +3277 -1094
  356. package/dist/locales/en-US.d.ts +4 -0
  357. package/dist/locales/en-US.d.ts.map +1 -0
  358. package/dist/main.d.ts +17 -0
  359. package/dist/main.d.ts.map +1 -0
  360. package/dist/master-lock.d.ts +72 -0
  361. package/dist/master-lock.d.ts.map +1 -0
  362. package/dist/registry.d.ts +2 -0
  363. package/dist/registry.d.ts.map +1 -0
  364. package/dist/repositories/index.d.ts +8 -0
  365. package/dist/repositories/index.d.ts.map +1 -0
  366. package/dist/repositories/message.repository.d.ts +182 -0
  367. package/dist/repositories/message.repository.d.ts.map +1 -0
  368. package/dist/stats.html +1 -1
  369. package/dist/storage.d.ts +11 -0
  370. package/dist/storage.d.ts.map +1 -0
  371. package/dist/styles/base.d.ts +8 -0
  372. package/dist/styles/base.d.ts.map +1 -0
  373. package/dist/styles/index.d.ts +5 -0
  374. package/dist/styles/index.d.ts.map +1 -0
  375. package/dist/styles/themes/dark.d.ts +2 -0
  376. package/dist/styles/themes/dark.d.ts.map +1 -0
  377. package/dist/styles/themes/light.d.ts +2 -0
  378. package/dist/styles/themes/light.d.ts.map +1 -0
  379. package/dist/styles/tokens.d.ts +22 -0
  380. package/dist/styles/tokens.d.ts.map +1 -0
  381. package/dist/types/activity-bar-config.d.ts +38 -0
  382. package/dist/types/activity-bar-config.d.ts.map +1 -0
  383. package/dist/types/agent-config.d.ts +61 -0
  384. package/dist/types/agent-config.d.ts.map +1 -0
  385. package/dist/types/events.d.ts +112 -0
  386. package/dist/types/events.d.ts.map +1 -0
  387. package/dist/types/factory.d.ts +610 -0
  388. package/dist/types/factory.d.ts.map +1 -0
  389. package/dist/types/functions-debug.d.ts +48 -0
  390. package/dist/types/functions-debug.d.ts.map +1 -0
  391. package/dist/types/index.d.ts +386 -0
  392. package/dist/types/index.d.ts.map +1 -0
  393. package/dist/types/skill.d.ts +207 -0
  394. package/dist/types/skill.d.ts.map +1 -0
  395. package/dist/types/window-config.d.ts +122 -0
  396. package/dist/types/window-config.d.ts.map +1 -0
  397. package/dist/utils/clipboard.d.ts +14 -0
  398. package/dist/utils/clipboard.d.ts.map +1 -0
  399. package/dist/utils/command-parser.d.ts +33 -0
  400. package/dist/utils/command-parser.d.ts.map +1 -0
  401. package/dist/utils/content-data.d.ts +113 -0
  402. package/dist/utils/content-data.d.ts.map +1 -0
  403. package/dist/utils/custom-scrollbar.d.ts +41 -0
  404. package/dist/utils/custom-scrollbar.d.ts.map +1 -0
  405. package/dist/utils/device.d.ts +22 -0
  406. package/dist/utils/device.d.ts.map +1 -0
  407. package/dist/utils/floating-panel-controller.d.ts +52 -0
  408. package/dist/utils/floating-panel-controller.d.ts.map +1 -0
  409. package/dist/utils/format.d.ts +27 -0
  410. package/dist/utils/format.d.ts.map +1 -0
  411. package/dist/utils/highlight-languages.d.ts +9 -0
  412. package/dist/utils/highlight-languages.d.ts.map +1 -0
  413. package/dist/utils/message-skeleton.d.ts +39 -0
  414. package/dist/utils/message-skeleton.d.ts.map +1 -0
  415. package/dist/utils/message-virtual-scroll.d.ts +595 -0
  416. package/dist/utils/message-virtual-scroll.d.ts.map +1 -0
  417. package/dist/utils/relative-time.d.ts +14 -0
  418. package/dist/utils/relative-time.d.ts.map +1 -0
  419. package/dist/utils/scroll-saver.d.ts +34 -0
  420. package/dist/utils/scroll-saver.d.ts.map +1 -0
  421. package/dist/utils/session-exporter.d.ts +65 -0
  422. package/dist/utils/session-exporter.d.ts.map +1 -0
  423. package/dist/utils/skeleton-tracker.d.ts +144 -0
  424. package/dist/utils/skeleton-tracker.d.ts.map +1 -0
  425. package/dist/utils/visibility-manager.d.ts +103 -0
  426. package/dist/utils/visibility-manager.d.ts.map +1 -0
  427. package/dist/utils.d.ts +5 -0
  428. package/dist/utils.d.ts.map +1 -0
  429. package/dist/validation/index.d.ts +53 -0
  430. package/dist/validation/index.d.ts.map +1 -0
  431. package/dist/validation/openapi-to-zod.d.ts +15 -0
  432. package/dist/validation/openapi-to-zod.d.ts.map +1 -0
  433. package/dist/validation/zod-to-openapi.d.ts +66 -0
  434. package/dist/validation/zod-to-openapi.d.ts.map +1 -0
  435. package/dist/worker-bridge.d.ts +152 -0
  436. package/dist/worker-bridge.d.ts.map +1 -0
  437. package/package.json +6 -6
@@ -0,0 +1,677 @@
1
+ /**
2
+ * RTC Agent — Root Component
3
+ *
4
+ * The only public custom element exposed by the library. This component is a
5
+ * pure "assembler": it creates Reactive Controllers, wires each controller's
6
+ * value to a @lit/context provider, and renders the top-level shell UI.
7
+ *
8
+ * All state logic (session, message, tool call, auth, mode, window state,
9
+ * toast, fork) is delegated to controllers in `src/controllers/`. The root
10
+ * component handles cross-controller coordination, event routing, and
11
+ * lifecycle management. Complex subscription logic (e.g., UIUpdateBus handling)
12
+ * is extracted to `helpers/` for maintainability.
13
+ *
14
+ * @element rtc-agent
15
+ *
16
+ * @cssprop [--rtc-window-default-width=420px] - Default window width
17
+ * @cssprop [--rtc-window-default-height=640px] - Default window height
18
+ * @cssprop [--rtc-bubble-size=40px] - Minimized bubble diameter
19
+ * @cssprop [--rtc-bubble-bg] - Bubble background (defaults to --rtc-color-bg-secondary)
20
+ *
21
+ * @attr {string} [theme=system] - Theme: 'light' | 'dark' | 'system'
22
+ * @attr {string} [app-label=RTC Agent] - Application label (title bar + bubble tooltip)
23
+ * @attr {string} [bubble-icon] - SVG/HTML string rendered inside the minimized bubble
24
+ * @attr {string} [scenarios-url] - URL to load scenario documents from (auto-loads manifest.json + .md files)
25
+ * @attr {string} [server-url] - Backend server URL (overrides VITE_SERVER_URL env and the default http://localhost:28080)
26
+ *
27
+ * @attr {string} [data-mode='normal'|'maximized'|'minimized'] - Reflected window state
28
+ *
29
+ * ## Event Naming Convention
30
+ *
31
+ * All public events dispatched by <rtc-agent> follow the pattern:
32
+ * `rtc-<domain>-<action>-<past-tense>`
33
+ *
34
+ * Examples: rtc-session-created, rtc-message-sent, rtc-auth-login-requested
35
+ *
36
+ * ### Event prefix taxonomy:
37
+ * - `rtc-*` : Public API events (external developers listen to these)
38
+ * - No prefix : Internal component events (may change without notice)
39
+ * - `demo-*` : Demo/test-only events (not for production use)
40
+ *
41
+ * ### Architecture — Reactive Controller Pattern:
42
+ * - Each controller encapsulates one context's state + actions
43
+ * - Root creates controllers and wires them to context providers
44
+ * - Controllers call `host.requestUpdate()` after state mutations
45
+ * - Root syncs controller.value to provider via `updated()` lifecycle + `updateComplete` Promise
46
+ * - Using `updateComplete` ensures Context consumers update after host finishes, avoiding change-in-update warnings
47
+ * - Cross-controller communication (e.g., session switch -> clear messages)
48
+ * is handled by the root via callbacks
49
+ *
50
+ * Window-state events (rtc-window-{minimize,maximize,restore}) flow from
51
+ * <rtc-title-bar> → <rtc-agent> listener → controller → reflected `data-mode`
52
+ * attribute → CSS :host([data-mode=...]) visual state.
53
+ */
54
+ import { LitElement } from 'lit';
55
+ import { WindowStateController } from '../../controllers/window-state.controller.js';
56
+ import { AuthController } from '../../controllers/auth.controller.js';
57
+ import { SessionController } from '../../controllers/session.controller.js';
58
+ import { MessageController } from '../../controllers/message.controller.js';
59
+ import { ModeController } from '../../controllers/mode.controller.js';
60
+ import { ToolCallController } from '../../controllers/tool-call.controller.js';
61
+ import { PersistenceController } from '../../controllers/persistence.controller.js';
62
+ import { SkillController } from '../../controllers/skill.controller.js';
63
+ import { ToastController } from '../../controllers/toast.controller.js';
64
+ import { ForkController } from '../../controllers/fork.controller.js';
65
+ import { ActivityController } from '../../controllers/activity.controller.js';
66
+ import { FileExplorerController } from '../../controllers/file-explorer.controller.js';
67
+ import { EditorAreaController } from '../../controllers/editor-area.controller.js';
68
+ import { StatusBarController } from '../../controllers/status-bar.controller.js';
69
+ import { SessionTreeController } from '../../controllers/session-tree.controller.js';
70
+ import { SessionTabController } from '../../controllers/session-tab.controller.js';
71
+ import { SettingsController } from '../../controllers/settings.controller.js';
72
+ import { NotificationController } from '../../controllers/notification.controller.js';
73
+ import { FunctionsController } from '../../controllers/functions.controller.js';
74
+ import { FunctionDebugController } from '../../controllers/function-debug.controller.js';
75
+ import type { FunctionRegistry } from '../../core/function-registry.js';
76
+ import type { AgentConfig } from '../../types/agent-config.js';
77
+ import type { WindowConfig } from '../../types/window-config.js';
78
+ import type { ActivityBarConfig } from '../../types/activity-bar-config.js';
79
+ import type { StaticTokenAuth, DynamicTokenAuth, AuthProvider } from '../../types/factory.js';
80
+ import '../../types/events.js';
81
+ import '../overlay/rtc-tool-confirm.js';
82
+ import '../overlay/rtc-ask-user.js';
83
+ import '../overlay/rtc-restore-confirm.js';
84
+ import '../overlay/rtc-export-dialog.js';
85
+ import '../title-bar/rtc-title-bar.js';
86
+ import '../login/rtc-login-page.js';
87
+ import '../login/rtc-login-dialog.js';
88
+ import '../overlay/rtc-toast.js';
89
+ import '../activity-bar/rtc-activity-bar.js';
90
+ import '../file-explorer/rtc-file-explorer.js';
91
+ import '../editor-area/rtc-editor-area.js';
92
+ import '../status-bar/rtc-status-bar.js';
93
+ import '../chat-layout/rtc-chat-layout.js';
94
+ import '../settings-layout/rtc-settings-layout.js';
95
+ import '../function-tree/rtc-function-tree.js';
96
+ import '../functions-layout/rtc-functions-layout.js';
97
+ import '../drawer/rtc-drawer.js';
98
+ import '../logo/rtc-logo.js';
99
+ export declare class RtcAgent extends LitElement {
100
+ static styles: import("lit").CSSResult[];
101
+ theme: 'light' | 'dark' | 'system';
102
+ /**
103
+ * Language/locale for the component UI.
104
+ *
105
+ * Priority: HTML attribute > localStorage > browser language > default (zh-CN).
106
+ *
107
+ * Host applications can set this attribute declaratively:
108
+ * ```html
109
+ * <rtc-agent lang="en-US"></rtc-agent>
110
+ * ```
111
+ *
112
+ * Or update dynamically:
113
+ * ```js
114
+ * rtcAgentEl.lang = 'en-US';
115
+ * ```
116
+ */
117
+ set lang(value: string);
118
+ get lang(): string;
119
+ private _lang;
120
+ appLabel: string;
121
+ bubbleIcon: string;
122
+ /**
123
+ * Custom logo for host application branding.
124
+ *
125
+ * When set, replaces the default RTC Agent logo everywhere it appears:
126
+ * login page, empty state, settings "about" section.
127
+ *
128
+ * Provide separate SVG/HTML strings for light and dark themes:
129
+ * ```ts
130
+ * agent.logo = {
131
+ * light: '<svg>...</svg>', // rendered in light theme
132
+ * dark: '<svg>...</svg>', // rendered in dark theme
133
+ * };
134
+ * ```
135
+ *
136
+ * Either field can be omitted; missing variants fall back to the default logo.
137
+ *
138
+ * **Security note**: Same as `bubbleIcon` — callers should sanitize input
139
+ * before assignment. The component does NOT sanitize this value.
140
+ */
141
+ set logo(value: {
142
+ light?: string;
143
+ dark?: string;
144
+ } | null);
145
+ get logo(): {
146
+ light?: string;
147
+ dark?: string;
148
+ } | null;
149
+ private _logo;
150
+ /**
151
+ * FunctionRegistry instance (host-app injection, advanced usage).
152
+ *
153
+ * On set, automatically:
154
+ * 1. Injects the registry into SkillController (for UI use).
155
+ * 2. Creates an rtcAgentAPI Proxy and injects it into ToolRegistry (for script tools).
156
+ *
157
+ * For simpler scenarios, prefer the `agentConfig` property (declarative API).
158
+ */
159
+ set registry(value: FunctionRegistry | null);
160
+ get registry(): FunctionRegistry | null;
161
+ /**
162
+ * Generate docs after the registry property is set.
163
+ *
164
+ * Handles a timing issue: connectedCallback() may complete connect() before
165
+ * the registry is injected, causing generateAllDocsContent() to return an empty
166
+ * array. When the registry is set later, docs need to be regenerated.
167
+ */
168
+ private _regenerateDocsAfterRegistrySet;
169
+ /**
170
+ * Declarative agent configuration (recommended host integration approach).
171
+ *
172
+ * After setting, the component automatically:
173
+ * 1. Builds a FunctionRegistry from config (with persona / groups / functions).
174
+ * 2. Injects the registry into SkillController.
175
+ * 3. Bridges the rtcAgent API to ToolRegistry (for script tool use).
176
+ *
177
+ * Host applications don't need to understand internal concepts like
178
+ * FunctionRegistry / toolRegistry.
179
+ *
180
+ * @example
181
+ * ```ts
182
+ * const agent = document.querySelector<RtcAgent>('#agent')!;
183
+ * agent.agentConfig = {
184
+ * name: 'MermaidEditor',
185
+ * persona: 'You are a helpful Mermaid diagram assistant...',
186
+ * groups: [{
187
+ * name: 'editor',
188
+ * description: 'Editor operations',
189
+ * functions: [
190
+ * { name: 'getCode', description: 'Get current code', handler: () => editorAPI.getCode() },
191
+ * ],
192
+ * }],
193
+ * };
194
+ * ```
195
+ */
196
+ set agentConfig(value: AgentConfig | null);
197
+ get agentConfig(): AgentConfig | null;
198
+ private _agentConfig;
199
+ /**
200
+ * Backend server URL (overrides VITE_SERVER_URL env and the built-in default).
201
+ *
202
+ * Propagated to AUTH_CONFIG so OAuth / WebSocket endpoints pick it up.
203
+ *
204
+ * @example
205
+ * <rtc-agent server-url="http://localhost:28080"></rtc-agent>
206
+ */
207
+ set serverURL(value: string);
208
+ get serverURL(): string;
209
+ private _serverURL;
210
+ /**
211
+ * OAuth callback URL (overrides the default window.location.origin + '/auth/callback.html').
212
+ *
213
+ * Propagated to AUTH_CONFIG so OAuth flow uses the correct redirect URI.
214
+ *
215
+ * @example
216
+ * <rtc-agent redirect-uri="https://example.com/auth/callback.html"></rtc-agent>
217
+ */
218
+ set redirectURI(value: string);
219
+ get redirectURI(): string;
220
+ private _redirectURI;
221
+ /**
222
+ * Scenario documents URL (optional).
223
+ *
224
+ * When set, automatically loads scenario documents from the specified URL into VirtualFS.
225
+ * The URL should point to a directory containing manifest.json.
226
+ *
227
+ * @example
228
+ * <rtc-agent scenarios-url="./scenarios/"></rtc-agent>
229
+ */
230
+ set scenariosURL(value: string);
231
+ get scenariosURL(): string;
232
+ private _scenariosURL;
233
+ /**
234
+ * Custom database name prefix (optional).
235
+ *
236
+ * When set, the database name becomes `${databaseName}-${userId}` instead of `rtc-agent-${userId}`.
237
+ *
238
+ * @example
239
+ * <rtc-agent database-name="my-app"></rtc-agent>
240
+ * // Creates database: my-app-{userId}
241
+ */
242
+ set databaseName(value: string);
243
+ get databaseName(): string;
244
+ private _databaseName;
245
+ /**
246
+ * Custom SharedWorker URL (optional).
247
+ *
248
+ * When the component is loaded from NPM, the worker file may not be accessible
249
+ * from the default location. Use this to specify a custom URL where the worker
250
+ * file is served (e.g., '/rtc-agent/shared-worker.js').
251
+ *
252
+ * Must be set before the element is mounted to the DOM.
253
+ *
254
+ * @example
255
+ * <rtc-agent worker-url="/rtc-agent/shared-worker.js"></rtc-agent>
256
+ *
257
+ * @example
258
+ * ```ts
259
+ * agent.workerUrl = '/rtc-agent/shared-worker.js';
260
+ * ```
261
+ */
262
+ set workerUrl(value: string);
263
+ get workerUrl(): string;
264
+ private _workerUrl;
265
+ /**
266
+ * Window configuration (optional).
267
+ *
268
+ * Controls the window's default state, dimensions, position, interaction limits, etc.
269
+ *
270
+ * @example
271
+ * ```ts
272
+ * agent.windowConfig = {
273
+ * defaultMode: 'maximized',
274
+ * embedded: true, // Disable all window interactions
275
+ * showMinimize: false,
276
+ * showMaximize: false,
277
+ * };
278
+ * ```
279
+ */
280
+ set windowConfig(value: WindowConfig | null);
281
+ get windowConfig(): WindowConfig | null;
282
+ private _windowConfig;
283
+ /**
284
+ * Activity Bar configuration (optional).
285
+ *
286
+ * Controls visibility of activity buttons in the Activity Bar.
287
+ * Note: the chat button is always visible and cannot be hidden.
288
+ *
289
+ * @example
290
+ * ```ts
291
+ * agent.activityBarConfig = {
292
+ * disabledActivities: ['files', 'settings'], // Only show chat
293
+ * defaultActivity: 'chat',
294
+ * };
295
+ * ```
296
+ */
297
+ set activityBarConfig(value: ActivityBarConfig | null);
298
+ get activityBarConfig(): ActivityBarConfig | null;
299
+ private _activityBarConfig;
300
+ private _resolvedActivityBarConfig;
301
+ /**
302
+ * @internal Pending auth configuration from factory function.
303
+ *
304
+ * Set by `createRtcAgent` factory when StaticTokenAuth is provided.
305
+ * Applied in `connectedCallback` after controllers are initialized.
306
+ * Cleared after application to prevent re-application on reconnect.
307
+ */
308
+ _pendingAuthConfig?: StaticTokenAuth;
309
+ /**
310
+ * @internal Pending dynamic auth configuration from factory function.
311
+ *
312
+ * Set by `createRtcAgent` factory when DynamicTokenAuth is provided.
313
+ * Applied in `connectedCallback` after controllers are initialized.
314
+ */
315
+ _pendingDynamicAuth?: DynamicTokenAuth;
316
+ /**
317
+ * @internal Pending auth provider configuration from factory function.
318
+ *
319
+ * Set by `createRtcAgent` factory when AuthProvider is provided.
320
+ * Applied in `connectedCallback` after controllers are initialized.
321
+ */
322
+ _pendingAuthProvider?: AuthProvider;
323
+ /**
324
+ * Load scenarios into VirtualFS.
325
+ *
326
+ * Writes to the Worker's VirtualFS via WorkerBridge.
327
+ */
328
+ private _loadScenarios;
329
+ /**
330
+ * Build a FunctionRegistry from AgentConfig (internal use).
331
+ *
332
+ * Flow:
333
+ * 1. Create FunctionRegistry using config.name / description / persona.
334
+ * 2. Create groups from config.groups and register functions in each.
335
+ * 3. If config.functions (flat) exists, auto-place them in a 'default' group.
336
+ */
337
+ private _buildRegistryFromConfig;
338
+ /** Resolved window configuration. */
339
+ private _resolvedWindowConfig;
340
+ private _windowState;
341
+ private _auth;
342
+ private _persistence;
343
+ private _session;
344
+ private _message;
345
+ private _mode;
346
+ private _toolCall;
347
+ private _interaction;
348
+ private _skill;
349
+ private _toast;
350
+ private _fork;
351
+ private _activity;
352
+ private _fileExplorer;
353
+ private _editorArea;
354
+ private _statusBar;
355
+ private _sessionTree;
356
+ private _sessionTab;
357
+ private _settings;
358
+ private _notification;
359
+ private _functions;
360
+ private _functionDebug;
361
+ /** Whether the file tree has been loaded (loaded once on first entry to files activity). */
362
+ private _fileTreeLoaded;
363
+ /** Mode announcement text for screen readers (updated on mode transition). */
364
+ private _modeAnnouncement;
365
+ /** Show login dialog */
366
+ private _showLoginDialog;
367
+ /** Selected OAuth2 provider for login dialog */
368
+ private _selectedProvider;
369
+ /** Connection state. */
370
+ private _connectionState;
371
+ /** Connection state unsubscribe function. */
372
+ private _unsubConnection?;
373
+ /** Whether connection failed (used to show retry button). */
374
+ private _connectionFailed;
375
+ /** Error message when connection failed. */
376
+ private _connectionError;
377
+ /**
378
+ * In-flight connection promise — prevents concurrent _connectWithRetry calls
379
+ * from racing (e.g. connectedCallback + onLogin firing in quick succession).
380
+ *
381
+ * Without this guard, concurrent calls would create duplicate RTC processors,
382
+ * duplicate connection listeners, and race on session list loading.
383
+ */
384
+ private _connecting?;
385
+ /**
386
+ * Connection generation counter for race-condition prevention.
387
+ *
388
+ * When logout (or disconnect) clears `_connecting` while the underlying Promise
389
+ * is still in-flight, a subsequent login can set a new `_connecting`. When the
390
+ * OLD Promise finally resolves, its `finally` block would wrongly clear the NEW
391
+ * `_connecting`, leaving the new connection attempt invisible to the concurrency
392
+ * guard — leading to duplicate connection attempts and inconsistent state.
393
+ *
394
+ * Fix: each connection attempt captures the current generation; in `finally`,
395
+ * we only clear `_connecting` if the generation still matches. Any code path
396
+ * that invalidates an in-flight connection (logout, disconnect) bumps the
397
+ * generation instead of clearing `_connecting`, so stale Promises self-inhibit.
398
+ */
399
+ private _connectGeneration;
400
+ /** Tracks the last mode we applied DOM side-effects for, to avoid redundant work. */
401
+ private _appliedMode;
402
+ /**
403
+ * Guard flag to prevent infinite loop when auto-creating unsaved tab
404
+ *
405
+ * Set to true before creating tab, false after. Prevents updated() from
406
+ * recursively triggering itself when the newly created tab triggers another update.
407
+ */
408
+ private _creatingUnsavedTab;
409
+ /** Tracks whether we've done the initial session load (for auto-select logic). */
410
+ private _initialSessionLoadDone;
411
+ /** Tracks whether locale has been initialized (only once). */
412
+ private _localeInitialized;
413
+ /** Auto-save debounce timers per file */
414
+ private _autoSaveTimers;
415
+ /** Event binding controller (manages all DOM event listeners). */
416
+ private _eventBindings;
417
+ /** UIUpdateBus unsubscribe reference (set in connectedCallback, cleared in disconnectedCallback). */
418
+ private _busUnsubMessage?;
419
+ /** UIUpdateBus bulk update unsubscribe reference (set in connectedCallback, cleared in disconnectedCallback). */
420
+ private _busUnsubBulkUpdate?;
421
+ /** UIUpdateBus gap fill state unsubscribe reference (set in connectedCallback, cleared in disconnectedCallback). */
422
+ private _busUnsubGapFill?;
423
+ /** Debounced session loader to prevent multiple concurrent loadSessions calls (Fix 40). */
424
+ private _sessionLoader?;
425
+ /**
426
+ * @internal Async beforeMessageSend hook, set by the `createRtcAgent` factory
427
+ * when the `beforeMessageSend` callback is provided.
428
+ *
429
+ * Called before each message send. Returning `false` cancels the send.
430
+ * The hook may also mutate the message detail in place.
431
+ *
432
+ * Cleared in disconnectedCallback to prevent leaks.
433
+ */
434
+ _beforeMessageSendHook?: (detail: {
435
+ message: {
436
+ content: string;
437
+ metadata?: Record<string, unknown>;
438
+ };
439
+ }) => boolean | Promise<boolean>;
440
+ /** Whether gap fill syncing overlay is shown. */
441
+ private _isSyncing;
442
+ /** RTC processor (instantiated after persistence connect). */
443
+ private _rtcProcessor?;
444
+ get windowStateController(): WindowStateController;
445
+ get authController(): AuthController;
446
+ get persistenceController(): PersistenceController;
447
+ get sessionController(): SessionController;
448
+ get messageController(): MessageController;
449
+ get modeController(): ModeController;
450
+ get toolCallController(): ToolCallController;
451
+ get skillController(): SkillController;
452
+ get toastController(): ToastController;
453
+ get forkController(): ForkController;
454
+ get activityController(): ActivityController;
455
+ get fileExplorerController(): FileExplorerController;
456
+ get editorAreaController(): EditorAreaController;
457
+ get statusBarController(): StatusBarController;
458
+ get sessionTreeController(): SessionTreeController;
459
+ get sessionTabController(): SessionTabController;
460
+ get settingsController(): SettingsController;
461
+ get notificationController(): NotificationController;
462
+ get functionsController(): FunctionsController;
463
+ get functionDebugController(): FunctionDebugController;
464
+ /**
465
+ * Manually reconnect when connection fails.
466
+ *
467
+ * Call this when SharedWorker initialization fails or WebSocket connection
468
+ * cannot be established.
469
+ */
470
+ reconnect(): Promise<void>;
471
+ /**
472
+ * Whether connection has failed.
473
+ *
474
+ * Used by UI components to show retry button or error message.
475
+ */
476
+ get connectionFailed(): boolean;
477
+ /**
478
+ * Error message when connection failed.
479
+ */
480
+ get connectionError(): string;
481
+ private _sessionProvider;
482
+ private _messageProvider;
483
+ private _toolCallProvider;
484
+ private _authProvider;
485
+ private _modeProvider;
486
+ private _windowStateProvider;
487
+ private _turnCountProvider;
488
+ private _skillProvider;
489
+ private _activityProvider;
490
+ private _fileExplorerProvider;
491
+ private _sessionTreeProvider;
492
+ private _sessionTabProvider;
493
+ private _settingsProvider;
494
+ private _notificationProvider;
495
+ private _functionsProvider;
496
+ private _functionDebugProvider;
497
+ private _logoProvider;
498
+ private _localeProvider;
499
+ connectedCallback(): void;
500
+ /**
501
+ * Connect to the persistence layer with error handling and retry.
502
+ *
503
+ * If the connection fails, sets _connectionFailed state so the user
504
+ * can see the error in the UI and manually retry.
505
+ *
506
+ * Delegates to connection-setup helper for the heavy orchestration.
507
+ *
508
+ * Concurrency guard: if a connection is already in-flight, returns the
509
+ * existing promise instead of starting a new one. This prevents duplicate
510
+ * initialization when connectedCallback and onLogin fire in quick succession.
511
+ */
512
+ private _connectWithRetry;
513
+ private _doConnectWithRetry;
514
+ /** Show tool confirmation dialog (delegated to dialog-helpers). */
515
+ private _showToolConfirm;
516
+ /**
517
+ * Show AskUser multi-select dialog (delegated to dialog-helpers).
518
+ *
519
+ * Returns the user's answer dict ({answers, annotations?, metadata?}) or null if dismissed.
520
+ */
521
+ private _showAskUser;
522
+ /**
523
+ * Lifecycle: element disconnected from DOM.
524
+ *
525
+ * Memory management strategy:
526
+ * Performs comprehensive cleanup of all resources registered in connectedCallback():
527
+ * 1. Dispatch 'rtc-before-destroy' event (for external listeners)
528
+ * 2. Clear async hooks (_beforeMessageSendHook) to release captured closures
529
+ * 3. Remove all DOM event listeners via EventBindingController.unbindEvents()
530
+ * 4. Unsubscribe all UIUpdateBus listeners (message, bulk update, gap fill)
531
+ * 5. Release RTC processor and connection state references
532
+ * 6. Clear auth onLogin callback (prevents closure leak to _connectWithRetry)
533
+ * 7. Invalidate in-flight connection attempts via generation counter
534
+ * 8. Clear all auto-save timers
535
+ *
536
+ * Note: disconnectedCallback may fire for temporary removal (e.g. DOM reordering).
537
+ * The factory's destroy() method provides permanent cleanup.
538
+ */
539
+ disconnectedCallback(): void;
540
+ updated(): void;
541
+ firstUpdated(): void;
542
+ /**
543
+ * Run the beforeMessageSend interception pipeline.
544
+ *
545
+ * Two layers of interception:
546
+ * 1. **Factory hook** (`_beforeMessageSendHook`): async-aware, set by the
547
+ * `createRtcAgent` factory when `on.beforeMessageSend` is provided.
548
+ * Supports async callbacks (e.g. server-side validation).
549
+ * 2. **DOM event** (`rtc-before-message-send`): synchronous cancelable event,
550
+ * allows external listeners (not registered via factory) to cancel the send
551
+ * via `preventDefault()`.
552
+ *
553
+ * If either layer returns `false` / calls `preventDefault()`, the message is
554
+ * not sent. The callback may mutate `detail.message.content` / `detail.message.metadata`
555
+ * in place to modify the outgoing message.
556
+ *
557
+ * @returns `true` to proceed with send, `false` to cancel.
558
+ */
559
+ private _beforeMessageSend;
560
+ /**
561
+ * Handle user clicking the retry button.
562
+ *
563
+ * When SharedWorker initialization fails or WebSocket connection cannot be established,
564
+ * the user can click the retry button in the title bar to trigger this method.
565
+ */
566
+ private _handleConnectionRetry;
567
+ private _handleModeTransition;
568
+ private _handleBubbleClick;
569
+ private _handleBubbleKeydown;
570
+ /**
571
+ * Find the nearest scrollable ancestor of an element within the component.
572
+ *
573
+ * Traverses up the DOM tree (crossing shadow DOM boundaries via composedPath)
574
+ * to find the first element with overflow-y: auto|scroll that has scrollable
575
+ * content (scrollHeight > clientHeight).
576
+ */
577
+ private _findScrollableParent;
578
+ private _handleLoginRequested;
579
+ private _handleLoginComplete;
580
+ private _handleLoginDialogClose;
581
+ /**
582
+ * Read current session's pending_turn_count / running_turn_count from persistence,
583
+ * write to TurnCountContext for <rtc-input-area> to render send/stop buttons.
584
+ *
585
+ * Pushes zero values when there's no currentSessionId or persistence isn't ready.
586
+ */
587
+ private _refreshTurnCounts;
588
+ /**
589
+ * Load sessions list from persistence and sync into SessionController (delegated to session-loader).
590
+ * On initial load (after refresh), auto-selects the most recently updated session if none selected.
591
+ */
592
+ private _loadSessions;
593
+ /**
594
+ * Handle slash commands (delegated to command-handler helper).
595
+ *
596
+ * Currently supported commands:
597
+ * - /compact [custom_instruction]: compress current session context
598
+ * - /export: export current session to HTML file
599
+ */
600
+ private _handleCommand;
601
+ /** VFS dependency adapter (created lazily, reused across calls). */
602
+ private get _vfsDeps();
603
+ /**
604
+ * Load file tree from virtualFS (delegated to vfs-operations helper).
605
+ */
606
+ private _loadFileTree;
607
+ /**
608
+ * Lazy-load children of a directory (delegated to vfs-operations helper).
609
+ */
610
+ private _loadFolderChildren;
611
+ /**
612
+ * Open a file: read content from VFS and open in editor (delegated to vfs-operations).
613
+ */
614
+ private _handleFileOpen;
615
+ /**
616
+ * Restore Editor Area content for open files after page refresh (delegated to vfs-operations).
617
+ */
618
+ private _restoreEditorAreaContent;
619
+ /**
620
+ * Save file: write editor content to VFS (delegated to vfs-operations).
621
+ */
622
+ private _handleEditorSave;
623
+ /**
624
+ * Schedule auto-save (debounced).
625
+ */
626
+ private _scheduleAutoSave;
627
+ /**
628
+ * Handle file change events from other tabs (delegated to vfs-operations).
629
+ */
630
+ private _handleFileChange;
631
+ /**
632
+ * Load DOMPurify with retry logic for stale chunk errors during development.
633
+ */
634
+ private _loadDOMPurify;
635
+ /**
636
+ * Sanitize and render bubble icon content.
637
+ *
638
+ * Uses DOMPurify (already loaded by rtc-message for Markdown) to strip
639
+ * any script/event-handler attributes, preventing XSS even if the value
640
+ * accidentally contains unsanitized user input.
641
+ */
642
+ private _sanitizeBubbleIcon;
643
+ private _renderBubbleContent;
644
+ /** Cached sanitized bubble icon HTML. */
645
+ private _sanitizedBubbleIcon;
646
+ /** Recompute sanitized icon when bubbleIcon changes. */
647
+ willUpdate(changed: Map<string, unknown>): void;
648
+ render(): import("lit").TemplateResult<1>;
649
+ /**
650
+ * Render the main layout (after login).
651
+ *
652
+ * Chat mode: Activity Bar + Chat Layout (containing drawer + Tab + chat).
653
+ * Files mode: Activity Bar + [Drawer(file tree)] + Editor Area + Status Bar.
654
+ * Settings mode: Activity Bar + Settings Layout (containing drawer + settings content).
655
+ * Functions mode: Activity Bar + Functions Layout (containing drawer + function tree + debugger).
656
+ *
657
+ * All side panels use <rtc-drawer> overlay drawers uniformly, without squeezing the main content area.
658
+ */
659
+ private _renderMainLayout;
660
+ }
661
+ declare global {
662
+ interface HTMLElementTagNameMap {
663
+ 'rtc-agent': RtcAgent;
664
+ }
665
+ /**
666
+ * Debug API available in dev/test builds.
667
+ *
668
+ * Provides state inspection, data manipulation, auth bypass, event simulation,
669
+ * VirtualFS access, and UI control for Playwright E2E tests.
670
+ *
671
+ * Only present when import.meta.env.DEV or import.meta.env.MODE === 'test'.
672
+ */
673
+ interface Window {
674
+ rtcAgentDebug?: import('../../debug-api.js').RtcAgentDebugAPI;
675
+ }
676
+ }
677
+ //# sourceMappingURL=rtc-agent.d.ts.map