summaryrefslogtreecommitdiff
path: root/node_modules/vite/dist/node/chunks/dep-BB45zftN.js
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-18 22:32:53 -0500
committerChristian Cleberg <[email protected]>2026-04-18 22:32:53 -0500
commit580e798e16346eb894eb899edac82d2efdf40adc (patch)
tree6dec3b7db678f781138b40d34da37d21ac8fbe7d /node_modules/vite/dist/node/chunks/dep-BB45zftN.js
downloadbrand-bench-580e798e16346eb894eb899edac82d2efdf40adc.tar.gz
brand-bench-580e798e16346eb894eb899edac82d2efdf40adc.tar.bz2
brand-bench-580e798e16346eb894eb899edac82d2efdf40adc.zip
initial commit
Diffstat (limited to 'node_modules/vite/dist/node/chunks/dep-BB45zftN.js')
-rw-r--r--node_modules/vite/dist/node/chunks/dep-BB45zftN.js993
1 files changed, 993 insertions, 0 deletions
diff --git a/node_modules/vite/dist/node/chunks/dep-BB45zftN.js b/node_modules/vite/dist/node/chunks/dep-BB45zftN.js
new file mode 100644
index 0000000..b96cb15
--- /dev/null
+++ b/node_modules/vite/dist/node/chunks/dep-BB45zftN.js
@@ -0,0 +1,993 @@
+import { C as getDefaultExportFromCjs } from './dep-BK3b2jBa.js';
+import require$$0 from 'path';
+import require$$0__default from 'fs';
+import { l as lib } from './dep-IQS-Za7F.js';
+
+import { fileURLToPath as __cjs_fileURLToPath } from 'node:url';
+import { dirname as __cjs_dirname } from 'node:path';
+import { createRequire as __cjs_createRequire } from 'node:module';
+
+const __filename = __cjs_fileURLToPath(import.meta.url);
+const __dirname = __cjs_dirname(__filename);
+const require = __cjs_createRequire(import.meta.url);
+const __require = require;
+function _mergeNamespaces(n, m) {
+ for (var i = 0; i < m.length; i++) {
+ var e = m[i];
+ if (typeof e !== 'string' && !Array.isArray(e)) { for (var k in e) {
+ if (k !== 'default' && !(k in n)) {
+ n[k] = e[k];
+ }
+ } }
+ }
+ return n;
+}
+
+var formatImportPrelude$2 = function formatImportPrelude(layer, media, supports) {
+ const parts = [];
+
+ if (typeof layer !== "undefined") {
+ let layerParams = "layer";
+ if (layer) {
+ layerParams = `layer(${layer})`;
+ }
+
+ parts.push(layerParams);
+ }
+
+ if (typeof supports !== "undefined") {
+ parts.push(`supports(${supports})`);
+ }
+
+ if (typeof media !== "undefined") {
+ parts.push(media);
+ }
+
+ return parts.join(" ")
+};
+
+const formatImportPrelude$1 = formatImportPrelude$2;
+
+// Base64 encode an import with conditions
+// The order of conditions is important and is interleaved with cascade layer declarations
+// Each group of conditions and cascade layers needs to be interpreted in order
+// To achieve this we create a list of base64 encoded imports, where each import contains a stylesheet with another import.
+// Each import can define a single group of conditions and a single cascade layer.
+var base64EncodedImport = function base64EncodedConditionalImport(prelude, conditions) {
+ conditions.reverse();
+ const first = conditions.pop();
+ let params = `${prelude} ${formatImportPrelude$1(
+ first.layer,
+ first.media,
+ first.supports,
+ )}`;
+
+ for (const condition of conditions) {
+ params = `'data:text/css;base64,${Buffer.from(`@import ${params}`).toString(
+ "base64",
+ )}' ${formatImportPrelude$1(
+ condition.layer,
+ condition.media,
+ condition.supports,
+ )}`;
+ }
+
+ return params
+};
+
+const base64EncodedConditionalImport = base64EncodedImport;
+
+var applyConditions$1 = function applyConditions(bundle, atRule) {
+ bundle.forEach(stmt => {
+ if (
+ stmt.type === "charset" ||
+ stmt.type === "warning" ||
+ !stmt.conditions?.length
+ ) {
+ return
+ }
+
+ if (stmt.type === "import") {
+ stmt.node.params = base64EncodedConditionalImport(
+ stmt.fullUri,
+ stmt.conditions,
+ );
+ return
+ }
+
+ const { nodes } = stmt;
+ const { parent } = nodes[0];
+
+ const atRules = [];
+
+ // Convert conditions to at-rules
+ for (const condition of stmt.conditions) {
+ if (typeof condition.media !== "undefined") {
+ const mediaNode = atRule({
+ name: "media",
+ params: condition.media,
+ source: parent.source,
+ });
+
+ atRules.push(mediaNode);
+ }
+
+ if (typeof condition.supports !== "undefined") {
+ const supportsNode = atRule({
+ name: "supports",
+ params: `(${condition.supports})`,
+ source: parent.source,
+ });
+
+ atRules.push(supportsNode);
+ }
+
+ if (typeof condition.layer !== "undefined") {
+ const layerNode = atRule({
+ name: "layer",
+ params: condition.layer,
+ source: parent.source,
+ });
+
+ atRules.push(layerNode);
+ }
+ }
+
+ // Add nodes to AST
+ const outerAtRule = atRules.shift();
+ const innerAtRule = atRules.reduce((previous, next) => {
+ previous.append(next);
+ return next
+ }, outerAtRule);
+
+ parent.insertBefore(nodes[0], outerAtRule);
+
+ // remove nodes
+ nodes.forEach(node => {
+ node.parent = undefined;
+ });
+
+ // better output
+ nodes[0].raws.before = nodes[0].raws.before || "\n";
+
+ // wrap new rules with media query and/or layer at rule
+ innerAtRule.append(nodes);
+
+ stmt.type = "nodes";
+ stmt.nodes = [outerAtRule];
+ delete stmt.node;
+ });
+};
+
+var applyRaws$1 = function applyRaws(bundle) {
+ bundle.forEach((stmt, index) => {
+ if (index === 0) return
+
+ if (stmt.parent) {
+ const { before } = stmt.parent.node.raws;
+ if (stmt.type === "nodes") stmt.nodes[0].raws.before = before;
+ else stmt.node.raws.before = before;
+ } else if (stmt.type === "nodes") {
+ stmt.nodes[0].raws.before = stmt.nodes[0].raws.before || "\n";
+ }
+ });
+};
+
+var applyStyles$1 = function applyStyles(bundle, styles) {
+ styles.nodes = [];
+
+ // Strip additional statements.
+ bundle.forEach(stmt => {
+ if (["charset", "import"].includes(stmt.type)) {
+ stmt.node.parent = undefined;
+ styles.append(stmt.node);
+ } else if (stmt.type === "nodes") {
+ stmt.nodes.forEach(node => {
+ node.parent = undefined;
+ styles.append(node);
+ });
+ }
+ });
+};
+
+var readCache$1 = {exports: {}};
+
+var pify$2 = {exports: {}};
+
+var processFn = function (fn, P, opts) {
+ return function () {
+ var that = this;
+ var args = new Array(arguments.length);
+
+ for (var i = 0; i < arguments.length; i++) {
+ args[i] = arguments[i];
+ }
+
+ return new P(function (resolve, reject) {
+ args.push(function (err, result) {
+ if (err) {
+ reject(err);
+ } else if (opts.multiArgs) {
+ var results = new Array(arguments.length - 1);
+
+ for (var i = 1; i < arguments.length; i++) {
+ results[i - 1] = arguments[i];
+ }
+
+ resolve(results);
+ } else {
+ resolve(result);
+ }
+ });
+
+ fn.apply(that, args);
+ });
+ };
+};
+
+var pify$1 = pify$2.exports = function (obj, P, opts) {
+ if (typeof P !== 'function') {
+ opts = P;
+ P = Promise;
+ }
+
+ opts = opts || {};
+ opts.exclude = opts.exclude || [/.+Sync$/];
+
+ var filter = function (key) {
+ var match = function (pattern) {
+ return typeof pattern === 'string' ? key === pattern : pattern.test(key);
+ };
+
+ return opts.include ? opts.include.some(match) : !opts.exclude.some(match);
+ };
+
+ var ret = typeof obj === 'function' ? function () {
+ if (opts.excludeMain) {
+ return obj.apply(this, arguments);
+ }
+
+ return processFn(obj, P, opts).apply(this, arguments);
+ } : {};
+
+ return Object.keys(obj).reduce(function (ret, key) {
+ var x = obj[key];
+
+ ret[key] = typeof x === 'function' && filter(key) ? processFn(x, P, opts) : x;
+
+ return ret;
+ }, ret);
+};
+
+pify$1.all = pify$1;
+
+var pifyExports = pify$2.exports;
+
+var fs = require$$0__default;
+var path$3 = require$$0;
+var pify = pifyExports;
+
+var stat = pify(fs.stat);
+var readFile = pify(fs.readFile);
+var resolve = path$3.resolve;
+
+var cache = Object.create(null);
+
+function convert(content, encoding) {
+ if (Buffer.isEncoding(encoding)) {
+ return content.toString(encoding);
+ }
+ return content;
+}
+
+readCache$1.exports = function (path, encoding) {
+ path = resolve(path);
+
+ return stat(path).then(function (stats) {
+ var item = cache[path];
+
+ if (item && item.mtime.getTime() === stats.mtime.getTime()) {
+ return convert(item.content, encoding);
+ }
+
+ return readFile(path).then(function (data) {
+ cache[path] = {
+ mtime: stats.mtime,
+ content: data
+ };
+
+ return convert(data, encoding);
+ });
+ }).catch(function (err) {
+ cache[path] = null;
+ return Promise.reject(err);
+ });
+};
+
+readCache$1.exports.sync = function (path, encoding) {
+ path = resolve(path);
+
+ try {
+ var stats = fs.statSync(path);
+ var item = cache[path];
+
+ if (item && item.mtime.getTime() === stats.mtime.getTime()) {
+ return convert(item.content, encoding);
+ }
+
+ var data = fs.readFileSync(path);
+
+ cache[path] = {
+ mtime: stats.mtime,
+ content: data
+ };
+
+ return convert(data, encoding);
+ } catch (err) {
+ cache[path] = null;
+ throw err;
+ }
+
+};
+
+readCache$1.exports.get = function (path, encoding) {
+ path = resolve(path);
+ if (cache[path]) {
+ return convert(cache[path].content, encoding);
+ }
+ return null;
+};
+
+readCache$1.exports.clear = function () {
+ cache = Object.create(null);
+};
+
+var readCacheExports = readCache$1.exports;
+
+const anyDataURLRegexp = /^data:text\/css(?:;(base64|plain))?,/i;
+const base64DataURLRegexp = /^data:text\/css;base64,/i;
+const plainDataURLRegexp = /^data:text\/css;plain,/i;
+
+function isValid(url) {
+ return anyDataURLRegexp.test(url)
+}
+
+function contents(url) {
+ if (base64DataURLRegexp.test(url)) {
+ // "data:text/css;base64,".length === 21
+ return Buffer.from(url.slice(21), "base64").toString()
+ }
+
+ if (plainDataURLRegexp.test(url)) {
+ // "data:text/css;plain,".length === 20
+ return decodeURIComponent(url.slice(20))
+ }
+
+ // "data:text/css,".length === 14
+ return decodeURIComponent(url.slice(14))
+}
+
+var dataUrl = {
+ isValid,
+ contents,
+};
+
+const readCache = readCacheExports;
+const dataURL$1 = dataUrl;
+
+var loadContent$1 = function loadContent(filename) {
+ if (dataURL$1.isValid(filename)) {
+ return dataURL$1.contents(filename)
+ }
+
+ return readCache(filename, "utf-8")
+};
+
+// external tooling
+const valueParser = lib;
+
+// extended tooling
+const { stringify } = valueParser;
+
+var parseStatements$1 = function parseStatements(result, styles, conditions, from) {
+ const statements = [];
+ let nodes = [];
+
+ styles.each(node => {
+ let stmt;
+ if (node.type === "atrule") {
+ if (node.name === "import")
+ stmt = parseImport(result, node, conditions, from);
+ else if (node.name === "charset")
+ stmt = parseCharset(result, node, conditions, from);
+ }
+
+ if (stmt) {
+ if (nodes.length) {
+ statements.push({
+ type: "nodes",
+ nodes,
+ conditions: [...conditions],
+ from,
+ });
+ nodes = [];
+ }
+ statements.push(stmt);
+ } else nodes.push(node);
+ });
+
+ if (nodes.length) {
+ statements.push({
+ type: "nodes",
+ nodes,
+ conditions: [...conditions],
+ from,
+ });
+ }
+
+ return statements
+};
+
+function parseCharset(result, atRule, conditions, from) {
+ if (atRule.prev()) {
+ return result.warn("@charset must precede all other statements", {
+ node: atRule,
+ })
+ }
+ return {
+ type: "charset",
+ node: atRule,
+ conditions: [...conditions],
+ from,
+ }
+}
+
+function parseImport(result, atRule, conditions, from) {
+ let prev = atRule.prev();
+
+ // `@import` statements may follow other `@import` statements.
+ if (prev) {
+ do {
+ if (
+ prev.type === "comment" ||
+ (prev.type === "atrule" && prev.name === "import")
+ ) {
+ prev = prev.prev();
+ continue
+ }
+
+ break
+ } while (prev)
+ }
+
+ // All `@import` statements may be preceded by `@charset` or `@layer` statements.
+ // But the `@import` statements must be consecutive.
+ if (prev) {
+ do {
+ if (
+ prev.type === "comment" ||
+ (prev.type === "atrule" &&
+ (prev.name === "charset" || (prev.name === "layer" && !prev.nodes)))
+ ) {
+ prev = prev.prev();
+ continue
+ }
+
+ return result.warn(
+ "@import must precede all other statements (besides @charset or empty @layer)",
+ { node: atRule },
+ )
+ } while (prev)
+ }
+
+ if (atRule.nodes) {
+ return result.warn(
+ "It looks like you didn't end your @import statement correctly. " +
+ "Child nodes are attached to it.",
+ { node: atRule },
+ )
+ }
+
+ const params = valueParser(atRule.params).nodes;
+ const stmt = {
+ type: "import",
+ uri: "",
+ fullUri: "",
+ node: atRule,
+ conditions: [...conditions],
+ from,
+ };
+
+ let layer;
+ let media;
+ let supports;
+
+ for (let i = 0; i < params.length; i++) {
+ const node = params[i];
+
+ if (node.type === "space" || node.type === "comment") continue
+
+ if (node.type === "string") {
+ if (stmt.uri) {
+ return result.warn(`Multiple url's in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ if (!node.value) {
+ return result.warn(`Unable to find uri in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ stmt.uri = node.value;
+ stmt.fullUri = stringify(node);
+ continue
+ }
+
+ if (node.type === "function" && /^url$/i.test(node.value)) {
+ if (stmt.uri) {
+ return result.warn(`Multiple url's in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ if (!node.nodes?.[0]?.value) {
+ return result.warn(`Unable to find uri in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ stmt.uri = node.nodes[0].value;
+ stmt.fullUri = stringify(node);
+ continue
+ }
+
+ if (!stmt.uri) {
+ return result.warn(`Unable to find uri in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ if (
+ (node.type === "word" || node.type === "function") &&
+ /^layer$/i.test(node.value)
+ ) {
+ if (typeof layer !== "undefined") {
+ return result.warn(`Multiple layers in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ if (typeof supports !== "undefined") {
+ return result.warn(
+ `layers must be defined before support conditions in '${atRule.toString()}'`,
+ {
+ node: atRule,
+ },
+ )
+ }
+
+ if (node.nodes) {
+ layer = stringify(node.nodes);
+ } else {
+ layer = "";
+ }
+
+ continue
+ }
+
+ if (node.type === "function" && /^supports$/i.test(node.value)) {
+ if (typeof supports !== "undefined") {
+ return result.warn(
+ `Multiple support conditions in '${atRule.toString()}'`,
+ {
+ node: atRule,
+ },
+ )
+ }
+
+ supports = stringify(node.nodes);
+
+ continue
+ }
+
+ media = stringify(params.slice(i));
+ break
+ }
+
+ if (!stmt.uri) {
+ return result.warn(`Unable to find uri in '${atRule.toString()}'`, {
+ node: atRule,
+ })
+ }
+
+ if (
+ typeof media !== "undefined" ||
+ typeof layer !== "undefined" ||
+ typeof supports !== "undefined"
+ ) {
+ stmt.conditions.push({
+ layer,
+ media,
+ supports,
+ });
+ }
+
+ return stmt
+}
+
+// builtin tooling
+const path$2 = require$$0;
+
+// placeholder tooling
+let sugarss;
+
+var processContent$1 = function processContent(
+ result,
+ content,
+ filename,
+ options,
+ postcss,
+) {
+ const { plugins } = options;
+ const ext = path$2.extname(filename);
+
+ const parserList = [];
+
+ // SugarSS support:
+ if (ext === ".sss") {
+ if (!sugarss) {
+ /* c8 ignore next 3 */
+ try {
+ sugarss = __require('sugarss');
+ } catch {} // Ignore
+ }
+ if (sugarss)
+ return runPostcss(postcss, content, filename, plugins, [sugarss])
+ }
+
+ // Syntax support:
+ if (result.opts.syntax?.parse) {
+ parserList.push(result.opts.syntax.parse);
+ }
+
+ // Parser support:
+ if (result.opts.parser) parserList.push(result.opts.parser);
+ // Try the default as a last resort:
+ parserList.push(null);
+
+ return runPostcss(postcss, content, filename, plugins, parserList)
+};
+
+function runPostcss(postcss, content, filename, plugins, parsers, index) {
+ if (!index) index = 0;
+ return postcss(plugins)
+ .process(content, {
+ from: filename,
+ parser: parsers[index],
+ })
+ .catch(err => {
+ // If there's an error, try the next parser
+ index++;
+ // If there are no parsers left, throw it
+ if (index === parsers.length) throw err
+ return runPostcss(postcss, content, filename, plugins, parsers, index)
+ })
+}
+
+const path$1 = require$$0;
+
+const dataURL = dataUrl;
+const parseStatements = parseStatements$1;
+const processContent = processContent$1;
+const resolveId$1 = (id) => id;
+const formatImportPrelude = formatImportPrelude$2;
+
+async function parseStyles$1(
+ result,
+ styles,
+ options,
+ state,
+ conditions,
+ from,
+ postcss,
+) {
+ const statements = parseStatements(result, styles, conditions, from);
+
+ for (const stmt of statements) {
+ if (stmt.type !== "import" || !isProcessableURL(stmt.uri)) {
+ continue
+ }
+
+ if (options.filter && !options.filter(stmt.uri)) {
+ // rejected by filter
+ continue
+ }
+
+ await resolveImportId(result, stmt, options, state, postcss);
+ }
+
+ let charset;
+ const imports = [];
+ const bundle = [];
+
+ function handleCharset(stmt) {
+ if (!charset) charset = stmt;
+ // charsets aren't case-sensitive, so convert to lower case to compare
+ else if (
+ stmt.node.params.toLowerCase() !== charset.node.params.toLowerCase()
+ ) {
+ throw stmt.node.error(
+ `Incompatible @charset statements:
+ ${stmt.node.params} specified in ${stmt.node.source.input.file}
+ ${charset.node.params} specified in ${charset.node.source.input.file}`,
+ )
+ }
+ }
+
+ // squash statements and their children
+ statements.forEach(stmt => {
+ if (stmt.type === "charset") handleCharset(stmt);
+ else if (stmt.type === "import") {
+ if (stmt.children) {
+ stmt.children.forEach((child, index) => {
+ if (child.type === "import") imports.push(child);
+ else if (child.type === "charset") handleCharset(child);
+ else bundle.push(child);
+ // For better output
+ if (index === 0) child.parent = stmt;
+ });
+ } else imports.push(stmt);
+ } else if (stmt.type === "nodes") {
+ bundle.push(stmt);
+ }
+ });
+
+ return charset ? [charset, ...imports.concat(bundle)] : imports.concat(bundle)
+}
+
+async function resolveImportId(result, stmt, options, state, postcss) {
+ if (dataURL.isValid(stmt.uri)) {
+ // eslint-disable-next-line require-atomic-updates
+ stmt.children = await loadImportContent(
+ result,
+ stmt,
+ stmt.uri,
+ options,
+ state,
+ postcss,
+ );
+
+ return
+ } else if (dataURL.isValid(stmt.from.slice(-1))) {
+ // Data urls can't be used as a base url to resolve imports.
+ throw stmt.node.error(
+ `Unable to import '${stmt.uri}' from a stylesheet that is embedded in a data url`,
+ )
+ }
+
+ const atRule = stmt.node;
+ let sourceFile;
+ if (atRule.source?.input?.file) {
+ sourceFile = atRule.source.input.file;
+ }
+ const base = sourceFile
+ ? path$1.dirname(atRule.source.input.file)
+ : options.root;
+
+ const paths = [await options.resolve(stmt.uri, base, options, atRule)].flat();
+
+ // Ensure that each path is absolute:
+ const resolved = await Promise.all(
+ paths.map(file => {
+ return !path$1.isAbsolute(file)
+ ? resolveId$1(file)
+ : file
+ }),
+ );
+
+ // Add dependency messages:
+ resolved.forEach(file => {
+ result.messages.push({
+ type: "dependency",
+ plugin: "postcss-import",
+ file,
+ parent: sourceFile,
+ });
+ });
+
+ const importedContent = await Promise.all(
+ resolved.map(file => {
+ return loadImportContent(result, stmt, file, options, state, postcss)
+ }),
+ );
+
+ // Merge loaded statements
+ // eslint-disable-next-line require-atomic-updates
+ stmt.children = importedContent.flat().filter(x => !!x);
+}
+
+async function loadImportContent(
+ result,
+ stmt,
+ filename,
+ options,
+ state,
+ postcss,
+) {
+ const atRule = stmt.node;
+ const { conditions, from } = stmt;
+ const stmtDuplicateCheckKey = conditions
+ .map(condition =>
+ formatImportPrelude(condition.layer, condition.media, condition.supports),
+ )
+ .join(":");
+
+ if (options.skipDuplicates) {
+ // skip files already imported at the same scope
+ if (state.importedFiles[filename]?.[stmtDuplicateCheckKey]) {
+ return
+ }
+
+ // save imported files to skip them next time
+ if (!state.importedFiles[filename]) {
+ state.importedFiles[filename] = {};
+ }
+ state.importedFiles[filename][stmtDuplicateCheckKey] = true;
+ }
+
+ if (from.includes(filename)) {
+ return
+ }
+
+ const content = await options.load(filename, options);
+
+ if (content.trim() === "" && options.warnOnEmpty) {
+ result.warn(`${filename} is empty`, { node: atRule });
+ return
+ }
+
+ // skip previous imported files not containing @import rules
+ if (
+ options.skipDuplicates &&
+ state.hashFiles[content]?.[stmtDuplicateCheckKey]
+ ) {
+ return
+ }
+
+ const importedResult = await processContent(
+ result,
+ content,
+ filename,
+ options,
+ postcss,
+ );
+
+ const styles = importedResult.root;
+ result.messages = result.messages.concat(importedResult.messages);
+
+ if (options.skipDuplicates) {
+ const hasImport = styles.some(child => {
+ return child.type === "atrule" && child.name === "import"
+ });
+ if (!hasImport) {
+ // save hash files to skip them next time
+ if (!state.hashFiles[content]) {
+ state.hashFiles[content] = {};
+ }
+
+ state.hashFiles[content][stmtDuplicateCheckKey] = true;
+ }
+ }
+
+ // recursion: import @import from imported file
+ return parseStyles$1(
+ result,
+ styles,
+ options,
+ state,
+ conditions,
+ [...from, filename],
+ postcss,
+ )
+}
+
+function isProcessableURL(uri) {
+ // skip protocol base uri (protocol://url) or protocol-relative
+ if (/^(?:[a-z]+:)?\/\//i.test(uri)) {
+ return false
+ }
+
+ // check for fragment or query
+ try {
+ // needs a base to parse properly
+ const url = new URL(uri, "https://example.com");
+ if (url.search) {
+ return false
+ }
+ } catch {} // Ignore
+
+ return true
+}
+
+var parseStyles_1 = parseStyles$1;
+
+// builtin tooling
+const path = require$$0;
+
+// internal tooling
+const applyConditions = applyConditions$1;
+const applyRaws = applyRaws$1;
+const applyStyles = applyStyles$1;
+const loadContent = loadContent$1;
+const parseStyles = parseStyles_1;
+const resolveId = (id) => id;
+
+function AtImport(options) {
+ options = {
+ root: process.cwd(),
+ path: [],
+ skipDuplicates: true,
+ resolve: resolveId,
+ load: loadContent,
+ plugins: [],
+ addModulesDirectories: [],
+ warnOnEmpty: true,
+ ...options,
+ };
+
+ options.root = path.resolve(options.root);
+
+ // convert string to an array of a single element
+ if (typeof options.path === "string") options.path = [options.path];
+
+ if (!Array.isArray(options.path)) options.path = [];
+
+ options.path = options.path.map(p => path.resolve(options.root, p));
+
+ return {
+ postcssPlugin: "postcss-import",
+ async Once(styles, { result, atRule, postcss }) {
+ const state = {
+ importedFiles: {},
+ hashFiles: {},
+ };
+
+ if (styles.source?.input?.file) {
+ state.importedFiles[styles.source.input.file] = {};
+ }
+
+ if (options.plugins && !Array.isArray(options.plugins)) {
+ throw new Error("plugins option must be an array")
+ }
+
+ const bundle = await parseStyles(
+ result,
+ styles,
+ options,
+ state,
+ [],
+ [],
+ postcss,
+ );
+
+ applyRaws(bundle);
+ applyConditions(bundle, atRule);
+ applyStyles(bundle, styles);
+ },
+ }
+}
+
+AtImport.postcss = true;
+
+var postcssImport = AtImport;
+
+var index = /*@__PURE__*/getDefaultExportFromCjs(postcssImport);
+
+var index$1 = /*#__PURE__*/_mergeNamespaces({
+ __proto__: null,
+ default: index
+}, [postcssImport]);
+
+export { index$1 as i };