blob: 70c5cabd43a277fdb6931f862f4991d689d3e8c8 [file] [log] [blame]
{"version":3,"sources":["webpack:///./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/less.js"],"names":["module","exports","hljs","RULES","VALUE","STRING_MODE","c","className","begin","IDENT_MODE","name","relevance","PARENS_MODE","end","contains","push","C_LINE_COMMENT_MODE","C_BLOCK_COMMENT_MODE","CSS_NUMBER_MODE","starts","excludeEnd","IDENT_RE","returnBegin","VALUE_WITH_RULESETS","concat","MIXIN_GUARD_MODE","beginKeywords","endsWithParent","RULE_MODE","INTERP_IDENT_RE","illegal","AT_RULE_MODE","returnEnd","VAR_RULE_MODE","variants","SELECTOR_MODE","case_insensitive"],"mappings":"8EAsKAA,EAAOC,QA/JP,SAAcC,GACZ,IAKIC,EAAQ,GACRC,EAAQ,GAERC,EAAc,SAAqBC,GACrC,MAAO,CAELC,UAAW,SACXC,MAAO,KAAOF,EAAI,MAAQA,IAI1BG,EAAa,SAAoBC,EAAMF,EAAOG,GAChD,MAAO,CACLJ,UAAWG,EACXF,MAAOA,EACPG,UAAWA,IAIXC,EAAc,CAEhBJ,MAAO,MACPK,IAAK,MACLC,SAAUV,EACVO,UAAW,GAGbP,EAAMW,KAAKb,EAAKc,oBAAqBd,EAAKe,qBAAsBZ,EAAY,KAAMA,EAAY,KAAMH,EAAKgB,gBACzG,CACEV,MAAO,oBACPW,OAAQ,CACNZ,UAAW,SACXM,IAAK,WACLO,YAAY,IAEbX,EAAW,SAAU,oBAAqBG,EAAaH,EAAW,WAAY,aAAkB,IAAKA,EAAW,WAAY,cAAwBA,EAAW,WAAY,cAC9K,CAEEF,UAAW,YACXC,MAAOa,eACPR,IAAK,IACLS,aAAa,EACbF,YAAY,GACX,CACDb,UAAW,OACXC,MAAO,eAET,IAAIe,EAAsBnB,EAAMoB,OAAO,CACrChB,MAAO,IACPK,IAAK,IACLC,SAAUX,IAERsB,EAAmB,CACrBC,cAAe,OACfC,gBAAgB,EAChBb,SAAU,CAAC,CACTY,cAAe,YACdF,OAAOpB,IAKRwB,EAAY,CACdpB,MAAOqB,4BACPP,aAAa,EACbT,IAAK,OACLF,UAAW,EACXG,SAAU,CAAC,CACTP,UAAW,YACXC,MAxEkB,uBAyElBK,IAAK,IACLO,YAAY,EACZD,OAAQ,CACNQ,gBAAgB,EAChBG,QAAS,QACTnB,UAAW,EACXG,SAAUV,MAIZ2B,EAAe,CACjBxB,UAAW,UACXC,MAAO,2GACPW,OAAQ,CACNN,IAAK,QACLmB,WAAW,EACXlB,SAAUV,EACVO,UAAW,IAIXsB,EAAgB,CAClB1B,UAAW,WACX2B,SAAU,CAIV,CACE1B,MAAO,gBACPG,UAAW,IACV,CACDH,MAAO,aAETW,OAAQ,CACNN,IAAK,OACLmB,WAAW,EACXlB,SAAUS,IAGVY,EAAgB,CAIlBD,SAAU,CAAC,CACT1B,MAAO,eACPK,IAAK,SAEJ,CACDL,MAzHkB,uBA0HlBK,IAAK,MAEPS,aAAa,EACbU,WAAW,EACXF,QAAS,WACTnB,UAAW,EACXG,SAAU,CAACZ,EAAKc,oBAAqBd,EAAKe,qBAAsBQ,EAAkBhB,EAAW,UAAW,UAAWA,EAAW,WAAY,cAC1IA,EAAW,eAAgBoB,yBAAwB,GACnDpB,EAAW,cAAe,yBAAwBA,EAAW,iBAAkB,0BAAyB,GAAIA,EAAW,eAAgB,IAAK,GAAI,CAC9IF,UAAW,gBACXC,MAAO,MACPK,IAAK,OACJ,CACDN,UAAW,kBACXC,MAAO,kCACN,CACDA,MAAO,MACPK,IAAK,MACLC,SAAUS,GAEZ,CACEf,MAAO,gBAKX,OADAL,EAAMY,KAAKb,EAAKc,oBAAqBd,EAAKe,qBAAsBc,EAAcE,EAAeL,EAAWO,GACjG,CACLzB,KAAM,OACN0B,kBAAkB,EAClBN,QAAS,cACThB,SAAUX","file":"react-syntax-highlighter_languages_highlight_less-202605210302e5a6fbc7.js","sourcesContent":["/*\nLanguage: Less\nDescription: It's CSS, with just a little more.\nAuthor: Max Mikhailov <seven.phases.max@gmail.com>\nWebsite: http://lesscss.org\nCategory: common, css\n*/\nfunction less(hljs) {\n var IDENT_RE = '[\\\\w-]+'; // yes, Less identifiers may begin with a digit\n\n var INTERP_IDENT_RE = '(' + IDENT_RE + '|@{' + IDENT_RE + '})';\n /* Generic Modes */\n\n var RULES = [],\n VALUE = []; // forward def. for recursive modes\n\n var STRING_MODE = function STRING_MODE(c) {\n return {\n // Less strings are not multiline (also include '~' for more consistent coloring of \"escaped\" strings)\n className: 'string',\n begin: '~?' + c + '.*?' + c\n };\n };\n\n var IDENT_MODE = function IDENT_MODE(name, begin, relevance) {\n return {\n className: name,\n begin: begin,\n relevance: relevance\n };\n };\n\n var PARENS_MODE = {\n // used only to properly balance nested parens inside mixin call, def. arg list\n begin: '\\\\(',\n end: '\\\\)',\n contains: VALUE,\n relevance: 0\n }; // generic Less highlighter (used almost everywhere except selectors):\n\n VALUE.push(hljs.C_LINE_COMMENT_MODE, hljs.C_BLOCK_COMMENT_MODE, STRING_MODE(\"'\"), STRING_MODE('\"'), hljs.CSS_NUMBER_MODE, // fixme: it does not include dot for numbers like .5em :(\n {\n begin: '(url|data-uri)\\\\(',\n starts: {\n className: 'string',\n end: '[\\\\)\\\\n]',\n excludeEnd: true\n }\n }, IDENT_MODE('number', '#[0-9A-Fa-f]+\\\\b'), PARENS_MODE, IDENT_MODE('variable', '@@?' + IDENT_RE, 10), IDENT_MODE('variable', '@{' + IDENT_RE + '}'), IDENT_MODE('built_in', '~?`[^`]*?`'), // inline javascript (or whatever host language) *multiline* string\n {\n // @media features (it’s here to not duplicate things in AT_RULE_MODE with extra PARENS_MODE overriding):\n className: 'attribute',\n begin: IDENT_RE + '\\\\s*:',\n end: ':',\n returnBegin: true,\n excludeEnd: true\n }, {\n className: 'meta',\n begin: '!important'\n });\n var VALUE_WITH_RULESETS = VALUE.concat({\n begin: '{',\n end: '}',\n contains: RULES\n });\n var MIXIN_GUARD_MODE = {\n beginKeywords: 'when',\n endsWithParent: true,\n contains: [{\n beginKeywords: 'and not'\n }].concat(VALUE) // using this form to override VALUE’s 'function' match\n\n };\n /* Rule-Level Modes */\n\n var RULE_MODE = {\n begin: INTERP_IDENT_RE + '\\\\s*:',\n returnBegin: true,\n end: '[;}]',\n relevance: 0,\n contains: [{\n className: 'attribute',\n begin: INTERP_IDENT_RE,\n end: ':',\n excludeEnd: true,\n starts: {\n endsWithParent: true,\n illegal: '[<=$]',\n relevance: 0,\n contains: VALUE\n }\n }]\n };\n var AT_RULE_MODE = {\n className: 'keyword',\n begin: '@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\\\b',\n starts: {\n end: '[;{}]',\n returnEnd: true,\n contains: VALUE,\n relevance: 0\n }\n }; // variable definitions and calls\n\n var VAR_RULE_MODE = {\n className: 'variable',\n variants: [// using more strict pattern for higher relevance to increase chances of Less detection.\n // this is *the only* Less specific statement used in most of the sources, so...\n // (we’ll still often loose to the css-parser unless there's '//' comment,\n // simply because 1 variable just can't beat 99 properties :)\n {\n begin: '@' + IDENT_RE + '\\\\s*:',\n relevance: 15\n }, {\n begin: '@' + IDENT_RE\n }],\n starts: {\n end: '[;}]',\n returnEnd: true,\n contains: VALUE_WITH_RULESETS\n }\n };\n var SELECTOR_MODE = {\n // first parse unambiguous selectors (i.e. those not starting with tag)\n // then fall into the scary lookahead-discriminator variant.\n // this mode also handles mixin definitions and calls\n variants: [{\n begin: '[\\\\.#:&\\\\[>]',\n end: '[;{}]' // mixin calls end with ';'\n\n }, {\n begin: INTERP_IDENT_RE,\n end: '{'\n }],\n returnBegin: true,\n returnEnd: true,\n illegal: '[<=\\'$\"]',\n relevance: 0,\n contains: [hljs.C_LINE_COMMENT_MODE, hljs.C_BLOCK_COMMENT_MODE, MIXIN_GUARD_MODE, IDENT_MODE('keyword', 'all\\\\b'), IDENT_MODE('variable', '@{' + IDENT_RE + '}'), // otherwise it’s identified as tag\n IDENT_MODE('selector-tag', INTERP_IDENT_RE + '%?', 0), // '%' for more consistent coloring of @keyframes \"tags\"\n IDENT_MODE('selector-id', '#' + INTERP_IDENT_RE), IDENT_MODE('selector-class', '\\\\.' + INTERP_IDENT_RE, 0), IDENT_MODE('selector-tag', '&', 0), {\n className: 'selector-attr',\n begin: '\\\\[',\n end: '\\\\]'\n }, {\n className: 'selector-pseudo',\n begin: /:(:)?[a-zA-Z0-9\\_\\-\\+\\(\\)\"'.]+/\n }, {\n begin: '\\\\(',\n end: '\\\\)',\n contains: VALUE_WITH_RULESETS\n }, // argument list of parametric mixins\n {\n begin: '!important'\n } // eat !important after mixin call or it will be colored as tag\n ]\n };\n RULES.push(hljs.C_LINE_COMMENT_MODE, hljs.C_BLOCK_COMMENT_MODE, AT_RULE_MODE, VAR_RULE_MODE, RULE_MODE, SELECTOR_MODE);\n return {\n name: 'Less',\n case_insensitive: true,\n illegal: '[=>\\'/<($\"]',\n contains: RULES\n };\n}\n\nmodule.exports = less;"],"sourceRoot":""}