diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTable.tsx b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTable.tsx index eca925e7..6c0e4ddf 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTable.tsx +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTable.tsx @@ -72,6 +72,10 @@ const COLUMN_LABELS: Record = { designatedArea: "Designated Area", article4PdRights: "Article 4 PD Rights", listedBuilding: "Listed Building", + designConstraints: "Design Constraints", + planningComments: "Planning Comments", + planningStatus: "Planning Status", + planningSuggestedApproach: "Planning Suggested Approach", }; type DocFilter = "all" | "has_docs" | "incomplete" | "none"; @@ -122,6 +126,10 @@ export default function PropertyTable({ data, onOpenDrawer, portfolioId = "", sh designatedArea: false, article4PdRights: false, listedBuilding: false, + designConstraints: false, + planningComments: false, + planningStatus: false, + planningSuggestedApproach: false, }); // Pre-filter by stage, doc status, and removal status before TanStack gets it diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTableColumns.tsx b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTableColumns.tsx index aa1c59e7..ee43edd5 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTableColumns.tsx +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/PropertyTableColumns.tsx @@ -487,6 +487,54 @@ export function createPropertyTableColumns( ), }, + // ── Design constraints ─────────────────────────────────────────────── + { + accessorKey: "designConstraints", + id: "designConstraints", + header: ({ column }) => , + cell: ({ row }) => ( + + {row.original.designConstraints ?? } + + ), + }, + + // ── Planning comments ──────────────────────────────────────────────── + { + accessorKey: "planningComments", + id: "planningComments", + header: ({ column }) => , + cell: ({ row }) => ( + + {row.original.planningComments ?? } + + ), + }, + + // ── Planning status ────────────────────────────────────────────────── + { + accessorKey: "planningStatus", + id: "planningStatus", + header: ({ column }) => , + cell: ({ row }) => ( + + {row.original.planningStatus ?? } + + ), + }, + + // ── Planning suggested approach ────────────────────────────────────── + { + accessorKey: "planningSuggestedApproach", + id: "planningSuggestedApproach", + header: ({ column }) => , + cell: ({ row }) => ( + + {row.original.planningSuggestedApproach ?? } + + ), + }, + ]; if (showDocuments) { diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/dealQuery.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/dealQuery.ts index 72d94089..01cc259d 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/dealQuery.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/dealQuery.ts @@ -77,6 +77,10 @@ export function mapDbRowToHubspotDeal(row: DealRow): HubspotDeal { designatedArea: d.designatedArea, article4PdRights: d.article4PdRights, listedBuilding: d.listedBuilding, + designConstraints: d.designConstraints, + planningComments: d.planningComments, + planningStatus: d.planningStatus, + planningSuggestedApproach: d.planningSuggestedApproach, createdAt: d.createdAt, updatedAt: d.updatedAt, }; diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/docStatus.test.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/docStatus.test.ts index 2c8d22f8..cd2c1d08 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/docStatus.test.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/docStatus.test.ts @@ -64,6 +64,10 @@ function makeDeal(overrides: Partial = {}): HubspotDeal { designatedArea: null, article4PdRights: null, listedBuilding: null, + designConstraints: null, + planningComments: null, + planningStatus: null, + planningSuggestedApproach: null, coordinationComments: null, domnasurveyRequired: null, createdAt: new Date(), diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/measureFilters.test.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/measureFilters.test.ts index 51343752..3f7fec46 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/measureFilters.test.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/measureFilters.test.ts @@ -63,6 +63,10 @@ function makeDeal(overrides: Partial = {}): ClassifiedDeal { designatedArea: null, article4PdRights: null, listedBuilding: null, + designConstraints: null, + planningComments: null, + planningStatus: null, + planningSuggestedApproach: null, coordinationComments: null, domnasurveyRequired: null, createdAt: new Date(), diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.test.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.test.ts index c96ce491..b0ee7179 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.test.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.test.ts @@ -63,6 +63,10 @@ function makeDeal(overrides: Partial = {}): HubspotDeal { designatedArea: null, article4PdRights: null, listedBuilding: null, + designConstraints: null, + planningComments: null, + planningStatus: null, + planningSuggestedApproach: null, coordinationComments: null, domnasurveyRequired: null, createdAt: new Date(), diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.ts index 5e8c9f09..21296c0c 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/propertyCsv.ts @@ -34,6 +34,10 @@ export const PROPERTY_CSV_FIELDS: PropertyCsvField[] = [ { key: "designatedArea", label: "Designated Area" }, { key: "article4PdRights", label: "Article 4 PD Rights" }, { key: "listedBuilding", label: "Listed Building" }, + { key: "designConstraints", label: "Design Constraints" }, + { key: "planningComments", label: "Planning Comments" }, + { key: "planningStatus", label: "Planning Status" }, + { key: "planningSuggestedApproach", label: "Planning Suggested Approach" }, ]; export function escapeCsvCell(value: unknown): string { diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/transforms.test.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/transforms.test.ts index 8df8b962..eae27870 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/transforms.test.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/transforms.test.ts @@ -70,6 +70,10 @@ function makeDeal(overrides: Partial = {}): HubspotDeal { designatedArea: null, article4PdRights: null, listedBuilding: null, + designConstraints: null, + planningComments: null, + planningStatus: null, + planningSuggestedApproach: null, coordinationComments: null, domnasurveyRequired: null, createdAt: new Date(), diff --git a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/types.ts b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/types.ts index 519a301f..b1501487 100644 --- a/src/app/portfolio/[slug]/(portfolio)/your-projects/live/types.ts +++ b/src/app/portfolio/[slug]/(portfolio)/your-projects/live/types.ts @@ -76,6 +76,10 @@ export type HubspotDeal = { designatedArea: string | null; article4PdRights: string | null; listedBuilding: string | null; + designConstraints: string | null; + planningComments: string | null; + planningStatus: string | null; + planningSuggestedApproach: string | null; createdAt: Date; updatedAt: Date;