{"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-c8faec76eeda89e0f435.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      className: 'template-tag',\n      begin: /\\{\\{(?=else if)/,\n      end: /\\}\\}/,\n      keywords: 'else if'\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":""}