680c965a27
新增: 多项目切换 + 业务平台 SSO 单点跳转
...
核心功能:
1. 多项目切换:header 新增 ProjectDropdown,切项目时自动刷新权限菜单
2. 业务平台 SSO:header 新增「业务平台」按钮,OAuth2 授权码流程无感跳转
3. SSO 回调:/sso-callback 页面接收业务平台跳回的 code,换 IoT token 登录
共享包改动:
- packages/stores:access store 新增 projectId 字段并加入持久化
- packages/effects/layouts:新增 ProjectDropdown 共享组件
apps/web-antd 改动:
- api/request.ts:
· project-id 请求头仅在非 null 时设置(避免 axios 把 null 序列化为字符串 "null")
· X-Client-Id 改读 VITE_APP_CLIENT_ID,允许多个壳应用各自声明
- api/core/sso.ts:ssoCallback 参数走 body,避免 code 出现在浏览器历史/nginx 日志
- api/system/project:新增项目 simple-list API
- constants/sso.ts:集中 IOT_CLIENT_ID/BIZ_CLIENT_ID 等常量;
generateOauthState 用 crypto.randomUUID 生成 state,替代不安全的 Math.random
- store/auth.ts:抽 completeLogin 公共收尾逻辑,新增 ssoLogin 复用
- views/_core/authentication/sso-callback.vue:SSO 回调页;
dev 模式保留时延日志,失败时通过 query 透给登录页
- router/routes/core.ts:/sso-callback 路由 + beforeEnter 守卫
(缺 code 直接拦回登录页,避免死循环)
- layouts/basic.vue:
· 以 ProjectDropdown 替换 TenantDropdown(列表拉取失败兜底隐藏)
· 切项目时调用 fetchUserInfo,避免菜单/权限陈旧
· 新增「业务平台」跳转按钮;state 写 sessionStorage,
生产缺 VITE_BIZ_BASE_URL 时显式报错而非静默回 localhost
· setInterval 在 onUnmounted 中清理
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-04-24 11:40:03 +08:00
xingyu4j
baed599fcc
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2026-01-26 10:13:23 +08:00
yuhengshen
343d8a1c1e
fix: 切换时区后,页面不刷新 ( #7085 )
...
* fix: 切换时区后,页面不刷新
* fix: keep-alive 的页面,i18n 和 timezone 不更新
2026-01-10 14:10:27 +08:00
ppxb
24d20ca9ee
refactor: preference manager and export ( #7068 )
...
* fix: preferences drawer outline z-index
* refactor: preferencesManager and exports
2026-01-06 12:42:32 +08:00
wyc001122
6f02181024
fix(layout): 修复双列模式下重复显示logo的问题( #7071 ) ( #7072 )
2026-01-05 21:13:06 +08:00
ppxb
ed3353a271
fix: preferences drawer outline z-index ( #7067 )
2026-01-04 14:44:33 +08:00
xingyu4j
77cd814c99
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-12-26 14:00:55 +08:00
xingyu4j
e44f9a0aca
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-11-24 11:47:31 +08:00
milletpeak
1f1ba16ead
Merge branch 'main' into milletpeak-fontsize
2025-11-24 08:55:54 +08:00
xingyu4j
bed52983a0
fix: lint
2025-11-17 12:15:14 +08:00
米山
0bc7169698
feat: add global font size adjustment
2025-11-12 17:39:07 +08:00
米山
24b6e7a835
feat: add global font size adjustment
2025-11-12 17:38:41 +08:00
shixi
0bbb20fee0
feat: sport notification link
2025-11-12 00:55:24 +08:00
shixi
dbc5ea32ae
feat: add read and delete for each notification
2025-11-12 00:02:13 +08:00
xingyu4j
44675a847c
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-11-06 16:50:09 +08:00
Copilot
1e09fa4642
feat: migrate from Radix Vue to Reka UI ( #6870 )
...
* Initial plan
* Update dependencies and imports from radix-vue to reka-ui
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com >
* Fix type errors after reka-ui migration
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com >
* Run formatter to fix code style
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: likui628 <90845831+likui628@users.noreply.github.com >
2025-11-06 16:22:24 +08:00
Copilot
c7c39047de
feat: add theme-aware logo support via optional sourceDark configuration ( #6866 )
...
* Initial plan
* Initial exploration and setup
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com >
* Add support for separate light and dark theme logos
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com >
* Update documentation with dark theme logo configuration
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com >
* feat: Add theme-aware logo support for authentication/login page
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com >
* revert: .npmrc
Signed-off-by: aonoa <1991849113@qq.com >
---------
Signed-off-by: aonoa <1991849113@qq.com >
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: aonoa <32682251+aonoa@users.noreply.github.com >
Co-authored-by: Li Kui <90845831+likui628@users.noreply.github.com >
Co-authored-by: aonoa <1991849113@qq.com >
2025-11-03 13:07:36 +08:00
Jin Mao
ac6de0324c
Merge branch 'fork/ming4762/timezone-20251020'
2025-10-30 00:42:05 +08:00
zhongming4762
212144feca
feat: increase support for multiple time zones
...
* 优化实现方法
2025-10-29 20:10:25 +08:00
zhongming4762
3eed51fd3e
feat: increase support for multiple time zones
...
* 优化实现方法
2025-10-29 20:03:21 +08:00
zhongming4762
4d713db546
feat: increase support for multiple time zones
...
* 优化实现方法
2025-10-29 19:47:10 +08:00
zhongming4762
e01803ce9d
feat: increase support for multiple time zones
2025-10-22 20:39:00 +08:00
zhongming4762
e3e5755903
feat: increase support for multiple time zones
2025-10-22 20:29:53 +08:00
zhongming4762
61ce53b686
feat: increase support for multiple time zones
2025-10-22 20:23:55 +08:00
zhongming4762
b029f77b6a
feat: increase support for multiple time zones
2025-10-22 20:18:25 +08:00
zhongming4762
0a8339a405
feat: increase support for multiple time zones
2025-10-22 19:52:01 +08:00
zoumingjun
4e264c503a
fix: 锁屏和解锁密码输入框自动聚焦
2025-10-18 20:55:53 +08:00
zoumingjun
32051e9ca0
fix: 优化左侧和右侧认证面板动画效果
2025-10-18 20:52:27 +08:00
xingyu4j
c19097ec0c
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-10-14 10:06:36 +08:00
lidongcheng88
03ce030e7c
fix: 混合双列 onMounted 关闭二级侧边栏 ( #6807 )
...
Co-authored-by: ldc <lidchen@tencent.com >
2025-10-14 06:56:00 +08:00
zouawen
59097e2466
chore: 新增是否开启首选项导航栏(外观、布局、快捷键、通用)吸顶效果,调整部分样式 ( #6804 )
2025-10-14 06:55:11 +08:00
xingyu4j
99dd3350f4
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-10-09 11:19:32 +08:00
zouawen
2ce161e585
feat: 1、新增水印文案自定义功能;2、input-item输入框组件新增清除功能(可用于快捷清除水印文案);3、偏好设置、主题切换、语言选择、是否全屏按钮新增动画效果 ( #6800 )
...
* feature: 新增水印文案自定义功能;
* chore: 偏好设置、主题切换、语言选择、是否全屏按钮新增动画效果
2025-10-07 06:15:41 +08:00
HaHa
713281a8ba
fix(theme-button): fix flicker during theme switch ( #6782 )
2025-09-30 05:10:51 +08:00
xingyu4j
a238f635be
fix: types
2025-09-03 16:58:31 +08:00
YunaiV
67da079606
review:同步 vue5 官方的差异
2025-09-01 23:29:44 +08:00
xingyu4j
b55c291af1
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-08-26 16:57:32 +08:00
螃蟹
adbf793e79
fix(@vben/web-ele): the main color tone for switching between dark and light themes has been reset ( #6678 )
2025-08-25 11:03:54 +08:00
xingyu4j
8fdbbfad22
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-08-19 17:41:16 +08:00
Elm1992
a441dcebae
fix: meta.link invalid issue
2025-08-19 16:40:16 +08:00
vben
e147a9d2fd
chore: release 5.5.9
2025-08-16 22:16:02 +08:00
xueyang
9fc594434f
perf: 优化useVbenForm样式 ( #6611 )
...
* perf(style): 优化useVbenForm垂直布局 actions 样式
* perf(style): 优化useVbenForm actions 布局样式
- 操作按钮组显示位置
```
actionPosition?: 'center' | 'left' | 'right';
```
- 操作按钮组的样式
```
actionType?: 'block' | 'inline'
inline: 行类显示,block: 新一行单独显示
```
* perf: 优化useVbenForm actions 布局样式
删除 actionType
增加 actionLayout
- actionLayout?: 'inline' | 'newLine' | 'rowEnd';
- newLine: 在新行显示。rowEnd: 在行内显示,靠右对齐(默认)。inline: 使用grid默认样式
- 删除无用代码 queryFormStyle
* perf: 优化useVbenForm使用案例
* perf: 优化form组件样式
去掉padding,改为gap
* docs: update vben-form.md
* fix: 修复FormMessage位置
* perf: Avoid direct mutation of props object.
- props.actionLayout = props.actionLayout || 'rowEnd';
- props.actionPosition = props.actionPosition || 'right';
+ const actionLayout = props.actionLayout || 'rowEnd';
+ const actionPosition = props.actionPosition || 'right';
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix: 修复 wrapperClass 权重
* fix: 全局搜索结果不匹配 #6603
* fix: 避免FormMessage溢出
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-08-07 23:48:34 +08:00
xingyu4j
8b89a32813
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-07-29 15:21:32 +08:00
leo
b93e22c45a
fix(@vben/layouts): respect base URL when opening route in new window ( #6583 )
...
Previously, the generated URL for opening routes in a new window did not include the router base,
which led to incorrect paths when the app was deployed under a subdirectory (e.g., /admin/).
This change ensures that the resolved path includes the configured base by using
router.resolve(path).href.
2025-07-29 13:46:05 +08:00
Jin Mao
cb3f96683f
fix: 修复双列布局模式下,路由为hideInMenu时,空白右列
2025-07-28 15:50:21 +08:00
vben
1575619d53
chore: release v5.5.8
2025-07-19 22:19:50 +08:00
xingyu4j
879de80857
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-07-19 12:24:22 +08:00
HamWong
bb36cca315
fix: 锁定屏幕页面样式自适应 ( #6480 )
2025-07-15 09:08:08 +08:00
YunaiV
d0a76e1394
feat:【ANTD】优化 help 样式
2025-07-05 18:16:41 +08:00
xingyu4j
77c16cd8e2
Merge branch 'main' of https://github.com/vbenjs/vue-vben-admin into dev
2025-06-28 12:04:15 +08:00