{"version":3,"file":"parse_link_destination.mjs","sources":["../../../../../../node_modules/markdown-it/lib/helpers/parse_link_destination.mjs"],"sourcesContent":["// Parse link destination\n//\n\nimport { unescapeAll } from '../common/utils.mjs'\n\nexport default function parseLinkDestination (str, start, max) {\n  let code\n  let pos = start\n\n  const result = {\n    ok: false,\n    pos: 0,\n    str: ''\n  }\n\n  if (str.charCodeAt(pos) === 0x3C /* < */) {\n    pos++\n    while (pos < max) {\n      code = str.charCodeAt(pos)\n      if (code === 0x0A /* \\n */) { return result }\n      if (code === 0x3C /* < */) { return result }\n      if (code === 0x3E /* > */) {\n        result.pos = pos + 1\n        result.str = unescapeAll(str.slice(start + 1, pos))\n        result.ok = true\n        return result\n      }\n      if (code === 0x5C /* \\ */ && pos + 1 < max) {\n        pos += 2\n        continue\n      }\n\n      pos++\n    }\n\n    // no closing '>'\n    return result\n  }\n\n  // this should be ... } else { ... branch\n\n  let level = 0\n  while (pos < max) {\n    code = str.charCodeAt(pos)\n\n    if (code === 0x20) { break }\n\n    // ascii control characters\n    if (code < 0x20 || code === 0x7F) { break }\n\n    if (code === 0x5C /* \\ */ && pos + 1 < max) {\n      if (str.charCodeAt(pos + 1) === 0x20) { break }\n      pos += 2\n      continue\n    }\n\n    if (code === 0x28 /* ( */) {\n      level++\n      if (level > 32) { return result }\n    }\n\n    if (code === 0x29 /* ) */) {\n      if (level === 0) { break }\n      level--\n    }\n\n    pos++\n  }\n\n  if (start === pos) { return result }\n  if (level !== 0) { return result }\n\n  result.str = unescapeAll(str.slice(start, pos))\n  result.pos = pos\n  result.ok = true\n  return result\n}\n"],"names":["parseLinkDestination","str","start","max","code","pos","result","unescapeAll","level"],"mappings":";AAKe,SAASA,EAAsBC,GAAKC,GAAOC,GAAK;AAC7D,MAAIC,GACAC,IAAMH;AAEV,QAAMI,IAAS;AAAA,IACb,IAAI;AAAA,IACJ,KAAK;AAAA,IACL,KAAK;AAAA,EACT;AAEE,MAAIL,EAAI,WAAWI,CAAG,MAAM,IAAc;AAExC,SADAA,KACOA,IAAMF,KAAK;AAGhB,UAFAC,IAAOH,EAAI,WAAWI,CAAG,GACrBD,MAAS,MACTA,MAAS;AAAgB,eAAOE;AACpC,UAAIF,MAAS;AACX,eAAAE,EAAO,MAAMD,IAAM,GACnBC,EAAO,MAAMC,EAAYN,EAAI,MAAMC,IAAQ,GAAGG,CAAG,CAAC,GAClDC,EAAO,KAAK,IACLA;AAET,UAAIF,MAAS,MAAgBC,IAAM,IAAIF,GAAK;AAC1C,QAAAE,KAAO;AACP;AAAA,MACF;AAEA,MAAAA;AAAA,IACF;AAGA,WAAOC;AAAA,EACT;AAIA,MAAIE,IAAQ;AACZ,SAAOH,IAAMF,MACXC,IAAOH,EAAI,WAAWI,CAAG,GAErB,EAAAD,MAAS,MAGTA,IAAO,MAAQA,MAAS,SANZ;AAQhB,QAAIA,MAAS,MAAgBC,IAAM,IAAIF,GAAK;AAC1C,UAAIF,EAAI,WAAWI,IAAM,CAAC,MAAM;AAAQ;AACxC,MAAAA,KAAO;AACP;AAAA,IACF;AAEA,QAAID,MAAS,OACXI,KACIA,IAAQ;AAAM,aAAOF;AAG3B,QAAIF,MAAS,IAAc;AACzB,UAAII,MAAU;AAAK;AACnB,MAAAA;AAAA,IACF;AAEA,IAAAH;AAAA,EACF;AAGA,SADIH,MAAUG,KACVG,MAAU,MAEdF,EAAO,MAAMC,EAAYN,EAAI,MAAMC,GAAOG,CAAG,CAAC,GAC9CC,EAAO,MAAMD,GACbC,EAAO,KAAK,KACLA;AACT;","x_google_ignoreList":[0]}