/** * 贴纸配置面板 * 贴纸素材库(emoji / 图片)+ 文字花字 + 位置大小调整 */ import React from "react" import { Drawer, Switch } from "antd" import type { StickerConfig } from "@/pages/editing-planner/types" import StickerLibrary from "./sticker/StickerLibrary" import StickerList from "./sticker/StickerList" import StickerPropsEditor from "./sticker/StickerPropsEditor" import { useStickerItems } from "@/pages/editing-planner/hooks/useStickerItems" interface StickerPanelProps { open: boolean onClose: () => void config: StickerConfig onChange: (config: StickerConfig) => void totalDuration: number } const StickerPanel: React.FC = ({ open, onClose, config, onChange, totalDuration, }) => { const { selectedId, setSelectedId, activeTab, setActiveTab, selectedSticker, updateItem, addSticker, removeSticker, handleReset, } = useStickerItems({ config, onChange, totalDuration }) return ( {/* 顶部开关 */}
启用贴纸 onChange({ ...config, enabled: checked })} />
{/* 素材库 + 类型Tab */} {/* 已添加贴纸列表 */} {/* 选中贴纸的属性编辑 */} {selectedSticker && ( )} {/* 底部重置 */}
) } export default StickerPanel