{"version":3,"file":"hr.mjs","sources":["../../../../../../node_modules/markdown-it/lib/rules_block/hr.mjs"],"sourcesContent":["// Horizontal rule\n\nimport { isSpace } from '../common/utils.mjs'\n\nexport default function hr (state, startLine, endLine, silent) {\n  const max = state.eMarks[startLine]\n  // if it's indented more than 3 spaces, it should be a code block\n  if (state.sCount[startLine] - state.blkIndent >= 4) { return false }\n\n  let pos = state.bMarks[startLine] + state.tShift[startLine]\n  const marker = state.src.charCodeAt(pos++)\n\n  // Check hr marker\n  if (marker !== 0x2A/* * */ &&\n      marker !== 0x2D/* - */ &&\n      marker !== 0x5F/* _ */) {\n    return false\n  }\n\n  // markers can be mixed with spaces, but there should be at least 3 of them\n\n  let cnt = 1\n  while (pos < max) {\n    const ch = state.src.charCodeAt(pos++)\n    if (ch !== marker && !isSpace(ch)) { return false }\n    if (ch === marker) { cnt++ }\n  }\n\n  if (cnt < 3) { return false }\n\n  if (silent) { return true }\n\n  state.line = startLine + 1\n\n  const token  = state.push('hr', 'hr', 0)\n  token.map    = [startLine, state.line]\n  token.markup = Array(cnt + 1).join(String.fromCharCode(marker))\n\n  return true\n}\n"],"names":["hr","state","startLine","endLine","silent","max","pos","marker","cnt","ch","isSpace","token"],"mappings":";AAIe,SAASA,EAAIC,GAAOC,GAAWC,GAASC,GAAQ;AAC7D,QAAMC,IAAMJ,EAAM,OAAOC,CAAS;AAElC,MAAID,EAAM,OAAOC,CAAS,IAAID,EAAM,aAAa;AAAK,WAAO;AAE7D,MAAIK,IAAML,EAAM,OAAOC,CAAS,IAAID,EAAM,OAAOC,CAAS;AAC1D,QAAMK,IAASN,EAAM,IAAI,WAAWK,GAAK;AAGzC,MAAIC,MAAW,MACXA,MAAW,MACXA,MAAW;AACb,WAAO;AAKT,MAAIC,IAAM;AACV,SAAOF,IAAMD,KAAK;AAChB,UAAMI,IAAKR,EAAM,IAAI,WAAWK,GAAK;AACrC,QAAIG,MAAOF,KAAU,CAACG,EAAQD,CAAE;AAAK,aAAO;AAC5C,IAAIA,MAAOF,KAAUC;AAAA,EACvB;AAEA,MAAIA,IAAM;AAAK,WAAO;AAEtB,MAAIJ;AAAU,WAAO;AAErB,EAAAH,EAAM,OAAOC,IAAY;AAEzB,QAAMS,IAASV,EAAM,KAAK,MAAM,MAAM,CAAC;AACvC,SAAAU,EAAM,MAAS,CAACT,GAAWD,EAAM,IAAI,GACrCU,EAAM,SAAS,MAAMH,IAAM,CAAC,EAAE,KAAK,OAAO,aAAaD,CAAM,CAAC,GAEvD;AACT;","x_google_ignoreList":[0]}