@shikijs/langs-precompiled 3.2.2 → 3.3.0

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.
Files changed (224) hide show
  1. package/dist/abap.mjs +1 -1
  2. package/dist/actionscript-3.mjs +1 -1
  3. package/dist/ada.mjs +1 -1
  4. package/dist/angular-expression.mjs +1 -1
  5. package/dist/angular-html.mjs +1 -1
  6. package/dist/angular-inline-style.mjs +1 -1
  7. package/dist/angular-inline-template.mjs +1 -1
  8. package/dist/angular-let-declaration.mjs +1 -1
  9. package/dist/angular-template-blocks.mjs +1 -1
  10. package/dist/angular-ts.mjs +1 -1
  11. package/dist/apache.mjs +1 -1
  12. package/dist/apex.mjs +1 -1
  13. package/dist/apl.mjs +1 -1
  14. package/dist/applescript.mjs +1 -1
  15. package/dist/ara.mjs +1 -1
  16. package/dist/asciidoc.mjs +1 -1
  17. package/dist/asm.mjs +1 -1
  18. package/dist/astro.mjs +1 -1
  19. package/dist/awk.mjs +1 -1
  20. package/dist/ballerina.mjs +1 -1
  21. package/dist/bat.mjs +1 -1
  22. package/dist/beancount.mjs +1 -1
  23. package/dist/berry.mjs +1 -1
  24. package/dist/bibtex.mjs +1 -1
  25. package/dist/bicep.mjs +1 -1
  26. package/dist/blade.mjs +1 -1
  27. package/dist/bsl.mjs +1 -1
  28. package/dist/c.mjs +1 -1
  29. package/dist/cadence.mjs +1 -1
  30. package/dist/cairo.mjs +1 -1
  31. package/dist/clarity.mjs +1 -1
  32. package/dist/clojure.mjs +1 -1
  33. package/dist/cobol.mjs +1 -1
  34. package/dist/codeql.mjs +1 -1
  35. package/dist/coffee.mjs +1 -1
  36. package/dist/common-lisp.mjs +1 -1
  37. package/dist/coq.mjs +1 -1
  38. package/dist/cpp-macro.mjs +1 -1
  39. package/dist/cpp.mjs +1 -1
  40. package/dist/crystal.mjs +1 -1
  41. package/dist/csharp.mjs +1 -1
  42. package/dist/css.mjs +1 -1
  43. package/dist/cue.mjs +1 -1
  44. package/dist/cypher.mjs +1 -1
  45. package/dist/d.mjs +1 -1
  46. package/dist/dart.mjs +1 -1
  47. package/dist/dax.mjs +1 -1
  48. package/dist/desktop.mjs +1 -1
  49. package/dist/diff.mjs +1 -1
  50. package/dist/dotenv.mjs +1 -1
  51. package/dist/dream-maker.mjs +1 -1
  52. package/dist/edge.mjs +1 -1
  53. package/dist/elixir.mjs +1 -1
  54. package/dist/elm.mjs +1 -1
  55. package/dist/emacs-lisp.mjs +1 -1
  56. package/dist/erb.mjs +1 -1
  57. package/dist/erlang.mjs +1 -1
  58. package/dist/es-tag-css.mjs +1 -1
  59. package/dist/es-tag-glsl.mjs +1 -1
  60. package/dist/es-tag-html.mjs +1 -1
  61. package/dist/es-tag-sql.mjs +1 -1
  62. package/dist/es-tag-xml.mjs +1 -1
  63. package/dist/fennel.mjs +1 -1
  64. package/dist/fish.mjs +1 -1
  65. package/dist/fluent.mjs +1 -1
  66. package/dist/fortran-fixed-form.mjs +1 -1
  67. package/dist/fortran-free-form.mjs +1 -1
  68. package/dist/fsharp.mjs +1 -1
  69. package/dist/gdresource.mjs +1 -1
  70. package/dist/gdscript.mjs +1 -1
  71. package/dist/gdshader.mjs +1 -1
  72. package/dist/genie.mjs +1 -1
  73. package/dist/gherkin.mjs +1 -1
  74. package/dist/gleam.mjs +1 -1
  75. package/dist/glimmer-js.mjs +1 -1
  76. package/dist/glimmer-ts.mjs +1 -1
  77. package/dist/glsl.mjs +1 -1
  78. package/dist/gnuplot.mjs +1 -1
  79. package/dist/go.mjs +1 -1
  80. package/dist/graphql.mjs +1 -1
  81. package/dist/groovy.mjs +1 -1
  82. package/dist/hack.mjs +1 -1
  83. package/dist/haml.mjs +1 -1
  84. package/dist/handlebars.mjs +1 -1
  85. package/dist/haskell.mjs +1 -1
  86. package/dist/haxe.mjs +1 -1
  87. package/dist/hcl.mjs +1 -1
  88. package/dist/hjson.mjs +1 -1
  89. package/dist/hlsl.mjs +1 -1
  90. package/dist/html-derivative.mjs +1 -1
  91. package/dist/html.mjs +1 -1
  92. package/dist/http.mjs +1 -1
  93. package/dist/hxml.mjs +1 -1
  94. package/dist/hy.mjs +1 -1
  95. package/dist/imba.mjs +1 -1
  96. package/dist/ini.mjs +1 -1
  97. package/dist/java.mjs +1 -1
  98. package/dist/javascript.mjs +1 -1
  99. package/dist/jinja.mjs +1 -1
  100. package/dist/jison.mjs +1 -1
  101. package/dist/json.mjs +1 -1
  102. package/dist/json5.mjs +1 -1
  103. package/dist/jsonc.mjs +1 -1
  104. package/dist/jsonl.mjs +1 -1
  105. package/dist/jsonnet.mjs +1 -1
  106. package/dist/jssm.mjs +1 -1
  107. package/dist/jsx.mjs +1 -1
  108. package/dist/julia.mjs +1 -1
  109. package/dist/kotlin.mjs +1 -1
  110. package/dist/kusto.mjs +1 -1
  111. package/dist/latex.mjs +1 -1
  112. package/dist/lean.mjs +1 -1
  113. package/dist/less.mjs +1 -1
  114. package/dist/liquid.mjs +1 -1
  115. package/dist/llvm.mjs +1 -1
  116. package/dist/log.mjs +1 -1
  117. package/dist/logo.mjs +1 -1
  118. package/dist/lua.mjs +1 -1
  119. package/dist/luau.mjs +1 -1
  120. package/dist/make.mjs +1 -1
  121. package/dist/markdown-vue.mjs +1 -1
  122. package/dist/markdown.mjs +1 -1
  123. package/dist/marko.mjs +1 -1
  124. package/dist/matlab.mjs +1 -1
  125. package/dist/mdc.mjs +1 -1
  126. package/dist/mdx.mjs +1 -1
  127. package/dist/mermaid.mjs +1 -1
  128. package/dist/mipsasm.mjs +1 -1
  129. package/dist/mojo.mjs +1 -1
  130. package/dist/move.mjs +1 -1
  131. package/dist/narrat.mjs +1 -1
  132. package/dist/nextflow.mjs +1 -1
  133. package/dist/nginx.mjs +1 -1
  134. package/dist/nim.mjs +1 -1
  135. package/dist/nix.mjs +1 -1
  136. package/dist/nushell.mjs +1 -1
  137. package/dist/objective-c.mjs +1 -1
  138. package/dist/objective-cpp.mjs +1 -1
  139. package/dist/ocaml.mjs +1 -1
  140. package/dist/pascal.mjs +1 -1
  141. package/dist/perl.mjs +1 -1
  142. package/dist/php.mjs +1 -1
  143. package/dist/plsql.mjs +1 -1
  144. package/dist/po.mjs +1 -1
  145. package/dist/polar.mjs +1 -1
  146. package/dist/postcss.mjs +1 -1
  147. package/dist/powerquery.mjs +1 -1
  148. package/dist/powershell.mjs +1 -1
  149. package/dist/prisma.mjs +1 -1
  150. package/dist/prolog.mjs +1 -1
  151. package/dist/proto.mjs +1 -1
  152. package/dist/pug.mjs +1 -1
  153. package/dist/puppet.mjs +1 -1
  154. package/dist/purescript.mjs +1 -1
  155. package/dist/python.mjs +1 -1
  156. package/dist/qml.mjs +1 -1
  157. package/dist/qss.mjs +1 -1
  158. package/dist/r.mjs +1 -1
  159. package/dist/racket.mjs +1 -1
  160. package/dist/raku.mjs +1 -1
  161. package/dist/razor.mjs +1 -1
  162. package/dist/reg.mjs +1 -1
  163. package/dist/regexp.mjs +1 -1
  164. package/dist/rel.mjs +1 -1
  165. package/dist/riscv.mjs +1 -1
  166. package/dist/rst.mjs +1 -1
  167. package/dist/ruby.mjs +1 -1
  168. package/dist/rust.mjs +1 -1
  169. package/dist/sas.mjs +1 -1
  170. package/dist/sass.mjs +1 -1
  171. package/dist/scala.mjs +1 -1
  172. package/dist/scheme.mjs +1 -1
  173. package/dist/scss.mjs +1 -1
  174. package/dist/sdbl.mjs +1 -1
  175. package/dist/shaderlab.mjs +1 -1
  176. package/dist/shellscript.mjs +1 -1
  177. package/dist/shellsession.mjs +1 -1
  178. package/dist/smalltalk.mjs +1 -1
  179. package/dist/solidity.mjs +1 -1
  180. package/dist/soy.mjs +1 -1
  181. package/dist/sparql.mjs +1 -1
  182. package/dist/splunk.mjs +1 -1
  183. package/dist/sql.mjs +1 -1
  184. package/dist/ssh-config.mjs +1 -1
  185. package/dist/stata.mjs +1 -1
  186. package/dist/stylus.mjs +1 -1
  187. package/dist/svelte.mjs +1 -1
  188. package/dist/system-verilog.mjs +1 -1
  189. package/dist/systemd.mjs +1 -1
  190. package/dist/talonscript.mjs +1 -1
  191. package/dist/tasl.mjs +1 -1
  192. package/dist/tcl.mjs +1 -1
  193. package/dist/templ.mjs +1 -1
  194. package/dist/terraform.mjs +1 -1
  195. package/dist/tex.mjs +1 -1
  196. package/dist/toml.mjs +1 -1
  197. package/dist/tsx.mjs +1 -1
  198. package/dist/turtle.mjs +1 -1
  199. package/dist/twig.mjs +1 -1
  200. package/dist/typescript.mjs +1 -1
  201. package/dist/typespec.mjs +1 -1
  202. package/dist/typst.mjs +1 -1
  203. package/dist/v.mjs +1 -1
  204. package/dist/vala.mjs +1 -1
  205. package/dist/vb.mjs +1 -1
  206. package/dist/verilog.mjs +1 -1
  207. package/dist/vhdl.mjs +1 -1
  208. package/dist/viml.mjs +1 -1
  209. package/dist/vue-html.mjs +1 -1
  210. package/dist/vue-sfc-style-variable-injection.mjs +1 -1
  211. package/dist/vue.mjs +3 -3
  212. package/dist/vyper.mjs +1 -1
  213. package/dist/wasm.mjs +1 -1
  214. package/dist/wenyan.mjs +1 -1
  215. package/dist/wgsl.mjs +1 -1
  216. package/dist/wikitext.mjs +1 -1
  217. package/dist/wit.mjs +1 -1
  218. package/dist/wolfram.mjs +1 -1
  219. package/dist/xml.mjs +1 -1
  220. package/dist/xsl.mjs +1 -1
  221. package/dist/yaml.mjs +1 -1
  222. package/dist/zenscript.mjs +1 -1
  223. package/dist/zig.mjs +1 -1
  224. package/package.json +4 -4
package/dist/imba.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { EmulatedRegExp } from 'oniguruma-to-es'
2
2
 
3
- const lang = Object.freeze({displayName:"Imba",fileTypes:["imba","imba2"],name:"imba",patterns:[{include:"#root"},{captures:{"1":{name:"punctuation.definition.comment.imba"}},match:/^(#!)[^\n]*(?=(?=\n?$))/dgv,name:"comment.line.shebang.imba"}],repository:{"array-literal":{begin:/\p{space}*(\[)/dgv,beginCaptures:{"1":{name:"meta.brace.square.imba"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.imba"}},name:"meta.array.literal.imba",patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},block:{patterns:[{include:"#style-declaration"},{include:"#mixin-declaration"},{include:"#object-keys"},{include:"#generics-literal"},{include:"#tag-literal"},{include:"#regex"},{include:"#keywords"},{include:"#comment"},{include:"#literal"},{include:"#plain-identifiers"},{include:"#plain-accessors"},{include:"#pairs"},{include:"#invalid-indentation"}]},"boolean-literal":{patterns:[{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(true|yes)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.boolean.true.imba"},{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(false|no)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.boolean.false.imba"}]},brackets:{patterns:[{begin:/\{/dgv,end:/\}|(?=\*\/)/dgv,patterns:[{include:"#brackets"}]},{begin:/\[/dgv,end:/\]|(?=\*\/)/dgv,patterns:[{include:"#brackets"}]}]},comment:{patterns:[{begin:/\/\*\*(?!\/)/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.imba"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.documentation.imba",patterns:[{include:"#docblock"}]},{begin:/(\/\*)(?:\p{space}*((@)internal)(?=\p{space}|(\*\/)))?/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"},"2":{name:"storage.type.internaldeclaration.imba"},"3":{name:"punctuation.decorator.internaldeclaration.imba"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.imba"},{begin:/(### @ts(?=\p{space}|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},contentName:"source.ts.embedded.imba",end:/###/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"ts.block.imba"},{begin:/(###)/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},end:/###[ \t]*\n/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.imba"},{begin:/(^[ \t]+)?((\/\/|#\p{space})(?:\p{space}*((@)internal)(?=\p{space}|(?=\n?$)))?)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.imba"},"2":{name:"comment.line.double-slash.imba"},"3":{name:"punctuation.definition.comment.imba"},"4":{name:"storage.type.internaldeclaration.imba"},"5":{name:"punctuation.decorator.internaldeclaration.imba"}},contentName:"comment.line.double-slash.imba",end:/(?=(?=\n?$))/dgv}]},"css-color-keywords":{patterns:[{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgiv,name:"support.constant.color.w3c-standard-color-name.css"},{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgiv,name:"support.constant.color.w3c-extended-color-name.css"},{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])currentColor(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgiv,name:"support.constant.color.current.css"}]},"css-combinators":{patterns:[{match:/>>>|>>|[\>\+\~]/dgv,name:"punctuation.separator.combinator.css"},{match:/&/dgv,name:"keyword.other.parent-selector.css"}]},"css-commas":{match:/,/dgv,name:"punctuation.separator.list.comma.css"},"css-comment":{patterns:[{match:/#(\p{space}[^\n]+)?(\n|(?=\n?$))/dgv,name:"comment.line.imba"},{match:/(^\t+)(#(\p{space}[^\n]+)?(\n|(?=\n?$)))/dgv,name:"comment.line.imba"}]},"css-escapes":{patterns:[{match:/\\\p{AHex}{1,6}/dgv,name:"constant.character.escape.codepoint.css"},{begin:/\\(?=\n?$)\p{space}*/dgv,end:/*@__PURE__*/ new EmulatedRegExp("^(?<!^)","dgv",{"strategy":"clip_search"}),name:"constant.character.escape.newline.css"},{match:/\\[^\n]/dgv,name:"constant.character.escape.css"}]},"css-functions":{patterns:[{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(calc)(\()/dgiv,beginCaptures:{"1":{name:"support.function.calc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.calc.css",patterns:[{match:/[\*\/]|(?<=\p{space}|^)[\-\+](?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.arithmetic.css"},{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(rgba?|hsla?)(\()/dgiv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.color.css",patterns:[{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])((?:-(?:webkit-|moz-|o-))?(?:repeating-)?(?:linear|radial|conic)-gradient)(\()/dgiv,beginCaptures:{"1":{name:"support.function.gradient.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.gradient.css",patterns:[{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(from|to|at)(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgiv,name:"keyword.operator.gradient.css"},{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(-webkit-gradient)(\()/dgiv,beginCaptures:{"1":{name:"invalid.deprecated.gradient.function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.gradient.invalid.deprecated.gradient.css",patterns:[{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(from|to|color-stop)(\()/dgiv,beginCaptures:{"1":{name:"invalid.deprecated.function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},patterns:[{include:"#css-property-values"}]},{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(annotation|attr|blur|brightness|character-variant|contrast|counters?|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate|image-set|invert|local|minmax|opacity|ornaments|repeat|saturate|sepia|styleset|stylistic|swash|symbols)(\()/dgiv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.misc.css",patterns:[{match:/(?<=[\,\p{space}"]|\*\/|^)\p{Nd}+x(?=[\p{space}\,"'\)]|\/\*|(?=\n?$))/dgiv,name:"constant.numeric.other.density.css"},{include:"#css-property-values"},{match:/[^'"\)\,\p{space}]+/dgv,name:"variable.parameter.misc.css"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(circle|ellipse|inset|polygon|rect)(\()/dgiv,beginCaptures:{"1":{name:"support.function.shape.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.shape.css",patterns:[{match:/(?<=\p{space}|^|\*\/)(at|round)(?=\p{space}|\/\*|(?=\n?$))/dgiv,name:"keyword.operator.shape.css"},{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(cubic-bezier|steps)(\()/dgiv,beginCaptures:{"1":{name:"support.function.timing-function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.timing-function.css",patterns:[{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])(start|end)(?=\p{space}*\)|(?=\n?$))/dgiv,name:"support.constant.step-direction.css"},{include:"#css-property-values"}]},{begin:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])((?:translate|scale|rotate)(?:[XYZ]|3D)?|matrix(?:3D)?|skew[XY]?|perspective)(\()/dgiv,beginCaptures:{"1":{name:"support.function.transform.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},patterns:[{include:"#css-property-values"}]}]},"css-numeric-values":{patterns:[{captures:{"1":{name:"punctuation.definition.constant.css"}},match:/(#)(?:\p{AHex}{3,4}|\p{AHex}{6}|\p{AHex}{8})\b/dgv,name:"constant.other.color.rgb-value.hex.css"},{captures:{"1":{name:"keyword.other.unit.percentage.css"},"2":{name:"keyword.other.unit.${2:/downcase}.css"}},match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\-])[\-\+]?(?:[0-9]+(?:\.[0-9]+)?|\.[0-9]+)(?:(?<=[0-9])E[\-\+]?[0-9]+)?(?:(%)|(deg|grad|rad|turn|Hz|kHz|ch|cm|em|ex|fr|in|mm|mozmm|pc|pt|px|q|rem|vh|vmax|vmin|vw|dpi|dpcm|dppx|s|ms)\b)?/dgiv,name:"constant.numeric.css"}]},"css-property-values":{patterns:[{include:"#css-commas"},{include:"#css-escapes"},{include:"#css-functions"},{include:"#css-numeric-values"},{include:"#css-size-keywords"},{include:"#css-color-keywords"},{include:"#string"},{match:/!\p{space}*important(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"keyword.other.important.css"}]},"css-pseudo-classes":{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"invalid.illegal.colon.css"}},match:/(:)(:*)(?:active|any-link|checked|default|defined|disabled|empty|enabled|first|(?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within|fullscreen|host|hover|in-range|indeterminate|invalid|left|link|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|target|unresolved|valid|visited)(?![\p{L}\p{M}\p{N}\p{Pc}\-]|\p{space}*[\;\}])/dgiv,name:"entity.other.attribute-name.pseudo-class.css"},"css-pseudo-elements":{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"punctuation.definition.entity.css"}},match:/(?:(::?)(?:after|before|first-letter|first-line|(?:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-z\-]+)|(::)(?:backdrop|content|grammar-error|marker|placeholder|selection|shadow|spelling-error))(?![\p{L}\p{M}\p{N}\p{Pc}\-]|\p{space}*[\;\}])/dgiv,name:"entity.other.attribute-name.pseudo-element.css"},"css-selector":{begin:/(?<=css\p{space})(?![\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"css-selector-innards":{patterns:[{include:"#css-commas"},{include:"#css-escapes"},{include:"#css-combinators"},{match:/(%[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,name:"entity.other.attribute-name.mixin.css"},{match:/\*/dgv,name:"entity.name.tag.wildcard.css"},{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.entity.begin.bracket.square.css"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.entity.end.bracket.square.css"}},name:"meta.attribute-selector.css",patterns:[{include:"#string"},{captures:{"1":{name:"storage.modifier.ignore-case.css"}},match:/(?<=["'\p{space}]|^|\*\/)\p{space}*([iI])\p{space}*(?=[\p{space}\]]|\/\*|(?=\n?$))/dgv},{captures:{"1":{name:"string.unquoted.attribute-value.css"}},match:/(?<==)\p{space}*((?!\/\*)(?:[^\\"'\p{space}\]]|\\[^\n])+)/dgv},{include:"#css-escapes"},{match:/[\~\|\^\$\*]?=/dgv,name:"keyword.operator.pattern.css"},{match:/\|/dgv,name:"punctuation.separator.css"},{captures:{"1":{name:"entity.other.namespace-prefix.css"}},match:/(-?(?!\p{Nd})(?:[\p{L}\p{M}\p{N}\p{Pc}\-[^\\x00-\\7F]]|\\(?:\p{AHex}{1,6}|[^\n]))+|\*)(?=\|(?![\p{space}\=]|(?=\n?$)|\])(?:-?(?!\p{Nd})|[\\\p{L}\p{M}\p{N}\p{Pc}\-[^\\x00-\\7F]]))/dgv},{captures:{"1":{name:"entity.other.attribute-name.css"}},match:/*@__PURE__*/ new EmulatedRegExp("(-?(?!\\p{Nd})(?:(?=([\\p{L}\\p{M}\\p{N}\\p{Pc}\\-[^\\\\x00-\\\\7F]]|\\\\(?:\\p{AHex}{1,6}|[^\\n])))\\2)+)\\p{space}*(?=[\\~\\|\\^\\]\\$\\*\\=]|/\\*)","dgv",{"hiddenCaptures":[2]})}]},{include:"#css-pseudo-classes"},{include:"#css-pseudo-elements"},{include:"#css-mixin"}]},"css-size-keywords":{patterns:[{match:/(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.size.property-value.css"}]},"curly-braces":{begin:/\p{space}*(\{)/dgv,beginCaptures:{"1":{name:"meta.brace.curly.imba"}},end:/\}/dgv,endCaptures:{"0":{name:"meta.brace.curly.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},decorator:{begin:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))@(?!@)/dgv,beginCaptures:{"0":{name:"punctuation.decorator.imba"}},end:/(?=\p{space})/dgv,name:"meta.decorator.imba",patterns:[{include:"#expr"}]},directives:{begin:/^(\/\/\/)\p{space}*(?=<(reference|amd-dependency|amd-module)(\p{space}+(path|types|no-default-lib|lib|name)\p{space}*=\p{space}*(('([^'\\]|\\[^\n])*')|("([^"\\]|\\[^\n])*")|(`([^\`\\]|\\[^\n])*`)))+\p{space}*\/>\p{space}*(?=\n?$))/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},end:/(?=(?=\n?$))/dgv,name:"comment.line.triple-slash.directive.imba",patterns:[{begin:/(<)(reference|amd-dependency|amd-module)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.directive.imba"},"2":{name:"entity.name.tag.directive.imba"}},end:/\/>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.directive.imba"}},name:"meta.tag.imba",patterns:[{match:/path|types|no-default-lib|lib|name/dgv,name:"entity.other.attribute-name.directive.imba"},{match:/=/dgv,name:"keyword.operator.assignment.imba"},{include:"#string"}]}]},docblock:{patterns:[{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"constant.language.access-type.jsdoc"}},match:/((@)a(?:ccess|pi))\p{space}+(p(?:rivate|rotected|ublic))\b/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"},"4":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{name:"constant.other.email.link.underline.jsdoc"},"6":{name:"punctuation.definition.bracket.angle.end.jsdoc"}},match:/((@)author)\p{space}+([^\@\p{space}\<\>\*\/](?:[^\@\<\>\*\/]|\*[^\/])*)(?:\p{space}*(<)([^\>\p{space}]+)(>))?/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"},"4":{name:"keyword.operator.control.jsdoc"},"5":{name:"entity.name.type.instance.jsdoc"}},match:/((@)borrows)\p{space}+((?:[^\@\p{space}\*\/]|\*[^\/])+)\p{space}+(as)\p{space}+((?:[^\@\p{space}\*\/]|\*[^\/])+)/dgv},{begin:/((@)example)\p{space}+/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=@|\*\/)/dgv,name:"meta.example.jsdoc",patterns:[{match:/^\p{space}\*\p{space}+/dgv},{begin:/(<)caption(>)/dgvy,beginCaptures:{"0":{name:"entity.name.tag.inline.jsdoc"},"1":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{name:"punctuation.definition.bracket.angle.end.jsdoc"}},contentName:"constant.other.description.jsdoc",end:/(<\/)caption(>)|(?=\*\/)/dgv,endCaptures:{"0":{name:"entity.name.tag.inline.jsdoc"},"1":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{name:"punctuation.definition.bracket.angle.end.jsdoc"}}},{captures:{"0":{name:"source.embedded.imba"}},match:/[^\p{space}\@\*](?:[^\*]|\*[^\/])*/dgv}]},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"constant.language.symbol-type.jsdoc"}},match:/((@)kind)\p{space}+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\b/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.link.underline.jsdoc"},"4":{name:"entity.name.type.instance.jsdoc"}},match:/((@)see)\p{space}+(?:((?=https?:\/\/)(?:[^\p{space}\*]|\*[^\/])+)|((?!https?:\/\/|(?:\[[^\[\]]*\])?\{@(?:link|linkcode|linkplain|tutorial)\b)(?:[^\@\p{space}\*\/]|\*[^\/])+))/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)template)\p{space}+([A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$\.\[\]]*(?:\p{space}*,\p{space}*[A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$\.\[\]]*)*)/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)(?:arg|argument|const|constant|member|namespace|param|var))\p{space}+([A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$\.\[\]]*)/dgv},{begin:/((@)typedef)\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\{\}\[\]A-Za-z_\$])/dgv,patterns:[{include:"#jsdoctype"},{match:/(?:[^\@\p{space}\*\/]|\*[^\/])+/dgv,name:"entity.name.type.instance.jsdoc"}]},{begin:/((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\{\}\[\]A-Za-z_\$])/dgv,patterns:[{include:"#jsdoctype"},{match:/([A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$\.\[\]]*)/dgv,name:"variable.other.jsdoc"},{captures:{"1":{name:"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{name:"keyword.operator.assignment.jsdoc"},"3":{name:"source.embedded.imba"},"4":{name:"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{name:"invalid.illegal.syntax.jsdoc"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\[)\\p{space}*[\\p{L}\\p{M}\\p{N}\\p{Pc}\\$]+(?:(?:\\[\\])?\\.[\\p{L}\\p{M}\\p{N}\\p{Pc}\\$]+)*(?:\\p{space}*(=)\\p{space}*((?:(?=(\"(?:\\*(?!/)|\\\\(?!\")|[^\\*\\\\])*?\"|'(?:\\*(?!/)|\\\\(?!')|[^\\*\\\\])*?'|\\[(?:\\*(?!/)|[^\\*])*?\\]|(?:\\*(?!/)|\\p{space}(?!\\p{space}*\\])|\\[[^\\n]*?(?:\\]|(?=\\*/))|[^\\*\\p{space}\\[\\]])*))\\4)*))?\\p{space}*(?:(\\])((?:[^\\*\\p{space}]|\\*[^\\p{space}\\/])+)?|(?=\\*/))","dgv",{"hiddenCaptures":[4]}),name:"variable.other.jsdoc"}]},{begin:/((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|suppress|this|throws|type|yields?))\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\{\}\[\]A-Za-z_\$])/dgv,patterns:[{include:"#jsdoctype"}]},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"}},match:/((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\p{space}+((?:[^\{\}\@\p{space}\*]|\*[^\/])+)/dgv},{begin:/((@)(?:default(?:value)?|license|version))\p{space}+((['"]))/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"},"4":{name:"punctuation.definition.string.begin.jsdoc"}},contentName:"variable.other.jsdoc",end:/(\3)|(?=(?=\n?$)|\*\/)()()/dgv,endCaptures:{"0":{name:"variable.other.jsdoc"},"1":{name:"punctuation.definition.string.end.jsdoc"}}},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)(?:default(?:value)?|license|tutorial|variation|version))\p{space}+([^\p{space}\*]+)/dgv},{captures:{"1":{name:"punctuation.definition.block.tag.jsdoc"}},match:/(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\b/dgv,name:"storage.type.class.jsdoc"},{include:"#inline-tags"},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},match:/((@)[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)(?=\p{space}+)/dgv}]},expr:{patterns:[{include:"#style-declaration"},{include:"#object-keys"},{include:"#generics-literal"},{include:"#tag-literal"},{include:"#regex"},{include:"#keywords"},{include:"#comment"},{include:"#literal"},{include:"#plain-identifiers"},{include:"#plain-accessors"},{include:"#pairs"}]},expression:{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.imba"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.imba"}},patterns:[{include:"#expr"}]},{include:"#tag-literal"},{include:"#expressionWithoutIdentifiers"},{include:"#identifiers"},{include:"#expressionPunctuations"}]},expressionPunctuations:{patterns:[{include:"#punctuation-comma"},{include:"#punctuation-accessor"}]},expressionWithoutIdentifiers:{patterns:[{include:"#string"},{include:"#regex"},{include:"#comment"},{include:"#function-expression"},{include:"#class-expression"},{include:"#ternary-expression"},{include:"#new-expr"},{include:"#instanceof-expr"},{include:"#object-literal"},{include:"#expression-operators"},{include:"#literal"},{include:"#support-objects"}]},"generics-literal":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}\]\)])</dgv,beginCaptures:{"1":{name:"meta.generics.annotation.open.imba"}},end:/>/dgv,endCaptures:{"0":{name:"meta.generics.annotation.close.imba"}},name:"meta.generics.annotation.imba",patterns:[{include:"#type-brackets"}]},"global-literal":{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(global)\b(?!\$)/dgv,name:"variable.language.global.imba"},identifiers:{patterns:[{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"entity.name.function.property.imba"}},match:/(?:(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))\p{space}*)?([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)(?=\p{space}*=\{\{functionOrArrowLookup\}\})/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.constant.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))\p{space}*(#?\p{Upper}[_\$\p{Nd}\p{Upper}]*)(?![_\$\p{Alpha}\p{Nd}])/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.class.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))(\p{Upper}[_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*!?)/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))(#?[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)/dgv},{match:/(for own|for|if|unless|when)\b/dgv,name:"keyword.other"},{match:/require/dgv,name:"support.function.require"},{include:"#plain-identifiers"},{include:"#type-literal"},{include:"#generics-literal"}]},"inline-css-selector":{begin:/(^\t+)(?![\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=])/dgv,end:/(\p{space}*(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=]|[\)\]])|\p{space}*(?=\n?$))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"inline-styles":{patterns:[{include:"#style-property"},{include:"#css-property-values"},{include:"#style-expr"}]},"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))/dgv,name:"constant.other.description.jsdoc"},{begin:/(\{)((@)(?:link(?:code|plain)?|tutorial))\p{space}*/dgv,beginCaptures:{"1":{name:"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{name:"storage.type.class.jsdoc"},"3":{name:"punctuation.definition.inline.tag.jsdoc"}},end:/\}|(?=\*\/)/dgv,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:/((?=https?:\/\/)(?:[^\|\}\p{space}\*]|\*\/)+)(\|)?/dgvy},{captures:{"1":{name:"variable.other.description.jsdoc"},"2":{name:"punctuation.separator.pipe.jsdoc"}},match:/((?:[^\{\}\@\p{space}\|\*]|\*[^\/])+)(\|)?/dgvy}]}]},"invalid-indentation":{patterns:[{match:/^ +/dgv,name:"invalid.whitespace"},{match:/^\t+\p{space}+/dgv,name:"invalid.whitespace"}]},jsdoctype:{patterns:[{match:/\{(?:[^\}\*]|\*[^\/\}])+(?=\n?$)/dgvy,name:"invalid.illegal.type.jsdoc"},{begin:/(\{)/dgvy,beginCaptures:{"0":{name:"entity.name.type.instance.jsdoc"},"1":{name:"punctuation.definition.bracket.curly.begin.jsdoc"}},contentName:"entity.name.type.instance.jsdoc",end:/((\}))\p{space}*|(?=\*\/)/dgv,endCaptures:{"1":{name:"entity.name.type.instance.jsdoc"},"2":{name:"punctuation.definition.bracket.curly.end.jsdoc"}},patterns:[{include:"#brackets"}]}]},keywords:{patterns:[{match:/(if|elif|else|unless|switch|when|then|do|import|export|for own|for|while|until|return|yield|try|catch|await|rescue|finally|throw|as|continue|break|extend|augment)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.control.imba"},{match:/(?<=export)\p{space}+(default)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.control.imba"},{match:/(?<=import)\p{space}+(type)(?=\p{space}+[\p{L}\p{M}\p{N}\p{Pc}\{\$_])/dgv,name:"keyword.control.imba"},{match:/(extend|global|abstract)\p{space}+(?=class|tag|abstract|mixin|interface)/dgv,name:"keyword.control.imba"},{match:/(?<=[\*\}\p{L}\p{M}\p{N}\p{Pc}\$])\p{space}+(from)(?=\p{space}+["'])/dgv,name:"keyword.control.imba"},{match:/(def|get|set)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.function.imba"},{match:/(pr(?:otected|ivate))\p{space}+(?=def|get|set)/dgv,name:"keyword.control.imba"},{match:/(tag|class|struct|mixin|interface)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.class.imba"},{match:/(let|const|constructor)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.imba"},{match:/(prop|attr)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.imba"},{match:/(static)\p{space}+/dgv,name:"storage.modifier.imba"},{match:/(declare)\p{space}+/dgv,name:"storage.modifier.imba"},{include:"#ops"},{match:/(=|\|\|=|\?\?=|&&=|\+=|-=|\*=|\^=|%=)/dgv,name:"keyword.operator.assignment.imba"},{match:/(>=?|<=?)/dgv,name:"keyword.operator.imba"},{match:/(of|delete|!?isa|typeof|!?in|new|!?is|isnt)(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.operator.imba"}]},literal:{patterns:[{include:"#number-with-unit-literal"},{include:"#numeric-literal"},{include:"#boolean-literal"},{include:"#null-literal"},{include:"#undefined-literal"},{include:"#numericConstant-literal"},{include:"#this-literal"},{include:"#global-literal"},{include:"#super-literal"},{include:"#type-literal"},{include:"#generics-literal"},{include:"#string"}]},"mixin-css-selector":{begin:/(%[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.mixin.css"}},end:/(\p{space}*(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"mixin-css-selector-after":{begin:/(?<=%[\p{L}\p{M}\p{N}\p{Pc}\-]+)(?![\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"mixin-declaration":{begin:/^(\t*)(%[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,beginCaptures:{"2":{name:"entity.other.attribute-name.mixin.css"}},end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#mixin-css-selector-after"},{include:"#css-comment"},{include:"#nested-css-selector"},{include:"#inline-styles"}]},"nested-css-selector":{begin:/(^\t+)(?![\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"nested-style-declaration":{begin:/^(\t+)(?=[\n\^]*&)/dgv,end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#nested-css-selector"},{include:"#inline-styles"}]},"null-literal":{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))null(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.null.imba"},"number-with-unit-literal":{patterns:[{captures:{"1":{name:"constant.numeric.imba"},"2":{name:"keyword.other.unit.imba"}},match:/([0-9]+)([a-z]+|%)/dgv},{captures:{"1":{name:"constant.numeric.decimal.imba"},"2":{name:"keyword.other.unit.imba"}},match:/([0-9]*\.[0-9]+(?:[eE][\-\+]?[0-9]+)?)([a-z]+|%)/dgv}]},"numeric-literal":{patterns:[{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[xX]\p{AHex}[_\p{AHex}]*(n)?\b(?!\$)/dgv,name:"constant.numeric.hex.imba"},{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[bB][01][01_]*(n)?\b(?!\$)/dgv,name:"constant.numeric.binary.imba"},{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[oO]?[0-7][0-7_]*(n)?\b(?!\$)/dgv,name:"constant.numeric.octal.imba"},{captures:{"0":{name:"constant.numeric.decimal.imba"},"1":{name:"meta.delimiter.decimal.period.imba"},"2":{name:"storage.type.numeric.bigint.imba"},"3":{name:"meta.delimiter.decimal.period.imba"},"4":{name:"storage.type.numeric.bigint.imba"},"5":{name:"meta.delimiter.decimal.period.imba"},"6":{name:"storage.type.numeric.bigint.imba"},"7":{name:"storage.type.numeric.bigint.imba"},"8":{name:"meta.delimiter.decimal.period.imba"},"9":{name:"storage.type.numeric.bigint.imba"},"10":{name:"meta.delimiter.decimal.period.imba"},"11":{name:"storage.type.numeric.bigint.imba"},"12":{name:"meta.delimiter.decimal.period.imba"},"13":{name:"storage.type.numeric.bigint.imba"},"14":{name:"storage.type.numeric.bigint.imba"}},match:/(?<!\$)(?:\b[0-9][0-9_]*(\.)[0-9][0-9_]*[eE][\+\-]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)[eE][\+\-]?[0-9][0-9_]*(n)?\b|\B(\.)[0-9][0-9_]*[eE][\+\-]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*[eE][\+\-]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)(n)?\B|\B(\.)[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(n)?\b)(?!\$)/dgv}]},"numericConstant-literal":{patterns:[{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))NaN(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.nan.imba"},{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))Infinity(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.infinity.imba"}]},"object-keys":{patterns:[{match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?:/dgv,name:"meta.object-literal.key"}]},ops:{patterns:[{match:/\.\.\./dgv,name:"keyword.operator.spread.imba"},{match:/\*=|(?<!\()\/=|%=|\+=|-=|\?=|\?\?=|=\?/dgv,name:"keyword.operator.assignment.compound.imba"},{match:/\^=\?|\|=\?|~=\?|&=|\^=|<<=|>>=|>>>=|\|=/dgv,name:"keyword.operator.assignment.compound.bitwise.imba"},{match:/<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.imba"},{match:/===|!==|==|!=|~=/dgv,name:"keyword.operator.comparison.imba"},{match:/<=|>=|<>|[\<\>]/dgv,name:"keyword.operator.relational.imba"},{captures:{"1":{name:"keyword.operator.logical.imba"},"2":{name:"keyword.operator.arithmetic.imba"}},match:/(!)\p{space}*(\/)(?![\/\*])/dgv},{match:/!|&&|\|\||\?\?|or\b(?=\p{space}|(?=\n?$))|and\b(?=\p{space}|(?=\n?$))|@\b(?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.logical.imba"},{match:/\?(?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.bitwise.imba"},{match:/[\&\~\^\|]/dgv,name:"keyword.operator.ternary.imba"},{match:/=/dgv,name:"keyword.operator.assignment.imba"},{match:/--/dgv,name:"keyword.operator.decrement.imba"},{match:/\+\+/dgv,name:"keyword.operator.increment.imba"},{match:/[\%\*\/\-\+]/dgv,name:"keyword.operator.arithmetic.imba"}]},pairs:{patterns:[{include:"#curly-braces"},{include:"#square-braces"},{include:"#round-braces"}]},"plain-accessors":{patterns:[{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"variable.other.property.imba"}},match:/(\.\.?)([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)/dgv}]},"plain-identifiers":{patterns:[{match:/(\p{Upper}[_\$\p{Nd}\p{Upper}]*)(?![_\$\p{Alpha}\p{Nd}])/dgv,name:"variable.other.constant.imba"},{match:/\p{Upper}[_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*!?/dgv,name:"variable.other.class.imba"},{match:/\$\p{Nd}+/dgv,name:"variable.special.imba"},{match:/\$[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"variable.other.internal.imba"},{match:/@@+[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"variable.other.symbol.imba"},{match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"variable.other.readwrite.imba"},{match:/@[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"variable.other.instance.imba"},{match:/#+[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"variable.other.private.imba"},{match:/:[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"string.symbol.imba"}]},"punctuation-accessor":{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))/dgv},"punctuation-comma":{match:/,/dgv,name:"punctuation.separator.comma.imba"},"punctuation-semicolon":{match:/;/dgv,name:"punctuation.terminator.statement.imba"},"qstring-double":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.imba"}},name:"string.quoted.double.imba",patterns:[{include:"#template-substitution-element"},{include:"#string-character-escape"}]},"qstring-single":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/(')|([^\\\n](?=\n?$))/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"invalid.illegal.newline.imba"}},name:"string.quoted.single.imba",patterns:[{include:"#string-character-escape"}]},"qstring-single-multi":{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/'''/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.imba"}},name:"string.quoted.single.imba",patterns:[{include:"#string-character-escape"}]},regex:{patterns:[{begin:/(?<!\+\+|--|\})(?<=[\=\(\:\,\[\?\+\!]|^return|[^\._\$\p{Alpha}\p{Nd}]return|^case|[^\._\$\p{Alpha}\p{Nd}]case|=>|&&|\|\||\*\/)\p{space}*(\/)(?![\/\*])(?=(?:[^\/\\\[\(\)]|\\[^\n]|\[([^\]\\]|\\[^\n])+\]|\(([^\)\\]|\\[^\n])+\))+\/([gimsuy]+|(?![\/\*])|(?=\/\*))(?!\p{space}*[a-zA-Z0-9_\$]))/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.imba"}},end:/(\/)([gimsuy]*)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"keyword.other.imba"}},name:"string.regexp.imba",patterns:[{include:"#regexp"}]},{begin:/((?<![_\$\p{Alpha}\p{Nd}\)\]]|\+\+|--|\}|\*\/)|((?<=^return|[^\._\$\p{Alpha}\p{Nd}]return|^case|[^\._\$\p{Alpha}\p{Nd}]case))\p{space}*)\/(?![\/\*])(?=(?:[^\/\\\[]|\\[^\n]|\[([^\]\\]|\\[^\n])+\])+\/([gimsuy]+|(?![\/\*])|(?=\/\*))(?!\p{space}*[a-zA-Z0-9_\$]))/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/(\/)([gimsuy]*)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"keyword.other.imba"}},name:"string.regexp.imba",patterns:[{include:"#regexp"}]}]},"regex-character-class":{patterns:[{match:/\\[wWsSdDtrnvf]|\./dgv,name:"constant.other.character-class.regexp"},{match:/\\([0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4})/dgv,name:"constant.character.numeric.regexp"},{match:/\\c[A-Z]/dgv,name:"constant.character.control.regexp"},{match:/\\[^\n]/dgv,name:"constant.character.escape.backslash.regexp"}]},regexp:{patterns:[{match:/\\[bB]|[\^\$]/dgv,name:"keyword.control.anchor.regexp"},{captures:{"0":{name:"keyword.other.back-reference.regexp"},"1":{name:"variable.other.regexp"}},match:/\\(?:[1-9]\p{Nd}*|k<([a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)>)/dgv},{match:/[\?\+\*]|\{(\p{Nd}+,\p{Nd}+|\p{Nd}+,|,\p{Nd}+|\p{Nd}+)\}\??/dgv,name:"keyword.operator.quantifier.regexp"},{match:/\|/dgv,name:"keyword.operator.or.regexp"},{begin:/(\()((\?=)|(\?!)|(\?<=)|(\?<!))/dgv,beginCaptures:{"1":{name:"punctuation.definition.group.regexp"},"2":{name:"punctuation.definition.group.assertion.regexp"},"3":{name:"meta.assertion.look-ahead.regexp"},"4":{name:"meta.assertion.negative-look-ahead.regexp"},"5":{name:"meta.assertion.look-behind.regexp"},"6":{name:"meta.assertion.negative-look-behind.regexp"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.group.regexp"}},name:"meta.group.assertion.regexp",patterns:[{include:"#regexp"}]},{begin:/\((?:(\?:)|\?<([a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)>)?/dgv,beginCaptures:{"0":{name:"punctuation.definition.group.regexp"},"1":{name:"punctuation.definition.group.no-capture.regexp"},"2":{name:"variable.other.regexp"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.group.regexp"}},name:"meta.group.regexp",patterns:[{include:"#regexp"}]},{begin:/(\[)(\^)?/dgv,beginCaptures:{"1":{name:"punctuation.definition.character-class.regexp"},"2":{name:"keyword.operator.negation.regexp"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.character-class.regexp"}},name:"constant.other.character-class.set.regexp",patterns:[{captures:{"1":{name:"constant.character.numeric.regexp"},"2":{name:"constant.character.control.regexp"},"3":{name:"constant.character.escape.backslash.regexp"},"4":{name:"constant.character.numeric.regexp"},"5":{name:"constant.character.control.regexp"},"6":{name:"constant.character.escape.backslash.regexp"}},match:/(?:[^\n]|(\\(?:[0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4}))|(\\c[A-Z])|(\\[^\n]))-(?:[^\]\\]|(\\(?:[0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4}))|(\\c[A-Z])|(\\[^\n]))/dgv,name:"constant.other.character-class.range.regexp"},{include:"#regex-character-class"}]},{include:"#regex-character-class"}]},root:{patterns:[{include:"#block"}]},"round-braces":{begin:/\p{space}*(\()/dgv,beginCaptures:{"1":{name:"meta.brace.round.imba"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},"single-line-comment-consuming-line-ending":{begin:/(^[ \t]+)?((\/\/|#\p{space})(?:\p{space}*((@)internal)(?=\p{space}|(?=\n?$)))?)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.imba"},"2":{name:"comment.line.double-slash.imba"},"3":{name:"punctuation.definition.comment.imba"},"4":{name:"storage.type.internaldeclaration.imba"},"5":{name:"punctuation.decorator.internaldeclaration.imba"}},contentName:"comment.line.double-slash.imba",end:/(?=^)/dgv},"square-braces":{begin:/\p{space}*(\[)/dgv,beginCaptures:{"1":{name:"meta.brace.square.imba"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},string:{patterns:[{include:"#qstring-single-multi"},{include:"#qstring-double-multi"},{include:"#qstring-single"},{include:"#qstring-double"},{include:"#template"}]},"string-character-escape":{match:/\\(x\p{AHex}{2}|u\p{AHex}{4}|u\{\p{AHex}+\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|[^\n]|(?=\n?$))/dgv,name:"constant.character.escape.imba"},"style-declaration":{begin:/^(\t*)(?:(global|local|export)\p{space}+)?(?:(scoped)\p{space}+)?(css)\p{space}/dgv,beginCaptures:{"2":{name:"keyword.control.export.imba"},"3":{name:"storage.modifier.imba"},"4":{name:"storage.type.style.imba"}},end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#css-selector"},{include:"#css-comment"},{include:"#nested-css-selector"},{include:"#inline-styles"}]},"style-expr":{patterns:[{captures:{"1":{name:"constant.numeric.integer.decimal.css"},"2":{name:"keyword.other.unit.css"}},match:/(\b[0-9][0-9_]*)([\p{L}\p{M}\p{N}\p{Pc}]+|%)?/dgv},{match:/--[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"support.constant.property-value.var.css"},{match:/(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\p{L}\p{M}\p{N}\p{Pc}\-])/dgv,name:"support.constant.property-value.size.css"},{match:/[_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?/dgv,name:"support.constant.property-value.css"},{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,name:"meta.function.css",patterns:[{include:"#style-expr"}]}]},"style-property":{patterns:[{begin:/(?=[\^\@\.\%\p{L}\p{M}\p{N}\p{Pc}\$\!\-]+\p{space}*[\:\=])/dgv,beginCaptures:{"1":{name:"support.function.calc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\p{space}*[\:\=]/dgv,endCaptures:{"0":{name:"punctuation.separator.key-value.css"}},name:"meta.property-name.css",patterns:[{match:/(?:--|\$)[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.variable.css"},{match:/@[\!\<\>]?[0-9]+/dgv,name:"support.type.property-name.modifier.breakpoint.css"},{match:/\^?@+[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.modifier.css"},{match:/\^?\.+[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.modifier.flag.css"},{match:/\^?%+[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.modifier.state.css"},{match:/\.\.[\p{L}\p{M}\p{N}\p{Pc}\-\$]+|\^+[\.\@\%][\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.modifier.up.css"},{match:/\.[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.modifier.is.css"},{match:/[\p{L}\p{M}\p{N}\p{Pc}\-\$]+/dgv,name:"support.type.property-name.css"}]}]},"super-literal":{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))super\b(?!\$)/dgv,name:"variable.language.super.imba"},"tag-attr-name":{begin:/([\p{L}\p{M}\p{N}\p{Pc}\$_]+(?:-[\p{L}\p{M}\p{N}\p{Pc}\$_]+)*)/dgv,beginCaptures:{"0":{name:"entity.other.attribute-name.imba"}},contentName:"entity.other.attribute-name.imba",end:/(?=[\p{space}\.\[\>\=])/dgv},"tag-attr-value":{begin:/(=)/dgv,beginCaptures:{"0":{name:"keyword.operator.tag.assignment"}},contentName:"meta.tag.attribute-value.imba",end:/(?=[\>\p{space}])/dgv,patterns:[{include:"#expr"}]},"tag-classname":{begin:/\./dgv,contentName:"entity.other.attribute-name.class.css",end:/(?=[\.\[\>\p{space}\(\=])/dgv,patterns:[{include:"#tag-interpolated-content"}]},"tag-content":{patterns:[{include:"#tag-name"},{include:"#tag-expr-name"},{include:"#tag-interpolated-content"},{include:"#tag-interpolated-parens"},{include:"#tag-interpolated-brackets"},{include:"#tag-event-handler"},{include:"#tag-mixin-name"},{include:"#tag-classname"},{include:"#tag-ref"},{include:"#tag-attr-value"},{include:"#tag-attr-name"},{include:"#comment"}]},"tag-event-handler":{begin:/(@[\p{L}\p{M}\p{N}\p{Pc}\$_]+(?:-[\p{L}\p{M}\p{N}\p{Pc}\$_]+)*)/dgv,beginCaptures:{"0":{name:"entity.other.event-name.imba"}},contentName:"entity.other.tag.event",end:/(?=[\[\>\p{space}\=])/dgv,patterns:[{include:"#tag-interpolated-content"},{include:"#tag-interpolated-parens"},{begin:/\./dgv,beginCaptures:{"0":{name:"punctuation.section.tag"}},end:/(?=[\.\[\>\p{space}\=]|(?=\n?$))/dgv,name:"entity.other.event-modifier.imba",patterns:[{include:"#tag-interpolated-parens"},{include:"#tag-interpolated-content"}]}]},"tag-expr-name":{begin:/(?<=<)(?=[\p{L}\p{M}\p{N}\p{Pc}\{])/dgv,contentName:"entity.name.tag.imba",end:/(?=[\%\$\#\.\[\>\p{space}\(])/dgv,patterns:[{include:"#tag-interpolated-content"}]},"tag-interpolated-brackets":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\]/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#inline-css-selector"},{include:"#inline-styles"}]},"tag-interpolated-content":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#expression"}]},"tag-interpolated-parens":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#expression"}]},"tag-literal":{patterns:[{begin:/(<)(?=[\%\~\p{L}\p{M}\p{N}\p{Pc}\{\[\.\#\$\@\(])/dgv,beginCaptures:{"1":{name:"punctuation.section.tag.open.imba"}},contentName:"meta.tag.attributes.imba",end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.section.tag.close.imba"}},name:"meta.tag.imba",patterns:[{include:"#tag-content"}]}]},"tag-mixin-name":{match:/(%[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,name:"entity.other.tag-mixin.imba"},"tag-name":{patterns:[{match:/(?<=<)(self|global|slot)(?=[\.\[\>\p{space}\(])/dgv,name:"entity.name.tag.special.imba"}]},"tag-ref":{match:/(\$[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,name:"entity.other.tag-ref.imba"},template:{patterns:[{begin:/(?=(([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?\p{space}*\??\.\p{space}*)*|(\??\.\p{space}*)?)([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)(\{\{typeArguments\}\}\p{space}*)?`)/dgv,end:/(?=`)/dgv,name:"string.template.imba",patterns:[{begin:/(?=(([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?\p{space}*\??\.\p{space}*)*|(\??\.\p{space}*)?)([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?))/dgv,end:/(?=(\{\{typeArguments\}\}\p{space}*)?`)/dgv,patterns:[{match:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)/dgv,name:"entity.name.function.tagged-template.imba"}]}]},{begin:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)\p{space}*(?=(\{\{typeArguments\}\}\p{space}*)`)/dgv,beginCaptures:{"1":{name:"entity.name.function.tagged-template.imba"}},end:/(?=`)/dgv,name:"string.template.imba",patterns:[{include:"#type-arguments"}]},{begin:/([_\$\p{Alpha}][_\$\p{Alpha}\p{Nd}]*(?:-[_\$\p{Alpha}\p{Nd}]+)*[\?\!]?)?(`)/dgv,beginCaptures:{"1":{name:"entity.name.function.tagged-template.imba"},"2":{name:"punctuation.definition.string.template.begin.imba"}},end:/`/dgv,endCaptures:{"0":{name:"punctuation.definition.string.template.end.imba"}},name:"string.template.imba",patterns:[{include:"#template-substitution-element"},{include:"#string-character-escape"}]}]},"template-substitution-element":{begin:/(?<!\\)\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.template-expression.begin.imba"}},contentName:"meta.embedded.line.imba",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.template-expression.end.imba"}},name:"meta.template.expression.imba",patterns:[{include:"#expr"}]},"this-literal":{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(this|self)\b(?!\$)/dgv,name:"variable.language.this.imba"},"type-annotation":{patterns:[{include:"#type-literal"}]},"type-brackets":{patterns:[{begin:/\{/dgv,end:/\}/dgv,patterns:[{include:"#type-brackets"}]},{begin:/\[/dgv,end:/\]/dgv,patterns:[{include:"#type-brackets"}]},{begin:/</dgv,end:/>/dgv,patterns:[{include:"#type-brackets"}]},{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#type-brackets"}]}]},"type-literal":{begin:/(\\)/dgv,beginCaptures:{"1":{name:"meta.type.annotation.open.imba"}},end:/(?=[\p{space}\]\)\,\.\=\}]|(?=\n?$))/dgv,name:"meta.type.annotation.imba",patterns:[{include:"#type-brackets"}]},"undefined-literal":{match:/(?<![_\$\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))undefined(?![\?_\-\$\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.undefined.imba"}},scopeName:"source.imba",embeddedLangs:undefined,aliases:undefined})
3
+ const lang = Object.freeze({displayName:"Imba",fileTypes:["imba","imba2"],name:"imba",patterns:[{include:"#root"},{captures:{"1":{name:"punctuation.definition.comment.imba"}},match:/^(#!)[^\n]*(?=(?=\n?$))/dgv,name:"comment.line.shebang.imba"}],repository:{"array-literal":{begin:/\p{space}*(\[)/dgv,beginCaptures:{"1":{name:"meta.brace.square.imba"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.imba"}},name:"meta.array.literal.imba",patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},block:{patterns:[{include:"#style-declaration"},{include:"#mixin-declaration"},{include:"#object-keys"},{include:"#generics-literal"},{include:"#tag-literal"},{include:"#regex"},{include:"#keywords"},{include:"#comment"},{include:"#literal"},{include:"#plain-identifiers"},{include:"#plain-accessors"},{include:"#pairs"},{include:"#invalid-indentation"}]},"boolean-literal":{patterns:[{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(true|yes)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.boolean.true.imba"},{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(false|no)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.boolean.false.imba"}]},brackets:{patterns:[{begin:/\{/dgv,end:/\}|(?=\*\/)/dgv,patterns:[{include:"#brackets"}]},{begin:/\[/dgv,end:/\]|(?=\*\/)/dgv,patterns:[{include:"#brackets"}]}]},comment:{patterns:[{begin:/\/\*\*(?!\/)/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.imba"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.documentation.imba",patterns:[{include:"#docblock"}]},{begin:/(\/\*)(?:\p{space}*((@)internal)(?=\p{space}|(\*\/)))?/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"},"2":{name:"storage.type.internaldeclaration.imba"},"3":{name:"punctuation.decorator.internaldeclaration.imba"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.imba"},{begin:/(### @ts(?=\p{space}|(?=\n?$)))/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},contentName:"source.ts.embedded.imba",end:/###/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"ts.block.imba"},{begin:/(###)/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},end:/###[\t ]*\n/dgv,endCaptures:{"0":{name:"punctuation.definition.comment.imba"}},name:"comment.block.imba"},{begin:/(^[\t ]+)?((\/\/|#\p{space})(?:\p{space}*((@)internal)(?=\p{space}|(?=\n?$)))?)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.imba"},"2":{name:"comment.line.double-slash.imba"},"3":{name:"punctuation.definition.comment.imba"},"4":{name:"storage.type.internaldeclaration.imba"},"5":{name:"punctuation.decorator.internaldeclaration.imba"}},contentName:"comment.line.double-slash.imba",end:/(?=(?=\n?$))/dgv}]},"css-color-keywords":{patterns:[{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgiv,name:"support.constant.color.w3c-standard-color-name.css"},{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgiv,name:"support.constant.color.w3c-extended-color-name.css"},{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])currentColor(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgiv,name:"support.constant.color.current.css"}]},"css-combinators":{patterns:[{match:/>>>|>>|[\+\>\~]/dgv,name:"punctuation.separator.combinator.css"},{match:/&/dgv,name:"keyword.other.parent-selector.css"}]},"css-commas":{match:/,/dgv,name:"punctuation.separator.list.comma.css"},"css-comment":{patterns:[{match:/#(\p{space}[^\n]+)?(\n|(?=\n?$))/dgv,name:"comment.line.imba"},{match:/^(\t+)(#(\p{space}[^\n]+)?(\n|(?=\n?$)))/dgv,name:"comment.line.imba"}]},"css-escapes":{patterns:[{match:/\\\p{AHex}{1,6}/dgv,name:"constant.character.escape.codepoint.css"},{begin:/\\(?=\n?$)\p{space}*/dgv,end:/*@__PURE__*/ new EmulatedRegExp("^(?<!^)","dgv",{"strategy":"clip_search"}),name:"constant.character.escape.newline.css"},{match:/\\[^\n]/dgv,name:"constant.character.escape.css"}]},"css-functions":{patterns:[{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(calc)(\()/dgiv,beginCaptures:{"1":{name:"support.function.calc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.calc.css",patterns:[{match:/[\*\/]|(?<=\p{space}|^)[\-\+](?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.arithmetic.css"},{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(rgba?|hsla?)(\()/dgiv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.color.css",patterns:[{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])((?:-(?:webkit-|moz-|o-))?(?:repeating-)?(?:linear|radial|conic)-gradient)(\()/dgiv,beginCaptures:{"1":{name:"support.function.gradient.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.gradient.css",patterns:[{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(from|to|at)(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgiv,name:"keyword.operator.gradient.css"},{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(-webkit-gradient)(\()/dgiv,beginCaptures:{"1":{name:"invalid.deprecated.gradient.function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.gradient.invalid.deprecated.gradient.css",patterns:[{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(from|to|color-stop)(\()/dgiv,beginCaptures:{"1":{name:"invalid.deprecated.function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},patterns:[{include:"#css-property-values"}]},{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(annotation|attr|blur|brightness|character-variant|contrast|counters?|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate|image-set|invert|local|minmax|opacity|ornaments|repeat|saturate|sepia|styleset|stylistic|swash|symbols)(\()/dgiv,beginCaptures:{"1":{name:"support.function.misc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.misc.css",patterns:[{match:/(?<=["\,\p{space}]|\*\/|^)\p{Nd}+x(?=["'\)\,\p{space}]|\/\*|(?=\n?$))/dgiv,name:"constant.numeric.other.density.css"},{include:"#css-property-values"},{match:/[^"'\)\,\p{space}]+/dgv,name:"variable.parameter.misc.css"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(circle|ellipse|inset|polygon|rect)(\()/dgiv,beginCaptures:{"1":{name:"support.function.shape.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.shape.css",patterns:[{match:/(?<=\p{space}|^|\*\/)(at|round)(?=\p{space}|\/\*|(?=\n?$))/dgiv,name:"keyword.operator.shape.css"},{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(cubic-bezier|steps)(\()/dgiv,beginCaptures:{"1":{name:"support.function.timing-function.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},name:"meta.function.timing-function.css",patterns:[{match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])(start|end)(?=\p{space}*\)|(?=\n?$))/dgiv,name:"support.constant.step-direction.css"},{include:"#css-property-values"}]},{begin:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])((?:translate|scale|rotate)(?:[XYZ]|3D)?|matrix(?:3D)?|skew[XY]?|perspective)(\()/dgiv,beginCaptures:{"1":{name:"support.function.transform.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.function.end.bracket.round.css"}},patterns:[{include:"#css-property-values"}]}]},"css-numeric-values":{patterns:[{captures:{"1":{name:"punctuation.definition.constant.css"}},match:/(#)(?:\p{AHex}{3,4}|\p{AHex}{6}|\p{AHex}{8})\b/dgv,name:"constant.other.color.rgb-value.hex.css"},{captures:{"1":{name:"keyword.other.unit.percentage.css"},"2":{name:"keyword.other.unit.${2:/downcase}.css"}},match:/(?<![\-\p{L}\p{M}\p{N}\p{Pc}])[\-\+]?(?:[0-9]+(?:\.[0-9]+)?|\.[0-9]+)(?:(?<=[0-9])E[\-\+]?[0-9]+)?(?:(%)|(deg|grad|rad|turn|Hz|kHz|ch|cm|em|ex|fr|in|mm|mozmm|pc|pt|px|q|rem|vh|vmax|vmin|vw|dpi|dpcm|dppx|s|ms)\b)?/dgiv,name:"constant.numeric.css"}]},"css-property-values":{patterns:[{include:"#css-commas"},{include:"#css-escapes"},{include:"#css-functions"},{include:"#css-numeric-values"},{include:"#css-size-keywords"},{include:"#css-color-keywords"},{include:"#string"},{match:/!\p{space}*important(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"keyword.other.important.css"}]},"css-pseudo-classes":{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"invalid.illegal.colon.css"}},match:/(:)(:*)(?:active|any-link|checked|default|defined|disabled|empty|enabled|first|(?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within|fullscreen|host|hover|in-range|indeterminate|invalid|left|link|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|target|unresolved|valid|visited)(?![\-\p{L}\p{M}\p{N}\p{Pc}]|\p{space}*[\;\}])/dgiv,name:"entity.other.attribute-name.pseudo-class.css"},"css-pseudo-elements":{captures:{"1":{name:"punctuation.definition.entity.css"},"2":{name:"punctuation.definition.entity.css"}},match:/(?:(::?)(?:after|before|first-letter|first-line|(?:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[\-a-z]+)|(::)(?:backdrop|content|grammar-error|marker|placeholder|selection|shadow|spelling-error))(?![\-\p{L}\p{M}\p{N}\p{Pc}]|\p{space}*[\;\}])/dgiv,name:"entity.other.attribute-name.pseudo-element.css"},"css-selector":{begin:/(?<=css\p{space})(?![\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"css-selector-innards":{patterns:[{include:"#css-commas"},{include:"#css-escapes"},{include:"#css-combinators"},{match:/(%[\-\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"entity.other.attribute-name.mixin.css"},{match:/\*/dgv,name:"entity.name.tag.wildcard.css"},{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.entity.begin.bracket.square.css"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.entity.end.bracket.square.css"}},name:"meta.attribute-selector.css",patterns:[{include:"#string"},{captures:{"1":{name:"storage.modifier.ignore-case.css"}},match:/(?<=["'\p{space}]|^|\*\/)\p{space}*([Ii])\p{space}*(?=[\]\p{space}]|\/\*|(?=\n?$))/dgv},{captures:{"1":{name:"string.unquoted.attribute-value.css"}},match:/(?<==)\p{space}*((?!\/\*)(?:[^\]"'\\\p{space}]|\\[^\n])+)/dgv},{include:"#css-escapes"},{match:/[\$\*\^\|\~]?=/dgv,name:"keyword.operator.pattern.css"},{match:/\|/dgv,name:"punctuation.separator.css"},{captures:{"1":{name:"entity.other.namespace-prefix.css"}},match:/(-?(?!\p{Nd})(?:[\-\p{L}\p{M}\p{N}\p{Pc}[^0-\\x]]|\\(?:\p{AHex}{1,6}|[^\n]))+|\*)(?=\|(?![\=\p{space}]|(?=\n?$)|\])(?:-?(?!\p{Nd})|[\-\\\p{L}\p{M}\p{N}\p{Pc}[^0-\\x]]))/dgv},{captures:{"1":{name:"entity.other.attribute-name.css"}},match:/*@__PURE__*/ new EmulatedRegExp("(-?(?!\\p{Nd})(?:(?=([\\-\\p{L}\\p{M}\\p{N}\\p{Pc}[^0-\\\\x]]|\\\\(?:\\p{AHex}{1,6}|[^\\n])))\\2)+)\\p{space}*(?=[\\]\\$\\*\\=\\^\\|\\~]|/\\*)","dgv",{"hiddenCaptures":[2]})}]},{include:"#css-pseudo-classes"},{include:"#css-pseudo-elements"},{include:"#css-mixin"}]},"css-size-keywords":{patterns:[{match:/(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.size.property-value.css"}]},"curly-braces":{begin:/\p{space}*(\{)/dgv,beginCaptures:{"1":{name:"meta.brace.curly.imba"}},end:/\}/dgv,endCaptures:{"0":{name:"meta.brace.curly.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},decorator:{begin:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))@(?!@)/dgv,beginCaptures:{"0":{name:"punctuation.decorator.imba"}},end:/(?=\p{space})/dgv,name:"meta.decorator.imba",patterns:[{include:"#expr"}]},directives:{begin:/^(\/\/\/)\p{space}*(?=<(reference|amd-dependency|amd-module)(\p{space}+(path|types|no-default-lib|lib|name)\p{space}*=\p{space}*(('([^'\\]|\\[^\n])*')|("([^"\\]|\\[^\n])*")|(`([^\\\`]|\\[^\n])*`)))+\p{space}*\/>\p{space}*(?=\n?$))/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.imba"}},end:/(?=(?=\n?$))/dgv,name:"comment.line.triple-slash.directive.imba",patterns:[{begin:/(<)(reference|amd-dependency|amd-module)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.directive.imba"},"2":{name:"entity.name.tag.directive.imba"}},end:/\/>/dgv,endCaptures:{"0":{name:"punctuation.definition.tag.directive.imba"}},name:"meta.tag.imba",patterns:[{match:/path|types|no-default-lib|lib|name/dgv,name:"entity.other.attribute-name.directive.imba"},{match:/=/dgv,name:"keyword.operator.assignment.imba"},{include:"#string"}]}]},docblock:{patterns:[{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"constant.language.access-type.jsdoc"}},match:/((@)a(?:ccess|pi))\p{space}+(p(?:rivate|rotected|ublic))\b/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"},"4":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{name:"constant.other.email.link.underline.jsdoc"},"6":{name:"punctuation.definition.bracket.angle.end.jsdoc"}},match:/((@)author)\p{space}+([^\*\/\<\>\@\p{space}](?:[^\*\/\<\>\@]|\*[^\/])*)(?:\p{space}*(<)([^\>\p{space}]+)(>))?/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"},"4":{name:"keyword.operator.control.jsdoc"},"5":{name:"entity.name.type.instance.jsdoc"}},match:/((@)borrows)\p{space}+((?:[^\*\/\@\p{space}]|\*[^\/])+)\p{space}+(as)\p{space}+((?:[^\*\/\@\p{space}]|\*[^\/])+)/dgv},{begin:/((@)example)\p{space}+/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=@|\*\/)/dgv,name:"meta.example.jsdoc",patterns:[{match:/^\p{space}\*\p{space}+/dgv},{begin:/(<)caption(>)/dgvy,beginCaptures:{"0":{name:"entity.name.tag.inline.jsdoc"},"1":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{name:"punctuation.definition.bracket.angle.end.jsdoc"}},contentName:"constant.other.description.jsdoc",end:/(<\/)caption(>)|(?=\*\/)/dgv,endCaptures:{"0":{name:"entity.name.tag.inline.jsdoc"},"1":{name:"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{name:"punctuation.definition.bracket.angle.end.jsdoc"}}},{captures:{"0":{name:"source.embedded.imba"}},match:/[^\*\@\p{space}](?:[^\*]|\*[^\/])*/dgv}]},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"constant.language.symbol-type.jsdoc"}},match:/((@)kind)\p{space}+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\b/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.link.underline.jsdoc"},"4":{name:"entity.name.type.instance.jsdoc"}},match:/((@)see)\p{space}+(?:((?=https?:\/\/)(?:[^\*\p{space}]|\*[^\/])+)|((?!https?:\/\/|(?:\[[^\]\[]*\])?\{@(?:link|linkcode|linkplain|tutorial)\b)(?:[^\*\/\@\p{space}]|\*[^\/])+))/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)template)\p{space}+([\$A-Z_a-z][\]\$\.\[\p{L}\p{M}\p{N}\p{Pc}]*(?:\p{space}*,\p{space}*[\$A-Z_a-z][\]\$\.\[\p{L}\p{M}\p{N}\p{Pc}]*)*)/dgv},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)(?:arg|argument|const|constant|member|namespace|param|var))\p{space}+([\$A-Z_a-z][\]\$\.\[\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{begin:/((@)typedef)\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\]\$A-\[_a-\{\}])/dgv,patterns:[{include:"#jsdoctype"},{match:/(?:[^\*\/\@\p{space}]|\*[^\/])+/dgv,name:"entity.name.type.instance.jsdoc"}]},{begin:/((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\]\$A-\[_a-\{\}])/dgv,patterns:[{include:"#jsdoctype"},{match:/([\$A-Z_a-z][\]\$\.\[\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,name:"variable.other.jsdoc"},{captures:{"1":{name:"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{name:"keyword.operator.assignment.jsdoc"},"3":{name:"source.embedded.imba"},"4":{name:"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{name:"invalid.illegal.syntax.jsdoc"}},match:/*@__PURE__*/ new EmulatedRegExp("(\\[)\\p{space}*[\\$\\p{L}\\p{M}\\p{N}\\p{Pc}]+(?:(?:\\[\\])?\\.[\\$\\p{L}\\p{M}\\p{N}\\p{Pc}]+)*(?:\\p{space}*(=)\\p{space}*((?:(?=(\"(?:\\*(?!/)|\\\\(?!\")|[^\\*\\\\])*?\"|'(?:\\*(?!/)|\\\\(?!')|[^\\*\\\\])*?'|\\[(?:\\*(?!/)|[^\\*])*?\\]|(?:\\*(?!/)|\\p{space}(?!\\p{space}*\\])|\\[[^\\n]*?(?:\\]|(?=\\*/))|[^\\]\\*\\[\\p{space}])*))\\4)*))?\\p{space}*(?:(\\])((?:[^\\*\\p{space}]|\\*[^\\/\\p{space}])+)?|(?=\\*/))","dgv",{"hiddenCaptures":[4]}),name:"variable.other.jsdoc"}]},{begin:/((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|suppress|this|throws|type|yields?))\p{space}+(?=\{)/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},end:/(?=\p{space}|\*\/|[^\]\$A-\[_a-\{\}])/dgv,patterns:[{include:"#jsdoctype"}]},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"entity.name.type.instance.jsdoc"}},match:/((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\p{space}+((?:[^\*\@\{\}\p{space}]|\*[^\/])+)/dgv},{begin:/((@)(?:default(?:value)?|license|version))\p{space}+((["']))/dgv,beginCaptures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"},"4":{name:"punctuation.definition.string.begin.jsdoc"}},contentName:"variable.other.jsdoc",end:/(\3)|(?=(?=\n?$)|\*\/)()()/dgv,endCaptures:{"0":{name:"variable.other.jsdoc"},"1":{name:"punctuation.definition.string.end.jsdoc"}}},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"},"3":{name:"variable.other.jsdoc"}},match:/((@)(?:default(?:value)?|license|tutorial|variation|version))\p{space}+([^\*\p{space}]+)/dgv},{captures:{"1":{name:"punctuation.definition.block.tag.jsdoc"}},match:/(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\b/dgv,name:"storage.type.class.jsdoc"},{include:"#inline-tags"},{captures:{"1":{name:"storage.type.class.jsdoc"},"2":{name:"punctuation.definition.block.tag.jsdoc"}},match:/((@)[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)(?=\p{space}+)/dgv}]},expr:{patterns:[{include:"#style-declaration"},{include:"#object-keys"},{include:"#generics-literal"},{include:"#tag-literal"},{include:"#regex"},{include:"#keywords"},{include:"#comment"},{include:"#literal"},{include:"#plain-identifiers"},{include:"#plain-accessors"},{include:"#pairs"}]},expression:{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.imba"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.imba"}},patterns:[{include:"#expr"}]},{include:"#tag-literal"},{include:"#expressionWithoutIdentifiers"},{include:"#identifiers"},{include:"#expressionPunctuations"}]},expressionPunctuations:{patterns:[{include:"#punctuation-comma"},{include:"#punctuation-accessor"}]},expressionWithoutIdentifiers:{patterns:[{include:"#string"},{include:"#regex"},{include:"#comment"},{include:"#function-expression"},{include:"#class-expression"},{include:"#ternary-expression"},{include:"#new-expr"},{include:"#instanceof-expr"},{include:"#object-literal"},{include:"#expression-operators"},{include:"#literal"},{include:"#support-objects"}]},"generics-literal":{begin:/(?<=[\]\)\p{L}\p{M}\p{N}\p{Pc}])</dgv,beginCaptures:{"1":{name:"meta.generics.annotation.open.imba"}},end:/>/dgv,endCaptures:{"0":{name:"meta.generics.annotation.close.imba"}},name:"meta.generics.annotation.imba",patterns:[{include:"#type-brackets"}]},"global-literal":{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(global)\b(?!\$)/dgv,name:"variable.language.global.imba"},identifiers:{patterns:[{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"entity.name.function.property.imba"}},match:/(?:(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))\p{space}*)?([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)(?=\p{space}*=\{\{functionOrArrowLookup\}\})/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.constant.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))\p{space}*(#?\p{Upper}[\$_\p{Nd}\p{Upper}]*)(?![\$_\p{Alpha}\p{Nd}])/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.class.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))(\p{Upper}[\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*!?)/dgv},{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"},"3":{name:"variable.other.property.imba"}},match:/(?:(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+)))(#?[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)/dgv},{match:/(for own|for|if|unless|when)\b/dgv,name:"keyword.other"},{match:/require/dgv,name:"support.function.require"},{include:"#plain-identifiers"},{include:"#type-literal"},{include:"#generics-literal"}]},"inline-css-selector":{begin:/^(\t+)(?![\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=])/dgv,end:/(\p{space}*(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=]|[\]\)])|\p{space}*(?=\n?$))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"inline-styles":{patterns:[{include:"#style-property"},{include:"#css-property-values"},{include:"#style-expr"}]},"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))/dgv,name:"constant.other.description.jsdoc"},{begin:/(\{)((@)(?:link(?:code|plain)?|tutorial))\p{space}*/dgv,beginCaptures:{"1":{name:"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{name:"storage.type.class.jsdoc"},"3":{name:"punctuation.definition.inline.tag.jsdoc"}},end:/\}|(?=\*\/)/dgv,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:/((?=https?:\/\/)(?:[^\*\|\}\p{space}]|\*\/)+)(\|)?/dgvy},{captures:{"1":{name:"variable.other.description.jsdoc"},"2":{name:"punctuation.separator.pipe.jsdoc"}},match:/((?:[^\*\@\{\|\}\p{space}]|\*[^\/])+)(\|)?/dgvy}]}]},"invalid-indentation":{patterns:[{match:/^ +/dgv,name:"invalid.whitespace"},{match:/^\t+\p{space}+/dgv,name:"invalid.whitespace"}]},jsdoctype:{patterns:[{match:/\{(?:[^\*\}]|\*[^\/\}])+(?=\n?$)/dgvy,name:"invalid.illegal.type.jsdoc"},{begin:/(\{)/dgvy,beginCaptures:{"0":{name:"entity.name.type.instance.jsdoc"},"1":{name:"punctuation.definition.bracket.curly.begin.jsdoc"}},contentName:"entity.name.type.instance.jsdoc",end:/((\}))\p{space}*|(?=\*\/)/dgv,endCaptures:{"1":{name:"entity.name.type.instance.jsdoc"},"2":{name:"punctuation.definition.bracket.curly.end.jsdoc"}},patterns:[{include:"#brackets"}]}]},keywords:{patterns:[{match:/(if|elif|else|unless|switch|when|then|do|import|export|for own|for|while|until|return|yield|try|catch|await|rescue|finally|throw|as|continue|break|extend|augment)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.control.imba"},{match:/(?<=export)\p{space}+(default)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.control.imba"},{match:/(?<=import)\p{space}+(type)(?=\p{space}+[\$_\{\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"keyword.control.imba"},{match:/(extend|global|abstract)\p{space}+(?=class|tag|abstract|mixin|interface)/dgv,name:"keyword.control.imba"},{match:/(?<=[\$\*\}\p{L}\p{M}\p{N}\p{Pc}])\p{space}+(from)(?=\p{space}+["'])/dgv,name:"keyword.control.imba"},{match:/(def|get|set)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.function.imba"},{match:/(pr(?:otected|ivate))\p{space}+(?=def|get|set)/dgv,name:"keyword.control.imba"},{match:/(tag|class|struct|mixin|interface)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.class.imba"},{match:/(let|const|constructor)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.imba"},{match:/(prop|attr)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"storage.type.imba"},{match:/(static)\p{space}+/dgv,name:"storage.modifier.imba"},{match:/(declare)\p{space}+/dgv,name:"storage.modifier.imba"},{include:"#ops"},{match:/((?:|\|\||\?\?|&&|[\-\%\*\+\^])=)/dgv,name:"keyword.operator.assignment.imba"},{match:/(>=?|<=?)/dgv,name:"keyword.operator.imba"},{match:/(of|delete|!?isa|typeof|!?in|new|!?is|isnt)(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"keyword.operator.imba"}]},literal:{patterns:[{include:"#number-with-unit-literal"},{include:"#numeric-literal"},{include:"#boolean-literal"},{include:"#null-literal"},{include:"#undefined-literal"},{include:"#numericConstant-literal"},{include:"#this-literal"},{include:"#global-literal"},{include:"#super-literal"},{include:"#type-literal"},{include:"#generics-literal"},{include:"#string"}]},"mixin-css-selector":{begin:/(%[\-\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"entity.other.attribute-name.mixin.css"}},end:/(\p{space}*(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"mixin-css-selector-after":{begin:/(?<=%[\-\p{L}\p{M}\p{N}\p{Pc}]+)(?![\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"mixin-declaration":{begin:/^(\t*)(%[\-\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"2":{name:"entity.other.attribute-name.mixin.css"}},end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#mixin-css-selector-after"},{include:"#css-comment"},{include:"#nested-css-selector"},{include:"#inline-styles"}]},"nested-css-selector":{begin:/^(\t+)(?![\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])/dgv,end:/(\p{space}*(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=][^\:])|\p{space}*(?=\n?$)|(?=\p{space}+#\p{space}))/dgv,endCaptures:{"0":{name:"punctuation.separator.sel-properties.css"}},name:"meta.selector.css",patterns:[{include:"#css-selector-innards"}]},"nested-style-declaration":{begin:/^(\t+)(?=[\n\^]*&)/dgv,end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#nested-css-selector"},{include:"#inline-styles"}]},"null-literal":{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))null(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.null.imba"},"number-with-unit-literal":{patterns:[{captures:{"1":{name:"constant.numeric.imba"},"2":{name:"keyword.other.unit.imba"}},match:/([0-9]+)([a-z]+|%)/dgv},{captures:{"1":{name:"constant.numeric.decimal.imba"},"2":{name:"keyword.other.unit.imba"}},match:/([0-9]*\.[0-9]+(?:[Ee][\-\+]?[0-9]+)?)([a-z]+|%)/dgv}]},"numeric-literal":{patterns:[{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[Xx]\p{AHex}[_\p{AHex}]*(n)?\b(?!\$)/dgv,name:"constant.numeric.hex.imba"},{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[Bb][01][01_]*(n)?\b(?!\$)/dgv,name:"constant.numeric.binary.imba"},{captures:{"1":{name:"storage.type.numeric.bigint.imba"}},match:/\b(?<!\$)0[Oo]?[0-7][0-7_]*(n)?\b(?!\$)/dgv,name:"constant.numeric.octal.imba"},{captures:{"0":{name:"constant.numeric.decimal.imba"},"1":{name:"meta.delimiter.decimal.period.imba"},"2":{name:"storage.type.numeric.bigint.imba"},"3":{name:"meta.delimiter.decimal.period.imba"},"4":{name:"storage.type.numeric.bigint.imba"},"5":{name:"meta.delimiter.decimal.period.imba"},"6":{name:"storage.type.numeric.bigint.imba"},"7":{name:"storage.type.numeric.bigint.imba"},"8":{name:"meta.delimiter.decimal.period.imba"},"9":{name:"storage.type.numeric.bigint.imba"},"10":{name:"meta.delimiter.decimal.period.imba"},"11":{name:"storage.type.numeric.bigint.imba"},"12":{name:"meta.delimiter.decimal.period.imba"},"13":{name:"storage.type.numeric.bigint.imba"},"14":{name:"storage.type.numeric.bigint.imba"}},match:/(?<!\$)(?:\b[0-9][0-9_]*(\.)[0-9][0-9_]*[Ee][\-\+]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)[Ee][\-\+]?[0-9][0-9_]*(n)?\b|\B(\.)[0-9][0-9_]*[Ee][\-\+]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*[Ee][\-\+]?[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(\.)(n)?\B|\B(\.)[0-9][0-9_]*(n)?\b|\b[0-9][0-9_]*(n)?\b)(?!\$)/dgv}]},"numericConstant-literal":{patterns:[{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))NaN(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.nan.imba"},{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))Infinity(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.infinity.imba"}]},"object-keys":{patterns:[{match:/[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?:/dgv,name:"meta.object-literal.key"}]},ops:{patterns:[{match:/\.\.\./dgv,name:"keyword.operator.spread.imba"},{match:/\*=|(?<!\()\/=|%=|\+=|-=|\?=|\?\?=|=\?/dgv,name:"keyword.operator.assignment.compound.imba"},{match:/\^=\?|\|=\?|~=\?|&=|\^=|<<=|>>=|>>>=|\|=/dgv,name:"keyword.operator.assignment.compound.bitwise.imba"},{match:/<<|>>>|>>/dgv,name:"keyword.operator.bitwise.shift.imba"},{match:/(?:==|!=|[\!\=\~])=/dgv,name:"keyword.operator.comparison.imba"},{match:/<=|>=|<>|[\<\>]/dgv,name:"keyword.operator.relational.imba"},{captures:{"1":{name:"keyword.operator.logical.imba"},"2":{name:"keyword.operator.arithmetic.imba"}},match:/(!)\p{space}*(\/)(?![\*\/])/dgv},{match:/!|&&|\|\||\?\?|or\b(?=\p{space}|(?=\n?$))|and\b(?=\p{space}|(?=\n?$))|@\b(?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.logical.imba"},{match:/\?(?=\p{space}|(?=\n?$))/dgv,name:"keyword.operator.bitwise.imba"},{match:/[\&\^\|\~]/dgv,name:"keyword.operator.ternary.imba"},{match:/=/dgv,name:"keyword.operator.assignment.imba"},{match:/--/dgv,name:"keyword.operator.decrement.imba"},{match:/\+\+/dgv,name:"keyword.operator.increment.imba"},{match:/[\-\%\*\+\/]/dgv,name:"keyword.operator.arithmetic.imba"}]},pairs:{patterns:[{include:"#curly-braces"},{include:"#square-braces"},{include:"#round-braces"}]},"plain-accessors":{patterns:[{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"variable.other.property.imba"}},match:/(\.\.?)([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)/dgv}]},"plain-identifiers":{patterns:[{match:/(\p{Upper}[\$_\p{Nd}\p{Upper}]*)(?![\$_\p{Alpha}\p{Nd}])/dgv,name:"variable.other.constant.imba"},{match:/\p{Upper}[\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*!?/dgv,name:"variable.other.class.imba"},{match:/\$\p{Nd}+/dgv,name:"variable.special.imba"},{match:/\$[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"variable.other.internal.imba"},{match:/@@+[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"variable.other.symbol.imba"},{match:/[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"variable.other.readwrite.imba"},{match:/@[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"variable.other.instance.imba"},{match:/#+[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"variable.other.private.imba"},{match:/:[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"string.symbol.imba"}]},"punctuation-accessor":{captures:{"1":{name:"punctuation.accessor.imba"},"2":{name:"punctuation.accessor.optional.imba"}},match:/(\.)|(\.\.(?!\p{space}*\p{Nd}|\p{space}+))/dgv},"punctuation-comma":{match:/,/dgv,name:"punctuation.separator.comma.imba"},"punctuation-semicolon":{match:/;/dgv,name:"punctuation.terminator.statement.imba"},"qstring-double":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.imba"}},name:"string.quoted.double.imba",patterns:[{include:"#template-substitution-element"},{include:"#string-character-escape"}]},"qstring-single":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/(')|([^\n\\])(?=\n?$)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"invalid.illegal.newline.imba"}},name:"string.quoted.single.imba",patterns:[{include:"#string-character-escape"}]},"qstring-single-multi":{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/'''/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.imba"}},name:"string.quoted.single.imba",patterns:[{include:"#string-character-escape"}]},regex:{patterns:[{begin:/(?<!\+\+|--|\})(?<=[\!\(\+\,\:\=\?\[]|^return|[^\$\._\p{Alpha}\p{Nd}]return|^case|[^\$\._\p{Alpha}\p{Nd}]case|=>|&&|\|\||\*\/)\p{space}*(\/)(?![\*\/])(?=(?:[^\(\)\/\[\\]|\\[^\n]|\[([^\]\\]|\\[^\n])+\]|\(([^\)\\]|\\[^\n])+\))+\/([gimsuy]+|(?![\*\/])|(?=\/\*))(?!\p{space}*[\$0-9A-Z_a-z]))/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.imba"}},end:/(\/)([gimsuy]*)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"keyword.other.imba"}},name:"string.regexp.imba",patterns:[{include:"#regexp"}]},{begin:/((?<![\]\$\)_\p{Alpha}\p{Nd}]|\+\+|--|\}|\*\/)|((?<=^return|[^\$\._\p{Alpha}\p{Nd}]return|^case|[^\$\._\p{Alpha}\p{Nd}]case))\p{space}*)\/(?![\*\/])(?=(?:[^\/\[\\]|\\[^\n]|\[([^\]\\]|\\[^\n])+\])+\/([gimsuy]+|(?![\*\/])|(?=\/\*))(?!\p{space}*[\$0-9A-Z_a-z]))/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.imba"}},end:/(\/)([gimsuy]*)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.imba"},"2":{name:"keyword.other.imba"}},name:"string.regexp.imba",patterns:[{include:"#regexp"}]}]},"regex-character-class":{patterns:[{match:/\\[DSWdfnrstvw]|\./dgv,name:"constant.other.character-class.regexp"},{match:/\\([0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4})/dgv,name:"constant.character.numeric.regexp"},{match:/\\c[A-Z]/dgv,name:"constant.character.control.regexp"},{match:/\\[^\n]/dgv,name:"constant.character.escape.backslash.regexp"}]},regexp:{patterns:[{match:/\\[Bb]|[\$\^]/dgv,name:"keyword.control.anchor.regexp"},{captures:{"0":{name:"keyword.other.back-reference.regexp"},"1":{name:"variable.other.regexp"}},match:/\\(?:[1-9]\p{Nd}*|k<([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)>)/dgv},{match:/[\*\+\?]|\{(\p{Nd}+,\p{Nd}+|\p{Nd}+,|,\p{Nd}+|\p{Nd}+)\}\??/dgv,name:"keyword.operator.quantifier.regexp"},{match:/\|/dgv,name:"keyword.operator.or.regexp"},{begin:/(\()((\?=)|(\?!)|(\?<=)|(\?<!))/dgv,beginCaptures:{"1":{name:"punctuation.definition.group.regexp"},"2":{name:"punctuation.definition.group.assertion.regexp"},"3":{name:"meta.assertion.look-ahead.regexp"},"4":{name:"meta.assertion.negative-look-ahead.regexp"},"5":{name:"meta.assertion.look-behind.regexp"},"6":{name:"meta.assertion.negative-look-behind.regexp"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.group.regexp"}},name:"meta.group.assertion.regexp",patterns:[{include:"#regexp"}]},{begin:/\((?:(\?:)|\?<([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)>)?/dgv,beginCaptures:{"0":{name:"punctuation.definition.group.regexp"},"1":{name:"punctuation.definition.group.no-capture.regexp"},"2":{name:"variable.other.regexp"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.group.regexp"}},name:"meta.group.regexp",patterns:[{include:"#regexp"}]},{begin:/(\[)(\^)?/dgv,beginCaptures:{"1":{name:"punctuation.definition.character-class.regexp"},"2":{name:"keyword.operator.negation.regexp"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.character-class.regexp"}},name:"constant.other.character-class.set.regexp",patterns:[{captures:{"1":{name:"constant.character.numeric.regexp"},"2":{name:"constant.character.control.regexp"},"3":{name:"constant.character.escape.backslash.regexp"},"4":{name:"constant.character.numeric.regexp"},"5":{name:"constant.character.control.regexp"},"6":{name:"constant.character.escape.backslash.regexp"}},match:/(?:[^\n]|(\\(?:[0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4}))|(\\c[A-Z])|(\\[^\n]))-(?:[^\]\\]|(\\(?:[0-7]{3}|x\p{AHex}{2}|u\p{AHex}{4}))|(\\c[A-Z])|(\\[^\n]))/dgv,name:"constant.other.character-class.range.regexp"},{include:"#regex-character-class"}]},{include:"#regex-character-class"}]},root:{patterns:[{include:"#block"}]},"round-braces":{begin:/\p{space}*(\()/dgv,beginCaptures:{"1":{name:"meta.brace.round.imba"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},"single-line-comment-consuming-line-ending":{begin:/(^[\t ]+)?((\/\/|#\p{space})(?:\p{space}*((@)internal)(?=\p{space}|(?=\n?$)))?)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.imba"},"2":{name:"comment.line.double-slash.imba"},"3":{name:"punctuation.definition.comment.imba"},"4":{name:"storage.type.internaldeclaration.imba"},"5":{name:"punctuation.decorator.internaldeclaration.imba"}},contentName:"comment.line.double-slash.imba",end:/(?=^)/dgv},"square-braces":{begin:/\p{space}*(\[)/dgv,beginCaptures:{"1":{name:"meta.brace.square.imba"}},end:/\]/dgv,endCaptures:{"0":{name:"meta.brace.square.imba"}},patterns:[{include:"#expr"},{include:"#punctuation-comma"}]},string:{patterns:[{include:"#qstring-single-multi"},{include:"#qstring-double-multi"},{include:"#qstring-single"},{include:"#qstring-double"},{include:"#template"}]},"string-character-escape":{match:/\\(x\p{AHex}{2}|u\p{AHex}{4}|u\{\p{AHex}+\}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|[^\n]|(?=\n?$))/dgv,name:"constant.character.escape.imba"},"style-declaration":{begin:/^(\t*)(?:(global|local|export)\p{space}+)?(?:(scoped)\p{space}+)?(css)\p{space}/dgv,beginCaptures:{"2":{name:"keyword.control.export.imba"},"3":{name:"storage.modifier.imba"},"4":{name:"storage.type.style.imba"}},end:/^(?!((?!)\t|\p{space}*(?=\n?$)))/dgv,name:"meta.style.imba",patterns:[{include:"#css-selector"},{include:"#css-comment"},{include:"#nested-css-selector"},{include:"#inline-styles"}]},"style-expr":{patterns:[{captures:{"1":{name:"constant.numeric.integer.decimal.css"},"2":{name:"keyword.other.unit.css"}},match:/\b([0-9][0-9_]*)([\p{L}\p{M}\p{N}\p{Pc}]+|%)?/dgv},{match:/--[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"support.constant.property-value.var.css"},{match:/(x+s|sm-|md-|lg-|sm|md|lg|x+l|hg|x+h)(?![\-\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"support.constant.property-value.size.css"},{match:/[\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?/dgv,name:"support.constant.property-value.css"},{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\)/dgv,name:"meta.function.css",patterns:[{include:"#style-expr"}]}]},"style-property":{patterns:[{begin:/(?=[\-\!\$\%\.\@\^\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*[\:\=])/dgv,beginCaptures:{"1":{name:"support.function.calc.css"},"2":{name:"punctuation.section.function.begin.bracket.round.css"}},end:/\p{space}*[\:\=]/dgv,endCaptures:{"0":{name:"punctuation.separator.key-value.css"}},name:"meta.property-name.css",patterns:[{match:/(?:--|\$)[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.variable.css"},{match:/@[\!\<\>]?[0-9]+/dgv,name:"support.type.property-name.modifier.breakpoint.css"},{match:/\^?@+[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.modifier.css"},{match:/\^?\.+[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.modifier.flag.css"},{match:/\^?%+[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.modifier.state.css"},{match:/\.\.[\-\$\p{L}\p{M}\p{N}\p{Pc}]+|\^+[\%\.\@][\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.modifier.up.css"},{match:/\.[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.modifier.is.css"},{match:/[\-\$\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"support.type.property-name.css"}]}]},"super-literal":{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))super\b(?!\$)/dgv,name:"variable.language.super.imba"},"tag-attr-name":{begin:/([\$_\p{L}\p{M}\p{N}\p{Pc}]+(?:-[\$_\p{L}\p{M}\p{N}\p{Pc}]+)*)/dgv,beginCaptures:{"0":{name:"entity.other.attribute-name.imba"}},contentName:"entity.other.attribute-name.imba",end:/(?=[\.\=\>\[\p{space}])/dgv},"tag-attr-value":{begin:/(=)/dgv,beginCaptures:{"0":{name:"keyword.operator.tag.assignment"}},contentName:"meta.tag.attribute-value.imba",end:/(?=[\>\p{space}])/dgv,patterns:[{include:"#expr"}]},"tag-classname":{begin:/\./dgv,contentName:"entity.other.attribute-name.class.css",end:/(?=[\(\.\=\>\[\p{space}])/dgv,patterns:[{include:"#tag-interpolated-content"}]},"tag-content":{patterns:[{include:"#tag-name"},{include:"#tag-expr-name"},{include:"#tag-interpolated-content"},{include:"#tag-interpolated-parens"},{include:"#tag-interpolated-brackets"},{include:"#tag-event-handler"},{include:"#tag-mixin-name"},{include:"#tag-classname"},{include:"#tag-ref"},{include:"#tag-attr-value"},{include:"#tag-attr-name"},{include:"#comment"}]},"tag-event-handler":{begin:/(@[\$_\p{L}\p{M}\p{N}\p{Pc}]+(?:-[\$_\p{L}\p{M}\p{N}\p{Pc}]+)*)/dgv,beginCaptures:{"0":{name:"entity.other.event-name.imba"}},contentName:"entity.other.tag.event",end:/(?=[\=\>\[\p{space}])/dgv,patterns:[{include:"#tag-interpolated-content"},{include:"#tag-interpolated-parens"},{begin:/\./dgv,beginCaptures:{"0":{name:"punctuation.section.tag"}},end:/(?=[\.\=\>\[\p{space}]|(?=\n?$))/dgv,name:"entity.other.event-modifier.imba",patterns:[{include:"#tag-interpolated-parens"},{include:"#tag-interpolated-content"}]}]},"tag-expr-name":{begin:/(?<=<)(?=[\{\p{L}\p{M}\p{N}\p{Pc}])/dgv,contentName:"entity.name.tag.imba",end:/(?=[\#\$\%\(\.\>\[\p{space}])/dgv,patterns:[{include:"#tag-interpolated-content"}]},"tag-interpolated-brackets":{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\]/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#inline-css-selector"},{include:"#inline-styles"}]},"tag-interpolated-content":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#expression"}]},"tag-interpolated-parens":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.section.tag.imba"}},contentName:"meta.embedded.line.imba",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.tag.imba"}},name:"meta.tag.expression.imba",patterns:[{include:"#expression"}]},"tag-literal":{patterns:[{begin:/(<)(?=[\#\$\%\(\.\@\[\{\~\p{L}\p{M}\p{N}\p{Pc}])/dgv,beginCaptures:{"1":{name:"punctuation.section.tag.open.imba"}},contentName:"meta.tag.attributes.imba",end:/(>)/dgv,endCaptures:{"1":{name:"punctuation.section.tag.close.imba"}},name:"meta.tag.imba",patterns:[{include:"#tag-content"}]}]},"tag-mixin-name":{match:/(%[\-\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"entity.other.tag-mixin.imba"},"tag-name":{patterns:[{match:/(?<=<)(self|global|slot)(?=[\(\.\>\[\p{space}])/dgv,name:"entity.name.tag.special.imba"}]},"tag-ref":{match:/(\$[\-\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"entity.other.tag-ref.imba"},template:{patterns:[{begin:/(?=(([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?\p{space}*\??\.\p{space}*)*|(\??\.\p{space}*)?)([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)(\{\{typeArguments\}\}\p{space}*)?`)/dgv,end:/(?=`)/dgv,name:"string.template.imba",patterns:[{begin:/(?=(([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?\p{space}*\??\.\p{space}*)*|(\??\.\p{space}*)?)([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?))/dgv,end:/(?=(\{\{typeArguments\}\}\p{space}*)?`)/dgv,patterns:[{match:/([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)/dgv,name:"entity.name.function.tagged-template.imba"}]}]},{begin:/([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)\p{space}*(?=(\{\{typeArguments\}\}\p{space}*)`)/dgv,beginCaptures:{"1":{name:"entity.name.function.tagged-template.imba"}},end:/(?=`)/dgv,name:"string.template.imba",patterns:[{include:"#type-arguments"}]},{begin:/([\$_\p{Alpha}][\$_\p{Alpha}\p{Nd}]*(?:-[\$_\p{Alpha}\p{Nd}]+)*[\!\?]?)?(`)/dgv,beginCaptures:{"1":{name:"entity.name.function.tagged-template.imba"},"2":{name:"punctuation.definition.string.template.begin.imba"}},end:/`/dgv,endCaptures:{"0":{name:"punctuation.definition.string.template.end.imba"}},name:"string.template.imba",patterns:[{include:"#template-substitution-element"},{include:"#string-character-escape"}]}]},"template-substitution-element":{begin:/(?<!\\)\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.template-expression.begin.imba"}},contentName:"meta.embedded.line.imba",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.template-expression.end.imba"}},name:"meta.template.expression.imba",patterns:[{include:"#expr"}]},"this-literal":{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))(this|self)\b(?!\$)/dgv,name:"variable.language.this.imba"},"type-annotation":{patterns:[{include:"#type-literal"}]},"type-brackets":{patterns:[{begin:/\{/dgv,end:/\}/dgv,patterns:[{include:"#type-brackets"}]},{begin:/\[/dgv,end:/\]/dgv,patterns:[{include:"#type-brackets"}]},{begin:/</dgv,end:/>/dgv,patterns:[{include:"#type-brackets"}]},{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#type-brackets"}]}]},"type-literal":{begin:/(\\)/dgv,beginCaptures:{"1":{name:"meta.type.annotation.open.imba"}},end:/(?=[\]\)\,\.\=\}\p{space}]|(?=\n?$))/dgv,name:"meta.type.annotation.imba",patterns:[{include:"#type-brackets"}]},"undefined-literal":{match:/(?<![\$_\p{Alpha}\p{Nd}])(?:(?<=\.\.\.)|(?<!\.))undefined(?![\-\$\?_\p{Alpha}\p{Nd}])(?:(?=\.\.\.)|(?!\.))/dgv,name:"constant.language.undefined.imba"}},scopeName:"source.imba",embeddedLangs:undefined,aliases:undefined})
4
4
 
5
5
  export default [
6
6
  lang
package/dist/ini.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { EmulatedRegExp } from 'oniguruma-to-es'
2
2
 
3
- const lang = Object.freeze({displayName:"INI",name:"ini",patterns:[{begin:/(^[ \t]+)?(?=#)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.ini"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.ini"}},end:/\n/dgv,name:"comment.line.number-sign.ini"}]},{begin:/(^[ \t]+)?(?=;)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.ini"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/;/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.ini"}},end:/\n/dgv,name:"comment.line.semicolon.ini"}]},{captures:{"1":{name:"keyword.other.definition.ini"},"2":{name:"punctuation.separator.key-value.ini"}},match:/\b([a-zA-Z0-9_\.\-]+)\b\p{space}*(=)/dgv},{captures:{"1":{name:"punctuation.definition.entity.ini"},"3":{name:"punctuation.definition.entity.ini"}},match:/^(\[)([^\n]*?)(\])/dgv,name:"entity.name.section.group-title.ini"},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ini"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.ini"}},name:"string.quoted.single.ini",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.ini"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ini"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.ini"}},name:"string.quoted.double.ini"}],scopeName:"source.ini",embeddedLangs:undefined,aliases:["properties"]})
3
+ const lang = Object.freeze({displayName:"INI",name:"ini",patterns:[{begin:/(^[\t ]+)?(?=#)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.ini"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/#/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.ini"}},end:/\n/dgv,name:"comment.line.number-sign.ini"}]},{begin:/(^[\t ]+)?(?=;)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.ini"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/;/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.ini"}},end:/\n/dgv,name:"comment.line.semicolon.ini"}]},{captures:{"1":{name:"keyword.other.definition.ini"},"2":{name:"punctuation.separator.key-value.ini"}},match:/\b([\-\.0-9A-Z_a-z]+)\b\p{space}*(=)/dgv},{captures:{"1":{name:"punctuation.definition.entity.ini"},"3":{name:"punctuation.definition.entity.ini"}},match:/^(\[)([^\n]*?)(\])/dgv,name:"entity.name.section.group-title.ini"},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ini"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.ini"}},name:"string.quoted.single.ini",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.ini"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.ini"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.ini"}},name:"string.quoted.double.ini"}],scopeName:"source.ini",embeddedLangs:undefined,aliases:["properties"]})
4
4
 
5
5
  export default [
6
6
  lang
package/dist/java.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { EmulatedRegExp } from 'oniguruma-to-es'
2
2
 
3
- const lang = Object.freeze({displayName:"Java",name:"java",patterns:[{begin:/\b(package)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.other.package.java"}},contentName:"storage.modifier.package.java",end:/\p{space}*(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.java"}},name:"meta.package.java",patterns:[{include:"#comments"},{match:/(?<=\.)\p{space}*\.|\.(?=\p{space}*;)/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!_)_(?=\p{space}*([\.\;]))|\b\p{Nd}+|-+/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/[A-Z]+/dgv,name:"invalid.deprecated.package_name_not_lowercase.java"},{match:/\b(?<!\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\b/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\./dgv,name:"punctuation.separator.java"}]},{begin:/\b(import)\b\p{space}*\b(static)?\b\p{space}/dgv,beginCaptures:{"1":{name:"keyword.other.import.java"},"2":{name:"storage.modifier.java"}},contentName:"storage.modifier.import.java",end:/\p{space}*(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.java"}},name:"meta.import.java",patterns:[{include:"#comments"},{match:/(?<=\.)\p{space}*\.|\.(?=\p{space}*;)/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!\.)\p{space}*\*/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!_)_(?=\p{space}*([\.\;]))|\b\p{Nd}+|-+/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\b(?<!\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\b/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\./dgv,name:"punctuation.separator.java"},{match:/\*/dgv,name:"variable.language.wildcard.java"}]},{include:"#comments-javadoc"},{include:"#code"},{include:"#module"}],repository:{"all-types":{patterns:[{include:"#primitive-arrays"},{include:"#primitive-types"},{include:"#object-types"}]},annotations:{patterns:[{begin:/((@)\p{space}*([^\p{space}\(]+))(\()/dgv,beginCaptures:{"2":{name:"punctuation.definition.annotation.java"},"3":{name:"storage.type.annotation.java"},"4":{name:"punctuation.definition.annotation-arguments.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.annotation-arguments.end.bracket.round.java"}},name:"meta.declaration.annotation.java",patterns:[{captures:{"1":{name:"constant.other.key.java"},"2":{name:"keyword.operator.assignment.java"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(=)/dgv},{include:"#code"}]},{captures:{"1":{name:"punctuation.definition.annotation.java"},"2":{name:"storage.modifier.java"},"3":{name:"storage.type.annotation.java"},"5":{name:"punctuation.definition.annotation.java"},"6":{name:"storage.type.annotation.java"}},match:/(@)(interface)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]*)|((@)\p{space}*([\p{L}\p{M}\p{N}\p{Pc}]+))/dgv,name:"meta.declaration.annotation.java"}]},"anonymous-block-and-instance-initializer":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.block.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.block.end.bracket.curly.java"}},patterns:[{include:"#code"}]},"anonymous-classes-and-new":{begin:/\bnew\b/dgv,beginCaptures:{"0":{name:"keyword.control.new.java"}},end:/(?=[\;\)\]\.\,\?\:\}\+\-\*]|\/(?![\/\*])|[\%\!\&\|\^\=])/dgv,patterns:[{include:"#comments"},{include:"#function-call"},{include:"#all-types"},{begin:/(?<=\))/dgv,end:/(?=[\;\)\]\.\,\?\:\}\+\-\*]|\/(?![\/\*])|[\%\!\&\|\^\=])/dgv,patterns:[{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.inner-class.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.inner-class.end.bracket.curly.java"}},name:"meta.inner-class.java",patterns:[{include:"#class-body"}]}]},{begin:/(?<=\])/dgv,end:/(?=[\;\)\]\.\,\?\:\}\+\-\*]|\/(?![\/\*])|[\%\!\&\|\^\=])/dgv,patterns:[{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.array-initializer.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.array-initializer.end.bracket.curly.java"}},name:"meta.array-initializer.java",patterns:[{include:"#code"}]}]},{include:"#parens"}]},assertions:{patterns:[{begin:/\b(assert)\p{space}/dgv,beginCaptures:{"1":{name:"keyword.control.assert.java"}},end:/(?=\n?$)/dgv,name:"meta.declaration.assertion.java",patterns:[{match:/:/dgv,name:"keyword.operator.assert.expression-separator.java"},{include:"#code"}]}]},class:{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}]?[\p{L}\p{M}\p{N}\p{Pc}\p{space}\-]*\b(?:class|(?<!@)interface|enum)\p{space}+[\p{L}\p{M}\p{N}\p{Pc}\$]+)/dgv,end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.class.end.bracket.curly.java"}},name:"meta.class.java",patterns:[{include:"#storage-modifiers"},{include:"#generics"},{include:"#comments"},{captures:{"1":{name:"storage.modifier.java"},"2":{name:"entity.name.type.class.java"}},match:/(class|(?<!@)interface|enum)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}\$]+)/dgv,name:"meta.class.identifier.java"},{begin:/extends/dgv,beginCaptures:{"0":{name:"storage.modifier.extends.java"}},end:/(?=\{|implements|permits)/dgv,name:"meta.definition.class.inherited.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/(implements)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\p{space}*extends|permits|\{)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/(permits)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.permits.java"}},end:/(?=\p{space}*extends|implements|\{)/dgv,name:"meta.definition.class.permits.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.class.begin.bracket.curly.java"}},contentName:"meta.class.body.java",end:/(?=\})/dgv,patterns:[{include:"#class-body"}]}]},"class-body":{patterns:[{include:"#comments-javadoc"},{include:"#comments"},{include:"#enums"},{include:"#class"},{include:"#generics"},{include:"#static-initializer"},{include:"#class-fields-and-methods"},{include:"#annotations"},{include:"#storage-modifiers"},{include:"#member-variables"},{include:"#code"}]},"class-fields-and-methods":{patterns:[{begin:/(?==)/dgv,end:/(?=;)/dgv,patterns:[{include:"#code"}]},{include:"#methods"}]},code:{patterns:[{include:"#annotations"},{include:"#comments"},{include:"#enums"},{include:"#class"},{include:"#record"},{include:"#anonymous-block-and-instance-initializer"},{include:"#try-catch-finally"},{include:"#assertions"},{include:"#parens"},{include:"#constants-and-special-vars"},{include:"#numbers"},{include:"#anonymous-classes-and-new"},{include:"#lambda-expression"},{include:"#keywords"},{include:"#storage-modifiers"},{include:"#method-call"},{include:"#function-call"},{include:"#variables"},{include:"#variables-local"},{include:"#objects"},{include:"#properties"},{include:"#strings"},{include:"#all-types"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\./dgv,name:"punctuation.separator.period.java"},{match:/;/dgv,name:"punctuation.terminator.java"}]},comments:{patterns:[{captures:{"0":{name:"punctuation.definition.comment.java"}},match:/\/\*\*\//dgv,name:"comment.block.empty.java"},{include:"#comments-inline"}]},"comments-inline":{patterns:[{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.java"}},end:/\*\//dgv,name:"comment.block.java"},{begin:/(^[ \t]+)?(?=\/\/)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.java"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.java"}},end:/\n/dgv,name:"comment.line.double-slash.java"}]}]},"comments-javadoc":{patterns:[{begin:/^\p{space}*(\/\*\*)(?!\/)/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.java"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.java"}},name:"comment.block.javadoc.java",patterns:[{match:/@(author|deprecated|return|see|serial|since|version)\b/dgv,name:"keyword.other.documentation.javadoc.java"},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"variable.parameter.java"}},match:/(@param)\p{space}+(\P{space}+)/dgv},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"entity.name.type.class.java"}},match:/(@(?:exception|throws))\p{space}+(\P{space}+)/dgv},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"entity.name.type.class.java"},"3":{name:"variable.parameter.java"}},match:/\{(@link)\p{space}+(\P{space}+)?#([\p{L}\p{M}\p{N}\p{Pc}\$]+\p{space}*\([^\(\)]*\))[^\n]*?\}/dgv}]}]},"constants-and-special-vars":{patterns:[{match:/\b(true|false|null)\b/dgv,name:"constant.language.java"},{match:/\bthis\b/dgv,name:"variable.language.this.java"},{match:/\bsuper\b/dgv,name:"variable.language.java"}]},enums:{begin:/^\p{space}*([\p{L}\p{M}\p{N}\p{Pc}\p{space}]*)(enum)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{patterns:[{include:"#storage-modifiers"}]},"2":{name:"storage.modifier.java"},"3":{name:"entity.name.type.enum.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.enum.end.bracket.curly.java"}},name:"meta.enum.java",patterns:[{begin:/\b(extends)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.extends.java"}},end:/(?=\{|\bimplements\b)/dgv,name:"meta.definition.class.inherited.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\b(implements)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\{|\bextends\b)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.enum.begin.bracket.curly.java"}},end:/(?=\})/dgv,patterns:[{begin:/(?<=\{)/dgv,end:/(?=[\;\}])/dgv,patterns:[{include:"#comments-javadoc"},{include:"#comments"},{begin:/\b([\p{L}\p{M}\p{N}\p{Pc}]+)\b/dgv,beginCaptures:{"1":{name:"constant.other.enum.java"}},end:/(,)|(?=[\;\}])/dgv,endCaptures:{"1":{name:"punctuation.separator.delimiter.java"}},patterns:[{include:"#comments-javadoc"},{include:"#comments"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.bracket.round.java"}},patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.bracket.curly.java"}},patterns:[{include:"#class-body"}]}]}]},{include:"#class-body"}]}]},"function-call":{begin:/([A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.java"},"2":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.function-call.java",patterns:[{include:"#code"}]},generics:{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.bracket.angle.java"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.bracket.angle.java"}},patterns:[{match:/\b(extends|super)\b/dgv,name:"storage.modifier.$1.java"},{captures:{"1":{name:"storage.type.java"}},match:/(?<!\.)([a-zA-Z\$_][a-zA-Z0-9\$_]*)(?=\p{space}*<)/dgv},{include:"#primitive-arrays"},{match:/[a-zA-Z\$_][a-zA-Z0-9\$_]*/dgv,name:"storage.type.generic.java"},{match:/\?/dgv,name:"storage.type.generic.wildcard.java"},{match:/&/dgv,name:"punctuation.separator.types.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\./dgv,name:"punctuation.separator.period.java"},{include:"#parens"},{include:"#generics"},{include:"#comments"}]},keywords:{patterns:[{match:/\bthrow\b/dgv,name:"keyword.control.throw.java"},{match:/[\?\:]/dgv,name:"keyword.control.ternary.java"},{match:/\b(return|yield|break|case|continue|default|do|while|for|switch|if|else)\b/dgv,name:"keyword.control.java"},{match:/\b(instanceof)\b/dgv,name:"keyword.operator.instanceof.java"},{match:/(<<|>>>?|[\~\^])/dgv,name:"keyword.operator.bitwise.java"},{match:/(([\&\^\|]|<<|>>>?)=)/dgv,name:"keyword.operator.assignment.bitwise.java"},{match:/(===?|!=|<=|>=|<>|[\<\>])/dgv,name:"keyword.operator.comparison.java"},{match:/([\+\*\/\%\-]=)/dgv,name:"keyword.operator.assignment.arithmetic.java"},{match:/(=)/dgv,name:"keyword.operator.assignment.java"},{match:/(--|\+\+)/dgv,name:"keyword.operator.increment-decrement.java"},{match:/([\-\+\*\/\%])/dgv,name:"keyword.operator.arithmetic.java"},{match:/(!|&&|\|\|)/dgv,name:"keyword.operator.logical.java"},{match:/([\|\&])/dgv,name:"keyword.operator.bitwise.java"},{match:/\b(const|goto)\b/dgv,name:"keyword.reserved.java"}]},"lambda-expression":{patterns:[{match:/->/dgv,name:"storage.type.function.arrow.java"}]},"member-variables":{begin:/(?=private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)/dgv,end:/(?=[\=\;])/dgv,patterns:[{include:"#storage-modifiers"},{include:"#variables"},{include:"#primitive-arrays"},{include:"#object-types"}]},"method-call":{begin:/(\.)\p{space}*([A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"entity.name.function.java"},"3":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.method-call.java",patterns:[{include:"#code"}]},methods:{begin:/(?!new)(?=[\p{L}\p{M}\p{N}\p{Pc}\<][^\n]*\p{space}+)(?=([^\=\/]|\/(?!\/))+\()/dgv,end:/(\})|(?=;)/dgv,endCaptures:{"1":{name:"punctuation.section.method.end.bracket.curly.java"}},name:"meta.method.java",patterns:[{include:"#storage-modifiers"},{begin:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.java"},"2":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.method.identifier.java",patterns:[{include:"#parameters"},{include:"#parens"},{include:"#comments"}]},{include:"#generics"},{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}][^\n]*\p{space}+[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\()/dgv,end:/(?=\p{space}+[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\()/dgv,name:"meta.method.return-type.java",patterns:[{include:"#all-types"},{include:"#parens"},{include:"#comments"}]},{include:"#throws"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.method.begin.bracket.curly.java"}},contentName:"meta.method.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]},{include:"#comments"}]},module:{begin:/((open)\p{space})?(module)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"storage.modifier.java"},"3":{name:"storage.modifier.java"},"4":{name:"entity.name.type.module.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.module.end.bracket.curly.java"}},name:"meta.module.java",patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.module.begin.bracket.curly.java"}},contentName:"meta.module.body.java",end:/(?=\})/dgv,patterns:[{include:"#comments"},{include:"#comments-javadoc"},{match:/\b(requires|transitive|exports|opens|to|uses|provides|with)\b/dgv,name:"keyword.module.java"}]}]},numbers:{patterns:[{match:/\b(?<!\$)0([xX])((?<!\.)\p{AHex}([_\p{AHex}]*\p{AHex})?[Ll]?(?!\.)|(\p{AHex}([_\p{AHex}]*\p{AHex})?\.?|(\p{AHex}([_\p{AHex}]*\p{AHex})?)?\.\p{AHex}([_\p{AHex}]*\p{AHex})?)[Pp][\+\-]?[0-9]([0-9_]*[0-9])?[FfDd]?)\b(?!\$)/dgv,name:"constant.numeric.hex.java"},{match:/\b(?<!\$)0([bB])[01]([01_]*[01])?[Ll]?\b(?!\$)/dgv,name:"constant.numeric.binary.java"},{match:/\b(?<!\$)0[0-7]([0-7_]*[0-7])?[Ll]?\b(?!\$)/dgv,name:"constant.numeric.octal.java"},{match:/(?<!\$)(\b[0-9]([0-9_]*[0-9])?\.\B(?!\.)|\b[0-9]([0-9_]*[0-9])?\.([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)[FfDd]?\b|\b[0-9]([0-9_]*[0-9])?\.([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)?[FfDd]\b|\b[0-9]([0-9_]*[0-9])?\.([0-9]([0-9_]*[0-9])?)([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)?[FfDd]?\b|(?<!\.)\B\.[0-9]([0-9_]*[0-9])?([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)?[FfDd]?\b|\b[0-9]([0-9_]*[0-9])?([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)[FfDd]?\b|\b[0-9]([0-9_]*[0-9])?([Ee][\+\-]?[0-9]([0-9_]*[0-9])?)?[FfDd]\b|\b(0|[1-9]([0-9_]*[0-9])?)(?!\.)[Ll]?\b)(?!\$)/dgv,name:"constant.numeric.decimal.java"}]},"object-types":{patterns:[{include:"#generics"},{begin:/\b((?:[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*)([A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(?=\[)/dgv,beginCaptures:{"1":{patterns:[{match:/[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]},"2":{name:"storage.type.object.array.java"}},end:/(?!\p{space}*\[)/dgv,patterns:[{include:"#comments"},{include:"#parens"}]},{captures:{"1":{patterns:[{match:/[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]}},match:/\b((?:[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*[A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(?=<)/dgv},{captures:{"1":{patterns:[{match:/[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]}},match:/\b((?:[A-Za-z_][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*[A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\b((?=\p{space}*[A-Za-z\$_\n])|(?=\p{space}*\.\.\.))/dgv}]},"object-types-inherited":{patterns:[{include:"#generics"},{captures:{"1":{name:"punctuation.separator.period.java"}},match:/\b(?:[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*(\.)\p{space}*)*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.other.inherited-class.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"}]},objects:{match:/(?<![\p{L}\p{M}\p{N}\p{Pc}\$])[a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*(?=\p{space}*\.\p{space}*[\p{L}\p{M}\p{N}\p{Pc}\$]+)/dgv,name:"variable.other.object.java"},parameters:{patterns:[{match:/\bfinal\b/dgv,name:"storage.modifier.java"},{include:"#annotations"},{include:"#all-types"},{include:"#strings"},{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"variable.parameter.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\.\.\./dgv,name:"punctuation.definition.parameters.varargs.java"}]},parens:{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.bracket.round.java"}},patterns:[{include:"#code"}]},{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.bracket.square.java"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.bracket.square.java"}},patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.bracket.curly.java"}},patterns:[{include:"#code"}]}]},"primitive-arrays":{patterns:[{begin:/\b(void|boolean|byte|char|short|int|float|long|double)\b\p{space}*(?=\[)/dgv,beginCaptures:{"1":{name:"storage.type.primitive.array.java"}},end:/(?!\p{space}*\[)/dgv,patterns:[{include:"#comments"},{include:"#parens"}]}]},"primitive-types":{match:/\b(void|boolean|byte|char|short|int|float|long|double)\b/dgv,name:"storage.type.primitive.java"},properties:{patterns:[{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"keyword.control.new.java"}},match:/(\.)\p{space}*(new)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"variable.other.object.property.java"}},match:/(\.)\p{space}*([a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)(?=\p{space}*\.\p{space}*[a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"variable.other.object.property.java"}},match:/(\.)\p{space}*([a-zA-Z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"invalid.illegal.identifier.java"}},match:/(\.)\p{space}*([0-9][\p{L}\p{M}\p{N}\p{Pc}\$]*)/dgv}]},record:{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}]?[\p{L}\p{M}\p{N}\p{Pc}\p{space}]*\brecord\p{space}+[\p{L}\p{M}\p{N}\p{Pc}\$]+)/dgv,end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.class.end.bracket.curly.java"}},name:"meta.record.java",patterns:[{include:"#storage-modifiers"},{include:"#generics"},{include:"#comments"},{begin:/(record)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}\$]+)(<[\p{L}\p{M}\p{N}\p{Pc}\$]+>)?(\()/dgv,beginCaptures:{"1":{name:"storage.modifier.java"},"2":{name:"entity.name.type.record.java"},"3":{patterns:[{include:"#generics"}]},"4":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.record.identifier.java",patterns:[{include:"#code"}]},{begin:/(implements)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\p{space}*\{)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{include:"#record-body"}]},"record-body":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.class.begin.bracket.curly.java"}},end:/(?=\})/dgv,name:"meta.record.body.java",patterns:[{include:"#record-constructor"},{include:"#class-body"}]},"record-constructor":{begin:/(?!new)(?=[\p{L}\p{M}\p{N}\p{Pc}\<][^\n]*\p{space}+)(?=([^\(\=\/]|\/(?!\/))+(?=\{))/dgv,end:/(\})|(?=;)/dgv,endCaptures:{"1":{name:"punctuation.section.method.end.bracket.curly.java"}},name:"meta.method.java",patterns:[{include:"#storage-modifiers"},{begin:/([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"entity.name.function.java"}},end:/(?=\p{space}*\{)/dgv,name:"meta.method.identifier.java",patterns:[{include:"#comments"}]},{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.method.begin.bracket.curly.java"}},contentName:"meta.method.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},"static-initializer":{patterns:[{include:"#anonymous-block-and-instance-initializer"},{match:/static/dgv,name:"storage.modifier.java"}]},"storage-modifiers":{match:/\b(public|private|protected|static|final|native|synchronized|abstract|threadsafe|transient|volatile|default|strictfp|sealed|non-sealed)\b/dgv,name:"storage.modifier.java"},strings:{patterns:[{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.triple.java",patterns:[{match:/(\\""")(?!")|(\\[^\n])/dgv,name:"constant.character.escape.java"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.double.java",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.java"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.single.java",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.java"}]}]},throws:{begin:/throws/dgv,beginCaptures:{"0":{name:"storage.modifier.java"}},end:/(?=[\{\;])/dgv,name:"meta.throwables.java",patterns:[{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/[a-zA-Z\$_][\.a-zA-Z0-9\$_]*/dgv,name:"storage.type.java"},{include:"#comments"}]},"try-catch-finally":{patterns:[{begin:/\btry\b/dgv,beginCaptures:{"0":{name:"keyword.control.try.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.try.end.bracket.curly.java"}},name:"meta.try.java",patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.section.try.resources.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.try.resources.end.bracket.round.java"}},name:"meta.try.resources.java",patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.try.begin.bracket.curly.java"}},contentName:"meta.try.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},{begin:/\b(catch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.catch.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.catch.end.bracket.curly.java"}},name:"meta.catch.java",patterns:[{include:"#comments"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},contentName:"meta.catch.parameters.java",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},patterns:[{include:"#comments"},{include:"#storage-modifiers"},{begin:/[a-zA-Z\$_][\.a-zA-Z0-9\$_]*/dgv,beginCaptures:{"0":{name:"storage.type.java"}},end:/(\|)|(?=\))/dgv,endCaptures:{"1":{name:"punctuation.catch.separator.java"}},patterns:[{include:"#comments"},{captures:{"0":{name:"variable.parameter.java"}},match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv}]}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.catch.begin.bracket.curly.java"}},contentName:"meta.catch.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},{begin:/\bfinally\b/dgv,beginCaptures:{"0":{name:"keyword.control.finally.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.finally.end.bracket.curly.java"}},name:"meta.finally.java",patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.finally.begin.bracket.curly.java"}},contentName:"meta.finally.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]}]},variables:{begin:/*@__PURE__*/ new EmulatedRegExp("(?=\\b((void|boolean|byte|char|short|int|float|long|double)|(?:(?=(([\\p{L}\\p{M}\\p{N}\\p{Pc}]+\\.)*[A-Z_]+[\\p{L}\\p{M}\\p{N}\\p{Pc}]*))\\3))\\b\\p{space}*(<[\\p{L}\\p{M}\\p{N}\\p{Pc}\\<\\>\\,\\.\\?\\p{space}\\[\\]]*>)?\\p{space}*((\\[\\])*)?\\p{space}+[A-Za-z_\\$][\\p{L}\\p{M}\\p{N}\\p{Pc}\\$]*([\\p{L}\\p{M}\\p{N}\\p{Pc}\\[\\]\\,\\$][\\p{L}\\p{M}\\p{N}\\p{Pc}\\[\\]\\,\\p{space}]*)?\\p{space}*([\\=\\:\\;]))","dgv",{"hiddenCaptures":[3]}),end:/(?=[\=\:\;])/dgv,name:"meta.definition.variable.java",patterns:[{captures:{"1":{name:"variable.other.definition.java"}},match:/([A-Za-z\$_][\p{L}\p{M}\p{N}\p{Pc}\$]*)(?=\p{space}*(\[\])*\p{space}*([\;\:\=\,]))/dgv},{include:"#all-types"},{include:"#code"}]},"variables-local":{begin:/(?=\b(var)\b\p{space}+[A-Za-z_\$][\p{L}\p{M}\p{N}\p{Pc}\$]*\p{space}*([\=\:\;]))/dgv,end:/(?=[\=\:\;])/dgv,name:"meta.definition.variable.local.java",patterns:[{match:/\bvar\b/dgv,name:"storage.type.local.java"},{captures:{"1":{name:"variable.other.definition.java"}},match:/([A-Za-z\$_][\p{L}\p{M}\p{N}\p{Pc}\$]*)(?=\p{space}*(\[\])*\p{space}*([\=\:\;]))/dgv},{include:"#code"}]}},scopeName:"source.java",embeddedLangs:undefined,aliases:undefined})
3
+ const lang = Object.freeze({displayName:"Java",name:"java",patterns:[{begin:/\b(package)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.other.package.java"}},contentName:"storage.modifier.package.java",end:/\p{space}*(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.java"}},name:"meta.package.java",patterns:[{include:"#comments"},{match:/(?<=\.)\p{space}*\.|\.(?=\p{space}*;)/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!_)_(?=\p{space}*([\.\;]))|\b\p{Nd}+|-+/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/[A-Z]+/dgv,name:"invalid.deprecated.package_name_not_lowercase.java"},{match:/\b(?<!\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\b/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\./dgv,name:"punctuation.separator.java"}]},{begin:/\b(import)\b\p{space}*\b(static)?\b\p{space}/dgv,beginCaptures:{"1":{name:"keyword.other.import.java"},"2":{name:"storage.modifier.java"}},contentName:"storage.modifier.import.java",end:/\p{space}*(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.java"}},name:"meta.import.java",patterns:[{include:"#comments"},{match:/(?<=\.)\p{space}*\.|\.(?=\p{space}*;)/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!\.)\p{space}*\*/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/(?<!_)_(?=\p{space}*([\.\;]))|\b\p{Nd}+|-+/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\b(?<!\$)(abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|native|new|non-sealed|package|permits|private|protected|public|return|sealed|short|static|strictfp|super|switch|syncronized|this|throw|throws|transient|try|void|volatile|while|yield|true|false|null)\b/dgv,name:"invalid.illegal.character_not_allowed_here.java"},{match:/\./dgv,name:"punctuation.separator.java"},{match:/\*/dgv,name:"variable.language.wildcard.java"}]},{include:"#comments-javadoc"},{include:"#code"},{include:"#module"}],repository:{"all-types":{patterns:[{include:"#primitive-arrays"},{include:"#primitive-types"},{include:"#object-types"}]},annotations:{patterns:[{begin:/((@)\p{space}*([^\(\p{space}]+))(\()/dgv,beginCaptures:{"2":{name:"punctuation.definition.annotation.java"},"3":{name:"storage.type.annotation.java"},"4":{name:"punctuation.definition.annotation-arguments.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.annotation-arguments.end.bracket.round.java"}},name:"meta.declaration.annotation.java",patterns:[{captures:{"1":{name:"constant.other.key.java"},"2":{name:"keyword.operator.assignment.java"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(=)/dgv},{include:"#code"}]},{captures:{"1":{name:"punctuation.definition.annotation.java"},"2":{name:"storage.modifier.java"},"3":{name:"storage.type.annotation.java"},"5":{name:"punctuation.definition.annotation.java"},"6":{name:"storage.type.annotation.java"}},match:/(@)(interface)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]*)|((@)\p{space}*([\p{L}\p{M}\p{N}\p{Pc}]+))/dgv,name:"meta.declaration.annotation.java"}]},"anonymous-block-and-instance-initializer":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.block.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.block.end.bracket.curly.java"}},patterns:[{include:"#code"}]},"anonymous-classes-and-new":{begin:/\bnew\b/dgv,beginCaptures:{"0":{name:"keyword.control.new.java"}},end:/(?=[\]\)-\.\:\;\?\}]|\/(?![\*\/])|[\!\%\&\=\^\|])/dgv,patterns:[{include:"#comments"},{include:"#function-call"},{include:"#all-types"},{begin:/(?<=\))/dgv,end:/(?=[\]\)-\.\:\;\?\}]|\/(?![\*\/])|[\!\%\&\=\^\|])/dgv,patterns:[{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.inner-class.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.inner-class.end.bracket.curly.java"}},name:"meta.inner-class.java",patterns:[{include:"#class-body"}]}]},{begin:/(?<=\])/dgv,end:/(?=[\]\)-\.\:\;\?\}]|\/(?![\*\/])|[\!\%\&\=\^\|])/dgv,patterns:[{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.array-initializer.begin.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.array-initializer.end.bracket.curly.java"}},name:"meta.array-initializer.java",patterns:[{include:"#code"}]}]},{include:"#parens"}]},assertions:{patterns:[{begin:/\b(assert)\p{space}/dgv,beginCaptures:{"1":{name:"keyword.control.assert.java"}},end:/(?=\n?$)/dgv,name:"meta.declaration.assertion.java",patterns:[{match:/:/dgv,name:"keyword.operator.assert.expression-separator.java"},{include:"#code"}]}]},class:{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}]?[\-\p{L}\p{M}\p{N}\p{Pc}\p{space}]*\b(?:class|(?<!@)interface|enum)\p{space}+[\$\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.class.end.bracket.curly.java"}},name:"meta.class.java",patterns:[{include:"#storage-modifiers"},{include:"#generics"},{include:"#comments"},{captures:{"1":{name:"storage.modifier.java"},"2":{name:"entity.name.type.class.java"}},match:/(class|(?<!@)interface|enum)\p{space}+([\$\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"meta.class.identifier.java"},{begin:/extends/dgv,beginCaptures:{"0":{name:"storage.modifier.extends.java"}},end:/(?=\{|implements|permits)/dgv,name:"meta.definition.class.inherited.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/(implements)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\p{space}*extends|permits|\{)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/(permits)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.permits.java"}},end:/(?=\p{space}*extends|implements|\{)/dgv,name:"meta.definition.class.permits.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.class.begin.bracket.curly.java"}},contentName:"meta.class.body.java",end:/(?=\})/dgv,patterns:[{include:"#class-body"}]}]},"class-body":{patterns:[{include:"#comments-javadoc"},{include:"#comments"},{include:"#enums"},{include:"#class"},{include:"#generics"},{include:"#static-initializer"},{include:"#class-fields-and-methods"},{include:"#annotations"},{include:"#storage-modifiers"},{include:"#member-variables"},{include:"#code"}]},"class-fields-and-methods":{patterns:[{begin:/(?==)/dgv,end:/(?=;)/dgv,patterns:[{include:"#code"}]},{include:"#methods"}]},code:{patterns:[{include:"#annotations"},{include:"#comments"},{include:"#enums"},{include:"#class"},{include:"#record"},{include:"#anonymous-block-and-instance-initializer"},{include:"#try-catch-finally"},{include:"#assertions"},{include:"#parens"},{include:"#constants-and-special-vars"},{include:"#numbers"},{include:"#anonymous-classes-and-new"},{include:"#lambda-expression"},{include:"#keywords"},{include:"#storage-modifiers"},{include:"#method-call"},{include:"#function-call"},{include:"#variables"},{include:"#variables-local"},{include:"#objects"},{include:"#properties"},{include:"#strings"},{include:"#all-types"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\./dgv,name:"punctuation.separator.period.java"},{match:/;/dgv,name:"punctuation.terminator.java"}]},comments:{patterns:[{captures:{"0":{name:"punctuation.definition.comment.java"}},match:/\/\*\*\//dgv,name:"comment.block.empty.java"},{include:"#comments-inline"}]},"comments-inline":{patterns:[{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.java"}},end:/\*\//dgv,name:"comment.block.java"},{begin:/(^[\t ]+)?(?=\/\/)/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.java"}},end:/*@__PURE__*/ new EmulatedRegExp("(?!^)","dgv",{"strategy":"clip_search"}),patterns:[{begin:/\/\//dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.java"}},end:/\n/dgv,name:"comment.line.double-slash.java"}]}]},"comments-javadoc":{patterns:[{begin:/^\p{space}*(\/\*\*)(?!\/)/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.java"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.java"}},name:"comment.block.javadoc.java",patterns:[{match:/@(author|deprecated|return|see|serial|since|version)\b/dgv,name:"keyword.other.documentation.javadoc.java"},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"variable.parameter.java"}},match:/(@param)\p{space}+(\P{space}+)/dgv},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"entity.name.type.class.java"}},match:/(@(?:exception|throws))\p{space}+(\P{space}+)/dgv},{captures:{"1":{name:"keyword.other.documentation.javadoc.java"},"2":{name:"entity.name.type.class.java"},"3":{name:"variable.parameter.java"}},match:/\{(@link)\p{space}+(\P{space}+)?#([\$\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\([^\(\)]*\))[^\n]*?\}/dgv}]}]},"constants-and-special-vars":{patterns:[{match:/\b(true|false|null)\b/dgv,name:"constant.language.java"},{match:/\bthis\b/dgv,name:"variable.language.this.java"},{match:/\bsuper\b/dgv,name:"variable.language.java"}]},enums:{begin:/^\p{space}*([\p{L}\p{M}\p{N}\p{Pc}\p{space}]*)(enum)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{patterns:[{include:"#storage-modifiers"}]},"2":{name:"storage.modifier.java"},"3":{name:"entity.name.type.enum.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.enum.end.bracket.curly.java"}},name:"meta.enum.java",patterns:[{begin:/\b(extends)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.extends.java"}},end:/(?=\{|\bimplements\b)/dgv,name:"meta.definition.class.inherited.classes.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\b(implements)\b/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\{|\bextends\b)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.enum.begin.bracket.curly.java"}},end:/(?=\})/dgv,patterns:[{begin:/(?<=\{)/dgv,end:/(?=[\;\}])/dgv,patterns:[{include:"#comments-javadoc"},{include:"#comments"},{begin:/\b([\p{L}\p{M}\p{N}\p{Pc}]+)\b/dgv,beginCaptures:{"1":{name:"constant.other.enum.java"}},end:/(,)|(?=[\;\}])/dgv,endCaptures:{"1":{name:"punctuation.separator.delimiter.java"}},patterns:[{include:"#comments-javadoc"},{include:"#comments"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.bracket.round.java"}},patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.bracket.curly.java"}},patterns:[{include:"#class-body"}]}]}]},{include:"#class-body"}]}]},"function-call":{begin:/([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.java"},"2":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.function-call.java",patterns:[{include:"#code"}]},generics:{begin:/</dgv,beginCaptures:{"0":{name:"punctuation.bracket.angle.java"}},end:/>/dgv,endCaptures:{"0":{name:"punctuation.bracket.angle.java"}},patterns:[{match:/\b(extends|super)\b/dgv,name:"storage.modifier.$1.java"},{captures:{"1":{name:"storage.type.java"}},match:/(?<!\.)([\$A-Z_a-z][\$0-9A-Z_a-z]*)(?=\p{space}*<)/dgv},{include:"#primitive-arrays"},{match:/[\$A-Z_a-z][\$0-9A-Z_a-z]*/dgv,name:"storage.type.generic.java"},{match:/\?/dgv,name:"storage.type.generic.wildcard.java"},{match:/&/dgv,name:"punctuation.separator.types.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\./dgv,name:"punctuation.separator.period.java"},{include:"#parens"},{include:"#generics"},{include:"#comments"}]},keywords:{patterns:[{match:/\bthrow\b/dgv,name:"keyword.control.throw.java"},{match:/[\:\?]/dgv,name:"keyword.control.ternary.java"},{match:/\b(return|yield|break|case|continue|default|do|while|for|switch|if|else)\b/dgv,name:"keyword.control.java"},{match:/\b(instanceof)\b/dgv,name:"keyword.operator.instanceof.java"},{match:/(<<|>>>?|[\^\~])/dgv,name:"keyword.operator.bitwise.java"},{match:/(([\&\^\|]|<<|>>>?)=)/dgv,name:"keyword.operator.assignment.bitwise.java"},{match:/(===?|!=|<=|>=|<>|[\<\>])/dgv,name:"keyword.operator.comparison.java"},{match:/([\-\%\*\+\/]=)/dgv,name:"keyword.operator.assignment.arithmetic.java"},{match:/(=)/dgv,name:"keyword.operator.assignment.java"},{match:/(--|\+\+)/dgv,name:"keyword.operator.increment-decrement.java"},{match:/([\-\%\*\+\/])/dgv,name:"keyword.operator.arithmetic.java"},{match:/(!|&&|\|\|)/dgv,name:"keyword.operator.logical.java"},{match:/([\&\|])/dgv,name:"keyword.operator.bitwise.java"},{match:/\b(const|goto)\b/dgv,name:"keyword.reserved.java"}]},"lambda-expression":{patterns:[{match:/->/dgv,name:"storage.type.function.arrow.java"}]},"member-variables":{begin:/(?=private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)/dgv,end:/(?=[\;\=])/dgv,patterns:[{include:"#storage-modifiers"},{include:"#variables"},{include:"#primitive-arrays"},{include:"#object-types"}]},"method-call":{begin:/(\.)\p{space}*([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"entity.name.function.java"},"3":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.method-call.java",patterns:[{include:"#code"}]},methods:{begin:/(?!new)(?=[\<\p{L}\p{M}\p{N}\p{Pc}][^\n]*\p{space}+)(?=([^\/\=]|\/(?!\/))+\()/dgv,end:/(\})|(?=;)/dgv,endCaptures:{"1":{name:"punctuation.section.method.end.bracket.curly.java"}},name:"meta.method.java",patterns:[{include:"#storage-modifiers"},{begin:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"entity.name.function.java"},"2":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.method.identifier.java",patterns:[{include:"#parameters"},{include:"#parens"},{include:"#comments"}]},{include:"#generics"},{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}][^\n]*\p{space}+[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\()/dgv,end:/(?=\p{space}+[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\()/dgv,name:"meta.method.return-type.java",patterns:[{include:"#all-types"},{include:"#parens"},{include:"#comments"}]},{include:"#throws"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.method.begin.bracket.curly.java"}},contentName:"meta.method.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]},{include:"#comments"}]},module:{begin:/((open)\p{space})?(module)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"storage.modifier.java"},"3":{name:"storage.modifier.java"},"4":{name:"entity.name.type.module.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.module.end.bracket.curly.java"}},name:"meta.module.java",patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.module.begin.bracket.curly.java"}},contentName:"meta.module.body.java",end:/(?=\})/dgv,patterns:[{include:"#comments"},{include:"#comments-javadoc"},{match:/\b(requires|transitive|exports|opens|to|uses|provides|with)\b/dgv,name:"keyword.module.java"}]}]},numbers:{patterns:[{match:/\b(?<!\$)0([Xx])((?<!\.)\p{AHex}([_\p{AHex}]*\p{AHex})?[Ll]?(?!\.)|(\p{AHex}([_\p{AHex}]*\p{AHex})?\.?|(\p{AHex}([_\p{AHex}]*\p{AHex})?)?\.\p{AHex}([_\p{AHex}]*\p{AHex})?)[Pp][\-\+]?[0-9]([0-9_]*[0-9])?[DFdf]?)\b(?!\$)/dgv,name:"constant.numeric.hex.java"},{match:/\b(?<!\$)0([Bb])[01]([01_]*[01])?[Ll]?\b(?!\$)/dgv,name:"constant.numeric.binary.java"},{match:/\b(?<!\$)0[0-7]([0-7_]*[0-7])?[Ll]?\b(?!\$)/dgv,name:"constant.numeric.octal.java"},{match:/(?<!\$)(\b[0-9]([0-9_]*[0-9])?\.\B(?!\.)|\b[0-9]([0-9_]*[0-9])?\.([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)[DFdf]?\b|\b[0-9]([0-9_]*[0-9])?\.([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)?[DFdf]\b|\b[0-9]([0-9_]*[0-9])?\.([0-9]([0-9_]*[0-9])?)([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)?[DFdf]?\b|(?<!\.)\B\.[0-9]([0-9_]*[0-9])?([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)?[DFdf]?\b|\b[0-9]([0-9_]*[0-9])?([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)[DFdf]?\b|\b[0-9]([0-9_]*[0-9])?([Ee][\-\+]?[0-9]([0-9_]*[0-9])?)?[DFdf]\b|\b(0|[1-9]([0-9_]*[0-9])?)(?!\.)[Ll]?\b)(?!\$)/dgv,name:"constant.numeric.decimal.java"}]},"object-types":{patterns:[{include:"#generics"},{begin:/\b((?:[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*)([A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(?=\[)/dgv,beginCaptures:{"1":{patterns:[{match:/[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]},"2":{name:"storage.type.object.array.java"}},end:/(?!\p{space}*\[)/dgv,patterns:[{include:"#comments"},{include:"#parens"}]},{captures:{"1":{patterns:[{match:/[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]}},match:/\b((?:[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*[A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(?=<)/dgv},{captures:{"1":{patterns:[{match:/[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"storage.type.java"},{match:/\./dgv,name:"punctuation.separator.period.java"}]}},match:/\b((?:[A-Z_a-z][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*\.\p{space}*)*[A-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)\b((?=\p{space}*[\n\$A-Z_a-z])|(?=\p{space}*\.\.\.))/dgv}]},"object-types-inherited":{patterns:[{include:"#generics"},{captures:{"1":{name:"punctuation.separator.period.java"}},match:/\b(?:[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*(\.)\p{space}*)*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.other.inherited-class.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"}]},objects:{match:/(?<![\$\p{L}\p{M}\p{N}\p{Pc}])[\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*(?=\p{space}*\.\p{space}*[\$\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"variable.other.object.java"},parameters:{patterns:[{match:/\bfinal\b/dgv,name:"storage.modifier.java"},{include:"#annotations"},{include:"#all-types"},{include:"#strings"},{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"variable.parameter.java"},{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/\.\.\./dgv,name:"punctuation.definition.parameters.varargs.java"}]},parens:{patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.bracket.round.java"}},patterns:[{include:"#code"}]},{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.bracket.square.java"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.bracket.square.java"}},patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.bracket.curly.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.bracket.curly.java"}},patterns:[{include:"#code"}]}]},"primitive-arrays":{patterns:[{begin:/\b(void|boolean|byte|char|short|int|float|long|double)\b\p{space}*(?=\[)/dgv,beginCaptures:{"1":{name:"storage.type.primitive.array.java"}},end:/(?!\p{space}*\[)/dgv,patterns:[{include:"#comments"},{include:"#parens"}]}]},"primitive-types":{match:/\b(void|boolean|byte|char|short|int|float|long|double)\b/dgv,name:"storage.type.primitive.java"},properties:{patterns:[{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"keyword.control.new.java"}},match:/(\.)\p{space}*(new)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"variable.other.object.property.java"}},match:/(\.)\p{space}*([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)(?=\p{space}*\.\p{space}*[\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"variable.other.object.property.java"}},match:/(\.)\p{space}*([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{captures:{"1":{name:"punctuation.separator.period.java"},"2":{name:"invalid.illegal.identifier.java"}},match:/(\.)\p{space}*([0-9][\$\p{L}\p{M}\p{N}\p{Pc}]*)/dgv}]},record:{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}]?[\p{L}\p{M}\p{N}\p{Pc}\p{space}]*\brecord\p{space}+[\$\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.class.end.bracket.curly.java"}},name:"meta.record.java",patterns:[{include:"#storage-modifiers"},{include:"#generics"},{include:"#comments"},{begin:/(record)\p{space}+([\$\p{L}\p{M}\p{N}\p{Pc}]+)(<[\$\p{L}\p{M}\p{N}\p{Pc}]+>)?(\()/dgv,beginCaptures:{"1":{name:"storage.modifier.java"},"2":{name:"entity.name.type.record.java"},"3":{patterns:[{include:"#generics"}]},"4":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},name:"meta.record.identifier.java",patterns:[{include:"#code"}]},{begin:/(implements)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.java"}},end:/(?=\p{space}*\{)/dgv,name:"meta.definition.class.implemented.interfaces.java",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{include:"#record-body"}]},"record-body":{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.class.begin.bracket.curly.java"}},end:/(?=\})/dgv,name:"meta.record.body.java",patterns:[{include:"#record-constructor"},{include:"#class-body"}]},"record-constructor":{begin:/(?!new)(?=[\<\p{L}\p{M}\p{N}\p{Pc}][^\n]*\p{space}+)(?=([^\(\/\=]|\/(?!\/))+(?=\{))/dgv,end:/(\})|(?=;)/dgv,endCaptures:{"1":{name:"punctuation.section.method.end.bracket.curly.java"}},name:"meta.method.java",patterns:[{include:"#storage-modifiers"},{begin:/([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,beginCaptures:{"1":{name:"entity.name.function.java"}},end:/(?=\p{space}*\{)/dgv,name:"meta.method.identifier.java",patterns:[{include:"#comments"}]},{include:"#comments"},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.method.begin.bracket.curly.java"}},contentName:"meta.method.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},"static-initializer":{patterns:[{include:"#anonymous-block-and-instance-initializer"},{match:/static/dgv,name:"storage.modifier.java"}]},"storage-modifiers":{match:/\b(public|private|protected|static|final|native|synchronized|abstract|threadsafe|transient|volatile|default|strictfp|sealed|non-sealed)\b/dgv,name:"storage.modifier.java"},strings:{patterns:[{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.triple.java",patterns:[{match:/(\\""")(?!")|(\\[^\n])/dgv,name:"constant.character.escape.java"}]},{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.double.java",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.java"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.java"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.java"}},name:"string.quoted.single.java",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.java"}]}]},throws:{begin:/throws/dgv,beginCaptures:{"0":{name:"storage.modifier.java"}},end:/(?=[\;\{])/dgv,name:"meta.throwables.java",patterns:[{match:/,/dgv,name:"punctuation.separator.delimiter.java"},{match:/[\$A-Z_a-z][\$\.0-9A-Z_a-z]*/dgv,name:"storage.type.java"},{include:"#comments"}]},"try-catch-finally":{patterns:[{begin:/\btry\b/dgv,beginCaptures:{"0":{name:"keyword.control.try.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.try.end.bracket.curly.java"}},name:"meta.try.java",patterns:[{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.section.try.resources.begin.bracket.round.java"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.try.resources.end.bracket.round.java"}},name:"meta.try.resources.java",patterns:[{include:"#code"}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.try.begin.bracket.curly.java"}},contentName:"meta.try.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},{begin:/\b(catch)\b/dgv,beginCaptures:{"1":{name:"keyword.control.catch.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.catch.end.bracket.curly.java"}},name:"meta.catch.java",patterns:[{include:"#comments"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.bracket.round.java"}},contentName:"meta.catch.parameters.java",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.bracket.round.java"}},patterns:[{include:"#comments"},{include:"#storage-modifiers"},{begin:/[\$A-Z_a-z][\$\.0-9A-Z_a-z]*/dgv,beginCaptures:{"0":{name:"storage.type.java"}},end:/(\|)|(?=\))/dgv,endCaptures:{"1":{name:"punctuation.catch.separator.java"}},patterns:[{include:"#comments"},{captures:{"0":{name:"variable.parameter.java"}},match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv}]}]},{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.catch.begin.bracket.curly.java"}},contentName:"meta.catch.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]},{begin:/\bfinally\b/dgv,beginCaptures:{"0":{name:"keyword.control.finally.java"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.finally.end.bracket.curly.java"}},name:"meta.finally.java",patterns:[{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.finally.begin.bracket.curly.java"}},contentName:"meta.finally.body.java",end:/(?=\})/dgv,patterns:[{include:"#code"}]}]}]},variables:{begin:/*@__PURE__*/ new EmulatedRegExp("(?=\\b((void|boolean|byte|char|short|int|float|long|double)|(?:(?=(([\\p{L}\\p{M}\\p{N}\\p{Pc}]+\\.)*[A-Z_]+[\\p{L}\\p{M}\\p{N}\\p{Pc}]*))\\3))\\b\\p{space}*(<[\\]\\,\\.\\<\\>\\?\\[\\p{L}\\p{M}\\p{N}\\p{Pc}\\p{space}]*>)?\\p{space}*((\\[\\])*)?\\p{space}+[\\$A-Z_a-z][\\$\\p{L}\\p{M}\\p{N}\\p{Pc}]*([\\]\\$\\,\\[\\p{L}\\p{M}\\p{N}\\p{Pc}][\\]\\,\\[\\p{L}\\p{M}\\p{N}\\p{Pc}\\p{space}]*)?\\p{space}*([\\:\\;\\=]))","dgv",{"hiddenCaptures":[3]}),end:/(?=[\:\;\=])/dgv,name:"meta.definition.variable.java",patterns:[{captures:{"1":{name:"variable.other.definition.java"}},match:/([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)(?=\p{space}*(\[\])*\p{space}*([\,\:\;\=]))/dgv},{include:"#all-types"},{include:"#code"}]},"variables-local":{begin:/(?=\b(var)\b\p{space}+[\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*\p{space}*([\:\;\=]))/dgv,end:/(?=[\:\;\=])/dgv,name:"meta.definition.variable.local.java",patterns:[{match:/\bvar\b/dgv,name:"storage.type.local.java"},{captures:{"1":{name:"variable.other.definition.java"}},match:/([\$A-Z_a-z][\$\p{L}\p{M}\p{N}\p{Pc}]*)(?=\p{space}*(\[\])*\p{space}*([\:\;\=]))/dgv},{include:"#code"}]}},scopeName:"source.java",embeddedLangs:undefined,aliases:undefined})
4
4
 
5
5
  export default [
6
6
  lang