Commit b5e0b168c707c63e77001aeab271be64608f7214

Authored by 芋道源码
Committed by Gitee
2 parents ea67a479 1ef6016d

!337 完善vue3上传组件 && 提升打包速度

Merge pull request !337 from xingyu/dev
README.md
... ... @@ -193,7 +193,7 @@ ps:核心功能已经实现,正在对接微信小程序中...
193 193 | [MySQL](https://www.mysql.com/cn/) | 数据库服务器 | 5.7 / 8.0+ | |
194 194 | [Druid](https://github.com/alibaba/druid) | JDBC 连接池、监控组件 | 1.2.15 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
195 195 | [MyBatis Plus](https://mp.baomidou.com/) | MyBatis 增强工具包 | 3.5.2 | [文档](http://www.iocoder.cn/Spring-Boot/MyBatis/?yudao) |
196   -| [Dynamic Datasource](https://dynamic-datasource.com/) | 动态数据源 | 3.5.2 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
  196 +| [Dynamic Datasource](https://dynamic-datasource.com/) | 动态数据源 | 3.6.0 | [文档](http://www.iocoder.cn/Spring-Boot/datasource-pool/?yudao) |
197 197 | [Redis](https://redis.io/) | key-value 数据库 | 5.0 / 6.0 | |
198 198 | [Redisson](https://github.com/redisson/redisson) | Redis 客户端 | 3.18.0 | [文档](http://www.iocoder.cn/Spring-Boot/Redis/?yudao) |
199 199 | [Spring MVC](https://github.com/spring-projects/spring-framework/tree/master/spring-webmvc) | MVC 框架 | 5.3.24 | [文档](http://www.iocoder.cn/SpringMVC/MVC/?yudao) |
... ... @@ -204,12 +204,12 @@ ps:核心功能已经实现,正在对接微信小程序中...
204 204 | [Knife4j](https://gitee.com/xiaoym/knife4j) | Swagger 增强 UI 实现 | 3.0.3 | [文档](http://www.iocoder.cn/Spring-Boot/Swagger/?yudao) |
205 205 | [Resilience4j](https://github.com/resilience4j/resilience4j) | 服务保障组件 | 1.7.1 | [文档](http://www.iocoder.cn/Spring-Boot/Resilience4j/?yudao) |
206 206 | [SkyWalking](https://skywalking.apache.org/) | 分布式应用追踪系统 | 8.12.0 | [文档](http://www.iocoder.cn/Spring-Boot/SkyWalking/?yudao) |
207   -| [Spring Boot Admin](https://github.com/codecentric/spring-boot-admin) | Spring Boot 监控平台 | 2.7.7 | [文档](http://www.iocoder.cn/Spring-Boot/Admin/?yudao) |
  207 +| [Spring Boot Admin](https://github.com/codecentric/spring-boot-admin) | Spring Boot 监控平台 | 2.7.9 | [文档](http://www.iocoder.cn/Spring-Boot/Admin/?yudao) |
208 208 | [Jackson](https://github.com/FasterXML/jackson) | JSON 工具库 | 2.13.3 | |
209 209 | [MapStruct](https://mapstruct.org/) | Java Bean 转换 | 1.5.3.Final | [文档](http://www.iocoder.cn/Spring-Boot/MapStruct/?yudao) |
210 210 | [Lombok](https://projectlombok.org/) | 消除冗长的 Java 代码 | 1.18.24 | [文档](http://www.iocoder.cn/Spring-Boot/Lombok/?yudao) |
211 211 | [JUnit](https://junit.org/junit5/) | Java 单元测试框架 | 5.8.2 | - |
212   -| [Mockito](https://github.com/mockito/mockito) | Java Mock 框架 | 4.8.2 | - |
  212 +| [Mockito](https://github.com/mockito/mockito) | Java Mock 框架 | 4.8.0 | - |
213 213  
214 214 ### [管理后台 Vue2 前端](./yudao-ui-admin)
215 215  
... ... @@ -223,12 +223,12 @@ ps:核心功能已经实现,正在对接微信小程序中...
223 223 | 框架 | 说明 | 版本 |
224 224 |----------------------------------------------------------------------|:------------:|:------:|
225 225 | [Vue](https://staging-cn.vuejs.org/) | Vue 框架 | 3.2.45 |
226   -| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.0.1 |
227   -| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.26 |
  226 +| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.0.2 |
  227 +| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.27 |
228 228 | [TypeScript](https://www.typescriptlang.org/docs/) | TypeScript | 4.9.4 |
229 229 | [pinia](https://pinia.vuejs.org/) | vuex5 | 2.0.28 |
230 230 | [vue-i18n](https://kazupon.github.io/vue-i18n/zh/introduction.html/) | 国际化 | 9.2.2 |
231   -| [vxe-table](https://vxetable.cn/) | vue最强表单 | 4.5.7 |
  231 +| [vxe-table](https://vxetable.cn/) | vue最强表单 | 4.3.7 |
232 232  
233 233 ### [管理后台 uni-app 跨端](./yudao-ui-admin-uniapp)
234 234  
... ...
sql/mysql/ruoyi-vue-pro.sql
... ... @@ -11,7 +11,7 @@
11 11 Target Server Version : 80026
12 12 File Encoding : 65001
13 13  
14   - Date: 29/07/2022 00:33:25
  14 + Date: 20/12/2022 00:33:25
15 15 */
16 16  
17 17 SET NAMES utf8mb4;
... ... @@ -300,7 +300,7 @@ CREATE TABLE `bpm_form` (
300 300 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
301 301 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
302 302 PRIMARY KEY (`id`) USING BTREE
303   -) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的表单定义';
  303 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的表单定义';
304 304  
305 305 -- ----------------------------
306 306 -- Records of bpm_form
... ... @@ -329,7 +329,7 @@ CREATE TABLE `bpm_oa_leave` (
329 329 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
330 330 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
331 331 PRIMARY KEY (`id`) USING BTREE
332   -) ENGINE = InnoDB AUTO_INCREMENT = 33 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OA 请假申请表';
  332 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OA 请假申请表';
333 333  
334 334 -- ----------------------------
335 335 -- Records of bpm_oa_leave
... ... @@ -359,7 +359,7 @@ CREATE TABLE `bpm_process_definition_ext` (
359 359 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
360 360 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
361 361 PRIMARY KEY (`id`) USING BTREE
362   -) ENGINE = InnoDB AUTO_INCREMENT = 135 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'Bpm 流程定义的拓展表\n';
  362 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'Bpm 流程定义的拓展表\n';
363 363  
364 364 -- ----------------------------
365 365 -- Records of bpm_process_definition_ext
... ... @@ -389,7 +389,7 @@ CREATE TABLE `bpm_process_instance_ext` (
389 389 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
390 390 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
391 391 PRIMARY KEY (`id`) USING BTREE
392   -) ENGINE = InnoDB AUTO_INCREMENT = 290 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的流程实例的拓展';
  392 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的流程实例的拓展';
393 393  
394 394 -- ----------------------------
395 395 -- Records of bpm_process_instance_ext
... ... @@ -415,7 +415,7 @@ CREATE TABLE `bpm_task_assign_rule` (
415 415 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
416 416 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
417 417 PRIMARY KEY (`id`) USING BTREE
418   -) ENGINE = InnoDB AUTO_INCREMENT = 265 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'Bpm 任务规则表';
  418 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'Bpm 任务规则表';
419 419  
420 420 -- ----------------------------
421 421 -- Records of bpm_task_assign_rule
... ... @@ -444,7 +444,7 @@ CREATE TABLE `bpm_task_ext` (
444 444 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
445 445 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
446 446 PRIMARY KEY (`id`) USING BTREE
447   -) ENGINE = InnoDB AUTO_INCREMENT = 341 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的流程任务的拓展表';
  447 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '工作流的流程任务的拓展表';
448 448  
449 449 -- ----------------------------
450 450 -- Records of bpm_task_ext
... ... @@ -469,7 +469,7 @@ CREATE TABLE `bpm_user_group` (
469 469 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
470 470 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
471 471 PRIMARY KEY (`id`) USING BTREE
472   -) ENGINE = InnoDB AUTO_INCREMENT = 111 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户组';
  472 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户组';
473 473  
474 474 -- ----------------------------
475 475 -- Records of bpm_user_group
... ... @@ -504,7 +504,7 @@ CREATE TABLE `infra_api_access_log` (
504 504 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
505 505 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
506 506 PRIMARY KEY (`id`) USING BTREE
507   -) ENGINE = InnoDB AUTO_INCREMENT = 35822 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'API 访问日志表';
  507 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'API 访问日志表';
508 508  
509 509 -- ----------------------------
510 510 -- Records of infra_api_access_log
... ... @@ -546,7 +546,7 @@ CREATE TABLE `infra_api_error_log` (
546 546 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
547 547 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
548 548 PRIMARY KEY (`id`) USING BTREE
549   -) ENGINE = InnoDB AUTO_INCREMENT = 647 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统异常日志';
  549 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统异常日志';
550 550  
551 551 -- ----------------------------
552 552 -- Records of infra_api_error_log
... ... @@ -584,7 +584,7 @@ CREATE TABLE `infra_codegen_column` (
584 584 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
585 585 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
586 586 PRIMARY KEY (`id`) USING BTREE
587   -) ENGINE = InnoDB AUTO_INCREMENT = 1126 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '代码生成表字段定义';
  587 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '代码生成表字段定义';
588 588  
589 589 -- ----------------------------
590 590 -- Records of infra_codegen_column
... ... @@ -616,7 +616,7 @@ CREATE TABLE `infra_codegen_table` (
616 616 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
617 617 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
618 618 PRIMARY KEY (`id`) USING BTREE
619   -) ENGINE = InnoDB AUTO_INCREMENT = 99 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '代码生成表定义';
  619 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '代码生成表定义';
620 620  
621 621 -- ----------------------------
622 622 -- Records of infra_codegen_table
... ... @@ -673,7 +673,7 @@ CREATE TABLE `infra_data_source_config` (
673 673 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
674 674 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
675 675 PRIMARY KEY (`id`) USING BTREE
676   -) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '数据源配置表';
  676 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '数据源配置表';
677 677  
678 678 -- ----------------------------
679 679 -- Records of infra_data_source_config
... ... @@ -699,7 +699,7 @@ CREATE TABLE `infra_file` (
699 699 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
700 700 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
701 701 PRIMARY KEY (`id`) USING BTREE
702   -) ENGINE = InnoDB AUTO_INCREMENT = 93 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '文件表';
  702 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '文件表';
703 703  
704 704 -- ----------------------------
705 705 -- Records of infra_file
... ... @@ -753,7 +753,7 @@ CREATE TABLE `infra_file_content` (
753 753 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
754 754 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
755 755 PRIMARY KEY (`id`) USING BTREE
756   -) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '文件表';
  756 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '文件表';
757 757  
758 758 -- ----------------------------
759 759 -- Records of infra_file_content
... ... @@ -781,13 +781,13 @@ CREATE TABLE `infra_job` (
781 781 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
782 782 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
783 783 PRIMARY KEY (`id`) USING BTREE
784   -) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '定时任务表';
  784 +) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '定时任务表';
785 785  
786 786 -- ----------------------------
787 787 -- Records of infra_job
788 788 -- ----------------------------
789 789 BEGIN;
790   -INSERT INTO `infra_job` (`id`, `name`, `status`, `handler_name`, `handler_param`, `cron_expression`, `retry_count`, `retry_interval`, `monitor_timeout`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (5, '支付通知 Job', 2, 'payNotifyJob', NULL, '* * * * * ?', 0, 0, 0, '1', '2021-10-27 08:34:42', '1', '2022-04-03 20:35:25', b'0');
  790 +INSERT INTO `infra_job` (`id`, `name`, `status`, `handler_name`, `handler_param`, `cron_expression`, `retry_count`, `retry_interval`, `monitor_timeout`, `creator`, `create_time`, `updater`, `update_time`, `deleted`) VALUES (1, '支付通知 Job', 2, 'payNotifyJob', NULL, '* * * * * ?', 0, 0, 0, '1', '2021-10-27 08:34:42', '1', '2022-04-03 20:35:25', b'0');
791 791 COMMIT;
792 792  
793 793 -- ----------------------------
... ... @@ -811,7 +811,7 @@ CREATE TABLE `infra_job_log` (
811 811 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
812 812 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
813 813 PRIMARY KEY (`id`) USING BTREE
814   -) ENGINE = InnoDB AUTO_INCREMENT = 25295 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '定时任务日志表';
  814 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '定时任务日志表';
815 815  
816 816 -- ----------------------------
817 817 -- Records of infra_job_log
... ... @@ -836,7 +836,7 @@ CREATE TABLE `infra_test_demo` (
836 836 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
837 837 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
838 838 PRIMARY KEY (`id`) USING BTREE
839   -) ENGINE = InnoDB AUTO_INCREMENT = 108 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '字典类型表';
  839 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '字典类型表';
840 840  
841 841 -- ----------------------------
842 842 -- Records of infra_test_demo
... ... @@ -866,7 +866,7 @@ CREATE TABLE `member_user` (
866 866 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
867 867 PRIMARY KEY (`id`) USING BTREE,
868 868 UNIQUE INDEX `uk_mobile`(`mobile` ASC) USING BTREE COMMENT '手机号'
869   -) ENGINE = InnoDB AUTO_INCREMENT = 248 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户';
  869 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '用户';
870 870  
871 871 -- ----------------------------
872 872 -- Records of member_user
... ... @@ -893,7 +893,7 @@ CREATE TABLE `pay_app` (
893 893 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
894 894 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
895 895 PRIMARY KEY (`id`) USING BTREE
896   -) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付应用信息';
  896 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付应用信息';
897 897  
898 898 -- ----------------------------
899 899 -- Records of pay_app
... ... @@ -921,7 +921,7 @@ CREATE TABLE `pay_channel` (
921 921 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
922 922 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
923 923 PRIMARY KEY (`id`) USING BTREE
924   -) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付渠道\n';
  924 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付渠道\n';
925 925  
926 926 -- ----------------------------
927 927 -- Records of pay_channel
... ... @@ -947,7 +947,7 @@ CREATE TABLE `pay_merchant` (
947 947 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
948 948 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
949 949 PRIMARY KEY (`id`) USING BTREE
950   -) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付商户信息';
  950 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付商户信息';
951 951  
952 952 -- ----------------------------
953 953 -- Records of pay_merchant
... ... @@ -972,7 +972,7 @@ CREATE TABLE `pay_notify_log` (
972 972 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
973 973 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
974 974 PRIMARY KEY (`id`) USING BTREE
975   -) ENGINE = InnoDB AUTO_INCREMENT = 363051 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付通知 App 的日志';
  975 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付通知 App 的日志';
976 976  
977 977 -- ----------------------------
978 978 -- Records of pay_notify_log
... ... @@ -1004,7 +1004,7 @@ CREATE TABLE `pay_notify_task` (
1004 1004 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1005 1005 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1006 1006 PRIMARY KEY (`id`) USING BTREE
1007   -) ENGINE = InnoDB AUTO_INCREMENT = 112 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '商户支付、退款等的通知\n';
  1007 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '商户支付、退款等的通知\n';
1008 1008  
1009 1009 -- ----------------------------
1010 1010 -- Records of pay_notify_task
... ... @@ -1048,7 +1048,7 @@ CREATE TABLE `pay_order` (
1048 1048 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1049 1049 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1050 1050 PRIMARY KEY (`id`) USING BTREE
1051   -) ENGINE = InnoDB AUTO_INCREMENT = 125 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付订单\n';
  1051 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付订单\n';
1052 1052  
1053 1053 -- ----------------------------
1054 1054 -- Records of pay_order
... ... @@ -1077,7 +1077,7 @@ CREATE TABLE `pay_order_extension` (
1077 1077 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1078 1078 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1079 1079 PRIMARY KEY (`id`) USING BTREE
1080   -) ENGINE = InnoDB AUTO_INCREMENT = 124 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付订单\n';
  1080 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '支付订单\n';
1081 1081  
1082 1082 -- ----------------------------
1083 1083 -- Records of pay_order_extension
... ... @@ -1166,8 +1166,6 @@ INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`,
1166 1166 INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`, `phone`, `email`, `status`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (107, '运维部门', 101, 5, NULL, '15888888888', 'ry@qq.com', 0, 'admin', '2021-01-05 17:03:47', '', '2021-12-15 05:01:33', b'0', 1);
1167 1167 INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`, `phone`, `email`, `status`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (108, '市场部门', 102, 1, NULL, '15888888888', 'ry@qq.com', 0, 'admin', '2021-01-05 17:03:47', '1', '2022-02-16 08:35:45', b'0', 1);
1168 1168 INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`, `phone`, `email`, `status`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (109, '财务部门', 102, 2, NULL, '15888888888', 'ry@qq.com', 0, 'admin', '2021-01-05 17:03:47', '', '2021-12-15 05:01:29', b'0', 1);
1169   -INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`, `phone`, `email`, `status`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (110, '新部门', 0, 1, NULL, NULL, NULL, 0, '110', '2022-02-23 20:46:30', '110', '2022-02-23 20:46:30', b'0', 121);
1170   -INSERT INTO `system_dept` (`id`, `name`, `parent_id`, `sort`, `leader_user_id`, `phone`, `email`, `status`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (111, '顶级部门', 0, 1, NULL, NULL, NULL, 0, '113', '2022-03-07 21:44:50', '113', '2022-03-07 21:44:50', b'0', 122);
1171 1169 COMMIT;
1172 1170  
1173 1171 -- ----------------------------
... ... @@ -1414,7 +1412,7 @@ CREATE TABLE `system_error_code` (
1414 1412 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
1415 1413 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1416 1414 PRIMARY KEY (`id`) USING BTREE
1417   -) ENGINE = InnoDB AUTO_INCREMENT = 5832 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '错误码表';
  1415 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '错误码表';
1418 1416  
1419 1417 -- ----------------------------
1420 1418 -- Records of system_error_code
... ... @@ -1443,7 +1441,7 @@ CREATE TABLE `system_login_log` (
1443 1441 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1444 1442 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1445 1443 PRIMARY KEY (`id`) USING BTREE
1446   -) ENGINE = InnoDB AUTO_INCREMENT = 1670 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统访问记录';
  1444 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统访问记录';
1447 1445  
1448 1446 -- ----------------------------
1449 1447 -- Records of system_login_log
... ... @@ -1762,7 +1760,7 @@ CREATE TABLE `system_oauth2_access_token` (
1762 1760 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1763 1761 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1764 1762 PRIMARY KEY (`id`) USING BTREE
1765   -) ENGINE = InnoDB AUTO_INCREMENT = 404 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 访问令牌';
  1763 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 访问令牌';
1766 1764  
1767 1765 -- ----------------------------
1768 1766 -- Records of system_oauth2_access_token
... ... @@ -1789,7 +1787,7 @@ CREATE TABLE `system_oauth2_approve` (
1789 1787 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1790 1788 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1791 1789 PRIMARY KEY (`id`) USING BTREE
1792   -) ENGINE = InnoDB AUTO_INCREMENT = 79 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 批准表';
  1790 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 批准表';
1793 1791  
1794 1792 -- ----------------------------
1795 1793 -- Records of system_oauth2_approve
... ... @@ -1855,7 +1853,7 @@ CREATE TABLE `system_oauth2_code` (
1855 1853 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1856 1854 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1857 1855 PRIMARY KEY (`id`) USING BTREE
1858   -) ENGINE = InnoDB AUTO_INCREMENT = 103 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 授权码表';
  1856 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'OAuth2 授权码表';
1859 1857  
1860 1858 -- ----------------------------
1861 1859 -- Records of system_oauth2_code
... ... @@ -1882,7 +1880,7 @@ CREATE TABLE `system_oauth2_refresh_token` (
1882 1880 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1883 1881 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1884 1882 PRIMARY KEY (`id`) USING BTREE
1885   -) ENGINE = InnoDB AUTO_INCREMENT = 295 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '刷新令牌';
  1883 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '刷新令牌';
1886 1884  
1887 1885 -- ----------------------------
1888 1886 -- Records of system_oauth2_refresh_token
... ... @@ -1922,7 +1920,7 @@ CREATE TABLE `system_operate_log` (
1922 1920 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1923 1921 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1924 1922 PRIMARY KEY (`id`) USING BTREE
1925   -) ENGINE = InnoDB AUTO_INCREMENT = 2764 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '操作日志记录';
  1923 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '操作日志记录';
1926 1924  
1927 1925 -- ----------------------------
1928 1926 -- Records of system_operate_log
... ... @@ -1948,7 +1946,7 @@ CREATE TABLE `system_post` (
1948 1946 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
1949 1947 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
1950 1948 PRIMARY KEY (`id`) USING BTREE
1951   -) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '岗位信息表';
  1949 +) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '岗位信息表';
1952 1950  
1953 1951 -- ----------------------------
1954 1952 -- Records of system_post
... ... @@ -2304,7 +2302,7 @@ CREATE TABLE `system_sms_code` (
2304 2302 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
2305 2303 PRIMARY KEY (`id`) USING BTREE,
2306 2304 INDEX `idx_mobile`(`mobile` ASC) USING BTREE COMMENT '手机号'
2307   -) ENGINE = InnoDB AUTO_INCREMENT = 480 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '手机验证码';
  2305 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '手机验证码';
2308 2306  
2309 2307 -- ----------------------------
2310 2308 -- Records of system_sms_code
... ... @@ -2347,7 +2345,7 @@ CREATE TABLE `system_sms_log` (
2347 2345 `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
2348 2346 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
2349 2347 PRIMARY KEY (`id`) USING BTREE
2350   -) ENGINE = InnoDB AUTO_INCREMENT = 337 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '短信日志';
  2348 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '短信日志';
2351 2349  
2352 2350 -- ----------------------------
2353 2351 -- Records of system_sms_log
... ... @@ -2417,7 +2415,7 @@ CREATE TABLE `system_social_user` (
2417 2415 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
2418 2416 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
2419 2417 PRIMARY KEY (`id`) USING BTREE
2420   -) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社交用户表';
  2418 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社交用户表';
2421 2419  
2422 2420 -- ----------------------------
2423 2421 -- Records of system_social_user
... ... @@ -2442,7 +2440,7 @@ CREATE TABLE `system_social_user_bind` (
2442 2440 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
2443 2441 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
2444 2442 PRIMARY KEY (`id`) USING BTREE
2445   -) ENGINE = InnoDB AUTO_INCREMENT = 25 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社交绑定表';
  2443 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '社交绑定表';
2446 2444  
2447 2445 -- ----------------------------
2448 2446 -- Records of system_social_user_bind
... ... @@ -2528,12 +2526,7 @@ CREATE TABLE `system_user_post` (
2528 2526 -- Records of system_user_post
2529 2527 -- ----------------------------
2530 2528 BEGIN;
2531   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (112, 1, 1, 'admin', '2022-05-02 07:25:24', 'admin', '2022-05-02 07:25:24', b'0', 1);
2532   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (113, 100, 1, 'admin', '2022-05-02 07:25:24', 'admin', '2022-05-02 07:25:24', b'0', 1);
2533   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (114, 114, 3, 'admin', '2022-05-02 07:25:24', 'admin', '2022-05-02 07:25:24', b'0', 1);
2534   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (115, 104, 1, '1', '2022-05-16 19:36:28', '1', '2022-05-16 19:36:28', b'0', 1);
2535   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (116, 117, 2, '1', '2022-07-09 17:40:26', '1', '2022-07-09 17:40:26', b'0', 1);
2536   -INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (117, 118, 1, '1', '2022-07-09 17:44:44', '1', '2022-07-09 17:44:44', b'0', 1);
  2529 +INSERT INTO `system_user_post` (`id`, `user_id`, `post_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (1, 1, 1, 'admin', '2022-05-02 07:25:24', 'admin', '2022-05-02 07:25:24', b'0', 1);
2537 2530 COMMIT;
2538 2531  
2539 2532 -- ----------------------------
... ... @@ -2551,7 +2544,7 @@ CREATE TABLE `system_user_role` (
2551 2544 `deleted` bit(1) NULL DEFAULT b'0' COMMENT '是否删除',
2552 2545 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
2553 2546 PRIMARY KEY (`id`) USING BTREE
2554   -) ENGINE = InnoDB AUTO_INCREMENT = 23 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户和角色关联表';
  2547 +) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户和角色关联表';
2555 2548  
2556 2549 -- ----------------------------
2557 2550 -- Records of system_user_role
... ... @@ -2559,21 +2552,6 @@ CREATE TABLE `system_user_role` (
2559 2552 BEGIN;
2560 2553 INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (1, 1, 1, '', '2022-01-11 13:19:45', '', '2022-05-12 12:35:17', b'0', 1);
2561 2554 INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (2, 2, 2, '', '2022-01-11 13:19:45', '', '2022-05-12 12:35:13', b'0', 1);
2562   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (4, 100, 101, '', '2022-01-11 13:19:45', '', '2022-05-12 12:35:13', b'0', 1);
2563   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (5, 100, 1, '', '2022-01-11 13:19:45', '', '2022-05-12 12:35:12', b'0', 1);
2564   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (6, 100, 2, '', '2022-01-11 13:19:45', '', '2022-05-12 12:35:11', b'0', 1);
2565   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (10, 103, 1, '1', '2022-01-11 13:19:45', '1', '2022-01-11 13:19:45', b'0', 1);
2566   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (11, 107, 106, '1', '2022-02-20 22:59:33', '1', '2022-02-20 22:59:33', b'0', 118);
2567   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (12, 108, 107, '1', '2022-02-20 23:00:50', '1', '2022-02-20 23:00:50', b'0', 119);
2568   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (13, 109, 108, '1', '2022-02-20 23:11:50', '1', '2022-02-20 23:11:50', b'0', 120);
2569   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (14, 110, 109, '1', '2022-02-22 00:56:14', '1', '2022-02-22 00:56:14', b'0', 121);
2570   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (15, 111, 110, '110', '2022-02-23 13:14:38', '110', '2022-02-23 13:14:38', b'0', 121);
2571   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (16, 113, 111, '1', '2022-03-07 21:37:58', '1', '2022-03-07 21:37:58', b'0', 122);
2572   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (17, 114, 101, '1', '2022-03-19 21:51:13', '1', '2022-03-19 21:51:13', b'0', 1);
2573   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (18, 1, 2, '1', '2022-05-12 20:39:29', '1', '2022-05-12 20:39:29', b'0', 1);
2574   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (19, 116, 113, '1', '2022-05-17 10:07:10', '1', '2022-05-17 10:07:10', b'0', 124);
2575   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (20, 104, 101, '1', '2022-05-28 15:43:57', '1', '2022-05-28 15:43:57', b'0', 1);
2576   -INSERT INTO `system_user_role` (`id`, `user_id`, `role_id`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (22, 115, 2, '1', '2022-07-21 22:08:30', '1', '2022-07-21 22:08:30', b'0', 1);
2577 2555 COMMIT;
2578 2556  
2579 2557 -- ----------------------------
... ... @@ -2596,7 +2574,7 @@ CREATE TABLE `system_user_session` (
2596 2574 `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除',
2597 2575 `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号',
2598 2576 PRIMARY KEY (`id`) USING BTREE
2599   -) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户在线 Session';
  2577 +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '用户在线 Session';
2600 2578  
2601 2579 -- ----------------------------
2602 2580 -- Records of system_user_session
... ...
sql/optional/visualization/jimureport.mysql5.7.create.sql
... ... @@ -418,17 +418,19 @@ CREATE TABLE `jimu_report_data_source` (
418 418 `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新人',
419 419 `update_time` datetime NULL DEFAULT NULL COMMENT '更新日期',
420 420 `connect_times` int(1) UNSIGNED NULL DEFAULT 0 COMMENT '连接失败次数',
  421 + `tenant_id` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '多租户标识',
  422 + `type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '类型(report:报表;drag:仪表盘)',
421 423 PRIMARY KEY (`id`) USING BTREE,
422 424 INDEX `idx_jmdatasource_report_id`(`report_id`) USING BTREE,
423 425 INDEX `idx_jmdatasource_code`(`code`) USING BTREE
424   -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
  426 +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = DYNAMIC;
425 427  
426 428 -- ----------------------------
427 429 -- Records of jimu_report_data_source
428 430 -- ----------------------------
429   -INSERT INTO `jimu_report_data_source` VALUES ('1324261983692902402', 'jeewx', '1324261770294071296', '', NULL, 'MYSQL', 'com.mysql.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeewx-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'jeecg', '2020-11-05 16:07:15', NULL, '2020-11-05 16:07:15', 0);
430   -INSERT INTO `jimu_report_data_source` VALUES ('26d21fe4f27920d2f56abc8d90a8e527', 'oracle', '1308645288868712448', '', NULL, 'ORACLE', 'oracle.jdbc.OracleDriver', 'jdbc:oracle:thin:@192.168.1.199:1521:helowin', 'jeecgbootbpm', 'jeecg196283', 'admin', '2021-01-05 19:26:24', NULL, '2021-01-05 19:26:24', 1);
431   -INSERT INTO `jimu_report_data_source` VALUES ('8f90daf47d15d35ca6cf420748b8b9ba', 'localhost', '1316944968992034816', '', NULL, 'MYSQL5.7', 'com.mysql.cj.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeecg-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'admin', '2021-01-13 14:34:00', NULL, '2021-01-13 14:34:00', 0);
  431 +INSERT INTO `jimu_report_data_source` VALUES ('1324261983692902402', 'jeewx', '1324261770294071296', '', NULL, 'MYSQL', 'com.mysql.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeewx-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'jeecg', '2020-11-05 16:07:15', NULL, '2020-11-05 16:07:15', 0, NULL, 'report');
  432 +INSERT INTO `jimu_report_data_source` VALUES ('26d21fe4f27920d2f56abc8d90a8e527', 'oracle', '1308645288868712448', '', NULL, 'ORACLE', 'oracle.jdbc.OracleDriver', 'jdbc:oracle:thin:@192.168.1.199:1521:helowin', 'jeecgbootbpm', 'jeecg196283', 'admin', '2021-01-05 19:26:24', NULL, '2021-01-05 19:26:24', 1, NULL, 'report');
  433 +INSERT INTO `jimu_report_data_source` VALUES ('8f90daf47d15d35ca6cf420748b8b9ba', 'localhost', '1316944968992034816', '', NULL, 'MYSQL5.7', 'com.mysql.cj.jdbc.Driver', 'jdbc:mysql://127.0.0.1:3306/jeecg-boot?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8', 'root', 'root', 'admin', '2021-01-13 14:34:00', NULL, '2021-01-13 14:34:00', 0, NULL, 'report');
432 434  
433 435 -- ----------------------------
434 436 -- Table structure for jimu_report_db
... ...
yudao-dependencies/pom.xml
... ... @@ -25,14 +25,14 @@
25 25 <druid.version>1.2.15</druid.version>
26 26 <mybatis-plus.version>3.5.2</mybatis-plus.version>
27 27 <mybatis-plus-generator.version>3.5.2</mybatis-plus-generator.version>
28   - <dynamic-datasource.version>3.5.2</dynamic-datasource.version>
  28 + <dynamic-datasource.version>3.6.0</dynamic-datasource.version>
29 29 <redisson.version>3.18.0</redisson.version>
30 30 <!-- 服务保障相关 -->
31 31 <lock4j.version>2.2.3</lock4j.version>
32 32 <resilience4j.version>1.7.1</resilience4j.version>
33 33 <!-- 监控相关 -->
34 34 <skywalking.version>8.12.0</skywalking.version>
35   - <spring-boot-admin.version>2.7.7</spring-boot-admin.version>
  35 + <spring-boot-admin.version>2.7.9</spring-boot-admin.version>
36 36 <opentracing.version>0.33.0</opentracing.version>
37 37 <!-- Test 测试相关 -->
38 38 <podam.version>7.2.11.RELEASE</podam.version>
... ... @@ -53,7 +53,7 @@
53 53 <transmittable-thread-local.version>2.14.2</transmittable-thread-local.version>
54 54 <commons-net.version>3.8.0</commons-net.version>
55 55 <jsch.version>0.1.55</jsch.version>
56   - <tika-core.version>2.5.0</tika-core.version>
  56 + <tika-core.version>2.6.0</tika-core.version>
57 57 <aj-captcha.version>1.3.0</aj-captcha.version>
58 58 <netty-all.version>4.1.85.Final</netty-all.version>
59 59 <!-- 三方云服务相关 -->
... ... @@ -64,7 +64,7 @@
64 64 <aliyun-java-sdk-dysmsapi.version>2.2.1</aliyun-java-sdk-dysmsapi.version>
65 65 <tencentcloud-sdk-java.version>3.1.637</tencentcloud-sdk-java.version>
66 66 <justauth.version>1.4.0</justauth.version>
67   - <jimureport.version>1.5.4</jimureport.version>
  67 + <jimureport.version>1.5.6</jimureport.version>
68 68 <xercesImpl.version>2.12.2</xercesImpl.version>
69 69 </properties>
70 70  
... ...
yudao-framework/yudao-spring-boot-starter-biz-pay/pom.xml
... ... @@ -52,7 +52,7 @@
52 52 <dependency>
53 53 <groupId>com.alipay.sdk</groupId>
54 54 <artifactId>alipay-sdk-java</artifactId>
55   - <version>4.34.71.ALL</version>
  55 + <version>4.35.0.ALL</version>
56 56 <exclusions>
57 57 <exclusion>
58 58 <groupId>org.bouncycastle</groupId>
... ...
yudao-framework/yudao-spring-boot-starter-file/pom.xml
... ... @@ -46,7 +46,6 @@
46 46 <dependency>
47 47 <groupId>com.fasterxml.jackson.core</groupId>
48 48 <artifactId>jackson-databind</artifactId>
49   - <version>2.13.4</version>
50 49 </dependency>
51 50 <dependency>
52 51 <groupId>com.fasterxml.jackson.core</groupId>
... ...
yudao-module-infra/yudao-module-infra-biz/src/main/resources/codegen/vue3/views/data.ts.vm
... ... @@ -78,10 +78,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
78 78 },
79 79 #elseif($column.htmlType == "imageUpload")## 图片上传
80 80 form: {
81   - component: 'UploadImg',
82   - componentProps: {
83   - limit: 1
84   - }
  81 + component: 'UploadImg' // 单图上传,多图为UploadImgs
85 82 },
86 83 #elseif($column.htmlType == "fileUpload")## 图片上传
87 84 form: {
... ...
yudao-ui-admin-vue3/.env
... ... @@ -12,3 +12,6 @@ VITE_APP_TENANT_ENABLE=true
12 12  
13 13 # 验证码的开关
14 14 VITE_APP_CAPTCHA_ENABLE=true
  15 +
  16 +# 路由在只有一个子集的时候是否显示父级
  17 +VITE_ROUTE_ALWAYSSHOW_ENABLE=true
... ...
yudao-ui-admin-vue3/README.md
... ... @@ -30,8 +30,8 @@
30 30 | 框架 | 说明 | 版本 |
31 31 | --- | --- | --- |
32 32 | [Vue](https://staging-cn.vuejs.org/) | vue 框架 | 3.2.45 |
33   -| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.0.1 |
34   -| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.26 |
  33 +| [Vite](https://cn.vitejs.dev//) | 开发与构建工具 | 4.0.2 |
  34 +| [Element Plus](https://element-plus.org/zh-CN/) | Element Plus | 2.2.27 |
35 35 | [TypeScript](https://www.typescriptlang.org/docs/) | JavaScript 的超集 | 4.9.4 |
36 36 | [pinia](https://pinia.vuejs.org/) | Vue 存储库 替代 vuex5 | 2.0.28 |
37 37 | [vueuse](https://vueuse.org/) | 常用工具集 | 9.6.0 |
... ...
yudao-ui-admin-vue3/build/vite/index.ts
1 1 import { resolve } from 'path'
2 2 import Vue from '@vitejs/plugin-vue'
3 3 import VueJsx from '@vitejs/plugin-vue-jsx'
4   -import VueI18n from '@intlify/vite-plugin-vue-i18n'
5 4 import WindiCSS from 'vite-plugin-windicss'
6 5 import progress from 'vite-plugin-progress'
7 6 import EslintPlugin from 'vite-plugin-eslint'
... ... @@ -9,6 +8,7 @@ import PurgeIcons from &#39;vite-plugin-purge-icons&#39;
9 8 import { ViteEjsPlugin } from 'vite-plugin-ejs'
10 9 import viteCompression from 'vite-plugin-compression'
11 10 import vueSetupExtend from 'vite-plugin-vue-setup-extend'
  11 +import VueI18nPlugin from '@intlify/unplugin-vue-i18n/vite'
12 12 import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
13 13 import {
14 14 createStyleImportPlugin,
... ... @@ -51,7 +51,7 @@ export function createVitePlugins(VITE_APP_TITLE: string) {
51 51 cache: false,
52 52 include: ['src/**/*.vue', 'src/**/*.ts', 'src/**/*.tsx'] // 检查的文件
53 53 }),
54   - VueI18n({
  54 + VueI18nPlugin({
55 55 runtimeOnly: true,
56 56 compositionOnly: true,
57 57 include: [resolve(__dirname, 'src/locales/**')]
... ...
yudao-ui-admin-vue3/package.json
1 1 {
2 2 "name": "yudao-ui-admin-vue3",
3   - "version": "1.6.5.1876",
  3 + "version": "1.6.5.1877",
4 4 "description": "基于vue3、vite4、element-plus、typesScript",
5 5 "author": "xingyu",
6 6 "private": false,
... ... @@ -57,8 +57,8 @@
57 57 "devDependencies": {
58 58 "@commitlint/cli": "^17.3.0",
59 59 "@commitlint/config-conventional": "^17.3.0",
60   - "@iconify/json": "^2.1.153",
61   - "@intlify/vite-plugin-vue-i18n": "^6.0.3",
  60 + "@iconify/json": "^2.1.154",
  61 + "@intlify/unplugin-vue-i18n": "^0.8.1",
62 62 "@purge-icons/generated": "^0.9.0",
63 63 "@types/intro.js": "^5.1.0",
64 64 "@types/lodash-es": "^4.17.6",
... ... @@ -66,8 +66,8 @@
66 66 "@types/nprogress": "^0.2.0",
67 67 "@types/qrcode": "^1.5.0",
68 68 "@types/qs": "^6.9.7",
69   - "@typescript-eslint/eslint-plugin": "^5.46.1",
70   - "@typescript-eslint/parser": "^5.46.1",
  69 + "@typescript-eslint/eslint-plugin": "^5.47.0",
  70 + "@typescript-eslint/parser": "^5.47.0",
71 71 "@vitejs/plugin-legacy": "^3.0.1",
72 72 "@vitejs/plugin-vue": "^4.0.0",
73 73 "@vitejs/plugin-vue-jsx": "^3.0.0",
... ... @@ -85,7 +85,7 @@
85 85 "prettier": "^2.8.1",
86 86 "rimraf": "^3.0.2",
87 87 "rollup": "^3.7.5",
88   - "sass": "^1.57.0",
  88 + "sass": "^1.57.1",
89 89 "stylelint": "^14.16.0",
90 90 "stylelint-config-html": "^1.1.0",
91 91 "stylelint-config-prettier": "^9.0.4",
... ...
yudao-ui-admin-vue3/pnpm-lock.yaml
... ... @@ -4,8 +4,8 @@ specifiers:
4 4 '@commitlint/cli': ^17.3.0
5 5 '@commitlint/config-conventional': ^17.3.0
6 6 '@iconify/iconify': ^3.0.1
7   - '@iconify/json': ^2.1.153
8   - '@intlify/vite-plugin-vue-i18n': ^6.0.3
  7 + '@iconify/json': ^2.1.154
  8 + '@intlify/unplugin-vue-i18n': ^0.8.1
9 9 '@purge-icons/generated': ^0.9.0
10 10 '@types/intro.js': ^5.1.0
11 11 '@types/lodash-es': ^4.17.6
... ... @@ -13,8 +13,8 @@ specifiers:
13 13 '@types/nprogress': ^0.2.0
14 14 '@types/qrcode': ^1.5.0
15 15 '@types/qs': ^6.9.7
16   - '@typescript-eslint/eslint-plugin': ^5.46.1
17   - '@typescript-eslint/parser': ^5.46.1
  16 + '@typescript-eslint/eslint-plugin': ^5.47.0
  17 + '@typescript-eslint/parser': ^5.47.0
18 18 '@vitejs/plugin-legacy': ^3.0.1
19 19 '@vitejs/plugin-vue': ^4.0.0
20 20 '@vitejs/plugin-vue-jsx': ^3.0.0
... ... @@ -51,7 +51,7 @@ specifiers:
51 51 qs: ^6.11.0
52 52 rimraf: ^3.0.2
53 53 rollup: ^3.7.5
54   - sass: ^1.57.0
  54 + sass: ^1.57.1
55 55 stylelint: ^14.16.0
56 56 stylelint-config-html: ^1.1.0
57 57 stylelint-config-prettier: ^9.0.4
... ... @@ -116,8 +116,8 @@ dependencies:
116 116 devDependencies:
117 117 '@commitlint/cli': 17.3.0
118 118 '@commitlint/config-conventional': 17.3.0
119   - '@iconify/json': 2.1.153
120   - '@intlify/vite-plugin-vue-i18n': 6.0.3_vite@4.0.2+vue-i18n@9.2.2
  119 + '@iconify/json': 2.1.154
  120 + '@intlify/unplugin-vue-i18n': 0.8.1_vue-i18n@9.2.2
121 121 '@purge-icons/generated': 0.9.0
122 122 '@types/intro.js': 5.1.0
123 123 '@types/lodash-es': 4.17.6
... ... @@ -125,8 +125,8 @@ devDependencies:
125 125 '@types/nprogress': 0.2.0
126 126 '@types/qrcode': 1.5.0
127 127 '@types/qs': 6.9.7
128   - '@typescript-eslint/eslint-plugin': registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.46.1_mqzxmroayievgzgel6yrqgih5i
129   - '@typescript-eslint/parser': registry.npmmirror.com/@typescript-eslint/parser/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa
  128 + '@typescript-eslint/eslint-plugin': 5.47.0_ncmi6noazr3nzas7jxykisekym
  129 + '@typescript-eslint/parser': 5.47.0_lzzuuodtsqwxnvqeq4g4likcqa
130 130 '@vitejs/plugin-legacy': registry.npmmirror.com/@vitejs/plugin-legacy/3.0.1_terser@5.16.1+vite@4.0.2
131 131 '@vitejs/plugin-vue': registry.npmmirror.com/@vitejs/plugin-vue/4.0.0_vite@4.0.2+vue@3.2.45
132 132 '@vitejs/plugin-vue-jsx': registry.npmmirror.com/@vitejs/plugin-vue-jsx/3.0.0_vite@4.0.2+vue@3.2.45
... ... @@ -144,7 +144,7 @@ devDependencies:
144 144 prettier: 2.8.1
145 145 rimraf: 3.0.2
146 146 rollup: 3.7.5
147   - sass: 1.57.0
  147 + sass: 1.57.1
148 148 stylelint: 14.16.0
149 149 stylelint-config-html: 1.1.0_bto6pmslw3cibsiuq6smxboytq
150 150 stylelint-config-prettier: 9.0.4_stylelint@14.16.0
... ... @@ -153,7 +153,7 @@ devDependencies:
153 153 stylelint-order: 5.0.0_stylelint@14.16.0
154 154 terser: 5.16.1
155 155 typescript: 4.9.4
156   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  156 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
157 157 vite-plugin-compression: 0.5.1_vite@4.0.2
158 158 vite-plugin-ejs: 1.6.4
159 159 vite-plugin-eslint: 1.8.1_eslint@8.30.0+vite@4.0.2
... ... @@ -631,8 +631,8 @@ packages:
631 631 dependencies:
632 632 '@iconify/types': 2.0.0
633 633  
634   - /@iconify/json/2.1.153:
635   - resolution: {integrity: sha512-9DSzK1DIbrbjDK+LV8PTF/pTM8wJOrmRETEvVP47na093F6LEvcOQnq7Ett51e/WW0mA32GIj7LpO9opyJ/gtQ==}
  634 + /@iconify/json/2.1.154:
  635 + resolution: {integrity: sha512-RpUu4zDoeqIAzD54t8mfCKca+fzASgFf+lFE7Y9OzvScrf+IbUrvyZZEcOkjEB1cB4emDgmWGTAAkVTihhaqxQ==}
636 636 dependencies:
637 637 '@iconify/types': 2.0.0
638 638 pathe: 0.3.9
... ... @@ -681,7 +681,7 @@ packages:
681 681 engines: {node: '>= 14'}
682 682 dependencies:
683 683 '@intlify/shared': 9.2.2
684   - source-map: registry.npmmirror.com/source-map/0.6.1
  684 + source-map: 0.6.1
685 685  
686 686 /@intlify/message-compiler/9.3.0-beta.10:
687 687 resolution: {integrity: sha512-RoOC6yceOykLRhN0NlbkNOBUx1el6iphx3W8NfOx3jHVNtfT1FYokx14/5sU3F1F0uxeG4sp6q+ppKvaF8o+ww==}
... ... @@ -700,28 +700,33 @@ packages:
700 700 engines: {node: '>= 14'}
701 701 dev: true
702 702  
703   - /@intlify/vite-plugin-vue-i18n/6.0.3_vite@4.0.2+vue-i18n@9.2.2:
704   - resolution: {integrity: sha512-6SgNzPAOCR90wvt368lKzi7f/5ZEWJn22UCGvhFsP3XvKqlF3cVzojahgQ6o+LTdCkExeM6wPgd+haFf28E9VQ==}
705   - engines: {node: '>= 14.6'}
  703 + /@intlify/unplugin-vue-i18n/0.8.1_vue-i18n@9.2.2:
  704 + resolution: {integrity: sha512-BhigujPmP6JL1FSxmpogCaL+REozncHCVkJuUnefz4GWBu3X+pRe5O7PeJn8/g+Iml2ieQJz4ISPMmEbuGQjqQ==}
  705 + engines: {node: '>= 14.16'}
706 706 peerDependencies:
707 707 petite-vue-i18n: '*'
708   - vite: ^2.9.0 || ^3.0.0
709 708 vue-i18n: '*'
  709 + vue-i18n-bridge: '*'
710 710 peerDependenciesMeta:
711 711 petite-vue-i18n:
712 712 optional: true
713   - vite:
714   - optional: true
715 713 vue-i18n:
716 714 optional: true
  715 + vue-i18n-bridge:
  716 + optional: true
717 717 dependencies:
718 718 '@intlify/bundle-utils': 3.4.0_vue-i18n@9.2.2
719 719 '@intlify/shared': 9.3.0-beta.10
720 720 '@rollup/pluginutils': 4.2.1
  721 + '@vue/compiler-sfc': 3.2.45
721 722 debug: 4.3.4
722 723 fast-glob: 3.2.12
  724 + js-yaml: 4.1.0
  725 + json5: 2.2.1
  726 + pathe: 1.0.0
  727 + picocolors: 1.0.0
723 728 source-map: 0.6.1
724   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  729 + unplugin: 1.0.1
725 730 vue-i18n: 9.2.2_vue@3.2.45
726 731 transitivePeerDependencies:
727 732 - supports-color
... ... @@ -890,6 +895,10 @@ packages:
890 895 resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==}
891 896 dev: true
892 897  
  898 + /@types/semver/7.3.13:
  899 + resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==}
  900 + dev: true
  901 +
893 902 /@types/svgo/2.6.4:
894 903 resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==}
895 904 dependencies:
... ... @@ -900,6 +909,135 @@ packages:
900 909 resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
901 910 dev: false
902 911  
  912 + /@typescript-eslint/eslint-plugin/5.47.0_ncmi6noazr3nzas7jxykisekym:
  913 + resolution: {integrity: sha512-AHZtlXAMGkDmyLuLZsRpH3p4G/1iARIwc/T0vIem2YB+xW6pZaXYXzCBnZSF/5fdM97R9QqZWZ+h3iW10XgevQ==}
  914 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  915 + peerDependencies:
  916 + '@typescript-eslint/parser': ^5.0.0
  917 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
  918 + typescript: '*'
  919 + peerDependenciesMeta:
  920 + typescript:
  921 + optional: true
  922 + dependencies:
  923 + '@typescript-eslint/parser': 5.47.0_lzzuuodtsqwxnvqeq4g4likcqa
  924 + '@typescript-eslint/scope-manager': 5.47.0
  925 + '@typescript-eslint/type-utils': 5.47.0_lzzuuodtsqwxnvqeq4g4likcqa
  926 + '@typescript-eslint/utils': 5.47.0_lzzuuodtsqwxnvqeq4g4likcqa
  927 + debug: 4.3.4
  928 + eslint: 8.30.0
  929 + ignore: 5.2.1
  930 + natural-compare-lite: 1.4.0
  931 + regexpp: 3.2.0
  932 + semver: 7.3.8
  933 + tsutils: 3.21.0_typescript@4.9.4
  934 + typescript: 4.9.4
  935 + transitivePeerDependencies:
  936 + - supports-color
  937 + dev: true
  938 +
  939 + /@typescript-eslint/parser/5.47.0_lzzuuodtsqwxnvqeq4g4likcqa:
  940 + resolution: {integrity: sha512-udPU4ckK+R1JWCGdQC4Qa27NtBg7w020ffHqGyAK8pAgOVuNw7YaKXGChk+udh+iiGIJf6/E/0xhVXyPAbsczw==}
  941 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  942 + peerDependencies:
  943 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
  944 + typescript: '*'
  945 + peerDependenciesMeta:
  946 + typescript:
  947 + optional: true
  948 + dependencies:
  949 + '@typescript-eslint/scope-manager': 5.47.0
  950 + '@typescript-eslint/types': 5.47.0
  951 + '@typescript-eslint/typescript-estree': 5.47.0_typescript@4.9.4
  952 + debug: 4.3.4
  953 + eslint: 8.30.0
  954 + typescript: 4.9.4
  955 + transitivePeerDependencies:
  956 + - supports-color
  957 + dev: true
  958 +
  959 + /@typescript-eslint/scope-manager/5.47.0:
  960 + resolution: {integrity: sha512-dvJab4bFf7JVvjPuh3sfBUWsiD73aiftKBpWSfi3sUkysDQ4W8x+ZcFpNp7Kgv0weldhpmMOZBjx1wKN8uWvAw==}
  961 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  962 + dependencies:
  963 + '@typescript-eslint/types': 5.47.0
  964 + '@typescript-eslint/visitor-keys': 5.47.0
  965 + dev: true
  966 +
  967 + /@typescript-eslint/type-utils/5.47.0_lzzuuodtsqwxnvqeq4g4likcqa:
  968 + resolution: {integrity: sha512-1J+DFFrYoDUXQE1b7QjrNGARZE6uVhBqIvdaXTe5IN+NmEyD68qXR1qX1g2u4voA+nCaelQyG8w30SAOihhEYg==}
  969 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  970 + peerDependencies:
  971 + eslint: '*'
  972 + typescript: '*'
  973 + peerDependenciesMeta:
  974 + typescript:
  975 + optional: true
  976 + dependencies:
  977 + '@typescript-eslint/typescript-estree': 5.47.0_typescript@4.9.4
  978 + '@typescript-eslint/utils': 5.47.0_lzzuuodtsqwxnvqeq4g4likcqa
  979 + debug: 4.3.4
  980 + eslint: 8.30.0
  981 + tsutils: 3.21.0_typescript@4.9.4
  982 + typescript: 4.9.4
  983 + transitivePeerDependencies:
  984 + - supports-color
  985 + dev: true
  986 +
  987 + /@typescript-eslint/types/5.47.0:
  988 + resolution: {integrity: sha512-eslFG0Qy8wpGzDdYKu58CEr3WLkjwC5Usa6XbuV89ce/yN5RITLe1O8e+WFEuxnfftHiJImkkOBADj58ahRxSg==}
  989 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  990 + dev: true
  991 +
  992 + /@typescript-eslint/typescript-estree/5.47.0_typescript@4.9.4:
  993 + resolution: {integrity: sha512-LxfKCG4bsRGq60Sqqu+34QT5qT2TEAHvSCCJ321uBWywgE2dS0LKcu5u+3sMGo+Vy9UmLOhdTw5JHzePV/1y4Q==}
  994 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  995 + peerDependencies:
  996 + typescript: '*'
  997 + peerDependenciesMeta:
  998 + typescript:
  999 + optional: true
  1000 + dependencies:
  1001 + '@typescript-eslint/types': 5.47.0
  1002 + '@typescript-eslint/visitor-keys': 5.47.0
  1003 + debug: 4.3.4
  1004 + globby: 11.1.0
  1005 + is-glob: 4.0.3
  1006 + semver: 7.3.8
  1007 + tsutils: 3.21.0_typescript@4.9.4
  1008 + typescript: 4.9.4
  1009 + transitivePeerDependencies:
  1010 + - supports-color
  1011 + dev: true
  1012 +
  1013 + /@typescript-eslint/utils/5.47.0_lzzuuodtsqwxnvqeq4g4likcqa:
  1014 + resolution: {integrity: sha512-U9xcc0N7xINrCdGVPwABjbAKqx4GK67xuMV87toI+HUqgXj26m6RBp9UshEXcTrgCkdGYFzgKLt8kxu49RilDw==}
  1015 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  1016 + peerDependencies:
  1017 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
  1018 + dependencies:
  1019 + '@types/json-schema': 7.0.11
  1020 + '@types/semver': 7.3.13
  1021 + '@typescript-eslint/scope-manager': 5.47.0
  1022 + '@typescript-eslint/types': 5.47.0
  1023 + '@typescript-eslint/typescript-estree': 5.47.0_typescript@4.9.4
  1024 + eslint: 8.30.0
  1025 + eslint-scope: 5.1.1
  1026 + eslint-utils: 3.0.0_eslint@8.30.0
  1027 + semver: 7.3.8
  1028 + transitivePeerDependencies:
  1029 + - supports-color
  1030 + - typescript
  1031 + dev: true
  1032 +
  1033 + /@typescript-eslint/visitor-keys/5.47.0:
  1034 + resolution: {integrity: sha512-ByPi5iMa6QqDXe/GmT/hR6MZtVPi0SqMQPDx15FczCBXJo/7M8T88xReOALAfpBLm+zxpPfmhuEvPb577JRAEg==}
  1035 + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
  1036 + dependencies:
  1037 + '@typescript-eslint/types': 5.47.0
  1038 + eslint-visitor-keys: 3.3.0
  1039 + dev: true
  1040 +
903 1041 /@uppy/companion-client/2.2.2:
904 1042 resolution: {integrity: sha512-5mTp2iq97/mYSisMaBtFRry6PTgZA6SIL7LePteOV5x0/DxKfrZW3DEiQERJmYpHzy7k8johpm2gHnEKto56Og==}
905 1043 dependencies:
... ... @@ -987,7 +1125,7 @@ packages:
987 1125 '@babel/parser': registry.npmmirror.com/@babel/parser/7.20.5
988 1126 '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
989 1127 estree-walker: registry.npmmirror.com/estree-walker/2.0.2
990   - source-map: registry.npmmirror.com/source-map/0.6.1
  1128 + source-map: 0.6.1
991 1129  
992 1130 /@vue/compiler-dom/3.2.45:
993 1131 resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==}
... ... @@ -1914,7 +2052,7 @@ packages:
1914 2052 engines: {node: '>=8.0.0'}
1915 2053 dependencies:
1916 2054 mdn-data: 2.0.14
1917   - source-map: registry.npmmirror.com/source-map/0.6.1
  2055 + source-map: 0.6.1
1918 2056 dev: true
1919 2057  
1920 2058 /css-what/6.1.0:
... ... @@ -1966,7 +2104,7 @@ packages:
1966 2104 supports-color:
1967 2105 optional: true
1968 2106 dependencies:
1969   - ms: registry.npmmirror.com/ms/2.0.0
  2107 + ms: 2.0.0
1970 2108 dev: true
1971 2109  
1972 2110 /debug/4.3.4:
... ... @@ -2042,7 +2180,7 @@ packages:
2042 2180 resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
2043 2181 engines: {node: '>=8'}
2044 2182 dependencies:
2045   - path-type: registry.npmmirror.com/path-type/4.0.0
  2183 + path-type: 4.0.0
2046 2184 dev: true
2047 2185  
2048 2186 /doctrine/3.0.0:
... ... @@ -2357,6 +2495,14 @@ packages:
2357 2495 - supports-color
2358 2496 dev: true
2359 2497  
  2498 + /eslint-scope/5.1.1:
  2499 + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
  2500 + engines: {node: '>=8.0.0'}
  2501 + dependencies:
  2502 + esrecurse: 4.3.0
  2503 + estraverse: 4.3.0
  2504 + dev: true
  2505 +
2360 2506 /eslint-scope/7.1.1:
2361 2507 resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==}
2362 2508 engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
... ... @@ -2477,6 +2623,11 @@ packages:
2477 2623 estraverse: 5.3.0
2478 2624 dev: true
2479 2625  
  2626 + /estraverse/4.3.0:
  2627 + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
  2628 + engines: {node: '>=4.0'}
  2629 + dev: true
  2630 +
2480 2631 /estraverse/5.3.0:
2481 2632 resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
2482 2633 engines: {node: '>=4.0'}
... ... @@ -2823,7 +2974,7 @@ packages:
2823 2974 array-union: 2.1.0
2824 2975 dir-glob: 3.0.1
2825 2976 fast-glob: 3.2.12
2826   - ignore: registry.npmmirror.com/ignore/5.2.1
  2977 + ignore: 5.2.1
2827 2978 merge2: 1.4.1
2828 2979 slash: 3.0.0
2829 2980 dev: true
... ... @@ -3255,6 +3406,19 @@ packages:
3255 3406 resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
3256 3407 dev: true
3257 3408  
  3409 + /json5/1.0.1:
  3410 + resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==}
  3411 + hasBin: true
  3412 + dependencies:
  3413 + minimist: 1.2.7
  3414 + dev: true
  3415 +
  3416 + /json5/2.2.1:
  3417 + resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
  3418 + engines: {node: '>=6'}
  3419 + hasBin: true
  3420 + dev: true
  3421 +
3258 3422 /jsonc-eslint-parser/1.4.1:
3259 3423 resolution: {integrity: sha512-hXBrvsR1rdjmB2kQmUjf1rEIa+TqHBGMge8pwi++C+Si1ad7EjZrJcpgwym+QGK/pqTx+K7keFAtLlVNdLRJOg==}
3260 3424 engines: {node: '>=8.10.0'}
... ... @@ -3263,7 +3427,7 @@ packages:
3263 3427 eslint-utils: 2.1.0
3264 3428 eslint-visitor-keys: 1.3.0
3265 3429 espree: 6.2.1
3266   - semver: registry.npmmirror.com/semver/6.3.0
  3430 + semver: 6.3.0
3267 3431 dev: true
3268 3432  
3269 3433 /jsonfile/6.1.0:
... ... @@ -3372,7 +3536,7 @@ packages:
3372 3536 dependencies:
3373 3537 big.js: 5.2.2
3374 3538 emojis-list: 3.0.0
3375   - json5: registry.npmmirror.com/json5/1.0.1
  3539 + json5: 1.0.1
3376 3540 dev: true
3377 3541  
3378 3542 /locate-path/5.0.0:
... ... @@ -3692,6 +3856,10 @@ packages:
3692 3856 is-extendable: 1.0.1
3693 3857 dev: true
3694 3858  
  3859 + /ms/2.0.0:
  3860 + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
  3861 + dev: true
  3862 +
3695 3863 /ms/2.1.2:
3696 3864 resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
3697 3865 dev: true
... ... @@ -3728,6 +3896,10 @@ packages:
3728 3896 - supports-color
3729 3897 dev: true
3730 3898  
  3899 + /natural-compare-lite/1.4.0:
  3900 + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
  3901 + dev: true
  3902 +
3731 3903 /natural-compare/1.4.0:
3732 3904 resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
3733 3905 dev: true
... ... @@ -3752,7 +3924,7 @@ packages:
3752 3924 dependencies:
3753 3925 hosted-git-info: 2.8.9
3754 3926 resolve: 1.22.1
3755   - semver: registry.npmmirror.com/semver/5.7.1
  3927 + semver: 5.7.1
3756 3928 validate-npm-package-license: 3.0.4
3757 3929 dev: true
3758 3930  
... ... @@ -3983,6 +4155,10 @@ packages:
3983 4155 resolution: {integrity: sha512-6Y6s0vT112P3jD8dGfuS6r+lpa0qqNrLyHPOwvXMnyNTQaYiwgau2DP3aNDsR13xqtGj7rrPo+jFUATpU6/s+g==}
3984 4156 dev: true
3985 4157  
  4158 + /pathe/1.0.0:
  4159 + resolution: {integrity: sha512-nPdMG0Pd09HuSsr7QOKUXO2Jr9eqaDiZvDwdyIhNG5SHYujkQHYKDfGQkulBxvbDHz8oHLsTgKN86LSwYzSHAg==}
  4160 + dev: true
  4161 +
3986 4162 /picocolors/1.0.0:
3987 4163 resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
3988 4164 dev: true
... ... @@ -4398,8 +4574,8 @@ packages:
4398 4574 ret: 0.1.15
4399 4575 dev: true
4400 4576  
4401   - /sass/1.57.0:
4402   - resolution: {integrity: sha512-IZNEJDTK1cF5B1cGA593TPAV/1S0ysUDxq9XHjX/+SMy0QfUny+nfUsq5ZP7wWSl4eEf7wDJcEZ8ABYFmh3m/w==}
  4577 + /sass/1.57.1:
  4578 + resolution: {integrity: sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==}
4403 4579 engines: {node: '>=12.0.0'}
4404 4580 hasBin: true
4405 4581 dependencies:
... ... @@ -4414,6 +4590,16 @@ packages:
4414 4590 compute-scroll-into-view: 1.0.17
4415 4591 dev: false
4416 4592  
  4593 + /semver/5.7.1:
  4594 + resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
  4595 + hasBin: true
  4596 + dev: true
  4597 +
  4598 + /semver/6.3.0:
  4599 + resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
  4600 + hasBin: true
  4601 + dev: true
  4602 +
4417 4603 /semver/7.3.8:
4418 4604 resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==}
4419 4605 engines: {node: '>=10'}
... ... @@ -4553,7 +4739,7 @@ packages:
4553 4739 define-property: 0.2.5
4554 4740 extend-shallow: 2.0.1
4555 4741 map-cache: 0.2.2
4556   - source-map: registry.npmmirror.com/source-map/0.5.7
  4742 + source-map: 0.5.7
4557 4743 source-map-resolve: 0.5.3
4558 4744 use: 3.1.1
4559 4745 transitivePeerDependencies:
... ... @@ -4588,6 +4774,11 @@ packages:
4588 4774 deprecated: See https://github.com/lydell/source-map-url#deprecated
4589 4775 dev: true
4590 4776  
  4777 + /source-map/0.5.7:
  4778 + resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==}
  4779 + engines: {node: '>=0.10.0'}
  4780 + dev: true
  4781 +
4591 4782 /source-map/0.6.1:
4592 4783 resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
4593 4784 engines: {node: '>=0.10.0'}
... ... @@ -4982,10 +5173,24 @@ packages:
4982 5173 yn: 3.1.1
4983 5174 dev: true
4984 5175  
  5176 + /tslib/1.14.1:
  5177 + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
  5178 + dev: true
  5179 +
4985 5180 /tslib/2.4.1:
4986 5181 resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==}
4987 5182 dev: true
4988 5183  
  5184 + /tsutils/3.21.0_typescript@4.9.4:
  5185 + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
  5186 + engines: {node: '>= 6'}
  5187 + peerDependencies:
  5188 + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
  5189 + dependencies:
  5190 + tslib: 1.14.1
  5191 + typescript: 4.9.4
  5192 + dev: true
  5193 +
4989 5194 /type-check/0.4.0:
4990 5195 resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
4991 5196 engines: {node: '>= 0.8.0'}
... ... @@ -5046,6 +5251,15 @@ packages:
5046 5251 engines: {node: '>= 10.0.0'}
5047 5252 dev: true
5048 5253  
  5254 + /unplugin/1.0.1:
  5255 + resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
  5256 + dependencies:
  5257 + acorn: 8.8.1
  5258 + chokidar: 3.5.3
  5259 + webpack-sources: 3.2.3
  5260 + webpack-virtual-modules: 0.5.0
  5261 + dev: true
  5262 +
5049 5263 /unset-value/1.0.0:
5050 5264 resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==}
5051 5265 engines: {node: '>=0.10.0'}
... ... @@ -5132,7 +5346,7 @@ packages:
5132 5346 chalk: 4.1.2
5133 5347 debug: 4.3.4
5134 5348 fs-extra: 10.1.0
5135   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5349 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5136 5350 transitivePeerDependencies:
5137 5351 - supports-color
5138 5352 dev: true
... ... @@ -5153,7 +5367,7 @@ packages:
5153 5367 '@types/eslint': 8.4.10
5154 5368 eslint: 8.30.0
5155 5369 rollup: 2.79.1
5156   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5370 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5157 5371 dev: true
5158 5372  
5159 5373 /vite-plugin-progress/0.0.6_vite@4.0.2:
... ... @@ -5165,7 +5379,7 @@ packages:
5165 5379 picocolors: 1.0.0
5166 5380 progress: 2.0.3
5167 5381 rd: 2.0.1
5168   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5382 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5169 5383 dev: true
5170 5384  
5171 5385 /vite-plugin-style-import/2.0.0_vite@4.0.2:
... ... @@ -5180,7 +5394,7 @@ packages:
5180 5394 fs-extra: 10.1.0
5181 5395 magic-string: 0.25.9
5182 5396 pathe: 0.2.0
5183   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5397 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5184 5398 dev: true
5185 5399  
5186 5400 /vite-plugin-svg-icons/2.0.1_vite@4.0.2:
... ... @@ -5196,7 +5410,7 @@ packages:
5196 5410 pathe: 0.2.0
5197 5411 svg-baker: 1.7.0
5198 5412 svgo: 2.8.0
5199   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5413 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5200 5414 transitivePeerDependencies:
5201 5415 - supports-color
5202 5416 dev: true
... ... @@ -5208,10 +5422,10 @@ packages:
5208 5422 dependencies:
5209 5423 '@vue/compiler-sfc': 3.2.45
5210 5424 magic-string: 0.25.9
5211   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  5425 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
5212 5426 dev: true
5213 5427  
5214   - /vite/4.0.2_qllbiz65uv43o3e5m5uhyo643e:
  5428 + /vite/4.0.2_amyfslv6hdwxqbf7f4ldebbtce:
5215 5429 resolution: {integrity: sha512-QJaY3R+tFlTagH0exVqbgkkw45B+/bXVBzF2ZD1KB5Z8RiAoiKo60vSUf6/r4c2Vh9jfGBKM4oBI9b4/1ZJYng==}
5216 5430 engines: {node: ^14.18.0 || >=16.0.0}
5217 5431 hasBin: true
... ... @@ -5241,7 +5455,7 @@ packages:
5241 5455 postcss: 8.4.20
5242 5456 resolve: 1.22.1
5243 5457 rollup: 3.7.5
5244   - sass: 1.57.0
  5458 + sass: 1.57.1
5245 5459 terser: 5.16.1
5246 5460 optionalDependencies:
5247 5461 fsevents: 2.3.2
... ... @@ -5349,6 +5563,15 @@ packages:
5349 5563 resolution: {integrity: sha512-D0MieGooOs8RpsrK+vnejXnvh4OOv/+lTFB35JRkJJQt+uOjPE08XpaE0QBLMTRu47B1KGT/Nq3Gbag3Orinzw==}
5350 5564 dev: false
5351 5565  
  5566 + /webpack-sources/3.2.3:
  5567 + resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
  5568 + engines: {node: '>=10.13.0'}
  5569 + dev: true
  5570 +
  5571 + /webpack-virtual-modules/0.5.0:
  5572 + resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
  5573 + dev: true
  5574 +
5352 5575 /which-module/2.0.0:
5353 5576 resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==}
5354 5577 dev: false
... ... @@ -5559,7 +5782,7 @@ packages:
5559 5782 '@babel/traverse': registry.npmmirror.com/@babel/traverse/7.20.5
5560 5783 '@babel/types': registry.npmmirror.com/@babel/types/7.20.5
5561 5784 convert-source-map: registry.npmmirror.com/convert-source-map/1.9.0
5562   - debug: registry.npmmirror.com/debug/4.3.4
  5785 + debug: 4.3.4
5563 5786 gensync: registry.npmmirror.com/gensync/1.0.0-beta.2
5564 5787 json5: registry.npmmirror.com/json5/2.2.1
5565 5788 semver: registry.npmmirror.com/semver/6.3.0
... ... @@ -6000,7 +6223,7 @@ packages:
6000 6223 dependencies:
6001 6224 '@iconify/iconify': registry.npmmirror.com/@iconify/iconify/2.1.2
6002 6225 axios: registry.npmmirror.com/axios/0.26.1_debug@4.3.4
6003   - debug: registry.npmmirror.com/debug/4.3.4
  6226 + debug: 4.3.4
6004 6227 fast-glob: registry.npmmirror.com/fast-glob/3.2.12
6005 6228 fs-extra: registry.npmmirror.com/fs-extra/10.1.0
6006 6229 transitivePeerDependencies:
... ... @@ -6016,168 +6239,6 @@ packages:
6016 6239 '@iconify/iconify': registry.npmmirror.com/@iconify/iconify/3.0.1
6017 6240 dev: true
6018 6241  
6019   - registry.npmmirror.com/@types/json-schema/7.0.11:
6020   - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.11.tgz}
6021   - name: '@types/json-schema'
6022   - version: 7.0.11
6023   - dev: true
6024   -
6025   - registry.npmmirror.com/@types/semver/7.3.13:
6026   - resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/semver/-/semver-7.3.13.tgz}
6027   - name: '@types/semver'
6028   - version: 7.3.13
6029   - dev: true
6030   -
6031   - registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.46.1_mqzxmroayievgzgel6yrqgih5i:
6032   - resolution: {integrity: sha512-YpzNv3aayRBwjs4J3oz65eVLXc9xx0PDbIRisHj+dYhvBn02MjYOD96P8YGiWEIFBrojaUjxvkaUpakD82phsA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.46.1.tgz}
6033   - id: registry.npmmirror.com/@typescript-eslint/eslint-plugin/5.46.1
6034   - name: '@typescript-eslint/eslint-plugin'
6035   - version: 5.46.1
6036   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6037   - peerDependencies:
6038   - '@typescript-eslint/parser': ^5.0.0
6039   - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
6040   - typescript: '*'
6041   - peerDependenciesMeta:
6042   - typescript:
6043   - optional: true
6044   - dependencies:
6045   - '@typescript-eslint/parser': registry.npmmirror.com/@typescript-eslint/parser/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa
6046   - '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.46.1
6047   - '@typescript-eslint/type-utils': registry.npmmirror.com/@typescript-eslint/type-utils/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa
6048   - '@typescript-eslint/utils': registry.npmmirror.com/@typescript-eslint/utils/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa
6049   - debug: registry.npmmirror.com/debug/4.3.4
6050   - eslint: 8.30.0
6051   - ignore: registry.npmmirror.com/ignore/5.2.1
6052   - natural-compare-lite: registry.npmmirror.com/natural-compare-lite/1.4.0
6053   - regexpp: registry.npmmirror.com/regexpp/3.2.0
6054   - semver: registry.npmmirror.com/semver/7.3.8
6055   - tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.9.4
6056   - typescript: 4.9.4
6057   - transitivePeerDependencies:
6058   - - supports-color
6059   - dev: true
6060   -
6061   - registry.npmmirror.com/@typescript-eslint/parser/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa:
6062   - resolution: {integrity: sha512-RelQ5cGypPh4ySAtfIMBzBGyrNerQcmfA1oJvPj5f+H4jI59rl9xxpn4bonC0tQvUKOEN7eGBFWxFLK3Xepneg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-5.46.1.tgz}
6063   - id: registry.npmmirror.com/@typescript-eslint/parser/5.46.1
6064   - name: '@typescript-eslint/parser'
6065   - version: 5.46.1
6066   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6067   - peerDependencies:
6068   - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
6069   - typescript: '*'
6070   - peerDependenciesMeta:
6071   - typescript:
6072   - optional: true
6073   - dependencies:
6074   - '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.46.1
6075   - '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.46.1
6076   - '@typescript-eslint/typescript-estree': registry.npmmirror.com/@typescript-eslint/typescript-estree/5.46.1_typescript@4.9.4
6077   - debug: registry.npmmirror.com/debug/4.3.4
6078   - eslint: 8.30.0
6079   - typescript: 4.9.4
6080   - transitivePeerDependencies:
6081   - - supports-color
6082   - dev: true
6083   -
6084   - registry.npmmirror.com/@typescript-eslint/scope-manager/5.46.1:
6085   - resolution: {integrity: sha512-iOChVivo4jpwUdrJZyXSMrEIM/PvsbbDOX1y3UCKjSgWn+W89skxWaYXACQfxmIGhPVpRWK/VWPYc+bad6smIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-5.46.1.tgz}
6086   - name: '@typescript-eslint/scope-manager'
6087   - version: 5.46.1
6088   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6089   - dependencies:
6090   - '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.46.1
6091   - '@typescript-eslint/visitor-keys': registry.npmmirror.com/@typescript-eslint/visitor-keys/5.46.1
6092   - dev: true
6093   -
6094   - registry.npmmirror.com/@typescript-eslint/type-utils/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa:
6095   - resolution: {integrity: sha512-V/zMyfI+jDmL1ADxfDxjZ0EMbtiVqj8LUGPAGyBkXXStWmCUErMpW873zEHsyguWCuq2iN4BrlWUkmuVj84yng==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-5.46.1.tgz}
6096   - id: registry.npmmirror.com/@typescript-eslint/type-utils/5.46.1
6097   - name: '@typescript-eslint/type-utils'
6098   - version: 5.46.1
6099   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6100   - peerDependencies:
6101   - eslint: '*'
6102   - typescript: '*'
6103   - peerDependenciesMeta:
6104   - typescript:
6105   - optional: true
6106   - dependencies:
6107   - '@typescript-eslint/typescript-estree': registry.npmmirror.com/@typescript-eslint/typescript-estree/5.46.1_typescript@4.9.4
6108   - '@typescript-eslint/utils': registry.npmmirror.com/@typescript-eslint/utils/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa
6109   - debug: registry.npmmirror.com/debug/4.3.4
6110   - eslint: 8.30.0
6111   - tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.9.4
6112   - typescript: 4.9.4
6113   - transitivePeerDependencies:
6114   - - supports-color
6115   - dev: true
6116   -
6117   - registry.npmmirror.com/@typescript-eslint/types/5.46.1:
6118   - resolution: {integrity: sha512-Z5pvlCaZgU+93ryiYUwGwLl9AQVB/PQ1TsJ9NZ/gHzZjN7g9IAn6RSDkpCV8hqTwAiaj6fmCcKSQeBPlIpW28w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/types/-/types-5.46.1.tgz}
6119   - name: '@typescript-eslint/types'
6120   - version: 5.46.1
6121   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6122   - dev: true
6123   -
6124   - registry.npmmirror.com/@typescript-eslint/typescript-estree/5.46.1_typescript@4.9.4:
6125   - resolution: {integrity: sha512-j9W4t67QiNp90kh5Nbr1w92wzt+toiIsaVPnEblB2Ih2U9fqBTyqV9T3pYWZBRt6QoMh/zVWP59EpuCjc4VRBg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.46.1.tgz}
6126   - id: registry.npmmirror.com/@typescript-eslint/typescript-estree/5.46.1
6127   - name: '@typescript-eslint/typescript-estree'
6128   - version: 5.46.1
6129   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6130   - peerDependencies:
6131   - typescript: '*'
6132   - peerDependenciesMeta:
6133   - typescript:
6134   - optional: true
6135   - dependencies:
6136   - '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.46.1
6137   - '@typescript-eslint/visitor-keys': registry.npmmirror.com/@typescript-eslint/visitor-keys/5.46.1
6138   - debug: registry.npmmirror.com/debug/4.3.4
6139   - globby: registry.npmmirror.com/globby/11.1.0
6140   - is-glob: registry.npmmirror.com/is-glob/4.0.3
6141   - semver: registry.npmmirror.com/semver/7.3.8
6142   - tsutils: registry.npmmirror.com/tsutils/3.21.0_typescript@4.9.4
6143   - typescript: 4.9.4
6144   - transitivePeerDependencies:
6145   - - supports-color
6146   - dev: true
6147   -
6148   - registry.npmmirror.com/@typescript-eslint/utils/5.46.1_lzzuuodtsqwxnvqeq4g4likcqa:
6149   - resolution: {integrity: sha512-RBdBAGv3oEpFojaCYT4Ghn4775pdjvwfDOfQ2P6qzNVgQOVrnSPe5/Pb88kv7xzYQjoio0eKHKB9GJ16ieSxvA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-5.46.1.tgz}
6150   - id: registry.npmmirror.com/@typescript-eslint/utils/5.46.1
6151   - name: '@typescript-eslint/utils'
6152   - version: 5.46.1
6153   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6154   - peerDependencies:
6155   - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
6156   - dependencies:
6157   - '@types/json-schema': registry.npmmirror.com/@types/json-schema/7.0.11
6158   - '@types/semver': registry.npmmirror.com/@types/semver/7.3.13
6159   - '@typescript-eslint/scope-manager': registry.npmmirror.com/@typescript-eslint/scope-manager/5.46.1
6160   - '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.46.1
6161   - '@typescript-eslint/typescript-estree': registry.npmmirror.com/@typescript-eslint/typescript-estree/5.46.1_typescript@4.9.4
6162   - eslint: 8.30.0
6163   - eslint-scope: registry.npmmirror.com/eslint-scope/5.1.1
6164   - eslint-utils: registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.30.0
6165   - semver: registry.npmmirror.com/semver/7.3.8
6166   - transitivePeerDependencies:
6167   - - supports-color
6168   - - typescript
6169   - dev: true
6170   -
6171   - registry.npmmirror.com/@typescript-eslint/visitor-keys/5.46.1:
6172   - resolution: {integrity: sha512-jczZ9noovXwy59KjRTk1OftT78pwygdcmCuBf8yMoWt/8O8l+6x2LSEze0E4TeepXK4MezW3zGSyoDRZK7Y9cg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.46.1.tgz}
6173   - name: '@typescript-eslint/visitor-keys'
6174   - version: 5.46.1
6175   - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
6176   - dependencies:
6177   - '@typescript-eslint/types': registry.npmmirror.com/@typescript-eslint/types/5.46.1
6178   - eslint-visitor-keys: 3.3.0
6179   - dev: true
6180   -
6181 6242 registry.npmmirror.com/@vitejs/plugin-legacy/3.0.1_terser@5.16.1+vite@4.0.2:
6182 6243 resolution: {integrity: sha512-XCtEjxoR3rmy000ujYRBp5kggWqzHz9+F20/yIMUWOzbvu0+KW1e14Fvb8h7SpNn+bfjGW1RiAs1Vrgb7Js+iQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vitejs/plugin-legacy/-/plugin-legacy-3.0.1.tgz}
6183 6244 id: registry.npmmirror.com/@vitejs/plugin-legacy/3.0.1
... ... @@ -6194,7 +6255,7 @@ packages:
6194 6255 regenerator-runtime: registry.npmmirror.com/regenerator-runtime/0.13.11
6195 6256 systemjs: registry.npmmirror.com/systemjs/6.13.0
6196 6257 terser: 5.16.1
6197   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  6258 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
6198 6259 dev: true
6199 6260  
6200 6261 registry.npmmirror.com/@vitejs/plugin-vue-jsx/3.0.0_vite@4.0.2+vue@3.2.45:
... ... @@ -6210,7 +6271,7 @@ packages:
6210 6271 '@babel/core': registry.npmmirror.com/@babel/core/7.20.5
6211 6272 '@babel/plugin-transform-typescript': registry.npmmirror.com/@babel/plugin-transform-typescript/7.20.2_@babel+core@7.20.5
6212 6273 '@vue/babel-plugin-jsx': registry.npmmirror.com/@vue/babel-plugin-jsx/1.1.1_@babel+core@7.20.5
6213   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  6274 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
6214 6275 vue: 3.2.45
6215 6276 transitivePeerDependencies:
6216 6277 - supports-color
... ... @@ -6226,7 +6287,7 @@ packages:
6226 6287 vite: ^4.0.0
6227 6288 vue: ^3.2.25
6228 6289 dependencies:
6229   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  6290 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
6230 6291 vue: 3.2.45
6231 6292 dev: true
6232 6293  
... ... @@ -6264,7 +6325,7 @@ packages:
6264 6325 '@babel/parser': registry.npmmirror.com/@babel/parser/7.20.5
6265 6326 '@vue/shared': registry.npmmirror.com/@vue/shared/3.2.45
6266 6327 estree-walker: registry.npmmirror.com/estree-walker/2.0.2
6267   - source-map: registry.npmmirror.com/source-map/0.6.1
  6328 + source-map: 0.6.1
6268 6329  
6269 6330 registry.npmmirror.com/@vue/compiler-dom/3.2.45:
6270 6331 resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz}
... ... @@ -6311,7 +6372,7 @@ packages:
6311 6372 dependencies:
6312 6373 '@antfu/utils': registry.npmmirror.com/@antfu/utils/0.7.2
6313 6374 '@windicss/config': registry.npmmirror.com/@windicss/config/1.8.10
6314   - debug: registry.npmmirror.com/debug/4.3.4
  6375 + debug: 4.3.4
6315 6376 fast-glob: registry.npmmirror.com/fast-glob/3.2.12
6316 6377 magic-string: registry.npmmirror.com/magic-string/0.27.0
6317 6378 micromatch: registry.npmmirror.com/micromatch/4.0.5
... ... @@ -6344,13 +6405,6 @@ packages:
6344 6405 dependencies:
6345 6406 color-convert: registry.npmmirror.com/color-convert/2.0.1
6346 6407  
6347   - registry.npmmirror.com/array-union/2.1.0:
6348   - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz}
6349   - name: array-union
6350   - version: 2.1.0
6351   - engines: {node: '>=8'}
6352   - dev: true
6353   -
6354 6408 registry.npmmirror.com/axios/0.26.1_debug@4.3.4:
6355 6409 resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/axios/-/axios-0.26.1.tgz}
6356 6410 id: registry.npmmirror.com/axios/0.26.1
... ... @@ -6487,15 +6541,6 @@ packages:
6487 6541 ms: registry.npmmirror.com/ms/2.1.2
6488 6542 dev: true
6489 6543  
6490   - registry.npmmirror.com/dir-glob/3.0.1:
6491   - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz}
6492   - name: dir-glob
6493   - version: 3.0.1
6494   - engines: {node: '>=8'}
6495   - dependencies:
6496   - path-type: registry.npmmirror.com/path-type/4.0.0
6497   - dev: true
6498   -
6499 6544 registry.npmmirror.com/echarts/5.4.1:
6500 6545 resolution: {integrity: sha512-9ltS3M2JB0w2EhcYjCdmtrJ+6haZcW6acBolMGIuf01Hql1yrIV01L1aRj7jsaaIULJslEP9Z3vKlEmnJaWJVQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/echarts/-/echarts-5.4.1.tgz}
6501 6546 name: echarts
... ... @@ -6518,52 +6563,6 @@ packages:
6518 6563 engines: {node: '>=6'}
6519 6564 dev: true
6520 6565  
6521   - registry.npmmirror.com/eslint-scope/5.1.1:
6522   - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz}
6523   - name: eslint-scope
6524   - version: 5.1.1
6525   - engines: {node: '>=8.0.0'}
6526   - dependencies:
6527   - esrecurse: registry.npmmirror.com/esrecurse/4.3.0
6528   - estraverse: registry.npmmirror.com/estraverse/4.3.0
6529   - dev: true
6530   -
6531   - registry.npmmirror.com/eslint-utils/3.0.0_eslint@8.30.0:
6532   - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz}
6533   - id: registry.npmmirror.com/eslint-utils/3.0.0
6534   - name: eslint-utils
6535   - version: 3.0.0
6536   - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
6537   - peerDependencies:
6538   - eslint: '>=5'
6539   - dependencies:
6540   - eslint: 8.30.0
6541   - eslint-visitor-keys: 2.1.0
6542   - dev: true
6543   -
6544   - registry.npmmirror.com/esrecurse/4.3.0:
6545   - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz}
6546   - name: esrecurse
6547   - version: 4.3.0
6548   - engines: {node: '>=4.0'}
6549   - dependencies:
6550   - estraverse: registry.npmmirror.com/estraverse/5.3.0
6551   - dev: true
6552   -
6553   - registry.npmmirror.com/estraverse/4.3.0:
6554   - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz}
6555   - name: estraverse
6556   - version: 4.3.0
6557   - engines: {node: '>=4.0'}
6558   - dev: true
6559   -
6560   - registry.npmmirror.com/estraverse/5.3.0:
6561   - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz}
6562   - name: estraverse
6563   - version: 5.3.0
6564   - engines: {node: '>=4.0'}
6565   - dev: true
6566   -
6567 6566 registry.npmmirror.com/estree-walker/2.0.2:
6568 6567 resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz}
6569 6568 name: estree-walker
... ... @@ -6615,7 +6614,7 @@ packages:
6615 6614 debug:
6616 6615 optional: true
6617 6616 dependencies:
6618   - debug: registry.npmmirror.com/debug/4.3.4
  6617 + debug: 4.3.4
6619 6618 dev: true
6620 6619  
6621 6620 registry.npmmirror.com/fs-extra/10.1.0:
... ... @@ -6641,20 +6640,6 @@ packages:
6641 6640 engines: {node: '>=6.9.0'}
6642 6641 dev: true
6643 6642  
6644   - registry.npmmirror.com/globby/11.1.0:
6645   - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz}
6646   - name: globby
6647   - version: 11.1.0
6648   - engines: {node: '>=10'}
6649   - dependencies:
6650   - array-union: registry.npmmirror.com/array-union/2.1.0
6651   - dir-glob: registry.npmmirror.com/dir-glob/3.0.1
6652   - fast-glob: registry.npmmirror.com/fast-glob/3.2.12
6653   - ignore: 5.2.1
6654   - merge2: registry.npmmirror.com/merge2/1.4.1
6655   - slash: registry.npmmirror.com/slash/3.0.0
6656   - dev: true
6657   -
6658 6643 registry.npmmirror.com/graceful-fs/4.2.10:
6659 6644 resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz}
6660 6645 name: graceful-fs
... ... @@ -6690,13 +6675,6 @@ packages:
6690 6675 engines: {node: '>=8'}
6691 6676 dev: true
6692 6677  
6693   - registry.npmmirror.com/ignore/5.2.1:
6694   - resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ignore/-/ignore-5.2.1.tgz}
6695   - name: ignore
6696   - version: 5.2.1
6697   - engines: {node: '>= 4'}
6698   - dev: true
6699   -
6700 6678 registry.npmmirror.com/is-core-module/2.11.0:
6701 6679 resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz}
6702 6680 name: is-core-module
... ... @@ -6705,22 +6683,6 @@ packages:
6705 6683 has: registry.npmmirror.com/has/1.0.3
6706 6684 dev: true
6707 6685  
6708   - registry.npmmirror.com/is-extglob/2.1.1:
6709   - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz}
6710   - name: is-extglob
6711   - version: 2.1.1
6712   - engines: {node: '>=0.10.0'}
6713   - dev: true
6714   -
6715   - registry.npmmirror.com/is-glob/4.0.3:
6716   - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz}
6717   - name: is-glob
6718   - version: 4.0.3
6719   - engines: {node: '>=0.10.0'}
6720   - dependencies:
6721   - is-extglob: registry.npmmirror.com/is-extglob/2.1.1
6722   - dev: true
6723   -
6724 6686 registry.npmmirror.com/is-number/3.0.0:
6725 6687 resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/is-number/-/is-number-3.0.0.tgz}
6726 6688 name: is-number
... ... @@ -6758,15 +6720,6 @@ packages:
6758 6720 hasBin: true
6759 6721 dev: true
6760 6722  
6761   - registry.npmmirror.com/json5/1.0.1:
6762   - resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json5/-/json5-1.0.1.tgz}
6763   - name: json5
6764   - version: 1.0.1
6765   - hasBin: true
6766   - dependencies:
6767   - minimist: 1.2.7
6768   - dev: true
6769   -
6770 6723 registry.npmmirror.com/json5/2.2.1:
6771 6724 resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/json5/-/json5-2.2.1.tgz}
6772 6725 name: json5
... ... @@ -6833,12 +6786,6 @@ packages:
6833 6786 picomatch: registry.npmmirror.com/picomatch/2.3.1
6834 6787 dev: true
6835 6788  
6836   - registry.npmmirror.com/ms/2.0.0:
6837   - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz}
6838   - name: ms
6839   - version: 2.0.0
6840   - dev: true
6841   -
6842 6789 registry.npmmirror.com/ms/2.1.2:
6843 6790 resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz}
6844 6791 name: ms
... ... @@ -6852,12 +6799,6 @@ packages:
6852 6799 engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
6853 6800 hasBin: true
6854 6801  
6855   - registry.npmmirror.com/natural-compare-lite/1.4.0:
6856   - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz}
6857   - name: natural-compare-lite
6858   - version: 1.4.0
6859   - dev: true
6860   -
6861 6802 registry.npmmirror.com/node-fetch/2.6.7:
6862 6803 resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/node-fetch/-/node-fetch-2.6.7.tgz}
6863 6804 name: node-fetch
... ... @@ -6878,13 +6819,6 @@ packages:
6878 6819 version: 2.0.6
6879 6820 dev: true
6880 6821  
6881   - registry.npmmirror.com/path-type/4.0.0:
6882   - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz}
6883   - name: path-type
6884   - version: 4.0.0
6885   - engines: {node: '>=8'}
6886   - dev: true
6887   -
6888 6822 registry.npmmirror.com/picocolors/1.0.0:
6889 6823 resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz}
6890 6824 name: picocolors
... ... @@ -6926,7 +6860,7 @@ packages:
6926 6860 dependencies:
6927 6861 chalk: 1.1.3
6928 6862 js-base64: 2.6.4
6929   - source-map: registry.npmmirror.com/source-map/0.5.7
  6863 + source-map: 0.5.7
6930 6864 supports-color: registry.npmmirror.com/supports-color/3.2.3
6931 6865 dev: true
6932 6866  
... ... @@ -6945,13 +6879,6 @@ packages:
6945 6879 name: regenerator-runtime
6946 6880 version: 0.13.11
6947 6881  
6948   - registry.npmmirror.com/regexpp/3.2.0:
6949   - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz}
6950   - name: regexpp
6951   - version: 3.2.0
6952   - engines: {node: '>=8'}
6953   - dev: true
6954   -
6955 6882 registry.npmmirror.com/rollup-plugin-purge-icons/0.9.1:
6956 6883 resolution: {integrity: sha512-hRDKBsPUz47UMdBufki2feTmBF2ClEJlYqL7N6vpVAHSLd7V2BJUaNKOF7YYbLMofVVF+9hm44YSkYO6k9hUgg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/rollup-plugin-purge-icons/-/rollup-plugin-purge-icons-0.9.1.tgz}
6957 6884 name: rollup-plugin-purge-icons
... ... @@ -6965,13 +6892,6 @@ packages:
6965 6892 - supports-color
6966 6893 dev: true
6967 6894  
6968   - registry.npmmirror.com/semver/5.7.1:
6969   - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/semver/-/semver-5.7.1.tgz}
6970   - name: semver
6971   - version: 5.7.1
6972   - hasBin: true
6973   - dev: true
6974   -
6975 6895 registry.npmmirror.com/semver/6.3.0:
6976 6896 resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz}
6977 6897 name: semver
... ... @@ -6999,32 +6919,12 @@ packages:
6999 6919 lru-cache: registry.npmmirror.com/lru-cache/6.0.0
7000 6920 dev: true
7001 6921  
7002   - registry.npmmirror.com/slash/3.0.0:
7003   - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz}
7004   - name: slash
7005   - version: 3.0.0
7006   - engines: {node: '>=8'}
7007   - dev: true
7008   -
7009 6922 registry.npmmirror.com/source-map-js/1.0.2:
7010 6923 resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz}
7011 6924 name: source-map-js
7012 6925 version: 1.0.2
7013 6926 engines: {node: '>=0.10.0'}
7014 6927  
7015   - registry.npmmirror.com/source-map/0.5.7:
7016   - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz}
7017   - name: source-map
7018   - version: 0.5.7
7019   - engines: {node: '>=0.10.0'}
7020   - dev: true
7021   -
7022   - registry.npmmirror.com/source-map/0.6.1:
7023   - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz}
7024   - name: source-map
7025   - version: 0.6.1
7026   - engines: {node: '>=0.10.0'}
7027   -
7028 6928 registry.npmmirror.com/supports-color/2.0.0:
7029 6929 resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz}
7030 6930 name: supports-color
... ... @@ -7093,12 +6993,6 @@ packages:
7093 6993 version: 0.0.3
7094 6994 dev: true
7095 6995  
7096   - registry.npmmirror.com/tslib/1.14.1:
7097   - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-1.14.1.tgz}
7098   - name: tslib
7099   - version: 1.14.1
7100   - dev: true
7101   -
7102 6996 registry.npmmirror.com/tslib/2.3.0:
7103 6997 resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz}
7104 6998 name: tslib
... ... @@ -7111,19 +7005,6 @@ packages:
7111 7005 version: 2.4.1
7112 7006 dev: true
7113 7007  
7114   - registry.npmmirror.com/tsutils/3.21.0_typescript@4.9.4:
7115   - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/tsutils/-/tsutils-3.21.0.tgz}
7116   - id: registry.npmmirror.com/tsutils/3.21.0
7117   - name: tsutils
7118   - version: 3.21.0
7119   - engines: {node: '>= 6'}
7120   - peerDependencies:
7121   - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
7122   - dependencies:
7123   - tslib: registry.npmmirror.com/tslib/1.14.1
7124   - typescript: 4.9.4
7125   - dev: true
7126   -
7127 7008 registry.npmmirror.com/universalify/2.0.0:
7128 7009 resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz}
7129 7010 name: universalify
... ... @@ -7142,7 +7023,7 @@ packages:
7142 7023 dependencies:
7143 7024 browserslist: registry.npmmirror.com/browserslist/4.21.4
7144 7025 escalade: registry.npmmirror.com/escalade/3.1.1
7145   - picocolors: registry.npmmirror.com/picocolors/1.0.0
  7026 + picocolors: 1.0.0
7146 7027 dev: true
7147 7028  
7148 7029 registry.npmmirror.com/vite-plugin-purge-icons/0.9.2_vite@4.0.2:
... ... @@ -7157,7 +7038,7 @@ packages:
7157 7038 '@purge-icons/core': registry.npmmirror.com/@purge-icons/core/0.9.1
7158 7039 '@purge-icons/generated': registry.npmmirror.com/@purge-icons/generated/0.9.0
7159 7040 rollup-plugin-purge-icons: registry.npmmirror.com/rollup-plugin-purge-icons/0.9.1
7160   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  7041 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
7161 7042 transitivePeerDependencies:
7162 7043 - encoding
7163 7044 - supports-color
... ... @@ -7174,7 +7055,7 @@ packages:
7174 7055 '@windicss/plugin-utils': registry.npmmirror.com/@windicss/plugin-utils/1.8.10
7175 7056 debug: registry.npmmirror.com/debug/4.3.4
7176 7057 kolorist: registry.npmmirror.com/kolorist/1.6.0
7177   - vite: 4.0.2_qllbiz65uv43o3e5m5uhyo643e
  7058 + vite: 4.0.2_amyfslv6hdwxqbf7f4ldebbtce
7178 7059 windicss: registry.npmmirror.com/windicss/3.5.6
7179 7060 transitivePeerDependencies:
7180 7061 - supports-color
... ...
yudao-ui-admin-vue3/src/components/Form/src/componentMap.ts
... ... @@ -21,7 +21,7 @@ import {
21 21 } from 'element-plus'
22 22 import { InputPassword } from '@/components/InputPassword'
23 23 import { Editor } from '@/components/Editor'
24   -import { UploadImg, UploadFile } from '@/components/UploadFile'
  24 +import { UploadImg, UploadImgs, UploadFile } from '@/components/UploadFile'
25 25 import { ComponentName } from '@/types/components'
26 26  
27 27 const componentMap: Recordable<Component, ComponentName> = {
... ... @@ -48,6 +48,7 @@ const componentMap: Recordable&lt;Component, ComponentName&gt; = {
48 48 InputPassword: InputPassword,
49 49 Editor: Editor,
50 50 UploadImg: UploadImg,
  51 + UploadImgs: UploadImgs,
51 52 UploadFile: UploadFile
52 53 }
53 54  
... ...
yudao-ui-admin-vue3/src/components/UploadFile/index.ts
1 1 import UploadImg from './src/UploadImg.vue'
  2 +import UploadImgs from './src/UploadImgs.vue'
2 3 import UploadFile from './src/UploadFile.vue'
3 4  
4   -export { UploadImg, UploadFile }
  5 +export { UploadImg, UploadImgs, UploadFile }
... ...
yudao-ui-admin-vue3/src/components/UploadFile/src/UploadFile.vue
... ... @@ -32,8 +32,8 @@
32 32 </el-upload>
33 33 </div>
34 34 </template>
35   -<script setup lang="ts">
36   -import { ref, watch } from 'vue'
  35 +<script setup lang="ts" name="UploadFile">
  36 +import { PropType, ref } from 'vue'
37 37 import { useMessage } from '@/hooks/web/useMessage'
38 38 import { propTypes } from '@/utils/propTypes'
39 39 import { getAccessToken, getTenantId } from '@/utils/auth'
... ... @@ -43,7 +43,10 @@ const message = useMessage() // 消息弹窗
43 43 const emit = defineEmits(['update:modelValue'])
44 44  
45 45 const props = defineProps({
46   - modelValue: propTypes.oneOfType([String, Object, Array]),
  46 + modelValue: {
  47 + type: Array as PropType<UploadUserFile[]>,
  48 + required: true
  49 + },
47 50 title: propTypes.string.def('文件上传'),
48 51 updateUrl: propTypes.string.def(import.meta.env.VITE_UPLOAD_URL),
49 52 fileType: propTypes.array.def(['doc', 'xls', 'ppt', 'txt', 'pdf']), // 文件类型, 例如['png', 'jpg', 'jpeg']
... ... @@ -57,40 +60,12 @@ const props = defineProps({
57 60 const valueRef = ref(props.modelValue)
58 61 const uploadRef = ref<UploadInstance>()
59 62 const uploadList = ref<UploadUserFile[]>([])
60   -const fileList = ref<UploadUserFile[]>([])
  63 +const fileList = ref<UploadUserFile[]>(props.modelValue)
61 64 const uploadNumber = ref<number>(0)
62 65 const uploadHeaders = ref({
63 66 Authorization: 'Bearer ' + getAccessToken(),
64 67 'tenant-id': getTenantId()
65 68 })
66   -watch(
67   - () => props.modelValue,
68   - (val) => {
69   - if (val) {
70   - // 首先将值转为数组, 当只穿了一个图片时,会报map方法错误
71   - const list = Array.isArray(props.modelValue)
72   - ? props.modelValue
73   - : Array.isArray(props.modelValue?.split(','))
74   - ? props.modelValue?.split(',')
75   - : Array.of(props.modelValue)
76   - // 然后将数组转为对象数组
77   - fileList.value = list.map((item) => {
78   - if (typeof item === 'string') {
79   - // edit by 芋道源码
80   - item = { name: item, url: item }
81   - }
82   - return item
83   - })
84   - } else {
85   - fileList.value = []
86   - return []
87   - }
88   - },
89   - {
90   - deep: true,
91   - immediate: true
92   - }
93   -)
94 69 // 文件上传之前判断
95 70 const beforeUpload: UploadProps['beforeUpload'] = (file: UploadRawFile) => {
96 71 if (fileList.value.length >= props.limit) {
... ...
yudao-ui-admin-vue3/src/components/UploadFile/src/UploadImg.vue
1 1 <template>
2   - <div class="component-upload-image">
  2 + <div class="upload-box">
3 3 <el-upload
4   - ref="uploadRef"
5   - :multiple="props.limit > 1"
6   - name="file"
7   - v-model="valueRef"
8   - list-type="picture-card"
9   - v-model:file-list="fileList"
10   - :show-file-list="true"
11 4 :action="updateUrl"
  5 + :id="uuid"
  6 + :class="['upload', drag ? 'no-border' : '']"
  7 + :multiple="false"
  8 + :show-file-list="false"
12 9 :headers="uploadHeaders"
13   - :limit="props.limit"
14 10 :before-upload="beforeUpload"
15   - :on-exceed="handleExceed"
16   - :on-success="handleFileSuccess"
17   - :on-error="excelUploadError"
18   - :on-remove="handleRemove"
19   - :on-preview="handlePictureCardPreview"
20   - :class="{ hide: fileList.length >= props.limit }"
  11 + :on-success="uploadSuccess"
  12 + :on-error="uploadError"
  13 + :drag="drag"
  14 + :accept="fileType.join(',')"
21 15 >
22   - <Icon icon="ep:upload-filled" />
  16 + <template v-if="modelValue">
  17 + <img :src="modelValue" class="upload-image" />
  18 + <div class="upload-handle" @click.stop>
  19 + <div class="handle-icon" @click="editImg">
  20 + <Icon icon="ep:edit" />
  21 + <span>{{ t('action.edit') }}</span>
  22 + </div>
  23 + <div class="handle-icon" @click="imgViewVisible = true">
  24 + <Icon icon="ep:zoom-in" />
  25 + <span>{{ t('action.detail') }}</span>
  26 + </div>
  27 + <div class="handle-icon" @click="deleteImg">
  28 + <Icon icon="ep:delete" />
  29 + <span>{{ t('action.del') }}</span>
  30 + </div>
  31 + </div>
  32 + </template>
  33 + <template v-else>
  34 + <div class="upload-empty">
  35 + <slot name="empty">
  36 + <Icon icon="ep:plus" />
  37 + <!-- <span>请上传图片</span> -->
  38 + </slot>
  39 + </div>
  40 + </template>
23 41 </el-upload>
  42 + <div class="el-upload__tip">
  43 + <slot name="tip"></slot>
  44 + </div>
  45 + <el-image-viewer
  46 + v-if="imgViewVisible"
  47 + @close="imgViewVisible = false"
  48 + :url-list="[modelValue]"
  49 + />
24 50 </div>
25   - <!-- 文件列表 -->
26   - <Dialog v-model="dialogVisible" title="预览" width="800" append-to-body>
27   - <img :src="dialogImageUrl" style="display: block; max-width: 100%; margin: 0 auto" />
28   - </Dialog>
29 51 </template>
30   -<script setup lang="ts">
31   -import { ref, watch } from 'vue'
32   -import { Dialog } from '@/components/Dialog'
  52 +
  53 +<script setup lang="ts" name="UploadImg">
  54 +import { ref } from 'vue'
  55 +import type { UploadProps } from 'element-plus'
  56 +import { ElUpload, ElNotification, ElImageViewer } from 'element-plus'
  57 +import { useI18n } from '@/hooks/web/useI18n'
33 58 import { useMessage } from '@/hooks/web/useMessage'
  59 +import { generateUUID } from '@/utils'
34 60 import { propTypes } from '@/utils/propTypes'
35 61 import { getAccessToken, getTenantId } from '@/utils/auth'
36   -import { ElUpload, UploadInstance, UploadProps, UploadRawFile, UploadUserFile } from 'element-plus'
37 62  
38   -const message = useMessage() // 消息弹窗
39   -const emit = defineEmits(['update:modelValue'])
  63 +type FileTypes =
  64 + | 'image/apng'
  65 + | 'image/bmp'
  66 + | 'image/gif'
  67 + | 'image/jpeg'
  68 + | 'image/pjpeg'
  69 + | 'image/png'
  70 + | 'image/svg+xml'
  71 + | 'image/tiff'
  72 + | 'image/webp'
  73 + | 'image/x-icon'
40 74  
  75 +// 接受父组件参数
41 76 const props = defineProps({
42   - modelValue: propTypes.oneOfType([String, Object, Array]),
43   - title: propTypes.string.def('图片上传'),
  77 + modelValue: propTypes.string.def(''),
44 78 updateUrl: propTypes.string.def(import.meta.env.VITE_UPLOAD_URL),
45   - fileType: propTypes.array.def(['jpg', 'png', 'gif', 'jpeg']), // 文件类型, 例如['png', 'jpg', 'jpeg']
46   - fileSize: propTypes.number.def(5), // 大小限制(MB)
47   - limit: propTypes.number.def(1), // 数量限制
48   - isShowTip: propTypes.bool.def(false) // 是否显示提示
  79 + drag: propTypes.bool.def(true), // 是否支持拖拽上传 ==> 非必传(默认为 true)
  80 + disabled: propTypes.bool.def(false), // 是否禁用上传组件 ==> 非必传(默认为 false)
  81 + fileSize: propTypes.number.def(5), // 图片大小限制 ==> 非必传(默认为 5M)
  82 + fileType: propTypes.array.def(['image/jpeg', 'image/png', 'image/gif']), // 图片类型限制 ==> 非必传(默认为 ["image/jpeg", "image/png", "image/gif"])
  83 + height: propTypes.string.def('150px'), // 组件高度 ==> 非必传(默认为 150px)
  84 + width: propTypes.string.def('150px'), // 组件宽度 ==> 非必传(默认为 150px)
  85 + borderRadius: propTypes.string.def('8px') // 组件边框圆角 ==> 非必传(默认为 8px)
49 86 })
50   -// ========== 上传相关 ==========
51   -const valueRef = ref(props.modelValue)
52   -const uploadRef = ref<UploadInstance>()
53   -const uploadList = ref<UploadUserFile[]>([])
54   -const fileList = ref<UploadUserFile[]>([])
55   -const uploadNumber = ref<number>(0)
56   -const dialogImageUrl = ref()
57   -const dialogVisible = ref(false)
  87 +const { t } = useI18n() // 国际化
  88 +const message = useMessage() // 消息弹窗
  89 +// 生成组件唯一id
  90 +const uuid = ref('id-' + generateUUID())
  91 +// 查看图片
  92 +const imgViewVisible = ref(false)
  93 +
  94 +const emit = defineEmits(['update:modelValue'])
  95 +
  96 +const deleteImg = () => {
  97 + emit('update:modelValue', '')
  98 +}
  99 +
58 100 const uploadHeaders = ref({
59 101 Authorization: 'Bearer ' + getAccessToken(),
60 102 'tenant-id': getTenantId()
61 103 })
62   -watch(
63   - () => props.modelValue,
64   - (val) => {
65   - if (val) {
66   - // 首先将值转为数组, 当只穿了一个图片时,会报map方法错误
67   - const list = Array.isArray(props.modelValue)
68   - ? props.modelValue
69   - : Array.isArray(props.modelValue?.split(','))
70   - ? props.modelValue?.split(',')
71   - : Array.of(props.modelValue)
72   - // 然后将数组转为对象数组
73   - fileList.value = list.map((item) => {
74   - if (typeof item === 'string') {
75   - // edit by 芋道源码
76   - item = { name: item, url: item }
77   - }
78   - return item
79   - })
80   - } else {
81   - fileList.value = []
82   - return []
83   - }
84   - },
85   - {
86   - deep: true,
87   - immediate: true
88   - }
89   -)
90   -// 文件上传之前判断
91   -const beforeUpload: UploadProps['beforeUpload'] = (file: UploadRawFile) => {
92   - if (fileList.value.length >= props.limit) {
93   - message.error(`上传文件数量不能超过${props.limit}个!`)
94   - return false
95   - }
96   - let fileExtension = ''
97   - if (file.name.lastIndexOf('.') > -1) {
98   - fileExtension = file.name.slice(file.name.lastIndexOf('.') + 1)
99   - }
100   - const isImg = props.fileType.some((type: string) => {
101   - if (file.type.indexOf(type) > -1) return true
102   - return !!(fileExtension && fileExtension.indexOf(type) > -1)
103   - })
104   - const isLimit = file.size < props.fileSize * 1024 * 1024
105   - if (!isImg) {
106   - message.error(`文件格式不正确, 请上传${props.fileType.join('/')}格式!`)
107   - return false
108   - }
109   - if (!isLimit) {
110   - message.error(`上传文件大小不能超过${props.fileSize}MB!`)
111   - return false
112   - }
113   - message.success('正在上传文件,请稍候...')
114   - uploadNumber.value++
115   -}
116   -// 处理上传的文件发生变化
117   -// const handleFileChange = (uploadFile: UploadFile): void => {
118   -// uploadRef.value.data.path = uploadFile.name
119   -// }
120   -// 文件上传成功
121   -const handleFileSuccess: UploadProps['onSuccess'] = (res: any): void => {
122   - message.success('上传成功')
123   - uploadList.value.push({ name: res.data, url: res.data })
124   - if (uploadList.value.length == uploadNumber.value) {
125   - fileList.value = fileList.value.concat(uploadList.value)
126   - uploadList.value = []
127   - uploadNumber.value = 0
128   - emit('update:modelValue', listToString(fileList.value))
129   - }
130   -}
131   -// 文件数超出提示
132   -const handleExceed: UploadProps['onExceed'] = (): void => {
133   - message.error(`上传文件数量不能超过${props.limit}个!`)
134   -}
135   -// 上传错误提示
136   -const excelUploadError: UploadProps['onError'] = (): void => {
137   - message.error('导入数据失败,请您重新上传!')
  104 +
  105 +const editImg = () => {
  106 + const dom = document.querySelector(`#${uuid.value} .el-upload__input`)
  107 + dom && dom.dispatchEvent(new MouseEvent('click'))
138 108 }
139   -// 删除上传文件
140   -const handleRemove = (file) => {
141   - const findex = fileList.value.map((f) => f.name).indexOf(file.name)
142   - if (findex > -1) {
143   - fileList.value.splice(findex, 1)
144   - emit('update:modelValue', listToString(fileList.value))
145   - }
  109 +
  110 +const beforeUpload: UploadProps['beforeUpload'] = (rawFile) => {
  111 + const imgSize = rawFile.size / 1024 / 1024 < props.fileSize
  112 + const imgType = props.fileType
  113 + if (!imgType.includes(rawFile.type as FileTypes))
  114 + ElNotification({
  115 + title: '温馨提示',
  116 + message: '上传图片不符合所需的格式!',
  117 + type: 'warning'
  118 + })
  119 + if (!imgSize)
  120 + ElNotification({
  121 + title: '温馨提示',
  122 + message: `上传图片大小不能超过 ${props.fileSize}M!`,
  123 + type: 'warning'
  124 + })
  125 + return imgType.includes(rawFile.type as FileTypes) && imgSize
146 126 }
147   -// 对象转成指定字符串分隔
148   -const listToString = (list: UploadUserFile[], separator?: string) => {
149   - let strs = ''
150   - separator = separator || ','
151   - for (let i in list) {
152   - strs += list[i].url + separator
153   - }
154   - return strs != '' ? strs.substr(0, strs.length - 1) : ''
  127 +
  128 +// 图片上传成功提示
  129 +const uploadSuccess: UploadProps['onSuccess'] = (res: any): void => {
  130 + message.success('上传成功')
  131 + emit('update:modelValue', res.data)
155 132 }
156   -// 预览
157   -const handlePictureCardPreview: UploadProps['onPreview'] = (file) => {
158   - dialogImageUrl.value = file.url
159   - dialogVisible.value = true
  133 +
  134 +// 图片上传错误提示
  135 +const uploadError = () => {
  136 + ElNotification({
  137 + title: '温馨提示',
  138 + message: '图片上传失败,请您重新上传!',
  139 + type: 'error'
  140 + })
160 141 }
161 142 </script>
162 143 <style scoped lang="scss">
163   -// .el-upload--picture-card 控制加号部分
164   -:deep(.hide .el-upload--picture-card) {
165   - display: none;
  144 +.is-error {
  145 + .upload {
  146 + :deep(.el-upload),
  147 + :deep(.el-upload-dragger) {
  148 + border: 1px dashed var(--el-color-danger) !important;
  149 + &:hover {
  150 + border-color: var(--el-color-primary) !important;
  151 + }
  152 + }
  153 + }
166 154 }
167   -// 去掉动画效果
168   -:deep(.el-list-enter-active, .el-list-leave-active) {
169   - transition: all 0s;
  155 +:deep(.disabled) {
  156 + .el-upload,
  157 + .el-upload-dragger {
  158 + cursor: not-allowed !important;
  159 + background: var(--el-disabled-bg-color);
  160 + border: 1px dashed var(--el-border-color-darker) !important;
  161 + &:hover {
  162 + border: 1px dashed var(--el-border-color-darker) !important;
  163 + }
  164 + }
170 165 }
171   -
172   -:deep(.el-list-enter, .el-list-leave-active) {
173   - opacity: 0;
174   - transform: translateY(0);
  166 +.upload-box {
  167 + .no-border {
  168 + :deep(.el-upload) {
  169 + border: none !important;
  170 + }
  171 + }
  172 + :deep(.upload) {
  173 + .el-upload {
  174 + position: relative;
  175 + display: flex;
  176 + align-items: center;
  177 + justify-content: center;
  178 + width: v-bind(width);
  179 + height: v-bind(height);
  180 + overflow: hidden;
  181 + border: 1px dashed var(--el-border-color-darker);
  182 + border-radius: v-bind(borderRadius);
  183 + transition: var(--el-transition-duration-fast);
  184 + &:hover {
  185 + border-color: var(--el-color-primary);
  186 + .upload-handle {
  187 + opacity: 1;
  188 + }
  189 + }
  190 + .el-upload-dragger {
  191 + display: flex;
  192 + align-items: center;
  193 + justify-content: center;
  194 + width: 100%;
  195 + height: 100%;
  196 + padding: 0;
  197 + overflow: hidden;
  198 + background-color: transparent;
  199 + border: 1px dashed var(--el-border-color-darker);
  200 + border-radius: v-bind(borderRadius);
  201 + &:hover {
  202 + border: 1px dashed var(--el-color-primary);
  203 + }
  204 + }
  205 + .el-upload-dragger.is-dragover {
  206 + background-color: var(--el-color-primary-light-9);
  207 + border: 2px dashed var(--el-color-primary) !important;
  208 + }
  209 + .upload-image {
  210 + width: 100%;
  211 + height: 100%;
  212 + object-fit: contain;
  213 + }
  214 + .upload-empty {
  215 + position: relative;
  216 + display: flex;
  217 + flex-direction: column;
  218 + align-items: center;
  219 + justify-content: center;
  220 + font-size: 12px;
  221 + line-height: 30px;
  222 + color: var(--el-color-info);
  223 + .el-icon {
  224 + font-size: 28px;
  225 + color: var(--el-text-color-secondary);
  226 + }
  227 + }
  228 + .upload-handle {
  229 + position: absolute;
  230 + top: 0;
  231 + right: 0;
  232 + box-sizing: border-box;
  233 + display: flex;
  234 + align-items: center;
  235 + justify-content: center;
  236 + width: 100%;
  237 + height: 100%;
  238 + cursor: pointer;
  239 + background: rgb(0 0 0 / 60%);
  240 + opacity: 0;
  241 + transition: var(--el-transition-duration-fast);
  242 + .handle-icon {
  243 + display: flex;
  244 + flex-direction: column;
  245 + align-items: center;
  246 + justify-content: center;
  247 + padding: 0 6%;
  248 + color: aliceblue;
  249 + .el-icon {
  250 + margin-bottom: 40%;
  251 + font-size: 130%;
  252 + line-height: 130%;
  253 + }
  254 + span {
  255 + font-size: 85%;
  256 + line-height: 85%;
  257 + }
  258 + }
  259 + }
  260 + }
  261 + }
  262 + .el-upload__tip {
  263 + line-height: 18px;
  264 + text-align: center;
  265 + }
175 266 }
176 267 </style>
... ...
yudao-ui-admin-vue3/src/components/UploadFile/src/UploadImgs.vue 0 → 100644
  1 +<template>
  2 + <div class="upload-box">
  3 + <el-upload
  4 + :action="updateUrl"
  5 + list-type="picture-card"
  6 + :class="['upload', drag ? 'no-border' : '']"
  7 + v-model:file-list="fileList"
  8 + :multiple="true"
  9 + :limit="limit"
  10 + :headers="uploadHeaders"
  11 + :before-upload="beforeUpload"
  12 + :on-exceed="handleExceed"
  13 + :on-success="uploadSuccess"
  14 + :on-error="uploadError"
  15 + :drag="drag"
  16 + :accept="fileType.join(',')"
  17 + >
  18 + <div class="upload-empty">
  19 + <slot name="empty">
  20 + <Icon icon="ep:plus" />
  21 + <!-- <span>请上传图片</span> -->
  22 + </slot>
  23 + </div>
  24 + <template #file="{ file }">
  25 + <img :src="file.url" class="upload-image" />
  26 + <div class="upload-handle" @click.stop>
  27 + <div class="handle-icon" @click="handlePictureCardPreview(file)">
  28 + <Icon icon="ep:zoom-in" />
  29 + <span>查看</span>
  30 + </div>
  31 + <div class="handle-icon" @click="handleRemove(file)">
  32 + <Icon icon="ep:delete" />
  33 + <span>删除</span>
  34 + </div>
  35 + </div>
  36 + </template>
  37 + </el-upload>
  38 + <div class="el-upload__tip">
  39 + <slot name="tip"></slot>
  40 + </div>
  41 + <el-image-viewer
  42 + v-if="imgViewVisible"
  43 + @close="imgViewVisible = false"
  44 + :url-list="[viewImageUrl]"
  45 + />
  46 + </div>
  47 +</template>
  48 +<script setup lang="ts" name="UploadImgs">
  49 +import { PropType, ref } from 'vue'
  50 +import { ElUpload, ElNotification, ElImageViewer } from 'element-plus'
  51 +import type { UploadProps, UploadFile, UploadUserFile } from 'element-plus'
  52 +import { useMessage } from '@/hooks/web/useMessage'
  53 +import { propTypes } from '@/utils/propTypes'
  54 +import { getAccessToken, getTenantId } from '@/utils/auth'
  55 +
  56 +const message = useMessage() // 消息弹窗
  57 +
  58 +type FileTypes =
  59 + | 'image/apng'
  60 + | 'image/bmp'
  61 + | 'image/gif'
  62 + | 'image/jpeg'
  63 + | 'image/pjpeg'
  64 + | 'image/png'
  65 + | 'image/svg+xml'
  66 + | 'image/tiff'
  67 + | 'image/webp'
  68 + | 'image/x-icon'
  69 +
  70 +const props = defineProps({
  71 + modelValue: {
  72 + type: Array as PropType<UploadUserFile[]>,
  73 + required: true
  74 + },
  75 + updateUrl: propTypes.string.def(import.meta.env.VITE_UPLOAD_URL),
  76 + drag: propTypes.bool.def(true), // 是否支持拖拽上传 ==> 非必传(默认为 true)
  77 + disabled: propTypes.bool.def(false), // 是否禁用上传组件 ==> 非必传(默认为 false)
  78 + limit: propTypes.number.def(5), // 最大图片上传数 ==> 非必传(默认为 5张)
  79 + fileSize: propTypes.number.def(5), // 图片大小限制 ==> 非必传(默认为 5M)
  80 + fileType: propTypes.array.def(['image/jpeg', 'image/png', 'image/gif']), // 图片类型限制 ==> 非必传(默认为 ["image/jpeg", "image/png", "image/gif"])
  81 + height: propTypes.string.def('150px'), // 组件高度 ==> 非必传(默认为 150px)
  82 + width: propTypes.string.def('150px'), // 组件宽度 ==> 非必传(默认为 150px)
  83 + borderRadius: propTypes.string.def('8px') // 组件边框圆角 ==> 非必传(默认为 8px)
  84 +})
  85 +
  86 +const uploadHeaders = ref({
  87 + Authorization: 'Bearer ' + getAccessToken(),
  88 + 'tenant-id': getTenantId()
  89 +})
  90 +
  91 +const fileList = ref<UploadUserFile[]>(props.modelValue)
  92 +
  93 +/**
  94 + * @description 文件上传之前判断
  95 + * @param rawFile 上传的文件
  96 + * */
  97 +const beforeUpload: UploadProps['beforeUpload'] = (rawFile) => {
  98 + const imgSize = rawFile.size / 1024 / 1024 < props.fileSize
  99 + const imgType = props.fileType
  100 + if (!imgType.includes(rawFile.type as FileTypes))
  101 + ElNotification({
  102 + title: '温馨提示',
  103 + message: '上传图片不符合所需的格式!',
  104 + type: 'warning'
  105 + })
  106 + if (!imgSize)
  107 + ElNotification({
  108 + title: '温馨提示',
  109 + message: `上传图片大小不能超过 ${props.fileSize}M!`,
  110 + type: 'warning'
  111 + })
  112 + return imgType.includes(rawFile.type as FileTypes) && imgSize
  113 +}
  114 +
  115 +// 图片上传成功
  116 +interface UploadEmits {
  117 + (e: 'update:modelValue', value: UploadUserFile[]): void
  118 +}
  119 +const emit = defineEmits<UploadEmits>()
  120 +const uploadSuccess = (response, uploadFile: UploadFile) => {
  121 + if (!response) return
  122 + uploadFile.url = response.data
  123 + emit('update:modelValue', fileList.value)
  124 + message.success('上传成功')
  125 +}
  126 +
  127 +// 删除图片
  128 +const handleRemove = (uploadFile: UploadFile) => {
  129 + fileList.value = fileList.value.filter(
  130 + (item) => item.url !== uploadFile.url || item.name !== uploadFile.name
  131 + )
  132 + emit('update:modelValue', fileList.value)
  133 +}
  134 +
  135 +// 图片上传错误提示
  136 +const uploadError = () => {
  137 + ElNotification({
  138 + title: '温馨提示',
  139 + message: '图片上传失败,请您重新上传!',
  140 + type: 'error'
  141 + })
  142 +}
  143 +
  144 +// 文件数超出提示
  145 +const handleExceed = () => {
  146 + ElNotification({
  147 + title: '温馨提示',
  148 + message: `当前最多只能上传 ${props.limit} 张图片,请移除后上传!`,
  149 + type: 'warning'
  150 + })
  151 +}
  152 +
  153 +// 图片预览
  154 +const viewImageUrl = ref('')
  155 +const imgViewVisible = ref(false)
  156 +const handlePictureCardPreview: UploadProps['onPreview'] = (uploadFile) => {
  157 + viewImageUrl.value = uploadFile.url!
  158 + imgViewVisible.value = true
  159 +}
  160 +</script>
  161 +
  162 +<style scoped lang="scss">
  163 +.is-error {
  164 + .upload {
  165 + :deep(.el-upload--picture-card),
  166 + :deep(.el-upload-dragger) {
  167 + border: 1px dashed var(--el-color-danger) !important;
  168 + &:hover {
  169 + border-color: var(--el-color-primary) !important;
  170 + }
  171 + }
  172 + }
  173 +}
  174 +:deep(.disabled) {
  175 + .el-upload--picture-card,
  176 + .el-upload-dragger {
  177 + cursor: not-allowed;
  178 + background: var(--el-disabled-bg-color) !important;
  179 + border: 1px dashed var(--el-border-color-darker);
  180 + &:hover {
  181 + border-color: var(--el-border-color-darker) !important;
  182 + }
  183 + }
  184 +}
  185 +.upload-box {
  186 + .no-border {
  187 + :deep(.el-upload--picture-card) {
  188 + border: none !important;
  189 + }
  190 + }
  191 + :deep(.upload) {
  192 + .el-upload-dragger {
  193 + display: flex;
  194 + align-items: center;
  195 + justify-content: center;
  196 + width: 100%;
  197 + height: 100%;
  198 + padding: 0;
  199 + overflow: hidden;
  200 + border: 1px dashed var(--el-border-color-darker);
  201 + border-radius: v-bind(borderRadius);
  202 + &:hover {
  203 + border: 1px dashed var(--el-color-primary);
  204 + }
  205 + }
  206 + .el-upload-dragger.is-dragover {
  207 + background-color: var(--el-color-primary-light-9);
  208 + border: 2px dashed var(--el-color-primary) !important;
  209 + }
  210 + .el-upload-list__item,
  211 + .el-upload--picture-card {
  212 + width: v-bind(width);
  213 + height: v-bind(height);
  214 + background-color: transparent;
  215 + border-radius: v-bind(borderRadius);
  216 + }
  217 + .upload-image {
  218 + width: 100%;
  219 + height: 100%;
  220 + object-fit: contain;
  221 + }
  222 + .upload-handle {
  223 + position: absolute;
  224 + top: 0;
  225 + right: 0;
  226 + box-sizing: border-box;
  227 + display: flex;
  228 + align-items: center;
  229 + justify-content: center;
  230 + width: 100%;
  231 + height: 100%;
  232 + cursor: pointer;
  233 + background: rgb(0 0 0 / 60%);
  234 + opacity: 0;
  235 + transition: var(--el-transition-duration-fast);
  236 + .handle-icon {
  237 + display: flex;
  238 + flex-direction: column;
  239 + align-items: center;
  240 + justify-content: center;
  241 + padding: 0 6%;
  242 + color: aliceblue;
  243 + .el-icon {
  244 + margin-bottom: 15%;
  245 + font-size: 140%;
  246 + }
  247 + span {
  248 + font-size: 100%;
  249 + }
  250 + }
  251 + }
  252 + .el-upload-list__item {
  253 + &:hover {
  254 + .upload-handle {
  255 + opacity: 1;
  256 + }
  257 + }
  258 + }
  259 + .upload-empty {
  260 + display: flex;
  261 + flex-direction: column;
  262 + align-items: center;
  263 + font-size: 12px;
  264 + line-height: 30px;
  265 + color: var(--el-color-info);
  266 + .el-icon {
  267 + font-size: 28px;
  268 + color: var(--el-text-color-secondary);
  269 + }
  270 + }
  271 + }
  272 + .el-upload__tip {
  273 + line-height: 15px;
  274 + text-align: center;
  275 + }
  276 +}
  277 +</style>
... ...
yudao-ui-admin-vue3/src/layout/components/Logo/src/Logo.vue
... ... @@ -55,31 +55,33 @@ watch(
55 55 </script>
56 56  
57 57 <template>
58   - <router-link
59   - :class="[
60   - prefixCls,
61   - layout !== 'classic' ? `${prefixCls}__Top` : '',
62   - 'flex !h-[var(--logo-height)] items-center cursor-pointer justify-center relative',
63   - 'dark:bg-[var(--el-bg-color)]'
64   - ]"
65   - to="/"
66   - >
67   - <img
68   - src="@/assets/imgs/logo.png"
69   - class="w-[calc(var(--logo-height)-10px)] h-[calc(var(--logo-height)-10px)]"
70   - />
71   - <div
72   - v-if="show"
  58 + <div>
  59 + <router-link
73 60 :class="[
74   - 'ml-10px text-16px font-700',
75   - {
76   - 'text-[var(--logo-title-text-color)]': layout === 'classic',
77   - 'text-[var(--top-header-text-color)]':
78   - layout === 'topLeft' || layout === 'top' || layout === 'cutMenu'
79   - }
  61 + prefixCls,
  62 + layout !== 'classic' ? `${prefixCls}__Top` : '',
  63 + 'flex !h-[var(--logo-height)] items-center cursor-pointer justify-center relative',
  64 + 'dark:bg-[var(--el-bg-color)]'
80 65 ]"
  66 + to="/"
81 67 >
82   - {{ title }}
83   - </div>
84   - </router-link>
  68 + <img
  69 + src="@/assets/imgs/logo.png"
  70 + class="w-[calc(var(--logo-height)-10px)] h-[calc(var(--logo-height)-10px)]"
  71 + />
  72 + <div
  73 + v-if="show"
  74 + :class="[
  75 + 'ml-10px text-16px font-700',
  76 + {
  77 + 'text-[var(--logo-title-text-color)]': layout === 'classic',
  78 + 'text-[var(--top-header-text-color)]':
  79 + layout === 'topLeft' || layout === 'top' || layout === 'cutMenu'
  80 + }
  81 + ]"
  82 + >
  83 + {{ title }}
  84 + </div>
  85 + </router-link>
  86 + </div>
85 87 </template>
... ...
yudao-ui-admin-vue3/src/router/modules/remaining.ts
... ... @@ -64,7 +64,7 @@ const remainingRouter: AppRouteRecordRaw[] = [
64 64 meta: {
65 65 title: t('router.home'),
66 66 icon: 'ep:home-filled',
67   - noCache: true,
  67 + noCache: false,
68 68 affix: true
69 69 }
70 70 }
... ...
yudao-ui-admin-vue3/src/types/components.d.ts
... ... @@ -22,6 +22,7 @@ export type ComponentName =
22 22 | 'InputPassword'
23 23 | 'Editor'
24 24 | 'UploadImg'
  25 + | 'UploadImgs'
25 26 | 'UploadFile'
26 27  
27 28 export type ColProps = {
... ...
yudao-ui-admin-vue3/src/utils/index.ts
... ... @@ -69,7 +69,7 @@ export const trim = (str: string) =&gt; {
69 69 * @param {Date | number | string} time 需要转换的时间
70 70 * @param {String} fmt 需要转换的格式 如 yyyy-MM-dd、yyyy-MM-dd HH:mm:ss
71 71 */
72   -export function formatTime(time: Date | number | string, fmt: string) {
  72 +export const formatTime = (time: Date | number | string, fmt: string) => {
73 73 if (!time) return ''
74 74 else {
75 75 const date = new Date(time)
... ... @@ -100,7 +100,7 @@ export function formatTime(time: Date | number | string, fmt: string) {
100 100 /**
101 101 * 生成随机字符串
102 102 */
103   -export function toAnyString() {
  103 +export const toAnyString = () => {
104 104 const str: string = 'xxxxx-xxxxx-4xxxx-yxxxx-xxxxx'.replace(/[xy]/g, (c: string) => {
105 105 const r: number = (Math.random() * 16) | 0
106 106 const v: number = c === 'x' ? r : (r & 0x3) | 0x8
... ... @@ -108,3 +108,34 @@ export function toAnyString() {
108 108 })
109 109 return str
110 110 }
  111 +
  112 +export const generateUUID = () => {
  113 + if (typeof crypto === 'object') {
  114 + if (typeof crypto.randomUUID === 'function') {
  115 + return crypto.randomUUID()
  116 + }
  117 + if (typeof crypto.getRandomValues === 'function' && typeof Uint8Array === 'function') {
  118 + const callback = (c: any) => {
  119 + const num = Number(c)
  120 + return (num ^ (crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (num / 4)))).toString(
  121 + 16
  122 + )
  123 + }
  124 + return '10000000-1000-4000-8000-100000000000'.replace(/[018]/g, callback)
  125 + }
  126 + }
  127 + let timestamp = new Date().getTime()
  128 + let performanceNow =
  129 + (typeof performance !== 'undefined' && performance.now && performance.now() * 1000) || 0
  130 + return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, (c) => {
  131 + let random = Math.random() * 16
  132 + if (timestamp > 0) {
  133 + random = (timestamp + random) % 16 | 0
  134 + timestamp = Math.floor(timestamp / 16)
  135 + } else {
  136 + random = (performanceNow + random) % 16 | 0
  137 + performanceNow = Math.floor(performanceNow / 16)
  138 + }
  139 + return (c === 'x' ? random : (random & 0x3) | 0x8).toString(16)
  140 + })
  141 +}
... ...
yudao-ui-admin-vue3/src/utils/routerHelper.ts
... ... @@ -56,7 +56,13 @@ export const generateRoute = (routes: AppCustomRouteRecordRaw[]): AppRouteRecord
56 56 title: route.name,
57 57 icon: route.icon,
58 58 hidden: !route.visible,
59   - noCache: !route.keepAlive
  59 + noCache: !route.keepAlive,
  60 + alwaysShow:
  61 + route.children &&
  62 + route.children.length === 1 &&
  63 + import.meta.env.VITE_ROUTE_ALWAYSSHOW_ENABLE === 'true'
  64 + ? true
  65 + : false
60 66 }
61 67 // 路由地址转首字母大写驼峰,作为路由名称,适配keepAlive
62 68 let data: AppRouteRecordRaw = {
... ... @@ -71,6 +77,7 @@ export const generateRoute = (routes: AppCustomRouteRecordRaw[]): AppRouteRecord
71 77 data.meta = {}
72 78 data.name = toCamelCase(route.path, true) + 'Parent'
73 79 data.redirect = ''
  80 + meta.alwaysShow = true
74 81 const childrenData: AppRouteRecordRaw = {
75 82 path: '',
76 83 name: toCamelCase(route.path, true),
... ...
yudao-ui-admin-vue3/src/views/infra/apiErrorLog/index.vue
... ... @@ -95,9 +95,8 @@ const handleProcessClick = (
95 95 message
96 96 .confirm('确认标记为' + type + '?', t('common.reminder'))
97 97 .then(async () => {
98   - ApiErrorLogApi.updateApiErrorLogPageApi(row.id, processSttatus).then(() => {
99   - message.success(t('common.updateSuccess'))
100   - })
  98 + await ApiErrorLogApi.updateApiErrorLogPageApi(row.id, processSttatus)
  99 + message.success(t('common.updateSuccess'))
101 100 })
102 101 .finally(async () => {
103 102 // 刷新列表
... ...
yudao-ui-admin-vue3/src/views/system/oauth2/client/client.data.ts
... ... @@ -43,10 +43,7 @@ const crudSchemas = reactive&lt;VxeCrudSchema&gt;({
43 43 }
44 44 },
45 45 form: {
46   - component: 'UploadImg',
47   - componentProps: {
48   - limit: 1
49   - }
  46 + component: 'UploadImg'
50 47 }
51 48 },
52 49 {
... ...
yudao-ui-admin-vue3/tsconfig.json
... ... @@ -24,7 +24,7 @@
24 24 "@/*": ["src/*"]
25 25 },
26 26 "types": [
27   - "@intlify/vite-plugin-vue-i18n/client",
  27 + "@intlify/unplugin-vue-i18n/types",
28 28 "vite/client",
29 29 "element-plus/global",
30 30 "@types/intro.js",
... ...
yudao-ui-admin-vue3/types/env.d.ts
... ... @@ -10,7 +10,8 @@ declare module &#39;*.vue&#39; {
10 10 interface ImportMetaEnv {
11 11 readonly VITE_APP_TITLE: string
12 12 readonly VITE_PORT: number
13   - readonly VITE_OPEN: boolean
  13 + readonly VITE_OPEN: string
  14 + readonly VITE_ROUTE_ALWAYSSHOW_ENABLE: string
14 15 readonly VITE_APP_CAPTCHA_ENABLE: string
15 16 readonly VITE_APP_TENANT_ENABLE: string
16 17 readonly VITE_BASE_URL: string
... ...
yudao-ui-admin-vue3/vite.config.ts
... ... @@ -30,7 +30,7 @@ export default ({ command, mode }: ConfigEnv): UserConfig =&gt; {
30 30 // 端口号
31 31 port: env.VITE_PORT,
32 32 host: "0.0.0.0",
33   - open: env.VITE_OPEN,
  33 + open: env.VITE_OPEN === 'true',
34 34 // 本地跨域代理
35 35 proxy: {
36 36 ['/admin-api']: {
... ...