Add Gantt chart view with card dependencies and start dates
Adds a new Gantt chart board view with custom SVG timeline rendering, card-to-card dependency tracking with cycle detection, and a startDate field on cards. Includes zoom controls (day/week/month), dependency arrows, column-grouped task list, today marker, and real-time updates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -165,6 +165,7 @@ model Card {
|
||||
description String?
|
||||
position String // Fractional index (lexicographic)
|
||||
dueDate DateTime? @map("due_date")
|
||||
startDate DateTime? @map("start_date")
|
||||
archived Boolean @default(false)
|
||||
dueReminderSent Boolean @default(false) @map("due_reminder_sent")
|
||||
cardNumber Int? @map("card_number")
|
||||
@@ -180,6 +181,8 @@ model Card {
|
||||
activities Activity[]
|
||||
watchers CardWatcher[]
|
||||
customFieldValues CustomFieldValue[]
|
||||
blocks CardDependency[] @relation("CardBlocks")
|
||||
blockedBy CardDependency[] @relation("CardBlockedBy")
|
||||
|
||||
@@map("cards")
|
||||
}
|
||||
@@ -458,6 +461,21 @@ model AutomationRule {
|
||||
@@map("automation_rules")
|
||||
}
|
||||
|
||||
// ─── Card Dependencies ──────────────────────────────────────
|
||||
|
||||
model CardDependency {
|
||||
id String @id @default(uuid()) @db.Uuid
|
||||
blockingCardId String @map("blocking_card_id") @db.Uuid
|
||||
blockedCardId String @map("blocked_card_id") @db.Uuid
|
||||
createdAt DateTime @default(now()) @map("created_at")
|
||||
|
||||
blockingCard Card @relation("CardBlocks", fields: [blockingCardId], references: [id], onDelete: Cascade)
|
||||
blockedCard Card @relation("CardBlockedBy", fields: [blockedCardId], references: [id], onDelete: Cascade)
|
||||
|
||||
@@unique([blockingCardId, blockedCardId])
|
||||
@@map("card_dependencies")
|
||||
}
|
||||
|
||||
// ─── Tenant Branding & Theming ───────────────────────────────
|
||||
|
||||
model TenantTheme {
|
||||
|
||||
Reference in New Issue
Block a user