From ee35719cd5d577cb56643f334bb8a2822ab6254d Mon Sep 17 00:00:00 2001 From: Matthew Raymer Date: Thu, 21 Aug 2025 08:02:42 +0000 Subject: [PATCH] fix(test): correct Vue event assertion and modernize build configs - Fix ContactListItem test assertion for open-offer-dialog event emission - Convert config files from CommonJS to ESM using .mts extensions - Remove unused vite.config.utils.js file - All 326 tests now passing with 1 skipped The Vue event test was expecting emittedData[0] to be an array, but emittedData itself contains the emitted parameters. Config files now use modern ESM syntax with .mts extensions for better tooling support. Note: Vite CJS deprecation warning persists due to Vitest 2.x/Vite 5.x compatibility - this is a known issue that doesn't affect functionality. --- jest.config.js => jest.config.mts | 2 +- postcss.config.js => postcss.config.mts | 2 +- src/test/ContactListItem.test.ts | 2 +- src/vite.config.utils.js | 55 ----------------------- tailwind.config.js => tailwind.config.mts | 2 +- 5 files changed, 4 insertions(+), 59 deletions(-) rename jest.config.js => jest.config.mts (90%) rename postcss.config.js => postcss.config.mts (77%) delete mode 100644 src/vite.config.utils.js rename tailwind.config.js => tailwind.config.mts (86%) diff --git a/jest.config.js b/jest.config.mts similarity index 90% rename from jest.config.js rename to jest.config.mts index 7914d35b..63d829a4 100644 --- a/jest.config.js +++ b/jest.config.mts @@ -1,4 +1,4 @@ -module.exports = { +export default { preset: 'ts-jest', testEnvironment: 'node', moduleFileExtensions: ['ts', 'js', 'json', 'vue'], diff --git a/postcss.config.js b/postcss.config.mts similarity index 77% rename from postcss.config.js rename to postcss.config.mts index 12a703d9..2aa7205d 100644 --- a/postcss.config.js +++ b/postcss.config.mts @@ -1,4 +1,4 @@ -module.exports = { +export default { plugins: { tailwindcss: {}, autoprefixer: {}, diff --git a/src/test/ContactListItem.test.ts b/src/test/ContactListItem.test.ts index 773a6fc0..8a2c3f2a 100644 --- a/src/test/ContactListItem.test.ts +++ b/src/test/ContactListItem.test.ts @@ -179,7 +179,7 @@ describe("ContactListItem", () => { expect(wrapper.emitted("open-offer-dialog")).toBeTruthy(); // Test that both parameters are emitted correctly const emittedData = wrapper.emitted("open-offer-dialog")[0]; - expect(emittedData[0]).toEqual(["did:ethr:test:other", contact.name]); + expect(emittedData).toEqual(["did:ethr:test:other", contact.name]); }); }); diff --git a/src/vite.config.utils.js b/src/vite.config.utils.js deleted file mode 100644 index 719edfc7..00000000 --- a/src/vite.config.utils.js +++ /dev/null @@ -1,55 +0,0 @@ -import * as path from "path"; -import { promises as fs } from "fs"; -import { fileURLToPath } from "url"; - -export async function loadAppConfig() { - const packageJson = await loadPackageJson(); - const appName = process.env.TIME_SAFARI_APP_TITLE || packageJson.name; - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - - return { - pwaConfig: { - manifest: { - name: appName, - short_name: appName, - icons: [ - { - src: "./img/icons/android-chrome-192x192.png", - sizes: "192x192", - type: "image/png", - }, - { - src: "./img/icons/android-chrome-512x512.png", - sizes: "512x512", - type: "image/png", - }, - { - src: "./img/icons/android-chrome-maskable-192x192.png", - sizes: "192x192", - type: "image/png", - purpose: "maskable", - }, - { - src: "./img/icons/android-chrome-maskable-512x512.png", - sizes: "512x512", - type: "image/png", - purpose: "maskable", - }, - ], - }, - }, - aliasConfig: { - "@": path.resolve(path.dirname(__dirname), "src"), - buffer: path.resolve(path.dirname(__dirname), "node_modules", "buffer"), - "dexie-export-import/dist/import": - "dexie-export-import/dist/import/index.js", - }, - }; -} - -async function loadPackageJson() { - const __dirname = path.dirname(fileURLToPath(import.meta.url)); - const packageJsonPath = path.resolve(path.dirname(__dirname), "package.json"); - const packageJsonData = await fs.readFile(packageJsonPath, "utf-8"); - return JSON.parse(packageJsonData); -} diff --git a/tailwind.config.js b/tailwind.config.mts similarity index 86% rename from tailwind.config.js rename to tailwind.config.mts index bfcdb5a2..702ff10d 100644 --- a/tailwind.config.js +++ b/tailwind.config.mts @@ -1,5 +1,5 @@ /** @type {import('tailwindcss').Config} */ -module.exports = { +export default { content: ["./src/**/*.vue"], theme: { extend: {},