mirror of
https://github.com/fooflington/selfdefined.git
synced 2025-08-06 20:48:35 +00:00
update
This commit is contained in:
6
node_modules/markdown-it/lib/common/entities.js
generated
vendored
Normal file
6
node_modules/markdown-it/lib/common/entities.js
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
// HTML5 entities map: { name -> utf16string }
|
||||
//
|
||||
'use strict';
|
||||
|
||||
/*eslint quotes:0*/
|
||||
module.exports = require('entities/maps/entities.json');
|
71
node_modules/markdown-it/lib/common/html_blocks.js
generated
vendored
Normal file
71
node_modules/markdown-it/lib/common/html_blocks.js
generated
vendored
Normal file
@@ -0,0 +1,71 @@
|
||||
// List of valid html blocks names, accorting to commonmark spec
|
||||
// http://jgm.github.io/CommonMark/spec.html#html-blocks
|
||||
|
||||
'use strict';
|
||||
|
||||
|
||||
module.exports = [
|
||||
'address',
|
||||
'article',
|
||||
'aside',
|
||||
'base',
|
||||
'basefont',
|
||||
'blockquote',
|
||||
'body',
|
||||
'caption',
|
||||
'center',
|
||||
'col',
|
||||
'colgroup',
|
||||
'dd',
|
||||
'details',
|
||||
'dialog',
|
||||
'dir',
|
||||
'div',
|
||||
'dl',
|
||||
'dt',
|
||||
'fieldset',
|
||||
'figcaption',
|
||||
'figure',
|
||||
'footer',
|
||||
'form',
|
||||
'frame',
|
||||
'frameset',
|
||||
'h1',
|
||||
'h2',
|
||||
'h3',
|
||||
'h4',
|
||||
'h5',
|
||||
'h6',
|
||||
'head',
|
||||
'header',
|
||||
'hr',
|
||||
'html',
|
||||
'iframe',
|
||||
'legend',
|
||||
'li',
|
||||
'link',
|
||||
'main',
|
||||
'menu',
|
||||
'menuitem',
|
||||
'meta',
|
||||
'nav',
|
||||
'noframes',
|
||||
'ol',
|
||||
'optgroup',
|
||||
'option',
|
||||
'p',
|
||||
'param',
|
||||
'section',
|
||||
'source',
|
||||
'summary',
|
||||
'table',
|
||||
'tbody',
|
||||
'td',
|
||||
'tfoot',
|
||||
'th',
|
||||
'thead',
|
||||
'title',
|
||||
'tr',
|
||||
'track',
|
||||
'ul'
|
||||
];
|
28
node_modules/markdown-it/lib/common/html_re.js
generated
vendored
Normal file
28
node_modules/markdown-it/lib/common/html_re.js
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
// Regexps to match html elements
|
||||
|
||||
'use strict';
|
||||
|
||||
var attr_name = '[a-zA-Z_:][a-zA-Z0-9:._-]*';
|
||||
|
||||
var unquoted = '[^"\'=<>`\\x00-\\x20]+';
|
||||
var single_quoted = "'[^']*'";
|
||||
var double_quoted = '"[^"]*"';
|
||||
|
||||
var attr_value = '(?:' + unquoted + '|' + single_quoted + '|' + double_quoted + ')';
|
||||
|
||||
var attribute = '(?:\\s+' + attr_name + '(?:\\s*=\\s*' + attr_value + ')?)';
|
||||
|
||||
var open_tag = '<[A-Za-z][A-Za-z0-9\\-]*' + attribute + '*\\s*\\/?>';
|
||||
|
||||
var close_tag = '<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>';
|
||||
var comment = '<!---->|<!--(?:-?[^>-])(?:-?[^-])*-->';
|
||||
var processing = '<[?].*?[?]>';
|
||||
var declaration = '<![A-Z]+\\s+[^>]*>';
|
||||
var cdata = '<!\\[CDATA\\[[\\s\\S]*?\\]\\]>';
|
||||
|
||||
var HTML_TAG_RE = new RegExp('^(?:' + open_tag + '|' + close_tag + '|' + comment +
|
||||
'|' + processing + '|' + declaration + '|' + cdata + ')');
|
||||
var HTML_OPEN_CLOSE_TAG_RE = new RegExp('^(?:' + open_tag + '|' + close_tag + ')');
|
||||
|
||||
module.exports.HTML_TAG_RE = HTML_TAG_RE;
|
||||
module.exports.HTML_OPEN_CLOSE_TAG_RE = HTML_OPEN_CLOSE_TAG_RE;
|
275
node_modules/markdown-it/lib/common/utils.js
generated
vendored
Normal file
275
node_modules/markdown-it/lib/common/utils.js
generated
vendored
Normal file
@@ -0,0 +1,275 @@
|
||||
// Utilities
|
||||
//
|
||||
'use strict';
|
||||
|
||||
|
||||
function _class(obj) { return Object.prototype.toString.call(obj); }
|
||||
|
||||
function isString(obj) { return _class(obj) === '[object String]'; }
|
||||
|
||||
var _hasOwnProperty = Object.prototype.hasOwnProperty;
|
||||
|
||||
function has(object, key) {
|
||||
return _hasOwnProperty.call(object, key);
|
||||
}
|
||||
|
||||
// Merge objects
|
||||
//
|
||||
function assign(obj /*from1, from2, from3, ...*/) {
|
||||
var sources = Array.prototype.slice.call(arguments, 1);
|
||||
|
||||
sources.forEach(function (source) {
|
||||
if (!source) { return; }
|
||||
|
||||
if (typeof source !== 'object') {
|
||||
throw new TypeError(source + 'must be object');
|
||||
}
|
||||
|
||||
Object.keys(source).forEach(function (key) {
|
||||
obj[key] = source[key];
|
||||
});
|
||||
});
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
||||
// Remove element from array and put another array at those position.
|
||||
// Useful for some operations with tokens
|
||||
function arrayReplaceAt(src, pos, newElements) {
|
||||
return [].concat(src.slice(0, pos), newElements, src.slice(pos + 1));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
function isValidEntityCode(c) {
|
||||
/*eslint no-bitwise:0*/
|
||||
// broken sequence
|
||||
if (c >= 0xD800 && c <= 0xDFFF) { return false; }
|
||||
// never used
|
||||
if (c >= 0xFDD0 && c <= 0xFDEF) { return false; }
|
||||
if ((c & 0xFFFF) === 0xFFFF || (c & 0xFFFF) === 0xFFFE) { return false; }
|
||||
// control codes
|
||||
if (c >= 0x00 && c <= 0x08) { return false; }
|
||||
if (c === 0x0B) { return false; }
|
||||
if (c >= 0x0E && c <= 0x1F) { return false; }
|
||||
if (c >= 0x7F && c <= 0x9F) { return false; }
|
||||
// out of range
|
||||
if (c > 0x10FFFF) { return false; }
|
||||
return true;
|
||||
}
|
||||
|
||||
function fromCodePoint(c) {
|
||||
/*eslint no-bitwise:0*/
|
||||
if (c > 0xffff) {
|
||||
c -= 0x10000;
|
||||
var surrogate1 = 0xd800 + (c >> 10),
|
||||
surrogate2 = 0xdc00 + (c & 0x3ff);
|
||||
|
||||
return String.fromCharCode(surrogate1, surrogate2);
|
||||
}
|
||||
return String.fromCharCode(c);
|
||||
}
|
||||
|
||||
|
||||
var UNESCAPE_MD_RE = /\\([!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~])/g;
|
||||
var ENTITY_RE = /&([a-z#][a-z0-9]{1,31});/gi;
|
||||
var UNESCAPE_ALL_RE = new RegExp(UNESCAPE_MD_RE.source + '|' + ENTITY_RE.source, 'gi');
|
||||
|
||||
var DIGITAL_ENTITY_TEST_RE = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i;
|
||||
|
||||
var entities = require('./entities');
|
||||
|
||||
function replaceEntityPattern(match, name) {
|
||||
var code = 0;
|
||||
|
||||
if (has(entities, name)) {
|
||||
return entities[name];
|
||||
}
|
||||
|
||||
if (name.charCodeAt(0) === 0x23/* # */ && DIGITAL_ENTITY_TEST_RE.test(name)) {
|
||||
code = name[1].toLowerCase() === 'x' ?
|
||||
parseInt(name.slice(2), 16)
|
||||
:
|
||||
parseInt(name.slice(1), 10);
|
||||
if (isValidEntityCode(code)) {
|
||||
return fromCodePoint(code);
|
||||
}
|
||||
}
|
||||
|
||||
return match;
|
||||
}
|
||||
|
||||
/*function replaceEntities(str) {
|
||||
if (str.indexOf('&') < 0) { return str; }
|
||||
|
||||
return str.replace(ENTITY_RE, replaceEntityPattern);
|
||||
}*/
|
||||
|
||||
function unescapeMd(str) {
|
||||
if (str.indexOf('\\') < 0) { return str; }
|
||||
return str.replace(UNESCAPE_MD_RE, '$1');
|
||||
}
|
||||
|
||||
function unescapeAll(str) {
|
||||
if (str.indexOf('\\') < 0 && str.indexOf('&') < 0) { return str; }
|
||||
|
||||
return str.replace(UNESCAPE_ALL_RE, function (match, escaped, entity) {
|
||||
if (escaped) { return escaped; }
|
||||
return replaceEntityPattern(match, entity);
|
||||
});
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var HTML_ESCAPE_TEST_RE = /[&<>"]/;
|
||||
var HTML_ESCAPE_REPLACE_RE = /[&<>"]/g;
|
||||
var HTML_REPLACEMENTS = {
|
||||
'&': '&',
|
||||
'<': '<',
|
||||
'>': '>',
|
||||
'"': '"'
|
||||
};
|
||||
|
||||
function replaceUnsafeChar(ch) {
|
||||
return HTML_REPLACEMENTS[ch];
|
||||
}
|
||||
|
||||
function escapeHtml(str) {
|
||||
if (HTML_ESCAPE_TEST_RE.test(str)) {
|
||||
return str.replace(HTML_ESCAPE_REPLACE_RE, replaceUnsafeChar);
|
||||
}
|
||||
return str;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
var REGEXP_ESCAPE_RE = /[.?*+^$[\]\\(){}|-]/g;
|
||||
|
||||
function escapeRE(str) {
|
||||
return str.replace(REGEXP_ESCAPE_RE, '\\$&');
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
function isSpace(code) {
|
||||
switch (code) {
|
||||
case 0x09:
|
||||
case 0x20:
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// Zs (unicode class) || [\t\f\v\r\n]
|
||||
function isWhiteSpace(code) {
|
||||
if (code >= 0x2000 && code <= 0x200A) { return true; }
|
||||
switch (code) {
|
||||
case 0x09: // \t
|
||||
case 0x0A: // \n
|
||||
case 0x0B: // \v
|
||||
case 0x0C: // \f
|
||||
case 0x0D: // \r
|
||||
case 0x20:
|
||||
case 0xA0:
|
||||
case 0x1680:
|
||||
case 0x202F:
|
||||
case 0x205F:
|
||||
case 0x3000:
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
/*eslint-disable max-len*/
|
||||
var UNICODE_PUNCT_RE = require('uc.micro/categories/P/regex');
|
||||
|
||||
// Currently without astral characters support.
|
||||
function isPunctChar(ch) {
|
||||
return UNICODE_PUNCT_RE.test(ch);
|
||||
}
|
||||
|
||||
|
||||
// Markdown ASCII punctuation characters.
|
||||
//
|
||||
// !, ", #, $, %, &, ', (, ), *, +, ,, -, ., /, :, ;, <, =, >, ?, @, [, \, ], ^, _, `, {, |, }, or ~
|
||||
// http://spec.commonmark.org/0.15/#ascii-punctuation-character
|
||||
//
|
||||
// Don't confuse with unicode punctuation !!! It lacks some chars in ascii range.
|
||||
//
|
||||
function isMdAsciiPunct(ch) {
|
||||
switch (ch) {
|
||||
case 0x21/* ! */:
|
||||
case 0x22/* " */:
|
||||
case 0x23/* # */:
|
||||
case 0x24/* $ */:
|
||||
case 0x25/* % */:
|
||||
case 0x26/* & */:
|
||||
case 0x27/* ' */:
|
||||
case 0x28/* ( */:
|
||||
case 0x29/* ) */:
|
||||
case 0x2A/* * */:
|
||||
case 0x2B/* + */:
|
||||
case 0x2C/* , */:
|
||||
case 0x2D/* - */:
|
||||
case 0x2E/* . */:
|
||||
case 0x2F/* / */:
|
||||
case 0x3A/* : */:
|
||||
case 0x3B/* ; */:
|
||||
case 0x3C/* < */:
|
||||
case 0x3D/* = */:
|
||||
case 0x3E/* > */:
|
||||
case 0x3F/* ? */:
|
||||
case 0x40/* @ */:
|
||||
case 0x5B/* [ */:
|
||||
case 0x5C/* \ */:
|
||||
case 0x5D/* ] */:
|
||||
case 0x5E/* ^ */:
|
||||
case 0x5F/* _ */:
|
||||
case 0x60/* ` */:
|
||||
case 0x7B/* { */:
|
||||
case 0x7C/* | */:
|
||||
case 0x7D/* } */:
|
||||
case 0x7E/* ~ */:
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Hepler to unify [reference labels].
|
||||
//
|
||||
function normalizeReference(str) {
|
||||
// use .toUpperCase() instead of .toLowerCase()
|
||||
// here to avoid a conflict with Object.prototype
|
||||
// members (most notably, `__proto__`)
|
||||
return str.trim().replace(/\s+/g, ' ').toUpperCase();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Re-export libraries commonly used in both markdown-it and its plugins,
|
||||
// so plugins won't have to depend on them explicitly, which reduces their
|
||||
// bundled size (e.g. a browser build).
|
||||
//
|
||||
exports.lib = {};
|
||||
exports.lib.mdurl = require('mdurl');
|
||||
exports.lib.ucmicro = require('uc.micro');
|
||||
|
||||
exports.assign = assign;
|
||||
exports.isString = isString;
|
||||
exports.has = has;
|
||||
exports.unescapeMd = unescapeMd;
|
||||
exports.unescapeAll = unescapeAll;
|
||||
exports.isValidEntityCode = isValidEntityCode;
|
||||
exports.fromCodePoint = fromCodePoint;
|
||||
// exports.replaceEntities = replaceEntities;
|
||||
exports.escapeHtml = escapeHtml;
|
||||
exports.arrayReplaceAt = arrayReplaceAt;
|
||||
exports.isSpace = isSpace;
|
||||
exports.isWhiteSpace = isWhiteSpace;
|
||||
exports.isMdAsciiPunct = isMdAsciiPunct;
|
||||
exports.isPunctChar = isPunctChar;
|
||||
exports.escapeRE = escapeRE;
|
||||
exports.normalizeReference = normalizeReference;
|
Reference in New Issue
Block a user