gantt-lib 0.135.9 → 0.136.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import React$1, { ReactNode } from 'react';
2
- import { T as Task$1, R as ResourceTimelineItem, G as GanttScheduleIntent, V as ValidationResult, a as GanttDateRange, b as TimelineMarker, c as TaskDateChangeMode, S as ScaleTaskSubtreeResult, d as ResourcePlannerChartProps, e as ResourceTimelineResource } from './index-DR8Q6-de.mjs';
3
- export { B as BuiltInResourceTableColumnId, C as CriticalPathOptions, D as DAY_MS, f as DependencyError, g as GanttChartMode, h as GridConfig, i as GridLine, L as LinkType, M as MonthSpan, j as ResourceTableColumnId, k as ResourceTableColumnWidthMap, l as ResourceTimelineMove, m as ResourceTimelineResourceMenuCommand, n as ScaleTaskSubtreeAnchor, o as ScaleTaskSubtreeErrorCode, p as ScaleTaskSubtreeExternalPolicy, q as ScaleTaskSubtreeOptions, r as ScaleTaskSubtreeWarning, s as TaskBarGeometry, W as WeekendBlock, t as alignToWorkingDay, u as areTasksHierarchicallyRelated, v as buildAdjacencyList, w as buildTaskRangeFromEnd, x as buildTaskRangeFromStart, y as calculateSuccessorDate, z as cascadeByLinks, A as clampTaskRangeForIncomingFS, E as computeCriticalPath, F as computeLagFromDates, H as computeParentDates, I as computeParentProgress, J as detectCycles, K as extendCriticalIdsToParents, N as findParentId, O as getAllDependencyEdges, P as getAllDescendants, Q as getBusinessDayOffset, U as getChildren, X as getDependencyLag, Y as getSuccessorChain, Z as getTaskDuration, _ as getTransitiveCascadeChain, $ as isAncestorTask, a0 as isTaskParent, a1 as moveTaskRange, a2 as moveTaskWithCascade, a3 as normalizeDependencyLag, a4 as normalizePredecessorDates, a5 as normalizeTaskDependencyLags, a6 as normalizeUTCDate, a7 as parseDateOnly, a8 as recalculateIncomingLags, a9 as recalculateProjectSchedule, aa as recalculateTaskFromDependencies, ab as reflowTasksOnModeSwitch, ac as removeDependenciesBetweenTasks, ad as resizeTaskWithCascade, ae as scaleTaskSubtreeDuration, af as shiftBusinessDayOffset, ag as universalCascade, ah as validateDependencies } from './index-DR8Q6-de.mjs';
2
+ import { T as Task$1, R as ResourceTimelineItem, G as GanttScheduleIntent, V as ValidationResult, a as GanttDateRange, b as TimelineMarker, c as TaskDateChangeMode, S as ScaleTaskSubtreeResult, d as ResourcePlannerChartProps, e as ResourceTimelineResource } from './index-D99kbU4p.mjs';
3
+ export { B as BuiltInResourceTableColumnId, C as CriticalPathOptions, D as DAY_MS, f as DependencyError, g as GanttChartMode, h as GridConfig, i as GridLine, L as LinkType, M as MonthSpan, j as ResourceTableColumnId, k as ResourceTableColumnWidthMap, l as ResourceTimelineMove, m as ResourceTimelineResourceMenuCommand, n as ScaleTaskSubtreeAnchor, o as ScaleTaskSubtreeErrorCode, p as ScaleTaskSubtreeExternalPolicy, q as ScaleTaskSubtreeOptions, r as ScaleTaskSubtreeWarning, s as TaskBarGeometry, W as WeekendBlock, t as alignToWorkingDay, u as areTasksHierarchicallyRelated, v as buildAdjacencyList, w as buildTaskRangeFromEnd, x as buildTaskRangeFromStart, y as calculateSuccessorDate, z as cascadeByLinks, A as clampTaskRangeForIncomingFS, E as computeCriticalPath, F as computeLagFromDates, H as computeParentDates, I as computeParentProgress, J as detectCycles, K as extendCriticalIdsToParents, N as findParentId, O as getAllDependencyEdges, P as getAllDescendants, Q as getBusinessDayOffset, U as getChildren, X as getDependencyLag, Y as getSuccessorChain, Z as getTaskDuration, _ as getTransitiveCascadeChain, $ as isAncestorTask, a0 as isTaskParent, a1 as moveTaskRange, a2 as moveTaskWithCascade, a3 as normalizeDependencyLag, a4 as normalizePredecessorDates, a5 as normalizeTaskDependencyLags, a6 as normalizeUTCDate, a7 as parseDateOnly, a8 as recalculateIncomingLags, a9 as recalculateProjectSchedule, aa as recalculateTaskFromDependencies, ab as reflowTasksOnModeSwitch, ac as removeDependenciesBetweenTasks, ad as resizeTaskWithCascade, ae as scaleTaskSubtreeDuration, af as shiftBusinessDayOffset, ag as universalCascade, ah as validateDependencies } from './index-D99kbU4p.mjs';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import * as RadixPopover from '@radix-ui/react-popover';
6
6
 
@@ -458,6 +458,8 @@ interface Task {
458
458
  type?: 'task' | 'milestone';
459
459
  /** Optional parent task ID for hierarchy relationship */
460
460
  parentId?: string;
461
+ /** Render this parent as a compact accordion bar. Its children remain ordinary tasks. */
462
+ composite?: boolean;
461
463
  /**
462
464
  * Optional progress value from 0-100
463
465
  * - Decimal values are allowed and rounded to nearest integer for display
@@ -845,6 +847,12 @@ interface TaskRowProps {
845
847
  showTaskDateLabels?: boolean;
846
848
  /** Render the task name to the right of the task bar (default: true). */
847
849
  showTaskNames?: boolean;
850
+ /** Open or close the composite detail rows. */
851
+ onCompositeToggle?: (source: 'release' | 'click' | 'keyboard') => void;
852
+ compactDetail?: boolean;
853
+ /** Parent bar color used to tint a composite detail row. */
854
+ compositeParentColor?: string;
855
+ compositeExpanded?: boolean;
848
856
  }
849
857
  /**
850
858
  * TaskRow component - renders a single task row with a task bar
@@ -864,6 +872,8 @@ interface GenerationSkeletonRowsProps {
864
872
  rowHeight: number;
865
873
  variant: GenerationSkeletonVariant;
866
874
  startIndex?: number;
875
+ /** Pixel offset of the first placeholder when preceding rows have variable heights. */
876
+ startTop?: number;
867
877
  taskListLayout?: GenerationSkeletonTaskListLayout;
868
878
  chartDayWidth?: number;
869
879
  chartStartDayOffset?: number;
@@ -978,6 +988,9 @@ interface TaskListProps {
978
988
  tasks: Task[];
979
989
  /** Height of each row in pixels (must match Gantt chart's rowHeight) */
980
990
  rowHeight: number;
991
+ /** Pixel positions shared with the chart for variable-height detail rows. */
992
+ rowTops?: number[];
993
+ rowHeights?: number[];
981
994
  /** Height of the header row in pixels (must match Gantt chart's headerHeight) */
982
995
  headerHeight: number;
983
996
  /** Width of the task list overlay in pixels. Values below the visible column width are clamped. */
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import React$1, { ReactNode } from 'react';
2
- import { T as Task$1, R as ResourceTimelineItem, G as GanttScheduleIntent, V as ValidationResult, a as GanttDateRange, b as TimelineMarker, c as TaskDateChangeMode, S as ScaleTaskSubtreeResult, d as ResourcePlannerChartProps, e as ResourceTimelineResource } from './index-DR8Q6-de.js';
3
- export { B as BuiltInResourceTableColumnId, C as CriticalPathOptions, D as DAY_MS, f as DependencyError, g as GanttChartMode, h as GridConfig, i as GridLine, L as LinkType, M as MonthSpan, j as ResourceTableColumnId, k as ResourceTableColumnWidthMap, l as ResourceTimelineMove, m as ResourceTimelineResourceMenuCommand, n as ScaleTaskSubtreeAnchor, o as ScaleTaskSubtreeErrorCode, p as ScaleTaskSubtreeExternalPolicy, q as ScaleTaskSubtreeOptions, r as ScaleTaskSubtreeWarning, s as TaskBarGeometry, W as WeekendBlock, t as alignToWorkingDay, u as areTasksHierarchicallyRelated, v as buildAdjacencyList, w as buildTaskRangeFromEnd, x as buildTaskRangeFromStart, y as calculateSuccessorDate, z as cascadeByLinks, A as clampTaskRangeForIncomingFS, E as computeCriticalPath, F as computeLagFromDates, H as computeParentDates, I as computeParentProgress, J as detectCycles, K as extendCriticalIdsToParents, N as findParentId, O as getAllDependencyEdges, P as getAllDescendants, Q as getBusinessDayOffset, U as getChildren, X as getDependencyLag, Y as getSuccessorChain, Z as getTaskDuration, _ as getTransitiveCascadeChain, $ as isAncestorTask, a0 as isTaskParent, a1 as moveTaskRange, a2 as moveTaskWithCascade, a3 as normalizeDependencyLag, a4 as normalizePredecessorDates, a5 as normalizeTaskDependencyLags, a6 as normalizeUTCDate, a7 as parseDateOnly, a8 as recalculateIncomingLags, a9 as recalculateProjectSchedule, aa as recalculateTaskFromDependencies, ab as reflowTasksOnModeSwitch, ac as removeDependenciesBetweenTasks, ad as resizeTaskWithCascade, ae as scaleTaskSubtreeDuration, af as shiftBusinessDayOffset, ag as universalCascade, ah as validateDependencies } from './index-DR8Q6-de.js';
2
+ import { T as Task$1, R as ResourceTimelineItem, G as GanttScheduleIntent, V as ValidationResult, a as GanttDateRange, b as TimelineMarker, c as TaskDateChangeMode, S as ScaleTaskSubtreeResult, d as ResourcePlannerChartProps, e as ResourceTimelineResource } from './index-D99kbU4p.js';
3
+ export { B as BuiltInResourceTableColumnId, C as CriticalPathOptions, D as DAY_MS, f as DependencyError, g as GanttChartMode, h as GridConfig, i as GridLine, L as LinkType, M as MonthSpan, j as ResourceTableColumnId, k as ResourceTableColumnWidthMap, l as ResourceTimelineMove, m as ResourceTimelineResourceMenuCommand, n as ScaleTaskSubtreeAnchor, o as ScaleTaskSubtreeErrorCode, p as ScaleTaskSubtreeExternalPolicy, q as ScaleTaskSubtreeOptions, r as ScaleTaskSubtreeWarning, s as TaskBarGeometry, W as WeekendBlock, t as alignToWorkingDay, u as areTasksHierarchicallyRelated, v as buildAdjacencyList, w as buildTaskRangeFromEnd, x as buildTaskRangeFromStart, y as calculateSuccessorDate, z as cascadeByLinks, A as clampTaskRangeForIncomingFS, E as computeCriticalPath, F as computeLagFromDates, H as computeParentDates, I as computeParentProgress, J as detectCycles, K as extendCriticalIdsToParents, N as findParentId, O as getAllDependencyEdges, P as getAllDescendants, Q as getBusinessDayOffset, U as getChildren, X as getDependencyLag, Y as getSuccessorChain, Z as getTaskDuration, _ as getTransitiveCascadeChain, $ as isAncestorTask, a0 as isTaskParent, a1 as moveTaskRange, a2 as moveTaskWithCascade, a3 as normalizeDependencyLag, a4 as normalizePredecessorDates, a5 as normalizeTaskDependencyLags, a6 as normalizeUTCDate, a7 as parseDateOnly, a8 as recalculateIncomingLags, a9 as recalculateProjectSchedule, aa as recalculateTaskFromDependencies, ab as reflowTasksOnModeSwitch, ac as removeDependenciesBetweenTasks, ad as resizeTaskWithCascade, ae as scaleTaskSubtreeDuration, af as shiftBusinessDayOffset, ag as universalCascade, ah as validateDependencies } from './index-D99kbU4p.js';
4
4
  import * as react_jsx_runtime from 'react/jsx-runtime';
5
5
  import * as RadixPopover from '@radix-ui/react-popover';
6
6
 
@@ -458,6 +458,8 @@ interface Task {
458
458
  type?: 'task' | 'milestone';
459
459
  /** Optional parent task ID for hierarchy relationship */
460
460
  parentId?: string;
461
+ /** Render this parent as a compact accordion bar. Its children remain ordinary tasks. */
462
+ composite?: boolean;
461
463
  /**
462
464
  * Optional progress value from 0-100
463
465
  * - Decimal values are allowed and rounded to nearest integer for display
@@ -845,6 +847,12 @@ interface TaskRowProps {
845
847
  showTaskDateLabels?: boolean;
846
848
  /** Render the task name to the right of the task bar (default: true). */
847
849
  showTaskNames?: boolean;
850
+ /** Open or close the composite detail rows. */
851
+ onCompositeToggle?: (source: 'release' | 'click' | 'keyboard') => void;
852
+ compactDetail?: boolean;
853
+ /** Parent bar color used to tint a composite detail row. */
854
+ compositeParentColor?: string;
855
+ compositeExpanded?: boolean;
848
856
  }
849
857
  /**
850
858
  * TaskRow component - renders a single task row with a task bar
@@ -864,6 +872,8 @@ interface GenerationSkeletonRowsProps {
864
872
  rowHeight: number;
865
873
  variant: GenerationSkeletonVariant;
866
874
  startIndex?: number;
875
+ /** Pixel offset of the first placeholder when preceding rows have variable heights. */
876
+ startTop?: number;
867
877
  taskListLayout?: GenerationSkeletonTaskListLayout;
868
878
  chartDayWidth?: number;
869
879
  chartStartDayOffset?: number;
@@ -978,6 +988,9 @@ interface TaskListProps {
978
988
  tasks: Task[];
979
989
  /** Height of each row in pixels (must match Gantt chart's rowHeight) */
980
990
  rowHeight: number;
991
+ /** Pixel positions shared with the chart for variable-height detail rows. */
992
+ rowTops?: number[];
993
+ rowHeights?: number[];
981
994
  /** Height of the header row in pixels (must match Gantt chart's headerHeight) */
982
995
  headerHeight: number;
983
996
  /** Width of the task list overlay in pixels. Values below the visible column width are clamped. */