{"version":3,"sources":["webpack:////build/source/node_modules/highlight.js/lib/languages/xml.js"],"names":["module","exports","hljs","regex","TAG_NAME_RE","concat","optional","XML_ENTITIES","className","begin","XML_META_KEYWORDS","contains","illegal","XML_META_PAR_KEYWORDS","inherit","end","APOS_META_STRING_MODE","APOS_STRING_MODE","QUOTE_META_STRING_MODE","QUOTE_STRING_MODE","TAG_INTERNALS","endsWithParent","relevance","endsParent","variants","name","aliases","case_insensitive","unicodeRegex","COMMENT","keywords","starts","returnEnd","subLanguage","lookahead","either"],"mappings":"4CAgPAA,EAAOC,QAxOP,SAAaC,GACX,MAAMC,EAAQD,EAAKC,MAQbC,EAAcD,EAAME,OAAO,YAAaF,EAAMG,SAAS,oBAAqB,mBAE5EC,EAAe,CACnBC,UAAW,SACXC,MAAO,oCAEHC,EAAoB,CACxBD,MAAO,KACPE,SAAU,CACR,CACEH,UAAW,UACXC,MAAO,sBACPG,QAAS,QAITC,EAAwBX,EAAKY,QAAQJ,EAAmB,CAC5DD,MAAO,KACPM,IAAK,OAEDC,EAAwBd,EAAKY,QAAQZ,EAAKe,iBAAkB,CAAET,UAAW,WACzEU,EAAyBhB,EAAKY,QAAQZ,EAAKiB,kBAAmB,CAAEX,UAAW,WAC3EY,EAAgB,CACpBC,gBAAgB,EAChBT,QAAS,IACTU,UAAW,EACXX,SAAU,CACR,CACEH,UAAW,OACXC,MA5Be,mBA6Bfa,UAAW,GAEb,CACEb,MAAO,OACPa,UAAW,EACXX,SAAU,CACR,CACEH,UAAW,SACXe,YAAY,EACZC,SAAU,CACR,CACEf,MAAO,IACPM,IAAK,IACLJ,SAAU,CAAEJ,IAEd,CACEE,MAAO,IACPM,IAAK,IACLJ,SAAU,CAAEJ,IAEd,CAAEE,MAAO,sBAOrB,MAAO,CACLgB,KAAM,YACNC,QAAS,CACP,OACA,QACA,MACA,OACA,MACA,MACA,MACA,QACA,MACA,OAEFC,kBAAkB,EAClBC,cAAc,EACdjB,SAAU,CACR,CACEH,UAAW,OACXC,MAAO,UACPM,IAAK,IACLO,UAAW,GACXX,SAAU,CACRD,EACAQ,EACAF,EACAH,EACA,CACEJ,MAAO,KACPM,IAAK,KACLJ,SAAU,CACR,CACEH,UAAW,OACXC,MAAO,UACPM,IAAK,IACLJ,SAAU,CACRD,EACAG,EACAK,EACAF,QAOZd,EAAK2B,QACH,OACA,MACA,CAAEP,UAAW,KAEf,CACEb,MAAO,cACPM,IAAK,QACLO,UAAW,IAEbf,EAEA,CACEC,UAAW,OACXO,IAAK,MACLS,SAAU,CACR,CACEf,MAAO,SACPa,UAAW,GACXX,SAAU,CACRO,IAGJ,CACET,MAAO,uBAKb,CACED,UAAW,MAMXC,MAAO,iBACPM,IAAK,IACLe,SAAU,CAAEL,KAAM,SAClBd,SAAU,CAAES,GACZW,OAAQ,CACNhB,IAAK,YACLiB,WAAW,EACXC,YAAa,CACX,MACA,SAIN,CACEzB,UAAW,MAEXC,MAAO,kBACPM,IAAK,IACLe,SAAU,CAAEL,KAAM,UAClBd,SAAU,CAAES,GACZW,OAAQ,CACNhB,IAAK,aACLiB,WAAW,EACXC,YAAa,CACX,aACA,aACA,SAKN,CACEzB,UAAW,MACXC,MAAO,WAGT,CACED,UAAW,MACXC,MAAON,EAAME,OACX,IACAF,EAAM+B,UAAU/B,EAAME,OACpBD,EAIAD,EAAMgC,OAAO,MAAO,IAAK,SAG7BpB,IAAK,OACLJ,SAAU,CACR,CACEH,UAAW,OACXC,MAAOL,EACPkB,UAAW,EACXS,OAAQX,KAKd,CACEZ,UAAW,MACXC,MAAON,EAAME,OACX,MACAF,EAAM+B,UAAU/B,EAAME,OACpBD,EAAa,OAGjBO,SAAU,CACR,CACEH,UAAW,OACXC,MAAOL,EACPkB,UAAW,GAEb,CACEb,MAAO,IACPa,UAAW,EACXC,YAAY","file":"hl-xml.0df22294.chunk.worker.js","sourcesContent":["/*\nLanguage: HTML, XML\nWebsite: https://www.w3.org/XML/\nCategory: common, web\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction xml(hljs) {\n  const regex = hljs.regex;\n  // XML names can have the following additional letters: https://www.w3.org/TR/xml/#NT-NameChar\n  // OTHER_NAME_CHARS = /[:\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]/;\n  // Element names start with NAME_START_CHAR followed by optional other Unicode letters, ASCII digits, hyphens, underscores, and periods\n  // const TAG_NAME_RE = regex.concat(/[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]/, regex.optional(/[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*:/), /[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*/);;\n  // const XML_IDENT_RE = /[A-Z_a-z:\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]+/;\n  // const TAG_NAME_RE = regex.concat(/[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]/, regex.optional(/[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*:/), /[A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*/);\n  // however, to cater for performance and more Unicode support rely simply on the Unicode letter class\n  const TAG_NAME_RE = regex.concat(/[\\p{L}_]/u, regex.optional(/[\\p{L}0-9_.-]*:/u), /[\\p{L}0-9_.-]*/u);\n  const XML_IDENT_RE = /[\\p{L}0-9._:-]+/u;\n  const XML_ENTITIES = {\n    className: 'symbol',\n    begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/\n  };\n  const XML_META_KEYWORDS = {\n    begin: /\\s/,\n    contains: [\n      {\n        className: 'keyword',\n        begin: /#?[a-z_][a-z1-9_-]+/,\n        illegal: /\\n/\n      }\n    ]\n  };\n  const XML_META_PAR_KEYWORDS = hljs.inherit(XML_META_KEYWORDS, {\n    begin: /\\(/,\n    end: /\\)/\n  });\n  const APOS_META_STRING_MODE = hljs.inherit(hljs.APOS_STRING_MODE, { className: 'string' });\n  const QUOTE_META_STRING_MODE = hljs.inherit(hljs.QUOTE_STRING_MODE, { className: 'string' });\n  const TAG_INTERNALS = {\n    endsWithParent: true,\n    illegal: /</,\n    relevance: 0,\n    contains: [\n      {\n        className: 'attr',\n        begin: XML_IDENT_RE,\n        relevance: 0\n      },\n      {\n        begin: /=\\s*/,\n        relevance: 0,\n        contains: [\n          {\n            className: 'string',\n            endsParent: true,\n            variants: [\n              {\n                begin: /\"/,\n                end: /\"/,\n                contains: [ XML_ENTITIES ]\n              },\n              {\n                begin: /'/,\n                end: /'/,\n                contains: [ XML_ENTITIES ]\n              },\n              { begin: /[^\\s\"'=<>`]+/ }\n            ]\n          }\n        ]\n      }\n    ]\n  };\n  return {\n    name: 'HTML, XML',\n    aliases: [\n      'html',\n      'xhtml',\n      'rss',\n      'atom',\n      'xjb',\n      'xsd',\n      'xsl',\n      'plist',\n      'wsf',\n      'svg'\n    ],\n    case_insensitive: true,\n    unicodeRegex: true,\n    contains: [\n      {\n        className: 'meta',\n        begin: /<![a-z]/,\n        end: />/,\n        relevance: 10,\n        contains: [\n          XML_META_KEYWORDS,\n          QUOTE_META_STRING_MODE,\n          APOS_META_STRING_MODE,\n          XML_META_PAR_KEYWORDS,\n          {\n            begin: /\\[/,\n            end: /\\]/,\n            contains: [\n              {\n                className: 'meta',\n                begin: /<![a-z]/,\n                end: />/,\n                contains: [\n                  XML_META_KEYWORDS,\n                  XML_META_PAR_KEYWORDS,\n                  QUOTE_META_STRING_MODE,\n                  APOS_META_STRING_MODE\n                ]\n              }\n            ]\n          }\n        ]\n      },\n      hljs.COMMENT(\n        /<!--/,\n        /-->/,\n        { relevance: 10 }\n      ),\n      {\n        begin: /<!\\[CDATA\\[/,\n        end: /\\]\\]>/,\n        relevance: 10\n      },\n      XML_ENTITIES,\n      // xml processing instructions\n      {\n        className: 'meta',\n        end: /\\?>/,\n        variants: [\n          {\n            begin: /<\\?xml/,\n            relevance: 10,\n            contains: [\n              QUOTE_META_STRING_MODE\n            ]\n          },\n          {\n            begin: /<\\?[a-z][a-z0-9]+/,\n          }\n        ]\n\n      },\n      {\n        className: 'tag',\n        /*\n        The lookahead pattern (?=...) ensures that 'begin' only matches\n        '<style' as a single word, followed by a whitespace or an\n        ending bracket.\n        */\n        begin: /<style(?=\\s|>)/,\n        end: />/,\n        keywords: { name: 'style' },\n        contains: [ TAG_INTERNALS ],\n        starts: {\n          end: /<\\/style>/,\n          returnEnd: true,\n          subLanguage: [\n            'css',\n            'xml'\n          ]\n        }\n      },\n      {\n        className: 'tag',\n        // See the comment in the <style tag about the lookahead pattern\n        begin: /<script(?=\\s|>)/,\n        end: />/,\n        keywords: { name: 'script' },\n        contains: [ TAG_INTERNALS ],\n        starts: {\n          end: /<\\/script>/,\n          returnEnd: true,\n          subLanguage: [\n            'javascript',\n            'handlebars',\n            'xml'\n          ]\n        }\n      },\n      // we need this for now for jSX\n      {\n        className: 'tag',\n        begin: /<>|<\\/>/\n      },\n      // open tag\n      {\n        className: 'tag',\n        begin: regex.concat(\n          /</,\n          regex.lookahead(regex.concat(\n            TAG_NAME_RE,\n            // <tag/>\n            // <tag>\n            // <tag ...\n            regex.either(/\\/>/, />/, /\\s/)\n          ))\n        ),\n        end: /\\/?>/,\n        contains: [\n          {\n            className: 'name',\n            begin: TAG_NAME_RE,\n            relevance: 0,\n            starts: TAG_INTERNALS\n          }\n        ]\n      },\n      // close tag\n      {\n        className: 'tag',\n        begin: regex.concat(\n          /<\\//,\n          regex.lookahead(regex.concat(\n            TAG_NAME_RE, />/\n          ))\n        ),\n        contains: [\n          {\n            className: 'name',\n            begin: TAG_NAME_RE,\n            relevance: 0\n          },\n          {\n            begin: />/,\n            relevance: 0,\n            endsParent: true\n          }\n        ]\n      }\n    ]\n  };\n}\n\nmodule.exports = xml;\n"],"sourceRoot":""}