@lsby/net-core 0.6.6 → 0.6.7-beta.10
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/cjs/global/global.cjs +7 -7
- package/dist/cjs/global/web-socket-management.cjs +7 -7
- package/dist/cjs/{tools/tools.cjs → help/help.cjs} +14 -4
- package/dist/cjs/help/help.d.cts +11 -0
- package/dist/cjs/index.cjs +202 -309
- package/dist/cjs/index.d.cts +7 -10
- package/dist/cjs/interface/interface-base.d.cts +5 -42
- package/dist/cjs/interface/interface-logic.cjs +12 -193
- package/dist/cjs/interface/interface-logic.d.cts +6 -60
- package/dist/cjs/interface/interface-result.cjs +4 -4
- package/dist/cjs/interface/interface-result.d.cts +6 -39
- package/dist/cjs/interface-base-CFXGjV5S.d.cts +176 -0
- package/dist/cjs/plugin/extend/chinese-path.d.cts +4 -1
- package/dist/cjs/plugin/extend/custom-data.cjs +8 -8
- package/dist/cjs/plugin/extend/custom-data.d.cts +4 -1
- package/dist/cjs/plugin/extend/json.cjs +9 -9
- package/dist/cjs/plugin/extend/json.d.cts +6 -2
- package/dist/cjs/plugin/extend/log-headers.cjs +2 -177
- package/dist/cjs/plugin/extend/log-headers.d.cts +4 -1
- package/dist/cjs/plugin/extend/send-file-plugin.d.cts +4 -1
- package/dist/cjs/plugin/extend/urlencoded.cjs +8 -8
- package/dist/cjs/plugin/extend/urlencoded.d.cts +4 -1
- package/dist/cjs/plugin/extend/web-socket.cjs +8 -8
- package/dist/cjs/plugin/extend/web-socket.d.cts +4 -1
- package/dist/cjs/plugin/plug.d.cts +7 -29
- package/dist/cjs/server/server.cjs +15 -13
- package/dist/cjs/server/server.d.cts +4 -27
- package/dist/cjs/wrapper/common-wrapper.cjs +89 -0
- package/dist/cjs/wrapper/common-wrapper.d.cts +19 -0
- package/dist/cjs/wrapper/deferred-result-wrapper.cjs +89 -0
- package/dist/cjs/wrapper/deferred-result-wrapper.d.cts +16 -0
- package/dist/esm/action/action.bak.js +136 -3
- package/dist/esm/{chunk-TU5RBGGM.js → chunk-3QNWAAXS.js} +9 -7
- package/dist/esm/{chunk-KCQRJ4JL.js → chunk-47MYYUQZ.js} +2 -2
- package/dist/esm/{chunk-JHQKJ7DH.js → chunk-6I3OJQWA.js} +3 -3
- package/dist/esm/{chunk-6P6XTMKW.js → chunk-7MHKNSNT.js} +2 -5
- package/dist/esm/chunk-BEFZ7IFH.js +21 -0
- package/dist/esm/{chunk-DXXX45UR.js → chunk-GKEZ4UTO.js} +3 -3
- package/dist/esm/{chunk-L36NOE2J.js → chunk-JB4HVEXB.js} +2 -2
- package/dist/esm/{chunk-2E2KK6JA.js → chunk-JQAGEE3X.js} +12 -20
- package/dist/esm/{chunk-3FDT2MPR.js → chunk-LDWZKZLU.js} +7 -7
- package/dist/esm/{chunk-IGHJCQ2S.js → chunk-RYGSLVLS.js} +9 -1
- package/dist/esm/chunk-TNQ5YSCZ.js +21 -0
- package/dist/esm/{chunk-Z3PYJGMZ.js → chunk-XPC3O5HH.js} +2 -2
- package/dist/esm/global/global.js +1 -1
- package/dist/esm/global/web-socket-management.js +1 -1
- package/dist/esm/help/help.d.ts +11 -0
- package/dist/esm/{tools/tools.js → help/help.js} +5 -1
- package/dist/esm/index.d.ts +7 -10
- package/dist/esm/index.js +31 -24
- package/dist/esm/interface/interface-base.d.ts +5 -42
- package/dist/esm/interface/interface-logic.d.ts +6 -60
- package/dist/esm/interface/interface-logic.js +1 -2
- package/dist/esm/interface/interface-result.d.ts +6 -39
- package/dist/esm/interface/interface-result.js +3 -3
- package/dist/esm/interface-base-D-Zxt7-a.d.ts +176 -0
- package/dist/esm/plugin/extend/chinese-path.d.ts +4 -1
- package/dist/esm/plugin/extend/custom-data.d.ts +4 -1
- package/dist/esm/plugin/extend/custom-data.js +2 -2
- package/dist/esm/plugin/extend/json.d.ts +6 -2
- package/dist/esm/plugin/extend/json.js +3 -3
- package/dist/esm/plugin/extend/log-headers.d.ts +4 -1
- package/dist/esm/plugin/extend/log-headers.js +1 -2
- package/dist/esm/plugin/extend/send-file-plugin.d.ts +4 -1
- package/dist/esm/plugin/extend/urlencoded.d.ts +4 -1
- package/dist/esm/plugin/extend/urlencoded.js +2 -2
- package/dist/esm/plugin/extend/web-socket.d.ts +4 -1
- package/dist/esm/plugin/extend/web-socket.js +2 -2
- package/dist/esm/plugin/plug.d.ts +7 -29
- package/dist/esm/server/server.d.ts +4 -27
- package/dist/esm/server/server.js +3 -3
- package/dist/esm/wrapper/common-wrapper.d.ts +19 -0
- package/dist/esm/wrapper/common-wrapper.js +8 -0
- package/dist/esm/wrapper/deferred-result-wrapper.d.ts +16 -0
- package/dist/esm/wrapper/deferred-result-wrapper.js +8 -0
- package/package.json +1 -1
- package/dist/cjs/tools/tools.d.cts +0 -4
- package/dist/cjs/tools/types.cjs +0 -18
- package/dist/cjs/tools/types.d.cts +0 -5
- package/dist/esm/chunk-CE4M2QA4.js +0 -140
- package/dist/esm/chunk-DAKGERGA.js +0 -0
- package/dist/esm/tools/tools.d.ts +0 -4
- package/dist/esm/tools/types.d.ts +0 -5
- package/dist/esm/tools/types.js +0 -1
|
@@ -1,61 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import '@lsby/ts-fp-data';
|
|
2
|
+
import 'express';
|
|
3
|
+
import '../help/help.js';
|
|
4
|
+
export { l as 任意接口逻辑, 可 as 可调用接口逻辑, k as 接口逻辑, i as 接口逻辑正确类型, h as 接口逻辑错误类型, j as 接口逻辑附加参数类型, m as 获得接口逻辑插件类型, p as 获得接口逻辑正确类型, o as 获得接口逻辑错误类型, n as 获得接口逻辑附加参数类型, q as 计算接口逻辑正确结果, 计 as 计算接口逻辑错误结果 } from '../interface-base-D-Zxt7-a.js';
|
|
4
5
|
import 'zod';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
type 计算混合组合数组<Arr> = Arr extends [infer x] ? x : Arr extends [infer x, infer y] ? 计算混合单一组合<x, y> : Arr extends [infer x, infer y, ...infer s] ? 计算混合组合数组<[计算混合单一组合<x, y>, ...s]> : never;
|
|
8
|
-
type 接口逻辑错误类型 = string | never;
|
|
9
|
-
type 接口逻辑正确类型 = Record<string, any>;
|
|
10
|
-
type 接口逻辑附加参数类型 = Record<string, any>;
|
|
11
|
-
/**
|
|
12
|
-
* # 接口逻辑的基础抽象类
|
|
13
|
-
*
|
|
14
|
-
* - 该类表示一个接口的逻辑执行过程, 包括插件的运行, 结果的合并以及业务逻辑的实际执行.
|
|
15
|
-
* - 插件提供预处理功能, 例如参数解析等, 它通过解析express的上下文, 获得结果并提供给实现.
|
|
16
|
-
* - 实现函数负责业务逻辑的主要操作, 例如数据库查询等, 它接收插件的处理结果, 并返回计算结果(用Either表示).
|
|
17
|
-
* - 运行时除了获得express上下文外, 还可以接收自定义参数, 称为`逻辑附加参数`.
|
|
18
|
-
* - 每个接口逻辑实例可以通过一些方法与其他接口逻辑合并, 形成一个复杂的流程.
|
|
19
|
-
*
|
|
20
|
-
* ## 构造:
|
|
21
|
-
*
|
|
22
|
-
* - 可以通过继承该抽象类, 并实现抽象函数来使用.
|
|
23
|
-
* - 也可以通过静态方法`构造`来直接进行构造.
|
|
24
|
-
*
|
|
25
|
-
* ## 组合
|
|
26
|
-
*
|
|
27
|
-
* 通过组合, 可以将简单的逻辑模块化, 并按需构建复杂的接口处理流程.
|
|
28
|
-
*
|
|
29
|
-
* ### 混合
|
|
30
|
-
*
|
|
31
|
-
* - 该类提供了`混合`方法, 用于将多个接口逻辑实例合成一个复合接口逻辑.
|
|
32
|
-
* - 组合的接口逻辑会按顺序依次被调用.
|
|
33
|
-
* - 如果某接口逻辑返回左值, 则整个结构将立即返回该左值.
|
|
34
|
-
* - 否则, 将右值内容注入上下文, 允许之后的接口逻辑通过`逻辑附加参数`访问它.
|
|
35
|
-
* - 最终将返回最后一个接口逻辑的运行结果.
|
|
36
|
-
* - 这类似于monad的do结构, 在该结构中, 每个运行结果都会被注入到全局上下文并消除monad包装, 而语句可以使用上下文的值.
|
|
37
|
-
*
|
|
38
|
-
* ### 其他组合方法用到再写
|
|
39
|
-
*/
|
|
40
|
-
declare abstract class 接口逻辑<插件类型 extends _____[], 逻辑附加参数类型 extends 接口逻辑附加参数类型, 错误类型 extends 接口逻辑错误类型, 返回类型 extends 接口逻辑正确类型> {
|
|
41
|
-
static 混合<逻辑们 extends 任意接口逻辑[]>(逻辑们: [...逻辑们]): 计算混合组合数组<逻辑们>;
|
|
42
|
-
static 构造<插件类型 extends _____[], 逻辑附加参数类型 extends 接口逻辑附加参数类型, 错误类型 extends 接口逻辑错误类型, 返回类型 extends 接口逻辑正确类型>(插件们: [...插件类型], 实现: (参数: ______<插件类型>, 逻辑附加参数: 逻辑附加参数类型) => Promise<Either<错误类型, 返回类型>>, 逻辑附加参数?: Partial<逻辑附加参数类型> | undefined): 接口逻辑<插件类型, 逻辑附加参数类型, 错误类型, 返回类型>;
|
|
43
|
-
private 内部的逻辑附加参数;
|
|
44
|
-
protected readonly __类型保持符号?: [插件类型, 逻辑附加参数类型, 错误类型, 返回类型];
|
|
45
|
-
abstract 获得插件们(): [...插件类型];
|
|
46
|
-
abstract 实现(参数: ______<插件类型>, 逻辑附加参数: 逻辑附加参数类型): Promise<Either<错误类型, 返回类型>>;
|
|
47
|
-
设置逻辑附加参数<A extends Partial<逻辑附加参数类型>>(设置参数: A): 接口逻辑<插件类型, Omit<逻辑附加参数类型, keyof A>, 错误类型, 返回类型>;
|
|
48
|
-
运行(req: Request, res: Response, 传入的逻辑附加参数: 逻辑附加参数类型, 传入的插件附加参数: ______$1): Promise<Either<错误类型, 返回类型>>;
|
|
49
|
-
混合<输入的插件类型 extends _____[], 输入的错误类型 extends 接口逻辑错误类型, 输入的返回类型 extends 接口逻辑正确类型>(输入: 接口逻辑<输入的插件类型, 返回类型, 输入的错误类型, 输入的返回类型>): 接口逻辑<[
|
|
50
|
-
...插件类型,
|
|
51
|
-
...输入的插件类型
|
|
52
|
-
], 逻辑附加参数类型, 错误类型 | 输入的错误类型, 返回类型 & 输入的返回类型>;
|
|
53
|
-
}
|
|
54
|
-
type 任意接口逻辑 = 接口逻辑<any, any, any, any>;
|
|
55
|
-
type 可调用接口逻辑 = 接口逻辑<any, Record<string, never>, any, any>;
|
|
56
|
-
type 获得接口逻辑插件类型<A> = A extends 接口逻辑<infer X, any, any, any> ? X : never;
|
|
57
|
-
type 获得接口逻辑附加参数类型<A> = A extends 接口逻辑<any, infer X, any, any> ? X : never;
|
|
58
|
-
type 获得接口逻辑错误类型<A> = A extends 接口逻辑<any, any, infer X, any> ? X : never;
|
|
59
|
-
type 获得接口逻辑正确类型<A> = A extends 接口逻辑<any, any, any, infer X> ? X : never;
|
|
60
|
-
|
|
61
|
-
export { type 任意接口逻辑, type 可调用接口逻辑, 接口逻辑, type 接口逻辑正确类型, type 接口逻辑错误类型, type 接口逻辑附加参数类型, type 获得接口逻辑插件类型, type 获得接口逻辑正确类型, type 获得接口逻辑错误类型, type 获得接口逻辑附加参数类型 };
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
@@ -1,40 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import 'express';
|
|
4
|
-
import '../plugin/plug.js';
|
|
1
|
+
import '@lsby/ts-fp-data';
|
|
2
|
+
export { s as 任意接口结果转换器, t as 常用延时直接形式转换器, 常 as 常用形式转换器, r as 接口结果转换器 } from '../interface-base-D-Zxt7-a.js';
|
|
5
3
|
import 'zod';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
declare abstract class 接口结果转换器<实现错误类型 extends ________, 实现正确类型 extends ________$1, 接口错误形式, 接口正确形式> {
|
|
11
|
-
protected readonly __类型保持符号?: [实现错误类型, 实现正确类型, 接口错误形式, 接口正确形式];
|
|
12
|
-
abstract 实现(数据: Either<实现错误类型, 实现正确类型>): 接口错误形式 | 接口正确形式;
|
|
13
|
-
}
|
|
14
|
-
type 任意接口结果转换器 = 接口结果转换器<any, any, any, any>;
|
|
15
|
-
declare class 常用形式转换器<实现错误类型 extends ________, 实现正确类型 extends ________$1> extends 接口结果转换器<实现错误类型, 实现正确类型, {
|
|
16
|
-
status: 'fail';
|
|
17
|
-
data: 实现错误类型;
|
|
18
|
-
}, {
|
|
19
|
-
status: 'success';
|
|
20
|
-
data: 实现正确类型;
|
|
21
|
-
}> {
|
|
22
|
-
实现(数据: Either<实现错误类型, 实现正确类型>): {
|
|
23
|
-
status: 'fail';
|
|
24
|
-
data: 实现错误类型;
|
|
25
|
-
} | {
|
|
26
|
-
status: 'success';
|
|
27
|
-
data: 实现正确类型;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
declare class 延时直接形式转换器<T, 实现错误类型 extends ________, 实现正确类型 extends Record<'fn', () => T>> extends 接口结果转换器<实现错误类型, 实现正确类型, {
|
|
31
|
-
status: 'fail';
|
|
32
|
-
data: 实现错误类型;
|
|
33
|
-
}, T> {
|
|
34
|
-
实现(数据: Either<实现错误类型, 实现正确类型>): {
|
|
35
|
-
status: 'fail';
|
|
36
|
-
data: 实现错误类型;
|
|
37
|
-
} | T;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export { type 任意接口结果转换器, 常用形式转换器, 延时直接形式转换器, 接口结果转换器 };
|
|
4
|
+
import 'express';
|
|
5
|
+
import '../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
|
+
常用延时直接形式转换器,
|
|
2
3
|
常用形式转换器,
|
|
3
|
-
延时直接形式转换器,
|
|
4
4
|
接口结果转换器
|
|
5
|
-
} from "../chunk-
|
|
5
|
+
} from "../chunk-6I3OJQWA.js";
|
|
6
6
|
export {
|
|
7
|
+
\u5E38\u7528\u5EF6\u65F6\u76F4\u63A5\u5F62\u5F0F\u8F6C\u6362\u5668,
|
|
7
8
|
\u5E38\u7528\u5F62\u5F0F\u8F6C\u6362\u5668,
|
|
8
|
-
\u5EF6\u65F6\u76F4\u63A5\u5F62\u5F0F\u8F6C\u6362\u5668,
|
|
9
9
|
\u63A5\u53E3\u7ED3\u679C\u8F6C\u6362\u5668
|
|
10
10
|
};
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { Task, Either } from '@lsby/ts-fp-data';
|
|
3
|
+
import { Request, Response } from 'express';
|
|
4
|
+
import { 联合转元组 as _____ } from './help/help.js';
|
|
5
|
+
import { Log } from '@lsby/ts-log';
|
|
6
|
+
import * as http from 'node:http';
|
|
7
|
+
|
|
8
|
+
type 请求附加参数类型 = {
|
|
9
|
+
log: Log;
|
|
10
|
+
};
|
|
11
|
+
declare class 服务器 {
|
|
12
|
+
private 接口们;
|
|
13
|
+
private 端口;
|
|
14
|
+
private 静态资源路径?;
|
|
15
|
+
private 默认get文件路径?;
|
|
16
|
+
private log;
|
|
17
|
+
constructor(接口们: 任意接口[], 端口: number, 静态资源路径?: string | undefined, 默认get文件路径?: string | undefined);
|
|
18
|
+
run(): Promise<{
|
|
19
|
+
ip: string[];
|
|
20
|
+
api: string[];
|
|
21
|
+
server: http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
|
|
22
|
+
}>;
|
|
23
|
+
private 处理请求;
|
|
24
|
+
private 处理静态资源;
|
|
25
|
+
private 处理接口逻辑;
|
|
26
|
+
private 初始化WebSocket;
|
|
27
|
+
private 关闭WebSocket连接;
|
|
28
|
+
private 获取本地地址;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* 类似express中的中间件, 做一些前置过程, 例如解析参数, 解析文件等.
|
|
33
|
+
*
|
|
34
|
+
* 可以被注入在"接口逻辑"中, 为其提供前置数据.
|
|
35
|
+
*/
|
|
36
|
+
declare class 插件<Obj extends z.AnyZodObject> {
|
|
37
|
+
private 类型;
|
|
38
|
+
private 实现;
|
|
39
|
+
protected readonly __类型保持符号?: Obj;
|
|
40
|
+
constructor(类型: Obj, 实现: (req: Request, res: Response, 附加参数: 请求附加参数类型) => Promise<z.infer<Obj>>);
|
|
41
|
+
获得类型(): Obj;
|
|
42
|
+
运行(req: Request, res: Response, 附加参数: 请求附加参数类型): Promise<z.infer<Obj>>;
|
|
43
|
+
}
|
|
44
|
+
type 任意插件 = 插件<any>;
|
|
45
|
+
type 包装插件项<A> = Task<A>;
|
|
46
|
+
type 插件项类型 = 包装插件项<插件<z.AnyZodObject>>;
|
|
47
|
+
type 取Task插件内部类型<A> = A extends Task<插件<infer x>> ? x : never;
|
|
48
|
+
type 取Task插件类型<A> = A extends Task<infer x> ? x : never;
|
|
49
|
+
type 取插件内部ts类型<A> = A extends 插件<infer x> ? z.infer<x> : never;
|
|
50
|
+
type 合并插件结果<Arr extends Array<插件项类型>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<插件项类型> ? z.infer<取Task插件内部类型<插件项>> & 合并插件结果<xs> : {} : {} : {};
|
|
51
|
+
|
|
52
|
+
type 接口逻辑错误类型 = string | never;
|
|
53
|
+
type 接口逻辑正确类型 = Record<string, any>;
|
|
54
|
+
type 接口逻辑附加参数类型 = Record<string, any>;
|
|
55
|
+
/**
|
|
56
|
+
* # 接口逻辑的基础抽象类
|
|
57
|
+
*
|
|
58
|
+
* - 该类表示一个接口的逻辑执行过程, 包括插件的运行, 结果的合并以及业务逻辑的实际执行.
|
|
59
|
+
* - 插件提供预处理功能, 例如参数解析等, 它通过解析express的上下文, 获得结果并提供给实现.
|
|
60
|
+
* - 实现函数负责业务逻辑的主要操作, 例如数据库查询等, 它接收插件的处理结果, 并返回计算结果(用Either表示).
|
|
61
|
+
* - 运行时除了获得express上下文外, 还可以接收自定义参数, 称为`逻辑附加参数`.
|
|
62
|
+
* - 每个接口逻辑实例可以通过一些方法与其他接口逻辑合并, 形成一个复杂的流程.
|
|
63
|
+
*
|
|
64
|
+
* ## 构造:
|
|
65
|
+
*
|
|
66
|
+
* - 可以通过继承该抽象类, 并实现抽象函数来使用.
|
|
67
|
+
* - 也可以通过静态方法`构造`来直接进行构造.
|
|
68
|
+
*
|
|
69
|
+
* ## 组合
|
|
70
|
+
*
|
|
71
|
+
* 通过组合, 可以将简单的逻辑模块化, 并按需构建复杂的接口处理流程.
|
|
72
|
+
*
|
|
73
|
+
* ### 混合
|
|
74
|
+
*
|
|
75
|
+
* - 该类提供了`混合`方法, 用于将多个接口逻辑实例合成一个复合接口逻辑.
|
|
76
|
+
* - 组合的接口逻辑会按顺序依次被调用.
|
|
77
|
+
* - 如果某接口逻辑返回左值, 则整个结构将立即返回该左值.
|
|
78
|
+
* - 否则, 将右值内容注入上下文, 允许之后的接口逻辑通过`逻辑附加参数`访问它.
|
|
79
|
+
* - 最终将返回所有接口的结果的与.
|
|
80
|
+
* - 这类似于monad的do结构, 在该结构中, 每个运行结果都会被注入到全局上下文并消除monad包装, 而语句可以使用上下文的值.
|
|
81
|
+
*
|
|
82
|
+
* ### 其他组合方法用到再写
|
|
83
|
+
*/
|
|
84
|
+
declare abstract class 接口逻辑<插件类型 extends 插件项类型[], 逻辑附加参数类型 extends 接口逻辑附加参数类型, 错误类型 extends 接口逻辑错误类型, 返回类型 extends 接口逻辑正确类型> {
|
|
85
|
+
static 空逻辑(): 接口逻辑<[], {}, never, {}>;
|
|
86
|
+
static 构造<插件类型 extends 插件项类型[], 逻辑附加参数类型 extends 接口逻辑附加参数类型, 错误类型 extends 接口逻辑错误类型, 返回类型 extends 接口逻辑正确类型>(插件们: [...插件类型], 实现: (参数: 合并插件结果<插件类型>, 逻辑附加参数: 逻辑附加参数类型, 请求附加参数: 请求附加参数类型) => Promise<Either<错误类型, 返回类型>>): 接口逻辑<插件类型, 逻辑附加参数类型, 错误类型, 返回类型>;
|
|
87
|
+
protected readonly __类型保持符号?: [插件类型, 逻辑附加参数类型, 错误类型, 返回类型];
|
|
88
|
+
abstract 获得插件们(): [...插件类型];
|
|
89
|
+
abstract 实现(参数: 合并插件结果<插件类型>, 逻辑附加参数: 逻辑附加参数类型, 请求附加参数: 请求附加参数类型): Promise<Either<错误类型, 返回类型>>;
|
|
90
|
+
运行(req: Request, res: Response, 传入的逻辑附加参数: 逻辑附加参数类型, 传入的插件附加参数: 请求附加参数类型): Promise<Either<错误类型, 返回类型>>;
|
|
91
|
+
混合<输入的插件类型 extends 插件项类型[], 输入的错误类型 extends 接口逻辑错误类型, 输入的返回类型 extends 接口逻辑正确类型>(输入: 接口逻辑<输入的插件类型, 返回类型, 输入的错误类型, 输入的返回类型>): 接口逻辑<[
|
|
92
|
+
...插件类型,
|
|
93
|
+
...输入的插件类型
|
|
94
|
+
], 逻辑附加参数类型, 错误类型 | 输入的错误类型, 返回类型 & 输入的返回类型>;
|
|
95
|
+
}
|
|
96
|
+
type 任意接口逻辑 = 接口逻辑<any, any, any, any>;
|
|
97
|
+
type 可调用接口逻辑 = 接口逻辑<any, Record<string, never>, any, any>;
|
|
98
|
+
type 获得接口逻辑插件类型<A> = A extends 接口逻辑<infer X, any, any, any> ? X : never;
|
|
99
|
+
type 获得接口逻辑附加参数类型<A> = A extends 接口逻辑<any, infer X, any, any> ? X : never;
|
|
100
|
+
type 获得接口逻辑错误类型<A> = A extends 接口逻辑<any, any, infer X, any> ? X : never;
|
|
101
|
+
type 获得接口逻辑正确类型<A> = A extends 接口逻辑<any, any, any, infer X> ? X : never;
|
|
102
|
+
type 计算接口逻辑错误结果<接口逻辑> = _____<获得接口逻辑错误类型<接口逻辑>>;
|
|
103
|
+
type 计算接口逻辑正确结果<接口逻辑> = {
|
|
104
|
+
[k in keyof 获得接口逻辑正确类型<接口逻辑>]: 获得接口逻辑正确类型<接口逻辑>[k];
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* 描述接口逻辑返回的数据将以何种形式返回给前端.
|
|
109
|
+
*/
|
|
110
|
+
declare abstract class 接口结果转换器<实现错误类型 extends 接口逻辑错误类型, 实现正确类型 extends 接口逻辑正确类型, 接口错误形式, 接口正确形式> {
|
|
111
|
+
protected readonly __类型保持符号?: [实现错误类型, 实现正确类型, 接口错误形式, 接口正确形式];
|
|
112
|
+
abstract 实现(数据: Either<实现错误类型, 实现正确类型>): 接口错误形式 | 接口正确形式;
|
|
113
|
+
}
|
|
114
|
+
type 任意接口结果转换器 = 接口结果转换器<any, any, any, any>;
|
|
115
|
+
declare class 常用形式转换器<实现错误类型 extends 接口逻辑错误类型, 实现正确类型 extends 接口逻辑正确类型> extends 接口结果转换器<实现错误类型, 实现正确类型, {
|
|
116
|
+
status: 'fail';
|
|
117
|
+
data: 实现错误类型;
|
|
118
|
+
}, {
|
|
119
|
+
status: 'success';
|
|
120
|
+
data: 实现正确类型;
|
|
121
|
+
}> {
|
|
122
|
+
实现(数据: Either<实现错误类型, 实现正确类型>): {
|
|
123
|
+
status: 'fail';
|
|
124
|
+
data: 实现错误类型;
|
|
125
|
+
} | {
|
|
126
|
+
status: 'success';
|
|
127
|
+
data: 实现正确类型;
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
declare class 常用延时直接形式转换器<实现最终返回类型, 实现错误类型 extends 接口逻辑错误类型, 实现正确类型 extends () => 实现最终返回类型> extends 接口结果转换器<实现错误类型, 实现正确类型, {
|
|
131
|
+
status: 'fail';
|
|
132
|
+
data: 实现错误类型;
|
|
133
|
+
}, 实现最终返回类型> {
|
|
134
|
+
实现(数据: Either<实现错误类型, 实现正确类型>): {
|
|
135
|
+
status: 'fail';
|
|
136
|
+
data: 实现错误类型;
|
|
137
|
+
} | 实现最终返回类型;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
type 接口路径类型 = string;
|
|
141
|
+
type 接口方法类型 = 'get' | 'post';
|
|
142
|
+
/**
|
|
143
|
+
* 接口的描述.
|
|
144
|
+
*/
|
|
145
|
+
declare class 接口<路径类型 extends 接口路径类型, 方法类型 extends 接口方法类型, 逻辑类型 extends 可调用接口逻辑, 接口错误形式Zod extends z.ZodTypeAny, 接口正确形式Zod extends z.ZodTypeAny, 接口结果转换器类型 extends 接口结果转换器<获得接口逻辑错误类型<逻辑类型>, 获得接口逻辑正确类型<逻辑类型>, z.infer<接口错误形式Zod>, z.infer<接口正确形式Zod>>> {
|
|
146
|
+
private 请求路径;
|
|
147
|
+
private 请求方法;
|
|
148
|
+
private 接口逻辑;
|
|
149
|
+
private 接口错误形式Zod;
|
|
150
|
+
private 接口正确形式Zod;
|
|
151
|
+
private 结果转换器;
|
|
152
|
+
protected readonly __类型保持符号?: [
|
|
153
|
+
路径类型,
|
|
154
|
+
方法类型,
|
|
155
|
+
逻辑类型,
|
|
156
|
+
接口错误形式Zod,
|
|
157
|
+
接口正确形式Zod,
|
|
158
|
+
接口结果转换器类型
|
|
159
|
+
];
|
|
160
|
+
constructor(请求路径: 路径类型, 请求方法: 方法类型, 接口逻辑: 逻辑类型, 接口错误形式Zod: 接口错误形式Zod, 接口正确形式Zod: 接口正确形式Zod, 结果转换器: 接口结果转换器类型);
|
|
161
|
+
获得路径(): 路径类型;
|
|
162
|
+
获得方法(): 方法类型;
|
|
163
|
+
获得逻辑(): 逻辑类型;
|
|
164
|
+
获得接口错误形式Zod(): 接口错误形式Zod;
|
|
165
|
+
获得接口正确形式Zod(): 接口正确形式Zod;
|
|
166
|
+
获得结果转换器(): 接口结果转换器类型;
|
|
167
|
+
}
|
|
168
|
+
type 任意接口 = 接口<any, any, any, any, any, any>;
|
|
169
|
+
type 获得接口路径类型<A> = A extends 接口<infer X, any, any, any, any, any> ? X : never;
|
|
170
|
+
type 获得接口方法类型<A> = A extends 接口<any, infer X, any, any, any, any> ? X : never;
|
|
171
|
+
type 获得接口逻辑类型<A> = A extends 接口<any, any, infer X, any, any, any> ? X : never;
|
|
172
|
+
type 获得接口错误形式<A> = A extends 接口<any, any, any, infer X, any, any> ? z.infer<X> : never;
|
|
173
|
+
type 获得接口正确形式<A> = A extends 接口<any, any, any, any, infer X, any> ? z.infer<X> : never;
|
|
174
|
+
type 获得接口结果转换器类型<A> = A extends 接口<any, any, any, any, any, infer X> ? X : never;
|
|
175
|
+
|
|
176
|
+
export { type 接口方法类型 as a, 接口 as b, type 获得接口方法类型 as c, type 获得接口逻辑类型 as d, type 获得接口错误形式 as e, type 获得接口正确形式 as f, type 获得接口结果转换器类型 as g, type 接口逻辑错误类型 as h, type 接口逻辑正确类型 as i, type 接口逻辑附加参数类型 as j, 接口逻辑 as k, type 任意接口逻辑 as l, type 获得接口逻辑插件类型 as m, type 获得接口逻辑附加参数类型 as n, type 获得接口逻辑错误类型 as o, type 获得接口逻辑正确类型 as p, type 计算接口逻辑正确结果 as q, 接口结果转换器 as r, type 任意接口结果转换器 as s, 常用延时直接形式转换器 as t, type 任意插件 as u, type 插件项类型 as v, type 取Task插件类型 as w, type 取插件内部ts类型 as x, type 任意接口 as 任, type 包装插件项 as 包, type 取Task插件内部类型 as 取, type 可调用接口逻辑 as 可, type 合并插件结果 as 合, 常用形式转换器 as 常, type 接口路径类型 as 接, 插件 as 插, 服务器 as 服, type 获得接口路径类型 as 获, type 计算接口逻辑错误结果 as 计, type 请求附加参数类型 as 请 };
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { 插 as __ } from '../../interface-base-D-Zxt7-a.js';
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare let zod类型表示: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
7
10
|
declare class 中文路径支持插件 extends __<typeof zod类型表示> {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { 插 as __ } from '../../interface-base-D-Zxt7-a.js';
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare class 自定义数据插件<Data extends z.AnyZodObject> extends __<Data> {
|
|
7
10
|
private log;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { AnyZodObject, z } from 'zod';
|
|
3
|
-
import {
|
|
3
|
+
import { 插 as __, 包 as _____, v as _____$1, 取 as _Task______, m as __________ } from '../../interface-base-D-Zxt7-a.js';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare class JSON解析插件<Result extends AnyZodObject> extends __<Result> {
|
|
7
10
|
private log;
|
|
@@ -10,5 +13,6 @@ declare class JSON解析插件<Result extends AnyZodObject> extends __<Result> {
|
|
|
10
13
|
type 任意JSON解析插件 = JSON解析插件<any>;
|
|
11
14
|
type 任意JSON解析插件项 = _____<任意JSON解析插件>;
|
|
12
15
|
type 合并JSON插件结果<Arr extends Array<_____$1>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<_____$1> ? 插件项 extends 任意JSON解析插件项 ? z.infer<_Task______<插件项>> & 合并JSON插件结果<xs> : 合并JSON插件结果<xs> : {} : {} : {};
|
|
16
|
+
type 计算接口逻辑JSON参数<接口逻辑> = 合并JSON插件结果<__________<接口逻辑>>;
|
|
13
17
|
|
|
14
|
-
export { JSON解析插件, type 任意JSON解析插件, type 任意JSON解析插件项, type 合并JSON
|
|
18
|
+
export { JSON解析插件, type 任意JSON解析插件, type 任意JSON解析插件项, type 合并JSON插件结果, type 计算接口逻辑JSON参数 };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
JSON解析插件
|
|
3
|
-
} from "../../chunk-
|
|
3
|
+
} from "../../chunk-GKEZ4UTO.js";
|
|
4
4
|
import "../../chunk-43GZE5YL.js";
|
|
5
|
-
import "../../chunk-
|
|
6
|
-
import "../../chunk-
|
|
5
|
+
import "../../chunk-RYGSLVLS.js";
|
|
6
|
+
import "../../chunk-LDWZKZLU.js";
|
|
7
7
|
export {
|
|
8
8
|
JSON\u89E3\u6790\u63D2\u4EF6
|
|
9
9
|
};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { 插 as __ } from '../../interface-base-D-Zxt7-a.js';
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare let zod类型表示: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
7
10
|
declare class 调试请求头插件 extends __<typeof zod类型表示> {
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { 插 as __ } from '../../interface-base-D-Zxt7-a.js';
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare let zod类型表示: z.ZodObject<{
|
|
7
10
|
sendFile: z.ZodFunction<z.ZodTuple<[z.ZodType<Buffer, z.ZodTypeDef, Buffer>], null>, z.ZodType<Buffer, z.ZodTypeDef, Buffer>>;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import {
|
|
3
|
+
import { 插 as __ } from '../../interface-base-D-Zxt7-a.js';
|
|
4
4
|
import '@lsby/ts-fp-data';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare class 表单解析插件<Result extends z.AnyZodObject> extends __<Result> {
|
|
7
10
|
private log;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import {
|
|
2
|
+
import { 插 as __, 包 as _____, v as _____$1, w as _Task____ } from '../../interface-base-D-Zxt7-a.js';
|
|
3
3
|
import '@lsby/ts-fp-data';
|
|
4
4
|
import 'express';
|
|
5
|
+
import '../../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
5
8
|
|
|
6
9
|
declare class WebSocket插件<信息 extends z.AnyZodObject | z.ZodUnion<any>> extends __<z.ZodObject<{
|
|
7
10
|
ws操作: z.ZodUnion<[
|
|
@@ -1,29 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* 类似express中的中间件, 做一些前置过程, 例如解析参数, 解析文件等.
|
|
10
|
-
*
|
|
11
|
-
* 可以被注入在"接口逻辑"中, 为其提供前置数据.
|
|
12
|
-
*/
|
|
13
|
-
declare class 插件<Obj extends z.AnyZodObject> {
|
|
14
|
-
private 类型;
|
|
15
|
-
private 实现;
|
|
16
|
-
protected readonly __类型保持符号?: Obj;
|
|
17
|
-
constructor(类型: Obj, 实现: (req: Request, res: Response, 附加参数: 插件附加参数) => Promise<z.infer<Obj>>);
|
|
18
|
-
获得类型(): Obj;
|
|
19
|
-
运行(req: Request, res: Response, 附加参数: 插件附加参数): Promise<z.infer<Obj>>;
|
|
20
|
-
}
|
|
21
|
-
type 任意插件 = 插件<any>;
|
|
22
|
-
type 包装插件项<A> = Task<A>;
|
|
23
|
-
type 插件项类型 = 包装插件项<插件<z.AnyZodObject>>;
|
|
24
|
-
type 取Task插件内部类型<A> = A extends Task<插件<infer x>> ? x : never;
|
|
25
|
-
type 取Task插件类型<A> = A extends Task<infer x> ? x : never;
|
|
26
|
-
type 取插件内部ts类型<A> = A extends 插件<infer x> ? z.infer<x> : never;
|
|
27
|
-
type 合并插件结果<Arr extends Array<插件项类型>> = Arr extends [] ? {} : Arr extends [infer x, ...infer xs] ? x extends infer 插件项 ? xs extends Array<插件项类型> ? z.infer<取Task插件内部类型<插件项>> & 合并插件结果<xs> : {} : {} : {};
|
|
28
|
-
|
|
29
|
-
export { type 任意插件, type 包装插件项, type 取Task插件内部类型, type 取Task插件类型, type 取插件内部ts类型, type 合并插件结果, 插件, type 插件附加参数, type 插件项类型 };
|
|
1
|
+
import '@lsby/ts-fp-data';
|
|
2
|
+
import 'express';
|
|
3
|
+
import 'zod';
|
|
4
|
+
export { u as 任意插件, 包 as 包装插件项, 取 as 取Task插件内部类型, w as 取Task插件类型, x as 取插件内部ts类型, 合 as 合并插件结果, 插 as 插件, v as 插件项类型 } from '../interface-base-D-Zxt7-a.js';
|
|
5
|
+
import '../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
@@ -1,30 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import '@lsby/ts-log';
|
|
2
|
+
import 'node:http';
|
|
3
|
+
export { 服 as 服务器, 请 as 请求附加参数类型 } from '../interface-base-D-Zxt7-a.js';
|
|
3
4
|
import 'zod';
|
|
4
|
-
import '../interface/interface-logic.js';
|
|
5
5
|
import '@lsby/ts-fp-data';
|
|
6
6
|
import 'express';
|
|
7
|
-
import '../
|
|
8
|
-
import '../interface/interface-result.js';
|
|
9
|
-
|
|
10
|
-
declare class 服务器 {
|
|
11
|
-
private 接口们;
|
|
12
|
-
private 端口;
|
|
13
|
-
private 静态资源路径?;
|
|
14
|
-
private 默认get文件路径?;
|
|
15
|
-
private log;
|
|
16
|
-
constructor(接口们: ____[], 端口: number, 静态资源路径?: string | undefined, 默认get文件路径?: string | undefined);
|
|
17
|
-
run(): Promise<{
|
|
18
|
-
ip: string[];
|
|
19
|
-
api: string[];
|
|
20
|
-
server: http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
|
|
21
|
-
}>;
|
|
22
|
-
private 处理请求;
|
|
23
|
-
private 处理静态资源;
|
|
24
|
-
private 处理接口逻辑;
|
|
25
|
-
private 初始化WebSocket;
|
|
26
|
-
private 关闭WebSocket连接;
|
|
27
|
-
private 获取本地地址;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
export { 服务器 };
|
|
7
|
+
import '../help/help.js';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { 接 as ______, a as ______$1, k as ____, b as __, 常 as _______, o as __________, p as __________$1 } from '../interface-base-D-Zxt7-a.js';
|
|
3
|
+
import '@lsby/ts-fp-data';
|
|
4
|
+
import 'express';
|
|
5
|
+
import '../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
8
|
+
|
|
9
|
+
declare class 常用形式接口封装<路径类型 extends ______, 方法类型 extends ______$1, 逻辑类型 extends ____<any, Record<string, never>, z.infer<接口错误形式Zod>, z.infer<接口正确形式Zod>>, 接口错误形式Zod extends z.ZodTypeAny, 接口正确形式Zod extends z.ZodTypeAny> extends __<路径类型, 方法类型, 逻辑类型, z.ZodObject<{
|
|
10
|
+
status: z.ZodLiteral<'fail'>;
|
|
11
|
+
data: 接口错误形式Zod;
|
|
12
|
+
}>, z.ZodObject<{
|
|
13
|
+
status: z.ZodLiteral<'success'>;
|
|
14
|
+
data: 接口正确形式Zod;
|
|
15
|
+
}>, _______<__________<逻辑类型>, __________$1<逻辑类型>>> {
|
|
16
|
+
constructor(请求路径: 路径类型, 请求方法: 方法类型, 接口逻辑: 逻辑类型, 逻辑错误类型Zod: 接口错误形式Zod, 逻辑正确类型Zod: 接口正确形式Zod);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { 常用形式接口封装 };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { 接 as ______, a as ______$1, k as ____, b as __, t as ___________, o as __________, p as __________$1 } from '../interface-base-D-Zxt7-a.js';
|
|
3
|
+
import '@lsby/ts-fp-data';
|
|
4
|
+
import 'express';
|
|
5
|
+
import '../help/help.js';
|
|
6
|
+
import '@lsby/ts-log';
|
|
7
|
+
import 'node:http';
|
|
8
|
+
|
|
9
|
+
declare class 常用延时直接形式接口封装<路径类型 extends ______, 方法类型 extends ______$1, 逻辑类型 extends ____<any, Record<string, never>, z.infer<接口错误形式Zod>, () => z.infer<接口正确形式Zod>>, 接口错误形式Zod extends z.ZodTypeAny, 接口正确形式Zod extends z.ZodTypeAny> extends __<路径类型, 方法类型, 逻辑类型, z.ZodObject<{
|
|
10
|
+
status: z.ZodLiteral<'fail'>;
|
|
11
|
+
data: 接口错误形式Zod;
|
|
12
|
+
}>, 接口正确形式Zod, ___________<boolean, __________<逻辑类型>, __________$1<逻辑类型>>> {
|
|
13
|
+
constructor(请求路径: 路径类型, 请求方法: 方法类型, 接口逻辑: 逻辑类型, 逻辑错误类型Zod: 接口错误形式Zod, 逻辑正确类型Zod: 接口正确形式Zod);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export { 常用延时直接形式接口封装 };
|