浏览代码

perf: move src/types to root

Vben 4 年之前
父节点
当前提交
fcee7d4eb7

+ 1 - 0
CHANGELOG.zh_CN.md

@@ -10,6 +10,7 @@
 - 修复 github 仓库体积过大问题.
 - 默认隐藏表格全屏按钮
 - `crypto-es`改为`crypto-js`,减小打包体积
+- `types`目录移动到根目录,兼容其他目录全局类型
 
 ### 🐛 Bug Fixes
 

+ 1 - 1
src/components/Container/src/collapse/CollapseContainer.vue

@@ -36,7 +36,7 @@
   import CollapseHeader from './CollapseHeader.vue';
   import LazyContainer from '../LazyContainer.vue';
 
-  import { triggerWindowResize } from '/@/utils/event/triggerWindowResizeEvent';
+  import { triggerWindowResize } from '/@/utils/event';
   // hook
   import { useTimeoutFn } from '/@/hooks/core/useTimeout';
   import { propTypes } from '/@/utils/propTypes';

+ 1 - 1
src/components/Form/src/hooks/useForm.ts

@@ -7,7 +7,7 @@ import { getDynamicProps } from '/@/utils';
 
 import type { FormProps, FormActionType, UseFormReturnType, FormSchema } from '../types/form';
 import type { NamePath } from 'ant-design-vue/lib/form/interface';
-import type { DynamicProps } from '/@/types/utils';
+import type { DynamicProps } from '/#/utils';
 
 export declare type ValidateFields = (nameList?: NamePath[]) => Promise<Recordable>;
 

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

@@ -17,7 +17,7 @@
   </div>
 </template>
 <script lang="ts">
-  import { addResizeListener, removeResizeListener } from '/@/utils/event/resizeEvent';
+  import { addResizeListener, removeResizeListener } from '/@/utils/event';
   import componentSetting from '/@/settings/componentSetting';
   const { scrollbar } = componentSetting;
   import { toObject } from './util';

+ 1 - 1
src/components/Table/src/hooks/useTable.ts

@@ -1,6 +1,6 @@
 import type { BasicTableProps, TableActionType, FetchParams, BasicColumn } from '../types/table';
 import type { PaginationProps } from '../types/pagination';
-import type { DynamicProps } from '/@/types/utils';
+import type { DynamicProps } from '/#/utils';
 import { getDynamicProps } from '/@/utils';
 
 import { ref, onUnmounted, unref, watch, toRaw } from 'vue';

+ 3 - 3
src/components/Tinymce/src/Editor.vue

@@ -26,7 +26,7 @@
   import plugins from './plugins';
   import { getTinymce } from './getTinymce';
   import { useScript } from '/@/hooks/web/useScript';
-  import { shortUuid } from '/@/utils/uuid';
+  import { buildShortUUID } from '/@/utils/uuid';
   import { bindHandlers } from './helper';
   import lineHeight from './lineHeight';
   import { onMountedOrActivated } from '/@/hooks/core/onMountedOrActivated';
@@ -45,7 +45,7 @@
     emits: ['change', 'update:modelValue'],
     setup(props, { emit, attrs }) {
       const editorRef = ref<any>(null);
-      const tinymceId = ref<string>(shortUuid('tiny-vue'));
+      const tinymceId = ref<string>(buildShortUUID('tiny-vue'));
       const elRef = ref<Nullable<HTMLElement>>(null);
 
       const { prefixCls } = useDesign('tinymce-container');
@@ -104,7 +104,7 @@
         }
       );
       onMountedOrActivated(() => {
-        tinymceId.value = shortUuid('tiny-vue');
+        tinymceId.value = buildShortUUID('tiny-vue');
         nextTick(() => {
           init();
         });

+ 1 - 1
src/hooks/event/useElResize.ts

@@ -1,5 +1,5 @@
 import { useDebounce } from '/@/hooks/core/useDebounce';
-import { addResizeListener, removeResizeListener } from '/@/utils/event/resizeEvent';
+import { addResizeListener, removeResizeListener } from '/@/utils/event';
 
 interface WindowSizeOptions {
   once?: boolean;

+ 1 - 1
src/hooks/setting/index.ts

@@ -1,4 +1,4 @@
-import type { ProjectConfig, GlobConfig, GlobEnvConfig } from '/@/types/config';
+import type { ProjectConfig, GlobConfig, GlobEnvConfig } from '/#/config';
 
 import { getConfigFileName } from '../../../build/getConfigFileName';
 

+ 1 - 1
src/hooks/setting/useHeaderSetting.ts

@@ -1,4 +1,4 @@
-import type { HeaderSetting } from '/@/types/config';
+import type { HeaderSetting } from '/#/config';
 
 import { computed, unref } from 'vue';
 

+ 1 - 1
src/hooks/setting/useLocaleSetting.ts

@@ -1,4 +1,4 @@
-import type { LocaleSetting } from '/@/types/config';
+import type { LocaleSetting } from '/#/config';
 
 import { computed, unref } from 'vue';
 import { appStore } from '/@/store/modules/app';

+ 1 - 1
src/hooks/setting/useMenuSetting.ts

@@ -1,4 +1,4 @@
-import type { MenuSetting } from '/@/types/config';
+import type { MenuSetting } from '/#/config';
 
 import { computed, unref, ref } from 'vue';
 

+ 1 - 1
src/hooks/setting/useMultipleTabSetting.ts

@@ -1,4 +1,4 @@
-import type { MultiTabsSetting } from '/@/types/config';
+import type { MultiTabsSetting } from '/#/config';
 
 import { computed, unref } from 'vue';
 

+ 1 - 1
src/hooks/setting/useRootSetting.ts

@@ -1,4 +1,4 @@
-import type { ProjectConfig } from '/@/types/config';
+import type { ProjectConfig } from '/#/config';
 
 import { computed, unref } from 'vue';
 

+ 1 - 1
src/hooks/setting/useTransitionSetting.ts

@@ -1,4 +1,4 @@
-import type { TransitionSetting } from '/@/types/config';
+import type { TransitionSetting } from '/#/config';
 
 import { computed, unref } from 'vue';
 

+ 1 - 1
src/layouts/default/setting/handler.ts

@@ -4,7 +4,7 @@ import { updateColorWeak } from '/@/logics/theme/updateColorWeak';
 import { updateGrayMode } from '/@/logics/theme/updateGrayMode';
 
 import { appStore } from '/@/store/modules/app';
-import { ProjectConfig } from '/@/types/config';
+import { ProjectConfig } from '/#/config';
 import { changeTheme } from '/@/logics/theme';
 import { useRootSetting } from '/@/hooks/setting/useRootSetting';
 

+ 1 - 1
src/logics/initAppConfig.ts

@@ -2,7 +2,7 @@
  * Application configuration
  */
 
-import type { ProjectConfig } from '/@/types/config';
+import type { ProjectConfig } from '/#/config';
 
 import { PROJ_CFG_KEY } from '/@/enums/cacheEnum';
 

+ 1 - 1
src/settings/projectSetting.ts

@@ -1,4 +1,4 @@
-import type { ProjectConfig } from '/@/types/config';
+import type { ProjectConfig } from '/#/config';
 
 import { MenuTypeEnum, MenuModeEnum, TriggerEnum, MixSidebarTriggerEnum } from '/@/enums/menuEnum';
 import { CacheTypeEnum } from '/@/enums/cacheEnum';

+ 2 - 2
src/store/modules/app.ts

@@ -1,4 +1,4 @@
-import type { ProjectConfig } from '/@/types/config';
+import type { ProjectConfig } from '/#/config';
 
 import { VuexModule, getModule, Module, Mutation, Action } from 'vuex-module-decorators';
 import store from '/@/store';
@@ -24,7 +24,7 @@ let timeId: TimeoutHandle;
 const NAME = 'app';
 hotModuleUnregisterModule(NAME);
 @Module({ dynamic: true, namespaced: true, store, name: NAME })
-class App extends VuexModule {
+export default class App extends VuexModule {
   // Page loading status
   private pageLoadingState = false;
 

+ 0 - 38
src/utils/cache/aesEncryption.ts

@@ -1,38 +0,0 @@
-import type { lib } from 'crypto-js';
-
-import { encrypt, decrypt } from 'crypto-js/aes';
-import Uft8, { parse } from 'crypto-js/enc-utf8';
-import pkcs7 from 'crypto-js/pad-pkcs7';
-
-export interface EncryptionParams {
-  key: string;
-  iv: string;
-}
-
-export class Encryption {
-  private key: lib.WordArray;
-  private iv: lib.WordArray;
-
-  constructor(opt: EncryptionParams) {
-    const { key, iv } = opt;
-    this.key = parse(key);
-    this.iv = parse(iv);
-  }
-
-  get getOptions() {
-    return {
-      // mode: mode.CBC,
-      padding: pkcs7,
-      iv: this.iv,
-    };
-  }
-
-  encryptByAES(str: string) {
-    return encrypt(str, this.key, this.getOptions).toString();
-  }
-
-  decryptByAES(str: string) {
-    return decrypt(str, this.key, this.getOptions).toString(Uft8);
-  }
-}
-export default Encryption;

+ 5 - 3
src/utils/cache/storageCache.ts

@@ -1,6 +1,8 @@
 import { cacheCipher } from '/@/settings/encryptionSetting';
 
-import Encryption, { EncryptionParams } from './aesEncryption';
+import type { EncryptionParams } from '/@/utils/cipher';
+
+import { AesEncryption } from '/@/utils/cipher';
 
 export interface CreateStorageParams extends EncryptionParams {
   prefixKey: string;
@@ -20,7 +22,7 @@ export const createStorage = ({
     throw new Error('When hasEncrypt is true, the key or iv must be 16 bits!');
   }
 
-  const encryption = new Encryption({ key, iv });
+  const encryption = new AesEncryption({ key, iv });
 
   /**
    *Cache class
@@ -31,7 +33,7 @@ export const createStorage = ({
   const WebStorage = class WebStorage {
     private storage: Storage;
     private prefixKey?: string;
-    private encryption: Encryption;
+    private encryption: AesEncryption;
     private hasEncrypt: boolean;
     /**
      *

+ 55 - 0
src/utils/cipher.ts

@@ -0,0 +1,55 @@
+import { encrypt, decrypt } from 'crypto-js/aes';
+import { parse } from 'crypto-js/enc-utf8';
+import pkcs7 from 'crypto-js/pad-pkcs7';
+import ECB from 'crypto-js/mode-ecb';
+import md5 from 'crypto-js/md5';
+import UTF8 from 'crypto-js/enc-utf8';
+import Base64 from 'crypto-js/enc-base64';
+
+export interface EncryptionParams {
+  key: string;
+  iv: string;
+}
+
+export class AesEncryption {
+  private key;
+  private iv;
+
+  constructor(opt: Partial<EncryptionParams> = {}) {
+    const { key, iv } = opt;
+    if (key) {
+      this.key = parse(key);
+    }
+    if (iv) {
+      this.iv = parse(iv);
+    }
+  }
+
+  get getOptions() {
+    return {
+      mode: ECB,
+      padding: pkcs7,
+      iv: this.iv,
+    };
+  }
+
+  encryptByAES(cipherText: string) {
+    return encrypt(cipherText, this.key, this.getOptions).toString();
+  }
+
+  decryptByAES(cipherText: string) {
+    return decrypt(cipherText, this.key, this.getOptions).toString(UTF8);
+  }
+}
+
+export function encryptByBase64(cipherText: string) {
+  return Base64.parse(cipherText).toString(UTF8);
+}
+
+export function decodeByBase64(cipherText: string) {
+  return Base64.parse(cipherText).toString(UTF8);
+}
+
+export function encryptByMd5(password: string) {
+  return md5(password).toString();
+}

+ 1 - 1
src/utils/env.ts

@@ -1,4 +1,4 @@
-import type { GlobEnvConfig } from '/@/types/config';
+import type { GlobEnvConfig } from '/#/config';
 
 import { useGlobSetting } from '/@/hooks/setting';
 import pkg from '../../package.json';

+ 7 - 0
src/utils/event/resizeEvent.ts → src/utils/event/index.ts

@@ -33,3 +33,10 @@ export function removeResizeListener(element: any, fn: () => any) {
     element.__ro__.disconnect();
   }
 }
+
+export function triggerWindowResize() {
+  const event = document.createEvent('HTMLEvents');
+  event.initEvent('resize', true, true);
+  (event as any).eventType = 'message';
+  window.dispatchEvent(event);
+}

+ 0 - 9
src/utils/event/triggerWindowResizeEvent.ts

@@ -1,9 +0,0 @@
-/**
- * triggter window.resize
- */
-export function triggerWindowResize() {
-  const event = document.createEvent('HTMLEvents');
-  event.initEvent('resize', true, true);
-  (event as any).eventType = 'message';
-  window.dispatchEvent(event);
-}

+ 1 - 1
src/utils/uuid.ts

@@ -20,7 +20,7 @@ export function buildUUID(): string {
 }
 
 let unique = 0;
-export function shortUuid(prefix = ''): string {
+export function buildShortUUID(prefix = ''): string {
   const time = Date.now();
   const random = Math.floor(Math.random() * 1000000000);
   unique++;

+ 12 - 2
tsconfig.json

@@ -18,13 +18,23 @@
     "experimentalDecorators": true,
     "lib": ["dom", "esnext"],
     "types": ["vite/client"],
+    "typeRoots": ["./node_modules/@types/", "./types"],
     "incremental": true,
     "noImplicitAny": false,
     "skipLibCheck": true,
     "paths": {
-      "/@/*": ["src/*"]
+      "/@/*": ["src/*"],
+      "/#/*": ["types/*"]
     }
   },
-  "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"],
+  "include": [
+    "src/**/*.ts",
+    "src/**/*.d.ts",
+    "src/**/*.tsx",
+    "src/**/*.vue",
+    "types/**/*.d.ts",
+    "types/**/*.ts",
+    "mock/**/*.ts"
+  ],
   "exclude": ["node_modules", "dist", "**/*.js"]
 }

+ 0 - 0
src/types/config.d.ts → types/config.d.ts


+ 0 - 0
src/types/event.d.ts → types/event.d.ts


+ 0 - 0
src/types/global.d.ts → types/global.d.ts


+ 0 - 0
src/types/module.d.ts → types/module.d.ts


+ 0 - 0
src/types/tsx.d.ts → types/tsx.d.ts


+ 0 - 0
src/types/utils.ts → types/utils.ts


+ 0 - 0
src/types/vue-app-env.d.ts → types/vue-app-env.d.ts


+ 0 - 0
src/types/window.d.ts → types/window.d.ts


+ 5 - 0
vite.config.ts

@@ -35,6 +35,11 @@ export default ({ command, mode }: ConfigEnv): UserConfig => {
           find: /^\/@\//,
           replacement: pathResolve('src') + '/',
         },
+        {
+          // /@/xxxx  =>  src/xxx
+          find: /^\/#\//,
+          replacement: pathResolve('types') + '/',
+        },
       ],
     },
     server: {

+ 89 - 89
yarn.lock

@@ -881,35 +881,35 @@
     lodash "^4.17.19"
     to-fast-properties "^2.0.0"
 
-"@commitlint/cli@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-12.0.0.tgz#bd389db0718aa4a7dfb515ea890776223ea0c60f"
-  integrity sha512-9jxKu6PmBUeQIbSD7olsv8wSqFnFsGwKMN9sL5T1d5YZDCocFMgfeyDGtOwuiATsox7Mje+NucQ4zU1y0530Dw==
-  dependencies:
-    "@commitlint/format" "^12.0.0"
-    "@commitlint/lint" "^12.0.0"
-    "@commitlint/load" "^12.0.0"
-    "@commitlint/read" "^12.0.0"
-    "@commitlint/types" "^12.0.0"
+"@commitlint/cli@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/cli/-/cli-12.0.1.tgz#8960e34e8f1aed8b2ea50f223ee817fdf2264ffb"
+  integrity sha512-V+cMYNHJOr40XT9Kvz3Vrz1Eh7QE1rjQrUbifawDAqcOrBJFuoXwU2SAcRtYFCSqFy9EhbreQGhZFs8dYb90KA==
+  dependencies:
+    "@commitlint/format" "^12.0.1"
+    "@commitlint/lint" "^12.0.1"
+    "@commitlint/load" "^12.0.1"
+    "@commitlint/read" "^12.0.1"
+    "@commitlint/types" "^12.0.1"
     get-stdin "8.0.0"
     lodash "^4.17.19"
     resolve-from "5.0.0"
     resolve-global "1.0.0"
-    yargs "^16.0.0"
+    yargs "^16.2.0"
 
-"@commitlint/config-conventional@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.0.0.tgz#3244957b87b92dc2f4feb46059cdeb950783198f"
-  integrity sha512-zjTeCBlHEP0syW6QedRSxOiafYeuOol9vIXZ89uhKMhyejaKxdAnS3SBMN4fYiSFChsZEl+VshJeZDtUFkCd7Q==
+"@commitlint/config-conventional@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-12.0.1.tgz#7bf3bbf68bda967c5165135ebe8f2055decf1a83"
+  integrity sha512-1ZhB135lh47zVmf1orwcjxuKuam11fJIH/bdVxW9XiQv8XPwC6iIp19knfl8FcOT78AVBnes1z6EVxgUeP2/4Q==
   dependencies:
     conventional-changelog-conventionalcommits "^4.3.1"
 
-"@commitlint/ensure@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.0.0.tgz#a019bd4f4a2ea81ca3883d5f9c13bf70e786ff7f"
-  integrity sha512-xTPjd2cw8WOLtcrp5C3S+GtmGzA+TJjlNwqgYP61jmitLiDsTs69qNcysR9vPTyIjA1EQio4iff1bpAoilTbcg==
+"@commitlint/ensure@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/ensure/-/ensure-12.0.1.tgz#0ed5e997026db25eb080559b6e67f55a21eea080"
+  integrity sha512-XdBq+q1YBBDxWIAEjE3Y1YMbzhUnUuSLAEWD8SU1xsvEpQXWRYwDlMBRkjO7funNWTdL0ZQSkZDzme70imYjbw==
   dependencies:
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/types" "^12.0.1"
     lodash "^4.17.19"
 
 "@commitlint/execute-rule@^11.0.0":
@@ -917,36 +917,36 @@
   resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-11.0.0.tgz#3ed60ab7a33019e58d90e2d891b75d7df77b4b4d"
   integrity sha512-g01p1g4BmYlZ2+tdotCavrMunnPFPhTzG1ZiLKTCYrooHRbmvqo42ZZn4QMStUEIcn+jfLb6BRZX3JzIwA1ezQ==
 
-"@commitlint/execute-rule@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.0.0.tgz#4469e0c606f523d6b92e395b0fdb0701e7aa6334"
-  integrity sha512-X9vZDKdyOz8MNDZqJN39K9UbjQmMsyQ74d1lUaw0QuCE4jOesmynYkLc4Y4MWKqq9ElWdjswZyLMyOgm3kAMrg==
+"@commitlint/execute-rule@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-12.0.1.tgz#5bb2eba929270cafb2bd8191799d8b451de7fb7e"
+  integrity sha512-JzyweYfZlFLtXpgP+btzSY3YAkGPg61TqUSYQqBr4+5IaVf1FruMm5v4D5eLu9dAJuNKUfHbM3AEfuEPiZ79pg==
 
-"@commitlint/format@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/format/-/format-12.0.0.tgz#d364c631aa35aa84f32a8afa8218a0da9f7a2ba6"
-  integrity sha512-otQHHx1KtT7UlO8igYeqxfatVFni6T8Nq8OPhwUHGrp8VYMorFSKUWrVpDtPtTAzRBj7e/ZtxCUOWck9Lwm7ug==
+"@commitlint/format@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/format/-/format-12.0.1.tgz#5164e5a9e8592c1983482cbd71e7ea86a645ff1b"
+  integrity sha512-rF79ipAxR8yFzPzG5tRoEZ//MRkyxCXj4JhpEjtdaCMBAXMssI8uazn3e5D8z4UFgSDe9qOnL0OmQvql7HTMoA==
   dependencies:
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/types" "^12.0.1"
     chalk "^4.0.0"
 
-"@commitlint/is-ignored@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.0.0.tgz#94ec9a2995f7fb35bb197c755796fa0eafa2ae09"
-  integrity sha512-jo1/ee0Ly8ySG+FvAWPFq2Bt4Xdx7tyDDnwuclDw1yatv9Tu7CVSN4ae9FNiU2dVLzqIoIxCFwu9YMaMmnT+Lg==
+"@commitlint/is-ignored@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-12.0.1.tgz#0e59b0524e16300b1d9d62f8c138f083f22ebf9a"
+  integrity sha512-AplfLn5mX/kWTIiSolcOhTYcgphuGLX8FUr+HmyHBEqUkO36jt0z9caysH47fqU71ePtH63v1DWm+RYQ5RPDjg==
   dependencies:
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/types" "^12.0.1"
     semver "7.3.4"
 
-"@commitlint/lint@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-12.0.0.tgz#6c05432beeb45202eaecbf0366807397d46ad984"
-  integrity sha512-/qPhiMBoAiaBmirxQKEf8iRy2B/PvU7xgNfRI4Gy5X9hx3xRwzZHVDTs6YjTZVRCD/9i6C8ZDMUuEM5Fk0pRyQ==
+"@commitlint/lint@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/lint/-/lint-12.0.1.tgz#a88b01c81cb6ca1867bd3d8fd288ba30017c2b7d"
+  integrity sha512-1lKyRCq4ahJrY+Xxo8LsqCbALeJkodtEfpmYHeA5HpPMnK7lRSplLqOLcTCjoPfd4vO+gl6aDEZN+ow3YGQBOg==
   dependencies:
-    "@commitlint/is-ignored" "^12.0.0"
-    "@commitlint/parse" "^12.0.0"
-    "@commitlint/rules" "^12.0.0"
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/is-ignored" "^12.0.1"
+    "@commitlint/parse" "^12.0.1"
+    "@commitlint/rules" "^12.0.1"
+    "@commitlint/types" "^12.0.1"
 
 "@commitlint/load@>6.1.1":
   version "11.0.0"
@@ -961,40 +961,40 @@
     lodash "^4.17.19"
     resolve-from "^5.0.0"
 
-"@commitlint/load@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/load/-/load-12.0.0.tgz#d0cd58bd6c3f5184ae542b6fbcdea37c5c671e32"
-  integrity sha512-B7rwRGWE3j+4dWsLD4s82fIbIJP1xGOJYfAvKDWOa/FnAb8s8ZQOK8HHuDC8BD/MU3Ierl8KJMfzGiO63d1rlA==
+"@commitlint/load@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/load/-/load-12.0.1.tgz#4d180fc88e5b4cfcb476a245d899f85154137502"
+  integrity sha512-dX8KdCWn7w0bTkkk3zKQpe9X8vsTRa5EM+1ffF313wCX9b6tGa9vujhEHCkSzKAbbE2tFV64CHZygE7rtlHdIA==
   dependencies:
-    "@commitlint/execute-rule" "^12.0.0"
-    "@commitlint/resolve-extends" "^12.0.0"
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/execute-rule" "^12.0.1"
+    "@commitlint/resolve-extends" "^12.0.1"
+    "@commitlint/types" "^12.0.1"
     chalk "^4.0.0"
     cosmiconfig "^7.0.0"
     lodash "^4.17.19"
     resolve-from "^5.0.0"
 
-"@commitlint/message@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/message/-/message-12.0.0.tgz#37587f487961e89e13ef0fe90ba66ca91b901a1e"
-  integrity sha512-jSyL6Po/IsYin6OGoeazcUDkxTYW4l83c2HiUoBKLYgvzMLyCy5jrW/ijKXK6hC/9A0nY00Zdi4iY7pA0gNSuA==
+"@commitlint/message@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/message/-/message-12.0.1.tgz#caff6743db78c30a063809501cf4b835c3ce7fa6"
+  integrity sha512-fXuoxRC+NT1wEQi6p8oHfT7wvWIRgTk+udlRJnWTjmMpiYzVnMmmZfasdShirWr4TtxQtMyL+5DVgh7Y98kURw==
 
-"@commitlint/parse@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-12.0.0.tgz#e4d1ba1333c6c41ad9d1c1d2469b7c378ed36a52"
-  integrity sha512-CcSNSwQlKTJtnPPaGlKrClV4wOPUKH5fZ2AE+M+QQlTcp5IchgASzpqwPjMaeeP5FwnBiDZ98AtV9ZqqkKy2kg==
+"@commitlint/parse@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/parse/-/parse-12.0.1.tgz#ba8641f53e15b523808ba2eaa48c1bf0129c91c4"
+  integrity sha512-7oEGASmzBnHir5jSIR7KephXrKh7rIi9a6RpH1tOT+CIENYvhe8EDtIy29qMt+RLa2LlaPF7YrAgaJRfzG0YDQ==
   dependencies:
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/types" "^12.0.1"
     conventional-changelog-angular "^5.0.11"
     conventional-commits-parser "^3.0.0"
 
-"@commitlint/read@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/read/-/read-12.0.0.tgz#556894663614b1a22156673250e517be18f657c6"
-  integrity sha512-xOply23eCsbIvqXMkrjrxhryClBu6rRPhEVxahihhcNQ2x9SskHTlEr3o6BljqCWfIxNNZL9s2TVqkOjEmkskw==
+"@commitlint/read@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/read/-/read-12.0.1.tgz#41f3295ed9f451d4c65223cd37ddd59ef714bddb"
+  integrity sha512-baa0YeD4QOctEuthLpExQSi9xPiw0kDPfUVHqp8I88iuIXJECeS8S1+1GBiz89e8dLN9zmEE+sN9vtJHdAp9YA==
   dependencies:
-    "@commitlint/top-level" "^12.0.0"
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/top-level" "^12.0.1"
+    "@commitlint/types" "^12.0.1"
     fs-extra "^9.0.0"
     git-raw-commits "^2.0.0"
 
@@ -1008,35 +1008,35 @@
     resolve-from "^5.0.0"
     resolve-global "^1.0.0"
 
-"@commitlint/resolve-extends@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.0.0.tgz#78b5c53c9b3ab496095b5ff612a5e6693f32250c"
-  integrity sha512-5i0ZieVFzXuRqyYxnoEJ7InYyXQC/K98nF75Ro6wVQqpmzi01/KHYwo8uCcy1Q+rPB48FSmCB84br0t5Ulr/KA==
+"@commitlint/resolve-extends@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-12.0.1.tgz#77509f386e08bd30262ec9a75c783d8f4f028fd2"
+  integrity sha512-Mvg0GDi/68Cqw893ha8uhxE8myHfPmiSSSi7d1x4VJNR4hoS37lBdX89kyx4i9NPmLfviY2cUJKTyK8ZrFznZw==
   dependencies:
     import-fresh "^3.0.0"
     lodash "^4.17.19"
     resolve-from "^5.0.0"
     resolve-global "^1.0.0"
 
-"@commitlint/rules@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-12.0.0.tgz#81bfb00adbd9a4c876be40f30eaf8dd5938a5a41"
-  integrity sha512-VO9UqtivXRMko7GpgUOkKSixWuihKxJYmLBrcdw5TcPD8Ott0wgFGWE65n67wTfikW7aLZLzGiybuopZHIdP/w==
+"@commitlint/rules@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/rules/-/rules-12.0.1.tgz#1c81345f468597656141338a493d5e426e44dab9"
+  integrity sha512-A5O0ubNGugZR9WWxk5IVOLo07lpdUwhG5WkAW2lYpgZ7Z/2U4PLob9b4Ih1eHbQu+gnVeFr91k7F0DrpM7B8EQ==
   dependencies:
-    "@commitlint/ensure" "^12.0.0"
-    "@commitlint/message" "^12.0.0"
-    "@commitlint/to-lines" "^12.0.0"
-    "@commitlint/types" "^12.0.0"
+    "@commitlint/ensure" "^12.0.1"
+    "@commitlint/message" "^12.0.1"
+    "@commitlint/to-lines" "^12.0.1"
+    "@commitlint/types" "^12.0.1"
 
-"@commitlint/to-lines@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.0.0.tgz#b015bf50ae4e652e8254c145329072723a88e070"
-  integrity sha512-hRZQTDkBUA7eDDlvbRLrXl/HRK3yA6Cbnd+TvxDc79MlsMH5affLtDfdJICE8SSkN2AFxIzHcSysBPxJvSvcKQ==
+"@commitlint/to-lines@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-12.0.1.tgz#586d89b9f9ff99ef93b3c8aa3d77faffbe3ffedc"
+  integrity sha512-XwcJ1jY7x2fhudzbGMpNQkTSMVrxWrI8bRMbVe3Abuu7RfYpFf7VXAlhtnLfxBoagaK7RxjC2+eRidp/3txQBg==
 
-"@commitlint/top-level@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.0.0.tgz#9076da970d3c44df3a83051405f4e6841a35cc37"
-  integrity sha512-Y7UfYZyi0q+jj0Yh81HVtTvstupVh6b+a7eUnSvmAWyDdMRfVBoE2hjuT6DY3W2xv1xuJ4DUHJu64BUr6FOkMQ==
+"@commitlint/top-level@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/top-level/-/top-level-12.0.1.tgz#9c7efd319a4f8d29001f011ba8b0e21fad6044f6"
+  integrity sha512-rHdgt7U24GEau2/9i2vEAbksxkBRiVjHj5ECFL5dd0AJOIvaK++vMg4EF/ME0X/1yd9qVTHTNOl2Q4tTFK7VBQ==
   dependencies:
     find-up "^5.0.0"
 
@@ -1045,10 +1045,10 @@
   resolved "https://registry.npmjs.org/@commitlint/types/-/types-11.0.0.tgz#719cf05fcc1abb6533610a2e0f5dd1e61eac14fe"
   integrity sha512-VoNqai1vR5anRF5Tuh/+SWDFk7xi7oMwHrHrbm1BprYXjB2RJsWLhUrStMssDxEl5lW/z3EUdg8RvH/IUBccSQ==
 
-"@commitlint/types@^12.0.0":
-  version "12.0.0"
-  resolved "https://registry.npmjs.org/@commitlint/types/-/types-12.0.0.tgz#c7f27b87e3ceac08a9b8a6f200054709c2a64271"
-  integrity sha512-ADW/GEwDdgf7ppNq+S2T8J6XgATi2yndXddu+ZV8wlHFpL1DhjPbuPA9RYLnJcp44xQSe/cEV7a7Z43Ryy1S9Q==
+"@commitlint/types@^12.0.1":
+  version "12.0.1"
+  resolved "https://registry.npmjs.org/@commitlint/types/-/types-12.0.1.tgz#04a0cbb8aa56b7c004f8939c2d1ef8892ec68327"
+  integrity sha512-FsNDMV0W7D19/ZbR412klpqAilXASx75Neqh7jPtK278IEwdukOg3vth1r5kTm+BjDScM7wMUEOwIW3NNfAtwg==
   dependencies:
     chalk "^4.0.0"
 
@@ -9394,7 +9394,7 @@ yargs@^13.2.4:
     y18n "^4.0.0"
     yargs-parser "^13.1.2"
 
-yargs@^16.0.0, yargs@^16.0.3, yargs@^16.2.0:
+yargs@^16.0.3, yargs@^16.2.0:
   version "16.2.0"
   resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66"
   integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==