{"version":3,"file":"static/npm.mdast-util-find-and-replace.a65ebbdd.js","mappings":"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","sources":["../node_modules/mdast-util-find-and-replace/index.js","../node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp/index.js","../node_modules/mdast-util-find-and-replace/node_modules/unist-util-visit-parents/color.browser.js","../node_modules/mdast-util-find-and-replace/node_modules/unist-util-visit-parents/index.js"],"sourcesContent":["'use strict'\n\nmodule.exports = findAndReplace\n\nvar visit = require('unist-util-visit-parents')\nvar convert = require('unist-util-is/convert')\nvar escape = require('escape-string-regexp')\n\nvar splice = [].splice\n\nfunction findAndReplace(tree, find, replace, options) {\n  var settings\n  var schema\n\n  if (typeof find === 'string' || (find && typeof find.exec === 'function')) {\n    schema = [[find, replace]]\n  } else {\n    schema = find\n    options = replace\n  }\n\n  settings = options || {}\n\n  search(tree, settings, handlerFactory(toPairs(schema)))\n\n  return tree\n\n  function handlerFactory(pairs) {\n    var pair = pairs[0]\n\n    return handler\n\n    function handler(node, parent) {\n      var find = pair[0]\n      var replace = pair[1]\n      var nodes = []\n      var start = 0\n      var index = parent.children.indexOf(node)\n      var position\n      var match\n      var subhandler\n      var value\n\n      find.lastIndex = 0\n\n      match = find.exec(node.value)\n\n      while (match) {\n        position = match.index\n        value = replace.apply(\n          null,\n          [].concat(match, {index: match.index, input: match.input})\n        )\n\n        if (value !== false) {\n          if (start !== position) {\n            nodes.push({type: 'text', value: node.value.slice(start, position)})\n          }\n\n          if (typeof value === 'string' && value.length > 0) {\n            value = {type: 'text', value: value}\n          }\n\n          if (value) {\n            nodes = [].concat(nodes, value)\n          }\n\n          start = position + match[0].length\n        }\n\n        if (!find.global) {\n          break\n        }\n\n        match = find.exec(node.value)\n      }\n\n      if (position === undefined) {\n        nodes = [node]\n        index--\n      } else {\n        if (start < node.value.length) {\n          nodes.push({type: 'text', value: node.value.slice(start)})\n        }\n\n        nodes.unshift(index, 1)\n        splice.apply(parent.children, nodes)\n      }\n\n      if (pairs.length > 1) {\n        subhandler = handlerFactory(pairs.slice(1))\n        position = -1\n\n        while (++position < nodes.length) {\n          node = nodes[position]\n\n          if (node.type === 'text') {\n            subhandler(node, parent)\n          } else {\n            search(node, settings, subhandler)\n          }\n        }\n      }\n\n      return index + nodes.length + 1\n    }\n  }\n}\n\nfunction search(tree, settings, handler) {\n  var ignored = convert(settings.ignore || [])\n  var result = []\n\n  visit(tree, 'text', visitor)\n\n  return result\n\n  function visitor(node, parents) {\n    var index = -1\n    var parent\n    var grandparent\n\n    while (++index < parents.length) {\n      parent = parents[index]\n\n      if (\n        ignored(\n          parent,\n          grandparent ? grandparent.children.indexOf(parent) : undefined,\n          grandparent\n        )\n      ) {\n        return\n      }\n\n      grandparent = parent\n    }\n\n    return handler(node, grandparent)\n  }\n}\n\nfunction toPairs(schema) {\n  var result = []\n  var key\n  var index\n\n  if (typeof schema !== 'object') {\n    throw new Error('Expected array or object as schema')\n  }\n\n  if ('length' in schema) {\n    index = -1\n\n    while (++index < schema.length) {\n      result.push([\n        toExpression(schema[index][0]),\n        toFunction(schema[index][1])\n      ])\n    }\n  } else {\n    for (key in schema) {\n      result.push([toExpression(key), toFunction(schema[key])])\n    }\n  }\n\n  return result\n}\n\nfunction toExpression(find) {\n  return typeof find === 'string' ? new RegExp(escape(find), 'g') : find\n}\n\nfunction toFunction(replace) {\n  return typeof replace === 'function' ? replace : returner\n\n  function returner() {\n    return replace\n  }\n}\n","'use strict';\n\nmodule.exports = string => {\n\tif (typeof string !== 'string') {\n\t\tthrow new TypeError('Expected a string');\n\t}\n\n\t// Escape characters with special meaning either inside or outside character sets.\n\t// Use a simple backslash escape when it’s always valid, and a \\unnnn escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar.\n\treturn string\n\t\t.replace(/[|\\\\{}()[\\]^$+*?.]/g, '\\\\$&')\n\t\t.replace(/-/g, '\\\\x2d');\n};\n","module.exports = identity\nfunction identity(d) {\n  return d\n}\n","'use strict'\n\nmodule.exports = visitParents\n\nvar convert = require('unist-util-is/convert')\nvar color = require('./color')\n\nvar CONTINUE = true\nvar SKIP = 'skip'\nvar EXIT = false\n\nvisitParents.CONTINUE = CONTINUE\nvisitParents.SKIP = SKIP\nvisitParents.EXIT = EXIT\n\nfunction visitParents(tree, test, visitor, reverse) {\n  var step\n  var is\n\n  if (typeof test === 'function' && typeof visitor !== 'function') {\n    reverse = visitor\n    visitor = test\n    test = null\n  }\n\n  is = convert(test)\n  step = reverse ? -1 : 1\n\n  factory(tree, null, [])()\n\n  function factory(node, index, parents) {\n    var value = typeof node === 'object' && node !== null ? node : {}\n    var name\n\n    if (typeof value.type === 'string') {\n      name =\n        typeof value.tagName === 'string'\n          ? value.tagName\n          : typeof value.name === 'string'\n          ? value.name\n          : undefined\n\n      visit.displayName =\n        'node (' + color(value.type + (name ? '<' + name + '>' : '')) + ')'\n    }\n\n    return visit\n\n    function visit() {\n      var grandparents = parents.concat(node)\n      var result = []\n      var subresult\n      var offset\n\n      if (!test || is(node, index, parents[parents.length - 1] || null)) {\n        result = toResult(visitor(node, parents))\n\n        if (result[0] === EXIT) {\n          return result\n        }\n      }\n\n      if (node.children && result[0] !== SKIP) {\n        offset = (reverse ? node.children.length : -1) + step\n\n        while (offset > -1 && offset < node.children.length) {\n          subresult = factory(node.children[offset], offset, grandparents)()\n\n          if (subresult[0] === EXIT) {\n            return subresult\n          }\n\n          offset =\n            typeof subresult[1] === 'number' ? subresult[1] : offset + step\n        }\n      }\n\n      return result\n    }\n  }\n}\n\nfunction toResult(value) {\n  if (value !== null && typeof value === 'object' && 'length' in value) {\n    return value\n  }\n\n  if (typeof value === 'number') {\n    return [CONTINUE, value]\n  }\n\n  return [value]\n}\n"],"names":["module","exports","tree","find","replace","options","settings","schema","exec","search","handlerFactory","pairs","pair","handler","node","parent","position","match","subhandler","value","nodes","start","index","children","indexOf","lastIndex","apply","concat","input","push","type","slice","length","global","undefined","unshift","splice","key","result","Error","toExpression","toFunction","toPairs","visit","require","convert","escape","ignored","ignore","parents","grandparent","RegExp","string","TypeError","d","visitParents","color","CONTINUE","SKIP","EXIT","test","visitor","reverse","step","is","factory","name","tagName","displayName","subresult","offset","grandparents","toResult"],"sourceRoot":""}