@nuxt/kit 4.0.0-alpha.4 → 4.0.0
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/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +174 -75
- package/package.json +8 -8
package/dist/index.d.mts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.mjs
CHANGED
|
@@ -1066,6 +1066,11 @@ function addTypeTemplate(_template, context) {
|
|
|
1066
1066
|
nodeReferences.push({ path: template.dst });
|
|
1067
1067
|
});
|
|
1068
1068
|
}
|
|
1069
|
+
if (context?.shared) {
|
|
1070
|
+
nuxt.hook("prepare:types", ({ sharedReferences }) => {
|
|
1071
|
+
sharedReferences.push({ path: template.dst });
|
|
1072
|
+
});
|
|
1073
|
+
}
|
|
1069
1074
|
if (context?.nitro) {
|
|
1070
1075
|
nuxt.hook("nitro:prepare:types", ({ references }) => {
|
|
1071
1076
|
references.push({ path: template.dst });
|
|
@@ -1106,25 +1111,44 @@ function normalizeTemplate(template, buildDir) {
|
|
|
1106
1111
|
async function updateTemplates(options) {
|
|
1107
1112
|
return await tryUseNuxt()?.hooks.callHook("builder:generateApp", options);
|
|
1108
1113
|
}
|
|
1109
|
-
function resolveLayerPaths(buildDir, rootDir, srcDir) {
|
|
1114
|
+
function resolveLayerPaths(dir, buildDir, rootDir, srcDir) {
|
|
1110
1115
|
const relativeRootDir = relativeWithDot(buildDir, rootDir);
|
|
1116
|
+
const relativeSrcDir = relativeWithDot(buildDir, srcDir);
|
|
1117
|
+
const relativeModulesDir = relativeWithDot(buildDir, resolve(rootDir, dir.modules || "modules"));
|
|
1118
|
+
const relativeSharedDir = relativeWithDot(buildDir, resolve(rootDir, dir.shared || "shared"));
|
|
1111
1119
|
return {
|
|
1112
1120
|
nuxt: [
|
|
1113
|
-
join(
|
|
1114
|
-
join(
|
|
1115
|
-
join(relativeRootDir,
|
|
1121
|
+
join(relativeSrcDir, "**/*"),
|
|
1122
|
+
join(relativeModulesDir, `*/runtime/**/*`),
|
|
1123
|
+
join(relativeRootDir, `layers/*/app/**/*`),
|
|
1124
|
+
join(relativeRootDir, `layers/*/modules/*/runtime/**/*`)
|
|
1116
1125
|
],
|
|
1117
1126
|
nitro: [
|
|
1118
|
-
join(
|
|
1119
|
-
join(relativeRootDir,
|
|
1127
|
+
join(relativeModulesDir, `*/runtime/server/**/*`),
|
|
1128
|
+
join(relativeRootDir, `layers/*/server/**/*`),
|
|
1129
|
+
join(relativeRootDir, `layers/*/modules/*/runtime/server/**/*`)
|
|
1120
1130
|
],
|
|
1121
1131
|
node: [
|
|
1122
|
-
join(
|
|
1123
|
-
join(relativeRootDir,
|
|
1124
|
-
join(relativeRootDir,
|
|
1125
|
-
join(relativeRootDir,
|
|
1126
|
-
join(relativeRootDir,
|
|
1127
|
-
join(relativeRootDir,
|
|
1132
|
+
join(relativeModulesDir, `*.*`),
|
|
1133
|
+
join(relativeRootDir, `nuxt.config.*`),
|
|
1134
|
+
join(relativeRootDir, `.config/nuxt.*`),
|
|
1135
|
+
join(relativeRootDir, `layers/*/nuxt.config.*`),
|
|
1136
|
+
join(relativeRootDir, `layers/*/.config/nuxt.*`),
|
|
1137
|
+
join(relativeRootDir, `layers/*/modules/**/*`)
|
|
1138
|
+
],
|
|
1139
|
+
shared: [
|
|
1140
|
+
join(relativeSharedDir, `**/*`),
|
|
1141
|
+
join(relativeModulesDir, `*/shared/**/*`),
|
|
1142
|
+
join(relativeRootDir, `layers/*/shared/**/*`)
|
|
1143
|
+
],
|
|
1144
|
+
sharedDeclarations: [
|
|
1145
|
+
join(relativeSharedDir, `**/*.d.ts`),
|
|
1146
|
+
join(relativeModulesDir, `*/shared/**/*.d.ts`),
|
|
1147
|
+
join(relativeRootDir, `layers/*/shared/**/*.d.ts`)
|
|
1148
|
+
],
|
|
1149
|
+
globalDeclarations: [
|
|
1150
|
+
join(relativeRootDir, `*.d.ts`),
|
|
1151
|
+
join(relativeRootDir, `layers/*/*.d.ts`)
|
|
1128
1152
|
]
|
|
1129
1153
|
};
|
|
1130
1154
|
}
|
|
@@ -1133,9 +1157,11 @@ const excludedAlias = [/^@vue\/.*$/, /^#internal\/nuxt/];
|
|
|
1133
1157
|
async function _generateTypes(nuxt) {
|
|
1134
1158
|
const include = /* @__PURE__ */ new Set(["./nuxt.d.ts"]);
|
|
1135
1159
|
const nodeInclude = /* @__PURE__ */ new Set(["./nuxt.node.d.ts"]);
|
|
1136
|
-
const
|
|
1160
|
+
const sharedInclude = /* @__PURE__ */ new Set(["./nuxt.shared.d.ts"]);
|
|
1161
|
+
const legacyInclude = /* @__PURE__ */ new Set([...include, ...nodeInclude]);
|
|
1137
1162
|
const exclude = /* @__PURE__ */ new Set();
|
|
1138
1163
|
const nodeExclude = /* @__PURE__ */ new Set();
|
|
1164
|
+
const sharedExclude = /* @__PURE__ */ new Set();
|
|
1139
1165
|
const legacyExclude = /* @__PURE__ */ new Set();
|
|
1140
1166
|
if (nuxt.options.typescript.includeWorkspace && nuxt.options.workspaceDir !== nuxt.options.srcDir) {
|
|
1141
1167
|
include.add(join(relative(nuxt.options.buildDir, nuxt.options.workspaceDir), "**/*"));
|
|
@@ -1156,7 +1182,7 @@ async function _generateTypes(nuxt) {
|
|
|
1156
1182
|
const srcOrCwd = withTrailingSlash(layer.config.srcDir ?? layer.cwd);
|
|
1157
1183
|
if (!srcOrCwd.startsWith(rootDirWithSlash) || layer.cwd === nuxt.options.rootDir || srcOrCwd.includes("node_modules")) {
|
|
1158
1184
|
const rootGlob = join(relativeWithDot(nuxt.options.buildDir, layer.cwd), "**/*");
|
|
1159
|
-
const paths = resolveLayerPaths(nuxt.options.buildDir, layer.cwd, layer.config.srcDir);
|
|
1185
|
+
const paths = resolveLayerPaths(defu(layer.config.dir, nuxt.options.dir), nuxt.options.buildDir, layer.cwd, layer.config.srcDir);
|
|
1160
1186
|
for (const path of paths.nuxt) {
|
|
1161
1187
|
include.add(path);
|
|
1162
1188
|
legacyInclude.add(path);
|
|
@@ -1174,6 +1200,18 @@ async function _generateTypes(nuxt) {
|
|
|
1174
1200
|
legacyInclude.add(path);
|
|
1175
1201
|
exclude.add(path);
|
|
1176
1202
|
}
|
|
1203
|
+
for (const path of paths.shared) {
|
|
1204
|
+
legacyInclude.add(path);
|
|
1205
|
+
sharedInclude.add(path);
|
|
1206
|
+
}
|
|
1207
|
+
for (const path of paths.sharedDeclarations) {
|
|
1208
|
+
include.add(path);
|
|
1209
|
+
}
|
|
1210
|
+
for (const path of paths.globalDeclarations) {
|
|
1211
|
+
include.add(path);
|
|
1212
|
+
legacyInclude.add(path);
|
|
1213
|
+
sharedInclude.add(path);
|
|
1214
|
+
}
|
|
1177
1215
|
}
|
|
1178
1216
|
}
|
|
1179
1217
|
const moduleEntryPaths = [];
|
|
@@ -1185,14 +1223,18 @@ async function _generateTypes(nuxt) {
|
|
|
1185
1223
|
const modulePaths = await resolveNuxtModule(rootDirWithSlash, moduleEntryPaths);
|
|
1186
1224
|
for (const path of modulePaths) {
|
|
1187
1225
|
const relative2 = relativeWithDot(nuxt.options.buildDir, path);
|
|
1188
|
-
|
|
1189
|
-
|
|
1226
|
+
if (!path.includes("node_modules")) {
|
|
1227
|
+
include.add(join(relative2, "runtime"));
|
|
1228
|
+
include.add(join(relative2, "dist/runtime"));
|
|
1229
|
+
nodeInclude.add(join(relative2, "*.*"));
|
|
1230
|
+
}
|
|
1190
1231
|
legacyInclude.add(join(relative2, "runtime"));
|
|
1191
1232
|
legacyInclude.add(join(relative2, "dist/runtime"));
|
|
1192
1233
|
nodeExclude.add(join(relative2, "runtime"));
|
|
1193
1234
|
nodeExclude.add(join(relative2, "dist/runtime"));
|
|
1194
1235
|
exclude.add(join(relative2, "runtime/server"));
|
|
1195
1236
|
exclude.add(join(relative2, "dist/runtime/server"));
|
|
1237
|
+
exclude.add(join(relative2, "*.*"));
|
|
1196
1238
|
legacyExclude.add(join(relative2, "runtime/server"));
|
|
1197
1239
|
legacyExclude.add(join(relative2, "dist/runtime/server"));
|
|
1198
1240
|
}
|
|
@@ -1209,41 +1251,6 @@ async function _generateTypes(nuxt) {
|
|
|
1209
1251
|
}
|
|
1210
1252
|
hasTypescriptVersionWithModulePreserve ??= true;
|
|
1211
1253
|
const useDecorators = Boolean(nuxt.options.experimental?.decorators);
|
|
1212
|
-
const nodeReferences = [];
|
|
1213
|
-
const nodeTsConfig = defu(nuxt.options.typescript?.nodeTsConfig, {
|
|
1214
|
-
compilerOptions: {
|
|
1215
|
-
/* Base options: */
|
|
1216
|
-
esModuleInterop: true,
|
|
1217
|
-
skipLibCheck: true,
|
|
1218
|
-
target: "ESNext",
|
|
1219
|
-
allowJs: true,
|
|
1220
|
-
resolveJsonModule: true,
|
|
1221
|
-
moduleDetection: "force",
|
|
1222
|
-
isolatedModules: true,
|
|
1223
|
-
verbatimModuleSyntax: true,
|
|
1224
|
-
/* Strictness */
|
|
1225
|
-
strict: nuxt.options.typescript?.strict ?? true,
|
|
1226
|
-
noUncheckedIndexedAccess: true,
|
|
1227
|
-
forceConsistentCasingInFileNames: true,
|
|
1228
|
-
noImplicitOverride: true,
|
|
1229
|
-
/* If NOT transpiling with TypeScript: */
|
|
1230
|
-
module: hasTypescriptVersionWithModulePreserve ? "preserve" : "ESNext",
|
|
1231
|
-
noEmit: true,
|
|
1232
|
-
/* remove auto-scanning for types */
|
|
1233
|
-
types: [],
|
|
1234
|
-
/* add paths object for filling-in later */
|
|
1235
|
-
paths: {},
|
|
1236
|
-
/* Possibly consider removing the following in future */
|
|
1237
|
-
moduleResolution: hasTypescriptVersionWithModulePreserve ? void 0 : "Bundler",
|
|
1238
|
-
useDefineForClassFields: true,
|
|
1239
|
-
/* implied by target: es2022+ */
|
|
1240
|
-
noImplicitThis: true,
|
|
1241
|
-
/* enabled with `strict` */
|
|
1242
|
-
allowSyntheticDefaultImports: true
|
|
1243
|
-
},
|
|
1244
|
-
include: [...nodeInclude],
|
|
1245
|
-
exclude: [...nodeExclude]
|
|
1246
|
-
});
|
|
1247
1254
|
const tsConfig = defu(nuxt.options.typescript?.tsConfig, {
|
|
1248
1255
|
compilerOptions: {
|
|
1249
1256
|
/* Base options: */
|
|
@@ -1294,6 +1301,70 @@ async function _generateTypes(nuxt) {
|
|
|
1294
1301
|
include: [...include],
|
|
1295
1302
|
exclude: [...exclude]
|
|
1296
1303
|
});
|
|
1304
|
+
const nodeTsConfig = defu(nuxt.options.typescript?.nodeTsConfig, {
|
|
1305
|
+
compilerOptions: {
|
|
1306
|
+
/* Base options: */
|
|
1307
|
+
esModuleInterop: tsConfig.compilerOptions?.esModuleInterop,
|
|
1308
|
+
skipLibCheck: tsConfig.compilerOptions?.skipLibCheck,
|
|
1309
|
+
target: tsConfig.compilerOptions?.target,
|
|
1310
|
+
allowJs: tsConfig.compilerOptions?.allowJs,
|
|
1311
|
+
resolveJsonModule: tsConfig.compilerOptions?.resolveJsonModule,
|
|
1312
|
+
moduleDetection: tsConfig.compilerOptions?.moduleDetection,
|
|
1313
|
+
isolatedModules: tsConfig.compilerOptions?.isolatedModules,
|
|
1314
|
+
verbatimModuleSyntax: tsConfig.compilerOptions?.verbatimModuleSyntax,
|
|
1315
|
+
/* Strictness */
|
|
1316
|
+
strict: tsConfig.compilerOptions?.strict,
|
|
1317
|
+
noUncheckedIndexedAccess: tsConfig.compilerOptions?.noUncheckedIndexedAccess,
|
|
1318
|
+
forceConsistentCasingInFileNames: tsConfig.compilerOptions?.forceConsistentCasingInFileNames,
|
|
1319
|
+
noImplicitOverride: tsConfig.compilerOptions?.noImplicitOverride,
|
|
1320
|
+
/* If NOT transpiling with TypeScript: */
|
|
1321
|
+
module: tsConfig.compilerOptions?.module,
|
|
1322
|
+
noEmit: true,
|
|
1323
|
+
/* remove auto-scanning for types */
|
|
1324
|
+
types: [],
|
|
1325
|
+
/* add paths object for filling-in later */
|
|
1326
|
+
paths: {},
|
|
1327
|
+
/* Possibly consider removing the following in future */
|
|
1328
|
+
moduleResolution: tsConfig.compilerOptions?.moduleResolution,
|
|
1329
|
+
useDefineForClassFields: tsConfig.compilerOptions?.useDefineForClassFields,
|
|
1330
|
+
noImplicitThis: tsConfig.compilerOptions?.noImplicitThis,
|
|
1331
|
+
allowSyntheticDefaultImports: tsConfig.compilerOptions?.allowSyntheticDefaultImports
|
|
1332
|
+
},
|
|
1333
|
+
include: [...nodeInclude],
|
|
1334
|
+
exclude: [...nodeExclude]
|
|
1335
|
+
});
|
|
1336
|
+
const sharedTsConfig = defu(nuxt.options.typescript?.sharedTsConfig, {
|
|
1337
|
+
compilerOptions: {
|
|
1338
|
+
/* Base options: */
|
|
1339
|
+
esModuleInterop: tsConfig.compilerOptions?.esModuleInterop,
|
|
1340
|
+
skipLibCheck: tsConfig.compilerOptions?.skipLibCheck,
|
|
1341
|
+
target: tsConfig.compilerOptions?.target,
|
|
1342
|
+
allowJs: tsConfig.compilerOptions?.allowJs,
|
|
1343
|
+
resolveJsonModule: tsConfig.compilerOptions?.resolveJsonModule,
|
|
1344
|
+
moduleDetection: tsConfig.compilerOptions?.moduleDetection,
|
|
1345
|
+
isolatedModules: tsConfig.compilerOptions?.isolatedModules,
|
|
1346
|
+
verbatimModuleSyntax: tsConfig.compilerOptions?.verbatimModuleSyntax,
|
|
1347
|
+
/* Strictness */
|
|
1348
|
+
strict: tsConfig.compilerOptions?.strict,
|
|
1349
|
+
noUncheckedIndexedAccess: tsConfig.compilerOptions?.noUncheckedIndexedAccess,
|
|
1350
|
+
forceConsistentCasingInFileNames: tsConfig.compilerOptions?.forceConsistentCasingInFileNames,
|
|
1351
|
+
noImplicitOverride: tsConfig.compilerOptions?.noImplicitOverride,
|
|
1352
|
+
/* If NOT transpiling with TypeScript: */
|
|
1353
|
+
module: tsConfig.compilerOptions?.module,
|
|
1354
|
+
noEmit: true,
|
|
1355
|
+
/* remove auto-scanning for types */
|
|
1356
|
+
types: [],
|
|
1357
|
+
/* add paths object for filling-in later */
|
|
1358
|
+
paths: {},
|
|
1359
|
+
/* Possibly consider removing the following in future */
|
|
1360
|
+
moduleResolution: tsConfig.compilerOptions?.moduleResolution,
|
|
1361
|
+
useDefineForClassFields: tsConfig.compilerOptions?.useDefineForClassFields,
|
|
1362
|
+
noImplicitThis: tsConfig.compilerOptions?.noImplicitThis,
|
|
1363
|
+
allowSyntheticDefaultImports: tsConfig.compilerOptions?.allowSyntheticDefaultImports
|
|
1364
|
+
},
|
|
1365
|
+
include: [...sharedInclude],
|
|
1366
|
+
exclude: [...sharedExclude]
|
|
1367
|
+
});
|
|
1297
1368
|
const aliases = nuxt.options.alias;
|
|
1298
1369
|
const basePath = tsConfig.compilerOptions.baseUrl ? resolve(nuxt.options.buildDir, tsConfig.compilerOptions.baseUrl) : nuxt.options.buildDir;
|
|
1299
1370
|
tsConfig.compilerOptions ||= {};
|
|
@@ -1330,6 +1401,8 @@ async function _generateTypes(nuxt) {
|
|
|
1330
1401
|
}
|
|
1331
1402
|
}
|
|
1332
1403
|
const references = [];
|
|
1404
|
+
const nodeReferences = [];
|
|
1405
|
+
const sharedReferences = [];
|
|
1333
1406
|
await Promise.all([...nuxt.options.modules, ...nuxt.options._modules].map(async (id) => {
|
|
1334
1407
|
if (typeof id !== "string") {
|
|
1335
1408
|
return;
|
|
@@ -1337,30 +1410,43 @@ async function _generateTypes(nuxt) {
|
|
|
1337
1410
|
for (const parent of nestedModulesDirs) {
|
|
1338
1411
|
const pkg = await readPackageJSON(id, { parent }).catch(() => null);
|
|
1339
1412
|
if (pkg) {
|
|
1340
|
-
|
|
1413
|
+
nodeReferences.push({ types: pkg.name ?? id });
|
|
1341
1414
|
return;
|
|
1342
1415
|
}
|
|
1343
1416
|
}
|
|
1344
|
-
|
|
1417
|
+
nodeReferences.push({ types: id });
|
|
1345
1418
|
}));
|
|
1346
1419
|
const declarations = [];
|
|
1347
|
-
await nuxt.callHook("prepare:types", { references, declarations, tsConfig, nodeTsConfig, nodeReferences });
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
tsConfig.
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1420
|
+
await nuxt.callHook("prepare:types", { references, declarations, tsConfig, nodeTsConfig, nodeReferences, sharedTsConfig, sharedReferences });
|
|
1421
|
+
const legacyTsConfig = defu({}, {
|
|
1422
|
+
...tsConfig,
|
|
1423
|
+
include: [...tsConfig.include, ...legacyInclude],
|
|
1424
|
+
exclude: [...legacyExclude]
|
|
1425
|
+
});
|
|
1426
|
+
async function resolveConfig(tsConfig2) {
|
|
1427
|
+
for (const alias in tsConfig2.compilerOptions.paths) {
|
|
1428
|
+
const paths = tsConfig2.compilerOptions.paths[alias];
|
|
1429
|
+
tsConfig2.compilerOptions.paths[alias] = [...new Set(await Promise.all(paths.map(async (path) => {
|
|
1430
|
+
if (!isAbsolute(path)) {
|
|
1431
|
+
return path;
|
|
1432
|
+
}
|
|
1433
|
+
const stats = await promises.stat(path).catch(
|
|
1434
|
+
() => null
|
|
1435
|
+
/* file does not exist */
|
|
1436
|
+
);
|
|
1437
|
+
return relativeWithDot(nuxt.options.buildDir, stats?.isFile() ? path.replace(EXTENSION_RE, "") : path);
|
|
1438
|
+
})))];
|
|
1439
|
+
}
|
|
1440
|
+
sortTsPaths(tsConfig2.compilerOptions.paths);
|
|
1441
|
+
tsConfig2.include = [...new Set(tsConfig2.include.map((p) => isAbsolute(p) ? relativeWithDot(nuxt.options.buildDir, p) : p))];
|
|
1442
|
+
tsConfig2.exclude = [...new Set(tsConfig2.exclude.map((p) => isAbsolute(p) ? relativeWithDot(nuxt.options.buildDir, p) : p))];
|
|
1360
1443
|
}
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1444
|
+
await Promise.all([
|
|
1445
|
+
resolveConfig(tsConfig),
|
|
1446
|
+
resolveConfig(nodeTsConfig),
|
|
1447
|
+
resolveConfig(sharedTsConfig),
|
|
1448
|
+
resolveConfig(legacyTsConfig)
|
|
1449
|
+
]);
|
|
1364
1450
|
const declaration = [
|
|
1365
1451
|
...references.map((ref) => {
|
|
1366
1452
|
if ("path" in ref && isAbsolute(ref.path)) {
|
|
@@ -1384,12 +1470,21 @@ async function _generateTypes(nuxt) {
|
|
|
1384
1470
|
"export {}",
|
|
1385
1471
|
""
|
|
1386
1472
|
].join("\n");
|
|
1387
|
-
const
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
|
|
1473
|
+
const sharedDeclaration = [
|
|
1474
|
+
...sharedReferences.map((ref) => {
|
|
1475
|
+
if ("path" in ref && isAbsolute(ref.path)) {
|
|
1476
|
+
ref.path = relative(nuxt.options.buildDir, ref.path);
|
|
1477
|
+
}
|
|
1478
|
+
return `/// <reference ${renderAttrs(ref)} />`;
|
|
1479
|
+
}),
|
|
1480
|
+
"",
|
|
1481
|
+
"export {}",
|
|
1482
|
+
""
|
|
1483
|
+
].join("\n");
|
|
1391
1484
|
return {
|
|
1392
1485
|
declaration,
|
|
1486
|
+
sharedTsConfig,
|
|
1487
|
+
sharedDeclaration,
|
|
1393
1488
|
nodeTsConfig,
|
|
1394
1489
|
nodeDeclaration,
|
|
1395
1490
|
tsConfig,
|
|
@@ -1397,19 +1492,23 @@ async function _generateTypes(nuxt) {
|
|
|
1397
1492
|
};
|
|
1398
1493
|
}
|
|
1399
1494
|
async function writeTypes(nuxt) {
|
|
1400
|
-
const { tsConfig, nodeTsConfig, nodeDeclaration, declaration, legacyTsConfig } = await _generateTypes(nuxt);
|
|
1495
|
+
const { tsConfig, nodeTsConfig, nodeDeclaration, declaration, legacyTsConfig, sharedDeclaration, sharedTsConfig } = await _generateTypes(nuxt);
|
|
1401
1496
|
const appTsConfigPath = resolve(nuxt.options.buildDir, "tsconfig.app.json");
|
|
1402
1497
|
const legacyTsConfigPath = resolve(nuxt.options.buildDir, "tsconfig.json");
|
|
1403
1498
|
const nodeTsConfigPath = resolve(nuxt.options.buildDir, "tsconfig.node.json");
|
|
1499
|
+
const sharedTsConfigPath = resolve(nuxt.options.buildDir, "tsconfig.shared.json");
|
|
1404
1500
|
const declarationPath = resolve(nuxt.options.buildDir, "nuxt.d.ts");
|
|
1405
1501
|
const nodeDeclarationPath = resolve(nuxt.options.buildDir, "nuxt.node.d.ts");
|
|
1502
|
+
const sharedDeclarationPath = resolve(nuxt.options.buildDir, "nuxt.shared.d.ts");
|
|
1406
1503
|
await promises.mkdir(nuxt.options.buildDir, { recursive: true });
|
|
1407
1504
|
await Promise.all([
|
|
1408
1505
|
promises.writeFile(appTsConfigPath, JSON.stringify(tsConfig, null, 2)),
|
|
1409
1506
|
promises.writeFile(legacyTsConfigPath, JSON.stringify(legacyTsConfig, null, 2)),
|
|
1410
1507
|
promises.writeFile(nodeTsConfigPath, JSON.stringify(nodeTsConfig, null, 2)),
|
|
1508
|
+
promises.writeFile(sharedTsConfigPath, JSON.stringify(sharedTsConfig, null, 2)),
|
|
1411
1509
|
promises.writeFile(declarationPath, declaration),
|
|
1412
|
-
promises.writeFile(nodeDeclarationPath, nodeDeclaration)
|
|
1510
|
+
promises.writeFile(nodeDeclarationPath, nodeDeclaration),
|
|
1511
|
+
promises.writeFile(sharedDeclarationPath, sharedDeclaration)
|
|
1413
1512
|
]);
|
|
1414
1513
|
}
|
|
1415
1514
|
function sortTsPaths(paths) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuxt/kit",
|
|
3
|
-
"version": "4.0.0
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/nuxt/nuxt.git",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"dist"
|
|
24
24
|
],
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"c12": "^3.0
|
|
26
|
+
"c12": "^3.1.0",
|
|
27
27
|
"consola": "^3.4.2",
|
|
28
28
|
"defu": "^6.1.4",
|
|
29
29
|
"destr": "^2.0.5",
|
|
@@ -35,26 +35,26 @@
|
|
|
35
35
|
"mlly": "^1.7.4",
|
|
36
36
|
"ohash": "^2.0.11",
|
|
37
37
|
"pathe": "^2.0.3",
|
|
38
|
-
"pkg-types": "^2.
|
|
38
|
+
"pkg-types": "^2.2.0",
|
|
39
39
|
"scule": "^1.3.0",
|
|
40
40
|
"semver": "^7.7.2",
|
|
41
41
|
"std-env": "^3.9.0",
|
|
42
42
|
"tinyglobby": "^0.2.14",
|
|
43
43
|
"ufo": "^1.6.1",
|
|
44
44
|
"unctx": "^2.4.1",
|
|
45
|
-
"unimport": "^5.0
|
|
45
|
+
"unimport": "^5.1.0",
|
|
46
46
|
"untyped": "^2.0.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@rspack/core": "1.
|
|
49
|
+
"@rspack/core": "1.4.8",
|
|
50
50
|
"@types/semver": "7.7.0",
|
|
51
51
|
"hookable": "5.5.3",
|
|
52
|
-
"nitropack": "2.
|
|
52
|
+
"nitropack": "2.12.0",
|
|
53
53
|
"unbuild": "3.5.0",
|
|
54
|
-
"vite": "7.0.
|
|
54
|
+
"vite": "7.0.4",
|
|
55
55
|
"vitest": "3.2.4",
|
|
56
56
|
"webpack": "5.99.9",
|
|
57
|
-
"@nuxt/schema": "4.0.0
|
|
57
|
+
"@nuxt/schema": "4.0.0"
|
|
58
58
|
},
|
|
59
59
|
"engines": {
|
|
60
60
|
"node": ">=18.12.0"
|