{"version":3,"file":"static/npm.mdast-util-gfm-table.acc16ea9.js","mappings":"0GA4BA,SAASA,EAAKC,GACZC,KAAKF,KAAKC,EACZ,CAEA,SAASE,EAAUF,GACjBC,KAAKE,MAAM,CAACC,KAAM,YAAaC,SAAU,IAAKL,EAChD,CAeA,SAASM,EAAQC,EAAIC,GAEnB,MAAc,MAAPA,EAAaA,EAAKD,CAC3B,CApDAE,EAAQN,MAAQ,CACdO,MAaF,SAAoBV,GAClBC,KAAKE,MAAM,CAACC,KAAM,QAASO,MAAOX,EAAMY,OAAQP,SAAU,IAAKL,GAC/DC,KAAKY,QAAQ,WAAW,EAC1B,EAfEC,UAAWZ,EACXa,YAAab,EACbc,SAoBF,SAAkBhB,GAChBC,KAAKE,MAAM,CAACC,KAAM,WAAYC,SAAU,IAAKL,EAC/C,GApBAS,EAAQV,KAAO,CACbkB,SA+BF,SAAsBjB,GACpB,IAAIkB,EAAQjB,KAAKkB,SAEblB,KAAKmB,QAAQ,aACfF,EAAQA,EAAMZ,QAAQ,aAAcA,IAGtCL,KAAKoB,MAAMpB,KAAKoB,MAAMC,OAAS,GAAGJ,MAAQA,EAC1CjB,KAAKF,KAAKC,EACZ,EAvCEU,MAWF,SAAmBV,GACjBC,KAAKF,KAAKC,GACVC,KAAKY,QAAQ,UACf,EAbEC,UAAWf,EACXgB,YAAahB,EACbiB,SAAUjB,E,kBCXZ,IAAIwB,EAAWC,EAAQ,OACnBC,EAAoBD,EAAQ,OAC5BE,EAAgBF,EAAQ,OAE5BG,EAAOlB,QAEP,SAAoBmB,GAClB,IAAIC,EAAWD,GAAW,CAAC,EACvBE,EAAUD,EAASE,iBACnBC,EAAkBH,EAASI,eAC3BC,EAAeL,EAASK,aACxBC,EAASL,EAAU,IAAM,IAE7B,MAAO,CACLM,OAAQ,CACN,CAACC,UAAW,KAAMC,YAAa,aAC/B,CAACD,UAAW,KAAMC,YAAa,aAG/B,CAACC,SAAS,EAAMF,UAAW,IAAKG,MAAO,WAEvC,CAACH,UAAW,IAAKC,YAAa,aAG9B,CAACC,SAAS,EAAMF,UAAW,IAAKG,MAAO,KAMvC,CAACD,SAAS,EAAMF,UAAW,IAAKG,MAAO,UAEzCC,SAAU,CACR/B,MAOJ,SAAqBgC,EAAMC,EAAGC,GAC5B,OAAOC,EA6BT,SAA2BH,EAAME,GAC/B,IAAIvC,EAAWqC,EAAKrC,SAChByC,GAAS,EACTxB,EAASjB,EAASiB,OAClByB,EAAS,GACTC,EAAUJ,EAAQzC,MAAM,SAE5B,OAAS2C,EAAQxB,GACfyB,EAAOD,GAASG,EAAqB5C,EAASyC,GAAQF,GAKxD,OAFAI,IAEOD,CACT,CA3CuBG,CAAkBR,EAAME,GAAUF,EAAK/B,MAC9D,EARIK,SAaJ,SAAwB0B,EAAMC,EAAGC,GAC/B,IAEI1B,EAAQ2B,EAAc,CAFhBI,EAAqBP,EAAME,KAGrC,OAAO1B,EAAMiC,MAAM,EAAGjC,EAAMkC,QAAQ,MACtC,EAjBIC,UAAWC,EACXC,WAkEJ,SAA6Bb,EAAMc,EAAQZ,GACzC,IAAI1B,EAAQO,EAAkBiB,EAAMc,EAAQZ,IAEA,IAAxCA,EAAQvB,MAAM+B,QAAQ,eACxBlC,EAAQA,EAAMZ,QAAQ,MAAO,SAG/B,OAAOY,CACT,IAxDA,SAASoC,EAAgBZ,EAAMC,EAAGC,GAChC,IAAI7C,EAAO6C,EAAQzC,MAAM,aACrBe,EAAQK,EAASmB,EAAME,EAAS,CAACa,OAAQtB,EAAQK,MAAOL,IAE5D,OADApC,IACOmB,CACT,CAEA,SAAS2B,EAAca,EAAQ/C,GAC7B,OAAOe,EAAcgC,EAAQ,CAC3B/C,MAAOA,EACPqB,gBAAiBA,EACjBF,QAASA,EACTI,aAAcA,GAElB,CAkBA,SAASe,EAAqBP,EAAME,GAOlC,IANA,IAAIvC,EAAWqC,EAAKrC,SAChByC,GAAS,EACTxB,EAASjB,EAASiB,OAClByB,EAAS,GACTC,EAAUJ,EAAQzC,MAAM,cAEnB2C,EAAQxB,GACfyB,EAAOD,GAASQ,EAAgBjD,EAASyC,GAAQJ,EAAME,GAKzD,OAFAI,IAEOD,CACT,CAWF,C","sources":["../node_modules/mdast-util-gfm-table/from-markdown.js","../node_modules/mdast-util-gfm-table/to-markdown.js"],"sourcesContent":["exports.enter = {\n  table: enterTable,\n  tableData: enterCell,\n  tableHeader: enterCell,\n  tableRow: enterRow\n}\nexports.exit = {\n  codeText: exitCodeText,\n  table: exitTable,\n  tableData: exit,\n  tableHeader: exit,\n  tableRow: exit\n}\n\nfunction enterTable(token) {\n  this.enter({type: 'table', align: token._align, children: []}, token)\n  this.setData('inTable', true)\n}\n\nfunction exitTable(token) {\n  this.exit(token)\n  this.setData('inTable')\n}\n\nfunction enterRow(token) {\n  this.enter({type: 'tableRow', children: []}, token)\n}\n\nfunction exit(token) {\n  this.exit(token)\n}\n\nfunction enterCell(token) {\n  this.enter({type: 'tableCell', children: []}, token)\n}\n\n// Overwrite the default code text data handler to unescape escaped pipes when\n// they are in tables.\nfunction exitCodeText(token) {\n  var value = this.resume()\n\n  if (this.getData('inTable')) {\n    value = value.replace(/\\\\([\\\\|])/g, replace)\n  }\n\n  this.stack[this.stack.length - 1].value = value\n  this.exit(token)\n}\n\nfunction replace($0, $1) {\n  // Pipes work, backslashes don’t (but can’t escape pipes).\n  return $1 === '|' ? $1 : $0\n}\n","var phrasing = require('mdast-util-to-markdown/lib/util/container-phrasing')\nvar defaultInlineCode = require('mdast-util-to-markdown/lib/handle/inline-code')\nvar markdownTable = require('markdown-table')\n\nmodule.exports = toMarkdown\n\nfunction toMarkdown(options) {\n  var settings = options || {}\n  var padding = settings.tableCellPadding\n  var alignDelimiters = settings.tablePipeAlign\n  var stringLength = settings.stringLength\n  var around = padding ? ' ' : '|'\n\n  return {\n    unsafe: [\n      {character: '\\r', inConstruct: 'tableCell'},\n      {character: '\\n', inConstruct: 'tableCell'},\n      // A pipe, when followed by a tab or space (padding), or a dash or colon\n      // (unpadded delimiter row), could result in a table.\n      {atBreak: true, character: '|', after: '[\\t :-]'},\n      // A pipe in a cell must be encoded.\n      {character: '|', inConstruct: 'tableCell'},\n      // A colon must be followed by a dash, in which case it could start a\n      // delimiter row.\n      {atBreak: true, character: ':', after: '-'},\n      // A delimiter row can also start with a dash, when followed by more\n      // dashes, a colon, or a pipe.\n      // This is a stricter version than the built in check for lists, thematic\n      // breaks, and setex heading underlines though:\n      // <https://github.com/syntax-tree/mdast-util-to-markdown/blob/51a2038/lib/unsafe.js#L57>\n      {atBreak: true, character: '-', after: '[:|-]'}\n    ],\n    handlers: {\n      table: handleTable,\n      tableRow: handleTableRow,\n      tableCell: handleTableCell,\n      inlineCode: inlineCodeWithTable\n    }\n  }\n\n  function handleTable(node, _, context) {\n    return serializeData(handleTableAsData(node, context), node.align)\n  }\n\n  // This function isn’t really used normally, because we handle rows at the\n  // table level.\n  // But, if someone passes in a table row, this ensures we make somewhat sense.\n  function handleTableRow(node, _, context) {\n    var row = handleTableRowAsData(node, context)\n    // `markdown-table` will always add an align row\n    var value = serializeData([row])\n    return value.slice(0, value.indexOf('\\n'))\n  }\n\n  function handleTableCell(node, _, context) {\n    var exit = context.enter('tableCell')\n    var value = phrasing(node, context, {before: around, after: around})\n    exit()\n    return value\n  }\n\n  function serializeData(matrix, align) {\n    return markdownTable(matrix, {\n      align: align,\n      alignDelimiters: alignDelimiters,\n      padding: padding,\n      stringLength: stringLength\n    })\n  }\n\n  function handleTableAsData(node, context) {\n    var children = node.children\n    var index = -1\n    var length = children.length\n    var result = []\n    var subexit = context.enter('table')\n\n    while (++index < length) {\n      result[index] = handleTableRowAsData(children[index], context)\n    }\n\n    subexit()\n\n    return result\n  }\n\n  function handleTableRowAsData(node, context) {\n    var children = node.children\n    var index = -1\n    var length = children.length\n    var result = []\n    var subexit = context.enter('tableRow')\n\n    while (++index < length) {\n      result[index] = handleTableCell(children[index], node, context)\n    }\n\n    subexit()\n\n    return result\n  }\n\n  function inlineCodeWithTable(node, parent, context) {\n    var value = defaultInlineCode(node, parent, context)\n\n    if (context.stack.indexOf('tableCell') !== -1) {\n      value = value.replace(/\\|/g, '\\\\$&')\n    }\n\n    return value\n  }\n}\n"],"names":["exit","token","this","enterCell","enter","type","children","replace","$0","$1","exports","table","align","_align","setData","tableData","tableHeader","tableRow","codeText","value","resume","getData","stack","length","phrasing","require","defaultInlineCode","markdownTable","module","options","settings","padding","tableCellPadding","alignDelimiters","tablePipeAlign","stringLength","around","unsafe","character","inConstruct","atBreak","after","handlers","node","_","context","serializeData","index","result","subexit","handleTableRowAsData","handleTableAsData","slice","indexOf","tableCell","handleTableCell","inlineCode","parent","before","matrix"],"sourceRoot":""}