├── .gitignore
├── LICENSE
├── ProjectShow
├── 1.png
├── 2.png
├── 3.png
└── 4.png
├── README.md
├── index.html
├── package.json
├── public
├── 404.png
├── Vue.png
└── favicon.ico
├── src
├── App.vue
├── api
│ └── manager.js
├── assets
│ └── logo.png
├── axios.js
├── components
│ ├── FormDrawer.vue
│ └── HelloWorld.vue
├── composables
│ ├── auth.js
│ ├── useManager.js
│ ├── useTabList.js
│ └── util.js
├── layouts
│ ├── admin.vue
│ └── components
│ │ ├── FHeader.vue
│ │ ├── FMenu.vue
│ │ └── FTagList.vue
├── main.js
├── pages
│ ├── 404.vue
│ ├── category
│ │ └── list.vue
│ ├── goods
│ │ └── list.vue
│ ├── index.vue
│ └── login.vue
├── permission.js
├── router
│ └── index.js
└── store
│ └── index.js
├── u.sh
├── vite.config.js
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 | u.sh
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 是大赵同学鸭
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/ProjectShow/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/ProjectShow/1.png
--------------------------------------------------------------------------------
/ProjectShow/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/ProjectShow/2.png
--------------------------------------------------------------------------------
/ProjectShow/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/ProjectShow/3.png
--------------------------------------------------------------------------------
/ProjectShow/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/ProjectShow/4.png
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |

2 |
3 |
4 |
5 | ### 项目简介:
6 |
7 | `Vue3` + `ElementPlus` + `Vite`实战开发商城后台管理系统。
8 |
9 | ### 功能简介:
10 |
11 | 用户多权限管理、商品多规格实现、订单发货、导出订单、图库模块、分销模块、分享海报等。
12 |
13 | ### 采用技术
14 |
15 | - `Vue3.2 + Vue-router4 + Vuex4 + Vite2 + Vueuse`
16 | - `ElementPlus`
17 | - `Naive-ui`
18 | - `Windicss`
19 |
20 | ### 使用简介
21 |
22 | #### 安装依赖
23 |
24 | ```bash
25 | yarn or yarn install
26 | ```
27 |
28 | #### 项目运行
29 |
30 | ```bash
31 | yarn dev
32 | ```
33 |
34 | #### 项目打包
35 |
36 | ```bash
37 | yarn build
38 | ```
39 |
40 | ### 项目效果
41 |
42 | 
43 |
44 | 
45 |
46 |
47 |
48 | ### 
49 |
50 | 
51 |
52 | ### 其他
53 |
54 | 感谢楚绵(靓仔)的精品课程,受益匪浅。
55 |
56 | 如果项目大家觉得比较好,请留一个🌟。
57 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Vue3 编程商城后台
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "shop-admin",
3 | "private": true,
4 | "version": "0.0.0",
5 | "scripts": {
6 | "dev": "vite",
7 | "build": "vite build",
8 | "preview": "vite preview"
9 | },
10 | "dependencies": {
11 | "@element-plus/icons-vue": "^1.1.4",
12 | "@vueuse/core": "^9.3.0",
13 | "@vueuse/integrations": "^8.4.1",
14 | "axios": "^0.27.2",
15 | "element-plus": "^2.1.11",
16 | "jquery": "2.2.0",
17 | "nprogress": "^0.2.0",
18 | "universal-cookie": "^4.0.4",
19 | "vue": "^3.2.25",
20 | "vue-router": "^4.0.15",
21 | "vuex": "^4.0.2"
22 | },
23 | "devDependencies": {
24 | "@vitejs/plugin-vue": "^2.3.1",
25 | "naive-ui": "^2.33.3",
26 | "vite": "^2.9.7",
27 | "vite-plugin-windicss": "^1.8.4",
28 | "windicss": "^3.5.1"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/public/404.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/public/404.png
--------------------------------------------------------------------------------
/public/Vue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/public/Vue.png
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/public/favicon.ico
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
15 |
--------------------------------------------------------------------------------
/src/api/manager.js:
--------------------------------------------------------------------------------
1 | import axios from '~/axios'
2 |
3 | export function login(username,password){
4 | return axios.post("/admin/login",{
5 | username,
6 | password
7 | })
8 | }
9 |
10 | export function getinfo(){
11 | return axios.post("/admin/getinfo")
12 | }
13 |
14 | export function logout(){
15 | return axios.post("/admin/logout")
16 | }
17 |
18 | export function updatepassword(data){
19 | return axios.post("/admin/updatepassword",data)
20 | }
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/webyang-male/vue3-mallManage/4e81ca0a1a0e608b3d0842323bc70f6382199013/src/assets/logo.png
--------------------------------------------------------------------------------
/src/axios.js:
--------------------------------------------------------------------------------
1 | import axios from "axios"
2 | import { toast } from '~/composables/util'
3 | import { getToken } from '~/composables/auth'
4 | import store from "./store"
5 |
6 | const service = axios.create({
7 | baseURL:"/api"
8 | })
9 |
10 | // 添加请求拦截器
11 | service.interceptors.request.use(function (config) {
12 |
13 | // 往header头自动添加token
14 | const token = getToken()
15 | if(token){
16 | config.headers["token"] = token
17 | }
18 |
19 | return config;
20 | }, function (error) {
21 | // 对请求错误做些什么
22 | return Promise.reject(error);
23 | });
24 |
25 | // 添加响应拦截器
26 | service.interceptors.response.use(function (response) {
27 | // 对响应数据做点什么
28 | return response.data.data;
29 | }, function (error) {
30 | const msg = error.response.data.msg || "请求失败"
31 |
32 | if(msg == "非法token,请先登录!"){
33 | store.dispatch("logout").finally(()=>location.reload())
34 | }
35 |
36 | toast(msg,"error")
37 |
38 | return Promise.reject(error);
39 | })
40 |
41 | export default service
--------------------------------------------------------------------------------
/src/components/FormDrawer.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
16 |
17 |
18 |
61 |
--------------------------------------------------------------------------------
/src/components/HelloWorld.vue:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 | {{ msg }}
13 |
14 |
15 | Recommended IDE setup:
16 | VS Code
17 | +
18 | Volar
19 |
20 |
21 |
22 |
23 | Vite Documentation
24 |
25 | |
26 | Vue 3 Documentation
27 |
28 |
29 |
30 |
31 | Edit
32 | components/HelloWorld.vue to test hot module replacement.
33 |
34 |
35 |
36 |
41 |
--------------------------------------------------------------------------------
/src/composables/auth.js:
--------------------------------------------------------------------------------
1 | import { useCookies } from '@vueuse/integrations/useCookies'
2 | const TokenKey = "admin-token"
3 | const cookie = useCookies()
4 |
5 | // 获取token
6 | export function getToken(){
7 | return cookie.get(TokenKey)
8 | }
9 |
10 | // 设置token
11 | export function setToken(token){
12 | return cookie.set(TokenKey,token)
13 | }
14 |
15 | // 清除token
16 | export function removeToken(){
17 | return cookie.remove(TokenKey)
18 | }
--------------------------------------------------------------------------------
/src/composables/useManager.js:
--------------------------------------------------------------------------------
1 | import { ref, reactive } from 'vue'
2 | import { logout, updatepassword } from "~/api/manager"
3 | import { showModal, toast } from "~/composables/util"
4 | import { useRouter } from "vue-router"
5 | import { useStore } from "vuex"
6 |
7 | export function useRepassword() {
8 | const router = useRouter()
9 | const store = useStore()
10 | // 修改密码
11 | const formDrawerRef = ref(null)
12 | const form = reactive({
13 | oldpassword: "",
14 | password: "",
15 | repassword: ""
16 | })
17 |
18 | const rules = {
19 | oldpassword: [
20 | {
21 | required: true,
22 | message: '旧密码不能为空',
23 | trigger: 'blur'
24 | },
25 | ],
26 | password: [
27 | {
28 | required: true,
29 | message: '新密码不能为空',
30 | trigger: 'blur'
31 | },
32 | ],
33 | repassword: [
34 | {
35 | required: true,
36 | message: '确认密码不能为空',
37 | trigger: 'blur'
38 | },
39 | ]
40 | }
41 |
42 | const formRef = ref(null)
43 | const onSubmit = () => {
44 | formRef.value.validate((valid) => {
45 | if (!valid) {
46 | return false
47 | }
48 | formDrawerRef.value.showLoading()
49 | updatepassword(form)
50 | .then(res => {
51 | toast("修改密码成功,请重新登录")
52 | store.dispatch("logout")
53 | // 跳转回登录页
54 | router.push("/login")
55 | })
56 | .finally(() => {
57 | formDrawerRef.value.hideLoading()
58 | })
59 |
60 | })
61 | }
62 |
63 | const openRePasswordForm = () => formDrawerRef.value.open()
64 |
65 | return {
66 | formDrawerRef,
67 | form,
68 | rules,
69 | formRef,
70 | onSubmit,
71 | openRePasswordForm
72 | }
73 | }
74 |
75 | export function useLogout() {
76 | const router = useRouter()
77 | const store = useStore()
78 | function handleLogout() {
79 | showModal("是否要退出登录?").then(res => {
80 | logout().finally(() => {
81 | store.dispatch("logout")
82 | // 跳转回登录页
83 | router.push("/login")
84 | // 提示退出登录成功
85 | toast("退出登录成功")
86 | })
87 | })
88 | }
89 |
90 | return {
91 | handleLogout
92 | }
93 | }
--------------------------------------------------------------------------------
/src/composables/useTabList.js:
--------------------------------------------------------------------------------
1 | import { ref } from "vue";
2 | import { useRoute, onBeforeRouteUpdate } from "vue-router";
3 | import { useCookies } from "@vueuse/integrations/useCookies";
4 | import { router } from "~/router";
5 |
6 | export function useTabList() {
7 | const route = useRoute();
8 | const cookie = useCookies();
9 |
10 | const activeTab = ref(route.path);
11 | const tabList = ref([
12 | {
13 | title: "后台首页",
14 | path: "/",
15 | },
16 | ]);
17 |
18 | // 添加标签导航
19 | function addTab(tab) {
20 | let noTab = tabList.value.findIndex((t) => t.path == tab.path) == -1;
21 | if (noTab) {
22 | tabList.value.push(tab);
23 | }
24 |
25 | cookie.set("tabList", tabList.value);
26 | }
27 |
28 | // 初始化标签导航列表
29 | function initTabList() {
30 | let tbs = cookie.get("tabList");
31 | if (tbs) {
32 | tabList.value = tbs;
33 | }
34 | }
35 |
36 | initTabList();
37 |
38 | onBeforeRouteUpdate((to, from) => {
39 | activeTab.value = to.path;
40 | addTab({
41 | title: to.meta.title,
42 | path: to.path,
43 | });
44 | });
45 |
46 | const changeTab = (t) => {
47 | activeTab.value = t;
48 | router.push(t);
49 | };
50 |
51 | const removeTab = (t) => {
52 | let tabs = tabList.value;
53 | let a = activeTab.value;
54 | if (a == t) {
55 | tabs.forEach((tab, index) => {
56 | if (tab.path == t) {
57 | const nextTab = tabs[index + 1] || tabs[index - 1];
58 | if (nextTab) {
59 | a = nextTab.path;
60 | }
61 | }
62 | });
63 | }
64 |
65 | activeTab.value = a;
66 | tabList.value = tabList.value.filter((tab) => tab.path != t);
67 |
68 | cookie.set("tabList", tabList.value);
69 | };
70 |
71 | //定时清除cookie
72 | const time = 2 * 60 * 60 * 1000;
73 | setInterval(() => {
74 | const key = cookie.get("tabList");
75 | if (key) {
76 | cookie.remove(key);
77 | }
78 | }, time);
79 |
80 | const handleClose = (c) => {
81 | console.log(c);
82 | if (c == "clearAll") {
83 | activeTab.value = "/";
84 | tabList.value = [
85 | {
86 | title: "后台首页",
87 | path: "/",
88 | },
89 | ];
90 | } else if (c == "clearOther") {
91 | tabList.value = tabList.value.filter(
92 | (tab) => tab.path == "/" || tab.path == activeTab.value
93 | );
94 | }
95 | cookie.set("tabList", tabList.value);
96 | };
97 |
98 | return {
99 | activeTab,
100 | tabList,
101 | changeTab,
102 | removeTab,
103 | handleClose,
104 | };
105 | }
106 |
--------------------------------------------------------------------------------
/src/composables/util.js:
--------------------------------------------------------------------------------
1 | import { ElNotification,ElMessageBox } from 'element-plus'
2 | import nprogress from 'nprogress'
3 | // 消息提示
4 | export function toast(message,type = "success",dangerouslyUseHTMLString = false){
5 | ElNotification({
6 | message,
7 | type,
8 | dangerouslyUseHTMLString,
9 | duration:3000
10 | })
11 | }
12 |
13 | // 显示全屏loading
14 | export function showFullLoading(){
15 | nprogress.start()
16 | }
17 |
18 | // 隐藏全屏loading
19 | export function hideFullLoading(){
20 | nprogress.done()
21 | }
22 |
23 | export function showModal(content = "提示内容",type = "warning",title = ""){
24 | return ElMessageBox.confirm(
25 | content,
26 | title,
27 | {
28 | confirmButtonText: '确认',
29 | cancelButtonText: '取消',
30 | type,
31 | }
32 | )
33 | }
34 |
--------------------------------------------------------------------------------
/src/layouts/admin.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
28 |
--------------------------------------------------------------------------------
/src/layouts/components/FHeader.vue:
--------------------------------------------------------------------------------
1 |
2 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
99 |
--------------------------------------------------------------------------------
/src/layouts/components/FMenu.vue:
--------------------------------------------------------------------------------
1 |
2 |
31 |
32 |
54 |
--------------------------------------------------------------------------------
/src/layouts/components/FTagList.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
6 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | 关闭其他
20 | 全部关闭
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
37 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from "vue";
2 | import ElementPlus from "element-plus";
3 | import "element-plus/dist/index.css";
4 | import App from "./App.vue";
5 | import { router } from "./router";
6 | import store from "./store";
7 | import * as ElementPlusIconsVue from "@element-plus/icons-vue";
8 | const app = createApp(App);
9 | app.use(store);
10 | app.use(router);
11 |
12 | app.use(ElementPlus);
13 |
14 | for (const [key, component] of Object.entries(ElementPlusIconsVue)) {
15 | app.component(key, component);
16 | }
17 | import "virtual:windi.css";
18 |
19 | import "./permission";
20 |
21 | import "nprogress/nprogress.css";
22 |
23 | app.mount("#app");
24 |
--------------------------------------------------------------------------------
/src/pages/404.vue:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
--------------------------------------------------------------------------------
/src/pages/category/list.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | 分类列表
4 |
5 |
6 |
7 |
10 |
--------------------------------------------------------------------------------
/src/pages/goods/list.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | 商品管理
4 |
5 |
--------------------------------------------------------------------------------
/src/pages/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | 后台首页
4 |
5 | {{ $store.state.user.username }}
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/pages/login.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
欢迎光临 🎓
6 |
此站点是《vue3 + vite实战商城后台开发》的演示地址
7 |
8 |
9 |
10 | 欢迎回来
11 |
12 |
13 | 账号密码登录
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 | 登 录
38 |
39 |
40 |
41 |
42 |
43 |
44 |
109 |
110 |
--------------------------------------------------------------------------------
/src/permission.js:
--------------------------------------------------------------------------------
1 | import { router, addRoutes } from "~/router";
2 | import { getToken } from "~/composables/auth";
3 | import { toast, showFullLoading, hideFullLoading } from "~/composables/util";
4 | import store from "./store";
5 |
6 | // 全局前置守卫
7 | let hasGetInfo = false;
8 | router.beforeEach(async (to, from, next) => {
9 | // 显示loading
10 | showFullLoading();
11 |
12 | const token = getToken();
13 |
14 | // 没有登录,强制跳转回登录页
15 | if (!token && to.path != "/login") {
16 | toast("请先登录", "error");
17 | return next({ path: "/login" });
18 | }
19 |
20 | // 防止重复登录
21 | if (token && to.path == "/login") {
22 | toast("请勿重复登录", "error");
23 | return next({ path: from.path ? from.path : "/" });
24 | }
25 |
26 | // 如果用户登录了,自动获取用户信息,并存储在vuex当中
27 | let hasNewRoutes = false;
28 | if (token && !hasGetInfo) {
29 | let { menus } = await store.dispatch("getinfo");
30 | hasGetInfo = true;
31 | //动态添加路由
32 | hasNewRoutes = addRoutes(menus);
33 | }
34 |
35 | // 设置页面标题
36 | let title = (to.meta.title ? to.meta.title : "Vue3") + "-追梦编程商城后台";
37 | document.title = title;
38 |
39 | hasNewRoutes ? next(to.fullPath) : next();
40 | });
41 |
42 | // 全局后置守卫
43 | router.afterEach((to, from) => hideFullLoading());
44 |
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | import { createRouter, createWebHashHistory } from "vue-router";
2 |
3 | import Admin from "~/layouts/admin.vue";
4 | import Index from "~/pages/index.vue";
5 | import Login from "~/pages/login.vue";
6 | import NotFound from "~/pages/404.vue";
7 | import GoodList from "~/pages/goods/list.vue";
8 | import CategoryList from "~/pages/category/list.vue";
9 |
10 | /* const routes = [
11 | {
12 | path:"/",
13 | component:Admin,
14 | // 子路由
15 | children:[]
16 | },
17 | {
18 | path:"/login",
19 | component:Login,
20 | meta:{
21 | title:"登录页"
22 | }
23 | },{
24 | path: '/:pathMatch(.*)*',
25 | name: 'NotFound',
26 | component: NotFound
27 | }] */
28 |
29 | //默认路由,所有用户共享
30 | const routes = [
31 | {
32 | path: "/",
33 | name: "admin",
34 | component: Admin,
35 | },
36 | {
37 | path: "/login",
38 | component: Login,
39 | meta: {
40 | title: "登录页",
41 | },
42 | },
43 | {
44 | path: "/:pathMatch(.*)*",
45 | name: "NotFound",
46 | component: NotFound,
47 | },
48 | ];
49 |
50 | //动态匹配添加路由
51 | const asyncRoutes = [
52 | {
53 | path: "/",
54 | name: "/",
55 | component: Index,
56 | meta: {
57 | title: "后台首页",
58 | },
59 | },
60 | {
61 | path: "/goods/list",
62 | name: "/goods/list",
63 | component: GoodList,
64 | meta: {
65 | title: "商品管理",
66 | },
67 | },
68 | {
69 | path: "/category/list",
70 | name: "/category/list",
71 | component: CategoryList,
72 | meta: {
73 | title: "分类列表",
74 | },
75 | },
76 | ];
77 |
78 | export const router = createRouter({
79 | history: createWebHashHistory(),
80 | routes,
81 | });
82 |
83 | //动态添加路由方法
84 | export function addRoutes(menus) {
85 | //是否有新的路由
86 | let hasNewRoutes = false;
87 | const findAndAddRoutesByMenus = (arr) => {
88 | arr.forEach((e) => {
89 | let item = asyncRoutes.find((o) => o.path == e.frontpath);
90 | if (item && !router.hasRoute(item.path)) {
91 | router.addRoute("admin", item);
92 | hasNewRoutes = true;
93 | }
94 | //子路由
95 | if (e.child && e.child.length > 0) {
96 | findAndAddRoutesByMenus(e.child);
97 | }
98 | });
99 | };
100 | findAndAddRoutesByMenus(menus)
101 |
102 | // console.log("获取路由",router.getRoutes());
103 | return hasNewRoutes;
104 | }
105 |
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | import { createStore } from "vuex";
2 | import { login, getinfo } from "~/api/manager";
3 | import { setToken, removeToken } from "~/composables/auth";
4 | const store = createStore({
5 | state() {
6 | return {
7 | // 用户信息
8 | user: {},
9 |
10 | // 侧边宽度
11 | asideWidth: "250px",
12 | menus: [],
13 | ruleNames: [],
14 | };
15 | },
16 | mutations: {
17 | // 记录用户信息
18 | SET_USERINFO(state, user) {
19 | state.user = user;
20 | },
21 | // 展开/缩起侧边
22 | handleAsideWidth(state) {
23 | state.asideWidth = state.asideWidth == "250px" ? "64px" : "250px";
24 | },
25 | SET_MENUS(state, menu) {
26 | state.menus = menu;
27 | },
28 | SET_RULENAMES(state, ruleNames) {
29 | state.ruleNames = ruleNames;
30 | },
31 | },
32 | actions: {
33 | // 登录
34 | login({ commit }, { username, password }) {
35 | return new Promise((resolve, reject) => {
36 | login(username, password)
37 | .then((res) => {
38 | setToken(res.token);
39 |
40 | resolve(res);
41 | })
42 | .catch((err) => reject(err));
43 | });
44 | },
45 | // 获取当前登录用户信息
46 | getinfo({ commit }) {
47 | return new Promise((resolve, reject) => {
48 | getinfo()
49 | .then((res) => {
50 | console.log(res);
51 | commit("SET_USERINFO", res);
52 | commit("SET_MENUS", res.menus);
53 | commit("SET_RULENAMES", res.ruleNames);
54 | resolve(res);
55 | })
56 | .catch((err) => reject(err));
57 | });
58 | },
59 | // 退出登录
60 | logout({ commit }) {
61 | // 移除cookie里的token
62 | removeToken();
63 | // 清除当前用户状态 vuex
64 | commit("SET_USERINFO", {});
65 | },
66 | },
67 | });
68 |
69 | export default store;
70 |
--------------------------------------------------------------------------------
/u.sh:
--------------------------------------------------------------------------------
1 | info=$1
2 | if ["$info" = ""];
3 | then info="feat:Transition global transition animation"
4 | fi
5 | git add -A
6 | git commit -m "$info"
7 | git push origin main
--------------------------------------------------------------------------------
/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite'
2 | import vue from '@vitejs/plugin-vue'
3 | import WindiCSS from 'vite-plugin-windicss'
4 |
5 | import path from "path"
6 |
7 | // https://vitejs.dev/config/
8 | export default defineConfig({
9 | resolve:{
10 | // src目录别名
11 | alias:{
12 | "~":path.resolve(__dirname,"src"),
13 | }
14 | },
15 |
16 | server:{
17 | proxy:{
18 | '/api': {
19 | target: 'http://ceshi13.dishait.cn',
20 | changeOrigin: true,
21 | rewrite: (path) => path.replace(/^\/api/, '')
22 | },
23 | }
24 | },
25 |
26 | plugins: [vue(),WindiCSS()]
27 | })
28 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@antfu/utils@^0.5.2":
6 | version "0.5.2"
7 | resolved "https://registry.npmmirror.com/@antfu/utils/-/utils-0.5.2.tgz#8c2d931ff927be0ebe740169874a3d4004ab414b"
8 | integrity sha512-CQkeV+oJxUazwjlHD0/3ZD08QWKuGQkhnrKo3e6ly5pd48VUpXbb77q0xMU4+vc2CkJnDS02Eq/M9ugyX20XZA==
9 |
10 | "@babel/parser@^7.16.4":
11 | version "7.18.10"
12 | resolved "https://registry.npmmirror.com/@babel/parser/-/parser-7.18.10.tgz#94b5f8522356e69e8277276adf67ed280c90ecc1"
13 | integrity sha512-TYk3OA0HKL6qNryUayb5UUEhM/rkOQozIBEA5ITXh5DWrSp0TlUQXMyZmnWxG/DizSWBeeQ0Zbc5z8UGaaqoeg==
14 |
15 | "@css-render/plugin-bem@^0.15.10":
16 | version "0.15.11"
17 | resolved "https://registry.npmmirror.com/@css-render/plugin-bem/-/plugin-bem-0.15.11.tgz#250b853704af1fbb935b8fcd987839dcc9c95ce2"
18 | integrity sha512-Bn8qadYPIz5DhZ4obTGHOJzeziQH6kY0+Fk5AEvwuuy378SLwwvXuuoechLjBHcgKkPCM03Oo4dDSGP/6NMdyw==
19 |
20 | "@css-render/vue3-ssr@^0.15.10":
21 | version "0.15.11"
22 | resolved "https://registry.npmmirror.com/@css-render/vue3-ssr/-/vue3-ssr-0.15.11.tgz#d6646f69c7bd4b54485a40441ac60102822cd492"
23 | integrity sha512-n+SuqLPbY30FUTM8slX75OaEG+c8XlTOFrAklekX2XQGvBbz9XdBE6hTEgGlV5kPcTMqTJeCG7Vzhs9/29VC7w==
24 |
25 | "@ctrl/tinycolor@^3.4.1":
26 | version "3.4.1"
27 | resolved "https://registry.npmmirror.com/@ctrl/tinycolor/-/tinycolor-3.4.1.tgz#75b4c27948c81e88ccd3a8902047bcd797f38d32"
28 | integrity sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==
29 |
30 | "@element-plus/icons-vue@^1.1.4":
31 | version "1.1.4"
32 | resolved "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-1.1.4.tgz#5d2788ea356f1458068e6d400e724ca5f3d29aca"
33 | integrity sha512-Iz/nHqdp1sFPmdzRwHkEQQA3lKvoObk8azgABZ81QUOpW9s/lUyQVUSh0tNtEPZXQlKwlSh7SPgoVxzrE0uuVQ==
34 |
35 | "@element-plus/icons-vue@^2.0.6":
36 | version "2.0.6"
37 | resolved "https://registry.npmmirror.com/@element-plus/icons-vue/-/icons-vue-2.0.6.tgz#8490e7a3193c17515d10c3be0544d800afe6a228"
38 | integrity sha512-lPpG8hYkjL/Z97DH5Ei6w6o22Z4YdNglWCNYOPcB33JCF2A4wye6HFgSI7hEt9zdLyxlSpiqtgf9XcYU+m5mew==
39 |
40 | "@emotion/hash@~0.8.0":
41 | version "0.8.0"
42 | resolved "https://registry.npmmirror.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413"
43 | integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==
44 |
45 | "@floating-ui/core@^0.7.3":
46 | version "0.7.3"
47 | resolved "https://registry.npmmirror.com/@floating-ui/core/-/core-0.7.3.tgz#d274116678ffae87f6b60e90f88cc4083eefab86"
48 | integrity sha512-buc8BXHmG9l82+OQXOFU3Kr2XQx9ys01U/Q9HMIrZ300iLc8HLMgh7dcCqgYzAzf4BkoQvDcXf5Y+CuEZ5JBYg==
49 |
50 | "@floating-ui/dom@^0.5.4":
51 | version "0.5.4"
52 | resolved "https://registry.npmmirror.com/@floating-ui/dom/-/dom-0.5.4.tgz#4eae73f78bcd4bd553ae2ade30e6f1f9c73fe3f1"
53 | integrity sha512-419BMceRLq0RrmTSDxn8hf9R3VCJv2K9PUfugh5JyEFmdjzDo+e8U5EdR8nzKq8Yj1htzLm3b6eQEEam3/rrtg==
54 | dependencies:
55 | "@floating-ui/core" "^0.7.3"
56 |
57 | "@juggle/resize-observer@^3.3.1":
58 | version "3.4.0"
59 | resolved "https://registry.npmmirror.com/@juggle/resize-observer/-/resize-observer-3.4.0.tgz#08d6c5e20cf7e4cc02fd181c4b0c225cd31dbb60"
60 | integrity sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==
61 |
62 | "@nodelib/fs.scandir@2.1.5":
63 | version "2.1.5"
64 | resolved "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
65 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
66 | dependencies:
67 | "@nodelib/fs.stat" "2.0.5"
68 | run-parallel "^1.1.9"
69 |
70 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
71 | version "2.0.5"
72 | resolved "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
73 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
74 |
75 | "@nodelib/fs.walk@^1.2.3":
76 | version "1.2.8"
77 | resolved "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
78 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
79 | dependencies:
80 | "@nodelib/fs.scandir" "2.1.5"
81 | fastq "^1.6.0"
82 |
83 | "@popperjs/core@npm:@sxzz/popperjs-es@^2.11.7":
84 | version "2.11.7"
85 | resolved "https://registry.npmmirror.com/@sxzz/popperjs-es/-/popperjs-es-2.11.7.tgz#a7f69e3665d3da9b115f9e71671dae1b97e13671"
86 | integrity sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==
87 |
88 | "@types/cookie@^0.3.3":
89 | version "0.3.3"
90 | resolved "https://registry.npmmirror.com/@types/cookie/-/cookie-0.3.3.tgz#85bc74ba782fb7aa3a514d11767832b0e3bc6803"
91 | integrity sha512-LKVP3cgXBT9RYj+t+9FDKwS5tdI+rPBXaNSkma7hvqy35lc7mAokC2zsqWJH0LaqIt3B962nuYI77hsJoT1gow==
92 |
93 | "@types/lodash-es@^4.17.6":
94 | version "4.17.6"
95 | resolved "https://registry.npmmirror.com/@types/lodash-es/-/lodash-es-4.17.6.tgz#c2ed4c8320ffa6f11b43eb89e9eaeec65966a0a0"
96 | integrity sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==
97 | dependencies:
98 | "@types/lodash" "*"
99 |
100 | "@types/lodash@*", "@types/lodash@^4.14.182":
101 | version "4.14.182"
102 | resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.182.tgz#05301a4d5e62963227eaafe0ce04dd77c54ea5c2"
103 | integrity sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q==
104 |
105 | "@types/lodash@^4.14.181":
106 | version "4.14.186"
107 | resolved "https://registry.npmmirror.com/@types/lodash/-/lodash-4.14.186.tgz#862e5514dd7bd66ada6c70ee5fce844b06c8ee97"
108 | integrity sha512-eHcVlLXP0c2FlMPm56ITode2AgLMSa6aJ05JTTbYbI+7EMkCEE5qk2E41d5g2lCVTqRe0GnnRFurmlCsDODrPw==
109 |
110 | "@types/node@~17.0.5":
111 | version "17.0.45"
112 | resolved "https://registry.npmmirror.com/@types/node/-/node-17.0.45.tgz#2c0fafd78705e7a18b7906b5201a522719dc5190"
113 | integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==
114 |
115 | "@types/web-bluetooth@^0.0.14":
116 | version "0.0.14"
117 | resolved "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.14.tgz#94e175b53623384bff1f354cdb3197a8d63cdbe5"
118 | integrity sha512-5d2RhCard1nQUC3aHcq/gHzWYO6K0WJmAbjO7mQJgCQKtZpgXxv1rOM6O/dBDhDYYVutk1sciOgNSe+5YyfM8A==
119 |
120 | "@types/web-bluetooth@^0.0.15":
121 | version "0.0.15"
122 | resolved "https://registry.npmmirror.com/@types/web-bluetooth/-/web-bluetooth-0.0.15.tgz#d60330046a6ed8a13b4a53df3813c44942ebdf72"
123 | integrity sha512-w7hEHXnPMEZ+4nGKl/KDRVpxkwYxYExuHOYXyzIzCDzEZ9ZCGMAewulr9IqJu2LR4N37fcnb1XVeuZ09qgOxhA==
124 |
125 | "@vitejs/plugin-vue@^2.3.1":
126 | version "2.3.3"
127 | resolved "https://registry.npmmirror.com/@vitejs/plugin-vue/-/plugin-vue-2.3.3.tgz#fbf80cc039b82ac21a1acb0f0478de8f61fbf600"
128 | integrity sha512-SmQLDyhz+6lGJhPELsBdzXGc+AcaT8stgkbiTFGpXPe8Tl1tJaBw1A6pxDqDuRsVkD8uscrkx3hA7QDOoKYtyw==
129 |
130 | "@vue/compiler-core@3.2.37":
131 | version "3.2.37"
132 | resolved "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.2.37.tgz#b3c42e04c0e0f2c496ff1784e543fbefe91e215a"
133 | integrity sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==
134 | dependencies:
135 | "@babel/parser" "^7.16.4"
136 | "@vue/shared" "3.2.37"
137 | estree-walker "^2.0.2"
138 | source-map "^0.6.1"
139 |
140 | "@vue/compiler-dom@3.2.37":
141 | version "3.2.37"
142 | resolved "https://registry.npmmirror.com/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz#10d2427a789e7c707c872da9d678c82a0c6582b5"
143 | integrity sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==
144 | dependencies:
145 | "@vue/compiler-core" "3.2.37"
146 | "@vue/shared" "3.2.37"
147 |
148 | "@vue/compiler-sfc@3.2.37":
149 | version "3.2.37"
150 | resolved "https://registry.npmmirror.com/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz#3103af3da2f40286edcd85ea495dcb35bc7f5ff4"
151 | integrity sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==
152 | dependencies:
153 | "@babel/parser" "^7.16.4"
154 | "@vue/compiler-core" "3.2.37"
155 | "@vue/compiler-dom" "3.2.37"
156 | "@vue/compiler-ssr" "3.2.37"
157 | "@vue/reactivity-transform" "3.2.37"
158 | "@vue/shared" "3.2.37"
159 | estree-walker "^2.0.2"
160 | magic-string "^0.25.7"
161 | postcss "^8.1.10"
162 | source-map "^0.6.1"
163 |
164 | "@vue/compiler-ssr@3.2.37":
165 | version "3.2.37"
166 | resolved "https://registry.npmmirror.com/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz#4899d19f3a5fafd61524a9d1aee8eb0505313cff"
167 | integrity sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==
168 | dependencies:
169 | "@vue/compiler-dom" "3.2.37"
170 | "@vue/shared" "3.2.37"
171 |
172 | "@vue/devtools-api@^6.0.0-beta.11", "@vue/devtools-api@^6.1.4":
173 | version "6.2.1"
174 | resolved "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.2.1.tgz#6f2948ff002ec46df01420dfeff91de16c5b4092"
175 | integrity sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ==
176 |
177 | "@vue/reactivity-transform@3.2.37":
178 | version "3.2.37"
179 | resolved "https://registry.npmmirror.com/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz#0caa47c4344df4ae59f5a05dde2a8758829f8eca"
180 | integrity sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==
181 | dependencies:
182 | "@babel/parser" "^7.16.4"
183 | "@vue/compiler-core" "3.2.37"
184 | "@vue/shared" "3.2.37"
185 | estree-walker "^2.0.2"
186 | magic-string "^0.25.7"
187 |
188 | "@vue/reactivity@3.2.37":
189 | version "3.2.37"
190 | resolved "https://registry.npmmirror.com/@vue/reactivity/-/reactivity-3.2.37.tgz#5bc3847ac58828e2b78526e08219e0a1089f8848"
191 | integrity sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==
192 | dependencies:
193 | "@vue/shared" "3.2.37"
194 |
195 | "@vue/runtime-core@3.2.37":
196 | version "3.2.37"
197 | resolved "https://registry.npmmirror.com/@vue/runtime-core/-/runtime-core-3.2.37.tgz#7ba7c54bb56e5d70edfc2f05766e1ca8519966e3"
198 | integrity sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==
199 | dependencies:
200 | "@vue/reactivity" "3.2.37"
201 | "@vue/shared" "3.2.37"
202 |
203 | "@vue/runtime-dom@3.2.37":
204 | version "3.2.37"
205 | resolved "https://registry.npmmirror.com/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz#002bdc8228fa63949317756fb1e92cdd3f9f4bbd"
206 | integrity sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==
207 | dependencies:
208 | "@vue/runtime-core" "3.2.37"
209 | "@vue/shared" "3.2.37"
210 | csstype "^2.6.8"
211 |
212 | "@vue/server-renderer@3.2.37":
213 | version "3.2.37"
214 | resolved "https://registry.npmmirror.com/@vue/server-renderer/-/server-renderer-3.2.37.tgz#840a29c8dcc29bddd9b5f5ffa22b95c0e72afdfc"
215 | integrity sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==
216 | dependencies:
217 | "@vue/compiler-ssr" "3.2.37"
218 | "@vue/shared" "3.2.37"
219 |
220 | "@vue/shared@3.2.37":
221 | version "3.2.37"
222 | resolved "https://registry.npmmirror.com/@vue/shared/-/shared-3.2.37.tgz#8e6adc3f2759af52f0e85863dfb0b711ecc5c702"
223 | integrity sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==
224 |
225 | "@vueuse/core@8.9.4", "@vueuse/core@^8.7.5":
226 | version "8.9.4"
227 | resolved "https://registry.npmmirror.com/@vueuse/core/-/core-8.9.4.tgz#c7db40f19390b3c9f4ff9294a30461497f62ec19"
228 | integrity sha512-B/Mdj9TK1peFyWaPof+Zf/mP9XuGAngaJZBwPaXBvU3aCTZlx3ltlrFFFyMV4iGBwsjSCeUCgZrtkEj9dS2Y3Q==
229 | dependencies:
230 | "@types/web-bluetooth" "^0.0.14"
231 | "@vueuse/metadata" "8.9.4"
232 | "@vueuse/shared" "8.9.4"
233 | vue-demi "*"
234 |
235 | "@vueuse/core@^9.3.0":
236 | version "9.3.0"
237 | resolved "https://registry.npmmirror.com/@vueuse/core/-/core-9.3.0.tgz#74d855bd19cb5eadd2edb30c871918fac881e8b8"
238 | integrity sha512-64Rna8IQDWpdrJxgitDg7yv1yTp41ZmvV8zlLEylK4QQLWAhz1OFGZDPZ8bU4lwcGgbEJ2sGi2jrdNh4LttUSQ==
239 | dependencies:
240 | "@types/web-bluetooth" "^0.0.15"
241 | "@vueuse/metadata" "9.3.0"
242 | "@vueuse/shared" "9.3.0"
243 | vue-demi "*"
244 |
245 | "@vueuse/integrations@^8.4.1":
246 | version "8.9.4"
247 | resolved "https://registry.npmmirror.com/@vueuse/integrations/-/integrations-8.9.4.tgz#1343cb0fb0ee5393b28193be7f0792e2a15ac7e8"
248 | integrity sha512-Nk7mH0ThTdiuiiuB+1lyC+5ihnywrr+9h9IA4R4Ry8Mli/cZL38zc3qZWIsCVPm66Lr+7kEp3nnHdSxKi7ivrg==
249 | dependencies:
250 | "@vueuse/core" "8.9.4"
251 | "@vueuse/shared" "8.9.4"
252 | vue-demi "*"
253 |
254 | "@vueuse/metadata@8.9.4":
255 | version "8.9.4"
256 | resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-8.9.4.tgz#a4132db33e4c1b1023636acfa20aa7b37ab3d978"
257 | integrity sha512-IwSfzH80bnJMzqhaapqJl9JRIiyQU0zsRGEgnxN6jhq7992cPUJIRfV+JHRIZXjYqbwt07E1gTEp0R0zPJ1aqw==
258 |
259 | "@vueuse/metadata@9.3.0":
260 | version "9.3.0"
261 | resolved "https://registry.npmmirror.com/@vueuse/metadata/-/metadata-9.3.0.tgz#c107fe77a577e1f221536cd1b291039c0c7c4bce"
262 | integrity sha512-GnnfjbzIPJIh9ngL9s9oGU1+Hx/h5/KFqTfJykzh/1xjaHkedV9g0MASpdmPZIP+ynNhKAcEfA6g5i8KXwtoMA==
263 |
264 | "@vueuse/shared@8.9.4":
265 | version "8.9.4"
266 | resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-8.9.4.tgz#c9741c30ffb666b50d62f0dd80b76119fd47573e"
267 | integrity sha512-wt+T30c4K6dGRMVqPddexEVLa28YwxW5OFIPmzUHICjphfAuBFTTdDoyqREZNDOFJZ44ARH1WWQNCUK8koJ+Ag==
268 | dependencies:
269 | vue-demi "*"
270 |
271 | "@vueuse/shared@9.3.0":
272 | version "9.3.0"
273 | resolved "https://registry.npmmirror.com/@vueuse/shared/-/shared-9.3.0.tgz#40fc138ba4e379c894075830aa2e15404aaa8a5b"
274 | integrity sha512-caGUWLY0DpPC6l31KxeUy6vPVNA0yKxx81jFYLoMpyP6cF84FG5Dkf69DfSUqL57wX8JcUkJDMnQaQIZPWFEQQ==
275 | dependencies:
276 | vue-demi "*"
277 |
278 | "@windicss/config@1.8.7":
279 | version "1.8.7"
280 | resolved "https://registry.npmmirror.com/@windicss/config/-/config-1.8.7.tgz#650bec3c6e3293306e4fe0c478253bd0085884aa"
281 | integrity sha512-8n+/Y36j5L3rw2tgMdLjeGRuNV7VYfKoHoraLK6Bk9OJ1MTPd5vv7pekof/uOPWVV7WWjVeZ6CTO8SDbDDW3iw==
282 | dependencies:
283 | debug "^4.3.4"
284 | jiti "^1.14.0"
285 | windicss "^3.5.6"
286 |
287 | "@windicss/plugin-utils@1.8.7":
288 | version "1.8.7"
289 | resolved "https://registry.npmmirror.com/@windicss/plugin-utils/-/plugin-utils-1.8.7.tgz#0e3ad889974276fc00029e1a2d911bca16792a33"
290 | integrity sha512-dfj95olNZyGFDPFMBvE5oq8hA5f0ooUJZjVdWlthS4ek4W1/xNOHDxB6ygWR8LE9zCOXZykApjt1LOhy9Ky2QA==
291 | dependencies:
292 | "@antfu/utils" "^0.5.2"
293 | "@windicss/config" "1.8.7"
294 | debug "^4.3.4"
295 | fast-glob "^3.2.11"
296 | magic-string "^0.26.2"
297 | micromatch "^4.0.5"
298 | windicss "^3.5.6"
299 |
300 | async-validator@^4.0.7, async-validator@^4.2.5:
301 | version "4.2.5"
302 | resolved "https://registry.npmmirror.com/async-validator/-/async-validator-4.2.5.tgz#c96ea3332a521699d0afaaceed510a54656c6339"
303 | integrity sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==
304 |
305 | asynckit@^0.4.0:
306 | version "0.4.0"
307 | resolved "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
308 | integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
309 |
310 | axios@^0.27.2:
311 | version "0.27.2"
312 | resolved "https://registry.npmmirror.com/axios/-/axios-0.27.2.tgz#207658cc8621606e586c85db4b41a750e756d972"
313 | integrity sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==
314 | dependencies:
315 | follow-redirects "^1.14.9"
316 | form-data "^4.0.0"
317 |
318 | braces@^3.0.2:
319 | version "3.0.2"
320 | resolved "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
321 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
322 | dependencies:
323 | fill-range "^7.0.1"
324 |
325 | combined-stream@^1.0.8:
326 | version "1.0.8"
327 | resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
328 | integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
329 | dependencies:
330 | delayed-stream "~1.0.0"
331 |
332 | cookie@^0.4.0:
333 | version "0.4.2"
334 | resolved "https://registry.npmmirror.com/cookie/-/cookie-0.4.2.tgz#0e41f24de5ecf317947c82fc789e06a884824432"
335 | integrity sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==
336 |
337 | css-render@^0.15.10:
338 | version "0.15.11"
339 | resolved "https://registry.npmmirror.com/css-render/-/css-render-0.15.11.tgz#52a77cd8335394485be2417675121c2efe954bb5"
340 | integrity sha512-hnLrHPUndVUTF5nmNPRey6hpixK02IPUGdEsm2xRjvJuewToyrVFx9Nmai8rgfVzhTFo5SJVh2PHAtzaIV8JKw==
341 | dependencies:
342 | "@emotion/hash" "~0.8.0"
343 | "@types/node" "~17.0.5"
344 | csstype "~3.0.5"
345 |
346 | csstype@^2.6.8:
347 | version "2.6.20"
348 | resolved "https://registry.npmmirror.com/csstype/-/csstype-2.6.20.tgz#9229c65ea0b260cf4d3d997cb06288e36a8d6dda"
349 | integrity sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==
350 |
351 | csstype@~3.0.5:
352 | version "3.0.11"
353 | resolved "https://registry.npmmirror.com/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33"
354 | integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==
355 |
356 | date-fns-tz@^1.3.3:
357 | version "1.3.7"
358 | resolved "https://registry.npmmirror.com/date-fns-tz/-/date-fns-tz-1.3.7.tgz#e8e9d2aaceba5f1cc0e677631563081fdcb0e69a"
359 | integrity sha512-1t1b8zyJo+UI8aR+g3iqr5fkUHWpd58VBx8J/ZSQ+w7YrGlw80Ag4sA86qkfCXRBLmMc4I2US+aPMd4uKvwj5g==
360 |
361 | date-fns@^2.28.0:
362 | version "2.29.3"
363 | resolved "https://registry.npmmirror.com/date-fns/-/date-fns-2.29.3.tgz#27402d2fc67eb442b511b70bbdf98e6411cd68a8"
364 | integrity sha512-dDCnyH2WnnKusqvZZ6+jA1O51Ibt8ZMRNkDZdyAyK4YfbDwa/cEmuztzG5pk6hqlp9aSBPYcjOlktquahGwGeA==
365 |
366 | dayjs@^1.11.3:
367 | version "1.11.4"
368 | resolved "https://registry.npmmirror.com/dayjs/-/dayjs-1.11.4.tgz#3b3c10ca378140d8917e06ebc13a4922af4f433e"
369 | integrity sha512-Zj/lPM5hOvQ1Bf7uAvewDaUcsJoI6JmNqmHhHl3nyumwe0XHwt8sWdOVAPACJzCebL8gQCi+K49w7iKWnGwX9g==
370 |
371 | debug@^4.3.4:
372 | version "4.3.4"
373 | resolved "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865"
374 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
375 | dependencies:
376 | ms "2.1.2"
377 |
378 | delayed-stream@~1.0.0:
379 | version "1.0.0"
380 | resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
381 | integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
382 |
383 | element-plus@^2.1.11:
384 | version "2.2.12"
385 | resolved "https://registry.npmmirror.com/element-plus/-/element-plus-2.2.12.tgz#b6c4e298e02ba9b904d70daa54def27b2de8c43c"
386 | integrity sha512-g/hIHj3b+dND2R3YRvyvCJtJhQvR7lWvXqhJaoxaQmajjNWedoe4rttxG26fOSv9YCC2wN4iFDcJHs70YFNgrA==
387 | dependencies:
388 | "@ctrl/tinycolor" "^3.4.1"
389 | "@element-plus/icons-vue" "^2.0.6"
390 | "@floating-ui/dom" "^0.5.4"
391 | "@popperjs/core" "npm:@sxzz/popperjs-es@^2.11.7"
392 | "@types/lodash" "^4.14.182"
393 | "@types/lodash-es" "^4.17.6"
394 | "@vueuse/core" "^8.7.5"
395 | async-validator "^4.2.5"
396 | dayjs "^1.11.3"
397 | escape-html "^1.0.3"
398 | lodash "^4.17.21"
399 | lodash-es "^4.17.21"
400 | lodash-unified "^1.0.2"
401 | memoize-one "^6.0.0"
402 | normalize-wheel-es "^1.2.0"
403 |
404 | esbuild-android-64@0.14.51:
405 | version "0.14.51"
406 | resolved "https://registry.npmmirror.com/esbuild-android-64/-/esbuild-android-64-0.14.51.tgz#414a087cb0de8db1e347ecca6c8320513de433db"
407 | integrity sha512-6FOuKTHnC86dtrKDmdSj2CkcKF8PnqkaIXqvgydqfJmqBazCPdw+relrMlhGjkvVdiiGV70rpdnyFmA65ekBCQ==
408 |
409 | esbuild-android-arm64@0.14.51:
410 | version "0.14.51"
411 | resolved "https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.51.tgz#55de3bce2aab72bcd2b606da4318ad00fb9c8151"
412 | integrity sha512-vBtp//5VVkZWmYYvHsqBRCMMi1MzKuMIn5XDScmnykMTu9+TD9v0NMEDqQxvtFToeYmojdo5UCV2vzMQWJcJ4A==
413 |
414 | esbuild-darwin-64@0.14.51:
415 | version "0.14.51"
416 | resolved "https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.51.tgz#4259f23ed6b4cea2ec8a28d87b7fb9801f093754"
417 | integrity sha512-YFmXPIOvuagDcwCejMRtCDjgPfnDu+bNeh5FU2Ryi68ADDVlWEpbtpAbrtf/lvFTWPexbgyKgzppNgsmLPr8PA==
418 |
419 | esbuild-darwin-arm64@0.14.51:
420 | version "0.14.51"
421 | resolved "https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.51.tgz#d77b4366a71d84e530ba019d540b538b295d494a"
422 | integrity sha512-juYD0QnSKwAMfzwKdIF6YbueXzS6N7y4GXPDeDkApz/1RzlT42mvX9jgNmyOlWKN7YzQAYbcUEJmZJYQGdf2ow==
423 |
424 | esbuild-freebsd-64@0.14.51:
425 | version "0.14.51"
426 | resolved "https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.51.tgz#27b6587b3639f10519c65e07219d249b01f2ad38"
427 | integrity sha512-cLEI/aXjb6vo5O2Y8rvVSQ7smgLldwYY5xMxqh/dQGfWO+R1NJOFsiax3IS4Ng300SVp7Gz3czxT6d6qf2cw0g==
428 |
429 | esbuild-freebsd-arm64@0.14.51:
430 | version "0.14.51"
431 | resolved "https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.51.tgz#63c435917e566808c71fafddc600aca4d78be1ec"
432 | integrity sha512-TcWVw/rCL2F+jUgRkgLa3qltd5gzKjIMGhkVybkjk6PJadYInPtgtUBp1/hG+mxyigaT7ib+od1Xb84b+L+1Mg==
433 |
434 | esbuild-linux-32@0.14.51:
435 | version "0.14.51"
436 | resolved "https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.14.51.tgz#c3da774143a37e7f11559b9369d98f11f997a5d9"
437 | integrity sha512-RFqpyC5ChyWrjx8Xj2K0EC1aN0A37H6OJfmUXIASEqJoHcntuV3j2Efr9RNmUhMfNE6yEj2VpYuDteZLGDMr0w==
438 |
439 | esbuild-linux-64@0.14.51:
440 | version "0.14.51"
441 | resolved "https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.14.51.tgz#5d92b67f674e02ae0b4a9de9a757ba482115c4ae"
442 | integrity sha512-dxjhrqo5i7Rq6DXwz5v+MEHVs9VNFItJmHBe1CxROWNf4miOGoQhqSG8StStbDkQ1Mtobg6ng+4fwByOhoQoeA==
443 |
444 | esbuild-linux-arm64@0.14.51:
445 | version "0.14.51"
446 | resolved "https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.51.tgz#dac84740516e859d8b14e1ecc478dd5241b10c93"
447 | integrity sha512-D9rFxGutoqQX3xJPxqd6o+kvYKeIbM0ifW2y0bgKk5HPgQQOo2k9/2Vpto3ybGYaFPCE5qTGtqQta9PoP6ZEzw==
448 |
449 | esbuild-linux-arm@0.14.51:
450 | version "0.14.51"
451 | resolved "https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.51.tgz#b3ae7000696cd53ed95b2b458554ff543a60e106"
452 | integrity sha512-LsJynDxYF6Neg7ZC7748yweCDD+N8ByCv22/7IAZglIEniEkqdF4HCaa49JNDLw1UQGlYuhOB8ZT/MmcSWzcWg==
453 |
454 | esbuild-linux-mips64le@0.14.51:
455 | version "0.14.51"
456 | resolved "https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.51.tgz#dad10770fac94efa092b5a0643821c955a9dd385"
457 | integrity sha512-vS54wQjy4IinLSlb5EIlLoln8buh1yDgliP4CuEHumrPk4PvvP4kTRIG4SzMXm6t19N0rIfT4bNdAxzJLg2k6A==
458 |
459 | esbuild-linux-ppc64le@0.14.51:
460 | version "0.14.51"
461 | resolved "https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.51.tgz#b68c2f8294d012a16a88073d67e976edd4850ae0"
462 | integrity sha512-xcdd62Y3VfGoyphNP/aIV9LP+RzFw5M5Z7ja+zdpQHHvokJM7d0rlDRMN+iSSwvUymQkqZO+G/xjb4/75du8BQ==
463 |
464 | esbuild-linux-riscv64@0.14.51:
465 | version "0.14.51"
466 | resolved "https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.51.tgz#608a318b8697123e44c1e185cdf6708e3df50b93"
467 | integrity sha512-syXHGak9wkAnFz0gMmRBoy44JV0rp4kVCEA36P5MCeZcxFq8+fllBC2t6sKI23w3qd8Vwo9pTADCgjTSf3L3rA==
468 |
469 | esbuild-linux-s390x@0.14.51:
470 | version "0.14.51"
471 | resolved "https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.51.tgz#c9e7791170a3295dba79b93aa452beb9838a8625"
472 | integrity sha512-kFAJY3dv+Wq8o28K/C7xkZk/X34rgTwhknSsElIqoEo8armCOjMJ6NsMxm48KaWY2h2RUYGtQmr+RGuUPKBhyw==
473 |
474 | esbuild-netbsd-64@0.14.51:
475 | version "0.14.51"
476 | resolved "https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.51.tgz#0abd40b8c2e37fda6f5cc41a04cb2b690823d891"
477 | integrity sha512-ZZBI7qrR1FevdPBVHz/1GSk1x5GDL/iy42Zy8+neEm/HA7ma+hH/bwPEjeHXKWUDvM36CZpSL/fn1/y9/Hb+1A==
478 |
479 | esbuild-openbsd-64@0.14.51:
480 | version "0.14.51"
481 | resolved "https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.51.tgz#4adba0b7ea7eb1428bb00d8e94c199a949b130e8"
482 | integrity sha512-7R1/p39M+LSVQVgDVlcY1KKm6kFKjERSX1lipMG51NPcspJD1tmiZSmmBXoY5jhHIu6JL1QkFDTx94gMYK6vfA==
483 |
484 | esbuild-sunos-64@0.14.51:
485 | version "0.14.51"
486 | resolved "https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.51.tgz#4b8a6d97dfedda30a6e39607393c5c90ebf63891"
487 | integrity sha512-HoHaCswHxLEYN8eBTtyO0bFEWvA3Kdb++hSQ/lLG7TyKF69TeSG0RNoBRAs45x/oCeWaTDntEZlYwAfQlhEtJA==
488 |
489 | esbuild-windows-32@0.14.51:
490 | version "0.14.51"
491 | resolved "https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.14.51.tgz#d31d8ca0c1d314fb1edea163685a423b62e9ac17"
492 | integrity sha512-4rtwSAM35A07CBt1/X8RWieDj3ZUHQqUOaEo5ZBs69rt5WAFjP4aqCIobdqOy4FdhYw1yF8Z0xFBTyc9lgPtEg==
493 |
494 | esbuild-windows-64@0.14.51:
495 | version "0.14.51"
496 | resolved "https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.14.51.tgz#7d3c09c8652d222925625637bdc7e6c223e0085d"
497 | integrity sha512-HoN/5HGRXJpWODprGCgKbdMvrC3A2gqvzewu2eECRw2sYxOUoh2TV1tS+G7bHNapPGI79woQJGV6pFH7GH7qnA==
498 |
499 | esbuild-windows-arm64@0.14.51:
500 | version "0.14.51"
501 | resolved "https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.51.tgz#0220d2304bfdc11bc27e19b2aaf56edf183e4ae9"
502 | integrity sha512-JQDqPjuOH7o+BsKMSddMfmVJXrnYZxXDHsoLHc0xgmAZkOOCflRmC43q31pk79F9xuyWY45jDBPolb5ZgGOf9g==
503 |
504 | esbuild@^0.14.27:
505 | version "0.14.51"
506 | resolved "https://registry.npmmirror.com/esbuild/-/esbuild-0.14.51.tgz#1c8ecbc8db3710da03776211dc3ee3448f7aa51e"
507 | integrity sha512-+CvnDitD7Q5sT7F+FM65sWkF8wJRf+j9fPcprxYV4j+ohmzVj2W7caUqH2s5kCaCJAfcAICjSlKhDCcvDpU7nw==
508 | optionalDependencies:
509 | esbuild-android-64 "0.14.51"
510 | esbuild-android-arm64 "0.14.51"
511 | esbuild-darwin-64 "0.14.51"
512 | esbuild-darwin-arm64 "0.14.51"
513 | esbuild-freebsd-64 "0.14.51"
514 | esbuild-freebsd-arm64 "0.14.51"
515 | esbuild-linux-32 "0.14.51"
516 | esbuild-linux-64 "0.14.51"
517 | esbuild-linux-arm "0.14.51"
518 | esbuild-linux-arm64 "0.14.51"
519 | esbuild-linux-mips64le "0.14.51"
520 | esbuild-linux-ppc64le "0.14.51"
521 | esbuild-linux-riscv64 "0.14.51"
522 | esbuild-linux-s390x "0.14.51"
523 | esbuild-netbsd-64 "0.14.51"
524 | esbuild-openbsd-64 "0.14.51"
525 | esbuild-sunos-64 "0.14.51"
526 | esbuild-windows-32 "0.14.51"
527 | esbuild-windows-64 "0.14.51"
528 | esbuild-windows-arm64 "0.14.51"
529 |
530 | escape-html@^1.0.3:
531 | version "1.0.3"
532 | resolved "https://registry.npmmirror.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
533 | integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
534 |
535 | estree-walker@^2.0.2:
536 | version "2.0.2"
537 | resolved "https://registry.npmmirror.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac"
538 | integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==
539 |
540 | evtd@^0.2.2, evtd@^0.2.4:
541 | version "0.2.4"
542 | resolved "https://registry.npmmirror.com/evtd/-/evtd-0.2.4.tgz#0aac39ba44d6926e6668948ac27618e0795b9d07"
543 | integrity sha512-qaeGN5bx63s/AXgQo8gj6fBkxge+OoLddLniox5qtLAEY5HSnuSlISXVPxnSae1dWblvTh4/HoMIB+mbMsvZzw==
544 |
545 | fast-glob@^3.2.11:
546 | version "3.2.11"
547 | resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
548 | integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
549 | dependencies:
550 | "@nodelib/fs.stat" "^2.0.2"
551 | "@nodelib/fs.walk" "^1.2.3"
552 | glob-parent "^5.1.2"
553 | merge2 "^1.3.0"
554 | micromatch "^4.0.4"
555 |
556 | fastq@^1.6.0:
557 | version "1.13.0"
558 | resolved "https://registry.npmmirror.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
559 | integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==
560 | dependencies:
561 | reusify "^1.0.4"
562 |
563 | fill-range@^7.0.1:
564 | version "7.0.1"
565 | resolved "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
566 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
567 | dependencies:
568 | to-regex-range "^5.0.1"
569 |
570 | follow-redirects@^1.14.9:
571 | version "1.15.1"
572 | resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.1.tgz#0ca6a452306c9b276e4d3127483e29575e207ad5"
573 | integrity sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==
574 |
575 | form-data@^4.0.0:
576 | version "4.0.0"
577 | resolved "https://registry.npmmirror.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452"
578 | integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==
579 | dependencies:
580 | asynckit "^0.4.0"
581 | combined-stream "^1.0.8"
582 | mime-types "^2.1.12"
583 |
584 | fsevents@~2.3.2:
585 | version "2.3.2"
586 | resolved "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
587 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
588 |
589 | function-bind@^1.1.1:
590 | version "1.1.1"
591 | resolved "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
592 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
593 |
594 | glob-parent@^5.1.2:
595 | version "5.1.2"
596 | resolved "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
597 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
598 | dependencies:
599 | is-glob "^4.0.1"
600 |
601 | has@^1.0.3:
602 | version "1.0.3"
603 | resolved "https://registry.npmmirror.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
604 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
605 | dependencies:
606 | function-bind "^1.1.1"
607 |
608 | highlight.js@^11.5.0:
609 | version "11.6.0"
610 | resolved "https://registry.npmmirror.com/highlight.js/-/highlight.js-11.6.0.tgz#a50e9da05763f1bb0c1322c8f4f755242cff3f5a"
611 | integrity sha512-ig1eqDzJaB0pqEvlPVIpSSyMaO92bH1N2rJpLMN/nX396wTpDA4Eq0uK+7I/2XG17pFaaKE0kjV/XPeGt7Evjw==
612 |
613 | is-core-module@^2.9.0:
614 | version "2.9.0"
615 | resolved "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.9.0.tgz#e1c34429cd51c6dd9e09e0799e396e27b19a9c69"
616 | integrity sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==
617 | dependencies:
618 | has "^1.0.3"
619 |
620 | is-extglob@^2.1.1:
621 | version "2.1.1"
622 | resolved "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
623 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
624 |
625 | is-glob@^4.0.1:
626 | version "4.0.3"
627 | resolved "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
628 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
629 | dependencies:
630 | is-extglob "^2.1.1"
631 |
632 | is-number@^7.0.0:
633 | version "7.0.0"
634 | resolved "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
635 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
636 |
637 | jiti@^1.14.0:
638 | version "1.14.0"
639 | resolved "https://registry.npmmirror.com/jiti/-/jiti-1.14.0.tgz#5350fff532a4d891ca4bcd700c47c1f40e6ee326"
640 | integrity sha512-4IwstlaKQc9vCTC+qUXLM1hajy2ImiL9KnLvVYiaHOtS/v3wRjhLlGl121AmgDgx/O43uKmxownJghS5XMya2A==
641 |
642 | jquery@2.2.0:
643 | version "2.2.0"
644 | resolved "https://registry.npmmirror.com/jquery/-/jquery-2.2.0.tgz#d0e84ebbf199da51bf7ec39307f19b35754e9cba"
645 | integrity sha512-bQLMb56JzEBBs2CMzy8llOL0J1xm/JkDma6+UnF2cSPYJmvQHS9yZ+YGny/1YydkdZm8j0Ny8peiaeoWEwy9Zg==
646 |
647 | kolorist@^1.5.1:
648 | version "1.5.1"
649 | resolved "https://registry.npmmirror.com/kolorist/-/kolorist-1.5.1.tgz#c3d66dc4fabde4f6b7faa6efda84c00491f9e52b"
650 | integrity sha512-lxpCM3HTvquGxKGzHeknB/sUjuVoUElLlfYnXZT73K8geR9jQbroGlSCFBax9/0mpGoD3kzcMLnOlGQPJJNyqQ==
651 |
652 | lodash-es@^4.17.21:
653 | version "4.17.21"
654 | resolved "https://registry.npmmirror.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee"
655 | integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
656 |
657 | lodash-unified@^1.0.2:
658 | version "1.0.2"
659 | resolved "https://registry.npmmirror.com/lodash-unified/-/lodash-unified-1.0.2.tgz#bb2694db3533781e5cce984af60cfaea318b83c1"
660 | integrity sha512-OGbEy+1P+UT26CYi4opY4gebD8cWRDxAT6MAObIVQMiqYdxZr1g3QHWCToVsm31x2NkLS4K3+MC2qInaRMa39g==
661 |
662 | lodash@^4.17.21:
663 | version "4.17.21"
664 | resolved "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
665 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
666 |
667 | magic-string@^0.25.7:
668 | version "0.25.9"
669 | resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c"
670 | integrity sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==
671 | dependencies:
672 | sourcemap-codec "^1.4.8"
673 |
674 | magic-string@^0.26.2:
675 | version "0.26.2"
676 | resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.26.2.tgz#5331700e4158cd6befda738bb6b0c7b93c0d4432"
677 | integrity sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==
678 | dependencies:
679 | sourcemap-codec "^1.4.8"
680 |
681 | memoize-one@^6.0.0:
682 | version "6.0.0"
683 | resolved "https://registry.npmmirror.com/memoize-one/-/memoize-one-6.0.0.tgz#b2591b871ed82948aee4727dc6abceeeac8c1045"
684 | integrity sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==
685 |
686 | merge2@^1.3.0:
687 | version "1.4.1"
688 | resolved "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
689 | integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
690 |
691 | micromatch@^4.0.4, micromatch@^4.0.5:
692 | version "4.0.5"
693 | resolved "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
694 | integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
695 | dependencies:
696 | braces "^3.0.2"
697 | picomatch "^2.3.1"
698 |
699 | mime-db@1.52.0:
700 | version "1.52.0"
701 | resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
702 | integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
703 |
704 | mime-types@^2.1.12:
705 | version "2.1.35"
706 | resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
707 | integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
708 | dependencies:
709 | mime-db "1.52.0"
710 |
711 | ms@2.1.2:
712 | version "2.1.2"
713 | resolved "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
714 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
715 |
716 | naive-ui@^2.33.3:
717 | version "2.33.3"
718 | resolved "https://registry.npmmirror.com/naive-ui/-/naive-ui-2.33.3.tgz#844c340d0a5d94f84f1af5ec8a47e871be726ad0"
719 | integrity sha512-yz2aKdghMVadtvCSBXyjU2bAuGmwLEUcbzmXdUhSdtcbI6mT+mT8vRy43FnbJangPQ87v080q453vtnydNcnhA==
720 | dependencies:
721 | "@css-render/plugin-bem" "^0.15.10"
722 | "@css-render/vue3-ssr" "^0.15.10"
723 | "@types/lodash" "^4.14.181"
724 | "@types/lodash-es" "^4.17.6"
725 | async-validator "^4.0.7"
726 | css-render "^0.15.10"
727 | date-fns "^2.28.0"
728 | date-fns-tz "^1.3.3"
729 | evtd "^0.2.4"
730 | highlight.js "^11.5.0"
731 | lodash "^4.17.21"
732 | lodash-es "^4.17.21"
733 | seemly "^0.3.6"
734 | treemate "^0.3.11"
735 | vdirs "^0.1.8"
736 | vooks "^0.2.12"
737 | vueuc "^0.4.47"
738 |
739 | nanoid@^3.3.4:
740 | version "3.3.4"
741 | resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
742 | integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
743 |
744 | normalize-wheel-es@^1.2.0:
745 | version "1.2.0"
746 | resolved "https://registry.npmmirror.com/normalize-wheel-es/-/normalize-wheel-es-1.2.0.tgz#0fa2593d619f7245a541652619105ab076acf09e"
747 | integrity sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==
748 |
749 | nprogress@^0.2.0:
750 | version "0.2.0"
751 | resolved "https://registry.npmmirror.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1"
752 | integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==
753 |
754 | path-parse@^1.0.7:
755 | version "1.0.7"
756 | resolved "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
757 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
758 |
759 | picocolors@^1.0.0:
760 | version "1.0.0"
761 | resolved "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
762 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
763 |
764 | picomatch@^2.3.1:
765 | version "2.3.1"
766 | resolved "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
767 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
768 |
769 | postcss@^8.1.10, postcss@^8.4.13:
770 | version "8.4.14"
771 | resolved "https://registry.npmmirror.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf"
772 | integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==
773 | dependencies:
774 | nanoid "^3.3.4"
775 | picocolors "^1.0.0"
776 | source-map-js "^1.0.2"
777 |
778 | queue-microtask@^1.2.2:
779 | version "1.2.3"
780 | resolved "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
781 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
782 |
783 | resolve@^1.22.0:
784 | version "1.22.1"
785 | resolved "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
786 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
787 | dependencies:
788 | is-core-module "^2.9.0"
789 | path-parse "^1.0.7"
790 | supports-preserve-symlinks-flag "^1.0.0"
791 |
792 | reusify@^1.0.4:
793 | version "1.0.4"
794 | resolved "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
795 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
796 |
797 | rollup@^2.59.0:
798 | version "2.77.2"
799 | resolved "https://registry.npmmirror.com/rollup/-/rollup-2.77.2.tgz#6b6075c55f9cc2040a5912e6e062151e42e2c4e3"
800 | integrity sha512-m/4YzYgLcpMQbxX3NmAqDvwLATZzxt8bIegO78FZLl+lAgKJBd1DRAOeEiZcKOIOPjxE6ewHWHNgGEalFXuz1g==
801 | optionalDependencies:
802 | fsevents "~2.3.2"
803 |
804 | run-parallel@^1.1.9:
805 | version "1.2.0"
806 | resolved "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
807 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
808 | dependencies:
809 | queue-microtask "^1.2.2"
810 |
811 | seemly@^0.3.6:
812 | version "0.3.6"
813 | resolved "https://registry.npmmirror.com/seemly/-/seemly-0.3.6.tgz#7ef97e8083dea00804965e2662f572a5df9cb18e"
814 | integrity sha512-lEV5VB8BUKTo/AfktXJcy+JeXns26ylbMkIUco8CYREsQijuz4mrXres2Q+vMLdwkuLxJdIPQ8IlCIxLYm71Yw==
815 |
816 | source-map-js@^1.0.2:
817 | version "1.0.2"
818 | resolved "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
819 | integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
820 |
821 | source-map@^0.6.1:
822 | version "0.6.1"
823 | resolved "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
824 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
825 |
826 | sourcemap-codec@^1.4.8:
827 | version "1.4.8"
828 | resolved "https://registry.npmmirror.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4"
829 | integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==
830 |
831 | supports-preserve-symlinks-flag@^1.0.0:
832 | version "1.0.0"
833 | resolved "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
834 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
835 |
836 | to-regex-range@^5.0.1:
837 | version "5.0.1"
838 | resolved "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
839 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
840 | dependencies:
841 | is-number "^7.0.0"
842 |
843 | treemate@^0.3.11:
844 | version "0.3.11"
845 | resolved "https://registry.npmmirror.com/treemate/-/treemate-0.3.11.tgz#7d52f8f69ab9ce326f8d139e0a3d1ffb25e48222"
846 | integrity sha512-M8RGFoKtZ8dF+iwJfAJTOH/SM4KluKOKRJpjCMhI8bG3qB74zrFoArKZ62ll0Fr3mqkMJiQOmWYkdYgDeITYQg==
847 |
848 | universal-cookie@^4.0.4:
849 | version "4.0.4"
850 | resolved "https://registry.npmmirror.com/universal-cookie/-/universal-cookie-4.0.4.tgz#06e8b3625bf9af049569ef97109b4bb226ad798d"
851 | integrity sha512-lbRVHoOMtItjWbM7TwDLdl8wug7izB0tq3/YVKhT/ahB4VDvWMyvnADfnJI8y6fSvsjh51Ix7lTGC6Tn4rMPhw==
852 | dependencies:
853 | "@types/cookie" "^0.3.3"
854 | cookie "^0.4.0"
855 |
856 | vdirs@^0.1.4, vdirs@^0.1.8:
857 | version "0.1.8"
858 | resolved "https://registry.npmmirror.com/vdirs/-/vdirs-0.1.8.tgz#a103bc43baca738f8dea912a7e9737154a19dbc2"
859 | integrity sha512-H9V1zGRLQZg9b+GdMk8MXDN2Lva0zx72MPahDKc30v+DtwKjfyOSXWRIX4t2mhDubM1H09gPhWeth/BJWPHGUw==
860 | dependencies:
861 | evtd "^0.2.2"
862 |
863 | vite-plugin-windicss@^1.8.4:
864 | version "1.8.7"
865 | resolved "https://registry.npmmirror.com/vite-plugin-windicss/-/vite-plugin-windicss-1.8.7.tgz#884b3e7e4054df22344f61f5b2fddf07f2982405"
866 | integrity sha512-/zwQ8+RV+MSkbG0IGqsEma6r2R01NzN/aNpNjJD7VVAkxAptNznqDXOObFTskkWfZ+9m6KJZCOuCPgAFtQIzEA==
867 | dependencies:
868 | "@windicss/plugin-utils" "1.8.7"
869 | debug "^4.3.4"
870 | kolorist "^1.5.1"
871 | windicss "^3.5.6"
872 |
873 | vite@^2.9.7:
874 | version "2.9.14"
875 | resolved "https://registry.npmmirror.com/vite/-/vite-2.9.14.tgz#c438324c6594afd1050df3777da981dee988bb1b"
876 | integrity sha512-P/UCjSpSMcE54r4mPak55hWAZPlyfS369svib/gpmz8/01L822lMPOJ/RYW6tLCe1RPvMvOsJ17erf55bKp4Hw==
877 | dependencies:
878 | esbuild "^0.14.27"
879 | postcss "^8.4.13"
880 | resolve "^1.22.0"
881 | rollup "^2.59.0"
882 | optionalDependencies:
883 | fsevents "~2.3.2"
884 |
885 | vooks@^0.2.12, vooks@^0.2.4:
886 | version "0.2.12"
887 | resolved "https://registry.npmmirror.com/vooks/-/vooks-0.2.12.tgz#2b6e23330b77bac81c7f7a344c4ca3e9f4f6c373"
888 | integrity sha512-iox0I3RZzxtKlcgYaStQYKEzWWGAduMmq+jS7OrNdQo1FgGfPMubGL3uGHOU9n97NIvfFDBGnpSvkWyb/NSn/Q==
889 | dependencies:
890 | evtd "^0.2.2"
891 |
892 | vue-demi@*:
893 | version "0.13.6"
894 | resolved "https://registry.npmmirror.com/vue-demi/-/vue-demi-0.13.6.tgz#f9433cbd75e68a970dec066647f4ba6c08ced48f"
895 | integrity sha512-02NYpxgyGE2kKGegRPYlNQSL1UWfA/+JqvzhGCOYjhfbLWXU5QQX0+9pAm/R2sCOPKr5NBxVIab7fvFU0B1RxQ==
896 |
897 | vue-router@^4.0.15:
898 | version "4.1.3"
899 | resolved "https://registry.npmmirror.com/vue-router/-/vue-router-4.1.3.tgz#f8dc7931a2253cc5aa9b740f8b98969d08ca283c"
900 | integrity sha512-XvK81bcYglKiayT7/vYAg/f36ExPC4t90R/HIpzrZ5x+17BOWptXLCrEPufGgZeuq68ww4ekSIMBZY1qdUdfjA==
901 | dependencies:
902 | "@vue/devtools-api" "^6.1.4"
903 |
904 | vue@^3.2.25:
905 | version "3.2.37"
906 | resolved "https://registry.npmmirror.com/vue/-/vue-3.2.37.tgz#da220ccb618d78579d25b06c7c21498ca4e5452e"
907 | integrity sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==
908 | dependencies:
909 | "@vue/compiler-dom" "3.2.37"
910 | "@vue/compiler-sfc" "3.2.37"
911 | "@vue/runtime-dom" "3.2.37"
912 | "@vue/server-renderer" "3.2.37"
913 | "@vue/shared" "3.2.37"
914 |
915 | vueuc@^0.4.47:
916 | version "0.4.49"
917 | resolved "https://registry.npmmirror.com/vueuc/-/vueuc-0.4.49.tgz#913e6fd629bdfd5bbed79bf108aec605720af2db"
918 | integrity sha512-WarAC44a/Yx78CxkAgROYLq+LkAeCGA/6wHidVoFmHLbzyF3SiP2nzRNGD/8zJeJInXv18EnWK6A//eGgMMq8w==
919 | dependencies:
920 | "@css-render/vue3-ssr" "^0.15.10"
921 | "@juggle/resize-observer" "^3.3.1"
922 | css-render "^0.15.10"
923 | evtd "^0.2.4"
924 | seemly "^0.3.6"
925 | vdirs "^0.1.4"
926 | vooks "^0.2.4"
927 |
928 | vuex@^4.0.2:
929 | version "4.0.2"
930 | resolved "https://registry.npmmirror.com/vuex/-/vuex-4.0.2.tgz#f896dbd5bf2a0e963f00c67e9b610de749ccacc9"
931 | integrity sha512-M6r8uxELjZIK8kTKDGgZTYX/ahzblnzC4isU1tpmEuOIIKmV+TRdc+H4s8ds2NuZ7wpUTdGRzJRtoj+lI+pc0Q==
932 | dependencies:
933 | "@vue/devtools-api" "^6.0.0-beta.11"
934 |
935 | windicss@^3.5.1, windicss@^3.5.6:
936 | version "3.5.6"
937 | resolved "https://registry.npmmirror.com/windicss/-/windicss-3.5.6.tgz#30a34da76894d952a96c9a1921f2e91e13932183"
938 | integrity sha512-P1mzPEjgFMZLX0ZqfFht4fhV/FX8DTG7ERG1fBLiWvd34pTLVReS5CVsewKn9PApSgXnVfPWwvq+qUsRwpnwFA==
939 |
--------------------------------------------------------------------------------