diff options
Diffstat (limited to 'node_modules/whatwg-encoding/lib')
| -rw-r--r-- | node_modules/whatwg-encoding/lib/labels-to-names.json | 207 | ||||
| -rw-r--r-- | node_modules/whatwg-encoding/lib/supported-names.json | 37 | ||||
| -rw-r--r-- | node_modules/whatwg-encoding/lib/whatwg-encoding.js | 47 | 
3 files changed, 291 insertions, 0 deletions
diff --git a/node_modules/whatwg-encoding/lib/labels-to-names.json b/node_modules/whatwg-encoding/lib/labels-to-names.json new file mode 100644 index 0000000..917e657 --- /dev/null +++ b/node_modules/whatwg-encoding/lib/labels-to-names.json @@ -0,0 +1,207 @@ +{ +  "866": "IBM866", +  "unicode-1-1-utf-8": "UTF-8", +  "utf-8": "UTF-8", +  "utf8": "UTF-8", +  "cp866": "IBM866", +  "csibm866": "IBM866", +  "ibm866": "IBM866", +  "csisolatin2": "ISO-8859-2", +  "iso-8859-2": "ISO-8859-2", +  "iso-ir-101": "ISO-8859-2", +  "iso8859-2": "ISO-8859-2", +  "iso88592": "ISO-8859-2", +  "iso_8859-2": "ISO-8859-2", +  "iso_8859-2:1987": "ISO-8859-2", +  "l2": "ISO-8859-2", +  "latin2": "ISO-8859-2", +  "csisolatin3": "ISO-8859-3", +  "iso-8859-3": "ISO-8859-3", +  "iso-ir-109": "ISO-8859-3", +  "iso8859-3": "ISO-8859-3", +  "iso88593": "ISO-8859-3", +  "iso_8859-3": "ISO-8859-3", +  "iso_8859-3:1988": "ISO-8859-3", +  "l3": "ISO-8859-3", +  "latin3": "ISO-8859-3", +  "csisolatin4": "ISO-8859-4", +  "iso-8859-4": "ISO-8859-4", +  "iso-ir-110": "ISO-8859-4", +  "iso8859-4": "ISO-8859-4", +  "iso88594": "ISO-8859-4", +  "iso_8859-4": "ISO-8859-4", +  "iso_8859-4:1988": "ISO-8859-4", +  "l4": "ISO-8859-4", +  "latin4": "ISO-8859-4", +  "csisolatincyrillic": "ISO-8859-5", +  "cyrillic": "ISO-8859-5", +  "iso-8859-5": "ISO-8859-5", +  "iso-ir-144": "ISO-8859-5", +  "iso8859-5": "ISO-8859-5", +  "iso88595": "ISO-8859-5", +  "iso_8859-5": "ISO-8859-5", +  "iso_8859-5:1988": "ISO-8859-5", +  "arabic": "ISO-8859-6", +  "asmo-708": "ISO-8859-6", +  "csiso88596e": "ISO-8859-6", +  "csiso88596i": "ISO-8859-6", +  "csisolatinarabic": "ISO-8859-6", +  "ecma-114": "ISO-8859-6", +  "iso-8859-6": "ISO-8859-6", +  "iso-8859-6-e": "ISO-8859-6", +  "iso-8859-6-i": "ISO-8859-6", +  "iso-ir-127": "ISO-8859-6", +  "iso8859-6": "ISO-8859-6", +  "iso88596": "ISO-8859-6", +  "iso_8859-6": "ISO-8859-6", +  "iso_8859-6:1987": "ISO-8859-6", +  "csisolatingreek": "ISO-8859-7", +  "ecma-118": "ISO-8859-7", +  "elot_928": "ISO-8859-7", +  "greek": "ISO-8859-7", +  "greek8": "ISO-8859-7", +  "iso-8859-7": "ISO-8859-7", +  "iso-ir-126": "ISO-8859-7", +  "iso8859-7": "ISO-8859-7", +  "iso88597": "ISO-8859-7", +  "iso_8859-7": "ISO-8859-7", +  "iso_8859-7:1987": "ISO-8859-7", +  "sun_eu_greek": "ISO-8859-7", +  "csiso88598e": "ISO-8859-8", +  "csisolatinhebrew": "ISO-8859-8", +  "hebrew": "ISO-8859-8", +  "iso-8859-8": "ISO-8859-8", +  "iso-8859-8-e": "ISO-8859-8", +  "iso-ir-138": "ISO-8859-8", +  "iso8859-8": "ISO-8859-8", +  "iso88598": "ISO-8859-8", +  "iso_8859-8": "ISO-8859-8", +  "iso_8859-8:1988": "ISO-8859-8", +  "visual": "ISO-8859-8", +  "csisolatin6": "ISO-8859-10", +  "iso-8859-10": "ISO-8859-10", +  "iso-ir-157": "ISO-8859-10", +  "iso8859-10": "ISO-8859-10", +  "iso885910": "ISO-8859-10", +  "l6": "ISO-8859-10", +  "latin6": "ISO-8859-10", +  "iso-8859-13": "ISO-8859-13", +  "iso8859-13": "ISO-8859-13", +  "iso885913": "ISO-8859-13", +  "iso-8859-14": "ISO-8859-14", +  "iso8859-14": "ISO-8859-14", +  "iso885914": "ISO-8859-14", +  "csisolatin9": "ISO-8859-15", +  "iso-8859-15": "ISO-8859-15", +  "iso8859-15": "ISO-8859-15", +  "iso885915": "ISO-8859-15", +  "iso_8859-15": "ISO-8859-15", +  "l9": "ISO-8859-15", +  "iso-8859-16": "ISO-8859-16", +  "cskoi8r": "KOI8-R", +  "koi": "KOI8-R", +  "koi8": "KOI8-R", +  "koi8-r": "KOI8-R", +  "koi8_r": "KOI8-R", +  "koi8-ru": "KOI8-U", +  "koi8-u": "KOI8-U", +  "csmacintosh": "macintosh", +  "mac": "macintosh", +  "macintosh": "macintosh", +  "x-mac-roman": "macintosh", +  "dos-874": "windows-874", +  "iso-8859-11": "windows-874", +  "iso8859-11": "windows-874", +  "iso885911": "windows-874", +  "tis-620": "windows-874", +  "windows-874": "windows-874", +  "cp1250": "windows-1250", +  "windows-1250": "windows-1250", +  "x-cp1250": "windows-1250", +  "cp1251": "windows-1251", +  "windows-1251": "windows-1251", +  "x-cp1251": "windows-1251", +  "ansi_x3.4-1968": "windows-1252", +  "ascii": "windows-1252", +  "cp1252": "windows-1252", +  "cp819": "windows-1252", +  "csisolatin1": "windows-1252", +  "ibm819": "windows-1252", +  "iso-8859-1": "windows-1252", +  "iso-ir-100": "windows-1252", +  "iso8859-1": "windows-1252", +  "iso88591": "windows-1252", +  "iso_8859-1": "windows-1252", +  "iso_8859-1:1987": "windows-1252", +  "l1": "windows-1252", +  "latin1": "windows-1252", +  "us-ascii": "windows-1252", +  "windows-1252": "windows-1252", +  "x-cp1252": "windows-1252", +  "cp1253": "windows-1253", +  "windows-1253": "windows-1253", +  "x-cp1253": "windows-1253", +  "cp1254": "windows-1254", +  "csisolatin5": "windows-1254", +  "iso-8859-9": "windows-1254", +  "iso-ir-148": "windows-1254", +  "iso8859-9": "windows-1254", +  "iso88599": "windows-1254", +  "iso_8859-9": "windows-1254", +  "iso_8859-9:1989": "windows-1254", +  "l5": "windows-1254", +  "latin5": "windows-1254", +  "windows-1254": "windows-1254", +  "x-cp1254": "windows-1254", +  "cp1255": "windows-1255", +  "windows-1255": "windows-1255", +  "x-cp1255": "windows-1255", +  "cp1256": "windows-1256", +  "windows-1256": "windows-1256", +  "x-cp1256": "windows-1256", +  "cp1257": "windows-1257", +  "windows-1257": "windows-1257", +  "x-cp1257": "windows-1257", +  "cp1258": "windows-1258", +  "windows-1258": "windows-1258", +  "x-cp1258": "windows-1258", +  "chinese": "GBK", +  "csgb2312": "GBK", +  "csiso58gb231280": "GBK", +  "gb2312": "GBK", +  "gb_2312": "GBK", +  "gb_2312-80": "GBK", +  "gbk": "GBK", +  "iso-ir-58": "GBK", +  "x-gbk": "GBK", +  "gb18030": "gb18030", +  "big5": "Big5", +  "big5-hkscs": "Big5", +  "cn-big5": "Big5", +  "csbig5": "Big5", +  "x-x-big5": "Big5", +  "cseucpkdfmtjapanese": "EUC-JP", +  "euc-jp": "EUC-JP", +  "x-euc-jp": "EUC-JP", +  "csshiftjis": "Shift_JIS", +  "ms932": "Shift_JIS", +  "ms_kanji": "Shift_JIS", +  "shift-jis": "Shift_JIS", +  "shift_jis": "Shift_JIS", +  "sjis": "Shift_JIS", +  "windows-31j": "Shift_JIS", +  "x-sjis": "Shift_JIS", +  "cseuckr": "EUC-KR", +  "csksc56011987": "EUC-KR", +  "euc-kr": "EUC-KR", +  "iso-ir-149": "EUC-KR", +  "korean": "EUC-KR", +  "ks_c_5601-1987": "EUC-KR", +  "ks_c_5601-1989": "EUC-KR", +  "ksc5601": "EUC-KR", +  "ksc_5601": "EUC-KR", +  "windows-949": "EUC-KR", +  "utf-16be": "UTF-16BE", +  "utf-16": "UTF-16LE", +  "utf-16le": "UTF-16LE" +}
\ No newline at end of file diff --git a/node_modules/whatwg-encoding/lib/supported-names.json b/node_modules/whatwg-encoding/lib/supported-names.json new file mode 100644 index 0000000..bcb282e --- /dev/null +++ b/node_modules/whatwg-encoding/lib/supported-names.json @@ -0,0 +1,37 @@ +[ +  "UTF-8", +  "IBM866", +  "ISO-8859-2", +  "ISO-8859-3", +  "ISO-8859-4", +  "ISO-8859-5", +  "ISO-8859-6", +  "ISO-8859-7", +  "ISO-8859-8", +  "ISO-8859-10", +  "ISO-8859-13", +  "ISO-8859-14", +  "ISO-8859-15", +  "ISO-8859-16", +  "KOI8-R", +  "KOI8-U", +  "macintosh", +  "windows-874", +  "windows-1250", +  "windows-1251", +  "windows-1252", +  "windows-1253", +  "windows-1254", +  "windows-1255", +  "windows-1256", +  "windows-1257", +  "windows-1258", +  "GBK", +  "gb18030", +  "Big5", +  "EUC-JP", +  "Shift_JIS", +  "EUC-KR", +  "UTF-16BE", +  "UTF-16LE" +]
\ No newline at end of file diff --git a/node_modules/whatwg-encoding/lib/whatwg-encoding.js b/node_modules/whatwg-encoding/lib/whatwg-encoding.js new file mode 100644 index 0000000..d04eab5 --- /dev/null +++ b/node_modules/whatwg-encoding/lib/whatwg-encoding.js @@ -0,0 +1,47 @@ +"use strict"; +const iconvLite = require("iconv-lite"); +const supportedNames = require("./supported-names.json"); +const labelsToNames = require("./labels-to-names.json"); + +const supportedNamesSet = new Set(supportedNames); + +// https://encoding.spec.whatwg.org/#concept-encoding-get +exports.labelToName = label => { +  label = String(label).trim().toLowerCase(); + +  return labelsToNames[label] || null; +}; + +// https://encoding.spec.whatwg.org/#decode +exports.decode = (buffer, fallbackEncodingName) => { +  let encoding = fallbackEncodingName; +  if (!exports.isSupported(encoding)) { +    throw new RangeError(`"${encoding}" is not a supported encoding name`); +  } + +  const bomEncoding = exports.getBOMEncoding(buffer); +  if (bomEncoding !== null) { +    encoding = bomEncoding; +  } + +  // iconv-lite will strip BOMs for us, so no need to do the stuff the spec does + +  return iconvLite.decode(buffer, encoding); +}; + +// https://github.com/whatwg/html/issues/1910#issuecomment-254017369 +exports.getBOMEncoding = buffer => { +  if (buffer[0] === 0xFE && buffer[1] === 0xFF) { +    return "UTF-16BE"; +  } else if (buffer[0] === 0xFF && buffer[1] === 0xFE) { +    return "UTF-16LE"; +  } else if (buffer[0] === 0xEF && buffer[1] === 0xBB && buffer[2] === 0xBF) { +    return "UTF-8"; +  } + +  return null; +}; + +exports.isSupported = name => { +  return supportedNamesSet.has(String(name)); +};  | 
