(window.webpackJsonp=window.webpackJsonp||[]).push([[153],{"B/7n":function(e,n){function a(e){return e?"string"==typeof e?e:e.source:null}function t(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];var s=n.map((function(e){return a(e)})).join("");return s}e.exports=function(e){var n=function(e){var n={"builtin-name":["action","bindattr","collection","component","concat","debugger","each","each-in","get","hash","if","in","input","link-to","loc","log","lookup","mut","outlet","partial","query-params","render","template","textarea","unbound","unless","view","with","yield"].join(" ")},a={literal:["true","false","undefined","null"].join(" ")},s=/\[.*?\]/,i=/[^\s!"#%&'()*+,.\/;<=>@\[\\\]^`{|}~]+/,r=t("(",/'.*?'/,"|",/".*?"/,"|",s,"|",i,"|",/\.|\//,")+"),l=t("(",s,"|",i,")(?==)"),o={begin:r,lexemes:/[\w.\/]+/},c=e.inherit(o,{keywords:a}),d={begin:/\(/,end:/\)/},m={className:"attr",begin:l,relevance:0,starts:{begin:/=/,end:/=/,starts:{contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,c,d]}}},g={contains:[e.NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:/as\s+\|/,keywords:{keyword:"as"},end:/\|/,contains:[{begin:/\w+/}]},m,c,d],returnEnd:!0},u=e.inherit(o,{className:"name",keywords:n,starts:e.inherit(g,{end:/\)/})});d.contains=[u];var b=e.inherit(o,{keywords:n,className:"name",starts:e.inherit(g,{end:/}}/})}),p=e.inherit(o,{keywords:n,className:"name"}),h=e.inherit(o,{className:"name",keywords:n,starts:e.inherit(g,{end:/}}/})});return{name:"Handlebars",aliases:["hbs","html.hbs","html.handlebars","htmlbars"],case_insensitive:!0,subLanguage:"xml",contains:[{begin:/\\\{\{/,skip:!0},{begin:/\\\\(?=\{\{)/,skip:!0},e.COMMENT(/\{\{!--/,/--\}\}/),e.COMMENT(/\{\{!/,/\}\}/),{className:"template-tag",begin:/\{\{\{\{(?!\/)/,end:/\}\}\}\}/,contains:[b],starts:{end:/\{\{\{\{\//,returnEnd:!0,subLanguage:"xml"}},{className:"template-tag",begin:/\{\{\{\{\//,end:/\}\}\}\}/,contains:[p]},{className:"template-tag",begin:/\{\{#/,end:/\}\}/,contains:[b]},{className:"template-tag",begin:/\{\{(?=else\}\})/,end:/\}\}/,keywords:"else"},{className:"template-tag",begin:/\{\{(?=else if)/,end:/\}\}/,keywords:"else if"},{className:"template-tag",begin:/\{\{\//,end:/\}\}/,contains:[p]},{className:"template-variable",begin:/\{\{\{/,end:/\}\}\}/,contains:[h]},{className:"template-variable",begin:/\{\{/,end:/\}\}/,contains:[h]}]}}(e);return n.name="HTMLbars",e.getLanguage("handlebars")&&(n.disableAutodetect=!0),n}}}]);
//# sourceMappingURL=react-syntax-highlighter_languages_highlight_htmlbars-288cbafa7b4c15902de7.js.map