fcr-ui-scene 3.6.2 → 3.6.4
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.js +0 -3
- package/lib/creator.d.ts +1 -0
- package/lib/creator.js +64 -50
- package/lib/electron/app.js +33 -14
- package/lib/electron/bootstrap-dev.js +5 -3
- package/lib/electron/bootstrap-sdk.js +4 -10
- package/lib/electron/exit-codes.d.ts +14 -0
- package/lib/electron/exit-codes.js +22 -0
- package/lib/electron/injections.d.ts +3 -2
- package/lib/electron/injections.js +122 -124
- package/lib/electron/ipc/ipc.js +0 -1
- package/lib/electron/main.js +57 -12
- package/lib/electron/tools.js +0 -4
- package/lib/electron/window.js +1 -7
- package/lib/fragments/annotation/index.d.ts +1 -0
- package/lib/fragments/annotation/index.js +54 -40
- package/lib/fragments/annotation/store.d.ts +7 -2
- package/lib/fragments/annotation/store.js +181 -102
- package/lib/fragments/annotation/view.d.ts +1 -0
- package/lib/fragments/annotation/view.js +10 -2
- package/lib/modules/action-bar/components/apps/app-item/index.js +0 -2
- package/lib/modules/action-bar/components/apps/app-list.js +2 -5
- package/lib/modules/action-bar/components/apps/useAppItemOptions.js +0 -3
- package/lib/modules/action-bar/components/apps/useWidgetList.js +2 -1
- package/lib/modules/action-bar/components/collapse/index.js +0 -4
- package/lib/modules/action-bar/components/item/index.js +0 -2
- package/lib/modules/action-bar/components/leave/index.js +0 -2
- package/lib/modules/action-bar/components/more/poppover-content.js +0 -4
- package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.js +2 -1
- package/lib/modules/action-bar/components/notification-bar/index.js +0 -2
- package/lib/modules/action-bar/components/screen-share/index.js +0 -1
- package/lib/modules/action-bar/components/screen-share/submenu.js +0 -3
- package/lib/modules/action-bar/components/trigger-output-language/index.js +11 -14
- package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +8 -11
- package/lib/modules/action-bar/index.css +4 -0
- package/lib/modules/action-bar/index.js +1 -2
- package/lib/modules/action-bar/store.d.ts +1 -7
- package/lib/modules/action-bar/store.js +67 -118
- package/lib/modules/annotation/board-cursor.css +76 -0
- package/lib/modules/annotation/components/control-bar/index.js +43 -2
- package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +2 -1
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +5 -2
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -0
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +11 -5
- package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +0 -2
- package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +1 -0
- package/lib/modules/annotation/components/toolbar/components/item/item.js +3 -2
- package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +1 -0
- package/lib/modules/annotation/components/toolbar/store.js +0 -1
- package/lib/modules/annotation/index.d.ts +4 -0
- package/lib/modules/annotation/index.js +3 -1
- package/lib/modules/annotation/store.d.ts +15 -5
- package/lib/modules/annotation/store.js +222 -205
- package/lib/modules/annotation/style.css +3 -3
- package/lib/modules/annotation/view.d.ts +1 -0
- package/lib/modules/annotation/view.js +26 -9
- package/lib/modules/audio-stream/index.js +0 -4
- package/lib/modules/chat/chat-room-store.js +6 -10
- package/lib/modules/chat/components/chat-bar/index.js +0 -2
- package/lib/modules/chat/components/chat-select/index.js +0 -1
- package/lib/modules/chat/components/chat-select/select-item/index.js +2 -5
- package/lib/modules/chat/components/message-list/index.js +1 -3
- package/lib/modules/chat/components/message-list/message-item/index.js +11 -13
- package/lib/modules/chat/index.js +13 -14
- package/lib/modules/chat/store.js +0 -1
- package/lib/modules/chat/view.js +11 -15
- package/lib/modules/components/annotation-menu/index.js +0 -3
- package/lib/modules/components/device-control/components/audio-menu/index.js +2 -1
- package/lib/modules/components/device-control/components/video-menu/index.js +2 -1
- package/lib/modules/components/device-control/store.js +0 -1
- package/lib/modules/components/leave-meeting/components/assign-host.js +4 -5
- package/lib/modules/components/leave-meeting/store.js +11 -12
- package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +0 -1
- package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +10 -4
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -2
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +4 -4
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -2
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +3 -4
- package/lib/modules/components/member-window/components/member-actions/components/layout/index.js +1 -2
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +0 -3
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +7 -34
- package/lib/modules/components/member-window/components/member-actions/components/share-status.js +11 -3
- package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +0 -1
- package/lib/modules/components/member-window/components/member-actions/components/user-info.js +8 -13
- package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +0 -1
- package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +0 -2
- package/lib/modules/components/member-window/components/member-actions/index.js +1 -33
- package/lib/modules/components/member-window/components/member-actions/provider.js +1 -2
- package/lib/modules/components/member-window/components/member-actions/store.d.ts +38 -1
- package/lib/modules/components/member-window/components/member-actions/store.js +120 -13
- package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +3 -0
- package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +16 -3
- package/lib/modules/components/member-window/components/video-player/index.d.ts +2 -0
- package/lib/modules/components/member-window/components/video-player/index.js +3 -3
- package/lib/modules/components/member-window/index.css +37 -0
- package/lib/modules/components/member-window/index.js +1 -0
- package/lib/modules/components/security-menu/index.js +1 -4
- package/lib/modules/components/tab-frame/index.js +0 -4
- package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +2 -1
- package/lib/modules/connection-gateway/components/phone/index.js +5 -4
- package/lib/modules/connection-gateway/index.js +1 -2
- package/lib/modules/connection-gateway/store.js +23 -26
- package/lib/modules/control-bar/components/more-actions/index.js +0 -3
- package/lib/modules/control-bar/index.d.ts +0 -4
- package/lib/modules/control-bar/index.js +1 -34
- package/lib/modules/control-bar/store.d.ts +5 -6
- package/lib/modules/control-bar/store.js +70 -104
- package/lib/modules/control-bar/view.js +53 -13
- package/lib/modules/device-pretest/settings/beauty.js +1 -2
- package/lib/modules/device-pretest/settings/virtual-background-setting.js +2 -1
- package/lib/modules/device-pretest/store.js +2 -4
- package/lib/modules/dialog/components/control-bar/index.d.ts +0 -2
- package/lib/modules/dialog/components/control-bar/index.js +4 -6
- package/lib/modules/dialog/components/dialog-container/component/body.js +0 -2
- package/lib/modules/dialog/components/dialog-container/index.js +1 -2
- package/lib/modules/dialog/components/host-area-container/index.js +0 -3
- package/lib/modules/dialog/components/pre-setting-container/component/body.js +0 -2
- package/lib/modules/dialog/components/pre-setting-container/index.js +1 -2
- package/lib/modules/dialog/components/system-preference/index.js +2 -5
- package/lib/modules/dialog/components/video-window/index.js +0 -2
- package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -1
- package/lib/modules/dialog/hooks/useElectron.js +3 -4
- package/lib/modules/dialog/index.d.ts +0 -3
- package/lib/modules/dialog/index.js +2 -28
- package/lib/modules/dialog/store.d.ts +6 -8
- package/lib/modules/dialog/store.js +22 -60
- package/lib/modules/dialog/view.js +2 -1
- package/lib/modules/event-confirm/components/window/index.js +0 -2
- package/lib/modules/event-confirm/index.js +1 -2
- package/lib/modules/event-confirm/store.js +4 -7
- package/lib/modules/event-confirm/view.js +2 -1
- package/lib/modules/event-sound/index.js +1 -2
- package/lib/modules/event-sound/sound-effect-player.js +2 -2
- package/lib/modules/event-toast/index.js +1 -2
- package/lib/modules/event-toast/store.js +0 -2
- package/lib/modules/event-toast/view.js +2 -1
- package/lib/modules/interpreter/index.js +1 -2
- package/lib/modules/interpreter/interpreter-list/index.js +3 -4
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +2 -5
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +0 -2
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +0 -4
- package/lib/modules/interpreter/store.js +5 -10
- package/lib/modules/interpreter/utils.js +15 -14
- package/lib/modules/invite/components/pstn-invite.js +22 -23
- package/lib/modules/invite/components/voip-invite.js +7 -7
- package/lib/modules/invite/enums.js +1 -0
- package/lib/modules/invite/index.js +1 -2
- package/lib/modules/invite/store.js +46 -45
- package/lib/modules/layout/components/CommonVideoRenderer.js +7 -3
- package/lib/modules/layout/components/Gallery.js +5 -3
- package/lib/modules/layout/components/index.js +0 -1
- package/lib/modules/layout/index.js +1 -2
- package/lib/modules/layout/store.d.ts +3 -0
- package/lib/modules/layout/store.js +38 -14
- package/lib/modules/layout/type.d.ts +7 -0
- package/lib/modules/layout/type.js +9 -0
- package/lib/modules/live-streaming/index.dev.js +6 -6
- package/lib/modules/live-streaming/index.js +1 -2
- package/lib/modules/live-streaming/store.js +19 -19
- package/lib/modules/notification/index.js +1 -2
- package/lib/modules/notification/interpreter-status/index.js +2 -1
- package/lib/modules/notification/view.js +1 -2
- package/lib/modules/offscreen-pulling/index.js +0 -1
- package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.js +1 -4
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +0 -2
- package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +0 -2
- package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +1 -4
- package/lib/modules/participant/components/participants/components/participants/index.js +0 -2
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.js +0 -1
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +0 -2
- package/lib/modules/participant/index.js +1 -4
- package/lib/modules/participant/member-list-data-source.js +0 -3
- package/lib/modules/participant/store.js +140 -114
- package/lib/modules/pc-audio-connect/index.js +1 -2
- package/lib/modules/pc-audio-connect/store.js +9 -10
- package/lib/modules/phone-audio-connect/components/callinfo/index.js +2 -1
- package/lib/modules/phone-audio-connect/index.js +1 -2
- package/lib/modules/phone-audio-connect/store.js +0 -3
- package/lib/modules/phone-audio-connect/view.js +5 -4
- package/lib/modules/setting/audio-settings/audio-settings.js +1 -4
- package/lib/modules/setting/general-settings/general-settings.js +1 -2
- package/lib/modules/setting/index.d.ts +2 -0
- package/lib/modules/setting/index.js +4 -5
- package/lib/modules/setting/minutes-settings/minutes-settings.js +1 -2
- package/lib/modules/setting/state/index.js +0 -4
- package/lib/modules/setting/storage-settings/storage-settings.js +4 -4
- package/lib/modules/setting/store.d.ts +8 -10
- package/lib/modules/setting/store.js +33 -35
- package/lib/modules/setting/translate-settings/translate-settings.js +1 -1
- package/lib/modules/setting/video-settings/video-settings.js +1 -2
- package/lib/modules/setting/view.js +1 -2
- package/lib/modules/share-screen/components/selection/index.js +16 -9
- package/lib/modules/share-screen/index.d.ts +2 -0
- package/lib/modules/share-screen/index.js +3 -3
- package/lib/modules/share-screen/store.d.ts +12 -2
- package/lib/modules/share-screen/store.js +149 -136
- package/lib/modules/state-bar/index.css +8 -6
- package/lib/modules/state-bar/index.d.ts +2 -0
- package/lib/modules/state-bar/index.js +3 -3
- package/lib/modules/state-bar/layout-config.d.ts +1 -0
- package/lib/modules/state-bar/layout-config.js +17 -6
- package/lib/modules/state-bar/live-streaming-state.js +0 -3
- package/lib/modules/state-bar/store.d.ts +5 -1
- package/lib/modules/state-bar/store.js +8 -2
- package/lib/modules/state-bar/view.js +9 -5
- package/lib/modules/video-window/components/members/index.js +2 -1
- package/lib/modules/video-window/components/topControl/index.js +0 -3
- package/lib/modules/video-window/index.js +1 -2
- package/lib/modules/video-window/store.js +0 -4
- package/lib/modules/waiting-room-layout/index.js +1 -2
- package/lib/modules/whiteboard/components/control-bar/store.js +2 -1
- package/lib/modules/whiteboard/components/switch-theme/index.js +0 -2
- package/lib/modules/whiteboard/components/switch-theme/item.js +2 -1
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +2 -1
- package/lib/modules/whiteboard/components/toolbar/components/color-picker/index.js +2 -1
- package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +1 -4
- package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +2 -3
- package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +0 -2
- package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +1 -2
- package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +1 -3
- package/lib/modules/whiteboard/components/toolbar/hooks/index.js +2 -4
- package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -3
- package/lib/modules/whiteboard/components/toolbar/store.js +64 -37
- package/lib/modules/whiteboard/index.js +5 -8
- package/lib/modules/whiteboard/style.css +12 -4
- package/lib/modules/whiteboard/view.js +10 -2
- package/lib/modules/widget/index.js +1 -2
- package/lib/modules/widget/web-widget.js +1 -1
- package/lib/plugins/browser-runtime-plugin.js +1 -1
- package/lib/plugins/module-dev-plugin.js +13 -13
- package/lib/providers/ability-provider.d.ts +12 -1
- package/lib/providers/ability-provider.js +8 -1
- package/lib/providers/annotation-provider.d.ts +63 -12
- package/lib/providers/annotation-provider.js +52 -46
- package/lib/providers/device-privilege-provider.js +81 -83
- package/lib/providers/device-provider.d.ts +3 -3
- package/lib/providers/device-provider.js +201 -204
- package/lib/providers/device-stream-provider.js +24 -27
- package/lib/providers/event-provider.d.ts +3 -3
- package/lib/providers/event-provider.js +0 -2
- package/lib/providers/interpreter-provider.js +195 -197
- package/lib/providers/message-provider.js +0 -2
- package/lib/providers/phone-audio-provider.js +17 -19
- package/lib/providers/privilege-provider.js +53 -58
- package/lib/providers/renderer-provider.d.ts +3 -1
- package/lib/providers/renderer-provider.js +18 -4
- package/lib/providers/room-provider.js +31 -33
- package/lib/providers/screen-share-provider.d.ts +1 -0
- package/lib/providers/screen-share-provider.js +97 -103
- package/lib/providers/sharing-provider.d.ts +5 -1
- package/lib/providers/sharing-provider.js +17 -1
- package/lib/providers/user-setting-storage-provider.d.ts +20 -0
- package/lib/providers/user-setting-storage-provider.js +72 -0
- package/lib/providers/widget-provider.js +0 -1
- package/lib/scenes/main-scene.js +13 -16
- package/lib/scenes/waiting-scene.js +4 -4
- package/lib/shared-data-source/chat-data.js +0 -2
- package/lib/shared-data-source/config.d.ts +1 -5
- package/lib/shared-data-source/config.js +11 -81
- package/lib/shared-data-source/interpreter.js +0 -2
- package/lib/shared-data-source/layout-data.js +1 -4
- package/lib/shared-data-source/member-data.js +0 -4
- package/lib/shared-data-source/pin-data.js +0 -1
- package/lib/shared-data-source/screen-share-data.d.ts +6 -2
- package/lib/shared-data-source/screen-share-data.js +2 -2
- package/lib/shared-data-source/security-data.js +0 -1
- package/lib/shared-data-source/setting.d.ts +13 -13
- package/lib/shared-data-source/setting.js +10 -8
- package/lib/shared-data-source/video-window.d.ts +2 -1
- package/lib/shared-data-source/video-window.js +82 -66
- package/lib/shared-data-source/waiting-room.js +0 -2
- package/lib/translations/enUS.d.ts +8 -0
- package/lib/translations/enUS.js +9 -1
- package/lib/translations/zhCN.d.ts +8 -0
- package/lib/translations/zhCN.js +11 -3
- package/lib/type.d.ts +2 -1
- package/lib/type.js +14 -0
- package/lib/ui-scene.js +18 -14
- package/lib/utilities/constant.d.ts +2 -1
- package/lib/utilities/constant.js +8 -0
- package/lib/utilities/copyText.js +12 -12
- package/lib/utilities/hooks.js +1 -2
- package/lib/utilities/logger.js +0 -1
- package/lib/utilities/parameters.js +2 -2
- package/lib/utilities/privilege.js +0 -3
- package/lib/utilities/renderer-event.js +0 -2
- package/lib/utilities/setting-config-storage.d.ts +7 -6
- package/lib/utilities/setting-config-storage.js +55 -41
- package/lib/utilities/tools.d.ts +1 -0
- package/lib/utilities/tools.js +9 -12
- package/lib/waiting-room-control-manager.js +26 -28
- package/package.json +8 -6
- package/dist/132.js +0 -2
- package/dist/132.js.LICENSE.txt +0 -311
- package/dist/317.js +0 -2
- package/dist/317.js.LICENSE.txt +0 -20
- package/dist/651.js +0 -2
- package/dist/651.js.LICENSE.txt +0 -1
- package/dist/689343b64b60bfb7ffff.png +0 -0
- package/dist/73.js +0 -1
- package/dist/885f9369ea05a8ac0e56.png +0 -0
- package/dist/90f383876a6e93e7c7ca.png +0 -0
- package/dist/9b37584780995fc5df8c.gif +0 -0
- package/dist/annotation.e5cbd3a70b6d42361872.css +0 -1274
- package/dist/annotation.html +0 -1
- package/dist/annotation.js +0 -2
- package/dist/annotation.js.LICENSE.txt +0 -252
- package/dist/assets/browser/images/default1.jpg +0 -0
- package/dist/assets/browser/images/default2.jpg +0 -0
- package/dist/assets/browser/images/default3.jpg +0 -0
- package/dist/assets/browser/images/default4.jpg +0 -0
- package/dist/assets/browser/images/default5.jpg +0 -0
- package/dist/assets/browser/images/default6.jpg +0 -0
- package/dist/assets/browser/images/default7.jpg +0 -0
- package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
- package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
- package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
- package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
- package/dist/assets/browser/videos/default8.mp4 +0 -0
- package/dist/assets/browser/videos/default9.mp4 +0 -0
- package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
- package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
- package/dist/assets/electron/images/default1.jpg +0 -0
- package/dist/assets/electron/images/default2.jpg +0 -0
- package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
- package/dist/assets/electron/videos/default8.mp4 +0 -0
- package/dist/assets/fcr_chat_reddot.svg +0 -5
- package/dist/assets/fcr_defaultpage.png +0 -0
- package/dist/assets/fcr_grid_big.svg +0 -3
- package/dist/assets/fcr_leave2.svg +0 -58
- package/dist/assets/fcr_listontop_big.svg +0 -3
- package/dist/assets/full-screen-error-boundary-img.png +0 -0
- package/dist/assets/leave-meeting.png +0 -0
- package/dist/assets/loading.gif +0 -0
- package/dist/assets/login_confirm.png +0 -0
- package/dist/assets/pretest.mp3 +0 -0
- package/dist/assets/state-bar-logo.png +0 -0
- package/dist/assets/step-gradient.svg +0 -10
- package/dist/b74b002687a3a3346bec.png +0 -0
- package/dist/b94869094481702f949b.png +0 -0
- package/dist/ebeace75fd46b90d890e.png +0 -0
- package/dist/electron/app.js +0 -194
- package/dist/electron/bootstrap-dev.js +0 -46
- package/dist/electron/bootstrap-sdk.js +0 -211
- package/dist/electron/default-options.js +0 -25
- package/dist/electron/env.js +0 -13
- package/dist/electron/index.js +0 -20
- package/dist/electron/injections.js +0 -903
- package/dist/electron/ipc/ipc.js +0 -141
- package/dist/electron/ipc/type.js +0 -19
- package/dist/electron/logger.js +0 -65
- package/dist/electron/main.js +0 -94
- package/dist/electron/plugins/devtool-shortcut.js +0 -33
- package/dist/electron/plugins/meeting-state.js +0 -39
- package/dist/electron/plugins/screenshot.js +0 -54
- package/dist/electron/preload.js +0 -108
- package/dist/electron/tools.js +0 -66
- package/dist/electron/window.js +0 -123
- package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
- package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
- package/dist/extensions/ai-denoiser/denoiser-wasm.js +0 -1
- package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
- package/dist/fad688b9135b15d6c405.png +0 -0
- package/dist/index.html +0 -224
- package/dist/main.393a2a91ab7fc05ffce6.css +0 -15403
- package/dist/main.js +0 -2
- package/dist/main.js.LICENSE.txt +0 -272
- package/dist/worker-entry.worker.js.LICENSE.txt +0 -13
|
@@ -40,6 +40,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
40
40
|
});
|
|
41
41
|
exports.FcrUIScreenShareProviderImpl = void 0;
|
|
42
42
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
43
|
+
require("core-js/modules/es.array.concat.js");
|
|
43
44
|
require("core-js/modules/es.array.find.js");
|
|
44
45
|
require("core-js/modules/es.array.includes.js");
|
|
45
46
|
require("core-js/modules/es.array.push.js");
|
|
@@ -48,10 +49,7 @@ require("core-js/modules/es.date.to-json.js");
|
|
|
48
49
|
require("core-js/modules/es.json.stringify.js");
|
|
49
50
|
require("core-js/modules/es.object.to-string.js");
|
|
50
51
|
require("core-js/modules/es.promise.js");
|
|
51
|
-
require("core-js/modules/es.promise.finally.js");
|
|
52
52
|
require("core-js/modules/es.string.includes.js");
|
|
53
|
-
require("core-js/modules/esnext.async-iterator.find.js");
|
|
54
|
-
require("core-js/modules/esnext.async-iterator.some.js");
|
|
55
53
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
56
54
|
require("core-js/modules/esnext.iterator.find.js");
|
|
57
55
|
require("core-js/modules/esnext.iterator.some.js");
|
|
@@ -76,13 +74,13 @@ var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
|
76
74
|
var _constant = require("../utilities/constant");
|
|
77
75
|
var _lodash = require("lodash");
|
|
78
76
|
var _FcrUIScreenShareProviderImpl;
|
|
79
|
-
var _initProto, _handleScreenCaptureStateUpdatedDecs, _handleShareStopWithAudioDecs, _handleStreamUpdateDecs, _handleStreamPublicDecs, _releaseDecs, _startShareScreenDecs, _handleShareStartWithAudioDecs, _ref;
|
|
77
|
+
var _initProto, _handleScreenCaptureStateUpdatedDecs, _handleShareStopWithAudioDecs, _replaceScreenShareDecs, _handleStreamUpdateDecs, _handleStreamPublicDecs, _releaseDecs, _startShareScreenDecs, _handleShareStartWithAudioDecs, _ref;
|
|
80
78
|
function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
|
|
81
79
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
82
80
|
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
83
81
|
function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
|
|
84
82
|
function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
|
|
85
|
-
_ref = (_handleScreenCaptureStateUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleShareStopWithAudioDecs = [_mobx.action, _mobx.action.bound], _handleStreamUpdateDecs = [_mobx.action, _mobx.action.bound], _handleStreamPublicDecs = [_mobx.action, _mobx.action.bound], _releaseDecs = [_mobx.action, _mobx.action.bound], _startShareScreenDecs = [_mobx.action, _mobx.action.bound], _handleShareStartWithAudioDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
83
|
+
_ref = (_handleScreenCaptureStateUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleShareStopWithAudioDecs = [_mobx.action, _mobx.action.bound], _replaceScreenShareDecs = [_mobx.action, _mobx.action.bound], _handleStreamUpdateDecs = [_mobx.action, _mobx.action.bound], _handleStreamPublicDecs = [_mobx.action, _mobx.action.bound], _releaseDecs = [_mobx.action, _mobx.action.bound], _startShareScreenDecs = [_mobx.action, _mobx.action.bound], _handleShareStartWithAudioDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
86
84
|
var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__PURE__*/function () {
|
|
87
85
|
function FcrUIScreenShareProviderImpl(_deviceProvider, _eventProvider, _roomProvider, _sharingProvider, _sharedScreenShareSharedDataSource, _sharedMemberDataSource) {
|
|
88
86
|
var _this = this,
|
|
@@ -110,6 +108,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
110
108
|
(0, _defineProperty2["default"])(this, "_screenCaptureObserver", {
|
|
111
109
|
onScreenCaptureStateUpdated: (0, _env.isElectron)() ? this._handleScreenCaptureStateUpdated : this._handleWebScreenCaptureStateUpdated
|
|
112
110
|
});
|
|
111
|
+
(0, _defineProperty2["default"])(this, "_hasStop", false);
|
|
113
112
|
this._deviceProvider = _deviceProvider;
|
|
114
113
|
this._eventProvider = _eventProvider;
|
|
115
114
|
this._roomProvider = _roomProvider;
|
|
@@ -149,11 +148,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
149
148
|
}, {
|
|
150
149
|
key: "stop",
|
|
151
150
|
value: function stop() {
|
|
152
|
-
this.
|
|
151
|
+
if (!this._hasStop) {
|
|
152
|
+
this._observable.notifyObservers('onScreenCaptureStopped');
|
|
153
|
+
this._hasStop = true;
|
|
154
|
+
}
|
|
153
155
|
}
|
|
154
156
|
}, {
|
|
155
157
|
key: "bootstrap",
|
|
156
158
|
value: function bootstrap() {
|
|
159
|
+
this._hasStop = false;
|
|
157
160
|
this._observable.notifyObservers('onScreenCaptureStarted');
|
|
158
161
|
}
|
|
159
162
|
}, {
|
|
@@ -161,33 +164,32 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
161
164
|
value: function () {
|
|
162
165
|
var _handleWebScreenCaptureStateUpdated2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(sourceId, state) {
|
|
163
166
|
var streamId, _this$screenTrack;
|
|
164
|
-
return _regenerator["default"].wrap(function
|
|
167
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
165
168
|
while (1) switch (_context.prev = _context.next) {
|
|
166
169
|
case 0:
|
|
167
170
|
this._sharedScreenShareSharedDataSource.setScreenSharingState(state);
|
|
168
171
|
if (!(state === _fcrCore.FcrMediaSourceState.OPEN)) {
|
|
169
|
-
_context.next =
|
|
172
|
+
_context.next = 2;
|
|
170
173
|
break;
|
|
171
174
|
}
|
|
172
|
-
|
|
173
|
-
_context.next = 5;
|
|
175
|
+
_context.next = 1;
|
|
174
176
|
return this.createScreenShareWithSelectionId(this.currentShareId, this.currentSelectionBounds);
|
|
175
|
-
case
|
|
177
|
+
case 1:
|
|
176
178
|
streamId = _context.sent;
|
|
177
179
|
if (streamId) {
|
|
178
180
|
this._sharedScreenShareSharedDataSource.setCurrentShareStreamId(streamId);
|
|
179
181
|
}
|
|
180
|
-
case
|
|
182
|
+
case 2:
|
|
181
183
|
if (state === _fcrCore.FcrMediaSourceState.CLOSE) {
|
|
182
|
-
this.setShareLock(false);
|
|
183
184
|
(_this$screenTrack = this.screenTrack) === null || _this$screenTrack === void 0 || _this$screenTrack.removeObserver(this._screenCaptureObserver);
|
|
184
185
|
this.isReplaceScreen ? this._screenTrackStop() : this.stop();
|
|
186
|
+
this.logger.info("[Annotation][web]: _handleScreenCaptureStateUpdated: CLOSE, set replaceScreen to: ".concat(this.isReplaceScreen));
|
|
185
187
|
}
|
|
186
188
|
if (state === _fcrCore.FcrMediaSourceState.ERROR) {
|
|
187
189
|
this.setShareLock(false);
|
|
188
190
|
this._setIsReplaceScreen(false);
|
|
189
191
|
}
|
|
190
|
-
case
|
|
192
|
+
case 3:
|
|
191
193
|
case "end":
|
|
192
194
|
return _context.stop();
|
|
193
195
|
}
|
|
@@ -201,13 +203,14 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
201
203
|
}, {
|
|
202
204
|
key: "_handleScreenCaptureStateUpdated",
|
|
203
205
|
value: function _handleScreenCaptureStateUpdated(sourceId, state) {
|
|
204
|
-
this.logger.info(
|
|
206
|
+
this.logger.info("[handleScreenCaptureStateUpdated]: ".concat(sourceId, " ==== ").concat(state));
|
|
205
207
|
if (state === _fcrCore.FcrMediaSourceState.CLOSE) {
|
|
206
208
|
var _this$screenTrack2;
|
|
207
209
|
this.stopRenderSharePreview(this.screenTrack);
|
|
208
210
|
(_this$screenTrack2 = this.screenTrack) === null || _this$screenTrack2 === void 0 || _this$screenTrack2.removeObserver(this._screenCaptureObserver);
|
|
209
211
|
this.isReplaceScreen ? this._screenTrackStop() : this.stop();
|
|
210
|
-
this._setIsReplaceScreen(false);
|
|
212
|
+
// this._setIsReplaceScreen(false); // 如果是替换的逻辑,暂时不把是否是替换屏幕的值设置为false,改为在结束屏幕共享时重置
|
|
213
|
+
this.logger.info("[Annotation][electron]: _handleScreenCaptureStateUpdated: CLOSE, set replaceScreen to: ".concat(this.isReplaceScreen));
|
|
211
214
|
}
|
|
212
215
|
if (state === _fcrCore.FcrMediaSourceState.ERROR) {
|
|
213
216
|
this.stop();
|
|
@@ -231,27 +234,28 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
231
234
|
key: "replaceScreenShare",
|
|
232
235
|
value: function replaceScreenShare(id, type, withAudio, bounds) {
|
|
233
236
|
var _this2 = this;
|
|
237
|
+
this.logger.info('screen-share-provider: replaceScreenShare start');
|
|
234
238
|
var shareWithAudio = (0, _lodash.isBoolean)(withAudio) ? withAudio : this._sharedScreenShareSharedDataSource.shareWithAudio;
|
|
235
239
|
this.toggleScreenshareWithAudio(shareWithAudio);
|
|
236
240
|
this._sharedScreenShareSharedDataSource.setIsReplaceScreen(true);
|
|
237
241
|
if (this.screenTrack) {
|
|
238
|
-
|
|
242
|
+
this.screenTrack.removeObserver(this._screenCaptureObserver);
|
|
239
243
|
var _observer = {
|
|
240
244
|
onScreenCaptureStateUpdated: function () {
|
|
241
245
|
var _onScreenCaptureStateUpdated = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(sourceId, state) {
|
|
242
246
|
var _this2$screenTrack;
|
|
243
|
-
return _regenerator["default"].wrap(function
|
|
247
|
+
return _regenerator["default"].wrap(function (_context2) {
|
|
244
248
|
while (1) switch (_context2.prev = _context2.next) {
|
|
245
249
|
case 0:
|
|
246
250
|
if (!(state === _fcrCore.FcrMediaSourceState.CLOSE)) {
|
|
247
|
-
_context2.next =
|
|
251
|
+
_context2.next = 2;
|
|
248
252
|
break;
|
|
249
253
|
}
|
|
250
254
|
_this2._observable.notifyObservers('onScreenShareReplaceBegin', id, type, bounds);
|
|
251
255
|
(_this2$screenTrack = _this2.screenTrack) === null || _this2$screenTrack === void 0 || _this2$screenTrack.removeObserver(_observer);
|
|
252
|
-
_context2.next =
|
|
256
|
+
_context2.next = 1;
|
|
253
257
|
return _this2.startShareScreen(id, type, withAudio, true);
|
|
254
|
-
case
|
|
258
|
+
case 1:
|
|
255
259
|
_this2._sharedScreenShareSharedDataSource.setCurrentShareIdInfos(id, type, bounds);
|
|
256
260
|
if (_this2.currentShareStreamId && _this2._streamControl) {
|
|
257
261
|
_this2._streamControl.bindLocalStreams([{
|
|
@@ -260,7 +264,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
260
264
|
videoSourceId: id
|
|
261
265
|
}]);
|
|
262
266
|
}
|
|
263
|
-
case
|
|
267
|
+
case 2:
|
|
264
268
|
case "end":
|
|
265
269
|
return _context2.stop();
|
|
266
270
|
}
|
|
@@ -272,7 +276,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
272
276
|
return onScreenCaptureStateUpdated;
|
|
273
277
|
}()
|
|
274
278
|
};
|
|
275
|
-
|
|
279
|
+
this.screenTrack.addObserver(_observer);
|
|
276
280
|
this._screenTrackStop();
|
|
277
281
|
this.stopRenderSharePreview(this.screenTrack);
|
|
278
282
|
}
|
|
@@ -331,32 +335,28 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
331
335
|
key: "createScreenShareWithSelectionId",
|
|
332
336
|
value: function () {
|
|
333
337
|
var _createScreenShareWithSelectionId = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(videoSourceId, bounds) {
|
|
334
|
-
var _this3 = this;
|
|
335
338
|
var audioSourceId, _this$_sharingControl, streamId;
|
|
336
|
-
return _regenerator["default"].wrap(function
|
|
339
|
+
return _regenerator["default"].wrap(function (_context3) {
|
|
337
340
|
while (1) switch (_context3.prev = _context3.next) {
|
|
338
341
|
case 0:
|
|
339
|
-
this.logger.info(
|
|
340
|
-
this.setShareLock(true);
|
|
342
|
+
this.logger.info("screen-share-provider: createScreenShareWithSelectionId: ".concat(videoSourceId, ", annotation-use-bounds-width: ").concat(bounds.width, ", annotation-use-bounds-height: ").concat(bounds.height));
|
|
341
343
|
audioSourceId = this.loopbackAudioSourceId;
|
|
342
344
|
if (!this._sharingControl) {
|
|
343
|
-
_context3.next =
|
|
345
|
+
_context3.next = 2;
|
|
344
346
|
break;
|
|
345
347
|
}
|
|
346
|
-
_context3.next =
|
|
348
|
+
_context3.next = 1;
|
|
347
349
|
return (_this$_sharingControl = this._sharingControl) === null || _this$_sharingControl === void 0 ? void 0 : _this$_sharingControl.startScreenSharing({
|
|
348
350
|
streamType: _imports.AgoraRteMediaStreamType.BOTH,
|
|
349
351
|
videoSourceId: videoSourceId,
|
|
350
352
|
audioSourceId: audioSourceId
|
|
351
|
-
}, bounds)
|
|
352
|
-
|
|
353
|
-
});
|
|
354
|
-
case 6:
|
|
353
|
+
}, bounds);
|
|
354
|
+
case 1:
|
|
355
355
|
streamId = _context3.sent;
|
|
356
356
|
return _context3.abrupt("return", Promise.resolve(streamId));
|
|
357
|
-
case
|
|
357
|
+
case 2:
|
|
358
358
|
return _context3.abrupt("return", Promise.reject());
|
|
359
|
-
case
|
|
359
|
+
case 3:
|
|
360
360
|
case "end":
|
|
361
361
|
return _context3.stop();
|
|
362
362
|
}
|
|
@@ -370,10 +370,10 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
370
370
|
}, {
|
|
371
371
|
key: "_isStoppedFor",
|
|
372
372
|
value: function _isStoppedFor(events, reason) {
|
|
373
|
-
var
|
|
373
|
+
var _this3 = this;
|
|
374
374
|
return events && events.find(function (event) {
|
|
375
375
|
var _event$cause;
|
|
376
|
-
return ((_event$cause = event.cause) === null || _event$cause === void 0 || (_event$cause = _event$cause.data) === null || _event$cause === void 0 ? void 0 : _event$cause.reason) === reason && event.modifiedStream.owner.userId ===
|
|
376
|
+
return ((_event$cause = event.cause) === null || _event$cause === void 0 || (_event$cause = _event$cause.data) === null || _event$cause === void 0 ? void 0 : _event$cause.reason) === reason && event.modifiedStream.owner.userId === _this3.localUserId;
|
|
377
377
|
});
|
|
378
378
|
}
|
|
379
379
|
}, {
|
|
@@ -390,9 +390,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
390
390
|
key: "_syncShareStreamState",
|
|
391
391
|
value: function _syncShareStreamState() {
|
|
392
392
|
var _this$_streamControl3,
|
|
393
|
-
|
|
393
|
+
_this4 = this;
|
|
394
394
|
var currentShareStreamId = this.currentShareStreamId || ((_this$_streamControl3 = this._streamControl) === null || _this$_streamControl3 === void 0 || (_this$_streamControl3 = _this$_streamControl3.getStreamList().find(function (stream) {
|
|
395
|
-
return stream.videoSourceType === _type.AgoraRteVideoSourceType.SCREEN && stream.owner.userId ===
|
|
395
|
+
return stream.videoSourceType === _type.AgoraRteVideoSourceType.SCREEN && stream.owner.userId === _this4.localUserId;
|
|
396
396
|
})) === null || _this$_streamControl3 === void 0 ? void 0 : _this$_streamControl3.streamId);
|
|
397
397
|
if (this._sharedScreenShareSharedDataSource.screenSharingState !== _fcrCore.FcrMediaSourceState.OPEN && currentShareStreamId) {
|
|
398
398
|
this.stop();
|
|
@@ -401,7 +401,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
401
401
|
}, {
|
|
402
402
|
key: "_handleStreamUpdate",
|
|
403
403
|
value: function _handleStreamUpdate(process, events) {
|
|
404
|
-
var
|
|
404
|
+
var _this5 = this;
|
|
405
405
|
this._handleStreamPublic();
|
|
406
406
|
var isClosedByOther = this._isStoppedFor(events, _types.FcrBoardInactiveReason.CLOSE);
|
|
407
407
|
var isSeizedByOther = this._isStoppedFor(events, _types.FcrBoardInactiveReason.SEIZE);
|
|
@@ -418,11 +418,13 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
418
418
|
});
|
|
419
419
|
switch (process) {
|
|
420
420
|
case 'add':
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
421
|
+
// 抢占流添加时,不设置抢占流状态,因为抢占发生时,会触发 remove 事件,此时判断 reason===seize 的结果设置抢占流状态
|
|
422
|
+
// const newsStreamsHaveScreenShare = events.some(
|
|
423
|
+
// (event) => event.modifiedStream.videoSourceType === AgoraRteVideoSourceType.SCREEN,
|
|
424
|
+
// );
|
|
425
|
+
// const isSeizeStreamAdd =
|
|
426
|
+
// newsStreamsHaveScreenShare && this._sharedScreenShareSharedDataSource.isSharingScreen;
|
|
427
|
+
// this._sharedScreenShareSharedDataSource.setIsSeizeStream(isSeizeStreamAdd);
|
|
426
428
|
break;
|
|
427
429
|
case 'remove':
|
|
428
430
|
var isSeizeStreamRemove = events.some(function (event) {
|
|
@@ -430,14 +432,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
430
432
|
return event.modifiedStream.videoSourceType === _type.AgoraRteVideoSourceType.SCREEN && ((_event$cause2 = event.cause) === null || _event$cause2 === void 0 || (_event$cause2 = _event$cause2.data) === null || _event$cause2 === void 0 ? void 0 : _event$cause2.reason) === _types.FcrBoardInactiveReason.SEIZE && ((_event$operatorUser = event.operatorUser) === null || _event$operatorUser === void 0 ? void 0 : _event$operatorUser.userId) !== event.modifiedStream.owner.userId;
|
|
431
433
|
});
|
|
432
434
|
this._sharedScreenShareSharedDataSource.setIsSeizeStream(isSeizeStreamRemove);
|
|
433
|
-
this.logger.info('
|
|
435
|
+
this.logger.info('stream update remove', isSeizeStreamRemove);
|
|
434
436
|
if (events.some(function (event) {
|
|
435
|
-
return event.modifiedStream.videoSourceType === _type.AgoraRteVideoSourceType.SCREEN && event.modifiedStream.owner.userId ===
|
|
437
|
+
return event.modifiedStream.videoSourceType === _type.AgoraRteVideoSourceType.SCREEN && event.modifiedStream.owner.userId === _this5.localUserId;
|
|
436
438
|
})) {
|
|
437
439
|
if (!(0, _env.isElectron)() && this.isReplaceScreen) {
|
|
440
|
+
// web下的替换流不需要停止采集
|
|
438
441
|
this._setIsReplaceScreen(false);
|
|
439
442
|
return;
|
|
440
|
-
}
|
|
443
|
+
}
|
|
441
444
|
this.logger.info('screen-share-provider: current user stream remove');
|
|
442
445
|
this._screenTrackStop();
|
|
443
446
|
}
|
|
@@ -517,70 +520,71 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
517
520
|
key: "startShareScreen",
|
|
518
521
|
value: function () {
|
|
519
522
|
var _startShareScreen = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(id, type, withAudio, isReplace) {
|
|
520
|
-
var _this$
|
|
521
|
-
return _regenerator["default"].wrap(function
|
|
523
|
+
var _this$screenTrack3, _this$screenTrack4, streamId, screenTrack, _t, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
524
|
+
return _regenerator["default"].wrap(function (_context4) {
|
|
522
525
|
while (1) switch (_context4.prev = _context4.next) {
|
|
523
526
|
case 0:
|
|
524
|
-
|
|
527
|
+
this.setShareLock(true);
|
|
528
|
+
_context4.prev = 1;
|
|
525
529
|
this.logger.info('screen-share-provider: enter startShareScreen');
|
|
526
530
|
if (!((0, _env.isElectron)() && !isReplace)) {
|
|
527
|
-
_context4.next =
|
|
531
|
+
_context4.next = 3;
|
|
528
532
|
break;
|
|
529
533
|
}
|
|
530
|
-
_context4.next =
|
|
534
|
+
_context4.next = 2;
|
|
531
535
|
return this.createScreenShareWithSelectionId(id, this.currentSelectionBounds);
|
|
532
|
-
case
|
|
536
|
+
case 2:
|
|
533
537
|
streamId = _context4.sent;
|
|
534
538
|
if (streamId) {
|
|
535
539
|
this._sharedScreenShareSharedDataSource.setCurrentShareStreamId(streamId);
|
|
536
540
|
}
|
|
537
|
-
case
|
|
541
|
+
case 3:
|
|
538
542
|
this._sharedScreenShareSharedDataSource.setShareWithAudio(withAudio);
|
|
539
543
|
this.toggleScreenshareWithAudio(withAudio);
|
|
540
544
|
screenTrack = this._deviceProvider.getScreenTrack(id);
|
|
541
545
|
this.setScreenTrack(screenTrack);
|
|
542
546
|
this.logger.info('screen-share-provider: start share screen with track start');
|
|
543
|
-
(_this$
|
|
544
|
-
|
|
545
|
-
if (
|
|
546
|
-
_context4.next =
|
|
547
|
+
(_this$screenTrack3 = this.screenTrack) === null || _this$screenTrack3 === void 0 || _this$screenTrack3.addObserver(this._screenCaptureObserver);
|
|
548
|
+
_t = (_this$screenTrack4 = this.screenTrack) === null || _this$screenTrack4 === void 0;
|
|
549
|
+
if (_t) {
|
|
550
|
+
_context4.next = 7;
|
|
547
551
|
break;
|
|
548
552
|
}
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
553
|
+
_t2 = _this$screenTrack4;
|
|
554
|
+
_t3 = type;
|
|
555
|
+
_t4 = withAudio;
|
|
552
556
|
if (!(0, _env.isElectron)()) {
|
|
553
|
-
_context4.next =
|
|
557
|
+
_context4.next = 5;
|
|
554
558
|
break;
|
|
555
559
|
}
|
|
556
|
-
_context4.next =
|
|
560
|
+
_context4.next = 4;
|
|
557
561
|
return this._getExcludeWindows();
|
|
558
|
-
case
|
|
559
|
-
|
|
560
|
-
_context4.next =
|
|
562
|
+
case 4:
|
|
563
|
+
_t5 = _context4.sent;
|
|
564
|
+
_context4.next = 6;
|
|
561
565
|
break;
|
|
562
|
-
case
|
|
563
|
-
|
|
564
|
-
case
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
withAudio:
|
|
568
|
-
excludeWindows:
|
|
566
|
+
case 5:
|
|
567
|
+
_t5 = undefined;
|
|
568
|
+
case 6:
|
|
569
|
+
_t6 = _t5;
|
|
570
|
+
_t7 = {
|
|
571
|
+
withAudio: _t4,
|
|
572
|
+
excludeWindows: _t6
|
|
569
573
|
};
|
|
570
|
-
|
|
571
|
-
case
|
|
574
|
+
_t2.start.call(_t2, _t3, _t7);
|
|
575
|
+
case 7:
|
|
572
576
|
return _context4.abrupt("return", Promise.resolve(this.screenTrack));
|
|
573
|
-
case
|
|
574
|
-
_context4.prev =
|
|
575
|
-
|
|
576
|
-
return _context4.abrupt("return", Promise.reject(
|
|
577
|
-
case
|
|
577
|
+
case 8:
|
|
578
|
+
_context4.prev = 8;
|
|
579
|
+
_t8 = _context4["catch"](1);
|
|
580
|
+
return _context4.abrupt("return", Promise.reject(_t8));
|
|
581
|
+
case 9:
|
|
578
582
|
case "end":
|
|
579
583
|
return _context4.stop();
|
|
580
584
|
}
|
|
581
|
-
}, _callee4, this, [[
|
|
585
|
+
}, _callee4, this, [[1, 8]]);
|
|
582
586
|
}));
|
|
583
|
-
function startShareScreen(_x7, _x8, _x9,
|
|
587
|
+
function startShareScreen(_x7, _x8, _x9, _x0) {
|
|
584
588
|
return _startShareScreen.apply(this, arguments);
|
|
585
589
|
}
|
|
586
590
|
return startShareScreen;
|
|
@@ -590,16 +594,9 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
590
594
|
value: function stopShareScreen(targetScreenTrack) {
|
|
591
595
|
this.logger.info('screen-share-provider: stopShareScreen');
|
|
592
596
|
var screenTrack = targetScreenTrack !== null && targetScreenTrack !== void 0 ? targetScreenTrack : this.screenTrack;
|
|
593
|
-
this.setShareLock(false);
|
|
594
597
|
this.stopRenderSharePreview(screenTrack);
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
this.removeScreenStream();
|
|
598
|
-
} else {
|
|
599
|
-
this.removeScreenStream();
|
|
600
|
-
this._screenTrackStop();
|
|
601
|
-
}
|
|
602
|
-
this._sharedScreenShareSharedDataSource.setCurrentShareId('');
|
|
598
|
+
this.removeScreenStream();
|
|
599
|
+
this._screenTrackStop();
|
|
603
600
|
}
|
|
604
601
|
}, {
|
|
605
602
|
key: "_handleShareStartWithAudio",
|
|
@@ -631,11 +628,11 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
631
628
|
value: function () {
|
|
632
629
|
var _getExcludeWindows2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5() {
|
|
633
630
|
var excludeWindows;
|
|
634
|
-
return _regenerator["default"].wrap(function
|
|
631
|
+
return _regenerator["default"].wrap(function (_context5) {
|
|
635
632
|
while (1) switch (_context5.prev = _context5.next) {
|
|
636
633
|
case 0:
|
|
637
634
|
excludeWindows = [];
|
|
638
|
-
_context5.next =
|
|
635
|
+
_context5.next = 1;
|
|
639
636
|
return (0, _tools.waitUntil)(function () {
|
|
640
637
|
var _getControlBarMediaSo, _getVideoWindowMediaS, _getAnnotationMediaSo, _getAnnotationMediaSo2;
|
|
641
638
|
var windowId = (_getControlBarMediaSo = (0, _rendererEvent.getControlBarMediaSourceId)()) !== null && _getControlBarMediaSo !== void 0 ? _getControlBarMediaSo : '';
|
|
@@ -668,10 +665,10 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
668
665
|
}
|
|
669
666
|
return !!videoWindowId && !!controlBarWindowId;
|
|
670
667
|
}, 'control bar is open');
|
|
671
|
-
case
|
|
668
|
+
case 1:
|
|
672
669
|
this.logger.info('exclude win:', JSON.stringify(excludeWindows));
|
|
673
670
|
return _context5.abrupt("return", excludeWindows);
|
|
674
|
-
case
|
|
671
|
+
case 2:
|
|
675
672
|
case "end":
|
|
676
673
|
return _context5.stop();
|
|
677
674
|
}
|
|
@@ -685,10 +682,6 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
685
682
|
}, {
|
|
686
683
|
key: "removeScreenStream",
|
|
687
684
|
value: function removeScreenStream() {
|
|
688
|
-
var streamId = this.currentShareStreamId;
|
|
689
|
-
if (!streamId) {
|
|
690
|
-
return false;
|
|
691
|
-
}
|
|
692
685
|
try {
|
|
693
686
|
var _this$_streamControl5;
|
|
694
687
|
this.logger.info('screen-share-provider: remove screen streams');
|
|
@@ -703,13 +696,14 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
703
696
|
}, {
|
|
704
697
|
key: "_screenTrackStop",
|
|
705
698
|
value: function _screenTrackStop() {
|
|
706
|
-
var _this$
|
|
699
|
+
var _this$screenTrack5;
|
|
707
700
|
this.logger.info('screen-share-provider: current screen track stop');
|
|
708
|
-
(_this$
|
|
701
|
+
(_this$screenTrack5 = this.screenTrack) === null || _this$screenTrack5 === void 0 || _this$screenTrack5.stop();
|
|
702
|
+
this.setShareLock(false);
|
|
709
703
|
}
|
|
710
704
|
}]);
|
|
711
705
|
}();
|
|
712
706
|
_FcrUIScreenShareProviderImpl = FcrUIScreenShareProviderImpl;
|
|
713
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIScreenShareProviderImpl, [[_decorator.bound, 2, "getCurrentScreenSharingOwner"], [_decorator.bound, 2, "stop"], [_decorator.bound, 2, "bootstrap"], [_decorator.bound, 2, "_handleWebScreenCaptureStateUpdated"], [_handleScreenCaptureStateUpdatedDecs, 18, "_handleScreenCaptureStateUpdated"], [_handleShareStopWithAudioDecs, 18, "_handleShareStopWithAudio"], [_decorator.bound, 2, "_syncShareStreamState"], [_handleStreamUpdateDecs, 18, "_handleStreamUpdate"], [_decorator.bound, 2, "startRenderSharePreview"], [_decorator.bound, 2, "stopRenderSharePreview"], [_handleStreamPublicDecs, 18, "_handleStreamPublic"], [_releaseDecs, 18, "release"], [_startShareScreenDecs, 18, "startShareScreen"], [_handleShareStartWithAudioDecs, 18, "_handleShareStartWithAudio"], [_decorator.bound, 2, "_getExcludeWindows"], [_decorator.bound, 2, "_screenTrackStop"]], []).e, 1);
|
|
707
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIScreenShareProviderImpl, [[_decorator.bound, 2, "getCurrentScreenSharingOwner"], [_decorator.bound, 2, "stop"], [_decorator.bound, 2, "bootstrap"], [_decorator.bound, 2, "_handleWebScreenCaptureStateUpdated"], [_handleScreenCaptureStateUpdatedDecs, 18, "_handleScreenCaptureStateUpdated"], [_handleShareStopWithAudioDecs, 18, "_handleShareStopWithAudio"], [_replaceScreenShareDecs, 18, "replaceScreenShare"], [_decorator.bound, 2, "_syncShareStreamState"], [_handleStreamUpdateDecs, 18, "_handleStreamUpdate"], [_decorator.bound, 2, "startRenderSharePreview"], [_decorator.bound, 2, "stopRenderSharePreview"], [_handleStreamPublicDecs, 18, "_handleStreamPublic"], [_releaseDecs, 18, "release"], [_startShareScreenDecs, 18, "startShareScreen"], [_handleShareStartWithAudioDecs, 18, "_handleShareStartWithAudio"], [_decorator.bound, 2, "_getExcludeWindows"], [_decorator.bound, 2, "_screenTrackStop"]], []).e, 1);
|
|
714
708
|
_initProto = _applyDecs$e[0];
|
|
715
709
|
(0, _base.registerDependency)('screenShareProvider');
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FcrScreenSharingState, FcrSharingControl, FcrWhiteboardState } from 'fcr-core/lib/room-control/sharing-control/type';
|
|
2
2
|
import { FcrScreenStreamCreateConfig } from 'fcr-core/lib/room-control/stream-control/type';
|
|
3
|
+
import { FcrUIScreenShareSharedDataSource } from '../shared-data-source/screen-share-data';
|
|
3
4
|
export interface FcrUISharingProvider {
|
|
4
5
|
get screenSharingOwnerId(): string;
|
|
5
6
|
get whiteboardOwnerId(): string;
|
|
@@ -15,13 +16,16 @@ export interface FcrUISharingProvider {
|
|
|
15
16
|
}
|
|
16
17
|
export declare class FcrUISharingProviderImpl implements FcrUISharingProvider {
|
|
17
18
|
private _sharingControl;
|
|
19
|
+
private _sharedScreenShareSharedDataSource;
|
|
18
20
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
19
21
|
private _observer;
|
|
20
22
|
accessor screenSharingOwnerId: string;
|
|
21
23
|
accessor whiteboardOwnerId: string;
|
|
22
24
|
accessor screenSharingState: FcrScreenSharingState;
|
|
23
25
|
accessor whiteboardState: FcrWhiteboardState;
|
|
24
|
-
|
|
26
|
+
get isReplaceScreen(): boolean;
|
|
27
|
+
get isSeizeStream(): boolean;
|
|
28
|
+
constructor(_sharingControl: FcrSharingControl, _sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource);
|
|
25
29
|
startScreenSharing(config: FcrScreenStreamCreateConfig): void;
|
|
26
30
|
startWhiteboard(): void;
|
|
27
31
|
updateScreenSharing(enableAnnotation: boolean): void;
|
|
@@ -53,6 +53,7 @@ var _type = require("fcr-core/lib/room-control/sharing-control/type");
|
|
|
53
53
|
var _mobx = require("mobx");
|
|
54
54
|
var _base = require("../base");
|
|
55
55
|
var _logger = require("../utilities/logger");
|
|
56
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
56
57
|
var _FcrUISharingProviderImpl;
|
|
57
58
|
var _initProto, _init_screenSharingOwnerId, _init_whiteboardOwnerId, _init_screenSharingState, _init_whiteboardState;
|
|
58
59
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
@@ -70,7 +71,7 @@ var _B = /*#__PURE__*/new WeakMap();
|
|
|
70
71
|
var _C = /*#__PURE__*/new WeakMap();
|
|
71
72
|
var _D = /*#__PURE__*/new WeakMap();
|
|
72
73
|
var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/function () {
|
|
73
|
-
function FcrUISharingProviderImpl(_sharingControl) {
|
|
74
|
+
function FcrUISharingProviderImpl(_sharingControl, _sharedScreenShareSharedDataSource) {
|
|
74
75
|
var _this = this;
|
|
75
76
|
(0, _classCallCheck2["default"])(this, FcrUISharingProviderImpl);
|
|
76
77
|
(0, _defineProperty2["default"])(this, "logger", (_initProto(this), (0, _logger.createLogger)({
|
|
@@ -80,6 +81,10 @@ var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/f
|
|
|
80
81
|
onScreenSharingUpdated: function onScreenSharingUpdated(ownerId, state) {
|
|
81
82
|
_this.screenSharingOwnerId = ownerId;
|
|
82
83
|
_this.screenSharingState = state;
|
|
84
|
+
if (state === _type.FcrScreenSharingState.END && (0, _env.isElectron)()) {
|
|
85
|
+
_this.isReplaceScreen && _this._sharedScreenShareSharedDataSource.setIsReplaceScreen(false);
|
|
86
|
+
_this.isSeizeStream && _this._sharedScreenShareSharedDataSource.setIsSeizeStream(false);
|
|
87
|
+
}
|
|
83
88
|
},
|
|
84
89
|
onWhiteboardStarted: function onWhiteboardStarted(ownerId, operatorUser) {
|
|
85
90
|
_this.whiteboardOwnerId = ownerId;
|
|
@@ -94,6 +99,7 @@ var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/f
|
|
|
94
99
|
_classPrivateFieldInitSpec(this, _C, _init_screenSharingState(this, _type.FcrScreenSharingState.END));
|
|
95
100
|
_classPrivateFieldInitSpec(this, _D, _init_whiteboardState(this, _type.FcrWhiteboardState.END));
|
|
96
101
|
this._sharingControl = _sharingControl;
|
|
102
|
+
this._sharedScreenShareSharedDataSource = _sharedScreenShareSharedDataSource;
|
|
97
103
|
// @ts-ignore
|
|
98
104
|
// this._sharingControl.getToken();
|
|
99
105
|
this._sharingControl.addObserver(this._observer);
|
|
@@ -130,6 +136,16 @@ var FcrUISharingProviderImpl = exports.FcrUISharingProviderImpl = /*#__PURE__*/f
|
|
|
130
136
|
set: function set(v) {
|
|
131
137
|
_classPrivateFieldSet(_D, this, v);
|
|
132
138
|
}
|
|
139
|
+
}, {
|
|
140
|
+
key: "isReplaceScreen",
|
|
141
|
+
get: function get() {
|
|
142
|
+
return this._sharedScreenShareSharedDataSource.isReplaceScreen;
|
|
143
|
+
}
|
|
144
|
+
}, {
|
|
145
|
+
key: "isSeizeStream",
|
|
146
|
+
get: function get() {
|
|
147
|
+
return this._sharedScreenShareSharedDataSource.isSeizeStream;
|
|
148
|
+
}
|
|
133
149
|
}, {
|
|
134
150
|
key: "startScreenSharing",
|
|
135
151
|
value: function startScreenSharing(config) {
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FcrUISettingConfig } from '../type';
|
|
2
|
+
export interface FcrUIUserSettingStorageProvider {
|
|
3
|
+
/**
|
|
4
|
+
* 写入本地存储
|
|
5
|
+
* @param key
|
|
6
|
+
* @param value
|
|
7
|
+
*/
|
|
8
|
+
write(value: Partial<FcrUISettingConfig>): number;
|
|
9
|
+
/**
|
|
10
|
+
* 从本地存储读取
|
|
11
|
+
* @param key
|
|
12
|
+
*/
|
|
13
|
+
read(): FcrUISettingConfig | null;
|
|
14
|
+
}
|
|
15
|
+
export declare class FcrUIUserSettingStorageProviderImpl implements FcrUIUserSettingStorageProvider {
|
|
16
|
+
private _isElectron;
|
|
17
|
+
constructor();
|
|
18
|
+
write(value: Partial<FcrUISettingConfig>): number;
|
|
19
|
+
read(): any;
|
|
20
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
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.to-string.js");
|
|
12
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
13
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
14
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
15
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
16
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
17
|
+
Object.defineProperty(exports, "__esModule", {
|
|
18
|
+
value: true
|
|
19
|
+
});
|
|
20
|
+
exports.FcrUIUserSettingStorageProviderImpl = void 0;
|
|
21
|
+
require("core-js/modules/es.date.to-json.js");
|
|
22
|
+
require("core-js/modules/es.json.stringify.js");
|
|
23
|
+
require("core-js/modules/es.object.keys.js");
|
|
24
|
+
require("core-js/modules/esnext.json.parse.js");
|
|
25
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
26
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
27
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
28
|
+
var _base = require("../base");
|
|
29
|
+
var _env = require("agora-foundation/lib/utilities/env");
|
|
30
|
+
var _settingConfigStorage = require("../utilities/setting-config-storage");
|
|
31
|
+
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; }
|
|
32
|
+
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; }
|
|
33
|
+
var FcrUIUserSettingStorageProviderImpl = exports.FcrUIUserSettingStorageProviderImpl = /*#__PURE__*/function () {
|
|
34
|
+
function FcrUIUserSettingStorageProviderImpl() {
|
|
35
|
+
(0, _classCallCheck2["default"])(this, FcrUIUserSettingStorageProviderImpl);
|
|
36
|
+
(0, _defineProperty2["default"])(this, "_isElectron", false);
|
|
37
|
+
this._isElectron = (0, _env.isElectron)();
|
|
38
|
+
}
|
|
39
|
+
return (0, _createClass2["default"])(FcrUIUserSettingStorageProviderImpl, [{
|
|
40
|
+
key: "write",
|
|
41
|
+
value: function write(value) {
|
|
42
|
+
var userSetting = this.read();
|
|
43
|
+
if (userSetting) {
|
|
44
|
+
value = _objectSpread(_objectSpread({}, userSetting), value);
|
|
45
|
+
}
|
|
46
|
+
if (this._isElectron) {
|
|
47
|
+
window.runtime.setUserSettingData(value);
|
|
48
|
+
} else {
|
|
49
|
+
localStorage.setItem(_settingConfigStorage.settingConfigStorageKey, JSON.stringify(value));
|
|
50
|
+
}
|
|
51
|
+
return 1;
|
|
52
|
+
}
|
|
53
|
+
}, {
|
|
54
|
+
key: "read",
|
|
55
|
+
value: function read() {
|
|
56
|
+
if (this._isElectron) {
|
|
57
|
+
return window.runtime.getUserSettingData();
|
|
58
|
+
} else {
|
|
59
|
+
var getItem = localStorage.getItem(_settingConfigStorage.settingConfigStorageKey);
|
|
60
|
+
return getItem ? JSON.parse(getItem) : null;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// remove(key: string) {
|
|
65
|
+
// localStorage.removeItem(key);
|
|
66
|
+
// }
|
|
67
|
+
}]);
|
|
68
|
+
}(); // export enum FcrLocalStorageSettingKey {
|
|
69
|
+
// SpotlightEnabled = 'spotlightEnabled',
|
|
70
|
+
// ShouldHideNonVideoParticipants = 'shouldHideNonVideoParticipants',
|
|
71
|
+
// }
|
|
72
|
+
(0, _base.registerDependency)('userSettingStorageProvider');
|