mirror of
https://github.com/LifeArchiveProject/WeChatDataAnalysis.git
synced 2026-02-19 06:10:52 +08:00
improvement(chat): 优化聊天消息渲染与微信风格资源
- 转账/红包消息改为微信风格卡片展示,补充状态与金额展示 - 语音/通话等消息补充图标与交互样式,提升一致性 - 增加聊天页使用的静态资源与表情资源,并补充表情映射文件
This commit is contained in:
886
frontend/utils/wechat-emojis.ts
Normal file
886
frontend/utils/wechat-emojis.ts
Normal file
@@ -0,0 +1,886 @@
|
||||
const WechatEmojiTable: Record<string, string> = {
|
||||
"/::)": "Expression_1@2x.png",
|
||||
"/微笑": "Expression_1@2x.png",
|
||||
"[微笑]": "Expression_1@2x.png",
|
||||
"[Smile]": "Expression_1@2x.png",
|
||||
"[ยม]": "Expression_1@2x.png",
|
||||
|
||||
"/::~": "Expression_2@2x.png",
|
||||
"/撇嘴": "Expression_2@2x.png",
|
||||
"[撇嘴]": "Expression_2@2x.png",
|
||||
"[Grimace]": "Expression_2@2x.png",
|
||||
"[หนาบด]": "Expression_2@2x.png",
|
||||
|
||||
"/::B": "Expression_3@2x.png",
|
||||
"/色": "Expression_3@2x.png",
|
||||
"[色]": "Expression_3@2x.png",
|
||||
"[Drool]": "Expression_3@2x.png",
|
||||
"[นลายไหล]": "Expression_3@2x.png",
|
||||
|
||||
"/::|": "Expression_4@2x.png",
|
||||
"/发呆": "Expression_4@2x.png",
|
||||
"[发呆]": "Expression_4@2x.png",
|
||||
"[發呆]": "Expression_4@2x.png",
|
||||
"[Scowl]": "Expression_4@2x.png",
|
||||
"[หนาบง]": "Expression_4@2x.png",
|
||||
|
||||
"/:8-)": "Expression_5@2x.png",
|
||||
"/得意": "Expression_5@2x.png",
|
||||
"[得意]": "Expression_5@2x.png",
|
||||
"[CoolGuy]": "Expression_5@2x.png",
|
||||
"[สบาย]": "Expression_5@2x.png",
|
||||
|
||||
"/::<": "Expression_6@2x.png",
|
||||
"/流泪": "Expression_6@2x.png",
|
||||
"[流泪]": "Expression_6@2x.png",
|
||||
"[流淚]": "Expression_6@2x.png",
|
||||
"[Sob]": "Expression_6@2x.png",
|
||||
"[รองไหโฮ]": "Expression_6@2x.png",
|
||||
|
||||
"/::$": "Expression_7@2x.png",
|
||||
"/害羞": "Expression_7@2x.png",
|
||||
"[害羞]": "Expression_7@2x.png",
|
||||
"[Shy]": "Expression_7@2x.png",
|
||||
"[อาย]": "Expression_7@2x.png",
|
||||
|
||||
"/::X": "Expression_8@2x.png",
|
||||
"/闭嘴": "Expression_8@2x.png",
|
||||
"[闭嘴]": "Expression_8@2x.png",
|
||||
"[閉嘴]": "Expression_8@2x.png",
|
||||
"[Silent]": "Expression_8@2x.png",
|
||||
"[หามพด]": "Expression_8@2x.png",
|
||||
|
||||
"/::Z": "Expression_9@2x.png",
|
||||
"/睡": "Expression_9@2x.png",
|
||||
"[睡]": "Expression_9@2x.png",
|
||||
"[Sleep]": "Expression_9@2x.png",
|
||||
"[หลบ]": "Expression_9@2x.png",
|
||||
|
||||
// "/::\'(": "Expression_10@2x.png",
|
||||
"/大哭": "Expression_10@2x.png",
|
||||
"[大哭]": "Expression_10@2x.png",
|
||||
"[Cry]": "Expression_10@2x.png",
|
||||
"[รองไห]": "Expression_10@2x.png",
|
||||
|
||||
"/::-|": "Expression_11@2x.png",
|
||||
"/尴尬": "Expression_11@2x.png",
|
||||
"[尴尬]": "Expression_11@2x.png",
|
||||
"[尷尬]": "Expression_11@2x.png",
|
||||
"[Awkward]": "Expression_11@2x.png",
|
||||
"[ลบากใจ]": "Expression_11@2x.png",
|
||||
|
||||
"/::@": "Expression_12@2x.png",
|
||||
"/发怒": "Expression_12@2x.png",
|
||||
"[发怒]": "Expression_12@2x.png",
|
||||
"[發怒]": "Expression_12@2x.png",
|
||||
"[Angry]": "Expression_12@2x.png",
|
||||
"[โกรธสด]": "Expression_12@2x.png",
|
||||
|
||||
"/::P": "Expression_13@2x.png",
|
||||
"/调皮": "Expression_13@2x.png",
|
||||
"[吐舌]": "Expression_13@2x.png",
|
||||
"[调皮]": "Expression_13@2x.png",
|
||||
"[調皮]": "Expression_13@2x.png",
|
||||
"[Tongue]": "Expression_13@2x.png",
|
||||
"[ขยบตา]": "Expression_13@2x.png",
|
||||
|
||||
"/::D": "Expression_14@2x.png",
|
||||
"/呲牙": "Expression_14@2x.png",
|
||||
"[呲牙]": "Expression_14@2x.png",
|
||||
"[Grin]": "Expression_14@2x.png",
|
||||
"[ยมกวาง]": "Expression_14@2x.png",
|
||||
|
||||
"/::O": "Expression_15@2x.png",
|
||||
"/惊讶": "Expression_15@2x.png",
|
||||
"[惊讶]": "Expression_15@2x.png",
|
||||
"[驚訝]": "Expression_15@2x.png",
|
||||
"[Surprise]": "Expression_15@2x.png",
|
||||
"[ประหลาดใจ]": "Expression_15@2x.png",
|
||||
|
||||
"/::(": "Expression_16@2x.png",
|
||||
"/难过": "Expression_16@2x.png",
|
||||
"[难过]": "Expression_16@2x.png",
|
||||
"[難過]": "Expression_16@2x.png",
|
||||
"[Frown]": "Expression_16@2x.png",
|
||||
"[เสยใจ]": "Expression_16@2x.png",
|
||||
|
||||
"/::+": "Expression_17@2x.png",
|
||||
"/酷": "Expression_17@2x.png",
|
||||
"[酷]": "Expression_17@2x.png",
|
||||
"[Ruthless]": "Expression_17@2x.png",
|
||||
"[เจง]": "Expression_17@2x.png",
|
||||
|
||||
"/:--b": "Expression_18@2x.png",
|
||||
"/冷汗": "Expression_18@2x.png",
|
||||
"[囧]": "Expression_18@2x.png",
|
||||
"[Blush]": "Expression_18@2x.png",
|
||||
|
||||
"/::Q": "Expression_19@2x.png",
|
||||
"/抓狂": "Expression_19@2x.png",
|
||||
"[抓狂]": "Expression_19@2x.png",
|
||||
"[Scream]": "Expression_19@2x.png",
|
||||
"[กรดรอง]": "Expression_19@2x.png",
|
||||
|
||||
"/::T": "Expression_20@2x.png",
|
||||
"/吐": "Expression_20@2x.png",
|
||||
"[吐]": "Expression_20@2x.png",
|
||||
"[Puke]": "Expression_20@2x.png",
|
||||
"[อาเจยน]": "Expression_20@2x.png",
|
||||
|
||||
"/:,@P": "Expression_21@2x.png",
|
||||
"/偷笑": "Expression_21@2x.png",
|
||||
"[偷笑]": "Expression_21@2x.png",
|
||||
"[Chuckle]": "Expression_21@2x.png",
|
||||
"[หวเราะหๆ]": "Expression_21@2x.png",
|
||||
|
||||
"/:,@-D": "Expression_22@2x.png",
|
||||
"/可爱": "Expression_22@2x.png",
|
||||
"[愉快]": "Expression_22@2x.png",
|
||||
"[Joyful]": "Expression_22@2x.png",
|
||||
"[พอใจ]": "Expression_22@2x.png",
|
||||
|
||||
"/::d": "Expression_23@2x.png",
|
||||
"/白眼": "Expression_23@2x.png",
|
||||
"[白眼]": "Expression_23@2x.png",
|
||||
"[Slight]": "Expression_23@2x.png",
|
||||
"[สงสย]": "Expression_23@2x.png",
|
||||
|
||||
"/:,@o": "Expression_24@2x.png",
|
||||
"/傲慢": "Expression_24@2x.png",
|
||||
"[傲慢]": "Expression_24@2x.png",
|
||||
"[Smug]": "Expression_24@2x.png",
|
||||
"[หยง]": "Expression_24@2x.png",
|
||||
|
||||
"/::g": "Expression_25@2x.png",
|
||||
"/饥饿": "Expression_25@2x.png",
|
||||
"[饥饿]": "Expression_25@2x.png",
|
||||
"[饑餓]": "Expression_25@2x.png",
|
||||
"[Hungry]": "Expression_25@2x.png",
|
||||
"[หว]": "Expression_25@2x.png",
|
||||
|
||||
"/:|-)": "Expression_26@2x.png",
|
||||
"/困": "Expression_26@2x.png",
|
||||
"[困]": "Expression_26@2x.png",
|
||||
"[累]": "Expression_26@2x.png",
|
||||
"[Drowsy]": "Expression_26@2x.png",
|
||||
"[งวงนอน]": "Expression_26@2x.png",
|
||||
|
||||
"/::!": "Expression_27@2x.png",
|
||||
"/惊恐": "Expression_27@2x.png",
|
||||
"[惊恐]": "Expression_27@2x.png",
|
||||
"[驚恐]": "Expression_27@2x.png",
|
||||
"[Panic]": "Expression_27@2x.png",
|
||||
"[ตกใจกลว]": "Expression_27@2x.png",
|
||||
|
||||
"/::L": "Expression_28@2x.png",
|
||||
"/流汗": "Expression_28@2x.png",
|
||||
"[流汗]": "Expression_28@2x.png",
|
||||
"[Sweat]": "Expression_28@2x.png",
|
||||
"[เหงอตก]": "Expression_28@2x.png",
|
||||
|
||||
"/::>": "Expression_29@2x.png",
|
||||
"/憨笑": "Expression_29@2x.png",
|
||||
"[憨笑]": "Expression_29@2x.png",
|
||||
"[大笑]": "Expression_29@2x.png",
|
||||
"[Laugh]": "Expression_29@2x.png",
|
||||
"[หวเราะ]": "Expression_29@2x.png",
|
||||
|
||||
"/::,@": "Expression_30@2x.png",
|
||||
"/大兵": "Expression_30@2x.png",
|
||||
"[悠闲]": "Expression_30@2x.png",
|
||||
"[悠閑]": "Expression_30@2x.png",
|
||||
"[Commando]": "Expression_30@2x.png",
|
||||
"[ทหาร]": "Expression_30@2x.png",
|
||||
|
||||
"/:,@f": "Expression_31@2x.png",
|
||||
"/奋斗": "Expression_31@2x.png",
|
||||
"[奋斗]": "Expression_31@2x.png",
|
||||
"[奮鬥]": "Expression_31@2x.png",
|
||||
"[Determined]": "Expression_31@2x.png",
|
||||
"[มงมน]": "Expression_31@2x.png",
|
||||
|
||||
"/::-S": "Expression_32@2x.png",
|
||||
"/咒骂": "Expression_32@2x.png",
|
||||
"[咒骂]": "Expression_32@2x.png",
|
||||
"[咒罵]": "Expression_32@2x.png",
|
||||
"[Scold]": "Expression_32@2x.png",
|
||||
"[ดาวาา]": "Expression_32@2x.png",
|
||||
|
||||
"/:?": "Expression_33@2x.png",
|
||||
"/疑问": "Expression_33@2x.png",
|
||||
"[疑问]": "Expression_33@2x.png",
|
||||
"[疑問]": "Expression_33@2x.png",
|
||||
"[Shocked]": "Expression_33@2x.png",
|
||||
"[สบสน]": "Expression_33@2x.png",
|
||||
|
||||
"/:,@x": "Expression_34@2x.png",
|
||||
"/嘘": "Expression_34@2x.png",
|
||||
"[嘘]": "Expression_34@2x.png",
|
||||
"[噓]": "Expression_34@2x.png",
|
||||
"[Shhh]": "Expression_34@2x.png",
|
||||
"[จๆ]": "Expression_34@2x.png",
|
||||
|
||||
"/:,@@": "Expression_35@2x.png",
|
||||
"/晕": "Expression_35@2x.png",
|
||||
"[晕]": "Expression_35@2x.png",
|
||||
"[暈]": "Expression_35@2x.png",
|
||||
"[Dizzy]": "Expression_35@2x.png",
|
||||
"[เวยนหว]": "Expression_35@2x.png",
|
||||
|
||||
"/::8": "Expression_36@2x.png",
|
||||
"/折磨": "Expression_36@2x.png",
|
||||
"[疯了]": "Expression_36@2x.png",
|
||||
"[瘋了]": "Expression_36@2x.png",
|
||||
"[Tormented]": "Expression_36@2x.png",
|
||||
"[ทอแท]": "Expression_36@2x.png",
|
||||
|
||||
"/:,@!": "Expression_37@2x.png",
|
||||
"/衰": "Expression_37@2x.png",
|
||||
"[衰]": "Expression_37@2x.png",
|
||||
"[Toasted]": "Expression_37@2x.png",
|
||||
"[ชวราย]": "Expression_37@2x.png",
|
||||
|
||||
"/:!!!": "Expression_38@2x.png",
|
||||
"/骷髅": "Expression_38@2x.png",
|
||||
"[骷髅]": "Expression_38@2x.png",
|
||||
"[骷髏頭]": "Expression_38@2x.png",
|
||||
"[Skull]": "Expression_38@2x.png",
|
||||
"[หวกะโหลก]": "Expression_38@2x.png",
|
||||
|
||||
"/:xx": "Expression_39@2x.png",
|
||||
"/敲打": "Expression_39@2x.png",
|
||||
"[敲打]": "Expression_39@2x.png",
|
||||
"[Hammer]": "Expression_39@2x.png",
|
||||
"[คอนทบ]": "Expression_39@2x.png",
|
||||
|
||||
"/:bye": "Expression_40@2x.png",
|
||||
"/再见": "Expression_40@2x.png",
|
||||
// "[再見]": "Expression_40@2x.png",
|
||||
"[Wave]": "Expression_40@2x.png",
|
||||
"[บายๆ]": "Expression_40@2x.png",
|
||||
|
||||
"/:wipe": "Expression_41@2x.png",
|
||||
"/擦汗": "Expression_41@2x.png",
|
||||
"[擦汗]": "Expression_41@2x.png",
|
||||
"[Speechless]": "Expression_41@2x.png",
|
||||
"[เชดเหงอ]": "Expression_41@2x.png",
|
||||
|
||||
"/:dig": "Expression_42@2x.png",
|
||||
"/抠鼻": "Expression_42@2x.png",
|
||||
"[抠鼻]": "Expression_42@2x.png",
|
||||
"[摳鼻]": "Expression_42@2x.png",
|
||||
"[NosePick]": "Expression_42@2x.png",
|
||||
"[แคะจมก]": "Expression_42@2x.png",
|
||||
|
||||
"/:handclap": "Expression_43@2x.png",
|
||||
"/鼓掌": "Expression_43@2x.png",
|
||||
"[鼓掌]": "Expression_43@2x.png",
|
||||
"[Clap]": "Expression_43@2x.png",
|
||||
"[ตบมอ]": "Expression_43@2x.png",
|
||||
|
||||
"/:&-(": "Expression_44@2x.png",
|
||||
"/糗大了": "Expression_44@2x.png",
|
||||
"[糗大了]": "Expression_44@2x.png",
|
||||
"[羞辱]": "Expression_44@2x.png",
|
||||
"[Shame]": "Expression_44@2x.png",
|
||||
"[อบอาย]": "Expression_44@2x.png",
|
||||
|
||||
"/:B-)": "Expression_45@2x.png",
|
||||
"/坏笑": "Expression_45@2x.png",
|
||||
"[坏笑]": "Expression_45@2x.png",
|
||||
"[壞笑]": "Expression_45@2x.png",
|
||||
"[Trick]": "Expression_45@2x.png",
|
||||
"[กลโกง]": "Expression_45@2x.png",
|
||||
|
||||
"/:<@": "Expression_46@2x.png",
|
||||
"/左哼哼": "Expression_46@2x.png",
|
||||
"[左哼哼]": "Expression_46@2x.png",
|
||||
"[Bah!L]": "Expression_46@2x.png",
|
||||
"[เชดซาย]": "Expression_46@2x.png",
|
||||
|
||||
"/:@>": "Expression_47@2x.png",
|
||||
"/右哼哼": "Expression_47@2x.png",
|
||||
"[右哼哼]": "Expression_47@2x.png",
|
||||
"[Bah!R]": "Expression_47@2x.png",
|
||||
"[เชดขวา]": "Expression_47@2x.png",
|
||||
|
||||
"/::-O": "Expression_48@2x.png",
|
||||
"/哈欠": "Expression_48@2x.png",
|
||||
"[哈欠]": "Expression_48@2x.png",
|
||||
"[Yawn]": "Expression_48@2x.png",
|
||||
"[หาว]": "Expression_48@2x.png",
|
||||
|
||||
"/:>-|": "Expression_49@2x.png",
|
||||
"/鄙视": "Expression_49@2x.png",
|
||||
"[鄙视]": "Expression_49@2x.png",
|
||||
"[鄙視]": "Expression_49@2x.png",
|
||||
"[Pooh-pooh]": "Expression_49@2x.png",
|
||||
"[ดถก]": "Expression_49@2x.png",
|
||||
|
||||
"/:P-(": "Expression_50@2x.png",
|
||||
"/委屈": "Expression_50@2x.png",
|
||||
"[委屈]": "Expression_50@2x.png",
|
||||
"[Shrunken]": "Expression_50@2x.png",
|
||||
"[ของใจ]": "Expression_50@2x.png",
|
||||
|
||||
// "/::\'|": "Expression_51@2x.png",
|
||||
"/快哭了": "Expression_51@2x.png",
|
||||
"[快哭了]": "Expression_51@2x.png",
|
||||
"[TearingUp]": "Expression_51@2x.png",
|
||||
"[เกอบรองไห]": "Expression_51@2x.png",
|
||||
|
||||
"/:X-)": "Expression_52@2x.png",
|
||||
"/阴险": "Expression_52@2x.png",
|
||||
"[阴险]": "Expression_52@2x.png",
|
||||
"[陰險]": "Expression_52@2x.png",
|
||||
"[Sly]": "Expression_52@2x.png",
|
||||
"[ขโกง]": "Expression_52@2x.png",
|
||||
|
||||
"/::*": "Expression_53@2x.png",
|
||||
"/亲亲": "Expression_53@2x.png",
|
||||
"[亲亲]": "Expression_53@2x.png",
|
||||
"[親親]": "Expression_53@2x.png",
|
||||
"[Kiss]": "Expression_53@2x.png",
|
||||
"[จบ]": "Expression_53@2x.png",
|
||||
|
||||
"/:@x": "Expression_54@2x.png",
|
||||
"/吓": "Expression_54@2x.png",
|
||||
"[吓]": "Expression_54@2x.png",
|
||||
"[嚇]": "Expression_54@2x.png",
|
||||
"[Wrath]": "Expression_54@2x.png",
|
||||
"[หา]": "Expression_54@2x.png",
|
||||
|
||||
"/:8*": "Expression_55@2x.png",
|
||||
"/可怜": "Expression_55@2x.png",
|
||||
"[可怜]": "Expression_55@2x.png",
|
||||
"[可憐]": "Expression_55@2x.png",
|
||||
"[Whimper]": "Expression_55@2x.png",
|
||||
"[นาสงสาร]": "Expression_55@2x.png",
|
||||
|
||||
"/:pd": "Expression_56@2x.png",
|
||||
"/菜刀": "Expression_56@2x.png",
|
||||
"[菜刀]": "Expression_56@2x.png",
|
||||
"[Cleaver]": "Expression_56@2x.png",
|
||||
"[มด]": "Expression_56@2x.png",
|
||||
|
||||
"/:<W>": "Expression_57@2x.png",
|
||||
"/西瓜": "Expression_57@2x.png",
|
||||
"[西瓜]": "Expression_57@2x.png",
|
||||
"[Watermelon]": "Expression_57@2x.png",
|
||||
"[แตงโม]": "Expression_57@2x.png",
|
||||
|
||||
"/:beer": "Expression_58@2x.png",
|
||||
"/啤酒": "Expression_58@2x.png",
|
||||
"[啤酒]": "Expression_58@2x.png",
|
||||
"[Beer]": "Expression_58@2x.png",
|
||||
"[เบยร]": "Expression_58@2x.png",
|
||||
|
||||
"/:basketb": "Expression_59@2x.png",
|
||||
"/篮球": "Expression_59@2x.png",
|
||||
"[篮球]": "Expression_59@2x.png",
|
||||
"[籃球]": "Expression_59@2x.png",
|
||||
"[Basketball]": "Expression_59@2x.png",
|
||||
"[บาสเกตบอล]": "Expression_59@2x.png",
|
||||
|
||||
"/:oo": "Expression_60@2x.png",
|
||||
"/乒乓": "Expression_60@2x.png",
|
||||
"[乒乓]": "Expression_60@2x.png",
|
||||
"[PingPong]": "Expression_60@2x.png",
|
||||
"[ปงปอง]": "Expression_60@2x.png",
|
||||
|
||||
"/:coffee": "Expression_61@2x.png",
|
||||
"/咖啡": "Expression_61@2x.png",
|
||||
"[咖啡]": "Expression_61@2x.png",
|
||||
"[Coffee]": "Expression_61@2x.png",
|
||||
"[กาแฟ]": "Expression_61@2x.png",
|
||||
|
||||
"/:eat": "Expression_62@2x.png",
|
||||
"/饭": "Expression_62@2x.png",
|
||||
"[饭]": "Expression_62@2x.png",
|
||||
"[飯]": "Expression_62@2x.png",
|
||||
"[Rice]": "Expression_62@2x.png",
|
||||
"[ขาว]": "Expression_62@2x.png",
|
||||
|
||||
"/:pig": "Expression_63@2x.png",
|
||||
"/猪头": "Expression_63@2x.png",
|
||||
"[猪头]": "Expression_63@2x.png",
|
||||
"[豬頭]": "Expression_63@2x.png",
|
||||
"[Pig]": "Expression_63@2x.png",
|
||||
"[หม]": "Expression_63@2x.png",
|
||||
|
||||
"/:rose": "Expression_64@2x.png",
|
||||
"/玫瑰": "Expression_64@2x.png",
|
||||
"[玫瑰]": "Expression_64@2x.png",
|
||||
"[Rose]": "Expression_64@2x.png",
|
||||
"[กหลาบ]": "Expression_64@2x.png",
|
||||
|
||||
"/:fade": "Expression_65@2x.png",
|
||||
"/凋谢": "Expression_65@2x.png",
|
||||
"[凋谢]": "Expression_65@2x.png",
|
||||
"[枯萎]": "Expression_65@2x.png",
|
||||
"[Wilt]": "Expression_65@2x.png",
|
||||
"[รวงโรย]": "Expression_65@2x.png",
|
||||
|
||||
"/:showlove": "Expression_66@2x.png",
|
||||
"/示爱": "Expression_66@2x.png",
|
||||
"[嘴唇]": "Expression_66@2x.png",
|
||||
"[Lips]": "Expression_66@2x.png",
|
||||
"[รมฝปาก]": "Expression_66@2x.png",
|
||||
|
||||
"/:heart": "Expression_67@2x.png",
|
||||
"/爱心": "Expression_67@2x.png",
|
||||
"[爱心]": "Expression_67@2x.png",
|
||||
"[愛心]": "Expression_67@2x.png",
|
||||
"[Heart]": "Expression_67@2x.png",
|
||||
"[หวใจ]": "Expression_67@2x.png",
|
||||
|
||||
"/:break": "Expression_68@2x.png",
|
||||
"/心碎": "Expression_68@2x.png",
|
||||
"[心碎]": "Expression_68@2x.png",
|
||||
"[BrokenHeart]": "Expression_68@2x.png",
|
||||
"[ใจสลาย]": "Expression_68@2x.png",
|
||||
|
||||
"/:cake": "Expression_69@2x.png",
|
||||
"/蛋糕": "Expression_69@2x.png",
|
||||
"[蛋糕]": "Expression_69@2x.png",
|
||||
"[Cake]": "Expression_69@2x.png",
|
||||
"[เคก]": "Expression_69@2x.png",
|
||||
|
||||
"/:li": "Expression_70@2x.png",
|
||||
"/闪电": "Expression_70@2x.png",
|
||||
"[闪电]": "Expression_70@2x.png",
|
||||
"[閃電]": "Expression_70@2x.png",
|
||||
"[Lightning]": "Expression_70@2x.png",
|
||||
"[ฟาผา]": "Expression_70@2x.png",
|
||||
|
||||
"/:bome": "Expression_71@2x.png",
|
||||
"/炸弹": "Expression_71@2x.png",
|
||||
"[炸弹]": "Expression_71@2x.png",
|
||||
"[炸彈]": "Expression_71@2x.png",
|
||||
"[Bomb]": "Expression_71@2x.png",
|
||||
"[ระเบด]": "Expression_71@2x.png",
|
||||
|
||||
"/:kn": "Expression_72@2x.png",
|
||||
"/刀": "Expression_72@2x.png",
|
||||
"[刀]": "Expression_72@2x.png",
|
||||
"[Dagger]": "Expression_72@2x.png",
|
||||
"[ดาบ]": "Expression_72@2x.png",
|
||||
|
||||
"/:footb": "Expression_73@2x.png",
|
||||
"/足球": "Expression_73@2x.png",
|
||||
"[足球]": "Expression_73@2x.png",
|
||||
"[Soccer]": "Expression_73@2x.png",
|
||||
"[ฟตบอล]": "Expression_73@2x.png",
|
||||
|
||||
"/:ladybug": "Expression_74@2x.png",
|
||||
"/瓢虫": "Expression_74@2x.png",
|
||||
"[瓢虫]": "Expression_74@2x.png",
|
||||
"[甲蟲]": "Expression_74@2x.png",
|
||||
"[Ladybug]": "Expression_74@2x.png",
|
||||
"[เตาทอง]": "Expression_74@2x.png",
|
||||
|
||||
"/:shit": "Expression_75@2x.png",
|
||||
"/便便": "Expression_75@2x.png",
|
||||
"[便便]": "Expression_75@2x.png",
|
||||
"[Poop]": "Expression_75@2x.png",
|
||||
"[อจจาระ]": "Expression_75@2x.png",
|
||||
|
||||
"/:moon": "Expression_76@2x.png",
|
||||
"/月亮": "Expression_76@2x.png",
|
||||
"[月亮]": "Expression_76@2x.png",
|
||||
"[Moon]": "Expression_76@2x.png",
|
||||
"[พระจนทร]": "Expression_76@2x.png",
|
||||
|
||||
"/:sun": "Expression_77@2x.png",
|
||||
"/太阳": "Expression_77@2x.png",
|
||||
"[太阳]": "Expression_77@2x.png",
|
||||
"[太陽]": "Expression_77@2x.png",
|
||||
"[Sun]": "Expression_77@2x.png",
|
||||
"[พระอาทตย]": "Expression_77@2x.png",
|
||||
|
||||
"/:gift": "Expression_78@2x.png",
|
||||
"/礼物": "Expression_78@2x.png",
|
||||
"[禮物]": "Expression_78@2x.png",
|
||||
"[礼物]": "Expression_78@2x.png",
|
||||
"[Gift]": "Expression_78@2x.png",
|
||||
|
||||
"/:hug": "Expression_79@2x.png",
|
||||
"/拥抱": "Expression_79@2x.png",
|
||||
"[拥抱]": "Expression_79@2x.png",
|
||||
"[擁抱]": "Expression_79@2x.png",
|
||||
"[Hug]": "Expression_79@2x.png",
|
||||
"[กอด]": "Expression_79@2x.png",
|
||||
|
||||
"/:strong": "Expression_80@2x.png",
|
||||
"/强": "Expression_80@2x.png",
|
||||
"[强]": "Expression_80@2x.png",
|
||||
"[強]": "Expression_80@2x.png",
|
||||
"[ThumbsUp]": "Expression_80@2x.png",
|
||||
"[ยอดเยยม]": "Expression_80@2x.png",
|
||||
|
||||
"/:weak": "Expression_81@2x.png",
|
||||
"/弱": "Expression_81@2x.png",
|
||||
"[弱]": "Expression_81@2x.png",
|
||||
"[ThumbsDown]": "Expression_81@2x.png",
|
||||
"[ยอดแย]": "Expression_81@2x.png",
|
||||
|
||||
"/:share": "Expression_82@2x.png",
|
||||
"/握手": "Expression_82@2x.png",
|
||||
"[握手]": "Expression_82@2x.png",
|
||||
"[Shake]": "Expression_82@2x.png",
|
||||
"[จบมอ]": "Expression_82@2x.png",
|
||||
|
||||
"/:v": "Expression_83@2x.png",
|
||||
"/胜利": "Expression_83@2x.png",
|
||||
"[胜利]": "Expression_83@2x.png",
|
||||
"[勝利]": "Expression_83@2x.png",
|
||||
"[Peace]": "Expression_83@2x.png",
|
||||
"[สตาย]": "Expression_83@2x.png",
|
||||
|
||||
"/:@)": "Expression_84@2x.png",
|
||||
"/抱拳": "Expression_84@2x.png",
|
||||
// "[抱拳]": "Expression_84@2x.png",
|
||||
"[Fight]": "Expression_84@2x.png",
|
||||
"[คารวะ]": "Expression_84@2x.png",
|
||||
|
||||
"/:jj": "Expression_85@2x.png",
|
||||
"/勾引": "Expression_85@2x.png",
|
||||
"[勾引]": "Expression_85@2x.png",
|
||||
"[Beckon]": "Expression_85@2x.png",
|
||||
"[เขามา]": "Expression_85@2x.png",
|
||||
|
||||
"/:@@": "Expression_86@2x.png",
|
||||
"/拳头": "Expression_86@2x.png",
|
||||
"[拳头]": "Expression_86@2x.png",
|
||||
"[拳頭]": "Expression_86@2x.png",
|
||||
"[Fist]": "Expression_86@2x.png",
|
||||
"[กหมด]": "Expression_86@2x.png",
|
||||
|
||||
"/:bad": "Expression_87@2x.png",
|
||||
"/差劲": "Expression_87@2x.png",
|
||||
"[差劲]": "Expression_87@2x.png",
|
||||
"[差勁]": "Expression_87@2x.png",
|
||||
"[Pinky]": "Expression_87@2x.png",
|
||||
"[ดกน]": "Expression_87@2x.png",
|
||||
|
||||
"/:lvu": "Expression_88@2x.png",
|
||||
"/爱你": "Expression_88@2x.png",
|
||||
"[爱你]": "Expression_88@2x.png",
|
||||
"[愛你]": "Expression_88@2x.png",
|
||||
"[RockOn]": "Expression_88@2x.png",
|
||||
"[ฉนรกคณ]": "Expression_88@2x.png",
|
||||
|
||||
"/:no": "Expression_89@2x.png",
|
||||
"/NO": "Expression_89@2x.png",
|
||||
"[NO]": "Expression_89@2x.png",
|
||||
"[Nuh-uh]": "Expression_89@2x.png",
|
||||
"[ไม]": "Expression_89@2x.png",
|
||||
|
||||
"/:ok": "Expression_90@2x.png",
|
||||
"/OK": "Expression_90@2x.png",
|
||||
"[OK]": "Expression_90@2x.png",
|
||||
"[ตกลง]": "Expression_90@2x.png",
|
||||
|
||||
"/:love": "Expression_91@2x.png",
|
||||
"/爱情": "Expression_91@2x.png",
|
||||
"[爱情]": "Expression_91@2x.png",
|
||||
"[愛情]": "Expression_91@2x.png",
|
||||
"[InLove]": "Expression_91@2x.png",
|
||||
"[รกกน]": "Expression_91@2x.png",
|
||||
|
||||
"/:<L>": "Expression_92@2x.png",
|
||||
"/飞吻": "Expression_92@2x.png",
|
||||
"[飞吻]": "Expression_92@2x.png",
|
||||
"[飛吻]": "Expression_92@2x.png",
|
||||
"[Blowkiss]": "Expression_92@2x.png",
|
||||
"[มรก]": "Expression_92@2x.png",
|
||||
|
||||
"/:jump": "Expression_93@2x.png",
|
||||
"/跳跳": "Expression_93@2x.png",
|
||||
"[跳跳]": "Expression_93@2x.png",
|
||||
"[Waddle]": "Expression_93@2x.png",
|
||||
"[กระโดด]": "Expression_93@2x.png",
|
||||
|
||||
"/:shake": "Expression_94@2x.png",
|
||||
"/发抖": "Expression_94@2x.png",
|
||||
"[发抖]": "Expression_94@2x.png",
|
||||
"[發抖]": "Expression_94@2x.png",
|
||||
"[Tremble]": "Expression_94@2x.png",
|
||||
"[เขยา]": "Expression_94@2x.png",
|
||||
|
||||
"/:<O>": "Expression_95@2x.png",
|
||||
"/怄火": "Expression_95@2x.png",
|
||||
"[怄火]": "Expression_95@2x.png",
|
||||
"[噴火]": "Expression_95@2x.png",
|
||||
"[Aaagh!]": "Expression_95@2x.png",
|
||||
"[อากส!]": "Expression_95@2x.png",
|
||||
|
||||
"/:circle": "Expression_96@2x.png",
|
||||
"/转圈": "Expression_96@2x.png",
|
||||
"[转圈]": "Expression_96@2x.png",
|
||||
"[轉圈]": "Expression_96@2x.png",
|
||||
"[Twirl]": "Expression_96@2x.png",
|
||||
"[หมนตว]": "Expression_96@2x.png",
|
||||
|
||||
"/:kotow": "Expression_97@2x.png",
|
||||
"/磕头": "Expression_97@2x.png",
|
||||
"[磕头]": "Expression_97@2x.png",
|
||||
"[磕頭]": "Expression_97@2x.png",
|
||||
"[Kotow]": "Expression_97@2x.png",
|
||||
"[คนบ]": "Expression_97@2x.png",
|
||||
|
||||
"/:turn": "Expression_98@2x.png",
|
||||
"/回头": "Expression_98@2x.png",
|
||||
"[回头]": "Expression_98@2x.png",
|
||||
"[回頭]": "Expression_98@2x.png",
|
||||
"[Dramatic]": "Expression_98@2x.png",
|
||||
"[เหลยวหลง]": "Expression_98@2x.png",
|
||||
|
||||
"/:skip": "Expression_99@2x.png",
|
||||
"/跳绳": "Expression_99@2x.png",
|
||||
"[跳绳]": "Expression_99@2x.png",
|
||||
"[跳繩]": "Expression_99@2x.png",
|
||||
"[JumpRope]": "Expression_99@2x.png",
|
||||
// "[กระโดด]": "Expression_99@2x.png",
|
||||
|
||||
"/:oY": "Expression_100@2x.png",
|
||||
"/挥手": "Expression_100@2x.png",
|
||||
"[投降]": "Expression_100@2x.png",
|
||||
"[Surrender]": "Expression_100@2x.png",
|
||||
"[ยอมแพ]": "Expression_100@2x.png",
|
||||
|
||||
"/:#-0": "Expression_101@2x.png",
|
||||
"/激动": "Expression_101@2x.png",
|
||||
"[激动]": "Expression_101@2x.png",
|
||||
"[激動]": "Expression_101@2x.png",
|
||||
"[Hooray]": "Expression_101@2x.png",
|
||||
"[ไชโย]": "Expression_101@2x.png",
|
||||
|
||||
"/:hiphot": "Expression_102@2x.png",
|
||||
"/街舞": "Expression_102@2x.png",
|
||||
"[乱舞]": "Expression_102@2x.png",
|
||||
"[亂舞]": "Expression_102@2x.png",
|
||||
"[Meditate]": "Expression_102@2x.png",
|
||||
"[เยเย]": "Expression_102@2x.png",
|
||||
|
||||
"/:kiss": "Expression_103@2x.png",
|
||||
"/献吻": "Expression_103@2x.png",
|
||||
"[献吻]": "Expression_103@2x.png",
|
||||
"[獻吻]": "Expression_103@2x.png",
|
||||
"[Smooch]": "Expression_103@2x.png",
|
||||
// "[จบ]": "Expression_103@2x.png",
|
||||
|
||||
"/:<&": "Expression_104@2x.png",
|
||||
"/左太极": "Expression_104@2x.png",
|
||||
"[左太极]": "Expression_104@2x.png",
|
||||
"[左太極]": "Expression_104@2x.png",
|
||||
"[TaiChi L]": "Expression_104@2x.png",
|
||||
"[หญงตอส]": "Expression_104@2x.png",
|
||||
|
||||
// "/:&\\"": "Expression_105@2x.png",
|
||||
"/右太极": "Expression_105@2x.png",
|
||||
"[右太极]": "Expression_105@2x.png",
|
||||
"[右太極]": "Expression_105@2x.png",
|
||||
"[TaiChi R]": "Expression_105@2x.png",
|
||||
"[ชายตอส]": "Expression_105@2x.png",
|
||||
|
||||
"[奸笑]": "new/2_02.png",
|
||||
"[Smirk]": "new/2_02.png",
|
||||
|
||||
"[嘿哈]": "new/2_04.png",
|
||||
"[吼嘿]": "new/2_04.png",
|
||||
"[Hey]": "new/2_04.png",
|
||||
|
||||
"[捂脸]": "new/2_05.png",
|
||||
"[掩面]": "new/2_05.png",
|
||||
"[Facepalm]": "new/2_05.png",
|
||||
|
||||
"[机智]": "new/2_06.png",
|
||||
"[機智]": "new/2_06.png",
|
||||
"[Smart]": "new/2_06.png",
|
||||
|
||||
"[茶]": "new/2_07.png",
|
||||
"[Tea]": "new/2_07.png",
|
||||
|
||||
"[红包]": "new/2_09.png",
|
||||
"[Packet]": "new/2_09.png",
|
||||
|
||||
"[蜡烛]": "new/2_10.png",
|
||||
"[蠟燭]": "new/2_10.png",
|
||||
"[Candle]": "new/2_10.png",
|
||||
|
||||
"[耶]": "new/2_11.png",
|
||||
"[歐耶]": "new/2_11.png",
|
||||
"[Yeah!]": "new/2_11.png",
|
||||
|
||||
"[皱眉]": "new/2_12.png",
|
||||
"[皺眉]": "new/2_12.png",
|
||||
"[Concerned]": "new/2_12.png",
|
||||
|
||||
"[抱拳]": "new/smiley_83b.png",
|
||||
"[Salute]": "new/smiley_83b.png",
|
||||
|
||||
"[鸡]": "new/2_14.png",
|
||||
"[小雞]": "new/2_14.png",
|
||||
"[Chick]": "new/2_14.png",
|
||||
|
||||
"[福]": "new/2_15.png",
|
||||
"[Blessing]": "new/2_15.png",
|
||||
|
||||
"[再见]": "new/smiley_39b.png",
|
||||
"[再見]": "new/smiley_39b.png",
|
||||
"[Bye]": "new/smiley_39b.png",
|
||||
|
||||
"[發]": "new/2_16.png",
|
||||
"[Rich]": "new/2_16.png",
|
||||
|
||||
"[小狗]": "new/2_17.png",
|
||||
"[Pup]": "new/2_17.png",
|
||||
|
||||
"[吃瓜]": "new/Watermelon.png",
|
||||
"[吃西瓜]": "new/Watermelon.png",
|
||||
"[Onlooker]": "new/Watermelon.png",
|
||||
|
||||
"[加油]": "new/Addoil.png",
|
||||
"[GoForIt]": "new/Addoil.png",
|
||||
|
||||
"[汗]": "new/Sweat.png",
|
||||
"[Sweats]": "new/Sweat.png",
|
||||
|
||||
"[天啊]": "new/Shocked.png",
|
||||
"[OMG]": "new/Shocked.png",
|
||||
|
||||
"[一言難盡]": "new/Cold.png",
|
||||
"[Emm]": "new/Cold.png",
|
||||
|
||||
"[社会社会]": "new/Social.png",
|
||||
"[失敬失敬]": "new/Social.png",
|
||||
"[Respect]": "new/Social.png",
|
||||
|
||||
"[旺柴]": "new/Yellowdog.png",
|
||||
"[Doge]": "new/Yellowdog.png",
|
||||
|
||||
"[好的]": "new/NoProb.png",
|
||||
"[NoProb]": "new/NoProb.png",
|
||||
|
||||
"[打脸]": "new/Slap.png",
|
||||
"[打臉]": "new/Slap.png",
|
||||
"[MyBad]": "new/Slap.png",
|
||||
|
||||
"[哇]": "new/Wow.png",
|
||||
"[Wow]": "new/Wow.png",
|
||||
|
||||
"[加油加油]": "new/KeepFighting.png",
|
||||
"[加油!]": "new/KeepFighting.png",
|
||||
"[KeepFighting]": "new/KeepFighting.png",
|
||||
|
||||
"[翻白眼]": "new/Boring.png",
|
||||
"[Boring]": "new/Boring.png",
|
||||
|
||||
"[666]": "new/666.png",
|
||||
"[Awesome]": "new/666.png",
|
||||
|
||||
"[让我看看]": "new/LetMeSee.png",
|
||||
"[讓我看看]": "new/LetMeSee.png",
|
||||
"[LetMeSee]": "new/LetMeSee.png",
|
||||
|
||||
"[叹气]": "new/Sigh.png",
|
||||
"[嘆息]": "new/Sigh.png",
|
||||
"[Sigh]": "new/Sigh.png",
|
||||
|
||||
"[苦涩]": "new/Hurt.png",
|
||||
"[難受]": "new/Hurt.png",
|
||||
"[Hurt]": "new/Hurt.png",
|
||||
|
||||
"[裂开]": "new/Broken.png",
|
||||
"[崩潰]": "new/Broken.png",
|
||||
"[Broken]": "new/Broken.png",
|
||||
|
||||
"[脸红]": "new/Flushed.png",
|
||||
"[臉紅]": "new/Flushed.png",
|
||||
"[Flushed]": "new/Flushed.png",
|
||||
|
||||
"[笑脸]": "new/Happy.png",
|
||||
"[笑臉]": "new/Happy.png",
|
||||
"[Happy]": "new/Happy.png",
|
||||
|
||||
"[破涕为笑]": "new/Lol.png",
|
||||
"[破涕為笑]": "new/Lol.png",
|
||||
"[Lol]": "new/Lol.png",
|
||||
|
||||
"[烟花]": "new/Fireworks.png",
|
||||
"[煙花]": "new/Fireworks.png",
|
||||
"[Fireworks]": "new/Fireworks.png",
|
||||
|
||||
"[爆竹]": "new/Firecracker.png",
|
||||
"[Firecracker]": "new/Firecracker.png",
|
||||
|
||||
"[庆祝]": "new/Party.png",
|
||||
"[慶祝]": "new/Party.png",
|
||||
"[Party]": "new/Party.png",
|
||||
|
||||
"[恐惧]": "new/Terror.png",
|
||||
"[恐懼]": "new/Terror.png",
|
||||
"[Terror]": "new/Terror.png",
|
||||
|
||||
"[无语]": "new/Duh.png",
|
||||
"[無語]": "new/Duh.png",
|
||||
"[Duh]": "new/Duh.png",
|
||||
|
||||
"[LetDown]": "new/LetDown.png",
|
||||
"[失望]": "new/LetDown.png",
|
||||
"[Let Down]": "new/LetDown.png",
|
||||
|
||||
"[生病]": "new/Sick.png",
|
||||
"[Sick]": "new/Sick.png",
|
||||
|
||||
"[合十]": "new/Worship.png",
|
||||
"[Worship]": "new/Worship.png",
|
||||
};
|
||||
|
||||
export default WechatEmojiTable;
|
||||
|
||||
// 构建正则表达式匹配所有 emoji key
|
||||
const emojiKeys = Object.keys(WechatEmojiTable);
|
||||
// 按长度降序排序,确保长的 key 优先匹配
|
||||
const sortedKeys = emojiKeys.sort((a, b) => b.length - a.length);
|
||||
const escapedKeys = sortedKeys.map(k => k.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'));
|
||||
const emojiRegex = new RegExp(`(${escapedKeys.join('|')})`, 'g');
|
||||
|
||||
export interface TextSegment {
|
||||
type: 'text' | 'emoji';
|
||||
content: string;
|
||||
emojiSrc?: string;
|
||||
}
|
||||
|
||||
// 解析文本,将 emoji 代码转换为分段数组
|
||||
export function parseTextWithEmoji(text: string): TextSegment[] {
|
||||
if (!text) return [];
|
||||
|
||||
const segments: TextSegment[] = [];
|
||||
let lastIndex = 0;
|
||||
let match: RegExpExecArray | null;
|
||||
|
||||
emojiRegex.lastIndex = 0;
|
||||
while ((match = emojiRegex.exec(text)) !== null) {
|
||||
// 添加 emoji 前的文本
|
||||
if (match.index > lastIndex) {
|
||||
segments.push({ type: 'text', content: text.slice(lastIndex, match.index) });
|
||||
}
|
||||
// 添加 emoji
|
||||
const emojiKey = match[0];
|
||||
segments.push({
|
||||
type: 'emoji',
|
||||
content: emojiKey,
|
||||
emojiSrc: `/wxemoji/${WechatEmojiTable[emojiKey]}`
|
||||
});
|
||||
lastIndex = match.index + emojiKey.length;
|
||||
}
|
||||
|
||||
// 添加剩余文本
|
||||
if (lastIndex < text.length) {
|
||||
segments.push({ type: 'text', content: text.slice(lastIndex) });
|
||||
}
|
||||
|
||||
return segments;
|
||||
}
|
||||
Reference in New Issue
Block a user