(window.webpackJsonp=window.webpackJsonp||[]).push([[162],{eiiN:function(e,n){var a=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],r=["true","false","null","undefined","NaN","Infinity"],t=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]);function i(e){return e?"string"==typeof e?e:e.source:null}function s(e){return o("(?=",e,")")}function c(e){return o("(",e,")?")}function o(){for(var e=arguments.length,n=new Array(e),a=0;a<e;a++)n[a]=arguments[a];var r=n.map((function(e){return i(e)})).join("");return r}e.exports=function(e){var n="[A-Za-z$_][0-9A-Za-z$_]*",i="<>",l="</>",g={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:function(e,n){var a=e[0].length+e.index,r=e.input[a];"<"!==r?">"===r&&(function(e,n){var a=n.after,r=e[0].replace("<","</");return-1!==e.input.indexOf(r,a)}(e,{after:a})||n.ignoreMatch()):n.ignoreMatch()}},d={$pattern:"[A-Za-z$_][0-9A-Za-z$_]*",keyword:a.join(" "),literal:r.join(" "),built_in:t.join(" ")},b=function(e,n){return"\\b0[".concat(e,"][").concat(n,"]([").concat(n,"_]*[").concat(n,"])?n?")},u=/[1-9]([0-9_]*\d)?/,E=/\d([0-9_]*\d)?/,_=o(/[eE][+-]?/,E),m={className:"number",variants:[{begin:b("bB","01")},{begin:b("oO","0-7")},{begin:b("xX","0-9a-fA-F")},{begin:o(/\b/,u,"n")},{begin:o(/(\b0)?\./,E,c(_))},{begin:o(/\b/,u,c(o(/\./,c(E))),c(_))},{begin:/\b0[\.n]?/}],relevance:0},N={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},f={begin:"html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,N],subLanguage:"xml"}},y={begin:"css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,N],subLanguage:"css"}},p={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,N]},A={className:"comment",variants:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+",contains:[{className:"type",begin:"\\{",end:"\\}",relevance:0},{className:"variable",begin:n+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},v=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,y,p,m,e.REGEXP_MODE];N.contains=v.concat({begin:/{/,end:/}/,keywords:d,contains:["self"].concat(v)});var O=[].concat(A,N.contains),T=O.concat([{begin:/\(/,end:/\)/,keywords:d,contains:["self"].concat(O)}]),w={className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:T};return{name:"Javascript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:T},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),{label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,y,p,A,m,{begin:o(/[{,\n]\s*/,s(o(/(\/\/.*$)*/,/(\/\*(.|\n)*\*\/)*/,/\s*/,n+"\\s*:"))),relevance:0,contains:[{className:"attr",begin:n+s("\\s*:"),relevance:0}]},{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",contains:[A,e.REGEXP_MODE,{className:"function",begin:"(\\([^()]*(\\([^()]*(\\([^()]*\\))*[^()]*\\))*[^()]*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:T}]}]},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{variants:[{begin:i,end:l},{begin:g.begin,"on:begin":g.isTrulyOpeningTag,end:g.end}],subLanguage:"xml",contains:[{begin:g.begin,end:g.end,skip:!0,contains:["self"]}]}],relevance:0},{className:"function",beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:d,contains:["self",e.inherit(e.TITLE_MODE,{begin:n}),w],illegal:/%/},{className:"function",begin:e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\))*[^()]*\\))*[^()]*\\)\\s*{",returnBegin:!0,contains:[w,e.inherit(e.TITLE_MODE,{begin:n})]},{variants:[{begin:"\\."+n},{begin:"\\$"+n}],relevance:0},{className:"class",beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"extends"},e.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/,end:/[\{;]/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{begin:n}),"self",w]},{begin:"(get|set)\\s+(?="+n+"\\()",end:/{/,keywords:"get set",contains:[e.inherit(e.TITLE_MODE,{begin:n}),{begin:/\(\)/},w]},{begin:/\$[(.]/}]}}}}]);
//# sourceMappingURL=react-syntax-highlighter_languages_highlight_javascript-9a707cab687adcd89719.js.map