瀏覽代碼

chore: type optimization

Vben 3 年之前
父節點
當前提交
4f20d45f9d

+ 9 - 23
.vscode/settings.json

@@ -1,6 +1,6 @@
 {
-  "cSpell.words": ["vben", "windi"],
   "typescript.tsdk": "./node_modules/typescript/lib",
+  "typescript.enablePromptUseWorkspaceTsdk": true,
   "volar.tsPlugin": true,
   "volar.tsPluginStatus": false,
   //===========================================
@@ -10,23 +10,14 @@
   "editor.tabSize": 2,
   "editor.defaultFormatter": "esbenp.prettier-vscode",
   "diffEditor.ignoreTrimWhitespace": false,
-  "editor.trimAutoWhitespace": true,
   //===========================================
   //============= Other =======================
   //===========================================
   "breadcrumbs.enabled": true,
   "open-in-browser.default": "chrome",
   //===========================================
-  //============= emmet =======================
-  //===========================================
-  "emmet.triggerExpansionOnTab": true,
-  "emmet.showAbbreviationSuggestions": true,
-  //===========================================
   //============= files =======================
   //===========================================
-  "files.trimTrailingWhitespace": true,
-  // "files.insertFinalNewline": true,
-  // "files.trimFinalNewlines": true,
   "files.eol": "\n",
   "search.exclude": {
     "**/node_modules": true,
@@ -49,9 +40,14 @@
     "CHANGELOG.md": true,
     "examples": true,
     "res": true,
-    "screenshots": true
+    "screenshots": true,
+    "yarn-error.log": true,
+    "**/.yarn": true
   },
   "files.exclude": {
+    "**/.cache": true,
+    "**/.editorconfig": true,
+    "**/.eslintcache": true,
     "**/bower_components": true,
     "**/.idea": true,
     "**/tmp": true,
@@ -73,17 +69,6 @@
   },
   "stylelint.enable": true,
   "stylelint.packageManager": "yarn",
-  // ===========================================
-  // ================ Vetur ====================
-  // ===========================================
-  // "vetur.experimental.templateInterpolationService": true,
-  // "vetur.format.options.tabSize": 2,
-  // "vetur.languageFeatures.codeActions": false,
-  // "vetur.format.defaultFormatterOptions": {
-  //   "js-beautify-html": {
-  //     "wrap_attributes": "force-expand-multiline"
-  //   }
-  // },
   "liveServer.settings.donotShowInfoMsg": true,
   "telemetry.enableCrashReporter": false,
   "workbench.settings.enableNaturalLanguageSearch": false,
@@ -132,5 +117,6 @@
   "i18n-ally.pathMatcher": "{locale}/{namespaces}.{ext}",
   "i18n-ally.enabledParsers": ["ts"],
   "i18n-ally.sourceLanguage": "en",
-  "i18n-ally.enabledFrameworks": ["vue", "react"]
+  "i18n-ally.enabledFrameworks": ["vue", "react"],
+  "cSpell.words": ["vben", "windi", "browserslist", "esnext"]
 }

+ 6 - 6
package.json

@@ -33,8 +33,8 @@
   },
   "dependencies": {
     "@iconify/iconify": "^2.0.1",
-    "@logicflow/core": "^0.4.13",
-    "@logicflow/extension": "^0.4.13",
+    "@logicflow/core": "^0.4.14",
+    "@logicflow/extension": "^0.4.14",
     "@vueuse/core": "^5.0.3",
     "@zxcvbn-ts/core": "^0.3.0",
     "ant-design-vue": "2.1.6",
@@ -115,11 +115,11 @@
     "vite-plugin-compression": "^0.2.5",
     "vite-plugin-html": "^2.0.7",
     "vite-plugin-imagemin": "^0.3.2",
-    "vite-plugin-mock": "^2.7.2",
+    "vite-plugin-mock": "^2.8.0",
     "vite-plugin-purge-icons": "^0.7.0",
     "vite-plugin-pwa": "^0.8.1",
-    "vite-plugin-style-import": "^0.10.1",
-    "vite-plugin-svg-icons": "^0.7.0",
+    "vite-plugin-style-import": "^1.0.0",
+    "vite-plugin-svg-icons": "^0.7.1",
     "vite-plugin-theme": "^0.8.1",
     "vite-plugin-windicss": "^1.0.4",
     "vue-eslint-parser": "^7.6.0",
@@ -128,7 +128,7 @@
   "resolutions": {
     "//": "Used to install imagemin dependencies, because imagemin may not be installed in China. If it is abroad, you can delete it",
     "bin-wrapper": "npm:bin-wrapper-china",
-    "rollup": "^2.51.2"
+    "rollup": "^2.52.0"
   },
   "repository": {
     "type": "git",

+ 1 - 1
src/components/Dropdown/src/Dropdown.vue

@@ -53,7 +53,7 @@
        * @type string[]
        */
       trigger: {
-        type: [Array] as PropType<string[]>,
+        type: [Array] as PropType<('contextmenu' | 'click' | 'hover')[]>,
         default: () => {
           return ['contextmenu'];
         },

+ 1 - 1
src/components/FlowChart/src/FlowChartToolbar.vue

@@ -1,6 +1,6 @@
 <template>
   <div :class="`${prefixCls}-toolbar`" class="flex items-center px-2 py-1">
-    <template v-for="(item, index) in toolbarItemList" :key="item.type || index">
+    <template v-for="item in toolbarItemList" :key="item.type">
       <Tooltip placement="bottom" v-bind="item.disabled ? { visible: false } : {}">
         <template #title>{{ item.tooltip }}</template>
         <span :class="`${prefixCls}-toolbar__icon`" v-if="item.icon" @click="onControl(item)">

+ 10 - 5
src/components/Form/src/BasicForm.vue

@@ -1,12 +1,12 @@
 <template>
   <Form
-    v-bind="{ ...$attrs, ...$props, ...getProps }"
+    v-bind="getBindValue"
     :class="getFormClass"
     ref="formElRef"
     :model="formModel"
     @keypress.enter="handleEnterPress"
   >
-    <Row v-bind="{ ...getRow }">
+    <Row v-bind="getRow">
       <slot name="formHeader"></slot>
       <template v-for="schema in getSchema" :key="schema.field">
         <FormItem
@@ -39,7 +39,7 @@
 <script lang="ts">
   import type { FormActionType, FormProps, FormSchema } from './types/form';
   import type { AdvanceState } from './types/hooks';
-  import type { CSSProperties, Ref } from 'vue';
+  import type { Ref } from 'vue';
 
   import { defineComponent, reactive, ref, computed, unref, onMounted, watch, nextTick } from 'vue';
   import { Form, Row } from 'ant-design-vue';
@@ -69,7 +69,7 @@
     components: { FormItem, Form, Row, FormAction },
     props: basicProps,
     emits: ['advanced-change', 'reset', 'submit', 'register'],
-    setup(props, { emit }) {
+    setup(props, { emit, attrs }) {
       const formModel = reactive<Recordable>({});
       const modalFn = useModalContext();
 
@@ -103,7 +103,7 @@
       });
 
       // Get uniform row style and Row configuration for the entire form
-      const getRow = computed((): CSSProperties | RowProps => {
+      const getRow = computed((): RowProps => {
         const { baseRowStyle = {}, rowProps } = unref(getProps);
         return {
           style: baseRowStyle,
@@ -111,6 +111,10 @@
         };
       });
 
+      const getBindValue = computed(
+        () => ({ ...attrs, ...props, ...unref(getProps) } as Recordable)
+      );
+
       const getSchema = computed((): FormSchema[] => {
         const schemas: FormSchema[] = unref(schemaRef) || (unref(getProps).schemas as any);
         for (const schema of schemas) {
@@ -260,6 +264,7 @@
       });
 
       return {
+        getBindValue,
         handleToggleAdvanced,
         handleEnterPress,
         formModel,

+ 1 - 1
src/components/Upload/src/UploadModal.vue

@@ -265,7 +265,7 @@
       }
 
       // 点击关闭:则所有操作不保存,包括上传的
-      function handleCloseFunc() {
+      async function handleCloseFunc() {
         if (!isUploadingRef.value) {
           fileListRef.value = [];
           return true;

+ 1 - 1
src/hooks/component/useFormItem.ts

@@ -25,7 +25,7 @@ export function useRuleFormItem<T extends Recordable>(
     innerState.value = props[key];
   });
 
-  const state = computed({
+  const state: any = computed({
     get() {
       return innerState.value;
     },

+ 3 - 1
src/layouts/default/tabs/components/TabContent.vue

@@ -43,7 +43,9 @@
 
       const getIsTabs = computed(() => !props.isExtra);
 
-      const getTrigger = computed(() => (unref(getIsTabs) ? ['contextmenu'] : ['click']));
+      const getTrigger = computed((): ('contextmenu' | 'click' | 'hover')[] =>
+        unref(getIsTabs) ? ['contextmenu'] : ['click']
+      );
 
       const { getDropMenuList, handleMenuEvent, handleContextMenu } = useTabDropdown(
         props as TabContentProps,

+ 5 - 5
src/layouts/page/transition.ts

@@ -17,17 +17,17 @@ export function getTransitionName({
   openCache: boolean;
   def: string;
   cacheTabs: string[];
-}) {
+}): string | undefined {
   if (!enableTransition) {
-    return null;
+    return undefined;
   }
 
   const isInCache = cacheTabs.includes(route.name as string);
   const transitionName = 'fade-slide';
-  let name: string | null = transitionName;
+  let name: string | undefined = transitionName;
 
   if (openCache) {
-    name = isInCache && route.meta.loaded ? transitionName : null;
+    name = isInCache && route.meta.loaded ? transitionName : undefined;
   }
-  return name || route.meta.transitionName || def;
+  return name || (route.meta.transitionName as string) || def;
 }

+ 1 - 1
src/views/demo/page/account/center/Application.vue

@@ -1,7 +1,7 @@
 <template>
   <List :class="prefixCls">
     <a-row :gutter="16">
-      <template v-for="(item, index) in list" :key="index">
+      <template v-for="item in list" :key="item.title">
         <a-col :span="6">
           <ListItem>
             <Card :hoverable="true" :class="`${prefixCls}__card`">

+ 3 - 3
src/views/demo/page/account/center/Article.vue

@@ -1,6 +1,6 @@
 <template>
   <List item-layout="vertical" :class="prefixCls">
-    <template v-for="(item, index) in list" :key="index">
+    <template v-for="item in list" :key="item.title">
       <ListItem>
         <ListItemMeta>
           <template #description>
@@ -13,7 +13,7 @@
               {{ item.title }}
             </p>
             <div>
-              <template v-for="(tag, ti) in item.description" :key="ti">
+              <template v-for="tag in item.description" :key="tag">
                 <Tag class="mb-2">
                   {{ tag }}
                 </Tag>
@@ -22,7 +22,7 @@
           </template>
         </ListItemMeta>
         <div>
-          <template v-for="(action, ai) in actions" :key="ai">
+          <template v-for="action in actions" :key="action.text">
             <div :class="`${prefixCls}__action`">
               <Icon
                 v-if="action.icon"

+ 1 - 1
src/views/demo/page/account/center/Project.vue

@@ -1,7 +1,7 @@
 <template>
   <List :class="prefixCls">
     <a-row :gutter="16">
-      <template v-for="(item, index) in list" :key="index">
+      <template v-for="item in list" :key="item.title">
         <a-col :span="6">
           <ListItem>
             <Card :hoverable="true" :class="`${prefixCls}__card`">

+ 2 - 2
src/views/demo/page/account/center/index.vue

@@ -12,7 +12,7 @@
           </a-col>
           <a-col :span="16">
             <div :class="`${prefixCls}-top__detail`">
-              <template v-for="(detail, index) in details" :key="index">
+              <template v-for="detail in details" :key="detail.title">
                 <p>
                   <Icon :icon="detail.icon" />
                   {{ detail.title }}
@@ -24,7 +24,7 @@
       </a-col>
       <a-col :span="7" :class="`${prefixCls}-col`">
         <CollapseContainer title="标签" :canExpan="false">
-          <template v-for="(tag, index) in tags" :key="index">
+          <template v-for="tag in tags" :key="tag">
             <Tag class="mb-2">
               {{ tag }}
             </Tag>

+ 2 - 2
src/views/demo/page/desc/high/index.vue

@@ -83,7 +83,7 @@
         </a-card>
       </a-card>
       <a-card title="用户近半年来电记录" class="my-5">
-        <a-empty />
+        <Empty />
       </a-card>
       <BasicTable @register="registerTimeTable" />
     </div>
@@ -102,7 +102,7 @@
       PageWrapper,
       [Divider.name]: Divider,
       [Card.name]: Card,
-      AEmpty: Empty,
+      Empty,
       [Descriptions.name]: Descriptions,
       [Descriptions.Item.name]: Descriptions.Item,
       [Steps.name]: Steps,

+ 1 - 1
src/views/demo/page/list/card/index.vue

@@ -12,7 +12,7 @@
     <div :class="`${prefixCls}__content`">
       <a-list>
         <a-row :gutter="16">
-          <template v-for="(item, index) in list" :key="index">
+          <template v-for="item in list" :key="item.title">
             <a-col :span="6">
               <a-list-item>
                 <a-card :hoverable="true" :class="`${prefixCls}__card`">

+ 1 - 1
src/views/demo/page/list/search/index.vue

@@ -38,7 +38,7 @@
                   {{ item.title }}
                 </p>
                 <div>
-                  <template v-for="(tag, index) in item.description" :key="`${index}`">
+                  <template v-for="tag in item.description" :key="tag">
                     <Tag class="mb-2">
                       {{ tag }}
                     </Tag>

+ 3 - 2
src/views/sys/login/useLogin.ts

@@ -1,4 +1,5 @@
-import { RuleObject } from 'ant-design-vue/lib/form/interface';
+import type { ValidationRule } from 'ant-design-vue/lib/form/Form';
+import type { RuleObject } from 'ant-design-vue/lib/form/interface';
 import { ref, computed, unref, Ref } from 'vue';
 import { useI18n } from '/@/hooks/web/useI18n';
 
@@ -61,7 +62,7 @@ export function useFormRules(formData?: Recordable) {
     };
   };
 
-  const getFormRules = computed(() => {
+  const getFormRules = computed((): { [k: string]: ValidationRule | ValidationRule[] } => {
     const accountFormRule = unref(getAccountFormRule);
     const passwordFormRule = unref(getPasswordFormRule);
     const smsFormRule = unref(getSmsFormRule);

+ 61 - 49
yarn.lock

@@ -1252,21 +1252,21 @@
     "@intlify/runtime" "9.1.6"
     "@intlify/shared" "9.1.6"
 
-"@logicflow/core@^0.4.13":
-  version "0.4.13"
-  resolved "https://registry.npmjs.org/@logicflow/core/-/core-0.4.13.tgz#69d1e7a30b5e545ada3a2e980059f3e6f6923f15"
-  integrity sha512-xOLz8RO6ldAT5H9Q2Ewt9d7z146B54TUom5EXzJ/jx/s1Phy24vP8tAGu6LuoTEitgNHTRQq7WxvH9NqnpxCpg==
+"@logicflow/core@^0.4.14":
+  version "0.4.14"
+  resolved "https://registry.npmjs.org/@logicflow/core/-/core-0.4.14.tgz#870ea68a5f241171802ed31b93803bddc24838bd"
+  integrity sha512-gu/q9QzZAzT8meJXDlnAfIrJ4M0i3GIrR0W36t6CFFnrHsjB96ApqGgSblyKLJ1lyTqBx8QeeTJ5WUQdcqat2A==
   dependencies:
     "@types/mousetrap" "^1.6.4"
     mousetrap "^1.6.5"
     preact "^10.4.8"
 
-"@logicflow/extension@^0.4.13":
-  version "0.4.13"
-  resolved "https://registry.npmjs.org/@logicflow/extension/-/extension-0.4.13.tgz#b1c87b5458345414cc6c5fb813511e62db4acfa7"
-  integrity sha512-DAfgO9A5VrJ4oXruTYGgmDGvZAIaT2kLAlTE+luyg4eld6YsgwWXqXazJWCd9ObdAJkLYCf7lU27hZsDNqqbrg==
+"@logicflow/extension@^0.4.14":
+  version "0.4.14"
+  resolved "https://registry.npmjs.org/@logicflow/extension/-/extension-0.4.14.tgz#6c54659304fa41a12d1bdfccd0691803a2bd9fe9"
+  integrity sha512-3GTQBvbR/DcOszxy0iqUb4SDAYU0VfAP33ewXMkBkLBLnngf88+4jHMPgDh50H//6oBxXPsNbiMxiGdzjJkTjw==
   dependencies:
-    "@logicflow/core" "^0.4.13"
+    "@logicflow/core" "^0.4.14"
     ids "^1.0.0"
     preact "^10.4.8"
 
@@ -1329,6 +1329,18 @@
     is-module "^1.0.0"
     resolve "^1.19.0"
 
+"@rollup/plugin-node-resolve@^13.0.0":
+  version "13.0.0"
+  resolved "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.0.tgz#352f07e430ff377809ec8ec8a6fd636547162dc4"
+  integrity sha512-41X411HJ3oikIDivT5OKe9EZ6ud6DXudtfNrGbC4nniaxx2esiWjkLOzgnZsWq1IM8YIeL2rzRGLZLBjlhnZtQ==
+  dependencies:
+    "@rollup/pluginutils" "^3.1.0"
+    "@types/resolve" "1.17.1"
+    builtin-modules "^3.1.0"
+    deepmerge "^4.2.2"
+    is-module "^1.0.0"
+    resolve "^1.19.0"
+
 "@rollup/plugin-replace@^2.4.1":
   version "2.4.2"
   resolved "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz#a2d539314fbc77c244858faa523012825068510a"
@@ -2211,7 +2223,7 @@ ant-design-vue@2.1.6:
     vue-types "^3.0.0"
     warning "^4.0.0"
 
-anymatch@~3.1.1:
+anymatch@~3.1.2:
   version "3.1.2"
   resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
   integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==
@@ -2907,20 +2919,20 @@ chardet@^0.7.0:
   resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
   integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
 
-chokidar@^3.5.1:
-  version "3.5.1"
-  resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a"
-  integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==
+chokidar@^3.5.2:
+  version "3.5.2"
+  resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75"
+  integrity sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==
   dependencies:
-    anymatch "~3.1.1"
+    anymatch "~3.1.2"
     braces "~3.0.2"
-    glob-parent "~5.1.0"
+    glob-parent "~5.1.2"
     is-binary-path "~2.1.0"
     is-glob "~4.0.1"
     normalize-path "~3.0.0"
-    readdirp "~3.5.0"
+    readdirp "~3.6.0"
   optionalDependencies:
-    fsevents "~2.3.1"
+    fsevents "~2.3.2"
 
 ci-info@^2.0.0:
   version "2.0.0"
@@ -4183,10 +4195,10 @@ es-abstract@^1.17.2, es-abstract@^1.18.0-next.2:
     string.prototype.trimstart "^1.0.4"
     unbox-primitive "^1.0.0"
 
-es-module-lexer@^0.4.1:
-  version "0.4.1"
-  resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz#dda8c6a14d8f340a24e34331e0fab0cb50438e0e"
-  integrity sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==
+es-module-lexer@^0.6.0:
+  version "0.6.0"
+  resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.6.0.tgz#e72ab05b7412e62b9be37c37a09bdb6000d706f0"
+  integrity sha512-f8kcHX1ArhllUtb/wVSyvygoKCznIjnxhLxy7TCvIiMdT7fL4ZDTIKaadMe6eLvOXg6Wk02UeoFgUoZ2EKZZUA==
 
 es-to-primitive@^1.2.1:
   version "1.2.1"
@@ -4977,7 +4989,7 @@ fs.realpath@^1.0.0:
   resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
   integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
 
-fsevents@~2.3.1:
+fsevents@~2.3.1, fsevents@~2.3.2:
   version "2.3.2"
   resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
   integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
@@ -5132,7 +5144,7 @@ gitconfiglocal@^1.0.0:
   dependencies:
     ini "^1.3.2"
 
-glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.0:
+glob-parent@^5.1.0, glob-parent@^5.1.2, glob-parent@~5.1.2:
   version "5.1.2"
   resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
   integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
@@ -8551,10 +8563,10 @@ readable-stream@^2.0.0, readable-stream@^2.2.2, readable-stream@^2.3.0, readable
     string_decoder "~1.1.1"
     util-deprecate "~1.0.1"
 
-readdirp@~3.5.0:
-  version "3.5.0"
-  resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e"
-  integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==
+readdirp@~3.6.0:
+  version "3.6.0"
+  resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
+  integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
   dependencies:
     picomatch "^2.2.1"
 
@@ -8866,12 +8878,12 @@ rollup-plugin-visualizer@5.5.0:
     source-map "^0.7.3"
     yargs "^16.2.0"
 
-rollup@^2.38.5, rollup@^2.43.1, rollup@^2.51.2:
-  version "2.51.2"
-  resolved "https://registry.npmjs.org/rollup/-/rollup-2.51.2.tgz#6de71e28c833089a0bd745a09671a3e2b92af6b7"
-  integrity sha512-ReV2eGEadA7hmXSzjxdDKs10neqH2QURf2RxJ6ayAlq93ugy6qIvXMmbc5cWMGCDh1h5T4thuWO1e2VNbMq8FA==
+rollup@^2.38.5, rollup@^2.43.1, rollup@^2.51.2, rollup@^2.52.0:
+  version "2.52.0"
+  resolved "https://registry.npmjs.org/rollup/-/rollup-2.52.0.tgz#9df3de6028fae79569a985942b81110205a5a411"
+  integrity sha512-lSkBDGsVoXjqaBf7dsHwxBJz+p+hJEP72P+LOitA0yVs+Nzxj76FidkZE2thrmhjwGqLYiJo39opi7mAfaQ/Vg==
   optionalDependencies:
-    fsevents "~2.3.1"
+    fsevents "~2.3.2"
 
 run-async@^2.2.0, run-async@^2.4.0:
   version "2.4.1"
@@ -10568,15 +10580,15 @@ vite-plugin-imagemin@^0.3.2:
     imagemin-svgo "^8.0.0"
     imagemin-webp "^6.0.0"
 
-vite-plugin-mock@^2.7.2:
-  version "2.7.2"
-  resolved "https://registry.npmjs.org/vite-plugin-mock/-/vite-plugin-mock-2.7.2.tgz#710fcbbf447d603d33de022d34f45b6a86de3613"
-  integrity sha512-VCzJ0iHaAH04NxbBf18B5L2xCM4EE0AuYvzmLVc0ALdyz7J84uihx/L80qyaPbreDydZ2w0w3TsYbhL9D2fbHA==
+vite-plugin-mock@^2.8.0:
+  version "2.8.0"
+  resolved "https://registry.npmjs.org/vite-plugin-mock/-/vite-plugin-mock-2.8.0.tgz#497ab0018a73b8fd0e9165d3800566d6a4f240cc"
+  integrity sha512-AxARl9SIBUV/zHnPpLvyroQpNmIRUP1JmBoADf4xBNMcsIdwSC7Dh8xq7fJnOkUd6srJJVQIYhDOuWmbDx4svw==
   dependencies:
-    "@rollup/plugin-node-resolve" "^11.2.1"
+    "@rollup/plugin-node-resolve" "^13.0.0"
     "@types/mockjs" "^1.0.3"
-    chalk "^4.1.0"
-    chokidar "^3.5.1"
+    chalk "^4.1.1"
+    chokidar "^3.5.2"
     connect "^3.7.0"
     debug "^4.3.2"
     esbuild "0.11.3"
@@ -10604,21 +10616,21 @@ vite-plugin-pwa@^0.8.1:
     workbox-build "^6.1.5"
     workbox-window "^6.1.5"
 
-vite-plugin-style-import@^0.10.1:
-  version "0.10.1"
-  resolved "https://registry.npmjs.com/vite-plugin-style-import/-/vite-plugin-style-import-0.10.1.tgz#8732d2c04c92b7e13a7afddcb8e4a34f289fc17c"
-  integrity sha512-3P7Jyf5+b1p26t6mOd6yn8ATNPTDGDRkE19aHicFpo3K7Of7ouJabiPfWE4QaicO6grtCfWGQ0SGMAPqxUSdRA==
+vite-plugin-style-import@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.npmjs.org/vite-plugin-style-import/-/vite-plugin-style-import-1.0.0.tgz#344b7f14bcb5aefeb730d3192012c19a0604bb5e"
+  integrity sha512-5KCFN+WePRHsjZBtSPsN3Ii/Uas3Ld7d4B2s/I0NB4Iv7SuXuFudMz5IjoFaBqsbitXP7WEJ4XnZFan1fW1hAg==
   dependencies:
     "@rollup/pluginutils" "^4.1.0"
     change-case "^4.1.2"
     debug "^4.3.2"
-    es-module-lexer "^0.4.1"
+    es-module-lexer "^0.6.0"
     magic-string "^0.25.7"
 
-vite-plugin-svg-icons@^0.7.0:
-  version "0.7.0"
-  resolved "https://registry.yarnpkg.com/vite-plugin-svg-icons/-/vite-plugin-svg-icons-0.7.0.tgz#08271f115affec9cc3cf203a2e23c37e59658fba"
-  integrity sha512-6Rgyi4luwbVzAYW7bn0X8V6w8pnVuXMkkWljaV7NWXIRoDiEfvXrBbzV61zmpAHaIYVSdhgQltxZDdCDkDT2nA==
+vite-plugin-svg-icons@^0.7.1:
+  version "0.7.1"
+  resolved "https://registry.npmjs.org/vite-plugin-svg-icons/-/vite-plugin-svg-icons-0.7.1.tgz#35d4f2818c13a34a4a68884db537f0b8c2e1f174"
+  integrity sha512-yUUxIrXnsJLtYiaw3/ad7D1r/A9ULYirlE7lphcBUWWTKAy5nJ3JJO2XLcr9PuymApkt1oohkHHq5MVMu4+aeg==
   dependencies:
     "@types/svgo" "^2.3.0"
     cors "^2.8.5"