fcr-ui-scene 3.4.1 → 3.4.2
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/base.d.ts +40 -5
- package/lib/base.js +237 -22
- package/lib/common/device-store.d.ts +14 -23
- package/lib/common/device-store.js +252 -361
- package/lib/common/device-stream-store.d.ts +14 -8
- package/lib/common/device-stream-store.js +116 -254
- package/lib/common/event-store.d.ts +10 -35
- package/lib/common/event-store.js +13 -64
- package/lib/common/security-store.d.ts +39 -47
- package/lib/common/security-store.js +379 -335
- package/lib/creator.d.ts +1 -1
- package/lib/creator.js +4 -9
- package/lib/electron/app.js +4 -2
- package/lib/electron/bootstrap-dev.js +0 -7
- package/lib/electron/bootstrap-sdk.js +10 -0
- package/lib/electron/injections.d.ts +2 -0
- package/lib/electron/injections.js +17 -2
- package/lib/electron/logger.d.ts +0 -4
- package/lib/electron/logger.js +2 -5
- package/lib/electron/main.js +1 -1
- package/lib/electron/plugins/devtool-shortcut.js +10 -1
- package/lib/electron/plugins/meeting-state.js +1 -1
- package/lib/electron/preload.js +3 -1
- package/lib/fragments/control-bar/cloud-recording-buttons.js +1 -1
- package/lib/fragments/control-bar/control-bar-store.d.ts +1 -44
- package/lib/fragments/control-bar/control-bar-store.js +80 -457
- package/lib/fragments/control-bar/device/index.js +3 -5
- package/lib/fragments/control-bar/index.css +10 -15
- package/lib/fragments/control-bar/index.js +0 -24
- package/lib/fragments/control-bar/more-actions/index.css +0 -53
- package/lib/fragments/control-bar/more-actions/index.js +38 -73
- package/lib/fragments/control-bar/security-content/index.css +0 -75
- package/lib/fragments/control-bar/security-content/index.js +19 -105
- package/lib/fragments/control-bar/share-state-nav/index.js +1 -1
- package/lib/fragments/control-bar/view.js +8 -23
- package/lib/fragments/live-streaming/store.d.ts +1 -1
- package/lib/fragments/live-streaming/store.js +1 -1
- package/lib/fragments/live-streaming/view.js +2 -4
- package/lib/fragments/share-screen-selection/selection-store.d.ts +1 -1
- package/lib/fragments/share-screen-selection/selection-store.js +1 -1
- package/lib/fragments/share-screen-selection/view.js +20 -20
- package/lib/fragments/toolbar/components/eraser-picker.js +1 -1
- package/lib/fragments/toolbar/components/pen-picker.js +1 -1
- package/lib/fragments/toolbar/components/shape-picker.js +1 -1
- package/lib/fragments/toolbar/components/wrapper.js +1 -1
- package/lib/fragments/toolbar/hooks.js +1 -1
- package/lib/fragments/toolbar/store.d.ts +1 -1
- package/lib/global.css +5 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +7 -4
- package/lib/login-confirm-dialog.d.ts +1 -0
- package/lib/login-confirm-dialog.js +7 -2
- package/lib/modules/Interpreter/action/delete-btn/index.d.ts +2 -2
- package/lib/modules/Interpreter/action/edit-btn/index.js +2 -2
- package/lib/modules/Interpreter/action/switch-btn/index.js +5 -5
- package/lib/modules/Interpreter/dialog-content/index.d.ts +2 -2
- package/lib/modules/Interpreter/dialog-content/index.js +4 -4
- package/lib/modules/Interpreter/index.d.ts +11 -4
- package/lib/modules/Interpreter/index.js +23 -8
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +2 -2
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -3
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +2 -2
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +14 -14
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +2 -2
- package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +2 -2
- package/lib/modules/Interpreter/store.d.ts +23 -84
- package/lib/modules/Interpreter/store.js +204 -1216
- package/lib/modules/Interpreter/type.d.ts +12 -29
- package/lib/modules/Interpreter/type.js +2 -10
- package/lib/modules/Interpreter/utils.d.ts +1 -5
- package/lib/modules/Interpreter/utils.js +28 -86
- package/lib/modules/Interpreter/view.js +19 -3
- package/lib/modules/action-bar/action-bar-collapes-items.d.ts +1 -4
- package/lib/modules/action-bar/action-bar-collapes-items.js +21 -38
- package/lib/modules/action-bar/chat/index.js +8 -8
- package/lib/modules/action-bar/components/apps/app-item/index.css +1 -2
- package/lib/modules/action-bar/components/apps/app-item/index.d.ts +1 -10
- package/lib/modules/action-bar/components/apps/appitems.d.ts +1 -3
- package/lib/modules/action-bar/components/apps/index.css +2 -2
- package/lib/modules/action-bar/components/apps/index.js +2 -3
- package/lib/modules/action-bar/components/collapse/index.d.ts +8 -0
- package/lib/modules/action-bar/components/collapse/index.js +222 -0
- package/lib/modules/action-bar/components/interpreter/index.d.ts +1 -5
- package/lib/modules/action-bar/components/item/index.d.ts +9 -0
- package/lib/modules/action-bar/components/item/index.js +164 -0
- package/lib/modules/action-bar/components/leave/assign-host.d.ts +1 -8
- package/lib/modules/action-bar/components/leave/assign-host.js +1 -1
- package/lib/modules/action-bar/components/leave/index.js +9 -24
- package/lib/modules/action-bar/components/leave/leave-meeting.d.ts +1 -16
- package/lib/modules/action-bar/components/more/index.js +13 -9
- package/lib/modules/action-bar/components/more/poppover-content.d.ts +1 -4
- package/lib/modules/action-bar/components/more/poppover-content.js +28 -5
- package/lib/modules/action-bar/components/notification-bar/assets/dome.png +0 -0
- package/lib/modules/action-bar/components/notification-bar/assets/fcr_translateswitch.png +0 -0
- package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.css +58 -0
- package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.d.ts +8 -0
- package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.js +100 -0
- package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.css +56 -0
- package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.d.ts +5 -0
- package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.js +33 -0
- package/lib/modules/action-bar/components/notification-bar/index.css +74 -0
- package/lib/modules/action-bar/components/notification-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/components/notification-bar/index.js +99 -0
- package/lib/modules/action-bar/components/participants/index.js +2 -2
- package/lib/modules/action-bar/components/placement/index.d.ts +4 -0
- package/lib/modules/action-bar/components/placement/index.js +18 -0
- package/lib/modules/action-bar/components/record/stop-record-dialog.d.ts +1 -3
- package/lib/modules/action-bar/components/screen-share/submenu.js +25 -2
- package/lib/modules/action-bar/components/security/index.js +3 -1
- package/lib/modules/action-bar/components/smaller/index.d.ts +1 -0
- package/lib/modules/action-bar/components/smaller/index.js +52 -0
- package/lib/modules/action-bar/components/trigger-input-language-room/fcr_translateswitch.png +0 -0
- package/lib/modules/action-bar/components/trigger-input-language-room/index.css +86 -0
- package/lib/modules/action-bar/components/trigger-input-language-room/index.d.ts +3 -0
- package/lib/modules/action-bar/components/trigger-input-language-room/index.js +215 -0
- package/lib/modules/action-bar/components/trigger-output-language/fcr_translateswitch.png +0 -0
- package/lib/modules/action-bar/components/trigger-output-language/index.css +86 -0
- package/lib/modules/action-bar/components/trigger-output-language/index.d.ts +2 -0
- package/lib/modules/action-bar/components/trigger-output-language/index.js +230 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/constant.d.ts +10 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/constant.js +8 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.css +22 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.d.ts +3 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.js +75 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/index.d.ts +8 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/index.js +98 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/trigger-language-room.d.ts +5 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/trigger-language-room.js +66 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/trigger-main-room.d.ts +5 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/trigger-main-room.js +37 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/useChangeOutputRoomTool.d.ts +12 -0
- package/lib/modules/action-bar/components/trigger-output-language-room/useChangeOutputRoomTool.js +138 -0
- package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.css +22 -0
- package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.d.ts +3 -0
- package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.js +70 -0
- package/lib/modules/action-bar/components/trigger-subscribe-language/index.d.ts +5 -0
- package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +209 -0
- package/lib/modules/action-bar/device/index.css +2 -7
- package/lib/modules/action-bar/device/index.js +24 -22
- package/lib/modules/action-bar/enums.d.ts +23 -0
- package/lib/modules/action-bar/enums.js +35 -0
- package/lib/modules/action-bar/index.d.ts +36 -6
- package/lib/modules/action-bar/index.dev.d.ts +0 -1
- package/lib/modules/action-bar/index.dev.js +94 -121
- package/lib/modules/action-bar/index.js +46 -18
- package/lib/modules/action-bar/leave/assign-host.d.ts +0 -3
- package/lib/modules/action-bar/leave/assign-host.js +4 -2
- package/lib/modules/action-bar/leave/index.css +0 -10
- package/lib/modules/action-bar/leave/index.js +34 -84
- package/lib/modules/action-bar/leave/leave-meeting.d.ts +1 -13
- package/lib/modules/action-bar/leave/leave-meeting.js +19 -37
- package/lib/modules/action-bar/live-streaming/index.js +3 -3
- package/lib/modules/action-bar/more/index.js +6 -9
- package/lib/modules/action-bar/more/poppover-content.js +16 -37
- package/lib/modules/action-bar/participants/index.css +0 -12
- package/lib/modules/action-bar/participants/index.js +16 -23
- package/lib/modules/action-bar/record/index.js +4 -4
- package/lib/modules/action-bar/screen-share/index.js +5 -14
- package/lib/modules/action-bar/screen-share/submenu.js +26 -20
- package/lib/modules/action-bar/security/drop-menu.js +22 -137
- package/lib/modules/action-bar/security/index.js +6 -12
- package/lib/modules/action-bar/settings/index.js +4 -4
- package/lib/modules/action-bar/smaller.js +5 -5
- package/lib/modules/action-bar/store.d.ts +84 -98
- package/lib/modules/action-bar/store.js +567 -707
- package/lib/modules/action-bar/types.d.ts +94 -0
- package/lib/modules/action-bar/types.js +6 -0
- package/lib/modules/action-bar/view.d.ts +1 -2
- package/lib/modules/action-bar/view.js +11 -11
- package/lib/modules/audio-stream/index.d.ts +22 -10
- package/lib/modules/audio-stream/index.js +78 -82
- package/lib/modules/chat/chat-bar/index.css +0 -6
- package/lib/modules/chat/chat-bar/index.d.ts +3 -3
- package/lib/modules/chat/chat-bar/index.js +39 -51
- package/lib/modules/chat/chat-room-store.d.ts +135 -0
- package/lib/modules/chat/chat-room-store.js +954 -0
- package/lib/modules/chat/chat-select/index.css +7 -27
- package/lib/modules/chat/chat-select/index.d.ts +1 -1
- package/lib/modules/chat/chat-select/index.js +4 -18
- package/lib/modules/chat/chat.d.ts +2 -1
- package/lib/modules/chat/chat.js +128 -196
- package/lib/modules/chat/components/chat-action/index.d.ts +1 -0
- package/lib/modules/chat/components/chat-action/index.js +28 -0
- package/lib/modules/chat/components/chat-bar/index.css +85 -0
- package/lib/modules/chat/components/chat-bar/index.d.ts +3 -0
- package/lib/modules/chat/components/chat-bar/index.js +145 -0
- package/lib/modules/chat/components/chat-select/index.css +185 -0
- package/lib/modules/chat/components/chat-select/index.d.ts +3 -0
- package/lib/modules/chat/components/chat-select/index.js +237 -0
- package/lib/modules/chat/components/message-list/index.d.ts +4 -0
- package/lib/modules/chat/components/message-list/index.js +650 -0
- package/lib/modules/chat/index.d.ts +13 -5
- package/lib/modules/chat/index.dev.d.ts +0 -1
- package/lib/modules/chat/index.dev.js +71 -72
- package/lib/modules/chat/index.js +45 -22
- package/lib/modules/chat/message-list.js +51 -68
- package/lib/modules/chat/mock.d.ts +1 -1
- package/lib/modules/chat/store.d.ts +17 -162
- package/lib/modules/chat/store.js +95 -963
- package/lib/modules/chat/types.d.ts +70 -0
- package/lib/modules/chat/types.js +17 -0
- package/lib/modules/chat/view.d.ts +10 -0
- package/lib/modules/chat/view.js +372 -0
- package/lib/modules/components/device-control/components/audio-menu/index.js +2 -2
- package/lib/modules/components/device-control/components/microphone/index.js +7 -7
- package/lib/modules/components/device-control/store.d.ts +11 -12
- package/lib/modules/components/device-control/store.js +46 -49
- package/lib/modules/components/dialog-container/component/body.js +2 -1
- package/lib/modules/components/dialog-container/index.d.ts +2 -2
- package/lib/modules/components/leave-meeting/components/assign-host.d.ts +3 -0
- package/lib/modules/components/leave-meeting/components/assign-host.js +70 -0
- package/lib/modules/components/leave-meeting/components/index.css +125 -0
- package/lib/modules/components/leave-meeting/index.d.ts +4 -0
- package/lib/modules/components/leave-meeting/index.js +147 -0
- package/lib/modules/components/leave-meeting/store.d.ts +31 -0
- package/lib/modules/components/leave-meeting/store.js +292 -0
- package/lib/modules/components/member-window/index.d.ts +1 -1
- package/lib/modules/components/member-window/index.js +12 -6
- package/lib/modules/components/security-menu/index.d.ts +2 -0
- package/lib/modules/components/security-menu/index.js +34 -35
- package/lib/modules/components/tab-frame/index.d.ts +2 -2
- package/lib/modules/components/tab-frame/index.js +26 -5
- package/lib/modules/connection-gateway/components/computer/index.js +4 -4
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.d.ts +1 -1
- package/lib/modules/connection-gateway/components/phone/index.js +2 -2
- package/lib/modules/connection-gateway/components/tabs/index.js +1 -2
- package/lib/modules/connection-gateway/enums.d.ts +4 -0
- package/lib/modules/connection-gateway/enums.js +12 -0
- package/lib/modules/connection-gateway/index.d.ts +13 -4
- package/lib/modules/connection-gateway/index.js +25 -15
- package/lib/modules/connection-gateway/store.d.ts +22 -18
- package/lib/modules/connection-gateway/store.js +60 -36
- package/lib/modules/connection-gateway/types.d.ts +4 -0
- package/lib/modules/connection-gateway/types.js +6 -0
- package/lib/modules/connection-gateway/view.js +2 -2
- package/lib/modules/control-bar/components/meeting-details/index.js +30 -25
- package/lib/modules/control-bar/components/more-actions/index.css +18 -0
- package/lib/modules/control-bar/components/more-actions/index.d.ts +1 -5
- package/lib/modules/control-bar/components/more-actions/index.js +58 -9
- package/lib/modules/control-bar/components/share-state-nav/index.d.ts +1 -7
- package/lib/modules/control-bar/components/share-state-nav/index.js +2 -1
- package/lib/modules/control-bar/components/stop-live-streaming/stop-button.d.ts +1 -1
- package/lib/modules/control-bar/components/stop-live-streaming/stop-button.js +2 -2
- package/lib/modules/control-bar/components/transfer-position-icon/index.d.ts +1 -10
- package/lib/modules/control-bar/components/transfer-position-icon/index.js +7 -12
- package/lib/modules/control-bar/enums.d.ts +21 -0
- package/lib/modules/control-bar/enums.js +31 -0
- package/lib/modules/control-bar/index.d.ts +30 -7
- package/lib/modules/control-bar/index.js +46 -27
- package/lib/modules/control-bar/store.d.ts +38 -26
- package/lib/modules/control-bar/store.js +172 -282
- package/lib/modules/control-bar/types.d.ts +20 -0
- package/lib/modules/control-bar/types.js +6 -0
- package/lib/modules/control-bar/view.js +68 -34
- package/lib/modules/device-pretest/index.js +4 -4
- package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -1
- package/lib/modules/device-pretest/store.d.ts +8 -9
- package/lib/modules/device-pretest/store.js +52 -36
- package/lib/modules/dialog/components/Interpreter/electron.js +21 -15
- package/lib/modules/dialog/components/Interpreter/index.js +2 -2
- package/lib/modules/dialog/components/chat/electron.d.ts +1 -1
- package/lib/modules/dialog/components/chat/electron.js +19 -10
- package/lib/modules/dialog/components/chat/index.js +2 -2
- package/lib/modules/dialog/components/confirm/electron.d.ts +1 -1
- package/lib/modules/dialog/components/confirm/electron.js +68 -38
- package/lib/modules/dialog/components/confirm/index.js +1 -1
- package/lib/modules/dialog/components/connection-gateway/electron.d.ts +1 -1
- package/lib/modules/dialog/components/connection-gateway/electron.js +8 -10
- package/lib/modules/dialog/components/connection-gateway/index.css +2 -0
- package/lib/modules/dialog/components/connection-gateway/index.d.ts +3 -1
- package/lib/modules/dialog/components/connection-gateway/index.js +20 -7
- package/lib/modules/dialog/components/connection-gateway/tabs.d.ts +6 -0
- package/lib/modules/dialog/components/connection-gateway/tabs.js +44 -0
- package/lib/modules/dialog/components/control-bar/index.d.ts +5 -1
- package/lib/modules/dialog/components/control-bar/index.js +122 -9
- package/lib/modules/dialog/components/device-setting/electron.js +6 -2
- package/lib/modules/dialog/components/device-setting/index.js +2 -2
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +7 -0
- package/lib/modules/dialog/components/dialog-container/component/body.js +77 -0
- package/lib/modules/dialog/components/dialog-container/index.css +81 -0
- package/lib/modules/dialog/components/dialog-container/index.d.ts +16 -0
- package/lib/modules/dialog/components/dialog-container/index.js +112 -0
- package/lib/modules/dialog/components/invite/index.js +32 -7
- package/lib/modules/dialog/components/live-streaming/index.js +9 -5
- package/lib/modules/dialog/components/participant/electron.js +11 -5
- package/lib/modules/dialog/components/participant/index.js +4 -3
- package/lib/modules/dialog/components/share-screen-selection/index.js +9 -5
- package/lib/modules/dialog/components/system-preference/electron.js +1 -1
- package/lib/modules/dialog/components/toast/index.js +1 -1
- package/lib/modules/dialog/components/video-window/index.d.ts +2 -0
- package/lib/modules/dialog/components/video-window/index.js +148 -0
- package/lib/modules/dialog/components/whiteboard/index.js +2 -2
- package/lib/modules/dialog/dialogs.d.ts +2 -5
- package/lib/modules/dialog/dialogs.js +2 -157
- package/lib/modules/dialog/hooks/useElectron.d.ts +3 -25
- package/lib/modules/dialog/hooks/useElectron.js +91 -35
- package/lib/modules/dialog/index.d.ts +30 -4
- package/lib/modules/dialog/index.js +62 -6
- package/lib/modules/dialog/store.d.ts +46 -12
- package/lib/modules/dialog/store.js +121 -65
- package/lib/modules/dialog/types/index.d.ts +14 -3
- package/lib/modules/event-confirm/index.css +1 -1
- package/lib/modules/event-confirm/index.d.ts +13 -6
- package/lib/modules/event-confirm/index.js +28 -11
- package/lib/modules/event-confirm/store.d.ts +9 -3
- package/lib/modules/event-confirm/store.js +16 -7
- package/lib/modules/event-confirm/view.js +5 -1
- package/lib/modules/event-toast/index.d.ts +7 -6
- package/lib/modules/event-toast/index.js +19 -8
- package/lib/modules/event-toast/store.d.ts +8 -3
- package/lib/modules/event-toast/store.js +15 -6
- package/lib/modules/invite/components/error-tips.d.ts +4 -0
- package/lib/modules/invite/components/error-tips.js +18 -0
- package/lib/modules/invite/components/pstn-invite.d.ts +2 -0
- package/lib/modules/invite/components/pstn-invite.js +297 -0
- package/lib/modules/invite/components/voip-invite.d.ts +1 -0
- package/lib/modules/invite/components/voip-invite.js +276 -0
- package/lib/modules/invite/enums.d.ts +22 -0
- package/lib/modules/invite/enums.js +33 -0
- package/lib/modules/invite/index.d.ts +7 -8
- package/lib/modules/invite/index.js +17 -15
- package/lib/modules/invite/pstn-invite.js +9 -7
- package/lib/modules/invite/store.d.ts +11 -26
- package/lib/modules/invite/store.js +55 -25
- package/lib/modules/invite/types.d.ts +14 -0
- package/lib/modules/invite/types.js +6 -0
- package/lib/modules/invite/view.d.ts +0 -4
- package/lib/modules/invite/view.js +7 -11
- package/lib/modules/invite/voip-invite.js +6 -5
- package/lib/modules/layout/components/Aside.js +34 -17
- package/lib/modules/layout/components/Carousel.js +1 -1
- package/lib/modules/layout/components/Gallery.js +1 -1
- package/lib/modules/layout/components/index.d.ts +1 -1
- package/lib/modules/layout/components/index.js +4 -4
- package/lib/modules/layout/components/who-is-speaking.d.ts +2 -0
- package/lib/modules/layout/components/who-is-speaking.js +60 -0
- package/lib/modules/layout/index.d.ts +26 -4
- package/lib/modules/layout/index.dev.d.ts +0 -1
- package/lib/modules/layout/index.dev.js +312 -386
- package/lib/modules/layout/index.js +25 -10
- package/lib/modules/layout/member-window/index.css +18 -116
- package/lib/modules/layout/member-window/index.d.ts +3 -10
- package/lib/modules/layout/member-window/index.js +115 -227
- package/lib/modules/layout/store.d.ts +61 -71
- package/lib/modules/layout/store.js +311 -573
- package/lib/modules/layout/view.d.ts +2 -0
- package/lib/modules/layout/view.js +127 -2
- package/lib/modules/live-streaming/index.d.ts +15 -7
- package/lib/modules/live-streaming/index.dev.js +13 -13
- package/lib/modules/live-streaming/index.js +20 -15
- package/lib/modules/live-streaming/store.d.ts +21 -14
- package/lib/modules/live-streaming/store.js +84 -144
- package/lib/modules/live-streaming/view.js +2 -2
- package/lib/modules/notification/index.d.ts +9 -11
- package/lib/modules/notification/index.js +21 -14
- package/lib/modules/notification/interpreter-status/index.js +1 -2
- package/lib/modules/notification/store.d.ts +5 -11
- package/lib/modules/notification/store.js +12 -62
- package/lib/modules/notification/view.d.ts +5 -3
- package/lib/modules/notification/view.js +8 -5
- package/lib/modules/offscreen-pulling/index.js +1 -1
- package/lib/modules/participant/attendee/index.css +51 -0
- package/lib/modules/participant/attendee/index.d.ts +5 -8
- package/lib/modules/participant/attendee/index.js +15 -61
- package/lib/modules/participant/components/attendee/components/microphone-indicator/index.d.ts +6 -0
- package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js +28 -0
- package/lib/modules/participant/components/attendee/components/user-avatar/index.d.ts +7 -0
- package/lib/modules/participant/components/attendee/components/user-avatar/index.js +39 -0
- package/lib/modules/participant/components/attendee/index.css +69 -0
- package/lib/modules/participant/components/attendee/index.d.ts +4 -0
- package/lib/modules/participant/components/attendee/index.js +337 -0
- package/lib/modules/participant/components/can-moveable/index.d.ts +1 -0
- package/lib/modules/participant/components/can-moveable/index.js +68 -0
- package/lib/modules/participant/components/drop-menu/index.js +8 -8
- package/lib/modules/participant/components/footer/buttons.d.ts +2 -3
- package/lib/modules/participant/components/footer/buttons.js +2 -3
- package/lib/modules/participant/components/footer/index.js +2 -2
- package/lib/modules/participant/components/mute-all/index.d.ts +3 -4
- package/lib/modules/participant/components/mute-all/index.js +31 -44
- package/lib/modules/participant/components/operate-waitingroom-member/index.d.ts +2 -0
- package/lib/modules/participant/components/operate-waitingroom-member/index.js +48 -0
- package/lib/modules/participant/components/participants/index.js +27 -50
- package/lib/modules/participant/components/user-action/index.d.ts +17 -0
- package/lib/modules/participant/components/user-action/index.js +169 -0
- package/lib/modules/participant/index.d.ts +34 -7
- package/lib/modules/participant/index.dev.d.ts +0 -1
- package/lib/modules/participant/index.dev.js +87 -116
- package/lib/modules/participant/index.js +39 -13
- package/lib/modules/participant/member-list-data-source.d.ts +4 -1
- package/lib/modules/participant/member-list-data-source.js +58 -31
- package/lib/modules/participant/room-control-drop-menu/index.css +0 -37
- package/lib/modules/participant/store.d.ts +58 -25
- package/lib/modules/participant/store.js +321 -298
- package/lib/modules/participant/type.d.ts +45 -1
- package/lib/modules/participant/type.js +15 -1
- package/lib/modules/pc-audio-connect/index.css +12 -0
- package/lib/modules/pc-audio-connect/index.d.ts +22 -0
- package/lib/modules/pc-audio-connect/index.js +68 -0
- package/lib/modules/pc-audio-connect/store.d.ts +46 -0
- package/lib/modules/pc-audio-connect/store.js +301 -0
- package/lib/modules/pc-audio-connect/types.d.ts +0 -0
- package/lib/modules/pc-audio-connect/types.js +1 -0
- package/lib/modules/pc-audio-connect/view.d.ts +3 -0
- package/lib/modules/pc-audio-connect/view.js +66 -0
- package/lib/modules/phone-audio-connect/components/callinfo/index.css +36 -0
- package/lib/modules/phone-audio-connect/components/callinfo/index.d.ts +10 -0
- package/lib/modules/phone-audio-connect/components/callinfo/index.js +77 -0
- package/lib/modules/phone-audio-connect/components/calling/index.css +72 -0
- package/lib/modules/phone-audio-connect/components/calling/index.d.ts +7 -0
- package/lib/modules/phone-audio-connect/components/calling/index.js +58 -0
- package/lib/modules/phone-audio-connect/components/remeber/index.css +10 -0
- package/lib/modules/phone-audio-connect/components/remeber/index.d.ts +5 -0
- package/lib/modules/phone-audio-connect/components/remeber/index.js +24 -0
- package/lib/modules/phone-audio-connect/components/useing/index.css +46 -0
- package/lib/modules/phone-audio-connect/components/useing/index.d.ts +3 -0
- package/lib/modules/phone-audio-connect/components/useing/index.js +36 -0
- package/lib/modules/phone-audio-connect/enums.d.ts +4 -0
- package/lib/modules/phone-audio-connect/enums.js +12 -0
- package/lib/modules/phone-audio-connect/index.css +56 -0
- package/lib/modules/phone-audio-connect/index.d.ts +16 -0
- package/lib/modules/phone-audio-connect/index.js +63 -0
- package/lib/modules/phone-audio-connect/store.d.ts +46 -0
- package/lib/modules/phone-audio-connect/store.js +320 -0
- package/lib/modules/phone-audio-connect/types.d.ts +4 -0
- package/lib/modules/phone-audio-connect/types.js +6 -0
- package/lib/modules/phone-audio-connect/view.d.ts +3 -0
- package/lib/modules/phone-audio-connect/view.js +184 -0
- package/lib/modules/setting/audio-settings/audio-settings.js +5 -5
- package/lib/modules/setting/index.d.ts +25 -5
- package/lib/modules/setting/index.dev.d.ts +0 -1
- package/lib/modules/setting/index.dev.js +120 -81
- package/lib/modules/setting/index.js +35 -9
- package/lib/modules/setting/minutes-settings/minutes-settings.js +1 -1
- package/lib/modules/setting/state/index.js +3 -3
- package/lib/modules/setting/store.d.ts +48 -14
- package/lib/modules/setting/store.js +105 -114
- package/lib/modules/setting/translate-settings/translate-settings.js +3 -3
- package/lib/modules/setting/video-settings/video-settings-basic.js +19 -22
- package/lib/modules/setting/view.js +6 -35
- package/lib/modules/share-screen/components/selection/index.css +70 -0
- package/lib/modules/share-screen/components/selection/index.d.ts +2 -0
- package/lib/modules/share-screen/components/selection/index.js +267 -0
- package/lib/modules/share-screen/components/share-state-bar/index.css +76 -0
- package/lib/modules/share-screen/components/share-state-bar/index.d.ts +4 -0
- package/lib/modules/share-screen/components/share-state-bar/index.js +98 -0
- package/lib/modules/share-screen/index.d.ts +15 -18
- package/lib/modules/share-screen/index.dev.d.ts +0 -1
- package/lib/modules/share-screen/index.dev.js +90 -91
- package/lib/modules/share-screen/index.js +22 -22
- package/lib/modules/share-screen/selection/index.css +0 -4
- package/lib/modules/share-screen/selection/index.js +129 -126
- package/lib/modules/share-screen/share-state-bar/index.js +1 -1
- package/lib/modules/share-screen/store.d.ts +36 -32
- package/lib/modules/share-screen/store.js +250 -219
- package/lib/modules/share-screen/types.d.ts +27 -0
- package/lib/modules/share-screen/types.js +6 -0
- package/lib/modules/share-screen/view.js +1 -1
- package/lib/modules/sound-effect/index.d.ts +9 -4
- package/lib/modules/sound-effect/index.js +72 -40
- package/lib/modules/sound-effect/sound-effect-player.js +1 -1
- package/lib/modules/state-bar/index.d.ts +16 -13
- package/lib/modules/state-bar/index.dev.d.ts +0 -1
- package/lib/modules/state-bar/index.dev.js +78 -83
- package/lib/modules/state-bar/index.js +23 -7
- package/lib/modules/state-bar/meeting-details.js +24 -12
- package/lib/modules/state-bar/meeting-network-state.js +1 -1
- package/lib/modules/state-bar/store.d.ts +20 -10
- package/lib/modules/state-bar/store.js +84 -87
- package/lib/modules/state-bar/view.js +2 -2
- package/lib/modules/video-window/deviceState/index.d.ts +2 -2
- package/lib/modules/video-window/deviceState/index.js +4 -6
- package/lib/modules/video-window/index.css +1 -4
- package/lib/modules/video-window/index.d.ts +33 -6
- package/lib/modules/video-window/index.js +63 -15
- package/lib/modules/video-window/members/index.css +1 -0
- package/lib/modules/video-window/members/index.js +25 -11
- package/lib/modules/video-window/store.d.ts +58 -27
- package/lib/modules/video-window/store.js +166 -161
- package/lib/modules/waiting-room-layout/index.d.ts +11 -4
- package/lib/modules/waiting-room-layout/index.js +26 -13
- package/lib/modules/waiting-room-layout/store.d.ts +6 -3
- package/lib/modules/waiting-room-layout/store.js +17 -15
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +4 -4
- package/lib/modules/whiteboard/components/control-bar/store.js +8 -8
- package/lib/modules/whiteboard/index.d.ts +20 -14
- package/lib/modules/whiteboard/index.js +250 -223
- package/lib/modules/whiteboard/view.d.ts +2 -0
- package/lib/modules/whiteboard/view.js +49 -0
- package/lib/plugins/browser-runtime-plugin.js +5 -1
- package/lib/providers/chat-provider.d.ts +71 -0
- package/lib/providers/chat-provider.js +91 -0
- package/lib/providers/device-privilege-provider.d.ts +52 -6
- package/lib/providers/device-privilege-provider.js +212 -183
- package/lib/providers/device-provider.d.ts +203 -45
- package/lib/providers/device-provider.js +486 -398
- package/lib/providers/device-stream-provider.d.ts +12 -13
- package/lib/providers/device-stream-provider.js +86 -193
- package/lib/providers/dialog-provider.d.ts +135 -0
- package/lib/providers/dialog-provider.js +204 -0
- package/lib/providers/event-provider.d.ts +1 -21
- package/lib/providers/event-provider.js +19 -57
- package/lib/providers/interpreter-provider.d.ts +218 -7
- package/lib/providers/interpreter-provider.js +1072 -80
- package/lib/providers/local-storage-provider.d.ts +9 -0
- package/lib/providers/message-provider.d.ts +69 -0
- package/lib/providers/message-provider.js +98 -0
- package/lib/providers/monitor-provider.d.ts +5 -0
- package/lib/providers/phone-audio-provider.d.ts +131 -0
- package/lib/providers/phone-audio-provider.js +515 -0
- package/lib/providers/privilege-provider.d.ts +325 -12
- package/lib/providers/privilege-provider.js +111 -295
- package/lib/providers/renderer-provider.d.ts +46 -4
- package/lib/providers/renderer-provider.js +57 -60
- package/lib/providers/room-provider.d.ts +113 -6
- package/lib/providers/room-provider.js +667 -87
- package/lib/providers/screen-share-provider.d.ts +65 -0
- package/lib/providers/screen-share-provider.js +238 -0
- package/lib/providers/session-provider.d.ts +30 -0
- package/lib/runtime.d.ts +2 -0
- package/lib/scenes/main-scene.d.ts +41 -3
- package/lib/scenes/main-scene.js +407 -246
- package/lib/scenes/waiting-scene.d.ts +34 -4
- package/lib/scenes/waiting-scene.js +163 -56
- package/lib/shared-data-source/chat-data.d.ts +14 -0
- package/lib/shared-data-source/chat-data.js +130 -0
- package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
- package/lib/shared-data-source/device-privilege-data.js +25 -0
- package/lib/shared-data-source/interpreter.d.ts +63 -0
- package/lib/shared-data-source/interpreter.js +248 -0
- package/lib/shared-data-source/layout-data.d.ts +29 -0
- package/lib/shared-data-source/layout-data.js +181 -0
- package/lib/shared-data-source/pin-data.d.ts +9 -0
- package/lib/shared-data-source/pin-data.js +24 -0
- package/lib/shared-data-source/setting.d.ts +32 -0
- package/lib/shared-data-source/setting.js +153 -0
- package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
- package/lib/shared-data-source/speaker-spotlight.js +15 -0
- package/lib/shared-data-source/video-window.d.ts +161 -0
- package/lib/shared-data-source/video-window.js +1202 -0
- package/lib/shared-data-source/waiting-room.d.ts +19 -0
- package/lib/shared-data-source/waiting-room.js +158 -0
- package/lib/translations/enUS.d.ts +43 -17
- package/lib/translations/enUS.js +59 -33
- package/lib/translations/zhCN.d.ts +43 -17
- package/lib/translations/zhCN.js +57 -31
- package/lib/type.d.ts +270 -25
- package/lib/type.js +67 -2
- package/lib/ui-manager.d.ts +20 -16
- package/lib/ui-manager.js +59 -795
- package/lib/ui-scene.d.ts +6 -1
- package/lib/ui-scene.js +372 -42
- package/lib/utilities/constant.d.ts +63 -86
- package/lib/utilities/constant.js +151 -175
- package/lib/utilities/copyText.js +8 -7
- package/lib/utilities/extract.d.ts +1 -1
- package/lib/utilities/privilege.d.ts +4 -0
- package/lib/utilities/privilege.js +31 -0
- package/lib/utilities/setting-config-storage.d.ts +12 -0
- package/lib/utilities/setting-config-storage.js +102 -0
- package/lib/utilities/tools.d.ts +35 -3
- package/lib/utilities/tools.js +104 -2
- package/lib/utilities/video-track-render-context.d.ts +3 -4
- package/lib/utilities/video-track-render-context.js +1 -1
- package/package.json +5 -5
- package/public/assets/full-screen-error-boundary-img.png +0 -0
- package/public/assets/leave-meeting.png +0 -0
- package/public/index.html +24 -14
|
@@ -0,0 +1,148 @@
|
|
|
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.VideoWindowDialog = void 0;
|
|
9
|
+
var _react = require("react");
|
|
10
|
+
var _mobxReact = require("mobx-react");
|
|
11
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
12
|
+
var _reactDom = require("react-dom");
|
|
13
|
+
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
|
14
|
+
var _constant = require("../../../../utilities/constant");
|
|
15
|
+
var _renderer = require("../../../../utilities/renderer");
|
|
16
|
+
var _videoTrackRenderContext = require("../../../../utilities/video-track-render-context");
|
|
17
|
+
var _type = require("../../../video-window/type");
|
|
18
|
+
var _store = require("../../store");
|
|
19
|
+
var _dialogs = require("../../dialogs");
|
|
20
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
|
+
function changeVideoWindowConfig(browserWindow) {
|
|
22
|
+
var resizeble = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
23
|
+
browserWindow.setResizable(resizeble);
|
|
24
|
+
browserWindow.setAspectRatio(resizeble ? _type.VideoWindowRadio : 0);
|
|
25
|
+
browserWindow.setMinimumSize(resizeble ? _type.DefaultVideoWindowWidth : 0, resizeble ? _type.DefaultVideoWindowSmallTypeHeight : 0);
|
|
26
|
+
browserWindow.setMaximumSize(resizeble ? _type.VideoWindowZoomMaxWidth : 0, resizeble ? _type.VideoWindowZoomMaxHeight : 0);
|
|
27
|
+
}
|
|
28
|
+
var VideoWindowElectronDialog = (0, _mobxReact.observer)(function (_ref) {
|
|
29
|
+
var children = _ref.children;
|
|
30
|
+
var store = (0, _react.useContext)(_store.StoreContext);
|
|
31
|
+
var _store$videoWindowBou = store.videoWindowBounds,
|
|
32
|
+
videoWindowHeight = _store$videoWindowBou.videoWindowHeight,
|
|
33
|
+
videoWindowPreviewType = _store$videoWindowBou.videoWindowPreviewType,
|
|
34
|
+
workareaX = _store$videoWindowBou.workareaX,
|
|
35
|
+
workareaY = _store$videoWindowBou.workareaY,
|
|
36
|
+
workareaWidth = _store$videoWindowBou.workareaWidth,
|
|
37
|
+
workareaHeight = _store$videoWindowBou.workareaHeight;
|
|
38
|
+
var initalBounds = {
|
|
39
|
+
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 220,
|
|
40
|
+
y: workareaY + 80,
|
|
41
|
+
width: _type.DefaultVideoWindowWidth,
|
|
42
|
+
height: _type.DefaultVideoWindowSmallTypeHeight
|
|
43
|
+
};
|
|
44
|
+
var videoWindowRef = (0, _react.useRef)();
|
|
45
|
+
var handleBounds = function handleBounds(newBounds) {
|
|
46
|
+
var height = newBounds.height;
|
|
47
|
+
var width = newBounds.width;
|
|
48
|
+
store.resizeVideoWindow(width < _type.DefaultVideoWindowWidth || !width ? _type.DefaultVideoWindowWidth : width, height < _type.DefaultVideoWindowSmallTypeHeight || !height ? _type.DefaultVideoWindowSmallTypeHeight : height);
|
|
49
|
+
};
|
|
50
|
+
(0, _react.useEffect)(function () {
|
|
51
|
+
var node;
|
|
52
|
+
window.runtime.openRendererWindow('video-window', function (dom, browserWindow, rendererWindow) {
|
|
53
|
+
var _head$querySelector;
|
|
54
|
+
node = dom;
|
|
55
|
+
var style = document.createElement('style');
|
|
56
|
+
style.id = 'video-window-scrollbar-style';
|
|
57
|
+
style.textContent = "\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n ";
|
|
58
|
+
var head = rendererWindow.window.document.head;
|
|
59
|
+
(_head$querySelector = head.querySelector('#video-window-scrollbar-style')) === null || _head$querySelector === void 0 || _head$querySelector.remove();
|
|
60
|
+
head.appendChild(style);
|
|
61
|
+
videoWindowRef.current = browserWindow;
|
|
62
|
+
browserWindow.setTitle('Video Window');
|
|
63
|
+
browserWindow.setResizable(false); // 修复分享窗口切换时导致的大小失真的情况,所以要在修改 bounds 之前先设置为不可修改大小
|
|
64
|
+
|
|
65
|
+
browserWindow.setBounds(initalBounds);
|
|
66
|
+
changeVideoWindowConfig(browserWindow);
|
|
67
|
+
browserWindow.setBackgroundColor('#00000000');
|
|
68
|
+
browserWindow.setVisibleOnAllWorkspaces(true, {
|
|
69
|
+
visibleOnFullScreen: true,
|
|
70
|
+
skipTransformProcessType: true
|
|
71
|
+
});
|
|
72
|
+
browserWindow.setAlwaysOnTop(true, 'screen-saver');
|
|
73
|
+
_dialogs.dialogWindows.set(_constant.FcrUIDialogKey.VIDEO_WINDOW, browserWindow);
|
|
74
|
+
(0, _renderer.handleWillClose)(browserWindow, function () {
|
|
75
|
+
(0, _reactDom.unmountComponentAtNode)(node);
|
|
76
|
+
_dialogs.dialogWindows["delete"](_constant.FcrUIDialogKey.VIDEO_WINDOW);
|
|
77
|
+
if (!browserWindow.isDestroyed()) {
|
|
78
|
+
browserWindow.removeAllListeners('will-resize');
|
|
79
|
+
changeVideoWindowConfig(browserWindow);
|
|
80
|
+
browserWindow.setResizable(false);
|
|
81
|
+
browserWindow.setBounds(initalBounds);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
if (browserWindow) {
|
|
85
|
+
browserWindow.addListener('will-resize', (0, _debounce["default"])(function (event, newBounds) {
|
|
86
|
+
handleBounds(newBounds);
|
|
87
|
+
}, 100));
|
|
88
|
+
}
|
|
89
|
+
(0, _reactDom.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_videoTrackRenderContext.FcrVideoTrackRenderContext.Provider, {
|
|
90
|
+
value: {
|
|
91
|
+
localVideoRenderProvider: store.localVideoRenderProvider,
|
|
92
|
+
remoteVideoRenderProvider: store.remoteVideoRenderManager
|
|
93
|
+
},
|
|
94
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_store.StoreContext.Provider, {
|
|
95
|
+
value: store,
|
|
96
|
+
children: children
|
|
97
|
+
})
|
|
98
|
+
}), dom);
|
|
99
|
+
}, {
|
|
100
|
+
type: 'panel',
|
|
101
|
+
frame: false,
|
|
102
|
+
fullscreen: false,
|
|
103
|
+
maximizable: false,
|
|
104
|
+
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 220,
|
|
105
|
+
y: workareaY + 80,
|
|
106
|
+
width: _type.DefaultVideoWindowWidth,
|
|
107
|
+
height: _type.DefaultVideoWindowSmallTypeHeight,
|
|
108
|
+
minWidth: _type.DefaultVideoWindowWidth,
|
|
109
|
+
transparent: true,
|
|
110
|
+
alwaysOnTop: true,
|
|
111
|
+
hasShadow: false,
|
|
112
|
+
resizable: true,
|
|
113
|
+
skipTaskbar: true
|
|
114
|
+
});
|
|
115
|
+
return function () {
|
|
116
|
+
node && (0, _reactDom.unmountComponentAtNode)(node);
|
|
117
|
+
window.runtime.closeRendererWindow('video-window');
|
|
118
|
+
};
|
|
119
|
+
}, []);
|
|
120
|
+
(0, _react.useEffect)(function () {
|
|
121
|
+
if (!videoWindowRef.current) return;
|
|
122
|
+
var x = initalBounds.x,
|
|
123
|
+
y = initalBounds.y;
|
|
124
|
+
videoWindowRef.current.setBounds({
|
|
125
|
+
x: x,
|
|
126
|
+
y: y
|
|
127
|
+
});
|
|
128
|
+
}, [workareaX, workareaY]);
|
|
129
|
+
(0, _react.useEffect)(function () {
|
|
130
|
+
if (!videoWindowRef.current) return;
|
|
131
|
+
videoWindowRef.current.setResizable(false);
|
|
132
|
+
videoWindowRef.current.setBounds({
|
|
133
|
+
width: _type.DefaultVideoWindowWidth,
|
|
134
|
+
height: videoWindowHeight
|
|
135
|
+
});
|
|
136
|
+
changeVideoWindowConfig(videoWindowRef.current, videoWindowPreviewType === 'small');
|
|
137
|
+
}, [videoWindowHeight, videoWindowPreviewType]);
|
|
138
|
+
return null;
|
|
139
|
+
});
|
|
140
|
+
var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(function (_ref2) {
|
|
141
|
+
var children = _ref2.children;
|
|
142
|
+
if ((0, _env.isElectron)()) {
|
|
143
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(VideoWindowElectronDialog, {
|
|
144
|
+
children: children
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
});
|
|
@@ -48,7 +48,7 @@ var WhiteboardElectronDialog = exports.WhiteboardElectronDialog = (0, _mobxReact
|
|
|
48
48
|
// // });
|
|
49
49
|
// }
|
|
50
50
|
|
|
51
|
-
_dialogs.dialogWindows.set(_constant.
|
|
51
|
+
_dialogs.dialogWindows.set(_constant.FcrUIDialogKey.WHITEBOARD, browserWindow);
|
|
52
52
|
}
|
|
53
53
|
module.getComponent(dom);
|
|
54
54
|
// render(<div className="fcr-whiteboard-wrapper">{children}</div>, dom);
|
|
@@ -66,7 +66,7 @@ var WhiteboardElectronDialog = exports.WhiteboardElectronDialog = (0, _mobxReact
|
|
|
66
66
|
transparent: true
|
|
67
67
|
});
|
|
68
68
|
return function () {
|
|
69
|
-
_dialogs.dialogWindows["delete"](_constant.
|
|
69
|
+
_dialogs.dialogWindows["delete"](_constant.FcrUIDialogKey.WHITEBOARD);
|
|
70
70
|
node && (0, _reactDom.unmountComponentAtNode)(node);
|
|
71
71
|
window.runtime.closeRendererWindow('whiteboard');
|
|
72
72
|
};
|
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
export declare let dialogWindows: Map<DialogKey, Electron.BrowserWindow>;
|
|
4
|
-
export declare const setDialogBounds: (browserWindow: Electron.BrowserWindow, currentDialogBounds: Partial<Electron.Rectangle>) => void;
|
|
5
|
-
export declare const VideoWindowDialog: ({ children }: PropsWithChildren<{}>) => import("react/jsx-runtime").JSX.Element | null;
|
|
1
|
+
import { FcrUIDialogKey } from '../../utilities/constant';
|
|
2
|
+
export declare let dialogWindows: Map<FcrUIDialogKey, Electron.BrowserWindow>;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("core-js/modules/es.object.define-property.js");
|
|
4
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
|
-
exports.
|
|
7
|
+
exports.dialogWindows = void 0;
|
|
9
8
|
require("core-js/modules/es.array.iterator.js");
|
|
10
9
|
require("core-js/modules/es.map.js");
|
|
11
10
|
require("core-js/modules/es.object.to-string.js");
|
|
@@ -25,158 +24,4 @@ require("core-js/modules/esnext.map.reduce.js");
|
|
|
25
24
|
require("core-js/modules/esnext.map.some.js");
|
|
26
25
|
require("core-js/modules/esnext.map.update.js");
|
|
27
26
|
require("core-js/modules/web.dom-collections.iterator.js");
|
|
28
|
-
var
|
|
29
|
-
var _store = require("./store");
|
|
30
|
-
var _mobxReact = require("mobx-react");
|
|
31
|
-
var _env = require("agora-foundation/lib/utilities/env");
|
|
32
|
-
var _reactDom = require("react-dom");
|
|
33
|
-
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
|
34
|
-
var _constant = require("../../utilities/constant");
|
|
35
|
-
var _renderer = require("../../utilities/renderer");
|
|
36
|
-
var _videoTrackRenderContext = require("../../utilities/video-track-render-context");
|
|
37
|
-
var _type = require("./../video-window/type");
|
|
38
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
39
|
-
var dialogWindows = exports.dialogWindows = new Map();
|
|
40
|
-
var setDialogBounds = exports.setDialogBounds = function setDialogBounds(browserWindow, currentDialogBounds) {
|
|
41
|
-
browserWindow.setBounds(currentDialogBounds, true);
|
|
42
|
-
browserWindow.center();
|
|
43
|
-
browserWindow.setVisibleOnAllWorkspaces(false, {
|
|
44
|
-
visibleOnFullScreen: true,
|
|
45
|
-
skipTransformProcessType: true
|
|
46
|
-
});
|
|
47
|
-
browserWindow.setSkipTaskbar(false);
|
|
48
|
-
};
|
|
49
|
-
var VideoWindowElectronDialog = (0, _mobxReact.observer)(function (_ref) {
|
|
50
|
-
var children = _ref.children;
|
|
51
|
-
var store = (0, _react.useContext)(_store.StoreContext);
|
|
52
|
-
var _store$videoWindowBou = store.videoWindowBounds,
|
|
53
|
-
videoWindowHeight = _store$videoWindowBou.videoWindowHeight,
|
|
54
|
-
videoWindowPreviewType = _store$videoWindowBou.videoWindowPreviewType,
|
|
55
|
-
workareaX = _store$videoWindowBou.workareaX,
|
|
56
|
-
workareaY = _store$videoWindowBou.workareaY,
|
|
57
|
-
workareaWidth = _store$videoWindowBou.workareaWidth,
|
|
58
|
-
workareaHeight = _store$videoWindowBou.workareaHeight;
|
|
59
|
-
var videoWindowRef = (0, _react.useRef)();
|
|
60
|
-
var handleBounds = function handleBounds(newBounds) {
|
|
61
|
-
var height = newBounds.height;
|
|
62
|
-
var width = newBounds.width;
|
|
63
|
-
store.resizeVideoWindow(width < _type.DefaultVideoWindowWidth || !width ? _type.DefaultVideoWindowWidth : width, height < _type.DefaultVideoWindowSmallTypeHeight || !height ? _type.DefaultVideoWindowSmallTypeHeight : height);
|
|
64
|
-
};
|
|
65
|
-
(0, _react.useEffect)(function () {
|
|
66
|
-
var node;
|
|
67
|
-
window.runtime.openRendererWindow('video-window', function (dom, browserWindow) {
|
|
68
|
-
node = dom;
|
|
69
|
-
videoWindowRef.current = browserWindow;
|
|
70
|
-
browserWindow.setTitle('Video Window');
|
|
71
|
-
var initVideoWindow = function initVideoWindow() {
|
|
72
|
-
browserWindow.setResizable(true);
|
|
73
|
-
browserWindow.setAspectRatio(_type.VideoWindowRadio);
|
|
74
|
-
browserWindow.setMinimumSize(_type.DefaultVideoWindowWidth, _type.DefaultVideoWindowSmallTypeHeight);
|
|
75
|
-
browserWindow.setMaximumSize(_type.VideoWindowZoomMaxWidth, _type.VideoWindowZoomMaxHeight);
|
|
76
|
-
};
|
|
77
|
-
initVideoWindow();
|
|
78
|
-
browserWindow.setBackgroundColor('#00000000');
|
|
79
|
-
browserWindow.setVisibleOnAllWorkspaces(true, {
|
|
80
|
-
visibleOnFullScreen: true,
|
|
81
|
-
skipTransformProcessType: true
|
|
82
|
-
});
|
|
83
|
-
browserWindow.setAlwaysOnTop(true, 'screen-saver');
|
|
84
|
-
dialogWindows.set(_constant.DialogKey.VIDEO_WINDOW, browserWindow);
|
|
85
|
-
(0, _renderer.handleWillClose)(browserWindow, function () {
|
|
86
|
-
(0, _reactDom.unmountComponentAtNode)(node);
|
|
87
|
-
dialogWindows["delete"](_constant.DialogKey.VIDEO_WINDOW);
|
|
88
|
-
if (!browserWindow.isDestroyed()) {
|
|
89
|
-
browserWindow.removeAllListeners('will-resize');
|
|
90
|
-
browserWindow.removeAllListeners('show');
|
|
91
|
-
initVideoWindow();
|
|
92
|
-
browserWindow.setBounds({
|
|
93
|
-
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 168,
|
|
94
|
-
y: workareaY + 80,
|
|
95
|
-
width: _type.DefaultVideoWindowWidth,
|
|
96
|
-
height: _type.DefaultVideoWindowSmallTypeHeight
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
if (browserWindow) {
|
|
101
|
-
browserWindow.addListener('will-resize', (0, _debounce["default"])(function (event, newBounds) {
|
|
102
|
-
handleBounds(newBounds);
|
|
103
|
-
}, 100));
|
|
104
|
-
browserWindow.addListener('show', function () {
|
|
105
|
-
browserWindow.setBounds({
|
|
106
|
-
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 168,
|
|
107
|
-
y: workareaY + 80
|
|
108
|
-
});
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
(0, _reactDom.render)(/*#__PURE__*/(0, _jsxRuntime.jsx)(_videoTrackRenderContext.FcrVideoTrackRenderContext.Provider, {
|
|
112
|
-
value: {
|
|
113
|
-
deviceStore: store.deviceStore,
|
|
114
|
-
remoteVideoRenderManager: store.remoteVideoRenderManager
|
|
115
|
-
},
|
|
116
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_store.StoreContext.Provider, {
|
|
117
|
-
value: store,
|
|
118
|
-
children: children
|
|
119
|
-
})
|
|
120
|
-
}), dom);
|
|
121
|
-
}, {
|
|
122
|
-
type: 'panel',
|
|
123
|
-
frame: false,
|
|
124
|
-
fullscreen: false,
|
|
125
|
-
maximizable: false,
|
|
126
|
-
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 168,
|
|
127
|
-
y: workareaY + 80,
|
|
128
|
-
width: _type.DefaultVideoWindowWidth,
|
|
129
|
-
height: _type.DefaultVideoWindowSmallTypeHeight,
|
|
130
|
-
minWidth: _type.DefaultVideoWindowWidth,
|
|
131
|
-
transparent: true,
|
|
132
|
-
alwaysOnTop: true,
|
|
133
|
-
hasShadow: false,
|
|
134
|
-
resizable: true,
|
|
135
|
-
skipTaskbar: true
|
|
136
|
-
});
|
|
137
|
-
return function () {
|
|
138
|
-
node && (0, _reactDom.unmountComponentAtNode)(node);
|
|
139
|
-
window.runtime.closeRendererWindow('video-window');
|
|
140
|
-
};
|
|
141
|
-
}, []);
|
|
142
|
-
(0, _react.useEffect)(function () {
|
|
143
|
-
if (!videoWindowRef.current) return;
|
|
144
|
-
videoWindowRef.current.setBounds({
|
|
145
|
-
x: workareaX + workareaWidth - _type.DefaultVideoWindowWidth - 168,
|
|
146
|
-
y: workareaY + 80
|
|
147
|
-
});
|
|
148
|
-
}, [workareaX, workareaY]);
|
|
149
|
-
(0, _react.useEffect)(function () {
|
|
150
|
-
if (!videoWindowRef.current) return;
|
|
151
|
-
if (videoWindowPreviewType === 'small') {
|
|
152
|
-
videoWindowRef.current.setResizable(true);
|
|
153
|
-
videoWindowRef.current.setAspectRatio(_type.VideoWindowRadio);
|
|
154
|
-
videoWindowRef.current.setMinimumSize(_type.DefaultVideoWindowWidth, _type.DefaultVideoWindowSmallTypeHeight);
|
|
155
|
-
videoWindowRef.current.setMaximumSize(_type.VideoWindowZoomMaxWidth, _type.VideoWindowZoomMaxHeight);
|
|
156
|
-
} else if (videoWindowPreviewType === 'mix') {
|
|
157
|
-
videoWindowRef.current.setResizable(false);
|
|
158
|
-
videoWindowRef.current.setAspectRatio(0);
|
|
159
|
-
videoWindowRef.current.setMinimumSize(0, 0);
|
|
160
|
-
videoWindowRef.current.setMaximumSize(0, 0);
|
|
161
|
-
} else {
|
|
162
|
-
videoWindowRef.current.setResizable(false);
|
|
163
|
-
videoWindowRef.current.setAspectRatio(0);
|
|
164
|
-
videoWindowRef.current.setMinimumSize(0, 0);
|
|
165
|
-
videoWindowRef.current.setMaximumSize(0, 0);
|
|
166
|
-
}
|
|
167
|
-
videoWindowRef.current.setBounds({
|
|
168
|
-
width: _type.DefaultVideoWindowWidth,
|
|
169
|
-
height: videoWindowHeight
|
|
170
|
-
});
|
|
171
|
-
}, [videoWindowHeight, videoWindowPreviewType]);
|
|
172
|
-
return null;
|
|
173
|
-
});
|
|
174
|
-
var VideoWindowDialog = exports.VideoWindowDialog = (0, _mobxReact.observer)(function (_ref2) {
|
|
175
|
-
var children = _ref2.children;
|
|
176
|
-
if ((0, _env.isElectron)()) {
|
|
177
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(VideoWindowElectronDialog, {
|
|
178
|
-
children: children
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
return null;
|
|
182
|
-
});
|
|
27
|
+
var dialogWindows = exports.dialogWindows = new Map();
|
|
@@ -1,32 +1,10 @@
|
|
|
1
|
-
import { DialogKey } from '../../../utilities/constant';
|
|
2
|
-
import DialogStore from '../store';
|
|
3
1
|
export declare const DialogInstanceContext: import("react").Context<{
|
|
4
2
|
browserWindow: Electron.BrowserWindow;
|
|
5
3
|
newRendererWindow: Window;
|
|
4
|
+
resizable: boolean;
|
|
6
5
|
}>;
|
|
7
6
|
export declare const shadowOffset: number;
|
|
8
|
-
export declare function useElectronDialog(props: {
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* @param height - The height value should be based on the maximum content height of the tab
|
|
12
|
-
*/
|
|
13
|
-
config: Electron.BrowserWindowConstructorOptions;
|
|
14
|
-
onClose?: (store: DialogStore) => void;
|
|
15
|
-
onOpened?: (props: {
|
|
16
|
-
browserWindow: Electron.BrowserWindow;
|
|
17
|
-
store: DialogStore;
|
|
18
|
-
setBounds: (bounds: Partial<Electron.Rectangle>, animate?: boolean) => void;
|
|
19
|
-
}) => void;
|
|
20
|
-
onUnmounted?: (store: DialogStore) => void;
|
|
21
|
-
children: React.ReactNode;
|
|
22
|
-
scroll?: boolean;
|
|
23
|
-
focus?: boolean;
|
|
24
|
-
ignoreMouseEvents?: boolean | Electron.IgnoreMouseEventsOptions;
|
|
25
|
-
alwaysOnTop?: boolean;
|
|
26
|
-
fullScreen?: boolean;
|
|
27
|
-
polyfills?: string[];
|
|
28
|
-
hasCustomShadow?: boolean;
|
|
29
|
-
}): {
|
|
30
|
-
store: DialogStore;
|
|
7
|
+
export declare function useElectronDialog(props: FcrUIDialogHooksProps): {
|
|
8
|
+
store: import("../store").default;
|
|
31
9
|
browserWindow: Electron.BrowserWindow | undefined;
|
|
32
10
|
};
|
|
@@ -2,20 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
require("core-js/modules/es.symbol.js");
|
|
4
4
|
require("core-js/modules/es.array.filter.js");
|
|
5
|
-
require("core-js/modules/es.array.for-each.js");
|
|
6
5
|
require("core-js/modules/es.array.push.js");
|
|
7
6
|
require("core-js/modules/es.object.define-properties.js");
|
|
8
7
|
require("core-js/modules/es.object.define-property.js");
|
|
9
8
|
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
10
9
|
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
11
10
|
require("core-js/modules/es.object.keys.js");
|
|
12
|
-
require("core-js/modules/es.object.to-string.js");
|
|
13
11
|
require("core-js/modules/esnext.async-iterator.filter.js");
|
|
14
|
-
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
15
|
-
require("core-js/modules/esnext.iterator.constructor.js");
|
|
16
12
|
require("core-js/modules/esnext.iterator.filter.js");
|
|
17
|
-
require("core-js/modules/esnext.iterator.for-each.js");
|
|
18
|
-
require("core-js/modules/web.dom-collections.for-each.js");
|
|
19
13
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
20
14
|
Object.defineProperty(exports, "__esModule", {
|
|
21
15
|
value: true
|
|
@@ -23,14 +17,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
23
17
|
exports.shadowOffset = exports.DialogInstanceContext = void 0;
|
|
24
18
|
exports.useElectronDialog = useElectronDialog;
|
|
25
19
|
require("core-js/modules/es.array.concat.js");
|
|
20
|
+
require("core-js/modules/es.array.for-each.js");
|
|
26
21
|
require("core-js/modules/es.array.includes.js");
|
|
22
|
+
require("core-js/modules/es.object.to-string.js");
|
|
27
23
|
require("core-js/modules/es.string.includes.js");
|
|
24
|
+
require("core-js/modules/esnext.async-iterator.for-each.js");
|
|
25
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
26
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
27
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
28
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
28
29
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
29
30
|
var _react = require("react");
|
|
30
31
|
var _store = require("../store");
|
|
31
32
|
var _dialogs = require("../dialogs");
|
|
32
33
|
var _renderer = require("../../../utilities/renderer");
|
|
33
34
|
var _reactDom = require("react-dom");
|
|
35
|
+
var _constant = require("../../../utilities/constant");
|
|
34
36
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
35
37
|
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; }
|
|
36
38
|
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; }
|
|
@@ -47,7 +49,7 @@ function useElectronDialog(props) {
|
|
|
47
49
|
children = props.children,
|
|
48
50
|
ignoreMouseEvents = props.ignoreMouseEvents,
|
|
49
51
|
_props$alwaysOnTop = props.alwaysOnTop,
|
|
50
|
-
alwaysOnTop = _props$alwaysOnTop === void 0 ?
|
|
52
|
+
alwaysOnTop = _props$alwaysOnTop === void 0 ? false : _props$alwaysOnTop,
|
|
51
53
|
fullScreen = props.fullScreen,
|
|
52
54
|
onOpened = props.onOpened,
|
|
53
55
|
onUnmounted = props.onUnmounted,
|
|
@@ -60,6 +62,7 @@ function useElectronDialog(props) {
|
|
|
60
62
|
_customConfigs$height = customConfigs.height,
|
|
61
63
|
h = _customConfigs$height === void 0 ? 0 : _customConfigs$height;
|
|
62
64
|
var config = _objectSpread(_objectSpread({
|
|
65
|
+
type: 'panel',
|
|
63
66
|
hasShadow: false,
|
|
64
67
|
frame: false,
|
|
65
68
|
transparent: true,
|
|
@@ -72,51 +75,91 @@ function useElectronDialog(props) {
|
|
|
72
75
|
(0, _react.useEffect)(function () {
|
|
73
76
|
var node;
|
|
74
77
|
window.runtime.openRendererWindow(dialogKey, function (dom, browserWindow, newRendererWindow) {
|
|
75
|
-
var
|
|
78
|
+
var _window$runtime, _controlbar$isVisible;
|
|
76
79
|
node = dom;
|
|
77
80
|
windowRef.current = browserWindow;
|
|
78
81
|
_dialogs.dialogWindows.set(dialogKey, browserWindow);
|
|
82
|
+
var thisWindowBounds = browserWindow.getBounds();
|
|
83
|
+
var mainAppWindowBounds = window.runtime.browserWindow.getBounds();
|
|
84
|
+
var nearDisplayBounds = window.runtime.screen.getDisplayNearestPoint(mainAppWindowBounds).bounds;
|
|
85
|
+
var controlbar = _dialogs.dialogWindows.get(_constant.FcrUIDialogKey.CONTROL_BAR);
|
|
86
|
+
var isFullScreen = (_window$runtime = window.runtime) === null || _window$runtime === void 0 ? void 0 : _window$runtime.browserWindow.isFullScreen();
|
|
87
|
+
if (controlbar && controlbar !== null && controlbar !== void 0 && (_controlbar$isVisible = controlbar.isVisible) !== null && _controlbar$isVisible !== void 0 && _controlbar$isVisible.call(controlbar)) {
|
|
88
|
+
// 因为打开过的窗口在关闭时是用的 hide 方法,因此只判断 controlbar 是否存在会在关闭 controlbar 时失效,导致窗口依然跟随 controlbar 最后所在屏幕打开,所以要再判断一下 isVisible 状态
|
|
89
|
+
// 当屏幕共享时会打开 control bar,此时弹窗相对于 control bar 展示
|
|
90
|
+
var nearDisplay = window.runtime.screen.getDisplayNearestPoint(controlbar.getBounds());
|
|
91
|
+
var _nearDisplayBounds = nearDisplay.bounds;
|
|
92
|
+
var _thisWindowBounds = browserWindow.getBounds();
|
|
93
|
+
console.log({
|
|
94
|
+
thisWindowBounds: _thisWindowBounds
|
|
95
|
+
});
|
|
96
|
+
var centerBounds = {
|
|
97
|
+
x: Math.floor(_nearDisplayBounds.x + (_nearDisplayBounds.width - _thisWindowBounds.width) / 2),
|
|
98
|
+
y: Math.floor(_nearDisplayBounds.y + (_nearDisplayBounds.height - _thisWindowBounds.height) / 2)
|
|
99
|
+
};
|
|
100
|
+
// resizeble 为 true 的窗口在切换不同分辨率属性的显示器时,会有打开尺寸失真的情况出现,所以暂存一下其原始值,在更改坐标之后还原
|
|
101
|
+
var resizeble = browserWindow.isResizable();
|
|
102
|
+
browserWindow.setResizable(false);
|
|
103
|
+
browserWindow.setBounds(centerBounds);
|
|
104
|
+
browserWindow.setResizable(resizeble);
|
|
105
|
+
} else if (isFullScreen) {
|
|
106
|
+
var _browserWindow$setBou;
|
|
107
|
+
// 当窗口的自定义设置为全屏时,让弹窗追随主窗口所在的屏幕展示
|
|
108
|
+
browserWindow === null || browserWindow === void 0 || (_browserWindow$setBou = browserWindow.setBounds) === null || _browserWindow$setBou === void 0 || _browserWindow$setBou.call(browserWindow, {
|
|
109
|
+
x: nearDisplayBounds.x,
|
|
110
|
+
y: (0, _renderer.isWindows)() && polyfills !== null && polyfills !== void 0 && polyfills.includes('fix-toast-window-flash') ? -100 : nearDisplayBounds.y,
|
|
111
|
+
width: nearDisplayBounds.width,
|
|
112
|
+
height: (0, _renderer.isWindows)() && polyfills !== null && polyfills !== void 0 && polyfills.includes('fix-toast-window-flash') ? 0 : nearDisplayBounds.height
|
|
113
|
+
});
|
|
114
|
+
} else {
|
|
115
|
+
var _browserWindow$setBou2;
|
|
116
|
+
// 如果主窗口不是全屏模式,那么新打开的弹窗相对于主窗口弹窗的水平垂直居中显示
|
|
117
|
+
var bounds = {
|
|
118
|
+
x: Math.floor(mainAppWindowBounds.x + (mainAppWindowBounds.width - thisWindowBounds.width) / 2),
|
|
119
|
+
y: Math.floor(mainAppWindowBounds.y + (mainAppWindowBounds.height - thisWindowBounds.height) / 2)
|
|
120
|
+
};
|
|
121
|
+
browserWindow === null || browserWindow === void 0 || (_browserWindow$setBou2 = browserWindow.setBounds) === null || _browserWindow$setBou2 === void 0 || _browserWindow$setBou2.call(browserWindow, bounds);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// 设置所有窗口为所有工作区可见
|
|
125
|
+
browserWindow.setVisibleOnAllWorkspaces(true, {
|
|
126
|
+
visibleOnFullScreen: true,
|
|
127
|
+
skipTransformProcessType: true
|
|
128
|
+
});
|
|
129
|
+
|
|
130
|
+
// @ts-ignore
|
|
131
|
+
// window._browserWindows = window._browserWindows || {};
|
|
132
|
+
// @ts-ignore
|
|
133
|
+
// window._browserWindows[dialogKey] = browserWindow;
|
|
134
|
+
// @ts-ignore
|
|
135
|
+
// window._windows = window._windows || {};
|
|
136
|
+
// @ts-ignore
|
|
137
|
+
// window._windows[dialogKey] = newRendererWindow;
|
|
138
|
+
|
|
139
|
+
// 因为窗口有可能需要单独设置位置,所以,窗口打开的回调需要放置在默认的位置设置之后
|
|
79
140
|
onOpened === null || onOpened === void 0 || onOpened({
|
|
80
141
|
browserWindow: browserWindow,
|
|
81
142
|
store: store,
|
|
143
|
+
// 重写 setBounds 方法,使得设置 bounds 时,自动加上阴影的宽度
|
|
82
144
|
setBounds: function setBounds(bounds, animate) {
|
|
83
145
|
var b = _objectSpread({}, bounds);
|
|
84
146
|
if (b.width && hasCustomShadow) b.width = b.width + shadowOffset;
|
|
85
147
|
if (b.height && hasCustomShadow) b.height = b.height + shadowOffset;
|
|
86
148
|
browserWindow.setBounds(b, animate);
|
|
87
|
-
}
|
|
149
|
+
},
|
|
150
|
+
nearDisplayBounds: nearDisplayBounds
|
|
88
151
|
});
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
var nearDisplayBounds = window.runtime.screen.getDisplayNearestPoint(mainAppWindowBounds).bounds;
|
|
92
|
-
var isFullScreen = window.runtime.browserWindow.isFullScreen();
|
|
93
|
-
if (!isFullScreen && browserWindow) {
|
|
94
|
-
var _browserWindow$setBou;
|
|
95
|
-
var bounds = {
|
|
96
|
-
x: Math.floor(mainAppWindowBounds.x + (mainAppWindowBounds.width - thisWindowBounds.width) / 2),
|
|
97
|
-
y: Math.floor(mainAppWindowBounds.y + (mainAppWindowBounds.height - thisWindowBounds.height) / 2)
|
|
98
|
-
};
|
|
99
|
-
browserWindow === null || browserWindow === void 0 || (_browserWindow$setBou = browserWindow.setBounds) === null || _browserWindow$setBou === void 0 || _browserWindow$setBou.call(browserWindow, bounds);
|
|
100
|
-
} else {
|
|
101
|
-
browserWindow.setVisibleOnAllWorkspaces(true, {
|
|
102
|
-
visibleOnFullScreen: true,
|
|
103
|
-
skipTransformProcessType: true
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
fullScreen && (browserWindow === null || browserWindow === void 0 || (_browserWindow$setBou2 = browserWindow.setBounds) === null || _browserWindow$setBou2 === void 0 ? void 0 : _browserWindow$setBou2.call(browserWindow, {
|
|
107
|
-
x: nearDisplayBounds.x,
|
|
108
|
-
y: (0, _renderer.isWindows)() && polyfills !== null && polyfills !== void 0 && polyfills.includes('fix-toast-window-flash') ? -100 : nearDisplayBounds.y,
|
|
109
|
-
width: nearDisplayBounds.width,
|
|
110
|
-
height: (0, _renderer.isWindows)() && polyfills !== null && polyfills !== void 0 && polyfills.includes('fix-toast-window-flash') ? 0 : nearDisplayBounds.height
|
|
111
|
-
}));
|
|
152
|
+
|
|
153
|
+
// 同原生 electron 的 ignoreMouseEvents 一样,设置为 true 时,窗口将不再接收鼠标事件
|
|
112
154
|
if (ignoreMouseEvents) {
|
|
113
155
|
browserWindow.setIgnoreMouseEvents(true, typeof ignoreMouseEvents === 'boolean' ? {
|
|
114
156
|
forward: true
|
|
115
157
|
} : ignoreMouseEvents);
|
|
116
158
|
}
|
|
117
|
-
|
|
159
|
+
browserWindow.setAlwaysOnTop(typeof alwaysOnTop === 'boolean' ? alwaysOnTop : typeof alwaysOnTop === 'string', typeof alwaysOnTop === 'string' ? alwaysOnTop : 'pop-up-menu');
|
|
160
|
+
_store.HIGH_LEVEL_DIALOG_LAYER.includes(dialogKey) && browserWindow.setAlwaysOnTop(true, 'pop-up-menu');
|
|
118
161
|
if (!scroll) {
|
|
119
|
-
browserWindow.webContents.insertCSS("\n ::-webkit-scrollbar {\n display: none;\n }\n #root {\n padding: ".concat(hasCustomShadow ? shadowOffset / 2 : 0, "px;\n display: ").concat(hasCustomShadow ? 'flex' : 'block', ";\n align-items: center
|
|
162
|
+
browserWindow.webContents.insertCSS("\n ::-webkit-scrollbar {\n display: none;\n }\n #root {\n padding: ".concat(hasCustomShadow ? shadowOffset / 2 : 0, "px;\n display: ").concat(hasCustomShadow ? 'flex' : 'block', ";\n align-items: center;\n }\n "));
|
|
120
163
|
}
|
|
121
164
|
focus && browserWindow.focus();
|
|
122
165
|
(0, _renderer.handleWillClose)(browserWindow, function () {
|
|
@@ -129,7 +172,8 @@ function useElectronDialog(props) {
|
|
|
129
172
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DialogInstanceContext.Provider, {
|
|
130
173
|
value: {
|
|
131
174
|
browserWindow: browserWindow,
|
|
132
|
-
newRendererWindow: newRendererWindow
|
|
175
|
+
newRendererWindow: newRendererWindow,
|
|
176
|
+
resizable: !!customConfigs.resizable
|
|
133
177
|
},
|
|
134
178
|
children: typeof children === 'function' ? children(browserWindow) : children
|
|
135
179
|
})
|
|
@@ -144,6 +188,18 @@ function useElectronDialog(props) {
|
|
|
144
188
|
onUnmounted === null || onUnmounted === void 0 || onUnmounted(store);
|
|
145
189
|
};
|
|
146
190
|
}, []);
|
|
191
|
+
|
|
192
|
+
// 这组监听是为了处理 mac 全屏模式下,弹窗会因为主窗口全屏而变成独立窗口的问题
|
|
193
|
+
window.runtime.browserWindow.addListener('enter-full-screen', function () {
|
|
194
|
+
_dialogs.dialogWindows.forEach(function (win, k) {
|
|
195
|
+
!_store.TOP_LEVEL_DIALOG_LAYER.includes(k) && win.setAlwaysOnTop(true, 'pop-up-menu');
|
|
196
|
+
});
|
|
197
|
+
});
|
|
198
|
+
window.runtime.browserWindow.addListener('leave-full-screen', function () {
|
|
199
|
+
_dialogs.dialogWindows.forEach(function (win, k) {
|
|
200
|
+
![].concat((0, _toConsumableArray2["default"])(_store.TOP_LEVEL_DIALOG_LAYER), (0, _toConsumableArray2["default"])(_store.HIGH_LEVEL_DIALOG_LAYER)).includes(k) && win.setAlwaysOnTop(true, 'normal');
|
|
201
|
+
});
|
|
202
|
+
});
|
|
147
203
|
return {
|
|
148
204
|
store: store,
|
|
149
205
|
browserWindow: windowRef.current
|
|
@@ -1,14 +1,40 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { UIModule } from '../../base';
|
|
3
|
-
import {
|
|
3
|
+
import { FcrUIDeviceProvider } from '../../providers/device-provider';
|
|
4
|
+
import { FcrStreamControl, FcrUserControl } from 'fcr-core';
|
|
5
|
+
import { FcrChatRoomControl } from 'fcr-core/lib/room-control/chatroom-control/type';
|
|
6
|
+
import { FcrUIEventProvider } from '../../providers/event-provider';
|
|
7
|
+
import { FcrUICurrentRoomControlProvider, FcrUIMainRoomControlProvider, FcrUIWaitingRoomControlProvider } from '../../providers/room-provider';
|
|
8
|
+
import { FcrUISharedLayoutDataSource } from '../../shared-data-source/layout-data';
|
|
9
|
+
import { FcrUILocalVideoRenderProvider, FcrUIRemoteVideoRenderProvider } from '../../providers/renderer-provider';
|
|
10
|
+
import { FcrUIPrivilegeProvider } from '../../providers/privilege-provider';
|
|
11
|
+
import { FcrUIDialogProvider } from '../../providers/dialog-provider';
|
|
12
|
+
import { FcrUIPhoneAudioConnectorProvider } from '../../providers/phone-audio-provider';
|
|
13
|
+
import { FcrUIAction } from '../../utilities/constant';
|
|
14
|
+
import { CurrentShareScreenTypes } from '../share-screen/types';
|
|
4
15
|
export declare class DialogUIModule extends UIModule {
|
|
5
16
|
private _dialogs;
|
|
6
|
-
private _store
|
|
7
|
-
|
|
8
|
-
|
|
17
|
+
private _store?;
|
|
18
|
+
deviceProvider?: FcrUIDeviceProvider;
|
|
19
|
+
streamControl?: FcrStreamControl;
|
|
20
|
+
eventProvider?: FcrUIEventProvider;
|
|
21
|
+
userControl?: FcrUserControl;
|
|
22
|
+
remoteVideoRenderProvider?: FcrUIRemoteVideoRenderProvider;
|
|
23
|
+
localVideoRenderProvider?: FcrUILocalVideoRenderProvider;
|
|
24
|
+
privilegeProvider?: FcrUIPrivilegeProvider;
|
|
25
|
+
chatRoomControl?: FcrChatRoomControl;
|
|
26
|
+
currentRoomControlProvider?: FcrUICurrentRoomControlProvider;
|
|
27
|
+
sharedLayoutDataSource?: FcrUISharedLayoutDataSource;
|
|
28
|
+
dialogProvider?: FcrUIDialogProvider;
|
|
29
|
+
phoneAudioConnectorProvider?: FcrUIPhoneAudioConnectorProvider;
|
|
30
|
+
mainRoomControlProvider?: FcrUIMainRoomControlProvider;
|
|
31
|
+
waitingRoomControlProvider?: FcrUIWaitingRoomControlProvider;
|
|
32
|
+
onNodeWillActive(): void;
|
|
33
|
+
onNodeWillInactive(): void;
|
|
9
34
|
getComponent(): import("react/jsx-runtime").JSX.Element;
|
|
10
35
|
addDialogs(dialogs: {
|
|
11
36
|
key: string;
|
|
12
37
|
component: (params?: any) => React.JSX.Element;
|
|
13
38
|
}[]): void;
|
|
39
|
+
onUiEvent(event: FcrUIAction, payload: CurrentShareScreenTypes): void;
|
|
14
40
|
}
|