From 8332eafca8a35514db754c84d51fb941ec2df459 Mon Sep 17 00:00:00 2001 From: David Dal Busco Date: Fri, 27 Mar 2026 15:11:05 +0100 Subject: [PATCH] Revert "refactor: group auth related decorators (#8)" This reverts commit b394fd24bb9acf1e2df3e75fada5e0152a857352. --- src/context.ts | 4 ++-- src/decorators/{auth => }/github.ts | 4 ++-- src/decorators/{auth => }/jwt.ts | 2 +- src/server.ts | 4 ++-- test/decorators/{auth => }/github.test.ts | 4 ++-- test/decorators/{auth => }/jwt.test.ts | 2 +- test/handlers/auth/github.ts | 2 +- test/handlers/auth/jwks.ts | 2 +- test/server.test.ts | 6 +++--- 9 files changed, 15 insertions(+), 15 deletions(-) rename src/decorators/{auth => }/github.ts (94%) rename src/decorators/{auth => }/jwt.ts (97%) rename test/decorators/{auth => }/github.test.ts (97%) rename test/decorators/{auth => }/jwt.test.ts (98%) diff --git a/src/context.ts b/src/context.ts index e0478bc..85fd481 100644 --- a/src/context.ts +++ b/src/context.ts @@ -1,6 +1,6 @@ import type { Context, RouteSchema } from 'elysia'; -import type { GitHubDecorator } from './decorators/auth/github'; -import type { JwtDecorator } from './decorators/auth/jwt'; +import type { GitHubDecorator } from './decorators/github'; +import type { JwtDecorator } from './decorators/jwt'; export type ApiContext = Context & { github: GitHubDecorator; diff --git a/src/decorators/auth/github.ts b/src/decorators/github.ts similarity index 94% rename from src/decorators/auth/github.ts rename to src/decorators/github.ts index a398281..4f6126b 100644 --- a/src/decorators/auth/github.ts +++ b/src/decorators/github.ts @@ -1,6 +1,6 @@ import { z } from 'zod'; -import { GitHubApiError } from '../../errors'; -import { assertNonNullish } from '../../utils/assert'; +import { GitHubApiError } from '../errors'; +import { assertNonNullish } from '../utils/assert'; const GitHubUserSchema = z.object({ id: z.number(), diff --git a/src/decorators/auth/jwt.ts b/src/decorators/jwt.ts similarity index 97% rename from src/decorators/auth/jwt.ts rename to src/decorators/jwt.ts index f47d41d..c1149b2 100644 --- a/src/decorators/auth/jwt.ts +++ b/src/decorators/jwt.ts @@ -7,7 +7,7 @@ import { jwtVerify, SignJWT } from 'jose'; -import { assertNonNullish } from '../../utils/assert'; +import { assertNonNullish } from '../utils/assert'; const PRIVATE_KEY_PEM_PATH = process.env.JWT_PRIVATE_KEY_PATH; const PUBLIC_KEY_PEM_PATH = process.env.JWT_PUBLIC_KEY_PATH; diff --git a/src/server.ts b/src/server.ts index 0454ed6..2506c9c 100644 --- a/src/server.ts +++ b/src/server.ts @@ -2,8 +2,8 @@ import { cors } from '@elysiajs/cors'; import { openapi } from '@elysiajs/openapi'; import { Elysia } from 'elysia'; import packageJson from '../package.json'; -import { GitHubDecorator } from './decorators/auth/github'; -import { JwtDecorator } from './decorators/auth/jwt'; +import { GitHubDecorator } from './decorators/github'; +import { JwtDecorator } from './decorators/jwt'; import { GitHubApiError, GitHubAuthUnauthorizedError, NullishError } from './errors'; import { GitHubAuthFinalizeSchema, diff --git a/test/decorators/auth/github.test.ts b/test/decorators/github.test.ts similarity index 97% rename from test/decorators/auth/github.test.ts rename to test/decorators/github.test.ts index 14add03..66e4bee 100644 --- a/test/decorators/auth/github.test.ts +++ b/test/decorators/github.test.ts @@ -1,6 +1,6 @@ import { afterEach, beforeEach, describe, expect, it, mock, spyOn } from 'bun:test'; -import { GitHubDecorator } from '../../../src/decorators/auth/github'; -import { GitHubApiError } from '../../../src/errors'; +import { GitHubDecorator } from '../../src/decorators/github'; +import { GitHubApiError } from '../../src/errors'; describe('decorators > github', () => { let github: GitHubDecorator; diff --git a/test/decorators/auth/jwt.test.ts b/test/decorators/jwt.test.ts similarity index 98% rename from test/decorators/auth/jwt.test.ts rename to test/decorators/jwt.test.ts index 0899d6a..c0e6455 100644 --- a/test/decorators/auth/jwt.test.ts +++ b/test/decorators/jwt.test.ts @@ -1,5 +1,5 @@ import { beforeAll, describe, expect, it } from 'bun:test'; -import { JwtDecorator } from '../../../src/decorators/auth/jwt'; +import { JwtDecorator } from '../../src/decorators/jwt'; describe('decorators > jwt', () => { let jwt: JwtDecorator; diff --git a/test/handlers/auth/github.ts b/test/handlers/auth/github.ts index 95c39ae..6df6ca2 100644 --- a/test/handlers/auth/github.ts +++ b/test/handlers/auth/github.ts @@ -1,6 +1,6 @@ import { afterEach, describe, expect, it, mock } from 'bun:test'; import type { ApiContext } from '../../../src/context'; -import { JwtDecorator } from '../../../src/decorators/auth/jwt'; +import { JwtDecorator } from '../../../src/decorators/jwt'; import { githubAuthInit } from '../../../src/handlers/auth/github'; describe('handlers > auth > github', () => { diff --git a/test/handlers/auth/jwks.ts b/test/handlers/auth/jwks.ts index 3210b5a..7769b29 100644 --- a/test/handlers/auth/jwks.ts +++ b/test/handlers/auth/jwks.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from 'bun:test'; import type { ApiContext } from '../../../src/context'; -import { JwtDecorator } from '../../../src/decorators/auth/jwt'; +import { JwtDecorator } from '../../../src/decorators/jwt'; import { authJwks } from '../../../src/handlers/auth/jwks'; describe('handlers > auth > jwks', () => { diff --git a/test/server.test.ts b/test/server.test.ts index 9006060..98be692 100644 --- a/test/server.test.ts +++ b/test/server.test.ts @@ -33,7 +33,7 @@ describe('server', () => { expect(data.state).toBeString(); // Verify the state JWT is valid - const { JwtDecorator } = await import('../src/decorators/auth/jwt'); + const { JwtDecorator } = await import('../src/decorators/jwt'); const jwt = new JwtDecorator(); const verified = await jwt.verify(data.state); expect(verified.valid).toBe(true); @@ -82,7 +82,7 @@ describe('server', () => { }) as typeof fetch); // Create valid state token - const { JwtDecorator } = await import('../src/decorators/auth/jwt'); + const { JwtDecorator } = await import('../src/decorators/jwt'); const jwt = new JwtDecorator(); const stateToken = await jwt.signOAuthJwt({ payload: { @@ -144,7 +144,7 @@ describe('server', () => { }); it('should return 401 on state mismatch', async () => { - const { JwtDecorator } = await import('../src/decorators/auth/jwt'); + const { JwtDecorator } = await import('../src/decorators/jwt'); const jwt = new JwtDecorator(); const stateToken = await jwt.signOAuthJwt({ payload: { provider: 'github', token: 'a'.repeat(64), nonce: 'nonce' }