@lytjs/middleware-auth 6.8.0 → 6.9.1
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.
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +33 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/auth.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../src/auth.ts"],"names":[],"mappings":";;;AAaO,SAAS,qBAAqB,OAAA,EAAkC;AACrE,EAAA,MAAM,UAAA,GAAa,QAAQ,UAAA,IAAc,eAAA;AAEzC,EAAA,OAAO,OAAO,OAAA,EAAkB,GAAA,EAAwB,IAAA,KAA8B;AACpF,IAAA,MAAM,UAAA,GAAa,OAAA,CAAQ,OAAA,CAAQ,GAAA,CAAI,UAAU,CAAA,IAAK,EAAA;AACtD,IAAA,MAAM,KAAA,GAAQ,WAAW,UAAA,CAAW,SAAS,IAAI,UAAA,CAAW,KAAA,CAAM,CAAC,CAAA,GAAI,UAAA;AAEvE,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,OAAO,IAAI,SAAS,IAAA,CAAK,SAAA,CAAU,EAAE,KAAA,EAAO,oBAAA,EAAO,CAAA,EAAG;AAAA,QACpD,MAAA,EAAQ,GAAA;AAAA,QACR,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAAA,IACH;AAEA,IAAA,MAAM,IAAA,GAAO,MAAM,OAAA,CAAQ,YAAA,CAAa,KAAK,CAAA;AAE7C,IAAA,IAAI,CAAC,IAAA,EAAM;AACT,MAAA,OAAO,IAAI,SAAS,IAAA,CAAK,SAAA,CAAU,EAAE,KAAA,EAAO,oBAAA,EAAO,CAAA,EAAG;AAAA,QACpD,MAAA,EAAQ,GAAA;AAAA,QACR,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAAA,IACH;AAEA,IAAA,GAAA,CAAI,IAAA,GAAO,IAAA;AACX,IAAA,MAAM,IAAA,EAAK;AAAA,EACb,CAAA;AACF","file":"index.cjs","sourcesContent":["/**\n * 认证中间件实现\n */\nimport type { AuthOptions } from './types';\ntype Middleware = unknown;\ntype MiddlewareContext = Record<string, unknown>;\n\n/**\n * 创建认证中间件\n *\n * @param options - 认证配置选项\n * @returns 认证中间件函数\n */\nexport function createAuthMiddleware(options: AuthOptions): Middleware {\n const headerName = options.headerName || 'Authorization';\n\n return async (request: Request, ctx: MiddlewareContext, next: () => Promise<void>) => {\n const authHeader = request.headers.get(headerName) || '';\n const token = authHeader.startsWith('Bearer ') ? authHeader.slice(7) : authHeader;\n\n if (!token) {\n return new Response(JSON.stringify({ error: '未授权' }), {\n status: 401,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n\n const user = await options.authenticate(token);\n\n if (!user) {\n return new Response(JSON.stringify({ error: '未授权' }), {\n status: 401,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n\n ctx.user = user;\n await next();\n };\n}\n"]}
|
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 认证用户类型
|
|
3
|
+
*/
|
|
4
|
+
interface AuthUser {
|
|
5
|
+
/** 用户 ID */
|
|
6
|
+
id: string | number;
|
|
7
|
+
/** 其他用户属性 */
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 认证中间件配置选项
|
|
12
|
+
*/
|
|
13
|
+
interface AuthOptions {
|
|
14
|
+
/** 认证函数,接收 token 返回用户信息或 null */
|
|
15
|
+
authenticate: (token: string) => Promise<AuthUser | null>;
|
|
16
|
+
/** 认证头名称,默认为 Authorization */
|
|
17
|
+
headerName?: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* 认证中间件实现
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
type Middleware = unknown;
|
|
25
|
+
/**
|
|
26
|
+
* 创建认证中间件
|
|
27
|
+
*
|
|
28
|
+
* @param options - 认证配置选项
|
|
29
|
+
* @returns 认证中间件函数
|
|
30
|
+
*/
|
|
31
|
+
declare function createAuthMiddleware(options: AuthOptions): Middleware;
|
|
32
|
+
|
|
33
|
+
export { type AuthOptions, type AuthUser, createAuthMiddleware };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 认证用户类型
|
|
3
|
+
*/
|
|
4
|
+
interface AuthUser {
|
|
5
|
+
/** 用户 ID */
|
|
6
|
+
id: string | number;
|
|
7
|
+
/** 其他用户属性 */
|
|
8
|
+
[key: string]: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* 认证中间件配置选项
|
|
12
|
+
*/
|
|
13
|
+
interface AuthOptions {
|
|
14
|
+
/** 认证函数,接收 token 返回用户信息或 null */
|
|
15
|
+
authenticate: (token: string) => Promise<AuthUser | null>;
|
|
16
|
+
/** 认证头名称,默认为 Authorization */
|
|
17
|
+
headerName?: string;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* 认证中间件实现
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
type Middleware = unknown;
|
|
25
|
+
/**
|
|
26
|
+
* 创建认证中间件
|
|
27
|
+
*
|
|
28
|
+
* @param options - 认证配置选项
|
|
29
|
+
* @returns 认证中间件函数
|
|
30
|
+
*/
|
|
31
|
+
declare function createAuthMiddleware(options: AuthOptions): Middleware;
|
|
32
|
+
|
|
33
|
+
export { type AuthOptions, type AuthUser, createAuthMiddleware };
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/auth.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"sources":["../src/auth.ts"],"names":[],"mappings":";AAaO,SAAS,qBAAqB,OAAA,EAAkC;AACrE,EAAA,MAAM,UAAA,GAAa,QAAQ,UAAA,IAAc,eAAA;AAEzC,EAAA,OAAO,OAAO,OAAA,EAAkB,GAAA,EAAwB,IAAA,KAA8B;AACpF,IAAA,MAAM,UAAA,GAAa,OAAA,CAAQ,OAAA,CAAQ,GAAA,CAAI,UAAU,CAAA,IAAK,EAAA;AACtD,IAAA,MAAM,KAAA,GAAQ,WAAW,UAAA,CAAW,SAAS,IAAI,UAAA,CAAW,KAAA,CAAM,CAAC,CAAA,GAAI,UAAA;AAEvE,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,OAAO,IAAI,SAAS,IAAA,CAAK,SAAA,CAAU,EAAE,KAAA,EAAO,oBAAA,EAAO,CAAA,EAAG;AAAA,QACpD,MAAA,EAAQ,GAAA;AAAA,QACR,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAAA,IACH;AAEA,IAAA,MAAM,IAAA,GAAO,MAAM,OAAA,CAAQ,YAAA,CAAa,KAAK,CAAA;AAE7C,IAAA,IAAI,CAAC,IAAA,EAAM;AACT,MAAA,OAAO,IAAI,SAAS,IAAA,CAAK,SAAA,CAAU,EAAE,KAAA,EAAO,oBAAA,EAAO,CAAA,EAAG;AAAA,QACpD,MAAA,EAAQ,GAAA;AAAA,QACR,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAAA,IACH;AAEA,IAAA,GAAA,CAAI,IAAA,GAAO,IAAA;AACX,IAAA,MAAM,IAAA,EAAK;AAAA,EACb,CAAA;AACF","file":"index.mjs","sourcesContent":["/**\n * 认证中间件实现\n */\nimport type { AuthOptions } from './types';\ntype Middleware = unknown;\ntype MiddlewareContext = Record<string, unknown>;\n\n/**\n * 创建认证中间件\n *\n * @param options - 认证配置选项\n * @returns 认证中间件函数\n */\nexport function createAuthMiddleware(options: AuthOptions): Middleware {\n const headerName = options.headerName || 'Authorization';\n\n return async (request: Request, ctx: MiddlewareContext, next: () => Promise<void>) => {\n const authHeader = request.headers.get(headerName) || '';\n const token = authHeader.startsWith('Bearer ') ? authHeader.slice(7) : authHeader;\n\n if (!token) {\n return new Response(JSON.stringify({ error: '未授权' }), {\n status: 401,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n\n const user = await options.authenticate(token);\n\n if (!user) {\n return new Response(JSON.stringify({ error: '未授权' }), {\n status: 401,\n headers: { 'Content-Type': 'application/json' },\n });\n }\n\n ctx.user = user;\n await next();\n };\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lytjs/middleware-auth",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.9.1",
|
|
4
4
|
"description": "LytJS 认证中间件",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
"clean": "rm -rf dist node_modules .turbo"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@lytjs/common-is": "
|
|
35
|
-
"@lytjs/middleware": "
|
|
34
|
+
"@lytjs/common-is": "workspace:*",
|
|
35
|
+
"@lytjs/middleware": "workspace:*"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"tsup": "^8.3.6",
|