sa2kit 1.6.8 → 1.6.9

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 (125) hide show
  1. package/dist/calendar/index.js +10 -8
  2. package/dist/calendar/index.js.map +1 -1
  3. package/dist/calendar/index.mjs +3 -1
  4. package/dist/calendar/index.mjs.map +1 -1
  5. package/dist/calendar/routes/index.js +21 -21
  6. package/dist/calendar/routes/index.mjs +1 -1
  7. package/dist/calendar/server.js +13 -13
  8. package/dist/calendar/server.mjs +2 -2
  9. package/dist/{chunk-VHU2YGRQ.mjs → chunk-4FOBBWXW.mjs} +25 -11
  10. package/dist/chunk-4FOBBWXW.mjs.map +1 -0
  11. package/dist/{chunk-ZDRBMSTS.js → chunk-G6WRJ2H2.js} +25 -11
  12. package/dist/chunk-G6WRJ2H2.js.map +1 -0
  13. package/dist/{chunk-6WXOA4BE.mjs → chunk-GVVS4IMM.mjs} +2 -2
  14. package/dist/chunk-GVVS4IMM.mjs.map +1 -0
  15. package/dist/{chunk-AXP7KROR.js → chunk-WC5QFO3T.js} +2 -2
  16. package/dist/chunk-WC5QFO3T.js.map +1 -0
  17. package/dist/index.js +5 -5
  18. package/dist/index.js.map +1 -1
  19. package/dist/index.mjs +2 -2
  20. package/dist/index.mjs.map +1 -1
  21. package/package.json +41 -7
  22. package/dist/ConfigService-BxK06xP6.d.mts +0 -262
  23. package/dist/ConfigService-BxK06xP6.d.ts +0 -262
  24. package/dist/UniversalFileService-BuHN-jrR.d.ts +0 -515
  25. package/dist/UniversalFileService-CGGzYeeF.d.mts +0 -515
  26. package/dist/analytics/index.d.mts +0 -1084
  27. package/dist/analytics/index.d.ts +0 -1084
  28. package/dist/analytics/server/index.d.mts +0 -499
  29. package/dist/analytics/server/index.d.ts +0 -499
  30. package/dist/api/index.d.mts +0 -248
  31. package/dist/api/index.d.ts +0 -248
  32. package/dist/audioDetection/index.d.mts +0 -449
  33. package/dist/audioDetection/index.d.ts +0 -449
  34. package/dist/auth/client/index.d.mts +0 -153
  35. package/dist/auth/client/index.d.ts +0 -153
  36. package/dist/auth/components/index.d.mts +0 -227
  37. package/dist/auth/components/index.d.ts +0 -227
  38. package/dist/auth/hooks/index.d.mts +0 -31
  39. package/dist/auth/hooks/index.d.ts +0 -31
  40. package/dist/auth/index.d.mts +0 -40
  41. package/dist/auth/index.d.ts +0 -40
  42. package/dist/auth/middleware/index.d.mts +0 -75
  43. package/dist/auth/middleware/index.d.ts +0 -75
  44. package/dist/auth/routes/index.d.mts +0 -261
  45. package/dist/auth/routes/index.d.ts +0 -261
  46. package/dist/auth/schema/index.d.mts +0 -789
  47. package/dist/auth/schema/index.d.ts +0 -789
  48. package/dist/auth/services/index.d.mts +0 -48
  49. package/dist/auth/services/index.d.ts +0 -48
  50. package/dist/calendar/index.d.mts +0 -1197
  51. package/dist/calendar/index.d.ts +0 -1197
  52. package/dist/calendar/routes/index.d.mts +0 -118
  53. package/dist/calendar/routes/index.d.ts +0 -118
  54. package/dist/calendar/server.d.mts +0 -1184
  55. package/dist/calendar/server.d.ts +0 -1184
  56. package/dist/chunk-6WXOA4BE.mjs.map +0 -1
  57. package/dist/chunk-AXP7KROR.js.map +0 -1
  58. package/dist/chunk-VHU2YGRQ.mjs.map +0 -1
  59. package/dist/chunk-ZDRBMSTS.js.map +0 -1
  60. package/dist/config/index.d.mts +0 -64
  61. package/dist/config/index.d.ts +0 -64
  62. package/dist/config/server/index.d.mts +0 -1533
  63. package/dist/config/server/index.d.ts +0 -1533
  64. package/dist/drizzle-auth-service-Bxlovhv8.d.ts +0 -145
  65. package/dist/drizzle-auth-service-DZY2F1sv.d.mts +0 -145
  66. package/dist/drizzle-schema-BNhqj2AZ.d.mts +0 -1114
  67. package/dist/drizzle-schema-BNhqj2AZ.d.ts +0 -1114
  68. package/dist/enums-Dume-V5Y.d.mts +0 -16
  69. package/dist/enums-Dume-V5Y.d.ts +0 -16
  70. package/dist/i18n/index.d.mts +0 -417
  71. package/dist/i18n/index.d.ts +0 -417
  72. package/dist/imageCrop/index.d.mts +0 -165
  73. package/dist/imageCrop/index.d.ts +0 -165
  74. package/dist/index-DSel44Ke.d.mts +0 -93
  75. package/dist/index-DSel44Ke.d.ts +0 -93
  76. package/dist/index.d.mts +0 -693
  77. package/dist/index.d.ts +0 -693
  78. package/dist/logger/index.d.mts +0 -125
  79. package/dist/logger/index.d.ts +0 -125
  80. package/dist/mmd/admin/index.d.mts +0 -487
  81. package/dist/mmd/admin/index.d.ts +0 -487
  82. package/dist/mmd/index.d.mts +0 -599
  83. package/dist/mmd/index.d.ts +0 -599
  84. package/dist/mmd/server/index.d.mts +0 -138
  85. package/dist/mmd/server/index.d.ts +0 -138
  86. package/dist/music/index.d.mts +0 -74
  87. package/dist/music/index.d.ts +0 -74
  88. package/dist/music/server/index.d.mts +0 -1
  89. package/dist/music/server/index.d.ts +0 -1
  90. package/dist/request/index.d.mts +0 -51
  91. package/dist/request/index.d.ts +0 -51
  92. package/dist/storage/index.d.mts +0 -75
  93. package/dist/storage/index.d.ts +0 -75
  94. package/dist/testYourself/admin/index.d.mts +0 -58
  95. package/dist/testYourself/admin/index.d.ts +0 -58
  96. package/dist/testYourself/index.d.mts +0 -53
  97. package/dist/testYourself/index.d.ts +0 -53
  98. package/dist/testYourself/server/index.d.mts +0 -1029
  99. package/dist/testYourself/server/index.d.ts +0 -1029
  100. package/dist/types-B60F7EZZ.d.mts +0 -248
  101. package/dist/types-B60F7EZZ.d.ts +0 -248
  102. package/dist/types-BINlP9MK.d.mts +0 -286
  103. package/dist/types-BINlP9MK.d.ts +0 -286
  104. package/dist/types-BaZccpvk.d.mts +0 -48
  105. package/dist/types-BaZccpvk.d.ts +0 -48
  106. package/dist/types-CK4We_aI.d.mts +0 -270
  107. package/dist/types-CK4We_aI.d.ts +0 -270
  108. package/dist/types-CbTsi9CZ.d.mts +0 -31
  109. package/dist/types-CbTsi9CZ.d.ts +0 -31
  110. package/dist/types-CroexXnI.d.ts +0 -99
  111. package/dist/types-DmsXCWvm.d.mts +0 -99
  112. package/dist/types-Dt0oqeFM.d.mts +0 -70
  113. package/dist/types-zK6kDzDQ.d.ts +0 -70
  114. package/dist/universalExport/index.d.mts +0 -235
  115. package/dist/universalExport/index.d.ts +0 -235
  116. package/dist/universalExport/server/index.d.mts +0 -1270
  117. package/dist/universalExport/server/index.d.ts +0 -1270
  118. package/dist/universalFile/index.d.mts +0 -480
  119. package/dist/universalFile/index.d.ts +0 -480
  120. package/dist/universalFile/server/index.d.mts +0 -4516
  121. package/dist/universalFile/server/index.d.ts +0 -4516
  122. package/dist/useElectronStorage-Dj0rcorG.d.mts +0 -65
  123. package/dist/useElectronStorage-DwnNfIhl.d.ts +0 -65
  124. package/dist/utils/index.d.mts +0 -192
  125. package/dist/utils/index.d.ts +0 -192
@@ -1,40 +0,0 @@
1
- import { U as UserRole } from '../enums-Dume-V5Y.js';
2
- export { u as userRole } from '../enums-Dume-V5Y.js';
3
- export { Account, NewAccount, NewSession, NewUser, NewVerification, Session, User, Verification, account, accountRelations, session, sessionRelations, user, userRelations, verifications } from './schema/index.js';
4
- export { A as AuthResult, a as AuthServiceConfig, D as DrizzleAuthService, S as SessionInfo, U as UserInfo, V as VerifyResult } from '../drizzle-auth-service-Bxlovhv8.js';
5
- export { JwtPayload, generateToken, getTokenFromRequest, hashPassword, verifyJwtToken, verifyPassword } from './services/index.js';
6
- import { NextRequest } from 'next/server';
7
- export { AnalyticsEvent, AnalyticsService, ApiResponse, BaseRouteConfig, LoginRouteConfig, RegisterRouteConfig, createAnalyticsAdapter, createDefaultBaseConfig, createDefaultLoginConfig, createDefaultRegisterConfig, createLoginHandler, createLoginOptionsHandler, createLogoutHandler, createLogoutOptionsHandler, createMeHandler, createMeOptionsHandler, createRegisterHandler, createRegisterOptionsHandler } from './routes/index.js';
8
- export { AuthLevel, AuthMiddlewareConfig, RouteContext, RouteHandler, createAuthMiddleware } from './middleware/index.js';
9
- export { useAuth, useAuthForm } from './hooks/index.js';
10
- export { API_ROUTES, BaseApiClient, STORAGE_KEYS } from './client/index.js';
11
- export { L as LoginFormState, R as RegisterFormState } from '../types-zK6kDzDQ.js';
12
- export { B as BaseUser, L as LoginForm, R as RegisterForm, U as UseAuthReturn } from '../types-CroexXnI.js';
13
- import 'drizzle-orm/pg-core';
14
- import 'drizzle-orm';
15
- import 'react';
16
- import '../types-BaZccpvk.js';
17
- import '../types-CbTsi9CZ.js';
18
-
19
- /**
20
- * 验证 API 请求的身份
21
- * 从请求头中获取 Token 并验证,返回用户信息
22
- */
23
- declare function validateApiAuth(request: NextRequest): Promise<{
24
- id: string;
25
- email: string;
26
- username: string | undefined;
27
- role: UserRole;
28
- } | null>;
29
- /**
30
- * 验证 API 请求的身份(针对使用数字 ID 的项目)
31
- * 将 string 类型的 userId 转换为 number 类型
32
- */
33
- declare function validateApiAuthNumeric(request: NextRequest): Promise<{
34
- id: number;
35
- email: string;
36
- username: string | undefined;
37
- role: UserRole;
38
- } | null>;
39
-
40
- export { UserRole, validateApiAuth, validateApiAuthNumeric };
@@ -1,75 +0,0 @@
1
- import { D as DrizzleAuthService, U as UserInfo, S as SessionInfo } from '../../drizzle-auth-service-DZY2F1sv.mjs';
2
- import '../../enums-Dume-V5Y.mjs';
3
- import 'drizzle-orm/pg-core';
4
-
5
- /**
6
- * Auth Middleware - Types
7
- * 认证中间件类型定义
8
- */
9
-
10
- /**
11
- * 认证级别
12
- */
13
- type AuthLevel = 'none' | 'user' | 'admin' | 'super_admin';
14
- /**
15
- * 路由上下文
16
- */
17
- interface RouteContext {
18
- /**
19
- * 用户信息(认证后注入)
20
- */
21
- user?: UserInfo;
22
- /**
23
- * 会话信息(认证后注入)
24
- */
25
- session?: SessionInfo;
26
- /**
27
- * 路由参数
28
- */
29
- params?: any;
30
- }
31
- /**
32
- * 路由处理器
33
- */
34
- type RouteHandler = (request: Request, context: RouteContext) => Promise<Response>;
35
- /**
36
- * 认证中间件配置
37
- */
38
- interface AuthMiddlewareConfig {
39
- /**
40
- * 认证服务实例
41
- */
42
- authService: DrizzleAuthService;
43
- }
44
-
45
- /**
46
- * Auth Middleware - withAuth
47
- * 认证中间件
48
- */
49
-
50
- /**
51
- * 创建认证中间件
52
- *
53
- * @example
54
- * ```typescript
55
- * import { createAuthMiddleware } from '@qhr123/sa2kit/auth/middleware';
56
- *
57
- * const { withAuth, requireAdmin } = createAuthMiddleware({
58
- * authService: myAuthService,
59
- * });
60
- *
61
- * // 使用中间件
62
- * export const GET = requireAdmin(async (request, context) => {
63
- * const { user } = context; // 自动注入用户信息
64
- * // ... 业务逻辑
65
- * });
66
- * ```
67
- */
68
- declare function createAuthMiddleware(config: AuthMiddlewareConfig): {
69
- withAuth: (handler: RouteHandler, level?: AuthLevel) => RouteHandler;
70
- requireAuth: (handler: RouteHandler) => RouteHandler;
71
- requireAdmin: (handler: RouteHandler) => RouteHandler;
72
- requireSuperAdmin: (handler: RouteHandler) => RouteHandler;
73
- };
74
-
75
- export { type AuthLevel, type AuthMiddlewareConfig, type RouteContext, type RouteHandler, createAuthMiddleware };
@@ -1,75 +0,0 @@
1
- import { D as DrizzleAuthService, U as UserInfo, S as SessionInfo } from '../../drizzle-auth-service-Bxlovhv8.js';
2
- import '../../enums-Dume-V5Y.js';
3
- import 'drizzle-orm/pg-core';
4
-
5
- /**
6
- * Auth Middleware - Types
7
- * 认证中间件类型定义
8
- */
9
-
10
- /**
11
- * 认证级别
12
- */
13
- type AuthLevel = 'none' | 'user' | 'admin' | 'super_admin';
14
- /**
15
- * 路由上下文
16
- */
17
- interface RouteContext {
18
- /**
19
- * 用户信息(认证后注入)
20
- */
21
- user?: UserInfo;
22
- /**
23
- * 会话信息(认证后注入)
24
- */
25
- session?: SessionInfo;
26
- /**
27
- * 路由参数
28
- */
29
- params?: any;
30
- }
31
- /**
32
- * 路由处理器
33
- */
34
- type RouteHandler = (request: Request, context: RouteContext) => Promise<Response>;
35
- /**
36
- * 认证中间件配置
37
- */
38
- interface AuthMiddlewareConfig {
39
- /**
40
- * 认证服务实例
41
- */
42
- authService: DrizzleAuthService;
43
- }
44
-
45
- /**
46
- * Auth Middleware - withAuth
47
- * 认证中间件
48
- */
49
-
50
- /**
51
- * 创建认证中间件
52
- *
53
- * @example
54
- * ```typescript
55
- * import { createAuthMiddleware } from '@qhr123/sa2kit/auth/middleware';
56
- *
57
- * const { withAuth, requireAdmin } = createAuthMiddleware({
58
- * authService: myAuthService,
59
- * });
60
- *
61
- * // 使用中间件
62
- * export const GET = requireAdmin(async (request, context) => {
63
- * const { user } = context; // 自动注入用户信息
64
- * // ... 业务逻辑
65
- * });
66
- * ```
67
- */
68
- declare function createAuthMiddleware(config: AuthMiddlewareConfig): {
69
- withAuth: (handler: RouteHandler, level?: AuthLevel) => RouteHandler;
70
- requireAuth: (handler: RouteHandler) => RouteHandler;
71
- requireAdmin: (handler: RouteHandler) => RouteHandler;
72
- requireSuperAdmin: (handler: RouteHandler) => RouteHandler;
73
- };
74
-
75
- export { type AuthLevel, type AuthMiddlewareConfig, type RouteContext, type RouteHandler, createAuthMiddleware };
@@ -1,261 +0,0 @@
1
- import { D as DrizzleAuthService } from '../../drizzle-auth-service-DZY2F1sv.mjs';
2
- import '../../enums-Dume-V5Y.mjs';
3
- import 'drizzle-orm/pg-core';
4
-
5
- /**
6
- * Auth Routes - Types
7
- * 路由处理器类型定义
8
- */
9
-
10
- /**
11
- * 基础路由配置
12
- */
13
- interface BaseRouteConfig {
14
- /**
15
- * 认证服务实例
16
- */
17
- authService: DrizzleAuthService;
18
- /**
19
- * 可选的 Analytics 服务
20
- */
21
- analytics?: {
22
- track: (eventName: string, properties: any) => Promise<void>;
23
- };
24
- /**
25
- * CORS 配置
26
- */
27
- cors?: {
28
- enabled?: boolean;
29
- origin?: string | string[];
30
- methods?: string[];
31
- allowedHeaders?: string[];
32
- credentials?: boolean;
33
- };
34
- }
35
- /**
36
- * 登录路由配置
37
- */
38
- interface LoginRouteConfig extends BaseRouteConfig {
39
- /**
40
- * Cookie 配置
41
- */
42
- cookieOptions?: {
43
- name?: string;
44
- httpOnly?: boolean;
45
- secure?: boolean;
46
- sameSite?: 'strict' | 'lax' | 'none';
47
- maxAge?: number;
48
- path?: string;
49
- };
50
- }
51
- /**
52
- * 注册路由配置
53
- */
54
- interface RegisterRouteConfig extends BaseRouteConfig {
55
- /**
56
- * 默认角色
57
- */
58
- defaultRole?: 'USER' | 'ADMIN' | 'SUPER_ADMIN';
59
- /**
60
- * 是否需要邮箱验证
61
- */
62
- emailVerificationRequired?: boolean;
63
- /**
64
- * Cookie 配置
65
- */
66
- cookieOptions?: {
67
- name?: string;
68
- httpOnly?: boolean;
69
- secure?: boolean;
70
- sameSite?: 'strict' | 'lax' | 'none';
71
- maxAge?: number;
72
- path?: string;
73
- };
74
- }
75
- /**
76
- * 标准 API 响应
77
- */
78
- interface ApiResponse<T = any> {
79
- success: boolean;
80
- data?: T;
81
- error?: string;
82
- message?: string;
83
- }
84
-
85
- /**
86
- * Auth Routes - Login
87
- * 登录路由处理器
88
- */
89
-
90
- /**
91
- * 创建登录路由处理器
92
- *
93
- * @example
94
- * ```typescript
95
- * import { createLoginHandler } from 'sa2kit/auth/routes';
96
- *
97
- * export const POST = createLoginHandler({
98
- * authService: myAuthService,
99
- * analytics: myAnalytics,
100
- * cors: { enabled: true },
101
- * });
102
- * ```
103
- */
104
- declare function createLoginHandler(config: LoginRouteConfig): (request: Request) => Promise<Response>;
105
- /**
106
- * 创建 CORS 预检请求处理器
107
- */
108
- declare function createLoginOptionsHandler(config: LoginRouteConfig): (request: Request) => Promise<Response>;
109
-
110
- /**
111
- * Auth Routes - Register
112
- * 注册路由处理器
113
- */
114
-
115
- /**
116
- * 创建注册路由处理器
117
- *
118
- * @example
119
- * ```typescript
120
- * import { createRegisterHandler } from 'sa2kit/auth/routes';
121
- *
122
- * export const POST = createRegisterHandler({
123
- * authService: myAuthService,
124
- * defaultRole: 'USER',
125
- * cors: { enabled: true },
126
- * });
127
- * ```
128
- */
129
- declare function createRegisterHandler(config: RegisterRouteConfig): (request: Request) => Promise<Response>;
130
- /**
131
- * 创建 CORS 预检请求处理器
132
- */
133
- declare function createRegisterOptionsHandler(config: RegisterRouteConfig): (request: Request) => Promise<Response>;
134
-
135
- /**
136
- * Auth Routes - Me
137
- * 获取当前用户信息路由处理器
138
- */
139
-
140
- /**
141
- * 创建获取当前用户信息路由处理器
142
- *
143
- * @example
144
- * ```typescript
145
- * import { createMeHandler } from 'sa2kit/auth/routes';
146
- *
147
- * export const GET = createMeHandler({
148
- * authService: myAuthService,
149
- * cors: { enabled: true },
150
- * });
151
- * ```
152
- */
153
- declare function createMeHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
154
- /**
155
- * 创建 CORS 预检请求处理器
156
- */
157
- declare function createMeOptionsHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
158
-
159
- /**
160
- * Auth Routes - Logout
161
- * 登出路由处理器
162
- */
163
-
164
- /**
165
- * 创建登出路由处理器
166
- *
167
- * @example
168
- * ```typescript
169
- * import { createLogoutHandler } from 'sa2kit/auth/routes';
170
- *
171
- * export const POST = createLogoutHandler({
172
- * authService: myAuthService,
173
- * cors: { enabled: true },
174
- * });
175
- * ```
176
- */
177
- declare function createLogoutHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
178
- /**
179
- * 创建 CORS 预检请求处理器
180
- */
181
- declare function createLogoutOptionsHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
182
-
183
- /**
184
- * Auth Routes - Default Configurations
185
- * 默认路由配置
186
- */
187
-
188
- /**
189
- * 创建默认的基础路由配置
190
- */
191
- declare function createDefaultBaseConfig(authService: DrizzleAuthService, overrides?: Partial<BaseRouteConfig>): BaseRouteConfig;
192
- /**
193
- * 创建默认的登录路由配置
194
- */
195
- declare function createDefaultLoginConfig(authService: DrizzleAuthService, overrides?: Partial<LoginRouteConfig>): LoginRouteConfig;
196
- /**
197
- * 创建默认的注册路由配置
198
- */
199
- declare function createDefaultRegisterConfig(authService: DrizzleAuthService, overrides?: Partial<RegisterRouteConfig>): RegisterRouteConfig;
200
-
201
- /**
202
- * Auth Routes - Analytics Adapter
203
- * 埋点适配器,用于适配不同的埋点服务
204
- */
205
- /**
206
- * 埋点事件接口
207
- */
208
- interface AnalyticsEvent {
209
- id: string;
210
- eventType: string;
211
- eventName: string;
212
- timestamp: string;
213
- priority: number;
214
- userId: string;
215
- sessionId: string;
216
- deviceId: string;
217
- platform: string;
218
- appVersion: string;
219
- sdkVersion: string;
220
- properties: Record<string, any>;
221
- }
222
- /**
223
- * 埋点服务接口
224
- */
225
- interface AnalyticsService {
226
- insertAnalyticsEvents(events: AnalyticsEvent[]): Promise<void>;
227
- }
228
- /**
229
- * 创建埋点适配器
230
- *
231
- * @param analyticsService 埋点服务实例
232
- * @param options 可选配置
233
- * @returns 符合 sa2kit 格式的埋点函数
234
- *
235
- * @example
236
- * ```typescript
237
- * import { createAnalyticsAdapter } from 'sa2kit/auth/routes';
238
- * import { analyticsService } from '@/lib/analytics';
239
- *
240
- * const analytics = createAnalyticsAdapter(analyticsService, {
241
- * platform: 'backend',
242
- * appVersion: '1.0.0',
243
- * });
244
- *
245
- * // 在路由配置中使用
246
- * const config = createDefaultLoginConfig(authService, {
247
- * analytics,
248
- * });
249
- * ```
250
- */
251
- declare function createAnalyticsAdapter(analyticsService: AnalyticsService, options?: {
252
- platform?: string;
253
- appVersion?: string;
254
- sdkVersion?: string;
255
- deviceId?: string;
256
- generateId?: () => string;
257
- }): {
258
- track: (eventName: string, properties: any) => Promise<void>;
259
- };
260
-
261
- export { type AnalyticsEvent, type AnalyticsService, type ApiResponse, type BaseRouteConfig, type LoginRouteConfig, type RegisterRouteConfig, createAnalyticsAdapter, createDefaultBaseConfig, createDefaultLoginConfig, createDefaultRegisterConfig, createLoginHandler, createLoginOptionsHandler, createLogoutHandler, createLogoutOptionsHandler, createMeHandler, createMeOptionsHandler, createRegisterHandler, createRegisterOptionsHandler };
@@ -1,261 +0,0 @@
1
- import { D as DrizzleAuthService } from '../../drizzle-auth-service-Bxlovhv8.js';
2
- import '../../enums-Dume-V5Y.js';
3
- import 'drizzle-orm/pg-core';
4
-
5
- /**
6
- * Auth Routes - Types
7
- * 路由处理器类型定义
8
- */
9
-
10
- /**
11
- * 基础路由配置
12
- */
13
- interface BaseRouteConfig {
14
- /**
15
- * 认证服务实例
16
- */
17
- authService: DrizzleAuthService;
18
- /**
19
- * 可选的 Analytics 服务
20
- */
21
- analytics?: {
22
- track: (eventName: string, properties: any) => Promise<void>;
23
- };
24
- /**
25
- * CORS 配置
26
- */
27
- cors?: {
28
- enabled?: boolean;
29
- origin?: string | string[];
30
- methods?: string[];
31
- allowedHeaders?: string[];
32
- credentials?: boolean;
33
- };
34
- }
35
- /**
36
- * 登录路由配置
37
- */
38
- interface LoginRouteConfig extends BaseRouteConfig {
39
- /**
40
- * Cookie 配置
41
- */
42
- cookieOptions?: {
43
- name?: string;
44
- httpOnly?: boolean;
45
- secure?: boolean;
46
- sameSite?: 'strict' | 'lax' | 'none';
47
- maxAge?: number;
48
- path?: string;
49
- };
50
- }
51
- /**
52
- * 注册路由配置
53
- */
54
- interface RegisterRouteConfig extends BaseRouteConfig {
55
- /**
56
- * 默认角色
57
- */
58
- defaultRole?: 'USER' | 'ADMIN' | 'SUPER_ADMIN';
59
- /**
60
- * 是否需要邮箱验证
61
- */
62
- emailVerificationRequired?: boolean;
63
- /**
64
- * Cookie 配置
65
- */
66
- cookieOptions?: {
67
- name?: string;
68
- httpOnly?: boolean;
69
- secure?: boolean;
70
- sameSite?: 'strict' | 'lax' | 'none';
71
- maxAge?: number;
72
- path?: string;
73
- };
74
- }
75
- /**
76
- * 标准 API 响应
77
- */
78
- interface ApiResponse<T = any> {
79
- success: boolean;
80
- data?: T;
81
- error?: string;
82
- message?: string;
83
- }
84
-
85
- /**
86
- * Auth Routes - Login
87
- * 登录路由处理器
88
- */
89
-
90
- /**
91
- * 创建登录路由处理器
92
- *
93
- * @example
94
- * ```typescript
95
- * import { createLoginHandler } from 'sa2kit/auth/routes';
96
- *
97
- * export const POST = createLoginHandler({
98
- * authService: myAuthService,
99
- * analytics: myAnalytics,
100
- * cors: { enabled: true },
101
- * });
102
- * ```
103
- */
104
- declare function createLoginHandler(config: LoginRouteConfig): (request: Request) => Promise<Response>;
105
- /**
106
- * 创建 CORS 预检请求处理器
107
- */
108
- declare function createLoginOptionsHandler(config: LoginRouteConfig): (request: Request) => Promise<Response>;
109
-
110
- /**
111
- * Auth Routes - Register
112
- * 注册路由处理器
113
- */
114
-
115
- /**
116
- * 创建注册路由处理器
117
- *
118
- * @example
119
- * ```typescript
120
- * import { createRegisterHandler } from 'sa2kit/auth/routes';
121
- *
122
- * export const POST = createRegisterHandler({
123
- * authService: myAuthService,
124
- * defaultRole: 'USER',
125
- * cors: { enabled: true },
126
- * });
127
- * ```
128
- */
129
- declare function createRegisterHandler(config: RegisterRouteConfig): (request: Request) => Promise<Response>;
130
- /**
131
- * 创建 CORS 预检请求处理器
132
- */
133
- declare function createRegisterOptionsHandler(config: RegisterRouteConfig): (request: Request) => Promise<Response>;
134
-
135
- /**
136
- * Auth Routes - Me
137
- * 获取当前用户信息路由处理器
138
- */
139
-
140
- /**
141
- * 创建获取当前用户信息路由处理器
142
- *
143
- * @example
144
- * ```typescript
145
- * import { createMeHandler } from 'sa2kit/auth/routes';
146
- *
147
- * export const GET = createMeHandler({
148
- * authService: myAuthService,
149
- * cors: { enabled: true },
150
- * });
151
- * ```
152
- */
153
- declare function createMeHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
154
- /**
155
- * 创建 CORS 预检请求处理器
156
- */
157
- declare function createMeOptionsHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
158
-
159
- /**
160
- * Auth Routes - Logout
161
- * 登出路由处理器
162
- */
163
-
164
- /**
165
- * 创建登出路由处理器
166
- *
167
- * @example
168
- * ```typescript
169
- * import { createLogoutHandler } from 'sa2kit/auth/routes';
170
- *
171
- * export const POST = createLogoutHandler({
172
- * authService: myAuthService,
173
- * cors: { enabled: true },
174
- * });
175
- * ```
176
- */
177
- declare function createLogoutHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
178
- /**
179
- * 创建 CORS 预检请求处理器
180
- */
181
- declare function createLogoutOptionsHandler(config: BaseRouteConfig): (request: Request) => Promise<Response>;
182
-
183
- /**
184
- * Auth Routes - Default Configurations
185
- * 默认路由配置
186
- */
187
-
188
- /**
189
- * 创建默认的基础路由配置
190
- */
191
- declare function createDefaultBaseConfig(authService: DrizzleAuthService, overrides?: Partial<BaseRouteConfig>): BaseRouteConfig;
192
- /**
193
- * 创建默认的登录路由配置
194
- */
195
- declare function createDefaultLoginConfig(authService: DrizzleAuthService, overrides?: Partial<LoginRouteConfig>): LoginRouteConfig;
196
- /**
197
- * 创建默认的注册路由配置
198
- */
199
- declare function createDefaultRegisterConfig(authService: DrizzleAuthService, overrides?: Partial<RegisterRouteConfig>): RegisterRouteConfig;
200
-
201
- /**
202
- * Auth Routes - Analytics Adapter
203
- * 埋点适配器,用于适配不同的埋点服务
204
- */
205
- /**
206
- * 埋点事件接口
207
- */
208
- interface AnalyticsEvent {
209
- id: string;
210
- eventType: string;
211
- eventName: string;
212
- timestamp: string;
213
- priority: number;
214
- userId: string;
215
- sessionId: string;
216
- deviceId: string;
217
- platform: string;
218
- appVersion: string;
219
- sdkVersion: string;
220
- properties: Record<string, any>;
221
- }
222
- /**
223
- * 埋点服务接口
224
- */
225
- interface AnalyticsService {
226
- insertAnalyticsEvents(events: AnalyticsEvent[]): Promise<void>;
227
- }
228
- /**
229
- * 创建埋点适配器
230
- *
231
- * @param analyticsService 埋点服务实例
232
- * @param options 可选配置
233
- * @returns 符合 sa2kit 格式的埋点函数
234
- *
235
- * @example
236
- * ```typescript
237
- * import { createAnalyticsAdapter } from 'sa2kit/auth/routes';
238
- * import { analyticsService } from '@/lib/analytics';
239
- *
240
- * const analytics = createAnalyticsAdapter(analyticsService, {
241
- * platform: 'backend',
242
- * appVersion: '1.0.0',
243
- * });
244
- *
245
- * // 在路由配置中使用
246
- * const config = createDefaultLoginConfig(authService, {
247
- * analytics,
248
- * });
249
- * ```
250
- */
251
- declare function createAnalyticsAdapter(analyticsService: AnalyticsService, options?: {
252
- platform?: string;
253
- appVersion?: string;
254
- sdkVersion?: string;
255
- deviceId?: string;
256
- generateId?: () => string;
257
- }): {
258
- track: (eventName: string, properties: any) => Promise<void>;
259
- };
260
-
261
- export { type AnalyticsEvent, type AnalyticsService, type ApiResponse, type BaseRouteConfig, type LoginRouteConfig, type RegisterRouteConfig, createAnalyticsAdapter, createDefaultBaseConfig, createDefaultLoginConfig, createDefaultRegisterConfig, createLoginHandler, createLoginOptionsHandler, createLogoutHandler, createLogoutOptionsHandler, createMeHandler, createMeOptionsHandler, createRegisterHandler, createRegisterOptionsHandler };