{"version":3,"sources":["webpack:////build/source/node_modules/highlight.js/lib/languages/markdown.js"],"names":["module","exports","hljs","INLINE_HTML","begin","end","subLanguage","relevance","LINK","variants","regex","concat","returnBegin","contains","match","className","excludeBegin","returnEnd","excludeEnd","BOLD","ITALIC","BOLD_WITHOUT_ITALIC","inherit","ITALIC_WITHOUT_BOLD","push","CONTAINABLE","forEach","m","name","aliases","scope"],"mappings":"4CAuPAA,EAAOC,QA/OP,SAAkBC,GAChB,MACMC,EAAc,CAClBC,MAAO,gBACPC,IAAK,IACLC,YAAa,MACbC,UAAW,GA8DPC,EAAO,CACXC,SAAU,CAGR,CACEL,MAAO,iBACPG,UAAW,GAGb,CACEH,MAAO,gEACPG,UAAW,GAEb,CACEH,MAjFQF,EAAKQ,MAiFAC,OAAO,YAfP,0BAegC,cAC7CJ,UAAW,GAGb,CACEH,MAAO,wBACPG,UAAW,GAGb,CACEH,MAAO,iBACPG,UAAW,IAGfK,aAAa,EACbC,SAAU,CACR,CAEEC,MAAO,YACT,CACEC,UAAW,SACXR,UAAW,EACXH,MAAO,MACPC,IAAK,MACLW,cAAc,EACdC,WAAW,GAEb,CACEF,UAAW,OACXR,UAAW,EACXH,MAAO,SACPC,IAAK,MACLW,cAAc,EACdE,YAAY,GAEd,CACEH,UAAW,SACXR,UAAW,EACXH,MAAO,SACPC,IAAK,MACLW,cAAc,EACdE,YAAY,KAIZC,EAAO,CACXJ,UAAW,SACXF,SAAU,GACVJ,SAAU,CACR,CACEL,MAAO,aACPC,IAAK,QAEP,CACED,MAAO,cACPC,IAAK,WAILe,EAAS,CACbL,UAAW,WACXF,SAAU,GACVJ,SAAU,CACR,CACEL,MAAO,cACPC,IAAK,MAEP,CACED,MAAO,aACPC,IAAK,IACLE,UAAW,KAQXc,EAAsBnB,EAAKoB,QAAQH,EAAM,CAAEN,SAAU,KACrDU,EAAsBrB,EAAKoB,QAAQF,EAAQ,CAAEP,SAAU,KAC7DM,EAAKN,SAASW,KAAKD,GACnBH,EAAOP,SAASW,KAAKH,GAErB,IAAII,EAAc,CAChBtB,EACAK,GAiDF,MA9CA,CACEW,EACAC,EACAC,EACAE,GACAG,QAAQC,IACRA,EAAEd,SAAWc,EAAEd,SAASF,OAAOc,KAGjCA,EAAcA,EAAYd,OAAOQ,EAAMC,GAqChC,CACLQ,KAAM,WACNC,QAAS,CACP,KACA,SACA,OAEFhB,SAAU,CA1CG,CACbE,UAAW,UACXN,SAAU,CACR,CACEL,MAAO,UACPC,IAAK,IACLQ,SAAUY,GAEZ,CACErB,MAAO,uBACPS,SAAU,CACR,CAAET,MAAO,WACT,CACEA,MAAO,IACPC,IAAK,MACLQ,SAAUY,OA6BhBtB,EAvLS,CACXY,UAAW,SACXX,MAAO,mCACPC,IAAK,OACLa,YAAY,GAqLVC,EACAC,EAzBe,CACjBL,UAAW,QACXX,MAAO,SACPS,SAAUY,EACVpB,IAAK,KAnMM,CACXU,UAAW,OACXN,SAAU,CAER,CAAEL,MAAO,iCACT,CAAEA,MAAO,iCAET,CACEA,MAAO,MACPC,IAAK,aAEP,CACED,MAAO,MACPC,IAAK,aAEP,CAAED,MAAO,SACT,CACEA,MAAO,kBAGPS,SAAU,CACR,CACET,MAAO,cACPC,IAAK,WAGTE,UAAW,KA9BO,CACtBH,MAAO,cACPC,IAAK,KA8NHG,EAxLmB,CACrBJ,MAAO,eACPQ,aAAa,EACbC,SAAU,CACR,CACEE,UAAW,SACXX,MAAO,KACPC,IAAK,KACLW,cAAc,EACdE,YAAY,GAEd,CACEH,UAAW,OACXX,MAAO,OACPC,IAAK,IACLW,cAAc,KAmJL,CAEbc,MAAO,UACPhB,MAAO","file":"hl-markdown.e4b97ebe.chunk.worker.js","sourcesContent":["/*\nLanguage: Markdown\nRequires: xml.js\nAuthor: John Crepezzi <john.crepezzi@gmail.com>\nWebsite: https://daringfireball.net/projects/markdown/\nCategory: common, markup\n*/\n\nfunction markdown(hljs) {\n  const regex = hljs.regex;\n  const INLINE_HTML = {\n    begin: /<\\/?[A-Za-z_]/,\n    end: '>',\n    subLanguage: 'xml',\n    relevance: 0\n  };\n  const HORIZONTAL_RULE = {\n    begin: '^[-\\\\*]{3,}',\n    end: '$'\n  };\n  const CODE = {\n    className: 'code',\n    variants: [\n      // TODO: fix to allow these to work with sublanguage also\n      { begin: '(`{3,})[^`](.|\\\\n)*?\\\\1`*[ ]*' },\n      { begin: '(~{3,})[^~](.|\\\\n)*?\\\\1~*[ ]*' },\n      // needed to allow markdown as a sublanguage to work\n      {\n        begin: '```',\n        end: '```+[ ]*$'\n      },\n      {\n        begin: '~~~',\n        end: '~~~+[ ]*$'\n      },\n      { begin: '`.+?`' },\n      {\n        begin: '(?=^( {4}|\\\\t))',\n        // use contains to gobble up multiple lines to allow the block to be whatever size\n        // but only have a single open/close tag vs one per line\n        contains: [\n          {\n            begin: '^( {4}|\\\\t)',\n            end: '(\\\\n)$'\n          }\n        ],\n        relevance: 0\n      }\n    ]\n  };\n  const LIST = {\n    className: 'bullet',\n    begin: '^[ \\t]*([*+-]|(\\\\d+\\\\.))(?=\\\\s+)',\n    end: '\\\\s+',\n    excludeEnd: true\n  };\n  const LINK_REFERENCE = {\n    begin: /^\\[[^\\n]+\\]:/,\n    returnBegin: true,\n    contains: [\n      {\n        className: 'symbol',\n        begin: /\\[/,\n        end: /\\]/,\n        excludeBegin: true,\n        excludeEnd: true\n      },\n      {\n        className: 'link',\n        begin: /:\\s*/,\n        end: /$/,\n        excludeBegin: true\n      }\n    ]\n  };\n  const URL_SCHEME = /[A-Za-z][A-Za-z0-9+.-]*/;\n  const LINK = {\n    variants: [\n      // too much like nested array access in so many languages\n      // to have any real relevance\n      {\n        begin: /\\[.+?\\]\\[.*?\\]/,\n        relevance: 0\n      },\n      // popular internet URLs\n      {\n        begin: /\\[.+?\\]\\(((data|javascript|mailto):|(?:http|ftp)s?:\\/\\/).*?\\)/,\n        relevance: 2\n      },\n      {\n        begin: regex.concat(/\\[.+?\\]\\(/, URL_SCHEME, /:\\/\\/.*?\\)/),\n        relevance: 2\n      },\n      // relative urls\n      {\n        begin: /\\[.+?\\]\\([./?&#].*?\\)/,\n        relevance: 1\n      },\n      // whatever else, lower relevance (might not be a link at all)\n      {\n        begin: /\\[.*?\\]\\(.*?\\)/,\n        relevance: 0\n      }\n    ],\n    returnBegin: true,\n    contains: [\n      {\n        // empty strings for alt or link text\n        match: /\\[(?=\\])/ },\n      {\n        className: 'string',\n        relevance: 0,\n        begin: '\\\\[',\n        end: '\\\\]',\n        excludeBegin: true,\n        returnEnd: true\n      },\n      {\n        className: 'link',\n        relevance: 0,\n        begin: '\\\\]\\\\(',\n        end: '\\\\)',\n        excludeBegin: true,\n        excludeEnd: true\n      },\n      {\n        className: 'symbol',\n        relevance: 0,\n        begin: '\\\\]\\\\[',\n        end: '\\\\]',\n        excludeBegin: true,\n        excludeEnd: true\n      }\n    ]\n  };\n  const BOLD = {\n    className: 'strong',\n    contains: [], // defined later\n    variants: [\n      {\n        begin: /_{2}(?!\\s)/,\n        end: /_{2}/\n      },\n      {\n        begin: /\\*{2}(?!\\s)/,\n        end: /\\*{2}/\n      }\n    ]\n  };\n  const ITALIC = {\n    className: 'emphasis',\n    contains: [], // defined later\n    variants: [\n      {\n        begin: /\\*(?![*\\s])/,\n        end: /\\*/\n      },\n      {\n        begin: /_(?![_\\s])/,\n        end: /_/,\n        relevance: 0\n      }\n    ]\n  };\n\n  // 3 level deep nesting is not allowed because it would create confusion\n  // in cases like `***testing***` because where we don't know if the last\n  // `***` is starting a new bold/italic or finishing the last one\n  const BOLD_WITHOUT_ITALIC = hljs.inherit(BOLD, { contains: [] });\n  const ITALIC_WITHOUT_BOLD = hljs.inherit(ITALIC, { contains: [] });\n  BOLD.contains.push(ITALIC_WITHOUT_BOLD);\n  ITALIC.contains.push(BOLD_WITHOUT_ITALIC);\n\n  let CONTAINABLE = [\n    INLINE_HTML,\n    LINK\n  ];\n\n  [\n    BOLD,\n    ITALIC,\n    BOLD_WITHOUT_ITALIC,\n    ITALIC_WITHOUT_BOLD\n  ].forEach(m => {\n    m.contains = m.contains.concat(CONTAINABLE);\n  });\n\n  CONTAINABLE = CONTAINABLE.concat(BOLD, ITALIC);\n\n  const HEADER = {\n    className: 'section',\n    variants: [\n      {\n        begin: '^#{1,6}',\n        end: '$',\n        contains: CONTAINABLE\n      },\n      {\n        begin: '(?=^.+?\\\\n[=-]{2,}$)',\n        contains: [\n          { begin: '^[=-]*$' },\n          {\n            begin: '^',\n            end: \"\\\\n\",\n            contains: CONTAINABLE\n          }\n        ]\n      }\n    ]\n  };\n\n  const BLOCKQUOTE = {\n    className: 'quote',\n    begin: '^>\\\\s+',\n    contains: CONTAINABLE,\n    end: '$'\n  };\n\n  const ENTITY = {\n    //https://spec.commonmark.org/0.31.2/#entity-references\n    scope: 'literal',\n    match: /&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/\n  };\n\n  return {\n    name: 'Markdown',\n    aliases: [\n      'md',\n      'mkdown',\n      'mkd'\n    ],\n    contains: [\n      HEADER,\n      INLINE_HTML,\n      LIST,\n      BOLD,\n      ITALIC,\n      BLOCKQUOTE,\n      CODE,\n      HORIZONTAL_RULE,\n      LINK,\n      LINK_REFERENCE,\n      ENTITY\n    ]\n  };\n}\n\nmodule.exports = markdown;\n"],"sourceRoot":""}