@kerebron/legacy-compat 0.6.3

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 (222) hide show
  1. package/README.md +108 -0
  2. package/dist/__vite-browser-external-C8P1ckfS.js +56007 -0
  3. package/dist/__vite-browser-external-C8P1ckfS.js.map +1 -0
  4. package/dist/apl-B2DGVGxc.js +77 -0
  5. package/dist/apl-B2DGVGxc.js.map +1 -0
  6. package/dist/asciiarmor-2LVJmxlE.js +35 -0
  7. package/dist/asciiarmor-2LVJmxlE.js.map +1 -0
  8. package/dist/asn1-jKiBa2Ya.js +96 -0
  9. package/dist/asn1-jKiBa2Ya.js.map +1 -0
  10. package/dist/asterisk-DS281yxp.js +272 -0
  11. package/dist/asterisk-DS281yxp.js.map +1 -0
  12. package/dist/brainfuck-C_p9pTT8.js +35 -0
  13. package/dist/brainfuck-C_p9pTT8.js.map +1 -0
  14. package/dist/clike-DE3V9X8-.js +616 -0
  15. package/dist/clike-DE3V9X8-.js.map +1 -0
  16. package/dist/clojure-CCKyeQKf.js +801 -0
  17. package/dist/clojure-CCKyeQKf.js.map +1 -0
  18. package/dist/cmake-CuaCgAKt.js +29 -0
  19. package/dist/cmake-CuaCgAKt.js.map +1 -0
  20. package/dist/cobol-BlTKFDRj.js +73 -0
  21. package/dist/cobol-BlTKFDRj.js.map +1 -0
  22. package/dist/coffeescript-BVCvwO8I.js +180 -0
  23. package/dist/coffeescript-BVCvwO8I.js.map +1 -0
  24. package/dist/commonlisp-D_kxz07b.js +76 -0
  25. package/dist/commonlisp-D_kxz07b.js.map +1 -0
  26. package/dist/crystal-D309uH6_.js +218 -0
  27. package/dist/crystal-D309uH6_.js.map +1 -0
  28. package/dist/cypher-BMq4Fwjl.js +69 -0
  29. package/dist/cypher-BMq4Fwjl.js.map +1 -0
  30. package/dist/d-BZcgY6La.js +128 -0
  31. package/dist/d-BZcgY6La.js.map +1 -0
  32. package/dist/diff-Cg9d_RX2.js +19 -0
  33. package/dist/diff-Cg9d_RX2.js.map +1 -0
  34. package/dist/dockerfile-DIy8NleC.js +195 -0
  35. package/dist/dockerfile-DIy8NleC.js.map +1 -0
  36. package/dist/dtd-CtLokQ-U.js +85 -0
  37. package/dist/dtd-CtLokQ-U.js.map +1 -0
  38. package/dist/dylan-QYeExnWK.js +235 -0
  39. package/dist/dylan-QYeExnWK.js.map +1 -0
  40. package/dist/ebnf-DUPDuY4r.js +79 -0
  41. package/dist/ebnf-DUPDuY4r.js.map +1 -0
  42. package/dist/ecl-CiXN-g_D.js +122 -0
  43. package/dist/ecl-CiXN-g_D.js.map +1 -0
  44. package/dist/eiffel-yQhjl4T1.js +111 -0
  45. package/dist/eiffel-yQhjl4T1.js.map +1 -0
  46. package/dist/elm-CNT9vbN0.js +109 -0
  47. package/dist/elm-CNT9vbN0.js.map +1 -0
  48. package/dist/erlang-CFOYdy9e.js +488 -0
  49. package/dist/erlang-CFOYdy9e.js.map +1 -0
  50. package/dist/factor-DDOC7X6P.js +66 -0
  51. package/dist/factor-DDOC7X6P.js.map +1 -0
  52. package/dist/fcl-CPC2WYrI.js +104 -0
  53. package/dist/fcl-CPC2WYrI.js.map +1 -0
  54. package/dist/forth-BmxRyE9S.js +61 -0
  55. package/dist/forth-BmxRyE9S.js.map +1 -0
  56. package/dist/fortran-9bvPyrOW.js +443 -0
  57. package/dist/fortran-9bvPyrOW.js.map +1 -0
  58. package/dist/gas-cpmYfFX2.js +184 -0
  59. package/dist/gas-cpmYfFX2.js.map +1 -0
  60. package/dist/gherkin-CJuwpceU.js +35 -0
  61. package/dist/gherkin-CJuwpceU.js.map +1 -0
  62. package/dist/go-BHVhI2MG.js +156 -0
  63. package/dist/go-BHVhI2MG.js.map +1 -0
  64. package/dist/groovy-DZeT_VM-.js +147 -0
  65. package/dist/groovy-DZeT_VM-.js.map +1 -0
  66. package/dist/haskell-CxiO_7JL.js +376 -0
  67. package/dist/haskell-CxiO_7JL.js.map +1 -0
  68. package/dist/haxe-BhV0x0nk.js +337 -0
  69. package/dist/haxe-BhV0x0nk.js.map +1 -0
  70. package/dist/http-D9LttvKF.js +45 -0
  71. package/dist/http-D9LttvKF.js.map +1 -0
  72. package/dist/idl-B6TRFYjl.js +948 -0
  73. package/dist/idl-B6TRFYjl.js.map +1 -0
  74. package/dist/index-3ZSzAD46.js +63 -0
  75. package/dist/index-3ZSzAD46.js.map +1 -0
  76. package/dist/index-4h94vbv1.js +566 -0
  77. package/dist/index-4h94vbv1.js.map +1 -0
  78. package/dist/index-BAvKq317.js +961 -0
  79. package/dist/index-BAvKq317.js.map +1 -0
  80. package/dist/index-BHdiR3sn.js +613 -0
  81. package/dist/index-BHdiR3sn.js.map +1 -0
  82. package/dist/index-BnFQ_MuW.js +95 -0
  83. package/dist/index-BnFQ_MuW.js.map +1 -0
  84. package/dist/index-BqHwEvbm.js +139 -0
  85. package/dist/index-BqHwEvbm.js.map +1 -0
  86. package/dist/index-Bt60d9tl.js +60 -0
  87. package/dist/index-Bt60d9tl.js.map +1 -0
  88. package/dist/index-CLnSITym.js +1306 -0
  89. package/dist/index-CLnSITym.js.map +1 -0
  90. package/dist/index-D4axvsgA.js +158 -0
  91. package/dist/index-D4axvsgA.js.map +1 -0
  92. package/dist/index-DCtMPiGL.js +77 -0
  93. package/dist/index-DCtMPiGL.js.map +1 -0
  94. package/dist/index-DbR4C70d.js +554 -0
  95. package/dist/index-DbR4C70d.js.map +1 -0
  96. package/dist/index-Dgs7p3d5.js +303 -0
  97. package/dist/index-Dgs7p3d5.js.map +1 -0
  98. package/dist/index-Diy176Rq.js +946 -0
  99. package/dist/index-Diy176Rq.js.map +1 -0
  100. package/dist/index-I2kdiwDu.js +1918 -0
  101. package/dist/index-I2kdiwDu.js.map +1 -0
  102. package/dist/index-L0u_VcRQ.js +310 -0
  103. package/dist/index-L0u_VcRQ.js.map +1 -0
  104. package/dist/jinja2-DnB6dQmV.js +155 -0
  105. package/dist/jinja2-DnB6dQmV.js.map +1 -0
  106. package/dist/julia-DpvXAuO6.js +242 -0
  107. package/dist/julia-DpvXAuO6.js.map +1 -0
  108. package/dist/kerebron-light.css +1 -0
  109. package/dist/kerebron.css +1 -0
  110. package/dist/kerebron.js +7 -0
  111. package/dist/kerebron.js.map +1 -0
  112. package/dist/livescript-CanGTf8u.js +273 -0
  113. package/dist/livescript-CanGTf8u.js.map +1 -0
  114. package/dist/lua-XplVlWi_.js +218 -0
  115. package/dist/lua-XplVlWi_.js.map +1 -0
  116. package/dist/mathematica-jaRHnSxC.js +36 -0
  117. package/dist/mathematica-jaRHnSxC.js.map +1 -0
  118. package/dist/mbox-BctzC1hL.js +77 -0
  119. package/dist/mbox-BctzC1hL.js.map +1 -0
  120. package/dist/mirc-CFBPAOaF.js +73 -0
  121. package/dist/mirc-CFBPAOaF.js.map +1 -0
  122. package/dist/mllike-gvRenHsu.js +273 -0
  123. package/dist/mllike-gvRenHsu.js.map +1 -0
  124. package/dist/modelica-vUgVs--1.js +94 -0
  125. package/dist/modelica-vUgVs--1.js.map +1 -0
  126. package/dist/mscgen-ucEwbOaK.js +82 -0
  127. package/dist/mscgen-ucEwbOaK.js.map +1 -0
  128. package/dist/mumps-CQoS1kWX.js +26 -0
  129. package/dist/mumps-CQoS1kWX.js.map +1 -0
  130. package/dist/nginx-zDPm3Z74.js +90 -0
  131. package/dist/nginx-zDPm3Z74.js.map +1 -0
  132. package/dist/nsis-fePjrhq7.js +63 -0
  133. package/dist/nsis-fePjrhq7.js.map +1 -0
  134. package/dist/ntriples-CsNjv2QF.js +80 -0
  135. package/dist/ntriples-CsNjv2QF.js.map +1 -0
  136. package/dist/octave-C8PmmSRH.js +144 -0
  137. package/dist/octave-C8PmmSRH.js.map +1 -0
  138. package/dist/odt_parser.internal-CYdkAHGB.js +258 -0
  139. package/dist/odt_parser.internal-CYdkAHGB.js.map +1 -0
  140. package/dist/oz-Ce8aN8oE.js +152 -0
  141. package/dist/oz-Ce8aN8oE.js.map +1 -0
  142. package/dist/pascal-De0D6mP7.js +78 -0
  143. package/dist/pascal-De0D6mP7.js.map +1 -0
  144. package/dist/perl-B4bSCe1C.js +916 -0
  145. package/dist/perl-B4bSCe1C.js.map +1 -0
  146. package/dist/pig-D24Z8EXi.js +55 -0
  147. package/dist/pig-D24Z8EXi.js.map +1 -0
  148. package/dist/powershell-DkYVfTzP.js +250 -0
  149. package/dist/powershell-DkYVfTzP.js.map +1 -0
  150. package/dist/properties-Dn9wna3M.js +27 -0
  151. package/dist/properties-Dn9wna3M.js.map +1 -0
  152. package/dist/protobuf-BPIjwpzm.js +50 -0
  153. package/dist/protobuf-BPIjwpzm.js.map +1 -0
  154. package/dist/puppet-nyd4dhjf.js +46 -0
  155. package/dist/puppet-nyd4dhjf.js.map +1 -0
  156. package/dist/q-DXjKs-tC.js +84 -0
  157. package/dist/q-DXjKs-tC.js.map +1 -0
  158. package/dist/r-LKEuhEGI.js +105 -0
  159. package/dist/r-LKEuhEGI.js.map +1 -0
  160. package/dist/rpm-BoAefZZ1.js +50 -0
  161. package/dist/rpm-BoAefZZ1.js.map +1 -0
  162. package/dist/ruby-CcYfvIk6.js +229 -0
  163. package/dist/ruby-CcYfvIk6.js.map +1 -0
  164. package/dist/sas-7E8yHoCW.js +106 -0
  165. package/dist/sas-7E8yHoCW.js.map +1 -0
  166. package/dist/scheme-DjibxsNh.js +125 -0
  167. package/dist/scheme-DjibxsNh.js.map +1 -0
  168. package/dist/shell-C0C2sNA_.js +183 -0
  169. package/dist/shell-C0C2sNA_.js.map +1 -0
  170. package/dist/simple-mode-B0dvCdAA.js +90 -0
  171. package/dist/simple-mode-B0dvCdAA.js.map +1 -0
  172. package/dist/smalltalk-Bhddl2pB.js +49 -0
  173. package/dist/smalltalk-Bhddl2pB.js.map +1 -0
  174. package/dist/solr-BNlsLglM.js +42 -0
  175. package/dist/solr-BNlsLglM.js.map +1 -0
  176. package/dist/sparql-FarWu_Gb.js +198 -0
  177. package/dist/sparql-FarWu_Gb.js.map +1 -0
  178. package/dist/spreadsheet-C-cy4P5N.js +50 -0
  179. package/dist/spreadsheet-C-cy4P5N.js.map +1 -0
  180. package/dist/stex-Du4h4KAU.js +130 -0
  181. package/dist/stex-Du4h4KAU.js.map +1 -0
  182. package/dist/stylus-DRcbY16X.js +251 -0
  183. package/dist/stylus-DRcbY16X.js.map +1 -0
  184. package/dist/swift-DSxqR9R6.js +231 -0
  185. package/dist/swift-DSxqR9R6.js.map +1 -0
  186. package/dist/tcl-xfoLljhY.js +82 -0
  187. package/dist/tcl-xfoLljhY.js.map +1 -0
  188. package/dist/textile-D1AWE-pc.js +296 -0
  189. package/dist/textile-D1AWE-pc.js.map +1 -0
  190. package/dist/tiddlywiki-5wqsXtSk.js +156 -0
  191. package/dist/tiddlywiki-5wqsXtSk.js.map +1 -0
  192. package/dist/tiki-__Kn3CeS.js +182 -0
  193. package/dist/tiki-__Kn3CeS.js.map +1 -0
  194. package/dist/toml-BHiuTcfn.js +50 -0
  195. package/dist/toml-BHiuTcfn.js.map +1 -0
  196. package/dist/troff-D2UO-fKf.js +36 -0
  197. package/dist/troff-D2UO-fKf.js.map +1 -0
  198. package/dist/ttcn-Bsa4sfRm.js +124 -0
  199. package/dist/ttcn-Bsa4sfRm.js.map +1 -0
  200. package/dist/turtle-xwJUxoPV.js +81 -0
  201. package/dist/turtle-xwJUxoPV.js.map +1 -0
  202. package/dist/vb-c2kQGd6-.js +75 -0
  203. package/dist/vb-c2kQGd6-.js.map +1 -0
  204. package/dist/vbscript-1f_Dhg5H.js +325 -0
  205. package/dist/vbscript-1f_Dhg5H.js.map +1 -0
  206. package/dist/velocity-DJd0pTTC.js +97 -0
  207. package/dist/velocity-DJd0pTTC.js.map +1 -0
  208. package/dist/verilog-CiS1jyi5.js +263 -0
  209. package/dist/verilog-CiS1jyi5.js.map +1 -0
  210. package/dist/vhdl-T9HkrbI2.js +107 -0
  211. package/dist/vhdl-T9HkrbI2.js.map +1 -0
  212. package/dist/webidl-CjfDENEo.js +156 -0
  213. package/dist/webidl-CjfDENEo.js.map +1 -0
  214. package/dist/xquery-Ct6lEb4B.js +423 -0
  215. package/dist/xquery-Ct6lEb4B.js.map +1 -0
  216. package/dist/yacas-C0absKBh.js +74 -0
  217. package/dist/yacas-C0absKBh.js.map +1 -0
  218. package/dist/yaml-Dt6Tp2eU.js +54 -0
  219. package/dist/yaml-Dt6Tp2eU.js.map +1 -0
  220. package/dist/z80-Pki2zAjW.js +62 -0
  221. package/dist/z80-Pki2zAjW.js.map +1 -0
  222. package/package.json +16 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stex-Du4h4KAU.js","sources":["../../../node_modules/.deno/@codemirror+legacy-modes@6.5.0/node_modules/@codemirror/legacy-modes/mode/stex.js"],"sourcesContent":["function mkStex(mathMode) {\n function pushCommand(state, command) {\n state.cmdState.push(command);\n }\n\n function peekCommand(state) {\n if (state.cmdState.length > 0) {\n return state.cmdState[state.cmdState.length - 1];\n } else {\n return null;\n }\n }\n\n function popCommand(state) {\n var plug = state.cmdState.pop();\n if (plug) {\n plug.closeBracket();\n }\n }\n\n // returns the non-default plugin closest to the end of the list\n function getMostPowerful(state) {\n var context = state.cmdState;\n for (var i = context.length - 1; i >= 0; i--) {\n var plug = context[i];\n if (plug.name == \"DEFAULT\") {\n continue;\n }\n return plug;\n }\n return { styleIdentifier: function() { return null; } };\n }\n\n function addPluginPattern(pluginName, cmdStyle, styles) {\n return function () {\n this.name = pluginName;\n this.bracketNo = 0;\n this.style = cmdStyle;\n this.styles = styles;\n this.argument = null; // \\begin and \\end have arguments that follow. These are stored in the plugin\n\n this.styleIdentifier = function() {\n return this.styles[this.bracketNo - 1] || null;\n };\n this.openBracket = function() {\n this.bracketNo++;\n return \"bracket\";\n };\n this.closeBracket = function() {};\n };\n }\n\n var plugins = {};\n\n plugins[\"importmodule\"] = addPluginPattern(\"importmodule\", \"tag\", [\"string\", \"builtin\"]);\n plugins[\"documentclass\"] = addPluginPattern(\"documentclass\", \"tag\", [\"\", \"atom\"]);\n plugins[\"usepackage\"] = addPluginPattern(\"usepackage\", \"tag\", [\"atom\"]);\n plugins[\"begin\"] = addPluginPattern(\"begin\", \"tag\", [\"atom\"]);\n plugins[\"end\"] = addPluginPattern(\"end\", \"tag\", [\"atom\"]);\n\n plugins[\"label\" ] = addPluginPattern(\"label\" , \"tag\", [\"atom\"]);\n plugins[\"ref\" ] = addPluginPattern(\"ref\" , \"tag\", [\"atom\"]);\n plugins[\"eqref\" ] = addPluginPattern(\"eqref\" , \"tag\", [\"atom\"]);\n plugins[\"cite\" ] = addPluginPattern(\"cite\" , \"tag\", [\"atom\"]);\n plugins[\"bibitem\" ] = addPluginPattern(\"bibitem\" , \"tag\", [\"atom\"]);\n plugins[\"Bibitem\" ] = addPluginPattern(\"Bibitem\" , \"tag\", [\"atom\"]);\n plugins[\"RBibitem\" ] = addPluginPattern(\"RBibitem\" , \"tag\", [\"atom\"]);\n\n plugins[\"DEFAULT\"] = function () {\n this.name = \"DEFAULT\";\n this.style = \"tag\";\n\n this.styleIdentifier = this.openBracket = this.closeBracket = function() {};\n };\n\n function setState(state, f) {\n state.f = f;\n }\n\n // called when in a normal (no environment) context\n function normal(source, state) {\n var plug;\n // Do we look like '\\command' ? If so, attempt to apply the plugin 'command'\n if (source.match(/^\\\\[a-zA-Z@\\xc0-\\u1fff\\u2060-\\uffff]+/)) {\n var cmdName = source.current().slice(1);\n plug = plugins.hasOwnProperty(cmdName) ? plugins[cmdName] : plugins[\"DEFAULT\"];\n plug = new plug();\n pushCommand(state, plug);\n setState(state, beginParams);\n return plug.style;\n }\n\n // escape characters\n if (source.match(/^\\\\[$&%#{}_]/)) {\n return \"tag\";\n }\n\n // white space control characters\n if (source.match(/^\\\\[,;!\\/\\\\]/)) {\n return \"tag\";\n }\n\n // find if we're starting various math modes\n if (source.match(\"\\\\[\")) {\n setState(state, function(source, state){ return inMathMode(source, state, \"\\\\]\"); });\n return \"keyword\";\n }\n if (source.match(\"\\\\(\")) {\n setState(state, function(source, state){ return inMathMode(source, state, \"\\\\)\"); });\n return \"keyword\";\n }\n if (source.match(\"$$\")) {\n setState(state, function(source, state){ return inMathMode(source, state, \"$$\"); });\n return \"keyword\";\n }\n if (source.match(\"$\")) {\n setState(state, function(source, state){ return inMathMode(source, state, \"$\"); });\n return \"keyword\";\n }\n\n var ch = source.next();\n if (ch == \"%\") {\n source.skipToEnd();\n return \"comment\";\n } else if (ch == '}' || ch == ']') {\n plug = peekCommand(state);\n if (plug) {\n plug.closeBracket(ch);\n setState(state, beginParams);\n } else {\n return \"error\";\n }\n return \"bracket\";\n } else if (ch == '{' || ch == '[') {\n plug = plugins[\"DEFAULT\"];\n plug = new plug();\n pushCommand(state, plug);\n return \"bracket\";\n } else if (/\\d/.test(ch)) {\n source.eatWhile(/[\\w.%]/);\n return \"atom\";\n } else {\n source.eatWhile(/[\\w\\-_]/);\n plug = getMostPowerful(state);\n if (plug.name == 'begin') {\n plug.argument = source.current();\n }\n return plug.styleIdentifier();\n }\n }\n\n function inMathMode(source, state, endModeSeq) {\n if (source.eatSpace()) {\n return null;\n }\n if (endModeSeq && source.match(endModeSeq)) {\n setState(state, normal);\n return \"keyword\";\n }\n if (source.match(/^\\\\[a-zA-Z@]+/)) {\n return \"tag\";\n }\n if (source.match(/^[a-zA-Z]+/)) {\n return \"variableName.special\";\n }\n // escape characters\n if (source.match(/^\\\\[$&%#{}_]/)) {\n return \"tag\";\n }\n // white space control characters\n if (source.match(/^\\\\[,;!\\/]/)) {\n return \"tag\";\n }\n // special math-mode characters\n if (source.match(/^[\\^_&]/)) {\n return \"tag\";\n }\n // non-special characters\n if (source.match(/^[+\\-<>|=,\\/@!*:;'\"`~#?]/)) {\n return null;\n }\n if (source.match(/^(\\d+\\.\\d*|\\d*\\.\\d+|\\d+)/)) {\n return \"number\";\n }\n var ch = source.next();\n if (ch == \"{\" || ch == \"}\" || ch == \"[\" || ch == \"]\" || ch == \"(\" || ch == \")\") {\n return \"bracket\";\n }\n\n if (ch == \"%\") {\n source.skipToEnd();\n return \"comment\";\n }\n return \"error\";\n }\n\n function beginParams(source, state) {\n var ch = source.peek(), lastPlug;\n if (ch == '{' || ch == '[') {\n lastPlug = peekCommand(state);\n lastPlug.openBracket(ch);\n source.eat(ch);\n setState(state, normal);\n return \"bracket\";\n }\n if (/[ \\t\\r]/.test(ch)) {\n source.eat(ch);\n return null;\n }\n setState(state, normal);\n popCommand(state);\n\n return normal(source, state);\n }\n\n return {\n name: \"stex\",\n startState: function() {\n var f = mathMode ? function(source, state){ return inMathMode(source, state); } : normal;\n return {\n cmdState: [],\n f: f\n };\n },\n copyState: function(s) {\n return {\n cmdState: s.cmdState.slice(),\n f: s.f\n };\n },\n token: function(stream, state) {\n return state.f(stream, state);\n },\n blankLine: function(state) {\n state.f = normal;\n state.cmdState.length = 0;\n },\n languageData: {\n commentTokens: {line: \"%\"}\n }\n };\n};\n\nexport const stex = mkStex(false)\nexport const stexMath = mkStex(true)\n"],"names":["mkStex","mathMode","pushCommand","state","command","peekCommand","popCommand","plug","getMostPowerful","context","i","addPluginPattern","pluginName","cmdStyle","styles","plugins","setState","f","normal","source","cmdName","beginParams","inMathMode","ch","endModeSeq","lastPlug","s","stream","stex"],"mappings":"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","x_google_ignoreList":[0]}
@@ -0,0 +1,251 @@
1
+ var B = ["a", "abbr", "address", "area", "article", "aside", "audio", "b", "base", "bdi", "bdo", "bgsound", "blockquote", "body", "br", "button", "canvas", "caption", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", "dfn", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "keygen", "label", "legend", "li", "link", "main", "map", "mark", "marquee", "menu", "menuitem", "meta", "meter", "nav", "nobr", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "script", "section", "select", "small", "source", "span", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "textarea", "tfoot", "th", "thead", "time", "tr", "track", "u", "ul", "var", "video"], $ = ["domain", "regexp", "url-prefix", "url"], R = ["all", "aural", "braille", "handheld", "print", "projection", "screen", "tty", "tv", "embossed"], I = ["width", "min-width", "max-width", "height", "min-height", "max-height", "device-width", "min-device-width", "max-device-width", "device-height", "min-device-height", "max-device-height", "aspect-ratio", "min-aspect-ratio", "max-aspect-ratio", "device-aspect-ratio", "min-device-aspect-ratio", "max-device-aspect-ratio", "color", "min-color", "max-color", "color-index", "min-color-index", "max-color-index", "monochrome", "min-monochrome", "max-monochrome", "resolution", "min-resolution", "max-resolution", "scan", "grid", "dynamic-range", "video-dynamic-range"], O = ["align-content", "align-items", "align-self", "alignment-adjust", "alignment-baseline", "anchor-point", "animation", "animation-delay", "animation-direction", "animation-duration", "animation-fill-mode", "animation-iteration-count", "animation-name", "animation-play-state", "animation-timing-function", "appearance", "azimuth", "backface-visibility", "background", "background-attachment", "background-clip", "background-color", "background-image", "background-origin", "background-position", "background-repeat", "background-size", "baseline-shift", "binding", "bleed", "bookmark-label", "bookmark-level", "bookmark-state", "bookmark-target", "border", "border-bottom", "border-bottom-color", "border-bottom-left-radius", "border-bottom-right-radius", "border-bottom-style", "border-bottom-width", "border-collapse", "border-color", "border-image", "border-image-outset", "border-image-repeat", "border-image-slice", "border-image-source", "border-image-width", "border-left", "border-left-color", "border-left-style", "border-left-width", "border-radius", "border-right", "border-right-color", "border-right-style", "border-right-width", "border-spacing", "border-style", "border-top", "border-top-color", "border-top-left-radius", "border-top-right-radius", "border-top-style", "border-top-width", "border-width", "bottom", "box-decoration-break", "box-shadow", "box-sizing", "break-after", "break-before", "break-inside", "caption-side", "clear", "clip", "color", "color-profile", "column-count", "column-fill", "column-gap", "column-rule", "column-rule-color", "column-rule-style", "column-rule-width", "column-span", "column-width", "columns", "content", "counter-increment", "counter-reset", "crop", "cue", "cue-after", "cue-before", "cursor", "direction", "display", "dominant-baseline", "drop-initial-after-adjust", "drop-initial-after-align", "drop-initial-before-adjust", "drop-initial-before-align", "drop-initial-size", "drop-initial-value", "elevation", "empty-cells", "fit", "fit-position", "flex", "flex-basis", "flex-direction", "flex-flow", "flex-grow", "flex-shrink", "flex-wrap", "float", "float-offset", "flow-from", "flow-into", "font", "font-feature-settings", "font-family", "font-kerning", "font-language-override", "font-size", "font-size-adjust", "font-stretch", "font-style", "font-synthesis", "font-variant", "font-variant-alternates", "font-variant-caps", "font-variant-east-asian", "font-variant-ligatures", "font-variant-numeric", "font-variant-position", "font-weight", "grid", "grid-area", "grid-auto-columns", "grid-auto-flow", "grid-auto-position", "grid-auto-rows", "grid-column", "grid-column-end", "grid-column-start", "grid-row", "grid-row-end", "grid-row-start", "grid-template", "grid-template-areas", "grid-template-columns", "grid-template-rows", "hanging-punctuation", "height", "hyphens", "icon", "image-orientation", "image-rendering", "image-resolution", "inline-box-align", "justify-content", "left", "letter-spacing", "line-break", "line-height", "line-stacking", "line-stacking-ruby", "line-stacking-shift", "line-stacking-strategy", "list-style", "list-style-image", "list-style-position", "list-style-type", "margin", "margin-bottom", "margin-left", "margin-right", "margin-top", "marker-offset", "marks", "marquee-direction", "marquee-loop", "marquee-play-count", "marquee-speed", "marquee-style", "max-height", "max-width", "min-height", "min-width", "move-to", "nav-down", "nav-index", "nav-left", "nav-right", "nav-up", "object-fit", "object-position", "opacity", "order", "orphans", "outline", "outline-color", "outline-offset", "outline-style", "outline-width", "overflow", "overflow-style", "overflow-wrap", "overflow-x", "overflow-y", "padding", "padding-bottom", "padding-left", "padding-right", "padding-top", "page", "page-break-after", "page-break-before", "page-break-inside", "page-policy", "pause", "pause-after", "pause-before", "perspective", "perspective-origin", "pitch", "pitch-range", "play-during", "position", "presentation-level", "punctuation-trim", "quotes", "region-break-after", "region-break-before", "region-break-inside", "region-fragment", "rendering-intent", "resize", "rest", "rest-after", "rest-before", "richness", "right", "rotation", "rotation-point", "ruby-align", "ruby-overhang", "ruby-position", "ruby-span", "shape-image-threshold", "shape-inside", "shape-margin", "shape-outside", "size", "speak", "speak-as", "speak-header", "speak-numeral", "speak-punctuation", "speech-rate", "stress", "string-set", "tab-size", "table-layout", "target", "target-name", "target-new", "target-position", "text-align", "text-align-last", "text-decoration", "text-decoration-color", "text-decoration-line", "text-decoration-skip", "text-decoration-style", "text-emphasis", "text-emphasis-color", "text-emphasis-position", "text-emphasis-style", "text-height", "text-indent", "text-justify", "text-outline", "text-overflow", "text-shadow", "text-size-adjust", "text-space-collapse", "text-transform", "text-underline-position", "text-wrap", "top", "transform", "transform-origin", "transform-style", "transition", "transition-delay", "transition-duration", "transition-property", "transition-timing-function", "unicode-bidi", "vertical-align", "visibility", "voice-balance", "voice-duration", "voice-family", "voice-pitch", "voice-range", "voice-rate", "voice-stress", "voice-volume", "volume", "white-space", "widows", "width", "will-change", "word-break", "word-spacing", "word-wrap", "z-index", "clip-path", "clip-rule", "mask", "enable-background", "filter", "flood-color", "flood-opacity", "lighting-color", "stop-color", "stop-opacity", "pointer-events", "color-interpolation", "color-interpolation-filters", "color-rendering", "fill", "fill-opacity", "fill-rule", "image-rendering", "marker", "marker-end", "marker-mid", "marker-start", "shape-rendering", "stroke", "stroke-dasharray", "stroke-dashoffset", "stroke-linecap", "stroke-linejoin", "stroke-miterlimit", "stroke-opacity", "stroke-width", "text-rendering", "baseline-shift", "dominant-baseline", "glyph-orientation-horizontal", "glyph-orientation-vertical", "text-anchor", "writing-mode", "font-smoothing", "osx-font-smoothing"], W = ["scrollbar-arrow-color", "scrollbar-base-color", "scrollbar-dark-shadow-color", "scrollbar-face-color", "scrollbar-highlight-color", "scrollbar-shadow-color", "scrollbar-3d-light-color", "scrollbar-track-color", "shape-inside", "searchfield-cancel-button", "searchfield-decoration", "searchfield-results-button", "searchfield-results-decoration", "zoom"], C = ["font-family", "src", "unicode-range", "font-variant", "font-feature-settings", "font-stretch", "font-weight", "font-style"], N = ["aliceblue", "antiquewhite", "aqua", "aquamarine", "azure", "beige", "bisque", "black", "blanchedalmond", "blue", "blueviolet", "brown", "burlywood", "cadetblue", "chartreuse", "chocolate", "coral", "cornflowerblue", "cornsilk", "crimson", "cyan", "darkblue", "darkcyan", "darkgoldenrod", "darkgray", "darkgreen", "darkkhaki", "darkmagenta", "darkolivegreen", "darkorange", "darkorchid", "darkred", "darksalmon", "darkseagreen", "darkslateblue", "darkslategray", "darkturquoise", "darkviolet", "deeppink", "deepskyblue", "dimgray", "dodgerblue", "firebrick", "floralwhite", "forestgreen", "fuchsia", "gainsboro", "ghostwhite", "gold", "goldenrod", "gray", "grey", "green", "greenyellow", "honeydew", "hotpink", "indianred", "indigo", "ivory", "khaki", "lavender", "lavenderblush", "lawngreen", "lemonchiffon", "lightblue", "lightcoral", "lightcyan", "lightgoldenrodyellow", "lightgray", "lightgreen", "lightpink", "lightsalmon", "lightseagreen", "lightskyblue", "lightslategray", "lightsteelblue", "lightyellow", "lime", "limegreen", "linen", "magenta", "maroon", "mediumaquamarine", "mediumblue", "mediumorchid", "mediumpurple", "mediumseagreen", "mediumslateblue", "mediumspringgreen", "mediumturquoise", "mediumvioletred", "midnightblue", "mintcream", "mistyrose", "moccasin", "navajowhite", "navy", "oldlace", "olive", "olivedrab", "orange", "orangered", "orchid", "palegoldenrod", "palegreen", "paleturquoise", "palevioletred", "papayawhip", "peachpuff", "peru", "pink", "plum", "powderblue", "purple", "rebeccapurple", "red", "rosybrown", "royalblue", "saddlebrown", "salmon", "sandybrown", "seagreen", "seashell", "sienna", "silver", "skyblue", "slateblue", "slategray", "snow", "springgreen", "steelblue", "tan", "teal", "thistle", "tomato", "turquoise", "violet", "wheat", "white", "whitesmoke", "yellow", "yellowgreen"], S = ["above", "absolute", "activeborder", "additive", "activecaption", "afar", "after-white-space", "ahead", "alias", "all", "all-scroll", "alphabetic", "alternate", "always", "amharic", "amharic-abegede", "antialiased", "appworkspace", "arabic-indic", "armenian", "asterisks", "attr", "auto", "avoid", "avoid-column", "avoid-page", "avoid-region", "background", "backwards", "baseline", "below", "bidi-override", "binary", "bengali", "blink", "block", "block-axis", "bold", "bolder", "border", "border-box", "both", "bottom", "break", "break-all", "break-word", "bullets", "button", "buttonface", "buttonhighlight", "buttonshadow", "buttontext", "calc", "cambodian", "capitalize", "caps-lock-indicator", "caption", "captiontext", "caret", "cell", "center", "checkbox", "circle", "cjk-decimal", "cjk-earthly-branch", "cjk-heavenly-stem", "cjk-ideographic", "clear", "clip", "close-quote", "col-resize", "collapse", "column", "compact", "condensed", "conic-gradient", "contain", "content", "contents", "content-box", "context-menu", "continuous", "copy", "counter", "counters", "cover", "crop", "cross", "crosshair", "currentcolor", "cursive", "cyclic", "dashed", "decimal", "decimal-leading-zero", "default", "default-button", "destination-atop", "destination-in", "destination-out", "destination-over", "devanagari", "disc", "discard", "disclosure-closed", "disclosure-open", "document", "dot-dash", "dot-dot-dash", "dotted", "double", "down", "e-resize", "ease", "ease-in", "ease-in-out", "ease-out", "element", "ellipse", "ellipsis", "embed", "end", "ethiopic", "ethiopic-abegede", "ethiopic-abegede-am-et", "ethiopic-abegede-gez", "ethiopic-abegede-ti-er", "ethiopic-abegede-ti-et", "ethiopic-halehame-aa-er", "ethiopic-halehame-aa-et", "ethiopic-halehame-am-et", "ethiopic-halehame-gez", "ethiopic-halehame-om-et", "ethiopic-halehame-sid-et", "ethiopic-halehame-so-et", "ethiopic-halehame-ti-er", "ethiopic-halehame-ti-et", "ethiopic-halehame-tig", "ethiopic-numeric", "ew-resize", "expanded", "extends", "extra-condensed", "extra-expanded", "fantasy", "fast", "fill", "fixed", "flat", "flex", "footnotes", "forwards", "from", "geometricPrecision", "georgian", "graytext", "groove", "gujarati", "gurmukhi", "hand", "hangul", "hangul-consonant", "hebrew", "help", "hidden", "hide", "high", "higher", "highlight", "highlighttext", "hiragana", "hiragana-iroha", "horizontal", "hsl", "hsla", "icon", "ignore", "inactiveborder", "inactivecaption", "inactivecaptiontext", "infinite", "infobackground", "infotext", "inherit", "initial", "inline", "inline-axis", "inline-block", "inline-flex", "inline-table", "inset", "inside", "intrinsic", "invert", "italic", "japanese-formal", "japanese-informal", "justify", "kannada", "katakana", "katakana-iroha", "keep-all", "khmer", "korean-hangul-formal", "korean-hanja-formal", "korean-hanja-informal", "landscape", "lao", "large", "larger", "left", "level", "lighter", "line-through", "linear", "linear-gradient", "lines", "list-item", "listbox", "listitem", "local", "logical", "loud", "lower", "lower-alpha", "lower-armenian", "lower-greek", "lower-hexadecimal", "lower-latin", "lower-norwegian", "lower-roman", "lowercase", "ltr", "malayalam", "match", "matrix", "matrix3d", "media-play-button", "media-slider", "media-sliderthumb", "media-volume-slider", "media-volume-sliderthumb", "medium", "menu", "menulist", "menulist-button", "menutext", "message-box", "middle", "min-intrinsic", "mix", "mongolian", "monospace", "move", "multiple", "myanmar", "n-resize", "narrower", "ne-resize", "nesw-resize", "no-close-quote", "no-drop", "no-open-quote", "no-repeat", "none", "normal", "not-allowed", "nowrap", "ns-resize", "numbers", "numeric", "nw-resize", "nwse-resize", "oblique", "octal", "open-quote", "optimizeLegibility", "optimizeSpeed", "oriya", "oromo", "outset", "outside", "outside-shape", "overlay", "overline", "padding", "padding-box", "painted", "page", "paused", "persian", "perspective", "plus-darker", "plus-lighter", "pointer", "polygon", "portrait", "pre", "pre-line", "pre-wrap", "preserve-3d", "progress", "push-button", "radial-gradient", "radio", "read-only", "read-write", "read-write-plaintext-only", "rectangle", "region", "relative", "repeat", "repeating-linear-gradient", "repeating-radial-gradient", "repeating-conic-gradient", "repeat-x", "repeat-y", "reset", "reverse", "rgb", "rgba", "ridge", "right", "rotate", "rotate3d", "rotateX", "rotateY", "rotateZ", "round", "row-resize", "rtl", "run-in", "running", "s-resize", "sans-serif", "scale", "scale3d", "scaleX", "scaleY", "scaleZ", "scroll", "scrollbar", "scroll-position", "se-resize", "searchfield", "searchfield-cancel-button", "searchfield-decoration", "searchfield-results-button", "searchfield-results-decoration", "semi-condensed", "semi-expanded", "separate", "serif", "show", "sidama", "simp-chinese-formal", "simp-chinese-informal", "single", "skew", "skewX", "skewY", "skip-white-space", "slide", "slider-horizontal", "slider-vertical", "sliderthumb-horizontal", "sliderthumb-vertical", "slow", "small", "small-caps", "small-caption", "smaller", "solid", "somali", "source-atop", "source-in", "source-out", "source-over", "space", "spell-out", "square", "square-button", "standard", "start", "static", "status-bar", "stretch", "stroke", "sub", "subpixel-antialiased", "super", "sw-resize", "symbolic", "symbols", "table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row", "table-row-group", "tamil", "telugu", "text", "text-bottom", "text-top", "textarea", "textfield", "thai", "thick", "thin", "threeddarkshadow", "threedface", "threedhighlight", "threedlightshadow", "threedshadow", "tibetan", "tigre", "tigrinya-er", "tigrinya-er-abegede", "tigrinya-et", "tigrinya-et-abegede", "to", "top", "trad-chinese-formal", "trad-chinese-informal", "translate", "translate3d", "translateX", "translateY", "translateZ", "transparent", "ultra-condensed", "ultra-expanded", "underline", "up", "upper-alpha", "upper-armenian", "upper-greek", "upper-hexadecimal", "upper-latin", "upper-norwegian", "upper-roman", "uppercase", "urdu", "url", "var", "vertical", "vertical-text", "visible", "visibleFill", "visiblePainted", "visibleStroke", "visual", "w-resize", "wait", "wave", "wider", "window", "windowframe", "windowtext", "words", "x-large", "x-small", "xor", "xx-large", "xx-small", "bicubic", "optimizespeed", "grayscale", "row", "row-reverse", "wrap", "wrap-reverse", "column-reverse", "flex-start", "flex-end", "space-between", "space-around", "unset"], T = ["in", "and", "or", "not", "is not", "is a", "is", "isnt", "defined", "if unless"], E = ["for", "if", "else", "unless", "from", "to"], U = ["null", "true", "false", "href", "title", "type", "not-allowed", "readonly", "disabled"], A = ["@font-face", "@keyframes", "@media", "@viewport", "@page", "@host", "@supports", "@block", "@css"], G = B.concat(
2
+ $,
3
+ R,
4
+ I,
5
+ O,
6
+ W,
7
+ N,
8
+ S,
9
+ C,
10
+ T,
11
+ E,
12
+ U,
13
+ A
14
+ );
15
+ function F(i) {
16
+ return i = i.sort(function(e, r) {
17
+ return r > e;
18
+ }), new RegExp("^((" + i.join(")|(") + "))\\b");
19
+ }
20
+ function p(i) {
21
+ for (var e = {}, r = 0; r < i.length; ++r) e[i[r]] = !0;
22
+ return e;
23
+ }
24
+ function H(i) {
25
+ return i.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
26
+ }
27
+ var J = p(B), j = /^(a|b|i|s|col|em)$/i, Q = p(O), ee = p(W), ie = p(S), re = p(N), ne = p($), oe = F($), te = p(I), ae = p(R), le = p(C), ce = /^\s*([.]{2,3}|&&|\|\||\*\*|[?!=:]?=|[-+*\/%<>]=?|\?:|\~)/, de = F(T), se = p(E), X = new RegExp(/^\-(moz|ms|o|webkit)-/i), ue = p(U), q = "", c = {}, g, m, P, t;
28
+ function fe(i, e) {
29
+ if (q = i.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/), e.context.line.firstWord = q ? q[0].replace(/^\s*/, "") : "", e.context.line.indent = i.indentation(), g = i.peek(), i.match("//"))
30
+ return i.skipToEnd(), ["comment", "comment"];
31
+ if (i.match("/*"))
32
+ return e.tokenize = K, K(i, e);
33
+ if (g == '"' || g == "'")
34
+ return i.next(), e.tokenize = Y(g), e.tokenize(i, e);
35
+ if (g == "@")
36
+ return i.next(), i.eatWhile(/[\w\\-]/), ["def", i.current()];
37
+ if (g == "#") {
38
+ if (i.next(), i.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))
39
+ return ["atom", "atom"];
40
+ if (i.match(/^[a-z][\w-]*/i))
41
+ return ["builtin", "hash"];
42
+ }
43
+ return i.match(X) ? ["meta", "vendor-prefixes"] : i.match(/^-?[0-9]?\.?[0-9]/) ? (i.eatWhile(/[a-z%]/i), ["number", "unit"]) : g == "!" ? (i.next(), [i.match(/^(important|optional)/i) ? "keyword" : "operator", "important"]) : g == "." && i.match(/^\.[a-z][\w-]*/i) ? ["qualifier", "qualifier"] : i.match(oe) ? (i.peek() == "(" && (e.tokenize = pe), ["property", "word"]) : i.match(/^[a-z][\w-]*\(/i) ? (i.backUp(1), ["keyword", "mixin"]) : i.match(/^(\+|-)[a-z][\w-]*\(/i) ? (i.backUp(1), ["keyword", "block-mixin"]) : i.string.match(/^\s*&/) && i.match(/^[-_]+[a-z][\w-]*/) ? ["qualifier", "qualifier"] : i.match(/^(\/|&)(-|_|:|\.|#|[a-z])/) ? (i.backUp(1), ["variableName.special", "reference"]) : i.match(/^&{1}\s*$/) ? ["variableName.special", "reference"] : i.match(de) ? ["operator", "operator"] : i.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i) ? i.match(/^(\.|\[)[\w-\'\"\]]+/i, !1) && !b(i.current()) ? (i.match("."), ["variable", "variable-name"]) : ["variable", "word"] : i.match(ce) ? ["operator", i.current()] : /[:;,{}\[\]\(\)]/.test(g) ? (i.next(), [null, g]) : (i.next(), [null, null]);
44
+ }
45
+ function K(i, e) {
46
+ for (var r = !1, o; (o = i.next()) != null; ) {
47
+ if (r && o == "/") {
48
+ e.tokenize = null;
49
+ break;
50
+ }
51
+ r = o == "*";
52
+ }
53
+ return ["comment", "comment"];
54
+ }
55
+ function Y(i) {
56
+ return function(e, r) {
57
+ for (var o = !1, l; (l = e.next()) != null; ) {
58
+ if (l == i && !o) {
59
+ i == ")" && e.backUp(1);
60
+ break;
61
+ }
62
+ o = !o && l == "\\";
63
+ }
64
+ return (l == i || !o && i != ")") && (r.tokenize = null), ["string", "string"];
65
+ };
66
+ }
67
+ function pe(i, e) {
68
+ return i.next(), i.match(/\s*[\"\')]/, !1) ? e.tokenize = null : e.tokenize = Y(")"), [null, "("];
69
+ }
70
+ function Z(i, e, r, o) {
71
+ this.type = i, this.indent = e, this.prev = r, this.line = o || { firstWord: "", indent: 0 };
72
+ }
73
+ function n(i, e, r, o) {
74
+ return o = o >= 0 ? o : e.indentUnit, i.context = new Z(r, e.indentation() + o, i.context), r;
75
+ }
76
+ function v(i, e, r) {
77
+ var o = i.context.indent - e.indentUnit;
78
+ return r = r || !1, i.context = i.context.prev, r && (i.context.indent = o), i.context.type;
79
+ }
80
+ function he(i, e, r) {
81
+ return c[r.context.type](i, e, r);
82
+ }
83
+ function _(i, e, r, o) {
84
+ for (var l = 1; l > 0; l--)
85
+ r.context = r.context.prev;
86
+ return he(i, e, r);
87
+ }
88
+ function b(i) {
89
+ return i.toLowerCase() in J;
90
+ }
91
+ function x(i) {
92
+ return i = i.toLowerCase(), i in Q || i in le;
93
+ }
94
+ function w(i) {
95
+ return i.toLowerCase() in se;
96
+ }
97
+ function L(i) {
98
+ return i.toLowerCase().match(X);
99
+ }
100
+ function y(i) {
101
+ var e = i.toLowerCase(), r = "variable";
102
+ return b(i) ? r = "tag" : w(i) ? r = "block-keyword" : x(i) ? r = "property" : e in ie || e in ue ? r = "atom" : e == "return" || e in re ? r = "keyword" : i.match(/^[A-Z]/) && (r = "string"), r;
103
+ }
104
+ function V(i, e) {
105
+ return a(e) && (i == "{" || i == "]" || i == "hash" || i == "qualifier") || i == "block-mixin";
106
+ }
107
+ function D(i, e) {
108
+ return i == "{" && e.match(/^\s*\$?[\w-]+/i, !1);
109
+ }
110
+ function M(i, e) {
111
+ return i == ":" && e.match(/^[a-z-]+/, !1);
112
+ }
113
+ function k(i) {
114
+ return i.sol() || i.string.match(new RegExp("^\\s*" + H(i.current())));
115
+ }
116
+ function a(i) {
117
+ return i.eol() || i.match(/^\s*$/, !1);
118
+ }
119
+ function u(i) {
120
+ var e = /^\s*[-_]*[a-z0-9]+[\w-]*/i, r = typeof i == "string" ? i.match(e) : i.string.match(e);
121
+ return r ? r[0].replace(/^\s*/, "") : "";
122
+ }
123
+ c.block = function(i, e, r) {
124
+ if (i == "comment" && k(e) || i == "," && a(e) || i == "mixin")
125
+ return n(r, e, "block", 0);
126
+ if (D(i, e))
127
+ return n(r, e, "interpolation");
128
+ if (a(e) && i == "]" && !/^\s*(\.|#|:|\[|\*|&)/.test(e.string) && !b(u(e)))
129
+ return n(r, e, "block", 0);
130
+ if (V(i, e))
131
+ return n(r, e, "block");
132
+ if (i == "}" && a(e))
133
+ return n(r, e, "block", 0);
134
+ if (i == "variable-name")
135
+ return e.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/) || w(u(e)) ? n(r, e, "variableName") : n(r, e, "variableName", 0);
136
+ if (i == "=")
137
+ return !a(e) && !w(u(e)) ? n(r, e, "block", 0) : n(r, e, "block");
138
+ if (i == "*" && (a(e) || e.match(/\s*(,|\.|#|\[|:|{)/, !1)))
139
+ return t = "tag", n(r, e, "block");
140
+ if (M(i, e))
141
+ return n(r, e, "pseudo");
142
+ if (/@(font-face|media|supports|(-moz-)?document)/.test(i))
143
+ return n(r, e, a(e) ? "block" : "atBlock");
144
+ if (/@(-(moz|ms|o|webkit)-)?keyframes$/.test(i))
145
+ return n(r, e, "keyframes");
146
+ if (/@extends?/.test(i))
147
+ return n(r, e, "extend", 0);
148
+ if (i && i.charAt(0) == "@")
149
+ return e.indentation() > 0 && x(e.current().slice(1)) ? (t = "variable", "block") : /(@import|@require|@charset)/.test(i) ? n(r, e, "block", 0) : n(r, e, "block");
150
+ if (i == "reference" && a(e))
151
+ return n(r, e, "block");
152
+ if (i == "(")
153
+ return n(r, e, "parens");
154
+ if (i == "vendor-prefixes")
155
+ return n(r, e, "vendorPrefixes");
156
+ if (i == "word") {
157
+ var o = e.current();
158
+ if (t = y(o), t == "property")
159
+ return k(e) ? n(r, e, "block", 0) : (t = "atom", "block");
160
+ if (t == "tag") {
161
+ if (/embed|menu|pre|progress|sub|table/.test(o) && x(u(e)) || e.string.match(new RegExp("\\[\\s*" + o + "|" + o + "\\s*\\]")))
162
+ return t = "atom", "block";
163
+ if (j.test(o) && (k(e) && e.string.match(/=/) || !k(e) && !e.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/) && !b(u(e))))
164
+ return t = "variable", w(u(e)) ? "block" : n(r, e, "block", 0);
165
+ if (a(e)) return n(r, e, "block");
166
+ }
167
+ if (t == "block-keyword")
168
+ return t = "keyword", e.current(/(if|unless)/) && !k(e) ? "block" : n(r, e, "block");
169
+ if (o == "return") return n(r, e, "block", 0);
170
+ if (t == "variable" && e.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))
171
+ return n(r, e, "block");
172
+ }
173
+ return r.context.type;
174
+ };
175
+ c.parens = function(i, e, r) {
176
+ if (i == "(") return n(r, e, "parens");
177
+ if (i == ")")
178
+ return r.context.prev.type == "parens" ? v(r, e) : e.string.match(/^[a-z][\w-]*\(/i) && a(e) || w(u(e)) || /(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(u(e)) || !e.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/) && b(u(e)) ? n(r, e, "block") : e.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/) || e.string.match(/^\s*(\(|\)|[0-9])/) || e.string.match(/^\s+[a-z][\w-]*\(/i) || e.string.match(/^\s+[\$-]?[a-z]/i) ? n(r, e, "block", 0) : a(e) ? n(r, e, "block") : n(r, e, "block", 0);
179
+ if (i && i.charAt(0) == "@" && x(e.current().slice(1)) && (t = "variable"), i == "word") {
180
+ var o = e.current();
181
+ t = y(o), t == "tag" && j.test(o) && (t = "variable"), (t == "property" || o == "to") && (t = "atom");
182
+ }
183
+ return i == "variable-name" ? n(r, e, "variableName") : M(i, e) ? n(r, e, "pseudo") : r.context.type;
184
+ };
185
+ c.vendorPrefixes = function(i, e, r) {
186
+ return i == "word" ? (t = "property", n(r, e, "block", 0)) : v(r, e);
187
+ };
188
+ c.pseudo = function(i, e, r) {
189
+ return x(u(e.string)) ? _(i, e, r) : (e.match(/^[a-z-]+/), t = "variableName.special", a(e) ? n(r, e, "block") : v(r, e));
190
+ };
191
+ c.atBlock = function(i, e, r) {
192
+ if (i == "(") return n(r, e, "atBlock_parens");
193
+ if (V(i, e))
194
+ return n(r, e, "block");
195
+ if (D(i, e))
196
+ return n(r, e, "interpolation");
197
+ if (i == "word") {
198
+ var o = e.current().toLowerCase();
199
+ if (/^(only|not|and|or)$/.test(o) ? t = "keyword" : ne.hasOwnProperty(o) ? t = "tag" : ae.hasOwnProperty(o) ? t = "attribute" : te.hasOwnProperty(o) ? t = "property" : ee.hasOwnProperty(o) ? t = "string.special" : t = y(e.current()), t == "tag" && a(e))
200
+ return n(r, e, "block");
201
+ }
202
+ return i == "operator" && /^(not|and|or)$/.test(e.current()) && (t = "keyword"), r.context.type;
203
+ };
204
+ c.atBlock_parens = function(i, e, r) {
205
+ if (i == "{" || i == "}") return r.context.type;
206
+ if (i == ")")
207
+ return a(e) ? n(r, e, "block") : n(r, e, "atBlock");
208
+ if (i == "word") {
209
+ var o = e.current().toLowerCase();
210
+ return t = y(o), /^(max|min)/.test(o) && (t = "property"), t == "tag" && (j.test(o) ? t = "variable" : t = "atom"), r.context.type;
211
+ }
212
+ return c.atBlock(i, e, r);
213
+ };
214
+ c.keyframes = function(i, e, r) {
215
+ return e.indentation() == "0" && (i == "}" && k(e) || i == "]" || i == "hash" || i == "qualifier" || b(e.current())) ? _(i, e, r) : i == "{" ? n(r, e, "keyframes") : i == "}" ? k(e) ? v(r, e, !0) : n(r, e, "keyframes") : i == "unit" && /^[0-9]+\%$/.test(e.current()) ? n(r, e, "keyframes") : i == "word" && (t = y(e.current()), t == "block-keyword") ? (t = "keyword", n(r, e, "keyframes")) : /@(font-face|media|supports|(-moz-)?document)/.test(i) ? n(r, e, a(e) ? "block" : "atBlock") : i == "mixin" ? n(r, e, "block", 0) : r.context.type;
216
+ };
217
+ c.interpolation = function(i, e, r) {
218
+ return i == "{" && v(r, e) && n(r, e, "block"), i == "}" ? e.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i) || e.string.match(/^\s*[a-z]/i) && b(u(e)) ? n(r, e, "block") : !e.string.match(/^(\{|\s*\&)/) || e.match(/\s*[\w-]/, !1) ? n(r, e, "block", 0) : n(r, e, "block") : i == "variable-name" ? n(r, e, "variableName", 0) : (i == "word" && (t = y(e.current()), t == "tag" && (t = "atom")), r.context.type);
219
+ };
220
+ c.extend = function(i, e, r) {
221
+ return i == "[" || i == "=" ? "extend" : i == "]" ? v(r, e) : i == "word" ? (t = y(e.current()), "extend") : v(r, e);
222
+ };
223
+ c.variableName = function(i, e, r) {
224
+ return i == "string" || i == "[" || i == "]" || e.current().match(/^(\.|\$)/) ? (e.current().match(/^\.[\w-]+/i) && (t = "variable"), "variableName") : _(i, e, r);
225
+ };
226
+ const ge = {
227
+ name: "stylus",
228
+ startState: function() {
229
+ return {
230
+ tokenize: null,
231
+ state: "block",
232
+ context: new Z("block", 0, null)
233
+ };
234
+ },
235
+ token: function(i, e) {
236
+ return !e.tokenize && i.eatSpace() ? null : (m = (e.tokenize || fe)(i, e), m && typeof m == "object" && (P = m[1], m = m[0]), t = m, e.state = c[e.state](P, i, e), t);
237
+ },
238
+ indent: function(i, e, r) {
239
+ var o = i.context, l = e && e.charAt(0), f = o.indent, z = u(e), h = o.line.indent, d = i.context.prev ? i.context.prev.line.firstWord : "", s = i.context.prev ? i.context.prev.line.indent : h;
240
+ return o.prev && (l == "}" && (o.type == "block" || o.type == "atBlock" || o.type == "keyframes") || l == ")" && (o.type == "parens" || o.type == "atBlock_parens") || l == "{" && o.type == "at") ? f = o.indent - r.unit : /(\})/.test(l) || (/@|\$|\d/.test(l) || /^\{/.test(e) || /^\s*\/(\/|\*)/.test(e) || /^\s*\/\*/.test(d) || /^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(e) || /^(\+|-)?[a-z][\w-]*\(/i.test(e) || /^return/.test(e) || w(z) ? f = h : /(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(l) || b(z) ? /\,\s*$/.test(d) ? f = s : !i.sol() && (/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(d) || b(d)) ? f = h <= s ? s : s + r.unit : f = h : !/,\s*$/.test(e) && (L(z) || x(z)) && (w(d) ? f = h <= s ? s : s + r.unit : /^\{/.test(d) ? f = h <= s ? h : s + r.unit : L(d) || x(d) ? f = h >= s ? s : h : /^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(d) || /=\s*$/.test(d) || b(d) || /^\$[\w-\.\[\]\'\"]/.test(d) ? f = s + r.unit : f = h)), f;
241
+ },
242
+ languageData: {
243
+ indentOnInput: /^\s*\}$/,
244
+ commentTokens: { line: "//", block: { open: "/*", close: "*/" } },
245
+ autocomplete: G
246
+ }
247
+ };
248
+ export {
249
+ ge as stylus
250
+ };
251
+ //# sourceMappingURL=stylus-DRcbY16X.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stylus-DRcbY16X.js","sources":["../../../node_modules/.deno/@codemirror+legacy-modes@6.5.0/node_modules/@codemirror/legacy-modes/mode/stylus.js"],"sourcesContent":["// developer.mozilla.org/en-US/docs/Web/HTML/Element\nvar tagKeywords_ = [\"a\",\"abbr\",\"address\",\"area\",\"article\",\"aside\",\"audio\", \"b\", \"base\",\"bdi\", \"bdo\",\"bgsound\",\"blockquote\",\"body\",\"br\",\"button\",\"canvas\",\"caption\",\"cite\", \"code\",\"col\",\"colgroup\",\"data\",\"datalist\",\"dd\",\"del\",\"details\",\"dfn\",\"div\", \"dl\",\"dt\",\"em\",\"embed\",\"fieldset\",\"figcaption\",\"figure\",\"footer\",\"form\",\"h1\", \"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"head\",\"header\",\"hgroup\",\"hr\",\"html\",\"i\",\"iframe\", \"img\",\"input\",\"ins\",\"kbd\",\"keygen\",\"label\",\"legend\",\"li\",\"link\",\"main\",\"map\", \"mark\",\"marquee\",\"menu\",\"menuitem\",\"meta\",\"meter\",\"nav\",\"nobr\",\"noframes\", \"noscript\",\"object\",\"ol\",\"optgroup\",\"option\",\"output\",\"p\",\"param\",\"pre\", \"progress\",\"q\",\"rp\",\"rt\",\"ruby\",\"s\",\"samp\",\"script\",\"section\",\"select\", \"small\",\"source\",\"span\",\"strong\",\"style\",\"sub\",\"summary\",\"sup\",\"table\",\"tbody\",\"td\",\"textarea\",\"tfoot\",\"th\",\"thead\",\"time\",\"tr\",\"track\", \"u\",\"ul\",\"var\",\"video\"];\n\n// github.com/codemirror/CodeMirror/blob/master/mode/css/css.js\n// Note, \"url-prefix\" should precede \"url\" in order to match correctly in documentTypesRegexp\nvar documentTypes_ = [\"domain\", \"regexp\", \"url-prefix\", \"url\"];\nvar mediaTypes_ = [\"all\",\"aural\",\"braille\",\"handheld\",\"print\",\"projection\",\"screen\",\"tty\",\"tv\",\"embossed\"];\nvar mediaFeatures_ = [\"width\",\"min-width\",\"max-width\",\"height\",\"min-height\",\"max-height\",\"device-width\",\"min-device-width\",\"max-device-width\",\"device-height\",\"min-device-height\",\"max-device-height\",\"aspect-ratio\",\"min-aspect-ratio\",\"max-aspect-ratio\",\"device-aspect-ratio\",\"min-device-aspect-ratio\",\"max-device-aspect-ratio\",\"color\",\"min-color\",\"max-color\",\"color-index\",\"min-color-index\",\"max-color-index\",\"monochrome\",\"min-monochrome\",\"max-monochrome\",\"resolution\",\"min-resolution\",\"max-resolution\",\"scan\",\"grid\",\"dynamic-range\",\"video-dynamic-range\"];\nvar propertyKeywords_ = [\"align-content\",\"align-items\",\"align-self\",\"alignment-adjust\",\"alignment-baseline\",\"anchor-point\",\"animation\",\"animation-delay\",\"animation-direction\",\"animation-duration\",\"animation-fill-mode\",\"animation-iteration-count\",\"animation-name\",\"animation-play-state\",\"animation-timing-function\",\"appearance\",\"azimuth\",\"backface-visibility\",\"background\",\"background-attachment\",\"background-clip\",\"background-color\",\"background-image\",\"background-origin\",\"background-position\",\"background-repeat\",\"background-size\",\"baseline-shift\",\"binding\",\"bleed\",\"bookmark-label\",\"bookmark-level\",\"bookmark-state\",\"bookmark-target\",\"border\",\"border-bottom\",\"border-bottom-color\",\"border-bottom-left-radius\",\"border-bottom-right-radius\",\"border-bottom-style\",\"border-bottom-width\",\"border-collapse\",\"border-color\",\"border-image\",\"border-image-outset\",\"border-image-repeat\",\"border-image-slice\",\"border-image-source\",\"border-image-width\",\"border-left\",\"border-left-color\",\"border-left-style\",\"border-left-width\",\"border-radius\",\"border-right\",\"border-right-color\",\"border-right-style\",\"border-right-width\",\"border-spacing\",\"border-style\",\"border-top\",\"border-top-color\",\"border-top-left-radius\",\"border-top-right-radius\",\"border-top-style\",\"border-top-width\",\"border-width\",\"bottom\",\"box-decoration-break\",\"box-shadow\",\"box-sizing\",\"break-after\",\"break-before\",\"break-inside\",\"caption-side\",\"clear\",\"clip\",\"color\",\"color-profile\",\"column-count\",\"column-fill\",\"column-gap\",\"column-rule\",\"column-rule-color\",\"column-rule-style\",\"column-rule-width\",\"column-span\",\"column-width\",\"columns\",\"content\",\"counter-increment\",\"counter-reset\",\"crop\",\"cue\",\"cue-after\",\"cue-before\",\"cursor\",\"direction\",\"display\",\"dominant-baseline\",\"drop-initial-after-adjust\",\"drop-initial-after-align\",\"drop-initial-before-adjust\",\"drop-initial-before-align\",\"drop-initial-size\",\"drop-initial-value\",\"elevation\",\"empty-cells\",\"fit\",\"fit-position\",\"flex\",\"flex-basis\",\"flex-direction\",\"flex-flow\",\"flex-grow\",\"flex-shrink\",\"flex-wrap\",\"float\",\"float-offset\",\"flow-from\",\"flow-into\",\"font\",\"font-feature-settings\",\"font-family\",\"font-kerning\",\"font-language-override\",\"font-size\",\"font-size-adjust\",\"font-stretch\",\"font-style\",\"font-synthesis\",\"font-variant\",\"font-variant-alternates\",\"font-variant-caps\",\"font-variant-east-asian\",\"font-variant-ligatures\",\"font-variant-numeric\",\"font-variant-position\",\"font-weight\",\"grid\",\"grid-area\",\"grid-auto-columns\",\"grid-auto-flow\",\"grid-auto-position\",\"grid-auto-rows\",\"grid-column\",\"grid-column-end\",\"grid-column-start\",\"grid-row\",\"grid-row-end\",\"grid-row-start\",\"grid-template\",\"grid-template-areas\",\"grid-template-columns\",\"grid-template-rows\",\"hanging-punctuation\",\"height\",\"hyphens\",\"icon\",\"image-orientation\",\"image-rendering\",\"image-resolution\",\"inline-box-align\",\"justify-content\",\"left\",\"letter-spacing\",\"line-break\",\"line-height\",\"line-stacking\",\"line-stacking-ruby\",\"line-stacking-shift\",\"line-stacking-strategy\",\"list-style\",\"list-style-image\",\"list-style-position\",\"list-style-type\",\"margin\",\"margin-bottom\",\"margin-left\",\"margin-right\",\"margin-top\",\"marker-offset\",\"marks\",\"marquee-direction\",\"marquee-loop\",\"marquee-play-count\",\"marquee-speed\",\"marquee-style\",\"max-height\",\"max-width\",\"min-height\",\"min-width\",\"move-to\",\"nav-down\",\"nav-index\",\"nav-left\",\"nav-right\",\"nav-up\",\"object-fit\",\"object-position\",\"opacity\",\"order\",\"orphans\",\"outline\",\"outline-color\",\"outline-offset\",\"outline-style\",\"outline-width\",\"overflow\",\"overflow-style\",\"overflow-wrap\",\"overflow-x\",\"overflow-y\",\"padding\",\"padding-bottom\",\"padding-left\",\"padding-right\",\"padding-top\",\"page\",\"page-break-after\",\"page-break-before\",\"page-break-inside\",\"page-policy\",\"pause\",\"pause-after\",\"pause-before\",\"perspective\",\"perspective-origin\",\"pitch\",\"pitch-range\",\"play-during\",\"position\",\"presentation-level\",\"punctuation-trim\",\"quotes\",\"region-break-after\",\"region-break-before\",\"region-break-inside\",\"region-fragment\",\"rendering-intent\",\"resize\",\"rest\",\"rest-after\",\"rest-before\",\"richness\",\"right\",\"rotation\",\"rotation-point\",\"ruby-align\",\"ruby-overhang\",\"ruby-position\",\"ruby-span\",\"shape-image-threshold\",\"shape-inside\",\"shape-margin\",\"shape-outside\",\"size\",\"speak\",\"speak-as\",\"speak-header\",\"speak-numeral\",\"speak-punctuation\",\"speech-rate\",\"stress\",\"string-set\",\"tab-size\",\"table-layout\",\"target\",\"target-name\",\"target-new\",\"target-position\",\"text-align\",\"text-align-last\",\"text-decoration\",\"text-decoration-color\",\"text-decoration-line\",\"text-decoration-skip\",\"text-decoration-style\",\"text-emphasis\",\"text-emphasis-color\",\"text-emphasis-position\",\"text-emphasis-style\",\"text-height\",\"text-indent\",\"text-justify\",\"text-outline\",\"text-overflow\",\"text-shadow\",\"text-size-adjust\",\"text-space-collapse\",\"text-transform\",\"text-underline-position\",\"text-wrap\",\"top\",\"transform\",\"transform-origin\",\"transform-style\",\"transition\",\"transition-delay\",\"transition-duration\",\"transition-property\",\"transition-timing-function\",\"unicode-bidi\",\"vertical-align\",\"visibility\",\"voice-balance\",\"voice-duration\",\"voice-family\",\"voice-pitch\",\"voice-range\",\"voice-rate\",\"voice-stress\",\"voice-volume\",\"volume\",\"white-space\",\"widows\",\"width\",\"will-change\",\"word-break\",\"word-spacing\",\"word-wrap\",\"z-index\",\"clip-path\",\"clip-rule\",\"mask\",\"enable-background\",\"filter\",\"flood-color\",\"flood-opacity\",\"lighting-color\",\"stop-color\",\"stop-opacity\",\"pointer-events\",\"color-interpolation\",\"color-interpolation-filters\",\"color-rendering\",\"fill\",\"fill-opacity\",\"fill-rule\",\"image-rendering\",\"marker\",\"marker-end\",\"marker-mid\",\"marker-start\",\"shape-rendering\",\"stroke\",\"stroke-dasharray\",\"stroke-dashoffset\",\"stroke-linecap\",\"stroke-linejoin\",\"stroke-miterlimit\",\"stroke-opacity\",\"stroke-width\",\"text-rendering\",\"baseline-shift\",\"dominant-baseline\",\"glyph-orientation-horizontal\",\"glyph-orientation-vertical\",\"text-anchor\",\"writing-mode\",\"font-smoothing\",\"osx-font-smoothing\"];\nvar nonStandardPropertyKeywords_ = [\"scrollbar-arrow-color\",\"scrollbar-base-color\",\"scrollbar-dark-shadow-color\",\"scrollbar-face-color\",\"scrollbar-highlight-color\",\"scrollbar-shadow-color\",\"scrollbar-3d-light-color\",\"scrollbar-track-color\",\"shape-inside\",\"searchfield-cancel-button\",\"searchfield-decoration\",\"searchfield-results-button\",\"searchfield-results-decoration\",\"zoom\"];\nvar fontProperties_ = [\"font-family\",\"src\",\"unicode-range\",\"font-variant\",\"font-feature-settings\",\"font-stretch\",\"font-weight\",\"font-style\"];\nvar colorKeywords_ = [\"aliceblue\",\"antiquewhite\",\"aqua\",\"aquamarine\",\"azure\",\"beige\",\"bisque\",\"black\",\"blanchedalmond\",\"blue\",\"blueviolet\",\"brown\",\"burlywood\",\"cadetblue\",\"chartreuse\",\"chocolate\",\"coral\",\"cornflowerblue\",\"cornsilk\",\"crimson\",\"cyan\",\"darkblue\",\"darkcyan\",\"darkgoldenrod\",\"darkgray\",\"darkgreen\",\"darkkhaki\",\"darkmagenta\",\"darkolivegreen\",\"darkorange\",\"darkorchid\",\"darkred\",\"darksalmon\",\"darkseagreen\",\"darkslateblue\",\"darkslategray\",\"darkturquoise\",\"darkviolet\",\"deeppink\",\"deepskyblue\",\"dimgray\",\"dodgerblue\",\"firebrick\",\"floralwhite\",\"forestgreen\",\"fuchsia\",\"gainsboro\",\"ghostwhite\",\"gold\",\"goldenrod\",\"gray\",\"grey\",\"green\",\"greenyellow\",\"honeydew\",\"hotpink\",\"indianred\",\"indigo\",\"ivory\",\"khaki\",\"lavender\",\"lavenderblush\",\"lawngreen\",\"lemonchiffon\",\"lightblue\",\"lightcoral\",\"lightcyan\",\"lightgoldenrodyellow\",\"lightgray\",\"lightgreen\",\"lightpink\",\"lightsalmon\",\"lightseagreen\",\"lightskyblue\",\"lightslategray\",\"lightsteelblue\",\"lightyellow\",\"lime\",\"limegreen\",\"linen\",\"magenta\",\"maroon\",\"mediumaquamarine\",\"mediumblue\",\"mediumorchid\",\"mediumpurple\",\"mediumseagreen\",\"mediumslateblue\",\"mediumspringgreen\",\"mediumturquoise\",\"mediumvioletred\",\"midnightblue\",\"mintcream\",\"mistyrose\",\"moccasin\",\"navajowhite\",\"navy\",\"oldlace\",\"olive\",\"olivedrab\",\"orange\",\"orangered\",\"orchid\",\"palegoldenrod\",\"palegreen\",\"paleturquoise\",\"palevioletred\",\"papayawhip\",\"peachpuff\",\"peru\",\"pink\",\"plum\",\"powderblue\",\"purple\",\"rebeccapurple\",\"red\",\"rosybrown\",\"royalblue\",\"saddlebrown\",\"salmon\",\"sandybrown\",\"seagreen\",\"seashell\",\"sienna\",\"silver\",\"skyblue\",\"slateblue\",\"slategray\",\"snow\",\"springgreen\",\"steelblue\",\"tan\",\"teal\",\"thistle\",\"tomato\",\"turquoise\",\"violet\",\"wheat\",\"white\",\"whitesmoke\",\"yellow\",\"yellowgreen\"];\nvar valueKeywords_ = [\"above\",\"absolute\",\"activeborder\",\"additive\",\"activecaption\",\"afar\",\"after-white-space\",\"ahead\",\"alias\",\"all\",\"all-scroll\",\"alphabetic\",\"alternate\",\"always\",\"amharic\",\"amharic-abegede\",\"antialiased\",\"appworkspace\",\"arabic-indic\",\"armenian\",\"asterisks\",\"attr\",\"auto\",\"avoid\",\"avoid-column\",\"avoid-page\",\"avoid-region\",\"background\",\"backwards\",\"baseline\",\"below\",\"bidi-override\",\"binary\",\"bengali\",\"blink\",\"block\",\"block-axis\",\"bold\",\"bolder\",\"border\",\"border-box\",\"both\",\"bottom\",\"break\",\"break-all\",\"break-word\",\"bullets\",\"button\",\"buttonface\",\"buttonhighlight\",\"buttonshadow\",\"buttontext\",\"calc\",\"cambodian\",\"capitalize\",\"caps-lock-indicator\",\"caption\",\"captiontext\",\"caret\",\"cell\",\"center\",\"checkbox\",\"circle\",\"cjk-decimal\",\"cjk-earthly-branch\",\"cjk-heavenly-stem\",\"cjk-ideographic\",\"clear\",\"clip\",\"close-quote\",\"col-resize\",\"collapse\",\"column\",\"compact\",\"condensed\",\"conic-gradient\",\"contain\",\"content\",\"contents\",\"content-box\",\"context-menu\",\"continuous\",\"copy\",\"counter\",\"counters\",\"cover\",\"crop\",\"cross\",\"crosshair\",\"currentcolor\",\"cursive\",\"cyclic\",\"dashed\",\"decimal\",\"decimal-leading-zero\",\"default\",\"default-button\",\"destination-atop\",\"destination-in\",\"destination-out\",\"destination-over\",\"devanagari\",\"disc\",\"discard\",\"disclosure-closed\",\"disclosure-open\",\"document\",\"dot-dash\",\"dot-dot-dash\",\"dotted\",\"double\",\"down\",\"e-resize\",\"ease\",\"ease-in\",\"ease-in-out\",\"ease-out\",\"element\",\"ellipse\",\"ellipsis\",\"embed\",\"end\",\"ethiopic\",\"ethiopic-abegede\",\"ethiopic-abegede-am-et\",\"ethiopic-abegede-gez\",\"ethiopic-abegede-ti-er\",\"ethiopic-abegede-ti-et\",\"ethiopic-halehame-aa-er\",\"ethiopic-halehame-aa-et\",\"ethiopic-halehame-am-et\",\"ethiopic-halehame-gez\",\"ethiopic-halehame-om-et\",\"ethiopic-halehame-sid-et\",\"ethiopic-halehame-so-et\",\"ethiopic-halehame-ti-er\",\"ethiopic-halehame-ti-et\",\"ethiopic-halehame-tig\",\"ethiopic-numeric\",\"ew-resize\",\"expanded\",\"extends\",\"extra-condensed\",\"extra-expanded\",\"fantasy\",\"fast\",\"fill\",\"fixed\",\"flat\",\"flex\",\"footnotes\",\"forwards\",\"from\",\"geometricPrecision\",\"georgian\",\"graytext\",\"groove\",\"gujarati\",\"gurmukhi\",\"hand\",\"hangul\",\"hangul-consonant\",\"hebrew\",\"help\",\"hidden\",\"hide\",\"high\",\"higher\",\"highlight\",\"highlighttext\",\"hiragana\",\"hiragana-iroha\",\"horizontal\",\"hsl\",\"hsla\",\"icon\",\"ignore\",\"inactiveborder\",\"inactivecaption\",\"inactivecaptiontext\",\"infinite\",\"infobackground\",\"infotext\",\"inherit\",\"initial\",\"inline\",\"inline-axis\",\"inline-block\",\"inline-flex\",\"inline-table\",\"inset\",\"inside\",\"intrinsic\",\"invert\",\"italic\",\"japanese-formal\",\"japanese-informal\",\"justify\",\"kannada\",\"katakana\",\"katakana-iroha\",\"keep-all\",\"khmer\",\"korean-hangul-formal\",\"korean-hanja-formal\",\"korean-hanja-informal\",\"landscape\",\"lao\",\"large\",\"larger\",\"left\",\"level\",\"lighter\",\"line-through\",\"linear\",\"linear-gradient\",\"lines\",\"list-item\",\"listbox\",\"listitem\",\"local\",\"logical\",\"loud\",\"lower\",\"lower-alpha\",\"lower-armenian\",\"lower-greek\",\"lower-hexadecimal\",\"lower-latin\",\"lower-norwegian\",\"lower-roman\",\"lowercase\",\"ltr\",\"malayalam\",\"match\",\"matrix\",\"matrix3d\",\"media-play-button\",\"media-slider\",\"media-sliderthumb\",\"media-volume-slider\",\"media-volume-sliderthumb\",\"medium\",\"menu\",\"menulist\",\"menulist-button\",\"menutext\",\"message-box\",\"middle\",\"min-intrinsic\",\"mix\",\"mongolian\",\"monospace\",\"move\",\"multiple\",\"myanmar\",\"n-resize\",\"narrower\",\"ne-resize\",\"nesw-resize\",\"no-close-quote\",\"no-drop\",\"no-open-quote\",\"no-repeat\",\"none\",\"normal\",\"not-allowed\",\"nowrap\",\"ns-resize\",\"numbers\",\"numeric\",\"nw-resize\",\"nwse-resize\",\"oblique\",\"octal\",\"open-quote\",\"optimizeLegibility\",\"optimizeSpeed\",\"oriya\",\"oromo\",\"outset\",\"outside\",\"outside-shape\",\"overlay\",\"overline\",\"padding\",\"padding-box\",\"painted\",\"page\",\"paused\",\"persian\",\"perspective\",\"plus-darker\",\"plus-lighter\",\"pointer\",\"polygon\",\"portrait\",\"pre\",\"pre-line\",\"pre-wrap\",\"preserve-3d\",\"progress\",\"push-button\",\"radial-gradient\",\"radio\",\"read-only\",\"read-write\",\"read-write-plaintext-only\",\"rectangle\",\"region\",\"relative\",\"repeat\",\"repeating-linear-gradient\",\"repeating-radial-gradient\",\"repeating-conic-gradient\",\"repeat-x\",\"repeat-y\",\"reset\",\"reverse\",\"rgb\",\"rgba\",\"ridge\",\"right\",\"rotate\",\"rotate3d\",\"rotateX\",\"rotateY\",\"rotateZ\",\"round\",\"row-resize\",\"rtl\",\"run-in\",\"running\",\"s-resize\",\"sans-serif\",\"scale\",\"scale3d\",\"scaleX\",\"scaleY\",\"scaleZ\",\"scroll\",\"scrollbar\",\"scroll-position\",\"se-resize\",\"searchfield\",\"searchfield-cancel-button\",\"searchfield-decoration\",\"searchfield-results-button\",\"searchfield-results-decoration\",\"semi-condensed\",\"semi-expanded\",\"separate\",\"serif\",\"show\",\"sidama\",\"simp-chinese-formal\",\"simp-chinese-informal\",\"single\",\"skew\",\"skewX\",\"skewY\",\"skip-white-space\",\"slide\",\"slider-horizontal\",\"slider-vertical\",\"sliderthumb-horizontal\",\"sliderthumb-vertical\",\"slow\",\"small\",\"small-caps\",\"small-caption\",\"smaller\",\"solid\",\"somali\",\"source-atop\",\"source-in\",\"source-out\",\"source-over\",\"space\",\"spell-out\",\"square\",\"square-button\",\"standard\",\"start\",\"static\",\"status-bar\",\"stretch\",\"stroke\",\"sub\",\"subpixel-antialiased\",\"super\",\"sw-resize\",\"symbolic\",\"symbols\",\"table\",\"table-caption\",\"table-cell\",\"table-column\",\"table-column-group\",\"table-footer-group\",\"table-header-group\",\"table-row\",\"table-row-group\",\"tamil\",\"telugu\",\"text\",\"text-bottom\",\"text-top\",\"textarea\",\"textfield\",\"thai\",\"thick\",\"thin\",\"threeddarkshadow\",\"threedface\",\"threedhighlight\",\"threedlightshadow\",\"threedshadow\",\"tibetan\",\"tigre\",\"tigrinya-er\",\"tigrinya-er-abegede\",\"tigrinya-et\",\"tigrinya-et-abegede\",\"to\",\"top\",\"trad-chinese-formal\",\"trad-chinese-informal\",\"translate\",\"translate3d\",\"translateX\",\"translateY\",\"translateZ\",\"transparent\",\"ultra-condensed\",\"ultra-expanded\",\"underline\",\"up\",\"upper-alpha\",\"upper-armenian\",\"upper-greek\",\"upper-hexadecimal\",\"upper-latin\",\"upper-norwegian\",\"upper-roman\",\"uppercase\",\"urdu\",\"url\",\"var\",\"vertical\",\"vertical-text\",\"visible\",\"visibleFill\",\"visiblePainted\",\"visibleStroke\",\"visual\",\"w-resize\",\"wait\",\"wave\",\"wider\",\"window\",\"windowframe\",\"windowtext\",\"words\",\"x-large\",\"x-small\",\"xor\",\"xx-large\",\"xx-small\",\"bicubic\",\"optimizespeed\",\"grayscale\",\"row\",\"row-reverse\",\"wrap\",\"wrap-reverse\",\"column-reverse\",\"flex-start\",\"flex-end\",\"space-between\",\"space-around\", \"unset\"];\n\nvar wordOperatorKeywords_ = [\"in\",\"and\",\"or\",\"not\",\"is not\",\"is a\",\"is\",\"isnt\",\"defined\",\"if unless\"],\n blockKeywords_ = [\"for\",\"if\",\"else\",\"unless\", \"from\", \"to\"],\n commonAtoms_ = [\"null\",\"true\",\"false\",\"href\",\"title\",\"type\",\"not-allowed\",\"readonly\",\"disabled\"],\n commonDef_ = [\"@font-face\", \"@keyframes\", \"@media\", \"@viewport\", \"@page\", \"@host\", \"@supports\", \"@block\", \"@css\"];\n\nvar hintWords = tagKeywords_.concat(documentTypes_,mediaTypes_,mediaFeatures_,\n propertyKeywords_,nonStandardPropertyKeywords_,\n colorKeywords_,valueKeywords_,fontProperties_,\n wordOperatorKeywords_,blockKeywords_,\n commonAtoms_,commonDef_);\n\nfunction wordRegexp(words) {\n words = words.sort(function(a,b){return b > a;});\n return new RegExp(\"^((\" + words.join(\")|(\") + \"))\\\\b\");\n}\n\nfunction keySet(array) {\n var keys = {};\n for (var i = 0; i < array.length; ++i) keys[array[i]] = true;\n return keys;\n}\n\nfunction escapeRegExp(text) {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, \"\\\\$&\");\n}\n\nvar tagKeywords = keySet(tagKeywords_),\n tagVariablesRegexp = /^(a|b|i|s|col|em)$/i,\n propertyKeywords = keySet(propertyKeywords_),\n nonStandardPropertyKeywords = keySet(nonStandardPropertyKeywords_),\n valueKeywords = keySet(valueKeywords_),\n colorKeywords = keySet(colorKeywords_),\n documentTypes = keySet(documentTypes_),\n documentTypesRegexp = wordRegexp(documentTypes_),\n mediaFeatures = keySet(mediaFeatures_),\n mediaTypes = keySet(mediaTypes_),\n fontProperties = keySet(fontProperties_),\n operatorsRegexp = /^\\s*([.]{2,3}|&&|\\|\\||\\*\\*|[?!=:]?=|[-+*\\/%<>]=?|\\?:|\\~)/,\n wordOperatorKeywordsRegexp = wordRegexp(wordOperatorKeywords_),\n blockKeywords = keySet(blockKeywords_),\n vendorPrefixesRegexp = new RegExp(/^\\-(moz|ms|o|webkit)-/i),\n commonAtoms = keySet(commonAtoms_),\n firstWordMatch = \"\",\n states = {},\n ch,\n style,\n type,\n override;\n\n/**\n * Tokenizers\n */\nfunction tokenBase(stream, state) {\n firstWordMatch = stream.string.match(/(^[\\w-]+\\s*=\\s*$)|(^\\s*[\\w-]+\\s*=\\s*[\\w-])|(^\\s*(\\.|#|@|\\$|\\&|\\[|\\d|\\+|::?|\\{|\\>|~|\\/)?\\s*[\\w-]*([a-z0-9-]|\\*|\\/\\*)(\\(|,)?)/);\n state.context.line.firstWord = firstWordMatch ? firstWordMatch[0].replace(/^\\s*/, \"\") : \"\";\n state.context.line.indent = stream.indentation();\n ch = stream.peek();\n\n // Line comment\n if (stream.match(\"//\")) {\n stream.skipToEnd();\n return [\"comment\", \"comment\"];\n }\n // Block comment\n if (stream.match(\"/*\")) {\n state.tokenize = tokenCComment;\n return tokenCComment(stream, state);\n }\n // String\n if (ch == \"\\\"\" || ch == \"'\") {\n stream.next();\n state.tokenize = tokenString(ch);\n return state.tokenize(stream, state);\n }\n // Def\n if (ch == \"@\") {\n stream.next();\n stream.eatWhile(/[\\w\\\\-]/);\n return [\"def\", stream.current()];\n }\n // ID selector or Hex color\n if (ch == \"#\") {\n stream.next();\n // Hex color\n if (stream.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\\b(?!-)/i)) {\n return [\"atom\", \"atom\"];\n }\n // ID selector\n if (stream.match(/^[a-z][\\w-]*/i)) {\n return [\"builtin\", \"hash\"];\n }\n }\n // Vendor prefixes\n if (stream.match(vendorPrefixesRegexp)) {\n return [\"meta\", \"vendor-prefixes\"];\n }\n // Numbers\n if (stream.match(/^-?[0-9]?\\.?[0-9]/)) {\n stream.eatWhile(/[a-z%]/i);\n return [\"number\", \"unit\"];\n }\n // !important|optional\n if (ch == \"!\") {\n stream.next();\n return [stream.match(/^(important|optional)/i) ? \"keyword\": \"operator\", \"important\"];\n }\n // Class\n if (ch == \".\" && stream.match(/^\\.[a-z][\\w-]*/i)) {\n return [\"qualifier\", \"qualifier\"];\n }\n // url url-prefix domain regexp\n if (stream.match(documentTypesRegexp)) {\n if (stream.peek() == \"(\") state.tokenize = tokenParenthesized;\n return [\"property\", \"word\"];\n }\n // Mixins / Functions\n if (stream.match(/^[a-z][\\w-]*\\(/i)) {\n stream.backUp(1);\n return [\"keyword\", \"mixin\"];\n }\n // Block mixins\n if (stream.match(/^(\\+|-)[a-z][\\w-]*\\(/i)) {\n stream.backUp(1);\n return [\"keyword\", \"block-mixin\"];\n }\n // Parent Reference BEM naming\n if (stream.string.match(/^\\s*&/) && stream.match(/^[-_]+[a-z][\\w-]*/)) {\n return [\"qualifier\", \"qualifier\"];\n }\n // / Root Reference & Parent Reference\n if (stream.match(/^(\\/|&)(-|_|:|\\.|#|[a-z])/)) {\n stream.backUp(1);\n return [\"variableName.special\", \"reference\"];\n }\n if (stream.match(/^&{1}\\s*$/)) {\n return [\"variableName.special\", \"reference\"];\n }\n // Word operator\n if (stream.match(wordOperatorKeywordsRegexp)) {\n return [\"operator\", \"operator\"];\n }\n // Word\n if (stream.match(/^\\$?[-_]*[a-z0-9]+[\\w-]*/i)) {\n // Variable\n if (stream.match(/^(\\.|\\[)[\\w-\\'\\\"\\]]+/i, false)) {\n if (!wordIsTag(stream.current())) {\n stream.match('.');\n return [\"variable\", \"variable-name\"];\n }\n }\n return [\"variable\", \"word\"];\n }\n // Operators\n if (stream.match(operatorsRegexp)) {\n return [\"operator\", stream.current()];\n }\n // Delimiters\n if (/[:;,{}\\[\\]\\(\\)]/.test(ch)) {\n stream.next();\n return [null, ch];\n }\n // Non-detected items\n stream.next();\n return [null, null];\n}\n\n/**\n * Token comment\n */\nfunction tokenCComment(stream, state) {\n var maybeEnd = false, ch;\n while ((ch = stream.next()) != null) {\n if (maybeEnd && ch == \"/\") {\n state.tokenize = null;\n break;\n }\n maybeEnd = (ch == \"*\");\n }\n return [\"comment\", \"comment\"];\n}\n\n/**\n * Token string\n */\nfunction tokenString(quote) {\n return function(stream, state) {\n var escaped = false, ch;\n while ((ch = stream.next()) != null) {\n if (ch == quote && !escaped) {\n if (quote == \")\") stream.backUp(1);\n break;\n }\n escaped = !escaped && ch == \"\\\\\";\n }\n if (ch == quote || !escaped && quote != \")\") state.tokenize = null;\n return [\"string\", \"string\"];\n };\n}\n\n/**\n * Token parenthesized\n */\nfunction tokenParenthesized(stream, state) {\n stream.next(); // Must be \"(\"\n if (!stream.match(/\\s*[\\\"\\')]/, false))\n state.tokenize = tokenString(\")\");\n else\n state.tokenize = null;\n return [null, \"(\"];\n}\n\n/**\n * Context management\n */\nfunction Context(type, indent, prev, line) {\n this.type = type;\n this.indent = indent;\n this.prev = prev;\n this.line = line || {firstWord: \"\", indent: 0};\n}\n\nfunction pushContext(state, stream, type, indent) {\n indent = indent >= 0 ? indent : stream.indentUnit;\n state.context = new Context(type, stream.indentation() + indent, state.context);\n return type;\n}\n\nfunction popContext(state, stream, currentIndent) {\n var contextIndent = state.context.indent - stream.indentUnit;\n currentIndent = currentIndent || false;\n state.context = state.context.prev;\n if (currentIndent) state.context.indent = contextIndent;\n return state.context.type;\n}\n\nfunction pass(type, stream, state) {\n return states[state.context.type](type, stream, state);\n}\n\nfunction popAndPass(type, stream, state, n) {\n for (var i = n || 1; i > 0; i--)\n state.context = state.context.prev;\n return pass(type, stream, state);\n}\n\n\n/**\n * Parser\n */\nfunction wordIsTag(word) {\n return word.toLowerCase() in tagKeywords;\n}\n\nfunction wordIsProperty(word) {\n word = word.toLowerCase();\n return word in propertyKeywords || word in fontProperties;\n}\n\nfunction wordIsBlock(word) {\n return word.toLowerCase() in blockKeywords;\n}\n\nfunction wordIsVendorPrefix(word) {\n return word.toLowerCase().match(vendorPrefixesRegexp);\n}\n\nfunction wordAsValue(word) {\n var wordLC = word.toLowerCase();\n var override = \"variable\";\n if (wordIsTag(word)) override = \"tag\";\n else if (wordIsBlock(word)) override = \"block-keyword\";\n else if (wordIsProperty(word)) override = \"property\";\n else if (wordLC in valueKeywords || wordLC in commonAtoms) override = \"atom\";\n else if (wordLC == \"return\" || wordLC in colorKeywords) override = \"keyword\";\n\n // Font family\n else if (word.match(/^[A-Z]/)) override = \"string\";\n return override;\n}\n\nfunction typeIsBlock(type, stream) {\n return ((endOfLine(stream) && (type == \"{\" || type == \"]\" || type == \"hash\" || type == \"qualifier\")) || type == \"block-mixin\");\n}\n\nfunction typeIsInterpolation(type, stream) {\n return type == \"{\" && stream.match(/^\\s*\\$?[\\w-]+/i, false);\n}\n\nfunction typeIsPseudo(type, stream) {\n return type == \":\" && stream.match(/^[a-z-]+/, false);\n}\n\nfunction startOfLine(stream) {\n return stream.sol() || stream.string.match(new RegExp(\"^\\\\s*\" + escapeRegExp(stream.current())));\n}\n\nfunction endOfLine(stream) {\n return stream.eol() || stream.match(/^\\s*$/, false);\n}\n\nfunction firstWordOfLine(line) {\n var re = /^\\s*[-_]*[a-z0-9]+[\\w-]*/i;\n var result = typeof line == \"string\" ? line.match(re) : line.string.match(re);\n return result ? result[0].replace(/^\\s*/, \"\") : \"\";\n}\n\n\n/**\n * Block\n */\nstates.block = function(type, stream, state) {\n if ((type == \"comment\" && startOfLine(stream)) ||\n (type == \",\" && endOfLine(stream)) ||\n type == \"mixin\") {\n return pushContext(state, stream, \"block\", 0);\n }\n if (typeIsInterpolation(type, stream)) {\n return pushContext(state, stream, \"interpolation\");\n }\n if (endOfLine(stream) && type == \"]\") {\n if (!/^\\s*(\\.|#|:|\\[|\\*|&)/.test(stream.string) && !wordIsTag(firstWordOfLine(stream))) {\n return pushContext(state, stream, \"block\", 0);\n }\n }\n if (typeIsBlock(type, stream)) {\n return pushContext(state, stream, \"block\");\n }\n if (type == \"}\" && endOfLine(stream)) {\n return pushContext(state, stream, \"block\", 0);\n }\n if (type == \"variable-name\") {\n if (stream.string.match(/^\\s?\\$[\\w-\\.\\[\\]\\'\\\"]+$/) || wordIsBlock(firstWordOfLine(stream))) {\n return pushContext(state, stream, \"variableName\");\n }\n else {\n return pushContext(state, stream, \"variableName\", 0);\n }\n }\n if (type == \"=\") {\n if (!endOfLine(stream) && !wordIsBlock(firstWordOfLine(stream))) {\n return pushContext(state, stream, \"block\", 0);\n }\n return pushContext(state, stream, \"block\");\n }\n if (type == \"*\") {\n if (endOfLine(stream) || stream.match(/\\s*(,|\\.|#|\\[|:|{)/,false)) {\n override = \"tag\";\n return pushContext(state, stream, \"block\");\n }\n }\n if (typeIsPseudo(type, stream)) {\n return pushContext(state, stream, \"pseudo\");\n }\n if (/@(font-face|media|supports|(-moz-)?document)/.test(type)) {\n return pushContext(state, stream, endOfLine(stream) ? \"block\" : \"atBlock\");\n }\n if (/@(-(moz|ms|o|webkit)-)?keyframes$/.test(type)) {\n return pushContext(state, stream, \"keyframes\");\n }\n if (/@extends?/.test(type)) {\n return pushContext(state, stream, \"extend\", 0);\n }\n if (type && type.charAt(0) == \"@\") {\n\n // Property Lookup\n if (stream.indentation() > 0 && wordIsProperty(stream.current().slice(1))) {\n override = \"variable\";\n return \"block\";\n }\n if (/(@import|@require|@charset)/.test(type)) {\n return pushContext(state, stream, \"block\", 0);\n }\n return pushContext(state, stream, \"block\");\n }\n if (type == \"reference\" && endOfLine(stream)) {\n return pushContext(state, stream, \"block\");\n }\n if (type == \"(\") {\n return pushContext(state, stream, \"parens\");\n }\n\n if (type == \"vendor-prefixes\") {\n return pushContext(state, stream, \"vendorPrefixes\");\n }\n if (type == \"word\") {\n var word = stream.current();\n override = wordAsValue(word);\n\n if (override == \"property\") {\n if (startOfLine(stream)) {\n return pushContext(state, stream, \"block\", 0);\n } else {\n override = \"atom\";\n return \"block\";\n }\n }\n\n if (override == \"tag\") {\n\n // tag is a css value\n if (/embed|menu|pre|progress|sub|table/.test(word)) {\n if (wordIsProperty(firstWordOfLine(stream))) {\n override = \"atom\";\n return \"block\";\n }\n }\n\n // tag is an attribute\n if (stream.string.match(new RegExp(\"\\\\[\\\\s*\" + word + \"|\" + word +\"\\\\s*\\\\]\"))) {\n override = \"atom\";\n return \"block\";\n }\n\n // tag is a variable\n if (tagVariablesRegexp.test(word)) {\n if ((startOfLine(stream) && stream.string.match(/=/)) ||\n (!startOfLine(stream) &&\n !stream.string.match(/^(\\s*\\.|#|\\&|\\[|\\/|>|\\*)/) &&\n !wordIsTag(firstWordOfLine(stream)))) {\n override = \"variable\";\n if (wordIsBlock(firstWordOfLine(stream))) return \"block\";\n return pushContext(state, stream, \"block\", 0);\n }\n }\n\n if (endOfLine(stream)) return pushContext(state, stream, \"block\");\n }\n if (override == \"block-keyword\") {\n override = \"keyword\";\n\n // Postfix conditionals\n if (stream.current(/(if|unless)/) && !startOfLine(stream)) {\n return \"block\";\n }\n return pushContext(state, stream, \"block\");\n }\n if (word == \"return\") return pushContext(state, stream, \"block\", 0);\n\n // Placeholder selector\n if (override == \"variable\" && stream.string.match(/^\\s?\\$[\\w-\\.\\[\\]\\'\\\"]+$/)) {\n return pushContext(state, stream, \"block\");\n }\n }\n return state.context.type;\n};\n\n\n/**\n * Parens\n */\nstates.parens = function(type, stream, state) {\n if (type == \"(\") return pushContext(state, stream, \"parens\");\n if (type == \")\") {\n if (state.context.prev.type == \"parens\") {\n return popContext(state, stream);\n }\n if ((stream.string.match(/^[a-z][\\w-]*\\(/i) && endOfLine(stream)) ||\n wordIsBlock(firstWordOfLine(stream)) ||\n /(\\.|#|:|\\[|\\*|&|>|~|\\+|\\/)/.test(firstWordOfLine(stream)) ||\n (!stream.string.match(/^-?[a-z][\\w-\\.\\[\\]\\'\\\"]*\\s*=/) &&\n wordIsTag(firstWordOfLine(stream)))) {\n return pushContext(state, stream, \"block\");\n }\n if (stream.string.match(/^[\\$-]?[a-z][\\w-\\.\\[\\]\\'\\\"]*\\s*=/) ||\n stream.string.match(/^\\s*(\\(|\\)|[0-9])/) ||\n stream.string.match(/^\\s+[a-z][\\w-]*\\(/i) ||\n stream.string.match(/^\\s+[\\$-]?[a-z]/i)) {\n return pushContext(state, stream, \"block\", 0);\n }\n if (endOfLine(stream)) return pushContext(state, stream, \"block\");\n else return pushContext(state, stream, \"block\", 0);\n }\n if (type && type.charAt(0) == \"@\" && wordIsProperty(stream.current().slice(1))) {\n override = \"variable\";\n }\n if (type == \"word\") {\n var word = stream.current();\n override = wordAsValue(word);\n if (override == \"tag\" && tagVariablesRegexp.test(word)) {\n override = \"variable\";\n }\n if (override == \"property\" || word == \"to\") override = \"atom\";\n }\n if (type == \"variable-name\") {\n return pushContext(state, stream, \"variableName\");\n }\n if (typeIsPseudo(type, stream)) {\n return pushContext(state, stream, \"pseudo\");\n }\n return state.context.type;\n};\n\n\n/**\n * Vendor prefixes\n */\nstates.vendorPrefixes = function(type, stream, state) {\n if (type == \"word\") {\n override = \"property\";\n return pushContext(state, stream, \"block\", 0);\n }\n return popContext(state, stream);\n};\n\n\n/**\n * Pseudo\n */\nstates.pseudo = function(type, stream, state) {\n if (!wordIsProperty(firstWordOfLine(stream.string))) {\n stream.match(/^[a-z-]+/);\n override = \"variableName.special\";\n if (endOfLine(stream)) return pushContext(state, stream, \"block\");\n return popContext(state, stream);\n }\n return popAndPass(type, stream, state);\n};\n\n\n/**\n * atBlock\n */\nstates.atBlock = function(type, stream, state) {\n if (type == \"(\") return pushContext(state, stream, \"atBlock_parens\");\n if (typeIsBlock(type, stream)) {\n return pushContext(state, stream, \"block\");\n }\n if (typeIsInterpolation(type, stream)) {\n return pushContext(state, stream, \"interpolation\");\n }\n if (type == \"word\") {\n var word = stream.current().toLowerCase();\n if (/^(only|not|and|or)$/.test(word))\n override = \"keyword\";\n else if (documentTypes.hasOwnProperty(word))\n override = \"tag\";\n else if (mediaTypes.hasOwnProperty(word))\n override = \"attribute\";\n else if (mediaFeatures.hasOwnProperty(word))\n override = \"property\";\n else if (nonStandardPropertyKeywords.hasOwnProperty(word))\n override = \"string.special\";\n else override = wordAsValue(stream.current());\n if (override == \"tag\" && endOfLine(stream)) {\n return pushContext(state, stream, \"block\");\n }\n }\n if (type == \"operator\" && /^(not|and|or)$/.test(stream.current())) {\n override = \"keyword\";\n }\n return state.context.type;\n};\n\nstates.atBlock_parens = function(type, stream, state) {\n if (type == \"{\" || type == \"}\") return state.context.type;\n if (type == \")\") {\n if (endOfLine(stream)) return pushContext(state, stream, \"block\");\n else return pushContext(state, stream, \"atBlock\");\n }\n if (type == \"word\") {\n var word = stream.current().toLowerCase();\n override = wordAsValue(word);\n if (/^(max|min)/.test(word)) override = \"property\";\n if (override == \"tag\") {\n tagVariablesRegexp.test(word) ? override = \"variable\" : override = \"atom\";\n }\n return state.context.type;\n }\n return states.atBlock(type, stream, state);\n};\n\n\n/**\n * Keyframes\n */\nstates.keyframes = function(type, stream, state) {\n if (stream.indentation() == \"0\" && ((type == \"}\" && startOfLine(stream)) || type == \"]\" || type == \"hash\"\n || type == \"qualifier\" || wordIsTag(stream.current()))) {\n return popAndPass(type, stream, state);\n }\n if (type == \"{\") return pushContext(state, stream, \"keyframes\");\n if (type == \"}\") {\n if (startOfLine(stream)) return popContext(state, stream, true);\n else return pushContext(state, stream, \"keyframes\");\n }\n if (type == \"unit\" && /^[0-9]+\\%$/.test(stream.current())) {\n return pushContext(state, stream, \"keyframes\");\n }\n if (type == \"word\") {\n override = wordAsValue(stream.current());\n if (override == \"block-keyword\") {\n override = \"keyword\";\n return pushContext(state, stream, \"keyframes\");\n }\n }\n if (/@(font-face|media|supports|(-moz-)?document)/.test(type)) {\n return pushContext(state, stream, endOfLine(stream) ? \"block\" : \"atBlock\");\n }\n if (type == \"mixin\") {\n return pushContext(state, stream, \"block\", 0);\n }\n return state.context.type;\n};\n\n\n/**\n * Interpolation\n */\nstates.interpolation = function(type, stream, state) {\n if (type == \"{\") popContext(state, stream) && pushContext(state, stream, \"block\");\n if (type == \"}\") {\n if (stream.string.match(/^\\s*(\\.|#|:|\\[|\\*|&|>|~|\\+|\\/)/i) ||\n (stream.string.match(/^\\s*[a-z]/i) && wordIsTag(firstWordOfLine(stream)))) {\n return pushContext(state, stream, \"block\");\n }\n if (!stream.string.match(/^(\\{|\\s*\\&)/) ||\n stream.match(/\\s*[\\w-]/,false)) {\n return pushContext(state, stream, \"block\", 0);\n }\n return pushContext(state, stream, \"block\");\n }\n if (type == \"variable-name\") {\n return pushContext(state, stream, \"variableName\", 0);\n }\n if (type == \"word\") {\n override = wordAsValue(stream.current());\n if (override == \"tag\") override = \"atom\";\n }\n return state.context.type;\n};\n\n\n/**\n * Extend/s\n */\nstates.extend = function(type, stream, state) {\n if (type == \"[\" || type == \"=\") return \"extend\";\n if (type == \"]\") return popContext(state, stream);\n if (type == \"word\") {\n override = wordAsValue(stream.current());\n return \"extend\";\n }\n return popContext(state, stream);\n};\n\n\n/**\n * Variable name\n */\nstates.variableName = function(type, stream, state) {\n if (type == \"string\" || type == \"[\" || type == \"]\" || stream.current().match(/^(\\.|\\$)/)) {\n if (stream.current().match(/^\\.[\\w-]+/i)) override = \"variable\";\n return \"variableName\";\n }\n return popAndPass(type, stream, state);\n};\n\nexport const stylus = {\n name: \"stylus\",\n startState: function() {\n return {\n tokenize: null,\n state: \"block\",\n context: new Context(\"block\", 0, null)\n };\n },\n token: function(stream, state) {\n if (!state.tokenize && stream.eatSpace()) return null;\n style = (state.tokenize || tokenBase)(stream, state);\n if (style && typeof style == \"object\") {\n type = style[1];\n style = style[0];\n }\n override = style;\n state.state = states[state.state](type, stream, state);\n return override;\n },\n indent: function(state, textAfter, iCx) {\n var cx = state.context,\n ch = textAfter && textAfter.charAt(0),\n indent = cx.indent,\n lineFirstWord = firstWordOfLine(textAfter),\n lineIndent = cx.line.indent,\n prevLineFirstWord = state.context.prev ? state.context.prev.line.firstWord : \"\",\n prevLineIndent = state.context.prev ? state.context.prev.line.indent : lineIndent;\n\n if (cx.prev &&\n (ch == \"}\" && (cx.type == \"block\" || cx.type == \"atBlock\" || cx.type == \"keyframes\") ||\n ch == \")\" && (cx.type == \"parens\" || cx.type == \"atBlock_parens\") ||\n ch == \"{\" && (cx.type == \"at\"))) {\n indent = cx.indent - iCx.unit;\n } else if (!(/(\\})/.test(ch))) {\n if (/@|\\$|\\d/.test(ch) ||\n /^\\{/.test(textAfter) ||\n/^\\s*\\/(\\/|\\*)/.test(textAfter) ||\n /^\\s*\\/\\*/.test(prevLineFirstWord) ||\n /^\\s*[\\w-\\.\\[\\]\\'\\\"]+\\s*(\\?|:|\\+)?=/i.test(textAfter) ||\n /^(\\+|-)?[a-z][\\w-]*\\(/i.test(textAfter) ||\n /^return/.test(textAfter) ||\n wordIsBlock(lineFirstWord)) {\n indent = lineIndent;\n } else if (/(\\.|#|:|\\[|\\*|&|>|~|\\+|\\/)/.test(ch) || wordIsTag(lineFirstWord)) {\n if (/\\,\\s*$/.test(prevLineFirstWord)) {\n indent = prevLineIndent;\n } else if (!state.sol() && (/(\\.|#|:|\\[|\\*|&|>|~|\\+|\\/)/.test(prevLineFirstWord) || wordIsTag(prevLineFirstWord))) {\n indent = lineIndent <= prevLineIndent ? prevLineIndent : prevLineIndent + iCx.unit;\n } else {\n indent = lineIndent;\n }\n } else if (!/,\\s*$/.test(textAfter) && (wordIsVendorPrefix(lineFirstWord) || wordIsProperty(lineFirstWord))) {\n if (wordIsBlock(prevLineFirstWord)) {\n indent = lineIndent <= prevLineIndent ? prevLineIndent : prevLineIndent + iCx.unit;\n } else if (/^\\{/.test(prevLineFirstWord)) {\n indent = lineIndent <= prevLineIndent ? lineIndent : prevLineIndent + iCx.unit;\n } else if (wordIsVendorPrefix(prevLineFirstWord) || wordIsProperty(prevLineFirstWord)) {\n indent = lineIndent >= prevLineIndent ? prevLineIndent : lineIndent;\n } else if (/^(\\.|#|:|\\[|\\*|&|@|\\+|\\-|>|~|\\/)/.test(prevLineFirstWord) ||\n /=\\s*$/.test(prevLineFirstWord) ||\n wordIsTag(prevLineFirstWord) ||\n /^\\$[\\w-\\.\\[\\]\\'\\\"]/.test(prevLineFirstWord)) {\n indent = prevLineIndent + iCx.unit;\n } else {\n indent = lineIndent;\n }\n }\n }\n return indent;\n },\n languageData: {\n indentOnInput: /^\\s*\\}$/,\n commentTokens: {line: \"//\", block: {open: \"/*\", close: \"*/\"}},\n autocomplete: hintWords\n }\n};\n"],"names":["tagKeywords_","documentTypes_","mediaTypes_","mediaFeatures_","propertyKeywords_","nonStandardPropertyKeywords_","fontProperties_","colorKeywords_","valueKeywords_","wordOperatorKeywords_","blockKeywords_","commonAtoms_","commonDef_","hintWords","wordRegexp","words","a","b","keySet","array","keys","i","escapeRegExp","text","tagKeywords","tagVariablesRegexp","propertyKeywords","nonStandardPropertyKeywords","valueKeywords","colorKeywords","documentTypes","documentTypesRegexp","mediaFeatures","mediaTypes","fontProperties","operatorsRegexp","wordOperatorKeywordsRegexp","blockKeywords","vendorPrefixesRegexp","commonAtoms","firstWordMatch","states","ch","style","type","override","tokenBase","stream","state","tokenCComment","tokenString","tokenParenthesized","wordIsTag","maybeEnd","quote","escaped","Context","indent","prev","line","pushContext","popContext","currentIndent","contextIndent","pass","popAndPass","n","word","wordIsProperty","wordIsBlock","wordIsVendorPrefix","wordAsValue","wordLC","typeIsBlock","endOfLine","typeIsInterpolation","typeIsPseudo","startOfLine","firstWordOfLine","re","result","stylus","textAfter","iCx","cx","lineFirstWord","lineIndent","prevLineFirstWord","prevLineIndent"],"mappings":"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","x_google_ignoreList":[0]}