{"version":3,"sources":["webpack:///./node_modules/react-syntax-highlighter/node_modules/highlight.js/lib/languages/handlebars.js"],"names":["source","re","concat","_len","arguments","length","args","Array","_key","joined","map","x","join","module","exports","hljs","BUILT_INS","LITERALS","literal","BRACKET_QUOTED_ID_REGEX","PLAIN_ID_REGEX","IDENTIFIER_REGEX","HASH_PARAM_REGEX","HELPER_NAME_OR_PATH_EXPRESSION","begin","lexemes","HELPER_PARAMETER","inherit","keywords","SUB_EXPRESSION","end","HASH","className","relevance","starts","contains","NUMBER_MODE","QUOTE_STRING_MODE","APOS_STRING_MODE","HELPER_PARAMETERS","keyword","returnEnd","SUB_EXPRESSION_CONTENTS","OPENING_BLOCK_MUSTACHE_CONTENTS","CLOSING_BLOCK_MUSTACHE_CONTENTS","BASIC_MUSTACHE_CONTENTS","name","aliases","case_insensitive","subLanguage","skip","COMMENT"],"mappings":"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","file":"react-syntax-highlighter_languages_highlight_handlebars-f11304fd2d047f032e73.js","sourcesContent":["/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n  if (!re) return null;\n  if (typeof re === \"string\") return re;\n  return re.source;\n}\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\n\n\nfunction concat() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  var joined = args.map(function (x) {\n    return source(x);\n  }).join(\"\");\n  return joined;\n}\n/*\nLanguage: Handlebars\nRequires: xml.js\nAuthor: Robin Ward <robin.ward@gmail.com>\nDescription: Matcher for Handlebars as well as EmberJS additions.\nWebsite: https://handlebarsjs.com\nCategory: template\n*/\n\n\nfunction handlebars(hljs) {\n  var BUILT_INS = {\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(\" \")\n  };\n  var LITERALS = {\n    literal: ['true', 'false', 'undefined', 'null'].join(\" \")\n  }; // as defined in https://handlebarsjs.com/guide/expressions.html#literal-segments\n  // this regex matches literal segments like ' abc ' or [ abc ] as well as helpers and paths\n  // like a/b, ./abc/cde, and abc.bcd\n\n  var DOUBLE_QUOTED_ID_REGEX = /\".*?\"/;\n  var SINGLE_QUOTED_ID_REGEX = /'.*?'/;\n  var BRACKET_QUOTED_ID_REGEX = /\\[.*?\\]/;\n  var PLAIN_ID_REGEX = /[^\\s!\"#%&'()*+,.\\/;<=>@\\[\\\\\\]^`{|}~]+/;\n  var PATH_DELIMITER_REGEX = /\\.|\\//;\n  var IDENTIFIER_REGEX = concat('(', SINGLE_QUOTED_ID_REGEX, '|', DOUBLE_QUOTED_ID_REGEX, '|', BRACKET_QUOTED_ID_REGEX, '|', PLAIN_ID_REGEX, '|', PATH_DELIMITER_REGEX, ')+'); // identifier followed by a equal-sign (without the equal sign)\n\n  var HASH_PARAM_REGEX = concat('(', BRACKET_QUOTED_ID_REGEX, '|', PLAIN_ID_REGEX, ')(?==)');\n  var HELPER_NAME_OR_PATH_EXPRESSION = {\n    begin: IDENTIFIER_REGEX,\n    lexemes: /[\\w.\\/]+/\n  };\n  var HELPER_PARAMETER = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {\n    keywords: LITERALS\n  });\n  var SUB_EXPRESSION = {\n    begin: /\\(/,\n    end: /\\)/ // the \"contains\" is added below when all necessary sub-modes are defined\n\n  };\n  var HASH = {\n    // fka \"attribute-assignment\", parameters of the form 'key=value'\n    className: 'attr',\n    begin: HASH_PARAM_REGEX,\n    relevance: 0,\n    starts: {\n      begin: /=/,\n      end: /=/,\n      starts: {\n        contains: [hljs.NUMBER_MODE, hljs.QUOTE_STRING_MODE, hljs.APOS_STRING_MODE, HELPER_PARAMETER, SUB_EXPRESSION]\n      }\n    }\n  };\n  var BLOCK_PARAMS = {\n    // parameters of the form '{{#with x as | y |}}...{{/with}}'\n    begin: /as\\s+\\|/,\n    keywords: {\n      keyword: 'as'\n    },\n    end: /\\|/,\n    contains: [{\n      // define sub-mode in order to prevent highlighting of block-parameter named \"as\"\n      begin: /\\w+/\n    }]\n  };\n  var HELPER_PARAMETERS = {\n    contains: [hljs.NUMBER_MODE, hljs.QUOTE_STRING_MODE, hljs.APOS_STRING_MODE, BLOCK_PARAMS, HASH, HELPER_PARAMETER, SUB_EXPRESSION],\n    returnEnd: true // the property \"end\" is defined through inheritance when the mode is used. If depends\n    // on the surrounding mode, but \"endsWithParent\" does not work here (i.e. it includes the\n    // end-token of the surrounding mode)\n\n  };\n  var SUB_EXPRESSION_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {\n    className: 'name',\n    keywords: BUILT_INS,\n    starts: hljs.inherit(HELPER_PARAMETERS, {\n      end: /\\)/\n    })\n  });\n  SUB_EXPRESSION.contains = [SUB_EXPRESSION_CONTENTS];\n  var OPENING_BLOCK_MUSTACHE_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {\n    keywords: BUILT_INS,\n    className: 'name',\n    starts: hljs.inherit(HELPER_PARAMETERS, {\n      end: /}}/\n    })\n  });\n  var CLOSING_BLOCK_MUSTACHE_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {\n    keywords: BUILT_INS,\n    className: 'name'\n  });\n  var BASIC_MUSTACHE_CONTENTS = hljs.inherit(HELPER_NAME_OR_PATH_EXPRESSION, {\n    className: 'name',\n    keywords: BUILT_INS,\n    starts: hljs.inherit(HELPER_PARAMETERS, {\n      end: /}}/\n    })\n  });\n  var ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH = {\n    begin: /\\\\\\{\\{/,\n    skip: true\n  };\n  var PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH = {\n    begin: /\\\\\\\\(?=\\{\\{)/,\n    skip: true\n  };\n  return {\n    name: 'Handlebars',\n    aliases: ['hbs', 'html.hbs', 'html.handlebars', 'htmlbars'],\n    case_insensitive: true,\n    subLanguage: 'xml',\n    contains: [ESCAPE_MUSTACHE_WITH_PRECEEDING_BACKSLASH, PREVENT_ESCAPE_WITH_ANOTHER_PRECEEDING_BACKSLASH, hljs.COMMENT(/\\{\\{!--/, /--\\}\\}/), hljs.COMMENT(/\\{\\{!/, /\\}\\}/), {\n      // open raw block \"{{{{raw}}}} content not evaluated {{{{/raw}}}}\"\n      className: 'template-tag',\n      begin: /\\{\\{\\{\\{(?!\\/)/,\n      end: /\\}\\}\\}\\}/,\n      contains: [OPENING_BLOCK_MUSTACHE_CONTENTS],\n      starts: {\n        end: /\\{\\{\\{\\{\\//,\n        returnEnd: true,\n        subLanguage: 'xml'\n      }\n    }, {\n      // close raw block\n      className: 'template-tag',\n      begin: /\\{\\{\\{\\{\\//,\n      end: /\\}\\}\\}\\}/,\n      contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS]\n    }, {\n      // open block statement\n      className: 'template-tag',\n      begin: /\\{\\{#/,\n      end: /\\}\\}/,\n      contains: [OPENING_BLOCK_MUSTACHE_CONTENTS]\n    }, {\n      className: 'template-tag',\n      begin: /\\{\\{(?=else\\}\\})/,\n      end: /\\}\\}/,\n      keywords: 'else'\n    }, {\n      // closing block statement\n      className: 'template-tag',\n      begin: /\\{\\{\\//,\n      end: /\\}\\}/,\n      contains: [CLOSING_BLOCK_MUSTACHE_CONTENTS]\n    }, {\n      // template variable or helper-call that is NOT html-escaped\n      className: 'template-variable',\n      begin: /\\{\\{\\{/,\n      end: /\\}\\}\\}/,\n      contains: [BASIC_MUSTACHE_CONTENTS]\n    }, {\n      // template variable or helper-call that is html-escaped\n      className: 'template-variable',\n      begin: /\\{\\{/,\n      end: /\\}\\}/,\n      contains: [BASIC_MUSTACHE_CONTENTS]\n    }]\n  };\n}\n\nmodule.exports = handlebars;"],"sourceRoot":""}