UNPKG

jordium-gantt-vue3

Version:

A Vue 3 Gantt chart component for project management, task scheduling, resource planning, calendar, resource usage and timeline visualization.

41 lines (40 loc) 1.65 kB
import { Task } from '../classes/Task'; export type TaskListColumnType = 'name' | 'predecessor' | 'assignee' | 'startDate' | 'endDate' | 'estimatedHours' | 'actualHours' | 'progress'; /** * 列格式化函数类型 * @param task 当前任务对象 * @param column 当前列配置 * @returns 格式化后的字符串 */ export type ColumnFormatter = (task: Task, column: TaskListColumnConfig) => string; export interface TaskListColumnConfig { type?: TaskListColumnType; key: string; label?: string; cssClass?: string; width?: number | string; visible?: boolean; formatter?: ColumnFormatter; /** 列固定位置,'left'/true 固定在左侧,'right' 固定在右侧 */ fixed?: 'left' | 'right' | boolean; } export interface TaskListConfig { columns?: TaskListColumnConfig[]; showAllColumns?: boolean; showTaskIcon?: boolean; defaultWidth?: number | string; minWidth?: number | string; maxWidth?: number | string; } export declare const DEFAULT_TASK_LIST_WIDTH = 320; export declare const DEFAULT_TASK_LIST_MIN_WIDTH = 280; export declare const DEFAULT_TASK_LIST_MAX_WIDTH = 1160; /** * 解析宽度值(支持像素数字或百分比字符串) * @param value 宽度值,可以是数字(像素)或字符串(百分比,如 '30%') * @param containerWidth 容器宽度(用于计算百分比) * @param defaultValue 默认值 * @returns 解析后的像素值 */ export declare function parseWidthValue(value: number | string | undefined, containerWidth: number, defaultValue: number): number; export declare const DEFAULT_TASK_LIST_COLUMNS: TaskListColumnConfig[];