Skip to content

Comments

feat: Add timeline dependencies feature with visual connectors#9

Open
pqhung3007 wants to merge 1 commit intopreviewfrom
claude/add-timeline-dependencies-01HorZGtXuZhA9kDRaSNJEAv
Open

feat: Add timeline dependencies feature with visual connectors#9
pqhung3007 wants to merge 1 commit intopreviewfrom
claude/add-timeline-dependencies-01HorZGtXuZhA9kDRaSNJEAv

Conversation

@pqhung3007
Copy link
Owner

Implemented comprehensive task dependency management in Timeline layout with:

Features:

  • Visual dependency connectors with SVG lines connecting related tasks
  • Three dependency types support:
    • Finish-to-Start (FS): Blocking/Blocked by relations
    • Start-to-Start (SS): Starts before/after relations
    • Finish-to-Finish (FF): Finishes before/after relations
  • Drag-and-drop interface for creating dependencies
    • Left handle: Creates start-to-start dependencies
    • Right handle: Creates finish-to-start or finish-to-finish dependencies
  • Dependency validation with red lines for violated constraints
  • Interactive dependency dialog showing relationship details on click
  • Automatic relation type detection based on drag handles

Technical Implementation:

  • Added new relation types: starts_before, starts_after, finishes_before, finishes_after
  • TimelineDependencyPaths component for rendering dependency lines
  • TimelineDraggablePath component for drag-to-create functionality
  • Left/Right dependency draggable handles on timeline blocks
  • DependencyDialog component for displaying relation information
  • Integrated with existing relation store and API services
  • Enabled isDependencyEnabled flag in timeline store

Files Modified:

  • packages/types: Extended TIssueRelationTypes with new dependency types
  • ce/constants: Added reverse relation mappings
  • ce/store/timeline: Enabled dependency feature flag
  • ce/components/gantt-chart/dependency: Implemented all dependency components

This feature helps users manage connected tasks with a clear, high-level view of task relationships, optimize resource allocation, track bottlenecks, and prevent delays by visualizing dependencies directly in the timeline.

Description

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • Feature (non-breaking change which adds functionality)
  • Improvement (change that would cause existing functionality to not work as expected)
  • Code refactoring
  • Performance improvements
  • Documentation update

Screenshots and Media (if applicable)

Test Scenarios

References

Implemented comprehensive task dependency management in Timeline layout with:

Features:
- Visual dependency connectors with SVG lines connecting related tasks
- Three dependency types support:
  * Finish-to-Start (FS): Blocking/Blocked by relations
  * Start-to-Start (SS): Starts before/after relations
  * Finish-to-Finish (FF): Finishes before/after relations
- Drag-and-drop interface for creating dependencies
  * Left handle: Creates start-to-start dependencies
  * Right handle: Creates finish-to-start or finish-to-finish dependencies
- Dependency validation with red lines for violated constraints
- Interactive dependency dialog showing relationship details on click
- Automatic relation type detection based on drag handles

Technical Implementation:
- Added new relation types: starts_before, starts_after, finishes_before, finishes_after
- TimelineDependencyPaths component for rendering dependency lines
- TimelineDraggablePath component for drag-to-create functionality
- Left/Right dependency draggable handles on timeline blocks
- DependencyDialog component for displaying relation information
- Integrated with existing relation store and API services
- Enabled isDependencyEnabled flag in timeline store

Files Modified:
- packages/types: Extended TIssueRelationTypes with new dependency types
- ce/constants: Added reverse relation mappings
- ce/store/timeline: Enabled dependency feature flag
- ce/components/gantt-chart/dependency: Implemented all dependency components

This feature helps users manage connected tasks with a clear, high-level view of
task relationships, optimize resource allocation, track bottlenecks, and prevent
delays by visualizing dependencies directly in the timeline.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants