From 4c0f939d211ff495b69d4e299b2b619444265662 Mon Sep 17 00:00:00 2001
From: genffy <1506972+genffy@users.noreply.github.com>
Date: Wed, 16 Feb 2022 16:25:07 +0800
Subject: [PATCH] test: add env variable demo (#127)
---
.gitignore | 2 +-
.../router-host/.env.development | 2 +
.../vue3-advanced-demo/router-host/.env.pro | 2 +
.../router-host/.env.staging | 2 +
.../vue3-advanced-demo/router-host/index.html | 2 +-
.../router-host/package.json | 7 +-
.../router-host/src/App.vue | 4 +-
.../router-host/vite.config.ts | 81 +++++---
.../router-remote/.env.development | 2 +
.../vue3-advanced-demo/router-remote/.env.pro | 2 +
.../router-remote/.env.staging | 2 +
.../router-remote/index.html | 2 +-
.../router-remote/package.json | 8 +-
.../router-remote/public/.gitignore | 1 +
.../src/components/ProductList.vue | 5 +
.../router-remote/vite.config.ts | 96 +++++----
.../home/package.json | 2 +-
.../layout/package.json | 2 +-
.../home/package.json | 2 +-
.../layout/package.json | 2 +-
pnpm-lock.yaml | 196 ++++++++++++++++++
21 files changed, 342 insertions(+), 82 deletions(-)
create mode 100644 packages/examples/vue3-advanced-demo/router-host/.env.development
create mode 100644 packages/examples/vue3-advanced-demo/router-host/.env.pro
create mode 100644 packages/examples/vue3-advanced-demo/router-host/.env.staging
create mode 100644 packages/examples/vue3-advanced-demo/router-remote/.env.development
create mode 100644 packages/examples/vue3-advanced-demo/router-remote/.env.pro
create mode 100644 packages/examples/vue3-advanced-demo/router-remote/.env.staging
create mode 100644 packages/examples/vue3-advanced-demo/router-remote/public/.gitignore
diff --git a/.gitignore b/.gitignore
index ba52698f..b7f2362a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -104,7 +104,7 @@ dist
.tern-port
.idea
-
+.DS_Store
package-lock.json
launch.json
diff --git a/packages/examples/vue3-advanced-demo/router-host/.env.development b/packages/examples/vue3-advanced-demo/router-host/.env.development
new file mode 100644
index 00000000..c4c55257
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-host/.env.development
@@ -0,0 +1,2 @@
+NODE_ENV=development
+VITE_APP_TITLE=My App (development)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-host/.env.pro b/packages/examples/vue3-advanced-demo/router-host/.env.pro
new file mode 100644
index 00000000..ad8f33a3
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-host/.env.pro
@@ -0,0 +1,2 @@
+NODE_ENV=production
+VITE_APP_TITLE=My App (pro)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-host/.env.staging b/packages/examples/vue3-advanced-demo/router-host/.env.staging
new file mode 100644
index 00000000..d02ea0ae
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-host/.env.staging
@@ -0,0 +1,2 @@
+NODE_ENV=production
+VITE_APP_TITLE=My App (staging)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-host/index.html b/packages/examples/vue3-advanced-demo/router-host/index.html
index 4937875c..78d13ddb 100644
--- a/packages/examples/vue3-advanced-demo/router-host/index.html
+++ b/packages/examples/vue3-advanced-demo/router-host/index.html
@@ -4,7 +4,7 @@
-
Vite App
+ <%= title %>
diff --git a/packages/examples/vue3-advanced-demo/router-host/package.json b/packages/examples/vue3-advanced-demo/router-host/package.json
index d0f00a17..23f10ae8 100644
--- a/packages/examples/vue3-advanced-demo/router-host/package.json
+++ b/packages/examples/vue3-advanced-demo/router-host/package.json
@@ -8,7 +8,9 @@
"build": "vite build",
"clean": "rm -rf dist",
"stop": "kill-port --port 5004",
- "restart": "yarn stop & yarn build & yarn serve"
+ "restart": "yarn stop & yarn build & yarn serve",
+ "staging": "vite build --mode=staging",
+ "pro": "vite build --mode=pro"
},
"dependencies": {
"element-plus": "^1.1.0-beta.20",
@@ -19,6 +21,7 @@
"devDependencies": {
"@vitejs/plugin-vue": "^1.3.0",
"@vue/compiler-sfc": "^3.2.0",
- "vite": "^2.5.0"
+ "vite": "^2.5.0",
+ "vite-plugin-html": "^3.0.6"
}
}
diff --git a/packages/examples/vue3-advanced-demo/router-host/src/App.vue b/packages/examples/vue3-advanced-demo/router-host/src/App.vue
index 1d8c71bf..8812848f 100644
--- a/packages/examples/vue3-advanced-demo/router-host/src/App.vue
+++ b/packages/examples/vue3-advanced-demo/router-host/src/App.vue
@@ -120,7 +120,9 @@ export default {
}
state.showMenu = !noMenu.includes(to.path)
state.currentPath = to.path
- document.title = api.pathMap[to.name]
+ if(to.name && api.pathMap[to.name]) {
+ document.title = api.pathMap[to.name]
+ }
})
onUnmounted(() => {
diff --git a/packages/examples/vue3-advanced-demo/router-host/vite.config.ts b/packages/examples/vue3-advanced-demo/router-host/vite.config.ts
index dfba19ba..be0c56c5 100644
--- a/packages/examples/vue3-advanced-demo/router-host/vite.config.ts
+++ b/packages/examples/vue3-advanced-demo/router-host/vite.config.ts
@@ -1,39 +1,52 @@
-import {defineConfig} from "vite";
+import { defineConfig, loadEnv } from "vite";
import vue from "@vitejs/plugin-vue";
import federation from "@originjs/vite-plugin-federation";
-
+import { createHtmlPlugin } from 'vite-plugin-html'
// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [
- vue(),
- federation({
- name: "router-host",
- filename: "remoteEntry.js",
- remotes: {
- "router-remote": "http://localhost:5005/assets/remoteEntry.js",
- },
- shared: ["vue", "vue-router", "element-plus", "vuex"]
- })
- ],
- // optimizeDeps:{
- // include: ["element-plus"]
- // },
+export default defineConfig(({ mode }) => {
+ const root = process.cwd()
+
+ const env = loadEnv(mode, root)
+ return {
+ plugins: [
+ vue(),
+ federation({
+ name: "router-host",
+ filename: "remoteEntry.js",
+ remotes: {
+ "router-remote": "http://localhost:5105/assets/remoteEntry.js",
+ },
+ shared: ["vue", "vue-router", "element-plus", "vuex"]
+ }),
+ createHtmlPlugin({
+ inject: {
+ // Inject data into ejs template
+ data: {
+ title: env.VITE_APP_TITLE,
+ },
+ },
+ }),
+ ],
+ // optimizeDeps:{
+ // include: ["element-plus"]
+ // },
- // 解决 const Home = {template: 'Home
'} 类组件无法在 vue-router 中显示的问题
- resolve:{
- alias:{
- vue : 'vue/dist/vue.esm-bundler.js',
- 'vue-router': 'vue-router/dist/vue-router.esm-bundler.js'
- }
- },
- build: {
- target: 'esnext',
- minify: false,
- cssCodeSplit: true,
- rollupOptions: {
- output: {
- minifyInternalExports: false
+ // 解决 const Home = {template: 'Home
'} 类组件无法在 vue-router 中显示的问题
+ resolve: {
+ alias: {
+ vue: 'vue/dist/vue.esm-bundler.js',
+ 'vue-router': 'vue-router/dist/vue-router.esm-bundler.js'
+ }
+ },
+ build: {
+ target: 'esnext',
+ minify: false,
+ cssCodeSplit: true,
+ rollupOptions: {
+ output: {
+ minifyInternalExports: false
+ }
}
- }
- },
-});
+ },
+ }
+})
diff --git a/packages/examples/vue3-advanced-demo/router-remote/.env.development b/packages/examples/vue3-advanced-demo/router-remote/.env.development
new file mode 100644
index 00000000..c4c55257
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-remote/.env.development
@@ -0,0 +1,2 @@
+NODE_ENV=development
+VITE_APP_TITLE=My App (development)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-remote/.env.pro b/packages/examples/vue3-advanced-demo/router-remote/.env.pro
new file mode 100644
index 00000000..ad8f33a3
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-remote/.env.pro
@@ -0,0 +1,2 @@
+NODE_ENV=production
+VITE_APP_TITLE=My App (pro)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-remote/.env.staging b/packages/examples/vue3-advanced-demo/router-remote/.env.staging
new file mode 100644
index 00000000..d02ea0ae
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-remote/.env.staging
@@ -0,0 +1,2 @@
+NODE_ENV=production
+VITE_APP_TITLE=My App (staging)
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-remote/index.html b/packages/examples/vue3-advanced-demo/router-remote/index.html
index 4c204cc4..25cb76a4 100644
--- a/packages/examples/vue3-advanced-demo/router-remote/index.html
+++ b/packages/examples/vue3-advanced-demo/router-remote/index.html
@@ -4,7 +4,7 @@
- Vite App
+ <%= title %>
diff --git a/packages/examples/vue3-advanced-demo/router-remote/package.json b/packages/examples/vue3-advanced-demo/router-remote/package.json
index 3ad00898..cfec3595 100644
--- a/packages/examples/vue3-advanced-demo/router-remote/package.json
+++ b/packages/examples/vue3-advanced-demo/router-remote/package.json
@@ -8,7 +8,9 @@
"build": "vite build",
"clean": "rm -rf dist",
"stop": "kill-port --port 5005",
- "restart": "yarn stop & yarn build & yarn serve"
+ "restart": "yarn stop & yarn build & yarn serve",
+ "staging": "vite build --mode=staging",
+ "pro": "vite build --mode=pro"
},
"dependencies": {
"echarts": "^5.2.1",
@@ -21,7 +23,9 @@
"@rollup/plugin-replace": "^3.0.0",
"@vitejs/plugin-vue": "^1.3.0",
"@vue/compiler-sfc": "^3.2.0",
+ "rollup-plugin-copy": "^3.4.0",
"unplugin-element-plus": "0.1.0",
- "vite": "^2.5.0"
+ "vite": "^2.5.0",
+ "vite-plugin-html": "^3.0.6"
}
}
diff --git a/packages/examples/vue3-advanced-demo/router-remote/public/.gitignore b/packages/examples/vue3-advanced-demo/router-remote/public/.gitignore
new file mode 100644
index 00000000..f40fe050
--- /dev/null
+++ b/packages/examples/vue3-advanced-demo/router-remote/public/.gitignore
@@ -0,0 +1 @@
+assets
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-remote/src/components/ProductList.vue b/packages/examples/vue3-advanced-demo/router-remote/src/components/ProductList.vue
index 93678418..f4418ffe 100644
--- a/packages/examples/vue3-advanced-demo/router-remote/src/components/ProductList.vue
+++ b/packages/examples/vue3-advanced-demo/router-remote/src/components/ProductList.vue
@@ -48,3 +48,8 @@ export default {
// }
}
+
\ No newline at end of file
diff --git a/packages/examples/vue3-advanced-demo/router-remote/vite.config.ts b/packages/examples/vue3-advanced-demo/router-remote/vite.config.ts
index 8e291b82..ba3085e4 100644
--- a/packages/examples/vue3-advanced-demo/router-remote/vite.config.ts
+++ b/packages/examples/vue3-advanced-demo/router-remote/vite.config.ts
@@ -1,45 +1,69 @@
-import {defineConfig} from 'vite'
+import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import federation from "@originjs/vite-plugin-federation";
import ElementPlus from 'unplugin-element-plus/vite'
-
+import copy from 'rollup-plugin-copy'
+import { createHtmlPlugin } from 'vite-plugin-html'
// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [
- // @rollup/plugin-replace 无法对打包后的代码进行 replace
- // replace({
- // 'createBaseVNode,': 'createBaseVNode,createBaseVNode as createElementVNode'
- // }),
+export default defineConfig(({ mode }) => {
+ const root = process.cwd()
+
+ const env = loadEnv(mode, root)
+ console.log(env);
+ return {
+ plugins: [
+ // @rollup/plugin-replace 无法对打包后的代码进行 replace
+ // replace({
+ // 'createBaseVNode,': 'createBaseVNode,createBaseVNode as createElementVNode'
+ // }),
- // @rollup/plugin-legacy 针对源码生成导出的,非本场景
+ // @rollup/plugin-legacy 针对源码生成导出的,非本场景
- ElementPlus(),
- vue(),
- federation({
- name: 'router-remote',
- filename: 'remoteEntry.js',
- exposes: {
- './ElementPlus': './src/components/ElementPlus.vue',
- './ElSubMenuDashboard': './src/components/ElSubMenuDashboard.vue',
- './Login': './src/views/Login.vue',
- './Footer': './src/components/Footer.vue',
- './Header': './src/components/Header.vue',
- './ProductList': './src/components/ProductList.vue',
- './ShoppingCart': './src/components/ShoppingCart.vue'
- },
- shared: ["vue", "vue-router", "element-plus", "vuex"]
- })
- ],
- build: {
- polyfillModulePreload: false,
- assetsInlineLimit: 40960,
- target: 'esnext',
- minify: false,
- cssCodeSplit: false,
- rollupOptions: {
- // external: ["vue"],
- output: {
- minifyInternalExports: false
+ ElementPlus(),
+ vue(),
+ federation({
+ name: 'router-remote',
+ filename: 'remoteEntry.js',
+ exposes: {
+ './ElementPlus': './src/components/ElementPlus.vue',
+ './ElSubMenuDashboard': './src/components/ElSubMenuDashboard.vue',
+ './Login': './src/views/Login.vue',
+ './Footer': './src/components/Footer.vue',
+ './Header': './src/components/Header.vue',
+ './ProductList': './src/components/ProductList.vue',
+ './ShoppingCart': './src/components/ShoppingCart.vue'
+ },
+ shared: ["vue", "vue-router", "element-plus", "vuex"]
+ }),
+ createHtmlPlugin({
+ inject: {
+ // Inject data into ejs template
+ data: {
+ title: env.VITE_APP_TITLE,
+ },
+ },
+ }),
+ copy({
+ targets: [
+ {
+ src: 'dist/assets',
+ dest: 'public',
+ },
+ ],
+ hook: 'writeBundle', // notice here
+ }),
+ ],
+ build: {
+ polyfillModulePreload: false,
+ assetsInlineLimit: 40960,
+ target: 'esnext',
+ minify: false,
+ cssCodeSplit: false,
+ rollupOptions: {
+ // external: ["vue"],
+ output: {
+ minifyInternalExports: false
+ }
}
}
}
diff --git a/packages/examples/vue3-demo-webpack-esm-var/home/package.json b/packages/examples/vue3-demo-webpack-esm-var/home/package.json
index 11f7854b..838deae7 100644
--- a/packages/examples/vue3-demo-webpack-esm-var/home/package.json
+++ b/packages/examples/vue3-demo-webpack-esm-var/home/package.json
@@ -1,5 +1,5 @@
{
- "name": "@vue3-demo/home",
+ "name": "@vue3-demo/home-wbp-esm-war",
"private": true,
"version": "1.0.0",
"scripts": {
diff --git a/packages/examples/vue3-demo-webpack-esm-var/layout/package.json b/packages/examples/vue3-demo-webpack-esm-var/layout/package.json
index f15889e7..daddd9e8 100644
--- a/packages/examples/vue3-demo-webpack-esm-var/layout/package.json
+++ b/packages/examples/vue3-demo-webpack-esm-var/layout/package.json
@@ -1,5 +1,5 @@
{
- "name": "@vue3-demo/layout-esm",
+ "name": "@vue3-demo/layout-wbp-esm-var",
"private": true,
"version": "1.0.0",
"scripts": {
diff --git a/packages/examples/vue3-demo-webpack-systemjs/home/package.json b/packages/examples/vue3-demo-webpack-systemjs/home/package.json
index 11f7854b..59cfce67 100644
--- a/packages/examples/vue3-demo-webpack-systemjs/home/package.json
+++ b/packages/examples/vue3-demo-webpack-systemjs/home/package.json
@@ -1,5 +1,5 @@
{
- "name": "@vue3-demo/home",
+ "name": "@vue3-demo/home-wbp-systemjs",
"private": true,
"version": "1.0.0",
"scripts": {
diff --git a/packages/examples/vue3-demo-webpack-systemjs/layout/package.json b/packages/examples/vue3-demo-webpack-systemjs/layout/package.json
index f15889e7..c86bec08 100644
--- a/packages/examples/vue3-demo-webpack-systemjs/layout/package.json
+++ b/packages/examples/vue3-demo-webpack-systemjs/layout/package.json
@@ -1,5 +1,5 @@
{
- "name": "@vue3-demo/layout-esm",
+ "name": "@vue3-demo/layout-wbp-systemjs",
"private": true,
"version": "1.0.0",
"scripts": {
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 702d1fa9..8874b693 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -351,6 +351,7 @@ importers:
'@vue/compiler-sfc': ^3.2.0
element-plus: ^1.1.0-beta.20
vite: ^2.5.0
+ vite-plugin-html: ^3.0.6
vue: ^3.2.0
vue-router: ^4.0.12
vuex: ^4.0.2
@@ -363,6 +364,7 @@ importers:
'@vitejs/plugin-vue': 1.10.1_vite@2.6.14
'@vue/compiler-sfc': 3.2.23
vite: 2.6.14
+ vite-plugin-html: 3.0.6_vite@2.6.14
packages/examples/vue3-advanced-demo/router-remote:
specifiers:
@@ -371,8 +373,10 @@ importers:
'@vue/compiler-sfc': ^3.2.0
echarts: ^5.2.1
element-plus: ^1.1.0-beta.20
+ rollup-plugin-copy: ^3.4.0
unplugin-element-plus: 0.1.0
vite: ^2.5.0
+ vite-plugin-html: ^3.0.6
vue: ^3.2.0
vue-router: ^4.0.12
vuex: ^4.0.2
@@ -386,8 +390,10 @@ importers:
'@rollup/plugin-replace': 3.0.0
'@vitejs/plugin-vue': 1.10.1_vite@2.6.14
'@vue/compiler-sfc': 3.2.23
+ rollup-plugin-copy: 3.4.0
unplugin-element-plus: 0.1.0_vite@2.6.14+vue@3.2.23
vite: 2.6.14
+ vite-plugin-html: 3.0.6_vite@2.6.14
packages/examples/vue3-demo-esm:
specifiers:
@@ -3282,6 +3288,14 @@ packages:
picomatch: 2.3.0
dev: true
+ /@rollup/pluginutils/4.1.2:
+ resolution: {integrity: sha512-ROn4qvkxP9SyPeHaf7uQC/GPFY6L/OWy9+bd9AwcjOAWQwxRscoEyAUD8qCY5o5iL4jqQwoLk2kaTKJPb/HwzQ==}
+ engines: {node: '>= 8.0.0'}
+ dependencies:
+ estree-walker: 2.0.2
+ picomatch: 2.3.0
+ dev: true
+
/@sinonjs/commons/1.8.3:
resolution: {integrity: sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==}
dependencies:
@@ -3354,6 +3368,19 @@ packages:
resolution: {integrity: sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==}
dev: true
+ /@types/fs-extra/8.1.2:
+ resolution: {integrity: sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==}
+ dependencies:
+ '@types/node': 16.11.11
+ dev: true
+
+ /@types/glob/7.2.0:
+ resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==}
+ dependencies:
+ '@types/minimatch': 3.0.5
+ '@types/node': 16.11.11
+ dev: true
+
/@types/graceful-fs/4.1.5:
resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==}
dependencies:
@@ -4325,6 +4352,10 @@ packages:
resolution: {integrity: sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ==}
dev: false
+ /async/0.9.2:
+ resolution: {integrity: sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=}
+ dev: true
+
/async/2.6.3:
resolution: {integrity: sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==}
dependencies:
@@ -5246,6 +5277,13 @@ packages:
source-map: 0.6.1
dev: true
+ /clean-css/5.2.4:
+ resolution: {integrity: sha512-nKseG8wCzEuji/4yrgM/5cthL9oTDc5UOQyFMvW/Q53oP6gLH690o1NbuTh6Y18nujr7BxlsFuS7gXLnLzKJGg==}
+ engines: {node: '>= 10.0'}
+ dependencies:
+ source-map: 0.6.1
+ dev: true
+
/clean-stack/2.2.0:
resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
engines: {node: '>=6'}
@@ -5457,6 +5495,10 @@ packages:
engines: {node: '>=0.8'}
dev: true
+ /consola/2.15.3:
+ resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==}
+ dev: true
+
/console-control-strings/1.1.0:
resolution: {integrity: sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=}
dev: true
@@ -6113,6 +6155,16 @@ packages:
is-obj: 2.0.0
dev: true
+ /dotenv-expand/8.0.1:
+ resolution: {integrity: sha512-j/Ih7bIERDR5PzI89Zu8ayd3tXZ6E3dbY0ljQ9Db0K87qBO8zdLsi2dIvDHMWtjC3Yxb8XixOTHAtia0fDHRpg==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /dotenv/16.0.0:
+ resolution: {integrity: sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==}
+ engines: {node: '>=12'}
+ dev: true
+
/duplexer/0.1.2:
resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
dev: true
@@ -6135,6 +6187,14 @@ packages:
resolution: {integrity: sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=}
dev: true
+ /ejs/3.1.6:
+ resolution: {integrity: sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==}
+ engines: {node: '>=0.10.0'}
+ hasBin: true
+ dependencies:
+ jake: 10.8.2
+ dev: true
+
/electron-to-chromium/1.4.5:
resolution: {integrity: sha512-YKaB+t8ul5crdh6OeqT2qXdxJGI0fAYb6/X8pDIyye+c3a7ndOCk5gVeKX+ABwivCGNS56vOAif3TN0qJMpEHw==}
@@ -6780,6 +6840,17 @@ packages:
/fast-deep-equal/3.1.3:
resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+ /fast-glob/3.2.11:
+ resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==}
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.4
+ dev: true
+
/fast-glob/3.2.7:
resolution: {integrity: sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==}
engines: {node: '>=8'}
@@ -6857,6 +6928,12 @@ packages:
webpack: 5.58.0_webpack-cli@4.8.0
dev: true
+ /filelist/1.0.2:
+ resolution: {integrity: sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==}
+ dependencies:
+ minimatch: 3.0.4
+ dev: true
+
/fill-range/7.0.1:
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
engines: {node: '>=8'}
@@ -6971,6 +7048,15 @@ packages:
universalify: 2.0.0
dev: true
+ /fs-extra/8.1.0:
+ resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
+ engines: {node: '>=6 <7 || >=8'}
+ dependencies:
+ graceful-fs: 4.2.8
+ jsonfile: 4.0.0
+ universalify: 0.1.2
+ dev: true
+
/fs-extra/9.1.0:
resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
engines: {node: '>=10'}
@@ -7205,6 +7291,20 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /globby/10.0.1:
+ resolution: {integrity: sha512-sSs4inE1FB2YQiymcmTv6NWENryABjUNPeWhOvmn4SjtKybglsyPZxFB3U1/+L1bYi0rNZDqCLlHyLYDl1Pq5A==}
+ engines: {node: '>=8'}
+ dependencies:
+ '@types/glob': 7.2.0
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.2.7
+ glob: 7.2.0
+ ignore: 5.1.9
+ merge2: 1.4.1
+ slash: 3.0.0
+ dev: true
+
/globby/11.0.4:
resolution: {integrity: sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==}
engines: {node: '>=10'}
@@ -7360,6 +7460,22 @@ packages:
terser: 4.8.0
dev: true
+ /html-minifier-terser/6.1.0:
+ resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==}
+ engines: {node: '>=12'}
+ hasBin: true
+ dependencies:
+ camel-case: 4.1.2
+ clean-css: 5.2.4
+ commander: 8.3.0
+ he: 1.2.0
+ param-case: 3.0.4
+ relateurl: 0.2.7
+ terser: 5.10.0
+ transitivePeerDependencies:
+ - acorn
+ dev: true
+
/html-tags/2.0.0:
resolution: {integrity: sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=}
engines: {node: '>=4'}
@@ -7868,6 +7984,11 @@ packages:
isobject: 3.0.1
dev: true
+ /is-plain-object/3.0.1:
+ resolution: {integrity: sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
/is-plain-object/5.0.0:
resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
engines: {node: '>=0.10.0'}
@@ -8026,6 +8147,16 @@ packages:
istanbul-lib-report: 3.0.0
dev: true
+ /jake/10.8.2:
+ resolution: {integrity: sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==}
+ hasBin: true
+ dependencies:
+ async: 0.9.2
+ chalk: 2.4.2
+ filelist: 1.0.2
+ minimatch: 3.0.4
+ dev: true
+
/jest-changed-files/27.4.0:
resolution: {integrity: sha512-TacYni8ZumaB10L/fGRH92MbLYkn+MF2KtgHeAOcwnOzfmt+S6CDmJeslZuLOpnRUQKkV/Vr4qPAlrBTE5r67A==}
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
@@ -8614,6 +8745,12 @@ packages:
dependencies:
minimist: 1.2.5
+ /jsonfile/4.0.0:
+ resolution: {integrity: sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=}
+ optionalDependencies:
+ graceful-fs: 4.2.8
+ dev: true
+
/jsonfile/6.1.0:
resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
dependencies:
@@ -9361,6 +9498,13 @@ packages:
which: 2.0.2
dev: true
+ /node-html-parser/5.2.0:
+ resolution: {integrity: sha512-fmiwLfQu+J2A0zjwSEkztSHexAf5qq/WoiL/Hgo1K7JpfEP+OGWY5maG0kGaM+IFVdixF/1QbyXaQ3h4cGfeLw==}
+ dependencies:
+ css-select: 4.1.3
+ he: 1.2.0
+ dev: true
+
/node-int64/0.4.0:
resolution: {integrity: sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=}
dev: true
@@ -9940,6 +10084,10 @@ packages:
engines: {node: '>=8'}
dev: true
+ /pathe/0.2.0:
+ resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==}
+ dev: true
+
/pend/1.2.0:
resolution: {integrity: sha1-elfrVQpng/kRUzH89GY9XI4AelA=}
dev: true
@@ -10806,6 +10954,17 @@ packages:
glob: 7.2.0
dev: true
+ /rollup-plugin-copy/3.4.0:
+ resolution: {integrity: sha512-rGUmYYsYsceRJRqLVlE9FivJMxJ7X6jDlP79fmFkL8sJs7VVMSVyA2yfyL+PGyO/vJs4A87hwhgVfz61njI+uQ==}
+ engines: {node: '>=8.3'}
+ dependencies:
+ '@types/fs-extra': 8.1.2
+ colorette: 1.4.0
+ fs-extra: 8.1.0
+ globby: 10.0.1
+ is-plain-object: 3.0.1
+ dev: true
+
/rollup/2.60.2:
resolution: {integrity: sha512-1Bgjpq61sPjgoZzuiDSGvbI1tD91giZABgjCQBKM5aYLnzjq52GoDuWVwT/cm/MCxCMPU8gqQvkj8doQ5C8Oqw==}
engines: {node: '>=10.0.0'}
@@ -11615,6 +11774,21 @@ packages:
source-map-support: 0.5.21
dev: true
+ /terser/5.10.0:
+ resolution: {integrity: sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==}
+ engines: {node: '>=10'}
+ hasBin: true
+ peerDependencies:
+ acorn: ^8.5.0
+ peerDependenciesMeta:
+ acorn:
+ optional: true
+ dependencies:
+ commander: 2.20.3
+ source-map: 0.7.3
+ source-map-support: 0.5.21
+ dev: true
+
/terser/5.10.0_acorn@8.6.0:
resolution: {integrity: sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==}
engines: {node: '>=10'}
@@ -12107,6 +12281,28 @@ packages:
extsprintf: 1.3.0
dev: true
+ /vite-plugin-html/3.0.6_vite@2.6.14:
+ resolution: {integrity: sha512-B6ZAufvqUqdfPhcV+El8NNI3qV0d3ZntIur2UnP4tcHBV/O2d+6wHF79bJWuqR4WsvmsV7dejCNS3rAYFCisWw==}
+ peerDependencies:
+ vite: '>=2.0.0'
+ dependencies:
+ '@rollup/pluginutils': 4.1.2
+ colorette: 2.0.16
+ connect-history-api-fallback: 1.6.0
+ consola: 2.15.3
+ dotenv: 16.0.0
+ dotenv-expand: 8.0.1
+ ejs: 3.1.6
+ fast-glob: 3.2.11
+ fs-extra: 10.0.0
+ html-minifier-terser: 6.1.0
+ node-html-parser: 5.2.0
+ pathe: 0.2.0
+ vite: 2.6.14
+ transitivePeerDependencies:
+ - acorn
+ dev: true
+
/vite-plugin-vue2/1.9.0_cd1846aafe4c35f31c699104ee2df148:
resolution: {integrity: sha512-4vmcoiOmOTGjRnA0hk8tHYqk96ZxRpe4AmeCqJJ8jQuNo+SDF1zXPyhxAUIK1tuK354No77WVHHIimVvZQuvIA==}
peerDependencies: