diff --git a/package.json b/package.json index 9c4f93e..c7e20a0 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "xlsx": "^0.18.5" }, "devDependencies": { - "@cool-vue/vite-plugin": "^7.1.2", + "@cool-vue/vite-plugin": "^7.1.4", "@types/file-saver": "^2.0.7", "@types/lodash-es": "^4.17.8", "@types/mockjs": "^1.0.7", diff --git a/packages/vite-plugin/dist/index.js b/packages/vite-plugin/dist/index.js index aaeba91..dc6f4a3 100644 --- a/packages/vite-plugin/dist/index.js +++ b/packages/vite-plugin/dist/index.js @@ -9,6 +9,7 @@ reqUrl: "", demo: false, eps: { + api: "", dist: "./build/cool", mapping: [ { @@ -112,6 +113,22 @@ let service = {}; let list = []; let customList = []; + // 获取请求地址 + function getEpsUrl() { + let url = config.eps.api; + if (!url) { + url = config.type; + } + switch (url) { + case "app": + url = "/app/base/comm/eps"; + break; + case "admin": + url = "/admin/base/open/eps"; + break; + } + return url; + } // 获取路径 function getEpsPath(filename) { return path.join(config.type == "admin" ? config.eps.dist : rootDir(config.eps.dist), filename || ""); @@ -140,15 +157,7 @@ error(`[cool-eps] ${epsPath} 文件异常, ${err.message}`); } // 请求地址 - let url = config.reqUrl; - switch (config.type) { - case "app": - url += "/app/base/comm/eps"; - break; - case "admin": - url += "/admin/base/open/eps"; - break; - } + const url = config.reqUrl + getEpsUrl(); // 请求数据 await axios .get(url, { @@ -429,14 +438,13 @@ } // 创建 service function createService() { + // 路径第一层作为 id 标识 + const id = getEpsUrl().split("/")[1]; list.forEach((e) => { + // 请求地址 + const path = e.prefix[0] == "/" ? e.prefix.substring(1, e.prefix.length) : e.prefix; // 分隔路径 - const arr = e.prefix - .replace(/\//, "") - .replace(config.type, "") - .split("/") - .filter(Boolean) - .map(toCamel); + const arr = path.replace(id, "").split("/").filter(Boolean).map(toCamel); // 遍历 function deep(d, i) { const k = arr[i]; @@ -452,7 +460,7 @@ // 不存在则创建 if (!d[k]) { d[k] = { - namespace: e.prefix.substring(1, e.prefix.length), + namespace: path, permission: {}, }; } @@ -465,9 +473,8 @@ } }); // 创建权限 - getNames(d[k]).forEach((e) => { - d[k].permission[e] = - `${d[k].namespace.replace(`${config.type}/`, "")}/${e}`.replace(/\//g, ":"); + getNames(d[k]).forEach((i) => { + d[k].permission[i] = `${d[k].namespace.replace(`${id}/`, "")}/${i}`.replace(/\//g, ":"); }); } } @@ -806,12 +813,18 @@ config.reqUrl = options.proxy["/dev/"].target; // Eps if (options.eps) { - const { dist, mapping } = options.eps; + const { dist, mapping, api } = options.eps; + // 类型 + if (api) { + config.eps.api = api; + } + // 输出目录 if (dist) { config.eps.dist = dist; } + // 匹配规则 if (mapping) { - config.eps.mapping.unshift(...mapping); + lodash.merge(config.eps.mapping, mapping); } } return [base(), virtual(), demo(options.demo)]; diff --git a/packages/vite-plugin/package.json b/packages/vite-plugin/package.json index 5bcdb93..9cb6299 100644 --- a/packages/vite-plugin/package.json +++ b/packages/vite-plugin/package.json @@ -1,6 +1,6 @@ { "name": "@cool-vue/vite-plugin", - "version": "7.1.3", + "version": "7.1.4", "description": "cool-admin/cool-uni builder", "main": "/dist/index.js", "scripts": { diff --git a/packages/vite-plugin/src/config.ts b/packages/vite-plugin/src/config.ts index 6b7e7ea..47e333b 100644 --- a/packages/vite-plugin/src/config.ts +++ b/packages/vite-plugin/src/config.ts @@ -5,6 +5,7 @@ export const config: Config.Data = { reqUrl: "", demo: false, eps: { + api: "", dist: "./build/cool", mapping: [ { diff --git a/packages/vite-plugin/src/ctx/index.ts b/packages/vite-plugin/src/ctx/index.ts index 1bd6c18..08ab329 100644 --- a/packages/vite-plugin/src/ctx/index.ts +++ b/packages/vite-plugin/src/ctx/index.ts @@ -2,9 +2,9 @@ import { join } from "path"; import { readFile, rootDir, writeFile } from "../utils"; import { glob } from "glob"; import { assign, cloneDeep, isEqual, orderBy } from "lodash"; -import type { Ctx } from "../../types"; import { config } from "../config"; import fs from "fs"; +import type { Ctx } from "../../types"; export async function createCtx() { let ctx: Ctx.Data = {}; diff --git a/packages/vite-plugin/src/eps/index.ts b/packages/vite-plugin/src/eps/index.ts index 44c00f4..7ac67a8 100644 --- a/packages/vite-plugin/src/eps/index.ts +++ b/packages/vite-plugin/src/eps/index.ts @@ -11,6 +11,27 @@ let service = {}; let list: Eps.Entity[] = []; let customList: Eps.Entity[] = []; +// 获取请求地址 +function getEpsUrl() { + let url = config.eps.api; + + if (!url) { + url = config.type; + } + + switch (url) { + case "app": + url = "/app/base/comm/eps"; + break; + + case "admin": + url = "/admin/base/open/eps"; + break; + } + + return url; +} + // 获取路径 function getEpsPath(filename?: string) { return join( @@ -46,17 +67,7 @@ async function getData(data?: Eps.Entity[]) { } // 请求地址 - let url = config.reqUrl; - - switch (config.type) { - case "app": - url += "/app/base/comm/eps"; - break; - - case "admin": - url += "/admin/base/open/eps"; - break; - } + const url = config.reqUrl + getEpsUrl(); // 请求数据 await axios @@ -395,14 +406,15 @@ async function createDescribe({ list, service }: { list: Eps.Entity[]; service: // 创建 service function createService() { + // 路径第一层作为 id 标识 + const id = getEpsUrl().split("/")[1]; + list.forEach((e) => { + // 请求地址 + const path = e.prefix[0] == "/" ? e.prefix.substring(1, e.prefix.length) : e.prefix; + // 分隔路径 - const arr = e.prefix - .replace(/\//, "") - .replace(config.type, "") - .split("/") - .filter(Boolean) - .map(toCamel); + const arr = path.replace(id, "").split("/").filter(Boolean).map(toCamel); // 遍历 function deep(d: any, i: number) { @@ -420,7 +432,7 @@ function createService() { // 不存在则创建 if (!d[k]) { d[k] = { - namespace: e.prefix.substring(1, e.prefix.length), + namespace: path, permission: {}, }; } @@ -436,12 +448,11 @@ function createService() { }); // 创建权限 - getNames(d[k]).forEach((e) => { - d[k].permission[e] = - `${d[k].namespace.replace(`${config.type}/`, "")}/${e}`.replace( - /\//g, - ":", - ); + getNames(d[k]).forEach((i) => { + d[k].permission[i] = `${d[k].namespace.replace(`${id}/`, "")}/${i}`.replace( + /\//g, + ":", + ); }); } } diff --git a/packages/vite-plugin/src/index.ts b/packages/vite-plugin/src/index.ts index 774d2a4..6d78c03 100644 --- a/packages/vite-plugin/src/index.ts +++ b/packages/vite-plugin/src/index.ts @@ -3,6 +3,7 @@ import { config } from "./config"; import { demo } from "./demo"; import { virtual } from "./virtual"; import type { Config } from "../types"; +import { merge } from "lodash"; export function cool(options: Config.Options) { // 应用类型,admin | app @@ -13,14 +14,21 @@ export function cool(options: Config.Options) { // Eps if (options.eps) { - const { dist, mapping } = options.eps; + const { dist, mapping, api } = options.eps; + // 类型 + if (api) { + config.eps.api = api; + } + + // 输出目录 if (dist) { config.eps.dist = dist; } + // 匹配规则 if (mapping) { - config.eps.mapping.unshift(...mapping); + merge(config.eps.mapping, mapping); } } diff --git a/packages/vite-plugin/types/index.d.ts b/packages/vite-plugin/types/index.d.ts index 6cf4174..aad12a2 100644 --- a/packages/vite-plugin/types/index.d.ts +++ b/packages/vite-plugin/types/index.d.ts @@ -61,6 +61,7 @@ export namespace Ctx { export namespace Config { type Type = "app" | "admin"; interface Eps { + api: "app" | "admin" | (string & {}); dist: string; mapping: { type?: string; @@ -71,10 +72,7 @@ export namespace Config { interface Options { type: Config.Type; proxy: any; - eps?: { - dist?: string; - mapping?: Config.Eps["mapping"]; - }; + eps?: Partial; demo?: boolean; } interface Data { @@ -85,3 +83,5 @@ export namespace Config { [key: string]: any; } } + +// ts范型,Config.EPS的类型改成全部可选 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1d16d91..eb7943f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -31,7 +31,7 @@ importers: version: 2.0.0 core-js: specifier: ^3.32.1 - version: 3.37.0 + version: 3.37.1 dayjs: specifier: ^1.11.10 version: 1.11.11 @@ -40,7 +40,7 @@ importers: version: 5.5.0 element-plus: specifier: ^2.5.6 - version: 2.7.2(vue@3.4.27(typescript@5.4.5)) + version: 2.7.3(vue@3.4.27(typescript@5.4.5)) file-saver: specifier: ^2.0.5 version: 2.0.5 @@ -88,8 +88,8 @@ importers: version: 0.18.5 devDependencies: '@cool-vue/vite-plugin': - specifier: ^7.1.2 - version: 7.1.2 + specifier: ^7.1.4 + version: 7.1.4 '@types/file-saver': specifier: ^2.0.7 version: 2.0.7 @@ -101,7 +101,7 @@ importers: version: 1.0.10 '@types/node': specifier: ^20.5.6 - version: 20.12.11 + version: 20.12.12 '@types/nprogress': specifier: ^0.2.0 version: 0.2.3 @@ -116,10 +116,10 @@ importers: version: 6.21.0(eslint@8.57.0)(typescript@5.4.5) '@vitejs/plugin-vue': specifier: ^5.0.3 - version: 5.0.4(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5)) + version: 5.0.4(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5)) '@vitejs/plugin-vue-jsx': specifier: ^3.1.0 - version: 3.1.0(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5)) + version: 3.1.0(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5)) '@vue/compiler-sfc': specifier: ^3.4.15 version: 3.4.27 @@ -143,7 +143,7 @@ importers: version: 5.12.0(rollup@4.17.2) sass: specifier: ^1.66.1 - version: 1.77.1 + version: 1.77.2 terser: specifier: ^5.27.0 version: 5.31.0 @@ -152,10 +152,10 @@ importers: version: 5.4.5 vite: specifier: ^5.0.12 - version: 5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0) + version: 5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0) vite-plugin-compression: specifier: ^0.5.1 - version: 0.5.1(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0)) + version: 0.5.1(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0)) packages: @@ -311,8 +311,8 @@ packages: '@cool-vue/crud@7.1.16': resolution: {integrity: sha512-zNPgotaHO1uYk4fKskSgfOze53qQ7fOHrubiqtH5xb5eUI0L6W2VwtMFlQ+ro7PuLnJQ0f6xKqWlw348bMfwWg==} - '@cool-vue/vite-plugin@7.1.2': - resolution: {integrity: sha512-VRkJWIJP3eMJod7gCqrSdpKUOHrJJYwW2jyuEo1LroFjgPqhf1qH2IvPFRreKDdiFfDlwwE4g67nP/VBI/CpOw==} + '@cool-vue/vite-plugin@7.1.4': + resolution: {integrity: sha512-AYY+YwwL57+KJ/2dC7+hIMgHl1vc8FPTf43E6ZF2RoSk8/rgN7kg+l0OgvVJ9QUfCdf3+M4w/T0DWNi6/JDuHQ==} '@ctrl/tinycolor@3.6.1': resolution: {integrity: sha512-SITSV6aIXsuVNV3f3O0f2n/cgyEDWoSqtZMYiAmcsYHydcKrOz3gUxB/iXd/Qf08+IZX4KpgNbvUdMBmWz+kcA==} @@ -479,8 +479,8 @@ packages: resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@floating-ui/core@1.6.1': - resolution: {integrity: sha512-42UH54oPZHPdRHdw6BgoBD6cg/eVTmVrFcgeRDM3jbO7uxSoipVcmcIGFcA5jmOHO5apcyvBhkSKES3fQJnu7A==} + '@floating-ui/core@1.6.2': + resolution: {integrity: sha512-+2XpQV9LLZeanU4ZevzRnGFg2neDeKHgFLjP6YLW+tly0IvrhqT4u8enLGjLH3qeh85g19xY5rsAusfwTdn5lg==} '@floating-ui/dom@1.6.5': resolution: {integrity: sha512-Nsdud2X65Dz+1RHjAIP0t8z5e2ff/IRbei6BqFrl1urT8sDVzM1HMQ+R0XcU5ceRfyO3I6ayeqIfh+6Wb8LGTw==} @@ -693,8 +693,8 @@ packages: '@types/lodash-es@4.17.12': resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} - '@types/lodash@4.17.1': - resolution: {integrity: sha512-X+2qazGS3jxLAIz5JDXDzglAF3KpijdhFxlf/V1+hEsOUc+HnWi81L/uv/EvGuV90WY+7mPGFCUDGfQC3Gj95Q==} + '@types/lodash@4.17.4': + resolution: {integrity: sha512-wYCP26ZLxaT3R39kiN2+HcJ4kTd3U1waI/cY7ivWYqFP6pW3ZNpvi6Wd6PHZx7T/t8z0vlkXMg3QYLa7DZ/IJQ==} '@types/minimatch@5.1.2': resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} @@ -702,8 +702,8 @@ packages: '@types/mockjs@1.0.10': resolution: {integrity: sha512-SXgrhajHG7boLv6oU93CcmdDm0HYRiceuz6b+7z+/2lCJPTWDv0V5YiwFHT2ejE4bQqgSXQiVPQYPWv7LGsK1g==} - '@types/node@20.12.11': - resolution: {integrity: sha512-vDg9PZ/zi+Nqp6boSOT7plNuthRugEKixDv5sFTIpkE89MmNtEArAShI4mxuX2+UrLEe9pxC1vm2cjm9YlWbJw==} + '@types/node@20.12.12': + resolution: {integrity: sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==} '@types/nprogress@0.2.3': resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} @@ -1084,8 +1084,8 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001617: - resolution: {integrity: sha512-mLyjzNI9I+Pix8zwcrpxEbGlfqOkF9kM3ptzmKNw5tizSyYwMe+nGLTqMK9cO+0E+Bh6TsBxNAaHWEM8xwSsmA==} + caniuse-lite@1.0.30001620: + resolution: {integrity: sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==} cfb@1.2.2: resolution: {integrity: sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA==} @@ -1131,8 +1131,8 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} - commander@12.0.0: - resolution: {integrity: sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==} + commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} commander@2.20.3: @@ -1151,8 +1151,8 @@ packages: convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - core-js@3.37.0: - resolution: {integrity: sha512-fu5vHevQ8ZG4og+LXug8ulUtVxjOcEYvifJr7L5Bfq9GOztVqsKd9/59hUk2ZSbCrS3BqUr3EpaYGIYzq7g3Ug==} + core-js@3.37.1: + resolution: {integrity: sha512-Xn6qmxrQZyB0FFY8E3bgRXei3lWDJHhvI+u0q9TKIYM49G8pAr0FgnnrFRAmsbptZL1yxRADVXn+x5AGsbBfyw==} crc-32@1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} @@ -1238,11 +1238,11 @@ packages: echarts@5.5.0: resolution: {integrity: sha512-rNYnNCzqDAPCr4m/fqyUFv7fD9qIsd50S6GDFgO1DxZhncCsNsG7IfUlAlvZe5oSEQxtsjnHiUuppzccry93Xw==} - electron-to-chromium@1.4.763: - resolution: {integrity: sha512-k4J8NrtJ9QrvHLRo8Q18OncqBCB7tIUyqxRcJnlonQ0ioHKYB988GcDFF3ZePmnb8eHEopDs/wPHR/iGAFgoUQ==} + electron-to-chromium@1.4.774: + resolution: {integrity: sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==} - element-plus@2.7.2: - resolution: {integrity: sha512-AdEzBU/A68iUleio0MkQ46JeU5SeQvFFd915GJFScJmUEo5AmYg3OQ4pVjcu+p3b3Nupg9MC5Wa4xjAiC51kUg==} + element-plus@2.7.3: + resolution: {integrity: sha512-OaqY1kQ2xzNyRFyge3fzM7jqMwux+464RBEqd+ybRV9xPiGxtgnj/sVK4iEbnKnzQIa9XK03DOIFzoToUhu1DA==} peerDependencies: vue: ^3.2.0 @@ -1504,9 +1504,9 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} - glob@10.3.14: - resolution: {integrity: sha512-4fkAqu93xe9Mk7le9v0y3VrPDqLKHarNi2s4Pv7f2yOvfhWfhc7hRPHC/JyqMqb8B/Dt/eGS4n7ykwf3fOsl8g==} - engines: {node: '>=16 || 14 >=14.17'} + glob@10.3.15: + resolution: {integrity: sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==} + engines: {node: '>=16 || 14 >=14.18'} hasBin: true glob@7.2.3: @@ -1584,8 +1584,8 @@ packages: immer@9.0.21: resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==} - immutable@4.3.5: - resolution: {integrity: sha512-8eabxkth9gZatlwl5TBuJnCsoTADlL6ftEr7A4qgdaTsPyreilDSnUk57SO+jfKcNtxPa22U5KK6DSeAYhpBJw==} + immutable@4.3.6: + resolution: {integrity: sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==} import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -1953,16 +1953,16 @@ packages: path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.11.0: - resolution: {integrity: sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==} - engines: {node: '>=16 || 14 >=14.17'} + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -1996,8 +1996,8 @@ packages: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} - preact@10.21.0: - resolution: {integrity: sha512-aQAIxtzWEwH8ou+OovWVSVNlFImL7xUCwJX3YMqA3U8iKCNC34999fFOnWjYNsylgfPgMexpbk7WYOLtKr/mxg==} + preact@10.22.0: + resolution: {integrity: sha512-RRurnSjJPj4rp5K6XoP45Ui33ncb7e4H7WiOHVpjbkvqvA3U+N8Z6Qbo0AE6leGYBV66n8EhEaFixvIu3SkxFw==} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} @@ -2090,8 +2090,8 @@ packages: resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} engines: {node: '>= 0.4'} - sass@1.77.1: - resolution: {integrity: sha512-OMEyfirt9XEfyvocduUIOlUSkWOXS/LAt6oblR/ISXCTukyavjex+zQNm51pPCOiFKY1QpWvEH1EeCkgyV3I6w==} + sass@1.77.2: + resolution: {integrity: sha512-eb4GZt1C3avsX3heBNlrc7I09nyT00IUuo4eFhAbeXWU2fvA7oXI53SxODVAA+zgZCk9aunAZgO+losjR3fAwA==} engines: {node: '>=14.0.0'} hasBin: true @@ -2317,8 +2317,8 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} - update-browserslist-db@1.0.15: - resolution: {integrity: sha512-K9HWH62x3/EalU1U6sjSZiylm9C8tgq2mSvshZpqc7QE69RaA2qjhkW2HlNA0tFpEbtyFz7HTqbSdN4MSwUodA==} + update-browserslist-db@1.0.16: + resolution: {integrity: sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -2527,7 +2527,7 @@ snapshots: '@babel/code-frame@7.24.2': dependencies: '@babel/highlight': 7.24.5 - picocolors: 1.0.0 + picocolors: 1.0.1 '@babel/compat-data@7.24.4': {} @@ -2659,7 +2659,7 @@ snapshots: '@babel/helper-validator-identifier': 7.24.5 chalk: 2.4.2 js-tokens: 4.0.0 - picocolors: 1.0.0 + picocolors: 1.0.1 '@babel/parser@7.24.5': dependencies: @@ -2717,8 +2717,8 @@ snapshots: '@cool-vue/crud@7.1.16(typescript@5.4.5)': dependencies: array.prototype.flat: 1.3.2 - core-js: 3.37.0 - element-plus: 2.7.2(vue@3.4.27(typescript@5.4.5)) + core-js: 3.37.1 + element-plus: 2.7.3(vue@3.4.27(typescript@5.4.5)) lodash-es: 4.17.21 mitt: 3.0.1 vue: 3.4.27(typescript@5.4.5) @@ -2726,11 +2726,11 @@ snapshots: - '@vue/composition-api' - typescript - '@cool-vue/vite-plugin@7.1.2': + '@cool-vue/vite-plugin@7.1.4': dependencies: '@vue/compiler-sfc': 3.4.27 axios: 1.6.8 - glob: 10.3.14 + glob: 10.3.15 lodash: 4.17.21 magic-string: 0.30.10 prettier: 3.2.5 @@ -2835,13 +2835,13 @@ snapshots: '@eslint/js@8.57.0': {} - '@floating-ui/core@1.6.1': + '@floating-ui/core@1.6.2': dependencies: '@floating-ui/utils': 0.2.2 '@floating-ui/dom@1.6.5': dependencies: - '@floating-ui/core': 1.6.1 + '@floating-ui/core': 1.6.2 '@floating-ui/utils': 0.2.2 '@floating-ui/utils@0.2.2': {} @@ -3046,21 +3046,21 @@ snapshots: '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.12.11 + '@types/node': 20.12.12 '@types/json-schema@7.0.15': {} '@types/lodash-es@4.17.12': dependencies: - '@types/lodash': 4.17.1 + '@types/lodash': 4.17.4 - '@types/lodash@4.17.1': {} + '@types/lodash@4.17.4': {} '@types/minimatch@5.1.2': {} '@types/mockjs@1.0.10': {} - '@types/node@20.12.11': + '@types/node@20.12.12': dependencies: undici-types: 5.26.5 @@ -3071,7 +3071,7 @@ snapshots: '@types/shelljs@0.8.15': dependencies: '@types/glob': 7.2.0 - '@types/node': 20.12.11 + '@types/node': 20.12.12 '@types/store@2.0.5': {} @@ -3181,7 +3181,7 @@ snapshots: mime-match: 1.0.2 namespace-emitter: 2.0.1 nanoid: 3.3.7 - preact: 10.21.0 + preact: 10.22.0 '@uppy/store-default@2.1.1': {} @@ -3196,19 +3196,19 @@ snapshots: '@uppy/utils': 4.1.3 nanoid: 3.3.7 - '@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5))': + '@vitejs/plugin-vue-jsx@3.1.0(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5))': dependencies: '@babel/core': 7.24.5 '@babel/plugin-transform-typescript': 7.24.5(@babel/core@7.24.5) '@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.24.5) - vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0) + vite: 5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0) vue: 3.4.27(typescript@5.4.5) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.0.4(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5))': + '@vitejs/plugin-vue@5.0.4(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0))(vue@3.4.27(typescript@5.4.5))': dependencies: - vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0) + vite: 5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0) vue: 3.4.27(typescript@5.4.5) '@vue/babel-helper-vue-transform-on@1.2.2': {} @@ -3541,10 +3541,10 @@ snapshots: browserslist@4.23.0: dependencies: - caniuse-lite: 1.0.30001617 - electron-to-chromium: 1.4.763 + caniuse-lite: 1.0.30001620 + electron-to-chromium: 1.4.774 node-releases: 2.0.14 - update-browserslist-db: 1.0.15(browserslist@4.23.0) + update-browserslist-db: 1.0.16(browserslist@4.23.0) buffer-from@1.1.2: {} @@ -3560,7 +3560,7 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001617: {} + caniuse-lite@1.0.30001620: {} cfb@1.2.2: dependencies: @@ -3616,7 +3616,7 @@ snapshots: dependencies: delayed-stream: 1.0.0 - commander@12.0.0: {} + commander@12.1.0: {} commander@2.20.3: {} @@ -3628,7 +3628,7 @@ snapshots: convert-source-map@2.0.0: {} - core-js@3.37.0: {} + core-js@3.37.1: {} crc-32@1.2.2: {} @@ -3710,15 +3710,15 @@ snapshots: tslib: 2.3.0 zrender: 5.5.0 - electron-to-chromium@1.4.763: {} + electron-to-chromium@1.4.774: {} - element-plus@2.7.2(vue@3.4.27(typescript@5.4.5)): + element-plus@2.7.3(vue@3.4.27(typescript@5.4.5)): dependencies: '@ctrl/tinycolor': 3.6.1 '@element-plus/icons-vue': 2.3.1(vue@3.4.27(typescript@5.4.5)) '@floating-ui/dom': 1.6.5 '@popperjs/core': '@sxzz/popperjs-es@2.11.7' - '@types/lodash': 4.17.1 + '@types/lodash': 4.17.4 '@types/lodash-es': 4.17.12 '@vueuse/core': 9.13.0(vue@3.4.27(typescript@5.4.5)) async-validator: 4.2.5 @@ -4103,13 +4103,13 @@ snapshots: dependencies: is-glob: 4.0.3 - glob@10.3.14: + glob@10.3.15: dependencies: foreground-child: 3.1.1 jackspeak: 2.3.6 minimatch: 9.0.4 minipass: 7.1.1 - path-scurry: 1.11.0 + path-scurry: 1.11.1 glob@7.2.3: dependencies: @@ -4182,7 +4182,7 @@ snapshots: immer@9.0.21: {} - immutable@4.3.5: {} + immutable@4.3.6: {} import-fresh@3.3.0: dependencies: @@ -4417,7 +4417,7 @@ snapshots: mockjs@1.1.0: dependencies: - commander: 12.0.0 + commander: 12.1.0 monaco-editor@0.36.0: dependencies: @@ -4504,14 +4504,14 @@ snapshots: path-parse@1.0.7: {} - path-scurry@1.11.0: + path-scurry@1.11.1: dependencies: lru-cache: 10.2.2 minipass: 7.1.1 path-type@4.0.0: {} - picocolors@1.0.0: {} + picocolors@1.0.1: {} picomatch@2.3.1: {} @@ -4544,10 +4544,10 @@ snapshots: postcss@8.4.38: dependencies: nanoid: 3.3.7 - picocolors: 1.0.0 + picocolors: 1.0.1 source-map-js: 1.2.0 - preact@10.21.0: {} + preact@10.22.0: {} prelude-ls@1.2.1: {} @@ -4648,10 +4648,10 @@ snapshots: es-errors: 1.3.0 is-regex: 1.1.4 - sass@1.77.1: + sass@1.77.2: dependencies: chokidar: 3.6.0 - immutable: 4.3.5 + immutable: 4.3.6 source-map-js: 1.2.0 scroll-into-view-if-needed@2.2.31: @@ -4893,11 +4893,11 @@ snapshots: universalify@2.0.1: {} - update-browserslist-db@1.0.15(browserslist@4.23.0): + update-browserslist-db@1.0.16(browserslist@4.23.0): dependencies: browserslist: 4.23.0 escalade: 3.1.2 - picocolors: 1.0.0 + picocolors: 1.0.1 uri-js@4.4.1: dependencies: @@ -4905,24 +4905,24 @@ snapshots: util-deprecate@1.0.2: {} - vite-plugin-compression@0.5.1(vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0)): + vite-plugin-compression@0.5.1(vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0)): dependencies: chalk: 4.1.2 debug: 4.3.4 fs-extra: 10.1.0 - vite: 5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0) + vite: 5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0) transitivePeerDependencies: - supports-color - vite@5.2.11(@types/node@20.12.11)(sass@1.77.1)(terser@5.31.0): + vite@5.2.11(@types/node@20.12.12)(sass@1.77.2)(terser@5.31.0): dependencies: esbuild: 0.20.2 postcss: 8.4.38 rollup: 4.17.2 optionalDependencies: - '@types/node': 20.12.11 + '@types/node': 20.12.12 fsevents: 2.3.3 - sass: 1.77.1 + sass: 1.77.2 terser: 5.31.0 vue-demi@0.13.11(vue@3.4.27(typescript@5.4.5)):