wx-gantt-store
Version:
25 lines (24 loc) • 932 B
TypeScript
import { DataTree, TID } from "@wx/lib-state";
import type { ITask, IParsedTask, TSort } from "./types";
export default class GanttDataTree extends DataTree<IParsedTask> {
private _sort;
constructor(tasks?: Partial<ITask>[]);
parse(tasks: Partial<ITask>[], parent: TID): void;
getBounds(start: Date, end: Date): {
start: Date;
end: Date;
};
getBranch(id: TID): IParsedTask[];
contains(id: TID, target: TID): boolean;
getIndexById(id: TID): number;
add(task: Partial<ITask>, index: number): IParsedTask;
update(id: TID, task: Partial<ITask>): void;
copy(taskObj: ITask, parent: TID, ind: number): TID[][];
private normalizeDates;
normalizeTask(task: Partial<ITask>, tasks?: Partial<ITask>[]): ITask;
getSummaryId(id: TID): TID | null;
private fillDates;
private getFields;
sort(conf: TSort): void;
sortBranch(conf: TSort, parent?: TID): void;
}