From 34b703f7eec1ab0e76decb93ed08c8b37469fcdc Mon Sep 17 00:00:00 2001 From: gbuomprisco Date: Wed, 23 Apr 2025 07:21:37 +0800 Subject: [PATCH] Refactor dev mocks to use no-op functions with debug logs Replaced undefined exports with no-op functions that log debug messages when invoked, making it clear which mocked functionality was called during development. This improves traceability and maintains clarity while keeping the development environment lightweight. --- apps/web/lib/dev-mock-modules.ts | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/apps/web/lib/dev-mock-modules.ts b/apps/web/lib/dev-mock-modules.ts index 48126cd0d..b433cce44 100644 --- a/apps/web/lib/dev-mock-modules.ts +++ b/apps/web/lib/dev-mock-modules.ts @@ -1,20 +1,35 @@ /* - Mock modules for development. +* Mock modules for development. - This file is used to mock the modules that are not needed during development (unless they are used). - It allows the development server to load faster by not loading the modules that are not needed. +This file is used to mock the modules that are not needed during development (unless they are used). +It allows the development server to load faster by not loading the modules that are not needed. */ +const noop = (name: string) => { + return () => { + console.debug( + `The function "${name}" is mocked for development because your environment variables indicate that it is not needed. + If you think this is a mistake, please open a support ticket.`, + ); + }; +}; + // Turnstile export const Turnstile = undefined; export const TurnstileProps = {}; // Baselime -export const useBaselimeRum = undefined; +export const useBaselimeRum = noop('useBaselimeRum'); export const BaselimeRum = undefined; // Sentry -export const captureException = () => ({}); -export const captureEvent = () => ({}); -export const setUser = () => ({}); -export const init = () => ({}); +export const captureException = noop('Sentry.captureException'); +export const captureEvent = noop('Sentry.captureEvent'); +export const init = noop('Sentry.init'); +export const setUser = noop('Sentry.setUser'); + +// Stripe +export const loadStripe = noop('Stripe.loadStripe'); + +// Nodemailer +export const createTransport = noop('Nodemailer.createTransport');