vite 2.7.7 → 2.8.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of vite might be problematic. Click here for more details.

Files changed (37) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/LICENSE.md +35 -864
  3. package/dist/client/client.mjs +1 -1
  4. package/dist/client/client.mjs.map +1 -1
  5. package/dist/node/certificate.d.ts +2 -0
  6. package/dist/node/chunks/{dep-2d8e2cb1.js → dep-0ebab0df.js} +2 -2
  7. package/dist/node/chunks/{dep-2d8e2cb1.js.map → dep-0ebab0df.js.map} +1 -1
  8. package/dist/node/chunks/{dep-ac1b4bf9.js → dep-2056ae8a.js} +21 -4
  9. package/dist/node/chunks/dep-2056ae8a.js.map +1 -0
  10. package/dist/node/chunks/{dep-591fce67.js → dep-372aad6a.js} +471 -4367
  11. package/dist/node/chunks/dep-372aad6a.js.map +1 -0
  12. package/dist/node/chunks/{dep-4a9cff06.js → dep-5ad1713b.js} +14398 -26609
  13. package/dist/node/chunks/dep-5ad1713b.js.map +1 -0
  14. package/dist/node/chunks/{dep-f41a1db3.js → dep-7cd25957.js} +2 -2
  15. package/dist/node/chunks/{dep-f41a1db3.js.map → dep-7cd25957.js.map} +1 -1
  16. package/dist/node/chunks/{dep-67730f16.js → dep-920a704a.js} +8568 -17936
  17. package/dist/node/chunks/dep-920a704a.js.map +1 -0
  18. package/dist/node/cli.js +14 -12
  19. package/dist/node/cli.js.map +1 -1
  20. package/dist/node/config.d.ts +19 -0
  21. package/dist/node/http.d.ts +5 -1
  22. package/dist/node/importGlob.d.ts +5 -0
  23. package/dist/node/index.d.ts +42 -6
  24. package/dist/node/index.js +3 -2
  25. package/dist/node/index.js.map +1 -1
  26. package/dist/node/plugins/html.d.ts +3 -2
  27. package/dist/node/server/index.d.ts +7 -0
  28. package/dist/node/server/moduleGraph.d.ts +5 -5
  29. package/dist/node/server/send.d.ts +8 -2
  30. package/dist/node/utils.d.ts +1 -0
  31. package/package.json +15 -15
  32. package/src/client/client.ts +2 -0
  33. package/types/shims.d.ts +0 -10
  34. package/dist/node/chunks/dep-4a9cff06.js.map +0 -1
  35. package/dist/node/chunks/dep-591fce67.js.map +0 -1
  36. package/dist/node/chunks/dep-67730f16.js.map +0 -1
  37. package/dist/node/chunks/dep-ac1b4bf9.js.map +0 -1
@@ -547,5 +547,5 @@ function injectQuery(url, queryToInject) {
547
547
  return `${pathname}?${queryToInject}${search ? `&` + search.slice(1) : ''}${hash || ''}`;
548
548
  }
549
549
 
550
- export { createHotContext, injectQuery, removeStyle, updateStyle };
550
+ export { ErrorOverlay, createHotContext, injectQuery, removeStyle, updateStyle };
551
551
  //# sourceMappingURL=client.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.mjs","sources":["../../src/client/overlay.ts","../../src/client/client.ts"],"sourcesContent":["import type { ErrorPayload } from 'types/hmrPayload'\n\nconst template = /*html*/ `\n<style>\n:host {\n position: fixed;\n z-index: 99999;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow-y: scroll;\n margin: 0;\n background: rgba(0, 0, 0, 0.66);\n --monospace: 'SFMono-Regular', Consolas,\n 'Liberation Mono', Menlo, Courier, monospace;\n --red: #ff5555;\n --yellow: #e2aa53;\n --purple: #cfa4ff;\n --cyan: #2dd9da;\n --dim: #c9c9c9;\n}\n\n.window {\n font-family: var(--monospace);\n line-height: 1.5;\n width: 800px;\n color: #d8d8d8;\n margin: 30px auto;\n padding: 25px 40px;\n position: relative;\n background: #181818;\n border-radius: 6px 6px 8px 8px;\n box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);\n overflow: hidden;\n border-top: 8px solid var(--red);\n direction: ltr;\n text-align: left;\n}\n\npre {\n font-family: var(--monospace);\n font-size: 16px;\n margin-top: 0;\n margin-bottom: 1em;\n overflow-x: scroll;\n scrollbar-width: none;\n}\n\npre::-webkit-scrollbar {\n display: none;\n}\n\n.message {\n line-height: 1.3;\n font-weight: 600;\n white-space: pre-wrap;\n}\n\n.message-body {\n color: var(--red);\n}\n\n.plugin {\n color: var(--purple);\n}\n\n.file {\n color: var(--cyan);\n margin-bottom: 0;\n white-space: pre-wrap;\n word-break: break-all;\n}\n\n.frame {\n color: var(--yellow);\n}\n\n.stack {\n font-size: 13px;\n color: var(--dim);\n}\n\n.tip {\n font-size: 13px;\n color: #999;\n border-top: 1px dotted #999;\n padding-top: 13px;\n}\n\ncode {\n font-size: 13px;\n font-family: var(--monospace);\n color: var(--yellow);\n}\n\n.file-link {\n text-decoration: underline;\n cursor: pointer;\n}\n</style>\n<div class=\"window\">\n <pre class=\"message\"><span class=\"plugin\"></span><span class=\"message-body\"></span></pre>\n <pre class=\"file\"></pre>\n <pre class=\"frame\"></pre>\n <pre class=\"stack\"></pre>\n <div class=\"tip\">\n Click outside or fix the code to dismiss.<br>\n You can also disable this overlay by setting\n <code>server.hmr.overlay</code> to <code>false</code> in <code>vite.config.js.</code>\n </div>\n</div>\n`\n\nconst fileRE = /(?:[a-zA-Z]:\\\\|\\/).*?:\\d+:\\d+/g\nconst codeframeRE = /^(?:>?\\s+\\d+\\s+\\|.*|\\s+\\|\\s*\\^.*)\\r?\\n/gm\n\nexport class ErrorOverlay extends HTMLElement {\n root: ShadowRoot\n\n constructor(err: ErrorPayload['err']) {\n super()\n this.root = this.attachShadow({ mode: 'open' })\n this.root.innerHTML = template\n\n codeframeRE.lastIndex = 0\n const hasFrame = err.frame && codeframeRE.test(err.frame)\n const message = hasFrame\n ? err.message.replace(codeframeRE, '')\n : err.message\n if (err.plugin) {\n this.text('.plugin', `[plugin:${err.plugin}] `)\n }\n this.text('.message-body', message.trim())\n\n const [file] = (err.loc?.file || err.id || 'unknown file').split(`?`)\n if (err.loc) {\n this.text('.file', `${file}:${err.loc.line}:${err.loc.column}`, true)\n } else if (err.id) {\n this.text('.file', file)\n }\n\n if (hasFrame) {\n this.text('.frame', err.frame!.trim())\n }\n this.text('.stack', err.stack, true)\n\n this.root.querySelector('.window')!.addEventListener('click', (e) => {\n e.stopPropagation()\n })\n this.addEventListener('click', () => {\n this.close()\n })\n }\n\n text(selector: string, text: string, linkFiles = false): void {\n const el = this.root.querySelector(selector)!\n if (!linkFiles) {\n el.textContent = text\n } else {\n let curIndex = 0\n let match: RegExpExecArray | null\n while ((match = fileRE.exec(text))) {\n const { 0: file, index } = match\n if (index != null) {\n const frag = text.slice(curIndex, index)\n el.appendChild(document.createTextNode(frag))\n const link = document.createElement('a')\n link.textContent = file\n link.className = 'file-link'\n link.onclick = () => {\n fetch('/__open-in-editor?file=' + encodeURIComponent(file))\n }\n el.appendChild(link)\n curIndex += frag.length + file.length\n }\n }\n }\n }\n\n close(): void {\n this.parentNode?.removeChild(this)\n }\n}\n\nexport const overlayId = 'vite-error-overlay'\nif (customElements && !customElements.get(overlayId)) {\n customElements.define(overlayId, ErrorOverlay)\n}\n","import type {\n ErrorPayload,\n FullReloadPayload,\n HMRPayload,\n PrunePayload,\n Update,\n UpdatePayload\n} from 'types/hmrPayload'\nimport type { CustomEventName } from 'types/customEvent'\nimport { ErrorOverlay, overlayId } from './overlay'\n// eslint-disable-next-line node/no-missing-import\nimport '@vite/env'\n\n// injected by the hmr plugin when served\ndeclare const __BASE__: string\ndeclare const __HMR_PROTOCOL__: string\ndeclare const __HMR_HOSTNAME__: string\ndeclare const __HMR_PORT__: string\ndeclare const __HMR_TIMEOUT__: number\ndeclare const __HMR_ENABLE_OVERLAY__: boolean\n\nconsole.log('[vite] connecting...')\n\n// use server configuration, then fallback to inference\nconst socketProtocol =\n __HMR_PROTOCOL__ || (location.protocol === 'https:' ? 'wss' : 'ws')\nconst socketHost = `${__HMR_HOSTNAME__ || location.hostname}:${__HMR_PORT__}`\nconst socket = new WebSocket(`${socketProtocol}://${socketHost}`, 'vite-hmr')\nconst base = __BASE__ || '/'\n\nfunction warnFailedFetch(err: Error, path: string | string[]) {\n if (!err.message.match('fetch')) {\n console.error(err)\n }\n console.error(\n `[hmr] Failed to reload ${path}. ` +\n `This could be due to syntax errors or importing non-existent ` +\n `modules. (see errors above)`\n )\n}\n\n// Listen for messages\nsocket.addEventListener('message', async ({ data }) => {\n handleMessage(JSON.parse(data))\n})\n\nlet isFirstUpdate = true\n\nasync function handleMessage(payload: HMRPayload) {\n switch (payload.type) {\n case 'connected':\n console.log(`[vite] connected.`)\n // proxy(nginx, docker) hmr ws maybe caused timeout,\n // so send ping package let ws keep alive.\n setInterval(() => socket.send('ping'), __HMR_TIMEOUT__)\n break\n case 'update':\n notifyListeners('vite:beforeUpdate', payload)\n // if this is the first update and there's already an error overlay, it\n // means the page opened with existing server compile error and the whole\n // module script failed to load (since one of the nested imports is 500).\n // in this case a normal update won't work and a full reload is needed.\n if (isFirstUpdate && hasErrorOverlay()) {\n window.location.reload()\n return\n } else {\n clearErrorOverlay()\n isFirstUpdate = false\n }\n payload.updates.forEach((update) => {\n if (update.type === 'js-update') {\n queueUpdate(fetchUpdate(update))\n } else {\n // css-update\n // this is only sent when a css file referenced with <link> is updated\n let { path, timestamp } = update\n path = path.replace(/\\?.*/, '')\n // can't use querySelector with `[href*=]` here since the link may be\n // using relative paths so we need to use link.href to grab the full\n // URL for the include check.\n const el = Array.from(\n document.querySelectorAll<HTMLLinkElement>('link')\n ).find((e) => e.href.includes(path))\n if (el) {\n const newPath = `${base}${path.slice(1)}${\n path.includes('?') ? '&' : '?'\n }t=${timestamp}`\n el.href = new URL(newPath, el.href).href\n }\n console.log(`[vite] css hot updated: ${path}`)\n }\n })\n break\n case 'custom': {\n notifyListeners(payload.event as CustomEventName<any>, payload.data)\n break\n }\n case 'full-reload':\n notifyListeners('vite:beforeFullReload', payload)\n if (payload.path && payload.path.endsWith('.html')) {\n // if html file is edited, only reload the page if the browser is\n // currently on that page.\n const pagePath = decodeURI(location.pathname)\n const payloadPath = base + payload.path.slice(1)\n if (\n pagePath === payloadPath ||\n (pagePath.endsWith('/') && pagePath + 'index.html' === payloadPath)\n ) {\n location.reload()\n }\n return\n } else {\n location.reload()\n }\n break\n case 'prune':\n notifyListeners('vite:beforePrune', payload)\n // After an HMR update, some modules are no longer imported on the page\n // but they may have left behind side effects that need to be cleaned up\n // (.e.g style injections)\n // TODO Trigger their dispose callbacks.\n payload.paths.forEach((path) => {\n const fn = pruneMap.get(path)\n if (fn) {\n fn(dataMap.get(path))\n }\n })\n break\n case 'error': {\n notifyListeners('vite:error', payload)\n const err = payload.err\n if (enableOverlay) {\n createErrorOverlay(err)\n } else {\n console.error(\n `[vite] Internal Server Error\\n${err.message}\\n${err.stack}`\n )\n }\n break\n }\n default: {\n const check: never = payload\n return check\n }\n }\n}\n\nfunction notifyListeners(\n event: 'vite:beforeUpdate',\n payload: UpdatePayload\n): void\nfunction notifyListeners(event: 'vite:beforePrune', payload: PrunePayload): void\nfunction notifyListeners(\n event: 'vite:beforeFullReload',\n payload: FullReloadPayload\n): void\nfunction notifyListeners(event: 'vite:error', payload: ErrorPayload): void\nfunction notifyListeners<T extends string>(\n event: CustomEventName<T>,\n data: any\n): void\nfunction notifyListeners(event: string, data: any): void {\n const cbs = customListenersMap.get(event)\n if (cbs) {\n cbs.forEach((cb) => cb(data))\n }\n}\n\nconst enableOverlay = __HMR_ENABLE_OVERLAY__\n\nfunction createErrorOverlay(err: ErrorPayload['err']) {\n if (!enableOverlay) return\n clearErrorOverlay()\n document.body.appendChild(new ErrorOverlay(err))\n}\n\nfunction clearErrorOverlay() {\n document\n .querySelectorAll(overlayId)\n .forEach((n) => (n as ErrorOverlay).close())\n}\n\nfunction hasErrorOverlay() {\n return document.querySelectorAll(overlayId).length\n}\n\nlet pending = false\nlet queued: Promise<(() => void) | undefined>[] = []\n\n/**\n * buffer multiple hot updates triggered by the same src change\n * so that they are invoked in the same order they were sent.\n * (otherwise the order may be inconsistent because of the http request round trip)\n */\nasync function queueUpdate(p: Promise<(() => void) | undefined>) {\n queued.push(p)\n if (!pending) {\n pending = true\n await Promise.resolve()\n pending = false\n const loading = [...queued]\n queued = []\n ;(await Promise.all(loading)).forEach((fn) => fn && fn())\n }\n}\n\nasync function waitForSuccessfulPing(ms = 1000) {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n await fetch(`${base}__vite_ping`)\n break\n } catch (e) {\n await new Promise((resolve) => setTimeout(resolve, ms))\n }\n }\n}\n\n// ping server\nsocket.addEventListener('close', async ({ wasClean }) => {\n if (wasClean) return\n console.log(`[vite] server connection lost. polling for restart...`)\n await waitForSuccessfulPing()\n location.reload()\n})\n\n// https://wicg.github.io/construct-stylesheets\nconst supportsConstructedSheet = (() => {\n try {\n // new CSSStyleSheet()\n // return true\n } catch (e) {}\n return false\n})()\n\nconst sheetsMap = new Map()\n\nexport function updateStyle(id: string, content: string): void {\n let style = sheetsMap.get(id)\n if (supportsConstructedSheet && !content.includes('@import')) {\n if (style && !(style instanceof CSSStyleSheet)) {\n removeStyle(id)\n style = undefined\n }\n\n if (!style) {\n style = new CSSStyleSheet()\n style.replaceSync(content)\n // @ts-ignore\n document.adoptedStyleSheets = [...document.adoptedStyleSheets, style]\n } else {\n style.replaceSync(content)\n }\n } else {\n if (style && !(style instanceof HTMLStyleElement)) {\n removeStyle(id)\n style = undefined\n }\n\n if (!style) {\n style = document.createElement('style')\n style.setAttribute('type', 'text/css')\n style.innerHTML = content\n document.head.appendChild(style)\n } else {\n style.innerHTML = content\n }\n }\n sheetsMap.set(id, style)\n}\n\nexport function removeStyle(id: string): void {\n const style = sheetsMap.get(id)\n if (style) {\n if (style instanceof CSSStyleSheet) {\n // @ts-ignore\n document.adoptedStyleSheets = document.adoptedStyleSheets.filter(\n (s: CSSStyleSheet) => s !== style\n )\n } else {\n document.head.removeChild(style)\n }\n sheetsMap.delete(id)\n }\n}\n\nasync function fetchUpdate({ path, acceptedPath, timestamp }: Update) {\n const mod = hotModulesMap.get(path)\n if (!mod) {\n // In a code-splitting project,\n // it is common that the hot-updating module is not loaded yet.\n // https://github.com/vitejs/vite/issues/721\n return\n }\n\n const moduleMap = new Map()\n const isSelfUpdate = path === acceptedPath\n\n // make sure we only import each dep once\n const modulesToUpdate = new Set<string>()\n if (isSelfUpdate) {\n // self update - only update self\n modulesToUpdate.add(path)\n } else {\n // dep update\n for (const { deps } of mod.callbacks) {\n deps.forEach((dep) => {\n if (acceptedPath === dep) {\n modulesToUpdate.add(dep)\n }\n })\n }\n }\n\n // determine the qualified callbacks before we re-import the modules\n const qualifiedCallbacks = mod.callbacks.filter(({ deps }) => {\n return deps.some((dep) => modulesToUpdate.has(dep))\n })\n\n await Promise.all(\n Array.from(modulesToUpdate).map(async (dep) => {\n const disposer = disposeMap.get(dep)\n if (disposer) await disposer(dataMap.get(dep))\n const [path, query] = dep.split(`?`)\n try {\n const newMod = await import(\n /* @vite-ignore */\n base +\n path.slice(1) +\n `?import&t=${timestamp}${query ? `&${query}` : ''}`\n )\n moduleMap.set(dep, newMod)\n } catch (e) {\n warnFailedFetch(e, dep)\n }\n })\n )\n\n return () => {\n for (const { deps, fn } of qualifiedCallbacks) {\n fn(deps.map((dep) => moduleMap.get(dep)))\n }\n const loggedPath = isSelfUpdate ? path : `${acceptedPath} via ${path}`\n console.log(`[vite] hot updated: ${loggedPath}`)\n }\n}\n\ninterface HotModule {\n id: string\n callbacks: HotCallback[]\n}\n\ninterface HotCallback {\n // the dependencies must be fetchable paths\n deps: string[]\n fn: (modules: object[]) => void\n}\n\nconst hotModulesMap = new Map<string, HotModule>()\nconst disposeMap = new Map<string, (data: any) => void | Promise<void>>()\nconst pruneMap = new Map<string, (data: any) => void | Promise<void>>()\nconst dataMap = new Map<string, any>()\nconst customListenersMap = new Map<string, ((data: any) => void)[]>()\nconst ctxToListenersMap = new Map<\n string,\n Map<string, ((data: any) => void)[]>\n>()\n\n// Just infer the return type for now\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport const createHotContext = (ownerPath: string) => {\n if (!dataMap.has(ownerPath)) {\n dataMap.set(ownerPath, {})\n }\n\n // when a file is hot updated, a new context is created\n // clear its stale callbacks\n const mod = hotModulesMap.get(ownerPath)\n if (mod) {\n mod.callbacks = []\n }\n\n // clear stale custom event listeners\n const staleListeners = ctxToListenersMap.get(ownerPath)\n if (staleListeners) {\n for (const [event, staleFns] of staleListeners) {\n const listeners = customListenersMap.get(event)\n if (listeners) {\n customListenersMap.set(\n event,\n listeners.filter((l) => !staleFns.includes(l))\n )\n }\n }\n }\n\n const newListeners = new Map()\n ctxToListenersMap.set(ownerPath, newListeners)\n\n function acceptDeps(deps: string[], callback: HotCallback['fn'] = () => {}) {\n const mod: HotModule = hotModulesMap.get(ownerPath) || {\n id: ownerPath,\n callbacks: []\n }\n mod.callbacks.push({\n deps,\n fn: callback\n })\n hotModulesMap.set(ownerPath, mod)\n }\n\n const hot = {\n get data() {\n return dataMap.get(ownerPath)\n },\n\n accept(deps: any, callback?: any) {\n if (typeof deps === 'function' || !deps) {\n // self-accept: hot.accept(() => {})\n acceptDeps([ownerPath], ([mod]) => deps && deps(mod))\n } else if (typeof deps === 'string') {\n // explicit deps\n acceptDeps([deps], ([mod]) => callback && callback(mod))\n } else if (Array.isArray(deps)) {\n acceptDeps(deps, callback)\n } else {\n throw new Error(`invalid hot.accept() usage.`)\n }\n },\n\n acceptDeps() {\n throw new Error(\n `hot.acceptDeps() is deprecated. ` +\n `Use hot.accept() with the same signature instead.`\n )\n },\n\n dispose(cb: (data: any) => void) {\n disposeMap.set(ownerPath, cb)\n },\n\n prune(cb: (data: any) => void) {\n pruneMap.set(ownerPath, cb)\n },\n\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n decline() {},\n\n invalidate() {\n // TODO should tell the server to re-perform hmr propagation\n // from this module as root\n location.reload()\n },\n\n // custom events\n on: (event: string, cb: (data: any) => void) => {\n const addToMap = (map: Map<string, any[]>) => {\n const existing = map.get(event) || []\n existing.push(cb)\n map.set(event, existing)\n }\n addToMap(customListenersMap)\n addToMap(newListeners)\n }\n }\n\n return hot\n}\n\n/**\n * urls here are dynamic import() urls that couldn't be statically analyzed\n */\nexport function injectQuery(url: string, queryToInject: string): string {\n // skip urls that won't be handled by vite\n if (!url.startsWith('.') && !url.startsWith('/')) {\n return url\n }\n\n // can't use pathname from URL since it may be relative like ../\n const pathname = url.replace(/#.*$/, '').replace(/\\?.*$/, '')\n const { search, hash } = new URL(url, 'http://vitejs.dev')\n\n return `${pathname}?${queryToInject}${search ? `&` + search.slice(1) : ''}${\n hash || ''\n }`\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.mjs","sources":["../../src/client/overlay.ts","../../src/client/client.ts"],"sourcesContent":["import type { ErrorPayload } from 'types/hmrPayload'\n\nconst template = /*html*/ `\n<style>\n:host {\n position: fixed;\n z-index: 99999;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow-y: scroll;\n margin: 0;\n background: rgba(0, 0, 0, 0.66);\n --monospace: 'SFMono-Regular', Consolas,\n 'Liberation Mono', Menlo, Courier, monospace;\n --red: #ff5555;\n --yellow: #e2aa53;\n --purple: #cfa4ff;\n --cyan: #2dd9da;\n --dim: #c9c9c9;\n}\n\n.window {\n font-family: var(--monospace);\n line-height: 1.5;\n width: 800px;\n color: #d8d8d8;\n margin: 30px auto;\n padding: 25px 40px;\n position: relative;\n background: #181818;\n border-radius: 6px 6px 8px 8px;\n box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);\n overflow: hidden;\n border-top: 8px solid var(--red);\n direction: ltr;\n text-align: left;\n}\n\npre {\n font-family: var(--monospace);\n font-size: 16px;\n margin-top: 0;\n margin-bottom: 1em;\n overflow-x: scroll;\n scrollbar-width: none;\n}\n\npre::-webkit-scrollbar {\n display: none;\n}\n\n.message {\n line-height: 1.3;\n font-weight: 600;\n white-space: pre-wrap;\n}\n\n.message-body {\n color: var(--red);\n}\n\n.plugin {\n color: var(--purple);\n}\n\n.file {\n color: var(--cyan);\n margin-bottom: 0;\n white-space: pre-wrap;\n word-break: break-all;\n}\n\n.frame {\n color: var(--yellow);\n}\n\n.stack {\n font-size: 13px;\n color: var(--dim);\n}\n\n.tip {\n font-size: 13px;\n color: #999;\n border-top: 1px dotted #999;\n padding-top: 13px;\n}\n\ncode {\n font-size: 13px;\n font-family: var(--monospace);\n color: var(--yellow);\n}\n\n.file-link {\n text-decoration: underline;\n cursor: pointer;\n}\n</style>\n<div class=\"window\">\n <pre class=\"message\"><span class=\"plugin\"></span><span class=\"message-body\"></span></pre>\n <pre class=\"file\"></pre>\n <pre class=\"frame\"></pre>\n <pre class=\"stack\"></pre>\n <div class=\"tip\">\n Click outside or fix the code to dismiss.<br>\n You can also disable this overlay by setting\n <code>server.hmr.overlay</code> to <code>false</code> in <code>vite.config.js.</code>\n </div>\n</div>\n`\n\nconst fileRE = /(?:[a-zA-Z]:\\\\|\\/).*?:\\d+:\\d+/g\nconst codeframeRE = /^(?:>?\\s+\\d+\\s+\\|.*|\\s+\\|\\s*\\^.*)\\r?\\n/gm\n\nexport class ErrorOverlay extends HTMLElement {\n root: ShadowRoot\n\n constructor(err: ErrorPayload['err']) {\n super()\n this.root = this.attachShadow({ mode: 'open' })\n this.root.innerHTML = template\n\n codeframeRE.lastIndex = 0\n const hasFrame = err.frame && codeframeRE.test(err.frame)\n const message = hasFrame\n ? err.message.replace(codeframeRE, '')\n : err.message\n if (err.plugin) {\n this.text('.plugin', `[plugin:${err.plugin}] `)\n }\n this.text('.message-body', message.trim())\n\n const [file] = (err.loc?.file || err.id || 'unknown file').split(`?`)\n if (err.loc) {\n this.text('.file', `${file}:${err.loc.line}:${err.loc.column}`, true)\n } else if (err.id) {\n this.text('.file', file)\n }\n\n if (hasFrame) {\n this.text('.frame', err.frame!.trim())\n }\n this.text('.stack', err.stack, true)\n\n this.root.querySelector('.window')!.addEventListener('click', (e) => {\n e.stopPropagation()\n })\n this.addEventListener('click', () => {\n this.close()\n })\n }\n\n text(selector: string, text: string, linkFiles = false): void {\n const el = this.root.querySelector(selector)!\n if (!linkFiles) {\n el.textContent = text\n } else {\n let curIndex = 0\n let match: RegExpExecArray | null\n while ((match = fileRE.exec(text))) {\n const { 0: file, index } = match\n if (index != null) {\n const frag = text.slice(curIndex, index)\n el.appendChild(document.createTextNode(frag))\n const link = document.createElement('a')\n link.textContent = file\n link.className = 'file-link'\n link.onclick = () => {\n fetch('/__open-in-editor?file=' + encodeURIComponent(file))\n }\n el.appendChild(link)\n curIndex += frag.length + file.length\n }\n }\n }\n }\n\n close(): void {\n this.parentNode?.removeChild(this)\n }\n}\n\nexport const overlayId = 'vite-error-overlay'\nif (customElements && !customElements.get(overlayId)) {\n customElements.define(overlayId, ErrorOverlay)\n}\n","import type {\n ErrorPayload,\n FullReloadPayload,\n HMRPayload,\n PrunePayload,\n Update,\n UpdatePayload\n} from 'types/hmrPayload'\nimport type { CustomEventName } from 'types/customEvent'\nimport { ErrorOverlay, overlayId } from './overlay'\n// eslint-disable-next-line node/no-missing-import\nimport '@vite/env'\n\n// injected by the hmr plugin when served\ndeclare const __BASE__: string\ndeclare const __HMR_PROTOCOL__: string\ndeclare const __HMR_HOSTNAME__: string\ndeclare const __HMR_PORT__: string\ndeclare const __HMR_TIMEOUT__: number\ndeclare const __HMR_ENABLE_OVERLAY__: boolean\n\nconsole.log('[vite] connecting...')\n\n// use server configuration, then fallback to inference\nconst socketProtocol =\n __HMR_PROTOCOL__ || (location.protocol === 'https:' ? 'wss' : 'ws')\nconst socketHost = `${__HMR_HOSTNAME__ || location.hostname}:${__HMR_PORT__}`\nconst socket = new WebSocket(`${socketProtocol}://${socketHost}`, 'vite-hmr')\nconst base = __BASE__ || '/'\n\nfunction warnFailedFetch(err: Error, path: string | string[]) {\n if (!err.message.match('fetch')) {\n console.error(err)\n }\n console.error(\n `[hmr] Failed to reload ${path}. ` +\n `This could be due to syntax errors or importing non-existent ` +\n `modules. (see errors above)`\n )\n}\n\n// Listen for messages\nsocket.addEventListener('message', async ({ data }) => {\n handleMessage(JSON.parse(data))\n})\n\nlet isFirstUpdate = true\n\nasync function handleMessage(payload: HMRPayload) {\n switch (payload.type) {\n case 'connected':\n console.log(`[vite] connected.`)\n // proxy(nginx, docker) hmr ws maybe caused timeout,\n // so send ping package let ws keep alive.\n setInterval(() => socket.send('ping'), __HMR_TIMEOUT__)\n break\n case 'update':\n notifyListeners('vite:beforeUpdate', payload)\n // if this is the first update and there's already an error overlay, it\n // means the page opened with existing server compile error and the whole\n // module script failed to load (since one of the nested imports is 500).\n // in this case a normal update won't work and a full reload is needed.\n if (isFirstUpdate && hasErrorOverlay()) {\n window.location.reload()\n return\n } else {\n clearErrorOverlay()\n isFirstUpdate = false\n }\n payload.updates.forEach((update) => {\n if (update.type === 'js-update') {\n queueUpdate(fetchUpdate(update))\n } else {\n // css-update\n // this is only sent when a css file referenced with <link> is updated\n let { path, timestamp } = update\n path = path.replace(/\\?.*/, '')\n // can't use querySelector with `[href*=]` here since the link may be\n // using relative paths so we need to use link.href to grab the full\n // URL for the include check.\n const el = Array.from(\n document.querySelectorAll<HTMLLinkElement>('link')\n ).find((e) => e.href.includes(path))\n if (el) {\n const newPath = `${base}${path.slice(1)}${\n path.includes('?') ? '&' : '?'\n }t=${timestamp}`\n el.href = new URL(newPath, el.href).href\n }\n console.log(`[vite] css hot updated: ${path}`)\n }\n })\n break\n case 'custom': {\n notifyListeners(payload.event as CustomEventName<any>, payload.data)\n break\n }\n case 'full-reload':\n notifyListeners('vite:beforeFullReload', payload)\n if (payload.path && payload.path.endsWith('.html')) {\n // if html file is edited, only reload the page if the browser is\n // currently on that page.\n const pagePath = decodeURI(location.pathname)\n const payloadPath = base + payload.path.slice(1)\n if (\n pagePath === payloadPath ||\n (pagePath.endsWith('/') && pagePath + 'index.html' === payloadPath)\n ) {\n location.reload()\n }\n return\n } else {\n location.reload()\n }\n break\n case 'prune':\n notifyListeners('vite:beforePrune', payload)\n // After an HMR update, some modules are no longer imported on the page\n // but they may have left behind side effects that need to be cleaned up\n // (.e.g style injections)\n // TODO Trigger their dispose callbacks.\n payload.paths.forEach((path) => {\n const fn = pruneMap.get(path)\n if (fn) {\n fn(dataMap.get(path))\n }\n })\n break\n case 'error': {\n notifyListeners('vite:error', payload)\n const err = payload.err\n if (enableOverlay) {\n createErrorOverlay(err)\n } else {\n console.error(\n `[vite] Internal Server Error\\n${err.message}\\n${err.stack}`\n )\n }\n break\n }\n default: {\n const check: never = payload\n return check\n }\n }\n}\n\nfunction notifyListeners(\n event: 'vite:beforeUpdate',\n payload: UpdatePayload\n): void\nfunction notifyListeners(event: 'vite:beforePrune', payload: PrunePayload): void\nfunction notifyListeners(\n event: 'vite:beforeFullReload',\n payload: FullReloadPayload\n): void\nfunction notifyListeners(event: 'vite:error', payload: ErrorPayload): void\nfunction notifyListeners<T extends string>(\n event: CustomEventName<T>,\n data: any\n): void\nfunction notifyListeners(event: string, data: any): void {\n const cbs = customListenersMap.get(event)\n if (cbs) {\n cbs.forEach((cb) => cb(data))\n }\n}\n\nconst enableOverlay = __HMR_ENABLE_OVERLAY__\n\nfunction createErrorOverlay(err: ErrorPayload['err']) {\n if (!enableOverlay) return\n clearErrorOverlay()\n document.body.appendChild(new ErrorOverlay(err))\n}\n\nfunction clearErrorOverlay() {\n document\n .querySelectorAll(overlayId)\n .forEach((n) => (n as ErrorOverlay).close())\n}\n\nfunction hasErrorOverlay() {\n return document.querySelectorAll(overlayId).length\n}\n\nlet pending = false\nlet queued: Promise<(() => void) | undefined>[] = []\n\n/**\n * buffer multiple hot updates triggered by the same src change\n * so that they are invoked in the same order they were sent.\n * (otherwise the order may be inconsistent because of the http request round trip)\n */\nasync function queueUpdate(p: Promise<(() => void) | undefined>) {\n queued.push(p)\n if (!pending) {\n pending = true\n await Promise.resolve()\n pending = false\n const loading = [...queued]\n queued = []\n ;(await Promise.all(loading)).forEach((fn) => fn && fn())\n }\n}\n\nasync function waitForSuccessfulPing(ms = 1000) {\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n await fetch(`${base}__vite_ping`)\n break\n } catch (e) {\n await new Promise((resolve) => setTimeout(resolve, ms))\n }\n }\n}\n\n// ping server\nsocket.addEventListener('close', async ({ wasClean }) => {\n if (wasClean) return\n console.log(`[vite] server connection lost. polling for restart...`)\n await waitForSuccessfulPing()\n location.reload()\n})\n\n// https://wicg.github.io/construct-stylesheets\nconst supportsConstructedSheet = (() => {\n try {\n // new CSSStyleSheet()\n // return true\n } catch (e) {}\n return false\n})()\n\nconst sheetsMap = new Map()\n\nexport function updateStyle(id: string, content: string): void {\n let style = sheetsMap.get(id)\n if (supportsConstructedSheet && !content.includes('@import')) {\n if (style && !(style instanceof CSSStyleSheet)) {\n removeStyle(id)\n style = undefined\n }\n\n if (!style) {\n style = new CSSStyleSheet()\n style.replaceSync(content)\n // @ts-ignore\n document.adoptedStyleSheets = [...document.adoptedStyleSheets, style]\n } else {\n style.replaceSync(content)\n }\n } else {\n if (style && !(style instanceof HTMLStyleElement)) {\n removeStyle(id)\n style = undefined\n }\n\n if (!style) {\n style = document.createElement('style')\n style.setAttribute('type', 'text/css')\n style.innerHTML = content\n document.head.appendChild(style)\n } else {\n style.innerHTML = content\n }\n }\n sheetsMap.set(id, style)\n}\n\nexport function removeStyle(id: string): void {\n const style = sheetsMap.get(id)\n if (style) {\n if (style instanceof CSSStyleSheet) {\n // @ts-ignore\n document.adoptedStyleSheets = document.adoptedStyleSheets.filter(\n (s: CSSStyleSheet) => s !== style\n )\n } else {\n document.head.removeChild(style)\n }\n sheetsMap.delete(id)\n }\n}\n\nasync function fetchUpdate({ path, acceptedPath, timestamp }: Update) {\n const mod = hotModulesMap.get(path)\n if (!mod) {\n // In a code-splitting project,\n // it is common that the hot-updating module is not loaded yet.\n // https://github.com/vitejs/vite/issues/721\n return\n }\n\n const moduleMap = new Map()\n const isSelfUpdate = path === acceptedPath\n\n // make sure we only import each dep once\n const modulesToUpdate = new Set<string>()\n if (isSelfUpdate) {\n // self update - only update self\n modulesToUpdate.add(path)\n } else {\n // dep update\n for (const { deps } of mod.callbacks) {\n deps.forEach((dep) => {\n if (acceptedPath === dep) {\n modulesToUpdate.add(dep)\n }\n })\n }\n }\n\n // determine the qualified callbacks before we re-import the modules\n const qualifiedCallbacks = mod.callbacks.filter(({ deps }) => {\n return deps.some((dep) => modulesToUpdate.has(dep))\n })\n\n await Promise.all(\n Array.from(modulesToUpdate).map(async (dep) => {\n const disposer = disposeMap.get(dep)\n if (disposer) await disposer(dataMap.get(dep))\n const [path, query] = dep.split(`?`)\n try {\n const newMod = await import(\n /* @vite-ignore */\n base +\n path.slice(1) +\n `?import&t=${timestamp}${query ? `&${query}` : ''}`\n )\n moduleMap.set(dep, newMod)\n } catch (e) {\n warnFailedFetch(e, dep)\n }\n })\n )\n\n return () => {\n for (const { deps, fn } of qualifiedCallbacks) {\n fn(deps.map((dep) => moduleMap.get(dep)))\n }\n const loggedPath = isSelfUpdate ? path : `${acceptedPath} via ${path}`\n console.log(`[vite] hot updated: ${loggedPath}`)\n }\n}\n\ninterface HotModule {\n id: string\n callbacks: HotCallback[]\n}\n\ninterface HotCallback {\n // the dependencies must be fetchable paths\n deps: string[]\n fn: (modules: object[]) => void\n}\n\nconst hotModulesMap = new Map<string, HotModule>()\nconst disposeMap = new Map<string, (data: any) => void | Promise<void>>()\nconst pruneMap = new Map<string, (data: any) => void | Promise<void>>()\nconst dataMap = new Map<string, any>()\nconst customListenersMap = new Map<string, ((data: any) => void)[]>()\nconst ctxToListenersMap = new Map<\n string,\n Map<string, ((data: any) => void)[]>\n>()\n\n// Just infer the return type for now\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nexport const createHotContext = (ownerPath: string) => {\n if (!dataMap.has(ownerPath)) {\n dataMap.set(ownerPath, {})\n }\n\n // when a file is hot updated, a new context is created\n // clear its stale callbacks\n const mod = hotModulesMap.get(ownerPath)\n if (mod) {\n mod.callbacks = []\n }\n\n // clear stale custom event listeners\n const staleListeners = ctxToListenersMap.get(ownerPath)\n if (staleListeners) {\n for (const [event, staleFns] of staleListeners) {\n const listeners = customListenersMap.get(event)\n if (listeners) {\n customListenersMap.set(\n event,\n listeners.filter((l) => !staleFns.includes(l))\n )\n }\n }\n }\n\n const newListeners = new Map()\n ctxToListenersMap.set(ownerPath, newListeners)\n\n function acceptDeps(deps: string[], callback: HotCallback['fn'] = () => {}) {\n const mod: HotModule = hotModulesMap.get(ownerPath) || {\n id: ownerPath,\n callbacks: []\n }\n mod.callbacks.push({\n deps,\n fn: callback\n })\n hotModulesMap.set(ownerPath, mod)\n }\n\n const hot = {\n get data() {\n return dataMap.get(ownerPath)\n },\n\n accept(deps: any, callback?: any) {\n if (typeof deps === 'function' || !deps) {\n // self-accept: hot.accept(() => {})\n acceptDeps([ownerPath], ([mod]) => deps && deps(mod))\n } else if (typeof deps === 'string') {\n // explicit deps\n acceptDeps([deps], ([mod]) => callback && callback(mod))\n } else if (Array.isArray(deps)) {\n acceptDeps(deps, callback)\n } else {\n throw new Error(`invalid hot.accept() usage.`)\n }\n },\n\n acceptDeps() {\n throw new Error(\n `hot.acceptDeps() is deprecated. ` +\n `Use hot.accept() with the same signature instead.`\n )\n },\n\n dispose(cb: (data: any) => void) {\n disposeMap.set(ownerPath, cb)\n },\n\n prune(cb: (data: any) => void) {\n pruneMap.set(ownerPath, cb)\n },\n\n // TODO\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n decline() {},\n\n invalidate() {\n // TODO should tell the server to re-perform hmr propagation\n // from this module as root\n location.reload()\n },\n\n // custom events\n on: (event: string, cb: (data: any) => void) => {\n const addToMap = (map: Map<string, any[]>) => {\n const existing = map.get(event) || []\n existing.push(cb)\n map.set(event, existing)\n }\n addToMap(customListenersMap)\n addToMap(newListeners)\n }\n }\n\n return hot\n}\n\n/**\n * urls here are dynamic import() urls that couldn't be statically analyzed\n */\nexport function injectQuery(url: string, queryToInject: string): string {\n // skip urls that won't be handled by vite\n if (!url.startsWith('.') && !url.startsWith('/')) {\n return url\n }\n\n // can't use pathname from URL since it may be relative like ../\n const pathname = url.replace(/#.*$/, '').replace(/\\?.*$/, '')\n const { search, hash } = new URL(url, 'http://vitejs.dev')\n\n return `${pathname}?${queryToInject}${search ? `&` + search.slice(1) : ''}${\n hash || ''\n }`\n}\n\nexport { ErrorOverlay }\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import 'node-forge/lib/pki';
2
+ export declare function createCertificate(): string;
@@ -3,7 +3,7 @@
3
3
  var path$3 = require('path');
4
4
  var resolve$2 = require('resolve');
5
5
  var fs$1 = require('fs');
6
- var index$1 = require('./dep-ac1b4bf9.js');
6
+ var index$1 = require('./dep-2056ae8a.js');
7
7
 
8
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e["default"] : e; }
9
9
 
@@ -743,4 +743,4 @@ var index = /*#__PURE__*/_mergeNamespaces({
743
743
  }, [postcssImport]);
744
744
 
745
745
  exports.index = index;
746
- //# sourceMappingURL=dep-2d8e2cb1.js.map
746
+ //# sourceMappingURL=dep-0ebab0df.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dep-2d8e2cb1.js","sources":["../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/join-media.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/resolve-id.js","../../../../../node_modules/.pnpm/pify@2.3.0/node_modules/pify/index.js","../../../../../node_modules/.pnpm/read-cache@1.0.0/node_modules/read-cache/index.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/load-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/process-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/parse-statements.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/index.js"],"sourcesContent":["\"use strict\"\n\nmodule.exports = function (parentMedia, childMedia) {\n if (!parentMedia.length && childMedia.length) return childMedia\n if (parentMedia.length && !childMedia.length) return parentMedia\n if (!parentMedia.length && !childMedia.length) return []\n\n const media = []\n\n parentMedia.forEach(parentItem => {\n childMedia.forEach(childItem => {\n if (parentItem !== childItem) media.push(`${parentItem} and ${childItem}`)\n })\n })\n\n return media\n}\n","\"use strict\"\n\n// external tooling\nconst resolve = require(\"resolve\")\n\nconst moduleDirectories = [\"web_modules\", \"node_modules\"]\n\nfunction resolveModule(id, opts) {\n return new Promise((res, rej) => {\n resolve(id, opts, (err, path) => (err ? rej(err) : res(path)))\n })\n}\n\nmodule.exports = function (id, base, options) {\n const paths = options.path\n\n const resolveOpts = {\n basedir: base,\n moduleDirectory: moduleDirectories.concat(options.addModulesDirectories),\n paths,\n extensions: [\".css\"],\n packageFilter: function processPackage(pkg) {\n if (pkg.style) pkg.main = pkg.style\n else if (!pkg.main || !/\\.css$/.test(pkg.main)) pkg.main = \"index.css\"\n return pkg\n },\n preserveSymlinks: false,\n }\n\n return resolveModule(`./${id}`, resolveOpts)\n .catch(() => resolveModule(id, resolveOpts))\n .catch(() => {\n if (paths.indexOf(base) === -1) paths.unshift(base)\n\n throw new Error(\n `Failed to find '${id}'\n in [\n ${paths.join(\",\\n \")}\n ]`\n )\n })\n}\n","'use strict';\n\nvar processFn = function (fn, P, opts) {\n\treturn function () {\n\t\tvar that = this;\n\t\tvar args = new Array(arguments.length);\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\n\t\treturn new P(function (resolve, reject) {\n\t\t\targs.push(function (err, result) {\n\t\t\t\tif (err) {\n\t\t\t\t\treject(err);\n\t\t\t\t} else if (opts.multiArgs) {\n\t\t\t\t\tvar results = new Array(arguments.length - 1);\n\n\t\t\t\t\tfor (var i = 1; i < arguments.length; i++) {\n\t\t\t\t\t\tresults[i - 1] = arguments[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tresolve(results);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(result);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfn.apply(that, args);\n\t\t});\n\t};\n};\n\nvar pify = module.exports = function (obj, P, opts) {\n\tif (typeof P !== 'function') {\n\t\topts = P;\n\t\tP = Promise;\n\t}\n\n\topts = opts || {};\n\topts.exclude = opts.exclude || [/.+Sync$/];\n\n\tvar filter = function (key) {\n\t\tvar match = function (pattern) {\n\t\t\treturn typeof pattern === 'string' ? key === pattern : pattern.test(key);\n\t\t};\n\n\t\treturn opts.include ? opts.include.some(match) : !opts.exclude.some(match);\n\t};\n\n\tvar ret = typeof obj === 'function' ? function () {\n\t\tif (opts.excludeMain) {\n\t\t\treturn obj.apply(this, arguments);\n\t\t}\n\n\t\treturn processFn(obj, P, opts).apply(this, arguments);\n\t} : {};\n\n\treturn Object.keys(obj).reduce(function (ret, key) {\n\t\tvar x = obj[key];\n\n\t\tret[key] = typeof x === 'function' && filter(key) ? processFn(x, P, opts) : x;\n\n\t\treturn ret;\n\t}, ret);\n};\n\npify.all = pify;\n","var fs = require('fs');\r\nvar path = require('path');\r\nvar pify = require('pify');\r\n\r\nvar stat = pify(fs.stat);\r\nvar readFile = pify(fs.readFile);\r\nvar resolve = path.resolve;\r\n\r\nvar cache = Object.create(null);\r\n\r\nfunction convert(content, encoding) {\r\n\tif (Buffer.isEncoding(encoding)) {\r\n\t\treturn content.toString(encoding);\r\n\t}\r\n\treturn content;\r\n}\r\n\r\nmodule.exports = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\treturn stat(path).then(function (stats) {\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\treturn readFile(path).then(function (data) {\r\n\t\t\tcache[path] = {\r\n\t\t\t\tmtime: stats.mtime,\r\n\t\t\t\tcontent: data\r\n\t\t\t};\r\n\r\n\t\t\treturn convert(data, encoding);\r\n\t\t});\r\n\t}).catch(function (err) {\r\n\t\tcache[path] = null;\r\n\t\treturn Promise.reject(err);\r\n\t});\r\n};\r\n\r\nmodule.exports.sync = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\ttry {\r\n\t\tvar stats = fs.statSync(path);\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\tvar data = fs.readFileSync(path);\r\n\r\n\t\tcache[path] = {\r\n\t\t\tmtime: stats.mtime,\r\n\t\t\tcontent: data\r\n\t\t};\r\n\r\n\t\treturn convert(data, encoding);\r\n\t} catch (err) {\r\n\t\tcache[path] = null;\r\n\t\tthrow err;\r\n\t}\r\n\r\n};\r\n\r\nmodule.exports.get = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\tif (cache[path]) {\r\n\t\treturn convert(cache[path].content, encoding);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nmodule.exports.clear = function () {\r\n\tcache = Object.create(null);\r\n};\r\n","\"use strict\"\n\nconst readCache = require(\"read-cache\")\n\nmodule.exports = filename => readCache(filename, \"utf-8\")\n","\"use strict\"\n\n// builtin tooling\nconst path = require(\"path\")\n\n// placeholder tooling\nlet sugarss\n\nmodule.exports = function processContent(\n result,\n content,\n filename,\n options,\n postcss\n) {\n const { plugins } = options\n const ext = path.extname(filename)\n\n const parserList = []\n\n // SugarSS support:\n if (ext === \".sss\") {\n if (!sugarss) {\n try {\n sugarss = require(\"sugarss\")\n } catch {} // Ignore\n }\n if (sugarss)\n return runPostcss(postcss, content, filename, plugins, [sugarss])\n }\n\n // Syntax support:\n if (result.opts.syntax && result.opts.syntax.parse) {\n parserList.push(result.opts.syntax.parse)\n }\n\n // Parser support:\n if (result.opts.parser) parserList.push(result.opts.parser)\n // Try the default as a last resort:\n parserList.push(null)\n\n return runPostcss(postcss, content, filename, plugins, parserList)\n}\n\nfunction runPostcss(postcss, content, filename, plugins, parsers, index) {\n if (!index) index = 0\n return postcss(plugins)\n .process(content, {\n from: filename,\n parser: parsers[index],\n })\n .catch(err => {\n // If there's an error, try the next parser\n index++\n // If there are no parsers left, throw it\n if (index === parsers.length) throw err\n return runPostcss(postcss, content, filename, plugins, parsers, index)\n })\n}\n","\"use strict\"\n\n// external tooling\nconst valueParser = require(\"postcss-value-parser\")\n\n// extended tooling\nconst { stringify } = valueParser\n\nfunction split(params, start) {\n const list = []\n const last = params.reduce((item, node, index) => {\n if (index < start) return \"\"\n if (node.type === \"div\" && node.value === \",\") {\n list.push(item)\n return \"\"\n }\n return item + stringify(node)\n }, \"\")\n list.push(last)\n return list\n}\n\nmodule.exports = function (result, styles) {\n const statements = []\n let nodes = []\n\n styles.each(node => {\n let stmt\n if (node.type === \"atrule\") {\n if (node.name === \"import\") stmt = parseImport(result, node)\n else if (node.name === \"media\") stmt = parseMedia(result, node)\n else if (node.name === \"charset\") stmt = parseCharset(result, node)\n }\n\n if (stmt) {\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n nodes = []\n }\n statements.push(stmt)\n } else nodes.push(node)\n })\n\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n }\n\n return statements\n}\n\nfunction parseMedia(result, atRule) {\n const params = valueParser(atRule.params).nodes\n return {\n type: \"media\",\n node: atRule,\n media: split(params, 0),\n }\n}\n\nfunction parseCharset(result, atRule) {\n if (atRule.prev()) {\n return result.warn(\"@charset must precede all other statements\", {\n node: atRule,\n })\n }\n return {\n type: \"charset\",\n node: atRule,\n media: [],\n }\n}\n\nfunction parseImport(result, atRule) {\n let prev = atRule.prev()\n if (prev) {\n do {\n if (\n prev.type !== \"comment\" &&\n (prev.type !== \"atrule\" ||\n (prev.name !== \"import\" && prev.name !== \"charset\"))\n ) {\n return result.warn(\n \"@import must precede all other statements (besides @charset)\",\n { node: atRule }\n )\n }\n prev = prev.prev()\n } while (prev)\n }\n\n if (atRule.nodes) {\n return result.warn(\n \"It looks like you didn't end your @import statement correctly. \" +\n \"Child nodes are attached to it.\",\n { node: atRule }\n )\n }\n\n const params = valueParser(atRule.params).nodes\n const stmt = {\n type: \"import\",\n node: atRule,\n media: [],\n }\n\n // prettier-ignore\n if (\n !params.length ||\n (\n params[0].type !== \"string\" ||\n !params[0].value\n ) &&\n (\n params[0].type !== \"function\" ||\n params[0].value !== \"url\" ||\n !params[0].nodes.length ||\n !params[0].nodes[0].value\n )\n ) {\n return result.warn(`Unable to find uri in '${ atRule.toString() }'`, {\n node: atRule,\n })\n }\n\n if (params[0].type === \"string\") stmt.uri = params[0].value\n else stmt.uri = params[0].nodes[0].value\n stmt.fullUri = stringify(params[0])\n\n if (params.length > 2) {\n if (params[1].type !== \"space\") {\n return result.warn(\"Invalid import media statement\", { node: atRule })\n }\n stmt.media = split(params, 2)\n }\n\n return stmt\n}\n","\"use strict\"\n// builtin tooling\nconst path = require(\"path\")\n\n// internal tooling\nconst joinMedia = require(\"./lib/join-media\")\nconst resolveId = require(\"./lib/resolve-id\")\nconst loadContent = require(\"./lib/load-content\")\nconst processContent = require(\"./lib/process-content\")\nconst parseStatements = require(\"./lib/parse-statements\")\n\nfunction AtImport(options) {\n options = {\n root: process.cwd(),\n path: [],\n skipDuplicates: true,\n resolve: resolveId,\n load: loadContent,\n plugins: [],\n addModulesDirectories: [],\n ...options,\n }\n\n options.root = path.resolve(options.root)\n\n // convert string to an array of a single element\n if (typeof options.path === \"string\") options.path = [options.path]\n\n if (!Array.isArray(options.path)) options.path = []\n\n options.path = options.path.map(p => path.resolve(options.root, p))\n\n return {\n postcssPlugin: \"postcss-import\",\n Once(styles, { result, atRule, postcss }) {\n const state = {\n importedFiles: {},\n hashFiles: {},\n }\n\n if (styles.source && styles.source.input && styles.source.input.file) {\n state.importedFiles[styles.source.input.file] = {}\n }\n\n if (options.plugins && !Array.isArray(options.plugins)) {\n throw new Error(\"plugins option must be an array\")\n }\n\n return parseStyles(result, styles, options, state, []).then(bundle => {\n applyRaws(bundle)\n applyMedia(bundle)\n applyStyles(bundle, styles)\n })\n\n function applyRaws(bundle) {\n bundle.forEach((stmt, index) => {\n if (index === 0) return\n\n if (stmt.parent) {\n const { before } = stmt.parent.node.raws\n if (stmt.type === \"nodes\") stmt.nodes[0].raws.before = before\n else stmt.node.raws.before = before\n } else if (stmt.type === \"nodes\") {\n stmt.nodes[0].raws.before = stmt.nodes[0].raws.before || \"\\n\"\n }\n })\n }\n\n function applyMedia(bundle) {\n bundle.forEach(stmt => {\n if (!stmt.media.length || stmt.type === \"charset\") return\n if (stmt.type === \"import\") {\n stmt.node.params = `${stmt.fullUri} ${stmt.media.join(\", \")}`\n } else if (stmt.type === \"media\")\n stmt.node.params = stmt.media.join(\", \")\n else {\n const { nodes } = stmt\n const { parent } = nodes[0]\n const mediaNode = atRule({\n name: \"media\",\n params: stmt.media.join(\", \"),\n source: parent.source,\n })\n\n parent.insertBefore(nodes[0], mediaNode)\n\n // remove nodes\n nodes.forEach(node => {\n node.parent = undefined\n })\n\n // better output\n nodes[0].raws.before = nodes[0].raws.before || \"\\n\"\n\n // wrap new rules with media query\n mediaNode.append(nodes)\n\n stmt.type = \"media\"\n stmt.node = mediaNode\n delete stmt.nodes\n }\n })\n }\n\n function applyStyles(bundle, styles) {\n styles.nodes = []\n\n // Strip additional statements.\n bundle.forEach(stmt => {\n if ([\"charset\", \"import\", \"media\"].includes(stmt.type)) {\n stmt.node.parent = undefined\n styles.append(stmt.node)\n } else if (stmt.type === \"nodes\") {\n stmt.nodes.forEach(node => {\n node.parent = undefined\n styles.append(node)\n })\n }\n })\n }\n\n function parseStyles(result, styles, options, state, media) {\n const statements = parseStatements(result, styles)\n\n return Promise.resolve(statements)\n .then(stmts => {\n // process each statement in series\n return stmts.reduce((promise, stmt) => {\n return promise.then(() => {\n stmt.media = joinMedia(media, stmt.media || [])\n\n // skip protocol base uri (protocol://url) or protocol-relative\n if (\n stmt.type !== \"import\" ||\n /^(?:[a-z]+:)?\\/\\//i.test(stmt.uri)\n ) {\n return\n }\n\n if (options.filter && !options.filter(stmt.uri)) {\n // rejected by filter\n return\n }\n\n return resolveImportId(result, stmt, options, state)\n })\n }, Promise.resolve())\n })\n .then(() => {\n let charset\n const imports = []\n const bundle = []\n\n function handleCharset(stmt) {\n if (!charset) charset = stmt\n // charsets aren't case-sensitive, so convert to lower case to compare\n else if (\n stmt.node.params.toLowerCase() !==\n charset.node.params.toLowerCase()\n ) {\n throw new Error(\n `Incompatable @charset statements:\n ${stmt.node.params} specified in ${stmt.node.source.input.file}\n ${charset.node.params} specified in ${charset.node.source.input.file}`\n )\n }\n }\n\n // squash statements and their children\n statements.forEach(stmt => {\n if (stmt.type === \"charset\") handleCharset(stmt)\n else if (stmt.type === \"import\") {\n if (stmt.children) {\n stmt.children.forEach((child, index) => {\n if (child.type === \"import\") imports.push(child)\n else if (child.type === \"charset\") handleCharset(child)\n else bundle.push(child)\n // For better output\n if (index === 0) child.parent = stmt\n })\n } else imports.push(stmt)\n } else if (stmt.type === \"media\" || stmt.type === \"nodes\") {\n bundle.push(stmt)\n }\n })\n\n return charset\n ? [charset, ...imports.concat(bundle)]\n : imports.concat(bundle)\n })\n }\n\n function resolveImportId(result, stmt, options, state) {\n const atRule = stmt.node\n let sourceFile\n if (atRule.source && atRule.source.input && atRule.source.input.file) {\n sourceFile = atRule.source.input.file\n }\n const base = sourceFile\n ? path.dirname(atRule.source.input.file)\n : options.root\n\n return Promise.resolve(options.resolve(stmt.uri, base, options))\n .then(paths => {\n if (!Array.isArray(paths)) paths = [paths]\n // Ensure that each path is absolute:\n return Promise.all(\n paths.map(file => {\n return !path.isAbsolute(file)\n ? resolveId(file, base, options)\n : file\n })\n )\n })\n .then(resolved => {\n // Add dependency messages:\n resolved.forEach(file => {\n result.messages.push({\n type: \"dependency\",\n plugin: \"postcss-import\",\n file,\n parent: sourceFile,\n })\n })\n\n return Promise.all(\n resolved.map(file => {\n return loadImportContent(result, stmt, file, options, state)\n })\n )\n })\n .then(result => {\n // Merge loaded statements\n stmt.children = result.reduce((result, statements) => {\n return statements ? result.concat(statements) : result\n }, [])\n })\n }\n\n function loadImportContent(result, stmt, filename, options, state) {\n const atRule = stmt.node\n const { media } = stmt\n if (options.skipDuplicates) {\n // skip files already imported at the same scope\n if (\n state.importedFiles[filename] &&\n state.importedFiles[filename][media]\n ) {\n return\n }\n\n // save imported files to skip them next time\n if (!state.importedFiles[filename]) state.importedFiles[filename] = {}\n state.importedFiles[filename][media] = true\n }\n\n return Promise.resolve(options.load(filename, options)).then(\n content => {\n if (content.trim() === \"\") {\n result.warn(`${filename} is empty`, { node: atRule })\n return\n }\n\n // skip previous imported files not containing @import rules\n if (state.hashFiles[content] && state.hashFiles[content][media])\n return\n\n return processContent(\n result,\n content,\n filename,\n options,\n postcss\n ).then(importedResult => {\n const styles = importedResult.root\n result.messages = result.messages.concat(importedResult.messages)\n\n if (options.skipDuplicates) {\n const hasImport = styles.some(child => {\n return child.type === \"atrule\" && child.name === \"import\"\n })\n if (!hasImport) {\n // save hash files to skip them next time\n if (!state.hashFiles[content]) state.hashFiles[content] = {}\n state.hashFiles[content][media] = true\n }\n }\n\n // recursion: import @import from imported file\n return parseStyles(result, styles, options, state, media)\n })\n }\n )\n }\n },\n }\n}\n\nAtImport.postcss = true\n\nmodule.exports = AtImport\n"],"names":["joinMedia","resolve","require$$0","resolveId","pify","pifyModule","path","require$$1","require$$2","readCacheModule","loadContent","processContent","parseStatements","require$$3","require$$4","require$$5"],"mappings":"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"}
1
+ {"version":3,"file":"dep-0ebab0df.js","sources":["../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/join-media.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/resolve-id.js","../../../../../node_modules/.pnpm/pify@2.3.0/node_modules/pify/index.js","../../../../../node_modules/.pnpm/read-cache@1.0.0/node_modules/read-cache/index.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/load-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/process-content.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/lib/parse-statements.js","../../../../../node_modules/.pnpm/postcss-import@14.0.2_postcss@8.4.5/node_modules/postcss-import/index.js"],"sourcesContent":["\"use strict\"\n\nmodule.exports = function (parentMedia, childMedia) {\n if (!parentMedia.length && childMedia.length) return childMedia\n if (parentMedia.length && !childMedia.length) return parentMedia\n if (!parentMedia.length && !childMedia.length) return []\n\n const media = []\n\n parentMedia.forEach(parentItem => {\n childMedia.forEach(childItem => {\n if (parentItem !== childItem) media.push(`${parentItem} and ${childItem}`)\n })\n })\n\n return media\n}\n","\"use strict\"\n\n// external tooling\nconst resolve = require(\"resolve\")\n\nconst moduleDirectories = [\"web_modules\", \"node_modules\"]\n\nfunction resolveModule(id, opts) {\n return new Promise((res, rej) => {\n resolve(id, opts, (err, path) => (err ? rej(err) : res(path)))\n })\n}\n\nmodule.exports = function (id, base, options) {\n const paths = options.path\n\n const resolveOpts = {\n basedir: base,\n moduleDirectory: moduleDirectories.concat(options.addModulesDirectories),\n paths,\n extensions: [\".css\"],\n packageFilter: function processPackage(pkg) {\n if (pkg.style) pkg.main = pkg.style\n else if (!pkg.main || !/\\.css$/.test(pkg.main)) pkg.main = \"index.css\"\n return pkg\n },\n preserveSymlinks: false,\n }\n\n return resolveModule(`./${id}`, resolveOpts)\n .catch(() => resolveModule(id, resolveOpts))\n .catch(() => {\n if (paths.indexOf(base) === -1) paths.unshift(base)\n\n throw new Error(\n `Failed to find '${id}'\n in [\n ${paths.join(\",\\n \")}\n ]`\n )\n })\n}\n","'use strict';\n\nvar processFn = function (fn, P, opts) {\n\treturn function () {\n\t\tvar that = this;\n\t\tvar args = new Array(arguments.length);\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\targs[i] = arguments[i];\n\t\t}\n\n\t\treturn new P(function (resolve, reject) {\n\t\t\targs.push(function (err, result) {\n\t\t\t\tif (err) {\n\t\t\t\t\treject(err);\n\t\t\t\t} else if (opts.multiArgs) {\n\t\t\t\t\tvar results = new Array(arguments.length - 1);\n\n\t\t\t\t\tfor (var i = 1; i < arguments.length; i++) {\n\t\t\t\t\t\tresults[i - 1] = arguments[i];\n\t\t\t\t\t}\n\n\t\t\t\t\tresolve(results);\n\t\t\t\t} else {\n\t\t\t\t\tresolve(result);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tfn.apply(that, args);\n\t\t});\n\t};\n};\n\nvar pify = module.exports = function (obj, P, opts) {\n\tif (typeof P !== 'function') {\n\t\topts = P;\n\t\tP = Promise;\n\t}\n\n\topts = opts || {};\n\topts.exclude = opts.exclude || [/.+Sync$/];\n\n\tvar filter = function (key) {\n\t\tvar match = function (pattern) {\n\t\t\treturn typeof pattern === 'string' ? key === pattern : pattern.test(key);\n\t\t};\n\n\t\treturn opts.include ? opts.include.some(match) : !opts.exclude.some(match);\n\t};\n\n\tvar ret = typeof obj === 'function' ? function () {\n\t\tif (opts.excludeMain) {\n\t\t\treturn obj.apply(this, arguments);\n\t\t}\n\n\t\treturn processFn(obj, P, opts).apply(this, arguments);\n\t} : {};\n\n\treturn Object.keys(obj).reduce(function (ret, key) {\n\t\tvar x = obj[key];\n\n\t\tret[key] = typeof x === 'function' && filter(key) ? processFn(x, P, opts) : x;\n\n\t\treturn ret;\n\t}, ret);\n};\n\npify.all = pify;\n","var fs = require('fs');\r\nvar path = require('path');\r\nvar pify = require('pify');\r\n\r\nvar stat = pify(fs.stat);\r\nvar readFile = pify(fs.readFile);\r\nvar resolve = path.resolve;\r\n\r\nvar cache = Object.create(null);\r\n\r\nfunction convert(content, encoding) {\r\n\tif (Buffer.isEncoding(encoding)) {\r\n\t\treturn content.toString(encoding);\r\n\t}\r\n\treturn content;\r\n}\r\n\r\nmodule.exports = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\treturn stat(path).then(function (stats) {\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\treturn readFile(path).then(function (data) {\r\n\t\t\tcache[path] = {\r\n\t\t\t\tmtime: stats.mtime,\r\n\t\t\t\tcontent: data\r\n\t\t\t};\r\n\r\n\t\t\treturn convert(data, encoding);\r\n\t\t});\r\n\t}).catch(function (err) {\r\n\t\tcache[path] = null;\r\n\t\treturn Promise.reject(err);\r\n\t});\r\n};\r\n\r\nmodule.exports.sync = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\r\n\ttry {\r\n\t\tvar stats = fs.statSync(path);\r\n\t\tvar item = cache[path];\r\n\r\n\t\tif (item && item.mtime.getTime() === stats.mtime.getTime()) {\r\n\t\t\treturn convert(item.content, encoding);\r\n\t\t}\r\n\r\n\t\tvar data = fs.readFileSync(path);\r\n\r\n\t\tcache[path] = {\r\n\t\t\tmtime: stats.mtime,\r\n\t\t\tcontent: data\r\n\t\t};\r\n\r\n\t\treturn convert(data, encoding);\r\n\t} catch (err) {\r\n\t\tcache[path] = null;\r\n\t\tthrow err;\r\n\t}\r\n\r\n};\r\n\r\nmodule.exports.get = function (path, encoding) {\r\n\tpath = resolve(path);\r\n\tif (cache[path]) {\r\n\t\treturn convert(cache[path].content, encoding);\r\n\t}\r\n\treturn null;\r\n};\r\n\r\nmodule.exports.clear = function () {\r\n\tcache = Object.create(null);\r\n};\r\n","\"use strict\"\n\nconst readCache = require(\"read-cache\")\n\nmodule.exports = filename => readCache(filename, \"utf-8\")\n","\"use strict\"\n\n// builtin tooling\nconst path = require(\"path\")\n\n// placeholder tooling\nlet sugarss\n\nmodule.exports = function processContent(\n result,\n content,\n filename,\n options,\n postcss\n) {\n const { plugins } = options\n const ext = path.extname(filename)\n\n const parserList = []\n\n // SugarSS support:\n if (ext === \".sss\") {\n if (!sugarss) {\n try {\n sugarss = require(\"sugarss\")\n } catch {} // Ignore\n }\n if (sugarss)\n return runPostcss(postcss, content, filename, plugins, [sugarss])\n }\n\n // Syntax support:\n if (result.opts.syntax && result.opts.syntax.parse) {\n parserList.push(result.opts.syntax.parse)\n }\n\n // Parser support:\n if (result.opts.parser) parserList.push(result.opts.parser)\n // Try the default as a last resort:\n parserList.push(null)\n\n return runPostcss(postcss, content, filename, plugins, parserList)\n}\n\nfunction runPostcss(postcss, content, filename, plugins, parsers, index) {\n if (!index) index = 0\n return postcss(plugins)\n .process(content, {\n from: filename,\n parser: parsers[index],\n })\n .catch(err => {\n // If there's an error, try the next parser\n index++\n // If there are no parsers left, throw it\n if (index === parsers.length) throw err\n return runPostcss(postcss, content, filename, plugins, parsers, index)\n })\n}\n","\"use strict\"\n\n// external tooling\nconst valueParser = require(\"postcss-value-parser\")\n\n// extended tooling\nconst { stringify } = valueParser\n\nfunction split(params, start) {\n const list = []\n const last = params.reduce((item, node, index) => {\n if (index < start) return \"\"\n if (node.type === \"div\" && node.value === \",\") {\n list.push(item)\n return \"\"\n }\n return item + stringify(node)\n }, \"\")\n list.push(last)\n return list\n}\n\nmodule.exports = function (result, styles) {\n const statements = []\n let nodes = []\n\n styles.each(node => {\n let stmt\n if (node.type === \"atrule\") {\n if (node.name === \"import\") stmt = parseImport(result, node)\n else if (node.name === \"media\") stmt = parseMedia(result, node)\n else if (node.name === \"charset\") stmt = parseCharset(result, node)\n }\n\n if (stmt) {\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n nodes = []\n }\n statements.push(stmt)\n } else nodes.push(node)\n })\n\n if (nodes.length) {\n statements.push({\n type: \"nodes\",\n nodes,\n media: [],\n })\n }\n\n return statements\n}\n\nfunction parseMedia(result, atRule) {\n const params = valueParser(atRule.params).nodes\n return {\n type: \"media\",\n node: atRule,\n media: split(params, 0),\n }\n}\n\nfunction parseCharset(result, atRule) {\n if (atRule.prev()) {\n return result.warn(\"@charset must precede all other statements\", {\n node: atRule,\n })\n }\n return {\n type: \"charset\",\n node: atRule,\n media: [],\n }\n}\n\nfunction parseImport(result, atRule) {\n let prev = atRule.prev()\n if (prev) {\n do {\n if (\n prev.type !== \"comment\" &&\n (prev.type !== \"atrule\" ||\n (prev.name !== \"import\" && prev.name !== \"charset\"))\n ) {\n return result.warn(\n \"@import must precede all other statements (besides @charset)\",\n { node: atRule }\n )\n }\n prev = prev.prev()\n } while (prev)\n }\n\n if (atRule.nodes) {\n return result.warn(\n \"It looks like you didn't end your @import statement correctly. \" +\n \"Child nodes are attached to it.\",\n { node: atRule }\n )\n }\n\n const params = valueParser(atRule.params).nodes\n const stmt = {\n type: \"import\",\n node: atRule,\n media: [],\n }\n\n // prettier-ignore\n if (\n !params.length ||\n (\n params[0].type !== \"string\" ||\n !params[0].value\n ) &&\n (\n params[0].type !== \"function\" ||\n params[0].value !== \"url\" ||\n !params[0].nodes.length ||\n !params[0].nodes[0].value\n )\n ) {\n return result.warn(`Unable to find uri in '${ atRule.toString() }'`, {\n node: atRule,\n })\n }\n\n if (params[0].type === \"string\") stmt.uri = params[0].value\n else stmt.uri = params[0].nodes[0].value\n stmt.fullUri = stringify(params[0])\n\n if (params.length > 2) {\n if (params[1].type !== \"space\") {\n return result.warn(\"Invalid import media statement\", { node: atRule })\n }\n stmt.media = split(params, 2)\n }\n\n return stmt\n}\n","\"use strict\"\n// builtin tooling\nconst path = require(\"path\")\n\n// internal tooling\nconst joinMedia = require(\"./lib/join-media\")\nconst resolveId = require(\"./lib/resolve-id\")\nconst loadContent = require(\"./lib/load-content\")\nconst processContent = require(\"./lib/process-content\")\nconst parseStatements = require(\"./lib/parse-statements\")\n\nfunction AtImport(options) {\n options = {\n root: process.cwd(),\n path: [],\n skipDuplicates: true,\n resolve: resolveId,\n load: loadContent,\n plugins: [],\n addModulesDirectories: [],\n ...options,\n }\n\n options.root = path.resolve(options.root)\n\n // convert string to an array of a single element\n if (typeof options.path === \"string\") options.path = [options.path]\n\n if (!Array.isArray(options.path)) options.path = []\n\n options.path = options.path.map(p => path.resolve(options.root, p))\n\n return {\n postcssPlugin: \"postcss-import\",\n Once(styles, { result, atRule, postcss }) {\n const state = {\n importedFiles: {},\n hashFiles: {},\n }\n\n if (styles.source && styles.source.input && styles.source.input.file) {\n state.importedFiles[styles.source.input.file] = {}\n }\n\n if (options.plugins && !Array.isArray(options.plugins)) {\n throw new Error(\"plugins option must be an array\")\n }\n\n return parseStyles(result, styles, options, state, []).then(bundle => {\n applyRaws(bundle)\n applyMedia(bundle)\n applyStyles(bundle, styles)\n })\n\n function applyRaws(bundle) {\n bundle.forEach((stmt, index) => {\n if (index === 0) return\n\n if (stmt.parent) {\n const { before } = stmt.parent.node.raws\n if (stmt.type === \"nodes\") stmt.nodes[0].raws.before = before\n else stmt.node.raws.before = before\n } else if (stmt.type === \"nodes\") {\n stmt.nodes[0].raws.before = stmt.nodes[0].raws.before || \"\\n\"\n }\n })\n }\n\n function applyMedia(bundle) {\n bundle.forEach(stmt => {\n if (!stmt.media.length || stmt.type === \"charset\") return\n if (stmt.type === \"import\") {\n stmt.node.params = `${stmt.fullUri} ${stmt.media.join(\", \")}`\n } else if (stmt.type === \"media\")\n stmt.node.params = stmt.media.join(\", \")\n else {\n const { nodes } = stmt\n const { parent } = nodes[0]\n const mediaNode = atRule({\n name: \"media\",\n params: stmt.media.join(\", \"),\n source: parent.source,\n })\n\n parent.insertBefore(nodes[0], mediaNode)\n\n // remove nodes\n nodes.forEach(node => {\n node.parent = undefined\n })\n\n // better output\n nodes[0].raws.before = nodes[0].raws.before || \"\\n\"\n\n // wrap new rules with media query\n mediaNode.append(nodes)\n\n stmt.type = \"media\"\n stmt.node = mediaNode\n delete stmt.nodes\n }\n })\n }\n\n function applyStyles(bundle, styles) {\n styles.nodes = []\n\n // Strip additional statements.\n bundle.forEach(stmt => {\n if ([\"charset\", \"import\", \"media\"].includes(stmt.type)) {\n stmt.node.parent = undefined\n styles.append(stmt.node)\n } else if (stmt.type === \"nodes\") {\n stmt.nodes.forEach(node => {\n node.parent = undefined\n styles.append(node)\n })\n }\n })\n }\n\n function parseStyles(result, styles, options, state, media) {\n const statements = parseStatements(result, styles)\n\n return Promise.resolve(statements)\n .then(stmts => {\n // process each statement in series\n return stmts.reduce((promise, stmt) => {\n return promise.then(() => {\n stmt.media = joinMedia(media, stmt.media || [])\n\n // skip protocol base uri (protocol://url) or protocol-relative\n if (\n stmt.type !== \"import\" ||\n /^(?:[a-z]+:)?\\/\\//i.test(stmt.uri)\n ) {\n return\n }\n\n if (options.filter && !options.filter(stmt.uri)) {\n // rejected by filter\n return\n }\n\n return resolveImportId(result, stmt, options, state)\n })\n }, Promise.resolve())\n })\n .then(() => {\n let charset\n const imports = []\n const bundle = []\n\n function handleCharset(stmt) {\n if (!charset) charset = stmt\n // charsets aren't case-sensitive, so convert to lower case to compare\n else if (\n stmt.node.params.toLowerCase() !==\n charset.node.params.toLowerCase()\n ) {\n throw new Error(\n `Incompatable @charset statements:\n ${stmt.node.params} specified in ${stmt.node.source.input.file}\n ${charset.node.params} specified in ${charset.node.source.input.file}`\n )\n }\n }\n\n // squash statements and their children\n statements.forEach(stmt => {\n if (stmt.type === \"charset\") handleCharset(stmt)\n else if (stmt.type === \"import\") {\n if (stmt.children) {\n stmt.children.forEach((child, index) => {\n if (child.type === \"import\") imports.push(child)\n else if (child.type === \"charset\") handleCharset(child)\n else bundle.push(child)\n // For better output\n if (index === 0) child.parent = stmt\n })\n } else imports.push(stmt)\n } else if (stmt.type === \"media\" || stmt.type === \"nodes\") {\n bundle.push(stmt)\n }\n })\n\n return charset\n ? [charset, ...imports.concat(bundle)]\n : imports.concat(bundle)\n })\n }\n\n function resolveImportId(result, stmt, options, state) {\n const atRule = stmt.node\n let sourceFile\n if (atRule.source && atRule.source.input && atRule.source.input.file) {\n sourceFile = atRule.source.input.file\n }\n const base = sourceFile\n ? path.dirname(atRule.source.input.file)\n : options.root\n\n return Promise.resolve(options.resolve(stmt.uri, base, options))\n .then(paths => {\n if (!Array.isArray(paths)) paths = [paths]\n // Ensure that each path is absolute:\n return Promise.all(\n paths.map(file => {\n return !path.isAbsolute(file)\n ? resolveId(file, base, options)\n : file\n })\n )\n })\n .then(resolved => {\n // Add dependency messages:\n resolved.forEach(file => {\n result.messages.push({\n type: \"dependency\",\n plugin: \"postcss-import\",\n file,\n parent: sourceFile,\n })\n })\n\n return Promise.all(\n resolved.map(file => {\n return loadImportContent(result, stmt, file, options, state)\n })\n )\n })\n .then(result => {\n // Merge loaded statements\n stmt.children = result.reduce((result, statements) => {\n return statements ? result.concat(statements) : result\n }, [])\n })\n }\n\n function loadImportContent(result, stmt, filename, options, state) {\n const atRule = stmt.node\n const { media } = stmt\n if (options.skipDuplicates) {\n // skip files already imported at the same scope\n if (\n state.importedFiles[filename] &&\n state.importedFiles[filename][media]\n ) {\n return\n }\n\n // save imported files to skip them next time\n if (!state.importedFiles[filename]) state.importedFiles[filename] = {}\n state.importedFiles[filename][media] = true\n }\n\n return Promise.resolve(options.load(filename, options)).then(\n content => {\n if (content.trim() === \"\") {\n result.warn(`${filename} is empty`, { node: atRule })\n return\n }\n\n // skip previous imported files not containing @import rules\n if (state.hashFiles[content] && state.hashFiles[content][media])\n return\n\n return processContent(\n result,\n content,\n filename,\n options,\n postcss\n ).then(importedResult => {\n const styles = importedResult.root\n result.messages = result.messages.concat(importedResult.messages)\n\n if (options.skipDuplicates) {\n const hasImport = styles.some(child => {\n return child.type === \"atrule\" && child.name === \"import\"\n })\n if (!hasImport) {\n // save hash files to skip them next time\n if (!state.hashFiles[content]) state.hashFiles[content] = {}\n state.hashFiles[content][media] = true\n }\n }\n\n // recursion: import @import from imported file\n return parseStyles(result, styles, options, state, media)\n })\n }\n )\n }\n },\n }\n}\n\nAtImport.postcss = true\n\nmodule.exports = AtImport\n"],"names":["joinMedia","resolve","require$$0","resolveId","pify","pifyModule","path","require$$1","require$$2","readCacheModule","loadContent","processContent","parseStatements","require$$3","require$$4","require$$5"],"mappings":"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"}
@@ -52,6 +52,7 @@ var parse$1 = function(input) {
52
52
  after = token;
53
53
  } else if (prev && prev.type === "div") {
54
54
  prev.after = token;
55
+ prev.sourceEndIndex += token.length;
55
56
  } else if (
56
57
  code === comma ||
57
58
  code === colon ||
@@ -65,6 +66,7 @@ var parse$1 = function(input) {
65
66
  tokens.push({
66
67
  type: "space",
67
68
  sourceIndex: pos,
69
+ sourceEndIndex: next,
68
70
  value: token
69
71
  });
70
72
  }
@@ -96,22 +98,25 @@ var parse$1 = function(input) {
96
98
  }
97
99
  } while (escape);
98
100
  token.value = value.slice(pos + 1, next);
99
-
101
+ token.sourceEndIndex = token.unclosed ? next : next + 1;
100
102
  tokens.push(token);
101
103
  pos = next + 1;
102
104
  code = value.charCodeAt(pos);
103
105
 
104
106
  // Comments
105
107
  } else if (code === slash && value.charCodeAt(pos + 1) === star) {
108
+ next = value.indexOf("*/", pos);
109
+
106
110
  token = {
107
111
  type: "comment",
108
- sourceIndex: pos
112
+ sourceIndex: pos,
113
+ sourceEndIndex: next + 2
109
114
  };
110
115
 
111
- next = value.indexOf("*/", pos);
112
116
  if (next === -1) {
113
117
  token.unclosed = true;
114
118
  next = value.length;
119
+ token.sourceEndIndex = next;
115
120
  }
116
121
 
117
122
  token.value = value.slice(pos + 2, next);
@@ -131,6 +136,7 @@ var parse$1 = function(input) {
131
136
  tokens.push({
132
137
  type: "word",
133
138
  sourceIndex: pos - before.length,
139
+ sourceEndIndex: pos + token.length,
134
140
  value: token
135
141
  });
136
142
  pos += 1;
@@ -143,6 +149,7 @@ var parse$1 = function(input) {
143
149
  tokens.push({
144
150
  type: "div",
145
151
  sourceIndex: pos - before.length,
152
+ sourceEndIndex: pos + token.length,
146
153
  value: token,
147
154
  before: before,
148
155
  after: ""
@@ -198,6 +205,7 @@ var parse$1 = function(input) {
198
205
  {
199
206
  type: "word",
200
207
  sourceIndex: pos,
208
+ sourceEndIndex: whitespacePos + 1,
201
209
  value: value.slice(pos, whitespacePos + 1)
202
210
  }
203
211
  ];
@@ -209,21 +217,25 @@ var parse$1 = function(input) {
209
217
  token.nodes.push({
210
218
  type: "space",
211
219
  sourceIndex: whitespacePos + 1,
220
+ sourceEndIndex: next,
212
221
  value: value.slice(whitespacePos + 1, next)
213
222
  });
214
223
  } else {
215
224
  token.after = value.slice(whitespacePos + 1, next);
225
+ token.sourceEndIndex = next;
216
226
  }
217
227
  } else {
218
228
  token.after = "";
219
229
  token.nodes = [];
220
230
  }
221
231
  pos = next + 1;
232
+ token.sourceEndIndex = token.unclosed ? next : pos;
222
233
  code = value.charCodeAt(pos);
223
234
  tokens.push(token);
224
235
  } else {
225
236
  balanced += 1;
226
237
  token.after = "";
238
+ token.sourceEndIndex = pos + 1;
227
239
  tokens.push(token);
228
240
  stack.push(token);
229
241
  tokens = token.nodes = [];
@@ -237,8 +249,10 @@ var parse$1 = function(input) {
237
249
  code = value.charCodeAt(pos);
238
250
 
239
251
  parent.after = after;
252
+ parent.sourceEndIndex += after.length;
240
253
  after = "";
241
254
  balanced -= 1;
255
+ stack[stack.length - 1].sourceEndIndex = pos;
242
256
  stack.pop();
243
257
  parent = stack[balanced];
244
258
  tokens = parent.nodes;
@@ -284,12 +298,14 @@ var parse$1 = function(input) {
284
298
  tokens.push({
285
299
  type: "unicode-range",
286
300
  sourceIndex: pos,
301
+ sourceEndIndex: next,
287
302
  value: token
288
303
  });
289
304
  } else {
290
305
  tokens.push({
291
306
  type: "word",
292
307
  sourceIndex: pos,
308
+ sourceEndIndex: next,
293
309
  value: token
294
310
  });
295
311
  }
@@ -300,6 +316,7 @@ var parse$1 = function(input) {
300
316
 
301
317
  for (pos = stack.length - 1; pos; pos -= 1) {
302
318
  stack[pos].unclosed = true;
319
+ stack[pos].sourceEndIndex = value.length;
303
320
  }
304
321
 
305
322
  return stack[0].nodes;
@@ -528,4 +545,4 @@ ValueParser.stringify = stringify;
528
545
  var lib = ValueParser;
529
546
 
530
547
  exports.lib = lib;
531
- //# sourceMappingURL=dep-ac1b4bf9.js.map
548
+ //# sourceMappingURL=dep-2056ae8a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dep-2056ae8a.js","sources":["../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/parse.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/walk.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/stringify.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/unit.js","../../../../../node_modules/.pnpm/postcss-value-parser@4.2.0/node_modules/postcss-value-parser/lib/index.js"],"sourcesContent":["var openParentheses = \"(\".charCodeAt(0);\nvar closeParentheses = \")\".charCodeAt(0);\nvar singleQuote = \"'\".charCodeAt(0);\nvar doubleQuote = '\"'.charCodeAt(0);\nvar backslash = \"\\\\\".charCodeAt(0);\nvar slash = \"/\".charCodeAt(0);\nvar comma = \",\".charCodeAt(0);\nvar colon = \":\".charCodeAt(0);\nvar star = \"*\".charCodeAt(0);\nvar uLower = \"u\".charCodeAt(0);\nvar uUpper = \"U\".charCodeAt(0);\nvar plus = \"+\".charCodeAt(0);\nvar isUnicodeRange = /^[a-f0-9?-]+$/i;\n\nmodule.exports = function(input) {\n var tokens = [];\n var value = input;\n\n var next,\n quote,\n prev,\n token,\n escape,\n escapePos,\n whitespacePos,\n parenthesesOpenPos;\n var pos = 0;\n var code = value.charCodeAt(pos);\n var max = value.length;\n var stack = [{ nodes: tokens }];\n var balanced = 0;\n var parent;\n\n var name = \"\";\n var before = \"\";\n var after = \"\";\n\n while (pos < max) {\n // Whitespaces\n if (code <= 32) {\n next = pos;\n do {\n next += 1;\n code = value.charCodeAt(next);\n } while (code <= 32);\n token = value.slice(pos, next);\n\n prev = tokens[tokens.length - 1];\n if (code === closeParentheses && balanced) {\n after = token;\n } else if (prev && prev.type === \"div\") {\n prev.after = token;\n prev.sourceEndIndex += token.length;\n } else if (\n code === comma ||\n code === colon ||\n (code === slash &&\n value.charCodeAt(next + 1) !== star &&\n (!parent ||\n (parent && parent.type === \"function\" && parent.value !== \"calc\")))\n ) {\n before = token;\n } else {\n tokens.push({\n type: \"space\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n }\n\n pos = next;\n\n // Quotes\n } else if (code === singleQuote || code === doubleQuote) {\n next = pos;\n quote = code === singleQuote ? \"'\" : '\"';\n token = {\n type: \"string\",\n sourceIndex: pos,\n quote: quote\n };\n do {\n escape = false;\n next = value.indexOf(quote, next + 1);\n if (~next) {\n escapePos = next;\n while (value.charCodeAt(escapePos - 1) === backslash) {\n escapePos -= 1;\n escape = !escape;\n }\n } else {\n value += quote;\n next = value.length - 1;\n token.unclosed = true;\n }\n } while (escape);\n token.value = value.slice(pos + 1, next);\n token.sourceEndIndex = token.unclosed ? next : next + 1;\n tokens.push(token);\n pos = next + 1;\n code = value.charCodeAt(pos);\n\n // Comments\n } else if (code === slash && value.charCodeAt(pos + 1) === star) {\n next = value.indexOf(\"*/\", pos);\n\n token = {\n type: \"comment\",\n sourceIndex: pos,\n sourceEndIndex: next + 2\n };\n\n if (next === -1) {\n token.unclosed = true;\n next = value.length;\n token.sourceEndIndex = next;\n }\n\n token.value = value.slice(pos + 2, next);\n tokens.push(token);\n\n pos = next + 2;\n code = value.charCodeAt(pos);\n\n // Operation within calc\n } else if (\n (code === slash || code === star) &&\n parent &&\n parent.type === \"function\" &&\n parent.value === \"calc\"\n ) {\n token = value[pos];\n tokens.push({\n type: \"word\",\n sourceIndex: pos - before.length,\n sourceEndIndex: pos + token.length,\n value: token\n });\n pos += 1;\n code = value.charCodeAt(pos);\n\n // Dividers\n } else if (code === slash || code === comma || code === colon) {\n token = value[pos];\n\n tokens.push({\n type: \"div\",\n sourceIndex: pos - before.length,\n sourceEndIndex: pos + token.length,\n value: token,\n before: before,\n after: \"\"\n });\n before = \"\";\n\n pos += 1;\n code = value.charCodeAt(pos);\n\n // Open parentheses\n } else if (openParentheses === code) {\n // Whitespaces after open parentheses\n next = pos;\n do {\n next += 1;\n code = value.charCodeAt(next);\n } while (code <= 32);\n parenthesesOpenPos = pos;\n token = {\n type: \"function\",\n sourceIndex: pos - name.length,\n value: name,\n before: value.slice(parenthesesOpenPos + 1, next)\n };\n pos = next;\n\n if (name === \"url\" && code !== singleQuote && code !== doubleQuote) {\n next -= 1;\n do {\n escape = false;\n next = value.indexOf(\")\", next + 1);\n if (~next) {\n escapePos = next;\n while (value.charCodeAt(escapePos - 1) === backslash) {\n escapePos -= 1;\n escape = !escape;\n }\n } else {\n value += \")\";\n next = value.length - 1;\n token.unclosed = true;\n }\n } while (escape);\n // Whitespaces before closed\n whitespacePos = next;\n do {\n whitespacePos -= 1;\n code = value.charCodeAt(whitespacePos);\n } while (code <= 32);\n if (parenthesesOpenPos < whitespacePos) {\n if (pos !== whitespacePos + 1) {\n token.nodes = [\n {\n type: \"word\",\n sourceIndex: pos,\n sourceEndIndex: whitespacePos + 1,\n value: value.slice(pos, whitespacePos + 1)\n }\n ];\n } else {\n token.nodes = [];\n }\n if (token.unclosed && whitespacePos + 1 !== next) {\n token.after = \"\";\n token.nodes.push({\n type: \"space\",\n sourceIndex: whitespacePos + 1,\n sourceEndIndex: next,\n value: value.slice(whitespacePos + 1, next)\n });\n } else {\n token.after = value.slice(whitespacePos + 1, next);\n token.sourceEndIndex = next;\n }\n } else {\n token.after = \"\";\n token.nodes = [];\n }\n pos = next + 1;\n token.sourceEndIndex = token.unclosed ? next : pos;\n code = value.charCodeAt(pos);\n tokens.push(token);\n } else {\n balanced += 1;\n token.after = \"\";\n token.sourceEndIndex = pos + 1;\n tokens.push(token);\n stack.push(token);\n tokens = token.nodes = [];\n parent = token;\n }\n name = \"\";\n\n // Close parentheses\n } else if (closeParentheses === code && balanced) {\n pos += 1;\n code = value.charCodeAt(pos);\n\n parent.after = after;\n parent.sourceEndIndex += after.length;\n after = \"\";\n balanced -= 1;\n stack[stack.length - 1].sourceEndIndex = pos;\n stack.pop();\n parent = stack[balanced];\n tokens = parent.nodes;\n\n // Words\n } else {\n next = pos;\n do {\n if (code === backslash) {\n next += 1;\n }\n next += 1;\n code = value.charCodeAt(next);\n } while (\n next < max &&\n !(\n code <= 32 ||\n code === singleQuote ||\n code === doubleQuote ||\n code === comma ||\n code === colon ||\n code === slash ||\n code === openParentheses ||\n (code === star &&\n parent &&\n parent.type === \"function\" &&\n parent.value === \"calc\") ||\n (code === slash &&\n parent.type === \"function\" &&\n parent.value === \"calc\") ||\n (code === closeParentheses && balanced)\n )\n );\n token = value.slice(pos, next);\n\n if (openParentheses === code) {\n name = token;\n } else if (\n (uLower === token.charCodeAt(0) || uUpper === token.charCodeAt(0)) &&\n plus === token.charCodeAt(1) &&\n isUnicodeRange.test(token.slice(2))\n ) {\n tokens.push({\n type: \"unicode-range\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n } else {\n tokens.push({\n type: \"word\",\n sourceIndex: pos,\n sourceEndIndex: next,\n value: token\n });\n }\n\n pos = next;\n }\n }\n\n for (pos = stack.length - 1; pos; pos -= 1) {\n stack[pos].unclosed = true;\n stack[pos].sourceEndIndex = value.length;\n }\n\n return stack[0].nodes;\n};\n","module.exports = function walk(nodes, cb, bubble) {\n var i, max, node, result;\n\n for (i = 0, max = nodes.length; i < max; i += 1) {\n node = nodes[i];\n if (!bubble) {\n result = cb(node, i, nodes);\n }\n\n if (\n result !== false &&\n node.type === \"function\" &&\n Array.isArray(node.nodes)\n ) {\n walk(node.nodes, cb, bubble);\n }\n\n if (bubble) {\n cb(node, i, nodes);\n }\n }\n};\n","function stringifyNode(node, custom) {\n var type = node.type;\n var value = node.value;\n var buf;\n var customResult;\n\n if (custom && (customResult = custom(node)) !== undefined) {\n return customResult;\n } else if (type === \"word\" || type === \"space\") {\n return value;\n } else if (type === \"string\") {\n buf = node.quote || \"\";\n return buf + value + (node.unclosed ? \"\" : buf);\n } else if (type === \"comment\") {\n return \"/*\" + value + (node.unclosed ? \"\" : \"*/\");\n } else if (type === \"div\") {\n return (node.before || \"\") + value + (node.after || \"\");\n } else if (Array.isArray(node.nodes)) {\n buf = stringify(node.nodes, custom);\n if (type !== \"function\") {\n return buf;\n }\n return (\n value +\n \"(\" +\n (node.before || \"\") +\n buf +\n (node.after || \"\") +\n (node.unclosed ? \"\" : \")\")\n );\n }\n return value;\n}\n\nfunction stringify(nodes, custom) {\n var result, i;\n\n if (Array.isArray(nodes)) {\n result = \"\";\n for (i = nodes.length - 1; ~i; i -= 1) {\n result = stringifyNode(nodes[i], custom) + result;\n }\n return result;\n }\n return stringifyNode(nodes, custom);\n}\n\nmodule.exports = stringify;\n","var minus = \"-\".charCodeAt(0);\nvar plus = \"+\".charCodeAt(0);\nvar dot = \".\".charCodeAt(0);\nvar exp = \"e\".charCodeAt(0);\nvar EXP = \"E\".charCodeAt(0);\n\n// Check if three code points would start a number\n// https://www.w3.org/TR/css-syntax-3/#starts-with-a-number\nfunction likeNumber(value) {\n var code = value.charCodeAt(0);\n var nextCode;\n\n if (code === plus || code === minus) {\n nextCode = value.charCodeAt(1);\n\n if (nextCode >= 48 && nextCode <= 57) {\n return true;\n }\n\n var nextNextCode = value.charCodeAt(2);\n\n if (nextCode === dot && nextNextCode >= 48 && nextNextCode <= 57) {\n return true;\n }\n\n return false;\n }\n\n if (code === dot) {\n nextCode = value.charCodeAt(1);\n\n if (nextCode >= 48 && nextCode <= 57) {\n return true;\n }\n\n return false;\n }\n\n if (code >= 48 && code <= 57) {\n return true;\n }\n\n return false;\n}\n\n// Consume a number\n// https://www.w3.org/TR/css-syntax-3/#consume-number\nmodule.exports = function(value) {\n var pos = 0;\n var length = value.length;\n var code;\n var nextCode;\n var nextNextCode;\n\n if (length === 0 || !likeNumber(value)) {\n return false;\n }\n\n code = value.charCodeAt(pos);\n\n if (code === plus || code === minus) {\n pos++;\n }\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n\n code = value.charCodeAt(pos);\n nextCode = value.charCodeAt(pos + 1);\n\n if (code === dot && nextCode >= 48 && nextCode <= 57) {\n pos += 2;\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n }\n\n code = value.charCodeAt(pos);\n nextCode = value.charCodeAt(pos + 1);\n nextNextCode = value.charCodeAt(pos + 2);\n\n if (\n (code === exp || code === EXP) &&\n ((nextCode >= 48 && nextCode <= 57) ||\n ((nextCode === plus || nextCode === minus) &&\n nextNextCode >= 48 &&\n nextNextCode <= 57))\n ) {\n pos += nextCode === plus || nextCode === minus ? 3 : 2;\n\n while (pos < length) {\n code = value.charCodeAt(pos);\n\n if (code < 48 || code > 57) {\n break;\n }\n\n pos += 1;\n }\n }\n\n return {\n number: value.slice(0, pos),\n unit: value.slice(pos)\n };\n};\n","var parse = require(\"./parse\");\nvar walk = require(\"./walk\");\nvar stringify = require(\"./stringify\");\n\nfunction ValueParser(value) {\n if (this instanceof ValueParser) {\n this.nodes = parse(value);\n return this;\n }\n return new ValueParser(value);\n}\n\nValueParser.prototype.toString = function() {\n return Array.isArray(this.nodes) ? stringify(this.nodes) : \"\";\n};\n\nValueParser.prototype.walk = function(cb, bubble) {\n walk(this.nodes, cb, bubble);\n return this;\n};\n\nValueParser.unit = require(\"./unit\");\n\nValueParser.walk = walk;\n\nValueParser.stringify = stringify;\n\nmodule.exports = ValueParser;\n"],"names":["plus","parse","walk","stringify","require$$0","require$$1","require$$2","require$$3"],"mappings":"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"}