From 11433d0f47eae3403e883fc26d72269b930235f2 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 11 Sep 2023 16:51:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/develop' into develop
---
src/mqtt/config.ts | 7
src/pages/page-web/projects/common/common.ts | 6
env/.env.stag | 3
src/components/Drawer/Drawer.vue | 18
src/pages/page-web/projects/tsa.vue | 58 ++-
src/websocket/index.ts | 8
src/hooks/use-center-point.ts | 3
src/pages/page-web/projects/components/DockConfig.vue | 282 ++++++++++++++++
env/.env.production | 3
env/.env | 3
src/mqtt/index.ts | 5
src/pages/page-web/projects/project_list/add_page/add.vue | 22
src/pages/page-web/home.vue | 5
src/main.ts | 2
src/styles/flex.style.scss | 17
src/api/http/config.ts | 7
src/api/pilot-bridge.ts | 3
yarn.lock | 424 ++++++++++++++++++++----
src/components/cesiumMap/cesium.vue | 100 ++++-
src/websocket/util/config.ts | 3
package.json | 2
src/pages/page-web/projects/workspace.vue | 5
22 files changed, 827 insertions(+), 159 deletions(-)
diff --git a/env/.env b/env/.env
index 47efef8..edbd2bd 100644
--- a/env/.env
+++ b/env/.env
@@ -1,3 +1,4 @@
VITE_APP_ENVIRONMENT=DEV
VITE_APP_APIGATEWAY_BACKEND_HOST=''
-VITE_HTTP = 'http://172.16.13.129:8100'
\ No newline at end of file
+VITE_HTTP = 'http://172.16.13.129:8100'
+VITE_CESIUM_TOKEN = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhMjdmNGUxZC02YzY3LTQyZWUtOTNmYy1hNTI0MDRkZDY2ZmEiLCJpZCI6MTYxODgyLCJpYXQiOjE2OTI3NTQyNDV9.Pm7xTwPmKowPzFgJ0TsIKOtthigq86BLJX4c8M97Hhw'
\ No newline at end of file
diff --git a/env/.env.production b/env/.env.production
index a76530f..22c939b 100644
--- a/env/.env.production
+++ b/env/.env.production
@@ -1,3 +1,4 @@
VITE_APP_ENVIRONMENT=production
VITE_APP_APIGATEWAY_BACKEND_HOST=''
-VITE_HTTP = 'http://172.16.13.129:8100'
\ No newline at end of file
+VITE_HTTP = 'http://172.16.13.129:8100'
+VITE_CESIUM_TOKEN = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhMjdmNGUxZC02YzY3LTQyZWUtOTNmYy1hNTI0MDRkZDY2ZmEiLCJpZCI6MTYxODgyLCJpYXQiOjE2OTI3NTQyNDV9.Pm7xTwPmKowPzFgJ0TsIKOtthigq86BLJX4c8M97Hhw'
\ No newline at end of file
diff --git a/env/.env.stag b/env/.env.stag
index 276f95b..8aa5141 100644
--- a/env/.env.stag
+++ b/env/.env.stag
@@ -10,4 +10,5 @@
###
VITE_APP_ENVIRONMENT=STAG
VITE_APP_APIGATEWAY_BACKEND_HOST=''
-VITE_HTTP = 'http://172.16.13.129:8100'
\ No newline at end of file
+VITE_HTTP = 'http://172.16.13.129:8100'
+VITE_CESIUM_TOKEN = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhMjdmNGUxZC02YzY3LTQyZWUtOTNmYy1hNTI0MDRkZDY2ZmEiLCJpZCI6MTYxODgyLCJpYXQiOjE2OTI3NTQyNDV9.Pm7xTwPmKowPzFgJ0TsIKOtthigq86BLJX4c8M97Hhw'
\ No newline at end of file
diff --git a/package.json b/package.json
index ddad0b4..26da358 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,7 @@
"axios": "^0.21.1",
"eventemitter3": "^5.0.0",
"mitt": "^3.0.0",
- "mqtt": "^4.3.7",
+ "mqtt": "4.0.1",
"query-string": "^7.0.1",
"reconnecting-websocket": "^4.4.0",
"vconsole": "^3.8.1",
diff --git a/src/api/http/config.ts b/src/api/http/config.ts
index fd8ecbf..0915e36 100644
--- a/src/api/http/config.ts
+++ b/src/api/http/config.ts
@@ -1,8 +1,8 @@
/*
* @Author: 胡思旗 931347610@qq.com
* @Date: 2023-08-22 09:55:39
- * @LastEditors: 胡思旗 931347610@qq.com
- * @LastEditTime: 2023-08-29 14:59:18
+ * @LastEditors: husq 931347610@qq.com
+ * @LastEditTime: 2023-09-11 12:04:07
* @FilePath: \Cloud-API-Demo-Web\src\api\http\config.ts
* @Description:
*
@@ -19,7 +19,8 @@
// http://172.16.13.64:8100
baseURL: 'http://172.16.13.129:8100', // This url must end with "/". Example: 'http://192.168.1.1:6789/'
// ws://172.16.13.129:6789/api/v1/ws
- websocketURL: '', // Example: 'ws://192.168.1.1:6789/api/v1/ws'
+ // ws://192.168.1.198:1883/
+ websocketURL: 'ws://192.168.1.198:8600/drone/api/v1/ws', // Example: 'ws://192.168.1.198:6789/api/v1/ws'
// livestreaming
// RTMP Note: This IP is the address of the streaming server. If you want to see livestream on web page, you need to convert the RTMP stream to WebRTC stream.
diff --git a/src/api/pilot-bridge.ts b/src/api/pilot-bridge.ts
index 61bdf4e..86af3e2 100644
--- a/src/api/pilot-bridge.ts
+++ b/src/api/pilot-bridge.ts
@@ -1,5 +1,5 @@
import { message } from 'ant-design-vue'
-import { EComponentName, EPhotoType, ERouterName } from '../types'
+import { EComponentName, ELocalStorageKey, EPhotoType, ERouterName } from '../types'
import { CURRENT_CONFIG } from './http/config'
import { EVideoPublishType, LiveStreamStatus } from '../types/live-stream'
import { getRoot } from '/@/root'
@@ -93,6 +93,7 @@
userName: '',
elementPreName: 'PILOT'
}
+ const token = localStorage.getItem(ELocalStorageKey.Token)
components.set(EComponentName.Map, mapParam)
const wsParam: WsParam = {
host: CURRENT_CONFIG.websocketURL,
diff --git a/src/components/Drawer/Drawer.vue b/src/components/Drawer/Drawer.vue
index 896aa5b..f86da93 100644
--- a/src/components/Drawer/Drawer.vue
+++ b/src/components/Drawer/Drawer.vue
@@ -1,6 +1,6 @@
<template>
- <div class="drawer" :class="[show ? 'active':'none']" v-show="show">
- <div class="side-header">
+ <div class="drawer" :style="[styleDrawer]" :class="[show ? 'active':'none']" v-show="show">
+ <div v-if="isHeader" class="side-header">
<div class="side-option flex-display flex-align-center flex-justify-between">
<h2 class="title">{{ title }}</h2>
<CloseOutlined @click="close" />
@@ -21,7 +21,19 @@
},
title: {
type: String,
- required: true
+ // required: true
+ },
+ // 是否显示头部
+ isHeader: {
+ type: Boolean,
+ default: true
+ },
+ // 定位css
+ styleDrawer: {
+ type: Object,
+ default: () => ({
+ top: 0
+ })
}
})
const emits = defineEmits(['update:show'])
diff --git a/src/components/cesiumMap/cesium.vue b/src/components/cesiumMap/cesium.vue
index 7f9175d..110559e 100644
--- a/src/components/cesiumMap/cesium.vue
+++ b/src/components/cesiumMap/cesium.vue
@@ -2,7 +2,7 @@
* @Author: 胡思旗 931347610@qq.com
* @Date: 2023-08-22 17:50:30
* @LastEditors: husq 931347610@qq.com
- * @LastEditTime: 2023-09-07 16:45:18
+ * @LastEditTime: 2023-09-11 09:57:01
* @FilePath: \Cloud-API-Demo-Web\src\components\cesiumMap\cesium.vue
* @Description:
*
@@ -11,26 +11,35 @@
<template>
<div class="height-100 width-100 cesium" id="cesiumContainer"></div>
<div v-if="centerConfig.type && !centerConfig.latitude" class="pointLongitude">在地图上点击绘制项目中心点</div>
+ <div class="switch">
+ <div class="2d" v-if="dimension === 3" @click="switchModel('2D')">2D</div>
+ <div class="3d" v-else @click="switchModel('3D')">3D</div>
+ </div>
</template>
<script setup lang="ts">
import * as Cesium from 'cesium'
-import { onMounted, ref, onUnmounted } from 'vue'
+import { onMounted, ref, onUnmounted, } from 'vue'
import { pointCenter, clickPoint } from '/@/hooks/use-center-point'
import { useMyStore } from '/@/store'
-const viewer: { value: Cesium.Viewer | null | undefined } = ref()
+let viewer: Cesium.Viewer | null = null
+let handler: Cesium.ScreenSpaceEventHandler
+const dimension = ref(3)
+const { appContext } = getCurrentInstance()
+const global = appContext.config.globalProperties
+// const viewer: { value: Cesium.Viewer | null | undefined } = ref()
const store = useMyStore()
const centerConfig = computed(() => {
return store.state.map.centerConfig
})
const init = () => {
// Cesium Token
- const cesiumToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhMjdmNGUxZC02YzY3LTQyZWUtOTNmYy1hNTI0MDRkZDY2ZmEiLCJpZCI6MTYxODgyLCJpYXQiOjE2OTI3NTQyNDV9.Pm7xTwPmKowPzFgJ0TsIKOtthigq86BLJX4c8M97Hhw'
+ const cesiumToken = import.meta.env.VITE_CESIUM_TOKEN
Cesium.Ion.defaultAccessToken = cesiumToken
Cesium.Camera.DEFAULT_VIEW_FACTOR = -0.45
// 西南东北,默认显示中国
Cesium.Camera.DEFAULT_VIEW_RECTANGLE = Cesium.Rectangle.fromDegrees(110, -25, 110, 90)
- viewer.value = new Cesium.Viewer('cesiumContainer', {
+ viewer = new Cesium.Viewer('cesiumContainer', {
infoBox: false, // 禁用沙箱,解决控制台报错
animation: false, // 左下角的动画仪表盘
baseLayerPicker: false, // 右上角的图层选择按钮
@@ -39,9 +48,15 @@
sceneModePicker: false, // 模式切换按钮
timeline: false, // 底部的时间轴
navigationHelpButton: false, // 右上角的帮助按钮,
+ selectionIndicator: false, // 是否显示选择指示器
baseLayer: false,
})
+ handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas)
loadLAYER()
+ viewer.cesiumWidget.screenSpaceEventHandler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK) // 禁用双击
+ // viewer.scene.screenSpaceCameraController.minimumZoomDistance = 100
+ viewer.scene.screenSpaceCameraController.maximumZoomDistance = 4500000
+ global.$viewer = viewer
}
// 加载图层、注解方法
const loadLAYER = () => {
@@ -67,7 +82,7 @@
tileMatrixLabels: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19'],
maximumLevel: 50,
})
- viewer.value?.imageryLayers.addImageryProvider(imageryProvider)
+ viewer?.imageryLayers.addImageryProvider(imageryProvider)
// 天地图中文注记加载
const annotation = new Cesium.WebMapTileServiceImageryProvider({
url: TDT_ZJ,
@@ -80,12 +95,12 @@
tileMatrixLabels: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19'],
maximumLevel: 50,
})
- viewer.value?.imageryLayers.addImageryProvider(annotation)
+ viewer?.imageryLayers.addImageryProvider(annotation)
}
const Point = (longitude: number, latitude: number) => {
// 移除地图所有点 重新绘制
- viewer.value?.entities.removeAll()
- const entity = viewer.value?.entities.add({
+ viewer?.entities.removeAll()
+ const entity = viewer?.entities.add({
position: Cesium.Cartesian3.fromDegrees(longitude, latitude),
point: {
pixelSize: 24,
@@ -100,27 +115,47 @@
// duration: 2
// })
}
+
+// 切换为二三维模式
+const switchModel = (type: string) => {
+ switch (type) {
+ case '2D':
+ viewer.scene.camera.setView({
+ orientation: {
+ pitch: Cesium.Math.toRadians(-60),
+ heading: Cesium.Math.toRadians(0),
+ }
+ })
+ dimension.value = 2
+ break
+ case '3D':
+ viewer.scene.camera.setView({
+ orientation: {
+ pitch: Cesium.Math.toRadians(-90),
+ heading: Cesium.Math.toRadians(0),
+ }
+ })
+ dimension.value = 3
+ }
+}
+
// 设置项目中所有的项目中心坐标
-watch(() => store.state.map.pointList, (newVal, oldVal) => {
- if (newVal) {
- pointCenter(viewer.value, newVal)
- clickPoint(viewer.value, newVal)
+watch(() => store.state.map.pointList, (newVal) => {
+ if (newVal && newVal.length > 0) {
+ pointCenter(viewer, newVal)
+ clickPoint(viewer, newVal)
}
}, {
deep: true
})
// 点击地图生成项目中心点
watch(() => store.state.map.centerConfig.type, (newVal) => {
- const handler = new Cesium.ScreenSpaceEventHandler(viewer.value?.scene.canvas)
- console.log(newVal, 'newVal')
- if (newVal === false) {
- viewer.value?.entities.removeAll()
- console.log('===false===')
+ if (newVal === false || !store.state.map.centerConfig.type) {
+ viewer?.entities.removeAll()
handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK)
} else {
- console.log('===true===')
handler.setInputAction(function (e: any) {
- const cartesian = viewer.value?.camera.pickEllipsoid(e.position, viewer.value?.scene.globe.ellipsoid)
+ const cartesian = viewer?.camera.pickEllipsoid(e.position, viewer?.scene.globe.ellipsoid)
if (cartesian) {
const cartographic = Cesium.Cartographic.fromCartesian(cartesian)
const longitude = Cesium.Math.toDegrees(cartographic.longitude)
@@ -130,7 +165,6 @@
latitude,
}
store.commit('SET_CENTER_CONFIG_LATITUDE', data)
- console.log(data, 'data')
Point(longitude, latitude)
}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK
@@ -144,7 +178,7 @@
})
// 销毁地图模型
onUnmounted(() => {
- viewer.value = null
+ viewer = null
})
</script>
@@ -169,4 +203,26 @@
text-align: center;
font-size: 16px;
}
+
+.switch {
+ position: absolute;
+ background-color: #fff;
+ z-index: 30;
+ bottom: 80px;
+ font-size: 14px;
+ right: 20px;
+ cursor: pointer;
+ box-shadow: 0 0 4px 0 rgba(0, 0, 0, .6);
+ width: 28px;
+ height: 28px;
+ color: #4e4e4e;
+ font-weight: 600;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.switch:hover {
+ color: #1180ff;
+}
</style>
diff --git a/src/hooks/use-center-point.ts b/src/hooks/use-center-point.ts
index a068a2a..a1262f3 100644
--- a/src/hooks/use-center-point.ts
+++ b/src/hooks/use-center-point.ts
@@ -35,6 +35,7 @@
const handler = new Cesium.ScreenSpaceEventHandler(viewer.scene.canvas)
handler.setInputAction(function (click: any) {
const pickedObject = viewer.scene.pick(click.position)
+ console.log(pickedObject, 'pickObject')
if (Cesium.defined(pickedObject)) {
const list = longitudeList.filter((v: { id:string, longitude: number; latitude: number; }) => v.id === pickedObject.id.id)
if (pickedObject.id.label) {
@@ -52,5 +53,5 @@
}
}
, Cesium.ScreenSpaceEventType.LEFT_CLICK)
- handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK)
+ // handler.removeInputAction(Cesium.ScreenSpaceEventType.LEFT_CLICK)
}
diff --git a/src/main.ts b/src/main.ts
index cb46d6a..a9a2568 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -6,7 +6,7 @@
import store, { storeKey } from './store'
import { createInstance } from '/@/root'
import '/@/styles/index.scss'
-const app = createInstance(App)
+const app = createInstance(App) // 引入css
app.use(store, storeKey)
app.use(router)
app.use(CommonComponents)
diff --git a/src/mqtt/config.ts b/src/mqtt/config.ts
index 1af7df6..bc8f71d 100644
--- a/src/mqtt/config.ts
+++ b/src/mqtt/config.ts
@@ -1,4 +1,3 @@
-
import {
IClientOptions,
} from 'mqtt'
@@ -9,4 +8,10 @@
resubscribe: true, // 断开重连后,再次订阅原订阅
reconnectPeriod: 10000, // 重连间隔时间: 5s
keepalive: 1, // 心跳间隔时间:1s
+ clientId: 'DroneWeb',
+ // username: 'guest',
+ // password: 'guest',
+ host: '192.168.1.198',
+ protocol: 'ws',
+ port: 8083,
}
diff --git a/src/mqtt/index.ts b/src/mqtt/index.ts
index f6570df..2028edc 100644
--- a/src/mqtt/index.ts
+++ b/src/mqtt/index.ts
@@ -34,10 +34,13 @@
...OPTIONS,
...this._options,
})
+ console.log(this._client, 'client')
this._hasInit = true
if (this._client) {
this._client.on('reconnect', this._onReconnect)
-
+ this._client.on('connect', () => {
+ console.log('connect')
+ })
// 消息监听
this._client.on('message', this._onMessage)
diff --git a/src/pages/page-web/home.vue b/src/pages/page-web/home.vue
index d8f6e82..4a73951 100644
--- a/src/pages/page-web/home.vue
+++ b/src/pages/page-web/home.vue
@@ -41,11 +41,6 @@
}
}
}
-watch(route, newVal => {
- console.log(newVal, 'val')
-}, {
- immediate: true
-})
// 监听ws 消息
useConnectWebSocket(messageHandler)
diff --git a/src/pages/page-web/projects/common/common.ts b/src/pages/page-web/projects/common/common.ts
new file mode 100644
index 0000000..0f07c79
--- /dev/null
+++ b/src/pages/page-web/projects/common/common.ts
@@ -0,0 +1,6 @@
+export const styleDrawer = {
+ height: 'auto',
+ width: '400px',
+ top: '30px',
+ left: '70%'
+}
diff --git a/src/pages/page-web/projects/components/DockConfig.vue b/src/pages/page-web/projects/components/DockConfig.vue
new file mode 100644
index 0000000..8583483
--- /dev/null
+++ b/src/pages/page-web/projects/components/DockConfig.vue
@@ -0,0 +1,282 @@
+<template>
+ <div class="config_dock">
+ <div class="w100 option flex-display">
+ <div class="option-left-icon flex-display">
+ <RobotOutlined :style="{ fontSize: '48px' }" />
+ <div style="margin-top: 10px;">Dock</div>
+ </div>
+ <div class="option-right">
+ <div class="wrapper">
+ <div class="wrapper-item flex-display">
+ <span class="item-left">设备空闲中</span>
+ <span class="item-right dock-status">当前正常</span>
+ </div>
+
+ <div class="wrapper-item flex-display">
+ <div class="item-left">
+ <CloudOutlined />
+ <span>正常</span>
+ </div>
+ <div class="item-right flex-display flex-align-center">
+ <span class="mr20">
+ <ThunderboltOutlined />
+ 34°C
+ </span>
+ <span class="mr20">
+ <FundProjectionScreenOutlined />
+ 436kb/s
+ </span>
+ <span class="mr20">
+ <UploadOutlined />
+ 0
+ </span>
+ </div>
+ </div>
+ </div>
+ <div class="option-btn flex-display flex-justify-between">
+ <div class="btn">
+ <a-button type="primary" @click="videoControl = !videoControl" :class="{ unchecked: !videoControl }"
+ style="width: 100%;">
+ <template #icon>
+ <VideoCameraOutlined />
+ </template>
+ 监控
+ </a-button>
+ </div>
+ <div class="btn">
+ <a-button type="primary" @click="optionControl = !optionControl"
+ :class="{ unchecked: !optionControl }" style="width: 100%;">
+ <template #icon>
+ <ToolOutlined />
+ </template>
+ 操作
+ </a-button>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="video">
+ <!-- <div class="video-option">
+ <a-tooltip title="关闭补光灯"></a-tooltip>
+ </div> -->
+ <video auto src="https://cdn.jsdelivr.net/gh/xdlumia/files/video-play/IronMan.mp4"
+ style="width: 100%;height: 200px;"></video>
+ </div>
+ <div class="w100 option flex-display aerial">
+ <div class="option-left-icon flex-display">
+ <RobotOutlined :style="{ fontSize: '48px' }" />
+ <div style="margin-top: 10px;">Dock</div>
+ </div>
+ <div class="option-right">
+ <div class="wrapper">
+ <div class="wrapper-item flex-display">
+ <span class="item-left">舱内关机</span>
+ <span class="item-right dock-status">N/A</span>
+ </div>
+
+ <div class="wrapper-item flex-display">
+ <span class="w100 text-center f12" style="color: #4e4e4e;">当前设备已关机,无法进行直播</span>
+ <!-- <div class="item-left">
+ <CloudOutlined />
+ <span>正常</span>
+ </div>
+ <div class="item-right flex-display flex-align-center">
+ <span class="mr20">
+ <ThunderboltOutlined />
+ 34°C
+ </span>
+ </div> -->
+ </div>
+ </div>
+ <div class="option-btn flex-display flex-justify-between">
+ <div class="btn" style="width: 100%;">
+ <a-button type="primary" @click="flyControl = !flyControl" :class="{ unchecked: !flyControl }"
+ style="width: 100%;">
+ <template #icon>
+ <BoxPlotOutlined />
+ </template>
+ 飞行控制
+ </a-button>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div class="takeoff flex-display flex-align-center">
+ <div class="takeoff-left mr15 flex-display flex-align-center flex-direction-column">
+ <RobotOutlined :style="{ fontSize: '28px' }" />
+ <div style="margin-top: 10px;">一键起飞</div>
+ </div>
+ <div class="divider"></div>
+ <div class="takeoff-middle"></div>
+ <div class="takeoff-right flex-display flex-justify-center flex-align-center flex-direction-column">
+ <div class="mb5 input-box flex-display flex-align-center">
+ <span class="f10 label mr15">安全离场高(ALT)</span>
+ <a-input size="small" class="input-style" suffix="m" v-model:value="option.safe_height" />
+ </div>
+ <div class="mb5 input-box flex-display flex-align-center">
+ <span class="f10 label mr15">飞行作业高(AGL)</span>
+ <a-input size="small" class="input-style" suffix="m" v-model:value="option.fly_height" />
+ </div>
+ <div class="mb5 input-box flex-display flex-align-center">
+ <span class="f10 label mr15">返航高(ALT)</span>
+ <a-input size="small" class="input-style" suffix="m" v-model:value="option.return_height" />
+ </div>
+ <div class="mb5 select-box flex-display flex-align-center">
+ <span class="f10 label mr15">失联动作</span>
+ <a-select :dropdownMatchSelectWidth="false" class="select-style" :bordered="false" size="small" ref="select"
+ v-model:value="option.lose_connection" style="width: 60px" @change="handleChange">
+ <a-select-option value="1">悬停</a-select-option>
+ <a-select-option value="2">返航</a-select-option>
+ <a-select-option value="3">继续执行</a-select-option>
+ </a-select>
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script setup lang="ts">
+import { VideoCameraOutlined, RobotOutlined, ToolOutlined, CloudOutlined, ThunderboltOutlined, FundProjectionScreenOutlined, UploadOutlined, BoxPlotOutlined } from '@ant-design/icons-vue'
+import Drawer from '/@/components/Drawer/Drawer.vue'
+const videoControl = ref(false)
+const optionControl = ref(false)
+const flyControl = ref(false)
+const option = ref({
+ safe_height: 60,
+ fly_height: 60,
+ return_height: 60,
+ lose_connection: '1',
+})
+const handleChange = (e: string) => {
+ console.log(e, 'eee')
+}
+</script>
+
+<style scoped lang="scss">
+.config_dock {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+
+ :deep(.ant-input-affix-wrapper > input.ant-input) {
+ background: #101010;
+ color: #fff;
+ text-align: center;
+ margin-right: 5px;
+ width: 30px;
+ }
+
+ :deep(.ant-input-affix-wrapper .ant-input-suffix) {
+ color: #fff;
+ }
+
+ .unchecked {
+ color: #fff;
+ background-color: #3c3c3c;
+ border: none;
+ }
+
+ .option {
+ width: 100%;
+ height: 120px;
+ align-items: center;
+
+ .option-left-icon {
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ background-color: #3d3d3d;
+ padding: 10px;
+ }
+
+ .option-right {
+ flex: 1;
+ padding: 5px;
+
+ .wrapper {
+ width: 100%;
+
+ .wrapper-item {
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 10px;
+
+ .item-left {
+ width: 100px;
+ }
+
+ .item-right {
+ flex: 1;
+ }
+
+ .dock-status {
+ background-color: #5d5f61;
+ padding: 0 5px;
+ color: #fff;
+ }
+ }
+ }
+
+ .option-btn {
+ width: 100%;
+
+ .btn {
+ width: 48%;
+ }
+ }
+ }
+ }
+
+ .video {
+ width: 100%;
+ height: 80%;
+ position: relative;
+
+ .video-option {
+ display: flex;
+ align-items: center;
+ justify-content: flex-end;
+ }
+ }
+
+ .takeoff {
+ padding: 5px;
+ height: 100px;
+ width: 100%;
+ margin-bottom: 10px;
+
+ .takeoff-left {
+ background-color: #3d3d3d;
+ padding: 10px;
+ width: 90px;
+ height: 90px;
+ justify-content: center;
+ }
+
+ .input-style {
+ width: 60px;
+ padding: 0;
+ background-color: #101010;
+ border: none;
+ }
+
+ .select-style {
+ background-color: #3c3c3c;
+ padding: 0;
+ color: #fff;
+ font-size: 10px;
+ }
+
+ .label {
+ min-width: 100px;
+ text-align: right;
+ }
+
+ .divider {
+ height: 100%;
+ width: 1.12px;
+ background-color: hsla(0, 0%, 100%, .1);
+ }
+ }
+}</style>
diff --git a/src/pages/page-web/projects/project_list/add_page/add.vue b/src/pages/page-web/projects/project_list/add_page/add.vue
index 910cba2..1bee552 100644
--- a/src/pages/page-web/projects/project_list/add_page/add.vue
+++ b/src/pages/page-web/projects/project_list/add_page/add.vue
@@ -368,36 +368,36 @@
}
.ant-table-project :deep(.project_dark) td {
- background-color: #232323;
- color: #fff;
- border: none;
+ background-color: #232323 !important;
+ color: #fff !important;
+ border: none !important;
border-bottom: 1px solid #4f4f4f;
padding: 10px;
}
.ant-table-project :deep(.ant-table-placeholder) {
- background: #434343;
+ background: #434343 !important;
border: none !important;
}
.ant-table-project :deep(.ant-table-thead) th {
- background: #3c3c3c;
- color: #fff;
- border: 1px solid #4f4f4f;
+ background: #3c3c3c !important;
+ color: #fff !important;
+ border: 1px solid #4f4f4f !important;
padding: 10px;
}
.ant-table-project :deep(.ant-table-body) table {
- border: 1px solid #4f4f4f;
- border-right: 1px solid #4f4f4f;
+ border: 1px solid #4f4f4f !important;
+ border-right: 1px solid #4f4f4f !important;
}
.ant-table-project :deep(.ant-table-body) {
- background: #434343;
+ background: #434343 !important;
}
.ant-table-project :deep(.ant-empty-description) {
- color: #fff;
+ color: #fff !important;
}
}
diff --git a/src/pages/page-web/projects/tsa.vue b/src/pages/page-web/projects/tsa.vue
index 9b16078..ea78241 100644
--- a/src/pages/page-web/projects/tsa.vue
+++ b/src/pages/page-web/projects/tsa.vue
@@ -15,7 +15,7 @@
<a-empty style="color: #fff;" :image="simpleImage" description="暂无数据" :image-style="{ height: '60px' }" />
</div>
<div v-else class="fz12" style="color: white;">
- <div v-for="dock in onlineDocks.data" :key="dock.sn" style="background: #3c3c3c; height: 90px; width: 250px; margin-bottom: 10px;">
+ <div v-for="dock in onlineDocks.data" :key="dock.sn" style="background: #3c3c3c; height: 90px; margin-bottom: 10px;">
<div style="border-radius: 2px; height: 100%; width: 100%;" class="flex-row flex-justify-between flex-align-center">
<div style="float: left; padding: 0px 5px 8px 8px; width: 88%">
<div style="width: 80%; height: 30px; line-height: 30px; font-size: 16px;">
@@ -26,6 +26,7 @@
<div class="mt5 flex-align-center flex-row flex-justify-between" style="background: #595959;">
<div class="flex-align-center flex-row">
<span class="ml5 mr5"><RobotOutlined /></span>
+ 132
<div class="font-bold text-hidden" style="max-width: 80px;" :style="dockInfo[dock.gateway.sn] && dockInfo[dock.gateway.sn].basic_osd?.mode_code !== EDockModeCode.Disconnected ? 'color: #00ee8b' : 'color: red;'">
{{ dockInfo[dock.gateway.sn] ? EDockModeCode[dockInfo[dock.gateway.sn].basic_osd?.mode_code] : EDockModeCode[EDockModeCode.Disconnected] }}
</div>
@@ -142,7 +143,7 @@
<a-empty :image="simpleImage" style="color: #fff;" description="暂无数据" :image-style="{ height: '60px' }" />
</div>
<div v-else class="fz12" style="color: white;">
- <div v-for="device in onlineDevices.data" :key="device.sn" style="background: #3c3c3c; height: 90px; width: 250px; margin-bottom: 10px;">
+ <div v-for="device in onlineDevices.data" :key="device.sn" style="background: #3c3c3c; height: 90px; margin-bottom: 10px;">
<div class="battery-slide" v-if="deviceInfo[device.sn]">
<div style="background: #535759; width: 100%;"></div>
<div class="capacity-percent" :style="{ width: deviceInfo[device.sn].battery.capacity_percent + '%'}"></div>
@@ -186,12 +187,17 @@
</a-collapse-panel>
</a-collapse>
</div>
+ <Drawer title="项目设置" :styleDrawer="styleDrawer" v-model:show="showDrawer">
+ <DockConfig />
+ </Drawer>
</div>
</template>
<script lang="ts" setup>
+import { styleDrawer } from './common/common'
import { computed, onMounted, reactive, ref, watch, WritableComputedRef } from 'vue'
import { EDeviceTypeName, ELocalStorageKey } from '/@/types'
+import Drawer from '/@/components/Drawer/Drawer.vue'
import noData from '/@/assets/icons/no-data.png'
import { Empty } from 'ant-design-vue'
import rc from '/@/assets/icons/rc.png'
@@ -200,6 +206,10 @@
import { getDeviceTopo, getUnreadDeviceHms, updateDeviceHms } from '/@/api/manage'
import { RocketOutlined, EyeInvisibleOutlined, EyeOutlined, RobotOutlined, DoubleRightOutlined } from '@ant-design/icons-vue'
import { EHmsLevel } from '/@/types/enums'
+import { UranusMqtt } from '/@/mqtt/index'
+import DockConfig from './components/DockConfig.vue'
+const { appContext } = getCurrentInstance()
+const global = appContext.config.globalProperties
const simpleImage = Empty.PRESENTED_IMAGE_SIMPLE
const store = useMyStore()
const username = ref(localStorage.getItem(ELocalStorageKey.Username))
@@ -207,7 +217,7 @@
const osdVisible = ref({} as OSDVisible)
const hmsVisible = new Map<string, boolean>()
const scorllHeight = ref()
-
+const showDrawer = ref(false)
const onlineDevices = reactive({
data: [] as OnlineDevice[]
})
@@ -220,8 +230,8 @@
sn: '我是sn字段',
mode: '我是mode字段',
gateway: {
- model: '我是gateway.model字段',
- callsign: '我是gateway.callsign字段',
+ model: 'gateway.model',
+ callsign: 'gateway.callsign',
sn: '我是gateway.sn字段',
mode: '我是gateway.mode字段',
},
@@ -249,6 +259,9 @@
})
onMounted(() => {
+ console.log(global, 'global')
+ // const mqtt = new UranusMqtt('ws://192.168.1.198:8083/mqtt', {})
+ // mqtt.initMqtt()
getOnlineTopo()
setTimeout(() => {
watch(() => store.state.deviceStatusEvent,
@@ -314,23 +327,24 @@
}
function switchVisible (e: any, device: OnlineDevice, isDock: boolean, isClick: boolean) {
- if (!isClick) {
- e.target.style.cursor = 'not-allowed'
- return
- }
- if (device.sn === osdVisible.value.sn) {
- osdVisible.value.visible = !osdVisible.value.visible
- } else {
- osdVisible.value.sn = device.sn
- osdVisible.value.callsign = device.callsign
- osdVisible.value.model = device.model
- osdVisible.value.visible = true
- osdVisible.value.gateway_sn = device.gateway.sn
- osdVisible.value.is_dock = isDock
- osdVisible.value.gateway_callsign = device.gateway.callsign
- osdVisible.value.payloads = device.payload
- }
- store.commit('SET_OSD_VISIBLE_INFO', osdVisible)
+ showDrawer.value = !showDrawer.value
+ // if (!isClick) {
+ // e.target.style.cursor = 'not-allowed'
+ // return
+ // }
+ // if (device.sn === osdVisible.value.sn) {
+ // osdVisible.value.visible = !osdVisible.value.visible
+ // } else {
+ // osdVisible.value.sn = device.sn
+ // osdVisible.value.callsign = device.callsign
+ // osdVisible.value.model = device.model
+ // osdVisible.value.visible = true
+ // osdVisible.value.gateway_sn = device.gateway.sn
+ // osdVisible.value.is_dock = isDock
+ // osdVisible.value.gateway_callsign = device.gateway.callsign
+ // osdVisible.value.payloads = device.payload
+ // }
+ // store.commit('SET_OSD_VISIBLE_INFO', osdVisible)
}
function getUnreadHms (sn: string) {
diff --git a/src/pages/page-web/projects/workspace.vue b/src/pages/page-web/projects/workspace.vue
index a7b1d92..5ad885b 100644
--- a/src/pages/page-web/projects/workspace.vue
+++ b/src/pages/page-web/projects/workspace.vue
@@ -129,8 +129,9 @@
.left {
display: flex;
- width: 335px;
- flex: 0 0 335px;
+ // width: 335px;
+ flex: 1;
+ // flex: 0 0 335px;
background-color: #232323;
.main-content {
diff --git a/src/styles/flex.style.scss b/src/styles/flex.style.scss
index 2a0f3eb..1e4519a 100644
--- a/src/styles/flex.style.scss
+++ b/src/styles/flex.style.scss
@@ -6,6 +6,16 @@
align-items: center;
justify-content: center;
}
+.text-center {
+ text-align: center
+}
+.f12 {
+ font-size: 12px
+}
+
+.f10 {
+ font-size: 10px
+}
// .border-bottom {
// position: relative;
// box-sizing: border-box;
@@ -40,6 +50,9 @@
.flex-align-center {
align-items: center;
+}
+.flex-direction-column {
+ flex-direction: column;
}
.flex-justify-start {
@@ -91,7 +104,9 @@
.height-100 {
height: 100%;
}
-
+.w100 {
+ width: 100%;
+}
//margin
m-5 {
margin: -5px !important;
diff --git a/src/websocket/index.ts b/src/websocket/index.ts
index 8edd25c..cb602c4 100644
--- a/src/websocket/index.ts
+++ b/src/websocket/index.ts
@@ -1,5 +1,7 @@
+
import { message } from 'ant-design-vue'
import ReconnectingWebSocket from 'reconnecting-websocket'
+import { ELocalStorageKey } from '../types'
interface WebSocketOptions {
data: any
@@ -35,14 +37,14 @@
if (!this._url) {
return
}
-
+ const token: string = localStorage.getItem(ELocalStorageKey.Token) || '' as string
// 会自动重连,无需处理重连逻辑
+ console.log(token, 'token')
this._socket = new ReconnectingWebSocket(this._url, [], {
maxReconnectionDelay: 20000, // 断开后最大的重连时间: 20s,每多一次重连,会增加 1.3 倍,5 * 1.3 * 1.3 * 1.3...
minReconnectionDelay: 5000, // 断开后最短的重连时间: 5s
- maxRetries: 5
+ maxRetries: 5,
})
-
this._hasInit = true
this._socket.addEventListener('open', this._onOpen.bind(this))
diff --git a/src/websocket/util/config.ts b/src/websocket/util/config.ts
index 46c8c2e..15fa08a 100644
--- a/src/websocket/util/config.ts
+++ b/src/websocket/util/config.ts
@@ -3,6 +3,7 @@
export function getWebsocketUrl () {
const token: string = localStorage.getItem(ELocalStorageKey.Token) || '' as string
- const url = CURRENT_CONFIG.websocketURL + '?x-auth-token=' + encodeURI(token)
+ const url = CURRENT_CONFIG.websocketURL
+ // const url = CURRENT_CONFIG.websocketURL + '?Authorization=' + encodeURI(token)
return url
}
diff --git a/yarn.lock b/yarn.lock
index 9ebc103..97f3b9b 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1010,6 +1010,11 @@
resolved "https://registry.npm.taobao.org/astral-regex/download/astral-regex-2.0.0.tgz"
integrity sha1-SDFDxWeu7UeFdZwIZXhtx319LjE=
+async-limiter@~1.0.0:
+ version "1.0.1"
+ resolved "https://registry.npmmirror.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd"
+ integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==
+
async-validator@^3.3.0:
version "3.5.2"
resolved "https://registry.npmmirror.com/async-validator/download/async-validator-3.5.2.tgz"
@@ -1052,9 +1057,9 @@
resolved "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbalanced-match%2Fdownload%2Fbalanced-match-1.0.2.tgz"
integrity sha1-6D46fj8wCzTLnYf2FfoMvzV2kO4=
-base64-js@^1.3.1:
+base64-js@^1.3.0, base64-js@^1.3.1:
version "1.5.1"
- resolved "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz"
+ resolved "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
base@^0.11.1:
@@ -1216,6 +1221,14 @@
dependencies:
function-bind "^1.1.1"
get-intrinsic "^1.0.2"
+
+callback-stream@^1.0.2:
+ version "1.1.0"
+ resolved "https://registry.npmmirror.com/callback-stream/-/callback-stream-1.1.0.tgz#4701a51266f06e06eaa71fc17233822d875f4908"
+ integrity sha512-sAZ9kODla+mGACBZ1IpTCAisKoGnv6PykW7fPk1LrM+mMepE18Yz0515yoVcrZy7dQsTUp3uZLQ/9Sx1RnLoHw==
+ dependencies:
+ inherits "^2.0.1"
+ readable-stream "> 1.0.0 < 3.0.0"
callsites@^3.0.0:
version "3.1.0"
@@ -1400,14 +1413,14 @@
resolved "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz"
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
-concat-stream@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmmirror.com/concat-stream/-/concat-stream-2.0.0.tgz"
- integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==
+concat-stream@^1.6.2:
+ version "1.6.2"
+ resolved "https://registry.npmmirror.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34"
+ integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==
dependencies:
buffer-from "^1.0.0"
inherits "^2.0.3"
- readable-stream "^3.0.2"
+ readable-stream "^2.2.2"
typedarray "^0.0.6"
constant-case@^3.0.4:
@@ -1509,6 +1522,14 @@
resolved "https://registry.npmmirror.com/csstype/download/csstype-2.6.19.tgz?cache=0&sync_timestamp=1637224514674&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcsstype%2Fdownload%2Fcsstype-2.6.19.tgz"
integrity sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==
+d@1, d@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.npmmirror.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a"
+ integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==
+ dependencies:
+ es5-ext "^0.10.50"
+ type "^1.0.1"
+
debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9:
version "2.6.9"
resolved "https://registry.npmmirror.com/debug/download/debug-2.6.9.tgz"
@@ -1523,7 +1544,7 @@
dependencies:
ms "^2.1.1"
-debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3:
+debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.2, debug@^4.3.3:
version "4.3.3"
resolved "https://registry.npmmirror.com/debug/download/debug-4.3.3.tgz"
integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
@@ -1688,14 +1709,14 @@
dependencies:
readable-stream "^2.0.2"
-duplexify@^4.1.1:
- version "4.1.2"
- resolved "https://registry.npmmirror.com/duplexify/-/duplexify-4.1.2.tgz"
- integrity sha512-fz3OjcNCHmRP12MJoZMPglx8m4rrFP8rovnk4vT8Fs+aonZoCwGg10dSsQsfP/E62eZcPTMSMP6686fu9Qlqtw==
+duplexify@^3.5.1, duplexify@^3.6.0:
+ version "3.7.1"
+ resolved "https://registry.npmmirror.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309"
+ integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==
dependencies:
- end-of-stream "^1.4.1"
- inherits "^2.0.3"
- readable-stream "^3.1.1"
+ end-of-stream "^1.0.0"
+ inherits "^2.0.1"
+ readable-stream "^2.0.0"
stream-shift "^1.0.0"
earcut@^2.2.4:
@@ -1728,7 +1749,7 @@
resolved "https://registry.npmmirror.com/encodeurl/-/encodeurl-1.0.2.tgz"
integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
-end-of-stream@^1.1.0, end-of-stream@^1.4.1:
+end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1:
version "1.4.4"
resolved "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz"
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
@@ -1791,6 +1812,56 @@
is-callable "^1.1.4"
is-date-object "^1.0.1"
is-symbol "^1.0.2"
+
+es5-ext@^0.10.35, es5-ext@^0.10.50, es5-ext@^0.10.62, es5-ext@~0.10.14:
+ version "0.10.62"
+ resolved "https://registry.npmmirror.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5"
+ integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==
+ dependencies:
+ es6-iterator "^2.0.3"
+ es6-symbol "^3.1.3"
+ next-tick "^1.1.0"
+
+es6-iterator@^2.0.3, es6-iterator@~2.0.1, es6-iterator@~2.0.3:
+ version "2.0.3"
+ resolved "https://registry.npmmirror.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7"
+ integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==
+ dependencies:
+ d "1"
+ es5-ext "^0.10.35"
+ es6-symbol "^3.1.1"
+
+es6-map@^0.1.5:
+ version "0.1.5"
+ resolved "https://registry.npmmirror.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0"
+ integrity sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+ es6-iterator "~2.0.1"
+ es6-set "~0.1.5"
+ es6-symbol "~3.1.1"
+ event-emitter "~0.3.5"
+
+es6-set@~0.1.5:
+ version "0.1.6"
+ resolved "https://registry.npmmirror.com/es6-set/-/es6-set-0.1.6.tgz#5669e3b2aa01d61a50ba79964f733673574983b8"
+ integrity sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==
+ dependencies:
+ d "^1.0.1"
+ es5-ext "^0.10.62"
+ es6-iterator "~2.0.3"
+ es6-symbol "^3.1.3"
+ event-emitter "^0.3.5"
+ type "^2.7.2"
+
+es6-symbol@^3.1.1, es6-symbol@^3.1.3, es6-symbol@~3.1.1:
+ version "3.1.3"
+ resolved "https://registry.npmmirror.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18"
+ integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==
+ dependencies:
+ d "^1.0.1"
+ ext "^1.1.2"
esbuild@^0.18.10:
version "0.18.20"
@@ -2065,6 +2136,14 @@
resolved "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
+event-emitter@^0.3.5, event-emitter@~0.3.5:
+ version "0.3.5"
+ resolved "https://registry.npmmirror.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39"
+ integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==
+ dependencies:
+ d "1"
+ es5-ext "~0.10.14"
+
eventemitter3@^5.0.0:
version "5.0.0"
resolved "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-5.0.0.tgz"
@@ -2083,6 +2162,13 @@
snapdragon "^0.8.1"
to-regex "^3.0.1"
+ext@^1.1.2:
+ version "1.7.0"
+ resolved "https://registry.npmmirror.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f"
+ integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==
+ dependencies:
+ type "^2.7.2"
+
extend-shallow@^2.0.1:
version "2.0.1"
resolved "https://registry.npm.taobao.org/extend-shallow/download/extend-shallow-2.0.1.tgz"
@@ -2097,6 +2183,11 @@
dependencies:
assign-symbols "^1.0.0"
is-extendable "^1.0.1"
+
+extend@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
+ integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
extglob@^2.0.2:
version "2.0.4"
@@ -2292,6 +2383,14 @@
resolved "https://registry.npm.taobao.org/get-value/download/get-value-2.0.6.tgz"
integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=
+glob-parent@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae"
+ integrity sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==
+ dependencies:
+ is-glob "^3.1.0"
+ path-dirname "^1.0.0"
+
glob-parent@^5.1.2, glob-parent@~5.1.2:
version "5.1.2"
resolved "https://registry.npmmirror.com/glob-parent/download/glob-parent-5.1.2.tgz"
@@ -2299,7 +2398,35 @@
dependencies:
is-glob "^4.0.1"
-glob@^7.1.3, glob@^7.1.6:
+glob-stream@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.npmmirror.com/glob-stream/-/glob-stream-6.1.0.tgz#7045c99413b3eb94888d83ab46d0b404cc7bdde4"
+ integrity sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw==
+ dependencies:
+ extend "^3.0.0"
+ glob "^7.1.1"
+ glob-parent "^3.1.0"
+ is-negated-glob "^1.0.0"
+ ordered-read-streams "^1.0.0"
+ pumpify "^1.3.5"
+ readable-stream "^2.1.5"
+ remove-trailing-separator "^1.0.1"
+ to-absolute-glob "^2.0.0"
+ unique-stream "^2.0.2"
+
+glob@^7.1.1:
+ version "7.2.3"
+ resolved "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
+ integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
+ dependencies:
+ fs.realpath "^1.0.0"
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "^3.1.1"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+glob@^7.1.3:
version "7.2.0"
resolved "https://registry.npmmirror.com/glob/download/glob-7.2.0.tgz"
integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
@@ -2435,13 +2562,15 @@
capital-case "^1.0.4"
tslib "^2.0.3"
-help-me@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmmirror.com/help-me/-/help-me-3.0.0.tgz"
- integrity sha512-hx73jClhyk910sidBB7ERlnhMlFsJJIBqSVMFDwPN8o2v9nmp5KgLq1Xz1Bf1fCMMZ6mPrX159iG0VLy/fPMtQ==
+help-me@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.npmmirror.com/help-me/-/help-me-1.1.0.tgz#8f2d508d0600b4a456da2f086556e7e5c056a3c6"
+ integrity sha512-P/IZ8yOMne3SCTHbVY429NZ67B/2bVQlcYGZh2iPPbdLrEQ/qY5aGChn0YTDmt7Sb4IKRI51fypItav+lNl76w==
dependencies:
- glob "^7.1.6"
- readable-stream "^3.6.0"
+ callback-stream "^1.0.2"
+ glob-stream "^6.1.0"
+ through2 "^2.0.1"
+ xtend "^4.0.0"
htmlparser2@^3.8.3:
version "3.10.1"
@@ -2525,6 +2654,14 @@
get-intrinsic "^1.1.0"
has "^1.0.3"
side-channel "^1.0.4"
+
+is-absolute@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.npmmirror.com/is-absolute/-/is-absolute-1.0.0.tgz#395e1ae84b11f26ad1795e73c17378e48a301576"
+ integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==
+ dependencies:
+ is-relative "^1.0.0"
+ is-windows "^1.0.1"
is-accessor-descriptor@^0.1.6:
version "0.1.6"
@@ -2630,15 +2767,22 @@
dependencies:
is-plain-object "^2.0.4"
-is-extglob@^2.1.1:
+is-extglob@^2.1.0, is-extglob@^2.1.1:
version "2.1.1"
- resolved "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz"
- integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
+ resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
+ integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
is-fullwidth-code-point@^3.0.0:
version "3.0.0"
resolved "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz?cache=0&sync_timestamp=1618552489864&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-fullwidth-code-point%2Fdownload%2Fis-fullwidth-code-point-3.0.0.tgz"
integrity sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0=
+
+is-glob@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.npmmirror.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a"
+ integrity sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==
+ dependencies:
+ is-extglob "^2.1.0"
is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
version "4.0.3"
@@ -2646,6 +2790,11 @@
integrity sha1-ZPYeQsu7LuwgcanawLKLoeZdUIQ=
dependencies:
is-extglob "^2.1.1"
+
+is-negated-glob@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.npmmirror.com/is-negated-glob/-/is-negated-glob-1.0.0.tgz#6910bca5da8c95e784b5751b976cf5a10fee36d2"
+ integrity sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==
is-negative-zero@^2.0.1:
version "2.0.2"
@@ -2703,6 +2852,13 @@
call-bind "^1.0.2"
has-tostringtag "^1.0.0"
+is-relative@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.npmmirror.com/is-relative/-/is-relative-1.0.0.tgz#a1bb6935ce8c5dba1e8b9754b9b2dcc020e2260d"
+ integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==
+ dependencies:
+ is-unc-path "^1.0.0"
+
is-shared-array-buffer@^1.0.1:
version "1.0.1"
resolved "https://registry.npmmirror.com/is-shared-array-buffer/download/is-shared-array-buffer-1.0.1.tgz"
@@ -2722,6 +2878,13 @@
dependencies:
has-symbols "^1.0.2"
+is-unc-path@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.npmmirror.com/is-unc-path/-/is-unc-path-1.0.0.tgz#d731e8898ed090a12c352ad2eaed5095ad322c9d"
+ integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==
+ dependencies:
+ unc-path-regex "^0.1.2"
+
is-weakref@^1.0.1:
version "1.0.2"
resolved "https://registry.npmmirror.com/is-weakref/download/is-weakref-1.0.2.tgz"
@@ -2729,10 +2892,10 @@
dependencies:
call-bind "^1.0.2"
-is-windows@^1.0.2:
+is-windows@^1.0.1, is-windows@^1.0.2:
version "1.0.2"
- resolved "https://registry.npm.taobao.org/is-windows/download/is-windows-1.0.2.tgz"
- integrity sha1-0YUOuXkezRjmGCzhKjDzlmNLsZ0=
+ resolved "https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d"
+ integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==
isarray@1.0.0, isarray@~1.0.0:
version "1.0.0"
@@ -2760,11 +2923,6 @@
version "2.6.4"
resolved "https://registry.npmmirror.com/js-base64/download/js-base64-2.6.4.tgz"
integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==
-
-js-sdsl@4.3.0:
- version "4.3.0"
- resolved "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz"
- integrity sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
version "4.0.0"
@@ -3049,6 +3207,13 @@
dependencies:
brace-expansion "^1.1.7"
+minimatch@^3.1.1:
+ version "3.1.2"
+ resolved "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
+ integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
+ dependencies:
+ brace-expansion "^1.1.7"
+
minimatch@^9.0.2:
version "9.0.3"
resolved "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.3.tgz"
@@ -3096,37 +3261,35 @@
resolved "https://registry.npmmirror.com/moment/download/moment-2.29.1.tgz"
integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==
-mqtt-packet@^6.8.0:
+mqtt-packet@^6.0.0:
version "6.10.0"
- resolved "https://registry.npmmirror.com/mqtt-packet/-/mqtt-packet-6.10.0.tgz"
+ resolved "https://registry.npmmirror.com/mqtt-packet/-/mqtt-packet-6.10.0.tgz#c8b507832c4152e3e511c0efa104ae4a64cd418f"
integrity sha512-ja8+mFKIHdB1Tpl6vac+sktqy3gA8t9Mduom1BA75cI+R9AHnZOiaBQwpGiWnaVJLDGRdNhQmFaAqd7tkKSMGA==
dependencies:
bl "^4.0.2"
debug "^4.1.1"
process-nextick-args "^2.0.1"
-mqtt@^4.3.7:
- version "4.3.7"
- resolved "https://registry.npmmirror.com/mqtt/-/mqtt-4.3.7.tgz"
- integrity sha512-ew3qwG/TJRorTz47eW46vZ5oBw5MEYbQZVaEji44j5lAUSQSqIEoul7Kua/BatBW0H0kKQcC9kwUHa1qzaWHSw==
+mqtt@4.0.1:
+ version "4.0.1"
+ resolved "https://registry.npmmirror.com/mqtt/-/mqtt-4.0.1.tgz#8bffa46b2b365a459c0bedd90267645418d0f2a5"
+ integrity sha512-sDvB/wI8e3YSSdIxJ74M81lQTFXxg1uFM5/irpQL+IH9crQiW90R69YOnk7UGj9xCqoXBBRPr8fqnkzQUKRYgg==
dependencies:
+ base64-js "^1.3.0"
commist "^1.0.0"
- concat-stream "^2.0.0"
- debug "^4.1.1"
- duplexify "^4.1.1"
- help-me "^3.0.0"
+ concat-stream "^1.6.2"
+ end-of-stream "^1.4.1"
+ es6-map "^0.1.5"
+ help-me "^1.0.1"
inherits "^2.0.3"
- lru-cache "^6.0.0"
- minimist "^1.2.5"
- mqtt-packet "^6.8.0"
- number-allocator "^1.0.9"
+ minimist "^1.2.0"
+ mqtt-packet "^6.0.0"
pump "^3.0.0"
- readable-stream "^3.6.0"
+ readable-stream "^2.3.6"
reinterval "^1.1.0"
- rfdc "^1.3.0"
split2 "^3.1.0"
- ws "^7.5.5"
- xtend "^4.0.2"
+ websocket-stream "^5.1.2"
+ xtend "^4.0.1"
ms@2.0.0:
version "2.0.0"
@@ -3180,6 +3343,11 @@
resolved "https://registry.nlark.com/natural-compare/download/natural-compare-1.4.0.tgz"
integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
+next-tick@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.npmmirror.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb"
+ integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==
+
no-case@^3.0.4:
version "3.0.4"
resolved "https://registry.npm.taobao.org/no-case/download/no-case-3.0.4.tgz?cache=0&sync_timestamp=1606867308811&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fno-case%2Fdownload%2Fno-case-3.0.4.tgz"
@@ -3209,14 +3377,6 @@
integrity sha1-Lv4WL1w9oGoolZ+9PbddvuqfD8I=
dependencies:
boolbase "^1.0.0"
-
-number-allocator@^1.0.9:
- version "1.0.14"
- resolved "https://registry.npmmirror.com/number-allocator/-/number-allocator-1.0.14.tgz"
- integrity sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==
- dependencies:
- debug "^4.3.1"
- js-sdsl "4.3.0"
object-assign@^4, object-assign@^4.1.0:
version "4.1.1"
@@ -3306,6 +3466,13 @@
type-check "^0.4.0"
word-wrap "^1.2.3"
+ordered-read-streams@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.npmmirror.com/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz#77c0cb37c41525d64166d990ffad7ec6a0e1363e"
+ integrity sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw==
+ dependencies:
+ readable-stream "^2.0.1"
+
p-limit@^1.1.0:
version "1.3.0"
resolved "https://registry.nlark.com/p-limit/download/p-limit-1.3.0.tgz"
@@ -3370,6 +3537,11 @@
dependencies:
dot-case "^3.0.4"
tslib "^2.0.3"
+
+path-dirname@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.npmmirror.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0"
+ integrity sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==
path-exists@^3.0.0:
version "3.0.0"
@@ -3520,6 +3692,14 @@
"@types/node" ">=13.7.0"
long "^5.0.0"
+pump@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.npmmirror.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909"
+ integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==
+ dependencies:
+ end-of-stream "^1.1.0"
+ once "^1.3.1"
+
pump@^3.0.0:
version "3.0.0"
resolved "https://registry.npmmirror.com/pump/-/pump-3.0.0.tgz"
@@ -3527,6 +3707,15 @@
dependencies:
end-of-stream "^1.1.0"
once "^1.3.1"
+
+pumpify@^1.3.5:
+ version "1.5.1"
+ resolved "https://registry.npmmirror.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce"
+ integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==
+ dependencies:
+ duplexify "^3.6.0"
+ inherits "^2.0.3"
+ pump "^2.0.0"
punycode@^2.1.0:
version "2.1.1"
@@ -3573,6 +3762,19 @@
dependencies:
quickselect "^2.0.0"
+"readable-stream@> 1.0.0 < 3.0.0", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6:
+ version "2.3.8"
+ resolved "https://registry.npmmirror.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
+ integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
+ dependencies:
+ core-util-is "~1.0.0"
+ inherits "~2.0.3"
+ isarray "~1.0.0"
+ process-nextick-args "~2.0.0"
+ safe-buffer "~5.1.1"
+ string_decoder "~1.1.1"
+ util-deprecate "~1.0.1"
+
readable-stream@^2.0.2, readable-stream@~2.3.6:
version "2.3.7"
resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz"
@@ -3586,7 +3788,7 @@
string_decoder "~1.1.1"
util-deprecate "~1.0.1"
-readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0:
+readable-stream@^3.0.0, readable-stream@^3.1.1, readable-stream@^3.4.0:
version "3.6.0"
resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz"
integrity sha1-M3u9o63AcGvT4CRCaihtS0sskZg=
@@ -3629,6 +3831,11 @@
version "1.1.0"
resolved "https://registry.npmmirror.com/reinterval/-/reinterval-1.1.0.tgz"
integrity sha512-QIRet3SYrGp0HUHO88jVskiG6seqUGC5iAG7AwI/BV4ypGcuqk9Du6YQBUOUqm9c8pw1eyLoIaONifRua1lsEQ==
+
+remove-trailing-separator@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.npmmirror.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef"
+ integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==
repeat-element@^1.1.2:
version "1.1.4"
@@ -3679,11 +3886,6 @@
resolved "https://registry.npm.taobao.org/reusify/download/reusify-1.0.4.tgz"
integrity sha1-kNo4Kx4SbvwCFG6QhFqI2xKSXXY=
-rfdc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.npmmirror.com/rfdc/-/rfdc-1.3.0.tgz"
- integrity sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==
-
rimraf@2:
version "2.7.1"
resolved "https://registry.npmmirror.com/rimraf/download/rimraf-2.7.1.tgz"
@@ -3729,15 +3931,15 @@
dependencies:
queue-microtask "^1.2.2"
+safe-buffer@^5.1.2, safe-buffer@~5.2.0:
+ version "5.2.1"
+ resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz"
+ integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=
+
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
version "5.1.2"
resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.1.2.tgz"
integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0=
-
-safe-buffer@~5.2.0:
- version "5.2.1"
- resolved "https://registry.nlark.com/safe-buffer/download/safe-buffer-5.2.1.tgz"
- integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=
safe-regex@^1.1.0:
version "1.1.0"
@@ -4162,6 +4364,30 @@
resolved "https://registry.nlark.com/text-table/download/text-table-0.2.0.tgz"
integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
+through2-filter@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.npmmirror.com/through2-filter/-/through2-filter-3.0.0.tgz#700e786df2367c2c88cd8aa5be4cf9c1e7831254"
+ integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==
+ dependencies:
+ through2 "~2.0.0"
+ xtend "~4.0.0"
+
+through2@^2.0.1, through2@~2.0.0:
+ version "2.0.5"
+ resolved "https://registry.npmmirror.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
+ integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==
+ dependencies:
+ readable-stream "~2.3.6"
+ xtend "~4.0.1"
+
+to-absolute-glob@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.npmmirror.com/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz#1865f43d9e74b0822db9f145b78cff7d0f7c849b"
+ integrity sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA==
+ dependencies:
+ is-absolute "^1.0.0"
+ is-negated-glob "^1.0.0"
+
to-fast-properties@^2.0.0:
version "2.0.0"
resolved "https://registry.nlark.com/to-fast-properties/download/to-fast-properties-2.0.0.tgz?cache=0&sync_timestamp=1628418893613&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fto-fast-properties%2Fdownload%2Fto-fast-properties-2.0.0.tgz"
@@ -4265,6 +4491,16 @@
resolved "https://registry.npmmirror.com/type-fest/download/type-fest-0.20.2.tgz"
integrity sha1-G/IH9LKPkVg2ZstfvTJ4hzAc1fQ=
+type@^1.0.1:
+ version "1.2.0"
+ resolved "https://registry.npmmirror.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0"
+ integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==
+
+type@^2.7.2:
+ version "2.7.2"
+ resolved "https://registry.npmmirror.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0"
+ integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==
+
typedarray@^0.0.6:
version "0.0.6"
resolved "https://registry.npmmirror.com/typedarray/-/typedarray-0.0.6.tgz"
@@ -4280,6 +4516,11 @@
resolved "https://registry.npmmirror.com/ufo/-/ufo-1.3.0.tgz"
integrity sha512-bRn3CsoojyNStCZe0BG0Mt4Nr/4KF+rhFlnNXybgqt5pXHNFRlqinSoQaTrGyzE4X8aHplSb+TorH+COin9Yxw==
+ultron@~1.1.0:
+ version "1.1.1"
+ resolved "https://registry.npmmirror.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c"
+ integrity sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==
+
unbox-primitive@^1.0.1:
version "1.0.1"
resolved "https://registry.npm.taobao.org/unbox-primitive/download/unbox-primitive-1.0.1.tgz?cache=0&sync_timestamp=1616706302651&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funbox-primitive%2Fdownload%2Funbox-primitive-1.0.1.tgz"
@@ -4289,6 +4530,11 @@
has-bigints "^1.0.1"
has-symbols "^1.0.2"
which-boxed-primitive "^1.0.2"
+
+unc-path-regex@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.npmmirror.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa"
+ integrity sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==
unimport@^3.0.14:
version "3.2.0"
@@ -4316,6 +4562,14 @@
get-value "^2.0.6"
is-extendable "^0.1.1"
set-value "^2.0.1"
+
+unique-stream@^2.0.2:
+ version "2.3.1"
+ resolved "https://registry.npmmirror.com/unique-stream/-/unique-stream-2.3.1.tgz#c65d110e9a4adf9a6c5948b28053d9a8d04cbeac"
+ integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==
+ dependencies:
+ json-stable-stringify-without-jsonify "^1.0.1"
+ through2-filter "^3.0.0"
universalify@^2.0.0:
version "2.0.0"
@@ -4608,6 +4862,18 @@
resolved "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz"
integrity sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==
+websocket-stream@^5.1.2:
+ version "5.5.2"
+ resolved "https://registry.npmmirror.com/websocket-stream/-/websocket-stream-5.5.2.tgz#49d87083d96839f0648f5513bbddd581f496b8a2"
+ integrity sha512-8z49MKIHbGk3C4HtuHWDtYX8mYej1wWabjthC/RupM9ngeukU4IWoM46dgth1UOS/T4/IqgEdCDJuMe2039OQQ==
+ dependencies:
+ duplexify "^3.5.1"
+ inherits "^2.0.1"
+ readable-stream "^2.3.3"
+ safe-buffer "^5.1.2"
+ ws "^3.2.0"
+ xtend "^4.0.0"
+
which-boxed-primitive@^1.0.2:
version "1.0.2"
resolved "https://registry.npm.taobao.org/which-boxed-primitive/download/which-boxed-primitive-1.0.2.tgz"
@@ -4636,14 +4902,18 @@
resolved "https://registry.nlark.com/wrappy/download/wrappy-1.0.2.tgz?cache=0&sync_timestamp=1619133505879&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fwrappy%2Fdownload%2Fwrappy-1.0.2.tgz"
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
-ws@^7.5.5:
- version "7.5.9"
- resolved "https://registry.npmmirror.com/ws/-/ws-7.5.9.tgz"
- integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==
+ws@^3.2.0:
+ version "3.3.3"
+ resolved "https://registry.npmmirror.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2"
+ integrity sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==
+ dependencies:
+ async-limiter "~1.0.0"
+ safe-buffer "~5.1.0"
+ ultron "~1.1.0"
-xtend@^4.0.2:
+xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1:
version "4.0.2"
- resolved "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz"
+ resolved "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
yallist@^4.0.0:
--
Gitblit v1.9.3