1 |
- {"ast":null,"code":"// Process autolinks '<protocol:...>'\n\n/* eslint max-len:0 */\nconst EMAIL_RE = /^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/;\n/* eslint-disable-next-line no-control-regex */\nconst AUTOLINK_RE = /^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\\x00-\\x20]*)$/;\nexport default function autolink(state, silent) {\n let pos = state.pos;\n if (state.src.charCodeAt(pos) !== 0x3C /* < */) {\n return false;\n }\n const start = state.pos;\n const max = state.posMax;\n for (;;) {\n if (++pos >= max) return false;\n const ch = state.src.charCodeAt(pos);\n if (ch === 0x3C /* < */) return false;\n if (ch === 0x3E /* > */) break;\n }\n const url = state.src.slice(start + 1, pos);\n if (AUTOLINK_RE.test(url)) {\n const fullUrl = state.md.normalizeLink(url);\n if (!state.md.validateLink(fullUrl)) {\n return false;\n }\n if (!silent) {\n const token_o = state.push('link_open', 'a', 1);\n token_o.attrs = [['href', fullUrl]];\n token_o.markup = 'autolink';\n token_o.info = 'auto';\n const token_t = state.push('text', '', 0);\n token_t.content = state.md.normalizeLinkText(url);\n const token_c = state.push('link_close', 'a', -1);\n token_c.markup = 'autolink';\n token_c.info = 'auto';\n }\n state.pos += url.length + 2;\n return true;\n }\n if (EMAIL_RE.test(url)) {\n const fullUrl = state.md.normalizeLink('mailto:' + url);\n if (!state.md.validateLink(fullUrl)) {\n return false;\n }\n if (!silent) {\n const token_o = state.push('link_open', 'a', 1);\n token_o.attrs = [['href', fullUrl]];\n token_o.markup = 'autolink';\n token_o.info = 'auto';\n const token_t = state.push('text', '', 0);\n token_t.content = state.md.normalizeLinkText(url);\n const token_c = state.push('link_close', 'a', -1);\n token_c.markup = 'autolink';\n token_c.info = 'auto';\n }\n state.pos += url.length + 2;\n return true;\n }\n return false;\n}","map":{"version":3,"names":["EMAIL_RE","AUTOLINK_RE","autolink","state","silent","pos","src","charCodeAt","start","max","posMax","ch","url","slice","test","fullUrl","md","normalizeLink","validateLink","token_o","push","attrs","markup","info","token_t","content","normalizeLinkText","token_c","length"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/markdown-it/lib/rules_inline/autolink.mjs"],"sourcesContent":["// Process autolinks '<protocol:...>'\n\n/* eslint max-len:0 */\nconst EMAIL_RE = /^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/\n/* eslint-disable-next-line no-control-regex */\nconst AUTOLINK_RE = /^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\\x00-\\x20]*)$/\n\nexport default function autolink (state, silent) {\n let pos = state.pos\n\n if (state.src.charCodeAt(pos) !== 0x3C/* < */) { return false }\n\n const start = state.pos\n const max = state.posMax\n\n for (;;) {\n if (++pos >= max) return false\n\n const ch = state.src.charCodeAt(pos)\n\n if (ch === 0x3C /* < */) return false\n if (ch === 0x3E /* > */) break\n }\n\n const url = state.src.slice(start + 1, pos)\n\n if (AUTOLINK_RE.test(url)) {\n const fullUrl = state.md.normalizeLink(url)\n if (!state.md.validateLink(fullUrl)) { return false }\n\n if (!silent) {\n const token_o = state.push('link_open', 'a', 1)\n token_o.attrs = [['href', fullUrl]]\n token_o.markup = 'autolink'\n token_o.info = 'auto'\n\n const token_t = state.push('text', '', 0)\n token_t.content = state.md.normalizeLinkText(url)\n\n const token_c = state.push('link_close', 'a', -1)\n token_c.markup = 'autolink'\n token_c.info = 'auto'\n }\n\n state.pos += url.length + 2\n return true\n }\n\n if (EMAIL_RE.test(url)) {\n const fullUrl = state.md.normalizeLink('mailto:' + url)\n if (!state.md.validateLink(fullUrl)) { return false }\n\n if (!silent) {\n const token_o = state.push('link_open', 'a', 1)\n token_o.attrs = [['href', fullUrl]]\n token_o.markup = 'autolink'\n token_o.info = 'auto'\n\n const token_t = state.push('text', '', 0)\n token_t.content = state.md.normalizeLinkText(url)\n\n const token_c = state.push('link_close', 'a', -1)\n token_c.markup = 'autolink'\n token_c.info = 'auto'\n }\n\n state.pos += url.length + 2\n return true\n }\n\n return false\n}\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|