优化页面
This commit is contained in:
@@ -1,77 +0,0 @@
|
||||
"use strict";
|
||||
const common_vendor = require("../../../../common/vendor.js");
|
||||
const TUIKit_components_TUIChat_emojiConfig_customEmoji = require("./custom-emoji.js");
|
||||
const TUIKit_components_TUIChat_emojiConfig_defaultEmoji = require("./default-emoji.js");
|
||||
const TUIKit_components_TUIChat_emojiConfig_locales_zh_cn = require("./locales/zh_cn.js");
|
||||
const TUIKit_constant = require("../../../constant.js");
|
||||
const TUIKit_utils_env = require("../../../utils/env.js");
|
||||
const BASIC_EMOJI_URL = TUIKit_components_TUIChat_emojiConfig_defaultEmoji.DEFAULT_BASIC_EMOJI_URL;
|
||||
const BASIC_EMOJI_URL_MAPPING = TUIKit_components_TUIChat_emojiConfig_defaultEmoji.DEFAULT_BASIC_EMOJI_URL_MAPPING;
|
||||
const EMOJI_GROUP_LIST = [
|
||||
{
|
||||
emojiGroupID: 0,
|
||||
type: TUIKit_constant.EMOJI_TYPE.BASIC,
|
||||
url: BASIC_EMOJI_URL,
|
||||
list: Object.keys(BASIC_EMOJI_URL_MAPPING)
|
||||
},
|
||||
...TUIKit_components_TUIChat_emojiConfig_defaultEmoji.BIG_EMOJI_GROUP_LIST,
|
||||
...TUIKit_components_TUIChat_emojiConfig_customEmoji.CUSTOM_BIG_EMOJI_GROUP_LIST
|
||||
];
|
||||
const convertKeyToEmojiName = (key) => {
|
||||
return TUIKit_utils_env.isWeChat ? TUIKit_components_TUIChat_emojiConfig_locales_zh_cn.Emoji[key] : common_vendor.Wt.t(`Emoji.${key}`);
|
||||
};
|
||||
const transformTextWithKeysToEmojiNames = (text) => {
|
||||
if (!text) {
|
||||
return "";
|
||||
}
|
||||
const reg = /(\[.+?\])/g;
|
||||
let txt = text;
|
||||
if (reg.test(text)) {
|
||||
txt = text.replace(reg, (match) => BASIC_EMOJI_URL_MAPPING[match] ? convertKeyToEmojiName(match) : match);
|
||||
}
|
||||
return txt;
|
||||
};
|
||||
const transformTextWithEmojiNamesToKeys = (text) => {
|
||||
if (!text) {
|
||||
return "";
|
||||
}
|
||||
const reg = /(\[.+?\])/g;
|
||||
let txt = text;
|
||||
if (reg.test(text)) {
|
||||
txt = text.replace(reg, (match) => TUIKit_components_TUIChat_emojiConfig_defaultEmoji.BASIC_EMOJI_NAME_TO_KEY_MAPPING[match] || match);
|
||||
}
|
||||
return txt;
|
||||
};
|
||||
const parseTextToRenderArray = (text) => {
|
||||
const emojiRegex = /\[([^\]]+)\]/g;
|
||||
const result = [];
|
||||
let match;
|
||||
let lastIndex = 0;
|
||||
while ((match = emojiRegex.exec(text)) !== null) {
|
||||
const startIndex = match.index;
|
||||
const endIndex = emojiRegex.lastIndex;
|
||||
const emojiKey = match[0];
|
||||
if (startIndex > lastIndex) {
|
||||
result.push({ type: "text", content: text.substring(lastIndex, startIndex) });
|
||||
}
|
||||
const emojiUrl = BASIC_EMOJI_URL + BASIC_EMOJI_URL_MAPPING[emojiKey];
|
||||
if (emojiUrl) {
|
||||
result.push({ type: "image", content: emojiUrl, emojiKey });
|
||||
} else {
|
||||
result.push({ type: "text", content: emojiKey });
|
||||
}
|
||||
lastIndex = endIndex;
|
||||
emojiRegex.lastIndex = lastIndex;
|
||||
}
|
||||
if (lastIndex < text.length) {
|
||||
result.push({ type: "text", content: text.substring(lastIndex) });
|
||||
}
|
||||
return result;
|
||||
};
|
||||
exports.BASIC_EMOJI_URL_MAPPING = BASIC_EMOJI_URL_MAPPING;
|
||||
exports.EMOJI_GROUP_LIST = EMOJI_GROUP_LIST;
|
||||
exports.convertKeyToEmojiName = convertKeyToEmojiName;
|
||||
exports.parseTextToRenderArray = parseTextToRenderArray;
|
||||
exports.transformTextWithEmojiNamesToKeys = transformTextWithEmojiNamesToKeys;
|
||||
exports.transformTextWithKeysToEmojiNames = transformTextWithKeysToEmojiNames;
|
||||
//# sourceMappingURL=../../../../../.sourcemap/mp-weixin/TUIKit/components/TUIChat/emoji-config/index.js.map
|
||||
Reference in New Issue
Block a user