218 lines
4.4 KiB
JavaScript
218 lines
4.4 KiB
JavaScript
"use strict";
|
||
|
||
Object.defineProperty(exports, "__esModule", {
|
||
value: true
|
||
});
|
||
exports.decodeHtmlEntities = void 0;
|
||
const commonEntities = {
|
||
' ': '\u00A0',
|
||
'&': '&',
|
||
'<': '<',
|
||
'>': '>',
|
||
'"': '"',
|
||
''': "'",
|
||
'©': '©',
|
||
'®': '®',
|
||
'™': '™',
|
||
'…': '…',
|
||
'–': '–',
|
||
'—': '—',
|
||
'‘': '\u2018',
|
||
'’': '\u2019',
|
||
'‚': '\u201A',
|
||
'“': '\u201C',
|
||
'”': '\u201D',
|
||
'„': '\u201E',
|
||
'†': '†',
|
||
'‡': '‡',
|
||
'•': '•',
|
||
'′': '′',
|
||
'″': '″',
|
||
'‹': '‹',
|
||
'›': '›',
|
||
'§': '§',
|
||
'¶': '¶',
|
||
'·': '·',
|
||
' ': '\u2002',
|
||
' ': '\u2003',
|
||
' ': '\u2009',
|
||
'€': '€',
|
||
'£': '£',
|
||
'¥': '¥',
|
||
'¢': '¢',
|
||
'¤': '¤',
|
||
'×': '×',
|
||
'÷': '÷',
|
||
'−': '−',
|
||
'±': '±',
|
||
'≠': '≠',
|
||
'≤': '≤',
|
||
'≥': '≥',
|
||
'≈': '≈',
|
||
'≡': '≡',
|
||
'∞': '∞',
|
||
'∫': '∫',
|
||
'∑': '∑',
|
||
'∏': '∏',
|
||
'√': '√',
|
||
'∂': '∂',
|
||
'‰': '‰',
|
||
'°': '°',
|
||
'µ': 'µ',
|
||
'←': '←',
|
||
'↑': '↑',
|
||
'→': '→',
|
||
'↓': '↓',
|
||
'↔': '↔',
|
||
'↵': '↵',
|
||
'⇐': '⇐',
|
||
'⇑': '⇑',
|
||
'⇒': '⇒',
|
||
'⇓': '⇓',
|
||
'⇔': '⇔',
|
||
'α': 'α',
|
||
'β': 'β',
|
||
'γ': 'γ',
|
||
'δ': 'δ',
|
||
'ε': 'ε',
|
||
'ζ': 'ζ',
|
||
'η': 'η',
|
||
'θ': 'θ',
|
||
'ι': 'ι',
|
||
'κ': 'κ',
|
||
'λ': 'λ',
|
||
'μ': 'μ',
|
||
'ν': 'ν',
|
||
'ξ': 'ξ',
|
||
'ο': 'ο',
|
||
'π': 'π',
|
||
'ρ': 'ρ',
|
||
'σ': 'σ',
|
||
'τ': 'τ',
|
||
'υ': 'υ',
|
||
'φ': 'φ',
|
||
'χ': 'χ',
|
||
'ψ': 'ψ',
|
||
'ω': 'ω',
|
||
'Α': 'Α',
|
||
'Β': 'Β',
|
||
'Γ': 'Γ',
|
||
'Δ': 'Δ',
|
||
'Ε': 'Ε',
|
||
'Ζ': 'Ζ',
|
||
'Η': 'Η',
|
||
'Θ': 'Θ',
|
||
'Ι': 'Ι',
|
||
'Κ': 'Κ',
|
||
'Λ': 'Λ',
|
||
'Μ': 'Μ',
|
||
'Ν': 'Ν',
|
||
'Ξ': 'Ξ',
|
||
'Ο': 'Ο',
|
||
'Π': 'Π',
|
||
'Ρ': 'Ρ',
|
||
'Σ': 'Σ',
|
||
'Τ': 'Τ',
|
||
'Υ': 'Υ',
|
||
'Φ': 'Φ',
|
||
'Χ': 'Χ',
|
||
'Ψ': 'Ψ',
|
||
'Ω': 'Ω',
|
||
'À': 'À',
|
||
'Á': 'Á',
|
||
'Â': 'Â',
|
||
'Ã': 'Ã',
|
||
'Ä': 'Ä',
|
||
'Å': 'Å',
|
||
'Æ': 'Æ',
|
||
'Ç': 'Ç',
|
||
'È': 'È',
|
||
'É': 'É',
|
||
'Ê': 'Ê',
|
||
'Ë': 'Ë',
|
||
'Ì': 'Ì',
|
||
'Í': 'Í',
|
||
'Î': 'Î',
|
||
'Ï': 'Ï',
|
||
'Ð': 'Ð',
|
||
'Ñ': 'Ñ',
|
||
'Ò': 'Ò',
|
||
'Ó': 'Ó',
|
||
'Ô': 'Ô',
|
||
'Õ': 'Õ',
|
||
'Ö': 'Ö',
|
||
'Ø': 'Ø',
|
||
'Ù': 'Ù',
|
||
'Ú': 'Ú',
|
||
'Û': 'Û',
|
||
'Ü': 'Ü',
|
||
'Ý': 'Ý',
|
||
'Þ': 'Þ',
|
||
'ß': 'ß',
|
||
'à': 'à',
|
||
'á': 'á',
|
||
'â': 'â',
|
||
'ã': 'ã',
|
||
'ä': 'ä',
|
||
'å': 'å',
|
||
'æ': 'æ',
|
||
'ç': 'ç',
|
||
'è': 'è',
|
||
'é': 'é',
|
||
'ê': 'ê',
|
||
'ë': 'ë',
|
||
'ì': 'ì',
|
||
'í': 'í',
|
||
'î': 'î',
|
||
'ï': 'ï',
|
||
'ð': 'ð',
|
||
'ñ': 'ñ',
|
||
'ò': 'ò',
|
||
'ó': 'ó',
|
||
'ô': 'ô',
|
||
'õ': 'õ',
|
||
'ö': 'ö',
|
||
'ø': 'ø',
|
||
'ù': 'ù',
|
||
'ú': 'ú',
|
||
'û': 'û',
|
||
'ü': 'ü',
|
||
'ý': 'ý',
|
||
'þ': 'þ',
|
||
'ÿ': 'ÿ',
|
||
'¡': '¡',
|
||
'¿': '¿',
|
||
'ƒ': 'ƒ',
|
||
'ˆ': 'ˆ',
|
||
'˜': '˜',
|
||
'Œ': 'Œ',
|
||
'œ': 'œ',
|
||
'Š': 'Š',
|
||
'š': 'š',
|
||
'Ÿ': 'Ÿ',
|
||
'ª': 'ª',
|
||
'º': 'º',
|
||
'¯': '¯',
|
||
'´': '´',
|
||
'¸': '¸',
|
||
'¹': '¹',
|
||
'²': '²',
|
||
'³': '³',
|
||
'¼': '¼',
|
||
'½': '½',
|
||
'¾': '¾',
|
||
'♠': '♠',
|
||
'♣': '♣',
|
||
'♥': '♥',
|
||
'♦': '♦',
|
||
'◊': '◊',
|
||
'‾': '‾',
|
||
'⁄': '⁄',
|
||
'℘': '℘',
|
||
'ℑ': 'ℑ',
|
||
'ℜ': 'ℜ',
|
||
'ℵ': 'ℵ'
|
||
};
|
||
const entityPattern = new RegExp(Object.keys(commonEntities).map(entity => entity.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('|'), 'g');
|
||
const decodeHtmlEntities = text => text.replace(entityPattern, match => commonEntities[match]).replace(/&#(\d+);/g, (_, num) => String.fromCharCode(parseInt(num, 10))).replace(/&#x([0-9a-fA-F]+);/g, (_, hex) => String.fromCharCode(parseInt(hex, 16)));
|
||
exports.decodeHtmlEntities = decodeHtmlEntities; |