import React from 'react' import { Tooltip } from 'antd' import { LongAnimationTask } from "./type"; import cn from "classnames"; function TaskTimeline({ task }: { task: LongAnimationTask }) { const totalDuration = task.duration; const scriptDuration = task.scripts.reduce((sum, script) => sum + script.duration, 0); const layoutDuration = task.scripts.reduce( (sum, script) => sum + (script.forcedStyleAndLayoutDuration || 0), 0 ); const idleDuration = totalDuration - scriptDuration - layoutDuration; const scriptWidth = (scriptDuration / totalDuration) * 100; const layoutWidth = (layoutDuration / totalDuration) * 100; const idleWidth = (idleDuration / totalDuration) * 100; const getSeverityClass = (duration) => { if (duration > 200) return 'bg-[#e7000b]'; if (duration > 100) return 'bg-[#efb100]'; return 'bg-[#51a2ff]'; }; return (
Timeline:
{scriptDuration > 0 && ( )} {idleDuration > 0 && ( )} {layoutDuration > 0 && ( )}
start: {task.startTime.toFixed(2)}ms finish: {(task.startTime + task.duration).toFixed(2)}ms
); } function TimelineSegment({ name, classes, width, }: { name: string; width: number; classes: string; }) { return (
); } export default TaskTimeline;