fcr-ui-scene 3.7.5 → 3.7.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/installer/icons/icon.png +0 -0
- package/installer/mac/entitlements.mac.plist +1 -5
- package/lib/creator/index.js +15 -7
- package/lib/creator/provider-initializer.browser.js +13 -4
- package/lib/creator/provider-initializer.electron.js +22 -10
- package/lib/creator.d.ts +36 -0
- package/lib/creator.js +465 -0
- package/lib/electron/bootstrap-sdk.js +90 -6
- package/lib/electron/injections.d.ts +1 -0
- package/lib/electron/injections.js +5 -1
- package/lib/electron/ipc/type.d.ts +1 -0
- package/lib/electron/ipc/type.js +1 -0
- package/lib/electron/preload.js +1 -0
- package/lib/electron/sdk-helper.d.ts +3 -0
- package/lib/electron/sdk-helper.js +53 -19
- package/lib/electron/struct.d.ts +7 -1
- package/lib/electron/struct.js +8 -1
- package/lib/electron/until.d.ts +7 -1
- package/lib/electron/until.js +11 -2
- package/lib/fragments/annotation/store.js +2 -0
- package/lib/modules/action-bar/components/item/index.js +1 -0
- package/lib/modules/action-bar/components/more/poppover-content.js +1 -1
- package/lib/modules/action-bar/components/screen-share/index.browser.js +4 -2
- package/lib/modules/action-bar/components/screen-share/index.electron.js +4 -2
- package/lib/modules/action-bar/components/screen-share/submenu.d.ts +5 -1
- package/lib/modules/action-bar/components/screen-share/submenu.js +12 -9
- package/lib/modules/action-bar/index.d.ts +55 -14
- package/lib/modules/action-bar/index.dev.js +94 -0
- package/lib/modules/action-bar/index.js +78 -32
- package/lib/modules/action-bar/store.d.ts +259 -0
- package/lib/modules/action-bar/store.js +1529 -0
- package/lib/modules/action-bar/types.d.ts +90 -0
- package/lib/modules/action-bar/types.js +6 -0
- package/lib/modules/action-bar/view.d.ts +1 -1
- package/lib/modules/action-bar/view.js +2 -2
- package/lib/modules/annotation/annotation-index.d.ts +2 -0
- package/lib/modules/annotation/annotation-index.js +80 -0
- package/lib/modules/annotation/annotation-toolbar-store.d.ts +75 -0
- package/lib/modules/annotation/annotation-toolbar-store.js +459 -0
- package/lib/modules/annotation/board-cursor.css +77 -0
- package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
- package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
- package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
- package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
- package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
- package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
- package/lib/modules/annotation/components/color-picker/index.js +47 -0
- package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
- package/lib/modules/annotation/components/eraser-picker.js +144 -0
- package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
- package/lib/modules/annotation/components/expansion/index.js +100 -0
- package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
- package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
- package/lib/modules/annotation/components/history.d.ts +2 -0
- package/lib/modules/annotation/components/history.js +78 -0
- package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
- package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
- package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
- package/lib/modules/annotation/components/icons/move-icon.js +66 -0
- package/lib/modules/annotation/components/item/index.d.ts +1 -0
- package/lib/modules/annotation/components/item/index.js +43 -0
- package/lib/modules/annotation/components/move-handle.d.ts +5 -0
- package/lib/modules/annotation/components/move-handle.js +134 -0
- package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
- package/lib/modules/annotation/components/pen-picker.js +155 -0
- package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
- package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
- package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
- package/lib/modules/annotation/components/shape-picker.js +210 -0
- package/lib/modules/annotation/hooks/index.d.ts +14 -0
- package/lib/modules/annotation/hooks/index.js +292 -0
- package/lib/modules/annotation/index.d.ts +45 -0
- package/lib/modules/annotation/index.js +168 -0
- package/lib/modules/annotation/store.d.ts +98 -0
- package/lib/modules/annotation/store.js +620 -0
- package/lib/modules/annotation/style.css +36 -0
- package/lib/modules/annotation/view.d.ts +3 -0
- package/lib/modules/annotation/view.js +44 -0
- package/lib/modules/audio-stream/index.js +4 -2
- package/lib/modules/chat/index.css +8 -0
- package/lib/modules/chat/view.js +7 -1
- package/lib/modules/components/control-bar/components/switch-theme/index.css +2 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.js +5 -7
- package/lib/modules/components/control-bar/index.css +0 -2
- package/lib/modules/components/control-bar/index.d.ts +1 -0
- package/lib/modules/components/control-bar/index.js +51 -15
- package/lib/modules/components/device-control/store.d.ts +42 -0
- package/lib/modules/components/device-control/store.js +241 -0
- package/lib/modules/components/leave-meeting/main-scene/store.d.ts +3 -0
- package/lib/modules/components/leave-meeting/main-scene/store.js +12 -0
- package/lib/modules/components/leave-meeting/store.base.d.ts +4 -3
- package/lib/modules/components/leave-meeting/store.base.js +0 -10
- package/lib/modules/components/leave-meeting/store.d.ts +39 -0
- package/lib/modules/components/leave-meeting/store.js +270 -0
- package/lib/modules/components/leave-meeting/waiting-scene/store.d.ts +5 -1
- package/lib/modules/components/leave-meeting/waiting-scene/store.js +17 -3
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +1 -2
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +4 -3
- package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +18 -32
- package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +0 -1
- package/lib/modules/components/toolbar/components/capture-tool/index.js +1 -2
- package/lib/modules/components/toolbar/components/vertical-frame/index.js +2 -2
- package/lib/modules/components/toolbar/hooks/use-resize-visible.js +45 -32
- package/lib/modules/components/toolbar/index.js +6 -24
- package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
- package/lib/modules/control-bar/components/annotation-button/index.js +72 -0
- package/lib/modules/control-bar/components/boundary-detector.d.ts +7 -5
- package/lib/modules/control-bar/components/boundary-detector.js +22 -2
- package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +3 -0
- package/lib/modules/control-bar/components/cloud-recording-buttons.js +68 -3
- package/lib/modules/control-bar/hooks.js +2 -1
- package/lib/modules/control-bar/store.d.ts +1 -0
- package/lib/modules/control-bar/store.js +21 -7
- package/lib/modules/control-bar/types.d.ts +5 -16
- package/lib/modules/control-bar/view.js +96 -28
- package/lib/modules/dialog/components/confirm/index.js +6 -24
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
- package/lib/modules/dialog/components/dialog-container/index.css +8 -1
- package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
- package/lib/modules/dialog/components/dialog-container/index.js +4 -1
- package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
- package/lib/modules/dialog/components/normal-window/index.js +3 -1
- package/lib/modules/dialog/dialogs/chat/index.js +2 -1
- package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +0 -1
- package/lib/modules/dialog/dialogs/device-setting/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/device-setting/index.js +4 -2
- package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/end-meeting/index.js +2 -1
- package/lib/modules/dialog/dialogs/invite/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/invite/index.js +2 -1
- package/lib/modules/dialog/dialogs/mute-all/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/mute-all/index.js +2 -1
- package/lib/modules/dialog/dialogs/participant/index.js +9 -2
- package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +3 -3
- package/lib/modules/dialog/dialogs/pre-setting/index.js +25 -20
- package/lib/modules/dialog/dialogs/share-screen-selection/index.js +1 -1
- package/lib/modules/dialog/dialogs/sub-window/index.js +1 -7
- package/lib/modules/dialog/dialogs/toast/index.d.ts +1 -1
- package/lib/modules/dialog/dialogs/toast/index.js +1 -1
- package/lib/modules/dialog/dialogs/video-window/index.d.ts +4 -1
- package/lib/modules/dialog/dialogs/video-window/index.js +5 -2
- package/lib/modules/dialog/dialogs/widget/electron.d.ts +6 -0
- package/lib/modules/dialog/dialogs/widget/electron.js +38 -0
- package/lib/modules/dialog/dialogs/widget/index.d.ts +2 -0
- package/lib/modules/dialog/dialogs/widget/index.js +11 -3
- package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -3
- package/lib/modules/dialog/hooks/useElectron.d.ts +28 -0
- package/lib/modules/dialog/hooks/useElectron.js +277 -0
- package/lib/modules/dialog/index.css +6 -2
- package/lib/modules/dialog/level-config.d.ts +1 -0
- package/lib/modules/dialog/level-config.js +2 -1
- package/lib/modules/dialog/store.base.d.ts +2 -0
- package/lib/modules/dialog/store.browser.d.ts +2 -0
- package/lib/modules/dialog/store.browser.js +6 -1
- package/lib/modules/dialog/store.d.ts +135 -0
- package/lib/modules/dialog/store.electron.d.ts +9 -1
- package/lib/modules/dialog/store.electron.js +64 -4
- package/lib/modules/dialog/store.js +616 -0
- package/lib/modules/dialog/type.d.ts +3 -0
- package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
- package/lib/modules/event-confirm/components/window/index.js +221 -0
- package/lib/modules/event-confirm/index.css +24 -0
- package/lib/modules/event-confirm/index.d.ts +27 -0
- package/lib/modules/event-confirm/index.js +76 -0
- package/lib/modules/event-confirm/store.d.ts +50 -0
- package/lib/modules/event-confirm/store.js +394 -0
- package/lib/modules/event-confirm/view.d.ts +2 -0
- package/lib/modules/event-confirm/view.js +55 -0
- package/lib/modules/event-toast/index.css +0 -1
- package/lib/modules/event-toast/index.js +1 -0
- package/lib/modules/event-toast/store.base.d.ts +2 -0
- package/lib/modules/event-toast/store.base.js +40 -21
- package/lib/modules/event-toast/store.d.ts +9 -5
- package/lib/modules/event-toast/store.electron.d.ts +2 -0
- package/lib/modules/event-toast/store.electron.js +19 -9
- package/lib/modules/event-toast/store.js +57 -39
- package/lib/modules/layout/components/CommonVideoRenderer.js +1 -0
- package/lib/modules/layout/store.d.ts +176 -0
- package/lib/modules/layout/store.electron.js +1 -1
- package/lib/modules/layout/store.js +1452 -0
- package/lib/modules/participant/components/confirm-input/index.js +1 -1
- package/lib/modules/participant/store.base.d.ts +30 -3
- package/lib/modules/participant/store.base.js +249 -96
- package/lib/modules/participant/store.browser.js +4 -3
- package/lib/modules/participant/store.d.ts +222 -0
- package/lib/modules/participant/store.electron.js +5 -3
- package/lib/modules/participant/store.js +1929 -0
- package/lib/modules/pc-audio-connect/index.d.ts +22 -0
- package/lib/modules/pc-audio-connect/index.js +67 -0
- package/lib/modules/pc-audio-connect/main-scene/store.js +1 -0
- package/lib/modules/pc-audio-connect/store.d.ts +46 -0
- package/lib/modules/pc-audio-connect/store.js +304 -0
- package/lib/modules/secondary-window/store.d.ts +1 -1
- package/lib/modules/secondary-window/store.js +14 -22
- package/lib/modules/secondary-window/view.js +10 -10
- package/lib/modules/setting/audio-settings/audio-settings.js +0 -17
- package/lib/modules/setting/dialog-wrapper.d.ts +2 -0
- package/lib/modules/setting/dialog-wrapper.js +110 -0
- package/lib/modules/setting/index.js +1 -1
- package/lib/modules/setting/state/index.js +1 -1
- package/lib/modules/setting/store.base.d.ts +5 -2
- package/lib/modules/setting/store.base.js +72 -26
- package/lib/modules/setting/store.d.ts +261 -0
- package/lib/modules/setting/store.js +1321 -0
- package/lib/modules/share-screen/components/selection/index.css +4 -0
- package/lib/modules/share-screen/store.base.js +17 -4
- package/lib/modules/share-screen/store.d.ts +148 -0
- package/lib/modules/share-screen/store.electron.js +5 -2
- package/lib/modules/share-screen/store.js +960 -0
- package/lib/modules/share-screen/types.d.ts +26 -0
- package/lib/modules/share-screen/types.js +6 -0
- package/lib/modules/state-bar/layout-config.js +6 -0
- package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
- package/lib/modules/state-bar/main-scene/store.base.js +6 -0
- package/lib/modules/state-bar/store.d.ts +124 -0
- package/lib/modules/state-bar/store.js +664 -0
- package/lib/modules/video-window/index.css +6 -0
- package/lib/modules/video-window/popover-watcher.d.ts +5 -10
- package/lib/modules/video-window/popover-watcher.js +34 -31
- package/lib/modules/video-window/store.d.ts +32 -5
- package/lib/modules/video-window/store.js +156 -63
- package/lib/modules/video-window/view.js +50 -1
- package/lib/modules/whiteboard/components/progress/electron.d.ts +1 -0
- package/lib/modules/whiteboard/components/progress/electron.js +33 -0
- package/lib/modules/whiteboard/index.d.ts +1 -1
- package/lib/modules/whiteboard/index.js +1 -1
- package/lib/modules/whiteboard/store.d.ts +3 -0
- package/lib/modules/whiteboard/store.js +31 -2
- package/lib/modules/whiteboard/view.js +10 -1
- package/lib/modules/widget/sdk.js +1 -1
- package/lib/modules/widget/store.base.d.ts +1 -0
- package/lib/modules/widget/store.browser.d.ts +1 -0
- package/lib/modules/widget/store.browser.js +60 -4
- package/lib/modules/widget/store.d.ts +5 -8
- package/lib/modules/widget/store.electron.d.ts +1 -0
- package/lib/modules/widget/store.electron.js +59 -2
- package/lib/modules/widget/store.js +4 -47
- package/lib/modules/widget/type.d.ts +3 -2
- package/lib/modules/widget/view.js +9 -4
- package/lib/modules/widget/web-widget.d.ts +2 -1
- package/lib/modules/widget/web-widget.js +7 -5
- package/lib/object-manager.d.ts +2 -2
- package/lib/object-manager.js +1 -1
- package/lib/providers/annotation-provider.d.ts +124 -0
- package/lib/providers/annotation-provider.js +369 -0
- package/lib/providers/board-share/bar-control/base.d.ts +1 -1
- package/lib/providers/board-share/bar-control/base.js +37 -28
- package/lib/providers/board-share/bar-control/electron.d.ts +1 -1
- package/lib/providers/board-share/bar-control/electron.js +19 -16
- package/lib/providers/board-share/provider.base.d.ts +8 -1
- package/lib/providers/board-share/provider.base.js +12 -2
- package/lib/providers/board-share/provider.browser.d.ts +3 -0
- package/lib/providers/board-share/provider.browser.js +21 -3
- package/lib/providers/device-provider.d.ts +16 -2
- package/lib/providers/device-provider.js +53 -60
- package/lib/providers/dialog/provider.base.d.ts +1 -0
- package/lib/providers/dialog/provider.browser.d.ts +1 -0
- package/lib/providers/dialog/provider.browser.js +7 -2
- package/lib/providers/dialog/provider.electron.d.ts +4 -1
- package/lib/providers/dialog/provider.electron.js +94 -2
- package/lib/providers/dialog/type.d.ts +7 -0
- package/lib/providers/dialog-provider.d.ts +137 -0
- package/lib/providers/dialog-provider.js +194 -0
- package/lib/providers/message-provider.d.ts +69 -0
- package/lib/providers/message-provider.js +140 -0
- package/lib/providers/mouse-detect/provider.d.ts +9 -1
- package/lib/providers/mouse-detect/provider.js +119 -5
- package/lib/providers/mouse-detect/struct.d.ts +2 -1
- package/lib/providers/mouse-detect/struct.js +1 -0
- package/lib/providers/mouse-detect/type.d.ts +2 -0
- package/lib/providers/multi-display-provider.d.ts +3 -5
- package/lib/providers/multi-display-provider.js +0 -9
- package/lib/providers/renderer-provider.d.ts +5 -0
- package/lib/providers/renderer-provider.js +5 -0
- package/lib/providers/room-provider/room-provider.d.ts +4 -14
- package/lib/providers/room-provider/room-provider.js +28 -39
- package/lib/providers/room-provider.d.ts +194 -0
- package/lib/providers/room-provider.js +916 -0
- package/lib/providers/screen-share/provider.base.js +3 -11
- package/lib/providers/screen-share/provider.browser.js +23 -14
- package/lib/providers/screen-share/provider.electron.d.ts +1 -0
- package/lib/providers/screen-share/provider.electron.js +44 -17
- package/lib/providers/screen-share/strategy/browser.js +16 -13
- package/lib/providers/screen-share/strategy/electron.d.ts +2 -2
- package/lib/providers/screen-share/strategy/electron.js +15 -10
- package/lib/providers/screen-share/strategy/type.d.ts +6 -0
- package/lib/providers/screen-share/stream-state-sync.d.ts +3 -2
- package/lib/providers/screen-share/stream-state-sync.js +26 -16
- package/lib/providers/screen-share/struct.d.ts +9 -7
- package/lib/providers/screen-share/struct.js +11 -8
- package/lib/providers/screen-share/type.d.ts +7 -1
- package/lib/providers/screen-share-provider.d.ts +245 -0
- package/lib/providers/screen-share-provider.js +850 -0
- package/lib/providers/sharing-provider.d.ts +42 -0
- package/lib/providers/sharing-provider.js +228 -0
- package/lib/providers/user-setting-storage-provider.d.ts +21 -0
- package/lib/providers/user-setting-storage-provider.js +65 -0
- package/lib/providers/whiteboard-provider.d.ts +2 -4
- package/lib/providers/whiteboard-provider.js +4 -7
- package/lib/providers/widget-provider.d.ts +5 -3
- package/lib/providers/widget-provider.js +12 -18
- package/lib/providers/window/main-window.d.ts +0 -5
- package/lib/providers/window/main-window.js +3 -44
- package/lib/providers/window/renderer-window.d.ts +1 -0
- package/lib/providers/window/renderer-window.js +13 -2
- package/lib/runtime.d.ts +1 -0
- package/lib/runtime.js +2 -1
- package/lib/scenes/main-scene.js +5 -0
- package/lib/shared-context/board-context.d.ts +2 -0
- package/lib/shared-context/board-context.js +2 -0
- package/lib/shared-data/member-data.d.ts +0 -8
- package/lib/shared-data/member-data.js +26 -78
- package/lib/shared-data/widget-data.d.ts +13 -0
- package/lib/shared-data/widget-data.js +50 -0
- package/lib/shared-data-source/annotation-data.d.ts +17 -0
- package/lib/{modules/action-bar/store.base.js → shared-data-source/annotation-data.js} +34 -41
- package/lib/shared-data-source/app-list-data.d.ts +34 -0
- package/lib/shared-data-source/app-list-data.js +133 -0
- package/lib/shared-data-source/chat-data.d.ts +25 -0
- package/lib/shared-data-source/chat-data.js +139 -0
- package/lib/shared-data-source/config.d.ts +35 -0
- package/lib/shared-data-source/config.js +40 -0
- package/lib/shared-data-source/confirm-data.d.ts +44 -0
- package/lib/shared-data-source/confirm-data.js +201 -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 +77 -0
- package/lib/shared-data-source/interpreter.js +247 -0
- package/lib/shared-data-source/layout-data.d.ts +31 -0
- package/lib/shared-data-source/layout-data.js +189 -0
- package/lib/shared-data-source/meeting-time.d.ts +90 -0
- package/lib/shared-data-source/meeting-time.js +416 -0
- package/lib/shared-data-source/member-data.d.ts +139 -0
- package/lib/shared-data-source/member-data.js +517 -0
- package/lib/shared-data-source/pin-data.d.ts +13 -0
- package/lib/{modules/action-bar/waiting-scene/store.js → shared-data-source/pin-data.js} +55 -35
- package/lib/shared-data-source/screen-share-data.d.ts +357 -0
- package/lib/shared-data-source/screen-share-data.js +513 -0
- package/lib/shared-data-source/security-data.d.ts +39 -0
- package/lib/shared-data-source/security-data.js +156 -0
- package/lib/shared-data-source/setting.d.ts +67 -0
- package/lib/shared-data-source/setting.js +220 -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 +165 -0
- package/lib/shared-data-source/video-window.js +1266 -0
- package/lib/shared-data-source/waiting-room.d.ts +46 -0
- package/lib/shared-data-source/waiting-room.js +222 -0
- package/lib/{shared-data → shared-data-source}/whiteboard-data.d.ts +2 -2
- package/lib/{shared-data → shared-data-source}/whiteboard-data.js +23 -17
- package/lib/translations/enUS.d.ts +0 -2
- package/lib/translations/enUS.js +4 -6
- package/lib/translations/zhCN.d.ts +0 -2
- package/lib/translations/zhCN.js +4 -6
- package/lib/type.d.ts +5 -0
- package/lib/ui-scene.d.ts +2 -4
- package/lib/ui-scene.js +31 -42
- package/lib/utilities/board-context.d.ts +4 -0
- package/lib/utilities/board-context.js +12 -0
- package/lib/utilities/constant.d.ts +3 -1
- package/lib/utilities/constant.js +5 -2
- package/lib/utilities/copyText.d.ts +2 -0
- package/lib/utilities/copyText.js +48 -0
- package/lib/utilities/default-config.d.ts +18 -0
- package/lib/utilities/default-config.js +19 -1
- package/lib/utilities/focus-helper.js +10 -3
- package/lib/utilities/logger.js +3 -1
- package/lib/utilities/renderer-event.d.ts +10 -0
- package/lib/utilities/renderer-event.js +95 -0
- package/lib/utilities/renderer.d.ts +1 -0
- package/lib/utilities/renderer.js +7 -1
- package/lib/utilities/screen-capture-permission.d.ts +2 -0
- package/lib/utilities/screen-capture-permission.js +24 -0
- package/lib/utilities/screen.d.ts +3 -0
- package/lib/utilities/screen.js +53 -0
- package/lib/utilities/video-track-render-context.d.ts +6 -0
- package/lib/utilities/video-track-render-context.js +9 -0
- package/lib/waiting-room-control-manager.d.ts +28 -0
- package/lib/waiting-room-control-manager.js +230 -0
- package/package.json +5 -5
- package/public/index.html +35 -4
- package/lib/modules/action-bar/store.base.d.ts +0 -15
- package/lib/modules/action-bar/waiting-scene/store.d.ts +0 -6
- package/lib/providers/board-share/bar-control.d.ts +0 -51
- package/lib/providers/board-share/bar-control.js +0 -390
- package/lib/providers/board-share/provider.d.ts +0 -66
- package/lib/providers/board-share/provider.js +0 -456
- package/lib/providers/screen-share/provider.d.ts +0 -69
- package/lib/providers/screen-share/provider.js +0 -615
- package/lib/providers/window/browser-window-proxy.js +0 -1
- package/lib/providers/window/ipc-protocol.d.ts +0 -0
- package/lib/providers/window/ipc-protocol.js +0 -1
- package/lib/providers/window/main-process-handler.d.ts +0 -0
- package/lib/providers/window/main-process-handler.js +0 -1
- package/lib/providers/window/main-process-integration.d.ts +0 -0
- package/lib/providers/window/main-process-integration.js +0 -1
- package/lib/utilities/ipc-protocol.d.ts +0 -91
- package/lib/utilities/ipc-protocol.js +0 -61
- /package/lib/{providers/window/browser-window-proxy.d.ts → modules/action-bar/index.dev.d.ts} +0 -0
|
@@ -66,7 +66,6 @@ var _struct = require("./struct");
|
|
|
66
66
|
var _observable = require("agora-foundation/lib/utilities/observable");
|
|
67
67
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
68
68
|
var _mobx = require("mobx");
|
|
69
|
-
var _type2 = require("agora-rte-sdk/lib/core/rtc/type");
|
|
70
69
|
var _get = _interopRequireDefault(require("lodash/get"));
|
|
71
70
|
var _FcrUIScreenShareProviderBase;
|
|
72
71
|
var _initProto, _init__isLocalUserScreenSharing, _init__isRemoteUserScreenSharing, _init__isSharingWithAudio, _init__isSharingInSmoothMode, _init__isSharingInStereoAudioMode, _init__shareStreamId, _init__sharingUser, _enableScreenShareAudioDecs, _disableScreenShareAudioDecs, _enableSmoothModeDecs, _disableSmoothModeDecs, _enableStereoAudioModeDecs, _disableStereoAudioModeDecs, _findSharingUserDecs, _handleStreamUpdatedDecs, _ref;
|
|
@@ -183,7 +182,7 @@ var FcrUIScreenShareProviderBase = exports.FcrUIScreenShareProviderBase = /*#__P
|
|
|
183
182
|
_this.observable.notifyObservers('onScreenShareStarted', _this.strategy.getScreenTrack());
|
|
184
183
|
}
|
|
185
184
|
});
|
|
186
|
-
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onScreenShareErrorOccurred', 'onScreenShareStarted', 'onScreenShareStopped', 'onShareSourceReplaced', 'onPrepreScreenCapture']));
|
|
185
|
+
this.addObserver((0, _logger.generateLogObserver)(this.logger, ['onScreenShareErrorOccurred', 'onAudioShareErrorOccurred', 'onScreenShareStarted', 'onScreenShareStopped', 'onShareSourceReplaced', 'onPrepreScreenCapture']));
|
|
187
186
|
}
|
|
188
187
|
return (0, _createClass2["default"])(FcrUIScreenShareProviderBase, [{
|
|
189
188
|
key: "_isLocalUserScreenSharing",
|
|
@@ -328,12 +327,6 @@ var FcrUIScreenShareProviderBase = exports.FcrUIScreenShareProviderBase = /*#__P
|
|
|
328
327
|
_context.next = 1;
|
|
329
328
|
break;
|
|
330
329
|
}
|
|
331
|
-
// this.observable.notifyObservers(
|
|
332
|
-
// 'onScreenShareErrorOccurred',
|
|
333
|
-
// FcrUIScreenShareErrorCode.CANNOT_START_LOOPBACK_CAPTURE,
|
|
334
|
-
// );
|
|
335
|
-
|
|
336
|
-
// throw new Error('cannot start screen share audio: no screen stream created');
|
|
337
330
|
this.logger.info('local screen stream not yet created, skip updating stream for audio');
|
|
338
331
|
return _context.abrupt("return");
|
|
339
332
|
case 1:
|
|
@@ -352,7 +345,7 @@ var FcrUIScreenShareProviderBase = exports.FcrUIScreenShareProviderBase = /*#__P
|
|
|
352
345
|
_context.prev = 4;
|
|
353
346
|
_t = _context["catch"](1);
|
|
354
347
|
this.logger.warn('failed to start screen share audio', _t);
|
|
355
|
-
this.observable.notifyObservers('
|
|
348
|
+
this.observable.notifyObservers('onAudioShareErrorOccurred', _struct.FcrUIAudioShareErrorCode.CANNOT_UPDATE_STREAM);
|
|
356
349
|
throw new Error("cannot start screen share audio, error: ".concat(_t));
|
|
357
350
|
case 5:
|
|
358
351
|
case "end":
|
|
@@ -394,6 +387,7 @@ var FcrUIScreenShareProviderBase = exports.FcrUIScreenShareProviderBase = /*#__P
|
|
|
394
387
|
_context2.prev = 4;
|
|
395
388
|
_t2 = _context2["catch"](1);
|
|
396
389
|
this.logger.warn('failed to update stream when stopping share audio', _t2);
|
|
390
|
+
throw new Error("cannot update screen stream, error: ".concat(_t2));
|
|
397
391
|
case 5:
|
|
398
392
|
case "end":
|
|
399
393
|
return _context2.stop();
|
|
@@ -409,13 +403,11 @@ var FcrUIScreenShareProviderBase = exports.FcrUIScreenShareProviderBase = /*#__P
|
|
|
409
403
|
key: "enableSmoothMode",
|
|
410
404
|
value: function enableSmoothMode() {
|
|
411
405
|
this._isSharingInSmoothMode = true;
|
|
412
|
-
this._streamControl.setScreenScenario(_type2.AgoraRtcScreenScenarioType.SMOOTH);
|
|
413
406
|
}
|
|
414
407
|
}, {
|
|
415
408
|
key: "disableSmoothMode",
|
|
416
409
|
value: function disableSmoothMode() {
|
|
417
410
|
this._isSharingInSmoothMode = false;
|
|
418
|
-
this._streamControl.setScreenScenario(_type2.AgoraRtcScreenScenarioType.CLEARITY);
|
|
419
411
|
}
|
|
420
412
|
}, {
|
|
421
413
|
key: "enableStereoAudioMode",
|
|
@@ -57,6 +57,7 @@ var _provider = require("./provider.base");
|
|
|
57
57
|
var _browser = require("./strategy/browser");
|
|
58
58
|
var _struct = require("./struct");
|
|
59
59
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
60
|
+
var _defaultConfig = require("../../utilities/default-config");
|
|
60
61
|
var _FcrUIScreenShareProviderImpl;
|
|
61
62
|
var _initProto;
|
|
62
63
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
@@ -116,7 +117,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
116
117
|
key: "startShare",
|
|
117
118
|
value: function () {
|
|
118
119
|
var _startShare = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref) {
|
|
119
|
-
var videoSourceId, _ref$captureType, captureType, _ref$excludeWindows, excludeWindows, createConfig, screenTrack, isScreenRecordingGranted, isScreenSharingPermitted, audioSourceId, _t, _t2;
|
|
120
|
+
var videoSourceId, _ref$captureType, captureType, _ref$excludeWindows, excludeWindows, createConfig, screenTrack, isScreenRecordingGranted, isScreenSharingPermitted, audioSourceId, encoderConfig, dimensions, frameRate, bitrate, _t, _t2;
|
|
120
121
|
return _regenerator["default"].wrap(function (_context3) {
|
|
121
122
|
while (1) switch (_context3.prev = _context3.next) {
|
|
122
123
|
case 0:
|
|
@@ -162,12 +163,24 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
162
163
|
if (audioSourceId) {
|
|
163
164
|
createConfig.audioSourceId = audioSourceId;
|
|
164
165
|
}
|
|
166
|
+
|
|
167
|
+
// first set screen scenario
|
|
168
|
+
if (this.isSharingInSmoothMode) {
|
|
169
|
+
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.SMOOTH);
|
|
170
|
+
} else {
|
|
171
|
+
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.CLEARITY);
|
|
172
|
+
}
|
|
173
|
+
encoderConfig = _defaultConfig.screenCaptureHighStreamEncoderConfig;
|
|
174
|
+
dimensions = encoderConfig.dimensions, frameRate = encoderConfig.frameRate, bitrate = encoderConfig.bitrate;
|
|
165
175
|
_context3.prev = 5;
|
|
166
176
|
_context3.next = 6;
|
|
167
177
|
return this.strategy.startScreenCapture({
|
|
168
178
|
sourceId: videoSourceId,
|
|
169
179
|
captureType: captureType,
|
|
170
|
-
excludeWindows: excludeWindows
|
|
180
|
+
excludeWindows: excludeWindows,
|
|
181
|
+
dimensions: dimensions,
|
|
182
|
+
frameRate: frameRate,
|
|
183
|
+
bitrate: bitrate
|
|
171
184
|
});
|
|
172
185
|
case 6:
|
|
173
186
|
_context3.next = 8;
|
|
@@ -190,10 +203,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
190
203
|
case 10:
|
|
191
204
|
_context3.prev = 10;
|
|
192
205
|
_context3.next = 11;
|
|
193
|
-
return this._screenStreamSync.startScreenStream(createConfig,
|
|
194
|
-
width: 0,
|
|
195
|
-
height: 0
|
|
196
|
-
});
|
|
206
|
+
return this._screenStreamSync.startScreenStream(createConfig, encoderConfig);
|
|
197
207
|
case 11:
|
|
198
208
|
_context3.next = 13;
|
|
199
209
|
break;
|
|
@@ -203,12 +213,6 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
203
213
|
this.observable.notifyObservers('onScreenShareErrorOccurred', _struct.FcrUIScreenShareErrorCode.CANNOT_CREATE_STREAM);
|
|
204
214
|
throw new Error("cannot create screen stream, error: ".concat(_t2));
|
|
205
215
|
case 13:
|
|
206
|
-
if (this.isSharingInSmoothMode) {
|
|
207
|
-
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.SMOOTH);
|
|
208
|
-
} else {
|
|
209
|
-
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.CLEARITY);
|
|
210
|
-
}
|
|
211
|
-
case 14:
|
|
212
216
|
case "end":
|
|
213
217
|
return _context3.stop();
|
|
214
218
|
}
|
|
@@ -246,16 +250,21 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
246
250
|
key: "replaceShare",
|
|
247
251
|
value: function () {
|
|
248
252
|
var _replaceShare = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(_ref2) {
|
|
249
|
-
var videoSourceId, captureType, excludeWindows;
|
|
253
|
+
var videoSourceId, captureType, excludeWindows, encoderConfig, dimensions, frameRate, bitrate;
|
|
250
254
|
return _regenerator["default"].wrap(function (_context5) {
|
|
251
255
|
while (1) switch (_context5.prev = _context5.next) {
|
|
252
256
|
case 0:
|
|
253
257
|
videoSourceId = _ref2.videoSourceId, captureType = _ref2.captureType, excludeWindows = _ref2.excludeWindows;
|
|
258
|
+
encoderConfig = _defaultConfig.screenCaptureHighStreamEncoderConfig;
|
|
259
|
+
dimensions = encoderConfig.dimensions, frameRate = encoderConfig.frameRate, bitrate = encoderConfig.bitrate;
|
|
254
260
|
_context5.next = 1;
|
|
255
261
|
return this.strategy.replaceScreenCaptureSource({
|
|
256
262
|
sourceId: videoSourceId,
|
|
257
263
|
captureType: captureType,
|
|
258
|
-
excludeWindows: excludeWindows
|
|
264
|
+
excludeWindows: excludeWindows,
|
|
265
|
+
dimensions: dimensions,
|
|
266
|
+
frameRate: frameRate,
|
|
267
|
+
bitrate: bitrate
|
|
259
268
|
});
|
|
260
269
|
case 1:
|
|
261
270
|
case "end":
|
|
@@ -41,6 +41,7 @@ exports.FcrUIScreenShareProviderImpl = void 0;
|
|
|
41
41
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
42
42
|
require("core-js/modules/es.error.cause.js");
|
|
43
43
|
require("core-js/modules/es.error.to-string.js");
|
|
44
|
+
require("core-js/modules/es.array.concat.js");
|
|
44
45
|
require("core-js/modules/es.array.filter.js");
|
|
45
46
|
require("core-js/modules/es.array.for-each.js");
|
|
46
47
|
require("core-js/modules/es.array.includes.js");
|
|
@@ -54,6 +55,7 @@ require("core-js/modules/esnext.iterator.for-each.js");
|
|
|
54
55
|
require("core-js/modules/esnext.iterator.map.js");
|
|
55
56
|
require("core-js/modules/web.dom-collections.for-each.js");
|
|
56
57
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
58
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
57
59
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
58
60
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
59
61
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -71,6 +73,8 @@ var _struct = require("./struct");
|
|
|
71
73
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
72
74
|
var _misc = require("agora-foundation/lib/utilities/misc");
|
|
73
75
|
var _tools = require("../../utilities/tools");
|
|
76
|
+
var _constant = require("../../utilities/constant");
|
|
77
|
+
var _defaultConfig = require("../../utilities/default-config");
|
|
74
78
|
var _FcrUIScreenShareProviderImpl;
|
|
75
79
|
var _initProto;
|
|
76
80
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
@@ -135,7 +139,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
135
139
|
return this._mediaControl.getWindowList();
|
|
136
140
|
case 1:
|
|
137
141
|
this._windowList = _context2.sent.filter(function (item) {
|
|
138
|
-
return ![
|
|
142
|
+
return ![].concat((0, _toConsumableArray2["default"])(_constant.ExcludeWIndows), [_this2._currentWindow.getTitle()]).includes(item.title);
|
|
139
143
|
}).map(function (item) {
|
|
140
144
|
return {
|
|
141
145
|
id: item.id,
|
|
@@ -162,7 +166,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
162
166
|
key: "startShare",
|
|
163
167
|
value: function () {
|
|
164
168
|
var _startShare = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref) {
|
|
165
|
-
var videoSourceId, _ref$captureType, captureType, createConfig, screenTrack, isScreenRecordingGranted, isScreenSharingPermitted, audioSourceId, excludeWindows, _t, _t2;
|
|
169
|
+
var videoSourceId, _ref$captureType, captureType, createConfig, screenTrack, isScreenRecordingGranted, isScreenSharingPermitted, audioSourceId, encoderConfig, excludeWindows, dimensions, frameRate, bitrate, _t, _t2;
|
|
166
170
|
return _regenerator["default"].wrap(function (_context3) {
|
|
167
171
|
while (1) switch (_context3.prev = _context3.next) {
|
|
168
172
|
case 0:
|
|
@@ -210,14 +214,10 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
210
214
|
}
|
|
211
215
|
this._sharingDisplayBounds = this.findSharingDisplayBounds();
|
|
212
216
|
this.observable.notifyObservers('onPrepreScreenCapture');
|
|
213
|
-
|
|
214
|
-
// create screen stream
|
|
217
|
+
encoderConfig = this._getEncoderConfig(); // create screen stream
|
|
215
218
|
_context3.prev = 5;
|
|
216
219
|
_context3.next = 6;
|
|
217
|
-
return this._screenStreamSync.startScreenStream(createConfig,
|
|
218
|
-
width: 0,
|
|
219
|
-
height: 0
|
|
220
|
-
});
|
|
220
|
+
return this._screenStreamSync.startScreenStream(createConfig, encoderConfig);
|
|
221
221
|
case 6:
|
|
222
222
|
_context3.next = 8;
|
|
223
223
|
break;
|
|
@@ -232,11 +232,15 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
232
232
|
return this._getExcludeWindows();
|
|
233
233
|
case 9:
|
|
234
234
|
excludeWindows = _context3.sent;
|
|
235
|
+
dimensions = encoderConfig.dimensions, frameRate = encoderConfig.frameRate, bitrate = encoderConfig.bitrate;
|
|
235
236
|
_context3.next = 10;
|
|
236
237
|
return this.strategy.startScreenCapture({
|
|
237
238
|
sourceId: videoSourceId,
|
|
238
239
|
captureType: captureType,
|
|
239
|
-
excludeWindows: excludeWindows
|
|
240
|
+
excludeWindows: excludeWindows,
|
|
241
|
+
dimensions: dimensions,
|
|
242
|
+
frameRate: frameRate,
|
|
243
|
+
bitrate: bitrate
|
|
240
244
|
});
|
|
241
245
|
case 10:
|
|
242
246
|
_context3.next = 12;
|
|
@@ -254,12 +258,6 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
254
258
|
_context3.next = 13;
|
|
255
259
|
return this.strategy.startLoopbackCapture({});
|
|
256
260
|
case 13:
|
|
257
|
-
if (this.isSharingInSmoothMode) {
|
|
258
|
-
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.SMOOTH);
|
|
259
|
-
} else {
|
|
260
|
-
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.CLEARITY);
|
|
261
|
-
}
|
|
262
|
-
case 14:
|
|
263
261
|
case "end":
|
|
264
262
|
return _context3.stop();
|
|
265
263
|
}
|
|
@@ -300,7 +298,7 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
300
298
|
key: "replaceShare",
|
|
301
299
|
value: function () {
|
|
302
300
|
var _replaceShare = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(_ref2) {
|
|
303
|
-
var videoSourceId, captureType, screenTrack, excludeWindows, _t3;
|
|
301
|
+
var videoSourceId, captureType, screenTrack, excludeWindows, encoderConfig, dimensions, frameRate, bitrate, _t3;
|
|
304
302
|
return _regenerator["default"].wrap(function (_context5) {
|
|
305
303
|
while (1) switch (_context5.prev = _context5.next) {
|
|
306
304
|
case 0:
|
|
@@ -325,11 +323,16 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
325
323
|
return this._getExcludeWindows();
|
|
326
324
|
case 3:
|
|
327
325
|
excludeWindows = _context5.sent;
|
|
326
|
+
encoderConfig = this._getEncoderConfig();
|
|
327
|
+
dimensions = encoderConfig.dimensions, frameRate = encoderConfig.frameRate, bitrate = encoderConfig.bitrate;
|
|
328
328
|
_context5.next = 4;
|
|
329
329
|
return this.strategy.replaceScreenCaptureSource({
|
|
330
330
|
sourceId: videoSourceId,
|
|
331
331
|
captureType: captureType,
|
|
332
|
-
excludeWindows: excludeWindows
|
|
332
|
+
excludeWindows: excludeWindows,
|
|
333
|
+
dimensions: dimensions,
|
|
334
|
+
frameRate: frameRate,
|
|
335
|
+
bitrate: bitrate
|
|
333
336
|
});
|
|
334
337
|
case 4:
|
|
335
338
|
if (!this._isSharingWithAudio) {
|
|
@@ -416,6 +419,30 @@ var FcrUIScreenShareProviderImpl = exports.FcrUIScreenShareProviderImpl = /*#__P
|
|
|
416
419
|
}
|
|
417
420
|
return _getExcludeWindows;
|
|
418
421
|
}()
|
|
422
|
+
}, {
|
|
423
|
+
key: "_getEncoderConfig",
|
|
424
|
+
value: function _getEncoderConfig() {
|
|
425
|
+
var dimensions;
|
|
426
|
+
var frameRate;
|
|
427
|
+
var bitrate;
|
|
428
|
+
if (this.isSharingInSmoothMode) {
|
|
429
|
+
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.SMOOTH);
|
|
430
|
+
dimensions = _defaultConfig.screenCaptureSmoothConfig.dimensions;
|
|
431
|
+
frameRate = _defaultConfig.screenCaptureSmoothConfig.frameRate;
|
|
432
|
+
bitrate = _defaultConfig.screenCaptureSmoothConfig.bitrate;
|
|
433
|
+
} else {
|
|
434
|
+
this._streamControl.setScreenScenario(_type.AgoraRtcScreenScenarioType.CLEARITY);
|
|
435
|
+
dimensions = _defaultConfig.screenCaptureClearityConfig.dimensions;
|
|
436
|
+
frameRate = _defaultConfig.screenCaptureClearityConfig.frameRate;
|
|
437
|
+
bitrate = _defaultConfig.screenCaptureClearityConfig.bitrate;
|
|
438
|
+
}
|
|
439
|
+
return {
|
|
440
|
+
dimensions: dimensions,
|
|
441
|
+
frameRate: frameRate,
|
|
442
|
+
bitrate: bitrate,
|
|
443
|
+
isMirror: false
|
|
444
|
+
};
|
|
445
|
+
}
|
|
419
446
|
}]);
|
|
420
447
|
}(_provider.FcrUIScreenShareProviderBase);
|
|
421
448
|
_FcrUIScreenShareProviderImpl = FcrUIScreenShareProviderImpl;
|
|
@@ -49,20 +49,12 @@ var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy =
|
|
|
49
49
|
}
|
|
50
50
|
if (state === _fcrCore.FcrMediaSourceState.CLOSE) {
|
|
51
51
|
_this._screenTrack = null;
|
|
52
|
-
|
|
53
|
-
// this.observable.notifyObservers('onScreenCaptureStopped', sourceId);
|
|
54
|
-
|
|
55
52
|
if (!_this._isReplacing) {
|
|
56
53
|
_this.observable.notifyObservers('onScreenCaptureStopped', sourceId);
|
|
57
54
|
}
|
|
58
55
|
}
|
|
59
56
|
if (state === _fcrCore.FcrMediaSourceState.OPEN) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (_this._isReplacing) {
|
|
63
|
-
_this._isReplacing = false;
|
|
64
|
-
_this.observable.notifyObservers('onScreenCaptureReplaced', sourceId);
|
|
65
|
-
} else {
|
|
57
|
+
if (!_this._isReplacing) {
|
|
66
58
|
_this.observable.notifyObservers('onScreenCaptureStarted', sourceId);
|
|
67
59
|
}
|
|
68
60
|
}
|
|
@@ -95,7 +87,7 @@ var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy =
|
|
|
95
87
|
key: "replaceScreenCaptureSource",
|
|
96
88
|
value: function () {
|
|
97
89
|
var _replaceScreenCaptureSource = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) {
|
|
98
|
-
var sourceId, screenTrack;
|
|
90
|
+
var sourceId, screenTrack, _t;
|
|
99
91
|
return _regenerator["default"].wrap(function (_context) {
|
|
100
92
|
while (1) switch (_context.prev = _context.next) {
|
|
101
93
|
case 0:
|
|
@@ -116,13 +108,24 @@ var FcrUIBrowserScreenShareStrategy = exports.FcrUIBrowserScreenShareStrategy =
|
|
|
116
108
|
return this._stopTrackAndWaitUntilSuccess(screenTrack);
|
|
117
109
|
case 2:
|
|
118
110
|
screenTrack = this._mediaControl.getScreenTrack(sourceId);
|
|
119
|
-
_context.
|
|
111
|
+
_context.prev = 3;
|
|
112
|
+
_context.next = 4;
|
|
120
113
|
return this._startTrackAndWaitUntilSuccess(screenTrack);
|
|
121
|
-
case
|
|
114
|
+
case 4:
|
|
115
|
+
this.observable.notifyObservers('onScreenCaptureReplaced', sourceId);
|
|
116
|
+
_context.next = 6;
|
|
117
|
+
break;
|
|
118
|
+
case 5:
|
|
119
|
+
_context.prev = 5;
|
|
120
|
+
_t = _context["catch"](3);
|
|
121
|
+
this.observable.notifyObservers('onScreenCaptureStopped', sourceId);
|
|
122
|
+
case 6:
|
|
123
|
+
this._isReplacing = false;
|
|
124
|
+
case 7:
|
|
122
125
|
case "end":
|
|
123
126
|
return _context.stop();
|
|
124
127
|
}
|
|
125
|
-
}, _callee, this);
|
|
128
|
+
}, _callee, this, [[3, 5]]);
|
|
126
129
|
}));
|
|
127
130
|
function replaceScreenCaptureSource(_x) {
|
|
128
131
|
return _replaceScreenCaptureSource.apply(this, arguments);
|
|
@@ -10,13 +10,13 @@ export declare class FcrUIElectronScreenShareStrategy extends FcrUIScreenShareSt
|
|
|
10
10
|
private _mediaControl;
|
|
11
11
|
private _isReplacing;
|
|
12
12
|
constructor(_objectManager: FcrUIObjectManager);
|
|
13
|
-
startScreenCapture({ sourceId, captureType, excludeWindows, }: FcrUIScreenCaptureStartParams): Promise<void>;
|
|
13
|
+
startScreenCapture({ sourceId, captureType, excludeWindows, dimensions, frameRate, bitrate, }: FcrUIScreenCaptureStartParams): Promise<void>;
|
|
14
14
|
stopScreenCapture(): Promise<void>;
|
|
15
15
|
startLoopbackCapture(params: FcrUIScreenLoopbackCaptureStartParams): Promise<void>;
|
|
16
16
|
stopLoopbackCapture(): Promise<void>;
|
|
17
17
|
getScreenTrack(): FcrScreenTrack | null;
|
|
18
18
|
getLoopbackDeviceId(): string | null;
|
|
19
|
-
replaceScreenCaptureSource({ sourceId, captureType, excludeWindows, }: FcrUIScreenCaptureStartParams): Promise<void>;
|
|
19
|
+
replaceScreenCaptureSource({ sourceId, captureType, excludeWindows, dimensions, frameRate, bitrate, }: FcrUIScreenCaptureStartParams): Promise<void>;
|
|
20
20
|
private _startTrackAndWaitUntilSuccess;
|
|
21
21
|
private _stopTrackAndWaitUntilSuccess;
|
|
22
22
|
}
|
|
@@ -24,7 +24,6 @@ var _logger = require("../../../utilities/logger");
|
|
|
24
24
|
var _type = require("./type");
|
|
25
25
|
var _objectManager2 = require("../../../object-manager");
|
|
26
26
|
var _fcrCore = require("fcr-core");
|
|
27
|
-
var _defaultConfig = require("../../../utilities/default-config");
|
|
28
27
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
|
|
29
28
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
30
29
|
var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy = /*#__PURE__*/function (_FcrUIScreenShareStra) {
|
|
@@ -70,11 +69,11 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
70
69
|
key: "startScreenCapture",
|
|
71
70
|
value: function () {
|
|
72
71
|
var _startScreenCapture = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) {
|
|
73
|
-
var sourceId, captureType, excludeWindows, screenTrack;
|
|
72
|
+
var sourceId, captureType, excludeWindows, dimensions, frameRate, bitrate, screenTrack;
|
|
74
73
|
return _regenerator["default"].wrap(function (_context) {
|
|
75
74
|
while (1) switch (_context.prev = _context.next) {
|
|
76
75
|
case 0:
|
|
77
|
-
sourceId = _ref.sourceId, captureType = _ref.captureType, excludeWindows = _ref.excludeWindows;
|
|
76
|
+
sourceId = _ref.sourceId, captureType = _ref.captureType, excludeWindows = _ref.excludeWindows, dimensions = _ref.dimensions, frameRate = _ref.frameRate, bitrate = _ref.bitrate;
|
|
78
77
|
if (sourceId) {
|
|
79
78
|
_context.next = 1;
|
|
80
79
|
break;
|
|
@@ -83,7 +82,7 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
83
82
|
case 1:
|
|
84
83
|
screenTrack = this._mediaControl.getScreenTrack(sourceId);
|
|
85
84
|
_context.next = 2;
|
|
86
|
-
return this._startTrackAndWaitUntilSuccess(screenTrack, captureType, excludeWindows);
|
|
85
|
+
return this._startTrackAndWaitUntilSuccess(screenTrack, captureType, excludeWindows, dimensions, frameRate, bitrate);
|
|
87
86
|
case 2:
|
|
88
87
|
case "end":
|
|
89
88
|
return _context.stop();
|
|
@@ -162,11 +161,11 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
162
161
|
key: "replaceScreenCaptureSource",
|
|
163
162
|
value: function () {
|
|
164
163
|
var _replaceScreenCaptureSource = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref2) {
|
|
165
|
-
var sourceId, captureType, excludeWindows, screenTrack;
|
|
164
|
+
var sourceId, captureType, excludeWindows, dimensions, frameRate, bitrate, screenTrack;
|
|
166
165
|
return _regenerator["default"].wrap(function (_context3) {
|
|
167
166
|
while (1) switch (_context3.prev = _context3.next) {
|
|
168
167
|
case 0:
|
|
169
|
-
sourceId = _ref2.sourceId, captureType = _ref2.captureType, excludeWindows = _ref2.excludeWindows;
|
|
168
|
+
sourceId = _ref2.sourceId, captureType = _ref2.captureType, excludeWindows = _ref2.excludeWindows, dimensions = _ref2.dimensions, frameRate = _ref2.frameRate, bitrate = _ref2.bitrate;
|
|
170
169
|
if (sourceId) {
|
|
171
170
|
_context3.next = 1;
|
|
172
171
|
break;
|
|
@@ -184,7 +183,7 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
184
183
|
case 2:
|
|
185
184
|
screenTrack = this._mediaControl.getScreenTrack(sourceId);
|
|
186
185
|
_context3.next = 3;
|
|
187
|
-
return this._startTrackAndWaitUntilSuccess(screenTrack, captureType, excludeWindows);
|
|
186
|
+
return this._startTrackAndWaitUntilSuccess(screenTrack, captureType, excludeWindows, dimensions, frameRate, bitrate);
|
|
188
187
|
case 3:
|
|
189
188
|
case "end":
|
|
190
189
|
return _context3.stop();
|
|
@@ -202,12 +201,18 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
202
201
|
var _startTrackAndWaitUntilSuccess2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(screenTrack, captureType) {
|
|
203
202
|
var _this2 = this;
|
|
204
203
|
var excludeWindows,
|
|
204
|
+
dimensions,
|
|
205
|
+
frameRate,
|
|
206
|
+
bitrate,
|
|
205
207
|
p,
|
|
206
208
|
_args4 = arguments;
|
|
207
209
|
return _regenerator["default"].wrap(function (_context4) {
|
|
208
210
|
while (1) switch (_context4.prev = _context4.next) {
|
|
209
211
|
case 0:
|
|
210
212
|
excludeWindows = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : [];
|
|
213
|
+
dimensions = _args4.length > 3 ? _args4[3] : undefined;
|
|
214
|
+
frameRate = _args4.length > 4 ? _args4[4] : undefined;
|
|
215
|
+
bitrate = _args4.length > 5 ? _args4[5] : undefined;
|
|
211
216
|
this._screenTrack = screenTrack;
|
|
212
217
|
p = new Promise(function (resolve, reject) {
|
|
213
218
|
var waitObserver = {
|
|
@@ -229,9 +234,9 @@ var FcrUIElectronScreenShareStrategy = exports.FcrUIElectronScreenShareStrategy
|
|
|
229
234
|
screenTrack.addObserver(this._screenTrackObserver);
|
|
230
235
|
screenTrack.setCaptureParams({
|
|
231
236
|
withAudio: true,
|
|
232
|
-
dimensions:
|
|
233
|
-
frameRate:
|
|
234
|
-
bitrate:
|
|
237
|
+
dimensions: dimensions,
|
|
238
|
+
frameRate: frameRate,
|
|
239
|
+
bitrate: bitrate
|
|
235
240
|
});
|
|
236
241
|
screenTrack.start(captureType, excludeWindows);
|
|
237
242
|
_context4.next = 1;
|
|
@@ -28,6 +28,12 @@ export interface FcrUIScreenCaptureStartParams {
|
|
|
28
28
|
sourceId: string;
|
|
29
29
|
captureType: FcrScreenCaptureType;
|
|
30
30
|
excludeWindows?: string[];
|
|
31
|
+
dimensions: {
|
|
32
|
+
width: number;
|
|
33
|
+
height: number;
|
|
34
|
+
};
|
|
35
|
+
frameRate: number;
|
|
36
|
+
bitrate: number;
|
|
31
37
|
}
|
|
32
38
|
export interface FcrUIScreenLoopbackCaptureStartParams {
|
|
33
39
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { FcrUIManagedObject, FcrUIObjectManager } from '../../object-manager';
|
|
2
|
-
import { FcrScreenStreamCreateConfig
|
|
2
|
+
import { FcrScreenStreamCreateConfig } from 'fcr-core/lib/room-control/stream-control/type';
|
|
3
|
+
import { FcrVideoEncoderConfig } from 'fcr-core/lib/type';
|
|
3
4
|
import { FcrUIScreenStreamUpdateParams } from './type';
|
|
4
5
|
export declare class FcrUIScreenStreamSync implements FcrUIManagedObject {
|
|
5
6
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
@@ -10,7 +11,7 @@ export declare class FcrUIScreenStreamSync implements FcrUIManagedObject {
|
|
|
10
11
|
constructor(objectManager: FcrUIObjectManager);
|
|
11
12
|
release(): void;
|
|
12
13
|
checkIfMyScreenShareStreamExists(): string | null;
|
|
13
|
-
startScreenStream(createConfig: FcrScreenStreamCreateConfig,
|
|
14
|
+
startScreenStream(createConfig: FcrScreenStreamCreateConfig, encoderConfig: FcrVideoEncoderConfig): Promise<void>;
|
|
14
15
|
stopScreenStream(): Promise<void>;
|
|
15
16
|
updateStream({ videoSourceId, audioPublishPrivilege, videoPublishPrivilege, }: FcrUIScreenStreamUpdateParams): Promise<void>;
|
|
16
17
|
isLocalScreenStreamCreated(): boolean;
|
|
@@ -64,12 +64,13 @@ var FcrUIScreenStreamSync = exports.FcrUIScreenStreamSync = /*#__PURE__*/functio
|
|
|
64
64
|
}, {
|
|
65
65
|
key: "startScreenStream",
|
|
66
66
|
value: function () {
|
|
67
|
-
var _startScreenStream = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(createConfig,
|
|
68
|
-
var _t;
|
|
67
|
+
var _startScreenStream = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(createConfig, encoderConfig) {
|
|
68
|
+
var streamId, screenStreamId, _t;
|
|
69
69
|
return _regenerator["default"].wrap(function (_context) {
|
|
70
70
|
while (1) switch (_context.prev = _context.next) {
|
|
71
71
|
case 0:
|
|
72
|
-
|
|
72
|
+
streamId = this._myCurrentScreenShareStreamId;
|
|
73
|
+
if (!streamId) {
|
|
73
74
|
_context.next = 1;
|
|
74
75
|
break;
|
|
75
76
|
}
|
|
@@ -77,8 +78,10 @@ var FcrUIScreenStreamSync = exports.FcrUIScreenStreamSync = /*#__PURE__*/functio
|
|
|
77
78
|
case 1:
|
|
78
79
|
_context.prev = 1;
|
|
79
80
|
_context.next = 2;
|
|
80
|
-
return this._sharingControl.startScreenSharing(createConfig,
|
|
81
|
+
return this._sharingControl.startScreenSharing(createConfig, encoderConfig.dimensions);
|
|
81
82
|
case 2:
|
|
83
|
+
screenStreamId = _context.sent;
|
|
84
|
+
this._streamControl.setVideoEncoderConfig(screenStreamId, encoderConfig, _type.FcrVideoStreamType.HIGH_STREAM);
|
|
82
85
|
_context.next = 4;
|
|
83
86
|
break;
|
|
84
87
|
case 3:
|
|
@@ -112,7 +115,7 @@ var FcrUIScreenStreamSync = exports.FcrUIScreenStreamSync = /*#__PURE__*/functio
|
|
|
112
115
|
return _context2.abrupt("return");
|
|
113
116
|
case 1:
|
|
114
117
|
if (!true) {
|
|
115
|
-
_context2.next =
|
|
118
|
+
_context2.next = 9;
|
|
116
119
|
break;
|
|
117
120
|
}
|
|
118
121
|
if (!this._released) {
|
|
@@ -125,34 +128,41 @@ var FcrUIScreenStreamSync = exports.FcrUIScreenStreamSync = /*#__PURE__*/functio
|
|
|
125
128
|
_context2.next = 3;
|
|
126
129
|
return this._sharingControl.stop();
|
|
127
130
|
case 3:
|
|
128
|
-
return _context2.abrupt("continue",
|
|
131
|
+
return _context2.abrupt("continue", 9);
|
|
129
132
|
case 4:
|
|
130
133
|
_context2.prev = 4;
|
|
131
134
|
_t2 = _context2["catch"](2);
|
|
135
|
+
if (!(_t2 instanceof _type.FcrError && _t2.code === 720404300)) {
|
|
136
|
+
_context2.next = 5;
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
this.logger.error("the screen share stream does not exist,");
|
|
140
|
+
return _context2.abrupt("continue", 9);
|
|
141
|
+
case 5:
|
|
132
142
|
this.logger.error("failed to stop screen share stream, error: ".concat(_t2, ", retry in 1000ms"), _t2);
|
|
133
|
-
_context2.next =
|
|
143
|
+
_context2.next = 6;
|
|
134
144
|
return new Promise(function (resolve) {
|
|
135
145
|
return setTimeout(resolve, 1000);
|
|
136
146
|
});
|
|
137
|
-
case
|
|
138
|
-
_context2.prev =
|
|
147
|
+
case 6:
|
|
148
|
+
_context2.prev = 6;
|
|
139
149
|
if (this._myCurrentScreenShareStreamId) {
|
|
140
|
-
_context2.next =
|
|
150
|
+
_context2.next = 7;
|
|
141
151
|
break;
|
|
142
152
|
}
|
|
143
|
-
return _context2.abrupt("continue",
|
|
144
|
-
case 6:
|
|
145
|
-
return _context2.finish(5);
|
|
153
|
+
return _context2.abrupt("continue", 9);
|
|
146
154
|
case 7:
|
|
155
|
+
return _context2.finish(6);
|
|
156
|
+
case 8:
|
|
147
157
|
_context2.next = 1;
|
|
148
158
|
break;
|
|
149
|
-
case 8:
|
|
150
|
-
this._myCurrentScreenShareStreamId = null;
|
|
151
159
|
case 9:
|
|
160
|
+
this._myCurrentScreenShareStreamId = null;
|
|
161
|
+
case 10:
|
|
152
162
|
case "end":
|
|
153
163
|
return _context2.stop();
|
|
154
164
|
}
|
|
155
|
-
}, _callee2, this, [[2, 4,
|
|
165
|
+
}, _callee2, this, [[2, 4, 6, 8]]);
|
|
156
166
|
}));
|
|
157
167
|
function stopScreenStream() {
|
|
158
168
|
return _stopScreenStream.apply(this, arguments);
|
|
@@ -15,22 +15,24 @@ export declare enum FcrUIScreenShareErrorCode {
|
|
|
15
15
|
* 无法开始屏幕采集
|
|
16
16
|
*/
|
|
17
17
|
CANNOT_START_SCREEN_CAPTURE = 4,
|
|
18
|
-
/**
|
|
19
|
-
* 无法开始声卡采集
|
|
20
|
-
*/
|
|
21
|
-
CANNOT_START_LOOPBACK_CAPTURE = 5,
|
|
22
18
|
/**
|
|
23
19
|
* 无发流权限
|
|
24
20
|
*/
|
|
25
|
-
NO_PUBLISH_PRIVILIGE =
|
|
21
|
+
NO_PUBLISH_PRIVILIGE = 5,
|
|
26
22
|
/**
|
|
27
23
|
* 无屏幕采集权限
|
|
28
24
|
*/
|
|
29
|
-
NO_SCREEN_RECORDING_PERMISSION =
|
|
25
|
+
NO_SCREEN_RECORDING_PERMISSION = 6,
|
|
30
26
|
/**
|
|
31
27
|
* 网络未连接
|
|
32
28
|
*/
|
|
33
|
-
NETWORK_DISCONNECTED =
|
|
29
|
+
NETWORK_DISCONNECTED = 7
|
|
30
|
+
}
|
|
31
|
+
export declare enum FcrUIAudioShareErrorCode {
|
|
32
|
+
/**
|
|
33
|
+
* 无法更新音频流
|
|
34
|
+
*/
|
|
35
|
+
CANNOT_UPDATE_STREAM = 0
|
|
34
36
|
}
|
|
35
37
|
export declare enum FcrUIScreenShareStopReason {
|
|
36
38
|
/**
|