@socket-mesh/server 18.1.3 → 18.1.4
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/handlers/authenticate.d.ts +4 -5
- package/dist/handlers/handshake.d.ts +2 -6
- package/dist/handlers/publish.d.ts +3 -9
- package/dist/handlers/remove-auth-token.d.ts +3 -2
- package/dist/handlers/server-request-handler.d.ts +7 -0
- package/dist/handlers/subscribe.d.ts +2 -6
- package/dist/handlers/unsubscribe.d.ts +2 -6
- package/dist/index.d.ts +7 -7
- package/dist/plugin/server-plugin.d.ts +18 -18
- package/dist/server-event.d.ts +30 -33
- package/dist/server-options.d.ts +7 -6
- package/dist/server-socket.d.ts +12 -11
- package/dist/server-transport.d.ts +14 -14
- package/dist/server.d.ts +57 -57
- package/package.json +12 -12
- package/dist/maps/client-map.d.ts +0 -10
- package/dist/maps/server-map.d.ts +0 -24
- package/dist/maps/server-map.js +0 -1
- package/dist/maps/socket-map.d.ts +0 -19
- package/dist/maps/socket-map.js +0 -1
- /package/dist/{maps/client-map.js → handlers/server-request-handler.js} +0 -0
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { RequestHandlerArgs, SocketTransport } from "@socket-mesh/core";
|
|
2
1
|
import jwt from "jsonwebtoken";
|
|
3
2
|
import { AuthTokenError } from "@socket-mesh/errors";
|
|
4
3
|
import { AuthEngine } from "@socket-mesh/auth-engine";
|
|
5
4
|
import { AuthToken, SignedAuthToken } from "@socket-mesh/auth";
|
|
6
|
-
import { BasicSocketMapServer } from "../maps/socket-map.js";
|
|
7
5
|
import { ServerSocket } from "../server-socket.js";
|
|
8
|
-
import {
|
|
6
|
+
import { ServerTransport } from "../server-transport.js";
|
|
7
|
+
import { ServerRequestHandlerArgs } from "./server-request-handler.js";
|
|
9
8
|
export type AuthInfo = ValidAuthInfo | InvalidAuthInfo;
|
|
10
9
|
export interface InvalidAuthInfo {
|
|
11
10
|
signedAuthToken: SignedAuthToken;
|
|
@@ -15,6 +14,6 @@ export interface ValidAuthInfo {
|
|
|
15
14
|
signedAuthToken: SignedAuthToken;
|
|
16
15
|
authToken: AuthToken;
|
|
17
16
|
}
|
|
18
|
-
export declare function authenticateHandler({ isRpc, options: signedAuthToken, socket, transport }:
|
|
17
|
+
export declare function authenticateHandler({ isRpc, options: signedAuthToken, socket, transport }: ServerRequestHandlerArgs<string>): Promise<void>;
|
|
19
18
|
export declare function validateAuthToken(auth: AuthEngine, authToken: SignedAuthToken, verificationOptions?: jwt.VerifyOptions): Promise<AuthInfo>;
|
|
20
|
-
export declare function processAuthentication(socket: ServerSocket
|
|
19
|
+
export declare function processAuthentication(socket: ServerSocket, transport: ServerTransport, authInfo: AuthInfo): Promise<boolean>;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
1
|
import { HandshakeOptions, HandshakeStatus } from "@socket-mesh/client";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
import { BasicSocketMapServer } from "../maps/socket-map.js";
|
|
5
|
-
import { ServerSocket } from "../server-socket.js";
|
|
6
|
-
import { ServerTransport } from "../server-transport.js";
|
|
7
|
-
export declare function handshakeHandler({ options, socket, transport }: RequestHandlerArgs<HandshakeOptions, BasicSocketMapServer, ServerSocket<BasicServerMap>, ServerTransport<BasicServerMap>>): Promise<HandshakeStatus>;
|
|
2
|
+
import { ServerRequestHandlerArgs } from "./server-request-handler.js";
|
|
3
|
+
export declare function handshakeHandler({ options, socket, transport }: ServerRequestHandlerArgs<HandshakeOptions>): Promise<HandshakeStatus>;
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
import { RequestHandlerArgs } from "@socket-mesh/core";
|
|
2
|
-
import { BasicSocketMapServer } from "../maps/socket-map.js";
|
|
3
1
|
import { PublishOptions } from "@socket-mesh/channels";
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import { ServerTransport } from "../server-transport.js";
|
|
7
|
-
export declare function publishHandler({ socket, transport, options }: RequestHandlerArgs<PublishOptions, BasicSocketMapServer<{}, {
|
|
2
|
+
import { ServerRequestHandlerArgs } from "./server-request-handler.js";
|
|
3
|
+
export declare function publishHandler({ socket, transport, options }: ServerRequestHandlerArgs<PublishOptions, {}, {
|
|
8
4
|
[channel: string]: any;
|
|
9
|
-
}
|
|
10
|
-
[channel: string]: any;
|
|
11
|
-
}>>, ServerTransport<BasicServerMap>>): Promise<void>;
|
|
5
|
+
}>): Promise<void>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
2
2
|
import { SocketTransport } from "@socket-mesh/core";
|
|
3
|
-
|
|
3
|
+
import { ServerSocketState } from "../server-socket-state.js";
|
|
4
|
+
export declare function deauthenticate(transport: SocketTransport<ServerPrivateMap, {}, ClientPrivateMap, {}, ServerSocketState>): Promise<boolean>;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
2
|
+
import { PrivateMethodMap, PublicMethodMap, RequestHandlerArgs, ServiceMap } from "@socket-mesh/core";
|
|
3
|
+
import { ServerSocketState } from "../server-socket-state.js";
|
|
4
|
+
import { ServerSocket } from "../server-socket.js";
|
|
5
|
+
import { ServerTransport } from "../server-transport.js";
|
|
6
|
+
import { ChannelMap } from "@socket-mesh/channels";
|
|
7
|
+
export type ServerRequestHandlerArgs<TOptions, TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}> = RequestHandlerArgs<TOptions, TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState, ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>, ServerTransport<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import { BasicServerMap } from "../maps/server-map.js";
|
|
2
|
-
import { BasicSocketMapServer } from "../maps/socket-map.js";
|
|
3
1
|
import { SubscribeOptions } from "@socket-mesh/client";
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import { ServerTransport } from "../server-transport.js";
|
|
7
|
-
export declare function subscribeHandler({ socket, transport, options }: RequestHandlerArgs<SubscribeOptions, BasicSocketMapServer, ServerSocket<BasicServerMap>, ServerTransport<BasicServerMap>>): Promise<void>;
|
|
2
|
+
import { ServerRequestHandlerArgs } from "./server-request-handler.js";
|
|
3
|
+
export declare function subscribeHandler({ socket, transport, options }: ServerRequestHandlerArgs<SubscribeOptions>): Promise<void>;
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import { ServerSocket } from "../server-socket.js";
|
|
4
|
-
import { BasicServerMap } from "../maps/server-map.js";
|
|
5
|
-
import { ServerTransport } from "../server-transport.js";
|
|
6
|
-
export declare function unsubscribeHandler({ transport, options: channel }: RequestHandlerArgs<string, BasicSocketMapServer, ServerSocket<BasicServerMap>, ServerTransport<BasicServerMap>>): Promise<void>;
|
|
1
|
+
import { ServerRequestHandlerArgs } from "./server-request-handler.js";
|
|
2
|
+
export declare function unsubscribeHandler({ transport, options: channel }: ServerRequestHandlerArgs<string>): Promise<void>;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import http from "http";
|
|
2
2
|
import { Server } from "./server.js";
|
|
3
3
|
import { ServerOptions } from "./server-options.js";
|
|
4
|
-
import {
|
|
4
|
+
import { ChannelMap } from "@socket-mesh/channels";
|
|
5
|
+
import { PrivateMethodMap, PublicMethodMap, ServiceMap } from "@socket-mesh/core";
|
|
5
6
|
export { Server } from "./server.js";
|
|
6
7
|
export { ServerSocket } from "./server-socket.js";
|
|
7
8
|
export { PluginType } from "@socket-mesh/core";
|
|
8
|
-
export {
|
|
9
|
-
export { BasicSocketMapServer } from "./maps/socket-map.js";
|
|
9
|
+
export { ServerRequestHandlerArgs } from './handlers/server-request-handler.js';
|
|
10
10
|
/**
|
|
11
11
|
* Creates an http.Server exclusively used for WS upgrades.
|
|
12
12
|
*
|
|
@@ -16,9 +16,9 @@ export { BasicSocketMapServer } from "./maps/socket-map.js";
|
|
|
16
16
|
* @return {AGServer} websocket cluster server
|
|
17
17
|
* @api public
|
|
18
18
|
*/
|
|
19
|
-
export declare function listen<
|
|
20
|
-
export declare function listen<
|
|
21
|
-
export declare function listen<
|
|
19
|
+
export declare function listen<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}>(): Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
20
|
+
export declare function listen<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}>(port: number, options: ServerOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
21
|
+
export declare function listen<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}>(port: number, options: ServerOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>, fn: () => void): Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
22
22
|
/**
|
|
23
23
|
* Captures upgrade requests for a http.Server.
|
|
24
24
|
*
|
|
@@ -27,4 +27,4 @@ export declare function listen<T extends ServerMap>(port: number, options: Serve
|
|
|
27
27
|
* @return {AGServer} websocket cluster server
|
|
28
28
|
* @api public
|
|
29
29
|
*/
|
|
30
|
-
export declare function attach<
|
|
30
|
+
export declare function attach<TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TIncoming extends PublicMethodMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}>(server: http.Server, options?: ServerOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
@@ -1,33 +1,33 @@
|
|
|
1
1
|
import { IncomingMessage } from "http";
|
|
2
|
-
import {
|
|
3
|
-
import { SocketMapFromServer } from "../maps/socket-map.js";
|
|
4
|
-
import { Plugin } from "@socket-mesh/core";
|
|
2
|
+
import { Plugin, PrivateMethodMap, PublicMethodMap, ServiceMap } from "@socket-mesh/core";
|
|
5
3
|
import { AuthInfo } from "../handlers/authenticate.js";
|
|
6
4
|
import { ServerSocket } from "../server-socket.js";
|
|
7
5
|
import { ServerTransport } from "../server-transport.js";
|
|
8
|
-
import { ChannelOptions } from "@socket-mesh/channels";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
import { ChannelMap, ChannelOptions } from "@socket-mesh/channels";
|
|
7
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
8
|
+
import { ServerSocketState } from "../server-socket-state.js";
|
|
9
|
+
export interface HandshakePluginArgs<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
10
|
+
socket: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
11
|
+
transport: ServerTransport<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
12
12
|
authInfo: AuthInfo;
|
|
13
13
|
}
|
|
14
|
-
export interface PublishPluginArgs<
|
|
14
|
+
export interface PublishPluginArgs<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
15
15
|
channel: string;
|
|
16
16
|
data: any;
|
|
17
|
-
socket: ServerSocket<
|
|
18
|
-
transport: ServerTransport<
|
|
17
|
+
socket: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
18
|
+
transport: ServerTransport<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
19
19
|
}
|
|
20
|
-
export interface SubscribePluginArgs<
|
|
20
|
+
export interface SubscribePluginArgs<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
21
21
|
channel: string;
|
|
22
22
|
options: ChannelOptions;
|
|
23
|
-
socket: ServerSocket<
|
|
24
|
-
transport: ServerTransport<
|
|
23
|
+
socket: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
24
|
+
transport: ServerTransport<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
25
25
|
}
|
|
26
|
-
export interface ServerPlugin<
|
|
26
|
+
export interface ServerPlugin<TIncoming extends PublicMethodMap, TChannel extends ChannelMap, TService extends ServiceMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> extends Plugin<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState> {
|
|
27
27
|
onAuthenticate?: (authInfo: AuthInfo) => void;
|
|
28
28
|
onConnection?: (request: IncomingMessage) => Promise<void>;
|
|
29
|
-
onHandshake?: (options: HandshakePluginArgs<
|
|
30
|
-
onPublishIn?: (options: PublishPluginArgs<
|
|
31
|
-
onPublishOut?: (options: PublishPluginArgs<
|
|
32
|
-
onSubscribe?: (options: SubscribePluginArgs<
|
|
29
|
+
onHandshake?: (options: HandshakePluginArgs<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>) => Promise<void>;
|
|
30
|
+
onPublishIn?: (options: PublishPluginArgs<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>) => Promise<any>;
|
|
31
|
+
onPublishOut?: (options: PublishPluginArgs<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>) => Promise<any>;
|
|
32
|
+
onSubscribe?: (options: SubscribePluginArgs<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>) => Promise<void>;
|
|
33
33
|
}
|
package/dist/server-event.d.ts
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { IncomingMessage } from "http";
|
|
2
|
-
import { ClientSocket } from "@socket-mesh/client";
|
|
2
|
+
import { ClientSocket, ServerPrivateMap } from "@socket-mesh/client";
|
|
3
3
|
import { ServerSocket } from "./server-socket.js";
|
|
4
|
-
import { AuthenticateEvent, BadAuthTokenEvent, ConnectEvent, CloseEvent as SCloseEvent, DisconnectEvent, ErrorEvent as SErrorEvent, MessageEvent, PingEvent, PongEvent, RequestEvent, ResponseEvent, ConnectingEvent, RemoveAuthTokenEvent, DeauthenticateEvent, AuthStateChangeEvent } from "@socket-mesh/core";
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export type ServerEvent<T extends ServerMap> = ConnectionEvent<T> | CloseEvent | ErrorEvent | HeadersEvent | HandshakeEvent<T> | ListeningEvent | SocketAuthStateChangeEvent<T> | SocketAuthenticateEvent<T> | SocketBadAuthTokenEvent<T> | SocketCloseEvent<T> | SocketDeauthenticateEvent<T> | SocketErrorEvent<T> | SocketMessageEvent<T> | SocketConnectEvent<T> | SocketConnectingEvent<T> | SocketDisconnectEvent<T> | SocketPingEvent<T> | SocketPongEvent<T> | SocketRemoveAuthTokenEvent<T> | SocketRequestEvent<T> | SocketResponseEvent<T> | WarningEvent;
|
|
10
|
-
export interface ConnectionEvent<T extends ServerMap> {
|
|
11
|
-
socket: ServerSocket<T>;
|
|
4
|
+
import { AuthenticateEvent, BadAuthTokenEvent, ConnectEvent, CloseEvent as SCloseEvent, DisconnectEvent, ErrorEvent as SErrorEvent, MessageEvent, PingEvent, PongEvent, RequestEvent, ResponseEvent, ConnectingEvent, RemoveAuthTokenEvent, DeauthenticateEvent, AuthStateChangeEvent, ServiceMap, PublicMethodMap, PrivateMethodMap } from "@socket-mesh/core";
|
|
5
|
+
import { ChannelMap, SubscribeEvent, SubscribeFailEvent, SubscribeStateChangeEvent, UnsubscribeEvent } from "@socket-mesh/channels";
|
|
6
|
+
export type ServerEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = ConnectionEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | CloseEvent | ErrorEvent | HeadersEvent | HandshakeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | ListeningEvent | SocketAuthStateChangeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketAuthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketBadAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketCloseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketDeauthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketErrorEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketMessageEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketConnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketConnectingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketDisconnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketPingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketPongEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketRemoveAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | SocketRequestEvent<TService, TIncoming, TPrivateIncoming> | SocketResponseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState> | WarningEvent;
|
|
7
|
+
export interface ConnectionEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
8
|
+
socket: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
12
9
|
upgradeReq: IncomingMessage;
|
|
13
10
|
}
|
|
14
11
|
export interface CloseEvent {
|
|
@@ -16,8 +13,8 @@ export interface CloseEvent {
|
|
|
16
13
|
export interface ErrorEvent {
|
|
17
14
|
error: Error;
|
|
18
15
|
}
|
|
19
|
-
export interface HandshakeEvent<
|
|
20
|
-
socket: ServerSocket<
|
|
16
|
+
export interface HandshakeEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
17
|
+
socket: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
21
18
|
}
|
|
22
19
|
export interface WarningEvent {
|
|
23
20
|
warning: Error;
|
|
@@ -28,25 +25,25 @@ export interface HeadersEvent {
|
|
|
28
25
|
}
|
|
29
26
|
export interface ListeningEvent {
|
|
30
27
|
}
|
|
31
|
-
export interface ServerSocketEvent<
|
|
32
|
-
socket: ClientSocket<
|
|
33
|
-
}
|
|
34
|
-
export type SocketAuthStateChangeEvent<
|
|
35
|
-
export type SocketAuthenticateEvent<
|
|
36
|
-
export type SocketBadAuthTokenEvent<
|
|
37
|
-
export type SocketCloseEvent<
|
|
38
|
-
export type SocketDeauthenticateEvent<
|
|
39
|
-
export type SocketErrorEvent<
|
|
40
|
-
export type SocketMessageEvent<
|
|
41
|
-
export type SocketConnectEvent<
|
|
42
|
-
export type SocketConnectingEvent<
|
|
43
|
-
export type SocketDisconnectEvent<
|
|
44
|
-
export type SocketPingEvent<
|
|
45
|
-
export type SocketPongEvent<
|
|
46
|
-
export type SocketRemoveAuthTokenEvent<
|
|
47
|
-
export type SocketRequestEvent<
|
|
48
|
-
export type SocketResponseEvent<
|
|
49
|
-
export type SocketSubscribeEvent<
|
|
50
|
-
export type SocketSubscribeFailEvent<
|
|
51
|
-
export type SocketSubscribeStateChangeEvent<
|
|
52
|
-
export type SocketUnsubscribeEvent<
|
|
28
|
+
export interface ServerSocketEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> {
|
|
29
|
+
socket: ClientSocket<PublicMethodMap, TChannel, TService, TState, TOutgoing & TPrivateOutgoing, TPrivateIncoming> | ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
30
|
+
}
|
|
31
|
+
export type SocketAuthStateChangeEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = AuthStateChangeEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
32
|
+
export type SocketAuthenticateEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = AuthenticateEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
33
|
+
export type SocketBadAuthTokenEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = BadAuthTokenEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
34
|
+
export type SocketCloseEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = SCloseEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
35
|
+
export type SocketDeauthenticateEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = DeauthenticateEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
36
|
+
export type SocketErrorEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = SErrorEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
37
|
+
export type SocketMessageEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = MessageEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
38
|
+
export type SocketConnectEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = ConnectEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
39
|
+
export type SocketConnectingEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = ConnectingEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
40
|
+
export type SocketDisconnectEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = DisconnectEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
41
|
+
export type SocketPingEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = PingEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
42
|
+
export type SocketPongEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = PongEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
43
|
+
export type SocketRemoveAuthTokenEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = RemoveAuthTokenEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
44
|
+
export type SocketRequestEvent<TService extends ServiceMap, TIncoming extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap> = RequestEvent<TIncoming & TPrivateIncoming & ServerPrivateMap, TService>;
|
|
45
|
+
export type SocketResponseEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = ResponseEvent<TOutgoing, TPrivateOutgoing, TService> & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
46
|
+
export type SocketSubscribeEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = SubscribeEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
47
|
+
export type SocketSubscribeFailEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = SubscribeFailEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
48
|
+
export type SocketSubscribeStateChangeEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = SubscribeStateChangeEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
49
|
+
export type SocketUnsubscribeEvent<TChannel extends ChannelMap, TService extends ServiceMap, TIncoming extends PublicMethodMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> = UnsubscribeEvent & ServerSocketEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
package/dist/server-options.d.ts
CHANGED
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
import ws from "ws";
|
|
2
2
|
import { AuthEngine, AuthOptions } from "@socket-mesh/auth-engine";
|
|
3
|
-
import { CallIdGenerator, HandlerMap,
|
|
3
|
+
import { CallIdGenerator, HandlerMap, StreamCleanupMode, ServiceMap, PublicMethodMap, PrivateMethodMap } from "@socket-mesh/core";
|
|
4
4
|
import { CodecEngine } from "@socket-mesh/formatter";
|
|
5
5
|
import { ServerPlugin } from "./plugin/server-plugin.js";
|
|
6
|
-
import { ServerMap } from "./maps/server-map.js";
|
|
7
6
|
import { Broker } from "./broker/broker.js";
|
|
8
|
-
|
|
7
|
+
import { ChannelMap } from "@socket-mesh/channels";
|
|
8
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
9
|
+
export interface ServerOptions<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}> extends ws.ServerOptions {
|
|
9
10
|
ackTimeoutMs?: number;
|
|
10
11
|
allowClientPublish?: boolean;
|
|
11
12
|
authEngine?: AuthEngine | AuthOptions;
|
|
12
|
-
brokerEngine?: Broker<
|
|
13
|
+
brokerEngine?: Broker<TChannel>;
|
|
13
14
|
callIdGenerator?: CallIdGenerator;
|
|
14
15
|
codecEngine?: CodecEngine;
|
|
15
16
|
handshakeTimeoutMs?: number;
|
|
16
|
-
handlers?: HandlerMap<
|
|
17
|
+
handlers?: HandlerMap<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState>;
|
|
17
18
|
isPingTimeoutDisabled?: boolean;
|
|
18
|
-
plugins?: ServerPlugin<
|
|
19
|
+
plugins?: ServerPlugin<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>[];
|
|
19
20
|
origins?: string;
|
|
20
21
|
pingIntervalMs?: number;
|
|
21
22
|
pingTimeoutMs?: number;
|
package/dist/server-socket.d.ts
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
|
-
import { HandlerMap, Socket, SocketOptions } from "@socket-mesh/core";
|
|
1
|
+
import { HandlerMap, PrivateMethodMap, PublicMethodMap, ServiceMap, Socket, SocketOptions } from "@socket-mesh/core";
|
|
2
2
|
import ws from "ws";
|
|
3
|
-
import { SocketMapFromServer } from "./maps/socket-map.js";
|
|
4
|
-
import { ServerMap } from "./maps/server-map.js";
|
|
5
3
|
import { Exchange } from "./broker/exchange.js";
|
|
6
4
|
import { Server } from "./server.js";
|
|
7
5
|
import { IncomingMessage } from "http";
|
|
8
6
|
import { ServerPlugin } from "./plugin/server-plugin.js";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
import { ChannelMap } from "@socket-mesh/channels";
|
|
8
|
+
import { ServerSocketState } from "./server-socket-state.js";
|
|
9
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
10
|
+
export interface ServerSocketOptions<TIncoming extends PublicMethodMap, TChannel extends ChannelMap, TService extends ServiceMap, TOutgoing extends PublicMethodMap, TPrivateIncoming extends PrivateMethodMap, TPrivateOutgoing extends PrivateMethodMap, TServerState extends object, TState extends object> extends SocketOptions<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState> {
|
|
11
|
+
handlers: HandlerMap<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState>;
|
|
12
|
+
plugins?: ServerPlugin<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>[];
|
|
12
13
|
id?: string;
|
|
13
14
|
service?: string;
|
|
14
|
-
server: Server<
|
|
15
|
+
server: Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
15
16
|
request: IncomingMessage;
|
|
16
17
|
socket: ws.WebSocket;
|
|
17
18
|
}
|
|
18
|
-
export declare class ServerSocket<
|
|
19
|
-
readonly server: Server<
|
|
19
|
+
export declare class ServerSocket<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}> extends Socket<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState> {
|
|
20
|
+
readonly server: Server<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
20
21
|
private _serverTransport;
|
|
21
|
-
constructor(options: ServerSocketOptions<
|
|
22
|
+
constructor(options: ServerSocketOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>);
|
|
22
23
|
deauthenticate(rejectOnFailedDelivery?: boolean): Promise<boolean>;
|
|
23
|
-
get exchange(): Exchange<
|
|
24
|
+
get exchange(): Exchange<TChannel>;
|
|
24
25
|
kickOut(channel: string, message: string): Promise<void[]>;
|
|
25
26
|
ping(): Promise<void>;
|
|
26
27
|
get service(): string;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import { ServerMap } from "./maps/server-map.js";
|
|
2
1
|
import { ServerSocket, ServerSocketOptions } from "./server-socket.js";
|
|
3
2
|
import { AuthToken, SignedAuthToken } from "@socket-mesh/auth";
|
|
4
|
-
import { SocketMapFromServer } from "./maps/socket-map.js";
|
|
5
3
|
import { AuthTokenOptions } from "@socket-mesh/auth-engine";
|
|
6
4
|
import { Data } from "ws";
|
|
7
|
-
import { AnyPacket, AnyResponse, SocketStatus, SocketTransport, InvokeMethodRequest, InvokeServiceRequest, TransmitMethodRequest, TransmitServiceRequest, InboundMessage } from "@socket-mesh/core";
|
|
5
|
+
import { AnyPacket, AnyResponse, SocketStatus, SocketTransport, InvokeMethodRequest, InvokeServiceRequest, TransmitMethodRequest, TransmitServiceRequest, InboundMessage, ServiceMap, PublicMethodMap, PrivateMethodMap } from "@socket-mesh/core";
|
|
8
6
|
import { IncomingMessage } from "http";
|
|
9
7
|
import { ServerPlugin } from "./plugin/server-plugin.js";
|
|
10
|
-
import { PublishOptions } from "@socket-mesh/channels";
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
import { ChannelMap, PublishOptions } from "@socket-mesh/channels";
|
|
9
|
+
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
10
|
+
import { ServerSocketState } from "./server-socket-state.js";
|
|
11
|
+
export declare class ServerTransport<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}> extends SocketTransport<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService, TState & ServerSocketState> {
|
|
12
|
+
readonly plugins: ServerPlugin<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>[];
|
|
13
13
|
readonly service?: string;
|
|
14
14
|
readonly request: IncomingMessage;
|
|
15
|
-
constructor(options: ServerSocketOptions<
|
|
15
|
+
constructor(options: ServerSocketOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>);
|
|
16
16
|
changeToUnauthenticatedState(): Promise<boolean>;
|
|
17
|
-
protected handleInboudMessage({ packet, timestamp }: InboundMessage<
|
|
17
|
+
protected handleInboudMessage({ packet, timestamp }: InboundMessage<TIncoming & TPrivateIncoming & ServerPrivateMap, TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService>): Promise<void>;
|
|
18
18
|
protected onClose(code: number, reason?: string | Buffer): void;
|
|
19
19
|
protected onDisconnect(status: SocketStatus, code: number, reason?: string): void;
|
|
20
20
|
onError(error: Error): void;
|
|
21
|
-
protected onInvoke<
|
|
21
|
+
protected onInvoke<TServiceName extends keyof TService, TServiceMethod extends keyof TService[TServiceName], TMethod extends keyof TOutgoing, TPrivateMethod extends keyof TPrivateOutgoing>(request: InvokeMethodRequest<TOutgoing, TMethod> | InvokeMethodRequest<TPrivateOutgoing, TPrivateMethod> | InvokeServiceRequest<TService, TServiceName, TServiceMethod>): void;
|
|
22
22
|
protected onMessage(data: Data, isBinary: boolean): void;
|
|
23
23
|
protected onPingPong(): void;
|
|
24
24
|
protected onPublish(options: PublishOptions): Promise<void>;
|
|
25
|
-
protected onRequest(packet: AnyPacket<
|
|
26
|
-
protected onResponse(response: AnyResponse<
|
|
27
|
-
protected onTransmit<
|
|
25
|
+
protected onRequest(packet: AnyPacket<TIncoming & TPrivateIncoming & ServerPrivateMap, TService>, timestamp: Date, pluginError?: Error): Promise<boolean>;
|
|
26
|
+
protected onResponse(response: AnyResponse<TOutgoing, TPrivateOutgoing & ClientPrivateMap, TService>): void;
|
|
27
|
+
protected onTransmit<TServiceName extends keyof TService, TServiceMethod extends keyof TService[TServiceName], TMethod extends keyof TOutgoing>(request: TransmitMethodRequest<TOutgoing, TMethod> | TransmitServiceRequest<TService, TServiceName, TServiceMethod>): void;
|
|
28
28
|
ping(): Promise<void>;
|
|
29
29
|
setAuthorization(authToken: AuthToken, options?: AuthTokenOptions): Promise<boolean>;
|
|
30
30
|
setAuthorization(signedAuthToken: SignedAuthToken, authToken?: AuthToken): Promise<boolean>;
|
|
31
31
|
setReadyStatus(pingTimeoutMs: number, authError?: Error): void;
|
|
32
|
-
get socket(): ServerSocket<
|
|
33
|
-
set socket(value: ServerSocket<
|
|
32
|
+
get socket(): ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
33
|
+
set socket(value: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>);
|
|
34
34
|
triggerAuthenticationEvents(wasSigned: boolean, wasAuthenticated: boolean): void;
|
|
35
35
|
type: 'server';
|
|
36
36
|
unsubscribe(channel: string): Promise<void>;
|
package/dist/server.d.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { ServerSocket } from "./server-socket.js";
|
|
2
2
|
import { Server as HttpServer } from 'http';
|
|
3
3
|
import { CodecEngine } from "@socket-mesh/formatter";
|
|
4
|
-
import { StreamCleanupMode } from "@socket-mesh/core";
|
|
4
|
+
import { PrivateMethodMap, PublicMethodMap, ServiceMap, StreamCleanupMode } from "@socket-mesh/core";
|
|
5
5
|
import { AuthEngine } from "@socket-mesh/auth-engine";
|
|
6
6
|
import { ServerPlugin } from "./plugin/server-plugin.js";
|
|
7
7
|
import { CloseEvent, ConnectionEvent, ErrorEvent, HandshakeEvent, HeadersEvent, ListeningEvent, ServerEvent, SocketAuthenticateEvent, SocketAuthStateChangeEvent, SocketBadAuthTokenEvent, SocketCloseEvent, SocketConnectEvent, SocketConnectingEvent, SocketDeauthenticateEvent, SocketDisconnectEvent, SocketErrorEvent, SocketMessageEvent, SocketPingEvent, SocketPongEvent, SocketRemoveAuthTokenEvent, SocketRequestEvent, SocketResponseEvent, SocketSubscribeEvent, SocketSubscribeFailEvent, SocketSubscribeStateChangeEvent, SocketUnsubscribeEvent, WarningEvent } from "./server-event.js";
|
|
8
8
|
import { AsyncStreamEmitter } from "@socket-mesh/async-stream-emitter";
|
|
9
9
|
import { DemuxedConsumableStream, StreamEvent } from "@socket-mesh/stream-demux";
|
|
10
10
|
import { ServerOptions } from "./server-options.js";
|
|
11
|
-
import { ServerMap } from "./maps/server-map.js";
|
|
12
11
|
import { Broker } from "./broker/broker.js";
|
|
13
12
|
import { Exchange } from "./broker/exchange.js";
|
|
14
|
-
|
|
13
|
+
import { ChannelMap } from "@socket-mesh/channels";
|
|
14
|
+
export declare class Server<TIncoming extends PublicMethodMap = {}, TChannel extends ChannelMap = {}, TService extends ServiceMap = {}, TOutgoing extends PublicMethodMap = {}, TPrivateIncoming extends PrivateMethodMap = {}, TPrivateOutgoing extends PrivateMethodMap = {}, TServerState extends object = {}, TState extends object = {}> extends AsyncStreamEmitter<ServerEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>> {
|
|
15
15
|
private readonly _callIdGenerator;
|
|
16
16
|
private readonly _wss;
|
|
17
17
|
private _isReady;
|
|
@@ -27,24 +27,24 @@ export declare class Server<T extends ServerMap> extends AsyncStreamEmitter<Serv
|
|
|
27
27
|
socketChannelLimit?: number;
|
|
28
28
|
strictHandshake: boolean;
|
|
29
29
|
readonly auth: AuthEngine;
|
|
30
|
-
readonly brokerEngine: Broker<
|
|
30
|
+
readonly brokerEngine: Broker<TChannel>;
|
|
31
31
|
readonly clients: {
|
|
32
|
-
[id: string]: ServerSocket<
|
|
32
|
+
[id: string]: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
33
33
|
};
|
|
34
34
|
clientCount: number;
|
|
35
35
|
readonly codecEngine: CodecEngine;
|
|
36
36
|
readonly pendingClients: {
|
|
37
|
-
[id: string]: ServerSocket<
|
|
37
|
+
[id: string]: ServerSocket<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>;
|
|
38
38
|
};
|
|
39
39
|
pendingClientCount: number;
|
|
40
40
|
readonly socketStreamCleanupMode: StreamCleanupMode;
|
|
41
41
|
readonly httpServer: HttpServer;
|
|
42
|
-
readonly plugins: ServerPlugin<
|
|
43
|
-
constructor(options?: ServerOptions<
|
|
44
|
-
addPlugin(...plugin: ServerPlugin<
|
|
42
|
+
readonly plugins: ServerPlugin<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>[];
|
|
43
|
+
constructor(options?: ServerOptions<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>);
|
|
44
|
+
addPlugin(...plugin: ServerPlugin<TIncoming, TChannel, TService, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>[]): void;
|
|
45
45
|
private bind;
|
|
46
46
|
close(keepSocketsOpen?: boolean): Promise<void>;
|
|
47
|
-
get exchange(): Exchange<
|
|
47
|
+
get exchange(): Exchange<TChannel>;
|
|
48
48
|
get isListening(): boolean;
|
|
49
49
|
get isReady(): boolean;
|
|
50
50
|
private onClose;
|
|
@@ -58,62 +58,62 @@ export declare class Server<T extends ServerMap> extends AsyncStreamEmitter<Serv
|
|
|
58
58
|
private stopPinging;
|
|
59
59
|
private verifyClient;
|
|
60
60
|
emit(event: "close", data: CloseEvent): void;
|
|
61
|
-
emit(event: "connection", data: ConnectionEvent<
|
|
61
|
+
emit(event: "connection", data: ConnectionEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
62
62
|
emit(event: "error", data: ErrorEvent): void;
|
|
63
63
|
emit(event: "headers", data: HeadersEvent): void;
|
|
64
|
-
emit(event: "handshake", data: HandshakeEvent<
|
|
64
|
+
emit(event: "handshake", data: HandshakeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
65
65
|
emit(event: "listening", data: ListeningEvent): void;
|
|
66
66
|
emit(event: "ready", data: {}): void;
|
|
67
|
-
emit(event: 'socketAuthStateChange', data: SocketAuthStateChangeEvent<
|
|
68
|
-
emit(event: 'socketAuthenticate', data: SocketAuthenticateEvent<
|
|
69
|
-
emit(event: 'socketBadAuthToken', data: SocketBadAuthTokenEvent<
|
|
70
|
-
emit(event: 'socketClose', data: SocketCloseEvent<
|
|
71
|
-
emit(event: 'socketConnect', data: SocketConnectEvent<
|
|
72
|
-
emit(event: 'socketConnectAbort', data: SocketDisconnectEvent<
|
|
73
|
-
emit(event: 'socketConnecting', data: SocketConnectingEvent<
|
|
74
|
-
emit(event: 'socketDeauthenticate', data: SocketDeauthenticateEvent<
|
|
75
|
-
emit(event: 'socketDisconnect', data: SocketDisconnectEvent<
|
|
76
|
-
emit(event: 'socketError', data: SocketErrorEvent<
|
|
77
|
-
emit(event: 'socketMessage', data: SocketMessageEvent<
|
|
78
|
-
emit(event: 'socketPing', data: SocketPingEvent<
|
|
79
|
-
emit(event: 'socketPong', data: SocketPongEvent<
|
|
80
|
-
emit(event: 'socketRemoveAuthToken', data: SocketRemoveAuthTokenEvent<
|
|
81
|
-
emit(event: 'socketRequest', data: SocketRequestEvent<
|
|
82
|
-
emit(event: 'socketResponse', data: SocketResponseEvent<
|
|
83
|
-
emit(event: 'socketSubscribe', data: SocketSubscribeEvent<
|
|
84
|
-
emit(event: 'socketSubscribeFail', data: SocketSubscribeFailEvent<
|
|
85
|
-
emit(event: 'socketSubscribeRequest', data: SocketSubscribeEvent<
|
|
86
|
-
emit(event: 'socketSubscribeStateChange', data: SocketSubscribeStateChangeEvent<
|
|
87
|
-
emit(event: 'socketUnsubscribe', data: SocketUnsubscribeEvent<
|
|
67
|
+
emit(event: 'socketAuthStateChange', data: SocketAuthStateChangeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
68
|
+
emit(event: 'socketAuthenticate', data: SocketAuthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
69
|
+
emit(event: 'socketBadAuthToken', data: SocketBadAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
70
|
+
emit(event: 'socketClose', data: SocketCloseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
71
|
+
emit(event: 'socketConnect', data: SocketConnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
72
|
+
emit(event: 'socketConnectAbort', data: SocketDisconnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
73
|
+
emit(event: 'socketConnecting', data: SocketConnectingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
74
|
+
emit(event: 'socketDeauthenticate', data: SocketDeauthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
75
|
+
emit(event: 'socketDisconnect', data: SocketDisconnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
76
|
+
emit(event: 'socketError', data: SocketErrorEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
77
|
+
emit(event: 'socketMessage', data: SocketMessageEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
78
|
+
emit(event: 'socketPing', data: SocketPingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
79
|
+
emit(event: 'socketPong', data: SocketPongEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
80
|
+
emit(event: 'socketRemoveAuthToken', data: SocketRemoveAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
81
|
+
emit(event: 'socketRequest', data: SocketRequestEvent<TService, TIncoming, TPrivateIncoming>): void;
|
|
82
|
+
emit(event: 'socketResponse', data: SocketResponseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
83
|
+
emit(event: 'socketSubscribe', data: SocketSubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
84
|
+
emit(event: 'socketSubscribeFail', data: SocketSubscribeFailEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
85
|
+
emit(event: 'socketSubscribeRequest', data: SocketSubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
86
|
+
emit(event: 'socketSubscribeStateChange', data: SocketSubscribeStateChangeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
87
|
+
emit(event: 'socketUnsubscribe', data: SocketUnsubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>): void;
|
|
88
88
|
emit(event: "warning", data: WarningEvent): void;
|
|
89
|
-
listen(): DemuxedConsumableStream<StreamEvent<ServerEvent<
|
|
89
|
+
listen(): DemuxedConsumableStream<StreamEvent<ServerEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>>;
|
|
90
90
|
listen(event: "close"): DemuxedConsumableStream<CloseEvent>;
|
|
91
|
-
listen(event: "connection"): DemuxedConsumableStream<ConnectionEvent<
|
|
91
|
+
listen(event: "connection"): DemuxedConsumableStream<ConnectionEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
92
92
|
listen(event: "error"): DemuxedConsumableStream<ErrorEvent>;
|
|
93
|
-
listen(event: "handshake"): DemuxedConsumableStream<HandshakeEvent<
|
|
93
|
+
listen(event: "handshake"): DemuxedConsumableStream<HandshakeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
94
94
|
listen(event: "headers"): DemuxedConsumableStream<HeadersEvent>;
|
|
95
95
|
listen(event: "listening"): DemuxedConsumableStream<ListeningEvent>;
|
|
96
96
|
listen(event: "ready"): DemuxedConsumableStream<{}>;
|
|
97
|
-
listen(event: 'socketAuthStateChange'): DemuxedConsumableStream<SocketAuthStateChangeEvent<
|
|
98
|
-
listen(event: 'socketAuthenticate'): DemuxedConsumableStream<SocketAuthenticateEvent<
|
|
99
|
-
listen(event: 'socketBadAuthToken'): DemuxedConsumableStream<SocketBadAuthTokenEvent<
|
|
100
|
-
listen(event: 'socketClose'): DemuxedConsumableStream<SocketCloseEvent<
|
|
101
|
-
listen(event: 'socketConnect'): DemuxedConsumableStream<SocketConnectEvent<
|
|
102
|
-
listen(event: 'socketConnectAbort'): DemuxedConsumableStream<SocketDisconnectEvent<
|
|
103
|
-
listen(event: 'socketConnecting'): DemuxedConsumableStream<SocketConnectingEvent<
|
|
104
|
-
listen(event: 'socketDeauthenticate'): DemuxedConsumableStream<SocketDeauthenticateEvent<
|
|
105
|
-
listen(event: 'socketDisconnect'): DemuxedConsumableStream<SocketDisconnectEvent<
|
|
106
|
-
listen(event: 'socketError'): DemuxedConsumableStream<SocketErrorEvent<
|
|
107
|
-
listen(event: 'socketMessage'): DemuxedConsumableStream<SocketMessageEvent<
|
|
108
|
-
listen(event: 'socketPing'): DemuxedConsumableStream<SocketPingEvent<
|
|
109
|
-
listen(event: 'socketPong'): DemuxedConsumableStream<SocketPongEvent<
|
|
110
|
-
listen(event: 'socketRemoveAuthToken'): DemuxedConsumableStream<SocketRemoveAuthTokenEvent<
|
|
111
|
-
listen(event: 'socketRequest'): DemuxedConsumableStream<SocketRequestEvent<
|
|
112
|
-
listen(event: 'socketResponse'): DemuxedConsumableStream<SocketResponseEvent<
|
|
113
|
-
listen(event: 'socketSubscribe'): DemuxedConsumableStream<SocketSubscribeEvent<
|
|
114
|
-
listen(event: 'socketSubscribeFail'): DemuxedConsumableStream<SocketSubscribeFailEvent<
|
|
115
|
-
listen(event: 'socketSubscribeRequest'): DemuxedConsumableStream<SocketSubscribeEvent<
|
|
116
|
-
listen(event: 'socketSubscribeStateChange'): DemuxedConsumableStream<SocketSubscribeStateChangeEvent<
|
|
117
|
-
listen(event: 'socketUnsubscribe'): DemuxedConsumableStream<SocketUnsubscribeEvent<
|
|
97
|
+
listen(event: 'socketAuthStateChange'): DemuxedConsumableStream<SocketAuthStateChangeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
98
|
+
listen(event: 'socketAuthenticate'): DemuxedConsumableStream<SocketAuthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
99
|
+
listen(event: 'socketBadAuthToken'): DemuxedConsumableStream<SocketBadAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
100
|
+
listen(event: 'socketClose'): DemuxedConsumableStream<SocketCloseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
101
|
+
listen(event: 'socketConnect'): DemuxedConsumableStream<SocketConnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
102
|
+
listen(event: 'socketConnectAbort'): DemuxedConsumableStream<SocketDisconnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
103
|
+
listen(event: 'socketConnecting'): DemuxedConsumableStream<SocketConnectingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
104
|
+
listen(event: 'socketDeauthenticate'): DemuxedConsumableStream<SocketDeauthenticateEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
105
|
+
listen(event: 'socketDisconnect'): DemuxedConsumableStream<SocketDisconnectEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
106
|
+
listen(event: 'socketError'): DemuxedConsumableStream<SocketErrorEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
107
|
+
listen(event: 'socketMessage'): DemuxedConsumableStream<SocketMessageEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
108
|
+
listen(event: 'socketPing'): DemuxedConsumableStream<SocketPingEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
109
|
+
listen(event: 'socketPong'): DemuxedConsumableStream<SocketPongEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
110
|
+
listen(event: 'socketRemoveAuthToken'): DemuxedConsumableStream<SocketRemoveAuthTokenEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
111
|
+
listen(event: 'socketRequest'): DemuxedConsumableStream<SocketRequestEvent<TService, TIncoming, TPrivateIncoming>>;
|
|
112
|
+
listen(event: 'socketResponse'): DemuxedConsumableStream<SocketResponseEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
113
|
+
listen(event: 'socketSubscribe'): DemuxedConsumableStream<SocketSubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
114
|
+
listen(event: 'socketSubscribeFail'): DemuxedConsumableStream<SocketSubscribeFailEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
115
|
+
listen(event: 'socketSubscribeRequest'): DemuxedConsumableStream<SocketSubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
116
|
+
listen(event: 'socketSubscribeStateChange'): DemuxedConsumableStream<SocketSubscribeStateChangeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
117
|
+
listen(event: 'socketUnsubscribe'): DemuxedConsumableStream<SocketUnsubscribeEvent<TChannel, TService, TIncoming, TOutgoing, TPrivateIncoming, TPrivateOutgoing, TServerState, TState>>;
|
|
118
118
|
listen(event: "warning"): DemuxedConsumableStream<WarningEvent>;
|
|
119
119
|
}
|
package/package.json
CHANGED
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@socket-mesh/server",
|
|
3
3
|
"description": "A TCP socket pair for easily transmitting full messages without worrying about request size limits.",
|
|
4
|
-
"version": "18.1.
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
"version": "18.1.4",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"files": ["./dist"],
|
|
9
9
|
"author": {
|
|
10
10
|
"name": "Greg Kimmy"
|
|
11
11
|
},
|
|
12
12
|
"scripts": {
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
"build": "node ../../scripts/build.mjs && tsc --project tsconfig.build.json",
|
|
14
|
+
"deploy": "npm run build && node ../../scripts/publish.mjs",
|
|
15
15
|
"test": "cross-env node --test --import=./run-test.js test/server-test.ts"
|
|
16
16
|
},
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
"repository": {
|
|
18
|
+
"type": "git",
|
|
19
|
+
"url": "git+https://github.com/socket-mesh/client-server.git"
|
|
20
|
+
},
|
|
21
|
+
"bugs": {
|
|
22
22
|
"url": "https://github.com/socket-mesh/client-server/labels/server"
|
|
23
|
-
|
|
23
|
+
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@socket-mesh/local-storage": "^1.0.2",
|
|
26
26
|
"@types/base64id": "^2.0.2",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@socket-mesh/async-stream-emitter": "^7.1.2",
|
|
32
32
|
"@socket-mesh/auth": "^2.2.0",
|
|
33
33
|
"@socket-mesh/auth-engine": "^1.0.0",
|
|
34
|
-
"@socket-mesh/client": "^18.1.
|
|
34
|
+
"@socket-mesh/client": "^18.1.5",
|
|
35
35
|
"@socket-mesh/errors": "^3.2.0",
|
|
36
36
|
"@socket-mesh/formatter": "^4.1.0",
|
|
37
37
|
"base64id": "^2.0.0",
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { PublicMethodMap } from "@socket-mesh/core";
|
|
2
|
-
import { ServerMap } from "./server-map.js";
|
|
3
|
-
export interface ClientMapFromServer<T extends ServerMap> {
|
|
4
|
-
Channel: T['Channel'];
|
|
5
|
-
Incoming: T['Outgoing'] & T['PrivateOutgoing'];
|
|
6
|
-
Service: T['Service'];
|
|
7
|
-
Outgoing: PublicMethodMap;
|
|
8
|
-
PrivateOutgoing: T['PrivateIncoming'];
|
|
9
|
-
State: object;
|
|
10
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { ChannelMap } from "@socket-mesh/channels";
|
|
2
|
-
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
3
|
-
import { PrivateMethodMap, PublicMethodMap, ServiceMap } from "@socket-mesh/core";
|
|
4
|
-
import { ServerSocketState } from "../server-socket-state.js";
|
|
5
|
-
export interface ServerMap {
|
|
6
|
-
Channel: ChannelMap;
|
|
7
|
-
Service: ServiceMap;
|
|
8
|
-
Incoming: PublicMethodMap;
|
|
9
|
-
Outgoing: PublicMethodMap;
|
|
10
|
-
PrivateIncoming: PrivateMethodMap;
|
|
11
|
-
PrivateOutgoing: PrivateMethodMap;
|
|
12
|
-
ServerState: object;
|
|
13
|
-
State: object;
|
|
14
|
-
}
|
|
15
|
-
export interface BasicServerMap<TIncoming extends PublicMethodMap = {}, TChannels extends ChannelMap = {}, TState extends object = {}, TOutgoing extends object = {}> {
|
|
16
|
-
Channel: TChannels;
|
|
17
|
-
Service: {};
|
|
18
|
-
Incoming: TIncoming;
|
|
19
|
-
Outgoing: TOutgoing;
|
|
20
|
-
PrivateIncoming: ServerPrivateMap;
|
|
21
|
-
PrivateOutgoing: ClientPrivateMap;
|
|
22
|
-
ServerState: {};
|
|
23
|
-
State: TState & ServerSocketState;
|
|
24
|
-
}
|
package/dist/maps/server-map.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ChannelMap } from "@socket-mesh/channels";
|
|
2
|
-
import { ClientPrivateMap, ServerPrivateMap } from "@socket-mesh/client";
|
|
3
|
-
import { PublicMethodMap } from "@socket-mesh/core";
|
|
4
|
-
import { ServerSocketState } from "../server-socket-state.js";
|
|
5
|
-
import { ServerMap } from "./server-map.js";
|
|
6
|
-
export interface BasicSocketMapServer<TIncoming extends PublicMethodMap = {}, TChannels extends ChannelMap = {}, TState extends object = {}, TOutgoing extends object = {}> {
|
|
7
|
-
Incoming: TIncoming & ServerPrivateMap;
|
|
8
|
-
Service: {};
|
|
9
|
-
Outgoing: TOutgoing;
|
|
10
|
-
PrivateOutgoing: ClientPrivateMap;
|
|
11
|
-
State: TState & ServerSocketState;
|
|
12
|
-
}
|
|
13
|
-
export interface SocketMapFromServer<T extends ServerMap> {
|
|
14
|
-
Incoming: T['Incoming'] & T['PrivateIncoming'] & ServerPrivateMap;
|
|
15
|
-
Service: T['Service'];
|
|
16
|
-
Outgoing: T['Outgoing'];
|
|
17
|
-
PrivateOutgoing: T['PrivateOutgoing'] & ClientPrivateMap;
|
|
18
|
-
State: T['State'] & ServerSocketState;
|
|
19
|
-
}
|
package/dist/maps/socket-map.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
File without changes
|