From 1dd7827ff9c42a016a1e45913ce2fd78a79f4983 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Tue, 10 Sep 2024 19:14:41 +0800
Subject: [PATCH] 远程调试相关内容调整,依赖下载
---
package-lock.json | 12
src/views/device/index.vue | 35
src/types/index.js | 1
src/types/airport-tsa.js | 83 +
src/views/device/airport.vue | 38
src/hooks/use-connect-websocket.js | 20
src/views/device/components/DockControlPanel.vue | 261 +++
src/utils/device-cmd.js | 577 +++++++
src/utils/color.js | 8
src/views/device/components/DeviceSettingBox.vue | 425 +++++
src/store/getters.js | 11
src/websocket/util/config.js | 19
src/api/device-cmd/index.js | 9
src/websocket/index.js | 77
src/types/device-cmd.js | 246 +++
src/store/index.js | 20
src/store/modules/device.js | 216 ++
src/types/enums.js | 178 ++
src/views/device/components/DeviceSettingPopover.vue | 110 +
src/utils/constants.js | 14
src/views/device/components/use-dock-control.js | 78
vite.config.mjs | 31
yarn.lock | 2091 ++++++++++++------------
package.json | 4
src/types/device.js | 328 ++++
src/event-bus/index.js | 14
26 files changed, 3,825 insertions(+), 1,081 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 938893b..4ade69b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -20,7 +20,9 @@
"js-base64": "^3.7.4",
"js-cookie": "^3.0.0",
"js-md5": "^0.7.3",
+ "mitt": "^3.0.1",
"nprogress": "^0.2.0",
+ "reconnecting-websocket": "^4.4.0",
"sm-crypto": "^0.3.13",
"vue": "^3.4.27",
"vue-i18n": "^9.1.9",
@@ -2102,6 +2104,11 @@
"min-dash": "^4.0.0"
}
},
+ "node_modules/mitt": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmmirror.com/mitt/-/mitt-3.0.1.tgz",
+ "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw=="
+ },
"node_modules/mlly": {
"version": "1.4.2",
"resolved": "https://registry.npmmirror.com/mlly/-/mlly-1.4.2.tgz",
@@ -2328,6 +2335,11 @@
"node": ">=8.10.0"
}
},
+ "node_modules/reconnecting-websocket": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmmirror.com/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz",
+ "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng=="
+ },
"node_modules/regenerator-runtime": {
"version": "0.14.1",
"resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
diff --git a/package.json b/package.json
index c235bd1..42f3c81 100644
--- a/package.json
+++ b/package.json
@@ -21,7 +21,9 @@
"js-base64": "^3.7.4",
"js-cookie": "^3.0.0",
"js-md5": "^0.7.3",
+ "mitt": "^3.0.1",
"nprogress": "^0.2.0",
+ "reconnecting-websocket": "^4.4.0",
"sm-crypto": "^0.3.13",
"vue": "^3.4.27",
"vue-i18n": "^9.1.9",
@@ -33,8 +35,8 @@
"@vue/compiler-sfc": "^3.4.27",
"prettier": "^2.8.7",
"sass": "^1.77.2",
- "unplugin-auto-import": "^0.11.2",
"terser": "^5.31.1",
+ "unplugin-auto-import": "^0.11.2",
"vite": "^5.2.12",
"vite-plugin-compression": "^0.5.1",
"vite-plugin-vue-setup-extend": "^0.4.0"
diff --git a/src/api/device-cmd/index.js b/src/api/device-cmd/index.js
new file mode 100644
index 0000000..59c7d8e
--- /dev/null
+++ b/src/api/device-cmd/index.js
@@ -0,0 +1,9 @@
+import request from '@/axios';
+
+export const postSendCmd = (params, data) => {
+ return request({
+ url: `/drone-yw/control/api/v1/devices/${params.dock_sn}/jobs/${params.device_cmd}`,
+ method: 'post',
+ data,
+ });
+};
diff --git a/src/event-bus/index.js b/src/event-bus/index.js
new file mode 100644
index 0000000..3b59d14
--- /dev/null
+++ b/src/event-bus/index.js
@@ -0,0 +1,14 @@
+/*
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-10 11:43:39
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-10 11:44:09
+ * @FilePath: \drone-web-manage\src\event-bus\index.js
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+ */
+import mitt from 'mitt';
+
+const emitter = mitt();
+export default emitter;
diff --git a/src/hooks/use-connect-websocket.js b/src/hooks/use-connect-websocket.js
new file mode 100644
index 0000000..0c92ea3
--- /dev/null
+++ b/src/hooks/use-connect-websocket.js
@@ -0,0 +1,20 @@
+import { onMounted, onUnmounted } from "vue"
+import ConnectWebSocket from "@/websocket"
+import { getWebsocketUrl } from "@/websocket/util/config"
+
+/**
+ * 接收一个message函数
+ * @param messageHandler
+ */
+export function useConnectWebSocket(messageHandler, url) {
+ const webSocket = new ConnectWebSocket(url || getWebsocketUrl())
+
+ onMounted(() => {
+ webSocket?.registerMessageHandler(messageHandler)
+ webSocket?.initSocket()
+ })
+
+ onUnmounted(() => {
+ webSocket?.close()
+ })
+}
diff --git a/src/store/getters.js b/src/store/getters.js
index 7b108e0..f72adc7 100644
--- a/src/store/getters.js
+++ b/src/store/getters.js
@@ -1,3 +1,13 @@
+/*
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-09 11:40:40
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-10 11:59:44
+ * @FilePath: \drone-web-manage\src\store\getters.js
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+ */
const getters = {
tag: state => state.tags.tag,
language: state => state.common.language,
@@ -34,5 +44,6 @@
logsLen: state => state.logs.logsList.length || 0,
logsFlag: (state, getters) => getters.logsLen === 0,
flowRoutes: state => state.dict.flowRoutes,
+ devicesCmdExecuteInfo: state => state.device.devicesCmdExecuteInfo,
};
export default getters;
diff --git a/src/store/index.js b/src/store/index.js
index a764d4b..fc8336a 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1,9 +1,20 @@
-import { createStore } from 'vuex';
+/*
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-09 11:40:40
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-10 11:56:26
+ * @FilePath: \drone-web-manage\src\store\index.js
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+ */
+import { createStore, useStore } from 'vuex';
import user from './modules/user';
import common from './modules/common';
import tags from './modules/tags';
import logs from './modules/logs';
import dict from './modules/dict';
+import device from './modules/device';
import getters from './getters';
const store = createStore({
@@ -13,8 +24,15 @@
logs,
tags,
dict,
+ device,
},
getters,
});
export default store;
+
+export const storeKey = Symbol('');
+
+export function useMyStore() {
+ return useStore(storeKey);
+}
diff --git a/src/store/modules/device.js b/src/store/modules/device.js
new file mode 100644
index 0000000..4283398
--- /dev/null
+++ b/src/store/modules/device.js
@@ -0,0 +1,216 @@
+import { EDeviceTypeName } from '@/types';
+
+const initStateFunc = () => ({
+ Layers: [
+ {
+ name: 'default',
+ id: '',
+ is_distributed: true,
+ elements: [],
+ is_check: false,
+ is_select: false,
+ type: 1,
+ },
+ {
+ name: 'share',
+ id: '',
+ is_distributed: true,
+ elements: [],
+ is_check: false,
+ is_select: false,
+ type: 2,
+ },
+ ],
+ layerBaseInfo: {},
+ drawVisible: false,
+ coverList: [],
+ wsEvent: {
+ mapElementCreat: {},
+ mapElementUpdate: {},
+ mapElementDelete: {},
+ },
+ deviceStatusEvent: {
+ deviceOnline: {},
+ deviceOffline: {},
+ },
+ markerInfo: {
+ coverMap: {},
+ pathMap: {},
+ },
+ deviceState: {
+ // remote controller, dock
+ gatewayInfo: {},
+ // drone
+ deviceInfo: {},
+ dockInfo: {},
+ currentSn: '',
+ currentType: -1,
+ },
+ osdVisible: {
+ // osd 显示设备相关信息
+ sn: '',
+
+ callsign: '',
+ model: '',
+ visible: false,
+ gateway_sn: '',
+ is_dock: false,
+ payloads: null,
+ device_domain: '',
+ device_sub_type: '',
+ device_type: '',
+ },
+ waylineInfo: {},
+ dockInfo: {},
+ hmsInfo: {},
+ hmsInfoDetailSn: '',
+ // 机场指令执行状态信息
+ devicesCmdExecuteInfo: {},
+ mqttState: null, // mqtt 实例
+ clientId: '', // mqtt 连接 唯一客户端id,
+ waylineTool: {
+ isShow: false,
+ selectedPoint: undefined,
+ selectedAction: undefined,
+ kmzPath: '',
+ },
+});
+
+const mutations = {
+ SET_LAYER_INFO(state, info) {
+ state.Layers = info;
+ },
+ SET_DEVICE_INFO(state, info) {
+ state.deviceState.deviceInfo[info.sn] = info.host;
+ state.deviceState.currentSn = info.sn;
+ state.deviceState.currentType = EDeviceTypeName.Aircraft;
+ },
+ SET_GATEWAY_INFO(state, info) {
+ state.deviceState.gatewayInfo[info.sn] = info.host;
+ state.deviceState.currentSn = info.sn;
+ state.deviceState.currentType = EDeviceTypeName.Gateway;
+ },
+ SET_DOCK_INFO(state, info) {
+ if (Object.keys(info.host).length === 0) {
+ return;
+ }
+ if (!state.deviceState.dockInfo[info.sn]) {
+ state.deviceState.dockInfo[info.sn] = {};
+ }
+ state.deviceState.currentSn = info.sn;
+ state.deviceState.currentType = EDeviceTypeName.Dock;
+ const dock = state.deviceState.dockInfo[info.sn];
+ if (info.host.mode_code !== undefined) {
+ dock.basic_osd = info.host;
+ return;
+ }
+ if (info.host.sdr) {
+ dock.link_osd = info.host;
+ return;
+ }
+ if (info.host.job_number !== undefined) {
+ dock.work_osd = info.host;
+ }
+ },
+ SET_HMSInfo_DetailSn(state, data) {
+ state.hmsInfoDetailSn = data;
+ },
+ SET_DRAW_VISIBLE_INFO(state, bool) {
+ state.drawVisible = bool;
+ },
+ SET_MAP_ELEMENT_CREATE(state, info) {
+ state.wsEvent.mapElementCreat = info;
+ },
+ SET_MAP_ELEMENT_UPDATE(state, info) {
+ state.wsEvent.mapElementUpdate = info;
+ },
+ SET_MAP_ELEMENT_DELETE(state, info) {
+ state.wsEvent.mapElementDelete = info;
+ },
+ SET_DEVICE_ONLINE(state, info) {
+ state.deviceStatusEvent.deviceOnline = info;
+ },
+ SET_DEVICE_OFFLINE(state, info) {
+ state.deviceStatusEvent.deviceOffline = info;
+ delete state.deviceState.gatewayInfo[info.sn];
+ delete state.deviceState.deviceInfo[info.sn];
+ delete state.deviceState.dockInfo[info.sn];
+ delete state.hmsInfo[info.sn];
+ // delete state.markerInfo.coverMap[info.sn]
+ // delete state.markerInfo.pathMap[info.sn]
+ },
+ SET_OSD_VISIBLE_INFO(state, info) {
+ state.osdVisible = info;
+ },
+ SET_SELECT_WAYLINE_INFO(state, info) {
+ state.waylineInfo = info;
+ },
+ SET_SELECT_DOCK_INFO(state, info) {
+ state.dockInfo = info;
+ },
+ SET_DEVICE_HMS_INFO(state, info) {
+ const hmsList = state.hmsInfo[info.sn];
+ state.hmsInfo[info.sn] = info.host.concat(hmsList ?? []);
+ },
+ SET_DEVICES_CMD_EXECUTE_INFO(state, info) {
+ // 保存设备指令ws消息推送
+ if (!info.sn) {
+ return;
+ }
+ if (state.devicesCmdExecuteInfo[info.sn]) {
+ const index = state.devicesCmdExecuteInfo[info.sn].findIndex(
+ cmdExecuteInfo => cmdExecuteInfo.biz_code === info.biz_code
+ );
+ if (index >= 0) {
+ // 丢弃前面的消息
+ if (state.devicesCmdExecuteInfo[info.sn][index].timestamp > info.timestamp) {
+ return;
+ }
+ state.devicesCmdExecuteInfo[info.sn][index] = info;
+ } else {
+ state.devicesCmdExecuteInfo[info.sn].push(info);
+ }
+ } else {
+ state.devicesCmdExecuteInfo[info.sn] = [info];
+ }
+ },
+ SET_MQTT_STATE(state, mqttState) {
+ state.mqttState = mqttState;
+ },
+ SET_CLIENT_ID(state, clientId) {
+ state.clientId = clientId;
+ },
+ // 设置wayline中的信息
+ SET_WAYLINE_INFO(state, { isShow, selectedPoint, selectedAction }) {
+ isShow !== undefined && (state.waylineTool.isShow = isShow);
+ state.waylineTool.selectedPoint = selectedPoint;
+ selectedAction !== undefined && (state.waylineTool.selectedAction = selectedAction);
+ },
+ SET_WAYLINE_KMZPATH(state, kmzPath) {
+ state.waylineTool.kmzPath = kmzPath;
+ },
+};
+
+const actions = {
+ updateElement({ state }, content) {
+ const key = content.id.replaceAll('resource__', '');
+ const type = content.type;
+ const layers = state.Layers;
+ const layer = layers.find(item => item.id === key);
+ if (layer) {
+ layer[type] = content.bool;
+ }
+ },
+
+ getLayerInfo({ state }, id) {
+ return state.layerBaseInfo[id];
+ },
+};
+
+const device = {
+ state: initStateFunc,
+ mutations,
+ actions,
+};
+
+export default device;
diff --git a/src/types/airport-tsa.js b/src/types/airport-tsa.js
new file mode 100644
index 0000000..fa7fe34
--- /dev/null
+++ b/src/types/airport-tsa.js
@@ -0,0 +1,83 @@
+// 舱盖状态
+export let CoverStateEnum;
+(function (CoverStateEnum) {
+ CoverStateEnum[(CoverStateEnum['Close'] = 0)] = 'Close';
+ CoverStateEnum[(CoverStateEnum['Open'] = 1)] = 'Open';
+ CoverStateEnum[(CoverStateEnum['HalfOpen'] = 2)] = 'HalfOpen';
+ CoverStateEnum[(CoverStateEnum['Failed'] = 3)] = 'Failed';
+})(CoverStateEnum || (CoverStateEnum = {}));
+
+// 推杆状态
+export let PutterStateEnum;
+(function (PutterStateEnum) {
+ PutterStateEnum[(PutterStateEnum['Close'] = 0)] = 'Close';
+ PutterStateEnum[(PutterStateEnum['Open'] = 1)] = 'Open';
+ PutterStateEnum[(PutterStateEnum['HalfOpen'] = 2)] = 'HalfOpen';
+ PutterStateEnum[(PutterStateEnum['Failed'] = 3)] = 'Failed';
+})(PutterStateEnum || (PutterStateEnum = {}));
+
+// 充电状态
+export let ChargeStateEnum;
+(function (ChargeStateEnum) {
+ ChargeStateEnum[(ChargeStateEnum['NotCharge'] = 0)] = 'NotCharge';
+ ChargeStateEnum[(ChargeStateEnum['Charge'] = 1)] = 'Charge';
+})(ChargeStateEnum || (ChargeStateEnum = {}));
+
+// 补光灯状态
+export let SupplementLightStateEnum;
+(function (SupplementLightStateEnum) {
+ SupplementLightStateEnum[(SupplementLightStateEnum['Close'] = 0)] = 'Close';
+ SupplementLightStateEnum[(SupplementLightStateEnum['Open'] = 1)] = 'Open';
+})(SupplementLightStateEnum || (SupplementLightStateEnum = {}));
+
+// 机场声光报警状态
+export let AlarmModeEnum;
+(function (AlarmModeEnum) {
+ AlarmModeEnum[(AlarmModeEnum['CLOSE'] = 0)] = 'CLOSE';
+ AlarmModeEnum[(AlarmModeEnum['OPEN'] = 1)] = 'OPEN';
+})(AlarmModeEnum || (AlarmModeEnum = {}));
+
+// 电池保养
+export let BatteryStoreModeEnum;
+(function (BatteryStoreModeEnum) {
+ BatteryStoreModeEnum[(BatteryStoreModeEnum['BATTERY_PLAN_STORE'] = 1)] = 'BATTERY_PLAN_STORE';
+ BatteryStoreModeEnum[(BatteryStoreModeEnum['BATTERY_EMERGENCY_STORE'] = 2)] =
+ 'BATTERY_EMERGENCY_STORE';
+})(BatteryStoreModeEnum || (BatteryStoreModeEnum = {}));
+
+// 飞行器电池保养
+export let DroneBatteryStateEnum;
+(function (DroneBatteryStateEnum) {
+ DroneBatteryStateEnum[(DroneBatteryStateEnum['NoMaintenanceRequired'] = 0)] =
+ 'NoMaintenanceRequired';
+ DroneBatteryStateEnum[(DroneBatteryStateEnum['MaintenanceRequired'] = 1)] = 'MaintenanceRequired';
+ DroneBatteryStateEnum[(DroneBatteryStateEnum['MaintenanceInProgress'] = 2)] =
+ 'MaintenanceInProgress';
+})(DroneBatteryStateEnum || (DroneBatteryStateEnum = {}));
+
+export let DroneBatteryModeEnum;
+(function (DroneBatteryModeEnum) {
+ DroneBatteryModeEnum[(DroneBatteryModeEnum['CLOSE'] = 0)] = 'CLOSE';
+ DroneBatteryModeEnum[(DroneBatteryModeEnum['OPEN'] = 1)] = 'OPEN';
+})(DroneBatteryModeEnum || (DroneBatteryModeEnum = {}));
+
+// 4g链路连接状态
+export let FourGLinkStateEnum;
+(function (FourGLinkStateEnum) {
+ FourGLinkStateEnum[(FourGLinkStateEnum['CLOSE'] = 0)] = 'CLOSE';
+ FourGLinkStateEnum[(FourGLinkStateEnum['OPEN'] = 1)] = 'OPEN';
+})(FourGLinkStateEnum || (FourGLinkStateEnum = {}));
+
+// Sdr链路连接状态
+export let SdrLinkStateEnum;
+(function (SdrLinkStateEnum) {
+ SdrLinkStateEnum[(SdrLinkStateEnum['CLOSE'] = 0)] = 'CLOSE';
+ SdrLinkStateEnum[(SdrLinkStateEnum['OPEN'] = 1)] = 'OPEN';
+})(SdrLinkStateEnum || (SdrLinkStateEnum = {}));
+
+// 机场的图传链路模式
+export let LinkWorkModeEnum;
+(function (LinkWorkModeEnum) {
+ LinkWorkModeEnum[(LinkWorkModeEnum['SDR'] = 0)] = 'SDR';
+ LinkWorkModeEnum[(LinkWorkModeEnum['FourG_FUSION_MODE'] = 1)] = 'FourG_FUSION_MODE';
+})(LinkWorkModeEnum || (LinkWorkModeEnum = {}));
diff --git a/src/types/device-cmd.js b/src/types/device-cmd.js
new file mode 100644
index 0000000..2e82a64
--- /dev/null
+++ b/src/types/device-cmd.js
@@ -0,0 +1,246 @@
+import {
+ AlarmModeEnum,
+ BatteryStoreModeEnum,
+ DroneBatteryModeEnum,
+ LinkWorkModeEnum,
+} from '@/types/airport-tsa';
+// 机场指令集
+export let DeviceCmd;
+(function (DeviceCmd) {
+ DeviceCmd['DebugModeOpen'] = 'debug_mode_open';
+ DeviceCmd['DebugModeClose'] = 'debug_mode_close';
+ DeviceCmd['SupplementLightOpen'] = 'supplement_light_open';
+ DeviceCmd['SupplementLightClose'] = 'supplement_light_close';
+ DeviceCmd['ReturnHome'] = 'return_home';
+ DeviceCmd['DeviceReboot'] = 'device_reboot';
+ DeviceCmd['DroneOpen'] = 'drone_open';
+ DeviceCmd['DroneClose'] = 'drone_close';
+ DeviceCmd['DeviceFormat'] = 'device_format';
+ DeviceCmd['DroneFormat'] = 'drone_format';
+ DeviceCmd['CoverOpen'] = 'cover_open';
+ DeviceCmd['CoverClose'] = 'cover_close';
+ DeviceCmd['PutterOpen'] = 'putter_open';
+ DeviceCmd['PutterClose'] = 'putter_close';
+ DeviceCmd['ChargeOpen'] = 'charge_open';
+ DeviceCmd['ChargeClose'] = 'charge_close';
+ DeviceCmd['AlarmStateSwitch'] = 'alarm_state_switch';
+ DeviceCmd['BatteryStoreModeSwitch'] = 'battery_store_mode_switch';
+ DeviceCmd['DroneBatteryModeSwitch'] = 'battery_maintenance_switch';
+ DeviceCmd['SdrWorkModeSwitch'] = 'sdr_workmode_switch';
+})(DeviceCmd || (DeviceCmd = {}));
+
+export const noDebugCmdList = [
+ {
+ label: '返航',
+ status: '--',
+ operateText: '返航',
+ cmdKey: DeviceCmd.ReturnHome,
+ func: 'returnHome',
+ loading: false,
+ },
+];
+
+// 机场指令
+export const cmdList = [
+ {
+ // iconName: ,
+ label: '机场系统',
+ status: '工作中',
+ operateText: '重启',
+ cmdKey: DeviceCmd.DeviceReboot,
+ func: 'deviceReboot',
+ loading: false,
+ // btnAnimationIconName: '',
+ // operateTips: '',
+ // statusColor: '',
+ },
+ {
+ label: '飞行器',
+ status: '关机',
+ operateText: '开机',
+ cmdKey: DeviceCmd.DroneOpen,
+ oppositeCmdKey: DeviceCmd.DroneClose,
+ func: 'droneStatus',
+ loading: false,
+ },
+ {
+ label: '舱盖',
+ status: '关',
+ operateText: '开启',
+ cmdKey: DeviceCmd.CoverOpen,
+ oppositeCmdKey: DeviceCmd.CoverClose,
+ func: 'coverStatus',
+ loading: false,
+ },
+ {
+ label: '推杆',
+ status: '闭合',
+ operateText: '展开',
+ cmdKey: DeviceCmd.PutterOpen,
+ oppositeCmdKey: DeviceCmd.PutterClose,
+ func: 'putterStatus',
+ loading: false,
+ },
+ {
+ label: '充电状态',
+ status: '未充电',
+ operateText: '充电',
+ cmdKey: DeviceCmd.ChargeOpen,
+ oppositeCmdKey: DeviceCmd.ChargeClose,
+ func: 'chargeStatus',
+ loading: false,
+ },
+ {
+ label: '机场存储',
+ status: '--',
+ operateText: '格式化',
+ cmdKey: DeviceCmd.DeviceFormat,
+ func: 'deviceFormat',
+ loading: false,
+ },
+ {
+ label: '飞行器存储',
+ status: '--',
+ operateText: '格式化',
+ cmdKey: DeviceCmd.DroneFormat,
+ func: 'droneFormat',
+ loading: false,
+ },
+ {
+ label: '补光灯',
+ status: '关',
+ operateText: '打开',
+ cmdKey: DeviceCmd.SupplementLightOpen,
+ oppositeCmdKey: DeviceCmd.SupplementLightClose,
+ func: 'supplementLightStatus',
+ loading: false,
+ },
+ {
+ label: '机场声光报警',
+ status: '关',
+ operateText: '打开',
+ cmdKey: DeviceCmd.AlarmStateSwitch,
+ action: AlarmModeEnum.OPEN,
+ func: 'alarmState',
+ loading: false,
+ },
+ {
+ label: '机场电池存储模式',
+ status: '计划',
+ operateText: '应急',
+ cmdKey: DeviceCmd.BatteryStoreModeSwitch,
+ action: BatteryStoreModeEnum.BATTERY_EMERGENCY_STORE,
+ func: 'batteryStoreMode',
+ loading: false,
+ },
+ {
+ label: '飞机电池保养',
+ status: '--',
+ operateText: '保养',
+ cmdKey: DeviceCmd.DroneBatteryModeSwitch,
+ action: DroneBatteryModeEnum.OPEN,
+ func: 'droneBatteryMode',
+ loading: false,
+ disabled: true,
+ },
+ {
+ label: '4g 增强',
+ status: '--',
+ operateText: '开启',
+ cmdKey: DeviceCmd.SdrWorkModeSwitch,
+ action: LinkWorkModeEnum.FourG_FUSION_MODE,
+ func: 'sdrWorkMode',
+ loading: false,
+ },
+];
+
+export let DeviceCmdStatusText;
+(function (DeviceCmdStatusText) {
+ DeviceCmdStatusText['DeviceRebootNormalText'] = '工作中';
+ DeviceCmdStatusText['DeviceRebootInProgressText'] = '重启中...';
+ DeviceCmdStatusText['DeviceRebootFailedText'] = '重启失败';
+ DeviceCmdStatusText['DroneStatusOpenNormalText'] = '开';
+ DeviceCmdStatusText['DroneStatusOpenInProgressText'] = '开机中...';
+ DeviceCmdStatusText['DroneStatusOpenFailedText'] = '关';
+ DeviceCmdStatusText['DroneStatusOpenBtnText'] = '关机';
+ DeviceCmdStatusText['DroneStatusCloseNormalText'] = '关';
+ DeviceCmdStatusText['DroneStatusCloseInProgressText'] = '关机中...';
+ DeviceCmdStatusText['DroneStatusCloseFailedText'] = '开';
+ DeviceCmdStatusText['DroneStatusCloseBtnText'] = '开机';
+ DeviceCmdStatusText['DeviceCoverOpenNormalText'] = '开';
+ DeviceCmdStatusText['DeviceCoverOpenInProgressText'] = '开启中...';
+ DeviceCmdStatusText['DeviceCoverOpenFailedText'] = '关';
+ DeviceCmdStatusText['DeviceCoverOpenBtnText'] = '关闭';
+ DeviceCmdStatusText['DeviceCoverCloseNormalText'] = '关';
+ DeviceCmdStatusText['DeviceCoverCloseInProgressText'] = '关闭中...';
+ DeviceCmdStatusText['DeviceCoverCloseFailedText'] = '开';
+ DeviceCmdStatusText['DeviceCoverCloseBtnText'] = '开启';
+ DeviceCmdStatusText['DevicePutterOpenNormalText'] = '展开';
+ DeviceCmdStatusText['DevicePutterOpenBtnText'] = '闭合';
+ DeviceCmdStatusText['DevicePutterOpenInProgressText'] = '推杆展开中';
+ DeviceCmdStatusText['DevicePutterOpenFailedText'] = '闭合';
+ DeviceCmdStatusText['DevicePutterCloseNormalText'] = '闭合';
+ DeviceCmdStatusText['DevicePutterCloseInProgressText'] = '推杆闭合中';
+ DeviceCmdStatusText['DevicePutterCloseFailedText'] = '展开';
+ DeviceCmdStatusText['DevicePutterCloseBtnText'] = '展开';
+ DeviceCmdStatusText['DeviceChargeOpenNormalText'] = '充电';
+ DeviceCmdStatusText['DeviceChargeOpenInProgressText'] = '充电中...';
+ DeviceCmdStatusText['DeviceChargeOpenFailedText'] = '未充电';
+ DeviceCmdStatusText['DeviceChargeOpenBtnText'] = '断电';
+ DeviceCmdStatusText['DeviceChargeCloseNormalText'] = '断电';
+ DeviceCmdStatusText['DeviceChargeCloseInProgressText'] = '断电中...';
+ DeviceCmdStatusText['DeviceChargeCloseFailedText'] = '充电';
+ DeviceCmdStatusText['DeviceChargeCloseBtnText'] = '充电';
+ DeviceCmdStatusText['DeviceFormatInProgressText'] = '格式化...';
+ DeviceCmdStatusText['DeviceFormatFailedText'] = '格式化失败';
+ DeviceCmdStatusText['DroneFormatInProgressText'] = '格式化...';
+ DeviceCmdStatusText['DroneFormatFailedText'] = '格式化失败';
+ DeviceCmdStatusText['DeviceSupplementLightOpenNormalText'] = '开';
+ DeviceCmdStatusText['DeviceSupplementLightOpenInProgressText'] = '开启中...';
+ DeviceCmdStatusText['DeviceSupplementLightOpenFailedText'] = '关';
+ DeviceCmdStatusText['DeviceSupplementLightOpenBtnText'] = '关闭';
+ DeviceCmdStatusText['DeviceSupplementLightCloseNormalText'] = '关';
+ DeviceCmdStatusText['DeviceSupplementLightCloseText'] = '关闭中...';
+ DeviceCmdStatusText['DeviceSupplementLightCloseFailedText'] = '开';
+ DeviceCmdStatusText['DeviceSupplementLightCloseBtnText'] = '打开';
+ DeviceCmdStatusText['AlarmStateOpenNormalText'] = '开';
+ DeviceCmdStatusText['AlarmStateOpenText'] = '开启中...';
+ DeviceCmdStatusText['AlarmStateOpenFailedText'] = '关';
+ DeviceCmdStatusText['AlarmStateOpenBtnText'] = '关闭';
+ DeviceCmdStatusText['AlarmStateCloseNormalText'] = '关';
+ DeviceCmdStatusText['AlarmStateCloseText'] = '关闭中...';
+ DeviceCmdStatusText['AlarmStateCloseFailedText'] = '开';
+ DeviceCmdStatusText['AlarmStateCloseBtnText'] = '打开';
+ DeviceCmdStatusText['BatteryStoreModePlanNormalText'] = '计划';
+ DeviceCmdStatusText['BatteryStoreModePlanText'] = '切换中...';
+ DeviceCmdStatusText['BatteryStoreModePlanFailedText'] = '应急';
+ DeviceCmdStatusText['BatteryStoreModePlanBtnText'] = '应急';
+ DeviceCmdStatusText['BatteryStoreModeEmergencyNormalText'] = '应急';
+ DeviceCmdStatusText['BatteryStoreModeEmergencyText'] = '切换中...';
+ DeviceCmdStatusText['BatteryStoreModeEmergencyFailedText'] = '计划';
+ DeviceCmdStatusText['BatteryStoreModeEmergencyBtnText'] = '计划';
+ DeviceCmdStatusText['DroneBatteryModeMaintenanceInProgressText'] = '保养中';
+ DeviceCmdStatusText['DroneBatteryModeMaintenanceNotNeedText'] = '无需保养';
+ DeviceCmdStatusText['DroneBatteryModeMaintenanceNeedText'] = '需保养';
+ DeviceCmdStatusText['DroneBatteryModeOpenBtnText'] = '保养';
+ DeviceCmdStatusText['DroneBatteryModeCloseBtnText'] = '关闭保养';
+ DeviceCmdStatusText['SdrWorkModeFourGOpenNormalText'] = '开';
+ DeviceCmdStatusText['SdrWorkModeFourGOpenText'] = '开启中...';
+ DeviceCmdStatusText['SdrWorkModeFourGOpenFailedText'] = '--';
+ DeviceCmdStatusText['SdrWorkModeFourGOpenBtnText'] = '关闭';
+ DeviceCmdStatusText['SdrWorkModeFourGCloseNormalText'] = '--';
+ DeviceCmdStatusText['SdrWorkModeFourGCloseText'] = '关闭中...';
+ DeviceCmdStatusText['SdrWorkModeFourGCloseFailedText'] = '开';
+ DeviceCmdStatusText['SdrWorkModeFourCloseBtnText'] = '开启';
+})(DeviceCmdStatusText || (DeviceCmdStatusText = {}));
+
+// cmd ws 消息状态
+export let DeviceCmdExecuteStatus;
+(function (DeviceCmdExecuteStatus) {
+ DeviceCmdExecuteStatus['Sent'] = 'sent';
+ DeviceCmdExecuteStatus['InProgress'] = 'in_progress';
+ DeviceCmdExecuteStatus['OK'] = 'ok';
+ DeviceCmdExecuteStatus['Failed'] = 'failed';
+ DeviceCmdExecuteStatus['Canceled'] = 'canceled';
+ DeviceCmdExecuteStatus['Timeout'] = 'timeout';
+})(DeviceCmdExecuteStatus || (DeviceCmdExecuteStatus = {}));
diff --git a/src/types/device.js b/src/types/device.js
new file mode 100644
index 0000000..68d6227
--- /dev/null
+++ b/src/types/device.js
@@ -0,0 +1,328 @@
+import { commonColor } from "@/utils/color"
+
+// domain
+export let DOMAIN
+
+;(function(DOMAIN) {
+ DOMAIN["DRONE"] = "0"
+ DOMAIN["PAYLOAD"] = "1"
+ DOMAIN["RC"] = "2"
+ DOMAIN["DOCK"] = "3"
+})(DOMAIN || (DOMAIN = {}))
+
+// DJI飞机类型
+export let DRONE_TYPE
+
+;(function(DRONE_TYPE) {
+ DRONE_TYPE[(DRONE_TYPE["M30"] = 67)] = "M30"
+ DRONE_TYPE[(DRONE_TYPE["M300"] = 60)] = "M300"
+ DRONE_TYPE[(DRONE_TYPE["Mavic3EnterpriseAdvanced"] = 77)] =
+ "Mavic3EnterpriseAdvanced"
+ DRONE_TYPE[(DRONE_TYPE["M350"] = 89)] = "M350"
+})(DRONE_TYPE || (DRONE_TYPE = {}))
+
+// DJI负载类型枚举值
+export let PAYLOAD_TYPE
+
+;(function(PAYLOAD_TYPE) {
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["FPV"] = 39)] = "FPV"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["H20"] = 42)] = "H20"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["H20T"] = 43)] = "H20T"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["H20N"] = 61)] = "H20N"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["EP600"] = 50)] = "EP600"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["EP800"] = 90742)] = "EP800"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["M30D"] = 52)] = "M30D"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["M30T"] = 53)] = "M30T"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["XT2"] = 26)] = "XT2"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["XTS"] = 41)] = "XTS"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["Z30"] = 20)] = "Z30"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["DockTopCamera"] = 165)] = "DockTopCamera"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["M3E"] = 66)] = "M3E"
+ PAYLOAD_TYPE[(PAYLOAD_TYPE["M3T"] = 67)] = "M3T"
+})(PAYLOAD_TYPE || (PAYLOAD_TYPE = {}))
+
+// RC type
+export let RC_TYPE
+
+;(function(RC_TYPE) {
+ RC_TYPE[(RC_TYPE["RC"] = 56)] = "RC"
+ RC_TYPE[(RC_TYPE["RCPlus"] = 119)] = "RCPlus"
+ RC_TYPE[(RC_TYPE["RC144"] = 144)] = "RC144"
+})(RC_TYPE || (RC_TYPE = {}))
+
+// DOCK type
+export let DOCK_TYPE
+
+;(function(DOCK_TYPE) {
+ DOCK_TYPE[(DOCK_TYPE["Dock"] = 1)] = "Dock"
+})(DOCK_TYPE || (DOCK_TYPE = {}))
+
+// 设备sub_type 从0升序
+export let DEVICE_SUB_TYPE
+
+;(function(DEVICE_SUB_TYPE) {
+ DEVICE_SUB_TYPE[(DEVICE_SUB_TYPE["ZERO"] = 0)] = "ZERO"
+ DEVICE_SUB_TYPE[(DEVICE_SUB_TYPE["ONE"] = 1)] = "ONE"
+ DEVICE_SUB_TYPE[(DEVICE_SUB_TYPE["TWO"] = 2)] = "TWO"
+ DEVICE_SUB_TYPE[(DEVICE_SUB_TYPE["THREE"] = 3)] = "THREE"
+ DEVICE_SUB_TYPE[(DEVICE_SUB_TYPE["UNKNOWN"] = 65535)] = "UNKNOWN"
+})(DEVICE_SUB_TYPE || (DEVICE_SUB_TYPE = {}))
+
+export const DEVICE_MODEL_KEY = {
+ M30: `${DOMAIN.DRONE}-${DRONE_TYPE.M30}-${DEVICE_SUB_TYPE.ZERO}`,
+ M30T: `${DOMAIN.DRONE}-${DRONE_TYPE.M30}-${DEVICE_SUB_TYPE.ONE}`,
+
+ M3E: `${DOMAIN.DRONE}-${DRONE_TYPE.Mavic3EnterpriseAdvanced}-${DEVICE_SUB_TYPE.ZERO}`,
+ M3T: `${DOMAIN.DRONE}-${DRONE_TYPE.Mavic3EnterpriseAdvanced}-${DEVICE_SUB_TYPE.ONE}`,
+
+ M300: `${DOMAIN.DRONE}-${DRONE_TYPE.M300}-${DEVICE_SUB_TYPE.ZERO}`,
+ M350: `${DOMAIN.DRONE}-${DRONE_TYPE.M350}-${DEVICE_SUB_TYPE.ZERO}`,
+
+ FPV: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.FPV}-${DEVICE_SUB_TYPE.ZERO}`,
+ H20: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.H20}-${DEVICE_SUB_TYPE.ZERO}`,
+ H20T: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.H20T}-${DEVICE_SUB_TYPE.ZERO}`,
+ H20N: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.H20N}-${DEVICE_SUB_TYPE.ZERO}`,
+ EP600: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.EP600}-${DEVICE_SUB_TYPE.UNKNOWN}`,
+ EP800: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.EP800}-${DEVICE_SUB_TYPE.ZERO}`,
+ M30Camera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.M30D}-${DEVICE_SUB_TYPE.ZERO}`,
+ M30TCamera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.M30T}-${DEVICE_SUB_TYPE.ZERO}`,
+
+ M3ECamera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.M3E}-${DEVICE_SUB_TYPE.ZERO}`,
+ M3TCamera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.M3T}-${DEVICE_SUB_TYPE.ZERO}`,
+ // M3MCamera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.M3M}-${DEVICE_SUB_TYPE.ZERO}`,
+
+ XT2: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.XT2}-${DEVICE_SUB_TYPE.ZERO}`,
+ XTS: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.XTS}-${DEVICE_SUB_TYPE.ZERO}`,
+ Z30: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.Z30}-${DEVICE_SUB_TYPE.ZERO}`,
+ DockTopCamera: `${DOMAIN.PAYLOAD}-${PAYLOAD_TYPE.DockTopCamera}-${DEVICE_SUB_TYPE.ZERO}`,
+
+ RC: `${DOMAIN.RC}-${RC_TYPE.RC}-${DEVICE_SUB_TYPE.ZERO}`,
+ RCPlus: `${DOMAIN.RC}-${RC_TYPE.RCPlus}-${DEVICE_SUB_TYPE.ZERO}`,
+
+ Dock: `${DOMAIN.DOCK}-${DOCK_TYPE.Dock}-${DEVICE_SUB_TYPE.ZERO}`
+}
+
+export const DEVICE_NAME = {
+ // drone
+ [DEVICE_MODEL_KEY.M30]: "M30",
+ [DEVICE_MODEL_KEY.M30T]: "M30T",
+ [DEVICE_MODEL_KEY.M3E]: "Mavic 3E",
+ [DEVICE_MODEL_KEY.M3T]: "Mavic 3T",
+ // [DEVICE_MODEL_KEY.M3M]: 'Mavic 3M',
+ [DEVICE_MODEL_KEY.M300]: "M300 RTK",
+ [DEVICE_MODEL_KEY.M350]: "M350 RTK",
+
+ // payload
+ [DEVICE_MODEL_KEY.FPV]: "FPV",
+ [DEVICE_MODEL_KEY.H20]: "H20",
+ [DEVICE_MODEL_KEY.H20T]: "H20T",
+ [DEVICE_MODEL_KEY.H20N]: "H20N",
+ [DEVICE_MODEL_KEY.EP600]: "P1",
+ [DEVICE_MODEL_KEY.EP800]: "L1",
+ [DEVICE_MODEL_KEY.M30Camera]: "M30 Camera",
+ [DEVICE_MODEL_KEY.M30TCamera]: "M30T Camera",
+ [DEVICE_MODEL_KEY.M3ECamera]: "Mavic 3E",
+ [DEVICE_MODEL_KEY.M3TCamera]: "Mavic 3T",
+ // [DEVICE_MODEL_KEY.M3MCamera]: 'Mavic 3M',
+ [DEVICE_MODEL_KEY.XT2]: "XT2",
+ [DEVICE_MODEL_KEY.XTS]: "XTS",
+ [DEVICE_MODEL_KEY.Z30]: "Z30",
+ [DEVICE_MODEL_KEY.DockTopCamera]: "Dock Camera",
+
+ // rc
+ [DEVICE_MODEL_KEY.RC]: "RC",
+ [DEVICE_MODEL_KEY.RCPlus]: "RC Plus",
+
+ // dock
+ [DEVICE_MODEL_KEY.Dock]: "Dock"
+}
+
+// 控制权
+export let ControlSource
+
+;(function(ControlSource) {
+ ControlSource["A"] = "A"
+ ControlSource["B"] = "B"
+})(ControlSource || (ControlSource = {}))
+
+// 固件升级类型
+export let DeviceFirmwareTypeEnum
+
+;(function(DeviceFirmwareTypeEnum) {
+ DeviceFirmwareTypeEnum[(DeviceFirmwareTypeEnum["ToUpgraded"] = 3)] =
+ "ToUpgraded"
+ DeviceFirmwareTypeEnum[(DeviceFirmwareTypeEnum["ConsistencyUpgrade"] = 2)] =
+ "ConsistencyUpgrade"
+})(DeviceFirmwareTypeEnum || (DeviceFirmwareTypeEnum = {}))
+
+// 固件升级状态
+export let DeviceFirmwareStatusEnum
+
+;(function(DeviceFirmwareStatusEnum) {
+ DeviceFirmwareStatusEnum[(DeviceFirmwareStatusEnum["None"] = 1)] = "None"
+ DeviceFirmwareStatusEnum[(DeviceFirmwareStatusEnum["ToUpgraded"] = 2)] =
+ "ToUpgraded"
+ DeviceFirmwareStatusEnum[
+ (DeviceFirmwareStatusEnum["ConsistencyUpgrade"] = 3)
+ ] = "ConsistencyUpgrade"
+ DeviceFirmwareStatusEnum[(DeviceFirmwareStatusEnum["DuringUpgrade"] = 4)] =
+ "DuringUpgrade"
+})(DeviceFirmwareStatusEnum || (DeviceFirmwareStatusEnum = {}))
+
+export const DeviceFirmwareStatus = {
+ [DeviceFirmwareStatusEnum.None]: "",
+ [DeviceFirmwareStatusEnum.ToUpgraded]: "待升级",
+ [DeviceFirmwareStatusEnum.ConsistencyUpgrade]: "一致性升级",
+ [DeviceFirmwareStatusEnum.DuringUpgrade]: "升级中"
+}
+
+export const DeviceFirmwareStatusColor = {
+ [DeviceFirmwareStatusEnum.None]: commonColor.WHITE,
+ [DeviceFirmwareStatusEnum.ToUpgraded]: commonColor.BLUE,
+ [DeviceFirmwareStatusEnum.ConsistencyUpgrade]: commonColor.WARN,
+ [DeviceFirmwareStatusEnum.DuringUpgrade]: commonColor.NORMAL
+}
+
+export let NetworkStateTypeEnum
+
+;(function(NetworkStateTypeEnum) {
+ NetworkStateTypeEnum[(NetworkStateTypeEnum["FOUR_G"] = 1)] = "FOUR_G"
+ NetworkStateTypeEnum[(NetworkStateTypeEnum["ETHERNET"] = 2)] = "ETHERNET"
+})(NetworkStateTypeEnum || (NetworkStateTypeEnum = {}))
+
+export let NetworkStateQualityEnum
+
+;(function(NetworkStateQualityEnum) {
+ NetworkStateQualityEnum[(NetworkStateQualityEnum["BAD"] = 0)] = "BAD"
+ NetworkStateQualityEnum[(NetworkStateQualityEnum["MEDIUM"] = 1)] = "MEDIUM"
+ NetworkStateQualityEnum[(NetworkStateQualityEnum["GOOD"] = 2)] = "GOOD"
+})(NetworkStateQualityEnum || (NetworkStateQualityEnum = {}))
+
+export let RainfallEnum
+
+;(function(RainfallEnum) {
+ RainfallEnum[(RainfallEnum["正常"] = 0)] = "正常"
+ RainfallEnum[(RainfallEnum["小雨"] = 1)] = "小雨"
+ RainfallEnum[(RainfallEnum["中雨"] = 2)] = "中雨"
+ RainfallEnum[(RainfallEnum["大雨"] = 3)] = "大雨"
+})(RainfallEnum || (RainfallEnum = {}))
+
+export let DroneInDockEnum
+
+;(function(DroneInDockEnum) {
+ DroneInDockEnum[(DroneInDockEnum["舱外"] = 0)] = "舱外"
+ DroneInDockEnum[(DroneInDockEnum["舱内"] = 1)] = "舱内"
+})(DroneInDockEnum || (DroneInDockEnum = {}))
+
+export let DrcStateEnum
+
+;(function(DrcStateEnum) {
+ DrcStateEnum[(DrcStateEnum["DISCONNECT"] = 0)] = "DISCONNECT"
+ DrcStateEnum[(DrcStateEnum["CONNECTING"] = 1)] = "CONNECTING"
+ DrcStateEnum[(DrcStateEnum["CONNECTED"] = 2)] = "CONNECTED"
+})(DrcStateEnum || (DrcStateEnum = {}))
+
+export let EModeText
+
+;(function(EModeText) {
+ EModeText[(EModeText["待机"] = 0)] = "待机"
+ EModeText[(EModeText["起飞准备"] = 1)] = "起飞准备"
+ EModeText[(EModeText["起飞准备完毕"] = 2)] = "起飞准备完毕"
+ EModeText[(EModeText["手动飞行"] = 3)] = "手动飞行"
+ EModeText[(EModeText["自动起飞"] = 4)] = "自动起飞"
+ EModeText[(EModeText["航线飞行"] = 5)] = "航线飞行"
+ EModeText[(EModeText["全景拍照"] = 6)] = "全景拍照"
+ EModeText[(EModeText["智能跟随"] = 7)] = "智能跟随"
+ EModeText[(EModeText["ADS-B躲避"] = 8)] = "ADS-B躲避"
+ EModeText[(EModeText["自动返航"] = 9)] = "自动返航"
+ EModeText[(EModeText["自动降落"] = 10)] = "自动降落"
+ EModeText[(EModeText["强制降落"] = 11)] = "强制降落"
+ EModeText[(EModeText["三桨叶降落"] = 12)] = "三桨叶降落"
+ EModeText[(EModeText["升级中"] = 13)] = "升级中"
+ EModeText[(EModeText["未连接"] = 14)] = "未连接"
+ EModeText[(EModeText["APAS"] = 15)] = "APAS"
+ EModeText[(EModeText["虚拟摇杆状态"] = 16)] = "虚拟摇杆状态"
+ EModeText[(EModeText["指令飞行"] = 17)] = "指令飞行"
+})(EModeText || (EModeText = {}))
+
+export let EModeCode
+
+;(function(EModeCode) {
+ EModeCode[(EModeCode["Standby"] = 0)] = "Standby"
+ EModeCode[(EModeCode["Preparing"] = 1)] = "Preparing"
+ EModeCode[(EModeCode["Ready"] = 2)] = "Ready"
+ EModeCode[(EModeCode["Manual"] = 3)] = "Manual"
+ EModeCode[(EModeCode["Automatic"] = 4)] = "Automatic"
+ EModeCode[(EModeCode["Waypoint"] = 5)] = "Waypoint"
+ EModeCode[(EModeCode["Panoramic"] = 6)] = "Panoramic"
+ EModeCode[(EModeCode["Active_Track"] = 7)] = "Active_Track"
+ EModeCode[(EModeCode["ADS_B"] = 8)] = "ADS_B"
+ EModeCode[(EModeCode["Return_To_Home"] = 9)] = "Return_To_Home"
+ EModeCode[(EModeCode["Landing"] = 10)] = "Landing"
+ EModeCode[(EModeCode["Forced_Landing"] = 11)] = "Forced_Landing"
+ EModeCode[(EModeCode["Three_Blades_Landing"] = 12)] = "Three_Blades_Landing"
+ EModeCode[(EModeCode["Upgrading"] = 13)] = "Upgrading"
+ EModeCode[(EModeCode["Disconnected"] = 14)] = "Disconnected"
+})(EModeCode || (EModeCode = {}))
+
+export let EGear
+
+;(function(EGear) {
+ EGear[(EGear["A"] = 0)] = "A"
+ EGear[(EGear["P"] = 1)] = "P"
+ EGear[(EGear["NAV"] = 2)] = "NAV"
+ EGear[(EGear["FPV"] = 3)] = "FPV"
+ EGear[(EGear["FARM"] = 4)] = "FARM"
+ EGear[(EGear["S"] = 5)] = "S"
+ EGear[(EGear["F"] = 6)] = "F"
+ EGear[(EGear["M"] = 7)] = "M"
+ EGear[(EGear["G"] = 8)] = "G"
+ EGear[(EGear["T"] = 9)] = "T"
+})(EGear || (EGear = {}))
+
+export let EDeviceType
+
+;(function(EDeviceType) {
+ EDeviceType[(EDeviceType["M30"] = "0-67-0")] = "M30"
+ EDeviceType[(EDeviceType["M30T"] = "0-67-1")] = "M30T"
+ EDeviceType[(EDeviceType["M300"] = "0-60-0")] = "M300"
+ EDeviceType[(EDeviceType["M350"] = DEVICE_MODEL_KEY.M350)] = "M350"
+ EDeviceType[(EDeviceType["Z30"] = "1-20-0")] = "Z30"
+ EDeviceType[(EDeviceType["XT2"] = "1-26-0")] = "XT2"
+ EDeviceType[(EDeviceType["FPV"] = "1-39-0")] = "FPV"
+ EDeviceType[(EDeviceType["XTS"] = "1-41-0")] = "XTS"
+ EDeviceType[(EDeviceType["H20"] = "1-42-0")] = "H20"
+ EDeviceType[(EDeviceType["H20T"] = "1-43-0")] = "H20T"
+ EDeviceType[(EDeviceType["P1"] = "1-50-65535")] = "P1"
+ EDeviceType[(EDeviceType["M30_Camera"] = "1-52-0")] = "M30_Camera"
+ EDeviceType[(EDeviceType["M30T_Camera"] = "1-53-0")] = "M30T_Camera"
+ EDeviceType[(EDeviceType["H20N"] = "1-61-0")] = "H20N"
+ EDeviceType[(EDeviceType["DJI_Dock_Camera"] = "1-165-0")] = "DJI_Dock_Camera"
+ EDeviceType[(EDeviceType["L1"] = "1-90742-0")] = "L1"
+ EDeviceType[(EDeviceType["M3E"] = "0-77-0")] = "M3E"
+ EDeviceType[(EDeviceType["M3D"] = "0-77-1")] = "M3D"
+ EDeviceType[(EDeviceType["M3E_Camera"] = "1-66-0")] = "M3E_Camera"
+ EDeviceType[(EDeviceType["M3T_Camera"] = "1-67-0")] = "M3T_Camera"
+})(EDeviceType || (EDeviceType = {}))
+
+export let EDockModeText
+
+;(function(EDockModeText) {
+ EDockModeText[(EDockModeText["已断开连接"] = -1)] = "已断开连接"
+ EDockModeText[(EDockModeText["设备空闲中"] = 0)] = "设备空闲中"
+ EDockModeText[(EDockModeText["现场调试"] = 1)] = "现场调试"
+ EDockModeText[(EDockModeText["远程调试"] = 2)] = "远程调试"
+ EDockModeText[(EDockModeText["固件升级中"] = 3)] = "固件升级中"
+ EDockModeText[(EDockModeText["设备工作中"] = 4)] = "设备工作中"
+})(EDockModeText || (EDockModeText = {}))
+
+export let EDockModeCode
+
+;(function(EDockModeCode) {
+ EDockModeCode[(EDockModeCode["Disconnected"] = -1)] = "Disconnected"
+ EDockModeCode[(EDockModeCode["Idle"] = 0)] = "Idle"
+ EDockModeCode[(EDockModeCode["Debugging"] = 1)] = "Debugging"
+ EDockModeCode[(EDockModeCode["Remote_Debugging"] = 2)] = "Remote_Debugging"
+ EDockModeCode[(EDockModeCode["Upgrading"] = 3)] = "Upgrading"
+ EDockModeCode[(EDockModeCode["Working"] = 4)] = "Working"
+})(EDockModeCode || (EDockModeCode = {}))
diff --git a/src/types/enums.js b/src/types/enums.js
new file mode 100644
index 0000000..e6d51a8
--- /dev/null
+++ b/src/types/enums.js
@@ -0,0 +1,178 @@
+export let ERouterName;
+(function (ERouterName) {
+ ERouterName['ELEMENT'] = 'element';
+ ERouterName['LOGIN'] = 'login';
+ ERouterName['PROJECT'] = 'project';
+ ERouterName['ADD_PROJECT'] = 'add_project';
+ ERouterName['EDIT_PROJECT'] = 'edit_project';
+ ERouterName['PROJECT_LIST'] = 'project_list';
+ ERouterName['HOME'] = 'home';
+ ERouterName['TSA'] = 'tsa';
+ ERouterName['LAYER'] = 'layer';
+ ERouterName['MEDIA'] = 'media';
+ ERouterName['WAYLINE'] = 'wayline';
+ ERouterName['LIVESTREAM'] = 'livestream';
+ ERouterName['LIVING'] = 'living';
+ ERouterName['WORKSPACE'] = 'workspace';
+ ERouterName['MEMBERS'] = 'members';
+ ERouterName['DEVICES'] = 'devices';
+ ERouterName['TASK'] = 'task';
+ ERouterName['CREATE_PLAN'] = 'create-plan';
+ ERouterName['SELECT_PLAN'] = 'select-plan';
+ ERouterName['FIRMWARES'] = 'firmwares';
+ ERouterName['PILOT'] = 'pilot-login';
+ ERouterName['PILOT_HOME'] = 'pilot-home';
+ ERouterName['PILOT_MEDIA'] = 'pilot-media';
+ ERouterName['PILOT_LIVESHARE'] = 'pilot-liveshare';
+ ERouterName['PILOT_BIND'] = 'pilot-bind';
+ ERouterName['IMPLEMENT'] = 'implement';
+ ERouterName['ROUTE_HISTORY'] = 'route-history';
+})(ERouterName || (ERouterName = {}));
+
+export let EStorageKey;
+(function (EStorageKey) {
+ EStorageKey['LANG_CODE'] = 'DJI_CREATE_VITE_H5_APP:lang_code';
+ EStorageKey['TEST_TOOLS_POSITION_STORAGE_KEY'] = 'DJI_CREATE_VITE_H5_APP:test_tools_position';
+ EStorageKey['SESSION_ID'] = 'DJI_CREATE_VITE_H5_APP:sess';
+})(EStorageKey || (EStorageKey = {}));
+
+export let EStatusValue;
+(function (EStatusValue) {
+ EStatusValue['CONNECTED'] = 'Connected';
+ EStatusValue['DISCONNECT'] = 'Disconnect';
+ EStatusValue['LIVING'] = 'Living';
+})(EStatusValue || (EStatusValue = {}));
+
+export let ELiveStatusValue;
+(function (ELiveStatusValue) {
+ ELiveStatusValue[(ELiveStatusValue['DISCONNECT'] = 0)] = 'DISCONNECT';
+ ELiveStatusValue[(ELiveStatusValue['CONNECTED'] = 1)] = 'CONNECTED';
+ ELiveStatusValue[(ELiveStatusValue['LIVING'] = 2)] = 'LIVING';
+})(ELiveStatusValue || (ELiveStatusValue = {}));
+
+export let EComponentName;
+(function (EComponentName) {
+ EComponentName['Thing'] = 'thing';
+ EComponentName['Liveshare'] = 'liveshare';
+ EComponentName['Api'] = 'api';
+ EComponentName['Ws'] = 'ws';
+ EComponentName['Map'] = 'map';
+ EComponentName['Tsa'] = 'tsa';
+ EComponentName['Media'] = 'media';
+ EComponentName['Mission'] = 'mission';
+})(EComponentName || (EComponentName = {}));
+
+export let ELocalStorageKey;
+(function (ELocalStorageKey) {
+ ELocalStorageKey['Username'] = 'username';
+ ELocalStorageKey['WorkspaceId'] = 'workspace_id';
+ ELocalStorageKey['Token'] = 'x-auth-token';
+ ELocalStorageKey['PlatformName'] = 'platform_name';
+ ELocalStorageKey['WorkspaceName'] = 'workspace_name';
+ ELocalStorageKey['WorkspaceDesc'] = 'workspace_desc';
+ ELocalStorageKey['Flag'] = 'flag';
+ ELocalStorageKey['UserId'] = 'user_id';
+ ELocalStorageKey['Device'] = 'device';
+ ELocalStorageKey['GatewayOnline'] = 'gateway_online';
+ ELocalStorageKey['UserInfo'] = 'user_info';
+})(ELocalStorageKey || (ELocalStorageKey = {}));
+
+export let EPhotoType;
+(function (EPhotoType) {
+ EPhotoType[(EPhotoType['Original'] = 0)] = 'Original';
+ EPhotoType[(EPhotoType['Preview'] = 1)] = 'Preview';
+ EPhotoType[(EPhotoType['Unknown'] = -1)] = 'Unknown';
+})(EPhotoType || (EPhotoType = {}));
+
+export let EDownloadOwner;
+(function (EDownloadOwner) {
+ EDownloadOwner[(EDownloadOwner['Mine'] = 0)] = 'Mine';
+ EDownloadOwner[(EDownloadOwner['Others'] = 1)] = 'Others';
+ EDownloadOwner[(EDownloadOwner['Unknown'] = -1)] = 'Unknown';
+})(EDownloadOwner || (EDownloadOwner = {}));
+
+export let EUserType;
+(function (EUserType) {
+ EUserType[(EUserType['Web'] = 1)] = 'Web';
+ EUserType[(EUserType['Pilot'] = 2)] = 'Pilot';
+})(EUserType || (EUserType = {}));
+
+export let EBizCode;
+(function (EBizCode) {
+ EBizCode['GatewayOsd'] = 'gateway_osd';
+ EBizCode['DeviceOsd'] = 'device_osd';
+ EBizCode['DockOsd'] = 'dock_osd';
+ EBizCode['MapElementCreate'] = 'map_element_create';
+ EBizCode['MapElementUpdate'] = 'map_element_update';
+ EBizCode['MapElementDelete'] = 'map_element_delete';
+ EBizCode['DeviceOnline'] = 'device_online';
+ EBizCode['DeviceOffline'] = 'device_offline';
+ EBizCode['DeviceHms'] = 'device_hms';
+ EBizCode['FlightTaskProgress'] = 'flighttask_progress';
+ EBizCode['FlightTaskMediaProgress'] = 'file_upload_callback';
+ EBizCode['FlightTaskMediaHighestPriority'] = 'highest_priority_upload_flighttask_media';
+ EBizCode['DeviceReboot'] = 'device_reboot';
+ EBizCode['DroneOpen'] = 'drone_open';
+ EBizCode['DroneClose'] = 'drone_close';
+ EBizCode['DeviceFormat'] = 'device_format';
+ EBizCode['DroneFormat'] = 'drone_format';
+ EBizCode['CoverOpen'] = 'cover_open';
+ EBizCode['CoverClose'] = 'cover_close';
+ EBizCode['PutterOpen'] = 'putter_open';
+ EBizCode['PutterClose'] = 'putter_close';
+ EBizCode['ChargeOpen'] = 'charge_open';
+ EBizCode['ChargeClose'] = 'charge_close';
+ EBizCode['DeviceUpgrade'] = 'ota_progress';
+ EBizCode['DeviceLogUploadProgress'] = 'fileupload_progress';
+ EBizCode['ControlSourceChange'] = 'control_source_change';
+ EBizCode['FlyToPointProgress'] = 'fly_to_point_progress';
+ EBizCode['TakeoffToPointProgress'] = 'takeoff_to_point_progress';
+ EBizCode['JoystickInvalidNotify'] = 'joystick_invalid_notify';
+ EBizCode['DrcStatusNotify'] = 'drc_status_notify';
+})(EBizCode || (EBizCode = {}));
+
+export const EBizCodeMessage = {
+ [EBizCode.DeviceOnline]: '设备在线',
+ [EBizCode.DeviceOffline]: '设备离线',
+
+ [EBizCode.DeviceOsd]: '设备osd',
+ [EBizCode.GatewayOsd]: '网关osd',
+ [EBizCode.DockOsd]: '机场osd',
+
+ [EBizCode.MapElementCreate]: '地图元素创建',
+ [EBizCode.MapElementUpdate]: '地图元素更新',
+ [EBizCode.MapElementDelete]: '地图元素删除',
+
+ [EBizCode.FlightTaskProgress]: '机场任务执行进度',
+
+ [EBizCode.DeviceHms]: '设备hms',
+ [EBizCode.DeviceReboot]: '设备重启',
+ [EBizCode.DroneOpen]: '机场打开',
+ [EBizCode.DroneClose]: '机场关闭',
+
+ [EBizCode.PutterOpen]: '推杆展开',
+ [EBizCode.PutterClose]: '推杆闭合',
+
+ [EBizCode.ChargeOpen]: '打开充电',
+ [EBizCode.ChargeClose]: '关闭充电',
+
+ [EBizCode.ControlSourceChange]: '控制权更新',
+ [EBizCode.FlyToPointProgress]: '飞向目标点',
+ [EBizCode.TakeoffToPointProgress]: '一键起飞',
+ [EBizCode.DrcStatusNotify]: '飞行控制模式状态',
+ [EBizCode.JoystickInvalidNotify]: '设备端退出drc模式',
+};
+
+export let EDeviceTypeName;
+(function (EDeviceTypeName) {
+ EDeviceTypeName[(EDeviceTypeName['Aircraft'] = 0)] = 'Aircraft';
+ EDeviceTypeName[(EDeviceTypeName['Gateway'] = 2)] = 'Gateway';
+ EDeviceTypeName[(EDeviceTypeName['Dock'] = 3)] = 'Dock';
+})(EDeviceTypeName || (EDeviceTypeName = {}));
+
+export let EHmsLevel;
+(function (EHmsLevel) {
+ EHmsLevel[(EHmsLevel['NOTICE'] = 0)] = 'NOTICE';
+ EHmsLevel[(EHmsLevel['CAUTION'] = 1)] = 'CAUTION';
+ EHmsLevel[(EHmsLevel['WARN'] = 2)] = 'WARN';
+})(EHmsLevel || (EHmsLevel = {}));
diff --git a/src/types/index.js b/src/types/index.js
new file mode 100644
index 0000000..1f9b76e
--- /dev/null
+++ b/src/types/index.js
@@ -0,0 +1 @@
+export * from './enums'
diff --git a/src/utils/color.js b/src/utils/color.js
new file mode 100644
index 0000000..24658cd
--- /dev/null
+++ b/src/utils/color.js
@@ -0,0 +1,8 @@
+export const commonColor = {
+ WARN: '#FF9900', // 黄色
+ FAIL: '#E02020', // 红色
+ WHITE: '#FFFFFF', // 白色
+ NORMAL: '#19BE6B', // 绿色
+ BLUE: '#2B85E4', // 蓝色
+ PINK: '#F7C0BA', // 粉
+};
diff --git a/src/utils/constants.js b/src/utils/constants.js
new file mode 100644
index 0000000..5983f79
--- /dev/null
+++ b/src/utils/constants.js
@@ -0,0 +1,14 @@
+export const DEFAULT_PLACEHOLDER = '--'; // 默认占位符
+
+// 全局日期格式
+export const DATE_FORMAT = 'YYYY-MM-DD HH:mm:ss';
+export const DATE_FORMAT_MINUTE = 'YYYY-MM-DD HH:mm';
+export const DATE_FORMAT_DAY = 'YYYY-MM-DD';
+export const TIME_FORMAT = 'HH:mm:ss';
+export const TIME_FORMAT_MINUTE = 'HH:mm';
+export const DATE_FORMAT_MM = 'MM-DD HH:mm';
+
+export const SIZES = ['B', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'];
+export const BYTE_SIZES = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
+export const PAGE_SIZE_OPTIONS = ['20', '50', '100'];
+export const PAGE_SIZE = 50;
diff --git a/src/utils/device-cmd.js b/src/utils/device-cmd.js
new file mode 100644
index 0000000..01043cd
--- /dev/null
+++ b/src/utils/device-cmd.js
@@ -0,0 +1,577 @@
+import { DeviceCmd, DeviceCmdStatusText } from '@/types/device-cmd';
+import {
+ CoverStateEnum,
+ PutterStateEnum,
+ SupplementLightStateEnum,
+ AlarmModeEnum,
+ BatteryStoreModeEnum,
+ DroneBatteryStateEnum,
+ LinkWorkModeEnum,
+} from '@/types/airport-tsa';
+import { DEFAULT_PLACEHOLDER } from './constants';
+
+/**
+ * 根据osd 更新信息
+ * @param cmdList
+ * @param deviceInfo
+ * @returns
+ */
+export function updateDeviceCmdInfoByOsd(cmdList, deviceInfo) {
+ const { device, dock, gateway } = deviceInfo || {};
+ if (!cmdList || cmdList.length < 1) {
+ return;
+ }
+ cmdList.forEach(cmdItem => {
+ if (cmdItem.loading) {
+ return;
+ }
+ if (cmdItem.cmdKey === DeviceCmd.DeviceReboot) {
+ // 重启
+ // console.log('DeviceReboot')
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneOpen || cmdItem.cmdKey === DeviceCmd.DroneClose) {
+ // 飞行器开关机
+ getDroneState(cmdItem, device);
+ } else if (cmdItem.cmdKey === DeviceCmd.CoverOpen || cmdItem.cmdKey === DeviceCmd.CoverClose) {
+ // 舱盖开关
+ getCoverState(cmdItem, dock);
+ } else if (
+ cmdItem.cmdKey === DeviceCmd.PutterOpen ||
+ cmdItem.cmdKey === DeviceCmd.PutterClose
+ ) {
+ // 推杆闭合展开
+ getPutterState(cmdItem, dock);
+ } else if (
+ cmdItem.cmdKey === DeviceCmd.ChargeOpen ||
+ cmdItem.cmdKey === DeviceCmd.ChargeClose
+ ) {
+ // 充电状态
+ getChargeState(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.DeviceFormat) {
+ // 机场存储
+ deviceFormat(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneFormat) {
+ // 飞行器存储
+ droneFormat(cmdItem, device);
+ } else if (
+ cmdItem.cmdKey === DeviceCmd.SupplementLightOpen ||
+ cmdItem.cmdKey === DeviceCmd.SupplementLightClose
+ ) {
+ // 补光灯开关
+ getSupplementLightState(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.AlarmStateSwitch) {
+ // 声光报警
+ getAlarmState(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.BatteryStoreModeSwitch) {
+ // 电池保养
+ getBatteryStoreMode(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneBatteryModeSwitch) {
+ // 飞行器电池保养
+ getDroneBatteryMode(cmdItem, dock);
+ } else if (cmdItem.cmdKey === DeviceCmd.SdrWorkModeSwitch) {
+ // 增强图传开关
+ getSdrWorkNode(cmdItem, dock);
+ }
+ });
+}
+
+// 推杆状态
+function getPutterState(cmdItem, airportProperties) {
+ const putterState = airportProperties?.basic_osd?.putter_state;
+ if (putterState === PutterStateEnum.Close || putterState === PutterStateEnum.Failed) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DevicePutterCloseBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.PutterOpen) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ } else if (putterState === PutterStateEnum.Open || putterState === PutterStateEnum.HalfOpen) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DevicePutterOpenBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.PutterClose) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ }
+}
+// 飞行器开关机
+function getDroneState(cmdItem, droneProperties) {
+ if (!droneProperties) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DroneStatusCloseBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.DroneOpen) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ } else {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DroneStatusOpenBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.DroneClose) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ }
+}
+
+// 舱盖开关
+function getCoverState(cmdItem, airportProperties) {
+ const coverState = airportProperties?.basic_osd?.cover_state;
+
+ if (coverState === CoverStateEnum.Close || coverState === CoverStateEnum.Failed) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceCoverCloseBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.CoverOpen) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ } else if (coverState === CoverStateEnum.Open || coverState === CoverStateEnum.HalfOpen) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceCoverOpenBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.CoverClose) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ }
+}
+
+// 充电状态
+function getChargeState(cmdItem, airportProperties) {
+ const chargeState = airportProperties?.basic_osd?.drone_charge_state;
+ const state = chargeState?.state;
+ if (!state) return;
+ if (state === ChargeStateEnum.Charge) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceChargeOpenBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.ChargeClose) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ } else if (state === ChargeStateEnum.NotCharge) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceChargeCloseBtnText;
+ if (cmdItem.cmdKey !== DeviceCmd.ChargeOpen) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ }
+}
+
+// 机场存储格式化
+function deviceFormat(cmdItem, airportProperties) {
+ const airportStorage = airportProperties?.basic_osd?.storage;
+ const value = getAirportStorage(airportStorage);
+ cmdItem.status = value;
+}
+
+// 机场存储格式化
+function droneFormat(cmdItem, droneProperties) {
+ const droneStorage = droneProperties?.storage;
+ const value = getAirportStorage(droneStorage);
+ cmdItem.status = value;
+}
+
+// 获取机场存储容量
+// {
+// "total": 10000, // 单位:KB
+// "used": 500
+// }
+export function getAirportStorage(storage) {
+ if (!storage) {
+ return DEFAULT_PLACEHOLDER;
+ }
+ const total = storage.total;
+ const used = storage.used;
+ const byteObj = getBytesObject(total * 1024);
+ const _total = byteObj.value;
+ const _used = getBytes(used * 1024, byteObj.index);
+ return `${_used}/${_total} ${byteObj.size}`;
+}
+
+// 获取转化后数据及单位
+export function getBytesObject(bytes, holder = DEFAULT_PLACEHOLDER, fix = 1) {
+ if (isNaN(bytes) || bytes === 0) {
+ return {
+ value: holder,
+ size: '',
+ index: -1,
+ };
+ }
+ // 兼容负数
+ let prefix = '';
+ if (bytes < 0) {
+ bytes = 0 - bytes;
+ prefix = '-';
+ }
+ const k = 1024;
+ const sizes = byteSizes; // ['B', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y']
+ const i = Math.floor(Math.log(bytes) / Math.log(k));
+
+ return {
+ value: prefix + (bytes / Math.pow(k, i)).toFixed(fix),
+ size: sizes[i],
+ index: i,
+ };
+}
+
+function getBytes(bytes, index, fixed = 1) {
+ return (bytes / Math.pow(1024, index)).toFixed(fixed);
+}
+
+// 补光灯状态
+function getSupplementLightState(cmdItem, airportProperties) {
+ const supplementLightState = airportProperties?.basic_osd?.supplement_light_state;
+ if (supplementLightState === SupplementLightStateEnum.Close) {
+ cmdItem.operateText = DeviceCmdStatusText.DeviceSupplementLightCloseBtnText;
+ cmdItem.status = DeviceCmdStatusText.DeviceSupplementLightCloseNormalText;
+ if (cmdItem.cmdKey !== DeviceCmd.SupplementLightOpen) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ } else if (supplementLightState === SupplementLightStateEnum.Open) {
+ cmdItem.operateText = DeviceCmdStatusText.DeviceSupplementLightOpenBtnText;
+ cmdItem.status = DeviceCmdStatusText.DeviceSupplementLightOpenNormalText;
+ if (cmdItem.cmdKey !== DeviceCmd.SupplementLightClose) {
+ exchangeDeviceCmd(cmdItem);
+ }
+ }
+}
+
+// 声光报警
+function getAlarmState(cmdItem, airportProperties) {
+ const alarmState = airportProperties?.basic_osd?.alarm_state;
+ if (alarmState === AlarmModeEnum.CLOSE) {
+ cmdItem.operateText = DeviceCmdStatusText.AlarmStateCloseBtnText;
+ cmdItem.status = DeviceCmdStatusText.AlarmStateCloseNormalText;
+ cmdItem.action = AlarmModeEnum.OPEN;
+ } else if (alarmState === AlarmModeEnum.OPEN) {
+ cmdItem.operateText = DeviceCmdStatusText.AlarmStateOpenBtnText;
+ cmdItem.status = DeviceCmdStatusText.AlarmStateOpenNormalText;
+ cmdItem.action = AlarmModeEnum.CLOSE;
+ }
+}
+
+// 机场电池模式
+function getBatteryStoreMode(cmdItem, airportProperties) {
+ const batteryStoreMode = airportProperties?.basic_osd?.battery_store_mode;
+ if (batteryStoreMode === BatteryStoreModeEnum.BATTERY_PLAN_STORE) {
+ cmdItem.operateText = DeviceCmdStatusText.BatteryStoreModePlanBtnText;
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModePlanNormalText;
+ cmdItem.action = BatteryStoreModeEnum.BATTERY_EMERGENCY_STORE;
+ } else if (batteryStoreMode === BatteryStoreModeEnum.BATTERY_EMERGENCY_STORE) {
+ cmdItem.operateText = DeviceCmdStatusText.BatteryStoreModeEmergencyBtnText;
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModeEmergencyNormalText;
+ cmdItem.action = BatteryStoreModeEnum.BATTERY_PLAN_STORE;
+ }
+}
+
+// 飞行器电池保养
+function getDroneBatteryMode(cmdItem, airportProperties) {
+ const maintenanceState =
+ airportProperties?.work_osd?.drone_battery_maintenance_info?.maintenance_state;
+ if (maintenanceState === DroneBatteryStateEnum.MaintenanceInProgress) {
+ cmdItem.operateText = DeviceCmdStatusText.DroneBatteryModeCloseBtnText;
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceInProgressText;
+ cmdItem.action = DroneBatteryModeEnum.CLOSE;
+ cmdItem.disabled = false;
+ } else if (maintenanceState === DroneBatteryStateEnum.NoMaintenanceRequired) {
+ cmdItem.operateText = DeviceCmdStatusText.DroneBatteryModeOpenBtnText;
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceNotNeedText;
+ cmdItem.action = DroneBatteryModeEnum.OPEN;
+ cmdItem.disabled = true;
+ } else if (maintenanceState === DroneBatteryStateEnum.MaintenanceRequired) {
+ cmdItem.operateText = DeviceCmdStatusText.DroneBatteryModeOpenBtnText;
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceNeedText;
+ cmdItem.action = DroneBatteryModeEnum.OPEN;
+ cmdItem.disabled = false;
+ }
+}
+
+// 增强图传开关
+function getSdrWorkNode(cmdItem, airportProperties) {
+ const linkWorkMode = airportProperties?.link_osd?.wireless_link?.link_workmode;
+ if (linkWorkMode === LinkWorkModeEnum.SDR) {
+ cmdItem.operateText = DeviceCmdStatusText.SdrWorkModeFourCloseBtnText;
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGCloseNormalText;
+ cmdItem.action = LinkWorkModeEnum.FourG_FUSION_MODE;
+ } else if (linkWorkMode === LinkWorkModeEnum.FourG_FUSION_MODE) {
+ cmdItem.operateText = DeviceCmdStatusText.SdrWorkModeFourGOpenBtnText;
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGOpenNormalText;
+ cmdItem.action = LinkWorkModeEnum.SDR;
+ }
+}
+
+/**
+ * 根据指令执行消息更新信息
+ * @param cmd
+ * @param deviceCmdExecuteInfo
+ * @returns
+ */
+export function updateDeviceCmdInfoByExecuteInfo(cmdList, deviceCmdExecuteInfos) {
+ if (!deviceCmdExecuteInfos || !cmdList) {
+ return;
+ }
+ cmdList.forEach(cmdItem => {
+ // 获取当前设备相应指令信息
+ const deviceCmdExecuteInfo = deviceCmdExecuteInfos.find(
+ cmdExecuteInfo => cmdExecuteInfo.biz_code === cmdItem.cmdKey
+ );
+ if (deviceCmdExecuteInfo) {
+ if (cmdItem.cmdKey === DeviceCmd.DeviceReboot) {
+ // 重启
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceRebootInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceRebootFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DeviceRebootNormalText;
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneOpen) {
+ // 飞行器开关机
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusOpenInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DroneStatusOpenBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneClose) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusCloseInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DroneStatusCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DroneStatusCloseBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.CoverOpen) {
+ // 舱盖开关
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverOpenInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceCoverOpenBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.CoverClose) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverCloseInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DeviceCoverCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceCoverCloseBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.PutterOpen) {
+ // 推杆闭合展开
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterOpenInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DevicePutterOpenBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.PutterClose) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterCloseInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DevicePutterCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DevicePutterCloseBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.ChargeOpen) {
+ // 充电状态
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeOpenInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeOpenNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceChargeOpenBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.ChargeClose) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeCloseInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DeviceChargeCloseNormalText;
+ cmdItem.operateText = DeviceCmdStatusText.DeviceChargeCloseBtnText;
+ exchangeDeviceCmd(cmdItem);
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.DeviceFormat) {
+ // 机场存储
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DeviceFormatInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DeviceFormatFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneFormat) {
+ // 飞行器存储
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DroneFormatInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DroneFormatFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.AlarmStateSwitch) {
+ // 机场声光报警
+ if (cmdItem.action === AlarmModeEnum.CLOSE) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.AlarmStateCloseText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.AlarmStateCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.action === AlarmModeEnum.OPEN) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.AlarmStateOpenText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.AlarmStateOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.BatteryStoreModeSwitch) {
+ // 电池保养
+ if (cmdItem.action === BatteryStoreModeEnum.BATTERY_PLAN_STORE) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModePlanText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModePlanFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.action === BatteryStoreModeEnum.BATTERY_EMERGENCY_STORE) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModeEmergencyText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.BatteryStoreModeEmergencyFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.loading = false;
+ }
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.DroneBatteryModeSwitch) {
+ // 飞行器电池保养
+ if (cmdItem.action === DroneBatteryModeEnum.OPEN) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceNeedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceNotNeedText;
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.action === DroneBatteryModeEnum.CLOSE) {
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceInProgressText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceInProgressText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.DroneBatteryModeMaintenanceNeedText;
+ cmdItem.loading = false;
+ }
+ }
+ } else if (cmdItem.cmdKey === DeviceCmd.SdrWorkModeSwitch) {
+ // 增强图传
+ if (cmdItem.action === LinkWorkModeEnum.SDR) {
+ // 关闭
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGCloseText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGCloseFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGCloseNormalText;
+ cmdItem.loading = false;
+ }
+ } else if (cmdItem.action === LinkWorkModeEnum.FourG_FUSION_MODE) {
+ // 开启
+ if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.InProgress) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGOpenText;
+ cmdItem.loading = true;
+ } else if (isExecuteFailed(deviceCmdExecuteInfo.output.status)) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGOpenFailedText;
+ cmdItem.loading = false;
+ } else if (deviceCmdExecuteInfo.output.status === DeviceCmdExecuteStatus.OK) {
+ cmdItem.status = DeviceCmdStatusText.SdrWorkModeFourGOpenNormalText;
+ cmdItem.loading = false;
+ }
+ }
+ }
+ }
+ });
+}
+
+/**
+ * 交换指令
+ * @param cmd
+ */
+function exchangeDeviceCmd(cmdItem) {
+ if (cmdItem.oppositeCmdKey) {
+ const oppositeCmdKey = cmdItem.oppositeCmdKey;
+ cmdItem.oppositeCmdKey = cmdItem.cmdKey;
+ cmdItem.cmdKey = oppositeCmdKey;
+ }
+}
+
+/**
+ * 判断是否执行失败
+ * @param status
+ * @returns
+ */
+function isExecuteFailed(status) {
+ return [
+ DeviceCmdExecuteStatus.Canceled,
+ DeviceCmdExecuteStatus.Failed,
+ DeviceCmdExecuteStatus.Timeout,
+ ].includes(status);
+}
diff --git a/src/views/device/airport.vue b/src/views/device/airport.vue
index 14e6b2a..ee3bc99 100644
--- a/src/views/device/airport.vue
+++ b/src/views/device/airport.vue
@@ -106,12 +106,22 @@
type="primary"
text
icon="el-icon-share"
- v-if="permission.per_share && scope.row.domain==3"
+ v-if="permission.per_share && scope.row.domain == 3"
@click.stop="handleOpenDevicePerShare(scope.row, scope.index)"
>机场授权
</el-button>
+
+ <!-- <el-button
+ type="primary"
+ text
+ icon="el-icon-share"
+ v-if="permission.per_share && scope.row.domain == 3"
+ @click.stop="handleOpenRemoteDebugging(scope.row, scope.index)"
+ >远程调试
+ </el-button> -->
</template>
</avue-crud>
+
<el-dialog title="固件升级" append-to-body v-model="firmwareBox" width="455px">
<div>升级固件版本:{{ firmwareVersion }}</div>
<template #footer>
@@ -121,6 +131,7 @@
</span>
</template>
</el-dialog>
+
<el-drawer
title="机场授权管理"
size="60%"
@@ -129,6 +140,15 @@
:direction="'rtl'"
>
<DevicePerShare ref="devicePerShare" />
+ </el-drawer>
+
+ <el-drawer title="远程调试" append-to-body v-model="remoteDebuggingShow" size="40%">
+ <DockControlPanel
+ v-if="remoteDebuggingShow"
+ :sn="curDeviceInfo.device_sn"
+ :deviceInfo="curDeviceInfo"
+ >
+ </DockControlPanel>
</el-drawer>
</basic-container>
</template>
@@ -149,15 +169,21 @@
import { mapGetters } from 'vuex';
import FirmwareManage from './components/firmwareManage.vue';
import DevicePerShare from './components/devicePerShare.vue';
+import DockControlPanel from './components/DockControlPanel.vue';
+
export default {
components: {
FirmwareManage,
- DevicePerShare
+ DevicePerShare,
+ DockControlPanel,
},
data() {
return {
devicePerShareVisible: false,
- firmwareManageVisible:false,
+ remoteDebuggingShow: false,
+ curDeviceInfo: {},
+
+ firmwareManageVisible: false,
percentageNum: 0,
firmwareBox: false,
firmwareInfo: {},
@@ -533,6 +559,12 @@
that.$refs.devicePerShare.init(row);
});
},
+
+ handleOpenRemoteDebugging(row) {
+ this.curDeviceInfo = row;
+ this.remoteDebuggingShow = true;
+ },
+
// 打开固件管理页面
handleOpenFirmwarm(row) {
var that = this;
diff --git a/src/views/device/components/DeviceSettingBox.vue b/src/views/device/components/DeviceSettingBox.vue
new file mode 100644
index 0000000..90f3dec
--- /dev/null
+++ b/src/views/device/components/DeviceSettingBox.vue
@@ -0,0 +1,425 @@
+<template>
+ <div class="device-setting-wrapper">
+ <!-- <div class="device-setting-header">设备属性设置</div> -->
+ <!-- 设备状态 -->
+ <!-- <div class="device-state-box flex-display flex-justify-between flex-wrap flex-align-center">
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">29</div>
+ <div class="state-item-label">机场搜星</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">已指定</div>
+ <div class="state-item-label">指定状态</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">0.0/78.2 GB</div>
+ <div class="state-item-label">机场存储</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">--/-- GB</div>
+ <div class="state-item-label">飞行器存储</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">24.8°C</div>
+ <div class="state-item-label">舱内温度</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">99%</div>
+ <div class="state-item-label">舱内湿度</div>
+ </div>
+ <div class="device-state-item flex-common flex-direction-column">
+ <div class="state-item-value">空闲中</div>
+ <div class="state-item-label">空调状态</div>
+ </div>
+ </div> -->
+ <div class="device-setting-box">
+ <!-- 飞行器夜航灯 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].popConfirm.visible"
+ :loading="deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].popConfirm.loading"
+ @confirm="
+ onConfirm(deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].settingKey)
+ "
+ @cancel="onCancel(deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].settingKey)"
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{ deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].label }}:</span
+ >
+ <a-switch
+ checked-children="开"
+ un-checked-children="关"
+ v-model:checked="deviceSettingFormModel.nightLightsState"
+ />
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(
+ deviceSetting[DeviceSettingKeyEnum.NIGHT_LIGHTS_MODE_SET].settingKey
+ )
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ <!-- 限高 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].popConfirm.visible"
+ :loading="deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].popConfirm.loading"
+ @confirm="onConfirm(deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].settingKey)"
+ @cancel="onCancel(deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].settingKey)"
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{ deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].label }}:</span
+ >
+ <a-input-number
+ v-model:value="deviceSettingFormModel.heightLimit"
+ :min="20"
+ :max="1500"
+ />
+ m
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(deviceSetting[DeviceSettingKeyEnum.HEIGHT_LIMIT_SET].settingKey)
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ <!-- 限远 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].popConfirm.visible"
+ :loading="deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].popConfirm.loading"
+ @confirm="onConfirm(deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].settingKey)"
+ @cancel="onCancel(deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].settingKey)"
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{ deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].label }}:</span
+ >
+ <a-switch
+ style="margin-right: 10px"
+ checked-children="开"
+ un-checked-children="关"
+ v-model:checked="deviceSettingFormModel.distanceLimitStatus.state"
+ />
+ <a-input-number
+ v-model:value="deviceSettingFormModel.distanceLimitStatus.distanceLimit"
+ :min="15"
+ :max="8000"
+ />
+ m
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(deviceSetting[DeviceSettingKeyEnum.DISTANCE_LIMIT_SET].settingKey)
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ <!-- 水平避障 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].popConfirm.visible
+ "
+ :loading="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].popConfirm.loading
+ "
+ @confirm="
+ onConfirm(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].settingKey)
+ "
+ @cancel="
+ onCancel(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].settingKey)
+ "
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].label }}:</span
+ >
+ <a-switch
+ checked-children="开"
+ un-checked-children="关"
+ v-model:checked="deviceSettingFormModel.obstacleAvoidanceHorizon"
+ />
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_HORIZON].settingKey
+ )
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ <!-- 上视避障 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].popConfirm.visible
+ "
+ :loading="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].popConfirm.loading
+ "
+ @confirm="
+ onConfirm(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].settingKey)
+ "
+ @cancel="
+ onCancel(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].settingKey)
+ "
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].label }}:</span
+ >
+ <a-switch
+ checked-children="开"
+ un-checked-children="关"
+ v-model:checked="deviceSettingFormModel.obstacleAvoidanceUpside"
+ />
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_UPSIDE].settingKey
+ )
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ <!-- 下视避障 -->
+ <div class="control-setting-item">
+ <div class="control-setting-item-left">
+ <div class="item-label">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].label }}
+ </div>
+ <div class="item-status">
+ {{ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].value }}
+ </div>
+ </div>
+ <div class="control-setting-item-right">
+ <DeviceSettingPopover
+ :visible="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].popConfirm.visible
+ "
+ :loading="
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].popConfirm.loading
+ "
+ @confirm="
+ onConfirm(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].settingKey)
+ "
+ @cancel="
+ onCancel(deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].settingKey)
+ "
+ >
+ <template #formContent>
+ <div class="form-content">
+ <span class="form-label"
+ >{{
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].label
+ }}:</span
+ >
+ <a-switch
+ checked-children="开"
+ un-checked-children="关"
+ v-model:checked="deviceSettingFormModel.obstacleAvoidanceDownside"
+ />
+ </div>
+ </template>
+ <a
+ @click="
+ onShowPopConfirm(
+ deviceSetting[DeviceSettingKeyEnum.OBSTACLE_AVOIDANCE_DOWNSIDE].settingKey
+ )
+ "
+ >编辑</a
+ >
+ </DeviceSettingPopover>
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script setup lang="ts">
+import { defineProps, ref, watch } from 'vue';
+import { DeviceInfoType } from '@/types/device';
+import { useMyStore } from '@/store';
+import { cloneDeep } from 'lodash';
+import {
+ initDeviceSetting,
+ initDeviceSettingFormModel,
+ DeviceSettingKeyEnum,
+} from '@/types/device-setting';
+import {
+ updateDeviceSettingInfoByOsd,
+ updateDeviceSettingFormModelByOsd,
+} from '@/utils/device-setting';
+import { useDeviceSetting } from './use-device-setting';
+import DeviceSettingPopover from './DeviceSettingPopover.vue';
+
+const props = defineProps<{
+ sn: string;
+ deviceInfo: DeviceInfoType;
+}>();
+
+const store = useMyStore();
+const deviceSetting = ref(cloneDeep(initDeviceSetting));
+const deviceSettingFormModelFromOsd = ref(cloneDeep(initDeviceSettingFormModel));
+const deviceSettingFormModel = ref(cloneDeep(initDeviceSettingFormModel)); // 真实使用的formModel
+
+// 根据设备osd信息更新信息
+watch(
+ () => props.deviceInfo,
+ value => {
+ updateDeviceSettingInfoByOsd(deviceSetting.value, value);
+ updateDeviceSettingFormModelByOsd(deviceSettingFormModelFromOsd.value, value);
+ // console.log('deviceInfo', value)
+ },
+ {
+ immediate: true,
+ deep: true,
+ }
+);
+
+function onShowPopConfirm(settingKey: DeviceSettingKeyEnum) {
+ deviceSetting.value[settingKey].popConfirm.visible = true;
+ deviceSettingFormModel.value = cloneDeep(deviceSettingFormModelFromOsd.value);
+}
+
+function onCancel(settingKey: DeviceSettingKeyEnum) {
+ deviceSetting.value[settingKey].popConfirm.visible = false;
+}
+
+async function onConfirm(settingKey: DeviceSettingKeyEnum) {
+ deviceSetting.value[settingKey].popConfirm.loading = true;
+ const body = genDevicePropsBySettingKey(settingKey, deviceSettingFormModel.value);
+ await setDeviceProps(props.sn, body);
+ deviceSetting.value[settingKey].popConfirm.loading = false;
+ deviceSetting.value[settingKey].popConfirm.visible = false;
+}
+
+// 更新设备属性
+const { genDevicePropsBySettingKey, setDeviceProps } = useDeviceSetting();
+</script>
+
+<style lang="scss" scoped>
+.device-setting-wrapper {
+ border-bottom: 1px solid #515151;
+
+ .device-setting-header {
+ font-size: 14px;
+ font-weight: 600;
+ padding: 10px 10px 0px;
+ }
+
+ .device-state-box {
+ .device-state-item {
+ width: 23%;
+ .state-item-value {
+ }
+ .state-item-label {
+ }
+ }
+ }
+ .device-state-box::after {
+ content: '';
+ width: 23%;
+ }
+
+ .device-setting-box {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ padding: 4px 10px;
+
+ .control-setting-item {
+ width: 220px;
+ height: 58px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ border: 1px solid #666;
+ margin: 4px 0;
+ padding: 0 8px;
+
+ .control-setting-item-left {
+ display: flex;
+ flex-direction: column;
+
+ .item-label {
+ font-weight: 700;
+ }
+ }
+ }
+ }
+}
+</style>
diff --git a/src/views/device/components/DeviceSettingPopover.vue b/src/views/device/components/DeviceSettingPopover.vue
new file mode 100644
index 0000000..d0531ba
--- /dev/null
+++ b/src/views/device/components/DeviceSettingPopover.vue
@@ -0,0 +1,110 @@
+<template>
+ <a-popover
+ :visible="state.sVisible"
+ trigger="click"
+ v-bind="$attrs"
+ :overlay-class-name="overlayClassName"
+ placement="bottom"
+ @visibleChange=""
+ v-on="$attrs"
+ >
+ <template #content>
+ <div class="title-content"></div>
+ <slot name="formContent" />
+ <div class="uranus-popconfirm-btns">
+ <a-button size="sm" @click="onCancel">
+ {{ cancelText || '取消' }}
+ </a-button>
+ <a-button
+ size="sm"
+ :loading="loading"
+ type="primary"
+ class="confirm-btn"
+ @click="onConfirm"
+ >
+ {{ okText || '确定' }}
+ </a-button>
+ </div>
+ </template>
+ <template v-if="$slots.default">
+ <slot></slot>
+ </template>
+ </a-popover>
+</template>
+
+<script lang="ts" setup>
+import { defineProps, defineEmits, reactive, watch, computed } from 'vue';
+
+const props = defineProps<{
+ visible?: boolean;
+ loading?: Boolean;
+ disabled?: Boolean;
+ title?: String;
+ okText?: String;
+ cancelText?: String;
+ width?: Number;
+}>();
+
+const emit = defineEmits(['cancel', 'confirm']);
+
+const state = reactive({
+ sVisible: false,
+ loading: false,
+});
+
+watch(
+ () => props.visible,
+ val => {
+ state.sVisible = val || false;
+ }
+);
+
+const loading = computed(() => {
+ return props.loading;
+});
+const okLabel = computed(() => {
+ return props.loading ? '' : '确定';
+});
+
+const overlayClassName = computed(() => {
+ const classList = ['device-setting-popconfirm'];
+ return classList.join(' ');
+});
+
+function onConfirm(e: Event) {
+ if (props.disabled) {
+ return;
+ }
+ emit('confirm', e);
+}
+
+function onCancel(e: Event) {
+ state.sVisible = false;
+ emit('cancel', e);
+}
+</script>
+
+<style lang="scss">
+.device-setting-popconfirm {
+ min-width: 300px;
+
+ .uranus-popconfirm-btns {
+ display: flex;
+ padding: 10px 0px;
+ justify-content: flex-end;
+
+ .confirm-btn {
+ margin-left: 10px;
+ }
+ }
+
+ .form-content {
+ display: inline-flex;
+ align-items: center;
+
+ .form-label {
+ padding-right: 10px;
+ }
+ }
+}
+</style>
diff --git a/src/views/device/components/DockControlPanel.vue b/src/views/device/components/DockControlPanel.vue
new file mode 100644
index 0000000..a17a6ff
--- /dev/null
+++ b/src/views/device/components/DockControlPanel.vue
@@ -0,0 +1,261 @@
+<template>
+ <div class="dock-control-panel">
+ <!-- title -->
+
+ <!-- setting -->
+ <!-- <DeviceSettingBox :sn="props.sn" :deviceInfo="props.deviceInfo"></DeviceSettingBox> -->
+ <!-- cmd -->
+ <div class="control-cmd-wrapper">
+ <div class="control-cmd-header">
+ 远程调试
+ <el-switch
+ v-model:checked="debugStatus"
+ @change="onDeviceStatusChange"
+ active-text="开"
+ inactive-text="关"
+ class="debug-btn"
+ style="--el-switch-on-color: #13ce66; --el-switch-off-color: #ff4949"
+ />
+ </div>
+ <div class="control-cmd-box">
+ <div v-for="(cmdItem, index) in cmdList" :key="cmdItem.cmdKey" class="control-cmd-item">
+ <div class="control-cmd-item-left">
+ <div class="item-label">{{ cmdItem.label }}</div>
+ <div class="item-status">{{ cmdItem.status }}</div>
+ </div>
+ <div class="control-cmd-item-right">
+ <el-button
+ :disabled="!debugStatus || cmdItem.disabled"
+ :loading="cmdItem.loading"
+ size="small"
+ type="primary"
+ @click="sendControlCmd(cmdItem, index)"
+ >
+ {{ cmdItem.operateText }}
+ </el-button>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script setup>
+import EventBus from '@/event-bus';
+import { EBizCode, ELocalStorageKey, ERouterName } from '@/types';
+import { useConnectWebSocket } from '@/hooks/use-connect-websocket';
+import { getWebsocketUrl } from '@/websocket/util/config';
+
+import { defineProps, ref, watch } from 'vue';
+import { cmdList as baseCmdList } from '@/types/device-cmd';
+import { useDockControl } from './use-dock-control';
+import { EDockModeCode } from '@/types/device';
+import { updateDeviceCmdInfoByOsd, updateDeviceCmdInfoByExecuteInfo } from '@/utils/device-cmd';
+
+import Store from '@/store';
+
+const props = defineProps(['sn', 'deviceInfo']);
+const initCmdList = baseCmdList.map(cmdItem => Object.assign({}, cmdItem));
+const cmdList = ref(initCmdList);
+
+// 根据机场指令执行状态更新信息
+watch(
+ () => Store.getters.devicesCmdExecuteInfo,
+ devicesCmdExecuteInfo => {
+ if (props.sn && devicesCmdExecuteInfo[props.sn]) {
+ updateDeviceCmdInfoByExecuteInfo(cmdList.value, devicesCmdExecuteInfo[props.sn]);
+ }
+ },
+ {
+ immediate: true,
+ deep: true,
+ }
+);
+
+// 根据设备osd信息更新信息
+watch(
+ () => props.deviceInfo,
+ value => {
+ updateDeviceCmdInfoByOsd(cmdList.value, value);
+ // console.log('deviceInfo', value)
+ },
+ {
+ immediate: true,
+ deep: true,
+ }
+);
+
+// dock 控制指令
+const debugStatus = ref(
+ props.deviceInfo.dock?.basic_osd.mode_code === EDockModeCode.Remote_Debugging
+);
+
+async function onDeviceStatusChange(status) {
+ let result = false;
+ if (status) {
+ result = await dockDebugOnOff(props.sn, true);
+ } else {
+ result = await dockDebugOnOff(props.sn, false);
+ }
+
+ console.log(result, '---1------');
+
+ if (!result) {
+ if (status) {
+ debugStatus.value = false;
+ } else {
+ debugStatus.value = true;
+ }
+ }
+}
+
+const { sendDockControlCmd, dockDebugOnOff } = useDockControl();
+
+async function sendControlCmd(cmdItem, index) {
+ const params = {
+ sn: props.sn,
+ cmd: cmdItem.cmdKey,
+ action: cmdItem.action,
+ };
+ const success = await sendDockControlCmd(params, true);
+ if (success) {
+ // updateDeviceSingleCmdInfo(cmdList.value[index])
+ }
+}
+
+const messageHandler = async payload => {
+ if (!payload) {
+ return;
+ }
+
+ switch (payload.biz_code) {
+ case EBizCode.GatewayOsd: {
+ Store.commit('SET_GATEWAY_INFO', payload.data);
+ break;
+ }
+ case EBizCode.DeviceOsd: {
+ Store.commit('SET_DEVICE_INFO', payload.data);
+ break;
+ }
+ case EBizCode.DockOsd: {
+ // if (payload.data.sn === workspace_id.value) {
+ Store.commit('SET_DOCK_INFO', payload.data);
+ // console.log(payload.data, 'data')
+ // }
+ break;
+ }
+ case EBizCode.MapElementCreate: {
+ Store.commit('SET_MAP_ELEMENT_CREATE', payload.data);
+ break;
+ }
+ case EBizCode.MapElementUpdate: {
+ Store.commit('SET_MAP_ELEMENT_UPDATE', payload.data);
+ break;
+ }
+ case EBizCode.MapElementDelete: {
+ Store.commit('SET_MAP_ELEMENT_DELETE', payload.data);
+ break;
+ }
+ case EBizCode.DeviceOnline: {
+ Store.commit('SET_DEVICE_ONLINE', payload.data);
+ break;
+ }
+ case EBizCode.DeviceOffline: {
+ Store.commit('SET_DEVICE_OFFLINE', payload.data);
+ break;
+ }
+ case EBizCode.FlightTaskProgress:
+ case EBizCode.FlightTaskMediaProgress:
+ case EBizCode.FlightTaskMediaHighestPriority: {
+ EventBus.emit('flightTaskWs', payload);
+ break;
+ }
+ case EBizCode.DeviceHms: {
+ Store.commit('SET_DEVICE_HMS_INFO', payload.data);
+ break;
+ }
+ case EBizCode.DeviceReboot:
+ case EBizCode.DroneOpen:
+ case EBizCode.DroneClose:
+ case EBizCode.CoverOpen:
+ case EBizCode.CoverClose:
+ case EBizCode.PutterOpen:
+ case EBizCode.PutterClose:
+ case EBizCode.ChargeOpen:
+ case EBizCode.ChargeClose:
+ case EBizCode.DeviceFormat:
+ case EBizCode.DroneFormat: {
+ Store.commit('SET_DEVICES_CMD_EXECUTE_INFO', {
+ biz_code: payload.biz_code,
+ timestamp: payload.timestamp,
+ ...payload.data,
+ });
+ break;
+ }
+ case EBizCode.ControlSourceChange:
+ case EBizCode.FlyToPointProgress:
+ case EBizCode.TakeoffToPointProgress:
+ case EBizCode.JoystickInvalidNotify:
+ case EBizCode.DrcStatusNotify: {
+ EventBus.emit('droneControlWs', payload);
+ break;
+ }
+ default:
+ break;
+ }
+};
+
+const webSorketUrl = getWebsocketUrl() + '&workspace-id=' + props.deviceInfo.workspace_id;
+// 监听ws 消息
+useConnectWebSocket(messageHandler, webSorketUrl);
+</script>
+
+<style lang="scss" scoped>
+.dock-control-panel {
+ position: relative;
+ width: 100%;
+ height: 100%;
+ padding: 0 !important;
+ color: #000;
+ border-radius: 2px;
+
+ .control-cmd-wrapper {
+ .control-cmd-header {
+ font-size: 14px;
+ font-weight: 600;
+ padding: 10px 10px 0px;
+
+ .debug-btn {
+ margin-left: 10px;
+ border: 1px solid #585858;
+ }
+ }
+
+ .control-cmd-box {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: space-between;
+ padding: 4px 10px;
+ .control-cmd-item {
+ width: 220px;
+ height: 58px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ border: 1px solid #666;
+ margin: 4px 0;
+ padding: 0 8px;
+
+ .control-cmd-item-left {
+ display: flex;
+ flex-direction: column;
+
+ .item-label {
+ font-weight: 700;
+ }
+ }
+ }
+ }
+ }
+}
+</style>
diff --git a/src/views/device/components/use-dock-control.js b/src/views/device/components/use-dock-control.js
new file mode 100644
index 0000000..bd62a21
--- /dev/null
+++ b/src/views/device/components/use-dock-control.js
@@ -0,0 +1,78 @@
+import { ElMessage } from 'element-plus';
+import { ref } from 'vue';
+import { postSendCmd } from '@/api/device-cmd';
+import { DeviceCmd } from '@/types/device-cmd';
+
+export function useDockControl() {
+ const dockControlPanelVisible = ref(false);
+
+ function setDockControlPanelVisible(visible) {
+ dockControlPanelVisible.value = visible;
+ }
+
+ // 远程调试开关
+ async function dockDebugOnOff(sn, on) {
+ const result = await sendDockControlCmd(
+ {
+ sn: sn,
+ cmd: on ? DeviceCmd.DebugModeOpen : DeviceCmd.DebugModeClose,
+ },
+ false
+ );
+ return result;
+ }
+
+ // 发送指令
+ async function sendDockControlCmd(params, tip = true) {
+ try {
+ let body = undefined;
+ if (params.action !== undefined) {
+ if (params.cmd === DeviceCmd.SdrWorkModeSwitch) {
+ body = {
+ link_workmode: params.action,
+ };
+ } else {
+ body = {
+ action: params.action,
+ };
+ }
+ }
+ const { code, message: msg } = await postSendCmd(
+ { dock_sn: params.sn, device_cmd: params.cmd },
+ body
+ );
+ if (code === 0) {
+ tip &&
+ ElMessage({
+ message: '指令发送成功',
+ type: 'success',
+ });
+ return true;
+ message.error('指令发送失败');
+ }
+ throw msg;
+ } catch (e) {
+ tip &&
+ ElMessage({
+ message: '指令发送失败',
+ type: 'error',
+ });
+ return false;
+ }
+ }
+
+ // 控制面板关闭
+ async function onCloseControlPanel(sn) {
+ console.log(dockControlPanelVisible.value, 'value');
+ await dockDebugOnOff(sn, false);
+ setDockControlPanelVisible(false);
+ }
+
+ return {
+ dockControlPanelVisible,
+ setDockControlPanelVisible,
+ sendDockControlCmd,
+ dockDebugOnOff,
+ onCloseControlPanel,
+ };
+}
diff --git a/src/views/device/index.vue b/src/views/device/index.vue
index 48f75e4..b823084 100644
--- a/src/views/device/index.vue
+++ b/src/views/device/index.vue
@@ -1,11 +1,21 @@
+<!--
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-09 11:40:40
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-09 12:02:50
+ * @FilePath: \drone-web-manage\src\views\device\index.vue
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+-->
<template>
<basic-container>
<el-tabs v-model="activeName" @tab-click="handleClick">
- <el-tab-pane label="飞行器" name="1">
- <fly ref="fly"/>
+ <el-tab-pane label="机场" name="1">
+ <airport ref="airport" />
</el-tab-pane>
- <el-tab-pane label="机场" name="2">
- <airport ref="airport"/>
+ <el-tab-pane label="飞行器" name="2">
+ <fly ref="fly" />
</el-tab-pane>
</el-tabs>
</basic-container>
@@ -13,10 +23,10 @@
<script>
import { mapGetters } from 'vuex';
-import airport from './airport.vue'
-import fly from './fly.vue'
+import airport from './airport.vue';
+import fly from './fly.vue';
export default {
- components:{airport,fly},
+ components: { airport, fly },
data() {
return {
activeName: '1',
@@ -29,8 +39,7 @@
computed: {
...mapGetters(['permission']),
permissionList() {
- return {
- };
+ return {};
},
ids() {
let ids = [];
@@ -42,11 +51,11 @@
},
methods: {
handleClick(tab, event) {
- if(tab.index==0){
- this.$refs.fly.init()
+ if (tab.index == 0) {
+ this.$refs.fly.init();
}
- if(tab.index==1){
- this.$refs.airport.init()
+ if (tab.index == 1) {
+ this.$refs.airport.init();
}
},
},
diff --git a/src/websocket/index.js b/src/websocket/index.js
new file mode 100644
index 0000000..6f4bfe8
--- /dev/null
+++ b/src/websocket/index.js
@@ -0,0 +1,77 @@
+/*
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-09 19:13:20
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-09 19:14:05
+ * @FilePath: \drone-web-manage\src\websocket\index.js
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+ */
+import ReconnectingWebSocket from "reconnecting-websocket"
+
+/**
+ * ConnectWebSocket 类
+ * TODO: 优化messageHandler: EventEmitter。暂时传入回调函数
+ */
+class ConnectWebSocket {
+ constructor(url) {
+ this._url = url
+ this._socket = null
+ this._hasInit = false
+ this._messageHandler = null
+ }
+
+ initSocket() {
+ if (this._hasInit) {
+ return
+ }
+ if (!this._url) {
+ return
+ }
+ // 会自动重连,无需处理重连逻辑
+ this._socket = new ReconnectingWebSocket(this._url, [], {
+ maxReconnectionDelay: 20000, // 断开后最大的重连时间: 20s,每多一次重连,会增加 1.3 倍,5 * 1.3 * 1.3 * 1.3...
+ minReconnectionDelay: 5000, // 断开后最短的重连时间: 5s
+ maxRetries: 5
+ })
+ this._hasInit = true
+
+ this._socket.addEventListener("open", this._onOpen.bind(this))
+ this._socket.addEventListener("close", this._onClose.bind(this))
+ this._socket.addEventListener("error", this._onError.bind(this))
+ this._socket.addEventListener("message", this._onMessage.bind(this))
+ }
+
+ _onOpen() {
+ console.log("连接成功")
+ }
+
+ _onClose() {
+ console.log("连接已断开")
+ }
+
+ _onError() {
+ console.log("连接 error")
+ }
+
+ registerMessageHandler(messageHandler) {
+ this._messageHandler = messageHandler
+ }
+
+ _onMessage(msg) {
+ const data = JSON.parse(msg.data)
+ this._messageHandler && this._messageHandler(data)
+ // console.log('接受消息', msg)
+ }
+
+ sendMessage = message => {
+ this._socket?.send(JSON.stringify(message.data))
+ }
+
+ close() {
+ this._socket?.close()
+ }
+}
+
+export default ConnectWebSocket
diff --git a/src/websocket/util/config.js b/src/websocket/util/config.js
new file mode 100644
index 0000000..30cf37e
--- /dev/null
+++ b/src/websocket/util/config.js
@@ -0,0 +1,19 @@
+/*
+ * @Author: shuishen 1109946754@qq.com
+ * @Date: 2024-09-09 19:13:20
+ * @LastEditors: shuishen 1109946754@qq.com
+ * @LastEditTime: 2024-09-09 19:14:36
+ * @FilePath: \drone-web-manage\src\websocket\util\config.ts
+ * @Description:
+ *
+ * Copyright (c) 2024 by shuishen, All Rights Reserved.
+ */
+
+import { getToken } from '@/utils/auth';
+
+export function getWebsocketUrl() {
+ const token = getToken();
+ // const url = CURRENT_CONFIG.websocketURL
+ const url = 'wss://wrj.shuixiongit.com/drone-api/api/v1/ws?x-auth-token=' + encodeURI(token);
+ return url;
+}
diff --git a/vite.config.mjs b/vite.config.mjs
index 5675d2e..b610064 100644
--- a/vite.config.mjs
+++ b/vite.config.mjs
@@ -1,21 +1,12 @@
-import {
- defineConfig,
- loadEnv
-} from 'vite';
-import { resolve } from 'path'
+import { defineConfig, loadEnv } from 'vite';
+import { resolve } from 'path';
import createVitePlugins from './vite/plugins';
// https://vitejs.dev/config/
-export default ({
- mode,
- command
-}) => {
- const env = loadEnv(mode, process.cwd())
- const {
- VITE_APP_ENV,
- VITE_APP_BASE
- } = env
+export default ({ mode, command }) => {
+ const env = loadEnv(mode, process.cwd());
+ const { VITE_APP_ENV, VITE_APP_BASE } = env;
// 判断是打生产环境包
- const isProd = VITE_APP_ENV === 'production'
+ const isProd = VITE_APP_ENV === 'production';
// 根据是否生产环境,动态设置压缩配置
const buildConfig = {
@@ -32,8 +23,8 @@
drop_debugger: true, // 删除 debugger
},
format: {
- comments: false // 删除所有注释
- }
+ comments: false, // 删除所有注释
+ },
};
}
return defineConfig({
@@ -41,14 +32,14 @@
define: {
__VUE_I18N_FULL_INSTALL__: true,
__VUE_I18N_LEGACY_API__: true,
- __INTLIFY_PROD_DEVTOOLS__: false
+ __INTLIFY_PROD_DEVTOOLS__: false,
},
server: {
port: 2888,
proxy: {
'/api': {
- target: 'http://localhost',
- // target: 'https://wrj.shuixiongit.com/api',
+ // target: 'http://localhost',
+ target: 'https://wrj.shuixiongit.com/api',
changeOrigin: true,
rewrite: path => path.replace(/^\/api/, ''),
},
diff --git a/yarn.lock b/yarn.lock
index ff9bd9b..050ecea 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -3,69 +3,69 @@
"@antfu/utils@^0.7.0":
- version "0.7.7"
- resolved "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.7.tgz"
- integrity sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg==
+ "integrity" "sha512-gFPqTG7otEJ8uP6wrhDv6mqwGWYZKNvAcCq6u9hOj0c+IKCEsY4L1oC9trPq2SaWIzAfHvqfBDxF591JkMf+kg=="
+ "resolved" "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.7.tgz"
+ "version" "0.7.7"
"@babel/parser@^7.24.4":
- version "7.24.6"
- resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz"
- integrity sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q==
+ "integrity" "sha512-eNZXdfU35nJC2h24RznROuOpO94h6x8sg9ju0tT9biNtLZ2vuP8SduLqqV+/8+cebSLV9SJEAN5Z3zQbJG/M+Q=="
+ "resolved" "https://registry.npmjs.org/@babel/parser/-/parser-7.24.6.tgz"
+ "version" "7.24.6"
"@babel/runtime@^7.12.0":
- version "7.23.7"
- resolved "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.23.7.tgz"
- integrity sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA==
+ "integrity" "sha512-w06OXVOFso7LcbzMiDGt+3X7Rh7Ho8MmgPoWU3rarH+8upf+wSU/grlGbWzQyr3DkdN6ZeuMFjpdwW0Q+HxobA=="
+ "resolved" "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.23.7.tgz"
+ "version" "7.23.7"
dependencies:
- regenerator-runtime "^0.14.0"
+ "regenerator-runtime" "^0.14.0"
"@bpmn-io/diagram-js-ui@^0.2.2":
- version "0.2.2"
- resolved "https://registry.npmmirror.com/@bpmn-io/diagram-js-ui/-/diagram-js-ui-0.2.2.tgz"
- integrity sha512-IgOIxOwoqsFB2mMPdXtcbPVPjdYkZ3huW7ipowYLhg5jdRGHlBronQ+LER+lfWro6sPtzEsw7qX8D8Yq9M2S5g==
+ "integrity" "sha512-IgOIxOwoqsFB2mMPdXtcbPVPjdYkZ3huW7ipowYLhg5jdRGHlBronQ+LER+lfWro6sPtzEsw7qX8D8Yq9M2S5g=="
+ "resolved" "https://registry.npmmirror.com/@bpmn-io/diagram-js-ui/-/diagram-js-ui-0.2.2.tgz"
+ "version" "0.2.2"
dependencies:
- htm "^3.1.1"
- preact "^10.11.2"
+ "htm" "^3.1.1"
+ "preact" "^10.11.2"
"@ctrl/tinycolor@^3.4.1":
- version "3.6.1"
- resolved "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz"
- integrity sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==
+ "integrity" "sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA=="
+ "resolved" "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.6.1.tgz"
+ "version" "3.6.1"
"@element-plus/icons-vue@^2.0.6", "@element-plus/icons-vue@^2.3.1":
- version "2.3.1"
- resolved "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz"
- integrity sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg==
+ "integrity" "sha512-XxVUZv48RZAd87ucGS48jPf6pKu0yV5UCg9f4FFwtrYxXOwWuVJo6wOvSLKEoMQKjv8GsX/mhP6UsC1lRwbUWg=="
+ "resolved" "https://registry.npmjs.org/@element-plus/icons-vue/-/icons-vue-2.3.1.tgz"
+ "version" "2.3.1"
-"@esbuild/darwin-arm64@0.20.2":
- version "0.20.2"
- resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz"
- integrity sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==
+"@esbuild/win32-x64@0.20.2":
+ "integrity" "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ=="
+ "resolved" "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz"
+ "version" "0.20.2"
"@floating-ui/core@^1.5.3":
- version "1.5.3"
- resolved "https://registry.npmmirror.com/@floating-ui/core/-/core-1.5.3.tgz"
- integrity sha512-O0WKDOo0yhJuugCx6trZQj5jVJ9yR0ystG2JaNAemYUWce+pmM6WUEFIibnWyEJKdrDxhm75NoSRME35FNaM/Q==
+ "integrity" "sha512-O0WKDOo0yhJuugCx6trZQj5jVJ9yR0ystG2JaNAemYUWce+pmM6WUEFIibnWyEJKdrDxhm75NoSRME35FNaM/Q=="
+ "resolved" "https://registry.npmmirror.com/@floating-ui/core/-/core-1.5.3.tgz"
+ "version" "1.5.3"
dependencies:
"@floating-ui/utils" "^0.2.0"
"@floating-ui/dom@^1.0.1":
- version "1.5.4"
- resolved "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.5.4.tgz"
- integrity sha512-jByEsHIY+eEdCjnTVu+E3ephzTOzkQ8hgUfGwos+bg7NlH33Zc5uO+QHz1mrQUOgIKKDD1RtS201P9NvAfq3XQ==
+ "integrity" "sha512-jByEsHIY+eEdCjnTVu+E3ephzTOzkQ8hgUfGwos+bg7NlH33Zc5uO+QHz1mrQUOgIKKDD1RtS201P9NvAfq3XQ=="
+ "resolved" "https://registry.npmmirror.com/@floating-ui/dom/-/dom-1.5.4.tgz"
+ "version" "1.5.4"
dependencies:
"@floating-ui/core" "^1.5.3"
"@floating-ui/utils" "^0.2.0"
"@floating-ui/utils@^0.2.0":
- version "0.2.1"
- resolved "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.1.tgz"
- integrity sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==
+ "integrity" "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q=="
+ "resolved" "https://registry.npmmirror.com/@floating-ui/utils/-/utils-0.2.1.tgz"
+ "version" "0.2.1"
"@intlify/core-base@9.2.2":
- version "9.2.2"
- resolved "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.2.2.tgz"
- integrity sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA==
+ "integrity" "sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA=="
+ "resolved" "https://registry.npmmirror.com/@intlify/core-base/-/core-base-9.2.2.tgz"
+ "version" "9.2.2"
dependencies:
"@intlify/devtools-if" "9.2.2"
"@intlify/message-compiler" "9.2.2"
@@ -73,352 +73,352 @@
"@intlify/vue-devtools" "9.2.2"
"@intlify/devtools-if@9.2.2":
- version "9.2.2"
- resolved "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.2.2.tgz"
- integrity sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==
+ "integrity" "sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg=="
+ "resolved" "https://registry.npmmirror.com/@intlify/devtools-if/-/devtools-if-9.2.2.tgz"
+ "version" "9.2.2"
dependencies:
"@intlify/shared" "9.2.2"
"@intlify/message-compiler@9.2.2":
- version "9.2.2"
- resolved "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.2.2.tgz"
- integrity sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==
+ "integrity" "sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA=="
+ "resolved" "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-9.2.2.tgz"
+ "version" "9.2.2"
dependencies:
"@intlify/shared" "9.2.2"
- source-map "0.6.1"
+ "source-map" "0.6.1"
"@intlify/shared@9.2.2":
- version "9.2.2"
- resolved "https://registry.npmmirror.com/@intlify/shared/-/shared-9.2.2.tgz"
- integrity sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==
+ "integrity" "sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q=="
+ "resolved" "https://registry.npmmirror.com/@intlify/shared/-/shared-9.2.2.tgz"
+ "version" "9.2.2"
"@intlify/vue-devtools@9.2.2":
- version "9.2.2"
- resolved "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz"
- integrity sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg==
+ "integrity" "sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg=="
+ "resolved" "https://registry.npmmirror.com/@intlify/vue-devtools/-/vue-devtools-9.2.2.tgz"
+ "version" "9.2.2"
dependencies:
"@intlify/core-base" "9.2.2"
"@intlify/shared" "9.2.2"
"@jridgewell/gen-mapping@^0.3.5":
- version "0.3.5"
- resolved "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz"
- integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==
+ "integrity" "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz"
+ "version" "0.3.5"
dependencies:
"@jridgewell/set-array" "^1.2.1"
"@jridgewell/sourcemap-codec" "^1.4.10"
"@jridgewell/trace-mapping" "^0.3.24"
"@jridgewell/resolve-uri@^3.1.0":
- version "3.1.2"
- resolved "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz"
- integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
+ "integrity" "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz"
+ "version" "3.1.2"
"@jridgewell/set-array@^1.2.1":
- version "1.2.1"
- resolved "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.2.1.tgz"
- integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
+ "integrity" "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.2.1.tgz"
+ "version" "1.2.1"
"@jridgewell/source-map@^0.3.3":
- version "0.3.6"
- resolved "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.6.tgz"
- integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==
+ "integrity" "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.6.tgz"
+ "version" "0.3.6"
dependencies:
"@jridgewell/gen-mapping" "^0.3.5"
"@jridgewell/trace-mapping" "^0.3.25"
"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.13", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15":
- version "1.4.15"
- resolved "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz"
- integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
+ "integrity" "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz"
+ "version" "1.4.15"
"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
- version "0.3.25"
- resolved "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz"
- integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
+ "integrity" "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ=="
+ "resolved" "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz"
+ "version" "0.3.25"
dependencies:
"@jridgewell/resolve-uri" "^3.1.0"
"@jridgewell/sourcemap-codec" "^1.4.14"
"@nodelib/fs.scandir@2.1.5":
- version "2.1.5"
- resolved "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
- integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
+ "integrity" "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="
+ "resolved" "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz"
+ "version" "2.1.5"
dependencies:
"@nodelib/fs.stat" "2.0.5"
- run-parallel "^1.1.9"
+ "run-parallel" "^1.1.9"
"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5":
- version "2.0.5"
- resolved "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
- integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
+ "integrity" "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
+ "resolved" "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
+ "version" "2.0.5"
"@nodelib/fs.walk@^1.2.3":
- version "1.2.8"
- resolved "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
- integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
+ "integrity" "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg=="
+ "resolved" "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz"
+ "version" "1.2.8"
dependencies:
"@nodelib/fs.scandir" "2.1.5"
- fastq "^1.6.0"
+ "fastq" "^1.6.0"
"@popperjs/core@npm:@sxzz/popperjs-es@^2.11.7":
- version "2.11.7"
- resolved "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz"
- integrity sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==
+ "integrity" "sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ=="
+ "resolved" "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz"
+ "version" "2.11.7"
"@rollup/pluginutils@^5.0.2":
- version "5.1.0"
- resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz"
- integrity sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==
+ "integrity" "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g=="
+ "resolved" "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.0.tgz"
+ "version" "5.1.0"
dependencies:
"@types/estree" "^1.0.0"
- estree-walker "^2.0.2"
- picomatch "^2.3.1"
+ "estree-walker" "^2.0.2"
+ "picomatch" "^2.3.1"
-"@rollup/rollup-darwin-arm64@4.18.0":
- version "4.18.0"
- resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.0.tgz"
- integrity sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==
+"@rollup/rollup-win32-x64-msvc@4.18.0":
+ "integrity" "sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g=="
+ "resolved" "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.0.tgz"
+ "version" "4.18.0"
"@saber/nf-design-base-elp@^1.2.0":
- version "1.2.0"
- resolved "https://center.javablade.com/api/packages/blade/npm/%40saber%2Fnf-design-base-elp/-/1.2.0/nf-design-base-elp-1.2.0.tgz"
- integrity sha512-ThpU7EpSIGP8eR3N3hRvI+0g4RU43suSRTHxc8YPBbxlgbN4I26p/cJprYSusuwQS+OZPLivMs+ciuoknCrwBw==
+ "integrity" "sha512-ThpU7EpSIGP8eR3N3hRvI+0g4RU43suSRTHxc8YPBbxlgbN4I26p/cJprYSusuwQS+OZPLivMs+ciuoknCrwBw=="
+ "resolved" "https://center.javablade.com/api/packages/blade/npm/%40saber%2Fnf-design-base-elp/-/1.2.0/nf-design-base-elp-1.2.0.tgz"
+ "version" "1.2.0"
dependencies:
- bpmn-js "11.5.0"
- monaco-editor "0.36.1"
- randomcolor "^0.6.2"
+ "bpmn-js" "11.5.0"
+ "monaco-editor" "0.36.1"
+ "randomcolor" "^0.6.2"
"@smallwei/avue@^3.4.4":
- version "3.4.6"
- resolved "https://registry.npmmirror.com/@smallwei/avue/-/avue-3.4.6.tgz"
- integrity sha512-JRka3h/NAoHwiCwkZuNfbHS1wevi3/3MxRXTU7IjX5TDveBx2jmLu1SWYU68f+1appm99RuBQYDJBlSJ21JU5w==
+ "integrity" "sha512-JRka3h/NAoHwiCwkZuNfbHS1wevi3/3MxRXTU7IjX5TDveBx2jmLu1SWYU68f+1appm99RuBQYDJBlSJ21JU5w=="
+ "resolved" "https://registry.npmmirror.com/@smallwei/avue/-/avue-3.4.6.tgz"
+ "version" "3.4.6"
dependencies:
"@element-plus/icons-vue" "^2.0.6"
- countup.js "^1.9.3"
- dayjs "^1.10.4"
+ "countup.js" "^1.9.3"
+ "dayjs" "^1.10.4"
"@transloadit/prettier-bytes@0.0.7":
- version "0.0.7"
- resolved "https://registry.npmmirror.com/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz"
- integrity sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA==
+ "integrity" "sha512-VeJbUb0wEKbcwaSlj5n+LscBl9IPgLPkHVGBkh00cztv6X4L/TJXK58LzFuBKX7/GAfiGhIwH67YTLTlzvIzBA=="
+ "resolved" "https://registry.npmmirror.com/@transloadit/prettier-bytes/-/prettier-bytes-0.0.7.tgz"
+ "version" "0.0.7"
"@types/estree@^1.0.0", "@types/estree@1.0.5":
- version "1.0.5"
- resolved "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz"
- integrity sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==
+ "integrity" "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="
+ "resolved" "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz"
+ "version" "1.0.5"
"@types/event-emitter@^0.3.3":
- version "0.3.5"
- resolved "https://registry.npmmirror.com/@types/event-emitter/-/event-emitter-0.3.5.tgz"
- integrity sha512-zx2/Gg0Eg7gwEiOIIh5w9TrhKKTeQh7CPCOPNc0el4pLSwzebA8SmnHwZs2dWlLONvyulykSwGSQxQHLhjGLvQ==
+ "integrity" "sha512-zx2/Gg0Eg7gwEiOIIh5w9TrhKKTeQh7CPCOPNc0el4pLSwzebA8SmnHwZs2dWlLONvyulykSwGSQxQHLhjGLvQ=="
+ "resolved" "https://registry.npmmirror.com/@types/event-emitter/-/event-emitter-0.3.5.tgz"
+ "version" "0.3.5"
"@types/lodash-es@*", "@types/lodash-es@^4.17.6":
- version "4.17.12"
- resolved "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz"
- integrity sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==
+ "integrity" "sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ=="
+ "resolved" "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.12.tgz"
+ "version" "4.17.12"
dependencies:
"@types/lodash" "*"
"@types/lodash@*", "@types/lodash@^4.14.182":
- version "4.14.202"
- resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.202.tgz"
- integrity sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==
+ "integrity" "sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ=="
+ "resolved" "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.202.tgz"
+ "version" "4.14.202"
"@types/web-bluetooth@^0.0.16":
- version "0.0.16"
- resolved "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz"
- integrity sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==
+ "integrity" "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ=="
+ "resolved" "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz"
+ "version" "0.0.16"
"@uppy/companion-client@^2.2.2":
- version "2.2.2"
- resolved "https://registry.npmmirror.com/@uppy/companion-client/-/companion-client-2.2.2.tgz"
- integrity sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og==
+ "integrity" "sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og=="
+ "resolved" "https://registry.npmmirror.com/@uppy/companion-client/-/companion-client-2.2.2.tgz"
+ "version" "2.2.2"
dependencies:
"@uppy/utils" "^4.1.2"
- namespace-emitter "^2.0.1"
+ "namespace-emitter" "^2.0.1"
"@uppy/core@^2.0.3", "@uppy/core@^2.1.1", "@uppy/core@^2.1.4", "@uppy/core@^2.3.3":
- version "2.3.4"
- resolved "https://registry.npmmirror.com/@uppy/core/-/core-2.3.4.tgz"
- integrity sha512-iWAqppC8FD8mMVqewavCz+TNaet6HPXitmGXpGGREGrakZ4FeuWytVdrelydzTdXx6vVKkOmI2FLztGg73sENQ==
+ "integrity" "sha512-iWAqppC8FD8mMVqewavCz+TNaet6HPXitmGXpGGREGrakZ4FeuWytVdrelydzTdXx6vVKkOmI2FLztGg73sENQ=="
+ "resolved" "https://registry.npmmirror.com/@uppy/core/-/core-2.3.4.tgz"
+ "version" "2.3.4"
dependencies:
"@transloadit/prettier-bytes" "0.0.7"
"@uppy/store-default" "^2.1.1"
"@uppy/utils" "^4.1.3"
- lodash.throttle "^4.1.1"
- mime-match "^1.0.2"
- namespace-emitter "^2.0.1"
- nanoid "^3.1.25"
- preact "^10.5.13"
+ "lodash.throttle" "^4.1.1"
+ "mime-match" "^1.0.2"
+ "namespace-emitter" "^2.0.1"
+ "nanoid" "^3.1.25"
+ "preact" "^10.5.13"
"@uppy/store-default@^2.1.1":
- version "2.1.1"
- resolved "https://registry.npmmirror.com/@uppy/store-default/-/store-default-2.1.1.tgz"
- integrity sha512-xnpTxvot2SeAwGwbvmJ899ASk5tYXhmZzD/aCFsXePh/v8rNvR2pKlcQUH7cF/y4baUGq3FHO/daKCok/mpKqQ==
+ "integrity" "sha512-xnpTxvot2SeAwGwbvmJ899ASk5tYXhmZzD/aCFsXePh/v8rNvR2pKlcQUH7cF/y4baUGq3FHO/daKCok/mpKqQ=="
+ "resolved" "https://registry.npmmirror.com/@uppy/store-default/-/store-default-2.1.1.tgz"
+ "version" "2.1.1"
"@uppy/utils@^4.1.2", "@uppy/utils@^4.1.3":
- version "4.1.3"
- resolved "https://registry.npmmirror.com/@uppy/utils/-/utils-4.1.3.tgz"
- integrity sha512-nTuMvwWYobnJcytDO3t+D6IkVq/Qs4Xv3vyoEZ+Iaf8gegZP+rEyoaFT2CK5XLRMienPyqRqNbIfRuFaOWSIFw==
+ "integrity" "sha512-nTuMvwWYobnJcytDO3t+D6IkVq/Qs4Xv3vyoEZ+Iaf8gegZP+rEyoaFT2CK5XLRMienPyqRqNbIfRuFaOWSIFw=="
+ "resolved" "https://registry.npmmirror.com/@uppy/utils/-/utils-4.1.3.tgz"
+ "version" "4.1.3"
dependencies:
- lodash.throttle "^4.1.1"
+ "lodash.throttle" "^4.1.1"
"@uppy/xhr-upload@^2.0.3", "@uppy/xhr-upload@^2.0.7":
- version "2.1.3"
- resolved "https://registry.npmmirror.com/@uppy/xhr-upload/-/xhr-upload-2.1.3.tgz"
- integrity sha512-YWOQ6myBVPs+mhNjfdWsQyMRWUlrDLMoaG7nvf/G6Y3GKZf8AyjFDjvvJ49XWQ+DaZOftGkHmF1uh/DBeGivJQ==
+ "integrity" "sha512-YWOQ6myBVPs+mhNjfdWsQyMRWUlrDLMoaG7nvf/G6Y3GKZf8AyjFDjvvJ49XWQ+DaZOftGkHmF1uh/DBeGivJQ=="
+ "resolved" "https://registry.npmmirror.com/@uppy/xhr-upload/-/xhr-upload-2.1.3.tgz"
+ "version" "2.1.3"
dependencies:
"@uppy/companion-client" "^2.2.2"
"@uppy/utils" "^4.1.2"
- nanoid "^3.1.25"
+ "nanoid" "^3.1.25"
"@vitejs/plugin-vue@^5.0.4":
- version "5.0.4"
- resolved "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz"
- integrity sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ==
+ "integrity" "sha512-WS3hevEszI6CEVEx28F8RjTX97k3KsrcY6kvTg7+Whm5y3oYvcqzVeGCU3hxSAn4uY2CLCkeokkGKpoctccilQ=="
+ "resolved" "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.4.tgz"
+ "version" "5.0.4"
"@vue/compiler-core@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz"
- integrity sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==
+ "integrity" "sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg=="
+ "resolved" "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@babel/parser" "^7.24.4"
"@vue/shared" "3.4.27"
- entities "^4.5.0"
- estree-walker "^2.0.2"
- source-map-js "^1.2.0"
+ "entities" "^4.5.0"
+ "estree-walker" "^2.0.2"
+ "source-map-js" "^1.2.0"
"@vue/compiler-dom@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz"
- integrity sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==
+ "integrity" "sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw=="
+ "resolved" "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/compiler-core" "3.4.27"
"@vue/shared" "3.4.27"
"@vue/compiler-sfc@^3.2.29", "@vue/compiler-sfc@^3.4.27", "@vue/compiler-sfc@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz"
- integrity sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA==
+ "integrity" "sha512-nDwntUEADssW8e0rrmE0+OrONwmRlegDA1pD6QhVeXxjIytV03yDqTey9SBDiALsvAd5U4ZrEKbMyVXhX6mCGA=="
+ "resolved" "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@babel/parser" "^7.24.4"
"@vue/compiler-core" "3.4.27"
"@vue/compiler-dom" "3.4.27"
"@vue/compiler-ssr" "3.4.27"
"@vue/shared" "3.4.27"
- estree-walker "^2.0.2"
- magic-string "^0.30.10"
- postcss "^8.4.38"
- source-map-js "^1.2.0"
+ "estree-walker" "^2.0.2"
+ "magic-string" "^0.30.10"
+ "postcss" "^8.4.38"
+ "source-map-js" "^1.2.0"
"@vue/compiler-ssr@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz"
- integrity sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw==
+ "integrity" "sha512-CVRzSJIltzMG5FcidsW0jKNQnNRYC8bT21VegyMMtHmhW3UOI7knmUehzswXLrExDLE6lQCZdrhD4ogI7c+vuw=="
+ "resolved" "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/compiler-dom" "3.4.27"
"@vue/shared" "3.4.27"
"@vue/devtools-api@^6.0.0-beta.11", "@vue/devtools-api@^6.2.1", "@vue/devtools-api@^6.5.1":
- version "6.5.1"
- resolved "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.1.tgz"
- integrity sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA==
+ "integrity" "sha512-+KpckaAQyfbvshdDW5xQylLni1asvNSGme1JFs8I1+/H5pHEhqUKMEQD/qn3Nx5+/nycBq11qAEi8lk+LXI2dA=="
+ "resolved" "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.5.1.tgz"
+ "version" "6.5.1"
"@vue/reactivity@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz"
- integrity sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA==
+ "integrity" "sha512-kK0g4NknW6JX2yySLpsm2jlunZJl2/RJGZ0H9ddHdfBVHcNzxmQ0sS0b09ipmBoQpY8JM2KmUw+a6sO8Zo+zIA=="
+ "resolved" "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/shared" "3.4.27"
"@vue/runtime-core@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.27.tgz"
- integrity sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA==
+ "integrity" "sha512-7aYA9GEbOOdviqVvcuweTLe5Za4qBZkUY7SvET6vE8kyypxVgaT1ixHLg4urtOlrApdgcdgHoTZCUuTGap/5WA=="
+ "resolved" "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/reactivity" "3.4.27"
"@vue/shared" "3.4.27"
"@vue/runtime-dom@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz"
- integrity sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q==
+ "integrity" "sha512-ScOmP70/3NPM+TW9hvVAz6VWWtZJqkbdf7w6ySsws+EsqtHvkhxaWLecrTorFxsawelM5Ys9FnDEMt6BPBDS0Q=="
+ "resolved" "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/runtime-core" "3.4.27"
"@vue/shared" "3.4.27"
- csstype "^3.1.3"
+ "csstype" "^3.1.3"
"@vue/server-renderer@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.27.tgz"
- integrity sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA==
+ "integrity" "sha512-dlAMEuvmeA3rJsOMJ2J1kXU7o7pOxgsNHVr9K8hB3ImIkSuBrIdy0vF66h8gf8Tuinf1TK3mPAz2+2sqyf3KzA=="
+ "resolved" "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/compiler-ssr" "3.4.27"
"@vue/shared" "3.4.27"
"@vue/shared@3.4.27":
- version "3.4.27"
- resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz"
- integrity sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==
+ "integrity" "sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA=="
+ "resolved" "https://registry.npmjs.org/@vue/shared/-/shared-3.4.27.tgz"
+ "version" "3.4.27"
"@vueuse/core@*", "@vueuse/core@^9.1.0":
- version "9.13.0"
- resolved "https://registry.npmmirror.com/@vueuse/core/-/core-9.13.0.tgz"
- integrity sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==
+ "integrity" "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw=="
+ "resolved" "https://registry.npmmirror.com/@vueuse/core/-/core-9.13.0.tgz"
+ "version" "9.13.0"
dependencies:
"@types/web-bluetooth" "^0.0.16"
"@vueuse/metadata" "9.13.0"
"@vueuse/shared" "9.13.0"
- vue-demi "*"
+ "vue-demi" "*"
"@vueuse/metadata@9.13.0":
- version "9.13.0"
- resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.13.0.tgz"
- integrity sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==
+ "integrity" "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ=="
+ "resolved" "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.13.0.tgz"
+ "version" "9.13.0"
"@vueuse/shared@9.13.0":
- version "9.13.0"
- resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.13.0.tgz"
- integrity sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==
+ "integrity" "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw=="
+ "resolved" "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.13.0.tgz"
+ "version" "9.13.0"
dependencies:
- vue-demi "*"
+ "vue-demi" "*"
"@wangeditor/basic-modules@^1.1.7", "@wangeditor/basic-modules@1.x":
- version "1.1.7"
- resolved "https://registry.npmmirror.com/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz"
- integrity sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==
+ "integrity" "sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/basic-modules/-/basic-modules-1.1.7.tgz"
+ "version" "1.1.7"
dependencies:
- is-url "^1.2.4"
+ "is-url" "^1.2.4"
"@wangeditor/code-highlight@^1.0.3":
- version "1.0.3"
- resolved "https://registry.npmmirror.com/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz"
- integrity sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==
+ "integrity" "sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/code-highlight/-/code-highlight-1.0.3.tgz"
+ "version" "1.0.3"
dependencies:
- prismjs "^1.23.0"
+ "prismjs" "^1.23.0"
"@wangeditor/core@^1.1.19", "@wangeditor/core@1.x":
- version "1.1.19"
- resolved "https://registry.npmmirror.com/@wangeditor/core/-/core-1.1.19.tgz"
- integrity sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==
+ "integrity" "sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/core/-/core-1.1.19.tgz"
+ "version" "1.1.19"
dependencies:
"@types/event-emitter" "^0.3.3"
- event-emitter "^0.3.5"
- html-void-elements "^2.0.0"
- i18next "^20.4.0"
- scroll-into-view-if-needed "^2.2.28"
- slate-history "^0.66.0"
+ "event-emitter" "^0.3.5"
+ "html-void-elements" "^2.0.0"
+ "i18next" "^20.4.0"
+ "scroll-into-view-if-needed" "^2.2.28"
+ "slate-history" "^0.66.0"
"@wangeditor/editor-for-vue@^5.1.12":
- version "5.1.12"
- resolved "https://registry.npmmirror.com/@wangeditor/editor-for-vue/-/editor-for-vue-5.1.12.tgz"
- integrity sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==
+ "integrity" "sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/editor-for-vue/-/editor-for-vue-5.1.12.tgz"
+ "version" "5.1.12"
"@wangeditor/editor@^5.1.23", "@wangeditor/editor@>=5.1.0":
- version "5.1.23"
- resolved "https://registry.npmmirror.com/@wangeditor/editor/-/editor-5.1.23.tgz"
- integrity sha512-0RxfeVTuK1tktUaPROnCoFfaHVJpRAIE2zdS0mpP+vq1axVQpLjM8+fCvKzqYIkH0Pg+C+44hJpe3VVroSkEuQ==
+ "integrity" "sha512-0RxfeVTuK1tktUaPROnCoFfaHVJpRAIE2zdS0mpP+vq1axVQpLjM8+fCvKzqYIkH0Pg+C+44hJpe3VVroSkEuQ=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/editor/-/editor-5.1.23.tgz"
+ "version" "5.1.23"
dependencies:
"@uppy/core" "^2.1.1"
"@uppy/xhr-upload" "^2.0.3"
@@ -429,277 +429,277 @@
"@wangeditor/table-module" "^1.1.4"
"@wangeditor/upload-image-module" "^1.0.2"
"@wangeditor/video-module" "^1.1.4"
- dom7 "^3.0.0"
- is-hotkey "^0.2.0"
- lodash.camelcase "^4.3.0"
- lodash.clonedeep "^4.5.0"
- lodash.debounce "^4.0.8"
- lodash.foreach "^4.5.0"
- lodash.isequal "^4.5.0"
- lodash.throttle "^4.1.1"
- lodash.toarray "^4.4.0"
- nanoid "^3.2.0"
- slate "^0.72.0"
- snabbdom "^3.1.0"
+ "dom7" "^3.0.0"
+ "is-hotkey" "^0.2.0"
+ "lodash.camelcase" "^4.3.0"
+ "lodash.clonedeep" "^4.5.0"
+ "lodash.debounce" "^4.0.8"
+ "lodash.foreach" "^4.5.0"
+ "lodash.isequal" "^4.5.0"
+ "lodash.throttle" "^4.1.1"
+ "lodash.toarray" "^4.4.0"
+ "nanoid" "^3.2.0"
+ "slate" "^0.72.0"
+ "snabbdom" "^3.1.0"
"@wangeditor/list-module@^1.0.5":
- version "1.0.5"
- resolved "https://registry.npmmirror.com/@wangeditor/list-module/-/list-module-1.0.5.tgz"
- integrity sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ==
+ "integrity" "sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/list-module/-/list-module-1.0.5.tgz"
+ "version" "1.0.5"
"@wangeditor/table-module@^1.1.4":
- version "1.1.4"
- resolved "https://registry.npmmirror.com/@wangeditor/table-module/-/table-module-1.1.4.tgz"
- integrity sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w==
+ "integrity" "sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/table-module/-/table-module-1.1.4.tgz"
+ "version" "1.1.4"
"@wangeditor/upload-image-module@^1.0.2":
- version "1.0.2"
- resolved "https://registry.npmmirror.com/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz"
- integrity sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA==
+ "integrity" "sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/upload-image-module/-/upload-image-module-1.0.2.tgz"
+ "version" "1.0.2"
"@wangeditor/video-module@^1.1.4":
- version "1.1.4"
- resolved "https://registry.npmmirror.com/@wangeditor/video-module/-/video-module-1.1.4.tgz"
- integrity sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg==
+ "integrity" "sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg=="
+ "resolved" "https://registry.npmmirror.com/@wangeditor/video-module/-/video-module-1.1.4.tgz"
+ "version" "1.1.4"
-acorn@^8.10.0, acorn@^8.11.2, acorn@^8.8.2:
- version "8.11.3"
- resolved "https://registry.npmmirror.com/acorn/-/acorn-8.11.3.tgz"
- integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==
+"acorn@^8.10.0", "acorn@^8.11.2", "acorn@^8.8.2":
+ "integrity" "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg=="
+ "resolved" "https://registry.npmmirror.com/acorn/-/acorn-8.11.3.tgz"
+ "version" "8.11.3"
-animate.css@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmmirror.com/animate.css/-/animate.css-4.1.1.tgz"
- integrity sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ==
+"animate.css@^4.1.1":
+ "integrity" "sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ=="
+ "resolved" "https://registry.npmmirror.com/animate.css/-/animate.css-4.1.1.tgz"
+ "version" "4.1.1"
-ansi-styles@^4.1.0:
- version "4.3.0"
- resolved "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
+"ansi-styles@^4.1.0":
+ "integrity" "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="
+ "resolved" "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz"
+ "version" "4.3.0"
dependencies:
- color-convert "^2.0.1"
+ "color-convert" "^2.0.1"
-anymatch@~3.1.2:
- version "3.1.3"
- resolved "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz"
- integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
+"anymatch@~3.1.2":
+ "integrity" "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw=="
+ "resolved" "https://registry.npmmirror.com/anymatch/-/anymatch-3.1.3.tgz"
+ "version" "3.1.3"
dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
+ "normalize-path" "^3.0.0"
+ "picomatch" "^2.0.4"
-async-validator@^4.2.5:
- version "4.2.5"
- resolved "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz"
- integrity sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==
+"async-validator@^4.2.5":
+ "integrity" "sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg=="
+ "resolved" "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz"
+ "version" "4.2.5"
-avue-plugin-ueditor@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmmirror.com/avue-plugin-ueditor/-/avue-plugin-ueditor-1.0.3.tgz"
- integrity sha512-hly5hcS5g9d9uoSY5m6h7Kf/o8wHXKQO9LZICbbtmiEX6xYlWcH0mqL0j5rKdbUVNNcjzUThBGaDVWWzXqqxBQ==
+"avue-plugin-ueditor@^1.0.3":
+ "integrity" "sha512-hly5hcS5g9d9uoSY5m6h7Kf/o8wHXKQO9LZICbbtmiEX6xYlWcH0mqL0j5rKdbUVNNcjzUThBGaDVWWzXqqxBQ=="
+ "resolved" "https://registry.npmmirror.com/avue-plugin-ueditor/-/avue-plugin-ueditor-1.0.3.tgz"
+ "version" "1.0.3"
dependencies:
"@wangeditor/editor" "^5.1.23"
"@wangeditor/editor-for-vue" "^5.1.12"
- axios "^0.18.0"
- vue "^3.2.47"
+ "axios" "^0.18.0"
+ "vue" "^3.2.47"
-axios@^0.18.0:
- version "0.18.1"
- resolved "https://registry.npmmirror.com/axios/-/axios-0.18.1.tgz"
- integrity sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==
+"axios@^0.18.0":
+ "integrity" "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g=="
+ "resolved" "https://registry.npmmirror.com/axios/-/axios-0.18.1.tgz"
+ "version" "0.18.1"
dependencies:
- follow-redirects "1.5.10"
- is-buffer "^2.0.2"
+ "follow-redirects" "1.5.10"
+ "is-buffer" "^2.0.2"
-axios@^0.21.1:
- version "0.21.4"
- resolved "https://registry.npmmirror.com/axios/-/axios-0.21.4.tgz"
- integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==
+"axios@^0.21.1":
+ "integrity" "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg=="
+ "resolved" "https://registry.npmmirror.com/axios/-/axios-0.21.4.tgz"
+ "version" "0.21.4"
dependencies:
- follow-redirects "^1.14.0"
+ "follow-redirects" "^1.14.0"
-binary-extensions@^2.0.0:
- version "2.2.0"
- resolved "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz"
- integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
+"binary-extensions@^2.0.0":
+ "integrity" "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA=="
+ "resolved" "https://registry.npmmirror.com/binary-extensions/-/binary-extensions-2.2.0.tgz"
+ "version" "2.2.0"
-bpmn-js@11.5.0:
- version "11.5.0"
- resolved "https://registry.npmmirror.com/bpmn-js/-/bpmn-js-11.5.0.tgz"
- integrity sha512-Bdj53UvfiDtGE1wmiBmpgjl5RMLhCGV/C841dyC+t4kBHj7vApAeeHs2Qiycj390HO4B2U8UDROLT7yjdXEEUA==
+"bpmn-js@11.5.0":
+ "integrity" "sha512-Bdj53UvfiDtGE1wmiBmpgjl5RMLhCGV/C841dyC+t4kBHj7vApAeeHs2Qiycj390HO4B2U8UDROLT7yjdXEEUA=="
+ "resolved" "https://registry.npmmirror.com/bpmn-js/-/bpmn-js-11.5.0.tgz"
+ "version" "11.5.0"
dependencies:
- bpmn-moddle "^8.0.0"
- diagram-js "^11.9.1"
- diagram-js-direct-editing "^2.0.0"
- ids "^1.0.0"
- inherits-browser "^0.1.0"
- min-dash "^4.0.0"
- min-dom "^4.0.3"
- object-refs "^0.3.0"
- tiny-svg "^3.0.0"
+ "bpmn-moddle" "^8.0.0"
+ "diagram-js" "^11.9.1"
+ "diagram-js-direct-editing" "^2.0.0"
+ "ids" "^1.0.0"
+ "inherits-browser" "^0.1.0"
+ "min-dash" "^4.0.0"
+ "min-dom" "^4.0.3"
+ "object-refs" "^0.3.0"
+ "tiny-svg" "^3.0.0"
-bpmn-moddle@^8.0.0:
- version "8.1.0"
- resolved "https://registry.npmmirror.com/bpmn-moddle/-/bpmn-moddle-8.1.0.tgz"
- integrity sha512-yI5OAFfYVJwViKTsTsonVfCBPtB3MlefADUORwNIxxBOMp21vnoxuxsdgUWlPH/dvAEZh/+mr8UtqOBNu8NC5Q==
+"bpmn-moddle@^8.0.0":
+ "integrity" "sha512-yI5OAFfYVJwViKTsTsonVfCBPtB3MlefADUORwNIxxBOMp21vnoxuxsdgUWlPH/dvAEZh/+mr8UtqOBNu8NC5Q=="
+ "resolved" "https://registry.npmmirror.com/bpmn-moddle/-/bpmn-moddle-8.1.0.tgz"
+ "version" "8.1.0"
dependencies:
- min-dash "^4.0.0"
- moddle "^6.2.3"
- moddle-xml "^10.1.0"
+ "min-dash" "^4.0.0"
+ "moddle" "^6.2.3"
+ "moddle-xml" "^10.1.0"
-braces@^3.0.2, braces@~3.0.2:
- version "3.0.2"
- resolved "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz"
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
+"braces@^3.0.2", "braces@~3.0.2":
+ "integrity" "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A=="
+ "resolved" "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz"
+ "version" "3.0.2"
dependencies:
- fill-range "^7.0.1"
+ "fill-range" "^7.0.1"
-buffer-from@^1.0.0:
- version "1.1.2"
- resolved "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz"
- integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
+"buffer-from@^1.0.0":
+ "integrity" "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
+ "resolved" "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz"
+ "version" "1.1.2"
-chalk@^4.1.2:
- version "4.1.2"
- resolved "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz"
- integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
+"chalk@^4.1.2":
+ "integrity" "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="
+ "resolved" "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz"
+ "version" "4.1.2"
dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
+ "ansi-styles" "^4.1.0"
+ "supports-color" "^7.1.0"
-chokidar@^3.5.3, "chokidar@>=3.0.0 <4.0.0":
- version "3.5.3"
- resolved "https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz"
- integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
+"chokidar@^3.5.3", "chokidar@>=3.0.0 <4.0.0":
+ "integrity" "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw=="
+ "resolved" "https://registry.npmmirror.com/chokidar/-/chokidar-3.5.3.tgz"
+ "version" "3.5.3"
dependencies:
- anymatch "~3.1.2"
- braces "~3.0.2"
- glob-parent "~5.1.2"
- is-binary-path "~2.1.0"
- is-glob "~4.0.1"
- normalize-path "~3.0.0"
- readdirp "~3.6.0"
+ "anymatch" "~3.1.2"
+ "braces" "~3.0.2"
+ "glob-parent" "~5.1.2"
+ "is-binary-path" "~2.1.0"
+ "is-glob" "~4.0.1"
+ "normalize-path" "~3.0.0"
+ "readdirp" "~3.6.0"
optionalDependencies:
- fsevents "~2.3.2"
+ "fsevents" "~2.3.2"
-clsx@^1.2.1:
- version "1.2.1"
- resolved "https://registry.npmmirror.com/clsx/-/clsx-1.2.1.tgz"
- integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==
+"clsx@^1.2.1":
+ "integrity" "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg=="
+ "resolved" "https://registry.npmmirror.com/clsx/-/clsx-1.2.1.tgz"
+ "version" "1.2.1"
-color-convert@^2.0.1:
- version "2.0.1"
- resolved "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
+"color-convert@^2.0.1":
+ "integrity" "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ=="
+ "resolved" "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz"
+ "version" "2.0.1"
dependencies:
- color-name "~1.1.4"
+ "color-name" "~1.1.4"
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
+"color-name@~1.1.4":
+ "integrity" "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+ "resolved" "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz"
+ "version" "1.1.4"
-commander@^2.20.0:
- version "2.20.3"
- resolved "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz"
- integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
+"commander@^2.20.0":
+ "integrity" "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
+ "resolved" "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz"
+ "version" "2.20.3"
-component-event@^0.2.1:
- version "0.2.1"
- resolved "https://registry.npmmirror.com/component-event/-/component-event-0.2.1.tgz"
- integrity sha512-wGA++isMqiDq1jPYeyv2as/Bt/u+3iLW0rEa+8NQ82jAv3TgqMiCM+B2SaBdn2DfLilLjjq736YcezihRYhfxw==
+"component-event@^0.2.1":
+ "integrity" "sha512-wGA++isMqiDq1jPYeyv2as/Bt/u+3iLW0rEa+8NQ82jAv3TgqMiCM+B2SaBdn2DfLilLjjq736YcezihRYhfxw=="
+ "resolved" "https://registry.npmmirror.com/component-event/-/component-event-0.2.1.tgz"
+ "version" "0.2.1"
-compute-scroll-into-view@^1.0.20:
- version "1.0.20"
- resolved "https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz"
- integrity sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg==
+"compute-scroll-into-view@^1.0.20":
+ "integrity" "sha512-UCB0ioiyj8CRjtrvaceBLqqhZCVP+1B8+NWQhmdsm0VXOJtobBCf1dBQmebCCo34qZmUwZfIH2MZLqNHazrfjg=="
+ "resolved" "https://registry.npmmirror.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.20.tgz"
+ "version" "1.0.20"
-countup.js@^1.9.3:
- version "1.9.3"
- resolved "https://registry.npmmirror.com/countup.js/-/countup.js-1.9.3.tgz"
- integrity sha512-UHf2P/mFKaESqdPq+UdBJm/1y8lYdlcDd0nTZHNC8cxWoJwZr1Eldm1PpWui446vDl5Pd8PtRYkr3q6K4+Qa5A==
+"countup.js@^1.9.3":
+ "integrity" "sha512-UHf2P/mFKaESqdPq+UdBJm/1y8lYdlcDd0nTZHNC8cxWoJwZr1Eldm1PpWui446vDl5Pd8PtRYkr3q6K4+Qa5A=="
+ "resolved" "https://registry.npmmirror.com/countup.js/-/countup.js-1.9.3.tgz"
+ "version" "1.9.3"
-crypto-js@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz"
- integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
+"crypto-js@^4.1.1":
+ "integrity" "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
+ "resolved" "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz"
+ "version" "4.1.1"
-csstype@^3.1.3:
- version "3.1.3"
- resolved "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz"
- integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
+"csstype@^3.1.3":
+ "integrity" "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
+ "resolved" "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz"
+ "version" "3.1.3"
-d@^1.0.1, d@1:
- version "1.0.1"
- resolved "https://registry.npmmirror.com/d/-/d-1.0.1.tgz"
- integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==
+"d@^1.0.1", "d@1":
+ "integrity" "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA=="
+ "resolved" "https://registry.npmmirror.com/d/-/d-1.0.1.tgz"
+ "version" "1.0.1"
dependencies:
- es5-ext "^0.10.50"
- type "^1.0.1"
+ "es5-ext" "^0.10.50"
+ "type" "^1.0.1"
-dayjs@^1.10.4, dayjs@^1.10.6, dayjs@^1.11.3:
- version "1.11.7"
- resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz"
- integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==
+"dayjs@^1.10.4", "dayjs@^1.10.6", "dayjs@^1.11.3":
+ "integrity" "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ=="
+ "resolved" "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.7.tgz"
+ "version" "1.11.7"
-debug@^4.3.3:
- version "4.3.4"
- resolved "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz"
- integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
+"debug@^4.3.3":
+ "integrity" "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
+ "resolved" "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz"
+ "version" "4.3.4"
dependencies:
- ms "2.1.2"
+ "ms" "2.1.2"
-debug@=3.1.0:
- version "3.1.0"
- resolved "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz"
- integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
+"debug@=3.1.0":
+ "integrity" "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g=="
+ "resolved" "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz"
+ "version" "3.1.0"
dependencies:
- ms "2.0.0"
+ "ms" "2.0.0"
-diagram-js-direct-editing@^2.0.0:
- version "2.1.1"
- resolved "https://registry.npmmirror.com/diagram-js-direct-editing/-/diagram-js-direct-editing-2.1.1.tgz"
- integrity sha512-XuNWIpcuUMayp/MZhNRLyJT7zikSvGr8RZWNrHsDpwOIjoRgfYmmJp8WRFCIflMSBHjFg62sqLNM/nXRKrZ2qw==
+"diagram-js-direct-editing@^2.0.0":
+ "integrity" "sha512-XuNWIpcuUMayp/MZhNRLyJT7zikSvGr8RZWNrHsDpwOIjoRgfYmmJp8WRFCIflMSBHjFg62sqLNM/nXRKrZ2qw=="
+ "resolved" "https://registry.npmmirror.com/diagram-js-direct-editing/-/diagram-js-direct-editing-2.1.1.tgz"
+ "version" "2.1.1"
dependencies:
- min-dash "^4.0.0"
- min-dom "^4.0.2"
+ "min-dash" "^4.0.0"
+ "min-dom" "^4.0.2"
-diagram-js@*, diagram-js@^11.9.1:
- version "11.13.1"
- resolved "https://registry.npmmirror.com/diagram-js/-/diagram-js-11.13.1.tgz"
- integrity sha512-6kO0rBN6aBIQiMELfv1oX2Ohes/brlIPuOVZUYAioeWM0EyuazhAXgHeq8iKFt29daU9NGRr4n78esGx8QjtjQ==
+"diagram-js@*", "diagram-js@^11.9.1":
+ "integrity" "sha512-6kO0rBN6aBIQiMELfv1oX2Ohes/brlIPuOVZUYAioeWM0EyuazhAXgHeq8iKFt29daU9NGRr4n78esGx8QjtjQ=="
+ "resolved" "https://registry.npmmirror.com/diagram-js/-/diagram-js-11.13.1.tgz"
+ "version" "11.13.1"
dependencies:
"@bpmn-io/diagram-js-ui" "^0.2.2"
- clsx "^1.2.1"
- didi "^9.0.2"
- hammerjs "^2.0.1"
- inherits-browser "^0.1.0"
- min-dash "^4.1.0"
- min-dom "^4.1.0"
- object-refs "^0.3.0"
- path-intersection "^2.2.1"
- tiny-svg "^3.0.1"
+ "clsx" "^1.2.1"
+ "didi" "^9.0.2"
+ "hammerjs" "^2.0.1"
+ "inherits-browser" "^0.1.0"
+ "min-dash" "^4.1.0"
+ "min-dom" "^4.1.0"
+ "object-refs" "^0.3.0"
+ "path-intersection" "^2.2.1"
+ "tiny-svg" "^3.0.1"
-didi@^9.0.2:
- version "9.0.2"
- resolved "https://registry.npmmirror.com/didi/-/didi-9.0.2.tgz"
- integrity sha512-q2+aj+lnJcUweV7A9pdUrwFr4LHVmRPwTmQLtHPFz4aT7IBoryN6Iy+jmFku+oIzr5ebBkvtBCOb87+dJhb7bg==
+"didi@^9.0.2":
+ "integrity" "sha512-q2+aj+lnJcUweV7A9pdUrwFr4LHVmRPwTmQLtHPFz4aT7IBoryN6Iy+jmFku+oIzr5ebBkvtBCOb87+dJhb7bg=="
+ "resolved" "https://registry.npmmirror.com/didi/-/didi-9.0.2.tgz"
+ "version" "9.0.2"
-dom7@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmmirror.com/dom7/-/dom7-3.0.0.tgz"
- integrity sha512-oNlcUdHsC4zb7Msx7JN3K0Nro1dzJ48knvBOnDPKJ2GV9wl1i5vydJZUSyOfrkKFDZEud/jBsTk92S/VGSAe/g==
+"dom7@^3.0.0":
+ "integrity" "sha512-oNlcUdHsC4zb7Msx7JN3K0Nro1dzJ48knvBOnDPKJ2GV9wl1i5vydJZUSyOfrkKFDZEud/jBsTk92S/VGSAe/g=="
+ "resolved" "https://registry.npmmirror.com/dom7/-/dom7-3.0.0.tgz"
+ "version" "3.0.0"
dependencies:
- ssr-window "^3.0.0-alpha.1"
+ "ssr-window" "^3.0.0-alpha.1"
-domify@^1.4.1:
- version "1.4.2"
- resolved "https://registry.npmmirror.com/domify/-/domify-1.4.2.tgz"
- integrity sha512-m4yreHcUWHBncGVV7U+yQzc12vIlq0jMrtHZ5mW6dQMiL/7skSYNVX9wqKwOtyO9SGCgevrAFEgOCAHmamHTUA==
+"domify@^1.4.1":
+ "integrity" "sha512-m4yreHcUWHBncGVV7U+yQzc12vIlq0jMrtHZ5mW6dQMiL/7skSYNVX9wqKwOtyO9SGCgevrAFEgOCAHmamHTUA=="
+ "resolved" "https://registry.npmmirror.com/domify/-/domify-1.4.2.tgz"
+ "version" "1.4.2"
-element-plus@^2.7.3, element-plus@>=2.2.0:
- version "2.7.3"
- resolved "https://registry.npmjs.org/element-plus/-/element-plus-2.7.3.tgz"
- integrity sha512-OaqY1kQ2xzNyRFyge3fzM7jqMwux+464RBEqd+ybRV9xPiGxtgnj/sVK4iEbnKnzQIa9XK03DOIFzoToUhu1DA==
+"element-plus@^2.7.3", "element-plus@>=2.2.0":
+ "integrity" "sha512-OaqY1kQ2xzNyRFyge3fzM7jqMwux+464RBEqd+ybRV9xPiGxtgnj/sVK4iEbnKnzQIa9XK03DOIFzoToUhu1DA=="
+ "resolved" "https://registry.npmjs.org/element-plus/-/element-plus-2.7.3.tgz"
+ "version" "2.7.3"
dependencies:
"@ctrl/tinycolor" "^3.4.1"
"@element-plus/icons-vue" "^2.3.1"
@@ -708,50 +708,50 @@
"@types/lodash" "^4.14.182"
"@types/lodash-es" "^4.17.6"
"@vueuse/core" "^9.1.0"
- async-validator "^4.2.5"
- dayjs "^1.11.3"
- escape-html "^1.0.3"
- lodash "^4.17.21"
- lodash-es "^4.17.21"
- lodash-unified "^1.0.2"
- memoize-one "^6.0.0"
- normalize-wheel-es "^1.2.0"
+ "async-validator" "^4.2.5"
+ "dayjs" "^1.11.3"
+ "escape-html" "^1.0.3"
+ "lodash" "^4.17.21"
+ "lodash-es" "^4.17.21"
+ "lodash-unified" "^1.0.2"
+ "memoize-one" "^6.0.0"
+ "normalize-wheel-es" "^1.2.0"
-entities@^4.5.0:
- version "4.5.0"
- resolved "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
- integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
+"entities@^4.5.0":
+ "integrity" "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
+ "resolved" "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
+ "version" "4.5.0"
-es5-ext@^0.10.35, es5-ext@^0.10.50, es5-ext@~0.10.14:
- version "0.10.62"
- resolved "https://registry.npmmirror.com/es5-ext/-/es5-ext-0.10.62.tgz"
- integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==
+"es5-ext@^0.10.35", "es5-ext@^0.10.50", "es5-ext@~0.10.14":
+ "integrity" "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA=="
+ "resolved" "https://registry.npmmirror.com/es5-ext/-/es5-ext-0.10.62.tgz"
+ "version" "0.10.62"
dependencies:
- es6-iterator "^2.0.3"
- es6-symbol "^3.1.3"
- next-tick "^1.1.0"
+ "es6-iterator" "^2.0.3"
+ "es6-symbol" "^3.1.3"
+ "next-tick" "^1.1.0"
-es6-iterator@^2.0.3:
- version "2.0.3"
- resolved "https://registry.npmmirror.com/es6-iterator/-/es6-iterator-2.0.3.tgz"
- integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==
+"es6-iterator@^2.0.3":
+ "integrity" "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g=="
+ "resolved" "https://registry.npmmirror.com/es6-iterator/-/es6-iterator-2.0.3.tgz"
+ "version" "2.0.3"
dependencies:
- d "1"
- es5-ext "^0.10.35"
- es6-symbol "^3.1.1"
+ "d" "1"
+ "es5-ext" "^0.10.35"
+ "es6-symbol" "^3.1.1"
-es6-symbol@^3.1.1, es6-symbol@^3.1.3:
- version "3.1.3"
- resolved "https://registry.npmmirror.com/es6-symbol/-/es6-symbol-3.1.3.tgz"
- integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==
+"es6-symbol@^3.1.1", "es6-symbol@^3.1.3":
+ "integrity" "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA=="
+ "resolved" "https://registry.npmmirror.com/es6-symbol/-/es6-symbol-3.1.3.tgz"
+ "version" "3.1.3"
dependencies:
- d "^1.0.1"
- ext "^1.1.2"
+ "d" "^1.0.1"
+ "ext" "^1.1.2"
-esbuild@^0.20.1:
- version "0.20.2"
- resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz"
- integrity sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==
+"esbuild@^0.20.1":
+ "integrity" "sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g=="
+ "resolved" "https://registry.npmjs.org/esbuild/-/esbuild-0.20.2.tgz"
+ "version" "0.20.2"
optionalDependencies:
"@esbuild/aix-ppc64" "0.20.2"
"@esbuild/android-arm" "0.20.2"
@@ -777,506 +777,511 @@
"@esbuild/win32-ia32" "0.20.2"
"@esbuild/win32-x64" "0.20.2"
-escape-html@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz"
- integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
+"escape-html@^1.0.3":
+ "integrity" "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
+ "resolved" "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz"
+ "version" "1.0.3"
-escape-string-regexp@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz"
- integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==
+"escape-string-regexp@^5.0.0":
+ "integrity" "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="
+ "resolved" "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz"
+ "version" "5.0.0"
-estree-walker@^2.0.2:
- version "2.0.2"
- resolved "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz"
- integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
+"estree-walker@^2.0.2":
+ "integrity" "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
+ "resolved" "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz"
+ "version" "2.0.2"
-event-emitter@^0.3.5:
- version "0.3.5"
- resolved "https://registry.npmmirror.com/event-emitter/-/event-emitter-0.3.5.tgz"
- integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==
+"event-emitter@^0.3.5":
+ "integrity" "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA=="
+ "resolved" "https://registry.npmmirror.com/event-emitter/-/event-emitter-0.3.5.tgz"
+ "version" "0.3.5"
dependencies:
- d "1"
- es5-ext "~0.10.14"
+ "d" "1"
+ "es5-ext" "~0.10.14"
-ext@^1.1.2:
- version "1.7.0"
- resolved "https://registry.npmmirror.com/ext/-/ext-1.7.0.tgz"
- integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==
+"ext@^1.1.2":
+ "integrity" "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw=="
+ "resolved" "https://registry.npmmirror.com/ext/-/ext-1.7.0.tgz"
+ "version" "1.7.0"
dependencies:
- type "^2.7.2"
+ "type" "^2.7.2"
-fast-glob@^3.2.12:
- version "3.2.12"
- resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz"
- integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
+"fast-glob@^3.2.12":
+ "integrity" "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w=="
+ "resolved" "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz"
+ "version" "3.2.12"
dependencies:
"@nodelib/fs.stat" "^2.0.2"
"@nodelib/fs.walk" "^1.2.3"
- glob-parent "^5.1.2"
- merge2 "^1.3.0"
- micromatch "^4.0.4"
+ "glob-parent" "^5.1.2"
+ "merge2" "^1.3.0"
+ "micromatch" "^4.0.4"
-fastq@^1.6.0:
- version "1.16.0"
- resolved "https://registry.npmmirror.com/fastq/-/fastq-1.16.0.tgz"
- integrity sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==
+"fastq@^1.6.0":
+ "integrity" "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA=="
+ "resolved" "https://registry.npmmirror.com/fastq/-/fastq-1.16.0.tgz"
+ "version" "1.16.0"
dependencies:
- reusify "^1.0.4"
+ "reusify" "^1.0.4"
-fill-range@^7.0.1:
- version "7.0.1"
- resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz"
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
+"fill-range@^7.0.1":
+ "integrity" "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ=="
+ "resolved" "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz"
+ "version" "7.0.1"
dependencies:
- to-regex-range "^5.0.1"
+ "to-regex-range" "^5.0.1"
-follow-redirects@^1.14.0:
- version "1.15.4"
- resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.4.tgz"
- integrity sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==
+"follow-redirects@^1.14.0":
+ "integrity" "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw=="
+ "resolved" "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.4.tgz"
+ "version" "1.15.4"
-follow-redirects@1.5.10:
- version "1.5.10"
- resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.5.10.tgz"
- integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==
+"follow-redirects@1.5.10":
+ "integrity" "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ=="
+ "resolved" "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.5.10.tgz"
+ "version" "1.5.10"
dependencies:
- debug "=3.1.0"
+ "debug" "=3.1.0"
-fs-extra@^10.0.0:
- version "10.1.0"
- resolved "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz"
- integrity sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==
+"fs-extra@^10.0.0":
+ "integrity" "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ=="
+ "resolved" "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz"
+ "version" "10.1.0"
dependencies:
- graceful-fs "^4.2.0"
- jsonfile "^6.0.1"
- universalify "^2.0.0"
+ "graceful-fs" "^4.2.0"
+ "jsonfile" "^6.0.1"
+ "universalify" "^2.0.0"
-fsevents@~2.3.2, fsevents@~2.3.3:
- version "2.3.3"
- resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz"
- integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
-
-glob-parent@^5.1.2, glob-parent@~5.1.2:
- version "5.1.2"
- resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
+"glob-parent@^5.1.2", "glob-parent@~5.1.2":
+ "integrity" "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="
+ "resolved" "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz"
+ "version" "5.1.2"
dependencies:
- is-glob "^4.0.1"
+ "is-glob" "^4.0.1"
-graceful-fs@^4.1.6, graceful-fs@^4.2.0:
- version "4.2.11"
- resolved "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz"
- integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
+"graceful-fs@^4.1.6", "graceful-fs@^4.2.0":
+ "integrity" "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ "resolved" "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz"
+ "version" "4.2.11"
-hammerjs@^2.0.1:
- version "2.0.8"
- resolved "https://registry.npmmirror.com/hammerjs/-/hammerjs-2.0.8.tgz"
- integrity sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ==
+"hammerjs@^2.0.1":
+ "integrity" "sha512-tSQXBXS/MWQOn/RKckawJ61vvsDpCom87JgxiYdGwHdOa0ht0vzUWDlfioofFCRU0L+6NGDt6XzbgoJvZkMeRQ=="
+ "resolved" "https://registry.npmmirror.com/hammerjs/-/hammerjs-2.0.8.tgz"
+ "version" "2.0.8"
-has-flag@^4.0.0:
- version "4.0.0"
- resolved "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz"
- integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
+"has-flag@^4.0.0":
+ "integrity" "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
+ "resolved" "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz"
+ "version" "4.0.0"
-htm@^3.1.1:
- version "3.1.1"
- resolved "https://registry.npmmirror.com/htm/-/htm-3.1.1.tgz"
- integrity sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ==
+"htm@^3.1.1":
+ "integrity" "sha512-983Vyg8NwUE7JkZ6NmOqpCZ+sh1bKv2iYTlUkzlWmA5JD2acKoxd4KVxbMmxX/85mtfdnDmTFoNKcg5DGAvxNQ=="
+ "resolved" "https://registry.npmmirror.com/htm/-/htm-3.1.1.tgz"
+ "version" "3.1.1"
-html-void-elements@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmmirror.com/html-void-elements/-/html-void-elements-2.0.1.tgz"
- integrity sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A==
+"html-void-elements@^2.0.0":
+ "integrity" "sha512-0quDb7s97CfemeJAnW9wC0hw78MtW7NU3hqtCD75g2vFlDLt36llsYD7uB7SUzojLMP24N5IatXf7ylGXiGG9A=="
+ "resolved" "https://registry.npmmirror.com/html-void-elements/-/html-void-elements-2.0.1.tgz"
+ "version" "2.0.1"
-i18next@^20.4.0:
- version "20.6.1"
- resolved "https://registry.npmmirror.com/i18next/-/i18next-20.6.1.tgz"
- integrity sha512-yCMYTMEJ9ihCwEQQ3phLo7I/Pwycf8uAx+sRHwwk5U9Aui/IZYgQRyMqXafQOw5QQ7DM1Z+WyEXWIqSuJHhG2A==
+"i18next@^20.4.0":
+ "integrity" "sha512-yCMYTMEJ9ihCwEQQ3phLo7I/Pwycf8uAx+sRHwwk5U9Aui/IZYgQRyMqXafQOw5QQ7DM1Z+WyEXWIqSuJHhG2A=="
+ "resolved" "https://registry.npmmirror.com/i18next/-/i18next-20.6.1.tgz"
+ "version" "20.6.1"
dependencies:
"@babel/runtime" "^7.12.0"
-ids@^1.0.0:
- version "1.0.5"
- resolved "https://registry.npmmirror.com/ids/-/ids-1.0.5.tgz"
- integrity sha512-XQ0yom/4KWTL29sLG+tyuycy7UmeaM/79GRtSJq6IG9cJGIPeBz5kwDCguie3TwxaMNIc3WtPi0cTa1XYHicpw==
+"ids@^1.0.0":
+ "integrity" "sha512-XQ0yom/4KWTL29sLG+tyuycy7UmeaM/79GRtSJq6IG9cJGIPeBz5kwDCguie3TwxaMNIc3WtPi0cTa1XYHicpw=="
+ "resolved" "https://registry.npmmirror.com/ids/-/ids-1.0.5.tgz"
+ "version" "1.0.5"
-immer@^9.0.6:
- version "9.0.21"
- resolved "https://registry.npmmirror.com/immer/-/immer-9.0.21.tgz"
- integrity sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==
+"immer@^9.0.6":
+ "integrity" "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA=="
+ "resolved" "https://registry.npmmirror.com/immer/-/immer-9.0.21.tgz"
+ "version" "9.0.21"
-immutable@^4.0.0:
- version "4.3.4"
- resolved "https://registry.npmmirror.com/immutable/-/immutable-4.3.4.tgz"
- integrity sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA==
+"immutable@^4.0.0":
+ "integrity" "sha512-fsXeu4J4i6WNWSikpI88v/PcVflZz+6kMhUfIwc5SY+poQRPnaf5V7qds6SUyUN3cVxEzuCab7QIoLOQ+DQ1wA=="
+ "resolved" "https://registry.npmmirror.com/immutable/-/immutable-4.3.4.tgz"
+ "version" "4.3.4"
-inherits-browser@^0.1.0:
- version "0.1.0"
- resolved "https://registry.npmmirror.com/inherits-browser/-/inherits-browser-0.1.0.tgz"
- integrity sha512-CJHHvW3jQ6q7lzsXPpapLdMx5hDpSF3FSh45pwsj6bKxJJ8Nl8v43i5yXnr3BdfOimGHKyniewQtnAIp3vyJJw==
+"inherits-browser@^0.1.0":
+ "integrity" "sha512-CJHHvW3jQ6q7lzsXPpapLdMx5hDpSF3FSh45pwsj6bKxJJ8Nl8v43i5yXnr3BdfOimGHKyniewQtnAIp3vyJJw=="
+ "resolved" "https://registry.npmmirror.com/inherits-browser/-/inherits-browser-0.1.0.tgz"
+ "version" "0.1.0"
-is-binary-path@~2.1.0:
- version "2.1.0"
- resolved "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz"
- integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
+"is-binary-path@~2.1.0":
+ "integrity" "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw=="
+ "resolved" "https://registry.npmmirror.com/is-binary-path/-/is-binary-path-2.1.0.tgz"
+ "version" "2.1.0"
dependencies:
- binary-extensions "^2.0.0"
+ "binary-extensions" "^2.0.0"
-is-buffer@^2.0.2:
- version "2.0.5"
- resolved "https://registry.npmmirror.com/is-buffer/-/is-buffer-2.0.5.tgz"
- integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==
+"is-buffer@^2.0.2":
+ "integrity" "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ=="
+ "resolved" "https://registry.npmmirror.com/is-buffer/-/is-buffer-2.0.5.tgz"
+ "version" "2.0.5"
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz"
- integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
+"is-extglob@^2.1.1":
+ "integrity" "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="
+ "resolved" "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz"
+ "version" "2.1.1"
-is-glob@^4.0.1, is-glob@~4.0.1:
- version "4.0.3"
- resolved "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
+"is-glob@^4.0.1", "is-glob@~4.0.1":
+ "integrity" "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="
+ "resolved" "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz"
+ "version" "4.0.3"
dependencies:
- is-extglob "^2.1.1"
+ "is-extglob" "^2.1.1"
-is-hotkey@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmmirror.com/is-hotkey/-/is-hotkey-0.2.0.tgz"
- integrity sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw==
+"is-hotkey@^0.2.0":
+ "integrity" "sha512-UknnZK4RakDmTgz4PI1wIph5yxSs/mvChWs9ifnlXsKuXgWmOkY/hAE0H/k2MIqH0RlRye0i1oC07MCRSD28Mw=="
+ "resolved" "https://registry.npmmirror.com/is-hotkey/-/is-hotkey-0.2.0.tgz"
+ "version" "0.2.0"
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
+"is-number@^7.0.0":
+ "integrity" "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+ "resolved" "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz"
+ "version" "7.0.0"
-is-plain-object@^5.0.0:
- version "5.0.0"
- resolved "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-5.0.0.tgz"
- integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
+"is-plain-object@^5.0.0":
+ "integrity" "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
+ "resolved" "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-5.0.0.tgz"
+ "version" "5.0.0"
-is-url@^1.2.4:
- version "1.2.4"
- resolved "https://registry.npmmirror.com/is-url/-/is-url-1.2.4.tgz"
- integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==
+"is-url@^1.2.4":
+ "integrity" "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww=="
+ "resolved" "https://registry.npmmirror.com/is-url/-/is-url-1.2.4.tgz"
+ "version" "1.2.4"
-js-base64@^3.7.4:
- version "3.7.5"
- resolved "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.5.tgz"
- integrity sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA==
+"js-base64@^3.7.4":
+ "integrity" "sha512-3MEt5DTINKqfScXKfJFrRbxkrnk2AxPWGBL/ycjz4dK8iqiSJ06UxD8jh8xuh6p10TX4t2+7FsBYVxxQbMg+qA=="
+ "resolved" "https://registry.npmmirror.com/js-base64/-/js-base64-3.7.5.tgz"
+ "version" "3.7.5"
-js-cookie@^3.0.0:
- version "3.0.5"
- resolved "https://registry.npmmirror.com/js-cookie/-/js-cookie-3.0.5.tgz"
- integrity sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==
+"js-cookie@^3.0.0":
+ "integrity" "sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw=="
+ "resolved" "https://registry.npmmirror.com/js-cookie/-/js-cookie-3.0.5.tgz"
+ "version" "3.0.5"
-js-md5@^0.7.3:
- version "0.7.3"
- resolved "https://registry.npmmirror.com/js-md5/-/js-md5-0.7.3.tgz"
- integrity sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ==
+"js-md5@^0.7.3":
+ "integrity" "sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ=="
+ "resolved" "https://registry.npmmirror.com/js-md5/-/js-md5-0.7.3.tgz"
+ "version" "0.7.3"
-jsbn@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmmirror.com/jsbn/-/jsbn-1.1.0.tgz"
- integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==
+"jsbn@^1.1.0":
+ "integrity" "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A=="
+ "resolved" "https://registry.npmmirror.com/jsbn/-/jsbn-1.1.0.tgz"
+ "version" "1.1.0"
-jsonc-parser@^3.2.0:
- version "3.2.0"
- resolved "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz"
- integrity sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==
+"jsonc-parser@^3.2.0":
+ "integrity" "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w=="
+ "resolved" "https://registry.npmmirror.com/jsonc-parser/-/jsonc-parser-3.2.0.tgz"
+ "version" "3.2.0"
-jsonfile@^6.0.1:
- version "6.1.0"
- resolved "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz"
- integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
+"jsonfile@^6.0.1":
+ "integrity" "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ=="
+ "resolved" "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz"
+ "version" "6.1.0"
dependencies:
- universalify "^2.0.0"
+ "universalify" "^2.0.0"
optionalDependencies:
- graceful-fs "^4.1.6"
+ "graceful-fs" "^4.1.6"
-local-pkg@^0.4.2, local-pkg@^0.4.3:
- version "0.4.3"
- resolved "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz"
- integrity sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==
+"local-pkg@^0.4.2", "local-pkg@^0.4.3":
+ "integrity" "sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g=="
+ "resolved" "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.4.3.tgz"
+ "version" "0.4.3"
-lodash-es@*, lodash-es@^4.17.21:
- version "4.17.21"
- resolved "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz"
- integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
+"lodash-es@*", "lodash-es@^4.17.21":
+ "integrity" "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw=="
+ "resolved" "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz"
+ "version" "4.17.21"
-lodash-unified@^1.0.2:
- version "1.0.3"
- resolved "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz"
- integrity sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==
+"lodash-unified@^1.0.2":
+ "integrity" "sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ=="
+ "resolved" "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.3.tgz"
+ "version" "1.0.3"
-lodash.camelcase@^4.3.0:
- version "4.3.0"
- resolved "https://registry.npmmirror.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz"
- integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
+"lodash.camelcase@^4.3.0":
+ "integrity" "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA=="
+ "resolved" "https://registry.npmmirror.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz"
+ "version" "4.3.0"
-lodash.clonedeep@^4.5.0:
- version "4.5.0"
- resolved "https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz"
- integrity sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==
+"lodash.clonedeep@^4.5.0":
+ "integrity" "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ=="
+ "resolved" "https://registry.npmmirror.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz"
+ "version" "4.5.0"
-lodash.debounce@^4.0.8:
- version "4.0.8"
- resolved "https://registry.npmmirror.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz"
- integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
+"lodash.debounce@^4.0.8":
+ "integrity" "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow=="
+ "resolved" "https://registry.npmmirror.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz"
+ "version" "4.0.8"
-lodash.foreach@^4.5.0:
- version "4.5.0"
- resolved "https://registry.npmmirror.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz"
- integrity sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==
+"lodash.foreach@^4.5.0":
+ "integrity" "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ=="
+ "resolved" "https://registry.npmmirror.com/lodash.foreach/-/lodash.foreach-4.5.0.tgz"
+ "version" "4.5.0"
-lodash.isequal@^4.5.0:
- version "4.5.0"
- resolved "https://registry.npmmirror.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz"
- integrity sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==
+"lodash.isequal@^4.5.0":
+ "integrity" "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ=="
+ "resolved" "https://registry.npmmirror.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz"
+ "version" "4.5.0"
-lodash.throttle@^4.1.1:
- version "4.1.1"
- resolved "https://registry.npmmirror.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz"
- integrity sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==
+"lodash.throttle@^4.1.1":
+ "integrity" "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ=="
+ "resolved" "https://registry.npmmirror.com/lodash.throttle/-/lodash.throttle-4.1.1.tgz"
+ "version" "4.1.1"
-lodash.toarray@^4.4.0:
- version "4.4.0"
- resolved "https://registry.npmmirror.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz"
- integrity sha512-QyffEA3i5dma5q2490+SgCvDN0pXLmRGSyAANuVi0HQ01Pkfr9fuoKQW8wm1wGBnJITs/mS7wQvS6VshUEBFCw==
+"lodash.toarray@^4.4.0":
+ "integrity" "sha512-QyffEA3i5dma5q2490+SgCvDN0pXLmRGSyAANuVi0HQ01Pkfr9fuoKQW8wm1wGBnJITs/mS7wQvS6VshUEBFCw=="
+ "resolved" "https://registry.npmmirror.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz"
+ "version" "4.4.0"
-lodash@*, lodash@^4.17.21:
- version "4.17.21"
- resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz"
- integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+"lodash@*", "lodash@^4.17.21":
+ "integrity" "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
+ "resolved" "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz"
+ "version" "4.17.21"
-magic-string@^0.25.7:
- version "0.25.9"
- resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz"
- integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==
+"magic-string@^0.25.7":
+ "integrity" "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ=="
+ "resolved" "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz"
+ "version" "0.25.9"
dependencies:
- sourcemap-codec "^1.4.8"
+ "sourcemap-codec" "^1.4.8"
-magic-string@^0.26.7:
- version "0.26.7"
- resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.26.7.tgz"
- integrity sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==
+"magic-string@^0.26.7":
+ "integrity" "sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow=="
+ "resolved" "https://registry.npmmirror.com/magic-string/-/magic-string-0.26.7.tgz"
+ "version" "0.26.7"
dependencies:
- sourcemap-codec "^1.4.8"
+ "sourcemap-codec" "^1.4.8"
-magic-string@^0.27.0:
- version "0.27.0"
- resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz"
- integrity sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==
+"magic-string@^0.27.0":
+ "integrity" "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA=="
+ "resolved" "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz"
+ "version" "0.27.0"
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.13"
-magic-string@^0.30.10:
- version "0.30.10"
- resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz"
- integrity sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==
+"magic-string@^0.30.10":
+ "integrity" "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ=="
+ "resolved" "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz"
+ "version" "0.30.10"
dependencies:
"@jridgewell/sourcemap-codec" "^1.4.15"
-memoize-one@^6.0.0:
- version "6.0.0"
- resolved "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz"
- integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==
+"memoize-one@^6.0.0":
+ "integrity" "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw=="
+ "resolved" "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz"
+ "version" "6.0.0"
-merge2@^1.3.0:
- version "1.4.1"
- resolved "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz"
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
+"merge2@^1.3.0":
+ "integrity" "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
+ "resolved" "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz"
+ "version" "1.4.1"
-micromatch@^4.0.4:
- version "4.0.5"
- resolved "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz"
- integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
+"micromatch@^4.0.4":
+ "integrity" "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA=="
+ "resolved" "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz"
+ "version" "4.0.5"
dependencies:
- braces "^3.0.2"
- picomatch "^2.3.1"
+ "braces" "^3.0.2"
+ "picomatch" "^2.3.1"
-mime-match@^1.0.2:
- version "1.0.2"
- resolved "https://registry.npmmirror.com/mime-match/-/mime-match-1.0.2.tgz"
- integrity sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg==
+"mime-match@^1.0.2":
+ "integrity" "sha512-VXp/ugGDVh3eCLOBCiHZMYWQaTNUHv2IJrut+yXA6+JbLPXHglHwfS/5A5L0ll+jkCY7fIzRJcH6OIunF+c6Cg=="
+ "resolved" "https://registry.npmmirror.com/mime-match/-/mime-match-1.0.2.tgz"
+ "version" "1.0.2"
dependencies:
- wildcard "^1.1.0"
+ "wildcard" "^1.1.0"
-min-dash@^4.0.0, min-dash@^4.1.0:
- version "4.1.1"
- resolved "https://registry.npmmirror.com/min-dash/-/min-dash-4.1.1.tgz"
- integrity sha512-r+Z6vxXLSGr+otyCPx9NKPCSixw7LdfZREPTmqfd2a/d5D6w4NCdOxRJs+HyFO6v2pQkyHroGSiINWECK+OWPg==
+"min-dash@^4.0.0", "min-dash@^4.1.0":
+ "integrity" "sha512-r+Z6vxXLSGr+otyCPx9NKPCSixw7LdfZREPTmqfd2a/d5D6w4NCdOxRJs+HyFO6v2pQkyHroGSiINWECK+OWPg=="
+ "resolved" "https://registry.npmmirror.com/min-dash/-/min-dash-4.1.1.tgz"
+ "version" "4.1.1"
-min-dom@^4.0.2, min-dom@^4.0.3, min-dom@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmmirror.com/min-dom/-/min-dom-4.1.0.tgz"
- integrity sha512-1lj1EyoSwY/UmTeT/hhPiZTsq+vK9D+8FAJ/53iK5jT1otkG9rJTixSKdjmTieEvdfES+sKbbTptzaQJhnacjA==
+"min-dom@^4.0.2", "min-dom@^4.0.3", "min-dom@^4.1.0":
+ "integrity" "sha512-1lj1EyoSwY/UmTeT/hhPiZTsq+vK9D+8FAJ/53iK5jT1otkG9rJTixSKdjmTieEvdfES+sKbbTptzaQJhnacjA=="
+ "resolved" "https://registry.npmmirror.com/min-dom/-/min-dom-4.1.0.tgz"
+ "version" "4.1.0"
dependencies:
- component-event "^0.2.1"
- domify "^1.4.1"
- min-dash "^4.0.0"
+ "component-event" "^0.2.1"
+ "domify" "^1.4.1"
+ "min-dash" "^4.0.0"
-mlly@^1.1.0, mlly@^1.2.0:
- version "1.4.2"
- resolved "https://registry.npmmirror.com/mlly/-/mlly-1.4.2.tgz"
- integrity sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==
+"mitt@^3.0.1":
+ "integrity" "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw=="
+ "resolved" "https://registry.npmmirror.com/mitt/-/mitt-3.0.1.tgz"
+ "version" "3.0.1"
+
+"mlly@^1.1.0", "mlly@^1.2.0":
+ "integrity" "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg=="
+ "resolved" "https://registry.npmmirror.com/mlly/-/mlly-1.4.2.tgz"
+ "version" "1.4.2"
dependencies:
- acorn "^8.10.0"
- pathe "^1.1.1"
- pkg-types "^1.0.3"
- ufo "^1.3.0"
+ "acorn" "^8.10.0"
+ "pathe" "^1.1.1"
+ "pkg-types" "^1.0.3"
+ "ufo" "^1.3.0"
-moddle-xml@^10.1.0:
- version "10.1.0"
- resolved "https://registry.npmmirror.com/moddle-xml/-/moddle-xml-10.1.0.tgz"
- integrity sha512-erWckwLt+dYskewKXJso9u+aAZ5172lOiYxSOqKCPTy7L/xmqH1PoeoA7eVC7oJTt3PqF5TkZzUmbjGH6soQBg==
+"moddle-xml@^10.1.0":
+ "integrity" "sha512-erWckwLt+dYskewKXJso9u+aAZ5172lOiYxSOqKCPTy7L/xmqH1PoeoA7eVC7oJTt3PqF5TkZzUmbjGH6soQBg=="
+ "resolved" "https://registry.npmmirror.com/moddle-xml/-/moddle-xml-10.1.0.tgz"
+ "version" "10.1.0"
dependencies:
- min-dash "^4.0.0"
- moddle "^6.0.0"
- saxen "^8.1.2"
+ "min-dash" "^4.0.0"
+ "moddle" "^6.0.0"
+ "saxen" "^8.1.2"
-moddle@^6.0.0, moddle@^6.2.3:
- version "6.2.3"
- resolved "https://registry.npmmirror.com/moddle/-/moddle-6.2.3.tgz"
- integrity sha512-bLVN+ZHL3aKnhxc19XtjUfvdJsS3EsiEJC7bT6YPD11qYmTzvsxrGgyYz1Ouof7TZuGw0lDJ1OLmEnxcpQWk3Q==
+"moddle@^6.0.0", "moddle@^6.2.3":
+ "integrity" "sha512-bLVN+ZHL3aKnhxc19XtjUfvdJsS3EsiEJC7bT6YPD11qYmTzvsxrGgyYz1Ouof7TZuGw0lDJ1OLmEnxcpQWk3Q=="
+ "resolved" "https://registry.npmmirror.com/moddle/-/moddle-6.2.3.tgz"
+ "version" "6.2.3"
dependencies:
- min-dash "^4.0.0"
+ "min-dash" "^4.0.0"
-monaco-editor@0.36.1:
- version "0.36.1"
- resolved "https://registry.npmmirror.com/monaco-editor/-/monaco-editor-0.36.1.tgz"
- integrity sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg==
+"monaco-editor@0.36.1":
+ "integrity" "sha512-/CaclMHKQ3A6rnzBzOADfwdSJ25BFoFT0Emxsc4zYVyav5SkK9iA6lEtIeuN/oRYbwPgviJT+t3l+sjFa28jYg=="
+ "resolved" "https://registry.npmmirror.com/monaco-editor/-/monaco-editor-0.36.1.tgz"
+ "version" "0.36.1"
-ms@2.0.0:
- version "2.0.0"
- resolved "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz"
- integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
+"ms@2.0.0":
+ "integrity" "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
+ "resolved" "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz"
+ "version" "2.0.0"
-ms@2.1.2:
- version "2.1.2"
- resolved "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz"
- integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
+"ms@2.1.2":
+ "integrity" "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
+ "resolved" "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz"
+ "version" "2.1.2"
-namespace-emitter@^2.0.1:
- version "2.0.1"
- resolved "https://registry.npmmirror.com/namespace-emitter/-/namespace-emitter-2.0.1.tgz"
- integrity sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g==
+"namespace-emitter@^2.0.1":
+ "integrity" "sha512-N/sMKHniSDJBjfrkbS/tpkPj4RAbvW3mr8UAzvlMHyun93XEm83IAvhWtJVHo+RHn/oO8Job5YN4b+wRjSVp5g=="
+ "resolved" "https://registry.npmmirror.com/namespace-emitter/-/namespace-emitter-2.0.1.tgz"
+ "version" "2.0.1"
-nanoid@^3.1.25, nanoid@^3.2.0, nanoid@^3.3.7:
- version "3.3.7"
- resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz"
- integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
+"nanoid@^3.1.25", "nanoid@^3.2.0", "nanoid@^3.3.7":
+ "integrity" "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g=="
+ "resolved" "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz"
+ "version" "3.3.7"
-next-tick@^1.1.0:
- version "1.1.0"
- resolved "https://registry.npmmirror.com/next-tick/-/next-tick-1.1.0.tgz"
- integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==
+"next-tick@^1.1.0":
+ "integrity" "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
+ "resolved" "https://registry.npmmirror.com/next-tick/-/next-tick-1.1.0.tgz"
+ "version" "1.1.0"
-normalize-path@^3.0.0, normalize-path@~3.0.0:
- version "3.0.0"
- resolved "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
+"normalize-path@^3.0.0", "normalize-path@~3.0.0":
+ "integrity" "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="
+ "resolved" "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz"
+ "version" "3.0.0"
-normalize-wheel-es@^1.2.0:
- version "1.2.0"
- resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz"
- integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==
+"normalize-wheel-es@^1.2.0":
+ "integrity" "sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw=="
+ "resolved" "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz"
+ "version" "1.2.0"
-nprogress@^0.2.0:
- version "0.2.0"
- resolved "https://registry.npmmirror.com/nprogress/-/nprogress-0.2.0.tgz"
- integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==
+"nprogress@^0.2.0":
+ "integrity" "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA=="
+ "resolved" "https://registry.npmmirror.com/nprogress/-/nprogress-0.2.0.tgz"
+ "version" "0.2.0"
-object-refs@^0.3.0:
- version "0.3.0"
- resolved "https://registry.npmmirror.com/object-refs/-/object-refs-0.3.0.tgz"
- integrity sha512-eP0ywuoWOaDoiake/6kTJlPJhs+k0qNm4nYRzXLNHj6vh+5M3i9R1epJTdxIPGlhWc4fNRQ7a6XJNCX+/L4FOQ==
+"object-refs@^0.3.0":
+ "integrity" "sha512-eP0ywuoWOaDoiake/6kTJlPJhs+k0qNm4nYRzXLNHj6vh+5M3i9R1epJTdxIPGlhWc4fNRQ7a6XJNCX+/L4FOQ=="
+ "resolved" "https://registry.npmmirror.com/object-refs/-/object-refs-0.3.0.tgz"
+ "version" "0.3.0"
-path-intersection@^2.2.1:
- version "2.2.1"
- resolved "https://registry.npmmirror.com/path-intersection/-/path-intersection-2.2.1.tgz"
- integrity sha512-9u8xvMcSfuOiStv9bPdnRJQhGQXLKurew94n4GPQCdH1nj9QKC9ObbNoIpiRq8skiOBxKkt277PgOoFgAt3/rA==
+"path-intersection@^2.2.1":
+ "integrity" "sha512-9u8xvMcSfuOiStv9bPdnRJQhGQXLKurew94n4GPQCdH1nj9QKC9ObbNoIpiRq8skiOBxKkt277PgOoFgAt3/rA=="
+ "resolved" "https://registry.npmmirror.com/path-intersection/-/path-intersection-2.2.1.tgz"
+ "version" "2.2.1"
-pathe@^1.0.0, pathe@^1.1.0, pathe@^1.1.1:
- version "1.1.1"
- resolved "https://registry.npmmirror.com/pathe/-/pathe-1.1.1.tgz"
- integrity sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==
+"pathe@^1.0.0", "pathe@^1.1.0", "pathe@^1.1.1":
+ "integrity" "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q=="
+ "resolved" "https://registry.npmmirror.com/pathe/-/pathe-1.1.1.tgz"
+ "version" "1.1.1"
-picocolors@^1.0.0:
- version "1.0.1"
- resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz"
- integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==
+"picocolors@^1.0.0":
+ "integrity" "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew=="
+ "resolved" "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz"
+ "version" "1.0.1"
-picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1:
- version "2.3.1"
- resolved "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz"
- integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
+"picomatch@^2.0.4", "picomatch@^2.2.1", "picomatch@^2.3.1":
+ "integrity" "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
+ "resolved" "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz"
+ "version" "2.3.1"
-pkg-types@^1.0.1, pkg-types@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.0.3.tgz"
- integrity sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==
+"pkg-types@^1.0.1", "pkg-types@^1.0.3":
+ "integrity" "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A=="
+ "resolved" "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.0.3.tgz"
+ "version" "1.0.3"
dependencies:
- jsonc-parser "^3.2.0"
- mlly "^1.2.0"
- pathe "^1.1.0"
+ "jsonc-parser" "^3.2.0"
+ "mlly" "^1.2.0"
+ "pathe" "^1.1.0"
-postcss@^8.4.38:
- version "8.4.38"
- resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz"
- integrity sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==
+"postcss@^8.4.38":
+ "integrity" "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A=="
+ "resolved" "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz"
+ "version" "8.4.38"
dependencies:
- nanoid "^3.3.7"
- picocolors "^1.0.0"
- source-map-js "^1.2.0"
+ "nanoid" "^3.3.7"
+ "picocolors" "^1.0.0"
+ "source-map-js" "^1.2.0"
-preact@^10.11.2, preact@^10.5.13:
- version "10.19.3"
- resolved "https://registry.npmmirror.com/preact/-/preact-10.19.3.tgz"
- integrity sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ==
+"preact@^10.11.2", "preact@^10.5.13":
+ "integrity" "sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ=="
+ "resolved" "https://registry.npmmirror.com/preact/-/preact-10.19.3.tgz"
+ "version" "10.19.3"
-prettier@^2.8.7:
- version "2.8.8"
- resolved "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz"
- integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
+"prettier@^2.8.7":
+ "integrity" "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q=="
+ "resolved" "https://registry.npmmirror.com/prettier/-/prettier-2.8.8.tgz"
+ "version" "2.8.8"
-prismjs@^1.23.0:
- version "1.29.0"
- resolved "https://registry.npmmirror.com/prismjs/-/prismjs-1.29.0.tgz"
- integrity sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==
+"prismjs@^1.23.0":
+ "integrity" "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q=="
+ "resolved" "https://registry.npmmirror.com/prismjs/-/prismjs-1.29.0.tgz"
+ "version" "1.29.0"
-queue-microtask@^1.2.2:
- version "1.2.3"
- resolved "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz"
- integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
+"queue-microtask@^1.2.2":
+ "integrity" "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
+ "resolved" "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz"
+ "version" "1.2.3"
-randomcolor@^0.6.2:
- version "0.6.2"
- resolved "https://registry.npmmirror.com/randomcolor/-/randomcolor-0.6.2.tgz"
- integrity sha512-Mn6TbyYpFgwFuQ8KJKqf3bqqY9O1y37/0jgSK/61PUxV4QfIMv0+K2ioq8DfOjkBslcjwSzRfIDEXfzA9aCx7A==
+"randomcolor@^0.6.2":
+ "integrity" "sha512-Mn6TbyYpFgwFuQ8KJKqf3bqqY9O1y37/0jgSK/61PUxV4QfIMv0+K2ioq8DfOjkBslcjwSzRfIDEXfzA9aCx7A=="
+ "resolved" "https://registry.npmmirror.com/randomcolor/-/randomcolor-0.6.2.tgz"
+ "version" "0.6.2"
-readdirp@~3.6.0:
- version "3.6.0"
- resolved "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz"
- integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
+"readdirp@~3.6.0":
+ "integrity" "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="
+ "resolved" "https://registry.npmmirror.com/readdirp/-/readdirp-3.6.0.tgz"
+ "version" "3.6.0"
dependencies:
- picomatch "^2.2.1"
+ "picomatch" "^2.2.1"
-regenerator-runtime@^0.14.0:
- version "0.14.1"
- resolved "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz"
- integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
+"reconnecting-websocket@^4.4.0":
+ "integrity" "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng=="
+ "resolved" "https://registry.npmmirror.com/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz"
+ "version" "4.4.0"
-reusify@^1.0.4:
- version "1.0.4"
- resolved "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz"
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
+"regenerator-runtime@^0.14.0":
+ "integrity" "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw=="
+ "resolved" "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz"
+ "version" "0.14.1"
-rollup@^1.20.0||^2.0.0||^3.0.0||^4.0.0, rollup@^4.13.0:
- version "4.18.0"
- resolved "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz"
- integrity sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==
+"reusify@^1.0.4":
+ "integrity" "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
+ "resolved" "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz"
+ "version" "1.0.4"
+
+"rollup@^1.20.0||^2.0.0||^3.0.0||^4.0.0", "rollup@^4.13.0":
+ "integrity" "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg=="
+ "resolved" "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz"
+ "version" "4.18.0"
dependencies:
"@types/estree" "1.0.5"
optionalDependencies:
@@ -1296,251 +1301,251 @@
"@rollup/rollup-win32-arm64-msvc" "4.18.0"
"@rollup/rollup-win32-ia32-msvc" "4.18.0"
"@rollup/rollup-win32-x64-msvc" "4.18.0"
- fsevents "~2.3.2"
+ "fsevents" "~2.3.2"
-run-parallel@^1.1.9:
- version "1.2.0"
- resolved "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz"
- integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
+"run-parallel@^1.1.9":
+ "integrity" "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA=="
+ "resolved" "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz"
+ "version" "1.2.0"
dependencies:
- queue-microtask "^1.2.2"
+ "queue-microtask" "^1.2.2"
-sass@*, sass@^1.77.2:
- version "1.77.2"
- resolved "https://registry.npmjs.org/sass/-/sass-1.77.2.tgz"
- integrity sha512-eb4GZt1C3avsX3heBNlrc7I09nyT00IUuo4eFhAbeXWU2fvA7oXI53SxODVAA+zgZCk9aunAZgO+losjR3fAwA==
+"sass@*", "sass@^1.77.2":
+ "integrity" "sha512-eb4GZt1C3avsX3heBNlrc7I09nyT00IUuo4eFhAbeXWU2fvA7oXI53SxODVAA+zgZCk9aunAZgO+losjR3fAwA=="
+ "resolved" "https://registry.npmjs.org/sass/-/sass-1.77.2.tgz"
+ "version" "1.77.2"
dependencies:
- chokidar ">=3.0.0 <4.0.0"
- immutable "^4.0.0"
- source-map-js ">=0.6.2 <2.0.0"
+ "chokidar" ">=3.0.0 <4.0.0"
+ "immutable" "^4.0.0"
+ "source-map-js" ">=0.6.2 <2.0.0"
-saxen@^8.1.2:
- version "8.1.2"
- resolved "https://registry.npmmirror.com/saxen/-/saxen-8.1.2.tgz"
- integrity sha512-xUOiiFbc3Ow7p8KMxwsGICPx46ZQvy3+qfNVhrkwfz3Vvq45eGt98Ft5IQaA1R/7Tb5B5MKh9fUR9x3c3nDTxw==
+"saxen@^8.1.2":
+ "integrity" "sha512-xUOiiFbc3Ow7p8KMxwsGICPx46ZQvy3+qfNVhrkwfz3Vvq45eGt98Ft5IQaA1R/7Tb5B5MKh9fUR9x3c3nDTxw=="
+ "resolved" "https://registry.npmmirror.com/saxen/-/saxen-8.1.2.tgz"
+ "version" "8.1.2"
-scroll-into-view-if-needed@^2.2.28:
- version "2.2.31"
- resolved "https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz"
- integrity sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA==
+"scroll-into-view-if-needed@^2.2.28":
+ "integrity" "sha512-dGCXy99wZQivjmjIqihaBQNjryrz5rueJY7eHfTdyWEiR4ttYpsajb14rn9s5d4DY4EcY6+4+U/maARBXJedkA=="
+ "resolved" "https://registry.npmmirror.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.31.tgz"
+ "version" "2.2.31"
dependencies:
- compute-scroll-into-view "^1.0.20"
+ "compute-scroll-into-view" "^1.0.20"
-scule@^1.0.0:
- version "1.1.1"
- resolved "https://registry.npmmirror.com/scule/-/scule-1.1.1.tgz"
- integrity sha512-sHtm/SsIK9BUBI3EFT/Gnp9VoKfY6QLvlkvAE6YK7454IF8FSgJEAnJpVdSC7K5/pjI5NfxhzBLW2JAfYA/shQ==
+"scule@^1.0.0":
+ "integrity" "sha512-sHtm/SsIK9BUBI3EFT/Gnp9VoKfY6QLvlkvAE6YK7454IF8FSgJEAnJpVdSC7K5/pjI5NfxhzBLW2JAfYA/shQ=="
+ "resolved" "https://registry.npmmirror.com/scule/-/scule-1.1.1.tgz"
+ "version" "1.1.1"
-slate-history@^0.66.0:
- version "0.66.0"
- resolved "https://registry.npmmirror.com/slate-history/-/slate-history-0.66.0.tgz"
- integrity sha512-6MWpxGQZiMvSINlCbMW43E2YBSVMCMCIwQfBzGssjWw4kb0qfvj0pIdblWNRQZD0hR6WHP+dHHgGSeVdMWzfng==
+"slate-history@^0.66.0":
+ "integrity" "sha512-6MWpxGQZiMvSINlCbMW43E2YBSVMCMCIwQfBzGssjWw4kb0qfvj0pIdblWNRQZD0hR6WHP+dHHgGSeVdMWzfng=="
+ "resolved" "https://registry.npmmirror.com/slate-history/-/slate-history-0.66.0.tgz"
+ "version" "0.66.0"
dependencies:
- is-plain-object "^5.0.0"
+ "is-plain-object" "^5.0.0"
-slate@^0.72.0, slate@>=0.65.3:
- version "0.72.8"
- resolved "https://registry.npmmirror.com/slate/-/slate-0.72.8.tgz"
- integrity sha512-/nJwTswQgnRurpK+bGJFH1oM7naD5qDmHd89JyiKNT2oOKD8marW0QSBtuFnwEbL5aGCS8AmrhXQgNOsn4osAw==
+"slate@^0.72.0", "slate@>=0.65.3":
+ "integrity" "sha512-/nJwTswQgnRurpK+bGJFH1oM7naD5qDmHd89JyiKNT2oOKD8marW0QSBtuFnwEbL5aGCS8AmrhXQgNOsn4osAw=="
+ "resolved" "https://registry.npmmirror.com/slate/-/slate-0.72.8.tgz"
+ "version" "0.72.8"
dependencies:
- immer "^9.0.6"
- is-plain-object "^5.0.0"
- tiny-warning "^1.0.3"
+ "immer" "^9.0.6"
+ "is-plain-object" "^5.0.0"
+ "tiny-warning" "^1.0.3"
-sm-crypto@^0.3.13:
- version "0.3.13"
- resolved "https://registry.npmmirror.com/sm-crypto/-/sm-crypto-0.3.13.tgz"
- integrity sha512-ztNF+pZq6viCPMA1A6KKu3bgpkmYti5avykRHbcFIdSipFdkVmfUw2CnpM2kBJyppIalqvczLNM3wR8OQ0pT5w==
+"sm-crypto@^0.3.13":
+ "integrity" "sha512-ztNF+pZq6viCPMA1A6KKu3bgpkmYti5avykRHbcFIdSipFdkVmfUw2CnpM2kBJyppIalqvczLNM3wR8OQ0pT5w=="
+ "resolved" "https://registry.npmmirror.com/sm-crypto/-/sm-crypto-0.3.13.tgz"
+ "version" "0.3.13"
dependencies:
- jsbn "^1.1.0"
+ "jsbn" "^1.1.0"
-snabbdom@^3.1.0:
- version "3.5.1"
- resolved "https://registry.npmmirror.com/snabbdom/-/snabbdom-3.5.1.tgz"
- integrity sha512-wHMNIOjkm/YNE5EM3RCbr/+DVgPg6AqQAX1eOxO46zYNvCXjKP5Y865tqQj3EXnaMBjkxmQA5jFuDpDK/dbfiA==
+"snabbdom@^3.1.0":
+ "integrity" "sha512-wHMNIOjkm/YNE5EM3RCbr/+DVgPg6AqQAX1eOxO46zYNvCXjKP5Y865tqQj3EXnaMBjkxmQA5jFuDpDK/dbfiA=="
+ "resolved" "https://registry.npmmirror.com/snabbdom/-/snabbdom-3.5.1.tgz"
+ "version" "3.5.1"
-source-map-js@^1.2.0, "source-map-js@>=0.6.2 <2.0.0":
- version "1.2.0"
- resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz"
- integrity sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==
+"source-map-js@^1.2.0", "source-map-js@>=0.6.2 <2.0.0":
+ "integrity" "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg=="
+ "resolved" "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz"
+ "version" "1.2.0"
-source-map-support@~0.5.20:
- version "0.5.21"
- resolved "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz"
- integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
+"source-map-support@~0.5.20":
+ "integrity" "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w=="
+ "resolved" "https://registry.npmmirror.com/source-map-support/-/source-map-support-0.5.21.tgz"
+ "version" "0.5.21"
dependencies:
- buffer-from "^1.0.0"
- source-map "^0.6.0"
+ "buffer-from" "^1.0.0"
+ "source-map" "^0.6.0"
-source-map@^0.6.0, source-map@0.6.1:
- version "0.6.1"
- resolved "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz"
- integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+"source-map@^0.6.0", "source-map@0.6.1":
+ "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
+ "resolved" "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz"
+ "version" "0.6.1"
-sourcemap-codec@^1.4.8:
- version "1.4.8"
- resolved "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz"
- integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
+"sourcemap-codec@^1.4.8":
+ "integrity" "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA=="
+ "resolved" "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz"
+ "version" "1.4.8"
-ssr-window@^3.0.0-alpha.1:
- version "3.0.0"
- resolved "https://registry.npmmirror.com/ssr-window/-/ssr-window-3.0.0.tgz"
- integrity sha512-q+8UfWDg9Itrg0yWK7oe5p/XRCJpJF9OBtXfOPgSJl+u3Xd5KI328RUEvUqSMVM9CiQUEf1QdBzJMkYGErj9QA==
+"ssr-window@^3.0.0-alpha.1":
+ "integrity" "sha512-q+8UfWDg9Itrg0yWK7oe5p/XRCJpJF9OBtXfOPgSJl+u3Xd5KI328RUEvUqSMVM9CiQUEf1QdBzJMkYGErj9QA=="
+ "resolved" "https://registry.npmmirror.com/ssr-window/-/ssr-window-3.0.0.tgz"
+ "version" "3.0.0"
-strip-literal@^1.0.0:
- version "1.3.0"
- resolved "https://registry.npmmirror.com/strip-literal/-/strip-literal-1.3.0.tgz"
- integrity sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==
+"strip-literal@^1.0.0":
+ "integrity" "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg=="
+ "resolved" "https://registry.npmmirror.com/strip-literal/-/strip-literal-1.3.0.tgz"
+ "version" "1.3.0"
dependencies:
- acorn "^8.10.0"
+ "acorn" "^8.10.0"
-supports-color@^7.1.0:
- version "7.2.0"
- resolved "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz"
- integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
+"supports-color@^7.1.0":
+ "integrity" "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="
+ "resolved" "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz"
+ "version" "7.2.0"
dependencies:
- has-flag "^4.0.0"
+ "has-flag" "^4.0.0"
-terser@^5.31.1, terser@^5.4.0:
- version "5.31.1"
- resolved "https://registry.npmmirror.com/terser/-/terser-5.31.1.tgz"
- integrity sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg==
+"terser@^5.31.1", "terser@^5.4.0":
+ "integrity" "sha512-37upzU1+viGvuFtBo9NPufCb9dwM0+l9hMxYyWfBA+fbwrPqNJAhbZ6W47bBFnZHKHTUBnMvi87434qq+qnxOg=="
+ "resolved" "https://registry.npmmirror.com/terser/-/terser-5.31.1.tgz"
+ "version" "5.31.1"
dependencies:
"@jridgewell/source-map" "^0.3.3"
- acorn "^8.8.2"
- commander "^2.20.0"
- source-map-support "~0.5.20"
+ "acorn" "^8.8.2"
+ "commander" "^2.20.0"
+ "source-map-support" "~0.5.20"
-tiny-svg@^3.0.0, tiny-svg@^3.0.1:
- version "3.0.1"
- resolved "https://registry.npmmirror.com/tiny-svg/-/tiny-svg-3.0.1.tgz"
- integrity sha512-P8T4iwiW1t95vpHVHqrD36Brn7TqFYCPSHIWk9WLJtYK1X4aDd+5cgqcAADIWSjf1/i5idKnpCh9mim8hEdRBg==
+"tiny-svg@^3.0.0", "tiny-svg@^3.0.1":
+ "integrity" "sha512-P8T4iwiW1t95vpHVHqrD36Brn7TqFYCPSHIWk9WLJtYK1X4aDd+5cgqcAADIWSjf1/i5idKnpCh9mim8hEdRBg=="
+ "resolved" "https://registry.npmmirror.com/tiny-svg/-/tiny-svg-3.0.1.tgz"
+ "version" "3.0.1"
-tiny-warning@^1.0.3:
- version "1.0.3"
- resolved "https://registry.npmmirror.com/tiny-warning/-/tiny-warning-1.0.3.tgz"
- integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
+"tiny-warning@^1.0.3":
+ "integrity" "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA=="
+ "resolved" "https://registry.npmmirror.com/tiny-warning/-/tiny-warning-1.0.3.tgz"
+ "version" "1.0.3"
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
+"to-regex-range@^5.0.1":
+ "integrity" "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="
+ "resolved" "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz"
+ "version" "5.0.1"
dependencies:
- is-number "^7.0.0"
+ "is-number" "^7.0.0"
-type@^1.0.1:
- version "1.2.0"
- resolved "https://registry.npmmirror.com/type/-/type-1.2.0.tgz"
- integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==
+"type@^1.0.1":
+ "integrity" "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg=="
+ "resolved" "https://registry.npmmirror.com/type/-/type-1.2.0.tgz"
+ "version" "1.2.0"
-type@^2.7.2:
- version "2.7.2"
- resolved "https://registry.npmmirror.com/type/-/type-2.7.2.tgz"
- integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==
+"type@^2.7.2":
+ "integrity" "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw=="
+ "resolved" "https://registry.npmmirror.com/type/-/type-2.7.2.tgz"
+ "version" "2.7.2"
-ufo@^1.3.0:
- version "1.3.2"
- resolved "https://registry.npmmirror.com/ufo/-/ufo-1.3.2.tgz"
- integrity sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==
+"ufo@^1.3.0":
+ "integrity" "sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA=="
+ "resolved" "https://registry.npmmirror.com/ufo/-/ufo-1.3.2.tgz"
+ "version" "1.3.2"
-unimport@^1.0.1:
- version "1.3.0"
- resolved "https://registry.npmmirror.com/unimport/-/unimport-1.3.0.tgz"
- integrity sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw==
+"unimport@^1.0.1":
+ "integrity" "sha512-fOkrdxglsHd428yegH0wPH/6IfaSdDeMXtdRGn6en/ccyzc2aaoxiUTMrJyc6Bu+xoa18RJRPMfLUHEzjz8atw=="
+ "resolved" "https://registry.npmmirror.com/unimport/-/unimport-1.3.0.tgz"
+ "version" "1.3.0"
dependencies:
"@rollup/pluginutils" "^5.0.2"
- escape-string-regexp "^5.0.0"
- fast-glob "^3.2.12"
- local-pkg "^0.4.3"
- magic-string "^0.27.0"
- mlly "^1.1.0"
- pathe "^1.0.0"
- pkg-types "^1.0.1"
- scule "^1.0.0"
- strip-literal "^1.0.0"
- unplugin "^1.0.1"
+ "escape-string-regexp" "^5.0.0"
+ "fast-glob" "^3.2.12"
+ "local-pkg" "^0.4.3"
+ "magic-string" "^0.27.0"
+ "mlly" "^1.1.0"
+ "pathe" "^1.0.0"
+ "pkg-types" "^1.0.1"
+ "scule" "^1.0.0"
+ "strip-literal" "^1.0.0"
+ "unplugin" "^1.0.1"
-universalify@^2.0.0:
- version "2.0.1"
- resolved "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz"
- integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==
+"universalify@^2.0.0":
+ "integrity" "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="
+ "resolved" "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz"
+ "version" "2.0.1"
-unplugin-auto-import@^0.11.2:
- version "0.11.5"
- resolved "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.11.5.tgz"
- integrity sha512-nvbL2AQwLRR8wbHpJ6L1EBVNmjN045RSedTa4NtsGRkSQFXkI1iKHs4dTqJwcKZsnFrZOAKtLPiN1/oQTObLZw==
+"unplugin-auto-import@^0.11.2":
+ "integrity" "sha512-nvbL2AQwLRR8wbHpJ6L1EBVNmjN045RSedTa4NtsGRkSQFXkI1iKHs4dTqJwcKZsnFrZOAKtLPiN1/oQTObLZw=="
+ "resolved" "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.11.5.tgz"
+ "version" "0.11.5"
dependencies:
"@antfu/utils" "^0.7.0"
"@rollup/pluginutils" "^5.0.2"
- local-pkg "^0.4.2"
- magic-string "^0.26.7"
- unimport "^1.0.1"
- unplugin "^1.0.0"
+ "local-pkg" "^0.4.2"
+ "magic-string" "^0.26.7"
+ "unimport" "^1.0.1"
+ "unplugin" "^1.0.0"
-unplugin@^1.0.0, unplugin@^1.0.1:
- version "1.6.0"
- resolved "https://registry.npmmirror.com/unplugin/-/unplugin-1.6.0.tgz"
- integrity sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==
+"unplugin@^1.0.0", "unplugin@^1.0.1":
+ "integrity" "sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ=="
+ "resolved" "https://registry.npmmirror.com/unplugin/-/unplugin-1.6.0.tgz"
+ "version" "1.6.0"
dependencies:
- acorn "^8.11.2"
- chokidar "^3.5.3"
- webpack-sources "^3.2.3"
- webpack-virtual-modules "^0.6.1"
+ "acorn" "^8.11.2"
+ "chokidar" "^3.5.3"
+ "webpack-sources" "^3.2.3"
+ "webpack-virtual-modules" "^0.6.1"
-vite-plugin-compression@^0.5.1:
- version "0.5.1"
- resolved "https://registry.npmmirror.com/vite-plugin-compression/-/vite-plugin-compression-0.5.1.tgz"
- integrity sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==
+"vite-plugin-compression@^0.5.1":
+ "integrity" "sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg=="
+ "resolved" "https://registry.npmmirror.com/vite-plugin-compression/-/vite-plugin-compression-0.5.1.tgz"
+ "version" "0.5.1"
dependencies:
- chalk "^4.1.2"
- debug "^4.3.3"
- fs-extra "^10.0.0"
+ "chalk" "^4.1.2"
+ "debug" "^4.3.3"
+ "fs-extra" "^10.0.0"
-vite-plugin-vue-setup-extend@^0.4.0:
- version "0.4.0"
- resolved "https://registry.npmmirror.com/vite-plugin-vue-setup-extend/-/vite-plugin-vue-setup-extend-0.4.0.tgz"
- integrity sha512-WMbjPCui75fboFoUTHhdbXzu4Y/bJMv5N9QT9a7do3wNMNHHqrk+Tn2jrSJU0LS5fGl/EG+FEDBYVUeWIkDqXQ==
+"vite-plugin-vue-setup-extend@^0.4.0":
+ "integrity" "sha512-WMbjPCui75fboFoUTHhdbXzu4Y/bJMv5N9QT9a7do3wNMNHHqrk+Tn2jrSJU0LS5fGl/EG+FEDBYVUeWIkDqXQ=="
+ "resolved" "https://registry.npmmirror.com/vite-plugin-vue-setup-extend/-/vite-plugin-vue-setup-extend-0.4.0.tgz"
+ "version" "0.4.0"
dependencies:
"@vue/compiler-sfc" "^3.2.29"
- magic-string "^0.25.7"
+ "magic-string" "^0.25.7"
-vite@^5.0.0, vite@^5.2.12, vite@>=2.0.0:
- version "5.2.12"
- resolved "https://registry.npmjs.org/vite/-/vite-5.2.12.tgz"
- integrity sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA==
+"vite@^5.0.0", "vite@^5.2.12", "vite@>=2.0.0":
+ "integrity" "sha512-/gC8GxzxMK5ntBwb48pR32GGhENnjtY30G4A0jemunsBkiEZFw60s8InGpN8gkhHEkjnRK1aSAxeQgwvFhUHAA=="
+ "resolved" "https://registry.npmjs.org/vite/-/vite-5.2.12.tgz"
+ "version" "5.2.12"
dependencies:
- esbuild "^0.20.1"
- postcss "^8.4.38"
- rollup "^4.13.0"
+ "esbuild" "^0.20.1"
+ "postcss" "^8.4.38"
+ "rollup" "^4.13.0"
optionalDependencies:
- fsevents "~2.3.3"
+ "fsevents" "~2.3.3"
-vue-demi@*:
- version "0.14.6"
- resolved "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.6.tgz"
- integrity sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==
+"vue-demi@*":
+ "integrity" "sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w=="
+ "resolved" "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.14.6.tgz"
+ "version" "0.14.6"
-vue-i18n@^9.1.9:
- version "9.2.2"
- resolved "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz"
- integrity sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ==
+"vue-i18n@^9.1.9":
+ "integrity" "sha512-yswpwtj89rTBhegUAv9Mu37LNznyu3NpyLQmozF3i1hYOhwpG8RjcjIFIIfnu+2MDZJGSZPXaKWvnQA71Yv9TQ=="
+ "resolved" "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-9.2.2.tgz"
+ "version" "9.2.2"
dependencies:
"@intlify/core-base" "9.2.2"
"@intlify/shared" "9.2.2"
"@intlify/vue-devtools" "9.2.2"
"@vue/devtools-api" "^6.2.1"
-vue-router@^4.3.2:
- version "4.3.2"
- resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.3.2.tgz"
- integrity sha512-hKQJ1vDAZ5LVkKEnHhmm1f9pMiWIBNGF5AwU67PdH7TyXCj/a4hTccuUuYCAMgJK6rO/NVYtQIEN3yL8CECa7Q==
+"vue-router@^4.3.2":
+ "integrity" "sha512-hKQJ1vDAZ5LVkKEnHhmm1f9pMiWIBNGF5AwU67PdH7TyXCj/a4hTccuUuYCAMgJK6rO/NVYtQIEN3yL8CECa7Q=="
+ "resolved" "https://registry.npmjs.org/vue-router/-/vue-router-4.3.2.tgz"
+ "version" "4.3.2"
dependencies:
"@vue/devtools-api" "^6.5.1"
-vue@^3.0.0, "vue@^3.0.0-0 || ^2.6.0", vue@^3.0.5, vue@^3.2.0, vue@^3.2.25, vue@^3.2.47, vue@^3.4.27, vue@>=3.2.0, vue@3.4.27:
- version "3.4.27"
- resolved "https://registry.npmjs.org/vue/-/vue-3.4.27.tgz"
- integrity sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA==
+"vue@^3.0.0", "vue@^3.0.0-0 || ^2.6.0", "vue@^3.0.5", "vue@^3.2.0", "vue@^3.2.25", "vue@^3.2.47", "vue@^3.4.27", "vue@>=3.2.0", "vue@3.4.27":
+ "integrity" "sha512-8s/56uK6r01r1icG/aEOHqyMVxd1bkYcSe9j8HcKtr/xTOFWvnzIVTehNW+5Yt89f+DLBe4A569pnZLS5HzAMA=="
+ "resolved" "https://registry.npmjs.org/vue/-/vue-3.4.27.tgz"
+ "version" "3.4.27"
dependencies:
"@vue/compiler-dom" "3.4.27"
"@vue/compiler-sfc" "3.4.27"
@@ -1548,24 +1553,24 @@
"@vue/server-renderer" "3.4.27"
"@vue/shared" "3.4.27"
-vuex@^4.1.0:
- version "4.1.0"
- resolved "https://registry.npmmirror.com/vuex/-/vuex-4.1.0.tgz"
- integrity sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ==
+"vuex@^4.1.0":
+ "integrity" "sha512-hmV6UerDrPcgbSy9ORAtNXDr9M4wlNP4pEFKye4ujJF8oqgFFuxDCdOLS3eNoRTtq5O3hoBDh9Doj1bQMYHRbQ=="
+ "resolved" "https://registry.npmmirror.com/vuex/-/vuex-4.1.0.tgz"
+ "version" "4.1.0"
dependencies:
"@vue/devtools-api" "^6.0.0-beta.11"
-webpack-sources@^3.2.3:
- version "3.2.3"
- resolved "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz"
- integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
+"webpack-sources@^3.2.3":
+ "integrity" "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w=="
+ "resolved" "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz"
+ "version" "3.2.3"
-webpack-virtual-modules@^0.6.1:
- version "0.6.1"
- resolved "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.1.tgz"
- integrity sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==
+"webpack-virtual-modules@^0.6.1":
+ "integrity" "sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg=="
+ "resolved" "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.1.tgz"
+ "version" "0.6.1"
-wildcard@^1.1.0:
- version "1.1.2"
- resolved "https://registry.npmmirror.com/wildcard/-/wildcard-1.1.2.tgz"
- integrity sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng==
+"wildcard@^1.1.0":
+ "integrity" "sha512-DXukZJxpHA8LuotRwL0pP1+rS6CS7FF2qStDDE1C7DDg2rLud2PXRMuEDYIPhgEezwnlHNL4c+N6MfMTjCGTng=="
+ "resolved" "https://registry.npmmirror.com/wildcard/-/wildcard-1.1.2.tgz"
+ "version" "1.1.2"
--
Gitblit v1.9.3