UNPKG

@lobehub/fluent-emoji

Version:

Fluent Emoji are a collection of familiar, friendly, and modern emoji from Microsoft

1 lines 2.65 kB
{"version":3,"file":"utils.mjs","names":[],"sources":["../../src/getFluentEmojiCDN/utils.ts"],"sourcesContent":["export type EmojiType = 'anim' | 'flat' | 'modern' | 'mono' | '3d';\n\nexport function isFlagEmoji(emoji: string) {\n const flagRegex = /(?:\\uD83C[\\uDDE6-\\uDDFF]){2}/;\n return flagRegex.test(emoji);\n}\n\nexport function emojiToUnicode(emoji: string) {\n return [...emoji].map((char) => char?.codePointAt(0)?.toString(16)).join('-');\n}\n\nexport function emojiAnimPkg(emoji: string) {\n const mainPart = emojiToUnicode(emoji).split('-')[0];\n if (mainPart < '1f469') {\n return '@lobehub/fluent-emoji-anim-1';\n } else if (mainPart >= '1f469' && mainPart < '1f620') {\n return '@lobehub/fluent-emoji-anim-2';\n } else if (mainPart >= '1f620' && mainPart < '1f9a0') {\n return '@lobehub/fluent-emoji-anim-3';\n } else {\n return '@lobehub/fluent-emoji-anim-4';\n }\n}\n\nexport const genEmojiUrl = (emoji: string, type: EmojiType) => {\n const ext = ['anim', '3d'].includes(type) ? 'webp' : 'svg';\n\n switch (type) {\n case 'anim': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: emojiAnimPkg(emoji),\n };\n }\n case '3d': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-3d',\n };\n }\n case 'flat': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-flat',\n };\n }\n case 'modern': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-modern',\n };\n }\n case 'mono': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-mono',\n };\n }\n }\n};\n"],"mappings":";AAOA,SAAgB,eAAe,OAAe;CAC5C,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,SAAS,MAAM,YAAY,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG;AAC9E;AAEA,SAAgB,aAAa,OAAe;CAC1C,MAAM,WAAW,eAAe,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;CAClD,IAAI,WAAW,SACb,OAAO;MACF,IAAI,YAAY,WAAW,WAAW,SAC3C,OAAO;MACF,IAAI,YAAY,WAAW,WAAW,SAC3C,OAAO;MAEP,OAAO;AAEX;AAEA,MAAa,eAAe,OAAe,SAAoB;CAC7D,MAAM,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,SAAS;CAErD,QAAQ,MAAR;EACE,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK,aAAa,KAAK;EACzB;EAEF,KAAK,MACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;EACP;EAEF,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;EACP;EAEF,KAAK,UACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;EACP;EAEF,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;EACP;CAEJ;AACF"}