forked from rDrama/rDrama
1
0
Fork 0

fix up all mirror issues for good

master
Aevann 2024-02-23 20:04:25 +02:00
parent 417362cebc
commit 3188198fd7
2 changed files with 19 additions and 42 deletions

View File

@ -5362,37 +5362,6 @@ textarea {
.text-removed {
color: #ffabab !important;
}
.mirrored {
transform: scaleX(-1);
}
span[alt^=":"][alt*="!"] {
transform: scaleX(-1);
}
span[alt^=":"][alt*="!!"] {
transform: scaleX(1);
}
span[alt^=":"][alt*="!!"][alt*="pat"] {
transform: scaleX(-1);
}
img[alt^=":"][alt*="!!"] {
transform: scaleX(-1);
}
img[alt^=":"][alt*="!"] {
transform: scaleX(-1);
}
span[alt^=":"][alt*="!"] > img[alt^=":"][alt*="!"]:not([alt*="genocide"]) {
transform: scaleX(1);
}
span[alt^=":"][alt*="!!"] > img[alt^=":"][alt*="!"] {
transform: scaleX(-1);
}
@media (max-width: 768px) {
.popover-bio * {
@ -7729,3 +7698,16 @@ input[type="search"]::-webkit-search-cancel-button {
details > *:first-child {
margin-top: 1rem;
}
.mirrored {
transform: scaleX(-1);
}
:not(span) > img[alt^=":"][alt*="!"] {
transform: scaleX(-1);
}
span[alt^=":"][alt*="!"]:not([alt*="genocide"]) {
transform: scaleX(-1);
}
img[alt^=":"][alt*="!"][alt*="genocide"] {
transform: scaleX(-1);
}

View File

@ -71,10 +71,9 @@ const MODIFIERS = {
LARGE: 3,
REVERSED: 4,
USER: 5,
REVERSED_MODIFIER: 6,
GENOCIDE: 7,
LOVE: 8,
TYPING: 9,
GENOCIDE: 6,
LOVE: 7,
TYPING: 8,
};
const findAllEmojiEndings = (word) => {
@ -170,13 +169,12 @@ function markdown(t) {
for(i = 0; i < emojis.length; i++){
const old = emojis[i][0];
if (old.includes('marseyrandom')) continue;
if (old.includes('marseyrandom')) continue
let emoji = old.replace(/[:]/g,'').toLowerCase();
const modifiers = new Set();
let length = emoji.length;
if(emoji.includes('!!')) modifiers.add(MODIFIERS.REVERSED_MODIFIER);
emoji = emoji.replaceAll('!', '');
if (length !== emoji.length) {
modifiers.add(MODIFIERS.REVERSED);
@ -205,14 +203,11 @@ function markdown(t) {
}
}
const mirroredClass = 'mirrored';
const genocideClass = modifiers.has(MODIFIERS.GENOCIDE) ? 'cide' : '';
const emojiClass = modifiers.has(MODIFIERS.LARGE) ? 'emoji-lg' : 'emoji';
const patClass = modifiers.has(MODIFIERS.PAT) ? 'pat-preview' : '';
// patted emojis cannot be flipped back easily so they don't support double flipping
const spanClass = modifiers.has(MODIFIERS.REVERSED) && (modifiers.has(MODIFIERS.PAT) || !modifiers.has(MODIFIERS.REVERSED_MODIFIER)) ? mirroredClass : '';
const imgClass = modifiers.has(MODIFIERS.REVERSED) && modifiers.has(MODIFIERS.REVERSED_MODIFIER) ? mirroredClass : ''
const lovedClass = modifiers.has(MODIFIERS.LOVE) ? 'love-preview' : '';
if ([MODIFIERS.TALKING, MODIFIERS.GENOCIDE, MODIFIERS.PAT, MODIFIERS.LOVE, MODIFIERS.TYPING].some((modifer) => modifiers.has(modifer))) {
@ -222,9 +217,9 @@ function markdown(t) {
const loveHtml = modifiers.has(MODIFIERS.LOVE) ? `<img loading="lazy" class="${emojiClass}" src="${SITE_FULL_IMAGES}/i/love-foreground.webp"><img loading="lazy" class="${emojiClass}" src="${SITE_FULL_IMAGES}/i/love-background.webp">` : '';
const url = modifiers.has(MODIFIERS.USER) ? `/@${emoji}/pic` : `${SITE_FULL_IMAGES}/e/${emoji}.webp`;
const modifierHtml = isTalkingFirst ? `${talkingHtml}${patHtml}${loveHtml}${typingHtml}` : `${patHtml}${talkingHtml}${loveHtml}${typingHtml}`;
input = input.replace(old, `<span class="${patClass} ${spanClass} ${genocideClass}" data-bs-toggle="tooltip">${modifierHtml}<img loading="lazy" class="${emojiClass} ${imgClass} ${lovedClass} ${modifiers.has(MODIFIERS.REVERSED) ? mirroredClass : ''}" src="${url}"></span>`);
input = input.replace(old, `<span alt="${old}" class="${patClass} ${genocideClass}" data-bs-toggle="tooltip">${modifierHtml}<img alt="${old}" loading="lazy" class="${emojiClass} ${lovedClass}" src="${url}"></span>`);
} else {
input = input.replace(old, `<img loading="lazy" class="${emojiClass} ${modifiers.has(MODIFIERS.REVERSED) ? mirroredClass : ''}" src="${SITE_FULL_IMAGES}/e/${emoji}.webp">`);
input = input.replace(old, `<img alt="${old}" loading="lazy" class="${emojiClass}}" src="${SITE_FULL_IMAGES}/e/${emoji}.webp">`);
}
}
}