From b9ac1ade7839465485a3155d07eefba7c9eb487a Mon Sep 17 00:00:00 2001 From: 4gray Date: Sat, 14 Feb 2026 11:44:30 +0100 Subject: [PATCH] chore(logger): implement logger utility with debug, info, warn, and error methods --- apps/web/src/app/shared/utils/logger.ts | 32 +++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 apps/web/src/app/shared/utils/logger.ts diff --git a/apps/web/src/app/shared/utils/logger.ts b/apps/web/src/app/shared/utils/logger.ts new file mode 100644 index 000000000..8da8726a8 --- /dev/null +++ b/apps/web/src/app/shared/utils/logger.ts @@ -0,0 +1,32 @@ +import { AppConfig } from '../../../environments/environment'; + +export interface Logger { + debug: (...args: unknown[]) => void; + info: (...args: unknown[]) => void; + warn: (...args: unknown[]) => void; + error: (...args: unknown[]) => void; +} + +export function createLogger(scope: string): Logger { + const prefix = `[${scope}]`; + const debugEnabled = !AppConfig.production; + + return { + debug: (...args: unknown[]) => { + if (debugEnabled) { + console.debug(prefix, ...args); + } + }, + info: (...args: unknown[]) => { + if (debugEnabled) { + console.info(prefix, ...args); + } + }, + warn: (...args: unknown[]) => { + console.warn(prefix, ...args); + }, + error: (...args: unknown[]) => { + console.error(prefix, ...args); + }, + }; +}