nitro-nightly 3.0.1-20251218-140714-077b79bf → 3.0.1-20251218-210030-3992c731
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/_dev.mjs
CHANGED
|
@@ -588,9 +588,10 @@ var NitroDevServer = class NitroDevServer extends NitroDevApp {
|
|
|
588
588
|
this.#building = false;
|
|
589
589
|
for (const worker of this.#workers) worker.close();
|
|
590
590
|
});
|
|
591
|
-
|
|
591
|
+
const devWatch = nitro.options.devServer.watch;
|
|
592
|
+
if (devWatch && devWatch.length > 0) {
|
|
592
593
|
const debouncedReload = debounce(() => this.reload());
|
|
593
|
-
this.#watcher = watch$1(
|
|
594
|
+
this.#watcher = watch$1(devWatch, nitro.options.watchOptions);
|
|
594
595
|
this.#watcher.on("add", debouncedReload).on("change", debouncedReload);
|
|
595
596
|
}
|
|
596
597
|
}
|
package/dist/_nitro.mjs
CHANGED
|
@@ -143,6 +143,7 @@ async function resolveCompatibilityOptions(options) {
|
|
|
143
143
|
//#region src/config/resolvers/database.ts
|
|
144
144
|
async function resolveDatabaseOptions(options) {
|
|
145
145
|
if (options.experimental.database && options.imports) {
|
|
146
|
+
options.imports.presets ??= [];
|
|
146
147
|
options.imports.presets.push({
|
|
147
148
|
from: "nitro/database",
|
|
148
149
|
imports: ["useDatabase"]
|
|
@@ -433,6 +434,7 @@ function normalizeRuntimeConfig(config) {
|
|
|
433
434
|
openAPI: config.openAPI
|
|
434
435
|
}
|
|
435
436
|
});
|
|
437
|
+
runtimeConfig.nitro ??= {};
|
|
436
438
|
runtimeConfig.nitro.routeRules = config.routeRules;
|
|
437
439
|
checkSerializableRuntimeConfig(runtimeConfig);
|
|
438
440
|
return runtimeConfig;
|
|
@@ -1183,7 +1185,9 @@ async function prerender(nitro) {
|
|
|
1183
1185
|
const scannedPublicAssets = nitro.options.prerender.ignoreUnprefixedPublicAssets ? new Set(await scanUnprefixedPublicAssets(nitro)) : /* @__PURE__ */ new Set();
|
|
1184
1186
|
const canPrerender = (route = "/") => {
|
|
1185
1187
|
if (generatedRoutes.has(route) || skippedRoutes.has(route)) return false;
|
|
1186
|
-
|
|
1188
|
+
if (nitro.options.prerender.ignore) {
|
|
1189
|
+
for (const pattern of nitro.options.prerender.ignore) if (matchesIgnorePattern(route, pattern)) return false;
|
|
1190
|
+
}
|
|
1187
1191
|
if (publicAssetBases.some((base) => route.startsWith(base))) return false;
|
|
1188
1192
|
if (scannedPublicAssets.has(route)) return false;
|
|
1189
1193
|
if (_getRouteRules(route).prerender === false) return false;
|
|
@@ -1270,7 +1274,7 @@ async function prerender(nitro) {
|
|
|
1270
1274
|
nitro._prerenderedRoutes.push(_route);
|
|
1271
1275
|
} else _route.skip = true;
|
|
1272
1276
|
if (!_route.error && (isImplicitHTML || route.endsWith(".html"))) {
|
|
1273
|
-
const extractedLinks = await extractLinks(dataBuff.toString("utf8"), route, res, nitro.options.prerender.crawlLinks);
|
|
1277
|
+
const extractedLinks = await extractLinks(dataBuff.toString("utf8"), route, res, nitro.options.prerender.crawlLinks ?? false);
|
|
1274
1278
|
for (const _link of extractedLinks) if (canPrerender(_link)) routes.add(_link);
|
|
1275
1279
|
}
|
|
1276
1280
|
await nitro.hooks.callHook("prerender:route", _route);
|
|
@@ -1280,7 +1284,7 @@ async function prerender(nitro) {
|
|
|
1280
1284
|
};
|
|
1281
1285
|
nitro.logger.info(nitro.options.prerender.crawlLinks ? `Prerendering ${routes.size} initial routes with crawler` : `Prerendering ${routes.size} routes`);
|
|
1282
1286
|
await runParallel(routes, generateRoute, {
|
|
1283
|
-
concurrency: nitro.options.prerender.concurrency,
|
|
1287
|
+
concurrency: nitro.options.prerender.concurrency || 1,
|
|
1284
1288
|
interval: nitro.options.prerender.interval
|
|
1285
1289
|
});
|
|
1286
1290
|
await prerenderer.close();
|
package/dist/_nitro2.mjs
CHANGED
|
@@ -220,7 +220,7 @@ async function writeTypes(nitro) {
|
|
|
220
220
|
contents: declarations.join("\n")
|
|
221
221
|
});
|
|
222
222
|
if (nitro.options.typescript.generateTsConfig) {
|
|
223
|
-
const tsConfigPath = resolve(generatedTypesDir, nitro.options.typescript.tsconfigPath);
|
|
223
|
+
const tsConfigPath = resolve(generatedTypesDir, nitro.options.typescript.tsconfigPath || "tsconfig.json");
|
|
224
224
|
const tsconfigDir = dirname(tsConfigPath);
|
|
225
225
|
const tsConfig = defu(nitro.options.typescript.tsConfig, {
|
|
226
226
|
compilerOptions: {
|
|
@@ -3,11 +3,11 @@ import { useRuntimeConfig } from "../runtime-config.mjs";
|
|
|
3
3
|
// Served as /_scalar
|
|
4
4
|
export default defineHandler((event) => {
|
|
5
5
|
const runtimeConfig = useRuntimeConfig();
|
|
6
|
-
const title = runtimeConfig.nitro
|
|
7
|
-
const description = runtimeConfig.nitro
|
|
8
|
-
const openAPIEndpoint = runtimeConfig.nitro
|
|
6
|
+
const title = runtimeConfig.nitro?.openAPI?.meta?.title || "API Reference";
|
|
7
|
+
const description = runtimeConfig.nitro?.openAPI?.meta?.description || "";
|
|
8
|
+
const openAPIEndpoint = runtimeConfig.nitro?.openAPI?.route || "./_openapi.json";
|
|
9
9
|
// https://github.com/scalar/scalar
|
|
10
|
-
const _config = runtimeConfig.nitro
|
|
10
|
+
const _config = runtimeConfig.nitro?.openAPI?.ui?.scalar;
|
|
11
11
|
const scalarConfig = {
|
|
12
12
|
..._config,
|
|
13
13
|
url: openAPIEndpoint,
|
|
@@ -3,9 +3,9 @@ import { useRuntimeConfig } from "../runtime-config.mjs";
|
|
|
3
3
|
// https://github.com/swagger-api/swagger-ui
|
|
4
4
|
export default defineHandler((event) => {
|
|
5
5
|
const runtimeConfig = useRuntimeConfig();
|
|
6
|
-
const title = runtimeConfig.nitro
|
|
7
|
-
const description = runtimeConfig.nitro
|
|
8
|
-
const openAPIEndpoint = runtimeConfig.nitro
|
|
6
|
+
const title = runtimeConfig.nitro?.openAPI?.meta?.title || "API Reference";
|
|
7
|
+
const description = runtimeConfig.nitro?.openAPI?.meta?.description || "";
|
|
8
|
+
const openAPIEndpoint = runtimeConfig.nitro?.openAPI?.route || "./_openapi.json";
|
|
9
9
|
const CDN_BASE = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@^5";
|
|
10
10
|
event.res.headers.set("Content-Type", "text/html");
|
|
11
11
|
return `<!doctype html>
|
package/dist/types/index.d.mts
CHANGED
|
@@ -1827,7 +1827,7 @@ interface VercelServerlessFunctionConfig {
|
|
|
1827
1827
|
[key: string]: unknown;
|
|
1828
1828
|
}
|
|
1829
1829
|
interface VercelOptions {
|
|
1830
|
-
config
|
|
1830
|
+
config?: VercelBuildConfigV3;
|
|
1831
1831
|
/**
|
|
1832
1832
|
* If you have enabled skew protection in the Vercel dashboard, it will
|
|
1833
1833
|
* be enabled by default.
|
|
@@ -1864,12 +1864,6 @@ interface PresetOptions {
|
|
|
1864
1864
|
type PresetName = "alwaysdata" | "aws-amplify" | "aws-lambda" | "azure-swa" | "base-worker" | "bun" | "cleavr" | "cloudflare-dev" | "cloudflare-durable" | "cloudflare-module" | "cloudflare-pages" | "cloudflare-pages-static" | "deno" | "deno-deploy" | "deno-server" | "digital-ocean" | "firebase-app-hosting" | "flight-control" | "genezio" | "github-pages" | "gitlab-pages" | "heroku" | "iis-handler" | "iis-node" | "koyeb" | "netlify" | "netlify-edge" | "netlify-static" | "nitro-dev" | "nitro-prerender" | "node" | "node-cluster" | "node-middleware" | "node-server" | "platform-sh" | "render-com" | "standard" | "static" | "stormkit" | "vercel" | "vercel-static" | "winterjs" | "zeabur" | "zeabur-static" | "zerops" | "zerops-static";
|
|
1865
1865
|
type PresetNameInput = "alwaysdata" | "aws-amplify" | "awsAmplify" | "aws_amplify" | "aws-lambda" | "awsLambda" | "aws_lambda" | "azure-swa" | "azureSwa" | "azure_swa" | "base-worker" | "baseWorker" | "base_worker" | "bun" | "cleavr" | "cloudflare-dev" | "cloudflareDev" | "cloudflare_dev" | "cloudflare-durable" | "cloudflareDurable" | "cloudflare_durable" | "cloudflare-module" | "cloudflareModule" | "cloudflare_module" | "cloudflare-pages" | "cloudflarePages" | "cloudflare_pages" | "cloudflare-pages-static" | "cloudflarePagesStatic" | "cloudflare_pages_static" | "deno" | "deno-deploy" | "denoDeploy" | "deno_deploy" | "deno-server" | "denoServer" | "deno_server" | "digital-ocean" | "digitalOcean" | "digital_ocean" | "firebase-app-hosting" | "firebaseAppHosting" | "firebase_app_hosting" | "flight-control" | "flightControl" | "flight_control" | "genezio" | "github-pages" | "githubPages" | "github_pages" | "gitlab-pages" | "gitlabPages" | "gitlab_pages" | "heroku" | "iis-handler" | "iisHandler" | "iis_handler" | "iis-node" | "iisNode" | "iis_node" | "koyeb" | "netlify" | "netlify-edge" | "netlifyEdge" | "netlify_edge" | "netlify-static" | "netlifyStatic" | "netlify_static" | "nitro-dev" | "nitroDev" | "nitro_dev" | "nitro-prerender" | "nitroPrerender" | "nitro_prerender" | "node" | "node-cluster" | "nodeCluster" | "node_cluster" | "node-middleware" | "nodeMiddleware" | "node_middleware" | "node-server" | "nodeServer" | "node_server" | "platform-sh" | "platformSh" | "platform_sh" | "render-com" | "renderCom" | "render_com" | "standard" | "static" | "stormkit" | "vercel" | "vercel-static" | "vercelStatic" | "vercel_static" | "winterjs" | "zeabur" | "zeabur-static" | "zeaburStatic" | "zeabur_static" | "zerops" | "zerops-static" | "zeropsStatic" | "zerops_static" | (string & {});
|
|
1866
1866
|
//#endregion
|
|
1867
|
-
//#region src/types/_utils.d.ts
|
|
1868
|
-
type Enumerate<N extends number, Acc extends number[] = []> = Acc["length"] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc["length"]]>;
|
|
1869
|
-
type IntRange<F$1 extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F$1>>;
|
|
1870
|
-
type ExcludeFunctions<G extends Record<string, any>> = Pick<G, { [P in keyof G]: NonNullable<G[P]> extends Function ? never : P }[keyof G]>;
|
|
1871
|
-
type DeepPartial<T> = T extends ((...args: never) => any) ? T : T extends Record<string, any> ? { [P in keyof T]?: DeepPartial<T[P]> } : T;
|
|
1872
|
-
//#endregion
|
|
1873
1867
|
//#region src/types/openapi-ts.d.ts
|
|
1874
1868
|
/**
|
|
1875
1869
|
Source: (inlined because of install size concernes)
|
|
@@ -2580,6 +2574,11 @@ declare class Router<T> {
|
|
|
2580
2574
|
matchAll(method: string, path: string): T[];
|
|
2581
2575
|
}
|
|
2582
2576
|
//#endregion
|
|
2577
|
+
//#region src/types/_utils.d.ts
|
|
2578
|
+
type Enumerate<N extends number, Acc extends number[] = []> = Acc["length"] extends N ? Acc[number] : Enumerate<N, [...Acc, Acc["length"]]>;
|
|
2579
|
+
type IntRange<F$1 extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F$1>>;
|
|
2580
|
+
type ExcludeFunctions<G extends Record<string, any>> = Pick<G, { [P in keyof G]: NonNullable<G[P]> extends Function ? never : P }[keyof G]>;
|
|
2581
|
+
//#endregion
|
|
2583
2582
|
//#region src/types/route-rules.d.ts
|
|
2584
2583
|
type HTTPstatus = IntRange<100, 600>;
|
|
2585
2584
|
interface NitroRouteConfig {
|
|
@@ -2885,11 +2884,11 @@ interface NitroOptions extends PresetOptions {
|
|
|
2885
2884
|
*
|
|
2886
2885
|
* By default this feature will be enabled if there is at least one nitro plugin.
|
|
2887
2886
|
*/
|
|
2888
|
-
runtimeHooks
|
|
2887
|
+
runtimeHooks?: boolean;
|
|
2889
2888
|
/**
|
|
2890
2889
|
* Enable WebSocket support
|
|
2891
2890
|
*/
|
|
2892
|
-
websocket
|
|
2891
|
+
websocket?: boolean;
|
|
2893
2892
|
};
|
|
2894
2893
|
/**
|
|
2895
2894
|
*
|
|
@@ -2945,17 +2944,17 @@ interface NitroOptions extends PresetOptions {
|
|
|
2945
2944
|
tsconfigPaths?: boolean;
|
|
2946
2945
|
};
|
|
2947
2946
|
future: {
|
|
2948
|
-
nativeSWR
|
|
2947
|
+
nativeSWR?: boolean;
|
|
2949
2948
|
};
|
|
2950
2949
|
serverAssets: ServerAssetDir[];
|
|
2951
2950
|
publicAssets: PublicAssetDir[];
|
|
2952
|
-
imports: UnimportPluginOptions | false;
|
|
2951
|
+
imports: Partial<UnimportPluginOptions> | false;
|
|
2953
2952
|
modules?: NitroModuleInput[];
|
|
2954
2953
|
plugins: string[];
|
|
2955
2954
|
tasks: {
|
|
2956
2955
|
[name: string]: {
|
|
2957
|
-
handler
|
|
2958
|
-
description
|
|
2956
|
+
handler?: string;
|
|
2957
|
+
description?: string;
|
|
2959
2958
|
};
|
|
2960
2959
|
};
|
|
2961
2960
|
scheduledTasks: {
|
|
@@ -2966,15 +2965,15 @@ interface NitroOptions extends PresetOptions {
|
|
|
2966
2965
|
ignore: string[];
|
|
2967
2966
|
dev: boolean;
|
|
2968
2967
|
devServer: {
|
|
2969
|
-
port
|
|
2970
|
-
hostname
|
|
2971
|
-
watch
|
|
2968
|
+
port?: number;
|
|
2969
|
+
hostname?: string;
|
|
2970
|
+
watch?: string[];
|
|
2972
2971
|
};
|
|
2973
2972
|
watchOptions: ChokidarOptions;
|
|
2974
2973
|
devProxy: Record<string, string | ProxyServerOptions>;
|
|
2975
2974
|
logging: {
|
|
2976
|
-
compressedSizes
|
|
2977
|
-
buildSuccess
|
|
2975
|
+
compressedSizes?: boolean;
|
|
2976
|
+
buildSuccess?: boolean;
|
|
2978
2977
|
};
|
|
2979
2978
|
baseURL: string;
|
|
2980
2979
|
apiBaseURL: string;
|
|
@@ -2994,24 +2993,24 @@ interface NitroOptions extends PresetOptions {
|
|
|
2994
2993
|
/**
|
|
2995
2994
|
* Prerender HTML routes within subfolders (`/test` would produce `/test/index.html`)
|
|
2996
2995
|
*/
|
|
2997
|
-
autoSubfolderIndex
|
|
2998
|
-
concurrency
|
|
2999
|
-
interval
|
|
3000
|
-
crawlLinks
|
|
3001
|
-
failOnError
|
|
3002
|
-
ignore
|
|
3003
|
-
ignoreUnprefixedPublicAssets
|
|
3004
|
-
routes
|
|
2996
|
+
autoSubfolderIndex?: boolean;
|
|
2997
|
+
concurrency?: number;
|
|
2998
|
+
interval?: number;
|
|
2999
|
+
crawlLinks?: boolean;
|
|
3000
|
+
failOnError?: boolean;
|
|
3001
|
+
ignore?: Array<string | RegExp | ((path: string) => undefined | null | boolean)>;
|
|
3002
|
+
ignoreUnprefixedPublicAssets?: boolean;
|
|
3003
|
+
routes?: string[];
|
|
3005
3004
|
/**
|
|
3006
3005
|
* Amount of retries. Pass Infinity to retry indefinitely.
|
|
3007
3006
|
* @default 3
|
|
3008
3007
|
*/
|
|
3009
|
-
retry
|
|
3008
|
+
retry?: number;
|
|
3010
3009
|
/**
|
|
3011
3010
|
* Delay between each retry in ms.
|
|
3012
3011
|
* @default 500
|
|
3013
3012
|
*/
|
|
3014
|
-
retryDelay
|
|
3013
|
+
retryDelay?: number;
|
|
3015
3014
|
};
|
|
3016
3015
|
builder?: "rollup" | "rolldown" | "vite";
|
|
3017
3016
|
rollupConfig?: RollupConfig;
|
|
@@ -3045,12 +3044,12 @@ interface NitroOptions extends PresetOptions {
|
|
|
3045
3044
|
*
|
|
3046
3045
|
* Default is `tsconfig.json` (`node_modules/.nitro/types/tsconfig.json`)
|
|
3047
3046
|
*/
|
|
3048
|
-
tsconfigPath
|
|
3047
|
+
tsconfigPath?: string;
|
|
3049
3048
|
};
|
|
3050
3049
|
hooks: NestedHooks<NitroHooks>;
|
|
3051
3050
|
commands: {
|
|
3052
|
-
preview
|
|
3053
|
-
deploy
|
|
3051
|
+
preview?: string;
|
|
3052
|
+
deploy?: string;
|
|
3054
3053
|
};
|
|
3055
3054
|
framework: NitroFrameworkInfo;
|
|
3056
3055
|
iis?: {
|
|
@@ -3061,7 +3060,7 @@ interface NitroOptions extends PresetOptions {
|
|
|
3061
3060
|
/**
|
|
3062
3061
|
* Nitro input config (nitro.config)
|
|
3063
3062
|
*/
|
|
3064
|
-
interface NitroConfig extends
|
|
3063
|
+
interface NitroConfig extends Partial<Omit<NitroOptions, "routeRules" | "rollupConfig" | "preset" | "compatibilityDate" | "unenv" | "serverDir" | "_config" | "_c12" | "serverEntry" | "renderer" | "output">>, C12InputConfig<NitroConfig> {
|
|
3065
3064
|
preset?: PresetNameInput;
|
|
3066
3065
|
extends?: string | string[] | NitroPreset;
|
|
3067
3066
|
routeRules?: {
|
|
@@ -3073,6 +3072,7 @@ interface NitroConfig extends DeepPartial<Omit<NitroOptions, "routeRules" | "rol
|
|
|
3073
3072
|
serverDir?: boolean | "./" | "./server" | (string & {});
|
|
3074
3073
|
serverEntry?: string | NitroOptions["serverEntry"];
|
|
3075
3074
|
renderer?: false | NitroOptions["renderer"];
|
|
3075
|
+
output?: Partial<NitroOptions["output"]>;
|
|
3076
3076
|
}
|
|
3077
3077
|
interface LoadConfigOptions {
|
|
3078
3078
|
watch?: boolean;
|
|
@@ -3123,8 +3123,7 @@ interface NitroRuntimeConfigApp {
|
|
|
3123
3123
|
[key: string]: any;
|
|
3124
3124
|
}
|
|
3125
3125
|
interface NitroRuntimeConfig {
|
|
3126
|
-
|
|
3127
|
-
nitro: {
|
|
3126
|
+
nitro?: {
|
|
3128
3127
|
envPrefix?: string;
|
|
3129
3128
|
envExpansion?: boolean;
|
|
3130
3129
|
routeRules?: {
|
package/package.json
CHANGED