feat: 邮箱注册验证 + 9项功能修复与优化
【认证系统】 - 新增邮箱验证码注册/登录流程 (sendEmailCode / verifyEmail / forgotPassword / resetPassword) - register-email 现在需要验证码 - 服务端新增 email_verification_codes 表 + patch-email-verification.js - App.tsx 登录后 emailVerified 检查提醒 - keyServerClient token 显式传递修复 401 错误 【电商模块】 - 自动推进: 策划完成后自动生成分镜图/视频 - 模特图选项 (性别/年龄/种族/体型/场景) 注入 AI 提示词 - 任务持久化指纹修复 (图片数量替代 blob URL) - 新增「视频换装」入口 (happyhorse-1.0-video-edit) 【剧本评分】 - 新增 .docx/.doc Word 文档支持 (ZIP解压+XML提取) - 历史记录支持点击查看/恢复评测结果 【画布】 - ReactFlow 节点禁止内置拖拽避免冲突 - 连接线拖拽弹窗优化 (预览线不消失, 弹窗跟踪鼠标) 【页面修复】 - 首页轮播图改为 aspect-ratio: 16/9 解决尺寸问题 - 资产库新增悬停删除按钮 - scriptEvalClient 改用服务端 /api/ai/chat 端点 - TokenUsagePage 未登录跳过 API 调用
This commit is contained in:
@@ -3782,21 +3782,12 @@
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new) > .project-card__empty--dark {
|
||||
display: grid;
|
||||
place-items: center;
|
||||
background: #202020;
|
||||
color: rgba(255, 255, 255, 0.22);
|
||||
background: var(--bg-inset, transparent);
|
||||
color: rgba(255, 255, 255, 0.14);
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new) > .project-card__empty--dark .anticon {
|
||||
font-size: 34px;
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new)::after {
|
||||
content: "";
|
||||
grid-area: 1 / 1;
|
||||
align-self: end;
|
||||
height: 58%;
|
||||
background: rgba(0, 0, 0, 0.86);
|
||||
pointer-events: none;
|
||||
font-size: 40px;
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new) .project-card__caption,
|
||||
@@ -3812,18 +3803,35 @@
|
||||
padding-block: 0;
|
||||
background: none;
|
||||
color: rgba(255, 255, 255, 0.78);
|
||||
text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
|
||||
opacity: 0;
|
||||
transform: translateY(8px);
|
||||
transition: opacity 220ms ease, transform 220ms ease;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new):hover .project-card__caption {
|
||||
opacity: 1;
|
||||
transform: none;
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new) .project-card__meta {
|
||||
align-self: end;
|
||||
padding-block: 0 16px;
|
||||
opacity: 0;
|
||||
transform: translateY(8px);
|
||||
transition: opacity 220ms ease, transform 220ms ease;
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new):hover .project-card__meta {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-page .project-card:not(.project-card--new) .project-card__meta strong {
|
||||
color: #fff;
|
||||
font-size: 15px;
|
||||
text-shadow: 0 1px 6px rgba(0, 0, 0, 0.72);
|
||||
}
|
||||
|
||||
.web-shell[data-ui-theme="dark-green"] .community-filter-bar {
|
||||
|
||||
Reference in New Issue
Block a user