| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | 
							- 'use strict';
 
- const internals = {};
 
- module.exports = function (input) {
 
-     if (!input) {
 
-         return '';
 
-     }
 
-     let escaped = '';
 
-     for (let i = 0; i < input.length; ++i) {
 
-         const charCode = input.charCodeAt(i);
 
-         if (internals.isSafe(charCode)) {
 
-             escaped += input[i];
 
-         }
 
-         else {
 
-             escaped += internals.escapeHtmlChar(charCode);
 
-         }
 
-     }
 
-     return escaped;
 
- };
 
- internals.escapeHtmlChar = function (charCode) {
 
-     const namedEscape = internals.namedHtml[charCode];
 
-     if (typeof namedEscape !== 'undefined') {
 
-         return namedEscape;
 
-     }
 
-     if (charCode >= 256) {
 
-         return '&#' + charCode + ';';
 
-     }
 
-     const hexValue = charCode.toString(16).padStart(2, '0');
 
-     return `&#x${hexValue};`;
 
- };
 
- internals.isSafe = function (charCode) {
 
-     return (typeof internals.safeCharCodes[charCode] !== 'undefined');
 
- };
 
- internals.namedHtml = {
 
-     '38': '&',
 
-     '60': '<',
 
-     '62': '>',
 
-     '34': '"',
 
-     '160': ' ',
 
-     '162': '¢',
 
-     '163': '£',
 
-     '164': '¤',
 
-     '169': '©',
 
-     '174': '®'
 
- };
 
- internals.safeCharCodes = (function () {
 
-     const safe = {};
 
-     for (let i = 32; i < 123; ++i) {
 
-         if ((i >= 97) ||                    // a-z
 
-             (i >= 65 && i <= 90) ||         // A-Z
 
-             (i >= 48 && i <= 57) ||         // 0-9
 
-             i === 32 ||                     // space
 
-             i === 46 ||                     // .
 
-             i === 44 ||                     // ,
 
-             i === 45 ||                     // -
 
-             i === 58 ||                     // :
 
-             i === 95) {                     // _
 
-             safe[i] = null;
 
-         }
 
-     }
 
-     return safe;
 
- }());
 
 
  |