From 9aef0dd0b8ff33ab8dc3bb1e05104a718bab0473 Mon Sep 17 00:00:00 2001 From: AndyMik90 Date: Mon, 29 Dec 2025 21:54:52 +0100 Subject: [PATCH] fix(frontend): add .js extension to electron-log/main imports Node.js ESM module resolution requires explicit file extensions for package subpath imports. Since electron-log is externalized in the vite config, it's resolved at runtime where ESM rules apply. This fixes the ERR_MODULE_NOT_FOUND error when running dev mode. --- apps/frontend/src/main/__tests__/app-logger.test.ts | 4 ++-- apps/frontend/src/main/__tests__/ipc-handlers.test.ts | 2 +- apps/frontend/src/main/app-logger.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/apps/frontend/src/main/__tests__/app-logger.test.ts b/apps/frontend/src/main/__tests__/app-logger.test.ts index f3adc6e5..bae153e6 100644 --- a/apps/frontend/src/main/__tests__/app-logger.test.ts +++ b/apps/frontend/src/main/__tests__/app-logger.test.ts @@ -18,7 +18,7 @@ const mockGetFile = vi.fn(); const mockGetPath = vi.fn(); // Mock electron-log before importing -vi.mock('electron-log/main', () => ({ +vi.mock('electron-log/main.js', () => ({ default: { initialize: vi.fn(), transports: { @@ -433,7 +433,7 @@ describe('Application Logger', () => { describe('Beta version detection', () => { it('should detect beta version from app version', async () => { // The mock returns '2.7.2-beta.10' which should be detected as beta - const electronLog = await import('electron-log/main'); + const electronLog = await import('electron-log/main.js'); // Beta version should set file level to debug // This is tested implicitly by the mock setup diff --git a/apps/frontend/src/main/__tests__/ipc-handlers.test.ts b/apps/frontend/src/main/__tests__/ipc-handlers.test.ts index 7f6fa079..86699e5c 100644 --- a/apps/frontend/src/main/__tests__/ipc-handlers.test.ts +++ b/apps/frontend/src/main/__tests__/ipc-handlers.test.ts @@ -57,7 +57,7 @@ vi.mock('../notification-service', () => ({ })); // Mock electron-log to prevent Electron binary dependency -vi.mock('electron-log/main', () => ({ +vi.mock('electron-log/main.js', () => ({ default: { initialize: vi.fn(), transports: { diff --git a/apps/frontend/src/main/app-logger.ts b/apps/frontend/src/main/app-logger.ts index ffe72b54..07429c19 100644 --- a/apps/frontend/src/main/app-logger.ts +++ b/apps/frontend/src/main/app-logger.ts @@ -14,7 +14,7 @@ * - Beta version detection for enhanced logging */ -import log from 'electron-log/main'; +import log from 'electron-log/main.js'; import { app } from 'electron'; import { existsSync, readdirSync, statSync, readFileSync } from 'fs'; import { join, dirname } from 'path';