You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
3.9 KiB
77 lines
3.9 KiB
"use strict"; |
|
Object.defineProperty(exports, "__esModule", { value: true }); |
|
exports.isUndefinedCodePoint = exports.isControlCodePoint = exports.getSurrogatePairCodePoint = exports.isSurrogatePair = exports.isSurrogate = exports.SEQUENCES = exports.CODE_POINTS = exports.REPLACEMENT_CHARACTER = void 0; |
|
const UNDEFINED_CODE_POINTS = new Set([ |
|
65534, 65535, 131070, 131071, 196606, 196607, 262142, 262143, 327678, 327679, 393214, |
|
393215, 458750, 458751, 524286, 524287, 589822, 589823, 655358, 655359, 720894, |
|
720895, 786430, 786431, 851966, 851967, 917502, 917503, 983038, 983039, 1048574, |
|
1048575, 1114110, 1114111, |
|
]); |
|
exports.REPLACEMENT_CHARACTER = '\uFFFD'; |
|
var CODE_POINTS; |
|
(function (CODE_POINTS) { |
|
CODE_POINTS[CODE_POINTS["EOF"] = -1] = "EOF"; |
|
CODE_POINTS[CODE_POINTS["NULL"] = 0] = "NULL"; |
|
CODE_POINTS[CODE_POINTS["TABULATION"] = 9] = "TABULATION"; |
|
CODE_POINTS[CODE_POINTS["CARRIAGE_RETURN"] = 13] = "CARRIAGE_RETURN"; |
|
CODE_POINTS[CODE_POINTS["LINE_FEED"] = 10] = "LINE_FEED"; |
|
CODE_POINTS[CODE_POINTS["FORM_FEED"] = 12] = "FORM_FEED"; |
|
CODE_POINTS[CODE_POINTS["SPACE"] = 32] = "SPACE"; |
|
CODE_POINTS[CODE_POINTS["EXCLAMATION_MARK"] = 33] = "EXCLAMATION_MARK"; |
|
CODE_POINTS[CODE_POINTS["QUOTATION_MARK"] = 34] = "QUOTATION_MARK"; |
|
CODE_POINTS[CODE_POINTS["NUMBER_SIGN"] = 35] = "NUMBER_SIGN"; |
|
CODE_POINTS[CODE_POINTS["AMPERSAND"] = 38] = "AMPERSAND"; |
|
CODE_POINTS[CODE_POINTS["APOSTROPHE"] = 39] = "APOSTROPHE"; |
|
CODE_POINTS[CODE_POINTS["HYPHEN_MINUS"] = 45] = "HYPHEN_MINUS"; |
|
CODE_POINTS[CODE_POINTS["SOLIDUS"] = 47] = "SOLIDUS"; |
|
CODE_POINTS[CODE_POINTS["DIGIT_0"] = 48] = "DIGIT_0"; |
|
CODE_POINTS[CODE_POINTS["DIGIT_9"] = 57] = "DIGIT_9"; |
|
CODE_POINTS[CODE_POINTS["SEMICOLON"] = 59] = "SEMICOLON"; |
|
CODE_POINTS[CODE_POINTS["LESS_THAN_SIGN"] = 60] = "LESS_THAN_SIGN"; |
|
CODE_POINTS[CODE_POINTS["EQUALS_SIGN"] = 61] = "EQUALS_SIGN"; |
|
CODE_POINTS[CODE_POINTS["GREATER_THAN_SIGN"] = 62] = "GREATER_THAN_SIGN"; |
|
CODE_POINTS[CODE_POINTS["QUESTION_MARK"] = 63] = "QUESTION_MARK"; |
|
CODE_POINTS[CODE_POINTS["LATIN_CAPITAL_A"] = 65] = "LATIN_CAPITAL_A"; |
|
CODE_POINTS[CODE_POINTS["LATIN_CAPITAL_F"] = 70] = "LATIN_CAPITAL_F"; |
|
CODE_POINTS[CODE_POINTS["LATIN_CAPITAL_X"] = 88] = "LATIN_CAPITAL_X"; |
|
CODE_POINTS[CODE_POINTS["LATIN_CAPITAL_Z"] = 90] = "LATIN_CAPITAL_Z"; |
|
CODE_POINTS[CODE_POINTS["RIGHT_SQUARE_BRACKET"] = 93] = "RIGHT_SQUARE_BRACKET"; |
|
CODE_POINTS[CODE_POINTS["GRAVE_ACCENT"] = 96] = "GRAVE_ACCENT"; |
|
CODE_POINTS[CODE_POINTS["LATIN_SMALL_A"] = 97] = "LATIN_SMALL_A"; |
|
CODE_POINTS[CODE_POINTS["LATIN_SMALL_F"] = 102] = "LATIN_SMALL_F"; |
|
CODE_POINTS[CODE_POINTS["LATIN_SMALL_X"] = 120] = "LATIN_SMALL_X"; |
|
CODE_POINTS[CODE_POINTS["LATIN_SMALL_Z"] = 122] = "LATIN_SMALL_Z"; |
|
CODE_POINTS[CODE_POINTS["REPLACEMENT_CHARACTER"] = 65533] = "REPLACEMENT_CHARACTER"; |
|
})(CODE_POINTS = exports.CODE_POINTS || (exports.CODE_POINTS = {})); |
|
exports.SEQUENCES = { |
|
DASH_DASH: '--', |
|
CDATA_START: '[CDATA[', |
|
DOCTYPE: 'doctype', |
|
SCRIPT: 'script', |
|
PUBLIC: 'public', |
|
SYSTEM: 'system', |
|
}; |
|
//Surrogates |
|
function isSurrogate(cp) { |
|
return cp >= 55296 && cp <= 57343; |
|
} |
|
exports.isSurrogate = isSurrogate; |
|
function isSurrogatePair(cp) { |
|
return cp >= 56320 && cp <= 57343; |
|
} |
|
exports.isSurrogatePair = isSurrogatePair; |
|
function getSurrogatePairCodePoint(cp1, cp2) { |
|
return (cp1 - 55296) * 1024 + 9216 + cp2; |
|
} |
|
exports.getSurrogatePairCodePoint = getSurrogatePairCodePoint; |
|
//NOTE: excluding NULL and ASCII whitespace |
|
function isControlCodePoint(cp) { |
|
return ((cp !== 0x20 && cp !== 0x0a && cp !== 0x0d && cp !== 0x09 && cp !== 0x0c && cp >= 0x01 && cp <= 0x1f) || |
|
(cp >= 0x7f && cp <= 0x9f)); |
|
} |
|
exports.isControlCodePoint = isControlCodePoint; |
|
function isUndefinedCodePoint(cp) { |
|
return (cp >= 64976 && cp <= 65007) || UNDEFINED_CODE_POINTS.has(cp); |
|
} |
|
exports.isUndefinedCodePoint = isUndefinedCodePoint; |
|
//# sourceMappingURL=unicode.js.map
|