fcr-ui-scene 3.1.1 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/installer/icons/favicon.ico +0 -0
- package/installer/icons/favicon.png +0 -0
- package/installer/mac/entitlements.mac.plist +16 -0
- package/lib/base.d.ts +0 -1
- package/lib/base.js +16 -0
- package/lib/common/device-store.d.ts +4 -5
- package/lib/common/device-store.js +178 -86
- package/lib/common/device-stream-store.d.ts +3 -2
- package/lib/common/device-stream-store.js +94 -72
- package/lib/common/event-store.d.ts +20 -3
- package/lib/common/event-store.js +43 -5
- package/lib/common/security-store.d.ts +16 -16
- package/lib/common/security-store.js +278 -124
- package/lib/electron/app.js +13 -5
- package/lib/electron/bootstrap-dev.d.ts +1 -0
- package/lib/electron/bootstrap-dev.js +51 -0
- package/lib/electron/bootstrap-sdk.d.ts +1 -0
- package/lib/electron/bootstrap-sdk.js +56 -0
- package/lib/electron/bootstrap.d.ts +1 -0
- package/lib/electron/bootstrap.js +56 -0
- package/lib/electron/default-options.js +1 -1
- package/lib/electron/dev.d.ts +1 -0
- package/lib/electron/dev.js +51 -0
- package/lib/electron/injections.d.ts +3 -4
- package/lib/electron/injections.js +46 -33
- package/lib/electron/logger.d.ts +6 -0
- package/lib/electron/logger.js +66 -0
- package/lib/electron/main.js +15 -11
- package/lib/electron/plugins/meeting-state.d.ts +2 -0
- package/lib/electron/plugins/meeting-state.js +39 -0
- package/lib/electron/preload.js +2 -1
- package/lib/electron/tools.js +9 -0
- package/lib/electron/window.d.ts +1 -1
- package/lib/electron/window.js +14 -2
- package/lib/fragments/control-bar/context.d.ts +0 -1
- package/lib/fragments/control-bar/control-bar-store.d.ts +34 -1
- package/lib/fragments/control-bar/control-bar-store.js +394 -81
- package/lib/fragments/control-bar/device/index.js +12 -3
- package/lib/fragments/control-bar/index.css +15 -10
- package/lib/fragments/control-bar/index.js +19 -1
- package/lib/fragments/control-bar/meeting-details/meeting-detail.css +109 -0
- package/lib/fragments/control-bar/meeting-details/meeting-details-portal.d.ts +3 -0
- package/lib/fragments/control-bar/meeting-details/meeting-details-portal.js +60 -0
- package/lib/fragments/control-bar/meeting-details/meeting-details.d.ts +2 -0
- package/lib/fragments/control-bar/meeting-details/meeting-details.js +179 -0
- package/lib/fragments/control-bar/more-actions/index.css +53 -0
- package/lib/fragments/control-bar/more-actions/index.js +77 -37
- package/lib/fragments/control-bar/security-content/index.css +10 -0
- package/lib/fragments/control-bar/security-content/index.js +43 -18
- package/lib/fragments/control-bar/view.js +8 -2
- package/lib/fragments/live-streaming/context.d.ts +0 -1
- package/lib/fragments/live-streaming/store.js +27 -17
- package/lib/fragments/share-screen-selection/context.d.ts +0 -1
- package/lib/fragments/share-screen-selection/selection-store.d.ts +0 -1
- package/lib/fragments/share-screen-selection/selection-store.js +34 -33
- package/lib/fragments/share-screen-selection/view.js +7 -0
- package/lib/fragments/toolbar/components/color-picker/components/color.js +2 -0
- package/lib/fragments/toolbar/components/color-picker/components/panel.js +4 -0
- package/lib/fragments/toolbar/components/color-picker/components/picker.js +2 -0
- package/lib/fragments/toolbar/components/color-picker/index.js +5 -1
- package/lib/fragments/toolbar/components/color-picker.js +3 -1
- package/lib/fragments/toolbar/components/eraser-picker.js +4 -13
- package/lib/fragments/toolbar/components/extension-toolbar-item.js +5 -0
- package/lib/fragments/toolbar/components/extra-tool-picker.js +4 -0
- package/lib/fragments/toolbar/components/pen-picker.js +2 -0
- package/lib/fragments/toolbar/components/screen-capture-picker.js +2 -0
- package/lib/fragments/toolbar/components/shape-picker.js +2 -0
- package/lib/fragments/toolbar/hooks.d.ts +1 -1
- package/lib/fragments/toolbar/hooks.js +13 -8
- package/lib/fragments/toolbar/store.d.ts +4 -4
- package/lib/fragments/toolbar/store.js +20 -2
- package/lib/fragments/toolbar/view.js +2 -0
- package/lib/global.d.ts +1 -0
- package/lib/hooks/meeting-time.d.ts +2 -2
- package/lib/login-confirm-dialog.d.ts +12 -0
- package/lib/login-confirm-dialog.js +80 -0
- package/lib/modules/action-bar/action-bar-collapes-items.js +14 -5
- package/lib/modules/action-bar/chat/index.js +6 -6
- package/lib/modules/action-bar/context.d.ts +0 -1
- package/lib/modules/action-bar/device/index.css +7 -2
- package/lib/modules/action-bar/device/index.d.ts +2 -2
- package/lib/modules/action-bar/device/index.js +6 -4
- package/lib/modules/action-bar/index.css +63 -12
- package/lib/modules/action-bar/index.d.ts +3 -2
- package/lib/modules/action-bar/index.dev.js +8 -7
- package/lib/modules/action-bar/index.js +21 -0
- package/lib/modules/action-bar/item-placement.d.ts +1 -2
- package/lib/modules/action-bar/item.js +5 -0
- package/lib/modules/action-bar/leave/assign-host.d.ts +3 -1
- package/lib/modules/action-bar/leave/assign-host.js +7 -7
- package/lib/modules/action-bar/leave/index.js +35 -7
- package/lib/modules/action-bar/leave/leave-meeting.d.ts +11 -1
- package/lib/modules/action-bar/leave/leave-meeting.js +25 -16
- package/lib/modules/action-bar/more/poppover-content.d.ts +0 -1
- package/lib/modules/action-bar/more/poppover-content.js +14 -4
- package/lib/modules/action-bar/participants/index.css +12 -0
- package/lib/modules/action-bar/participants/index.js +21 -14
- package/lib/modules/action-bar/screen-share/index.js +5 -1
- package/lib/modules/action-bar/screen-share/submenu.js +17 -22
- package/lib/modules/action-bar/security/drop-menu.js +124 -14
- package/lib/modules/action-bar/security/index.js +1 -1
- package/lib/modules/action-bar/settings/index.js +1 -1
- package/lib/modules/action-bar/store.d.ts +45 -21
- package/lib/modules/action-bar/store.js +544 -134
- package/lib/modules/action-bar/view.js +65 -42
- package/lib/modules/audio-stream/index.js +12 -6
- package/lib/modules/chat/chat-bar/index.js +46 -27
- package/lib/modules/chat/chat-select/index.css +19 -4
- package/lib/modules/chat/chat-select/index.d.ts +0 -1
- package/lib/modules/chat/chat-select/index.js +29 -3
- package/lib/modules/chat/chat.d.ts +2 -3
- package/lib/modules/chat/chat.js +210 -107
- package/lib/modules/chat/contex.d.ts +0 -1
- package/lib/modules/chat/demo-wrapper.d.ts +0 -1
- package/lib/modules/chat/index.css +49 -0
- package/lib/modules/chat/index.d.ts +3 -3
- package/lib/modules/chat/index.dev.js +4 -4
- package/lib/modules/chat/index.js +32 -11
- package/lib/modules/chat/message-list.js +81 -49
- package/lib/modules/chat/store.d.ts +50 -4
- package/lib/modules/chat/store.js +303 -124
- package/lib/modules/chat/util.js +1 -1
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +2 -0
- package/lib/modules/connection-gateway/components/phone/index.js +2 -0
- package/lib/modules/connection-gateway/index.d.ts +3 -2
- package/lib/modules/connection-gateway/index.js +2 -0
- package/lib/modules/connection-gateway/store.d.ts +6 -4
- package/lib/modules/connection-gateway/store.js +46 -15
- package/lib/modules/device-pretest/audio-preview/microphone-detection.d.ts +1 -0
- package/lib/modules/device-pretest/audio-preview/microphone-detection.js +3 -2
- package/lib/modules/device-pretest/audio-preview/speaker-control.d.ts +0 -1
- package/lib/modules/device-pretest/audio-preview/speaker-control.js +1 -1
- package/lib/modules/device-pretest/context.d.ts +0 -1
- package/lib/modules/device-pretest/index.css +0 -4
- package/lib/modules/device-pretest/index.d.ts +0 -1
- package/lib/modules/device-pretest/index.js +2 -1
- package/lib/modules/device-pretest/settings/beauty.js +19 -6
- package/lib/modules/device-pretest/settings/video-effect.d.ts +0 -1
- package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -0
- package/lib/modules/device-pretest/settings/virtual-background-setting.js +2 -0
- package/lib/modules/device-pretest/store.js +34 -19
- package/lib/modules/dialog/components/chat/electron.js +3 -2
- package/lib/modules/dialog/components/chat/index.js +1 -1
- package/lib/modules/dialog/components/confirm/electron.js +7 -5
- package/lib/modules/dialog/components/confirm/index.js +16 -2
- package/lib/modules/dialog/components/connection-gateway/electron.js +4 -2
- package/lib/modules/dialog/components/connection-gateway/index.css +0 -2
- package/lib/modules/dialog/components/device-setting/electron.d.ts +2 -0
- package/lib/modules/dialog/components/device-setting/electron.js +74 -0
- package/lib/modules/dialog/components/device-setting/index.css +26 -0
- package/lib/modules/dialog/components/device-setting/index.d.ts +4 -0
- package/lib/modules/dialog/components/device-setting/index.js +60 -0
- package/lib/modules/dialog/components/operation-waiting-room/electron.d.ts +5 -0
- package/lib/modules/dialog/components/operation-waiting-room/electron.js +89 -0
- package/lib/modules/dialog/components/operation-waiting-room/index.css +44 -0
- package/lib/modules/dialog/components/operation-waiting-room/index.d.ts +5 -0
- package/lib/modules/dialog/components/operation-waiting-room/index.js +156 -0
- package/lib/modules/dialog/components/participant/electron.js +8 -2
- package/lib/modules/dialog/components/remove-admit-waiting-room/electron.d.ts +5 -0
- package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +89 -0
- package/lib/modules/dialog/components/remove-admit-waiting-room/index.css +50 -0
- package/lib/modules/dialog/components/remove-admit-waiting-room/index.d.ts +5 -0
- package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +90 -0
- package/lib/modules/dialog/components/share-screen-selection/index.js +1 -1
- package/lib/modules/dialog/components/whiteboard/index.js +2 -1
- package/lib/modules/dialog/context.d.ts +0 -1
- package/lib/modules/dialog/dialogs.d.ts +0 -2
- package/lib/modules/dialog/dialogs.js +62 -103
- package/lib/modules/dialog/index.css +7 -6
- package/lib/modules/dialog/index.d.ts +1 -1
- package/lib/modules/dialog/index.js +17 -0
- package/lib/modules/dialog/store.d.ts +6 -2
- package/lib/modules/dialog/store.js +52 -9
- package/lib/modules/dialog/view.js +2 -0
- package/lib/modules/event-notification/context.d.ts +2 -0
- package/lib/modules/event-notification/context.js +9 -0
- package/lib/modules/event-notification/index.css +58 -0
- package/lib/modules/event-notification/index.d.ts +13 -0
- package/lib/modules/event-notification/index.js +48 -0
- package/lib/modules/event-notification/store.d.ts +17 -0
- package/lib/modules/event-notification/store.js +133 -0
- package/lib/modules/event-notification/view.d.ts +5 -0
- package/lib/modules/event-notification/view.js +114 -0
- package/lib/modules/event-toast/context.d.ts +0 -1
- package/lib/modules/event-toast/store.js +16 -0
- package/lib/modules/invite/context.d.ts +0 -1
- package/lib/modules/invite/index.css +4 -4
- package/lib/modules/invite/index.d.ts +2 -2
- package/lib/modules/invite/pstn-invite.js +4 -1
- package/lib/modules/invite/store.d.ts +2 -2
- package/lib/modules/invite/store.js +27 -7
- package/lib/modules/invite/voip-invite.d.ts +0 -1
- package/lib/modules/invite/voip-invite.js +1 -1
- package/lib/modules/layout/components/Aside.d.ts +0 -1
- package/lib/modules/layout/components/Aside.js +4 -1
- package/lib/modules/layout/components/Carousel.js +6 -5
- package/lib/modules/layout/components/Gallery.js +16 -9
- package/lib/modules/layout/components/Layout.js +82 -57
- package/lib/modules/layout/components/index.css +42 -5
- package/lib/modules/layout/components/index.js +3 -0
- package/lib/modules/layout/context.d.ts +0 -1
- package/lib/modules/layout/index.css +30 -0
- package/lib/modules/layout/index.dev.js +11 -11
- package/lib/modules/layout/index.js +0 -6
- package/lib/modules/layout/member-window/index.css +5 -5
- package/lib/modules/layout/member-window/index.d.ts +7 -7
- package/lib/modules/layout/member-window/index.js +59 -13
- package/lib/modules/layout/store.d.ts +61 -50
- package/lib/modules/layout/store.js +517 -342
- package/lib/modules/layout/type.d.ts +2 -1
- package/lib/modules/layout/video-window-datasource.d.ts +14 -8
- package/lib/modules/layout/video-window-datasource.js +129 -78
- package/lib/modules/live-streaming/context.d.ts +0 -1
- package/lib/modules/live-streaming/index.d.ts +2 -2
- package/lib/modules/live-streaming/index.dev.js +5 -4
- package/lib/modules/live-streaming/store.d.ts +2 -2
- package/lib/modules/live-streaming/store.js +32 -11
- package/lib/modules/participant/attendee/index.d.ts +12 -3
- package/lib/modules/participant/attendee/index.js +142 -30
- package/lib/modules/participant/context.d.ts +0 -1
- package/lib/modules/participant/index.css +20 -0
- package/lib/modules/participant/index.d.ts +5 -2
- package/lib/modules/participant/index.dev.js +14 -12
- package/lib/modules/participant/index.js +27 -0
- package/lib/modules/participant/member-list-data-source.d.ts +3 -3
- package/lib/modules/participant/member-list-data-source.js +29 -3
- package/lib/modules/participant/room-control-drop-menu/index.css +37 -0
- package/lib/modules/participant/room-control-drop-menu/index.js +35 -1
- package/lib/modules/participant/store.d.ts +59 -34
- package/lib/modules/participant/store.js +541 -222
- package/lib/modules/participant/view.d.ts +6 -6
- package/lib/modules/participant/view.js +138 -34
- package/lib/modules/setting/audio-settings/audio-settings.js +16 -12
- package/lib/modules/setting/audio-settings/index.css +2 -2
- package/lib/modules/setting/context.d.ts +0 -1
- package/lib/modules/setting/general-settings/general-settings.js +2 -1
- package/lib/modules/setting/general-settings/index.css +2 -2
- package/lib/modules/setting/index.css +1 -5
- package/lib/modules/setting/index.d.ts +2 -2
- package/lib/modules/setting/index.dev.js +14 -12
- package/lib/modules/setting/index.js +16 -0
- package/lib/modules/setting/minutes-settings/index.css +65 -0
- package/lib/modules/setting/minutes-settings/minutes-settings.d.ts +4 -0
- package/lib/modules/setting/minutes-settings/minutes-settings.js +159 -0
- package/lib/modules/setting/state/index.css +0 -4
- package/lib/modules/setting/state/index.js +11 -1
- package/lib/modules/setting/storage-settings/storage-settings.js +1 -1
- package/lib/modules/setting/store.d.ts +7 -5
- package/lib/modules/setting/store.js +69 -46
- package/lib/modules/setting/translate-settings/index.css +45 -0
- package/lib/modules/setting/translate-settings/language-select.d.ts +12 -0
- package/lib/modules/setting/translate-settings/language-select.js +50 -0
- package/lib/modules/setting/translate-settings/translate-settings.d.ts +4 -0
- package/lib/modules/setting/translate-settings/translate-settings.js +139 -0
- package/lib/modules/setting/video-settings/index.css +15 -6
- package/lib/modules/setting/video-settings/video-settings-basic.js +3 -2
- package/lib/modules/setting/video-settings/video-settings.js +5 -1
- package/lib/modules/setting/view.js +34 -2
- package/lib/modules/share-screen/index.d.ts +4 -2
- package/lib/modules/share-screen/index.dev.js +17 -14
- package/lib/modules/share-screen/index.js +2 -0
- package/lib/modules/share-screen/selection/index.css +2 -0
- package/lib/modules/share-screen/selection/index.js +44 -6
- package/lib/modules/share-screen/share-state-bar/index.css +49 -11
- package/lib/modules/share-screen/share-state-bar/index.d.ts +0 -1
- package/lib/modules/share-screen/share-state-bar/index.js +51 -20
- package/lib/modules/share-screen/store.d.ts +23 -13
- package/lib/modules/share-screen/store.js +733 -606
- package/lib/modules/state-bar/context.d.ts +0 -1
- package/lib/modules/state-bar/index.css +2 -2
- package/lib/modules/state-bar/index.d.ts +2 -2
- package/lib/modules/state-bar/index.dev.js +12 -10
- package/lib/modules/state-bar/layout-config.js +2 -0
- package/lib/modules/state-bar/live-streaming-state.js +3 -0
- package/lib/modules/state-bar/meeting-detail.css +6 -4
- package/lib/modules/state-bar/meeting-details.js +29 -3
- package/lib/modules/state-bar/meeting-network-state.css +14 -3
- package/lib/modules/state-bar/meeting-network-state.js +10 -4
- package/lib/modules/state-bar/recording.js +9 -11
- package/lib/modules/state-bar/store.d.ts +7 -5
- package/lib/modules/state-bar/store.js +68 -8
- package/lib/modules/state-bar/view.js +4 -8
- package/lib/modules/video-window/context.d.ts +0 -1
- package/lib/modules/video-window/deviceState/index.d.ts +3 -3
- package/lib/modules/video-window/index.css +1 -0
- package/lib/modules/video-window/members/index.js +7 -4
- package/lib/modules/video-window/store.d.ts +5 -4
- package/lib/modules/video-window/store.js +49 -17
- package/lib/modules/video-window/topControl/index.js +7 -0
- package/lib/modules/video-window/view.js +2 -0
- package/lib/modules/waiting-room-layout/context.d.ts +2 -0
- package/lib/modules/waiting-room-layout/context.js +9 -0
- package/lib/modules/waiting-room-layout/index.css +71 -0
- package/lib/modules/waiting-room-layout/index.d.ts +8 -0
- package/lib/modules/waiting-room-layout/index.js +47 -0
- package/lib/modules/waiting-room-layout/store.d.ts +30 -0
- package/lib/modules/waiting-room-layout/store.js +189 -0
- package/lib/modules/waiting-room-layout/type.d.ts +0 -0
- package/lib/modules/waiting-room-layout/type.js +1 -0
- package/lib/modules/waiting-room-layout/view.d.ts +3 -0
- package/lib/modules/waiting-room-layout/view.js +67 -0
- package/lib/modules/whiteboard/app.js +2 -8
- package/lib/modules/whiteboard/components/control-bar/index.css +3 -0
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +0 -1
- package/lib/modules/whiteboard/components/control-bar/store.js +29 -29
- package/lib/modules/whiteboard/components/loading/index.js +2 -2
- package/lib/modules/whiteboard/components/multi-window/index.js +8 -3
- package/lib/modules/whiteboard/components/pagination/store.d.ts +0 -1
- package/lib/modules/whiteboard/components/progress/electron.js +3 -2
- package/lib/modules/whiteboard/components/progress/style.css +4 -3
- package/lib/modules/whiteboard/components/switch-theme/index.css +4 -0
- package/lib/modules/whiteboard/components/switch-theme/index.d.ts +2 -1
- package/lib/modules/whiteboard/components/switch-theme/index.js +29 -17
- package/lib/modules/whiteboard/components/switch-theme/item.d.ts +1 -0
- package/lib/modules/whiteboard/components/switch-theme/item.js +11 -2
- package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +2 -1
- package/lib/modules/whiteboard/components/switch-theme/libs.js +21 -20
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +2 -0
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/index.js +3 -1
- package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +11 -9
- package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +4 -0
- package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +5 -0
- package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -0
- package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +18 -12
- package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +3 -3
- package/lib/modules/whiteboard/components/toolbar/hooks/index.js +16 -11
- package/lib/modules/whiteboard/components/toolbar/index.js +9 -0
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +8 -7
- package/lib/modules/whiteboard/components/toolbar/store.js +25 -4
- package/lib/modules/whiteboard/context.d.ts +7 -3
- package/lib/modules/whiteboard/context.js +6 -4
- package/lib/modules/whiteboard/index.d.ts +6 -8
- package/lib/modules/whiteboard/index.js +310 -255
- package/lib/modules/whiteboard/type.d.ts +4 -12
- package/lib/modules/whiteboard/type.js +6 -16
- package/lib/modules/whiteboard/utils.d.ts +1 -0
- package/lib/modules/whiteboard/utils.js +12 -1
- package/lib/plugins/browser-runtime-plugin.js +2 -1
- package/lib/plugins/module-dev-plugin.js +12 -10
- package/lib/plugins/multi-lang-plugin.d.ts +1 -5
- package/lib/plugins/multi-lang-plugin.js +2 -0
- package/lib/runtime.d.ts +3 -5
- package/lib/translations/enUS.d.ts +590 -0
- package/lib/translations/enUS.js +608 -6
- package/lib/translations/zhCN.d.ts +588 -0
- package/lib/translations/zhCN.js +604 -4
- package/lib/type.d.ts +6 -2
- package/lib/ui-manager.d.ts +7 -3
- package/lib/ui-manager.js +597 -143
- package/lib/ui-scene.d.ts +1 -0
- package/lib/ui-scene.js +32 -22
- package/lib/utilities/board-context.d.ts +0 -1
- package/lib/utilities/constant.d.ts +47 -5
- package/lib/utilities/constant.js +44 -1
- package/lib/utilities/copyText.js +1 -1
- package/lib/utilities/extract.js +26 -3
- package/lib/utilities/hooks.js +2 -0
- package/lib/utilities/parameters.js +2 -2
- package/lib/utilities/renderer-event.js +28 -0
- package/lib/utilities/renderer.d.ts +1 -0
- package/lib/utilities/renderer.js +15 -6
- package/lib/utilities/tools.js +5 -2
- package/lib/utilities/ui-resources.d.ts +2 -2
- package/lib/utilities/ui-resources.js +20 -3
- package/lib/utilities/video-track-render-context.d.ts +0 -1
- package/package.json +17 -16
- package/public/assets/fcr_defaultpage.png +0 -0
- package/public/assets/login_confirm.png +0 -0
- package/public/index.html +29 -11
- package/lib/modules/device-pretest/settings/index.css +0 -15
- package/lib/modules/participant/attendee/participants-more-action.d.ts +0 -18
- package/lib/modules/participant/attendee/participants-more-action.js +0 -275
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import { FcrChatRoomConnectionState, FcrPrivilegeUserRole, FcrUserInfo, FcrUserRole, FcrUserUpdatedEvent } from 'agora-edu-core/lib/type';
|
|
1
|
+
import { FcrDesktopMediaControl, FcrPrivilegeControl, FcrPrivilegeUserRole, FcrStreamControl, FcrUserControl } from 'agora-edu-core';
|
|
2
|
+
import { FcrUserInfo, FcrUserRole } from 'agora-edu-core/lib/type';
|
|
4
3
|
import { FcrVideoWindowPreviewType } from '../video-window/type';
|
|
5
4
|
import { FcrDeviceStore } from '../../common/device-store';
|
|
6
5
|
import { FcrUIEventObserver, FcrUIEventStore, FcrUISetMainSpeakerParams, FcrUIToggleLayoutParams, FcrUIToggleLayoutSizeParams, FcrUIUpdateAsideParams } from '../../common/event-store';
|
|
7
6
|
import { FcrSecurityStore } from '../../common/security-store';
|
|
8
7
|
import { UIAction } from '../../utilities/constant';
|
|
9
8
|
import { FcrUIVideoWindowData, FcrUIVideoWindowLayoutType, GalleryMaxSize } from './type';
|
|
10
|
-
import { FcrChatRoomControl } from 'agora-edu-core/lib/room-control/chatroom-control';
|
|
11
|
-
import { WhiteboardControlbarEvents } from '../whiteboard/type';
|
|
12
9
|
import { FcrWhiteboardControl } from 'agora-edu-core/lib/room-control/whiteboard-control/types';
|
|
10
|
+
import { FcrChatRoomConnectionState, FcrChatRoomControl } from 'agora-edu-core/lib/room-control/chatroom-control/type';
|
|
11
|
+
import { FcrUserUpdatedEvent } from 'agora-edu-core/lib/room-control/user-control/type';
|
|
12
|
+
import { FcrBaseRoomControl } from 'agora-edu-core/lib/room-control/type';
|
|
13
13
|
export interface FcrLayoutSlots {
|
|
14
14
|
participant: React.ReactNode;
|
|
15
15
|
chat: React.ReactNode;
|
|
@@ -32,11 +32,31 @@ export interface LayoutStoreParams {
|
|
|
32
32
|
securityStore: FcrSecurityStore;
|
|
33
33
|
chatRoomControl: FcrChatRoomControl;
|
|
34
34
|
whiteBoardControl: FcrWhiteboardControl;
|
|
35
|
+
privilegeControl: FcrPrivilegeControl;
|
|
36
|
+
roomControl: FcrBaseRoomControl;
|
|
35
37
|
}
|
|
36
38
|
export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
37
|
-
private _videoWindowDataSource;
|
|
38
39
|
private readonly logger;
|
|
39
40
|
private static MIN_USERS_TO_ENABLE_SPOTLIGHT;
|
|
41
|
+
private _videoWindowDataSource;
|
|
42
|
+
private _deviceStore;
|
|
43
|
+
private _privilegeControl;
|
|
44
|
+
private _uiEventStore;
|
|
45
|
+
private _userControl;
|
|
46
|
+
private _streamControl;
|
|
47
|
+
private _securityStore;
|
|
48
|
+
private _whiteBoardControl;
|
|
49
|
+
private _localView;
|
|
50
|
+
private _subscriptions;
|
|
51
|
+
private _barLockTimer;
|
|
52
|
+
private _chatRoomControl;
|
|
53
|
+
private _waitingRoomControl?;
|
|
54
|
+
private _waitingRoomUserControl?;
|
|
55
|
+
private _liveStreamState;
|
|
56
|
+
private _chatRoomObserver;
|
|
57
|
+
private _waitingRoomUserObserver;
|
|
58
|
+
private _waitingRoomObserver;
|
|
59
|
+
private _managerRoleUpdateForToast;
|
|
40
60
|
accessor participant: React.ReactNode;
|
|
41
61
|
accessor chat: React.ReactNode;
|
|
42
62
|
accessor chatAction: React.ReactNode;
|
|
@@ -60,25 +80,16 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
|
60
80
|
accessor spotlightStreamId: string;
|
|
61
81
|
accessor shouldHideNonVideoParticipants: boolean;
|
|
62
82
|
accessor participantCount: number;
|
|
63
|
-
accessor ownerUser: FcrUserInfo |
|
|
83
|
+
accessor ownerUser: FcrUserInfo | undefined;
|
|
64
84
|
accessor localUser: FcrUserInfo;
|
|
65
|
-
accessor documentVisible: boolean;
|
|
66
85
|
accessor enableSpotlight: boolean;
|
|
67
|
-
|
|
68
|
-
private _uiEventStore;
|
|
69
|
-
private _userControl;
|
|
70
|
-
private _streamControl;
|
|
71
|
-
private _securityStore;
|
|
72
|
-
private _whiteBoardControl;
|
|
73
|
-
private _localView;
|
|
74
|
-
private _subscriptions;
|
|
75
|
-
private _barLockTimer;
|
|
76
|
-
private _chatRoomControl;
|
|
77
|
-
private _chatRoomObserver;
|
|
78
|
-
private _managerRoleUpdateForToast;
|
|
86
|
+
accessor isWaitingRoomNotify: boolean;
|
|
79
87
|
get deviceStore(): FcrDeviceStore;
|
|
80
88
|
get streamControl(): FcrStreamControl;
|
|
89
|
+
get isWaterMarkEnabled(): boolean;
|
|
90
|
+
get isMulti(): boolean;
|
|
81
91
|
get layout(): FcrUIVideoWindowLayoutType;
|
|
92
|
+
get manualLayout(): FcrUIVideoWindowLayoutType | undefined;
|
|
82
93
|
get mainList(): import("./video-window-datasource").FcrUIVideoWindowDataImpl[];
|
|
83
94
|
get mainListMapByAudioStreamId(): Map<string, FcrUIVideoWindowData>;
|
|
84
95
|
get foldList(): import("./video-window-datasource").FcrUIVideoWindowDataImpl[];
|
|
@@ -93,12 +104,17 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
|
93
104
|
get allowChat(): boolean;
|
|
94
105
|
get allowUnmuteSelfAudio(): boolean;
|
|
95
106
|
get allowUnmuteSelfVideo(): boolean;
|
|
107
|
+
get isHostOrCoHost(): boolean;
|
|
108
|
+
get allowedAllChat(): boolean | undefined;
|
|
109
|
+
get allowedPublicChatAndDisallowedPrivateChat(): boolean | undefined;
|
|
110
|
+
get disallowedPublicChatAndDisallowedPrivateChatToParticipant(): boolean | undefined;
|
|
111
|
+
get disallowedAllChat(): boolean | undefined;
|
|
112
|
+
get privilegeOperator(): FcrUserInfo | undefined;
|
|
113
|
+
get localUserId(): string;
|
|
96
114
|
constructor(params: LayoutStoreParams);
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
private _handleSpotlightAdded;
|
|
101
|
-
private _handleSpotlightRemoved;
|
|
115
|
+
getWaterMarkContent(): string;
|
|
116
|
+
notifyParticipantShowWaitingRoom(): void;
|
|
117
|
+
setIsWaitingRoomNotify(): void;
|
|
102
118
|
hasMutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
|
|
103
119
|
hasUnmutePermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
|
|
104
120
|
hasRequestStartAudioPermission(targetRole: FcrPrivilegeUserRole | FcrUserRole): boolean;
|
|
@@ -109,13 +125,7 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
|
109
125
|
setAllowChat(allowChat: boolean): void;
|
|
110
126
|
handleSetPinState(userId: string): void;
|
|
111
127
|
setWhiteboardActive(active: boolean): void;
|
|
112
|
-
private _handleLayoutUpdated;
|
|
113
|
-
private _handleFoldListChanged;
|
|
114
|
-
private _handleMainListChanged;
|
|
115
128
|
setAsideWidth(val: number): void;
|
|
116
|
-
setDocumentVisibility(visible: boolean): void;
|
|
117
|
-
private _switchToSpeaker;
|
|
118
|
-
private _switchToGallery;
|
|
119
129
|
getLocalUserId(): string;
|
|
120
130
|
/**
|
|
121
131
|
* Partially update slots, use `null` to delete the slot.
|
|
@@ -130,42 +140,41 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
|
130
140
|
moveChatFromAsideToDialog(): void;
|
|
131
141
|
openPrivateChat(userId: string): void;
|
|
132
142
|
getAllowedOperations(targetRole: FcrUserRole, isSelf: boolean): string[];
|
|
133
|
-
toggleLayout(layout: FcrUIVideoWindowLayoutType): void;
|
|
143
|
+
toggleLayout(layout: FcrUIVideoWindowLayoutType, manual?: boolean): void;
|
|
134
144
|
toggleCollapsed(collapsed?: boolean): void;
|
|
135
145
|
setGalleryMaxSize(size: GalleryMaxSize): void;
|
|
136
146
|
toggleAside(open?: boolean): void;
|
|
137
147
|
asideWidthChanged(width: number): void;
|
|
138
148
|
toggleLayoutBarLock(state: boolean): void;
|
|
139
149
|
toggleLayoutBarHidden(): void;
|
|
140
|
-
private _setBarHovering;
|
|
141
150
|
resetLockTimer(): void;
|
|
142
151
|
setHoveringHandler(): void;
|
|
143
152
|
setHoveringLeaveHandler(): false | void;
|
|
144
153
|
release(): void;
|
|
145
|
-
private _onAllUserCountUpdated;
|
|
146
154
|
onUserInfoUpdated(roomId: string, event: FcrUserUpdatedEvent): void;
|
|
147
155
|
setLocalUserRole(role: FcrUserRole): void;
|
|
148
|
-
onEvent(action: UIAction.UPDATE_ASIDE, payload: FcrUIUpdateAsideParams): void;
|
|
149
|
-
onEvent(action: UIAction.TOGGLE_LAYOUT, payload: FcrUIToggleLayoutParams): void;
|
|
150
|
-
onEvent(action: UIAction.TOGGLE_LAYOUT_SIZE, payload: FcrUIToggleLayoutSizeParams): void;
|
|
151
|
-
onEvent(action: UIAction.SET_MAIN_SPEAKER, payload: FcrUISetMainSpeakerParams): void;
|
|
152
|
-
onEvent(action: UIAction.TOGGLE_LAYOUT_BAR_LOCK, payload: boolean): void;
|
|
153
|
-
onEvent(action: UIAction.WHITEBOARD_CHANGED, payload: {
|
|
154
|
-
action: WhiteboardControlbarEvents;
|
|
155
|
-
payload: boolean;
|
|
156
|
-
}): void;
|
|
157
156
|
stopLocalPreview(view: HTMLDivElement): void;
|
|
158
157
|
startLocalPreview(div: HTMLDivElement | null): void;
|
|
159
|
-
get isHostOrCoHost(): boolean;
|
|
160
158
|
setAllowChatWithPayload(type: 'public' | 'private_to_manager'): void;
|
|
161
|
-
get allowedAllChat(): boolean | undefined;
|
|
162
|
-
get allowedPublicChatAndDisallowedPrivateChat(): boolean | undefined;
|
|
163
|
-
get disallowedPublicChatAndDisallowedPrivateChatToParticipant(): boolean | undefined;
|
|
164
|
-
get disallowedAllChat(): boolean | undefined;
|
|
165
159
|
muteAudio(mute: boolean, userId: string): void;
|
|
166
160
|
sendParticipantEvent(payload: unknown): void;
|
|
167
|
-
|
|
168
|
-
|
|
161
|
+
onEvent(action: UIAction.UPDATE_ASIDE, payload: FcrUIUpdateAsideParams): void;
|
|
162
|
+
onEvent(action: UIAction.TOGGLE_LAYOUT, payload: FcrUIToggleLayoutParams): void;
|
|
163
|
+
onEvent(action: UIAction.TOGGLE_LAYOUT_SIZE, payload: FcrUIToggleLayoutSizeParams): void;
|
|
164
|
+
onEvent(action: UIAction.SET_MAIN_SPEAKER, payload: FcrUISetMainSpeakerParams): void;
|
|
165
|
+
onEvent(action: UIAction.TOGGLE_LAYOUT_BAR_LOCK, payload: boolean): void;
|
|
166
|
+
private _addListeners;
|
|
167
|
+
private _handleLayoutUpdated;
|
|
168
|
+
private _handleFoldListChanged;
|
|
169
|
+
private _handleMainListChanged;
|
|
170
|
+
private _switchToSpeaker;
|
|
171
|
+
private _switchToGallery;
|
|
172
|
+
private _setBarHovering;
|
|
173
|
+
private _onAllUserCountUpdated;
|
|
174
|
+
private _initStream;
|
|
175
|
+
private _isSetSpotlightEnable;
|
|
176
|
+
private _handleSpotlightAdded;
|
|
177
|
+
private _handleSpotlightRemoved;
|
|
169
178
|
private _handleConnectionUpdated;
|
|
170
179
|
private _handleStreamAdded;
|
|
171
180
|
private _onStreamsAdded;
|
|
@@ -174,4 +183,6 @@ export default class LayoutStore implements FcrLayoutSlots, FcrUIEventObserver {
|
|
|
174
183
|
private _onAudioVolumeUpdated;
|
|
175
184
|
private _setSpotlightStream;
|
|
176
185
|
private _findSpotlightStream;
|
|
186
|
+
private _handleRemoteWaitingUserLeft;
|
|
187
|
+
private _handleMessageReceived;
|
|
177
188
|
}
|