chore: update deps

This commit is contained in:
vben 2024-06-02 23:46:18 +08:00
parent 6d4991d852
commit e650a0b863
52 changed files with 387 additions and 314 deletions

View File

@ -5,8 +5,4 @@ import type { Preferences } from '@vben-core/preferences';
* @description
* 使
*/
export const overridesPreferences: DeepPartial<Preferences> = {
app: {
name: 'Vben Admin',
},
};
export const overridesPreferences: DeepPartial<Preferences> = {};

View File

@ -10,9 +10,6 @@ import { useTitle } from '@vueuse/core';
import { dynamicRoutes } from '@/router/routes';
// 不需要权限的页面白名单
const WHITE_ROUTE_NAMES = new Set<string>([]);
/**
*
* @param router
@ -67,12 +64,6 @@ function setupAccessGuard(router: Router) {
return true;
}
// 白名单路由列表检查
// TODO: 不是很需要,通过 ignoreAccess 也可以做到,考虑删除
if (WHITE_ROUTE_NAMES.has(to.name as string)) {
return true;
}
// 没有访问权限,跳转登录页面
if (to.fullPath !== LOGIN_PATH) {
return loginPageMeta(to);
@ -99,11 +90,10 @@ function setupAccessGuard(router: Router) {
// 保存菜单信息和路由信息
accessStore.setAccessMenus(menus);
accessStore.setAccessRoutes(routes);
const redirectPath = (from.query.redirect || to.path) as string;
const redirect = decodeURIComponent(redirectPath);
const redirectPath = (from.query.redirect ?? to.path) as string;
return {
path: redirect,
path: decodeURIComponent(redirectPath),
replace: true,
};
});

View File

@ -74,7 +74,7 @@ const essentialRoutes: RouteRecordRaw[] = [
hideInBreadcrumb: true,
hideInMenu: true,
hideInTab: true,
ignoreAccess: true,
// ignoreAccess: true,
title: 'Fallback',
},
name: 'Fallback',

View File

@ -7,7 +7,7 @@ const routes: RouteRecordRaw[] = [
component: BasicLayout,
meta: {
hideChildrenInMenu: true,
orderNo: -1,
order: -1,
title: '首页',
},
name: 'Home',

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -35,8 +35,8 @@
"devDependencies": {
"@eslint/js": "^9.4.0",
"@types/eslint": "^8.56.10",
"@typescript-eslint/eslint-plugin": "^7.11.0",
"@typescript-eslint/parser": "^7.11.0",
"@typescript-eslint/eslint-plugin": "^7.12.0",
"@typescript-eslint/parser": "^7.12.0",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-eslint-comments": "^3.2.0",

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -33,7 +33,7 @@
"dependencies": {
"@stylistic/stylelint-plugin": "^2.1.2",
"stylelint-config-recess-order": "^5.0.1",
"stylelint-scss": "^6.3.0"
"stylelint-scss": "^6.3.1"
},
"devDependencies": {
"postcss": "^8.4.38",

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -48,7 +48,7 @@
"tailwindcss": "^3.4.3"
},
"dependencies": {
"@iconify/json": "^2.2.215",
"@iconify/json": "^2.2.216",
"@iconify/tailwind": "^1.1.1",
"@tailwindcss/forms": "^0.5.7",
"@tailwindcss/nesting": "0.0.0-insiders.565cd3e",

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -16,14 +16,15 @@
"monorepo",
"turbo",
"vben",
"vben admin",
"vben pro",
"vben admin pro",
"vue",
"vue admin",
"vue3"
],
"scripts": {
"bootstrap": "pnpm install",
"build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 turbo build && pnpm install -s",
"build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 turbo build",
"build:docker": "./build-local-docker-image.sh",
"changeset": "pnpm exec changeset",
"check": "pnpm run check:dep && pnpm run check:circular && pnpm run check:type",
@ -47,7 +48,7 @@
"@changesets/cli": "^2.27.5",
"@ls-lint/ls-lint": "^2.2.3",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.14.0",
"@types/node": "^20.14.1",
"@vben/commitlint-config": "workspace:*",
"@vben/eslint-config": "workspace:*",
"@vben/lint-staged-config": "workspace:*",
@ -64,7 +65,7 @@
"jsdom": "^24.1.0",
"rimraf": "^5.0.7",
"taze": "^0.13.8",
"turbo": "^1.13.3",
"turbo": "^2.0.1",
"typescript": "^5.4.5",
"unbuild": "^2.0.0",
"vite": "6.0.0-alpha.17",

View File

@ -49,7 +49,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: 'home-icon',
name: '首页',
orderNo: undefined,
order: undefined,
parent: undefined,
parents: undefined,
path: '/home',
@ -61,7 +61,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: 'about-icon',
name: '关于',
orderNo: undefined,
order: undefined,
parent: undefined,
parents: undefined,
path: '/about',
@ -76,7 +76,7 @@ describe('generatorMenus', () => {
it('includes additional meta properties in menu items', async () => {
const mockRoutesWithMeta = [
{
meta: { icon: 'user-icon', orderNo: 1, title: 'Profile' },
meta: { icon: 'user-icon', order: 1, title: 'Profile' },
name: 'profile',
path: '/profile',
},
@ -90,7 +90,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: 'user-icon',
name: 'Profile',
orderNo: 1,
order: 1,
parent: undefined,
parents: undefined,
path: '/profile',
@ -116,7 +116,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: 'details-icon',
name: 'User Details',
orderNo: undefined,
order: undefined,
parent: undefined,
parents: undefined,
path: '/users/:userId',
@ -151,7 +151,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: undefined,
name: 'redirectedRoute',
orderNo: undefined,
order: undefined,
parent: undefined,
parents: undefined,
path: '/old-path',
@ -163,7 +163,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: 'path-icon',
name: 'New Path',
orderNo: undefined,
order: undefined,
parent: undefined,
parents: undefined,
path: '/new-path',
@ -174,12 +174,12 @@ describe('generatorMenus', () => {
const routes: any = [
{
meta: { orderNo: 2, title: 'Home' },
meta: { order: 2, title: 'Home' },
name: 'home',
path: '/',
},
{
meta: { orderNo: 1, title: 'About' },
meta: { order: 1, title: 'About' },
name: 'about',
path: '/about',
},
@ -199,7 +199,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: undefined,
name: 'About',
orderNo: 1,
order: 1,
parent: undefined,
parents: undefined,
path: '/about',
@ -211,7 +211,7 @@ describe('generatorMenus', () => {
badgeVariants: undefined,
icon: undefined,
name: 'Home',
orderNo: 2,
order: 2,
parent: undefined,
parents: undefined,
path: '/',

View File

@ -30,7 +30,7 @@ async function generatorMenus(
badgeVariants,
hideChildrenInMenu = false,
icon,
orderNo,
order,
target,
title = '',
} = meta || {};
@ -57,7 +57,7 @@ async function generatorMenus(
badgeVariants,
icon,
name,
orderNo,
order,
parent: route.parent,
parents: route.parents,
path: resultPath as string,
@ -66,7 +66,7 @@ async function generatorMenus(
});
// 对菜单进行排序
menus = menus.sort((a, b) => (a.orderNo || 999) - (b.orderNo || 999));
menus = menus.sort((a, b) => (a.order || 999) - (b.order || 999));
return menus;
}

View File

@ -4,5 +4,6 @@
"compilerOptions": {
"types": ["@vben-core/typings/vue-router"]
},
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"extends": "@vben/tsconfig/web.json",
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -48,7 +48,7 @@ interface MenuRecordRaw extends MenuRecordBadgeRaw {
/**
*
*/
orderNo?: number;
order?: number;
/**
*
*/

View File

@ -75,7 +75,7 @@ interface RouteMeta {
/**
* ->
*/
orderNo?: number;
order?: number;
/**
* -
*/

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -30,6 +30,11 @@
"types": "./src/index.ts",
"development": "./src/index.ts",
"default": "./dist/index.mjs"
},
"./*": {
"types": "./src/*.ts",
"development": "./src/*.ts",
"default": "./dist/*.mjs"
}
},
"publishConfig": {
@ -48,7 +53,7 @@
"@vueuse/core": "^10.10.0",
"class-variance-authority": "^0.7.0",
"clsx": "2.1.1",
"radix-vue": "^1.8.2",
"radix-vue": "^1.8.3",
"tailwind-merge": "^2.3.0",
"vue": "3.4.27",
"vue-sonner": "^1.1.2"

View File

@ -7,5 +7,6 @@
"#/*": ["./src/*"]
}
},
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,9 +1,8 @@
<template>
<svg
data-name="Layer 1"
height="571.14799"
viewBox="0 0 860.13137 571.14799"
width="860.13137"
height="571"
viewBox="0 0 860 571"
width="860"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.8 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -23,7 +23,6 @@ const props = withDefaults(defineProps<Props>(), {
minLoadingTime: 200,
});
const startTime = ref(0);
const endTime = ref(0);
const showSpinner = ref(false);
const timer = ref<TimeoutHandle>();
@ -37,9 +36,7 @@ watch(
}
startTime.value = performance.now();
timer.value = setTimeout(() => {
endTime.value = performance.now();
const loadingTime = endTime.value - startTime.value;
const loadingTime = performance.now() - startTime.value;
showSpinner.value = loadingTime > props.minLoadingTime;
}, props.minLoadingTime);
@ -55,12 +52,14 @@ watch(
v-if="showSpinner"
class="flex-center bg-overlay absolute left-0 top-0 size-full backdrop-blur-sm"
>
<div class="loader relative h-12 w-12"></div>
<div
class="loader before:bg-primary/50 after:bg-primary relative h-12 w-12 before:absolute before:left-0 before:top-[60px] before:h-[5px] before:w-12 before:animate-[loader-shadow-ani_0.5s_linear_infinite] before:rounded-[50%] before:content-[''] after:absolute after:left-0 after:top-0 after:h-full after:w-full after:animate-[loader-jump-ani_0.5s_linear_infinite] after:rounded after:content-['']"
></div>
</div>
</template>
<style scoped>
@keyframes jump-ani {
<style>
@keyframes loader-jump-ani {
15% {
border-bottom-right-radius: 3px;
}
@ -83,7 +82,7 @@ watch(
}
}
@keyframes shadow-ani {
@keyframes loader-shadow-ani {
0%,
100% {
transform: scale(1, 1);
@ -93,14 +92,4 @@ watch(
transform: scale(1.2, 1);
}
}
.loader {
&::before {
@apply bg-primary/50 absolute left-0 top-[60px] h-[5px] w-12 animate-[shadow-ani_0.5s_linear_infinite] rounded-[50%] content-[''];
}
&::after {
@apply bg-primary absolute left-0 top-0 h-full w-full animate-[jump-ani_0.5s_linear_infinite] rounded content-[''];
}
}
</style>

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -18,33 +18,23 @@ const iframeRoutes = computed(() => {
if (!enableTabbar.value) {
return route.meta.iframeSrc ? [route] : [];
}
const tabs = tabsStore.getTabs.filter((tab) => !!tab.meta?.iframeSrc);
return tabs;
return tabsStore.getTabs.filter((tab) => !!tab.meta?.iframeSrc);
});
const tabNames = computed(() => {
const names = new Set<string>();
iframeRoutes.value.forEach((item) => {
names.add(item.name as string);
});
return names;
});
const tabNames = computed(
() => new Set(iframeRoutes.value.map((item) => item.name as string)),
);
const showIframe = computed(() => iframeRoutes.value.length > 0);
function routeShow(tabItem: RouteLocationNormalized) {
const { name } = tabItem;
return name === route.name;
return tabItem.name === route.name;
}
function canRender(tabItem: RouteLocationNormalized) {
const { meta, name } = tabItem;
if (!name) {
return false;
}
if (!tabsStore.renderRouteView) {
if (!name || !tabsStore.renderRouteView) {
return false;
}
@ -60,7 +50,7 @@ function canRender(tabItem: RouteLocationNormalized) {
) {
return false;
}
return tabsStore.getTabs.findIndex((tab) => tab.name === name) !== -1;
return tabsStore.getTabs.some((tab) => tab.name === name);
}
function hideLoading() {

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/web.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/library.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,6 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@vben/tsconfig/node.json",
"include": ["src"]
"include": ["src"],
"exclude": ["node_modules"]
}

View File

@ -13,7 +13,7 @@
"scripts/*/src/**/*.json"
],
"globalEnv": ["NODE_ENV"],
"pipeline": {
"tasks": {
"build": {
"dependsOn": ["^build"],
"outputs": ["dist/**"]
@ -26,9 +26,7 @@
"persistent": true
},
"typecheck": {
"outputs": [],
"outputMode": "errors-only"
// "outputMode": "new-only"
"outputs": []
}
}
}

View File

@ -8,7 +8,7 @@
"docs:preview": "vitepress preview"
},
"devDependencies": {
"vitepress": "^1.2.2",
"vitepress": "^1.2.3",
"vue": "3.4.27"
}
}