next 14.2.30 → 14.2.32
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.
- package/dist/bin/next +1 -1
- package/dist/build/index.js +1 -1
- package/dist/build/swc/index.js +1 -1
- package/dist/build/webpack-config.js +2 -2
- package/dist/client/app-bootstrap.js +1 -1
- package/dist/client/index.js +1 -1
- package/dist/esm/build/index.js +1 -1
- package/dist/esm/build/swc/index.js +1 -1
- package/dist/esm/build/webpack-config.js +2 -2
- package/dist/esm/client/app-bootstrap.js +1 -1
- package/dist/esm/client/index.js +1 -1
- package/dist/esm/server/config.js +1 -1
- package/dist/esm/server/dev/hot-reloader-turbopack.js +1 -1
- package/dist/esm/server/dev/hot-reloader-webpack.js +1 -1
- package/dist/esm/server/image-optimizer.js +150 -34
- package/dist/esm/server/image-optimizer.js.map +1 -1
- package/dist/esm/server/lib/app-info-log.js +1 -1
- package/dist/esm/server/lib/router-utils/resolve-routes.js +26 -10
- package/dist/esm/server/lib/router-utils/resolve-routes.js.map +1 -1
- package/dist/esm/server/lib/start-server.js +1 -1
- package/dist/esm/server/serve-static.js +9 -0
- package/dist/esm/server/serve-static.js.map +1 -1
- package/dist/server/config.js +1 -1
- package/dist/server/dev/hot-reloader-turbopack.js +1 -1
- package/dist/server/dev/hot-reloader-webpack.js +1 -1
- package/dist/server/image-optimizer.d.ts +1 -1
- package/dist/server/image-optimizer.js +150 -34
- package/dist/server/image-optimizer.js.map +1 -1
- package/dist/server/lib/app-info-log.js +1 -1
- package/dist/server/lib/router-utils/resolve-routes.js +25 -9
- package/dist/server/lib/router-utils/resolve-routes.js.map +1 -1
- package/dist/server/lib/start-server.js +1 -1
- package/dist/server/serve-static.js +9 -0
- package/dist/server/serve-static.js.map +1 -1
- package/dist/telemetry/anonymous-meta.js +1 -1
- package/dist/telemetry/events/session-stopped.js +2 -2
- package/dist/telemetry/events/version.js +2 -2
- package/package.json +15 -15
package/dist/bin/next
CHANGED
|
@@ -71,7 +71,7 @@ const program = new MyRootCommand();
|
|
|
71
71
|
program.name("next").description("The Next.js CLI allows you to develop, build, start your application, and more.").configureHelp({
|
|
72
72
|
formatHelp: (cmd, helper)=>(0, _formatclihelpoutput.formatCliHelpOutput)(cmd, helper),
|
|
73
73
|
subcommandTerm: (cmd)=>`${cmd.name()} ${cmd.usage()}`
|
|
74
|
-
}).helpCommand(false).helpOption("-h, --help", "Displays this message.").version(`Next.js v${"14.2.
|
|
74
|
+
}).helpCommand(false).helpOption("-h, --help", "Displays this message.").version(`Next.js v${"14.2.32"}`, "-v, --version", "Outputs the Next.js version.");
|
|
75
75
|
program.command("build").description("Creates an optimized production build of your application. The output displays information about each route.").argument("[directory]", `A directory on which to build the application. ${(0, _picocolors.italic)("If no directory is provided, the current directory will be used.")}`).option("-d, --debug", "Enables a more verbose build output.").option("--no-lint", "Disables linting.").option("--no-mangling", "Disables mangling.").option("--profile", "Enables production profiling for React.").option("--experimental-app-only", "Builds only App Router routes.").addOption(new _commander.Option("--experimental-turbo").hideHelp()).addOption(new _commander.Option("--experimental-build-mode [mode]", "Uses an experimental build mode.").choices([
|
|
76
76
|
"compile",
|
|
77
77
|
"generate"
|
package/dist/build/index.js
CHANGED
|
@@ -358,7 +358,7 @@ async function build(dir, reactProductionProfiling = false, debugOutput = false,
|
|
|
358
358
|
const nextBuildSpan = (0, _trace.trace)("next-build", undefined, {
|
|
359
359
|
buildMode: experimentalBuildMode,
|
|
360
360
|
isTurboBuild: String(turboNextBuild),
|
|
361
|
-
version: "14.2.
|
|
361
|
+
version: "14.2.32"
|
|
362
362
|
});
|
|
363
363
|
_buildcontext.NextBuildContext.nextBuildSpan = nextBuildSpan;
|
|
364
364
|
_buildcontext.NextBuildContext.dir = dir;
|
package/dist/build/swc/index.js
CHANGED
|
@@ -129,7 +129,7 @@ function _interop_require_wildcard(obj, nodeInterop) {
|
|
|
129
129
|
}
|
|
130
130
|
return newObj;
|
|
131
131
|
}
|
|
132
|
-
const nextVersion = "14.2.
|
|
132
|
+
const nextVersion = "14.2.32";
|
|
133
133
|
const ArchName = (0, _os.arch)();
|
|
134
134
|
const PlatformName = (0, _os.platform)();
|
|
135
135
|
const infoLog = (...args)=>{
|
|
@@ -1515,7 +1515,7 @@ async function getBaseWebpackConfig(dir, { buildId, encryptionKey, config, compi
|
|
|
1515
1515
|
new _wellknownerrorsplugin.WellKnownErrorsPlugin(),
|
|
1516
1516
|
isClient && new _copyfileplugin.CopyFilePlugin({
|
|
1517
1517
|
filePath: require.resolve("./polyfills/polyfill-nomodule"),
|
|
1518
|
-
cacheKey: "14.2.
|
|
1518
|
+
cacheKey: "14.2.32",
|
|
1519
1519
|
name: `static/chunks/polyfills${dev ? "" : "-[hash]"}.js`,
|
|
1520
1520
|
minimize: false,
|
|
1521
1521
|
info: {
|
|
@@ -1743,7 +1743,7 @@ async function getBaseWebpackConfig(dir, { buildId, encryptionKey, config, compi
|
|
|
1743
1743
|
// - Next.js location on disk (some loaders use absolute paths and some resolve options depend on absolute paths)
|
|
1744
1744
|
// - Next.js version
|
|
1745
1745
|
// - next.config.js keys that affect compilation
|
|
1746
|
-
version: `${__dirname}|${"14.2.
|
|
1746
|
+
version: `${__dirname}|${"14.2.32"}|${configVars}`,
|
|
1747
1747
|
cacheDirectory: _path.default.join(distDir, "cache", "webpack"),
|
|
1748
1748
|
// For production builds, it's more efficient to compress all cache files together instead of compression each one individually.
|
|
1749
1749
|
// So we disable compression here and allow the build runner to take care of compressing the cache as a whole.
|
package/dist/client/index.js
CHANGED
|
@@ -62,7 +62,7 @@ const _hooksclientcontextsharedruntime = require("../shared/lib/hooks-client-con
|
|
|
62
62
|
const _onrecoverableerror = /*#__PURE__*/ _interop_require_default._(require("./on-recoverable-error"));
|
|
63
63
|
const _tracer = /*#__PURE__*/ _interop_require_default._(require("./tracing/tracer"));
|
|
64
64
|
const _reporttosocket = /*#__PURE__*/ _interop_require_default._(require("./tracing/report-to-socket"));
|
|
65
|
-
const version = "14.2.
|
|
65
|
+
const version = "14.2.32";
|
|
66
66
|
let router;
|
|
67
67
|
const emitter = (0, _mitt.default)();
|
|
68
68
|
const looseToArray = (input)=>[].slice.call(input);
|
package/dist/esm/build/index.js
CHANGED
|
@@ -302,7 +302,7 @@ export default async function build(dir, reactProductionProfiling = false, debug
|
|
|
302
302
|
const nextBuildSpan = trace("next-build", undefined, {
|
|
303
303
|
buildMode: experimentalBuildMode,
|
|
304
304
|
isTurboBuild: String(turboNextBuild),
|
|
305
|
-
version: "14.2.
|
|
305
|
+
version: "14.2.32"
|
|
306
306
|
});
|
|
307
307
|
NextBuildContext.nextBuildSpan = nextBuildSpan;
|
|
308
308
|
NextBuildContext.dir = dir;
|
|
@@ -9,7 +9,7 @@ import { patchIncorrectLockfile } from "../../lib/patch-incorrect-lockfile";
|
|
|
9
9
|
import { downloadNativeNextSwc, downloadWasmSwc } from "../../lib/download-swc";
|
|
10
10
|
import { isDeepStrictEqual } from "util";
|
|
11
11
|
import { getDefineEnv } from "../webpack/plugins/define-env-plugin";
|
|
12
|
-
const nextVersion = "14.2.
|
|
12
|
+
const nextVersion = "14.2.32";
|
|
13
13
|
const ArchName = arch();
|
|
14
14
|
const PlatformName = platform();
|
|
15
15
|
const infoLog = (...args)=>{
|
|
@@ -1408,7 +1408,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
|
|
|
1408
1408
|
new WellKnownErrorsPlugin(),
|
|
1409
1409
|
isClient && new CopyFilePlugin({
|
|
1410
1410
|
filePath: require.resolve("./polyfills/polyfill-nomodule"),
|
|
1411
|
-
cacheKey: "14.2.
|
|
1411
|
+
cacheKey: "14.2.32",
|
|
1412
1412
|
name: `static/chunks/polyfills${dev ? "" : "-[hash]"}.js`,
|
|
1413
1413
|
minimize: false,
|
|
1414
1414
|
info: {
|
|
@@ -1636,7 +1636,7 @@ export default async function getBaseWebpackConfig(dir, { buildId, encryptionKey
|
|
|
1636
1636
|
// - Next.js location on disk (some loaders use absolute paths and some resolve options depend on absolute paths)
|
|
1637
1637
|
// - Next.js version
|
|
1638
1638
|
// - next.config.js keys that affect compilation
|
|
1639
|
-
version: `${__dirname}|${"14.2.
|
|
1639
|
+
version: `${__dirname}|${"14.2.32"}|${configVars}`,
|
|
1640
1640
|
cacheDirectory: path.join(distDir, "cache", "webpack"),
|
|
1641
1641
|
// For production builds, it's more efficient to compress all cache files together instead of compression each one individually.
|
|
1642
1642
|
// So we disable compression here and allow the build runner to take care of compressing the cache as a whole.
|
package/dist/esm/client/index.js
CHANGED
|
@@ -26,7 +26,7 @@ import { SearchParamsContext, PathParamsContext } from "../shared/lib/hooks-clie
|
|
|
26
26
|
import onRecoverableError from "./on-recoverable-error";
|
|
27
27
|
import tracer from "./tracing/tracer";
|
|
28
28
|
import reportToSocket from "./tracing/report-to-socket";
|
|
29
|
-
export const version = "14.2.
|
|
29
|
+
export const version = "14.2.32";
|
|
30
30
|
export let router;
|
|
31
31
|
export const emitter = mitt();
|
|
32
32
|
const looseToArray = (input)=>[].slice.call(input);
|
|
@@ -184,7 +184,7 @@ function assignDefaults(dir, userConfig, silent) {
|
|
|
184
184
|
...defaultConfig,
|
|
185
185
|
...config
|
|
186
186
|
};
|
|
187
|
-
if (((_result_experimental = result.experimental) == null ? void 0 : _result_experimental.ppr) && !"14.2.
|
|
187
|
+
if (((_result_experimental = result.experimental) == null ? void 0 : _result_experimental.ppr) && !"14.2.32".includes("canary") && !process.env.__NEXT_TEST_MODE) {
|
|
188
188
|
throw new Error(`The experimental.ppr preview feature can only be enabled when using the latest canary version of Next.js. See more info here: https://nextjs.org/docs/messages/ppr-preview`);
|
|
189
189
|
}
|
|
190
190
|
if (result.output === "export") {
|
|
@@ -40,7 +40,7 @@ export async function createHotReloaderTurbopack(opts, serverFields, distDir) {
|
|
|
40
40
|
}
|
|
41
41
|
const hasRewrites = opts.fsChecker.rewrites.afterFiles.length > 0 || opts.fsChecker.rewrites.beforeFiles.length > 0 || opts.fsChecker.rewrites.fallback.length > 0;
|
|
42
42
|
const hotReloaderSpan = trace("hot-reloader", undefined, {
|
|
43
|
-
version: "14.2.
|
|
43
|
+
version: "14.2.32"
|
|
44
44
|
});
|
|
45
45
|
// Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
|
|
46
46
|
// of the current `next dev` invocation.
|
|
@@ -189,7 +189,7 @@ export default class HotReloaderWebpack {
|
|
|
189
189
|
this.previewProps = previewProps;
|
|
190
190
|
this.rewrites = rewrites;
|
|
191
191
|
this.hotReloaderSpan = trace("hot-reloader", undefined, {
|
|
192
|
-
version: "14.2.
|
|
192
|
+
version: "14.2.32"
|
|
193
193
|
});
|
|
194
194
|
// Ensure the hotReloaderSpan is flushed immediately as it's the parentSpan for all processing
|
|
195
195
|
// of the current `next dev` invocation.
|
|
@@ -20,17 +20,29 @@ const AVIF = "image/avif";
|
|
|
20
20
|
const WEBP = "image/webp";
|
|
21
21
|
const PNG = "image/png";
|
|
22
22
|
const JPEG = "image/jpeg";
|
|
23
|
+
const JXL = "image/jxl";
|
|
24
|
+
const JP2 = "image/jp2";
|
|
25
|
+
const HEIC = "image/heic";
|
|
23
26
|
const GIF = "image/gif";
|
|
24
27
|
const SVG = "image/svg+xml";
|
|
25
28
|
const ICO = "image/x-icon";
|
|
29
|
+
const ICNS = "image/x-icns";
|
|
30
|
+
const TIFF = "image/tiff";
|
|
31
|
+
const BMP = "image/bmp";
|
|
32
|
+
const PDF = "application/pdf";
|
|
26
33
|
const CACHE_VERSION = 3;
|
|
27
34
|
const ANIMATABLE_TYPES = [
|
|
28
35
|
WEBP,
|
|
29
36
|
PNG,
|
|
30
37
|
GIF
|
|
31
38
|
];
|
|
32
|
-
const
|
|
33
|
-
SVG
|
|
39
|
+
const BYPASS_TYPES = [
|
|
40
|
+
SVG,
|
|
41
|
+
ICO,
|
|
42
|
+
ICNS,
|
|
43
|
+
BMP,
|
|
44
|
+
JXL,
|
|
45
|
+
HEIC
|
|
34
46
|
];
|
|
35
47
|
const BLUR_IMG_SIZE = 8 // should match `next-image-loader`
|
|
36
48
|
;
|
|
@@ -80,7 +92,7 @@ async function writeToCacheDir(dir, extension, maxAge, expireAt, buffer, etag) {
|
|
|
80
92
|
* Inspects the first few bytes of a buffer to determine if
|
|
81
93
|
* it matches the "magic number" of known file signatures.
|
|
82
94
|
* https://en.wikipedia.org/wiki/List_of_file_signatures
|
|
83
|
-
*/ export function detectContentType(buffer) {
|
|
95
|
+
*/ export async function detectContentType(buffer) {
|
|
84
96
|
if ([
|
|
85
97
|
0xff,
|
|
86
98
|
0xd8,
|
|
@@ -157,6 +169,117 @@ async function writeToCacheDir(dir, extension, maxAge, expireAt, buffer, etag) {
|
|
|
157
169
|
].every((b, i)=>buffer[i] === b)) {
|
|
158
170
|
return ICO;
|
|
159
171
|
}
|
|
172
|
+
if ([
|
|
173
|
+
0x69,
|
|
174
|
+
0x63,
|
|
175
|
+
0x6e,
|
|
176
|
+
0x73
|
|
177
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
178
|
+
return ICNS;
|
|
179
|
+
}
|
|
180
|
+
if ([
|
|
181
|
+
0x49,
|
|
182
|
+
0x49,
|
|
183
|
+
0x2a,
|
|
184
|
+
0x00
|
|
185
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
186
|
+
return TIFF;
|
|
187
|
+
}
|
|
188
|
+
if ([
|
|
189
|
+
0x42,
|
|
190
|
+
0x4d
|
|
191
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
192
|
+
return BMP;
|
|
193
|
+
}
|
|
194
|
+
if ([
|
|
195
|
+
0xff,
|
|
196
|
+
0x0a
|
|
197
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
198
|
+
return JXL;
|
|
199
|
+
}
|
|
200
|
+
if ([
|
|
201
|
+
0x00,
|
|
202
|
+
0x00,
|
|
203
|
+
0x00,
|
|
204
|
+
0x0c,
|
|
205
|
+
0x4a,
|
|
206
|
+
0x58,
|
|
207
|
+
0x4c,
|
|
208
|
+
0x20,
|
|
209
|
+
0x0d,
|
|
210
|
+
0x0a,
|
|
211
|
+
0x87,
|
|
212
|
+
0x0a
|
|
213
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
214
|
+
return JXL;
|
|
215
|
+
}
|
|
216
|
+
if ([
|
|
217
|
+
0,
|
|
218
|
+
0,
|
|
219
|
+
0,
|
|
220
|
+
0,
|
|
221
|
+
0x66,
|
|
222
|
+
0x74,
|
|
223
|
+
0x79,
|
|
224
|
+
0x70,
|
|
225
|
+
0x68,
|
|
226
|
+
0x65,
|
|
227
|
+
0x69,
|
|
228
|
+
0x63
|
|
229
|
+
].every((b, i)=>!b || buffer[i] === b)) {
|
|
230
|
+
return HEIC;
|
|
231
|
+
}
|
|
232
|
+
if ([
|
|
233
|
+
0x25,
|
|
234
|
+
0x50,
|
|
235
|
+
0x44,
|
|
236
|
+
0x46,
|
|
237
|
+
0x2d
|
|
238
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
239
|
+
return PDF;
|
|
240
|
+
}
|
|
241
|
+
if ([
|
|
242
|
+
0x00,
|
|
243
|
+
0x00,
|
|
244
|
+
0x00,
|
|
245
|
+
0x0c,
|
|
246
|
+
0x6a,
|
|
247
|
+
0x50,
|
|
248
|
+
0x20,
|
|
249
|
+
0x20,
|
|
250
|
+
0x0d,
|
|
251
|
+
0x0a,
|
|
252
|
+
0x87,
|
|
253
|
+
0x0a
|
|
254
|
+
].every((b, i)=>buffer[i] === b)) {
|
|
255
|
+
return JP2;
|
|
256
|
+
}
|
|
257
|
+
// Fallback to sharp if available
|
|
258
|
+
if (sharp) {
|
|
259
|
+
const meta = await sharp(buffer).metadata().catch((_)=>null);
|
|
260
|
+
switch(meta == null ? void 0 : meta.format){
|
|
261
|
+
case "avif":
|
|
262
|
+
return AVIF;
|
|
263
|
+
case "webp":
|
|
264
|
+
return WEBP;
|
|
265
|
+
case "png":
|
|
266
|
+
return PNG;
|
|
267
|
+
case "jpeg":
|
|
268
|
+
case "jpg":
|
|
269
|
+
return JPEG;
|
|
270
|
+
case "gif":
|
|
271
|
+
return GIF;
|
|
272
|
+
case "svg":
|
|
273
|
+
return SVG;
|
|
274
|
+
case "tiff":
|
|
275
|
+
case "tif":
|
|
276
|
+
return TIFF;
|
|
277
|
+
case "heif":
|
|
278
|
+
return HEIC;
|
|
279
|
+
default:
|
|
280
|
+
return null;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
160
283
|
return null;
|
|
161
284
|
}
|
|
162
285
|
export class ImageOptimizerCache {
|
|
@@ -516,7 +639,6 @@ export async function fetchInternalImage(href, _req, _res, handleRequest) {
|
|
|
516
639
|
const mocked = createRequestResponseMocks({
|
|
517
640
|
url: href,
|
|
518
641
|
method: _req.method || "GET",
|
|
519
|
-
headers: _req.headers,
|
|
520
642
|
socket: _req.socket
|
|
521
643
|
});
|
|
522
644
|
await handleRequest(mocked.req, mocked.res, nodeUrl.parse(href, true));
|
|
@@ -539,43 +661,37 @@ export async function fetchInternalImage(href, _req, _res, handleRequest) {
|
|
|
539
661
|
}
|
|
540
662
|
}
|
|
541
663
|
export async function imageOptimizer(imageUpstream, paramsResult, nextConfig, isDev) {
|
|
542
|
-
var _imageUpstream_contentType;
|
|
543
664
|
const { href, quality, width, mimeType } = paramsResult;
|
|
544
665
|
const upstreamBuffer = imageUpstream.buffer;
|
|
545
666
|
const maxAge = getMaxAge(imageUpstream.cacheControl);
|
|
546
|
-
const upstreamType = detectContentType(upstreamBuffer)
|
|
547
|
-
if (upstreamType) {
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
}
|
|
570
|
-
if (!upstreamType.startsWith("image/") || upstreamType.includes(",")) {
|
|
571
|
-
Log.error("The requested resource isn't a valid image for", href, "received", upstreamType);
|
|
572
|
-
throw new ImageError(400, "The requested resource isn't a valid image.");
|
|
573
|
-
}
|
|
667
|
+
const upstreamType = await detectContentType(upstreamBuffer);
|
|
668
|
+
if (!upstreamType || !upstreamType.startsWith("image/") || upstreamType.includes(",")) {
|
|
669
|
+
Log.error("The requested resource isn't a valid image for", href, "received", upstreamType);
|
|
670
|
+
throw new ImageError(400, "The requested resource isn't a valid image.");
|
|
671
|
+
}
|
|
672
|
+
if (upstreamType.startsWith("image/svg") && !nextConfig.images.dangerouslyAllowSVG) {
|
|
673
|
+
Log.error(`The requested resource "${href}" has type "${upstreamType}" but dangerouslyAllowSVG is disabled`);
|
|
674
|
+
throw new ImageError(400, '"url" parameter is valid but image type is not allowed');
|
|
675
|
+
}
|
|
676
|
+
if (ANIMATABLE_TYPES.includes(upstreamType) && isAnimated(upstreamBuffer)) {
|
|
677
|
+
Log.warnOnce(`The requested resource "${href}" is an animated image so it will not be optimized. Consider adding the "unoptimized" property to the <Image>.`);
|
|
678
|
+
return {
|
|
679
|
+
buffer: upstreamBuffer,
|
|
680
|
+
contentType: upstreamType,
|
|
681
|
+
maxAge
|
|
682
|
+
};
|
|
683
|
+
}
|
|
684
|
+
if (BYPASS_TYPES.includes(upstreamType)) {
|
|
685
|
+
return {
|
|
686
|
+
buffer: upstreamBuffer,
|
|
687
|
+
contentType: upstreamType,
|
|
688
|
+
maxAge
|
|
689
|
+
};
|
|
574
690
|
}
|
|
575
691
|
let contentType;
|
|
576
692
|
if (mimeType) {
|
|
577
693
|
contentType = mimeType;
|
|
578
|
-
} else if (
|
|
694
|
+
} else if (getExtension(upstreamType) && upstreamType !== WEBP && upstreamType !== AVIF) {
|
|
579
695
|
contentType = upstreamType;
|
|
580
696
|
} else {
|
|
581
697
|
contentType = JPEG;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/server/image-optimizer.ts"],"names":["createHash","promises","cpus","mediaType","contentDisposition","getOrientation","Orientation","imageSizeOf","isAnimated","join","nodeUrl","getImageBlurSvg","hasLocalMatch","hasRemoteMatch","createRequestResponseMocks","sendEtagResponse","getContentType","getExtension","Log","parseUrl","AVIF","WEBP","PNG","JPEG","GIF","SVG","ICO","CACHE_VERSION","ANIMATABLE_TYPES","VECTOR_TYPES","BLUR_IMG_SIZE","BLUR_QUALITY","sharp","require","process","env","NEXT_SHARP_PATH","concurrency","divisor","NODE_ENV","Math","floor","max","length","e","showSharpMissingWarning","getSupportedMimeType","options","accept","mimeType","includes","getHash","items","hash","item","update","String","digest","replace","writeToCacheDir","dir","extension","maxAge","expireAt","buffer","etag","filename","rm","recursive","force","catch","mkdir","writeFile","detectContentType","every","b","i","ImageOptimizerCache","validateParams","req","query","nextConfig","isDev","imageData","images","deviceSizes","imageSizes","domains","minimumCacheTTL","formats","remotePatterns","localPatterns","qualities","url","w","q","href","warnOnce","errorMessage","Array","isArray","startsWith","isAbsolute","test","decodeURIComponent","pathname","hrefParsed","URL","toString","_error","protocol","width","parseInt","isNaN","sizes","push","isValidSize","quality","headers","isStatic","basePath","getCacheKey","constructor","distDir","cacheDir","get","cacheKey","files","readdir","now","Date","file","maxAgeSt","expireAtSt","split","readFile","Number","value","kind","revalidateAfter","curRevalidate","isStale","_","set","revalidate","Error","err","error","ImageError","statusCode","message","parseCacheControl","str","map","Map","directive","key","trim","toLowerCase","getMaxAge","age","endsWith","slice","n","optimizeImage","contentType","height","nextConfigOutput","optimizedBuffer","transformer","sequentialRead","rotate","resize","undefined","withoutEnlargement","avif","avifQuality","chromaSubsampling","webp","png","jpeg","progressive","toBuffer","orientation","operations","RIGHT_TOP","type","numRotations","BOTTOM_RIGHT","LEFT_BOTTOM","processBuffer","fetchExternalImage","res","fetch","ok","status","Buffer","from","arrayBuffer","cacheControl","fetchInternalImage","_req","_res","handleRequest","mocked","method","socket","parse","hasStreamed","concat","buffers","getHeader","imageOptimizer","imageUpstream","paramsResult","upstreamBuffer","upstreamType","dangerouslyAllowSVG","output","getMetadata","meta","opts","blurWidth","blurHeight","blurDataURL","unescape","getFileNameWithExtension","urlWithoutQueryParams","fileNameWithExtension","pop","fileName","setResponseHeaders","xCache","imagesConfig","setHeader","finished","contentDispositionType","contentSecurityPolicy","sendResponse","result","byteLength","end","getImageSize","metadata","decodeBuffer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/server/image-optimizer.ts"],"names":["createHash","promises","cpus","mediaType","contentDisposition","getOrientation","Orientation","imageSizeOf","isAnimated","join","nodeUrl","getImageBlurSvg","hasLocalMatch","hasRemoteMatch","createRequestResponseMocks","sendEtagResponse","getContentType","getExtension","Log","parseUrl","AVIF","WEBP","PNG","JPEG","JXL","JP2","HEIC","GIF","SVG","ICO","ICNS","TIFF","BMP","PDF","CACHE_VERSION","ANIMATABLE_TYPES","BYPASS_TYPES","BLUR_IMG_SIZE","BLUR_QUALITY","sharp","require","process","env","NEXT_SHARP_PATH","concurrency","divisor","NODE_ENV","Math","floor","max","length","e","showSharpMissingWarning","getSupportedMimeType","options","accept","mimeType","includes","getHash","items","hash","item","update","String","digest","replace","writeToCacheDir","dir","extension","maxAge","expireAt","buffer","etag","filename","rm","recursive","force","catch","mkdir","writeFile","detectContentType","every","b","i","meta","metadata","_","format","ImageOptimizerCache","validateParams","req","query","nextConfig","isDev","imageData","images","deviceSizes","imageSizes","domains","minimumCacheTTL","formats","remotePatterns","localPatterns","qualities","url","w","q","href","warnOnce","errorMessage","Array","isArray","startsWith","isAbsolute","test","decodeURIComponent","pathname","hrefParsed","URL","toString","_error","protocol","width","parseInt","isNaN","sizes","push","isValidSize","quality","headers","isStatic","basePath","getCacheKey","constructor","distDir","cacheDir","get","cacheKey","files","readdir","now","Date","file","maxAgeSt","expireAtSt","split","readFile","Number","value","kind","revalidateAfter","curRevalidate","isStale","set","revalidate","Error","err","error","ImageError","statusCode","message","parseCacheControl","str","map","Map","directive","key","trim","toLowerCase","getMaxAge","age","endsWith","slice","n","optimizeImage","contentType","height","nextConfigOutput","optimizedBuffer","transformer","sequentialRead","rotate","resize","undefined","withoutEnlargement","avif","avifQuality","chromaSubsampling","webp","png","jpeg","progressive","toBuffer","orientation","operations","RIGHT_TOP","type","numRotations","BOTTOM_RIGHT","LEFT_BOTTOM","processBuffer","fetchExternalImage","res","fetch","ok","status","Buffer","from","arrayBuffer","cacheControl","fetchInternalImage","_req","_res","handleRequest","mocked","method","socket","parse","hasStreamed","concat","buffers","getHeader","imageOptimizer","imageUpstream","paramsResult","upstreamBuffer","upstreamType","dangerouslyAllowSVG","output","getMetadata","opts","blurWidth","blurHeight","blurDataURL","unescape","getFileNameWithExtension","urlWithoutQueryParams","fileNameWithExtension","pop","fileName","setResponseHeaders","xCache","imagesConfig","setHeader","finished","contentDispositionType","contentSecurityPolicy","sendResponse","result","byteLength","end","getImageSize","decodeBuffer"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { bold, purple } from "../../lib/picocolors";
|
|
|
4
4
|
import { PHASE_DEVELOPMENT_SERVER, PHASE_PRODUCTION_BUILD } from "../../shared/lib/constants";
|
|
5
5
|
import loadConfig, { getEnabledExperimentalFeatures } from "../config";
|
|
6
6
|
export function logStartInfo({ networkUrl, appUrl, envInfo, expFeatureInfo, maxExperimentalFeatures = Infinity }) {
|
|
7
|
-
Log.bootstrap(`${bold(purple(`${Log.prefixes.ready} Next.js ${"14.2.
|
|
7
|
+
Log.bootstrap(`${bold(purple(`${Log.prefixes.ready} Next.js ${"14.2.32"}`))}${process.env.TURBOPACK ? " (turbo)" : ""}`);
|
|
8
8
|
if (appUrl) {
|
|
9
9
|
Log.bootstrap(`- Local: ${appUrl}`);
|
|
10
10
|
}
|
|
@@ -8,7 +8,7 @@ import { formatHostname } from "../format-hostname";
|
|
|
8
8
|
import { toNodeOutgoingHttpHeaders } from "../../web/utils";
|
|
9
9
|
import { isAbortError } from "../../pipe-readable";
|
|
10
10
|
import { getHostname } from "../../../shared/lib/get-hostname";
|
|
11
|
-
import { getRedirectStatus } from "../../../lib/redirect-status";
|
|
11
|
+
import { allowedStatusCodes, getRedirectStatus } from "../../../lib/redirect-status";
|
|
12
12
|
import { normalizeRepeatedSlashes } from "../../../shared/lib/utils";
|
|
13
13
|
import { relativizeURL } from "../../../shared/lib/router/utils/relativize-url";
|
|
14
14
|
import { addPathPrefix } from "../../../shared/lib/router/utils/add-path-prefix";
|
|
@@ -416,15 +416,31 @@ export function getResolveRoutes(fsChecker, config, opts, renderServer, renderSe
|
|
|
416
416
|
}
|
|
417
417
|
if (middlewareHeaders["location"]) {
|
|
418
418
|
const value = middlewareHeaders["location"];
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
parsedUrl
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
419
|
+
// Only process Location header as a redirect if it has a proper redirect status
|
|
420
|
+
// This prevents a Location header with non-redirect status from being treated as a redirect
|
|
421
|
+
const isRedirectStatus = allowedStatusCodes.has(middlewareRes.status);
|
|
422
|
+
if (isRedirectStatus) {
|
|
423
|
+
// Process as redirect: update parsedUrl and convert to relative URL
|
|
424
|
+
const rel = relativizeURL(value, initUrl);
|
|
425
|
+
resHeaders["location"] = rel;
|
|
426
|
+
parsedUrl = url.parse(rel, true);
|
|
427
|
+
return {
|
|
428
|
+
parsedUrl,
|
|
429
|
+
resHeaders,
|
|
430
|
+
finished: true,
|
|
431
|
+
statusCode: middlewareRes.status
|
|
432
|
+
};
|
|
433
|
+
} else {
|
|
434
|
+
// Not a redirect: just pass through the Location header
|
|
435
|
+
resHeaders["location"] = value;
|
|
436
|
+
return {
|
|
437
|
+
parsedUrl,
|
|
438
|
+
resHeaders,
|
|
439
|
+
finished: true,
|
|
440
|
+
bodyStream,
|
|
441
|
+
statusCode: middlewareRes.status
|
|
442
|
+
};
|
|
443
|
+
}
|
|
428
444
|
}
|
|
429
445
|
if (middlewareHeaders["x-middleware-refresh"]) {
|
|
430
446
|
return {
|