Commit 8a9ca498d70a0a4f66c073fe869fc6d8a3e79a55
1 parent
5ffac409
chore: remove useless code
Showing
34 changed files
with
236 additions
and
310 deletions
build/getShortName.ts renamed to build/getConfigFileName.ts
@@ -2,7 +2,7 @@ | @@ -2,7 +2,7 @@ | ||
2 | * Get the configuration file variable name | 2 | * Get the configuration file variable name |
3 | * @param env | 3 | * @param env |
4 | */ | 4 | */ |
5 | -export const getShortName = (env: any) => { | 5 | +export const getConfigFileName = (env: Record<string, any>) => { |
6 | return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__` | 6 | return `__PRODUCTION__${env.VITE_GLOB_APP_SHORT_NAME || '__APP'}__CONF__` |
7 | .toUpperCase() | 7 | .toUpperCase() |
8 | .replace(/\s/g, ''); | 8 | .replace(/\s/g, ''); |
build/script/buildConf.ts
@@ -5,8 +5,8 @@ import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'; | @@ -5,8 +5,8 @@ import { GLOB_CONFIG_FILE_NAME, OUTPUT_DIR } from '../constant'; | ||
5 | import fs, { writeFileSync } from 'fs-extra'; | 5 | import fs, { writeFileSync } from 'fs-extra'; |
6 | import chalk from 'chalk'; | 6 | import chalk from 'chalk'; |
7 | 7 | ||
8 | -import { getCwdPath, getEnvConfig } from '../utils'; | ||
9 | -import { getShortName } from '../getShortName'; | 8 | +import { getRootPath, getEnvConfig } from '../utils'; |
9 | +import { getConfigFileName } from '../getConfigFileName'; | ||
10 | 10 | ||
11 | import pkg from '../../package.json'; | 11 | import pkg from '../../package.json'; |
12 | 12 | ||
@@ -27,8 +27,8 @@ function createConfig( | @@ -27,8 +27,8 @@ function createConfig( | ||
27 | writable: false, | 27 | writable: false, |
28 | }); | 28 | }); |
29 | `.replace(/\s/g, ''); | 29 | `.replace(/\s/g, ''); |
30 | - fs.mkdirp(getCwdPath(OUTPUT_DIR)); | ||
31 | - writeFileSync(getCwdPath(`${OUTPUT_DIR}/${configFileName}`), configStr); | 30 | + fs.mkdirp(getRootPath(OUTPUT_DIR)); |
31 | + writeFileSync(getRootPath(`${OUTPUT_DIR}/${configFileName}`), configStr); | ||
32 | 32 | ||
33 | console.log(chalk.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`); | 33 | console.log(chalk.cyan(`✨ [${pkg.name}]`) + ` - configuration file is build successfully:`); |
34 | console.log(chalk.gray(OUTPUT_DIR + '/' + chalk.green(configFileName)) + '\n'); | 34 | console.log(chalk.gray(OUTPUT_DIR + '/' + chalk.green(configFileName)) + '\n'); |
@@ -39,6 +39,6 @@ function createConfig( | @@ -39,6 +39,6 @@ function createConfig( | ||
39 | 39 | ||
40 | export function runBuildConfig() { | 40 | export function runBuildConfig() { |
41 | const config = getEnvConfig(); | 41 | const config = getEnvConfig(); |
42 | - const configFileName = getShortName(config); | 42 | + const configFileName = getConfigFileName(config); |
43 | createConfig({ config, configName: configFileName }); | 43 | createConfig({ config, configName: configFileName }); |
44 | } | 44 | } |
build/script/postBuild.ts
@@ -14,6 +14,7 @@ export const runBuild = async () => { | @@ -14,6 +14,7 @@ export const runBuild = async () => { | ||
14 | if (!argvList.includes('no-conf')) { | 14 | if (!argvList.includes('no-conf')) { |
15 | await runBuildConfig(); | 15 | await runBuildConfig(); |
16 | } | 16 | } |
17 | + | ||
17 | console.log(`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - build successfully!'); | 18 | console.log(`✨ ${chalk.cyan(`[${pkg.name}]`)}` + ' - build successfully!'); |
18 | } catch (error) { | 19 | } catch (error) { |
19 | console.log(chalk.red('vite build error:\n' + error)); | 20 | console.log(chalk.red('vite build error:\n' + error)); |
build/tsconfig.json
@@ -5,7 +5,6 @@ | @@ -5,7 +5,6 @@ | ||
5 | "moduleResolution": "node", | 5 | "moduleResolution": "node", |
6 | "strict": true, | 6 | "strict": true, |
7 | "forceConsistentCasingInFileNames": true, | 7 | "forceConsistentCasingInFileNames": true, |
8 | - "jsx": "react", | ||
9 | "baseUrl": ".", | 8 | "baseUrl": ".", |
10 | "esModuleInterop": true, | 9 | "esModuleInterop": true, |
11 | "noUnusedLocals": true, | 10 | "noUnusedLocals": true, |
build/typeing.d.ts
build/utils.ts
@@ -2,12 +2,6 @@ import fs from 'fs'; | @@ -2,12 +2,6 @@ import fs from 'fs'; | ||
2 | import path from 'path'; | 2 | import path from 'path'; |
3 | import dotenv from 'dotenv'; | 3 | import dotenv from 'dotenv'; |
4 | 4 | ||
5 | -export const isFunction = (arg: unknown): arg is (...args: any[]) => any => | ||
6 | - typeof arg === 'function'; | ||
7 | - | ||
8 | -export const isRegExp = (arg: unknown): arg is RegExp => | ||
9 | - Object.prototype.toString.call(arg) === '[object RegExp]'; | ||
10 | - | ||
11 | export function isDevFn(mode: string): boolean { | 5 | export function isDevFn(mode: string): boolean { |
12 | return mode === 'development'; | 6 | return mode === 'development'; |
13 | } | 7 | } |
@@ -34,18 +28,18 @@ export interface ViteEnv { | @@ -34,18 +28,18 @@ export interface ViteEnv { | ||
34 | VITE_USE_CDN: boolean; | 28 | VITE_USE_CDN: boolean; |
35 | VITE_DROP_CONSOLE: boolean; | 29 | VITE_DROP_CONSOLE: boolean; |
36 | VITE_BUILD_COMPRESS: 'gzip' | 'brotli' | 'none'; | 30 | VITE_BUILD_COMPRESS: 'gzip' | 'brotli' | 'none'; |
37 | - VITE_DYNAMIC_IMPORT: boolean; | ||
38 | VITE_LEGACY: boolean; | 31 | VITE_LEGACY: boolean; |
39 | VITE_USE_IMAGEMIN: boolean; | 32 | VITE_USE_IMAGEMIN: boolean; |
40 | } | 33 | } |
41 | 34 | ||
42 | // Read all environment variable configuration files to process.env | 35 | // Read all environment variable configuration files to process.env |
43 | -export function wrapperEnv(envConf: any): ViteEnv { | 36 | +export function wrapperEnv(envConf: Recordable): ViteEnv { |
44 | const ret: any = {}; | 37 | const ret: any = {}; |
45 | 38 | ||
46 | for (const envName of Object.keys(envConf)) { | 39 | for (const envName of Object.keys(envConf)) { |
47 | let realName = envConf[envName].replace(/\\n/g, '\n'); | 40 | let realName = envConf[envName].replace(/\\n/g, '\n'); |
48 | realName = realName === 'true' ? true : realName === 'false' ? false : realName; | 41 | realName = realName === 'true' ? true : realName === 'false' ? false : realName; |
42 | + | ||
49 | if (envName === 'VITE_PORT') { | 43 | if (envName === 'VITE_PORT') { |
50 | realName = Number(realName); | 44 | realName = Number(realName); |
51 | } | 45 | } |
@@ -70,10 +64,10 @@ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = ['.env', '.env.pr | @@ -70,10 +64,10 @@ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = ['.env', '.env.pr | ||
70 | confFiles.forEach((item) => { | 64 | confFiles.forEach((item) => { |
71 | try { | 65 | try { |
72 | const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))); | 66 | const env = dotenv.parse(fs.readFileSync(path.resolve(process.cwd(), item))); |
73 | - | ||
74 | envConfig = { ...envConfig, ...env }; | 67 | envConfig = { ...envConfig, ...env }; |
75 | } catch (error) {} | 68 | } catch (error) {} |
76 | }); | 69 | }); |
70 | + | ||
77 | Object.keys(envConfig).forEach((key) => { | 71 | Object.keys(envConfig).forEach((key) => { |
78 | const reg = new RegExp(`^(${match})`); | 72 | const reg = new RegExp(`^(${match})`); |
79 | if (!reg.test(key)) { | 73 | if (!reg.test(key)) { |
@@ -87,6 +81,6 @@ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = ['.env', '.env.pr | @@ -87,6 +81,6 @@ export function getEnvConfig(match = 'VITE_GLOB_', confFiles = ['.env', '.env.pr | ||
87 | * Get user root directory | 81 | * Get user root directory |
88 | * @param dir file path | 82 | * @param dir file path |
89 | */ | 83 | */ |
90 | -export function getCwdPath(...dir: string[]) { | 84 | +export function getRootPath(...dir: string[]) { |
91 | return path.resolve(process.cwd(), ...dir); | 85 | return path.resolve(process.cwd(), ...dir); |
92 | } | 86 | } |
build/vite/plugin/index.ts
1 | import type { Plugin } from 'vite'; | 1 | import type { Plugin } from 'vite'; |
2 | +import type { ViteEnv } from '../../utils'; | ||
2 | 3 | ||
3 | import vue from '@vitejs/plugin-vue'; | 4 | import vue from '@vitejs/plugin-vue'; |
4 | import vueJsx from '@vitejs/plugin-vue-jsx'; | 5 | import vueJsx from '@vitejs/plugin-vue-jsx'; |
@@ -6,7 +7,6 @@ import legacy from '@vitejs/plugin-legacy'; | @@ -6,7 +7,6 @@ import legacy from '@vitejs/plugin-legacy'; | ||
6 | 7 | ||
7 | import PurgeIcons from 'vite-plugin-purge-icons'; | 8 | import PurgeIcons from 'vite-plugin-purge-icons'; |
8 | 9 | ||
9 | -import { ViteEnv } from '../../utils'; | ||
10 | import { configHtmlPlugin } from './html'; | 10 | import { configHtmlPlugin } from './html'; |
11 | import { configPwaConfig } from './pwa'; | 11 | import { configPwaConfig } from './pwa'; |
12 | import { configMockPlugin } from './mock'; | 12 | import { configMockPlugin } from './mock'; |
build/vite/plugin/pwa.ts
@@ -2,11 +2,10 @@ | @@ -2,11 +2,10 @@ | ||
2 | * Zero-config PWA for Vite | 2 | * Zero-config PWA for Vite |
3 | * https://github.com/antfu/vite-plugin-pwa | 3 | * https://github.com/antfu/vite-plugin-pwa |
4 | */ | 4 | */ |
5 | +import type { ViteEnv } from '../../utils'; | ||
5 | 6 | ||
6 | import { VitePWA } from 'vite-plugin-pwa'; | 7 | import { VitePWA } from 'vite-plugin-pwa'; |
7 | 8 | ||
8 | -import { ViteEnv } from '../../utils'; | ||
9 | - | ||
10 | export function configPwaConfig(env: ViteEnv) { | 9 | export function configPwaConfig(env: ViteEnv) { |
11 | const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env; | 10 | const { VITE_USE_PWA, VITE_GLOB_APP_TITLE, VITE_GLOB_APP_SHORT_NAME } = env; |
12 | 11 |
build/vite/plugin/windicss.ts
1 | -import windiCSS from 'vite-plugin-windicss'; | ||
2 | - | ||
3 | import type { Plugin } from 'vite'; | 1 | import type { Plugin } from 'vite'; |
4 | 2 | ||
3 | +import windiCSS from 'vite-plugin-windicss'; | ||
4 | + | ||
5 | export function configWindiCssPlugin(): Plugin[] { | 5 | export function configWindiCssPlugin(): Plugin[] { |
6 | return windiCSS({ | 6 | return windiCSS({ |
7 | safelist: 'no-select', | 7 | safelist: 'no-select', |
mock/_createProductionServer.ts
1 | import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'; | 1 | import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'; |
2 | 2 | ||
3 | +// @ts-ignore | ||
3 | const modules = import.meta.globEager('./**/*.ts'); | 4 | const modules = import.meta.globEager('./**/*.ts'); |
4 | 5 | ||
5 | const mockModules: any[] = []; | 6 | const mockModules: any[] = []; |
mock/_util.ts
@@ -18,13 +18,11 @@ export function resultPageSuccess<T = any>( | @@ -18,13 +18,11 @@ export function resultPageSuccess<T = any>( | ||
18 | const pageData = pagination(page, pageSize, list); | 18 | const pageData = pagination(page, pageSize, list); |
19 | 19 | ||
20 | return { | 20 | return { |
21 | - code: 0, | ||
22 | - result: { | 21 | + ...resultSuccess({ |
23 | items: pageData, | 22 | items: pageData, |
24 | total: list.length, | 23 | total: list.length, |
25 | - }, | 24 | + }), |
26 | message, | 25 | message, |
27 | - type: 'success', | ||
28 | }; | 26 | }; |
29 | } | 27 | } |
30 | 28 |
package.json
@@ -2,6 +2,7 @@ | @@ -2,6 +2,7 @@ | ||
2 | "name": "vben-admin", | 2 | "name": "vben-admin", |
3 | "version": "2.0.1", | 3 | "version": "2.0.1", |
4 | "scripts": { | 4 | "scripts": { |
5 | + "bootstrap": "yarn install", | ||
5 | "serve": "vite", | 6 | "serve": "vite", |
6 | "dev": "vite", | 7 | "dev": "vite", |
7 | "build": "vite build && esno ./build/script/postBuild.ts", | 8 | "build": "vite build && esno ./build/script/postBuild.ts", |
@@ -9,9 +10,9 @@ | @@ -9,9 +10,9 @@ | ||
9 | "report": "cross-env REPORT=true npm run build ", | 10 | "report": "cross-env REPORT=true npm run build ", |
10 | "preview": "npm run build && vite preview", | 11 | "preview": "npm run build && vite preview", |
11 | "preview:dist": "vite preview", | 12 | "preview:dist": "vite preview", |
12 | - "log": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0", | 13 | + "log": "conventional-changelog -p angular -i CHANGELOG.md -s", |
13 | "clean:cache": "rimraf node_modules/.cache/ && rimraf node_modules/.vite", | 14 | "clean:cache": "rimraf node_modules/.cache/ && rimraf node_modules/.vite", |
14 | - "clean:lib": "npx rimraf node_modules", | 15 | + "clean:lib": "rimraf node_modules", |
15 | "lint:eslint": "eslint \"{src,mock}/**/*.{vue,ts,tsx}\" --fix", | 16 | "lint:eslint": "eslint \"{src,mock}/**/*.{vue,ts,tsx}\" --fix", |
16 | "lint:prettier": "prettier --write --loglevel warn \"src/**/*.{js,json,tsx,css,less,scss,vue,html,md}\"", | 17 | "lint:prettier": "prettier --write --loglevel warn \"src/**/*.{js,json,tsx,css,less,scss,vue,html,md}\"", |
17 | "lint:stylelint": "stylelint --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/", | 18 | "lint:stylelint": "stylelint --fix \"**/*.{vue,less,postcss,css,scss}\" --cache --cache-location node_modules/.cache/stylelint/", |
@@ -39,8 +40,8 @@ | @@ -39,8 +40,8 @@ | ||
39 | "qrcode": "^1.4.4", | 40 | "qrcode": "^1.4.4", |
40 | "sortablejs": "^1.13.0", | 41 | "sortablejs": "^1.13.0", |
41 | "vditor": "^3.8.1", | 42 | "vditor": "^3.8.1", |
42 | - "vue": "^3.0.6", | ||
43 | - "vue-i18n": "9.0.0-rc.7", | 43 | + "vue": "3.0.5", |
44 | + "vue-i18n": "9.0.0-rc.8", | ||
44 | "vue-router": "^4.0.4", | 45 | "vue-router": "^4.0.4", |
45 | "vue-types": "^3.0.2", | 46 | "vue-types": "^3.0.2", |
46 | "vuex": "^4.0.0", | 47 | "vuex": "^4.0.0", |
@@ -50,7 +51,7 @@ | @@ -50,7 +51,7 @@ | ||
50 | "devDependencies": { | 51 | "devDependencies": { |
51 | "@commitlint/cli": "^12.0.0", | 52 | "@commitlint/cli": "^12.0.0", |
52 | "@commitlint/config-conventional": "^12.0.0", | 53 | "@commitlint/config-conventional": "^12.0.0", |
53 | - "@iconify/json": "^1.1.307", | 54 | + "@iconify/json": "^1.1.308", |
54 | "@ls-lint/ls-lint": "^1.9.2", | 55 | "@ls-lint/ls-lint": "^1.9.2", |
55 | "@purge-icons/generated": "^0.7.0", | 56 | "@purge-icons/generated": "^0.7.0", |
56 | "@types/fs-extra": "^9.0.7", | 57 | "@types/fs-extra": "^9.0.7", |
@@ -68,7 +69,7 @@ | @@ -68,7 +69,7 @@ | ||
68 | "@vitejs/plugin-legacy": "^1.3.1", | 69 | "@vitejs/plugin-legacy": "^1.3.1", |
69 | "@vitejs/plugin-vue": "^1.1.4", | 70 | "@vitejs/plugin-vue": "^1.1.4", |
70 | "@vitejs/plugin-vue-jsx": "^1.1.2", | 71 | "@vitejs/plugin-vue-jsx": "^1.1.2", |
71 | - "@vue/compiler-sfc": "^3.0.6", | 72 | + "@vue/compiler-sfc": "3.0.5", |
72 | "autoprefixer": "^10.2.4", | 73 | "autoprefixer": "^10.2.4", |
73 | "commitizen": "^4.2.3", | 74 | "commitizen": "^4.2.3", |
74 | "conventional-changelog-cli": "^2.1.1", | 75 | "conventional-changelog-cli": "^2.1.1", |
src/components/Tinymce/src/Editor.vue
@@ -26,7 +26,7 @@ | @@ -26,7 +26,7 @@ | ||
26 | import plugins from './plugins'; | 26 | import plugins from './plugins'; |
27 | import { getTinymce } from './getTinymce'; | 27 | import { getTinymce } from './getTinymce'; |
28 | import { useScript } from '/@/hooks/web/useScript'; | 28 | import { useScript } from '/@/hooks/web/useScript'; |
29 | - import { snowUuid } from '/@/utils/uuid'; | 29 | + import { shortUuid } from '/@/utils/uuid'; |
30 | import { bindHandlers } from './helper'; | 30 | import { bindHandlers } from './helper'; |
31 | import lineHeight from './lineHeight'; | 31 | import lineHeight from './lineHeight'; |
32 | import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated'; | 32 | import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated'; |
@@ -45,7 +45,7 @@ | @@ -45,7 +45,7 @@ | ||
45 | emits: ['change', 'update:modelValue'], | 45 | emits: ['change', 'update:modelValue'], |
46 | setup(props, { emit, attrs }) { | 46 | setup(props, { emit, attrs }) { |
47 | const editorRef = ref<any>(null); | 47 | const editorRef = ref<any>(null); |
48 | - const tinymceId = ref<string>(snowUuid('tiny-vue')); | 48 | + const tinymceId = ref<string>(shortUuid('tiny-vue')); |
49 | const elRef = ref<Nullable<HTMLElement>>(null); | 49 | const elRef = ref<Nullable<HTMLElement>>(null); |
50 | 50 | ||
51 | const { prefixCls } = useDesign('tinymce-container'); | 51 | const { prefixCls } = useDesign('tinymce-container'); |
@@ -104,7 +104,7 @@ | @@ -104,7 +104,7 @@ | ||
104 | } | 104 | } |
105 | ); | 105 | ); |
106 | onMountedOrActivated(() => { | 106 | onMountedOrActivated(() => { |
107 | - tinymceId.value = snowUuid('tiny-vue'); | 107 | + tinymceId.value = shortUuid('tiny-vue'); |
108 | nextTick(() => { | 108 | nextTick(() => { |
109 | init(); | 109 | init(); |
110 | }); | 110 | }); |
src/hooks/setting/index.ts
1 | import type { ProjectConfig, GlobConfig, GlobEnvConfig } from '/@/types/config'; | 1 | import type { ProjectConfig, GlobConfig, GlobEnvConfig } from '/@/types/config'; |
2 | 2 | ||
3 | +import { getConfigFileName } from '../../../build/getConfigFileName'; | ||
4 | + | ||
3 | import getProjectSetting from '/@/settings/projectSetting'; | 5 | import getProjectSetting from '/@/settings/projectSetting'; |
4 | 6 | ||
5 | -import { getShortName } from '../../../build/getShortName'; | ||
6 | import { warn } from '/@/utils/log'; | 7 | import { warn } from '/@/utils/log'; |
7 | import { getGlobEnvConfig, isDevMode } from '/@/utils/env'; | 8 | import { getGlobEnvConfig, isDevMode } from '/@/utils/env'; |
8 | 9 | ||
9 | -const reg = /[a-zA-Z\_]*/; | ||
10 | - | ||
11 | -const ENV_NAME = getShortName(import.meta.env); | ||
12 | -const ENV = ((isDevMode() | ||
13 | - ? getGlobEnvConfig() | ||
14 | - : window[ENV_NAME as any]) as unknown) as GlobEnvConfig; | ||
15 | - | ||
16 | -const { | ||
17 | - VITE_GLOB_APP_TITLE, | ||
18 | - VITE_GLOB_API_URL, | ||
19 | - VITE_GLOB_APP_SHORT_NAME, | ||
20 | - VITE_GLOB_API_URL_PREFIX, | ||
21 | - VITE_GLOB_UPLOAD_URL, | ||
22 | -} = ENV; | ||
23 | - | ||
24 | -if (!reg.test(VITE_GLOB_APP_SHORT_NAME)) { | ||
25 | - warn( | ||
26 | - `VITE_GLOB_APP_SHORT_NAME Variables can only be characters/underscores, please modify in the environment variables and re-running.` | ||
27 | - ); | ||
28 | -} | ||
29 | - | ||
30 | export const useGlobSetting = (): Readonly<GlobConfig> => { | 10 | export const useGlobSetting = (): Readonly<GlobConfig> => { |
11 | + const ENV_NAME = getConfigFileName(import.meta.env); | ||
12 | + | ||
13 | + const ENV = ((isDevMode() | ||
14 | + ? getGlobEnvConfig() | ||
15 | + : window[ENV_NAME as any]) as unknown) as GlobEnvConfig; | ||
16 | + | ||
17 | + const { | ||
18 | + VITE_GLOB_APP_TITLE, | ||
19 | + VITE_GLOB_API_URL, | ||
20 | + VITE_GLOB_APP_SHORT_NAME, | ||
21 | + VITE_GLOB_API_URL_PREFIX, | ||
22 | + VITE_GLOB_UPLOAD_URL, | ||
23 | + } = ENV; | ||
24 | + | ||
25 | + if (!/[a-zA-Z\_]*/.test(VITE_GLOB_APP_SHORT_NAME)) { | ||
26 | + warn( | ||
27 | + `VITE_GLOB_APP_SHORT_NAME Variables can only be characters/underscores, please modify in the environment variables and re-running.` | ||
28 | + ); | ||
29 | + } | ||
30 | + | ||
31 | // Take global configuration | 31 | // Take global configuration |
32 | const glob: Readonly<GlobConfig> = { | 32 | const glob: Readonly<GlobConfig> = { |
33 | title: VITE_GLOB_APP_TITLE, | 33 | title: VITE_GLOB_APP_TITLE, |
src/hooks/web/useApexCharts.ts
@@ -2,8 +2,6 @@ import { useTimeoutFn } from '/@/hooks/core/useTimeout'; | @@ -2,8 +2,6 @@ import { useTimeoutFn } from '/@/hooks/core/useTimeout'; | ||
2 | import { tryOnUnmounted } from '/@/utils/helper/vueHelper'; | 2 | import { tryOnUnmounted } from '/@/utils/helper/vueHelper'; |
3 | import { unref, Ref, nextTick } from 'vue'; | 3 | import { unref, Ref, nextTick } from 'vue'; |
4 | 4 | ||
5 | -import ApexCharts from 'apexcharts'; | ||
6 | - | ||
7 | interface CallBackFn { | 5 | interface CallBackFn { |
8 | (instance: Nullable<ApexCharts>): void; | 6 | (instance: Nullable<ApexCharts>): void; |
9 | } | 7 | } |
@@ -13,21 +11,22 @@ export function useApexCharts(elRef: Ref<HTMLDivElement>) { | @@ -13,21 +11,22 @@ export function useApexCharts(elRef: Ref<HTMLDivElement>) { | ||
13 | 11 | ||
14 | function setOptions(options: any, callback?: CallBackFn) { | 12 | function setOptions(options: any, callback?: CallBackFn) { |
15 | nextTick(() => { | 13 | nextTick(() => { |
16 | - useTimeoutFn(() => { | 14 | + useTimeoutFn(async () => { |
17 | const el = unref(elRef); | 15 | const el = unref(elRef); |
18 | 16 | ||
19 | if (!el || !unref(el)) return; | 17 | if (!el || !unref(el)) return; |
18 | + const ApexCharts = await (await import('apexcharts')).default; | ||
20 | chartInstance = new ApexCharts(el, options); | 19 | chartInstance = new ApexCharts(el, options); |
21 | 20 | ||
22 | chartInstance && chartInstance.render(); | 21 | chartInstance && chartInstance.render(); |
23 | 22 | ||
24 | - // setOptions增加callback方法,返回chartInstance,以便于对图表进行再操作,例如调用updateOptions方法更新图表 | 23 | + // The callback method is added to setOptions to return the chartInstance to facilitate the re-operation of the chart, such as calling the updateOptions method to update the chart |
25 | callback && callback(chartInstance); | 24 | callback && callback(chartInstance); |
26 | }, 30); | 25 | }, 30); |
27 | }); | 26 | }); |
28 | } | 27 | } |
29 | 28 | ||
30 | - // 新增调用ApexCharts的updateOptions方法更新图表 | 29 | + // Call the updateOptions method of ApexCharts to update the chart |
31 | function updateOptions( | 30 | function updateOptions( |
32 | chartInstance: Nullable<ApexCharts>, | 31 | chartInstance: Nullable<ApexCharts>, |
33 | options: any, | 32 | options: any, |
src/hooks/web/useLockPage.ts
src/hooks/web/usePermission.ts
@@ -40,7 +40,7 @@ export function usePermission() { | @@ -40,7 +40,7 @@ export function usePermission() { | ||
40 | resetRouter(); | 40 | resetRouter(); |
41 | const routes = await permissionStore.buildRoutesAction(id); | 41 | const routes = await permissionStore.buildRoutesAction(id); |
42 | routes.forEach((route) => { | 42 | routes.forEach((route) => { |
43 | - router.addRoute(route as RouteRecordRaw); | 43 | + router.addRoute((route as unknown) as RouteRecordRaw); |
44 | }); | 44 | }); |
45 | permissionStore.commitLastBuildMenuTimeState(); | 45 | permissionStore.commitLastBuildMenuTimeState(); |
46 | const { closeAll } = useTabs(); | 46 | const { closeAll } = useTabs(); |
src/hooks/web/useSortable.ts
1 | -import Sortable from 'sortablejs'; | ||
2 | import { nextTick, unref } from 'vue'; | 1 | import { nextTick, unref } from 'vue'; |
3 | import type { Ref } from 'vue'; | 2 | import type { Ref } from 'vue'; |
3 | +import type { Options } from 'sortablejs'; | ||
4 | 4 | ||
5 | -export function useSortable(el: HTMLElement | Ref<HTMLElement>, options?: Sortable.Options) { | 5 | +export function useSortable(el: HTMLElement | Ref<HTMLElement>, options?: Options) { |
6 | function initSortable() { | 6 | function initSortable() { |
7 | - nextTick(() => { | 7 | + nextTick(async () => { |
8 | if (!el) return; | 8 | if (!el) return; |
9 | + | ||
10 | + const Sortable = (await import('sortablejs')).default; | ||
9 | Sortable.create(unref(el), { | 11 | Sortable.create(unref(el), { |
10 | animation: 500, | 12 | animation: 500, |
11 | delay: 400, | 13 | delay: 400, |
src/layouts/default/tabs/useMultipleTabs.ts
@@ -43,7 +43,7 @@ export function initAffixTabs(): string[] { | @@ -43,7 +43,7 @@ export function initAffixTabs(): string[] { | ||
43 | addAffixTabs(); | 43 | addAffixTabs(); |
44 | isAddAffix = true; | 44 | isAddAffix = true; |
45 | } | 45 | } |
46 | - return affixList.value.map((item) => item.meta?.title).filter(Boolean); | 46 | + return affixList.value.map((item) => item.meta?.title).filter(Boolean) as string[]; |
47 | } | 47 | } |
48 | 48 | ||
49 | export function useTabsDrag(affixTextList: string[]) { | 49 | export function useTabsDrag(affixTextList: string[]) { |
src/logics/initAppConfig.ts
@@ -7,7 +7,7 @@ import type { ProjectConfig } from '/@/types/config'; | @@ -7,7 +7,7 @@ import type { ProjectConfig } from '/@/types/config'; | ||
7 | import { PROJ_CFG_KEY } from '/@/enums/cacheEnum'; | 7 | import { PROJ_CFG_KEY } from '/@/enums/cacheEnum'; |
8 | 8 | ||
9 | import projectSetting from '/@/settings/projectSetting'; | 9 | import projectSetting from '/@/settings/projectSetting'; |
10 | -import { getLocal } from '/@/utils/helper/persistent'; | 10 | +import { getLocal } from '/@/utils/cache/persistent'; |
11 | import { updateHeaderBgColor, updateSidebarBgColor } from '/@/logics/theme/updateBackground'; | 11 | import { updateHeaderBgColor, updateSidebarBgColor } from '/@/logics/theme/updateBackground'; |
12 | import { updateColorWeak } from '/@/logics/theme/updateColorWeak'; | 12 | import { updateColorWeak } from '/@/logics/theme/updateColorWeak'; |
13 | import { updateGrayMode } from '/@/logics/theme/updateGrayMode'; | 13 | import { updateGrayMode } from '/@/logics/theme/updateGrayMode'; |
src/router/helper/menuHelper.ts
@@ -46,12 +46,6 @@ export function transformRouteToMenu(routeModList: AppRouteModule[]) { | @@ -46,12 +46,6 @@ export function transformRouteToMenu(routeModList: AppRouteModule[]) { | ||
46 | const cloneRouteModList = cloneDeep(routeModList); | 46 | const cloneRouteModList = cloneDeep(routeModList); |
47 | const routeList: AppRouteRecordRaw[] = []; | 47 | const routeList: AppRouteRecordRaw[] = []; |
48 | 48 | ||
49 | - // cloneRouteModList = filter(cloneRouteModList, (node) => { | ||
50 | - // if (Reflect.has(node?.meta ?? {}, 'hideMenu')) { | ||
51 | - // return !node?.meta.hideMenu; | ||
52 | - // } | ||
53 | - // return true; | ||
54 | - // }); | ||
55 | cloneRouteModList.forEach((item) => { | 49 | cloneRouteModList.forEach((item) => { |
56 | if (item.meta?.single) { | 50 | if (item.meta?.single) { |
57 | const realItem = item?.children?.[0]; | 51 | const realItem = item?.children?.[0]; |
src/router/index.ts
@@ -3,9 +3,8 @@ import type { App } from 'vue'; | @@ -3,9 +3,8 @@ import type { App } from 'vue'; | ||
3 | 3 | ||
4 | import { createRouter, createWebHashHistory } from 'vue-router'; | 4 | import { createRouter, createWebHashHistory } from 'vue-router'; |
5 | 5 | ||
6 | -import { createGuard } from './guard/'; | ||
7 | - | ||
8 | -import { basicRoutes } from './routes/'; | 6 | +import { createGuard } from './guard'; |
7 | +import { basicRoutes } from './routes'; | ||
9 | import { REDIRECT_NAME } from './constant'; | 8 | import { REDIRECT_NAME } from './constant'; |
10 | 9 | ||
11 | // app router | 10 | // app router |
@@ -33,8 +32,4 @@ export function setupRouter(app: App<Element>) { | @@ -33,8 +32,4 @@ export function setupRouter(app: App<Element>) { | ||
33 | createGuard(router); | 32 | createGuard(router); |
34 | } | 33 | } |
35 | 34 | ||
36 | -// router.onError((error) => { | ||
37 | -// console.error(error); | ||
38 | -// }); | ||
39 | - | ||
40 | export default router; | 35 | export default router; |
src/store/modules/app.ts
@@ -6,7 +6,7 @@ import store from '/@/store'; | @@ -6,7 +6,7 @@ import store from '/@/store'; | ||
6 | import { PROJ_CFG_KEY } from '/@/enums/cacheEnum'; | 6 | import { PROJ_CFG_KEY } from '/@/enums/cacheEnum'; |
7 | 7 | ||
8 | import { hotModuleUnregisterModule } from '/@/utils/helper/vuexHelper'; | 8 | import { hotModuleUnregisterModule } from '/@/utils/helper/vuexHelper'; |
9 | -import { setLocal, getLocal, clearSession, clearLocal } from '/@/utils/helper/persistent'; | 9 | +import { setLocal, getLocal, clearSession, clearLocal } from '/@/utils/cache/persistent'; |
10 | import { deepMerge } from '/@/utils'; | 10 | import { deepMerge } from '/@/utils'; |
11 | 11 | ||
12 | import { resetRouter } from '/@/router'; | 12 | import { resetRouter } from '/@/router'; |
src/store/modules/lock.ts
@@ -4,7 +4,7 @@ import store from '/@/store'; | @@ -4,7 +4,7 @@ import store from '/@/store'; | ||
4 | import { LOCK_INFO_KEY } from '/@/enums/cacheEnum'; | 4 | import { LOCK_INFO_KEY } from '/@/enums/cacheEnum'; |
5 | 5 | ||
6 | import { hotModuleUnregisterModule } from '/@/utils/helper/vuexHelper'; | 6 | import { hotModuleUnregisterModule } from '/@/utils/helper/vuexHelper'; |
7 | -import { setLocal, getLocal, removeLocal } from '/@/utils/helper/persistent'; | 7 | +import { setLocal, getLocal, removeLocal } from '/@/utils/cache/persistent'; |
8 | 8 | ||
9 | import { userStore } from './user'; | 9 | import { userStore } from './user'; |
10 | 10 |
src/store/modules/user.ts
@@ -18,7 +18,7 @@ import router from '/@/router'; | @@ -18,7 +18,7 @@ import router from '/@/router'; | ||
18 | 18 | ||
19 | import { loginApi, getUserInfoById } from '/@/api/sys/user'; | 19 | import { loginApi, getUserInfoById } from '/@/api/sys/user'; |
20 | 20 | ||
21 | -import { setLocal, getLocal, getSession, setSession } from '/@/utils/helper/persistent'; | 21 | +import { setLocal, getLocal, getSession, setSession } from '/@/utils/cache/persistent'; |
22 | import { useProjectSetting } from '/@/hooks/setting'; | 22 | import { useProjectSetting } from '/@/hooks/setting'; |
23 | import { useI18n } from '/@/hooks/web/useI18n'; | 23 | import { useI18n } from '/@/hooks/web/useI18n'; |
24 | import { ErrorMessageMode } from '/@/utils/http/axios/types'; | 24 | import { ErrorMessageMode } from '/@/utils/http/axios/types'; |
@@ -37,7 +37,6 @@ function getCache<T>(key: string) { | @@ -37,7 +37,6 @@ function getCache<T>(key: string) { | ||
37 | 37 | ||
38 | function setCache(USER_INFO_KEY: string, info: any) { | 38 | function setCache(USER_INFO_KEY: string, info: any) { |
39 | if (!info) return; | 39 | if (!info) return; |
40 | - // const fn = permissionCacheType === CacheTypeEnum.LOCAL ? setLocal : setSession; | ||
41 | setLocal(USER_INFO_KEY, info, true); | 40 | setLocal(USER_INFO_KEY, info, true); |
42 | // TODO | 41 | // TODO |
43 | setSession(USER_INFO_KEY, info, true); | 42 | setSession(USER_INFO_KEY, info, true); |
src/types/config.d.ts
@@ -6,9 +6,10 @@ import { | @@ -6,9 +6,10 @@ import { | ||
6 | RouterTransitionEnum, | 6 | RouterTransitionEnum, |
7 | SettingButtonPositionEnum, | 7 | SettingButtonPositionEnum, |
8 | } from '/@/enums/appEnum'; | 8 | } from '/@/enums/appEnum'; |
9 | + | ||
9 | import { CacheTypeEnum } from '/@/enums/cacheEnum'; | 10 | import { CacheTypeEnum } from '/@/enums/cacheEnum'; |
10 | import type { LocaleType } from '/@/locales/types'; | 11 | import type { LocaleType } from '/@/locales/types'; |
11 | -import { ThemeMode } from '../../build/config/lessModifyVars'; | 12 | +import { ThemeMode } from '../../build/config/themeConfig'; |
12 | 13 | ||
13 | export interface MenuSetting { | 14 | export interface MenuSetting { |
14 | bgColor: string; | 15 | bgColor: string; |
@@ -32,16 +33,10 @@ export interface MenuSetting { | @@ -32,16 +33,10 @@ export interface MenuSetting { | ||
32 | } | 33 | } |
33 | 34 | ||
34 | export interface MultiTabsSetting { | 35 | export interface MultiTabsSetting { |
35 | - // 是否显示 | ||
36 | show: boolean; | 36 | show: boolean; |
37 | - // 开启快速操作 | ||
38 | showQuick: boolean; | 37 | showQuick: boolean; |
39 | canDrag: boolean; | 38 | canDrag: boolean; |
40 | - | ||
41 | - // 显示刷新按钮 | ||
42 | showRedo: boolean; | 39 | showRedo: boolean; |
43 | - | ||
44 | - // 显示折叠按钮 | ||
45 | showFold: boolean; | 40 | showFold: boolean; |
46 | } | 41 | } |
47 | 42 | ||
@@ -50,16 +45,14 @@ export interface HeaderSetting { | @@ -50,16 +45,14 @@ export interface HeaderSetting { | ||
50 | fixed: boolean; | 45 | fixed: boolean; |
51 | show: boolean; | 46 | show: boolean; |
52 | theme: ThemeEnum; | 47 | theme: ThemeEnum; |
53 | - | ||
54 | - // 显示全屏按钮 | 48 | + // Turn on full screen |
55 | showFullScreen: boolean; | 49 | showFullScreen: boolean; |
56 | - // 开启全屏功能 | 50 | + // Whether to show the lock screen |
57 | useLockPage: boolean; | 51 | useLockPage: boolean; |
58 | - // 显示文档按钮 | 52 | + // Show document button |
59 | showDoc: boolean; | 53 | showDoc: boolean; |
60 | - // 显示消息中心按钮 | 54 | + // Show message center button |
61 | showNotice: boolean; | 55 | showNotice: boolean; |
62 | - | ||
63 | showSearch: boolean; | 56 | showSearch: boolean; |
64 | } | 57 | } |
65 | 58 | ||
@@ -76,96 +69,90 @@ export interface LocaleSetting { | @@ -76,96 +69,90 @@ export interface LocaleSetting { | ||
76 | export interface TransitionSetting { | 69 | export interface TransitionSetting { |
77 | // Whether to open the page switching animation | 70 | // Whether to open the page switching animation |
78 | enable: boolean; | 71 | enable: boolean; |
79 | - | ||
80 | // Route basic switching animation | 72 | // Route basic switching animation |
81 | basicTransition: RouterTransitionEnum; | 73 | basicTransition: RouterTransitionEnum; |
82 | - | ||
83 | // Whether to open page switching loading | 74 | // Whether to open page switching loading |
84 | openPageLoading: boolean; | 75 | openPageLoading: boolean; |
85 | - | ||
86 | // Whether to open the top progress bar | 76 | // Whether to open the top progress bar |
87 | openNProgress: boolean; | 77 | openNProgress: boolean; |
88 | } | 78 | } |
89 | 79 | ||
90 | export interface ProjectConfig { | 80 | export interface ProjectConfig { |
81 | + // Multilingual configuration | ||
91 | locale: LocaleSetting; | 82 | locale: LocaleSetting; |
92 | - | 83 | + // Storage location of permission related information |
93 | permissionCacheType: CacheTypeEnum; | 84 | permissionCacheType: CacheTypeEnum; |
94 | - | ||
95 | - // 是否显示配置按钮 | 85 | + // Whether to show the configuration button |
96 | showSettingButton: boolean; | 86 | showSettingButton: boolean; |
87 | + // Configure where the button is displayed | ||
97 | settingButtonPosition: SettingButtonPositionEnum; | 88 | settingButtonPosition: SettingButtonPositionEnum; |
98 | - // 权限模式 | 89 | + // Permission mode |
99 | permissionMode: PermissionModeEnum; | 90 | permissionMode: PermissionModeEnum; |
100 | - // 网站灰色模式,用于可能悼念的日期开启 | 91 | + // Website gray mode, open for possible mourning dates |
101 | grayMode: boolean; | 92 | grayMode: boolean; |
102 | - // 是否开启色弱模式 | 93 | + // Whether to turn on the color weak mode |
103 | colorWeak: boolean; | 94 | colorWeak: boolean; |
104 | - // 主题色 | 95 | + // Theme color |
105 | themeColor: string; | 96 | themeColor: string; |
97 | + | ||
106 | themeMode: ThemeMode; | 98 | themeMode: ThemeMode; |
107 | - // 全屏显示主界面,不显示菜单,及顶部 | 99 | + // The main interface is displayed in full screen, the menu is not displayed, and the top |
108 | fullContent: boolean; | 100 | fullContent: boolean; |
109 | - // 区域宽度 | 101 | + // content width |
110 | contentMode: ContentEnum; | 102 | contentMode: ContentEnum; |
111 | - // 是否显示logo | 103 | + // Whether to display the logo |
112 | showLogo: boolean; | 104 | showLogo: boolean; |
105 | + // Whether to show the global footer | ||
113 | showFooter: boolean; | 106 | showFooter: boolean; |
114 | - headerSetting: HeaderSetting; | ||
115 | - // 菜单类型 | ||
116 | // menuType: MenuTypeEnum; | 107 | // menuType: MenuTypeEnum; |
108 | + headerSetting: HeaderSetting; | ||
109 | + // menuSetting | ||
117 | menuSetting: MenuSetting; | 110 | menuSetting: MenuSetting; |
118 | - | ||
119 | - // 多标签页设置 | 111 | + // Multi-tab settings |
120 | multiTabsSetting: MultiTabsSetting; | 112 | multiTabsSetting: MultiTabsSetting; |
121 | - | 113 | + // Animation configuration |
122 | transitionSetting: TransitionSetting; | 114 | transitionSetting: TransitionSetting; |
123 | - | ||
124 | - // pageLayout是否开启keep-alive | 115 | + // pageLayout whether to enable keep-alive |
125 | openKeepAlive: boolean; | 116 | openKeepAlive: boolean; |
126 | - | ||
127 | - // | ||
128 | - // 锁屏时间 | 117 | + // Lock screen time |
129 | lockTime: number; | 118 | lockTime: number; |
130 | - // 显示面包屑 | 119 | + // Show breadcrumbs |
131 | showBreadCrumb: boolean; | 120 | showBreadCrumb: boolean; |
132 | - // 显示面包屑图标 | 121 | + // Show breadcrumb icon |
133 | showBreadCrumbIcon: boolean; | 122 | showBreadCrumbIcon: boolean; |
134 | - // 使用error-handler-plugin | 123 | + // Use error-handler-plugin |
135 | useErrorHandle: boolean; | 124 | useErrorHandle: boolean; |
136 | - // 是否开启回到顶部 | 125 | + // Whether to open back to top |
137 | useOpenBackTop: boolean; | 126 | useOpenBackTop: boolean; |
138 | - // 是否可以嵌入iframe页面 | 127 | + // Is it possible to embed iframe pages |
139 | canEmbedIFramePage: boolean; | 128 | canEmbedIFramePage: boolean; |
140 | - // 切换界面的时候是否删除未关闭的message及notify | 129 | + // Whether to delete unclosed messages and notify when switching the interface |
141 | closeMessageOnSwitch: boolean; | 130 | closeMessageOnSwitch: boolean; |
142 | - // 切换界面的时候是否取消已经发送但是未响应的http请求。 | 131 | + // Whether to cancel the http request that has been sent but not responded when switching the interface. |
143 | removeAllHttpPending: boolean; | 132 | removeAllHttpPending: boolean; |
144 | } | 133 | } |
145 | 134 | ||
146 | export interface GlobConfig { | 135 | export interface GlobConfig { |
147 | - // 网站标题 | 136 | + // Site title |
148 | title: string; | 137 | title: string; |
149 | - // 项目路径 | 138 | + // Service interface url |
150 | apiUrl: string; | 139 | apiUrl: string; |
140 | + // Upload url | ||
151 | uploadUrl?: string; | 141 | uploadUrl?: string; |
142 | + // Service interface url prefix | ||
152 | urlPrefix?: string; | 143 | urlPrefix?: string; |
144 | + // Project abbreviation | ||
153 | shortName: string; | 145 | shortName: string; |
154 | } | 146 | } |
155 | export interface GlobEnvConfig { | 147 | export interface GlobEnvConfig { |
156 | - // 网站标题 | 148 | + // Site title |
157 | VITE_GLOB_APP_TITLE: string; | 149 | VITE_GLOB_APP_TITLE: string; |
158 | - // 项目路径 | 150 | + // Service interface url |
159 | VITE_GLOB_API_URL: string; | 151 | VITE_GLOB_API_URL: string; |
152 | + // Service interface url prefix | ||
160 | VITE_GLOB_API_URL_PREFIX?: string; | 153 | VITE_GLOB_API_URL_PREFIX?: string; |
154 | + // Project abbreviation | ||
161 | VITE_GLOB_APP_SHORT_NAME: string; | 155 | VITE_GLOB_APP_SHORT_NAME: string; |
156 | + // Upload url | ||
162 | VITE_GLOB_UPLOAD_URL?: string; | 157 | VITE_GLOB_UPLOAD_URL?: string; |
163 | } | 158 | } |
164 | - | ||
165 | -interface GlobWrap { | ||
166 | - globSetting: Readonly<GlobConfig>; | ||
167 | -} | ||
168 | - | ||
169 | -interface ProjectSettingWrap { | ||
170 | - projectSetting: Readonly<ProjectConfig>; | ||
171 | -} |
src/utils/helper/persistent.ts renamed to src/utils/cache/persistent.ts
src/utils/domUtils.ts
@@ -16,9 +16,9 @@ export function getBoundingClientRect(element: Element): DOMRect | number { | @@ -16,9 +16,9 @@ export function getBoundingClientRect(element: Element): DOMRect | number { | ||
16 | return element.getBoundingClientRect(); | 16 | return element.getBoundingClientRect(); |
17 | } | 17 | } |
18 | 18 | ||
19 | -const trim = function (string: string) { | 19 | +function trim(string: string) { |
20 | return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, ''); | 20 | return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, ''); |
21 | -}; | 21 | +} |
22 | 22 | ||
23 | /* istanbul ignore next */ | 23 | /* istanbul ignore next */ |
24 | export function hasClass(el: Element, cls: string) { | 24 | export function hasClass(el: Element, cls: string) { |
src/utils/env.ts
1 | import type { GlobEnvConfig } from '/@/types/config'; | 1 | import type { GlobEnvConfig } from '/@/types/config'; |
2 | 2 | ||
3 | +import { useGlobSetting } from '/@/hooks/setting'; | ||
4 | +import pkg from '../../package.json'; | ||
5 | + | ||
3 | /** | 6 | /** |
4 | * Get the global configuration (the configuration will be extracted independently when packaging) | 7 | * Get the global configuration (the configuration will be extracted independently when packaging) |
5 | */ | 8 | */ |
@@ -8,6 +11,12 @@ export function getGlobEnvConfig(): GlobEnvConfig { | @@ -8,6 +11,12 @@ export function getGlobEnvConfig(): GlobEnvConfig { | ||
8 | return (env as unknown) as GlobEnvConfig; | 11 | return (env as unknown) as GlobEnvConfig; |
9 | } | 12 | } |
10 | 13 | ||
14 | +// Generate cache key according to version | ||
15 | +export function getStorageShortName() { | ||
16 | + const globSetting = useGlobSetting(); | ||
17 | + return `${globSetting.shortName}__${getEnv()}${`__${pkg.version}`}__`.toUpperCase(); | ||
18 | +} | ||
19 | + | ||
11 | /** | 20 | /** |
12 | * @description: Development model | 21 | * @description: Development model |
13 | */ | 22 | */ |
src/utils/index.ts
@@ -4,6 +4,7 @@ import { isObject } from '/@/utils/is'; | @@ -4,6 +4,7 @@ import { isObject } from '/@/utils/is'; | ||
4 | export const clamp = (n: number, min: number, max: number) => Math.min(max, Math.max(min, n)); | 4 | export const clamp = (n: number, min: number, max: number) => Math.min(max, Math.max(min, n)); |
5 | export const noop = () => {}; | 5 | export const noop = () => {}; |
6 | export const now = () => Date.now(); | 6 | export const now = () => Date.now(); |
7 | + | ||
7 | /** | 8 | /** |
8 | * @description: Set ui mount node | 9 | * @description: Set ui mount node |
9 | */ | 10 | */ |
src/utils/uuid.ts
@@ -20,7 +20,7 @@ export function buildUUID(): string { | @@ -20,7 +20,7 @@ export function buildUUID(): string { | ||
20 | } | 20 | } |
21 | 21 | ||
22 | let unique = 0; | 22 | let unique = 0; |
23 | -export function snowUuid(prefix = ''): string { | 23 | +export function shortUuid(prefix = ''): string { |
24 | const time = Date.now(); | 24 | const time = Date.now(); |
25 | const random = Math.floor(Math.random() * 1000000000); | 25 | const random = Math.floor(Math.random() * 1000000000); |
26 | unique++; | 26 | unique++; |
src/views/sys/lock/index.vue
@@ -4,13 +4,20 @@ | @@ -4,13 +4,20 @@ | ||
4 | </transition> | 4 | </transition> |
5 | </template> | 5 | </template> |
6 | <script lang="ts"> | 6 | <script lang="ts"> |
7 | - import { defineComponent } from 'vue'; | 7 | + import { defineComponent, computed } from 'vue'; |
8 | import LockPage from './LockPage.vue'; | 8 | import LockPage from './LockPage.vue'; |
9 | - import { getIsLock } from '/@/hooks/web/useLockPage'; | 9 | + |
10 | + import { lockStore } from '/@/store/modules/lock'; | ||
10 | export default defineComponent({ | 11 | export default defineComponent({ |
11 | name: 'Lock', | 12 | name: 'Lock', |
12 | components: { LockPage }, | 13 | components: { LockPage }, |
13 | setup() { | 14 | setup() { |
15 | + const getIsLock = computed(() => { | ||
16 | + const { getLockInfo } = lockStore; | ||
17 | + const { isLock } = getLockInfo; | ||
18 | + return isLock; | ||
19 | + }); | ||
20 | + | ||
14 | return { getIsLock }; | 21 | return { getIsLock }; |
15 | }, | 22 | }, |
16 | }); | 23 | }); |
stylelint.config.js
@@ -28,6 +28,7 @@ module.exports = { | @@ -28,6 +28,7 @@ module.exports = { | ||
28 | ignore: ['after-comment', 'first-nested'], | 28 | ignore: ['after-comment', 'first-nested'], |
29 | }, | 29 | }, |
30 | ], | 30 | ], |
31 | + 'unit-no-unknown': [true, { ignoreUnits: ['rpx'] }], | ||
31 | // Specify the alphabetical order of the attributes in the declaration block | 32 | // Specify the alphabetical order of the attributes in the declaration block |
32 | 'order/properties-order': [ | 33 | 'order/properties-order': [ |
33 | 'position', | 34 | 'position', |
@@ -178,4 +179,5 @@ module.exports = { | @@ -178,4 +179,5 @@ module.exports = { | ||
178 | 'speak', | 179 | 'speak', |
179 | ], | 180 | ], |
180 | }, | 181 | }, |
182 | + ignoreFiles: ['**/*.js', '**/*.jsx', '**/*.tsx', '**/*.ts'], | ||
181 | }; | 183 | }; |
yarn.lock
@@ -1118,48 +1118,48 @@ | @@ -1118,48 +1118,48 @@ | ||
1118 | dependencies: | 1118 | dependencies: |
1119 | cross-fetch "^3.0.6" | 1119 | cross-fetch "^3.0.6" |
1120 | 1120 | ||
1121 | -"@iconify/json@^1.1.307": | ||
1122 | - version "1.1.307" | ||
1123 | - resolved "https://registry.npmjs.org/@iconify/json/-/json-1.1.307.tgz#db97e8faba1183e0411471dafe210deba0cc1fe2" | ||
1124 | - integrity sha512-2hyKd4DKGWNtQ9CNC4s7tRzMHyDai3GnARC26nGZo7f4/r86FTspvjCEbqpbuM5spJ1fn5jx00Iv4Qee89ooRA== | ||
1125 | - | ||
1126 | -"@intlify/core-base@9.0.0-rc.7": | ||
1127 | - version "9.0.0-rc.7" | ||
1128 | - resolved "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.0.0-rc.7.tgz#664e58d0c24465d19fb84d65be2bc4c4735c2b4e" | ||
1129 | - integrity sha512-jYF6kQpSCeBXprZRcggGV/YQAwqXRWo2MtcdkPfZf0cP26Yx12UeFF0Uk5W5M/cgts3ktkhF/CzvxtXP1mevlQ== | ||
1130 | - dependencies: | ||
1131 | - "@intlify/message-compiler" "9.0.0-rc.7" | ||
1132 | - "@intlify/message-resolver" "9.0.0-rc.7" | ||
1133 | - "@intlify/runtime" "9.0.0-rc.7" | ||
1134 | - "@intlify/shared" "9.0.0-rc.7" | ||
1135 | - | ||
1136 | -"@intlify/message-compiler@9.0.0-rc.7": | ||
1137 | - version "9.0.0-rc.7" | ||
1138 | - resolved "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.0.0-rc.7.tgz#383459a96220536ad675b77fef2d3f3f652d5647" | ||
1139 | - integrity sha512-T8cPzSkNV0KHtLokQW8hBHMlqYcpknJy8JygwA4R6guiO2G9eyUdZ+rswDq5vrGfSIUglgHYusoIvOhFyQpkpQ== | ||
1140 | - dependencies: | ||
1141 | - "@intlify/message-resolver" "9.0.0-rc.7" | ||
1142 | - "@intlify/shared" "9.0.0-rc.7" | 1121 | +"@iconify/json@^1.1.308": |
1122 | + version "1.1.308" | ||
1123 | + resolved "https://registry.npmjs.org/@iconify/json/-/json-1.1.308.tgz#162210182c14af4eb217f19e1a1707b787aca2aa" | ||
1124 | + integrity sha512-zoVnvr5A1tpuTCzuw5EvRcWYV5rcmWLGLhEzg9+SuRAXWyT2st0ShF8hYbeHzm+MJHhJWodHVfsTu2DkshMX2g== | ||
1125 | + | ||
1126 | +"@intlify/core-base@9.0.0-rc.8": | ||
1127 | + version "9.0.0-rc.8" | ||
1128 | + resolved "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.0.0-rc.8.tgz#674b88c313cbe471bb66f52dd0907106b01e1c38" | ||
1129 | + integrity sha512-Nwj2GTZN7gOiN7uGgAeaaJAho/UamkXTheMrdjLrj7FPjE3d1oiSeB3fBgobJxzpyBRjhmjUmpPCEs1afokSxQ== | ||
1130 | + dependencies: | ||
1131 | + "@intlify/message-compiler" "9.0.0-rc.8" | ||
1132 | + "@intlify/message-resolver" "9.0.0-rc.8" | ||
1133 | + "@intlify/runtime" "9.0.0-rc.8" | ||
1134 | + "@intlify/shared" "9.0.0-rc.8" | ||
1135 | + | ||
1136 | +"@intlify/message-compiler@9.0.0-rc.8": | ||
1137 | + version "9.0.0-rc.8" | ||
1138 | + resolved "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.0.0-rc.8.tgz#b2c291b728858aa6fa57b6329a806c1accc8450b" | ||
1139 | + integrity sha512-vtKk5z7ovenLUXMGHVUyS+snEYrTpHT4o6bQyjPeEL3BoXcVyHlLKIHXNJ6QzlHVQN8aN1bWyj3rMf9ZKEZF3A== | ||
1140 | + dependencies: | ||
1141 | + "@intlify/message-resolver" "9.0.0-rc.8" | ||
1142 | + "@intlify/shared" "9.0.0-rc.8" | ||
1143 | source-map "0.6.1" | 1143 | source-map "0.6.1" |
1144 | 1144 | ||
1145 | -"@intlify/message-resolver@9.0.0-rc.7": | ||
1146 | - version "9.0.0-rc.7" | ||
1147 | - resolved "https://registry.npmjs.org/@intlify/message-resolver/-/message-resolver-9.0.0-rc.7.tgz#f41a552c7dd1c85f7042478bf264b0459c376376" | ||
1148 | - integrity sha512-d0Jz0OWiH7jYTDk4VzTnVroJ2eylQUgVIk+2ztNJAHsrKoy3wxq6Tw/GlIGOrVJCFqZLWuxg7dmuhZDd4fliTw== | 1145 | +"@intlify/message-resolver@9.0.0-rc.8": |
1146 | + version "9.0.0-rc.8" | ||
1147 | + resolved "https://registry.npmjs.org/@intlify/message-resolver/-/message-resolver-9.0.0-rc.8.tgz#09382e6390298d6786cc53c483d4240e4654ec17" | ||
1148 | + integrity sha512-8Qqh23yN3sM/hIZKIgJ1S6a9mNm1LVeUxkjhHdfyGV84P6G3Q9bgwCSenX1BKuUrVUJfK45FUkg87BZnUd2Qpg== | ||
1149 | 1149 | ||
1150 | -"@intlify/runtime@9.0.0-rc.7": | ||
1151 | - version "9.0.0-rc.7" | ||
1152 | - resolved "https://registry.npmjs.org/@intlify/runtime/-/runtime-9.0.0-rc.7.tgz#81ed1602447c387476aeaf6eea7ff0608768f67e" | ||
1153 | - integrity sha512-SdM9Gqca4W+u/O6XHqDf38UwoiopbyRtUnnqWy5DGihbE1CTKlFZSGPMx95cLOVt0AIeVK/eRwclxLiRtQRM7A== | 1150 | +"@intlify/runtime@9.0.0-rc.8": |
1151 | + version "9.0.0-rc.8" | ||
1152 | + resolved "https://registry.npmjs.org/@intlify/runtime/-/runtime-9.0.0-rc.8.tgz#be5d1c776bba2678b51c3c0492d4676a910921ca" | ||
1153 | + integrity sha512-ZK0eZwZQ6wb3nxUPc+WYSebnswSSt/lRJotmaVdcmS+tT9/FFz6PJ9pO0nNFV/cGn0uEGW92buldCiNVKA5aHg== | ||
1154 | dependencies: | 1154 | dependencies: |
1155 | - "@intlify/message-compiler" "9.0.0-rc.7" | ||
1156 | - "@intlify/message-resolver" "9.0.0-rc.7" | ||
1157 | - "@intlify/shared" "9.0.0-rc.7" | 1155 | + "@intlify/message-compiler" "9.0.0-rc.8" |
1156 | + "@intlify/message-resolver" "9.0.0-rc.8" | ||
1157 | + "@intlify/shared" "9.0.0-rc.8" | ||
1158 | 1158 | ||
1159 | -"@intlify/shared@9.0.0-rc.7": | ||
1160 | - version "9.0.0-rc.7" | ||
1161 | - resolved "https://registry.npmjs.org/@intlify/shared/-/shared-9.0.0-rc.7.tgz#4bab9e58bbb09bc690fd953d1e83d9026e3a3893" | ||
1162 | - integrity sha512-ynMHCCcBPtQAdJlOUMzrlvUp+DdKlnB0yrkPPMzAs8bBETwJbAK1Jq6zBHlMZzscPcF+1ia5pj4Gmmn7QL9b8w== | 1159 | +"@intlify/shared@9.0.0-rc.8": |
1160 | + version "9.0.0-rc.8" | ||
1161 | + resolved "https://registry.npmjs.org/@intlify/shared/-/shared-9.0.0-rc.8.tgz#0b1b387a3237d4ae95496e8ae60cec267625f55d" | ||
1162 | + integrity sha512-HH05+lD4A9q6F0VLbGY5eZmmCbfaBMuCSSQXmrGgegtsRVu7WFiUMQLNsouN1UtHabOJC9PQarxKwfTzdHyN6Q== | ||
1163 | 1163 | ||
1164 | "@ls-lint/ls-lint@^1.9.2": | 1164 | "@ls-lint/ls-lint@^1.9.2": |
1165 | version "1.9.2" | 1165 | version "1.9.2" |
@@ -1626,17 +1626,6 @@ | @@ -1626,17 +1626,6 @@ | ||
1626 | estree-walker "^2.0.1" | 1626 | estree-walker "^2.0.1" |
1627 | source-map "^0.6.1" | 1627 | source-map "^0.6.1" |
1628 | 1628 | ||
1629 | -"@vue/compiler-core@3.0.6": | ||
1630 | - version "3.0.6" | ||
1631 | - resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.6.tgz#265bbe0711a81ab4c1344f8294e22e2d08ca167d" | ||
1632 | - integrity sha512-O7QzQ39DskOoPpEDWRvKwDX7Py9UNT7SvLHvBdIfckGA3OsAEBdiAtuYQNcVmUDeBajm+08v5wyvHWBbWgkilQ== | ||
1633 | - dependencies: | ||
1634 | - "@babel/parser" "^7.12.0" | ||
1635 | - "@babel/types" "^7.12.0" | ||
1636 | - "@vue/shared" "3.0.6" | ||
1637 | - estree-walker "^2.0.1" | ||
1638 | - source-map "^0.6.1" | ||
1639 | - | ||
1640 | "@vue/compiler-dom@3.0.5": | 1629 | "@vue/compiler-dom@3.0.5": |
1641 | version "3.0.5" | 1630 | version "3.0.5" |
1642 | resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.5.tgz#7885a13e6d18f64dde8ebceec052ed2c102696c2" | 1631 | resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.5.tgz#7885a13e6d18f64dde8ebceec052ed2c102696c2" |
@@ -1645,43 +1634,35 @@ | @@ -1645,43 +1634,35 @@ | ||
1645 | "@vue/compiler-core" "3.0.5" | 1634 | "@vue/compiler-core" "3.0.5" |
1646 | "@vue/shared" "3.0.5" | 1635 | "@vue/shared" "3.0.5" |
1647 | 1636 | ||
1648 | -"@vue/compiler-dom@3.0.6": | ||
1649 | - version "3.0.6" | ||
1650 | - resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.6.tgz#f94c3959320a1252915bd02b943f96a7ee3fc951" | ||
1651 | - integrity sha512-q1wfHzYwvDRAhBlx+Qa+n3Bu5nHr1qL/j0UbpNlbQDwIlt9zpvmXUrUCL+i55Bh5lLKvSe+mNo0qlwNEApm+jA== | ||
1652 | - dependencies: | ||
1653 | - "@vue/compiler-core" "3.0.6" | ||
1654 | - "@vue/shared" "3.0.6" | ||
1655 | - | ||
1656 | -"@vue/compiler-sfc@^3.0.6": | ||
1657 | - version "3.0.6" | ||
1658 | - resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.6.tgz#3945f73a93d52868799f1e332a75bb8849976ac9" | ||
1659 | - integrity sha512-g1tkswnhtiJpj4ELQ3SzeGxtOd0t8E5GkT+n2VlElEnTI1BzueSvr41D5QthnUS+TNWZd52ZnPtdaNz+Lfum1w== | 1637 | +"@vue/compiler-sfc@3.0.5": |
1638 | + version "3.0.5" | ||
1639 | + resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.5.tgz#3ae08e60244a72faf9598361874fb7bdb5b1d37c" | ||
1640 | + integrity sha512-uOAC4X0Gx3SQ9YvDC7YMpbDvoCmPvP0afVhJoxRotDdJ+r8VO3q4hFf/2f7U62k4Vkdftp6DVni8QixrfYzs+w== | ||
1660 | dependencies: | 1641 | dependencies: |
1661 | "@babel/parser" "^7.12.0" | 1642 | "@babel/parser" "^7.12.0" |
1662 | "@babel/types" "^7.12.0" | 1643 | "@babel/types" "^7.12.0" |
1663 | - "@vue/compiler-core" "3.0.6" | ||
1664 | - "@vue/compiler-dom" "3.0.6" | ||
1665 | - "@vue/compiler-ssr" "3.0.6" | ||
1666 | - "@vue/shared" "3.0.6" | 1644 | + "@vue/compiler-core" "3.0.5" |
1645 | + "@vue/compiler-dom" "3.0.5" | ||
1646 | + "@vue/compiler-ssr" "3.0.5" | ||
1647 | + "@vue/shared" "3.0.5" | ||
1667 | consolidate "^0.16.0" | 1648 | consolidate "^0.16.0" |
1668 | estree-walker "^2.0.1" | 1649 | estree-walker "^2.0.1" |
1669 | hash-sum "^2.0.0" | 1650 | hash-sum "^2.0.0" |
1670 | lru-cache "^5.1.1" | 1651 | lru-cache "^5.1.1" |
1671 | magic-string "^0.25.7" | 1652 | magic-string "^0.25.7" |
1672 | merge-source-map "^1.1.0" | 1653 | merge-source-map "^1.1.0" |
1673 | - postcss "^8.1.10" | ||
1674 | - postcss-modules "^4.0.0" | 1654 | + postcss "^7.0.32" |
1655 | + postcss-modules "^3.2.2" | ||
1675 | postcss-selector-parser "^6.0.4" | 1656 | postcss-selector-parser "^6.0.4" |
1676 | source-map "^0.6.1" | 1657 | source-map "^0.6.1" |
1677 | 1658 | ||
1678 | -"@vue/compiler-ssr@3.0.6": | ||
1679 | - version "3.0.6" | ||
1680 | - resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.6.tgz#7156361e4c465cbee2723275edc61e940678e47c" | ||
1681 | - integrity sha512-Y4amPwRevUiiNQDho0cq1Ith9q6UU5N6CD6YiXkHIboFPeXEiGvH3ULJWjFzlGqn1eUV1AReNJpFJrhjtQNc7g== | 1659 | +"@vue/compiler-ssr@3.0.5": |
1660 | + version "3.0.5" | ||
1661 | + resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.5.tgz#7661ad891a0be948726c7f7ad1e425253c587b83" | ||
1662 | + integrity sha512-Wm//Kuxa1DpgjE4P9W0coZr8wklOfJ35Jtq61CbU+t601CpPTK4+FL2QDBItaG7aoUUDCWL5nnxMkuaOgzTBKg== | ||
1682 | dependencies: | 1663 | dependencies: |
1683 | - "@vue/compiler-dom" "3.0.6" | ||
1684 | - "@vue/shared" "3.0.6" | 1664 | + "@vue/compiler-dom" "3.0.5" |
1665 | + "@vue/shared" "3.0.5" | ||
1685 | 1666 | ||
1686 | "@vue/devtools-api@^6.0.0-beta.5": | 1667 | "@vue/devtools-api@^6.0.0-beta.5": |
1687 | version "6.0.0-beta.7" | 1668 | version "6.0.0-beta.7" |
@@ -1695,13 +1676,6 @@ | @@ -1695,13 +1676,6 @@ | ||
1695 | dependencies: | 1676 | dependencies: |
1696 | "@vue/shared" "3.0.5" | 1677 | "@vue/shared" "3.0.5" |
1697 | 1678 | ||
1698 | -"@vue/reactivity@3.0.6": | ||
1699 | - version "3.0.6" | ||
1700 | - resolved "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.0.6.tgz#7b16f3d5d04cc55028085fff0bb8475cc0e32991" | ||
1701 | - integrity sha512-hX8PnZayNMoljWSYrZW0OclQnRaMoHxvi5eeFVFPDr7+tzBeiftmmozKttxxCLoDxBWX1B4gNc237DIcYU63Lw== | ||
1702 | - dependencies: | ||
1703 | - "@vue/shared" "3.0.6" | ||
1704 | - | ||
1705 | "@vue/runtime-core@3.0.5": | 1679 | "@vue/runtime-core@3.0.5": |
1706 | version "3.0.5" | 1680 | version "3.0.5" |
1707 | resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.5.tgz#da6331d5f300d5794e9e0ebdc8a8bd72a9e19962" | 1681 | resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.5.tgz#da6331d5f300d5794e9e0ebdc8a8bd72a9e19962" |
@@ -1710,14 +1684,6 @@ | @@ -1710,14 +1684,6 @@ | ||
1710 | "@vue/reactivity" "3.0.5" | 1684 | "@vue/reactivity" "3.0.5" |
1711 | "@vue/shared" "3.0.5" | 1685 | "@vue/shared" "3.0.5" |
1712 | 1686 | ||
1713 | -"@vue/runtime-core@3.0.6": | ||
1714 | - version "3.0.6" | ||
1715 | - resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.6.tgz#d16779b5664593f1d25be677fb1b1968024aa532" | ||
1716 | - integrity sha512-x6N38P0DeMyrHiAxCE/rACHTyydOzlg8IyUIPkSJ4rrSkuJnAtFKQicK6fm8NuD21dwdPr8KcZ4Cn4xaqL1JJg== | ||
1717 | - dependencies: | ||
1718 | - "@vue/reactivity" "3.0.6" | ||
1719 | - "@vue/shared" "3.0.6" | ||
1720 | - | ||
1721 | "@vue/runtime-dom@3.0.5": | 1687 | "@vue/runtime-dom@3.0.5": |
1722 | version "3.0.5" | 1688 | version "3.0.5" |
1723 | resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.5.tgz#1ce2c9c449e26ab06963da0064096e882a7a8935" | 1689 | resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.5.tgz#1ce2c9c449e26ab06963da0064096e882a7a8935" |
@@ -1727,25 +1693,11 @@ | @@ -1727,25 +1693,11 @@ | ||
1727 | "@vue/shared" "3.0.5" | 1693 | "@vue/shared" "3.0.5" |
1728 | csstype "^2.6.8" | 1694 | csstype "^2.6.8" |
1729 | 1695 | ||
1730 | -"@vue/runtime-dom@3.0.6": | ||
1731 | - version "3.0.6" | ||
1732 | - resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.6.tgz#e7d6c61913d871f1f020a9a81b558c8fcbeba8c6" | ||
1733 | - integrity sha512-Y6y4Tak9//VXB2mp2NVQxbwC4a5xsnJpotpo8yBAB3qB3L4v4HQLpqxSkwThRwI6Y6Z7dydX/sgfraqLBE8BWg== | ||
1734 | - dependencies: | ||
1735 | - "@vue/runtime-core" "3.0.6" | ||
1736 | - "@vue/shared" "3.0.6" | ||
1737 | - csstype "^2.6.8" | ||
1738 | - | ||
1739 | "@vue/shared@3.0.5": | 1696 | "@vue/shared@3.0.5": |
1740 | version "3.0.5" | 1697 | version "3.0.5" |
1741 | resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.5.tgz#c131d88bd6713cc4d93b3bb1372edb1983225ff0" | 1698 | resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.5.tgz#c131d88bd6713cc4d93b3bb1372edb1983225ff0" |
1742 | integrity sha512-gYsNoGkWejBxNO6SNRjOh/xKeZ0H0V+TFzaPzODfBjkAIb0aQgBuixC1brandC/CDJy1wYPwSoYrXpvul7m6yw== | 1699 | integrity sha512-gYsNoGkWejBxNO6SNRjOh/xKeZ0H0V+TFzaPzODfBjkAIb0aQgBuixC1brandC/CDJy1wYPwSoYrXpvul7m6yw== |
1743 | 1700 | ||
1744 | -"@vue/shared@3.0.6": | ||
1745 | - version "3.0.6" | ||
1746 | - resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.6.tgz#d65576430fc4ad383dc7c829118798e5169178d4" | ||
1747 | - integrity sha512-c37C60HpelUZIx+SNZVEINSxkFzQYhIXFg5AynnIA4QDBmY4iSPoACfGSwSUTCTKImukPeCgY2oqRJVP3R1Mnw== | ||
1748 | - | ||
1749 | "@vueuse/core@^4.2.2": | 1701 | "@vueuse/core@^4.2.2": |
1750 | version "4.2.2" | 1702 | version "4.2.2" |
1751 | resolved "https://registry.npmjs.org/@vueuse/core/-/core-4.2.2.tgz#ecbba4ba05e0360e9c9079b32e149fac803a1020" | 1703 | resolved "https://registry.npmjs.org/@vueuse/core/-/core-4.2.2.tgz#ecbba4ba05e0360e9c9079b32e149fac803a1020" |
@@ -4865,10 +4817,12 @@ icss-replace-symbols@^1.1.0: | @@ -4865,10 +4817,12 @@ icss-replace-symbols@^1.1.0: | ||
4865 | resolved "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" | 4817 | resolved "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" |
4866 | integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= | 4818 | integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= |
4867 | 4819 | ||
4868 | -icss-utils@^5.0.0: | ||
4869 | - version "5.1.0" | ||
4870 | - resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" | ||
4871 | - integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== | 4820 | +icss-utils@^4.0.0, icss-utils@^4.1.1: |
4821 | + version "4.1.1" | ||
4822 | + resolved "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz#21170b53789ee27447c2f47dd683081403f9a467" | ||
4823 | + integrity sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA== | ||
4824 | + dependencies: | ||
4825 | + postcss "^7.0.14" | ||
4872 | 4826 | ||
4873 | ieee754@^1.1.13: | 4827 | ieee754@^1.1.13: |
4874 | version "1.2.1" | 4828 | version "1.2.1" |
@@ -6907,46 +6861,52 @@ postcss-media-query-parser@^0.2.3: | @@ -6907,46 +6861,52 @@ postcss-media-query-parser@^0.2.3: | ||
6907 | resolved "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" | 6861 | resolved "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" |
6908 | integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ= | 6862 | integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ= |
6909 | 6863 | ||
6910 | -postcss-modules-extract-imports@^3.0.0: | ||
6911 | - version "3.0.0" | ||
6912 | - resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" | ||
6913 | - integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== | 6864 | +postcss-modules-extract-imports@^2.0.0: |
6865 | + version "2.0.0" | ||
6866 | + resolved "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz#818719a1ae1da325f9832446b01136eeb493cd7e" | ||
6867 | + integrity sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ== | ||
6868 | + dependencies: | ||
6869 | + postcss "^7.0.5" | ||
6914 | 6870 | ||
6915 | -postcss-modules-local-by-default@^4.0.0: | ||
6916 | - version "4.0.0" | ||
6917 | - resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" | ||
6918 | - integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== | 6871 | +postcss-modules-local-by-default@^3.0.2: |
6872 | + version "3.0.3" | ||
6873 | + resolved "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz#bb14e0cc78279d504dbdcbfd7e0ca28993ffbbb0" | ||
6874 | + integrity sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw== | ||
6919 | dependencies: | 6875 | dependencies: |
6920 | - icss-utils "^5.0.0" | 6876 | + icss-utils "^4.1.1" |
6877 | + postcss "^7.0.32" | ||
6921 | postcss-selector-parser "^6.0.2" | 6878 | postcss-selector-parser "^6.0.2" |
6922 | postcss-value-parser "^4.1.0" | 6879 | postcss-value-parser "^4.1.0" |
6923 | 6880 | ||
6924 | -postcss-modules-scope@^3.0.0: | ||
6925 | - version "3.0.0" | ||
6926 | - resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" | ||
6927 | - integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== | 6881 | +postcss-modules-scope@^2.2.0: |
6882 | + version "2.2.0" | ||
6883 | + resolved "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz#385cae013cc7743f5a7d7602d1073a89eaae62ee" | ||
6884 | + integrity sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ== | ||
6928 | dependencies: | 6885 | dependencies: |
6929 | - postcss-selector-parser "^6.0.4" | 6886 | + postcss "^7.0.6" |
6887 | + postcss-selector-parser "^6.0.0" | ||
6930 | 6888 | ||
6931 | -postcss-modules-values@^4.0.0: | ||
6932 | - version "4.0.0" | ||
6933 | - resolved "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" | ||
6934 | - integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== | 6889 | +postcss-modules-values@^3.0.0: |
6890 | + version "3.0.0" | ||
6891 | + resolved "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz#5b5000d6ebae29b4255301b4a3a54574423e7f10" | ||
6892 | + integrity sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg== | ||
6935 | dependencies: | 6893 | dependencies: |
6936 | - icss-utils "^5.0.0" | 6894 | + icss-utils "^4.0.0" |
6895 | + postcss "^7.0.6" | ||
6937 | 6896 | ||
6938 | -postcss-modules@^4.0.0: | ||
6939 | - version "4.0.0" | ||
6940 | - resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-4.0.0.tgz#2bc7f276ab88f3f1b0fadf6cbd7772d43b5f3b9b" | ||
6941 | - integrity sha512-ghS/ovDzDqARm4Zj6L2ntadjyQMoyJmi0JkLlYtH2QFLrvNlxH5OAVRPWPeKilB0pY7SbuhO173KOWkPAxRJcw== | 6897 | +postcss-modules@^3.2.2: |
6898 | + version "3.2.2" | ||
6899 | + resolved "https://registry.npmjs.org/postcss-modules/-/postcss-modules-3.2.2.tgz#ee390de0f9f18e761e1778dfb9be26685c02c51f" | ||
6900 | + integrity sha512-JQ8IAqHELxC0N6tyCg2UF40pACY5oiL6UpiqqcIFRWqgDYO8B0jnxzoQ0EOpPrWXvcpu6BSbQU/3vSiq7w8Nhw== | ||
6942 | dependencies: | 6901 | dependencies: |
6943 | generic-names "^2.0.1" | 6902 | generic-names "^2.0.1" |
6944 | icss-replace-symbols "^1.1.0" | 6903 | icss-replace-symbols "^1.1.0" |
6945 | lodash.camelcase "^4.3.0" | 6904 | lodash.camelcase "^4.3.0" |
6946 | - postcss-modules-extract-imports "^3.0.0" | ||
6947 | - postcss-modules-local-by-default "^4.0.0" | ||
6948 | - postcss-modules-scope "^3.0.0" | ||
6949 | - postcss-modules-values "^4.0.0" | 6905 | + postcss "^7.0.32" |
6906 | + postcss-modules-extract-imports "^2.0.0" | ||
6907 | + postcss-modules-local-by-default "^3.0.2" | ||
6908 | + postcss-modules-scope "^2.2.0" | ||
6909 | + postcss-modules-values "^3.0.0" | ||
6950 | string-hash "^1.1.1" | 6910 | string-hash "^1.1.1" |
6951 | 6911 | ||
6952 | postcss-resolve-nested-selector@^0.1.1: | 6912 | postcss-resolve-nested-selector@^0.1.1: |
@@ -6976,7 +6936,7 @@ postcss-scss@^2.1.1: | @@ -6976,7 +6936,7 @@ postcss-scss@^2.1.1: | ||
6976 | dependencies: | 6936 | dependencies: |
6977 | postcss "^7.0.6" | 6937 | postcss "^7.0.6" |
6978 | 6938 | ||
6979 | -postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: | 6939 | +postcss-selector-parser@^6.0.0, postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: |
6980 | version "6.0.4" | 6940 | version "6.0.4" |
6981 | resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" | 6941 | resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" |
6982 | integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== | 6942 | integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== |
@@ -7004,7 +6964,7 @@ postcss-value-parser@^4.1.0: | @@ -7004,7 +6964,7 @@ postcss-value-parser@^4.1.0: | ||
7004 | resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" | 6964 | resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" |
7005 | integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== | 6965 | integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== |
7006 | 6966 | ||
7007 | -postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.31, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.6: | 6967 | +postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.31, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.5, postcss@^7.0.6: |
7008 | version "7.0.35" | 6968 | version "7.0.35" |
7009 | resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" | 6969 | resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24" |
7010 | integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== | 6970 | integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== |
@@ -7013,15 +6973,6 @@ postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0. | @@ -7013,15 +6973,6 @@ postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0. | ||
7013 | source-map "^0.6.1" | 6973 | source-map "^0.6.1" |
7014 | supports-color "^6.1.0" | 6974 | supports-color "^6.1.0" |
7015 | 6975 | ||
7016 | -postcss@^8.1.10: | ||
7017 | - version "8.2.6" | ||
7018 | - resolved "https://registry.npmjs.org/postcss/-/postcss-8.2.6.tgz#5d69a974543b45f87e464bc4c3e392a97d6be9fe" | ||
7019 | - integrity sha512-xpB8qYxgPuly166AGlpRjUdEYtmOWx2iCwGmrv4vqZL9YPVviDVPZPRXxnXr6xPZOdxQ9lp3ZBFCRgWJ7LE3Sg== | ||
7020 | - dependencies: | ||
7021 | - colorette "^1.2.1" | ||
7022 | - nanoid "^3.1.20" | ||
7023 | - source-map "^0.6.1" | ||
7024 | - | ||
7025 | postcss@^8.2.1: | 6976 | postcss@^8.2.1: |
7026 | version "8.2.4" | 6977 | version "8.2.4" |
7027 | resolved "https://registry.npmjs.org/postcss/-/postcss-8.2.4.tgz#20a98a39cf303d15129c2865a9ec37eda0031d04" | 6978 | resolved "https://registry.npmjs.org/postcss/-/postcss-8.2.4.tgz#20a98a39cf303d15129c2865a9ec37eda0031d04" |
@@ -9049,13 +9000,13 @@ vue-eslint-parser@^7.5.0: | @@ -9049,13 +9000,13 @@ vue-eslint-parser@^7.5.0: | ||
9049 | esquery "^1.4.0" | 9000 | esquery "^1.4.0" |
9050 | lodash "^4.17.15" | 9001 | lodash "^4.17.15" |
9051 | 9002 | ||
9052 | -vue-i18n@9.0.0-rc.7: | ||
9053 | - version "9.0.0-rc.7" | ||
9054 | - resolved "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.0.0-rc.7.tgz#4097dfaa0d66319bbcd9fe5fb22c4b72e97720b5" | ||
9055 | - integrity sha512-weNLPLqGiitziBUpGQHyxYlhuw447yR4EcsvmqUX3MocIKciv6OMHKxUguCFC1m1ZRCzHQwik7fz+Q8u4UmEdQ== | 9003 | +vue-i18n@9.0.0-rc.8: |
9004 | + version "9.0.0-rc.8" | ||
9005 | + resolved "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.0.0-rc.8.tgz#36d022516cf2527ce02eecf9de116b978e163da3" | ||
9006 | + integrity sha512-WQC9q0UG1lbk+naBBoVTrJjHPZfHP6Pid35Ek9AkCxUcXolW1pXUCQg1gIMF8I0obxLd/fSx9GuOWrB/aaU3aQ== | ||
9056 | dependencies: | 9007 | dependencies: |
9057 | - "@intlify/core-base" "9.0.0-rc.7" | ||
9058 | - "@intlify/shared" "9.0.0-rc.7" | 9008 | + "@intlify/core-base" "9.0.0-rc.8" |
9009 | + "@intlify/shared" "9.0.0-rc.8" | ||
9059 | "@vue/devtools-api" "^6.0.0-beta.5" | 9010 | "@vue/devtools-api" "^6.0.0-beta.5" |
9060 | 9011 | ||
9061 | vue-router@^4.0.4: | 9012 | vue-router@^4.0.4: |
@@ -9077,7 +9028,7 @@ vue-types@^3.0.2: | @@ -9077,7 +9028,7 @@ vue-types@^3.0.2: | ||
9077 | dependencies: | 9028 | dependencies: |
9078 | is-plain-object "3.0.1" | 9029 | is-plain-object "3.0.1" |
9079 | 9030 | ||
9080 | -vue@^3.0.0: | 9031 | +vue@3.0.5, vue@^3.0.0: |
9081 | version "3.0.5" | 9032 | version "3.0.5" |
9082 | resolved "https://registry.npmjs.org/vue/-/vue-3.0.5.tgz#de1b82eba24abfe71e0970fc9b8d4b2babdc3fe1" | 9033 | resolved "https://registry.npmjs.org/vue/-/vue-3.0.5.tgz#de1b82eba24abfe71e0970fc9b8d4b2babdc3fe1" |
9083 | integrity sha512-TfaprOmtsAfhQau7WsomXZ8d9op/dkQLNIq8qPV3A0Vxs6GR5E+c1rfJS1SDkXRQj+dFyfnec7+U0Be1huiScg== | 9034 | integrity sha512-TfaprOmtsAfhQau7WsomXZ8d9op/dkQLNIq8qPV3A0Vxs6GR5E+c1rfJS1SDkXRQj+dFyfnec7+U0Be1huiScg== |
@@ -9086,15 +9037,6 @@ vue@^3.0.0: | @@ -9086,15 +9037,6 @@ vue@^3.0.0: | ||
9086 | "@vue/runtime-dom" "3.0.5" | 9037 | "@vue/runtime-dom" "3.0.5" |
9087 | "@vue/shared" "3.0.5" | 9038 | "@vue/shared" "3.0.5" |
9088 | 9039 | ||
9089 | -vue@^3.0.6: | ||
9090 | - version "3.0.6" | ||
9091 | - resolved "https://registry.npmjs.org/vue/-/vue-3.0.6.tgz#2c16ed4bb66f16d6c6f6eaa3b7d5835a76598049" | ||
9092 | - integrity sha512-fgjbe/+f1EsqG7ZbaFSnxdzQXF2DKoFCdJlPxZZJy9XMtyXS6SY8pGzLi8WYb4zmsPLHvTZz4bHW30kFDk7vfA== | ||
9093 | - dependencies: | ||
9094 | - "@vue/compiler-dom" "3.0.6" | ||
9095 | - "@vue/runtime-dom" "3.0.6" | ||
9096 | - "@vue/shared" "3.0.6" | ||
9097 | - | ||
9098 | vuex-module-decorators@^1.0.1: | 9040 | vuex-module-decorators@^1.0.1: |
9099 | version "1.0.1" | 9041 | version "1.0.1" |
9100 | resolved "https://registry.npmjs.org/vuex-module-decorators/-/vuex-module-decorators-1.0.1.tgz#d34dafb5428a3636f1c26d3d014c15fc9659ccd0" | 9042 | resolved "https://registry.npmjs.org/vuex-module-decorators/-/vuex-module-decorators-1.0.1.tgz#d34dafb5428a3636f1c26d3d014c15fc9659ccd0" |