@webex/plugin-meetings 3.12.0-next.9 → 3.12.0-task-refactor.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/annotation/index.js +5 -14
- package/dist/annotation/index.js.map +1 -1
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/config.js +2 -8
- package/dist/config.js.map +1 -1
- package/dist/constants.js +6 -29
- package/dist/constants.js.map +1 -1
- package/dist/hashTree/hashTreeParser.js +29 -1563
- package/dist/hashTree/hashTreeParser.js.map +1 -1
- package/dist/hashTree/types.js +3 -13
- package/dist/hashTree/types.js.map +1 -1
- package/dist/index.js +2 -11
- package/dist/index.js.map +1 -1
- package/dist/interceptors/index.js +0 -7
- package/dist/interceptors/index.js.map +1 -1
- package/dist/interceptors/locusRouteToken.js +5 -27
- package/dist/interceptors/locusRouteToken.js.map +1 -1
- package/dist/interpretation/index.js +2 -2
- package/dist/interpretation/index.js.map +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.js +3 -7
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +247 -642
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/selfUtils.js +0 -1
- package/dist/locus-info/selfUtils.js.map +1 -1
- package/dist/locus-info/types.js.map +1 -1
- package/dist/media/MediaConnectionAwaiter.js +1 -57
- package/dist/media/MediaConnectionAwaiter.js.map +1 -1
- package/dist/media/properties.js +2 -4
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +1 -7
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +1036 -1481
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/request.js +0 -50
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/meeting/util.js +3 -133
- package/dist/meeting/util.js.map +1 -1
- package/dist/meetings/index.js +59 -142
- package/dist/meetings/index.js.map +1 -1
- package/dist/meetings/util.js +7 -11
- package/dist/meetings/util.js.map +1 -1
- package/dist/member/index.js +0 -10
- package/dist/member/index.js.map +1 -1
- package/dist/member/util.js +0 -10
- package/dist/member/util.js.map +1 -1
- package/dist/metrics/constants.js +1 -7
- package/dist/metrics/constants.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +60 -9
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/remoteMediaManager.js +0 -11
- package/dist/multistream/remoteMediaManager.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +2 -116
- package/dist/multistream/sendSlotManager.js.map +1 -1
- package/dist/reachability/clusterReachability.js +18 -171
- package/dist/reachability/clusterReachability.js.map +1 -1
- package/dist/reachability/index.js +11 -21
- package/dist/reachability/index.js.map +1 -1
- package/dist/reachability/reachabilityPeerConnection.js +1 -1
- package/dist/reachability/reachabilityPeerConnection.js.map +1 -1
- package/dist/reactions/reactions.type.js.map +1 -1
- package/dist/reconnection-manager/index.js +1 -0
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/types/common/browser-detection.d.ts +0 -1
- package/dist/types/common/events/events-scope.d.ts +0 -1
- package/dist/types/common/events/events.d.ts +0 -1
- package/dist/types/config.d.ts +0 -5
- package/dist/types/constants.d.ts +1 -24
- package/dist/types/hashTree/hashTreeParser.d.ts +11 -260
- package/dist/types/hashTree/types.d.ts +0 -20
- package/dist/types/index.d.ts +0 -1
- package/dist/types/interceptors/index.d.ts +1 -2
- package/dist/types/interceptors/locusRouteToken.d.ts +0 -2
- package/dist/types/locus-info/index.d.ts +47 -68
- package/dist/types/locus-info/types.d.ts +12 -28
- package/dist/types/media/MediaConnectionAwaiter.d.ts +1 -10
- package/dist/types/media/properties.d.ts +1 -2
- package/dist/types/meeting/in-meeting-actions.d.ts +0 -6
- package/dist/types/meeting/index.d.ts +7 -86
- package/dist/types/meeting/request.d.ts +1 -16
- package/dist/types/meeting/request.type.d.ts +0 -5
- package/dist/types/meeting/util.d.ts +0 -31
- package/dist/types/meeting-info/util.d.ts +0 -1
- package/dist/types/meeting-info/utilv2.d.ts +0 -1
- package/dist/types/meetings/index.d.ts +2 -4
- package/dist/types/member/index.d.ts +0 -1
- package/dist/types/member/types.d.ts +4 -4
- package/dist/types/member/util.d.ts +0 -5
- package/dist/types/metrics/constants.d.ts +0 -6
- package/dist/types/multistream/mediaRequestManager.d.ts +23 -0
- package/dist/types/multistream/sendSlotManager.d.ts +1 -23
- package/dist/types/reachability/clusterReachability.d.ts +3 -30
- package/dist/types/reactions/reactions.type.d.ts +0 -1
- package/dist/types/recording-controller/util.d.ts +5 -5
- package/dist/types/roap/index.d.ts +1 -1
- package/dist/webinar/index.js +163 -438
- package/dist/webinar/index.js.map +1 -1
- package/package.json +24 -26
- package/src/annotation/index.ts +7 -27
- package/src/config.ts +0 -5
- package/src/constants.ts +1 -30
- package/src/hashTree/hashTreeParser.ts +25 -1523
- package/src/hashTree/types.ts +1 -24
- package/src/index.ts +1 -8
- package/src/interceptors/index.ts +1 -2
- package/src/interceptors/locusRouteToken.ts +5 -22
- package/src/interpretation/index.ts +2 -2
- package/src/locus-info/controlsUtils.ts +0 -17
- package/src/locus-info/index.ts +213 -707
- package/src/locus-info/selfUtils.ts +0 -1
- package/src/locus-info/types.ts +12 -27
- package/src/media/MediaConnectionAwaiter.ts +1 -41
- package/src/media/properties.ts +1 -3
- package/src/meeting/in-meeting-actions.ts +0 -12
- package/src/meeting/index.ts +84 -461
- package/src/meeting/request.ts +0 -42
- package/src/meeting/request.type.ts +0 -6
- package/src/meeting/util.ts +2 -160
- package/src/meetings/index.ts +60 -180
- package/src/meetings/util.ts +9 -10
- package/src/member/index.ts +0 -10
- package/src/member/util.ts +0 -12
- package/src/metrics/constants.ts +0 -7
- package/src/multistream/mediaRequestManager.ts +54 -4
- package/src/multistream/remoteMediaManager.ts +0 -13
- package/src/multistream/sendSlotManager.ts +3 -97
- package/src/reachability/clusterReachability.ts +27 -153
- package/src/reachability/index.ts +1 -15
- package/src/reachability/reachabilityPeerConnection.ts +1 -3
- package/src/reactions/reactions.type.ts +0 -1
- package/src/reconnection-manager/index.ts +1 -0
- package/src/webinar/index.ts +6 -265
- package/test/unit/spec/annotation/index.ts +7 -69
- package/test/unit/spec/interceptors/locusRouteToken.ts +0 -44
- package/test/unit/spec/locus-info/controlsUtils.js +1 -56
- package/test/unit/spec/locus-info/index.js +90 -1457
- package/test/unit/spec/media/MediaConnectionAwaiter.ts +1 -41
- package/test/unit/spec/media/properties.ts +3 -12
- package/test/unit/spec/meeting/in-meeting-actions.ts +2 -8
- package/test/unit/spec/meeting/index.js +128 -981
- package/test/unit/spec/meeting/request.js +0 -70
- package/test/unit/spec/meeting/utils.js +26 -438
- package/test/unit/spec/meetings/index.js +33 -845
- package/test/unit/spec/meetings/utils.js +1 -51
- package/test/unit/spec/member/index.js +4 -28
- package/test/unit/spec/member/util.js +27 -65
- package/test/unit/spec/multistream/mediaRequestManager.ts +85 -2
- package/test/unit/spec/multistream/remoteMediaManager.ts +0 -30
- package/test/unit/spec/multistream/sendSlotManager.ts +36 -135
- package/test/unit/spec/reachability/clusterReachability.ts +1 -125
- package/test/unit/spec/reachability/index.ts +3 -26
- package/test/unit/spec/reconnection-manager/index.js +8 -4
- package/test/unit/spec/webinar/index.ts +37 -534
- package/dist/aiEnableRequest/index.js +0 -184
- package/dist/aiEnableRequest/index.js.map +0 -1
- package/dist/aiEnableRequest/utils.js +0 -36
- package/dist/aiEnableRequest/utils.js.map +0 -1
- package/dist/hashTree/constants.js +0 -22
- package/dist/hashTree/constants.js.map +0 -1
- package/dist/hashTree/hashTree.js +0 -533
- package/dist/hashTree/hashTree.js.map +0 -1
- package/dist/hashTree/utils.js +0 -69
- package/dist/hashTree/utils.js.map +0 -1
- package/dist/interceptors/constant.js +0 -12
- package/dist/interceptors/constant.js.map +0 -1
- package/dist/interceptors/dataChannelAuthToken.js +0 -290
- package/dist/interceptors/dataChannelAuthToken.js.map +0 -1
- package/dist/interceptors/utils.js +0 -27
- package/dist/interceptors/utils.js.map +0 -1
- package/dist/types/aiEnableRequest/index.d.ts +0 -5
- package/dist/types/aiEnableRequest/utils.d.ts +0 -2
- package/dist/types/hashTree/constants.d.ts +0 -9
- package/dist/types/hashTree/hashTree.d.ts +0 -136
- package/dist/types/hashTree/utils.d.ts +0 -22
- package/dist/types/interceptors/constant.d.ts +0 -5
- package/dist/types/interceptors/dataChannelAuthToken.d.ts +0 -43
- package/dist/types/interceptors/utils.d.ts +0 -1
- package/dist/types/webinar/utils.d.ts +0 -6
- package/dist/webinar/utils.js +0 -25
- package/dist/webinar/utils.js.map +0 -1
- package/src/aiEnableRequest/README.md +0 -84
- package/src/aiEnableRequest/index.ts +0 -170
- package/src/aiEnableRequest/utils.ts +0 -25
- package/src/hashTree/constants.ts +0 -10
- package/src/hashTree/hashTree.ts +0 -480
- package/src/hashTree/utils.ts +0 -62
- package/src/interceptors/constant.ts +0 -6
- package/src/interceptors/dataChannelAuthToken.ts +0 -170
- package/src/interceptors/utils.ts +0 -16
- package/src/webinar/utils.ts +0 -16
- package/test/unit/spec/aiEnableRequest/index.ts +0 -981
- package/test/unit/spec/aiEnableRequest/utils.ts +0 -130
- package/test/unit/spec/hashTree/hashTree.ts +0 -721
- package/test/unit/spec/hashTree/hashTreeParser.ts +0 -3670
- package/test/unit/spec/hashTree/utils.ts +0 -140
- package/test/unit/spec/interceptors/dataChannelAuthToken.ts +0 -210
- package/test/unit/spec/interceptors/utils.ts +0 -75
- package/test/unit/spec/webinar/utils.ts +0 -39
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import {assert} from '@webex/test-helper-chai';
|
|
2
|
-
import {getAIEnablementApprover} from '../../../../src/aiEnableRequest/utils';
|
|
3
|
-
import {Meeting} from '../../../../src';
|
|
4
|
-
|
|
5
|
-
describe('AI Enable Request Utils', () => {
|
|
6
|
-
describe('#getAIEnablementApprover', () => {
|
|
7
|
-
const createMember = (id, roles, canApproveAIEnablement) => ({
|
|
8
|
-
id,
|
|
9
|
-
roles,
|
|
10
|
-
canApproveAIEnablement,
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
const createMeeting = (members) =>
|
|
14
|
-
({
|
|
15
|
-
members: {
|
|
16
|
-
membersCollection: {
|
|
17
|
-
members: members.reduce((acc, member) => {
|
|
18
|
-
acc[member.id] = member;
|
|
19
|
-
return acc;
|
|
20
|
-
}, {}),
|
|
21
|
-
},
|
|
22
|
-
},
|
|
23
|
-
} as Meeting);
|
|
24
|
-
|
|
25
|
-
it('should return host id when host has moderator role and canApproveAIEnablement', () => {
|
|
26
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, true);
|
|
27
|
-
const member1 = createMember('member-456', {moderator: false, cohost: false}, false);
|
|
28
|
-
const meeting = createMeeting([host, member1]);
|
|
29
|
-
|
|
30
|
-
const result = getAIEnablementApprover(meeting);
|
|
31
|
-
|
|
32
|
-
assert.equal(result, 'host-123');
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
it('should return null when host exists but does not have canApproveAIEnablement', () => {
|
|
36
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, false);
|
|
37
|
-
const member1 = createMember('member-456', {moderator: false, cohost: false}, false);
|
|
38
|
-
const meeting = createMeeting([host, member1]);
|
|
39
|
-
|
|
40
|
-
const result = getAIEnablementApprover(meeting);
|
|
41
|
-
|
|
42
|
-
assert.isNull(result);
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('should return first cohost id (alphabetically) when host does not have capability but cohosts do', () => {
|
|
46
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, false);
|
|
47
|
-
const cohost1 = createMember('cohost-zzz', {moderator: false, cohost: true}, true);
|
|
48
|
-
const cohost2 = createMember('cohost-aaa', {moderator: false, cohost: true}, true);
|
|
49
|
-
const cohost3 = createMember('cohost-mmm', {moderator: false, cohost: true}, true);
|
|
50
|
-
const meeting = createMeeting([host, cohost1, cohost2, cohost3]);
|
|
51
|
-
|
|
52
|
-
const result = getAIEnablementApprover(meeting);
|
|
53
|
-
|
|
54
|
-
assert.equal(result, 'cohost-aaa');
|
|
55
|
-
});
|
|
56
|
-
|
|
57
|
-
it('should return null when no host exists and no cohosts have capability', () => {
|
|
58
|
-
const member1 = createMember('member-123', {moderator: false, cohost: false}, false);
|
|
59
|
-
const member2 = createMember('member-456', {moderator: false, cohost: false}, false);
|
|
60
|
-
const meeting = createMeeting([member1, member2]);
|
|
61
|
-
|
|
62
|
-
const result = getAIEnablementApprover(meeting);
|
|
63
|
-
|
|
64
|
-
assert.isNull(result);
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
it('should return null when cohosts exist but none have canApproveAIEnablement', () => {
|
|
68
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, false);
|
|
69
|
-
const cohost1 = createMember('cohost-111', {moderator: false, cohost: true}, false);
|
|
70
|
-
const cohost2 = createMember('cohost-222', {moderator: false, cohost: true}, false);
|
|
71
|
-
const meeting = createMeeting([host, cohost1, cohost2]);
|
|
72
|
-
|
|
73
|
-
const result = getAIEnablementApprover(meeting);
|
|
74
|
-
|
|
75
|
-
assert.isNull(result);
|
|
76
|
-
});
|
|
77
|
-
|
|
78
|
-
it('should prioritize host over cohosts even if cohosts have capability', () => {
|
|
79
|
-
const host = createMember('host-zzz', {moderator: true, cohost: false}, true);
|
|
80
|
-
const cohost1 = createMember('cohost-aaa', {moderator: false, cohost: true}, true);
|
|
81
|
-
const meeting = createMeeting([cohost1, host]);
|
|
82
|
-
|
|
83
|
-
const result = getAIEnablementApprover(meeting);
|
|
84
|
-
|
|
85
|
-
assert.equal(result, 'host-zzz');
|
|
86
|
-
});
|
|
87
|
-
|
|
88
|
-
it('should handle a single cohost with capability when no host has capability', () => {
|
|
89
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, false);
|
|
90
|
-
const cohost = createMember('cohost-999', {moderator: false, cohost: true}, true);
|
|
91
|
-
const meeting = createMeeting([host, cohost]);
|
|
92
|
-
|
|
93
|
-
const result = getAIEnablementApprover(meeting);
|
|
94
|
-
|
|
95
|
-
assert.equal(result, 'cohost-999');
|
|
96
|
-
});
|
|
97
|
-
|
|
98
|
-
it('should handle empty members collection', () => {
|
|
99
|
-
const meeting = createMeeting([]);
|
|
100
|
-
|
|
101
|
-
const result = getAIEnablementApprover(meeting);
|
|
102
|
-
|
|
103
|
-
assert.isNull(result);
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
it('should correctly sort cohosts by id string (not numeric)', () => {
|
|
107
|
-
const host = createMember('host-123', {moderator: true, cohost: false}, false);
|
|
108
|
-
const cohost1 = createMember('cohost-20', {moderator: false, cohost: true}, true);
|
|
109
|
-
const cohost2 = createMember('cohost-100', {moderator: false, cohost: true}, true);
|
|
110
|
-
const cohost3 = createMember('cohost-3', {moderator: false, cohost: true}, true);
|
|
111
|
-
const meeting = createMeeting([host, cohost1, cohost2, cohost3]);
|
|
112
|
-
|
|
113
|
-
const result = getAIEnablementApprover(meeting);
|
|
114
|
-
|
|
115
|
-
// Alphabetically: "cohost-100" < "cohost-20" < "cohost-3"
|
|
116
|
-
assert.equal(result, 'cohost-100');
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
it('should handle members with both moderator and cohost roles', () => {
|
|
120
|
-
// If someone is both moderator and cohost with capability, they should be found as host
|
|
121
|
-
const hostCohost = createMember('host-cohost-123', {moderator: true, cohost: true}, true);
|
|
122
|
-
const member = createMember('member-456', {moderator: false, cohost: false}, false);
|
|
123
|
-
const meeting = createMeeting([hostCohost, member]);
|
|
124
|
-
|
|
125
|
-
const result = getAIEnablementApprover(meeting);
|
|
126
|
-
|
|
127
|
-
assert.equal(result, 'host-cohost-123');
|
|
128
|
-
});
|
|
129
|
-
});
|
|
130
|
-
});
|