build/56.01e3fc1d.async.js

249 lines
9.1 KiB
JavaScript

(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[56],{
/***/ "PhST":
/*!********************************************************************************!*\
!*** ./node_modules/monaco-editor/esm/vs/basic-languages/markdown/markdown.js ***!
\********************************************************************************/
/*! exports provided: conf, language */
/*! all exports used */
/*! ModuleConcatenation bailout: Module is referenced from these modules with unsupported syntax: ./node_modules/monaco-editor/esm/vs/basic-languages/markdown/markdown.contribution.js (referenced with import()) */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "conf", function() { return conf; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "language", function() { return language; });
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
var conf = {
comments: {
blockComment: ['<!--', '-->']
},
brackets: [
['{', '}'],
['[', ']'],
['(', ')']
],
autoClosingPairs: [
{ open: '{', close: '}' },
{ open: '[', close: ']' },
{ open: '(', close: ')' },
{ open: '<', close: '>', notIn: ['string'] }
],
surroundingPairs: [
{ open: '(', close: ')' },
{ open: '[', close: ']' },
{ open: '`', close: '`' }
],
folding: {
markers: {
start: new RegExp('^\\s*<!--\\s*#?region\\b.*-->'),
end: new RegExp('^\\s*<!--\\s*#?endregion\\b.*-->')
}
}
};
var language = {
defaultToken: '',
tokenPostfix: '.md',
// escape codes
control: /[\\`*_\[\]{}()#+\-\.!]/,
noncontrol: /[^\\`*_\[\]{}()#+\-\.!]/,
escapes: /\\(?:@control)/,
// escape codes for javascript/CSS strings
jsescapes: /\\(?:[btnfr\\"']|[0-7][0-7]?|[0-3][0-7]{2})/,
// non matched elements
empty: [
'area',
'base',
'basefont',
'br',
'col',
'frame',
'hr',
'img',
'input',
'isindex',
'link',
'meta',
'param'
],
tokenizer: {
root: [
// markdown tables
[/^\s*\|/, '@rematch', '@table_header'],
// headers (with #)
[
/^(\s{0,3})(#+)((?:[^\\#]|@escapes)+)((?:#+)?)/,
['white', 'keyword', 'keyword', 'keyword']
],
// headers (with =)
[/^\s*(=+|\-+)\s*$/, 'keyword'],
// headers (with ***)
[/^\s*((\*[ ]?)+)\s*$/, 'meta.separator'],
// quote
[/^\s*>+/, 'comment'],
// list (starting with * or number)
[/^\s*([\*\-+:]|\d+\.)\s/, 'keyword'],
// code block (4 spaces indent)
[/^(\t|[ ]{4})[^ ].*$/, 'string'],
// code block (3 tilde)
[/^\s*~~~\s*((?:\w|[\/\-#])+)?\s*$/, { token: 'string', next: '@codeblock' }],
// github style code blocks (with backticks and language)
[
/^\s*```\s*((?:\w|[\/\-#])+).*$/,
{ token: 'string', next: '@codeblockgh', nextEmbedded: '$1' }
],
// github style code blocks (with backticks but no language)
[/^\s*```\s*$/, { token: 'string', next: '@codeblock' }],
// markup within lines
{ include: '@linecontent' }
],
table_header: [
{ include: '@table_common' },
[/[^\|]+/, 'keyword.table.header'] // table header
],
table_body: [{ include: '@table_common' }, { include: '@linecontent' }],
table_common: [
[/\s*[\-:]+\s*/, { token: 'keyword', switchTo: 'table_body' }],
[/^\s*\|/, 'keyword.table.left'],
[/^\s*[^\|]/, '@rematch', '@pop'],
[/^\s*$/, '@rematch', '@pop'],
[
/\|/,
{
cases: {
'@eos': 'keyword.table.right',
'@default': 'keyword.table.middle' // inner |
}
}
]
],
codeblock: [
[/^\s*~~~\s*$/, { token: 'string', next: '@pop' }],
[/^\s*```\s*$/, { token: 'string', next: '@pop' }],
[/.*$/, 'variable.source']
],
// github style code blocks
codeblockgh: [
[/```\s*$/, { token: 'string', next: '@pop', nextEmbedded: '@pop' }],
[/[^`]+/, 'variable.source']
],
linecontent: [
// escapes
[/&\w+;/, 'string.escape'],
[/@escapes/, 'escape'],
// various markup
[/\b__([^\\_]|@escapes|_(?!_))+__\b/, 'strong'],
[/\*\*([^\\*]|@escapes|\*(?!\*))+\*\*/, 'strong'],
[/\b_[^_]+_\b/, 'emphasis'],
[/\*([^\\*]|@escapes)+\*/, 'emphasis'],
[/`([^\\`]|@escapes)+`/, 'variable'],
// links
[/\{+[^}]+\}+/, 'string.target'],
[/(!?\[)((?:[^\]\\]|@escapes)*)(\]\([^\)]+\))/, ['string.link', '', 'string.link']],
[/(!?\[)((?:[^\]\\]|@escapes)*)(\])/, 'string.link'],
// or html
{ include: 'html' }
],
// Note: it is tempting to rather switch to the real HTML mode instead of building our own here
// but currently there is a limitation in Monarch that prevents us from doing it: The opening
// '<' would start the HTML mode, however there is no way to jump 1 character back to let the
// HTML mode also tokenize the opening angle bracket. Thus, even though we could jump to HTML,
// we cannot correctly tokenize it in that mode yet.
html: [
// html tags
[/<(\w+)\/>/, 'tag'],
[
/<(\w+)/,
{
cases: {
'@empty': { token: 'tag', next: '@tag.$1' },
'@default': { token: 'tag', next: '@tag.$1' }
}
}
],
[/<\/(\w+)\s*>/, { token: 'tag' }],
[/<!--/, 'comment', '@comment']
],
comment: [
[/[^<\-]+/, 'comment.content'],
[/-->/, 'comment', '@pop'],
[/<!--/, 'comment.content.invalid'],
[/[<\-]/, 'comment.content']
],
// Almost full HTML tag matching, complete with embedded scripts & styles
tag: [
[/[ \t\r\n]+/, 'white'],
[
/(type)(\s*=\s*)(")([^"]+)(")/,
[
'attribute.name.html',
'delimiter.html',
'string.html',
{ token: 'string.html', switchTo: '@tag.$S2.$4' },
'string.html'
]
],
[
/(type)(\s*=\s*)(')([^']+)(')/,
[
'attribute.name.html',
'delimiter.html',
'string.html',
{ token: 'string.html', switchTo: '@tag.$S2.$4' },
'string.html'
]
],
[
/(\w+)(\s*=\s*)("[^"]*"|'[^']*')/,
['attribute.name.html', 'delimiter.html', 'string.html']
],
[/\w+/, 'attribute.name.html'],
[/\/>/, 'tag', '@pop'],
[
/>/,
{
cases: {
'$S2==style': {
token: 'tag',
switchTo: 'embeddedStyle',
nextEmbedded: 'text/css'
},
'$S2==script': {
cases: {
$S3: {
token: 'tag',
switchTo: 'embeddedScript',
nextEmbedded: '$S3'
},
'@default': {
token: 'tag',
switchTo: 'embeddedScript',
nextEmbedded: 'text/javascript'
}
}
},
'@default': { token: 'tag', next: '@pop' }
}
}
]
],
embeddedStyle: [
[/[^<]+/, ''],
[/<\/style\s*>/, { token: '@rematch', next: '@pop', nextEmbedded: '@pop' }],
[/</, '']
],
embeddedScript: [
[/[^<]+/, ''],
[/<\/script\s*>/, { token: '@rematch', next: '@pop', nextEmbedded: '@pop' }],
[/</, '']
]
}
};
/***/ })
}]);