@cloudflare/realtimekit-ui 1.1.0-staging.1 → 1.1.0-staging.11

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 (733) hide show
  1. package/dist/browser.js +1 -1
  2. package/dist/cjs/{TextMessage-7bb3e1fd.js → TextMessage-75b55b60.js} +1 -1
  3. package/dist/cjs/{chat-717e517d.js → chat-90670f84.js} +1 -16
  4. package/dist/cjs/{config-8c9ac89a.js → config-60d594e2.js} +2 -2
  5. package/dist/cjs/{debounce-a3e0d9e7.js → debounce-677e65cb.js} +1 -1
  6. package/dist/cjs/index-05554ce6.js +6 -22
  7. package/dist/cjs/{index-8d07e125.js → index-5442bdba.js} +1 -1
  8. package/dist/cjs/index.cjs.js +6 -5
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/cjs/{merge-73e2770b.js → merge-7ce7986a.js} +1 -1
  11. package/dist/cjs/{notification-567fe887.js → notification-b9d42aa0.js} +1 -1
  12. package/dist/cjs/realtimekit-ui.cjs.js +1 -1
  13. package/dist/cjs/rtk-ai-toggle.cjs.entry.js +2 -2
  14. package/dist/cjs/rtk-ai-transcriptions.cjs.entry.js +3 -3
  15. package/dist/cjs/rtk-ai.cjs.entry.js +2 -2
  16. package/dist/cjs/rtk-audio-grid.cjs.entry.js +3 -3
  17. package/dist/cjs/rtk-audio-tile.cjs.entry.js +2 -2
  18. package/dist/cjs/rtk-audio-visualizer_4.cjs.entry.js +3 -3
  19. package/dist/cjs/{rtk-avatar_24.cjs.entry.js → rtk-avatar_23.cjs.entry.js} +432 -599
  20. package/dist/cjs/rtk-breakout-room-manager_3.cjs.entry.js +6 -6
  21. package/dist/cjs/rtk-breakout-rooms-manager_9.cjs.entry.js +11 -11
  22. package/dist/cjs/rtk-breakout-rooms-toggle.cjs.entry.js +2 -2
  23. package/dist/cjs/rtk-camera-selector_2.cjs.entry.js +2 -2
  24. package/dist/cjs/rtk-camera-toggle.cjs.entry.js +2 -2
  25. package/dist/cjs/rtk-caption-toggle.cjs.entry.js +2 -2
  26. package/dist/cjs/rtk-chat-composer-ui.cjs.entry.js +10 -24
  27. package/dist/cjs/rtk-chat-message.cjs.entry.js +4 -4
  28. package/dist/cjs/rtk-chat-messages-ui.cjs.entry.js +5 -5
  29. package/dist/cjs/rtk-chat-search-results.cjs.entry.js +3 -3
  30. package/dist/cjs/rtk-chat-selector-ui.cjs.entry.js +3 -3
  31. package/dist/cjs/rtk-chat-toggle.cjs.entry.js +30 -25
  32. package/dist/cjs/rtk-clock.cjs.entry.js +5 -5
  33. package/dist/cjs/rtk-controlbar-button.cjs.entry.js +3 -3
  34. package/dist/cjs/rtk-controlbar.cjs.entry.js +3 -3
  35. package/dist/cjs/rtk-debugger-audio_4.cjs.entry.js +2 -2
  36. package/dist/cjs/rtk-debugger-toggle.cjs.entry.js +3 -3
  37. package/dist/cjs/rtk-dialog-manager.cjs.entry.js +2 -2
  38. package/dist/cjs/rtk-dialog.cjs.entry.js +2 -2
  39. package/dist/cjs/rtk-ended-screen.cjs.entry.js +2 -2
  40. package/dist/cjs/rtk-file-dropzone.cjs.entry.js +3 -3
  41. package/dist/cjs/rtk-file-message_3.cjs.entry.js +12 -12
  42. package/dist/cjs/rtk-fullscreen-toggle.cjs.entry.js +2 -2
  43. package/dist/cjs/rtk-grid-pagination.cjs.entry.js +2 -2
  44. package/dist/cjs/rtk-grid.cjs.entry.js +2 -2
  45. package/dist/cjs/rtk-header.cjs.entry.js +3 -3
  46. package/dist/cjs/rtk-idle-screen.cjs.entry.js +3 -3
  47. package/dist/cjs/rtk-image-viewer.cjs.entry.js +3 -3
  48. package/dist/cjs/rtk-information-tooltip.cjs.entry.js +3 -3
  49. package/dist/cjs/rtk-leave-button.cjs.entry.js +3 -3
  50. package/dist/cjs/rtk-livestream-indicator_3.cjs.entry.js +2 -2
  51. package/dist/cjs/rtk-livestream-toggle.cjs.entry.js +2 -2
  52. package/dist/cjs/rtk-logo.cjs.entry.js +2 -2
  53. package/dist/cjs/rtk-meeting-title.cjs.entry.js +2 -2
  54. package/dist/cjs/rtk-message-list-view.cjs.entry.js +6 -6
  55. package/dist/cjs/rtk-mic-toggle.cjs.entry.js +2 -2
  56. package/dist/cjs/rtk-mixed-grid.cjs.entry.js +2 -2
  57. package/dist/cjs/rtk-more-toggle.cjs.entry.js +4 -4
  58. package/dist/cjs/rtk-mute-all-button.cjs.entry.js +2 -2
  59. package/dist/cjs/rtk-name-tag.cjs.entry.js +3 -3
  60. package/dist/cjs/rtk-network-indicator.cjs.entry.js +2 -2
  61. package/dist/cjs/rtk-notification.cjs.entry.js +6 -6
  62. package/dist/cjs/rtk-notifications.cjs.entry.js +8 -5
  63. package/dist/cjs/rtk-participant-count.cjs.entry.js +2 -2
  64. package/dist/cjs/rtk-participant-setup.cjs.entry.js +4 -4
  65. package/dist/cjs/rtk-participant_2.cjs.entry.js +17 -17
  66. package/dist/cjs/rtk-participants-audio.cjs.entry.js +3 -3
  67. package/dist/cjs/rtk-participants-stage-list_4.cjs.entry.js +3 -3
  68. package/dist/cjs/rtk-participants-toggle.cjs.entry.js +3 -3
  69. package/dist/cjs/rtk-participants.cjs.entry.js +3 -3
  70. package/dist/cjs/rtk-pip-toggle.cjs.entry.js +2 -2
  71. package/dist/cjs/rtk-plugin-main_2.cjs.entry.js +3 -3
  72. package/dist/cjs/rtk-plugins-toggle.cjs.entry.js +3 -3
  73. package/dist/cjs/rtk-plugins_2.cjs.entry.js +6 -6
  74. package/dist/cjs/rtk-poll_2.cjs.entry.js +5 -5
  75. package/dist/cjs/rtk-polls-toggle.cjs.entry.js +3 -3
  76. package/dist/cjs/rtk-recording-indicator.cjs.entry.js +3 -3
  77. package/dist/cjs/rtk-recording-toggle.cjs.entry.js +2 -2
  78. package/dist/cjs/rtk-screen-share-toggle.cjs.entry.js +2 -2
  79. package/dist/cjs/rtk-screenshare-view.cjs.entry.js +7 -7
  80. package/dist/cjs/rtk-settings-audio_2.cjs.entry.js +2 -2
  81. package/dist/cjs/rtk-settings-toggle.cjs.entry.js +3 -3
  82. package/dist/cjs/rtk-settings.cjs.entry.js +2 -2
  83. package/dist/cjs/rtk-setup-screen.cjs.entry.js +2 -2
  84. package/dist/cjs/rtk-sidebar-ui.cjs.entry.js +4 -4
  85. package/dist/cjs/rtk-sidebar.cjs.entry.js +3 -3
  86. package/dist/cjs/rtk-simple-grid.cjs.entry.js +2 -2
  87. package/dist/cjs/rtk-spotlight-grid.cjs.entry.js +4 -4
  88. package/dist/cjs/rtk-spotlight-indicator.cjs.entry.js +2 -2
  89. package/dist/cjs/rtk-stage-toggle.cjs.entry.js +2 -2
  90. package/dist/cjs/rtk-stage.cjs.entry.js +3 -3
  91. package/dist/cjs/rtk-transcript.cjs.entry.js +3 -3
  92. package/dist/cjs/rtk-transcripts.cjs.entry.js +2 -2
  93. package/dist/cjs/rtk-ui-provider.cjs.entry.js +13 -3
  94. package/dist/cjs/rtk-waiting-screen.cjs.entry.js +3 -3
  95. package/dist/cjs/{sidebar-2ad915b1.js → sidebar-e172c4ae.js} +1 -1
  96. package/dist/cjs/{ui-store-1cb28da8.js → ui-store-594688bf.js} +12 -9
  97. package/dist/collection/collection-manifest.json +0 -5
  98. package/dist/collection/components/rtk-ai/rtk-ai.js +2 -2
  99. package/dist/collection/components/rtk-ai-toggle/rtk-ai-toggle.js +2 -2
  100. package/dist/collection/components/rtk-ai-transcriptions/rtk-ai-transcriptions.js +2 -2
  101. package/dist/collection/components/rtk-audio-grid/rtk-audio-grid.js +3 -3
  102. package/dist/collection/components/rtk-audio-tile/rtk-audio-tile.js +2 -2
  103. package/dist/collection/components/rtk-audio-visualizer/rtk-audio-visualizer.js +2 -2
  104. package/dist/collection/components/rtk-avatar/rtk-avatar.js +3 -3
  105. package/dist/collection/components/rtk-breakout-room-manager/rtk-breakout-room-manager.js +2 -2
  106. package/dist/collection/components/rtk-breakout-room-participants/rtk-breakout-room-participants.js +4 -4
  107. package/dist/collection/components/rtk-breakout-room-toggle/rtk-breakout-rooms-toggle.js +3 -3
  108. package/dist/collection/components/rtk-breakout-rooms-manager/rtk-breakout-rooms-manager.js +3 -3
  109. package/dist/collection/components/rtk-broadcast-message-modal/rtk-broadcast-message-modal.js +4 -4
  110. package/dist/collection/components/rtk-camera-selector/rtk-camera-selector.js +2 -2
  111. package/dist/collection/components/rtk-camera-toggle/rtk-camera-toggle.js +2 -2
  112. package/dist/collection/components/rtk-caption-toggle/rtk-caption-toggle.js +2 -2
  113. package/dist/collection/components/rtk-chat/rtk-chat.css +47 -45
  114. package/dist/collection/components/rtk-chat/rtk-chat.js +98 -158
  115. package/dist/collection/components/rtk-chat-composer-ui/rtk-chat-composer-ui.js +12 -48
  116. package/dist/collection/components/rtk-chat-composer-view/rtk-chat-composer-view.js +30 -17
  117. package/dist/collection/components/rtk-chat-message/rtk-chat-message.js +4 -4
  118. package/dist/collection/components/rtk-chat-messages-ui/rtk-chat-messages-ui.js +5 -5
  119. package/dist/collection/components/rtk-chat-messages-ui-paginated/rtk-chat-messages-ui-paginated.js +44 -87
  120. package/dist/collection/components/rtk-chat-search-results/rtk-chat-search-results.js +3 -3
  121. package/dist/collection/components/rtk-chat-selector-ui/rtk-chat-selector-ui.js +2 -2
  122. package/dist/collection/components/rtk-chat-toggle/rtk-chat-toggle.css +1 -1
  123. package/dist/collection/components/rtk-chat-toggle/rtk-chat-toggle.js +29 -28
  124. package/dist/collection/components/rtk-clock/rtk-clock.js +4 -4
  125. package/dist/collection/components/rtk-confirmation-modal/rtk-confirmation-modal.js +3 -3
  126. package/dist/collection/components/rtk-controlbar/rtk-controlbar.js +3 -3
  127. package/dist/collection/components/rtk-controlbar-button/rtk-controlbar-button.js +2 -2
  128. package/dist/collection/components/rtk-counter/rtk-counter.js +4 -4
  129. package/dist/collection/components/rtk-debugger/rtk-debugger.js +2 -2
  130. package/dist/collection/components/rtk-debugger-audio/rtk-debugger-audio.js +2 -2
  131. package/dist/collection/components/rtk-debugger-screenshare/rtk-debugger-screenshare.js +2 -2
  132. package/dist/collection/components/rtk-debugger-system/rtk-debugger-system.js +2 -2
  133. package/dist/collection/components/rtk-debugger-toggle/rtk-debugger-toggle.js +3 -3
  134. package/dist/collection/components/rtk-debugger-video/rtk-debugger-video.js +2 -2
  135. package/dist/collection/components/rtk-dialog/rtk-dialog.js +2 -2
  136. package/dist/collection/components/rtk-dialog-manager/rtk-dialog-manager.js +2 -2
  137. package/dist/collection/components/rtk-draft-attachment-view/rtk-draft-attachment-view.js +3 -3
  138. package/dist/collection/components/rtk-emoji-picker/rtk-emoji-picker.js +3 -3
  139. package/dist/collection/components/rtk-emoji-picker-button/rtk-emoji-picker-button.js +3 -3
  140. package/dist/collection/components/rtk-ended-screen/rtk-ended-screen.js +2 -2
  141. package/dist/collection/components/rtk-file-dropzone/rtk-file-dropzone.js +3 -3
  142. package/dist/collection/components/rtk-file-message/rtk-file-message.js +4 -4
  143. package/dist/collection/components/rtk-file-message-view/rtk-file-message-view.js +2 -2
  144. package/dist/collection/components/rtk-file-picker-button/rtk-file-picker-button.js +4 -4
  145. package/dist/collection/components/rtk-fullscreen-toggle/rtk-fullscreen-toggle.js +2 -2
  146. package/dist/collection/components/rtk-grid/rtk-grid.js +2 -2
  147. package/dist/collection/components/rtk-grid-pagination/rtk-grid-pagination.js +2 -2
  148. package/dist/collection/components/rtk-header/rtk-header.js +3 -3
  149. package/dist/collection/components/rtk-icon/rtk-icon.js +1 -1
  150. package/dist/collection/components/rtk-idle-screen/rtk-idle-screen.js +3 -3
  151. package/dist/collection/components/rtk-image-message/rtk-image-message.js +6 -6
  152. package/dist/collection/components/rtk-image-message-view/rtk-image-message-view.js +5 -5
  153. package/dist/collection/components/rtk-image-viewer/rtk-image-viewer.js +3 -3
  154. package/dist/collection/components/rtk-information-tooltip/rtk-information-tooltip.js +2 -2
  155. package/dist/collection/components/rtk-join-stage/rtk-join-stage.js +3 -3
  156. package/dist/collection/components/rtk-leave-button/rtk-leave-button.js +3 -3
  157. package/dist/collection/components/rtk-leave-meeting/rtk-leave-meeting.js +4 -4
  158. package/dist/collection/components/rtk-livestream-indicator/rtk-livestream-indicator.js +2 -2
  159. package/dist/collection/components/rtk-livestream-player/rtk-livestream-player.js +2 -2
  160. package/dist/collection/components/rtk-livestream-toggle/rtk-livestream-toggle.js +2 -2
  161. package/dist/collection/components/rtk-logo/rtk-logo.js +1 -1
  162. package/dist/collection/components/rtk-markdown-view/rtk-markdown-view.js +1 -1
  163. package/dist/collection/components/rtk-meeting/rtk-meeting.js +39 -2
  164. package/dist/collection/components/rtk-meeting-title/rtk-meeting-title.js +2 -2
  165. package/dist/collection/components/rtk-menu/rtk-menu.js +4 -4
  166. package/dist/collection/components/rtk-menu-item/rtk-menu-item.css +6 -1
  167. package/dist/collection/components/rtk-menu-item/rtk-menu-item.js +25 -3
  168. package/dist/collection/components/rtk-menu-list/rtk-menu-list.css +15 -4
  169. package/dist/collection/components/rtk-menu-list/rtk-menu-list.js +25 -3
  170. package/dist/collection/components/rtk-message-list-view/rtk-message-list-view.js +4 -4
  171. package/dist/collection/components/rtk-message-view/rtk-message-view.css +30 -22
  172. package/dist/collection/components/rtk-message-view/rtk-message-view.js +73 -3
  173. package/dist/collection/components/rtk-mic-toggle/rtk-mic-toggle.js +2 -2
  174. package/dist/collection/components/rtk-microphone-selector/rtk-microphone-selector.js +2 -2
  175. package/dist/collection/components/rtk-mixed-grid/rtk-mixed-grid.js +2 -2
  176. package/dist/collection/components/rtk-more-toggle/rtk-more-toggle.js +4 -4
  177. package/dist/collection/components/rtk-mute-all-button/rtk-mute-all-button.js +2 -2
  178. package/dist/collection/components/rtk-mute-all-confirmation/rtk-mute-all-confirmation.js +3 -3
  179. package/dist/collection/components/rtk-name-tag/rtk-name-tag.js +3 -3
  180. package/dist/collection/components/rtk-network-indicator/rtk-network-indicator.js +2 -2
  181. package/dist/collection/components/rtk-notification/rtk-notification.js +4 -4
  182. package/dist/collection/components/rtk-notifications/rtk-notifications.js +6 -3
  183. package/dist/collection/components/rtk-overlay-modal/rtk-overlay-modal.js +3 -3
  184. package/dist/collection/components/rtk-paginated-list/rtk-paginated-list.css +5 -5
  185. package/dist/collection/components/rtk-paginated-list/rtk-paginated-list.js +329 -266
  186. package/dist/collection/components/rtk-participant/rtk-participant.js +14 -14
  187. package/dist/collection/components/rtk-participant-count/rtk-participant-count.js +2 -2
  188. package/dist/collection/components/rtk-participant-setup/rtk-participant-setup.js +4 -4
  189. package/dist/collection/components/rtk-participant-tile/rtk-participant-tile.js +2 -2
  190. package/dist/collection/components/rtk-participants/rtk-participants.js +2 -2
  191. package/dist/collection/components/rtk-participants-audio/rtk-participants-audio.js +3 -3
  192. package/dist/collection/components/rtk-participants-stage-list/rtk-participants-stage-list.js +3 -3
  193. package/dist/collection/components/rtk-participants-stage-queue/rtk-participants-stage-queue.js +2 -2
  194. package/dist/collection/components/rtk-participants-toggle/rtk-participants-toggle.js +2 -2
  195. package/dist/collection/components/rtk-participants-viewer-list/rtk-participants-viewer-list.js +2 -2
  196. package/dist/collection/components/rtk-participants-waiting-list/rtk-participants-waiting-list.js +2 -2
  197. package/dist/collection/components/rtk-permissions-message/rtk-permissions-message.js +3 -3
  198. package/dist/collection/components/rtk-pip-toggle/rtk-pip-toggle.js +2 -2
  199. package/dist/collection/components/rtk-plugin-main/rtk-plugin-main.js +2 -2
  200. package/dist/collection/components/rtk-plugins/rtk-plugins.js +3 -3
  201. package/dist/collection/components/rtk-plugins-toggle/rtk-plugins-toggle.js +2 -2
  202. package/dist/collection/components/rtk-poll/rtk-poll.js +3 -3
  203. package/dist/collection/components/rtk-poll-form/rtk-poll-form.js +4 -4
  204. package/dist/collection/components/rtk-polls/rtk-polls.js +5 -5
  205. package/dist/collection/components/rtk-polls-toggle/rtk-polls-toggle.js +2 -2
  206. package/dist/collection/components/rtk-recording-indicator/rtk-recording-indicator.js +3 -3
  207. package/dist/collection/components/rtk-recording-toggle/rtk-recording-toggle.js +2 -2
  208. package/dist/collection/components/rtk-screen-share-toggle/rtk-screen-share-toggle.js +2 -2
  209. package/dist/collection/components/rtk-screenshare-view/rtk-screenshare-view.js +7 -7
  210. package/dist/collection/components/rtk-settings/rtk-settings.js +2 -2
  211. package/dist/collection/components/rtk-settings-audio/rtk-settings-audio.js +2 -2
  212. package/dist/collection/components/rtk-settings-toggle/rtk-settings-toggle.js +3 -3
  213. package/dist/collection/components/rtk-settings-video/rtk-settings-video.js +2 -2
  214. package/dist/collection/components/rtk-setup-screen/rtk-setup-screen.js +2 -2
  215. package/dist/collection/components/rtk-sidebar/rtk-sidebar.js +2 -2
  216. package/dist/collection/components/rtk-sidebar-ui/rtk-sidebar-ui.js +5 -5
  217. package/dist/collection/components/rtk-simple-grid/rtk-simple-grid.js +2 -2
  218. package/dist/collection/components/rtk-speaker-selector/rtk-speaker-selector.js +2 -2
  219. package/dist/collection/components/rtk-spinner/rtk-spinner.js +2 -2
  220. package/dist/collection/components/rtk-spotlight-grid/rtk-spotlight-grid.js +4 -4
  221. package/dist/collection/components/rtk-spotlight-indicator/rtk-spotlight-indicator.js +2 -2
  222. package/dist/collection/components/rtk-stage/rtk-stage.js +3 -3
  223. package/dist/collection/components/rtk-stage-toggle/rtk-stage-toggle.js +2 -2
  224. package/dist/collection/components/rtk-switch/rtk-switch.js +3 -3
  225. package/dist/collection/components/rtk-tab-bar/rtk-tab-bar.js +3 -3
  226. package/dist/collection/components/rtk-text-composer-view/rtk-text-composer-view.js +3 -3
  227. package/dist/collection/components/rtk-text-message/rtk-text-message.js +4 -4
  228. package/dist/collection/components/rtk-text-message-view/rtk-text-message-view.js +1 -1
  229. package/dist/collection/components/rtk-tooltip/rtk-tooltip.js +1 -1
  230. package/dist/collection/components/rtk-transcript/rtk-transcript.js +2 -2
  231. package/dist/collection/components/rtk-transcripts/rtk-transcripts.js +1 -1
  232. package/dist/collection/components/rtk-ui-provider/rtk-ui-provider.js +39 -3
  233. package/dist/collection/components/rtk-viewer-count/rtk-viewer-count.js +2 -2
  234. package/dist/collection/components/rtk-virtualized-list/rtk-virtualized-participant-list.js +2 -2
  235. package/dist/collection/components/rtk-waiting-screen/rtk-waiting-screen.js +3 -3
  236. package/dist/collection/exports.js +2 -1
  237. package/dist/collection/lib/icons/default-icon-pack.js +0 -2
  238. package/dist/collection/lib/lang/default-language.js +1 -4
  239. package/dist/collection/lib/overrides.js +6 -0
  240. package/dist/collection/utils/chat.js +0 -4
  241. package/dist/collection/utils/flags.js +0 -2
  242. package/dist/collection/utils/sync-with-store/ui-store.js +4 -1
  243. package/dist/components/index.js +7 -7
  244. package/dist/components/{p-8d25843a.js → p-0899c09f.js} +3 -3
  245. package/dist/components/{p-0a35a909.js → p-19d83dd6.js} +4 -4
  246. package/dist/components/{p-6f340109.js → p-1c5cc842.js} +1 -1
  247. package/dist/components/{p-5c92df32.js → p-1c678eab.js} +6 -6
  248. package/dist/components/{p-dbfc9151.js → p-1e9999d7.js} +4 -4
  249. package/dist/components/{p-65cd2fe3.js → p-1ea0d406.js} +5 -5
  250. package/dist/components/{p-6c2cfa0d.js → p-206acdcd.js} +5 -5
  251. package/dist/components/{p-fd68a52b.js → p-21becaf3.js} +9 -9
  252. package/dist/components/{p-4d582a90.js → p-23d37f65.js} +6 -6
  253. package/dist/components/{p-3da4880c.js → p-24481cb4.js} +5 -5
  254. package/dist/components/{p-d3de8b85.js → p-2ec120cd.js} +4 -4
  255. package/dist/components/{p-20290b0b.js → p-3245ace2.js} +5 -5
  256. package/dist/components/p-33db910f.js +409 -0
  257. package/dist/components/{p-188bfe87.js → p-34654ffc.js} +9 -9
  258. package/dist/components/{p-d107e9f4.js → p-410cef02.js} +4 -4
  259. package/dist/components/{p-afe77b50.js → p-4c82be72.js} +3 -3
  260. package/dist/components/{p-b011763d.js → p-5194f4d6.js} +4 -4
  261. package/dist/components/{p-f7430e46.js → p-51ef5a21.js} +6 -6
  262. package/dist/components/{p-0b4e526c.js → p-52e95364.js} +4 -4
  263. package/dist/components/{p-10ef077c.js → p-541e6de7.js} +3 -3
  264. package/dist/components/{p-aae4c250.js → p-56134994.js} +1 -1
  265. package/dist/components/{p-395d7140.js → p-565c8389.js} +5 -5
  266. package/dist/components/{p-33a87325.js → p-5791a91d.js} +3 -3
  267. package/dist/components/{p-fa8f6b4a.js → p-63c79efa.js} +1 -1
  268. package/dist/components/{p-121e073d.js → p-63e06c50.js} +2 -2
  269. package/dist/components/{p-b34865c7.js → p-63e51be4.js} +5 -5
  270. package/dist/components/{p-2f82e0b0.js → p-645b761e.js} +8 -8
  271. package/dist/components/{p-914563e7.js → p-6614c9e7.js} +6 -6
  272. package/dist/components/{p-9e87b2c9.js → p-66ba4031.js} +2 -2
  273. package/dist/components/{p-488d88a8.js → p-66d10db2.js} +5 -5
  274. package/dist/components/{p-5f26bba3.js → p-6e10fc42.js} +2 -2
  275. package/dist/components/{p-0d7bf41b.js → p-71f12515.js} +4 -4
  276. package/dist/components/{p-3b29dda1.js → p-73baf5ba.js} +1 -1
  277. package/dist/components/{p-a6f2b402.js → p-770c0fd7.js} +38 -60
  278. package/dist/components/{p-e675729a.js → p-777aa628.js} +5 -5
  279. package/dist/components/{p-78b61cce.js → p-7a424d82.js} +1 -1
  280. package/dist/components/{p-2e282643.js → p-7c84212d.js} +6 -6
  281. package/dist/components/{p-a6296b02.js → p-7e6ca4af.js} +7 -4
  282. package/dist/components/{p-b882f4a1.js → p-7f790526.js} +5 -5
  283. package/dist/components/{p-88bef213.js → p-8222af8c.js} +2 -2
  284. package/dist/components/{p-0d582365.js → p-8e285a44.js} +2 -2
  285. package/dist/components/{p-c078ae06.js → p-901c2375.js} +3 -3
  286. package/dist/components/{p-cf503999.js → p-91bc86f4.js} +5 -5
  287. package/dist/components/{p-e81fc1e8.js → p-93947678.js} +3 -3
  288. package/dist/components/{p-7481511c.js → p-93db20a6.js} +3 -3
  289. package/dist/components/{p-f8f5cb31.js → p-951a67af.js} +4 -4
  290. package/dist/components/{p-f47894a6.js → p-97d1dcb7.js} +22 -28
  291. package/dist/components/{p-47c25f64.js → p-9c3c75a9.js} +1 -1
  292. package/dist/components/{p-a94b2e67.js → p-a6aea524.js} +2 -2
  293. package/dist/components/{p-51de7af3.js → p-a72d3d19.js} +1 -1
  294. package/dist/components/{p-ee98bbaf.js → p-a89ee2d2.js} +13 -13
  295. package/dist/components/{p-a4a5ff5a.js → p-a99b0889.js} +6 -6
  296. package/dist/components/{p-2f08d7eb.js → p-ac80e7fc.js} +99 -183
  297. package/dist/components/{p-dab9d3d6.js → p-addb4be5.js} +1 -12
  298. package/dist/components/{p-d06d1eac.js → p-aeba1c02.js} +3 -3
  299. package/dist/components/{p-55501201.js → p-b2904963.js} +5 -5
  300. package/dist/components/{p-bb8f2597.js → p-b37f2227.js} +7 -7
  301. package/dist/components/{p-c515acba.js → p-b4a37662.js} +3 -3
  302. package/dist/components/{p-244cbe7b.js → p-b65d1760.js} +2 -2
  303. package/dist/components/{p-563c785d.js → p-b69a05ad.js} +3 -3
  304. package/dist/components/{p-82f8c924.js → p-b92c53c7.js} +3 -3
  305. package/dist/components/{p-a29c01fc.js → p-bbffc0e1.js} +3 -3
  306. package/dist/components/{p-e6710b76.js → p-c0942317.js} +4 -4
  307. package/dist/components/{p-84e5b453.js → p-c402a1db.js} +2 -2
  308. package/dist/components/{p-190db142.js → p-c643c410.js} +8 -8
  309. package/dist/components/{p-a10b9faa.js → p-c66a52b7.js} +3 -3
  310. package/dist/components/{p-102b6df8.js → p-caaca684.js} +2 -2
  311. package/dist/components/{p-c3621e10.js → p-cd8f62c9.js} +7 -7
  312. package/dist/components/{p-f4e75ea9.js → p-cec4d080.js} +5 -5
  313. package/dist/components/{p-fe911889.js → p-d3414935.js} +20 -11
  314. package/dist/components/{p-7fc0dc2f.js → p-dc9dde66.js} +12 -10
  315. package/dist/components/{p-e8df7ac5.js → p-e09955f3.js} +19 -19
  316. package/dist/components/{p-6f272732.js → p-e583a838.js} +9 -9
  317. package/dist/components/{p-618864a0.js → p-e60aa036.js} +3 -3
  318. package/dist/components/{p-2d08ab28.js → p-efbfe5a0.js} +4 -4
  319. package/dist/components/{p-abe1dbe6.js → p-f247cacc.js} +4 -4
  320. package/dist/components/{p-63ef7ea4.js → p-f5101af9.js} +7 -7
  321. package/dist/components/{p-f7eb9c47.js → p-f5a3ee43.js} +6 -6
  322. package/dist/components/{p-e4a080a5.js → p-f7a8a2d8.js} +4 -4
  323. package/dist/components/{p-9889bee5.js → p-f8a13473.js} +5 -5
  324. package/dist/components/{p-6756b222.js → p-f95c314b.js} +3 -3
  325. package/dist/components/{p-080acf18.js → p-fe648db5.js} +7 -4
  326. package/dist/components/rtk-ai-toggle.js +5 -5
  327. package/dist/components/rtk-ai-transcriptions.js +1 -1
  328. package/dist/components/rtk-ai.js +4 -4
  329. package/dist/components/rtk-audio-grid.js +3 -3
  330. package/dist/components/rtk-audio-tile.js +6 -6
  331. package/dist/components/rtk-audio-visualizer.js +1 -1
  332. package/dist/components/rtk-avatar.js +1 -1
  333. package/dist/components/rtk-breakout-room-manager.js +1 -1
  334. package/dist/components/rtk-breakout-room-participants.js +1 -1
  335. package/dist/components/rtk-breakout-rooms-manager.js +1 -1
  336. package/dist/components/rtk-breakout-rooms-toggle.js +5 -5
  337. package/dist/components/rtk-broadcast-message-modal.js +1 -1
  338. package/dist/components/rtk-camera-selector.js +1 -1
  339. package/dist/components/rtk-camera-toggle.js +6 -6
  340. package/dist/components/rtk-caption-toggle.js +5 -5
  341. package/dist/components/rtk-chat-composer-ui.js +15 -32
  342. package/dist/components/rtk-chat-composer-view.js +1 -1
  343. package/dist/components/rtk-chat-message.js +1 -1
  344. package/dist/components/rtk-chat-messages-ui-paginated.js +1 -1
  345. package/dist/components/rtk-chat-messages-ui.js +17 -17
  346. package/dist/components/rtk-chat-search-results.js +14 -14
  347. package/dist/components/rtk-chat-selector-ui.js +4 -4
  348. package/dist/components/rtk-chat-toggle.js +34 -30
  349. package/dist/components/rtk-chat.js +1 -1
  350. package/dist/components/rtk-clock.js +6 -6
  351. package/dist/components/rtk-confirmation-modal.js +1 -1
  352. package/dist/components/rtk-controlbar-button.js +1 -1
  353. package/dist/components/rtk-controlbar.js +3 -3
  354. package/dist/components/rtk-counter.js +1 -1
  355. package/dist/components/rtk-debugger-audio.js +1 -1
  356. package/dist/components/rtk-debugger-screenshare.js +1 -1
  357. package/dist/components/rtk-debugger-system.js +1 -1
  358. package/dist/components/rtk-debugger-toggle.js +6 -6
  359. package/dist/components/rtk-debugger-video.js +1 -1
  360. package/dist/components/rtk-debugger.js +1 -1
  361. package/dist/components/rtk-dialog-manager.js +23 -23
  362. package/dist/components/rtk-dialog.js +1 -1
  363. package/dist/components/rtk-draft-attachment-view.js +1 -1
  364. package/dist/components/rtk-emoji-picker-button.js +1 -1
  365. package/dist/components/rtk-emoji-picker.js +1 -1
  366. package/dist/components/rtk-ended-screen.js +4 -4
  367. package/dist/components/rtk-file-dropzone.js +4 -4
  368. package/dist/components/rtk-file-message-view.js +1 -1
  369. package/dist/components/rtk-file-message.js +1 -1
  370. package/dist/components/rtk-file-picker-button.js +1 -1
  371. package/dist/components/rtk-fullscreen-toggle.js +1 -1
  372. package/dist/components/rtk-grid-pagination.js +4 -4
  373. package/dist/components/rtk-grid.js +9 -9
  374. package/dist/components/rtk-header.js +3 -3
  375. package/dist/components/rtk-icon.js +1 -1
  376. package/dist/components/rtk-idle-screen.js +6 -6
  377. package/dist/components/rtk-image-message-view.js +1 -1
  378. package/dist/components/rtk-image-message.js +1 -1
  379. package/dist/components/rtk-image-viewer.js +4 -4
  380. package/dist/components/rtk-information-tooltip.js +4 -4
  381. package/dist/components/rtk-join-stage.js +1 -1
  382. package/dist/components/rtk-leave-button.js +6 -6
  383. package/dist/components/rtk-leave-meeting.js +1 -1
  384. package/dist/components/rtk-livestream-indicator.js +1 -1
  385. package/dist/components/rtk-livestream-player.js +1 -1
  386. package/dist/components/rtk-livestream-toggle.js +5 -5
  387. package/dist/components/rtk-logo.js +1 -1
  388. package/dist/components/rtk-markdown-view.js +1 -1
  389. package/dist/components/rtk-meeting-title.js +3 -3
  390. package/dist/components/rtk-meeting.js +42 -36
  391. package/dist/components/rtk-menu-item.js +1 -1
  392. package/dist/components/rtk-menu-list.js +1 -1
  393. package/dist/components/rtk-menu.js +1 -1
  394. package/dist/components/rtk-message-list-view.js +7 -7
  395. package/dist/components/rtk-message-view.js +1 -1
  396. package/dist/components/rtk-mic-toggle.js +6 -6
  397. package/dist/components/rtk-microphone-selector.js +1 -1
  398. package/dist/components/rtk-mixed-grid.js +7 -7
  399. package/dist/components/rtk-more-toggle.js +7 -7
  400. package/dist/components/rtk-mute-all-button.js +6 -6
  401. package/dist/components/rtk-mute-all-confirmation.js +1 -1
  402. package/dist/components/rtk-name-tag.js +1 -1
  403. package/dist/components/rtk-network-indicator.js +3 -3
  404. package/dist/components/rtk-notification.js +1 -1
  405. package/dist/components/rtk-notifications.js +10 -7
  406. package/dist/components/rtk-overlay-modal.js +1 -1
  407. package/dist/components/rtk-paginated-list.js +1 -1
  408. package/dist/components/rtk-participant-count.js +3 -3
  409. package/dist/components/rtk-participant-setup.js +4 -4
  410. package/dist/components/rtk-participant-tile.js +1 -1
  411. package/dist/components/rtk-participant.js +1 -1
  412. package/dist/components/rtk-participants-audio.js +5 -5
  413. package/dist/components/rtk-participants-stage-list.js +1 -1
  414. package/dist/components/rtk-participants-stage-queue.js +1 -1
  415. package/dist/components/rtk-participants-toggle.js +6 -6
  416. package/dist/components/rtk-participants-viewer-list.js +1 -1
  417. package/dist/components/rtk-participants-waiting-list.js +1 -1
  418. package/dist/components/rtk-participants.js +15 -15
  419. package/dist/components/rtk-permissions-message.js +1 -1
  420. package/dist/components/rtk-pip-toggle.js +5 -5
  421. package/dist/components/rtk-plugin-main.js +1 -1
  422. package/dist/components/rtk-plugins-toggle.js +6 -6
  423. package/dist/components/rtk-plugins.js +1 -1
  424. package/dist/components/rtk-poll-form.js +1 -1
  425. package/dist/components/rtk-poll.js +1 -1
  426. package/dist/components/rtk-polls-toggle.js +6 -6
  427. package/dist/components/rtk-polls.js +1 -1
  428. package/dist/components/rtk-recording-indicator.js +4 -4
  429. package/dist/components/rtk-recording-toggle.js +5 -5
  430. package/dist/components/rtk-screen-share-toggle.js +6 -6
  431. package/dist/components/rtk-screenshare-view.js +9 -9
  432. package/dist/components/rtk-settings-audio.js +1 -1
  433. package/dist/components/rtk-settings-toggle.js +6 -6
  434. package/dist/components/rtk-settings-video.js +1 -1
  435. package/dist/components/rtk-settings.js +11 -11
  436. package/dist/components/rtk-setup-screen.js +7 -7
  437. package/dist/components/rtk-sidebar-ui.js +1 -1
  438. package/dist/components/rtk-sidebar.js +10 -10
  439. package/dist/components/rtk-simple-grid.js +2 -2
  440. package/dist/components/rtk-speaker-selector.js +1 -1
  441. package/dist/components/rtk-spinner.js +1 -1
  442. package/dist/components/rtk-spotlight-grid.js +4 -4
  443. package/dist/components/rtk-spotlight-indicator.js +1 -1
  444. package/dist/components/rtk-stage-toggle.js +6 -6
  445. package/dist/components/rtk-stage.js +3 -3
  446. package/dist/components/rtk-switch.js +1 -1
  447. package/dist/components/rtk-tab-bar.js +1 -1
  448. package/dist/components/rtk-text-composer-view.js +1 -1
  449. package/dist/components/rtk-text-message-view.js +1 -1
  450. package/dist/components/rtk-text-message.js +1 -1
  451. package/dist/components/rtk-tooltip.js +1 -1
  452. package/dist/components/rtk-transcript.js +1 -1
  453. package/dist/components/rtk-transcripts.js +3 -3
  454. package/dist/components/rtk-ui-provider.js +17 -5
  455. package/dist/components/rtk-viewer-count.js +1 -1
  456. package/dist/components/rtk-virtualized-participant-list.js +1 -1
  457. package/dist/components/rtk-waiting-screen.js +4 -4
  458. package/dist/docs/docs-components.json +1429 -12236
  459. package/dist/docs/docs-vscode.json +42 -94
  460. package/dist/esm/{TextMessage-ca92045e.js → TextMessage-0aed30b2.js} +1 -1
  461. package/dist/esm/{chat-ff185374.js → chat-a170fc58.js} +2 -13
  462. package/dist/esm/{config-e684aa4d.js → config-cea9cd37.js} +2 -2
  463. package/dist/esm/{debounce-3ea4df36.js → debounce-b7ba967e.js} +1 -1
  464. package/dist/esm/index-c1fb98bb.js +6 -22
  465. package/dist/esm/{index-e65afca5.js → index-d08145ca.js} +1 -1
  466. package/dist/esm/index.js +7 -7
  467. package/dist/esm/loader.js +1369 -1971
  468. package/dist/esm/{merge-7ffc04b3.js → merge-88832ad1.js} +1 -1
  469. package/dist/esm/{notification-78afaabf.js → notification-6fa40b68.js} +1 -1
  470. package/dist/esm/realtimekit-ui.js +1 -1
  471. package/dist/esm/rtk-ai-toggle.entry.js +2 -2
  472. package/dist/esm/rtk-ai-transcriptions.entry.js +3 -3
  473. package/dist/esm/rtk-ai.entry.js +2 -2
  474. package/dist/esm/rtk-audio-grid.entry.js +3 -3
  475. package/dist/esm/rtk-audio-tile.entry.js +2 -2
  476. package/dist/esm/rtk-audio-visualizer_4.entry.js +3 -3
  477. package/dist/esm/{rtk-avatar_24.entry.js → rtk-avatar_23.entry.js} +433 -599
  478. package/dist/esm/rtk-breakout-room-manager_3.entry.js +6 -6
  479. package/dist/esm/rtk-breakout-rooms-manager_9.entry.js +11 -11
  480. package/dist/esm/rtk-breakout-rooms-toggle.entry.js +2 -2
  481. package/dist/esm/rtk-camera-selector_2.entry.js +2 -2
  482. package/dist/esm/rtk-camera-toggle.entry.js +2 -2
  483. package/dist/esm/rtk-caption-toggle.entry.js +2 -2
  484. package/dist/esm/rtk-chat-composer-ui.entry.js +10 -24
  485. package/dist/esm/rtk-chat-message.entry.js +4 -4
  486. package/dist/esm/rtk-chat-messages-ui.entry.js +5 -5
  487. package/dist/esm/rtk-chat-search-results.entry.js +3 -3
  488. package/dist/esm/rtk-chat-selector-ui.entry.js +3 -3
  489. package/dist/esm/rtk-chat-toggle.entry.js +30 -25
  490. package/dist/esm/rtk-clock.entry.js +5 -5
  491. package/dist/esm/rtk-controlbar-button.entry.js +3 -3
  492. package/dist/esm/rtk-controlbar.entry.js +3 -3
  493. package/dist/esm/rtk-debugger-audio_4.entry.js +2 -2
  494. package/dist/esm/rtk-debugger-toggle.entry.js +3 -3
  495. package/dist/esm/rtk-dialog-manager.entry.js +2 -2
  496. package/dist/esm/rtk-dialog.entry.js +2 -2
  497. package/dist/esm/rtk-ended-screen.entry.js +2 -2
  498. package/dist/esm/rtk-file-dropzone.entry.js +3 -3
  499. package/dist/esm/rtk-file-message_3.entry.js +12 -12
  500. package/dist/esm/rtk-fullscreen-toggle.entry.js +2 -2
  501. package/dist/esm/rtk-grid-pagination.entry.js +2 -2
  502. package/dist/esm/rtk-grid.entry.js +2 -2
  503. package/dist/esm/rtk-header.entry.js +3 -3
  504. package/dist/esm/rtk-idle-screen.entry.js +3 -3
  505. package/dist/esm/rtk-image-viewer.entry.js +3 -3
  506. package/dist/esm/rtk-information-tooltip.entry.js +3 -3
  507. package/dist/esm/rtk-leave-button.entry.js +3 -3
  508. package/dist/esm/rtk-livestream-indicator_3.entry.js +2 -2
  509. package/dist/esm/rtk-livestream-toggle.entry.js +2 -2
  510. package/dist/esm/rtk-logo.entry.js +2 -2
  511. package/dist/esm/rtk-meeting-title.entry.js +2 -2
  512. package/dist/esm/rtk-message-list-view.entry.js +6 -6
  513. package/dist/esm/rtk-mic-toggle.entry.js +2 -2
  514. package/dist/esm/rtk-mixed-grid.entry.js +2 -2
  515. package/dist/esm/rtk-more-toggle.entry.js +4 -4
  516. package/dist/esm/rtk-mute-all-button.entry.js +2 -2
  517. package/dist/esm/rtk-name-tag.entry.js +3 -3
  518. package/dist/esm/rtk-network-indicator.entry.js +2 -2
  519. package/dist/esm/rtk-notification.entry.js +6 -6
  520. package/dist/esm/rtk-notifications.entry.js +8 -5
  521. package/dist/esm/rtk-participant-count.entry.js +2 -2
  522. package/dist/esm/rtk-participant-setup.entry.js +4 -4
  523. package/dist/esm/rtk-participant_2.entry.js +17 -17
  524. package/dist/esm/rtk-participants-audio.entry.js +3 -3
  525. package/dist/esm/rtk-participants-stage-list_4.entry.js +3 -3
  526. package/dist/esm/rtk-participants-toggle.entry.js +3 -3
  527. package/dist/esm/rtk-participants.entry.js +3 -3
  528. package/dist/esm/rtk-pip-toggle.entry.js +2 -2
  529. package/dist/esm/rtk-plugin-main_2.entry.js +3 -3
  530. package/dist/esm/rtk-plugins-toggle.entry.js +3 -3
  531. package/dist/esm/rtk-plugins_2.entry.js +6 -6
  532. package/dist/esm/rtk-poll_2.entry.js +5 -5
  533. package/dist/esm/rtk-polls-toggle.entry.js +3 -3
  534. package/dist/esm/rtk-recording-indicator.entry.js +3 -3
  535. package/dist/esm/rtk-recording-toggle.entry.js +2 -2
  536. package/dist/esm/rtk-screen-share-toggle.entry.js +2 -2
  537. package/dist/esm/rtk-screenshare-view.entry.js +7 -7
  538. package/dist/esm/rtk-settings-audio_2.entry.js +2 -2
  539. package/dist/esm/rtk-settings-toggle.entry.js +3 -3
  540. package/dist/esm/rtk-settings.entry.js +2 -2
  541. package/dist/esm/rtk-setup-screen.entry.js +2 -2
  542. package/dist/esm/rtk-sidebar-ui.entry.js +4 -4
  543. package/dist/esm/rtk-sidebar.entry.js +3 -3
  544. package/dist/esm/rtk-simple-grid.entry.js +2 -2
  545. package/dist/esm/rtk-spotlight-grid.entry.js +4 -4
  546. package/dist/esm/rtk-spotlight-indicator.entry.js +2 -2
  547. package/dist/esm/rtk-stage-toggle.entry.js +2 -2
  548. package/dist/esm/rtk-stage.entry.js +3 -3
  549. package/dist/esm/rtk-transcript.entry.js +3 -3
  550. package/dist/esm/rtk-transcripts.entry.js +2 -2
  551. package/dist/esm/rtk-ui-provider.entry.js +13 -3
  552. package/dist/esm/rtk-waiting-screen.entry.js +3 -3
  553. package/dist/esm/{sidebar-030fff49.js → sidebar-dd9a38aa.js} +1 -1
  554. package/dist/esm/{ui-store-9e486e1b.js → ui-store-5a66fa71.js} +12 -10
  555. package/dist/realtimekit-ui/index.esm.js +1 -1
  556. package/dist/realtimekit-ui/{p-a9dd63ef.entry.js → p-00fbc77d.entry.js} +1 -1
  557. package/dist/realtimekit-ui/p-085b70ca.entry.js +1 -0
  558. package/dist/realtimekit-ui/{p-f5aa8af7.entry.js → p-0a6840aa.entry.js} +1 -1
  559. package/dist/realtimekit-ui/p-0a9761b4.entry.js +1 -0
  560. package/dist/realtimekit-ui/{p-9c1f42dd.entry.js → p-0d173282.entry.js} +1 -1
  561. package/dist/realtimekit-ui/{p-8f512d69.entry.js → p-0d6b6c0d.entry.js} +1 -1
  562. package/dist/realtimekit-ui/{p-91fd286c.js → p-0e513482.js} +1 -1
  563. package/dist/realtimekit-ui/{p-74e1b5a6.entry.js → p-136d3fe2.entry.js} +1 -1
  564. package/dist/realtimekit-ui/{p-61d3f74f.entry.js → p-186d21ad.entry.js} +1 -1
  565. package/dist/realtimekit-ui/{p-7786e9a7.entry.js → p-194ca93a.entry.js} +1 -1
  566. package/dist/realtimekit-ui/{p-e925ca8a.entry.js → p-1b6b75a7.entry.js} +1 -1
  567. package/dist/realtimekit-ui/p-1d9ba38f.entry.js +1 -0
  568. package/dist/realtimekit-ui/p-1dbbb8cb.entry.js +1 -0
  569. package/dist/realtimekit-ui/{p-c1b81873.entry.js → p-1e8a9290.entry.js} +1 -1
  570. package/dist/realtimekit-ui/{p-80c856cd.js → p-1ff96b0f.js} +1 -1
  571. package/dist/realtimekit-ui/{p-31f58b98.entry.js → p-245c5d74.entry.js} +1 -1
  572. package/dist/realtimekit-ui/{p-ba51770e.entry.js → p-25a5687a.entry.js} +1 -1
  573. package/dist/realtimekit-ui/p-29c66766.entry.js +1 -0
  574. package/dist/realtimekit-ui/{p-77e04fb7.entry.js → p-2afa0984.entry.js} +1 -1
  575. package/dist/realtimekit-ui/{p-62e0a141.entry.js → p-2be75f31.entry.js} +1 -1
  576. package/dist/realtimekit-ui/{p-36c8dfa0.entry.js → p-2e996dd5.entry.js} +1 -1
  577. package/dist/realtimekit-ui/{p-3a325310.entry.js → p-3229431b.entry.js} +1 -1
  578. package/dist/realtimekit-ui/p-328d53bd.js +1 -0
  579. package/dist/realtimekit-ui/p-334f3f6d.entry.js +1 -0
  580. package/dist/realtimekit-ui/{p-2a0ec1c6.entry.js → p-38fb340d.entry.js} +1 -1
  581. package/dist/realtimekit-ui/{p-6a45f305.js → p-3a14da51.js} +1 -1
  582. package/dist/realtimekit-ui/p-3a309e80.entry.js +1 -0
  583. package/dist/realtimekit-ui/{p-d0384d90.entry.js → p-3c003b71.entry.js} +1 -1
  584. package/dist/realtimekit-ui/{p-d7f16f24.entry.js → p-3cc15c7a.entry.js} +1 -1
  585. package/dist/realtimekit-ui/{p-8b189438.entry.js → p-3eb5a72d.entry.js} +1 -1
  586. package/dist/realtimekit-ui/p-423ff132.entry.js +1 -0
  587. package/dist/realtimekit-ui/p-55074d37.entry.js +1 -0
  588. package/dist/realtimekit-ui/{p-9ad2c746.entry.js → p-574fa8db.entry.js} +1 -1
  589. package/dist/realtimekit-ui/{p-9cbf286a.entry.js → p-59ac307d.entry.js} +1 -1
  590. package/dist/realtimekit-ui/{p-5a2d8313.entry.js → p-5cd2b5e0.entry.js} +1 -1
  591. package/dist/realtimekit-ui/p-605e418e.entry.js +1 -0
  592. package/dist/realtimekit-ui/{p-882d07c9.entry.js → p-63c32e2d.entry.js} +1 -1
  593. package/dist/realtimekit-ui/{p-95f05e26.entry.js → p-6407dc7e.entry.js} +1 -1
  594. package/dist/realtimekit-ui/p-6560e903.entry.js +1 -0
  595. package/dist/realtimekit-ui/{p-de75d48d.entry.js → p-6acda400.entry.js} +1 -1
  596. package/dist/realtimekit-ui/p-6f8f175b.entry.js +1 -0
  597. package/dist/realtimekit-ui/{p-61a16ccf.entry.js → p-731bcf94.entry.js} +1 -1
  598. package/dist/realtimekit-ui/{p-2b373e53.entry.js → p-740444e7.entry.js} +1 -1
  599. package/dist/realtimekit-ui/{p-6adb2de4.entry.js → p-75087c10.entry.js} +1 -1
  600. package/dist/realtimekit-ui/{p-93b84c22.js → p-79731cb6.js} +1 -1
  601. package/dist/realtimekit-ui/{p-e7b83772.entry.js → p-7aa48099.entry.js} +1 -1
  602. package/dist/realtimekit-ui/{p-11c964cf.entry.js → p-7c9ac5df.entry.js} +1 -1
  603. package/dist/realtimekit-ui/{p-3369f405.entry.js → p-8000d8de.entry.js} +1 -1
  604. package/dist/realtimekit-ui/p-81beeff4.entry.js +1 -0
  605. package/dist/realtimekit-ui/p-872a05b0.entry.js +1 -0
  606. package/dist/realtimekit-ui/{p-4eee77b0.entry.js → p-8bd79e77.entry.js} +1 -1
  607. package/dist/realtimekit-ui/{p-b387e9a1.entry.js → p-904119a0.entry.js} +1 -1
  608. package/dist/realtimekit-ui/{p-12e4cb4a.js → p-91d15089.js} +1 -1
  609. package/dist/realtimekit-ui/p-91efc377.entry.js +1 -0
  610. package/dist/realtimekit-ui/{p-d9cad67f.entry.js → p-9b206390.entry.js} +1 -1
  611. package/dist/realtimekit-ui/{p-0b8c47d9.entry.js → p-9b35d38b.entry.js} +1 -1
  612. package/dist/realtimekit-ui/{p-a1203856.entry.js → p-9b5c6928.entry.js} +1 -1
  613. package/dist/realtimekit-ui/{p-ae7319ac.entry.js → p-9c7449a0.entry.js} +1 -1
  614. package/dist/realtimekit-ui/{p-38aec474.entry.js → p-a37a936c.entry.js} +1 -1
  615. package/dist/realtimekit-ui/p-a417984b.entry.js +1 -0
  616. package/dist/realtimekit-ui/{p-643194e4.entry.js → p-a6bccc60.entry.js} +1 -1
  617. package/dist/realtimekit-ui/{p-4eba1baa.entry.js → p-a71320ec.entry.js} +1 -1
  618. package/dist/realtimekit-ui/p-ab5b09f9.entry.js +1 -0
  619. package/dist/realtimekit-ui/p-ae9de69a.js +1 -0
  620. package/dist/realtimekit-ui/{p-3eefefa3.entry.js → p-aef75bbb.entry.js} +1 -1
  621. package/dist/realtimekit-ui/{p-7f76de48.entry.js → p-b89736c6.entry.js} +1 -1
  622. package/dist/realtimekit-ui/{p-a4e223e8.entry.js → p-bf87c56f.entry.js} +1 -1
  623. package/dist/realtimekit-ui/{p-c5c965b8.entry.js → p-c09f774c.entry.js} +1 -1
  624. package/dist/realtimekit-ui/{p-c638f666.entry.js → p-c0b75ca2.entry.js} +1 -1
  625. package/dist/realtimekit-ui/{p-f0f6c282.entry.js → p-c33b0b90.entry.js} +1 -1
  626. package/dist/realtimekit-ui/{p-a9126c12.entry.js → p-c4fada74.entry.js} +1 -1
  627. package/dist/realtimekit-ui/{p-98ee3341.entry.js → p-c77d9110.entry.js} +1 -1
  628. package/dist/realtimekit-ui/{p-7613857e.entry.js → p-cb72ae59.entry.js} +1 -1
  629. package/dist/realtimekit-ui/{p-7b999408.entry.js → p-d543f03a.entry.js} +1 -1
  630. package/dist/realtimekit-ui/{p-949b2b6a.entry.js → p-d6071b1d.entry.js} +1 -1
  631. package/dist/realtimekit-ui/{p-1666857d.entry.js → p-d644eed7.entry.js} +1 -1
  632. package/dist/realtimekit-ui/{p-788f26c4.entry.js → p-d679ea25.entry.js} +1 -1
  633. package/dist/realtimekit-ui/{p-91ea043c.js → p-d7b92a52.js} +1 -1
  634. package/dist/realtimekit-ui/p-d7c040f0.entry.js +1 -0
  635. package/dist/realtimekit-ui/{p-09869644.entry.js → p-d9117aa2.entry.js} +1 -1
  636. package/dist/realtimekit-ui/{p-c7711712.entry.js → p-dfd41e7d.entry.js} +1 -1
  637. package/dist/realtimekit-ui/{p-2fc5ef84.entry.js → p-e16f5890.entry.js} +1 -1
  638. package/dist/realtimekit-ui/p-e1f2d163.entry.js +1 -0
  639. package/dist/realtimekit-ui/p-e829a20f.entry.js +1 -0
  640. package/dist/realtimekit-ui/{p-3d0c4257.entry.js → p-f0054be9.entry.js} +1 -1
  641. package/dist/realtimekit-ui/{p-61a53713.entry.js → p-f19fe2c3.entry.js} +1 -1
  642. package/dist/realtimekit-ui/p-f39b89a3.entry.js +1 -0
  643. package/dist/realtimekit-ui/{p-a319e81f.entry.js → p-f4025c97.entry.js} +1 -1
  644. package/dist/realtimekit-ui/{p-54a31e02.entry.js → p-f6cd4525.entry.js} +1 -1
  645. package/dist/realtimekit-ui/p-f89bb70f.js +1 -0
  646. package/dist/realtimekit-ui/{p-385fddbd.entry.js → p-fa39a651.entry.js} +1 -1
  647. package/dist/realtimekit-ui/realtimekit-ui.esm.js +1 -1
  648. package/dist/types/components/rtk-chat/rtk-chat.d.ts +7 -15
  649. package/dist/types/components/rtk-chat-composer-ui/rtk-chat-composer-ui.d.ts +0 -4
  650. package/dist/types/components/rtk-chat-composer-view/rtk-chat-composer-view.d.ts +1 -0
  651. package/dist/types/components/rtk-chat-messages-ui-paginated/rtk-chat-messages-ui-paginated.d.ts +4 -12
  652. package/dist/types/components/rtk-chat-toggle/rtk-chat-toggle.d.ts +4 -6
  653. package/dist/types/components/rtk-meeting/rtk-meeting.d.ts +4 -0
  654. package/dist/types/components/rtk-menu-item/rtk-menu-item.d.ts +2 -0
  655. package/dist/types/components/rtk-menu-list/rtk-menu-list.d.ts +2 -0
  656. package/dist/types/components/rtk-message-view/rtk-message-view.d.ts +7 -0
  657. package/dist/types/components/rtk-paginated-list/rtk-paginated-list.d.ts +55 -54
  658. package/dist/types/components/rtk-sidebar-ui/rtk-sidebar-ui.d.ts +0 -2
  659. package/dist/types/components/rtk-ui-provider/rtk-ui-provider.d.ts +4 -1
  660. package/dist/types/components.d.ts +90 -467
  661. package/dist/types/exports.d.ts +2 -1
  662. package/dist/types/lib/icons/default-icon-pack.d.ts +0 -2
  663. package/dist/types/lib/lang/default-language.d.ts +1 -4
  664. package/dist/types/lib/overrides.d.ts +16 -0
  665. package/dist/types/types/props.d.ts +0 -4
  666. package/dist/types/utils/chat.d.ts +1 -3
  667. package/dist/types/utils/flags.d.ts +0 -2
  668. package/dist/types/utils/sync-with-store/ui-store.d.ts +4 -1
  669. package/package.json +1 -1
  670. package/dist/cjs/rtk-channel-creator.cjs.entry.js +0 -163
  671. package/dist/cjs/rtk-channel-details.cjs.entry.js +0 -49
  672. package/dist/cjs/rtk-channel-header.cjs.entry.js +0 -83
  673. package/dist/cjs/rtk-channel-selector-ui.cjs.entry.js +0 -147
  674. package/dist/collection/components/rtk-channel-creator/rtk-channel-creator.css +0 -210
  675. package/dist/collection/components/rtk-channel-creator/rtk-channel-creator.js +0 -290
  676. package/dist/collection/components/rtk-channel-details/rtk-channel-details.css +0 -93
  677. package/dist/collection/components/rtk-channel-details/rtk-channel-details.js +0 -149
  678. package/dist/collection/components/rtk-channel-header/rtk-channel-header.css +0 -99
  679. package/dist/collection/components/rtk-channel-header/rtk-channel-header.js +0 -256
  680. package/dist/collection/components/rtk-channel-selector-ui/rtk-channel-selector-ui.css +0 -330
  681. package/dist/collection/components/rtk-channel-selector-ui/rtk-channel-selector-ui.js +0 -286
  682. package/dist/collection/components/rtk-channel-selector-view/rtk-channel-selector-view.css +0 -306
  683. package/dist/collection/components/rtk-channel-selector-view/rtk-channel-selector-view.js +0 -341
  684. package/dist/components/p-a9540d93.js +0 -357
  685. package/dist/components/p-adf73364.js +0 -85
  686. package/dist/components/p-d4e2ac64.js +0 -203
  687. package/dist/components/rtk-channel-creator.d.ts +0 -11
  688. package/dist/components/rtk-channel-creator.js +0 -214
  689. package/dist/components/rtk-channel-details.d.ts +0 -11
  690. package/dist/components/rtk-channel-details.js +0 -6
  691. package/dist/components/rtk-channel-header.d.ts +0 -11
  692. package/dist/components/rtk-channel-header.js +0 -151
  693. package/dist/components/rtk-channel-selector-ui.d.ts +0 -11
  694. package/dist/components/rtk-channel-selector-ui.js +0 -194
  695. package/dist/components/rtk-channel-selector-view.d.ts +0 -11
  696. package/dist/components/rtk-channel-selector-view.js +0 -6
  697. package/dist/esm/rtk-channel-creator.entry.js +0 -159
  698. package/dist/esm/rtk-channel-details.entry.js +0 -45
  699. package/dist/esm/rtk-channel-header.entry.js +0 -79
  700. package/dist/esm/rtk-channel-selector-ui.entry.js +0 -143
  701. package/dist/realtimekit-ui/p-0689d68b.entry.js +0 -1
  702. package/dist/realtimekit-ui/p-084b6f30.js +0 -1
  703. package/dist/realtimekit-ui/p-1bf58a84.entry.js +0 -1
  704. package/dist/realtimekit-ui/p-2f641bfa.entry.js +0 -1
  705. package/dist/realtimekit-ui/p-33228f0a.entry.js +0 -1
  706. package/dist/realtimekit-ui/p-38f4773b.entry.js +0 -1
  707. package/dist/realtimekit-ui/p-3e02ec0b.entry.js +0 -1
  708. package/dist/realtimekit-ui/p-481549ac.entry.js +0 -1
  709. package/dist/realtimekit-ui/p-50157a65.entry.js +0 -1
  710. package/dist/realtimekit-ui/p-50e861f9.entry.js +0 -1
  711. package/dist/realtimekit-ui/p-5383fe87.entry.js +0 -1
  712. package/dist/realtimekit-ui/p-53ac3d30.entry.js +0 -1
  713. package/dist/realtimekit-ui/p-57277553.entry.js +0 -1
  714. package/dist/realtimekit-ui/p-5dc40f1a.entry.js +0 -1
  715. package/dist/realtimekit-ui/p-60a29b69.entry.js +0 -1
  716. package/dist/realtimekit-ui/p-639ab9ad.entry.js +0 -1
  717. package/dist/realtimekit-ui/p-7a8ca3f2.entry.js +0 -1
  718. package/dist/realtimekit-ui/p-8b341608.entry.js +0 -1
  719. package/dist/realtimekit-ui/p-930f0255.entry.js +0 -1
  720. package/dist/realtimekit-ui/p-941f159e.entry.js +0 -1
  721. package/dist/realtimekit-ui/p-951a7b06.entry.js +0 -1
  722. package/dist/realtimekit-ui/p-aa70de39.entry.js +0 -1
  723. package/dist/realtimekit-ui/p-b564d931.entry.js +0 -1
  724. package/dist/realtimekit-ui/p-e62593a2.entry.js +0 -1
  725. package/dist/realtimekit-ui/p-e720b51e.js +0 -1
  726. package/dist/realtimekit-ui/p-e87928f7.js +0 -1
  727. package/dist/realtimekit-ui/p-f40a55e3.entry.js +0 -1
  728. package/dist/realtimekit-ui/p-f645b8bb.entry.js +0 -1
  729. package/dist/types/components/rtk-channel-creator/rtk-channel-creator.d.ts +0 -37
  730. package/dist/types/components/rtk-channel-details/rtk-channel-details.d.ts +0 -16
  731. package/dist/types/components/rtk-channel-header/rtk-channel-header.d.ts +0 -32
  732. package/dist/types/components/rtk-channel-selector-ui/rtk-channel-selector-ui.d.ts +0 -35
  733. package/dist/types/components/rtk-channel-selector-view/rtk-channel-selector-view.d.ts +0 -62
@@ -1,3 +1,29 @@
1
+ /**
2
+ * NOTE(ikabra): INFINITE SCROLL IMPLEMENTATION:
3
+ *
4
+ * Uses scrollend listener for 2way scrolling.
5
+ * Empty divs ($topRef, $bottomRef) act as scroll triggers to fetch new messages.
6
+ *
7
+ * UPWARD SCROLLING:
8
+ * - Fetch top anchor (element currently visible to the user near top)
9
+ * - Fetch older messages, push to end of 2D array
10
+ * - When exceeding pagesAllowed, delete pages and scroll back to anchor
11
+ *
12
+ * DOWNWARD SCROLLING:
13
+ * - Fetch bottom anchor (element currently visible to the user near bottom)
14
+ * - Fetch new page, insert at the start
15
+ * - Update timestamps & firstEmptyIndex, then rerender
16
+ * - When exceeding pagesAllowed, delete pages and scroll back to anchor
17
+ *
18
+ * ADDING NEW NODES:
19
+ * - If no pages exist, load old page
20
+ * - If on 1st page, append messages till page size is full and then load new page
21
+ *
22
+ * DELETE NODE:
23
+ * - If deleting the only available node, reset to initial state
24
+ * - If page is empty, delete it
25
+ * - Update timestamp curors
26
+ */
1
27
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
28
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
29
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
@@ -8,278 +34,312 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
34
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
35
  return c > 3 && r && Object.defineProperty(target, key, r), r;
10
36
  };
11
- import { Host, h, writeTask } from "@stencil/core";
12
- import { debounce } from "lodash-es";
37
+ import { Host, h } from "@stencil/core";
13
38
  import { defaultIconPack } from "../../lib/icons";
14
39
  import { useLanguage } from "../../lib/lang";
15
40
  import { SyncWithStore } from "../../utils/sync-with-store";
16
- import { smoothScrollToBottom } from "../../utils/scroll";
41
+ import { debounce } from "lodash-es";
17
42
  export class RtkPaginatedList {
18
43
  constructor() {
44
+ // Timestamp pertaining to the oldest stored message
45
+ this.oldestPaginatedTimestamp = null;
46
+ // Timestamp pertaining to the latest stored message
47
+ this.latestPaginatedTimestamp = null;
48
+ // Timestamp pertaining to the latest message stored in backend
49
+ this.latestMessageTimestamp = null;
50
+ // the length of pages will always be pageSize + 2
51
+ this.pages = [];
52
+ // Controls whether to keep auto-scrolling when a new page load.
53
+ this.shouldScrollToBottom = false;
54
+ // Shows "scroll to bottom" button when new nodes arrive and autoscroll is off.
55
+ this.showNewMessagesCTR = false;
56
+ /** label to show when empty */
57
+ this.emptyListLabel = null;
19
58
  /** Icon pack */
20
59
  this.iconPack = defaultIconPack;
21
60
  /** Language */
22
61
  this.t = useLanguage();
23
- /** label to show when empty */
24
- this.emptyListLabel = null;
62
+ this.rerenderBoolean = false;
63
+ this.showEmptyListLabel = false;
25
64
  this.isLoading = false;
26
65
  this.isLoadingTop = false;
27
66
  this.isLoadingBottom = false;
28
- this.hasMoreDataAtTop = false;
29
- this.rerenderBoolean = false;
30
- /**
31
- * This gets disabled when the user scrolls up and the bottom node
32
- * is not visible anymore.
33
- */
34
- this.shouldRenderNewNodes = true;
35
- /**
36
- * This gets disabled when the user scrolls up and the bottom node
37
- * is not visible anymore.
38
- */
39
- this.hasNewNodesToRender = false;
40
- this.showEmptyListLabel = false;
41
- /**
42
- * This is a private variable not a state
43
- * since we want to debounce rerenders
44
- *
45
- * A list of pages where each page contains a number of Nodes
46
- * [
47
- * [Node 1, Node 2, Node 3.... Node N],
48
- * [Node 1, Node 2, Node 3.... Node N],
49
- * ]
50
- */
51
- this.pagesToRender = [[]];
52
- this.currentTime = () => {
53
- return new Date().getTime();
54
- };
55
- this.observe = (el) => {
56
- if (!el)
57
- return;
58
- this.intersectionObserver.observe(el);
67
+ // Tells us if we need to scroll to a specific anchor after a rerender
68
+ this.pendingScrollAnchor = null;
69
+ this.isInView = (el) => {
70
+ const rect = el.getBoundingClientRect();
71
+ return rect.top >= 0 && rect.bottom <= window.innerHeight;
59
72
  };
60
73
  }
61
74
  /**
62
- * On a new node created
75
+ * Adds a new node to the beginning of the paginated list
76
+ * @param {DataNode} node - The data node to add to the beginning of the list
63
77
  */
64
78
  async onNewNode(node) {
65
- if (!this.shouldRenderNewNodes) {
66
- this.hasNewNodesToRender = true;
67
- return;
79
+ // if there are no pages, append to the first page
80
+ if (this.pages.length < 1) {
81
+ this.oldestPaginatedTimestamp = node.timeMs;
82
+ this.pages.unshift([node]);
83
+ this.latestPaginatedTimestamp = node.timeMs;
84
+ this.latestMessageTimestamp = node.timeMs;
85
+ this.rerender();
86
+ if (this.autoScroll)
87
+ this.$bottomRef.scrollIntoView({ behavior: 'smooth' });
68
88
  }
69
- this.addNodeToRender(node, false);
70
- this.rerender();
89
+ else if (this.latestMessageTimestamp === this.latestPaginatedTimestamp) {
90
+ // append messages to the page if page has not reached full capacity
91
+ if (this.pages[0].length < this.pageSize) {
92
+ this.pages[0].unshift(node);
93
+ this.latestPaginatedTimestamp = node.timeMs;
94
+ this.latestMessageTimestamp = node.timeMs;
95
+ this.rerender();
96
+ }
97
+ else {
98
+ // if page is at full capacity, load next page
99
+ this.pages.unshift([node]);
100
+ this.latestPaginatedTimestamp = node.timeMs;
101
+ this.latestMessageTimestamp = node.timeMs;
102
+ // remove pages if out of bounds
103
+ if (this.pages.length > this.pagesAllowed)
104
+ this.pages.pop();
105
+ // update timestamps
106
+ const lastPage = this.pages[this.pages.length - 1];
107
+ this.oldestPaginatedTimestamp = lastPage[lastPage.length - 1].timeMs;
108
+ this.rerender();
109
+ }
110
+ if (this.autoScroll)
111
+ this.$bottomRef.scrollIntoView({ behavior: 'smooth' });
112
+ }
113
+ else {
114
+ if (this.autoScroll)
115
+ this.scrollToBottom();
116
+ }
117
+ this.pendingScrollAnchor = null;
71
118
  }
72
119
  /**
73
- * On node deleted
74
- */
75
- async onNodeDelete(key) {
76
- const oldLength = this.pagesToRender.flat().length;
77
- this.pagesToRender = this.pagesToRender.map((page) => page.filter((item) => item.id !== key));
78
- if (oldLength !== this.pagesToRender.flat().length) {
120
+ * Deletes a node anywhere from the list
121
+ * @param {string} id - The id of the node to delete
122
+ * */
123
+ async onNodeDelete(id) {
124
+ var _a, _b;
125
+ for (let i = this.pages.length - 1; i >= 0; i--) {
126
+ const index = this.pages[i].findIndex((node) => node.id === id);
127
+ // if message not found, move on
128
+ if (index === -1)
129
+ continue;
130
+ // delete message
131
+ this.pages[i].splice(index, 1);
132
+ // if page is empty, delete it
133
+ if (this.pages[i].length === 0)
134
+ this.pages.splice(i, 1);
135
+ // update timestamps
136
+ const firstPage = this.pages[0];
137
+ const lastPage = this.pages[this.pages.length - 1];
138
+ this.latestPaginatedTimestamp = (_a = firstPage === null || firstPage === void 0 ? void 0 : firstPage[0]) === null || _a === void 0 ? void 0 : _a.timeMs;
139
+ this.oldestPaginatedTimestamp = (_b = lastPage === null || lastPage === void 0 ? void 0 : lastPage[lastPage.length - 1]) === null || _b === void 0 ? void 0 : _b.timeMs;
140
+ // if I have deleted the latest message, update latestMessageTimestamp
141
+ if (index === 0 && i === 0)
142
+ this.latestMessageTimestamp = this.latestPaginatedTimestamp;
79
143
  this.rerender();
144
+ break;
80
145
  }
81
146
  }
82
147
  /**
83
- * On node updated
84
- */
85
- async onNodeUpdate(key, newItem) {
86
- let shouldRerender = false;
87
- this.pagesToRender = this.pagesToRender.map((page) => page.map((item) => {
88
- if (item.id === key) {
89
- shouldRerender = true;
90
- return newItem;
91
- }
92
- return item;
93
- }));
94
- if (shouldRerender)
148
+ * Updates a new node anywhere in the list
149
+ * @param {string} id - The id of the node to update
150
+ * @param {DataNode} node - The updated data node
151
+ * */
152
+ async onNodeUpdate(id, node) {
153
+ for (let i = this.pages.length - 1; i >= 0; i--) {
154
+ const index = this.pages[i].findIndex((node) => node.id === id);
155
+ // if message not found, move on
156
+ if (index === -1)
157
+ continue;
158
+ // edit message
159
+ this.pages[i][index] = node;
95
160
  this.rerender();
96
- }
97
- onItemChanged(newItemId, oldItemId) {
98
- if (newItemId !== oldItemId) {
99
- this.pagesToRender = [[]];
100
- this.loadFirstPage().then(() => this.rerender());
161
+ break;
101
162
  }
102
163
  }
103
164
  connectedCallback() {
104
165
  this.rerender = debounce(this.rerender.bind(this), 50, { maxWait: 200 });
105
- this.autoScroll = true;
106
- this.intersectionObserver = new IntersectionObserver((entries) => {
107
- writeTask(() => {
108
- for (const entry of entries) {
109
- if (entry.target.id === 'bottom-scroll') {
110
- if (entry.isIntersecting)
111
- this.loadBottom();
112
- else
113
- this.shouldRenderNewNodes = false;
114
- }
115
- if (entry.target.id === 'top-scroll' && entry.isIntersecting) {
116
- this.loadTop();
117
- }
118
- }
119
- });
120
- });
121
- }
122
- disconnectedCallback() {
123
- this.intersectionObserver.disconnect();
124
166
  }
125
167
  componentDidLoad() {
126
- /**
127
- * Adding observes here so that on the first render we scroll down
128
- * and shouldRenderNewNodes remains true
129
- */
130
- this.loadFirstPage();
131
- this.observe(this.$topRef);
132
- this.observe(this.$bottomRef);
168
+ // initial load
169
+ this.loadPrevPage();
170
+ if (this.$containerRef) {
171
+ this.$containerRef.onscrollend = async () => {
172
+ // do not do anything if we are scrolling to bottom
173
+ if (this.shouldScrollToBottom)
174
+ return;
175
+ // handle top and bottom scroll
176
+ if (this.isInView(this.$bottomRef) &&
177
+ this.latestMessageTimestamp > this.latestPaginatedTimestamp) {
178
+ await this.loadNextPage();
179
+ }
180
+ else if (this.isInView(this.$topRef)) {
181
+ this.showNewMessagesCTR = true;
182
+ await this.loadPrevPage();
183
+ }
184
+ };
185
+ }
133
186
  }
134
187
  componentDidRender() {
135
- if (this.shouldRenderNewNodes && this.autoScroll)
136
- smoothScrollToBottom(this.$paginatedList);
137
- }
138
- loadFirstPage() {
139
- return this.loadPage(this.currentTime(), this.pageSize, true, (data) => {
140
- if (data.length === 0) {
141
- this.showEmptyListLabel = true;
142
- }
143
- });
144
- }
145
- loadTop() {
146
- /**
147
- * If there is only one unfilled page or no page, no need to check
148
- * for top since it will be empty
149
- */
150
- if (this.pagesToRender.length === 0)
151
- return;
152
- if (this.pagesToRender.length === 1 && this.pagesToRender[0].length < this.pageSize)
188
+ if (!this.pendingScrollAnchor)
153
189
  return;
154
- /**
155
- * TODO: Make this more flexible currently this only works with chat
156
- */
157
- const oldestVNode = this.pagesToRender[0][0];
158
- const oldestTimestamp = oldestVNode.timeMs;
159
- // TODO: scrollIntoView
160
- const onPageRendered = () => { }; // oldestVNode.$elm$?.scrollIntoView();
161
- this.isLoadingTop = true;
162
- this.loadPage(oldestTimestamp - 1, this.pageSize, true, onPageRendered, 'top');
190
+ const anchor = this.pendingScrollAnchor;
191
+ this.pendingScrollAnchor = null;
192
+ this.restoreScrollToAnchor(anchor);
163
193
  }
164
- loadBottom() {
165
- /**
166
- * If there is only one unfilled page or no page, no need to check
167
- * for top since it will be empty
168
- */
169
- if (this.pagesToRender.length === 0) {
170
- this.shouldRenderNewNodes = true;
194
+ async loadPrevPage() {
195
+ if (this.isLoading)
171
196
  return;
172
- }
173
- if (this.pagesToRender.length === 1 && this.pagesToRender[0].length < this.pageSize) {
174
- this.shouldRenderNewNodes = true;
197
+ const scrollAnchor = this.getScrollAnchor('top');
198
+ // if no old timestamp, it means we are at initial state
199
+ if (!this.oldestPaginatedTimestamp)
200
+ this.oldestPaginatedTimestamp = new Date().getTime();
201
+ // load data
202
+ this.isLoading = true;
203
+ this.isLoadingTop = true;
204
+ const data = await this.fetchData(this.oldestPaginatedTimestamp - 1, this.pageSize, true);
205
+ this.isLoading = false;
206
+ this.isLoadingTop = false;
207
+ // no more old messages to show, we are at the top of the page
208
+ if (!data.length)
175
209
  return;
210
+ // add old data to the end of the array
211
+ this.pages.push(data);
212
+ // clear old pages when we reach the limit
213
+ if (this.pages.length > this.pagesAllowed)
214
+ this.pages.shift();
215
+ // update timestamps
216
+ const lastPage = this.pages[this.pages.length - 1];
217
+ this.oldestPaginatedTimestamp = lastPage[lastPage.length - 1].timeMs;
218
+ this.latestPaginatedTimestamp = this.pages[0][0].timeMs;
219
+ if (!this.latestMessageTimestamp)
220
+ this.latestMessageTimestamp = this.latestPaginatedTimestamp;
221
+ this.rerender();
222
+ // fix scroll position
223
+ if (scrollAnchor)
224
+ this.pendingScrollAnchor = scrollAnchor;
225
+ }
226
+ async loadNextPage() {
227
+ if (this.isLoading)
228
+ return [];
229
+ // Do nothing. New timestamp needs to be assigned by loadPrevPage method
230
+ if (!this.latestPaginatedTimestamp) {
231
+ this.showNewMessagesCTR = false;
232
+ return [];
176
233
  }
177
- const newestVNode = this.pagesToRender.at(-1).at(-1);
178
- const newestTimestamp = newestVNode.timeMs;
179
- // TODO: scrollIntoView
180
- const onPageRendered = () => smoothScrollToBottom(this.$paginatedList);
234
+ this.isLoading = true;
181
235
  this.isLoadingBottom = true;
182
- this.loadPage(newestTimestamp + 1, this.pageSize, false, onPageRendered, 'bottom');
183
- }
184
- addNodeToRender(node, addToStart) {
185
- if (addToStart) {
186
- const firstPage = this.pagesToRender[0];
187
- if (firstPage && (firstPage === null || firstPage === void 0 ? void 0 : firstPage.length) < this.pageSize) {
188
- /**
189
- * If first page is not full then just add to that page
190
- */
191
- firstPage.unshift(node);
192
- }
193
- else {
194
- /**
195
- * If first page is full then add a new page to the start
196
- */
197
- const newPage = [node];
198
- this.pagesToRender.unshift(newPage);
199
- this.removeLastPageIfNeeded(false);
200
- }
236
+ const scrollAnchor = this.getScrollAnchor('bottom');
237
+ const data = await this.fetchData(this.latestPaginatedTimestamp + 1, this.pageSize, false);
238
+ this.isLoading = false;
239
+ this.isLoadingBottom = false;
240
+ // no more new messages to load
241
+ if (!data.length) {
242
+ this.latestMessageTimestamp = this.latestPaginatedTimestamp;
243
+ this.showNewMessagesCTR = false;
244
+ return [];
201
245
  }
202
- else {
203
- const [lastPage] = this.pagesToRender.slice(-1);
204
- if (lastPage && (lastPage === null || lastPage === void 0 ? void 0 : lastPage.length) < this.pageSize) {
205
- /**
206
- * If last page is not full then just add it
207
- */
208
- lastPage.push(node);
246
+ // load new messages and append to the start
247
+ const incoming = [...data].reverse();
248
+ if (this.pages.length === 0)
249
+ this.pages.unshift([]);
250
+ const firstPage = this.pages[0];
251
+ const spaceInFirstPage = this.pageSize - firstPage.length;
252
+ if (spaceInFirstPage > 0) {
253
+ const toFill = incoming.splice(0, spaceInFirstPage);
254
+ firstPage.unshift(...toFill);
255
+ }
256
+ while (incoming.length > 0) {
257
+ this.pages.unshift(incoming.splice(0, this.pageSize));
258
+ }
259
+ // remove pages if out of bounds
260
+ if (this.pages.length > this.pagesAllowed)
261
+ this.pages.pop();
262
+ // update timestamps
263
+ const lastPage = this.pages[this.pages.length - 1];
264
+ this.oldestPaginatedTimestamp = lastPage[lastPage.length - 1].timeMs;
265
+ this.latestPaginatedTimestamp = this.pages[0][0].timeMs;
266
+ this.rerender();
267
+ this.pendingScrollAnchor = scrollAnchor;
268
+ return data;
269
+ }
270
+ // Find the element that is closest to the top/bottom of the container
271
+ getScrollAnchor(edge = 'top') {
272
+ if (!this.$containerRef)
273
+ return null;
274
+ const containerRect = this.$containerRef.getBoundingClientRect();
275
+ const candidates = Array.from(this.$containerRef.querySelectorAll('[id]')).filter((el) => el.id !== 'top-scroll' && el.id !== 'bottom-scroll');
276
+ let best = null;
277
+ for (const el of candidates) {
278
+ const rect = el.getBoundingClientRect();
279
+ const isVisibleInContainer = rect.bottom > containerRect.top && rect.top < containerRect.bottom;
280
+ if (!isVisibleInContainer)
281
+ continue;
282
+ if (edge === 'top') {
283
+ const offsetTop = rect.top - containerRect.top;
284
+ if (best == null || (best.edge === 'top' && offsetTop < best.offsetTop)) {
285
+ best = { id: el.id, edge: 'top', offsetTop };
286
+ }
209
287
  }
210
288
  else {
211
- /**
212
- * If last page is full add a new page with just
213
- * this node
214
- */
215
- const newPage = [node];
216
- this.pagesToRender.push(newPage);
217
- this.removeLastPageIfNeeded(true);
289
+ const offsetBottom = containerRect.bottom - rect.bottom;
290
+ if (best == null || (best.edge === 'bottom' && offsetBottom < best.offsetBottom)) {
291
+ best = { id: el.id, edge: 'bottom', offsetBottom };
292
+ }
218
293
  }
219
294
  }
295
+ return best;
220
296
  }
221
- /**
222
- * @param start
223
- * @param end
224
- * @param reversed Defines whether to add the page at the beginning or the end
225
- * @param onPageLoaded Callback for when all new nodes are rendered
226
- * @param direction Indicates if loading from 'top' or 'bottom'
227
- */
228
- async loadPage(timestamp, size, reversed, onPageRendered = () => { }, direction) {
229
- this.isLoading = true;
230
- const data = (await this.fetchData(timestamp, size, reversed));
231
- this.isLoading = false;
232
- if (direction === 'top') {
233
- this.isLoadingTop = false;
234
- this.hasMoreDataAtTop = (data === null || data === void 0 ? void 0 : data.length) > 0;
297
+ //instant scroll to anchor to make sure we are at the same position after a rerender
298
+ restoreScrollToAnchor(anchor) {
299
+ if (!this.$containerRef)
300
+ return;
301
+ // make element id safe to use inside a CSS selector
302
+ const escapeId = (id) => {
303
+ var _a;
304
+ const cssEscape = (_a = globalThis.CSS) === null || _a === void 0 ? void 0 : _a.escape;
305
+ return typeof cssEscape === 'function'
306
+ ? cssEscape(id)
307
+ : id.replace(/[^a-zA-Z0-9_-]/g, '\\$&');
308
+ };
309
+ const el = this.$containerRef.querySelector(`#${escapeId(anchor.id)}`);
310
+ if (!el)
311
+ return;
312
+ const containerRect = this.$containerRef.getBoundingClientRect();
313
+ const rect = el.getBoundingClientRect();
314
+ if (anchor.edge === 'top') {
315
+ const newOffsetTop = rect.top - containerRect.top;
316
+ this.$containerRef.scrollTop += newOffsetTop - anchor.offsetTop;
235
317
  }
236
- if (direction === 'bottom') {
237
- this.isLoadingBottom = false;
318
+ else {
319
+ const newOffsetBottom = containerRect.bottom - rect.bottom;
320
+ this.$containerRef.scrollTop += anchor.offsetBottom - newOffsetBottom;
238
321
  }
239
- if (!(data === null || data === void 0 ? void 0 : data.length)) {
240
- /**
241
- * While scrolling down if there were no new items found
242
- * then start rendering new nodes;
243
- */
244
- if (!reversed) {
245
- this.hasNewNodesToRender = false;
246
- this.shouldRenderNewNodes = true;
247
- }
248
- onPageRendered([]);
249
- return;
322
+ }
323
+ // this method is called recursively based on shouldScrollToBottom (see loadNextPage)
324
+ async scrollToBottom() {
325
+ this.shouldScrollToBottom = true;
326
+ while (this.shouldScrollToBottom) {
327
+ const response = await this.loadNextPage();
328
+ this.$bottomRef.scrollIntoView({ behavior: 'smooth' });
329
+ if (response.length === 0)
330
+ this.shouldScrollToBottom = false;
250
331
  }
251
- data.forEach((node) => this.addNodeToRender(node, reversed));
252
- this.rerender();
253
- onPageRendered(data);
254
332
  }
255
333
  rerender() {
256
334
  this.rerenderBoolean = !this.rerenderBoolean;
257
335
  }
258
- removeLastPageIfNeeded(removeFromStart) {
259
- if (this.pagesToRender.length > this.pagesAllowed) {
260
- if (removeFromStart)
261
- this.pagesToRender.shift();
262
- else
263
- this.pagesToRender.pop();
264
- }
265
- }
266
- onDownArrowClicked() {
267
- /**
268
- * Load the freshest pages
269
- */
270
- this.loadBottom();
271
- }
272
- onLoadMoreOnTopClicked() {
273
- this.loadTop();
274
- }
275
336
  render() {
276
- var _a;
277
337
  /**
278
- * div.container is flex=column-reverse
279
- * which is why div#bottom-scroll comes before div#top-scroll
280
- * div.page-wrapper prevents reversal of messages
338
+ * div.container is flex=column-reversewhich is why div#bottom-scroll comes before div#top-scroll
281
339
  */
282
- return (h(Host, { key: '23e10f12b079213650cf9c947d30650ba8c95a4d' }, h("div", { key: 'b5406069fd69ff117b19d437184c38b3c7d2fc28', class: "scrollbar container", part: "container", ref: (el) => (this.$paginatedList = el) }, h("div", { key: '7be947f2409ff810e0d10beea53ace8fdec334ce', class: { 'show-new-messages-ctr': true, active: !this.shouldRenderNewNodes } }, h("rtk-button", { key: '45c43d6ca1cc39376334dffa10f3f2c137d65add', class: "show-new-messages", kind: "icon", variant: "secondary", part: "show-new-messages", onClick: () => this.onDownArrowClicked() }, h("rtk-icon", { key: '519b0db80f7d16cc4d03983e227d4897a5868ec9', icon: this.iconPack.chevron_down }))), h("div", { key: '53691e3943b90ef9e422c8da8f5facaa23f01920', class: "smallest-dom-element", id: "bottom-scroll", ref: (el) => (this.$bottomRef = el) }), this.isLoadingBottom && h("rtk-spinner", { key: '2a393cb0bbb07c356144464dcc7c597f5cc9771b', size: "sm" }), this.isLoading && this.pagesToRender.flat().length === 0 && h("rtk-spinner", { key: '4ce03be69368db0d6d0d4ad079b14f2c7d93f26d', size: "lg" }), this.pagesToRender.flat().length === 0 && this.showEmptyListLabel ? (h("div", { class: "empty-list" }, (_a = this.emptyListLabel) !== null && _a !== void 0 ? _a : this.t('list.empty'))) : (h("div", { class: "page-wrapper" }, this.pagesToRender.map((page) => this.createNodes(page)))), this.hasMoreDataAtTop && !this.isLoadingTop && (h("div", { key: '5c85806854687efe098e4bd6d06d109060445378', class: "load-more-on-top-container" }, h("rtk-button", { key: '6d73a030fad5ba133aa2841b2feb196646592ada', class: "load-more-icon", kind: "icon", variant: "secondary", part: "load-more-icon", onClick: () => this.onLoadMoreOnTopClicked() }, h("rtk-icon", { key: '61a4f376749938df280e5c734dd3fa8a9b0b7201', icon: this.iconPack.chevron_up })))), this.isLoadingTop && h("rtk-spinner", { key: '3e55b99c60ed7bc2cd937091a33663dd19c9ca68', size: "sm" }), h("div", { key: 'a69e0a3a26d295783f4f729b33770b206ab5d46b', class: "smallest-dom-element", id: "top-scroll", ref: (el) => (this.$topRef = el) }))));
340
+ return (h(Host, { key: '90112894b4d06b91240bcf4c1dfadad784097ec4' }, h("div", { key: '339f02629a39ce0f7d2552325b9f6a7c82ffa036', class: "scrollbar container", part: "container", ref: (el) => (this.$containerRef = el) }, h("div", { key: '10de785a969cac74d840e0311087b85b67e97fb6', class: { 'show-new-messages-ctr': true, active: this.showNewMessagesCTR } }, h("rtk-button", { key: '68991f70a24417ca79d6583cca50f2dd9f55892d', class: "show-new-messages", kind: "icon", variant: "secondary", part: "show-new-messages", onClick: () => {
341
+ this.scrollToBottom();
342
+ } }, this.shouldScrollToBottom ? (h("rtk-spinner", { size: "sm" })) : (h("rtk-icon", { icon: this.iconPack.chevron_down })))), h("div", { key: '24098a445c1a9b1a3ef77436988c36c8f2a8c205', class: "smallest-dom-element", id: "bottom-scroll", ref: (el) => (this.$bottomRef = el) }), this.isLoadingBottom && this.pages.length > 0 && h("rtk-spinner", { key: '93c029599cf61fb61ae57651064f4f0a8c7ac39b', size: "sm" }), this.isLoading && this.pages.length < 1 && h("rtk-spinner", { key: 'd49e8bbbf34036bb6559b5b0e5c54d32513f6bc6', size: "lg" }), !this.isLoading && this.pages.flat().length === 0 ? (h("div", { class: "empty-list" }, this.t('list.empty'))) : (h("div", { class: "page-wrapper" }, this.pages.map((page, pageIndex) => (h("div", { class: "page", "data-page-index": pageIndex }, this.createNodes([...page].reverse())))))), this.isLoadingTop && this.pages.length > 0 && h("rtk-spinner", { key: '067d8da823c27e3c5fb18f138c58eb537a4b67f5', size: "sm" }), h("div", { key: '16fef008d5831bd5f6b4136e2a58cccc34e08064', class: "smallest-dom-element", id: "top-scroll", ref: (el) => (this.$topRef = el) }))));
283
343
  }
284
344
  static get is() { return "rtk-paginated-list"; }
285
345
  static get encapsulation() { return "shadow"; }
@@ -333,6 +393,26 @@ export class RtkPaginatedList {
333
393
  "attribute": "pages-allowed",
334
394
  "reflect": false
335
395
  },
396
+ "emptyListLabel": {
397
+ "type": "string",
398
+ "mutable": false,
399
+ "complexType": {
400
+ "original": "string",
401
+ "resolved": "string",
402
+ "references": {}
403
+ },
404
+ "required": false,
405
+ "optional": false,
406
+ "docs": {
407
+ "tags": [],
408
+ "text": "label to show when empty"
409
+ },
410
+ "getter": false,
411
+ "setter": false,
412
+ "attribute": "empty-list-label",
413
+ "reflect": false,
414
+ "defaultValue": "null"
415
+ },
336
416
  "fetchData": {
337
417
  "type": "unknown",
338
418
  "mutable": false,
@@ -421,7 +501,7 @@ export class RtkPaginatedList {
421
501
  "mutable": false,
422
502
  "complexType": {
423
503
  "original": "IconPack",
424
- "resolved": "{ people: string; people_checked: string; chat: string; poll: string; participants: string; rocket: string; call_end: string; share: string; mic_on: string; mic_off: string; video_on: string; video_off: string; share_screen_start: string; share_screen_stop: string; share_screen_person: string; clock: string; dismiss: string; send: string; search: string; more_vertical: string; chevron_down: string; chevron_up: string; chevron_left: string; chevron_right: string; settings: string; wifi: string; speaker: string; speaker_off: string; download: string; full_screen_maximize: string; full_screen_minimize: string; copy: string; attach: string; image: string; emoji_multiple: string; image_off: string; disconnected: string; wand: string; recording: string; subtract: string; stop_recording: string; warning: string; pin: string; pin_off: string; spinner: string; breakout_rooms: string; add: string; shuffle: string; edit: string; delete: string; back: string; save: string; web: string; checkmark: string; spotlight: string; join_stage: string; leave_stage: string; pip_off: string; pip_on: string; signal_1: string; signal_2: string; signal_3: string; signal_4: string; signal_5: string; start_livestream: string; stop_livestream: string; viewers: string; debug: string; info: string; devices: string; horizontal_dots: string; ai_sparkle: string; meeting_ai: string; create_channel: string; create_channel_illustration: string; captionsOn: string; captionsOff: string; play: string; pause: string; fastForward: string; minimize: string; maximize: string; }",
504
+ "resolved": "{ people: string; people_checked: string; chat: string; poll: string; participants: string; rocket: string; call_end: string; share: string; mic_on: string; mic_off: string; video_on: string; video_off: string; share_screen_start: string; share_screen_stop: string; share_screen_person: string; clock: string; dismiss: string; send: string; search: string; more_vertical: string; chevron_down: string; chevron_up: string; chevron_left: string; chevron_right: string; settings: string; wifi: string; speaker: string; speaker_off: string; download: string; full_screen_maximize: string; full_screen_minimize: string; copy: string; attach: string; image: string; emoji_multiple: string; image_off: string; disconnected: string; wand: string; recording: string; subtract: string; stop_recording: string; warning: string; pin: string; pin_off: string; spinner: string; breakout_rooms: string; add: string; shuffle: string; edit: string; delete: string; back: string; save: string; web: string; checkmark: string; spotlight: string; join_stage: string; leave_stage: string; pip_off: string; pip_on: string; signal_1: string; signal_2: string; signal_3: string; signal_4: string; signal_5: string; start_livestream: string; stop_livestream: string; viewers: string; debug: string; info: string; devices: string; horizontal_dots: string; ai_sparkle: string; meeting_ai: string; captionsOn: string; captionsOff: string; play: string; pause: string; fastForward: string; minimize: string; maximize: string; }",
425
505
  "references": {
426
506
  "IconPack": {
427
507
  "location": "import",
@@ -445,7 +525,7 @@ export class RtkPaginatedList {
445
525
  "mutable": false,
446
526
  "complexType": {
447
527
  "original": "RtkI18n",
448
- "resolved": "(key: \"pin\" | \"unpin\" | \"kick\" | \"ended\" | \"disconnected\" | \"failed\" | \"type\" | \"end\" | \"joined\" | \"pinned\" | \"join\" | \"participants\" | \"logo\" | \"audio\" | \"search\" | \"video\" | \"image\" | \"chat\" | \"polls\" | \"leave\" | \"close\" | \"plugins\" | \"screenshare\" | \"(you)\" | \"everyone\" | (string & {}) | \"about_call\" | \"screen\" | \"camera\" | \"dismiss\" | \"page\" | \"more\" | \"page.prev\" | \"page.next\" | \"layout\" | \"layout.auto\" | \"settings\" | \"file\" | \"connection\" | \"leave_confirmation\" | \"cancel\" | \"yes\" | \"you\" | \"to\" | \"mute\" | \"accept\" | \"pip_on\" | \"pip_off\" | \"viewers\" | \"create\" | \"ask\" | \"activate\" | \"requests\" | \"mic_off\" | \"disable_mic\" | \"mic_on\" | \"enable_mic\" | \"test\" | \"minimize\" | \"maximize\" | \"mute_all\" | \"mute_all.description\" | \"mute_all.header\" | \"mute_all.allow_unmute\" | \"video_off\" | \"disable_video\" | \"video_on\" | \"enable_video\" | \"offline\" | \"offline.description\" | \"failed.description\" | \"disconnected.description\" | \"participants.errors.empty_results\" | \"participants.empty_list\" | \"participants.no_pending_requests\" | \"participants.turn_off_video\" | \"polls.by\" | \"polls.question\" | \"polls.question.placeholder\" | \"polls.answers\" | \"polls.option\" | \"polls.option.placeholder\" | \"polls.results.anon\" | \"polls.results.hide\" | \"polls.create\" | \"polls.cancel\" | \"polls.empty\" | \"polls.errors.question_required\" | \"polls.errors.empty_option\" | \"screenshare.min_preview\" | \"screenshare.max_preview\" | \"screenshare.shared\" | \"screenshare.start\" | \"screenshare.stop\" | \"screenshare.error.unknown\" | \"screenshare.error.max_count\" | \"perm_denied\" | \"perm_denied.audio\" | \"perm_denied.video\" | \"perm_denied.screenshare\" | \"perm_denied.audio.chrome.message\" | \"perm_denied.video.chrome.message\" | \"perm_denied.screenshare.chrome.message\" | \"perm_denied.audio.safari.message\" | \"perm_denied.video.safari.message\" | \"perm_denied.screenshare.safari.message\" | \"perm_denied.audio.edge.message\" | \"perm_denied.video.edge.message\" | \"perm_denied.screenshare.edge.message\" | \"perm_denied.audio.microsoft edge.message\" | \"perm_denied.video.microsoft edge.message\" | \"perm_denied.screenshare.microsoft edge.message\" | \"perm_denied.audio.firefox.message\" | \"perm_denied.video.firefox.message\" | \"perm_denied.screenshare.firefox.message\" | \"perm_denied.audio.others.message\" | \"perm_denied.video.others.message\" | \"perm_denied.screenshare.others.message\" | \"perm_sys_denied\" | \"perm_sys_denied.audio\" | \"perm_sys_denied.video\" | \"perm_sys_denied.screenshare\" | \"perm_sys_denied.audio.macos.message\" | \"perm_sys_denied.video.macos.message\" | \"perm_sys_denied.screenshare.macos.message\" | \"perm_sys_denied.audio.ios.message\" | \"perm_sys_denied.video.ios.message\" | \"perm_sys_denied.screenshare.ios.message\" | \"perm_sys_denied.audio.windows.message\" | \"perm_sys_denied.video.windows.message\" | \"perm_sys_denied.screenshare.windows.message\" | \"perm_sys_denied.audio.android.message\" | \"perm_sys_denied.video.android.message\" | \"perm_sys_denied.screenshare.android.message\" | \"perm_sys_denied.audio.others.message\" | \"perm_sys_denied.video.others.message\" | \"perm_sys_denied.screenshare.others.message\" | \"perm_could_not_start\" | \"perm_could_not_start.audio\" | \"perm_could_not_start.video\" | \"perm_could_not_start.screenshare\" | \"perm_could_not_start.audio.message\" | \"perm_could_not_start.video.message\" | \"perm_could_not_start.screenshare.message\" | \"full_screen\" | \"full_screen.exit\" | \"waitlist.header_title\" | \"waitlist.body_text\" | \"waitlist.deny_request\" | \"waitlist.accept_request\" | \"waitlist.accept_all\" | \"stage_request.header_title\" | \"stage_request.deny_request\" | \"stage_request.accept_request\" | \"stage_request.accept_all\" | \"stage_request.deny_all\" | \"stage_request.approval_pending\" | \"stage_request.denied\" | \"stage_request.request\" | \"stage_request.requested\" | \"stage_request.cancel_request\" | \"stage_request.leave_stage\" | \"stage_request.request_tip\" | \"stage_request.leave_tip\" | \"stage_request.pending_tip\" | \"stage_request.denied_tip\" | \"stage.empty_host\" | \"stage.empty_host_summary\" | \"stage.empty_viewer\" | \"stage.remove_from_stage\" | \"stage.invited_notification\" | \"stage.add_to_stage\" | \"stage.join_title\" | \"stage.join_summary\" | \"stage.join_cancel\" | \"stage.join_confirm\" | \"setup_screen.join_in_as\" | \"setup_screen.your_name\" | \"stage.reconnecting\" | \"recording.label\" | \"recording.indicator\" | \"recording.started\" | \"recording.stopped\" | \"recording.paused\" | \"recording.error.start\" | \"recording.error.stop\" | \"recording.error.resume\" | \"recording.start\" | \"recording.stop\" | \"recording.resume\" | \"recording.starting\" | \"recording.stopping\" | \"recording.loading\" | \"recording.idle\" | \"audio_playback\" | \"audio_playback.title\" | \"audio_playback.description\" | \"breakout_rooms\" | \"breakout_rooms.room_config_header\" | \"breakout_rooms.join_breakout_header\" | \"breakout_rooms.empty\" | \"breakout_rooms.delete\" | \"breakout_rooms.switch\" | \"breakout_rooms.main_room\" | \"breakout_rooms.shuffle_participants\" | \"breakout_rooms.deselect\" | \"breakout_rooms.selected\" | \"breakout_rooms.num_of_rooms\" | \"breakout_rooms.approx\" | \"breakout_rooms.participants_per_room\" | \"breakout_rooms.division_text\" | \"breakout_rooms.start_breakout\" | \"breakout_rooms.close_breakout\" | \"breakout_rooms.update_breakout\" | \"breakout_rooms.discard_changes\" | \"breakout_rooms.room\" | \"breakout_rooms.rooms\" | \"breakout_rooms.room_name\" | \"breakout_rooms.edit_room_name\" | \"breakout_rooms.save_room_name\" | \"breakout_rooms.add_room\" | \"breakout_rooms.add_room_brief\" | \"breakout_rooms.select_all\" | \"breakout_rooms.unassign_all\" | \"breakout_rooms.assign\" | \"breakout_rooms.assign_participants\" | \"breakout_rooms.none_assigned\" | \"breakout_rooms.drag_drop_participants\" | \"breakout_rooms.click_drop_participants\" | \"breakout_rooms.status.assign_multiple\" | \"breakout_rooms.status.select_room\" | \"breakout_rooms.ephemeral_status.participants_assigned\" | \"breakout_rooms.ephemeral_status.participants_assigned_randomly\" | \"breakout_rooms.ephemeral_status.changes_discarded\" | \"breakout_rooms.confirm_modal.start_breakout.header\" | \"breakout_rooms.confirm_modal.start_breakout.content\" | \"breakout_rooms.confirm_modal.start_breakout.cancelText\" | \"breakout_rooms.confirm_modal.start_breakout.ctaText\" | \"breakout_rooms.confirm_modal.close_breakout.header\" | \"breakout_rooms.confirm_modal.close_breakout.content\" | \"breakout_rooms.confirm_modal.close_breakout.ctaText\" | \"breakout_rooms.move_reason.started_msg\" | \"breakout_rooms.move_reason.started_desc\" | \"breakout_rooms.move_reason.closed_msg\" | \"breakout_rooms.move_reason.closed_desc\" | \"breakout_rooms.move_reason.switch_room\" | \"breakout_rooms.move_reason.switch_main_room\" | \"breakout_rooms.all_assigned\" | \"breakout_rooms.empty_main_room\" | \"breakout_rooms.leave_confirmation\" | \"breakout_rooms.leave_confirmation.main_room_btn\" | \"ai\" | \"ai.meeting_ai\" | \"ai.home\" | \"ai.transcriptions\" | \"ai.personal\" | \"ai.caption_view\" | \"ai.chat.tooltip\" | \"ai.chat.summerise\" | \"ai.chat.agenda\" | \"search.could_not_find\" | \"search.empty\" | \"end.all\" | \"ended.rejected\" | \"ended.left\" | \"ended.kicked\" | \"ended.disconnected\" | \"ended.network\" | \"ended.unauthorized\" | \"network\" | \"network.reconnecting\" | \"network.delay_extended\" | \"network.disconnected\" | \"network.leaving\" | \"network.restored\" | \"network.delay\" | \"network.lost\" | \"network.lost_extended\" | \"livestream\" | \"livestream.indicator\" | \"livestream.skip\" | \"livestream.idle\" | \"livestream.starting\" | \"livestream.stopping\" | \"livestream.waiting_on_manual_ingestion\" | \"livestream.error.not_supported\" | \"livestream.error.not_found\" | \"livestream.error.unknown\" | \"livestream.error.sync\" | \"livestream.error.start\" | \"livestream.error.stop\" | \"livestream.go_live\" | \"livestream.end_live\" | \"livestream.error\" | \"cta.help\" | \"cta.continue\" | \"cta.reload\" | \"cta.confirmation\" | \"cta.system_settings\" | \"remote_access.empty\" | \"remote_access.requests\" | \"remote_access.allow\" | \"remote_access.grant\" | \"remote_access.indicator\" | \"chat.new\" | \"chat.max_limit_warning\" | \"chat.rate_limit_error\" | \"chat.new_channel\" | \"chat.channel_name\" | \"chat.member_name\" | \"chat.add_members\" | \"chat.delete_msg\" | \"chat.edit_msg\" | \"chat.send_msg\" | \"chat.send_attachment\" | \"chat.send_img\" | \"chat.send_file\" | \"chat.send_emoji\" | \"chat.update_msg\" | \"chat.channel_members\" | \"chat.img.loading\" | \"chat.error.img_not_found\" | \"chat.error.empty_results\" | \"chat.img.shared_by\" | \"chat.reply\" | \"chat.message_placeholder\" | \"chat.click_to_send\" | \"chat.search_msgs\" | \"chat.search_conversations\" | \"chat.start_conversation\" | \"chat.empty_search\" | \"chat.empty_channel\" | \"chat.cancel_upload\" | \"chat.view_chats\" | \"chat.everyone\" | \"chat.pinned_msgs\" | \"chat.toggle_pinned_msgs\" | \"date.today\" | \"date.yesteday\" | \"date.sunday\" | \"date.monday\" | \"date.tuesday\" | \"date.wednesday\" | \"date.thursday\" | \"date.friday\" | \"date.saturday\" | \"list.empty\" | \"grid.listening\" | \"transcript.off\" | \"transcript.on\" | \"settings.notification_sound\" | \"settings.microphone_input\" | \"settings.speaker_output\" | \"settings.mirror_video\" | \"settings.camera_off\" | \"dialog.close\" | \"notifications.joined\" | \"notifications.left\" | \"notifications.requesting_to_join_meeting\" | \"notifications.requested_to_join_stage\" | \"notifications.joined_stage\" | \"notifications.request_to_join_accepted\" | \"notifications.request_to_join_rejected\" | \"notifications.accept\" | \"notifications.new_poll_created_by\" | \"notifications.connected_to\" | \"notifications.plugin_switched_to\" | \"notifications.remote_control_requested\" | \"notifications.remote_control_request_sent\" | \"notifications.remote_control_request_accepted\" | \"notifications.remote_control_granted\" | \"notifications.remote_control_terminated\" | \"debugger.troubleshooting.label\" | \"debugger.quality.good\" | \"debugger.quality.average\" | \"debugger.quality.poor\" | \"debugger.stats.bitrate.label\" | \"debugger.stats.bitrate.description\" | \"debugger.stats.packet_loss.label\" | \"debugger.stats.packet_loss.description\" | \"debugger.stats.jitter.label\" | \"debugger.stats.jitter.description\" | \"debugger.stats.cpu_limitations.label\" | \"debugger.stats.cpu_limitations.description\" | \"debugger.stats.bandwidth_limitations.label\" | \"debugger.stats.bandwidth_limitations.description\" | \"debugger.audio.label\" | \"debugger.audio.troubleshooting.label\" | \"debugger.audio.messages.generating_report\" | \"debugger.audio.messages.enable_media\" | \"debugger.audio.sections.network_media\" | \"debugger.video.label\" | \"debugger.video.troubleshooting.label\" | \"debugger.video.messages.generating_report\" | \"debugger.video.messages.enable_media\" | \"debugger.video.sections.network_media\" | \"debugger.screenshare.label\" | \"debugger.screenshare.troubleshooting.label\" | \"debugger.screenshare.sections.network_media\" | \"debugger.screenshare.messages.generating_report\" | \"debugger.screenshare.messages.enable_media\" | \"debugger.system.label\" | \"debugger.system.troubleshooting.label\" | \"debugger.system.sections.battery\" | \"debugger.system.battery.level.label\" | \"debugger.system.battery.level.description\" | \"debugger.system.battery.charging.label\" | \"debugger.system.battery.charging.description\" | \"debugger.system.battery.charging.is_charging\" | \"debugger.system.battery.charging.is_not_charging\") => string",
528
+ "resolved": "(key: \"pin\" | \"unpin\" | \"kick\" | \"ended\" | \"disconnected\" | \"failed\" | \"type\" | \"end\" | \"joined\" | \"pinned\" | \"join\" | \"participants\" | \"logo\" | \"audio\" | \"search\" | \"video\" | \"image\" | \"chat\" | \"polls\" | \"leave\" | \"close\" | \"plugins\" | \"screenshare\" | \"(you)\" | \"everyone\" | (string & {}) | \"about_call\" | \"screen\" | \"camera\" | \"dismiss\" | \"page\" | \"more\" | \"page.prev\" | \"page.next\" | \"layout\" | \"layout.auto\" | \"settings\" | \"file\" | \"connection\" | \"leave_confirmation\" | \"cancel\" | \"yes\" | \"you\" | \"to\" | \"mute\" | \"accept\" | \"pip_on\" | \"pip_off\" | \"viewers\" | \"create\" | \"ask\" | \"activate\" | \"requests\" | \"mic_off\" | \"disable_mic\" | \"mic_on\" | \"enable_mic\" | \"test\" | \"minimize\" | \"maximize\" | \"mute_all\" | \"mute_all.description\" | \"mute_all.header\" | \"mute_all.allow_unmute\" | \"video_off\" | \"disable_video\" | \"video_on\" | \"enable_video\" | \"offline\" | \"offline.description\" | \"failed.description\" | \"disconnected.description\" | \"participants.errors.empty_results\" | \"participants.empty_list\" | \"participants.no_pending_requests\" | \"participants.turn_off_video\" | \"polls.by\" | \"polls.question\" | \"polls.question.placeholder\" | \"polls.answers\" | \"polls.option\" | \"polls.option.placeholder\" | \"polls.results.anon\" | \"polls.results.hide\" | \"polls.create\" | \"polls.cancel\" | \"polls.empty\" | \"polls.errors.question_required\" | \"polls.errors.empty_option\" | \"screenshare.min_preview\" | \"screenshare.max_preview\" | \"screenshare.shared\" | \"screenshare.start\" | \"screenshare.stop\" | \"screenshare.error.unknown\" | \"screenshare.error.max_count\" | \"perm_denied\" | \"perm_denied.audio\" | \"perm_denied.video\" | \"perm_denied.screenshare\" | \"perm_denied.audio.chrome.message\" | \"perm_denied.video.chrome.message\" | \"perm_denied.screenshare.chrome.message\" | \"perm_denied.audio.safari.message\" | \"perm_denied.video.safari.message\" | \"perm_denied.screenshare.safari.message\" | \"perm_denied.audio.edge.message\" | \"perm_denied.video.edge.message\" | \"perm_denied.screenshare.edge.message\" | \"perm_denied.audio.microsoft edge.message\" | \"perm_denied.video.microsoft edge.message\" | \"perm_denied.screenshare.microsoft edge.message\" | \"perm_denied.audio.firefox.message\" | \"perm_denied.video.firefox.message\" | \"perm_denied.screenshare.firefox.message\" | \"perm_denied.audio.others.message\" | \"perm_denied.video.others.message\" | \"perm_denied.screenshare.others.message\" | \"perm_sys_denied\" | \"perm_sys_denied.audio\" | \"perm_sys_denied.video\" | \"perm_sys_denied.screenshare\" | \"perm_sys_denied.audio.macos.message\" | \"perm_sys_denied.video.macos.message\" | \"perm_sys_denied.screenshare.macos.message\" | \"perm_sys_denied.audio.ios.message\" | \"perm_sys_denied.video.ios.message\" | \"perm_sys_denied.screenshare.ios.message\" | \"perm_sys_denied.audio.windows.message\" | \"perm_sys_denied.video.windows.message\" | \"perm_sys_denied.screenshare.windows.message\" | \"perm_sys_denied.audio.android.message\" | \"perm_sys_denied.video.android.message\" | \"perm_sys_denied.screenshare.android.message\" | \"perm_sys_denied.audio.others.message\" | \"perm_sys_denied.video.others.message\" | \"perm_sys_denied.screenshare.others.message\" | \"perm_could_not_start\" | \"perm_could_not_start.audio\" | \"perm_could_not_start.video\" | \"perm_could_not_start.screenshare\" | \"perm_could_not_start.audio.message\" | \"perm_could_not_start.video.message\" | \"perm_could_not_start.screenshare.message\" | \"full_screen\" | \"full_screen.exit\" | \"waitlist.header_title\" | \"waitlist.body_text\" | \"waitlist.deny_request\" | \"waitlist.accept_request\" | \"waitlist.accept_all\" | \"stage_request.header_title\" | \"stage_request.deny_request\" | \"stage_request.accept_request\" | \"stage_request.accept_all\" | \"stage_request.deny_all\" | \"stage_request.approval_pending\" | \"stage_request.denied\" | \"stage_request.request\" | \"stage_request.requested\" | \"stage_request.cancel_request\" | \"stage_request.leave_stage\" | \"stage_request.request_tip\" | \"stage_request.leave_tip\" | \"stage_request.pending_tip\" | \"stage_request.denied_tip\" | \"stage.empty_host\" | \"stage.empty_host_summary\" | \"stage.empty_viewer\" | \"stage.remove_from_stage\" | \"stage.invited_notification\" | \"stage.add_to_stage\" | \"stage.join_title\" | \"stage.join_summary\" | \"stage.join_cancel\" | \"stage.join_confirm\" | \"setup_screen.join_in_as\" | \"setup_screen.your_name\" | \"stage.reconnecting\" | \"recording.label\" | \"recording.indicator\" | \"recording.started\" | \"recording.stopped\" | \"recording.paused\" | \"recording.error.start\" | \"recording.error.stop\" | \"recording.error.resume\" | \"recording.start\" | \"recording.stop\" | \"recording.resume\" | \"recording.starting\" | \"recording.stopping\" | \"recording.loading\" | \"recording.idle\" | \"audio_playback\" | \"audio_playback.title\" | \"audio_playback.description\" | \"breakout_rooms\" | \"breakout_rooms.room_config_header\" | \"breakout_rooms.join_breakout_header\" | \"breakout_rooms.empty\" | \"breakout_rooms.delete\" | \"breakout_rooms.switch\" | \"breakout_rooms.main_room\" | \"breakout_rooms.shuffle_participants\" | \"breakout_rooms.deselect\" | \"breakout_rooms.selected\" | \"breakout_rooms.num_of_rooms\" | \"breakout_rooms.approx\" | \"breakout_rooms.participants_per_room\" | \"breakout_rooms.division_text\" | \"breakout_rooms.start_breakout\" | \"breakout_rooms.close_breakout\" | \"breakout_rooms.update_breakout\" | \"breakout_rooms.discard_changes\" | \"breakout_rooms.room\" | \"breakout_rooms.rooms\" | \"breakout_rooms.room_name\" | \"breakout_rooms.edit_room_name\" | \"breakout_rooms.save_room_name\" | \"breakout_rooms.add_room\" | \"breakout_rooms.add_room_brief\" | \"breakout_rooms.select_all\" | \"breakout_rooms.unassign_all\" | \"breakout_rooms.assign\" | \"breakout_rooms.assign_participants\" | \"breakout_rooms.none_assigned\" | \"breakout_rooms.drag_drop_participants\" | \"breakout_rooms.click_drop_participants\" | \"breakout_rooms.status.assign_multiple\" | \"breakout_rooms.status.select_room\" | \"breakout_rooms.ephemeral_status.participants_assigned\" | \"breakout_rooms.ephemeral_status.participants_assigned_randomly\" | \"breakout_rooms.ephemeral_status.changes_discarded\" | \"breakout_rooms.confirm_modal.start_breakout.header\" | \"breakout_rooms.confirm_modal.start_breakout.content\" | \"breakout_rooms.confirm_modal.start_breakout.cancelText\" | \"breakout_rooms.confirm_modal.start_breakout.ctaText\" | \"breakout_rooms.confirm_modal.close_breakout.header\" | \"breakout_rooms.confirm_modal.close_breakout.content\" | \"breakout_rooms.confirm_modal.close_breakout.ctaText\" | \"breakout_rooms.move_reason.started_msg\" | \"breakout_rooms.move_reason.started_desc\" | \"breakout_rooms.move_reason.closed_msg\" | \"breakout_rooms.move_reason.closed_desc\" | \"breakout_rooms.move_reason.switch_room\" | \"breakout_rooms.move_reason.switch_main_room\" | \"breakout_rooms.all_assigned\" | \"breakout_rooms.empty_main_room\" | \"breakout_rooms.leave_confirmation\" | \"breakout_rooms.leave_confirmation.main_room_btn\" | \"ai\" | \"ai.meeting_ai\" | \"ai.home\" | \"ai.transcriptions\" | \"ai.personal\" | \"ai.caption_view\" | \"ai.chat.tooltip\" | \"ai.chat.summerise\" | \"ai.chat.agenda\" | \"search.could_not_find\" | \"search.empty\" | \"end.all\" | \"ended.rejected\" | \"ended.left\" | \"ended.kicked\" | \"ended.disconnected\" | \"ended.network\" | \"ended.unauthorized\" | \"network\" | \"network.reconnecting\" | \"network.delay_extended\" | \"network.disconnected\" | \"network.leaving\" | \"network.restored\" | \"network.delay\" | \"network.lost\" | \"network.lost_extended\" | \"livestream\" | \"livestream.indicator\" | \"livestream.skip\" | \"livestream.idle\" | \"livestream.starting\" | \"livestream.stopping\" | \"livestream.waiting_on_manual_ingestion\" | \"livestream.error.not_supported\" | \"livestream.error.not_found\" | \"livestream.error.unknown\" | \"livestream.error.sync\" | \"livestream.error.start\" | \"livestream.error.stop\" | \"livestream.go_live\" | \"livestream.end_live\" | \"livestream.error\" | \"cta.help\" | \"cta.continue\" | \"cta.reload\" | \"cta.confirmation\" | \"cta.system_settings\" | \"remote_access.empty\" | \"remote_access.requests\" | \"remote_access.allow\" | \"remote_access.grant\" | \"remote_access.indicator\" | \"chat.new\" | \"chat.max_limit_warning\" | \"chat.rate_limit_error\" | \"chat.member_name\" | \"chat.add_members\" | \"chat.delete_msg\" | \"chat.edit_msg\" | \"chat.send_msg\" | \"chat.send_attachment\" | \"chat.send_img\" | \"chat.send_file\" | \"chat.send_emoji\" | \"chat.update_msg\" | \"chat.img.loading\" | \"chat.error.img_not_found\" | \"chat.error.empty_results\" | \"chat.img.shared_by\" | \"chat.reply\" | \"chat.message_placeholder\" | \"chat.click_to_send\" | \"chat.search_msgs\" | \"chat.search_conversations\" | \"chat.start_conversation\" | \"chat.empty_search\" | \"chat.empty_chat\" | \"chat.cancel_upload\" | \"chat.view_chats\" | \"chat.everyone\" | \"chat.pinned_msgs\" | \"chat.toggle_pinned_msgs\" | \"date.today\" | \"date.yesteday\" | \"date.sunday\" | \"date.monday\" | \"date.tuesday\" | \"date.wednesday\" | \"date.thursday\" | \"date.friday\" | \"date.saturday\" | \"list.empty\" | \"grid.listening\" | \"transcript.off\" | \"transcript.on\" | \"settings.notification_sound\" | \"settings.microphone_input\" | \"settings.speaker_output\" | \"settings.mirror_video\" | \"settings.camera_off\" | \"dialog.close\" | \"notifications.joined\" | \"notifications.left\" | \"notifications.requesting_to_join_meeting\" | \"notifications.requested_to_join_stage\" | \"notifications.joined_stage\" | \"notifications.request_to_join_accepted\" | \"notifications.request_to_join_rejected\" | \"notifications.accept\" | \"notifications.new_poll_created_by\" | \"notifications.connected_to\" | \"notifications.plugin_switched_to\" | \"notifications.remote_control_requested\" | \"notifications.remote_control_request_sent\" | \"notifications.remote_control_request_accepted\" | \"notifications.remote_control_granted\" | \"notifications.remote_control_terminated\" | \"debugger.troubleshooting.label\" | \"debugger.quality.good\" | \"debugger.quality.average\" | \"debugger.quality.poor\" | \"debugger.stats.bitrate.label\" | \"debugger.stats.bitrate.description\" | \"debugger.stats.packet_loss.label\" | \"debugger.stats.packet_loss.description\" | \"debugger.stats.jitter.label\" | \"debugger.stats.jitter.description\" | \"debugger.stats.cpu_limitations.label\" | \"debugger.stats.cpu_limitations.description\" | \"debugger.stats.bandwidth_limitations.label\" | \"debugger.stats.bandwidth_limitations.description\" | \"debugger.audio.label\" | \"debugger.audio.troubleshooting.label\" | \"debugger.audio.messages.generating_report\" | \"debugger.audio.messages.enable_media\" | \"debugger.audio.sections.network_media\" | \"debugger.video.label\" | \"debugger.video.troubleshooting.label\" | \"debugger.video.messages.generating_report\" | \"debugger.video.messages.enable_media\" | \"debugger.video.sections.network_media\" | \"debugger.screenshare.label\" | \"debugger.screenshare.troubleshooting.label\" | \"debugger.screenshare.sections.network_media\" | \"debugger.screenshare.messages.generating_report\" | \"debugger.screenshare.messages.enable_media\" | \"debugger.system.label\" | \"debugger.system.troubleshooting.label\" | \"debugger.system.sections.battery\" | \"debugger.system.battery.level.label\" | \"debugger.system.battery.level.description\" | \"debugger.system.battery.charging.label\" | \"debugger.system.battery.charging.description\" | \"debugger.system.battery.charging.is_charging\" | \"debugger.system.battery.charging.is_not_charging\") => string",
449
529
  "references": {
450
530
  "RtkI18n": {
451
531
  "location": "import",
@@ -463,39 +543,16 @@ export class RtkPaginatedList {
463
543
  "getter": false,
464
544
  "setter": false,
465
545
  "defaultValue": "useLanguage()"
466
- },
467
- "emptyListLabel": {
468
- "type": "string",
469
- "mutable": false,
470
- "complexType": {
471
- "original": "string",
472
- "resolved": "string",
473
- "references": {}
474
- },
475
- "required": false,
476
- "optional": false,
477
- "docs": {
478
- "tags": [],
479
- "text": "label to show when empty"
480
- },
481
- "getter": false,
482
- "setter": false,
483
- "attribute": "empty-list-label",
484
- "reflect": false,
485
- "defaultValue": "null"
486
546
  }
487
547
  };
488
548
  }
489
549
  static get states() {
490
550
  return {
551
+ "rerenderBoolean": {},
552
+ "showEmptyListLabel": {},
491
553
  "isLoading": {},
492
554
  "isLoadingTop": {},
493
- "isLoadingBottom": {},
494
- "hasMoreDataAtTop": {},
495
- "rerenderBoolean": {},
496
- "shouldRenderNewNodes": {},
497
- "hasNewNodesToRender": {},
498
- "showEmptyListLabel": {}
555
+ "isLoadingBottom": {}
499
556
  };
500
557
  }
501
558
  static get methods() {
@@ -506,7 +563,7 @@ export class RtkPaginatedList {
506
563
  "parameters": [{
507
564
  "name": "node",
508
565
  "type": "DataNode",
509
- "docs": ""
566
+ "docs": "- The data node to add to the beginning of the list"
510
567
  }],
511
568
  "references": {
512
569
  "Promise": {
@@ -522,17 +579,20 @@ export class RtkPaginatedList {
522
579
  "return": "Promise<void>"
523
580
  },
524
581
  "docs": {
525
- "text": "On a new node created",
526
- "tags": []
582
+ "text": "Adds a new node to the beginning of the paginated list",
583
+ "tags": [{
584
+ "name": "param",
585
+ "text": "node - The data node to add to the beginning of the list"
586
+ }]
527
587
  }
528
588
  },
529
589
  "onNodeDelete": {
530
590
  "complexType": {
531
- "signature": "(key: string) => Promise<void>",
591
+ "signature": "(id: string) => Promise<void>",
532
592
  "parameters": [{
533
- "name": "key",
593
+ "name": "id",
534
594
  "type": "string",
535
- "docs": ""
595
+ "docs": "- The id of the node to delete"
536
596
  }],
537
597
  "references": {
538
598
  "Promise": {
@@ -543,21 +603,24 @@ export class RtkPaginatedList {
543
603
  "return": "Promise<void>"
544
604
  },
545
605
  "docs": {
546
- "text": "On node deleted",
547
- "tags": []
606
+ "text": "Deletes a node anywhere from the list",
607
+ "tags": [{
608
+ "name": "param",
609
+ "text": "id - The id of the node to delete"
610
+ }]
548
611
  }
549
612
  },
550
613
  "onNodeUpdate": {
551
614
  "complexType": {
552
- "signature": "(key: string, newItem: DataNode) => Promise<void>",
615
+ "signature": "(id: string, node: DataNode) => Promise<void>",
553
616
  "parameters": [{
554
- "name": "key",
617
+ "name": "id",
555
618
  "type": "string",
556
- "docs": ""
619
+ "docs": "- The id of the node to update"
557
620
  }, {
558
- "name": "newItem",
621
+ "name": "node",
559
622
  "type": "DataNode",
560
- "docs": ""
623
+ "docs": "- The updated data node"
561
624
  }],
562
625
  "references": {
563
626
  "Promise": {
@@ -573,18 +636,18 @@ export class RtkPaginatedList {
573
636
  "return": "Promise<void>"
574
637
  },
575
638
  "docs": {
576
- "text": "On node updated",
577
- "tags": []
639
+ "text": "Updates a new node anywhere in the list",
640
+ "tags": [{
641
+ "name": "param",
642
+ "text": "id - The id of the node to update"
643
+ }, {
644
+ "name": "param",
645
+ "text": "node - The updated data node"
646
+ }]
578
647
  }
579
648
  }
580
649
  };
581
650
  }
582
- static get watchers() {
583
- return [{
584
- "propName": "selectedItemId",
585
- "methodName": "onItemChanged"
586
- }];
587
- }
588
651
  }
589
652
  __decorate([
590
653
  SyncWithStore()