视觉与品牌 - public/logo.svg、public/login-illustration.svg、favicon 替换为 logo.svg。 - preferences.ts 新增 logo.source 指向 /logo.svg。 - packages/effects/layouts 导出 LoginIllustration 共享组件(浮动插画,加载失败自动隐藏)。 Auth 布局重构 - layouts/auth.vue 替换默认 AuthPageLayout:主题色渐变背景 + 左侧浮动插画 + 品牌卡片 + 右上 LanguageToggle + 圆角登录卡片;KeepAlive 仅缓存 Login (CodeLogin/QrCodeLogin 需要每次刷新验证码/二维码)。 - 表单样式通过 :deep(.login-form-container) 覆盖输入框、选择框、主按钮, 全部走 --primary 变量,与主题色联动。 登录组件 - views/_core/authentication/login.vue: 关闭默认 codeLogin/qrcodeLogin/ thirdPartyLogin/register/docLink,改为手机 / 二维码 / 企微三按钮(IconifyIcon); 三方登录前检查租户,缺失时 message.warning + validateField。 - packages/effects/common-ui/authentication/login.vue + types.ts: 新增 showDocLink prop(默认 true),替代原本 HTML 注释掉 DocLink 的做法。 - sso-callback.vue: 等待提示改为 LottieLoading 动画。 Lottie 启动动画 - 新增 loading.html(注入进 index.html)+ public/loading.json + 运行时拷贝的 public/lottie_light.min.js(.gitignore 忽略)。 - 新增 public/lottie-tint.js:共享主题色适配器(LIGHTNESSES / SHADE_MAP / hslToRgb / patchColors / readPrimary),同时被启动白屏脚本与 Vue 组件使用, 消除两份几乎一致的实现。 - 新增 src/components/lottie-loading/LottieLoading.vue:按需加载 lottie-tint.js 并根据 CSS 变量 --primary 重新上色。 - vite.config.mts 新增 copyLottiePlayer 插件:configResolved 时无条件把 node_modules/lottie-web/.../lottie_light.min.js 拷到 public/,避免 mtime 误判。 - package.json 新增 lottie-web ^5.13.0 依赖。 i18n - 新增 otherLoginMethods / contactSupport / weComLogin 三个文案(zh-CN / en-US)。 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
73 lines
2.2 KiB
JSON
73 lines
2.2 KiB
JSON
{
|
|
"name": "@vben/web-antd",
|
|
"version": "5.5.9",
|
|
"homepage": "https://vben.pro",
|
|
"bugs": "https://github.com/vbenjs/vue-vben-admin/issues",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/vbenjs/vue-vben-admin.git",
|
|
"directory": "apps/web-antd"
|
|
},
|
|
"license": "MIT",
|
|
"author": {
|
|
"name": "vben",
|
|
"email": "ann.vben@gmail.com",
|
|
"url": "https://github.com/anncwb"
|
|
},
|
|
"type": "module",
|
|
"scripts": {
|
|
"build": "pnpm vite build --mode production",
|
|
"build:analyze": "pnpm vite build --mode analyze",
|
|
"dev": "pnpm vite --mode development",
|
|
"preview": "vite preview",
|
|
"typecheck": "vue-tsc --noEmit --skipLibCheck"
|
|
},
|
|
"imports": {
|
|
"#/*": "./src/*"
|
|
},
|
|
"dependencies": {
|
|
"@form-create/ant-design-vue": "catalog:",
|
|
"@form-create/antd-designer": "catalog:",
|
|
"@tinymce/tinymce-vue": "catalog:",
|
|
"@vben/access": "workspace:*",
|
|
"@vben/common-ui": "workspace:*",
|
|
"@vben/constants": "workspace:*",
|
|
"@vben/hooks": "workspace:*",
|
|
"@vben/icons": "workspace:*",
|
|
"@vben/layouts": "workspace:*",
|
|
"@vben/locales": "workspace:*",
|
|
"@vben/plugins": "workspace:*",
|
|
"@vben/preferences": "workspace:*",
|
|
"@vben/request": "workspace:*",
|
|
"@vben/stores": "workspace:*",
|
|
"@vben/styles": "workspace:*",
|
|
"@vben/types": "workspace:*",
|
|
"@vben/utils": "workspace:*",
|
|
"@videojs-player/vue": "catalog:",
|
|
"@vueuse/core": "catalog:",
|
|
"@vueuse/integrations": "catalog:",
|
|
"ant-design-vue": "catalog:",
|
|
"benz-amr-recorder": "catalog:",
|
|
"bpmn-js": "catalog:",
|
|
"bpmn-js-properties-panel": "catalog:",
|
|
"bpmn-js-token-simulation": "catalog:",
|
|
"camunda-bpmn-moddle": "catalog:",
|
|
"cropperjs": "catalog:",
|
|
"dayjs": "catalog:",
|
|
"diagram-js": "catalog:",
|
|
"fast-xml-parser": "catalog:",
|
|
"highlight.js": "catalog:",
|
|
"lottie-web": "^5.13.0",
|
|
"pinia": "catalog:",
|
|
"steady-xml": "catalog:",
|
|
"tinymce": "catalog:",
|
|
"video.js": "catalog:",
|
|
"vue": "catalog:",
|
|
"vue-dompurify-html": "catalog:",
|
|
"vue-router": "catalog:",
|
|
"vue3-print-nb": "catalog:",
|
|
"vue3-signature": "catalog:",
|
|
"vuedraggable": "catalog:"
|
|
}
|
|
}
|