Files
Basalt2/node_modules/shiki/dist/languages/marko.tmLanguage-f7cdd412.mjs
Robert Jelic 31787b0e9b Fix
2025-02-16 18:04:24 +01:00

4 lines
18 KiB
JavaScript

var marko_tmLanguage = {fileTypes:["marko"],name:"marko",patterns:[{begin:"^\\s*(style)\\s+(\\{)",beginCaptures:{"1":{name:"storage.type.marko.css"},"2":{name:"punctuation.section.scope.begin.marko.css"}},comment:"CSS style block, eg: style { color: green }",contentName:"source.css",end:"\\}",endCaptures:{"0":{name:"punctuation.section.scope.end.marko.css"}},name:"meta.embedded.css",patterns:[{include:"source.css"}]},{begin:"^\\s*(style)\\.(less)\\s+(\\{)",beginCaptures:{"1":{name:"storage.type.marko.css"},"2":{name:"storage.modifier.marko.css"},"3":{name:"punctuation.section.scope.begin.marko.css"}},comment:"Less style block, eg: style.less { color: green }",contentName:"source.less",end:"\\}",endCaptures:{"0":{name:"punctuation.section.scope.end.marko.css"}},name:"meta.embedded.less",patterns:[{include:"source.css.less"}]},{begin:"^\\s*(style)\\.(scss)\\s+(\\{)",beginCaptures:{"1":{name:"storage.type.marko.css"},"2":{name:"storage.modifier.marko.css"},"3":{name:"punctuation.section.scope.begin.marko.css"}},comment:"SCSS style block, eg: style.scss { color: green }",contentName:"source.scss",end:"\\}",endCaptures:{"0":{name:"punctuation.section.scope.end.marko.css"}},name:"meta.embedded.scss",patterns:[{include:"source.css.scss"}]},{begin:"^\\s*(?:(static )|(?=(?:class|import|export) ))",beginCaptures:{"1":{name:"keyword.control.static.marko"}},comment:"Top level blocks parsed as JavaScript",contentName:"source.js",end:"(?=\\n|$)",name:"meta.embedded.js",patterns:[{include:"#javascript-statement"}]},{include:"#content-concise-mode"}],repository:{attrs:{patterns:[{applyEndPatternLast:1,begin:"(?:\\s+|,)(?:(key|on[a-zA-Z0-9_$-]+|[a-zA-Z0-9_$]+Change|no-update(?:-body)?(?:-if)?)|([a-zA-Z0-9_$][a-zA-Z0-9_$-]*))(:[a-zA-Z0-9_$][a-zA-Z0-9_$-]*)?",beginCaptures:{"1":{name:"support.type.attribute-name.marko"},"2":{name:"entity.other.attribute-name.marko"},"3":{name:"support.function.attribute-name.marko"}},comment:"Attribute with optional value",end:"(?=.|$)",name:"meta.marko-attribute",patterns:[{include:"#html-args-or-method"},{applyEndPatternLast:1,begin:"\\s*(:?=)\\s*",beginCaptures:{"1":{patterns:[{include:"source.js"}]}},comment:"Attribute value",contentName:"source.js",end:"(?=.|$)",name:"meta.embedded.js",patterns:[{include:"#javascript-expression"}]}]},{applyEndPatternLast:1,begin:"(?:\\s+|,)\\.\\.\\.",beginCaptures:{"1":{name:"keyword.operator.spread.marko"}},comment:"A ...spread attribute",contentName:"source.js",end:"(?=.|$)",name:"meta.marko-spread-attribute",patterns:[{include:"#javascript-expression"}]},{begin:"\\s*(,(?!,))",captures:{"1":{patterns:[{include:"source.js"}]}},comment:"Consume any whitespace after a comma",end:"(?!\\S)"},{include:"#javascript-comment-multiline"},{include:"#invalid"}]},"concise-html-block":{begin:"\\s*(--+)\\s*$",beginCaptures:{"2":{name:"punctuation.section.scope.begin.marko"}},comment:"--- HTML block within concise mode content. ---",end:"\\1",endCaptures:{"1":{name:"punctuation.section.scope.end.marko"}},name:"meta.section.marko-html-block",patterns:[{include:"#content-html-mode"}]},"concise-html-line":{captures:{"1":{name:"punctuation.section.scope.begin.marko"},"2":{patterns:[{include:"#html-comments"},{include:"#tag-html"},{match:"\\\\.",name:"string"},{include:"#placeholder"},{match:".+?",name:"string"}]}},comment:"-- HTML line within concise mode content. (content-html-mode w/o scriptlet)",match:"\\s*(--+)(?=\\s+\\S)(.*$)",name:"meta.section.marko-html-line"},"concise-open-tag-content":{patterns:[{include:"#tag-before-attrs"},{begin:"\\s*\\[",beginCaptures:{"0":{name:"punctuation.section.scope.begin.marko"}},end:"]",endCaptures:{"0":{name:"punctuation.section.scope.end.marko"}},patterns:[{include:"#attrs"},{include:"#invalid"}]},{begin:"(?!^)(?= )",end:"(?=--)|(?<!,)(?=\\n)",patterns:[{include:"#attrs"},{include:"#invalid"}]}]},"concise-script-block":{begin:"(\\s+)(--+)\\s*$",beginCaptures:{"2":{name:"punctuation.section.scope.begin.marko"}},comment:"--- Embedded concise script content block. ---",end:"(\\2)|(?=^(?!\\1)\\s*\\S)",endCaptures:{"1":{name:"punctuation.section.scope.end.marko"}},name:"meta.section.marko-script-block",patterns:[{include:"#content-embedded-script"}]},"concise-script-line":{applyEndPatternLast:1,begin:"\\s*(--+)",beginCaptures:{"1":{name:"punctuation.section.scope.begin.marko"}},comment:"-- Embedded concise script content line.",end:"$",name:"meta.section.marko-script-line",patterns:[{include:"#content-embedded-script"}]},"concise-style-block":{begin:"(\\s+)(--+)\\s*$",beginCaptures:{"2":{name:"punctuation.section.scope.begin.marko"}},comment:"--- Embedded concise style content block. ---",contentName:"source.css",end:"(\\2)|(?=^(?!\\1)\\s*\\S)",endCaptures:{"1":{name:"punctuation.section.scope.end.marko"}},name:"meta.section.marko-style-block",patterns:[{include:"#content-embedded-style"}]},"concise-style-block-less":{begin:"(\\s+)(--+)\\s*$",beginCaptures:{"2":{name:"punctuation.section.scope.begin.marko"}},comment:"--- Embedded concise style content block. ---",contentName:"source.less",end:"(\\2)|(?=^(?!\\1)\\s*\\S)",endCaptures:{"1":{name:"punctuation.section.scope.end.marko"}},name:"meta.section.marko-style-block",patterns:[{include:"#content-embedded-style-less"}]},"concise-style-block-scss":{begin:"(\\s+)(--+)\\s*$",beginCaptures:{"2":{name:"punctuation.section.scope.begin.marko"}},comment:"--- Embedded concise style content block. ---",contentName:"source.scss",end:"(\\2)|(?=^(?!\\1)\\s*\\S)",endCaptures:{"1":{name:"punctuation.section.scope.end.marko"}},name:"meta.section.marko-style-block",patterns:[{include:"#content-embedded-style-scss"}]},"concise-style-line":{applyEndPatternLast:1,begin:"\\s*(--+)",beginCaptures:{"1":{name:"punctuation.section.scope.begin.marko"}},comment:"-- Embedded concise style content line.",contentName:"source.css",end:"$",name:"meta.section.marko-style-line",patterns:[{include:"#content-embedded-style"}]},"concise-style-line-less":{applyEndPatternLast:1,begin:"\\s*(--+)",beginCaptures:{"1":{name:"punctuation.section.scope.begin.marko"}},comment:"-- Embedded concise style content line.",contentName:"source.less",end:"$",name:"meta.section.marko-style-line",patterns:[{include:"#content-embedded-style-less"}]},"concise-style-line-scss":{applyEndPatternLast:1,begin:"\\s*(--+)",beginCaptures:{"1":{name:"punctuation.section.scope.begin.marko"}},comment:"-- Embedded concise style content line.",contentName:"source.scss",end:"$",name:"meta.section.marko-style-line",patterns:[{include:"#content-embedded-style-scss"}]},"content-concise-mode":{comment:"Concise mode content block.",name:"meta.marko-concise-content",patterns:[{include:"#scriptlet"},{include:"#javascript-comments"},{include:"#html-comments"},{include:"#concise-html-block"},{include:"#concise-html-line"},{include:"#tag-html"},{comment:"A concise html tag.",patterns:[{begin:"^(\\s*)(?=style\\.less\\b)",comment:"Concise style tag less",patterns:[{include:"#concise-open-tag-content"},{include:"#concise-style-block-less"},{include:"#concise-style-line-less"}],"while":"(?=^\\1\\s+(\\S|$))"},{begin:"^(\\s*)(?=style\\.scss\\b)",comment:"Concise style tag scss",patterns:[{include:"#concise-open-tag-content"},{include:"#concise-style-block-scss"},{include:"#concise-style-line-scss"}],"while":"(?=^\\1\\s+(\\S|$))"},{begin:"^(\\s*)(?=style\\b)",comment:"Concise style tag",patterns:[{include:"#concise-open-tag-content"},{include:"#concise-style-block"},{include:"#concise-style-line"}],"while":"(?=^\\1\\s+(\\S|$))"},{begin:"^(\\s*)(?=script\\b)",comment:"Concise script tag",patterns:[{include:"#concise-open-tag-content"},{include:"#concise-script-block"},{include:"#concise-script-line"}],"while":"(?=^\\1\\s+(\\S|$))"},{begin:"^(\\s*)(?=[a-zA-Z0-9_$@])",comment:"Normal concise tag",patterns:[{include:"#concise-open-tag-content"},{include:"#content-concise-mode"}],"while":"(?=^\\1\\s+(\\S|$))"}]},{include:"#invalid"}]},"content-embedded-script":{name:"meta.embedded.js",patterns:[{include:"#placeholder"},{include:"source.js"}]},"content-embedded-style":{name:"meta.embedded.css",patterns:[{include:"#placeholder"},{include:"source.css"}]},"content-embedded-style-less":{name:"meta.embedded.css.less",patterns:[{include:"#placeholder"},{include:"source.css.less"}]},"content-embedded-style-scss":{name:"meta.embedded.css.scss",patterns:[{include:"#placeholder"},{include:"source.css.scss"}]},"content-html-mode":{comment:"HTML mode content block.",patterns:[{include:"#scriptlet"},{include:"#html-comments"},{include:"#tag-html"},{match:"\\\\.",name:"string"},{include:"#placeholder"},{match:".+?",name:"string"}]},"html-args-or-method":{patterns:[{include:"#javascript-args"},{begin:"(?<=\\))\\s*(?=\\{)",comment:"Attribute method shorthand following parens",contentName:"source.js",end:"(?<=\\})",name:"meta.embedded.js",patterns:[{include:"source.js"}]}]},"html-comments":{patterns:[{begin:"\\s*(<!(--)?)",beginCaptures:{"1":{name:"punctuation.definition.comment.marko"}},comment:"HTML comments, doctypes & cdata",end:"\\2>",endCaptures:{"0":{name:"punctuation.definition.comment.marko"}},name:"comment.block.marko"},{begin:"\\s*(<html-comment>)",beginCaptures:{"1":{name:"punctuation.definition.comment.marko"}},comment:"Preserved HTML comment tag",end:"</html-comment>",endCaptures:{"0":{name:"punctuation.definition.comment.marko"}},name:"comment.block.marko"}]},invalid:{match:"[^\\s]",name:"invalid.illegal.character-not-allowed-here.marko"},"javascript-args":{begin:"(?=\\()",comment:"Javascript style arguments",contentName:"source.js",end:"(?<=\\))",name:"meta.embedded.js",patterns:[{include:"source.js"}]},"javascript-comment-line":{captures:{"0":{patterns:[{include:"source.js"}]}},comment:"JavaScript // single line comment",contentName:"source.js",match:"\\s*//.*$"},"javascript-comment-multiline":{begin:"\\s*(?=/\\*)",comment:"JavaScript /* block comment */",contentName:"source.js",end:"(?<=\\*/)",patterns:[{include:"source.js"}]},"javascript-comments":{patterns:[{include:"#javascript-comment-multiline"},{include:"#javascript-comment-line"}]},"javascript-enclosed":{comment:"Matches JavaScript content and ensures enclosed blocks are matched.",patterns:[{include:"#javascript-comments"},{include:"#javascript-args"},{begin:"(?={)",end:"(?<=})",patterns:[{include:"source.js"}]},{begin:"(?=\\[)",end:"(?<=])",patterns:[{include:"source.js"}]},{begin:"(?=\")",end:"(?<=\")",patterns:[{include:"source.js"}]},{begin:"(?=')",end:"(?<=')",patterns:[{include:"source.js"}]},{begin:"(?=`)",end:"(?<=`)",patterns:[{include:"source.js"}]},{begin:"/(?!<[\\]})A-Z0-9.<%]\\s*/)(?!/?>|$)",captures:{"0":{name:"string.regexp.js"}},contentName:"source.js",end:"/[gimsuy]*",patterns:[{include:"source.js#regexp"},{include:"source.js"}]},{begin:"(?x)\\s*(?:\n\t\t\t\t\t\t\t\t(?:\\b(?:new|typeof|instanceof|in)\\b)| # Keyword operators\n\t\t\t\t\t\t\t\t\\&\\&|\\|\\|| # Logical operators\n\t\t\t\t\t\t\t\t[\\^|&]| # Bitwise operators\n\t\t\t\t\t\t\t\t[!=]=|[!=]==|<|<[=<]|=>| # Comparison operators (Note you cannot use * or ? here)\n\t\t\t\t\t\t\t\t[?:]| # Ternary operators\n\t\t\t\t\t\t\t\t[-+*%](?!-) # Arithmetic operators\n\t\t\t\t\t\t\t)",captures:{"0":{patterns:[{include:"source.js"}]}},end:"(?=\\S)"}]},"javascript-expression":{patterns:[{include:"#javascript-enclosed"},{captures:{"0":{patterns:[{include:"source.js"}]}},comment:"Match identifiers and member expressions",match:"[0-9a-zA-Z$_.]+"}]},"javascript-statement":{patterns:[{include:"#javascript-enclosed"},{include:"source.js"}]},"open-tag-content":{patterns:[{include:"#tag-before-attrs"},{begin:"(?= )",comment:"Attributes begin after the first space within the tag name",end:"(?=/?>)",patterns:[{include:"#attrs"}]}]},placeholder:{begin:"\\$!?{",beginCaptures:{"0":{name:"punctuation.definition.template-expression.begin.js"}},comment:"${ } placeholder",contentName:"source.js",end:"}",endCaptures:{"0":{name:"punctuation.definition.template-expression.end.js"}},patterns:[{include:"source.js"}]},scriptlet:{begin:"^\\s*(\\$)\\s+",beginCaptures:{"1":{name:"keyword.control.scriptlet.marko"}},comment:"An inline JavaScript scriptlet.",contentName:"source.js",end:"$",name:"meta.embedded.js",patterns:[{include:"#javascript-statement"}]},"tag-before-attrs":{comment:"Everything in a tag before the attributes content",patterns:[{include:"#tag-name"},{comment:"Shorthand class or ID attribute",match:"[#.][a-zA-Z0-9_$][a-zA-Z0-9_$-]*",name:"entity.other.attribute-name.marko"},{begin:"/(?!/)",beginCaptures:{"0":{name:"punctuation.separator.key-value.marko"}},comment:"Variable for a tag",contentName:"source.js",end:"(?=:?\\=|\\s|>|$|\\||\\(|/)",name:"meta.embedded.js",patterns:[{comment:"Match identifiers",match:"[a-zA-Z$_][0-9a-zA-Z$_]*",name:"variable.other.constant.object.js"},{include:"source.js#object-binding-pattern"},{include:"source.js#array-binding-pattern"},{include:"source.js#var-single-variable"},{include:"#javascript-expression"}]},{applyEndPatternLast:1,begin:"\\s*(:?=)\\s*",beginCaptures:{"1":{patterns:[{include:"source.js"}]}},comment:"Default attribute value",contentName:"source.js",end:"(?=.|$)",name:"meta.embedded.js",patterns:[{include:"#javascript-expression"}]},{begin:"\\|",beginCaptures:{"0":{name:"punctuation.section.scope.begin.marko"}},comment:"Parameters for a tag",end:"\\|",endCaptures:{"0":{name:"punctuation.section.scope.end.marko"}},patterns:[{include:"source.js#function-parameters-body"},{include:"source.js"}]},{include:"#html-args-or-method"}]},"tag-html":{comment:"Matches an HTML tag and its contents",patterns:[{begin:"\\s*(<)(?=(area|base|br|col|embed|hr|img|input|link|meta|param|source|track|wbr)\\b)",beginCaptures:{"1":{name:"punctuation.definition.tag.end.marko"}},comment:"HTML void elements",end:"/?>",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"}]},{begin:"\\s*(<)(?=style\\.less\\b)",beginCaptures:{"1":{name:"punctuation.definition.tag.begin.marko"}},comment:"HTML style tag with less",end:"/>|(?<=\\>)",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"},{begin:">",beginCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},comment:"Style body content",contentName:"source.less",end:"\\s*(</)(style)?(>)",endCaptures:{"1":{name:"punctuation.definition.tag.end.marko"},"2":{patterns:[{include:"#tag-name"}]},"3":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#content-embedded-style-less"}]}]},{begin:"\\s*(<)(?=style\\.scss\\b)",beginCaptures:{"1":{name:"punctuation.definition.tag.begin.marko"}},comment:"HTML style tag with scss",end:"/>|(?<=\\>)",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"},{begin:">",beginCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},comment:"Style body content",contentName:"source.less",end:"\\s*(</)(style)?(>)",endCaptures:{"1":{name:"punctuation.definition.tag.end.marko"},"2":{patterns:[{include:"#tag-name"}]},"3":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#content-embedded-style-scss"}]}]},{begin:"\\s*(<)(?=style\\b)",beginCaptures:{"1":{name:"punctuation.definition.tag.begin.marko"}},comment:"HTML style tag",end:"/>|(?<=\\>)",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"},{begin:">",beginCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},comment:"Style body content",contentName:"source.css",end:"\\s*(</)(style)?(>)",endCaptures:{"1":{name:"punctuation.definition.tag.end.marko"},"2":{patterns:[{include:"#tag-name"}]},"3":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#content-embedded-style"}]}]},{begin:"\\s*(<)(?=script\\b)",beginCaptures:{"1":{name:"punctuation.definition.tag.begin.marko"}},comment:"HTML script tag",end:"/>|(?<=\\>)",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"},{begin:">",beginCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},comment:"Script body content",contentName:"source.js",end:"\\s*(</)(script)?(>)",endCaptures:{"1":{name:"punctuation.definition.tag.end.marko"},"2":{patterns:[{include:"#tag-name"}]},"3":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#content-embedded-script"}]}]},{begin:"\\s*(<)(?=[a-zA-Z0-9_$@])",beginCaptures:{"1":{name:"punctuation.definition.tag.begin.marko"}},comment:"HTML normal tag",end:"/>|(?<=\\>)",endCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#open-tag-content"},{begin:">",beginCaptures:{"0":{name:"punctuation.definition.tag.end.marko"}},comment:"Body content",end:"\\s*(</)([a-zA-Z0-9_$:@-]+)?(.*?)(>)",endCaptures:{"1":{name:"punctuation.definition.tag.end.marko"},"2":{patterns:[{include:"#tag-name"}]},"3":{patterns:[{include:"#invalid"}]},"4":{name:"punctuation.definition.tag.end.marko"}},patterns:[{include:"#content-html-mode"}]}]}]},"tag-name":{patterns:[{begin:"\\${",beginCaptures:{"0":{name:"punctuation.definition.template-expression.begin.js"}},comment:"Dynamic tag.",end:"}",endCaptures:{"0":{name:"punctuation.definition.template-expression.end.js"}},patterns:[{include:"source.js"}]},{captures:{"1":{name:"entity.name.tag.marko"},"2":{name:"storage.type.marko.css"},"3":{patterns:[{comment:"Core tag.",match:"(attrs|return|import)(?=\\b)",name:"support.type.builtin.marko"},{comment:"Core tag.",match:"(for|if|while|else-if|else|macro|tag|await|let|const|effect|set|get|id|lifecycle)(?=\\b)",name:"support.function.marko"},{comment:"Attribute tag.",match:"@.+",name:"entity.other.attribute-name.marko"},{comment:"Native or userland tag.",match:".+",name:"entity.name.tag.marko"}]}},match:"(style)\\.([a-zA-Z0-9$_-]+(?:\\.[a-zA-Z0-9$_-]+)*)|([a-zA-Z0-9_$@][a-zA-Z0-9_$@:-]*)"}]}},scopeName:"text.marko",uuid:"46c8c3f8-cabe-466a-a633-5deafdc51253"};
export { marko_tmLanguage as default };