@chayns-components/emoji-input 5.0.0-beta.130 → 5.0.0-beta.131

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.
@@ -1,3 +1,2 @@
1
1
  export declare const BB_LC_MENTION_REGEX: RegExp;
2
2
  export declare const HTML_LC_MENTION_REGEX: RegExp;
3
- export declare const QUOTE_REGEX: RegExp;
@@ -3,11 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.QUOTE_REGEX = exports.HTML_LC_MENTION_REGEX = exports.BB_LC_MENTION_REGEX = void 0;
6
+ exports.HTML_LC_MENTION_REGEX = exports.BB_LC_MENTION_REGEX = void 0;
7
7
  const BB_LC_MENTION_REGEX = /\[lc_mention.+?id="([^"]+?)"](.+?)\[\/lc_mention]/g;
8
8
  exports.BB_LC_MENTION_REGEX = BB_LC_MENTION_REGEX;
9
9
  const HTML_LC_MENTION_REGEX = /<lc_mention.+?id="([^"]+?)">(?:<span.*?<\/span>)*(.+?)<\/lc_mention>/g;
10
10
  exports.HTML_LC_MENTION_REGEX = HTML_LC_MENTION_REGEX;
11
- const QUOTE_REGEX = /(?<![<[])(?<!\[[^]]*)(?<!&lt;[^&]*)(?<=\s|\S)"(?=\S|\s)(?![^[]*\])(?![^&]*&gt;)/g;
12
- exports.QUOTE_REGEX = QUOTE_REGEX;
13
11
  //# sourceMappingURL=regex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","exports","HTML_LC_MENTION_REGEX","QUOTE_REGEX"],"sources":["../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\n\nexport const QUOTE_REGEX =\n /(?<![<[])(?<!\\[[^]]*)(?<!&lt;[^&]*)(?<=\\s|\\S)\"(?=\\S|\\s)(?![^[]*\\])(?![^&]*&gt;)/g;\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAG,oDAAoD;AAACC,OAAA,CAAAD,mBAAA,GAAAA,mBAAA;AAEjF,MAAME,qBAAqB,GAC9B,uEAAuE;AAACD,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AAErE,MAAMC,WAAW,GACpB,kFAAkF;AAACF,OAAA,CAAAE,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"file":"regex.js","names":["BB_LC_MENTION_REGEX","exports","HTML_LC_MENTION_REGEX"],"sources":["../../src/constants/regex.ts"],"sourcesContent":["export const BB_LC_MENTION_REGEX = /\\[lc_mention.+?id=\"([^\"]+?)\"](.+?)\\[\\/lc_mention]/g;\n\nexport const HTML_LC_MENTION_REGEX =\n /<lc_mention.+?id=\"([^\"]+?)\">(?:<span.*?<\\/span>)*(.+?)<\\/lc_mention>/g;\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAG,oDAAoD;AAACC,OAAA,CAAAD,mBAAA,GAAAA,mBAAA;AAEjF,MAAME,qBAAqB,GAC9B,uEAAuE;AAACD,OAAA,CAAAC,qBAAA,GAAAA,qBAAA"}
@@ -1,2 +1,3 @@
1
+ export declare const unescapeHTML: (text: string) => string;
1
2
  export declare const convertEmojisToUnicode: (text: string) => string;
2
3
  export declare const addSkinToneToEmoji: (emoji: string, skinTone: string) => string;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.convertEmojisToUnicode = exports.addSkinToneToEmoji = void 0;
6
+ exports.unescapeHTML = exports.convertEmojisToUnicode = exports.addSkinToneToEmoji = void 0;
7
7
  var _dataByEmoji = _interopRequireDefault(require("unicode-emoji-json/data-by-emoji.json"));
8
8
  var _emoji = require("../constants/emoji");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -56,6 +56,7 @@ const unescapeHTML = text => {
56
56
  return (_unescaped$match = unescaped[match]) !== null && _unescaped$match !== void 0 ? _unescaped$match : match;
57
57
  });
58
58
  };
59
+ exports.unescapeHTML = unescapeHTML;
59
60
  const convertEmojisToUnicode = text => {
60
61
  let result = text;
61
62
  result = result.replace(/https?:\/\/.*?(?=$|\s)/gi, fullMatch => fullMatch.replace(/:/g, '%3A'));
@@ -1 +1 @@
1
- {"version":3,"file":"emoji.js","names":["_dataByEmoji","_interopRequireDefault","require","_emoji","obj","__esModule","default","convert","unicode","indexOf","parts","s","split","i","length","part","parseInt","hi","Math","floor","lo","String","fromCharCode","push","join","unescapeHTML","text","unescaped","replace","match","_unescaped$match","convertEmojisToUnicode","result","fullMatch","regShortnames","shortname","shortNameList","toUpperCase","regAsciiRisky","m1","m2","m3","asciiList","exports","addSkinToneToEmoji","emoji","skinTone","map","rawEmoji","_emojiList$rawEmoji","emojiList","skin_tone_support"],"sources":["../../src/utils/emoji.ts"],"sourcesContent":["import emojiList from 'unicode-emoji-json/data-by-emoji.json';\nimport { asciiList, regAsciiRisky, regShortnames, shortNameList } from '../constants/emoji';\n\nconst convert = (unicode: string) => {\n if (unicode.indexOf('-') > -1) {\n const parts = [];\n\n const s = unicode.split('-');\n\n for (let i = 0; i < s.length; i++) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n let part: number | string = parseInt(s[i]!, 16);\n\n if (part >= 0x10000 && part <= 0x10ffff) {\n const hi = Math.floor((part - 0x10000) / 0x400) + 0xd800;\n const lo = ((part - 0x10000) % 0x400) + 0xdc00;\n\n part = String.fromCharCode(hi) + String.fromCharCode(lo);\n } else {\n part = String.fromCharCode(part);\n }\n\n parts.push(part);\n }\n\n return parts.join('');\n }\n\n const s = parseInt(unicode, 16);\n\n if (s >= 0x10000 && s <= 0x10ffff) {\n const hi = Math.floor((s - 0x10000) / 0x400) + 0xd800;\n const lo = ((s - 0x10000) % 0x400) + 0xdc00;\n\n return String.fromCharCode(hi) + String.fromCharCode(lo);\n }\n\n return String.fromCharCode(s);\n};\n\nconst unescapeHTML = (text: string) => {\n const unescaped: { [key: string]: string } = {\n '&amp;': '&',\n '&#38;': '&',\n '&#x26;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&#x3C;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&#x3E;': '>',\n '&quot;': '\"',\n '&#34;': '\"',\n '&#x22;': '\"',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&#x27;': \"'\",\n };\n\n return text.replace(\n /&(?:amp|#38|#x26|lt|#60|#x3C|gt|#62|#x3E|apos|#39|#x27|quot|#34|#x22);/gi,\n (match) => unescaped[match] ?? match\n );\n};\n\nexport const convertEmojisToUnicode = (text: string): string => {\n let result = text;\n\n result = result.replace(/https?:\\/\\/.*?(?=$|\\s)/gi, (fullMatch) =>\n fullMatch.replace(/:/g, '%3A')\n );\n\n result = result.replace(regShortnames, (shortname) => {\n if (shortname) {\n const unicode = shortNameList[shortname];\n\n if (unicode) {\n return convert(unicode.toUpperCase());\n }\n }\n\n return shortname;\n });\n\n result = result.replace(/https?%3A\\/\\/.*?(?=$|\\s)/gi, (fullMatch) =>\n fullMatch.replace(/%3A/g, ':')\n );\n\n result = result.replace(regAsciiRisky, (fullMatch, m1, m2, m3) => {\n if (typeof m3 === 'string' && m3 !== '') {\n const unicode = asciiList[unescapeHTML(m3)];\n\n if (unicode) {\n return (m2 as string) + convert(unicode.toUpperCase());\n }\n }\n\n return fullMatch;\n });\n\n return result;\n};\n\nexport const addSkinToneToEmoji = (emoji: string, skinTone: string): string =>\n emoji\n .split('\\u{200D}')\n .map((rawEmoji) => {\n const parts = [rawEmoji.replace(/\\ufe0f/, '')];\n\n // @ts-expect-error: Difficult to type external json file\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (emojiList[rawEmoji]?.skin_tone_support) {\n parts.push(skinTone);\n }\n\n return parts.join('');\n })\n .join('\\u{200D}');\n"],"mappings":"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"}
1
+ {"version":3,"file":"emoji.js","names":["_dataByEmoji","_interopRequireDefault","require","_emoji","obj","__esModule","default","convert","unicode","indexOf","parts","s","split","i","length","part","parseInt","hi","Math","floor","lo","String","fromCharCode","push","join","unescapeHTML","text","unescaped","replace","match","_unescaped$match","exports","convertEmojisToUnicode","result","fullMatch","regShortnames","shortname","shortNameList","toUpperCase","regAsciiRisky","m1","m2","m3","asciiList","addSkinToneToEmoji","emoji","skinTone","map","rawEmoji","_emojiList$rawEmoji","emojiList","skin_tone_support"],"sources":["../../src/utils/emoji.ts"],"sourcesContent":["import emojiList from 'unicode-emoji-json/data-by-emoji.json';\nimport { asciiList, regAsciiRisky, regShortnames, shortNameList } from '../constants/emoji';\n\nconst convert = (unicode: string) => {\n if (unicode.indexOf('-') > -1) {\n const parts = [];\n\n const s = unicode.split('-');\n\n for (let i = 0; i < s.length; i++) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n let part: number | string = parseInt(s[i]!, 16);\n\n if (part >= 0x10000 && part <= 0x10ffff) {\n const hi = Math.floor((part - 0x10000) / 0x400) + 0xd800;\n const lo = ((part - 0x10000) % 0x400) + 0xdc00;\n\n part = String.fromCharCode(hi) + String.fromCharCode(lo);\n } else {\n part = String.fromCharCode(part);\n }\n\n parts.push(part);\n }\n\n return parts.join('');\n }\n\n const s = parseInt(unicode, 16);\n\n if (s >= 0x10000 && s <= 0x10ffff) {\n const hi = Math.floor((s - 0x10000) / 0x400) + 0xd800;\n const lo = ((s - 0x10000) % 0x400) + 0xdc00;\n\n return String.fromCharCode(hi) + String.fromCharCode(lo);\n }\n\n return String.fromCharCode(s);\n};\n\nexport const unescapeHTML = (text: string) => {\n const unescaped: { [key: string]: string } = {\n '&amp;': '&',\n '&#38;': '&',\n '&#x26;': '&',\n '&lt;': '<',\n '&#60;': '<',\n '&#x3C;': '<',\n '&gt;': '>',\n '&#62;': '>',\n '&#x3E;': '>',\n '&quot;': '\"',\n '&#34;': '\"',\n '&#x22;': '\"',\n '&apos;': \"'\",\n '&#39;': \"'\",\n '&#x27;': \"'\",\n };\n\n return text.replace(\n /&(?:amp|#38|#x26|lt|#60|#x3C|gt|#62|#x3E|apos|#39|#x27|quot|#34|#x22);/gi,\n (match) => unescaped[match] ?? match\n );\n};\n\nexport const convertEmojisToUnicode = (text: string): string => {\n let result = text;\n\n result = result.replace(/https?:\\/\\/.*?(?=$|\\s)/gi, (fullMatch) =>\n fullMatch.replace(/:/g, '%3A')\n );\n\n result = result.replace(regShortnames, (shortname) => {\n if (shortname) {\n const unicode = shortNameList[shortname];\n\n if (unicode) {\n return convert(unicode.toUpperCase());\n }\n }\n\n return shortname;\n });\n\n result = result.replace(/https?%3A\\/\\/.*?(?=$|\\s)/gi, (fullMatch) =>\n fullMatch.replace(/%3A/g, ':')\n );\n\n result = result.replace(regAsciiRisky, (fullMatch, m1, m2, m3) => {\n if (typeof m3 === 'string' && m3 !== '') {\n const unicode = asciiList[unescapeHTML(m3)];\n\n if (unicode) {\n return (m2 as string) + convert(unicode.toUpperCase());\n }\n }\n\n return fullMatch;\n });\n\n return result;\n};\n\nexport const addSkinToneToEmoji = (emoji: string, skinTone: string): string =>\n emoji\n .split('\\u{200D}')\n .map((rawEmoji) => {\n const parts = [rawEmoji.replace(/\\ufe0f/, '')];\n\n // @ts-expect-error: Difficult to type external json file\n // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access\n if (emojiList[rawEmoji]?.skin_tone_support) {\n parts.push(skinTone);\n }\n\n return parts.join('');\n })\n .join('\\u{200D}');\n"],"mappings":"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"}
@@ -1,3 +1,2 @@
1
1
  export declare const convertBBCodesToHTML: (text: string) => string;
2
2
  export declare const convertHTMLToBBCodes: (text: string) => string;
3
- export declare const convertQuotes: (text: string) => string;
package/lib/utils/text.js CHANGED
@@ -3,8 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.convertQuotes = exports.convertHTMLToBBCodes = exports.convertBBCodesToHTML = void 0;
6
+ exports.convertHTMLToBBCodes = exports.convertBBCodesToHTML = void 0;
7
7
  var _regex = require("../constants/regex");
8
+ var _emoji = require("./emoji");
8
9
  const convertBBCodesToHTML = text => {
9
10
  let result = text;
10
11
  result = result.replace(_regex.BB_LC_MENTION_REGEX, '<lc_mention contenteditable="false" id="$1"><span>@</span>$2</lc_mention>');
@@ -14,21 +15,8 @@ exports.convertBBCodesToHTML = convertBBCodesToHTML;
14
15
  const convertHTMLToBBCodes = text => {
15
16
  let result = text;
16
17
  result = result.replace(_regex.HTML_LC_MENTION_REGEX, '[lc_mention id="$1"]$2[/lc_mention]');
18
+ result = (0, _emoji.unescapeHTML)(result);
17
19
  return result;
18
20
  };
19
21
  exports.convertHTMLToBBCodes = convertHTMLToBBCodes;
20
- const convertQuotes = text => {
21
- console.log(text);
22
- const regexForQuoteStart = /„(\s|$)/g;
23
- const formattedQuotes = text.replace(_regex.QUOTE_REGEX, match => {
24
- console.log('match', match);
25
- if (match.startsWith(' ') || text.startsWith(match)) {
26
- return match.startsWith(' ') ? ` ${String.fromCharCode(8222)}` : String.fromCharCode(8222);
27
- }
28
- return String.fromCharCode(8220);
29
- });
30
- return formattedQuotes;
31
- // return formattedQuotes.replace(regexForQuoteStart, '"');
32
- };
33
- exports.convertQuotes = convertQuotes;
34
22
  //# sourceMappingURL=text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","names":["_regex","require","convertBBCodesToHTML","text","result","replace","BB_LC_MENTION_REGEX","exports","convertHTMLToBBCodes","HTML_LC_MENTION_REGEX","convertQuotes","console","log","regexForQuoteStart","formattedQuotes","QUOTE_REGEX","match","startsWith","String","fromCharCode"],"sources":["../../src/utils/text.ts"],"sourcesContent":["import { BB_LC_MENTION_REGEX, HTML_LC_MENTION_REGEX, QUOTE_REGEX } from '../constants/regex';\n\nexport const convertBBCodesToHTML = (text: string) => {\n let result = text;\n\n result = result.replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention>'\n );\n\n return result;\n};\n\nexport const convertHTMLToBBCodes = (text: string) => {\n let result = text;\n\n result = result.replace(HTML_LC_MENTION_REGEX, '[lc_mention id=\"$1\"]$2[/lc_mention]');\n\n return result;\n};\n\nexport const convertQuotes = (text: string) => {\n console.log(text);\n\n const regexForQuoteStart = /„(\\s|$)/g;\n\n const formattedQuotes = text.replace(QUOTE_REGEX, (match) => {\n console.log('match', match);\n if (match.startsWith(' ') || text.startsWith(match)) {\n return match.startsWith(' ')\n ? ` ${String.fromCharCode(8222)}`\n : String.fromCharCode(8222);\n }\n return String.fromCharCode(8220);\n });\n\n return formattedQuotes;\n // return formattedQuotes.replace(regexForQuoteStart, '\"');\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEO,MAAMC,oBAAoB,GAAIC,IAAY,IAAK;EAClD,IAAIC,MAAM,GAAGD,IAAI;EAEjBC,MAAM,GAAGA,MAAM,CAACC,OAAO,CACnBC,0BAAmB,EACnB,2EAA2E,CAC9E;EAED,OAAOF,MAAM;AACjB,CAAC;AAACG,OAAA,CAAAL,oBAAA,GAAAA,oBAAA;AAEK,MAAMM,oBAAoB,GAAIL,IAAY,IAAK;EAClD,IAAIC,MAAM,GAAGD,IAAI;EAEjBC,MAAM,GAAGA,MAAM,CAACC,OAAO,CAACI,4BAAqB,EAAE,qCAAqC,CAAC;EAErF,OAAOL,MAAM;AACjB,CAAC;AAACG,OAAA,CAAAC,oBAAA,GAAAA,oBAAA;AAEK,MAAME,aAAa,GAAIP,IAAY,IAAK;EAC3CQ,OAAO,CAACC,GAAG,CAACT,IAAI,CAAC;EAEjB,MAAMU,kBAAkB,GAAG,UAAU;EAErC,MAAMC,eAAe,GAAGX,IAAI,CAACE,OAAO,CAACU,kBAAW,EAAGC,KAAK,IAAK;IACzDL,OAAO,CAACC,GAAG,CAAC,OAAO,EAAEI,KAAK,CAAC;IAC3B,IAAIA,KAAK,CAACC,UAAU,CAAC,GAAG,CAAC,IAAId,IAAI,CAACc,UAAU,CAACD,KAAK,CAAC,EAAE;MACjD,OAAOA,KAAK,CAACC,UAAU,CAAC,GAAG,CAAC,GACrB,IAAGC,MAAM,CAACC,YAAY,CAAC,IAAI,CAAE,EAAC,GAC/BD,MAAM,CAACC,YAAY,CAAC,IAAI,CAAC;IACnC;IACA,OAAOD,MAAM,CAACC,YAAY,CAAC,IAAI,CAAC;EACpC,CAAC,CAAC;EAEF,OAAOL,eAAe;EACtB;AACJ,CAAC;AAACP,OAAA,CAAAG,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"file":"text.js","names":["_regex","require","_emoji","convertBBCodesToHTML","text","result","replace","BB_LC_MENTION_REGEX","exports","convertHTMLToBBCodes","HTML_LC_MENTION_REGEX","unescapeHTML"],"sources":["../../src/utils/text.ts"],"sourcesContent":["import { BB_LC_MENTION_REGEX, HTML_LC_MENTION_REGEX } from '../constants/regex';\nimport { unescapeHTML } from './emoji';\n\nexport const convertBBCodesToHTML = (text: string) => {\n let result = text;\n\n result = result.replace(\n BB_LC_MENTION_REGEX,\n '<lc_mention contenteditable=\"false\" id=\"$1\"><span>@</span>$2</lc_mention>'\n );\n\n return result;\n};\n\nexport const convertHTMLToBBCodes = (text: string) => {\n let result = text;\n\n result = result.replace(HTML_LC_MENTION_REGEX, '[lc_mention id=\"$1\"]$2[/lc_mention]');\n\n result = unescapeHTML(result);\n\n return result;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEO,MAAME,oBAAoB,GAAIC,IAAY,IAAK;EAClD,IAAIC,MAAM,GAAGD,IAAI;EAEjBC,MAAM,GAAGA,MAAM,CAACC,OAAO,CACnBC,0BAAmB,EACnB,2EAA2E,CAC9E;EAED,OAAOF,MAAM;AACjB,CAAC;AAACG,OAAA,CAAAL,oBAAA,GAAAA,oBAAA;AAEK,MAAMM,oBAAoB,GAAIL,IAAY,IAAK;EAClD,IAAIC,MAAM,GAAGD,IAAI;EAEjBC,MAAM,GAAGA,MAAM,CAACC,OAAO,CAACI,4BAAqB,EAAE,qCAAqC,CAAC;EAErFL,MAAM,GAAG,IAAAM,mBAAY,EAACN,MAAM,CAAC;EAE7B,OAAOA,MAAM;AACjB,CAAC;AAACG,OAAA,CAAAC,oBAAA,GAAAA,oBAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chayns-components/emoji-input",
3
- "version": "5.0.0-beta.130",
3
+ "version": "5.0.0-beta.131",
4
4
  "description": "Input field that supports HTML elements and emojis",
5
5
  "keywords": [
6
6
  "chayns",
@@ -68,5 +68,5 @@
68
68
  "publishConfig": {
69
69
  "access": "public"
70
70
  },
71
- "gitHead": "23621b554181817d633f3922cece0395ca96e783"
71
+ "gitHead": "e1da3016de1a46a19ebfae97c8938c204e1b5375"
72
72
  }