diff options
author | RaindropsSys <contact@minteck.org> | 2023-04-06 22:18:28 +0200 |
---|---|---|
committer | RaindropsSys <contact@minteck.org> | 2023-04-06 22:18:28 +0200 |
commit | 83354b2b88218090988dd6e526b0a2505b57e0f1 (patch) | |
tree | e3c73c38a122a78bb7e66fbb99056407edd9d4b9 /includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js | |
parent | 47b8f2299a483024c4a6a8876af825a010954caa (diff) | |
download | pluralconnect-83354b2b88218090988dd6e526b0a2505b57e0f1.tar.gz pluralconnect-83354b2b88218090988dd6e526b0a2505b57e0f1.tar.bz2 pluralconnect-83354b2b88218090988dd6e526b0a2505b57e0f1.zip |
Updated 5 files and added 1110 files (automated)
Diffstat (limited to 'includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js')
-rw-r--r-- | includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js b/includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js new file mode 100644 index 0000000..26e27ce --- /dev/null +++ b/includes/external/addressbook/node_modules/chardet/lib/encoding/iso2022.js @@ -0,0 +1,114 @@ +"use strict"; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ISO_2022_CN = exports.ISO_2022_KR = exports.ISO_2022_JP = void 0; +const match_1 = __importDefault(require("../match")); +class ISO_2022 { + constructor() { + this.escapeSequences = []; + } + name() { + return 'ISO_2022'; + } + match(det) { + let i, j; + let escN; + let hits = 0; + let misses = 0; + let shifts = 0; + let confidence; + const text = det.inputBytes; + const textLen = det.inputLen; + scanInput: for (i = 0; i < textLen; i++) { + if (text[i] == 0x1b) { + checkEscapes: for (escN = 0; escN < this.escapeSequences.length; escN++) { + const seq = this.escapeSequences[escN]; + if (textLen - i < seq.length) + continue checkEscapes; + for (j = 1; j < seq.length; j++) + if (seq[j] != text[i + j]) + continue checkEscapes; + hits++; + i += seq.length - 1; + continue scanInput; + } + misses++; + } + if (text[i] == 0x0e || text[i] == 0x0f) + shifts++; + } + if (hits == 0) + return null; + confidence = (100 * hits - 100 * misses) / (hits + misses); + if (hits + shifts < 5) + confidence -= (5 - (hits + shifts)) * 10; + return confidence <= 0 ? null : (0, match_1.default)(det, this, confidence); + } +} +class ISO_2022_JP extends ISO_2022 { + constructor() { + super(...arguments); + this.escapeSequences = [ + [0x1b, 0x24, 0x28, 0x43], + [0x1b, 0x24, 0x28, 0x44], + [0x1b, 0x24, 0x40], + [0x1b, 0x24, 0x41], + [0x1b, 0x24, 0x42], + [0x1b, 0x26, 0x40], + [0x1b, 0x28, 0x42], + [0x1b, 0x28, 0x48], + [0x1b, 0x28, 0x49], + [0x1b, 0x28, 0x4a], + [0x1b, 0x2e, 0x41], + [0x1b, 0x2e, 0x46], + ]; + } + name() { + return 'ISO-2022-JP'; + } + language() { + return 'ja'; + } +} +exports.ISO_2022_JP = ISO_2022_JP; +class ISO_2022_KR extends ISO_2022 { + constructor() { + super(...arguments); + this.escapeSequences = [[0x1b, 0x24, 0x29, 0x43]]; + } + name() { + return 'ISO-2022-KR'; + } + language() { + return 'kr'; + } +} +exports.ISO_2022_KR = ISO_2022_KR; +class ISO_2022_CN extends ISO_2022 { + constructor() { + super(...arguments); + this.escapeSequences = [ + [0x1b, 0x24, 0x29, 0x41], + [0x1b, 0x24, 0x29, 0x47], + [0x1b, 0x24, 0x2a, 0x48], + [0x1b, 0x24, 0x29, 0x45], + [0x1b, 0x24, 0x2b, 0x49], + [0x1b, 0x24, 0x2b, 0x4a], + [0x1b, 0x24, 0x2b, 0x4b], + [0x1b, 0x24, 0x2b, 0x4c], + [0x1b, 0x24, 0x2b, 0x4d], + [0x1b, 0x4e], + [0x1b, 0x4f], + ]; + } + name() { + return 'ISO-2022-CN'; + } + language() { + return 'zh'; + } +} +exports.ISO_2022_CN = ISO_2022_CN; +//# sourceMappingURL=iso2022.js.map
\ No newline at end of file |