{"version":3,"sources":["../../../../../../../src/build/webpack/loaders/css-loader/src/plugins/postcss-url-parser.ts"],"sourcesContent":["import valueParser from 'next/dist/compiled/postcss-value-parser'\n\nimport {\n resolveRequests,\n normalizeUrl,\n requestify,\n isUrlRequestable,\n isDataUrl,\n // @ts-expect-error TODO: this export doesn't exist? Double check.\n WEBPACK_IGNORE_COMMENT_REGEXP,\n} from '../utils'\n\nconst isUrlFunc = /url/i\nconst isImageSetFunc = /^(?:-webkit-)?image-set$/i\nconst needParseDeclaration = /(?:url|(?:-webkit-)?image-set)\\(/i\n\nfunction getNodeFromUrlFunc(node: any) {\n return node.nodes && node.nodes[0]\n}\n\nfunction getWebpackIgnoreCommentValue(index: any, nodes: any, inBetween?: any) {\n if (index === 0 && typeof inBetween !== 'undefined') {\n return inBetween\n }\n\n let prevValueNode = nodes[index - 1]\n\n if (!prevValueNode) {\n return\n }\n\n if (prevValueNode.type === 'space') {\n if (!nodes[index - 2]) {\n return\n }\n\n prevValueNode = nodes[index - 2]\n }\n\n if (prevValueNode.type !== 'comment') {\n return\n }\n\n const matched = prevValueNode.value.match(WEBPACK_IGNORE_COMMENT_REGEXP)\n\n return matched && matched[2] === 'true'\n}\n\nfunction shouldHandleURL(\n url: any,\n declaration: any,\n result: any,\n isSupportDataURLInNewURL: any\n) {\n if (url.length === 0) {\n result.warn(`Unable to find uri in '${declaration.toString()}'`, {\n node: declaration,\n })\n\n return false\n }\n\n if (isDataUrl(url) && isSupportDataURLInNewURL) {\n try {\n decodeURIComponent(url)\n } catch (ignoreError) {\n return false\n }\n\n return true\n }\n\n if (!isUrlRequestable(url)) {\n return false\n }\n\n return true\n}\n\nfunction parseDeclaration(\n declaration: any,\n key: any,\n result: any,\n isSupportDataURLInNewURL: any\n) {\n if (!needParseDeclaration.test(declaration[key])) {\n return\n }\n\n const parsed = valueParser(\n declaration.raws && declaration.raws.value && declaration.raws.value.raw\n ? declaration.raws.value.raw\n : declaration[key]\n )\n\n let inBetween: any\n\n if (declaration.raws && declaration.raws.between) {\n const lastCommentIndex = declaration.raws.between.lastIndexOf('/*')\n\n const matched = declaration.raws.between\n .slice(lastCommentIndex)\n .match(WEBPACK_IGNORE_COMMENT_REGEXP)\n\n if (matched) {\n inBetween = matched[2] === 'true'\n }\n }\n\n let isIgnoreOnDeclaration = false\n\n const prevNode = declaration.prev()\n\n if (prevNode && prevNode.type === 'comment') {\n const matched = prevNode.text.match(WEBPACK_IGNORE_COMMENT_REGEXP)\n\n if (matched) {\n isIgnoreOnDeclaration = matched[2] === 'true'\n }\n }\n\n let needIgnore\n\n const parsedURLs: any[] = []\n\n parsed.walk((valueNode: any, index: any, valueNodes: any) => {\n if (valueNode.type !== 'function') {\n return\n }\n\n if (isUrlFunc.test(valueNode.value)) {\n needIgnore = getWebpackIgnoreCommentValue(index, valueNodes, inBetween)\n\n if (\n (isIgnoreOnDeclaration && typeof needIgnore === 'undefined') ||\n needIgnore\n ) {\n if (needIgnore) {\n needIgnore = undefined\n }\n\n return\n }\n\n const { nodes } = valueNode\n const isStringValue = nodes.length !== 0 && nodes[0].type === 'string'\n let url = isStringValue ? nodes[0].value : valueParser.stringify(nodes)\n url = normalizeUrl(url, isStringValue)\n\n // Do not traverse inside `url`\n if (\n !shouldHandleURL(url, declaration, result, isSupportDataURLInNewURL)\n ) {\n return false\n }\n\n const queryParts = url.split('!')\n let prefix\n\n if (queryParts.length > 1) {\n url = queryParts.pop()\n prefix = queryParts.join('!')\n }\n\n parsedURLs.push({\n declaration,\n parsed,\n node: getNodeFromUrlFunc(valueNode),\n prefix,\n url,\n needQuotes: false,\n })\n\n return false\n } else if (isImageSetFunc.test(valueNode.value)) {\n for (const [innerIndex, nNode] of valueNode.nodes.entries()) {\n const { type, value } = nNode\n\n if (type === 'function' && isUrlFunc.test(value)) {\n needIgnore = getWebpackIgnoreCommentValue(innerIndex, valueNode.nodes)\n\n if (\n (isIgnoreOnDeclaration && typeof needIgnore === 'undefined') ||\n needIgnore\n ) {\n if (needIgnore) {\n needIgnore = undefined\n }\n\n continue\n }\n\n const { nodes } = nNode\n const isStringValue = nodes.length !== 0 && nodes[0].type === 'string'\n let url = isStringValue\n ? nodes[0].value\n : valueParser.stringify(nodes)\n url = normalizeUrl(url, isStringValue)\n\n // Do not traverse inside `url`\n if (\n !shouldHandleURL(url, declaration, result, isSupportDataURLInNewURL)\n ) {\n return false\n }\n\n const queryParts = url.split('!')\n let prefix\n\n if (queryParts.length > 1) {\n url = queryParts.pop()\n prefix = queryParts.join('!')\n }\n\n parsedURLs.push({\n declaration,\n parsed,\n node: getNodeFromUrlFunc(nNode),\n prefix,\n url,\n needQuotes: false,\n })\n } else if (type === 'string') {\n needIgnore = getWebpackIgnoreCommentValue(innerIndex, valueNode.nodes)\n\n if (\n (isIgnoreOnDeclaration && typeof needIgnore === 'undefined') ||\n needIgnore\n ) {\n if (needIgnore) {\n needIgnore = undefined\n }\n\n continue\n }\n\n let url = normalizeUrl(value, true)\n\n // Do not traverse inside `url`\n if (\n !shouldHandleURL(url, declaration, result, isSupportDataURLInNewURL)\n ) {\n return false\n }\n\n const queryParts = url.split('!')\n let prefix\n\n if (queryParts.length > 1) {\n url = queryParts.pop()!\n prefix = queryParts.join('!')\n }\n\n parsedURLs.push({\n declaration,\n parsed,\n node: nNode,\n prefix,\n url,\n needQuotes: true,\n })\n }\n }\n\n // Do not traverse inside `image-set`\n return false\n }\n })\n\n return parsedURLs\n}\n\nconst plugin = (options: any = {}) => {\n return {\n postcssPlugin: 'postcss-url-parser',\n prepare(result: any) {\n const parsedDeclarations: any[] = []\n\n return {\n Declaration(declaration: any) {\n const { isSupportDataURLInNewURL } = options\n const parsedURL = parseDeclaration(\n declaration,\n 'value',\n result,\n isSupportDataURLInNewURL\n )\n\n if (!parsedURL) {\n return\n }\n\n parsedDeclarations.push(...parsedURL)\n },\n async OnceExit() {\n if (parsedDeclarations.length === 0) {\n return\n }\n\n const resolvedDeclarations = await Promise.all(\n parsedDeclarations.map(async (parsedDeclaration) => {\n const { url } = parsedDeclaration\n\n if (options.filter) {\n const needKeep = await options.filter(url)\n\n if (!needKeep) {\n return\n }\n }\n\n if (isDataUrl(url)) {\n return parsedDeclaration\n }\n\n const [pathname, query, hashOrQuery] = url.split(/(\\?)?#/, 3)\n\n let hash = query ? '?' : ''\n hash += hashOrQuery ? `#${hashOrQuery}` : ''\n\n const { needToResolveURL, rootContext } = options\n const request = requestify(\n pathname,\n rootContext,\n // @ts-expect-error TODO: only 2 arguments allowed.\n needToResolveURL\n )\n\n if (!needToResolveURL) {\n return { ...parsedDeclaration, url: request, hash }\n }\n\n const { resolver, context } = options\n const resolvedUrl = await resolveRequests(resolver, context, [\n ...new Set([request, url]),\n ])\n\n if (!resolvedUrl) {\n return\n }\n\n return { ...parsedDeclaration, url: resolvedUrl, hash }\n })\n )\n\n const urlToNameMap = new Map()\n const urlToReplacementMap = new Map()\n\n let hasUrlImportHelper = false\n\n for (\n let index = 0;\n index <= resolvedDeclarations.length - 1;\n index++\n ) {\n const item = resolvedDeclarations[index]\n\n if (!item) {\n continue\n }\n\n if (!hasUrlImportHelper) {\n options.imports.push({\n type: 'get_url_import',\n importName: '___CSS_LOADER_GET_URL_IMPORT___',\n url: options.urlHandler(\n require.resolve('../runtime/getUrl.js')\n ),\n index: -1,\n })\n\n hasUrlImportHelper = true\n }\n\n const { url, prefix } = item\n const newUrl = prefix ? `${prefix}!${url}` : url\n let importName = urlToNameMap.get(newUrl)\n\n if (!importName) {\n importName = `___CSS_LOADER_URL_IMPORT_${urlToNameMap.size}___`\n urlToNameMap.set(newUrl, importName)\n\n options.imports.push({\n type: 'url',\n importName,\n url: options.needToResolveURL\n ? options.urlHandler(newUrl)\n : JSON.stringify(newUrl),\n index,\n })\n }\n\n const { hash, needQuotes } = item\n const replacementKey = JSON.stringify({ newUrl, hash, needQuotes })\n let replacementName = urlToReplacementMap.get(replacementKey)\n\n if (!replacementName) {\n replacementName = `___CSS_LOADER_URL_REPLACEMENT_${urlToReplacementMap.size}___`\n urlToReplacementMap.set(replacementKey, replacementName)\n\n options.replacements.push({\n replacementName,\n importName,\n hash,\n needQuotes,\n })\n }\n\n item.node.type = 'word'\n item.node.value = replacementName\n item.declaration.value = item.parsed.toString()\n }\n },\n }\n },\n }\n}\n\nplugin.postcss = true\n\nexport default plugin\n"],"names":["isUrlFunc","isImageSetFunc","needParseDeclaration","getNodeFromUrlFunc","node","nodes","getWebpackIgnoreCommentValue","index","inBetween","prevValueNode","type","matched","value","match","WEBPACK_IGNORE_COMMENT_REGEXP","shouldHandleURL","url","declaration","result","isSupportDataURLInNewURL","length","warn","toString","isDataUrl","decodeURIComponent","ignoreError","isUrlRequestable","parseDeclaration","key","test","parsed","valueParser","raws","raw","between","lastCommentIndex","lastIndexOf","slice","isIgnoreOnDeclaration","prevNode","prev","text","needIgnore","parsedURLs","walk","valueNode","valueNodes","undefined","isStringValue","stringify","normalizeUrl","queryParts","split","prefix","pop","join","push","needQuotes","innerIndex","nNode","entries","plugin","options","postcssPlugin","prepare","parsedDeclarations","Declaration","parsedURL","OnceExit","resolvedDeclarations","Promise","all","map","parsedDeclaration","filter","needKeep","pathname","query","hashOrQuery","hash","needToResolveURL","rootContext","request","requestify","resolver","context","resolvedUrl","resolveRequests","Set","urlToNameMap","Map","urlToReplacementMap","hasUrlImportHelper","item","imports","importName","urlHandler","require","resolve","newUrl","get","size","set","JSON","replacementKey","replacementName","replacements","postcss"],"mappings":"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","ignoreList":[0]}