import React from 'react'; import { Form, Radio, Checkbox } from 'antd'; import { ModelAnimationPlayNumEnum, AnimationInfo, UpdateAnimationQuery, AnimationConfig, } from '@easytwin/core'; import { CollapseBox, SortableTabs, SliderInput } from '@/components'; export interface AnimationManageProp { dataSource: AnimationInfo[]; selectKey?: string; onTabChange?: (key: string) => void; onUpdate?: (info: UpdateAnimationQuery) => void; } type FormValuesChangeType = Omit; const AnimationManage: React.FC = function ({ dataSource, selectKey, onTabChange, onUpdate, }) { const [form] = Form.useForm(); const [editData, setEditData] = React.useState(); const newEditData = dataSource.find((item) => item.id === selectKey); React.useEffect(() => { if (newEditData) { form.setFieldsValue(newEditData.config); setEditData(newEditData.config); } else { setEditData(undefined); } }, [form, newEditData]); const handleTagDrapChange = (dragKey: string, rank: number) => { const dragData = dataSource.find((item) => item.id === dragKey); dragData && onUpdate?.({ id: dragData.id, rank, }); }; return ( {dataSource.length ? (
{editData && ( <> {/* */}
{ newEditData?.id && onUpdate?.({ id: newEditData.id, config: { ...newEditData?.config, ...changedValues }, }); }}> {/* 自动播放 */} {/* 播放次数 */} 一次 循环 {/* 播放速度 */}
)}
) : (
未读取到动画列表
)}
); }; export default AnimationManage;