main repo

This commit is contained in:
Basilosaurusrex
2025-11-24 18:09:40 +01:00
parent b636ee5e70
commit f027651f9b
34146 changed files with 4436636 additions and 0 deletions

212
node_modules/next/dist/lib/turbopack-warning.js generated vendored Normal file
View File

@@ -0,0 +1,212 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "validateTurboNextConfig", {
enumerable: true,
get: function() {
return validateTurboNextConfig;
}
});
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
const _config = /*#__PURE__*/ _interop_require_default(require("../server/config"));
const _constants = require("../shared/lib/constants");
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
const supportedTurbopackNextConfigOptions = [
"configFileName",
"env",
"basePath",
"modularizeImports",
"compiler.emotion",
"compiler.relay",
"compiler.styledComponents",
"images",
"pageExtensions",
"onDemandEntries",
"rewrites",
"redirects",
"headers",
"reactStrictMode",
"swcMinify",
"transpilePackages",
"trailingSlash",
"i18n.locales",
"i18n.defaultLocale",
"sassOptions",
"configOrigin",
"httpAgentOptions",
"useFileSystemPublicRoutes",
"generateEtags",
"assetPrefix",
"experimental.serverComponentsExternalPackages",
"experimental.turbo",
"experimental.mdxRs",
"experimental.forceSwcTransforms",
"experimental.serverActionsBodySizeLimit",
"experimental.memoryBasedWorkersCount",
// options below are not really supported, but ignored
"webpack",
"devIndicators",
"onDemandEntries",
"excludeDefaultMomentLocales",
"experimental.cpus",
"experimental.sharedPool",
"experimental.proxyTimeout",
"experimental.isrFlushToDisk",
"experimental.workerThreads",
"experimental.caseSensitiveRoutes",
"experimental.optimizePackageImports",
"experimental.optimizeServerReact"
];
// The following will need to be supported by `next build --turbo`
const prodSpecificTurboNextConfigOptions = [
"eslint",
"typescript",
"staticPageGenerationTimeout",
"outputFileTracing",
"output",
"generateBuildId",
"analyticsId",
"compress",
"productionBrowserSourceMaps",
"optimizeFonts",
"poweredByHeader",
"staticPageGenerationTimeout",
"reactProductionProfiling",
"cleanDistDir",
"compiler.reactRemoveProperties",
"compiler.removeConsole",
"experimental.turbotrace",
"experimental.outputFileTracingRoot",
"experimental.outputFileTracingExcludes",
"experimental.outputFileTracingIgnores",
"experiemental.outputFileTracingIncludes",
"experimental.gzipSize",
"experimental.useDeploymentId",
"experimental.useDeploymentIdServerActions",
"experimental.deploymentId",
"experimental.serverMinification",
"experimental.serverSourceMaps",
"experimenta.trustHostHeader"
];
async function validateTurboNextConfig({ dir, isCustomTurbopack, isDev }) {
const { getPkgManager } = require("../lib/helpers/get-pkg-manager");
const { getBabelConfigFile } = require("../build/get-babel-config-file");
const { defaultConfig } = require("../server/config-shared");
const chalk = require("next/dist/compiled/chalk");
const { interopDefault } = require("../lib/interop-default");
// To regenerate the TURBOPACK gradient require('gradient-string')('blue', 'red')('>>> TURBOPACK')
const isTTY = process.stdout.isTTY;
const turbopackGradient = `${chalk.bold(isTTY ? "\x1b[38;2;0;0;255m>\x1b[39m\x1b[38;2;23;0;232m>\x1b[39m\x1b[38;2;46;0;209m>\x1b[39m \x1b[38;2;70;0;185mT\x1b[39m\x1b[38;2;93;0;162mU\x1b[39m\x1b[38;2;116;0;139mR\x1b[39m\x1b[38;2;139;0;116mB\x1b[39m\x1b[38;2;162;0;93mO\x1b[39m\x1b[38;2;185;0;70mP\x1b[39m\x1b[38;2;209;0;46mA\x1b[39m\x1b[38;2;232;0;23mC\x1b[39m\x1b[38;2;255;0;0mK\x1b[39m" : ">>> TURBOPACK")} ${chalk.dim("(beta)")}\n\n`;
let thankYouMessage = [
"Thank you for trying Next.js v13 with Turbopack! As a reminder",
"Turbopack is currently in beta and not yet ready for production.",
"We appreciate your ongoing support as we work to make it ready",
"for everyone."
].join("\n") + "\n\n";
let unsupportedParts = "";
let babelrc = await getBabelConfigFile(dir);
if (babelrc) babelrc = _path.default.basename(babelrc);
let hasWebpack = false;
let hasTurbo = false;
let unsupportedConfig = [];
let rawNextConfig = {};
try {
rawNextConfig = interopDefault(await (0, _config.default)(_constants.PHASE_DEVELOPMENT_SERVER, dir, {
rawConfig: true
}));
if (typeof rawNextConfig === "function") {
rawNextConfig = rawNextConfig(_constants.PHASE_DEVELOPMENT_SERVER, {
defaultConfig
});
}
const flattenKeys = (obj, prefix = "")=>{
let keys = [];
for(const key in obj){
if (typeof (obj == null ? void 0 : obj[key]) === "undefined") {
continue;
}
const pre = prefix.length ? `${prefix}.` : "";
if (typeof obj[key] === "object" && !Array.isArray(obj[key]) && obj[key] !== null) {
keys = keys.concat(flattenKeys(obj[key], pre + key));
} else {
keys.push(pre + key);
}
}
return keys;
};
const getDeepValue = (obj, keys)=>{
if (typeof keys === "string") {
keys = keys.split(".");
}
if (keys.length === 1) {
return obj == null ? void 0 : obj[keys == null ? void 0 : keys[0]];
}
return getDeepValue(obj == null ? void 0 : obj[keys == null ? void 0 : keys[0]], keys.slice(1));
};
const customKeys = flattenKeys(rawNextConfig);
let supportedKeys = isDev ? [
...supportedTurbopackNextConfigOptions,
...prodSpecificTurboNextConfigOptions
] : supportedTurbopackNextConfigOptions;
for (const key of customKeys){
if (key.startsWith("webpack")) {
hasWebpack = true;
}
if (key.startsWith("experimental.turbo")) {
hasTurbo = true;
}
let isSupported = supportedKeys.some((supportedKey)=>key.startsWith(supportedKey)) || getDeepValue(rawNextConfig, key) === getDeepValue(defaultConfig, key);
if (!isSupported) {
unsupportedConfig.push(key);
}
}
} catch (e) {
console.error("Unexpected error occurred while checking config", e);
}
const hasWarningOrError = babelrc || unsupportedConfig.length;
if (!hasWarningOrError) {
thankYouMessage = chalk.dim(thankYouMessage);
}
if (!isCustomTurbopack) {
console.log(turbopackGradient + thankYouMessage);
}
let feedbackMessage = `Learn more about Next.js v13 and Turbopack: ${chalk.underline("https://nextjs.link/with-turbopack")}\nPlease direct feedback to: ${chalk.underline("https://nextjs.link/turbopack-feedback")}\n`;
if (hasWebpack && !hasTurbo) {
console.warn(`\n${chalk.yellow("Warning:")} Webpack is configured while Turbopack is not, which may cause problems.\n
${`See instructions if you need to configure Turbopack:\n https://turbo.build/pack/docs/features/customizing-turbopack\n`}`);
}
if (babelrc) {
unsupportedParts += `\n- Babel detected (${chalk.cyan(babelrc)})\n Babel is not yet supported. To use Turbopack at the moment,\n you'll need to remove your usage of Babel.`;
}
if (unsupportedConfig.length === 1 && unsupportedConfig[0] === "experimental.optimizePackageImports") {
console.warn(`\n${chalk.yellow("Warning:")} ${chalk.cyan("experimental.optimizePackageImports")} is not yet supported by Turbopack and will be ignored.`);
} else if (unsupportedConfig.length) {
unsupportedParts += `\n\n- Unsupported Next.js configuration option(s) (${chalk.cyan("next.config.js")})\n To use Turbopack, remove the following configuration options:\n${unsupportedConfig.map((name)=>` - ${chalk.red(name)}\n`).join("")}`;
}
if (unsupportedParts && !isCustomTurbopack) {
const pkgManager = getPkgManager(dir);
console.error(`Error: You are using configuration and/or tools that are not yet\nsupported by Next.js v13 with Turbopack:\n${unsupportedParts}\n
If you cannot make the changes above, but still want to try out\nNext.js v13 with Turbopack, create the Next.js v13 playground app\nby running the following commands:
${chalk.bold.cyan(`${pkgManager === "npm" ? "npx create-next-app" : `${pkgManager} create next-app`} --example with-turbopack with-turbopack-app`)}\n cd with-turbopack-app\n ${pkgManager} run dev
`);
if (!isCustomTurbopack) {
console.warn(feedbackMessage);
process.exit(1);
} else {
console.warn("\n");
console.warn(`${chalk.bold.yellow("Warning:")} Unsupported config found; but continuing with custom Turbopack binary.\n`);
}
}
if (!isCustomTurbopack) {
console.log(feedbackMessage);
}
return rawNextConfig;
}
//# sourceMappingURL=turbopack-warning.js.map