@webex/plugin-meetings 3.0.0-beta.13 → 3.0.0-beta.131
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/UPGRADING.md +9 -9
- package/browsers.js +19 -24
- package/dist/annotation/annotation.types.js +7 -0
- package/dist/annotation/annotation.types.js.map +1 -0
- package/dist/annotation/constants.js +48 -0
- package/dist/annotation/constants.js.map +1 -0
- package/dist/annotation/index.js +355 -0
- package/dist/annotation/index.js.map +1 -0
- package/dist/breakouts/breakout.js +193 -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 +994 -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/browser-detection.js +1 -20
- package/dist/common/browser-detection.js.map +1 -1
- package/dist/common/collection.js +5 -20
- package/dist/common/collection.js.map +1 -1
- package/dist/common/config.js +0 -7
- package/dist/common/config.js.map +1 -1
- package/dist/common/errors/captcha-error.js +5 -26
- package/dist/common/errors/captcha-error.js.map +1 -1
- package/dist/common/errors/intent-to-join.js +5 -26
- package/dist/common/errors/intent-to-join.js.map +1 -1
- package/dist/common/errors/join-meeting.js +6 -27
- package/dist/common/errors/join-meeting.js.map +1 -1
- package/dist/common/errors/media.js +5 -26
- package/dist/common/errors/media.js.map +1 -1
- package/dist/common/errors/parameter.js +5 -33
- package/dist/common/errors/parameter.js.map +1 -1
- package/dist/common/errors/password-error.js +5 -26
- package/dist/common/errors/password-error.js.map +1 -1
- package/dist/common/errors/permission.js +4 -25
- package/dist/common/errors/permission.js.map +1 -1
- package/dist/common/errors/reconnection-in-progress.js +0 -17
- package/dist/common/errors/reconnection-in-progress.js.map +1 -1
- package/dist/common/errors/reconnection.js +5 -26
- package/dist/common/errors/reconnection.js.map +1 -1
- package/dist/common/errors/stats.js +5 -26
- package/dist/common/errors/stats.js.map +1 -1
- package/dist/common/errors/webex-errors.js +6 -41
- package/dist/common/errors/webex-errors.js.map +1 -1
- package/dist/common/errors/webex-meetings-error.js +1 -24
- package/dist/common/errors/webex-meetings-error.js.map +1 -1
- package/dist/common/events/events-scope.js +0 -22
- package/dist/common/events/events-scope.js.map +1 -1
- package/dist/common/events/events.js +0 -23
- package/dist/common/events/events.js.map +1 -1
- package/dist/common/events/trigger-proxy.js +0 -12
- package/dist/common/events/trigger-proxy.js.map +1 -1
- package/dist/common/events/util.js +0 -15
- package/dist/common/events/util.js.map +1 -1
- package/dist/common/logs/logger-config.js +0 -4
- package/dist/common/logs/logger-config.js.map +1 -1
- package/dist/common/logs/logger-proxy.js +1 -8
- package/dist/common/logs/logger-proxy.js.map +1 -1
- package/dist/common/logs/request.js +35 -61
- package/dist/common/logs/request.js.map +1 -1
- package/dist/common/queue.js +4 -14
- package/dist/common/queue.js.map +1 -1
- package/dist/config.js +6 -6
- package/dist/config.js.map +1 -1
- package/dist/constants.js +203 -53
- 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 +294 -0
- package/dist/controls-options-manager/util.js.map +1 -0
- package/dist/index.js +72 -17
- package/dist/index.js.map +1 -1
- package/dist/locus-info/controlsUtils.js +100 -29
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/embeddedAppsUtils.js +3 -26
- package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
- package/dist/locus-info/fullState.js +0 -15
- package/dist/locus-info/fullState.js.map +1 -1
- package/dist/locus-info/hostUtils.js +4 -12
- package/dist/locus-info/hostUtils.js.map +1 -1
- package/dist/locus-info/index.js +406 -216
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/infoUtils.js +0 -38
- package/dist/locus-info/infoUtils.js.map +1 -1
- package/dist/locus-info/mediaSharesUtils.js +54 -38
- package/dist/locus-info/mediaSharesUtils.js.map +1 -1
- package/dist/locus-info/parser.js +88 -123
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/locus-info/selfUtils.js +105 -91
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/media/index.js +55 -165
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +71 -117
- package/dist/media/properties.js.map +1 -1
- package/dist/media/util.js +2 -9
- package/dist/media/util.js.map +1 -1
- package/dist/mediaQualityMetrics/config.js +505 -495
- package/dist/mediaQualityMetrics/config.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +77 -14
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +2603 -2462
- 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 +292 -138
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +315 -336
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js +7 -0
- package/dist/meeting/request.type.js.map +1 -0
- package/dist/meeting/state.js +21 -31
- package/dist/meeting/state.js.map +1 -1
- package/dist/meeting/util.js +463 -583
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/collection.js +3 -25
- package/dist/meeting-info/collection.js.map +1 -1
- package/dist/meeting-info/index.js +10 -33
- package/dist/meeting-info/index.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +305 -286
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meeting-info/request.js +1 -16
- package/dist/meeting-info/request.js.map +1 -1
- package/dist/meeting-info/util.js +98 -183
- package/dist/meeting-info/util.js.map +1 -1
- package/dist/meeting-info/utilv2.js +156 -232
- package/dist/meeting-info/utilv2.js.map +1 -1
- package/dist/meetings/collection.js +24 -20
- package/dist/meetings/collection.js.map +1 -1
- package/dist/meetings/index.js +692 -593
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/request.js +23 -42
- package/dist/meetings/request.js.map +1 -1
- package/dist/meetings/util.js +186 -155
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +89 -88
- 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 +101 -69
- package/dist/member/util.js.map +1 -1
- package/dist/members/collection.js +12 -12
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +166 -205
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +120 -85
- 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 +314 -260
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/config.js +50 -16
- package/dist/metrics/config.js.map +1 -1
- package/dist/metrics/constants.js +4 -7
- package/dist/metrics/constants.js.map +1 -1
- package/dist/metrics/index.js +93 -162
- package/dist/metrics/index.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +167 -50
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/receiveSlot.js +58 -65
- package/dist/multistream/receiveSlot.js.map +1 -1
- package/dist/multistream/receiveSlotManager.js +74 -93
- package/dist/multistream/receiveSlotManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +55 -74
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +6 -40
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +466 -442
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/networkQualityMonitor/index.js +32 -59
- package/dist/networkQualityMonitor/index.js.map +1 -1
- package/dist/personal-meeting-room/index.js +10 -45
- package/dist/personal-meeting-room/index.js.map +1 -1
- package/dist/personal-meeting-room/request.js +2 -33
- package/dist/personal-meeting-room/request.js.map +1 -1
- package/dist/personal-meeting-room/util.js +0 -13
- package/dist/personal-meeting-room/util.js.map +1 -1
- package/dist/reachability/index.js +190 -199
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/request.js +14 -23
- 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 -4
- package/dist/reactions/reactions.js.map +1 -1
- package/dist/reactions/reactions.type.js +19 -23
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.js +326 -465
- 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 +31 -75
- package/dist/roap/index.js.map +1 -1
- package/dist/roap/request.js +129 -136
- package/dist/roap/request.js.map +1 -1
- package/dist/roap/turnDiscovery.js +143 -103
- package/dist/roap/turnDiscovery.js.map +1 -1
- package/dist/statsAnalyzer/global.js +1 -95
- package/dist/statsAnalyzer/global.js.map +1 -1
- package/dist/statsAnalyzer/index.js +369 -461
- package/dist/statsAnalyzer/index.js.map +1 -1
- package/dist/statsAnalyzer/mqaUtil.js +144 -94
- package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
- package/dist/transcription/index.js +13 -45
- package/dist/transcription/index.js.map +1 -1
- package/dist/types/annotation/annotation.types.d.ts +35 -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 +78 -0
- package/dist/types/constants.d.ts +993 -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/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 +108 -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 +147 -0
- package/dist/types/meeting/index.d.ts +1762 -0
- package/dist/types/meeting/locusMediaRequest.d.ts +70 -0
- package/dist/types/meeting/muteState.d.ts +186 -0
- package/dist/types/meeting/request.d.ts +269 -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 +76 -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 +345 -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 +157 -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 +101 -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 +263 -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/internal-README.md +7 -6
- package/package.json +28 -21
- package/src/annotation/annotation.types.ts +42 -0
- package/src/annotation/constants.ts +36 -0
- package/src/annotation/index.ts +339 -0
- package/src/breakouts/README.md +220 -0
- package/src/breakouts/breakout.ts +163 -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 +860 -0
- package/src/breakouts/request.ts +55 -0
- package/src/breakouts/utils.ts +57 -0
- package/src/common/browser-detection.ts +9 -6
- package/src/common/collection.ts +3 -1
- package/src/common/errors/captcha-error.ts +6 -6
- package/src/common/errors/intent-to-join.ts +6 -6
- package/src/common/errors/join-meeting.ts +12 -8
- package/src/common/errors/media.ts +6 -6
- package/src/common/errors/parameter.ts +9 -6
- package/src/common/errors/password-error.ts +6 -6
- package/src/common/errors/permission.ts +5 -5
- package/src/common/errors/reconnection.ts +6 -6
- package/src/common/errors/stats.ts +6 -6
- package/src/common/errors/webex-errors.ts +7 -5
- package/src/common/errors/webex-meetings-error.ts +1 -1
- package/src/common/events/events-scope.ts +5 -1
- package/src/common/events/events.ts +5 -1
- package/src/common/events/trigger-proxy.ts +8 -3
- package/src/common/events/util.ts +1 -2
- package/src/common/logs/logger-proxy.ts +21 -10
- package/src/common/logs/request.ts +11 -8
- package/src/config.ts +16 -12
- package/src/constants.ts +153 -7
- 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 +281 -0
- package/src/index.ts +33 -0
- package/src/locus-info/controlsUtils.ts +142 -24
- package/src/locus-info/fullState.ts +15 -11
- package/src/locus-info/hostUtils.ts +4 -3
- package/src/locus-info/index.ts +346 -55
- package/src/locus-info/infoUtils.ts +12 -4
- package/src/locus-info/mediaSharesUtils.ts +52 -4
- package/src/locus-info/parser.ts +46 -68
- package/src/locus-info/selfUtils.ts +195 -56
- package/src/media/index.ts +139 -196
- package/src/media/properties.ts +43 -36
- package/src/media/util.ts +1 -1
- package/src/mediaQualityMetrics/config.ts +380 -378
- package/src/meeting/in-meeting-actions.ts +159 -3
- package/src/meeting/index.ts +2803 -1584
- package/src/meeting/locusMediaRequest.ts +309 -0
- package/src/meeting/muteState.ts +290 -72
- package/src/meeting/request.ts +247 -178
- package/src/meeting/request.type.ts +13 -0
- package/src/meeting/state.ts +45 -30
- package/src/meeting/util.ts +445 -395
- package/src/meeting-info/collection.ts +2 -1
- package/src/meeting-info/index.ts +32 -30
- package/src/meeting-info/meeting-info-v2.ts +235 -116
- package/src/meeting-info/request.ts +9 -3
- package/src/meeting-info/util.ts +54 -46
- package/src/meeting-info/utilv2.ts +71 -55
- package/src/meetings/collection.ts +21 -1
- package/src/meetings/index.ts +772 -437
- package/src/meetings/request.ts +29 -25
- package/src/meetings/util.ts +132 -33
- package/src/member/index.ts +95 -49
- package/src/member/types.ts +24 -0
- package/src/member/util.ts +106 -13
- package/src/members/collection.ts +8 -1
- package/src/members/index.ts +288 -130
- package/src/members/request.ts +144 -31
- package/src/members/types.ts +28 -0
- package/src/members/util.ts +316 -235
- package/src/metrics/config.ts +302 -90
- package/src/metrics/constants.ts +2 -6
- package/src/metrics/index.ts +124 -95
- package/src/multistream/mediaRequestManager.ts +203 -45
- package/src/multistream/receiveSlot.ts +69 -26
- package/src/multistream/receiveSlotManager.ts +62 -38
- package/src/multistream/remoteMedia.ts +30 -4
- package/src/multistream/remoteMediaGroup.ts +4 -3
- package/src/multistream/remoteMediaManager.ts +230 -66
- package/src/networkQualityMonitor/index.ts +24 -27
- package/src/personal-meeting-room/index.ts +12 -16
- package/src/personal-meeting-room/request.ts +10 -3
- package/src/personal-meeting-room/util.ts +3 -3
- package/src/reachability/index.ts +131 -79
- package/src/reachability/request.ts +43 -34
- package/src/reactions/constants.ts +4 -0
- package/src/reactions/reactions.ts +8 -8
- package/src/reactions/reactions.type.ts +31 -5
- package/src/reconnection-manager/index.ts +193 -111
- 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 +53 -53
- package/src/roap/request.ts +77 -64
- package/src/roap/turnDiscovery.ts +101 -48
- package/src/statsAnalyzer/global.ts +8 -104
- package/src/statsAnalyzer/index.ts +624 -376
- package/src/statsAnalyzer/mqaUtil.ts +203 -90
- package/src/transcription/index.ts +34 -32
- package/test/integration/spec/converged-space-meetings.js +177 -0
- package/test/integration/spec/journey.js +670 -466
- package/test/integration/spec/space-meeting.js +320 -204
- package/test/integration/spec/transcription.js +7 -8
- package/test/unit/spec/annotation/index.ts +433 -0
- package/test/unit/spec/breakouts/breakout.ts +203 -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 +1609 -0
- package/test/unit/spec/breakouts/request.ts +104 -0
- package/test/unit/spec/breakouts/utils.js +72 -0
- package/test/unit/spec/common/browser-detection.js +9 -28
- package/test/unit/spec/controls-options-manager/index.js +287 -0
- package/test/unit/spec/controls-options-manager/util.js +504 -0
- package/test/unit/spec/fixture/locus.js +93 -90
- package/test/unit/spec/locus-info/controlsUtils.js +305 -32
- package/test/unit/spec/locus-info/embeddedAppsUtils.js +8 -6
- package/test/unit/spec/locus-info/index.js +636 -5
- package/test/unit/spec/locus-info/infoUtils.js +26 -33
- package/test/unit/spec/locus-info/lib/BasicSeqCmp.json +88 -430
- package/test/unit/spec/locus-info/lib/SeqCmp.json +513 -685
- package/test/unit/spec/locus-info/mediaSharesUtils.ts +22 -0
- package/test/unit/spec/locus-info/parser.js +3 -9
- package/test/unit/spec/locus-info/selfConstant.js +110 -103
- package/test/unit/spec/locus-info/selfUtils.js +252 -12
- package/test/unit/spec/media/index.ts +104 -8
- package/test/unit/spec/media/properties.ts +9 -9
- package/test/unit/spec/meeting/in-meeting-actions.ts +76 -3
- package/test/unit/spec/meeting/index.js +3112 -921
- package/test/unit/spec/meeting/locusMediaRequest.ts +436 -0
- package/test/unit/spec/meeting/muteState.js +421 -94
- package/test/unit/spec/meeting/request.js +421 -79
- package/test/unit/spec/meeting/utils.js +326 -189
- package/test/unit/spec/meeting-info/meetinginfov2.js +481 -76
- package/test/unit/spec/meeting-info/request.js +7 -9
- package/test/unit/spec/meeting-info/util.js +11 -12
- package/test/unit/spec/meeting-info/utilv2.js +131 -74
- package/test/unit/spec/meetings/collection.js +15 -1
- package/test/unit/spec/meetings/index.js +1126 -328
- package/test/unit/spec/meetings/utils.js +220 -14
- package/test/unit/spec/member/index.js +24 -1
- package/test/unit/spec/member/util.js +383 -32
- package/test/unit/spec/members/index.js +424 -55
- package/test/unit/spec/members/request.js +228 -40
- package/test/unit/spec/members/utils.js +191 -4
- package/test/unit/spec/metrics/index.js +113 -20
- package/test/unit/spec/multistream/mediaRequestManager.ts +650 -105
- package/test/unit/spec/multistream/receiveSlot.ts +76 -17
- 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 +5 -5
- package/test/unit/spec/multistream/remoteMediaManager.ts +549 -65
- package/test/unit/spec/networkQualityMonitor/index.js +24 -18
- package/test/unit/spec/personal-meeting-room/personal-meeting-room.js +2 -7
- package/test/unit/spec/reachability/index.ts +176 -27
- package/test/unit/spec/reachability/request.js +66 -0
- package/test/unit/spec/reconnection-manager/index.js +62 -31
- 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 +19 -49
- package/test/unit/spec/roap/request.ts +187 -0
- package/test/unit/spec/roap/turnDiscovery.ts +92 -50
- package/test/unit/spec/stats-analyzer/index.js +116 -60
- package/test/utils/cmr.js +44 -42
- package/test/utils/constants.js +9 -0
- package/test/utils/integrationTestUtils.js +64 -0
- package/test/utils/testUtils.js +63 -99
- package/test/utils/webex-config.js +22 -18
- package/test/utils/webex-test-users.js +57 -50
- package/tsconfig.json +6 -0
- package/dist/media/internal-media-core-wrapper.js +0 -22
- package/dist/media/internal-media-core-wrapper.js.map +0 -1
- package/dist/meeting/effectsState.js +0 -334
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/multistream/multistreamMedia.js +0 -116
- 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 -92
- package/test/unit/spec/meeting/effectsState.js +0 -291
|
@@ -1,31 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
-
|
|
5
4
|
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
-
|
|
7
5
|
_Object$defineProperty(exports, "__esModule", {
|
|
8
6
|
value: true
|
|
9
7
|
});
|
|
10
|
-
|
|
11
8
|
exports.default = void 0;
|
|
12
|
-
|
|
13
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/taggedTemplateLiteral"));
|
|
14
|
-
|
|
15
10
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
16
|
-
|
|
17
11
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
18
|
-
|
|
19
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
20
|
-
|
|
21
13
|
var _difference2 = _interopRequireDefault(require("lodash/difference"));
|
|
22
|
-
|
|
23
14
|
var _queue = _interopRequireDefault(require("../common/queue"));
|
|
24
|
-
|
|
25
15
|
var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
|
|
26
|
-
|
|
27
16
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
|
|
28
|
-
|
|
29
17
|
/**
|
|
30
18
|
* Locus Delta Parser
|
|
31
19
|
* @private
|
|
@@ -33,6 +21,7 @@ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _temp
|
|
|
33
21
|
*/
|
|
34
22
|
var Parser = /*#__PURE__*/function () {
|
|
35
23
|
// processing status
|
|
24
|
+
|
|
36
25
|
// loci comparison states
|
|
37
26
|
|
|
38
27
|
/**
|
|
@@ -42,12 +31,13 @@ var Parser = /*#__PURE__*/function () {
|
|
|
42
31
|
(0, _classCallCheck2.default)(this, Parser);
|
|
43
32
|
(0, _defineProperty2.default)(this, "queue", void 0);
|
|
44
33
|
(0, _defineProperty2.default)(this, "workingCopy", void 0);
|
|
45
|
-
this.queue = new _queue.default();
|
|
46
|
-
|
|
34
|
+
this.queue = new _queue.default();
|
|
35
|
+
// @ts-ignore - This is declared as static class member and again being initialized here from same
|
|
47
36
|
this.status = Parser.status.IDLE;
|
|
48
37
|
this.onDeltaAction = null;
|
|
49
38
|
this.workingCopy = null;
|
|
50
39
|
}
|
|
40
|
+
|
|
51
41
|
/**
|
|
52
42
|
* Checks if two sequences overlap in time,
|
|
53
43
|
* the sequence with the higher minimum value is greater.
|
|
@@ -56,8 +46,6 @@ var Parser = /*#__PURE__*/function () {
|
|
|
56
46
|
* @param {Types~Locus} incoming
|
|
57
47
|
* @returns {string} loci comparison state
|
|
58
48
|
*/
|
|
59
|
-
|
|
60
|
-
|
|
61
49
|
(0, _createClass2.default)(Parser, [{
|
|
62
50
|
key: "isValidLocus",
|
|
63
51
|
value:
|
|
@@ -68,32 +56,30 @@ var Parser = /*#__PURE__*/function () {
|
|
|
68
56
|
*/
|
|
69
57
|
function isValidLocus(newLoci) {
|
|
70
58
|
var _this = this;
|
|
71
|
-
|
|
72
59
|
var isValid = false;
|
|
73
60
|
var IDLE = Parser.status.IDLE;
|
|
74
|
-
var isLoci = Parser.isLoci;
|
|
75
|
-
|
|
61
|
+
var isLoci = Parser.isLoci;
|
|
62
|
+
// @ts-ignore
|
|
76
63
|
var setStatus = function setStatus(status) {
|
|
64
|
+
// @ts-ignore
|
|
77
65
|
_this.status = status;
|
|
78
|
-
};
|
|
79
|
-
|
|
66
|
+
};
|
|
80
67
|
|
|
68
|
+
// one or both objects are not locus delta events
|
|
81
69
|
if (!isLoci(this.workingCopy) || !isLoci(newLoci)) {
|
|
82
70
|
setStatus(IDLE);
|
|
83
|
-
|
|
84
71
|
_loggerProxy.default.logger.info('Locus-info:parser#processDeltaEvent --> Ignoring non-locus object. workingCopy:', this.workingCopy, 'newLoci:', newLoci);
|
|
85
72
|
} else {
|
|
86
73
|
isValid = true;
|
|
87
74
|
}
|
|
88
|
-
|
|
89
75
|
return isValid;
|
|
90
76
|
}
|
|
77
|
+
|
|
91
78
|
/**
|
|
92
79
|
* Determines if a paricular locus's sequence is empty
|
|
93
80
|
* @param {Types~Locus} locus
|
|
94
81
|
* @returns {bool}
|
|
95
82
|
*/
|
|
96
|
-
|
|
97
83
|
}, {
|
|
98
84
|
key: "nextEvent",
|
|
99
85
|
value:
|
|
@@ -106,11 +92,10 @@ var Parser = /*#__PURE__*/function () {
|
|
|
106
92
|
// @ts-ignore
|
|
107
93
|
if (this.status === Parser.status.PAUSED) {
|
|
108
94
|
_loggerProxy.default.logger.info('Locus-info:parser#nextEvent --> Locus parser paused.');
|
|
109
|
-
|
|
110
95
|
return;
|
|
111
|
-
}
|
|
112
|
-
|
|
96
|
+
}
|
|
113
97
|
|
|
98
|
+
// continue processing until queue is empty
|
|
114
99
|
if (this.queue.size() > 0) {
|
|
115
100
|
this.processDeltaEvent();
|
|
116
101
|
} else {
|
|
@@ -118,6 +103,7 @@ var Parser = /*#__PURE__*/function () {
|
|
|
118
103
|
this.status = Parser.status.IDLE;
|
|
119
104
|
}
|
|
120
105
|
}
|
|
106
|
+
|
|
121
107
|
/**
|
|
122
108
|
* Function handler for delta actions,
|
|
123
109
|
* is set by instance callee.
|
|
@@ -126,24 +112,23 @@ var Parser = /*#__PURE__*/function () {
|
|
|
126
112
|
* @returns {undefined}
|
|
127
113
|
*/
|
|
128
114
|
// eslint-disable-next-line no-unused-vars
|
|
129
|
-
|
|
130
115
|
}, {
|
|
131
116
|
key: "onDeltaAction",
|
|
132
117
|
value: function onDeltaAction(action, locus) {}
|
|
118
|
+
|
|
133
119
|
/**
|
|
134
120
|
* Event handler for locus delta events
|
|
135
121
|
* @param {Types~Locus} loci Locus Delta
|
|
136
122
|
* @returns {undefined}
|
|
137
123
|
*/
|
|
138
|
-
|
|
139
124
|
}, {
|
|
140
125
|
key: "onDeltaEvent",
|
|
141
126
|
value: function onDeltaEvent(loci) {
|
|
142
127
|
// enqueue the new loci
|
|
143
|
-
this.queue.enqueue(loci);
|
|
128
|
+
this.queue.enqueue(loci);
|
|
129
|
+
// start processing events in the queue if idle
|
|
144
130
|
// and a function handler is defined
|
|
145
131
|
// @ts-ignore
|
|
146
|
-
|
|
147
132
|
if (this.status === Parser.status.IDLE && this.onDeltaAction) {
|
|
148
133
|
// Update status, ensure we only process one event at a time.
|
|
149
134
|
// @ts-ignore
|
|
@@ -151,13 +136,13 @@ var Parser = /*#__PURE__*/function () {
|
|
|
151
136
|
this.processDeltaEvent();
|
|
152
137
|
}
|
|
153
138
|
}
|
|
139
|
+
|
|
154
140
|
/**
|
|
155
141
|
* Appends new data onto a string of existing data.
|
|
156
142
|
* @param {string} newData
|
|
157
143
|
* @param {string} oldData
|
|
158
144
|
* @returns {string}
|
|
159
145
|
*/
|
|
160
|
-
|
|
161
146
|
}, {
|
|
162
147
|
key: "pause",
|
|
163
148
|
value:
|
|
@@ -168,35 +153,32 @@ var Parser = /*#__PURE__*/function () {
|
|
|
168
153
|
function pause() {
|
|
169
154
|
// @ts-ignore
|
|
170
155
|
this.status = Parser.status.PAUSED;
|
|
171
|
-
|
|
172
156
|
_loggerProxy.default.logger.info('Locus-info:parser#pause --> Locus parser paused.');
|
|
173
157
|
}
|
|
158
|
+
|
|
174
159
|
/**
|
|
175
160
|
* Processes next locus delta in the queue,
|
|
176
161
|
* continues until the queue is empty
|
|
177
162
|
* or cleared.
|
|
178
163
|
* @returns {undefined}
|
|
179
164
|
*/
|
|
180
|
-
|
|
181
165
|
}, {
|
|
182
166
|
key: "processDeltaEvent",
|
|
183
167
|
value: function processDeltaEvent() {
|
|
184
168
|
var _Parser$loci = Parser.loci,
|
|
185
|
-
|
|
186
|
-
|
|
169
|
+
DESYNC = _Parser$loci.DESYNC,
|
|
170
|
+
USE_INCOMING = _Parser$loci.USE_INCOMING;
|
|
187
171
|
var extract = Parser.extractComparisonState;
|
|
188
172
|
var newLoci = this.queue.dequeue();
|
|
189
|
-
|
|
190
173
|
if (!this.isValidLocus(newLoci)) {
|
|
191
174
|
return;
|
|
192
175
|
}
|
|
193
|
-
|
|
194
176
|
var result = Parser.compare(this.workingCopy, newLoci);
|
|
195
|
-
var lociComparison = extract(result);
|
|
196
|
-
// for full debugging.
|
|
177
|
+
var lociComparison = extract(result);
|
|
197
178
|
|
|
179
|
+
// limited debugging, use chrome extension
|
|
180
|
+
// for full debugging.
|
|
198
181
|
_loggerProxy.default.logger.debug("Locus-info:parser#processDeltaEvent --> Locus Debug: ".concat(result));
|
|
199
|
-
|
|
200
182
|
if (lociComparison === DESYNC) {
|
|
201
183
|
// wait for desync response
|
|
202
184
|
this.pause();
|
|
@@ -206,53 +188,54 @@ var Parser = /*#__PURE__*/function () {
|
|
|
206
188
|
// and here when USE_INCOMING locus.
|
|
207
189
|
this.workingCopy = newLoci;
|
|
208
190
|
}
|
|
209
|
-
|
|
210
191
|
if (this.onDeltaAction) {
|
|
211
192
|
_loggerProxy.default.logger.info("Locus-info:parser#processDeltaEvent --> Locus Delta Action: ".concat(lociComparison));
|
|
212
193
|
|
|
194
|
+
// eslint-disable-next-line no-useless-call
|
|
213
195
|
this.onDeltaAction.call(this, lociComparison, newLoci);
|
|
214
196
|
}
|
|
215
|
-
|
|
216
197
|
this.nextEvent();
|
|
217
198
|
}
|
|
199
|
+
|
|
218
200
|
/**
|
|
219
201
|
* Resume from a paused state
|
|
220
202
|
* @returns {undefined}
|
|
221
203
|
*/
|
|
222
|
-
|
|
223
204
|
}, {
|
|
224
205
|
key: "resume",
|
|
225
206
|
value: function resume() {
|
|
226
|
-
_loggerProxy.default.logger.info('Locus-info:parser#resume --> Locus parser resumed.');
|
|
227
|
-
|
|
228
|
-
|
|
207
|
+
_loggerProxy.default.logger.info('Locus-info:parser#resume --> Locus parser resumed.');
|
|
208
|
+
// @ts-ignore
|
|
229
209
|
this.status = Parser.status.WORKING;
|
|
230
210
|
this.nextEvent();
|
|
231
211
|
}
|
|
212
|
+
|
|
232
213
|
/**
|
|
233
214
|
* Gets related debug info for given error code
|
|
234
215
|
* @param {string} debugCode Debug code
|
|
235
216
|
* @param {string} comparison Locus comparison string
|
|
236
217
|
* @returns {object} Debug message
|
|
237
218
|
*/
|
|
238
|
-
|
|
239
219
|
}], [{
|
|
240
220
|
key: "checkSequenceOverlap",
|
|
241
221
|
value: function checkSequenceOverlap(current, incoming) {
|
|
242
|
-
var comparison = null;
|
|
222
|
+
var comparison = null;
|
|
243
223
|
|
|
224
|
+
// if earliest working copy sequence is more recent than last incoming sequence
|
|
244
225
|
if (current.min > incoming.max) {
|
|
245
226
|
// choose left side (current)
|
|
246
227
|
comparison = "".concat(Parser.loci.GT, ":SO001");
|
|
247
|
-
}
|
|
228
|
+
}
|
|
229
|
+
// if last working copy sequence is before the earliest incoming sequence
|
|
248
230
|
else if (current.max < incoming.min) {
|
|
249
231
|
// choose right side (incoming)
|
|
250
232
|
comparison = "".concat(Parser.loci.LT, ":SO002");
|
|
251
|
-
}
|
|
252
|
-
|
|
233
|
+
}
|
|
253
234
|
|
|
235
|
+
// if no match above, defaults to null
|
|
254
236
|
return comparison;
|
|
255
237
|
}
|
|
238
|
+
|
|
256
239
|
/**
|
|
257
240
|
* Checks if two sequences have unequal ranges.
|
|
258
241
|
* Chooses sequence with most larger range.
|
|
@@ -260,7 +243,6 @@ var Parser = /*#__PURE__*/function () {
|
|
|
260
243
|
* @param {Types~Locus} incoming
|
|
261
244
|
* @returns {object} loci comparison
|
|
262
245
|
*/
|
|
263
|
-
|
|
264
246
|
}, {
|
|
265
247
|
key: "checkUnequalRanges",
|
|
266
248
|
value: function checkUnequalRanges(current, incoming) {
|
|
@@ -268,14 +250,16 @@ var Parser = /*#__PURE__*/function () {
|
|
|
268
250
|
var currentIsNotUnique = current.unique.length === 0;
|
|
269
251
|
var incomingIsNotUnique = incoming.unique.length === 0;
|
|
270
252
|
var currentTotalRange = current.end - current.min;
|
|
271
|
-
var incomingTotalRange = incoming.end - incoming.min;
|
|
253
|
+
var incomingTotalRange = incoming.end - incoming.min;
|
|
272
254
|
|
|
255
|
+
// no unique values for both loci
|
|
273
256
|
if (currentIsNotUnique && incomingIsNotUnique) {
|
|
274
257
|
// current working copy loci has a larger range
|
|
275
258
|
if (currentTotalRange > incomingTotalRange) {
|
|
276
259
|
// choose left side (current)
|
|
277
260
|
comparison = "".concat(Parser.loci.GT, ":UR001");
|
|
278
|
-
}
|
|
261
|
+
}
|
|
262
|
+
// incoming delta loci has a larger range
|
|
279
263
|
else if (currentTotalRange < incomingTotalRange) {
|
|
280
264
|
// choose right side (incoming)
|
|
281
265
|
comparison = "".concat(Parser.loci.LT, ":UR002");
|
|
@@ -285,9 +269,9 @@ var Parser = /*#__PURE__*/function () {
|
|
|
285
269
|
comparison = "".concat(Parser.loci.EQ, ":UR003");
|
|
286
270
|
}
|
|
287
271
|
}
|
|
288
|
-
|
|
289
272
|
return comparison;
|
|
290
273
|
}
|
|
274
|
+
|
|
291
275
|
/**
|
|
292
276
|
* Checks if either sequences has unique entries.
|
|
293
277
|
* Entries are considered unique if they do not overlap
|
|
@@ -297,25 +281,26 @@ var Parser = /*#__PURE__*/function () {
|
|
|
297
281
|
* @param {Types~Locus} incoming
|
|
298
282
|
* @returns {string} loci comparison state
|
|
299
283
|
*/
|
|
300
|
-
|
|
301
284
|
}, {
|
|
302
285
|
key: "checkForUniqueEntries",
|
|
303
286
|
value: function checkForUniqueEntries(current, incoming) {
|
|
304
287
|
var comparison = null;
|
|
305
288
|
var currentIsUnique = current.unique.length > 0;
|
|
306
|
-
var incomingIsUnique = incoming.unique.length > 0;
|
|
289
|
+
var incomingIsUnique = incoming.unique.length > 0;
|
|
307
290
|
|
|
291
|
+
// current has unique entries and incoming does not
|
|
308
292
|
if (currentIsUnique && !incomingIsUnique) {
|
|
309
293
|
// choose left side (current)
|
|
310
294
|
comparison = "".concat(Parser.loci.GT, ":UE001");
|
|
311
|
-
}
|
|
295
|
+
}
|
|
296
|
+
// current has no unique entries but incoming does
|
|
312
297
|
else if (!currentIsUnique && incomingIsUnique) {
|
|
313
298
|
// choose right side (incoming)
|
|
314
299
|
comparison = "".concat(Parser.loci.LT, ":UE002");
|
|
315
300
|
}
|
|
316
|
-
|
|
317
301
|
return comparison;
|
|
318
302
|
}
|
|
303
|
+
|
|
319
304
|
/**
|
|
320
305
|
* Checks both Locus Delta objects to see if they are
|
|
321
306
|
* out of sync with one another. If so sends a DESYNC
|
|
@@ -324,7 +309,6 @@ var Parser = /*#__PURE__*/function () {
|
|
|
324
309
|
* @param {Types~Locus} incoming
|
|
325
310
|
* @returns {string} loci comparison state
|
|
326
311
|
*/
|
|
327
|
-
|
|
328
312
|
}, {
|
|
329
313
|
key: "checkIfOutOfSync",
|
|
330
314
|
value: function checkIfOutOfSync(current, incoming) {
|
|
@@ -334,22 +318,20 @@ var Parser = /*#__PURE__*/function () {
|
|
|
334
318
|
var currentHasNoRange = !current.start && !current.end;
|
|
335
319
|
var incomingHasNoRange = !incoming.start && !incoming.end;
|
|
336
320
|
var neitherSeqHasRange = currentHasNoRange && incomingHasNoRange;
|
|
337
|
-
|
|
338
321
|
var hasUniqOverlap = function hasUniqOverlap(list, min, max) {
|
|
339
322
|
return list.some(function (seq) {
|
|
340
323
|
return min < seq && seq < max;
|
|
341
324
|
});
|
|
342
|
-
};
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
325
|
+
};
|
|
326
|
+
// current unique entries overlap the total range of incoming
|
|
327
|
+
var currentUniqOverlap = hasUniqOverlap(current.unique, incoming.min, incoming.max);
|
|
328
|
+
// vice-versa, incoming unique entries overlap the total range of current
|
|
347
329
|
var incomingUniqOverlap = hasUniqOverlap(incoming.unique, current.min, current.max);
|
|
348
|
-
|
|
349
330
|
if (neitherSeqHasRange || currentUniqOverlap || incomingUniqOverlap) {
|
|
350
331
|
// outputs string indicating which condition occurred. ex: 0,1,0
|
|
351
|
-
var debugInfo = "".concat(+neitherSeqHasRange, ",").concat(+currentUniqOverlap, ",").concat(+incomingUniqOverlap);
|
|
332
|
+
var debugInfo = "".concat(+neitherSeqHasRange, ",").concat(+currentUniqOverlap, ",").concat(+incomingUniqOverlap);
|
|
352
333
|
|
|
334
|
+
// send DESYNC to server
|
|
353
335
|
comparison = "".concat(Parser.loci.DESYNC, ":OOS001:").concat(debugInfo);
|
|
354
336
|
} else if (currentUniqueMin > incomingUniqueMin) {
|
|
355
337
|
// choose left side (current)
|
|
@@ -358,9 +340,9 @@ var Parser = /*#__PURE__*/function () {
|
|
|
358
340
|
// choose right side (incoming)
|
|
359
341
|
comparison = "".concat(Parser.loci.LT, ":OOS003");
|
|
360
342
|
}
|
|
361
|
-
|
|
362
343
|
return comparison;
|
|
363
344
|
}
|
|
345
|
+
|
|
364
346
|
/**
|
|
365
347
|
* Compares two loci to determine which one contains the most recent state
|
|
366
348
|
* @instance
|
|
@@ -369,26 +351,23 @@ var Parser = /*#__PURE__*/function () {
|
|
|
369
351
|
* @param {Types~Locus} incoming
|
|
370
352
|
* @returns {string} loci comparison state
|
|
371
353
|
*/
|
|
372
|
-
|
|
373
354
|
}, {
|
|
374
355
|
key: "compare",
|
|
375
356
|
value: function compare(current, incoming) {
|
|
376
357
|
var isSequenceEmpty = Parser.isSequenceEmpty;
|
|
377
358
|
var extract = Parser.extractComparisonState;
|
|
378
359
|
var pack = Parser.packComparisonResult;
|
|
379
|
-
|
|
380
360
|
if (isSequenceEmpty(current) || isSequenceEmpty(incoming)) {
|
|
381
361
|
return pack(Parser.loci.USE_INCOMING, 'C001');
|
|
382
362
|
}
|
|
383
|
-
|
|
384
363
|
if (incoming.baseSequence) {
|
|
385
364
|
return pack(Parser.compareDelta(current, incoming), 'C002');
|
|
386
365
|
}
|
|
387
|
-
|
|
388
366
|
var result = Parser.compareSequence(current.sequence, incoming.sequence);
|
|
389
367
|
var action = Parser.compareToAction(extract(result));
|
|
390
368
|
return pack(action, result);
|
|
391
369
|
}
|
|
370
|
+
|
|
392
371
|
/**
|
|
393
372
|
* Compares two loci sequences (with delta params) and indicates what action
|
|
394
373
|
* to take.
|
|
@@ -399,127 +378,117 @@ var Parser = /*#__PURE__*/function () {
|
|
|
399
378
|
* @private
|
|
400
379
|
* @returns {string} loci comparison state
|
|
401
380
|
*/
|
|
402
|
-
|
|
403
381
|
}, {
|
|
404
382
|
key: "compareDelta",
|
|
405
383
|
value: function compareDelta(current, incoming) {
|
|
406
384
|
var _Parser$loci2 = Parser.loci,
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
385
|
+
LT = _Parser$loci2.LT,
|
|
386
|
+
GT = _Parser$loci2.GT,
|
|
387
|
+
EQ = _Parser$loci2.EQ,
|
|
388
|
+
DESYNC = _Parser$loci2.DESYNC,
|
|
389
|
+
USE_INCOMING = _Parser$loci2.USE_INCOMING;
|
|
412
390
|
var extract = Parser.extractComparisonState;
|
|
413
391
|
var pack = Parser.packComparisonResult;
|
|
414
392
|
var result = Parser.compareSequence(current.sequence, incoming.sequence);
|
|
415
393
|
var comparison = extract(result);
|
|
416
|
-
|
|
417
394
|
if (comparison !== LT) {
|
|
418
395
|
return pack(Parser.compareToAction(comparison), result);
|
|
419
396
|
}
|
|
420
|
-
|
|
421
397
|
comparison = Parser.compareSequence(current.sequence, incoming.baseSequence);
|
|
422
|
-
|
|
423
398
|
switch (extract(comparison)) {
|
|
424
399
|
case GT:
|
|
425
400
|
case EQ:
|
|
426
401
|
comparison = USE_INCOMING;
|
|
427
402
|
break;
|
|
428
|
-
|
|
429
403
|
default:
|
|
430
404
|
comparison = DESYNC;
|
|
431
405
|
}
|
|
432
|
-
|
|
433
406
|
return pack(comparison, result);
|
|
434
407
|
}
|
|
408
|
+
|
|
435
409
|
/**
|
|
436
410
|
* Compares Locus sequences
|
|
437
411
|
* @param {Types~Locus} current Current working copy
|
|
438
412
|
* @param {Types~Locus} incoming New Locus delta
|
|
439
413
|
* @returns {string}
|
|
440
414
|
*/
|
|
441
|
-
|
|
442
415
|
}, {
|
|
443
416
|
key: "compareSequence",
|
|
444
417
|
value: function compareSequence(current, incoming) {
|
|
445
418
|
// Locus sequence comparison rules in order of priority.
|
|
446
419
|
// https://sqbu-github.cisco.com/WebExSquared/cloud-apps/wiki/Locus-Sequence-Comparison-Algorithm
|
|
420
|
+
|
|
447
421
|
var local = Parser.getMetaData(current);
|
|
448
|
-
var delta = Parser.getMetaData(incoming);
|
|
422
|
+
var delta = Parser.getMetaData(incoming);
|
|
449
423
|
|
|
424
|
+
// update loci metadata
|
|
450
425
|
local.unique = Parser.getUniqueSequences(local, delta);
|
|
451
|
-
delta.unique = Parser.getUniqueSequences(delta, local);
|
|
452
|
-
// order matters
|
|
426
|
+
delta.unique = Parser.getUniqueSequences(delta, local);
|
|
453
427
|
|
|
428
|
+
// Locus sequence comparison rules
|
|
429
|
+
// order matters
|
|
454
430
|
var rules = [Parser.checkSequenceOverlap, Parser.checkUnequalRanges, Parser.checkForUniqueEntries, Parser.checkIfOutOfSync];
|
|
455
|
-
|
|
456
431
|
for (var _i = 0, _rules = rules; _i < _rules.length; _i++) {
|
|
457
432
|
var rule = _rules[_i];
|
|
458
433
|
// Rule only returns a value if the rule applies,
|
|
459
434
|
// otherwise returns null.
|
|
460
435
|
var result = rule(local, delta);
|
|
461
|
-
|
|
462
436
|
if (result) {
|
|
463
437
|
return result;
|
|
464
438
|
}
|
|
465
|
-
}
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
// error, none of rules above applied
|
|
466
442
|
// should never get here as last rule
|
|
467
443
|
// should be catch all.
|
|
468
|
-
|
|
469
|
-
|
|
470
444
|
return Parser.loci.ERROR;
|
|
471
445
|
}
|
|
446
|
+
|
|
472
447
|
/**
|
|
473
448
|
* Transates the result of a sequence comparison into an intended behavior
|
|
474
449
|
* @param {string} result
|
|
475
450
|
* @returns {string} Locus comparison action
|
|
476
451
|
*/
|
|
477
|
-
|
|
478
452
|
}, {
|
|
479
453
|
key: "compareToAction",
|
|
480
454
|
value: function compareToAction(result) {
|
|
481
455
|
var _Parser$loci3 = Parser.loci,
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
456
|
+
DESYNC = _Parser$loci3.DESYNC,
|
|
457
|
+
EQ = _Parser$loci3.EQ,
|
|
458
|
+
ERROR = _Parser$loci3.ERROR,
|
|
459
|
+
GT = _Parser$loci3.GT,
|
|
460
|
+
LT = _Parser$loci3.LT,
|
|
461
|
+
USE_CURRENT = _Parser$loci3.USE_CURRENT,
|
|
462
|
+
USE_INCOMING = _Parser$loci3.USE_INCOMING;
|
|
489
463
|
var action = ERROR;
|
|
490
|
-
|
|
491
464
|
switch (result) {
|
|
492
465
|
case EQ:
|
|
493
466
|
case GT:
|
|
494
467
|
action = USE_CURRENT;
|
|
495
468
|
break;
|
|
496
|
-
|
|
497
469
|
case LT:
|
|
498
470
|
action = USE_INCOMING;
|
|
499
471
|
break;
|
|
500
|
-
|
|
501
472
|
case DESYNC:
|
|
502
473
|
action = DESYNC;
|
|
503
474
|
break;
|
|
504
|
-
|
|
505
475
|
default:
|
|
506
476
|
_loggerProxy.default.logger.info("Locus-info:parser#compareToAction --> Error: ".concat(result, " is not a recognized sequence comparison result."));
|
|
507
|
-
|
|
508
477
|
}
|
|
509
|
-
|
|
510
478
|
return action;
|
|
511
479
|
}
|
|
480
|
+
|
|
512
481
|
/**
|
|
513
482
|
* Extracts a loci comparison from a string of data.
|
|
514
483
|
* @param {string} lociComparisonResult Comparison result with extra data
|
|
515
484
|
* @returns {string} Comparison of EQ, LT, GT, or DESYNC.
|
|
516
485
|
*/
|
|
517
|
-
|
|
518
486
|
}, {
|
|
519
487
|
key: "extractComparisonState",
|
|
520
488
|
value: function extractComparisonState(lociComparisonResult) {
|
|
521
489
|
return lociComparisonResult.split(':')[0];
|
|
522
490
|
}
|
|
491
|
+
|
|
523
492
|
/**
|
|
524
493
|
* @typedef {object} LociMetadata
|
|
525
494
|
* @property {number} start - Starting sequence number
|
|
@@ -536,17 +505,18 @@ var Parser = /*#__PURE__*/function () {
|
|
|
536
505
|
* @param {Array.<number>} sequence Locus delta sequence
|
|
537
506
|
* @returns {LociMetadata} Locus Delta Metadata
|
|
538
507
|
*/
|
|
539
|
-
|
|
540
508
|
}, {
|
|
541
509
|
key: "getMetaData",
|
|
542
510
|
value: function getMetaData(sequence) {
|
|
543
511
|
var entries = sequence.entries;
|
|
544
512
|
var first = entries[0];
|
|
545
|
-
var last = entries.slice(-1)[0];
|
|
513
|
+
var last = entries.slice(-1)[0];
|
|
546
514
|
|
|
515
|
+
// rangeStart or rangeEnd is 0 if a range doesn't exist
|
|
547
516
|
var start = sequence.rangeStart;
|
|
548
|
-
var end = sequence.rangeEnd;
|
|
517
|
+
var end = sequence.rangeEnd;
|
|
549
518
|
|
|
519
|
+
// sequence data
|
|
550
520
|
return {
|
|
551
521
|
start: start,
|
|
552
522
|
end: end,
|
|
@@ -560,6 +530,7 @@ var Parser = /*#__PURE__*/function () {
|
|
|
560
530
|
entries: entries
|
|
561
531
|
};
|
|
562
532
|
}
|
|
533
|
+
|
|
563
534
|
/**
|
|
564
535
|
* Compares two Locus delta objects and notes unique
|
|
565
536
|
* values contained within baseLoci.
|
|
@@ -567,15 +538,15 @@ var Parser = /*#__PURE__*/function () {
|
|
|
567
538
|
* @param {LociMetadata} otherLoci
|
|
568
539
|
* @returns {Array.<number>} List of unique sequences
|
|
569
540
|
*/
|
|
570
|
-
|
|
571
541
|
}, {
|
|
572
542
|
key: "getUniqueSequences",
|
|
573
543
|
value: function getUniqueSequences(baseLoci, otherLoci) {
|
|
574
544
|
var diff = (0, _difference2.default)(baseLoci.entries, otherLoci.entries);
|
|
575
545
|
var start = otherLoci.start,
|
|
576
|
-
|
|
546
|
+
end = otherLoci.end;
|
|
577
547
|
return Parser.getNumbersOutOfRange(diff, start, end);
|
|
578
548
|
}
|
|
549
|
+
|
|
579
550
|
/**
|
|
580
551
|
* Returns an array of numbers outside of a given range.
|
|
581
552
|
* @param {Array.<number>} list Array to filter
|
|
@@ -583,15 +554,15 @@ var Parser = /*#__PURE__*/function () {
|
|
|
583
554
|
* @param {number} rangeEnd End of range
|
|
584
555
|
* @returns {Array.<number>} Array of numbers sorted ASC
|
|
585
556
|
*/
|
|
586
|
-
|
|
587
557
|
}, {
|
|
588
558
|
key: "getNumbersOutOfRange",
|
|
589
559
|
value: function getNumbersOutOfRange(list, rangeStart, rangeEnd) {
|
|
590
560
|
// Collect all numbers if number is outside of specified range
|
|
591
561
|
var output = list.filter(function (num) {
|
|
592
562
|
return num < rangeStart || num > rangeEnd;
|
|
593
|
-
});
|
|
563
|
+
});
|
|
594
564
|
|
|
565
|
+
// sort ascending
|
|
595
566
|
return output.sort(function (a, b) {
|
|
596
567
|
return a - b;
|
|
597
568
|
});
|
|
@@ -600,34 +571,30 @@ var Parser = /*#__PURE__*/function () {
|
|
|
600
571
|
key: "isSequenceEmpty",
|
|
601
572
|
value: function isSequenceEmpty(locus) {
|
|
602
573
|
var _sequence$entries;
|
|
603
|
-
|
|
604
574
|
var sequence = locus.sequence;
|
|
605
575
|
var hasEmptyEntries = !((_sequence$entries = sequence.entries) !== null && _sequence$entries !== void 0 && _sequence$entries.length);
|
|
606
576
|
var hasEmptyRange = sequence.rangeStart === 0 && sequence.rangeEnd === 0;
|
|
607
577
|
return hasEmptyEntries && hasEmptyRange;
|
|
608
578
|
}
|
|
579
|
+
|
|
609
580
|
/**
|
|
610
581
|
* Determines if an object has basic
|
|
611
582
|
* structure of a locus object.
|
|
612
583
|
* @param {Types~Locus} loci
|
|
613
584
|
* @returns {boolean}
|
|
614
585
|
*/
|
|
615
|
-
|
|
616
586
|
}, {
|
|
617
587
|
key: "isLoci",
|
|
618
588
|
value: function isLoci(loci) {
|
|
619
589
|
if (!loci || !loci.sequence) {
|
|
620
590
|
return false;
|
|
621
591
|
}
|
|
622
|
-
|
|
623
592
|
var hasProp = function hasProp(prop) {
|
|
624
593
|
return Object.prototype.hasOwnProperty.call(loci.sequence, prop);
|
|
625
594
|
};
|
|
626
|
-
|
|
627
595
|
if (hasProp('rangeStart') && hasProp('rangeEnd')) {
|
|
628
596
|
return true;
|
|
629
597
|
}
|
|
630
|
-
|
|
631
598
|
return false;
|
|
632
599
|
}
|
|
633
600
|
}, {
|
|
@@ -642,7 +609,6 @@ var Parser = /*#__PURE__*/function () {
|
|
|
642
609
|
var mStr = function mStr(strings) {
|
|
643
610
|
return strings.join('').replace(/\s{2,}/g, ' ');
|
|
644
611
|
};
|
|
645
|
-
|
|
646
612
|
var resolutionMap = {
|
|
647
613
|
EQ: "".concat(Parser.loci.LT, ": is equal (current == incoming)."),
|
|
648
614
|
LT: "".concat(Parser.loci.LT, ": choose right side (incoming)."),
|
|
@@ -708,7 +674,6 @@ var Parser = /*#__PURE__*/function () {
|
|
|
708
674
|
}]);
|
|
709
675
|
return Parser;
|
|
710
676
|
}();
|
|
711
|
-
|
|
712
677
|
exports.default = Parser;
|
|
713
678
|
(0, _defineProperty2.default)(Parser, "status", {
|
|
714
679
|
IDLE: 'IDLE',
|