UNPKG

claritykit-svelte

Version:

A comprehensive Svelte component library focused on accessibility, ADHD-optimized design, developer experience, and full SSR compatibility

106 lines 2.84 kB
/** * Gantt-o-matic Type Definitions * ADHD-optimized Gantt chart types for therapeutic project management */ export interface GanttTask { id: string; name: string; startDate: Date; endDate: Date; duration: number; progress: number; priority: 1 | 2 | 3 | 4 | 5; energy: 1 | 2 | 3 | 4 | 5; reward: 1 | 2 | 3 | 4 | 5; assignee?: string; description?: string; color?: string; parentId?: string; dependencies: string[]; tags: string[]; status: 'not-started' | 'in-progress' | 'completed' | 'blocked'; estimatedHours?: number; actualHours?: number; } export interface GanttDependency { id: string; fromTaskId: string; toTaskId: string; type: 'finish-to-start' | 'start-to-start' | 'finish-to-finish' | 'start-to-finish'; lag: number; } export interface TimelineConfig { viewMode: 'days' | 'weeks' | 'months' | 'quarters'; startDate: Date; endDate: Date; workingDays: number[]; holidays: Date[]; scale: number; } export interface GanttConfig { timeline: TimelineConfig; rowHeight: number; gridSize: number; showCriticalPath: boolean; showDependencies: boolean; enableDragDrop: boolean; enableResize: boolean; adhdOptimized: boolean; celebrateCompletions: boolean; autoSchedule: boolean; } export interface BulkOperation { type: 'reschedule-all' | 'optimize-timeline' | 'auto-balance' | 'compress-timeline'; parameters?: Record<string, any>; } export interface CognitiveLoadState { totalTasks: number; activeTasks: number; overdueTasks: number; cognitiveScore: number; recommendation: 'optimal' | 'manageable' | 'warning' | 'overloaded'; } export interface EnergyScheduling { highEnergyPeriods: { start: number; end: number; }[]; lowEnergyPeriods: { start: number; end: number; }[]; energyAllocation: Record<string, number>; } export interface TherapeuticFeatures { showProgressCelebrations: boolean; enableFocusMode: boolean; breakReminders: boolean; overloadWarnings: boolean; motivationalMessages: boolean; accessibilityMode: boolean; } export type TaskUpdateEvent = { taskId: string; updates: Partial<GanttTask>; }; export type DependencyUpdateEvent = { dependencyId: string; updates: Partial<GanttDependency>; }; export type ViewChangeEvent = { newViewMode: 'days' | 'weeks' | 'months'; }; export type CriticalPathResult = { criticalTasks: string[]; criticalDependencies: string[]; totalDuration: number; latestFinishDate: Date; }; export type BulkOperationResult = { success: boolean; affectedTasks: string[]; newSchedule?: GanttTask[]; warnings?: string[]; recommendations?: string[]; }; //# sourceMappingURL=types.d.ts.map