From 2ee6ee4a41d477b24127754bf70319a24d464392 Mon Sep 17 00:00:00 2001
From: chunquansang <916920620@è¯@qq.com>
Date: Fri, 19 Jan 2024 16:39:31 +0800
Subject: [PATCH] feat: mock

---
 mock/alarm.ts                                 |   32 +-
 mock/list.ts                                  |  312 +-
 pnpm-lock.yaml                                | 3380 ++++++++---------
 src/api/list.ts                               |    8 +
 src/views/device/components/DeviceCard.vue    |   44 +-
 src/views/modelList/components/ModelCard.vue  |    6 +-
 src/views/modelList/index.vue                 |    4 +-
 .../serverModule/components/ServerCard.vue    |   20 +-
 src/views/serverModule/index.vue              |   10 +-
 .../workbench/components/DeviceStatus.vue     |    4 +-
 src/views/workbench/components/Notify.vue     |   29 +-
 src/views/workbench/index.vue                 |    4 +-
 12 files changed, 1971 insertions(+), 1882 deletions(-)

diff --git a/mock/alarm.ts b/mock/alarm.ts
index a0248a6..5393458 100644
--- a/mock/alarm.ts
+++ b/mock/alarm.ts
@@ -7,6 +7,30 @@
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
 import { MockMethod } from "vite-plugin-mock";
+
+function generateRandomDateTime(year) {
+  // 生成随机月份(1-12)
+  const month = Math.floor(Math.random() * 12) + 1;
+
+  // 生成随机日期(1-31)
+  const day = Math.floor(Math.random() * 31) + 1;
+
+  // 生成随机小时(0-23)
+  const hour = Math.floor(Math.random() * 24);
+
+  // 生成随机分钟(0-59)
+  const minute = Math.floor(Math.random() * 60);
+
+  // 生成随机秒钟(0-59)
+  const second = Math.floor(Math.random() * 60);
+
+  // 返回随机日期和时间的字符串
+  return `${year}-${month < 10 ? "0" : ""}${month}-${
+    day < 10 ? "0" : ""
+  }${day} ${hour < 10 ? "0" : ""}${hour}:${minute < 10 ? "0" : ""}${minute}:${
+    second < 10 ? "0" : ""
+  }${second}`;
+}
 function fetchList(): Record<string, any>[] {
   const currList: Record<string, any>[] = [];
   // const nameArr = ["玩手机监测", "控制器", "视频监控"];
@@ -14,12 +38,12 @@ function fetchList(): Record<string, any>[] {
   for (let i = 0; i < 10; i++) {
     currList.push({
       id: 1,
-      createTime: "2023-10-21 11:17:11",
+      createTime: generateRandomDateTime(2023),
       updateTime: "2023-10-17T02:35:41.14308Z",
-      name: "玩手机监测",
-      code: "DC0000" + (i + 1),
+      name: "表面缺陷",
+      code: "DC00001",
       level: "1",
-      deviceGroup: "设备组" + (i + 1),
+      deviceGroup: "设备组" + parseInt(Math.random() * 10) + 1,
       remark: ""
     });
   }
diff --git a/mock/list.ts b/mock/list.ts
index 4077ac8..c7c59b6 100644
--- a/mock/list.ts
+++ b/mock/list.ts
@@ -14,7 +14,7 @@ export default [
               isEnabled: true,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -44,7 +44,7 @@ export default [
               isEnabled: false,
               type: 2,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "离线",
               description:
                 "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
@@ -55,7 +55,7 @@ export default [
               type: 3,
               banner:
                 "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
@@ -65,7 +65,7 @@ export default [
               isEnabled: true,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
@@ -85,7 +85,7 @@ export default [
               isEnabled: true,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -105,7 +105,7 @@ export default [
               isEnabled: true,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
@@ -115,7 +115,7 @@ export default [
               isEnabled: true,
               type: 5,
               banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -135,7 +135,7 @@ export default [
               isEnabled: true,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-db.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
@@ -145,7 +145,7 @@ export default [
               isEnabled: false,
               type: 5,
               banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸"
@@ -165,7 +165,7 @@ export default [
               isEnabled: false,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "离线",
               description:
                 "基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸"
@@ -176,7 +176,7 @@ export default [
               type: 5,
               banner:
                 "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -197,7 +197,7 @@ export default [
               isEnabled: true,
               type: 2,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -208,7 +208,7 @@ export default [
               type: 4,
               banner:
                 "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -228,7 +228,7 @@ export default [
               isEnabled: false,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-db.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -238,7 +238,7 @@ export default [
               isEnabled: true,
               type: 1,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸"
@@ -259,7 +259,7 @@ export default [
               type: 5,
               banner:
                 "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -279,7 +279,7 @@ export default [
               isEnabled: true,
               type: 5,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
@@ -289,7 +289,7 @@ export default [
               isEnabled: false,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸"
@@ -309,7 +309,7 @@ export default [
               isEnabled: true,
               type: 1,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "离线",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -319,7 +319,7 @@ export default [
               isEnabled: true,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "基于腾讯优图强大的面部分析技术,提供包括人脸检测与分析、五官定位、人脸搜索、人脸比对、人脸"
@@ -339,7 +339,7 @@ export default [
               isEnabled: true,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
@@ -349,7 +349,7 @@ export default [
               isEnabled: false,
               type: 2,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
@@ -380,7 +380,7 @@ export default [
               isEnabled: true,
               type: 5,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "离线",
               description:
                 "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
@@ -400,7 +400,7 @@ export default [
               isEnabled: false,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -420,7 +420,7 @@ export default [
               isEnabled: true,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -440,7 +440,7 @@ export default [
               isEnabled: false,
               type: 3,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-db.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "故障",
               description:
                 "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
@@ -480,7 +480,7 @@ export default [
               isEnabled: false,
               type: 4,
               banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
-              deviceSort: "控制设备",
+              deviceSort: "分析设备",
               state: "在线",
               description:
                 "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
@@ -499,5 +499,263 @@ export default [
         }
       };
     }
+  },
+  {
+    url: "/getServerList",
+    method: "post",
+    response: () => {
+      return {
+        success: true,
+        data: {
+          list: [
+            {
+              index: 1,
+              isEnabled: true,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
+              deviceSort: "服务器1",
+              state: "在线",
+              description:
+                "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
+            },
+            {
+              index: 2,
+              isEnabled: false,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "服务器2",
+              state: "在线",
+              description:
+                "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
+            },
+            {
+              index: 3,
+              isEnabled: false,
+              type: 5,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "服务器3",
+              state: "故障",
+              description:
+                "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
+            },
+            {
+              index: 4,
+              isEnabled: false,
+              type: 2,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "服务器4",
+              state: "离线",
+              description:
+                "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
+            },
+            {
+              index: 5,
+              isEnabled: true,
+              type: 3,
+              banner:
+                "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
+              deviceSort: "服务器4",
+              state: "在线",
+              description:
+                "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
+            },
+            {
+              index: 6,
+              isEnabled: true,
+              type: 3,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "服务器5",
+              state: "在线",
+              description:
+                "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
+            },
+            {
+              index: 7,
+              isEnabled: false,
+              type: 1,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "服务器6",
+              state: "离线",
+              description:
+                "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
+            },
+            {
+              index: 8,
+              isEnabled: true,
+              type: 3,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "服务器7",
+              state: "故障",
+              description:
+                "云硬盘为您提供用于CVM的持久性数据块级存储服务。云硬盘中的数据自动地可用区内以多副本冗"
+            },
+            {
+              index: 9,
+              isEnabled: false,
+              type: 1,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
+              deviceSort: "服务器8",
+              state: "离线",
+              description:
+                "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
+            },
+            {
+              index: 10,
+              isEnabled: true,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "服务器9",
+              state: "在线",
+              description:
+                "云数据库MySQL为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。"
+            },
+            {
+              index: 11,
+              isEnabled: true,
+              type: 5,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "服务器10",
+              state: "在线",
+              description:
+                "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
+            },
+            {
+              index: 12,
+              isEnabled: true,
+              type: 2,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "服务器11",
+              state: "在线",
+              description:
+                "SSL证书又叫服务器证书,腾讯云为您提供证书的一站式服务,包括免费、付费证书的申请、管理及部"
+            },
+            {
+              index: 13,
+              isEnabled: true,
+              type: 3,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-db.jpg",
+              deviceSort: "服务器12",
+              state: "故障",
+              description:
+                "腾讯安全云防火墙产品,是腾讯云安全团队结合云原生的优势,自主研发的SaaS化防火墙产品,无需客无需客无需客无需客无需客无需客无需客"
+            }
+          ]
+        }
+      };
+    }
+  },
+  {
+    url: "/getModelList",
+    method: "post",
+    response: () => {
+      return {
+        success: true,
+        data: {
+          list: [
+            {
+              index: 1,
+              isEnabled: true,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
+              deviceSort: "划痕检测",
+              state: "在线",
+              description:
+                "划痕检测技术:高效识别产品表面划痕,提升制造质量和外观完整性,广泛应用于汽车、电子等行业"
+            },
+            {
+              index: 2,
+              isEnabled: false,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "喷码ocr识别",
+              state: "在线",
+              description:
+                "喷码OCR技术:高效光学字符识别,实现快速、准确解读产品喷码,提升生产流程智能化和质量管控。"
+            },
+            {
+              index: 3,
+              isEnabled: false,
+              type: 5,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "烟火检测",
+              state: "故障",
+              description:
+                "应用先进传感器和图像分析,精准识别烟花火焰,提高安全性,广泛用于活动监控和消防系统。"
+            },
+            {
+              index: 4,
+              isEnabled: false,
+              type: 2,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "抽烟检测",
+              state: "离线",
+              description:
+                "采用智能传感器和图像分析,精准识别抽烟行为,广泛应用于公共场所,强化禁烟管理与安全监测。。"
+            },
+            {
+              index: 5,
+              isEnabled: true,
+              type: 3,
+              banner:
+                "https://tdesign.gtimg.com/tdesign-pro/face-recognition.jpg",
+              deviceSort: "工件表面缺陷",
+              state: "在线",
+              description:
+                "高效图像处理技术,准确识别工件表面瑕疵,提升生产质量与品牌形象,广泛应用于制造业。"
+            },
+            {
+              index: 6,
+              isEnabled: true,
+              type: 3,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "车辆图像识别",
+              state: "在线",
+              description:
+                "基于先进算法,实现快速车辆识别,广泛应用于智能交通管理、停车场自动化等领域,提升效率与安全。"
+            },
+            {
+              index: 7,
+              isEnabled: false,
+              type: 1,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "推搡检测",
+              state: "离线",
+              description:
+                "利用先进传感器和智能分析,及时捕捉人群推搡行为,强化公共场所安全监控,提高突发事件响应效率。"
+            },
+            {
+              index: 8,
+              isEnabled: true,
+              type: 3,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/t-sec.jpg",
+              deviceSort: "玩手机检测",
+              state: "故障",
+              description:
+                "借助智能传感器和图像分析,准确识别人们是否在生产中使用手机,提高工厂内安全和管理效能。"
+            },
+            {
+              index: 9,
+              isEnabled: false,
+              type: 1,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/cloud-server.jpg",
+              deviceSort: "瞌睡检测",
+              state: "离线",
+              description:
+                "借助智能传感器和图像分析,准确识别人们是否在生产中打瞌睡,提高工厂内安全和管理效能。"
+            },
+            {
+              index: 10,
+              isEnabled: true,
+              type: 4,
+              banner: "https://tdesign.gtimg.com/tdesign-pro/ssl.jpg",
+              deviceSort: "工件表面缺陷",
+              state: "在线",
+              description:
+                "高效图像处理技术,准确识别工件表面瑕疵,提升生产质量与品牌形象,广泛应用于制造业"
+            }
+          ]
+        }
+      };
+    }
   }
 ] as MockMethod[];
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index b76b062..fdf7f2c 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -202,39 +202,6 @@ devDependencies:
   sass-loader:
     specifier: ^13.3.2
     version: 13.3.2(sass@1.63.6)
-  stylelint:
-    specifier: ^15.9.0
-    version: 15.9.0
-  stylelint-config-html:
-    specifier: ^1.1.0
-    version: 1.1.0(postcss-html@1.5.0)(stylelint@15.9.0)
-  stylelint-config-recess-order:
-    specifier: ^4.2.0
-    version: 4.2.0(stylelint@15.9.0)
-  stylelint-config-recommended:
-    specifier: ^12.0.0
-    version: 12.0.0(stylelint@15.9.0)
-  stylelint-config-recommended-scss:
-    specifier: ^12.0.0
-    version: 12.0.0(postcss@8.4.24)(stylelint@15.9.0)
-  stylelint-config-recommended-vue:
-    specifier: ^1.4.0
-    version: 1.4.0(postcss-html@1.5.0)(stylelint@15.9.0)
-  stylelint-config-standard:
-    specifier: ^33.0.0
-    version: 33.0.0(stylelint@15.9.0)
-  stylelint-config-standard-scss:
-    specifier: ^9.0.0
-    version: 9.0.0(postcss@8.4.24)(stylelint@15.9.0)
-  stylelint-order:
-    specifier: ^6.0.3
-    version: 6.0.3(stylelint@15.9.0)
-  stylelint-prettier:
-    specifier: ^3.0.0
-    version: 3.0.0(prettier@2.8.8)(stylelint@15.9.0)
-  stylelint-scss:
-    specifier: ^5.0.1
-    version: 5.0.1(stylelint@15.9.0)
   svgo:
     specifier: ^3.0.2
     version: 3.0.2
@@ -899,1671 +866,1288 @@ packages:
       "@jridgewell/trace-mapping": 0.3.9
     dev: true
 
-  /@csstools/css-parser-algorithms@2.2.0(@csstools/css-tokenizer@2.1.1):
+  /@ctrl/tinycolor@3.6.0:
+    resolution:
+      {
+        integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==
+      }
+    engines: { node: ">=10" }
+    dev: false
+
+  /@element-plus/icons-vue@2.1.0(vue@3.3.4):
+    resolution:
+      {
+        integrity: sha512-PSBn3elNoanENc1vnCfh+3WA9fimRC7n+fWkf3rE5jvv+aBohNHABC/KAR5KWPecxWxDTVT1ERpRbOMRcOV/vA==
+      }
+    peerDependencies:
+      vue: ^3.2.0
+    dependencies:
+      vue: 3.3.4
+    dev: false
+
+  /@eslint-community/eslint-utils@4.4.0(eslint@8.43.0):
     resolution:
       {
-        integrity: sha512-9BoQ/jSrPq4vv3b9jjLW+PNNv56KlDH5JMx5yASSNrCtvq70FCNZUjXRvbCeR9hYj9ZyhURtqpU/RFIgg6kiOw==
+        integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
       }
-    engines: { node: ^14 || ^16 || >=18 }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      "@csstools/css-tokenizer": ^2.1.1
+      eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
     dependencies:
-      "@csstools/css-tokenizer": 2.1.1
+      eslint: 8.43.0
+      eslint-visitor-keys: 3.4.1
     dev: true
 
-  /@csstools/css-tokenizer@2.1.1:
+  /@eslint-community/regexpp@4.5.1:
     resolution:
       {
-        integrity: sha512-GbrTj2Z8MCTUv+52GE0RbFGM527xuXZ0Xa5g0Z+YN573uveS4G0qi6WNOMyz3yrFM/jaILTTwJ0+umx81EzqfA==
+        integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
       }
-    engines: { node: ^14 || ^16 || >=18 }
+    engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 }
     dev: true
 
-  /@csstools/media-query-list-parser@2.1.1(@csstools/css-parser-algorithms@2.2.0)(@csstools/css-tokenizer@2.1.1):
+  /@eslint/eslintrc@2.0.3:
     resolution:
       {
-        integrity: sha512-pUjtFbaKbiFNjJo8pprrIaXLvQvWIlwPiFnRI4sEnc4F0NIGTOsw8kaJSR3CmZAKEvV8QYckovgAnWQC0bgLLQ==
+        integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==
       }
-    engines: { node: ^14 || ^16 || >=18 }
-    peerDependencies:
-      "@csstools/css-parser-algorithms": ^2.2.0
-      "@csstools/css-tokenizer": ^2.1.1
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dependencies:
-      "@csstools/css-parser-algorithms": 2.2.0(@csstools/css-tokenizer@2.1.1)
-      "@csstools/css-tokenizer": 2.1.1
+      ajv: 6.12.6
+      debug: 4.3.4
+      espree: 9.5.2
+      globals: 13.20.0
+      ignore: 5.2.4
+      import-fresh: 3.3.0
+      js-yaml: 4.1.0
+      minimatch: 3.1.2
+      strip-json-comments: 3.1.1
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@csstools/selector-specificity@2.2.0(postcss-selector-parser@6.0.13):
+  /@eslint/js@8.43.0:
     resolution:
       {
-        integrity: sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==
+        integrity: sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==
       }
-    engines: { node: ^14 || ^16 || >=18 }
-    peerDependencies:
-      postcss-selector-parser: ^6.0.10
-    dependencies:
-      postcss-selector-parser: 6.0.13
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dev: true
 
-  /@ctrl/tinycolor@3.6.0:
+  /@floating-ui/core@1.3.1:
     resolution:
       {
-        integrity: sha512-/Z3l6pXthq0JvMYdUFyX9j0MaCltlIn6mfh9jLyQwg5aPKxkyNa0PTHtU1AlFXLNk55ZuAeJRcpvq+tmLfKmaQ==
+        integrity: sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==
       }
-    engines: { node: ">=10" }
     dev: false
 
-  /@element-plus/icons-vue@2.1.0(vue@3.3.4):
+  /@floating-ui/dom@1.4.2:
     resolution:
       {
-        integrity: sha512-PSBn3elNoanENc1vnCfh+3WA9fimRC7n+fWkf3rE5jvv+aBohNHABC/KAR5KWPecxWxDTVT1ERpRbOMRcOV/vA==
+        integrity: sha512-VKmvHVatWnewmGGy+7Mdy4cTJX71Pli6v/Wjb5RQBuq5wjUYx+Ef+kRThi8qggZqDgD8CogCpqhRoVp3+yQk+g==
       }
-    peerDependencies:
-      vue: ^3.2.0
     dependencies:
-      vue: 3.3.4
+      "@floating-ui/core": 1.3.1
     dev: false
 
-  /@esbuild/android-arm64@0.17.19:
+  /@humanwhocodes/config-array@0.11.10:
     resolution:
       {
-        integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==,
-        tarball: https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz
+        integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
       }
-    engines: { node: ">=12" }
-    cpu: [arm64]
-    os: [android]
-    requiresBuild: true
+    engines: { node: ">=10.10.0" }
+    dependencies:
+      "@humanwhocodes/object-schema": 1.2.1
+      debug: 4.3.4
+      minimatch: 3.1.2
+    transitivePeerDependencies:
+      - supports-color
     dev: true
-    optional: true
 
-  /@esbuild/android-arm@0.17.19:
+  /@humanwhocodes/module-importer@1.0.1:
     resolution:
       {
-        integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==,
-        tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.19.tgz
+        integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
       }
-    engines: { node: ">=12" }
-    cpu: [arm]
-    os: [android]
-    requiresBuild: true
+    engines: { node: ">=12.22" }
     dev: true
-    optional: true
 
-  /@esbuild/android-x64@0.17.19:
+  /@humanwhocodes/object-schema@1.2.1:
     resolution:
       {
-        integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==,
-        tarball: https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.19.tgz
+        integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [android]
-    requiresBuild: true
     dev: true
-    optional: true
 
-  /@esbuild/darwin-arm64@0.17.19:
+  /@iconify-icons/ep@1.2.12:
     resolution:
       {
-        integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==,
-        tarball: https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz
+        integrity: sha512-8EJULn048sQq3fvytpQ5j40omnVOdBKpo+sXdYM35NRrqCe1BihxBesMcCOLWaocqkWia6uTQ3cnRHff4ZA11w==
       }
-    engines: { node: ">=12" }
-    cpu: [arm64]
-    os: [darwin]
-    requiresBuild: true
+    dependencies:
+      "@iconify/types": 2.0.0
     dev: true
-    optional: true
 
-  /@esbuild/darwin-x64@0.17.19:
+  /@iconify-icons/ri@1.2.9:
     resolution:
       {
-        integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==,
-        tarball: https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz
+        integrity: sha512-BIxB+Hm6M1amgT+ebrD5XizKhjwaM5bC0F5Yg3tyN1dOfc++tzFeulbXb9cmTk9YfpqPZ1SUGJo5r0Wze+wUcA==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [darwin]
-    requiresBuild: true
+    dependencies:
+      "@iconify/types": 2.0.0
     dev: true
-    optional: true
 
-  /@esbuild/freebsd-arm64@0.17.19:
+  /@iconify/types@2.0.0:
     resolution:
       {
-        integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==,
-        tarball: https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz
+        integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==
       }
-    engines: { node: ">=12" }
-    cpu: [arm64]
-    os: [freebsd]
-    requiresBuild: true
     dev: true
-    optional: true
 
-  /@esbuild/freebsd-x64@0.17.19:
+  /@iconify/vue@4.1.1(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==,
-        tarball: https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz
+        integrity: sha512-RL85Bm/DAe8y6rT6pux7D2FJSiUEM/TPfyK7GrbAOfTSwrhvwJW+S5yijdGcmtXouA8MtuH9C7l4hiSE4mLMjg==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [freebsd]
-    requiresBuild: true
+    peerDependencies:
+      vue: ">=3"
+    dependencies:
+      "@iconify/types": 2.0.0
+      vue: 3.3.4
     dev: true
-    optional: true
 
-  /@esbuild/linux-arm64@0.17.19:
+  /@intlify/bundle-utils@6.0.1(vue-i18n@9.2.2):
     resolution:
       {
-        integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz
+        integrity: sha512-BkeZNKZiC0B7K3OYMwiPLoAqsZmKH3SxTL75vYAkuQ//XWR8WO0NpfjXhTxgLTVFHxMcNb2agAopC0DP6fqDrg==
       }
-    engines: { node: ">=12" }
-    cpu: [arm64]
-    os: [linux]
-    requiresBuild: true
+    engines: { node: ">= 14.16" }
+    peerDependencies:
+      petite-vue-i18n: "*"
+      vue-i18n: "*"
+    peerDependenciesMeta:
+      petite-vue-i18n:
+        optional: true
+      vue-i18n:
+        optional: true
+    dependencies:
+      "@intlify/message-compiler": 9.3.0-beta.17
+      "@intlify/shared": 9.3.0-beta.17
+      acorn: 8.9.0
+      escodegen: 2.0.0
+      estree-walker: 2.0.2
+      jsonc-eslint-parser: 1.4.1
+      magic-string: 0.30.0
+      mlly: 1.4.0
+      source-map: 0.6.1
+      vue-i18n: 9.2.2(vue@3.3.4)
+      yaml-eslint-parser: 0.3.2
     dev: true
-    optional: true
 
-  /@esbuild/linux-arm@0.17.19:
+  /@intlify/core-base@9.2.2:
     resolution:
       {
-        integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz
+        integrity: sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA==
       }
-    engines: { node: ">=12" }
-    cpu: [arm]
-    os: [linux]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">= 14" }
+    dependencies:
+      "@intlify/devtools-if": 9.2.2
+      "@intlify/message-compiler": 9.2.2
+      "@intlify/shared": 9.2.2
+      "@intlify/vue-devtools": 9.2.2
 
-  /@esbuild/linux-ia32@0.17.19:
+  /@intlify/devtools-if@9.2.2:
     resolution:
       {
-        integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz
+        integrity: sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==
       }
-    engines: { node: ">=12" }
-    cpu: [ia32]
-    os: [linux]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">= 14" }
+    dependencies:
+      "@intlify/shared": 9.2.2
 
-  /@esbuild/linux-loong64@0.17.19:
+  /@intlify/message-compiler@9.2.2:
     resolution:
       {
-        integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz
+        integrity: sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==
       }
-    engines: { node: ">=12" }
-    cpu: [loong64]
-    os: [linux]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">= 14" }
+    dependencies:
+      "@intlify/shared": 9.2.2
+      source-map: 0.6.1
 
-  /@esbuild/linux-mips64el@0.17.19:
+  /@intlify/message-compiler@9.3.0-beta.17:
     resolution:
       {
-        integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz
+        integrity: sha512-i7hvVIRk1Ax2uKa9xLRJCT57to08OhFMhFXXjWN07rmx5pWQYQ23MfX1xgggv9drnWTNhqEiD+u4EJeHoS5+Ww==
       }
-    engines: { node: ">=12" }
-    cpu: [mips64el]
-    os: [linux]
-    requiresBuild: true
+    engines: { node: ">= 14" }
+    dependencies:
+      "@intlify/shared": 9.3.0-beta.17
+      source-map: 0.6.1
     dev: true
-    optional: true
 
-  /@esbuild/linux-ppc64@0.17.19:
+  /@intlify/shared@9.2.2:
     resolution:
       {
-        integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz
+        integrity: sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==
       }
-    engines: { node: ">=12" }
-    cpu: [ppc64]
-    os: [linux]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">= 14" }
 
-  /@esbuild/linux-riscv64@0.17.19:
+  /@intlify/shared@9.3.0-beta.17:
     resolution:
       {
-        integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz
+        integrity: sha512-mscf7RQsUTOil35jTij4KGW1RC9SWQjYScwLxP53Ns6g24iEd5HN7ksbt9O6FvTmlQuX77u+MXpBdfJsGqizLQ==
       }
-    engines: { node: ">=12" }
-    cpu: [riscv64]
-    os: [linux]
-    requiresBuild: true
+    engines: { node: ">= 14" }
     dev: true
-    optional: true
 
-  /@esbuild/linux-s390x@0.17.19:
+  /@intlify/unplugin-vue-i18n@0.11.0(vue-i18n@9.2.2):
     resolution:
       {
-        integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz
+        integrity: sha512-ivcLZo08fvepHWV8o5lcKfhcKFSWqhwrqIAU6pUIbvq2ICo9fnXnIPYIZj7FeuHDLW1G3ADm44ZhQC3nYmvDlg==
       }
-    engines: { node: ">=12" }
-    cpu: [s390x]
-    os: [linux]
-    requiresBuild: true
+    engines: { node: ">= 14.16" }
+    peerDependencies:
+      petite-vue-i18n: "*"
+      vue-i18n: "*"
+      vue-i18n-bridge: "*"
+    peerDependenciesMeta:
+      petite-vue-i18n:
+        optional: true
+      vue-i18n:
+        optional: true
+      vue-i18n-bridge:
+        optional: true
+    dependencies:
+      "@intlify/bundle-utils": 6.0.1(vue-i18n@9.2.2)
+      "@intlify/shared": 9.3.0-beta.17
+      "@rollup/pluginutils": 5.0.2
+      "@vue/compiler-sfc": 3.3.4
+      debug: 4.3.4
+      fast-glob: 3.2.12
+      js-yaml: 4.1.0
+      json5: 2.2.3
+      pathe: 1.1.1
+      picocolors: 1.0.0
+      source-map: 0.6.1
+      unplugin: 1.3.1
+      vue-i18n: 9.2.2(vue@3.3.4)
+    transitivePeerDependencies:
+      - rollup
+      - supports-color
     dev: true
-    optional: true
 
-  /@esbuild/linux-x64@0.17.19:
+  /@intlify/vue-devtools@9.2.2:
     resolution:
       {
-        integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==,
-        tarball: https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz
+        integrity: sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [linux]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">= 14" }
+    dependencies:
+      "@intlify/core-base": 9.2.2
+      "@intlify/shared": 9.2.2
 
-  /@esbuild/netbsd-x64@0.17.19:
+  /@isaacs/cliui@8.0.2:
     resolution:
       {
-        integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==,
-        tarball: https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz
+        integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
       }
     engines: { node: ">=12" }
-    cpu: [x64]
-    os: [netbsd]
-    requiresBuild: true
+    dependencies:
+      string-width: 5.1.2
+      string-width-cjs: registry.npmmirror.com/string-width@4.2.3
+      strip-ansi: 7.1.0
+      strip-ansi-cjs: registry.npmmirror.com/strip-ansi@6.0.1
+      wrap-ansi: 8.1.0
+      wrap-ansi-cjs: registry.npmmirror.com/wrap-ansi@7.0.0
     dev: true
-    optional: true
 
-  /@esbuild/openbsd-x64@0.17.19:
+  /@jridgewell/gen-mapping@0.3.3:
     resolution:
       {
-        integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==,
-        tarball: https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz
+        integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [openbsd]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">=6.0.0" }
+    dependencies:
+      "@jridgewell/set-array": 1.1.2
+      "@jridgewell/sourcemap-codec": 1.4.15
+      "@jridgewell/trace-mapping": 0.3.18
 
-  /@esbuild/sunos-x64@0.17.19:
+  /@jridgewell/resolve-uri@3.1.0:
     resolution:
       {
-        integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==,
-        tarball: https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz
+        integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [sunos]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">=6.0.0" }
 
-  /@esbuild/win32-arm64@0.17.19:
+  /@jridgewell/resolve-uri@3.1.1:
     resolution:
       {
-        integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==,
-        tarball: https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz
+        integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
       }
-    engines: { node: ">=12" }
-    cpu: [arm64]
-    os: [win32]
-    requiresBuild: true
+    engines: { node: ">=6.0.0" }
     dev: true
-    optional: true
 
-  /@esbuild/win32-ia32@0.17.19:
+  /@jridgewell/set-array@1.1.2:
     resolution:
       {
-        integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==,
-        tarball: https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz
+        integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
       }
-    engines: { node: ">=12" }
-    cpu: [ia32]
-    os: [win32]
-    requiresBuild: true
-    dev: true
-    optional: true
+    engines: { node: ">=6.0.0" }
 
-  /@esbuild/win32-x64@0.17.19:
+  /@jridgewell/source-map@0.3.3:
     resolution:
       {
-        integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==,
-        tarball: https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz
+        integrity: sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==
       }
-    engines: { node: ">=12" }
-    cpu: [x64]
-    os: [win32]
-    requiresBuild: true
+    dependencies:
+      "@jridgewell/gen-mapping": 0.3.3
+      "@jridgewell/trace-mapping": 0.3.18
     dev: true
-    optional: true
 
-  /@eslint-community/eslint-utils@4.4.0(eslint@8.43.0):
+  /@jridgewell/sourcemap-codec@1.4.14:
     resolution:
       {
-        integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==
+        integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-    peerDependencies:
-      eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
-    dependencies:
-      eslint: 8.43.0
-      eslint-visitor-keys: 3.4.1
-    dev: true
 
-  /@eslint-community/regexpp@4.5.1:
+  /@jridgewell/sourcemap-codec@1.4.15:
     resolution:
       {
-        integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
+        integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
       }
-    engines: { node: ^12.0.0 || ^14.0.0 || >=16.0.0 }
-    dev: true
 
-  /@eslint/eslintrc@2.0.3:
+  /@jridgewell/trace-mapping@0.3.18:
     resolution:
       {
-        integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==
+        integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dependencies:
-      ajv: 6.12.6
-      debug: 4.3.4
-      espree: 9.5.2
-      globals: 13.20.0
-      ignore: 5.2.4
-      import-fresh: 3.3.0
-      js-yaml: 4.1.0
-      minimatch: 3.1.2
-      strip-json-comments: 3.1.1
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
+      "@jridgewell/resolve-uri": 3.1.0
+      "@jridgewell/sourcemap-codec": 1.4.14
 
-  /@eslint/js@8.43.0:
+  /@jridgewell/trace-mapping@0.3.9:
     resolution:
       {
-        integrity: sha512-s2UHCoiXfxMvmfzqoN+vrQ84ahUSYde9qNO1MdxmoEhyHWsfmwOpFlwYV+ePJEVc7gFnATGUi376WowX1N7tFg==
+        integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
+    dependencies:
+      "@jridgewell/resolve-uri": 3.1.1
+      "@jridgewell/sourcemap-codec": 1.4.15
     dev: true
 
-  /@floating-ui/core@1.3.1:
+  /@nodelib/fs.scandir@2.1.5:
     resolution:
       {
-        integrity: sha512-Bu+AMaXNjrpjh41znzHqaz3r2Nr8hHuHZT6V2LBKMhyMl0FgKA62PNYbqnfgmzOhoWZj70Zecisbo4H1rotP5g==
+        integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
       }
-    dev: false
+    engines: { node: ">= 8" }
+    dependencies:
+      "@nodelib/fs.stat": 2.0.5
+      run-parallel: 1.2.0
 
-  /@floating-ui/dom@1.4.2:
+  /@nodelib/fs.stat@2.0.5:
     resolution:
       {
-        integrity: sha512-VKmvHVatWnewmGGy+7Mdy4cTJX71Pli6v/Wjb5RQBuq5wjUYx+Ef+kRThi8qggZqDgD8CogCpqhRoVp3+yQk+g==
+        integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
       }
-    dependencies:
-      "@floating-ui/core": 1.3.1
-    dev: false
+    engines: { node: ">= 8" }
 
-  /@humanwhocodes/config-array@0.11.10:
+  /@nodelib/fs.walk@1.2.8:
     resolution:
       {
-        integrity: sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==
+        integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
       }
-    engines: { node: ">=10.10.0" }
+    engines: { node: ">= 8" }
     dependencies:
-      "@humanwhocodes/object-schema": 1.2.1
-      debug: 4.3.4
-      minimatch: 3.1.2
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
+      "@nodelib/fs.scandir": 2.1.5
+      fastq: 1.15.0
 
-  /@humanwhocodes/module-importer@1.0.1:
+  /@nuxt/schema@3.6.0:
     resolution:
       {
-        integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
+        integrity: sha512-6/nq+W77JODDfhMBZTi7HCD3hT5oHegsasAzUnDmvwWuY1io7BXX9x2mDhL8E3LhVzQuN5vhi3GBgwHwCfdKEA==
       }
-    engines: { node: ">=12.22" }
-    dev: true
+    engines: { node: ^14.18.0 || >=16.10.0 }
+    requiresBuild: true
+    dependencies:
+      defu: 6.1.2
+      hookable: 5.5.3
+      pathe: 1.1.1
+      pkg-types: 1.0.3
+      postcss-import-resolver: 2.0.0
+      std-env: 3.3.3
+      ufo: 1.1.2
+      unimport: 3.0.8
+      untyped: 1.3.2
+    transitivePeerDependencies:
+      - rollup
+      - supports-color
+    dev: false
+    optional: true
 
-  /@humanwhocodes/object-schema@1.2.1:
+  /@pureadmin/descriptions@1.1.1(element-plus@2.3.6):
     resolution:
       {
-        integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
+        integrity: sha512-4BHLKomLU/LxGs5EUA+h+aKNrJEkhrU6+QE8VoWfJZ8VTU6ddvFLT/Pi4WuO5CWNXM9ZjqvHLFFVwEPlKntqtg==
       }
-    dev: true
+    peerDependencies:
+      element-plus: ^2.0.0
+    dependencies:
+      "@element-plus/icons-vue": 2.1.0(vue@3.3.4)
+      element-plus: 2.3.6(vue@3.3.4)
+      vue: 3.3.4
+    dev: false
 
-  /@iconify-icons/ep@1.2.12:
+  /@pureadmin/table@2.3.2(element-plus@2.3.6):
     resolution:
       {
-        integrity: sha512-8EJULn048sQq3fvytpQ5j40omnVOdBKpo+sXdYM35NRrqCe1BihxBesMcCOLWaocqkWia6uTQ3cnRHff4ZA11w==
+        integrity: sha512-oaMf8X4bv5KPcO4li+bO7W28BS5IMy+zxPpPNh/Tdxewc2dykvoqqpRIAiS8prJOHxI42/77xbjoGb+lwQH5aA==
       }
+    peerDependencies:
+      element-plus: ^2.0.0
     dependencies:
-      "@iconify/types": 2.0.0
-    dev: true
+      element-plus: 2.3.6(vue@3.3.4)
+      vue: 3.3.4
+    dev: false
 
-  /@iconify-icons/ri@1.2.9:
+  /@pureadmin/theme@3.1.0:
     resolution:
       {
-        integrity: sha512-BIxB+Hm6M1amgT+ebrD5XizKhjwaM5bC0F5Yg3tyN1dOfc++tzFeulbXb9cmTk9YfpqPZ1SUGJo5r0Wze+wUcA==
+        integrity: sha512-3kBbqB6Uua096w91w1SrGna0dM8AYO5HFk/HU8G0DsEaijgRrm+dYIJUrqbv+stLUxlYPNVXpDS/APZjF0cOAg==
       }
     dependencies:
-      "@iconify/types": 2.0.0
+      "@zougt/some-loader-utils": 1.4.3
+      fs-extra: 11.1.1
+      string-hash: 1.1.3
     dev: true
 
-  /@iconify/types@2.0.0:
+  /@pureadmin/utils@1.9.6(echarts@5.4.2)(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==
-      }
-    dev: true
-
-  /@iconify/vue@4.1.1(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-RL85Bm/DAe8y6rT6pux7D2FJSiUEM/TPfyK7GrbAOfTSwrhvwJW+S5yijdGcmtXouA8MtuH9C7l4hiSE4mLMjg==
+        integrity: sha512-vu9KhKHx7JnHEDq1k0rmesvBDlAF4TD/x7qNyyNkwa8uvdMB/lMMkGoeaKDKjXpp26d9PRhAzRyIG8wZz/ntmw==
       }
     peerDependencies:
-      vue: ">=3"
+      echarts: "*"
+      vue: "*"
+    peerDependenciesMeta:
+      echarts:
+        optional: true
+      vue:
+        optional: true
     dependencies:
-      "@iconify/types": 2.0.0
+      echarts: 5.4.2
       vue: 3.3.4
-    dev: true
+    dev: false
 
-  /@intlify/bundle-utils@6.0.1(vue-i18n@9.2.2):
+  /@rollup/plugin-node-resolve@13.3.0:
     resolution:
       {
-        integrity: sha512-BkeZNKZiC0B7K3OYMwiPLoAqsZmKH3SxTL75vYAkuQ//XWR8WO0NpfjXhTxgLTVFHxMcNb2agAopC0DP6fqDrg==
+        integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==
       }
-    engines: { node: ">= 14.16" }
+    engines: { node: ">= 10.0.0" }
     peerDependencies:
-      petite-vue-i18n: "*"
-      vue-i18n: "*"
+      rollup: ^2.42.0
     peerDependenciesMeta:
-      petite-vue-i18n:
-        optional: true
-      vue-i18n:
+      rollup:
         optional: true
     dependencies:
-      "@intlify/message-compiler": 9.3.0-beta.17
-      "@intlify/shared": 9.3.0-beta.17
-      acorn: 8.9.0
-      escodegen: 2.0.0
-      estree-walker: 2.0.2
-      jsonc-eslint-parser: 1.4.1
-      magic-string: 0.30.0
-      mlly: 1.4.0
-      source-map: 0.6.1
-      vue-i18n: 9.2.2(vue@3.3.4)
-      yaml-eslint-parser: 0.3.2
+      "@rollup/pluginutils": 3.1.0
+      "@types/resolve": 1.17.1
+      deepmerge: 4.3.1
+      is-builtin-module: 3.2.1
+      is-module: 1.0.0
+      resolve: 1.22.2
     dev: true
 
-  /@intlify/core-base@9.2.2:
+  /@rollup/pluginutils@3.1.0:
     resolution:
       {
-        integrity: sha512-JjUpQtNfn+joMbrXvpR4hTF8iJQ2sEFzzK3KIESOx+f+uwIjgw20igOyaIdhfsVVBCds8ZM64MoeNSx+PHQMkA==
+        integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==
       }
-    engines: { node: ">= 14" }
+    engines: { node: ">= 8.0.0" }
+    peerDependencies:
+      rollup: ^1.20.0||^2.0.0
+    peerDependenciesMeta:
+      rollup:
+        optional: true
     dependencies:
-      "@intlify/devtools-if": 9.2.2
-      "@intlify/message-compiler": 9.2.2
-      "@intlify/shared": 9.2.2
-      "@intlify/vue-devtools": 9.2.2
+      "@types/estree": 0.0.39
+      estree-walker: 1.0.1
+      picomatch: 2.3.1
+    dev: true
 
-  /@intlify/devtools-if@9.2.2:
+  /@rollup/pluginutils@4.2.1:
     resolution:
       {
-        integrity: sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==
+        integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==
       }
-    engines: { node: ">= 14" }
+    engines: { node: ">= 8.0.0" }
     dependencies:
-      "@intlify/shared": 9.2.2
+      estree-walker: 2.0.2
+      picomatch: 2.3.1
+    dev: true
 
-  /@intlify/message-compiler@9.2.2:
+  /@rollup/pluginutils@5.0.2:
     resolution:
       {
-        integrity: sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==
+        integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==
       }
-    engines: { node: ">= 14" }
+    engines: { node: ">=14.0.0" }
+    peerDependencies:
+      rollup: ^1.20.0||^2.0.0||^3.0.0
+    peerDependenciesMeta:
+      rollup:
+        optional: true
     dependencies:
-      "@intlify/shared": 9.2.2
-      source-map: 0.6.1
+      "@types/estree": 1.0.1
+      estree-walker: 2.0.2
+      picomatch: 2.3.1
 
-  /@intlify/message-compiler@9.3.0-beta.17:
+  /@trysound/sax@0.2.0:
     resolution:
       {
-        integrity: sha512-i7hvVIRk1Ax2uKa9xLRJCT57to08OhFMhFXXjWN07rmx5pWQYQ23MfX1xgggv9drnWTNhqEiD+u4EJeHoS5+Ww==
+        integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==
       }
-    engines: { node: ">= 14" }
-    dependencies:
-      "@intlify/shared": 9.3.0-beta.17
-      source-map: 0.6.1
+    engines: { node: ">=10.13.0" }
     dev: true
 
-  /@intlify/shared@9.2.2:
+  /@tsconfig/node10@1.0.9:
     resolution:
       {
-        integrity: sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==
+        integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==
       }
-    engines: { node: ">= 14" }
+    dev: true
 
-  /@intlify/shared@9.3.0-beta.17:
+  /@tsconfig/node12@1.0.11:
     resolution:
       {
-        integrity: sha512-mscf7RQsUTOil35jTij4KGW1RC9SWQjYScwLxP53Ns6g24iEd5HN7ksbt9O6FvTmlQuX77u+MXpBdfJsGqizLQ==
+        integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==
       }
-    engines: { node: ">= 14" }
     dev: true
 
-  /@intlify/unplugin-vue-i18n@0.11.0(vue-i18n@9.2.2):
+  /@tsconfig/node14@1.0.3:
     resolution:
       {
-        integrity: sha512-ivcLZo08fvepHWV8o5lcKfhcKFSWqhwrqIAU6pUIbvq2ICo9fnXnIPYIZj7FeuHDLW1G3ADm44ZhQC3nYmvDlg==
+        integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==
       }
-    engines: { node: ">= 14.16" }
-    peerDependencies:
-      petite-vue-i18n: "*"
-      vue-i18n: "*"
-      vue-i18n-bridge: "*"
-    peerDependenciesMeta:
-      petite-vue-i18n:
-        optional: true
-      vue-i18n:
-        optional: true
-      vue-i18n-bridge:
-        optional: true
-    dependencies:
-      "@intlify/bundle-utils": 6.0.1(vue-i18n@9.2.2)
-      "@intlify/shared": 9.3.0-beta.17
-      "@rollup/pluginutils": 5.0.2
-      "@vue/compiler-sfc": 3.3.4
-      debug: 4.3.4
-      fast-glob: 3.2.12
-      js-yaml: 4.1.0
-      json5: 2.2.3
-      pathe: 1.1.1
-      picocolors: 1.0.0
-      source-map: 0.6.1
-      unplugin: 1.3.1
-      vue-i18n: 9.2.2(vue@3.3.4)
-    transitivePeerDependencies:
-      - rollup
-      - supports-color
     dev: true
 
-  /@intlify/vue-devtools@9.2.2:
+  /@tsconfig/node16@1.0.4:
     resolution:
       {
-        integrity: sha512-+dUyqyCHWHb/UcvY1MlIpO87munedm3Gn6E9WWYdWrMuYLcoIoOEVDWSS8xSwtlPU+kA+MEQTP6Q1iI/ocusJg==
+        integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
       }
-    engines: { node: ">= 14" }
-    dependencies:
-      "@intlify/core-base": 9.2.2
-      "@intlify/shared": 9.2.2
+    dev: true
 
-  /@isaacs/cliui@8.0.2:
+  /@types/estree@0.0.39:
     resolution:
       {
-        integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
+        integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
       }
-    engines: { node: ">=12" }
-    dependencies:
-      string-width: 5.1.2
-      string-width-cjs: /string-width@4.2.3
-      strip-ansi: 7.1.0
-      strip-ansi-cjs: /strip-ansi@6.0.1
-      wrap-ansi: 8.1.0
-      wrap-ansi-cjs: /wrap-ansi@7.0.0
     dev: true
 
-  /@jridgewell/gen-mapping@0.3.3:
+  /@types/estree@1.0.1:
     resolution:
       {
-        integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==
+        integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==
       }
-    engines: { node: ">=6.0.0" }
-    dependencies:
-      "@jridgewell/set-array": 1.1.2
-      "@jridgewell/sourcemap-codec": 1.4.15
-      "@jridgewell/trace-mapping": 0.3.18
 
-  /@jridgewell/resolve-uri@3.1.0:
+  /@types/js-cookie@3.0.3:
     resolution:
       {
-        integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==
+        integrity: sha512-Xe7IImK09HP1sv2M/aI+48a20VX+TdRJucfq4vfRVy6nWN8PYPOEnlMRSgxJAgYQIXJVL8dZ4/ilAM7dWNaOww==
       }
-    engines: { node: ">=6.0.0" }
+    dev: true
 
-  /@jridgewell/resolve-uri@3.1.1:
+  /@types/json-schema@7.0.12:
     resolution:
       {
-        integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==
+        integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
       }
-    engines: { node: ">=6.0.0" }
     dev: true
 
-  /@jridgewell/set-array@1.1.2:
+  /@types/lodash-es@4.17.7:
     resolution:
       {
-        integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==
+        integrity: sha512-z0ptr6UI10VlU6l5MYhGwS4mC8DZyYer2mCoyysZtSF7p26zOX8UpbrV0YpNYLGS8K4PUFIyEr62IMFFjveSiQ==
       }
-    engines: { node: ">=6.0.0" }
+    dependencies:
+      "@types/lodash": 4.14.195
+    dev: false
 
-  /@jridgewell/source-map@0.3.3:
+  /@types/lodash@4.14.195:
     resolution:
       {
-        integrity: sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==
+        integrity: sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg==
       }
-    dependencies:
-      "@jridgewell/gen-mapping": 0.3.3
-      "@jridgewell/trace-mapping": 0.3.18
-    dev: true
+    dev: false
 
-  /@jridgewell/sourcemap-codec@1.4.14:
+  /@types/minimatch@3.0.5:
     resolution:
       {
-        integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
+        integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==
       }
+    dev: true
 
-  /@jridgewell/sourcemap-codec@1.4.15:
+  /@types/minimist@1.2.2:
     resolution:
       {
-        integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==
+        integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
       }
+    dev: true
 
-  /@jridgewell/trace-mapping@0.3.18:
+  /@types/mockjs@1.0.7:
     resolution:
       {
-        integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==
+        integrity: sha512-OCxXz6hEaJOVpRwuJMiVY5a6LtJcih+br9gwB/Q8ooOBikvk5FpBQ31OlNimXo3EqKha1Z7PFBni+q9m+8NCWg==
       }
-    dependencies:
-      "@jridgewell/resolve-uri": 3.1.0
-      "@jridgewell/sourcemap-codec": 1.4.14
+    dev: true
 
-  /@jridgewell/trace-mapping@0.3.9:
+  /@types/node@20.3.1:
     resolution:
       {
-        integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
+        integrity: sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
       }
-    dependencies:
-      "@jridgewell/resolve-uri": 3.1.1
-      "@jridgewell/sourcemap-codec": 1.4.15
     dev: true
 
-  /@nodelib/fs.scandir@2.1.5:
+  /@types/normalize-package-data@2.4.1:
     resolution:
       {
-        integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
+        integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==
       }
-    engines: { node: ">= 8" }
-    dependencies:
-      "@nodelib/fs.stat": 2.0.5
-      run-parallel: 1.2.0
+    dev: true
 
-  /@nodelib/fs.stat@2.0.5:
+  /@types/nprogress@0.2.0:
     resolution:
       {
-        integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
+        integrity: sha512-1cYJrqq9GezNFPsWTZpFut/d4CjpZqA0vhqDUPFWYKF1oIyBz5qnoYMzR+0C/T96t3ebLAC1SSnwrVOm5/j74A==
       }
-    engines: { node: ">= 8" }
+    dev: true
 
-  /@nodelib/fs.walk@1.2.8:
+  /@types/qs@6.9.7:
     resolution:
       {
-        integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
+        integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==
       }
-    engines: { node: ">= 8" }
-    dependencies:
-      "@nodelib/fs.scandir": 2.1.5
-      fastq: 1.15.0
+    dev: true
 
-  /@nuxt/kit@3.6.0:
+  /@types/resolve@1.17.1:
     resolution:
       {
-        integrity: sha512-rqQYyWlhE42oWRQNR58KU1JYhoWryN78x8eYzFTHgalfpMjtPqZv2j9K4+hFRk0XLRUKnut4tE/3+UYyZ7ybVw==,
-        tarball: https://registry.npmmirror.com/@nuxt/kit/-/kit-3.6.0.tgz
+        integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==
       }
-    engines: { node: ^14.18.0 || >=16.10.0 }
-    requiresBuild: true
     dependencies:
-      "@nuxt/schema": 3.6.0
-      c12: 1.4.2
-      consola: 3.1.0
-      defu: 6.1.2
-      globby: 13.2.0
-      hash-sum: 2.0.0
-      ignore: 5.2.4
-      jiti: 1.18.2
-      knitwork: 1.0.0
-      mlly: 1.4.0
-      pathe: 1.1.1
-      pkg-types: 1.0.3
-      scule: 1.0.0
-      semver: 7.5.3
-      unctx: 2.3.1
-      unimport: 3.0.8
-      untyped: 1.3.2
-    transitivePeerDependencies:
-      - rollup
-      - supports-color
-    dev: false
-    optional: true
+      "@types/node": 20.3.1
+    dev: true
 
-  /@nuxt/schema@3.6.0:
+  /@types/semver@7.5.0:
     resolution:
       {
-        integrity: sha512-6/nq+W77JODDfhMBZTi7HCD3hT5oHegsasAzUnDmvwWuY1io7BXX9x2mDhL8E3LhVzQuN5vhi3GBgwHwCfdKEA==
+        integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
       }
-    engines: { node: ^14.18.0 || >=16.10.0 }
-    requiresBuild: true
-    dependencies:
-      defu: 6.1.2
-      hookable: 5.5.3
-      pathe: 1.1.1
-      pkg-types: 1.0.3
-      postcss-import-resolver: 2.0.0
-      std-env: 3.3.3
-      ufo: 1.1.2
-      unimport: 3.0.8
-      untyped: 1.3.2
-    transitivePeerDependencies:
-      - rollup
-      - supports-color
-    dev: false
-    optional: true
+    dev: true
 
-  /@pkgjs/parseargs@0.11.0:
+  /@types/sortablejs@1.15.1:
     resolution:
       {
-        integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==,
-        tarball: https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz
+        integrity: sha512-g/JwBNToh6oCTAwNS8UGVmjO7NLDKsejVhvE4x1eWiPTC3uCuNsa/TD4ssvX3du+MLiM+SHPNDuijp8y76JzLQ==
       }
-    engines: { node: ">=14" }
-    requiresBuild: true
     dev: true
-    optional: true
 
-  /@pureadmin/descriptions@1.1.1(element-plus@2.3.6):
+  /@types/web-bluetooth@0.0.16:
     resolution:
       {
-        integrity: sha512-4BHLKomLU/LxGs5EUA+h+aKNrJEkhrU6+QE8VoWfJZ8VTU6ddvFLT/Pi4WuO5CWNXM9ZjqvHLFFVwEPlKntqtg==
+        integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==
       }
-    peerDependencies:
-      element-plus: ^2.0.0
-    dependencies:
-      "@element-plus/icons-vue": 2.1.0(vue@3.3.4)
-      element-plus: 2.3.6(vue@3.3.4)
-      vue: 3.3.4
     dev: false
 
-  /@pureadmin/table@2.3.2(element-plus@2.3.6):
+  /@types/web-bluetooth@0.0.17:
     resolution:
       {
-        integrity: sha512-oaMf8X4bv5KPcO4li+bO7W28BS5IMy+zxPpPNh/Tdxewc2dykvoqqpRIAiS8prJOHxI42/77xbjoGb+lwQH5aA==
+        integrity: sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==
       }
-    peerDependencies:
-      element-plus: ^2.0.0
-    dependencies:
-      element-plus: 2.3.6(vue@3.3.4)
-      vue: 3.3.4
     dev: false
 
-  /@pureadmin/theme@3.1.0:
+  /@typescript-eslint/eslint-plugin@5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-3kBbqB6Uua096w91w1SrGna0dM8AYO5HFk/HU8G0DsEaijgRrm+dYIJUrqbv+stLUxlYPNVXpDS/APZjF0cOAg==
+        integrity: sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==
       }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
+    peerDependencies:
+      "@typescript-eslint/parser": ^5.0.0
+      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+      typescript: "*"
+    peerDependenciesMeta:
+      typescript:
+        optional: true
     dependencies:
-      "@zougt/some-loader-utils": 1.4.3
-      fs-extra: 11.1.1
-      string-hash: 1.1.3
+      "@eslint-community/regexpp": 4.5.1
+      "@typescript-eslint/parser": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+      "@typescript-eslint/scope-manager": 5.60.0
+      "@typescript-eslint/type-utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+      "@typescript-eslint/utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+      debug: 4.3.4
+      eslint: 8.43.0
+      grapheme-splitter: 1.0.4
+      ignore: 5.2.4
+      natural-compare-lite: 1.4.0
+      semver: 7.5.3
+      tsutils: 3.21.0(typescript@5.0.4)
+      typescript: 5.0.4
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@pureadmin/utils@1.9.6(echarts@5.4.2)(vue@3.3.4):
+  /@typescript-eslint/parser@5.60.0(eslint@8.43.0)(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-vu9KhKHx7JnHEDq1k0rmesvBDlAF4TD/x7qNyyNkwa8uvdMB/lMMkGoeaKDKjXpp26d9PRhAzRyIG8wZz/ntmw==
+        integrity: sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==
       }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      echarts: "*"
-      vue: "*"
+      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+      typescript: "*"
     peerDependenciesMeta:
-      echarts:
-        optional: true
-      vue:
+      typescript:
         optional: true
     dependencies:
-      echarts: 5.4.2
-      vue: 3.3.4
-    dev: false
+      "@typescript-eslint/scope-manager": 5.60.0
+      "@typescript-eslint/types": 5.60.0
+      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
+      debug: 4.3.4
+      eslint: 8.43.0
+      typescript: 5.0.4
+    transitivePeerDependencies:
+      - supports-color
+    dev: true
 
-  /@rollup/plugin-node-resolve@13.3.0:
+  /@typescript-eslint/scope-manager@5.60.0:
     resolution:
       {
-        integrity: sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==
+        integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==
       }
-    engines: { node: ">= 10.0.0" }
-    peerDependencies:
-      rollup: ^2.42.0
-    peerDependenciesMeta:
-      rollup:
-        optional: true
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dependencies:
-      "@rollup/pluginutils": 3.1.0
-      "@types/resolve": 1.17.1
-      deepmerge: 4.3.1
-      is-builtin-module: 3.2.1
-      is-module: 1.0.0
-      resolve: 1.22.2
+      "@typescript-eslint/types": 5.60.0
+      "@typescript-eslint/visitor-keys": 5.60.0
     dev: true
 
-  /@rollup/pluginutils@3.1.0:
+  /@typescript-eslint/type-utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==
+        integrity: sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==
       }
-    engines: { node: ">= 8.0.0" }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      rollup: ^1.20.0||^2.0.0
+      eslint: "*"
+      typescript: "*"
     peerDependenciesMeta:
-      rollup:
+      typescript:
         optional: true
     dependencies:
-      "@types/estree": 0.0.39
-      estree-walker: 1.0.1
-      picomatch: 2.3.1
+      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
+      "@typescript-eslint/utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
+      debug: 4.3.4
+      eslint: 8.43.0
+      tsutils: 3.21.0(typescript@5.0.4)
+      typescript: 5.0.4
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@rollup/pluginutils@4.2.1:
+  /@typescript-eslint/types@5.60.0:
     resolution:
       {
-        integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==
+        integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==
       }
-    engines: { node: ">= 8.0.0" }
-    dependencies:
-      estree-walker: 2.0.2
-      picomatch: 2.3.1
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dev: true
 
-  /@rollup/pluginutils@5.0.2:
+  /@typescript-eslint/typescript-estree@5.60.0(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==
+        integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==
       }
-    engines: { node: ">=14.0.0" }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      rollup: ^1.20.0||^2.0.0||^3.0.0
+      typescript: "*"
     peerDependenciesMeta:
-      rollup:
+      typescript:
         optional: true
     dependencies:
-      "@types/estree": 1.0.1
-      estree-walker: 2.0.2
-      picomatch: 2.3.1
-
-  /@sxzz/popperjs-es@2.11.7:
-    resolution:
-      {
-        integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==,
-        tarball: https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz
-      }
-    dev: false
+      "@typescript-eslint/types": 5.60.0
+      "@typescript-eslint/visitor-keys": 5.60.0
+      debug: 4.3.4
+      globby: 11.1.0
+      is-glob: 4.0.3
+      semver: 7.5.3
+      tsutils: 3.21.0(typescript@5.0.4)
+      typescript: 5.0.4
+    transitivePeerDependencies:
+      - supports-color
+    dev: true
 
-  /@trysound/sax@0.2.0:
+  /@typescript-eslint/utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==
+        integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==
       }
-    engines: { node: ">=10.13.0" }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
+    peerDependencies:
+      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+    dependencies:
+      "@eslint-community/eslint-utils": 4.4.0(eslint@8.43.0)
+      "@types/json-schema": 7.0.12
+      "@types/semver": 7.5.0
+      "@typescript-eslint/scope-manager": 5.60.0
+      "@typescript-eslint/types": 5.60.0
+      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
+      eslint: 8.43.0
+      eslint-scope: 5.1.1
+      semver: 7.5.3
+    transitivePeerDependencies:
+      - supports-color
+      - typescript
     dev: true
 
-  /@tsconfig/node10@1.0.9:
+  /@typescript-eslint/visitor-keys@5.60.0:
     resolution:
       {
-        integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==
+        integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==
       }
+    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
+    dependencies:
+      "@typescript-eslint/types": 5.60.0
+      eslint-visitor-keys: 3.4.1
     dev: true
 
-  /@tsconfig/node12@1.0.11:
+  /@vitejs/plugin-vue-jsx@3.0.1(vite@4.3.9)(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==
+        integrity: sha512-+Jb7ggL48FSPS1uhPnJbJwWa9Sr90vQ+d0InW+AhBM22n+cfuYqJZDckBc+W3QSHe1WDvewMZfa4wZOtk5pRgw==
       }
+    engines: { node: ^14.18.0 || >=16.0.0 }
+    peerDependencies:
+      vite: ^4.0.0
+      vue: ^3.0.0
+    dependencies:
+      "@babel/core": 7.22.5
+      "@babel/plugin-transform-typescript": 7.22.5(@babel/core@7.22.5)
+      "@vue/babel-plugin-jsx": 1.1.3(@babel/core@7.22.5)
+      vite: 4.3.9(@types/node@20.3.1)(sass@1.63.6)(terser@5.18.1)
+      vue: 3.3.4
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@tsconfig/node14@1.0.3:
+  /@vitejs/plugin-vue@4.2.3(vite@4.3.9)(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==
-      }
-    dev: true
-
-  /@tsconfig/node16@1.0.4:
-    resolution:
-      {
-        integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==
-      }
-    dev: true
-
-  /@types/estree@0.0.39:
-    resolution:
-      {
-        integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
-      }
-    dev: true
-
-  /@types/estree@1.0.1:
-    resolution:
-      {
-        integrity: sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==
-      }
-
-  /@types/js-cookie@3.0.3:
-    resolution:
-      {
-        integrity: sha512-Xe7IImK09HP1sv2M/aI+48a20VX+TdRJucfq4vfRVy6nWN8PYPOEnlMRSgxJAgYQIXJVL8dZ4/ilAM7dWNaOww==
+        integrity: sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==
       }
+    engines: { node: ^14.18.0 || >=16.0.0 }
+    peerDependencies:
+      vite: ^4.0.0
+      vue: ^3.2.25
+    dependencies:
+      vite: 4.3.9(@types/node@20.3.1)(sass@1.63.6)(terser@5.18.1)
+      vue: 3.3.4
     dev: true
 
-  /@types/json-schema@7.0.12:
+  /@volar/language-core@1.7.8:
     resolution:
       {
-        integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
+        integrity: sha512-TPklg4c2e/f1xB/MGZEiQc3AWG+dH64ZfBlYjFB8nNaWJt4Z4k+IHBhmaP52APG+5PHFerwiWI9oF002RrRTPA==
       }
+    dependencies:
+      "@volar/source-map": 1.7.8
     dev: true
 
-  /@types/lodash-es@4.17.7:
+  /@volar/source-map@1.7.8:
     resolution:
       {
-        integrity: sha512-z0ptr6UI10VlU6l5MYhGwS4mC8DZyYer2mCoyysZtSF7p26zOX8UpbrV0YpNYLGS8K4PUFIyEr62IMFFjveSiQ==
+        integrity: sha512-g2dtC2kOghvfzMDWeODIo4HO1Ml4hxzPTZyAFDz+YhRF9HjZYJSCaWaVuPZ+z0kY+T2daOHYA10GdrWQ5q0teA==
       }
     dependencies:
-      "@types/lodash": 4.14.195
-    dev: false
-
-  /@types/lodash@4.14.195:
-    resolution:
-      {
-        integrity: sha512-Hwx9EUgdwf2GLarOjQp5ZH8ZmblzcbTBC2wtQWNKARBSxM9ezRIAUpeDTgoQRAFB0+8CNWXVA9+MaSOzOF3nPg==
-      }
-    dev: false
-
-  /@types/minimatch@3.0.5:
-    resolution:
-      {
-        integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==
-      }
+      muggle-string: 0.3.1
     dev: true
 
-  /@types/minimist@1.2.2:
+  /@volar/typescript@1.7.8:
     resolution:
       {
-        integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==
+        integrity: sha512-NDcI5ZQcdr8kgxzMQrhSSWIM8Tl0MbMFrkvJPTjfm2rdAQZPFT8zv3LrEW9Fqh0e9z2YbCry7jr4a/GShBqeDA==
       }
+    dependencies:
+      "@volar/language-core": 1.7.8
     dev: true
 
-  /@types/mockjs@1.0.7:
+  /@vue/babel-helper-vue-transform-on@1.1.3:
     resolution:
       {
-        integrity: sha512-OCxXz6hEaJOVpRwuJMiVY5a6LtJcih+br9gwB/Q8ooOBikvk5FpBQ31OlNimXo3EqKha1Z7PFBni+q9m+8NCWg==
+        integrity: sha512-iSaE7+1+/tPp79XnvsAVjaCjuY7dHjfsArPozi+1USJ1A5lf5JUovCP90Hbc+L9BUSHGlXMEYuQrL2vS3Yz9ow==
       }
     dev: true
 
-  /@types/node@20.3.1:
+  /@vue/babel-plugin-jsx@1.1.3(@babel/core@7.22.5):
     resolution:
       {
-        integrity: sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
+        integrity: sha512-q4ekWt6KcWmM7GNTZjBO53EOM/5uczu7q1Ks39Sz0d0PJFJ+oNi6xyu17WZ/uoSi/s81ouq99G18cLoEX9X1OA==
       }
+    peerDependencies:
+      "@babel/core": ^7.0.0-0
+    dependencies:
+      "@babel/core": 7.22.5
+      "@babel/helper-module-imports": 7.22.5
+      "@babel/plugin-syntax-jsx": 7.22.5(@babel/core@7.22.5)
+      "@babel/template": 7.22.5
+      "@babel/traverse": 7.22.5
+      "@babel/types": 7.22.5
+      "@vue/babel-helper-vue-transform-on": 1.1.3
+      camelcase: 6.3.0
+      html-tags: 3.3.1
+      svg-tags: 1.0.0
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@types/normalize-package-data@2.4.1:
+  /@vue/compiler-core@3.3.4:
     resolution:
       {
-        integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==
+        integrity: sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==
       }
-    dev: true
+    dependencies:
+      "@babel/parser": 7.22.5
+      "@vue/shared": 3.3.4
+      estree-walker: 2.0.2
+      source-map-js: 1.0.2
 
-  /@types/nprogress@0.2.0:
+  /@vue/compiler-dom@3.3.4:
     resolution:
       {
-        integrity: sha512-1cYJrqq9GezNFPsWTZpFut/d4CjpZqA0vhqDUPFWYKF1oIyBz5qnoYMzR+0C/T96t3ebLAC1SSnwrVOm5/j74A==
+        integrity: sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==
       }
-    dev: true
+    dependencies:
+      "@vue/compiler-core": 3.3.4
+      "@vue/shared": 3.3.4
 
-  /@types/qs@6.9.7:
+  /@vue/compiler-sfc@3.3.4:
     resolution:
       {
-        integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==
+        integrity: sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==
       }
-    dev: true
+    dependencies:
+      "@babel/parser": 7.22.5
+      "@vue/compiler-core": 3.3.4
+      "@vue/compiler-dom": 3.3.4
+      "@vue/compiler-ssr": 3.3.4
+      "@vue/reactivity-transform": 3.3.4
+      "@vue/shared": 3.3.4
+      estree-walker: 2.0.2
+      magic-string: 0.30.0
+      postcss: 8.4.24
+      source-map-js: 1.0.2
 
-  /@types/resolve@1.17.1:
+  /@vue/compiler-ssr@3.3.4:
     resolution:
       {
-        integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==
+        integrity: sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==
       }
     dependencies:
-      "@types/node": 20.3.1
-    dev: true
+      "@vue/compiler-dom": 3.3.4
+      "@vue/shared": 3.3.4
 
-  /@types/semver@7.5.0:
+  /@vue/devtools-api@6.5.0:
     resolution:
       {
-        integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
+        integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==
       }
-    dev: true
 
-  /@types/sortablejs@1.15.1:
+  /@vue/eslint-config-prettier@7.1.0(eslint@8.43.0)(prettier@2.8.8):
     resolution:
       {
-        integrity: sha512-g/JwBNToh6oCTAwNS8UGVmjO7NLDKsejVhvE4x1eWiPTC3uCuNsa/TD4ssvX3du+MLiM+SHPNDuijp8y76JzLQ==
+        integrity: sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==
       }
+    peerDependencies:
+      eslint: ">= 7.28.0"
+      prettier: ">= 2.0.0"
+    dependencies:
+      eslint: 8.43.0
+      eslint-config-prettier: 8.8.0(eslint@8.43.0)
+      eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8)
+      prettier: 2.8.8
     dev: true
 
-  /@types/web-bluetooth@0.0.16:
-    resolution:
-      {
-        integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==
-      }
-    dev: false
-
-  /@types/web-bluetooth@0.0.17:
-    resolution:
-      {
-        integrity: sha512-4p9vcSmxAayx72yn70joFoL44c9MO/0+iVEBIQXe3v2h2SiAsEIo/G5v6ObFWvNKRFjbrVadNf9LqEEZeQPzdA==
-      }
-    dev: false
-
-  /@typescript-eslint/eslint-plugin@5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4):
+  /@vue/eslint-config-typescript@11.0.3(eslint-plugin-vue@9.15.1)(eslint@8.43.0)(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-78B+anHLF1TI8Jn/cD0Q00TBYdMgjdOn980JfAVa9yw5sop8nyTfVOQAv6LWywkOGLclDBtv5z3oxN4w7jxyNg==
+        integrity: sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
+    engines: { node: ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      "@typescript-eslint/parser": ^5.0.0
-      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+      eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
+      eslint-plugin-vue: ^9.0.0
       typescript: "*"
     peerDependenciesMeta:
       typescript:
         optional: true
     dependencies:
-      "@eslint-community/regexpp": 4.5.1
+      "@typescript-eslint/eslint-plugin": 5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4)
       "@typescript-eslint/parser": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
-      "@typescript-eslint/scope-manager": 5.60.0
-      "@typescript-eslint/type-utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
-      "@typescript-eslint/utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
-      debug: 4.3.4
       eslint: 8.43.0
-      grapheme-splitter: 1.0.4
-      ignore: 5.2.4
-      natural-compare-lite: 1.4.0
-      semver: 7.5.3
-      tsutils: 3.21.0(typescript@5.0.4)
+      eslint-plugin-vue: 9.15.1(eslint@8.43.0)
       typescript: 5.0.4
+      vue-eslint-parser: 9.3.1(eslint@8.43.0)
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /@typescript-eslint/parser@5.60.0(eslint@8.43.0)(typescript@5.0.4):
+  /@vue/language-core@1.8.1(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-jBONcBsDJ9UoTWrARkRRCgDz6wUggmH5RpQVlt7BimSwaTkTjwypGzKORXbR4/2Hqjk9hgwlon2rVQAjWNpkyQ==
+        integrity: sha512-pumv3k4J7P58hVh4YGRM9Qz3HaAr4TlFWM9bnVOkZ/2K9o2CK1lAP2y9Jw+Z0+mNL4F2uWQqnAPzj3seLyfpDA==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
       typescript: "*"
     peerDependenciesMeta:
       typescript:
         optional: true
     dependencies:
-      "@typescript-eslint/scope-manager": 5.60.0
-      "@typescript-eslint/types": 5.60.0
-      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
-      debug: 4.3.4
-      eslint: 8.43.0
+      "@volar/language-core": 1.7.8
+      "@volar/source-map": 1.7.8
+      "@vue/compiler-dom": 3.3.4
+      "@vue/reactivity": 3.3.4
+      "@vue/shared": 3.3.4
+      minimatch: 9.0.2
+      muggle-string: 0.3.1
       typescript: 5.0.4
-    transitivePeerDependencies:
-      - supports-color
+      vue-template-compiler: 2.7.14
     dev: true
 
-  /@typescript-eslint/scope-manager@5.60.0:
+  /@vue/reactivity-transform@3.3.4:
     resolution:
       {
-        integrity: sha512-hakuzcxPwXi2ihf9WQu1BbRj1e/Pd8ZZwVTG9kfbxAMZstKz8/9OoexIwnmLzShtsdap5U/CoQGRCWlSuPbYxQ==
+        integrity: sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     dependencies:
-      "@typescript-eslint/types": 5.60.0
-      "@typescript-eslint/visitor-keys": 5.60.0
-    dev: true
+      "@babel/parser": 7.22.5
+      "@vue/compiler-core": 3.3.4
+      "@vue/shared": 3.3.4
+      estree-walker: 2.0.2
+      magic-string: 0.30.0
 
-  /@typescript-eslint/type-utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
+  /@vue/reactivity@3.3.4:
     resolution:
       {
-        integrity: sha512-X7NsRQddORMYRFH7FWo6sA9Y/zbJ8s1x1RIAtnlj6YprbToTiQnM6vxcMu7iYhdunmoC0rUWlca13D5DVHkK2g==
+        integrity: sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-    peerDependencies:
-      eslint: "*"
-      typescript: "*"
-    peerDependenciesMeta:
-      typescript:
-        optional: true
     dependencies:
-      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
-      "@typescript-eslint/utils": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
-      debug: 4.3.4
-      eslint: 8.43.0
-      tsutils: 3.21.0(typescript@5.0.4)
-      typescript: 5.0.4
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
+      "@vue/shared": 3.3.4
 
-  /@typescript-eslint/types@5.60.0:
+  /@vue/runtime-core@3.3.4:
     resolution:
       {
-        integrity: sha512-ascOuoCpNZBccFVNJRSC6rPq4EmJ2NkuoKnd6LDNyAQmdDnziAtxbCGWCbefG1CNzmDvd05zO36AmB7H8RzKPA==
+        integrity: sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-    dev: true
+    dependencies:
+      "@vue/reactivity": 3.3.4
+      "@vue/shared": 3.3.4
 
-  /@typescript-eslint/typescript-estree@5.60.0(typescript@5.0.4):
+  /@vue/runtime-dom@3.3.4:
     resolution:
       {
-        integrity: sha512-R43thAuwarC99SnvrBmh26tc7F6sPa2B3evkXp/8q954kYL6Ro56AwASYWtEEi+4j09GbiNAHqYwNNZuNlARGQ==
+        integrity: sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-    peerDependencies:
-      typescript: "*"
-    peerDependenciesMeta:
-      typescript:
-        optional: true
     dependencies:
-      "@typescript-eslint/types": 5.60.0
-      "@typescript-eslint/visitor-keys": 5.60.0
-      debug: 4.3.4
-      globby: 11.1.0
-      is-glob: 4.0.3
-      semver: 7.5.3
-      tsutils: 3.21.0(typescript@5.0.4)
-      typescript: 5.0.4
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
+      "@vue/runtime-core": 3.3.4
+      "@vue/shared": 3.3.4
+      csstype: 3.1.2
 
-  /@typescript-eslint/utils@5.60.0(eslint@8.43.0)(typescript@5.0.4):
+  /@vue/server-renderer@3.3.4(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-ba51uMqDtfLQ5+xHtwlO84vkdjrqNzOnqrnwbMHMRY8Tqeme8C2Q8Fc7LajfGR+e3/4LoYiWXUM6BpIIbHJ4hQ==
+        integrity: sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
     peerDependencies:
-      eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+      vue: 3.3.4
     dependencies:
-      "@eslint-community/eslint-utils": 4.4.0(eslint@8.43.0)
-      "@types/json-schema": 7.0.12
-      "@types/semver": 7.5.0
-      "@typescript-eslint/scope-manager": 5.60.0
-      "@typescript-eslint/types": 5.60.0
-      "@typescript-eslint/typescript-estree": 5.60.0(typescript@5.0.4)
-      eslint: 8.43.0
-      eslint-scope: 5.1.1
-      semver: 7.5.3
-    transitivePeerDependencies:
-      - supports-color
-      - typescript
-    dev: true
+      "@vue/compiler-ssr": 3.3.4
+      "@vue/shared": 3.3.4
+      vue: 3.3.4
 
-  /@typescript-eslint/visitor-keys@5.60.0:
+  /@vue/shared@3.3.4:
     resolution:
       {
-        integrity: sha512-wm9Uz71SbCyhUKgcaPRauBdTegUyY/ZWl8gLwD/i/ybJqscrrdVSFImpvUz16BLPChIeKBK5Fa9s6KDQjsjyWw==
+        integrity: sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==
       }
-    engines: { node: ^12.22.0 || ^14.17.0 || >=16.0.0 }
-    dependencies:
-      "@typescript-eslint/types": 5.60.0
-      eslint-visitor-keys: 3.4.1
-    dev: true
 
-  /@vitejs/plugin-vue-jsx@3.0.1(vite@4.3.9)(vue@3.3.4):
+  /@vue/typescript@1.8.1(typescript@5.0.4):
     resolution:
       {
-        integrity: sha512-+Jb7ggL48FSPS1uhPnJbJwWa9Sr90vQ+d0InW+AhBM22n+cfuYqJZDckBc+W3QSHe1WDvewMZfa4wZOtk5pRgw==
+        integrity: sha512-nQpo55j/roie8heCfqyXHnyayqD5+p4/0fzfxH4ZuHf7NSBQS791PNv7ztp2CCOjnGAiaiCMdtC9rc6oriyPUg==
       }
-    engines: { node: ^14.18.0 || >=16.0.0 }
-    peerDependencies:
-      vite: ^4.0.0
-      vue: ^3.0.0
     dependencies:
-      "@babel/core": 7.22.5
-      "@babel/plugin-transform-typescript": 7.22.5(@babel/core@7.22.5)
-      "@vue/babel-plugin-jsx": 1.1.3(@babel/core@7.22.5)
-      vite: 4.3.9(@types/node@20.3.1)(sass@1.63.6)(terser@5.18.1)
-      vue: 3.3.4
+      "@volar/typescript": 1.7.8
+      "@vue/language-core": 1.8.1(typescript@5.0.4)
     transitivePeerDependencies:
-      - supports-color
-    dev: true
-
-  /@vitejs/plugin-vue@4.2.3(vite@4.3.9)(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==
-      }
-    engines: { node: ^14.18.0 || >=16.0.0 }
-    peerDependencies:
-      vite: ^4.0.0
-      vue: ^3.2.25
-    dependencies:
-      vite: 4.3.9(@types/node@20.3.1)(sass@1.63.6)(terser@5.18.1)
-      vue: 3.3.4
+      - typescript
     dev: true
 
-  /@volar/language-core@1.7.8:
+  /@vueuse/core@10.2.0(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-TPklg4c2e/f1xB/MGZEiQc3AWG+dH64ZfBlYjFB8nNaWJt4Z4k+IHBhmaP52APG+5PHFerwiWI9oF002RrRTPA==
+        integrity: sha512-aHBnoCteIS3hFu7ZZkVB93SanVDY6t4TIb7XDLxJT/HQdAZz+2RdIEJ8rj5LUoEJr7Damb5+sJmtpCwGez5ozQ==
       }
     dependencies:
-      "@volar/source-map": 1.7.8
-    dev: true
+      "@types/web-bluetooth": 0.0.17
+      "@vueuse/metadata": 10.2.0
+      "@vueuse/shared": 10.2.0(vue@3.3.4)
+      vue-demi: 0.14.5(vue@3.3.4)
+    transitivePeerDependencies:
+      - "@vue/composition-api"
+      - vue
+    dev: false
 
-  /@volar/source-map@1.7.8:
+  /@vueuse/core@9.13.0(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-g2dtC2kOghvfzMDWeODIo4HO1Ml4hxzPTZyAFDz+YhRF9HjZYJSCaWaVuPZ+z0kY+T2daOHYA10GdrWQ5q0teA==
+        integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==
       }
     dependencies:
-      muggle-string: 0.3.1
-    dev: true
+      "@types/web-bluetooth": 0.0.16
+      "@vueuse/metadata": 9.13.0
+      "@vueuse/shared": 9.13.0(vue@3.3.4)
+      vue-demi: 0.14.5(vue@3.3.4)
+    transitivePeerDependencies:
+      - "@vue/composition-api"
+      - vue
+    dev: false
 
-  /@volar/typescript@1.7.8:
+  /@vueuse/metadata@10.2.0:
     resolution:
       {
-        integrity: sha512-NDcI5ZQcdr8kgxzMQrhSSWIM8Tl0MbMFrkvJPTjfm2rdAQZPFT8zv3LrEW9Fqh0e9z2YbCry7jr4a/GShBqeDA==
+        integrity: sha512-IR7Mkq6QSgZ38q/2ZzOt+Zz1OpcEsnwE64WBumDQ+RGKrosFCtUA2zgRrOqDEzPBXrVB+4HhFkwDjQMu0fDBKw==
       }
-    dependencies:
-      "@volar/language-core": 1.7.8
-    dev: true
+    dev: false
 
-  /@vue/babel-helper-vue-transform-on@1.1.3:
+  /@vueuse/metadata@9.13.0:
     resolution:
       {
-        integrity: sha512-iSaE7+1+/tPp79XnvsAVjaCjuY7dHjfsArPozi+1USJ1A5lf5JUovCP90Hbc+L9BUSHGlXMEYuQrL2vS3Yz9ow==
+        integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==
       }
-    dev: true
+    dev: false
 
-  /@vue/babel-plugin-jsx@1.1.3(@babel/core@7.22.5):
+  /@vueuse/motion@2.0.0(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-q4ekWt6KcWmM7GNTZjBO53EOM/5uczu7q1Ks39Sz0d0PJFJ+oNi6xyu17WZ/uoSi/s81ouq99G18cLoEX9X1OA==
+        integrity: sha512-V3TAlbt1OPmb9DZFoFCz9WC3Oue54t9VHlavSWm+VU1JNimYcd+pc6aGR/hgaHUAU9tOPRHoDTleSrv2zrdIsw==
       }
     peerDependencies:
-      "@babel/core": ^7.0.0-0
+      vue: ">=3.0.0"
     dependencies:
-      "@babel/core": 7.22.5
-      "@babel/helper-module-imports": 7.22.5
-      "@babel/plugin-syntax-jsx": 7.22.5(@babel/core@7.22.5)
-      "@babel/template": 7.22.5
-      "@babel/traverse": 7.22.5
-      "@babel/types": 7.22.5
-      "@vue/babel-helper-vue-transform-on": 1.1.3
-      camelcase: 6.3.0
-      html-tags: 3.3.1
-      svg-tags: 1.0.0
+      "@vueuse/core": 10.2.0(vue@3.3.4)
+      "@vueuse/shared": 10.2.0(vue@3.3.4)
+      csstype: 3.1.2
+      framesync: 6.1.2
+      popmotion: 11.0.5
+      style-value-types: 5.1.2
+      vue: 3.3.4
+    optionalDependencies:
+      "@nuxt/kit": registry.npmmirror.com/@nuxt/kit@3.6.0
     transitivePeerDependencies:
+      - "@vue/composition-api"
+      - rollup
       - supports-color
-    dev: true
+    dev: false
 
-  /@vue/compiler-core@3.3.4:
+  /@vueuse/shared@10.2.0(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==
+        integrity: sha512-dIeA8+g9Av3H5iF4NXR/sft4V6vys76CpZ6hxwj8eMXybXk2WRl3scSsOVi+kQ9SX38COR7AH7WwY83UcuxbSg==
       }
     dependencies:
-      "@babel/parser": 7.22.5
-      "@vue/shared": 3.3.4
-      estree-walker: 2.0.2
-      source-map-js: 1.0.2
+      vue-demi: 0.14.5(vue@3.3.4)
+    transitivePeerDependencies:
+      - "@vue/composition-api"
+      - vue
+    dev: false
 
-  /@vue/compiler-dom@3.3.4:
+  /@vueuse/shared@9.13.0(vue@3.3.4):
     resolution:
       {
-        integrity: sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==
+        integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==
       }
     dependencies:
-      "@vue/compiler-core": 3.3.4
-      "@vue/shared": 3.3.4
+      vue-demi: 0.14.5(vue@3.3.4)
+    transitivePeerDependencies:
+      - "@vue/composition-api"
+      - vue
+    dev: false
 
-  /@vue/compiler-sfc@3.3.4:
+  /@zougt/some-loader-utils@1.4.3:
     resolution:
       {
-        integrity: sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==
+        integrity: sha512-0FsoqSTQ+qOyp6x5Q6LZQ7xVwquEgLYiIStG3L8p0Q2GsGGYKDkOZ0mIpMt67aNdr8XLsbxXjzTl/iHtTz5zcA==
       }
+    engines: { node: ">= 10.13.0" }
+    hasBin: true
     dependencies:
-      "@babel/parser": 7.22.5
-      "@vue/compiler-core": 3.3.4
-      "@vue/compiler-dom": 3.3.4
-      "@vue/compiler-ssr": 3.3.4
-      "@vue/reactivity-transform": 3.3.4
-      "@vue/shared": 3.3.4
-      estree-walker: 2.0.2
-      magic-string: 0.30.0
+      cac: 6.7.14
+      color: 4.2.3
+      cssnano: 5.1.15(postcss@8.4.24)
+      cssnano-preset-lite: 2.1.3(postcss@8.4.24)
+      fs-extra: 10.1.0
       postcss: 8.4.24
-      source-map-js: 1.0.2
+      prettier: 2.8.8
+      uuid: 8.3.2
+    dev: true
 
-  /@vue/compiler-ssr@3.3.4:
+  /JSONStream@1.3.5:
     resolution:
       {
-        integrity: sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==
+        integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==
       }
+    hasBin: true
     dependencies:
-      "@vue/compiler-dom": 3.3.4
-      "@vue/shared": 3.3.4
+      jsonparse: 1.3.1
+      through: 2.3.8
+    dev: true
 
-  /@vue/devtools-api@6.5.0:
+  /acorn-jsx@5.3.2(acorn@7.4.1):
     resolution:
       {
-        integrity: sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q==
+        integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
       }
+    peerDependencies:
+      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+    dependencies:
+      acorn: 7.4.1
+    dev: true
 
-  /@vue/eslint-config-prettier@7.1.0(eslint@8.43.0)(prettier@2.8.8):
+  /acorn-jsx@5.3.2(acorn@8.9.0):
     resolution:
       {
-        integrity: sha512-Pv/lVr0bAzSIHLd9iz0KnvAr4GKyCEl+h52bc4e5yWuDVtLgFwycF7nrbWTAQAS+FU6q1geVd07lc6EWfJiWKQ==
+        integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
       }
     peerDependencies:
-      eslint: ">= 7.28.0"
-      prettier: ">= 2.0.0"
+      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
     dependencies:
-      eslint: 8.43.0
-      eslint-config-prettier: 8.8.0(eslint@8.43.0)
-      eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.8.0)(eslint@8.43.0)(prettier@2.8.8)
-      prettier: 2.8.8
+      acorn: 8.9.0
     dev: true
 
-  /@vue/eslint-config-typescript@11.0.3(eslint-plugin-vue@9.15.1)(eslint@8.43.0)(typescript@5.0.4):
+  /acorn-walk@8.2.0:
     resolution:
       {
-        integrity: sha512-dkt6W0PX6H/4Xuxg/BlFj5xHvksjpSlVjtkQCpaYJBIEuKj2hOVU7r+TIe+ysCwRYFz/lGqvklntRkCAibsbPw==
+        integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
       }
-    engines: { node: ^14.17.0 || >=16.0.0 }
-    peerDependencies:
-      eslint: ^6.2.0 || ^7.0.0 || ^8.0.0
-      eslint-plugin-vue: ^9.0.0
-      typescript: "*"
-    peerDependenciesMeta:
-      typescript:
-        optional: true
-    dependencies:
-      "@typescript-eslint/eslint-plugin": 5.60.0(@typescript-eslint/parser@5.60.0)(eslint@8.43.0)(typescript@5.0.4)
-      "@typescript-eslint/parser": 5.60.0(eslint@8.43.0)(typescript@5.0.4)
-      eslint: 8.43.0
-      eslint-plugin-vue: 9.15.1(eslint@8.43.0)
-      typescript: 5.0.4
-      vue-eslint-parser: 9.3.1(eslint@8.43.0)
-    transitivePeerDependencies:
-      - supports-color
+    engines: { node: ">=0.4.0" }
     dev: true
 
-  /@vue/language-core@1.8.1(typescript@5.0.4):
+  /acorn@7.4.1:
     resolution:
       {
-        integrity: sha512-pumv3k4J7P58hVh4YGRM9Qz3HaAr4TlFWM9bnVOkZ/2K9o2CK1lAP2y9Jw+Z0+mNL4F2uWQqnAPzj3seLyfpDA==
-      }
-    peerDependencies:
-      typescript: "*"
-    peerDependenciesMeta:
-      typescript:
-        optional: true
-    dependencies:
-      "@volar/language-core": 1.7.8
-      "@volar/source-map": 1.7.8
-      "@vue/compiler-dom": 3.3.4
-      "@vue/reactivity": 3.3.4
-      "@vue/shared": 3.3.4
-      minimatch: 9.0.2
-      muggle-string: 0.3.1
-      typescript: 5.0.4
-      vue-template-compiler: 2.7.14
-    dev: true
-
-  /@vue/reactivity-transform@3.3.4:
-    resolution:
-      {
-        integrity: sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==
-      }
-    dependencies:
-      "@babel/parser": 7.22.5
-      "@vue/compiler-core": 3.3.4
-      "@vue/shared": 3.3.4
-      estree-walker: 2.0.2
-      magic-string: 0.30.0
-
-  /@vue/reactivity@3.3.4:
-    resolution:
-      {
-        integrity: sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==
-      }
-    dependencies:
-      "@vue/shared": 3.3.4
-
-  /@vue/runtime-core@3.3.4:
-    resolution:
-      {
-        integrity: sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==
-      }
-    dependencies:
-      "@vue/reactivity": 3.3.4
-      "@vue/shared": 3.3.4
-
-  /@vue/runtime-dom@3.3.4:
-    resolution:
-      {
-        integrity: sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==
-      }
-    dependencies:
-      "@vue/runtime-core": 3.3.4
-      "@vue/shared": 3.3.4
-      csstype: 3.1.2
-
-  /@vue/server-renderer@3.3.4(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==
-      }
-    peerDependencies:
-      vue: 3.3.4
-    dependencies:
-      "@vue/compiler-ssr": 3.3.4
-      "@vue/shared": 3.3.4
-      vue: 3.3.4
-
-  /@vue/shared@3.3.4:
-    resolution:
-      {
-        integrity: sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ==
-      }
-
-  /@vue/typescript@1.8.1(typescript@5.0.4):
-    resolution:
-      {
-        integrity: sha512-nQpo55j/roie8heCfqyXHnyayqD5+p4/0fzfxH4ZuHf7NSBQS791PNv7ztp2CCOjnGAiaiCMdtC9rc6oriyPUg==
-      }
-    dependencies:
-      "@volar/typescript": 1.7.8
-      "@vue/language-core": 1.8.1(typescript@5.0.4)
-    transitivePeerDependencies:
-      - typescript
-    dev: true
-
-  /@vueuse/core@10.2.0(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-aHBnoCteIS3hFu7ZZkVB93SanVDY6t4TIb7XDLxJT/HQdAZz+2RdIEJ8rj5LUoEJr7Damb5+sJmtpCwGez5ozQ==
-      }
-    dependencies:
-      "@types/web-bluetooth": 0.0.17
-      "@vueuse/metadata": 10.2.0
-      "@vueuse/shared": 10.2.0(vue@3.3.4)
-      vue-demi: 0.14.5(vue@3.3.4)
-    transitivePeerDependencies:
-      - "@vue/composition-api"
-      - vue
-    dev: false
-
-  /@vueuse/core@9.13.0(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==
-      }
-    dependencies:
-      "@types/web-bluetooth": 0.0.16
-      "@vueuse/metadata": 9.13.0
-      "@vueuse/shared": 9.13.0(vue@3.3.4)
-      vue-demi: 0.14.5(vue@3.3.4)
-    transitivePeerDependencies:
-      - "@vue/composition-api"
-      - vue
-    dev: false
-
-  /@vueuse/metadata@10.2.0:
-    resolution:
-      {
-        integrity: sha512-IR7Mkq6QSgZ38q/2ZzOt+Zz1OpcEsnwE64WBumDQ+RGKrosFCtUA2zgRrOqDEzPBXrVB+4HhFkwDjQMu0fDBKw==
-      }
-    dev: false
-
-  /@vueuse/metadata@9.13.0:
-    resolution:
-      {
-        integrity: sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==
-      }
-    dev: false
-
-  /@vueuse/motion@2.0.0(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-V3TAlbt1OPmb9DZFoFCz9WC3Oue54t9VHlavSWm+VU1JNimYcd+pc6aGR/hgaHUAU9tOPRHoDTleSrv2zrdIsw==
-      }
-    peerDependencies:
-      vue: ">=3.0.0"
-    dependencies:
-      "@vueuse/core": 10.2.0(vue@3.3.4)
-      "@vueuse/shared": 10.2.0(vue@3.3.4)
-      csstype: 3.1.2
-      framesync: 6.1.2
-      popmotion: 11.0.5
-      style-value-types: 5.1.2
-      vue: 3.3.4
-    optionalDependencies:
-      "@nuxt/kit": 3.6.0
-    transitivePeerDependencies:
-      - "@vue/composition-api"
-      - rollup
-      - supports-color
-    dev: false
-
-  /@vueuse/shared@10.2.0(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-dIeA8+g9Av3H5iF4NXR/sft4V6vys76CpZ6hxwj8eMXybXk2WRl3scSsOVi+kQ9SX38COR7AH7WwY83UcuxbSg==
-      }
-    dependencies:
-      vue-demi: 0.14.5(vue@3.3.4)
-    transitivePeerDependencies:
-      - "@vue/composition-api"
-      - vue
-    dev: false
-
-  /@vueuse/shared@9.13.0(vue@3.3.4):
-    resolution:
-      {
-        integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==
-      }
-    dependencies:
-      vue-demi: 0.14.5(vue@3.3.4)
-    transitivePeerDependencies:
-      - "@vue/composition-api"
-      - vue
-    dev: false
-
-  /@zougt/some-loader-utils@1.4.3:
-    resolution:
-      {
-        integrity: sha512-0FsoqSTQ+qOyp6x5Q6LZQ7xVwquEgLYiIStG3L8p0Q2GsGGYKDkOZ0mIpMt67aNdr8XLsbxXjzTl/iHtTz5zcA==
-      }
-    engines: { node: ">= 10.13.0" }
-    hasBin: true
-    dependencies:
-      cac: 6.7.14
-      color: 4.2.3
-      cssnano: 5.1.15(postcss@8.4.24)
-      cssnano-preset-lite: 2.1.3(postcss@8.4.24)
-      fs-extra: 10.1.0
-      postcss: 8.4.24
-      prettier: 2.8.8
-      uuid: 8.3.2
-    dev: true
-
-  /JSONStream@1.3.5:
-    resolution:
-      {
-        integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==
-      }
-    hasBin: true
-    dependencies:
-      jsonparse: 1.3.1
-      through: 2.3.8
-    dev: true
-
-  /acorn-jsx@5.3.2(acorn@7.4.1):
-    resolution:
-      {
-        integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-      }
-    peerDependencies:
-      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
-    dependencies:
-      acorn: 7.4.1
-    dev: true
-
-  /acorn-jsx@5.3.2(acorn@8.9.0):
-    resolution:
-      {
-        integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
-      }
-    peerDependencies:
-      acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
-    dependencies:
-      acorn: 8.9.0
-    dev: true
-
-  /acorn-walk@8.2.0:
-    resolution:
-      {
-        integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
-      }
-    engines: { node: ">=0.4.0" }
-    dev: true
-
-  /acorn@7.4.1:
-    resolution:
-      {
-        integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
+        integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
       }
     engines: { node: ">=0.4.0" }
     hasBin: true
@@ -2666,7 +2250,7 @@ packages:
       }
     engines: { node: ">=4" }
     dependencies:
-      color-convert: 1.9.3
+      color-convert: registry.npmmirror.com/color-convert@1.9.3
 
   /ansi-styles@4.3.0:
     resolution:
@@ -2824,13 +2408,6 @@ packages:
       }
     dev: true
 
-  /balanced-match@2.0.0:
-    resolution:
-      {
-        integrity: sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==
-      }
-    dev: true
-
   /binary-extensions@2.2.0:
     resolution:
       {
@@ -3060,7 +2637,7 @@ packages:
       normalize-path: 3.0.0
       readdirp: 3.6.0
     optionalDependencies:
-      fsevents: 2.3.2
+      fsevents: registry.npmmirror.com/fsevents@2.3.2
 
   /chownr@2.0.0:
     resolution:
@@ -3105,7 +2682,7 @@ packages:
     engines: { node: ">=8" }
     dependencies:
       slice-ansi: 3.0.0
-      string-width: 4.2.3
+      string-width: registry.npmmirror.com/string-width@4.2.3
     dev: true
 
   /cli-truncate@3.1.0:
@@ -3139,14 +2716,6 @@ packages:
     hasBin: true
     dev: true
 
-  /color-convert@1.9.3:
-    resolution:
-      {
-        integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==
-      }
-    dependencies:
-      color-name: 1.1.3
-
   /color-convert@2.0.1:
     resolution:
       {
@@ -3157,12 +2726,6 @@ packages:
       color-name: 1.1.4
     dev: true
 
-  /color-name@1.1.3:
-    resolution:
-      {
-        integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
-      }
-
   /color-name@1.1.4:
     resolution:
       {
@@ -3409,18 +2972,10 @@ packages:
       postcss: 8.4.24
     dev: true
 
-  /css-functions-list@3.1.0:
+  /css-select@4.3.0:
     resolution:
       {
-        integrity: sha512-/9lCvYZaUbBGvYUgYGFJ4dcYiyqdhSjG7IPVluoV8A1ILjkF7ilmhp1OGUz8n+nmBcu0RNrQAzgD8B6FJbrt2w==
-      }
-    engines: { node: ">=12.22" }
-    dev: true
-
-  /css-select@4.3.0:
-    resolution:
-      {
-        integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
+        integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
       }
     dependencies:
       boolbase: 1.0.0
@@ -3974,7 +3529,7 @@ packages:
       "@ctrl/tinycolor": 3.6.0
       "@element-plus/icons-vue": 2.1.0(vue@3.3.4)
       "@floating-ui/dom": 1.4.2
-      "@popperjs/core": /@sxzz/popperjs-es@2.11.7
+      "@popperjs/core": registry.npmmirror.com/@sxzz/popperjs-es@2.11.7
       "@types/lodash": 4.14.195
       "@types/lodash-es": 4.17.7
       "@vueuse/core": 9.13.0(vue@3.3.4)
@@ -4030,7 +3585,7 @@ packages:
     engines: { node: ">=6.9.0" }
     requiresBuild: true
     dependencies:
-      graceful-fs: 4.2.11
+      graceful-fs: registry.npmmirror.com/graceful-fs@4.2.11
       memory-fs: 0.5.0
       tapable: 1.1.3
     dev: false
@@ -4090,28 +3645,28 @@ packages:
     hasBin: true
     requiresBuild: true
     optionalDependencies:
-      "@esbuild/android-arm": 0.17.19
-      "@esbuild/android-arm64": 0.17.19
-      "@esbuild/android-x64": 0.17.19
-      "@esbuild/darwin-arm64": 0.17.19
-      "@esbuild/darwin-x64": 0.17.19
-      "@esbuild/freebsd-arm64": 0.17.19
-      "@esbuild/freebsd-x64": 0.17.19
-      "@esbuild/linux-arm": 0.17.19
-      "@esbuild/linux-arm64": 0.17.19
-      "@esbuild/linux-ia32": 0.17.19
-      "@esbuild/linux-loong64": 0.17.19
-      "@esbuild/linux-mips64el": 0.17.19
-      "@esbuild/linux-ppc64": 0.17.19
-      "@esbuild/linux-riscv64": 0.17.19
-      "@esbuild/linux-s390x": 0.17.19
-      "@esbuild/linux-x64": 0.17.19
-      "@esbuild/netbsd-x64": 0.17.19
-      "@esbuild/openbsd-x64": 0.17.19
-      "@esbuild/sunos-x64": 0.17.19
-      "@esbuild/win32-arm64": 0.17.19
-      "@esbuild/win32-ia32": 0.17.19
-      "@esbuild/win32-x64": 0.17.19
+      "@esbuild/android-arm": registry.npmmirror.com/@esbuild/android-arm@0.17.19
+      "@esbuild/android-arm64": registry.npmmirror.com/@esbuild/android-arm64@0.17.19
+      "@esbuild/android-x64": registry.npmmirror.com/@esbuild/android-x64@0.17.19
+      "@esbuild/darwin-arm64": registry.npmmirror.com/@esbuild/darwin-arm64@0.17.19
+      "@esbuild/darwin-x64": registry.npmmirror.com/@esbuild/darwin-x64@0.17.19
+      "@esbuild/freebsd-arm64": registry.npmmirror.com/@esbuild/freebsd-arm64@0.17.19
+      "@esbuild/freebsd-x64": registry.npmmirror.com/@esbuild/freebsd-x64@0.17.19
+      "@esbuild/linux-arm": registry.npmmirror.com/@esbuild/linux-arm@0.17.19
+      "@esbuild/linux-arm64": registry.npmmirror.com/@esbuild/linux-arm64@0.17.19
+      "@esbuild/linux-ia32": registry.npmmirror.com/@esbuild/linux-ia32@0.17.19
+      "@esbuild/linux-loong64": registry.npmmirror.com/@esbuild/linux-loong64@0.17.19
+      "@esbuild/linux-mips64el": registry.npmmirror.com/@esbuild/linux-mips64el@0.17.19
+      "@esbuild/linux-ppc64": registry.npmmirror.com/@esbuild/linux-ppc64@0.17.19
+      "@esbuild/linux-riscv64": registry.npmmirror.com/@esbuild/linux-riscv64@0.17.19
+      "@esbuild/linux-s390x": registry.npmmirror.com/@esbuild/linux-s390x@0.17.19
+      "@esbuild/linux-x64": registry.npmmirror.com/@esbuild/linux-x64@0.17.19
+      "@esbuild/netbsd-x64": registry.npmmirror.com/@esbuild/netbsd-x64@0.17.19
+      "@esbuild/openbsd-x64": registry.npmmirror.com/@esbuild/openbsd-x64@0.17.19
+      "@esbuild/sunos-x64": registry.npmmirror.com/@esbuild/sunos-x64@0.17.19
+      "@esbuild/win32-arm64": registry.npmmirror.com/@esbuild/win32-arm64@0.17.19
+      "@esbuild/win32-ia32": registry.npmmirror.com/@esbuild/win32-ia32@0.17.19
+      "@esbuild/win32-x64": registry.npmmirror.com/@esbuild/win32-x64@0.17.19
     dev: true
 
   /escalade@3.1.1:
@@ -4165,7 +3720,7 @@ packages:
       esutils: 2.0.3
       optionator: 0.8.3
     optionalDependencies:
-      source-map: 0.6.1
+      source-map: registry.npmmirror.com/source-map@0.6.1
     dev: true
 
   /eslint-config-prettier@8.8.0(eslint@8.43.0):
@@ -4516,14 +4071,6 @@ packages:
       }
     dev: true
 
-  /fastest-levenshtein@1.0.16:
-    resolution:
-      {
-        integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==
-      }
-    engines: { node: ">= 4.9.1" }
-    dev: true
-
   /fastq@1.15.0:
     resolution:
       {
@@ -4714,17 +4261,6 @@ packages:
       }
     dev: true
 
-  /fsevents@2.3.2:
-    resolution:
-      {
-        integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==,
-        tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz
-      }
-    engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
-    os: [darwin]
-    requiresBuild: true
-    optional: true
-
   /function-bind@1.1.1:
     resolution:
       {
@@ -4883,28 +4419,6 @@ packages:
       ini: 1.3.8
     dev: true
 
-  /global-modules@2.0.0:
-    resolution:
-      {
-        integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==
-      }
-    engines: { node: ">=6" }
-    dependencies:
-      global-prefix: 3.0.0
-    dev: true
-
-  /global-prefix@3.0.0:
-    resolution:
-      {
-        integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==
-      }
-    engines: { node: ">=6" }
-    dependencies:
-      ini: 1.3.8
-      kind-of: 6.0.3
-      which: 1.3.1
-    dev: true
-
   /globals@11.12.0:
     resolution:
       {
@@ -4953,18 +4467,12 @@ packages:
     dev: false
     optional: true
 
-  /globjoin@0.1.4:
-    resolution:
-      {
-        integrity: sha512-xYfnw62CKG8nLkZBfWbhWwDw02CHty86jfPcc2cr3ZfeuK9ysoVPPEUxf21bAD/rWAgk52SuBrLJlefNy8mvFg==
-      }
-    dev: true
-
   /graceful-fs@4.2.11:
     resolution:
       {
         integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
       }
+    dev: true
 
   /grapheme-splitter@1.0.4:
     resolution:
@@ -5171,14 +4679,6 @@ packages:
       resolve-from: 4.0.0
     dev: true
 
-  /import-lazy@4.0.0:
-    resolution:
-      {
-        integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
-      }
-    engines: { node: ">=8" }
-    dev: true
-
   /imurmurhash@0.1.4:
     resolution:
       {
@@ -5352,6 +4852,7 @@ packages:
         integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
       }
     engines: { node: ">=0.10.0" }
+    dev: false
 
   /is-reference@1.2.1:
     resolution:
@@ -5423,7 +4924,7 @@ packages:
     dependencies:
       "@isaacs/cliui": 8.0.2
     optionalDependencies:
-      "@pkgjs/parseargs": 0.11.0
+      "@pkgjs/parseargs": registry.npmmirror.com/@pkgjs/parseargs@0.11.0
     dev: true
 
   /jiti@1.18.2:
@@ -5537,7 +5038,7 @@ packages:
     dependencies:
       universalify: 2.0.0
     optionalDependencies:
-      graceful-fs: 4.2.11
+      graceful-fs: registry.npmmirror.com/graceful-fs@4.2.11
     dev: true
 
   /jsonparse@1.3.1:
@@ -5565,13 +5066,6 @@ packages:
     dev: false
     optional: true
 
-  /known-css-properties@0.27.0:
-    resolution:
-      {
-        integrity: sha512-uMCj6+hZYDoffuvAJjFAPz56E9uoowFHmTkqRtRq5WyC5Q6Cu/fTZKNQpX/RbzChBYLLl3lo8CjFZBAZXq9qFg==
-      }
-    dev: true
-
   /levn@0.3.0:
     resolution:
       {
@@ -5772,13 +5266,6 @@ packages:
       }
     dev: true
 
-  /lodash.truncate@4.4.2:
-    resolution:
-      {
-        integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==
-      }
-    dev: true
-
   /lodash.uniq@4.5.0:
     resolution:
       {
@@ -5886,13 +5373,6 @@ packages:
     engines: { node: ">=8" }
     dev: true
 
-  /mathml-tag-names@2.1.3:
-    resolution:
-      {
-        integrity: sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==
-      }
-    dev: true
-
   /mdn-data@2.0.14:
     resolution:
       {
@@ -5954,27 +5434,6 @@ packages:
       yargs-parser: 20.2.9
     dev: true
 
-  /meow@9.0.0:
-    resolution:
-      {
-        integrity: sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==
-      }
-    engines: { node: ">=10" }
-    dependencies:
-      "@types/minimist": 1.2.2
-      camelcase-keys: 6.2.2
-      decamelize: 1.2.0
-      decamelize-keys: 1.1.1
-      hard-rejection: 2.1.0
-      minimist-options: 4.1.0
-      normalize-package-data: 3.0.3
-      read-pkg-up: 7.0.1
-      redent: 3.0.0
-      trim-newlines: 3.0.1
-      type-fest: 0.18.1
-      yargs-parser: 20.2.9
-    dev: true
-
   /merge-stream@2.0.0:
     resolution:
       {
@@ -6982,13 +6441,6 @@ packages:
       yaml: 2.3.1
     dev: true
 
-  /postcss-media-query-parser@0.2.3:
-    resolution:
-      {
-        integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==
-      }
-    dev: true
-
   /postcss-merge-longhand@5.1.7(postcss@8.4.24):
     resolution:
       {
@@ -7491,13 +6943,6 @@ packages:
       postcss-value-parser: 4.2.0
     dev: true
 
-  /postcss-resolve-nested-selector@0.1.1:
-    resolution:
-      {
-        integrity: sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==
-      }
-    dev: true
-
   /postcss-safe-parser@6.0.0(postcss@8.4.24):
     resolution:
       {
@@ -7533,17 +6978,6 @@ packages:
       util-deprecate: 1.0.2
     dev: true
 
-  /postcss-sorting@8.0.2(postcss@8.4.24):
-    resolution:
-      {
-        integrity: sha512-M9dkSrmU00t/jK7rF6BZSZauA5MAaBW4i5EnJXspMwt4iqTh/L9j6fgMnbElEOfyRyfLfVbIHj/R52zHzAPe1Q==
-      }
-    peerDependencies:
-      postcss: ^8.4.20
-    dependencies:
-      postcss: 8.4.24
-    dev: true
-
   /postcss-svgo@5.1.0(postcss@8.4.24):
     resolution:
       {
@@ -8000,7 +7434,7 @@ packages:
     engines: { node: ">=14.18.0", npm: ">=8.0.0" }
     hasBin: true
     optionalDependencies:
-      fsevents: 2.3.2
+      fsevents: registry.npmmirror.com/fsevents@2.3.2
     dev: true
 
   /run-parallel@1.2.0:
@@ -8200,9 +7634,9 @@ packages:
       }
     engines: { node: ">=8" }
     dependencies:
-      ansi-styles: 4.3.0
+      ansi-styles: registry.npmmirror.com/ansi-styles@4.3.0
       astral-regex: 2.0.0
-      is-fullwidth-code-point: 3.0.0
+      is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point@3.0.0
     dev: true
 
   /slice-ansi@4.0.0:
@@ -8212,9 +7646,9 @@ packages:
       }
     engines: { node: ">=10" }
     dependencies:
-      ansi-styles: 4.3.0
+      ansi-styles: registry.npmmirror.com/ansi-styles@4.3.0
       astral-regex: 2.0.0
-      is-fullwidth-code-point: 3.0.0
+      is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point@3.0.0
     dev: true
 
   /slice-ansi@5.0.0:
@@ -8467,13 +7901,6 @@ packages:
     dev: false
     optional: true
 
-  /style-search@0.1.0:
-    resolution:
-      {
-        integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==
-      }
-    dev: true
-
   /style-value-types@5.1.2:
     resolution:
       {
@@ -8512,423 +7939,165 @@ packages:
       postcss-selector-parser: 6.0.13
     dev: true
 
-  /stylelint-config-html@1.1.0(postcss-html@1.5.0)(stylelint@15.9.0):
+  /sucrase@3.32.0:
     resolution:
       {
-        integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==
+        integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==
       }
-    engines: { node: ^12 || >=14 }
-    peerDependencies:
-      postcss-html: ^1.0.0
-      stylelint: ">=14.0.0"
+    engines: { node: ">=8" }
+    hasBin: true
     dependencies:
-      postcss-html: 1.5.0
-      stylelint: 15.9.0
+      "@jridgewell/gen-mapping": 0.3.3
+      commander: 4.1.1
+      glob: 7.1.6
+      lines-and-columns: 1.2.4
+      mz: 2.7.0
+      pirates: 4.0.6
+      ts-interface-checker: 0.1.13
     dev: true
 
-  /stylelint-config-recess-order@4.2.0(stylelint@15.9.0):
+  /supports-color@5.5.0:
     resolution:
       {
-        integrity: sha512-cWC66tUx74OgurUQaTAH4iJ4JbyisMwlJH8BO/oxglDLZBUNFggjwPFVtgsmd8rS+bUfm7sPlRrF00iAihESwA==
+        integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
       }
-    peerDependencies:
-      stylelint: ">=15"
+    engines: { node: ">=4" }
     dependencies:
-      stylelint: 15.9.0
-      stylelint-order: 6.0.3(stylelint@15.9.0)
-    dev: true
+      has-flag: 3.0.0
 
-  /stylelint-config-recommended-scss@11.0.0(postcss@8.4.24)(stylelint@15.9.0):
+  /supports-color@7.2.0:
     resolution:
       {
-        integrity: sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==
+        integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
       }
-    peerDependencies:
-      postcss: ^8.3.3
-      stylelint: ^15.5.0
-    peerDependenciesMeta:
-      postcss:
-        optional: true
+    engines: { node: ">=8" }
     dependencies:
-      postcss: 8.4.24
-      postcss-scss: 4.0.6(postcss@8.4.24)
-      stylelint: 15.9.0
-      stylelint-config-recommended: 12.0.0(stylelint@15.9.0)
-      stylelint-scss: 4.7.0(stylelint@15.9.0)
+      has-flag: 4.0.0
     dev: true
 
-  /stylelint-config-recommended-scss@12.0.0(postcss@8.4.24)(stylelint@15.9.0):
+  /supports-preserve-symlinks-flag@1.0.0:
     resolution:
       {
-        integrity: sha512-5Bb2mlGy6WLa30oNeKpZvavv2lowJUsUJO25+OA68GFTemlwd1zbFsL7q0bReKipOSU3sG47hKneZ6Nd+ctrFA==
+        integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
       }
-    peerDependencies:
-      postcss: ^8.3.3
-      stylelint: ^15.5.0
-    peerDependenciesMeta:
-      postcss:
-        optional: true
-    dependencies:
-      postcss: 8.4.24
-      postcss-scss: 4.0.6(postcss@8.4.24)
-      stylelint: 15.9.0
-      stylelint-config-recommended: 12.0.0(stylelint@15.9.0)
-      stylelint-scss: 5.0.1(stylelint@15.9.0)
+    engines: { node: ">= 0.4" }
     dev: true
 
-  /stylelint-config-recommended-vue@1.4.0(postcss-html@1.5.0)(stylelint@15.9.0):
+  /svg-tags@1.0.0:
     resolution:
       {
-        integrity: sha512-DVJqyX2KvMCn9U0+keL12r7xlsH26K4Vg8NrIZuq5MoF7g82DpMp326Om4E0Q+Il1o+bTHuUyejf2XAI0iD04Q==
+        integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==
       }
-    engines: { node: ^12 || >=14 }
-    peerDependencies:
-      postcss-html: ^1.0.0
-      stylelint: ">=14.0.0"
-    dependencies:
-      postcss-html: 1.5.0
-      semver: 7.5.3
-      stylelint: 15.9.0
-      stylelint-config-html: 1.1.0(postcss-html@1.5.0)(stylelint@15.9.0)
-      stylelint-config-recommended: 12.0.0(stylelint@15.9.0)
     dev: true
 
-  /stylelint-config-recommended@12.0.0(stylelint@15.9.0):
+  /svgo@2.8.0:
     resolution:
       {
-        integrity: sha512-x6x8QNARrGO2sG6iURkzqL+Dp+4bJorPMMRNPScdvaUK8PsynriOcMW7AFDKqkWAS5wbue/u8fUT/4ynzcmqdQ==
+        integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==
       }
-    peerDependencies:
-      stylelint: ^15.5.0
+    engines: { node: ">=10.13.0" }
+    hasBin: true
     dependencies:
-      stylelint: 15.9.0
+      "@trysound/sax": 0.2.0
+      commander: 7.2.0
+      css-select: 4.3.0
+      css-tree: 1.1.3
+      csso: 4.2.0
+      picocolors: 1.0.0
+      stable: 0.1.8
     dev: true
 
-  /stylelint-config-standard-scss@9.0.0(postcss@8.4.24)(stylelint@15.9.0):
+  /svgo@3.0.2:
     resolution:
       {
-        integrity: sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==
+        integrity: sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==
       }
-    peerDependencies:
-      postcss: ^8.3.3
-      stylelint: ^15.5.0
-    peerDependenciesMeta:
-      postcss:
-        optional: true
+    engines: { node: ">=14.0.0" }
+    hasBin: true
     dependencies:
-      postcss: 8.4.24
-      stylelint: 15.9.0
-      stylelint-config-recommended-scss: 11.0.0(postcss@8.4.24)(stylelint@15.9.0)
-      stylelint-config-standard: 33.0.0(stylelint@15.9.0)
+      "@trysound/sax": 0.2.0
+      commander: 7.2.0
+      css-select: 5.1.0
+      css-tree: 2.3.1
+      csso: 5.0.5
+      picocolors: 1.0.0
     dev: true
 
-  /stylelint-config-standard@33.0.0(stylelint@15.9.0):
+  /swiper@11.0.5:
     resolution:
       {
-        integrity: sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==
+        integrity: sha512-rhCwupqSyRnWrtNzWzemnBLMoyYuoDgGgspAm/8iBD3jCvAWycPLH4Z3TB0O5520DHLzMx94yUMH/B9Efpa48w==,
+        tarball: https://registry.npmmirror.com/swiper/-/swiper-11.0.5.tgz
       }
-    peerDependencies:
-      stylelint: ^15.5.0
-    dependencies:
-      stylelint: 15.9.0
-      stylelint-config-recommended: 12.0.0(stylelint@15.9.0)
-    dev: true
+    engines: { node: ">= 4.7.0" }
+    dev: false
 
-  /stylelint-order@6.0.3(stylelint@15.9.0):
+  /tailwindcss@3.3.2(ts-node@10.9.1):
     resolution:
       {
-        integrity: sha512-1j1lOb4EU/6w49qZeT2SQVJXm0Ht+Qnq9GMfUa3pMwoyojIWfuA+JUDmoR97Bht1RLn4ei0xtLGy87M7d29B1w==
+        integrity: sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==
       }
-    peerDependencies:
-      stylelint: ^14.0.0 || ^15.0.0
+    engines: { node: ">=14.0.0" }
+    hasBin: true
     dependencies:
+      "@alloc/quick-lru": 5.2.0
+      arg: 5.0.2
+      chokidar: 3.5.3
+      didyoumean: 1.2.2
+      dlv: 1.1.3
+      fast-glob: 3.2.12
+      glob-parent: 6.0.2
+      is-glob: 4.0.3
+      jiti: 1.18.2
+      lilconfig: 2.1.0
+      micromatch: 4.0.5
+      normalize-path: 3.0.0
+      object-hash: 3.0.0
+      picocolors: 1.0.0
       postcss: 8.4.24
-      postcss-sorting: 8.0.2(postcss@8.4.24)
-      stylelint: 15.9.0
+      postcss-import: 15.1.0(postcss@8.4.24)
+      postcss-js: 4.0.1(postcss@8.4.24)
+      postcss-load-config: 4.0.1(postcss@8.4.24)(ts-node@10.9.1)
+      postcss-nested: 6.0.1(postcss@8.4.24)
+      postcss-selector-parser: 6.0.13
+      postcss-value-parser: 4.2.0
+      resolve: 1.22.2
+      sucrase: 3.32.0
+    transitivePeerDependencies:
+      - ts-node
     dev: true
 
-  /stylelint-prettier@3.0.0(prettier@2.8.8)(stylelint@15.9.0):
+  /tapable@1.1.3:
     resolution:
       {
-        integrity: sha512-kIks1xw6np0zElokMT2kP6ar3S4MBoj6vUtPJuND1pFELMpZxVS/0uHPR4HDAVn0WAD3I5oF0IA3qBFxBpMkLg==
+        integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
       }
-    engines: { node: ^14.17.0 || >=16.0.0 }
-    peerDependencies:
-      prettier: ">=2.0.0"
-      stylelint: ">=14.0.0"
-    dependencies:
-      prettier: 2.8.8
-      prettier-linter-helpers: 1.0.0
-      stylelint: 15.9.0
-    dev: true
+    engines: { node: ">=6" }
+    requiresBuild: true
+    dev: false
+    optional: true
 
-  /stylelint-scss@4.7.0(stylelint@15.9.0):
+  /tar@6.1.15:
     resolution:
       {
-        integrity: sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==
+        integrity: sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==
       }
-    peerDependencies:
-      stylelint: ^14.5.1 || ^15.0.0
+    engines: { node: ">=10" }
+    requiresBuild: true
     dependencies:
-      postcss-media-query-parser: 0.2.3
-      postcss-resolve-nested-selector: 0.1.1
-      postcss-selector-parser: 6.0.13
-      postcss-value-parser: 4.2.0
-      stylelint: 15.9.0
-    dev: true
+      chownr: 2.0.0
+      fs-minipass: 2.1.0
+      minipass: 5.0.0
+      minizlib: 2.1.2
+      mkdirp: 1.0.4
+      yallist: 4.0.0
+    dev: false
+    optional: true
 
-  /stylelint-scss@5.0.1(stylelint@15.9.0):
+  /terser@5.18.1:
     resolution:
       {
-        integrity: sha512-n87iCRZrr2J7//I/QFsDXxFLnHKw633U4qvWZ+mOW6KDAp/HLj06H+6+f9zOuTYy+MdGdTuCSDROCpQIhw5fvQ==
-      }
-    peerDependencies:
-      stylelint: ^14.5.1 || ^15.0.0
-    dependencies:
-      postcss-media-query-parser: 0.2.3
-      postcss-resolve-nested-selector: 0.1.1
-      postcss-selector-parser: 6.0.13
-      postcss-value-parser: 4.2.0
-      stylelint: 15.9.0
-    dev: true
-
-  /stylelint@15.9.0:
-    resolution:
-      {
-        integrity: sha512-sXtAZi64CllWr6A+8ymDWnlIaYwuAa7XRmGnJxLQXFNnLjd3Izm4HAD+loKVaZ7cpK6SLxhAUX1lwPJKGCn0mg==
-      }
-    engines: { node: ^14.13.1 || >=16.0.0 }
-    hasBin: true
-    dependencies:
-      "@csstools/css-parser-algorithms": 2.2.0(@csstools/css-tokenizer@2.1.1)
-      "@csstools/css-tokenizer": 2.1.1
-      "@csstools/media-query-list-parser": 2.1.1(@csstools/css-parser-algorithms@2.2.0)(@csstools/css-tokenizer@2.1.1)
-      "@csstools/selector-specificity": 2.2.0(postcss-selector-parser@6.0.13)
-      balanced-match: 2.0.0
-      colord: 2.9.3
-      cosmiconfig: 8.2.0
-      css-functions-list: 3.1.0
-      css-tree: 2.3.1
-      debug: 4.3.4
-      fast-glob: 3.2.12
-      fastest-levenshtein: 1.0.16
-      file-entry-cache: 6.0.1
-      global-modules: 2.0.0
-      globby: 11.1.0
-      globjoin: 0.1.4
-      html-tags: 3.3.1
-      ignore: 5.2.4
-      import-lazy: 4.0.0
-      imurmurhash: 0.1.4
-      is-plain-object: 5.0.0
-      known-css-properties: 0.27.0
-      mathml-tag-names: 2.1.3
-      meow: 9.0.0
-      micromatch: 4.0.5
-      normalize-path: 3.0.0
-      picocolors: 1.0.0
-      postcss: 8.4.24
-      postcss-media-query-parser: 0.2.3
-      postcss-resolve-nested-selector: 0.1.1
-      postcss-safe-parser: 6.0.0(postcss@8.4.24)
-      postcss-selector-parser: 6.0.13
-      postcss-value-parser: 4.2.0
-      resolve-from: 5.0.0
-      string-width: 4.2.3
-      strip-ansi: 6.0.1
-      style-search: 0.1.0
-      supports-hyperlinks: 3.0.0
-      svg-tags: 1.0.0
-      table: 6.8.1
-      write-file-atomic: 5.0.1
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
-
-  /sucrase@3.32.0:
-    resolution:
-      {
-        integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==
-      }
-    engines: { node: ">=8" }
-    hasBin: true
-    dependencies:
-      "@jridgewell/gen-mapping": 0.3.3
-      commander: 4.1.1
-      glob: 7.1.6
-      lines-and-columns: 1.2.4
-      mz: 2.7.0
-      pirates: 4.0.6
-      ts-interface-checker: 0.1.13
-    dev: true
-
-  /supports-color@5.5.0:
-    resolution:
-      {
-        integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
-      }
-    engines: { node: ">=4" }
-    dependencies:
-      has-flag: 3.0.0
-
-  /supports-color@7.2.0:
-    resolution:
-      {
-        integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
-      }
-    engines: { node: ">=8" }
-    dependencies:
-      has-flag: 4.0.0
-    dev: true
-
-  /supports-hyperlinks@3.0.0:
-    resolution:
-      {
-        integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==
-      }
-    engines: { node: ">=14.18" }
-    dependencies:
-      has-flag: 4.0.0
-      supports-color: 7.2.0
-    dev: true
-
-  /supports-preserve-symlinks-flag@1.0.0:
-    resolution:
-      {
-        integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-      }
-    engines: { node: ">= 0.4" }
-    dev: true
-
-  /svg-tags@1.0.0:
-    resolution:
-      {
-        integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==
-      }
-    dev: true
-
-  /svgo@2.8.0:
-    resolution:
-      {
-        integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==
-      }
-    engines: { node: ">=10.13.0" }
-    hasBin: true
-    dependencies:
-      "@trysound/sax": 0.2.0
-      commander: 7.2.0
-      css-select: 4.3.0
-      css-tree: 1.1.3
-      csso: 4.2.0
-      picocolors: 1.0.0
-      stable: 0.1.8
-    dev: true
-
-  /svgo@3.0.2:
-    resolution:
-      {
-        integrity: sha512-Z706C1U2pb1+JGP48fbazf3KxHrWOsLme6Rv7imFBn5EnuanDW1GPaA/P1/dvObE670JDePC3mnj0k0B7P0jjQ==
-      }
-    engines: { node: ">=14.0.0" }
-    hasBin: true
-    dependencies:
-      "@trysound/sax": 0.2.0
-      commander: 7.2.0
-      css-select: 5.1.0
-      css-tree: 2.3.1
-      csso: 5.0.5
-      picocolors: 1.0.0
-    dev: true
-
-  /swiper@11.0.5:
-    resolution:
-      {
-        integrity: sha512-rhCwupqSyRnWrtNzWzemnBLMoyYuoDgGgspAm/8iBD3jCvAWycPLH4Z3TB0O5520DHLzMx94yUMH/B9Efpa48w==,
-        tarball: https://registry.npmmirror.com/swiper/-/swiper-11.0.5.tgz
-      }
-    engines: { node: ">= 4.7.0" }
-    dev: false
-
-  /table@6.8.1:
-    resolution:
-      {
-        integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==
-      }
-    engines: { node: ">=10.0.0" }
-    dependencies:
-      ajv: 8.12.0
-      lodash.truncate: 4.4.2
-      slice-ansi: 4.0.0
-      string-width: 4.2.3
-      strip-ansi: 6.0.1
-    dev: true
-
-  /tailwindcss@3.3.2(ts-node@10.9.1):
-    resolution:
-      {
-        integrity: sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==
-      }
-    engines: { node: ">=14.0.0" }
-    hasBin: true
-    dependencies:
-      "@alloc/quick-lru": 5.2.0
-      arg: 5.0.2
-      chokidar: 3.5.3
-      didyoumean: 1.2.2
-      dlv: 1.1.3
-      fast-glob: 3.2.12
-      glob-parent: 6.0.2
-      is-glob: 4.0.3
-      jiti: 1.18.2
-      lilconfig: 2.1.0
-      micromatch: 4.0.5
-      normalize-path: 3.0.0
-      object-hash: 3.0.0
-      picocolors: 1.0.0
-      postcss: 8.4.24
-      postcss-import: 15.1.0(postcss@8.4.24)
-      postcss-js: 4.0.1(postcss@8.4.24)
-      postcss-load-config: 4.0.1(postcss@8.4.24)(ts-node@10.9.1)
-      postcss-nested: 6.0.1(postcss@8.4.24)
-      postcss-selector-parser: 6.0.13
-      postcss-value-parser: 4.2.0
-      resolve: 1.22.2
-      sucrase: 3.32.0
-    transitivePeerDependencies:
-      - ts-node
-    dev: true
-
-  /tapable@1.1.3:
-    resolution:
-      {
-        integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
-      }
-    engines: { node: ">=6" }
-    requiresBuild: true
-    dev: false
-    optional: true
-
-  /tar@6.1.15:
-    resolution:
-      {
-        integrity: sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==
-      }
-    engines: { node: ">=10" }
-    requiresBuild: true
-    dependencies:
-      chownr: 2.0.0
-      fs-minipass: 2.1.0
-      minipass: 5.0.0
-      minizlib: 2.1.2
-      mkdirp: 1.0.4
-      yallist: 4.0.0
-    dev: false
-    optional: true
-
-  /terser@5.18.1:
-    resolution:
-      {
-        integrity: sha512-j1n0Ao919h/Ai5r43VAnfV/7azUYW43GPxK7qSATzrsERfW7+y2QW9Cp9ufnRF5CQUWbnLSo7UJokSWCqg4tsQ==
+        integrity: sha512-j1n0Ao919h/Ai5r43VAnfV/7azUYW43GPxK7qSATzrsERfW7+y2QW9Cp9ufnRF5CQUWbnLSo7UJokSWCqg4tsQ==
       }
     engines: { node: ">=10" }
     hasBin: true
@@ -9429,7 +8598,7 @@ packages:
       sass: 1.63.6
       terser: 5.18.1
     optionalDependencies:
-      fsevents: 2.3.2
+      fsevents: registry.npmmirror.com/fsevents@2.3.2
     dev: true
 
   /vue-demi@0.14.5(vue@3.3.4):
@@ -9508,253 +8677,826 @@ packages:
       he: 1.2.0
     dev: true
 
-  /vue-tsc@1.8.1(typescript@5.0.4):
+  /vue-tsc@1.8.1(typescript@5.0.4):
+    resolution:
+      {
+        integrity: sha512-GxBQrcb0Qvyrj1uZqnTXQyWbXdNDRY2MTa+r7ESgjhf+WzBSdxZfkS3KD/C3WhKYG+aN8hf44Hp5Gqzb6PehAA==
+      }
+    hasBin: true
+    peerDependencies:
+      typescript: "*"
+    dependencies:
+      "@vue/language-core": 1.8.1(typescript@5.0.4)
+      "@vue/typescript": 1.8.1(typescript@5.0.4)
+      semver: 7.5.3
+      typescript: 5.0.4
+    dev: true
+
+  /vue-types@5.1.0(vue@3.3.4):
+    resolution:
+      {
+        integrity: sha512-oCSq5MawTli+Jqaf07sCZgJr/FcDCFF5U/VE4WG58S3EAPxqi8nZlbrQ9I50rD5MZdJ3fjgi/IX1tVLL3QUFzA==
+      }
+    engines: { node: ">=14.0.0" }
+    peerDependencies:
+      vue: ^2.0.0 || ^3.0.0
+    peerDependenciesMeta:
+      vue:
+        optional: true
+    dependencies:
+      is-plain-object: 5.0.0
+      vue: 3.3.4
+    dev: false
+
+  /vue@3.3.4:
+    resolution:
+      {
+        integrity: sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==
+      }
+    dependencies:
+      "@vue/compiler-dom": 3.3.4
+      "@vue/compiler-sfc": 3.3.4
+      "@vue/runtime-dom": 3.3.4
+      "@vue/server-renderer": 3.3.4(vue@3.3.4)
+      "@vue/shared": 3.3.4
+
+  /webpack-sources@3.2.3:
+    resolution:
+      {
+        integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
+      }
+    engines: { node: ">=10.13.0" }
+
+  /webpack-virtual-modules@0.5.0:
+    resolution:
+      {
+        integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==
+      }
+
+  /which@2.0.2:
+    resolution:
+      {
+        integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+      }
+    engines: { node: ">= 8" }
+    hasBin: true
+    dependencies:
+      isexe: 2.0.0
+    dev: true
+
+  /word-wrap@1.2.3:
+    resolution:
+      {
+        integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
+      }
+    engines: { node: ">=0.10.0" }
+    dev: true
+
+  /wrap-ansi@6.2.0:
+    resolution:
+      {
+        integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+      }
+    engines: { node: ">=8" }
+    dependencies:
+      ansi-styles: registry.npmmirror.com/ansi-styles@4.3.0
+      string-width: registry.npmmirror.com/string-width@4.2.3
+      strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1
+    dev: true
+
+  /wrap-ansi@7.0.0:
+    resolution:
+      {
+        integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+      }
+    engines: { node: ">=10" }
+    dependencies:
+      ansi-styles: registry.npmmirror.com/ansi-styles@4.3.0
+      string-width: registry.npmmirror.com/string-width@4.2.3
+      strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1
+    dev: true
+
+  /wrap-ansi@8.1.0:
+    resolution:
+      {
+        integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
+      }
+    engines: { node: ">=12" }
+    dependencies:
+      ansi-styles: 6.2.1
+      string-width: 5.1.2
+      strip-ansi: 7.1.0
+    dev: true
+
+  /wrappy@1.0.2:
+    resolution:
+      {
+        integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
+      }
+    dev: true
+
+  /xml-name-validator@4.0.0:
+    resolution:
+      {
+        integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==
+      }
+    engines: { node: ">=12" }
+    dev: true
+
+  /y18n@5.0.8:
+    resolution:
+      {
+        integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
+      }
+    engines: { node: ">=10" }
+    dev: true
+
+  /yallist@3.1.1:
+    resolution:
+      {
+        integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+      }
+
+  /yallist@4.0.0:
+    resolution:
+      {
+        integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+      }
+
+  /yaml-eslint-parser@0.3.2:
+    resolution:
+      {
+        integrity: sha512-32kYO6kJUuZzqte82t4M/gB6/+11WAuHiEnK7FreMo20xsCKPeFH5tDBU7iWxR7zeJpNnMXfJyXwne48D0hGrg==
+      }
+    dependencies:
+      eslint-visitor-keys: 1.3.0
+      lodash: 4.17.21
+      yaml: 1.10.2
+    dev: true
+
+  /yaml@1.10.2:
+    resolution:
+      {
+        integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
+      }
+    engines: { node: ">= 6" }
+    dev: true
+
+  /yaml@2.3.1:
+    resolution:
+      {
+        integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==
+      }
+    engines: { node: ">= 14" }
+    dev: true
+
+  /yargs-parser@20.2.9:
+    resolution:
+      {
+        integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
+      }
+    engines: { node: ">=10" }
+    dev: true
+
+  /yargs-parser@21.1.1:
+    resolution:
+      {
+        integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
+      }
+    engines: { node: ">=12" }
+    dev: true
+
+  /yargs@17.7.2:
+    resolution:
+      {
+        integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
+      }
+    engines: { node: ">=12" }
+    dependencies:
+      cliui: 8.0.1
+      escalade: 3.1.1
+      get-caller-file: 2.0.5
+      require-directory: 2.1.1
+      string-width: 4.2.3
+      y18n: 5.0.8
+      yargs-parser: 21.1.1
+    dev: true
+
+  /yn@3.1.1:
+    resolution:
+      {
+        integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
+      }
+    engines: { node: ">=6" }
+    dev: true
+
+  /yocto-queue@0.1.0:
+    resolution:
+      {
+        integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
+      }
+    engines: { node: ">=10" }
+    dev: true
+
+  /zrender@5.4.3:
+    resolution:
+      {
+        integrity: sha512-DRUM4ZLnoaT0PBVvGBDO9oWIDBKFdAVieNWxWwK0niYzJCMwGchRk21/hsE+RKkIveH3XHCyvXcJDkgLVvfizQ==
+      }
+    dependencies:
+      tslib: 2.3.0
+    dev: false
+
+  registry.npmmirror.com/@esbuild/android-arm64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz
+      }
+    name: "@esbuild/android-arm64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm64]
+    os: [android]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/android-arm@0.17.19:
+    resolution:
+      {
+        integrity: sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.17.19.tgz
+      }
+    name: "@esbuild/android-arm"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm]
+    os: [android]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/android-x64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.17.19.tgz
+      }
+    name: "@esbuild/android-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [android]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/darwin-arm64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz
+      }
+    name: "@esbuild/darwin-arm64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm64]
+    os: [darwin]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/darwin-x64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz
+      }
+    name: "@esbuild/darwin-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [darwin]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/freebsd-arm64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz
+      }
+    name: "@esbuild/freebsd-arm64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm64]
+    os: [freebsd]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/freebsd-x64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz
+      }
+    name: "@esbuild/freebsd-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [freebsd]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-arm64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz
+      }
+    name: "@esbuild/linux-arm64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm64]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-arm@0.17.19:
+    resolution:
+      {
+        integrity: sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz
+      }
+    name: "@esbuild/linux-arm"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-ia32@0.17.19:
+    resolution:
+      {
+        integrity: sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz
+      }
+    name: "@esbuild/linux-ia32"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [ia32]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-loong64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz
+      }
+    name: "@esbuild/linux-loong64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [loong64]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-mips64el@0.17.19:
+    resolution:
+      {
+        integrity: sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz
+      }
+    name: "@esbuild/linux-mips64el"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [mips64el]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-ppc64@0.17.19:
+    resolution:
+      {
+        integrity: sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz
+      }
+    name: "@esbuild/linux-ppc64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [ppc64]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
+
+  registry.npmmirror.com/@esbuild/linux-riscv64@0.17.19:
     resolution:
       {
-        integrity: sha512-GxBQrcb0Qvyrj1uZqnTXQyWbXdNDRY2MTa+r7ESgjhf+WzBSdxZfkS3KD/C3WhKYG+aN8hf44Hp5Gqzb6PehAA==
+        integrity: sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz
       }
-    hasBin: true
-    peerDependencies:
-      typescript: "*"
-    dependencies:
-      "@vue/language-core": 1.8.1(typescript@5.0.4)
-      "@vue/typescript": 1.8.1(typescript@5.0.4)
-      semver: 7.5.3
-      typescript: 5.0.4
+    name: "@esbuild/linux-riscv64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [riscv64]
+    os: [linux]
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /vue-types@5.1.0(vue@3.3.4):
+  registry.npmmirror.com/@esbuild/linux-s390x@0.17.19:
     resolution:
       {
-        integrity: sha512-oCSq5MawTli+Jqaf07sCZgJr/FcDCFF5U/VE4WG58S3EAPxqi8nZlbrQ9I50rD5MZdJ3fjgi/IX1tVLL3QUFzA==
+        integrity: sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz
       }
-    engines: { node: ">=14.0.0" }
-    peerDependencies:
-      vue: ^2.0.0 || ^3.0.0
-    peerDependenciesMeta:
-      vue:
-        optional: true
-    dependencies:
-      is-plain-object: 5.0.0
-      vue: 3.3.4
-    dev: false
+    name: "@esbuild/linux-s390x"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [s390x]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
 
-  /vue@3.3.4:
+  registry.npmmirror.com/@esbuild/linux-x64@0.17.19:
     resolution:
       {
-        integrity: sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==
+        integrity: sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz
       }
-    dependencies:
-      "@vue/compiler-dom": 3.3.4
-      "@vue/compiler-sfc": 3.3.4
-      "@vue/runtime-dom": 3.3.4
-      "@vue/server-renderer": 3.3.4(vue@3.3.4)
-      "@vue/shared": 3.3.4
+    name: "@esbuild/linux-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [linux]
+    requiresBuild: true
+    dev: true
+    optional: true
 
-  /webpack-sources@3.2.3:
+  registry.npmmirror.com/@esbuild/netbsd-x64@0.17.19:
     resolution:
       {
-        integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==
+        integrity: sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz
       }
-    engines: { node: ">=10.13.0" }
+    name: "@esbuild/netbsd-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [netbsd]
+    requiresBuild: true
+    dev: true
+    optional: true
 
-  /webpack-virtual-modules@0.5.0:
+  registry.npmmirror.com/@esbuild/openbsd-x64@0.17.19:
     resolution:
       {
-        integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==
+        integrity: sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz
       }
+    name: "@esbuild/openbsd-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [openbsd]
+    requiresBuild: true
+    dev: true
+    optional: true
 
-  /which@1.3.1:
+  registry.npmmirror.com/@esbuild/sunos-x64@0.17.19:
     resolution:
       {
-        integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
+        integrity: sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz
       }
-    hasBin: true
-    dependencies:
-      isexe: 2.0.0
+    name: "@esbuild/sunos-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [sunos]
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /which@2.0.2:
+  registry.npmmirror.com/@esbuild/win32-arm64@0.17.19:
     resolution:
       {
-        integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+        integrity: sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz
       }
-    engines: { node: ">= 8" }
-    hasBin: true
-    dependencies:
-      isexe: 2.0.0
+    name: "@esbuild/win32-arm64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [arm64]
+    os: [win32]
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /word-wrap@1.2.3:
+  registry.npmmirror.com/@esbuild/win32-ia32@0.17.19:
     resolution:
       {
-        integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
+        integrity: sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz
       }
-    engines: { node: ">=0.10.0" }
+    name: "@esbuild/win32-ia32"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [ia32]
+    os: [win32]
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /wrap-ansi@6.2.0:
+  registry.npmmirror.com/@esbuild/win32-x64@0.17.19:
     resolution:
       {
-        integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
+        integrity: sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz
       }
-    engines: { node: ">=8" }
-    dependencies:
-      ansi-styles: 4.3.0
-      string-width: 4.2.3
-      strip-ansi: 6.0.1
+    name: "@esbuild/win32-x64"
+    version: 0.17.19
+    engines: { node: ">=12" }
+    cpu: [x64]
+    os: [win32]
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /wrap-ansi@7.0.0:
+  registry.npmmirror.com/@nuxt/kit@3.6.0:
     resolution:
       {
-        integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+        integrity: sha512-rqQYyWlhE42oWRQNR58KU1JYhoWryN78x8eYzFTHgalfpMjtPqZv2j9K4+hFRk0XLRUKnut4tE/3+UYyZ7ybVw==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@nuxt/kit/-/kit-3.6.0.tgz
       }
-    engines: { node: ">=10" }
+    name: "@nuxt/kit"
+    version: 3.6.0
+    engines: { node: ^14.18.0 || >=16.10.0 }
+    requiresBuild: true
     dependencies:
-      ansi-styles: 4.3.0
-      string-width: 4.2.3
-      strip-ansi: 6.0.1
-    dev: true
+      "@nuxt/schema": 3.6.0
+      c12: 1.4.2
+      consola: 3.1.0
+      defu: 6.1.2
+      globby: 13.2.0
+      hash-sum: 2.0.0
+      ignore: 5.2.4
+      jiti: 1.18.2
+      knitwork: 1.0.0
+      mlly: 1.4.0
+      pathe: 1.1.1
+      pkg-types: 1.0.3
+      scule: 1.0.0
+      semver: 7.5.3
+      unctx: 2.3.1
+      unimport: 3.0.8
+      untyped: 1.3.2
+    transitivePeerDependencies:
+      - rollup
+      - supports-color
+    dev: false
+    optional: true
 
-  /wrap-ansi@8.1.0:
+  registry.npmmirror.com/@pkgjs/parseargs@0.11.0:
     resolution:
       {
-        integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
+        integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz
       }
-    engines: { node: ">=12" }
-    dependencies:
-      ansi-styles: 6.2.1
-      string-width: 5.1.2
-      strip-ansi: 7.1.0
+    name: "@pkgjs/parseargs"
+    version: 0.11.0
+    engines: { node: ">=14" }
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /wrappy@1.0.2:
+  registry.npmmirror.com/@sxzz/popperjs-es@2.11.7:
     resolution:
       {
-        integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
+        integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz
       }
-    dev: true
+    name: "@sxzz/popperjs-es"
+    version: 2.11.7
+    dev: false
 
-  /write-file-atomic@5.0.1:
+  registry.npmmirror.com/ansi-regex@5.0.1:
     resolution:
       {
-        integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==
+        integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz
       }
-    engines: { node: ^14.17.0 || ^16.13.0 || >=18.0.0 }
-    dependencies:
-      imurmurhash: 0.1.4
-      signal-exit: 4.0.2
+    name: ansi-regex
+    version: 5.0.1
+    engines: { node: ">=8" }
     dev: true
 
-  /xml-name-validator@4.0.0:
+  registry.npmmirror.com/ansi-styles@4.3.0:
     resolution:
       {
-        integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==
+        integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz
       }
-    engines: { node: ">=12" }
+    name: ansi-styles
+    version: 4.3.0
+    engines: { node: ">=8" }
+    dependencies:
+      color-convert: registry.npmmirror.com/color-convert@2.0.1
     dev: true
 
-  /y18n@5.0.8:
+  registry.npmmirror.com/color-convert@1.9.3:
     resolution:
       {
-        integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==
+        integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz
       }
-    engines: { node: ">=10" }
-    dev: true
+    name: color-convert
+    version: 1.9.3
+    dependencies:
+      color-name: registry.npmmirror.com/color-name@1.1.3
 
-  /yallist@3.1.1:
+  registry.npmmirror.com/color-convert@2.0.1:
     resolution:
       {
-        integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+        integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz
       }
+    name: color-convert
+    version: 2.0.1
+    engines: { node: ">=7.0.0" }
+    dependencies:
+      color-name: registry.npmmirror.com/color-name@1.1.4
+    dev: true
 
-  /yallist@4.0.0:
+  registry.npmmirror.com/color-name@1.1.3:
     resolution:
       {
-        integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+        integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz
       }
+    name: color-name
+    version: 1.1.3
 
-  /yaml-eslint-parser@0.3.2:
+  registry.npmmirror.com/color-name@1.1.4:
     resolution:
       {
-        integrity: sha512-32kYO6kJUuZzqte82t4M/gB6/+11WAuHiEnK7FreMo20xsCKPeFH5tDBU7iWxR7zeJpNnMXfJyXwne48D0hGrg==
+        integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz
       }
-    dependencies:
-      eslint-visitor-keys: 1.3.0
-      lodash: 4.17.21
-      yaml: 1.10.2
+    name: color-name
+    version: 1.1.4
     dev: true
 
-  /yaml@1.10.2:
+  registry.npmmirror.com/emoji-regex@8.0.0:
     resolution:
       {
-        integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
+        integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz
       }
-    engines: { node: ">= 6" }
+    name: emoji-regex
+    version: 8.0.0
     dev: true
 
-  /yaml@2.3.1:
+  registry.npmmirror.com/fsevents@2.3.2:
     resolution:
       {
-        integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==
+        integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz
       }
-    engines: { node: ">= 14" }
-    dev: true
+    name: fsevents
+    version: 2.3.2
+    engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 }
+    os: [darwin]
+    requiresBuild: true
+    optional: true
 
-  /yargs-parser@20.2.9:
+  registry.npmmirror.com/graceful-fs@4.2.11:
     resolution:
       {
-        integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==
+        integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz
       }
-    engines: { node: ">=10" }
-    dev: true
+    name: graceful-fs
+    version: 4.2.11
+    requiresBuild: true
+    optional: true
 
-  /yargs-parser@21.1.1:
+  registry.npmmirror.com/is-fullwidth-code-point@3.0.0:
     resolution:
       {
-        integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==
+        integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz
       }
-    engines: { node: ">=12" }
+    name: is-fullwidth-code-point
+    version: 3.0.0
+    engines: { node: ">=8" }
     dev: true
 
-  /yargs@17.7.2:
+  registry.npmmirror.com/source-map@0.6.1:
     resolution:
       {
-        integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==
+        integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz
       }
-    engines: { node: ">=12" }
-    dependencies:
-      cliui: 8.0.1
-      escalade: 3.1.1
-      get-caller-file: 2.0.5
-      require-directory: 2.1.1
-      string-width: 4.2.3
-      y18n: 5.0.8
-      yargs-parser: 21.1.1
+    name: source-map
+    version: 0.6.1
+    engines: { node: ">=0.10.0" }
+    requiresBuild: true
     dev: true
+    optional: true
 
-  /yn@3.1.1:
+  registry.npmmirror.com/string-width@4.2.3:
     resolution:
       {
-        integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
+        integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz
       }
-    engines: { node: ">=6" }
+    name: string-width
+    version: 4.2.3
+    engines: { node: ">=8" }
+    dependencies:
+      emoji-regex: registry.npmmirror.com/emoji-regex@8.0.0
+      is-fullwidth-code-point: registry.npmmirror.com/is-fullwidth-code-point@3.0.0
+      strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1
     dev: true
 
-  /yocto-queue@0.1.0:
+  registry.npmmirror.com/strip-ansi@6.0.1:
     resolution:
       {
-        integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
+        integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz
       }
-    engines: { node: ">=10" }
+    name: strip-ansi
+    version: 6.0.1
+    engines: { node: ">=8" }
+    dependencies:
+      ansi-regex: registry.npmmirror.com/ansi-regex@5.0.1
     dev: true
 
-  /zrender@5.4.3:
+  registry.npmmirror.com/wrap-ansi@7.0.0:
     resolution:
       {
-        integrity: sha512-DRUM4ZLnoaT0PBVvGBDO9oWIDBKFdAVieNWxWwK0niYzJCMwGchRk21/hsE+RKkIveH3XHCyvXcJDkgLVvfizQ==
+        integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==,
+        registry: https://registry.npm.taobao.org/,
+        tarball: https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz
       }
+    name: wrap-ansi
+    version: 7.0.0
+    engines: { node: ">=10" }
     dependencies:
-      tslib: 2.3.0
-    dev: false
+      ansi-styles: registry.npmmirror.com/ansi-styles@4.3.0
+      string-width: registry.npmmirror.com/string-width@4.2.3
+      strip-ansi: registry.npmmirror.com/strip-ansi@6.0.1
+    dev: true
diff --git a/src/api/list.ts b/src/api/list.ts
index 8e489ea..cf20675 100644
--- a/src/api/list.ts
+++ b/src/api/list.ts
@@ -21,6 +21,14 @@ export const getCardList = (data?: object) => {
   return http.request<Result>("post", "/getCardList", { data });
 };
 
+export const getServerList = (data?: object) => {
+  return http.request<Result>("post", "/getServerList", { data });
+};
+
+export const getModelList = (data?: object) => {
+  return http.request<Result>("post", "/getModelList", { data });
+};
+
 /** 告警列表 */
 export const getAlarmList = (data?: object) => {
   return http.request<Result>("post", "/getAlarmList", { data });
diff --git a/src/views/device/components/DeviceCard.vue b/src/views/device/components/DeviceCard.vue
index d6ffb11..2321da4 100644
--- a/src/views/device/components/DeviceCard.vue
+++ b/src/views/device/components/DeviceCard.vue
@@ -4,12 +4,13 @@ import control from "@/assets/svg/device/control.svg?component";
 import monitor1 from "@/assets/svg/device/monitor1.svg?component";
 import monitor2 from "@/assets/svg/device/monitor2.svg?component";
 import { AnimationPic } from "@/components/AnimationCard";
-// 控制设备
+// 分析设备
 import controlEquipmentMalfunction from "@/assets/animate/device/controlEquipmentMalfunction.json";
 import controlEquipmentOnline from "@/assets/animate/device/controlEquipmentOnline.json";
 // 监控设备
 import monitoringFaults from "@/assets/animate/device/monitoringFaults.json";
 import monitoringOnline from "@/assets/animate/device/monitoringOnline.json";
+
 defineOptions({
   name: "DeviceCard"
 });
@@ -45,7 +46,7 @@ const isEnabledClass = computed(() => [
 ]);
 
 const deviceClassify = device => {
-  if (device?.deviceSort === "控制设备") {
+  if (device?.deviceSort === "分析设备") {
     if (device?.state === "在线") {
       return controlEquipmentOnline;
     } else {
@@ -59,6 +60,33 @@ const deviceClassify = device => {
     }
   }
 };
+
+const generateRandomNumber = () => {
+  // 生成一个 0 到 99999 之间的随机整数
+  const randomNumber = Math.floor(Math.random() * 100000);
+
+  // 将随机数转换为字符串,并在前面补零,确保总长度为 5 位
+  return randomNumber.toString().padStart(5, "0");
+};
+
+const generateRandomDate = () => {
+  // 生成一个2023年1月1日到12月31日之间的随机日期
+  const startDate = new Date("2023-01-01");
+  const endDate = new Date("2023-12-31");
+  const randomTimestamp =
+    startDate.getTime() +
+    Math.random() * (endDate.getTime() - startDate.getTime());
+  const randomDate = new Date(randomTimestamp);
+
+  // 获取年、月、日
+  const year = randomDate.getFullYear();
+  // 月份需要加 1,因为月份是从 0 到 11 表示的
+  const month = (randomDate.getMonth() + 1).toString().padStart(2, "0");
+  const day = randomDate.getDate().toString().padStart(2, "0");
+
+  // 将日期格式化为 "YYYY-MM-DD" 的形式
+  return `${year}-${month}-${day}`;
+};
 </script>
 
 <template>
@@ -74,8 +102,12 @@ const deviceClassify = device => {
     </div>
     <div class="device-content">
       <div class="device-info">
-        <div>设备代码:<span>DEVICE00002</span></div>
-        <div>设备分类:<span>DEVICE00002</span></div>
+        <div>
+          设备代码:<span>DEVICE{{ generateRandomNumber() }}</span>
+        </div>
+        <div>
+          设备分类:<span>FL{{ generateRandomNumber() }}</span>
+        </div>
         <div>
           是否启用:
           <el-tag
@@ -88,7 +120,9 @@ const deviceClassify = device => {
             >{{ device?.isEnabled ? "已启用" : "未启用" }}</el-tag
           >
         </div>
-        <div>创建时间:<span>DEVICE00002</span></div>
+        <div>
+          创建时间:<span>{{ generateRandomDate() }}</span>
+        </div>
       </div>
       <div class="device-icon">
         <AnimationPic class="device-icon-box" :value="deviceClassify(device)" />
diff --git a/src/views/modelList/components/ModelCard.vue b/src/views/modelList/components/ModelCard.vue
index c7d269d..9c801e0 100644
--- a/src/views/modelList/components/ModelCard.vue
+++ b/src/views/modelList/components/ModelCard.vue
@@ -44,7 +44,7 @@ const cardClass = computed(() => [
     <div class="model-content">
       <div class="model-version">
         <i class="iconfont icon-banben model-content-icon" />
-        版本: <span>{{ "V1.6.25" }}</span>
+        版本: <span>{{ "V1.0.0" }}</span>
       </div>
       <div class="model-provider">
         <i class="iconfont icon-tigongfang model-content-icon" />
@@ -56,9 +56,7 @@ const cardClass = computed(() => [
       </div>
       <div class="model-introduction">
         模型简介:
-        <span>{{
-          "针对企业人员是否有违章违规的问题,首先采用高性能的深度学习目标检测算法对图像中的人员进行定位等。"
-        }}</span>
+        <span>{{ device?.description }}</span>
       </div>
     </div>
   </div>
diff --git a/src/views/modelList/index.vue b/src/views/modelList/index.vue
index 21b100e..aa22720 100644
--- a/src/views/modelList/index.vue
+++ b/src/views/modelList/index.vue
@@ -1,6 +1,6 @@
 <script setup lang="ts">
 import ModelCard from "./components/ModelCard.vue";
-import { getCardList } from "@/api/list";
+import { getModelList } from "@/api/list";
 import { onMounted, ref } from "vue";
 defineOptions({
   name: "ServerList"
@@ -35,7 +35,7 @@ const onCurrentChange = (current: number) => {
 };
 const getCardListData = async () => {
   try {
-    const { data } = await getCardList();
+    const { data } = await getModelList();
     deviceList.value = data.list;
     console.log(data.list);
     pagination.value = {
diff --git a/src/views/serverModule/components/ServerCard.vue b/src/views/serverModule/components/ServerCard.vue
index 39f610f..4049506 100644
--- a/src/views/serverModule/components/ServerCard.vue
+++ b/src/views/serverModule/components/ServerCard.vue
@@ -2,6 +2,7 @@
 import { computed, PropType, ref } from "vue";
 import { AnimationPic } from "@/components/AnimationCard";
 import serverIcon from "@/assets/animate/device/server.json";
+
 defineOptions({
   name: "ServerCard"
 });
@@ -29,25 +30,36 @@ const stateClass = computed(() => [
   { "server-state_offline": props.device?.state === "离线" }
 ]);
 
+const generateRandomTwoDecimal = () => {
+  // 生成一个在 [0, 1) 范围内的随机数
+  const randomFraction = Math.random();
+
+  // 乘以一个倍数,例如 100,以增加小数位数
+  const multipliedValue = randomFraction * 100;
+
+  // 使用 Math.round() 进行四舍五入,并将结果除以倍数,得到两位小数
+  return Math.round(multipliedValue) / 100;
+};
+
 const progressData = ref([
   {
     label: "CPU",
-    percent: 0.79,
+    percent: generateRandomTwoDecimal(),
     strokeColor: "rgb(243,48,5)"
   },
   {
     label: "内存",
-    percent: 0.18,
+    percent: generateRandomTwoDecimal(),
     strokeColor: "rgb(33,169,122)"
   },
   {
     label: "存储",
-    percent: 0.79,
+    percent: generateRandomTwoDecimal(),
     strokeColor: "rgb(33,169,122)"
   },
   {
     label: "GPU",
-    percent: 0.18,
+    percent: generateRandomTwoDecimal(),
     strokeColor: "rgb(250,173,20)"
   }
 ]);
diff --git a/src/views/serverModule/index.vue b/src/views/serverModule/index.vue
index 95d79cf..352907a 100644
--- a/src/views/serverModule/index.vue
+++ b/src/views/serverModule/index.vue
@@ -1,6 +1,6 @@
 <script setup lang="ts">
 import ServerCard from "./components/ServerCard.vue";
-import { getCardList } from "@/api/list";
+import { getServerList } from "@/api/list";
 import { onMounted, ref } from "vue";
 defineOptions({
   name: "ServerList"
@@ -35,7 +35,7 @@ const onCurrentChange = (current: number) => {
 };
 const getCardListData = async () => {
   try {
-    const { data } = await getCardList();
+    const { data } = await getServerList();
     deviceList.value = data.list;
     console.log(data.list);
     pagination.value = {
@@ -58,9 +58,9 @@ onMounted(() => {
 <template>
   <div class="py-4 main">
     <div class="mt-4 mb-5">
-      <el-button> {{ `全部状态(${90})` }} </el-button>
-      <el-button> {{ `在线(${80})` }}</el-button>
-      <el-button>{{ `离线(${10})` }}</el-button>
+      <el-button> {{ `全部状态(${14})` }} </el-button>
+      <el-button> {{ `在线(${9})` }}</el-button>
+      <el-button>{{ `离线(${3})` }}</el-button>
     </div>
     <div
       v-loading="dataLoading"
diff --git a/src/views/workbench/components/DeviceStatus.vue b/src/views/workbench/components/DeviceStatus.vue
index 90f3eac..326588f 100644
--- a/src/views/workbench/components/DeviceStatus.vue
+++ b/src/views/workbench/components/DeviceStatus.vue
@@ -18,9 +18,9 @@ defineOptions({
 
 const deviceStatusData = ref<Record<string, any>>({
   onlineCount: 618,
-  errorCount: 55,
+  errorCount: 2,
   processCount: 118,
-  outlineCount: 195
+  outlineCount: 20
 });
 
 const deviceStatusOptions = ref<Record<string, any>[]>([
diff --git a/src/views/workbench/components/Notify.vue b/src/views/workbench/components/Notify.vue
index b458e49..b6b16bb 100644
--- a/src/views/workbench/components/Notify.vue
+++ b/src/views/workbench/components/Notify.vue
@@ -39,15 +39,28 @@ const urgencyStatus = [
 
 function fetchNoticeList(readStatus = 1) {
   const arr = [];
-  for (let i = 0; i < 2; i++) {
-    arr.push({
-      title: "系统消息" + (readStatus + i),
-      dateTime: "今天10:03:00",
-      content: "您的产品使用期限即将截止,如需继续使用产品请前请去买",
-      status: Math.floor(Math.random(0, 2.9) * 3)
-    });
-  }
+  arr.push({
+    title: "系统消息" + (readStatus + 1),
+    dateTime: "今天10:03:00",
+    content: "A3号车间B01产线出现产品缺陷异常,请及时查看",
+    status: 0
+  });
+  arr.push({
+    title: "系统消息" + (readStatus + 1),
+    dateTime: "今天11:22:00",
+    content: "B1号车间监测有人员吸烟,请及时查看",
+    status: 1
+  });
   return arr;
+  // for (let i = 0; i < 2; i++) {
+  //   arr.push({
+  //     title: "系统消息" + (readStatus + i),
+  //     dateTime: "今天10:03:00",
+  //     content: "A3号车间B01产线出现产品缺陷异常,请及时查看",
+  //     status: Math.floor(Math.random(0, 2.9) * 3)
+  //   });
+  // }
+  // return arr;
 }
 
 const activeName = ref("1");
diff --git a/src/views/workbench/index.vue b/src/views/workbench/index.vue
index d5663a3..bef875a 100644
--- a/src/views/workbench/index.vue
+++ b/src/views/workbench/index.vue
@@ -48,8 +48,8 @@ const dataViewList = [
     icon: "icon-suanlipeizhi"
   },
   {
-    label: "覆盖网点",
-    value: "304800",
+    label: "覆盖车间",
+    value: "40",
     color: "#5024FE",
     bgColor: "#DDD5FD",
     icon: "icon-suanlipeizhi"