diff --git a/server/package.json b/server/package.json index 08151d2..1324078 100644 --- a/server/package.json +++ b/server/package.json @@ -1,7 +1,7 @@ { "name": "labwise-server", "version": "1.0.0", - "type": "commonjs", + "type": "module", "scripts": { "dev": "tsx watch src/index.ts", "build": "tsc", diff --git a/server/src/auth/auth.ts b/server/src/auth/auth.ts index db13ba7..3e9204b 100644 --- a/server/src/auth/auth.ts +++ b/server/src/auth/auth.ts @@ -3,7 +3,7 @@ import { hash as argon2Hash, verify as argon2Verify } from '@node-rs/argon2'; import { kyselyAdapter } from '@better-auth/kysely-adapter'; import { Kysely, PostgresDialect } from 'kysely'; import { Pool } from 'pg'; -import { sendEmail, verificationEmailHtml, resetPasswordEmailHtml } from './email'; +import { sendEmail, verificationEmailHtml, resetPasswordEmailHtml } from './email.js'; const db = new Kysely({ dialect: new PostgresDialect({ diff --git a/server/src/auth/email.ts b/server/src/auth/email.ts index c68aaf4..e19d2c9 100644 --- a/server/src/auth/email.ts +++ b/server/src/auth/email.ts @@ -1,7 +1,7 @@ import FormData from 'form-data'; import Mailgun from 'mailgun.js'; -const mailgun = new Mailgun(FormData); +const mailgun = new (Mailgun as any)(FormData); const mg = mailgun.client({ username: 'api', key: process.env.MAILGUN_API_KEY || '', diff --git a/server/src/auth/middleware.ts b/server/src/auth/middleware.ts index c121915..f827c2c 100644 --- a/server/src/auth/middleware.ts +++ b/server/src/auth/middleware.ts @@ -1,5 +1,5 @@ import { Request, Response, NextFunction } from 'express'; -import { auth } from './auth'; +import { auth } from './auth.js'; import { fromNodeHeaders } from 'better-auth/node'; declare global { diff --git a/server/src/db/migrate.ts b/server/src/db/migrate.ts index acb08e3..c9d3194 100644 --- a/server/src/db/migrate.ts +++ b/server/src/db/migrate.ts @@ -1,6 +1,9 @@ -import { pool } from './pool'; +import { pool } from './pool.js'; import fs from 'fs'; import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); async function migrate() { const sql = fs.readFileSync(path.join(__dirname, 'schema.sql'), 'utf-8'); diff --git a/server/src/index.ts b/server/src/index.ts index e93bd63..47853ee 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -2,12 +2,15 @@ import 'dotenv/config'; import express from 'express'; import cors from 'cors'; import { toNodeHandler } from 'better-auth/node'; -import { auth } from './auth/auth'; -import { authRateLimiter, apiRateLimiter } from './auth/rateLimiter'; -import chemicalsRouter from './routes/chemicals'; -import protocolsRouter from './routes/protocols'; -import profileRouter from './routes/profile'; +import { auth } from './auth/auth.js'; +import { authRateLimiter, apiRateLimiter } from './auth/rateLimiter.js'; +import chemicalsRouter from './routes/chemicals.js'; +import protocolsRouter from './routes/protocols.js'; +import profileRouter from './routes/profile.js'; import path from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const app = express(); const PORT = process.env.PORT || 3001; diff --git a/server/src/routes/chemicals.ts b/server/src/routes/chemicals.ts index 9dbc58a..cbab52f 100644 --- a/server/src/routes/chemicals.ts +++ b/server/src/routes/chemicals.ts @@ -1,6 +1,6 @@ import { Router } from 'express'; -import { pool } from '../db/pool'; -import { requireAuth } from '../auth/middleware'; +import { pool } from '../db/pool.js'; +import { requireAuth } from '../auth/middleware.js'; const router = Router(); router.use(requireAuth); diff --git a/server/src/routes/profile.ts b/server/src/routes/profile.ts index a29889c..95103b9 100644 --- a/server/src/routes/profile.ts +++ b/server/src/routes/profile.ts @@ -1,6 +1,6 @@ import { Router } from 'express'; -import { requireAuth } from '../auth/middleware'; -import { pool } from '../db/pool'; +import { requireAuth } from '../auth/middleware.js'; +import { pool } from '../db/pool.js'; const router = Router(); diff --git a/server/src/routes/protocols.ts b/server/src/routes/protocols.ts index 5be8940..dd01517 100644 --- a/server/src/routes/protocols.ts +++ b/server/src/routes/protocols.ts @@ -1,9 +1,12 @@ import { Router } from 'express'; -import { pool } from '../db/pool'; -import { requireAuth } from '../auth/middleware'; +import { pool } from '../db/pool.js'; +import { requireAuth } from '../auth/middleware.js'; import multer from 'multer'; import path from 'path'; import fs from 'fs'; +import { fileURLToPath } from 'url'; + +const __dirname = path.dirname(fileURLToPath(import.meta.url)); const router = Router(); router.use(requireAuth);