UNPKG

react-gantt-svg

Version:

A React Gantt chart component library

28 lines (27 loc) 1.51 kB
import type { Task, BarTask } from '../types'; import { ViewMode } from '../types'; export declare function isKeyboardEvent(event: React.MouseEvent | React.KeyboardEvent | React.FocusEvent): event is React.KeyboardEvent; export declare function isMouseEvent(event: React.MouseEvent | React.KeyboardEvent | React.FocusEvent): event is React.MouseEvent; export declare function isBarTask(task: Task | BarTask): task is BarTask; export declare function removeHiddenTasks(tasks: Task[]): Task[]; export declare const sortTasks: (taskA: Task, taskB: Task) => number; /** * 根据拖拽的方向与位移,对任务列表进行级联时间偏移。 * 规则: * - 当 deltaMs > 0(向后/未来拖动)时:将位于 draggedTask 之后的任务整体向后偏移 deltaMs。 * - 当 deltaMs < 0(向前/过去拖动)时:将位于 draggedTask 之前的任务整体向前偏移 deltaMs。 * - draggedTask 自身应用 deltaMs。 * 顺序依据传入的 tasks 数组顺序。 */ /** * 递归查找任务,支持在嵌套的 children 中查找 * @param tasks 任务列表 * @param taskId 要查找的任务ID * @returns 找到的任务和其父任务,如果没找到则返回 undefined */ export declare const findTaskRecursively: (tasks: Task[], taskId: string) => { task: Task; parentTask?: Task; } | undefined; export declare const applyCascadeShift: (tasks: Task[], draggedTaskId: string, deltaMs: number) => Task[]; export declare const calculateTimeStep: (viewMode: ViewMode) => number;