Commit a397a57bfa101e7df678ec1aba5dacfbaac08fcc
Committed by
Gitee
!403 集成 Go-View 大屏设计器
Merge pull request !403 from 芋道源码/feature/dev-yunai
Showing
54 changed files
with
1116 additions
and
150 deletions
README.md
| @@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
| 34 | * 高效率开发,使用代码生成器可以一键生成前后端代码 + 单元测试 + Swagger 接口文档 + Validator 参数校验 | 34 | * 高效率开发,使用代码生成器可以一键生成前后端代码 + 单元测试 + Swagger 接口文档 + Validator 参数校验 |
| 35 | * 集成微信小程序、微信公众号、企业微信、钉钉等三方登陆,集成支付宝、微信等支付与退款 | 35 | * 集成微信小程序、微信公众号、企业微信、钉钉等三方登陆,集成支付宝、微信等支付与退款 |
| 36 | * 集成阿里云、腾讯云等短信渠道,集成 MinIO、阿里云、腾讯云、七牛云等云存储服务 | 36 | * 集成阿里云、腾讯云等短信渠道,集成 MinIO、阿里云、腾讯云、七牛云等云存储服务 |
| 37 | -* 集成报表设计器,支持数据报表、图形报表、打印设计等 | 37 | +* 集成报表设计器、大屏设计器,通过拖拽即可生成酷炫的报表与大屏 |
| 38 | 38 | ||
| 39 | | 项目名 | 说明 | 传送门 | | 39 | | 项目名 | 说明 | 传送门 | |
| 40 | |----------------------|------------------------|-------------------------------------------------------------------------------------------------------------------------------------| | 40 | |----------------------|------------------------|-------------------------------------------------------------------------------------------------------------------------------------| |
| @@ -171,10 +171,10 @@ ps:核心功能已经实现,正在对接微信小程序中... | @@ -171,10 +171,10 @@ ps:核心功能已经实现,正在对接微信小程序中... | ||
| 171 | 171 | ||
| 172 | ### 数据报表 | 172 | ### 数据报表 |
| 173 | 173 | ||
| 174 | -| | 功能 | 描述 | | ||
| 175 | -|-----|----------|----------------------------------------------| | ||
| 176 | -| 🚀 | 报表设计器 | 支持数据报表、图形报表、打印设计等 | | ||
| 177 | -| 🚀 | 大屏设计器 | 建设中... 拖拽式实现可视化数据大屏 | | 174 | +| | 功能 | 描述 | |
| 175 | +|-----|-------|--------------------| | ||
| 176 | +| 🚀 | 报表设计器 | 支持数据报表、图形报表、打印设计等 | | ||
| 177 | +| 🚀 | 大屏设计器 | 拖拽生成数据大屏,内置几十种图表组件 | | ||
| 178 | 178 | ||
| 179 | ### 微信公众号 | 179 | ### 微信公众号 |
| 180 | 180 | ||
| @@ -207,23 +207,23 @@ ps:核心功能已经实现,正在对接微信小程序中... | @@ -207,23 +207,23 @@ ps:核心功能已经实现,正在对接微信小程序中... | ||
| 207 | 207 | ||
| 208 | ## 🐨 技术栈 | 208 | ## 🐨 技术栈 |
| 209 | 209 | ||
| 210 | -| 项目 | 说明 | | ||
| 211 | -|------------------------------|--------------------| | ||
| 212 | -| `yudao-dependencies` | Maven 依赖版本管理 | | ||
| 213 | -| `yudao-framework` | Java 框架拓展 | | ||
| 214 | -| `yudao-server` | 管理后台 + 用户 APP 的服务端 | | ||
| 215 | -| `yudao-ui-admin` | 管理后台的 Vue2 前端项目 | | ||
| 216 | -| `yudao-ui-admin-vue3` | 管理后台的 Vue3 前端项目 | | ||
| 217 | -| `yudao-ui-admin-uniapp` | 管理后台的 uni-app 多端项目 | | ||
| 218 | -| `yudao-ui-app` | 用户 APP 的 UI 界面 | | ||
| 219 | -| `yudao-module-system` | 系统功能的 Module 模块 | | ||
| 220 | -| `yudao-module-member` | 会员中心的 Module 模块 | | ||
| 221 | -| `yudao-module-infra` | 基础设施的 Module 模块 | | ||
| 222 | -| `yudao-module-bpm` | 工作流程的 Module 模块 | | ||
| 223 | -| `yudao-module-pay` | 支付系统的 Module 模块 | | ||
| 224 | -| `yudao-module-mall` | 商城系统的 Module 模块 | | ||
| 225 | -| `yudao-module-mp` | 微信公众号的 Module 模块 | | ||
| 226 | -| `yudao-module-visualization` | 大屏报表 Module 模块 | | 210 | +| 项目 | 说明 | |
| 211 | +|-------------------------|--------------------| | ||
| 212 | +| `yudao-dependencies` | Maven 依赖版本管理 | | ||
| 213 | +| `yudao-framework` | Java 框架拓展 | | ||
| 214 | +| `yudao-server` | 管理后台 + 用户 APP 的服务端 | | ||
| 215 | +| `yudao-ui-admin` | 管理后台的 Vue2 前端项目 | | ||
| 216 | +| `yudao-ui-admin-vue3` | 管理后台的 Vue3 前端项目 | | ||
| 217 | +| `yudao-ui-admin-uniapp` | 管理后台的 uni-app 多端项目 | | ||
| 218 | +| `yudao-ui-app` | 用户 APP 的 UI 界面 | | ||
| 219 | +| `yudao-module-system` | 系统功能的 Module 模块 | | ||
| 220 | +| `yudao-module-member` | 会员中心的 Module 模块 | | ||
| 221 | +| `yudao-module-infra` | 基础设施的 Module 模块 | | ||
| 222 | +| `yudao-module-bpm` | 工作流程的 Module 模块 | | ||
| 223 | +| `yudao-module-pay` | 支付系统的 Module 模块 | | ||
| 224 | +| `yudao-module-mall` | 商城系统的 Module 模块 | | ||
| 225 | +| `yudao-module-mp` | 微信公众号的 Module 模块 | | ||
| 226 | +| `yudao-module-report` | 大屏报表 Module 模块 | | ||
| 227 | 227 | ||
| 228 | ### 后端 | 228 | ### 后端 |
| 229 | 229 | ||
| @@ -324,9 +324,10 @@ ps:核心功能已经实现,正在对接微信小程序中... | @@ -324,9 +324,10 @@ ps:核心功能已经实现,正在对接微信小程序中... | ||
| 324 | 324 | ||
| 325 | ### 数据报表 | 325 | ### 数据报表 |
| 326 | 326 | ||
| 327 | -| 模块 | biu | biu | biu | | ||
| 328 | -|---------|------------------------------------------------------------------|------------------------------------------------------------------------|------------------------------------------------------------------------| | 327 | +| 模块 | biu | biu | biu | |
| 328 | +|-------|--------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------| | ||
| 329 | | 报表设计器 |  |  |  | | 329 | | 报表设计器 |  |  |  | |
| 330 | +| 大屏设计器 |  |  |  | | ||
| 330 | 331 | ||
| 331 | ### 移动端(管理后台) | 332 | ### 移动端(管理后台) |
| 332 | 333 |
pom.xml
| @@ -18,7 +18,7 @@ | @@ -18,7 +18,7 @@ | ||
| 18 | <module>yudao-module-infra</module> | 18 | <module>yudao-module-infra</module> |
| 19 | <module>yudao-module-pay</module> | 19 | <module>yudao-module-pay</module> |
| 20 | <!-- <module>yudao-module-bpm</module>--> | 20 | <!-- <module>yudao-module-bpm</module>--> |
| 21 | -<!-- <module>yudao-module-visualization</module>--> | 21 | +<!-- <module>yudao-module-report</module>--> |
| 22 | <!-- <module>yudao-module-mp</module>--> | 22 | <!-- <module>yudao-module-mp</module>--> |
| 23 | <!-- <module>yudao-module-mall</module>--> | 23 | <!-- <module>yudao-module-mall</module>--> |
| 24 | <!-- 示例项目 --> | 24 | <!-- 示例项目 --> |
sql/mysql/optional/go-view.sql
0 → 100644
| 1 | +/* | ||
| 2 | + Navicat Premium Data Transfer | ||
| 3 | + | ||
| 4 | + Source Server : 127.0.0.1 MySQL | ||
| 5 | + Source Server Type : MySQL | ||
| 6 | + Source Server Version : 80026 | ||
| 7 | + Source Host : localhost:3306 | ||
| 8 | + Source Schema : ruoyi-vue-pro | ||
| 9 | + | ||
| 10 | + Target Server Type : MySQL | ||
| 11 | + Target Server Version : 80026 | ||
| 12 | + File Encoding : 65001 | ||
| 13 | + | ||
| 14 | + Date: 07/02/2023 22:00:03 | ||
| 15 | +*/ | ||
| 16 | + | ||
| 17 | +SET NAMES utf8mb4; | ||
| 18 | +SET FOREIGN_KEY_CHECKS = 0; | ||
| 19 | + | ||
| 20 | +-- ---------------------------- | ||
| 21 | +-- Table structure for report_go_view_project | ||
| 22 | +-- ---------------------------- | ||
| 23 | +DROP TABLE IF EXISTS `report_go_view_project`; | ||
| 24 | +CREATE TABLE `report_go_view_project` ( | ||
| 25 | + `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号', | ||
| 26 | + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '项目名称', | ||
| 27 | + `pic_url` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '预览图片 URL', | ||
| 28 | + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL COMMENT '报表内容', | ||
| 29 | + `status` tinyint NOT NULL COMMENT '发布状态', | ||
| 30 | + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT '项目备注', | ||
| 31 | + `creator` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '创建者', | ||
| 32 | + `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', | ||
| 33 | + `updater` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT '' COMMENT '更新者', | ||
| 34 | + `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', | ||
| 35 | + `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', | ||
| 36 | + `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号', | ||
| 37 | + PRIMARY KEY (`id`) USING BTREE | ||
| 38 | +) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = 'GoView 项目表'; | ||
| 39 | + | ||
| 40 | +-- ---------------------------- | ||
| 41 | +-- Records of report_go_view_project | ||
| 42 | +-- ---------------------------- | ||
| 43 | +BEGIN; | ||
| 44 | +INSERT INTO `report_go_view_project` (`id`, `name`, `pic_url`, `content`, `status`, `remark`, `creator`, `create_time`, `updater`, `update_time`, `deleted`, `tenant_id`) VALUES (6, 'HTTP示例', 'http://test.yudao.iocoder.cn/7c0cb26b09cfa97cae0b3e5d19b210978eed0ab184dd0bff1b66b3daf70a01fc.png', '{\n \"editCanvasConfig\": {\n \"projectName\": \"HTTP示例\",\n \"width\": 1920,\n \"height\": 1080,\n \"filterShow\": false,\n \"hueRotate\": 0,\n \"saturate\": 1,\n \"contrast\": 1,\n \"brightness\": 1,\n \"opacity\": 1,\n \"rotateZ\": 0,\n \"rotateX\": 0,\n \"rotateY\": 0,\n \"skewX\": 0,\n \"skewY\": 0,\n \"blendMode\": \"normal\",\n \"background\": null,\n \"backgroundImage\": null,\n \"selectColor\": true,\n \"chartThemeColor\": \"dark\",\n \"chartThemeSetting\": {\n \"title\": {\n \"show\": true,\n \"textStyle\": {\n \"color\": \"#BFBFBF\",\n \"fontSize\": 18\n },\n \"subtextStyle\": {\n \"color\": \"#A2A2A2\",\n \"fontSize\": 14\n }\n },\n \"xAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"bottom\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": false,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n }\n },\n \"yAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"left\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n }\n },\n \"legend\": {\n \"show\": true,\n \"top\": \"5%\",\n \"textStyle\": {\n \"color\": \"#B9B8CE\"\n }\n },\n \"grid\": {\n \"show\": false,\n \"left\": \"10%\",\n \"top\": \"60\",\n \"right\": \"10%\",\n \"bottom\": \"60\"\n },\n \"dataset\": null\n },\n \"previewScaleType\": \"fit\"\n },\n \"componentList\": [\n {\n \"id\": \"4vxgys8nh6g000\",\n \"isGroup\": false,\n \"attr\": {\n \"x\": 7,\n \"y\": 11,\n \"w\": 1898,\n \"h\": 1066,\n \"offsetX\": 0,\n \"offsetY\": 0,\n \"zIndex\": -1\n },\n \"styles\": {\n \"filterShow\": false,\n \"hueRotate\": 0,\n \"saturate\": 1,\n \"contrast\": 1,\n \"brightness\": 1,\n \"opacity\": 1,\n \"rotateZ\": 0,\n \"rotateX\": 0,\n \"rotateY\": 0,\n \"skewX\": 0,\n \"skewY\": 0,\n \"blendMode\": \"normal\",\n \"animations\": []\n },\n \"status\": {\n \"lock\": false,\n \"hide\": false\n },\n \"request\": {\n \"requestDataType\": 1,\n \"requestHttpType\": \"get\",\n \"requestUrl\": \"http://127.0.0.1:48080/admin-api/report/go-view/data/get-by-http\",\n \"requestInterval\": null,\n \"requestIntervalUnit\": \"second\",\n \"requestContentType\": 0,\n \"requestParamsBodyType\": \"none\",\n \"requestSQLContent\": {\n \"sql\": \"select * from where\"\n },\n \"requestParams\": {\n \"Body\": {\n \"form-data\": {},\n \"x-www-form-urlencoded\": {},\n \"json\": \"\",\n \"xml\": \"\"\n },\n \"Header\": {},\n \"Params\": {}\n }\n },\n \"filter\": null,\n \"events\": {\n \"baseEvent\": {\n \"click\": null,\n \"dblclick\": null,\n \"mouseenter\": null,\n \"mouseleave\": null\n },\n \"advancedEvents\": {\n \"vnodeMounted\": null,\n \"vnodeBeforeMount\": null\n }\n },\n \"key\": \"LineCommon\",\n \"chartConfig\": {\n \"key\": \"LineCommon\",\n \"chartKey\": \"VLineCommon\",\n \"conKey\": \"VCLineCommon\",\n \"title\": \"折线图\",\n \"category\": \"Lines\",\n \"categoryName\": \"折线图\",\n \"package\": \"Charts\",\n \"chartFrame\": \"echarts\",\n \"image\": \"line.png\"\n },\n \"option\": {\n \"legend\": {\n \"show\": true,\n \"top\": \"5%\",\n \"textStyle\": {\n \"color\": \"#B9B8CE\"\n }\n },\n \"xAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"bottom\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": false,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n },\n \"type\": \"category\"\n },\n \"yAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"left\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n },\n \"type\": \"value\"\n },\n \"grid\": {\n \"show\": false,\n \"left\": \"10%\",\n \"top\": \"60\",\n \"right\": \"10%\",\n \"bottom\": \"60\"\n },\n \"tooltip\": {\n \"show\": true,\n \"trigger\": \"axis\",\n \"axisPointer\": {\n \"type\": \"line\"\n }\n },\n \"dataset\": {\n \"dimensions\": [\n \"日期\",\n \"PV\",\n \"UV\"\n ],\n \"source\": [\n {\n \"UV\": 518,\n \"日期\": \"2021-01\",\n \"PV\": 7954\n },\n {\n \"UV\": 135,\n \"日期\": \"2021-02\",\n \"PV\": 9402\n },\n {\n \"UV\": 905,\n \"日期\": \"2021-03\",\n \"PV\": 1665\n },\n {\n \"UV\": 157,\n \"日期\": \"2021-04\",\n \"PV\": 2633\n },\n {\n \"UV\": 849,\n \"日期\": \"2021-05\",\n \"PV\": 7650\n },\n {\n \"UV\": 563,\n \"日期\": \"2021-06\",\n \"PV\": 2399\n },\n {\n \"UV\": 427,\n \"日期\": \"2021-07\",\n \"PV\": 9952\n },\n {\n \"UV\": 158,\n \"日期\": \"2021-08\",\n \"PV\": 9232\n },\n {\n \"UV\": 894,\n \"日期\": \"2021-09\",\n \"PV\": 3013\n },\n {\n \"UV\": 343,\n \"日期\": \"2021-10\",\n \"PV\": 6181\n },\n {\n \"UV\": 294,\n \"日期\": \"2021-11\",\n \"PV\": 8949\n },\n {\n \"UV\": 452,\n \"日期\": \"2021-12\",\n \"PV\": 8730\n }\n ]\n },\n \"series\": [\n {\n \"type\": \"line\",\n \"label\": {\n \"show\": true,\n \"position\": \"top\",\n \"color\": \"#fff\",\n \"fontSize\": 12\n },\n \"symbolSize\": 5,\n \"itemStyle\": {\n \"color\": null,\n \"borderRadius\": 0\n },\n \"lineStyle\": {\n \"type\": \"solid\",\n \"width\": 3,\n \"color\": null\n }\n },\n {\n \"type\": \"line\",\n \"label\": {\n \"show\": true,\n \"position\": \"top\",\n \"color\": \"#fff\",\n \"fontSize\": 12\n },\n \"symbolSize\": 5,\n \"itemStyle\": {\n \"color\": null,\n \"borderRadius\": 0\n },\n \"lineStyle\": {\n \"type\": \"solid\",\n \"width\": 3,\n \"color\": null\n }\n }\n ],\n \"backgroundColor\": \"rgba(0,0,0,0)\"\n }\n }\n ],\n \"requestGlobalConfig\": {\n \"requestDataPond\": [],\n \"requestOriginUrl\": \"\",\n \"requestInterval\": 30,\n \"requestIntervalUnit\": \"second\",\n \"requestParams\": {\n \"Body\": {\n \"form-data\": {},\n \"x-www-form-urlencoded\": {},\n \"json\": \"\",\n \"xml\": \"\"\n },\n \"Header\": {},\n \"Params\": {}\n }\n }\n}', 0, NULL, '1', '2023-02-07 11:38:22', '1', '2023-02-07 17:27:43', b'0', 1), (7, 'SQL示例', 'http://test.yudao.iocoder.cn/c1f570bad6ec7e7fa4a0a7c8f563da4ea158fde6e731da4dd1abe8ba9b6baeed.png', '{\n \"editCanvasConfig\": {\n \"projectName\": \"SQL示例\",\n \"width\": 1920,\n \"height\": 1080,\n \"filterShow\": false,\n \"hueRotate\": 0,\n \"saturate\": 1,\n \"contrast\": 1,\n \"brightness\": 1,\n \"opacity\": 1,\n \"rotateZ\": 0,\n \"rotateX\": 0,\n \"rotateY\": 0,\n \"skewX\": 0,\n \"skewY\": 0,\n \"blendMode\": \"normal\",\n \"background\": null,\n \"backgroundImage\": null,\n \"selectColor\": true,\n \"chartThemeColor\": \"dark\",\n \"chartThemeSetting\": {\n \"title\": {\n \"show\": true,\n \"textStyle\": {\n \"color\": \"#BFBFBF\",\n \"fontSize\": 18\n },\n \"subtextStyle\": {\n \"color\": \"#A2A2A2\",\n \"fontSize\": 14\n }\n },\n \"xAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"bottom\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": false,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n }\n },\n \"yAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"left\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n }\n },\n \"legend\": {\n \"show\": true,\n \"top\": \"5%\",\n \"textStyle\": {\n \"color\": \"#B9B8CE\"\n }\n },\n \"grid\": {\n \"show\": false,\n \"left\": \"10%\",\n \"top\": \"60\",\n \"right\": \"10%\",\n \"bottom\": \"60\"\n },\n \"dataset\": null\n },\n \"previewScaleType\": \"fit\"\n },\n \"componentList\": [\n {\n \"id\": \"5cqrghfle9g000\",\n \"isGroup\": false,\n \"attr\": {\n \"x\": 27,\n \"y\": 3,\n \"w\": 1870,\n \"h\": 1051,\n \"offsetX\": 0,\n \"offsetY\": 0,\n \"zIndex\": -1\n },\n \"styles\": {\n \"filterShow\": false,\n \"hueRotate\": 0,\n \"saturate\": 1,\n \"contrast\": 1,\n \"brightness\": 1,\n \"opacity\": 1,\n \"rotateZ\": 0,\n \"rotateX\": 0,\n \"rotateY\": 0,\n \"skewX\": 0,\n \"skewY\": 0,\n \"blendMode\": \"normal\",\n \"animations\": [\n \"headShake\"\n ]\n },\n \"status\": {\n \"lock\": false,\n \"hide\": false\n },\n \"request\": {\n \"requestDataType\": 1,\n \"requestHttpType\": \"post\",\n \"requestUrl\": \"http://127.0.0.1:48080/admin-api/report/go-view/data/get-by-sql\",\n \"requestInterval\": null,\n \"requestIntervalUnit\": \"second\",\n \"requestContentType\": 0,\n \"requestParamsBodyType\": \"none\",\n \"requestSQLContent\": {\n \"sql\": \"SELECT DATE_FORMAT(create_time, \\\"%Y-%m\\\") AS time, COUNT(*) AS \'次数\', COUNT(DISTINCT(user_id)) AS \'人数\' FROM system_login_log GROUP BY DATE_FORMAT(create_time, \\\"%Y-%m\\\")\"\n },\n \"requestParams\": {\n \"Body\": {\n \"form-data\": {},\n \"x-www-form-urlencoded\": {},\n \"json\": \"\",\n \"xml\": \"\"\n },\n \"Header\": {},\n \"Params\": {}\n }\n },\n \"filter\": null,\n \"events\": {\n \"baseEvent\": {\n \"click\": null,\n \"dblclick\": null,\n \"mouseenter\": null,\n \"mouseleave\": null\n },\n \"advancedEvents\": {\n \"vnodeMounted\": null,\n \"vnodeBeforeMount\": null\n }\n },\n \"key\": \"LineCommon\",\n \"chartConfig\": {\n \"key\": \"LineCommon\",\n \"chartKey\": \"VLineCommon\",\n \"conKey\": \"VCLineCommon\",\n \"title\": \"折线图\",\n \"category\": \"Lines\",\n \"categoryName\": \"折线图\",\n \"package\": \"Charts\",\n \"chartFrame\": \"echarts\",\n \"image\": \"line.png\"\n },\n \"option\": {\n \"legend\": {\n \"show\": true,\n \"top\": \"5%\",\n \"textStyle\": {\n \"color\": \"#B9B8CE\"\n }\n },\n \"xAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"bottom\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": false,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n },\n \"type\": \"category\"\n },\n \"yAxis\": {\n \"show\": true,\n \"name\": \"\",\n \"nameGap\": 15,\n \"nameTextStyle\": {\n \"color\": \"#B9B8CE\",\n \"fontSize\": 12\n },\n \"inverse\": false,\n \"axisLabel\": {\n \"show\": true,\n \"fontSize\": 12,\n \"color\": \"#B9B8CE\",\n \"rotate\": 0\n },\n \"position\": \"left\",\n \"axisLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#B9B8CE\",\n \"width\": 1\n },\n \"onZero\": true\n },\n \"axisTick\": {\n \"show\": true,\n \"length\": 5\n },\n \"splitLine\": {\n \"show\": true,\n \"lineStyle\": {\n \"color\": \"#484753\",\n \"width\": 1,\n \"type\": \"solid\"\n }\n },\n \"type\": \"value\"\n },\n \"grid\": {\n \"show\": false,\n \"left\": \"10%\",\n \"top\": \"60\",\n \"right\": \"10%\",\n \"bottom\": \"60\"\n },\n \"tooltip\": {\n \"show\": true,\n \"trigger\": \"axis\",\n \"axisPointer\": {\n \"type\": \"line\"\n }\n },\n \"dataset\": {\n \"dimensions\": [\n \"time\",\n \"次数\",\n \"人数\"\n ],\n \"source\": [\n {\n \"次数\": 94,\n \"time\": \"2022-05\",\n \"人数\": 5\n },\n {\n \"次数\": 120,\n \"time\": \"2022-06\",\n \"人数\": 2\n },\n {\n \"次数\": 118,\n \"time\": \"2022-07\",\n \"人数\": 5\n },\n {\n \"次数\": 37,\n \"time\": \"2022-08\",\n \"人数\": 2\n },\n {\n \"次数\": 65,\n \"time\": \"2022-09\",\n \"人数\": 2\n },\n {\n \"次数\": 35,\n \"time\": \"2022-10\",\n \"人数\": 2\n },\n {\n \"次数\": 86,\n \"time\": \"2022-11\",\n \"人数\": 1\n },\n {\n \"次数\": 49,\n \"time\": \"2022-12\",\n \"人数\": 3\n },\n {\n \"次数\": 45,\n \"time\": \"2023-01\",\n \"人数\": 1\n },\n {\n \"次数\": 70,\n \"time\": \"2023-02\",\n \"人数\": 1\n }\n ]\n },\n \"series\": [\n {\n \"type\": \"line\",\n \"label\": {\n \"show\": true,\n \"position\": \"top\",\n \"color\": \"#fff\",\n \"fontSize\": 12\n },\n \"symbolSize\": 5,\n \"itemStyle\": {\n \"color\": null,\n \"borderRadius\": 0\n },\n \"lineStyle\": {\n \"type\": \"solid\",\n \"width\": 3,\n \"color\": null\n }\n },\n {\n \"type\": \"line\",\n \"label\": {\n \"show\": true,\n \"position\": \"top\",\n \"color\": \"#fff\",\n \"fontSize\": 12\n },\n \"symbolSize\": 5,\n \"itemStyle\": {\n \"color\": null,\n \"borderRadius\": 0\n },\n \"lineStyle\": {\n \"type\": \"solid\",\n \"width\": 3,\n \"color\": null\n }\n }\n ],\n \"backgroundColor\": \"rgba(0,0,0,0)\"\n }\n }\n ],\n \"requestGlobalConfig\": {\n \"requestDataPond\": [],\n \"requestOriginUrl\": \"\",\n \"requestInterval\": 30,\n \"requestIntervalUnit\": \"second\",\n \"requestParams\": {\n \"Body\": {\n \"form-data\": {},\n \"x-www-form-urlencoded\": {},\n \"json\": \"\",\n \"xml\": \"\"\n },\n \"Header\": {},\n \"Params\": {}\n }\n }\n}', 0, NULL, '1', '2023-02-07 11:43:57', '1', '2023-02-07 17:27:40', b'0', 1), (8, '57q2gor533g000', NULL, NULL, 1, NULL, '1', '2023-02-07 19:27:09', '1', '2023-02-07 19:27:09', b'0', 1); | ||
| 45 | +COMMIT; | ||
| 46 | + | ||
| 47 | +SET FOREIGN_KEY_CHECKS = 1; |
yudao-framework/yudao-common/src/main/java/cn/iocoder/yudao/framework/common/exception/enums/ServiceErrorCodeRange.java
| @@ -31,6 +31,7 @@ public class ServiceErrorCodeRange { | @@ -31,6 +31,7 @@ public class ServiceErrorCodeRange { | ||
| 31 | 31 | ||
| 32 | // 模块 infra 错误码区间 [1-001-000-000 ~ 1-002-000-000) | 32 | // 模块 infra 错误码区间 [1-001-000-000 ~ 1-002-000-000) |
| 33 | // 模块 system 错误码区间 [1-002-000-000 ~ 1-003-000-000) | 33 | // 模块 system 错误码区间 [1-002-000-000 ~ 1-003-000-000) |
| 34 | + // 模块 report 错误码区间 [1-003-000-000 ~ 1-004-000-000) | ||
| 34 | // 模块 member 错误码区间 [1-004-000-000 ~ 1-005-000-000) | 35 | // 模块 member 错误码区间 [1-004-000-000 ~ 1-005-000-000) |
| 35 | // 模块 pay 错误码区间 [1-007-000-000 ~ 1-008-000-000) | 36 | // 模块 pay 错误码区间 [1-007-000-000 ~ 1-008-000-000) |
| 36 | // 模块 bpm 错误码区间 [1-009-000-000 ~ 1-010-000-000) | 37 | // 模块 bpm 错误码区间 [1-009-000-000 ~ 1-010-000-000) |
yudao-framework/yudao-spring-boot-starter-banner/src/main/java/cn/iocoder/yudao/framework/banner/core/BannerApplicationRunner.java
| @@ -33,8 +33,8 @@ public class BannerApplicationRunner implements ApplicationRunner { | @@ -33,8 +33,8 @@ public class BannerApplicationRunner implements ApplicationRunner { | ||
| 33 | "https://t.zsxq.com/02B6ujIee"); | 33 | "https://t.zsxq.com/02B6ujIee"); |
| 34 | 34 | ||
| 35 | // 数据报表 | 35 | // 数据报表 |
| 36 | - if (isNotPresent("cn.iocoder.yudao.module.visualization.framework.security.config.SecurityConfiguration")) { | ||
| 37 | - System.out.println("[报表模块 yudao-module-visualization - 已禁用][参考 https://doc.iocoder.cn/report/ 开启]"); | 36 | + if (isNotPresent("cn.iocoder.yudao.module.report.framework.security.config.SecurityConfiguration")) { |
| 37 | + System.out.println("[报表模块 yudao-module-report - 已禁用][参考 https://doc.iocoder.cn/report/ 开启]"); | ||
| 38 | } | 38 | } |
| 39 | // 工作流 | 39 | // 工作流 |
| 40 | if (isNotPresent("cn.iocoder.yudao.framework.flowable.config.YudaoFlowableConfiguration")) { | 40 | if (isNotPresent("cn.iocoder.yudao.framework.flowable.config.YudaoFlowableConfiguration")) { |
| @@ -44,9 +44,9 @@ public class BannerApplicationRunner implements ApplicationRunner { | @@ -44,9 +44,9 @@ public class BannerApplicationRunner implements ApplicationRunner { | ||
| 44 | if (isNotPresent("cn.iocoder.yudao.module.mp.framework.mp.config.MpConfiguration")) { | 44 | if (isNotPresent("cn.iocoder.yudao.module.mp.framework.mp.config.MpConfiguration")) { |
| 45 | System.out.println("[微信公众号 yudao-module-mp - 已禁用][参考 https://doc.iocoder.cn/mp/build/ 开启]"); | 45 | System.out.println("[微信公众号 yudao-module-mp - 已禁用][参考 https://doc.iocoder.cn/mp/build/ 开启]"); |
| 46 | } | 46 | } |
| 47 | - // 微信公众号 | 47 | + // 商城 |
| 48 | if (isNotPresent("cn.iocoder.yudao.module.trade.framework.web.config.TradeWebConfiguration")) { | 48 | if (isNotPresent("cn.iocoder.yudao.module.trade.framework.web.config.TradeWebConfiguration")) { |
| 49 | - System.out.println("[商城 yudao-module-mall - 已禁用][参考 https://doc.iocoder.cn/mall/build/ 开启]"); | 49 | + System.out.println("[商城系统 yudao-module-mall - 已禁用][参考 https://doc.iocoder.cn/mall/build/ 开启]"); |
| 50 | } | 50 | } |
| 51 | }); | 51 | }); |
| 52 | } | 52 | } |
yudao-module-visualization/pom.xml renamed to yudao-module-report/pom.xml
| @@ -9,15 +9,15 @@ | @@ -9,15 +9,15 @@ | ||
| 9 | </parent> | 9 | </parent> |
| 10 | <modelVersion>4.0.0</modelVersion> | 10 | <modelVersion>4.0.0</modelVersion> |
| 11 | <modules> | 11 | <modules> |
| 12 | - <module>yudao-module-visualization-api</module> | ||
| 13 | - <module>yudao-module-visualization-biz</module> | 12 | + <module>yudao-module-report-api</module> |
| 13 | + <module>yudao-module-report-biz</module> | ||
| 14 | </modules> | 14 | </modules> |
| 15 | - <artifactId>yudao-module-visualization</artifactId> | 15 | + <artifactId>yudao-module-report</artifactId> |
| 16 | <packaging>pom</packaging> | 16 | <packaging>pom</packaging> |
| 17 | 17 | ||
| 18 | <name>${project.artifactId}</name> | 18 | <name>${project.artifactId}</name> |
| 19 | <description> | 19 | <description> |
| 20 | - visualization 模块,主要实现数据可视化报表等功能。 | 20 | + report 模块,主要实现数据可视化报表等功能。 |
| 21 | </description> | 21 | </description> |
| 22 | 22 | ||
| 23 | -</project> | ||
| 24 | \ No newline at end of file | 23 | \ No newline at end of file |
| 24 | +</project> |
yudao-module-visualization/yudao-module-visualization-api/pom.xml renamed to yudao-module-report/yudao-module-report-api/pom.xml
| @@ -4,17 +4,17 @@ | @@ -4,17 +4,17 @@ | ||
| 4 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | 4 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| 5 | <parent> | 5 | <parent> |
| 6 | <groupId>cn.iocoder.boot</groupId> | 6 | <groupId>cn.iocoder.boot</groupId> |
| 7 | - <artifactId>yudao-module-visualization</artifactId> | 7 | + <artifactId>yudao-module-report</artifactId> |
| 8 | <version>${revision}</version> | 8 | <version>${revision}</version> |
| 9 | </parent> | 9 | </parent> |
| 10 | <modelVersion>4.0.0</modelVersion> | 10 | <modelVersion>4.0.0</modelVersion> |
| 11 | 11 | ||
| 12 | - <artifactId>yudao-module-visualization-api</artifactId> | 12 | + <artifactId>yudao-module-report-api</artifactId> |
| 13 | <packaging>jar</packaging> | 13 | <packaging>jar</packaging> |
| 14 | 14 | ||
| 15 | <name>${project.artifactId}</name> | 15 | <name>${project.artifactId}</name> |
| 16 | <description> | 16 | <description> |
| 17 | - visualization 模块 API,暴露给其它模块调用 | 17 | + report 模块 API,暴露给其它模块调用 |
| 18 | </description> | 18 | </description> |
| 19 | 19 | ||
| 20 | <dependencies> | 20 | <dependencies> |
| @@ -23,4 +23,4 @@ | @@ -23,4 +23,4 @@ | ||
| 23 | <artifactId>yudao-common</artifactId> | 23 | <artifactId>yudao-common</artifactId> |
| 24 | </dependency> | 24 | </dependency> |
| 25 | </dependencies> | 25 | </dependencies> |
| 26 | -</project> | ||
| 27 | \ No newline at end of file | 26 | \ No newline at end of file |
| 27 | +</project> |
yudao-module-report/yudao-module-report-api/src/main/java/cn/iocoder/yudao/module/report/api/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-api/src/main/java/cn/iocoder/yudao/module/report/enums/ErrorCodeConstants.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.enums; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.exception.ErrorCode; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * Report 错误码枚举类 | ||
| 7 | + * | ||
| 8 | + * system 系统,使用 1-003-000-000 段 | ||
| 9 | + */ | ||
| 10 | +public interface ErrorCodeConstants { | ||
| 11 | + | ||
| 12 | + // ========== AUTH 模块 1003000000 ========== | ||
| 13 | + ErrorCode GO_VIEW_PROJECT_NOT_EXISTS = new ErrorCode(1003000000, "GoView 项目不存在"); | ||
| 14 | + | ||
| 15 | +} |
yudao-module-visualization/yudao-module-visualization-biz/pom.xml renamed to yudao-module-report/yudao-module-report-biz/pom.xml
| @@ -4,23 +4,23 @@ | @@ -4,23 +4,23 @@ | ||
| 4 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | 4 | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| 5 | <parent> | 5 | <parent> |
| 6 | <groupId>cn.iocoder.boot</groupId> | 6 | <groupId>cn.iocoder.boot</groupId> |
| 7 | - <artifactId>yudao-module-visualization</artifactId> | 7 | + <artifactId>yudao-module-report</artifactId> |
| 8 | <version>${revision}</version> | 8 | <version>${revision}</version> |
| 9 | </parent> | 9 | </parent> |
| 10 | <modelVersion>4.0.0</modelVersion> | 10 | <modelVersion>4.0.0</modelVersion> |
| 11 | 11 | ||
| 12 | - <artifactId>yudao-module-visualization-biz</artifactId> | 12 | + <artifactId>yudao-module-report-biz</artifactId> |
| 13 | <packaging>jar</packaging> | 13 | <packaging>jar</packaging> |
| 14 | 14 | ||
| 15 | <name>${project.artifactId}</name> | 15 | <name>${project.artifactId}</name> |
| 16 | <description> | 16 | <description> |
| 17 | - visualization 模块,主要实现数据可视化报表等功能: | 17 | + report 模块,主要实现数据可视化报表等功能: |
| 18 | 1. 基于「积木报表」实现,打印设计、报表设计、图形设计、大屏设计等。 | 18 | 1. 基于「积木报表」实现,打印设计、报表设计、图形设计、大屏设计等。 |
| 19 | </description> | 19 | </description> |
| 20 | <dependencies> | 20 | <dependencies> |
| 21 | <dependency> | 21 | <dependency> |
| 22 | <groupId>cn.iocoder.boot</groupId> | 22 | <groupId>cn.iocoder.boot</groupId> |
| 23 | - <artifactId>yudao-module-visualization-api</artifactId> | 23 | + <artifactId>yudao-module-report-api</artifactId> |
| 24 | <version>${revision}</version> | 24 | <version>${revision}</version> |
| 25 | </dependency> | 25 | </dependency> |
| 26 | 26 |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/ajreport/package-info.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.ajreport; |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/GoViewDataController.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview; | ||
| 2 | + | ||
| 3 | +import cn.hutool.core.map.MapUtil; | ||
| 4 | +import cn.hutool.core.util.RandomUtil; | ||
| 5 | +import cn.iocoder.yudao.framework.common.pojo.CommonResult; | ||
| 6 | +import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; | ||
| 7 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.data.GoViewDataGetBySqlReqVO; | ||
| 8 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.data.GoViewDataRespVO; | ||
| 9 | +import cn.iocoder.yudao.module.report.service.goview.GoViewDataService; | ||
| 10 | +import io.swagger.v3.oas.annotations.Operation; | ||
| 11 | +import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 12 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
| 13 | +import org.springframework.validation.annotation.Validated; | ||
| 14 | +import org.springframework.web.bind.annotation.RequestBody; | ||
| 15 | +import org.springframework.web.bind.annotation.RequestMapping; | ||
| 16 | +import org.springframework.web.bind.annotation.RequestParam; | ||
| 17 | +import org.springframework.web.bind.annotation.RestController; | ||
| 18 | + | ||
| 19 | +import javax.annotation.Resource; | ||
| 20 | +import javax.validation.Valid; | ||
| 21 | + | ||
| 22 | +import java.util.*; | ||
| 23 | + | ||
| 24 | +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | ||
| 25 | + | ||
| 26 | +@Tag(name = "管理后台 - GoView 数据", description = "提供 SQL、HTTP 等数据查询的能力") | ||
| 27 | +@RestController | ||
| 28 | +@RequestMapping("/report/go-view/data") | ||
| 29 | +@Validated | ||
| 30 | +public class GoViewDataController { | ||
| 31 | + | ||
| 32 | + @Resource | ||
| 33 | + private GoViewDataService goViewDataService; | ||
| 34 | + | ||
| 35 | + @RequestMapping("/get-by-sql") | ||
| 36 | + @Operation(summary = "使用 SQL 查询数据") | ||
| 37 | + @PreAuthorize("@ss.hasPermission('report:go-view-data:get-by-sql')") | ||
| 38 | + @OperateLog(enable = false) // 不记录操作日志,因为不需要 | ||
| 39 | + public CommonResult<GoViewDataRespVO> getDataBySQL(@Valid @RequestBody GoViewDataGetBySqlReqVO reqVO) { | ||
| 40 | + return success(goViewDataService.getDataBySQL(reqVO.getSql())); | ||
| 41 | + } | ||
| 42 | + | ||
| 43 | + @RequestMapping("/get-by-http") | ||
| 44 | + @Operation(summary = "使用 HTTP 查询数据", description = "这个只是示例接口,实际应该每个查询,都要写一个接口") | ||
| 45 | + @PreAuthorize("@ss.hasPermission('report:go-view-data:get-by-http')") | ||
| 46 | + @OperateLog(enable = false) // 不记录操作日志,因为不需要 | ||
| 47 | + public CommonResult<GoViewDataRespVO> getDataByHttp( | ||
| 48 | + @RequestParam(required = false) Map<String, String> params, | ||
| 49 | + @RequestBody(required = false) String body) { // params、body 按照需要去接收,这里仅仅是示例 | ||
| 50 | + GoViewDataRespVO respVO = new GoViewDataRespVO(); | ||
| 51 | + // 1. 数据维度 | ||
| 52 | + respVO.setDimensions(Arrays.asList("日期", "PV", "UV")); // PV 是每天访问次数;UV 是每天访问人数 | ||
| 53 | + // 2. 明细数据列表 | ||
| 54 | + // 目前通过随机的方式生成。一般来说,这里你可以写逻辑来实现数据的返回 | ||
| 55 | + respVO.setSource(new LinkedList<>()); | ||
| 56 | + for (int i = 1; i <= 12; i++) { | ||
| 57 | + String date = "2021-" + (i < 10 ? "0" + i : i); | ||
| 58 | + Integer pv = RandomUtil.randomInt(1000, 10000); | ||
| 59 | + Integer uv = RandomUtil.randomInt(100, 1000); | ||
| 60 | + respVO.getSource().add(MapUtil.<String, Object>builder().put("日期", date) | ||
| 61 | + .put("PV", pv).put("UV", uv).build()); | ||
| 62 | + } | ||
| 63 | + return success(respVO); | ||
| 64 | + } | ||
| 65 | + | ||
| 66 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/GoViewProjectController.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.pojo.CommonResult; | ||
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 5 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 6 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectCreateReqVO; | ||
| 7 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectRespVO; | ||
| 8 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectUpdateReqVO; | ||
| 9 | +import cn.iocoder.yudao.module.report.convert.goview.GoViewProjectConvert; | ||
| 10 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 11 | +import cn.iocoder.yudao.module.report.service.goview.GoViewProjectService; | ||
| 12 | +import io.swagger.v3.oas.annotations.Operation; | ||
| 13 | +import io.swagger.v3.oas.annotations.Parameter; | ||
| 14 | +import io.swagger.v3.oas.annotations.tags.Tag; | ||
| 15 | +import org.springframework.jdbc.core.JdbcTemplate; | ||
| 16 | +import org.springframework.security.access.prepost.PreAuthorize; | ||
| 17 | +import org.springframework.validation.annotation.Validated; | ||
| 18 | +import org.springframework.web.bind.annotation.*; | ||
| 19 | + | ||
| 20 | +import javax.annotation.Resource; | ||
| 21 | +import javax.validation.Valid; | ||
| 22 | + | ||
| 23 | +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; | ||
| 24 | +import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; | ||
| 25 | + | ||
| 26 | +@Tag(name = "管理后台 - GoView 项目") | ||
| 27 | +@RestController | ||
| 28 | +@RequestMapping("/report/go-view/project") | ||
| 29 | +@Validated | ||
| 30 | +public class GoViewProjectController { | ||
| 31 | + | ||
| 32 | + @Resource | ||
| 33 | + private GoViewProjectService goViewProjectService; | ||
| 34 | + | ||
| 35 | + @PostMapping("/create") | ||
| 36 | + @Operation(summary = "创建项目") | ||
| 37 | + @PreAuthorize("@ss.hasPermission('report:go-view-project:create')") | ||
| 38 | + public CommonResult<Long> createProject(@Valid @RequestBody GoViewProjectCreateReqVO createReqVO) { | ||
| 39 | + return success(goViewProjectService.createProject(createReqVO)); | ||
| 40 | + } | ||
| 41 | + | ||
| 42 | + @PutMapping("/update") | ||
| 43 | + @Operation(summary = "更新项目") | ||
| 44 | + @PreAuthorize("@ss.hasPermission('report:go-view-project:update')") | ||
| 45 | + public CommonResult<Boolean> updateProject(@Valid @RequestBody GoViewProjectUpdateReqVO updateReqVO) { | ||
| 46 | + goViewProjectService.updateProject(updateReqVO); | ||
| 47 | + return success(true); | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + @DeleteMapping("/delete") | ||
| 51 | + @Operation(summary = "删除 GoView 项目") | ||
| 52 | + @Parameter(name = "id", description = "编号", required = true, example = "1024") | ||
| 53 | + @PreAuthorize("@ss.hasPermission('report:go-view-project:delete')") | ||
| 54 | + public CommonResult<Boolean> deleteProject(@RequestParam("id") Long id) { | ||
| 55 | + goViewProjectService.deleteProject(id); | ||
| 56 | + return success(true); | ||
| 57 | + } | ||
| 58 | + | ||
| 59 | + @GetMapping("/get") | ||
| 60 | + @Operation(summary = "获得项目") | ||
| 61 | + @Parameter(name = "id", description = "编号", required = true, example = "1024") | ||
| 62 | + @PreAuthorize("@ss.hasPermission('report:go-view-project:query')") | ||
| 63 | + public CommonResult<GoViewProjectRespVO> getProject(@RequestParam("id") Long id) { | ||
| 64 | + GoViewProjectDO project = goViewProjectService.getProject(id); | ||
| 65 | + return success(GoViewProjectConvert.INSTANCE.convert(project)); | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | + @GetMapping("/my-page") | ||
| 69 | + @Operation(summary = "获得我的项目分页") | ||
| 70 | + @PreAuthorize("@ss.hasPermission('report:go-view-project:query')") | ||
| 71 | + public CommonResult<PageResult<GoViewProjectRespVO>> getMyProjectPage(@Valid PageParam pageVO) { | ||
| 72 | + PageResult<GoViewProjectDO> pageResult = goViewProjectService.getMyProjectPage( | ||
| 73 | + pageVO, getLoginUserId()); | ||
| 74 | + return success(GoViewProjectConvert.INSTANCE.convertPage(pageResult)); | ||
| 75 | + } | ||
| 76 | + | ||
| 77 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/vo/data/GoViewDataGetBySqlReqVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview.vo.data; | ||
| 2 | + | ||
| 3 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | +import lombok.Data; | ||
| 5 | + | ||
| 6 | +import javax.validation.constraints.NotEmpty; | ||
| 7 | + | ||
| 8 | +@Schema(description = "管理后台 - GoView 使用 SQL 查询数据 Request VO") | ||
| 9 | +@Data | ||
| 10 | +public class GoViewDataGetBySqlReqVO { | ||
| 11 | + | ||
| 12 | + @Schema(description = "SQL 语句", required = true, example = "SELECT * FROM user") | ||
| 13 | + @NotEmpty(message = "SQL 语句不能为空") | ||
| 14 | + private String sql; | ||
| 15 | + | ||
| 16 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/vo/data/GoViewDataRespVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview.vo.data; | ||
| 2 | + | ||
| 3 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | +import lombok.Data; | ||
| 5 | + | ||
| 6 | +import java.util.List; | ||
| 7 | +import java.util.Map; | ||
| 8 | + | ||
| 9 | +@Schema(description = "管理后台 - GoView 数据 Response VO") | ||
| 10 | +@Data | ||
| 11 | +public class GoViewDataRespVO { | ||
| 12 | + | ||
| 13 | + @Schema(description = "数据维度", required = true, example = "['product', 'data1', 'data2']") | ||
| 14 | + private List<String> dimensions; | ||
| 15 | + | ||
| 16 | + @Schema(description = "数据明细列表", required = true) | ||
| 17 | + private List<Map<String, Object>> source; | ||
| 18 | + | ||
| 19 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/vo/project/GoViewProjectCreateReqVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview.vo.project; | ||
| 2 | + | ||
| 3 | +import lombok.*; | ||
| 4 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 5 | +import javax.validation.constraints.*; | ||
| 6 | + | ||
| 7 | +@Schema(description = "管理后台 - GoView 项目创建 Request VO") | ||
| 8 | +@Data | ||
| 9 | +public class GoViewProjectCreateReqVO { | ||
| 10 | + | ||
| 11 | + @Schema(description = "项目名称", required = true, example = "王五") | ||
| 12 | + @NotEmpty(message = "项目名称不能为空") | ||
| 13 | + private String name; | ||
| 14 | + | ||
| 15 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/vo/project/GoViewProjectRespVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview.vo.project; | ||
| 2 | + | ||
| 3 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 4 | +import lombok.*; | ||
| 5 | + | ||
| 6 | +import java.time.LocalDateTime; | ||
| 7 | + | ||
| 8 | +@Schema(description = "管理后台 - GoView 项目 Response VO") | ||
| 9 | +@Data | ||
| 10 | +public class GoViewProjectRespVO { | ||
| 11 | + | ||
| 12 | + @Schema(description = "编号", required = true, example = "18993") | ||
| 13 | + private Long id; | ||
| 14 | + | ||
| 15 | + @Schema(description = "项目名称", required = true, example = "王五") | ||
| 16 | + private String name; | ||
| 17 | + | ||
| 18 | + @Schema(description = "发布状态", required = true, example = "1") | ||
| 19 | + private Integer status; | ||
| 20 | + | ||
| 21 | + @Schema(description = "报表内容") // JSON 格式 | ||
| 22 | + private String content; | ||
| 23 | + | ||
| 24 | + @Schema(description = "预览图片 URL", example = "https://www.iocoder.cn") | ||
| 25 | + private String picUrl; | ||
| 26 | + | ||
| 27 | + @Schema(description = "项目备注", example = "你猜") | ||
| 28 | + private String remark; | ||
| 29 | + | ||
| 30 | + @Schema(description = "创建人编号", required = true, example = "1024") | ||
| 31 | + private String creator; | ||
| 32 | + | ||
| 33 | + @Schema(description = "创建时间", required = true) | ||
| 34 | + private LocalDateTime createTime; | ||
| 35 | + | ||
| 36 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/admin/goview/vo/project/GoViewProjectUpdateReqVO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.controller.admin.goview.vo.project; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | +import cn.iocoder.yudao.framework.common.validation.InEnum; | ||
| 5 | +import io.swagger.v3.oas.annotations.media.Schema; | ||
| 6 | +import lombok.*; | ||
| 7 | + | ||
| 8 | +import javax.validation.constraints.*; | ||
| 9 | + | ||
| 10 | +@Schema(description = "管理后台 - GoView 项目更新 Request VO") | ||
| 11 | +@Data | ||
| 12 | +public class GoViewProjectUpdateReqVO { | ||
| 13 | + | ||
| 14 | + @Schema(description = "编号", required = true, example = "18993") | ||
| 15 | + @NotNull(message = "编号不能为空") | ||
| 16 | + private Long id; | ||
| 17 | + | ||
| 18 | + @Schema(description = "项目名称", required = true, example = "王五") | ||
| 19 | + private String name; | ||
| 20 | + | ||
| 21 | + @Schema(description = "发布状态", required = true, example = "1") | ||
| 22 | + @InEnum(value = CommonStatusEnum.class, message = "发布状态必须是 {value}") | ||
| 23 | + private Integer status; | ||
| 24 | + | ||
| 25 | + @Schema(description = "报表内容") // JSON 格式 | ||
| 26 | + private String content; | ||
| 27 | + | ||
| 28 | + @Schema(description = "预览图片 URL", example = "https://www.iocoder.cn") | ||
| 29 | + private String picUrl; | ||
| 30 | + | ||
| 31 | + @Schema(description = "项目备注", example = "你猜") | ||
| 32 | + private String remark; | ||
| 33 | + | ||
| 34 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/controller/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/convert/ajreport/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/convert/goview/GoViewProjectConvert.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.convert.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 4 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectCreateReqVO; | ||
| 5 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectRespVO; | ||
| 6 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectUpdateReqVO; | ||
| 7 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 8 | +import org.mapstruct.Mapper; | ||
| 9 | +import org.mapstruct.factory.Mappers; | ||
| 10 | + | ||
| 11 | +@Mapper | ||
| 12 | +public interface GoViewProjectConvert { | ||
| 13 | + | ||
| 14 | + GoViewProjectConvert INSTANCE = Mappers.getMapper(GoViewProjectConvert.class); | ||
| 15 | + | ||
| 16 | + GoViewProjectDO convert(GoViewProjectCreateReqVO bean); | ||
| 17 | + | ||
| 18 | + GoViewProjectDO convert(GoViewProjectUpdateReqVO bean); | ||
| 19 | + | ||
| 20 | + GoViewProjectRespVO convert(GoViewProjectDO bean); | ||
| 21 | + | ||
| 22 | + PageResult<GoViewProjectRespVO> convertPage(PageResult<GoViewProjectDO> page); | ||
| 23 | + | ||
| 24 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/dal/dataobject/ajreport/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/dal/dataobject/goview/GoViewProjectDO.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.dal.dataobject.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; | ||
| 4 | +import com.baomidou.mybatisplus.annotation.KeySequence; | ||
| 5 | +import com.baomidou.mybatisplus.annotation.TableId; | ||
| 6 | +import com.baomidou.mybatisplus.annotation.TableName; | ||
| 7 | +import lombok.*; | ||
| 8 | + | ||
| 9 | +/** | ||
| 10 | + * GoView 项目表 | ||
| 11 | + * | ||
| 12 | + * 每个大屏图标,对应一个项目 | ||
| 13 | + * | ||
| 14 | + * @author 芋道源码 | ||
| 15 | + */ | ||
| 16 | +@TableName(value = "report_go_view_project", autoResultMap = true) // 由于 SQL Server 的 system_user 是关键字,所以使用 system_users | ||
| 17 | +@KeySequence("report_go_view_project_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 | ||
| 18 | +@Data | ||
| 19 | +@EqualsAndHashCode(callSuper = true) | ||
| 20 | +@Builder | ||
| 21 | +@NoArgsConstructor | ||
| 22 | +@AllArgsConstructor | ||
| 23 | +public class GoViewProjectDO extends BaseDO { | ||
| 24 | + | ||
| 25 | + /** | ||
| 26 | + * 编号,数据库自增 | ||
| 27 | + */ | ||
| 28 | + @TableId | ||
| 29 | + private Long id; | ||
| 30 | + /** | ||
| 31 | + * 项目名称 | ||
| 32 | + */ | ||
| 33 | + private String name; | ||
| 34 | + /** | ||
| 35 | + * 预览图片 URL | ||
| 36 | + */ | ||
| 37 | + private String picUrl; | ||
| 38 | + /** | ||
| 39 | + * 报表内容 | ||
| 40 | + * | ||
| 41 | + * JSON 配置,使用字符串存储 | ||
| 42 | + */ | ||
| 43 | + private String content; | ||
| 44 | + /** | ||
| 45 | + * 发布状态 | ||
| 46 | + * | ||
| 47 | + * 0 - 已发布 | ||
| 48 | + * 1 - 未发布 | ||
| 49 | + * | ||
| 50 | + * 枚举 {@link cn.iocoder.yudao.framework.common.enums.CommonStatusEnum} | ||
| 51 | + */ | ||
| 52 | + private Integer status; | ||
| 53 | + /** | ||
| 54 | + * 项目备注 | ||
| 55 | + */ | ||
| 56 | + private String remark; | ||
| 57 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/dal/mysql/ajreport/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/dal/mysql/goview/GoViewProjectMapper.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.dal.mysql.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 5 | +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | ||
| 6 | +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | ||
| 7 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 8 | +import org.apache.ibatis.annotations.Mapper; | ||
| 9 | + | ||
| 10 | +@Mapper | ||
| 11 | +public interface GoViewProjectMapper extends BaseMapperX<GoViewProjectDO> { | ||
| 12 | + | ||
| 13 | + default PageResult<GoViewProjectDO> selectPage(PageParam reqVO, Long userId) { | ||
| 14 | + return selectPage(reqVO, new LambdaQueryWrapperX<GoViewProjectDO>() | ||
| 15 | + .eq(GoViewProjectDO::getCreator, userId) | ||
| 16 | + .orderByDesc(GoViewProjectDO::getId)); | ||
| 17 | + } | ||
| 18 | + | ||
| 19 | +} |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/jmreport/config/JmReportConfiguration.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/config/JmReportConfiguration.java
| 1 | -package cn.iocoder.yudao.module.visualization.framework.jmreport.config; | 1 | +package cn.iocoder.yudao.module.report.framework.jmreport.config; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.security.config.SecurityProperties; | 3 | import cn.iocoder.yudao.framework.security.config.SecurityProperties; |
| 4 | import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; | 4 | import cn.iocoder.yudao.module.system.api.oauth2.OAuth2TokenApi; |
| 5 | -import cn.iocoder.yudao.module.visualization.framework.jmreport.core.service.JmReportTokenServiceImpl; | 5 | +import cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmReportTokenServiceImpl; |
| 6 | import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; | 6 | import org.jeecg.modules.jmreport.api.JmReportTokenServiceI; |
| 7 | import org.springframework.context.annotation.Bean; | 7 | import org.springframework.context.annotation.Bean; |
| 8 | import org.springframework.context.annotation.ComponentScan; | 8 | import org.springframework.context.annotation.ComponentScan; |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/jmreport/core/service/JmReportTokenServiceImpl.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/core/service/JmReportTokenServiceImpl.java
| 1 | -package cn.iocoder.yudao.module.visualization.framework.jmreport.core.service; | 1 | +package cn.iocoder.yudao.module.report.framework.jmreport.core.service; |
| 2 | 2 | ||
| 3 | import cn.hutool.core.util.ObjectUtil; | 3 | import cn.hutool.core.util.ObjectUtil; |
| 4 | import cn.hutool.core.util.StrUtil; | 4 | import cn.hutool.core.util.StrUtil; |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/jmreport/core/web/package-info.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/jmreport/core/web/package-info.java
| 1 | /** | 1 | /** |
| 2 | - * 占位,后续会基于 Filter 实现积木报表的认证等功能,替代 {@link cn.iocoder.yudao.module.visualization.framework.jmreport.core.service.JmReportTokenServiceImpl} | 2 | + * 占位,后续会基于 Filter 实现积木报表的认证等功能,替代 {@link cn.iocoder.yudao.module.report.framework.jmreport.core.service.JmReportTokenServiceImpl} |
| 3 | */ | 3 | */ |
| 4 | -package cn.iocoder.yudao.module.visualization.framework.jmreport.core.web; | 4 | +package cn.iocoder.yudao.module.report.framework.jmreport.core.web; |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/package-info.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/package-info.java
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/security/config/SecurityConfiguration.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/security/config/SecurityConfiguration.java
| 1 | -package cn.iocoder.yudao.module.visualization.framework.security.config; | 1 | +package cn.iocoder.yudao.module.report.framework.security.config; |
| 2 | 2 | ||
| 3 | import cn.iocoder.yudao.framework.security.config.AuthorizeRequestsCustomizer; | 3 | import cn.iocoder.yudao.framework.security.config.AuthorizeRequestsCustomizer; |
| 4 | import org.springframework.context.annotation.Bean; | 4 | import org.springframework.context.annotation.Bean; |
| @@ -7,12 +7,12 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; | @@ -7,12 +7,12 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; | ||
| 7 | import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer; | 7 | import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer; |
| 8 | 8 | ||
| 9 | /** | 9 | /** |
| 10 | - * Visualization 模块的 Security 配置 | 10 | + * Report 模块的 Security 配置 |
| 11 | */ | 11 | */ |
| 12 | -@Configuration("visualizationSecurityConfiguration") | 12 | +@Configuration("reportSecurityConfiguration") |
| 13 | public class SecurityConfiguration { | 13 | public class SecurityConfiguration { |
| 14 | 14 | ||
| 15 | - @Bean("visualizationAuthorizeRequestsCustomizer") | 15 | + @Bean("reportAuthorizeRequestsCustomizer") |
| 16 | public AuthorizeRequestsCustomizer authorizeRequestsCustomizer() { | 16 | public AuthorizeRequestsCustomizer authorizeRequestsCustomizer() { |
| 17 | return new AuthorizeRequestsCustomizer() { | 17 | return new AuthorizeRequestsCustomizer() { |
| 18 | 18 |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/security/core/package-info.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/security/core/package-info.java
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/framework/ureport/package-info.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/framework/ureport/package-info.java
| @@ -4,4 +4,4 @@ | @@ -4,4 +4,4 @@ | ||
| 4 | * ureport2 和 jimurepot 是相同类型的产品,不过停更了,最好发布时间是 2018 年。 | 4 | * ureport2 和 jimurepot 是相同类型的产品,不过停更了,最好发布时间是 2018 年。 |
| 5 | * 它们之间的功能对比,可见 https://juejin.cn/post/6939836480269320200 地址 | 5 | * 它们之间的功能对比,可见 https://juejin.cn/post/6939836480269320200 地址 |
| 6 | */ | 6 | */ |
| 7 | -package cn.iocoder.yudao.module.visualization.framework.ureport; | 7 | +package cn.iocoder.yudao.module.report.framework.ureport; |
yudao-module-visualization/yudao-module-visualization-biz/src/main/java/cn/iocoder/yudao/module/visualization/package-info.java renamed to yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/package-info.java
| 1 | /** | 1 | /** |
| 2 | - * visualization 模块,主要实现数据可视化报表等功能: | 2 | + * report 模块,主要实现数据可视化报表等功能: |
| 3 | * 1. 基于「积木报表」实现,打印设计、报表设计、图形设计、大屏设计等。URL 前缀是 /jmreport,表名前缀是 jimu_ | 3 | * 1. 基于「积木报表」实现,打印设计、报表设计、图形设计、大屏设计等。URL 前缀是 /jmreport,表名前缀是 jimu_ |
| 4 | * | 4 | * |
| 5 | * 由于「积木报表」的大屏设计器需要收费,后续会自研,对应的是: | 5 | * 由于「积木报表」的大屏设计器需要收费,后续会自研,对应的是: |
| 6 | - * 1. Controller URL:以 /visualization/ 开头,避免和其它 Module 冲突 | ||
| 7 | - * 2. DataObject 表名:以 visualization_ 开头,方便在数据库中区分 | 6 | + * 1. Controller URL:以 /report/ 开头,避免和其它 Module 冲突 |
| 7 | + * 2. DataObject 表名:以 report_ 开头,方便在数据库中区分 | ||
| 8 | */ | 8 | */ |
| 9 | -package cn.iocoder.yudao.module.visualization; | 9 | +package cn.iocoder.yudao.module.report; |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/service/ajreport/package-info.java
0 → 100644
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/service/goview/GoViewDataService.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.data.GoViewDataRespVO; | ||
| 4 | + | ||
| 5 | +/** | ||
| 6 | + * GoView 数据 Service 接口 | ||
| 7 | + * | ||
| 8 | + * @author 芋道源码 | ||
| 9 | + */ | ||
| 10 | +public interface GoViewDataService { | ||
| 11 | + | ||
| 12 | + /** | ||
| 13 | + * 使用 SQL 查询数据 | ||
| 14 | + * | ||
| 15 | + * @param sql SQL 语句 | ||
| 16 | + * @return 数据 | ||
| 17 | + */ | ||
| 18 | + GoViewDataRespVO getDataBySQL(String sql); | ||
| 19 | + | ||
| 20 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/service/goview/GoViewDataServiceImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.data.GoViewDataRespVO; | ||
| 4 | +import com.google.common.collect.Maps; | ||
| 5 | +import org.springframework.jdbc.core.JdbcTemplate; | ||
| 6 | +import org.springframework.jdbc.support.rowset.SqlRowSet; | ||
| 7 | +import org.springframework.jdbc.support.rowset.SqlRowSetMetaData; | ||
| 8 | +import org.springframework.stereotype.Service; | ||
| 9 | +import org.springframework.validation.annotation.Validated; | ||
| 10 | + | ||
| 11 | +import javax.annotation.Resource; | ||
| 12 | +import java.util.Arrays; | ||
| 13 | +import java.util.LinkedList; | ||
| 14 | +import java.util.Map; | ||
| 15 | + | ||
| 16 | +/** | ||
| 17 | + * GoView 数据 Service 实现类 | ||
| 18 | + * | ||
| 19 | + * 补充说明: | ||
| 20 | + * 1. 目前默认使用 jdbcTemplate 查询项目配置的数据源。如果你想查询其它数据源,可以新建对应数据源的 jdbcTemplate 来实现。 | ||
| 21 | + * 2. 默认数据源是 MySQL 关系数据源,可能数据量比较大的情况下,会比较慢,可以考虑后续使用 Click House 等等。 | ||
| 22 | + * | ||
| 23 | + * @author 芋道源码 | ||
| 24 | + */ | ||
| 25 | +@Service | ||
| 26 | +@Validated | ||
| 27 | +public class GoViewDataServiceImpl implements GoViewDataService { | ||
| 28 | + | ||
| 29 | + @Resource | ||
| 30 | + private JdbcTemplate jdbcTemplate; | ||
| 31 | + | ||
| 32 | + @Override | ||
| 33 | + public GoViewDataRespVO getDataBySQL(String sql) { | ||
| 34 | + // 1. 执行查询 | ||
| 35 | + SqlRowSet sqlRowSet = jdbcTemplate.queryForRowSet(sql); | ||
| 36 | + | ||
| 37 | + // 2. 构建返回结果 | ||
| 38 | + GoViewDataRespVO respVO = new GoViewDataRespVO(); | ||
| 39 | + // 2.1 解析元数据 | ||
| 40 | + SqlRowSetMetaData metaData = sqlRowSet.getMetaData(); | ||
| 41 | + String[] columnNames = metaData.getColumnNames(); | ||
| 42 | + respVO.setDimensions(Arrays.asList(columnNames)); | ||
| 43 | + // 2.2 解析数据明细 | ||
| 44 | + respVO.setSource(new LinkedList<>()); // 由于数据量不确认,使用 LinkedList 虽然内存占用大一点,但是不存在扩容复制的问题 | ||
| 45 | + while (sqlRowSet.next()) { | ||
| 46 | + Map<String, Object> data = Maps.newHashMapWithExpectedSize(columnNames.length); | ||
| 47 | + for (String columnName : columnNames) { | ||
| 48 | + data.put(columnName, sqlRowSet.getObject(columnName)); | ||
| 49 | + } | ||
| 50 | + respVO.getSource().add(data); | ||
| 51 | + } | ||
| 52 | + return respVO; | ||
| 53 | + } | ||
| 54 | + | ||
| 55 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/service/goview/GoViewProjectService.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 5 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectCreateReqVO; | ||
| 6 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectUpdateReqVO; | ||
| 7 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 8 | + | ||
| 9 | +import javax.validation.Valid; | ||
| 10 | + | ||
| 11 | +/** | ||
| 12 | + * GoView 项目 Service 接口 | ||
| 13 | + * | ||
| 14 | + * @author 芋道源码 | ||
| 15 | + */ | ||
| 16 | +public interface GoViewProjectService { | ||
| 17 | + | ||
| 18 | + /** | ||
| 19 | + * 创建项目 | ||
| 20 | + * | ||
| 21 | + * @param createReqVO 创建信息 | ||
| 22 | + * @return 编号 | ||
| 23 | + */ | ||
| 24 | + Long createProject(@Valid GoViewProjectCreateReqVO createReqVO); | ||
| 25 | + | ||
| 26 | + /** | ||
| 27 | + * 更新项目 | ||
| 28 | + * | ||
| 29 | + * @param updateReqVO 更新信息 | ||
| 30 | + */ | ||
| 31 | + void updateProject(@Valid GoViewProjectUpdateReqVO updateReqVO); | ||
| 32 | + | ||
| 33 | + /** | ||
| 34 | + * 删除项目 | ||
| 35 | + * | ||
| 36 | + * @param id 编号 | ||
| 37 | + */ | ||
| 38 | + void deleteProject(Long id); | ||
| 39 | + | ||
| 40 | + /** | ||
| 41 | + * 获得项目 | ||
| 42 | + * | ||
| 43 | + * @param id 编号 | ||
| 44 | + * @return 项目 | ||
| 45 | + */ | ||
| 46 | + GoViewProjectDO getProject(Long id); | ||
| 47 | + | ||
| 48 | + /** | ||
| 49 | + * 获得我的项目分页 | ||
| 50 | + * | ||
| 51 | + * @param pageReqVO 分页查询 | ||
| 52 | + * @param userId 用户编号 | ||
| 53 | + * @return GoView 项目分页 | ||
| 54 | + */ | ||
| 55 | + PageResult<GoViewProjectDO> getMyProjectPage(PageParam pageReqVO, Long userId); | ||
| 56 | + | ||
| 57 | +} |
yudao-module-report/yudao-module-report-biz/src/main/java/cn/iocoder/yudao/module/report/service/goview/GoViewProjectServiceImpl.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum; | ||
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 5 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 6 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectCreateReqVO; | ||
| 7 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectUpdateReqVO; | ||
| 8 | +import cn.iocoder.yudao.module.report.convert.goview.GoViewProjectConvert; | ||
| 9 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 10 | +import cn.iocoder.yudao.module.report.dal.mysql.goview.GoViewProjectMapper; | ||
| 11 | +import org.springframework.stereotype.Service; | ||
| 12 | +import org.springframework.validation.annotation.Validated; | ||
| 13 | + | ||
| 14 | +import javax.annotation.Resource; | ||
| 15 | + | ||
| 16 | +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; | ||
| 17 | +import static cn.iocoder.yudao.module.report.enums.ErrorCodeConstants.GO_VIEW_PROJECT_NOT_EXISTS; | ||
| 18 | + | ||
| 19 | +/** | ||
| 20 | + * GoView 项目 Service 实现类 | ||
| 21 | + * | ||
| 22 | + * @author 芋道源码 | ||
| 23 | + */ | ||
| 24 | +@Service | ||
| 25 | +@Validated | ||
| 26 | +public class GoViewProjectServiceImpl implements GoViewProjectService { | ||
| 27 | + | ||
| 28 | + @Resource | ||
| 29 | + private GoViewProjectMapper goViewProjectMapper; | ||
| 30 | + | ||
| 31 | + @Override | ||
| 32 | + public Long createProject(GoViewProjectCreateReqVO createReqVO) { | ||
| 33 | + // 插入 | ||
| 34 | + GoViewProjectDO goViewProject = GoViewProjectConvert.INSTANCE.convert(createReqVO) | ||
| 35 | + .setStatus(CommonStatusEnum.DISABLE.getStatus()); | ||
| 36 | + goViewProjectMapper.insert(goViewProject); | ||
| 37 | + // 返回 | ||
| 38 | + return goViewProject.getId(); | ||
| 39 | + } | ||
| 40 | + | ||
| 41 | + @Override | ||
| 42 | + public void updateProject(GoViewProjectUpdateReqVO updateReqVO) { | ||
| 43 | + // 校验存在 | ||
| 44 | + validateProjectExists(updateReqVO.getId()); | ||
| 45 | + // 更新 | ||
| 46 | + GoViewProjectDO updateObj = GoViewProjectConvert.INSTANCE.convert(updateReqVO); | ||
| 47 | + goViewProjectMapper.updateById(updateObj); | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + @Override | ||
| 51 | + public void deleteProject(Long id) { | ||
| 52 | + // 校验存在 | ||
| 53 | + validateProjectExists(id); | ||
| 54 | + // 删除 | ||
| 55 | + goViewProjectMapper.deleteById(id); | ||
| 56 | + } | ||
| 57 | + | ||
| 58 | + private void validateProjectExists(Long id) { | ||
| 59 | + if (goViewProjectMapper.selectById(id) == null) { | ||
| 60 | + throw exception(GO_VIEW_PROJECT_NOT_EXISTS); | ||
| 61 | + } | ||
| 62 | + } | ||
| 63 | + | ||
| 64 | + @Override | ||
| 65 | + public GoViewProjectDO getProject(Long id) { | ||
| 66 | + return goViewProjectMapper.selectById(id); | ||
| 67 | + } | ||
| 68 | + | ||
| 69 | + @Override | ||
| 70 | + public PageResult<GoViewProjectDO> getMyProjectPage(PageParam pageReqVO, Long userId) { | ||
| 71 | + return goViewProjectMapper.selectPage(pageReqVO, userId); | ||
| 72 | + } | ||
| 73 | + | ||
| 74 | +} |
yudao-module-report/yudao-module-report-biz/src/test/java/cn/iocoder/yudao/module/report/service/goview/GoViewDataServiceImplTest.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | ||
| 4 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.data.GoViewDataRespVO; | ||
| 5 | +import org.junit.jupiter.api.Test; | ||
| 6 | +import org.springframework.boot.test.mock.mockito.MockBean; | ||
| 7 | +import org.springframework.context.annotation.Import; | ||
| 8 | +import org.springframework.jdbc.core.JdbcTemplate; | ||
| 9 | +import org.springframework.jdbc.support.rowset.SqlRowSet; | ||
| 10 | +import org.springframework.jdbc.support.rowset.SqlRowSetMetaData; | ||
| 11 | + | ||
| 12 | +import javax.annotation.Resource; | ||
| 13 | +import java.util.Arrays; | ||
| 14 | + | ||
| 15 | +import static org.junit.jupiter.api.Assertions.assertEquals; | ||
| 16 | +import static org.mockito.ArgumentMatchers.eq; | ||
| 17 | +import static org.mockito.Mockito.mock; | ||
| 18 | +import static org.mockito.Mockito.when; | ||
| 19 | + | ||
| 20 | +@Import(GoViewDataServiceImpl.class) | ||
| 21 | +public class GoViewDataServiceImplTest extends BaseDbUnitTest { | ||
| 22 | + | ||
| 23 | + @Resource | ||
| 24 | + private GoViewDataServiceImpl goViewDataService; | ||
| 25 | + | ||
| 26 | + @MockBean | ||
| 27 | + private JdbcTemplate jdbcTemplate; | ||
| 28 | + | ||
| 29 | + @Test | ||
| 30 | + public void testGetDataBySQL() { | ||
| 31 | + // 准备参数 | ||
| 32 | + String sql = "SELECT id, name FROM system_users"; | ||
| 33 | + // mock 方法 | ||
| 34 | + SqlRowSet sqlRowSet = mock(SqlRowSet.class); | ||
| 35 | + when(jdbcTemplate.queryForRowSet(eq(sql))).thenReturn(sqlRowSet); | ||
| 36 | + // mock 元数据 | ||
| 37 | + SqlRowSetMetaData metaData = mock(SqlRowSetMetaData.class); | ||
| 38 | + when(sqlRowSet.getMetaData()).thenReturn(metaData); | ||
| 39 | + when(metaData.getColumnNames()).thenReturn(new String[]{"id", "name"}); | ||
| 40 | + // mock 数据明细 | ||
| 41 | + when(sqlRowSet.next()).thenReturn(true).thenReturn(true).thenReturn(false); | ||
| 42 | + when(sqlRowSet.getObject("id")).thenReturn(1L).thenReturn(2L); | ||
| 43 | + when(sqlRowSet.getObject("name")).thenReturn("芋道源码").thenReturn("芋道"); | ||
| 44 | + | ||
| 45 | + // 调用 | ||
| 46 | + GoViewDataRespVO dataBySQL = goViewDataService.getDataBySQL(sql); | ||
| 47 | + // 断言 | ||
| 48 | + assertEquals(Arrays.asList("id", "name"), dataBySQL.getDimensions()); | ||
| 49 | + assertEquals(2, dataBySQL.getDimensions().size()); | ||
| 50 | + assertEquals(2, dataBySQL.getSource().get(0).size()); | ||
| 51 | + assertEquals(1L, dataBySQL.getSource().get(0).get("id")); | ||
| 52 | + assertEquals("芋道源码", dataBySQL.getSource().get(0).get("name")); | ||
| 53 | + assertEquals(2, dataBySQL.getSource().get(1).size()); | ||
| 54 | + assertEquals(2L, dataBySQL.getSource().get(1).get("id")); | ||
| 55 | + assertEquals("芋道", dataBySQL.getSource().get(1).get("name")); | ||
| 56 | + } | ||
| 57 | + | ||
| 58 | +} |
yudao-module-report/yudao-module-report-biz/src/test/java/cn/iocoder/yudao/module/report/service/goview/GoViewProjectServiceImplTest.java
0 → 100644
| 1 | +package cn.iocoder.yudao.module.report.service.goview; | ||
| 2 | + | ||
| 3 | +import cn.iocoder.yudao.framework.common.pojo.PageParam; | ||
| 4 | +import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||
| 5 | +import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest; | ||
| 6 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectCreateReqVO; | ||
| 7 | +import cn.iocoder.yudao.module.report.controller.admin.goview.vo.project.GoViewProjectUpdateReqVO; | ||
| 8 | +import cn.iocoder.yudao.module.report.dal.dataobject.goview.GoViewProjectDO; | ||
| 9 | +import cn.iocoder.yudao.module.report.dal.mysql.goview.GoViewProjectMapper; | ||
| 10 | +import org.junit.jupiter.api.Test; | ||
| 11 | +import org.springframework.context.annotation.Import; | ||
| 12 | + | ||
| 13 | +import javax.annotation.Resource; | ||
| 14 | + | ||
| 15 | +import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.cloneIgnoreId; | ||
| 16 | +import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals; | ||
| 17 | +import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException; | ||
| 18 | +import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*; | ||
| 19 | +import static cn.iocoder.yudao.module.report.enums.ErrorCodeConstants.GO_VIEW_PROJECT_NOT_EXISTS; | ||
| 20 | +import static org.junit.jupiter.api.Assertions.*; | ||
| 21 | + | ||
| 22 | +/** | ||
| 23 | + * {@link GoViewProjectServiceImpl} 的单元测试类 | ||
| 24 | + * | ||
| 25 | + * @author 芋道源码 | ||
| 26 | + */ | ||
| 27 | +@Import(GoViewProjectServiceImpl.class) | ||
| 28 | +public class GoViewProjectServiceImplTest extends BaseDbUnitTest { | ||
| 29 | + | ||
| 30 | + @Resource | ||
| 31 | + private GoViewProjectServiceImpl goViewProjectService; | ||
| 32 | + | ||
| 33 | + @Resource | ||
| 34 | + private GoViewProjectMapper goViewProjectMapper; | ||
| 35 | + | ||
| 36 | + @Test | ||
| 37 | + public void testCreateProject_success() { | ||
| 38 | + // 准备参数 | ||
| 39 | + GoViewProjectCreateReqVO reqVO = randomPojo(GoViewProjectCreateReqVO.class); | ||
| 40 | + | ||
| 41 | + // 调用 | ||
| 42 | + Long goViewProjectId = goViewProjectService.createProject(reqVO); | ||
| 43 | + // 断言 | ||
| 44 | + assertNotNull(goViewProjectId); | ||
| 45 | + // 校验记录的属性是否正确 | ||
| 46 | + GoViewProjectDO goViewProject = goViewProjectMapper.selectById(goViewProjectId); | ||
| 47 | + assertPojoEquals(reqVO, goViewProject); | ||
| 48 | + } | ||
| 49 | + | ||
| 50 | + @Test | ||
| 51 | + public void testUpdateProject_success() { | ||
| 52 | + // mock 数据 | ||
| 53 | + GoViewProjectDO dbGoViewProject = randomPojo(GoViewProjectDO.class); | ||
| 54 | + goViewProjectMapper.insert(dbGoViewProject);// @Sql: 先插入出一条存在的数据 | ||
| 55 | + // 准备参数 | ||
| 56 | + GoViewProjectUpdateReqVO reqVO = randomPojo(GoViewProjectUpdateReqVO.class, o -> { | ||
| 57 | + o.setId(dbGoViewProject.getId()); // 设置更新的 ID | ||
| 58 | + o.setStatus(randomCommonStatus()); | ||
| 59 | + }); | ||
| 60 | + | ||
| 61 | + // 调用 | ||
| 62 | + goViewProjectService.updateProject(reqVO); | ||
| 63 | + // 校验是否更新正确 | ||
| 64 | + GoViewProjectDO goViewProject = goViewProjectMapper.selectById(reqVO.getId()); // 获取最新的 | ||
| 65 | + assertPojoEquals(reqVO, goViewProject); | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | + @Test | ||
| 69 | + public void testUpdateProject_notExists() { | ||
| 70 | + // 准备参数 | ||
| 71 | + GoViewProjectUpdateReqVO reqVO = randomPojo(GoViewProjectUpdateReqVO.class); | ||
| 72 | + | ||
| 73 | + // 调用, 并断言异常 | ||
| 74 | + assertServiceException(() -> goViewProjectService.updateProject(reqVO), GO_VIEW_PROJECT_NOT_EXISTS); | ||
| 75 | + } | ||
| 76 | + | ||
| 77 | + @Test | ||
| 78 | + public void testDeleteProject_success() { | ||
| 79 | + // mock 数据 | ||
| 80 | + GoViewProjectDO dbGoViewProject = randomPojo(GoViewProjectDO.class); | ||
| 81 | + goViewProjectMapper.insert(dbGoViewProject);// @Sql: 先插入出一条存在的数据 | ||
| 82 | + // 准备参数 | ||
| 83 | + Long id = dbGoViewProject.getId(); | ||
| 84 | + | ||
| 85 | + // 调用 | ||
| 86 | + goViewProjectService.deleteProject(id); | ||
| 87 | + // 校验数据不存在了 | ||
| 88 | + assertNull(goViewProjectMapper.selectById(id)); | ||
| 89 | + } | ||
| 90 | + | ||
| 91 | + @Test | ||
| 92 | + public void testDeleteProject_notExists() { | ||
| 93 | + // 准备参数 | ||
| 94 | + Long id = randomLongId(); | ||
| 95 | + | ||
| 96 | + // 调用, 并断言异常 | ||
| 97 | + assertServiceException(() -> goViewProjectService.deleteProject(id), GO_VIEW_PROJECT_NOT_EXISTS); | ||
| 98 | + } | ||
| 99 | + | ||
| 100 | + @Test | ||
| 101 | + public void testGetProject() { | ||
| 102 | + // mock 数据 | ||
| 103 | + GoViewProjectDO dbGoViewProject = randomPojo(GoViewProjectDO.class); | ||
| 104 | + goViewProjectMapper.insert(dbGoViewProject);// @Sql: 先插入出一条存在的数据 | ||
| 105 | + // 准备参数 | ||
| 106 | + Long id = dbGoViewProject.getId(); | ||
| 107 | + | ||
| 108 | + // 调用 | ||
| 109 | + GoViewProjectDO goViewProject = goViewProjectService.getProject(id); | ||
| 110 | + // 断言 | ||
| 111 | + assertPojoEquals(dbGoViewProject, goViewProject); | ||
| 112 | + } | ||
| 113 | + | ||
| 114 | + @Test | ||
| 115 | + public void testGetMyGoViewProjectPage() { | ||
| 116 | + // mock 数据 | ||
| 117 | + GoViewProjectDO dbGoViewProject = randomPojo(GoViewProjectDO.class, o -> { // 等会查询到 | ||
| 118 | + o.setCreator("1"); | ||
| 119 | + }); | ||
| 120 | + goViewProjectMapper.insert(dbGoViewProject); | ||
| 121 | + // 测试 userId 不匹配 | ||
| 122 | + goViewProjectMapper.insert(cloneIgnoreId(dbGoViewProject, o -> o.setCreator("2"))); | ||
| 123 | + // 准备参数 | ||
| 124 | + PageParam reqVO = new PageParam(); | ||
| 125 | + Long userId = 1L; | ||
| 126 | + | ||
| 127 | + // 调用 | ||
| 128 | + PageResult<GoViewProjectDO> pageResult = goViewProjectService.getMyProjectPage(reqVO, userId); | ||
| 129 | + // 断言 | ||
| 130 | + assertEquals(1, pageResult.getTotal()); | ||
| 131 | + assertEquals(1, pageResult.getList().size()); | ||
| 132 | + assertPojoEquals(dbGoViewProject, pageResult.getList().get(0)); | ||
| 133 | + } | ||
| 134 | + | ||
| 135 | +} |
yudao-module-report/yudao-module-report-biz/src/test/resources/application-unit-test.yaml
0 → 100644
| 1 | +spring: | ||
| 2 | + main: | ||
| 3 | + lazy-initialization: true # 开启懒加载,加快速度 | ||
| 4 | + banner-mode: off # 单元测试,禁用 Banner | ||
| 5 | + | ||
| 6 | +--- #################### 数据库相关配置 #################### | ||
| 7 | + | ||
| 8 | +spring: | ||
| 9 | + # 数据源配置项 | ||
| 10 | + datasource: | ||
| 11 | + name: ruoyi-vue-pro | ||
| 12 | + url: jdbc:h2:mem:testdb;MODE=MYSQL;DATABASE_TO_UPPER=false;NON_KEYWORDS=value; # MODE 使用 MySQL 模式;DATABASE_TO_UPPER 配置表和字段使用小写 | ||
| 13 | + driver-class-name: org.h2.Driver | ||
| 14 | + username: sa | ||
| 15 | + password: | ||
| 16 | + druid: | ||
| 17 | + async-init: true # 单元测试,异步初始化 Druid 连接池,提升启动速度 | ||
| 18 | + initial-size: 1 # 单元测试,配置为 1,提升启动速度 | ||
| 19 | + sql: | ||
| 20 | + init: | ||
| 21 | + schema-locations: classpath:/sql/create_tables.sql | ||
| 22 | + | ||
| 23 | + # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优 | ||
| 24 | + redis: | ||
| 25 | + host: 127.0.0.1 # 地址 | ||
| 26 | + port: 16379 # 端口(单元测试,使用 16379 端口) | ||
| 27 | + database: 0 # 数据库索引 | ||
| 28 | + | ||
| 29 | + | ||
| 30 | +mybatis: | ||
| 31 | + lazy-initialization: true # 单元测试,设置 MyBatis Mapper 延迟加载,加速每个单元测试 | ||
| 32 | + | ||
| 33 | +--- #################### 定时任务相关配置 #################### | ||
| 34 | + | ||
| 35 | +--- #################### 配置中心相关配置 #################### | ||
| 36 | + | ||
| 37 | +--- #################### 服务保障相关配置 #################### | ||
| 38 | + | ||
| 39 | +# Lock4j 配置项(单元测试,禁用 Lock4j) | ||
| 40 | + | ||
| 41 | +# Resilience4j 配置项 | ||
| 42 | + | ||
| 43 | +--- #################### 监控相关配置 #################### | ||
| 44 | + | ||
| 45 | +--- #################### 芋道相关配置 #################### | ||
| 46 | + | ||
| 47 | +# 芋道配置项,设置当前项目所有自定义的配置 | ||
| 48 | +yudao: | ||
| 49 | + info: | ||
| 50 | + base-package: cn.iocoder.yudao.module | ||
| 51 | + captcha: | ||
| 52 | + timeout: 5m | ||
| 53 | + width: 160 | ||
| 54 | + height: 60 | ||
| 55 | + enable: true |
yudao-module-report/yudao-module-report-biz/src/test/resources/logback.xml
0 → 100644
yudao-module-report/yudao-module-report-biz/src/test/resources/sql/clean.sql
0 → 100644
| 1 | +DELETE FROM "report_go_view_project"; |
yudao-module-report/yudao-module-report-biz/src/test/resources/sql/create_tables.sql
0 → 100644
| 1 | +CREATE TABLE IF NOT EXISTS "report_go_view_project" ( | ||
| 2 | + "id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY, | ||
| 3 | + "name" varchar NOT NULL, | ||
| 4 | + "pic_url" varchar, | ||
| 5 | + "content" varchar, | ||
| 6 | + "status" varchar NOT NULL, | ||
| 7 | + "remark" varchar, | ||
| 8 | + "creator" varchar DEFAULT '', | ||
| 9 | + "create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
| 10 | + "updater" varchar DEFAULT '', | ||
| 11 | + "update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, | ||
| 12 | + "deleted" bit NOT NULL DEFAULT FALSE, | ||
| 13 | + PRIMARY KEY ("id") | ||
| 14 | +) COMMENT 'GoView 项目表'; |
yudao-server/pom.xml
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | <!-- 数据报表 --> | 44 | <!-- 数据报表 --> |
| 45 | <!-- <dependency>--> | 45 | <!-- <dependency>--> |
| 46 | <!-- <groupId>cn.iocoder.boot</groupId>--> | 46 | <!-- <groupId>cn.iocoder.boot</groupId>--> |
| 47 | -<!-- <artifactId>yudao-module-visualization-biz</artifactId>--> | 47 | +<!-- <artifactId>yudao-module-report-biz</artifactId>--> |
| 48 | <!-- <version>${revision}</version>--> | 48 | <!-- <version>${revision}</version>--> |
| 49 | <!-- </dependency>--> | 49 | <!-- </dependency>--> |
| 50 | <!-- 工作流 --> | 50 | <!-- 工作流 --> |
yudao-server/src/main/java/cn/iocoder/yudao/server/controller/DefaultController.java
| @@ -32,7 +32,14 @@ public class DefaultController { | @@ -32,7 +32,14 @@ public class DefaultController { | ||
| 32 | "/admin-api/promotion/**"}) // 营销中心 | 32 | "/admin-api/promotion/**"}) // 营销中心 |
| 33 | public CommonResult<Boolean> mall404() { | 33 | public CommonResult<Boolean> mall404() { |
| 34 | return CommonResult.error(NOT_IMPLEMENTED.getCode(), | 34 | return CommonResult.error(NOT_IMPLEMENTED.getCode(), |
| 35 | - "[商城 yudao-module-mp - 已禁用][参考 https://doc.iocoder.cn/mall/build/ 开启]"); | 35 | + "[商城系统 yudao-module-mall - 已禁用][参考 https://doc.iocoder.cn/mall/build/ 开启]"); |
| 36 | + } | ||
| 37 | + | ||
| 38 | + @RequestMapping(value = {"/admin-api/report/**", | ||
| 39 | + "/jmreport/**"}) | ||
| 40 | + public CommonResult<Boolean> report404() { | ||
| 41 | + return CommonResult.error(NOT_IMPLEMENTED.getCode(), | ||
| 42 | + "[报表模块 yudao-module-report - 已禁用][参考 https://doc.iocoder.cn/report/ 开启]"); | ||
| 36 | } | 43 | } |
| 37 | 44 | ||
| 38 | } | 45 | } |
yudao-ui-admin-vue3/.env.dev
| @@ -4,10 +4,10 @@ NODE_ENV=production | @@ -4,10 +4,10 @@ NODE_ENV=production | ||
| 4 | VITE_DEV=false | 4 | VITE_DEV=false |
| 5 | 5 | ||
| 6 | # 请求路径 | 6 | # 请求路径 |
| 7 | -VITE_BASE_URL='http://localhost:58080' | 7 | +VITE_BASE_URL='http://localhost:48080' |
| 8 | 8 | ||
| 9 | # 上传路径 | 9 | # 上传路径 |
| 10 | -VITE_UPLOAD_URL='http://localhost:58080/admin-api/infra/file/upload' | 10 | +VITE_UPLOAD_URL='http://localhost:48080/admin-api/infra/file/upload' |
| 11 | 11 | ||
| 12 | # 接口前缀 | 12 | # 接口前缀 |
| 13 | VITE_API_BASEPATH=/dev-api | 13 | VITE_API_BASEPATH=/dev-api |
yudao-ui-admin-vue3/.env.pro
| @@ -4,10 +4,10 @@ NODE_ENV=production | @@ -4,10 +4,10 @@ NODE_ENV=production | ||
| 4 | VITE_DEV=false | 4 | VITE_DEV=false |
| 5 | 5 | ||
| 6 | # 请求路径 | 6 | # 请求路径 |
| 7 | -VITE_BASE_URL='http://localhost:58080' | 7 | +VITE_BASE_URL='http://localhost:48080' |
| 8 | 8 | ||
| 9 | # 上传路径 | 9 | # 上传路径 |
| 10 | -VITE_UPLOAD_URL='http://localhost:58080/admin-api/infra/file/upload' | 10 | +VITE_UPLOAD_URL='http://localhost:48080/admin-api/infra/file/upload' |
| 11 | 11 | ||
| 12 | # 接口前缀 | 12 | # 接口前缀 |
| 13 | VITE_API_BASEPATH= | 13 | VITE_API_BASEPATH= |
yudao-ui-admin-vue3/.env.test
| @@ -4,10 +4,10 @@ NODE_ENV=production | @@ -4,10 +4,10 @@ NODE_ENV=production | ||
| 4 | VITE_DEV=false | 4 | VITE_DEV=false |
| 5 | 5 | ||
| 6 | # 请求路径 | 6 | # 请求路径 |
| 7 | -VITE_BASE_URL='http://localhost:58080' | 7 | +VITE_BASE_URL='http://localhost:48080' |
| 8 | 8 | ||
| 9 | # 上传路径 | 9 | # 上传路径 |
| 10 | -VITE_UPLOAD_URL='http://localhost:58080/admin-api/infra/file/upload' | 10 | +VITE_UPLOAD_URL='http://localhost:48080/admin-api/infra/file/upload' |
| 11 | 11 | ||
| 12 | # 接口前缀 | 12 | # 接口前缀 |
| 13 | VITE_API_BASEPATH= | 13 | VITE_API_BASEPATH= |
yudao-ui-admin-vue3/pnpm-lock.yaml
| 1 | -lockfileVersion: 5.4 | 1 | +lockfileVersion: 5.3 |
| 2 | 2 | ||
| 3 | specifiers: | 3 | specifiers: |
| 4 | '@commitlint/cli': ^17.4.2 | 4 | '@commitlint/cli': ^17.4.2 |
| @@ -103,7 +103,7 @@ dependencies: | @@ -103,7 +103,7 @@ dependencies: | ||
| 103 | '@iconify/iconify': 3.1.0 | 103 | '@iconify/iconify': 3.1.0 |
| 104 | '@vueuse/core': 9.12.0_vue@3.2.47 | 104 | '@vueuse/core': 9.12.0_vue@3.2.47 |
| 105 | '@wangeditor/editor': 5.1.23 | 105 | '@wangeditor/editor': 5.1.23 |
| 106 | - '@wangeditor/editor-for-vue': 5.1.12_77ywgcaevzgjoxs6yixvgo4fve | 106 | + '@wangeditor/editor-for-vue': 5.1.12_fff1630804ae4c975e5ec22f533b85a9 |
| 107 | '@zxcvbn-ts/core': 2.2.0 | 107 | '@zxcvbn-ts/core': 2.2.0 |
| 108 | animate.css: 4.1.1 | 108 | animate.css: 4.1.1 |
| 109 | axios: 1.3.2 | 109 | axios: 1.3.2 |
| @@ -124,7 +124,7 @@ dependencies: | @@ -124,7 +124,7 @@ dependencies: | ||
| 124 | min-dash: 4.0.0 | 124 | min-dash: 4.0.0 |
| 125 | mitt: 3.0.0 | 125 | mitt: 3.0.0 |
| 126 | nprogress: 0.2.0 | 126 | nprogress: 0.2.0 |
| 127 | - pinia: 2.0.30_hmuptsblhheur2tugfgucj7gc4 | 127 | + pinia: 2.0.30_typescript@4.9.5+vue@3.2.47 |
| 128 | qrcode: 1.5.1 | 128 | qrcode: 1.5.1 |
| 129 | qs: 6.11.0 | 129 | qs: 6.11.0 |
| 130 | steady-xml: 0.1.0 | 130 | steady-xml: 0.1.0 |
| @@ -151,8 +151,8 @@ devDependencies: | @@ -151,8 +151,8 @@ devDependencies: | ||
| 151 | '@types/nprogress': 0.2.0 | 151 | '@types/nprogress': 0.2.0 |
| 152 | '@types/qrcode': 1.5.0 | 152 | '@types/qrcode': 1.5.0 |
| 153 | '@types/qs': 6.9.7 | 153 | '@types/qs': 6.9.7 |
| 154 | - '@typescript-eslint/eslint-plugin': 5.50.0_go4drrxstycfikanvu45pi4vgq | ||
| 155 | - '@typescript-eslint/parser': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 | 154 | + '@typescript-eslint/eslint-plugin': 5.50.0_33b838c6f29e0454280dad39d7a39534 |
| 155 | + '@typescript-eslint/parser': 5.50.0_eslint@8.33.0+typescript@4.9.5 | ||
| 156 | '@vitejs/plugin-legacy': 4.0.1_terser@5.16.3+vite@4.1.1 | 156 | '@vitejs/plugin-legacy': 4.0.1_terser@5.16.3+vite@4.1.1 |
| 157 | '@vitejs/plugin-vue': 4.0.0_vite@4.1.1+vue@3.2.47 | 157 | '@vitejs/plugin-vue': 4.0.0_vite@4.1.1+vue@3.2.47 |
| 158 | '@vitejs/plugin-vue-jsx': 3.0.0_vite@4.1.1+vue@3.2.47 | 158 | '@vitejs/plugin-vue-jsx': 3.0.0_vite@4.1.1+vue@3.2.47 |
| @@ -163,7 +163,7 @@ devDependencies: | @@ -163,7 +163,7 @@ devDependencies: | ||
| 163 | eslint: 8.33.0 | 163 | eslint: 8.33.0 |
| 164 | eslint-config-prettier: 8.6.0_eslint@8.33.0 | 164 | eslint-config-prettier: 8.6.0_eslint@8.33.0 |
| 165 | eslint-define-config: 1.15.0 | 165 | eslint-define-config: 1.15.0 |
| 166 | - eslint-plugin-prettier: 4.2.1_jqplj6qf3uqpxpu4gdyhwwasnq | 166 | + eslint-plugin-prettier: 4.2.1_4c1eb4fa05dd20fbbe9c30f07b58126c |
| 167 | eslint-plugin-vue: 9.9.0_eslint@8.33.0 | 167 | eslint-plugin-vue: 9.9.0_eslint@8.33.0 |
| 168 | lint-staged: 13.1.0 | 168 | lint-staged: 13.1.0 |
| 169 | postcss: 8.4.21 | 169 | postcss: 8.4.21 |
| @@ -174,17 +174,17 @@ devDependencies: | @@ -174,17 +174,17 @@ devDependencies: | ||
| 174 | rollup: 3.14.0 | 174 | rollup: 3.14.0 |
| 175 | sass: 1.58.0 | 175 | sass: 1.58.0 |
| 176 | stylelint: 14.16.1 | 176 | stylelint: 14.16.1 |
| 177 | - stylelint-config-html: 1.1.0_kbto3rg3njmczth2rrsgfnlsqa | 177 | + stylelint-config-html: 1.1.0_5066edc4db6a582cccfa8c6462b57280 |
| 178 | stylelint-config-prettier: 9.0.4_stylelint@14.16.1 | 178 | stylelint-config-prettier: 9.0.4_stylelint@14.16.1 |
| 179 | stylelint-config-recommended: 9.0.0_stylelint@14.16.1 | 179 | stylelint-config-recommended: 9.0.0_stylelint@14.16.1 |
| 180 | stylelint-config-standard: 29.0.0_stylelint@14.16.1 | 180 | stylelint-config-standard: 29.0.0_stylelint@14.16.1 |
| 181 | stylelint-order: 6.0.1_stylelint@14.16.1 | 181 | stylelint-order: 6.0.1_stylelint@14.16.1 |
| 182 | terser: 5.16.3 | 182 | terser: 5.16.3 |
| 183 | typescript: 4.9.5 | 183 | typescript: 4.9.5 |
| 184 | - unplugin-auto-import: 0.13.0_z2glzmrjcar3r3i7v53oix2lwa | 184 | + unplugin-auto-import: 0.13.0_ce8cbcb2291023b8ed1faf76e45f4bb0 |
| 185 | unplugin-element-plus: 0.6.0_rollup@3.14.0 | 185 | unplugin-element-plus: 0.6.0_rollup@3.14.0 |
| 186 | unplugin-vue-components: 0.23.0_rollup@3.14.0+vue@3.2.47 | 186 | unplugin-vue-components: 0.23.0_rollup@3.14.0+vue@3.2.47 |
| 187 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 187 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 188 | vite-plugin-compression: 0.5.1_vite@4.1.1 | 188 | vite-plugin-compression: 0.5.1_vite@4.1.1 |
| 189 | vite-plugin-ejs: 1.6.4 | 189 | vite-plugin-ejs: 1.6.4 |
| 190 | vite-plugin-eslint: 1.8.1_eslint@8.33.0+vite@4.1.1 | 190 | vite-plugin-eslint: 1.8.1_eslint@8.33.0+vite@4.1.1 |
| @@ -1732,12 +1732,12 @@ packages: | @@ -1732,12 +1732,12 @@ packages: | ||
| 1732 | '@types/node': 18.11.19 | 1732 | '@types/node': 18.11.19 |
| 1733 | chalk: 4.1.2 | 1733 | chalk: 4.1.2 |
| 1734 | cosmiconfig: 8.0.0 | 1734 | cosmiconfig: 8.0.0 |
| 1735 | - cosmiconfig-typescript-loader: 4.2.0_q6dimmvgduffavfq3obt6abtea | 1735 | + cosmiconfig-typescript-loader: 4.2.0_87868632a61d0a5054b0db833f003320 |
| 1736 | lodash.isplainobject: 4.0.6 | 1736 | lodash.isplainobject: 4.0.6 |
| 1737 | lodash.merge: 4.6.2 | 1737 | lodash.merge: 4.6.2 |
| 1738 | lodash.uniq: 4.5.0 | 1738 | lodash.uniq: 4.5.0 |
| 1739 | resolve-from: 5.0.0 | 1739 | resolve-from: 5.0.0 |
| 1740 | - ts-node: 10.9.1_qqdszkrtcshgbphghj7vnvrrby | 1740 | + ts-node: 10.9.1_84072caa33148e60bce63a7f56d6310e |
| 1741 | typescript: 4.9.5 | 1741 | typescript: 4.9.5 |
| 1742 | transitivePeerDependencies: | 1742 | transitivePeerDependencies: |
| 1743 | - '@swc/core' | 1743 | - '@swc/core' |
| @@ -1818,7 +1818,7 @@ packages: | @@ -1818,7 +1818,7 @@ packages: | ||
| 1818 | '@jridgewell/trace-mapping': 0.3.9 | 1818 | '@jridgewell/trace-mapping': 0.3.9 |
| 1819 | dev: true | 1819 | dev: true |
| 1820 | 1820 | ||
| 1821 | - /@csstools/selector-specificity/2.0.2_wajs5nedgkikc5pcuwett7legi: | 1821 | + /@csstools/selector-specificity/2.0.2_b0132eb4833290a175e2a58939fd6432: |
| 1822 | resolution: {integrity: sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==} | 1822 | resolution: {integrity: sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==} |
| 1823 | engines: {node: ^12 || ^14 || >=16} | 1823 | engines: {node: ^12 || ^14 || >=16} |
| 1824 | peerDependencies: | 1824 | peerDependencies: |
| @@ -2232,12 +2232,14 @@ packages: | @@ -2232,12 +2232,14 @@ packages: | ||
| 2232 | '@intlify/message-compiler': 9.2.2 | 2232 | '@intlify/message-compiler': 9.2.2 |
| 2233 | '@intlify/shared': 9.2.2 | 2233 | '@intlify/shared': 9.2.2 |
| 2234 | '@intlify/vue-devtools': 9.2.2 | 2234 | '@intlify/vue-devtools': 9.2.2 |
| 2235 | + dev: false | ||
| 2235 | 2236 | ||
| 2236 | /@intlify/devtools-if/9.2.2: | 2237 | /@intlify/devtools-if/9.2.2: |
| 2237 | resolution: {integrity: sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==} | 2238 | resolution: {integrity: sha512-4ttr/FNO29w+kBbU7HZ/U0Lzuh2cRDhP8UlWOtV9ERcjHzuyXVZmjyleESK6eVP60tGC9QtQW9yZE+JeRhDHkg==} |
| 2238 | engines: {node: '>= 14'} | 2239 | engines: {node: '>= 14'} |
| 2239 | dependencies: | 2240 | dependencies: |
| 2240 | '@intlify/shared': 9.2.2 | 2241 | '@intlify/shared': 9.2.2 |
| 2242 | + dev: false | ||
| 2241 | 2243 | ||
| 2242 | /@intlify/message-compiler/9.2.2: | 2244 | /@intlify/message-compiler/9.2.2: |
| 2243 | resolution: {integrity: sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==} | 2245 | resolution: {integrity: sha512-IUrQW7byAKN2fMBe8z6sK6riG1pue95e5jfokn8hA5Q3Bqy4MBJ5lJAofUsawQJYHeoPJ7svMDyBaVJ4d0GTtA==} |
| @@ -2245,6 +2247,7 @@ packages: | @@ -2245,6 +2247,7 @@ packages: | ||
| 2245 | dependencies: | 2247 | dependencies: |
| 2246 | '@intlify/shared': 9.2.2 | 2248 | '@intlify/shared': 9.2.2 |
| 2247 | source-map: 0.6.1 | 2249 | source-map: 0.6.1 |
| 2250 | + dev: false | ||
| 2248 | 2251 | ||
| 2249 | /@intlify/message-compiler/9.3.0-beta.16: | 2252 | /@intlify/message-compiler/9.3.0-beta.16: |
| 2250 | resolution: {integrity: sha512-CGQI3xRcs1ET75eDQ0DUy3MRYOqTauRIIgaMoISKiF83gqRWg93FqN8lGMKcpBqaF4tI0JhsfosCaGiBL9+dnw==} | 2253 | resolution: {integrity: sha512-CGQI3xRcs1ET75eDQ0DUy3MRYOqTauRIIgaMoISKiF83gqRWg93FqN8lGMKcpBqaF4tI0JhsfosCaGiBL9+dnw==} |
| @@ -2257,6 +2260,7 @@ packages: | @@ -2257,6 +2260,7 @@ packages: | ||
| 2257 | /@intlify/shared/9.2.2: | 2260 | /@intlify/shared/9.2.2: |
| 2258 | resolution: {integrity: sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==} | 2261 | resolution: {integrity: sha512-wRwTpsslgZS5HNyM7uDQYZtxnbI12aGiBZURX3BTR9RFIKKRWpllTsgzHWvj3HKm3Y2Sh5LPC1r0PDCKEhVn9Q==} |
| 2259 | engines: {node: '>= 14'} | 2262 | engines: {node: '>= 14'} |
| 2263 | + dev: false | ||
| 2260 | 2264 | ||
| 2261 | /@intlify/shared/9.3.0-beta.16: | 2265 | /@intlify/shared/9.3.0-beta.16: |
| 2262 | resolution: {integrity: sha512-kXbm4svALe3lX+EjdJxfnabOphqS4yQ1Ge/iIlR8tvUiYRCoNz3hig1M4336iY++Dfx5ytEQJPNjIcknNIuvig==} | 2266 | resolution: {integrity: sha512-kXbm4svALe3lX+EjdJxfnabOphqS4yQ1Ge/iIlR8tvUiYRCoNz3hig1M4336iY++Dfx5ytEQJPNjIcknNIuvig==} |
| @@ -2301,6 +2305,7 @@ packages: | @@ -2301,6 +2305,7 @@ packages: | ||
| 2301 | dependencies: | 2305 | dependencies: |
| 2302 | '@intlify/core-base': 9.2.2 | 2306 | '@intlify/core-base': 9.2.2 |
| 2303 | '@intlify/shared': 9.2.2 | 2307 | '@intlify/shared': 9.2.2 |
| 2308 | + dev: false | ||
| 2304 | 2309 | ||
| 2305 | /@jridgewell/gen-mapping/0.1.1: | 2310 | /@jridgewell/gen-mapping/0.1.1: |
| 2306 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz} | 2311 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz} |
| @@ -2572,8 +2577,9 @@ packages: | @@ -2572,8 +2577,9 @@ packages: | ||
| 2572 | 2577 | ||
| 2573 | /@types/web-bluetooth/0.0.16: | 2578 | /@types/web-bluetooth/0.0.16: |
| 2574 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} | 2579 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==} |
| 2580 | + dev: false | ||
| 2575 | 2581 | ||
| 2576 | - /@typescript-eslint/eslint-plugin/5.50.0_go4drrxstycfikanvu45pi4vgq: | 2582 | + /@typescript-eslint/eslint-plugin/5.50.0_33b838c6f29e0454280dad39d7a39534: |
| 2577 | resolution: {integrity: sha512-vwksQWSFZiUhgq3Kv7o1Jcj0DUNylwnIlGvKvLLYsq8pAWha6/WCnXUeaSoNNha/K7QSf2+jvmkxggC1u3pIwQ==} | 2583 | resolution: {integrity: sha512-vwksQWSFZiUhgq3Kv7o1Jcj0DUNylwnIlGvKvLLYsq8pAWha6/WCnXUeaSoNNha/K7QSf2+jvmkxggC1u3pIwQ==} |
| 2578 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 2584 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 2579 | peerDependencies: | 2585 | peerDependencies: |
| @@ -2584,10 +2590,10 @@ packages: | @@ -2584,10 +2590,10 @@ packages: | ||
| 2584 | typescript: | 2590 | typescript: |
| 2585 | optional: true | 2591 | optional: true |
| 2586 | dependencies: | 2592 | dependencies: |
| 2587 | - '@typescript-eslint/parser': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 | 2593 | + '@typescript-eslint/parser': 5.50.0_eslint@8.33.0+typescript@4.9.5 |
| 2588 | '@typescript-eslint/scope-manager': 5.50.0 | 2594 | '@typescript-eslint/scope-manager': 5.50.0 |
| 2589 | - '@typescript-eslint/type-utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 | ||
| 2590 | - '@typescript-eslint/utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 | 2595 | + '@typescript-eslint/type-utils': 5.50.0_eslint@8.33.0+typescript@4.9.5 |
| 2596 | + '@typescript-eslint/utils': 5.50.0_eslint@8.33.0+typescript@4.9.5 | ||
| 2591 | debug: 4.3.4 | 2597 | debug: 4.3.4 |
| 2592 | eslint: 8.33.0 | 2598 | eslint: 8.33.0 |
| 2593 | grapheme-splitter: 1.0.4 | 2599 | grapheme-splitter: 1.0.4 |
| @@ -2601,7 +2607,7 @@ packages: | @@ -2601,7 +2607,7 @@ packages: | ||
| 2601 | - supports-color | 2607 | - supports-color |
| 2602 | dev: true | 2608 | dev: true |
| 2603 | 2609 | ||
| 2604 | - /@typescript-eslint/parser/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: | 2610 | + /@typescript-eslint/parser/5.50.0_eslint@8.33.0+typescript@4.9.5: |
| 2605 | resolution: {integrity: sha512-KCcSyNaogUDftK2G9RXfQyOCt51uB5yqC6pkUYqhYh8Kgt+DwR5M0EwEAxGPy/+DH6hnmKeGsNhiZRQxjH71uQ==} | 2611 | resolution: {integrity: sha512-KCcSyNaogUDftK2G9RXfQyOCt51uB5yqC6pkUYqhYh8Kgt+DwR5M0EwEAxGPy/+DH6hnmKeGsNhiZRQxjH71uQ==} |
| 2606 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 2612 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 2607 | peerDependencies: | 2613 | peerDependencies: |
| @@ -2629,7 +2635,7 @@ packages: | @@ -2629,7 +2635,7 @@ packages: | ||
| 2629 | '@typescript-eslint/visitor-keys': 5.50.0 | 2635 | '@typescript-eslint/visitor-keys': 5.50.0 |
| 2630 | dev: true | 2636 | dev: true |
| 2631 | 2637 | ||
| 2632 | - /@typescript-eslint/type-utils/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: | 2638 | + /@typescript-eslint/type-utils/5.50.0_eslint@8.33.0+typescript@4.9.5: |
| 2633 | resolution: {integrity: sha512-dcnXfZ6OGrNCO7E5UY/i0ktHb7Yx1fV6fnQGGrlnfDhilcs6n19eIRcvLBqx6OQkrPaFlDPk3OJ0WlzQfrV0bQ==} | 2639 | resolution: {integrity: sha512-dcnXfZ6OGrNCO7E5UY/i0ktHb7Yx1fV6fnQGGrlnfDhilcs6n19eIRcvLBqx6OQkrPaFlDPk3OJ0WlzQfrV0bQ==} |
| 2634 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 2640 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 2635 | peerDependencies: | 2641 | peerDependencies: |
| @@ -2640,7 +2646,7 @@ packages: | @@ -2640,7 +2646,7 @@ packages: | ||
| 2640 | optional: true | 2646 | optional: true |
| 2641 | dependencies: | 2647 | dependencies: |
| 2642 | '@typescript-eslint/typescript-estree': 5.50.0_typescript@4.9.5 | 2648 | '@typescript-eslint/typescript-estree': 5.50.0_typescript@4.9.5 |
| 2643 | - '@typescript-eslint/utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 | 2649 | + '@typescript-eslint/utils': 5.50.0_eslint@8.33.0+typescript@4.9.5 |
| 2644 | debug: 4.3.4 | 2650 | debug: 4.3.4 |
| 2645 | eslint: 8.33.0 | 2651 | eslint: 8.33.0 |
| 2646 | tsutils: 3.21.0_typescript@4.9.5 | 2652 | tsutils: 3.21.0_typescript@4.9.5 |
| @@ -2675,7 +2681,7 @@ packages: | @@ -2675,7 +2681,7 @@ packages: | ||
| 2675 | - supports-color | 2681 | - supports-color |
| 2676 | dev: true | 2682 | dev: true |
| 2677 | 2683 | ||
| 2678 | - /@typescript-eslint/utils/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: | 2684 | + /@typescript-eslint/utils/5.50.0_eslint@8.33.0+typescript@4.9.5: |
| 2679 | resolution: {integrity: sha512-v/AnUFImmh8G4PH0NDkf6wA8hujNNcrwtecqW4vtQ1UOSNBaZl49zP1SHoZ/06e+UiwzHpgb5zP5+hwlYYWYAw==} | 2685 | resolution: {integrity: sha512-v/AnUFImmh8G4PH0NDkf6wA8hujNNcrwtecqW4vtQ1UOSNBaZl49zP1SHoZ/06e+UiwzHpgb5zP5+hwlYYWYAw==} |
| 2680 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} | 2686 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} |
| 2681 | peerDependencies: | 2687 | peerDependencies: |
| @@ -2759,7 +2765,7 @@ packages: | @@ -2759,7 +2765,7 @@ packages: | ||
| 2759 | regenerator-runtime: 0.13.11 | 2765 | regenerator-runtime: 0.13.11 |
| 2760 | systemjs: 6.13.0 | 2766 | systemjs: 6.13.0 |
| 2761 | terser: 5.16.3 | 2767 | terser: 5.16.3 |
| 2762 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 2768 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 2763 | transitivePeerDependencies: | 2769 | transitivePeerDependencies: |
| 2764 | - supports-color | 2770 | - supports-color |
| 2765 | dev: true | 2771 | dev: true |
| @@ -2774,7 +2780,7 @@ packages: | @@ -2774,7 +2780,7 @@ packages: | ||
| 2774 | '@babel/core': 7.20.5 | 2780 | '@babel/core': 7.20.5 |
| 2775 | '@babel/plugin-transform-typescript': 7.20.2_@babel+core@7.20.5 | 2781 | '@babel/plugin-transform-typescript': 7.20.2_@babel+core@7.20.5 |
| 2776 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.20.5 | 2782 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.20.5 |
| 2777 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 2783 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 2778 | vue: 3.2.47 | 2784 | vue: 3.2.47 |
| 2779 | transitivePeerDependencies: | 2785 | transitivePeerDependencies: |
| 2780 | - supports-color | 2786 | - supports-color |
| @@ -2787,7 +2793,7 @@ packages: | @@ -2787,7 +2793,7 @@ packages: | ||
| 2787 | vite: ^4.0.0 | 2793 | vite: ^4.0.0 |
| 2788 | vue: ^3.2.25 | 2794 | vue: ^3.2.25 |
| 2789 | dependencies: | 2795 | dependencies: |
| 2790 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 2796 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 2791 | vue: 3.2.47 | 2797 | vue: 3.2.47 |
| 2792 | dev: true | 2798 | dev: true |
| 2793 | 2799 | ||
| @@ -2867,6 +2873,7 @@ packages: | @@ -2867,6 +2873,7 @@ packages: | ||
| 2867 | '@vue/shared': 3.2.47 | 2873 | '@vue/shared': 3.2.47 |
| 2868 | estree-walker: 2.0.2 | 2874 | estree-walker: 2.0.2 |
| 2869 | source-map: 0.6.1 | 2875 | source-map: 0.6.1 |
| 2876 | + dev: false | ||
| 2870 | 2877 | ||
| 2871 | /@vue/compiler-dom/3.2.45: | 2878 | /@vue/compiler-dom/3.2.45: |
| 2872 | resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==} | 2879 | resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==} |
| @@ -2880,6 +2887,7 @@ packages: | @@ -2880,6 +2887,7 @@ packages: | ||
| 2880 | dependencies: | 2887 | dependencies: |
| 2881 | '@vue/compiler-core': 3.2.47 | 2888 | '@vue/compiler-core': 3.2.47 |
| 2882 | '@vue/shared': 3.2.47 | 2889 | '@vue/shared': 3.2.47 |
| 2890 | + dev: false | ||
| 2883 | 2891 | ||
| 2884 | /@vue/compiler-sfc/3.2.45: | 2892 | /@vue/compiler-sfc/3.2.45: |
| 2885 | resolution: {integrity: sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==} | 2893 | resolution: {integrity: sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==} |
| @@ -2909,6 +2917,7 @@ packages: | @@ -2909,6 +2917,7 @@ packages: | ||
| 2909 | magic-string: 0.25.9 | 2917 | magic-string: 0.25.9 |
| 2910 | postcss: 8.4.21 | 2918 | postcss: 8.4.21 |
| 2911 | source-map: 0.6.1 | 2919 | source-map: 0.6.1 |
| 2920 | + dev: false | ||
| 2912 | 2921 | ||
| 2913 | /@vue/compiler-ssr/3.2.45: | 2922 | /@vue/compiler-ssr/3.2.45: |
| 2914 | resolution: {integrity: sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==} | 2923 | resolution: {integrity: sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==} |
| @@ -2922,9 +2931,11 @@ packages: | @@ -2922,9 +2931,11 @@ packages: | ||
| 2922 | dependencies: | 2931 | dependencies: |
| 2923 | '@vue/compiler-dom': 3.2.47 | 2932 | '@vue/compiler-dom': 3.2.47 |
| 2924 | '@vue/shared': 3.2.47 | 2933 | '@vue/shared': 3.2.47 |
| 2934 | + dev: false | ||
| 2925 | 2935 | ||
| 2926 | /@vue/devtools-api/6.4.5: | 2936 | /@vue/devtools-api/6.4.5: |
| 2927 | resolution: {integrity: sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@vue/devtools-api/-/devtools-api-6.4.5.tgz} | 2937 | resolution: {integrity: sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@vue/devtools-api/-/devtools-api-6.4.5.tgz} |
| 2938 | + dev: false | ||
| 2928 | 2939 | ||
| 2929 | /@vue/reactivity-transform/3.2.45: | 2940 | /@vue/reactivity-transform/3.2.45: |
| 2930 | resolution: {integrity: sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==} | 2941 | resolution: {integrity: sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==} |
| @@ -2944,6 +2955,7 @@ packages: | @@ -2944,6 +2955,7 @@ packages: | ||
| 2944 | '@vue/shared': 3.2.47 | 2955 | '@vue/shared': 3.2.47 |
| 2945 | estree-walker: 2.0.2 | 2956 | estree-walker: 2.0.2 |
| 2946 | magic-string: 0.25.9 | 2957 | magic-string: 0.25.9 |
| 2958 | + dev: false | ||
| 2947 | 2959 | ||
| 2948 | /@vue/reactivity/3.2.45: | 2960 | /@vue/reactivity/3.2.45: |
| 2949 | resolution: {integrity: sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==} | 2961 | resolution: {integrity: sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==} |
| @@ -2955,12 +2967,14 @@ packages: | @@ -2955,12 +2967,14 @@ packages: | ||
| 2955 | resolution: {integrity: sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==} | 2967 | resolution: {integrity: sha512-7khqQ/75oyyg+N/e+iwV6lpy1f5wq759NdlS1fpAhFXa8VeAIKGgk2E/C4VF59lx5b+Ezs5fpp/5WsRYXQiKxQ==} |
| 2956 | dependencies: | 2968 | dependencies: |
| 2957 | '@vue/shared': 3.2.47 | 2969 | '@vue/shared': 3.2.47 |
| 2970 | + dev: false | ||
| 2958 | 2971 | ||
| 2959 | /@vue/runtime-core/3.2.47: | 2972 | /@vue/runtime-core/3.2.47: |
| 2960 | resolution: {integrity: sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==} | 2973 | resolution: {integrity: sha512-RZxbLQIRB/K0ev0K9FXhNbBzT32H9iRtYbaXb0ZIz2usLms/D55dJR2t6cIEUn6vyhS3ALNvNthI+Q95C+NOpA==} |
| 2961 | dependencies: | 2974 | dependencies: |
| 2962 | '@vue/reactivity': 3.2.47 | 2975 | '@vue/reactivity': 3.2.47 |
| 2963 | '@vue/shared': 3.2.47 | 2976 | '@vue/shared': 3.2.47 |
| 2977 | + dev: false | ||
| 2964 | 2978 | ||
| 2965 | /@vue/runtime-dom/3.2.47: | 2979 | /@vue/runtime-dom/3.2.47: |
| 2966 | resolution: {integrity: sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==} | 2980 | resolution: {integrity: sha512-ArXrFTjS6TsDei4qwNvgrdmHtD930KgSKGhS5M+j8QxXrDJYLqYw4RRcDy1bz1m1wMmb6j+zGLifdVHtkXA7gA==} |
| @@ -2968,6 +2982,7 @@ packages: | @@ -2968,6 +2982,7 @@ packages: | ||
| 2968 | '@vue/runtime-core': 3.2.47 | 2982 | '@vue/runtime-core': 3.2.47 |
| 2969 | '@vue/shared': 3.2.47 | 2983 | '@vue/shared': 3.2.47 |
| 2970 | csstype: 2.6.21 | 2984 | csstype: 2.6.21 |
| 2985 | + dev: false | ||
| 2971 | 2986 | ||
| 2972 | /@vue/server-renderer/3.2.47_vue@3.2.47: | 2987 | /@vue/server-renderer/3.2.47_vue@3.2.47: |
| 2973 | resolution: {integrity: sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==} | 2988 | resolution: {integrity: sha512-dN9gc1i8EvmP9RCzvneONXsKfBRgqFeFZLurmHOveL7oH6HiFXJw5OGu294n1nHc/HMgTy6LulU/tv5/A7f/LA==} |
| @@ -2977,6 +2992,7 @@ packages: | @@ -2977,6 +2992,7 @@ packages: | ||
| 2977 | '@vue/compiler-ssr': 3.2.47 | 2992 | '@vue/compiler-ssr': 3.2.47 |
| 2978 | '@vue/shared': 3.2.47 | 2993 | '@vue/shared': 3.2.47 |
| 2979 | vue: 3.2.47 | 2994 | vue: 3.2.47 |
| 2995 | + dev: false | ||
| 2980 | 2996 | ||
| 2981 | /@vue/shared/3.2.45: | 2997 | /@vue/shared/3.2.45: |
| 2982 | resolution: {integrity: sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==} | 2998 | resolution: {integrity: sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==} |
| @@ -2984,6 +3000,7 @@ packages: | @@ -2984,6 +3000,7 @@ packages: | ||
| 2984 | 3000 | ||
| 2985 | /@vue/shared/3.2.47: | 3001 | /@vue/shared/3.2.47: |
| 2986 | resolution: {integrity: sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==} | 3002 | resolution: {integrity: sha512-BHGyyGN3Q97EZx0taMQ+OLNuZcW3d37ZEVmEAyeoA9ERdGvm9Irc/0Fua8SNyOtV1w6BS4q25wbMzJujO9HIfQ==} |
| 3003 | + dev: false | ||
| 2987 | 3004 | ||
| 2988 | /@vueuse/core/9.12.0_vue@3.2.47: | 3005 | /@vueuse/core/9.12.0_vue@3.2.47: |
| 2989 | resolution: {integrity: sha512-h/Di8Bvf6xRcvS/PvUVheiMYYz3U0tH3X25YxONSaAUBa841ayMwxkuzx/DGUMCW/wHWzD8tRy2zYmOC36r4sg==} | 3006 | resolution: {integrity: sha512-h/Di8Bvf6xRcvS/PvUVheiMYYz3U0tH3X25YxONSaAUBa841ayMwxkuzx/DGUMCW/wHWzD8tRy2zYmOC36r4sg==} |
| @@ -2995,9 +3012,11 @@ packages: | @@ -2995,9 +3012,11 @@ packages: | ||
| 2995 | transitivePeerDependencies: | 3012 | transitivePeerDependencies: |
| 2996 | - '@vue/composition-api' | 3013 | - '@vue/composition-api' |
| 2997 | - vue | 3014 | - vue |
| 3015 | + dev: false | ||
| 2998 | 3016 | ||
| 2999 | /@vueuse/metadata/9.12.0: | 3017 | /@vueuse/metadata/9.12.0: |
| 3000 | resolution: {integrity: sha512-9oJ9MM9lFLlmvxXUqsR1wLt1uF7EVbP5iYaHJYqk+G2PbMjY6EXvZeTjbdO89HgoF5cI6z49o2zT/jD9SVoNpQ==} | 3018 | resolution: {integrity: sha512-9oJ9MM9lFLlmvxXUqsR1wLt1uF7EVbP5iYaHJYqk+G2PbMjY6EXvZeTjbdO89HgoF5cI6z49o2zT/jD9SVoNpQ==} |
| 3019 | + dev: false | ||
| 3001 | 3020 | ||
| 3002 | /@vueuse/shared/9.12.0_vue@3.2.47: | 3021 | /@vueuse/shared/9.12.0_vue@3.2.47: |
| 3003 | resolution: {integrity: sha512-TWuJLACQ0BVithVTRbex4Wf1a1VaRuSpVeyEd4vMUWl54PzlE0ciFUshKCXnlLuD0lxIaLK4Ypj3NXYzZh4+SQ==} | 3022 | resolution: {integrity: sha512-TWuJLACQ0BVithVTRbex4Wf1a1VaRuSpVeyEd4vMUWl54PzlE0ciFUshKCXnlLuD0lxIaLK4Ypj3NXYzZh4+SQ==} |
| @@ -3006,8 +3025,9 @@ packages: | @@ -3006,8 +3025,9 @@ packages: | ||
| 3006 | transitivePeerDependencies: | 3025 | transitivePeerDependencies: |
| 3007 | - '@vue/composition-api' | 3026 | - '@vue/composition-api' |
| 3008 | - vue | 3027 | - vue |
| 3028 | + dev: false | ||
| 3009 | 3029 | ||
| 3010 | - /@wangeditor/basic-modules/1.1.7_j7icpicfeimtkldwmemjnpdjs4: | 3030 | + /@wangeditor/basic-modules/1.1.7_4fd027a0452219352c76611896bc6997: |
| 3011 | resolution: {integrity: sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==} | 3031 | resolution: {integrity: sha512-cY9CPkLJaqF05STqfpZKWG4LpxTMeGSIIF1fHvfm/mz+JXatCagjdkbxdikOuKYlxDdeqvOeBmsUBItufDLXZg==} |
| 3012 | peerDependencies: | 3032 | peerDependencies: |
| 3013 | '@wangeditor/core': 1.x | 3033 | '@wangeditor/core': 1.x |
| @@ -3017,7 +3037,7 @@ packages: | @@ -3017,7 +3037,7 @@ packages: | ||
| 3017 | slate: ^0.72.0 | 3037 | slate: ^0.72.0 |
| 3018 | snabbdom: ^3.1.0 | 3038 | snabbdom: ^3.1.0 |
| 3019 | dependencies: | 3039 | dependencies: |
| 3020 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3040 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 |
| 3021 | dom7: 3.0.0 | 3041 | dom7: 3.0.0 |
| 3022 | is-url: 1.2.4 | 3042 | is-url: 1.2.4 |
| 3023 | lodash.throttle: 4.1.1 | 3043 | lodash.throttle: 4.1.1 |
| @@ -3026,7 +3046,7 @@ packages: | @@ -3026,7 +3046,7 @@ packages: | ||
| 3026 | snabbdom: 3.5.1 | 3046 | snabbdom: 3.5.1 |
| 3027 | dev: false | 3047 | dev: false |
| 3028 | 3048 | ||
| 3029 | - /@wangeditor/code-highlight/1.0.3_tztyh2vh7kwzpeloifaekkk3my: | 3049 | + /@wangeditor/code-highlight/1.0.3_9e6783eaa7faad97916e414045295b66: |
| 3030 | resolution: {integrity: sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==} | 3050 | resolution: {integrity: sha512-iazHwO14XpCuIWJNTQTikqUhGKyqj+dUNWJ9288Oym9M2xMVHvnsOmDU2sgUDWVy+pOLojReMPgXCsvvNlOOhw==} |
| 3031 | peerDependencies: | 3051 | peerDependencies: |
| 3032 | '@wangeditor/core': 1.x | 3052 | '@wangeditor/core': 1.x |
| @@ -3034,14 +3054,14 @@ packages: | @@ -3034,14 +3054,14 @@ packages: | ||
| 3034 | slate: ^0.72.0 | 3054 | slate: ^0.72.0 |
| 3035 | snabbdom: ^3.1.0 | 3055 | snabbdom: ^3.1.0 |
| 3036 | dependencies: | 3056 | dependencies: |
| 3037 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3057 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 |
| 3038 | dom7: 3.0.0 | 3058 | dom7: 3.0.0 |
| 3039 | prismjs: 1.29.0 | 3059 | prismjs: 1.29.0 |
| 3040 | slate: 0.72.8 | 3060 | slate: 0.72.8 |
| 3041 | snabbdom: 3.5.1 | 3061 | snabbdom: 3.5.1 |
| 3042 | dev: false | 3062 | dev: false |
| 3043 | 3063 | ||
| 3044 | - /@wangeditor/core/1.1.19_qokc4m5r26t2nkvzejrgzroa7e: | 3064 | + /@wangeditor/core/1.1.19_83942e33b1d7a7a6aab922626cc5c0f9: |
| 3045 | resolution: {integrity: sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==} | 3065 | resolution: {integrity: sha512-KevkB47+7GhVszyYF2pKGKtCSj/YzmClsD03C3zTt+9SR2XWT5T0e3yQqg8baZpcMvkjs1D8Dv4fk8ok/UaS2Q==} |
| 3046 | peerDependencies: | 3066 | peerDependencies: |
| 3047 | '@uppy/core': ^2.1.1 | 3067 | '@uppy/core': ^2.1.1 |
| @@ -3081,7 +3101,7 @@ packages: | @@ -3081,7 +3101,7 @@ packages: | ||
| 3081 | snabbdom: 3.5.1 | 3101 | snabbdom: 3.5.1 |
| 3082 | dev: false | 3102 | dev: false |
| 3083 | 3103 | ||
| 3084 | - /@wangeditor/editor-for-vue/5.1.12_77ywgcaevzgjoxs6yixvgo4fve: | 3104 | + /@wangeditor/editor-for-vue/5.1.12_fff1630804ae4c975e5ec22f533b85a9: |
| 3085 | resolution: {integrity: sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==} | 3105 | resolution: {integrity: sha512-0Ds3D8I+xnpNWezAeO7HmPRgTfUxHLMd9JKcIw+QzvSmhC5xUHbpCcLU+KLmeBKTR/zffnS5GQo6qi3GhTMJWQ==} |
| 3086 | peerDependencies: | 3106 | peerDependencies: |
| 3087 | '@wangeditor/editor': '>=5.1.0' | 3107 | '@wangeditor/editor': '>=5.1.0' |
| @@ -3096,13 +3116,13 @@ packages: | @@ -3096,13 +3116,13 @@ packages: | ||
| 3096 | dependencies: | 3116 | dependencies: |
| 3097 | '@uppy/core': 2.3.4 | 3117 | '@uppy/core': 2.3.4 |
| 3098 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 | 3118 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 |
| 3099 | - '@wangeditor/basic-modules': 1.1.7_j7icpicfeimtkldwmemjnpdjs4 | ||
| 3100 | - '@wangeditor/code-highlight': 1.0.3_tztyh2vh7kwzpeloifaekkk3my | ||
| 3101 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | ||
| 3102 | - '@wangeditor/list-module': 1.0.5_tztyh2vh7kwzpeloifaekkk3my | ||
| 3103 | - '@wangeditor/table-module': 1.1.4_2dde2uzwslfxq2cqrl35sl4erm | ||
| 3104 | - '@wangeditor/upload-image-module': 1.0.2_dwqga4onuah5imhngzkgmw6t5a | ||
| 3105 | - '@wangeditor/video-module': 1.1.4_i6gxywmu7tvxmjxypclnjlcil4 | 3119 | + '@wangeditor/basic-modules': 1.1.7_4fd027a0452219352c76611896bc6997 |
| 3120 | + '@wangeditor/code-highlight': 1.0.3_9e6783eaa7faad97916e414045295b66 | ||
| 3121 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 | ||
| 3122 | + '@wangeditor/list-module': 1.0.5_9e6783eaa7faad97916e414045295b66 | ||
| 3123 | + '@wangeditor/table-module': 1.1.4_d0c64d533692cb7868508af7d92f848b | ||
| 3124 | + '@wangeditor/upload-image-module': 1.0.2_1da06071cda00fd430ed3654665bd3e8 | ||
| 3125 | + '@wangeditor/video-module': 1.1.4_478d7c5994fceb7626f87896d4ac485f | ||
| 3106 | dom7: 3.0.0 | 3126 | dom7: 3.0.0 |
| 3107 | is-hotkey: 0.2.0 | 3127 | is-hotkey: 0.2.0 |
| 3108 | lodash.camelcase: 4.3.0 | 3128 | lodash.camelcase: 4.3.0 |
| @@ -3117,7 +3137,7 @@ packages: | @@ -3117,7 +3137,7 @@ packages: | ||
| 3117 | snabbdom: 3.5.1 | 3137 | snabbdom: 3.5.1 |
| 3118 | dev: false | 3138 | dev: false |
| 3119 | 3139 | ||
| 3120 | - /@wangeditor/list-module/1.0.5_tztyh2vh7kwzpeloifaekkk3my: | 3140 | + /@wangeditor/list-module/1.0.5_9e6783eaa7faad97916e414045295b66: |
| 3121 | resolution: {integrity: sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ==} | 3141 | resolution: {integrity: sha512-uDuYTP6DVhcYf7mF1pTlmNn5jOb4QtcVhYwSSAkyg09zqxI1qBqsfUnveeDeDqIuptSJhkh81cyxi+MF8sEPOQ==} |
| 3122 | peerDependencies: | 3142 | peerDependencies: |
| 3123 | '@wangeditor/core': 1.x | 3143 | '@wangeditor/core': 1.x |
| @@ -3125,13 +3145,13 @@ packages: | @@ -3125,13 +3145,13 @@ packages: | ||
| 3125 | slate: ^0.72.0 | 3145 | slate: ^0.72.0 |
| 3126 | snabbdom: ^3.1.0 | 3146 | snabbdom: ^3.1.0 |
| 3127 | dependencies: | 3147 | dependencies: |
| 3128 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3148 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 |
| 3129 | dom7: 3.0.0 | 3149 | dom7: 3.0.0 |
| 3130 | slate: 0.72.8 | 3150 | slate: 0.72.8 |
| 3131 | snabbdom: 3.5.1 | 3151 | snabbdom: 3.5.1 |
| 3132 | dev: false | 3152 | dev: false |
| 3133 | 3153 | ||
| 3134 | - /@wangeditor/table-module/1.1.4_2dde2uzwslfxq2cqrl35sl4erm: | 3154 | + /@wangeditor/table-module/1.1.4_d0c64d533692cb7868508af7d92f848b: |
| 3135 | resolution: {integrity: sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w==} | 3155 | resolution: {integrity: sha512-5saanU9xuEocxaemGdNi9t8MCDSucnykEC6jtuiT72kt+/Hhh4nERYx1J20OPsTCCdVr7hIyQenFD1iSRkIQ6w==} |
| 3136 | peerDependencies: | 3156 | peerDependencies: |
| 3137 | '@wangeditor/core': 1.x | 3157 | '@wangeditor/core': 1.x |
| @@ -3142,7 +3162,7 @@ packages: | @@ -3142,7 +3162,7 @@ packages: | ||
| 3142 | slate: ^0.72.0 | 3162 | slate: ^0.72.0 |
| 3143 | snabbdom: ^3.1.0 | 3163 | snabbdom: ^3.1.0 |
| 3144 | dependencies: | 3164 | dependencies: |
| 3145 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3165 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 |
| 3146 | dom7: 3.0.0 | 3166 | dom7: 3.0.0 |
| 3147 | lodash.isequal: 4.5.0 | 3167 | lodash.isequal: 4.5.0 |
| 3148 | lodash.throttle: 4.1.1 | 3168 | lodash.throttle: 4.1.1 |
| @@ -3151,7 +3171,7 @@ packages: | @@ -3151,7 +3171,7 @@ packages: | ||
| 3151 | snabbdom: 3.5.1 | 3171 | snabbdom: 3.5.1 |
| 3152 | dev: false | 3172 | dev: false |
| 3153 | 3173 | ||
| 3154 | - /@wangeditor/upload-image-module/1.0.2_dwqga4onuah5imhngzkgmw6t5a: | 3174 | + /@wangeditor/upload-image-module/1.0.2_1da06071cda00fd430ed3654665bd3e8: |
| 3155 | resolution: {integrity: sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA==} | 3175 | resolution: {integrity: sha512-z81lk/v71OwPDYeQDxj6cVr81aDP90aFuywb8nPD6eQeECtOymrqRODjpO6VGvCVxVck8nUxBHtbxKtjgcwyiA==} |
| 3156 | peerDependencies: | 3176 | peerDependencies: |
| 3157 | '@uppy/core': ^2.0.3 | 3177 | '@uppy/core': ^2.0.3 |
| @@ -3165,15 +3185,15 @@ packages: | @@ -3165,15 +3185,15 @@ packages: | ||
| 3165 | dependencies: | 3185 | dependencies: |
| 3166 | '@uppy/core': 2.3.4 | 3186 | '@uppy/core': 2.3.4 |
| 3167 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 | 3187 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 |
| 3168 | - '@wangeditor/basic-modules': 1.1.7_j7icpicfeimtkldwmemjnpdjs4 | ||
| 3169 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3188 | + '@wangeditor/basic-modules': 1.1.7_4fd027a0452219352c76611896bc6997 |
| 3189 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 | ||
| 3170 | dom7: 3.0.0 | 3190 | dom7: 3.0.0 |
| 3171 | lodash.foreach: 4.5.0 | 3191 | lodash.foreach: 4.5.0 |
| 3172 | slate: 0.72.8 | 3192 | slate: 0.72.8 |
| 3173 | snabbdom: 3.5.1 | 3193 | snabbdom: 3.5.1 |
| 3174 | dev: false | 3194 | dev: false |
| 3175 | 3195 | ||
| 3176 | - /@wangeditor/video-module/1.1.4_i6gxywmu7tvxmjxypclnjlcil4: | 3196 | + /@wangeditor/video-module/1.1.4_478d7c5994fceb7626f87896d4ac485f: |
| 3177 | resolution: {integrity: sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg==} | 3197 | resolution: {integrity: sha512-ZdodDPqKQrgx3IwWu4ZiQmXI8EXZ3hm2/fM6E3t5dB8tCaIGWQZhmqd6P5knfkRAd3z2+YRSRbxOGfoRSp/rLg==} |
| 3178 | peerDependencies: | 3198 | peerDependencies: |
| 3179 | '@uppy/core': ^2.1.4 | 3199 | '@uppy/core': ^2.1.4 |
| @@ -3186,7 +3206,7 @@ packages: | @@ -3186,7 +3206,7 @@ packages: | ||
| 3186 | dependencies: | 3206 | dependencies: |
| 3187 | '@uppy/core': 2.3.4 | 3207 | '@uppy/core': 2.3.4 |
| 3188 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 | 3208 | '@uppy/xhr-upload': 2.1.3_@uppy+core@2.3.4 |
| 3189 | - '@wangeditor/core': 1.1.19_qokc4m5r26t2nkvzejrgzroa7e | 3209 | + '@wangeditor/core': 1.1.19_83942e33b1d7a7a6aab922626cc5c0f9 |
| 3190 | dom7: 3.0.0 | 3210 | dom7: 3.0.0 |
| 3191 | nanoid: 3.3.4 | 3211 | nanoid: 3.3.4 |
| 3192 | slate: 0.72.8 | 3212 | slate: 0.72.8 |
| @@ -3608,8 +3628,6 @@ packages: | @@ -3608,8 +3628,6 @@ packages: | ||
| 3608 | snapdragon-node: 2.1.1 | 3628 | snapdragon-node: 2.1.1 |
| 3609 | split-string: 3.1.0 | 3629 | split-string: 3.1.0 |
| 3610 | to-regex: 3.0.2 | 3630 | to-regex: 3.0.2 |
| 3611 | - transitivePeerDependencies: | ||
| 3612 | - - supports-color | ||
| 3613 | dev: true | 3631 | dev: true |
| 3614 | 3632 | ||
| 3615 | /braces/3.0.2: | 3633 | /braces/3.0.2: |
| @@ -3957,8 +3975,8 @@ packages: | @@ -3957,8 +3975,8 @@ packages: | ||
| 3957 | engines: {node: '>=10'} | 3975 | engines: {node: '>=10'} |
| 3958 | hasBin: true | 3976 | hasBin: true |
| 3959 | dependencies: | 3977 | dependencies: |
| 3960 | - JSONStream: 1.3.5 | ||
| 3961 | is-text-path: 1.0.1 | 3978 | is-text-path: 1.0.1 |
| 3979 | + JSONStream: 1.3.5 | ||
| 3962 | lodash: 4.17.21 | 3980 | lodash: 4.17.21 |
| 3963 | meow: 8.1.2 | 3981 | meow: 8.1.2 |
| 3964 | split2: 3.2.2 | 3982 | split2: 3.2.2 |
| @@ -4002,7 +4020,7 @@ packages: | @@ -4002,7 +4020,7 @@ packages: | ||
| 4002 | vary: 1.1.2 | 4020 | vary: 1.1.2 |
| 4003 | dev: true | 4021 | dev: true |
| 4004 | 4022 | ||
| 4005 | - /cosmiconfig-typescript-loader/4.2.0_q6dimmvgduffavfq3obt6abtea: | 4023 | + /cosmiconfig-typescript-loader/4.2.0_87868632a61d0a5054b0db833f003320: |
| 4006 | resolution: {integrity: sha512-NkANeMnaHrlaSSlpKGyvn2R4rqUDeE/9E5YHx+b4nwo0R8dZyAqcih8/gxpCZvqWP9Vf6xuLpMSzSgdVEIM78g==} | 4024 | resolution: {integrity: sha512-NkANeMnaHrlaSSlpKGyvn2R4rqUDeE/9E5YHx+b4nwo0R8dZyAqcih8/gxpCZvqWP9Vf6xuLpMSzSgdVEIM78g==} |
| 4007 | engines: {node: '>=12', npm: '>=6'} | 4025 | engines: {node: '>=12', npm: '>=6'} |
| 4008 | peerDependencies: | 4026 | peerDependencies: |
| @@ -4013,7 +4031,7 @@ packages: | @@ -4013,7 +4031,7 @@ packages: | ||
| 4013 | dependencies: | 4031 | dependencies: |
| 4014 | '@types/node': 18.11.19 | 4032 | '@types/node': 18.11.19 |
| 4015 | cosmiconfig: 8.0.0 | 4033 | cosmiconfig: 8.0.0 |
| 4016 | - ts-node: 10.9.1_qqdszkrtcshgbphghj7vnvrrby | 4034 | + ts-node: 10.9.1_84072caa33148e60bce63a7f56d6310e |
| 4017 | typescript: 4.9.5 | 4035 | typescript: 4.9.5 |
| 4018 | dev: true | 4036 | dev: true |
| 4019 | 4037 | ||
| @@ -4113,6 +4131,7 @@ packages: | @@ -4113,6 +4131,7 @@ packages: | ||
| 4113 | 4131 | ||
| 4114 | /csstype/2.6.21: | 4132 | /csstype/2.6.21: |
| 4115 | resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==} | 4133 | resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==} |
| 4134 | + dev: false | ||
| 4116 | 4135 | ||
| 4117 | /d/1.0.1: | 4136 | /d/1.0.1: |
| 4118 | resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} | 4137 | resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} |
| @@ -4136,11 +4155,6 @@ packages: | @@ -4136,11 +4155,6 @@ packages: | ||
| 4136 | 4155 | ||
| 4137 | /debug/2.6.9: | 4156 | /debug/2.6.9: |
| 4138 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} | 4157 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} |
| 4139 | - peerDependencies: | ||
| 4140 | - supports-color: '*' | ||
| 4141 | - peerDependenciesMeta: | ||
| 4142 | - supports-color: | ||
| 4143 | - optional: true | ||
| 4144 | dependencies: | 4158 | dependencies: |
| 4145 | ms: 2.0.0 | 4159 | ms: 2.0.0 |
| 4146 | dev: true | 4160 | dev: true |
| @@ -4427,7 +4441,7 @@ packages: | @@ -4427,7 +4441,7 @@ packages: | ||
| 4427 | escape-html: 1.0.3 | 4441 | escape-html: 1.0.3 |
| 4428 | lodash: 4.17.21 | 4442 | lodash: 4.17.21 |
| 4429 | lodash-es: 4.17.21 | 4443 | lodash-es: 4.17.21 |
| 4430 | - lodash-unified: 1.0.3_3ib2ivapxullxkx3xftsimdk7u | 4444 | + lodash-unified: 1.0.3_da03a4540fbd16bbaafbb96724306afd |
| 4431 | memoize-one: 6.0.0 | 4445 | memoize-one: 6.0.0 |
| 4432 | normalize-wheel-es: 1.2.0 | 4446 | normalize-wheel-es: 1.2.0 |
| 4433 | vue: 3.2.47 | 4447 | vue: 3.2.47 |
| @@ -4583,7 +4597,7 @@ packages: | @@ -4583,7 +4597,7 @@ packages: | ||
| 4583 | engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0, npm: '>=6.14.13', pnpm: '>= 7.0.0'} | 4597 | engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0, npm: '>=6.14.13', pnpm: '>= 7.0.0'} |
| 4584 | dev: true | 4598 | dev: true |
| 4585 | 4599 | ||
| 4586 | - /eslint-plugin-prettier/4.2.1_jqplj6qf3uqpxpu4gdyhwwasnq: | 4600 | + /eslint-plugin-prettier/4.2.1_4c1eb4fa05dd20fbbe9c30f07b58126c: |
| 4587 | resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} | 4601 | resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} |
| 4588 | engines: {node: '>=12.0.0'} | 4602 | engines: {node: '>=12.0.0'} |
| 4589 | peerDependencies: | 4603 | peerDependencies: |
| @@ -4823,8 +4837,6 @@ packages: | @@ -4823,8 +4837,6 @@ packages: | ||
| 4823 | regex-not: 1.0.2 | 4837 | regex-not: 1.0.2 |
| 4824 | snapdragon: 0.8.2 | 4838 | snapdragon: 0.8.2 |
| 4825 | to-regex: 3.0.2 | 4839 | to-regex: 3.0.2 |
| 4826 | - transitivePeerDependencies: | ||
| 4827 | - - supports-color | ||
| 4828 | dev: true | 4840 | dev: true |
| 4829 | 4841 | ||
| 4830 | /ext/1.7.0: | 4842 | /ext/1.7.0: |
| @@ -4860,8 +4872,6 @@ packages: | @@ -4860,8 +4872,6 @@ packages: | ||
| 4860 | regex-not: 1.0.2 | 4872 | regex-not: 1.0.2 |
| 4861 | snapdragon: 0.8.2 | 4873 | snapdragon: 0.8.2 |
| 4862 | to-regex: 3.0.2 | 4874 | to-regex: 3.0.2 |
| 4863 | - transitivePeerDependencies: | ||
| 4864 | - - supports-color | ||
| 4865 | dev: true | 4875 | dev: true |
| 4866 | 4876 | ||
| 4867 | /fast-deep-equal/3.1.3: | 4877 | /fast-deep-equal/3.1.3: |
| @@ -5876,7 +5886,7 @@ packages: | @@ -5876,7 +5886,7 @@ packages: | ||
| 5876 | resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} | 5886 | resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} |
| 5877 | dev: false | 5887 | dev: false |
| 5878 | 5888 | ||
| 5879 | - /lodash-unified/1.0.3_3ib2ivapxullxkx3xftsimdk7u: | 5889 | + /lodash-unified/1.0.3_da03a4540fbd16bbaafbb96724306afd: |
| 5880 | resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==} | 5890 | resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==} |
| 5881 | peerDependencies: | 5891 | peerDependencies: |
| 5882 | '@types/lodash-es': '*' | 5892 | '@types/lodash-es': '*' |
| @@ -6134,8 +6144,6 @@ packages: | @@ -6134,8 +6144,6 @@ packages: | ||
| 6134 | regex-not: 1.0.2 | 6144 | regex-not: 1.0.2 |
| 6135 | snapdragon: 0.8.2 | 6145 | snapdragon: 0.8.2 |
| 6136 | to-regex: 3.0.2 | 6146 | to-regex: 3.0.2 |
| 6137 | - transitivePeerDependencies: | ||
| 6138 | - - supports-color | ||
| 6139 | dev: true | 6147 | dev: true |
| 6140 | 6148 | ||
| 6141 | /micromatch/4.0.5: | 6149 | /micromatch/4.0.5: |
| @@ -6355,8 +6363,6 @@ packages: | @@ -6355,8 +6363,6 @@ packages: | ||
| 6355 | regex-not: 1.0.2 | 6363 | regex-not: 1.0.2 |
| 6356 | snapdragon: 0.8.2 | 6364 | snapdragon: 0.8.2 |
| 6357 | to-regex: 3.0.2 | 6365 | to-regex: 3.0.2 |
| 6358 | - transitivePeerDependencies: | ||
| 6359 | - - supports-color | ||
| 6360 | dev: true | 6366 | dev: true |
| 6361 | 6367 | ||
| 6362 | /natural-compare-lite/1.4.0: | 6368 | /natural-compare-lite/1.4.0: |
| @@ -6630,7 +6636,7 @@ packages: | @@ -6630,7 +6636,7 @@ packages: | ||
| 6630 | hasBin: true | 6636 | hasBin: true |
| 6631 | dev: true | 6637 | dev: true |
| 6632 | 6638 | ||
| 6633 | - /pinia/2.0.30_hmuptsblhheur2tugfgucj7gc4: | 6639 | + /pinia/2.0.30_typescript@4.9.5+vue@3.2.47: |
| 6634 | resolution: {integrity: sha512-q6DUmxWwe/mQgg+55QQjykpKC+aGeGdaJV3niminl19V08dE+LRTvSEuqi6/NLSGCKHI49KGL6tMNEOssFiMyA==} | 6640 | resolution: {integrity: sha512-q6DUmxWwe/mQgg+55QQjykpKC+aGeGdaJV3niminl19V08dE+LRTvSEuqi6/NLSGCKHI49KGL6tMNEOssFiMyA==} |
| 6635 | peerDependencies: | 6641 | peerDependencies: |
| 6636 | '@vue/composition-api': ^1.4.0 | 6642 | '@vue/composition-api': ^1.4.0 |
| @@ -7337,8 +7343,6 @@ packages: | @@ -7337,8 +7343,6 @@ packages: | ||
| 7337 | source-map: 0.5.7 | 7343 | source-map: 0.5.7 |
| 7338 | source-map-resolve: 0.5.3 | 7344 | source-map-resolve: 0.5.3 |
| 7339 | use: 3.1.1 | 7345 | use: 3.1.1 |
| 7340 | - transitivePeerDependencies: | ||
| 7341 | - - supports-color | ||
| 7342 | dev: true | 7346 | dev: true |
| 7343 | 7347 | ||
| 7344 | /sortablejs/1.14.0: | 7348 | /sortablejs/1.14.0: |
| @@ -7541,7 +7545,7 @@ packages: | @@ -7541,7 +7545,7 @@ packages: | ||
| 7541 | resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} | 7545 | resolution: {integrity: sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==} |
| 7542 | dev: true | 7546 | dev: true |
| 7543 | 7547 | ||
| 7544 | - /stylelint-config-html/1.1.0_kbto3rg3njmczth2rrsgfnlsqa: | 7548 | + /stylelint-config-html/1.1.0_5066edc4db6a582cccfa8c6462b57280: |
| 7545 | resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==} | 7549 | resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==} |
| 7546 | engines: {node: ^12 || >=14} | 7550 | engines: {node: ^12 || >=14} |
| 7547 | peerDependencies: | 7551 | peerDependencies: |
| @@ -7594,7 +7598,7 @@ packages: | @@ -7594,7 +7598,7 @@ packages: | ||
| 7594 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} | 7598 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} |
| 7595 | hasBin: true | 7599 | hasBin: true |
| 7596 | dependencies: | 7600 | dependencies: |
| 7597 | - '@csstools/selector-specificity': 2.0.2_wajs5nedgkikc5pcuwett7legi | 7601 | + '@csstools/selector-specificity': 2.0.2_b0132eb4833290a175e2a58939fd6432 |
| 7598 | balanced-match: 2.0.0 | 7602 | balanced-match: 2.0.0 |
| 7599 | colord: 2.9.3 | 7603 | colord: 2.9.3 |
| 7600 | cosmiconfig: 7.1.0 | 7604 | cosmiconfig: 7.1.0 |
| @@ -7691,8 +7695,6 @@ packages: | @@ -7691,8 +7695,6 @@ packages: | ||
| 7691 | posthtml-svg-mode: 1.0.3 | 7695 | posthtml-svg-mode: 1.0.3 |
| 7692 | query-string: 4.3.4 | 7696 | query-string: 4.3.4 |
| 7693 | traverse: 0.6.7 | 7697 | traverse: 0.6.7 |
| 7694 | - transitivePeerDependencies: | ||
| 7695 | - - supports-color | ||
| 7696 | dev: true | 7698 | dev: true |
| 7697 | 7699 | ||
| 7698 | /svg-tags/1.0.0: | 7700 | /svg-tags/1.0.0: |
| @@ -7840,7 +7842,7 @@ packages: | @@ -7840,7 +7842,7 @@ packages: | ||
| 7840 | engines: {node: '>=8'} | 7842 | engines: {node: '>=8'} |
| 7841 | dev: true | 7843 | dev: true |
| 7842 | 7844 | ||
| 7843 | - /ts-node/10.9.1_qqdszkrtcshgbphghj7vnvrrby: | 7845 | + /ts-node/10.9.1_84072caa33148e60bce63a7f56d6310e: |
| 7844 | resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} | 7846 | resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} |
| 7845 | hasBin: true | 7847 | hasBin: true |
| 7846 | peerDependencies: | 7848 | peerDependencies: |
| @@ -7936,6 +7938,7 @@ packages: | @@ -7936,6 +7938,7 @@ packages: | ||
| 7936 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} | 7938 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} |
| 7937 | engines: {node: '>=4.2.0'} | 7939 | engines: {node: '>=4.2.0'} |
| 7938 | hasBin: true | 7940 | hasBin: true |
| 7941 | + dev: true | ||
| 7939 | 7942 | ||
| 7940 | /ufo/1.0.1: | 7943 | /ufo/1.0.1: |
| 7941 | resolution: {integrity: sha512-boAm74ubXHY7KJQZLlXrtMz52qFvpsbOxDcZOnw/Wf+LS4Mmyu7JxmzD4tDLtUQtmZECypJ0FrCz4QIe6dvKRA==} | 7944 | resolution: {integrity: sha512-boAm74ubXHY7KJQZLlXrtMz52qFvpsbOxDcZOnw/Wf+LS4Mmyu7JxmzD4tDLtUQtmZECypJ0FrCz4QIe6dvKRA==} |
| @@ -8006,7 +8009,7 @@ packages: | @@ -8006,7 +8009,7 @@ packages: | ||
| 8006 | engines: {node: '>= 10.0.0'} | 8009 | engines: {node: '>= 10.0.0'} |
| 8007 | dev: true | 8010 | dev: true |
| 8008 | 8011 | ||
| 8009 | - /unplugin-auto-import/0.13.0_z2glzmrjcar3r3i7v53oix2lwa: | 8012 | + /unplugin-auto-import/0.13.0_ce8cbcb2291023b8ed1faf76e45f4bb0: |
| 8010 | resolution: {integrity: sha512-nKMxDbkjM4FRPInFfm7sWrJOKgxfKKwb5yLPP+DEGl/SG0/FtBoW1LnZL4PQfx0FXjertoHO1P/5nDf+RSip2Q==} | 8013 | resolution: {integrity: sha512-nKMxDbkjM4FRPInFfm7sWrJOKgxfKKwb5yLPP+DEGl/SG0/FtBoW1LnZL4PQfx0FXjertoHO1P/5nDf+RSip2Q==} |
| 8011 | engines: {node: '>=14'} | 8014 | engines: {node: '>=14'} |
| 8012 | peerDependencies: | 8015 | peerDependencies: |
| @@ -8159,7 +8162,7 @@ packages: | @@ -8159,7 +8162,7 @@ packages: | ||
| 8159 | chalk: 4.1.2 | 8162 | chalk: 4.1.2 |
| 8160 | debug: 4.3.4 | 8163 | debug: 4.3.4 |
| 8161 | fs-extra: 10.1.0 | 8164 | fs-extra: 10.1.0 |
| 8162 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8165 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8163 | transitivePeerDependencies: | 8166 | transitivePeerDependencies: |
| 8164 | - supports-color | 8167 | - supports-color |
| 8165 | dev: true | 8168 | dev: true |
| @@ -8180,7 +8183,7 @@ packages: | @@ -8180,7 +8183,7 @@ packages: | ||
| 8180 | '@types/eslint': 8.4.10 | 8183 | '@types/eslint': 8.4.10 |
| 8181 | eslint: 8.33.0 | 8184 | eslint: 8.33.0 |
| 8182 | rollup: 2.79.1 | 8185 | rollup: 2.79.1 |
| 8183 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8186 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8184 | dev: true | 8187 | dev: true |
| 8185 | 8188 | ||
| 8186 | /vite-plugin-progress/0.0.6_vite@4.1.1: | 8189 | /vite-plugin-progress/0.0.6_vite@4.1.1: |
| @@ -8192,7 +8195,7 @@ packages: | @@ -8192,7 +8195,7 @@ packages: | ||
| 8192 | picocolors: 1.0.0 | 8195 | picocolors: 1.0.0 |
| 8193 | progress: 2.0.3 | 8196 | progress: 2.0.3 |
| 8194 | rd: 2.0.1 | 8197 | rd: 2.0.1 |
| 8195 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8198 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8196 | dev: true | 8199 | dev: true |
| 8197 | 8200 | ||
| 8198 | /vite-plugin-purge-icons/0.9.2_vite@4.1.1: | 8201 | /vite-plugin-purge-icons/0.9.2_vite@4.1.1: |
| @@ -8204,7 +8207,7 @@ packages: | @@ -8204,7 +8207,7 @@ packages: | ||
| 8204 | '@purge-icons/core': 0.9.1 | 8207 | '@purge-icons/core': 0.9.1 |
| 8205 | '@purge-icons/generated': 0.9.0 | 8208 | '@purge-icons/generated': 0.9.0 |
| 8206 | rollup-plugin-purge-icons: 0.9.1 | 8209 | rollup-plugin-purge-icons: 0.9.1 |
| 8207 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8210 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8208 | transitivePeerDependencies: | 8211 | transitivePeerDependencies: |
| 8209 | - encoding | 8212 | - encoding |
| 8210 | - supports-color | 8213 | - supports-color |
| @@ -8223,7 +8226,7 @@ packages: | @@ -8223,7 +8226,7 @@ packages: | ||
| 8223 | pathe: 0.2.0 | 8226 | pathe: 0.2.0 |
| 8224 | svg-baker: 1.7.0 | 8227 | svg-baker: 1.7.0 |
| 8225 | svgo: 2.8.0 | 8228 | svgo: 2.8.0 |
| 8226 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8229 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8227 | transitivePeerDependencies: | 8230 | transitivePeerDependencies: |
| 8228 | - supports-color | 8231 | - supports-color |
| 8229 | dev: true | 8232 | dev: true |
| @@ -8235,7 +8238,7 @@ packages: | @@ -8235,7 +8238,7 @@ packages: | ||
| 8235 | dependencies: | 8238 | dependencies: |
| 8236 | '@vue/compiler-sfc': 3.2.45 | 8239 | '@vue/compiler-sfc': 3.2.45 |
| 8237 | magic-string: 0.25.9 | 8240 | magic-string: 0.25.9 |
| 8238 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8241 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8239 | dev: true | 8242 | dev: true |
| 8240 | 8243 | ||
| 8241 | /vite-plugin-windicss/1.8.10_vite@4.1.1: | 8244 | /vite-plugin-windicss/1.8.10_vite@4.1.1: |
| @@ -8246,13 +8249,13 @@ packages: | @@ -8246,13 +8249,13 @@ packages: | ||
| 8246 | '@windicss/plugin-utils': 1.8.10 | 8249 | '@windicss/plugin-utils': 1.8.10 |
| 8247 | debug: 4.3.4 | 8250 | debug: 4.3.4 |
| 8248 | kolorist: 1.6.0 | 8251 | kolorist: 1.6.0 |
| 8249 | - vite: 4.1.1_sf2ihp5jwkcy5ypowegsyojpbq | 8252 | + vite: 4.1.1_917483bfa9b2858ee1eeb10d2c392f0c |
| 8250 | windicss: 3.5.6 | 8253 | windicss: 3.5.6 |
| 8251 | transitivePeerDependencies: | 8254 | transitivePeerDependencies: |
| 8252 | - supports-color | 8255 | - supports-color |
| 8253 | dev: true | 8256 | dev: true |
| 8254 | 8257 | ||
| 8255 | - /vite/4.1.1_sf2ihp5jwkcy5ypowegsyojpbq: | 8258 | + /vite/4.1.1_917483bfa9b2858ee1eeb10d2c392f0c: |
| 8256 | resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} | 8259 | resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} |
| 8257 | engines: {node: ^14.18.0 || >=16.0.0} | 8260 | engines: {node: ^14.18.0 || >=16.0.0} |
| 8258 | hasBin: true | 8261 | hasBin: true |
| @@ -8301,6 +8304,7 @@ packages: | @@ -8301,6 +8304,7 @@ packages: | ||
| 8301 | optional: true | 8304 | optional: true |
| 8302 | dependencies: | 8305 | dependencies: |
| 8303 | vue: 3.2.47 | 8306 | vue: 3.2.47 |
| 8307 | + dev: false | ||
| 8304 | 8308 | ||
| 8305 | /vue-eslint-parser/9.1.0_eslint@8.33.0: | 8309 | /vue-eslint-parser/9.1.0_eslint@8.33.0: |
| 8306 | resolution: {integrity: sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==} | 8310 | resolution: {integrity: sha512-NGn/iQy8/Wb7RrRa4aRkokyCZfOUWk19OP5HP6JEozQFX5AoS/t+Z0ZN7FY4LlmWc4FNI922V7cvX28zctN8dQ==} |
| @@ -8331,6 +8335,7 @@ packages: | @@ -8331,6 +8335,7 @@ packages: | ||
| 8331 | '@intlify/vue-devtools': 9.2.2 | 8335 | '@intlify/vue-devtools': 9.2.2 |
| 8332 | '@vue/devtools-api': 6.4.5 | 8336 | '@vue/devtools-api': 6.4.5 |
| 8333 | vue: 3.2.47 | 8337 | vue: 3.2.47 |
| 8338 | + dev: false | ||
| 8334 | 8339 | ||
| 8335 | /vue-router/4.1.6_vue@3.2.47: | 8340 | /vue-router/4.1.6_vue@3.2.47: |
| 8336 | resolution: {integrity: sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==} | 8341 | resolution: {integrity: sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==} |
| @@ -8380,6 +8385,7 @@ packages: | @@ -8380,6 +8385,7 @@ packages: | ||
| 8380 | '@vue/runtime-dom': 3.2.47 | 8385 | '@vue/runtime-dom': 3.2.47 |
| 8381 | '@vue/server-renderer': 3.2.47_vue@3.2.47 | 8386 | '@vue/server-renderer': 3.2.47_vue@3.2.47 |
| 8382 | '@vue/shared': 3.2.47 | 8387 | '@vue/shared': 3.2.47 |
| 8388 | + dev: false | ||
| 8383 | 8389 | ||
| 8384 | /vuedraggable/4.1.0_vue@3.2.47: | 8390 | /vuedraggable/4.1.0_vue@3.2.47: |
| 8385 | resolution: {integrity: sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==} | 8391 | resolution: {integrity: sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==} |
yudao-ui-admin-vue3/src/views/report/goview/index.vue
0 → 100644
yudao-ui-admin-vue3/src/views/visualization/jmreport/index.vue renamed to yudao-ui-admin-vue3/src/views/report/jmreport/index.vue
yudao-ui-admin/src/views/report/goview/index.vue
0 → 100644
| 1 | +<template> | ||
| 2 | + <div> | ||
| 3 | + <doc-alert title="大屏设计器" url="https://doc.iocoder.cn/report/screen/" /> | ||
| 4 | + <i-frame :src="url" /> | ||
| 5 | + </div> | ||
| 6 | +</template> | ||
| 7 | +<script> | ||
| 8 | +import iFrame from "@/components/iFrame/index"; | ||
| 9 | +export default { | ||
| 10 | + name: "GoView", | ||
| 11 | + components: { iFrame }, | ||
| 12 | + data() { | ||
| 13 | + return { | ||
| 14 | + url: 'http://127.0.0.1:3000', | ||
| 15 | + }; | ||
| 16 | + }, | ||
| 17 | +}; | ||
| 18 | +</script> |
yudao-ui-admin/src/views/visualization/jmreport/index.vue renamed to yudao-ui-admin/src/views/report/jmreport/index.vue