flow: sockies

This commit is contained in:
cha0s 2020-12-02 17:25:29 -06:00
parent 69972fde5a
commit ddcf028f08
11 changed files with 358 additions and 181 deletions

View File

@ -12,6 +12,8 @@
"watch": "NODE_PATH=./node_modules webpack --watch --mode development" "watch": "NODE_PATH=./node_modules webpack --watch --mode development"
}, },
"files": [ "files": [
"client.js",
"client.js.map",
"index.js", "index.js",
"index.js.map", "index.js.map",
"passport.js", "passport.js",
@ -22,10 +24,12 @@
"dependencies": { "dependencies": {
"@latus/core": "^1.0.0", "@latus/core": "^1.0.0",
"@latus/http": "^1.0.0", "@latus/http": "^1.0.0",
"buffer": "^6.0.3",
"debug": "^4.3.1",
"express-socket.io-session": "^1.3.5", "express-socket.io-session": "^1.3.5",
"passport": "^0.4.1", "passport": "^0.4.1",
"socket.io": "^3.0.3", "socket.io": "2.3.0",
"socket.io-client": "^3.0.3" "socket.io-client": "2.3.0"
}, },
"devDependencies": { "devDependencies": {
"@neutrinojs/airbnb-base": "^9.4.0", "@neutrinojs/airbnb-base": "^9.4.0",

View File

@ -0,0 +1,11 @@
import SocketClient from './socket';
// eslint-disable-next-line import/prefer-default-export
export const $$latus = {
hooks: {
'@latus/http/client/up': (plugins) => {
const socket = new SocketClient(plugins);
socket.connect();
},
},
};

View File

@ -0,0 +1,103 @@
import D from 'debug';
import io from 'socket.io-client';
import {Class, compose, EventEmitter} from '@latus/core';
import SocketIoParser from '../packet/socket.io-parser';
import {all} from '../packet/packets';
const debug = D('@latus/socket/client/socket');
const decorate = compose(
EventEmitter,
);
export default class SocketClient extends decorate(Class) {
constructor(plugins) {
super();
const {
config: {
'@latus/core/client': {id},
},
} = plugins;
this.isConnected = false;
this.isReconnecting = false;
this.options = {
parser: SocketIoParser(plugins),
path: `/${id}`,
perMessageDeflate: false,
...plugins.invokeReduce('@latus/socket/client', {}, (r, o) => ({...r, ...o})),
};
this.plugins = plugins;
this.socket = null;
}
connect(address) {
if (this.socket) {
this.socket.destroy();
}
this.address = address;
debug('connecting to %s', this.address);
this.socket = io(this.address, {
...this.options,
});
this.socket.on('connect', () => {
debug('connect');
this.isConnected = true;
this.emit('connect');
});
[
'connect',
'connect_error',
'connect_timeout',
'error',
'disconnect',
'reconnect',
'reconnect_attempt',
'reconnecting',
'reconnect_error',
'reconnect_failed',
'ping',
'pong',
].forEach((type) => this.socket.on('type', (...args) => this.emit(type, ...args)));
const Packets = all(this.plugins);
for (let i = 0; i < Packets.length; i++) {
const Packet = Packets[i];
const {id} = Packet;
this.socket.on(id, (data, fn) => {
const packet = new Packet(data);
debug('recieved packet %s(%o)', Packet.name, packet.data);
this.emit('packet', packet, fn);
});
}
}
disconnect() {
this.socket.disconnect();
}
get id() {
return this.socket ? this.socket.id : undefined;
}
send(packet, fn) {
const {id} = packet.constructor;
debug('sending packet %s(%o)', packet.constructor.name, packet.data);
this.socket.binary(true).emit(id, packet.data, fn);
}
get session() {
return this.socket.handshake.session;
}
to(channel) {
return {
send: (packet) => {
const {id} = packet.constructor;
this.socket.binary(true).to(channel).emit(id, packet.data);
},
};
}
}

View File

@ -8,9 +8,12 @@ export const $$latus = {
'@latus/core/config': () => ({ '@latus/core/config': () => ({
middleware: [], middleware: [],
}), }),
'@latus/http/plugins': () => ({
'@latus/socket/client': {},
}),
'@latus/http/server/up': async (httpServer, plugins) => { '@latus/http/server/up': async (httpServer, plugins) => {
socketServer = createSocketServer(); socketServer = createSocketServer(plugins);
socketServer.open(httpServer, plugins); socketServer.open(httpServer);
}, },
'@latus/repl/context': () => ({ '@latus/repl/context': () => ({
socketServer, socketServer,

View File

@ -1,7 +1,7 @@
import SocketServer from './server'; import SocketServer from './server';
export function createSocketServer() { export function createSocketServer(plugins) {
return new SocketServer(); return new SocketServer(plugins);
} }
export function destroySocketServer(socketServer) { export function destroySocketServer(socketServer) {

View File

@ -1,16 +1,16 @@
import {arrayFlatten} from '@latus/core'; import {arrayFlatten} from '@latus/core';
const ensurePackets = (plugins) => { const ensurePackets = (plugins) => {
if (!plugins['@latus/socket'].packets) { if (!plugins.config['%packets']) {
const Packets = arrayFlatten(plugins.invokeFlat('@latus/socket/packets')); const Packets = arrayFlatten(plugins.invokeFlat('@latus/socket/packets'));
/* eslint-disable no-param-reassign */ /* eslint-disable no-param-reassign */
Packets.forEach((Packet, i) => { Packets.forEach((Packet, i) => {
Packet.id = i; Packet.id = i;
}); });
plugins['@latus/socket'].packets = Packets; plugins.config['%packets'] = Packets;
/* eslint-enable no-param-reassign */ /* eslint-enable no-param-reassign */
} }
return plugins['@latus/socket'].packets; return plugins.config['%packets'];
}; };
export const all = (plugins) => ensurePackets(plugins); export const all = (plugins) => ensurePackets(plugins);

View File

@ -62,6 +62,9 @@ const Decoder = (plugins) => class Decoder extends decorate(class {}) {
} }
} }
// eslint-disable-next-line class-methods-use-this
destroy() {}
parseBinary(binary) { parseBinary(binary) {
const packet = inflate(Buffer.from(binary)); const packet = inflate(Buffer.from(binary));
const view = new Uint8Array(packet); const view = new Uint8Array(packet);

View File

@ -10,9 +10,10 @@ const decorate = compose(
export default class SocketServer extends decorate(Class) { export default class SocketServer extends decorate(Class) {
constructor() { constructor(plugins) {
super(); super();
this.onConnect = this.onConnect.bind(this); this.onConnect = this.onConnect.bind(this);
this.plugins = plugins;
} }
close(fn) { close(fn) {
@ -26,29 +27,30 @@ export default class SocketServer extends decorate(Class) {
onConnect(socket) { onConnect(socket) {
const serverSocket = new ServerSocket(socket, this.plugins); const serverSocket = new ServerSocket(socket, this.plugins);
serverSocket.handshake.adapter = this.io.of('/').adapter; serverSocket.req.adapter = this.io.of('/').adapter;
this.emit('connect', serverSocket); this.emit('connect', serverSocket);
} }
open(httpServer, plugins) { open(httpServer) {
const { const {
config: { config: {
'@latus/core': {id}, '@latus/core': {id},
'@latus/socket': {middleware}, '@latus/socket': {middleware},
}, },
} = plugins; } = this.plugins;
this.io = SocketIoServer(httpServer, { this.io = SocketIoServer(httpServer, {
parser: SocketIoParser(plugins), parser: SocketIoParser(this.plugins),
path: `/${id}`, path: `/${id}`,
perMessageDeflate: false, perMessageDeflate: false,
serveClient: false, serveClient: false,
...plugins.invokeReduce('@latus/socket/server', {}, (r, o) => ({...r, ...o})), ...this.plugins.invokeReduce('@latus/socket/server', {}, (r, o) => ({...r, ...o})),
}); });
this.io.on('connect', this.onConnect); this.io.on('connect', this.onConnect);
for (let i = 0; i < middleware.length; i++) { for (let i = 0; i < middleware.length; i++) {
this.io.use( const fn = this.plugins.invokePlugin('@latus/socket/middleware', middleware[i], this);
plugins.invokePlugin('@latus/socket/middleware', middleware[i], this), if (fn) {
); this.io.use(fn);
}
} }
} }

View File

@ -5,7 +5,7 @@ import {session} from '@latus/http/session';
// eslint-disable-next-line import/prefer-default-export // eslint-disable-next-line import/prefer-default-export
export const $$latus = { export const $$latus = {
hooks: { hooks: {
'@latus/socket/middleware': (plugins) => ( '@latus/socket/middleware': (socketServer, plugins) => (
socketSession(session( socketSession(session(
plugins.invokeReduce('@latus/socket/session', {}, (r, o) => ({...r, ...o})), plugins.invokeReduce('@latus/socket/session', {}, (r, o) => ({...r, ...o})),
)) ))

View File

@ -1,17 +1,27 @@
import {Class, compose, EventEmitter} from '@latus/core';
import D from 'debug';
import {all} from './packet/packets'; import {all} from './packet/packets';
export default class ServerSocket { const debug = D('@latus/socket/server/socket');
const decorate = compose(
EventEmitter,
);
export default class ServerSocket extends decorate(Class) {
constructor(socket, plugins) { constructor(socket, plugins) {
super();
this.socket = socket; this.socket = socket;
const entries = Object.entries(all(plugins)); const Packets = all(plugins);
for (let i = 0; i < entries.length; i++) { for (let i = 0; i < Packets.length; i++) {
const [, Packet] = entries[i]; const Packet = Packets[i];
const {id} = Packet; const {id} = Packet;
// debug('Registering packet %s(id: %s)', Packet.name, id); debug('Registering packet %s(id: %s)', Packet.name, id);
this.socket.on(id, (data, fn) => { this.socket.on(id, (data, fn) => {
const packet = new Packet(data); const packet = new Packet(data);
// debug('recieved packet %o', packet); debug('recieved packet %o', packet);
this.emit('packet', packet, fn); this.emit('packet', packet, fn);
}); });
} }
@ -48,7 +58,7 @@ export default class ServerSocket {
} }
static send(socket, packet, fn) { static send(socket, packet, fn) {
// debug('sending packet %o', packet); debug('sending packet %o', packet);
const {id} = packet.constructor; const {id} = packet.constructor;
socket.binary(true).emit(id, packet.data, fn); socket.binary(true).emit(id, packet.data, fn);
} }
@ -58,7 +68,7 @@ export default class ServerSocket {
} }
to(room, packet, fn) { to(room, packet, fn) {
// debug('broadcasting to %s', room); debug('broadcasting to %s', room);
this.constructor.send(this.socket.to(room), packet, fn); this.constructor.send(this.socket.to(room), packet, fn);
} }

View File

@ -844,16 +844,16 @@
"@latus/core@1.0.0", "@latus/core@^1.0.0": "@latus/core@1.0.0", "@latus/core@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#a2a03605061c9d4d4b5ad2125c16b1f723f8e914" resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#35e03f8961882020c06a7b0054860cda15c68fc2"
integrity sha512-Yn59OuFEVdoczn8OGaBgcqxoh0XUq9SCyA/ozEW4vXzjFrEBFLStdvzUL+el1LsnHbVlLCgoFAzAleipgJXwHg== integrity sha512-9LZtmBR/cYInKNuY8yOUD6dYJqpXU0EhiLrDr3wW5aFJNZL1D9qYlkQxf+h6PZHU2icTTqSfmkTcjj+q2qJ8ig==
dependencies: dependencies:
js-yaml "3.14.0" js-yaml "3.14.0"
webpack-virtual-modules "0.3.2" webpack-virtual-modules "0.3.2"
"@latus/http@^1.0.0": "@latus/http@^1.0.0":
version "1.0.0" version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#734cb9de2a5149ad1795fb69115a2b34ccb9168c" resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#ca016b659e5073e82eea65e9ce7a52bc85d4b028"
integrity sha512-dmOFRKrrY8ODpM+QPOCKUGTsXM9e80M5D2crm2LTQ5u8LUzLtz7rZIKuvC0Fff1l3Pe3HdXjpcyAQPuY6SItgg== integrity sha512-dywTB24dnCdveN4IwWVKzv7AjtBLgQuiY4R+GLCI/R1NqFARL53pgi/BJd/Van1JR+TZRUH4qYyerpNo/76ong==
dependencies: dependencies:
"@latus/core" "1.0.0" "@latus/core" "1.0.0"
"@neutrinojs/web" "^9.1.0" "@neutrinojs/web" "^9.1.0"
@ -1006,57 +1006,6 @@
resolved "https://npm.i12e.cha0s.io/@types%2fanymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a" resolved "https://npm.i12e.cha0s.io/@types%2fanymatch/-/anymatch-1.3.1.tgz#336badc1beecb9dacc38bea2cf32adf627a8421a"
integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA== integrity sha512-/+CRPXpBDpo2RK9C68N3b2cOvO0Cf5B9aPijHsoDQTHivnGSObdOF2BRQOYjojWTDy6nQvMjmqRXIxH55VjxxA==
"@types/body-parser@*":
version "1.19.0"
resolved "https://npm.i12e.cha0s.io/@types%2fbody-parser/-/body-parser-1.19.0.tgz#0685b3c47eb3006ffed117cdd55164b61f80538f"
integrity sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==
dependencies:
"@types/connect" "*"
"@types/node" "*"
"@types/component-emitter@^1.2.10":
version "1.2.10"
resolved "https://npm.i12e.cha0s.io/@types%2fcomponent-emitter/-/component-emitter-1.2.10.tgz#ef5b1589b9f16544642e473db5ea5639107ef3ea"
integrity sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg==
"@types/connect@*":
version "3.4.33"
resolved "https://npm.i12e.cha0s.io/@types%2fconnect/-/connect-3.4.33.tgz#31610c901eca573b8713c3330abc6e6b9f588546"
integrity sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A==
dependencies:
"@types/node" "*"
"@types/cookie@^0.4.0":
version "0.4.0"
resolved "https://npm.i12e.cha0s.io/@types%2fcookie/-/cookie-0.4.0.tgz#14f854c0f93d326e39da6e3b6f34f7d37513d108"
integrity sha512-y7mImlc/rNkvCRmg8gC3/lj87S7pTUIJ6QGjwHR9WQJcFs+ZMTOaoPrkdFA/YdbuqVEmEbb5RdhVxMkAcgOnpg==
"@types/cors@^2.8.8":
version "2.8.8"
resolved "https://npm.i12e.cha0s.io/@types%2fcors/-/cors-2.8.8.tgz#317a8d8561995c60e35b9e0fcaa8d36660c98092"
integrity sha512-fO3gf3DxU2Trcbr75O7obVndW/X5k8rJNZkLXlQWStTHhP71PkRqjwPIEI0yMnJdg9R9OasjU+Bsr+Hr1xy/0w==
dependencies:
"@types/express" "*"
"@types/express-serve-static-core@*":
version "4.17.14"
resolved "https://npm.i12e.cha0s.io/@types%2fexpress-serve-static-core/-/express-serve-static-core-4.17.14.tgz#cabf91debeeb3cb04b798e2cff908864e89b6106"
integrity sha512-uFTLwu94TfUFMToXNgRZikwPuZdOtDgs3syBtAIr/OXorL1kJqUJT9qCLnRZ5KBOWfZQikQ2xKgR2tnDj1OgDA==
dependencies:
"@types/node" "*"
"@types/qs" "*"
"@types/range-parser" "*"
"@types/express@*":
version "4.17.9"
resolved "https://npm.i12e.cha0s.io/@types%2fexpress/-/express-4.17.9.tgz#f5f2df6add703ff28428add52bdec8a1091b0a78"
integrity sha512-SDzEIZInC4sivGIFY4Sz1GG6J9UObPwCInYJjko2jzOf/Imx/dlpume6Xxwj1ORL82tBbmN4cPDIDkLbWHk9hw==
dependencies:
"@types/body-parser" "*"
"@types/express-serve-static-core" "*"
"@types/qs" "*"
"@types/serve-static" "*"
"@types/glob@^7.1.1": "@types/glob@^7.1.1":
version "7.1.3" version "7.1.3"
resolved "https://npm.i12e.cha0s.io/@types%2fglob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183" resolved "https://npm.i12e.cha0s.io/@types%2fglob/-/glob-7.1.3.tgz#e6ba80f36b7daad2c685acd9266382e68985c183"
@ -1080,39 +1029,16 @@
resolved "https://npm.i12e.cha0s.io/@types%2fjson5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" resolved "https://npm.i12e.cha0s.io/@types%2fjson5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4= integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
"@types/mime@*":
version "2.0.3"
resolved "https://npm.i12e.cha0s.io/@types%2fmime/-/mime-2.0.3.tgz#c893b73721db73699943bfc3653b1deb7faa4a3a"
integrity sha512-Jus9s4CDbqwocc5pOAnh8ShfrnMcPHuJYzVcSUU7lrh8Ni5HuIqX3oilL86p3dlTrk0LzHRCgA/GQ7uNCw6l2Q==
"@types/minimatch@*": "@types/minimatch@*":
version "3.0.3" version "3.0.3"
resolved "https://npm.i12e.cha0s.io/@types%2fminimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d" resolved "https://npm.i12e.cha0s.io/@types%2fminimatch/-/minimatch-3.0.3.tgz#3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d"
integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA== integrity sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==
"@types/node@*", "@types/node@^14.14.7": "@types/node@*":
version "14.14.10" version "14.14.10"
resolved "https://npm.i12e.cha0s.io/@types%2fnode/-/node-14.14.10.tgz#5958a82e41863cfc71f2307b3748e3491ba03785" resolved "https://npm.i12e.cha0s.io/@types%2fnode/-/node-14.14.10.tgz#5958a82e41863cfc71f2307b3748e3491ba03785"
integrity sha512-J32dgx2hw8vXrSbu4ZlVhn1Nm3GbeCFNw2FWL8S5QKucHGY0cyNwjdQdO+KMBZ4wpmC7KhLCiNsdk1RFRIYUQQ== integrity sha512-J32dgx2hw8vXrSbu4ZlVhn1Nm3GbeCFNw2FWL8S5QKucHGY0cyNwjdQdO+KMBZ4wpmC7KhLCiNsdk1RFRIYUQQ==
"@types/qs@*":
version "6.9.5"
resolved "https://npm.i12e.cha0s.io/@types%2fqs/-/qs-6.9.5.tgz#434711bdd49eb5ee69d90c1d67c354a9a8ecb18b"
integrity sha512-/JHkVHtx/REVG0VVToGRGH2+23hsYLHdyG+GrvoUGlGAd0ErauXDyvHtRI/7H7mzLm+tBCKA7pfcpkQ1lf58iQ==
"@types/range-parser@*":
version "1.2.3"
resolved "https://npm.i12e.cha0s.io/@types%2frange-parser/-/range-parser-1.2.3.tgz#7ee330ba7caafb98090bece86a5ee44115904c2c"
integrity sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==
"@types/serve-static@*":
version "1.13.8"
resolved "https://npm.i12e.cha0s.io/@types%2fserve-static/-/serve-static-1.13.8.tgz#851129d434433c7082148574ffec263d58309c46"
integrity sha512-MoJhSQreaVoL+/hurAZzIm8wafFR6ajiTM1m4A0kv6AGeVBl4r4pOV8bGFrjjq1sGxDTnCoF8i22o0/aE5XCyA==
dependencies:
"@types/mime" "*"
"@types/node" "*"
"@types/source-list-map@*": "@types/source-list-map@*":
version "0.1.2" version "0.1.2"
resolved "https://npm.i12e.cha0s.io/@types%2fsource-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" resolved "https://npm.i12e.cha0s.io/@types%2fsource-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9"
@ -1334,6 +1260,11 @@ acorn@^7.4.0:
resolved "https://npm.i12e.cha0s.io/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" resolved "https://npm.i12e.cha0s.io/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
after@0.8.2:
version "0.8.2"
resolved "https://npm.i12e.cha0s.io/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f"
integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=
ajv-errors@^1.0.0: ajv-errors@^1.0.0:
version "1.0.1" version "1.0.1"
resolved "https://npm.i12e.cha0s.io/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" resolved "https://npm.i12e.cha0s.io/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d"
@ -1493,6 +1424,11 @@ array.prototype.flat@^1.2.3:
define-properties "^1.1.3" define-properties "^1.1.3"
es-abstract "^1.18.0-next.1" es-abstract "^1.18.0-next.1"
arraybuffer.slice@~0.0.7:
version "0.0.7"
resolved "https://npm.i12e.cha0s.io/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675"
integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==
asn1.js@^5.2.0: asn1.js@^5.2.0:
version "5.4.1" version "5.4.1"
resolved "https://npm.i12e.cha0s.io/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" resolved "https://npm.i12e.cha0s.io/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07"
@ -1536,6 +1472,11 @@ async-each@^1.0.1:
resolved "https://npm.i12e.cha0s.io/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" resolved "https://npm.i12e.cha0s.io/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf"
integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==
async-limiter@~1.0.0:
version "1.0.1"
resolved "https://npm.i12e.cha0s.io/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
atob@^2.1.2: atob@^2.1.2:
version "2.1.2" version "2.1.2"
resolved "https://npm.i12e.cha0s.io/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" resolved "https://npm.i12e.cha0s.io/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9"
@ -1593,12 +1534,17 @@ base64-arraybuffer@0.1.4:
resolved "https://npm.i12e.cha0s.io/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" resolved "https://npm.i12e.cha0s.io/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812"
integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=
base64-arraybuffer@0.1.5:
version "0.1.5"
resolved "https://npm.i12e.cha0s.io/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8"
integrity sha1-c5JncZI7Whl0etZmqlzUv5xunOg=
base64-js@^1.0.2, base64-js@^1.3.1: base64-js@^1.0.2, base64-js@^1.3.1:
version "1.5.1" version "1.5.1"
resolved "https://npm.i12e.cha0s.io/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" resolved "https://npm.i12e.cha0s.io/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
base64id@2.0.0, base64id@~2.0.0: base64id@2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://npm.i12e.cha0s.io/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" resolved "https://npm.i12e.cha0s.io/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6"
integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==
@ -1616,6 +1562,13 @@ base@^0.11.1:
mixin-deep "^1.2.0" mixin-deep "^1.2.0"
pascalcase "^0.1.1" pascalcase "^0.1.1"
better-assert@~1.0.0:
version "1.0.2"
resolved "https://npm.i12e.cha0s.io/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522"
integrity sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=
dependencies:
callsite "1.0.0"
big.js@^5.2.2: big.js@^5.2.2:
version "5.2.2" version "5.2.2"
resolved "https://npm.i12e.cha0s.io/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" resolved "https://npm.i12e.cha0s.io/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
@ -1638,6 +1591,11 @@ bindings@^1.5.0:
dependencies: dependencies:
file-uri-to-path "1.0.0" file-uri-to-path "1.0.0"
blob@0.0.5:
version "0.0.5"
resolved "https://npm.i12e.cha0s.io/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683"
integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==
bluebird@^3.5.5: bluebird@^3.5.5:
version "3.7.2" version "3.7.2"
resolved "https://npm.i12e.cha0s.io/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" resolved "https://npm.i12e.cha0s.io/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
@ -1814,6 +1772,14 @@ buffer@^5.1.0:
base64-js "^1.3.1" base64-js "^1.3.1"
ieee754 "^1.1.13" ieee754 "^1.1.13"
buffer@^6.0.3:
version "6.0.3"
resolved "https://npm.i12e.cha0s.io/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
dependencies:
base64-js "^1.3.1"
ieee754 "^1.2.1"
builtin-status-codes@^3.0.0: builtin-status-codes@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://npm.i12e.cha0s.io/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" resolved "https://npm.i12e.cha0s.io/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8"
@ -1868,6 +1834,11 @@ call-bind@^1.0.0:
function-bind "^1.1.1" function-bind "^1.1.1"
get-intrinsic "^1.0.0" get-intrinsic "^1.0.0"
callsite@1.0.0:
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20"
integrity sha1-KAOY5dZkvXQDi28JBRU+borxvCA=
callsites@^3.0.0: callsites@^3.0.0:
version "3.1.0" version "3.1.0"
resolved "https://npm.i12e.cha0s.io/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" resolved "https://npm.i12e.cha0s.io/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
@ -2093,11 +2064,21 @@ component-bind@1.0.0:
resolved "https://npm.i12e.cha0s.io/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" resolved "https://npm.i12e.cha0s.io/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1"
integrity sha1-AMYIq33Nk4l8AAllGx06jh5zu9E= integrity sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=
component-emitter@1.2.1:
version "1.2.1"
resolved "https://npm.i12e.cha0s.io/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"
integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=
component-emitter@^1.2.1, component-emitter@~1.3.0: component-emitter@^1.2.1, component-emitter@~1.3.0:
version "1.3.0" version "1.3.0"
resolved "https://npm.i12e.cha0s.io/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" resolved "https://npm.i12e.cha0s.io/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
component-inherit@0.0.3:
version "0.0.3"
resolved "https://npm.i12e.cha0s.io/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143"
integrity sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=
concat-map@0.0.1: concat-map@0.0.1:
version "0.0.1" version "0.0.1"
resolved "https://npm.i12e.cha0s.io/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" resolved "https://npm.i12e.cha0s.io/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
@ -2170,16 +2151,16 @@ cookie@0.1.3:
resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.1.3.tgz#e734a5c1417fce472d5aef82c381cabb64d1a435" resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.1.3.tgz#e734a5c1417fce472d5aef82c381cabb64d1a435"
integrity sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU= integrity sha1-5zSlwUF/zkctWu+Cw4HKu2TRpDU=
cookie@0.3.1:
version "0.3.1"
resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb"
integrity sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=
cookie@0.4.0: cookie@0.4.0:
version "0.4.0" version "0.4.0"
resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba"
integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==
cookie@~0.4.1:
version "0.4.1"
resolved "https://npm.i12e.cha0s.io/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1"
integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==
copy-concurrently@^1.0.0: copy-concurrently@^1.0.0:
version "1.0.5" version "1.0.5"
resolved "https://npm.i12e.cha0s.io/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" resolved "https://npm.i12e.cha0s.io/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0"
@ -2228,14 +2209,6 @@ core-util-is@~1.0.0:
resolved "https://npm.i12e.cha0s.io/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" resolved "https://npm.i12e.cha0s.io/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
cors@~2.8.5:
version "2.8.5"
resolved "https://npm.i12e.cha0s.io/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"
integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==
dependencies:
object-assign "^4"
vary "^1"
crc@^3.3.0: crc@^3.3.0:
version "3.8.0" version "3.8.0"
resolved "https://npm.i12e.cha0s.io/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6" resolved "https://npm.i12e.cha0s.io/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6"
@ -2376,13 +2349,20 @@ debug@^3.0.0:
dependencies: dependencies:
ms "^2.1.1" ms "^2.1.1"
debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1:
version "4.3.1" version "4.3.1"
resolved "https://npm.i12e.cha0s.io/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" resolved "https://npm.i12e.cha0s.io/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee"
integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==
dependencies: dependencies:
ms "2.1.2" ms "2.1.2"
debug@~3.1.0:
version "3.1.0"
resolved "https://npm.i12e.cha0s.io/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
dependencies:
ms "2.0.0"
debug@~4.1.0: debug@~4.1.0:
version "4.1.1" version "4.1.1"
resolved "https://npm.i12e.cha0s.io/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" resolved "https://npm.i12e.cha0s.io/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
@ -2610,9 +2590,9 @@ ee-first@1.1.1:
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
electron-to-chromium@^1.3.612: electron-to-chromium@^1.3.612:
version "1.3.613" version "1.3.614"
resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.613.tgz#5ad7ec1e19d28c81edb6d61b9d4990d1c9716182" resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.614.tgz#ff359e8d2249e2ce859a4c2bc34c22bd2e2eb0a2"
integrity sha512-c3gkahddiUalk7HLhTC7PsKzPZmovYFtgh+g3rZJ+dGokk4n4dzEoOBnoV8VU8ptvnGJMhrjM/lyXKSltqf2hQ== integrity sha512-JMDl46mg4G+n6q/hAJkwy9eMTj5FJjsE+8f/irAGRMLM4yeRVbMuRrdZrbbGGOrGVcZc4vJPjUpEUWNb/fA6hg==
elliptic@^6.5.3: elliptic@^6.5.3:
version "6.5.3" version "6.5.3"
@ -2649,38 +2629,44 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0:
dependencies: dependencies:
once "^1.4.0" once "^1.4.0"
engine.io-client@~4.0.0: engine.io-client@~3.4.0:
version "4.0.4" version "3.4.4"
resolved "https://npm.i12e.cha0s.io/engine.io-client/-/engine.io-client-4.0.4.tgz#973d312ab9c8dc41e64d2c323982f3b04a7f749d" resolved "https://npm.i12e.cha0s.io/engine.io-client/-/engine.io-client-3.4.4.tgz#77d8003f502b0782dd792b073a4d2cf7ca5ab967"
integrity sha512-and4JRvjv+BQ4WBLopYUFePxju3ms3aBRk0XjaLdh/t9TKv2LCKtKKWFRoRzIfUZsu3U38FcYqNLuXhfS16vqw== integrity sha512-iU4CRr38Fecj8HoZEnFtm2EiKGbYZcPn3cHxqNGl/tmdWRf60KhK+9vE0JeSjgnlS/0oynEfLgKbT9ALpim0sQ==
dependencies: dependencies:
base64-arraybuffer "0.1.4"
component-emitter "~1.3.0" component-emitter "~1.3.0"
debug "~4.1.0" component-inherit "0.0.3"
engine.io-parser "~4.0.1" debug "~3.1.0"
engine.io-parser "~2.2.0"
has-cors "1.1.0" has-cors "1.1.0"
indexof "0.0.1"
parseqs "0.0.6" parseqs "0.0.6"
parseuri "0.0.6" parseuri "0.0.6"
ws "~7.2.1" ws "~6.1.0"
xmlhttprequest-ssl "~1.5.4" xmlhttprequest-ssl "~1.5.4"
yeast "0.1.2" yeast "0.1.2"
engine.io-parser@~4.0.0, engine.io-parser@~4.0.1: engine.io-parser@~2.2.0:
version "4.0.1" version "2.2.1"
resolved "https://npm.i12e.cha0s.io/engine.io-parser/-/engine.io-parser-4.0.1.tgz#6444c3cf2523ba4fc3bbaedd4fe425e6bcb16479" resolved "https://npm.i12e.cha0s.io/engine.io-parser/-/engine.io-parser-2.2.1.tgz#57ce5611d9370ee94f99641b589f94c97e4f5da7"
integrity sha512-v5aZK1hlckcJDGmHz3W8xvI3NUHYc9t8QtTbqdR5OaH3S9iJZilPubauOm+vLWOMMWzpE3hiq92l9lTAHamRCg== integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==
dependencies:
after "0.8.2"
arraybuffer.slice "~0.0.7"
base64-arraybuffer "0.1.4"
blob "0.0.5"
has-binary2 "~1.0.2"
engine.io@~4.0.0: engine.io@~3.4.0:
version "4.0.4" version "3.4.2"
resolved "https://npm.i12e.cha0s.io/engine.io/-/engine.io-4.0.4.tgz#8e4af130824e8d3a4db1dbf4f718b384a0de926a" resolved "https://npm.i12e.cha0s.io/engine.io/-/engine.io-3.4.2.tgz#8fc84ee00388e3e228645e0a7d3dfaeed5bd122c"
integrity sha512-4ggUX5pICZU17OTZNFv5+uFE/ZyoK+TIXv2SvxWWX8lwStllQ6Lvvs4lDBqvKpV9EYXNcvlNOcjKChd/mo+8Tw== integrity sha512-b4Q85dFkGw+TqgytGPrGgACRUhsdKc9S9ErRAXpPGy/CXKs4tYoHDkvIRdsseAF7NjfVwjRFIn6KTnbw7LwJZg==
dependencies: dependencies:
accepts "~1.3.4" accepts "~1.3.4"
base64id "2.0.0" base64id "2.0.0"
cookie "~0.4.1" cookie "0.3.1"
cors "~2.8.5"
debug "~4.1.0" debug "~4.1.0"
engine.io-parser "~4.0.0" engine.io-parser "~2.2.0"
ws "^7.1.2" ws "^7.1.2"
enhanced-resolve@^0.9.1: enhanced-resolve@^0.9.1:
@ -3504,6 +3490,13 @@ growl@1.10.5:
resolved "https://npm.i12e.cha0s.io/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e" resolved "https://npm.i12e.cha0s.io/growl/-/growl-1.10.5.tgz#f2735dc2283674fa67478b10181059355c369e5e"
integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA== integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==
has-binary2@~1.0.2:
version "1.0.3"
resolved "https://npm.i12e.cha0s.io/has-binary2/-/has-binary2-1.0.3.tgz#7776ac627f3ea77250cfc332dab7ddf5e4f5d11d"
integrity sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==
dependencies:
isarray "2.0.1"
has-cors@1.1.0: has-cors@1.1.0:
version "1.1.0" version "1.1.0"
resolved "https://npm.i12e.cha0s.io/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" resolved "https://npm.i12e.cha0s.io/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39"
@ -3715,7 +3708,7 @@ icss-utils@^4.0.0, icss-utils@^4.1.1:
dependencies: dependencies:
postcss "^7.0.14" postcss "^7.0.14"
ieee754@^1.1.13, ieee754@^1.1.4: ieee754@^1.1.13, ieee754@^1.1.4, ieee754@^1.2.1:
version "1.2.1" version "1.2.1"
resolved "https://npm.i12e.cha0s.io/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" resolved "https://npm.i12e.cha0s.io/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
@ -3761,6 +3754,11 @@ indexes-of@^1.0.1:
resolved "https://npm.i12e.cha0s.io/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" resolved "https://npm.i12e.cha0s.io/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
indexof@0.0.1:
version "0.0.1"
resolved "https://npm.i12e.cha0s.io/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d"
integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=
infer-owner@^1.0.3: infer-owner@^1.0.3:
version "1.0.4" version "1.0.4"
resolved "https://npm.i12e.cha0s.io/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" resolved "https://npm.i12e.cha0s.io/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
@ -4014,6 +4012,11 @@ isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0:
resolved "https://npm.i12e.cha0s.io/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" resolved "https://npm.i12e.cha0s.io/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
isarray@2.0.1:
version "2.0.1"
resolved "https://npm.i12e.cha0s.io/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e"
integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=
isexe@^2.0.0: isexe@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://npm.i12e.cha0s.io/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" resolved "https://npm.i12e.cha0s.io/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
@ -4652,11 +4655,16 @@ nth-check@~1.0.1:
dependencies: dependencies:
boolbase "~1.0.0" boolbase "~1.0.0"
object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1" version "4.1.1"
resolved "https://npm.i12e.cha0s.io/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" resolved "https://npm.i12e.cha0s.io/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
object-component@0.0.3:
version "0.0.3"
resolved "https://npm.i12e.cha0s.io/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291"
integrity sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=
object-copy@^0.1.0: object-copy@^0.1.0:
version "0.1.0" version "0.1.0"
resolved "https://npm.i12e.cha0s.io/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" resolved "https://npm.i12e.cha0s.io/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c"
@ -4905,11 +4913,25 @@ parse-passwd@^1.0.0:
resolved "https://npm.i12e.cha0s.io/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" resolved "https://npm.i12e.cha0s.io/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
parseqs@0.0.5:
version "0.0.5"
resolved "https://npm.i12e.cha0s.io/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d"
integrity sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=
dependencies:
better-assert "~1.0.0"
parseqs@0.0.6: parseqs@0.0.6:
version "0.0.6" version "0.0.6"
resolved "https://npm.i12e.cha0s.io/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" resolved "https://npm.i12e.cha0s.io/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5"
integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w== integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==
parseuri@0.0.5:
version "0.0.5"
resolved "https://npm.i12e.cha0s.io/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a"
integrity sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=
dependencies:
better-assert "~1.0.0"
parseuri@0.0.6: parseuri@0.0.6:
version "0.0.6" version "0.0.6"
resolved "https://npm.i12e.cha0s.io/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a" resolved "https://npm.i12e.cha0s.io/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a"
@ -5778,48 +5800,60 @@ snapdragon@^0.8.1:
source-map-resolve "^0.5.0" source-map-resolve "^0.5.0"
use "^3.1.0" use "^3.1.0"
socket.io-adapter@~2.0.3: socket.io-adapter@~1.1.0:
version "2.0.3" version "1.1.2"
resolved "https://npm.i12e.cha0s.io/socket.io-adapter/-/socket.io-adapter-2.0.3.tgz#372b7cde7a535fc4f4f0d5ac7f73952a3062d438" resolved "https://npm.i12e.cha0s.io/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9"
integrity sha512-2wo4EXgxOGSFueqvHAdnmi5JLZzWqMArjuP4nqC26AtLh5PoCPsaRbRdah2xhcwTAMooZfjYiNVNkkmmSMaxOQ== integrity sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==
socket.io-client@^3.0.3: socket.io-client@2.3.0:
version "3.0.3" version "2.3.0"
resolved "https://npm.i12e.cha0s.io/socket.io-client/-/socket.io-client-3.0.3.tgz#37890e24fc386e9de34358a1b7c4a2968f5d2630" resolved "https://npm.i12e.cha0s.io/socket.io-client/-/socket.io-client-2.3.0.tgz#14d5ba2e00b9bcd145ae443ab96b3f86cbcc1bb4"
integrity sha512-kwCJAKb6JMqE9ZYXg78Dgt8rYLSwtJ/g/LJqpb/pOTFRZMSr1cKAsCaisHZ+IBwKHBY7DYOOkjtkHqseY3ZLpw== integrity sha512-cEQQf24gET3rfhxZ2jJ5xzAOo/xhZwK+mOqtGRg5IowZsMgwvHwnf/mCRapAAkadhM26y+iydgwsXGObBB5ZdA==
dependencies: dependencies:
"@types/component-emitter" "^1.2.10"
backo2 "1.0.2" backo2 "1.0.2"
base64-arraybuffer "0.1.5"
component-bind "1.0.0" component-bind "1.0.0"
component-emitter "~1.3.0" component-emitter "1.2.1"
debug "~4.1.0" debug "~4.1.0"
engine.io-client "~4.0.0" engine.io-client "~3.4.0"
parseuri "0.0.6" has-binary2 "~1.0.2"
socket.io-parser "~4.0.1" has-cors "1.1.0"
indexof "0.0.1"
object-component "0.0.3"
parseqs "0.0.5"
parseuri "0.0.5"
socket.io-parser "~3.3.0"
to-array "0.1.4"
socket.io-parser@~4.0.1: socket.io-parser@~3.3.0:
version "4.0.2" version "3.3.1"
resolved "https://npm.i12e.cha0s.io/socket.io-parser/-/socket.io-parser-4.0.2.tgz#3d021a9c86671bb079e7c6c806db6a1d9b1bc780" resolved "https://npm.i12e.cha0s.io/socket.io-parser/-/socket.io-parser-3.3.1.tgz#f07d9c8cb3fb92633aa93e76d98fd3a334623199"
integrity sha512-Bs3IYHDivwf+bAAuW/8xwJgIiBNtlvnjYRc4PbXgniLmcP1BrakBoq/QhO24rgtgW7VZ7uAaswRGxutUnlAK7g== integrity sha512-1QLvVAe8dTz+mKmZ07Swxt+LAo4Y1ff50rlyoEx00TQmDFVQYPfcqGvIDJLGaBdhdNCecXtyKpD+EgKGcmmbuQ==
dependencies: dependencies:
"@types/component-emitter" "^1.2.10"
component-emitter "~1.3.0" component-emitter "~1.3.0"
debug "~4.1.0" debug "~3.1.0"
isarray "2.0.1"
socket.io@^3.0.3: socket.io-parser@~3.4.0:
version "3.0.3" version "3.4.1"
resolved "https://npm.i12e.cha0s.io/socket.io/-/socket.io-3.0.3.tgz#f296e95b14077d30e77e695849621514191a59f5" resolved "https://npm.i12e.cha0s.io/socket.io-parser/-/socket.io-parser-3.4.1.tgz#b06af838302975837eab2dc980037da24054d64a"
integrity sha512-TC1GnSXhDVmd3bHji5aG7AgWB8UL7E6quACbKra8uFXBqlMwEDbrJFK+tjuIY5Pe9N0L+MAPPDv3pycnn0000A== integrity sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==
dependencies: dependencies:
"@types/cookie" "^0.4.0" component-emitter "1.2.1"
"@types/cors" "^2.8.8"
"@types/node" "^14.14.7"
accepts "~1.3.4"
base64id "~2.0.0"
debug "~4.1.0" debug "~4.1.0"
engine.io "~4.0.0" isarray "2.0.1"
socket.io-adapter "~2.0.3"
socket.io-parser "~4.0.1" socket.io@2.3.0:
version "2.3.0"
resolved "https://npm.i12e.cha0s.io/socket.io/-/socket.io-2.3.0.tgz#cd762ed6a4faeca59bc1f3e243c0969311eb73fb"
integrity sha512-2A892lrj0GcgR/9Qk81EaY2gYhCBxurV0PfmmESO6p27QPrUK1J3zdns+5QPqvUYK2q657nSj0guoIil9+7eFg==
dependencies:
debug "~4.1.0"
engine.io "~3.4.0"
has-binary2 "~1.0.2"
socket.io-adapter "~1.1.0"
socket.io-client "2.3.0"
socket.io-parser "~3.4.0"
sort-keys@^1.0.0: sort-keys@^1.0.0:
version "1.1.2" version "1.1.2"
@ -6150,6 +6184,11 @@ timers-browserify@^2.0.4:
dependencies: dependencies:
setimmediate "^1.0.4" setimmediate "^1.0.4"
to-array@0.1.4:
version "0.1.4"
resolved "https://npm.i12e.cha0s.io/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890"
integrity sha1-F+bBH3PdTz10zaek/zI46a2b+JA=
to-arraybuffer@^1.0.0: to-arraybuffer@^1.0.0:
version "1.0.1" version "1.0.1"
resolved "https://npm.i12e.cha0s.io/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" resolved "https://npm.i12e.cha0s.io/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
@ -6436,7 +6475,7 @@ validate-npm-package-license@^3.0.1:
spdx-correct "^3.0.0" spdx-correct "^3.0.0"
spdx-expression-parse "^3.0.0" spdx-expression-parse "^3.0.0"
vary@^1, vary@~1.1.2: vary@~1.1.2:
version "1.1.2" version "1.1.2"
resolved "https://npm.i12e.cha0s.io/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" resolved "https://npm.i12e.cha0s.io/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
@ -6636,10 +6675,12 @@ ws@^7.1.2:
resolved "https://npm.i12e.cha0s.io/ws/-/ws-7.4.0.tgz#a5dd76a24197940d4a8bb9e0e152bb4503764da7" resolved "https://npm.i12e.cha0s.io/ws/-/ws-7.4.0.tgz#a5dd76a24197940d4a8bb9e0e152bb4503764da7"
integrity sha512-kyFwXuV/5ymf+IXhS6f0+eAFvydbaBW3zjpT6hUdAh/hbVjTIB5EHBGi0bPoCLSK2wcuz3BrEkB9LrYv1Nm4NQ== integrity sha512-kyFwXuV/5ymf+IXhS6f0+eAFvydbaBW3zjpT6hUdAh/hbVjTIB5EHBGi0bPoCLSK2wcuz3BrEkB9LrYv1Nm4NQ==
ws@~7.2.1: ws@~6.1.0:
version "7.2.5" version "6.1.4"
resolved "https://npm.i12e.cha0s.io/ws/-/ws-7.2.5.tgz#abb1370d4626a5a9cd79d8de404aa18b3465d10d" resolved "https://npm.i12e.cha0s.io/ws/-/ws-6.1.4.tgz#5b5c8800afab925e94ccb29d153c8d02c1776ef9"
integrity sha512-C34cIU4+DB2vMyAbmEKossWq2ZQDr6QEyuuCzWrM9zfw1sGc0mYiJ0UnG9zzNykt49C2Fi34hvr2vssFQRS6EA== integrity sha512-eqZfL+NE/YQc1/ZynhojeV8q+H050oR8AZ2uIev7RU10svA9ZnJUddHcOUZTJLinZ9yEfdA2kSATS2qZK5fhJA==
dependencies:
async-limiter "~1.0.0"
xmlhttprequest-ssl@~1.5.4: xmlhttprequest-ssl@~1.5.4:
version "1.5.5" version "1.5.5"