{"version":3,"sources":["jsdelivr-header.js","/npm/markmap-autoloader@0.18.12/dist/index.js"],"names":[],"mappings":"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","file":"/npm/markmap-autoloader@0.18.12/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/markmap-autoloader@0.18.12/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","this.markmap = this.markmap || {};\n(function(exports) {\n  \"use strict\";\n  var _a;\n  const testPath = \"npm2url/dist/index.cjs\";\n  const defaultProviders = {\n    jsdelivr: (path) => `https://cdn.jsdelivr.net/npm/${path}`,\n    unpkg: (path) => `https://unpkg.com/${path}`\n  };\n  async function checkUrl(url, signal) {\n    const res = await fetch(url, {\n      signal\n    });\n    if (!res.ok) {\n      throw res;\n    }\n    await res.text();\n  }\n  class UrlBuilder {\n    constructor() {\n      this.providers = { ...defaultProviders };\n      this.provider = \"jsdelivr\";\n    }\n    /**\n     * Get the fastest provider name.\n     * If none of the providers returns a valid response within `timeout`, an error will be thrown.\n     */\n    async getFastestProvider(timeout = 5e3, path = testPath) {\n      const controller = new AbortController();\n      let timer = 0;\n      try {\n        return await new Promise((resolve, reject) => {\n          Promise.all(\n            Object.entries(this.providers).map(async ([name, factory]) => {\n              try {\n                await checkUrl(factory(path), controller.signal);\n                resolve(name);\n              } catch {\n              }\n            })\n          ).then(() => reject(new Error(\"All providers failed\")));\n          timer = setTimeout(reject, timeout, new Error(\"Timed out\"));\n        });\n      } finally {\n        controller.abort();\n        clearTimeout(timer);\n      }\n    }\n    /**\n     * Set the current provider to the fastest provider found by `getFastestProvider`.\n     */\n    async findFastestProvider(timeout, path) {\n      this.provider = await this.getFastestProvider(timeout, path);\n      return this.provider;\n    }\n    setProvider(name, factory) {\n      if (factory) {\n        this.providers[name] = factory;\n      } else {\n        delete this.providers[name];\n      }\n    }\n    getFullUrl(path, provider = this.provider) {\n      if (path.includes(\"://\")) {\n        return path;\n      }\n      const factory = this.providers[provider];\n      if (!factory) {\n        throw new Error(`Provider ${provider} not found`);\n      }\n      return factory(path);\n    }\n  }\n  const urlBuilder = new UrlBuilder();\n  Math.random().toString(36).slice(2, 8);\n  function defer() {\n    const obj = {};\n    obj.promise = new Promise((resolve, reject) => {\n      obj.resolve = resolve;\n      obj.reject = reject;\n    });\n    return obj;\n  }\n  function memoize(fn) {\n    const cache = {};\n    return function memoized(...args) {\n      const key = `${args[0]}`;\n      let data = cache[key];\n      if (!data) {\n        data = {\n          value: fn(...args)\n        };\n        cache[key] = data;\n      }\n      return data.value;\n    };\n  }\n  /*! @gera2ld/jsx-dom v2.2.2 | ISC License */\n  const VTYPE_ELEMENT = 1;\n  const VTYPE_FUNCTION = 2;\n  const SVG_NS = \"http://www.w3.org/2000/svg\";\n  const XLINK_NS = \"http://www.w3.org/1999/xlink\";\n  const NS_ATTRS = {\n    show: XLINK_NS,\n    actuate: XLINK_NS,\n    href: XLINK_NS\n  };\n  const isLeaf = (c) => typeof c === \"string\" || typeof c === \"number\";\n  const isElement = (c) => (c == null ? void 0 : c.vtype) === VTYPE_ELEMENT;\n  const isRenderFunction = (c) => (c == null ? void 0 : c.vtype) === VTYPE_FUNCTION;\n  function h(type, props, ...children) {\n    props = Object.assign({}, props, {\n      children: children.length === 1 ? children[0] : children\n    });\n    return jsx(type, props);\n  }\n  function jsx(type, props) {\n    let vtype;\n    if (typeof type === \"string\") vtype = VTYPE_ELEMENT;\n    else if (typeof type === \"function\") vtype = VTYPE_FUNCTION;\n    else throw new Error(\"Invalid VNode type\");\n    return {\n      vtype,\n      type,\n      props\n    };\n  }\n  function Fragment(props) {\n    return props.children;\n  }\n  const DEFAULT_ENV = {\n    isSvg: false\n  };\n  function insertDom(parent, nodes) {\n    if (!Array.isArray(nodes)) nodes = [nodes];\n    nodes = nodes.filter(Boolean);\n    if (nodes.length) parent.append(...nodes);\n  }\n  function mountAttributes(domElement, props, env) {\n    for (const key in props) {\n      if (key === \"key\" || key === \"children\" || key === \"ref\") continue;\n      if (key === \"dangerouslySetInnerHTML\") {\n        domElement.innerHTML = props[key].__html;\n      } else if (key === \"innerHTML\" || key === \"textContent\" || key === \"innerText\" || key === \"value\" && [\"textarea\", \"select\"].includes(domElement.tagName)) {\n        const value = props[key];\n        if (value != null) domElement[key] = value;\n      } else if (key.startsWith(\"on\")) {\n        domElement[key.toLowerCase()] = props[key];\n      } else {\n        setDOMAttribute(domElement, key, props[key], env.isSvg);\n      }\n    }\n  }\n  const attrMap = {\n    className: \"class\",\n    labelFor: \"for\"\n  };\n  function setDOMAttribute(el, attr, value, isSVG) {\n    attr = attrMap[attr] || attr;\n    if (value === true) {\n      el.setAttribute(attr, \"\");\n    } else if (value === false) {\n      el.removeAttribute(attr);\n    } else {\n      const namespace = isSVG ? NS_ATTRS[attr] : void 0;\n      if (namespace !== void 0) {\n        el.setAttributeNS(namespace, attr, value);\n      } else {\n        el.setAttribute(attr, value);\n      }\n    }\n  }\n  function flatten(arr) {\n    return arr.reduce((prev, item) => prev.concat(item), []);\n  }\n  function mountChildren(children, env) {\n    return Array.isArray(children) ? flatten(children.map((child) => mountChildren(child, env))) : mount(children, env);\n  }\n  function mount(vnode, env = DEFAULT_ENV) {\n    if (vnode == null || typeof vnode === \"boolean\") {\n      return null;\n    }\n    if (vnode instanceof Node) {\n      return vnode;\n    }\n    if (isRenderFunction(vnode)) {\n      const {\n        type,\n        props\n      } = vnode;\n      if (type === Fragment) {\n        const node = document.createDocumentFragment();\n        if (props.children) {\n          const children = mountChildren(props.children, env);\n          insertDom(node, children);\n        }\n        return node;\n      }\n      const childVNode = type(props);\n      return mount(childVNode, env);\n    }\n    if (isLeaf(vnode)) {\n      return document.createTextNode(`${vnode}`);\n    }\n    if (isElement(vnode)) {\n      let node;\n      const {\n        type,\n        props\n      } = vnode;\n      if (!env.isSvg && type === \"svg\") {\n        env = Object.assign({}, env, {\n          isSvg: true\n        });\n      }\n      if (!env.isSvg) {\n        node = document.createElement(type);\n      } else {\n        node = document.createElementNS(SVG_NS, type);\n      }\n      mountAttributes(node, props, env);\n      if (props.children) {\n        let childEnv = env;\n        if (env.isSvg && type === \"foreignObject\") {\n          childEnv = Object.assign({}, childEnv, {\n            isSvg: false\n          });\n        }\n        const children = mountChildren(props.children, childEnv);\n        if (children != null) insertDom(node, children);\n      }\n      const {\n        ref\n      } = props;\n      if (typeof ref === \"function\") ref(node);\n      return node;\n    }\n    throw new Error(\"mount: Invalid Vnode!\");\n  }\n  function mountDom(vnode) {\n    return mount(vnode);\n  }\n  function hm(...args) {\n    return mountDom(h(...args));\n  }\n  const memoizedPreloadJS = memoize((url) => {\n    document.head.append(\n      hm(\"link\", {\n        rel: \"preload\",\n        as: \"script\",\n        href: url\n      })\n    );\n  });\n  const jsCache = {};\n  const cssCache = {};\n  async function loadJSItem(item, context) {\n    var _a2;\n    const src = item.type === \"script\" && ((_a2 = item.data) == null ? void 0 : _a2.src) || \"\";\n    item.loaded || (item.loaded = jsCache[src]);\n    if (!item.loaded) {\n      const deferred = defer();\n      item.loaded = deferred.promise;\n      if (item.type === \"script\") {\n        document.head.append(\n          hm(\"script\", {\n            ...item.data,\n            onLoad: () => deferred.resolve(),\n            onError: deferred.reject\n          })\n        );\n        if (!src) {\n          deferred.resolve();\n        } else {\n          jsCache[src] = item.loaded;\n        }\n      }\n      if (item.type === \"iife\") {\n        const { fn, getParams } = item.data;\n        fn(...(getParams == null ? void 0 : getParams(context)) || []);\n        deferred.resolve();\n      }\n    }\n    await item.loaded;\n  }\n  async function loadCSSItem(item) {\n    const url = item.type === \"stylesheet\" && item.data.href || \"\";\n    item.loaded || (item.loaded = cssCache[url]);\n    if (!item.loaded) {\n      const deferred = defer();\n      item.loaded = deferred.promise;\n      if (url) cssCache[url] = item.loaded;\n      if (item.type === \"style\") {\n        document.head.append(\n          hm(\"style\", {\n            textContent: item.data\n          })\n        );\n        deferred.resolve();\n      } else if (url) {\n        document.head.append(\n          hm(\"link\", {\n            rel: \"stylesheet\",\n            ...item.data\n          })\n        );\n        fetch(url).then((res) => {\n          if (res.ok) return res.text();\n          throw res;\n        }).then(() => deferred.resolve(), deferred.reject);\n      }\n    }\n    await item.loaded;\n  }\n  async function loadJS(items, context) {\n    items.forEach((item) => {\n      var _a2;\n      if (item.type === \"script\" && ((_a2 = item.data) == null ? void 0 : _a2.src)) {\n        memoizedPreloadJS(item.data.src);\n      }\n    });\n    context = {\n      getMarkmap: () => window.markmap,\n      ...context\n    };\n    for (const item of items) {\n      await loadJSItem(item, context);\n    }\n  }\n  async function loadCSS(items) {\n    await Promise.all(items.map((item) => loadCSSItem(item)));\n  }\n  function buildJSItem(path) {\n    return {\n      type: \"script\",\n      data: {\n        src: path\n      }\n    };\n  }\n  function buildCSSItem(path) {\n    return {\n      type: \"stylesheet\",\n      data: {\n        href: path\n      }\n    };\n  }\n  const enabled = {};\n  const autoLoaderOptions = {\n    baseJs: [\n      `d3@${\"7.9.0\"}`,\n      `markmap-lib@${\"0.18.12\"}`,\n      `markmap-view@${\"0.18.12\"}`,\n      `markmap-toolbar@${\"0.18.12\"}`\n    ],\n    baseCss: [`markmap-toolbar@${\"0.18.12\"}/dist/style.css`],\n    manual: false,\n    toolbar: false,\n    ...(_a = window.markmap) == null ? void 0 : _a.autoLoader\n  };\n  async function initialize() {\n    var _a2;\n    if (typeof autoLoaderOptions.provider === \"function\") {\n      urlBuilder.setProvider(\n        urlBuilder.provider = \"autoLoader\",\n        autoLoaderOptions.provider\n      );\n    } else if (typeof autoLoaderOptions.provider === \"string\") {\n      urlBuilder.provider = autoLoaderOptions.provider;\n    } else {\n      try {\n        await urlBuilder.findFastestProvider();\n      } catch {\n      }\n    }\n    await Promise.all([\n      loadJS(\n        autoLoaderOptions.baseJs.map(\n          (item) => typeof item === \"string\" ? buildJSItem(urlBuilder.getFullUrl(item)) : item\n        )\n      ),\n      loadCSS(\n        autoLoaderOptions.baseCss.map(\n          (item) => typeof item === \"string\" ? buildCSSItem(urlBuilder.getFullUrl(item)) : item\n        )\n      )\n    ]);\n    const { markmap } = window;\n    const style = document.createElement(\"style\");\n    style.textContent = markmap.globalCSS;\n    document.body.prepend(style);\n    (_a2 = autoLoaderOptions.onReady) == null ? void 0 : _a2.call(autoLoaderOptions);\n  }\n  const ready = initialize();\n  function transform(transformer, content) {\n    const result = transformer.transform(content);\n    const keys = Object.keys(result.features).filter((key) => !enabled[key]);\n    keys.forEach((key) => {\n      enabled[key] = true;\n    });\n    const { styles, scripts } = transformer.getAssets(keys);\n    const { markmap } = window;\n    if (styles) markmap.loadCSS(styles);\n    if (scripts) markmap.loadJS(scripts);\n    return result;\n  }\n  function render(el) {\n    var _a2;\n    const { Transformer, Markmap, deriveOptions, Toolbar } = window.markmap;\n    const lines = ((_a2 = el.textContent) == null ? void 0 : _a2.split(\"\\n\")) || [];\n    let indent = Infinity;\n    lines.forEach((line) => {\n      var _a3;\n      const spaces = ((_a3 = line.match(/^\\s*/)) == null ? void 0 : _a3[0].length) || 0;\n      if (spaces < line.length) indent = Math.min(indent, spaces);\n    });\n    const content = lines.map((line) => line.slice(indent)).join(\"\\n\").trim();\n    const transformer = new Transformer(autoLoaderOptions.transformPlugins);\n    transformer.urlBuilder = urlBuilder;\n    el.innerHTML = \"<svg></svg>\";\n    const svg = el.firstChild;\n    const mm = Markmap.create(svg, { embedGlobalCSS: false });\n    if (autoLoaderOptions.toolbar) {\n      const { el: toolbar } = Toolbar.create(mm);\n      Object.assign(toolbar.style, {\n        position: \"absolute\",\n        right: \"20px\",\n        bottom: \"20px\"\n      });\n      el.append(toolbar);\n    }\n    const doRender = async () => {\n      const { root, frontmatter } = transform(transformer, content);\n      const markmapOptions = frontmatter == null ? void 0 : frontmatter.markmap;\n      const frontmatterOptions = deriveOptions(markmapOptions);\n      await mm.setData(root, frontmatterOptions);\n      mm.fit();\n    };\n    transformer.hooks.retransform.tap(doRender);\n    doRender();\n  }\n  async function renderAllUnder(container) {\n    await ready;\n    container.querySelectorAll(\".markmap\").forEach(render);\n  }\n  function renderAll() {\n    return renderAllUnder(document);\n  }\n  if (!autoLoaderOptions.manual) {\n    if (document.readyState === \"loading\")\n      document.addEventListener(\"DOMContentLoaded\", () => {\n        renderAll();\n      });\n    else renderAll();\n  }\n  exports.ready = ready;\n  exports.render = render;\n  exports.renderAll = renderAll;\n  exports.renderAllUnder = renderAllUnder;\n  Object.defineProperty(exports, Symbol.toStringTag, { value: \"Module\" });\n})(this.markmap.autoLoader = this.markmap.autoLoader || {});\n"]}