添加MQTT消息引擎及实现
注销Centrifugo消息引擎 添加一些消息引擎配置项 添加websocket-error事件(未完善)
This commit is contained in:
parent
1d8ed69cc1
commit
4187eb2c4f
@ -19,9 +19,9 @@
|
|||||||
"@stomp/stompjs": "^7.0.0",
|
"@stomp/stompjs": "^7.0.0",
|
||||||
"alova": "^2.7.1",
|
"alova": "^2.7.1",
|
||||||
"axios": "^1.4.0",
|
"axios": "^1.4.0",
|
||||||
"centrifuge": "^4.0.1",
|
|
||||||
"google-protobuf": "^3.21.2",
|
"google-protobuf": "^3.21.2",
|
||||||
"js-base64": "^3.7.5",
|
"js-base64": "^3.7.5",
|
||||||
|
"mqtt": "^5.2.1",
|
||||||
"pinia": "^2.0.11",
|
"pinia": "^2.0.11",
|
||||||
"pixi-viewport": "^5.0.1",
|
"pixi-viewport": "^5.0.1",
|
||||||
"pixi.js": "^7.2.4",
|
"pixi.js": "^7.2.4",
|
||||||
|
@ -328,6 +328,7 @@ export interface GraphicAppEvents extends GlobalMixins.GraphicAppEvents {
|
|||||||
'pre-menu-handle': [menu: MenuItemOptions];
|
'pre-menu-handle': [menu: MenuItemOptions];
|
||||||
'post-menu-handle': [menu: MenuItemOptions];
|
'post-menu-handle': [menu: MenuItemOptions];
|
||||||
'websocket-connect-state-change': [connected: boolean];
|
'websocket-connect-state-change': [connected: boolean];
|
||||||
|
'websocket-error': [err: Error];
|
||||||
destroy: [app: IGraphicApp];
|
destroy: [app: IGraphicApp];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,6 +6,7 @@ import { CompleteMessageCliOption, IMessageClient } from './MessageBroker';
|
|||||||
export interface MessageClientEvents {
|
export interface MessageClientEvents {
|
||||||
connected: [ctx: any];
|
connected: [ctx: any];
|
||||||
disconnected: [ctx: any];
|
disconnected: [ctx: any];
|
||||||
|
error: [err: any];
|
||||||
}
|
}
|
||||||
|
|
||||||
export type HandleMessage = (data: any) => void;
|
export type HandleMessage = (data: any) => void;
|
||||||
@ -37,10 +38,7 @@ export abstract class MessageClient
|
|||||||
* @param destination
|
* @param destination
|
||||||
* @param handle
|
* @param handle
|
||||||
*/
|
*/
|
||||||
abstract subscribe(
|
abstract subscribe(destination: string, handle: HandleMessage): boolean;
|
||||||
destination: string,
|
|
||||||
handle: HandleMessage
|
|
||||||
): IUnsubscriptor;
|
|
||||||
|
|
||||||
unsubscribe(destination: string): void {
|
unsubscribe(destination: string): void {
|
||||||
this.unsubscribe0(destination);
|
this.unsubscribe0(destination);
|
||||||
@ -77,22 +75,12 @@ export abstract class MessageClient
|
|||||||
abstract close(): void;
|
abstract close(): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 订阅取消接口
|
|
||||||
*/
|
|
||||||
export interface IUnsubscriptor {
|
|
||||||
/**
|
|
||||||
* 取消订阅
|
|
||||||
*/
|
|
||||||
unsubscribe(): void;
|
|
||||||
}
|
|
||||||
|
|
||||||
export class SubscriptionClient {
|
export class SubscriptionClient {
|
||||||
mc: MessageClient;
|
mc: MessageClient;
|
||||||
destination: string;
|
destination: string;
|
||||||
protocol: 'json' | 'protobuf';
|
protocol: 'json' | 'protobuf';
|
||||||
handlers: IMessageHandler[] = [];
|
handlers: IMessageHandler[] = [];
|
||||||
unsubscriptor?: IUnsubscriptor;
|
subscripted = false;
|
||||||
constructor(
|
constructor(
|
||||||
mc: MessageClient,
|
mc: MessageClient,
|
||||||
destination: string,
|
destination: string,
|
||||||
@ -109,7 +97,7 @@ export class SubscriptionClient {
|
|||||||
if (this.handlers.filter((h) => h.App === handler.App).length == 0) {
|
if (this.handlers.filter((h) => h.App === handler.App).length == 0) {
|
||||||
this.handlers.push(handler);
|
this.handlers.push(handler);
|
||||||
}
|
}
|
||||||
if (!this.unsubscriptor) {
|
if (!this.subscripted) {
|
||||||
this.trySubscribe();
|
this.trySubscribe();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -127,7 +115,7 @@ export class SubscriptionClient {
|
|||||||
|
|
||||||
trySubscribe(): void {
|
trySubscribe(): void {
|
||||||
if (this.mc.connected) {
|
if (this.mc.connected) {
|
||||||
this.unsubscriptor = this.mc.subscribe(this.destination, (data) => {
|
this.subscripted = this.mc.subscribe(this.destination, (data) => {
|
||||||
this.handleMessage(data);
|
this.handleMessage(data);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -151,6 +139,6 @@ export class SubscriptionClient {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onDisconnect() {
|
onDisconnect() {
|
||||||
this.unsubscriptor = undefined;
|
this.subscripted = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,70 +1,68 @@
|
|||||||
import { State, Subscription } from 'centrifuge';
|
// import { State } from 'centrifuge';
|
||||||
import Centrifuge from 'centrifuge/build/protobuf';
|
// import Centrifuge from 'centrifuge/build/protobuf';
|
||||||
import {
|
// import { HandleMessage, MessageClient } from './BasicMessageClient';
|
||||||
HandleMessage,
|
// import { CompleteMessageCliOption } from './MessageBroker';
|
||||||
IUnsubscriptor,
|
|
||||||
MessageClient,
|
|
||||||
} from './BasicMessageClient';
|
|
||||||
import { CompleteMessageCliOption } from './MessageBroker';
|
|
||||||
|
|
||||||
export class CentrifugeMessagingClient extends MessageClient {
|
// export class CentrifugeMessagingClient extends MessageClient {
|
||||||
cli: Centrifuge;
|
// cli: Centrifuge;
|
||||||
|
|
||||||
constructor(options: CompleteMessageCliOption) {
|
// constructor(options: CompleteMessageCliOption) {
|
||||||
super(options);
|
// super(options);
|
||||||
this.options = options;
|
// this.options = options;
|
||||||
if (this.options.protocol === 'json') {
|
// if (this.options.protocol === 'json') {
|
||||||
this.cli = new Centrifuge(options.wsUrl, {
|
// this.cli = new Centrifuge(options.wsUrl, {
|
||||||
token: options.token,
|
// token: options.token,
|
||||||
protocol: options.protocol,
|
// protocol: options.protocol,
|
||||||
});
|
// });
|
||||||
} else {
|
// } else {
|
||||||
this.cli = new Centrifuge(options.wsUrl, {
|
// this.cli = new Centrifuge(options.wsUrl, {
|
||||||
token: options.token,
|
// token: options.token,
|
||||||
protocol: options.protocol,
|
// protocol: options.protocol,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
this.cli
|
// this.cli
|
||||||
.on('connecting', (ctx) => {
|
// .on('connecting', (ctx) => {
|
||||||
console.debug(`centrifuge连接中: ${ctx}, ${ctx.reason}`);
|
// console.debug(`centrifuge连接中: ${ctx}, ${ctx.reason}`);
|
||||||
})
|
// })
|
||||||
.on('connected', (ctx) => {
|
// .on('connected', (ctx) => {
|
||||||
console.debug(`连接成功: ${ctx.transport}`);
|
// console.debug(`连接成功: ${ctx.transport}`);
|
||||||
this.emit('connected', ctx);
|
// this.emit('connected', ctx);
|
||||||
})
|
// })
|
||||||
.on('disconnected', (ctx) => {
|
// .on('disconnected', (ctx) => {
|
||||||
console.log(`断开连接: ${ctx.code}, ${ctx.reason}`);
|
// console.log(`断开连接: ${ctx.code}, ${ctx.reason}`);
|
||||||
this.emit('disconnected', ctx);
|
// this.emit('disconnected', ctx);
|
||||||
})
|
// })
|
||||||
.on('error', (ctx) => {
|
// .on('error', (ctx) => {
|
||||||
console.error('centrifuge错误', ctx);
|
// console.error('centrifuge错误', ctx);
|
||||||
})
|
// })
|
||||||
.connect();
|
// .connect();
|
||||||
}
|
// }
|
||||||
|
|
||||||
get connected(): boolean {
|
// get connected(): boolean {
|
||||||
return this.cli.state === State.Connected;
|
// return this.cli.state === State.Connected;
|
||||||
}
|
// }
|
||||||
|
|
||||||
subscribe(destination: string, handle: HandleMessage): IUnsubscriptor {
|
// subscribe(destination: string, handle: HandleMessage): boolean {
|
||||||
let sub = this.cli.getSubscription(destination);
|
// let sub = this.cli.getSubscription(destination);
|
||||||
if (!sub) {
|
// if (!sub) {
|
||||||
sub = this.cli.newSubscription(destination);
|
// sub = this.cli.newSubscription(destination);
|
||||||
sub.on('publication', (ctx) => {
|
// sub.on('publication', (ctx) => {
|
||||||
handle(ctx.data);
|
// handle(ctx.data);
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
sub.subscribe();
|
// sub.subscribe();
|
||||||
return sub;
|
// return true;
|
||||||
}
|
// }
|
||||||
|
|
||||||
unsubscribe0(destination: string): void {
|
// unsubscribe0(destination: string): void {
|
||||||
const subClient = this.getOrNewSubClient(destination);
|
// const sub = this.cli.getSubscription(destination);
|
||||||
this.cli.removeSubscription(subClient.unsubscriptor as Subscription);
|
// if (!sub) {
|
||||||
}
|
// this.cli.removeSubscription(sub);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
close(): void {
|
// close(): void {
|
||||||
this.cli.disconnect();
|
// this.cli.disconnect();
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
@ -2,17 +2,14 @@
|
|||||||
import EventEmitter from 'eventemitter3';
|
import EventEmitter from 'eventemitter3';
|
||||||
import { IGraphicScene } from '../app';
|
import { IGraphicScene } from '../app';
|
||||||
import { GraphicQueryStore, GraphicState, JlGraphic } from '../core';
|
import { GraphicQueryStore, GraphicState, JlGraphic } from '../core';
|
||||||
import {
|
import { IMessageHandler, MessageClientEvents } from './BasicMessageClient';
|
||||||
IMessageHandler,
|
|
||||||
IUnsubscriptor,
|
|
||||||
MessageClientEvents,
|
|
||||||
} from './BasicMessageClient';
|
|
||||||
import { CentrifugeMessagingClient } from './CentrifugeBroker';
|
|
||||||
import { StompMessagingClient } from './WsMsgBroker';
|
import { StompMessagingClient } from './WsMsgBroker';
|
||||||
|
import { MqttMsgClient } from './MqttBroker';
|
||||||
|
|
||||||
export enum ClientEngine {
|
export enum ClientEngine {
|
||||||
Stomp,
|
Stomp,
|
||||||
Centrifugo,
|
// Centrifugo,
|
||||||
|
MQTT,
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface MessageCliOption {
|
export interface MessageCliOption {
|
||||||
@ -32,10 +29,34 @@ export interface MessageCliOption {
|
|||||||
* 认证token
|
* 认证token
|
||||||
*/
|
*/
|
||||||
token?: string;
|
token?: string;
|
||||||
|
/**
|
||||||
|
* 项目名称(可用于订阅客户端识别)
|
||||||
|
*/
|
||||||
|
clientName?: string;
|
||||||
|
/**
|
||||||
|
* 连接超时,默认30秒,ms
|
||||||
|
*/
|
||||||
|
connectTimeout?: number;
|
||||||
|
/**
|
||||||
|
* 心跳发送间隔,默认60秒,s
|
||||||
|
*/
|
||||||
|
heartbeat?: number;
|
||||||
|
/**
|
||||||
|
* 重试间隔,默认2秒,ms
|
||||||
|
*/
|
||||||
|
retryPeriod?: number;
|
||||||
|
/**
|
||||||
|
* 重试次数,默认30次
|
||||||
|
*/
|
||||||
|
retryTimes?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CompleteMessageCliOption extends MessageCliOption {
|
export interface CompleteMessageCliOption extends MessageCliOption {
|
||||||
protocol: 'json' | 'protobuf';
|
protocol: 'json' | 'protobuf';
|
||||||
|
connectTimeout: number;
|
||||||
|
heartbeat: number;
|
||||||
|
retryPeriod: number;
|
||||||
|
retryTimes: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
const DefaultStompOption: CompleteMessageCliOption = {
|
const DefaultStompOption: CompleteMessageCliOption = {
|
||||||
@ -43,6 +64,10 @@ const DefaultStompOption: CompleteMessageCliOption = {
|
|||||||
protocol: 'protobuf',
|
protocol: 'protobuf',
|
||||||
wsUrl: '',
|
wsUrl: '',
|
||||||
token: '',
|
token: '',
|
||||||
|
connectTimeout: 30 * 1000,
|
||||||
|
heartbeat: 60,
|
||||||
|
retryPeriod: 2 * 1000,
|
||||||
|
retryTimes: 30,
|
||||||
};
|
};
|
||||||
|
|
||||||
export interface IMessageClient extends EventEmitter<MessageClientEvents> {
|
export interface IMessageClient extends EventEmitter<MessageClientEvents> {
|
||||||
@ -80,10 +105,22 @@ export class WsMsgCli {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
WsMsgCli.options = Object.assign({}, DefaultStompOption, options);
|
WsMsgCli.options = Object.assign({}, DefaultStompOption, options);
|
||||||
if (WsMsgCli.options.engine == ClientEngine.Centrifugo) {
|
switch (WsMsgCli.options.engine) {
|
||||||
WsMsgCli.client = new CentrifugeMessagingClient(WsMsgCli.options);
|
// case ClientEngine.Centrifugo: {
|
||||||
} else {
|
// WsMsgCli.client = new CentrifugeMessagingClient(WsMsgCli.options);
|
||||||
WsMsgCli.client = new StompMessagingClient(WsMsgCli.options);
|
// break;
|
||||||
|
// }
|
||||||
|
case ClientEngine.MQTT: {
|
||||||
|
WsMsgCli.client = new MqttMsgClient(WsMsgCli.options);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case ClientEngine.Stomp: {
|
||||||
|
WsMsgCli.client = new StompMessagingClient(WsMsgCli.options);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
default: {
|
||||||
|
throw new Error('未知的消息客户端引擎类型', WsMsgCli.options.engine);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const cli = WsMsgCli.client;
|
const cli = WsMsgCli.client;
|
||||||
cli.on('connected', () => {
|
cli.on('connected', () => {
|
||||||
@ -92,6 +129,12 @@ export class WsMsgCli {
|
|||||||
cli.on('disconnected', () => {
|
cli.on('disconnected', () => {
|
||||||
WsMsgCli.emitConnectStateChangeEvent(false);
|
WsMsgCli.emitConnectStateChangeEvent(false);
|
||||||
});
|
});
|
||||||
|
cli.on('error', (err) => {
|
||||||
|
console.warn('websocket 客户端错误消息发布', err);
|
||||||
|
WsMsgCli.appMsgBroker.forEach((broker) => {
|
||||||
|
broker.app.emit('websocket-error', err);
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
static isInitiated(): boolean {
|
static isInitiated(): boolean {
|
||||||
@ -182,11 +225,6 @@ export interface AppStateSubscription {
|
|||||||
* 订阅消息处理
|
* 订阅消息处理
|
||||||
*/
|
*/
|
||||||
messageHandle?: SubscriptionMessageHandle;
|
messageHandle?: SubscriptionMessageHandle;
|
||||||
/**
|
|
||||||
* 订阅成功对象,用于取消订阅
|
|
||||||
* 非客户端使用
|
|
||||||
*/
|
|
||||||
subscription?: IUnsubscriptor;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class AppMessageHandler implements IMessageHandler {
|
class AppMessageHandler implements IMessageHandler {
|
||||||
|
118
src/jlgraphic/message/MqttBroker.ts
Normal file
118
src/jlgraphic/message/MqttBroker.ts
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
import mqtt from 'mqtt';
|
||||||
|
import { HandleMessage, MessageClient } from './BasicMessageClient';
|
||||||
|
import { CompleteMessageCliOption } from './MessageBroker';
|
||||||
|
|
||||||
|
export class MqttMsgClient extends MessageClient {
|
||||||
|
cli: mqtt.MqttClient;
|
||||||
|
retryTimes = 0;
|
||||||
|
timer: NodeJS.Timeout | undefined;
|
||||||
|
subMsgHandler: Map<string, HandleMessage> = new Map();
|
||||||
|
|
||||||
|
constructor(options: CompleteMessageCliOption) {
|
||||||
|
super(options);
|
||||||
|
this.options = options;
|
||||||
|
try {
|
||||||
|
this.cli = mqtt.connect(options.wsUrl, {
|
||||||
|
protocolVersion: 5,
|
||||||
|
clean: true,
|
||||||
|
resubscribe: false,
|
||||||
|
keepalive: options.heartbeat, //ms,心跳
|
||||||
|
connectTimeout: options.connectTimeout, // ms,连接超时
|
||||||
|
reconnectPeriod: options.retryPeriod, // ms,重连间隔
|
||||||
|
username: options.clientName || '',
|
||||||
|
password: options.token,
|
||||||
|
});
|
||||||
|
this.cli.on('connect', (packet) => {
|
||||||
|
console.log('MQTT 连接成功!');
|
||||||
|
this.retryTimes = 0; // 连接成功,重置
|
||||||
|
this.emit('connected', packet);
|
||||||
|
// mqtt本身的定时发送心跳在浏览器页面后台运行时似乎会发生计时变慢?最终导致心跳超时断连:
|
||||||
|
// WebSocket connection to 'ws://ip:port/mqtt' failed: Close received after close
|
||||||
|
// 在此使用自定义定时发送心跳暂时看可以处理超时断连问题
|
||||||
|
this.timer = setInterval(() => {
|
||||||
|
(this.cli as any)._sendPacket({ cmd: 'pingreq' });
|
||||||
|
}, (options.heartbeat / 2) * 1000);
|
||||||
|
});
|
||||||
|
this.cli.on('disconnect', (packet) => {
|
||||||
|
console.log('MQTT 连接断开!');
|
||||||
|
this.emit('disconnected', packet);
|
||||||
|
});
|
||||||
|
this.cli.on('close', () => {
|
||||||
|
console.log('MQTT 关闭!');
|
||||||
|
this.emit('disconnected', 'close');
|
||||||
|
});
|
||||||
|
this.cli.on('reconnect', () => {
|
||||||
|
this.retryTimes += 1;
|
||||||
|
if (this.retryTimes > options.retryTimes) {
|
||||||
|
try {
|
||||||
|
this.cli.end();
|
||||||
|
console.error('MQTT 达到重连最大尝试次数,停止重试');
|
||||||
|
} catch (error) {
|
||||||
|
console.error(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
this.cli.on('error', (error) => {
|
||||||
|
console.log('MQTT 出现错误', error);
|
||||||
|
console.warn(error);
|
||||||
|
this.emit('error', error);
|
||||||
|
});
|
||||||
|
this.cli.on('message', (topic, message) => {
|
||||||
|
const handle = this.subMsgHandler.get(topic);
|
||||||
|
if (handle) {
|
||||||
|
if (this.options.protocol === 'json') {
|
||||||
|
const data = JSON.parse(message.toString());
|
||||||
|
handle(data);
|
||||||
|
} else {
|
||||||
|
// 字节流
|
||||||
|
handle(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} catch (err) {
|
||||||
|
console.error('MQTT connect error', err);
|
||||||
|
this.emit('error', err);
|
||||||
|
throw err;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
subscribe(destination: string, handle: HandleMessage): boolean {
|
||||||
|
console.debug('MQTT订阅执行', destination);
|
||||||
|
this.cli.subscribe(destination, { qos: 0 }, (error, res) => {
|
||||||
|
if (error) {
|
||||||
|
console.warn('MQTT 订阅失败', error);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
console.debug('MQTT 订阅成功', res);
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
this.subMsgHandler.set(destination, handle);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
unsubscribe0(destination: string): void {
|
||||||
|
console.debug('MQTT取消订阅执行', destination);
|
||||||
|
this.cli.unsubscribe(destination, (error, packet) => {
|
||||||
|
if (error) {
|
||||||
|
console.warn('MQTT 取消订阅失败', error);
|
||||||
|
} else {
|
||||||
|
console.debug('MQTT 取消订阅成功', packet);
|
||||||
|
this.subMsgHandler.delete(destination);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
get connected(): boolean {
|
||||||
|
return this.cli.connected;
|
||||||
|
}
|
||||||
|
close(): void {
|
||||||
|
try {
|
||||||
|
console.debug('MQTT关闭执行');
|
||||||
|
clearInterval(this.timer);
|
||||||
|
this.cli.end(true, () => {
|
||||||
|
console.debug('MQTT 消息客户端关闭成功');
|
||||||
|
this.subMsgHandler.clear();
|
||||||
|
});
|
||||||
|
} catch (error) {
|
||||||
|
console.warn('MQTT 消息客户端关闭失败', error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,9 +1,5 @@
|
|||||||
import { Client as StompClient, type Frame } from '@stomp/stompjs';
|
import { Client as StompClient, type Frame } from '@stomp/stompjs';
|
||||||
import {
|
import { HandleMessage, MessageClient } from './BasicMessageClient';
|
||||||
HandleMessage,
|
|
||||||
IUnsubscriptor,
|
|
||||||
MessageClient,
|
|
||||||
} from './BasicMessageClient';
|
|
||||||
import { CompleteMessageCliOption } from './MessageBroker';
|
import { CompleteMessageCliOption } from './MessageBroker';
|
||||||
|
|
||||||
const ReconnectDelay = 3000;
|
const ReconnectDelay = 3000;
|
||||||
@ -58,7 +54,7 @@ export class StompMessagingClient extends MessageClient {
|
|||||||
return this.cli.connected;
|
return this.cli.connected;
|
||||||
}
|
}
|
||||||
|
|
||||||
subscribe(destination: string, handle: HandleMessage): IUnsubscriptor {
|
subscribe(destination: string, handle: HandleMessage): boolean {
|
||||||
const sub = this.cli.subscribe(
|
const sub = this.cli.subscribe(
|
||||||
destination,
|
destination,
|
||||||
(frame) => {
|
(frame) => {
|
||||||
@ -73,7 +69,7 @@ export class StompMessagingClient extends MessageClient {
|
|||||||
id: destination,
|
id: destination,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
return sub;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
unsubscribe0(destination: string): void {
|
unsubscribe0(destination: string): void {
|
||||||
|
290
yarn.lock
290
yarn.lock
@ -309,59 +309,6 @@
|
|||||||
resolved "https://registry.npmmirror.com/@positron/stack-trace/-/stack-trace-1.0.0.tgz#14fcc712a530038ef9be1ce6952315a839f466a8"
|
resolved "https://registry.npmmirror.com/@positron/stack-trace/-/stack-trace-1.0.0.tgz#14fcc712a530038ef9be1ce6952315a839f466a8"
|
||||||
integrity sha512-nWlGg+aMfQDhGYa5FtBhZwldeo2MtdjHdxmEQvhBXEnxgD5IhIYl0PHvex8SdwyN7qcSoMykMWdjyAX7ZxkpMw==
|
integrity sha512-nWlGg+aMfQDhGYa5FtBhZwldeo2MtdjHdxmEQvhBXEnxgD5IhIYl0PHvex8SdwyN7qcSoMykMWdjyAX7ZxkpMw==
|
||||||
|
|
||||||
"@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2":
|
|
||||||
version "1.1.2"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/aspromise/-/aspromise-1.1.2.tgz#9b8b0cc663d669a7d8f6f5d0893a14d348f30fbf"
|
|
||||||
integrity sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==
|
|
||||||
|
|
||||||
"@protobufjs/base64@^1.1.2":
|
|
||||||
version "1.1.2"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/base64/-/base64-1.1.2.tgz#4c85730e59b9a1f1f349047dbf24296034bb2735"
|
|
||||||
integrity sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==
|
|
||||||
|
|
||||||
"@protobufjs/codegen@^2.0.4":
|
|
||||||
version "2.0.4"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/codegen/-/codegen-2.0.4.tgz#7ef37f0d010fb028ad1ad59722e506d9262815cb"
|
|
||||||
integrity sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==
|
|
||||||
|
|
||||||
"@protobufjs/eventemitter@^1.1.0":
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz#355cbc98bafad5978f9ed095f397621f1d066b70"
|
|
||||||
integrity sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==
|
|
||||||
|
|
||||||
"@protobufjs/fetch@^1.1.0":
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/fetch/-/fetch-1.1.0.tgz#ba99fb598614af65700c1619ff06d454b0d84c45"
|
|
||||||
integrity sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==
|
|
||||||
dependencies:
|
|
||||||
"@protobufjs/aspromise" "^1.1.1"
|
|
||||||
"@protobufjs/inquire" "^1.1.0"
|
|
||||||
|
|
||||||
"@protobufjs/float@^1.0.2":
|
|
||||||
version "1.0.2"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/float/-/float-1.0.2.tgz#5e9e1abdcb73fc0a7cb8b291df78c8cbd97b87d1"
|
|
||||||
integrity sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==
|
|
||||||
|
|
||||||
"@protobufjs/inquire@^1.1.0":
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/inquire/-/inquire-1.1.0.tgz#ff200e3e7cf2429e2dcafc1140828e8cc638f089"
|
|
||||||
integrity sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==
|
|
||||||
|
|
||||||
"@protobufjs/path@^1.1.2":
|
|
||||||
version "1.1.2"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/path/-/path-1.1.2.tgz#6cc2b20c5c9ad6ad0dccfd21ca7673d8d7fbf68d"
|
|
||||||
integrity sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==
|
|
||||||
|
|
||||||
"@protobufjs/pool@^1.1.0":
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/pool/-/pool-1.1.0.tgz#09fd15f2d6d3abfa9b65bc366506d6ad7846ff54"
|
|
||||||
integrity sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==
|
|
||||||
|
|
||||||
"@protobufjs/utf8@^1.1.0":
|
|
||||||
version "1.1.0"
|
|
||||||
resolved "https://registry.npmmirror.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
|
|
||||||
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
|
|
||||||
|
|
||||||
"@quasar/app-vite@^1.0.0":
|
"@quasar/app-vite@^1.0.0":
|
||||||
version "1.2.1"
|
version "1.2.1"
|
||||||
resolved "https://registry.npmmirror.com/@quasar/app-vite/-/app-vite-1.2.1.tgz#23a634e16c74b28a38cf1ad1b3633388a220f97f"
|
resolved "https://registry.npmmirror.com/@quasar/app-vite/-/app-vite-1.2.1.tgz#23a634e16c74b28a38cf1ad1b3633388a220f97f"
|
||||||
@ -532,11 +479,6 @@
|
|||||||
resolved "https://registry.npmmirror.com/@types/node/-/node-18.16.0.tgz#4668bc392bb6938637b47e98b1f2ed5426f33316"
|
resolved "https://registry.npmmirror.com/@types/node/-/node-18.16.0.tgz#4668bc392bb6938637b47e98b1f2ed5426f33316"
|
||||||
integrity sha512-BsAaKhB+7X+H4GnSjGhJG9Qi8Tw+inU9nJDwmD5CgOmBLEI6ArdhikpLX7DjbjDRDTbqZzU2LSQNZg8WGPiSZQ==
|
integrity sha512-BsAaKhB+7X+H4GnSjGhJG9Qi8Tw+inU9nJDwmD5CgOmBLEI6ArdhikpLX7DjbjDRDTbqZzU2LSQNZg8WGPiSZQ==
|
||||||
|
|
||||||
"@types/node@>=13.7.0":
|
|
||||||
version "20.4.2"
|
|
||||||
resolved "https://registry.npmmirror.com/@types/node/-/node-20.4.2.tgz#129cc9ae69f93824f92fac653eebfb4812ab4af9"
|
|
||||||
integrity sha512-Dd0BYtWgnWJKwO1jkmTrzofjK2QXXcai0dmtzvIBhcA+RsG5h8R3xlyta0kGOZRNfL9GuRtb1knmPEhQrePCEw==
|
|
||||||
|
|
||||||
"@types/node@^12.20.21":
|
"@types/node@^12.20.21":
|
||||||
version "12.20.55"
|
version "12.20.55"
|
||||||
resolved "https://registry.npmmirror.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
|
resolved "https://registry.npmmirror.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
|
||||||
@ -557,6 +499,14 @@
|
|||||||
resolved "https://registry.npmmirror.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc"
|
resolved "https://registry.npmmirror.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc"
|
||||||
integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==
|
integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==
|
||||||
|
|
||||||
|
"@types/readable-stream@^4.0.5":
|
||||||
|
version "4.0.5"
|
||||||
|
resolved "https://registry.npmmirror.com/@types/readable-stream/-/readable-stream-4.0.5.tgz#7a82f920748f81e6f6e6d062d6d3961e5731b296"
|
||||||
|
integrity sha512-QzFG+b0/vKI8myBgHhUja5C8ZJr4vaAeSXNYbqedm3Pr8byTgkNf1OC2/16yQTn2H2ZpQpHr7sLKS13XWpKaCQ==
|
||||||
|
dependencies:
|
||||||
|
"@types/node" "*"
|
||||||
|
safe-buffer "~5.1.1"
|
||||||
|
|
||||||
"@types/semver@^7.3.12":
|
"@types/semver@^7.3.12":
|
||||||
version "7.3.13"
|
version "7.3.13"
|
||||||
resolved "https://registry.npmmirror.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91"
|
resolved "https://registry.npmmirror.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91"
|
||||||
@ -570,6 +520,13 @@
|
|||||||
"@types/mime" "*"
|
"@types/mime" "*"
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
|
|
||||||
|
"@types/ws@^8.5.9":
|
||||||
|
version "8.5.9"
|
||||||
|
resolved "https://registry.npmmirror.com/@types/ws/-/ws-8.5.9.tgz#384c489f99c83225a53f01ebc3eddf3b8e202a8c"
|
||||||
|
integrity sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg==
|
||||||
|
dependencies:
|
||||||
|
"@types/node" "*"
|
||||||
|
|
||||||
"@typescript-eslint/eslint-plugin@^5.10.0":
|
"@typescript-eslint/eslint-plugin@^5.10.0":
|
||||||
version "5.59.1"
|
version "5.59.1"
|
||||||
resolved "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz#9b09ee1541bff1d2cebdcb87e7ce4a4003acde08"
|
resolved "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz#9b09ee1541bff1d2cebdcb87e7ce4a4003acde08"
|
||||||
@ -754,6 +711,13 @@
|
|||||||
resolved "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz#e597ef75086c6e896ff5478a6bfc0a7aa4bbd14c"
|
resolved "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.47.tgz#e597ef75086c6e896ff5478a6bfc0a7aa4bbd14c"
|
||||||
integrity sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==
|
integrity sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==
|
||||||
|
|
||||||
|
abort-controller@^3.0.0:
|
||||||
|
version "3.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392"
|
||||||
|
integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==
|
||||||
|
dependencies:
|
||||||
|
event-target-shim "^5.0.0"
|
||||||
|
|
||||||
accepts@~1.3.5, accepts@~1.3.8:
|
accepts@~1.3.5, accepts@~1.3.8:
|
||||||
version "1.3.8"
|
version "1.3.8"
|
||||||
resolved "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
|
resolved "https://registry.npmmirror.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
|
||||||
@ -928,6 +892,15 @@ bl@^4.0.3, bl@^4.1.0:
|
|||||||
inherits "^2.0.4"
|
inherits "^2.0.4"
|
||||||
readable-stream "^3.4.0"
|
readable-stream "^3.4.0"
|
||||||
|
|
||||||
|
bl@^6.0.8:
|
||||||
|
version "6.0.8"
|
||||||
|
resolved "https://registry.npmmirror.com/bl/-/bl-6.0.8.tgz#737d57f2d1e25b9ca45e0f4c5d84409731a86c04"
|
||||||
|
integrity sha512-HCRq8z0+3vrGCjEKrbnK6blpDZ1xzhfZKCCuyvPC7upGcfXZSmaCumpVao/jC8o1hs/fOqJoCSPMabl+CQTPXg==
|
||||||
|
dependencies:
|
||||||
|
buffer "^6.0.3"
|
||||||
|
inherits "^2.0.4"
|
||||||
|
readable-stream "^4.2.0"
|
||||||
|
|
||||||
body-parser@1.20.1:
|
body-parser@1.20.1:
|
||||||
version "1.20.1"
|
version "1.20.1"
|
||||||
resolved "https://registry.npmmirror.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"
|
resolved "https://registry.npmmirror.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668"
|
||||||
@ -988,6 +961,11 @@ buffer-crc32@^0.2.1, buffer-crc32@^0.2.13:
|
|||||||
resolved "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
|
resolved "https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
|
||||||
integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==
|
integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==
|
||||||
|
|
||||||
|
buffer-from@^1.0.0:
|
||||||
|
version "1.1.2"
|
||||||
|
resolved "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
|
||||||
|
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
|
||||||
|
|
||||||
buffer@^5.5.0:
|
buffer@^5.5.0:
|
||||||
version "5.7.1"
|
version "5.7.1"
|
||||||
resolved "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
|
resolved "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
|
||||||
@ -996,6 +974,14 @@ buffer@^5.5.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://registry.npmmirror.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
|
||||||
|
integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
|
||||||
|
dependencies:
|
||||||
|
base64-js "^1.3.1"
|
||||||
|
ieee754 "^1.2.1"
|
||||||
|
|
||||||
bytes@3.0.0:
|
bytes@3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
resolved "https://registry.npmmirror.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
|
resolved "https://registry.npmmirror.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
|
||||||
@ -1032,14 +1018,6 @@ caniuse-lite@^1.0.30001449, caniuse-lite@^1.0.30001464:
|
|||||||
resolved "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz#f58a717afe92f9e69d0e35ff64df596bfad93912"
|
resolved "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001481.tgz#f58a717afe92f9e69d0e35ff64df596bfad93912"
|
||||||
integrity sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==
|
integrity sha512-KCqHwRnaa1InZBtqXzP98LPg0ajCVujMKjqKDhZEthIpAsJl/YEIa3YvXjGXPVqzZVguccuu7ga9KOE1J9rKPQ==
|
||||||
|
|
||||||
centrifuge@^4.0.1:
|
|
||||||
version "4.0.1"
|
|
||||||
resolved "https://registry.npmmirror.com/centrifuge/-/centrifuge-4.0.1.tgz#2607756d4b7da6201ca12666bfc6564e4e8ef6a2"
|
|
||||||
integrity sha512-akAyUfvMnyoCa6X2tdU5WPEccVqjkb9R/xxfm3iJ7ha7EIawjKu1dQmoyMkoLDpgl0jFxhorjmVgRcbojE17DA==
|
|
||||||
dependencies:
|
|
||||||
events "^3.3.0"
|
|
||||||
protobufjs "^7.2.4"
|
|
||||||
|
|
||||||
chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1:
|
chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.1:
|
||||||
version "4.1.2"
|
version "4.1.2"
|
||||||
resolved "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
|
resolved "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
|
||||||
@ -1149,6 +1127,11 @@ commander@^2.19.0:
|
|||||||
resolved "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
|
resolved "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
|
||||||
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
||||||
|
|
||||||
|
commist@^3.2.0:
|
||||||
|
version "3.2.0"
|
||||||
|
resolved "https://registry.npmmirror.com/commist/-/commist-3.2.0.tgz#da9c8e5f245ac21510badc4b10c46b5bcc9b56cd"
|
||||||
|
integrity sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw==
|
||||||
|
|
||||||
compress-commons@^4.1.0:
|
compress-commons@^4.1.0:
|
||||||
version "4.1.1"
|
version "4.1.1"
|
||||||
resolved "https://registry.npmmirror.com/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d"
|
resolved "https://registry.npmmirror.com/compress-commons/-/compress-commons-4.1.1.tgz#df2a09a7ed17447642bad10a85cc9a19e5c42a7d"
|
||||||
@ -1184,6 +1167,16 @@ concat-map@0.0.1:
|
|||||||
resolved "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
resolved "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||||
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
||||||
|
|
||||||
|
concat-stream@^2.0.0:
|
||||||
|
version "2.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1"
|
||||||
|
integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==
|
||||||
|
dependencies:
|
||||||
|
buffer-from "^1.0.0"
|
||||||
|
inherits "^2.0.3"
|
||||||
|
readable-stream "^3.0.2"
|
||||||
|
typedarray "^0.0.6"
|
||||||
|
|
||||||
content-disposition@0.5.4:
|
content-disposition@0.5.4:
|
||||||
version "0.5.4"
|
version "0.5.4"
|
||||||
resolved "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
|
resolved "https://registry.npmmirror.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
|
||||||
@ -1250,7 +1243,7 @@ debug@2.6.9:
|
|||||||
dependencies:
|
dependencies:
|
||||||
ms "2.0.0"
|
ms "2.0.0"
|
||||||
|
|
||||||
debug@^4.1.1, debug@^4.3.2, debug@^4.3.4:
|
debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4:
|
||||||
version "4.3.4"
|
version "4.3.4"
|
||||||
resolved "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
|
resolved "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
|
||||||
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
|
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
|
||||||
@ -1310,6 +1303,16 @@ dot-prop@6.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
is-obj "^2.0.0"
|
is-obj "^2.0.0"
|
||||||
|
|
||||||
|
duplexify@^4.1.2:
|
||||||
|
version "4.1.2"
|
||||||
|
resolved "https://registry.npmmirror.com/duplexify/-/duplexify-4.1.2.tgz#18b4f8d28289132fa0b9573c898d9f903f81c7b0"
|
||||||
|
integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==
|
||||||
|
dependencies:
|
||||||
|
end-of-stream "^1.4.1"
|
||||||
|
inherits "^2.0.3"
|
||||||
|
readable-stream "^3.1.1"
|
||||||
|
stream-shift "^1.0.0"
|
||||||
|
|
||||||
earcut@^2.2.4:
|
earcut@^2.2.4:
|
||||||
version "2.2.4"
|
version "2.2.4"
|
||||||
resolved "https://registry.npmmirror.com/earcut/-/earcut-2.2.4.tgz#6d02fd4d68160c114825d06890a92ecaae60343a"
|
resolved "https://registry.npmmirror.com/earcut/-/earcut-2.2.4.tgz#6d02fd4d68160c114825d06890a92ecaae60343a"
|
||||||
@ -1762,6 +1765,11 @@ etag@~1.8.1:
|
|||||||
resolved "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
|
resolved "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
|
||||||
integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
|
integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
|
||||||
|
|
||||||
|
event-target-shim@^5.0.0:
|
||||||
|
version "5.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
|
||||||
|
integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==
|
||||||
|
|
||||||
eventemitter3@^4.0.0:
|
eventemitter3@^4.0.0:
|
||||||
version "4.0.7"
|
version "4.0.7"
|
||||||
resolved "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
|
resolved "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
|
||||||
@ -2011,6 +2019,17 @@ glob@^7.1.3, glob@^7.1.4:
|
|||||||
once "^1.3.0"
|
once "^1.3.0"
|
||||||
path-is-absolute "^1.0.0"
|
path-is-absolute "^1.0.0"
|
||||||
|
|
||||||
|
glob@^8.0.0:
|
||||||
|
version "8.1.0"
|
||||||
|
resolved "https://registry.npmmirror.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
|
||||||
|
integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
|
||||||
|
dependencies:
|
||||||
|
fs.realpath "^1.0.0"
|
||||||
|
inflight "^1.0.4"
|
||||||
|
inherits "2"
|
||||||
|
minimatch "^5.0.1"
|
||||||
|
once "^1.3.0"
|
||||||
|
|
||||||
globals@^13.19.0:
|
globals@^13.19.0:
|
||||||
version "13.20.0"
|
version "13.20.0"
|
||||||
resolved "https://registry.npmmirror.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82"
|
resolved "https://registry.npmmirror.com/globals/-/globals-13.20.0.tgz#ea276a1e508ffd4f1612888f9d1bad1e2717bf82"
|
||||||
@ -2067,6 +2086,14 @@ he@^1.2.0:
|
|||||||
resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
|
resolved "https://registry.npmmirror.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
|
||||||
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
|
||||||
|
|
||||||
|
help-me@^4.2.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.npmmirror.com/help-me/-/help-me-4.2.0.tgz#50712bfd799ff1854ae1d312c36eafcea85b0563"
|
||||||
|
integrity sha512-TAOnTB8Tz5Dw8penUuzHVrKNKlCIbwwbHnXraNJxPwf8LRtE2HlM84RYuezMFcwOJmoYOCWVDyJ8TQGxn9PgxA==
|
||||||
|
dependencies:
|
||||||
|
glob "^8.0.0"
|
||||||
|
readable-stream "^3.6.0"
|
||||||
|
|
||||||
html-minifier@^4.0.0:
|
html-minifier@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.0.0"
|
||||||
resolved "https://registry.npmmirror.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56"
|
resolved "https://registry.npmmirror.com/html-minifier/-/html-minifier-4.0.0.tgz#cca9aad8bce1175e02e17a8c33e46d8988889f56"
|
||||||
@ -2098,7 +2125,7 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24:
|
|||||||
dependencies:
|
dependencies:
|
||||||
safer-buffer ">= 2.1.2 < 3"
|
safer-buffer ">= 2.1.2 < 3"
|
||||||
|
|
||||||
ieee754@^1.1.13:
|
ieee754@^1.1.13, ieee754@^1.2.1:
|
||||||
version "1.2.1"
|
version "1.2.1"
|
||||||
resolved "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
|
resolved "https://registry.npmmirror.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
|
||||||
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
|
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
|
||||||
@ -2275,6 +2302,11 @@ js-base64@^3.7.5:
|
|||||||
resolved "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.5.tgz#21e24cf6b886f76d6f5f165bfcd69cc55b9e3fca"
|
resolved "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.5.tgz#21e24cf6b886f76d6f5f165bfcd69cc55b9e3fca"
|
||||||
integrity sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==
|
integrity sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==
|
||||||
|
|
||||||
|
js-sdsl@4.3.0:
|
||||||
|
version "4.3.0"
|
||||||
|
resolved "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz#aeefe32a451f7af88425b11fdb5f58c90ae1d711"
|
||||||
|
integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==
|
||||||
|
|
||||||
js-sdsl@^4.1.4:
|
js-sdsl@^4.1.4:
|
||||||
version "4.4.0"
|
version "4.4.0"
|
||||||
resolved "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.4.0.tgz#8b437dbe642daa95760400b602378ed8ffea8430"
|
resolved "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.4.0.tgz#8b437dbe642daa95760400b602378ed8ffea8430"
|
||||||
@ -2391,16 +2423,18 @@ log-symbols@^4.1.0:
|
|||||||
chalk "^4.1.0"
|
chalk "^4.1.0"
|
||||||
is-unicode-supported "^0.1.0"
|
is-unicode-supported "^0.1.0"
|
||||||
|
|
||||||
long@^5.0.0:
|
|
||||||
version "5.2.3"
|
|
||||||
resolved "https://registry.npmmirror.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1"
|
|
||||||
integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==
|
|
||||||
|
|
||||||
lower-case@^1.1.1:
|
lower-case@^1.1.1:
|
||||||
version "1.1.4"
|
version "1.1.4"
|
||||||
resolved "https://registry.npmmirror.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
|
resolved "https://registry.npmmirror.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
|
||||||
integrity sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==
|
integrity sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==
|
||||||
|
|
||||||
|
lru-cache@^10.0.1:
|
||||||
|
version "10.0.2"
|
||||||
|
resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-10.0.2.tgz#34504678cc3266b09b8dfd6fab4e1515258271b7"
|
||||||
|
integrity sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==
|
||||||
|
dependencies:
|
||||||
|
semver "^7.3.5"
|
||||||
|
|
||||||
lru-cache@^6.0.0:
|
lru-cache@^6.0.0:
|
||||||
version "6.0.0"
|
version "6.0.0"
|
||||||
resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
||||||
@ -2479,11 +2513,43 @@ minimatch@^5.0.1, minimatch@^5.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
brace-expansion "^2.0.1"
|
brace-expansion "^2.0.1"
|
||||||
|
|
||||||
minimist@^1.2.6:
|
minimist@^1.2.6, minimist@^1.2.8:
|
||||||
version "1.2.8"
|
version "1.2.8"
|
||||||
resolved "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
|
resolved "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
|
||||||
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
|
integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
|
||||||
|
|
||||||
|
mqtt-packet@^9.0.0:
|
||||||
|
version "9.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/mqtt-packet/-/mqtt-packet-9.0.0.tgz#fd841854d8c0f1f5211b00de388c4ced45b59216"
|
||||||
|
integrity sha512-8v+HkX+fwbodsWAZIZTI074XIoxVBOmPeggQuDFCGg1SqNcC+uoRMWu7J6QlJPqIUIJXmjNYYHxBBLr1Y/Df4w==
|
||||||
|
dependencies:
|
||||||
|
bl "^6.0.8"
|
||||||
|
debug "^4.3.4"
|
||||||
|
process-nextick-args "^2.0.1"
|
||||||
|
|
||||||
|
mqtt@^5.2.0, mqtt@^5.2.1:
|
||||||
|
version "5.2.1"
|
||||||
|
resolved "https://registry.npmmirror.com/mqtt/-/mqtt-5.2.1.tgz#2c7b71bd8903390701677888933644018f5a0a02"
|
||||||
|
integrity sha512-iXN1dEWDsl6GTMda2ZyhEbpb8BtgSpMuXVZf4c2C8HX/0r3N9SrTBYa+jVEyWhj/5CMiAobBhjtRYgjt9rXvfg==
|
||||||
|
dependencies:
|
||||||
|
"@types/readable-stream" "^4.0.5"
|
||||||
|
"@types/ws" "^8.5.9"
|
||||||
|
commist "^3.2.0"
|
||||||
|
concat-stream "^2.0.0"
|
||||||
|
debug "^4.3.4"
|
||||||
|
duplexify "^4.1.2"
|
||||||
|
help-me "^4.2.0"
|
||||||
|
lru-cache "^10.0.1"
|
||||||
|
minimist "^1.2.8"
|
||||||
|
mqtt "^5.2.0"
|
||||||
|
mqtt-packet "^9.0.0"
|
||||||
|
number-allocator "^1.0.14"
|
||||||
|
readable-stream "^4.4.2"
|
||||||
|
reinterval "^1.1.0"
|
||||||
|
rfdc "^1.3.0"
|
||||||
|
split2 "^4.2.0"
|
||||||
|
ws "^8.14.2"
|
||||||
|
|
||||||
ms@2.0.0:
|
ms@2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
resolved "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
||||||
@ -2553,6 +2619,14 @@ nth-check@^2.0.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
boolbase "^1.0.0"
|
boolbase "^1.0.0"
|
||||||
|
|
||||||
|
number-allocator@^1.0.14:
|
||||||
|
version "1.0.14"
|
||||||
|
resolved "https://registry.npmmirror.com/number-allocator/-/number-allocator-1.0.14.tgz#1f2e32855498a7740dcc8c78bed54592d930ee4d"
|
||||||
|
integrity sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.3.1"
|
||||||
|
js-sdsl "4.3.0"
|
||||||
|
|
||||||
object-inspect@^1.9.0:
|
object-inspect@^1.9.0:
|
||||||
version "1.12.3"
|
version "1.12.3"
|
||||||
resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
|
resolved "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz#ba62dffd67ee256c8c086dfae69e016cd1f198b9"
|
||||||
@ -2789,28 +2863,15 @@ prettier@^2.5.1:
|
|||||||
resolved "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da"
|
resolved "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da"
|
||||||
integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
|
integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
|
||||||
|
|
||||||
process-nextick-args@~2.0.0:
|
process-nextick-args@^2.0.1, process-nextick-args@~2.0.0:
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
resolved "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
||||||
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
||||||
|
|
||||||
protobufjs@^7.2.4:
|
process@^0.11.10:
|
||||||
version "7.2.4"
|
version "0.11.10"
|
||||||
resolved "https://registry.npmmirror.com/protobufjs/-/protobufjs-7.2.4.tgz#3fc1ec0cdc89dd91aef9ba6037ba07408485c3ae"
|
resolved "https://registry.npmmirror.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
|
||||||
integrity sha512-AT+RJgD2sH8phPmCf7OUZR8xGdcJRga4+1cOaXJ64hvcSkVhNcRHOwIxUatPH15+nj59WAGTDv3LSGZPEQbJaQ==
|
integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
|
||||||
dependencies:
|
|
||||||
"@protobufjs/aspromise" "^1.1.2"
|
|
||||||
"@protobufjs/base64" "^1.1.2"
|
|
||||||
"@protobufjs/codegen" "^2.0.4"
|
|
||||||
"@protobufjs/eventemitter" "^1.1.0"
|
|
||||||
"@protobufjs/fetch" "^1.1.0"
|
|
||||||
"@protobufjs/float" "^1.0.2"
|
|
||||||
"@protobufjs/inquire" "^1.1.0"
|
|
||||||
"@protobufjs/path" "^1.1.2"
|
|
||||||
"@protobufjs/pool" "^1.1.0"
|
|
||||||
"@protobufjs/utf8" "^1.1.0"
|
|
||||||
"@types/node" ">=13.7.0"
|
|
||||||
long "^5.0.0"
|
|
||||||
|
|
||||||
protoc-gen-ts@^0.8.6:
|
protoc-gen-ts@^0.8.6:
|
||||||
version "0.8.6"
|
version "0.8.6"
|
||||||
@ -2897,7 +2958,7 @@ readable-stream@^2.0.0, readable-stream@^2.0.5:
|
|||||||
string_decoder "~1.1.1"
|
string_decoder "~1.1.1"
|
||||||
util-deprecate "~1.0.1"
|
util-deprecate "~1.0.1"
|
||||||
|
|
||||||
readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
|
readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
|
||||||
version "3.6.2"
|
version "3.6.2"
|
||||||
resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
|
resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
|
||||||
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
|
integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
|
||||||
@ -2906,6 +2967,17 @@ readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
|
|||||||
string_decoder "^1.1.1"
|
string_decoder "^1.1.1"
|
||||||
util-deprecate "^1.0.1"
|
util-deprecate "^1.0.1"
|
||||||
|
|
||||||
|
readable-stream@^4.2.0, readable-stream@^4.4.2:
|
||||||
|
version "4.4.2"
|
||||||
|
resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-4.4.2.tgz#e6aced27ad3b9d726d8308515b9a1b98dc1b9d13"
|
||||||
|
integrity sha512-Lk/fICSyIhodxy1IDK2HazkeGjSmezAWX2egdtJnYhtzKEsBPJowlI6F6LPb5tqIQILrMbx22S5o3GuJavPusA==
|
||||||
|
dependencies:
|
||||||
|
abort-controller "^3.0.0"
|
||||||
|
buffer "^6.0.3"
|
||||||
|
events "^3.3.0"
|
||||||
|
process "^0.11.10"
|
||||||
|
string_decoder "^1.3.0"
|
||||||
|
|
||||||
readdir-glob@^1.0.0:
|
readdir-glob@^1.0.0:
|
||||||
version "1.1.3"
|
version "1.1.3"
|
||||||
resolved "https://registry.npmmirror.com/readdir-glob/-/readdir-glob-1.1.3.tgz#c3d831f51f5e7bfa62fa2ffbe4b508c640f09584"
|
resolved "https://registry.npmmirror.com/readdir-glob/-/readdir-glob-1.1.3.tgz#c3d831f51f5e7bfa62fa2ffbe4b508c640f09584"
|
||||||
@ -2925,6 +2997,11 @@ register-service-worker@^1.7.2:
|
|||||||
resolved "https://registry.npmmirror.com/register-service-worker/-/register-service-worker-1.7.2.tgz#6516983e1ef790a98c4225af1216bc80941a4bd2"
|
resolved "https://registry.npmmirror.com/register-service-worker/-/register-service-worker-1.7.2.tgz#6516983e1ef790a98c4225af1216bc80941a4bd2"
|
||||||
integrity sha512-CiD3ZSanZqcMPRhtfct5K9f7i3OLCcBBWsJjLh1gW9RO/nS94sVzY59iS+fgYBOBqaBpf4EzfqUF3j9IG+xo8A==
|
integrity sha512-CiD3ZSanZqcMPRhtfct5K9f7i3OLCcBBWsJjLh1gW9RO/nS94sVzY59iS+fgYBOBqaBpf4EzfqUF3j9IG+xo8A==
|
||||||
|
|
||||||
|
reinterval@^1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.npmmirror.com/reinterval/-/reinterval-1.1.0.tgz#3361ecfa3ca6c18283380dd0bb9546f390f5ece7"
|
||||||
|
integrity sha512-QIRet3SYrGp0HUHO88jVskiG6seqUGC5iAG7AwI/BV4ypGcuqk9Du6YQBUOUqm9c8pw1eyLoIaONifRua1lsEQ==
|
||||||
|
|
||||||
relateurl@^0.2.7:
|
relateurl@^0.2.7:
|
||||||
version "0.2.7"
|
version "0.2.7"
|
||||||
resolved "https://registry.npmmirror.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
|
resolved "https://registry.npmmirror.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
|
||||||
@ -2967,6 +3044,11 @@ reusify@^1.0.4:
|
|||||||
resolved "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
|
resolved "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
|
||||||
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
|
integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
|
||||||
|
|
||||||
|
rfdc@^1.3.0:
|
||||||
|
version "1.3.0"
|
||||||
|
resolved "https://registry.npmmirror.com/rfdc/-/rfdc-1.3.0.tgz#d0b7c441ab2720d05dc4cf26e01c89631d9da08b"
|
||||||
|
integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==
|
||||||
|
|
||||||
rimraf@^3.0.2:
|
rimraf@^3.0.2:
|
||||||
version "3.0.2"
|
version "3.0.2"
|
||||||
resolved "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
|
resolved "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
|
||||||
@ -3152,11 +3234,21 @@ sourcemap-codec@^1.4.8:
|
|||||||
resolved "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
|
resolved "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
|
||||||
integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
|
integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
|
||||||
|
|
||||||
|
split2@^4.2.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.npmmirror.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
|
||||||
|
integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==
|
||||||
|
|
||||||
statuses@2.0.1:
|
statuses@2.0.1:
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
|
resolved "https://registry.npmmirror.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
|
||||||
integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
|
integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
|
||||||
|
|
||||||
|
stream-shift@^1.0.0:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d"
|
||||||
|
integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==
|
||||||
|
|
||||||
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
|
string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
|
||||||
version "4.2.3"
|
version "4.2.3"
|
||||||
resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
|
resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
|
||||||
@ -3166,7 +3258,7 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
|
|||||||
is-fullwidth-code-point "^3.0.0"
|
is-fullwidth-code-point "^3.0.0"
|
||||||
strip-ansi "^6.0.1"
|
strip-ansi "^6.0.1"
|
||||||
|
|
||||||
string_decoder@^1.1.1:
|
string_decoder@^1.1.1, string_decoder@^1.3.0:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
resolved "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
||||||
integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
|
integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
|
||||||
@ -3302,6 +3394,11 @@ type-is@~1.6.18:
|
|||||||
media-typer "0.3.0"
|
media-typer "0.3.0"
|
||||||
mime-types "~2.1.24"
|
mime-types "~2.1.24"
|
||||||
|
|
||||||
|
typedarray@^0.0.6:
|
||||||
|
version "0.0.6"
|
||||||
|
resolved "https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
|
||||||
|
integrity sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==
|
||||||
|
|
||||||
typescript@^4.5.4:
|
typescript@^4.5.4:
|
||||||
version "4.9.5"
|
version "4.9.5"
|
||||||
resolved "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
|
resolved "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a"
|
||||||
@ -3459,6 +3556,11 @@ wrappy@1:
|
|||||||
resolved "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
resolved "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
||||||
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
|
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
|
||||||
|
|
||||||
|
ws@^8.14.2:
|
||||||
|
version "8.14.2"
|
||||||
|
resolved "https://registry.npmmirror.com/ws/-/ws-8.14.2.tgz#6c249a806eb2db7a20d26d51e7709eab7b2e6c7f"
|
||||||
|
integrity sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==
|
||||||
|
|
||||||
xml-name-validator@^4.0.0:
|
xml-name-validator@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.0.0"
|
||||||
resolved "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835"
|
resolved "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835"
|
||||||
|
Loading…
Reference in New Issue
Block a user