@nuxt/rspack-builder 3.21.0 → 3.21.2
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/README.md +5 -5
- package/dist/THIRD-PARTY-LICENSES.md +46 -0
- package/dist/index.mjs +129 -140
- package/dist/loaders/vue-module-identifier.mjs +1 -4
- package/package.json +25 -25
package/README.md
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
<a href="https://nuxt.com"><img width="830" height="213" src="https://github.com/nuxt/nuxt/blob/main/.github/assets/banner.svg" alt="Nuxt banner"></a>
|
|
2
2
|
|
|
3
3
|
# Nuxt
|
|
4
4
|
|
|
5
5
|
<p>
|
|
6
|
-
<a href="https://
|
|
7
|
-
<a href="https://
|
|
6
|
+
<a href="https://npmx.dev/package/nuxt"><img src="https://npmx.dev/api/registry/badge/version/nuxt" alt="Version"></a>
|
|
7
|
+
<a href="https://npmx.dev/package/nuxt"><img src="https://npmx.dev/api/registry/badge/downloads/nuxt" alt="Downloads"></a>
|
|
8
8
|
<a href="https://github.com/nuxt/nuxt/blob/main/LICENSE"><img src="https://img.shields.io/github/license/nuxt/nuxt.svg?style=flat&colorA=18181B&colorB=28CF8D" alt="License"></a>
|
|
9
9
|
<a href="https://nuxt.com/modules"><img src="https://img.shields.io/badge/dynamic/json?url=https://nuxt.com/api/v1/modules&query=$.stats.modules&label=Modules&style=flat&colorA=18181B&colorB=28CF8D" alt="Modules"></a>
|
|
10
10
|
<a href="https://nuxt.com"><img src="https://img.shields.io/badge/Nuxt%20Docs-18181B?logo=nuxt" alt="Website"></a>
|
|
11
11
|
<a href="https://chat.nuxt.dev"><img src="https://img.shields.io/badge/Nuxt%20Discord-18181B?logo=discord" alt="Discord"></a>
|
|
12
|
-
<a href="https://securityscorecards.dev/"><img src="https://api.securityscorecards.dev/projects/github.com/nuxt/nuxt/badge" alt="Nuxt openssf scorecard score"></a>
|
|
12
|
+
<a href="https://securityscorecards.dev/viewer/?uri=github.com/nuxt/nuxt"><img src="https://api.securityscorecards.dev/projects/github.com/nuxt/nuxt/badge" alt="Nuxt openssf scorecard score"></a>
|
|
13
13
|
<a href="https://deepwiki.com/nuxt/nuxt"><img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki"></a>
|
|
14
14
|
</p>
|
|
15
15
|
|
|
@@ -111,7 +111,7 @@ Follow the docs to [Set Up Your Local Development Environment](https://nuxt.com/
|
|
|
111
111
|
## <a name="follow-us">🔗 Follow Us</a>
|
|
112
112
|
|
|
113
113
|
<p valign="center">
|
|
114
|
-
<a href="https://go.nuxt.com/discord"><img width="
|
|
114
|
+
<a href="https://go.nuxt.com/discord"><img width="20" src="https://github.com/nuxt/nuxt/blob/main/.github/assets/discord.svg" alt="Discord"></a> <a href="https://go.nuxt.com/x"><img width="20" src="https://github.com/nuxt/nuxt/blob/main/.github/assets/twitter.svg" alt="Twitter"></a> <a href="https://go.nuxt.com/github"><img width="20" src="https://github.com/nuxt/nuxt/blob/main/.github/assets/github.svg" alt="GitHub"></a> <a href="https://go.nuxt.com/bluesky"><img width="20" src="https://github.com/nuxt/nuxt/blob/main/.github/assets/bluesky.svg" alt="Bluesky"></a>
|
|
115
115
|
</p>
|
|
116
116
|
|
|
117
117
|
## <a name="license">⚖️ License</a>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Licenses of Bundled Dependencies
|
|
2
|
+
|
|
3
|
+
The published artifact additionally contains code with the following licenses:
|
|
4
|
+
MIT
|
|
5
|
+
|
|
6
|
+
# Bundled Dependencies
|
|
7
|
+
|
|
8
|
+
## @nuxt/webpack-builder
|
|
9
|
+
|
|
10
|
+
License: MIT
|
|
11
|
+
Repository: https://github.com/nuxt/nuxt
|
|
12
|
+
|
|
13
|
+
---------------------------------------
|
|
14
|
+
|
|
15
|
+
## nuxt
|
|
16
|
+
|
|
17
|
+
License: MIT
|
|
18
|
+
Repository: https://github.com/nuxt/nuxt
|
|
19
|
+
|
|
20
|
+
> The MIT License (MIT)
|
|
21
|
+
>
|
|
22
|
+
> Copyright (c) 2016-present - Nuxt Team
|
|
23
|
+
>
|
|
24
|
+
> Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
25
|
+
> of this software and associated documentation files (the "Software"), to deal
|
|
26
|
+
> in the Software without restriction, including without limitation the rights
|
|
27
|
+
> to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
28
|
+
> copies of the Software, and to permit persons to whom the Software is
|
|
29
|
+
> furnished to do so, subject to the following conditions:
|
|
30
|
+
>
|
|
31
|
+
> The above copyright notice and this permission notice shall be included in all
|
|
32
|
+
> copies or substantial portions of the Software.
|
|
33
|
+
>
|
|
34
|
+
> THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
35
|
+
> IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
36
|
+
> FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
37
|
+
> AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
38
|
+
> LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
39
|
+
> OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
40
|
+
> SOFTWARE.
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
## @nuxt/webpack-builder
|
|
44
|
+
|
|
45
|
+
License: MIT
|
|
46
|
+
Repository: https://github.com/nuxt/nuxt
|
package/dist/index.mjs
CHANGED
|
@@ -3,13 +3,12 @@ import pify from "pify";
|
|
|
3
3
|
import webpackDevMiddleware from "webpack-dev-middleware";
|
|
4
4
|
import webpackHotMiddleware from "webpack-hot-middleware";
|
|
5
5
|
import { defu } from "defu";
|
|
6
|
-
import { joinURL,
|
|
6
|
+
import { joinURL, withTrailingSlash } from "ufo";
|
|
7
7
|
import { directoryToURL, logger, resolveAlias, useNitro, useNuxt } from "@nuxt/kit";
|
|
8
8
|
import { createUnplugin } from "unplugin";
|
|
9
9
|
import MagicString from "magic-string";
|
|
10
10
|
import { MiniCssExtractPlugin, TsCheckerPlugin, WebpackBarPlugin, builder, webpack } from "#builder";
|
|
11
11
|
import { existsSync, readFileSync } from "node:fs";
|
|
12
|
-
import { pathToFileURL } from "node:url";
|
|
13
12
|
import { isAbsolute, join, normalize, relative, resolve } from "pathe";
|
|
14
13
|
import { genArrayFromRaw, genObjectFromRawEntries, genString } from "knitwork";
|
|
15
14
|
import { compileStyle, parse } from "@vue/compiler-sfc";
|
|
@@ -33,7 +32,6 @@ import { normalizeWebpackManifest, precomputeDependencies } from "vue-bundle-ren
|
|
|
33
32
|
import { hash } from "ohash";
|
|
34
33
|
import { serialize } from "seroval";
|
|
35
34
|
import { parseNodeModulePath } from "mlly";
|
|
36
|
-
|
|
37
35
|
//#region ../webpack/src/plugins/dynamic-base.ts
|
|
38
36
|
const defaults = {
|
|
39
37
|
globalPublicPath: "__webpack_public_path__",
|
|
@@ -64,7 +62,6 @@ const DynamicBasePlugin = createUnplugin((options = {}) => {
|
|
|
64
62
|
}
|
|
65
63
|
};
|
|
66
64
|
});
|
|
67
|
-
|
|
68
65
|
//#endregion
|
|
69
66
|
//#region ../webpack/src/plugins/chunk.ts
|
|
70
67
|
const pluginName = "ChunkErrorPlugin";
|
|
@@ -98,22 +95,40 @@ if (typeof ${ensureChunk} !== "undefined") {
|
|
|
98
95
|
`;
|
|
99
96
|
}
|
|
100
97
|
};
|
|
101
|
-
|
|
98
|
+
//#endregion
|
|
99
|
+
//#region ../nuxt/src/core/utils/plugins.ts
|
|
100
|
+
/**
|
|
101
|
+
* Split a bundler module ID into its pathname and search (query) parts.
|
|
102
|
+
*
|
|
103
|
+
* Module IDs from Vite/webpack are already-normalized filesystem paths
|
|
104
|
+
* that may carry query strings (e.g. `?vue&type=style&lang=css`).
|
|
105
|
+
*/
|
|
106
|
+
function parseModuleId(id) {
|
|
107
|
+
const qIndex = id.indexOf("?");
|
|
108
|
+
if (qIndex === -1) return {
|
|
109
|
+
pathname: id,
|
|
110
|
+
search: ""
|
|
111
|
+
};
|
|
112
|
+
return {
|
|
113
|
+
pathname: id.slice(0, qIndex),
|
|
114
|
+
search: id.slice(qIndex)
|
|
115
|
+
};
|
|
116
|
+
}
|
|
102
117
|
//#endregion
|
|
103
118
|
//#region ../webpack/src/plugins/ssr-styles.ts
|
|
104
119
|
const CSS_URL_RE = /url\((['"]?)(\/[^)]+?)\1\)/g;
|
|
105
120
|
const isVueFile = (id) => /\.vue(?:\?|$)/.test(id);
|
|
106
121
|
const isCSSLike = (name) => /\.(?:css|scss|sass|less|styl(?:us)?|postcss|pcss)(?:\?|$)/.test(name);
|
|
107
|
-
function normalizePath(nuxt
|
|
122
|
+
function normalizePath(nuxt, id) {
|
|
108
123
|
if (!id) return null;
|
|
109
|
-
const { pathname } =
|
|
110
|
-
const rel = relative(nuxt
|
|
124
|
+
const { pathname } = parseModuleId(id);
|
|
125
|
+
const rel = relative(nuxt.options.srcDir, pathname);
|
|
111
126
|
if (rel.startsWith("..")) return null;
|
|
112
127
|
return rel;
|
|
113
128
|
}
|
|
114
129
|
function resolveFilePath(id) {
|
|
115
130
|
if (!id) return null;
|
|
116
|
-
return
|
|
131
|
+
return parseModuleId(normalize(id)).pathname || null;
|
|
117
132
|
}
|
|
118
133
|
function sanitizeStyleAssetName(rel) {
|
|
119
134
|
return rel.replace(/[\\/]/g, "_").replace(/\.{2,}/g, "_");
|
|
@@ -127,12 +142,12 @@ function extractVueStyles(filePath) {
|
|
|
127
142
|
const styles = [];
|
|
128
143
|
const scopeId = createHash("sha256").update(filePath).digest("hex").slice(0, 8);
|
|
129
144
|
for (let i = 0; i < descriptor.styles.length; i++) {
|
|
130
|
-
const style
|
|
145
|
+
const style = descriptor.styles[i];
|
|
131
146
|
const result = compileStyle({
|
|
132
|
-
source: style
|
|
147
|
+
source: style.content,
|
|
133
148
|
filename: filePath,
|
|
134
149
|
id: `data-v-${scopeId}`,
|
|
135
|
-
scoped: style
|
|
150
|
+
scoped: style.scoped
|
|
136
151
|
});
|
|
137
152
|
if (!result.errors.length && result.code) styles.push(normalizeCSSContent(result.code));
|
|
138
153
|
}
|
|
@@ -146,10 +161,10 @@ var SSRStylesPlugin = class {
|
|
|
146
161
|
clientCSSByIssuer = /* @__PURE__ */ new Map();
|
|
147
162
|
chunksWithInlinedCSS = /* @__PURE__ */ new Set();
|
|
148
163
|
globalCSSPaths = /* @__PURE__ */ new Set();
|
|
149
|
-
constructor(nuxt
|
|
150
|
-
this.nuxt = nuxt
|
|
164
|
+
constructor(nuxt) {
|
|
165
|
+
this.nuxt = nuxt;
|
|
151
166
|
this.globalCSSPaths = this.resolveGlobalCSS();
|
|
152
|
-
nuxt
|
|
167
|
+
nuxt.hook("build:manifest", (manifest) => {
|
|
153
168
|
for (const [id, chunk] of Object.entries(manifest)) {
|
|
154
169
|
if (chunk.isEntry && chunk.src) this.chunksWithInlinedCSS.add(chunk.src);
|
|
155
170
|
else if (this.chunksWithInlinedCSS.has(id)) chunk.css &&= [];
|
|
@@ -175,9 +190,9 @@ var SSRStylesPlugin = class {
|
|
|
175
190
|
isPublicAsset(url, nitro) {
|
|
176
191
|
const cleaned = url.replace(/[?#].*$/, "");
|
|
177
192
|
for (const dir of nitro.options.publicAssets) {
|
|
178
|
-
const base
|
|
179
|
-
if (!url.startsWith(base
|
|
180
|
-
if (existsSync(cleaned.replace(base
|
|
193
|
+
const base = withTrailingSlash(dir.baseURL || "/");
|
|
194
|
+
if (!url.startsWith(base)) continue;
|
|
195
|
+
if (existsSync(cleaned.replace(base, withTrailingSlash(dir.dir)))) return true;
|
|
181
196
|
}
|
|
182
197
|
return false;
|
|
183
198
|
}
|
|
@@ -240,11 +255,6 @@ var SSRStylesPlugin = class {
|
|
|
240
255
|
}
|
|
241
256
|
return null;
|
|
242
257
|
}
|
|
243
|
-
normalizeResourcePath(resource) {
|
|
244
|
-
if (!resource) return null;
|
|
245
|
-
const withoutQuery = resource.split("?")[0];
|
|
246
|
-
return resolveFilePath(withoutQuery);
|
|
247
|
-
}
|
|
248
258
|
apply(compiler) {
|
|
249
259
|
if (this.nuxt.options.dev) return;
|
|
250
260
|
const isClient = compiler.options.name === "client";
|
|
@@ -257,8 +267,8 @@ var SSRStylesPlugin = class {
|
|
|
257
267
|
});
|
|
258
268
|
}
|
|
259
269
|
emitServerStyles(compilation) {
|
|
260
|
-
const { webpack
|
|
261
|
-
const stage = webpack
|
|
270
|
+
const { webpack } = compilation.compiler;
|
|
271
|
+
const stage = webpack.Compilation.PROCESS_ASSETS_STAGE_SUMMARIZE;
|
|
262
272
|
compilation.hooks.processAssets.tap({
|
|
263
273
|
name: "SSRStylesPlugin",
|
|
264
274
|
stage
|
|
@@ -288,10 +298,10 @@ var SSRStylesPlugin = class {
|
|
|
288
298
|
if (vueStyles.length) collected.set(rel, new Set(vueStyles));
|
|
289
299
|
}
|
|
290
300
|
const emitted = {};
|
|
291
|
-
const rawSource = webpack
|
|
301
|
+
const rawSource = webpack.sources.RawSource;
|
|
292
302
|
for (const [rel, cssSet] of collected.entries()) {
|
|
293
303
|
if (!cssSet.size) continue;
|
|
294
|
-
const transformed = Array.from(cssSet).map((style
|
|
304
|
+
const transformed = Array.from(cssSet).map((style) => this.rewriteStyle(style, nitro));
|
|
295
305
|
const needsPublicAssets = transformed.some((t) => t.needsPublicAsset);
|
|
296
306
|
const needsBuildAssets = transformed.some((t) => t.needsBuildAsset);
|
|
297
307
|
const imports = [];
|
|
@@ -358,8 +368,8 @@ var SSRStylesPlugin = class {
|
|
|
358
368
|
});
|
|
359
369
|
}
|
|
360
370
|
collectCSS(compilation) {
|
|
361
|
-
const { webpack
|
|
362
|
-
const stage = compilation.compiler.options.name === "server" ? webpack
|
|
371
|
+
const { webpack } = compilation.compiler;
|
|
372
|
+
const stage = compilation.compiler.options.name === "server" ? webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONS : webpack.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER;
|
|
363
373
|
const chunkCSSMeta = /* @__PURE__ */ new Map();
|
|
364
374
|
compilation.hooks.processAssets.tap({
|
|
365
375
|
name: "SSRStylesPlugin",
|
|
@@ -418,7 +428,6 @@ var SSRStylesPlugin = class {
|
|
|
418
428
|
return cssChunks;
|
|
419
429
|
}
|
|
420
430
|
};
|
|
421
|
-
|
|
422
431
|
//#endregion
|
|
423
432
|
//#region ../webpack/src/utils/mfs.ts
|
|
424
433
|
function createMFS() {
|
|
@@ -428,24 +437,22 @@ function createMFS() {
|
|
|
428
437
|
_fs.readFile = pify(_fs.readFile);
|
|
429
438
|
return _fs;
|
|
430
439
|
}
|
|
431
|
-
|
|
432
440
|
//#endregion
|
|
433
441
|
//#region ../webpack/src/utils/index.ts
|
|
434
442
|
/** @since 3.9.0 */
|
|
435
443
|
function toArray(value) {
|
|
436
444
|
return Array.isArray(value) ? value : [value];
|
|
437
445
|
}
|
|
438
|
-
|
|
439
446
|
//#endregion
|
|
440
447
|
//#region ../webpack/src/utils/config.ts
|
|
441
|
-
function createWebpackConfigContext(nuxt
|
|
448
|
+
function createWebpackConfigContext(nuxt) {
|
|
442
449
|
return {
|
|
443
|
-
nuxt
|
|
444
|
-
options: nuxt
|
|
445
|
-
userConfig: nuxt
|
|
450
|
+
nuxt,
|
|
451
|
+
options: nuxt.options,
|
|
452
|
+
userConfig: nuxt.options.webpack,
|
|
446
453
|
config: {},
|
|
447
454
|
name: "base",
|
|
448
|
-
isDev: nuxt
|
|
455
|
+
isDev: nuxt.options.dev,
|
|
449
456
|
isServer: false,
|
|
450
457
|
isClient: false,
|
|
451
458
|
alias: {},
|
|
@@ -457,15 +464,14 @@ async function applyPresets(ctx, presets) {
|
|
|
457
464
|
else await preset(ctx);
|
|
458
465
|
}
|
|
459
466
|
function fileName(ctx, key) {
|
|
460
|
-
let fileName
|
|
461
|
-
if (typeof fileName
|
|
462
|
-
if (typeof fileName
|
|
463
|
-
const hash
|
|
464
|
-
if (hash
|
|
467
|
+
let fileName = ctx.userConfig.filenames[key];
|
|
468
|
+
if (typeof fileName === "function") fileName = fileName(ctx);
|
|
469
|
+
if (typeof fileName === "string" && ctx.options.dev) {
|
|
470
|
+
const hash = /\[(chunkhash|contenthash|hash)(?::\d+)?\]/.exec(fileName);
|
|
471
|
+
if (hash) logger.warn(`Notice: Please do not use ${hash[1]} in dev mode to prevent memory leak`);
|
|
465
472
|
}
|
|
466
|
-
return fileName
|
|
473
|
+
return fileName;
|
|
467
474
|
}
|
|
468
|
-
|
|
469
475
|
//#endregion
|
|
470
476
|
//#region ../webpack/src/presets/assets.ts
|
|
471
477
|
function assets(ctx) {
|
|
@@ -498,7 +504,6 @@ function assets(ctx) {
|
|
|
498
504
|
}]
|
|
499
505
|
});
|
|
500
506
|
}
|
|
501
|
-
|
|
502
507
|
//#endregion
|
|
503
508
|
//#region ../webpack/src/plugins/warning-ignore.ts
|
|
504
509
|
var WarningIgnorePlugin = class {
|
|
@@ -512,7 +517,6 @@ var WarningIgnorePlugin = class {
|
|
|
512
517
|
});
|
|
513
518
|
}
|
|
514
519
|
};
|
|
515
|
-
|
|
516
520
|
//#endregion
|
|
517
521
|
//#region ../webpack/src/plugins/vue/util.ts
|
|
518
522
|
/**
|
|
@@ -529,7 +533,6 @@ const extractQueryPartJS = (file) => isJSRegExp.exec(file)?.[1];
|
|
|
529
533
|
const isCSSRegExp = /\.css(?:\?[^.]+)?$/;
|
|
530
534
|
const isCSS = (file) => isCSSRegExp.test(file);
|
|
531
535
|
const isHotUpdate = (file) => file.includes("hot-update");
|
|
532
|
-
|
|
533
536
|
//#endregion
|
|
534
537
|
//#region ../webpack/src/plugins/rollup-compat-dynamic-import.ts
|
|
535
538
|
const DYNAMIC_IMPORT_RE = /import\([^)]*\+\s*__webpack_require__[^+]*\)\.then/;
|
|
@@ -547,18 +550,18 @@ var RollupCompatDynamicImportPlugin = class {
|
|
|
547
550
|
compilation.hooks.processAssets.tapAsync({
|
|
548
551
|
name: "RollupCompatDynamicImportPlugin",
|
|
549
552
|
stage: compiler.webpack.Compilation.PROCESS_ASSETS_STAGE_OPTIMIZE_INLINE
|
|
550
|
-
}, (assets
|
|
553
|
+
}, (assets, callback) => {
|
|
551
554
|
try {
|
|
552
555
|
const targetFiles = /* @__PURE__ */ new Set();
|
|
553
556
|
for (const chunk of compilation.chunks) if (chunk.canBeInitial() || chunk.hasRuntime()) for (const file of chunk.files || []) targetFiles.add(file);
|
|
554
|
-
for (const [filename, asset] of Object.entries(assets
|
|
557
|
+
for (const [filename, asset] of Object.entries(assets)) {
|
|
555
558
|
if (!isJS(filename)) continue;
|
|
556
559
|
if (!targetFiles.has(filename)) continue;
|
|
557
560
|
const source = asset.source();
|
|
558
561
|
const originalCode = typeof source === "string" ? source : source.toString();
|
|
559
562
|
if (!DYNAMIC_IMPORT_RE.test(originalCode)) continue;
|
|
560
563
|
const transformedCode = this.transformDynamicImports(originalCode);
|
|
561
|
-
if (transformedCode !== originalCode) assets
|
|
564
|
+
if (transformedCode !== originalCode) assets[filename] = new compiler.webpack.sources.RawSource(transformedCode);
|
|
562
565
|
}
|
|
563
566
|
this.generateDynamicImportHelper(compilation);
|
|
564
567
|
callback();
|
|
@@ -608,7 +611,6 @@ export function _rollupDynamicImport(chunkId) {
|
|
|
608
611
|
`;
|
|
609
612
|
}
|
|
610
613
|
};
|
|
611
|
-
|
|
612
614
|
//#endregion
|
|
613
615
|
//#region ../webpack/src/presets/base.ts
|
|
614
616
|
async function base(ctx) {
|
|
@@ -781,7 +783,6 @@ const statsMap = {
|
|
|
781
783
|
info: "normal",
|
|
782
784
|
verbose: "verbose"
|
|
783
785
|
};
|
|
784
|
-
|
|
785
786
|
//#endregion
|
|
786
787
|
//#region ../webpack/src/presets/esbuild.ts
|
|
787
788
|
function esbuild(ctx) {
|
|
@@ -811,7 +812,6 @@ function esbuild(ctx) {
|
|
|
811
812
|
}
|
|
812
813
|
});
|
|
813
814
|
}
|
|
814
|
-
|
|
815
815
|
//#endregion
|
|
816
816
|
//#region ../webpack/src/presets/pug.ts
|
|
817
817
|
function pug(ctx) {
|
|
@@ -829,7 +829,6 @@ function pug(ctx) {
|
|
|
829
829
|
}] }]
|
|
830
830
|
});
|
|
831
831
|
}
|
|
832
|
-
|
|
833
832
|
//#endregion
|
|
834
833
|
//#region ../webpack/src/utils/postcss.ts
|
|
835
834
|
const isPureObject = (obj) => obj !== null && !Array.isArray(obj) && typeof obj === "object";
|
|
@@ -837,27 +836,27 @@ function sortPlugins({ plugins, order }) {
|
|
|
837
836
|
const names = Object.keys(plugins);
|
|
838
837
|
return typeof order === "function" ? order(names) : order || names;
|
|
839
838
|
}
|
|
840
|
-
async function getPostcssConfig(nuxt
|
|
841
|
-
if (!nuxt
|
|
842
|
-
const postcssOptions = defu({}, nuxt
|
|
839
|
+
async function getPostcssConfig(nuxt) {
|
|
840
|
+
if (!nuxt.options.webpack.postcss || !nuxt.options.postcss) return false;
|
|
841
|
+
const postcssOptions = defu({}, nuxt.options.postcss, {
|
|
843
842
|
plugins: {
|
|
844
843
|
"postcss-import": { resolve: createResolver({
|
|
845
|
-
alias: { ...nuxt
|
|
846
|
-
modules: nuxt
|
|
844
|
+
alias: { ...nuxt.options.alias },
|
|
845
|
+
modules: nuxt.options.modulesDir
|
|
847
846
|
}) },
|
|
848
847
|
"postcss-url": {}
|
|
849
848
|
},
|
|
850
|
-
sourceMap: nuxt
|
|
849
|
+
sourceMap: nuxt.options.webpack.cssSourceMap
|
|
851
850
|
});
|
|
852
|
-
const jiti = createJiti(nuxt
|
|
851
|
+
const jiti = createJiti(nuxt.options.rootDir, { alias: nuxt.options.alias });
|
|
853
852
|
if (!Array.isArray(postcssOptions.plugins) && isPureObject(postcssOptions.plugins)) {
|
|
854
853
|
const plugins = [];
|
|
855
|
-
for (const pluginName
|
|
856
|
-
const pluginOptions = postcssOptions.plugins[pluginName
|
|
854
|
+
for (const pluginName of sortPlugins(postcssOptions)) {
|
|
855
|
+
const pluginOptions = postcssOptions.plugins[pluginName];
|
|
857
856
|
if (!pluginOptions) continue;
|
|
858
857
|
let pluginFn;
|
|
859
|
-
for (const parentURL of nuxt
|
|
860
|
-
pluginFn = await jiti.import(pluginName
|
|
858
|
+
for (const parentURL of nuxt.options.modulesDir) {
|
|
859
|
+
pluginFn = await jiti.import(pluginName, {
|
|
861
860
|
parentURL: parentURL.replace(/\/node_modules\/?$/, ""),
|
|
862
861
|
try: true,
|
|
863
862
|
default: true
|
|
@@ -867,17 +866,16 @@ async function getPostcssConfig(nuxt$1) {
|
|
|
867
866
|
break;
|
|
868
867
|
}
|
|
869
868
|
}
|
|
870
|
-
if (typeof pluginFn !== "function") console.warn(`[nuxt] could not import postcss plugin \`${pluginName
|
|
869
|
+
if (typeof pluginFn !== "function") console.warn(`[nuxt] could not import postcss plugin \`${pluginName}\`. Please report this as a bug.`);
|
|
871
870
|
}
|
|
872
871
|
postcssOptions.plugins = plugins;
|
|
873
872
|
}
|
|
874
873
|
return {
|
|
875
|
-
sourceMap: nuxt
|
|
876
|
-
...nuxt
|
|
874
|
+
sourceMap: nuxt.options.webpack.cssSourceMap,
|
|
875
|
+
...nuxt.options.webpack.postcss,
|
|
877
876
|
postcssOptions
|
|
878
877
|
};
|
|
879
878
|
}
|
|
880
|
-
|
|
881
879
|
//#endregion
|
|
882
880
|
//#region ../webpack/src/presets/style.ts
|
|
883
881
|
async function style(ctx) {
|
|
@@ -959,7 +957,6 @@ async function createPostcssLoadersRule(ctx) {
|
|
|
959
957
|
options: config
|
|
960
958
|
};
|
|
961
959
|
}
|
|
962
|
-
|
|
963
960
|
//#endregion
|
|
964
961
|
//#region ../webpack/src/plugins/vue/client.ts
|
|
965
962
|
/**
|
|
@@ -983,9 +980,9 @@ var VueSSRClientPlugin = class {
|
|
|
983
980
|
const stats = compilation.getStats().toJson();
|
|
984
981
|
const context = this.nuxt.options.srcDir;
|
|
985
982
|
const initialFiles = /* @__PURE__ */ new Set();
|
|
986
|
-
for (const { assets
|
|
987
|
-
if (!assets
|
|
988
|
-
for (const asset of assets
|
|
983
|
+
for (const { assets } of Object.values(stats.entrypoints)) {
|
|
984
|
+
if (!assets) continue;
|
|
985
|
+
for (const asset of assets) {
|
|
989
986
|
const file = asset.name;
|
|
990
987
|
if ((isJS(file) || isCSS(file)) && !isHotUpdate(file)) initialFiles.add(file);
|
|
991
988
|
}
|
|
@@ -1031,11 +1028,11 @@ var VueSSRClientPlugin = class {
|
|
|
1031
1028
|
const files = Array.from(filesSet);
|
|
1032
1029
|
webpackManifest.modules[relativeId] = files;
|
|
1033
1030
|
if (Array.isArray(m.modules)) for (const concatenatedModule of m.modules) {
|
|
1034
|
-
const relativeId
|
|
1035
|
-
webpackManifest.modules[relativeId
|
|
1031
|
+
const relativeId = this.getRelativeModuleId(concatenatedModule.identifier, context);
|
|
1032
|
+
webpackManifest.modules[relativeId] ||= files;
|
|
1036
1033
|
}
|
|
1037
1034
|
if (stats.modules) {
|
|
1038
|
-
for (const m
|
|
1035
|
+
for (const m of stats.modules) if (m.assets?.length && m.chunks?.includes(cid)) files.push(...m.assets.map(fileToIndex));
|
|
1039
1036
|
}
|
|
1040
1037
|
}
|
|
1041
1038
|
const manifest = normalizeWebpackManifest(webpackManifest);
|
|
@@ -1048,7 +1045,6 @@ var VueSSRClientPlugin = class {
|
|
|
1048
1045
|
});
|
|
1049
1046
|
}
|
|
1050
1047
|
};
|
|
1051
|
-
|
|
1052
1048
|
//#endregion
|
|
1053
1049
|
//#region ../webpack/src/plugins/vue/server.ts
|
|
1054
1050
|
const JS_MAP_RE = /\.js\.map$/;
|
|
@@ -1063,7 +1059,7 @@ var VueSSRServerPlugin = class {
|
|
|
1063
1059
|
compilation.hooks.processAssets.tapAsync({
|
|
1064
1060
|
name: "VueSSRServerPlugin",
|
|
1065
1061
|
stage: webpack.Compilation.PROCESS_ASSETS_STAGE_ADDITIONAL
|
|
1066
|
-
}, (assets
|
|
1062
|
+
}, (assets, cb) => {
|
|
1067
1063
|
const stats = compilation.getStats().toJson();
|
|
1068
1064
|
const [entryName] = Object.keys(stats.entrypoints);
|
|
1069
1065
|
const entryInfo = stats.entrypoints[entryName];
|
|
@@ -1072,24 +1068,24 @@ var VueSSRServerPlugin = class {
|
|
|
1072
1068
|
if (entryAssets.length > 1) throw new Error("Server-side bundle should have one single entry file. Avoid using CommonsChunkPlugin in the server config.");
|
|
1073
1069
|
const [entry] = entryAssets;
|
|
1074
1070
|
if (!entry || typeof entry.name !== "string") throw new Error(`Entry "${entryName}" not found. Did you specify the correct entry option?`);
|
|
1075
|
-
const bundle
|
|
1071
|
+
const bundle = {
|
|
1076
1072
|
entry: entry.name,
|
|
1077
1073
|
files: {},
|
|
1078
1074
|
maps: {}
|
|
1079
1075
|
};
|
|
1080
1076
|
for (const asset of stats.assets) if (isJS(asset.name)) {
|
|
1081
1077
|
const queryPart = extractQueryPartJS(asset.name);
|
|
1082
|
-
if (queryPart !== void 0) bundle
|
|
1083
|
-
else bundle
|
|
1084
|
-
} else if (JS_MAP_RE.test(asset.name)) bundle
|
|
1085
|
-
else delete assets
|
|
1086
|
-
const src = JSON.stringify(bundle
|
|
1087
|
-
assets
|
|
1078
|
+
if (queryPart !== void 0) bundle.files[asset.name] = asset.name.replace(queryPart, "");
|
|
1079
|
+
else bundle.files[asset.name] = asset.name;
|
|
1080
|
+
} else if (JS_MAP_RE.test(asset.name)) bundle.maps[asset.name.replace(/\.map$/, "")] = asset.name;
|
|
1081
|
+
else delete assets[asset.name];
|
|
1082
|
+
const src = JSON.stringify(bundle, null, 2);
|
|
1083
|
+
assets[this.options.filename] = {
|
|
1088
1084
|
source: () => src,
|
|
1089
1085
|
size: () => src.length
|
|
1090
1086
|
};
|
|
1091
1087
|
const mjsSrc = "export default " + src;
|
|
1092
|
-
assets
|
|
1088
|
+
assets[this.options.filename.replace(".json", ".mjs")] = {
|
|
1093
1089
|
source: () => mjsSrc,
|
|
1094
1090
|
map: () => null,
|
|
1095
1091
|
size: () => mjsSrc.length
|
|
@@ -1099,7 +1095,6 @@ var VueSSRServerPlugin = class {
|
|
|
1099
1095
|
});
|
|
1100
1096
|
}
|
|
1101
1097
|
};
|
|
1102
|
-
|
|
1103
1098
|
//#endregion
|
|
1104
1099
|
//#region ../webpack/src/presets/vue.ts
|
|
1105
1100
|
function vue(ctx) {
|
|
@@ -1131,7 +1126,6 @@ function vue(ctx) {
|
|
|
1131
1126
|
"__VUE_PROD_HYDRATION_MISMATCH_DETAILS__": ctx.nuxt.options.debug && ctx.nuxt.options.debug.hydration
|
|
1132
1127
|
}));
|
|
1133
1128
|
}
|
|
1134
|
-
|
|
1135
1129
|
//#endregion
|
|
1136
1130
|
//#region ../webpack/src/presets/nuxt.ts
|
|
1137
1131
|
async function nuxt(ctx) {
|
|
@@ -1144,7 +1138,6 @@ async function nuxt(ctx) {
|
|
|
1144
1138
|
vue
|
|
1145
1139
|
]);
|
|
1146
1140
|
}
|
|
1147
|
-
|
|
1148
1141
|
//#endregion
|
|
1149
1142
|
//#region ../webpack/src/configs/client.ts
|
|
1150
1143
|
async function client(ctx) {
|
|
@@ -1252,7 +1245,6 @@ function clientPlugins(ctx) {
|
|
|
1252
1245
|
if (!ctx.nuxt.options.test && (ctx.nuxt.options.typescript.typeCheck === true || ctx.nuxt.options.typescript.typeCheck === "build" && !ctx.nuxt.options.dev)) ctx.config.plugins.push(new TsCheckerPlugin({ logger }));
|
|
1253
1246
|
}
|
|
1254
1247
|
}
|
|
1255
|
-
|
|
1256
1248
|
//#endregion
|
|
1257
1249
|
//#region ../webpack/src/presets/node.ts
|
|
1258
1250
|
function node(ctx) {
|
|
@@ -1283,7 +1275,6 @@ function node(ctx) {
|
|
|
1283
1275
|
maxAssetSize: Number.POSITIVE_INFINITY
|
|
1284
1276
|
};
|
|
1285
1277
|
}
|
|
1286
|
-
|
|
1287
1278
|
//#endregion
|
|
1288
1279
|
//#region ../webpack/src/configs/server.ts
|
|
1289
1280
|
const assetPattern = /\.(?:css|s[ca]ss|png|jpe?g|gif|svg|woff2?|eot|ttf|otf|webp|webm|mp4|ogv)(?:\?.*)?$/i;
|
|
@@ -1375,117 +1366,116 @@ function serverPlugins(ctx) {
|
|
|
1375
1366
|
}));
|
|
1376
1367
|
if (!ctx.nuxt.options.test && (ctx.nuxt.options.typescript.typeCheck === true || ctx.nuxt.options.typescript.typeCheck === "build" && !ctx.nuxt.options.dev)) ctx.config.plugins.push(new TsCheckerPlugin({ logger }));
|
|
1377
1368
|
}
|
|
1378
|
-
|
|
1379
1369
|
//#endregion
|
|
1380
1370
|
//#region ../webpack/src/webpack.ts
|
|
1381
|
-
const bundle = async (nuxt
|
|
1382
|
-
const webpackConfigs = await Promise.all([client, ...nuxt
|
|
1383
|
-
const ctx = createWebpackConfigContext(nuxt
|
|
1384
|
-
ctx.userConfig = defu(nuxt
|
|
1371
|
+
const bundle = async (nuxt) => {
|
|
1372
|
+
const webpackConfigs = await Promise.all([client, ...nuxt.options.ssr ? [server] : []].map(async (preset) => {
|
|
1373
|
+
const ctx = createWebpackConfigContext(nuxt);
|
|
1374
|
+
ctx.userConfig = defu(nuxt.options.webpack[`$${preset.name}`], ctx.userConfig);
|
|
1385
1375
|
await applyPresets(ctx, preset);
|
|
1386
1376
|
return ctx.config;
|
|
1387
1377
|
}));
|
|
1388
1378
|
/** Remove Nitro rollup plugin for handling dynamic imports from webpack chunks */
|
|
1389
|
-
if (!nuxt
|
|
1379
|
+
if (!nuxt.options.dev) useNitro().hooks.hook("rollup:before", (_nitro, config) => {
|
|
1390
1380
|
const plugins = config.plugins;
|
|
1391
1381
|
const existingPlugin = plugins.findIndex((i) => i && "name" in i && i.name === "dynamic-require");
|
|
1392
1382
|
if (existingPlugin >= 0) plugins.splice(existingPlugin, 1);
|
|
1393
1383
|
});
|
|
1394
|
-
await nuxt
|
|
1395
|
-
const mfs = nuxt
|
|
1396
|
-
const ssrStylesPlugin = nuxt
|
|
1384
|
+
await nuxt.callHook(`${builder}:config`, webpackConfigs);
|
|
1385
|
+
const mfs = nuxt.options.dev ? createMFS() : null;
|
|
1386
|
+
const ssrStylesPlugin = nuxt.options.ssr && !nuxt.options.dev && nuxt.options.features.inlineStyles ? new SSRStylesPlugin(nuxt) : null;
|
|
1397
1387
|
for (const config of webpackConfigs) {
|
|
1398
|
-
config.plugins.push(DynamicBasePlugin.webpack({ sourcemap: !!nuxt
|
|
1399
|
-
if (config.name === "client" && nuxt
|
|
1388
|
+
config.plugins.push(DynamicBasePlugin.webpack({ sourcemap: !!nuxt.options.sourcemap[config.name] }));
|
|
1389
|
+
if (config.name === "client" && nuxt.options.experimental.emitRouteChunkError && nuxt.options.builder !== "@nuxt/rspack-builder") config.plugins.push(new ChunkErrorPlugin());
|
|
1400
1390
|
if (ssrStylesPlugin) config.plugins.push(ssrStylesPlugin);
|
|
1401
1391
|
}
|
|
1402
|
-
await nuxt
|
|
1392
|
+
await nuxt.callHook(`${builder}:configResolved`, webpackConfigs);
|
|
1403
1393
|
const compilers = webpackConfigs.map((config) => {
|
|
1404
1394
|
const compiler = webpack(config);
|
|
1405
|
-
if (nuxt
|
|
1395
|
+
if (nuxt.options.dev && compiler) compiler.outputFileSystem = mfs;
|
|
1406
1396
|
return compiler;
|
|
1407
1397
|
});
|
|
1408
|
-
nuxt
|
|
1409
|
-
for (const compiler of compilers) await new Promise((resolve
|
|
1398
|
+
nuxt.hook("close", async () => {
|
|
1399
|
+
for (const compiler of compilers) await new Promise((resolve) => compiler.close(resolve));
|
|
1410
1400
|
});
|
|
1411
|
-
if (nuxt
|
|
1401
|
+
if (nuxt.options.dev) {
|
|
1412
1402
|
await Promise.all(compilers.map((c) => compile(c)));
|
|
1413
1403
|
return;
|
|
1414
1404
|
}
|
|
1415
1405
|
for (const c of compilers) await compile(c);
|
|
1416
1406
|
};
|
|
1417
1407
|
async function createDevMiddleware(compiler) {
|
|
1418
|
-
const nuxt
|
|
1408
|
+
const nuxt = useNuxt();
|
|
1419
1409
|
logger.debug("Creating webpack middleware...");
|
|
1420
1410
|
const devMiddleware = webpackDevMiddleware(compiler, {
|
|
1421
|
-
publicPath: joinURL(nuxt
|
|
1411
|
+
publicPath: joinURL(nuxt.options.app.baseURL, nuxt.options.app.buildAssetsDir),
|
|
1422
1412
|
outputFileSystem: compiler.outputFileSystem,
|
|
1423
1413
|
stats: "none",
|
|
1424
|
-
...nuxt
|
|
1414
|
+
...nuxt.options.webpack.devMiddleware
|
|
1425
1415
|
});
|
|
1426
|
-
nuxt
|
|
1427
|
-
const { client: _client, ...hotMiddlewareOptions } = nuxt
|
|
1416
|
+
nuxt.hook("close", () => pify(devMiddleware.close.bind(devMiddleware))());
|
|
1417
|
+
const { client: _client, ...hotMiddlewareOptions } = nuxt.options.webpack.hotMiddleware || {};
|
|
1428
1418
|
const hotMiddleware = webpackHotMiddleware(compiler, {
|
|
1429
1419
|
log: false,
|
|
1430
1420
|
heartbeat: 1e4,
|
|
1431
|
-
path: joinURL(nuxt
|
|
1421
|
+
path: joinURL(nuxt.options.app.baseURL, "__webpack_hmr", compiler.options.name),
|
|
1432
1422
|
...hotMiddlewareOptions
|
|
1433
1423
|
});
|
|
1434
1424
|
const devHandler = wdmToH3Handler(devMiddleware);
|
|
1435
|
-
await nuxt
|
|
1425
|
+
await nuxt.callHook("server:devHandler", defineEventHandler(async (event) => {
|
|
1436
1426
|
const body = await devHandler(event);
|
|
1437
1427
|
if (body !== void 0) return body;
|
|
1438
1428
|
const { req, res } = "runtime" in event ? event.runtime.node : event.node;
|
|
1439
|
-
await new Promise((resolve
|
|
1429
|
+
await new Promise((resolve, reject) => hotMiddleware(req, res, (err) => err ? reject(err) : resolve()));
|
|
1440
1430
|
}), { cors: () => true });
|
|
1441
1431
|
return devMiddleware;
|
|
1442
1432
|
}
|
|
1443
1433
|
function wdmToH3Handler(devMiddleware) {
|
|
1444
1434
|
return defineEventHandler(async (event) => {
|
|
1445
1435
|
const { req, res } = "runtime" in event ? event.runtime.node : event.node;
|
|
1446
|
-
if (req.headers["sec-fetch-mode"] === "no-cors" && req.headers["sec-fetch-site"] === "cross-site")
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
}
|
|
1451
|
-
return await new Promise((resolve
|
|
1436
|
+
if (req.headers["sec-fetch-mode"] === "no-cors" && req.headers["sec-fetch-site"] === "cross-site") {
|
|
1437
|
+
res.statusCode = 403;
|
|
1438
|
+
res.end("Forbidden");
|
|
1439
|
+
return;
|
|
1440
|
+
}
|
|
1441
|
+
return await new Promise((resolve, reject) => {
|
|
1452
1442
|
res.stream = (stream) => {
|
|
1453
|
-
resolve
|
|
1443
|
+
resolve(stream);
|
|
1454
1444
|
};
|
|
1455
1445
|
res.send = (data) => {
|
|
1456
|
-
resolve
|
|
1446
|
+
resolve(data);
|
|
1457
1447
|
};
|
|
1458
1448
|
res.finish = (data) => {
|
|
1459
|
-
resolve
|
|
1449
|
+
resolve(data);
|
|
1460
1450
|
};
|
|
1461
1451
|
devMiddleware(req, res, (err) => {
|
|
1462
1452
|
if (err) reject(err);
|
|
1463
|
-
else resolve
|
|
1453
|
+
else resolve(void 0);
|
|
1464
1454
|
});
|
|
1465
1455
|
});
|
|
1466
1456
|
});
|
|
1467
1457
|
}
|
|
1468
1458
|
async function compile(compiler) {
|
|
1469
|
-
const nuxt
|
|
1470
|
-
await nuxt
|
|
1459
|
+
const nuxt = useNuxt();
|
|
1460
|
+
await nuxt.callHook(`${builder}:compile`, {
|
|
1471
1461
|
name: compiler.options.name,
|
|
1472
1462
|
compiler
|
|
1473
1463
|
});
|
|
1474
|
-
compiler.hooks.done.tap("load-resources", async (stats
|
|
1475
|
-
await nuxt
|
|
1464
|
+
compiler.hooks.done.tap("load-resources", async (stats) => {
|
|
1465
|
+
await nuxt.callHook(`${builder}:compiled`, {
|
|
1476
1466
|
name: compiler.options.name,
|
|
1477
1467
|
compiler,
|
|
1478
|
-
stats
|
|
1468
|
+
stats
|
|
1479
1469
|
});
|
|
1480
1470
|
});
|
|
1481
|
-
if (nuxt
|
|
1471
|
+
if (nuxt.options.dev) {
|
|
1482
1472
|
const compilersWatching = [];
|
|
1483
|
-
nuxt
|
|
1473
|
+
nuxt.hook("close", async () => {
|
|
1484
1474
|
await Promise.all(compilersWatching.map((watching) => watching && pify(watching.close.bind(watching))()));
|
|
1485
1475
|
});
|
|
1486
|
-
if (compiler.options.name === "client") return new Promise((resolve
|
|
1476
|
+
if (compiler.options.name === "client") return new Promise((resolve, reject) => {
|
|
1487
1477
|
compiler.hooks.done.tap("nuxt-dev", () => {
|
|
1488
|
-
resolve
|
|
1478
|
+
resolve(null);
|
|
1489
1479
|
});
|
|
1490
1480
|
compiler.hooks.failed.tap("nuxt-errorlog", (err) => {
|
|
1491
1481
|
reject(err);
|
|
@@ -1494,15 +1484,15 @@ async function compile(compiler) {
|
|
|
1494
1484
|
if (devMiddleware.context.watching) compilersWatching.push(devMiddleware.context.watching);
|
|
1495
1485
|
});
|
|
1496
1486
|
});
|
|
1497
|
-
return new Promise((resolve
|
|
1498
|
-
const watching = compiler.watch(nuxt
|
|
1487
|
+
return new Promise((resolve, reject) => {
|
|
1488
|
+
const watching = compiler.watch(nuxt.options.watchers.webpack, (err) => {
|
|
1499
1489
|
if (err) return reject(err);
|
|
1500
|
-
resolve
|
|
1490
|
+
resolve(null);
|
|
1501
1491
|
});
|
|
1502
1492
|
compilersWatching.push(watching);
|
|
1503
1493
|
});
|
|
1504
1494
|
}
|
|
1505
|
-
const stats = await new Promise((resolve
|
|
1495
|
+
const stats = await new Promise((resolve, reject) => compiler.run((err, stats) => err ? reject(err) : resolve(stats)));
|
|
1506
1496
|
if (stats.hasErrors()) {
|
|
1507
1497
|
const error = /* @__PURE__ */ new Error("Nuxt build error");
|
|
1508
1498
|
error.stack = stats.toString("errors-only");
|
|
@@ -1512,6 +1502,5 @@ async function compile(compiler) {
|
|
|
1512
1502
|
function defineEventHandler(handler) {
|
|
1513
1503
|
return Object.assign(handler, { __is_handler__: true });
|
|
1514
1504
|
}
|
|
1515
|
-
|
|
1516
1505
|
//#endregion
|
|
1517
|
-
export { bundle };
|
|
1506
|
+
export { bundle };
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { normalize, relative } from "pathe";
|
|
2
|
-
|
|
3
2
|
//#region ../webpack/src/loaders/vue-module-identifier.ts
|
|
4
3
|
const vueModuleIdentifierLoader = function(source) {
|
|
5
4
|
this.cacheable?.();
|
|
@@ -10,7 +9,5 @@ const vueModuleIdentifierLoader = function(source) {
|
|
|
10
9
|
const moduleId = normalize(context ? relative(context, resourcePath) : resourcePath).replace(/^\.\//, "").replace(/\\/g, "/");
|
|
11
10
|
return source + `\n;__exports__.__moduleIdentifier = ${JSON.stringify(moduleId)};`;
|
|
12
11
|
};
|
|
13
|
-
var vue_module_identifier_default = vueModuleIdentifierLoader;
|
|
14
|
-
|
|
15
12
|
//#endregion
|
|
16
|
-
export {
|
|
13
|
+
export { vueModuleIdentifierLoader as default };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuxt/rspack-builder",
|
|
3
|
-
"version": "3.21.
|
|
3
|
+
"version": "3.21.2",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/nuxt/nuxt.git",
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@nuxt/friendly-errors-webpack-plugin": "^2.6.0",
|
|
28
|
-
"@rspack/core": "^1.7.
|
|
29
|
-
"@vue/compiler-sfc": "3.5.
|
|
30
|
-
"autoprefixer": "^10.4.
|
|
31
|
-
"css-loader": "^7.1.
|
|
32
|
-
"css-minimizer-webpack-plugin": "^
|
|
33
|
-
"cssnano": "^7.1.
|
|
28
|
+
"@rspack/core": "^1.7.8",
|
|
29
|
+
"@vue/compiler-sfc": "3.5.30",
|
|
30
|
+
"autoprefixer": "^10.4.27",
|
|
31
|
+
"css-loader": "^7.1.4",
|
|
32
|
+
"css-minimizer-webpack-plugin": "^8.0.0",
|
|
33
|
+
"cssnano": "^7.1.3",
|
|
34
34
|
"defu": "^6.1.4",
|
|
35
35
|
"esbuild-loader": "^4.4.2",
|
|
36
36
|
"escape-string-regexp": "^5.0.0",
|
|
@@ -39,50 +39,50 @@
|
|
|
39
39
|
"jiti": "^2.6.1",
|
|
40
40
|
"knitwork": "^1.3.0",
|
|
41
41
|
"magic-string": "^0.30.21",
|
|
42
|
-
"memfs": "^4.56.
|
|
43
|
-
"mlly": "^1.8.
|
|
42
|
+
"memfs": "^4.56.11",
|
|
43
|
+
"mlly": "^1.8.1",
|
|
44
44
|
"ohash": "^2.0.11",
|
|
45
45
|
"pathe": "^2.0.3",
|
|
46
46
|
"pify": "^6.1.0",
|
|
47
|
-
"postcss": "^8.5.
|
|
47
|
+
"postcss": "^8.5.8",
|
|
48
48
|
"postcss-import": "^16.1.1",
|
|
49
49
|
"postcss-import-resolver": "^2.0.0",
|
|
50
|
-
"postcss-loader": "^8.2.
|
|
50
|
+
"postcss-loader": "^8.2.1",
|
|
51
51
|
"postcss-url": "^10.1.3",
|
|
52
52
|
"pug-plain-loader": "^1.1.0",
|
|
53
|
-
"seroval": "^1.
|
|
54
|
-
"std-env": "^
|
|
53
|
+
"seroval": "^1.5.1",
|
|
54
|
+
"std-env": "^4.0.0",
|
|
55
55
|
"time-fix-plugin": "^2.0.7",
|
|
56
|
-
"ts-checker-rspack-plugin": "^1.
|
|
56
|
+
"ts-checker-rspack-plugin": "^1.3.0",
|
|
57
57
|
"ufo": "^1.6.3",
|
|
58
58
|
"unenv": "^2.0.0-rc.24",
|
|
59
|
-
"unplugin": "^
|
|
59
|
+
"unplugin": "^3.0.0",
|
|
60
60
|
"url-loader": "^4.1.1",
|
|
61
61
|
"vue-bundle-renderer": "^2.2.0",
|
|
62
62
|
"vue-loader": "^17.4.2",
|
|
63
|
-
"webpack-bundle-analyzer": "^5.
|
|
63
|
+
"webpack-bundle-analyzer": "^5.2.0",
|
|
64
64
|
"webpack-dev-middleware": "^7.4.5",
|
|
65
65
|
"webpack-hot-middleware": "^2.26.1",
|
|
66
66
|
"webpackbar": "^7.0.0",
|
|
67
|
-
"@nuxt/kit": "3.21.
|
|
67
|
+
"@nuxt/kit": "3.21.2"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
70
|
"@types/pify": "6.1.0",
|
|
71
71
|
"@types/webpack-bundle-analyzer": "4.7.0",
|
|
72
72
|
"@types/webpack-hot-middleware": "2.25.12",
|
|
73
|
-
"h3": "1.15.
|
|
74
|
-
"h3-next": "npm:h3@2.0.1-rc.
|
|
75
|
-
"obuild": "0.4.
|
|
76
|
-
"rollup": "4.
|
|
77
|
-
"vue": "3.5.
|
|
78
|
-
"@nuxt/schema": "3.21.
|
|
73
|
+
"h3": "1.15.6",
|
|
74
|
+
"h3-next": "npm:h3@2.0.1-rc.16",
|
|
75
|
+
"obuild": "0.4.32",
|
|
76
|
+
"rollup": "4.59.0",
|
|
77
|
+
"vue": "3.5.30",
|
|
78
|
+
"@nuxt/schema": "3.21.2"
|
|
79
79
|
},
|
|
80
80
|
"peerDependencies": {
|
|
81
81
|
"vue": "^3.3.4",
|
|
82
|
-
"nuxt": "3.21.
|
|
82
|
+
"nuxt": "3.21.2"
|
|
83
83
|
},
|
|
84
84
|
"engines": {
|
|
85
|
-
"node": "^20.
|
|
85
|
+
"node": "^20.19.0 || >=22.12.0"
|
|
86
86
|
},
|
|
87
87
|
"scripts": {
|
|
88
88
|
"build:stub": "obuild --stub",
|