Browse Source

chore: format code

Vben 4 years ago
parent
commit
3576d0b512

+ 0 - 16
build/vite/alias.ts

@@ -1,16 +0,0 @@
-import { resolve } from 'path';
-import type { Alias } from 'vite';
-
-function pathResolve(dir: string) {
-  return resolve(process.cwd(), '.', dir);
-}
-
-export function createAlias(alias: [string, string][]): Alias[] {
-  return alias.map((item) => {
-    const [alia, src] = item;
-    return {
-      find: new RegExp(alia),
-      replacement: pathResolve(src) + '/',
-    };
-  });
-}

+ 7 - 7
package.json

@@ -49,7 +49,7 @@
     "sortablejs": "^1.13.0",
     "sortablejs": "^1.13.0",
     "tinymce": "^5.7.1",
     "tinymce": "^5.7.1",
     "vditor": "^3.8.4",
     "vditor": "^3.8.4",
-    "vue": "3.0.10",
+    "vue": "3.0.11",
     "vue-i18n": "^9.0.0",
     "vue-i18n": "^9.0.0",
     "vue-router": "^4.0.5",
     "vue-router": "^4.0.5",
     "vue-types": "^3.0.2",
     "vue-types": "^3.0.2",
@@ -58,8 +58,8 @@
     "xlsx": "^0.16.9"
     "xlsx": "^0.16.9"
   },
   },
   "devDependencies": {
   "devDependencies": {
-    "@commitlint/cli": "^12.0.1",
+    "@commitlint/cli": "^12.1.1",
-    "@commitlint/config-conventional": "^12.0.1",
+    "@commitlint/config-conventional": "^12.1.1",
     "@iconify/json": "^1.1.323",
     "@iconify/json": "^1.1.323",
     "@purge-icons/generated": "^0.7.0",
     "@purge-icons/generated": "^0.7.0",
     "@types/crypto-js": "^4.0.1",
     "@types/crypto-js": "^4.0.1",
@@ -76,7 +76,7 @@
     "@vitejs/plugin-legacy": "^1.3.2",
     "@vitejs/plugin-legacy": "^1.3.2",
     "@vitejs/plugin-vue": "^1.2.1",
     "@vitejs/plugin-vue": "^1.2.1",
     "@vitejs/plugin-vue-jsx": "^1.1.3",
     "@vitejs/plugin-vue-jsx": "^1.1.3",
-    "@vue/compiler-sfc": "3.0.10",
+    "@vue/compiler-sfc": "3.0.11",
     "autoprefixer": "^10.2.5",
     "autoprefixer": "^10.2.5",
     "commitizen": "^4.2.3",
     "commitizen": "^4.2.3",
     "conventional-changelog-cli": "^2.1.1",
     "conventional-changelog-cli": "^2.1.1",
@@ -84,7 +84,7 @@
     "dotenv": "^8.2.0",
     "dotenv": "^8.2.0",
     "eslint": "^7.23.0",
     "eslint": "^7.23.0",
     "eslint-config-prettier": "^8.1.0",
     "eslint-config-prettier": "^8.1.0",
-    "eslint-define-config": "^1.0.6",
+    "eslint-define-config": "^1.0.7",
     "eslint-plugin-prettier": "^3.3.1",
     "eslint-plugin-prettier": "^3.3.1",
     "eslint-plugin-vue": "^7.8.0",
     "eslint-plugin-vue": "^7.8.0",
     "esno": "^0.5.0",
     "esno": "^0.5.0",
@@ -99,7 +99,7 @@
     "prettier": "^2.2.1",
     "prettier": "^2.2.1",
     "pretty-quick": "^3.1.0",
     "pretty-quick": "^3.1.0",
     "rimraf": "^3.0.2",
     "rimraf": "^3.0.2",
-    "rollup-plugin-visualizer": "5.0.4",
+    "rollup-plugin-visualizer": "5.2.1",
     "stylelint": "^13.12.0",
     "stylelint": "^13.12.0",
     "stylelint-config-prettier": "^8.0.2",
     "stylelint-config-prettier": "^8.0.2",
     "stylelint-config-standard": "^21.0.0",
     "stylelint-config-standard": "^21.0.0",
@@ -116,7 +116,7 @@
     "vite-plugin-style-import": "^0.9.1",
     "vite-plugin-style-import": "^0.9.1",
     "vite-plugin-svg-icons": "^0.4.0",
     "vite-plugin-svg-icons": "^0.4.0",
     "vite-plugin-theme": "^0.5.0",
     "vite-plugin-theme": "^0.5.0",
-    "vite-plugin-windicss": "0.11.4",
+    "vite-plugin-windicss": "0.12.1",
     "vue-eslint-parser": "^7.6.0"
     "vue-eslint-parser": "^7.6.0"
   },
   },
   "resolutions": {
   "resolutions": {

+ 2 - 0
src/components/Button/src/PopConfirmButton.vue

@@ -36,9 +36,11 @@
         );
         );
         return popValues;
         return popValues;
       });
       });
+
       return () => {
       return () => {
         const values = omit(unref(getBindValues), 'icon');
         const values = omit(unref(getBindValues), 'icon');
         const Button = h(BasicButton, values, extendSlots(slots));
         const Button = h(BasicButton, values, extendSlots(slots));
+
         if (!props.enable) {
         if (!props.enable) {
           return Button;
           return Button;
         }
         }

+ 1 - 1
src/components/Container/src/LazyContainer.vue

@@ -64,7 +64,7 @@
     },
     },
     emits: ['init'],
     emits: ['init'],
     setup(props, { emit }) {
     setup(props, { emit }) {
-      const elRef = ref<any>(null);
+      const elRef = ref();
       const state = reactive<State>({
       const state = reactive<State>({
         isInit: false,
         isInit: false,
         loading: false,
         loading: false,

+ 19 - 5
src/components/Cropper/src/index.vue

@@ -1,6 +1,13 @@
 <template>
 <template>
-  <div :class="$attrs.class" :style="$attrs.style">
+  <div :class="$attrs.class" :style="getWrapperStyle">
-    <img ref="imgElRef" :src="src" :alt="alt" :crossorigin="crossorigin" :style="getImageStyle" />
+    <img
+      v-show="isReady"
+      ref="imgElRef"
+      :src="src"
+      :alt="alt"
+      :crossorigin="crossorigin"
+      :style="getImageStyle"
+    />
   </div>
   </div>
 </template>
 </template>
 <script lang="ts">
 <script lang="ts">
@@ -46,8 +53,8 @@
         type: String,
         type: String,
       },
       },
       height: {
       height: {
-        type: String,
+        type: [String, Number],
-        default: '500px',
+        default: '360px',
       },
       },
       crossorigin: {
       crossorigin: {
         type: String,
         type: String,
@@ -78,6 +85,13 @@
         }
         }
       );
       );
 
 
+      const getWrapperStyle = computed(
+        (): CSSProperties => {
+          const { height } = props;
+          return { height: `${height}`.replace(/px/, '') + 'px' };
+        }
+      );
+
       async function init() {
       async function init() {
         const imgEl = unref(imgElRef);
         const imgEl = unref(imgElRef);
         if (!imgEl) {
         if (!imgEl) {
@@ -94,7 +108,7 @@
 
 
       onMounted(init);
       onMounted(init);
 
 
-      return { imgElRef, getImageStyle, isReady };
+      return { imgElRef, getWrapperStyle, getImageStyle, isReady };
     },
     },
   });
   });
 </script>
 </script>

+ 2 - 2
src/components/Scrollbar/src/bar.ts

@@ -23,13 +23,13 @@ export default defineComponent({
 
 
   setup(props) {
   setup(props) {
     const instance = getCurrentInstance();
     const instance = getCurrentInstance();
-    const thumb = ref<any>(null);
+    const thumb = ref();
     const wrap = inject('scroll-bar-wrap', {} as Ref<Nullable<HTMLElement>>) as any;
     const wrap = inject('scroll-bar-wrap', {} as Ref<Nullable<HTMLElement>>) as any;
     const bar = computed(() => {
     const bar = computed(() => {
       return BAR_MAP[props.vertical ? 'vertical' : 'horizontal'];
       return BAR_MAP[props.vertical ? 'vertical' : 'horizontal'];
     });
     });
     const barStore = ref<Recordable>({});
     const barStore = ref<Recordable>({});
-    const cursorDown = ref<any>(null);
+    const cursorDown = ref();
     const clickThumbHandler = (e: any) => {
     const clickThumbHandler = (e: any) => {
       // prevent click event of right button
       // prevent click event of right button
       if (e.ctrlKey || e.button === 2) {
       if (e.ctrlKey || e.button === 2) {

+ 2 - 2
src/components/Scrollbar/src/index.vue

@@ -69,8 +69,8 @@
       const sizeHeight = ref('0');
       const sizeHeight = ref('0');
       const moveX = ref(0);
       const moveX = ref(0);
       const moveY = ref(0);
       const moveY = ref(0);
-      const wrap = ref<any>(null);
+      const wrap = ref();
-      const resize = ref<any>(null);
+      const resize = ref();
 
 
       provide('scroll-bar-wrap', wrap);
       provide('scroll-bar-wrap', wrap);
 
 

+ 1 - 1
src/components/Table/src/components/editable/EditableCell.vue

@@ -67,7 +67,7 @@
     setup(props) {
     setup(props) {
       const table = useTableContext();
       const table = useTableContext();
       const isEdit = ref(false);
       const isEdit = ref(false);
-      const elRef = ref<any>(null);
+      const elRef = ref();
       const ruleVisible = ref(false);
       const ruleVisible = ref(false);
       const ruleMessage = ref('');
       const ruleMessage = ref('');
       const optionsRef = ref<LabelValueOptions>([]);
       const optionsRef = ref<LabelValueOptions>([]);

+ 19 - 54
src/components/Tinymce/src/Editor.vue

@@ -23,56 +23,16 @@
     onDeactivated,
     onDeactivated,
   } from 'vue';
   } from 'vue';
 
 
-  import tinymce from 'tinymce/tinymce';
+  import ImgUpload from './ImgUpload.vue';
-  import 'tinymce/skins/ui/oxide/skin.min.css';
-  import 'tinymce/themes/silver';
 
 
-  import toolbar from './toolbar';
+  import { tinymce, toolbar, plugins } from './tinymce';
-  import plugins from './plugins';
 
 
   import { buildShortUUID } from '/@/utils/uuid';
   import { buildShortUUID } from '/@/utils/uuid';
   import { bindHandlers } from './helper';
   import { bindHandlers } from './helper';
   import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated';
   import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated';
-  import ImgUpload from './ImgUpload.vue';
   import { useDesign } from '/@/hooks/web/useDesign';
   import { useDesign } from '/@/hooks/web/useDesign';
   import { isNumber } from '/@/utils/is';
   import { isNumber } from '/@/utils/is';
 
 
-  import 'tinymce/icons/default/icons';
-  import 'tinymce/themes/mobile';
-  import 'tinymce/plugins/emoticons';
-  import 'tinymce/plugins/emoticons/js/emojis';
-  import 'tinymce/plugins/advlist';
-  import 'tinymce/plugins/anchor';
-  import 'tinymce/plugins/autolink';
-  import 'tinymce/plugins/autosave';
-  import 'tinymce/plugins/code';
-  import 'tinymce/plugins/codesample';
-  import 'tinymce/plugins/directionality';
-  import 'tinymce/plugins/fullscreen';
-  import 'tinymce/plugins/hr';
-  import 'tinymce/plugins/image';
-  import 'tinymce/plugins/imagetools';
-  import 'tinymce/plugins/insertdatetime';
-  import 'tinymce/plugins/link';
-  import 'tinymce/plugins/lists';
-  import 'tinymce/plugins/media';
-  import 'tinymce/plugins/nonbreaking';
-  import 'tinymce/plugins/noneditable';
-  import 'tinymce/plugins/pagebreak';
-  import 'tinymce/plugins/paste';
-  import 'tinymce/plugins/preview';
-  import 'tinymce/plugins/print';
-  import 'tinymce/plugins/save';
-  import 'tinymce/plugins/searchreplace';
-  import 'tinymce/plugins/spellchecker';
-  import 'tinymce/plugins/tabfocus';
-  import 'tinymce/plugins/table';
-  import 'tinymce/plugins/template';
-  import 'tinymce/plugins/textpattern';
-  import 'tinymce/plugins/visualblocks';
-  import 'tinymce/plugins/visualchars';
-  import 'tinymce/plugins/wordcount';
-
   const tinymceProps = {
   const tinymceProps = {
     options: {
     options: {
       type: Object as PropType<any>,
       type: Object as PropType<any>,
@@ -117,16 +77,14 @@
     props: tinymceProps,
     props: tinymceProps,
     emits: ['change', 'update:modelValue'],
     emits: ['change', 'update:modelValue'],
     setup(props, { emit, attrs }) {
     setup(props, { emit, attrs }) {
-      const editorRef = ref<any>(null);
+      const editorRef = ref();
       const fullscreen = ref(false);
       const fullscreen = ref(false);
       const tinymceId = ref<string>(buildShortUUID('tiny-vue'));
       const tinymceId = ref<string>(buildShortUUID('tiny-vue'));
       const elRef = ref<Nullable<HTMLElement>>(null);
       const elRef = ref<Nullable<HTMLElement>>(null);
 
 
       const { prefixCls } = useDesign('tinymce-container');
       const { prefixCls } = useDesign('tinymce-container');
 
 
-      const tinymceContent = computed(() => {
+      const tinymceContent = computed(() => props.modelValue);
-        return props.modelValue;
-      });
 
 
       const containerWidth = computed(() => {
       const containerWidth = computed(() => {
         const width = props.width;
         const width = props.width;
@@ -167,7 +125,9 @@
         () => attrs.disabled,
         () => attrs.disabled,
         () => {
         () => {
           const editor = unref(editorRef);
           const editor = unref(editorRef);
-          if (!editor) return;
+          if (!editor) {
+            return;
+          }
           editor.setMode(attrs.disabled ? 'readonly' : 'design');
           editor.setMode(attrs.disabled ? 'readonly' : 'design');
         }
         }
       );
       );
@@ -205,7 +165,9 @@
 
 
       function initSetup(e: Event) {
       function initSetup(e: Event) {
         const editor = unref(editorRef);
         const editor = unref(editorRef);
-        if (!editor) return;
+        if (!editor) {
+          return;
+        }
         const value = props.modelValue || '';
         const value = props.modelValue || '';
 
 
         editor.setContent(value);
         editor.setContent(value);
@@ -258,21 +220,24 @@
 
 
       function handleImageUploading(name: string) {
       function handleImageUploading(name: string) {
         const editor = unref(editorRef);
         const editor = unref(editorRef);
-        if (!editor) return;
+        if (!editor) {
+          return;
+        }
         const content = editor?.getContent() ?? '';
         const content = editor?.getContent() ?? '';
-        setValue(editor, `${content}\n${getImgName(name)}`);
+        setValue(editor, `${content}\n${getUploadingImgName(name)}`);
       }
       }
 
 
       function handleDone(name: string, url: string) {
       function handleDone(name: string, url: string) {
         const editor = unref(editorRef);
         const editor = unref(editorRef);
-        if (!editor) return;
+        if (!editor) {
-
+          return;
+        }
         const content = editor?.getContent() ?? '';
         const content = editor?.getContent() ?? '';
-        const val = content?.replace(getImgName(name), `<img src="${url}"/>`) ?? '';
+        const val = content?.replace(getUploadingImgName(name), `<img src="${url}"/>`) ?? '';
         setValue(editor, val);
         setValue(editor, val);
       }
       }
 
 
-      function getImgName(name: string) {
+      function getUploadingImgName(name: string) {
         return `[uploading:${name}]`;
         return `[uploading:${name}]`;
       }
       }
 
 

+ 1 - 0
src/components/Tinymce/src/ImgUpload.vue

@@ -37,6 +37,7 @@
       const { uploadUrl } = useGlobSetting();
       const { uploadUrl } = useGlobSetting();
       const { t } = useI18n();
       const { t } = useI18n();
       const { prefixCls } = useDesign('tinymce-img-upload');
       const { prefixCls } = useDesign('tinymce-img-upload');
+
       function handleChange(info: Recordable) {
       function handleChange(info: Recordable) {
         const file = info.file;
         const file = info.file;
         const status = file?.status;
         const status = file?.status;

+ 0 - 10
src/components/Tinymce/src/plugins.ts

@@ -1,10 +0,0 @@
-// Any plugins you want to setting has to be imported
-// Detail plugins list see https://www.tinymce.com/docs/plugins/
-// Custom builds see https://www.tinymce.com/download/custom-builds/
-// colorpicker/contextmenu/textcolor plugin is now built in to the core editor, please remove it from your editor configuration
-
-const plugins = [
-  'advlist anchor autolink autosave code codesample  directionality emoticons fullscreen hr image imagetools insertdatetime link lists media nonbreaking noneditable pagebreak paste preview print save searchreplace spellchecker tabfocus table template  textpattern visualblocks visualchars wordcount',
-];
-
-export default plugins;

+ 55 - 0
src/components/Tinymce/src/tinymce.ts

@@ -0,0 +1,55 @@
+import tinymce from 'tinymce/tinymce';
+import 'tinymce/skins/ui/oxide/skin.min.css';
+import 'tinymce/themes/silver';
+
+import 'tinymce/icons/default/icons';
+import 'tinymce/themes/mobile';
+import 'tinymce/plugins/emoticons';
+import 'tinymce/plugins/emoticons/js/emojis';
+import 'tinymce/plugins/advlist';
+import 'tinymce/plugins/anchor';
+import 'tinymce/plugins/autolink';
+import 'tinymce/plugins/autosave';
+import 'tinymce/plugins/code';
+import 'tinymce/plugins/codesample';
+import 'tinymce/plugins/directionality';
+import 'tinymce/plugins/fullscreen';
+import 'tinymce/plugins/hr';
+import 'tinymce/plugins/image';
+import 'tinymce/plugins/imagetools';
+import 'tinymce/plugins/insertdatetime';
+import 'tinymce/plugins/link';
+import 'tinymce/plugins/lists';
+import 'tinymce/plugins/media';
+import 'tinymce/plugins/nonbreaking';
+import 'tinymce/plugins/noneditable';
+import 'tinymce/plugins/pagebreak';
+import 'tinymce/plugins/paste';
+import 'tinymce/plugins/preview';
+import 'tinymce/plugins/print';
+import 'tinymce/plugins/save';
+import 'tinymce/plugins/searchreplace';
+import 'tinymce/plugins/spellchecker';
+import 'tinymce/plugins/tabfocus';
+import 'tinymce/plugins/table';
+import 'tinymce/plugins/template';
+import 'tinymce/plugins/textpattern';
+import 'tinymce/plugins/visualblocks';
+import 'tinymce/plugins/visualchars';
+import 'tinymce/plugins/wordcount';
+
+// Any plugins you want to setting has to be imported
+// Detail plugins list see https://www.tinymce.com/docs/plugins/
+// Custom builds see https://www.tinymce.com/download/custom-builds/
+// colorpicker/contextmenu/textcolor plugin is now built in to the core editor, please remove it from your editor configuration
+
+export const plugins = [
+  'advlist anchor autolink autosave code codesample  directionality emoticons fullscreen hr image imagetools insertdatetime link lists media nonbreaking noneditable pagebreak paste preview print save searchreplace spellchecker tabfocus table template  textpattern visualblocks visualchars wordcount',
+];
+
+export const toolbar = [
+  'fontsizeselect lineheight searchreplace bold italic underline strikethrough alignleft aligncenter alignright outdent indent  blockquote undo redo removeformat subscript superscript code codesample',
+  'hr bullist numlist link image charmap preview anchor pagebreak insertdatetime media table emoticons forecolor backcolor fullscreen',
+];
+
+export { tinymce };

+ 0 - 9
src/components/Tinymce/src/toolbar.ts

@@ -1,9 +0,0 @@
-// Here is a list of the toolbar
-// Detail list see https://www.tinymce.com/docs/advanced/editor-control-identifiers/#toolbarcontrols
-
-const toolbar = [
-  'fontsizeselect lineheight searchreplace bold italic underline strikethrough alignleft aligncenter alignright outdent indent  blockquote undo redo removeformat subscript superscript code codesample',
-  'hr bullist numlist link image charmap preview anchor pagebreak insertdatetime media table emoticons forecolor backcolor fullscreen',
-];
-
-export default toolbar;

+ 1 - 1
src/views/sys/login/ForgetPasswordForm.vue

@@ -57,7 +57,7 @@
       const { handleBackLogin, getLoginState } = useLoginState();
       const { handleBackLogin, getLoginState } = useLoginState();
       const { getFormRules } = useFormRules();
       const { getFormRules } = useFormRules();
 
 
-      const formRef = ref<any>(null);
+      const formRef = ref();
       const loading = ref(false);
       const loading = ref(false);
 
 
       const formData = reactive({
       const formData = reactive({

+ 1 - 1
src/views/sys/login/LoginForm.vue

@@ -118,7 +118,7 @@
       const { setLoginState, getLoginState } = useLoginState();
       const { setLoginState, getLoginState } = useLoginState();
       const { getFormRules } = useFormRules();
       const { getFormRules } = useFormRules();
 
 
-      const formRef = ref<any>(null);
+      const formRef = ref();
       const loading = ref(false);
       const loading = ref(false);
       const rememberMe = ref(false);
       const rememberMe = ref(false);
 
 

+ 1 - 1
src/views/sys/login/MobileForm.vue

@@ -49,7 +49,7 @@
       const { handleBackLogin, getLoginState } = useLoginState();
       const { handleBackLogin, getLoginState } = useLoginState();
       const { getFormRules } = useFormRules();
       const { getFormRules } = useFormRules();
 
 
-      const formRef = ref<any>(null);
+      const formRef = ref();
       const loading = ref(false);
       const loading = ref(false);
 
 
       const formData = reactive({
       const formData = reactive({

+ 1 - 1
src/views/sys/login/RegisterForm.vue

@@ -86,7 +86,7 @@
       const { t } = useI18n();
       const { t } = useI18n();
       const { handleBackLogin, getLoginState } = useLoginState();
       const { handleBackLogin, getLoginState } = useLoginState();
 
 
-      const formRef = ref<any>(null);
+      const formRef = ref();
       const loading = ref(false);
       const loading = ref(false);
 
 
       const formData = reactive({
       const formData = reactive({

+ 2 - 1
tsconfig.json

@@ -36,7 +36,8 @@
     "types/**/*.ts",
     "types/**/*.ts",
     "build/**/*.ts",
     "build/**/*.ts",
     "build/**/*.d.ts",
     "build/**/*.d.ts",
-    "mock/**/*.ts"
+    "mock/**/*.ts",
+    "vite.config.ts"
   ],
   ],
   "exclude": ["node_modules", "dist", "**/*.js"]
   "exclude": ["node_modules", "dist", "**/*.js"]
 }
 }

+ 15 - 5
vite.config.ts

@@ -5,13 +5,16 @@ import { resolve } from 'path';
 
 
 import { generateModifyVars } from './build/config/themeConfig';
 import { generateModifyVars } from './build/config/themeConfig';
 import { createProxy } from './build/vite/proxy';
 import { createProxy } from './build/vite/proxy';
-import { createAlias } from './build/vite/alias';
 import { wrapperEnv } from './build/utils';
 import { wrapperEnv } from './build/utils';
 import { createVitePlugins } from './build/vite/plugin';
 import { createVitePlugins } from './build/vite/plugin';
 import { OUTPUT_DIR } from './build/constant';
 import { OUTPUT_DIR } from './build/constant';
 import pkg from './package.json';
 import pkg from './package.json';
 import moment from 'moment';
 import moment from 'moment';
 
 
+function pathResolve(dir: string) {
+  return resolve(process.cwd(), '.', dir);
+}
+
 const { dependencies, devDependencies, name, version } = pkg;
 const { dependencies, devDependencies, name, version } = pkg;
 const __APP_INFO__ = {
 const __APP_INFO__ = {
   pkg: { dependencies, devDependencies, name, version },
   pkg: { dependencies, devDependencies, name, version },
@@ -34,12 +37,19 @@ export default ({ command, mode }: ConfigEnv): UserConfig => {
     base: VITE_PUBLIC_PATH,
     base: VITE_PUBLIC_PATH,
     root,
     root,
     resolve: {
     resolve: {
-      alias: createAlias([
+      alias: [
         // /@/xxxx => src/xxxx
         // /@/xxxx => src/xxxx
-        ['/@/', 'src'],
+        {
+          find: /\/@\//,
+          replacement: pathResolve('src') + '/',
+        },
         // /#/xxxx => types/xxxx
         // /#/xxxx => types/xxxx
-        ['/#/', 'types'],
+        {
-      ]),
+          find: /\/#\//,
+          replacement: pathResolve('types') + '/',
+        },
+        // ['@vue/compiler-sfc', '@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js'],
+      ],
     },
     },
     server: {
     server: {
       port: VITE_PORT,
       port: VITE_PORT,

+ 234 - 32
yarn.lock

@@ -934,6 +934,22 @@
     resolve-global "1.0.0"
     resolve-global "1.0.0"
     yargs "^16.2.0"
     yargs "^16.2.0"
 
 
+"@commitlint/cli@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-12.1.1.tgz#740370e557a8a17f415052821cdd5276ecb0ab98"
+  integrity sha512-SB67/s6VJ50seoPx/Sr2gj1fMzKrx+udgarecGdr8h43ah+M2e22gjQJ7xHv5KwyPQ+6ug1YOMCL34ubT4zupQ==
+  dependencies:
+    "@commitlint/format" "^12.1.1"
+    "@commitlint/lint" "^12.1.1"
+    "@commitlint/load" "^12.1.1"
+    "@commitlint/read" "^12.1.1"
+    "@commitlint/types" "^12.1.1"
+    get-stdin "8.0.0"
+    lodash "^4.17.19"
+    resolve-from "5.0.0"
+    resolve-global "1.0.0"
+    yargs "^16.2.0"
+
 "@commitlint/config-conventional@^12.0.1":
 "@commitlint/config-conventional@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.0.1.tgz#7bf3bbf68bda967c5165135ebe8f2055decf1a83"
   resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.0.1.tgz#7bf3bbf68bda967c5165135ebe8f2055decf1a83"
@@ -941,6 +957,13 @@
   dependencies:
   dependencies:
     conventional-changelog-conventionalcommits "^4.3.1"
     conventional-changelog-conventionalcommits "^4.3.1"
 
 
+"@commitlint/config-conventional@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.1.1.tgz#73dd3b1a7912138420d248f334f15c94c250bc9e"
+  integrity sha512-15CqbXMsQiEb0qbzjEHe2OkzaXPYSp7RxaS6KoSVk/4W0QiigquavQ+M0huBZze92h0lMS6Pxoq4AJ5CQ3D+iQ==
+  dependencies:
+    conventional-changelog-conventionalcommits "^4.3.1"
+
 "@commitlint/ensure@^12.0.1":
 "@commitlint/ensure@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.0.1.tgz#0ed5e997026db25eb080559b6e67f55a21eea080"
   resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.0.1.tgz#0ed5e997026db25eb080559b6e67f55a21eea080"
@@ -949,11 +972,24 @@
     "@commitlint/types" "^12.0.1"
     "@commitlint/types" "^12.0.1"
     lodash "^4.17.19"
     lodash "^4.17.19"
 
 
+"@commitlint/ensure@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.1.1.tgz#bcefc85f7f8a41bb31f67d7a8966e322b47a6e43"
+  integrity sha512-XEUQvUjzBVQM7Uv8vYz+c7PDukFvx0AvQEyX/V+PaTkCK/xPvexu7FLbFwvypjSt9BPMf+T/rhB1hVmldkd6lw==
+  dependencies:
+    "@commitlint/types" "^12.1.1"
+    lodash "^4.17.19"
+
 "@commitlint/execute-rule@^12.0.1":
 "@commitlint/execute-rule@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.0.1.tgz#5bb2eba929270cafb2bd8191799d8b451de7fb7e"
   resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.0.1.tgz#5bb2eba929270cafb2bd8191799d8b451de7fb7e"
   integrity sha512-JzyweYfZlFLtXpgP+btzSY3YAkGPg61TqUSYQqBr4+5IaVf1FruMm5v4D5eLu9dAJuNKUfHbM3AEfuEPiZ79pg==
   integrity sha512-JzyweYfZlFLtXpgP+btzSY3YAkGPg61TqUSYQqBr4+5IaVf1FruMm5v4D5eLu9dAJuNKUfHbM3AEfuEPiZ79pg==
 
 
+"@commitlint/execute-rule@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.1.1.tgz#8aad1d46fb78b3199e4ae36debdc93570bf765ea"
+  integrity sha512-6mplMGvLCKF5LieL7BRhydpg32tm6LICnWQADrWU4S5g9PKi2utNvhiaiuNPoHUXr29RdbNaGNcyyPv8DSjJsQ==
+
 "@commitlint/format@^12.0.1":
 "@commitlint/format@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/format/-/format-12.0.1.tgz#5164e5a9e8592c1983482cbd71e7ea86a645ff1b"
   resolved "https://registry.npmjs.org/@commitlint/format/-/format-12.0.1.tgz#5164e5a9e8592c1983482cbd71e7ea86a645ff1b"
@@ -962,6 +998,14 @@
     "@commitlint/types" "^12.0.1"
     "@commitlint/types" "^12.0.1"
     chalk "^4.0.0"
     chalk "^4.0.0"
 
 
+"@commitlint/format@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/format/-/format-12.1.1.tgz#a6b14f8605171374eecc2c463098d63c127ab7df"
+  integrity sha512-bTAoOryTFLqls17JTaRwk2WDVOP0NwuG4F/JPK8RaF6DMZNVQTfajkgTxFENNZRnESfau1BvivvEXfUAW2ZsvA==
+  dependencies:
+    "@commitlint/types" "^12.1.1"
+    chalk "^4.0.0"
+
 "@commitlint/is-ignored@^12.0.1":
 "@commitlint/is-ignored@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.0.1.tgz#0e59b0524e16300b1d9d62f8c138f083f22ebf9a"
   resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.0.1.tgz#0e59b0524e16300b1d9d62f8c138f083f22ebf9a"
@@ -970,6 +1014,14 @@
     "@commitlint/types" "^12.0.1"
     "@commitlint/types" "^12.0.1"
     semver "7.3.4"
     semver "7.3.4"
 
 
+"@commitlint/is-ignored@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.1.1.tgz#6075a5cd2dcda7b6ec93322f5dbe2142cfbb3248"
+  integrity sha512-Sn4fsnWX+wLAJOD/UZeoVruB98te1TyPYRiDEq0MhRJAQIrP+7jE/O3/ass68AAMq00HvH3OK9kt4UBXggcGjA==
+  dependencies:
+    "@commitlint/types" "^12.1.1"
+    semver "7.3.5"
+
 "@commitlint/lint@^12.0.1":
 "@commitlint/lint@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-12.0.1.tgz#a88b01c81cb6ca1867bd3d8fd288ba30017c2b7d"
   resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-12.0.1.tgz#a88b01c81cb6ca1867bd3d8fd288ba30017c2b7d"
@@ -980,6 +1032,16 @@
     "@commitlint/rules" "^12.0.1"
     "@commitlint/rules" "^12.0.1"
     "@commitlint/types" "^12.0.1"
     "@commitlint/types" "^12.0.1"
 
 
+"@commitlint/lint@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-12.1.1.tgz#cdd898af6eadba8f9e71d7f1255b5a479a757078"
+  integrity sha512-FFFPpku/E0svL1jaUVqosuZJDDWiNWYBlUw5ZEljh3MwWRcoaWtMIX5bseX+IvHpFZsCTAiBs1kCgNulCi0UvA==
+  dependencies:
+    "@commitlint/is-ignored" "^12.1.1"
+    "@commitlint/parse" "^12.1.1"
+    "@commitlint/rules" "^12.1.1"
+    "@commitlint/types" "^12.1.1"
+
 "@commitlint/load@>6.1.1", "@commitlint/load@^12.0.1":
 "@commitlint/load@>6.1.1", "@commitlint/load@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/load/-/load-12.0.1.tgz#4d180fc88e5b4cfcb476a245d899f85154137502"
   resolved "https://registry.npmjs.org/@commitlint/load/-/load-12.0.1.tgz#4d180fc88e5b4cfcb476a245d899f85154137502"
@@ -993,11 +1055,29 @@
     lodash "^4.17.19"
     lodash "^4.17.19"
     resolve-from "^5.0.0"
     resolve-from "^5.0.0"
 
 
+"@commitlint/load@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/load/-/load-12.1.1.tgz#5a7fb8be11e520931d1237c5e8dc401b7cc9c6c1"
+  integrity sha512-qOQtgNdJRULUQWP9jkpTwhj7aEtnqUtqeUpbQ9rjS+GIUST65HZbteNUX4S0mAEGPWqy2aK5xGd73cUfFSvuuw==
+  dependencies:
+    "@commitlint/execute-rule" "^12.1.1"
+    "@commitlint/resolve-extends" "^12.1.1"
+    "@commitlint/types" "^12.1.1"
+    chalk "^4.0.0"
+    cosmiconfig "^7.0.0"
+    lodash "^4.17.19"
+    resolve-from "^5.0.0"
+
 "@commitlint/message@^12.0.1":
 "@commitlint/message@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/message/-/message-12.0.1.tgz#caff6743db78c30a063809501cf4b835c3ce7fa6"
   resolved "https://registry.npmjs.org/@commitlint/message/-/message-12.0.1.tgz#caff6743db78c30a063809501cf4b835c3ce7fa6"
   integrity sha512-fXuoxRC+NT1wEQi6p8oHfT7wvWIRgTk+udlRJnWTjmMpiYzVnMmmZfasdShirWr4TtxQtMyL+5DVgh7Y98kURw==
   integrity sha512-fXuoxRC+NT1wEQi6p8oHfT7wvWIRgTk+udlRJnWTjmMpiYzVnMmmZfasdShirWr4TtxQtMyL+5DVgh7Y98kURw==
 
 
+"@commitlint/message@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/message/-/message-12.1.1.tgz#56eb1dbb561e85e9295380a46ff3b09bc93cac65"
+  integrity sha512-RakDSLAiOligXjhbLahV8HowF4K75pZIcs0+Ii9Q8Gz5H3DWf1Ngit7alFTWfcbf/+DTjSzVPov5HiwQZPIBUg==
+
 "@commitlint/parse@^12.0.1":
 "@commitlint/parse@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-12.0.1.tgz#ba8641f53e15b523808ba2eaa48c1bf0129c91c4"
   resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-12.0.1.tgz#ba8641f53e15b523808ba2eaa48c1bf0129c91c4"
@@ -1007,6 +1087,15 @@
     conventional-changelog-angular "^5.0.11"
     conventional-changelog-angular "^5.0.11"
     conventional-commits-parser "^3.0.0"
     conventional-commits-parser "^3.0.0"
 
 
+"@commitlint/parse@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-12.1.1.tgz#3e49d6dc113d59cf266af0db99e320e933108c56"
+  integrity sha512-nuljIvAbBDr93DgL0wCArftEIhjSghawAwhvrKNV9FFcqAJqfVqitwMxJrNDCQ5pgUMCSKULLOEv+dA0bLlTEQ==
+  dependencies:
+    "@commitlint/types" "^12.1.1"
+    conventional-changelog-angular "^5.0.11"
+    conventional-commits-parser "^3.0.0"
+
 "@commitlint/read@^12.0.1":
 "@commitlint/read@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/read/-/read-12.0.1.tgz#41f3295ed9f451d4c65223cd37ddd59ef714bddb"
   resolved "https://registry.npmjs.org/@commitlint/read/-/read-12.0.1.tgz#41f3295ed9f451d4c65223cd37ddd59ef714bddb"
@@ -1017,6 +1106,16 @@
     fs-extra "^9.0.0"
     fs-extra "^9.0.0"
     git-raw-commits "^2.0.0"
     git-raw-commits "^2.0.0"
 
 
+"@commitlint/read@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/read/-/read-12.1.1.tgz#22a2d7fd1eab5e38b9b262311af28ac42f9a5097"
+  integrity sha512-1k0CQEoZIdixvmqZRKEcWdj2XiKS7SlizEOJ1SE99Qui5d5FlBey8eaooTGgmpR6zObpIHJehtEPzM3VzUT3qA==
+  dependencies:
+    "@commitlint/top-level" "^12.1.1"
+    "@commitlint/types" "^12.1.1"
+    fs-extra "^9.0.0"
+    git-raw-commits "^2.0.0"
+
 "@commitlint/resolve-extends@^12.0.1":
 "@commitlint/resolve-extends@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.0.1.tgz#77509f386e08bd30262ec9a75c783d8f4f028fd2"
   resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.0.1.tgz#77509f386e08bd30262ec9a75c783d8f4f028fd2"
@@ -1027,6 +1126,16 @@
     resolve-from "^5.0.0"
     resolve-from "^5.0.0"
     resolve-global "^1.0.0"
     resolve-global "^1.0.0"
 
 
+"@commitlint/resolve-extends@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.1.1.tgz#80a78b0940775d17888dd2985b52f93d93e0a885"
+  integrity sha512-/DXRt0S0U3o9lq5cc8OL1Lkx0IjW0HcDWjUkUXshAajBIKBYSJB8x/loNCi1krNEJ8SwLXUEFt5OLxNO6wE9yQ==
+  dependencies:
+    import-fresh "^3.0.0"
+    lodash "^4.17.19"
+    resolve-from "^5.0.0"
+    resolve-global "^1.0.0"
+
 "@commitlint/rules@^12.0.1":
 "@commitlint/rules@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-12.0.1.tgz#1c81345f468597656141338a493d5e426e44dab9"
   resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-12.0.1.tgz#1c81345f468597656141338a493d5e426e44dab9"
@@ -1037,11 +1146,26 @@
     "@commitlint/to-lines" "^12.0.1"
     "@commitlint/to-lines" "^12.0.1"
     "@commitlint/types" "^12.0.1"
     "@commitlint/types" "^12.0.1"
 
 
+"@commitlint/rules@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-12.1.1.tgz#d59182a837d2addf301a3a4ef83316ae7e70248f"
+  integrity sha512-oCcLF/ykcJfhM2DeeaDyrgdaiuKsqIPNocugdPj2WEyhSYqmx1/u18CV96LAtW+WyyiOLCCeiZwiQutx3T5nXg==
+  dependencies:
+    "@commitlint/ensure" "^12.1.1"
+    "@commitlint/message" "^12.1.1"
+    "@commitlint/to-lines" "^12.1.1"
+    "@commitlint/types" "^12.1.1"
+
 "@commitlint/to-lines@^12.0.1":
 "@commitlint/to-lines@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.0.1.tgz#586d89b9f9ff99ef93b3c8aa3d77faffbe3ffedc"
   resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.0.1.tgz#586d89b9f9ff99ef93b3c8aa3d77faffbe3ffedc"
   integrity sha512-XwcJ1jY7x2fhudzbGMpNQkTSMVrxWrI8bRMbVe3Abuu7RfYpFf7VXAlhtnLfxBoagaK7RxjC2+eRidp/3txQBg==
   integrity sha512-XwcJ1jY7x2fhudzbGMpNQkTSMVrxWrI8bRMbVe3Abuu7RfYpFf7VXAlhtnLfxBoagaK7RxjC2+eRidp/3txQBg==
 
 
+"@commitlint/to-lines@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.1.1.tgz#40fbed1767d637249ce49b311a51909d8361ecf8"
+  integrity sha512-W23AH2XF5rI27MOAPSSr0TUDoRe7ZbFoRtYhFnPu2MBmcuDA9Tmfd9N5sM2tBXtdE26uq3SazwKqGt1OoGAilQ==
+
 "@commitlint/top-level@^12.0.1":
 "@commitlint/top-level@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.0.1.tgz#9c7efd319a4f8d29001f011ba8b0e21fad6044f6"
   resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.0.1.tgz#9c7efd319a4f8d29001f011ba8b0e21fad6044f6"
@@ -1049,6 +1173,13 @@
   dependencies:
   dependencies:
     find-up "^5.0.0"
     find-up "^5.0.0"
 
 
+"@commitlint/top-level@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.1.1.tgz#228df8fc36b6d7ea7ad149badfb6ef53dbc7001d"
+  integrity sha512-g7uRbr81QEIg+pbii0OkE17Zh/2C/f6dSmiMDVRn1S0+hNHR1bENCh18hVUKcV/qKTUsKkFlhhWXM9mQBfxQJw==
+  dependencies:
+    find-up "^5.0.0"
+
 "@commitlint/types@^12.0.1":
 "@commitlint/types@^12.0.1":
   version "12.0.1"
   version "12.0.1"
   resolved "https://registry.npmjs.org/@commitlint/types/-/types-12.0.1.tgz#04a0cbb8aa56b7c004f8939c2d1ef8892ec68327"
   resolved "https://registry.npmjs.org/@commitlint/types/-/types-12.0.1.tgz#04a0cbb8aa56b7c004f8939c2d1ef8892ec68327"
@@ -1056,6 +1187,13 @@
   dependencies:
   dependencies:
     chalk "^4.0.0"
     chalk "^4.0.0"
 
 
+"@commitlint/types@^12.1.1":
+  version "12.1.1"
+  resolved "https://registry.npmjs.org/@commitlint/types/-/types-12.1.1.tgz#8e651f6af0171cd4f8d464c6c37a7cf63ee071bd"
+  integrity sha512-+qGH+s2Lo6qwacV2X3/ZypZwaAI84ift+1HBjXdXtI/q0F5NtmXucV3lcQOTviMTNiJhq4qWON2fjci2NItASw==
+  dependencies:
+    chalk "^4.0.0"
+
 "@ctrl/tinycolor@^3.3.1":
 "@ctrl/tinycolor@^3.3.1":
   version "3.4.0"
   version "3.4.0"
   resolved "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.0.tgz#c3c5ae543c897caa9c2a68630bed355be5f9990f"
   resolved "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.0.tgz#c3c5ae543c897caa9c2a68630bed355be5f9990f"
@@ -1912,6 +2050,17 @@
     estree-walker "^2.0.1"
     estree-walker "^2.0.1"
     source-map "^0.6.1"
     source-map "^0.6.1"
 
 
+"@vue/compiler-core@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.0.11.tgz#5ef579e46d7b336b8735228758d1c2c505aae69a"
+  integrity sha512-6sFj6TBac1y2cWCvYCA8YzHJEbsVkX7zdRs/3yK/n1ilvRqcn983XvpBbnN3v4mZ1UiQycTvOiajJmOgN9EVgw==
+  dependencies:
+    "@babel/parser" "^7.12.0"
+    "@babel/types" "^7.12.0"
+    "@vue/shared" "3.0.11"
+    estree-walker "^2.0.1"
+    source-map "^0.6.1"
+
 "@vue/compiler-dom@3.0.10":
 "@vue/compiler-dom@3.0.10":
   version "3.0.10"
   version "3.0.10"
   resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.10.tgz#59d3597498e7d4b0b92f3886a823f99d5b08f1fe"
   resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.10.tgz#59d3597498e7d4b0b92f3886a823f99d5b08f1fe"
@@ -1920,17 +2069,25 @@
     "@vue/compiler-core" "3.0.10"
     "@vue/compiler-core" "3.0.10"
     "@vue/shared" "3.0.10"
     "@vue/shared" "3.0.10"
 
 
-"@vue/compiler-sfc@3.0.10":
+"@vue/compiler-dom@3.0.11":
-  version "3.0.10"
+  version "3.0.11"
-  resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.10.tgz#de6bc9be7f5ab1d944048a9be04c72c3571d4321"
+  resolved "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.0.11.tgz#b15fc1c909371fd671746020ba55b5dab4a730ee"
-  integrity sha512-LLbXHwKMM72aomKsj9AySkLP1xIHREh/3w0nueenKhsWuaKTL1/XUhIPml23+Z+tX55qeJiUIHDeJuFSxfgQfg==
+  integrity sha512-+3xB50uGeY5Fv9eMKVJs2WSRULfgwaTJsy23OIltKgMrynnIj8hTYY2UL97HCoz78aDw1VDXdrBQ4qepWjnQcw==
+  dependencies:
+    "@vue/compiler-core" "3.0.11"
+    "@vue/shared" "3.0.11"
+
+"@vue/compiler-sfc@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.0.11.tgz#cd8ca2154b88967b521f5ad3b10f5f8b6b665679"
+  integrity sha512-7fNiZuCecRleiyVGUWNa6pn8fB2fnuJU+3AGjbjl7r1P5wBivfl02H4pG+2aJP5gh2u+0wXov1W38tfWOphsXw==
   dependencies:
   dependencies:
     "@babel/parser" "^7.13.9"
     "@babel/parser" "^7.13.9"
     "@babel/types" "^7.13.0"
     "@babel/types" "^7.13.0"
-    "@vue/compiler-core" "3.0.10"
+    "@vue/compiler-core" "3.0.11"
-    "@vue/compiler-dom" "3.0.10"
+    "@vue/compiler-dom" "3.0.11"
-    "@vue/compiler-ssr" "3.0.10"
+    "@vue/compiler-ssr" "3.0.11"
-    "@vue/shared" "3.0.10"
+    "@vue/shared" "3.0.11"
     consolidate "^0.16.0"
     consolidate "^0.16.0"
     estree-walker "^2.0.1"
     estree-walker "^2.0.1"
     hash-sum "^2.0.0"
     hash-sum "^2.0.0"
@@ -1942,13 +2099,13 @@
     postcss-selector-parser "^6.0.4"
     postcss-selector-parser "^6.0.4"
     source-map "^0.6.1"
     source-map "^0.6.1"
 
 
-"@vue/compiler-ssr@3.0.10":
+"@vue/compiler-ssr@3.0.11":
-  version "3.0.10"
+  version "3.0.11"
-  resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.10.tgz#6ccc647bda49c0fc1ca100219e9c71268e048120"
+  resolved "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.0.11.tgz#ac5a05fd1257412fa66079c823d8203b6a889a13"
-  integrity sha512-skrPSp9pjZG3unqHpUaEaRRpO1yYxbCXRfJ1kZW8PTGAg5g3Y/hrUet5+Q6zCIZwr5j1mSMBSLXMDCjFuyyZLg==
+  integrity sha512-66yUGI8SGOpNvOcrQybRIhl2M03PJ+OrDPm78i7tvVln86MHTKhM3ERbALK26F7tXl0RkjX4sZpucCpiKs3MnA==
   dependencies:
   dependencies:
-    "@vue/compiler-dom" "3.0.10"
+    "@vue/compiler-dom" "3.0.11"
-    "@vue/shared" "3.0.10"
+    "@vue/shared" "3.0.11"
 
 
 "@vue/devtools-api@^6.0.0-beta.5":
 "@vue/devtools-api@^6.0.0-beta.5":
   version "6.0.0-beta.7"
   version "6.0.0-beta.7"
@@ -1962,6 +2119,13 @@
   dependencies:
   dependencies:
     "@vue/shared" "3.0.10"
     "@vue/shared" "3.0.10"
 
 
+"@vue/reactivity@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.0.11.tgz#07b588349fd05626b17f3500cbef7d4bdb4dbd0b"
+  integrity sha512-SKM3YKxtXHBPMf7yufXeBhCZ4XZDKP9/iXeQSC8bBO3ivBuzAi4aZi0bNoeE2IF2iGfP/AHEt1OU4ARj4ao/Xw==
+  dependencies:
+    "@vue/shared" "3.0.11"
+
 "@vue/runtime-core@3.0.10":
 "@vue/runtime-core@3.0.10":
   version "3.0.10"
   version "3.0.10"
   resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.10.tgz#cb8730c0ec86ea5c1cfa701facc0a97bf59b15a2"
   resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.10.tgz#cb8730c0ec86ea5c1cfa701facc0a97bf59b15a2"
@@ -1970,6 +2134,14 @@
     "@vue/reactivity" "3.0.10"
     "@vue/reactivity" "3.0.10"
     "@vue/shared" "3.0.10"
     "@vue/shared" "3.0.10"
 
 
+"@vue/runtime-core@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.0.11.tgz#c52dfc6acf3215493623552c1c2919080c562e44"
+  integrity sha512-87XPNwHfz9JkmOlayBeCCfMh9PT2NBnv795DSbi//C/RaAnc/bGZgECjmkD7oXJ526BZbgk9QZBPdFT8KMxkAg==
+  dependencies:
+    "@vue/reactivity" "3.0.11"
+    "@vue/shared" "3.0.11"
+
 "@vue/runtime-dom@3.0.10":
 "@vue/runtime-dom@3.0.10":
   version "3.0.10"
   version "3.0.10"
   resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.10.tgz#80c6ee28caeabf74f31357d2c64d177945bd8a5f"
   resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.10.tgz#80c6ee28caeabf74f31357d2c64d177945bd8a5f"
@@ -1979,11 +2151,25 @@
     "@vue/shared" "3.0.10"
     "@vue/shared" "3.0.10"
     csstype "^2.6.8"
     csstype "^2.6.8"
 
 
+"@vue/runtime-dom@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.0.11.tgz#7a552df21907942721feb6961c418e222a699337"
+  integrity sha512-jm3FVQESY3y2hKZ2wlkcmFDDyqaPyU3p1IdAX92zTNeCH7I8zZ37PtlE1b9NlCtzV53WjB4TZAYh9yDCMIEumA==
+  dependencies:
+    "@vue/runtime-core" "3.0.11"
+    "@vue/shared" "3.0.11"
+    csstype "^2.6.8"
+
 "@vue/shared@3.0.10":
 "@vue/shared@3.0.10":
   version "3.0.10"
   version "3.0.10"
   resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.10.tgz#5476d5615d01bf339c65c2e804f5909bbc27844a"
   resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.10.tgz#5476d5615d01bf339c65c2e804f5909bbc27844a"
   integrity sha512-p8GJ+bGpEGiEHICwcCH/EtJnkZQllrOfm1J2J+Ep0ydMte25bPnArgrY/h2Tn1LKqqR3LXyQlOSYY6gJgiW2LQ==
   integrity sha512-p8GJ+bGpEGiEHICwcCH/EtJnkZQllrOfm1J2J+Ep0ydMte25bPnArgrY/h2Tn1LKqqR3LXyQlOSYY6gJgiW2LQ==
 
 
+"@vue/shared@3.0.11":
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/@vue/shared/-/shared-3.0.11.tgz#20d22dd0da7d358bb21c17f9bde8628152642c77"
+  integrity sha512-b+zB8A2so8eCE0JsxjL24J7vdGl8rzPQ09hZNhystm+KqSbKcAej1A+Hbva1rCMmTTqA+hFnUSDc5kouEo0JzA==
+
 "@vueuse/core@^4.6.3":
 "@vueuse/core@^4.6.3":
   version "4.6.3"
   version "4.6.3"
   resolved "https://registry.npmjs.org/@vueuse/core/-/core-4.6.3.tgz#9684b602cb0d08583ee9151c52760c4db1707da2"
   resolved "https://registry.npmjs.org/@vueuse/core/-/core-4.6.3.tgz#9684b602cb0d08583ee9151c52760c4db1707da2"
@@ -1999,10 +2185,10 @@
   dependencies:
   dependencies:
     vue-demi latest
     vue-demi latest
 
 
-"@windicss/plugin-utils@0.11.4":
+"@windicss/plugin-utils@0.12.1":
-  version "0.11.4"
+  version "0.12.1"
-  resolved "https://registry.npmjs.org/@windicss/plugin-utils/-/plugin-utils-0.11.4.tgz#0c60515fccec2149cd0286e9b433ec3a6feb425b"
+  resolved "https://registry.npmjs.org/@windicss/plugin-utils/-/plugin-utils-0.12.1.tgz#3db1069dd6dd580ac97a6c3f9fd2693e7a58c45e"
-  integrity sha512-WYdz/0hdX5rgdKR+72dWOyPX1IevVGH0qPZvRi5MBgEgB1MDSy2K2lah053KzyXCYgprGpmtrPjnt0ENejsOPg==
+  integrity sha512-fNAKGG9+qno0ZnzHiYnG7L6F3Rx1uRA8EjuMKq/KxHlbCMP+vRl8HQc0xnAmjYEnCWxEf1X7lMNbfijPCRvjfQ==
   dependencies:
   dependencies:
     debug "^4.3.2"
     debug "^4.3.2"
     fast-glob "^3.2.5"
     fast-glob "^3.2.5"
@@ -4217,10 +4403,10 @@ eslint-config-prettier@^8.1.0:
   resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6"
   resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.1.0.tgz#4ef1eaf97afe5176e6a75ddfb57c335121abc5a6"
   integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==
   integrity sha512-oKMhGv3ihGbCIimCAjqkdzx2Q+jthoqnXSP+d86M9tptwugycmTFdVR4IpLgq2c4SHifbwO90z2fQ8/Aio73yw==
 
 
-eslint-define-config@^1.0.6:
+eslint-define-config@^1.0.7:
-  version "1.0.6"
+  version "1.0.7"
-  resolved "https://registry.npmjs.org/eslint-define-config/-/eslint-define-config-1.0.6.tgz#b2e47832dcefab62bb853ffb78cb4963524efc44"
+  resolved "https://registry.npmjs.org/eslint-define-config/-/eslint-define-config-1.0.7.tgz#784ae5cc450492b0a8f37753d54f38fd5ac158fb"
-  integrity sha512-Kq/XwRSYm5N3KTdK1IKT6I8IZFjtTxxgBjOb47iPvKfzjqfAu3xcaEJYqN1QtnsJoJf8lPCKBDMmKXu2f9ayZw==
+  integrity sha512-aPsytB55H0gNBJb5ZHCGdJgTS0g7vaOVjyvaZYlhDI3yYB1Y4F5k6VV5M7+0FOuD61NOm0ZT72lXOWoah5rCHw==
 
 
 eslint-plugin-jest@^24.1.5:
 eslint-plugin-jest@^24.1.5:
   version "24.3.2"
   version "24.3.2"
@@ -9005,10 +9191,10 @@ rollup-plugin-terser@^7.0.0:
     serialize-javascript "^4.0.0"
     serialize-javascript "^4.0.0"
     terser "^5.0.0"
     terser "^5.0.0"
 
 
-rollup-plugin-visualizer@5.0.4:
+rollup-plugin-visualizer@5.2.1:
-  version "5.0.4"
+  version "5.2.1"
-  resolved "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.0.4.tgz#fd4c104e310033412aa8d99c811e73a7710a2c11"
+  resolved "https://registry.npmjs.org/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.2.1.tgz#1526fd35ff47ff5e190e03331caab3bb42e7ebab"
-  integrity sha512-K/pFyP70k5ZcSIMH8kSWQOgT2kY3QaoMSPOG4onE8p2FBcUM/klCb7uIZMiocrl8DchCpq+mvDHOlLCx/R+Edg==
+  integrity sha512-1y6XThim1mKi7v1k2DvFbeD42vGT9mc8Xvhyzn+M9ffa7bzkow/Rye2khcoozN/W/8Oi36grhAbL0i+m+I5qtA==
   dependencies:
   dependencies:
     nanoid "^3.1.22"
     nanoid "^3.1.22"
     open "^7.4.2"
     open "^7.4.2"
@@ -9148,6 +9334,13 @@ semver@7.3.4, semver@7.x, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4:
   dependencies:
   dependencies:
     lru-cache "^6.0.0"
     lru-cache "^6.0.0"
 
 
+semver@7.3.5:
+  version "7.3.5"
+  resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
+  integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
+  dependencies:
+    lru-cache "^6.0.0"
+
 semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0:
 semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.3.0:
   version "6.3.0"
   version "6.3.0"
   resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
   resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d"
@@ -10766,12 +10959,12 @@ vite-plugin-theme@^0.5.0:
     tinycolor2 "^1.4.2"
     tinycolor2 "^1.4.2"
     ts-jest "^26.5.3"
     ts-jest "^26.5.3"
 
 
-vite-plugin-windicss@0.11.4:
+vite-plugin-windicss@0.12.1:
-  version "0.11.4"
+  version "0.12.1"
-  resolved "https://registry.npmjs.org/vite-plugin-windicss/-/vite-plugin-windicss-0.11.4.tgz#cde87eba7be66ef1e29f14f2896a995d9430995e"
+  resolved "https://registry.npmjs.org/vite-plugin-windicss/-/vite-plugin-windicss-0.12.1.tgz#b084c34898b3dc532767218c008e92a1897673ec"
-  integrity sha512-xGRaeXN6bR6QQceGcoIxfJCPvy+wCWR0ymHdjrYQr19LInEkL0lzvJwQkj51t5T8+56Xc7XsvSMb6HbJ1RERqA==
+  integrity sha512-W/9Lg/yhzfcpxQ4nXJRIFq2YKpG3vyqCrQ/7lvlB5y4BD76mfq4HrMDgVizU4q3eygVWeCx23GGM2NDf7LI1Tg==
   dependencies:
   dependencies:
-    "@windicss/plugin-utils" "0.11.4"
+    "@windicss/plugin-utils" "0.12.1"
     chalk "^4.1.0"
     chalk "^4.1.0"
     debug "^4.3.2"
     debug "^4.3.2"
     windicss "^2.5.9"
     windicss "^2.5.9"
@@ -10826,7 +11019,16 @@ vue-types@^3.0.0, vue-types@^3.0.2:
   dependencies:
   dependencies:
     is-plain-object "3.0.1"
     is-plain-object "3.0.1"
 
 
-vue@3.0.10, vue@^3.0.0:
+vue@3.0.11:
+  version "3.0.11"
+  resolved "https://registry.npmjs.org/vue/-/vue-3.0.11.tgz#c82f9594cbf4dcc869241d4c8dd3e08d9a8f4b5f"
+  integrity sha512-3/eUi4InQz8MPzruHYSTQPxtM3LdZ1/S/BvaU021zBnZi0laRUyH6pfuE4wtUeLvI8wmUNwj5wrZFvbHUXL9dw==
+  dependencies:
+    "@vue/compiler-dom" "3.0.11"
+    "@vue/runtime-dom" "3.0.11"
+    "@vue/shared" "3.0.11"
+
+vue@^3.0.0:
   version "3.0.10"
   version "3.0.10"
   resolved "https://registry.npmjs.org/vue/-/vue-3.0.10.tgz#b5d2801c6ac0e756c850ad7a8f9a78cbccbad02a"
   resolved "https://registry.npmjs.org/vue/-/vue-3.0.10.tgz#b5d2801c6ac0e756c850ad7a8f9a78cbccbad02a"
   integrity sha512-6arZ722uqIArSNUU94aqx0Pq0IMHFqYZuJ+U+q9HGdZZu11VFpyFP/L/hakijGFKp56Jr0yxJdWbDiJGWPxwww==
   integrity sha512-6arZ722uqIArSNUU94aqx0Pq0IMHFqYZuJ+U+q9HGdZZu11VFpyFP/L/hakijGFKp56Jr0yxJdWbDiJGWPxwww==