@cloudflare/realtimekit-ui 1.1.0-staging.1 → 1.1.0-staging.10
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.
- package/dist/browser.js +1 -1
- package/dist/cjs/{TextMessage-7bb3e1fd.js → TextMessage-1dc6f8b9.js} +1 -1
- package/dist/cjs/{chat-717e517d.js → chat-2ae6f058.js} +1 -1
- package/dist/cjs/{config-8c9ac89a.js → config-0a88d50b.js} +2 -2
- package/dist/cjs/{debounce-a3e0d9e7.js → debounce-b06b27ca.js} +1 -1
- package/dist/cjs/{index-8d07e125.js → index-e4244d7d.js} +1 -1
- package/dist/cjs/index.cjs.js +6 -5
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{merge-73e2770b.js → merge-c46cfa17.js} +1 -1
- package/dist/cjs/{notification-567fe887.js → notification-f3750b61.js} +1 -1
- package/dist/cjs/realtimekit-ui.cjs.js +1 -1
- package/dist/cjs/rtk-ai-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-ai-transcriptions.cjs.entry.js +3 -3
- package/dist/cjs/rtk-ai.cjs.entry.js +2 -2
- package/dist/cjs/rtk-audio-grid.cjs.entry.js +3 -3
- package/dist/cjs/rtk-audio-tile.cjs.entry.js +2 -2
- package/dist/cjs/rtk-audio-visualizer_4.cjs.entry.js +3 -3
- package/dist/cjs/rtk-avatar_24.cjs.entry.js +430 -301
- package/dist/cjs/rtk-breakout-room-manager_3.cjs.entry.js +6 -6
- package/dist/cjs/rtk-breakout-rooms-manager_9.cjs.entry.js +11 -11
- package/dist/cjs/rtk-breakout-rooms-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-camera-selector_2.cjs.entry.js +2 -2
- package/dist/cjs/rtk-camera-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-caption-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-channel-creator.cjs.entry.js +4 -4
- package/dist/cjs/rtk-channel-details.cjs.entry.js +3 -3
- package/dist/cjs/rtk-channel-header.cjs.entry.js +2 -2
- package/dist/cjs/rtk-channel-selector-ui.cjs.entry.js +6 -6
- package/dist/cjs/rtk-chat-composer-ui.cjs.entry.js +3 -3
- package/dist/cjs/rtk-chat-message.cjs.entry.js +4 -4
- package/dist/cjs/rtk-chat-messages-ui.cjs.entry.js +5 -5
- package/dist/cjs/rtk-chat-search-results.cjs.entry.js +3 -3
- package/dist/cjs/rtk-chat-selector-ui.cjs.entry.js +3 -3
- package/dist/cjs/rtk-chat-toggle.cjs.entry.js +30 -25
- package/dist/cjs/rtk-clock.cjs.entry.js +5 -5
- package/dist/cjs/rtk-controlbar-button.cjs.entry.js +3 -3
- package/dist/cjs/rtk-controlbar.cjs.entry.js +3 -3
- package/dist/cjs/rtk-debugger-audio_4.cjs.entry.js +2 -2
- package/dist/cjs/rtk-debugger-toggle.cjs.entry.js +3 -3
- package/dist/cjs/rtk-dialog-manager.cjs.entry.js +2 -2
- package/dist/cjs/rtk-dialog.cjs.entry.js +2 -2
- package/dist/cjs/rtk-ended-screen.cjs.entry.js +2 -2
- package/dist/cjs/rtk-file-dropzone.cjs.entry.js +3 -3
- package/dist/cjs/rtk-file-message_3.cjs.entry.js +12 -12
- package/dist/cjs/rtk-fullscreen-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-grid-pagination.cjs.entry.js +2 -2
- package/dist/cjs/rtk-grid.cjs.entry.js +2 -2
- package/dist/cjs/rtk-header.cjs.entry.js +3 -3
- package/dist/cjs/rtk-idle-screen.cjs.entry.js +3 -3
- package/dist/cjs/rtk-image-viewer.cjs.entry.js +3 -3
- package/dist/cjs/rtk-information-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/rtk-leave-button.cjs.entry.js +3 -3
- package/dist/cjs/rtk-livestream-indicator_3.cjs.entry.js +2 -2
- package/dist/cjs/rtk-livestream-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-logo.cjs.entry.js +2 -2
- package/dist/cjs/rtk-meeting-title.cjs.entry.js +2 -2
- package/dist/cjs/rtk-message-list-view.cjs.entry.js +6 -6
- package/dist/cjs/rtk-mic-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-mixed-grid.cjs.entry.js +2 -2
- package/dist/cjs/rtk-more-toggle.cjs.entry.js +4 -4
- package/dist/cjs/rtk-mute-all-button.cjs.entry.js +2 -2
- package/dist/cjs/rtk-name-tag.cjs.entry.js +3 -3
- package/dist/cjs/rtk-network-indicator.cjs.entry.js +2 -2
- package/dist/cjs/rtk-notification.cjs.entry.js +6 -6
- package/dist/cjs/rtk-notifications.cjs.entry.js +8 -5
- package/dist/cjs/rtk-participant-count.cjs.entry.js +2 -2
- package/dist/cjs/rtk-participant-setup.cjs.entry.js +4 -4
- package/dist/cjs/rtk-participant_2.cjs.entry.js +17 -17
- package/dist/cjs/rtk-participants-audio.cjs.entry.js +3 -3
- package/dist/cjs/rtk-participants-stage-list_4.cjs.entry.js +3 -3
- package/dist/cjs/rtk-participants-toggle.cjs.entry.js +3 -3
- package/dist/cjs/rtk-participants.cjs.entry.js +3 -3
- package/dist/cjs/rtk-pip-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-plugin-main_2.cjs.entry.js +3 -3
- package/dist/cjs/rtk-plugins-toggle.cjs.entry.js +3 -3
- package/dist/cjs/rtk-plugins_2.cjs.entry.js +6 -6
- package/dist/cjs/rtk-poll_2.cjs.entry.js +5 -5
- package/dist/cjs/rtk-polls-toggle.cjs.entry.js +3 -3
- package/dist/cjs/rtk-recording-indicator.cjs.entry.js +3 -3
- package/dist/cjs/rtk-recording-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-screen-share-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-screenshare-view.cjs.entry.js +7 -7
- package/dist/cjs/rtk-settings-audio_2.cjs.entry.js +2 -2
- package/dist/cjs/rtk-settings-toggle.cjs.entry.js +3 -3
- package/dist/cjs/rtk-settings.cjs.entry.js +2 -2
- package/dist/cjs/rtk-setup-screen.cjs.entry.js +2 -2
- package/dist/cjs/rtk-sidebar-ui.cjs.entry.js +4 -4
- package/dist/cjs/rtk-sidebar.cjs.entry.js +3 -3
- package/dist/cjs/rtk-simple-grid.cjs.entry.js +2 -2
- package/dist/cjs/rtk-spotlight-grid.cjs.entry.js +4 -4
- package/dist/cjs/rtk-spotlight-indicator.cjs.entry.js +2 -2
- package/dist/cjs/rtk-stage-toggle.cjs.entry.js +2 -2
- package/dist/cjs/rtk-stage.cjs.entry.js +3 -3
- package/dist/cjs/rtk-transcript.cjs.entry.js +3 -3
- package/dist/cjs/rtk-transcripts.cjs.entry.js +2 -2
- package/dist/cjs/rtk-ui-provider.cjs.entry.js +13 -3
- package/dist/cjs/rtk-waiting-screen.cjs.entry.js +3 -3
- package/dist/cjs/{sidebar-2ad915b1.js → sidebar-0eb1e4ef.js} +1 -1
- package/dist/cjs/{ui-store-1cb28da8.js → ui-store-6c2d680f.js} +11 -2
- package/dist/collection/components/rtk-ai-transcriptions/rtk-ai-transcriptions.js +1 -1
- package/dist/collection/components/rtk-audio-grid/rtk-audio-grid.js +1 -1
- package/dist/collection/components/rtk-avatar/rtk-avatar.js +1 -1
- package/dist/collection/components/rtk-breakout-room-participants/rtk-breakout-room-participants.js +2 -2
- package/dist/collection/components/rtk-broadcast-message-modal/rtk-broadcast-message-modal.js +2 -2
- package/dist/collection/components/rtk-channel-creator/rtk-channel-creator.js +2 -2
- package/dist/collection/components/rtk-channel-details/rtk-channel-details.js +1 -1
- package/dist/collection/components/rtk-channel-selector-ui/rtk-channel-selector-ui.js +2 -2
- package/dist/collection/components/rtk-channel-selector-view/rtk-channel-selector-view.css +29 -29
- package/dist/collection/components/rtk-channel-selector-view/rtk-channel-selector-view.js +4 -4
- package/dist/collection/components/rtk-chat/rtk-chat.css +47 -8
- package/dist/collection/components/rtk-chat/rtk-chat.js +98 -13
- package/dist/collection/components/rtk-chat-composer-view/rtk-chat-composer-view.js +28 -15
- package/dist/collection/components/rtk-chat-message/rtk-chat-message.js +2 -2
- package/dist/collection/components/rtk-chat-messages-ui/rtk-chat-messages-ui.js +3 -3
- package/dist/collection/components/rtk-chat-messages-ui-paginated/rtk-chat-messages-ui-paginated.js +37 -17
- package/dist/collection/components/rtk-chat-search-results/rtk-chat-search-results.js +1 -1
- package/dist/collection/components/rtk-chat-toggle/rtk-chat-toggle.css +1 -1
- package/dist/collection/components/rtk-chat-toggle/rtk-chat-toggle.js +27 -26
- package/dist/collection/components/rtk-clock/rtk-clock.js +3 -3
- package/dist/collection/components/rtk-confirmation-modal/rtk-confirmation-modal.js +1 -1
- package/dist/collection/components/rtk-controlbar/rtk-controlbar.js +1 -1
- package/dist/collection/components/rtk-controlbar-button/rtk-controlbar-button.js +1 -1
- package/dist/collection/components/rtk-counter/rtk-counter.js +2 -2
- package/dist/collection/components/rtk-debugger-toggle/rtk-debugger-toggle.js +1 -1
- package/dist/collection/components/rtk-draft-attachment-view/rtk-draft-attachment-view.js +1 -1
- package/dist/collection/components/rtk-emoji-picker/rtk-emoji-picker.js +1 -1
- package/dist/collection/components/rtk-emoji-picker-button/rtk-emoji-picker-button.js +1 -1
- package/dist/collection/components/rtk-file-dropzone/rtk-file-dropzone.js +1 -1
- package/dist/collection/components/rtk-file-message/rtk-file-message.js +2 -2
- package/dist/collection/components/rtk-file-message-view/rtk-file-message-view.js +1 -1
- package/dist/collection/components/rtk-file-picker-button/rtk-file-picker-button.js +1 -1
- package/dist/collection/components/rtk-header/rtk-header.js +1 -1
- package/dist/collection/components/rtk-icon/rtk-icon.js +1 -1
- package/dist/collection/components/rtk-idle-screen/rtk-idle-screen.js +1 -1
- package/dist/collection/components/rtk-image-message/rtk-image-message.js +4 -4
- package/dist/collection/components/rtk-image-message-view/rtk-image-message-view.js +3 -3
- package/dist/collection/components/rtk-image-viewer/rtk-image-viewer.js +1 -1
- package/dist/collection/components/rtk-information-tooltip/rtk-information-tooltip.js +1 -1
- package/dist/collection/components/rtk-join-stage/rtk-join-stage.js +1 -1
- package/dist/collection/components/rtk-leave-button/rtk-leave-button.js +1 -1
- package/dist/collection/components/rtk-leave-meeting/rtk-leave-meeting.js +2 -2
- package/dist/collection/components/rtk-markdown-view/rtk-markdown-view.js +1 -1
- package/dist/collection/components/rtk-meeting/rtk-meeting.js +37 -0
- package/dist/collection/components/rtk-menu/rtk-menu.js +2 -2
- package/dist/collection/components/rtk-menu-item/rtk-menu-item.css +6 -1
- package/dist/collection/components/rtk-menu-item/rtk-menu-item.js +23 -1
- package/dist/collection/components/rtk-menu-list/rtk-menu-list.css +15 -4
- package/dist/collection/components/rtk-menu-list/rtk-menu-list.js +23 -1
- package/dist/collection/components/rtk-message-list-view/rtk-message-list-view.js +3 -3
- package/dist/collection/components/rtk-message-view/rtk-message-view.css +30 -22
- package/dist/collection/components/rtk-message-view/rtk-message-view.js +72 -2
- package/dist/collection/components/rtk-more-toggle/rtk-more-toggle.js +2 -2
- package/dist/collection/components/rtk-mute-all-confirmation/rtk-mute-all-confirmation.js +1 -1
- package/dist/collection/components/rtk-name-tag/rtk-name-tag.js +1 -1
- package/dist/collection/components/rtk-notification/rtk-notification.js +2 -2
- package/dist/collection/components/rtk-notifications/rtk-notifications.js +4 -1
- package/dist/collection/components/rtk-overlay-modal/rtk-overlay-modal.js +1 -1
- package/dist/collection/components/rtk-paginated-list/rtk-paginated-list.css +5 -5
- package/dist/collection/components/rtk-paginated-list/rtk-paginated-list.js +327 -264
- package/dist/collection/components/rtk-participant/rtk-participant.js +12 -12
- package/dist/collection/components/rtk-participant-setup/rtk-participant-setup.js +2 -2
- package/dist/collection/components/rtk-participants-audio/rtk-participants-audio.js +1 -1
- package/dist/collection/components/rtk-participants-stage-list/rtk-participants-stage-list.js +1 -1
- package/dist/collection/components/rtk-permissions-message/rtk-permissions-message.js +1 -1
- package/dist/collection/components/rtk-plugins/rtk-plugins.js +1 -1
- package/dist/collection/components/rtk-poll/rtk-poll.js +1 -1
- package/dist/collection/components/rtk-poll-form/rtk-poll-form.js +2 -2
- package/dist/collection/components/rtk-polls/rtk-polls.js +3 -3
- package/dist/collection/components/rtk-recording-indicator/rtk-recording-indicator.js +1 -1
- package/dist/collection/components/rtk-screenshare-view/rtk-screenshare-view.js +5 -5
- package/dist/collection/components/rtk-settings-toggle/rtk-settings-toggle.js +1 -1
- package/dist/collection/components/rtk-sidebar-ui/rtk-sidebar-ui.js +2 -2
- package/dist/collection/components/rtk-spinner/rtk-spinner.js +1 -1
- package/dist/collection/components/rtk-spotlight-grid/rtk-spotlight-grid.js +2 -2
- package/dist/collection/components/rtk-stage/rtk-stage.js +1 -1
- package/dist/collection/components/rtk-switch/rtk-switch.js +1 -1
- package/dist/collection/components/rtk-tab-bar/rtk-tab-bar.js +1 -1
- package/dist/collection/components/rtk-text-composer-view/rtk-text-composer-view.js +1 -1
- package/dist/collection/components/rtk-text-message/rtk-text-message.js +2 -2
- package/dist/collection/components/rtk-text-message-view/rtk-text-message-view.js +1 -1
- package/dist/collection/components/rtk-tooltip/rtk-tooltip.js +1 -1
- package/dist/collection/components/rtk-transcript/rtk-transcript.js +1 -1
- package/dist/collection/components/rtk-ui-provider/rtk-ui-provider.js +37 -1
- package/dist/collection/components/rtk-virtualized-list/rtk-virtualized-participant-list.js +2 -2
- package/dist/collection/components/rtk-waiting-screen/rtk-waiting-screen.js +1 -1
- package/dist/collection/exports.js +2 -1
- package/dist/collection/lib/overrides.js +6 -0
- package/dist/collection/utils/flags.js +0 -1
- package/dist/collection/utils/sync-with-store/ui-store.js +4 -1
- package/dist/components/index.js +6 -6
- package/dist/components/{p-6f340109.js → p-05df465d.js} +1 -1
- package/dist/components/{p-9e87b2c9.js → p-0a31ef52.js} +2 -2
- package/dist/components/{p-618864a0.js → p-107e55c1.js} +3 -3
- package/dist/components/{p-5f26bba3.js → p-193d8051.js} +2 -2
- package/dist/components/{p-d3de8b85.js → p-19b037c5.js} +4 -4
- package/dist/components/{p-8d25843a.js → p-1a9e3806.js} +3 -3
- package/dist/components/{p-82f8c924.js → p-1afc54bb.js} +3 -3
- package/dist/components/{p-afe77b50.js → p-1da807a2.js} +3 -3
- package/dist/components/{p-2f08d7eb.js → p-210862ae.js} +98 -37
- package/dist/components/{p-abe1dbe6.js → p-2309fb19.js} +4 -4
- package/dist/components/{p-f8f5cb31.js → p-2447a26f.js} +4 -4
- package/dist/components/{p-63ef7ea4.js → p-282e8e83.js} +7 -7
- package/dist/components/{p-ee98bbaf.js → p-33be3c19.js} +13 -13
- package/dist/components/{p-adf73364.js → p-33e73313.js} +6 -6
- package/dist/components/{p-121e073d.js → p-35e93724.js} +2 -2
- package/dist/components/{p-bb8f2597.js → p-395ef9c8.js} +7 -7
- package/dist/components/{p-f47894a6.js → p-3972098e.js} +21 -27
- package/dist/components/{p-10ef077c.js → p-39e8b34a.js} +3 -3
- package/dist/components/{p-e81fc1e8.js → p-3e58e0f3.js} +3 -3
- package/dist/components/{p-0b4e526c.js → p-43bf8953.js} +4 -4
- package/dist/components/p-44a203bd.js +409 -0
- package/dist/components/{p-190db142.js → p-44c32349.js} +8 -8
- package/dist/components/{p-2d08ab28.js → p-45b4f6a1.js} +4 -4
- package/dist/components/{p-9889bee5.js → p-46d99dd9.js} +4 -4
- package/dist/components/{p-65cd2fe3.js → p-524d7900.js} +5 -5
- package/dist/components/{p-0d7bf41b.js → p-5476e3f3.js} +4 -4
- package/dist/components/{p-914563e7.js → p-586482a8.js} +6 -6
- package/dist/components/{p-fd68a52b.js → p-5f1b84f7.js} +9 -9
- package/dist/components/{p-d06d1eac.js → p-600579a6.js} +3 -3
- package/dist/components/{p-6f272732.js → p-6392204c.js} +9 -9
- package/dist/components/{p-a94b2e67.js → p-6739a399.js} +2 -2
- package/dist/components/{p-f7eb9c47.js → p-6c02b0d0.js} +6 -6
- package/dist/components/{p-c515acba.js → p-6f361314.js} +3 -3
- package/dist/components/{p-47c25f64.js → p-6f7c46d2.js} +1 -1
- package/dist/components/{p-84e5b453.js → p-6f8d2043.js} +2 -2
- package/dist/components/{p-080acf18.js → p-7148ec6a.js} +7 -4
- package/dist/components/{p-33a87325.js → p-72fffe3e.js} +3 -3
- package/dist/components/{p-3b29dda1.js → p-73baf5ba.js} +1 -1
- package/dist/components/{p-2f82e0b0.js → p-74356882.js} +8 -8
- package/dist/components/{p-fe911889.js → p-7a27fdb5.js} +20 -11
- package/dist/components/{p-b011763d.js → p-7b6356e2.js} +4 -4
- package/dist/components/{p-5c92df32.js → p-7bde2b2d.js} +6 -6
- package/dist/components/{p-6c2cfa0d.js → p-7c8096c2.js} +5 -5
- package/dist/components/{p-a6296b02.js → p-819cb785.js} +7 -4
- package/dist/components/{p-6756b222.js → p-851b90a6.js} +3 -3
- package/dist/components/{p-e4a080a5.js → p-89151c7a.js} +4 -4
- package/dist/components/{p-244cbe7b.js → p-89eb65a9.js} +2 -2
- package/dist/components/{p-c3621e10.js → p-92729e09.js} +7 -7
- package/dist/components/{p-cf503999.js → p-977f9875.js} +5 -5
- package/dist/components/{p-f4e75ea9.js → p-9bdc24b8.js} +5 -5
- package/dist/components/{p-188bfe87.js → p-abdff498.js} +9 -9
- package/dist/components/{p-78b61cce.js → p-ad873f2d.js} +1 -1
- package/dist/components/{p-d107e9f4.js → p-b6869c32.js} +4 -4
- package/dist/components/{p-395d7140.js → p-b76e3950.js} +5 -5
- package/dist/components/{p-102b6df8.js → p-c05530c8.js} +2 -2
- package/dist/components/p-c78c26b1.js +203 -0
- package/dist/components/{p-88bef213.js → p-cf8f725b.js} +1 -1
- package/dist/components/{p-c078ae06.js → p-d188f58b.js} +3 -3
- package/dist/components/{p-2e282643.js → p-d9f6db4f.js} +5 -5
- package/dist/components/{p-51de7af3.js → p-da87cc71.js} +1 -1
- package/dist/components/{p-0d582365.js → p-dc3143c0.js} +2 -2
- package/dist/components/{p-4d582a90.js → p-dd89aff2.js} +6 -6
- package/dist/components/{p-7481511c.js → p-dfb42075.js} +3 -3
- package/dist/components/{p-e675729a.js → p-e375b50d.js} +5 -5
- package/dist/components/{p-0a35a909.js → p-e443d803.js} +4 -4
- package/dist/components/{p-a6f2b402.js → p-e4888ccc.js} +31 -31
- package/dist/components/{p-a10b9faa.js → p-e552dc59.js} +3 -3
- package/dist/components/{p-55501201.js → p-e57e8041.js} +5 -5
- package/dist/components/{p-b34865c7.js → p-e64e3cec.js} +5 -5
- package/dist/components/{p-3da4880c.js → p-e72a0f16.js} +5 -5
- package/dist/components/{p-7fc0dc2f.js → p-e847fee9.js} +11 -3
- package/dist/components/{p-b882f4a1.js → p-ecb016da.js} +5 -5
- package/dist/components/{p-a4a5ff5a.js → p-edd12f2f.js} +6 -6
- package/dist/components/{p-563c785d.js → p-eeb37b16.js} +3 -3
- package/dist/components/{p-dbfc9151.js → p-f0e4633e.js} +4 -4
- package/dist/components/{p-a29c01fc.js → p-f6c2e822.js} +3 -3
- package/dist/components/{p-20290b0b.js → p-f7bd10f1.js} +5 -5
- package/dist/components/{p-e8df7ac5.js → p-fa5aba68.js} +19 -19
- package/dist/components/{p-488d88a8.js → p-fb7666ce.js} +5 -5
- package/dist/components/{p-fa8f6b4a.js → p-fb836f65.js} +1 -1
- package/dist/components/{p-e6710b76.js → p-fb900e8f.js} +4 -4
- package/dist/components/{p-f7430e46.js → p-fefc57f9.js} +6 -6
- package/dist/components/rtk-ai-toggle.js +5 -5
- package/dist/components/rtk-ai-transcriptions.js +1 -1
- package/dist/components/rtk-ai.js +4 -4
- package/dist/components/rtk-audio-grid.js +3 -3
- package/dist/components/rtk-audio-tile.js +6 -6
- package/dist/components/rtk-audio-visualizer.js +1 -1
- package/dist/components/rtk-avatar.js +1 -1
- package/dist/components/rtk-breakout-room-manager.js +1 -1
- package/dist/components/rtk-breakout-room-participants.js +1 -1
- package/dist/components/rtk-breakout-rooms-manager.js +1 -1
- package/dist/components/rtk-breakout-rooms-toggle.js +5 -5
- package/dist/components/rtk-broadcast-message-modal.js +1 -1
- package/dist/components/rtk-camera-selector.js +1 -1
- package/dist/components/rtk-camera-toggle.js +6 -6
- package/dist/components/rtk-caption-toggle.js +5 -5
- package/dist/components/rtk-channel-creator.js +7 -7
- package/dist/components/rtk-channel-details.js +1 -1
- package/dist/components/rtk-channel-header.js +8 -8
- package/dist/components/rtk-channel-selector-ui.js +7 -7
- package/dist/components/rtk-channel-selector-view.js +1 -1
- package/dist/components/rtk-chat-composer-ui.js +7 -7
- package/dist/components/rtk-chat-composer-view.js +1 -1
- package/dist/components/rtk-chat-message.js +1 -1
- package/dist/components/rtk-chat-messages-ui-paginated.js +1 -1
- package/dist/components/rtk-chat-messages-ui.js +17 -17
- package/dist/components/rtk-chat-search-results.js +14 -14
- package/dist/components/rtk-chat-selector-ui.js +3 -3
- package/dist/components/rtk-chat-toggle.js +34 -30
- package/dist/components/rtk-chat.js +1 -1
- package/dist/components/rtk-clock.js +6 -6
- package/dist/components/rtk-confirmation-modal.js +1 -1
- package/dist/components/rtk-controlbar-button.js +1 -1
- package/dist/components/rtk-controlbar.js +3 -3
- package/dist/components/rtk-counter.js +1 -1
- package/dist/components/rtk-debugger-audio.js +1 -1
- package/dist/components/rtk-debugger-screenshare.js +1 -1
- package/dist/components/rtk-debugger-system.js +1 -1
- package/dist/components/rtk-debugger-toggle.js +6 -6
- package/dist/components/rtk-debugger-video.js +1 -1
- package/dist/components/rtk-debugger.js +1 -1
- package/dist/components/rtk-dialog-manager.js +23 -23
- package/dist/components/rtk-dialog.js +1 -1
- package/dist/components/rtk-draft-attachment-view.js +1 -1
- package/dist/components/rtk-emoji-picker-button.js +1 -1
- package/dist/components/rtk-emoji-picker.js +1 -1
- package/dist/components/rtk-ended-screen.js +4 -4
- package/dist/components/rtk-file-dropzone.js +4 -4
- package/dist/components/rtk-file-message-view.js +1 -1
- package/dist/components/rtk-file-message.js +1 -1
- package/dist/components/rtk-file-picker-button.js +1 -1
- package/dist/components/rtk-fullscreen-toggle.js +1 -1
- package/dist/components/rtk-grid-pagination.js +4 -4
- package/dist/components/rtk-grid.js +9 -9
- package/dist/components/rtk-header.js +3 -3
- package/dist/components/rtk-icon.js +1 -1
- package/dist/components/rtk-idle-screen.js +6 -6
- package/dist/components/rtk-image-message-view.js +1 -1
- package/dist/components/rtk-image-message.js +1 -1
- package/dist/components/rtk-image-viewer.js +4 -4
- package/dist/components/rtk-information-tooltip.js +4 -4
- package/dist/components/rtk-join-stage.js +1 -1
- package/dist/components/rtk-leave-button.js +6 -6
- package/dist/components/rtk-leave-meeting.js +1 -1
- package/dist/components/rtk-livestream-indicator.js +1 -1
- package/dist/components/rtk-livestream-player.js +1 -1
- package/dist/components/rtk-livestream-toggle.js +5 -5
- package/dist/components/rtk-logo.js +1 -1
- package/dist/components/rtk-markdown-view.js +1 -1
- package/dist/components/rtk-meeting-title.js +3 -3
- package/dist/components/rtk-meeting.js +40 -28
- package/dist/components/rtk-menu-item.js +1 -1
- package/dist/components/rtk-menu-list.js +1 -1
- package/dist/components/rtk-menu.js +1 -1
- package/dist/components/rtk-message-list-view.js +7 -7
- package/dist/components/rtk-message-view.js +1 -1
- package/dist/components/rtk-mic-toggle.js +6 -6
- package/dist/components/rtk-microphone-selector.js +1 -1
- package/dist/components/rtk-mixed-grid.js +7 -7
- package/dist/components/rtk-more-toggle.js +7 -7
- package/dist/components/rtk-mute-all-button.js +6 -6
- package/dist/components/rtk-mute-all-confirmation.js +1 -1
- package/dist/components/rtk-name-tag.js +1 -1
- package/dist/components/rtk-network-indicator.js +3 -3
- package/dist/components/rtk-notification.js +1 -1
- package/dist/components/rtk-notifications.js +9 -6
- package/dist/components/rtk-overlay-modal.js +1 -1
- package/dist/components/rtk-paginated-list.js +1 -1
- package/dist/components/rtk-participant-count.js +3 -3
- package/dist/components/rtk-participant-setup.js +4 -4
- package/dist/components/rtk-participant-tile.js +1 -1
- package/dist/components/rtk-participant.js +1 -1
- package/dist/components/rtk-participants-audio.js +5 -5
- package/dist/components/rtk-participants-stage-list.js +1 -1
- package/dist/components/rtk-participants-stage-queue.js +1 -1
- package/dist/components/rtk-participants-toggle.js +6 -6
- package/dist/components/rtk-participants-viewer-list.js +1 -1
- package/dist/components/rtk-participants-waiting-list.js +1 -1
- package/dist/components/rtk-participants.js +15 -15
- package/dist/components/rtk-permissions-message.js +1 -1
- package/dist/components/rtk-pip-toggle.js +5 -5
- package/dist/components/rtk-plugin-main.js +1 -1
- package/dist/components/rtk-plugins-toggle.js +6 -6
- package/dist/components/rtk-plugins.js +1 -1
- package/dist/components/rtk-poll-form.js +1 -1
- package/dist/components/rtk-poll.js +1 -1
- package/dist/components/rtk-polls-toggle.js +6 -6
- package/dist/components/rtk-polls.js +1 -1
- package/dist/components/rtk-recording-indicator.js +4 -4
- package/dist/components/rtk-recording-toggle.js +5 -5
- package/dist/components/rtk-screen-share-toggle.js +6 -6
- package/dist/components/rtk-screenshare-view.js +9 -9
- package/dist/components/rtk-settings-audio.js +1 -1
- package/dist/components/rtk-settings-toggle.js +6 -6
- package/dist/components/rtk-settings-video.js +1 -1
- package/dist/components/rtk-settings.js +11 -11
- package/dist/components/rtk-setup-screen.js +7 -7
- package/dist/components/rtk-sidebar-ui.js +1 -1
- package/dist/components/rtk-sidebar.js +10 -10
- package/dist/components/rtk-simple-grid.js +2 -2
- package/dist/components/rtk-speaker-selector.js +1 -1
- package/dist/components/rtk-spinner.js +1 -1
- package/dist/components/rtk-spotlight-grid.js +4 -4
- package/dist/components/rtk-spotlight-indicator.js +1 -1
- package/dist/components/rtk-stage-toggle.js +6 -6
- package/dist/components/rtk-stage.js +3 -3
- package/dist/components/rtk-switch.js +1 -1
- package/dist/components/rtk-tab-bar.js +1 -1
- package/dist/components/rtk-text-composer-view.js +1 -1
- package/dist/components/rtk-text-message-view.js +1 -1
- package/dist/components/rtk-text-message.js +1 -1
- package/dist/components/rtk-tooltip.js +1 -1
- package/dist/components/rtk-transcript.js +1 -1
- package/dist/components/rtk-transcripts.js +3 -3
- package/dist/components/rtk-ui-provider.js +17 -5
- package/dist/components/rtk-viewer-count.js +1 -1
- package/dist/components/rtk-virtualized-participant-list.js +1 -1
- package/dist/components/rtk-waiting-screen.js +4 -4
- package/dist/docs/docs-components.json +372 -82
- package/dist/docs/docs-vscode.json +42 -1
- package/dist/esm/{TextMessage-ca92045e.js → TextMessage-0d8be8c5.js} +1 -1
- package/dist/esm/{chat-ff185374.js → chat-b2bea75f.js} +1 -1
- package/dist/esm/{config-e684aa4d.js → config-325caca3.js} +2 -2
- package/dist/esm/{debounce-3ea4df36.js → debounce-3139f9e3.js} +1 -1
- package/dist/esm/{index-e65afca5.js → index-6eb882e7.js} +1 -1
- package/dist/esm/index.js +7 -7
- package/dist/esm/loader.js +584 -428
- package/dist/esm/{merge-7ffc04b3.js → merge-bc2a0775.js} +1 -1
- package/dist/esm/{notification-78afaabf.js → notification-4beb1e0d.js} +1 -1
- package/dist/esm/realtimekit-ui.js +1 -1
- package/dist/esm/rtk-ai-toggle.entry.js +2 -2
- package/dist/esm/rtk-ai-transcriptions.entry.js +3 -3
- package/dist/esm/rtk-ai.entry.js +2 -2
- package/dist/esm/rtk-audio-grid.entry.js +3 -3
- package/dist/esm/rtk-audio-tile.entry.js +2 -2
- package/dist/esm/rtk-audio-visualizer_4.entry.js +3 -3
- package/dist/esm/rtk-avatar_24.entry.js +430 -301
- package/dist/esm/rtk-breakout-room-manager_3.entry.js +6 -6
- package/dist/esm/rtk-breakout-rooms-manager_9.entry.js +11 -11
- package/dist/esm/rtk-breakout-rooms-toggle.entry.js +2 -2
- package/dist/esm/rtk-camera-selector_2.entry.js +2 -2
- package/dist/esm/rtk-camera-toggle.entry.js +2 -2
- package/dist/esm/rtk-caption-toggle.entry.js +2 -2
- package/dist/esm/rtk-channel-creator.entry.js +4 -4
- package/dist/esm/rtk-channel-details.entry.js +3 -3
- package/dist/esm/rtk-channel-header.entry.js +2 -2
- package/dist/esm/rtk-channel-selector-ui.entry.js +6 -6
- package/dist/esm/rtk-chat-composer-ui.entry.js +3 -3
- package/dist/esm/rtk-chat-message.entry.js +4 -4
- package/dist/esm/rtk-chat-messages-ui.entry.js +5 -5
- package/dist/esm/rtk-chat-search-results.entry.js +3 -3
- package/dist/esm/rtk-chat-selector-ui.entry.js +3 -3
- package/dist/esm/rtk-chat-toggle.entry.js +30 -25
- package/dist/esm/rtk-clock.entry.js +5 -5
- package/dist/esm/rtk-controlbar-button.entry.js +3 -3
- package/dist/esm/rtk-controlbar.entry.js +3 -3
- package/dist/esm/rtk-debugger-audio_4.entry.js +2 -2
- package/dist/esm/rtk-debugger-toggle.entry.js +3 -3
- package/dist/esm/rtk-dialog-manager.entry.js +2 -2
- package/dist/esm/rtk-dialog.entry.js +2 -2
- package/dist/esm/rtk-ended-screen.entry.js +2 -2
- package/dist/esm/rtk-file-dropzone.entry.js +3 -3
- package/dist/esm/rtk-file-message_3.entry.js +12 -12
- package/dist/esm/rtk-fullscreen-toggle.entry.js +2 -2
- package/dist/esm/rtk-grid-pagination.entry.js +2 -2
- package/dist/esm/rtk-grid.entry.js +2 -2
- package/dist/esm/rtk-header.entry.js +3 -3
- package/dist/esm/rtk-idle-screen.entry.js +3 -3
- package/dist/esm/rtk-image-viewer.entry.js +3 -3
- package/dist/esm/rtk-information-tooltip.entry.js +3 -3
- package/dist/esm/rtk-leave-button.entry.js +3 -3
- package/dist/esm/rtk-livestream-indicator_3.entry.js +2 -2
- package/dist/esm/rtk-livestream-toggle.entry.js +2 -2
- package/dist/esm/rtk-logo.entry.js +2 -2
- package/dist/esm/rtk-meeting-title.entry.js +2 -2
- package/dist/esm/rtk-message-list-view.entry.js +6 -6
- package/dist/esm/rtk-mic-toggle.entry.js +2 -2
- package/dist/esm/rtk-mixed-grid.entry.js +2 -2
- package/dist/esm/rtk-more-toggle.entry.js +4 -4
- package/dist/esm/rtk-mute-all-button.entry.js +2 -2
- package/dist/esm/rtk-name-tag.entry.js +3 -3
- package/dist/esm/rtk-network-indicator.entry.js +2 -2
- package/dist/esm/rtk-notification.entry.js +6 -6
- package/dist/esm/rtk-notifications.entry.js +8 -5
- package/dist/esm/rtk-participant-count.entry.js +2 -2
- package/dist/esm/rtk-participant-setup.entry.js +4 -4
- package/dist/esm/rtk-participant_2.entry.js +17 -17
- package/dist/esm/rtk-participants-audio.entry.js +3 -3
- package/dist/esm/rtk-participants-stage-list_4.entry.js +3 -3
- package/dist/esm/rtk-participants-toggle.entry.js +3 -3
- package/dist/esm/rtk-participants.entry.js +3 -3
- package/dist/esm/rtk-pip-toggle.entry.js +2 -2
- package/dist/esm/rtk-plugin-main_2.entry.js +3 -3
- package/dist/esm/rtk-plugins-toggle.entry.js +3 -3
- package/dist/esm/rtk-plugins_2.entry.js +6 -6
- package/dist/esm/rtk-poll_2.entry.js +5 -5
- package/dist/esm/rtk-polls-toggle.entry.js +3 -3
- package/dist/esm/rtk-recording-indicator.entry.js +3 -3
- package/dist/esm/rtk-recording-toggle.entry.js +2 -2
- package/dist/esm/rtk-screen-share-toggle.entry.js +2 -2
- package/dist/esm/rtk-screenshare-view.entry.js +7 -7
- package/dist/esm/rtk-settings-audio_2.entry.js +2 -2
- package/dist/esm/rtk-settings-toggle.entry.js +3 -3
- package/dist/esm/rtk-settings.entry.js +2 -2
- package/dist/esm/rtk-setup-screen.entry.js +2 -2
- package/dist/esm/rtk-sidebar-ui.entry.js +4 -4
- package/dist/esm/rtk-sidebar.entry.js +3 -3
- package/dist/esm/rtk-simple-grid.entry.js +2 -2
- package/dist/esm/rtk-spotlight-grid.entry.js +4 -4
- package/dist/esm/rtk-spotlight-indicator.entry.js +2 -2
- package/dist/esm/rtk-stage-toggle.entry.js +2 -2
- package/dist/esm/rtk-stage.entry.js +3 -3
- package/dist/esm/rtk-transcript.entry.js +3 -3
- package/dist/esm/rtk-transcripts.entry.js +2 -2
- package/dist/esm/rtk-ui-provider.entry.js +13 -3
- package/dist/esm/rtk-waiting-screen.entry.js +3 -3
- package/dist/esm/{sidebar-030fff49.js → sidebar-376c9917.js} +1 -1
- package/dist/esm/{ui-store-9e486e1b.js → ui-store-12132d9c.js} +11 -3
- package/dist/realtimekit-ui/index.esm.js +1 -1
- package/dist/realtimekit-ui/{p-385fddbd.entry.js → p-00445029.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-74e1b5a6.entry.js → p-05d1b9d5.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-95f05e26.entry.js → p-0baa78d7.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-12e4cb4a.js → p-11a469d9.js} +1 -1
- package/dist/realtimekit-ui/{p-8f512d69.entry.js → p-14569a57.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-2b373e53.entry.js → p-1462cbd9.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-2fc5ef84.entry.js → p-1669c53d.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-b387e9a1.entry.js → p-1834416c.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-0b8c47d9.entry.js → p-1fe6003b.entry.js} +1 -1
- package/dist/realtimekit-ui/p-21d4bb9c.entry.js +1 -0
- package/dist/realtimekit-ui/{p-61a53713.entry.js → p-2441260e.entry.js} +1 -1
- package/dist/realtimekit-ui/p-25c4d10f.js +1 -0
- package/dist/realtimekit-ui/{p-53ac3d30.entry.js → p-2b054928.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-62e0a141.entry.js → p-30dcb4cc.entry.js} +1 -1
- package/dist/realtimekit-ui/p-322957ed.entry.js +1 -0
- package/dist/realtimekit-ui/{p-36c8dfa0.entry.js → p-323d1aa4.entry.js} +1 -1
- package/dist/realtimekit-ui/p-342b4926.entry.js +1 -0
- package/dist/realtimekit-ui/p-369648b9.entry.js +1 -0
- package/dist/realtimekit-ui/{p-4eba1baa.entry.js → p-3dd04263.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-60a29b69.entry.js → p-3f4120cc.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-3a325310.entry.js → p-426bf45e.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-a9126c12.entry.js → p-43530cd3.entry.js} +1 -1
- package/dist/realtimekit-ui/p-44531a97.entry.js +1 -0
- package/dist/realtimekit-ui/p-4485414e.entry.js +1 -0
- package/dist/realtimekit-ui/p-44d69c6b.entry.js +1 -0
- package/dist/realtimekit-ui/p-45f90b95.js +1 -0
- package/dist/realtimekit-ui/{p-951a7b06.entry.js → p-48c87789.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-949b2b6a.entry.js → p-4b33b435.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-8b189438.entry.js → p-4b638184.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-9ad2c746.entry.js → p-515a17ce.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-7b999408.entry.js → p-532e1a53.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-38f4773b.entry.js → p-53680d55.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-5383fe87.entry.js → p-54a88fdf.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-c7711712.entry.js → p-573187b4.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-f5aa8af7.entry.js → p-5892c1e0.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-54a31e02.entry.js → p-5b00a8fa.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-aa70de39.entry.js → p-612a8d25.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-6adb2de4.entry.js → p-616dc312.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-a9dd63ef.entry.js → p-639601b7.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-c638f666.entry.js → p-64206b62.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-1666857d.entry.js → p-67ead213.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-882d07c9.entry.js → p-685adc5f.entry.js} +1 -1
- package/dist/realtimekit-ui/p-6896e819.entry.js +1 -0
- package/dist/realtimekit-ui/{p-09869644.entry.js → p-6914a616.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-9cbf286a.entry.js → p-701cdf1b.entry.js} +1 -1
- package/dist/realtimekit-ui/p-7108d1cd.entry.js +1 -0
- package/dist/realtimekit-ui/{p-a319e81f.entry.js → p-75f53ae6.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-c1b81873.entry.js → p-7a9a226e.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-3d0c4257.entry.js → p-7d01d588.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-8b341608.entry.js → p-80e51a73.entry.js} +1 -1
- package/dist/realtimekit-ui/p-820dad23.entry.js +1 -0
- package/dist/realtimekit-ui/p-85b3c0c4.entry.js +1 -0
- package/dist/realtimekit-ui/{p-f0f6c282.entry.js → p-85b45c3b.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-2a0ec1c6.entry.js → p-8778b3e6.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-c5c965b8.entry.js → p-94a37c73.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-3369f405.entry.js → p-95fb25d6.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-80c856cd.js → p-9b550ec4.js} +1 -1
- package/dist/realtimekit-ui/{p-643194e4.entry.js → p-a0d39ea3.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-639ab9ad.entry.js → p-a1408db4.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-d0384d90.entry.js → p-a40cc665.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-084b6f30.js → p-a5900df2.js} +1 -1
- package/dist/realtimekit-ui/{p-a1203856.entry.js → p-a67e2a25.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-31f58b98.entry.js → p-a680da64.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-61a16ccf.entry.js → p-a7172c2d.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-91ea043c.js → p-a7e0277f.js} +1 -1
- package/dist/realtimekit-ui/p-a852e0cf.entry.js +1 -0
- package/dist/realtimekit-ui/{p-ae7319ac.entry.js → p-a9190330.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-7613857e.entry.js → p-ac6c8ebe.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-e7b83772.entry.js → p-ad5e9fdb.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-98ee3341.entry.js → p-af58f450.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-6a45f305.js → p-afa7211c.js} +1 -1
- package/dist/realtimekit-ui/{p-4eee77b0.entry.js → p-b25f7d7b.entry.js} +1 -1
- package/dist/realtimekit-ui/p-b51e813e.entry.js +1 -0
- package/dist/realtimekit-ui/{p-38aec474.entry.js → p-be03944b.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-3eefefa3.entry.js → p-be5bdd0a.entry.js} +1 -1
- package/dist/realtimekit-ui/p-bf717b8c.entry.js +1 -0
- package/dist/realtimekit-ui/p-c5f704a3.entry.js +1 -0
- package/dist/realtimekit-ui/{p-de75d48d.entry.js → p-c8773db0.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-5a2d8313.entry.js → p-cb54bd67.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-ba51770e.entry.js → p-cc226b51.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-91fd286c.js → p-cd0c5440.js} +1 -1
- package/dist/realtimekit-ui/{p-e925ca8a.entry.js → p-cd56beb7.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-d7f16f24.entry.js → p-cda276d6.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-93b84c22.js → p-d3e520e5.js} +1 -1
- package/dist/realtimekit-ui/p-d880fb69.entry.js +1 -0
- package/dist/realtimekit-ui/{p-11c964cf.entry.js → p-e0c73820.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-e62593a2.entry.js → p-e5b426fa.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-61d3f74f.entry.js → p-e78ba202.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-7786e9a7.entry.js → p-ebfde234.entry.js} +1 -1
- package/dist/realtimekit-ui/p-ec5ed8a4.entry.js +1 -0
- package/dist/realtimekit-ui/{p-9c1f42dd.entry.js → p-f266302c.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-d9cad67f.entry.js → p-f32aecbc.entry.js} +1 -1
- package/dist/realtimekit-ui/{p-7f76de48.entry.js → p-f6c82f1b.entry.js} +1 -1
- package/dist/realtimekit-ui/p-fa86682c.entry.js +1 -0
- package/dist/realtimekit-ui/{p-788f26c4.entry.js → p-fcb7a6e2.entry.js} +1 -1
- package/dist/realtimekit-ui/realtimekit-ui.esm.js +1 -1
- package/dist/types/components/rtk-chat/rtk-chat.d.ts +6 -1
- package/dist/types/components/rtk-chat-composer-view/rtk-chat-composer-view.d.ts +1 -0
- package/dist/types/components/rtk-chat-messages-ui-paginated/rtk-chat-messages-ui-paginated.d.ts +2 -0
- package/dist/types/components/rtk-chat-toggle/rtk-chat-toggle.d.ts +4 -6
- package/dist/types/components/rtk-meeting/rtk-meeting.d.ts +4 -0
- package/dist/types/components/rtk-menu-item/rtk-menu-item.d.ts +2 -0
- package/dist/types/components/rtk-menu-list/rtk-menu-list.d.ts +2 -0
- package/dist/types/components/rtk-message-view/rtk-message-view.d.ts +7 -0
- package/dist/types/components/rtk-paginated-list/rtk-paginated-list.d.ts +55 -54
- package/dist/types/components/rtk-ui-provider/rtk-ui-provider.d.ts +4 -1
- package/dist/types/components.d.ts +84 -7
- package/dist/types/exports.d.ts +2 -1
- package/dist/types/lib/overrides.d.ts +16 -0
- package/dist/types/utils/flags.d.ts +0 -1
- package/dist/types/utils/sync-with-store/ui-store.d.ts +4 -1
- package/package.json +1 -1
- package/dist/components/p-a9540d93.js +0 -357
- package/dist/components/p-d4e2ac64.js +0 -203
- package/dist/realtimekit-ui/p-0689d68b.entry.js +0 -1
- package/dist/realtimekit-ui/p-1bf58a84.entry.js +0 -1
- package/dist/realtimekit-ui/p-2f641bfa.entry.js +0 -1
- package/dist/realtimekit-ui/p-33228f0a.entry.js +0 -1
- package/dist/realtimekit-ui/p-3e02ec0b.entry.js +0 -1
- package/dist/realtimekit-ui/p-481549ac.entry.js +0 -1
- package/dist/realtimekit-ui/p-50157a65.entry.js +0 -1
- package/dist/realtimekit-ui/p-50e861f9.entry.js +0 -1
- package/dist/realtimekit-ui/p-57277553.entry.js +0 -1
- package/dist/realtimekit-ui/p-5dc40f1a.entry.js +0 -1
- package/dist/realtimekit-ui/p-77e04fb7.entry.js +0 -1
- package/dist/realtimekit-ui/p-7a8ca3f2.entry.js +0 -1
- package/dist/realtimekit-ui/p-930f0255.entry.js +0 -1
- package/dist/realtimekit-ui/p-941f159e.entry.js +0 -1
- package/dist/realtimekit-ui/p-a4e223e8.entry.js +0 -1
- package/dist/realtimekit-ui/p-b564d931.entry.js +0 -1
- package/dist/realtimekit-ui/p-e720b51e.js +0 -1
- package/dist/realtimekit-ui/p-e87928f7.js +0 -1
- package/dist/realtimekit-ui/p-f40a55e3.entry.js +0 -1
- package/dist/realtimekit-ui/p-f645b8bb.entry.js +0 -1
|
@@ -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
|
|
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 {
|
|
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
|
-
|
|
24
|
-
this.
|
|
62
|
+
this.rerenderBoolean = false;
|
|
63
|
+
this.showEmptyListLabel = false;
|
|
25
64
|
this.isLoading = false;
|
|
26
65
|
this.isLoadingTop = false;
|
|
27
66
|
this.isLoadingBottom = false;
|
|
28
|
-
|
|
29
|
-
this.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
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
|
-
*
|
|
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
|
|
66
|
-
|
|
67
|
-
|
|
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.
|
|
70
|
-
|
|
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
|
-
*
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
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
|
-
*
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
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
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
174
|
-
|
|
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
|
-
|
|
178
|
-
const newestTimestamp = newestVNode.timeMs;
|
|
179
|
-
// TODO: scrollIntoView
|
|
180
|
-
const onPageRendered = () => smoothScrollToBottom(this.$paginatedList);
|
|
234
|
+
this.isLoading = true;
|
|
181
235
|
this.isLoadingBottom = true;
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
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
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
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
|
-
|
|
213
|
-
|
|
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
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
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
|
-
|
|
237
|
-
|
|
318
|
+
else {
|
|
319
|
+
const newOffsetBottom = containerRect.bottom - rect.bottom;
|
|
320
|
+
this.$containerRef.scrollTop += anchor.offsetBottom - newOffsetBottom;
|
|
238
321
|
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
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-
|
|
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: '
|
|
340
|
+
return (h(Host, { key: 'd3a69c210794a552e1a45d0d184b16657cbfde79' }, h("div", { key: 'c9cdb45d5cea872660bc8e2170c3d94c9331a861', class: "scrollbar container", part: "container", ref: (el) => (this.$containerRef = el) }, h("div", { key: '1bacf2a627e8a7f11f75e0ecbda873609cd347b9', class: { 'show-new-messages-ctr': true, active: this.showNewMessagesCTR } }, h("rtk-button", { key: '0c4e3f79e2a7447f1195e03aa026d0f228d09f90', 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: '439f9e943266f60c933812771682bc414b86d418', class: "smallest-dom-element", id: "bottom-scroll", ref: (el) => (this.$bottomRef = el) }), this.isLoadingBottom && this.pages.length > 0 && h("rtk-spinner", { key: 'd79aa2e74a62b14a456c8437362bb01a9df933e1', size: "sm" }), this.isLoading && this.pages.length < 1 && h("rtk-spinner", { key: '7ccfd41966d0337a8abe9a3086ca3f07fe051dc0', 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: '1c6c11863adba0205d0dd2ce649f3bdf51c9df60', size: "sm" }), h("div", { key: '413506236882f6d516967db0f642f5db63c7971f', 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,
|
|
@@ -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": "
|
|
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": "(
|
|
591
|
+
"signature": "(id: string) => Promise<void>",
|
|
532
592
|
"parameters": [{
|
|
533
|
-
"name": "
|
|
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": "
|
|
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": "(
|
|
615
|
+
"signature": "(id: string, node: DataNode) => Promise<void>",
|
|
553
616
|
"parameters": [{
|
|
554
|
-
"name": "
|
|
617
|
+
"name": "id",
|
|
555
618
|
"type": "string",
|
|
556
|
-
"docs": ""
|
|
619
|
+
"docs": "- The id of the node to update"
|
|
557
620
|
}, {
|
|
558
|
-
"name": "
|
|
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": "
|
|
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()
|