fcr-ui-scene 3.6.4 → 3.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/creator.d.ts +4 -3
- package/lib/creator.js +146 -111
- package/lib/electron/app.js +1 -1
- package/lib/electron/bootstrap-sdk.js +49 -4
- package/lib/electron/injections.d.ts +5 -1
- package/lib/electron/injections.js +14 -2
- package/lib/electron/ipc/type.d.ts +8 -4
- package/lib/electron/ipc/type.js +10 -4
- package/lib/electron/logger.js +1 -1
- package/lib/electron/main.js +5 -2
- package/lib/electron/preload.js +34 -5
- package/lib/fragments/annotation/index.d.ts +2 -2
- package/lib/fragments/annotation/index.js +38 -28
- package/lib/fragments/annotation/libs.d.ts +2 -2
- package/lib/fragments/annotation/store.d.ts +21 -4
- package/lib/fragments/annotation/store.js +281 -84
- package/lib/fragments/annotation/style.css +9 -0
- package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/item.js +1 -1
- package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/pen-panel/index.js +1 -1
- package/lib/{modules/annotation/components → fragments/annotation}/toolbar/store.d.ts +26 -2
- package/lib/{modules/annotation/components → fragments/annotation}/toolbar/store.js +57 -8
- package/lib/{modules/annotation/components → fragments/annotation}/toolbar/view.js +36 -3
- package/lib/fragments/annotation/view.d.ts +1 -0
- package/lib/fragments/annotation/view.js +52 -10
- package/lib/modules/action-bar/components/apps/index.js +54 -38
- package/lib/modules/action-bar/components/chat/index.js +13 -34
- package/lib/modules/action-bar/components/collapse/index.js +1 -1
- package/lib/modules/action-bar/components/leave/index.js +9 -9
- package/lib/modules/action-bar/components/more/index.js +26 -27
- package/lib/modules/action-bar/components/participants/index.js +23 -39
- package/lib/modules/action-bar/components/record/index.js +7 -13
- package/lib/modules/action-bar/components/screen-share/index.js +4 -24
- package/lib/modules/action-bar/components/security/index.js +29 -34
- package/lib/modules/action-bar/components/settings/index.js +13 -19
- package/lib/modules/action-bar/index.d.ts +4 -0
- package/lib/modules/action-bar/index.js +3 -1
- package/lib/modules/action-bar/store.d.ts +16 -6
- package/lib/modules/action-bar/store.js +63 -25
- package/lib/modules/action-bar/types.d.ts +3 -3
- package/lib/modules/action-bar/view.js +2 -3
- 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 +82 -0
- package/lib/modules/annotation/annotation-toolbar-store.js +501 -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 +4 -1
- package/lib/modules/annotation/index.js +20 -22
- package/lib/modules/annotation/store.d.ts +59 -18
- package/lib/modules/annotation/store.js +503 -263
- package/lib/modules/annotation/style.css +10 -0
- package/lib/modules/annotation/view.js +9 -11
- package/lib/modules/chat/chat-room-store.js +5 -2
- package/lib/modules/chat/components/chat-select/index.js +1 -1
- package/lib/modules/chat/components/chat-select/select-item/index.js +10 -3
- package/lib/modules/chat/components/message-list/message-item/index.js +4 -2
- package/lib/modules/chat/index.d.ts +2 -0
- package/lib/modules/chat/index.js +13 -3
- package/lib/modules/chat/store.d.ts +3 -0
- package/lib/modules/chat/store.js +12 -6
- package/lib/modules/chat/types.d.ts +1 -0
- package/lib/modules/chat/types.js +2 -1
- package/lib/modules/chat/util.js +2 -1
- package/lib/modules/chat/view.js +6 -3
- package/lib/modules/{action-bar/components → components}/apps/app-item/index.d.ts +1 -1
- package/lib/modules/components/apps/app-list.d.ts +3 -0
- package/lib/modules/{action-bar/components → components}/apps/app-list.js +2 -4
- package/lib/modules/components/apps/types.d.ts +14 -0
- package/lib/modules/components/apps/types.js +6 -0
- package/lib/modules/components/device-control/components/carmera/index.js +71 -68
- package/lib/modules/components/device-control/components/microphone/index.js +99 -97
- package/lib/modules/components/device-control/store.d.ts +1 -1
- package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +7 -7
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +0 -2
- package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +4 -7
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -1
- package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +19 -36
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +1 -0
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +9 -2
- package/lib/modules/components/member-window/components/member-actions/components/user-info.js +0 -3
- package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +15 -11
- package/lib/modules/components/member-window/components/member-actions/index.js +10 -2
- package/lib/modules/components/member-window/components/member-actions/libs/index.js +2 -2
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +12 -0
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +75 -0
- package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +1 -7
- package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +7 -47
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +12 -0
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.js +68 -0
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +1 -9
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +7 -49
- package/lib/modules/components/member-window/components/video-player/components/zoomable-container.d.ts +15 -0
- package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +255 -0
- 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 +8 -2
- package/lib/modules/components/member-window/index.css +16 -6
- package/lib/modules/components/member-window/index.d.ts +1 -1
- package/lib/modules/components/member-window/index.js +12 -4
- package/lib/modules/components/member-window/types.d.ts +2 -0
- package/lib/modules/components/security-menu/index.js +6 -5
- package/lib/modules/control-bar/components/annotation-button/index.js +21 -8
- package/lib/modules/control-bar/components/more-actions/index.css +13 -0
- package/lib/modules/control-bar/components/more-actions/index.js +1 -1
- package/lib/modules/control-bar/components/share-audio/index.css +90 -0
- package/lib/modules/control-bar/components/share-audio/index.d.ts +15 -0
- package/lib/modules/control-bar/components/share-audio/index.js +173 -0
- package/lib/modules/control-bar/components/share-state-nav/index.css +5 -0
- package/lib/modules/control-bar/components/share-state-nav/index.js +14 -2
- package/lib/modules/control-bar/index.d.ts +2 -0
- package/lib/modules/control-bar/index.js +9 -1
- package/lib/modules/control-bar/store.d.ts +16 -7
- package/lib/modules/control-bar/store.js +36 -12
- package/lib/modules/control-bar/view.d.ts +4 -0
- package/lib/modules/control-bar/view.js +180 -90
- package/lib/modules/device-pretest/store.d.ts +1 -1
- package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -1
- package/lib/modules/dialog/components/dialog-container/index.css +1 -0
- package/lib/modules/dialog/components/dialog-container/index.d.ts +2 -1
- package/lib/modules/dialog/components/dialog-container/index.js +27 -10
- package/lib/modules/dialog/components/host-area-container/index.js +4 -4
- package/lib/modules/dialog/components/normal-window/index.d.ts +19 -0
- package/lib/modules/dialog/components/normal-window/index.js +69 -0
- package/lib/modules/dialog/{components → dialogs}/annotation-tool/index.js +17 -15
- package/lib/modules/dialog/dialogs/chat/components/actions.d.ts +1 -0
- package/lib/modules/dialog/dialogs/chat/components/actions.js +33 -0
- package/lib/modules/dialog/{components → dialogs}/chat/index.d.ts +1 -1
- package/lib/modules/dialog/dialogs/chat/index.js +59 -0
- package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.d.ts +6 -0
- package/lib/modules/dialog/{components → dialogs}/confirm-leave-meeting/index.js +13 -37
- package/lib/modules/dialog/{components → dialogs}/connection-gateway/index.js +19 -12
- package/lib/modules/dialog/{components → dialogs}/control-bar/index.js +2 -2
- package/lib/modules/dialog/{components → dialogs}/device-setting/index.js +20 -13
- package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +12 -0
- package/lib/modules/dialog/dialogs/end-meeting/index.js +45 -0
- package/lib/modules/dialog/{components/interpreter/electron.js → dialogs/interpreter/index.js} +17 -11
- package/lib/modules/dialog/dialogs/invite/index.d.ts +3 -0
- package/lib/modules/dialog/{components → dialogs}/invite/index.js +9 -25
- package/lib/modules/dialog/dialogs/live-streaming/index.d.ts +2 -0
- package/lib/modules/dialog/{components → dialogs}/live-streaming/index.js +11 -34
- package/lib/modules/dialog/dialogs/participant/components/actions.d.ts +1 -0
- package/lib/modules/dialog/dialogs/participant/components/actions.js +32 -0
- package/lib/modules/dialog/dialogs/participant/components/title.d.ts +1 -0
- package/lib/modules/dialog/dialogs/participant/components/title.js +19 -0
- package/lib/modules/dialog/dialogs/participant/index.d.ts +2 -0
- package/lib/modules/dialog/dialogs/participant/index.js +53 -0
- package/lib/modules/dialog/dialogs/pre-setting/index.js +62 -0
- package/lib/modules/dialog/dialogs/rename/index.js +35 -0
- package/lib/modules/dialog/{components → dialogs}/share-screen-selection/index.js +1 -1
- package/lib/modules/dialog/{components → dialogs}/video-window/index.js +11 -8
- package/lib/modules/dialog/{components → dialogs}/whiteboard/index.js +2 -3
- package/lib/modules/dialog/{components → dialogs}/widget/electron.js +1 -1
- package/lib/modules/dialog/{components → dialogs}/widget/index.js +1 -1
- package/lib/modules/dialog/hooks/use-web-drag.d.ts +8 -0
- package/lib/modules/dialog/hooks/use-web-drag.js +73 -0
- package/lib/modules/dialog/hooks/useElectron.d.ts +2 -7
- package/lib/modules/dialog/hooks/useElectron.js +46 -156
- package/lib/modules/dialog/index.d.ts +4 -0
- package/lib/modules/dialog/index.js +4 -2
- package/lib/modules/dialog/level-config.d.ts +11 -0
- package/lib/modules/dialog/level-config.js +21 -0
- package/lib/modules/dialog/store.d.ts +15 -6
- package/lib/modules/dialog/store.js +40 -54
- package/lib/modules/dialog/type.d.ts +15 -12
- package/lib/modules/event-confirm/components/window/index.d.ts +1 -4
- package/lib/modules/event-confirm/components/window/index.js +34 -23
- package/lib/modules/event-confirm/index.d.ts +2 -0
- package/lib/modules/event-confirm/index.js +3 -2
- package/lib/modules/event-confirm/store.d.ts +9 -1
- package/lib/modules/event-confirm/store.js +24 -16
- package/lib/modules/event-confirm/view.js +11 -22
- package/lib/modules/event-sound/index.d.ts +2 -0
- package/lib/modules/event-sound/index.js +8 -1
- package/lib/modules/event-toast/index.css +10 -0
- package/lib/modules/event-toast/store.d.ts +1 -1
- package/lib/modules/event-toast/store.js +17 -15
- package/lib/modules/event-toast/view.js +2 -1
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +4 -2
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +2 -1
- package/lib/modules/interpreter/store.d.ts +1 -0
- package/lib/modules/interpreter/store.js +12 -5
- package/lib/modules/interpreter/view.js +7 -1
- package/lib/modules/layout/components/Aside.js +4 -0
- package/lib/modules/layout/components/Carousel.js +3 -1
- package/lib/modules/layout/components/CommonVideoRenderer.d.ts +3 -1
- package/lib/modules/layout/components/CommonVideoRenderer.js +13 -9
- package/lib/modules/layout/components/Gallery.js +11 -3
- package/lib/modules/layout/index.css +1 -0
- package/lib/modules/layout/index.d.ts +2 -0
- package/lib/modules/layout/index.js +4 -3
- package/lib/modules/layout/store.d.ts +9 -5
- package/lib/modules/layout/store.js +38 -46
- package/lib/modules/participant/components/confirm-input/index.css +4 -0
- package/lib/modules/participant/components/confirm-input/index.d.ts +1 -0
- package/lib/modules/participant/components/confirm-input/index.js +2 -1
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +2 -1
- package/lib/modules/participant/components/participants/components/participants/index.js +11 -3
- package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +7 -3
- package/lib/modules/participant/components/participants/types.d.ts +1 -0
- package/lib/modules/participant/store.d.ts +2 -1
- package/lib/modules/participant/store.js +23 -9
- package/lib/modules/phone-audio-connect/store.d.ts +4 -4
- package/lib/modules/setting/audio-settings/audio-settings.js +6 -17
- package/lib/modules/setting/config.d.ts +16 -0
- package/lib/modules/setting/config.js +17 -1
- package/lib/modules/setting/index.d.ts +2 -4
- package/lib/modules/setting/index.js +7 -16
- package/lib/modules/setting/minutes-settings/minutes-settings.js +0 -4
- package/lib/modules/setting/state/index.js +5 -5
- package/lib/modules/setting/store.d.ts +37 -33
- package/lib/modules/setting/store.js +275 -261
- package/lib/modules/setting/translate-settings/language-select.js +0 -2
- package/lib/modules/setting/video-settings/video-settings-basic.js +6 -6
- package/lib/modules/setting/video-settings/video-settings.js +2 -2
- package/lib/modules/setting/view.js +1 -1
- package/lib/modules/share-screen/components/control-bar/index.css +75 -0
- package/lib/modules/share-screen/components/control-bar/index.d.ts +3 -0
- package/lib/modules/share-screen/components/control-bar/index.js +88 -0
- package/lib/modules/share-screen/components/control-bar/items/annotation-edit-btn/index.d.ts +8 -0
- package/lib/modules/share-screen/components/control-bar/items/annotation-edit-btn/index.js +46 -0
- package/lib/modules/share-screen/components/control-bar/items/full-container-btn/index.d.ts +6 -0
- package/lib/modules/share-screen/components/control-bar/items/full-container-btn/index.js +32 -0
- package/lib/modules/share-screen/components/control-bar/items/original-size-btn/index.d.ts +6 -0
- package/lib/modules/share-screen/components/control-bar/items/original-size-btn/index.js +32 -0
- package/lib/modules/share-screen/components/control-bar/items/zoom-in-btn/index.d.ts +6 -0
- package/lib/modules/share-screen/components/control-bar/items/zoom-in-btn/index.js +32 -0
- package/lib/modules/share-screen/components/control-bar/items/zoom-out-btn/index.d.ts +6 -0
- package/lib/modules/share-screen/components/control-bar/items/zoom-out-btn/index.js +32 -0
- package/lib/modules/share-screen/components/selection/index.js +28 -14
- package/lib/modules/share-screen/components/share-scenario/index.d.ts +5 -0
- package/lib/modules/share-screen/components/share-scenario/index.js +47 -0
- package/lib/modules/share-screen/index.d.ts +4 -2
- package/lib/modules/share-screen/index.js +11 -2
- package/lib/modules/share-screen/store.d.ts +32 -11
- package/lib/modules/share-screen/store.js +273 -192
- package/lib/modules/share-screen/view.js +2 -2
- package/lib/modules/state-bar/index.js +2 -3
- package/lib/modules/state-bar/layout-config.d.ts +2 -4
- package/lib/modules/state-bar/layout-config.js +10 -5
- package/lib/modules/state-bar/live-streaming-state.js +0 -1
- package/lib/modules/state-bar/store.d.ts +7 -7
- package/lib/modules/state-bar/store.js +17 -15
- package/lib/modules/state-bar/view.js +19 -23
- package/lib/modules/video-window/components/members/index.js +3 -2
- package/lib/modules/video-window/index.js +0 -3
- package/lib/modules/waiting-room-layout/index.css +3 -3
- package/lib/modules/waiting-room-layout/index.js +2 -2
- package/lib/modules/waiting-room-layout/view.js +1 -0
- package/lib/modules/whiteboard/components/control-bar/index.js +2 -2
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +4 -1
- package/lib/modules/whiteboard/components/control-bar/store.js +4 -2
- package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +4 -4
- package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +0 -14
- package/lib/modules/whiteboard/components/toolbar/hooks/index.js +4 -155
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +4 -2
- package/lib/modules/whiteboard/components/toolbar/store.js +37 -25
- package/lib/modules/whiteboard/components/toolbar/style.css +1 -0
- package/lib/modules/whiteboard/index.d.ts +3 -1
- package/lib/modules/whiteboard/index.js +26 -23
- package/lib/modules/widget/view.js +4 -0
- package/lib/providers/ability-provider.d.ts +2 -0
- package/lib/providers/annotation-provider.d.ts +43 -47
- package/lib/providers/annotation-provider.js +94 -142
- package/lib/providers/app-list-provider.d.ts +98 -0
- package/lib/providers/app-list-provider.js +251 -0
- package/lib/providers/device-provider.d.ts +31 -23
- package/lib/providers/device-provider.js +495 -444
- package/lib/providers/device-stream-provider.js +2 -2
- package/lib/providers/event-provider.d.ts +0 -4
- package/lib/providers/event-provider.js +0 -10
- package/lib/providers/interpreter-provider.js +10 -7
- package/lib/providers/privilege-provider.d.ts +1 -1
- package/lib/providers/privilege-provider.js +3 -2
- package/lib/providers/renderer-provider.d.ts +1 -0
- package/lib/providers/renderer-provider.js +7 -2
- package/lib/providers/room-provider.d.ts +5 -1
- package/lib/providers/room-provider.js +44 -16
- package/lib/providers/screen-share-provider.d.ts +73 -17
- package/lib/providers/screen-share-provider.js +222 -100
- package/lib/providers/sharing-provider.d.ts +0 -1
- package/lib/providers/sharing-provider.js +3 -9
- package/lib/providers/user-setting-storage-provider.d.ts +1 -0
- package/lib/providers/user-setting-storage-provider.js +5 -12
- package/lib/providers/widget-provider.d.ts +19 -0
- package/lib/providers/widget-provider.js +28 -2
- package/lib/runtime.d.ts +10 -1
- package/lib/scenes/main-scene.d.ts +12 -2
- package/lib/scenes/main-scene.js +54 -28
- package/lib/scenes/waiting-scene.d.ts +11 -0
- package/lib/scenes/waiting-scene.js +34 -8
- package/lib/schema.d.ts +6 -0
- package/lib/schema.js +5 -1
- package/lib/shared-data-source/annotation-data.d.ts +17 -0
- package/lib/shared-data-source/annotation-data.js +110 -0
- 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/config.d.ts +26 -7
- package/lib/shared-data-source/config.js +29 -11
- package/lib/shared-data-source/confirm-data.d.ts +25 -0
- package/lib/shared-data-source/confirm-data.js +97 -0
- package/lib/shared-data-source/interpreter.d.ts +1 -0
- package/lib/shared-data-source/layout-data.d.ts +2 -0
- package/lib/shared-data-source/layout-data.js +14 -3
- package/lib/shared-data-source/meeting-time.d.ts +23 -1
- package/lib/shared-data-source/meeting-time.js +160 -43
- package/lib/shared-data-source/member-data.d.ts +10 -9
- package/lib/shared-data-source/member-data.js +55 -48
- package/lib/shared-data-source/screen-share-data.d.ts +100 -17
- package/lib/shared-data-source/screen-share-data.js +142 -22
- package/lib/shared-data-source/setting.d.ts +36 -4
- package/lib/shared-data-source/setting.js +92 -57
- package/lib/shared-data-source/video-window.d.ts +3 -0
- package/lib/shared-data-source/video-window.js +52 -30
- package/lib/shared-data-source/waiting-room.js +4 -2
- package/lib/translations/enUS.d.ts +62 -7
- package/lib/translations/enUS.js +71 -14
- package/lib/translations/zhCN.d.ts +62 -7
- package/lib/translations/zhCN.js +73 -16
- package/lib/type.d.ts +23 -5
- package/lib/type.js +6 -2
- package/lib/ui-manager.d.ts +5 -16
- package/lib/ui-manager.js +15 -57
- package/lib/ui-scene.d.ts +31 -6
- package/lib/ui-scene.js +180 -169
- package/lib/utilities/constant.d.ts +67 -63
- package/lib/utilities/constant.js +65 -61
- package/lib/utilities/dialog-utils.d.ts +66 -0
- package/lib/utilities/dialog-utils.js +188 -0
- package/lib/utilities/logger.js +3 -3
- package/lib/utilities/meeting-detail.js +1 -1
- package/lib/utilities/parameters.d.ts +1 -0
- package/lib/utilities/parameters.js +5 -1
- package/lib/utilities/renderer-event.d.ts +1 -1
- package/lib/utilities/screen-capture-permission.d.ts +1 -0
- package/lib/utilities/screen-capture-permission.js +9 -1
- package/lib/utilities/tools.d.ts +0 -66
- package/lib/utilities/tools.js +9 -186
- package/package.json +5 -6
- package/public/index.html +11 -1
- package/lib/modules/action-bar/components/apps/app-list.d.ts +0 -3
- package/lib/modules/action-bar/components/apps/useAppItemOptions.d.ts +0 -17
- package/lib/modules/action-bar/components/apps/useAppItemOptions.js +0 -30
- package/lib/modules/action-bar/components/apps/useBeautyBackground.d.ts +0 -10
- package/lib/modules/action-bar/components/apps/useBeautyBackground.js +0 -36
- package/lib/modules/action-bar/components/apps/useInterpreter.d.ts +0 -14
- package/lib/modules/action-bar/components/apps/useInterpreter.js +0 -37
- package/lib/modules/action-bar/components/apps/useLiveStreaming.d.ts +0 -16
- package/lib/modules/action-bar/components/apps/useLiveStreaming.js +0 -41
- package/lib/modules/action-bar/components/apps/useWidgetList.d.ts +0 -10
- package/lib/modules/action-bar/components/apps/useWidgetList.js +0 -39
- package/lib/modules/annotation/components/control-bar/index.css +0 -48
- package/lib/modules/annotation/components/control-bar/index.d.ts +0 -3
- package/lib/modules/annotation/components/control-bar/index.js +0 -142
- package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
- package/lib/modules/annotation/components/toolbar/index.js +0 -1
- package/lib/modules/dialog/components/chat/electron.d.ts +0 -2
- package/lib/modules/dialog/components/chat/electron.js +0 -35
- package/lib/modules/dialog/components/chat/index.js +0 -67
- package/lib/modules/dialog/components/confirm-leave-meeting/index.d.ts +0 -6
- package/lib/modules/dialog/components/connection-gateway/electron.d.ts +0 -5
- package/lib/modules/dialog/components/connection-gateway/electron.js +0 -33
- package/lib/modules/dialog/components/device-setting/electron.d.ts +0 -2
- package/lib/modules/dialog/components/device-setting/electron.js +0 -37
- package/lib/modules/dialog/components/interpreter/electron.d.ts +0 -2
- package/lib/modules/dialog/components/interpreter/index.js +0 -33
- package/lib/modules/dialog/components/invite/index.d.ts +0 -3
- package/lib/modules/dialog/components/live-streaming/index.d.ts +0 -4
- package/lib/modules/dialog/components/participant/electron.d.ts +0 -2
- package/lib/modules/dialog/components/participant/electron.js +0 -35
- package/lib/modules/dialog/components/participant/index.d.ts +0 -2
- package/lib/modules/dialog/components/participant/index.js +0 -65
- package/lib/modules/dialog/components/pre-setting/electron.d.ts +0 -2
- package/lib/modules/dialog/components/pre-setting/electron.js +0 -51
- package/lib/modules/dialog/components/pre-setting/index.js +0 -38
- package/lib/modules/dialog/components/pre-setting-container/component/body.d.ts +0 -8
- package/lib/modules/dialog/components/pre-setting-container/component/body.js +0 -78
- package/lib/modules/dialog/components/pre-setting-container/index.css +0 -82
- package/lib/modules/dialog/components/pre-setting-container/index.d.ts +0 -18
- package/lib/modules/dialog/components/pre-setting-container/index.js +0 -116
- package/lib/modules/dialog/components/rename/index.js +0 -72
- package/lib/modules/dialog/dialogs.d.ts +0 -3
- package/lib/modules/dialog/dialogs.js +0 -28
- package/lib/utilities/setting-config-storage.d.ts +0 -18
- package/lib/utilities/setting-config-storage.js +0 -133
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/color-panel/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/color-panel/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/libs.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/item.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/style.css +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/style.css +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/pen-panel/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/index.d.ts +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/index.js +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/style.css +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/style.css +0 -0
- /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/view.d.ts +0 -0
- /package/lib/modules/{action-bar/components → components}/apps/app-item/index.css +0 -0
- /package/lib/modules/{action-bar/components → components}/apps/app-item/index.js +0 -0
- /package/lib/modules/{action-bar/components → components}/apps/index.css +0 -0
- /package/lib/modules/dialog/{components → dialogs}/annotation-tool/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/confirm/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/confirm/index.js +0 -0
- /package/lib/modules/dialog/{components → dialogs}/connection-gateway/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/connection-gateway/tabs.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/connection-gateway/tabs.js +0 -0
- /package/lib/modules/dialog/{components → dialogs}/control-bar/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/device-setting/index.css +0 -0
- /package/lib/modules/dialog/{components → dialogs}/device-setting/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/interpreter/index.css +0 -0
- /package/lib/modules/dialog/{components → dialogs}/interpreter/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/pre-setting/index.css +0 -0
- /package/lib/modules/dialog/{components → dialogs}/pre-setting/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/rename/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/share-screen-selection/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/bg1.png +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/bg2.png +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/fcr_png_host.png +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/electron.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/electron.js +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/index.css +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/system-preference/index.js +0 -0
- /package/lib/modules/dialog/{components → dialogs}/toast/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/toast/index.js +0 -0
- /package/lib/modules/dialog/{components → dialogs}/video-window/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/whiteboard/index.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/widget/electron.d.ts +0 -0
- /package/lib/modules/dialog/{components → dialogs}/widget/index.d.ts +0 -0
|
@@ -61,7 +61,7 @@ var _base = require("../base");
|
|
|
61
61
|
var _mobx = require("mobx");
|
|
62
62
|
var _parameters = require("../utilities/parameters");
|
|
63
63
|
var _FcrUISharedLayoutDataSourceImpl;
|
|
64
|
-
var _initProto, _init__layoutSize, _init_asideLayout, _init__chatRenderAt, _init__participantsRenderAt, _setLayoutSizeDecs, _ref;
|
|
64
|
+
var _initProto, _init__layoutSize, _init_asideLayout, _init__chatRenderAt, _init__participantsRenderAt, _init_endMeetingPopoverOpened, _setLayoutSizeDecs, _ref;
|
|
65
65
|
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; }
|
|
66
66
|
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; }
|
|
67
67
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
@@ -78,6 +78,7 @@ var _A = /*#__PURE__*/new WeakMap();
|
|
|
78
78
|
var _B = /*#__PURE__*/new WeakMap();
|
|
79
79
|
var _C = /*#__PURE__*/new WeakMap();
|
|
80
80
|
var _D = /*#__PURE__*/new WeakMap();
|
|
81
|
+
var _E = /*#__PURE__*/new WeakMap();
|
|
81
82
|
_ref = (_setLayoutSizeDecs = [_mobx.action, _mobx.action.bound], "_layoutSize");
|
|
82
83
|
var FcrUISharedLayoutDataSourceImpl = exports.FcrUISharedLayoutDataSourceImpl = /*#__PURE__*/function () {
|
|
83
84
|
function FcrUISharedLayoutDataSourceImpl(sharedConfigDataSource) {
|
|
@@ -86,6 +87,7 @@ var FcrUISharedLayoutDataSourceImpl = exports.FcrUISharedLayoutDataSourceImpl =
|
|
|
86
87
|
_classPrivateFieldInitSpec(this, _B, _init_asideLayout(this));
|
|
87
88
|
_classPrivateFieldInitSpec(this, _C, _init__chatRenderAt(this, 'aside'));
|
|
88
89
|
_classPrivateFieldInitSpec(this, _D, _init__participantsRenderAt(this, 'aside'));
|
|
90
|
+
_classPrivateFieldInitSpec(this, _E, _init_endMeetingPopoverOpened(this, false));
|
|
89
91
|
this._sharedConfigDataSource = sharedConfigDataSource;
|
|
90
92
|
var defaultVideoGallerySize = (0, _parameters.getDefaultVideoGallerySize)(this._sharedConfigDataSource.creatorConfig.parameters);
|
|
91
93
|
if (defaultVideoGallerySize) {
|
|
@@ -131,6 +133,14 @@ var FcrUISharedLayoutDataSourceImpl = exports.FcrUISharedLayoutDataSourceImpl =
|
|
|
131
133
|
set: function set(v) {
|
|
132
134
|
_classPrivateFieldSet(_D, this, v);
|
|
133
135
|
}
|
|
136
|
+
}, {
|
|
137
|
+
key: "endMeetingPopoverOpened",
|
|
138
|
+
get: function get() {
|
|
139
|
+
return _classPrivateFieldGet(_E, this);
|
|
140
|
+
},
|
|
141
|
+
set: function set(v) {
|
|
142
|
+
_classPrivateFieldSet(_E, this, v);
|
|
143
|
+
}
|
|
134
144
|
}, {
|
|
135
145
|
key: "setChatRenderAt",
|
|
136
146
|
value: function setChatRenderAt(renderPosition) {
|
|
@@ -169,10 +179,11 @@ var FcrUISharedLayoutDataSourceImpl = exports.FcrUISharedLayoutDataSourceImpl =
|
|
|
169
179
|
}]);
|
|
170
180
|
}();
|
|
171
181
|
_FcrUISharedLayoutDataSourceImpl = FcrUISharedLayoutDataSourceImpl;
|
|
172
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedLayoutDataSourceImpl, [[_mobx.observable, 1, "_layoutSize"], [_mobx.observable, 1, "asideLayout"], [_mobx.observable, 1, "_chatRenderAt"], [_mobx.observable, 1, "_participantsRenderAt"], [_setLayoutSizeDecs, 18, "setLayoutSize"]], []).e,
|
|
182
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedLayoutDataSourceImpl, [[_mobx.observable, 1, "_layoutSize"], [_mobx.observable, 1, "asideLayout"], [_mobx.observable, 1, "_chatRenderAt"], [_mobx.observable, 1, "_participantsRenderAt"], [_mobx.observable, 1, "endMeetingPopoverOpened"], [_setLayoutSizeDecs, 18, "setLayoutSize"]], []).e, 6);
|
|
173
183
|
_init__layoutSize = _applyDecs$e[0];
|
|
174
184
|
_init_asideLayout = _applyDecs$e[1];
|
|
175
185
|
_init__chatRenderAt = _applyDecs$e[2];
|
|
176
186
|
_init__participantsRenderAt = _applyDecs$e[3];
|
|
177
|
-
|
|
187
|
+
_init_endMeetingPopoverOpened = _applyDecs$e[4];
|
|
188
|
+
_initProto = _applyDecs$e[5];
|
|
178
189
|
(0, _base.registerDependency)('sharedLayoutDataSource');
|
|
@@ -50,11 +50,33 @@ export declare class FcrUIMeetingTimeSharedDataSourceImpl implements FcrUIMeetin
|
|
|
50
50
|
accessor _totalMins: number;
|
|
51
51
|
accessor _totalHoursText: string;
|
|
52
52
|
accessor _totalMinsText: string;
|
|
53
|
-
private
|
|
53
|
+
private _timer;
|
|
54
54
|
private _roomId;
|
|
55
|
+
private _enterTime;
|
|
56
|
+
private _scheduleDuration;
|
|
57
|
+
private _localMeetingTimeKey;
|
|
58
|
+
private _cachedTranslations;
|
|
59
|
+
private _lastMeetingDuration;
|
|
55
60
|
constructor({ mainRoomControl }: {
|
|
56
61
|
mainRoomControl: FcrMainRoomControl;
|
|
57
62
|
});
|
|
63
|
+
private _initEnterTime;
|
|
64
|
+
/**
|
|
65
|
+
* 获取localStorage中有效的进入时间
|
|
66
|
+
* @returns 有效的时间戳或null
|
|
67
|
+
*/
|
|
68
|
+
private _getValidStoredTime;
|
|
69
|
+
/**
|
|
70
|
+
* 安全地保存进入时间到localStorage
|
|
71
|
+
* @param time 要保存的时间戳
|
|
72
|
+
*/
|
|
73
|
+
private _saveEnterTime;
|
|
74
|
+
/**
|
|
75
|
+
* 安全地移除localStorage中的进入时间
|
|
76
|
+
*/
|
|
77
|
+
private _removeStoredTime;
|
|
78
|
+
private _updateMeetingTime;
|
|
79
|
+
private _formatMeetingTime;
|
|
58
80
|
get totalHourText(): string;
|
|
59
81
|
get totalMinuteText(): string;
|
|
60
82
|
get status(): MeetingStatus;
|
|
@@ -39,9 +39,7 @@ require("core-js/modules/es.error.to-string.js");
|
|
|
39
39
|
require("core-js/modules/es.array.concat.js");
|
|
40
40
|
require("core-js/modules/es.array.iterator.js");
|
|
41
41
|
require("core-js/modules/es.date.now.js");
|
|
42
|
-
require("core-js/modules/es.date.to-json.js");
|
|
43
42
|
require("core-js/modules/es.date.to-string.js");
|
|
44
|
-
require("core-js/modules/es.json.stringify.js");
|
|
45
43
|
require("core-js/modules/es.number.constructor.js");
|
|
46
44
|
require("core-js/modules/es.number.is-nan.js");
|
|
47
45
|
require("core-js/modules/es.object.to-string.js");
|
|
@@ -104,49 +102,47 @@ var FcrUIMeetingTimeSharedDataSourceImpl = exports.FcrUIMeetingTimeSharedDataSou
|
|
|
104
102
|
_classPrivateFieldInitSpec(this, _F, _init__totalMins(this, 0));
|
|
105
103
|
_classPrivateFieldInitSpec(this, _G, _init__totalHoursText(this, '0'));
|
|
106
104
|
_classPrivateFieldInitSpec(this, _H, _init__totalMinsText(this, '0'));
|
|
105
|
+
(0, _defineProperty2["default"])(this, "_timer", null);
|
|
107
106
|
(0, _defineProperty2["default"])(this, "_roomId", '');
|
|
107
|
+
// 性能优化:缓存相关变量
|
|
108
|
+
(0, _defineProperty2["default"])(this, "_enterTime", 0);
|
|
109
|
+
(0, _defineProperty2["default"])(this, "_scheduleDuration", 0);
|
|
110
|
+
(0, _defineProperty2["default"])(this, "_localMeetingTimeKey", '');
|
|
111
|
+
(0, _defineProperty2["default"])(this, "_cachedTranslations", {
|
|
112
|
+
hour: '',
|
|
113
|
+
minutes: ''
|
|
114
|
+
});
|
|
115
|
+
(0, _defineProperty2["default"])(this, "_lastMeetingDuration", 0);
|
|
116
|
+
// 时间常量定义 (单位:秒)
|
|
117
|
+
var ONE_DAY_SECONDS = 24 * 60 * 60; // 一天的秒数
|
|
108
118
|
var roomId = ((_mainRoomControl$getR = mainRoomControl.getRoomInfo()) === null || _mainRoomControl$getR === void 0 ? void 0 : _mainRoomControl$getR.roomId) || '';
|
|
109
|
-
|
|
119
|
+
|
|
120
|
+
// getRoomSchedule()?.duration 返回的是秒数
|
|
121
|
+
var durationInSeconds = ((_mainRoomControl$getR2 = mainRoomControl.getRoomSchedule()) === null || _mainRoomControl$getR2 === void 0 ? void 0 : _mainRoomControl$getR2.duration) || ONE_DAY_SECONDS;
|
|
110
122
|
if (!roomId) {
|
|
111
123
|
return;
|
|
112
|
-
} else {
|
|
113
|
-
this._roomId = roomId;
|
|
114
124
|
}
|
|
115
|
-
|
|
116
|
-
|
|
125
|
+
this._roomId = roomId;
|
|
126
|
+
|
|
127
|
+
// 预缓存翻译文本
|
|
128
|
+
this._cachedTranslations = {
|
|
129
|
+
hour: (0, _i18n.transI18n)('fmt_statusbar_label_hour'),
|
|
130
|
+
minutes: (0, _i18n.transI18n)('fmt_statusbar_label_minutes')
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
// 预计算固定值 (保持为秒数)
|
|
134
|
+
this._localMeetingTimeKey = "enter-room-".concat(this._roomId);
|
|
135
|
+
this._scheduleDuration = durationInSeconds;
|
|
136
|
+
|
|
137
|
+
// dayjs.duration() 需要毫秒数,所以这里乘以1000
|
|
138
|
+
if (durationInSeconds > 0) {
|
|
139
|
+
this._setTotalHoursAndMinutes(durationInSeconds * 1000);
|
|
117
140
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
var enterTimeNum = Number(enterTime);
|
|
124
|
-
if (!Number.isNaN(enterTimeNum)) {
|
|
125
|
-
var diff = currentTimeStamp - enterTimeNum;
|
|
126
|
-
var meetingDuration = Math.floor(diff / 1000);
|
|
127
|
-
var oneDayDuration = 86400000; // 一天的毫秒数
|
|
128
|
-
var serverDuration = duration || 0;
|
|
129
|
-
var computDuration = serverDuration <= 0 ? oneDayDuration : serverDuration;
|
|
130
|
-
var scheduleDuration = computDuration / 1000;
|
|
131
|
-
var remainTime = scheduleDuration - meetingDuration;
|
|
132
|
-
var currentStatus = remainTime > 600 ? MeetingStatus.NORMAL : remainTime > 0 ? MeetingStatus.SOON_TO_END : MeetingStatus.OVERTIME;
|
|
133
|
-
_this._setStatues(currentStatus);
|
|
134
|
-
var showHour = meetingDuration / 60 > 60;
|
|
135
|
-
var h = meetingDuration / 3600;
|
|
136
|
-
var m = showHour ? meetingDuration % 3600 / 60 : meetingDuration / 60;
|
|
137
|
-
var s = meetingDuration % 60;
|
|
138
|
-
var hours = Math.floor(Math.max(h, 0)).toString().padStart(2, '0');
|
|
139
|
-
var mins = Math.floor(Math.max(m, 0)).toString().padStart(2, '0');
|
|
140
|
-
var seconds = Math.max(s, 0).toString().padStart(2, '0');
|
|
141
|
-
if (showHour) {
|
|
142
|
-
_this._setMeetingTime("".concat(hours, ":").concat(mins, ":").concat(seconds));
|
|
143
|
-
} else {
|
|
144
|
-
_this._setMeetingTime("".concat(mins, ":").concat(seconds));
|
|
145
|
-
}
|
|
146
|
-
} else {
|
|
147
|
-
localStorage.setItem(localMeetingTimeKey, JSON.stringify(Number(new Date())));
|
|
148
|
-
}
|
|
149
|
-
}
|
|
141
|
+
|
|
142
|
+
// 初始化进入时间
|
|
143
|
+
this._initEnterTime();
|
|
144
|
+
this._timer = window.setInterval(function () {
|
|
145
|
+
_this._updateMeetingTime();
|
|
150
146
|
}, 1000);
|
|
151
147
|
}
|
|
152
148
|
return (0, _createClass2["default"])(FcrUIMeetingTimeSharedDataSourceImpl, [{
|
|
@@ -213,6 +209,118 @@ var FcrUIMeetingTimeSharedDataSourceImpl = exports.FcrUIMeetingTimeSharedDataSou
|
|
|
213
209
|
set: function set(v) {
|
|
214
210
|
_classPrivateFieldSet(_H, this, v);
|
|
215
211
|
}
|
|
212
|
+
}, {
|
|
213
|
+
key: "_initEnterTime",
|
|
214
|
+
value: function _initEnterTime() {
|
|
215
|
+
var currentTime = Date.now();
|
|
216
|
+
|
|
217
|
+
// 尝试从localStorage获取有效的进入时间
|
|
218
|
+
var storedTime = this._getValidStoredTime();
|
|
219
|
+
this._enterTime = storedTime !== null && storedTime !== void 0 ? storedTime : currentTime;
|
|
220
|
+
|
|
221
|
+
// 如果没有有效的存储时间,保存当前时间
|
|
222
|
+
if (storedTime === null) {
|
|
223
|
+
this._saveEnterTime(currentTime);
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* 获取localStorage中有效的进入时间
|
|
229
|
+
* @returns 有效的时间戳或null
|
|
230
|
+
*/
|
|
231
|
+
}, {
|
|
232
|
+
key: "_getValidStoredTime",
|
|
233
|
+
value: function _getValidStoredTime() {
|
|
234
|
+
try {
|
|
235
|
+
var enterTime = localStorage.getItem(this._localMeetingTimeKey);
|
|
236
|
+
if (enterTime) {
|
|
237
|
+
var enterTimeNum = Number(enterTime);
|
|
238
|
+
// 验证时间戳:必须是有效数字、正数、且不能是未来时间
|
|
239
|
+
var currentTime = Date.now();
|
|
240
|
+
if (!Number.isNaN(enterTimeNum) && enterTimeNum > 0 && enterTimeNum <= currentTime) {
|
|
241
|
+
return enterTimeNum;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
} catch (error) {
|
|
245
|
+
// localStorage访问失败,忽略错误并返回null
|
|
246
|
+
console.error('localStorage访问失败', error);
|
|
247
|
+
}
|
|
248
|
+
return null;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
/**
|
|
252
|
+
* 安全地保存进入时间到localStorage
|
|
253
|
+
* @param time 要保存的时间戳
|
|
254
|
+
*/
|
|
255
|
+
}, {
|
|
256
|
+
key: "_saveEnterTime",
|
|
257
|
+
value: function _saveEnterTime(time) {
|
|
258
|
+
try {
|
|
259
|
+
localStorage.setItem(this._localMeetingTimeKey, time.toString());
|
|
260
|
+
} catch (error) {
|
|
261
|
+
// localStorage访问失败,忽略错误(可能在某些环境中不可用)
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
* 安全地移除localStorage中的进入时间
|
|
267
|
+
*/
|
|
268
|
+
}, {
|
|
269
|
+
key: "_removeStoredTime",
|
|
270
|
+
value: function _removeStoredTime() {
|
|
271
|
+
try {
|
|
272
|
+
localStorage.removeItem(this._localMeetingTimeKey);
|
|
273
|
+
} catch (error) {
|
|
274
|
+
// localStorage访问失败,忽略错误(可能在某些环境中不可用)
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}, {
|
|
278
|
+
key: "_updateMeetingTime",
|
|
279
|
+
value: function _updateMeetingTime() {
|
|
280
|
+
if (this._enterTime === 0) {
|
|
281
|
+
return;
|
|
282
|
+
}
|
|
283
|
+
var currentTimeStamp = Date.now();
|
|
284
|
+
var diff = currentTimeStamp - this._enterTime;
|
|
285
|
+
var meetingDuration = Math.floor(diff / 1000);
|
|
286
|
+
|
|
287
|
+
// 如果时长没有变化,跳过计算
|
|
288
|
+
if (meetingDuration === this._lastMeetingDuration) {
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
this._lastMeetingDuration = meetingDuration;
|
|
292
|
+
|
|
293
|
+
// 每秒检查状态,确保及时更新UI
|
|
294
|
+
var TEN_MINUTES_SECONDS = 10 * 60; // 10分钟的秒数,用于判断会议状态
|
|
295
|
+
var remainTime = this._scheduleDuration - meetingDuration;
|
|
296
|
+
var currentStatus = remainTime > TEN_MINUTES_SECONDS // 剩余超过10分钟 → 正常状态
|
|
297
|
+
? MeetingStatus.NORMAL : remainTime > 0 // 剩余时间在0-10分钟之间 → 即将结束
|
|
298
|
+
? MeetingStatus.SOON_TO_END : MeetingStatus.OVERTIME; // 已超时
|
|
299
|
+
this._setStatues(currentStatus);
|
|
300
|
+
this._formatMeetingTime(meetingDuration);
|
|
301
|
+
}
|
|
302
|
+
}, {
|
|
303
|
+
key: "_formatMeetingTime",
|
|
304
|
+
value: function _formatMeetingTime(meetingDuration) {
|
|
305
|
+
// 判断是否需要显示小时(超过1小时)
|
|
306
|
+
var ONE_HOUR_SECONDS = 60 * 60;
|
|
307
|
+
var showHour = meetingDuration >= ONE_HOUR_SECONDS;
|
|
308
|
+
if (showHour) {
|
|
309
|
+
var hours = Math.floor(meetingDuration / ONE_HOUR_SECONDS);
|
|
310
|
+
var mins = Math.floor(meetingDuration % ONE_HOUR_SECONDS / 60);
|
|
311
|
+
var seconds = meetingDuration % 60;
|
|
312
|
+
var hoursStr = hours.toString().padStart(2, '0');
|
|
313
|
+
var minsStr = mins.toString().padStart(2, '0');
|
|
314
|
+
var secondsStr = seconds.toString().padStart(2, '0');
|
|
315
|
+
this._setMeetingTime("".concat(hoursStr, ":").concat(minsStr, ":").concat(secondsStr));
|
|
316
|
+
} else {
|
|
317
|
+
var _mins = Math.floor(meetingDuration / 60);
|
|
318
|
+
var _seconds = meetingDuration % 60;
|
|
319
|
+
var _minsStr = _mins.toString().padStart(2, '0');
|
|
320
|
+
var _secondsStr = _seconds.toString().padStart(2, '0');
|
|
321
|
+
this._setMeetingTime("".concat(_minsStr, ":").concat(_secondsStr));
|
|
322
|
+
}
|
|
323
|
+
}
|
|
216
324
|
}, {
|
|
217
325
|
key: "totalHourText",
|
|
218
326
|
get: function get() {
|
|
@@ -264,8 +372,10 @@ var FcrUIMeetingTimeSharedDataSourceImpl = exports.FcrUIMeetingTimeSharedDataSou
|
|
|
264
372
|
}
|
|
265
373
|
this._totalHours = hours;
|
|
266
374
|
this._totalMins = mins;
|
|
267
|
-
|
|
268
|
-
|
|
375
|
+
|
|
376
|
+
// 使用缓存的翻译文本
|
|
377
|
+
this._totalHourText = this.totalHours > 0 ? "".concat(this.totalHours).concat(this._cachedTranslations.hour) : '';
|
|
378
|
+
this._totalMinsText = this.totalMins > 0 ? "".concat(this.totalMins).concat(this._cachedTranslations.minutes) : '';
|
|
269
379
|
}
|
|
270
380
|
}, {
|
|
271
381
|
key: "_setMeetingTime",
|
|
@@ -280,8 +390,15 @@ var FcrUIMeetingTimeSharedDataSourceImpl = exports.FcrUIMeetingTimeSharedDataSou
|
|
|
280
390
|
}, {
|
|
281
391
|
key: "release",
|
|
282
392
|
value: function release() {
|
|
283
|
-
|
|
284
|
-
|
|
393
|
+
if (this._timer) {
|
|
394
|
+
clearInterval(this._timer);
|
|
395
|
+
this._timer = null;
|
|
396
|
+
}
|
|
397
|
+
this._enterTime = 0;
|
|
398
|
+
this._lastMeetingDuration = 0;
|
|
399
|
+
if (this._localMeetingTimeKey) {
|
|
400
|
+
this._removeStoredTime();
|
|
401
|
+
}
|
|
285
402
|
}
|
|
286
403
|
}]);
|
|
287
404
|
}();
|
|
@@ -6,6 +6,7 @@ import { FcrLanguage } from 'fcr-core/lib/room-control/interpreter-control/types
|
|
|
6
6
|
import { FcrUserInfo } from 'fcr-core/lib/type';
|
|
7
7
|
import { FcrWhiteboardControl } from 'fcr-core/lib/room-control/whiteboard-control-v2/whiteboard-control/type';
|
|
8
8
|
import { FcrUIScreenShareSharedDataSource } from './screen-share-data';
|
|
9
|
+
import { FcrUIEventProvider } from '../providers/event-provider';
|
|
9
10
|
export interface FcrUIMemberSharedDataSource {
|
|
10
11
|
/**
|
|
11
12
|
* 整个房间的人数。
|
|
@@ -63,11 +64,6 @@ export interface FcrUIMemberSharedDataSource {
|
|
|
63
64
|
* @returns 音频音量映射,类型为 Map<string, number>。
|
|
64
65
|
*/
|
|
65
66
|
get audioVolumeMap(): Map<string, number>;
|
|
66
|
-
/**
|
|
67
|
-
* 获取共享屏幕视频的宽高比。
|
|
68
|
-
* @returns 共享屏幕视频的宽高比,类型为 number。
|
|
69
|
-
*/
|
|
70
|
-
get shareScreenVideoRatio(): number;
|
|
71
67
|
/**
|
|
72
68
|
* 获取共享屏幕视频的宽高。
|
|
73
69
|
* @returns 共享屏幕视频的宽高,类型为 FcrRemoteVideoStats['dimensions'] | null。
|
|
@@ -88,6 +84,7 @@ export declare class FcrUIMemberSharedDataSourceImpl implements FcrUIMemberShare
|
|
|
88
84
|
private _mainRoomUserControl;
|
|
89
85
|
private _streamControl;
|
|
90
86
|
private _sharedScreenShareSharedDataSource;
|
|
87
|
+
private _eventProvider;
|
|
91
88
|
private _whiteBoardControl?;
|
|
92
89
|
protected logger: import("agora-foundation/lib/logger").Logger;
|
|
93
90
|
private _dataSource;
|
|
@@ -99,12 +96,12 @@ export declare class FcrUIMemberSharedDataSourceImpl implements FcrUIMemberShare
|
|
|
99
96
|
private accessor _localUser;
|
|
100
97
|
private _userObserver;
|
|
101
98
|
private _streamsObserver;
|
|
99
|
+
private _eventProviderObserver;
|
|
100
|
+
private _isOnline;
|
|
102
101
|
private accessor serverPushTotalUserCount;
|
|
103
|
-
private accessor _shareScreenVideoRatio;
|
|
104
102
|
accessor totalUserCount: number;
|
|
105
103
|
accessor shareScreenVideoSize: FcrRemoteVideoStats['dimensions'] | null;
|
|
106
104
|
get localUserId(): string;
|
|
107
|
-
get shareScreenVideoRatio(): number;
|
|
108
105
|
get hasOwnPstnStream(): boolean;
|
|
109
106
|
get interpreterInputLanguageList(): {
|
|
110
107
|
userId: string;
|
|
@@ -119,7 +116,12 @@ export declare class FcrUIMemberSharedDataSourceImpl implements FcrUIMemberShare
|
|
|
119
116
|
get remoteMembersUserInfosList(): FcrUserInfo[];
|
|
120
117
|
get memberList(): FcrUIMemberDataImpl[];
|
|
121
118
|
get memberUserInfoList(): FcrUserInfo[];
|
|
122
|
-
constructor(_mainRoomUserControl: FcrUserControl, _streamControl: FcrStreamControl, _sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource, _whiteBoardControl?: FcrWhiteboardControl | undefined);
|
|
119
|
+
constructor(_mainRoomUserControl: FcrUserControl, _streamControl: FcrStreamControl, _sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource, _eventProvider: FcrUIEventProvider, _whiteBoardControl?: FcrWhiteboardControl | undefined);
|
|
120
|
+
private _addEventListeners;
|
|
121
|
+
private _removeEventListeners;
|
|
122
|
+
private _handleOnEvent;
|
|
123
|
+
private _handleOnline;
|
|
124
|
+
private _handleOffline;
|
|
123
125
|
updateMemberListWithBoardState(): void;
|
|
124
126
|
release(): void;
|
|
125
127
|
private _setIsLocalUserInPstn;
|
|
@@ -130,7 +132,6 @@ export declare class FcrUIMemberSharedDataSourceImpl implements FcrUIMemberShare
|
|
|
130
132
|
private _syncParticipants;
|
|
131
133
|
private _onAudioVolumeUpdated;
|
|
132
134
|
private _handleRemoteUserJoined;
|
|
133
|
-
private _handleRemoteVideoStatsUpdated;
|
|
134
135
|
private _handleRemoteUserLeft;
|
|
135
136
|
private _handleStreamsAdded;
|
|
136
137
|
private _handleStreamsUpdated;
|
|
@@ -27,7 +27,6 @@ exports.FcrUIMemberSharedDataSourceImpl = void 0;
|
|
|
27
27
|
require("core-js/modules/es.array.filter.js");
|
|
28
28
|
require("core-js/modules/es.array.find.js");
|
|
29
29
|
require("core-js/modules/es.array.for-each.js");
|
|
30
|
-
require("core-js/modules/es.array.from.js");
|
|
31
30
|
require("core-js/modules/es.array.includes.js");
|
|
32
31
|
require("core-js/modules/es.array.iterator.js");
|
|
33
32
|
require("core-js/modules/es.array.map.js");
|
|
@@ -36,7 +35,6 @@ require("core-js/modules/es.map.js");
|
|
|
36
35
|
require("core-js/modules/es.object.entries.js");
|
|
37
36
|
require("core-js/modules/es.object.to-string.js");
|
|
38
37
|
require("core-js/modules/es.set.js");
|
|
39
|
-
require("core-js/modules/es.string.includes.js");
|
|
40
38
|
require("core-js/modules/es.string.iterator.js");
|
|
41
39
|
require("core-js/modules/es.weak-map.js");
|
|
42
40
|
require("core-js/modules/esnext.iterator.constructor.js");
|
|
@@ -98,8 +96,9 @@ var _base = require("../base");
|
|
|
98
96
|
var _type = require("fcr-core/lib/type");
|
|
99
97
|
var _decorator = require("agora-foundation/lib/decorator");
|
|
100
98
|
var _logger = require("../utilities/logger");
|
|
99
|
+
var _constant = require("../utilities/constant");
|
|
101
100
|
var _FcrUIMemberSharedDataSourceImpl;
|
|
102
|
-
var _initProto, _init__serverPushTotalUserCount, _init__audioVolumeMap, _init__isLocalUserInPstn, _init__interpreterInputLanguageList, _init__localUser, _init_serverPushTotalUserCount,
|
|
101
|
+
var _initProto, _init__serverPushTotalUserCount, _init__audioVolumeMap, _init__isLocalUserInPstn, _init__interpreterInputLanguageList, _init__localUser, _init_serverPushTotalUserCount, _init_totalUserCount, _init_shareScreenVideoSize, _updateMemberListWithBoardStateDecs, _setIsLocalUserInPstnDecs, _handleAllUserCountUpdatedDecs, _setTotalUserCountDecs, _handleUserInfoUpdatedDecs, _syncParticipantsDecs, _onAudioVolumeUpdatedDecs, _handleRemoteUserJoinedDecs, _handleRemoteUserLeftDecs, _handleStreamsAddedDecs, _handleStreamsUpdatedDecs, _handleStreamsRemovedDecs, _ref;
|
|
103
102
|
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; }
|
|
104
103
|
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; }
|
|
105
104
|
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
|
|
@@ -120,10 +119,9 @@ var _E = /*#__PURE__*/new WeakMap();
|
|
|
120
119
|
var _F = /*#__PURE__*/new WeakMap();
|
|
121
120
|
var _G = /*#__PURE__*/new WeakMap();
|
|
122
121
|
var _H = /*#__PURE__*/new WeakMap();
|
|
123
|
-
|
|
124
|
-
_ref = (_updateMemberListWithBoardStateDecs = [_mobx.action, _mobx.action.bound], _setIsLocalUserInPstnDecs = [_mobx.action, _mobx.action.bound], _handleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], _setTotalUserCountDecs = [_mobx.action, _mobx.action.bound], _handleUserInfoUpdatedDecs = [_mobx.action, _mobx.action.bound], _syncParticipantsDecs = (0, _decorator.debounced)(800), _onAudioVolumeUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserJoinedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteVideoStatsUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserLeftDecs = [_mobx.action, _mobx.action.bound], _handleStreamsAddedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsRemovedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
122
|
+
_ref = (_updateMemberListWithBoardStateDecs = [_mobx.action, _mobx.action.bound], _setIsLocalUserInPstnDecs = [_mobx.action, _mobx.action.bound], _handleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], _setTotalUserCountDecs = [_mobx.action, _mobx.action.bound], _handleUserInfoUpdatedDecs = [_mobx.action, _mobx.action.bound], _syncParticipantsDecs = (0, _decorator.debounced)(800), _onAudioVolumeUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserJoinedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserLeftDecs = [_mobx.action, _mobx.action.bound], _handleStreamsAddedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsRemovedDecs = [_mobx.action, _mobx.action.bound], "logger");
|
|
125
123
|
var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl = /*#__PURE__*/function () {
|
|
126
|
-
function FcrUIMemberSharedDataSourceImpl(_mainRoomUserControl, _streamControl, _sharedScreenShareSharedDataSource, _whiteBoardControl) {
|
|
124
|
+
function FcrUIMemberSharedDataSourceImpl(_mainRoomUserControl, _streamControl, _sharedScreenShareSharedDataSource, _eventProvider, _whiteBoardControl) {
|
|
127
125
|
var _this = this;
|
|
128
126
|
(0, _classCallCheck2["default"])(this, FcrUIMemberSharedDataSourceImpl);
|
|
129
127
|
(0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
|
|
@@ -146,19 +144,23 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
146
144
|
onStreamsAdded: this._handleStreamsAdded,
|
|
147
145
|
onStreamsUpdated: this._handleStreamsUpdated,
|
|
148
146
|
onStreamVolumeIndicationUpdated: this._onAudioVolumeUpdated,
|
|
149
|
-
onStreamsRemoved: this._handleStreamsRemoved
|
|
150
|
-
onRemoteVideoStatsUpdated: this._handleRemoteVideoStatsUpdated
|
|
147
|
+
onStreamsRemoved: this._handleStreamsRemoved
|
|
151
148
|
});
|
|
149
|
+
(0, _defineProperty2["default"])(this, "_eventProviderObserver", {
|
|
150
|
+
onEvent: this._handleOnEvent
|
|
151
|
+
});
|
|
152
|
+
(0, _defineProperty2["default"])(this, "_isOnline", true);
|
|
152
153
|
_classPrivateFieldInitSpec(this, _F, _init_serverPushTotalUserCount(this, 1));
|
|
153
|
-
_classPrivateFieldInitSpec(this, _G,
|
|
154
|
-
_classPrivateFieldInitSpec(this, _H,
|
|
155
|
-
_classPrivateFieldInitSpec(this, _I, _init_shareScreenVideoSize(this, null));
|
|
154
|
+
_classPrivateFieldInitSpec(this, _G, _init_totalUserCount(this, 1));
|
|
155
|
+
_classPrivateFieldInitSpec(this, _H, _init_shareScreenVideoSize(this, null));
|
|
156
156
|
this._mainRoomUserControl = _mainRoomUserControl;
|
|
157
157
|
this._streamControl = _streamControl;
|
|
158
158
|
this._sharedScreenShareSharedDataSource = _sharedScreenShareSharedDataSource;
|
|
159
|
+
this._eventProvider = _eventProvider;
|
|
159
160
|
this._whiteBoardControl = _whiteBoardControl;
|
|
160
161
|
this._mainRoomUserControl.addObserver(this._userObserver);
|
|
161
162
|
this._streamControl.addObserver(this._streamsObserver);
|
|
163
|
+
this._eventProvider.addObserver(this._eventProviderObserver);
|
|
162
164
|
this._setTotalUserCount();
|
|
163
165
|
this._initUserList();
|
|
164
166
|
this.updateMemberListWithBoardState();
|
|
@@ -169,6 +171,7 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
169
171
|
_this._setTotalUserCount();
|
|
170
172
|
_this._syncParticipants();
|
|
171
173
|
}));
|
|
174
|
+
this._addEventListeners();
|
|
172
175
|
}
|
|
173
176
|
return (0, _createClass2["default"])(FcrUIMemberSharedDataSourceImpl, [{
|
|
174
177
|
key: "_serverPushTotalUserCount",
|
|
@@ -219,7 +222,7 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
219
222
|
_classPrivateFieldSet(_F, this, v);
|
|
220
223
|
}
|
|
221
224
|
}, {
|
|
222
|
-
key: "
|
|
225
|
+
key: "totalUserCount",
|
|
223
226
|
get: function get() {
|
|
224
227
|
return _classPrivateFieldGet(_G, this);
|
|
225
228
|
},
|
|
@@ -227,31 +230,18 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
227
230
|
_classPrivateFieldSet(_G, this, v);
|
|
228
231
|
}
|
|
229
232
|
}, {
|
|
230
|
-
key: "
|
|
233
|
+
key: "shareScreenVideoSize",
|
|
231
234
|
get: function get() {
|
|
232
235
|
return _classPrivateFieldGet(_H, this);
|
|
233
236
|
},
|
|
234
237
|
set: function set(v) {
|
|
235
238
|
_classPrivateFieldSet(_H, this, v);
|
|
236
239
|
}
|
|
237
|
-
}, {
|
|
238
|
-
key: "shareScreenVideoSize",
|
|
239
|
-
get: function get() {
|
|
240
|
-
return _classPrivateFieldGet(_I, this);
|
|
241
|
-
},
|
|
242
|
-
set: function set(v) {
|
|
243
|
-
_classPrivateFieldSet(_I, this, v);
|
|
244
|
-
}
|
|
245
240
|
}, {
|
|
246
241
|
key: "localUserId",
|
|
247
242
|
get: function get() {
|
|
248
243
|
return this._localUser.userId;
|
|
249
244
|
}
|
|
250
|
-
}, {
|
|
251
|
-
key: "shareScreenVideoRatio",
|
|
252
|
-
get: function get() {
|
|
253
|
-
return this._shareScreenVideoRatio;
|
|
254
|
-
}
|
|
255
245
|
}, {
|
|
256
246
|
key: "hasOwnPstnStream",
|
|
257
247
|
get: function get() {
|
|
@@ -315,6 +305,36 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
315
305
|
return memberData.userInfo;
|
|
316
306
|
});
|
|
317
307
|
}
|
|
308
|
+
}, {
|
|
309
|
+
key: "_addEventListeners",
|
|
310
|
+
value: function _addEventListeners() {
|
|
311
|
+
window.addEventListener('online', this._handleOnline);
|
|
312
|
+
window.addEventListener('offline', this._handleOffline);
|
|
313
|
+
}
|
|
314
|
+
}, {
|
|
315
|
+
key: "_removeEventListeners",
|
|
316
|
+
value: function _removeEventListeners() {
|
|
317
|
+
window.removeEventListener('online', this._handleOnline);
|
|
318
|
+
window.removeEventListener('offline', this._handleOffline);
|
|
319
|
+
}
|
|
320
|
+
}, {
|
|
321
|
+
key: "_handleOnEvent",
|
|
322
|
+
value: function _handleOnEvent(action, payload) {
|
|
323
|
+
if (action === _constant.FcrUIAction.ENGINE_RECONNECTED) {
|
|
324
|
+
this.logger.info('sync participants, after engine reconnected');
|
|
325
|
+
this._syncParticipants();
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}, {
|
|
329
|
+
key: "_handleOnline",
|
|
330
|
+
value: function _handleOnline() {
|
|
331
|
+
this._isOnline = true;
|
|
332
|
+
}
|
|
333
|
+
}, {
|
|
334
|
+
key: "_handleOffline",
|
|
335
|
+
value: function _handleOffline() {
|
|
336
|
+
this._isOnline = false;
|
|
337
|
+
}
|
|
318
338
|
}, {
|
|
319
339
|
key: "updateMemberListWithBoardState",
|
|
320
340
|
value: function updateMemberListWithBoardState() {
|
|
@@ -340,6 +360,8 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
340
360
|
return disposer();
|
|
341
361
|
});
|
|
342
362
|
this._disposers = [];
|
|
363
|
+
this._removeEventListeners();
|
|
364
|
+
this._eventProvider.removeObserver(this._eventProviderObserver);
|
|
343
365
|
this._mainRoomUserControl.removeObserver(this._userObserver);
|
|
344
366
|
this._streamControl.removeObserver(this._streamsObserver);
|
|
345
367
|
}
|
|
@@ -402,11 +424,11 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
402
424
|
_this4.logger.warn('[FcrUIMemberSharedDataSourceImpl] _syncParticipants: need sync');
|
|
403
425
|
// 有差异,优先进行以userControl内列表的遍历补充
|
|
404
426
|
var controlUserList = _this4._mainRoomUserControl.getUserList();
|
|
405
|
-
var storeUserListIds =
|
|
427
|
+
var storeUserListIds = new Set(_this4.memberList.map(function (participant) {
|
|
406
428
|
return participant.userId;
|
|
407
|
-
}))
|
|
429
|
+
}));
|
|
408
430
|
controlUserList.forEach(function (userInfo) {
|
|
409
|
-
if (userInfo.userId && !storeUserListIds.
|
|
431
|
+
if (userInfo.userId && !storeUserListIds.has(userInfo.userId)) {
|
|
410
432
|
_this4._dataSource.add(userInfo, _this4._streamControl.getStreamsByUserId(userInfo.userId), userInfo.userId === _this4.localUserId);
|
|
411
433
|
}
|
|
412
434
|
});
|
|
@@ -433,20 +455,6 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
433
455
|
});
|
|
434
456
|
this.updateMemberListWithBoardState();
|
|
435
457
|
}
|
|
436
|
-
}, {
|
|
437
|
-
key: "_handleRemoteVideoStatsUpdated",
|
|
438
|
-
value: function _handleRemoteVideoStatsUpdated(roomId, streamId, videoStats) {
|
|
439
|
-
var stream = this._streamControl.getStreamByStreamId(streamId);
|
|
440
|
-
if ((stream === null || stream === void 0 ? void 0 : stream.videoSourceType) === _fcrCore.FcrVideoSourceType.SCREEN) {
|
|
441
|
-
var _videoStats$dimension = videoStats.dimensions,
|
|
442
|
-
width = _videoStats$dimension.width,
|
|
443
|
-
height = _videoStats$dimension.height;
|
|
444
|
-
if (width !== 0 && height !== 0) {
|
|
445
|
-
this._shareScreenVideoRatio = width / height;
|
|
446
|
-
this.shareScreenVideoSize = videoStats.dimensions;
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
458
|
}, {
|
|
451
459
|
key: "_handleRemoteUserLeft",
|
|
452
460
|
value: function _handleRemoteUserLeft(roomId, events) {
|
|
@@ -496,15 +504,14 @@ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl =
|
|
|
496
504
|
}]);
|
|
497
505
|
}();
|
|
498
506
|
_FcrUIMemberSharedDataSourceImpl = FcrUIMemberSharedDataSourceImpl;
|
|
499
|
-
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIMemberSharedDataSourceImpl, [[_mobx.observable, 1, "_serverPushTotalUserCount"], [_mobx.observable, 1, "_audioVolumeMap"], [_mobx.observable, 1, "_isLocalUserInPstn"], [_mobx.observable, 1, "_interpreterInputLanguageList"], [_mobx.observable, 1, "_localUser"], [_mobx.observable, 1, "serverPushTotalUserCount"], [_mobx.observable, 1, "
|
|
507
|
+
var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIMemberSharedDataSourceImpl, [[_mobx.observable, 1, "_serverPushTotalUserCount"], [_mobx.observable, 1, "_audioVolumeMap"], [_mobx.observable, 1, "_isLocalUserInPstn"], [_mobx.observable, 1, "_interpreterInputLanguageList"], [_mobx.observable, 1, "_localUser"], [_mobx.observable, 1, "serverPushTotalUserCount"], [_mobx.observable, 1, "totalUserCount"], [_mobx.observable, 1, "shareScreenVideoSize"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "interpreterInputLanguageList"], [_mobx.computed, 3, "audioVolumeMap"], [_mobx.computed, 3, "isLocalUserHost"], [_mobx.computed, 3, "remoteMembers"], [_mobx.computed, 3, "remoteMembersUserInfosList"], [_mobx.computed, 3, "memberUserInfoList"], [_decorator.bound, 2, "_handleOnEvent"], [_decorator.bound, 2, "_handleOnline"], [_decorator.bound, 2, "_handleOffline"], [_updateMemberListWithBoardStateDecs, 18, "updateMemberListWithBoardState"], [_setIsLocalUserInPstnDecs, 18, "_setIsLocalUserInPstn"], [_handleAllUserCountUpdatedDecs, 18, "_handleAllUserCountUpdated"], [_setTotalUserCountDecs, 18, "_setTotalUserCount"], [_handleUserInfoUpdatedDecs, 18, "_handleUserInfoUpdated"], [_syncParticipantsDecs, 2, "_syncParticipants"], [_onAudioVolumeUpdatedDecs, 18, "_onAudioVolumeUpdated"], [_handleRemoteUserJoinedDecs, 18, "_handleRemoteUserJoined"], [_handleRemoteUserLeftDecs, 18, "_handleRemoteUserLeft"], [_handleStreamsAddedDecs, 18, "_handleStreamsAdded"], [_handleStreamsUpdatedDecs, 18, "_handleStreamsUpdated"], [_handleStreamsRemovedDecs, 18, "_handleStreamsRemoved"]], []).e, 9);
|
|
500
508
|
_init__serverPushTotalUserCount = _applyDecs$e[0];
|
|
501
509
|
_init__audioVolumeMap = _applyDecs$e[1];
|
|
502
510
|
_init__isLocalUserInPstn = _applyDecs$e[2];
|
|
503
511
|
_init__interpreterInputLanguageList = _applyDecs$e[3];
|
|
504
512
|
_init__localUser = _applyDecs$e[4];
|
|
505
513
|
_init_serverPushTotalUserCount = _applyDecs$e[5];
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
_initProto = _applyDecs$e[9];
|
|
514
|
+
_init_totalUserCount = _applyDecs$e[6];
|
|
515
|
+
_init_shareScreenVideoSize = _applyDecs$e[7];
|
|
516
|
+
_initProto = _applyDecs$e[8];
|
|
510
517
|
(0, _base.registerDependency)('sharedMemberDataSource');
|