@lobehub/ui
Version:
Lobe UI is an open-source UI component library for building AIGC web apps
1 lines • 2.91 kB
Source Map (JSON)
{"version":3,"file":"utils.mjs","names":[],"sources":["../../src/FluentEmoji/utils.ts"],"sourcesContent":["export type EmojiType = 'anim' | 'flat' | 'modern' | 'mono' | 'raw' | '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 'raw': {\n return null;\n }\n case 'anim': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: emojiAnimPkg(emoji),\n version: 'latest',\n };\n }\n case '3d': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-3d',\n version: 'latest',\n };\n }\n case 'flat': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-flat',\n version: 'latest',\n };\n }\n case 'modern': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-modern',\n version: 'latest',\n };\n }\n case 'mono': {\n return {\n path: `assets/${emojiToUnicode(emoji)}.${ext}`,\n pkg: '@lobehub/fluent-emoji-mono',\n version: 'latest',\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,OACH,OAAO;EAET,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK,aAAa,KAAK;GACvB,SAAS;EACX;EAEF,KAAK,MACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;GACL,SAAS;EACX;EAEF,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;GACL,SAAS;EACX;EAEF,KAAK,UACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;GACL,SAAS;EACX;EAEF,KAAK,QACH,OAAO;GACL,MAAM,UAAU,eAAe,KAAK,EAAE,GAAG;GACzC,KAAK;GACL,SAAS;EACX;CAEJ;AACF"}