mirror of
https://github.com/cool-team-official/cool-admin-vue.git
synced 2024-11-01 06:02:38 +08:00
更新依赖,优化
This commit is contained in:
parent
974d8f152a
commit
ff9b1b8d55
@ -1 +1 @@
|
||||
[["/admin/base/comm",[["post","/personUpdate",""],["get","/uploadMode",""],["get","/permmenu",""],["get","/person",""],["post","/upload",""],["post","/logout",""],["","/list",""],["","/page",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/open",[["get","/refreshToken",""],["get","/captcha",""],["post","/login",""],["get","/html",""],["get","/eps",""],["","/list",""],["","/page",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/sys/department",[["post","/delete",""],["post","/update",""],["post","/order",""],["post","/list",""],["post","/add",""],["","/page",""],["","/info",""]]],["/admin/base/sys/log",[["post","/setKeep",""],["get","/getKeep",""],["post","/clear",""],["post","/page",""],["","/list",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/sys/menu",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/base/sys/param",[["post","/delete",""],["post","/update",""],["get","/html",""],["get","/info",""],["post","/page",""],["post","/add",""],["","/list",""]]],["/admin/base/sys/role",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/base/sys/user",[["post","/delete",""],["post","/update",""],["post","/move",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/demo/goods",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/page",""],["post","/list",""],["post","/add",""]]],["/admin/space/info",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/space/type",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/task/info",[["post","/delete",""],["post","/update",""],["post","/start",""],["post","/once",""],["post","/stop",""],["get","/info",""],["post","/page",""],["get","/log",""],["post","/add",""],["","/list",""]]]]
|
||||
[["/admin/base/comm",[["post","/personUpdate",""],["get","/uploadMode",""],["get","/permmenu",""],["get","/person",""],["post","/upload",""],["post","/logout",""],["","/list",""],["","/page",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/open",[["get","/refreshToken",""],["get","/captcha",""],["post","/login",""],["get","/html",""],["get","/eps",""],["","/list",""],["","/page",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/sys/department",[["post","/delete",""],["post","/update",""],["post","/order",""],["post","/list",""],["post","/add",""],["","/page",""],["","/info",""]]],["/admin/base/sys/log",[["post","/setKeep",""],["get","/getKeep",""],["post","/clear",""],["post","/page",""],["","/list",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/base/sys/menu",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/base/sys/param",[["post","/delete",""],["post","/update",""],["get","/html",""],["get","/info",""],["post","/page",""],["post","/add",""],["","/list",""]]],["/admin/base/sys/role",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/base/sys/user",[["post","/delete",""],["post","/update",""],["post","/move",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/demo/goods",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/page",""],["post","/list",""],["post","/add",""]]],["/admin/space/info",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/space/type",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/study/finish",[["post","/page",""],["","/list",""],["","/info",""],["","/update",""],["","/delete",""],["","/add",""]]],["/admin/study/learn",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/study/music",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/study/topic",[["get","/provinceCount",""],["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/study/works",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]],["/admin/task/info",[["post","/delete",""],["post","/update",""],["post","/start",""],["post","/once",""],["post","/stop",""],["get","/info",""],["post","/page",""],["get","/log",""],["post","/add",""],["","/list",""]]],["/admin/user/info",[["post","/delete",""],["post","/update",""],["get","/info",""],["post","/list",""],["post","/page",""],["post","/add",""]]]]
|
278
build/cool/temp/service.d.ts
vendored
278
build/cool/temp/service.d.ts
vendored
@ -635,6 +635,232 @@ declare interface SpaceType {
|
||||
};
|
||||
}
|
||||
|
||||
declare interface StudyFinish {
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* list
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* info
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* update
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* delete
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* add
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
page: string;
|
||||
list: string;
|
||||
info: string;
|
||||
update: string;
|
||||
delete: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare interface StudyLearn {
|
||||
/**
|
||||
* 删除
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* 修改
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* 单个信息
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* 列表查询
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* 新增
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
delete: string;
|
||||
update: string;
|
||||
info: string;
|
||||
list: string;
|
||||
page: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare interface StudyMusic {
|
||||
/**
|
||||
* 删除
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* 修改
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* 单个信息
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* 列表查询
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* 新增
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
delete: string;
|
||||
update: string;
|
||||
info: string;
|
||||
list: string;
|
||||
page: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare interface StudyTopic {
|
||||
/**
|
||||
* 省份统计
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
provinceCount(data?: any): Promise<any>;
|
||||
/**
|
||||
* 删除
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* 修改
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* 单个信息
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* 列表查询
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* 新增
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
provinceCount: string;
|
||||
delete: string;
|
||||
update: string;
|
||||
info: string;
|
||||
list: string;
|
||||
page: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare interface StudyWorks {
|
||||
/**
|
||||
* 删除
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* 修改
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* 单个信息
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* 列表查询
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* 新增
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
delete: string;
|
||||
update: string;
|
||||
info: string;
|
||||
list: string;
|
||||
page: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare interface TaskInfo {
|
||||
/**
|
||||
* 删除
|
||||
@ -703,6 +929,50 @@ declare interface TaskInfo {
|
||||
};
|
||||
}
|
||||
|
||||
declare interface UserInfo {
|
||||
/**
|
||||
* 删除
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
delete(data?: any): Promise<any>;
|
||||
/**
|
||||
* 修改
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
update(data?: any): Promise<any>;
|
||||
/**
|
||||
* 单个信息
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
info(data?: any): Promise<any>;
|
||||
/**
|
||||
* 列表查询
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
list(data?: any): Promise<any>;
|
||||
/**
|
||||
* 分页查询
|
||||
* @returns Promise<PageResponse>
|
||||
*/
|
||||
page(data?: any): Promise<PageResponse>;
|
||||
/**
|
||||
* 新增
|
||||
* @returns Promise<any>
|
||||
*/
|
||||
add(data?: any): Promise<any>;
|
||||
/**
|
||||
* 权限
|
||||
*/
|
||||
permission: {
|
||||
delete: string;
|
||||
update: string;
|
||||
info: string;
|
||||
list: string;
|
||||
page: string;
|
||||
add: string;
|
||||
};
|
||||
}
|
||||
|
||||
declare type Service = {
|
||||
request(data: RequestOptions): Promise<any>;
|
||||
base: {
|
||||
@ -719,5 +989,13 @@ declare type Service = {
|
||||
};
|
||||
demo: { goods: DemoGoods };
|
||||
space: { info: SpaceInfo; type: SpaceType };
|
||||
study: {
|
||||
finish: StudyFinish;
|
||||
learn: StudyLearn;
|
||||
music: StudyMusic;
|
||||
topic: StudyTopic;
|
||||
works: StudyWorks;
|
||||
};
|
||||
task: { info: TaskInfo };
|
||||
user: { info: UserInfo };
|
||||
};
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "front-next",
|
||||
"version": "5.1.3",
|
||||
"version": "5.1.4",
|
||||
"scripts": {
|
||||
"dev": "vite --host",
|
||||
"build": "vite build",
|
||||
@ -9,14 +9,14 @@
|
||||
"lint:eslint": "eslint \"{src,mock}/**/*.{vue,ts,tsx}\" --fix"
|
||||
},
|
||||
"dependencies": {
|
||||
"@cool-vue/crud": "^5.0.6",
|
||||
"@cool-vue/crud": "^5.0.7",
|
||||
"@element-plus/icons-vue": "^1.1.3",
|
||||
"@vueuse/core": "^8.2.5",
|
||||
"axios": "^0.26.1",
|
||||
"codemirror": "^5.62.0",
|
||||
"core-js": "^3.6.5",
|
||||
"echarts": "^5.0.2",
|
||||
"element-plus": "^2.1.7",
|
||||
"element-plus": "^2.2.0",
|
||||
"file-saver": "^2.0.5",
|
||||
"js-beautify": "^1.13.5",
|
||||
"lodash": "^4.17.21",
|
||||
@ -27,7 +27,6 @@
|
||||
"quill": "^1.3.7",
|
||||
"store": "^2.0.12",
|
||||
"unocss": "^0.31.0",
|
||||
"uuid": "^8.3.2",
|
||||
"vue": "^3.2.32",
|
||||
"vue-echarts": "^6.0.2",
|
||||
"vue-router": "^4.0.14",
|
||||
@ -61,7 +60,7 @@
|
||||
"svg-sprite-loader": "^6.0.2",
|
||||
"typescript": "^4.6.2",
|
||||
"unplugin-vue-components": "^0.17.21",
|
||||
"vite": "^2.9.6",
|
||||
"vite": "^2.9.8",
|
||||
"vite-plugin-compression": "^0.5.1",
|
||||
"vite-plugin-dts": "^0.9.9",
|
||||
"vite-plugin-mock": "^2.9.6",
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.4 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3.0 KiB |
@ -1,6 +1,7 @@
|
||||
import modules from "/@/modules";
|
||||
import { router, addViews } from "../router";
|
||||
import { isFunction, isObject, filename } from "../utils";
|
||||
import { filename } from "../utils";
|
||||
import { isFunction, isObject } from "lodash";
|
||||
import { App } from "vue";
|
||||
import module from "../utils/module";
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
// @ts-nocheck
|
||||
import { baseUrl, isDev, test } from "../config";
|
||||
import { isObject } from "../utils";
|
||||
import { isObject } from "lodash";
|
||||
import request from "./request";
|
||||
|
||||
export function Service(
|
||||
|
@ -1,6 +1,7 @@
|
||||
import { isDev, test } from "../config";
|
||||
import { BaseService } from "./base";
|
||||
import { storage, toCamel, isArray } from "../utils";
|
||||
import { storage, toCamel } from "../utils";
|
||||
import { isArray, isEmpty } from "lodash";
|
||||
|
||||
// 获取标签名
|
||||
function getNames(v: any) {
|
||||
@ -71,14 +72,16 @@ export function useEps(service: Service) {
|
||||
url: "/admin/base/open/eps"
|
||||
})
|
||||
.then(async (res) => {
|
||||
const isLoaded: boolean = storage.get("eps");
|
||||
storage.set("eps", res);
|
||||
if (!isEmpty(res)) {
|
||||
const isLoaded: boolean = storage.get("eps");
|
||||
storage.set("eps", res);
|
||||
|
||||
if (!isLoaded) {
|
||||
location.reload();
|
||||
} else {
|
||||
set(res, true);
|
||||
console.log("[Eps] 初始化成功。");
|
||||
if (!isLoaded) {
|
||||
location.reload();
|
||||
} else {
|
||||
set(res, true);
|
||||
console.log("[Eps] 初始化成功。");
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch((err) => {
|
||||
@ -190,23 +193,17 @@ export function useEps(service: Service) {
|
||||
getEps();
|
||||
}
|
||||
} else {
|
||||
const eps: any[] = [];
|
||||
|
||||
JSON.parse(__EPS__).forEach((e: any) => {
|
||||
const [prefix, api] = e;
|
||||
|
||||
eps.push({
|
||||
const eps = JSON.parse(__EPS__).map(([prefix, api]: any[]) => {
|
||||
return {
|
||||
prefix,
|
||||
api: api.map((e: string[]) => {
|
||||
const [method, path, name] = e;
|
||||
|
||||
api: api.map(([method, path, name]: string[]) => {
|
||||
return {
|
||||
method,
|
||||
path,
|
||||
name
|
||||
};
|
||||
})
|
||||
});
|
||||
};
|
||||
});
|
||||
|
||||
// 文件数据
|
||||
|
@ -1,75 +1,8 @@
|
||||
import { isArray, orderBy } from "lodash";
|
||||
import { app } from "../config";
|
||||
import storage from "./storage";
|
||||
import module from "./module";
|
||||
|
||||
// 是否Array类型
|
||||
export function isArray(value: any): boolean {
|
||||
if (typeof Array.isArray === "function") {
|
||||
return Array.isArray(value);
|
||||
} else {
|
||||
return Object.prototype.toString.call(value) === "[object Array]";
|
||||
}
|
||||
}
|
||||
|
||||
// 是否Object类型
|
||||
export function isObject(value: any): boolean {
|
||||
return Object.prototype.toString.call(value) === "[object Object]";
|
||||
}
|
||||
|
||||
// 是否Function类型
|
||||
export function isFunction(value: any): boolean {
|
||||
return typeof value === "function";
|
||||
}
|
||||
|
||||
// 是否String类型
|
||||
export function isString(value: any): boolean {
|
||||
return typeof value === "string";
|
||||
}
|
||||
|
||||
// 是否Boolean类型
|
||||
export function isBoolean(value: any): boolean {
|
||||
return typeof value === "boolean";
|
||||
}
|
||||
|
||||
// 是否数字类型
|
||||
export function isNumber(value: any): boolean {
|
||||
return typeof value === "number" && !isNaN(value);
|
||||
}
|
||||
|
||||
// 是否Promise类型
|
||||
export function isPromise(value: any): boolean {
|
||||
return (
|
||||
value !== null &&
|
||||
(typeof value === "object" || typeof value === "function") &&
|
||||
typeof value.then === "function"
|
||||
);
|
||||
}
|
||||
|
||||
// 是否为空
|
||||
export function isEmpty(value: any): boolean {
|
||||
if (isArray(value)) {
|
||||
return value.length === 0;
|
||||
}
|
||||
|
||||
if (isObject(value)) {
|
||||
return Object.keys(value).length === 0;
|
||||
}
|
||||
|
||||
return value === "" || value === undefined || value === null;
|
||||
}
|
||||
|
||||
// 比较值
|
||||
export function compareValue(a: any, b: any) {
|
||||
return String(a) === String(b);
|
||||
}
|
||||
|
||||
// 取最后一个值
|
||||
export function last(data: string | any[]) {
|
||||
if (isArray(data) || isString(data)) {
|
||||
return data[data.length - 1];
|
||||
}
|
||||
}
|
||||
|
||||
// 首字母大写
|
||||
export function firstUpperCase(value: string): string {
|
||||
return value.replace(/\b(\w)(\w*)/g, function ($0, $1, $2) {
|
||||
@ -82,29 +15,6 @@ export function getNames(value: any) {
|
||||
return Object.getOwnPropertyNames(value.constructor.prototype);
|
||||
}
|
||||
|
||||
// 深拷贝
|
||||
export function cloneDeep(v: any) {
|
||||
if (isObject(v)) {
|
||||
const d: any = {};
|
||||
|
||||
for (const k in v) {
|
||||
if (v.hasOwnProperty && v.hasOwnProperty(k)) {
|
||||
if (v[k] && typeof v[k] === "object") {
|
||||
d[k] = cloneDeep(v[k]);
|
||||
} else {
|
||||
d[k] = v[k];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return d;
|
||||
} else if (isArray(v)) {
|
||||
return v.map(cloneDeep);
|
||||
} else {
|
||||
return v;
|
||||
}
|
||||
}
|
||||
|
||||
// 深度合并
|
||||
export function deepMerge(a: any, b: any) {
|
||||
let k;
|
||||
@ -123,11 +33,6 @@ export function getUrlParam(name: string): string | null {
|
||||
return null;
|
||||
}
|
||||
|
||||
// 根据某个字段排序
|
||||
export function orderBy(list: any[], key: string): any[] {
|
||||
return list.sort((a, b) => b[key] - a[key]);
|
||||
}
|
||||
|
||||
// 文件路径转对象
|
||||
export function deepFiles(list: any[]) {
|
||||
const modules: any = {};
|
||||
|
@ -1,79 +0,0 @@
|
||||
import Mock from "mockjs";
|
||||
|
||||
Mock.mock("/im/session/page", "post", (options: any) => {
|
||||
const { keyWord = "" } = JSON.parse(options.body);
|
||||
|
||||
const data = Mock.mock({
|
||||
"list|20": [
|
||||
{
|
||||
id: "@id",
|
||||
nickname: "@name",
|
||||
createTime: "@datetime(yy-MM-dd HH:mm:ss)",
|
||||
text: "@cparagraph(5)",
|
||||
content() {
|
||||
return JSON.stringify({ text: this.text });
|
||||
},
|
||||
"contentType|0-3": 0,
|
||||
"serviceUnreadCount|0-10": 0,
|
||||
headimgurl() {
|
||||
return Mock.Random.image(
|
||||
"40x40",
|
||||
Mock.Random.color(),
|
||||
"#FFF",
|
||||
"png",
|
||||
this.nickname[0]
|
||||
);
|
||||
}
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
return {
|
||||
code: 1000,
|
||||
data: {
|
||||
list: data.list.filter((e: any) => e.nickname.includes(keyWord)),
|
||||
pagination: {}
|
||||
}
|
||||
};
|
||||
});
|
||||
|
||||
Mock.mock("/im/session/unreadCount", "get", () => {
|
||||
const data = Mock.mock({
|
||||
"count|1-50": 1
|
||||
});
|
||||
|
||||
return {
|
||||
code: 1000,
|
||||
data: data.count
|
||||
};
|
||||
});
|
||||
|
||||
Mock.setup({
|
||||
timeout: "500-1000"
|
||||
});
|
||||
|
||||
Mock.mock("/im/message/page", "post", () => {
|
||||
const data = Mock.mock({
|
||||
"list|20": [
|
||||
{
|
||||
id: "@id",
|
||||
nickname: "@name",
|
||||
createTime: "@datetime",
|
||||
text: "@cparagraph(1, 4)",
|
||||
content() {
|
||||
return JSON.stringify({ text: this.text });
|
||||
},
|
||||
contentType: 0,
|
||||
"type|0-1": 1
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
return {
|
||||
code: 1000,
|
||||
data: {
|
||||
list: data.list,
|
||||
pagination: {}
|
||||
}
|
||||
};
|
||||
});
|
@ -1,5 +1,5 @@
|
||||
import { useBaseStore } from "../store";
|
||||
import { isObject } from "/@/cool/utils";
|
||||
import { isObject } from "lodash";
|
||||
|
||||
function parse(value: any) {
|
||||
const { menu } = useBaseStore();
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, PropType } from "vue";
|
||||
import { isNumber } from "/@/cool/utils";
|
||||
import { isNumber } from "lodash";
|
||||
import { User } from "@element-plus/icons-vue";
|
||||
|
||||
export default defineComponent({
|
||||
|
@ -9,7 +9,7 @@
|
||||
import { computed, defineComponent, onMounted, ref, watch } from "vue";
|
||||
import Quill from "quill";
|
||||
import "quill/dist/quill.snow.css";
|
||||
import { isNumber } from "/@/cool/utils";
|
||||
import { isNumber } from "lodash";
|
||||
|
||||
export default defineComponent({
|
||||
name: "cl-editor-quill",
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent, ref } from "vue";
|
||||
import { isNumber } from "/@/cool/utils";
|
||||
import { isNumber } from "lodash";
|
||||
|
||||
export default defineComponent({
|
||||
name: "icon-svg",
|
||||
|
@ -28,7 +28,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { computed, defineComponent } from "vue";
|
||||
import { isArray, isNumber, isString } from "/@/cool/utils";
|
||||
import { isArray, isNumber, isString } from "lodash";
|
||||
import { PictureFilled } from "@element-plus/icons-vue";
|
||||
|
||||
export default defineComponent({
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent, computed } from "vue";
|
||||
import { isArray, isString, last } from "/@/cool/utils";
|
||||
import { isArray, isString, last } from "lodash";
|
||||
import { Link } from "@element-plus/icons-vue";
|
||||
|
||||
export default defineComponent({
|
||||
|
@ -1,7 +1,7 @@
|
||||
import { useCrud } from "@cool-vue/crud";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { defineComponent, ref, watch } from "vue";
|
||||
import { isBoolean } from "/@/cool/utils";
|
||||
import { isBoolean } from "lodash";
|
||||
|
||||
export default defineComponent({
|
||||
name: "cl-switch",
|
||||
|
@ -26,7 +26,7 @@
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { watch } from "vue";
|
||||
import { last } from "/@/cool/utils";
|
||||
import { last } from "lodash";
|
||||
import { useCool } from "/@/cool";
|
||||
import { ArrowLeft, Close } from "@element-plus/icons-vue";
|
||||
import { ContextMenu } from "@cool-vue/crud";
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="page-login">
|
||||
<div class="box">
|
||||
<img class="logo" :src="Logo" alt="Logo" />
|
||||
<img class="logo" src="/@/assets/logo-text.png" alt="Logo" />
|
||||
<p class="desc">一款快速开发后台权限管理系统</p>
|
||||
|
||||
<el-form label-position="top" class="form" :disabled="saving" size="large">
|
||||
@ -60,7 +60,6 @@ import { ElMessage } from "element-plus";
|
||||
import { useCool } from "/@/cool";
|
||||
import { useBaseStore } from "/$/base";
|
||||
import Captcha from "./components/captcha.vue";
|
||||
import Logo from "/@/assets/logo-text.png";
|
||||
|
||||
export default defineComponent({
|
||||
cool: {
|
||||
@ -88,6 +87,27 @@ export default defineComponent({
|
||||
verifyCode: ""
|
||||
});
|
||||
|
||||
// 获取第一个菜单路径
|
||||
function getPath(list: any[]) {
|
||||
let path = "";
|
||||
|
||||
function deep(arr: any[]) {
|
||||
arr.forEach((e: any) => {
|
||||
if (e.type == 1) {
|
||||
if (!path) {
|
||||
path = e.path;
|
||||
}
|
||||
} else {
|
||||
deep(e.children);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
deep(list);
|
||||
|
||||
return path || "/";
|
||||
}
|
||||
|
||||
// 登录
|
||||
async function toLogin() {
|
||||
if (!form.username) {
|
||||
@ -114,12 +134,12 @@ export default defineComponent({
|
||||
await user.get();
|
||||
|
||||
// 权限菜单
|
||||
const [first] = await menu.get();
|
||||
const path = getPath(await menu.get());
|
||||
|
||||
if (!first) {
|
||||
ElMessage.error("该账号没有权限!");
|
||||
if (path) {
|
||||
router.push(path);
|
||||
} else {
|
||||
router.push("/");
|
||||
ElMessage.error("该账号没有权限!");
|
||||
}
|
||||
} catch (err: any) {
|
||||
refs.value.captcha.refresh();
|
||||
@ -134,8 +154,7 @@ export default defineComponent({
|
||||
setRefs,
|
||||
form,
|
||||
saving,
|
||||
toLogin,
|
||||
Logo
|
||||
toLogin
|
||||
};
|
||||
}
|
||||
});
|
||||
|
@ -1,11 +1,11 @@
|
||||
import { ElMessage } from "element-plus";
|
||||
import { defineStore } from "pinia";
|
||||
import { ref } from "vue";
|
||||
import { deepTree, isArray, isEmpty, isObject, revDeepTree, storage } from "/@/cool/utils";
|
||||
import { deepTree, revDeepTree, storage } from "/@/cool/utils";
|
||||
import { isArray, isEmpty, isObject, orderBy } from "lodash";
|
||||
import { app } from "/@/cool/config";
|
||||
import { addViews, service } from "/@/cool";
|
||||
import { revisePath } from "../utils";
|
||||
import { orderBy } from "lodash";
|
||||
|
||||
declare enum Type {
|
||||
"目录" = 0,
|
||||
@ -133,7 +133,7 @@ export const useMenuStore = defineStore("menu", function () {
|
||||
name: e.name,
|
||||
icon: e.icon,
|
||||
orderNum: e.orderNum,
|
||||
isShow: isEmpty(e.isShow) ? true : e.isShow,
|
||||
isShow: e.isShow === undefined ? true : e.isShow,
|
||||
meta: {
|
||||
label: e.name,
|
||||
keepAlive: e.keepAlive
|
||||
@ -160,9 +160,7 @@ export const useMenuStore = defineStore("menu", function () {
|
||||
if (isEmpty(app.menu.list)) {
|
||||
service.base.comm
|
||||
.permmenu()
|
||||
.then((res) => {
|
||||
next(res);
|
||||
})
|
||||
.then(next)
|
||||
.catch((err) => {
|
||||
ElMessage.error("菜单加载异常!");
|
||||
reject(err);
|
||||
|
@ -3,31 +3,7 @@ export function revisePath(path: string) {
|
||||
return "";
|
||||
}
|
||||
|
||||
if (path[0] == "/") {
|
||||
return path;
|
||||
} else {
|
||||
return `/${path}`;
|
||||
}
|
||||
}
|
||||
|
||||
export function firstMenu(list: Array<any>) {
|
||||
let path = "";
|
||||
|
||||
const fn = (arr: Array<any>) => {
|
||||
arr.forEach((e: any) => {
|
||||
if (e.type == 1) {
|
||||
if (!path) {
|
||||
path = e.path;
|
||||
}
|
||||
} else {
|
||||
fn(e.children);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
fn(list);
|
||||
|
||||
return path || "/404";
|
||||
return path[0] == "/" ? path : `/${path}`;
|
||||
}
|
||||
|
||||
export function createLink(url: string, id?: string) {
|
||||
|
@ -64,10 +64,11 @@
|
||||
import { defineComponent, onMounted, ref } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { useCool } from "/@/cool";
|
||||
import { deepTree, isArray, revDeepTree } from "/@/cool/utils";
|
||||
import { deepTree, revDeepTree } from "/@/cool/utils";
|
||||
import { isArray } from "lodash";
|
||||
import { ContextMenu, useForm } from "@cool-vue/crud";
|
||||
import { Refresh, Operation, MoreFilled } from "@element-plus/icons-vue";
|
||||
import { useBaseStore } from "../../store";
|
||||
import { useBaseStore } from "/$/base";
|
||||
|
||||
export default defineComponent({
|
||||
name: "dept-tree",
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent } from "vue";
|
||||
import { last, isEmpty } from "/@/cool/utils";
|
||||
import { last, isEmpty } from "lodash";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { useCool } from "/@/cool";
|
||||
import { useForm } from "@cool-vue/crud";
|
||||
@ -202,7 +202,7 @@ export default defineComponent({
|
||||
":"
|
||||
)
|
||||
)
|
||||
.join(";");
|
||||
.join(",");
|
||||
|
||||
perms.push(d);
|
||||
});
|
||||
|
@ -15,7 +15,7 @@
|
||||
<script lang="ts">
|
||||
import { defineComponent, ref, watch } from "vue";
|
||||
import { useCool } from "/@/cool";
|
||||
import { isObject } from "/@/cool/utils";
|
||||
import { isObject } from "lodash";
|
||||
|
||||
export default defineComponent({
|
||||
name: "menu-perms",
|
||||
|
@ -42,7 +42,7 @@ import { ElMessage } from "element-plus";
|
||||
import { reactive, ref } from "vue";
|
||||
import { useBaseStore } from "/$/base";
|
||||
import { useCool } from "/@/cool";
|
||||
import { cloneDeep } from "/@/cool/utils";
|
||||
import { cloneDeep } from "lodash";
|
||||
|
||||
const { service } = useCool();
|
||||
const { user } = useBaseStore();
|
||||
|
@ -56,7 +56,9 @@
|
||||
<template #slot-add="{ scope }">
|
||||
<el-button
|
||||
v-if="scope.row.type != 2"
|
||||
type="text"
|
||||
type="primary"
|
||||
text
|
||||
bg
|
||||
@click="upsertAppend(scope.row)"
|
||||
>新增</el-button
|
||||
>
|
||||
@ -201,6 +203,7 @@ const Table = useTable({
|
||||
{
|
||||
label: "操作",
|
||||
type: "op",
|
||||
width: 250,
|
||||
buttons: ["slot-add", "edit", "delete"]
|
||||
}
|
||||
]
|
||||
|
@ -213,7 +213,7 @@ const Table = useTable({
|
||||
{
|
||||
type: "op",
|
||||
buttons: ["slot-btn", "edit", "delete"],
|
||||
width: 160
|
||||
width: 180
|
||||
}
|
||||
]
|
||||
});
|
||||
|
@ -133,9 +133,9 @@ export default {
|
||||
<script lang="ts" setup>
|
||||
import { PictureFilled, ZoomIn, Delete, Document } from "@element-plus/icons-vue";
|
||||
import { computed, ref, reactive, watch, PropType } from "vue";
|
||||
import { v4 as uuidv4 } from "uuid";
|
||||
import { useCool } from "/@/cool";
|
||||
import { isArray, extname, module, isNumber } from "/@/cool/utils";
|
||||
import { extname, module, uuid } from "/@/cool/utils";
|
||||
import { isArray, isNumber } from "lodash";
|
||||
import { ElMessage } from "element-plus";
|
||||
import { useBaseStore } from "/$/base";
|
||||
import Draggable from "vuedraggable";
|
||||
@ -299,7 +299,7 @@ async function httpRequest(req: any, item?: any) {
|
||||
|
||||
try {
|
||||
// 文件名 uuid + filename
|
||||
let fileName = uuidv4() + "_" + req.file.name;
|
||||
let fileName = uuid() + "_" + req.file.name;
|
||||
const { mode, type } = await service.base.comm.uploadMode();
|
||||
|
||||
// 多种上传请求
|
||||
@ -415,7 +415,7 @@ watch(
|
||||
return {
|
||||
type: fileType(url),
|
||||
progress: 0,
|
||||
uid: uuidv4(),
|
||||
uid: uuid(),
|
||||
url,
|
||||
preload: url
|
||||
};
|
||||
|
@ -107,7 +107,8 @@ export default {
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted, provide, reactive, ref, watch } from "vue";
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { isEmpty, module } from "/@/cool/utils";
|
||||
import { module } from "/@/cool/utils";
|
||||
import { isEmpty } from "lodash";
|
||||
import Category from "./space/category.vue";
|
||||
import FileItem from "./space/file-item.vue";
|
||||
import { useCool } from "/@/cool";
|
||||
|
@ -35,7 +35,7 @@
|
||||
<script lang="ts" setup>
|
||||
import { ElMessage, ElMessageBox } from "element-plus";
|
||||
import { computed, inject, onMounted, ref } from "vue";
|
||||
import { isEmpty } from "/@/cool/utils";
|
||||
import { isEmpty } from "lodash";
|
||||
import { useCool } from "/@/cool";
|
||||
import { ContextMenu, useForm } from "@cool-vue/crud";
|
||||
import { useBaseStore } from "/$/base/store";
|
||||
|
127
yarn.lock
127
yarn.lock
@ -984,19 +984,19 @@
|
||||
"@babel/helper-validator-identifier" "^7.16.7"
|
||||
to-fast-properties "^2.0.0"
|
||||
|
||||
"@cool-vue/crud@^5.0.6":
|
||||
version "5.0.6"
|
||||
resolved "https://registry.npmjs.org/@cool-vue/crud/-/crud-5.0.6.tgz#7b216fa0ba1ba7ce1477fa0735205a512c7a7ef3"
|
||||
integrity sha512-NOL6d1dkDqHI0xuQcpNcaEa3IGSajxMYXbLnk89r3WlnYOvFe5f0XbReWhHM5R31uROncpmoN2AnWROI+GCagg==
|
||||
"@cool-vue/crud@^5.0.7":
|
||||
version "5.0.7"
|
||||
resolved "https://registry.npmjs.org/@cool-vue/crud/-/crud-5.0.7.tgz#60459f3e58b04a08c621aa41e25c03618645bd6b"
|
||||
integrity sha512-/I4f6KFpPHiJE86w2pHAwu2Gn2WAd2LCFn6Bc3jzgg6RdYlAeIyRB9Ph8KasE7CCjyPdb2kyDYEQsZhOfODy9g==
|
||||
dependencies:
|
||||
array.prototype.flat "^1.2.4"
|
||||
core-js "^3.21.1"
|
||||
element-plus "^2.1.4"
|
||||
element-plus "^2.2.0"
|
||||
merge "^2.1.1"
|
||||
mitt "^3.0.0"
|
||||
vue "^3.2.31"
|
||||
|
||||
"@ctrl/tinycolor@^3.4.0":
|
||||
"@ctrl/tinycolor@^3.4.1":
|
||||
version "3.4.1"
|
||||
resolved "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.1.tgz#75b4c27948c81e88ccd3a8902047bcd797f38d32"
|
||||
integrity sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==
|
||||
@ -1021,17 +1021,17 @@
|
||||
minimatch "^3.0.4"
|
||||
strip-json-comments "^3.1.1"
|
||||
|
||||
"@floating-ui/core@^0.6.1":
|
||||
version "0.6.1"
|
||||
resolved "https://registry.npmjs.org/@floating-ui/core/-/core-0.6.1.tgz#aed861a1b6dbebadf14a9dd829ba67f4f3ae795c"
|
||||
integrity sha512-Y30eVMcZva8o84c0HcXAtDO4BEzPJMvF6+B7x7urL2xbAqVsGJhojOyHLaoQHQYjb6OkqRq5kO+zeySycQwKqg==
|
||||
"@floating-ui/core@^0.6.2":
|
||||
version "0.6.2"
|
||||
resolved "https://registry.npmjs.org/@floating-ui/core/-/core-0.6.2.tgz#f2813f0e5f3d5ed7af5029e1a082203dadf02b7d"
|
||||
integrity sha512-jktYRmZwmau63adUG3GKOAVCofBXkk55S/zQ94XOorAHhwqFIOFAy1rSp2N0Wp6/tGbe9V3u/ExlGZypyY17rg==
|
||||
|
||||
"@floating-ui/dom@^0.4.2":
|
||||
version "0.4.4"
|
||||
resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.4.4.tgz#e0919d23e40bcc84ce2ebe1b9701b211f2d84b3c"
|
||||
integrity sha512-0Ulu3B/dqQplUUSqnTx0foSrlYuMN+GTtlJWvNJwt6Fr7/PqmlR/Y08o6/+bxDWr6p3roBJRaQ51MDZsNmEhhw==
|
||||
"@floating-ui/dom@^0.4.5":
|
||||
version "0.4.5"
|
||||
resolved "https://registry.npmjs.org/@floating-ui/dom/-/dom-0.4.5.tgz#2e88d16646119cc67d44683f75ee99840475bbfa"
|
||||
integrity sha512-b+prvQgJt8pieaKYMSJBXHxX/DYwdLsAWxKYqnO5dO2V4oo/TYBZJAUQCVNjTWWsrs6o4VDrNcP9+E70HAhJdw==
|
||||
dependencies:
|
||||
"@floating-ui/core" "^0.6.1"
|
||||
"@floating-ui/core" "^0.6.2"
|
||||
|
||||
"@hapi/hoek@^9.0.0":
|
||||
version "9.2.1"
|
||||
@ -1127,10 +1127,10 @@
|
||||
resolved "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1"
|
||||
integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==
|
||||
|
||||
"@popperjs/core@^2.11.4":
|
||||
version "2.11.5"
|
||||
resolved "https://registry.npmjs.org/@popperjs/core/-/core-2.11.5.tgz#db5a11bf66bdab39569719555b0f76e138d7bd64"
|
||||
integrity sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw==
|
||||
"@popperjs/core@npm:@sxzz/popperjs-es@^2.11.6":
|
||||
version "2.11.7"
|
||||
resolved "https://registry.npmjs.org/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz#a7f69e3665d3da9b115f9e71671dae1b97e13671"
|
||||
integrity sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==
|
||||
|
||||
"@rollup/plugin-node-resolve@^13.0.4":
|
||||
version "13.2.0"
|
||||
@ -1231,11 +1231,16 @@
|
||||
dependencies:
|
||||
"@types/lodash" "*"
|
||||
|
||||
"@types/lodash@*", "@types/lodash@^4.14.168", "@types/lodash@^4.14.181":
|
||||
"@types/lodash@*", "@types/lodash@^4.14.168":
|
||||
version "4.14.181"
|
||||
resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.181.tgz#d1d3740c379fda17ab175165ba04e2d03389385d"
|
||||
integrity sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==
|
||||
|
||||
"@types/lodash@^4.14.182":
|
||||
version "4.14.182"
|
||||
resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz#05301a4d5e62963227eaafe0ce04dd77c54ea5c2"
|
||||
integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==
|
||||
|
||||
"@types/mockjs@^1.0.4":
|
||||
version "1.0.6"
|
||||
resolved "https://registry.npmjs.org/@types/mockjs/-/mockjs-1.0.6.tgz#dafdd5de65156f7aa63eab4e29fa3d532cd95609"
|
||||
@ -1784,7 +1789,7 @@
|
||||
resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.2.32.tgz#1ca0c3b8c03a5e24129156e171df736b2c1d645f"
|
||||
integrity sha512-bjcixPErUsAnTQRQX4Z5IQnICYjIfNCyCl8p29v1M6kfVzvwOICPw+dz48nNuWlTOOx2RHhzHdazJibE8GSnsw==
|
||||
|
||||
"@vueuse/core@^8.2.4", "@vueuse/core@^8.2.5":
|
||||
"@vueuse/core@^8.2.5":
|
||||
version "8.2.5"
|
||||
resolved "https://registry.npmjs.org/@vueuse/core/-/core-8.2.5.tgz#ca6a59091ecf16e6739c53f3d857b11967a5eb06"
|
||||
integrity sha512-5prZAA1Ji2ltwNUnzreu6WIXYqHYP/9U2BiY5mD/650VYLpVcwVlYznJDFcLCmEWI3o3Vd34oS1FUf+6Mh68GQ==
|
||||
@ -1793,11 +1798,25 @@
|
||||
"@vueuse/shared" "8.2.5"
|
||||
vue-demi "*"
|
||||
|
||||
"@vueuse/core@^8.2.6":
|
||||
version "8.4.2"
|
||||
resolved "https://registry.npmjs.org/@vueuse/core/-/core-8.4.2.tgz#e5be73f40394150e6a1b6abd59e5adb7c6bb6c1f"
|
||||
integrity sha512-dUVU96lii1ZdWoNJXauQNt+4QrHz1DKbuW+y6pDR2N10q7rGZJMDU7pQeMcC2XeosX7kMODfaBuqsF03NozzLg==
|
||||
dependencies:
|
||||
"@vueuse/metadata" "8.4.2"
|
||||
"@vueuse/shared" "8.4.2"
|
||||
vue-demi "*"
|
||||
|
||||
"@vueuse/metadata@8.2.5":
|
||||
version "8.2.5"
|
||||
resolved "https://registry.npmjs.org/@vueuse/metadata/-/metadata-8.2.5.tgz#51c7d95e04284ea378a5242a2e88b77494e2c117"
|
||||
integrity sha512-Lk9plJjh9cIdiRdcj16dau+2LANxIdFCiTgdfzwYXbflxq0QnMBeOD2qHgKDE7fuVrtPcVWj8VSuZEx1HRfNQA==
|
||||
|
||||
"@vueuse/metadata@8.4.2":
|
||||
version "8.4.2"
|
||||
resolved "https://registry.npmjs.org/@vueuse/metadata/-/metadata-8.4.2.tgz#b33e6b7bd5ca69e3f24ea41b149267118bcd566f"
|
||||
integrity sha512-2BIj++7P0/I5dfMsEe8q7Kw0HqVAjVcyNOd9+G22/ILUC9TVLTeYOuJ1kwa1Gpr+0LWKHc6GqHiLWNL33+exoQ==
|
||||
|
||||
"@vueuse/shared@8.2.5":
|
||||
version "8.2.5"
|
||||
resolved "https://registry.npmjs.org/@vueuse/shared/-/shared-8.2.5.tgz#1ae200a240c4b8d42d41723b64d8f917aa57ff16"
|
||||
@ -1805,6 +1824,13 @@
|
||||
dependencies:
|
||||
vue-demi "*"
|
||||
|
||||
"@vueuse/shared@8.4.2":
|
||||
version "8.4.2"
|
||||
resolved "https://registry.npmjs.org/@vueuse/shared/-/shared-8.4.2.tgz#5900f06ff78bd8b6df4cbf48f8ca82dd6d9747d1"
|
||||
integrity sha512-hILXMEjL8YQhj1LHN/HZ49UThyfk8irTjhele2nW+L3N55ElFUBGB/f4w0rg8EW+/suhqv7kJJPTZzvHCqxlIw==
|
||||
dependencies:
|
||||
vue-demi "*"
|
||||
|
||||
"@webassemblyjs/ast@1.11.1":
|
||||
version "1.11.1"
|
||||
resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
|
||||
@ -2692,10 +2718,10 @@ csstype@^2.6.8:
|
||||
resolved "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda"
|
||||
integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==
|
||||
|
||||
dayjs@^1.11.0:
|
||||
version "1.11.0"
|
||||
resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.0.tgz#009bf7ef2e2ea2d5db2e6583d2d39a4b5061e805"
|
||||
integrity sha512-JLC809s6Y948/FuCZPm5IX8rRhQwOiyMb2TfVVQEixG7P8Lm/gt5S7yoQZmC8x1UehI9Pb7sksEt4xx14m+7Ug==
|
||||
dayjs@^1.11.1:
|
||||
version "1.11.2"
|
||||
resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.2.tgz#fa0f5223ef0d6724b3d8327134890cfe3d72fbe5"
|
||||
integrity sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw==
|
||||
|
||||
debug@2.6.9, debug@^2.2.0, debug@^2.3.3:
|
||||
version "2.6.9"
|
||||
@ -2912,20 +2938,20 @@ electron-to-chromium@^1.4.84:
|
||||
resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.107.tgz#564257014ab14033b4403a309c813123c58a3fb9"
|
||||
integrity sha512-Huen6taaVrUrSy8o7mGStByba8PfOWWluHNxSHGBrCgEdFVLtvdQDBr9LBCF9Uci8SYxh28QNNMO0oC17wbGAg==
|
||||
|
||||
element-plus@^2.1.4, element-plus@^2.1.7:
|
||||
version "2.1.9"
|
||||
resolved "https://registry.npmjs.org/element-plus/-/element-plus-2.1.9.tgz#8779b041f32f871eef2f903ee4c0da16dfb13024"
|
||||
integrity sha512-6mWqS3YrmJPnouWP4otzL8+MehfOnDFqDbcIdnmC07p+Z0JkWe/CVKc4Wky8AYC8nyDMUQyiZYvooCbqGuM7pg==
|
||||
element-plus@^2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.npmjs.org/element-plus/-/element-plus-2.2.0.tgz#58467d1efde071c2bc12caa9fb451e515667fc78"
|
||||
integrity sha512-zxmAFEAa1T/n09rR+NozXcWl5CjaFtqoaxhFSafag0dgc90tgEHitDXfegdFAl4ahugdNTqu9aLzngx3VhDAtA==
|
||||
dependencies:
|
||||
"@ctrl/tinycolor" "^3.4.0"
|
||||
"@ctrl/tinycolor" "^3.4.1"
|
||||
"@element-plus/icons-vue" "^1.1.4"
|
||||
"@floating-ui/dom" "^0.4.2"
|
||||
"@popperjs/core" "^2.11.4"
|
||||
"@types/lodash" "^4.14.181"
|
||||
"@floating-ui/dom" "^0.4.5"
|
||||
"@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.6"
|
||||
"@types/lodash" "^4.14.182"
|
||||
"@types/lodash-es" "^4.17.6"
|
||||
"@vueuse/core" "^8.2.4"
|
||||
"@vueuse/core" "^8.2.6"
|
||||
async-validator "^4.0.7"
|
||||
dayjs "^1.11.0"
|
||||
dayjs "^1.11.1"
|
||||
escape-html "^1.0.3"
|
||||
lodash "^4.17.21"
|
||||
lodash-es "^4.17.21"
|
||||
@ -4717,6 +4743,11 @@ nanoid@^3.3.1:
|
||||
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz#c89622fafb4381cd221421c69ec58547a1eec557"
|
||||
integrity sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==
|
||||
|
||||
nanoid@^3.3.3:
|
||||
version "3.3.4"
|
||||
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
|
||||
integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
|
||||
|
||||
nanomatch@^1.2.1:
|
||||
version "1.2.13"
|
||||
resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
|
||||
@ -5124,7 +5155,7 @@ postcss@^5.2.17:
|
||||
source-map "^0.5.6"
|
||||
supports-color "^3.2.3"
|
||||
|
||||
postcss@^8.1.10, postcss@^8.4.12:
|
||||
postcss@^8.1.10:
|
||||
version "8.4.12"
|
||||
resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.12.tgz#1e7de78733b28970fa4743f7da6f3763648b1905"
|
||||
integrity sha512-lg6eITwYe9v6Hr5CncVbK70SoioNQIq81nsaG86ev5hAidQvmOeETBqs7jm43K2F5/Ley3ytDtriImV6TpNiSg==
|
||||
@ -5133,6 +5164,15 @@ postcss@^8.1.10, postcss@^8.4.12:
|
||||
picocolors "^1.0.0"
|
||||
source-map-js "^1.0.2"
|
||||
|
||||
postcss@^8.4.13:
|
||||
version "8.4.13"
|
||||
resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz#7c87bc268e79f7f86524235821dfdf9f73e5d575"
|
||||
integrity sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==
|
||||
dependencies:
|
||||
nanoid "^3.3.3"
|
||||
picocolors "^1.0.0"
|
||||
source-map-js "^1.0.2"
|
||||
|
||||
posthtml-parser@^0.2.0, posthtml-parser@^0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.2.1.tgz#35d530de386740c2ba24ff2eb2faf39ccdf271dd"
|
||||
@ -6295,11 +6335,6 @@ utils-merge@1.0.1:
|
||||
resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
|
||||
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
|
||||
|
||||
uuid@^8.3.2:
|
||||
version "8.3.2"
|
||||
resolved "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
|
||||
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
|
||||
|
||||
v8-compile-cache@^2.0.3:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
|
||||
@ -6366,13 +6401,13 @@ vite-svg-loader@^2.1.0:
|
||||
"@vue/compiler-sfc" "^3.0.11"
|
||||
svgo "^2.3.0"
|
||||
|
||||
vite@^2.9.6:
|
||||
version "2.9.6"
|
||||
resolved "https://registry.npmjs.org/vite/-/vite-2.9.6.tgz#29f1b33193b0de9e155d67ba0dd097501c3c3281"
|
||||
integrity sha512-3IffdrByHW95Yjv0a13TQOQfJs7L5dVlSPuTt432XLbRMriWbThqJN2k/IS6kXn5WY4xBLhK9XoaWay1B8VzUw==
|
||||
vite@^2.9.8:
|
||||
version "2.9.8"
|
||||
resolved "https://registry.npmjs.org/vite/-/vite-2.9.8.tgz#2c2cb0790beb0fbe4b8c0995b80fe691a91c2545"
|
||||
integrity sha512-zsBGwn5UT3YS0NLSJ7hnR54+vUKfgzMUh/Z9CxF1YKEBVIe213+63jrFLmZphgGI5zXwQCSmqIdbPuE8NJywPw==
|
||||
dependencies:
|
||||
esbuild "^0.14.27"
|
||||
postcss "^8.4.12"
|
||||
postcss "^8.4.13"
|
||||
resolve "^1.22.0"
|
||||
rollup "^2.59.0"
|
||||
optionalDependencies:
|
||||
|
Loading…
Reference in New Issue
Block a user