PC color #33243e
This commit is contained in:
@@ -346,7 +346,7 @@
|
|||||||
html:not(.politictalk-direct-access-blocked) .participants_pane-content,
|
html:not(.politictalk-direct-access-blocked) .participants_pane-content,
|
||||||
html:not(.politictalk-direct-access-blocked) [class*="chatPanel"],
|
html:not(.politictalk-direct-access-blocked) [class*="chatPanel"],
|
||||||
html:not(.politictalk-direct-access-blocked) [class*="participantsPane"] {
|
html:not(.politictalk-direct-access-blocked) [class*="participantsPane"] {
|
||||||
background-color: #b3a5e4 !important;
|
background-color: #33243e !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
html:not(.politictalk-direct-access-blocked) #sideToolbarContainer,
|
html:not(.politictalk-direct-access-blocked) #sideToolbarContainer,
|
||||||
@@ -2266,14 +2266,6 @@
|
|||||||
.trim();
|
.trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
function normalizePoliticTalkDisplayName(value) {
|
|
||||||
return String(value || '')
|
|
||||||
.replace(/\(you\)/ig, '')
|
|
||||||
.replace(/\bmoderator\b/ig, '')
|
|
||||||
.replace(/\s+/g, ' ')
|
|
||||||
.trim();
|
|
||||||
}
|
|
||||||
|
|
||||||
function getPoliticTalkRoleMetadataFromElement(element) {
|
function getPoliticTalkRoleMetadataFromElement(element) {
|
||||||
if (!element || !element.classList) {
|
if (!element || !element.classList) {
|
||||||
return null;
|
return null;
|
||||||
@@ -2315,12 +2307,6 @@
|
|||||||
return localMetadata;
|
return localMetadata;
|
||||||
}
|
}
|
||||||
|
|
||||||
var rowMetadata = getPoliticTalkRoleMetadataFromElement(row);
|
|
||||||
|
|
||||||
if (rowMetadata) {
|
|
||||||
return rowMetadata;
|
|
||||||
}
|
|
||||||
|
|
||||||
var matchingTile = null;
|
var matchingTile = null;
|
||||||
|
|
||||||
if (videospace && endpointId) {
|
if (videospace && endpointId) {
|
||||||
@@ -2422,155 +2408,33 @@
|
|||||||
var target = element.querySelector('[data-testid="stage-display-name"], .displayname, [id$="_name"]');
|
var target = element.querySelector('[data-testid="stage-display-name"], .displayname, [id$="_name"]');
|
||||||
var value = target ? target.textContent : element.textContent;
|
var value = target ? target.textContent : element.textContent;
|
||||||
|
|
||||||
return normalizePoliticTalkDisplayName(value);
|
return String(value || '').replace(/\s+/g, ' ').trim();
|
||||||
}
|
}
|
||||||
|
|
||||||
function getPoliticTalkDominantSpeakerDisplayNames(videospace) {
|
function getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles) {
|
||||||
var largeVideoContainer = videospace && videospace.querySelector('#largeVideoContainer');
|
var dominantName = getPoliticTalkVisibleDisplayName(
|
||||||
|
|
||||||
if (!largeVideoContainer) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
var selectors = [
|
|
||||||
'[data-testid="stage-display-name"]',
|
|
||||||
'#remotePresenceMessage',
|
|
||||||
'#remoteConnectionMessage',
|
|
||||||
'.displayname',
|
|
||||||
'[id$="_name"]',
|
|
||||||
'[class*="displayName"]',
|
|
||||||
'[class*="nameContainer"]',
|
|
||||||
'.presence-label-container',
|
|
||||||
'[class*="presenceLabel"]',
|
|
||||||
'[class*="PresenceLabel"]'
|
|
||||||
].join(',');
|
|
||||||
var blockedLabels = [
|
|
||||||
'aud',
|
|
||||||
'meeting participants',
|
|
||||||
'politictalk',
|
|
||||||
'search participants'
|
|
||||||
];
|
|
||||||
var names = [];
|
|
||||||
|
|
||||||
Array.prototype.slice.call(largeVideoContainer.querySelectorAll(selectors)).forEach(function(candidate) {
|
|
||||||
var text = normalizePoliticTalkDisplayName(candidate.textContent);
|
|
||||||
var normalized = normalizePoliticTalkText(text);
|
|
||||||
|
|
||||||
if (!text
|
|
||||||
|| text.length > 80
|
|
||||||
|| blockedLabels.indexOf(normalized) !== -1
|
|
||||||
|| /^\d/.test(normalized)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (names.indexOf(text) === -1) {
|
|
||||||
names.push(text);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
return names;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getPoliticTalkDominantSpeakerNamesFromParticipantRows(videospace) {
|
|
||||||
var largeVideoContainer = videospace && videospace.querySelector('#largeVideoContainer');
|
|
||||||
|
|
||||||
if (!largeVideoContainer) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
var largeVideoText = normalizePoliticTalkText(largeVideoContainer.textContent);
|
|
||||||
|
|
||||||
if (!largeVideoText) {
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
return getPoliticTalkParticipantPaneRows().map(getPoliticTalkParticipantPaneDisplayName).filter(function(name, index, names) {
|
|
||||||
var normalizedName = normalizePoliticTalkText(name);
|
|
||||||
|
|
||||||
return normalizedName
|
|
||||||
&& names.indexOf(name) === index
|
|
||||||
&& largeVideoText.indexOf(normalizedName) !== -1;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
function findPoliticTalkRoleMetadataByDisplayNames(names, videospace, tiles, thumbnails) {
|
|
||||||
var normalizedNames = (names || []).map(function(name) {
|
|
||||||
return normalizePoliticTalkText(normalizePoliticTalkDisplayName(name));
|
|
||||||
}).filter(Boolean);
|
|
||||||
|
|
||||||
if (!normalizedNames.length) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
var matchesName = function(value) {
|
|
||||||
return normalizedNames.indexOf(normalizePoliticTalkText(normalizePoliticTalkDisplayName(value))) !== -1;
|
|
||||||
};
|
|
||||||
var matchingRow = getPoliticTalkParticipantPaneRows().find(function(row) {
|
|
||||||
return matchesName(getPoliticTalkParticipantPaneDisplayName(row));
|
|
||||||
});
|
|
||||||
|
|
||||||
if (matchingRow) {
|
|
||||||
return getPoliticTalkRoleMetadataFromElement(matchingRow)
|
|
||||||
|| getPoliticTalkParticipantPaneRoleMetadata(matchingRow, videospace, tiles, thumbnails)
|
|
||||||
|| null;
|
|
||||||
}
|
|
||||||
|
|
||||||
var candidates = (tiles || []).concat(thumbnails || []);
|
|
||||||
var matchingTile = candidates.find(function(tile) {
|
|
||||||
return matchesName(getPoliticTalkVisibleDisplayName(tile));
|
|
||||||
});
|
|
||||||
|
|
||||||
if (matchingTile) {
|
|
||||||
return getPoliticTalkTileRoleMetadata(matchingTile)
|
|
||||||
|| getPoliticTalkRoleMetadataFromElement(matchingTile)
|
|
||||||
|| null;
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles, thumbnails) {
|
|
||||||
var dominantNames = getPoliticTalkDominantSpeakerDisplayNames(videospace).concat(
|
|
||||||
getPoliticTalkDominantSpeakerNamesFromParticipantRows(videospace)
|
|
||||||
);
|
|
||||||
var dominantName = dominantNames[0] || getPoliticTalkVisibleDisplayName(
|
|
||||||
videospace.querySelector('[data-testid="stage-display-name"]')
|
videospace.querySelector('[data-testid="stage-display-name"]')
|
||||||
);
|
);
|
||||||
var candidates = (tiles || []).concat(thumbnails || []);
|
var candidates = tiles || [];
|
||||||
var matchingMetadata = findPoliticTalkRoleMetadataByDisplayNames(
|
|
||||||
dominantNames.concat(dominantName ? [dominantName] : []),
|
|
||||||
videospace,
|
|
||||||
tiles,
|
|
||||||
thumbnails
|
|
||||||
);
|
|
||||||
|
|
||||||
if (matchingMetadata) {
|
|
||||||
return matchingMetadata;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dominantName) {
|
if (dominantName) {
|
||||||
var normalizedDominantName = normalizePoliticTalkText(dominantName);
|
|
||||||
var matchingTile = candidates.find(function(tile) {
|
var matchingTile = candidates.find(function(tile) {
|
||||||
return normalizePoliticTalkText(getPoliticTalkVisibleDisplayName(tile)) === normalizedDominantName;
|
return getPoliticTalkVisibleDisplayName(tile) === dominantName;
|
||||||
});
|
});
|
||||||
|
|
||||||
if (matchingTile) {
|
if (matchingTile) {
|
||||||
return getPoliticTalkTileRoleMetadata(matchingTile)
|
return getPoliticTalkTileRoleMetadata(matchingTile) || getPoliticTalkGuestRoleMetadata();
|
||||||
|| getPoliticTalkRoleMetadataFromElement(matchingTile)
|
|
||||||
|| getPoliticTalkGuestRoleMetadata();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (candidates.length === 1) {
|
if (candidates.length === 1) {
|
||||||
return getPoliticTalkTileRoleMetadata(candidates[0])
|
return getPoliticTalkTileRoleMetadata(candidates[0]) || getPoliticTalkGuestRoleMetadata();
|
||||||
|| getPoliticTalkRoleMetadataFromElement(candidates[0])
|
|
||||||
|| getPoliticTalkGuestRoleMetadata();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return getPoliticTalkLocalRoleMetadata();
|
return getPoliticTalkLocalRoleMetadata();
|
||||||
}
|
}
|
||||||
|
|
||||||
function applyPoliticTalkDominantSpeakerTheme(videospace, tiles, thumbnails, metadataOverride) {
|
function applyPoliticTalkDominantSpeakerTheme(videospace, tiles, metadataOverride) {
|
||||||
var avatar = videospace.querySelector('#dominantSpeakerAvatar');
|
var avatar = videospace.querySelector('#dominantSpeakerAvatar');
|
||||||
var avatarContainer = videospace.querySelector('#dominantSpeakerAvatarContainer');
|
var avatarContainer = videospace.querySelector('#dominantSpeakerAvatarContainer');
|
||||||
|
|
||||||
@@ -2578,7 +2442,7 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var metadata = metadataOverride || getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles, thumbnails);
|
var metadata = metadataOverride || getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles);
|
||||||
var roleWasApplied = applyPoliticTalkRoleToElement(avatar, metadata);
|
var roleWasApplied = applyPoliticTalkRoleToElement(avatar, metadata);
|
||||||
|
|
||||||
addPoliticTalkClass(avatar, 'politictalk-avatar-themed');
|
addPoliticTalkClass(avatar, 'politictalk-avatar-themed');
|
||||||
@@ -2594,11 +2458,6 @@
|
|||||||
avatar.style.setProperty('--politictalk-avatar-background', fallbackColor);
|
avatar.style.setProperty('--politictalk-avatar-background', fallbackColor);
|
||||||
avatar.style.setProperty('--politictalk-tile-border-color', fallbackColor);
|
avatar.style.setProperty('--politictalk-tile-border-color', fallbackColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
var avatarColor = getPoliticTalkRoleColor(metadata && metadata.role);
|
|
||||||
|
|
||||||
setPoliticTalkImportantStyle(avatar, 'background', avatarColor);
|
|
||||||
setPoliticTalkImportantStyle(avatar, 'background-color', avatarColor);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function applyPoliticTalkAvatarThemeInContainer(container, metadata) {
|
function applyPoliticTalkAvatarThemeInContainer(container, metadata) {
|
||||||
@@ -2777,14 +2636,11 @@
|
|||||||
var dominantName = getPoliticTalkVisibleDisplayName(
|
var dominantName = getPoliticTalkVisibleDisplayName(
|
||||||
videospace.querySelector('[data-testid="stage-display-name"]')
|
videospace.querySelector('[data-testid="stage-display-name"]')
|
||||||
);
|
);
|
||||||
|
var dominantMetadata = getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles);
|
||||||
applyPoliticTalkParticipantPaneAvatarTheme(videospace, tiles, thumbnails);
|
|
||||||
|
|
||||||
var dominantMetadata = getPoliticTalkDominantSpeakerRoleMetadata(videospace, tiles, thumbnails);
|
|
||||||
|
|
||||||
applyPoliticTalkLargeVideoLayout(videospace, tiles);
|
applyPoliticTalkLargeVideoLayout(videospace, tiles);
|
||||||
applyPoliticTalkTileLayout(videospace, tiles);
|
applyPoliticTalkTileLayout(videospace, tiles);
|
||||||
applyPoliticTalkDominantSpeakerTheme(videospace, tiles, thumbnails, dominantMetadata);
|
applyPoliticTalkDominantSpeakerTheme(videospace, tiles, dominantMetadata);
|
||||||
|
|
||||||
tiles.forEach(function(tile) {
|
tiles.forEach(function(tile) {
|
||||||
addPoliticTalkClass(tile, 'politictalk-themed-tile');
|
addPoliticTalkClass(tile, 'politictalk-themed-tile');
|
||||||
|
|||||||
Reference in New Issue
Block a user