Files
Genarrative/src/components/ResolvedAssetVideo.tsx
T
kdletters f67d228c02 完善创作主页精选素材预览
新增精选素材分组模型,按素材包、角色、UI、音乐、美宣等分类组合展示素材

补齐素材卡片和预览弹窗中的提示词、作者与生成总成本展示

新增接近全屏的素材预览弹窗,支持底部外置缩略图导航切换

让私有图片、视频和音频预览携带 objectKey 换签读取

补充创作主页素材展示文档和聚焦测试
2026-06-22 11:00:05 +08:00

34 lines
716 B
TypeScript

import type { VideoHTMLAttributes } from 'react';
import { useResolvedAssetReadUrl } from '../hooks/useResolvedAssetReadUrl';
type ResolvedAssetVideoProps = Omit<
VideoHTMLAttributes<HTMLVideoElement>,
'src'
> & {
src?: string | null;
objectKey?: string | null;
fallbackSrc?: string | null;
refreshKey?: string | number | null;
};
export function ResolvedAssetVideo({
src,
objectKey,
fallbackSrc,
refreshKey,
...rest
}: ResolvedAssetVideoProps) {
const { resolvedUrl } = useResolvedAssetReadUrl(src, {
objectKey,
refreshKey,
});
const finalSrc = resolvedUrl || fallbackSrc?.trim() || '';
if (!finalSrc) {
return null;
}
return <video {...rest} src={finalSrc} />;
}