提交 e4858893 authored 作者: 王鹏飞's avatar 王鹏飞

chore: 修改旅程模板连接线

上级 5f8ffb99
...@@ -115,6 +115,7 @@ ...@@ -115,6 +115,7 @@
"useArrayFilter": true, "useArrayFilter": true,
"useArrayFind": true, "useArrayFind": true,
"useArrayFindIndex": true, "useArrayFindIndex": true,
"useArrayFindLast": true,
"useArrayJoin": true, "useArrayJoin": true,
"useArrayMap": true, "useArrayMap": true,
"useArrayReduce": true, "useArrayReduce": true,
......
// Generated by 'unplugin-auto-import' /* eslint-disable */
/* prettier-ignore */
// @ts-nocheck
// Generated by unplugin-auto-import
export {} export {}
declare global { declare global {
const $$: typeof import('vue/macros')['$$'] const $$: typeof import('vue/macros')['$$']
...@@ -109,6 +112,7 @@ declare global { ...@@ -109,6 +112,7 @@ declare global {
const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter'] const useArrayFilter: typeof import('@vueuse/core')['useArrayFilter']
const useArrayFind: typeof import('@vueuse/core')['useArrayFind'] const useArrayFind: typeof import('@vueuse/core')['useArrayFind']
const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex'] const useArrayFindIndex: typeof import('@vueuse/core')['useArrayFindIndex']
const useArrayFindLast: typeof import('@vueuse/core')['useArrayFindLast']
const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin'] const useArrayJoin: typeof import('@vueuse/core')['useArrayJoin']
const useArrayMap: typeof import('@vueuse/core')['useArrayMap'] const useArrayMap: typeof import('@vueuse/core')['useArrayMap']
const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce'] const useArrayReduce: typeof import('@vueuse/core')['useArrayReduce']
...@@ -276,5 +280,5 @@ declare global { ...@@ -276,5 +280,5 @@ declare global {
// for type re-export // for type re-export
declare global { declare global {
// @ts-ignore // @ts-ignore
export type { Component,ComponentPublicInstance,ComputedRef,InjectionKey,PropType,Ref,VNode } from 'vue' export type { Component, ComponentPublicInstance, ComputedRef, InjectionKey, PropType, Ref, VNode } from 'vue'
} }
...@@ -8,17 +8,17 @@ ...@@ -8,17 +8,17 @@
"name": "saas-dml", "name": "saas-dml",
"version": "0.0.0", "version": "0.0.0",
"dependencies": { "dependencies": {
"@element-plus/icons-vue": "^2.0.10", "@element-plus/icons-vue": "^2.1.0",
"@tinymce/tinymce-vue": "^5.0.0", "@tinymce/tinymce-vue": "^5.0.1",
"@vue-flow/controls": "^1.0.4", "@vue-flow/controls": "^1.0.4",
"@vue-flow/core": "^1.15.2", "@vue-flow/core": "^1.15.5",
"@vueuse/core": "^9.13.0", "@vueuse/core": "^9.13.0",
"axios": "^1.3.4", "axios": "^1.3.4",
"blueimp-md5": "^2.19.0", "blueimp-md5": "^2.19.0",
"element-plus": "^2.2.32", "element-plus": "^2.2.35",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"nanoid": "^4.0.1", "nanoid": "^4.0.1",
"pinia": "^2.0.32", "pinia": "^2.0.33",
"vue": "^3.2.47", "vue": "^3.2.47",
"vue-router": "^4.1.6" "vue-router": "^4.1.6"
}, },
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
"eslint-plugin-vue": "^9.9.0", "eslint-plugin-vue": "^9.9.0",
"sass": "^1.58.3", "sass": "^1.58.3",
"typescript": "~4.9.5", "typescript": "~4.9.5",
"unplugin-auto-import": "^0.15.0", "unplugin-auto-import": "^0.15.1",
"vite": "^4.1.4", "vite": "^4.1.4",
"vue-tsc": "^1.2.0" "vue-tsc": "^1.2.0"
} }
...@@ -45,6 +45,8 @@ ...@@ -45,6 +45,8 @@
"resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.2.0.tgz", "resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.2.0.tgz",
"integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/gen-mapping": "^0.1.0",
"@jridgewell/trace-mapping": "^0.3.9" "@jridgewell/trace-mapping": "^0.3.9"
...@@ -64,6 +66,8 @@ ...@@ -64,6 +66,8 @@
"resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.18.6.tgz", "resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.18.6.tgz",
"integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/highlight": "^7.18.6" "@babel/highlight": "^7.18.6"
}, },
...@@ -76,6 +80,8 @@ ...@@ -76,6 +80,8 @@
"resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.21.0.tgz", "resolved": "https://registry.npmmirror.com/@babel/compat-data/-/compat-data-7.21.0.tgz",
"integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -85,6 +91,8 @@ ...@@ -85,6 +91,8 @@
"resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.21.0.tgz", "resolved": "https://registry.npmmirror.com/@babel/core/-/core-7.21.0.tgz",
"integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==", "integrity": "sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@ampproject/remapping": "^2.2.0", "@ampproject/remapping": "^2.2.0",
"@babel/code-frame": "^7.18.6", "@babel/code-frame": "^7.18.6",
...@@ -111,6 +119,8 @@ ...@@ -111,6 +119,8 @@
"resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz", "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"semver": "bin/semver.js" "semver": "bin/semver.js"
} }
...@@ -120,6 +130,8 @@ ...@@ -120,6 +130,8 @@
"resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.21.1.tgz", "resolved": "https://registry.npmmirror.com/@babel/generator/-/generator-7.21.1.tgz",
"integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==", "integrity": "sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/types": "^7.21.0", "@babel/types": "^7.21.0",
"@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/gen-mapping": "^0.3.2",
...@@ -135,6 +147,8 @@ ...@@ -135,6 +147,8 @@
"resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
"integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/set-array": "^1.0.1", "@jridgewell/set-array": "^1.0.1",
"@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/sourcemap-codec": "^1.4.10",
...@@ -149,6 +163,8 @@ ...@@ -149,6 +163,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz",
"integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/compat-data": "^7.20.5", "@babel/compat-data": "^7.20.5",
"@babel/helper-validator-option": "^7.18.6", "@babel/helper-validator-option": "^7.18.6",
...@@ -168,6 +184,8 @@ ...@@ -168,6 +184,8 @@
"resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz", "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-5.1.1.tgz",
"integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"yallist": "^3.0.2" "yallist": "^3.0.2"
} }
...@@ -177,6 +195,8 @@ ...@@ -177,6 +195,8 @@
"resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz", "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz",
"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"semver": "bin/semver.js" "semver": "bin/semver.js"
} }
...@@ -185,13 +205,17 @@ ...@@ -185,13 +205,17 @@
"version": "3.1.1", "version": "3.1.1",
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz", "resolved": "https://registry.npmmirror.com/yallist/-/yallist-3.1.1.tgz",
"integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/@babel/helper-environment-visitor": { "node_modules/@babel/helper-environment-visitor": {
"version": "7.18.9", "version": "7.18.9",
"resolved": "https://registry.npmmirror.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz",
"integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -201,6 +225,8 @@ ...@@ -201,6 +225,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz",
"integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/template": "^7.20.7", "@babel/template": "^7.20.7",
"@babel/types": "^7.21.0" "@babel/types": "^7.21.0"
...@@ -214,6 +240,8 @@ ...@@ -214,6 +240,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz",
"integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/types": "^7.18.6" "@babel/types": "^7.18.6"
}, },
...@@ -226,6 +254,8 @@ ...@@ -226,6 +254,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz",
"integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/types": "^7.18.6" "@babel/types": "^7.18.6"
}, },
...@@ -238,6 +268,8 @@ ...@@ -238,6 +268,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz",
"integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/helper-environment-visitor": "^7.18.9", "@babel/helper-environment-visitor": "^7.18.9",
"@babel/helper-module-imports": "^7.18.6", "@babel/helper-module-imports": "^7.18.6",
...@@ -257,6 +289,8 @@ ...@@ -257,6 +289,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz",
"integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/types": "^7.20.2" "@babel/types": "^7.20.2"
}, },
...@@ -269,6 +303,8 @@ ...@@ -269,6 +303,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz",
"integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/types": "^7.18.6" "@babel/types": "^7.18.6"
}, },
...@@ -281,6 +317,8 @@ ...@@ -281,6 +317,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz",
"integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -290,6 +328,8 @@ ...@@ -290,6 +328,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz",
"integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -299,6 +339,8 @@ ...@@ -299,6 +339,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", "resolved": "https://registry.npmmirror.com/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz",
"integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -308,6 +350,8 @@ ...@@ -308,6 +350,8 @@
"resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.21.0.tgz", "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.21.0.tgz",
"integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/template": "^7.20.7", "@babel/template": "^7.20.7",
"@babel/traverse": "^7.21.0", "@babel/traverse": "^7.21.0",
...@@ -322,6 +366,8 @@ ...@@ -322,6 +366,8 @@
"resolved": "https://registry.npmmirror.com/@babel/highlight/-/highlight-7.18.6.tgz", "resolved": "https://registry.npmmirror.com/@babel/highlight/-/highlight-7.18.6.tgz",
"integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/helper-validator-identifier": "^7.18.6", "@babel/helper-validator-identifier": "^7.18.6",
"chalk": "^2.0.0", "chalk": "^2.0.0",
...@@ -336,6 +382,8 @@ ...@@ -336,6 +382,8 @@
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz", "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-3.2.1.tgz",
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"color-convert": "^1.9.0" "color-convert": "^1.9.0"
}, },
...@@ -348,6 +396,8 @@ ...@@ -348,6 +396,8 @@
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz", "resolved": "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz",
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"ansi-styles": "^3.2.1", "ansi-styles": "^3.2.1",
"escape-string-regexp": "^1.0.5", "escape-string-regexp": "^1.0.5",
...@@ -362,6 +412,8 @@ ...@@ -362,6 +412,8 @@
"resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz", "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-1.9.3.tgz",
"integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"color-name": "1.1.3" "color-name": "1.1.3"
} }
...@@ -370,13 +422,17 @@ ...@@ -370,13 +422,17 @@
"version": "1.1.3", "version": "1.1.3",
"resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz", "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.3.tgz",
"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/@babel/highlight/node_modules/escape-string-regexp": { "node_modules/@babel/highlight/node_modules/escape-string-regexp": {
"version": "1.0.5", "version": "1.0.5",
"resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=0.8.0" "node": ">=0.8.0"
} }
...@@ -386,6 +442,8 @@ ...@@ -386,6 +442,8 @@
"resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz", "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=4" "node": ">=4"
} }
...@@ -395,6 +453,8 @@ ...@@ -395,6 +453,8 @@
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz", "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-5.5.0.tgz",
"integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"has-flag": "^3.0.0" "has-flag": "^3.0.0"
}, },
...@@ -418,6 +478,8 @@ ...@@ -418,6 +478,8 @@
"resolved": "https://registry.npmmirror.com/@babel/standalone/-/standalone-7.21.2.tgz", "resolved": "https://registry.npmmirror.com/@babel/standalone/-/standalone-7.21.2.tgz",
"integrity": "sha512-ySP/TJcyqMJVg1M/lmnPVi6L+F+IJpQ4+0lqtf723LERbk1N8/0JgLgm346cRAzfHaoXkLq/M/mJBd2uo25RBA==", "integrity": "sha512-ySP/TJcyqMJVg1M/lmnPVi6L+F+IJpQ4+0lqtf723LERbk1N8/0JgLgm346cRAzfHaoXkLq/M/mJBd2uo25RBA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -427,6 +489,8 @@ ...@@ -427,6 +489,8 @@
"resolved": "https://registry.npmmirror.com/@babel/template/-/template-7.20.7.tgz", "resolved": "https://registry.npmmirror.com/@babel/template/-/template-7.20.7.tgz",
"integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/code-frame": "^7.18.6", "@babel/code-frame": "^7.18.6",
"@babel/parser": "^7.20.7", "@babel/parser": "^7.20.7",
...@@ -441,6 +505,8 @@ ...@@ -441,6 +505,8 @@
"resolved": "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.21.2.tgz", "resolved": "https://registry.npmmirror.com/@babel/traverse/-/traverse-7.21.2.tgz",
"integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==", "integrity": "sha512-ts5FFU/dSUPS13tv8XiEObDu9K+iagEKME9kAbaP7r0Y9KtZJZ+NGndDvWoRAYNpeWafbpFeki3q9QoMD6gxyw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/code-frame": "^7.18.6", "@babel/code-frame": "^7.18.6",
"@babel/generator": "^7.21.1", "@babel/generator": "^7.21.1",
...@@ -462,6 +528,8 @@ ...@@ -462,6 +528,8 @@
"resolved": "https://registry.npmmirror.com/globals/-/globals-11.12.0.tgz", "resolved": "https://registry.npmmirror.com/globals/-/globals-11.12.0.tgz",
"integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=4" "node": ">=4"
} }
...@@ -471,6 +539,8 @@ ...@@ -471,6 +539,8 @@
"resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.21.2.tgz", "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.21.2.tgz",
"integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==", "integrity": "sha512-3wRZSs7jiFaB8AjxiiD+VqN5DTG2iRvJGQ+qYFrs/654lg6kGTQWIOFjlBo5RaXuAZjBmP3+OQH4dmhqiiyYxw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/helper-string-parser": "^7.19.4", "@babel/helper-string-parser": "^7.19.4",
"@babel/helper-validator-identifier": "^7.19.1", "@babel/helper-validator-identifier": "^7.19.1",
...@@ -489,9 +559,9 @@ ...@@ -489,9 +559,9 @@
} }
}, },
"node_modules/@element-plus/icons-vue": { "node_modules/@element-plus/icons-vue": {
"version": "2.0.10", "version": "2.1.0",
"resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.10.tgz", "resolved": "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.1.0.tgz",
"integrity": "sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==", "integrity": "sha512-PSBn3elNoanENc1vnCfh+3WA9fimRC7n+fWkf3rE5jvv+aBohNHABC/KAR5KWPecxWxDTVT1ERpRbOMRcOV/vA==",
"peerDependencies": { "peerDependencies": {
"vue": "^3.2.0" "vue": "^3.2.0"
} }
...@@ -924,6 +994,8 @@ ...@@ -924,6 +994,8 @@
"resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", "resolved": "https://registry.npmmirror.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz",
"integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/set-array": "^1.0.0", "@jridgewell/set-array": "^1.0.0",
"@jridgewell/sourcemap-codec": "^1.4.10" "@jridgewell/sourcemap-codec": "^1.4.10"
...@@ -937,6 +1009,8 @@ ...@@ -937,6 +1009,8 @@
"resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz",
"integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.0.0" "node": ">=6.0.0"
} }
...@@ -946,6 +1020,8 @@ ...@@ -946,6 +1020,8 @@
"resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.2.tgz", "resolved": "https://registry.npmmirror.com/@jridgewell/set-array/-/set-array-1.1.2.tgz",
"integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.0.0" "node": ">=6.0.0"
} }
...@@ -961,6 +1037,8 @@ ...@@ -961,6 +1037,8 @@
"resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", "resolved": "https://registry.npmmirror.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
"integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/resolve-uri": "3.1.0", "@jridgewell/resolve-uri": "3.1.0",
"@jridgewell/sourcemap-codec": "1.4.14" "@jridgewell/sourcemap-codec": "1.4.14"
...@@ -1006,6 +1084,8 @@ ...@@ -1006,6 +1084,8 @@
"resolved": "https://registry.npmmirror.com/@nuxt/kit/-/kit-3.2.2.tgz", "resolved": "https://registry.npmmirror.com/@nuxt/kit/-/kit-3.2.2.tgz",
"integrity": "sha512-T3UeLxGSNl7dQgKzmtBbPEkUiiBYgXI+KkemmpkYbQK/l+bWy2f9VQw/Rl0HkQLfRTE2fS8q8jhsOedFiEnHQQ==", "integrity": "sha512-T3UeLxGSNl7dQgKzmtBbPEkUiiBYgXI+KkemmpkYbQK/l+bWy2f9VQw/Rl0HkQLfRTE2fS8q8jhsOedFiEnHQQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@nuxt/schema": "3.2.2", "@nuxt/schema": "3.2.2",
"c12": "^1.1.2", "c12": "^1.1.2",
...@@ -1035,6 +1115,8 @@ ...@@ -1035,6 +1115,8 @@
"resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=12" "node": ">=12"
} }
...@@ -1044,6 +1126,8 @@ ...@@ -1044,6 +1126,8 @@
"resolved": "https://registry.npmmirror.com/globby/-/globby-13.1.3.tgz", "resolved": "https://registry.npmmirror.com/globby/-/globby-13.1.3.tgz",
"integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==", "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"dir-glob": "^3.0.1", "dir-glob": "^3.0.1",
"fast-glob": "^3.2.11", "fast-glob": "^3.2.11",
...@@ -1060,6 +1144,8 @@ ...@@ -1060,6 +1144,8 @@
"resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz", "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz",
"integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/sourcemap-codec": "^1.4.13" "@jridgewell/sourcemap-codec": "^1.4.13"
}, },
...@@ -1072,6 +1158,8 @@ ...@@ -1072,6 +1158,8 @@
"resolved": "https://registry.npmmirror.com/slash/-/slash-4.0.0.tgz", "resolved": "https://registry.npmmirror.com/slash/-/slash-4.0.0.tgz",
"integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=12" "node": ">=12"
} }
...@@ -1081,6 +1169,8 @@ ...@@ -1081,6 +1169,8 @@
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-2.2.4.tgz", "resolved": "https://registry.npmmirror.com/unimport/-/unimport-2.2.4.tgz",
"integrity": "sha512-qMgmeEGqqrrmEtm0dqxMG37J6xBtrriqxq9hILvDb+e6l2F0yTnJomLoCCp0eghLR7bYGeBsUU5Y0oyiUYhViw==", "integrity": "sha512-qMgmeEGqqrrmEtm0dqxMG37J6xBtrriqxq9hILvDb+e6l2F0yTnJomLoCCp0eghLR7bYGeBsUU5Y0oyiUYhViw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@rollup/pluginutils": "^5.0.2", "@rollup/pluginutils": "^5.0.2",
"escape-string-regexp": "^5.0.0", "escape-string-regexp": "^5.0.0",
...@@ -1100,6 +1190,8 @@ ...@@ -1100,6 +1190,8 @@
"resolved": "https://registry.npmmirror.com/@nuxt/schema/-/schema-3.2.2.tgz", "resolved": "https://registry.npmmirror.com/@nuxt/schema/-/schema-3.2.2.tgz",
"integrity": "sha512-o3O2OqLAMKqb/DlGpK8eJq4tH29NA4OMaohknSSXl35+Nw/qHB5eOLDz+cFxNE+MKHoMj1rRVMCfi/Y/PrCN6g==", "integrity": "sha512-o3O2OqLAMKqb/DlGpK8eJq4tH29NA4OMaohknSSXl35+Nw/qHB5eOLDz+cFxNE+MKHoMj1rRVMCfi/Y/PrCN6g==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"c12": "^1.1.2", "c12": "^1.1.2",
"create-require": "^1.1.1", "create-require": "^1.1.1",
...@@ -1124,6 +1216,8 @@ ...@@ -1124,6 +1216,8 @@
"resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=12" "node": ">=12"
} }
...@@ -1133,6 +1227,8 @@ ...@@ -1133,6 +1227,8 @@
"resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz", "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz",
"integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/sourcemap-codec": "^1.4.13" "@jridgewell/sourcemap-codec": "^1.4.13"
}, },
...@@ -1145,6 +1241,8 @@ ...@@ -1145,6 +1241,8 @@
"resolved": "https://registry.npmmirror.com/unimport/-/unimport-2.2.4.tgz", "resolved": "https://registry.npmmirror.com/unimport/-/unimport-2.2.4.tgz",
"integrity": "sha512-qMgmeEGqqrrmEtm0dqxMG37J6xBtrriqxq9hILvDb+e6l2F0yTnJomLoCCp0eghLR7bYGeBsUU5Y0oyiUYhViw==", "integrity": "sha512-qMgmeEGqqrrmEtm0dqxMG37J6xBtrriqxq9hILvDb+e6l2F0yTnJomLoCCp0eghLR7bYGeBsUU5Y0oyiUYhViw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@rollup/pluginutils": "^5.0.2", "@rollup/pluginutils": "^5.0.2",
"escape-string-regexp": "^5.0.0", "escape-string-regexp": "^5.0.0",
...@@ -1194,9 +1292,9 @@ ...@@ -1194,9 +1292,9 @@
"dev": true "dev": true
}, },
"node_modules/@tinymce/tinymce-vue": { "node_modules/@tinymce/tinymce-vue": {
"version": "5.0.0", "version": "5.0.1",
"resolved": "https://registry.npmmirror.com/@tinymce/tinymce-vue/-/tinymce-vue-5.0.0.tgz", "resolved": "https://registry.npmmirror.com/@tinymce/tinymce-vue/-/tinymce-vue-5.0.1.tgz",
"integrity": "sha512-1HRCNa2eGdztOKShYAiHIry50LTU6YJG//qSP9AJElrXhb3BIBN0Bef6E56nZObVgwCgSmI4cnX35VU9D49aow==", "integrity": "sha512-RzJflpf06VimGQNgCYMasS5+gEKTOs5ddOgrBuTGOMsHOeKBhMTim9ePjiwYpCpilyZgR5ZDyo5NfZgrKOHHEA==",
"dependencies": { "dependencies": {
"tinymce": "^6.0.0 || ^5.5.1" "tinymce": "^6.0.0 || ^5.5.1"
}, },
...@@ -1513,9 +1611,9 @@ ...@@ -1513,9 +1611,9 @@
} }
}, },
"node_modules/@vue-flow/core": { "node_modules/@vue-flow/core": {
"version": "1.15.2", "version": "1.15.5",
"resolved": "https://registry.npmmirror.com/@vue-flow/core/-/core-1.15.2.tgz", "resolved": "https://registry.npmmirror.com/@vue-flow/core/-/core-1.15.5.tgz",
"integrity": "sha512-4cfOvH56Yj9tlV/k4n11lZXKSCRomfHQJxaIj0joPMLDAc650MrQ9qhKHIn+yjB9cGujsYH1PiaaYmo13zQRyw==", "integrity": "sha512-HvCxr/JaY8fpJuSrAkhM8d3hqBJe1JBiqlBBSbA02I9AZ4tHqRcb2NfoNMf43ReDtjT1d6kjNAsBF3H2/PRNKw==",
"dependencies": { "dependencies": {
"@vueuse/core": "^9.13.0", "@vueuse/core": "^9.13.0",
"d3-drag": "^3.0.0", "d3-drag": "^3.0.0",
...@@ -2016,6 +2114,8 @@ ...@@ -2016,6 +2114,8 @@
"resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.21.5.tgz", "resolved": "https://registry.npmmirror.com/browserslist/-/browserslist-4.21.5.tgz",
"integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"caniuse-lite": "^1.0.30001449", "caniuse-lite": "^1.0.30001449",
"electron-to-chromium": "^1.4.284", "electron-to-chromium": "^1.4.284",
...@@ -2049,6 +2149,8 @@ ...@@ -2049,6 +2149,8 @@
"resolved": "https://registry.npmmirror.com/c12/-/c12-1.1.2.tgz", "resolved": "https://registry.npmmirror.com/c12/-/c12-1.1.2.tgz",
"integrity": "sha512-fHT5HDEHNMb2oImnqJ88/UlpEOkY/chdyYxSd3YCpvBqBvU0IDlHTkNc7GnjObDMxdis2lL+rwlQcNq8VeZESA==", "integrity": "sha512-fHT5HDEHNMb2oImnqJ88/UlpEOkY/chdyYxSd3YCpvBqBvU0IDlHTkNc7GnjObDMxdis2lL+rwlQcNq8VeZESA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"defu": "^6.1.2", "defu": "^6.1.2",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
...@@ -2083,7 +2185,9 @@ ...@@ -2083,7 +2185,9 @@
"version": "1.0.30001458", "version": "1.0.30001458",
"resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001458.tgz", "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001458.tgz",
"integrity": "sha512-lQ1VlUUq5q9ro9X+5gOEyH7i3vm+AYVT1WDCVB69XOZ17KZRhnZ9J0Sqz7wTHQaLBJccNCHq8/Ww5LlOIZbB0w==", "integrity": "sha512-lQ1VlUUq5q9ro9X+5gOEyH7i3vm+AYVT1WDCVB69XOZ17KZRhnZ9J0Sqz7wTHQaLBJccNCHq8/Ww5LlOIZbB0w==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/chalk": { "node_modules/chalk": {
"version": "5.2.0", "version": "5.2.0",
...@@ -2132,6 +2236,8 @@ ...@@ -2132,6 +2236,8 @@
"resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/chownr/-/chownr-2.0.0.tgz",
"integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=10" "node": ">=10"
} }
...@@ -2158,7 +2264,9 @@ ...@@ -2158,7 +2264,9 @@
"version": "2.0.19", "version": "2.0.19",
"resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.19.tgz", "resolved": "https://registry.npmmirror.com/colorette/-/colorette-2.0.19.tgz",
"integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/combined-stream": { "node_modules/combined-stream": {
"version": "1.0.8", "version": "1.0.8",
...@@ -2181,7 +2289,9 @@ ...@@ -2181,7 +2289,9 @@
"version": "2.15.3", "version": "2.15.3",
"resolved": "https://registry.npmmirror.com/consola/-/consola-2.15.3.tgz", "resolved": "https://registry.npmmirror.com/consola/-/consola-2.15.3.tgz",
"integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==", "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/content-type": { "node_modules/content-type": {
"version": "1.0.4", "version": "1.0.4",
...@@ -2196,7 +2306,9 @@ ...@@ -2196,7 +2306,9 @@
"version": "1.9.0", "version": "1.9.0",
"resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz", "resolved": "https://registry.npmmirror.com/convert-source-map/-/convert-source-map-1.9.0.tgz",
"integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/copy-to": { "node_modules/copy-to": {
"version": "2.0.1", "version": "2.0.1",
...@@ -2214,7 +2326,9 @@ ...@@ -2214,7 +2326,9 @@
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmmirror.com/create-require/-/create-require-1.1.1.tgz", "resolved": "https://registry.npmmirror.com/create-require/-/create-require-1.1.1.tgz",
"integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/cross-spawn": { "node_modules/cross-spawn": {
"version": "7.0.3", "version": "7.0.3",
...@@ -2411,7 +2525,9 @@ ...@@ -2411,7 +2525,9 @@
"version": "6.1.2", "version": "6.1.2",
"resolved": "https://registry.npmmirror.com/defu/-/defu-6.1.2.tgz", "resolved": "https://registry.npmmirror.com/defu/-/defu-6.1.2.tgz",
"integrity": "sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ==", "integrity": "sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/degenerator": { "node_modules/degenerator": {
"version": "3.0.2", "version": "3.0.2",
...@@ -2449,7 +2565,9 @@ ...@@ -2449,7 +2565,9 @@
"version": "1.2.2", "version": "1.2.2",
"resolved": "https://registry.npmmirror.com/destr/-/destr-1.2.2.tgz", "resolved": "https://registry.npmmirror.com/destr/-/destr-1.2.2.tgz",
"integrity": "sha512-lrbCJwD9saUQrqUfXvl6qoM+QN3W7tLV5pAOs+OqOmopCCz/JkE05MHedJR1xfk4IAnZuJXPVuN5+7jNA2ZCiA==", "integrity": "sha512-lrbCJwD9saUQrqUfXvl6qoM+QN3W7tLV5pAOs+OqOmopCCz/JkE05MHedJR1xfk4IAnZuJXPVuN5+7jNA2ZCiA==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/destroy": { "node_modules/destroy": {
"version": "1.2.0", "version": "1.2.0",
...@@ -2502,6 +2620,8 @@ ...@@ -2502,6 +2620,8 @@
"resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-16.0.3.tgz", "resolved": "https://registry.npmmirror.com/dotenv/-/dotenv-16.0.3.tgz",
"integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=12" "node": ">=12"
} }
...@@ -2516,12 +2636,14 @@ ...@@ -2516,12 +2636,14 @@
"version": "1.4.313", "version": "1.4.313",
"resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.313.tgz", "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.4.313.tgz",
"integrity": "sha512-QckB9OVqr2oybjIrbMI99uF+b9+iTja5weFe0ePbqLb5BHqXOJUO1SG6kDj/1WtWPRIBr51N153AEq8m7HuIaA==", "integrity": "sha512-QckB9OVqr2oybjIrbMI99uF+b9+iTja5weFe0ePbqLb5BHqXOJUO1SG6kDj/1WtWPRIBr51N153AEq8m7HuIaA==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/element-plus": { "node_modules/element-plus": {
"version": "2.2.32", "version": "2.2.35",
"resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.32.tgz", "resolved": "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.35.tgz",
"integrity": "sha512-DTJMhYOy6MApbmh6z/95hPTK5WrBiNHGzV4IN+uEkup1WoimQ+Qyt8RxKdTe/X1LWEJ8YgWv/Cl8P4ocrt5z5g==", "integrity": "sha512-if5QW41hQwVltekRS+avXYtqjRNra/fSgGstXKPR1lSJ81PWQccy+oztw/OP+USqZP/OejFs7rjLPk5MHgT40w==",
"dependencies": { "dependencies": {
"@ctrl/tinycolor": "^3.4.1", "@ctrl/tinycolor": "^3.4.1",
"@element-plus/icons-vue": "^2.0.6", "@element-plus/icons-vue": "^2.0.6",
...@@ -2566,6 +2688,8 @@ ...@@ -2566,6 +2688,8 @@
"resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz",
"integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"graceful-fs": "^4.1.2", "graceful-fs": "^4.1.2",
"memory-fs": "^0.5.0", "memory-fs": "^0.5.0",
...@@ -2580,6 +2704,8 @@ ...@@ -2580,6 +2704,8 @@
"resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz", "resolved": "https://registry.npmmirror.com/errno/-/errno-0.1.8.tgz",
"integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"prr": "~1.0.1" "prr": "~1.0.1"
}, },
...@@ -2629,6 +2755,8 @@ ...@@ -2629,6 +2755,8 @@
"resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz", "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz",
"integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6" "node": ">=6"
} }
...@@ -3086,6 +3214,8 @@ ...@@ -3086,6 +3214,8 @@
"resolved": "https://registry.npmmirror.com/flat/-/flat-5.0.2.tgz", "resolved": "https://registry.npmmirror.com/flat/-/flat-5.0.2.tgz",
"integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"flat": "cli.js" "flat": "cli.js"
} }
...@@ -3165,6 +3295,8 @@ ...@@ -3165,6 +3295,8 @@
"resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz", "resolved": "https://registry.npmmirror.com/fs-minipass/-/fs-minipass-2.1.0.tgz",
"integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"minipass": "^3.0.0" "minipass": "^3.0.0"
}, },
...@@ -3177,6 +3309,8 @@ ...@@ -3177,6 +3309,8 @@
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz",
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"yallist": "^4.0.0" "yallist": "^4.0.0"
}, },
...@@ -3252,6 +3386,8 @@ ...@@ -3252,6 +3386,8 @@
"resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz", "resolved": "https://registry.npmmirror.com/gensync/-/gensync-1.0.0-beta.2.tgz",
"integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
} }
...@@ -3295,6 +3431,8 @@ ...@@ -3295,6 +3431,8 @@
"resolved": "https://registry.npmmirror.com/giget/-/giget-1.1.2.tgz", "resolved": "https://registry.npmmirror.com/giget/-/giget-1.1.2.tgz",
"integrity": "sha512-HsLoS07HiQ5oqvObOI+Qb2tyZH4Gj5nYGfF9qQcZNrPw+uEFhdXtgJr01aO2pWadGHucajYDLxxbtQkm97ON2A==", "integrity": "sha512-HsLoS07HiQ5oqvObOI+Qb2tyZH4Gj5nYGfF9qQcZNrPw+uEFhdXtgJr01aO2pWadGHucajYDLxxbtQkm97ON2A==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"colorette": "^2.0.19", "colorette": "^2.0.19",
"defu": "^6.1.2", "defu": "^6.1.2",
...@@ -3412,7 +3550,9 @@ ...@@ -3412,7 +3550,9 @@
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/hash-sum/-/hash-sum-2.0.0.tgz",
"integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/he": { "node_modules/he": {
"version": "1.2.0", "version": "1.2.0",
...@@ -3427,7 +3567,9 @@ ...@@ -3427,7 +3567,9 @@
"version": "5.4.2", "version": "5.4.2",
"resolved": "https://registry.npmmirror.com/hookable/-/hookable-5.4.2.tgz", "resolved": "https://registry.npmmirror.com/hookable/-/hookable-5.4.2.tgz",
"integrity": "sha512-6rOvaUiNKy9lET1X0ECnyZ5O5kSV0PJbtA5yZUgdEF7fGJEVwSLSislltyt7nFwVVALYHQJtfGeAR2Y0A0uJkg==", "integrity": "sha512-6rOvaUiNKy9lET1X0ECnyZ5O5kSV0PJbtA5yZUgdEF7fGJEVwSLSislltyt7nFwVVALYHQJtfGeAR2Y0A0uJkg==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/http-errors": { "node_modules/http-errors": {
"version": "2.0.0", "version": "2.0.0",
...@@ -3670,6 +3812,8 @@ ...@@ -3670,6 +3812,8 @@
"resolved": "https://registry.npmmirror.com/jiti/-/jiti-1.17.1.tgz", "resolved": "https://registry.npmmirror.com/jiti/-/jiti-1.17.1.tgz",
"integrity": "sha512-NZIITw8uZQFuzQimqjUxIrIcEdxYDFIe/0xYfIlVXTkiBjjyBEvgasj5bb0/cHtPRD/NziPbT312sFrkI5ALpw==", "integrity": "sha512-NZIITw8uZQFuzQimqjUxIrIcEdxYDFIe/0xYfIlVXTkiBjjyBEvgasj5bb0/cHtPRD/NziPbT312sFrkI5ALpw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"jiti": "bin/jiti.js" "jiti": "bin/jiti.js"
} }
...@@ -3690,7 +3834,9 @@ ...@@ -3690,7 +3834,9 @@
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz", "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/js-yaml": { "node_modules/js-yaml": {
"version": "4.1.0", "version": "4.1.0",
...@@ -3709,6 +3855,8 @@ ...@@ -3709,6 +3855,8 @@
"resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz", "resolved": "https://registry.npmmirror.com/jsesc/-/jsesc-2.5.2.tgz",
"integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"jsesc": "bin/jsesc" "jsesc": "bin/jsesc"
}, },
...@@ -3733,6 +3881,8 @@ ...@@ -3733,6 +3881,8 @@
"resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz", "resolved": "https://registry.npmmirror.com/json5/-/json5-2.2.3.tgz",
"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"json5": "lib/cli.js" "json5": "lib/cli.js"
}, },
...@@ -3765,7 +3915,9 @@ ...@@ -3765,7 +3915,9 @@
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/knitwork/-/knitwork-1.0.0.tgz", "resolved": "https://registry.npmmirror.com/knitwork/-/knitwork-1.0.0.tgz",
"integrity": "sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q==", "integrity": "sha512-dWl0Dbjm6Xm+kDxhPQJsCBTxrJzuGl0aP9rhr+TG8D3l+GL90N8O8lYUi7dTSAN2uuDqCtNgb6aEuQH5wsiV8Q==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/ko-sleep": { "node_modules/ko-sleep": {
"version": "1.1.4", "version": "1.1.4",
...@@ -3834,7 +3986,9 @@ ...@@ -3834,7 +3986,9 @@
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmmirror.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", "resolved": "https://registry.npmmirror.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
"integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==", "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/lodash.merge": { "node_modules/lodash.merge": {
"version": "4.6.2", "version": "4.6.2",
...@@ -3847,6 +4001,8 @@ ...@@ -3847,6 +4001,8 @@
"resolved": "https://registry.npmmirror.com/lodash.template/-/lodash.template-4.5.0.tgz", "resolved": "https://registry.npmmirror.com/lodash.template/-/lodash.template-4.5.0.tgz",
"integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"lodash._reinterpolate": "^3.0.0", "lodash._reinterpolate": "^3.0.0",
"lodash.templatesettings": "^4.0.0" "lodash.templatesettings": "^4.0.0"
...@@ -3857,6 +4013,8 @@ ...@@ -3857,6 +4013,8 @@
"resolved": "https://registry.npmmirror.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", "resolved": "https://registry.npmmirror.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz",
"integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"lodash._reinterpolate": "^3.0.0" "lodash._reinterpolate": "^3.0.0"
} }
...@@ -3891,6 +4049,8 @@ ...@@ -3891,6 +4049,8 @@
"resolved": "https://registry.npmmirror.com/memory-fs/-/memory-fs-0.5.0.tgz", "resolved": "https://registry.npmmirror.com/memory-fs/-/memory-fs-0.5.0.tgz",
"integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"errno": "^0.1.3", "errno": "^0.1.3",
"readable-stream": "^2.0.1" "readable-stream": "^2.0.1"
...@@ -3981,6 +4141,8 @@ ...@@ -3981,6 +4141,8 @@
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-4.2.4.tgz", "resolved": "https://registry.npmmirror.com/minipass/-/minipass-4.2.4.tgz",
"integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==", "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=8" "node": ">=8"
} }
...@@ -3990,6 +4152,8 @@ ...@@ -3990,6 +4152,8 @@
"resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz", "resolved": "https://registry.npmmirror.com/minizlib/-/minizlib-2.1.2.tgz",
"integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"minipass": "^3.0.0", "minipass": "^3.0.0",
"yallist": "^4.0.0" "yallist": "^4.0.0"
...@@ -4003,6 +4167,8 @@ ...@@ -4003,6 +4167,8 @@
"resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz", "resolved": "https://registry.npmmirror.com/minipass/-/minipass-3.3.6.tgz",
"integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"yallist": "^4.0.0" "yallist": "^4.0.0"
}, },
...@@ -4039,6 +4205,8 @@ ...@@ -4039,6 +4205,8 @@
"resolved": "https://registry.npmmirror.com/mri/-/mri-1.2.0.tgz", "resolved": "https://registry.npmmirror.com/mri/-/mri-1.2.0.tgz",
"integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=4" "node": ">=4"
} }
...@@ -4130,13 +4298,17 @@ ...@@ -4130,13 +4298,17 @@
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmmirror.com/node-fetch-native/-/node-fetch-native-1.0.2.tgz", "resolved": "https://registry.npmmirror.com/node-fetch-native/-/node-fetch-native-1.0.2.tgz",
"integrity": "sha512-KIkvH1jl6b3O7es/0ShyCgWLcfXxlBrLBbP3rOr23WArC66IMcU4DeZEeYEOwnopYhawLTn7/y+YtmASe8DFVQ==", "integrity": "sha512-KIkvH1jl6b3O7es/0ShyCgWLcfXxlBrLBbP3rOr23WArC66IMcU4DeZEeYEOwnopYhawLTn7/y+YtmASe8DFVQ==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/node-releases": { "node_modules/node-releases": {
"version": "2.0.10", "version": "2.0.10",
"resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.10.tgz", "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.10.tgz",
"integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/normalize-path": { "node_modules/normalize-path": {
"version": "3.0.0", "version": "3.0.0",
...@@ -4375,9 +4547,9 @@ ...@@ -4375,9 +4547,9 @@
} }
}, },
"node_modules/pinia": { "node_modules/pinia": {
"version": "2.0.32", "version": "2.0.33",
"resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.0.32.tgz", "resolved": "https://registry.npmmirror.com/pinia/-/pinia-2.0.33.tgz",
"integrity": "sha512-8Tw4OrpCSJ028UUyp0gYPP/wyjigLoEceuO/x1G+FlHVf73337e5vLm4uDmrRIoBG1hvaed/eSHnrCFjOc4nkA==", "integrity": "sha512-HOj1yVV2itw6rNIrR2f7+MirGNxhORjrULL8GWgRwXsGSvEqIQ+SE0MYt6cwtpegzCda3i+rVTZM+AM7CG+kRg==",
"dependencies": { "dependencies": {
"@vue/devtools-api": "^6.5.0", "@vue/devtools-api": "^6.5.0",
"vue-demi": "*" "vue-demi": "*"
...@@ -4453,6 +4625,8 @@ ...@@ -4453,6 +4625,8 @@
"resolved": "https://registry.npmmirror.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/postcss-import-resolver/-/postcss-import-resolver-2.0.0.tgz",
"integrity": "sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw==", "integrity": "sha512-y001XYgGvVwgxyxw9J1a5kqM/vtmIQGzx34g0A0Oy44MFcy/ZboZw1hu/iN3VYFjSTRzbvd7zZJJz0Kh0AGkTw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"enhanced-resolve": "^4.1.1" "enhanced-resolve": "^4.1.1"
} }
...@@ -4539,7 +4713,9 @@ ...@@ -4539,7 +4713,9 @@
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz", "resolved": "https://registry.npmmirror.com/prr/-/prr-1.0.1.tgz",
"integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/pump": { "node_modules/pump": {
"version": "3.0.0", "version": "3.0.0",
...@@ -4598,6 +4774,8 @@ ...@@ -4598,6 +4774,8 @@
"resolved": "https://registry.npmmirror.com/rc9/-/rc9-2.0.1.tgz", "resolved": "https://registry.npmmirror.com/rc9/-/rc9-2.0.1.tgz",
"integrity": "sha512-9EfjLgNmzP9255YX8bGnILQcmdtOXKtUlFTu8bOZPJVtaUDZ2imswcUdpK51tMjTRQyB7r5RebNijrzuyGXcVA==", "integrity": "sha512-9EfjLgNmzP9255YX8bGnILQcmdtOXKtUlFTu8bOZPJVtaUDZ2imswcUdpK51tMjTRQyB7r5RebNijrzuyGXcVA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"defu": "^6.1.2", "defu": "^6.1.2",
"destr": "^1.2.2", "destr": "^1.2.2",
...@@ -4901,7 +5079,9 @@ ...@@ -4901,7 +5079,9 @@
"version": "3.3.2", "version": "3.3.2",
"resolved": "https://registry.npmmirror.com/std-env/-/std-env-3.3.2.tgz", "resolved": "https://registry.npmmirror.com/std-env/-/std-env-3.3.2.tgz",
"integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==", "integrity": "sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==",
"dev": true "dev": true,
"optional": true,
"peer": true
}, },
"node_modules/stream-http": { "node_modules/stream-http": {
"version": "2.8.2", "version": "2.8.2",
...@@ -4990,6 +5170,8 @@ ...@@ -4990,6 +5170,8 @@
"resolved": "https://registry.npmmirror.com/tapable/-/tapable-1.1.3.tgz", "resolved": "https://registry.npmmirror.com/tapable/-/tapable-1.1.3.tgz",
"integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=6" "node": ">=6"
} }
...@@ -4999,6 +5181,8 @@ ...@@ -4999,6 +5181,8 @@
"resolved": "https://registry.npmmirror.com/tar/-/tar-6.1.13.tgz", "resolved": "https://registry.npmmirror.com/tar/-/tar-6.1.13.tgz",
"integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"chownr": "^2.0.0", "chownr": "^2.0.0",
"fs-minipass": "^2.0.0", "fs-minipass": "^2.0.0",
...@@ -5016,6 +5200,8 @@ ...@@ -5016,6 +5200,8 @@
"resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz", "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-1.0.4.tgz",
"integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"bin": { "bin": {
"mkdirp": "bin/cmd.js" "mkdirp": "bin/cmd.js"
}, },
...@@ -5072,6 +5258,8 @@ ...@@ -5072,6 +5258,8 @@
"resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", "resolved": "https://registry.npmmirror.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
"integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"engines": { "engines": {
"node": ">=4" "node": ">=4"
} }
...@@ -5163,6 +5351,8 @@ ...@@ -5163,6 +5351,8 @@
"resolved": "https://registry.npmmirror.com/unctx/-/unctx-2.1.2.tgz", "resolved": "https://registry.npmmirror.com/unctx/-/unctx-2.1.2.tgz",
"integrity": "sha512-KK18aLRKe3OlbPyHbXAkIWSU3xK8GInomXfA7fzDMGFXQ1crX1UWrCzKesVXeUyHIayHUrnTvf87IPCKMyeKTg==", "integrity": "sha512-KK18aLRKe3OlbPyHbXAkIWSU3xK8GInomXfA7fzDMGFXQ1crX1UWrCzKesVXeUyHIayHUrnTvf87IPCKMyeKTg==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"acorn": "^8.8.2", "acorn": "^8.8.2",
"estree-walker": "^3.0.3", "estree-walker": "^3.0.3",
...@@ -5175,6 +5365,8 @@ ...@@ -5175,6 +5365,8 @@
"resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz", "resolved": "https://registry.npmmirror.com/estree-walker/-/estree-walker-3.0.3.tgz",
"integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@types/estree": "^1.0.0" "@types/estree": "^1.0.0"
} }
...@@ -5184,6 +5376,8 @@ ...@@ -5184,6 +5376,8 @@
"resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz", "resolved": "https://registry.npmmirror.com/magic-string/-/magic-string-0.27.0.tgz",
"integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@jridgewell/sourcemap-codec": "^1.4.13" "@jridgewell/sourcemap-codec": "^1.4.13"
}, },
...@@ -5274,27 +5468,30 @@ ...@@ -5274,27 +5468,30 @@
} }
}, },
"node_modules/unplugin-auto-import": { "node_modules/unplugin-auto-import": {
"version": "0.15.0", "version": "0.15.1",
"resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.15.0.tgz", "resolved": "https://registry.npmmirror.com/unplugin-auto-import/-/unplugin-auto-import-0.15.1.tgz",
"integrity": "sha512-TYlqpTiX1jlbc2+EVaM0jfwdvbIdDWLHAPqw/l+7+QRm9rkqK2j8LQGjY3tAPbe66r5EirgTlrrXQG/MNVTv7w==", "integrity": "sha512-xLS+BfVNy00Y3IkqBmEd0IThvjx8kSGIgSuf/1kETttiENK8sHrDA+poKkQxRCPTKYH4yWM6txGQANPTzwpUWQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"@antfu/utils": "^0.7.2", "@antfu/utils": "^0.7.2",
"@nuxt/kit": "^3.2.2",
"@rollup/pluginutils": "^5.0.2", "@rollup/pluginutils": "^5.0.2",
"local-pkg": "^0.4.3", "local-pkg": "^0.4.3",
"magic-string": "^0.30.0", "magic-string": "^0.30.0",
"minimatch": "^7.1.0", "minimatch": "^7.4.2",
"unimport": "^3.0.0", "unimport": "^3.0.2",
"unplugin": "^1.1.0" "unplugin": "^1.1.0"
}, },
"engines": { "engines": {
"node": ">=14" "node": ">=14"
}, },
"peerDependencies": { "peerDependencies": {
"@nuxt/kit": "^3.2.2",
"@vueuse/core": "*" "@vueuse/core": "*"
}, },
"peerDependenciesMeta": { "peerDependenciesMeta": {
"@nuxt/kit": {
"optional": true
},
"@vueuse/core": { "@vueuse/core": {
"optional": true "optional": true
} }
...@@ -5322,9 +5519,9 @@ ...@@ -5322,9 +5519,9 @@
} }
}, },
"node_modules/unplugin-auto-import/node_modules/minimatch": { "node_modules/unplugin-auto-import/node_modules/minimatch": {
"version": "7.3.0", "version": "7.4.2",
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-7.3.0.tgz", "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-7.4.2.tgz",
"integrity": "sha512-WaMDuhKa7a6zKiwplR1AOz+zGvJba24k5VU1Cy6NhEguavT2YRlHxuINUgTas4wiS6fwBpYq4TcA1XIECSntyw==", "integrity": "sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"brace-expansion": "^2.0.1" "brace-expansion": "^2.0.1"
...@@ -5338,6 +5535,8 @@ ...@@ -5338,6 +5535,8 @@
"resolved": "https://registry.npmmirror.com/untyped/-/untyped-1.2.2.tgz", "resolved": "https://registry.npmmirror.com/untyped/-/untyped-1.2.2.tgz",
"integrity": "sha512-EANYd5L6AdpgfldlgMcmvOOnj092nWhy0ybhc7uhEH12ipytDYz89EOegBQKj8qWL3u1wgYnmFjADhsuCJs5Aw==", "integrity": "sha512-EANYd5L6AdpgfldlgMcmvOOnj092nWhy0ybhc7uhEH12ipytDYz89EOegBQKj8qWL3u1wgYnmFjADhsuCJs5Aw==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"@babel/core": "^7.20.12", "@babel/core": "^7.20.12",
"@babel/standalone": "^7.20.12", "@babel/standalone": "^7.20.12",
...@@ -5350,6 +5549,8 @@ ...@@ -5350,6 +5549,8 @@
"resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", "resolved": "https://registry.npmmirror.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
"integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==",
"dev": true, "dev": true,
"optional": true,
"peer": true,
"dependencies": { "dependencies": {
"escalade": "^3.1.1", "escalade": "^3.1.1",
"picocolors": "^1.0.0" "picocolors": "^1.0.0"
......
...@@ -15,17 +15,17 @@ ...@@ -15,17 +15,17 @@
"cert": "node ./cert.js" "cert": "node ./cert.js"
}, },
"dependencies": { "dependencies": {
"@element-plus/icons-vue": "^2.0.10", "@element-plus/icons-vue": "^2.1.0",
"@tinymce/tinymce-vue": "^5.0.0", "@tinymce/tinymce-vue": "^5.0.1",
"@vue-flow/controls": "^1.0.4", "@vue-flow/controls": "^1.0.4",
"@vue-flow/core": "^1.15.2", "@vue-flow/core": "^1.15.5",
"@vueuse/core": "^9.13.0", "@vueuse/core": "^9.13.0",
"axios": "^1.3.4", "axios": "^1.3.4",
"blueimp-md5": "^2.19.0", "blueimp-md5": "^2.19.0",
"element-plus": "^2.2.32", "element-plus": "^2.2.35",
"lodash-es": "^4.17.21", "lodash-es": "^4.17.21",
"nanoid": "^4.0.1", "nanoid": "^4.0.1",
"pinia": "^2.0.32", "pinia": "^2.0.33",
"vue": "^3.2.47", "vue": "^3.2.47",
"vue-router": "^4.1.6" "vue-router": "^4.1.6"
}, },
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
"eslint-plugin-vue": "^9.9.0", "eslint-plugin-vue": "^9.9.0",
"sass": "^1.58.3", "sass": "^1.58.3",
"typescript": "~4.9.5", "typescript": "~4.9.5",
"unplugin-auto-import": "^0.15.0", "unplugin-auto-import": "^0.15.1",
"vite": "^4.1.4", "vite": "^4.1.4",
"vue-tsc": "^1.2.0" "vue-tsc": "^1.2.0"
} }
......
<script setup> <script setup>
import { BaseEdge, EdgeLabelRenderer, getBezierPath, useVueFlow } from '@vue-flow/core' import { StraightEdge, EdgeLabelRenderer, useVueFlow, getStraightPath } from '@vue-flow/core'
import { CircleClose } from '@element-plus/icons-vue' import { CircleCloseFilled } from '@element-plus/icons-vue'
const props = defineProps({ const props = defineProps({
id: { type: String, required: true }, id: { type: String, required: true },
...@@ -12,14 +12,13 @@ const props = defineProps({ ...@@ -12,14 +12,13 @@ const props = defineProps({
targetPosition: { type: String, required: true }, targetPosition: { type: String, required: true },
data: { type: Object, required: false }, data: { type: Object, required: false },
markerEnd: { type: String, required: false }, markerEnd: { type: String, required: false },
style: { type: Object, required: false } style: { type: Object, required: false },
label: { required: false }
}) })
const { removeEdges } = useVueFlow() const { removeEdges } = useVueFlow()
const path = computed(() => { const path = computed(() => getStraightPath(props))
return getBezierPath(props)
})
</script> </script>
<script> <script>
...@@ -29,35 +28,30 @@ export default { ...@@ -29,35 +28,30 @@ export default {
</script> </script>
<template> <template>
<!-- You can use the `BaseEdge` component to create your own custom edge more easily --> <StraightEdge :id="id" :style="style" :path="path[0]" :marker-end="markerEnd"></StraightEdge>
<!-- :marker-end="markerEnd" -->
<BaseEdge :id="id" :style="style" :path="path[0]" marker-end="url(#triangle)" />
<defs>
<marker
id="triangle"
viewBox="0 0 1 10"
refX="1"
refY="5"
markerUnits="strokeWidth"
markerHeight="8"
markerWidth="8"
orient="auto"
>
<path d="M 0 1.5 L 4 5 L 0 8.5 z" />
</marker>
</defs>
<!-- Use the `EdgeLabelRenderer` to escape the SVG world of edges and render your own custom label in a `<div>` ctx -->
<EdgeLabelRenderer> <EdgeLabelRenderer>
<div <div class="edge-label" :style="{ transform: `translate(-50%, -50%) translate(${path[1]}px,${path[2]}px)` }">
:style="{ <span v-if="label">{{ label }}</span>
pointerEvents: 'all', <el-icon @click="removeEdges([id])"><CircleCloseFilled /></el-icon>
position: 'absolute',
transform: `translate(-50%, -50%) translate(${path[1]}px,${path[2]}px)`
}"
@click="removeEdges([id])"
>
<el-icon style="color: var(--main-color)"><CircleClose /></el-icon>
</div> </div>
</EdgeLabelRenderer> </EdgeLabelRenderer>
</template> </template>
<style lang="scss">
.edge-label {
display: flex;
align-items: center;
pointer-events: all;
position: absolute;
background-color: #fff;
span {
margin-right: 5px;
}
.el-icon {
display: block;
font-size: 20px;
color: var(--main-color);
}
}
</style>
<script setup lang="ts"> <script setup lang="ts">
import type { NodeProps } from '@vue-flow/core'
const props = defineProps<{ node: NodeProps }>()
const component = computed(() => { const component = computed(() => {
const allComponent: any = { const allComponent: any = {
TCRealTimeTrigger: markRaw( TCRealTimeTrigger: markRaw(
...@@ -21,6 +24,7 @@ const component = computed(() => { ...@@ -21,6 +24,7 @@ const component = computed(() => {
TCWenjuanxing: markRaw( TCWenjuanxing: markRaw(
defineAsyncComponent(() => import('./components/triggeringConditions/wenjuanxing/Index.vue')) defineAsyncComponent(() => import('./components/triggeringConditions/wenjuanxing/Index.vue'))
), ),
MAEndTrip: markRaw(defineAsyncComponent(() => import('./components/marketingAction/endTrip/Index.vue'))),
MAJoinGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/joinGroup/Index.vue'))), MAJoinGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/joinGroup/Index.vue'))),
MALeaveGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/leaveGroup/Index.vue'))), MALeaveGroup: markRaw(defineAsyncComponent(() => import('./components/marketingAction/leaveGroup/Index.vue'))),
MAChangeProps: markRaw(defineAsyncComponent(() => import('./components/marketingAction/changeProps/Index.vue'))), MAChangeProps: markRaw(defineAsyncComponent(() => import('./components/marketingAction/changeProps/Index.vue'))),
...@@ -53,10 +57,8 @@ const component = computed(() => { ...@@ -53,10 +57,8 @@ const component = computed(() => {
} }
return allComponent[props.node?.data.componentName] return allComponent[props.node?.data.componentName]
}) })
const props = defineProps<{ node: any }>()
</script> </script>
<template> <template>
<component :is="component" v-bind="props"></component> <component :is="component" :node="node"></component>
</template> </template>
...@@ -6,7 +6,7 @@ export default { ...@@ -6,7 +6,7 @@ export default {
<script setup lang="ts"> <script setup lang="ts">
import { nanoid } from 'nanoid' import { nanoid } from 'nanoid'
import { VueFlow, useVueFlow, PanelPosition } from '@vue-flow/core' import { VueFlow, useVueFlow, PanelPosition, MarkerType, ConnectionLineType } from '@vue-flow/core'
import { Controls } from '@vue-flow/controls' import { Controls } from '@vue-flow/controls'
import CustomNode from './CustomNode.vue' import CustomNode from './CustomNode.vue'
import CustomEdge from './CustomEdge.vue' import CustomEdge from './CustomEdge.vue'
...@@ -17,7 +17,6 @@ interface Props { ...@@ -17,7 +17,6 @@ interface Props {
templateType?: string templateType?: string
score?: number score?: number
} }
const props = withDefaults(defineProps<Props>(), { action: 'edit', role: 'teacher', score: 0 }) const props = withDefaults(defineProps<Props>(), { action: 'edit', role: 'teacher', score: 0 })
provide('action', props.action) provide('action', props.action)
provide('role', props.role) provide('role', props.role)
...@@ -35,7 +34,30 @@ const onDragOver = (event: DragEvent) => { ...@@ -35,7 +34,30 @@ const onDragOver = (event: DragEvent) => {
} }
onConnect(params => { onConnect(params => {
addEdges([{ ...params, type: 'custom' }]) const map: any = {
'handle-yes': { label: '是', style: { stroke: '#81b337' } },
'handle-no': { label: '否', style: { stroke: '#a16222' } },
'handle-success': { label: '成功', style: { stroke: '#81b337' } },
'handle-failure': { label: '失败', style: { stroke: '#a16222' } }
}
let customParams = {}
if (params.sourceHandle) {
customParams = map[params.sourceHandle]
}
const style = {
stroke: '#5b6b73'
// strokeWidth: 2
}
addEdges([
{
...params,
sourceHandle: 'handle-right',
type: 'custom',
markerEnd: MarkerType.ArrowClosed,
style,
...customParams
}
])
}) })
const onDrop = (event: DragEvent) => { const onDrop = (event: DragEvent) => {
...@@ -53,7 +75,7 @@ const onDrop = (event: DragEvent) => { ...@@ -53,7 +75,7 @@ const onDrop = (event: DragEvent) => {
const position = project({ x: event.clientX - left, y: event.clientY - top }) const position = project({ x: event.clientX - left, y: event.clientY - top })
const newNode = { const newNode = {
id: nanoid(), id: nanoid(4),
type: 'custom', type: 'custom',
position, position,
label: data.name, label: data.name,
...@@ -87,7 +109,14 @@ const onDrop = (event: DragEvent) => { ...@@ -87,7 +109,14 @@ const onDrop = (event: DragEvent) => {
<slot name="left-panel"> </slot> <slot name="left-panel"> </slot>
<el-card shadow="never" class="flow-main" @drop="onDrop"> <el-card shadow="never" class="flow-main" @drop="onDrop">
<slot name="header"> </slot> <slot name="header"> </slot>
<VueFlow :zoom-on-scroll="false" :prevent-scrolling="false" @dragover="onDragOver" v-bind="$attrs"> <VueFlow
snap-to-grid
:zoom-on-scroll="false"
:prevent-scrolling="false"
:connection-radius="30"
:connection-line-options="{ markerEnd: MarkerType.ArrowClosed, type: ConnectionLineType.Straight }"
@dragover="onDragOver"
v-bind="$attrs">
<template #node-custom="node"> <template #node-custom="node">
<CustomNode :node="node" /> <CustomNode :node="node" />
</template> </template>
...@@ -104,7 +133,7 @@ const onDrop = (event: DragEvent) => { ...@@ -104,7 +133,7 @@ const onDrop = (event: DragEvent) => {
<style lang="scss"> <style lang="scss">
@import '@vue-flow/core/dist/style.css'; @import '@vue-flow/core/dist/style.css';
@import '@vue-flow/core/dist/theme-default.css'; // @import '@vue-flow/core/dist/theme-default.css';
@import '@vue-flow/controls/dist/style.css'; @import '@vue-flow/controls/dist/style.css';
.flow { .flow {
......
...@@ -35,7 +35,7 @@ const list = ref([ ...@@ -35,7 +35,7 @@ const list = ref([
name: '营销动作', name: '营销动作',
background: { icon: 'square', color: '#19AAA5' }, background: { icon: 'square', color: '#19AAA5' },
children: [ children: [
{ name: '终止旅程', type: '营销动作', icon: '16', componentName: 'MAEndTrip' }, { name: '终止旅程', type: '营销动作', icon: '16', componentName: 'MAEndTrip', color: '#AA1941' },
{ name: '加入群组', type: '营销动作', icon: '14', componentName: 'MAJoinGroup' }, { name: '加入群组', type: '营销动作', icon: '14', componentName: 'MAJoinGroup' },
{ name: '移除群组', type: '营销动作', icon: '17', componentName: 'MALeaveGroup' }, { name: '移除群组', type: '营销动作', icon: '17', componentName: 'MALeaveGroup' },
{ name: '变更属性', type: '营销动作', icon: '15', componentName: 'MAChangeProps' }, { name: '变更属性', type: '营销动作', icon: '15', componentName: 'MAChangeProps' },
...@@ -98,7 +98,7 @@ const onDragStart = (event: DragEvent, data: any) => { ...@@ -98,7 +98,7 @@ const onDragStart = (event: DragEvent, data: any) => {
<Icon class="icon" color="#fff" :name="item.icon" w="24" h="24"></Icon> <Icon class="icon" color="#fff" :name="item.icon" w="24" h="24"></Icon>
<Icon <Icon
class="circle" class="circle"
:color="parent.background?.color" :color="item.color || parent.background?.color"
:name="parent.background?.icon || ''" :name="parent.background?.icon || ''"
w="60" w="60"
h="60"></Icon> h="60"></Icon>
......
...@@ -2,9 +2,11 @@ ...@@ -2,9 +2,11 @@
import type { NodeProps } from '@vue-flow/core' import type { NodeProps } from '@vue-flow/core'
import { useVueFlow, Handle, Position } from '@vue-flow/core' import { useVueFlow, Handle, Position } from '@vue-flow/core'
import { Setting, Delete } from '@element-plus/icons-vue' import { Setting, Delete } from '@element-plus/icons-vue'
import IconFlowLine from '@/components/icon/IconFlowLine.vue'
const props = defineProps<{ node: NodeProps }>() const props = withDefaults(
defineProps<{ node: NodeProps; connectionType?: number; canSetting?: boolean; canConnect?: boolean }>(),
{ canSetting: true, canConnect: true }
)
const action = inject('action') const action = inject('action')
...@@ -17,88 +19,118 @@ function onRemove() { ...@@ -17,88 +19,118 @@ function onRemove() {
const node = findNode(props.node.id) const node = findNode(props.node.id)
if (node) removeNodes([node]) if (node) removeNodes([node])
} }
let toolbarShow = ref(false)
window.addEventListener('click', function () {
toolbarShow.value = false
})
const handleToolbar = function () {
setTimeout(() => {
toolbarShow.value = true
}, 100)
}
</script> </script>
<template> <template>
<div class="custom-node" @click="handleToolbar"> <div class="custom-node">
<div class="node-toolbar" v-if="toolbarShow"> <div class="node-toolbar">
<el-icon v-if="action !== 'view'" size="12" @click="onRemove"><Delete /></el-icon> <el-icon v-if="action !== 'view'" size="12" @click="onRemove"><Delete /></el-icon>
<el-icon size="12" @click="emit('setting')"><Setting /></el-icon> <el-icon size="12" @click="emit('setting')" v-if="canSetting"><Setting /></el-icon>
</div> </div>
<div class="custom-node__inner"> <div class="custom-node__inner">
<slot :node="node" /> <slot :node="node" />
<p class="node-label">{{ node.label }}</p>
</div> </div>
<IconFlowLine class="tool-line" v-if="toolbarShow"></IconFlowLine>
</div> </div>
<Handle id="right" class="handle handle-right" :position="Position.Right"></Handle> <Handle id="handle-left" class="handle" :position="Position.Left" :connectable="false" />
<Handle style="opacity: 0; width: 10px; height: 10px" id="left" class="handle" :position="Position.Left" /> <Handle id="handle-top" class="handle" :position="Position.Top" :connectable="false" />
<!-- <Handle id="bottom" class="handle" :position="Position.Bottom" /> --> <Handle id="handle-bottom" class="handle" :position="Position.Bottom" :connectable="false" />
<Handle id="handle-right" class="handle" :position="Position.Right" :connectable="false" />
<div class="handle-wrap" v-if="canConnect">
<template v-if="connectionType === 1">
<Handle id="handle-yes" class="handle-link is-yes" :position="Position.Left"></Handle>
<Handle id="handle-no" class="handle-link is-no" :position="Position.Left"></Handle>
</template>
<template v-else-if="connectionType === 2">
<Handle id="handle-success" class="handle-link is-yes" :position="Position.Left">成功</Handle>
<Handle id="handle-failure" class="handle-link is-no" :position="Position.Left">失败</Handle>
<Handle id="handle-any" class="handle-link is-any" :position="Position.Left">继续</Handle>
</template>
<template v-else>
<Handle id="handle-any" class="handle-default" :position="Position.Left">
<svg
xmlns="http://www.w3.org/2000/svg"
class="styles__StyledSVGIconPathComponent-sc-16fsqc8-0 dGjRCM svg-icon-path-icon fill"
viewBox="0 0 512 512"
width="24"
height="24">
<g>
<path
d="M256 8c137 0 248 111 248 248S393 504 256 504 8 393 8 256 119 8 256 8zm-28.9 143.6l75.5 72.4H120c-13.3 0-24 10.7-24 24v16c0 13.3 10.7 24 24 24h182.6l-75.5 72.4c-9.7 9.3-9.9 24.8-.4 34.3l11 10.9c9.4 9.4 24.6 9.4 33.9 0L404.3 273c9.4-9.4 9.4-24.6 0-33.9L271.6 106.3c-9.4-9.4-24.6-9.4-33.9 0l-11 10.9c-9.5 9.6-9.3 25.1.4 34.4z"
fill="#6c6c6c"></path>
</g>
</svg>
</Handle>
</template>
</div>
</template> </template>
<style lang="scss" scoped> <style lang="scss">
.dispatchers { .handle {
background-color: transparent;
border-radius: 0;
border: 0;
}
.handle-wrap {
opacity: 0;
position: absolute; position: absolute;
width: 100px; left: 100%;
height: 100px; top: 50%;
right: -110px; padding-left: 5px;
top: 20px; transform: translateY(-50%);
z-index: -2; .handle-link {
div { position: unset;
width: 50px; min-width: unset;
line-height: 18px; min-height: unset;
height: 18px; width: auto;
border-radius: 3px; height: auto;
font-size: 6px; background: transparent;
text-align: center; white-space: nowrap;
height: 16px;
font-size: 10px;
line-height: 16px;
color: #fff; color: #fff;
text-align: center;
margin: 2px 0;
padding: 0 10px;
border: 0;
transform: unset;
} }
.item1 { .handle-default {
background: #6dbd7a; left: 0;
svg {
pointer-events: none;
}
} }
.item2 { .is-yes {
margin: 3px 0; background-color: #81b337;
background: #fe615e;
} }
.item3 { .is-no {
background: #6a6c8a; background-color: #a16222;
}
.is-any {
background-color: #347caf;
} }
} }
.handle-right {
width: 10px; .vue-flow__node {
border-radius: 0; &.selected {
right: -5px; .node-toolbar {
opacity: 0; display: flex;
} }
.tool-line { .handle-wrap {
position: absolute; opacity: 1;
top: 35%; }
right: -12px; }
}
.vue-flow__handle {
} }
.custom-node { .custom-node {
position: relative; position: relative;
// &:hover {
// .node-toolbar {
// display: flex;
// }
// }
} }
.node-toolbar { .node-toolbar {
position: absolute; position: absolute;
left: 50%; left: 50%;
top: -25px; top: -25px;
display: flex; display: none;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
font-size: 20px; font-size: 20px;
...@@ -110,9 +142,10 @@ const handleToolbar = function () { ...@@ -110,9 +142,10 @@ const handleToolbar = function () {
cursor: pointer; cursor: pointer;
} }
} }
</style> .node-label {
font-size: 12px;
<style lang="scss"> text-align: center;
}
.node-item { .node-item {
position: relative; position: relative;
.icon { .icon {
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="20" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="20" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="23" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="23" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="22" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="22" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="21" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="21" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="1" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="1" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="1" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon> <Icon name="hexagon" :color="isGray ? '#9a9a9a' : '#ceaa62'" w="60" h="60"></Icon>
<Icon class="icon" name="24" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="24" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="15" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="15" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="18" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="18" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="2" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="2" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="6" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="6" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="9" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="9" color="#fff" w="24" h="24"></Icon>
......
<script setup lang="ts">
import ConfigTemplate from '../../ConfigTemplate.vue'
import { useMaterial, useConnection } from '../../../useAllData'
import { useMapStore } from '@/stores/map'
const props = defineProps<{ node: any }>()
const role = inject('role') as string
const form = reactive({
operate: '',
material_type: '',
material_id: '',
connection_id: ''
})
watchEffect(() => {
Object.assign(form, props.node.data[role])
})
const operateList = ref([{ label: '发送邮件', value: '0' }])
const materialTypeList = useMapStore().getMapValuesByKey('experiment_marketing_material_type')
const { materialList } = useMaterial()
const { connectionList } = useConnection()
</script>
<template>
<ConfigTemplate :model="form" :node="node" :stepNum="2">
<template #default="{ step }: { step: number }">
<template v-if="step === 0">
<el-form-item>
<el-radio-group v-model="form.operate" v-if="step === 0">
<el-radio v-for="item in operateList" :key="item.value" :label="item.value">
{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</template>
<template v-else-if="step === 1">
<el-form-item>
<el-select placeholder="请选择" style="width: 100%" v-model="form.connection_id">
<el-option v-for="item in connectionList" :key="item.id" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
</template>
<template v-else-if="step === 2">
<el-form-item>
<el-radio-group v-model="form.material_type">
<el-radio v-for="item in materialTypeList" :key="item.id" :label="item.value" style="width: 105px">
发送{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item>
<el-select placeholder="请选择资料内容" v-model="form.material_id" style="width: 100%">
<el-option v-for="item in materialList" :key="item.id" :value="item.id" :label="item.name"></el-option>
</el-select>
</el-form-item>
</template>
</template>
</ConfigTemplate>
</template>
<script setup lang="ts">
import ConfigViewTemplate from '../../ConfigViewTemplate.vue'
defineProps<{ node: any }>()
</script>
<template>
<ConfigViewTemplate :node="node">
<el-form-item label="学生答案"> </el-form-item>
<el-form-item label="正确答案"> </el-form-item>
</ConfigViewTemplate>
</template>
...@@ -3,33 +3,14 @@ ...@@ -3,33 +3,14 @@
import NodeTemplate from '../../NodeTemplate.vue' import NodeTemplate from '../../NodeTemplate.vue'
import Icon from '@/components/ConnectionIcon.vue' import Icon from '@/components/ConnectionIcon.vue'
const Config = defineAsyncComponent(() => import('./Config.vue')) defineProps<{ node: any }>()
const ConfigView = defineAsyncComponent(() => import('./ConfigView.vue'))
const props = defineProps<{ node: any }>()
const action = inject('action') as string
const role = inject('role') as string
const templateType = inject('templateType') as string
// 是否置灰
const isGray = computed(() => {
return templateType === '2' && role === 'student' && action === 'edit' && !props.node.data[role]
})
// 设置
const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" :canSetting="false" :canConnect="false">
<div class="node-item"> <div class="node-item">
<Icon name="circle" :color="isGray ? '#9a9a9a' : '#4C5AB3'" w="60" h="60"></Icon> <Icon name="square" color="#AA1941" w="60" h="60"></Icon>
<Icon class="icon" name="14" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="16" color="#fff" w="24" h="24"></Icon>
</div> </div>
</NodeTemplate> </NodeTemplate>
<!-- 配置 -->
<Config v-model="settingVisible" :node="node" v-if="settingVisible && action === 'edit'" />
<!-- 查看配置 -->
<ConfigView v-model="settingVisible" :node="node" v-if="settingVisible && action === 'view'" />
</template> </template>
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="19" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="19" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="14" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="14" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="17" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="17" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="1" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="1" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="10" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="10" color="#fff" w="24" h="24"></Icon>
......
...@@ -22,7 +22,7 @@ const settingVisible = ref(false) ...@@ -22,7 +22,7 @@ const settingVisible = ref(false)
</script> </script>
<template> <template>
<NodeTemplate :node="node" @setting="settingVisible = true"> <NodeTemplate :node="node" :connectionType="2" @setting="settingVisible = true">
<div class="node-item"> <div class="node-item">
<Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon> <Icon name="square" :color="isGray ? '#9a9a9a' : '#19AAA5'" w="60" h="60"></Icon>
<Icon class="icon" name="7" color="#fff" w="24" h="24"></Icon> <Icon class="icon" name="7" color="#fff" w="24" h="24"></Icon>
......
...@@ -72,7 +72,7 @@ function handleConnectionUpdate(value: string[]) { ...@@ -72,7 +72,7 @@ function handleConnectionUpdate(value: string[]) {
<el-descriptions-item label="旅程类型:">{{ detail.experiment_itinerary_type_name }}</el-descriptions-item> <el-descriptions-item label="旅程类型:">{{ detail.experiment_itinerary_type_name }}</el-descriptions-item>
</el-descriptions> </el-descriptions>
</el-card> </el-card>
<TripFlow v-model="elements" action="edit" role="student"> <TripFlow v-model="elements" action="edit" role="student" :nodes-draggable="!isFree">
<template #left-panel v-if="isFree"> <template #left-panel v-if="isFree">
<TripFlowSidebar :connectionIds="connectionIds" /> <TripFlowSidebar :connectionIds="connectionIds" />
</template> </template>
...@@ -105,6 +105,5 @@ function handleConnectionUpdate(value: string[]) { ...@@ -105,6 +105,5 @@ function handleConnectionUpdate(value: string[]) {
v-model="configVisible" v-model="configVisible"
:data="detail" :data="detail"
@update="handleConnectionUpdate" @update="handleConnectionUpdate"
v-if="configVisible && detail" v-if="configVisible && detail"></BindConnection>
></BindConnection>
</template> </template>
...@@ -35,7 +35,7 @@ const commentVisible = ref(false) ...@@ -35,7 +35,7 @@ const commentVisible = ref(false)
<el-button type="primary" @click="commentVisible = true">教师评语</el-button> <el-button type="primary" @click="commentVisible = true">教师评语</el-button>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
<TripFlow v-model="elements" action="view" role="student"></TripFlow> <TripFlow v-model="elements" action="view" role="student" :nodes-draggable="false"></TripFlow>
</AppCard> </AppCard>
<el-dialog title="评语" width="500px" append-to-body v-model="commentVisible"> <el-dialog title="评语" width="500px" append-to-body v-model="commentVisible">
......
...@@ -70,7 +70,7 @@ function handleSubmit() { ...@@ -70,7 +70,7 @@ function handleSubmit() {
<el-button type="primary" @click="commentVisible = true">填写评语</el-button> <el-button type="primary" @click="commentVisible = true">填写评语</el-button>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
<TripFlow v-model="elements" action="view" role="teacher"> <TripFlow v-model="elements" action="view" role="teacher" :nodes-draggable="false">
<template #footer> <template #footer>
<el-row justify="center"> <el-row justify="center">
<el-button type="primary" auto-insert-space @click="handleSubmit" :disabled="isReviewed">保存</el-button> <el-button type="primary" auto-insert-space @click="handleSubmit" :disabled="isReviewed">保存</el-button>
......
...@@ -96,7 +96,7 @@ function handleConfig() { ...@@ -96,7 +96,7 @@ function handleConfig() {
</el-row> </el-row>
</el-form> </el-form>
</el-card> </el-card>
<TripFlow v-model="elements" action="view" role="teacher" :templateType="detail?.type" :score="score"> <TripFlow v-model="elements" action="edit" role="teacher" :templateType="detail?.type" :score="score">
<template #left-panel> <template #left-panel>
<TripFlowSidebar :connectionIds="connectionIds" /> <TripFlowSidebar :connectionIds="connectionIds" />
</template> </template>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论