25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

12 lines
431 B

import { emojis as compressed } from './emojis.generated';
import { decompressFromBase64LZString } from './system/string';
const emojiRegex = /:([-+_a-z0-9]+):/g;
let emojis: Record<string, string> | undefined = undefined;
export function emojify(message: string) {
if (emojis == null) {
emojis = JSON.parse(decompressFromBase64LZString(compressed));
}
return message.replace(emojiRegex, (s, code) => emojis![code] || s);
}