Initial boiler plate project

This commit is contained in:
2024-09-24 03:52:46 +00:00
parent 6120b2d6c3
commit 154b93e267
10034 changed files with 2079352 additions and 2 deletions

View File

@ -0,0 +1,172 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
0 && (module.exports = {
getDefineEnv: null,
getDefineEnvPlugin: null
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: all[name]
});
}
_export(exports, {
getDefineEnv: function() {
return getDefineEnv;
},
getDefineEnvPlugin: function() {
return getDefineEnvPlugin;
}
});
const _webpack = require("next/dist/compiled/webpack/webpack");
const _needsexperimentalreact = require("../../../lib/needs-experimental-react");
function errorIfEnvConflicted(config, key) {
const isPrivateKey = /^(?:NODE_.+)|^(?:__.+)$/i.test(key);
const hasNextRuntimeKey = key === "NEXT_RUNTIME";
if (isPrivateKey || hasNextRuntimeKey) {
throw new Error(`The key "${key}" under "env" in ${config.configFileName} is not allowed. https://nextjs.org/docs/messages/env-key-not-allowed`);
}
}
/**
* Collects all environment variables that are using the `NEXT_PUBLIC_` prefix.
*/ function getNextPublicEnvironmentVariables() {
const defineEnv = {};
for(const key in process.env){
if (key.startsWith("NEXT_PUBLIC_")) {
const value = process.env[key];
if (value != null) {
defineEnv[`process.env.${key}`] = value;
}
}
}
return defineEnv;
}
/**
* Collects the `env` config value from the Next.js config.
*/ function getNextConfigEnv(config) {
// Refactored code below to use for-of
const defineEnv = {};
const env = config.env;
for(const key in env){
const value = env[key];
if (value != null) {
errorIfEnvConflicted(config, key);
defineEnv[`process.env.${key}`] = value;
}
}
return defineEnv;
}
/**
* Serializes the DefineEnv config so that it can be inserted into the code by Webpack/Turbopack, JSON stringifies each value.
*/ function serializeDefineEnv(defineEnv) {
const defineEnvStringified = {};
for(const key in defineEnv){
const value = defineEnv[key];
defineEnvStringified[key] = JSON.stringify(value);
}
return defineEnvStringified;
}
function getImageConfig(config, dev) {
var _config_images, _config_images1;
return {
"process.env.__NEXT_IMAGE_OPTS": {
deviceSizes: config.images.deviceSizes,
imageSizes: config.images.imageSizes,
path: config.images.path,
loader: config.images.loader,
dangerouslyAllowSVG: config.images.dangerouslyAllowSVG,
unoptimized: config == null ? void 0 : (_config_images = config.images) == null ? void 0 : _config_images.unoptimized,
...dev ? {
// pass domains in development to allow validating on the client
domains: config.images.domains,
remotePatterns: (_config_images1 = config.images) == null ? void 0 : _config_images1.remotePatterns,
output: config.output
} : {}
}
};
}
function getDefineEnv({ isTurbopack, clientRouterFilters, config, dev, distDir, fetchCacheKeyPrefix, hasRewrites, isClient, isEdgeServer, isNodeOrEdgeCompilation, isNodeServer, middlewareMatchers }) {
var _config_experimental_staleTimes, _config_experimental_staleTimes1, _config_experimental_staleTimes2, _config_experimental_staleTimes3, _config_i18n;
const defineEnv = {
// internal field to identify the plugin config
__NEXT_DEFINE_ENV: true,
...getNextPublicEnvironmentVariables(),
...getNextConfigEnv(config),
...!isEdgeServer ? {} : {
EdgeRuntime: /**
* Cloud providers can set this environment variable to allow users
* and library authors to have different implementations based on
* the runtime they are running with, if it's not using `edge-runtime`
*/ process.env.NEXT_EDGE_RUNTIME_PROVIDER ?? "edge-runtime"
},
"process.turbopack": isTurbopack,
"process.env.TURBOPACK": isTurbopack,
// TODO: enforce `NODE_ENV` on `process.env`, and add a test:
"process.env.NODE_ENV": dev ? "development" : "production",
"process.env.NEXT_RUNTIME": isEdgeServer ? "edge" : isNodeServer ? "nodejs" : "",
"process.env.NEXT_MINIMAL": "",
"process.env.__NEXT_PPR": config.experimental.ppr === true,
"process.env.NEXT_DEPLOYMENT_ID": config.deploymentId || false,
"process.env.__NEXT_FETCH_CACHE_KEY_PREFIX": fetchCacheKeyPrefix ?? "",
"process.env.__NEXT_MIDDLEWARE_MATCHERS": middlewareMatchers ?? [],
"process.env.__NEXT_MANUAL_CLIENT_BASE_PATH": config.experimental.manualClientBasePath ?? false,
"process.env.__NEXT_CLIENT_ROUTER_DYNAMIC_STALETIME": JSON.stringify(isNaN(Number((_config_experimental_staleTimes = config.experimental.staleTimes) == null ? void 0 : _config_experimental_staleTimes.dynamic)) ? 30 // 30 seconds
: (_config_experimental_staleTimes1 = config.experimental.staleTimes) == null ? void 0 : _config_experimental_staleTimes1.dynamic),
"process.env.__NEXT_CLIENT_ROUTER_STATIC_STALETIME": JSON.stringify(isNaN(Number((_config_experimental_staleTimes2 = config.experimental.staleTimes) == null ? void 0 : _config_experimental_staleTimes2.static)) ? 5 * 60 // 5 minutes
: (_config_experimental_staleTimes3 = config.experimental.staleTimes) == null ? void 0 : _config_experimental_staleTimes3.static),
"process.env.__NEXT_CLIENT_ROUTER_FILTER_ENABLED": config.experimental.clientRouterFilter ?? true,
"process.env.__NEXT_CLIENT_ROUTER_S_FILTER": (clientRouterFilters == null ? void 0 : clientRouterFilters.staticFilter) ?? false,
"process.env.__NEXT_CLIENT_ROUTER_D_FILTER": (clientRouterFilters == null ? void 0 : clientRouterFilters.dynamicFilter) ?? false,
"process.env.__NEXT_OPTIMISTIC_CLIENT_CACHE": config.experimental.optimisticClientCache ?? true,
"process.env.__NEXT_MIDDLEWARE_PREFETCH": config.experimental.middlewarePrefetch ?? "flexible",
"process.env.__NEXT_CROSS_ORIGIN": config.crossOrigin,
"process.browser": isClient,
"process.env.__NEXT_TEST_MODE": process.env.__NEXT_TEST_MODE ?? false,
// This is used in client/dev-error-overlay/hot-dev-client.js to replace the dist directory
...dev && (isClient ?? isEdgeServer) ? {
"process.env.__NEXT_DIST_DIR": distDir
} : {},
"process.env.__NEXT_TRAILING_SLASH": config.trailingSlash,
"process.env.__NEXT_BUILD_INDICATOR": config.devIndicators.buildActivity ?? true,
"process.env.__NEXT_BUILD_INDICATOR_POSITION": config.devIndicators.buildActivityPosition ?? "bottom-right",
"process.env.__NEXT_STRICT_MODE": config.reactStrictMode === null ? false : config.reactStrictMode,
"process.env.__NEXT_STRICT_MODE_APP": // When next.config.js does not have reactStrictMode it's enabled by default.
config.reactStrictMode === null ? true : config.reactStrictMode,
"process.env.__NEXT_OPTIMIZE_FONTS": !dev && config.optimizeFonts,
"process.env.__NEXT_OPTIMIZE_CSS": (config.experimental.optimizeCss && !dev) ?? false,
"process.env.__NEXT_SCRIPT_WORKERS": (config.experimental.nextScriptWorkers && !dev) ?? false,
"process.env.__NEXT_SCROLL_RESTORATION": config.experimental.scrollRestoration ?? false,
...getImageConfig(config, dev),
"process.env.__NEXT_ROUTER_BASEPATH": config.basePath,
"process.env.__NEXT_STRICT_NEXT_HEAD": config.experimental.strictNextHead ?? false,
"process.env.__NEXT_HAS_REWRITES": hasRewrites,
"process.env.__NEXT_CONFIG_OUTPUT": config.output,
"process.env.__NEXT_I18N_SUPPORT": !!config.i18n,
"process.env.__NEXT_I18N_DOMAINS": ((_config_i18n = config.i18n) == null ? void 0 : _config_i18n.domains) ?? false,
"process.env.__NEXT_ANALYTICS_ID": config.analyticsId,
"process.env.__NEXT_NO_MIDDLEWARE_URL_NORMALIZE": config.skipMiddlewareUrlNormalize,
"process.env.__NEXT_EXTERNAL_MIDDLEWARE_REWRITE_RESOLVE": config.experimental.externalMiddlewareRewritesResolve ?? false,
"process.env.__NEXT_MANUAL_TRAILING_SLASH": config.skipTrailingSlashRedirect,
"process.env.__NEXT_HAS_WEB_VITALS_ATTRIBUTION": (config.experimental.webVitalsAttribution && config.experimental.webVitalsAttribution.length > 0) ?? false,
"process.env.__NEXT_WEB_VITALS_ATTRIBUTION": config.experimental.webVitalsAttribution ?? false,
"process.env.__NEXT_LINK_NO_TOUCH_START": config.experimental.linkNoTouchStart ?? false,
"process.env.__NEXT_ASSET_PREFIX": config.assetPrefix,
...isNodeOrEdgeCompilation ? {
// Fix bad-actors in the npm ecosystem (e.g. `node-formidable`)
// This is typically found in unmaintained modules from the
// pre-webpack era (common in server-side code)
"global.GENTLY": false
} : undefined,
...isNodeOrEdgeCompilation ? {
"process.env.__NEXT_EXPERIMENTAL_REACT": (0, _needsexperimentalreact.needsExperimentalReact)(config)
} : undefined
};
return serializeDefineEnv(defineEnv);
}
function getDefineEnvPlugin(options) {
return new _webpack.webpack.DefinePlugin(getDefineEnv(options));
}
//# sourceMappingURL=define-env-plugin.js.map