fcr-ui-scene 3.5.1 → 3.6.1
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/lib/creator.d.ts +14 -0
- package/lib/creator.js +239 -14
- package/lib/electron/app.js +0 -21
- package/lib/electron/bootstrap-sdk.js +145 -7
- package/lib/electron/injections.d.ts +19 -7
- package/lib/electron/injections.js +206 -77
- package/lib/electron/ipc/ipc.d.ts +26 -0
- package/lib/electron/ipc/ipc.js +137 -0
- package/lib/electron/ipc/type.d.ts +11 -0
- package/lib/electron/ipc/type.js +19 -0
- package/lib/electron/logger.js +1 -1
- package/lib/electron/main.js +1 -1
- package/lib/electron/plugins/meeting-state.d.ts +1 -0
- package/lib/electron/plugins/meeting-state.js +3 -3
- package/lib/electron/plugins/screenshot.js +2 -2
- package/lib/electron/preload.js +67 -5
- package/lib/electron/window.js +0 -2
- package/lib/global.css +39 -0
- package/lib/modules/action-bar/components/apps/index.js +1 -0
- package/lib/modules/action-bar/components/apps/useWidgetList.js +1 -1
- package/lib/modules/action-bar/components/board/index.js +0 -2
- package/lib/modules/action-bar/components/breakout-room/index.js +0 -2
- package/lib/modules/action-bar/components/item/index.d.ts +2 -0
- package/lib/modules/action-bar/components/item/index.js +4 -2
- package/lib/modules/action-bar/components/leave/index.js +2 -12
- package/lib/modules/action-bar/components/more/index.js +1 -0
- package/lib/modules/action-bar/components/more/poppover-content.js +6 -9
- package/lib/modules/action-bar/components/participants/index.js +1 -9
- package/lib/modules/action-bar/components/record/index.js +43 -106
- package/lib/modules/action-bar/components/record/popover.d.ts +4 -0
- package/lib/modules/action-bar/components/record/popover.js +57 -0
- package/lib/modules/action-bar/components/record/stop-record-dialog.js +1 -0
- package/lib/modules/action-bar/components/screen-share/index.js +11 -3
- package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
- package/lib/modules/action-bar/components/security/index.js +2 -1
- package/lib/modules/action-bar/components/smaller/index.js +1 -1
- package/lib/modules/action-bar/components/trigger-output-language/index.js +17 -22
- package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +2 -1
- package/lib/modules/action-bar/index.css +3 -2
- package/lib/modules/action-bar/index.js +2 -1
- package/lib/modules/action-bar/store.d.ts +5 -2
- package/lib/modules/action-bar/store.js +34 -22
- package/lib/modules/action-bar/types.d.ts +1 -0
- package/lib/modules/action-bar/view.js +1 -1
- package/lib/modules/audio-stream/index.js +4 -4
- package/lib/modules/chat/chat-room-store.js +4 -5
- package/lib/modules/chat/components/chat-bar/index.d.ts +1 -1
- package/lib/modules/chat/components/chat-bar/index.js +5 -3
- package/lib/modules/chat/components/chat-select/select-item/index.js +1 -1
- package/lib/modules/chat/components/message-list/index.js +1 -2
- package/lib/modules/chat/components/message-list/message-item/index.d.ts +0 -1
- package/lib/modules/chat/components/message-list/message-item/index.js +9 -10
- package/lib/modules/chat/index.css +24 -0
- package/lib/modules/chat/view.js +13 -3
- package/lib/modules/components/device-control/components/carmera/index.js +4 -5
- package/lib/modules/components/device-control/components/microphone/index.js +4 -5
- package/lib/modules/components/device-control/index.css +6 -3
- package/lib/modules/components/leave-meeting/components/assign-host.js +26 -4
- package/lib/modules/components/leave-meeting/components/index.css +35 -0
- package/lib/modules/components/leave-meeting/index.js +1 -0
- package/lib/modules/components/leave-meeting/store.js +25 -67
- package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +3 -2
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +1 -2
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +10 -9
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +2 -2
- package/lib/modules/components/member-window/components/member-actions/components/user-info.js +1 -1
- package/lib/modules/components/member-window/components/member-actions/index.js +2 -4
- package/lib/modules/components/member-window/components/member-actions/libs/index.js +0 -1
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +1 -1
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +4 -16
- package/lib/modules/components/member-window/index.css +19 -7
- package/lib/modules/components/member-window/index.js +0 -1
- package/lib/modules/components/member-window/types.d.ts +1 -1
- package/lib/modules/components/security-menu/index.css +2 -2
- package/lib/modules/components/security-menu/index.js +80 -28
- package/lib/modules/components/tab-frame/index.css +1 -1
- package/lib/modules/connection-gateway/components/phone/index.js +1 -1
- package/lib/modules/control-bar/components/meeting-details/index.css +1 -1
- package/lib/modules/control-bar/components/meeting-details/index.js +15 -9
- package/lib/modules/control-bar/components/more-actions/index.js +3 -21
- package/lib/modules/control-bar/components/share-state-nav/index.js +4 -20
- package/lib/modules/control-bar/index.d.ts +2 -0
- package/lib/modules/control-bar/index.js +3 -1
- package/lib/modules/control-bar/store.d.ts +12 -3
- package/lib/modules/control-bar/store.js +106 -98
- package/lib/modules/control-bar/view.js +1 -6
- package/lib/modules/device-pretest/audio-preview/speaker-detection.js +1 -1
- package/lib/modules/dialog/components/chat/electron.d.ts +1 -3
- package/lib/modules/dialog/components/chat/index.js +24 -17
- package/lib/modules/dialog/components/confirm-leave-meeting/index.d.ts +6 -0
- package/lib/modules/dialog/components/confirm-leave-meeting/index.js +86 -0
- package/lib/modules/dialog/components/control-bar/index.d.ts +1 -2
- package/lib/modules/dialog/components/control-bar/index.js +5 -17
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/component/body.js +4 -2
- package/lib/modules/dialog/components/dialog-container/index.css +18 -1
- package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/index.js +3 -1
- package/lib/modules/dialog/components/participant/index.d.ts +0 -1
- package/lib/modules/dialog/components/participant/index.js +15 -24
- package/lib/modules/dialog/components/pre-setting/electron.d.ts +2 -0
- package/lib/modules/dialog/components/pre-setting/electron.js +51 -0
- package/lib/modules/dialog/components/pre-setting/index.css +26 -0
- package/lib/modules/dialog/components/pre-setting/index.d.ts +6 -0
- package/lib/modules/dialog/components/pre-setting/index.js +38 -0
- package/lib/modules/dialog/components/pre-setting-container/component/body.d.ts +8 -0
- package/lib/modules/dialog/components/pre-setting-container/component/body.js +80 -0
- package/lib/modules/dialog/components/pre-setting-container/index.css +82 -0
- package/lib/modules/dialog/components/pre-setting-container/index.d.ts +18 -0
- package/lib/modules/dialog/components/pre-setting-container/index.js +117 -0
- package/lib/modules/dialog/components/rename/index.d.ts +4 -0
- package/lib/modules/dialog/components/rename/index.js +72 -0
- package/lib/modules/dialog/components/share-screen-selection/index.js +1 -2
- package/lib/modules/dialog/components/video-window/index.js +18 -16
- package/lib/modules/dialog/components/widget/electron.d.ts +2 -1
- package/lib/modules/dialog/components/widget/electron.js +3 -2
- package/lib/modules/dialog/components/widget/index.d.ts +2 -1
- package/lib/modules/dialog/components/widget/index.js +4 -6
- package/lib/modules/dialog/dialogs.d.ts +1 -0
- package/lib/modules/dialog/dialogs.js +3 -2
- package/lib/modules/dialog/hooks/useElectron.d.ts +2 -0
- package/lib/modules/dialog/hooks/useElectron.js +22 -101
- package/lib/modules/dialog/index.d.ts +2 -0
- package/lib/modules/dialog/index.js +2 -2
- package/lib/modules/dialog/store.d.ts +8 -3
- package/lib/modules/dialog/store.js +38 -26
- package/lib/modules/dialog/type.d.ts +1 -0
- package/lib/modules/dialog/view.js +2 -1
- package/lib/modules/event-confirm/index.d.ts +2 -0
- package/lib/modules/event-confirm/index.js +2 -1
- package/lib/modules/event-confirm/store.d.ts +9 -1
- package/lib/modules/event-confirm/store.js +100 -8
- package/lib/modules/event-confirm/view.js +55 -46
- package/lib/modules/{sound-effect → event-sound}/index.d.ts +3 -2
- package/lib/modules/{sound-effect → event-sound}/index.js +9 -5
- package/lib/modules/event-toast/store.js +6 -1
- package/lib/modules/interpreter/dialog-content/index.js +4 -1
- package/lib/modules/interpreter/index.d.ts +2 -0
- package/lib/modules/interpreter/index.js +2 -1
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -0
- package/lib/modules/interpreter/store.d.ts +2 -2
- package/lib/modules/interpreter/store.js +30 -24
- package/lib/modules/interpreter/type.d.ts +2 -0
- package/lib/modules/invite/components/pstn-invite.js +2 -25
- package/lib/modules/invite/components/voip-invite.css +26 -0
- package/lib/modules/invite/components/voip-invite.d.ts +1 -0
- package/lib/modules/invite/components/voip-invite.js +8 -11
- package/lib/modules/invite/index.css +16 -3
- package/lib/modules/invite/index.d.ts +2 -1
- package/lib/modules/invite/index.js +2 -1
- package/lib/modules/invite/store.d.ts +5 -1
- package/lib/modules/invite/store.js +8 -1
- package/lib/modules/layout/components/Aside.js +0 -1
- package/lib/modules/layout/components/Carousel.d.ts +1 -1
- package/lib/modules/layout/components/Carousel.js +16 -118
- package/lib/modules/layout/components/CommonVideoRenderer.d.ts +13 -0
- package/lib/modules/layout/components/CommonVideoRenderer.js +214 -0
- package/lib/modules/layout/components/Gallery.d.ts +1 -0
- package/lib/modules/layout/components/Gallery.js +62 -205
- package/lib/modules/layout/components/index.css +17 -34
- package/lib/modules/layout/index.d.ts +2 -0
- package/lib/modules/layout/index.js +2 -1
- package/lib/modules/layout/store.d.ts +5 -2
- package/lib/modules/layout/store.js +53 -39
- package/lib/modules/layout/type.d.ts +4 -0
- package/lib/modules/layout/type.js +6 -1
- package/lib/modules/live-streaming/store.d.ts +1 -0
- package/lib/modules/live-streaming/store.js +19 -8
- package/lib/modules/participant/components/confirm-input/index.d.ts +4 -4
- package/lib/modules/participant/components/confirm-input/index.js +74 -6
- package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +27 -3
- package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +4 -0
- package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +3 -4
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +4 -3
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +1 -0
- package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +9 -1
- package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +1 -1
- package/lib/modules/participant/components/participants/components/participants/index.css +1 -0
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +18 -0
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +12 -5
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +1 -8
- package/lib/modules/participant/index.css +6 -0
- package/lib/modules/participant/index.d.ts +1 -0
- package/lib/modules/participant/index.js +9 -0
- package/lib/modules/participant/store.d.ts +6 -0
- package/lib/modules/participant/store.js +130 -96
- package/lib/modules/pc-audio-connect/store.js +3 -2
- package/lib/modules/phone-audio-connect/index.d.ts +2 -0
- package/lib/modules/phone-audio-connect/index.js +2 -1
- package/lib/modules/phone-audio-connect/store.d.ts +4 -1
- package/lib/modules/phone-audio-connect/store.js +4 -2
- package/lib/modules/setting/audio-settings/audio-settings.js +70 -48
- package/lib/modules/setting/audio-settings/index.css +23 -6
- package/lib/modules/setting/general-settings/general-settings.d.ts +1 -2
- package/lib/modules/setting/general-settings/general-settings.js +111 -37
- package/lib/modules/setting/general-settings/index.css +15 -0
- package/lib/modules/setting/index.d.ts +4 -1
- package/lib/modules/setting/index.js +7 -4
- package/lib/modules/setting/state/index.js +1 -1
- package/lib/modules/setting/store.d.ts +24 -11
- package/lib/modules/setting/store.js +203 -142
- package/lib/modules/setting/video-settings/index.css +13 -2
- package/lib/modules/setting/video-settings/video-settings-basic.js +18 -27
- package/lib/modules/setting/video-settings/video-settings.d.ts +0 -2
- package/lib/modules/setting/video-settings/video-settings.js +3 -2
- package/lib/modules/setting/view.d.ts +11 -2
- package/lib/modules/setting/view.js +93 -71
- package/lib/modules/share-screen/components/selection/index.js +6 -2
- package/lib/modules/share-screen/index.d.ts +4 -1
- package/lib/modules/share-screen/index.js +3 -1
- package/lib/modules/share-screen/store.d.ts +15 -5
- package/lib/modules/share-screen/store.js +105 -59
- package/lib/modules/share-screen/view.js +1 -1
- package/lib/modules/state-bar/index.css +4 -2
- package/lib/modules/state-bar/index.d.ts +2 -0
- package/lib/modules/state-bar/index.js +2 -1
- package/lib/modules/state-bar/layout-config.js +1 -0
- package/lib/modules/state-bar/live-streaming-state.js +1 -0
- package/lib/modules/state-bar/meeting-detail.css +10 -1
- package/lib/modules/state-bar/meeting-details.js +35 -25
- package/lib/modules/state-bar/meeting-network-state.css +8 -0
- package/lib/modules/state-bar/meeting-time.js +9 -20
- package/lib/modules/state-bar/store.d.ts +5 -1
- package/lib/modules/state-bar/store.js +10 -3
- package/lib/modules/state-bar/view.js +17 -6
- package/lib/modules/video-window/components/members/index.js +0 -3
- package/lib/modules/waiting-room-layout/index.css +13 -0
- package/lib/modules/waiting-room-layout/index.d.ts +2 -1
- package/lib/modules/waiting-room-layout/index.js +2 -1
- package/lib/modules/waiting-room-layout/store.d.ts +12 -1
- package/lib/modules/waiting-room-layout/store.js +42 -6
- package/lib/modules/waiting-room-layout/view.js +22 -5
- package/lib/modules/whiteboard/components/control-bar/index.css +1 -1
- package/lib/modules/whiteboard/components/control-bar/index.js +0 -2
- package/lib/modules/whiteboard/components/scene-pagination.js +0 -2
- package/lib/modules/whiteboard/components/switch-theme/libs.d.ts +1 -1
- package/lib/modules/whiteboard/components/switch-theme/libs.js +3 -1
- package/lib/modules/whiteboard/components/toolbar/ style.css +1 -0
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/color.js +1 -2
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +1 -0
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +1 -0
- package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +3 -14
- package/lib/modules/whiteboard/components/toolbar/components/expansion/index.d.ts +1 -0
- package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +83 -0
- package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +2 -2
- package/lib/modules/whiteboard/components/toolbar/components/history.js +3 -3
- package/lib/modules/whiteboard/components/toolbar/components/item/index.d.ts +1 -0
- package/lib/modules/whiteboard/components/toolbar/components/item/index.js +42 -0
- package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +2 -2
- package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +2 -2
- package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +3 -3
- package/lib/modules/whiteboard/components/toolbar/hooks/index.js +6 -6
- package/lib/modules/whiteboard/components/toolbar/index.js +9 -113
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +18 -0
- package/lib/modules/whiteboard/components/toolbar/store.js +276 -83
- package/lib/modules/whiteboard/context.d.ts +1 -2
- package/lib/modules/whiteboard/index.d.ts +1 -14
- package/lib/modules/whiteboard/index.js +131 -426
- package/lib/modules/whiteboard/view.js +12 -10
- package/lib/modules/widget/sdk.js +2 -2
- package/lib/object-manager.d.ts +8 -0
- package/lib/object-manager.js +75 -0
- package/lib/plugins/browser-runtime-plugin.js +19 -14
- package/lib/providers/ability-provider.d.ts +8 -0
- package/lib/providers/ability-provider.js +14 -0
- package/lib/providers/device-privilege-provider.d.ts +1 -0
- package/lib/providers/device-privilege-provider.js +53 -75
- package/lib/providers/device-provider.d.ts +18 -8
- package/lib/providers/device-provider.js +378 -206
- package/lib/providers/device-stream-provider.js +0 -4
- package/lib/providers/dialog-provider.d.ts +1 -0
- package/lib/providers/dialog-provider.js +4 -18
- package/lib/providers/event-provider.js +45 -2
- package/lib/providers/interpreter-provider.d.ts +4 -0
- package/lib/providers/interpreter-provider.js +166 -137
- package/lib/providers/message-provider.js +44 -2
- package/lib/providers/privilege-provider.d.ts +33 -0
- package/lib/providers/privilege-provider.js +120 -45
- package/lib/providers/room-provider.d.ts +12 -10
- package/lib/providers/room-provider.js +162 -262
- package/lib/providers/screen-share-provider.d.ts +4 -0
- package/lib/providers/screen-share-provider.js +3 -6
- package/lib/providers/widget-provider.js +6 -4
- package/lib/runtime.d.ts +20 -8
- package/lib/scenes/main-scene.d.ts +2 -0
- package/lib/scenes/main-scene.js +95 -37
- package/lib/scenes/waiting-scene.js +16 -13
- package/lib/schema.d.ts +55 -32
- package/lib/schema.js +23 -9
- package/lib/shared-data-source/config.d.ts +6 -2
- package/lib/shared-data-source/config.js +81 -10
- package/lib/shared-data-source/meeting-time.js +2 -2
- package/lib/shared-data-source/member-data.d.ts +16 -20
- package/lib/shared-data-source/member-data.js +121 -110
- package/lib/shared-data-source/screen-share-data-source.d.ts +37 -0
- package/lib/shared-data-source/screen-share-data-source.js +134 -0
- package/lib/shared-data-source/security-data.d.ts +1 -0
- package/lib/shared-data-source/security-data.js +3 -5
- package/lib/shared-data-source/setting.d.ts +1 -0
- package/lib/shared-data-source/setting.js +33 -17
- package/lib/shared-data-source/video-window.d.ts +3 -4
- package/lib/shared-data-source/video-window.js +58 -48
- package/lib/translations/enUS.d.ts +48 -1
- package/lib/translations/enUS.js +101 -17
- package/lib/translations/zhCN.d.ts +48 -1
- package/lib/translations/zhCN.js +88 -4
- package/lib/type.d.ts +40 -20
- package/lib/type.js +14 -1
- package/lib/ui-manager.d.ts +11 -9
- package/lib/ui-manager.js +118 -29
- package/lib/ui-scene.d.ts +7 -4
- package/lib/ui-scene.js +111 -130
- package/lib/utilities/constant.d.ts +3 -1
- package/lib/utilities/constant.js +2 -0
- package/lib/utilities/copyText.js +15 -11
- package/lib/utilities/default-config.d.ts +2 -0
- package/lib/utilities/default-config.js +11 -5
- package/lib/utilities/i18n-common-data.d.ts +2 -0
- package/lib/utilities/i18n-common-data.js +15 -0
- package/lib/utilities/logger.d.ts +0 -1
- package/lib/utilities/logger.js +3 -4
- package/lib/utilities/renderer.d.ts +0 -9
- package/lib/utilities/renderer.js +1 -70
- package/lib/utilities/screen.js +3 -1
- package/lib/utilities/setting-config-storage.d.ts +6 -1
- package/lib/utilities/setting-config-storage.js +21 -4
- package/lib/utilities/tools.d.ts +30 -6
- package/lib/utilities/tools.js +74 -44
- package/lib/utilities/ui-resources.d.ts +6 -0
- package/lib/utilities/ui-resources.js +47 -9
- package/lib/waiting-room-control-manager.d.ts +4 -4
- package/lib/waiting-room-control-manager.js +29 -9
- package/package.json +6 -6
- package/public/assets/browser/images/default1.jpg +0 -0
- package/public/assets/browser/images/default2.jpg +0 -0
- package/public/assets/browser/images/default3.jpg +0 -0
- package/public/assets/browser/images/default4.jpg +0 -0
- package/public/assets/browser/images/default5.jpg +0 -0
- package/public/assets/browser/images/default6.jpg +0 -0
- package/public/assets/browser/images/default7.jpg +0 -0
- package/public/assets/browser/sound_effects/pretest.mp3 +0 -0
- package/public/assets/browser/sound_effects/recording_started.mp3 +0 -0
- package/public/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
- package/public/assets/browser/sound_effects/speaker_test.mp3 +0 -0
- package/public/assets/browser/videos/default8.mp4 +0 -0
- package/public/assets/browser/videos/default9.mp4 +0 -0
- package/public/assets/electron/images/default1.jpg +0 -0
- package/public/assets/electron/images/default2.jpg +0 -0
- package/public/assets/electron/sound_effects/pretest.mp3 +0 -0
- package/public/assets/electron/videos/default8.mp4 +0 -0
- package/public/index.html +103 -82
- package/lib/hooks/meeting-time.d.ts +0 -15
- package/lib/hooks/meeting-time.js +0 -92
- package/lib/login-confirm-dialog.d.ts +0 -13
- package/lib/login-confirm-dialog.js +0 -85
- package/lib/modules/action-bar/components/apps/appitems.d.ts +0 -3
- package/lib/modules/action-bar/components/apps/appitems.js +0 -45
- package/lib/modules/components/member-window/components/member-board.d.ts +0 -2
- package/lib/modules/components/member-window/components/member-board.js +0 -63
- package/lib/modules/dialog/components/system-preference/bg1.png +0 -0
- package/lib/modules/dialog/components/system-preference/bg2.png +0 -0
- package/lib/modules/dialog/types/index.d.ts +0 -70
- package/lib/modules/participant/components/attendee/components/microphone-indicator/index.d.ts +0 -6
- package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js +0 -28
- package/lib/modules/participant/components/attendee/components/user-avatar/index.d.ts +0 -7
- package/lib/modules/participant/components/attendee/components/user-avatar/index.js +0 -39
- package/lib/modules/participant/components/attendee/index.css +0 -69
- package/lib/modules/participant/components/attendee/index.d.ts +0 -4
- package/lib/modules/participant/components/attendee/index.js +0 -337
- package/lib/modules/participant/components/drop-menu/index.css +0 -60
- package/lib/modules/participant/components/drop-menu/index.d.ts +0 -2
- package/lib/modules/participant/components/drop-menu/index.js +0 -189
- package/lib/modules/participant/components/footer/buttons.d.ts +0 -6
- package/lib/modules/participant/components/footer/buttons.js +0 -52
- package/lib/modules/participant/components/footer/index.d.ts +0 -4
- package/lib/modules/participant/components/footer/index.js +0 -37
- package/lib/modules/participant/components/merge/index.d.ts +0 -11
- package/lib/modules/participant/components/merge/index.js +0 -49
- package/lib/modules/participant/components/rename/index.d.ts +0 -4
- package/lib/modules/participant/components/rename/index.js +0 -45
- package/lib/modules/participant/components/user-action/index.d.ts +0 -17
- package/lib/modules/participant/components/user-action/index.js +0 -169
- package/lib/modules/video-window/deviceState/index.d.ts +0 -16
- package/lib/modules/video-window/deviceState/index.js +0 -75
- package/lib/modules/video-window/members/index.css +0 -51
- package/lib/modules/video-window/members/index.d.ts +0 -2
- package/lib/modules/video-window/members/index.js +0 -157
- package/lib/modules/video-window/speaking/index.css +0 -69
- package/lib/modules/video-window/speaking/index.d.ts +0 -3
- package/lib/modules/video-window/speaking/index.js +0 -57
- package/lib/modules/video-window/topControl/index.css +0 -35
- package/lib/modules/video-window/topControl/index.d.ts +0 -3
- package/lib/modules/video-window/topControl/index.js +0 -92
- /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.d.ts +0 -0
- /package/lib/modules/{sound-effect → event-sound}/sound-effect-player.js +0 -0
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("core-js/modules/es.object.define-property.js");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.MemberBoard = void 0;
|
|
9
|
-
var _mobxReact = require("mobx-react");
|
|
10
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
11
|
-
var _env = require("agora-foundation/lib/utilities/env");
|
|
12
|
-
var _memberActions = require("./member-actions");
|
|
13
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
-
var MemberBoard = exports.MemberBoard = (0, _mobxReact.observer)(function (_ref) {
|
|
15
|
-
var slot = _ref.slot,
|
|
16
|
-
isMask = _ref.isMask,
|
|
17
|
-
onMaskDoubleClick = _ref.onMaskDoubleClick,
|
|
18
|
-
windowData = _ref.windowData,
|
|
19
|
-
allowedOperations = _ref.allowedOperations,
|
|
20
|
-
showActionBottomLabel = _ref.showActionBottomLabel,
|
|
21
|
-
isShowActionAudio = _ref.isShowActionAudio,
|
|
22
|
-
actionAudioTag = _ref.actionAudioTag,
|
|
23
|
-
hasPinnedStream = _ref.hasPinnedStream,
|
|
24
|
-
localUserRole = _ref.localUserRole,
|
|
25
|
-
sendParticipantEvent = _ref.sendParticipantEvent,
|
|
26
|
-
muteAudio = _ref.muteAudio,
|
|
27
|
-
openPrivateChat = _ref.openPrivateChat,
|
|
28
|
-
setVideoOrientation = _ref.setVideoOrientation,
|
|
29
|
-
interpreterUserList = _ref.interpreterUserList,
|
|
30
|
-
isInterpreterEnabled = _ref.isInterpreterEnabled,
|
|
31
|
-
openRenameDialog = _ref.openRenameDialog,
|
|
32
|
-
id = _ref.id,
|
|
33
|
-
volume = _ref.volume;
|
|
34
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
35
|
-
className: (0, _classnames["default"])("fcr-member-board"),
|
|
36
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
37
|
-
onDoubleClick: onMaskDoubleClick,
|
|
38
|
-
className: (0, _classnames["default"])('fcr-member-board-mask', {
|
|
39
|
-
'fcr-member-board-mask-show': isMask
|
|
40
|
-
})
|
|
41
|
-
}), isMask && /*#__PURE__*/(0, _jsxRuntime.jsx)(_memberActions.MemberWindowActions, {
|
|
42
|
-
isShowActionAudio: isShowActionAudio,
|
|
43
|
-
actionAudioTag: actionAudioTag,
|
|
44
|
-
showActionBottomLabel: showActionBottomLabel,
|
|
45
|
-
allowedOperations: allowedOperations,
|
|
46
|
-
setVideoOrientation: setVideoOrientation,
|
|
47
|
-
hasPinnedStream: hasPinnedStream,
|
|
48
|
-
localUserRole: localUserRole,
|
|
49
|
-
sendParticipantEvent: sendParticipantEvent,
|
|
50
|
-
muteAudio: muteAudio,
|
|
51
|
-
openPrivateChat: openPrivateChat,
|
|
52
|
-
windowSize: "large",
|
|
53
|
-
windowData: windowData,
|
|
54
|
-
iconSize: 24,
|
|
55
|
-
showRotation: (0, _env.isElectron)(),
|
|
56
|
-
interpreterUserList: interpreterUserList,
|
|
57
|
-
isInterpreterEnabled: isInterpreterEnabled,
|
|
58
|
-
handleRename: openRenameDialog,
|
|
59
|
-
id: id,
|
|
60
|
-
volume: volume
|
|
61
|
-
}), slot]
|
|
62
|
-
});
|
|
63
|
-
});
|
|
Binary file
|
|
Binary file
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
type FcrUIDialogHooksProps = {
|
|
2
|
-
/**
|
|
3
|
-
* @param dialogKey - dialog 窗口的 key,为 FcrUIDialogKey 的枚举之一
|
|
4
|
-
*/
|
|
5
|
-
dialogKey: FcrUIDialogKey;
|
|
6
|
-
/**
|
|
7
|
-
* @param config - electron 的 BrowserWindowConstructorOptions 配置,当自定义配置的 hasCustomShadow 开启时,其中的 width 和 height 会自动加上阴影的宽度
|
|
8
|
-
* @param height - The height value should be based on the maximum content height of the tab
|
|
9
|
-
*/
|
|
10
|
-
config: Electron.BrowserWindowConstructorOptions;
|
|
11
|
-
/**
|
|
12
|
-
* @param onClose - 当 dialog 关闭时的回调函数,函数签名为 dialog 的 store
|
|
13
|
-
* */
|
|
14
|
-
onClose?: (store: DialogStore) => void;
|
|
15
|
-
/**
|
|
16
|
-
* @param onOpened - 当 dialog 打开时的回调函数,函数签名为 dialog 的 store、browserwindow 对象和设置 bounds 的方法,此 bounds 不同于 browserwindow 的 setBounds 会为宽高自动加上阴影的设置
|
|
17
|
-
*/
|
|
18
|
-
onOpened?: (props: {
|
|
19
|
-
browserWindow: Electron.BrowserWindow;
|
|
20
|
-
store: DialogStore;
|
|
21
|
-
setBounds: (bounds: Partial<Electron.Rectangle>, animate?: boolean) => void;
|
|
22
|
-
nearDisplayBounds: Electron.Rectangle;
|
|
23
|
-
}) => void;
|
|
24
|
-
/**
|
|
25
|
-
* * @param onUnmounted - 当 dialog 卸载时的回调函数,函数签名为 dialog 的 store
|
|
26
|
-
*/
|
|
27
|
-
onUnmounted?: (store: DialogStore) => void;
|
|
28
|
-
/**
|
|
29
|
-
* @param children - dialog 的内容
|
|
30
|
-
*/
|
|
31
|
-
children: React.ReactNode;
|
|
32
|
-
/**
|
|
33
|
-
* @param scroll - 是否显示滚动栏,默认为 false
|
|
34
|
-
*/
|
|
35
|
-
scroll?: boolean;
|
|
36
|
-
/**
|
|
37
|
-
* @param focus - 在 dialog 窗口打开之后,调用 browserWindow 的 focus 方法, 默认为 true
|
|
38
|
-
*/
|
|
39
|
-
focus?: boolean;
|
|
40
|
-
/**
|
|
41
|
-
* @param ignoreMouseEvents - 在 dialog 窗口打开之后,设置是否忽略鼠标事件
|
|
42
|
-
*/
|
|
43
|
-
ignoreMouseEvents?: boolean | Electron.IgnoreMouseEventsOptions;
|
|
44
|
-
/**
|
|
45
|
-
* @param alwaysOnTop - 在 dialog 窗口打开之后,主动调用一次 browserWindow 的 setAlwaysOnTop(true, 'normal') 方法,默认为true
|
|
46
|
-
* @type boolean | 'normal' | 'floating' | 'torn-off-menu' | 'modal-panel' | 'main-menu' | 'status' | 'pop-up-menu' | 'screen-saver'
|
|
47
|
-
*/
|
|
48
|
-
alwaysOnTop?:
|
|
49
|
-
| boolean
|
|
50
|
-
| 'normal'
|
|
51
|
-
| 'floating'
|
|
52
|
-
| 'torn-off-menu'
|
|
53
|
-
| 'modal-panel'
|
|
54
|
-
| 'main-menu'
|
|
55
|
-
| 'status'
|
|
56
|
-
| 'pop-up-menu'
|
|
57
|
-
| 'screen-saver';
|
|
58
|
-
/**
|
|
59
|
-
* @param fullScreen - 自定义全屏设置,和 electron 的全屏设置不同,它会以主窗口的位置为基准,给新打开的窗口设置和屏幕一样的大小
|
|
60
|
-
*/
|
|
61
|
-
fullScreen?: boolean;
|
|
62
|
-
/**
|
|
63
|
-
* @param polyfills - 这个可以以一句话的形式描述 polyfills,比如:fix-toast-window-flash,并通过这个字段来判断进行特殊处理
|
|
64
|
-
*/
|
|
65
|
-
polyfills?: string[];
|
|
66
|
-
/**
|
|
67
|
-
* @param hasCustomShadow - 通过缩小 electron 容器内的容器宽度加 css 样式阴影实现,所以会让原生 electron 的拖动响应的边产生偏移,所以如果窗口是可拖动的,需要设置为 false。默认值 true。目前窗口有三种,一种是作为 toast 和 confirm 容器的窗口,这种窗口因为是全屏显示不需要阴影,一种是 participant 和 chat 窗口,这俩窗口需要拉伸操作,所以用系统阴影,不用自定义阴影。还有一种是独立的窗口,这种窗口不需要拉伸,所以用自定义阴影,配置为 true 时,窗口会给宽高加上阴影的偏移量,所以 toast 和 confirm 窗口需要设置为 false
|
|
68
|
-
* */
|
|
69
|
-
hasCustomShadow?: boolean;
|
|
70
|
-
};
|
package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("core-js/modules/es.object.define-property.js");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.MicrophoneIndicator = void 0;
|
|
8
|
-
var _mobxReact = require("mobx-react");
|
|
9
|
-
var _react = require("react");
|
|
10
|
-
var _store = require("../../../../store");
|
|
11
|
-
var _microphoneState = require("agora-ui-foundation/lib/components/room-screen-share-state-bar/microphone-state");
|
|
12
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
-
var MicrophoneIndicator = exports.MicrophoneIndicator = (0, _mobxReact.observer)(function (_ref) {
|
|
14
|
-
var audioDeviceType = _ref.audioDeviceType,
|
|
15
|
-
hasAudio = _ref.hasAudio,
|
|
16
|
-
isLocal = _ref.isLocal,
|
|
17
|
-
userId = _ref.userId;
|
|
18
|
-
var _useContext = (0, _react.useContext)(_store.StoreContext),
|
|
19
|
-
audioVolumeMap = _useContext.audioVolumeMap,
|
|
20
|
-
localMicVolume = _useContext.localMicVolume;
|
|
21
|
-
var volume = isLocal ? localMicVolume : audioVolumeMap.get(userId);
|
|
22
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_microphoneState.MicrophoneState, {
|
|
23
|
-
isMicrophoneMuted: !hasAudio,
|
|
24
|
-
size: 28,
|
|
25
|
-
isPhoneMic: audioDeviceType === 'phone-mic',
|
|
26
|
-
voicePercent: volume || 0
|
|
27
|
-
});
|
|
28
|
-
});
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("core-js/modules/es.object.define-property.js");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.userAvatar = void 0;
|
|
8
|
-
var _icon = require("agora-ui-foundation/lib/components/icon");
|
|
9
|
-
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
10
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
var userAvatar = exports.userAvatar = function userAvatar(userType) {
|
|
12
|
-
if (userType === 'meeting-system') {
|
|
13
|
-
return {
|
|
14
|
-
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
15
|
-
type: _type.FcrIconType.FCR_SIPDEVICE,
|
|
16
|
-
colors: {
|
|
17
|
-
iconPrimary: 'var(--fcr_ui_scene_white10)',
|
|
18
|
-
iconSecondary: 'var(--fcr_ui_scene_ramp_green6)'
|
|
19
|
-
}
|
|
20
|
-
}),
|
|
21
|
-
backgroundColor: 'var(--fcr_ui_scene_ramp_purple7)'
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
if (userType === 'phone') {
|
|
25
|
-
return {
|
|
26
|
-
icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
27
|
-
type: _type.FcrIconType.FCR_PHONECALL3,
|
|
28
|
-
colors: {
|
|
29
|
-
iconPrimary: 'var(--fcr_ui_scene_white10)'
|
|
30
|
-
}
|
|
31
|
-
}),
|
|
32
|
-
backgroundColor: 'var(--fcr_ui_scene_ramp_green6)'
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
return {
|
|
36
|
-
icon: null,
|
|
37
|
-
backgroundColor: ''
|
|
38
|
-
};
|
|
39
|
-
};
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
.attendee__user-info-avatar_speakerSpotlight {
|
|
2
|
-
position: relative;
|
|
3
|
-
}
|
|
4
|
-
.attendee__user-info-avatar_speakerSpotlight::before {
|
|
5
|
-
content: '';
|
|
6
|
-
display: block;
|
|
7
|
-
position: absolute;
|
|
8
|
-
top: -4px;
|
|
9
|
-
left: -4px;
|
|
10
|
-
width: calc(100% + 8px);
|
|
11
|
-
height: calc(100% + 8px);
|
|
12
|
-
border: 2px solid var(--fcr_ui_scene_ramp_green6);
|
|
13
|
-
border-radius: var(--fcr_cornerradius_l);
|
|
14
|
-
}
|
|
15
|
-
.attendee__more-actions {
|
|
16
|
-
max-width: 300px;
|
|
17
|
-
padding: 0;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
.operate-waiting-room-dialog-content {
|
|
21
|
-
display: flex;
|
|
22
|
-
flex-direction: column;
|
|
23
|
-
align-items: center;
|
|
24
|
-
justify-content: center;
|
|
25
|
-
background: white;
|
|
26
|
-
padding: 20px;
|
|
27
|
-
border-radius: 20px;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.operate-waiting-room-dialog-title {
|
|
31
|
-
font-weight: 600;
|
|
32
|
-
font-size: 16px;
|
|
33
|
-
margin-bottom: 10px;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
.operate-waiting-room-dialog-tooltip {
|
|
37
|
-
margin-bottom: 10px;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.operate-waiting-room-dialog-confirm {
|
|
41
|
-
display: flex;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
.operate-waiting-room-dialog-btns {
|
|
45
|
-
display: flex;
|
|
46
|
-
justify-content: space-between;
|
|
47
|
-
width: 100%;
|
|
48
|
-
margin-top: 10px;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
.operate-waiting-room-dialog-btns .fcr-button-normal {
|
|
52
|
-
width: 48%;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.operate-waiting-room-dialog-btns .fcr-button-white {
|
|
56
|
-
background-color: var(--fcr_ui_scene_btn2);
|
|
57
|
-
color: var(--fcr_ui_scene_icontext2);
|
|
58
|
-
width: 48%;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.operate-waiting-room-dialog-btns .fcr-button-white:hover {
|
|
62
|
-
background-color: var(--fcr_ui_scene_btn2) !important;
|
|
63
|
-
color: var(--fcr_ui_scene_icontext2) !important;
|
|
64
|
-
width: 48%;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
.operate-waiting-room-dialog-btns .fcr-button-danger {
|
|
68
|
-
width: 48%;
|
|
69
|
-
}
|
|
@@ -1,337 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
require("core-js/modules/es.symbol.js");
|
|
4
|
-
require("core-js/modules/es.array.filter.js");
|
|
5
|
-
require("core-js/modules/es.array.for-each.js");
|
|
6
|
-
require("core-js/modules/es.array.push.js");
|
|
7
|
-
require("core-js/modules/es.object.define-properties.js");
|
|
8
|
-
require("core-js/modules/es.object.define-property.js");
|
|
9
|
-
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
10
|
-
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
11
|
-
require("core-js/modules/es.object.keys.js");
|
|
12
|
-
require("core-js/modules/esnext.async-iterator.filter.js");
|
|
13
|
-
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
14
|
-
require("core-js/modules/esnext.iterator.filter.js");
|
|
15
|
-
require("core-js/modules/esnext.iterator.for-each.js");
|
|
16
|
-
require("core-js/modules/web.dom-collections.for-each.js");
|
|
17
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
18
|
-
Object.defineProperty(exports, "__esModule", {
|
|
19
|
-
value: true
|
|
20
|
-
});
|
|
21
|
-
exports.ParticipantAttendee = void 0;
|
|
22
|
-
require("core-js/modules/es.array.find.js");
|
|
23
|
-
require("core-js/modules/es.object.to-string.js");
|
|
24
|
-
require("core-js/modules/esnext.async-iterator.find.js");
|
|
25
|
-
require("core-js/modules/esnext.iterator.constructor.js");
|
|
26
|
-
require("core-js/modules/esnext.iterator.find.js");
|
|
27
|
-
require("core-js/modules/web.timers.js");
|
|
28
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
29
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
30
|
-
var _avatar = require("agora-ui-foundation/lib/components/avatar");
|
|
31
|
-
var _icon = require("agora-ui-foundation/lib/components/icon");
|
|
32
|
-
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
33
|
-
var _cameraState = require("agora-ui-foundation/lib/components/room-screen-share-state-bar/camera-state");
|
|
34
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
35
|
-
var _mobxReact = require("mobx-react");
|
|
36
|
-
var _react = require("react");
|
|
37
|
-
var _type2 = require("../../../../type");
|
|
38
|
-
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
39
|
-
require("./index.css");
|
|
40
|
-
var _helper = require("agora-ui-foundation/lib/components/avatar/helper");
|
|
41
|
-
var _useLanguageConfig = require("../../../interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig");
|
|
42
|
-
var _useClickAnywhere = require("agora-ui-foundation/lib/hooks/use-click-anywhere");
|
|
43
|
-
var _useElectron = require("../../../dialog/hooks/useElectron");
|
|
44
|
-
var _type3 = require("fcr-core/lib/room-control/type");
|
|
45
|
-
var _microphoneIndicator = require("./components/microphone-indicator");
|
|
46
|
-
var _userAvatar = require("./components/user-avatar");
|
|
47
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
48
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
49
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
50
|
-
var ParticipantAttendee = exports.ParticipantAttendee = (0, _mobxReact.observer)(function (props) {
|
|
51
|
-
var _useState = (0, _react.useState)(false),
|
|
52
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
53
|
-
isShowDropMenu = _useState2[0],
|
|
54
|
-
setIsShowDropMenu = _useState2[1];
|
|
55
|
-
var _props$user = props.user,
|
|
56
|
-
userId = _props$user.userId,
|
|
57
|
-
userName = _props$user.userName,
|
|
58
|
-
isMe = _props$user.isMe,
|
|
59
|
-
hasAudio = _props$user.hasAudio,
|
|
60
|
-
hasVideo = _props$user.hasVideo,
|
|
61
|
-
isHost = _props$user.isHost,
|
|
62
|
-
isScreenSharing = _props$user.isScreenSharing,
|
|
63
|
-
userType = _props$user.userType,
|
|
64
|
-
userRole = _props$user.userRole,
|
|
65
|
-
isSpotlight = _props$user.isSpotlight,
|
|
66
|
-
isBoardActive = _props$user.isBoardActive,
|
|
67
|
-
audioDeviceType = _props$user.audioDeviceType,
|
|
68
|
-
videoDeviceType = _props$user.videoDeviceType;
|
|
69
|
-
var enableSpotlight = props.enableSpotlight,
|
|
70
|
-
activeTab = props.activeTab,
|
|
71
|
-
interpreterUsers = props.interpreterUsers,
|
|
72
|
-
interpreterState = props.interpreterState,
|
|
73
|
-
interpreterInputLanguage = props.interpreterInputLanguage,
|
|
74
|
-
type = props.type,
|
|
75
|
-
children = props.children;
|
|
76
|
-
var dialogInstanceContext = (0, _react.useContext)(_useElectron.DialogInstanceContext);
|
|
77
|
-
var _useState3 = (0, _react.useState)(false),
|
|
78
|
-
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
79
|
-
disableHover = _useState4[0],
|
|
80
|
-
setDisableHover = _useState4[1];
|
|
81
|
-
var nameColor = (0, _helper.getNameColor)(userName);
|
|
82
|
-
var volumeTimer = undefined;
|
|
83
|
-
var _useState5 = (0, _react.useState)(0),
|
|
84
|
-
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
85
|
-
phoneCallFrame = _useState6[0],
|
|
86
|
-
setPhoneCallFrame = _useState6[1];
|
|
87
|
-
var clickAnywhere = (0, _react.useCallback)(function () {
|
|
88
|
-
setIsShowDropMenu(false);
|
|
89
|
-
}, [setIsShowDropMenu]);
|
|
90
|
-
var clickRef = (0, _useClickAnywhere.useClickAnywhere)(clickAnywhere, type === 'modal' ? dialogInstanceContext === null || dialogInstanceContext === void 0 ? void 0 : dialogInstanceContext.newRendererWindow : window);
|
|
91
|
-
var percentPhone = function percentPhone(phoneCallFrame) {
|
|
92
|
-
switch (phoneCallFrame) {
|
|
93
|
-
case '0':
|
|
94
|
-
return 30;
|
|
95
|
-
case '1':
|
|
96
|
-
return 19;
|
|
97
|
-
case '2':
|
|
98
|
-
return 9;
|
|
99
|
-
default:
|
|
100
|
-
return 4;
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
(0, _react.useEffect)(function () {
|
|
104
|
-
setDisableHover(userType === 'meeting-system');
|
|
105
|
-
}, [userType]);
|
|
106
|
-
(0, _react.useEffect)(function () {
|
|
107
|
-
if (volumeTimer) {
|
|
108
|
-
clearInterval(volumeTimer);
|
|
109
|
-
}
|
|
110
|
-
if (audioDeviceType === 'phone-mic') {
|
|
111
|
-
volumeTimer = setInterval(function () {
|
|
112
|
-
setPhoneCallFrame(function (frame) {
|
|
113
|
-
return (frame + 1) % 4;
|
|
114
|
-
});
|
|
115
|
-
}, 250);
|
|
116
|
-
return function () {
|
|
117
|
-
return clearInterval(volumeTimer);
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
}, [audioDeviceType]);
|
|
121
|
-
|
|
122
|
-
// const userActions = () => {
|
|
123
|
-
// const handleAudioButtonClick = () => {
|
|
124
|
-
// const action = hasAudio
|
|
125
|
-
// ? ParticipantActionType.MUTE_AUDIO
|
|
126
|
-
// : ParticipantActionType.UNMUTE_AUDIO;
|
|
127
|
-
// onParticipantsButtonClick(action, userId);
|
|
128
|
-
// };
|
|
129
|
-
|
|
130
|
-
// const handlePrivateChatButtonClick = () => {
|
|
131
|
-
// onParticipantsButtonClick(ParticipantActionType.PRIVATE_CHAT, userId);
|
|
132
|
-
// };
|
|
133
|
-
|
|
134
|
-
// const handleMoreActionsClick = (action: ParticipantActionType, userId: string) => {
|
|
135
|
-
// onParticipantsButtonClick(action, userId);
|
|
136
|
-
// setIsShowDropMenu(false);
|
|
137
|
-
// };
|
|
138
|
-
// const muteAudioPermission = hasMutePermission(
|
|
139
|
-
// isMe ? FcrPrivilegeUserRole.SELF : (userRole as FcrUserRole),
|
|
140
|
-
// );
|
|
141
|
-
// const startAudioPermission = hasUnmutePermission(
|
|
142
|
-
// isMe ? FcrPrivilegeUserRole.SELF : (userRole as FcrUserRole),
|
|
143
|
-
// );
|
|
144
|
-
// const requestStartAudioPermission = hasRequestStartAudioPermission(userRole as FcrUserRole);
|
|
145
|
-
// const { isShowActionAudio, actionAudioTag } = actionMute(
|
|
146
|
-
// !!isMe,
|
|
147
|
-
// hasAudio,
|
|
148
|
-
// muteAudioPermission,
|
|
149
|
-
// startAudioPermission,
|
|
150
|
-
// requestStartAudioPermission,
|
|
151
|
-
// );
|
|
152
|
-
// const waitingRoomParticipateActionsNeedHiden = [
|
|
153
|
-
// 'start_video',
|
|
154
|
-
// 'request_start_video',
|
|
155
|
-
// 'stop_video',
|
|
156
|
-
// 'pin',
|
|
157
|
-
// 'set_as_host',
|
|
158
|
-
// 'set_as_co_host',
|
|
159
|
-
// 'revoke_co_host',
|
|
160
|
-
// 'merge_video',
|
|
161
|
-
// 'put_into_waiting_room',
|
|
162
|
-
// ];
|
|
163
|
-
// const mainRoomParticipateActionsNeedHiden: string[] = [];
|
|
164
|
-
|
|
165
|
-
// useEffect(() => {
|
|
166
|
-
// return () => {
|
|
167
|
-
// if (timeoutId.current) {
|
|
168
|
-
// clearTimeout(timeoutId.current);
|
|
169
|
-
// }
|
|
170
|
-
// };
|
|
171
|
-
// }, []);
|
|
172
|
-
// const timeoutId = useRef<NodeJS.Timeout | null>();
|
|
173
|
-
// return (
|
|
174
|
-
// <div
|
|
175
|
-
// className={`attendee__user-action attendee__user-action-host ${isShowDropMenu ? 'attendee__user-action-hovered' : ''}`}>
|
|
176
|
-
// {isShowActionAudio && activeTab === FcrRoomType.Mainroom && (
|
|
177
|
-
// <FcrActionButton size="small" onClick={handleAudioButtonClick}>
|
|
178
|
-
// <span className={hasAudio ? 'attendee__danger-operate' : 'attendee__normal-operate'}>
|
|
179
|
-
// {t(actionAudioTag as GenerateI18nKey<I18nResouceTypes>)}
|
|
180
|
-
// </span>
|
|
181
|
-
// </FcrActionButton>
|
|
182
|
-
// )}
|
|
183
|
-
// {activeTab === FcrRoomType.Waitingroom && (
|
|
184
|
-
// <FcrActionButton size="small" onClick={() => moveToMainRoomByUserIds([userId])}>
|
|
185
|
-
// <span className={'attendee__normal-operate'}>
|
|
186
|
-
// {t('fmt_waitingroom_sidebar_button_admit')}
|
|
187
|
-
// </span>
|
|
188
|
-
// </FcrActionButton>
|
|
189
|
-
// )}
|
|
190
|
-
// <FcrPopover
|
|
191
|
-
// visible={isShowDropMenu}
|
|
192
|
-
// overlayInnerStyle={{
|
|
193
|
-
// border: 0,
|
|
194
|
-
// boxShadow: '0px 0px 15px var(--fcr_web_light_dropup_m)',
|
|
195
|
-
// borderRadius: 'var(--fcr_cornerradius_l)',
|
|
196
|
-
// minWidth: '210px',
|
|
197
|
-
// maxWidth: '300px',
|
|
198
|
-
// width: 'fit-content',
|
|
199
|
-
// }}
|
|
200
|
-
// overlayClassName="attendee__more-actions"
|
|
201
|
-
// mouseEnterDelay={0}
|
|
202
|
-
// content={
|
|
203
|
-
// <div
|
|
204
|
-
// ref={clickRef}
|
|
205
|
-
// onMouseEnter={() => {
|
|
206
|
-
// if (timeoutId.current) {
|
|
207
|
-
// clearTimeout(timeoutId.current);
|
|
208
|
-
// }
|
|
209
|
-
// }}
|
|
210
|
-
// onMouseLeave={() => {
|
|
211
|
-
// timeoutId.current = setTimeout(() => {
|
|
212
|
-
// setIsShowDropMenu(false);
|
|
213
|
-
// }, 200);
|
|
214
|
-
// }}>
|
|
215
|
-
// <FcrParticipantsMoreActions
|
|
216
|
-
// {...props}
|
|
217
|
-
// onParticipantsButtonClick={handleMoreActionsClick}
|
|
218
|
-
// userRole={userRole as FcrUserRoleValue}
|
|
219
|
-
// isPin={isPin}
|
|
220
|
-
// hasPinnedStream={hasPinnedStream}
|
|
221
|
-
// allowedOperations={allowedOperations}
|
|
222
|
-
// userType={userType}
|
|
223
|
-
// userId={userId}
|
|
224
|
-
// hasVideo={hasVideo}
|
|
225
|
-
// hasAudio={hasAudio}
|
|
226
|
-
// userName={userName}
|
|
227
|
-
// audioDeviceType={audioDeviceType}
|
|
228
|
-
// hideActions={
|
|
229
|
-
// activeTab === FcrRoomType.Mainroom
|
|
230
|
-
// ? mainRoomParticipateActionsNeedHiden
|
|
231
|
-
// : waitingRoomParticipateActionsNeedHiden
|
|
232
|
-
// }
|
|
233
|
-
// />
|
|
234
|
-
// </div>
|
|
235
|
-
// }
|
|
236
|
-
// placement="bottomRight">
|
|
237
|
-
// <FcrActionButton
|
|
238
|
-
// onClick={() => {
|
|
239
|
-
// if (!isShowDropMenu) {
|
|
240
|
-
// setIsShowDropMenu(true);
|
|
241
|
-
// }
|
|
242
|
-
// }}
|
|
243
|
-
// size="small"
|
|
244
|
-
// iconType={FcrIconType.FCR_DROPDOWN}>
|
|
245
|
-
// {t('fmt_participants_member_button_more')}
|
|
246
|
-
// </FcrActionButton>
|
|
247
|
-
// </FcrPopover>
|
|
248
|
-
// </div>
|
|
249
|
-
// );
|
|
250
|
-
// };
|
|
251
|
-
|
|
252
|
-
var t = (0, _i18n.useI18n)();
|
|
253
|
-
var interpreter = (0, _react.useMemo)(function () {
|
|
254
|
-
return interpreterUsers === null || interpreterUsers === void 0 ? void 0 : interpreterUsers.find(function (ele) {
|
|
255
|
-
return ele.userId === userId;
|
|
256
|
-
});
|
|
257
|
-
}, [interpreterUsers, userId]);
|
|
258
|
-
var getLanguageConfig = (0, _useLanguageConfig.useLanguageConfig)();
|
|
259
|
-
var interpreterTag = /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
260
|
-
children: interpreter && interpreterState && interpreterInputLanguage && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
261
|
-
className: "attendee__host-badge attendee__interpreter-tag-bg",
|
|
262
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
263
|
-
className: "attendee__interpreter-tag-user",
|
|
264
|
-
children: t('fmt_ai_transcriptions_setting_label_translator')
|
|
265
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
266
|
-
className: "attendee__interpreter-tag-language",
|
|
267
|
-
children: getLanguageConfig(interpreterInputLanguage).abbr
|
|
268
|
-
})]
|
|
269
|
-
})
|
|
270
|
-
});
|
|
271
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
272
|
-
className: (0, _classnames["default"])('attendee', {
|
|
273
|
-
'attendee-active': isShowDropMenu && !disableHover
|
|
274
|
-
}),
|
|
275
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
276
|
-
className: "attendee__user-info",
|
|
277
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
278
|
-
className: (0, _classnames["default"])('attendee__user-info-avatar', {
|
|
279
|
-
'attendee__user-info-avatar_speakerSpotlight': isSpotlight && enableSpotlight
|
|
280
|
-
}),
|
|
281
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.FcrAvatar, _objectSpread({
|
|
282
|
-
size: 32,
|
|
283
|
-
nickName: userName,
|
|
284
|
-
textSize: 14
|
|
285
|
-
}, (0, _userAvatar.userAvatar)(userType)))
|
|
286
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
287
|
-
className: "attendee__user-info-identity",
|
|
288
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
289
|
-
className: "attendee__name",
|
|
290
|
-
style: {
|
|
291
|
-
color: nameColor
|
|
292
|
-
},
|
|
293
|
-
children: [userName, isMe && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
294
|
-
className: "attendee__me-badge",
|
|
295
|
-
children: "(Me)"
|
|
296
|
-
})]
|
|
297
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
298
|
-
className: "attendee__tag-group",
|
|
299
|
-
children: [isHost && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
300
|
-
className: "attendee__host-badge",
|
|
301
|
-
children: t('fmt_role_host')
|
|
302
|
-
}), isHost && interpreterTag]
|
|
303
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
304
|
-
className: "attendee__tag-group",
|
|
305
|
-
children: [userRole === _type2.FcrUserRole.COHOST && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
306
|
-
className: "attendee__host-badge attendee__cohost-tag-bg",
|
|
307
|
-
children: t('fmt_role_cohost')
|
|
308
|
-
}), !isHost && interpreterTag]
|
|
309
|
-
})]
|
|
310
|
-
})]
|
|
311
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
312
|
-
className: "attendee__user-media",
|
|
313
|
-
children: [isScreenSharing && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
314
|
-
type: _type.FcrIconType.FCR_SCREENSHARING_1,
|
|
315
|
-
size: 28,
|
|
316
|
-
colors: {
|
|
317
|
-
iconPrimary: 'var(--fcr_ui_scene_ramp_green6)'
|
|
318
|
-
}
|
|
319
|
-
}), isBoardActive && /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
320
|
-
type: _type.FcrIconType.FCR_WHITEBOARD,
|
|
321
|
-
size: 28,
|
|
322
|
-
colors: {
|
|
323
|
-
iconPrimary: 'var(--fcr_ui_scene_ramp_green6)'
|
|
324
|
-
}
|
|
325
|
-
}), audioDeviceType !== 'none' && activeTab === _type3.FcrRoomType.Mainroom && /*#__PURE__*/(0, _jsxRuntime.jsx)(_microphoneIndicator.MicrophoneIndicator, {
|
|
326
|
-
audioDeviceType: audioDeviceType,
|
|
327
|
-
hasAudio: hasAudio,
|
|
328
|
-
isLocal: !!isMe,
|
|
329
|
-
userId: userId
|
|
330
|
-
}), videoDeviceType !== 'none' && activeTab === _type3.FcrRoomType.Mainroom && /*#__PURE__*/(0, _jsxRuntime.jsx)(_cameraState.CameraState, {
|
|
331
|
-
isCameraMuted: !hasVideo,
|
|
332
|
-
size: 28,
|
|
333
|
-
renderIconType: 'surface'
|
|
334
|
-
})]
|
|
335
|
-
}), children]
|
|
336
|
-
}, userId);
|
|
337
|
-
});
|