@mingzey/typedrpc 1.0.0 → 1.0.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/api.d.ts +8 -8
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +2 -2
- package/dist/api.js.map +1 -1
- package/dist/client.d.ts +18 -18
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +10 -10
- package/dist/client.js.map +1 -1
- package/dist/connecitons/basic.d.ts +9 -9
- package/dist/connecitons/basic.d.ts.map +1 -1
- package/dist/connecitons/basic.js +3 -3
- package/dist/connecitons/basic.js.map +1 -1
- package/dist/connecitons/http.d.ts +13 -13
- package/dist/connecitons/http.d.ts.map +1 -1
- package/dist/connecitons/http.js +10 -10
- package/dist/connecitons/http.js.map +1 -1
- package/dist/connecitons/socket.d.ts +7 -7
- package/dist/connecitons/socket.d.ts.map +1 -1
- package/dist/connecitons/socket.js +8 -8
- package/dist/connecitons/socket.js.map +1 -1
- package/dist/connecitons/socketio.d.ts +7 -7
- package/dist/connecitons/socketio.d.ts.map +1 -1
- package/dist/connecitons/socketio.js +8 -8
- package/dist/connecitons/socketio.js.map +1 -1
- package/dist/connection.d.ts +4 -4
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +4 -4
- package/dist/connection.js.map +1 -1
- package/dist/context.d.ts +10 -10
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +1 -1
- package/dist/context.js.map +1 -1
- package/dist/core.d.ts +16 -16
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +11 -11
- package/dist/core.js.map +1 -1
- package/dist/define.d.ts +8 -8
- package/dist/define.d.ts.map +1 -1
- package/dist/define.js +15 -15
- package/dist/define.js.map +1 -1
- package/dist/handler.d.ts +16 -16
- package/dist/handler.d.ts.map +1 -1
- package/dist/handler.js +18 -18
- package/dist/handler.js.map +1 -1
- package/dist/index.d.ts +14 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +13 -13
- package/dist/index.js.map +1 -1
- package/dist/packet.d.ts +9 -9
- package/dist/packet.d.ts.map +1 -1
- package/dist/packet.js +5 -5
- package/dist/packet.js.map +1 -1
- package/dist/server.d.ts +18 -18
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +8 -8
- package/dist/server.js.map +1 -1
- package/dist/test/authorization.js +16 -16
- package/dist/test/authorization.js.map +1 -1
- package/dist/test/basic.js +6 -6
- package/dist/test/basic.js.map +1 -1
- package/dist/test/context.js +12 -12
- package/dist/test/context.js.map +1 -1
- package/dist/test/expressmix.d.ts.map +1 -1
- package/dist/test/expressmix.js +7 -7
- package/dist/test/expressmix.js.map +1 -1
- package/dist/test/socket.js +8 -8
- package/dist/test/socket.js.map +1 -1
- package/dist/test/socketio.d.ts +12 -0
- package/dist/test/socketio.d.ts.map +1 -0
- package/dist/test/socketio.js +77 -0
- package/dist/test/socketio.js.map +1 -0
- package/dist/test.js +3 -3
- package/dist/test.js.map +1 -1
- package/dist/utils.d.ts +9 -9
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js.map +1 -1
- package/package.json +4 -3
package/dist/test/socket.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/test/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/test/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,gCAAgC,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElH,MAAM,eAAe,GAAG,IAAI,iBAI1B,CAAA;AAEF,MAAM,eAAe,GAAG,IAAI,iBAI1B,CAAA;AAEF,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;IAC9B,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,eAAe;IACvB,UAAU,EAAE;QACR,QAAQ,EAAE,IAAI,gCAAgC,EAAE;KACnD;CACJ,CAAC,CAAA;AAEF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE;IACvB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACd,OAAO,CAAC,GAAG,CAAC,CAAC;IACjB,CAAC;CACJ,CAAC,CAAA;AAEF,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC;IAC9B,KAAK,EAAE,eAAe;IACtB,MAAM,EAAE,eAAe;IACvB,UAAU,EAAE;QACR,QAAQ,EAAE,IAAI,gCAAgC,EAAE;KACnD;CACJ,CAAC,CAAA;AAEF,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE;IAC1B,OAAO,EAAE,GAAG,EAAE;QACV,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,CAAC;CACJ,CAAC,CAAA;AAGF,MAAM,UAAW,SAAQ,QAAQ;IAC7B,IAAI;QACA,OAAO,QAAQ,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,GAAG;QACL,IAAI,eAAiC,CAAC;QACtC,IAAI,eAAiC,CAAC;QAEtC,eAAe,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;YAC/C,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE;gBACzD,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBACtD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpD,IAAI,MAAM,IAAI,IAAI,EAAE;oBAChB,OAAO,CAAC,IAAI,CAAC,CAAC;iBACjB;qBAAM;oBACH,OAAO,CAAC,KAAK,CAAC,CAAC;iBAClB;YACL,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QAEF,MAAM,MAAM,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,IAAI;SACb,CAAC,CAAA;QAEF,eAAe,GAAG,IAAI,OAAO,CAAU,KAAK,EAAE,OAAO,EAAE,EAAE;YACrD,MAAM,kBAAkB,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACrD,IAAI,MAAM,IAAI,CAAC,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,CAAC;aACjB;iBAAM;gBACH,OAAO,CAAC,KAAK,CAAC,CAAC;aAClB;QACL,CAAC,CAAC,CAAA;QAEF,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC;QAC7C,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC;QAC7C,OAAO,cAAc,IAAI,cAAc,CAAC;IAC5C,CAAC;IACM,KAAK,CAAC,OAAO;QAChB,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CAEJ;AAED,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 测试全双工通信实现双向调用
|
|
3
|
+
* TypedRPC的默认实现是基于http的,全双工必须实现自定义的Provider
|
|
4
|
+
* 这里使用socket.io作为Provider的底层通讯
|
|
5
|
+
*/
|
|
6
|
+
import { TestCase } from "./TestCase.js";
|
|
7
|
+
export default class TestSocketIO extends TestCase {
|
|
8
|
+
name(): string;
|
|
9
|
+
run(): Promise<boolean>;
|
|
10
|
+
finally(): Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=socketio.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socketio.d.ts","sourceRoot":"","sources":["../../src/test/socketio.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AA+CzC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,QAAQ;IAC9C,IAAI,IAAI,MAAM;IAGR,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IAmChB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAGxC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 测试全双工通信实现双向调用
|
|
3
|
+
* TypedRPC的默认实现是基于http的,全双工必须实现自定义的Provider
|
|
4
|
+
* 这里使用socket.io作为Provider的底层通讯
|
|
5
|
+
*/
|
|
6
|
+
import { TestCase } from "./TestCase.js";
|
|
7
|
+
import { TypedRPCAPIDefine, TypedRPCConnectionProviderSocketIO } from "../index.js";
|
|
8
|
+
import { TypedRPCServer } from "../index.js";
|
|
9
|
+
import { TypedRPCClient } from "../index.js";
|
|
10
|
+
const ServerAPIDefine = new TypedRPCAPIDefine;
|
|
11
|
+
const ClientAPIDefine = new TypedRPCAPIDefine;
|
|
12
|
+
const server = new TypedRPCServer({
|
|
13
|
+
local: ServerAPIDefine,
|
|
14
|
+
remote: ClientAPIDefine,
|
|
15
|
+
connection: {
|
|
16
|
+
provider: new TypedRPCConnectionProviderSocketIO(),
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
server.hook('math', 'add', {
|
|
20
|
+
handler: (a, b) => {
|
|
21
|
+
return a + b;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
const client = new TypedRPCClient({
|
|
25
|
+
local: ClientAPIDefine,
|
|
26
|
+
remote: ServerAPIDefine,
|
|
27
|
+
connection: {
|
|
28
|
+
provider: new TypedRPCConnectionProviderSocketIO(),
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
client.hook('status', 'time', {
|
|
32
|
+
handler: () => {
|
|
33
|
+
return Date.now();
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
export default class TestSocketIO extends TestCase {
|
|
37
|
+
name() {
|
|
38
|
+
return "SocketIO";
|
|
39
|
+
}
|
|
40
|
+
async run() {
|
|
41
|
+
let requestToServer;
|
|
42
|
+
let requestToClient;
|
|
43
|
+
requestToClient = new Promise((resolve) => {
|
|
44
|
+
server.emitter.on('connection', async (connectionToClient) => {
|
|
45
|
+
const apiToClient = server.getAPI(connectionToClient);
|
|
46
|
+
const result = await apiToClient.status.time.call();
|
|
47
|
+
if (result != null) {
|
|
48
|
+
resolve(true);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
resolve(false);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
await server.listen({
|
|
56
|
+
port: 3698,
|
|
57
|
+
});
|
|
58
|
+
requestToServer = new Promise(async (resolve) => {
|
|
59
|
+
const connectionToServer = await client.connect("localhost:3698");
|
|
60
|
+
const apiToServer = client.getAPI(connectionToServer);
|
|
61
|
+
const result = await apiToServer.math.add.call(1, 2);
|
|
62
|
+
if (result == 3) {
|
|
63
|
+
resolve(true);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
resolve(false);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
const resultToClient = await requestToClient;
|
|
70
|
+
const resultToServer = await requestToServer;
|
|
71
|
+
return resultToClient && resultToServer;
|
|
72
|
+
}
|
|
73
|
+
async finally() {
|
|
74
|
+
await server.close();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=socketio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socketio.js","sourceRoot":"","sources":["../../src/test/socketio.ts"],"names":[],"mappings":"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"}
|
package/dist/test.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const testList = [
|
|
2
2
|
import('./test/basic.js'),
|
|
3
3
|
import('./test/context.js'),
|
|
4
|
-
import('./test/
|
|
4
|
+
import('./test/socketio.js'),
|
|
5
5
|
import('./test/authorization.js'),
|
|
6
6
|
import('./test/expressmix.js'),
|
|
7
7
|
import('./test/socket.js'),
|
|
@@ -24,9 +24,9 @@ async function main() {
|
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
main().then(() => {
|
|
27
|
-
console.log('
|
|
27
|
+
console.log('TypedRPC test finished.');
|
|
28
28
|
}).catch((e) => {
|
|
29
|
-
console.log(`
|
|
29
|
+
console.log(`TypedRPC test failed. ${e}`);
|
|
30
30
|
throw e;
|
|
31
31
|
});
|
|
32
32
|
export {};
|
package/dist/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"AAEA,MAAM,QAAQ,GAAG;IACb,MAAM,CAAC,iBAAiB,CAAC;IACzB,MAAM,CAAC,mBAAmB,CAAC;IAC3B,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"AAEA,MAAM,QAAQ,GAAG;IACb,MAAM,CAAC,iBAAiB,CAAC;IACzB,MAAM,CAAC,mBAAmB,CAAC;IAC3B,MAAM,CAAC,oBAAoB,CAAC;IAC5B,MAAM,CAAC,yBAAyB,CAAC;IACjC,MAAM,CAAC,sBAAsB,CAAC;IAC9B,MAAM,CAAC,kBAAkB,CAAC;CAC7B,CAAA;AAED,KAAK,UAAU,IAAI;IACf,KAAI,IAAI,CAAC,IAAI,QAAQ,EAAC;QAClB,IAAI,GAAG,GAAG,MAAM,CAAC,CAAC;QAClB,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAc,CAAC;QAC3C,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,CAAC,CAAC;QACZ,CAAC,CAAC,CAAA;QACF,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACrB,IAAG,MAAM,EAAC;YACN,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACvD;aAAI;YACD,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACvD;KAEJ;AACL,CAAC;AAED,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;IACb,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACX,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,CAAC,CAAC;AACZ,CAAC,CAAC,CAAA"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { TypedRPCAPIDefine } from "./define.js";
|
|
2
|
+
import type { TypedRPCRequestPacket, TypedRPCResponsePacket } from "./packet.js";
|
|
3
3
|
export type FunctionTypeToPromiseFunctionType<T extends (...args: any[]) => any> = T extends (...args: infer P) => Promise<infer R> ? (...args: P) => Promise<R | undefined> : T extends (...args: infer P) => infer R ? (...args: P) => Promise<R | undefined> : never;
|
|
4
|
-
export type
|
|
4
|
+
export type TypedRPCDefineToTypedRPCAPI<T extends TypedRPCAPIDefine<any>> = T extends TypedRPCAPIDefine<infer U> ? {
|
|
5
5
|
[S in keyof U]: {
|
|
6
6
|
[M in keyof U[S]]: {
|
|
7
7
|
/** 调用该方法 */
|
|
@@ -9,8 +9,8 @@ export type TypeRPCDefineToTypeRPCAPI<T extends TypeRPCAPIDefine<any>> = T exten
|
|
|
9
9
|
/** 获取方法id */
|
|
10
10
|
request: (config: {
|
|
11
11
|
args: Parameters<U[S][M]>;
|
|
12
|
-
callback?: (result: ReturnType<U[S][M]>, req:
|
|
13
|
-
error?: (error: any, req:
|
|
12
|
+
callback?: (result: ReturnType<U[S][M]>, req: TypedRPCRequestPacket, res: TypedRPCResponsePacket) => void;
|
|
13
|
+
error?: (error: any, req: TypedRPCRequestPacket, res: TypedRPCResponsePacket) => void;
|
|
14
14
|
}) => string;
|
|
15
15
|
id: string;
|
|
16
16
|
/** 获取方法路径 */
|
|
@@ -18,10 +18,10 @@ export type TypeRPCDefineToTypeRPCAPI<T extends TypeRPCAPIDefine<any>> = T exten
|
|
|
18
18
|
};
|
|
19
19
|
};
|
|
20
20
|
} : never;
|
|
21
|
-
export type
|
|
22
|
-
export type
|
|
23
|
-
export type
|
|
24
|
-
export type
|
|
21
|
+
export type TypedRPCDefineServiceName<T extends TypedRPCAPIDefine<any>> = T extends TypedRPCAPIDefine<infer U> ? keyof U & string : never;
|
|
22
|
+
export type TypedRPCDefineMethodName<T extends TypedRPCAPIDefine<any>, S extends TypedRPCDefineServiceName<T>> = T extends TypedRPCAPIDefine<infer U> ? keyof U[S] & string : never;
|
|
23
|
+
export type TypedRPCDefineMethodBody<T extends TypedRPCAPIDefine<any>, S extends TypedRPCDefineServiceName<T>, M extends TypedRPCDefineMethodName<T, S>> = T extends TypedRPCAPIDefine<infer U> ? U[S][M] : never;
|
|
24
|
+
export type TypedRPCDefineServiceInstance<T extends TypedRPCAPIDefine<any>, S extends TypedRPCDefineServiceName<T>> = T extends TypedRPCAPIDefine<infer U> ? U[S] : never;
|
|
25
25
|
export type TypedEmitterEvents = {
|
|
26
26
|
[key: string]: (...args: any[]) => void;
|
|
27
27
|
};
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAEjF,MAAM,MAAM,iCAAiC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,IAC3E,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,GAC5C,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GACxC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC,GACrC,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GACxC,KAAK,CACV;AAED,MAAM,MAAM,2BAA2B,CAAC,CAAC,SAAS,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAC5G;KACK,CAAC,IAAI,MAAM,CAAC,GAAE;SACV,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAE;YACd,YAAY;YACZ,IAAI,EAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,aAAa;YACb,OAAO,EAAC,CAAC,MAAM,EAAC;gBACZ,IAAI,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzB,QAAQ,CAAC,EAAC,CAAC,MAAM,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,GAAG,EAAC,qBAAqB,EAAC,GAAG,EAAC,sBAAsB,KAAK,IAAI,CAAC;gBACpG,KAAK,CAAC,EAAC,CAAC,KAAK,EAAC,GAAG,EAAC,GAAG,EAAC,qBAAqB,EAAC,GAAG,EAAC,sBAAsB,KAAK,IAAI,CAAC;aACnF,KAAK,MAAM,CAAC;YACb,EAAE,EAAC,MAAM,CAAC;YACV,aAAa;YACb,IAAI,EAAC,MAAM,CAAC;SACf;KACJ;CACJ,GACH,KAAK,CAAC;AAER,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAC1I,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,GAAE,KAAK,CAAC;AAClL,MAAM,MAAM,wBAAwB,CAAC,CAAC,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,EAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,EAAC,CAAC,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAC/M,MAAM,MAAM,6BAA6B,CAAC,CAAC,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;AAGzK,MAAM,MAAM,kBAAkB,GAAG;IAC7B,CAAC,GAAG,EAAC,MAAM,GAAE,CAAC,GAAG,IAAI,EAAC,GAAG,EAAE,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS,kBAAkB;IAElD,OAAO,CAAC,MAAM,CAA0C;IAExD,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAC,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;IAU3C,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAC,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;IAO5C,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAC,CAAC,EAAC,GAAG,IAAI,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IASxD,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAC,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;CAOhD;AAED,qBAAa,OAAO;IAEhB,OAAc,QAAQ,UAAiB;IAEvC,MAAM,CAAC,MAAM,IAAG,MAAM;IAIf,MAAM,IAAG,MAAM;CAMzB"}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAyCA,MAAM,OAAO,YAAY;IAEb,MAAM,GAAgC,IAAI,GAAG,EAAE,CAAC;IAExD,EAAE,CAAoB,KAAO,EAAC,QAAa;QACvC,IAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAyCA,MAAM,OAAO,YAAY;IAEb,MAAM,GAAgC,IAAI,GAAG,EAAE,CAAC;IAExD,EAAE,CAAoB,KAAO,EAAC,QAAa;QACvC,IAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC;YACvB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,GAAG,EAAE,CAAC,CAAC;SACpC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtC,OAAO,GAAG,EAAE;YACR,IAAI,CAAC,GAAG,CAAC,KAAK,EAAC,QAAQ,CAAC,CAAC;QAC7B,CAAC,CAAA;IACL,CAAC;IAED,GAAG,CAAoB,KAAO,EAAC,QAAa;QACxC,IAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC;YACvB,OAAO;SACV;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,CAAoB,KAAO,EAAC,GAAG,IAAqB;QACpD,IAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAC;YACvB,OAAO;SACV;QACD,KAAI,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAE,EAAC;YAC1C,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;SACrB;IACL,CAAC;IAED,IAAI,CAAoB,KAAO,EAAC,QAAa;QACzC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAqB,EAAE,EAAE;YACzC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,KAAK,EAAC,OAAe,CAAC,CAAC;QACpC,CAAC,CAAA;QACD,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,OAAe,CAAC,CAAC;IACnC,CAAC;CACJ;AAED,MAAM,OAAO,OAAO;IAET,MAAM,CAAC,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;IAEvC,MAAM,CAAC,MAAM;QACT,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IACrC,CAAC;IAEM,MAAM;QACT,aAAa;QACb,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC1C,OAAO,GAAG,SAAS,GAAG,MAAM,EAAE,CAAC;IACnC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mingzey/typedrpc",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "TypeScript-based RPC framework with support for multiple connection types including HTTP, Socket, and SocketIO or custom",
|
|
5
5
|
"author": "MingZeY <1552904342@qq.com>",
|
|
6
6
|
"keywords": [
|
|
7
|
-
"rpc",
|
|
7
|
+
"rpc",
|
|
8
|
+
"typescript"
|
|
8
9
|
],
|
|
9
|
-
"license":"MIT",
|
|
10
|
+
"license": "MIT",
|
|
10
11
|
"files": [
|
|
11
12
|
"dist/**/*"
|
|
12
13
|
],
|