@vue/devtools-electron 7.0.14 → 7.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/assets/{html-NT1OIsSF.js → html-KTYx-Ibi.js} +1 -1
- package/client/assets/index-1Frwp5tw.css +1 -0
- package/client/assets/{index-KXVUFBYX.js → index-pUxGHMED.js} +78 -78
- package/client/assets/{javascript-4rbEI_qn.js → javascript-JMZ6uy5M.js} +1 -1
- package/client/assets/{typescript-IWNmnGsa.js → typescript-HpdcmTOD.js} +1 -1
- package/client/assets/unocss-runtime-BUS5ojC8.js +2 -0
- package/client/assets/{vue-YzhXM3IG.js → vue-Wn5yI_YW.js} +8 -8
- package/client/assets/{vue-html-K7eG1nl_.js → vue-html-eZW7UT2w.js} +1 -1
- package/client/devtools-panel.css +1 -1
- package/client/devtools-panel.js +13206 -12940
- package/client/{html-WFjUqgJ3.js → html-5TX0KzMQ.js} +1 -1
- package/client/index.html +2 -2
- package/client/{javascript-_oSuCsY2.js → javascript-ewd2r-0o.js} +1 -1
- package/client/{typescript-Pt1W475c.js → typescript-Uom77LgO.js} +1 -1
- package/client/{unocss-runtime-Pdo20xvb.js → unocss-runtime-m4smMc_S.js} +597 -595
- package/client/{vue-CJRD3BeY.js → vue--7M_SvxI.js} +30 -24
- package/client/{vue-html-9E-FEOoO.js → vue-html-GGnAavHU.js} +4 -9
- package/dist/devtools.js +174 -174
- package/dist/index.cjs +68 -68
- package/dist/index.js +68 -68
- package/dist/user-app.cjs +68 -68
- package/dist/user-app.iife.js +69 -69
- package/dist/user-app.js +68 -68
- package/package.json +7 -7
- package/client/assets/index-fx3Lb9Fg.css +0 -1
- package/client/assets/unocss-runtime-TAqnQCrJ.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import t from "./javascript-
|
|
1
|
+
import t from "./javascript-ewd2r-0o.js";
|
|
2
2
|
import e from "./css-FzZ_BjSq.js";
|
|
3
3
|
const n = Object.freeze({ displayName: "HTML", injections: { "R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)": { comment: "Uses R: to ensure this matches after any other injections.", patterns: [{ match: "<", name: "invalid.illegal.bad-angle-bracket.html" }] } }, name: "html", patterns: [{ include: "#xml-processing" }, { include: "#comment" }, { include: "#doctype" }, { include: "#cdata" }, { include: "#tags-valid" }, { include: "#tags-invalid" }, { include: "#entities" }], repository: { attribute: { patterns: [{ begin: "(s(hape|cope|t(ep|art)|ize(s)?|p(ellcheck|an)|elected|lot|andbox|rc(set|doc|lang)?)|h(ttp-equiv|i(dden|gh)|e(ight|aders)|ref(lang)?)|n(o(nce|validate|module)|ame)|c(h(ecked|arset)|ite|o(nt(ent(editable)?|rols)|ords|l(s(pan)?|or))|lass|rossorigin)|t(ype(mustmatch)?|itle|a(rget|bindex)|ranslate)|i(s(map)?|n(tegrity|putmode)|tem(scope|type|id|prop|ref)|d)|op(timum|en)|d(i(sabled|r(name)?)|ownload|e(coding|f(er|ault))|at(etime|a)|raggable)|usemap|p(ing|oster|la(ysinline|ceholder)|attern|reload)|enctype|value|kind|for(m(novalidate|target|enctype|action|method)?)?|w(idth|rap)|l(ist|o(op|w)|a(ng|bel))|a(s(ync)?|c(ce(sskey|pt(-charset)?)|tion)|uto(c(omplete|apitalize)|play|focus)|l(t|low(usermedia|paymentrequest|fullscreen))|bbr)|r(ows(pan)?|e(versed|quired|ferrerpolicy|l|adonly))|m(in(length)?|u(ted|ltiple)|e(thod|dia)|a(nifest|x(length)?)))(?![\\w:-])", beginCaptures: { 0: { name: "entity.other.attribute-name.html" } }, comment: "HTML5 attributes, not event handlers", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.$1.html", patterns: [{ include: "#attribute-interior" }] }, { begin: "style(?![\\w:-])", beginCaptures: { 0: { name: "entity.other.attribute-name.html" } }, comment: "HTML5 style attribute", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.style.html", patterns: [{ begin: "=", beginCaptures: { 0: { name: "punctuation.separator.key-value.html" } }, end: "(?<=[^\\s=])(?!\\s*=)|(?=/?>)", patterns: [{ begin: "(?=[^\\s=<>`/]|/(?!>))", end: "(?!\\G)", name: "meta.embedded.line.css", patterns: [{ captures: { 0: { name: "source.css" } }, match: "([^\\s\"'=<>`/]|/(?!>))+", name: "string.unquoted.html" }, { begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, contentName: "source.css", end: '(")', endCaptures: { 0: { name: "punctuation.definition.string.end.html" }, 1: { name: "source.css" } }, name: "string.quoted.double.html", patterns: [{ include: "#entities" }] }, { begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, contentName: "source.css", end: "(')", endCaptures: { 0: { name: "punctuation.definition.string.end.html" }, 1: { name: "source.css" } }, name: "string.quoted.single.html", patterns: [{ include: "#entities" }] }] }, { match: "=", name: "invalid.illegal.unexpected-equals-sign.html" }] }] }, { begin: "on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur))(?![\\w:-])", beginCaptures: { 0: { name: "entity.other.attribute-name.html" } }, comment: "HTML5 attributes, event handlers", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.event-handler.$1.html", patterns: [{ begin: "=", beginCaptures: { 0: { name: "punctuation.separator.key-value.html" } }, end: "(?<=[^\\s=])(?!\\s*=)|(?=/?>)", patterns: [{ begin: "(?=[^\\s=<>`/]|/(?!>))", end: "(?!\\G)", name: "meta.embedded.line.js", patterns: [{ captures: { 0: { name: "source.js" }, 1: { patterns: [{ include: "source.js" }] } }, match: "(([^\\s\"'=<>`/]|/(?!>))+)", name: "string.unquoted.html" }, { begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, contentName: "source.js", end: '(")', endCaptures: { 0: { name: "punctuation.definition.string.end.html" }, 1: { name: "source.js" } }, name: "string.quoted.double.html", patterns: [{ captures: { 0: { patterns: [{ include: "source.js" }] } }, match: '([^\\n"/]|/(?![/*]))+' }, { begin: "//", beginCaptures: { 0: { name: "punctuation.definition.comment.js" } }, end: '(?=")|\\n', name: "comment.line.double-slash.js" }, { begin: "/\\*", beginCaptures: { 0: { name: "punctuation.definition.comment.begin.js" } }, end: '(?=")|\\*/', endCaptures: { 0: { name: "punctuation.definition.comment.end.js" } }, name: "comment.block.js" }] }, { begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, contentName: "source.js", end: "(')", endCaptures: { 0: { name: "punctuation.definition.string.end.html" }, 1: { name: "source.js" } }, name: "string.quoted.single.html", patterns: [{ captures: { 0: { patterns: [{ include: "source.js" }] } }, match: "([^\\n'/]|/(?![/*]))+" }, { begin: "//", beginCaptures: { 0: { name: "punctuation.definition.comment.js" } }, end: "(?=')|\\n", name: "comment.line.double-slash.js" }, { begin: "/\\*", beginCaptures: { 0: { name: "punctuation.definition.comment.begin.js" } }, end: "(?=')|\\*/", endCaptures: { 0: { name: "punctuation.definition.comment.end.js" } }, name: "comment.block.js" }] }] }, { match: "=", name: "invalid.illegal.unexpected-equals-sign.html" }] }] }, { begin: "(data-[a-z\\-]+)(?![\\w:-])", beginCaptures: { 0: { name: "entity.other.attribute-name.html" } }, comment: "HTML5 attributes, data-*", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.data-x.$1.html", patterns: [{ include: "#attribute-interior" }] }, { begin: "(align|bgcolor|border)(?![\\w:-])", beginCaptures: { 0: { name: "invalid.deprecated.entity.other.attribute-name.html" } }, comment: "HTML attributes, deprecated", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.$1.html", patterns: [{ include: "#attribute-interior" }] }, { begin: `([^\\x{0020}"'<>/=\\x{0000}-\\x{001F}\\x{007F}-\\x{009F}\\x{FDD0}-\\x{FDEF}\\x{FFFE}\\x{FFFF}\\x{1FFFE}\\x{1FFFF}\\x{2FFFE}\\x{2FFFF}\\x{3FFFE}\\x{3FFFF}\\x{4FFFE}\\x{4FFFF}\\x{5FFFE}\\x{5FFFF}\\x{6FFFE}\\x{6FFFF}\\x{7FFFE}\\x{7FFFF}\\x{8FFFE}\\x{8FFFF}\\x{9FFFE}\\x{9FFFF}\\x{AFFFE}\\x{AFFFF}\\x{BFFFE}\\x{BFFFF}\\x{CFFFE}\\x{CFFFF}\\x{DFFFE}\\x{DFFFF}\\x{EFFFE}\\x{EFFFF}\\x{FFFFE}\\x{FFFFF}\\x{10FFFE}\\x{10FFFF}]+)`, beginCaptures: { 0: { name: "entity.other.attribute-name.html" } }, comment: "Anything else that is valid", end: "(?=\\s*+[^=\\s])", name: "meta.attribute.unrecognized.$1.html", patterns: [{ include: "#attribute-interior" }] }, { match: "[^\\s>]+", name: "invalid.illegal.character-not-allowed-here.html" }] }, "attribute-interior": { patterns: [{ begin: "=", beginCaptures: { 0: { name: "punctuation.separator.key-value.html" } }, end: "(?<=[^\\s=])(?!\\s*=)|(?=/?>)", patterns: [{ match: "([^\\s\"'=<>`/]|/(?!>))+", name: "string.unquoted.html" }, { begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, end: '"', endCaptures: { 0: { name: "punctuation.definition.string.end.html" } }, name: "string.quoted.double.html", patterns: [{ include: "#entities" }] }, { begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.html" } }, end: "'", endCaptures: { 0: { name: "punctuation.definition.string.end.html" } }, name: "string.quoted.single.html", patterns: [{ include: "#entities" }] }, { match: "=", name: "invalid.illegal.unexpected-equals-sign.html" }] }] }, cdata: { begin: "<!\\[CDATA\\[", beginCaptures: { 0: { name: "punctuation.definition.tag.begin.html" } }, contentName: "string.other.inline-data.html", end: "]]>", endCaptures: { 0: { name: "punctuation.definition.tag.end.html" } }, name: "meta.tag.metadata.cdata.html" }, comment: { begin: "<!--", captures: { 0: { name: "punctuation.definition.comment.html" } }, end: "-->", name: "comment.block.html", patterns: [{ match: "\\G-?>", name: "invalid.illegal.characters-not-allowed-here.html" }, { match: "<!--(?!>)|<!-(?=-->)", name: "invalid.illegal.characters-not-allowed-here.html" }, { match: "--!>", name: "invalid.illegal.characters-not-allowed-here.html" }] }, "core-minus-invalid": { comment: "This should be the root pattern array includes minus #tags-invalid", patterns: [{ include: "#xml-processing" }, { include: "#comment" }, { include: "#doctype" }, { include: "#cdata" }, { include: "#tags-valid" }, { include: "#entities" }] }, doctype: { begin: "<!(?=(?i:DOCTYPE\\s))", beginCaptures: { 0: { name: "punctuation.definition.tag.begin.html" } }, end: ">", endCaptures: { 0: { name: "punctuation.definition.tag.end.html" } }, name: "meta.tag.metadata.doctype.html", patterns: [{ match: "\\G(?i:DOCTYPE)", name: "entity.name.tag.html" }, { begin: '"', end: '"', name: "string.quoted.double.html" }, { match: "[^\\s>]+", name: "entity.other.attribute-name.html" }] }, entities: { patterns: [{ captures: { 1: { name: "punctuation.definition.entity.html" }, 912: { name: "punctuation.definition.entity.html" } }, comment: "Yes this is a bit ridiculous, there are quite a lot of these", match: `(?x)
|
|
4
4
|
(&) (?=[a-zA-Z])
|
package/client/index.html
CHANGED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
<link rel="icon" href="./logo.svg" type="image/svg+xml" />
|
|
7
7
|
<title>Vue DevTools Client</title>
|
|
8
8
|
<script src="./color-scheme.js"></script>
|
|
9
|
-
<script type="module" crossorigin src="./assets/index-
|
|
10
|
-
<link rel="stylesheet" crossorigin href="./assets/index-
|
|
9
|
+
<script type="module" crossorigin src="./assets/index-pUxGHMED.js"></script>
|
|
10
|
+
<link rel="stylesheet" crossorigin href="./assets/index-1Frwp5tw.css">
|
|
11
11
|
</head>
|
|
12
12
|
<body>
|
|
13
13
|
<div id="app"></div>
|
|
@@ -319,7 +319,7 @@ https?://
|
|
|
319
319
|
\\s*=>
|
|
320
320
|
)
|
|
321
321
|
))
|
|
322
|
-
))` }, { captures: { 1: { name: "punctuation.accessor.js" }, 2: { name: "punctuation.accessor.optional.js" }, 3: { name: "variable.other.constant.property.js" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])" }, { captures: { 1: { name: "punctuation.accessor.js" }, 2: { name: "punctuation.accessor.optional.js" }, 3: { name: "variable.other.property.js" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[_$[:alpha:]][_$[:alnum:]]*)" }, { match: "([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])", name: "variable.other.constant.js" }, { match: "[_$[:alpha:]][_$[:alnum:]]*", name: "variable.other.readwrite.js" }] }, "if-statement": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?=\\bif\\s*(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))\\s*(?!\\{))", end: "(?=;|$|\\})", patterns: [{ include: "#comment" }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(if)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.conditional.js" }, 2: { name: "meta.brace.round.js" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.js" } }, patterns: [{ include: "#expression" }] }, { begin: "(?<=\\))\\s*\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)*\\])+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: "(/)([dgimsuy]*)", endCaptures: { 1: { name: "punctuation.definition.string.end.js" }, 2: { name: "keyword.other.js" } }, name: "string.regexp.js", patterns: [{ include: "#regexp" }] }, { include: "#statements" }] }] }, "import-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type)(?!\\s+from))?(?!\\s*[:\\(])(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" } }, end: "(?<!^import|[^\\._$[:alnum:]]import)(?=;|$|^)", name: "meta.import.js", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { include: "#string" }, { begin: `(?<=^import|[^\\._$[:alnum:]]import)(?!\\s*["'])`, end: "\\bfrom\\b", endCaptures: { 0: { name: "keyword.control.from.js" } }, patterns: [{ include: "#import-export-declaration" }] }, { include: "#import-export-declaration" }] }, "import-equals-declaration": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(require)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" }, 5: { name: "variable.other.readwrite.alias.js" }, 6: { name: "keyword.operator.assignment.js" }, 7: { name: "keyword.control.require.js" }, 8: { name: "meta.brace.round.js" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.js" } }, name: "meta.import-equals.external.js", patterns: [{ include: "#comment" }, { include: "#string" }] }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(?!require\\b)", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" }, 5: { name: "variable.other.readwrite.alias.js" }, 6: { name: "keyword.operator.assignment.js" } }, end: "(?=;|$|^)", name: "meta.import-equals.internal.js", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { captures: { 1: { name: "entity.name.type.module.js" }, 2: { name: "punctuation.accessor.js" }, 3: { name: "punctuation.accessor.optional.js" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))" }, { match: "([_$[:alpha:]][_$[:alnum:]]*)", name: "variable.other.readwrite.js" }] }] }, "import-export-assert-clause": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(assert)\\s*(\\{)", beginCaptures: { 1: { name: "keyword.control.assert.js" }, 2: { name: "punctuation.definition.block.js" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.js" } }, patterns: [{ include: "#comment" }, { include: "#string" }, { match: "(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*:)", name: "meta.object-literal.key.js" }, { match: ":", name: "punctuation.separator.key-value.js" }] }, "import-export-block": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.definition.block.js" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.js" } }, name: "meta.block.js", patterns: [{ include: "#import-export-clause" }] }, "import-export-clause": { patterns: [{ include: "#comment" }, { captures: { 1: { name: "keyword.control.type.js" }, 2: { name: "keyword.control.default.js" }, 3: { name: "constant.language.import-export-all.js" }, 4: { name: "variable.other.readwrite.js" }, 5: { name: "keyword.control.as.js" }, 6: { name: "keyword.control.default.js" }, 7: { name: "variable.other.readwrite.alias.js" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(?:(\\btype)\\s+)?(?:(\\bdefault)|(\\*)|(\\b[_$[:alpha:]][_$[:alnum:]]*)))\\s+(as)\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|([_$[:alpha:]][_$[:alnum:]]*))" }, { include: "#punctuation-comma" }, { match: "\\*", name: "constant.language.import-export-all.js" }, { match: "\\b(default)\\b", name: "keyword.control.default.js" }, { captures: { 1: { name: "keyword.control.type.js" }, 2: { name: "variable.other.readwrite.alias.js" } }, match: "(?:(\\btype)\\s+)?([_$[:alpha:]][_$[:alnum:]]*)" }] }, "import-export-declaration": { patterns: [{ include: "#comment" }, { include: "#string" }, { include: "#import-export-block" }, { match: "\\bfrom\\b", name: "keyword.control.from.js" }, { include: "#import-export-assert-clause" }, { include: "#import-export-clause" }] }, "indexer-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:)", beginCaptures: { 1: { name: "storage.modifier.js" }, 2: { name: "meta.brace.square.js" }, 3: { name: "variable.parameter.js" } }, end: "(\\])\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.js" }, 2: { name: "keyword.operator.optional.js" } }, name: "meta.indexer.declaration.js", patterns: [{ include: "#type-annotation" }] }, "indexer-mapped-type-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))([+-])?(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s+(in)\\s+", beginCaptures: { 1: { name: "keyword.operator.type.modifier.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "meta.brace.square.js" }, 4: { name: "entity.name.type.js" }, 5: { name: "keyword.operator.expression.in.js" } }, end: "(\\])([+-])?\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.js" }, 2: { name: "keyword.operator.type.modifier.js" }, 3: { name: "keyword.operator.optional.js" } }, name: "meta.indexer.mappedtype.declaration.js", patterns: [{ captures: { 1: { name: "keyword.control.as.js" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(as)\\s+" }, { include: "#type" }] }, "inline-tags": { patterns: [{ captures: { 1: { name: "punctuation.definition.bracket.square.begin.jsdoc" }, 2: { name: "punctuation.definition.bracket.square.end.jsdoc" } }, match: "(\\[)[^\\]]+(\\])(?={@(?:link|linkcode|linkplain|tutorial))", name: "constant.other.description.jsdoc" }, { begin: "({)((@)(?:link(?:code|plain)?|tutorial))\\s*", beginCaptures: { 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" }, 2: { name: "storage.type.class.jsdoc" }, 3: { name: "punctuation.definition.inline.tag.jsdoc" } }, end: "}|(?=\\*/)", endCaptures: { 0: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, name: "entity.name.type.instance.jsdoc", patterns: [{ captures: { 1: { name: "variable.other.link.underline.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?=https?://)(?:[^|}\\s*]|\\*[/])+)(\\|)?" }, { captures: { 1: { name: "variable.other.description.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?:[^{}@\\s|*]|\\*[^/])+)(\\|)?" }] }] }, "instanceof-expr": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.operator.expression.instanceof.js" } }, end: "(?<=\\))|(?=[;),}\\]:?\\-\\+\\>]|\\|\\||\\&\\&|\\!\\=\\=|$|(===|!==|==|!=)|(([\\&\\~\\^\\|]\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\s+instanceof(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|((?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))function((\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\s*[\\(]))))", patterns: [{ include: "#type" }] }, "interface-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(?:(abstract)\\s+)?\\b(interface)\\b(?=\\s+|/[/*])", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "storage.modifier.js" }, 4: { name: "storage.type.interface.js" } }, end: "(?<=\\})", name: "meta.interface.js", patterns: [{ include: "#comment" }, { include: "#class-or-interface-heritage" }, { captures: { 0: { name: "entity.name.type.interface.js" } }, match: "[_$[:alpha:]][_$[:alnum:]]*" }, { include: "#type-parameters" }, { include: "#class-or-interface-body" }] }, jsdoctype: { patterns: [{ begin: "\\G({)", beginCaptures: { 0: { name: "entity.name.type.instance.jsdoc" }, 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" } }, contentName: "entity.name.type.instance.jsdoc", end: "((}))\\s*|(?=\\*/)", endCaptures: { 1: { name: "entity.name.type.instance.jsdoc" }, 2: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, patterns: [{ include: "#brackets" }] }] }, jsx: { patterns: [{ include: "#jsx-tag-without-attributes-in-expression" }, { include: "#jsx-tag-in-expression" }] }, "jsx-children": { patterns: [{ include: "#jsx-tag-without-attributes" }, { include: "#jsx-tag" }, { include: "#jsx-evaluated-code" }, { include: "#jsx-entities" }] }, "jsx-entities": { patterns: [{ captures: { 1: { name: "punctuation.definition.entity.js" }, 3: { name: "punctuation.definition.entity.js" } }, match: "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)", name: "constant.character.entity.js" }] }, "jsx-evaluated-code": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.section.embedded.begin.js" } }, contentName: "meta.embedded.expression.js", end: "\\}", endCaptures: { 0: { name: "punctuation.section.embedded.end.js" } }, patterns: [{ include: "#expression" }] }, "jsx-string-double-quoted": { begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: '"', endCaptures: { 0: { name: "punctuation.definition.string.end.js" } }, name: "string.quoted.double.js", patterns: [{ include: "#jsx-entities" }] }, "jsx-string-single-quoted": { begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: "'", endCaptures: { 0: { name: "punctuation.definition.string.end.js" } }, name: "string.quoted.single.js", patterns: [{ include: "#jsx-entities" }] }, "jsx-tag": { begin: "(?=(<)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))(?=((<\\s*)|(\\s+))(?!\\?)|\\/?>))", end: "(/>)|(?:(</)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))?\\s*(>))", endCaptures: { 1: { name: "punctuation.definition.tag.end.js" }, 2: { name: "punctuation.definition.tag.begin.js" }, 3: { name: "entity.name.tag.namespace.js" }, 4: { name: "punctuation.separator.namespace.js" }, 5: { name: "entity.name.tag.js" }, 6: { name: "support.class.component.js" }, 7: { name: "punctuation.definition.tag.end.js" } }, name: "meta.tag.js", patterns: [{ begin: "(<)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))(?=((<\\s*)|(\\s+))(?!\\?)|\\/?>)", beginCaptures: { 1: { name: "punctuation.definition.tag.begin.js" }, 2: { name: "entity.name.tag.namespace.js" }, 3: { name: "punctuation.separator.namespace.js" }, 4: { name: "entity.name.tag.js" }, 5: { name: "support.class.component.js" } }, end: "(?=[/]?>)", patterns: [{ include: "#comment" }, { include: "#type-arguments" }, { include: "#jsx-tag-attributes" }] }, { begin: "(>)", beginCaptures: { 1: { name: "punctuation.definition.tag.end.js" } }, contentName: "meta.jsx.children.js", end: "(?=</)", patterns: [{ include: "#jsx-children" }] }] }, "jsx-tag-attribute-assignment": { match: `=(?=\\s*(?:'|"|{|/\\*|//|\\n))`, name: "keyword.operator.assignment.js" }, "jsx-tag-attribute-name": { captures: { 1: { name: "entity.other.attribute-name.namespace.js" }, 2: { name: "punctuation.separator.namespace.js" }, 3: { name: "entity.other.attribute-name.js" } }, match: `(?x)
|
|
322
|
+
))` }, { captures: { 1: { name: "punctuation.accessor.js" }, 2: { name: "punctuation.accessor.optional.js" }, 3: { name: "variable.other.constant.property.js" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])" }, { captures: { 1: { name: "punctuation.accessor.js" }, 2: { name: "punctuation.accessor.optional.js" }, 3: { name: "variable.other.property.js" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[_$[:alpha:]][_$[:alnum:]]*)" }, { match: "([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])", name: "variable.other.constant.js" }, { match: "[_$[:alpha:]][_$[:alnum:]]*", name: "variable.other.readwrite.js" }] }, "if-statement": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?=\\bif\\s*(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))\\s*(?!\\{))", end: "(?=;|$|\\})", patterns: [{ include: "#comment" }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(if)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.conditional.js" }, 2: { name: "meta.brace.round.js" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.js" } }, patterns: [{ include: "#expression" }] }, { begin: "(?<=\\))\\s*\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)*\\])+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: "(/)([dgimsuy]*)", endCaptures: { 1: { name: "punctuation.definition.string.end.js" }, 2: { name: "keyword.other.js" } }, name: "string.regexp.js", patterns: [{ include: "#regexp" }] }, { include: "#statements" }] }] }, "import-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type)(?!\\s+from))?(?!\\s*[:\\(])(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" } }, end: "(?<!^import|[^\\._$[:alnum:]]import)(?=;|$|^)", name: "meta.import.js", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { include: "#string" }, { begin: `(?<=^import|[^\\._$[:alnum:]]import)(?!\\s*["'])`, end: "\\bfrom\\b", endCaptures: { 0: { name: "keyword.control.from.js" } }, patterns: [{ include: "#import-export-declaration" }] }, { include: "#import-export-declaration" }] }, "import-equals-declaration": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(require)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" }, 5: { name: "variable.other.readwrite.alias.js" }, 6: { name: "keyword.operator.assignment.js" }, 7: { name: "keyword.control.require.js" }, 8: { name: "meta.brace.round.js" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.js" } }, name: "meta.import-equals.external.js", patterns: [{ include: "#comment" }, { include: "#string" }] }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(?!require\\b)", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "keyword.control.import.js" }, 4: { name: "keyword.control.type.js" }, 5: { name: "variable.other.readwrite.alias.js" }, 6: { name: "keyword.operator.assignment.js" } }, end: "(?=;|$|^)", name: "meta.import-equals.internal.js", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { captures: { 1: { name: "entity.name.type.module.js" }, 2: { name: "punctuation.accessor.js" }, 3: { name: "punctuation.accessor.optional.js" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))" }, { match: "([_$[:alpha:]][_$[:alnum:]]*)", name: "variable.other.readwrite.js" }] }] }, "import-export-assert-clause": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(with)|(assert))\\s*(\\{)", beginCaptures: { 1: { name: "keyword.control.with.js" }, 2: { name: "keyword.control.assert.js" }, 3: { name: "punctuation.definition.block.js" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.js" } }, patterns: [{ include: "#comment" }, { include: "#string" }, { match: "(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*:)", name: "meta.object-literal.key.js" }, { match: ":", name: "punctuation.separator.key-value.js" }] }, "import-export-block": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.definition.block.js" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.js" } }, name: "meta.block.js", patterns: [{ include: "#import-export-clause" }] }, "import-export-clause": { patterns: [{ include: "#comment" }, { captures: { 1: { name: "keyword.control.type.js" }, 2: { name: "keyword.control.default.js" }, 3: { name: "constant.language.import-export-all.js" }, 4: { name: "variable.other.readwrite.js" }, 5: { name: "keyword.control.as.js" }, 6: { name: "keyword.control.default.js" }, 7: { name: "variable.other.readwrite.alias.js" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(?:(\\btype)\\s+)?(?:(\\bdefault)|(\\*)|(\\b[_$[:alpha:]][_$[:alnum:]]*)))\\s+(as)\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|([_$[:alpha:]][_$[:alnum:]]*))" }, { include: "#punctuation-comma" }, { match: "\\*", name: "constant.language.import-export-all.js" }, { match: "\\b(default)\\b", name: "keyword.control.default.js" }, { captures: { 1: { name: "keyword.control.type.js" }, 2: { name: "variable.other.readwrite.alias.js" } }, match: "(?:(\\btype)\\s+)?([_$[:alpha:]][_$[:alnum:]]*)" }] }, "import-export-declaration": { patterns: [{ include: "#comment" }, { include: "#string" }, { include: "#import-export-block" }, { match: "\\bfrom\\b", name: "keyword.control.from.js" }, { include: "#import-export-assert-clause" }, { include: "#import-export-clause" }] }, "indexer-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:)", beginCaptures: { 1: { name: "storage.modifier.js" }, 2: { name: "meta.brace.square.js" }, 3: { name: "variable.parameter.js" } }, end: "(\\])\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.js" }, 2: { name: "keyword.operator.optional.js" } }, name: "meta.indexer.declaration.js", patterns: [{ include: "#type-annotation" }] }, "indexer-mapped-type-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))([+-])?(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s+(in)\\s+", beginCaptures: { 1: { name: "keyword.operator.type.modifier.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "meta.brace.square.js" }, 4: { name: "entity.name.type.js" }, 5: { name: "keyword.operator.expression.in.js" } }, end: "(\\])([+-])?\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.js" }, 2: { name: "keyword.operator.type.modifier.js" }, 3: { name: "keyword.operator.optional.js" } }, name: "meta.indexer.mappedtype.declaration.js", patterns: [{ captures: { 1: { name: "keyword.control.as.js" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(as)\\s+" }, { include: "#type" }] }, "inline-tags": { patterns: [{ captures: { 1: { name: "punctuation.definition.bracket.square.begin.jsdoc" }, 2: { name: "punctuation.definition.bracket.square.end.jsdoc" } }, match: "(\\[)[^\\]]+(\\])(?={@(?:link|linkcode|linkplain|tutorial))", name: "constant.other.description.jsdoc" }, { begin: "({)((@)(?:link(?:code|plain)?|tutorial))\\s*", beginCaptures: { 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" }, 2: { name: "storage.type.class.jsdoc" }, 3: { name: "punctuation.definition.inline.tag.jsdoc" } }, end: "}|(?=\\*/)", endCaptures: { 0: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, name: "entity.name.type.instance.jsdoc", patterns: [{ captures: { 1: { name: "variable.other.link.underline.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?=https?://)(?:[^|}\\s*]|\\*[/])+)(\\|)?" }, { captures: { 1: { name: "variable.other.description.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?:[^{}@\\s|*]|\\*[^/])+)(\\|)?" }] }] }, "instanceof-expr": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.operator.expression.instanceof.js" } }, end: "(?<=\\))|(?=[;),}\\]:?\\-\\+\\>]|\\|\\||\\&\\&|\\!\\=\\=|$|(===|!==|==|!=)|(([\\&\\~\\^\\|]\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\s+instanceof(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|((?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))function((\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\s*[\\(]))))", patterns: [{ include: "#type" }] }, "interface-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(?:(abstract)\\s+)?\\b(interface)\\b(?=\\s+|/[/*])", beginCaptures: { 1: { name: "keyword.control.export.js" }, 2: { name: "storage.modifier.js" }, 3: { name: "storage.modifier.js" }, 4: { name: "storage.type.interface.js" } }, end: "(?<=\\})", name: "meta.interface.js", patterns: [{ include: "#comment" }, { include: "#class-or-interface-heritage" }, { captures: { 0: { name: "entity.name.type.interface.js" } }, match: "[_$[:alpha:]][_$[:alnum:]]*" }, { include: "#type-parameters" }, { include: "#class-or-interface-body" }] }, jsdoctype: { patterns: [{ begin: "\\G({)", beginCaptures: { 0: { name: "entity.name.type.instance.jsdoc" }, 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" } }, contentName: "entity.name.type.instance.jsdoc", end: "((}))\\s*|(?=\\*/)", endCaptures: { 1: { name: "entity.name.type.instance.jsdoc" }, 2: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, patterns: [{ include: "#brackets" }] }] }, jsx: { patterns: [{ include: "#jsx-tag-without-attributes-in-expression" }, { include: "#jsx-tag-in-expression" }] }, "jsx-children": { patterns: [{ include: "#jsx-tag-without-attributes" }, { include: "#jsx-tag" }, { include: "#jsx-evaluated-code" }, { include: "#jsx-entities" }] }, "jsx-entities": { patterns: [{ captures: { 1: { name: "punctuation.definition.entity.js" }, 3: { name: "punctuation.definition.entity.js" } }, match: "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)", name: "constant.character.entity.js" }] }, "jsx-evaluated-code": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.section.embedded.begin.js" } }, contentName: "meta.embedded.expression.js", end: "\\}", endCaptures: { 0: { name: "punctuation.section.embedded.end.js" } }, patterns: [{ include: "#expression" }] }, "jsx-string-double-quoted": { begin: '"', beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: '"', endCaptures: { 0: { name: "punctuation.definition.string.end.js" } }, name: "string.quoted.double.js", patterns: [{ include: "#jsx-entities" }] }, "jsx-string-single-quoted": { begin: "'", beginCaptures: { 0: { name: "punctuation.definition.string.begin.js" } }, end: "'", endCaptures: { 0: { name: "punctuation.definition.string.end.js" } }, name: "string.quoted.single.js", patterns: [{ include: "#jsx-entities" }] }, "jsx-tag": { begin: "(?=(<)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))(?=((<\\s*)|(\\s+))(?!\\?)|\\/?>))", end: "(/>)|(?:(</)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))?\\s*(>))", endCaptures: { 1: { name: "punctuation.definition.tag.end.js" }, 2: { name: "punctuation.definition.tag.begin.js" }, 3: { name: "entity.name.tag.namespace.js" }, 4: { name: "punctuation.separator.namespace.js" }, 5: { name: "entity.name.tag.js" }, 6: { name: "support.class.component.js" }, 7: { name: "punctuation.definition.tag.end.js" } }, name: "meta.tag.js", patterns: [{ begin: "(<)\\s*(?:([_$[:alpha:]][-_$[:alnum:].]*)(?<!\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$[:alpha:]][-_$[:alnum:].]*))(?<!\\.|-))(?=((<\\s*)|(\\s+))(?!\\?)|\\/?>)", beginCaptures: { 1: { name: "punctuation.definition.tag.begin.js" }, 2: { name: "entity.name.tag.namespace.js" }, 3: { name: "punctuation.separator.namespace.js" }, 4: { name: "entity.name.tag.js" }, 5: { name: "support.class.component.js" } }, end: "(?=[/]?>)", patterns: [{ include: "#comment" }, { include: "#type-arguments" }, { include: "#jsx-tag-attributes" }] }, { begin: "(>)", beginCaptures: { 1: { name: "punctuation.definition.tag.end.js" } }, contentName: "meta.jsx.children.js", end: "(?=</)", patterns: [{ include: "#jsx-children" }] }] }, "jsx-tag-attribute-assignment": { match: `=(?=\\s*(?:'|"|{|/\\*|//|\\n))`, name: "keyword.operator.assignment.js" }, "jsx-tag-attribute-name": { captures: { 1: { name: "entity.other.attribute-name.namespace.js" }, 2: { name: "punctuation.separator.namespace.js" }, 3: { name: "entity.other.attribute-name.js" } }, match: `(?x)
|
|
323
323
|
\\s*
|
|
324
324
|
(?:([_$[:alpha:]][-_$[:alnum:].]*)(:))?
|
|
325
325
|
([_$[:alpha:]][-_$[:alnum:]]*)
|
|
@@ -307,7 +307,7 @@ https?://
|
|
|
307
307
|
\\s*=>
|
|
308
308
|
)
|
|
309
309
|
))
|
|
310
|
-
))` }, { captures: { 1: { name: "punctuation.accessor.ts" }, 2: { name: "punctuation.accessor.optional.ts" }, 3: { name: "variable.other.constant.property.ts" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])" }, { captures: { 1: { name: "punctuation.accessor.ts" }, 2: { name: "punctuation.accessor.optional.ts" }, 3: { name: "variable.other.property.ts" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[_$[:alpha:]][_$[:alnum:]]*)" }, { match: "([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])", name: "variable.other.constant.ts" }, { match: "[_$[:alpha:]][_$[:alnum:]]*", name: "variable.other.readwrite.ts" }] }, "if-statement": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?=\\bif\\s*(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))\\s*(?!\\{))", end: "(?=;|$|\\})", patterns: [{ include: "#comment" }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(if)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.conditional.ts" }, 2: { name: "meta.brace.round.ts" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.ts" } }, patterns: [{ include: "#expression" }] }, { begin: "(?<=\\))\\s*\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)*\\])+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", beginCaptures: { 0: { name: "punctuation.definition.string.begin.ts" } }, end: "(/)([dgimsuy]*)", endCaptures: { 1: { name: "punctuation.definition.string.end.ts" }, 2: { name: "keyword.other.ts" } }, name: "string.regexp.ts", patterns: [{ include: "#regexp" }] }, { include: "#statements" }] }] }, "import-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type)(?!\\s+from))?(?!\\s*[:\\(])(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" } }, end: "(?<!^import|[^\\._$[:alnum:]]import)(?=;|$|^)", name: "meta.import.ts", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { include: "#string" }, { begin: `(?<=^import|[^\\._$[:alnum:]]import)(?!\\s*["'])`, end: "\\bfrom\\b", endCaptures: { 0: { name: "keyword.control.from.ts" } }, patterns: [{ include: "#import-export-declaration" }] }, { include: "#import-export-declaration" }] }, "import-equals-declaration": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(require)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" }, 5: { name: "variable.other.readwrite.alias.ts" }, 6: { name: "keyword.operator.assignment.ts" }, 7: { name: "keyword.control.require.ts" }, 8: { name: "meta.brace.round.ts" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.ts" } }, name: "meta.import-equals.external.ts", patterns: [{ include: "#comment" }, { include: "#string" }] }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(?!require\\b)", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" }, 5: { name: "variable.other.readwrite.alias.ts" }, 6: { name: "keyword.operator.assignment.ts" } }, end: "(?=;|$|^)", name: "meta.import-equals.internal.ts", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { captures: { 1: { name: "entity.name.type.module.ts" }, 2: { name: "punctuation.accessor.ts" }, 3: { name: "punctuation.accessor.optional.ts" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))" }, { match: "([_$[:alpha:]][_$[:alnum:]]*)", name: "variable.other.readwrite.ts" }] }] }, "import-export-assert-clause": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(assert)\\s*(\\{)", beginCaptures: { 1: { name: "keyword.control.assert.ts" }, 2: { name: "punctuation.definition.block.ts" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.ts" } }, patterns: [{ include: "#comment" }, { include: "#string" }, { match: "(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*:)", name: "meta.object-literal.key.ts" }, { match: ":", name: "punctuation.separator.key-value.ts" }] }, "import-export-block": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.definition.block.ts" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.ts" } }, name: "meta.block.ts", patterns: [{ include: "#import-export-clause" }] }, "import-export-clause": { patterns: [{ include: "#comment" }, { captures: { 1: { name: "keyword.control.type.ts" }, 2: { name: "keyword.control.default.ts" }, 3: { name: "constant.language.import-export-all.ts" }, 4: { name: "variable.other.readwrite.ts" }, 5: { name: "keyword.control.as.ts" }, 6: { name: "keyword.control.default.ts" }, 7: { name: "variable.other.readwrite.alias.ts" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(?:(\\btype)\\s+)?(?:(\\bdefault)|(\\*)|(\\b[_$[:alpha:]][_$[:alnum:]]*)))\\s+(as)\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|([_$[:alpha:]][_$[:alnum:]]*))" }, { include: "#punctuation-comma" }, { match: "\\*", name: "constant.language.import-export-all.ts" }, { match: "\\b(default)\\b", name: "keyword.control.default.ts" }, { captures: { 1: { name: "keyword.control.type.ts" }, 2: { name: "variable.other.readwrite.alias.ts" } }, match: "(?:(\\btype)\\s+)?([_$[:alpha:]][_$[:alnum:]]*)" }] }, "import-export-declaration": { patterns: [{ include: "#comment" }, { include: "#string" }, { include: "#import-export-block" }, { match: "\\bfrom\\b", name: "keyword.control.from.ts" }, { include: "#import-export-assert-clause" }, { include: "#import-export-clause" }] }, "indexer-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:)", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "meta.brace.square.ts" }, 3: { name: "variable.parameter.ts" } }, end: "(\\])\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.ts" }, 2: { name: "keyword.operator.optional.ts" } }, name: "meta.indexer.declaration.ts", patterns: [{ include: "#type-annotation" }] }, "indexer-mapped-type-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))([+-])?(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s+(in)\\s+", beginCaptures: { 1: { name: "keyword.operator.type.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "meta.brace.square.ts" }, 4: { name: "entity.name.type.ts" }, 5: { name: "keyword.operator.expression.in.ts" } }, end: "(\\])([+-])?\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.ts" }, 2: { name: "keyword.operator.type.modifier.ts" }, 3: { name: "keyword.operator.optional.ts" } }, name: "meta.indexer.mappedtype.declaration.ts", patterns: [{ captures: { 1: { name: "keyword.control.as.ts" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(as)\\s+" }, { include: "#type" }] }, "inline-tags": { patterns: [{ captures: { 1: { name: "punctuation.definition.bracket.square.begin.jsdoc" }, 2: { name: "punctuation.definition.bracket.square.end.jsdoc" } }, match: "(\\[)[^\\]]+(\\])(?={@(?:link|linkcode|linkplain|tutorial))", name: "constant.other.description.jsdoc" }, { begin: "({)((@)(?:link(?:code|plain)?|tutorial))\\s*", beginCaptures: { 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" }, 2: { name: "storage.type.class.jsdoc" }, 3: { name: "punctuation.definition.inline.tag.jsdoc" } }, end: "}|(?=\\*/)", endCaptures: { 0: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, name: "entity.name.type.instance.jsdoc", patterns: [{ captures: { 1: { name: "variable.other.link.underline.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?=https?://)(?:[^|}\\s*]|\\*[/])+)(\\|)?" }, { captures: { 1: { name: "variable.other.description.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?:[^{}@\\s|*]|\\*[^/])+)(\\|)?" }] }] }, "instanceof-expr": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.operator.expression.instanceof.ts" } }, end: "(?<=\\))|(?=[;),}\\]:?\\-\\+\\>]|\\|\\||\\&\\&|\\!\\=\\=|$|(===|!==|==|!=)|(([\\&\\~\\^\\|]\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\s+instanceof(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|((?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))function((\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\s*[\\(]))))", patterns: [{ include: "#type" }] }, "interface-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(?:(abstract)\\s+)?\\b(interface)\\b(?=\\s+|/[/*])", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.type.interface.ts" } }, end: "(?<=\\})", name: "meta.interface.ts", patterns: [{ include: "#comment" }, { include: "#class-or-interface-heritage" }, { captures: { 0: { name: "entity.name.type.interface.ts" } }, match: "[_$[:alpha:]][_$[:alnum:]]*" }, { include: "#type-parameters" }, { include: "#class-or-interface-body" }] }, jsdoctype: { patterns: [{ begin: "\\G({)", beginCaptures: { 0: { name: "entity.name.type.instance.jsdoc" }, 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" } }, contentName: "entity.name.type.instance.jsdoc", end: "((}))\\s*|(?=\\*/)", endCaptures: { 1: { name: "entity.name.type.instance.jsdoc" }, 2: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, patterns: [{ include: "#brackets" }] }] }, label: { patterns: [{ begin: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)(?=\\s*\\{)", beginCaptures: { 1: { name: "entity.name.label.ts" }, 2: { name: "punctuation.separator.label.ts" } }, end: "(?<=\\})", patterns: [{ include: "#decl-block" }] }, { captures: { 1: { name: "entity.name.label.ts" }, 2: { name: "punctuation.separator.label.ts" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)" }] }, literal: { patterns: [{ include: "#numeric-literal" }, { include: "#boolean-literal" }, { include: "#null-literal" }, { include: "#undefined-literal" }, { include: "#numericConstant-literal" }, { include: "#array-literal" }, { include: "#this-literal" }, { include: "#super-literal" }] }, "method-declaration": { patterns: [{ begin: "(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?\\s*\\b(constructor)\\b(?!:)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.modifier.async.ts" }, 5: { name: "storage.type.ts" } }, end: "(?=\\}|;|,|$)|(?<=\\})", name: "meta.method.declaration.ts", patterns: [{ include: "#method-declaration-name" }, { include: "#function-body" }] }, { begin: "(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?(?:(?:\\s*\\b(new)\\b(?!:)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|(?:(\\*)\\s*)?)(?=\\s*((<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?[\\(])", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.modifier.async.ts" }, 5: { name: "keyword.operator.new.ts" }, 6: { name: "keyword.generator.asterisk.ts" } }, end: "(?=\\}|;|,|$)|(?<=\\})", name: "meta.method.declaration.ts", patterns: [{ include: "#method-declaration-name" }, { include: "#function-body" }] }, { begin: `(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?(?:\\b(get|set)\\s+)?(?:(\\*)\\s*)?(?=\\s*(((\\b(?<!\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\b(?!\\$))|(\\b(?<!\\$)0(?:b|B)[01][01_]*(n)?\\b(?!\\$))|(\\b(?<!\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\b(?!\\$))|((?<!\\$)(?:
|
|
310
|
+
))` }, { captures: { 1: { name: "punctuation.accessor.ts" }, 2: { name: "punctuation.accessor.optional.ts" }, 3: { name: "variable.other.constant.property.ts" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])" }, { captures: { 1: { name: "punctuation.accessor.ts" }, 2: { name: "punctuation.accessor.optional.ts" }, 3: { name: "variable.other.property.ts" } }, match: "(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))\\s*(\\#?[_$[:alpha:]][_$[:alnum:]]*)" }, { match: "([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])", name: "variable.other.constant.ts" }, { match: "[_$[:alpha:]][_$[:alnum:]]*", name: "variable.other.readwrite.ts" }] }, "if-statement": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?=\\bif\\s*(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))\\s*(?!\\{))", end: "(?=;|$|\\})", patterns: [{ include: "#comment" }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(if)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.conditional.ts" }, 2: { name: "meta.brace.round.ts" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.ts" } }, patterns: [{ include: "#expression" }] }, { begin: "(?<=\\))\\s*\\/(?![\\/*])(?=(?:[^\\/\\\\\\[]|\\\\.|\\[([^\\]\\\\]|\\\\.)*\\])+\\/([dgimsuy]+|(?![\\/\\*])|(?=\\/\\*))(?!\\s*[a-zA-Z0-9_$]))", beginCaptures: { 0: { name: "punctuation.definition.string.begin.ts" } }, end: "(/)([dgimsuy]*)", endCaptures: { 1: { name: "punctuation.definition.string.end.ts" }, 2: { name: "keyword.other.ts" } }, name: "string.regexp.ts", patterns: [{ include: "#regexp" }] }, { include: "#statements" }] }] }, "import-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type)(?!\\s+from))?(?!\\s*[:\\(])(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" } }, end: "(?<!^import|[^\\._$[:alnum:]]import)(?=;|$|^)", name: "meta.import.ts", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { include: "#string" }, { begin: `(?<=^import|[^\\._$[:alnum:]]import)(?!\\s*["'])`, end: "\\bfrom\\b", endCaptures: { 0: { name: "keyword.control.from.ts" } }, patterns: [{ include: "#import-export-declaration" }] }, { include: "#import-export-declaration" }] }, "import-equals-declaration": { patterns: [{ begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(require)\\s*(\\()", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" }, 5: { name: "variable.other.readwrite.alias.ts" }, 6: { name: "keyword.operator.assignment.ts" }, 7: { name: "keyword.control.require.ts" }, 8: { name: "meta.brace.round.ts" } }, end: "\\)", endCaptures: { 0: { name: "meta.brace.round.ts" } }, name: "meta.import-equals.external.ts", patterns: [{ include: "#comment" }, { include: "#string" }] }, { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(import)(?:\\s+(type))?\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(=)\\s*(?!require\\b)", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "keyword.control.import.ts" }, 4: { name: "keyword.control.type.ts" }, 5: { name: "variable.other.readwrite.alias.ts" }, 6: { name: "keyword.operator.assignment.ts" } }, end: "(?=;|$|^)", name: "meta.import-equals.internal.ts", patterns: [{ include: "#single-line-comment-consuming-line-ending" }, { include: "#comment" }, { captures: { 1: { name: "entity.name.type.module.ts" }, 2: { name: "punctuation.accessor.ts" }, 3: { name: "punctuation.accessor.optional.ts" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(?:(\\.)|(\\?\\.(?!\\s*[[:digit:]])))" }, { match: "([_$[:alpha:]][_$[:alnum:]]*)", name: "variable.other.readwrite.ts" }] }] }, "import-export-assert-clause": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(with)|(assert))\\s*(\\{)", beginCaptures: { 1: { name: "keyword.control.with.ts" }, 2: { name: "keyword.control.assert.ts" }, 3: { name: "punctuation.definition.block.ts" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.ts" } }, patterns: [{ include: "#comment" }, { include: "#string" }, { match: "(?:[_$[:alpha:]][_$[:alnum:]]*)\\s*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\s*)*:)", name: "meta.object-literal.key.ts" }, { match: ":", name: "punctuation.separator.key-value.ts" }] }, "import-export-block": { begin: "\\{", beginCaptures: { 0: { name: "punctuation.definition.block.ts" } }, end: "\\}", endCaptures: { 0: { name: "punctuation.definition.block.ts" } }, name: "meta.block.ts", patterns: [{ include: "#import-export-clause" }] }, "import-export-clause": { patterns: [{ include: "#comment" }, { captures: { 1: { name: "keyword.control.type.ts" }, 2: { name: "keyword.control.default.ts" }, 3: { name: "constant.language.import-export-all.ts" }, 4: { name: "variable.other.readwrite.ts" }, 5: { name: "keyword.control.as.ts" }, 6: { name: "keyword.control.default.ts" }, 7: { name: "variable.other.readwrite.alias.ts" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(?:(\\btype)\\s+)?(?:(\\bdefault)|(\\*)|(\\b[_$[:alpha:]][_$[:alnum:]]*)))\\s+(as)\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|([_$[:alpha:]][_$[:alnum:]]*))" }, { include: "#punctuation-comma" }, { match: "\\*", name: "constant.language.import-export-all.ts" }, { match: "\\b(default)\\b", name: "keyword.control.default.ts" }, { captures: { 1: { name: "keyword.control.type.ts" }, 2: { name: "variable.other.readwrite.alias.ts" } }, match: "(?:(\\btype)\\s+)?([_$[:alpha:]][_$[:alnum:]]*)" }] }, "import-export-declaration": { patterns: [{ include: "#comment" }, { include: "#string" }, { include: "#import-export-block" }, { match: "\\bfrom\\b", name: "keyword.control.from.ts" }, { include: "#import-export-assert-clause" }, { include: "#import-export-clause" }] }, "indexer-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*(?=:)", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "meta.brace.square.ts" }, 3: { name: "variable.parameter.ts" } }, end: "(\\])\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.ts" }, 2: { name: "keyword.operator.optional.ts" } }, name: "meta.indexer.declaration.ts", patterns: [{ include: "#type-annotation" }] }, "indexer-mapped-type-declaration": { begin: "(?:(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))([+-])?(readonly)\\s*)?\\s*(\\[)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s+(in)\\s+", beginCaptures: { 1: { name: "keyword.operator.type.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "meta.brace.square.ts" }, 4: { name: "entity.name.type.ts" }, 5: { name: "keyword.operator.expression.in.ts" } }, end: "(\\])([+-])?\\s*(\\?\\s*)?|$", endCaptures: { 1: { name: "meta.brace.square.ts" }, 2: { name: "keyword.operator.type.modifier.ts" }, 3: { name: "keyword.operator.optional.ts" } }, name: "meta.indexer.mappedtype.declaration.ts", patterns: [{ captures: { 1: { name: "keyword.control.as.ts" } }, match: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(as)\\s+" }, { include: "#type" }] }, "inline-tags": { patterns: [{ captures: { 1: { name: "punctuation.definition.bracket.square.begin.jsdoc" }, 2: { name: "punctuation.definition.bracket.square.end.jsdoc" } }, match: "(\\[)[^\\]]+(\\])(?={@(?:link|linkcode|linkplain|tutorial))", name: "constant.other.description.jsdoc" }, { begin: "({)((@)(?:link(?:code|plain)?|tutorial))\\s*", beginCaptures: { 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" }, 2: { name: "storage.type.class.jsdoc" }, 3: { name: "punctuation.definition.inline.tag.jsdoc" } }, end: "}|(?=\\*/)", endCaptures: { 0: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, name: "entity.name.type.instance.jsdoc", patterns: [{ captures: { 1: { name: "variable.other.link.underline.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?=https?://)(?:[^|}\\s*]|\\*[/])+)(\\|)?" }, { captures: { 1: { name: "variable.other.description.jsdoc" }, 2: { name: "punctuation.separator.pipe.jsdoc" } }, match: "\\G((?:[^{}@\\s|*]|\\*[^/])+)(\\|)?" }] }] }, "instanceof-expr": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "keyword.operator.expression.instanceof.ts" } }, end: "(?<=\\))|(?=[;),}\\]:?\\-\\+\\>]|\\|\\||\\&\\&|\\!\\=\\=|$|(===|!==|==|!=)|(([\\&\\~\\^\\|]\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\s+instanceof(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|((?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))function((\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\s*[\\(]))))", patterns: [{ include: "#type" }] }, "interface-declaration": { begin: "(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(\\bexport)\\s+)?(?:(\\bdeclare)\\s+)?\\b(?:(abstract)\\s+)?\\b(interface)\\b(?=\\s+|/[/*])", beginCaptures: { 1: { name: "keyword.control.export.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.type.interface.ts" } }, end: "(?<=\\})", name: "meta.interface.ts", patterns: [{ include: "#comment" }, { include: "#class-or-interface-heritage" }, { captures: { 0: { name: "entity.name.type.interface.ts" } }, match: "[_$[:alpha:]][_$[:alnum:]]*" }, { include: "#type-parameters" }, { include: "#class-or-interface-body" }] }, jsdoctype: { patterns: [{ begin: "\\G({)", beginCaptures: { 0: { name: "entity.name.type.instance.jsdoc" }, 1: { name: "punctuation.definition.bracket.curly.begin.jsdoc" } }, contentName: "entity.name.type.instance.jsdoc", end: "((}))\\s*|(?=\\*/)", endCaptures: { 1: { name: "entity.name.type.instance.jsdoc" }, 2: { name: "punctuation.definition.bracket.curly.end.jsdoc" } }, patterns: [{ include: "#brackets" }] }] }, label: { patterns: [{ begin: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)(?=\\s*\\{)", beginCaptures: { 1: { name: "entity.name.label.ts" }, 2: { name: "punctuation.separator.label.ts" } }, end: "(?<=\\})", patterns: [{ include: "#decl-block" }] }, { captures: { 1: { name: "entity.name.label.ts" }, 2: { name: "punctuation.separator.label.ts" } }, match: "([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)" }] }, literal: { patterns: [{ include: "#numeric-literal" }, { include: "#boolean-literal" }, { include: "#null-literal" }, { include: "#undefined-literal" }, { include: "#numericConstant-literal" }, { include: "#array-literal" }, { include: "#this-literal" }, { include: "#super-literal" }] }, "method-declaration": { patterns: [{ begin: "(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?\\s*\\b(constructor)\\b(?!:)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.modifier.async.ts" }, 5: { name: "storage.type.ts" } }, end: "(?=\\}|;|,|$)|(?<=\\})", name: "meta.method.declaration.ts", patterns: [{ include: "#method-declaration-name" }, { include: "#function-body" }] }, { begin: "(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?(?:(?:\\s*\\b(new)\\b(?!:)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.)))|(?:(\\*)\\s*)?)(?=\\s*((<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<]|\\<\\s*(((const\\s+)?[_$[:alpha:]])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\[\\]]|(\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]))*\\]))([^=<>]|=[^<])*\\>)*\\>)*>\\s*))?[\\(])", beginCaptures: { 1: { name: "storage.modifier.ts" }, 2: { name: "storage.modifier.ts" }, 3: { name: "storage.modifier.ts" }, 4: { name: "storage.modifier.async.ts" }, 5: { name: "keyword.operator.new.ts" }, 6: { name: "keyword.generator.asterisk.ts" } }, end: "(?=\\}|;|,|$)|(?<=\\})", name: "meta.method.declaration.ts", patterns: [{ include: "#method-declaration-name" }, { include: "#function-body" }] }, { begin: `(?x)(?<![_$[:alnum:]])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(override)\\s+)?(?:\\b(public|private|protected)\\s+)?(?:\\b(abstract)\\s+)?(?:\\b(async)\\s+)?(?:\\b(get|set)\\s+)?(?:(\\*)\\s*)?(?=\\s*(((\\b(?<!\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\b(?!\\$))|(\\b(?<!\\$)0(?:b|B)[01][01_]*(n)?\\b(?!\\$))|(\\b(?<!\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\b(?!\\$))|((?<!\\$)(?:
|
|
311
311
|
(?:\\b[0-9][0-9_]*(\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\b)|
|
|
312
312
|
(?:\\b[0-9][0-9_]*(\\.)[eE][+-]?[0-9][0-9_]*(n)?\\b)|
|
|
313
313
|
(?:\\B(\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\b)|
|