Przeglądaj źródła

feat(样式): 初始化数据看板

tangning 2 lat temu
rodzic
commit
348e07c366

+ 37 - 0
.cz-config.js

@@ -0,0 +1,37 @@
+module.exports = {
+  types: [
+    { value: 'feat', name: 'feat 🍄:    新增新的特性' },
+    { value: 'fix', name: 'fix 🐛:    修复 BUG' },
+    { value: 'docs', name: 'docs 📄:    修改文档、注释' },
+    {
+      value: 'refactor',
+      name: 'refactor 🎸:    代码重构,注意和特性、修复区分开',
+    },
+    { value: 'chore', name: 'chore 🧹:   构建过程或辅助工具的变动' },
+    { value: 'perf', name: 'perf ⚡:    提升性能' },
+    { value: 'test', name: 'test 👀:    添加一个测试' },
+    { value: 'tool', name: 'tool 🚗:    开发工具变动(构建、脚手架工具等)' },
+    { value: 'style', name: 'style ✂:    对代码格式的修改不影响逻辑' },
+    { value: 'revert', name: 'revert 🌝:     版本回滚' },
+    { value: 'update', name: 'update ⬆:    第三方库升级 ' },
+  ],
+
+  scopes: [{ name: '组件' }, { name: '样式' }, { name: '文档更改' }, { name: '其它变更' }],
+  allowTicketNumber: false,
+  isTicketNumberRequired: false,
+  ticketNumberPrefix: 'TICKET-',
+  ticketNumberRegExp: 'd{1,5}',
+  messages: {
+    type: '选择一种你的提交类型:',
+    scope: '选择一个scope (可选):',
+    customScope: 'Denote the SCOPE of this change:',
+    subject: '简要说明:\n',
+    body: '详细说明,使用"|"换行(可选):\n',
+    breaking: '非兼容性说明 (可选):\n',
+    footer: '关联关闭的issue,例如:#31, #34(可选):\n',
+    confirmCommit: '确定提交?',
+  },
+  allowCustomScopes: true,
+  allowBreakingChanges: ['新增', '修复'],
+  subjectLimit: 100,
+};

+ 9 - 1
package.json

@@ -30,7 +30,9 @@
     "test:br": "npx http-server dist --cors --brotli -c-1",
     "reinstall": "rimraf yarn.lock && rimraf package.lock.json && rimraf node_modules && npm run bootstrap",
     "prepare": "husky install",
-    "gen:icon": "esno ./build/generate/icon/index.ts"
+    "gen:icon": "esno ./build/generate/icon/index.ts",
+    "commit": "git cz"
+
   },
   "dependencies": {
     "@ant-design/colors": "^6.0.0",
@@ -119,6 +121,7 @@
     "stylelint-order": "^5.0.0",
     "ts-jest": "^27.0.7",
     "ts-node": "^10.4.0",
+    "cz-customizable": "^7.0.0",
     "typescript": "^4.4.4",
     "vite": "^2.6.13",
     "vite-plugin-compression": "^0.3.5",
@@ -140,6 +143,11 @@
     "bin-wrapper": "npm:bin-wrapper-china",
     "rollup": "^2.56.3"
   },
+  "config": {
+    "commitizen": {
+      "path": "cz-customizable"
+    }
+  },
   "repository": {
     "type": "git",
     "url": "git+https://github.com/anncwb/vue-vben-admin.git"

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

@@ -101,7 +101,7 @@
             x1 = x1.replace(rgx, '$1' + separator + '$2');
           }
         }
-        return prefix + x1 + x2 + suffix;
+        return x1 + x2 + suffix + prefix;
       }
 
       return { value, start, reset };

+ 1 - 1
src/locales/lang/zh-CN/routes/dashboard.ts

@@ -1,5 +1,5 @@
 export default {
-  dashboard: 'Dashboard',
+  dashboard: '首页',
   about: '关于',
   workbench: '工作台',
   analysis: '分析页',

+ 4 - 4
src/views/dashboard/analysis/components/GrowCard.vue

@@ -6,7 +6,7 @@
         :loading="loading"
         :title="item.title"
         class="md:w-1/4 w-full !md:mt-0 !mt-4"
-        :class="[index + 1 < 4 && '!md:mr-4']"
+        :class="[index + 1 < 6 && '!md:mr-4']"
         :canExpan="false"
       >
         <template #extra>
@@ -14,14 +14,14 @@
         </template>
 
         <div class="py-4 px-4 flex justify-between">
-          <CountTo prefix="$" :startVal="1" :endVal="item.value" class="text-2xl" />
+          <CountTo :prefix="item.unit" :startVal="1" :endVal="item.value" class="text-2xl" />
           <Icon :icon="item.icon" :size="40" />
         </div>
 
-        <div class="p-2 px-4 flex justify-between">
+        <!-- <div class="p-2 px-4 flex justify-between">
           <span>总{{ item.title }}</span>
           <CountTo prefix="$" :startVal="1" :endVal="item.total" />
-        </div>
+        </div> -->
       </Card>
     </template>
   </div>

+ 178 - 0
src/views/dashboard/analysis/components/lineEcharts.vue

@@ -0,0 +1,178 @@
+<template>
+  <Card title="成交占比" :loading="loading">
+    <div ref="chartRef1" :style="{ width, height }"></div>
+  </Card>
+</template>
+<script lang="ts" setup>
+import { Ref, ref, watch } from 'vue';
+import { Card } from 'ant-design-vue';
+import { useECharts } from '/@/hooks/web/useECharts';
+const colorList = ['#9E87FF', '#73DDFF', '#fe9a8b', '#F56948', '#9E87FF'];
+const shadowColor = ['rgba(158,135,255, 0.3)','rgba(115,221,255, 0.3)','rgba(254,154,139, 0.3)']
+const props = defineProps({
+  loading: Boolean,
+  width: {
+    type: String as PropType<string>,
+    default: '100%',
+  },
+  height: {
+    type: String as PropType<string>,
+    default: '300px',
+  },
+  propsData:{
+    type:Object,
+    default:{
+      xData:['北京', '上海', '广州', '深圳', '香港', '澳门', '台湾'],
+      yData:['北京', '上海', '广州', '深圳', '香港', '澳门', '台湾'],
+    }
+  }
+});
+
+const chartRef = ref<HTMLDivElement | null>(null);
+const { setOptions } = useECharts(chartRef as Ref<HTMLDivElement>);
+watch(
+  () => props.loading,
+  () => {
+    setOptions({
+      tooltip: {
+        trigger: 'axis',
+        axisPointer: {
+          label: {
+            show: true,
+            backgroundColor: '#fff',
+            color: '#556677',
+            borderColor: 'rgba(0,0,0,0)',
+            shadowColor: 'rgba(0,0,0,0)',
+            shadowOffsetY: 0,
+          },
+          lineStyle: {
+            width: 0,
+          },
+        },
+        backgroundColor: '#fff',
+        textStyle: {
+          color: '#5c6c7c',
+        },
+        padding: [10, 10],
+        extraCssText: 'box-shadow: 1px 0 2px 0 rgba(163,163,163,0.5)',
+      },
+
+      xAxis: [
+        {
+          type: 'category',
+          data: props.xAxisData,
+          axisLine: {
+            lineStyle: {
+              color: '#DCE2E8',
+            },
+          },
+          axisTick: {
+            show: false,
+          },
+          axisLabel: {
+            interval: 0,
+            textStyle: {
+              color: '#556677',
+            },
+            // 默认x轴字体大小
+            fontSize: 12,
+            // margin:文字到x轴的距离
+            margin: 15,
+          },
+          axisPointer: {
+            label: {
+              // padding: [11, 5, 7],
+              padding: [0, 0, 10, 0],
+              margin: 15,
+              // 移入时的字体大小
+              fontSize: 12,
+              backgroundColor: {
+                type: 'linear',
+                x: 0,
+                y: 0,
+                x2: 0,
+                y2: 1,
+                colorStops: [
+                  {
+                    offset: 0,
+                    color: '#fff', // 0% 处的颜色
+                  },
+                  {
+                    // offset: 0.9,
+                    offset: 0.86,
+                    color: '#fff', // 0% 处的颜色
+                  },
+                  {
+                    offset: 0.86,
+                    color: '#33c0cd', // 0% 处的颜色
+                  },
+                  {
+                    offset: 1,
+                    color: '#33c0cd', // 100% 处的颜色
+                  },
+                ],
+                global: false, // 缺省为 false
+              },
+            },
+          },
+          boundaryGap: false,
+        },
+      ],
+      yAxis: [
+        {
+          type: 'value',
+          axisTick: {
+            show: false,
+          },
+          splitLine: {
+            show: true,
+            lineStyle: {
+              color: ['#f1f4f8'],
+              width: 1,
+              type: 'solid',
+            },
+          },
+          axisLabel: {
+            textStyle: {
+              color: '#556677',
+            },
+            formatter: '{value}',
+          },
+          axisLine: {
+            show: false,
+            lineStyle: {
+              color: '#DCE2E8',
+            },
+          },
+        },
+      ],
+      series: [
+        {
+          name: 'Adidas',
+          type: 'line',
+          data: [10, 10, 30, 12, 15, 3, 7],
+          symbolSize: 1,
+          symbol: 'circle',
+          smooth: true,
+          // yAxisIndex: 0,
+          showSymbol: false,
+          lineStyle: {
+            width: 5,
+            color: colorList[0],
+            shadowColor: shadowColor[0],
+            shadowBlur: 10,
+            shadowOffsetY: 20,
+          },
+          itemStyle: {
+            // normal: {
+            //     color: colorList[0],
+            //     borderColor: colorList[0]
+            // }
+          },
+        },
+      ],
+    });
+  },
+  { immediate: true,deep:true },
+);
+</script>

+ 224 - 0
src/views/dashboard/analysis/components/lineEcharts2.vue

@@ -0,0 +1,224 @@
+<template>
+  <Card title="成交占比" :loading="loading">
+    <div ref="chartRef2" :style="{ width, height }"></div>
+  </Card>
+</template>
+<script lang="ts" setup>
+import { Ref, ref, watch } from 'vue';
+import { Card } from 'ant-design-vue';
+import { useECharts } from '/@/hooks/web/useECharts';
+const colorList = ['#9E87FF', '#73DDFF', '#fe9a8b', '#F56948', '#9E87FF'];
+const shadowColor = ['rgba(158,135,255, 0.3)','rgba(115,221,255, 0.3)','rgba(254,154,139, 0.3)']
+const props = defineProps({
+  loading: Boolean,
+  width: {
+    type: String as PropType<string>,
+    default: '100%',
+  },
+  height: {
+    type: String as PropType<string>,
+    default: '300px',
+  },
+  propsData:{
+    type:Object,
+    default:{
+      xData:['北京', '上海', '广州', '深圳', '香港', '澳门', '台湾'],
+      yData:['北京', '上海', '广州', '深圳', '香港', '澳门', '台湾'],
+    }
+  }
+});
+
+const chartRef = ref<HTMLDivElement | null>(null);
+const { setOptions } = useECharts(chartRef as Ref<HTMLDivElement>);
+watch(
+  () => props.propsData,
+  (value) => {
+    setOptions({
+      tooltip: {
+        trigger: 'axis',
+        axisPointer: {
+          label: {
+            show: true,
+            backgroundColor: '#fff',
+            color: '#556677',
+            borderColor: 'rgba(0,0,0,0)',
+            shadowColor: 'rgba(0,0,0,0)',
+            shadowOffsetY: 0,
+          },
+          lineStyle: {
+            width: 0,
+          },
+        },
+        backgroundColor: '#fff',
+        textStyle: {
+          color: '#5c6c7c',
+        },
+        padding: [10, 10],
+        extraCssText: 'box-shadow: 1px 0 2px 0 rgba(163,163,163,0.5)',
+      },
+
+      xAxis: [
+        {
+          type: 'category',
+          data: props.xAxisData,
+          axisLine: {
+            lineStyle: {
+              color: '#DCE2E8',
+            },
+          },
+          axisTick: {
+            show: false,
+          },
+          axisLabel: {
+            interval: 0,
+            textStyle: {
+              color: '#556677',
+            },
+            // 默认x轴字体大小
+            fontSize: 12,
+            // margin:文字到x轴的距离
+            margin: 15,
+          },
+          axisPointer: {
+            label: {
+              // padding: [11, 5, 7],
+              padding: [0, 0, 10, 0],
+              margin: 15,
+              // 移入时的字体大小
+              fontSize: 12,
+              backgroundColor: {
+                type: 'linear',
+                x: 0,
+                y: 0,
+                x2: 0,
+                y2: 1,
+                colorStops: [
+                  {
+                    offset: 0,
+                    color: '#fff', // 0% 处的颜色
+                  },
+                  {
+                    // offset: 0.9,
+                    offset: 0.86,
+                    color: '#fff', // 0% 处的颜色
+                  },
+                  {
+                    offset: 0.86,
+                    color: '#33c0cd', // 0% 处的颜色
+                  },
+                  {
+                    offset: 1,
+                    color: '#33c0cd', // 100% 处的颜色
+                  },
+                ],
+                global: false, // 缺省为 false
+              },
+            },
+          },
+          boundaryGap: false,
+        },
+      ],
+      yAxis: [
+        {
+          type: 'value',
+          axisTick: {
+            show: false,
+          },
+          splitLine: {
+            show: true,
+            lineStyle: {
+              color: ['#f1f4f8'],
+              width: 1,
+              type: 'solid',
+            },
+          },
+          axisLabel: {
+            textStyle: {
+              color: '#556677',
+            },
+            formatter: '{value}',
+          },
+          axisLine: {
+            show: false,
+            lineStyle: {
+              color: '#DCE2E8',
+            },
+          },
+        },
+      ],
+      series: [
+        {
+          name: 'Adidas',
+          type: 'line',
+          data: [10, 10, 30, 12, 15, 3, 7],
+          symbolSize: 1,
+          symbol: 'circle',
+          smooth: true,
+          // yAxisIndex: 0,
+          showSymbol: false,
+          lineStyle: {
+            width: 5,
+            color: colorList[0],
+            shadowColor: shadowColor[0],
+            shadowBlur: 10,
+            shadowOffsetY: 20,
+          },
+          itemStyle: {
+            // normal: {
+            //     color: colorList[0],
+            //     borderColor: colorList[0]
+            // }
+          },
+        },
+        {
+          name: 'Nike',
+          type: 'line',
+          data: [5, 12, 11, 14, 25, 16, 10],
+          symbolSize: 1,
+          symbol: 'circle',
+          smooth: true,
+          // yAxisIndex: 0,
+          showSymbol: false,
+          lineStyle: {
+            width: 5,
+            color: colorList[1],
+            shadowColor: shadowColor[1],
+            shadowBlur: 10,
+            shadowOffsetY: 20,
+          },
+          itemStyle: {
+            // normal: {
+            //     color: colorList[1],
+            //     borderColor: colorList[1]
+            // }
+          },
+        },
+        {
+          name: '老北京布鞋',
+          type: 'line',
+          data: [150, 120, 170, 140, 500, 160, 110],
+          symbolSize: 1,
+          // yAxisIndex: 1,
+          symbol: 'circle',
+          smooth: true,
+          showSymbol: false,
+          lineStyle: {
+            width: 5,
+            color: colorList[2],
+            shadowColor: shadowColor[2],
+            shadowBlur: 10,
+            shadowOffsetY: 20,
+          },
+          itemStyle: {
+            // normal: {
+            //     color: colorList[2],
+            //     borderColor: colorList[2]
+            // }
+          },
+        },
+      ],
+    });
+  },
+  { immediate: true,deep:true },
+);
+</script>

+ 29 - 12
src/views/dashboard/analysis/data.ts

@@ -2,42 +2,59 @@ export interface GrowCardItem {
   icon: string;
   title: string;
   value: number;
-  total: number;
+  unit: string;
   color: string;
   action: string;
 }
 
 export const growCardList: GrowCardItem[] = [
   {
-    title: '访问数',
+    title: '累计用户',
+    // icon: 'fa6-solid:users-gear',
     icon: 'visit-count|svg',
     value: 2000,
-    total: 120000,
+    unit: '人',
     color: 'green',
+    action: '年',
+  },
+  {
+    title: '上月新增用户',
+    icon: 'akar-icons:person-add',
+    value: 20000,
+    unit: '人',
+    color: 'blue',
     action: '月',
   },
   {
-    title: '成交额',
-    icon: 'total-sales|svg',
+    title: '今日新增用户',
+    icon: 'carbon:user-role',
+    value: 8000,
+    unit: '人',
+    color: 'orange',
+    action: '日',
+  },
+  {
+    title: '上月权益订单数',
+    icon: 'fxemoji:notchedrightsemi3dot',
     value: 20000,
-    total: 500000,
+    unit: '笔',
     color: 'blue',
     action: '月',
   },
   {
-    title: '下载数',
+    title: '上月下载订单数',
     icon: 'download-count|svg',
     value: 8000,
-    total: 120000,
+    unit: '笔',
     color: 'orange',
-    action: '',
+    action: '',
   },
   {
-    title: '成交数',
+    title: '上月配件订单数',
     icon: 'transaction|svg',
     value: 5000,
-    total: 50000,
+    unit: '人',
     color: 'purple',
-    action: '',
+    action: '',
   },
 ];

+ 7 - 1
src/views/dashboard/analysis/index.vue

@@ -1,6 +1,10 @@
 <template>
   <div class="p-4">
     <GrowCard :loading="loading" class="enter-y" />
+    <div class="md:flex !my-4 enter-y">
+      <lineEcharts class="md:w-1/2 w-full" name="chartRef1" :loading="loading"  />
+      <lineEcharts2  name="chartRef2"  class="md:w-1/2 !md:mx-4 !md:my-0 !my-4 w-full" :loading="loading" />
+    </div>
     <SiteAnalysis class="!my-4 enter-y" :loading="loading" />
     <div class="md:flex enter-y">
       <VisitRadar class="md:w-1/3 w-full" :loading="loading" />
@@ -15,8 +19,10 @@
   import SiteAnalysis from './components/SiteAnalysis.vue';
   import VisitSource from './components/VisitSource.vue';
   import VisitRadar from './components/VisitRadar.vue';
+  import lineEcharts from  './components/lineEcharts.vue';
+  import lineEcharts2 from  './components/lineEcharts2.vue';
   import SalesProductPie from './components/SalesProductPie.vue';
-
+  import { Row, Col  } from 'ant-design-vue';
   const loading = ref(true);
 
   setTimeout(() => {

+ 255 - 5
yarn.lock

@@ -1983,6 +1983,20 @@
   dependencies:
     "@types/yargs-parser" "*"
 
+"@typescript-eslint/eslint-plugin@^5.3.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.38.0.tgz#ac919a199548861012e8c1fb2ec4899ac2bc22ae"
+  integrity sha512-GgHi/GNuUbTOeoJiEANi0oI6fF3gBQc3bGFYj40nnAPCbhrtEDf2rjBmefFadweBmO1Du1YovHeDP2h5JLhtTQ==
+  dependencies:
+    "@typescript-eslint/scope-manager" "5.38.0"
+    "@typescript-eslint/type-utils" "5.38.0"
+    "@typescript-eslint/utils" "5.38.0"
+    debug "^4.3.4"
+    ignore "^5.2.0"
+    regexpp "^3.2.0"
+    semver "^7.3.7"
+    tsutils "^3.21.0"
+
 "@typescript-eslint/experimental-utils@^5.0.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.32.0.tgz"
@@ -1990,6 +2004,16 @@
   dependencies:
     "@typescript-eslint/utils" "5.32.0"
 
+"@typescript-eslint/parser@^5.3.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/parser/-/parser-5.38.0.tgz#5a59a1ff41a7b43aacd1bb2db54f6bf1c02b2ff8"
+  integrity sha512-/F63giJGLDr0ms1Cr8utDAxP2SPiglaD6V+pCOcG35P2jCqdfR7uuEhz1GIC3oy4hkUF8xA1XSXmd9hOh/a5EA==
+  dependencies:
+    "@typescript-eslint/scope-manager" "5.38.0"
+    "@typescript-eslint/types" "5.38.0"
+    "@typescript-eslint/typescript-estree" "5.38.0"
+    debug "^4.3.4"
+
 "@typescript-eslint/scope-manager@5.32.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-5.32.0.tgz"
@@ -1998,11 +2022,34 @@
     "@typescript-eslint/types" "5.32.0"
     "@typescript-eslint/visitor-keys" "5.32.0"
 
+"@typescript-eslint/scope-manager@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/scope-manager/-/scope-manager-5.38.0.tgz#8f0927024b6b24e28671352c93b393a810ab4553"
+  integrity sha512-ByhHIuNyKD9giwkkLqzezZ9y5bALW8VNY6xXcP+VxoH4JBDKjU5WNnsiD4HJdglHECdV+lyaxhvQjTUbRboiTA==
+  dependencies:
+    "@typescript-eslint/types" "5.38.0"
+    "@typescript-eslint/visitor-keys" "5.38.0"
+
+"@typescript-eslint/type-utils@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/type-utils/-/type-utils-5.38.0.tgz#c8b7f681da825fcfc66ff2b63d70693880496876"
+  integrity sha512-iZq5USgybUcj/lfnbuelJ0j3K9dbs1I3RICAJY9NZZpDgBYXmuUlYQGzftpQA9wC8cKgtS6DASTvF3HrXwwozA==
+  dependencies:
+    "@typescript-eslint/typescript-estree" "5.38.0"
+    "@typescript-eslint/utils" "5.38.0"
+    debug "^4.3.4"
+    tsutils "^3.21.0"
+
 "@typescript-eslint/types@5.32.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/types/-/types-5.32.0.tgz"
   integrity sha512-EBUKs68DOcT/EjGfzywp+f8wG9Zw6gj6BjWu7KV/IYllqKJFPlZlLSYw/PTvVyiRw50t6wVbgv4p9uE2h6sZrQ==
 
+"@typescript-eslint/types@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/types/-/types-5.38.0.tgz#8cd15825e4874354e31800dcac321d07548b8a5f"
+  integrity sha512-HHu4yMjJ7i3Cb+8NUuRCdOGu2VMkfmKyIJsOr9PfkBVYLYrtMCK/Ap50Rpov+iKpxDTfnqvDbuPLgBE5FwUNfA==
+
 "@typescript-eslint/typescript-estree@5.32.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.32.0.tgz"
@@ -2016,6 +2063,19 @@
     semver "^7.3.7"
     tsutils "^3.21.0"
 
+"@typescript-eslint/typescript-estree@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/typescript-estree/-/typescript-estree-5.38.0.tgz#89f86b2279815c6fb7f57d68cf9b813f0dc25d98"
+  integrity sha512-6P0RuphkR+UuV7Avv7MU3hFoWaGcrgOdi8eTe1NwhMp2/GjUJoODBTRWzlHpZh6lFOaPmSvgxGlROa0Sg5Zbyg==
+  dependencies:
+    "@typescript-eslint/types" "5.38.0"
+    "@typescript-eslint/visitor-keys" "5.38.0"
+    debug "^4.3.4"
+    globby "^11.1.0"
+    is-glob "^4.0.3"
+    semver "^7.3.7"
+    tsutils "^3.21.0"
+
 "@typescript-eslint/utils@5.32.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-5.32.0.tgz"
@@ -2028,6 +2088,18 @@
     eslint-scope "^5.1.1"
     eslint-utils "^3.0.0"
 
+"@typescript-eslint/utils@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/utils/-/utils-5.38.0.tgz#5b31f4896471818153790700eb02ac869a1543f4"
+  integrity sha512-6sdeYaBgk9Fh7N2unEXGz+D+som2QCQGPAf1SxrkEr+Z32gMreQ0rparXTNGRRfYUWk/JzbGdcM8NSSd6oqnTA==
+  dependencies:
+    "@types/json-schema" "^7.0.9"
+    "@typescript-eslint/scope-manager" "5.38.0"
+    "@typescript-eslint/types" "5.38.0"
+    "@typescript-eslint/typescript-estree" "5.38.0"
+    eslint-scope "^5.1.1"
+    eslint-utils "^3.0.0"
+
 "@typescript-eslint/visitor-keys@5.32.0":
   version "5.32.0"
   resolved "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.32.0.tgz"
@@ -2036,6 +2108,14 @@
     "@typescript-eslint/types" "5.32.0"
     eslint-visitor-keys "^3.3.0"
 
+"@typescript-eslint/visitor-keys@5.38.0":
+  version "5.38.0"
+  resolved "http://192.168.0.47:4873/@typescript-eslint/visitor-keys/-/visitor-keys-5.38.0.tgz#60591ca3bf78aa12b25002c0993d067c00887e34"
+  integrity sha512-MxnrdIyArnTi+XyFLR+kt/uNAcdOnmT+879os7qDRI+EYySR4crXJq9BXPfRzzLGq0wgxkwidrCJ9WCAoacm1w==
+  dependencies:
+    "@typescript-eslint/types" "5.38.0"
+    eslint-visitor-keys "^3.3.0"
+
 "@vitejs/plugin-legacy@^1.6.2":
   version "1.8.2"
   resolved "https://registry.npmmirror.com/@vitejs/plugin-legacy/-/plugin-legacy-1.8.2.tgz"
@@ -2429,6 +2509,11 @@ ansi-colors@^4.1.1:
   resolved "https://registry.npmmirror.com/ansi-colors/-/ansi-colors-4.1.3.tgz"
   integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==
 
+ansi-escapes@^3.2.0:
+  version "3.2.0"
+  resolved "http://192.168.0.47:4873/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
+  integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==
+
 ansi-escapes@^4.2.1, ansi-escapes@^4.3.0:
   version "4.3.2"
   resolved "https://registry.npmmirror.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz"
@@ -2441,6 +2526,16 @@ ansi-regex@^2.0.0:
   resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz"
   integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==
 
+ansi-regex@^3.0.0:
+  version "3.0.1"
+  resolved "http://192.168.0.47:4873/ansi-regex/-/ansi-regex-3.0.1.tgz#123d6479e92ad45ad897d4054e3c7ca7db4944e1"
+  integrity sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==
+
+ansi-regex@^4.1.0:
+  version "4.1.1"
+  resolved "http://192.168.0.47:4873/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed"
+  integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==
+
 ansi-regex@^5.0.1:
   version "5.0.1"
   resolved "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz"
@@ -3092,7 +3187,7 @@ chalk@^1.0.0, chalk@^1.1.3:
     strip-ansi "^3.0.0"
     supports-color "^2.0.0"
 
-chalk@^2.0.0, chalk@^2.4.1:
+chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2:
   version "2.4.2"
   resolved "https://registry.npmmirror.com/chalk/-/chalk-2.4.2.tgz"
   integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==
@@ -3191,6 +3286,13 @@ clean-stack@^2.0.0:
   resolved "https://registry.npmmirror.com/clean-stack/-/clean-stack-2.2.0.tgz"
   integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
 
+cli-cursor@^2.1.0:
+  version "2.1.0"
+  resolved "http://192.168.0.47:4873/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
+  integrity sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==
+  dependencies:
+    restore-cursor "^2.0.0"
+
 cli-cursor@^3.1.0:
   version "3.1.0"
   resolved "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz"
@@ -3211,6 +3313,11 @@ cli-truncate@2.1.0, cli-truncate@^2.1.0:
     slice-ansi "^3.0.0"
     string-width "^4.2.0"
 
+cli-width@^2.0.0:
+  version "2.2.1"
+  resolved "http://192.168.0.47:4873/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48"
+  integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==
+
 cli-width@^3.0.0:
   version "3.0.0"
   resolved "https://registry.npmmirror.com/cli-width/-/cli-width-3.0.0.tgz"
@@ -3804,6 +3911,18 @@ cz-conventional-changelog@3.3.0:
   optionalDependencies:
     "@commitlint/load" ">6.1.1"
 
+cz-customizable@^7.0.0:
+  version "7.0.0"
+  resolved "http://192.168.0.47:4873/cz-customizable/-/cz-customizable-7.0.0.tgz#2a291010bae48936cb2d917447bf83b67fa497df"
+  integrity sha512-pQKkGSm+8SY9VY/yeJqDOla1MjrGaG7WG4EYLLEV4VNctGO7WdzdGtWEr2ydKSkrpmTs7f8fmBksg/FaTrUAyw==
+  dependencies:
+    editor "1.0.0"
+    find-config "^1.0.0"
+    inquirer "^6.3.1"
+    lodash "^4.17.19"
+    temp "^0.9.0"
+    word-wrap "^1.2.3"
+
 dargs@^7.0.0:
   version "7.0.0"
   resolved "https://registry.npmmirror.com/dargs/-/dargs-7.0.0.tgz"
@@ -4216,6 +4335,11 @@ echarts@^5.2.2:
     tslib "2.3.0"
     zrender "5.3.2"
 
+editor@1.0.0:
+  version "1.0.0"
+  resolved "http://192.168.0.47:4873/editor/-/editor-1.0.0.tgz#60c7f87bd62bcc6a894fa8ccd6afb7823a24f742"
+  integrity sha512-SoRmbGStwNYHgKfjOrX2L0mUvp9bUVv0uPppZSOMAntEbcFtoC3MKF5b3T6HQPXKIV+QGY3xPO3JK5it5lVkuw==
+
 ee-first@1.1.1:
   version "1.1.1"
   resolved "https://registry.npmmirror.com/ee-first/-/ee-first-1.1.1.tgz"
@@ -5079,6 +5203,13 @@ figures@^1.3.5:
     escape-string-regexp "^1.0.5"
     object-assign "^4.1.0"
 
+figures@^2.0.0:
+  version "2.0.0"
+  resolved "http://192.168.0.47:4873/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962"
+  integrity sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==
+  dependencies:
+    escape-string-regexp "^1.0.5"
+
 figures@^3.0.0:
   version "3.2.0"
   resolved "https://registry.npmmirror.com/figures/-/figures-3.2.0.tgz"
@@ -5179,6 +5310,13 @@ finalhandler@1.1.2:
     statuses "~1.5.0"
     unpipe "~1.0.0"
 
+find-config@^1.0.0:
+  version "1.0.0"
+  resolved "http://192.168.0.47:4873/find-config/-/find-config-1.0.0.tgz#eafa2b9bc07fa9c90e9a0c3ef9cecf1cc800f530"
+  integrity sha512-Z+suHH+7LSE40WfUeZPIxSxypCWvrzdVc60xAjUShZeT5eMWM0/FQUduq3HjluyfAHWvC/aOBkT1pTZktyF/jg==
+  dependencies:
+    user-home "^2.0.0"
+
 find-node-modules@^2.1.2:
   version "2.1.3"
   resolved "https://registry.npmmirror.com/find-node-modules/-/find-node-modules-2.1.3.tgz"
@@ -6097,6 +6235,25 @@ inquirer@8.2.4, inquirer@^8.2.0:
     through "^2.3.6"
     wrap-ansi "^7.0.0"
 
+inquirer@^6.3.1:
+  version "6.5.2"
+  resolved "http://192.168.0.47:4873/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca"
+  integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==
+  dependencies:
+    ansi-escapes "^3.2.0"
+    chalk "^2.4.2"
+    cli-cursor "^2.1.0"
+    cli-width "^2.0.0"
+    external-editor "^3.0.3"
+    figures "^2.0.0"
+    lodash "^4.17.12"
+    mute-stream "0.0.7"
+    run-async "^2.2.0"
+    rxjs "^6.4.0"
+    string-width "^2.1.0"
+    strip-ansi "^5.1.0"
+    through "^2.3.6"
+
 internal-slot@^1.0.3:
   version "1.0.3"
   resolved "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.0.3.tgz"
@@ -6260,6 +6417,11 @@ is-finite@^1.0.0:
   resolved "https://registry.npmmirror.com/is-finite/-/is-finite-1.1.0.tgz"
   integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==
 
+is-fullwidth-code-point@^2.0.0:
+  version "2.0.0"
+  resolved "http://192.168.0.47:4873/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
+  integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==
+
 is-fullwidth-code-point@^3.0.0:
   version "3.0.0"
   resolved "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz"
@@ -7389,7 +7551,7 @@ lodash.truncate@^4.4.2:
   resolved "https://registry.npmmirror.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz"
   integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==
 
-lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0:
+lodash@4.17.21, lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0:
   version "4.17.21"
   resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz"
   integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
@@ -7689,6 +7851,11 @@ mime@^1.4.1:
   resolved "https://registry.npmmirror.com/mime/-/mime-1.6.0.tgz"
   integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
 
+mimic-fn@^1.0.0:
+  version "1.2.0"
+  resolved "http://192.168.0.47:4873/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
+  integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==
+
 mimic-fn@^2.1.0:
   version "2.1.0"
   resolved "https://registry.npmmirror.com/mimic-fn/-/mimic-fn-2.1.0.tgz"
@@ -7727,7 +7894,7 @@ minimist-options@4.1.0:
     is-plain-obj "^1.1.0"
     kind-of "^6.0.3"
 
-minimist@1.2.6, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5:
+minimist@1.2.6, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@^1.2.6:
   version "1.2.6"
   resolved "https://registry.npmmirror.com/minimist/-/minimist-1.2.6.tgz"
   integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
@@ -7740,6 +7907,13 @@ mixin-deep@^1.2.0:
     for-in "^1.0.2"
     is-extendable "^1.0.1"
 
+mkdirp@^0.5.1:
+  version "0.5.6"
+  resolved "http://192.168.0.47:4873/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6"
+  integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==
+  dependencies:
+    minimist "^1.2.6"
+
 mockjs@^1.1.0:
   version "1.1.0"
   resolved "https://registry.npmmirror.com/mockjs/-/mockjs-1.1.0.tgz"
@@ -7775,6 +7949,11 @@ ms@2.1.2, ms@^2.1.1:
   resolved "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz"
   integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
 
+mute-stream@0.0.7:
+  version "0.0.7"
+  resolved "http://192.168.0.47:4873/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
+  integrity sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==
+
 mute-stream@0.0.8:
   version "0.0.8"
   resolved "https://registry.npmmirror.com/mute-stream/-/mute-stream-0.0.8.tgz"
@@ -8016,6 +8195,13 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0:
   dependencies:
     wrappy "1"
 
+onetime@^2.0.0:
+  version "2.0.1"
+  resolved "http://192.168.0.47:4873/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4"
+  integrity sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==
+  dependencies:
+    mimic-fn "^1.0.0"
+
 onetime@^5.1.0, onetime@^5.1.2:
   version "5.1.2"
   resolved "https://registry.npmmirror.com/onetime/-/onetime-5.1.2.tgz"
@@ -8086,6 +8272,11 @@ os-filter-obj@^2.0.0:
   dependencies:
     arch "^2.1.0"
 
+os-homedir@^1.0.0:
+  version "1.0.2"
+  resolved "http://192.168.0.47:4873/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3"
+  integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==
+
 os-tmpdir@~1.0.2:
   version "1.0.2"
   resolved "https://registry.npmmirror.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz"
@@ -9110,6 +9301,14 @@ responselike@1.0.2:
   dependencies:
     lowercase-keys "^1.0.0"
 
+restore-cursor@^2.0.0:
+  version "2.0.0"
+  resolved "http://192.168.0.47:4873/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
+  integrity sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==
+  dependencies:
+    onetime "^2.0.0"
+    signal-exit "^3.0.2"
+
 restore-cursor@^3.1.0:
   version "3.1.0"
   resolved "https://registry.npmmirror.com/restore-cursor/-/restore-cursor-3.1.0.tgz"
@@ -9147,6 +9346,13 @@ rimraf@^3.0.0, rimraf@^3.0.2:
   dependencies:
     glob "^7.1.3"
 
+rimraf@~2.6.2:
+  version "2.6.3"
+  resolved "http://192.168.0.47:4873/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
+  integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==
+  dependencies:
+    glob "^7.1.3"
+
 rollup-plugin-purge-icons@^0.7.0:
   version "0.7.0"
   resolved "https://registry.npmmirror.com/rollup-plugin-purge-icons/-/rollup-plugin-purge-icons-0.7.0.tgz"
@@ -9182,7 +9388,7 @@ rollup@^2.43.1, rollup@^2.56.3, rollup@^2.59.0, rollup@^2.60.2:
   optionalDependencies:
     fsevents "~2.3.2"
 
-run-async@^2.4.0:
+run-async@^2.2.0, run-async@^2.4.0:
   version "2.4.1"
   resolved "https://registry.npmmirror.com/run-async/-/run-async-2.4.1.tgz"
   integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==
@@ -9194,6 +9400,13 @@ run-parallel@^1.1.9:
   dependencies:
     queue-microtask "^1.2.2"
 
+rxjs@^6.4.0:
+  version "6.6.7"
+  resolved "http://192.168.0.47:4873/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9"
+  integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==
+  dependencies:
+    tslib "^1.9.0"
+
 rxjs@^7.2.0, rxjs@^7.5.1, rxjs@^7.5.5:
   version "7.5.6"
   resolved "https://registry.npmmirror.com/rxjs/-/rxjs-7.5.6.tgz"
@@ -9626,6 +9839,14 @@ string-length@^4.0.1:
     char-regex "^1.0.2"
     strip-ansi "^6.0.0"
 
+string-width@^2.1.0:
+  version "2.1.1"
+  resolved "http://192.168.0.47:4873/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
+  integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
+  dependencies:
+    is-fullwidth-code-point "^2.0.0"
+    strip-ansi "^4.0.0"
+
 string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
   version "4.2.3"
   resolved "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz"
@@ -9706,6 +9927,20 @@ strip-ansi@^3.0.0:
   dependencies:
     ansi-regex "^2.0.0"
 
+strip-ansi@^4.0.0:
+  version "4.0.0"
+  resolved "http://192.168.0.47:4873/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f"
+  integrity sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==
+  dependencies:
+    ansi-regex "^3.0.0"
+
+strip-ansi@^5.1.0:
+  version "5.2.0"
+  resolved "http://192.168.0.47:4873/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae"
+  integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==
+  dependencies:
+    ansi-regex "^4.1.0"
+
 strip-ansi@^6.0.0, strip-ansi@^6.0.1:
   version "6.0.1"
   resolved "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz"
@@ -9991,6 +10226,14 @@ temp-dir@^2.0.0:
   resolved "https://registry.npmmirror.com/temp-dir/-/temp-dir-2.0.0.tgz"
   integrity sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==
 
+temp@^0.9.0:
+  version "0.9.4"
+  resolved "http://192.168.0.47:4873/temp/-/temp-0.9.4.tgz#cd20a8580cb63635d0e4e9d4bd989d44286e7620"
+  integrity sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==
+  dependencies:
+    mkdirp "^0.5.1"
+    rimraf "~2.6.2"
+
 tempfile@^2.0.0:
   version "2.0.0"
   resolved "https://registry.npmmirror.com/tempfile/-/tempfile-2.0.0.tgz"
@@ -10253,7 +10496,7 @@ tslib@2.3.0:
   resolved "https://registry.npmmirror.com/tslib/-/tslib-2.3.0.tgz"
   integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==
 
-tslib@^1.8.1:
+tslib@^1.8.1, tslib@^1.9.0:
   version "1.14.1"
   resolved "https://registry.npmmirror.com/tslib/-/tslib-1.14.1.tgz"
   integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
@@ -10497,6 +10740,13 @@ use@^3.1.0:
   resolved "https://registry.npmmirror.com/use/-/use-3.1.1.tgz"
   integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==
 
+user-home@^2.0.0:
+  version "2.0.0"
+  resolved "http://192.168.0.47:4873/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f"
+  integrity sha512-KMWqdlOcjCYdtIJpicDSFBQ8nFwS2i9sslAd6f4+CBGcU4gist2REnr2fxj2YocvJFxSF3ZOHLYLVZnUxv4BZQ==
+  dependencies:
+    os-homedir "^1.0.0"
+
 util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
   version "1.0.2"
   resolved "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz"