mirror of
https://github.com/Terncode/pixel.horse.git
synced 2026-09-24 13:55:04 +02:00
Remove unused node-ipc
This commit is contained in:
Generated
-15
@@ -50,7 +50,6 @@
|
|||||||
"@types/mongoose": "^5.5.15",
|
"@types/mongoose": "^5.5.15",
|
||||||
"@types/morgan": "^1.7.37",
|
"@types/morgan": "^1.7.37",
|
||||||
"@types/node": "^12.7.2",
|
"@types/node": "^12.7.2",
|
||||||
"@types/node-ipc": "^9.1.1",
|
|
||||||
"@types/passport": "^1.0.1",
|
"@types/passport": "^1.0.1",
|
||||||
"@types/passport-discord": "^0.1.3",
|
"@types/passport-discord": "^0.1.3",
|
||||||
"@types/passport-local": "^1.0.33",
|
"@types/passport-local": "^1.0.33",
|
||||||
@@ -126,7 +125,6 @@
|
|||||||
"mongoose": "^5.6.11",
|
"mongoose": "^5.6.11",
|
||||||
"morgan": "^1.9.1",
|
"morgan": "^1.9.1",
|
||||||
"ngx-bootstrap": "^18.0.1",
|
"ngx-bootstrap": "^18.0.1",
|
||||||
"node-ipc": "^9.1.1",
|
|
||||||
"parallel-webpack": "^2.4.0",
|
"parallel-webpack": "^2.4.0",
|
||||||
"passport": "^0.4.0",
|
"passport": "^0.4.0",
|
||||||
"passport-deviantart": "0.0.5",
|
"passport-deviantart": "0.0.5",
|
||||||
@@ -6374,19 +6372,6 @@
|
|||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/node-ipc": {
|
|
||||||
"version": "9.1.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/node-ipc/-/node-ipc-9.1.1.tgz",
|
|
||||||
"integrity": "sha512-0NoDCXvNJagYdg0SnXw7aDuxJyzy1cQevRVlCdTM4q0xAQ7Tg5VbQ9jpreKGOaLyql8r9T60hy/wA/QDIk1+Lg==",
|
|
||||||
"dependencies": {
|
|
||||||
"@types/node": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/node-ipc/node_modules/@types/node": {
|
|
||||||
"version": "12.7.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.2.tgz",
|
|
||||||
"integrity": "sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg=="
|
|
||||||
},
|
|
||||||
"node_modules/@types/oauth": {
|
"node_modules/@types/oauth": {
|
||||||
"version": "0.9.1",
|
"version": "0.9.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/oauth/-/oauth-0.9.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/oauth/-/oauth-0.9.1.tgz",
|
||||||
|
|||||||
@@ -92,7 +92,6 @@
|
|||||||
"@types/mongoose": "^5.5.15",
|
"@types/mongoose": "^5.5.15",
|
||||||
"@types/morgan": "^1.7.37",
|
"@types/morgan": "^1.7.37",
|
||||||
"@types/node": "^12.7.2",
|
"@types/node": "^12.7.2",
|
||||||
"@types/node-ipc": "^9.1.1",
|
|
||||||
"@types/passport": "^1.0.1",
|
"@types/passport": "^1.0.1",
|
||||||
"@types/passport-discord": "^0.1.3",
|
"@types/passport-discord": "^0.1.3",
|
||||||
"@types/passport-local": "^1.0.33",
|
"@types/passport-local": "^1.0.33",
|
||||||
@@ -168,7 +167,6 @@
|
|||||||
"mongoose": "^5.6.11",
|
"mongoose": "^5.6.11",
|
||||||
"morgan": "^1.9.1",
|
"morgan": "^1.9.1",
|
||||||
"ngx-bootstrap": "^18.0.1",
|
"ngx-bootstrap": "^18.0.1",
|
||||||
"node-ipc": "^9.1.1",
|
|
||||||
"parallel-webpack": "^2.4.0",
|
"parallel-webpack": "^2.4.0",
|
||||||
"passport": "^0.4.0",
|
"passport": "^0.4.0",
|
||||||
"passport-deviantart": "0.0.5",
|
"passport-deviantart": "0.0.5",
|
||||||
|
|||||||
@@ -1,98 +0,0 @@
|
|||||||
import * as ipc from 'node-ipc';
|
|
||||||
|
|
||||||
export interface LoginServer {
|
|
||||||
hello(message: string): Promise<void>;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface GameServer {
|
|
||||||
something(): Promise<string>;
|
|
||||||
}
|
|
||||||
|
|
||||||
interface SocketState<TServer, TClient> {
|
|
||||||
server: TServer;
|
|
||||||
client: TClient;
|
|
||||||
}
|
|
||||||
|
|
||||||
export function startIPCServer<TServer, TClient extends Object>(
|
|
||||||
id: string, createServer: (client: TClient) => TServer
|
|
||||||
) {
|
|
||||||
ipc.config.id = id;
|
|
||||||
ipc.config.retry = 500;
|
|
||||||
ipc.config.silent = true;
|
|
||||||
ipc.serve(() => {
|
|
||||||
const sockets = new Map<any, SocketState<TServer, TClient>>();
|
|
||||||
|
|
||||||
ipc.server.on('connect', (socket) => {
|
|
||||||
console.log('server:connect');
|
|
||||||
const client: TClient = new Proxy<TClient>({} as any, {
|
|
||||||
get: (_, key) => (...args: any[]) => {
|
|
||||||
ipc.server.emit(socket, 'message', [key, args]);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
const server = createServer(client);
|
|
||||||
sockets.set(socket, { server, client });
|
|
||||||
});
|
|
||||||
|
|
||||||
ipc.server.on('message', (data, socket) => {
|
|
||||||
console.log('server:message', data);
|
|
||||||
const socketState = sockets.get(socket);
|
|
||||||
|
|
||||||
if (socketState) {
|
|
||||||
(socketState.server as any)[data[0]](...data[1]);
|
|
||||||
} else {
|
|
||||||
console.error('missing server for socket');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
ipc.server.on('error', (error) => {
|
|
||||||
console.log('server:error', error);
|
|
||||||
});
|
|
||||||
|
|
||||||
ipc.server.on('disconnect', (socket) => {
|
|
||||||
console.log('server:disconnect');
|
|
||||||
sockets.delete(socket);
|
|
||||||
});
|
|
||||||
|
|
||||||
ipc.server.on('socket.disconnected', (socket, _destroyedSocketID) => {
|
|
||||||
console.log('server:socket.disconnected');
|
|
||||||
sockets.delete(socket);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
ipc.server.start();
|
|
||||||
}
|
|
||||||
|
|
||||||
export function startIPCClient<TServer extends Object, TClient>(
|
|
||||||
serverId: string, clientId: string, createClient: (server: TServer) => TClient
|
|
||||||
) {
|
|
||||||
ipc.config.id = clientId;
|
|
||||||
ipc.config.retry = 500;
|
|
||||||
ipc.config.silent = true;
|
|
||||||
ipc.connectTo(serverId, () => {
|
|
||||||
let connected = false;
|
|
||||||
const socket = ipc.of[serverId];
|
|
||||||
const server: TServer = new Proxy<TServer>({} as any, {
|
|
||||||
get: (_, key) => (...args: any[]) => {
|
|
||||||
socket.emit('message', [key, args]);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
const client = createClient(server);
|
|
||||||
|
|
||||||
socket.on('connect', () => {
|
|
||||||
connected = true;
|
|
||||||
console.log('client:connect');
|
|
||||||
});
|
|
||||||
|
|
||||||
socket.on('disconnect', () => {
|
|
||||||
if (connected) {
|
|
||||||
connected = false;
|
|
||||||
console.log('client:disconnect');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
socket.on('message', (data: any) => {
|
|
||||||
console.log('client:message', data);
|
|
||||||
(client as any)[data[0]](...data[1]);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user