@veloxts/auth 0.3.3 → 0.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +1157 -30
  2. package/dist/__integration__/fixtures.d.ts +41 -0
  3. package/dist/__integration__/fixtures.d.ts.map +1 -0
  4. package/dist/__integration__/fixtures.js +79 -0
  5. package/dist/__integration__/fixtures.js.map +1 -0
  6. package/dist/__integration__/setup.d.ts +26 -0
  7. package/dist/__integration__/setup.d.ts.map +1 -0
  8. package/dist/__integration__/setup.js +28 -0
  9. package/dist/__integration__/setup.js.map +1 -0
  10. package/dist/adapter.d.ts +710 -0
  11. package/dist/adapter.d.ts.map +1 -0
  12. package/dist/adapter.js +581 -0
  13. package/dist/adapter.js.map +1 -0
  14. package/dist/adapters/better-auth.d.ts +271 -0
  15. package/dist/adapters/better-auth.d.ts.map +1 -0
  16. package/dist/adapters/better-auth.js +341 -0
  17. package/dist/adapters/better-auth.js.map +1 -0
  18. package/dist/adapters/index.d.ts +28 -0
  19. package/dist/adapters/index.d.ts.map +1 -0
  20. package/dist/adapters/index.js +28 -0
  21. package/dist/adapters/index.js.map +1 -0
  22. package/dist/csrf.d.ts +300 -0
  23. package/dist/csrf.d.ts.map +1 -0
  24. package/dist/csrf.js +402 -0
  25. package/dist/csrf.js.map +1 -0
  26. package/dist/guards.d.ts +142 -0
  27. package/dist/guards.d.ts.map +1 -0
  28. package/dist/guards.js +259 -0
  29. package/dist/guards.js.map +1 -0
  30. package/dist/hash.d.ts +91 -0
  31. package/dist/hash.d.ts.map +1 -0
  32. package/dist/hash.js +236 -0
  33. package/dist/hash.js.map +1 -0
  34. package/dist/index.d.ts +27 -32
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +94 -36
  37. package/dist/index.js.map +1 -1
  38. package/dist/jwt.d.ts +157 -0
  39. package/dist/jwt.d.ts.map +1 -0
  40. package/dist/jwt.js +489 -0
  41. package/dist/jwt.js.map +1 -0
  42. package/dist/middleware.d.ts +99 -0
  43. package/dist/middleware.d.ts.map +1 -0
  44. package/dist/middleware.js +253 -0
  45. package/dist/middleware.js.map +1 -0
  46. package/dist/plugin.d.ts +125 -0
  47. package/dist/plugin.d.ts.map +1 -0
  48. package/dist/plugin.js +193 -0
  49. package/dist/plugin.js.map +1 -0
  50. package/dist/policies.d.ts +137 -0
  51. package/dist/policies.d.ts.map +1 -0
  52. package/dist/policies.js +240 -0
  53. package/dist/policies.js.map +1 -0
  54. package/dist/rate-limit.d.ts +231 -0
  55. package/dist/rate-limit.d.ts.map +1 -0
  56. package/dist/rate-limit.js +352 -0
  57. package/dist/rate-limit.js.map +1 -0
  58. package/dist/session.d.ts +500 -0
  59. package/dist/session.d.ts.map +1 -0
  60. package/dist/session.js +801 -0
  61. package/dist/session.js.map +1 -0
  62. package/dist/types.d.ts +261 -0
  63. package/dist/types.d.ts.map +1 -0
  64. package/dist/types.js +33 -0
  65. package/dist/types.js.map +1 -0
  66. package/package.json +61 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Type definitions for @veloxts/auth
3
+ * @module auth/types
4
+ */
5
+ import type { FastifyReply, FastifyRequest } from 'fastify';
6
+ /**
7
+ * Authentication/Authorization error class
8
+ *
9
+ * Provides structured error information with HTTP status code and error code.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * throw new AuthError('Token has expired', 401);
14
+ * throw new AuthError('Access denied', 403, 'FORBIDDEN');
15
+ * ```
16
+ */
17
+ export declare class AuthError extends Error {
18
+ /** HTTP status code for the error response */
19
+ readonly statusCode: number;
20
+ /** Error code for programmatic error handling */
21
+ readonly code: string;
22
+ constructor(message: string, statusCode: number, code?: string);
23
+ }
24
+ /**
25
+ * Base user interface for authenticated requests
26
+ *
27
+ * Applications should extend this via declaration merging:
28
+ * @example
29
+ * ```typescript
30
+ * declare module '@veloxts/auth' {
31
+ * interface User {
32
+ * roles: ('admin' | 'user')[];
33
+ * permissions: string[];
34
+ * }
35
+ * }
36
+ * ```
37
+ */
38
+ export interface User {
39
+ id: string;
40
+ email: string;
41
+ /** User roles for authorization */
42
+ roles?: string[];
43
+ /** User permissions for fine-grained access control */
44
+ permissions?: string[];
45
+ [key: string]: unknown;
46
+ }
47
+ /**
48
+ * Payload stored in JWT tokens
49
+ */
50
+ export interface TokenPayload {
51
+ /** User ID */
52
+ sub: string;
53
+ /** User email */
54
+ email: string;
55
+ /** Token type */
56
+ type: 'access' | 'refresh';
57
+ /** Issued at timestamp */
58
+ iat: number;
59
+ /** Expiration timestamp */
60
+ exp: number;
61
+ /** Token ID (for revocation) */
62
+ jti?: string;
63
+ /** Token issuer */
64
+ iss?: string;
65
+ /** Token audience */
66
+ aud?: string;
67
+ /** Not before timestamp - token is invalid before this time */
68
+ nbf?: number;
69
+ /** Additional claims */
70
+ [key: string]: unknown;
71
+ }
72
+ /**
73
+ * Token pair returned after authentication
74
+ */
75
+ export interface TokenPair {
76
+ /** Short-lived access token */
77
+ accessToken: string;
78
+ /** Long-lived refresh token */
79
+ refreshToken: string;
80
+ /** Access token expiration in seconds */
81
+ expiresIn: number;
82
+ /** Token type (always 'Bearer') */
83
+ tokenType: 'Bearer';
84
+ }
85
+ /**
86
+ * JWT configuration options
87
+ */
88
+ export interface JwtConfig {
89
+ /** Secret key for signing tokens (required) */
90
+ secret: string;
91
+ /**
92
+ * Separate secret for signing refresh tokens (optional)
93
+ * If not provided, the main `secret` will be used for both token types.
94
+ * Using a separate secret adds an extra layer of security.
95
+ */
96
+ refreshSecret?: string;
97
+ /** Access token expiration (default: '15m') */
98
+ accessTokenExpiry?: string;
99
+ /** Refresh token expiration (default: '7d') */
100
+ refreshTokenExpiry?: string;
101
+ /** Token issuer (optional) */
102
+ issuer?: string;
103
+ /** Token audience (optional) */
104
+ audience?: string;
105
+ }
106
+ /**
107
+ * Password hashing configuration
108
+ */
109
+ export interface HashConfig {
110
+ /** Hashing algorithm: 'bcrypt' or 'argon2' (default: 'bcrypt') */
111
+ algorithm?: 'bcrypt' | 'argon2';
112
+ /** bcrypt rounds (default: 12) */
113
+ bcryptRounds?: number;
114
+ /** argon2 memory cost in KB (default: 65536) */
115
+ argon2MemoryCost?: number;
116
+ /** argon2 time cost (default: 3) */
117
+ argon2TimeCost?: number;
118
+ /** argon2 parallelism (default: 4) */
119
+ argon2Parallelism?: number;
120
+ }
121
+ /**
122
+ * Legacy session cookie configuration (used by AuthConfig)
123
+ *
124
+ * @deprecated Use SessionConfig from session.ts for full session management
125
+ */
126
+ export interface LegacySessionConfig {
127
+ /** Cookie name (default: 'velox.session') */
128
+ cookieName?: string;
129
+ /** Session expiration in seconds (default: 86400 = 24h) */
130
+ maxAge?: number;
131
+ /** Cookie path (default: '/') */
132
+ path?: string;
133
+ /** HTTP only flag (default: true) */
134
+ httpOnly?: boolean;
135
+ /** Secure flag - use HTTPS only (default: true in production) */
136
+ secure?: boolean;
137
+ /** SameSite policy (default: 'lax') */
138
+ sameSite?: 'strict' | 'lax' | 'none';
139
+ }
140
+ /**
141
+ * Rate limiting configuration
142
+ */
143
+ export interface RateLimitConfig {
144
+ /** Maximum requests per window (default: 100) */
145
+ max?: number;
146
+ /** Time window in milliseconds (default: 60000 = 1 minute) */
147
+ windowMs?: number;
148
+ /** Key generator function (default: IP-based) */
149
+ keyGenerator?: (request: FastifyRequest) => string;
150
+ /** Skip function - return true to bypass rate limiting */
151
+ skip?: (request: FastifyRequest) => boolean;
152
+ /** Custom error message */
153
+ message?: string;
154
+ }
155
+ /**
156
+ * Main auth plugin configuration
157
+ */
158
+ export interface AuthConfig {
159
+ /** JWT configuration (required) */
160
+ jwt: JwtConfig;
161
+ /** Password hashing configuration */
162
+ hash?: HashConfig;
163
+ /**
164
+ * Legacy session cookie configuration
165
+ * @deprecated Use createSessionMiddleware from session.ts for full session management
166
+ */
167
+ session?: LegacySessionConfig;
168
+ /** Rate limiting configuration */
169
+ rateLimit?: RateLimitConfig;
170
+ /**
171
+ * User loader function - fetches user from database by ID
172
+ * Called on every authenticated request to populate ctx.user
173
+ */
174
+ userLoader?: (userId: string) => Promise<User | null>;
175
+ /**
176
+ * Token blacklist checker - check if token is revoked
177
+ * Called on every authenticated request
178
+ */
179
+ isTokenRevoked?: (tokenId: string) => Promise<boolean>;
180
+ /**
181
+ * Automatically extract auth context from Authorization header
182
+ * Sets request.auth and request.user on every request
183
+ * @default true
184
+ */
185
+ autoExtract?: boolean;
186
+ }
187
+ /**
188
+ * Guard function type
189
+ * Returns true if access is allowed, false otherwise
190
+ */
191
+ export type GuardFunction<TContext = unknown> = (ctx: TContext, request: FastifyRequest, reply: FastifyReply) => boolean | Promise<boolean>;
192
+ /**
193
+ * Named guard configuration
194
+ */
195
+ export interface GuardDefinition<TContext = unknown> {
196
+ /** Guard name for error messages */
197
+ name: string;
198
+ /** Guard check function */
199
+ check: GuardFunction<TContext>;
200
+ /** Custom error message (optional) */
201
+ message?: string;
202
+ /** HTTP status code on failure (default: 403) */
203
+ statusCode?: number;
204
+ }
205
+ /**
206
+ * Policy action handler
207
+ * Returns true if user can perform action on resource
208
+ */
209
+ export type PolicyAction<TUser = User, TResource = unknown> = (user: TUser, resource: TResource) => boolean | Promise<boolean>;
210
+ /**
211
+ * Policy definition with named actions
212
+ */
213
+ export interface PolicyDefinition<TUser = User, TResource = unknown> {
214
+ /** View action - can user read this resource? */
215
+ view?: PolicyAction<TUser, TResource>;
216
+ /** Create action - can user create this resource? */
217
+ create?: PolicyAction<TUser, TResource>;
218
+ /** Update action - can user modify this resource? */
219
+ update?: PolicyAction<TUser, TResource>;
220
+ /** Delete action - can user remove this resource? */
221
+ delete?: PolicyAction<TUser, TResource>;
222
+ /** Custom actions */
223
+ [action: string]: PolicyAction<TUser, TResource> | undefined;
224
+ }
225
+ /**
226
+ * Auth middleware options
227
+ */
228
+ export interface AuthMiddlewareOptions {
229
+ /** Allow unauthenticated requests (default: false) */
230
+ optional?: boolean;
231
+ /** Guards to apply after authentication */
232
+ guards?: Array<GuardDefinition | string>;
233
+ }
234
+ /**
235
+ * Authenticated request context extension
236
+ */
237
+ export interface AuthContext {
238
+ /** Authenticated user (undefined if optional auth and no token) */
239
+ user?: User;
240
+ /** Decoded token payload */
241
+ token?: TokenPayload;
242
+ /** Check if user is authenticated */
243
+ isAuthenticated: boolean;
244
+ }
245
+ declare module '@veloxts/core' {
246
+ interface BaseContext {
247
+ /** Auth context - available when auth middleware is used */
248
+ auth?: AuthContext;
249
+ /** Shortcut to authenticated user */
250
+ user?: User;
251
+ }
252
+ }
253
+ declare module 'fastify' {
254
+ interface FastifyRequest {
255
+ /** Auth context on request */
256
+ auth?: AuthContext;
257
+ /** Shortcut to authenticated user */
258
+ user?: User;
259
+ }
260
+ }
261
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Type definitions for @veloxts/auth
3
+ * @module auth/types
4
+ */
5
+ // ============================================================================
6
+ // Error Types
7
+ // ============================================================================
8
+ /**
9
+ * Authentication/Authorization error class
10
+ *
11
+ * Provides structured error information with HTTP status code and error code.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * throw new AuthError('Token has expired', 401);
16
+ * throw new AuthError('Access denied', 403, 'FORBIDDEN');
17
+ * ```
18
+ */
19
+ export class AuthError extends Error {
20
+ /** HTTP status code for the error response */
21
+ statusCode;
22
+ /** Error code for programmatic error handling */
23
+ code;
24
+ constructor(message, statusCode, code = 'AUTH_ERROR') {
25
+ super(message);
26
+ this.name = 'AuthError';
27
+ this.statusCode = statusCode;
28
+ this.code = code;
29
+ // Maintains proper stack trace for where error was thrown
30
+ Error.captureStackTrace?.(this, AuthError);
31
+ }
32
+ }
33
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,OAAO,SAAU,SAAQ,KAAK;IAClC,8CAA8C;IACrC,UAAU,CAAS;IAE5B,iDAAiD;IACxC,IAAI,CAAS;IAEtB,YAAY,OAAe,EAAE,UAAkB,EAAE,IAAI,GAAG,YAAY;QAClE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,0DAA0D;QAC1D,KAAK,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC7C,CAAC;CACF"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@veloxts/auth",
3
- "version": "0.3.3",
4
- "description": "Authentication and authorization system for VeloxTS framework (v1.1+)",
3
+ "version": "0.3.5",
4
+ "description": "Authentication and authorization system for VeloxTS framework",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -9,25 +9,75 @@
9
9
  ".": {
10
10
  "types": "./dist/index.d.ts",
11
11
  "import": "./dist/index.js"
12
+ },
13
+ "./adapters": {
14
+ "types": "./dist/adapters/index.d.ts",
15
+ "import": "./dist/adapters/index.js"
16
+ },
17
+ "./adapters/better-auth": {
18
+ "types": "./dist/adapters/better-auth.d.ts",
19
+ "import": "./dist/adapters/better-auth.js"
12
20
  }
13
21
  },
14
22
  "files": [
15
23
  "dist",
16
24
  "README.md"
17
25
  ],
26
+ "tsd": {
27
+ "directory": "src/__type-tests__",
28
+ "compilerOptions": {
29
+ "paths": {
30
+ "@veloxts/core": [
31
+ "../core/dist"
32
+ ],
33
+ "@veloxts/router": [
34
+ "../router/dist"
35
+ ],
36
+ "@veloxts/auth": [
37
+ "dist"
38
+ ]
39
+ }
40
+ }
41
+ },
18
42
  "dependencies": {
19
- "@veloxts/core": "0.3.3",
20
- "@veloxts/router": "0.3.3",
21
- "@veloxts/orm": "0.3.3"
43
+ "@fastify/cookie": "11.0.2",
44
+ "fastify": "5.6.2",
45
+ "@veloxts/core": "0.3.5",
46
+ "@veloxts/router": "0.3.5"
47
+ },
48
+ "peerDependencies": {
49
+ "argon2": ">=0.30.0",
50
+ "bcrypt": ">=5.0.0",
51
+ "better-auth": ">=1.0.0"
52
+ },
53
+ "peerDependenciesMeta": {
54
+ "bcrypt": {
55
+ "optional": true
56
+ },
57
+ "argon2": {
58
+ "optional": true
59
+ },
60
+ "better-auth": {
61
+ "optional": true
62
+ }
22
63
  },
23
64
  "devDependencies": {
24
- "typescript": "5.9.3"
65
+ "@types/bcrypt": "6.0.0",
66
+ "@vitest/coverage-v8": "4.0.15",
67
+ "fastify-plugin": "5.1.0",
68
+ "typescript": "5.9.3",
69
+ "vitest": "4.0.15",
70
+ "@veloxts/testing": "0.0.1",
71
+ "@veloxts/validation": "0.3.5"
25
72
  },
26
73
  "keywords": [
27
74
  "velox",
28
75
  "auth",
29
76
  "authentication",
30
77
  "authorization",
78
+ "jwt",
79
+ "guards",
80
+ "policies",
31
81
  "typescript"
32
82
  ],
33
83
  "license": "MIT",
@@ -46,6 +96,10 @@
46
96
  "build": "tsc",
47
97
  "dev": "tsc --watch",
48
98
  "type-check": "tsc --noEmit",
49
- "clean": "rm -rf dist tsconfig.tsbuildinfo"
99
+ "test:types": "tsd",
100
+ "clean": "rm -rf dist tsconfig.tsbuildinfo",
101
+ "test": "vitest run",
102
+ "test:watch": "vitest",
103
+ "test:coverage": "vitest run --coverage"
50
104
  }
51
105
  }