{"version":3,"sources":["webpack:///text/node_modules/highlight.js/lib/languages/asciidoc.js"],"names":["concat","args","map","x","source","re","join","module","exports","hljs","STRONG","className","begin","relevance","EMPHASIS","end","contains","name","aliases","COMMENT","variants","excludeEnd","subLanguage","returnBegin","excludeBegin"],"mappings":"0FAoBA,SAASA,KAAUC,GAEjB,OADeA,EAAKC,KAAKC,IAAMC,OAZjBC,EAYwBF,GAVpB,iBAAPE,EAAwBA,EAE5BA,EAAGD,OAHM,KADlB,IAAgBC,KAY4BC,KAAK,IAyRjDC,EAAOC,QA3QP,SAAkBC,GAChB,MA2BMC,EAAS,CAEb,CACEC,UAAW,SACXC,MAAO,uBAGT,CACED,UAAW,SACXC,MAAOZ,EACL,OACA,oCACA,+BACA,QAEFa,UAAW,GAGb,CACEF,UAAW,SAEXC,MAAO,gCAGT,CACED,UAAW,SAEXC,MAAO,iCAGLE,EAAW,CAEf,CACEH,UAAW,WACXC,MAAO,qBAGT,CACED,UAAW,WACXC,MAAOZ,EACL,KACA,kCACA,6BACA,MAEFa,UAAW,GAGb,CACEF,UAAW,WAEXC,MAAO,8BAGT,CACED,UAAW,WAEXC,MAAO,8BAGT,CACED,UAAW,WAEXC,MAAO,iBACPG,IAAK,aAELC,SAAU,CAAC,CACTJ,MAAO,WACPC,UAAW,IAEbA,UAAW,IAaf,MAAO,CACLI,KAAM,WACNC,QAAS,CAAC,QACVF,SAAU,CAERP,EAAKU,QACH,YACA,YAIA,CACEN,UAAW,KAIfJ,EAAKU,QACH,MACA,IACA,CACEN,UAAW,IAIf,CACEF,UAAW,QACXC,MAAO,cAGT,CACEA,MAAO,iBACPG,IAAK,kBACLF,UAAW,IAGb,CACEF,UAAW,UACXE,UAAW,GACXO,SAAU,CACR,CACER,MAAO,iCAET,CACEA,MAAO,0CAKb,CACED,UAAW,OACXC,MAAO,SACPG,IAAK,MACLM,YAAY,EACZR,UAAW,IAGb,CACEF,UAAW,OACXC,MAAO,cACPC,UAAW,GAGb,CACEF,UAAW,QACXC,MAAO,YACPG,IAAK,YACLF,UAAW,IAGb,CACEF,UAAW,OACXC,MAAO,mBACPG,IAAK,mBACLF,UAAW,IAGb,CACED,MAAO,cACPG,IAAK,cACLC,SAAU,CAAC,CACTJ,MAAO,IACPG,IAAK,IACLO,YAAa,MACbT,UAAW,IAEbA,UAAW,IA1FG,CAClBF,UAAW,SACXC,MAAO,kCAPU,CACjBD,UAAW,SACXC,MAAO,6CACPC,UAAW,IAjGX,CACED,MAAO,WAKT,CACEA,MAAO,yBAET,CACEA,MAAO,sBAET,CACEA,MAAO,sBAIT,CACEA,MAAO,0BAiLJF,KACAI,EAGH,CACEH,UAAW,SACXS,SAAU,CACR,CACER,MAAO,WAET,CACEA,MAAO,WAKb,CACED,UAAW,OACXC,MAAO,OACPG,IAAK,gBAGP,CACEJ,UAAW,OACXC,MAAO,oBACPC,UAAW,GAGb,CACEF,UAAW,OACXC,MAAO,UACPG,IAAK,IACLF,UAAW,GAzOO,CACtBD,MAAO,iBACPC,UAAW,IA2OT,CACED,MAAO,8DACPW,aAAa,EACbP,SAAU,CACR,CACEJ,MAAO,kBACPC,UAAW,GAEb,CACEF,UAAW,OACXC,MAAO,MACPG,IAAK,UACLF,UAAW,GAEb,CACEF,UAAW,SACXC,MAAO,MACPG,IAAK,MACLS,cAAc,EACdH,YAAY,EACZR,UAAW,IAGfA,UAAW","file":"highlight/asciidoc.js?v=f679f13a781e7a4f1347","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\n return re.source;\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/*\nLanguage: AsciiDoc\nRequires: xml.js\nAuthor: Dan Allen \nWebsite: http://asciidoc.org\nDescription: A semantic, text-based document format that can be exported to HTML, DocBook and other backends.\nCategory: markup\n*/\n\n/** @type LanguageFn */\nfunction asciidoc(hljs) {\n const HORIZONTAL_RULE = {\n begin: '^\\'{3,}[ \\\\t]*$',\n relevance: 10\n };\n const ESCAPED_FORMATTING = [\n // escaped constrained formatting marks (i.e., \\* \\_ or \\`)\n {\n begin: /\\\\[*_`]/\n },\n // escaped unconstrained formatting marks (i.e., \\\\** \\\\__ or \\\\``)\n // must ignore until the next formatting marks\n // this rule might not be 100% compliant with Asciidoctor 2.0 but we are entering undefined behavior territory...\n {\n begin: /\\\\\\\\\\*{2}[^\\n]*?\\*{2}/\n },\n {\n begin: /\\\\\\\\_{2}[^\\n]*_{2}/\n },\n {\n begin: /\\\\\\\\`{2}[^\\n]*`{2}/\n },\n // guard: constrained formatting mark may not be preceded by \":\", \";\" or\n // \"}\". match these so the constrained rule doesn't see them\n {\n begin: /[:;}][*_`](?![*_`])/\n }\n ];\n const STRONG = [\n // inline unconstrained strong (single line)\n {\n className: 'strong',\n begin: /\\*{2}([^\\n]+?)\\*{2}/\n },\n // inline unconstrained strong (multi-line)\n {\n className: 'strong',\n begin: concat(\n /\\*\\*/,\n /((\\*(?!\\*)|\\\\[^\\n]|[^*\\n\\\\])+\\n)+/,\n /(\\*(?!\\*)|\\\\[^\\n]|[^*\\n\\\\])*/,\n /\\*\\*/\n ),\n relevance: 0\n },\n // inline constrained strong (single line)\n {\n className: 'strong',\n // must not precede or follow a word character\n begin: /\\B\\*(\\S|\\S[^\\n]*?\\S)\\*(?!\\w)/\n },\n // inline constrained strong (multi-line)\n {\n className: 'strong',\n // must not precede or follow a word character\n begin: /\\*[^\\s]([^\\n]+\\n)+([^\\n]+)\\*/\n }\n ];\n const EMPHASIS = [\n // inline unconstrained emphasis (single line)\n {\n className: 'emphasis',\n begin: /_{2}([^\\n]+?)_{2}/\n },\n // inline unconstrained emphasis (multi-line)\n {\n className: 'emphasis',\n begin: concat(\n /__/,\n /((_(?!_)|\\\\[^\\n]|[^_\\n\\\\])+\\n)+/,\n /(_(?!_)|\\\\[^\\n]|[^_\\n\\\\])*/,\n /__/\n ),\n relevance: 0\n },\n // inline constrained emphasis (single line)\n {\n className: 'emphasis',\n // must not precede or follow a word character\n begin: /\\b_(\\S|\\S[^\\n]*?\\S)_(?!\\w)/\n },\n // inline constrained emphasis (multi-line)\n {\n className: 'emphasis',\n // must not precede or follow a word character\n begin: /_[^\\s]([^\\n]+\\n)+([^\\n]+)_/\n },\n // inline constrained emphasis using single quote (legacy)\n {\n className: 'emphasis',\n // must not follow a word character or be followed by a single quote or space\n begin: '\\\\B\\'(?![\\'\\\\s])',\n end: '(\\\\n{2}|\\')',\n // allow escaped single quote followed by word char\n contains: [{\n begin: '\\\\\\\\\\'\\\\w',\n relevance: 0\n }],\n relevance: 0\n }\n ];\n const ADMONITION = {\n className: 'symbol',\n begin: '^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\\\s+',\n relevance: 10\n };\n const BULLET_LIST = {\n className: 'bullet',\n begin: '^(\\\\*+|-+|\\\\.+|[^\\\\n]+?::)\\\\s+'\n };\n\n return {\n name: 'AsciiDoc',\n aliases: ['adoc'],\n contains: [\n // block comment\n hljs.COMMENT(\n '^/{4,}\\\\n',\n '\\\\n/{4,}$',\n // can also be done as...\n // '^/{4,}$',\n // '^/{4,}$',\n {\n relevance: 10\n }\n ),\n // line comment\n hljs.COMMENT(\n '^//',\n '$',\n {\n relevance: 0\n }\n ),\n // title\n {\n className: 'title',\n begin: '^\\\\.\\\\w.*$'\n },\n // example, admonition & sidebar blocks\n {\n begin: '^[=\\\\*]{4,}\\\\n',\n end: '\\\\n^[=\\\\*]{4,}$',\n relevance: 10\n },\n // headings\n {\n className: 'section',\n relevance: 10,\n variants: [\n {\n begin: '^(={1,6})[ \\t].+?([ \\t]\\\\1)?$'\n },\n {\n begin: '^[^\\\\[\\\\]\\\\n]+?\\\\n[=\\\\-~\\\\^\\\\+]{2,}$'\n }\n ]\n },\n // document attributes\n {\n className: 'meta',\n begin: '^:.+?:',\n end: '\\\\s',\n excludeEnd: true,\n relevance: 10\n },\n // block attributes\n {\n className: 'meta',\n begin: '^\\\\[.+?\\\\]$',\n relevance: 0\n },\n // quoteblocks\n {\n className: 'quote',\n begin: '^_{4,}\\\\n',\n end: '\\\\n_{4,}$',\n relevance: 10\n },\n // listing and literal blocks\n {\n className: 'code',\n begin: '^[\\\\-\\\\.]{4,}\\\\n',\n end: '\\\\n[\\\\-\\\\.]{4,}$',\n relevance: 10\n },\n // passthrough blocks\n {\n begin: '^\\\\+{4,}\\\\n',\n end: '\\\\n\\\\+{4,}$',\n contains: [{\n begin: '<',\n end: '>',\n subLanguage: 'xml',\n relevance: 0\n }],\n relevance: 10\n },\n\n BULLET_LIST,\n ADMONITION,\n ...ESCAPED_FORMATTING,\n ...STRONG,\n ...EMPHASIS,\n\n // inline smart quotes\n {\n className: 'string',\n variants: [\n {\n begin: \"``.+?''\"\n },\n {\n begin: \"`.+?'\"\n }\n ]\n },\n // inline unconstrained emphasis\n {\n className: 'code',\n begin: /`{2}/,\n end: /(\\n{2}|`{2})/\n },\n // inline code snippets (TODO should get same treatment as strong and emphasis)\n {\n className: 'code',\n begin: '(`.+?`|\\\\+.+?\\\\+)',\n relevance: 0\n },\n // indented literal block\n {\n className: 'code',\n begin: '^[ \\\\t]',\n end: '$',\n relevance: 0\n },\n HORIZONTAL_RULE,\n // images and links\n {\n begin: '(link:)?(http|https|ftp|file|irc|image:?):\\\\S+?\\\\[[^[]*?\\\\]',\n returnBegin: true,\n contains: [\n {\n begin: '(link|image:?):',\n relevance: 0\n },\n {\n className: 'link',\n begin: '\\\\w',\n end: '[^\\\\[]+',\n relevance: 0\n },\n {\n className: 'string',\n begin: '\\\\[',\n end: '\\\\]',\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0\n }\n ],\n relevance: 10\n }\n ]\n };\n}\n\nmodule.exports = asciidoc;\n"],"sourceRoot":""}