@chayns-components/emoji-input 5.4.0 → 5.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/constants/regex.js +2 -1
- package/lib/cjs/constants/regex.js.map +1 -1
- package/lib/cjs/utils/text.js +3 -3
- package/lib/cjs/utils/text.js.map +1 -1
- package/lib/esm/constants/regex.js +1 -0
- package/lib/esm/constants/regex.js.map +1 -1
- package/lib/esm/utils/text.js +4 -4
- package/lib/esm/utils/text.js.map +1 -1
- package/lib/types/constants/regex.d.ts +1 -0
- package/package.json +2 -2
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.HTML_NO_EMOJI_REGEX = exports.HTML_NER_REPLACE_REGEX = exports.HTML_NER_IGNORE_REGEX = exports.HTML_LC_MENTION_REGEX = exports.HTML_BOLD_REGEX = exports.HTML_A_TAG_REGEX = exports.BB_NER_REPLACE_REGEX = exports.BB_NER_IGNORE_REGEX = exports.BB_LC_MENTION_REGEX = void 0;
|
|
6
|
+
exports.HTML_NO_EMOJI_REGEX = exports.HTML_NER_REPLACE_REGEX = exports.HTML_NER_IGNORE_REGEX = exports.HTML_LC_MENTION_REGEX = exports.HTML_BOLD_REGEX = exports.HTML_A_TAG_REGEX = exports.BB_NER_REPLACE_REGEX = exports.BB_NER_IGNORE_REGEX = exports.BB_LC_MENTION_REGEX = exports.BB_IGNORE_EMOJI_REGEX = void 0;
|
|
7
7
|
const BB_LC_MENTION_REGEX = exports.BB_LC_MENTION_REGEX = /\[lc_mention.+?id="([^"]+?)"](.+?)\[\/lc_mention]/g;
|
|
8
8
|
const BB_NER_IGNORE_REGEX = exports.BB_NER_IGNORE_REGEX = /\[nerIgnore](.+?)\[\/nerIgnore]/g;
|
|
9
9
|
const BB_NER_REPLACE_REGEX = exports.BB_NER_REPLACE_REGEX = /\[nerReplace\s*(?:prefix="(.*?)")?\s*type="(.*?)"\s*value="(.*?)"](.*?)\[\/nerReplace]/gi;
|
|
10
|
+
const BB_IGNORE_EMOJI_REGEX = exports.BB_IGNORE_EMOJI_REGEX = /\[ignoreEmoji\]([\s\S]*?)\[\/ignoreEmoji\]/g;
|
|
10
11
|
const HTML_LC_MENTION_REGEX = exports.HTML_LC_MENTION_REGEX = /<lc_mention.+?id="([^"]+?)">(?:<span.*?<\/span>)*(.+?)<\/lc_mention>/g;
|
|
11
12
|
const HTML_NER_IGNORE_REGEX = exports.HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\/nerIgnore>/g;
|
|
12
13
|
const HTML_NER_REPLACE_REGEX = exports.HTML_NER_REPLACE_REGEX = /<nerReplace\s*(?:prefix="(.*?)")?\s*type="(.*?)"\s*value="(.*?)">(.*?)<\/nerReplace>/gi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","exports","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_BOLD_REGEX","HTML_A_TAG_REGEX","HTML_NO_EMOJI_REGEX"],"sources":["../../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\nexport const BB_NER_IGNORE_REGEX = /\\[nerIgnore](.+?)\\[\\/nerIgnore]/g;\nexport const BB_NER_REPLACE_REGEX =\n /\\[nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\"](.*?)\\[\\/nerReplace]/gi;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\nexport const HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\\/nerIgnore>/g;\nexport const HTML_NER_REPLACE_REGEX =\n /<nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\">(.*?)<\\/nerReplace>/gi;\nexport const HTML_BOLD_REGEX = /<b>(.+?)<\\/b>/g;\nexport const HTML_A_TAG_REGEX = /(?:<|<)a\\b[^>]*?(?:>|>)(.*?)(?:<|<)\\/a(?:>|>)/g;\n\nexport const HTML_NO_EMOJI_REGEX = /<span class=\"no-emoji-convert\">([\\s\\S]*?)<\\/span>/g;\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,oDAAoD;AAChF,MAAME,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,GAAG,kCAAkC;AAC9D,MAAMC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,GAC7B,0FAA0F;
|
|
1
|
+
{"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","exports","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","BB_IGNORE_EMOJI_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_BOLD_REGEX","HTML_A_TAG_REGEX","HTML_NO_EMOJI_REGEX"],"sources":["../../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\nexport const BB_NER_IGNORE_REGEX = /\\[nerIgnore](.+?)\\[\\/nerIgnore]/g;\nexport const BB_NER_REPLACE_REGEX =\n /\\[nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\"](.*?)\\[\\/nerReplace]/gi;\nexport const BB_IGNORE_EMOJI_REGEX = /\\[ignoreEmoji\\]([\\s\\S]*?)\\[\\/ignoreEmoji\\]/g;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\nexport const HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\\/nerIgnore>/g;\nexport const HTML_NER_REPLACE_REGEX =\n /<nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\">(.*?)<\\/nerReplace>/gi;\nexport const HTML_BOLD_REGEX = /<b>(.+?)<\\/b>/g;\nexport const HTML_A_TAG_REGEX = /(?:<|<)a\\b[^>]*?(?:>|>)(.*?)(?:<|<)\\/a(?:>|>)/g;\n\nexport const HTML_NO_EMOJI_REGEX = /<span class=\"no-emoji-convert\">([\\s\\S]*?)<\\/span>/g;\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAG,oDAAoD;AAChF,MAAME,mBAAmB,GAAAD,OAAA,CAAAC,mBAAA,GAAG,kCAAkC;AAC9D,MAAMC,oBAAoB,GAAAF,OAAA,CAAAE,oBAAA,GAC7B,0FAA0F;AACvF,MAAMC,qBAAqB,GAAAH,OAAA,CAAAG,qBAAA,GAAG,6CAA6C;AAE3E,MAAMC,qBAAqB,GAAAJ,OAAA,CAAAI,qBAAA,GAC9B,uEAAuE;AACpE,MAAMC,qBAAqB,GAAAL,OAAA,CAAAK,qBAAA,GAAG,gCAAgC;AAC9D,MAAMC,sBAAsB,GAAAN,OAAA,CAAAM,sBAAA,GAC/B,wFAAwF;AACrF,MAAMC,eAAe,GAAAP,OAAA,CAAAO,eAAA,GAAG,gBAAgB;AACxC,MAAMC,gBAAgB,GAAAR,OAAA,CAAAQ,gBAAA,GAAG,4DAA4D;AAErF,MAAMC,mBAAmB,GAAAT,OAAA,CAAAS,mBAAA,GAAG,oDAAoD","ignoreList":[]}
|
package/lib/cjs/utils/text.js
CHANGED
|
@@ -16,10 +16,10 @@ const convertTextToHTML = text => {
|
|
|
16
16
|
let result = element.innerHTML;
|
|
17
17
|
document.body.removeChild(element);
|
|
18
18
|
result = (0, _emoji.unescapeHTML)(result);
|
|
19
|
-
result = result.replace(_regex.HTML_A_TAG_REGEX, '$1').replace(_regex.BB_LC_MENTION_REGEX, '<lc_mention contenteditable="false" id="$1"><span>@</span>$2</lc_mention
|
|
19
|
+
result = result.replace(_regex.HTML_A_TAG_REGEX, '$1').replace(_regex.BB_LC_MENTION_REGEX, '<lc_mention contenteditable="false" id="$1"><span>@</span>$2</lc_mention>\u200B').replace(_regex.BB_NER_IGNORE_REGEX, '<nerIgnore contenteditable="false">$1</nerIgnore>').replace(_regex.BB_NER_REPLACE_REGEX, (_, prefix, type, value, entity) => {
|
|
20
20
|
const prefixAttr = prefix ? `prefix="${prefix}" ` : '';
|
|
21
21
|
return `<nerReplace contenteditable="false" ${prefixAttr}type="${type}" value="${value}">${entity}</nerReplace>`;
|
|
22
|
-
});
|
|
22
|
+
}).replace(_regex.BB_IGNORE_EMOJI_REGEX, '<span class="no-emoji-convert">$1</span>');
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
exports.convertTextToHTML = convertTextToHTML;
|
|
@@ -35,7 +35,7 @@ const convertHTMLToText = (text, {
|
|
|
35
35
|
result = result.replace(_regex.HTML_A_TAG_REGEX, '$1').replace(_regex.HTML_BOLD_REGEX, '[b]$1[/b]').replace(_regex.HTML_LC_MENTION_REGEX, '[lc_mention id="$1"]$2[/lc_mention]').replace(_regex.HTML_NER_IGNORE_REGEX, '[nerIgnore]$1[/nerIgnore]').replace(_regex.HTML_NER_REPLACE_REGEX, (_, prefix, type, value, entity) => {
|
|
36
36
|
const prefixAttr = prefix ? `prefix="${prefix}" ` : '';
|
|
37
37
|
return `[nerReplace ${prefixAttr}type="${type}" value="${value}"]${entity}[/nerReplace]`;
|
|
38
|
-
});
|
|
38
|
+
}).replace(_regex.HTML_NO_EMOJI_REGEX, '[ignoreEmoji]$1[/ignoreEmoji]');
|
|
39
39
|
if (preserveSpaces) {
|
|
40
40
|
return result.replace(/ /g, '\u00A0') // non-breaking space
|
|
41
41
|
.replace(/\u200B/g, ''); // zero-width space (sichtbar gemacht)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","names":["_regex","require","_emoji","convertTextToHTML","text","element","document","createElement","style","position","opacity","contentEditable","innerText","body","appendChild","result","innerHTML","removeChild","unescapeHTML","replace","HTML_A_TAG_REGEX","BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","_","prefix","type","value","entity","prefixAttr","exports","convertHTMLToText","preserveSpaces","HTML_NO_EMOJI_REGEX","HTML_BOLD_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","escapeHTML","getElementTextLength","textLength","outerHTML","length","e"],"sources":["../../../src/utils/text.ts"],"sourcesContent":["import {\n BB_LC_MENTION_REGEX,\n BB_NER_IGNORE_REGEX,\n BB_NER_REPLACE_REGEX,\n HTML_A_TAG_REGEX,\n HTML_BOLD_REGEX,\n HTML_LC_MENTION_REGEX,\n HTML_NER_IGNORE_REGEX,\n HTML_NER_REPLACE_REGEX,\n HTML_NO_EMOJI_REGEX,\n} from '../constants/regex';\nimport { escapeHTML, unescapeHTML } from './emoji';\n\nexport const convertTextToHTML = (text: string) => {\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerText = text;\n\n document.body.appendChild(element);\n\n let result = element.innerHTML;\n\n document.body.removeChild(element);\n\n result = unescapeHTML(result);\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention
|
|
1
|
+
{"version":3,"file":"text.js","names":["_regex","require","_emoji","convertTextToHTML","text","element","document","createElement","style","position","opacity","contentEditable","innerText","body","appendChild","result","innerHTML","removeChild","unescapeHTML","replace","HTML_A_TAG_REGEX","BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","_","prefix","type","value","entity","prefixAttr","BB_IGNORE_EMOJI_REGEX","exports","convertHTMLToText","preserveSpaces","HTML_NO_EMOJI_REGEX","HTML_BOLD_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","escapeHTML","getElementTextLength","textLength","outerHTML","length","e"],"sources":["../../../src/utils/text.ts"],"sourcesContent":["import {\n BB_LC_MENTION_REGEX,\n BB_NER_IGNORE_REGEX,\n BB_NER_REPLACE_REGEX,\n BB_IGNORE_EMOJI_REGEX,\n HTML_A_TAG_REGEX,\n HTML_BOLD_REGEX,\n HTML_LC_MENTION_REGEX,\n HTML_NER_IGNORE_REGEX,\n HTML_NER_REPLACE_REGEX,\n HTML_NO_EMOJI_REGEX,\n} from '../constants/regex';\nimport { escapeHTML, unescapeHTML } from './emoji';\n\nexport const convertTextToHTML = (text: string) => {\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerText = text;\n\n document.body.appendChild(element);\n\n let result = element.innerHTML;\n\n document.body.removeChild(element);\n\n result = unescapeHTML(result);\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention>\\u200B',\n )\n .replace(BB_NER_IGNORE_REGEX, '<nerIgnore contenteditable=\"false\">$1</nerIgnore>')\n .replace(\n BB_NER_REPLACE_REGEX,\n (_, prefix: string | undefined, type: string, value: string, entity: string) => {\n const prefixAttr = prefix ? `prefix=\"${prefix}\" ` : '';\n\n return `<nerReplace contenteditable=\"false\" ${prefixAttr}type=\"${type}\" value=\"${value}\">${entity}</nerReplace>`;\n },\n )\n .replace(BB_IGNORE_EMOJI_REGEX, '<span class=\"no-emoji-convert\">$1</span>');\n\n return result;\n};\n\nexport const convertHTMLToText = (text: string, { preserveSpaces = false } = {}) => {\n let result = text;\n\n // Unwrap \"no-emoji-convert\" protection spans so the plain-text\n // representation does not leak the marker HTML to consumers.\n // The protection itself is only relevant inside the live editor DOM.\n result = result.replace(HTML_NO_EMOJI_REGEX, '$1');\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(HTML_BOLD_REGEX, '[b]$1[/b]')\n .replace(HTML_LC_MENTION_REGEX, '[lc_mention id=\"$1\"]$2[/lc_mention]')\n .replace(HTML_NER_IGNORE_REGEX, '[nerIgnore]$1[/nerIgnore]')\n .replace(\n HTML_NER_REPLACE_REGEX,\n (_, prefix: string | undefined, type: string, value: string, entity: string) => {\n const prefixAttr = prefix ? `prefix=\"${prefix}\" ` : '';\n\n return `[nerReplace ${prefixAttr}type=\"${type}\" value=\"${value}\"]${entity}[/nerReplace]`;\n },\n )\n .replace(HTML_NO_EMOJI_REGEX, '[ignoreEmoji]$1[/ignoreEmoji]');\n\n if (preserveSpaces) {\n return result\n .replace(/ /g, '\\u00A0') // non-breaking space\n .replace(/\\u200B/g, ''); // zero-width space (sichtbar gemacht)\n }\n\n // eslint-disable-next-line no-irregular-whitespace\n result = result.replace(//g, '');\n\n result = escapeHTML(result);\n\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerHTML = result;\n\n document.body.appendChild(element);\n\n result = element.innerText;\n\n document.body.removeChild(element);\n\n return result;\n};\n\nexport const getElementTextLength = (element: Element) => {\n let textLength = 0;\n\n try {\n textLength = convertHTMLToText(element.outerHTML).length;\n } catch (e) {\n // Do nothing\n }\n\n return textLength;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export const BB_LC_MENTION_REGEX = /\[lc_mention.+?id="([^"]+?)"](.+?)\[\/lc_mention]/g;
|
|
2
2
|
export const BB_NER_IGNORE_REGEX = /\[nerIgnore](.+?)\[\/nerIgnore]/g;
|
|
3
3
|
export const BB_NER_REPLACE_REGEX = /\[nerReplace\s*(?:prefix="(.*?)")?\s*type="(.*?)"\s*value="(.*?)"](.*?)\[\/nerReplace]/gi;
|
|
4
|
+
export const BB_IGNORE_EMOJI_REGEX = /\[ignoreEmoji\]([\s\S]*?)\[\/ignoreEmoji\]/g;
|
|
4
5
|
export const HTML_LC_MENTION_REGEX = /<lc_mention.+?id="([^"]+?)">(?:<span.*?<\/span>)*(.+?)<\/lc_mention>/g;
|
|
5
6
|
export const HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\/nerIgnore>/g;
|
|
6
7
|
export const HTML_NER_REPLACE_REGEX = /<nerReplace\s*(?:prefix="(.*?)")?\s*type="(.*?)"\s*value="(.*?)">(.*?)<\/nerReplace>/gi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_BOLD_REGEX","HTML_A_TAG_REGEX","HTML_NO_EMOJI_REGEX"],"sources":["../../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\nexport const BB_NER_IGNORE_REGEX = /\\[nerIgnore](.+?)\\[\\/nerIgnore]/g;\nexport const BB_NER_REPLACE_REGEX =\n /\\[nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\"](.*?)\\[\\/nerReplace]/gi;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\nexport const HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\\/nerIgnore>/g;\nexport const HTML_NER_REPLACE_REGEX =\n /<nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\">(.*?)<\\/nerReplace>/gi;\nexport const HTML_BOLD_REGEX = /<b>(.+?)<\\/b>/g;\nexport const HTML_A_TAG_REGEX = /(?:<|<)a\\b[^>]*?(?:>|>)(.*?)(?:<|<)\\/a(?:>|>)/g;\n\nexport const HTML_NO_EMOJI_REGEX = /<span class=\"no-emoji-convert\">([\\s\\S]*?)<\\/span>/g;\n"],"mappings":"AAAA,OAAO,MAAMA,mBAAmB,GAAG,oDAAoD;AACvF,OAAO,MAAMC,mBAAmB,GAAG,kCAAkC;AACrE,OAAO,MAAMC,oBAAoB,GAC7B,0FAA0F;
|
|
1
|
+
{"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","BB_IGNORE_EMOJI_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_BOLD_REGEX","HTML_A_TAG_REGEX","HTML_NO_EMOJI_REGEX"],"sources":["../../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\nexport const BB_NER_IGNORE_REGEX = /\\[nerIgnore](.+?)\\[\\/nerIgnore]/g;\nexport const BB_NER_REPLACE_REGEX =\n /\\[nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\"](.*?)\\[\\/nerReplace]/gi;\nexport const BB_IGNORE_EMOJI_REGEX = /\\[ignoreEmoji\\]([\\s\\S]*?)\\[\\/ignoreEmoji\\]/g;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\nexport const HTML_NER_IGNORE_REGEX = /<nerIgnore>(.+?)<\\/nerIgnore>/g;\nexport const HTML_NER_REPLACE_REGEX =\n /<nerReplace\\s*(?:prefix=\"(.*?)\")?\\s*type=\"(.*?)\"\\s*value=\"(.*?)\">(.*?)<\\/nerReplace>/gi;\nexport const HTML_BOLD_REGEX = /<b>(.+?)<\\/b>/g;\nexport const HTML_A_TAG_REGEX = /(?:<|<)a\\b[^>]*?(?:>|>)(.*?)(?:<|<)\\/a(?:>|>)/g;\n\nexport const HTML_NO_EMOJI_REGEX = /<span class=\"no-emoji-convert\">([\\s\\S]*?)<\\/span>/g;\n"],"mappings":"AAAA,OAAO,MAAMA,mBAAmB,GAAG,oDAAoD;AACvF,OAAO,MAAMC,mBAAmB,GAAG,kCAAkC;AACrE,OAAO,MAAMC,oBAAoB,GAC7B,0FAA0F;AAC9F,OAAO,MAAMC,qBAAqB,GAAG,6CAA6C;AAElF,OAAO,MAAMC,qBAAqB,GAC9B,uEAAuE;AAC3E,OAAO,MAAMC,qBAAqB,GAAG,gCAAgC;AACrE,OAAO,MAAMC,sBAAsB,GAC/B,wFAAwF;AAC5F,OAAO,MAAMC,eAAe,GAAG,gBAAgB;AAC/C,OAAO,MAAMC,gBAAgB,GAAG,4DAA4D;AAE5F,OAAO,MAAMC,mBAAmB,GAAG,oDAAoD","ignoreList":[]}
|
package/lib/esm/utils/text.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BB_LC_MENTION_REGEX, BB_NER_IGNORE_REGEX, BB_NER_REPLACE_REGEX, HTML_A_TAG_REGEX, HTML_BOLD_REGEX, HTML_LC_MENTION_REGEX, HTML_NER_IGNORE_REGEX, HTML_NER_REPLACE_REGEX, HTML_NO_EMOJI_REGEX } from '../constants/regex';
|
|
1
|
+
import { BB_LC_MENTION_REGEX, BB_NER_IGNORE_REGEX, BB_NER_REPLACE_REGEX, BB_IGNORE_EMOJI_REGEX, HTML_A_TAG_REGEX, HTML_BOLD_REGEX, HTML_LC_MENTION_REGEX, HTML_NER_IGNORE_REGEX, HTML_NER_REPLACE_REGEX, HTML_NO_EMOJI_REGEX } from '../constants/regex';
|
|
2
2
|
import { escapeHTML, unescapeHTML } from './emoji';
|
|
3
3
|
export const convertTextToHTML = text => {
|
|
4
4
|
const element = document.createElement('div');
|
|
@@ -10,10 +10,10 @@ export const convertTextToHTML = text => {
|
|
|
10
10
|
let result = element.innerHTML;
|
|
11
11
|
document.body.removeChild(element);
|
|
12
12
|
result = unescapeHTML(result);
|
|
13
|
-
result = result.replace(HTML_A_TAG_REGEX, '$1').replace(BB_LC_MENTION_REGEX, '<lc_mention contenteditable="false" id="$1"><span>@</span>$2</lc_mention
|
|
13
|
+
result = result.replace(HTML_A_TAG_REGEX, '$1').replace(BB_LC_MENTION_REGEX, '<lc_mention contenteditable="false" id="$1"><span>@</span>$2</lc_mention>\u200B').replace(BB_NER_IGNORE_REGEX, '<nerIgnore contenteditable="false">$1</nerIgnore>').replace(BB_NER_REPLACE_REGEX, (_, prefix, type, value, entity) => {
|
|
14
14
|
const prefixAttr = prefix ? `prefix="${prefix}" ` : '';
|
|
15
15
|
return `<nerReplace contenteditable="false" ${prefixAttr}type="${type}" value="${value}">${entity}</nerReplace>`;
|
|
16
|
-
});
|
|
16
|
+
}).replace(BB_IGNORE_EMOJI_REGEX, '<span class="no-emoji-convert">$1</span>');
|
|
17
17
|
return result;
|
|
18
18
|
};
|
|
19
19
|
export const convertHTMLToText = (text, {
|
|
@@ -28,7 +28,7 @@ export const convertHTMLToText = (text, {
|
|
|
28
28
|
result = result.replace(HTML_A_TAG_REGEX, '$1').replace(HTML_BOLD_REGEX, '[b]$1[/b]').replace(HTML_LC_MENTION_REGEX, '[lc_mention id="$1"]$2[/lc_mention]').replace(HTML_NER_IGNORE_REGEX, '[nerIgnore]$1[/nerIgnore]').replace(HTML_NER_REPLACE_REGEX, (_, prefix, type, value, entity) => {
|
|
29
29
|
const prefixAttr = prefix ? `prefix="${prefix}" ` : '';
|
|
30
30
|
return `[nerReplace ${prefixAttr}type="${type}" value="${value}"]${entity}[/nerReplace]`;
|
|
31
|
-
});
|
|
31
|
+
}).replace(HTML_NO_EMOJI_REGEX, '[ignoreEmoji]$1[/ignoreEmoji]');
|
|
32
32
|
if (preserveSpaces) {
|
|
33
33
|
return result.replace(/ /g, '\u00A0') // non-breaking space
|
|
34
34
|
.replace(/\u200B/g, ''); // zero-width space (sichtbar gemacht)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text.js","names":["BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","HTML_A_TAG_REGEX","HTML_BOLD_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_NO_EMOJI_REGEX","escapeHTML","unescapeHTML","convertTextToHTML","text","element","document","createElement","style","position","opacity","contentEditable","innerText","body","appendChild","result","innerHTML","removeChild","replace","_","prefix","type","value","entity","prefixAttr","convertHTMLToText","preserveSpaces","getElementTextLength","textLength","outerHTML","length","e"],"sources":["../../../src/utils/text.ts"],"sourcesContent":["import {\n BB_LC_MENTION_REGEX,\n BB_NER_IGNORE_REGEX,\n BB_NER_REPLACE_REGEX,\n HTML_A_TAG_REGEX,\n HTML_BOLD_REGEX,\n HTML_LC_MENTION_REGEX,\n HTML_NER_IGNORE_REGEX,\n HTML_NER_REPLACE_REGEX,\n HTML_NO_EMOJI_REGEX,\n} from '../constants/regex';\nimport { escapeHTML, unescapeHTML } from './emoji';\n\nexport const convertTextToHTML = (text: string) => {\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerText = text;\n\n document.body.appendChild(element);\n\n let result = element.innerHTML;\n\n document.body.removeChild(element);\n\n result = unescapeHTML(result);\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention
|
|
1
|
+
{"version":3,"file":"text.js","names":["BB_LC_MENTION_REGEX","BB_NER_IGNORE_REGEX","BB_NER_REPLACE_REGEX","BB_IGNORE_EMOJI_REGEX","HTML_A_TAG_REGEX","HTML_BOLD_REGEX","HTML_LC_MENTION_REGEX","HTML_NER_IGNORE_REGEX","HTML_NER_REPLACE_REGEX","HTML_NO_EMOJI_REGEX","escapeHTML","unescapeHTML","convertTextToHTML","text","element","document","createElement","style","position","opacity","contentEditable","innerText","body","appendChild","result","innerHTML","removeChild","replace","_","prefix","type","value","entity","prefixAttr","convertHTMLToText","preserveSpaces","getElementTextLength","textLength","outerHTML","length","e"],"sources":["../../../src/utils/text.ts"],"sourcesContent":["import {\n BB_LC_MENTION_REGEX,\n BB_NER_IGNORE_REGEX,\n BB_NER_REPLACE_REGEX,\n BB_IGNORE_EMOJI_REGEX,\n HTML_A_TAG_REGEX,\n HTML_BOLD_REGEX,\n HTML_LC_MENTION_REGEX,\n HTML_NER_IGNORE_REGEX,\n HTML_NER_REPLACE_REGEX,\n HTML_NO_EMOJI_REGEX,\n} from '../constants/regex';\nimport { escapeHTML, unescapeHTML } from './emoji';\n\nexport const convertTextToHTML = (text: string) => {\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerText = text;\n\n document.body.appendChild(element);\n\n let result = element.innerHTML;\n\n document.body.removeChild(element);\n\n result = unescapeHTML(result);\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention>\\u200B',\n )\n .replace(BB_NER_IGNORE_REGEX, '<nerIgnore contenteditable=\"false\">$1</nerIgnore>')\n .replace(\n BB_NER_REPLACE_REGEX,\n (_, prefix: string | undefined, type: string, value: string, entity: string) => {\n const prefixAttr = prefix ? `prefix=\"${prefix}\" ` : '';\n\n return `<nerReplace contenteditable=\"false\" ${prefixAttr}type=\"${type}\" value=\"${value}\">${entity}</nerReplace>`;\n },\n )\n .replace(BB_IGNORE_EMOJI_REGEX, '<span class=\"no-emoji-convert\">$1</span>');\n\n return result;\n};\n\nexport const convertHTMLToText = (text: string, { preserveSpaces = false } = {}) => {\n let result = text;\n\n // Unwrap \"no-emoji-convert\" protection spans so the plain-text\n // representation does not leak the marker HTML to consumers.\n // The protection itself is only relevant inside the live editor DOM.\n result = result.replace(HTML_NO_EMOJI_REGEX, '$1');\n\n result = result\n .replace(HTML_A_TAG_REGEX, '$1')\n .replace(HTML_BOLD_REGEX, '[b]$1[/b]')\n .replace(HTML_LC_MENTION_REGEX, '[lc_mention id=\"$1\"]$2[/lc_mention]')\n .replace(HTML_NER_IGNORE_REGEX, '[nerIgnore]$1[/nerIgnore]')\n .replace(\n HTML_NER_REPLACE_REGEX,\n (_, prefix: string | undefined, type: string, value: string, entity: string) => {\n const prefixAttr = prefix ? `prefix=\"${prefix}\" ` : '';\n\n return `[nerReplace ${prefixAttr}type=\"${type}\" value=\"${value}\"]${entity}[/nerReplace]`;\n },\n )\n .replace(HTML_NO_EMOJI_REGEX, '[ignoreEmoji]$1[/ignoreEmoji]');\n\n if (preserveSpaces) {\n return result\n .replace(/ /g, '\\u00A0') // non-breaking space\n .replace(/\\u200B/g, ''); // zero-width space (sichtbar gemacht)\n }\n\n // eslint-disable-next-line no-irregular-whitespace\n result = result.replace(//g, '');\n\n result = escapeHTML(result);\n\n const element = document.createElement('div');\n\n element.style.position = 'absolute';\n element.style.opacity = '0';\n\n element.contentEditable = 'true';\n element.innerHTML = result;\n\n document.body.appendChild(element);\n\n result = element.innerText;\n\n document.body.removeChild(element);\n\n return result;\n};\n\nexport const getElementTextLength = (element: Element) => {\n let textLength = 0;\n\n try {\n textLength = convertHTMLToText(element.outerHTML).length;\n } catch (e) {\n // Do nothing\n }\n\n return textLength;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const BB_LC_MENTION_REGEX: RegExp;
|
|
2
2
|
export declare const BB_NER_IGNORE_REGEX: RegExp;
|
|
3
3
|
export declare const BB_NER_REPLACE_REGEX: RegExp;
|
|
4
|
+
export declare const BB_IGNORE_EMOJI_REGEX: RegExp;
|
|
4
5
|
export declare const HTML_LC_MENTION_REGEX: RegExp;
|
|
5
6
|
export declare const HTML_NER_IGNORE_REGEX: RegExp;
|
|
6
7
|
export declare const HTML_NER_REPLACE_REGEX: RegExp;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chayns-components/emoji-input",
|
|
3
|
-
"version": "5.4.
|
|
3
|
+
"version": "5.4.2",
|
|
4
4
|
"description": "Input field that supports HTML elements and emojis",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"browserslist": [
|
|
@@ -89,5 +89,5 @@
|
|
|
89
89
|
"publishConfig": {
|
|
90
90
|
"access": "public"
|
|
91
91
|
},
|
|
92
|
-
"gitHead": "
|
|
92
|
+
"gitHead": "e29d46251a8c2ce2ec9d0359918e863ec4cc1513"
|
|
93
93
|
}
|