diff --git a/.env.development b/.env.development
index 1dfb16a4917..30f6b36256c 100644
--- a/.env.development
+++ b/.env.development
@@ -4,11 +4,14 @@ VITE_USE_MOCK = true
# public path
VITE_PUBLIC_PATH = /
+# Cross-domain proxy, you can configure multiple
+VITE_PROXY=[["/api","http://localhost:3000"]]
+
+# Delete console
+VITE_DROP_CONSOLE = false
+
# Basic interface address SPA
VITE_GLOB_API_URL=/api
# Interface prefix
VITE_GLOB_API_URL_PREFIX=
-
-# Cross-domain proxy, you can configure multiple
-VITE_PROXY=[["/api","http://localhost:3000"]]
diff --git a/.env.production b/.env.production
index d0a2a6b300a..5509f1bc719 100644
--- a/.env.production
+++ b/.env.production
@@ -4,12 +4,17 @@ VITE_USE_MOCK = true
# public path
VITE_PUBLIC_PATH = ./
+# Delete console
+VITE_DROP_CONSOLE = true
+
+# Delete console
+VITE_BUILD_GZIP = false
+
# Basic interface address SPA
VITE_GLOB_API_URL=/api
# Interface prefix
VITE_GLOB_API_URL_PREFIX=
-
# TODO use Cdn
VITE_USE_CDN = true
diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md
index 8a9d291cc93..8244526f0aa 100644
--- a/CHANGELOG.zh_CN.md
+++ b/CHANGELOG.zh_CN.md
@@ -1,3 +1,28 @@
+# wip
+
+### ✨ Features
+
+- 打包可以配置输出`gizp`
+- 打包可以配置删除`console`
+- 路由及菜单不需要在手动引入,改为自动引入
+
+### 🎫 Chores
+
+- 升级 vue 到`3.0.1`
+- 将`vite`版本改为每日构建版本
+
+### 🐛 Bug Fixes
+
+- 修复菜单报错
+- 修复表格自适应高度问题
+- 修复`window系统`执行 script 报错问题
+
+### ⚡ Performance Improvements
+
+- 删除菜单最小化背景
+- 阻止页面刷新重新渲染菜单
+- 其他一些细节优化
+
# 2.0.0-rc.1 (2020-10-14)
### ✨ Features
diff --git a/README.en-US.md b/README.en-US.md
index 0f487362d5f..539a0885aec 100644
--- a/README.en-US.md
+++ b/README.en-US.md
@@ -92,7 +92,6 @@ The documentation for 2.0 hasn't started yet, it will be provided later.
- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - Mock plugin base on vite
- [vue-i18n](https://github.com/intlify/vue-i18n-next) - Internationalization
- [lodash-es](https://github.com/lodash/lodash) - JavaScript utility library
-- [moment](https://github.com/moment/moment) - Time operation library
- [axios](https://github.com/axios/axios) - Http data interaction
- [TypeScript](https://www.typescriptlang.org/)
@@ -225,6 +224,7 @@ yarn clean:lib # Delete node_modules, supported window
- [x] Digital animation
- [x] First screen loading waiting animation
- [x] Extract the production environment profile
+- [x] Build Gzip
## Developing features
@@ -234,7 +234,6 @@ yarn clean:lib # Delete node_modules, supported window
- [ ] Global error handling
- [ ] Theme configuration
- [ ] Dark theme
-- [ ] Build Gzip
- [ ] Build CDN
- [ ] System performance optimization
@@ -246,6 +245,8 @@ It is recommended to use the `Chrome` browser for local development. Development
Support modern browsers, Not currently supported ie11,Follow-up consideration support ie11
-| [](http://godban.github.io/browsers-support-badges/)IE / Edge | [](http://godban.github.io/browsers-support-badges/)Firefox | [](http://godban.github.io/browsers-support-badges/)Chrome | [](http://godban.github.io/browsers-support-badges/)Safari |
-| :-: | :-: | :-: | :-: |
-| Not currently supported | last 2 versions | last 2 versions | last 2 versions |
+| [](http://godban.github.io/browsers-support-badges/)IE | [](http://godban.github.io/browsers-support-badges/)Edge | [](http://godban.github.io/browsers-support-badges/)Firefox | [](http://godban.github.io/browsers-support-badges/)Chrome | [](http://godban.github.io/browsers-support-badges/)Safari |
+| :-: | :-: | :-: | :-: | :-: |
+| not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
+
+More browsers can view [Can I Use Es Module](https://caniuse.com/?search=ES%20Module)
diff --git a/README.md b/README.md
index e193fb93242..22807eb2f8a 100644
--- a/README.md
+++ b/README.md
@@ -35,10 +35,6 @@
## 介绍
-该分支为 2.0 新分支,使用 vue3 进行开发。
-
-1.0 分支请切换到`master`分支。1.0 采用`vue2.6`+`vue-composition-api`+`vue-cli`开发
-
项目基于`ant-design-vue`,`typescript`,`vue3.0`,`vite`,`tsx`实现的 vue3 风格的后台管理系统,
## gitHub 地址
@@ -65,7 +61,7 @@
## 文档
-2.0 文档还没开始写。后续补上。
+2.0 文档很快完成,请耐心等待。
## 预安装
@@ -93,7 +89,6 @@
- [vite-plugin-mock](https://github.com/anncwb/vite-plugin-mock) - 基于 vite 的 mock 插件.
- [vue-i18n](https://github.com/intlify/vue-i18n-next) - 国际化
- [lodash-es](https://github.com/lodash/lodash) - JavaScript 实用程序库
-- [moment](https://github.com/moment/moment) - 时间操作库
- [axios](https://github.com/axios/axios) - Http 数据交互
- [TypeScript](https://www.typescriptlang.org/)
@@ -227,6 +222,7 @@ yarn clean:lib # 删除node_modules,兼容window系统
- [x] 数字动画
- [x] 首屏加载等待动画
- [x] 抽取生产环境配置文件
+- [x] 打包 Gzip
## 正在开发的功能
@@ -236,7 +232,6 @@ yarn clean:lib # 删除node_modules,兼容window系统
- [ ] 全局错误处理
- [ ] 主题配置
- [ ] 黑暗主题
-- [ ] 打包 Gzip
- [ ] 打包 CDN
- [ ] 系统性能优化
@@ -248,9 +243,11 @@ yarn clean:lib # 删除node_modules,兼容window系统
支持现代浏览器, IE 暂不支持,后续考虑支持 ie11
-| [](http://godban.github.io/browsers-support-badges/)IE / Edge | [](http://godban.github.io/browsers-support-badges/)Firefox | [](http://godban.github.io/browsers-support-badges/)Chrome | [](http://godban.github.io/browsers-support-badges/)Safari |
-| :-: | :-: | :-: | :-: |
-| not support | last 2 versions | last 2 versions | last 2 versions |
+| [](http://godban.github.io/browsers-support-badges/)IE | [](http://godban.github.io/browsers-support-badges/)Edge | [](http://godban.github.io/browsers-support-badges/)Firefox | [](http://godban.github.io/browsers-support-badges/)Chrome | [](http://godban.github.io/browsers-support-badges/)Safari |
+| :-: | :-: | :-: | :-: | :-: |
+| not support | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
+
+更多浏览器可以查看 [Can I Use Es Module](https://caniuse.com/?search=ES%20Module)
## 加入我们
diff --git a/build/gzip/index.ts b/build/gzip/index.ts
deleted file mode 100644
index 79a81bc7ead..00000000000
--- a/build/gzip/index.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-// Build gzip after packaging
-// import { readFile, writeFile } from 'fs';
-import viteConfig from '../../vite.config';
-import {
- // basename,
- join,
-} from 'path';
-// import { promisify } from 'util';
-// import { gzip, ZlibOptions } from 'zlib';
-import { readAllFile } from '../utils';
-
-// const readFilePromise = promisify(readFile);
-// const writeFilePromise = promisify(writeFile);
-
-// function createGzip() {}
-
-const FILE_REG = /\.(js|mjs|json|css|html)$/;
-
-const OUT_DIR = viteConfig.outDir || 'dist';
-
-// TODO 待开发
-const files = readAllFile(join(process.cwd(), OUT_DIR), FILE_REG);
diff --git a/build/plugin/gzip/compress.ts b/build/plugin/gzip/compress.ts
new file mode 100644
index 00000000000..a9d64bc5b76
--- /dev/null
+++ b/build/plugin/gzip/compress.ts
@@ -0,0 +1,36 @@
+import { gzip } from 'zlib';
+import { readFileSync, writeFileSync } from 'fs';
+import { GzipPluginOptions } from './types';
+import viteConfig from '../../vite.config';
+import { readAllFile, getCwdPath, isBuildGzip, isSiteMode } from '../utils';
+
+export function startGzip(
+ fileContent: string | Buffer,
+ options: GzipPluginOptions = {}
+): Promise {
+ return new Promise((resolve, reject) => {
+ gzip(fileContent, options.gzipOptions || {}, (err, result) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(result);
+ }
+ });
+ });
+}
+
+// 手动压缩css
+export async function startGzipStyle() {
+ if (isBuildGzip() || isSiteMode()) {
+ const outDir = viteConfig.outDir || 'dist';
+ const assets = viteConfig.assetsDir || '_assets';
+ const allCssFile = readAllFile(getCwdPath(outDir, assets), /\.(css)$/);
+ for (const path of allCssFile) {
+ const source = readFileSync(path);
+ const content = await startGzip(source);
+ const ds = path.split('/');
+ const fileName = ds[ds.length - 1];
+ writeFileSync(getCwdPath(outDir, assets, `${fileName}.gz`), content);
+ }
+ }
+}
diff --git a/build/plugin/gzip/index.ts b/build/plugin/gzip/index.ts
new file mode 100644
index 00000000000..481aad9bb72
--- /dev/null
+++ b/build/plugin/gzip/index.ts
@@ -0,0 +1,195 @@
+// 修改自https://github.com/kryops/rollup-plugin-gzip
+// 因为rollup-plugin-gzip不支持vite
+// vite对css打包独立的。所以不能在打包的时候顺带打包css
+
+import { readFile, writeFile } from 'fs';
+import { basename } from 'path';
+import { promisify } from 'util';
+import { gzip } from 'zlib';
+
+import { OutputAsset, OutputChunk, OutputOptions, Plugin } from 'rollup';
+import { GzipPluginOptions } from './types';
+
+const isFunction = (arg: unknown): arg is (...args: any[]) => any => typeof arg === 'function';
+const isRegExp = (arg: unknown): arg is RegExp =>
+ Object.prototype.toString.call(arg) === '[object RegExp]';
+
+export type StringMappingOption = (originalString: string) => string;
+export type CustomCompressionOption = (
+ content: string | Buffer
+) => string | Buffer | Promise;
+
+const readFilePromise = promisify(readFile);
+const writeFilePromise = promisify(writeFile);
+
+// functionality partially copied from rollup
+
+/**
+ * copied from https://github.com/rollup/rollup/blob/master/src/rollup/index.ts#L450
+ */
+function isOutputChunk(file: OutputAsset | OutputChunk): file is OutputChunk {
+ return typeof (file as OutputChunk).code === 'string';
+}
+
+/**
+ * Gets the string/buffer content from a file object.
+ * Important for adding source map comments
+ *
+ * Copied partially from rollup.writeOutputFile
+ * https://github.com/rollup/rollup/blob/master/src/rollup/index.ts#L454
+ */
+function getOutputFileContent(
+ outputFileName: string,
+ outputFile: OutputAsset | OutputChunk,
+ outputOptions: OutputOptions
+): string | Buffer {
+ if (isOutputChunk(outputFile)) {
+ let source: string | Buffer;
+ source = outputFile.code;
+ if (outputOptions.sourcemap && outputFile.map) {
+ const url =
+ outputOptions.sourcemap === 'inline'
+ ? outputFile.map.toUrl()
+ : `${basename(outputFileName)}.map`;
+
+ // https://github.com/rollup/rollup/blob/master/src/utils/sourceMappingURL.ts#L1
+ source += `//# source` + `MappingURL=${url}\n`;
+ }
+ return source;
+ } else {
+ return typeof outputFile.source === 'string'
+ ? outputFile.source
+ : // just to be sure, as it is typed string | Uint8Array in rollup 2.0.0
+ Buffer.from(outputFile.source);
+ }
+}
+
+// actual plugin code
+
+function gzipPlugin(options: GzipPluginOptions = {}): Plugin {
+ // check for old options
+ if ('algorithm' in options) {
+ console.warn(
+ '[rollup-plugin-gzip] The "algorithm" option is not supported any more! ' +
+ 'Use "customCompression" instead to specify a different compression algorithm.'
+ );
+ }
+ if ('options' in options) {
+ console.warn('[rollup-plugin-gzip] The "options" option was renamed to "gzipOptions"!');
+ }
+ if ('additional' in options) {
+ console.warn('[rollup-plugin-gzip] The "additional" option was renamed to "additionalFiles"!');
+ }
+ if ('delay' in options) {
+ console.warn('[rollup-plugin-gzip] The "delay" option was renamed to "additionalFilesDelay"!');
+ }
+
+ const compressGzip: CustomCompressionOption = (fileContent) => {
+ return new Promise((resolve, reject) => {
+ gzip(fileContent, options.gzipOptions || {}, (err, result) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(result);
+ }
+ });
+ });
+ };
+
+ const doCompress = options.customCompression || compressGzip;
+
+ const mapFileName: StringMappingOption = isFunction(options.fileName)
+ ? (options.fileName as StringMappingOption)
+ : (fileName: string) => fileName + (options.fileName || '.gz');
+
+ const plugin: Plugin = {
+ name: 'gzip',
+
+ generateBundle(outputOptions, bundle) {
+ return Promise.all(
+ Object.keys(bundle)
+ .map((fileName) => {
+ const fileEntry = bundle[fileName];
+
+ // file name filter option check
+
+ const fileNameFilter = options.filter || /\.(js|mjs|json|css|html)$/;
+
+ if (isRegExp(fileNameFilter) && !fileName.match(fileNameFilter)) {
+ return Promise.resolve();
+ }
+
+ if (
+ isFunction(fileNameFilter) &&
+ !(fileNameFilter as (x: string) => boolean)(fileName)
+ ) {
+ return Promise.resolve();
+ }
+
+ const fileContent = getOutputFileContent(fileName, fileEntry, outputOptions);
+
+ // minSize option check
+ if (options.minSize && options.minSize > fileContent.length) {
+ return Promise.resolve();
+ }
+
+ return Promise.resolve(doCompress(fileContent))
+ .then((compressedContent) => {
+ const compressedFileName = mapFileName(fileName);
+ bundle[compressedFileName] = {
+ type: 'asset', // Rollup >= 1.21
+ name: compressedFileName,
+ fileName: compressedFileName,
+ isAsset: true, // Rollup < 1.21
+ source: compressedContent,
+ };
+ })
+ .catch((err: any) => {
+ console.error(err);
+ return Promise.reject('[rollup-plugin-gzip] Error compressing file ' + fileName);
+ });
+ })
+ .concat([
+ (() => {
+ if (!options.additionalFiles || !options.additionalFiles.length)
+ return Promise.resolve();
+
+ const compressAdditionalFiles = () =>
+ Promise.all(
+ options.additionalFiles!.map((filePath) =>
+ readFilePromise(filePath)
+ .then((fileContent) => doCompress(fileContent))
+ .then((compressedContent) => {
+ return writeFilePromise(mapFileName(filePath), compressedContent);
+ })
+ .catch(() => {
+ return Promise.reject(
+ '[rollup-plugin-gzip] Error compressing additional file ' +
+ filePath +
+ '. Please check the spelling of your configured additionalFiles. ' +
+ 'You might also have to increase the value of the additionalFilesDelay option.'
+ );
+ })
+ )
+ ) as Promise;
+
+ // additional files can be processed outside of rollup after a delay
+ // for older plugins or plugins that write to disk (curcumventing rollup) without awaiting
+ const additionalFilesDelay = options.additionalFilesDelay || 0;
+
+ if (additionalFilesDelay) {
+ setTimeout(compressAdditionalFiles, additionalFilesDelay);
+ return Promise.resolve();
+ } else {
+ return compressAdditionalFiles();
+ }
+ })(),
+ ])
+ ) as Promise;
+ },
+ };
+
+ return plugin;
+}
+
+export default gzipPlugin;
diff --git a/build/gzip/types.ts b/build/plugin/gzip/types.ts
similarity index 100%
rename from build/gzip/types.ts
rename to build/plugin/gzip/types.ts
diff --git a/build/plugin/vite-plugin-context-plugin/transform.ts b/build/plugin/vite-plugin-context-plugin/transform.ts
index 5ef211b3342..84aa8f23de0 100644
--- a/build/plugin/vite-plugin-context-plugin/transform.ts
+++ b/build/plugin/vite-plugin-context-plugin/transform.ts
@@ -49,8 +49,9 @@ const globbyTransform = function (config: SharedConfig): Transform {
let result = cache.get(path);
if (!result) {
const reg = /import\s+([\w\s{}*]+)\s+from\s+(['"])globby(\?path)?!([^'"]+)\2/g;
- const lastImport = urlMap.get(path);
const match = code.match(reg);
+ if (!match) return code;
+ const lastImport = urlMap.get(path);
if (lastImport && match) {
code = code.replace(lastImport, match[0]);
}
diff --git a/build/script/build.ts b/build/script/build.ts
index 9b1a2827562..dcc4a3da06a 100644
--- a/build/script/build.ts
+++ b/build/script/build.ts
@@ -6,6 +6,7 @@ import { argv } from 'yargs';
import { runBuildConfig } from './buildConf';
import { runUpdateHtml } from './updateHtml';
import { errorConsole, successConsole } from '../utils';
+import { startGzipStyle } from '../plugin/gzip/compress';
export const runBuild = async () => {
try {
@@ -22,6 +23,7 @@ export const runBuild = async () => {
await runBuildConfig();
}
await runUpdateHtml();
+ await startGzipStyle();
successConsole('Vite Build successfully!');
} catch (error) {
errorConsole('Vite Build Error\n' + error);
diff --git a/build/script/preview.ts b/build/script/preview.ts
index 2ca2ca53384..ff52143d310 100644
--- a/build/script/preview.ts
+++ b/build/script/preview.ts
@@ -1,12 +1,12 @@
import chalk from 'chalk';
import Koa from 'koa';
import inquirer from 'inquirer';
-import { sh } from 'tasksfile';
import staticServer from 'koa-static';
import portfinder from 'portfinder';
import { resolve } from 'path';
import viteConfig from '../../vite.config';
import { getIPAddress } from '../utils';
+import { runBuild } from './build';
const BUILD = 1;
const NO_BUILD = 2;
@@ -53,10 +53,7 @@ export const runPreview = async () => {
});
const { type } = await prompt;
if (type === BUILD) {
- await sh('npm run build', {
- async: true,
- nopipe: true,
- });
+ runBuild();
}
startApp();
};
diff --git a/build/utils.ts b/build/utils.ts
index d6902230603..f3da70dff9a 100644
--- a/build/utils.ts
+++ b/build/utils.ts
@@ -70,6 +70,12 @@ export function isProdFn(): boolean {
export function isReportMode(): boolean {
return process.env.REPORT === 'true';
}
+export function isBuildGzip(): boolean {
+ return process.env.VITE_BUILD_GZIP === 'true';
+}
+export function isSiteMode(): boolean {
+ return process.env.SITE === 'true';
+}
export interface ViteEnv {
VITE_PORT: number;
@@ -78,6 +84,8 @@ export interface ViteEnv {
VITE_PROXY: [string, string][];
VITE_GLOB_APP_TITLE: string;
VITE_USE_CDN: boolean;
+ VITE_DROP_CONSOLE: boolean;
+ VITE_BUILD_GZIP: boolean;
}
export function loadEnv(): ViteEnv {
diff --git a/package.json b/package.json
index 3254befdbf4..884aa2bf733 100644
--- a/package.json
+++ b/package.json
@@ -91,7 +91,7 @@
"tasksfile": "^5.1.1",
"ts-node": "^9.0.0",
"typescript": "^4.0.3",
- "vite": "^1.0.0-rc.4",
+ "vite": "npm:@knightly/vite",
"vite-plugin-mock": "^1.0.2",
"vite-plugin-purge-icons": "^0.4.4",
"vue-eslint-parser": "^7.1.1",
diff --git a/src/components/Menu/src/BasicMenu.tsx b/src/components/Menu/src/BasicMenu.tsx
index 217f1455928..e656da46acb 100644
--- a/src/components/Menu/src/BasicMenu.tsx
+++ b/src/components/Menu/src/BasicMenu.tsx
@@ -91,7 +91,7 @@ export default defineComponent({
});
watch(
- () => currentRoute.value.path,
+ () => currentRoute.value.name,
(name: string) => {
name !== 'Redirect' && handleMenuChange();
getParentPath();
diff --git a/src/components/Transition/src/ExpandTransition.ts b/src/components/Transition/src/ExpandTransition.ts
index 88f02e39017..6771c7a0163 100644
--- a/src/components/Transition/src/ExpandTransition.ts
+++ b/src/components/Transition/src/ExpandTransition.ts
@@ -48,7 +48,9 @@ export default function (expandedParentClass = '', x = false) {
if (expandedParentClass && el._parent) {
el._parent.classList.add(expandedParentClass);
}
-
+ console.log('======================');
+ console.log(sizeProperty, offset);
+ console.log('======================');
requestAnimationFrame(() => {
el.style[sizeProperty] = offset;
});
diff --git a/src/router/menus/index.ts b/src/router/menus/index.ts
index 7600b619b7c..7161b4314ec 100644
--- a/src/router/menus/index.ts
+++ b/src/router/menus/index.ts
@@ -1,4 +1,4 @@
-import type { Menu } from '/@/router/types';
+import type { Menu, MenuModule } from '/@/router/types';
import type { RouteRecordNormalized } from 'vue-router';
import { appStore } from '/@/store/modules/app';
import { permissionStore } from '/@/store/modules/permission';
@@ -7,35 +7,40 @@ import { filter } from '/@/utils/helper/treeHelper';
import router from '/@/router';
import { PermissionModeEnum } from '/@/enums/appEnum';
import { pathToRegexp } from 'path-to-regexp';
+import modules from 'globby!/@/router/menus/modules/**/*.@(ts)';
// ===========================
// ==========module import====
// ===========================
-import dashboard from './modules/dashboard';
-
-import exceptionDemo from './modules/demo/exception';
-import iframeDemo from './modules/demo/iframe';
-import compDemo from './modules/demo/comp';
-import permissionDemo from './modules/demo/permission';
-import featDemo from './modules/demo/feat';
-import chartsDemo from './modules/demo/charts';
-import tableDemo from './modules/demo/table';
-import formDemo from './modules/demo/form';
-import treeDemo from './modules/demo/tree';
-
-const menuModules = [
- dashboard,
- featDemo,
- exceptionDemo,
- iframeDemo,
- compDemo,
- permissionDemo,
- chartsDemo,
- tableDemo,
- formDemo,
- treeDemo,
+// import dashboard from './modules/dashboard';
+
+// import exceptionDemo from './modules/demo/exception';
+// import iframeDemo from './modules/demo/iframe';
+// import compDemo from './modules/demo/comp';
+// import permissionDemo from './modules/demo/permission';
+// import featDemo from './modules/demo/feat';
+// import chartsDemo from './modules/demo/charts';
+// import tableDemo from './modules/demo/table';
+// import formDemo from './modules/demo/form';
+// import treeDemo from './modules/demo/tree';
+
+const menuModules: MenuModule[] = [
+ // dashboard,
+ // featDemo,
+ // exceptionDemo,
+ // iframeDemo,
+ // compDemo,
+ // permissionDemo,
+ // chartsDemo,
+ // tableDemo,
+ // formDemo,
+ // treeDemo,
];
+Object.keys(modules).forEach((key) => {
+ menuModules.push(modules[key]);
+});
+
// ===========================
// ==========Helper===========
// ===========================
diff --git a/src/router/routes/index.ts b/src/router/routes/index.ts
index 3c5667397a6..5ea4d2ceb4d 100644
--- a/src/router/routes/index.ts
+++ b/src/router/routes/index.ts
@@ -2,33 +2,37 @@ import type { AppRouteRecordRaw, AppRouteModule } from '/@/router/types';
import { DEFAULT_LAYOUT_COMPONENT, PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE } from '../constant';
import { genRouteModule } from '/@/utils/helper/routeHelper';
+import modules from 'globby!/@/router/routes/modules/**/*.@(ts)';
-import dashboard from './modules/dashboard';
-
+// import dashboard from './modules/dashboard';
// demo
-import exceptionDemo from './modules/demo/exception';
-import iframeDemo from './modules/demo/iframe';
-import compDemo from './modules/demo/comp';
-import permissionDemo from './modules/demo/permission';
-import featDemo from './modules/demo/feat';
-import chartsDemo from './modules/demo/charts';
-import tableDemo from './modules/demo/table';
-import formDemo from './modules/demo/form';
-import treeDemo from './modules/demo/tree';
+// import exceptionDemo from './modules/demo/exception';
+// import iframeDemo from './modules/demo/iframe';
+// import compDemo from './modules/demo/comp';
+// import permissionDemo from './modules/demo/permission';
+// import featDemo from './modules/demo/feat';
+// import chartsDemo from './modules/demo/charts';
+// import tableDemo from './modules/demo/table';
+// import formDemo from './modules/demo/form';
+// import treeDemo from './modules/demo/tree';
const routeModuleList: AppRouteModule[] = [
- exceptionDemo,
- dashboard,
- iframeDemo,
- compDemo,
- featDemo,
- permissionDemo,
- chartsDemo,
- tableDemo,
- formDemo,
- treeDemo,
+ // exceptionDemo,
+ // dashboard,
+ // iframeDemo,
+ // compDemo,
+ // featDemo,
+ // permissionDemo,
+ // chartsDemo,
+ // tableDemo,
+ // formDemo,
+ // treeDemo,
];
+Object.keys(modules).forEach((key) => {
+ routeModuleList.push(modules[key]);
+});
+
export const asyncRoutes = [
REDIRECT_ROUTE,
PAGE_NOT_FOUND_ROUTE,
diff --git a/vite.config.ts b/vite.config.ts
index 73cc7d662e9..cac6f117a05 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -12,8 +12,10 @@ import {
import { createProxy } from './build/config/vite/proxy';
import { createMockServer } from 'vite-plugin-mock';
import PurgeIcons from 'vite-plugin-purge-icons';
+import gzipPlugin from './build/plugin/gzip/index';
+import globbyTransform from './build/plugin/vite-plugin-context-plugin/transform';
-import { isDevFn, isReportMode, isProdFn, loadEnv } from './build/utils';
+import { isDevFn, isReportMode, isProdFn, loadEnv, isBuildGzip, isSiteMode } from './build/utils';
const pkg = require('./package.json');
const {
@@ -22,6 +24,7 @@ const {
VITE_PUBLIC_PATH,
VITE_PROXY,
VITE_GLOB_APP_TITLE,
+ VITE_DROP_CONSOLE,
// VITE_USE_CDN,
} = loadEnv();
@@ -33,12 +36,18 @@ const rollupPlugins: any[] = [];
const vitePlugins: VitePlugin[] = [];
(() => {
- if (isReportMode() && isProdFn()) {
- // report
- rollupPlugins.push(
- visualizer({ filename: './node_modules/.cache/stats.html', open: true }) as Plugin
- );
+ if (isProdFn()) {
+ if (isReportMode()) {
+ // report
+ rollupPlugins.push(
+ visualizer({ filename: './node_modules/.cache/stats.html', open: true }) as Plugin
+ );
+ }
+ if (isBuildGzip() || isSiteMode()) {
+ rollupPlugins.push(gzipPlugin());
+ }
}
+
if (isDevFn() && VITE_USE_MOCK) {
// open mock
vitePlugins.push(
@@ -99,14 +108,21 @@ const viteConfig: UserConfig = {
assetsInlineLimit: 4096,
/**
* esbuild转换目标。
- * @default 'es2019'
+ * @default 'es2020'
*/
- esbuildTarget: 'es2019',
+ esbuildTarget: 'es2020',
silent: false,
// 别名
alias: {
'/@/': pathResolve('src'),
},
+ // terser配置
+ terserOption: {
+ compress: {
+ // 是否删除console
+ drop_console: VITE_DROP_CONSOLE,
+ },
+ },
define: {
__VERSION__: pkg.version,
},
@@ -128,6 +144,7 @@ const viteConfig: UserConfig = {
'moment/locale/zh-cn',
],
},
+
// 本地跨域代理
proxy: createProxy(VITE_PROXY),
@@ -140,8 +157,6 @@ const viteConfig: UserConfig = {
},
};
-// 用于打包部署站点使用。实际项目可以删除
-const isSite = process.env.SITE === 'true';
// 扩展配置, 往打包后的html注入内容
// 只针对生产环境
// TODO 目前只是简单手动注入实现,后续vite应该会提供配置项
@@ -164,7 +179,8 @@ export const htmlConfig: {
// html title
title: VITE_GLOB_APP_TITLE,
// 百度统计,不需要可以删除
- addHm: isSite,
+ // 用于打包部署站点使用。实际项目可以删除
+ addHm: isSiteMode(),
// 使用cdn打包
// TODO Cdn esm使用方式需要只能支持google,暂时关闭,后续查询更好的方式
useCdn: false,
@@ -179,4 +195,7 @@ export const htmlConfig: {
minifyCSS: true,
},
};
-export default viteConfig;
+export default {
+ ...viteConfig,
+ transforms: [globbyTransform(viteConfig)],
+} as UserConfig;
diff --git a/yarn.lock b/yarn.lock
index 4924bfb63e6..b058d32d74f 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -34,7 +34,7 @@
"@babel/runtime" "^7.10.4"
lodash "^4.17.15"
-"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.5.5":
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4":
version "7.10.4"
resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a"
integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==
@@ -170,7 +170,7 @@
chalk "^2.0.0"
js-tokens "^4.0.0"
-"@babel/parser@^7.10.4", "@babel/parser@^7.11.5", "@babel/parser@^7.9.4":
+"@babel/parser@^7.10.4", "@babel/parser@^7.11.5":
version "7.11.5"
resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.11.5.tgz#c7ff6303df71080ec7a4f5b8c003c58f1cf51037"
integrity sha512-X9rD8qqm695vgmeaQ4fvz/o3+Wk4ZzQvSHkDBgpYKxpD4qTAUm88ZKtHkVqIOsYFFbIQ6wQYhC6q7pjqVK0E0Q==
@@ -460,39 +460,26 @@
dependencies:
"@iconify/iconify" ">=2.0.0-rc.1"
-"@rollup/plugin-commonjs@^14.0.0":
- version "14.0.0"
- resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-14.0.0.tgz#4285f9ec2db686a31129e5a2b415c94aa1f836f0"
- integrity sha512-+PSmD9ePwTAeU106i9FRdc+Zb3XUWyW26mo5Atr2mk82hor8+nPwkztEjFo8/B1fJKfaQDg9aM2bzQkjhi7zOw==
+"@rollup/plugin-commonjs@^15.0.0":
+ version "15.1.0"
+ resolved "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-15.1.0.tgz#1e7d076c4f1b2abf7e65248570e555defc37c238"
+ integrity sha512-xCQqz4z/o0h2syQ7d9LskIMvBSH4PX5PjYdpSSvgS+pQik3WahkQVNWg3D8XJeYjZoVWnIUQYDghuEMRGrmQYQ==
dependencies:
- "@rollup/pluginutils" "^3.0.8"
+ "@rollup/pluginutils" "^3.1.0"
commondir "^1.0.1"
- estree-walker "^1.0.1"
- glob "^7.1.2"
- is-reference "^1.1.2"
- magic-string "^0.25.2"
- resolve "^1.11.0"
+ estree-walker "^2.0.1"
+ glob "^7.1.6"
+ is-reference "^1.2.1"
+ magic-string "^0.25.7"
+ resolve "^1.17.0"
-"@rollup/plugin-json@^4.0.3":
+"@rollup/plugin-json@^4.1.0":
version "4.1.0"
resolved "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3"
integrity sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==
dependencies:
"@rollup/pluginutils" "^3.0.8"
-"@rollup/plugin-node-resolve@^8.4.0":
- version "8.4.0"
- resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-8.4.0.tgz#261d79a680e9dc3d86761c14462f24126ba83575"
- integrity sha512-LFqKdRLn0ShtQyf6SBYO69bGE1upV6wUhBX0vFOUnLAyzx5cwp8svA0eHUnu8+YU57XOkrMtfG63QOpQx25pHQ==
- dependencies:
- "@rollup/pluginutils" "^3.1.0"
- "@types/resolve" "1.17.1"
- builtin-modules "^3.1.0"
- deep-freeze "^0.0.1"
- deepmerge "^4.2.2"
- is-module "^1.0.0"
- resolve "^1.17.0"
-
"@rollup/plugin-node-resolve@^9.0.0":
version "9.0.0"
resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-9.0.0.tgz#39bd0034ce9126b39c1699695f440b4b7d2b62e6"
@@ -700,7 +687,7 @@
"@types/koa" "*"
"@types/koa-send" "*"
-"@types/koa@*", "@types/koa@^2.11.3":
+"@types/koa@*":
version "2.11.4"
resolved "https://registry.npmjs.org/@types/koa/-/koa-2.11.4.tgz#8af02a069a9f8e08fa47b8da28d982e652f69cfb"
integrity sha512-Etqs0kdqbuAsNr5k6mlZQelpZKVwMu9WPRHVVTLnceZlhr0pYmblRNJbCgoCMzKWWePldydU0AYEOX4Q9fnGUQ==
@@ -714,6 +701,20 @@
"@types/koa-compose" "*"
"@types/node" "*"
+"@types/koa@^2.11.4":
+ version "2.11.5"
+ resolved "https://registry.npmjs.org/@types/koa/-/koa-2.11.5.tgz#a2b81382bf65d72bdc3bd906abdee259fefdebc2"
+ integrity sha512-egP+ceD3+v9PnFW+DLTFO8mt6wa5sDqfGOBIwOAZ61Wzsq4bGZc5kMpJgcCwq7ARGIBfHBY+KkK/1RsMftV/qQ==
+ dependencies:
+ "@types/accepts" "*"
+ "@types/content-disposition" "*"
+ "@types/cookies" "*"
+ "@types/http-assert" "*"
+ "@types/http-errors" "*"
+ "@types/keygrip" "*"
+ "@types/koa-compose" "*"
+ "@types/node" "*"
+
"@types/lodash-es@^4.17.3":
version "4.17.3"
resolved "https://registry.npmjs.org/@types/lodash-es/-/lodash-es-4.17.3.tgz#87eb0b3673b076b8ee655f1890260a136af09a2d"
@@ -935,17 +936,6 @@
"@typescript-eslint/types" "4.4.1"
eslint-visitor-keys "^2.0.0"
-"@vue/compiler-core@3.0.0":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.0.tgz#25e4f079cf6c39f83bad23700f814c619105a0f2"
- integrity sha512-XqPC7vdv4rFE77S71oCHmT1K4Ks3WE2Gi6Lr4B5wn0Idmp+NyQQBUHsCNieMDRiEpgtJrw+yOHslrsV0AfAsfQ==
- dependencies:
- "@babel/parser" "^7.11.5"
- "@babel/types" "^7.11.5"
- "@vue/shared" "3.0.0"
- estree-walker "^2.0.1"
- source-map "^0.6.1"
-
"@vue/compiler-core@3.0.1":
version "3.0.1"
resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.1.tgz#3ce57531078c6220be7ea458e41e4bab3522015b"
@@ -957,15 +947,7 @@
estree-walker "^2.0.1"
source-map "^0.6.1"
-"@vue/compiler-dom@3.0.0", "@vue/compiler-dom@^3.0.0-rc.5":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.0.tgz#4cbb48fcf1f852daef2babcf9953b681ac463526"
- integrity sha512-ukDEGOP8P7lCPyStuM3F2iD5w2QPgUu2xwCW2XNeqPjFKIlR2xMsWjy4raI/cLjN6W16GtlMFaZdK8tLj5PRog==
- dependencies:
- "@vue/compiler-core" "3.0.0"
- "@vue/shared" "3.0.0"
-
-"@vue/compiler-dom@3.0.1":
+"@vue/compiler-dom@3.0.1", "@vue/compiler-dom@^3.0.0-rc.10":
version "3.0.1"
resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.1.tgz#00b12f2e4aa55e624e2a5257e4bed93cf7555f0b"
integrity sha512-8cjgswVU2YmV35H9ARZmSlDr1P9VZxUihRwefkrk6Vrsb7kui5C3d/WQ2/su34FSDpyMU1aacUOiL2CV/vdX6w==
@@ -973,29 +955,7 @@
"@vue/compiler-core" "3.0.1"
"@vue/shared" "3.0.1"
-"@vue/compiler-sfc@^3.0.0-rc.5":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.0.tgz#efa38037984bd64aae315828aa5c1248c6eadca9"
- integrity sha512-1Bn4L5jNRm6tlb79YwqYUGGe+Yc9PRoRSJi67NJX6icdhf84+tRMtESbx1zCLL9QixQXu2+7aLkXHxvh4RpqAA==
- dependencies:
- "@babel/parser" "^7.11.5"
- "@babel/types" "^7.11.5"
- "@vue/compiler-core" "3.0.0"
- "@vue/compiler-dom" "3.0.0"
- "@vue/compiler-ssr" "3.0.0"
- "@vue/shared" "3.0.0"
- consolidate "^0.16.0"
- estree-walker "^2.0.1"
- hash-sum "^2.0.0"
- lru-cache "^5.1.1"
- magic-string "^0.25.7"
- merge-source-map "^1.1.0"
- postcss "^7.0.32"
- postcss-modules "^3.2.2"
- postcss-selector-parser "^6.0.2"
- source-map "^0.6.1"
-
-"@vue/compiler-sfc@^3.0.1":
+"@vue/compiler-sfc@^3.0.0-rc.10", "@vue/compiler-sfc@^3.0.1":
version "3.0.1"
resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.1.tgz#f340f8f75b5c1c4509e0f3a12c79d1544899b663"
integrity sha512-VO5gJ7SyHw0hf1rkKXRlxjXI9+Q4ngcuUWYnyjOSDch7Wtt2IdOEiC82KFWIkfWMpHqA5HPzL2nDmys3y9d19w==
@@ -1017,14 +977,6 @@
postcss-selector-parser "^6.0.4"
source-map "^0.6.1"
-"@vue/compiler-ssr@3.0.0":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.0.tgz#d717abcd23a89fb38d1497228633a21bcf9a0e28"
- integrity sha512-Er41F9ZFyKB3YnNbE6JSTIGCVWve3NAQimgDOk4uP42OnckxBYKGBTutDeFNeqUZBMu/9vRHYrxlGFC9Z5jBVQ==
- dependencies:
- "@vue/compiler-dom" "3.0.0"
- "@vue/shared" "3.0.0"
-
"@vue/compiler-ssr@3.0.1":
version "3.0.1"
resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.1.tgz#0455b011d72d4ed02faa93610f14981c3d44a079"
@@ -1063,15 +1015,6 @@
"@vue/reactivity" "3.0.1"
"@vue/shared" "3.0.1"
-"@vue/runtime-dom@3.0.0", "@vue/runtime-dom@^3.0.0-rc.1":
- version "3.0.0"
- resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.0.tgz#e0d1f7c7e22e1318696014cc3501e06b288c2e11"
- integrity sha512-f312n5w9gK6mVvkDSj6/Xnot1XjlKXzFBYybmoy6ahAVC8ExbQ+LOWti1IZM/adU8VMNdKaw7Q53Hxz3y5jX8g==
- dependencies:
- "@vue/runtime-core" "3.0.0"
- "@vue/shared" "3.0.0"
- csstype "^2.6.8"
-
"@vue/runtime-dom@3.0.1":
version "3.0.1"
resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.1.tgz#2cc74550a635f38eb5f61f35f374d5bdb55156b0"
@@ -1081,6 +1024,15 @@
"@vue/shared" "3.0.1"
csstype "^2.6.8"
+"@vue/runtime-dom@^3.0.0-rc.1":
+ version "3.0.0"
+ resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.0.tgz#e0d1f7c7e22e1318696014cc3501e06b288c2e11"
+ integrity sha512-f312n5w9gK6mVvkDSj6/Xnot1XjlKXzFBYybmoy6ahAVC8ExbQ+LOWti1IZM/adU8VMNdKaw7Q53Hxz3y5jX8g==
+ dependencies:
+ "@vue/runtime-core" "3.0.0"
+ "@vue/shared" "3.0.0"
+ csstype "^2.6.8"
+
"@vue/shared@3.0.0":
version "3.0.0"
resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.0.tgz#ec089236629ecc0f10346b92f101ff4339169f1a"
@@ -1226,7 +1178,7 @@ ant-design-vue@^2.0.0-beta.10:
shallowequal "^1.0.2"
warning "^4.0.0"
-any-promise@^1.0.0, any-promise@^1.1.0:
+any-promise@^1.1.0:
version "1.3.0"
resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
integrity sha1-q8av7tzqUugJzcA3au0845Y10X8=
@@ -1644,14 +1596,6 @@ chalk@4.1.0, chalk@^4.0.0, chalk@^4.1.0:
ansi-styles "^4.1.0"
supports-color "^7.1.0"
-chalk@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4"
- integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==
- dependencies:
- ansi-styles "^4.1.0"
- supports-color "^7.1.0"
-
character-entities-html4@^1.0.0:
version "1.1.4"
resolved "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.4.tgz#0e64b0a3753ddbf1fdc044c5fd01d0199a02e125"
@@ -1677,7 +1621,7 @@ chardet@^0.7.0:
resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
-chokidar@^3.3.1, chokidar@^3.4.2:
+chokidar@^3.4.2:
version "3.4.2"
resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz#38dc8e658dec3809741eb3ef7bb0a47fe424232d"
integrity sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==
@@ -1733,10 +1677,10 @@ cli-cursor@^3.1.0:
dependencies:
restore-cursor "^3.1.0"
-cli-spinners@^2.2.0:
- version "2.4.0"
- resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.4.0.tgz#c6256db216b878cfba4720e719cec7cf72685d7f"
- integrity sha512-sJAofoarcm76ZGpuooaO0eDy8saEy+YoZBLjC4h8srt4jeBnkYeOgqxgsJQTpyt2LjI5PTfLJHSL+41Yu4fEJA==
+cli-spinners@^2.4.0:
+ version "2.5.0"
+ resolved "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.5.0.tgz#12763e47251bf951cb75c201dfa58ff1bcb2d047"
+ integrity sha512-PC+AmIuK04E6aeSs/pUccSujsTzBhu4HzC2dL+CfJB/Jcc2qTRbEwZQDfIUpt2Xl8BodYBEq8w4fc0kU2I9DjQ==
cli-truncate@^2.1.0:
version "2.1.0"
@@ -2290,11 +2234,6 @@ deep-equal@~1.0.1:
resolved "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
integrity sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=
-deep-freeze@^0.0.1:
- version "0.0.1"
- resolved "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz#3a0b0005de18672819dfd38cd31f91179c893e84"
- integrity sha1-OgsABd4YZygZ39OM0x+RF5yJPoQ=
-
deep-is@^0.1.3:
version "0.1.3"
resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
@@ -2540,12 +2479,12 @@ error-ex@^1.2.0, error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
-es-module-lexer@^0.3.18:
+es-module-lexer@^0.3.25:
version "0.3.25"
resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.25.tgz#24a1abcb9c5dc96923a8e42be033b801f788de06"
integrity sha512-H9VoFD5H9zEfiOX2LeTWDwMvAbLqcAyA2PIb40TOAvGpScOjit02oTGWgIh+M0rx2eJOKyJVM9wtpKFVgnyC3A==
-esbuild@^0.6.10:
+esbuild@^0.6.33:
version "0.6.34"
resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.6.34.tgz#76565a60e006f45d5f273b6e59e61ed0816551f5"
integrity sha512-InRdL/Q96pUucPqovJzvuLhquZr6jOn81FDVwFjCKz1rYKIm9OdOC+7Fs4vr6x48vKBl5LzKgtjU39BUpO636A==
@@ -2734,7 +2673,7 @@ esutils@^2.0.2:
resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
-etag@^1.3.0, etag@^1.8.1:
+etag@^1.8.1:
version "1.8.1"
resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
@@ -2744,7 +2683,7 @@ eventemitter3@^4.0.0:
resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
-execa@^4.0.1, execa@^4.0.3:
+execa@^4.0.3:
version "4.0.3"
resolved "https://registry.npmjs.org/execa/-/execa-4.0.3.tgz#0a34dabbad6d66100bd6f2c576c8669403f317f2"
integrity sha512-WFDXGHckXPWZX19t1kCsXzOpqX9LWYNqn4C+HqZlk/V0imTkzJZqf87ZBhvpHaftERYknpk0fjSylnXVlVgI0A==
@@ -3173,7 +3112,7 @@ glob@7.1.4:
once "^1.3.0"
path-is-absolute "^1.0.0"
-glob@^7.0.0, glob@^7.1.2, glob@^7.1.3, glob@^7.1.6:
+glob@^7.0.0, glob@^7.1.3, glob@^7.1.6:
version "7.1.6"
resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
@@ -3853,7 +3792,7 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4:
dependencies:
isobject "^3.0.1"
-is-reference@^1.1.2:
+is-reference@^1.2.1:
version "1.2.1"
resolved "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7"
integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==
@@ -3958,13 +3897,14 @@ isobject@^3.0.0, isobject@^3.0.1:
resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
-jest-worker@^24.9.0:
- version "24.9.0"
- resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5"
- integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==
+jest-worker@^26.2.1:
+ version "26.5.0"
+ resolved "https://registry.npmjs.org/jest-worker/-/jest-worker-26.5.0.tgz#87deee86dbbc5f98d9919e0dadf2c40e3152fa30"
+ integrity sha512-kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug==
dependencies:
+ "@types/node" "*"
merge-stream "^2.0.0"
- supports-color "^6.1.0"
+ supports-color "^7.0.0"
joycon@^2.2.5:
version "2.2.5"
@@ -4112,10 +4052,10 @@ koa-compose@^4.1.0:
resolved "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz#507306b9371901db41121c812e923d0d67d3e877"
integrity sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==
-koa-conditional-get@^2.0.0:
- version "2.0.0"
- resolved "https://registry.npmjs.org/koa-conditional-get/-/koa-conditional-get-2.0.0.tgz#a43f3723c1d014b730a34ece8adf30b93c8233f2"
- integrity sha1-pD83I8HQFLcwo07Oit8wuTyCM/I=
+koa-conditional-get@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.npmjs.org/koa-conditional-get/-/koa-conditional-get-3.0.0.tgz#552cb64a217dfb907e90b7c34f42009e441c4b8e"
+ integrity sha512-VKyPS7SuNH26TjTV2IRz+oh0HV/jc2lYAo51PTQTkj0XFn8ebNZW9riczmrW7ZVBFSnls1Z88DPUYKnvVymruA==
koa-convert@^1.2.0:
version "1.2.0"
@@ -4125,13 +4065,12 @@ koa-convert@^1.2.0:
co "^4.6.0"
koa-compose "^3.0.0"
-koa-etag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/koa-etag/-/koa-etag-3.0.0.tgz#9ef7382ddd5a82ab0deb153415c915836f771d3f"
- integrity sha1-nvc4Ld1agqsN6xU0FckVg293HT8=
+koa-etag@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.npmjs.org/koa-etag/-/koa-etag-4.0.0.tgz#2c2bb7ae69ca1ac6ced09ba28dcb78523c810414"
+ integrity sha512-1cSdezCkBWlyuB9l6c/IFoe1ANCDdPBxkDkRiaIup40xpUub6U/wwRXoKBZw/O5BifX9OlqAjYnDyzM6+l+TAg==
dependencies:
- etag "^1.3.0"
- mz "^2.1.0"
+ etag "^1.8.1"
koa-proxies@^0.11.0:
version "0.11.0"
@@ -4141,7 +4080,7 @@ koa-proxies@^0.11.0:
http-proxy "^1.16.2"
path-match "^1.2.4"
-koa-send@^5.0.0:
+koa-send@^5.0.0, koa-send@^5.0.1:
version "5.0.1"
resolved "https://registry.npmjs.org/koa-send/-/koa-send-5.0.1.tgz#39dceebfafb395d0d60beaffba3a70b4f543fe79"
integrity sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==
@@ -4158,7 +4097,7 @@ koa-static@^5.0.0:
debug "^3.1.0"
koa-send "^5.0.0"
-koa@^2.11.0:
+koa@^2.13.0:
version "2.13.0"
resolved "https://registry.npmjs.org/koa/-/koa-2.13.0.tgz#25217e05efd3358a7e5ddec00f0a380c9b71b501"
integrity sha512-i/XJVOfPw7npbMv67+bOeXr3gPqOAw6uh5wFyNs3QvJ47tUx3M3V9rIE0//WytY42MKz4l/MXKyGkQ2LQTfLUQ==
@@ -4365,13 +4304,6 @@ lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
-log-symbols@^3.0.0:
- version "3.0.0"
- resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz#f3a08516a5dea893336a7dee14d18a1cfdab77c4"
- integrity sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==
- dependencies:
- chalk "^2.4.2"
-
log-symbols@^4.0.0:
version "4.0.0"
resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920"
@@ -4426,7 +4358,14 @@ lru-cache@^5.1.1:
dependencies:
yallist "^3.0.2"
-magic-string@^0.25.2, magic-string@^0.25.7:
+lru-cache@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
+ integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
+ dependencies:
+ yallist "^4.0.0"
+
+magic-string@^0.25.7:
version "0.25.7"
resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051"
integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==
@@ -4712,15 +4651,6 @@ mute-stream@0.0.8:
resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d"
integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==
-mz@^2.1.0:
- version "2.7.0"
- resolved "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
- integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
- dependencies:
- any-promise "^1.0.0"
- object-assign "^4.0.1"
- thenify-all "^1.0.0"
-
nanoid@^3.0.1:
version "3.1.12"
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.1.12.tgz#6f7736c62e8d39421601e4a0c77623a97ea69654"
@@ -4905,7 +4835,7 @@ only@~0.0.2:
resolved "https://registry.npmjs.org/only/-/only-0.0.2.tgz#2afde84d03e50b9a8edc444e30610a70295edfb4"
integrity sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=
-open@^7.0.3:
+open@^7.0.3, open@^7.2.1:
version "7.3.0"
resolved "https://registry.npmjs.org/open/-/open-7.3.0.tgz#45461fdee46444f3645b6e14eb3ca94b82e1be69"
integrity sha512-mgLwQIx2F/ye9SmbrUkurZCnkoXyXyu9EbHtJZrICjVAJfyMArdHp3KkixGdZx1ZHFPNIwl0DDM1dFFqXbTLZw==
@@ -4930,16 +4860,16 @@ optionator@^0.9.1:
type-check "^0.4.0"
word-wrap "^1.2.3"
-ora@^4.0.4:
- version "4.1.1"
- resolved "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz#566cc0348a15c36f5f0e979612842e02ba9dddbc"
- integrity sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==
+ora@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.npmjs.org/ora/-/ora-5.1.0.tgz#b188cf8cd2d4d9b13fd25383bc3e5cba352c94f8"
+ integrity sha512-9tXIMPvjZ7hPTbk8DFq1f7Kow/HU/pQYB60JbNq+QnGwcyhWVZaQ4hM9zQDEsPxw/muLpgiHSaumUZxCAmod/w==
dependencies:
- chalk "^3.0.0"
+ chalk "^4.1.0"
cli-cursor "^3.1.0"
- cli-spinners "^2.2.0"
+ cli-spinners "^2.4.0"
is-interactive "^1.0.0"
- log-symbols "^3.0.0"
+ log-symbols "^4.0.0"
mute-stream "0.0.8"
strip-ansi "^6.0.0"
wcwidth "^1.0.1"
@@ -5381,7 +5311,7 @@ postcss-value-parser@^4.1.0:
resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb"
integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==
-postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.28, postcss@^7.0.31, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
+postcss@^7.0.0, postcss@^7.0.1, 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.5, postcss@^7.0.6:
version "7.0.35"
resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
@@ -5778,7 +5708,7 @@ resolve-url@^0.2.1:
resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a"
integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=
-resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.17.0, resolve@^1.3.2:
+resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.17.0, resolve@^1.3.2:
version "1.17.0"
resolved "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444"
integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==
@@ -5830,7 +5760,7 @@ rollup-plugin-analyzer@^3.3.0:
resolved "https://registry.npmjs.org/rollup-plugin-analyzer/-/rollup-plugin-analyzer-3.3.0.tgz#52fb30465ae927d9c078b6ec90c578cfb9164fc2"
integrity sha512-zUPGitW4usmZcVa0nKecRvw3odtXgnxdCben9Hx1kxVoR3demek8RU9tmRG/R35hnRPQTb7wEsYEe3GUcjxIMA==
-rollup-plugin-dynamic-import-variables@^1.0.1:
+rollup-plugin-dynamic-import-variables@^1.1.0:
version "1.1.0"
resolved "https://registry.npmjs.org/rollup-plugin-dynamic-import-variables/-/rollup-plugin-dynamic-import-variables-1.1.0.tgz#4981d38907a471b35234398a09047bef47a2006a"
integrity sha512-C1avEmnXC8cC4aAQ5dB63O9oQf7IrhEHc98bQw9Qd6H36FxtZooLCvVfcO4SNYrqaNrzH3ErucQt/zdFSLPHNw==
@@ -5857,16 +5787,15 @@ rollup-plugin-purge-icons@^0.4.4:
"@purge-icons/core" "^0.4.4"
"@purge-icons/generated" "^0.4.1"
-rollup-plugin-terser@^5.3.0:
- version "5.3.1"
- resolved "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-5.3.1.tgz#8c650062c22a8426c64268548957463bf981b413"
- integrity sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w==
+rollup-plugin-terser@^7.0.2:
+ version "7.0.2"
+ resolved "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz#e8fbba4869981b2dc35ae7e8a502d5c6c04d324d"
+ integrity sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==
dependencies:
- "@babel/code-frame" "^7.5.5"
- jest-worker "^24.9.0"
- rollup-pluginutils "^2.8.2"
+ "@babel/code-frame" "^7.10.4"
+ jest-worker "^26.2.1"
serialize-javascript "^4.0.0"
- terser "^4.6.2"
+ terser "^5.0.0"
rollup-plugin-visualizer@^4.1.1:
version "4.1.1"
@@ -5888,7 +5817,7 @@ rollup-plugin-vue@^6.0.0-beta.10:
hash-sum "^2.0.0"
rollup-pluginutils "^2.8.2"
-rollup-plugin-web-worker-loader@^1.3.0:
+rollup-plugin-web-worker-loader@^1.3.1:
version "1.4.0"
resolved "https://registry.npmjs.org/rollup-plugin-web-worker-loader/-/rollup-plugin-web-worker-loader-1.4.0.tgz#b4fd711118758c2111c30e794e2f2757b75a27b8"
integrity sha512-jhlOwSkrXkAVFY2Fded0M1AS9iqZDNjUJxNz4BFjBlaKuUzTx8Ikey+b3LSegUJE4mzAAw2DqJD8pX12R0ZdDw==
@@ -5908,7 +5837,7 @@ rollup@^0.63.4:
"@types/estree" "0.0.39"
"@types/node" "*"
-rollup@^2.20.0, rollup@^2.26.11:
+rollup@^2.26.11:
version "2.29.0"
resolved "https://registry.npmjs.org/rollup/-/rollup-2.29.0.tgz#0c5c5968530b21ca0e32f8b94b7cd9346cfb0eec"
integrity sha512-gtU0sjxMpsVlpuAf4QXienPmUAhd6Kc7owQ4f5lypoxBW18fw2UNYZ4NssLGsri6WhUZkE/Ts3EMRebN+gNLiQ==
@@ -6139,7 +6068,7 @@ source-map-resolve@^0.5.0:
source-map-url "^0.4.0"
urix "^0.1.0"
-source-map-support@^0.5.17, source-map-support@~0.5.12:
+source-map-support@^0.5.17, source-map-support@~0.5.19:
version "0.5.19"
resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61"
integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==
@@ -6157,12 +6086,12 @@ source-map@^0.5.0, source-map@^0.5.6:
resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
-source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1:
+source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0:
version "0.6.1"
resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
-source-map@^0.7.3:
+source-map@^0.7.3, source-map@~0.7.2:
version "0.7.3"
resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
@@ -6507,7 +6436,7 @@ supports-color@^6.1.0:
dependencies:
has-flag "^3.0.0"
-supports-color@^7.1.0:
+supports-color@^7.0.0, supports-color@^7.1.0:
version "7.2.0"
resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
@@ -6616,14 +6545,14 @@ tempfile@^3.0.0:
temp-dir "^2.0.0"
uuid "^3.3.2"
-terser@^4.6.2:
- version "4.8.0"
- resolved "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
- integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==
+terser@^5.0.0:
+ version "5.3.5"
+ resolved "https://registry.npmjs.org/terser/-/terser-5.3.5.tgz#9e080baa0568f96654621b20eb9effa440b1484e"
+ integrity sha512-Qw3CZAMmmfU824AoGKalx+riwocSI5Cs0PoGp9RdSLfmxkmJgyBxqLBP/isDNtFyhHnitikvRMZzyVgeq+U+Tg==
dependencies:
commander "^2.20.0"
- source-map "~0.6.1"
- source-map-support "~0.5.12"
+ source-map "~0.7.2"
+ source-map-support "~0.5.19"
text-extensions@^1.0.0:
version "1.9.0"
@@ -6635,20 +6564,6 @@ text-table@^0.2.0:
resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
-thenify-all@^1.0.0:
- version "1.6.0"
- resolved "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
- integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=
- dependencies:
- thenify ">= 3.1.0 < 4"
-
-"thenify@>= 3.1.0 < 4":
- version "3.3.1"
- resolved "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
- integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
- dependencies:
- any-promise "^1.0.0"
-
through2@^2.0.0, through2@^2.0.2:
version "2.0.5"
resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd"
@@ -7042,61 +6957,61 @@ vite-plugin-purge-icons@^0.4.4:
"@purge-icons/generated" "^0.4.1"
rollup-plugin-purge-icons "^0.4.4"
-vite@^1.0.0-rc.4:
- version "1.0.0-rc.4"
- resolved "https://registry.npmjs.org/vite/-/vite-1.0.0-rc.4.tgz#210106136861b231704e6381ac9eb1bcd655d4f0"
- integrity sha512-D9gpKKaE2U0YpIxNrSn+nlFPBT0sfg68Y1EReYW8YHMhbNFcxwS7RZIa1W/8Pq6yDfVRAhbOZNijv1mLG5pCEg==
+"vite@npm:@knightly/vite":
+ version "1.0.0-knightly.202010140013"
+ resolved "https://registry.npmjs.org/@knightly/vite/-/vite-1.0.0-knightly.202010140013.tgz#8feb5926fe056538384e35c91d356675df3c3504"
+ integrity sha512-wsCJ7ISIpO2ek5/t5t8t+3EhDZu5y51tmf6P7yQKupaMw14CZ5YZY/VSeTWZfD5CIa2vaSCLf+x4fCv36Jw+kw==
dependencies:
- "@babel/parser" "^7.9.4"
- "@rollup/plugin-commonjs" "^14.0.0"
- "@rollup/plugin-json" "^4.0.3"
- "@rollup/plugin-node-resolve" "^8.4.0"
- "@types/koa" "^2.11.3"
+ "@babel/parser" "^7.11.5"
+ "@rollup/plugin-commonjs" "^15.0.0"
+ "@rollup/plugin-json" "^4.1.0"
+ "@rollup/plugin-node-resolve" "^9.0.0"
+ "@rollup/pluginutils" "^4.0.0"
+ "@types/koa" "^2.11.4"
"@types/lru-cache" "^5.1.0"
- "@vue/compiler-dom" "^3.0.0-rc.5"
- "@vue/compiler-sfc" "^3.0.0-rc.5"
+ "@vue/compiler-dom" "^3.0.0-rc.10"
+ "@vue/compiler-sfc" "^3.0.0-rc.10"
brotli-size "^4.0.0"
- chalk "^4.0.0"
- chokidar "^3.3.1"
+ chalk "^4.1.0"
+ chokidar "^3.4.2"
clean-css "^4.2.3"
debug "^4.1.1"
dotenv "^8.2.0"
dotenv-expand "^5.1.0"
- es-module-lexer "^0.3.18"
- esbuild "^0.6.10"
+ es-module-lexer "^0.3.25"
+ esbuild "^0.6.33"
etag "^1.8.1"
- execa "^4.0.1"
- fs-extra "^9.0.0"
+ execa "^4.0.3"
+ fs-extra "^9.0.1"
hash-sum "^2.0.0"
isbuiltin "^1.0.0"
- koa "^2.11.0"
- koa-conditional-get "^2.0.0"
- koa-etag "^3.0.0"
+ koa "^2.13.0"
+ koa-conditional-get "^3.0.0"
+ koa-etag "^4.0.0"
koa-proxies "^0.11.0"
- koa-send "^5.0.0"
+ koa-send "^5.0.1"
koa-static "^5.0.0"
- lru-cache "^5.1.1"
+ lru-cache "^6.0.0"
magic-string "^0.25.7"
merge-source-map "^1.1.0"
mime-types "^2.1.27"
minimist "^1.2.5"
- open "^7.0.3"
- ora "^4.0.4"
- postcss "^7.0.28"
+ open "^7.2.1"
+ ora "^5.1.0"
+ postcss "^7.0.32"
postcss-discard-comments "^4.0.2"
postcss-import "^12.0.1"
postcss-load-config "^2.1.0"
resolve "^1.17.0"
- rollup "^2.20.0"
- rollup-plugin-dynamic-import-variables "^1.0.1"
- rollup-plugin-terser "^5.3.0"
+ rollup "^2.26.11"
+ rollup-plugin-dynamic-import-variables "^1.1.0"
+ rollup-plugin-terser "^7.0.2"
rollup-plugin-vue "^6.0.0-beta.10"
- rollup-plugin-web-worker-loader "^1.3.0"
- rollup-pluginutils "^2.8.2"
+ rollup-plugin-web-worker-loader "^1.3.1"
selfsigned "^1.10.7"
slash "^3.0.0"
- vue "^3.0.0-rc.5"
- ws "^7.2.3"
+ vue "^3.0.0-rc.10"
+ ws "^7.3.1"
vue-eslint-parser@^7.1.0:
version "7.1.0"
@@ -7132,16 +7047,7 @@ vue-router@^4.0.0-beta.13:
resolved "https://registry.npmjs.org/vue-router/-/vue-router-4.0.0-beta.13.tgz#4611d09a9e44f231cc401ecc294a7f2dcb30e6a6"
integrity sha512-dYv9qpHPaojQlfujViiTkPkf1Bf5RCFzkCkdVFc1cENzWJYAGJanpIHiyjyKoM4u7IDFBZMItci+U4ieaEWA8A==
-vue@^3.0.0-rc.5:
- version "3.0.0"
- resolved "https://registry.npmjs.org/vue/-/vue-3.0.0.tgz#cfb5df5c34efce319b113a1667d12b74dcfd9c90"
- integrity sha512-ZMrAARZ32sGIaYKr7Fk2GZEBh/VhulSrGxcGBiAvbN4fhjl3tuJyNFbbbLFqGjndbLoBW66I2ECq8ICdvkKdJw==
- dependencies:
- "@vue/compiler-dom" "3.0.0"
- "@vue/runtime-dom" "3.0.0"
- "@vue/shared" "3.0.0"
-
-vue@^3.0.1:
+vue@^3.0.0-rc.10, vue@^3.0.1:
version "3.0.1"
resolved "https://registry.npmjs.org/vue/-/vue-3.0.1.tgz#dcdabf07da37e655e23d7d22eacc18c2da5f5a16"
integrity sha512-WBTgaQMJIWQuhlzMV6C0qvVrxyQSpx3gKwflYC0sqGKEZSxMIOYRnrIlHUN4ivUVvP7mUMxcnFTt7P+akdOkQA==
@@ -7257,7 +7163,7 @@ write@1.0.3:
dependencies:
mkdirp "^0.5.1"
-ws@^7.2.3:
+ws@^7.3.1:
version "7.3.1"
resolved "https://registry.npmjs.org/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8"
integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==
@@ -7282,6 +7188,11 @@ yallist@^3.0.2:
resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+yallist@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
+ integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
+
yaml@^1.10.0:
version "1.10.0"
resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e"