@webex/plugin-meetings 3.0.0-beta.16 → 3.0.0-beta.161
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/README.md +45 -1
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +49 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +359 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +212 -0
- package/dist/breakouts/breakout.js.map +1 -0
- package/dist/breakouts/collection.js +23 -0
- package/dist/breakouts/collection.js.map +1 -0
- package/dist/breakouts/edit-lock-error.js +52 -0
- package/dist/breakouts/edit-lock-error.js.map +1 -0
- package/dist/breakouts/events.js +43 -0
- package/dist/breakouts/events.js.map +1 -0
- package/dist/breakouts/index.js +1046 -0
- package/dist/breakouts/index.js.map +1 -0
- package/dist/breakouts/request.js +78 -0
- package/dist/breakouts/request.js.map +1 -0
- package/dist/breakouts/utils.js +67 -0
- package/dist/breakouts/utils.js.map +1 -0
- package/dist/common/errors/webex-errors.js +3 -2
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -1
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/config.js +6 -8
- package/dist/config.js.map +1 -1
- package/dist/constants.js +175 -26
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/constants.js +14 -0
- package/dist/controls-options-manager/constants.js.map +1 -0
- package/dist/controls-options-manager/enums.js +27 -0
- package/dist/controls-options-manager/enums.js.map +1 -0
- package/dist/controls-options-manager/index.js +297 -0
- package/dist/controls-options-manager/index.js.map +1 -0
- package/dist/controls-options-manager/types.js +7 -0
- package/dist/controls-options-manager/types.js.map +1 -0
- package/dist/controls-options-manager/util.js +300 -0
- package/dist/controls-options-manager/util.js.map +1 -0
- package/dist/index.js +77 -0
- package/dist/index.js.map +1 -1
- package/dist/interpretation/collection.js +23 -0
- package/dist/interpretation/collection.js.map +1 -0
- package/dist/interpretation/index.js +214 -0
- package/dist/interpretation/index.js.map +1 -0
- package/dist/interpretation/siLanguage.js +25 -0
- package/dist/interpretation/siLanguage.js.map +1 -0
- package/dist/locus-info/controlsUtils.js +92 -2
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +317 -24
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +43 -1
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +2 -1
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +97 -14
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +39 -134
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +19 -97
- package/dist/media/properties.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +505 -493
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +79 -1
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +2349 -2178
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/locusMediaRequest.js +291 -0
- package/dist/meeting/locusMediaRequest.js.map +1 -0
- package/dist/meeting/muteState.js +229 -124
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +191 -167
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/meeting/util.js +444 -443
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +157 -49
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/utilv2.js +20 -5
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +22 -0
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +365 -73
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/meetings.types.js +7 -0
- package/dist/meetings/meetings.types.js.map +1 -0
- package/dist/meetings/request.js +16 -12
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +88 -1
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +43 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +15 -0
- package/dist/member/types.js.map +1 -0
- package/dist/member/util.js +97 -3
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +10 -0
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +94 -11
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +109 -39
- package/dist/members/request.js.map +1 -1
- package/dist/members/types.js +15 -0
- package/dist/members/types.js.map +1 -0
- package/dist/members/util.js +316 -233
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/config.js +50 -14
- package/dist/metrics/config.js.map +1 -1
- package/dist/metrics/constants.js +3 -5
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +48 -29
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +265 -36
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +52 -19
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +53 -33
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +44 -18
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +60 -3
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +322 -103
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/networkQualityMonitor/index.js +4 -2
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/reachability/index.js +117 -60
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +12 -5
- package/dist/reachability/request.js.map +1 -1
- package/dist/reactions/constants.js +13 -0
- package/dist/reactions/constants.js.map +1 -0
- package/dist/reactions/reactions.js +2 -2
- package/dist/reactions/reactions.js.map +1 -1
- package/dist/reactions/reactions.type.js +18 -18
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.js +190 -145
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/recording-controller/enums.js +17 -0
- package/dist/recording-controller/enums.js.map +1 -0
- package/dist/recording-controller/index.js +343 -0
- package/dist/recording-controller/index.js.map +1 -0
- package/dist/recording-controller/util.js +63 -0
- package/dist/recording-controller/util.js.map +1 -0
- package/dist/roap/index.js +21 -29
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +127 -92
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +135 -53
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/statsAnalyzer/global.js +1 -93
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +329 -314
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +103 -54
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +43 -0
- package/dist/types/annotation/constants.d.ts +31 -0
- package/dist/types/annotation/index.d.ts +124 -0
- package/dist/types/breakouts/breakout.d.ts +8 -0
- package/dist/types/breakouts/collection.d.ts +5 -0
- package/dist/types/breakouts/edit-lock-error.d.ts +15 -0
- package/dist/types/breakouts/events.d.ts +2 -0
- package/dist/types/breakouts/index.d.ts +5 -0
- package/dist/types/breakouts/request.d.ts +22 -0
- package/dist/types/breakouts/utils.d.ts +15 -0
- package/dist/types/common/browser-detection.d.ts +9 -0
- package/dist/types/common/collection.d.ts +48 -0
- package/dist/types/common/config.d.ts +2 -0
- package/dist/types/common/errors/captcha-error.d.ts +15 -0
- package/dist/types/common/errors/intent-to-join.d.ts +16 -0
- package/dist/types/common/errors/join-meeting.d.ts +17 -0
- package/dist/types/common/errors/media.d.ts +15 -0
- package/dist/types/common/errors/parameter.d.ts +15 -0
- package/dist/types/common/errors/password-error.d.ts +15 -0
- package/dist/types/common/errors/permission.d.ts +14 -0
- package/dist/types/common/errors/reconnection-in-progress.d.ts +9 -0
- package/dist/types/common/errors/reconnection.d.ts +15 -0
- package/dist/types/common/errors/stats.d.ts +15 -0
- package/dist/types/common/errors/webex-errors.d.ts +69 -0
- package/dist/types/common/errors/webex-meetings-error.d.ts +20 -0
- package/dist/types/common/events/events-scope.d.ts +17 -0
- package/dist/types/common/events/events.d.ts +12 -0
- package/dist/types/common/events/trigger-proxy.d.ts +2 -0
- package/dist/types/common/events/util.d.ts +2 -0
- package/dist/types/common/logs/logger-config.d.ts +2 -0
- package/dist/types/common/logs/logger-proxy.d.ts +2 -0
- package/dist/types/common/logs/request.d.ts +34 -0
- package/dist/types/common/queue.d.ts +32 -0
- package/dist/types/config.d.ts +72 -0
- package/dist/types/constants.d.ts +987 -0
- package/dist/types/controls-options-manager/constants.d.ts +4 -0
- package/dist/types/controls-options-manager/enums.d.ts +15 -0
- package/dist/types/controls-options-manager/index.d.ts +136 -0
- package/dist/types/controls-options-manager/types.d.ts +43 -0
- package/dist/types/controls-options-manager/util.d.ts +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/interpretation/collection.d.ts +5 -0
- package/dist/types/interpretation/index.d.ts +5 -0
- package/dist/types/interpretation/siLanguage.d.ts +5 -0
- package/dist/types/locus-info/controlsUtils.d.ts +2 -0
- package/dist/types/locus-info/embeddedAppsUtils.d.ts +2 -0
- package/dist/types/locus-info/fullState.d.ts +2 -0
- package/dist/types/locus-info/hostUtils.d.ts +2 -0
- package/dist/types/locus-info/index.d.ts +315 -0
- package/dist/types/locus-info/infoUtils.d.ts +2 -0
- package/dist/types/locus-info/mediaSharesUtils.d.ts +2 -0
- package/dist/types/locus-info/parser.d.ts +212 -0
- package/dist/types/locus-info/selfUtils.d.ts +2 -0
- package/dist/types/media/index.d.ts +34 -0
- package/dist/types/media/properties.d.ts +86 -0
- package/dist/types/media/util.d.ts +2 -0
- package/dist/types/mediaQualityMetrics/config.d.ts +365 -0
- package/dist/types/meeting/in-meeting-actions.d.ts +149 -0
- package/dist/types/meeting/index.d.ts +1524 -0
- package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
- package/dist/types/meeting/muteState.d.ts +184 -0
- package/dist/types/meeting/request.d.ts +270 -0
- package/dist/types/meeting/request.type.d.ts +11 -0
- package/dist/types/meeting/state.d.ts +9 -0
- package/dist/types/meeting/util.d.ts +75 -0
- package/dist/types/meeting-info/collection.d.ts +20 -0
- package/dist/types/meeting-info/index.d.ts +57 -0
- package/dist/types/meeting-info/meeting-info-v2.d.ts +122 -0
- package/dist/types/meeting-info/request.d.ts +22 -0
- package/dist/types/meeting-info/util.d.ts +2 -0
- package/dist/types/meeting-info/utilv2.d.ts +2 -0
- package/dist/types/meetings/collection.d.ts +31 -0
- package/dist/types/meetings/index.d.ts +364 -0
- package/dist/types/meetings/meetings.types.d.ts +4 -0
- package/dist/types/meetings/request.d.ts +27 -0
- package/dist/types/meetings/util.d.ts +18 -0
- package/dist/types/member/index.d.ts +158 -0
- package/dist/types/member/types.d.ts +21 -0
- package/dist/types/member/util.d.ts +2 -0
- package/dist/types/members/collection.d.ts +29 -0
- package/dist/types/members/index.d.ts +353 -0
- package/dist/types/members/request.d.ts +114 -0
- package/dist/types/members/types.d.ts +24 -0
- package/dist/types/members/util.d.ts +210 -0
- package/dist/types/metrics/config.d.ts +195 -0
- package/dist/types/metrics/constants.d.ts +55 -0
- package/dist/types/metrics/index.d.ts +169 -0
- package/dist/types/multistream/mediaRequestManager.d.ts +118 -0
- package/dist/types/multistream/receiveSlot.d.ts +68 -0
- package/dist/types/multistream/receiveSlotManager.d.ts +56 -0
- package/dist/types/multistream/remoteMedia.d.ts +72 -0
- package/dist/types/multistream/remoteMediaGroup.d.ts +47 -0
- package/dist/types/multistream/remoteMediaManager.d.ts +277 -0
- package/dist/types/networkQualityMonitor/index.d.ts +70 -0
- package/dist/types/personal-meeting-room/index.d.ts +47 -0
- package/dist/types/personal-meeting-room/request.d.ts +14 -0
- package/dist/types/personal-meeting-room/util.d.ts +2 -0
- package/dist/types/reachability/index.d.ts +152 -0
- package/dist/types/reachability/request.d.ts +37 -0
- package/dist/types/reactions/constants.d.ts +3 -0
- package/dist/types/reactions/reactions.d.ts +4 -0
- package/dist/types/reactions/reactions.type.d.ts +52 -0
- package/dist/types/reconnection-manager/index.d.ts +126 -0
- package/dist/types/recording-controller/enums.d.ts +7 -0
- package/dist/types/recording-controller/index.d.ts +193 -0
- package/dist/types/recording-controller/util.d.ts +13 -0
- package/dist/types/roap/index.d.ts +77 -0
- package/dist/types/roap/request.d.ts +36 -0
- package/dist/types/roap/turnDiscovery.d.ts +91 -0
- package/dist/types/statsAnalyzer/global.d.ts +36 -0
- package/dist/types/statsAnalyzer/index.d.ts +200 -0
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +24 -0
- package/dist/types/transcription/index.d.ts +64 -0
- package/package.json +28 -21
- package/src/annotation/annotation.types.ts +52 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +343 -0
- package/src/breakouts/README.md +220 -0
- package/src/breakouts/breakout.ts +180 -0
- package/src/breakouts/collection.ts +19 -0
- package/src/breakouts/edit-lock-error.ts +25 -0
- package/src/breakouts/events.ts +37 -0
- package/src/breakouts/index.ts +921 -0
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -0
- package/src/common/errors/webex-errors.ts +6 -2
- package/src/common/logs/logger-proxy.ts +1 -1
- package/src/config.ts +5 -7
- package/src/constants.ts +165 -20
- package/src/controls-options-manager/constants.ts +5 -0
- package/src/controls-options-manager/enums.ts +18 -0
- package/src/controls-options-manager/index.ts +278 -0
- package/src/controls-options-manager/types.ts +59 -0
- package/src/controls-options-manager/util.ts +286 -0
- package/src/index.ts +34 -0
- package/src/interpretation/README.md +51 -0
- package/src/interpretation/collection.ts +19 -0
- package/src/interpretation/index.ts +182 -0
- package/src/interpretation/siLanguage.ts +18 -0
- package/src/locus-info/controlsUtils.ts +110 -0
- package/src/locus-info/index.ts +339 -21
- package/src/locus-info/mediaSharesUtils.ts +48 -0
- package/src/locus-info/parser.ts +2 -1
- package/src/locus-info/selfUtils.ts +86 -2
- package/src/media/index.ts +70 -142
- package/src/media/properties.ts +41 -104
- package/src/mediaQualityMetrics/config.ts +379 -377
- package/src/meeting/in-meeting-actions.ts +156 -0
- package/src/meeting/index.ts +1779 -1741
- package/src/meeting/locusMediaRequest.ts +309 -0
- package/src/meeting/muteState.ts +228 -132
- package/src/meeting/request.ts +100 -91
- package/src/meeting/request.type.ts +2 -0
- package/src/meeting/util.ts +422 -421
- package/src/meeting-info/meeting-info-v2.ts +134 -13
- package/src/meeting-info/utilv2.ts +13 -3
- package/src/meetings/collection.ts +20 -0
- package/src/meetings/index.ts +385 -83
- package/src/meetings/meetings.types.ts +12 -0
- package/src/meetings/request.ts +3 -1
- package/src/meetings/util.ts +103 -4
- package/src/member/index.ts +42 -0
- package/src/member/types.ts +24 -0
- package/src/member/util.ts +95 -1
- package/src/members/collection.ts +8 -0
- package/src/members/index.ts +108 -6
- package/src/members/request.ts +98 -17
- package/src/members/types.ts +28 -0
- package/src/members/util.ts +319 -240
- package/src/metrics/config.ts +49 -10
- package/src/metrics/constants.ts +2 -4
- package/src/metrics/index.ts +43 -27
- package/src/multistream/mediaRequestManager.ts +337 -63
- package/src/multistream/receiveSlot.ts +68 -26
- package/src/multistream/receiveSlotManager.ts +61 -38
- package/src/multistream/remoteMedia.ts +29 -3
- package/src/multistream/remoteMediaGroup.ts +61 -2
- package/src/multistream/remoteMediaManager.ts +260 -66
- package/src/networkQualityMonitor/index.ts +6 -6
- package/src/reachability/index.ts +75 -25
- package/src/reachability/request.ts +10 -5
- package/src/reactions/constants.ts +4 -0
- package/src/reactions/reactions.ts +4 -4
- package/src/reactions/reactions.type.ts +28 -3
- package/src/reconnection-manager/index.ts +53 -32
- package/src/recording-controller/enums.ts +8 -0
- package/src/recording-controller/index.ts +315 -0
- package/src/recording-controller/util.ts +58 -0
- package/src/roap/index.ts +21 -30
- package/src/roap/request.ts +51 -52
- package/src/roap/turnDiscovery.ts +51 -27
- package/src/statsAnalyzer/global.ts +1 -94
- package/src/statsAnalyzer/index.ts +380 -390
- package/src/statsAnalyzer/mqaUtil.ts +106 -99
- package/test/integration/spec/converged-space-meetings.js +233 -0
- package/test/integration/spec/journey.js +331 -254
- package/test/integration/spec/space-meeting.js +77 -4
- package/test/unit/spec/annotation/index.ts +436 -0
- package/test/unit/spec/breakouts/breakout.ts +233 -0
- package/test/unit/spec/breakouts/collection.ts +15 -0
- package/test/unit/spec/breakouts/edit-lock-error.ts +30 -0
- package/test/unit/spec/breakouts/events.ts +77 -0
- package/test/unit/spec/breakouts/index.ts +1790 -0
- package/test/unit/spec/breakouts/request.ts +104 -0
- package/test/unit/spec/breakouts/utils.js +72 -0
- package/test/unit/spec/controls-options-manager/index.js +287 -0
- package/test/unit/spec/controls-options-manager/util.js +518 -0
- package/test/unit/spec/fixture/locus.js +1 -0
- package/test/unit/spec/interpretation/collection.ts +15 -0
- package/test/unit/spec/interpretation/index.ts +329 -0
- package/test/unit/spec/interpretation/siLanguage.ts +26 -0
- package/test/unit/spec/locus-info/controlsUtils.js +323 -30
- package/test/unit/spec/locus-info/index.js +680 -4
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/selfConstant.js +48 -0
- package/test/unit/spec/locus-info/selfUtils.js +275 -0
- package/test/unit/spec/media/index.ts +118 -22
- package/test/unit/spec/media/properties.ts +9 -9
- package/test/unit/spec/meeting/in-meeting-actions.ts +76 -0
- package/test/unit/spec/meeting/index.js +2695 -1513
- package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
- package/test/unit/spec/meeting/muteState.js +370 -208
- package/test/unit/spec/meeting/request.js +354 -42
- package/test/unit/spec/meeting/utils.js +270 -156
- package/test/unit/spec/meeting-info/meetinginfov2.js +383 -5
- package/test/unit/spec/meeting-info/utilv2.js +21 -0
- package/test/unit/spec/meetings/collection.js +14 -0
- package/test/unit/spec/meetings/index.js +866 -120
- package/test/unit/spec/meetings/utils.js +206 -2
- package/test/unit/spec/member/index.js +31 -0
- package/test/unit/spec/member/util.js +408 -32
- package/test/unit/spec/members/index.js +320 -1
- package/test/unit/spec/members/request.js +206 -27
- package/test/unit/spec/members/utils.js +184 -0
- package/test/unit/spec/metrics/index.js +98 -0
- package/test/unit/spec/multistream/mediaRequestManager.ts +1012 -109
- package/test/unit/spec/multistream/receiveSlot.ts +77 -18
- package/test/unit/spec/multistream/receiveSlotManager.ts +69 -39
- package/test/unit/spec/multistream/remoteMedia.ts +32 -2
- package/test/unit/spec/multistream/remoteMediaGroup.ts +271 -5
- package/test/unit/spec/multistream/remoteMediaManager.ts +672 -65
- package/test/unit/spec/networkQualityMonitor/index.js +4 -4
- package/test/unit/spec/reachability/index.ts +176 -25
- package/test/unit/spec/reachability/request.js +66 -0
- package/test/unit/spec/reconnection-manager/index.js +46 -13
- package/test/unit/spec/recording-controller/index.js +231 -0
- package/test/unit/spec/recording-controller/util.js +102 -0
- package/test/unit/spec/roap/index.ts +21 -51
- package/test/unit/spec/roap/request.ts +187 -0
- package/test/unit/spec/roap/turnDiscovery.ts +73 -34
- package/test/unit/spec/stats-analyzer/index.js +94 -43
- package/test/utils/constants.js +9 -0
- package/test/utils/integrationTestUtils.js +46 -0
- package/test/utils/testUtils.js +0 -45
- package/test/utils/webex-config.js +4 -0
- package/test/utils/webex-test-users.js +7 -3
- package/tsconfig.json +6 -0
- package/dist/media/internal-media-core-wrapper.js +0 -18
- package/dist/media/internal-media-core-wrapper.js.map +0 -1
- package/dist/meeting/effectsState.js +0 -262
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/multistream/multistreamMedia.js +0 -106
- package/dist/multistream/multistreamMedia.js.map +0 -1
- package/src/index.js +0 -15
- package/src/media/internal-media-core-wrapper.ts +0 -9
- package/src/meeting/effectsState.ts +0 -211
- package/src/multistream/multistreamMedia.ts +0 -93
- package/test/unit/spec/meeting/effectsState.js +0 -281
package/dist/meetings/index.js
CHANGED
|
@@ -1,17 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
|
|
3
4
|
var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
|
|
5
|
+
var _Object$keys2 = require("@babel/runtime-corejs2/core-js/object/keys");
|
|
6
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
|
|
7
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
|
|
8
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
|
|
9
|
+
var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
|
|
4
10
|
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
11
|
+
var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
|
|
5
12
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
13
|
_Object$defineProperty(exports, "__esModule", {
|
|
7
14
|
value: true
|
|
8
15
|
});
|
|
9
16
|
exports.default = void 0;
|
|
10
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
11
17
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
12
18
|
var _now = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/date/now"));
|
|
13
19
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
14
20
|
var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
|
|
21
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
22
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/toConsumableArray"));
|
|
15
23
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
|
|
16
24
|
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
|
|
17
25
|
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
@@ -24,6 +32,7 @@ require("@webex/internal-plugin-mercury");
|
|
|
24
32
|
require("@webex/internal-plugin-conversation");
|
|
25
33
|
var _webexCore = require("@webex/webex-core");
|
|
26
34
|
var _internalMediaCore = require("@webex/internal-media-core");
|
|
35
|
+
var mediaHelpersModule = _interopRequireWildcard(require("@webex/media-helpers"));
|
|
27
36
|
require("webrtc-adapter");
|
|
28
37
|
var _metrics = _interopRequireDefault(require("../metrics"));
|
|
29
38
|
var _config = require("../metrics/config");
|
|
@@ -46,6 +55,11 @@ var _passwordError = _interopRequireDefault(require("../common/errors/password-e
|
|
|
46
55
|
var _captchaError = _interopRequireDefault(require("../common/errors/captcha-error"));
|
|
47
56
|
var _collection = _interopRequireDefault(require("./collection"));
|
|
48
57
|
var _util2 = _interopRequireDefault(require("./util"));
|
|
58
|
+
var _permission = _interopRequireDefault(require("../common/errors/permission"));
|
|
59
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
60
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
61
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
62
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
49
63
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
50
64
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
51
65
|
var mediaLogger;
|
|
@@ -157,13 +171,14 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
157
171
|
_this = _super.call.apply(_super, [this].concat(args));
|
|
158
172
|
|
|
159
173
|
/**
|
|
160
|
-
* The
|
|
174
|
+
* The webrtc-core media helpers. This is a temporary solution required for the SDK sample app
|
|
175
|
+
* to be able to call media helper functions.
|
|
176
|
+
*
|
|
161
177
|
* @instance
|
|
162
178
|
* @type {Object}
|
|
163
179
|
* @private
|
|
164
180
|
* @memberof Meetings
|
|
165
181
|
*/
|
|
166
|
-
// @ts-ignore
|
|
167
182
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loggerRequest", void 0);
|
|
168
183
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "media", void 0);
|
|
169
184
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingCollection", void 0);
|
|
@@ -174,7 +189,61 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
174
189
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "request", void 0);
|
|
175
190
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "geoHintInfo", void 0);
|
|
176
191
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "meetingInfo", void 0);
|
|
192
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mediaHelpers", void 0);
|
|
193
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "breakoutLocusForHandleLater", void 0);
|
|
177
194
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "namespace", _constants.MEETINGS);
|
|
195
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createNoiseReductionEffect", /*#__PURE__*/function () {
|
|
196
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(options) {
|
|
197
|
+
var authToken;
|
|
198
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
199
|
+
while (1) switch (_context.prev = _context.next) {
|
|
200
|
+
case 0:
|
|
201
|
+
// @ts-ignore
|
|
202
|
+
authToken = _this.webex.credentials.supertoken.access_token;
|
|
203
|
+
return _context.abrupt("return", new mediaHelpersModule.NoiseReductionEffect(_objectSpread({
|
|
204
|
+
authToken: authToken
|
|
205
|
+
}, options)));
|
|
206
|
+
case 2:
|
|
207
|
+
case "end":
|
|
208
|
+
return _context.stop();
|
|
209
|
+
}
|
|
210
|
+
}, _callee);
|
|
211
|
+
}));
|
|
212
|
+
return function (_x) {
|
|
213
|
+
return _ref.apply(this, arguments);
|
|
214
|
+
};
|
|
215
|
+
}());
|
|
216
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "createVirtualBackgroundEffect", /*#__PURE__*/function () {
|
|
217
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(options) {
|
|
218
|
+
var authToken;
|
|
219
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
220
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
221
|
+
case 0:
|
|
222
|
+
// @ts-ignore
|
|
223
|
+
authToken = _this.webex.credentials.supertoken.access_token;
|
|
224
|
+
return _context2.abrupt("return", new mediaHelpersModule.VirtualBackgroundEffect(_objectSpread({
|
|
225
|
+
authToken: authToken
|
|
226
|
+
}, options)));
|
|
227
|
+
case 2:
|
|
228
|
+
case "end":
|
|
229
|
+
return _context2.stop();
|
|
230
|
+
}
|
|
231
|
+
}, _callee2);
|
|
232
|
+
}));
|
|
233
|
+
return function (_x2) {
|
|
234
|
+
return _ref2.apply(this, arguments);
|
|
235
|
+
};
|
|
236
|
+
}());
|
|
237
|
+
_this.mediaHelpers = mediaHelpersModule;
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* The Meetings request to interact with server
|
|
241
|
+
* @instance
|
|
242
|
+
* @type {Object}
|
|
243
|
+
* @private
|
|
244
|
+
* @memberof Meetings
|
|
245
|
+
*/
|
|
246
|
+
// @ts-ignore
|
|
178
247
|
_this.request = new _request2.default({}, {
|
|
179
248
|
parent: _this.webex
|
|
180
249
|
});
|
|
@@ -235,48 +304,152 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
235
304
|
* @memberof Meetings
|
|
236
305
|
*/
|
|
237
306
|
_this.media = {
|
|
238
|
-
getUserMedia: _media.default.getUserMedia
|
|
239
|
-
getSupportedDevice: _media.default.getSupportedDevice
|
|
307
|
+
getUserMedia: _media.default.getUserMedia
|
|
240
308
|
};
|
|
241
309
|
_this.onReady();
|
|
242
310
|
return _this;
|
|
243
311
|
}
|
|
244
312
|
|
|
245
313
|
/**
|
|
246
|
-
*
|
|
247
|
-
* @param {Object}
|
|
248
|
-
* @param {
|
|
249
|
-
* @
|
|
250
|
-
* @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
|
|
251
|
-
* @param {String} data.eventType
|
|
252
|
-
* @returns {undefined}
|
|
314
|
+
* check whether you need to handle this main session's locus data or not
|
|
315
|
+
* @param {Object} meeting current meeting data
|
|
316
|
+
* @param {Object} newLocus new locus data
|
|
317
|
+
* @returns {boolean}
|
|
253
318
|
* @private
|
|
254
319
|
* @memberof Meetings
|
|
255
320
|
*/
|
|
256
321
|
(0, _createClass2.default)(Meetings, [{
|
|
257
|
-
key: "
|
|
258
|
-
value: function
|
|
259
|
-
var
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
var
|
|
264
|
-
|
|
322
|
+
key: "isNeedHandleMainLocus",
|
|
323
|
+
value: function isNeedHandleMainLocus(meeting, newLocus) {
|
|
324
|
+
var _newLocus$controls, _newLocus$controls$br, _newLocus$self, _newLocus$self2, _newLocus$self3, _breakoutLocus$joined, _newLocus$self4;
|
|
325
|
+
var breakoutUrl = (_newLocus$controls = newLocus.controls) === null || _newLocus$controls === void 0 ? void 0 : (_newLocus$controls$br = _newLocus$controls.breakout) === null || _newLocus$controls$br === void 0 ? void 0 : _newLocus$controls$br.url;
|
|
326
|
+
var breakoutLocus = this.meetingCollection.getActiveBreakoutLocus(breakoutUrl);
|
|
327
|
+
var isSelfJoined = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self = newLocus.self) === null || _newLocus$self === void 0 ? void 0 : _newLocus$self.state) === _constants._JOINED_;
|
|
328
|
+
var isSelfMoved = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self2 = newLocus.self) === null || _newLocus$self2 === void 0 ? void 0 : _newLocus$self2.state) === _constants._LEFT_ && (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self3 = newLocus.self) === null || _newLocus$self3 === void 0 ? void 0 : _newLocus$self3.reason) === _constants._MOVED_;
|
|
329
|
+
// @ts-ignore
|
|
330
|
+
var deviceFromNewLocus = _util2.default.getThisDevice(newLocus, this.webex.internal.device.url);
|
|
331
|
+
var isResourceMovedOnThisDevice = (deviceFromNewLocus === null || deviceFromNewLocus === void 0 ? void 0 : deviceFromNewLocus.state) === _constants._LEFT_ && (deviceFromNewLocus === null || deviceFromNewLocus === void 0 ? void 0 : deviceFromNewLocus.reason) === _constants._MOVED_;
|
|
332
|
+
var isNewLocusJoinThisDevice = _util2.default.joinedOnThisDevice(meeting, newLocus,
|
|
333
|
+
// @ts-ignore
|
|
334
|
+
this.webex.internal.device.url);
|
|
335
|
+
var isBreakoutLocusJoinThisDevice = (breakoutLocus === null || breakoutLocus === void 0 ? void 0 : (_breakoutLocus$joined = breakoutLocus.joinedWith) === null || _breakoutLocus$joined === void 0 ? void 0 : _breakoutLocus$joined.correlationId) && breakoutLocus.joinedWith.correlationId === (meeting === null || meeting === void 0 ? void 0 : meeting.correlationId);
|
|
336
|
+
if (isSelfJoined && isNewLocusJoinThisDevice) {
|
|
337
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self this device shown as JOINED in the main session');
|
|
338
|
+
if (breakoutLocus !== null && breakoutLocus !== void 0 && breakoutLocus.joinedWith && deviceFromNewLocus) {
|
|
339
|
+
var _breakoutLocus$joined2, _deviceFromNewLocus$r;
|
|
340
|
+
var breakoutReplaceAt = ((_breakoutLocus$joined2 = breakoutLocus.joinedWith.replaces) === null || _breakoutLocus$joined2 === void 0 ? void 0 : _breakoutLocus$joined2.length) > 0 ? breakoutLocus.joinedWith.replaces[0].replaceAt : '';
|
|
341
|
+
var newLocusReplaceAt = ((_deviceFromNewLocus$r = deviceFromNewLocus.replaces) === null || _deviceFromNewLocus$r === void 0 ? void 0 : _deviceFromNewLocus$r.length) > 0 ? deviceFromNewLocus.replaces[0].replaceAt : '';
|
|
342
|
+
if (breakoutReplaceAt && newLocusReplaceAt && breakoutReplaceAt > newLocusReplaceAt) {
|
|
343
|
+
_loggerProxy.default.logger.log("Meetings:index#isNeedHandleMainLocus --> this is expired main joined status locus_dto replacedAt ".concat(newLocusReplaceAt, " bo replacedAt ").concat(breakoutReplaceAt));
|
|
344
|
+
return false;
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
return true;
|
|
348
|
+
}
|
|
349
|
+
if (isBreakoutLocusJoinThisDevice) {
|
|
350
|
+
_loggerProxy.default.logger.log("Meetings:index#isNeedHandleMainLocus --> there is active breakout session and joined on this device, and don't need to handle main session: ".concat(breakoutUrl));
|
|
351
|
+
return false;
|
|
352
|
+
}
|
|
353
|
+
if (isSelfMoved && (newLocus !== null && newLocus !== void 0 && (_newLocus$self4 = newLocus.self) !== null && _newLocus$self4 !== void 0 && _newLocus$self4.removed || isResourceMovedOnThisDevice)) {
|
|
354
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self moved main locus with self removed status or with device resource moved, not need to handle');
|
|
355
|
+
return false;
|
|
356
|
+
}
|
|
357
|
+
if (isSelfJoined && isResourceMovedOnThisDevice) {
|
|
358
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> self device left&moved in main locus with self joined status, not need to handle');
|
|
359
|
+
return false;
|
|
360
|
+
}
|
|
361
|
+
_loggerProxy.default.logger.log('Meetings:index#isNeedHandleMainLocus --> this is a normal main session locusDTO update case');
|
|
362
|
+
return true;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* check whether you need to handle this locus data or not
|
|
367
|
+
* @param {Object} meeting old locus data
|
|
368
|
+
* @param {Object} newLocus new locus data
|
|
369
|
+
* @returns {boolean}
|
|
370
|
+
* @private
|
|
371
|
+
* @memberof Meetings
|
|
372
|
+
*/
|
|
373
|
+
}, {
|
|
374
|
+
key: "isNeedHandleLocusDTO",
|
|
375
|
+
value: function isNeedHandleLocusDTO(meeting, newLocus) {
|
|
376
|
+
if (newLocus) {
|
|
377
|
+
var _newLocus$self5, _newLocus$self6;
|
|
378
|
+
var isNewLocusAsBreakout = _util2.default.isBreakoutLocusDTO(newLocus);
|
|
379
|
+
var isSelfMoved = (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self5 = newLocus.self) === null || _newLocus$self5 === void 0 ? void 0 : _newLocus$self5.state) === _constants._LEFT_ && (newLocus === null || newLocus === void 0 ? void 0 : (_newLocus$self6 = newLocus.self) === null || _newLocus$self6 === void 0 ? void 0 : _newLocus$self6.reason) === _constants._MOVED_;
|
|
380
|
+
if (!meeting) {
|
|
381
|
+
if (isNewLocusAsBreakout) {
|
|
382
|
+
var _newLocus$fullState, _newLocus$self7;
|
|
383
|
+
_loggerProxy.default.logger.log("Meetings:index#isNeedHandleLocusDTO --> the first breakout session locusDTO active status: ".concat((_newLocus$fullState = newLocus.fullState) === null || _newLocus$fullState === void 0 ? void 0 : _newLocus$fullState.active));
|
|
384
|
+
return ((_newLocus$self7 = newLocus.self) === null || _newLocus$self7 === void 0 ? void 0 : _newLocus$self7.state) === _constants._JOINED_;
|
|
385
|
+
}
|
|
386
|
+
return this.isNeedHandleMainLocus(meeting, newLocus);
|
|
387
|
+
}
|
|
388
|
+
if (!isNewLocusAsBreakout) {
|
|
389
|
+
return this.isNeedHandleMainLocus(meeting, newLocus);
|
|
390
|
+
}
|
|
391
|
+
return !isSelfMoved;
|
|
392
|
+
}
|
|
393
|
+
return true;
|
|
394
|
+
}
|
|
265
395
|
|
|
396
|
+
/**
|
|
397
|
+
* get corresponding meeting object by locus data
|
|
398
|
+
* @param {Object} data a locus event
|
|
399
|
+
* @param {String} data.locusUrl
|
|
400
|
+
* @param {Object} data.locus
|
|
401
|
+
* @returns {Object}
|
|
402
|
+
* @private
|
|
403
|
+
* @memberof Meetings
|
|
404
|
+
*/
|
|
405
|
+
}, {
|
|
406
|
+
key: "getCorrespondingMeetingByLocus",
|
|
407
|
+
value: function getCorrespondingMeetingByLocus(data) {
|
|
408
|
+
var _data$locus$info, _data$locus, _data$locus$info2;
|
|
266
409
|
// getting meeting by correlationId. This will happen for the new event
|
|
267
410
|
// Either the locus
|
|
268
411
|
// TODO : Add check for the callBack Address
|
|
269
|
-
|
|
412
|
+
return this.meetingCollection.getByKey(_constants.LOCUS_URL, data.locusUrl) ||
|
|
270
413
|
// @ts-ignore
|
|
271
|
-
this.meetingCollection.getByKey(_constants.CORRELATION_ID,
|
|
414
|
+
this.meetingCollection.getByKey(_constants.CORRELATION_ID,
|
|
415
|
+
// @ts-ignore
|
|
416
|
+
_util2.default.checkForCorrelationId(this.webex.internal.device.url, data.locus)) || this.meetingCollection.getByKey(_constants.SIP_URI, data.locus.self && data.locus.self.callbackInfo && data.locus.self.callbackInfo.callbackAddress) || ((_data$locus$info = data.locus.info) !== null && _data$locus$info !== void 0 && _data$locus$info.isUnifiedSpaceMeeting ? undefined : this.meetingCollection.getByKey(_constants.CONVERSATION_URL, data.locus.conversationUrl)) || this.meetingCollection.getByKey(_constants.MEETINGNUMBER, (_data$locus = data.locus) === null || _data$locus === void 0 ? void 0 : (_data$locus$info2 = _data$locus.info) === null || _data$locus$info2 === void 0 ? void 0 : _data$locus$info2.webExMeetingId);
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* handle locus events and takes meeting actions with them as they come in
|
|
421
|
+
* @param {Object} data a locus event
|
|
422
|
+
* @param {String} data.locusUrl
|
|
423
|
+
* @param {Object} data.locus
|
|
424
|
+
* @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
|
|
425
|
+
* @param {String} data.eventType
|
|
426
|
+
* @returns {undefined}
|
|
427
|
+
* @private
|
|
428
|
+
* @memberof Meetings
|
|
429
|
+
*/
|
|
430
|
+
}, {
|
|
431
|
+
key: "handleLocusEvent",
|
|
432
|
+
value: function handleLocusEvent(data) {
|
|
433
|
+
var _data$locus2,
|
|
434
|
+
_data$locus2$replaces,
|
|
435
|
+
_this2 = this;
|
|
436
|
+
var useRandomDelayForInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
437
|
+
var meeting = this.getCorrespondingMeetingByLocus(data);
|
|
272
438
|
|
|
273
439
|
// Special case when locus has got replaced, This only happend once if a replace locus exists
|
|
274
440
|
// https://sqbu-github.cisco.com/WebExSquared/locus/wiki/Locus-changing-mid-call
|
|
275
441
|
|
|
276
|
-
if (!meeting && ((_data$
|
|
442
|
+
if (!meeting && ((_data$locus2 = data.locus) === null || _data$locus2 === void 0 ? void 0 : (_data$locus2$replaces = _data$locus2.replaces) === null || _data$locus2$replaces === void 0 ? void 0 : _data$locus2$replaces.length) > 0) {
|
|
277
443
|
// Always the last element in the replace is the active one
|
|
278
444
|
meeting = this.meetingCollection.getByKey(_constants.LOCUS_URL, data.locus.replaces[data.locus.replaces.length - 1].locusUrl);
|
|
279
445
|
}
|
|
446
|
+
if (meeting && !_util2.default.isBreakoutLocusDTO(data.locus)) {
|
|
447
|
+
meeting.locusInfo.updateMainSessionLocusCache(data.locus);
|
|
448
|
+
}
|
|
449
|
+
if (!this.isNeedHandleLocusDTO(meeting, data.locus)) {
|
|
450
|
+
_loggerProxy.default.logger.log("Meetings:index#handleLocusEvent --> doesn't need to process locus event");
|
|
451
|
+
return;
|
|
452
|
+
}
|
|
280
453
|
if (!meeting) {
|
|
281
454
|
// TODO: create meeting when we get a meeting object
|
|
282
455
|
// const checkForEnded = (locus) => {
|
|
@@ -316,6 +489,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
316
489
|
|
|
317
490
|
// It's a new meeting so initialize the locus data
|
|
318
491
|
meeting.locusInfo.initialSetup(data.locus);
|
|
492
|
+
_this2.checkHandleBreakoutLocus(data.locus);
|
|
319
493
|
}).catch(function (e) {
|
|
320
494
|
_loggerProxy.default.logger.error(e);
|
|
321
495
|
}).finally(function () {
|
|
@@ -447,7 +621,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
447
621
|
// @ts-ignore
|
|
448
622
|
_loggerProxy.default.set(_this4.webex.logger);
|
|
449
623
|
mediaLogger = new MediaLogger();
|
|
450
|
-
_internalMediaCore.
|
|
624
|
+
(0, _internalMediaCore.setLogger)(mediaLogger);
|
|
451
625
|
|
|
452
626
|
/**
|
|
453
627
|
* The MeetingInfo object to interact with server
|
|
@@ -457,11 +631,17 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
457
631
|
* @memberof Meetings
|
|
458
632
|
*/
|
|
459
633
|
// @ts-ignore
|
|
460
|
-
_this4.meetingInfo = _this4.config.experimental.enableUnifiedMeetings ?
|
|
634
|
+
_this4.meetingInfo = _this4.config.experimental.enableUnifiedMeetings ?
|
|
635
|
+
// @ts-ignore
|
|
636
|
+
new _meetingInfoV.default(_this4.webex) :
|
|
637
|
+
// @ts-ignore
|
|
638
|
+
new _meetingInfo.default(_this4.webex);
|
|
461
639
|
// @ts-ignore
|
|
462
640
|
_this4.personalMeetingRoom = new _personalMeetingRoom.default({
|
|
463
641
|
meetingInfo: _this4.meetingInfo
|
|
464
|
-
},
|
|
642
|
+
},
|
|
643
|
+
// @ts-ignore
|
|
644
|
+
{
|
|
465
645
|
parent: _this4.webex
|
|
466
646
|
});
|
|
467
647
|
_triggerProxy.default.trigger(_this4, {
|
|
@@ -565,7 +745,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
565
745
|
this.webex.internal.device.register()
|
|
566
746
|
// @ts-ignore
|
|
567
747
|
.then(function () {
|
|
568
|
-
return _loggerProxy.default.logger.info(
|
|
748
|
+
return _loggerProxy.default.logger.info( // @ts-ignore
|
|
749
|
+
"Meetings:index#register --> INFO, Device registered ".concat(_this5.webex.internal.device.url));
|
|
569
750
|
})
|
|
570
751
|
// @ts-ignore
|
|
571
752
|
.then(function () {
|
|
@@ -605,21 +786,33 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
605
786
|
return _promise.default.resolve();
|
|
606
787
|
}
|
|
607
788
|
this.stopListeningForEvents();
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
789
|
+
return (
|
|
790
|
+
// @ts-ignore
|
|
791
|
+
this.webex.internal.mercury.disconnect()
|
|
792
|
+
// @ts-ignore
|
|
793
|
+
.then(function () {
|
|
794
|
+
return _this6.webex.internal.device.unregister();
|
|
795
|
+
}).then(function () {
|
|
796
|
+
_triggerProxy.default.trigger(_this6, {
|
|
797
|
+
file: 'meetings',
|
|
798
|
+
function: 'unregister'
|
|
799
|
+
}, _constants.EVENT_TRIGGERS.MEETINGS_UNREGISTERED);
|
|
800
|
+
_this6.registered = false;
|
|
801
|
+
})
|
|
802
|
+
);
|
|
621
803
|
}
|
|
622
804
|
|
|
805
|
+
/**
|
|
806
|
+
* Creates a noise reduction effect
|
|
807
|
+
*
|
|
808
|
+
* @param {INoiseReductionEffect} options optional custom effect options
|
|
809
|
+
* @returns {Promise<effect>} noise reduction effect.
|
|
810
|
+
* @public
|
|
811
|
+
* @memberof Meetings
|
|
812
|
+
*/
|
|
813
|
+
}, {
|
|
814
|
+
key: "uploadLogs",
|
|
815
|
+
value:
|
|
623
816
|
/**
|
|
624
817
|
* Uploads logs to the webex services for tracking
|
|
625
818
|
* @param {Object} [options={}]
|
|
@@ -632,9 +825,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
632
825
|
* @param {String} [options.orgId] org id
|
|
633
826
|
* @returns {String} feedback ID logs were submitted under
|
|
634
827
|
*/
|
|
635
|
-
|
|
636
|
-
key: "uploadLogs",
|
|
637
|
-
value: function uploadLogs() {
|
|
828
|
+
function uploadLogs() {
|
|
638
829
|
var _this7 = this;
|
|
639
830
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
640
831
|
_loggerProxy.default.logger.info('Meetings:index#uploadLogs --> uploading logs');
|
|
@@ -737,6 +928,23 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
737
928
|
if (res) {
|
|
738
929
|
_this9.preferredWebexSite = _util2.default.parseDefaultSiteFromMeetingPreferences(res);
|
|
739
930
|
}
|
|
931
|
+
|
|
932
|
+
// fall back to getting the preferred site from the user information
|
|
933
|
+
if (!_this9.preferredWebexSite) {
|
|
934
|
+
// @ts-ignore
|
|
935
|
+
return _this9.webex.internal.user.get().then(function (user) {
|
|
936
|
+
var _user$userPreferences, _user$userPreferences2;
|
|
937
|
+
var preferredWebexSite = user === null || user === void 0 ? void 0 : (_user$userPreferences = user.userPreferences) === null || _user$userPreferences === void 0 ? void 0 : (_user$userPreferences2 = _user$userPreferences.userPreferencesItems) === null || _user$userPreferences2 === void 0 ? void 0 : _user$userPreferences2.preferredWebExSite;
|
|
938
|
+
if (preferredWebexSite) {
|
|
939
|
+
_this9.preferredWebexSite = preferredWebexSite;
|
|
940
|
+
} else {
|
|
941
|
+
throw new Error('site not found');
|
|
942
|
+
}
|
|
943
|
+
}).catch(function () {
|
|
944
|
+
_loggerProxy.default.logger.error('Failed to fetch preferred site from user - no site will be set');
|
|
945
|
+
});
|
|
946
|
+
}
|
|
947
|
+
return _promise.default.resolve();
|
|
740
948
|
});
|
|
741
949
|
}
|
|
742
950
|
|
|
@@ -779,6 +987,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
779
987
|
* @param {string} destination - sipURL, spaceId, phonenumber, or locus object}
|
|
780
988
|
* @param {string} [type] - the optional specified type, such as locusId
|
|
781
989
|
* @param {Boolean} useRandomDelayForInfo - whether a random delay should be added to fetching meeting info
|
|
990
|
+
* @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
|
|
782
991
|
* @returns {Promise<Meeting>} A new Meeting.
|
|
783
992
|
* @public
|
|
784
993
|
* @memberof Meetings
|
|
@@ -789,6 +998,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
789
998
|
var _this10 = this;
|
|
790
999
|
var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
791
1000
|
var useRandomDelayForInfo = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
1001
|
+
var infoExtraParams = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
|
792
1002
|
// TODO: type should be from a dictionary
|
|
793
1003
|
|
|
794
1004
|
// Validate meeting information based on the provided destination and
|
|
@@ -827,7 +1037,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
827
1037
|
// Validate if a meeting was found.
|
|
828
1038
|
if (!meeting) {
|
|
829
1039
|
// Create a meeting based on the normalized destination and type.
|
|
830
|
-
return _this10.createMeeting(targetDest, type, useRandomDelayForInfo).then(function (createdMeeting) {
|
|
1040
|
+
return _this10.createMeeting(targetDest, type, useRandomDelayForInfo, infoExtraParams).then(function (createdMeeting) {
|
|
831
1041
|
// If the meeting was successfully created.
|
|
832
1042
|
if (createdMeeting && createdMeeting.on) {
|
|
833
1043
|
// Create a destruction event for the meeting.
|
|
@@ -879,6 +1089,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
879
1089
|
* @param {String} destination see create()
|
|
880
1090
|
* @param {String} type see create()
|
|
881
1091
|
* @param {Boolean} useRandomDelayForInfo whether a random delay should be added to fetching meeting info
|
|
1092
|
+
* @param {Object} infoExtraParams extra parameters to be provided when fetching meeting info
|
|
882
1093
|
* @returns {Promise} a new meeting instance complete with meeting info and destination
|
|
883
1094
|
* @private
|
|
884
1095
|
* @memberof Meetings
|
|
@@ -886,9 +1097,10 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
886
1097
|
}, {
|
|
887
1098
|
key: "createMeeting",
|
|
888
1099
|
value: function () {
|
|
889
|
-
var _createMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
1100
|
+
var _createMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(destination) {
|
|
890
1101
|
var type,
|
|
891
1102
|
useRandomDelayForInfo,
|
|
1103
|
+
infoExtraParams,
|
|
892
1104
|
meeting,
|
|
893
1105
|
_destination$fullStat,
|
|
894
1106
|
waitingTime,
|
|
@@ -900,12 +1112,13 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
900
1112
|
isMeetingActive,
|
|
901
1113
|
enableUnifiedMeetings,
|
|
902
1114
|
meetingAddedType,
|
|
903
|
-
|
|
904
|
-
return _regenerator.default.wrap(function
|
|
905
|
-
while (1) switch (
|
|
1115
|
+
_args3 = arguments;
|
|
1116
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
1117
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
906
1118
|
case 0:
|
|
907
|
-
type =
|
|
908
|
-
useRandomDelayForInfo =
|
|
1119
|
+
type = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : null;
|
|
1120
|
+
useRandomDelayForInfo = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
|
|
1121
|
+
infoExtraParams = _args3.length > 3 && _args3[3] !== undefined ? _args3[3] : {};
|
|
909
1122
|
meeting = new _meeting.default({
|
|
910
1123
|
// @ts-ignore
|
|
911
1124
|
userId: this.webex.internal.device.userId,
|
|
@@ -923,7 +1136,7 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
923
1136
|
parent: this.webex
|
|
924
1137
|
});
|
|
925
1138
|
this.meetingCollection.set(meeting);
|
|
926
|
-
|
|
1139
|
+
_context3.prev = 5;
|
|
927
1140
|
// if no participant has joined the scheduled meeting (meaning meeting is not active) and we get a locusEvent,
|
|
928
1141
|
// it means the meeting will start in 5-6 min. In that case, we want to fetchMeetingInfo
|
|
929
1142
|
// between 5 and 2 min (random between 3 minutes) before the meeting starts
|
|
@@ -940,32 +1153,36 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
940
1153
|
isMeetingActive = !!((_destination$fullStat = destination.fullState) !== null && _destination$fullStat !== void 0 && _destination$fullStat.active); // @ts-ignore
|
|
941
1154
|
enableUnifiedMeetings = this.config.experimental.enableUnifiedMeetings;
|
|
942
1155
|
if (!(enableUnifiedMeetings && !isMeetingActive && useRandomDelayForInfo && waitingTime > 0)) {
|
|
943
|
-
|
|
1156
|
+
_context3.next = 15;
|
|
944
1157
|
break;
|
|
945
1158
|
}
|
|
946
1159
|
meeting.fetchMeetingInfoTimeoutId = setTimeout(function () {
|
|
947
|
-
return meeting.fetchMeetingInfo({
|
|
1160
|
+
return meeting.fetchMeetingInfo({
|
|
1161
|
+
extraParams: infoExtraParams
|
|
1162
|
+
});
|
|
948
1163
|
}, waitingTime);
|
|
949
1164
|
meeting.parseMeetingInfo(undefined, destination);
|
|
950
|
-
|
|
1165
|
+
_context3.next = 17;
|
|
951
1166
|
break;
|
|
952
|
-
case
|
|
953
|
-
|
|
954
|
-
return meeting.fetchMeetingInfo({
|
|
955
|
-
|
|
956
|
-
|
|
1167
|
+
case 15:
|
|
1168
|
+
_context3.next = 17;
|
|
1169
|
+
return meeting.fetchMeetingInfo({
|
|
1170
|
+
extraParams: infoExtraParams
|
|
1171
|
+
});
|
|
1172
|
+
case 17:
|
|
1173
|
+
_context3.next = 23;
|
|
957
1174
|
break;
|
|
958
|
-
case
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
if (!(
|
|
1175
|
+
case 19:
|
|
1176
|
+
_context3.prev = 19;
|
|
1177
|
+
_context3.t0 = _context3["catch"](5);
|
|
1178
|
+
if (!(_context3.t0 instanceof _captchaError.default) && !(_context3.t0 instanceof _passwordError.default) && !(_context3.t0 instanceof _permission.default)) {
|
|
962
1179
|
// if there is no meeting info we assume its a 1:1 call or wireless share
|
|
963
1180
|
_loggerProxy.default.logger.info("Meetings:index#createMeeting --> Info Unable to fetch meeting info for ".concat(destination, "."));
|
|
964
1181
|
_loggerProxy.default.logger.info('Meetings:index#createMeeting --> Info assuming this destination is a 1:1 or wireless share');
|
|
965
1182
|
}
|
|
966
|
-
_loggerProxy.default.logger.debug("Meetings:index#createMeeting --> Debug ".concat(
|
|
967
|
-
case
|
|
968
|
-
|
|
1183
|
+
_loggerProxy.default.logger.debug("Meetings:index#createMeeting --> Debug ".concat(_context3.t0, " fetching /meetingInfo for creation."));
|
|
1184
|
+
case 23:
|
|
1185
|
+
_context3.prev = 23;
|
|
969
1186
|
// For type LOCUS_ID we need to parse the locus object to get the information
|
|
970
1187
|
// about the caller and callee
|
|
971
1188
|
// Meeting Added event will be created in `handleLocusEvent`
|
|
@@ -985,16 +1202,16 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
985
1202
|
type: meetingAddedType
|
|
986
1203
|
});
|
|
987
1204
|
}
|
|
988
|
-
return
|
|
989
|
-
case 25:
|
|
990
|
-
return _context.abrupt("return", meeting);
|
|
1205
|
+
return _context3.finish(23);
|
|
991
1206
|
case 26:
|
|
1207
|
+
return _context3.abrupt("return", meeting);
|
|
1208
|
+
case 27:
|
|
992
1209
|
case "end":
|
|
993
|
-
return
|
|
1210
|
+
return _context3.stop();
|
|
994
1211
|
}
|
|
995
|
-
},
|
|
1212
|
+
}, _callee3, this, [[5, 19, 23, 26]]);
|
|
996
1213
|
}));
|
|
997
|
-
function createMeeting(
|
|
1214
|
+
function createMeeting(_x3) {
|
|
998
1215
|
return _createMeeting.apply(this, arguments);
|
|
999
1216
|
}
|
|
1000
1217
|
return createMeeting;
|
|
@@ -1044,7 +1261,8 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1044
1261
|
return this.request.getActiveMeetings().then(function (locusArray) {
|
|
1045
1262
|
var activeLocusUrl = [];
|
|
1046
1263
|
if (locusArray !== null && locusArray !== void 0 && locusArray.loci && locusArray.loci.length > 0) {
|
|
1047
|
-
locusArray.loci
|
|
1264
|
+
var lociToUpdate = _this11.sortLocusArrayToUpdate(locusArray.loci);
|
|
1265
|
+
lociToUpdate.forEach(function (locus) {
|
|
1048
1266
|
activeLocusUrl.push(locus.url);
|
|
1049
1267
|
_this11.handleLocusEvent({
|
|
1050
1268
|
locus: locus,
|
|
@@ -1066,7 +1284,81 @@ var Meetings = /*#__PURE__*/function (_WebexPlugin) {
|
|
|
1066
1284
|
}
|
|
1067
1285
|
}
|
|
1068
1286
|
}
|
|
1287
|
+
}).catch(function (error) {
|
|
1288
|
+
_loggerProxy.default.logger.error("Meetings:index#syncMeetings --> failed to sync meetings, ".concat(error));
|
|
1289
|
+
throw new Error(error);
|
|
1290
|
+
});
|
|
1291
|
+
}
|
|
1292
|
+
|
|
1293
|
+
/**
|
|
1294
|
+
* sort out locus array for initial creating
|
|
1295
|
+
* @param {Array} loci original locus array
|
|
1296
|
+
* @returns {undefined}
|
|
1297
|
+
* @public
|
|
1298
|
+
* @memberof Meetings
|
|
1299
|
+
*/
|
|
1300
|
+
}, {
|
|
1301
|
+
key: "sortLocusArrayToUpdate",
|
|
1302
|
+
value: function sortLocusArrayToUpdate(loci) {
|
|
1303
|
+
var _this12 = this;
|
|
1304
|
+
var mainLoci = loci.filter(function (locus) {
|
|
1305
|
+
return !_util2.default.isBreakoutLocusDTO(locus);
|
|
1306
|
+
});
|
|
1307
|
+
var breakoutLoci = loci.filter(function (locus) {
|
|
1308
|
+
return _util2.default.isValidBreakoutLocus(locus);
|
|
1309
|
+
});
|
|
1310
|
+
this.breakoutLocusForHandleLater = [];
|
|
1311
|
+
var lociToUpdate = (0, _toConsumableArray2.default)(mainLoci);
|
|
1312
|
+
breakoutLoci.forEach(function (breakoutLocus) {
|
|
1313
|
+
var associateMainLocus = mainLoci.find(function (mainLocus) {
|
|
1314
|
+
var _mainLocus$controls, _mainLocus$controls$b, _breakoutLocus$contro, _breakoutLocus$contro2;
|
|
1315
|
+
return ((_mainLocus$controls = mainLocus.controls) === null || _mainLocus$controls === void 0 ? void 0 : (_mainLocus$controls$b = _mainLocus$controls.breakout) === null || _mainLocus$controls$b === void 0 ? void 0 : _mainLocus$controls$b.url) === ((_breakoutLocus$contro = breakoutLocus.controls) === null || _breakoutLocus$contro === void 0 ? void 0 : (_breakoutLocus$contro2 = _breakoutLocus$contro.breakout) === null || _breakoutLocus$contro2 === void 0 ? void 0 : _breakoutLocus$contro2.url);
|
|
1316
|
+
});
|
|
1317
|
+
var existCorrespondingMeeting = _this12.getCorrespondingMeetingByLocus({
|
|
1318
|
+
locus: breakoutLocus,
|
|
1319
|
+
locusUrl: breakoutLocus.url
|
|
1320
|
+
});
|
|
1321
|
+
if (associateMainLocus && !existCorrespondingMeeting) {
|
|
1322
|
+
// if exists both main session and breakout session locus of the same non-exist meeting, handle main locus first,
|
|
1323
|
+
// after meeting create with main locus, then handle the associate breakout locus.
|
|
1324
|
+
// if only handle breakout locus, will miss some date
|
|
1325
|
+
_this12.breakoutLocusForHandleLater.push(breakoutLocus);
|
|
1326
|
+
} else {
|
|
1327
|
+
lociToUpdate.push(breakoutLocus);
|
|
1328
|
+
}
|
|
1329
|
+
});
|
|
1330
|
+
return lociToUpdate;
|
|
1331
|
+
}
|
|
1332
|
+
|
|
1333
|
+
/**
|
|
1334
|
+
* check breakout locus which waiting for main locus's meeting to be created, then handle the breakout locus
|
|
1335
|
+
* @param {Object} newCreatedLocus the locus which just create meeting object of it
|
|
1336
|
+
* @returns {undefined}
|
|
1337
|
+
* @public
|
|
1338
|
+
* @memberof Meetings
|
|
1339
|
+
*/
|
|
1340
|
+
}, {
|
|
1341
|
+
key: "checkHandleBreakoutLocus",
|
|
1342
|
+
value: function checkHandleBreakoutLocus(newCreatedLocus) {
|
|
1343
|
+
if (!newCreatedLocus || !this.breakoutLocusForHandleLater || !this.breakoutLocusForHandleLater.length) {
|
|
1344
|
+
return;
|
|
1345
|
+
}
|
|
1346
|
+
if (_util2.default.isBreakoutLocusDTO(newCreatedLocus)) {
|
|
1347
|
+
return;
|
|
1348
|
+
}
|
|
1349
|
+
var existIndex = this.breakoutLocusForHandleLater.findIndex(function (breakoutLocus) {
|
|
1350
|
+
var _breakoutLocus$contro3, _breakoutLocus$contro4, _newCreatedLocus$cont, _newCreatedLocus$cont2;
|
|
1351
|
+
return ((_breakoutLocus$contro3 = breakoutLocus.controls) === null || _breakoutLocus$contro3 === void 0 ? void 0 : (_breakoutLocus$contro4 = _breakoutLocus$contro3.breakout) === null || _breakoutLocus$contro4 === void 0 ? void 0 : _breakoutLocus$contro4.url) === ((_newCreatedLocus$cont = newCreatedLocus.controls) === null || _newCreatedLocus$cont === void 0 ? void 0 : (_newCreatedLocus$cont2 = _newCreatedLocus$cont.breakout) === null || _newCreatedLocus$cont2 === void 0 ? void 0 : _newCreatedLocus$cont2.url);
|
|
1352
|
+
});
|
|
1353
|
+
if (existIndex < 0) {
|
|
1354
|
+
return;
|
|
1355
|
+
}
|
|
1356
|
+
var associateBreakoutLocus = this.breakoutLocusForHandleLater[existIndex];
|
|
1357
|
+
this.handleLocusEvent({
|
|
1358
|
+
locus: associateBreakoutLocus,
|
|
1359
|
+
locusUrl: associateBreakoutLocus.url
|
|
1069
1360
|
});
|
|
1361
|
+
this.breakoutLocusForHandleLater.splice(existIndex, 1);
|
|
1070
1362
|
}
|
|
1071
1363
|
|
|
1072
1364
|
/**
|