vue-files-preview-inno
Version:
A tool for previewing files such as doc, excel, pdf, image, markdown, txt, audio, and video and so on.
1 lines • 8.77 kB
Source Map (JSON)
{"version":3,"file":"markdown.mjs","sources":["../../../../../../node_modules/highlight.js/lib/languages/markdown.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"],"names":["markdown","hljs","regex","INLINE_HTML","HORIZONTAL_RULE","CODE","LIST","LINK_REFERENCE","URL_SCHEME","LINK","BOLD","ITALIC","BOLD_WITHOUT_ITALIC","ITALIC_WITHOUT_BOLD","CONTAINABLE","m","markdown_1"],"mappings":"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","x_google_ignoreList":[0]}