import { request } from '@/utils/request'; import apis from '@/constants/api.swagger-constants'; import { CreateComponentsConfigQuery } from '@easytwin/core'; export async function addAnimations({ objId, names, rank }: CreateComponentsConfigQuery) { const result = await Promise.all(names.map((name) => addAnimation({ objId, name, rank }))); return result; } export async function addAnimation({ objId, name, rank, }: { name: string; objId: string; rank: number; }) { const animation = await request(apis.objsAnimationsPost, { params: { objId, }, body: { rank, name, config: { autoPlay: true, playNum: 'loop', timeScale: 1, }, }, }); const animationDetail = await getAnimation({ objId, animationId: animation.animationId, }); return animationDetail.config; } export async function updateAnimation({ objId, animationId, name, config, }: { objId: string; animationId: string; name: string; config: Record; }) { return request(apis.objsAnimationPatch, { params: { objId, id: animationId, }, body: { name, config, }, }); } export async function deleteAnimation({ objId, animationId, }: { objId: string; animationId: string; }) { return request(apis.objsAnimationDelete, { params: { objId, id: animationId, }, }); } export async function getAnimation({ objId, animationId }: { objId: string; animationId: string }) { return request(apis.objsAnimationGet, { params: { objId, id: animationId, }, }); }