From 623cab370f81638bc484d219be7f234203fd6f87 Mon Sep 17 00:00:00 2001 From: Leandro Soares Date: Tue, 13 Aug 2024 10:54:28 +0100 Subject: [PATCH] chore: add debug option --- .changeset/cool-readers-occur.md | 5 +++++ playground/nuxt.config.ts | 2 +- src/module.ts | 4 ++-- src/runtime/server/management/delete-preset.ts | 2 +- src/runtime/server/management/generate-preset.ts | 12 ++++++------ src/runtime/types/module-options.ts | 4 ++-- 6 files changed, 17 insertions(+), 12 deletions(-) create mode 100644 .changeset/cool-readers-occur.md diff --git a/.changeset/cool-readers-occur.md b/.changeset/cool-readers-occur.md new file mode 100644 index 0000000..73b30a0 --- /dev/null +++ b/.changeset/cool-readers-occur.md @@ -0,0 +1,5 @@ +--- +"nuxt-mock-server": patch +--- + +Replace `suppressAllLogs` with `debug` option diff --git a/playground/nuxt.config.ts b/playground/nuxt.config.ts index 5df8389..3222f92 100644 --- a/playground/nuxt.config.ts +++ b/playground/nuxt.config.ts @@ -48,7 +48,7 @@ export default defineNuxtConfig({ mocks: { enabled: true, auto: false, - supressAllLogs: true, + debug: true, generate: { routes: [ "/api/pages/product?slug=/product/Cheese", diff --git a/src/module.ts b/src/module.ts index 4c99ecd..3bff49f 100644 --- a/src/module.ts +++ b/src/module.ts @@ -41,7 +41,7 @@ export default defineNuxtModule({ devtools: true, preset: DEFAULT_PRESET, auto: true, - supressAllLogs: false, + debug: false, }, async setup(_options, nuxt) { const resolver = createResolver(import.meta.url); @@ -68,7 +68,7 @@ export default defineNuxtModule({ return; } - if (!options.supressAllLogs) { + if (options.debug) { logger.info(`Mock server is enabled for ${options.pathMatch}`); } diff --git a/src/runtime/server/management/delete-preset.ts b/src/runtime/server/management/delete-preset.ts index a7c9e46..9d7e5af 100644 --- a/src/runtime/server/management/delete-preset.ts +++ b/src/runtime/server/management/delete-preset.ts @@ -16,7 +16,7 @@ export async function deletePreset(event: H3Event, name: string, options: Delete throw new TypeError("Mock server is not enabled"); } - if (!event.context.preset && !mockServer.supressAllLogs) { + if (!event.context.preset) { consola.warn("[mock-server] No preset is set in the event context, maybe you forgot to use `definePresetHandler`?"); } diff --git a/src/runtime/server/management/generate-preset.ts b/src/runtime/server/management/generate-preset.ts index 214aa68..deec77f 100644 --- a/src/runtime/server/management/generate-preset.ts +++ b/src/runtime/server/management/generate-preset.ts @@ -5,7 +5,7 @@ import type { NitroApp } from "nitropack"; import { MAIN_HEADER_KEY, PRESET_GENERATION_HEADER_KEY } from "../../utils"; import { useNitroApp } from "#imports"; -async function request(localFetch: ReturnType, route: string, preset: string, isAutoMode: boolean, suppressLogs: boolean) { +async function request(localFetch: ReturnType, route: string, preset: string, isAutoMode: boolean, debug: boolean) { try { const response = await localFetch(route, { method: "GET", @@ -15,7 +15,7 @@ async function request(localFetch: ReturnType, route: s }, }); - if (!response.headers.has(MAIN_HEADER_KEY) && !suppressLogs) { + if (!response.headers.has(MAIN_HEADER_KEY) && debug) { consola.warn(isAutoMode ? `[mock-server] Route ${route} was set but not catched by \`pathMatch\` nor by any \`defineMockInterceptorHandler\`.` : `[mock-server] Route ${route} was set but not catched by an handler with \`defineMockInterceptorHandler\`.`, @@ -36,7 +36,7 @@ export const generatePreset = async ( ) => { const nitro = _nitro || useNitroApp(); - const { mockServer: { preset: DefaultPreset, generate, auto, supressAllLogs } = {} } = runtimeConfig; + const { mockServer: { preset: DefaultPreset, generate, auto, debug } = {} } = runtimeConfig; const preset = _preset || DefaultPreset; if (!generate || !generate.routes?.length) { @@ -51,18 +51,18 @@ export const generatePreset = async ( await nitro.hooks.callHook("mock-server:extendRoutes", { routes, preset }); if (generate.parallel) { - const routeCalls = await Promise.allSettled(routes.map(route => request(nitro.localFetch, route, preset, !!auto, !!supressAllLogs))); + const routeCalls = await Promise.allSettled(routes.map(route => request(nitro.localFetch, route, preset, !!auto, !!debug))); const successfullCalls = routeCalls.filter(call => call.status === "fulfilled"); const failedCalls = routeCalls.filter(call => call.status === "rejected"); - if (routeCalls.length && !supressAllLogs) { + if (routeCalls.length && debug) { consola.info(`[mock-server] Generated ${successfullCalls.length} routes${failedCalls.length ? `and failed for ${failedCalls.length} routes` : ""}`); } } else { for (const route of routes) { - await request(nitro.localFetch, route, preset, !!auto, !!supressAllLogs); + await request(nitro.localFetch, route, preset, !!auto, !!debug); } } }; diff --git a/src/runtime/types/module-options.ts b/src/runtime/types/module-options.ts index 877614d..4549899 100644 --- a/src/runtime/types/module-options.ts +++ b/src/runtime/types/module-options.ts @@ -44,11 +44,11 @@ export interface ModuleOptions { */ auto?: boolean; /** - * Suppresses all logs emitted by the module except errors. + * Enables all logs emitted by the module otherwise only errors are emitted. * * @default false */ - supressAllLogs?: boolean; + debug?: boolean; /** * If defined generates mock files on the specified routes. *