summaryrefslogtreecommitdiff
path: root/school/node_modules/whatwg-encoding/lib
diff options
context:
space:
mode:
Diffstat (limited to 'school/node_modules/whatwg-encoding/lib')
-rw-r--r--school/node_modules/whatwg-encoding/lib/labels-to-names.json207
-rw-r--r--school/node_modules/whatwg-encoding/lib/supported-names.json37
-rw-r--r--school/node_modules/whatwg-encoding/lib/whatwg-encoding.js47
3 files changed, 291 insertions, 0 deletions
diff --git a/school/node_modules/whatwg-encoding/lib/labels-to-names.json b/school/node_modules/whatwg-encoding/lib/labels-to-names.json
new file mode 100644
index 0000000..917e657
--- /dev/null
+++ b/school/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/school/node_modules/whatwg-encoding/lib/supported-names.json b/school/node_modules/whatwg-encoding/lib/supported-names.json
new file mode 100644
index 0000000..bcb282e
--- /dev/null
+++ b/school/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/school/node_modules/whatwg-encoding/lib/whatwg-encoding.js b/school/node_modules/whatwg-encoding/lib/whatwg-encoding.js
new file mode 100644
index 0000000..d04eab5
--- /dev/null
+++ b/school/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));
+};