mirror of
https://github.com/glitch-soc/mastodon.git
synced 2026-03-29 03:00:33 +02:00
32 lines
899 B
TypeScript
32 lines
899 B
TypeScript
import { EMOJI_DB_NAME_SHORTCODES, EMOJI_TYPE_CUSTOM } from './constants';
|
|
import {
|
|
importCustomEmojiData,
|
|
importEmojiData,
|
|
importLegacyShortcodes,
|
|
} from './loader';
|
|
|
|
addEventListener('message', handleMessage);
|
|
self.postMessage('ready'); // After the worker is ready, notify the main thread
|
|
|
|
function handleMessage(event: MessageEvent<{ locale: string }>) {
|
|
const {
|
|
data: { locale },
|
|
} = event;
|
|
void loadData(locale);
|
|
}
|
|
|
|
async function loadData(locale: string) {
|
|
let importCount: number | undefined;
|
|
if (locale === EMOJI_TYPE_CUSTOM) {
|
|
importCount = (await importCustomEmojiData())?.length;
|
|
} else if (locale === EMOJI_DB_NAME_SHORTCODES) {
|
|
importCount = (await importLegacyShortcodes())?.length;
|
|
} else {
|
|
importCount = (await importEmojiData(locale))?.length;
|
|
}
|
|
|
|
if (importCount) {
|
|
self.postMessage(`loaded ${importCount} emojis into ${locale}`);
|
|
}
|
|
}
|