@mingzey/typedrpc 1.1.9 → 1.1.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/connections/http.d.ts +12 -5
- package/dist/connections/http.d.ts.map +1 -1
- package/dist/connections/http.js +25 -5
- package/dist/connections/http.js.map +1 -1
- package/dist/connections/socket.d.ts +10 -0
- package/dist/connections/socket.d.ts.map +1 -1
- package/dist/connections/socket.js +22 -11
- package/dist/connections/socket.js.map +1 -1
- package/dist/connections/socketio.d.ts +25 -9
- package/dist/connections/socketio.d.ts.map +1 -1
- package/dist/connections/socketio.js +35 -18
- package/dist/connections/socketio.js.map +1 -1
- package/dist/utils.js +0 -45
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
2
|
import { TypedRPCConnection, TypedRPCConnectionProvider } from "./basic.js";
|
|
3
|
+
type SupportLibHTTP = typeof import('http');
|
|
4
|
+
type SupportLib = {
|
|
5
|
+
http?: Promise<SupportLibHTTP>;
|
|
6
|
+
fetch?: typeof fetch;
|
|
7
|
+
};
|
|
3
8
|
/** 基于http的connection和provider */
|
|
4
9
|
declare class TypedRPCConnectionHTTP extends TypedRPCConnection {
|
|
5
10
|
private config;
|
|
6
11
|
private id;
|
|
7
12
|
private closed;
|
|
8
13
|
constructor(config: {
|
|
14
|
+
lib?: SupportLib | undefined;
|
|
9
15
|
side: 'client' | 'server';
|
|
10
|
-
target?: string;
|
|
16
|
+
target?: string | undefined;
|
|
11
17
|
});
|
|
12
18
|
private makeId;
|
|
13
19
|
request(data: string): Promise<string>;
|
|
@@ -15,16 +21,17 @@ declare class TypedRPCConnectionHTTP extends TypedRPCConnection {
|
|
|
15
21
|
close(): boolean;
|
|
16
22
|
isClosed(): boolean;
|
|
17
23
|
}
|
|
18
|
-
type TypedRPCConnectionProviderHTTPServer = InstanceType<TypedImport_http['Server']>;
|
|
19
24
|
type TypedRPCConnectionProviderHTTPConfig = {
|
|
20
|
-
|
|
25
|
+
lib?: SupportLib;
|
|
26
|
+
server?: InstanceType<SupportLibHTTP['Server']>;
|
|
21
27
|
};
|
|
22
28
|
type TypedRPCConnectionProviderHTTPMiddleware = (req: any, res: any) => void;
|
|
23
29
|
declare class TypedRPCConnectionProviderHTTP extends TypedRPCConnectionProvider {
|
|
24
30
|
config: TypedRPCConnectionProviderHTTPConfig;
|
|
25
|
-
server:
|
|
31
|
+
server: InstanceType<SupportLibHTTP['Server']> | null;
|
|
26
32
|
private middlewares;
|
|
27
33
|
constructor(config?: TypedRPCConnectionProviderHTTPConfig);
|
|
34
|
+
private initLib;
|
|
28
35
|
use(middleware: TypedRPCConnectionProviderHTTPMiddleware): void;
|
|
29
36
|
private initServer;
|
|
30
37
|
private createServer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/connections/http.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/connections/http.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE5E,KAAK,cAAc,GAAG,cAAc,MAAM,CAAC,CAAC;AAC5C,KAAK,UAAU,GAAG;IACd,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACxB,CAAA;AAED,iCAAiC;AACjC,cAAM,sBAAuB,SAAQ,kBAAkB;IAKvC,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,EAAE,CAAS;IACnB,OAAO,CAAC,MAAM,CAAkB;gBAEZ,MAAM,EAAE;QACxB,GAAG,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;QAC7B,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;QAC1B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC/B;IAKD,OAAO,CAAC,MAAM;IAIR,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAwB5C,KAAK,IAAI,MAAM;IAIf,KAAK,IAAI,OAAO;IAKhB,QAAQ,IAAI,OAAO;CAItB;AAKD,KAAK,oCAAoC,GAAG;IACxC,GAAG,CAAC,EAAE,UAAU,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;CACnD,CAAA;AAED,KAAK,wCAAwC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;AAE7E,cAAM,8BAA+B,SAAQ,0BAA0B;IAE5D,MAAM,EAAE,oCAAoC,CAAC;IAC7C,MAAM,EAAE,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAQ;IACpE,OAAO,CAAC,WAAW,CAAkD;gBAEzD,MAAM,CAAC,EAAE,oCAAoC;IAczD,OAAO,CAAC,OAAO;IAiBR,GAAG,CAAC,UAAU,EAAE,wCAAwC;IAI/D,OAAO,CAAC,UAAU;YAqCJ,YAAY;IAQpB,MAAM,CAAC,MAAM,EAAE;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBpB,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAiBnB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CASjE;AAED,OAAO,EACH,sBAAsB,EACtB,8BAA8B,GACjC,CAAA"}
|
package/dist/connections/http.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { importTyped } from "../typedimport/default.js";
|
|
2
1
|
import { IdMaker } from "../utils.js";
|
|
3
2
|
import { TypedRPCConnection, TypedRPCConnectionProvider } from "./basic.js";
|
|
4
3
|
/** 基于http的connection和provider */
|
|
@@ -21,8 +20,11 @@ class TypedRPCConnectionHTTP extends TypedRPCConnection {
|
|
|
21
20
|
if (!this.config.target) {
|
|
22
21
|
throw new Error("Client connection must have target");
|
|
23
22
|
}
|
|
23
|
+
if (!this.config.lib?.fetch) {
|
|
24
|
+
throw new Error("fetch module is not found,try set config.lib.fetch to fetch or install fetch module");
|
|
25
|
+
}
|
|
24
26
|
// 发起请求
|
|
25
|
-
const response = await fetch(`http://${this.config.target}`, {
|
|
27
|
+
const response = await this.config.lib.fetch(`http://${this.config.target}`, {
|
|
26
28
|
method: 'POST',
|
|
27
29
|
body: data,
|
|
28
30
|
headers: {
|
|
@@ -53,11 +55,27 @@ class TypedRPCConnectionProviderHTTP extends TypedRPCConnectionProvider {
|
|
|
53
55
|
super();
|
|
54
56
|
const defaultConfig = {};
|
|
55
57
|
this.config = { ...defaultConfig, ...config };
|
|
58
|
+
this.initLib();
|
|
56
59
|
this.server = this.config.server || null;
|
|
57
60
|
if (this.server) {
|
|
58
61
|
this.initServer(this.server);
|
|
59
62
|
}
|
|
60
63
|
}
|
|
64
|
+
initLib() {
|
|
65
|
+
if (!this.config.lib) {
|
|
66
|
+
this.config.lib = {};
|
|
67
|
+
}
|
|
68
|
+
if (!this.config.lib.http) {
|
|
69
|
+
this.config.lib.http = import(/* @vite-ignore */ 'http' + '').catch(() => undefined);
|
|
70
|
+
}
|
|
71
|
+
if (!this.config.lib.fetch) {
|
|
72
|
+
try {
|
|
73
|
+
this.config.lib.fetch = fetch;
|
|
74
|
+
}
|
|
75
|
+
catch (e) {
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
61
79
|
use(middleware) {
|
|
62
80
|
this.middlewares.push(middleware);
|
|
63
81
|
}
|
|
@@ -80,6 +98,7 @@ class TypedRPCConnectionProviderHTTP extends TypedRPCConnectionProvider {
|
|
|
80
98
|
req.on('end', () => {
|
|
81
99
|
// 创建一个connection
|
|
82
100
|
const connection = new TypedRPCConnectionHTTP({
|
|
101
|
+
lib: this.config.lib,
|
|
83
102
|
side: 'server',
|
|
84
103
|
});
|
|
85
104
|
this.emitter.emit('connection', connection);
|
|
@@ -94,11 +113,11 @@ class TypedRPCConnectionProviderHTTP extends TypedRPCConnectionProvider {
|
|
|
94
113
|
});
|
|
95
114
|
}
|
|
96
115
|
async createServer() {
|
|
97
|
-
const httpSupport = await
|
|
116
|
+
const httpSupport = await this.config.lib?.http;
|
|
98
117
|
if (!httpSupport) {
|
|
99
|
-
throw new Error("http module not found");
|
|
118
|
+
throw new Error("http module not found, try set config.lib.http to import('http') or install http module");
|
|
100
119
|
}
|
|
101
|
-
return httpSupport.
|
|
120
|
+
return httpSupport.createServer();
|
|
102
121
|
}
|
|
103
122
|
async listen(config) {
|
|
104
123
|
if (!this.server) {
|
|
@@ -135,6 +154,7 @@ class TypedRPCConnectionProviderHTTP extends TypedRPCConnectionProvider {
|
|
|
135
154
|
}
|
|
136
155
|
async connect(target) {
|
|
137
156
|
const connection = new TypedRPCConnectionHTTP({
|
|
157
|
+
lib: this.config.lib,
|
|
138
158
|
side: 'client',
|
|
139
159
|
target,
|
|
140
160
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/connections/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/connections/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,9 +19,19 @@ declare class TypedRPCConnectionSocket extends TypedRPCConnection {
|
|
|
19
19
|
close(): boolean;
|
|
20
20
|
isClosed(): boolean;
|
|
21
21
|
}
|
|
22
|
+
type SupportLibNet = typeof import('net');
|
|
23
|
+
type SupportLib = {
|
|
24
|
+
net?: Promise<SupportLibNet>;
|
|
25
|
+
};
|
|
26
|
+
type TypedRPCConnectionProviderSocketConfig = {
|
|
27
|
+
lib?: SupportLib;
|
|
28
|
+
};
|
|
22
29
|
declare class TypedRPCConnectionProviderSocket extends TypedRPCConnectionProvider {
|
|
30
|
+
private config;
|
|
23
31
|
private server;
|
|
24
32
|
private sockets;
|
|
33
|
+
constructor(config?: TypedRPCConnectionProviderSocketConfig);
|
|
34
|
+
private initLib;
|
|
25
35
|
listen(config: {
|
|
26
36
|
port: number;
|
|
27
37
|
hostname?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/connections/socket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../src/connections/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAU5E,KAAK,+BAA+B,GAAG;IACnC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC,CAAA;AACD,cAAM,wBAAyB,SAAQ,kBAAkB;IAOzC,OAAO,CAAC,MAAM;IANnB,UAAU,gDAAuD;IACxE,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAED;gBAEK,MAAM,EAAE;QACxB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QAC7B,KAAK,EAAE,MAAM,OAAO,CAAC;QACrB,QAAQ,EAAE,MAAM,OAAO,CAAC;KAC3B;IA2BK,OAAO,CAAC,IAAI,EAAE,MAAM,EAAC,OAAO,CAAC,EAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgC5D,KAAK,IAAI,MAAM;IAGf,KAAK,IAAI,OAAO;IAGhB,QAAQ,IAAI,OAAO;CAItB;AAGD,KAAK,aAAa,GAAG,cAAc,KAAK,CAAC,CAAC;AAC1C,KAAK,UAAU,GAAG;IACd,GAAG,CAAC,EAAC,OAAO,CAAC,aAAa,CAAC,CAAA;CAC9B,CAAA;AAED,KAAK,sCAAsC,GAAG;IAC1C,GAAG,CAAC,EAAC,UAAU,CAAC;CACnB,CAAA;AAED,cAAM,gCAAiC,SAAQ,0BAA0B;IAKzD,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,MAAM,CAAoD;IAClE,OAAO,CAAC,OAAO,CAAyD;gBAEpD,MAAM,GAAC,sCAA2C;IAKtE,OAAO,CAAC,OAAO;IAST,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAkEtE,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAoB/B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAmEvD;AAED,OAAO,EACH,wBAAwB,EACxB,gCAAgC,GACnC,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { importTyped } from '../typedimport/default.js';
|
|
2
1
|
import { IdMaker, TypedEmitter } from '../utils.js';
|
|
3
2
|
import { TypedRPCConnection, TypedRPCConnectionProvider } from './basic.js';
|
|
4
3
|
class TypedRPCConnectionSocket extends TypedRPCConnection {
|
|
@@ -72,15 +71,28 @@ class TypedRPCConnectionSocket extends TypedRPCConnection {
|
|
|
72
71
|
}
|
|
73
72
|
}
|
|
74
73
|
class TypedRPCConnectionProviderSocket extends TypedRPCConnectionProvider {
|
|
74
|
+
config;
|
|
75
75
|
server;
|
|
76
76
|
sockets = new Set();
|
|
77
|
+
constructor(config = {}) {
|
|
78
|
+
super();
|
|
79
|
+
this.config = config;
|
|
80
|
+
this.initLib();
|
|
81
|
+
}
|
|
82
|
+
initLib() {
|
|
83
|
+
if (!this.config.lib) {
|
|
84
|
+
this.config.lib = {};
|
|
85
|
+
}
|
|
86
|
+
if (!this.config.lib.net) {
|
|
87
|
+
this.config.lib.net = import(/* @vite-ignore */ 'net' + '').catch(() => undefined);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
77
90
|
async listen(config) {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
throw new Error("net module not found");
|
|
91
|
+
const netSupport = await this.config.lib?.net;
|
|
92
|
+
if (!netSupport) {
|
|
93
|
+
throw new Error('net module not found,try set config.lib.net to import("net") or install net module');
|
|
82
94
|
}
|
|
83
|
-
const server =
|
|
95
|
+
const server = netSupport.createServer((socket) => {
|
|
84
96
|
this.sockets.add(socket);
|
|
85
97
|
const connection = new TypedRPCConnectionSocket({
|
|
86
98
|
id: IdMaker.makeId(),
|
|
@@ -156,13 +168,12 @@ class TypedRPCConnectionProviderSocket extends TypedRPCConnectionProvider {
|
|
|
156
168
|
}
|
|
157
169
|
connect(target) {
|
|
158
170
|
return new Promise(async (resolve, reject) => {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
reject(new Error("net module not found"));
|
|
171
|
+
const netSupport = await this.config.lib?.net;
|
|
172
|
+
if (!netSupport) {
|
|
173
|
+
reject(new Error('net module not found,try set config.lib.net to import("net") or install net module'));
|
|
163
174
|
return;
|
|
164
175
|
}
|
|
165
|
-
const socket = new
|
|
176
|
+
const socket = new netSupport.Socket();
|
|
166
177
|
const [host, port] = target.split(':');
|
|
167
178
|
if (!host || !port
|
|
168
179
|
|| !Number.isInteger(Number(port))) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/connections/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"socket.js","sourceRoot":"","sources":["../../src/connections/socket.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type TypedImportLib } from "../typedimport/default.js";
|
|
2
1
|
import { TypedEmitter } from "../utils.js";
|
|
3
2
|
import { TypedRPCConnection, TypedRPCConnectionProvider } from "./basic.js";
|
|
4
3
|
type TypedRPCConnectionMessageEvents = {
|
|
@@ -20,27 +19,44 @@ declare class TypedRPCConnectionSocketIO extends TypedRPCConnection {
|
|
|
20
19
|
close(): boolean;
|
|
21
20
|
isClosed(): boolean;
|
|
22
21
|
}
|
|
22
|
+
type SupportLibSocketIO = typeof import('socket.io') & {
|
|
23
|
+
ServerOptions: import('socket.io').ServerOptions;
|
|
24
|
+
};
|
|
25
|
+
type SupportLibSocketIOClient = typeof import('socket.io-client') & {
|
|
26
|
+
ManagerOptions: import('socket.io-client').ManagerOptions;
|
|
27
|
+
SocketOptions: import('socket.io-client').SocketOptions;
|
|
28
|
+
};
|
|
29
|
+
type SupportLibHTTP = typeof import('http');
|
|
30
|
+
type SupportLib = {
|
|
31
|
+
socketio?: Promise<SupportLibSocketIO>;
|
|
32
|
+
socketioclient?: Promise<SupportLibSocketIOClient>;
|
|
33
|
+
http?: Promise<SupportLibHTTP>;
|
|
34
|
+
};
|
|
23
35
|
type TypedRPCConnectionSocketIOConfig = {
|
|
24
36
|
type: "client" | "server";
|
|
25
|
-
|
|
26
|
-
|
|
37
|
+
lib?: SupportLib;
|
|
38
|
+
server?: InstanceType<SupportLibHTTP['Server']> | undefined;
|
|
39
|
+
io?: InstanceType<SupportLibSocketIO['Server']> | undefined;
|
|
27
40
|
options?: {
|
|
28
|
-
server?: Partial<
|
|
29
|
-
client?: Partial<
|
|
41
|
+
server?: Partial<SupportLibSocketIO['ServerOptions']> | undefined;
|
|
42
|
+
client?: Partial<SupportLibSocketIOClient['ManagerOptions'] & SupportLibSocketIOClient['SocketOptions']> | undefined;
|
|
30
43
|
};
|
|
31
44
|
};
|
|
32
45
|
declare class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
33
46
|
private closed;
|
|
34
47
|
private config;
|
|
35
48
|
static createServer(config?: {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
49
|
+
lib?: SupportLib;
|
|
50
|
+
server?: InstanceType<SupportLibHTTP['Server']>;
|
|
51
|
+
io?: InstanceType<SupportLibSocketIO['Server']>;
|
|
52
|
+
options?: Partial<SupportLibSocketIO['ServerOptions']>;
|
|
39
53
|
}): TypedRPCConnectionProviderSocketIO;
|
|
40
54
|
static createClient(config?: {
|
|
41
|
-
|
|
55
|
+
lib?: SupportLib;
|
|
56
|
+
options?: Partial<SupportLibSocketIOClient['ManagerOptions'] & SupportLibSocketIOClient['SocketOptions']>;
|
|
42
57
|
}): TypedRPCConnectionProviderSocketIO;
|
|
43
58
|
constructor(config: TypedRPCConnectionSocketIOConfig);
|
|
59
|
+
private initLib;
|
|
44
60
|
private buildClient;
|
|
45
61
|
private buildServer;
|
|
46
62
|
listen(params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socketio.d.ts","sourceRoot":"","sources":["../../src/connections/socketio.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"socketio.d.ts","sourceRoot":"","sources":["../../src/connections/socketio.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { importTyped } from "../typedimport/default.js";
|
|
1
|
+
// import { importTyped, type TypedImportLib } from "../typedimport/default.js";
|
|
2
2
|
import { IdMaker, TypedEmitter } from "../utils.js";
|
|
3
3
|
import { TypedRPCConnection, TypedRPCConnectionProvider } from "./basic.js";
|
|
4
4
|
class TypedRPCConnectionSocketIO extends TypedRPCConnection {
|
|
@@ -78,6 +78,7 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
78
78
|
static createServer(config) {
|
|
79
79
|
return new TypedRPCConnectionProviderSocketIO({
|
|
80
80
|
type: 'server',
|
|
81
|
+
lib: config?.lib || {},
|
|
81
82
|
server: config?.server,
|
|
82
83
|
io: config?.io,
|
|
83
84
|
options: {
|
|
@@ -88,6 +89,7 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
88
89
|
static createClient(config) {
|
|
89
90
|
return new TypedRPCConnectionProviderSocketIO({
|
|
90
91
|
type: 'client',
|
|
92
|
+
lib: config?.lib || {},
|
|
91
93
|
options: {
|
|
92
94
|
client: config?.options,
|
|
93
95
|
}
|
|
@@ -95,6 +97,7 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
95
97
|
}
|
|
96
98
|
constructor(config) {
|
|
97
99
|
super();
|
|
100
|
+
config.lib = this.initLib(config.lib || {});
|
|
98
101
|
if (config.type == 'server') {
|
|
99
102
|
this.config = this.buildServer(config);
|
|
100
103
|
}
|
|
@@ -105,6 +108,18 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
105
108
|
throw new Error('TypedRPCConnectionProviderSocketIO constructor only support server or client type.');
|
|
106
109
|
}
|
|
107
110
|
}
|
|
111
|
+
initLib(lib) {
|
|
112
|
+
if (!lib.http) {
|
|
113
|
+
lib.http = import(/* @vite-ignore */ 'http' + '').catch(() => undefined);
|
|
114
|
+
}
|
|
115
|
+
if (!lib.socketio) {
|
|
116
|
+
lib.socketio = import(/* @vite-ignore */ 'socket.io' + '').catch(() => undefined);
|
|
117
|
+
}
|
|
118
|
+
if (!lib.socketioclient) {
|
|
119
|
+
lib.socketioclient = import(/* @vite-ignore */ 'socket.io-client' + '').catch(() => undefined);
|
|
120
|
+
}
|
|
121
|
+
return lib;
|
|
122
|
+
}
|
|
108
123
|
async buildClient(config) {
|
|
109
124
|
if (config.type != 'client') {
|
|
110
125
|
throw new Error('TypedRPCConnectionProviderSocketIO buildClient only support client type.');
|
|
@@ -116,27 +131,29 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
116
131
|
throw new Error('TypedRPCConnectionProviderSocketIO buildServer only support server type.');
|
|
117
132
|
}
|
|
118
133
|
if (!config.server) {
|
|
119
|
-
const httpSupport = await
|
|
134
|
+
const httpSupport = await config.lib?.http;
|
|
120
135
|
if (!httpSupport) {
|
|
121
|
-
throw new Error("http module not found");
|
|
136
|
+
throw new Error("http module not found,try set config.lib.http to import('http') or install http module");
|
|
122
137
|
}
|
|
123
|
-
config.server = httpSupport.
|
|
138
|
+
config.server = httpSupport.createServer();
|
|
124
139
|
if (!config.server) {
|
|
125
140
|
throw new Error("http server not found");
|
|
126
141
|
}
|
|
127
142
|
}
|
|
128
143
|
if (!config.io) {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
144
|
+
const socketioSupport = await config.lib?.socketio;
|
|
145
|
+
if (!socketioSupport) {
|
|
146
|
+
throw new Error('socket.io module not found,try set config.lib.socketio to import("socket.io") or install socket.io module');
|
|
147
|
+
}
|
|
148
|
+
config.io = new socketioSupport.Server(config.server, {
|
|
149
|
+
cors: {
|
|
150
|
+
origin: "*",
|
|
151
|
+
methods: ["GET", "POST"],
|
|
152
|
+
},
|
|
153
|
+
...config.options?.server,
|
|
137
154
|
});
|
|
138
155
|
if (!config.io) {
|
|
139
|
-
throw new Error("socket.io server
|
|
156
|
+
throw new Error("socket.io server build error");
|
|
140
157
|
}
|
|
141
158
|
}
|
|
142
159
|
config.io.on('connection', (socket) => {
|
|
@@ -199,13 +216,13 @@ class TypedRPCConnectionProviderSocketIO extends TypedRPCConnectionProvider {
|
|
|
199
216
|
});
|
|
200
217
|
}
|
|
201
218
|
async connect(target) {
|
|
202
|
-
|
|
203
|
-
const
|
|
204
|
-
if (!
|
|
205
|
-
throw new Error(
|
|
219
|
+
const config = await this.config;
|
|
220
|
+
const socketioclientSupport = await config.lib?.socketioclient;
|
|
221
|
+
if (!socketioclientSupport) {
|
|
222
|
+
throw new Error('socket.io-client module not found,try set config.lib.socketioclient to import("socket.io-client") or install socket.io-client module');
|
|
206
223
|
}
|
|
207
224
|
return new Promise(async (resolve, reject) => {
|
|
208
|
-
const socket =
|
|
225
|
+
const socket = socketioclientSupport.io(`ws://${target}`, {
|
|
209
226
|
...(await this.config).options?.client,
|
|
210
227
|
});
|
|
211
228
|
const connection = new TypedRPCConnectionSocketIO({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socketio.js","sourceRoot":"","sources":["../../src/connections/socketio.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"socketio.js","sourceRoot":"","sources":["../../src/connections/socketio.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.js
CHANGED
|
@@ -80,49 +80,4 @@ export class PromiseTimeout {
|
|
|
80
80
|
return this.promise.then.bind(this.promise);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
// export class PromiseTimeout<T> extends Promise<T> {
|
|
84
|
-
// private timer: ReturnType<typeof setTimeout> | null = null;
|
|
85
|
-
// private rejectFn: ((reason?: any) => void) | null = null;
|
|
86
|
-
// constructor(
|
|
87
|
-
// executor: (
|
|
88
|
-
// resolve: (value: T | PromiseLike<T>) => void,
|
|
89
|
-
// reject: (reason?: any) => void
|
|
90
|
-
// ) => void
|
|
91
|
-
// ) {
|
|
92
|
-
// let internalReject: (reason?: any) => void;
|
|
93
|
-
// // 调用父类构造函数
|
|
94
|
-
// super((resolve, reject) => {
|
|
95
|
-
// internalReject = reject;
|
|
96
|
-
// executor(resolve, reject);
|
|
97
|
-
// });
|
|
98
|
-
// this.rejectFn = internalReject!;
|
|
99
|
-
// }
|
|
100
|
-
// /**
|
|
101
|
-
// * 设置超时时间
|
|
102
|
-
// * @param ms 毫秒数
|
|
103
|
-
// * @returns 返回实例支持链式调用
|
|
104
|
-
// */
|
|
105
|
-
// timeout(ms: number): this {
|
|
106
|
-
// if (this.timer) {
|
|
107
|
-
// clearTimeout(this.timer);
|
|
108
|
-
// }
|
|
109
|
-
// this.timer = setTimeout(() => {
|
|
110
|
-
// if (this.rejectFn) {
|
|
111
|
-
// this.rejectFn(new Error(`Promise timed out after ${ms}ms`));
|
|
112
|
-
// }
|
|
113
|
-
// }, ms);
|
|
114
|
-
// // 无论成功或失败,都要清除定时器,防止内存泄漏
|
|
115
|
-
// this.finally(() => {
|
|
116
|
-
// if (this.timer) {
|
|
117
|
-
// clearTimeout(this.timer);
|
|
118
|
-
// }
|
|
119
|
-
// });
|
|
120
|
-
// return this;
|
|
121
|
-
// }
|
|
122
|
-
// // 必须重写 Symbol.species 以确保 then/catch 返回的是原生 Promise
|
|
123
|
-
// // 否则链式调用可能会因为构造函数参数不匹配而报错
|
|
124
|
-
// static get [Symbol.species]() {
|
|
125
|
-
// return Promise;
|
|
126
|
-
// }
|
|
127
|
-
// }
|
|
128
83
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mingzey/typedrpc",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.10",
|
|
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
|
"repository": {
|