@burdenoff/microfe-planmagnet 2026.1001.1 → 2026.1001.3
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/planmagnet/PlanMagnetRoot.d.ts.map +1 -1
- package/dist/planmagnet/PlanMagnetRoot.js +163 -150
- package/dist/planmagnet/PlanMagnetRoot.js.map +1 -1
- package/dist/planmagnet/PlanMagnetRoutes.d.ts.map +1 -1
- package/dist/planmagnet/PlanMagnetRoutes.js +124 -108
- package/dist/planmagnet/PlanMagnetRoutes.js.map +1 -1
- package/dist/planmagnet/comments/CommentThread.js +36 -36
- package/dist/planmagnet/comments/RoadmapComments.js +21 -21
- package/dist/planmagnet/controls/AutomationRuleControls.js +24 -24
- package/dist/planmagnet/controls/FeatureControls.js +60 -60
- package/dist/planmagnet/controls/MilestoneControls.d.ts +2 -0
- package/dist/planmagnet/controls/MilestoneControls.d.ts.map +1 -1
- package/dist/planmagnet/controls/MilestoneControls.js +89 -72
- package/dist/planmagnet/controls/MilestoneControls.js.map +1 -1
- package/dist/planmagnet/controls/SyncControls.js +59 -59
- package/dist/planmagnet/discussion/WorkItemDiscussionPanel.js +15 -15
- package/dist/planmagnet/docs/DocSuggestionsPanel.js +12 -12
- package/dist/planmagnet/docs/DocVersionCompare.js +3 -3
- package/dist/planmagnet/forecast/DeliveryForecastCard.d.ts +12 -0
- package/dist/planmagnet/forecast/DeliveryForecastCard.d.ts.map +1 -0
- package/dist/planmagnet/forecast/DeliveryForecastCard.js +208 -0
- package/dist/planmagnet/forecast/DeliveryForecastCard.js.map +1 -0
- package/dist/planmagnet/forecast/ProjectOutlookCard.d.ts +5 -0
- package/dist/planmagnet/forecast/ProjectOutlookCard.d.ts.map +1 -0
- package/dist/planmagnet/forecast/ProjectOutlookCard.js +190 -0
- package/dist/planmagnet/forecast/ProjectOutlookCard.js.map +1 -0
- package/dist/planmagnet/forecast/ProjectRiskSummaryCard.d.ts +5 -0
- package/dist/planmagnet/forecast/ProjectRiskSummaryCard.d.ts.map +1 -0
- package/dist/planmagnet/forecast/ProjectRiskSummaryCard.js +99 -0
- package/dist/planmagnet/forecast/ProjectRiskSummaryCard.js.map +1 -0
- package/dist/planmagnet/forecast/ResourceForecastCard.d.ts +8 -0
- package/dist/planmagnet/forecast/ResourceForecastCard.d.ts.map +1 -0
- package/dist/planmagnet/forecast/ResourceForecastCard.js +185 -0
- package/dist/planmagnet/forecast/ResourceForecastCard.js.map +1 -0
- package/dist/planmagnet/forecast/riskFlags.d.ts +35 -0
- package/dist/planmagnet/forecast/riskFlags.d.ts.map +1 -0
- package/dist/planmagnet/forecast/riskFlags.js +37 -0
- package/dist/planmagnet/forecast/riskFlags.js.map +1 -0
- package/dist/planmagnet/meetings/MeetingActionItemsPanel.d.ts +17 -0
- package/dist/planmagnet/meetings/MeetingActionItemsPanel.d.ts.map +1 -0
- package/dist/planmagnet/meetings/MeetingActionItemsPanel.js +218 -0
- package/dist/planmagnet/meetings/MeetingActionItemsPanel.js.map +1 -0
- package/dist/planmagnet/meetings/MeetingsCard.d.ts +7 -0
- package/dist/planmagnet/meetings/MeetingsCard.d.ts.map +1 -0
- package/dist/planmagnet/meetings/MeetingsCard.js +108 -0
- package/dist/planmagnet/meetings/MeetingsCard.js.map +1 -0
- package/dist/planmagnet/meetings/ScheduleCeremoniesDialog.d.ts +9 -0
- package/dist/planmagnet/meetings/ScheduleCeremoniesDialog.d.ts.map +1 -0
- package/dist/planmagnet/meetings/ScheduleCeremoniesDialog.js +232 -0
- package/dist/planmagnet/meetings/ScheduleCeremoniesDialog.js.map +1 -0
- package/dist/planmagnet/meetings/ScheduleMeetingDialog.d.ts +19 -0
- package/dist/planmagnet/meetings/ScheduleMeetingDialog.d.ts.map +1 -0
- package/dist/planmagnet/meetings/ScheduleMeetingDialog.js +226 -0
- package/dist/planmagnet/meetings/ScheduleMeetingDialog.js.map +1 -0
- package/dist/planmagnet/meetings/UnlinkMeetingDialog.d.ts +14 -0
- package/dist/planmagnet/meetings/UnlinkMeetingDialog.d.ts.map +1 -0
- package/dist/planmagnet/meetings/UnlinkMeetingDialog.js +81 -0
- package/dist/planmagnet/meetings/UnlinkMeetingDialog.js.map +1 -0
- package/dist/planmagnet/meetings/meetingActions.d.ts +57 -0
- package/dist/planmagnet/meetings/meetingActions.d.ts.map +1 -0
- package/dist/planmagnet/meetings/meetingActions.js +51 -0
- package/dist/planmagnet/meetings/meetingActions.js.map +1 -0
- package/dist/planmagnet/meetings/meetingGraphql.d.ts +29 -0
- package/dist/planmagnet/meetings/meetingGraphql.d.ts.map +1 -0
- package/dist/planmagnet/meetings/meetingGraphql.js +166 -0
- package/dist/planmagnet/meetings/meetingGraphql.js.map +1 -0
- package/dist/planmagnet/meetings/meetingModel.d.ts +74 -0
- package/dist/planmagnet/meetings/meetingModel.d.ts.map +1 -0
- package/dist/planmagnet/meetings/meetingModel.js +88 -0
- package/dist/planmagnet/meetings/meetingModel.js.map +1 -0
- package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.d.ts.map +1 -1
- package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js +216 -182
- package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
- package/dist/planmagnet/pages/AutomationAutomationRuleDetailPagePage.js +11 -11
- package/dist/planmagnet/pages/AutomationCreateAutomationRulePagePage.js +4 -4
- package/dist/planmagnet/pages/DocsDocDetailPagePage.js +163 -163
- package/dist/planmagnet/pages/DocsDocDetailPagePage.js.map +1 -1
- package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js +165 -165
- package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js.map +1 -1
- package/dist/planmagnet/pages/MeetingsMeetingDetailPagePage.d.ts +2 -0
- package/dist/planmagnet/pages/MeetingsMeetingDetailPagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/MeetingsMeetingDetailPagePage.js +197 -0
- package/dist/planmagnet/pages/MeetingsMeetingDetailPagePage.js.map +1 -0
- package/dist/planmagnet/pages/MeetingsMeetingsPagePage.d.ts +2 -0
- package/dist/planmagnet/pages/MeetingsMeetingsPagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/MeetingsMeetingsPagePage.js +173 -0
- package/dist/planmagnet/pages/MeetingsMeetingsPagePage.js.map +1 -0
- package/dist/planmagnet/pages/ProjectsAtRiskPagePage.d.ts +2 -0
- package/dist/planmagnet/pages/ProjectsAtRiskPagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/ProjectsAtRiskPagePage.js +234 -0
- package/dist/planmagnet/pages/ProjectsAtRiskPagePage.js.map +1 -0
- package/dist/planmagnet/pages/ProjectsMilestonesPagePage.d.ts.map +1 -1
- package/dist/planmagnet/pages/ProjectsMilestonesPagePage.js +73 -52
- package/dist/planmagnet/pages/ProjectsMilestonesPagePage.js.map +1 -1
- package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.d.ts.map +1 -1
- package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js +205 -190
- package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js.map +1 -1
- package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.d.ts.map +1 -1
- package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js +211 -182
- package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js.map +1 -1
- package/dist/planmagnet/pages/ReportsReportPagePage.js +22 -22
- package/dist/planmagnet/pages/ReportsReportPagePage.js.map +1 -1
- package/dist/planmagnet/pages/ReportsReportsPagePage.js +21 -21
- package/dist/planmagnet/pages/TeamTeamDetailPagePage.d.ts.map +1 -1
- package/dist/planmagnet/pages/TeamTeamDetailPagePage.js +88 -83
- package/dist/planmagnet/pages/TeamTeamDetailPagePage.js.map +1 -1
- package/dist/planmagnet/pages/analytics/SprintDeliveryCards.d.ts.map +1 -1
- package/dist/planmagnet/pages/analytics/SprintDeliveryCards.js +139 -112
- package/dist/planmagnet/pages/analytics/SprintDeliveryCards.js.map +1 -1
- package/dist/planmagnet/pages/analytics/StatusFlowCard.js +21 -21
- package/dist/planmagnet/product/ProductControls.js +91 -91
- package/dist/planmagnet/reports/SchedulesPanel.js +33 -33
- package/dist/planmagnet/reports/ShareDialog.js +76 -76
- package/dist/planmagnet/reports/ShareDialog.js.map +1 -1
- package/dist/planmagnet/reports/sharedReportRoute.d.ts +3 -2
- package/dist/planmagnet/reports/sharedReportRoute.d.ts.map +1 -1
- package/dist/planmagnet/reports/sharedReportRoute.js.map +1 -1
- package/dist/planmagnet/roadmaps/RoadmapControls.js +60 -60
- package/dist/planmagnet/roadmaps/RoadmapNowNextLater.js +30 -30
- package/dist/planmagnet/roadmaps/RoadmapReviewPanel.js +21 -21
- package/dist/planmagnet/roadmaps/RoadmapVersionsPanel.js +22 -22
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanMagnetRoutes.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Route, Routes } from 'react-router';\nimport { Loader2 } from 'lucide-react';\nimport { AnalyticsAnalyticsPagePage } from './pages/AnalyticsAnalyticsPagePage';\n\nconst PlanMagnetNotFoundPage = lazy(() =>\n import('./pages/NotFoundPage').then((m) => ({ default: m.PlanMagnetNotFoundPage }))\n);\nconst DocsDocsPagePage = lazy(() =>\n import('./pages/DocsDocsPagePage').then((m) => ({ default: m.DocsDocsPagePage }))\n);\nconst DocsDocDetailPagePage = lazy(() =>\n import('./pages/DocsDocDetailPagePage').then((m) => ({ default: m.DocsDocDetailPagePage }))\n);\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst ProductsCreateProductPagePage = lazy(() =>\n import('./pages/ProductsCreateProductPagePage').then((m) => ({\n default: m.ProductsCreateProductPagePage,\n }))\n);\nconst ProductsCreateRoadmapPagePage = lazy(() =>\n import('./pages/ProductsCreateRoadmapPagePage').then((m) => ({\n default: m.ProductsCreateRoadmapPagePage,\n }))\n);\nconst ProductsEditProductPagePage = lazy(() =>\n import('./pages/ProductsEditProductPagePage').then((m) => ({\n default: m.ProductsEditProductPagePage,\n }))\n);\nconst ProductsEditRoadmapPagePage = lazy(() =>\n import('./pages/ProductsEditRoadmapPagePage').then((m) => ({\n default: m.ProductsEditRoadmapPagePage,\n }))\n);\nconst ProductsEditReleasePagePage = lazy(() =>\n import('./pages/ProductsEditReleasePagePage').then((m) => ({\n default: m.ProductsEditReleasePagePage,\n }))\n);\nconst ProductsFeatureAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsFeatureAnalyticsPagePage').then((m) => ({\n default: m.ProductsFeatureAnalyticsPagePage,\n }))\n);\nconst ProductsFeatureDetailPagePage = lazy(() =>\n import('./pages/ProductsFeatureDetailPagePage').then((m) => ({\n default: m.ProductsFeatureDetailPagePage,\n }))\n);\nconst ProductsFeaturesPagePage = lazy(() =>\n import('./pages/ProductsFeaturesPagePage').then((m) => ({ default: m.ProductsFeaturesPagePage }))\n);\nconst ProductsNewFeaturePagePage = lazy(() =>\n import('./pages/ProductsNewFeaturePagePage').then((m) => ({\n default: m.ProductsNewFeaturePagePage,\n }))\n);\nconst ProductsProductDetailPagePage = lazy(() =>\n import('./pages/ProductsProductDetailPagePage').then((m) => ({\n default: m.ProductsProductDetailPagePage,\n }))\n);\nconst ProductsProductsPagePage = lazy(() =>\n import('./pages/ProductsProductsPagePage').then((m) => ({ default: m.ProductsProductsPagePage }))\n);\nconst ProductsReleaseDetailPagePage = lazy(() =>\n import('./pages/ProductsReleaseDetailPagePage').then((m) => ({\n default: m.ProductsReleaseDetailPagePage,\n }))\n);\nconst ProductsReleasesPagePage = lazy(() =>\n import('./pages/ProductsReleasesPagePage').then((m) => ({ default: m.ProductsReleasesPagePage }))\n);\nconst ProductsRoadmapAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapAnalyticsPagePage').then((m) => ({\n default: m.ProductsRoadmapAnalyticsPagePage,\n }))\n);\nconst ProductsRoadmapDetailPagePage = lazy(() =>\n import('./pages/ProductsRoadmapDetailPagePage').then((m) => ({\n default: m.ProductsRoadmapDetailPagePage,\n }))\n);\nconst ProductsRoadmapsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapsPagePage').then((m) => ({ default: m.ProductsRoadmapsPagePage }))\n);\nconst PortfoliosPortfoliosPagePage = lazy(() =>\n import('./pages/PortfoliosPortfoliosPagePage').then((m) => ({\n default: m.PortfoliosPortfoliosPagePage,\n }))\n);\nconst PortfoliosCreatePortfolioPagePage = lazy(() =>\n import('./pages/PortfoliosCreatePortfolioPagePage').then((m) => ({\n default: m.PortfoliosCreatePortfolioPagePage,\n }))\n);\nconst PortfoliosPortfolioDetailPagePage = lazy(() =>\n import('./pages/PortfoliosPortfolioDetailPagePage').then((m) => ({\n default: m.PortfoliosPortfolioDetailPagePage,\n }))\n);\nconst PortfoliosEditPortfolioPagePage = lazy(() =>\n import('./pages/PortfoliosEditPortfolioPagePage').then((m) => ({\n default: m.PortfoliosEditPortfolioPagePage,\n }))\n);\nconst ProgramsProgramsPagePage = lazy(() =>\n import('./pages/ProgramsProgramsPagePage').then((m) => ({ default: m.ProgramsProgramsPagePage }))\n);\nconst ProgramsCreateProgramPagePage = lazy(() =>\n import('./pages/ProgramsCreateProgramPagePage').then((m) => ({\n default: m.ProgramsCreateProgramPagePage,\n }))\n);\nconst ProgramsProgramDetailPagePage = lazy(() =>\n import('./pages/ProgramsProgramDetailPagePage').then((m) => ({\n default: m.ProgramsProgramDetailPagePage,\n }))\n);\nconst ProgramsEditProgramPagePage = lazy(() =>\n import('./pages/ProgramsEditProgramPagePage').then((m) => ({\n default: m.ProgramsEditProgramPagePage,\n }))\n);\nconst CompetitorsCompetitorsPagePage = lazy(() =>\n import('./pages/CompetitorsCompetitorsPagePage').then((m) => ({\n default: m.CompetitorsCompetitorsPagePage,\n }))\n);\nconst CompetitorsCreateCompetitorPagePage = lazy(() =>\n import('./pages/CompetitorsCreateCompetitorPagePage').then((m) => ({\n default: m.CompetitorsCreateCompetitorPagePage,\n }))\n);\nconst CompetitorsCompetitorDetailPagePage = lazy(() =>\n import('./pages/CompetitorsCompetitorDetailPagePage').then((m) => ({\n default: m.CompetitorsCompetitorDetailPagePage,\n }))\n);\nconst CompetitorsEditCompetitorPagePage = lazy(() =>\n import('./pages/CompetitorsEditCompetitorPagePage').then((m) => ({\n default: m.CompetitorsEditCompetitorPagePage,\n }))\n);\n// Prioritization (PRM-27): MoSCoW/Kano/Value-vs-Effort over feature requests or roadmap initiatives.\nconst ProductsPrioritizationPagePage = lazy(() =>\n import('./pages/ProductsPrioritizationPagePage').then((m) => ({\n default: m.ProductsPrioritizationPagePage,\n }))\n);\nconst ProjectsActiveProjectsPagePage = lazy(() =>\n import('./pages/ProjectsActiveProjectsPagePage').then((m) => ({\n default: m.ProjectsActiveProjectsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsEditProjectPagePage = lazy(() =>\n import('./pages/ProjectsEditProjectPagePage').then((m) => ({\n default: m.ProjectsEditProjectPagePage,\n }))\n);\nconst ProjectsMilestoneDetailPagePage = lazy(() =>\n import('./pages/ProjectsMilestoneDetailPagePage').then((m) => ({\n default: m.ProjectsMilestoneDetailPagePage,\n }))\n);\nconst ProjectsBudgetsPagePage = lazy(() =>\n import('./pages/ProjectsBudgetsPagePage').then((m) => ({ default: m.ProjectsBudgetsPagePage }))\n);\nconst ProjectsBudgetDetailPagePage = lazy(() =>\n import('./pages/ProjectsBudgetDetailPagePage').then((m) => ({\n default: m.ProjectsBudgetDetailPagePage,\n }))\n);\nconst TasksTimeEntriesPagePage = lazy(() =>\n import('./pages/TasksTimeEntriesPagePage').then((m) => ({\n default: m.TasksTimeEntriesPagePage,\n }))\n);\nconst TasksTimesheetsPagePage = lazy(() =>\n import('./pages/TasksTimesheetsPagePage').then((m) => ({\n default: m.TasksTimesheetsPagePage,\n }))\n);\nconst TasksTimesheetDetailPagePage = lazy(() =>\n import('./pages/TasksTimesheetDetailPagePage').then((m) => ({\n default: m.TasksTimesheetDetailPagePage,\n }))\n);\nconst GoalsGoalsPagePage = lazy(() =>\n import('./pages/GoalsGoalsPagePage').then((m) => ({ default: m.GoalsGoalsPagePage }))\n);\nconst GoalsCreateObjectivePagePage = lazy(() =>\n import('./pages/GoalsCreateObjectivePagePage').then((m) => ({\n default: m.GoalsCreateObjectivePagePage,\n }))\n);\nconst GoalsObjectiveDetailPagePage = lazy(() =>\n import('./pages/GoalsObjectiveDetailPagePage').then((m) => ({\n default: m.GoalsObjectiveDetailPagePage,\n }))\n);\nconst ProjectsMilestonesPagePage = lazy(() =>\n import('./pages/ProjectsMilestonesPagePage').then((m) => ({\n default: m.ProjectsMilestonesPagePage,\n }))\n);\nconst ProjectsPlanningDetailPagePage = lazy(() =>\n import('./pages/ProjectsPlanningDetailPagePage').then((m) => ({\n default: m.ProjectsPlanningDetailPagePage,\n }))\n);\nconst ProjectsPlanningEditPagePage = lazy(() =>\n import('./pages/ProjectsPlanningEditPagePage').then((m) => ({\n default: m.ProjectsPlanningEditPagePage,\n }))\n);\nconst ProjectsPlanningPagePage = lazy(() =>\n import('./pages/ProjectsPlanningPagePage').then((m) => ({ default: m.ProjectsPlanningPagePage }))\n);\nconst ProjectsProjectDetailPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailPagePage').then((m) => ({\n default: m.ProjectsProjectDetailPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst ReportsCreateReportPagePage = lazy(() =>\n import('./pages/ReportsCreateReportPagePage').then((m) => ({\n default: m.ReportsCreateReportPagePage,\n }))\n);\nconst ReportsReportsPagePage = lazy(() =>\n import('./pages/ReportsReportsPagePage').then((m) => ({ default: m.ReportsReportsPagePage }))\n);\nconst ReportsEditReportPagePage = lazy(() =>\n import('./pages/ReportsEditReportPagePage').then((m) => ({\n default: m.ReportsEditReportPagePage,\n }))\n);\nconst ReportsReportPagePage = lazy(() =>\n import('./pages/ReportsReportPagePage').then((m) => ({ default: m.ReportsReportPagePage }))\n);\nconst SprintsStartSprintPagePage = lazy(() =>\n import('./pages/SprintsStartSprintPagePage').then((m) => ({\n default: m.SprintsStartSprintPagePage,\n }))\n);\nconst TasksCreateTaskPagePage = lazy(() =>\n import('./pages/TasksCreateTaskPagePage').then((m) => ({ default: m.TasksCreateTaskPagePage }))\n);\nconst TasksEditTaskPagePage = lazy(() =>\n import('./pages/TasksEditTaskPagePage').then((m) => ({ default: m.TasksEditTaskPagePage }))\n);\nconst ProjectsWorkflowPagePage = lazy(() =>\n import('./pages/ProjectsWorkflowPagePage').then((m) => ({ default: m.ProjectsWorkflowPagePage }))\n);\nconst ProjectsCustomFieldsPagePage = lazy(() =>\n import('./pages/ProjectsCustomFieldsPagePage').then((m) => ({\n default: m.ProjectsCustomFieldsPagePage,\n }))\n);\nconst TasksImportPagePage = lazy(() =>\n import('./pages/TasksImportPagePage').then((m) => ({ default: m.TasksImportPagePage }))\n);\nconst TasksTaskDetailPagePage = lazy(() =>\n import('./pages/TasksTaskDetailPagePage').then((m) => ({ default: m.TasksTaskDetailPagePage }))\n);\nconst TasksTasksPagePage = lazy(() =>\n import('./pages/TasksTasksPagePage').then((m) => ({ default: m.TasksTasksPagePage }))\n);\n// My Work (BOFF-8048)\nconst TasksMyWorkPagePage = lazy(() =>\n import('./pages/TasksMyWorkPagePage').then((m) => ({ default: m.TasksMyWorkPagePage }))\n);\n// My dashboard (ANR-08): my time allocation, my delivery trend, my goals.\nconst TasksMyDashboardPagePage = lazy(() =>\n import('./pages/TasksMyDashboardPagePage').then((m) => ({\n default: m.TasksMyDashboardPagePage,\n }))\n);\nconst TeamCreateTeamPagePage = lazy(() =>\n import('./pages/TeamCreateTeamPagePage').then((m) => ({ default: m.TeamCreateTeamPagePage }))\n);\nconst TeamInviteMemberPagePage = lazy(() =>\n import('./pages/TeamInviteMemberPagePage').then((m) => ({ default: m.TeamInviteMemberPagePage }))\n);\nconst TeamTeamPagePage = lazy(() =>\n import('./pages/TeamTeamPagePage').then((m) => ({ default: m.TeamTeamPagePage }))\n);\nconst TeamTeamsListPagePage = lazy(() =>\n import('./pages/TeamTeamsListPagePage').then((m) => ({ default: m.TeamTeamsListPagePage }))\n);\nconst TeamTeamDetailPagePage = lazy(() =>\n import('./pages/TeamTeamDetailPagePage').then((m) => ({ default: m.TeamTeamDetailPagePage }))\n);\nconst TeamTeamEditPagePage = lazy(() =>\n import('./pages/TeamTeamEditPagePage').then((m) => ({ default: m.TeamTeamEditPagePage }))\n);\nconst WorkspaceCreateWorkspacePagePage = lazy(() =>\n import('./pages/WorkspaceCreateWorkspacePagePage').then((m) => ({\n default: m.WorkspaceCreateWorkspacePagePage,\n }))\n);\n// BOFF-8047: Automation rules and Project templates\nconst AutomationAutomationRulesPagePage = lazy(() =>\n import('./pages/AutomationAutomationRulesPagePage').then((m) => ({\n default: m.AutomationAutomationRulesPagePage,\n }))\n);\nconst AutomationCreateAutomationRulePagePage = lazy(() =>\n import('./pages/AutomationCreateAutomationRulePagePage').then((m) => ({\n default: m.AutomationCreateAutomationRulePagePage,\n }))\n);\nconst AutomationAutomationRuleDetailPagePage = lazy(() =>\n import('./pages/AutomationAutomationRuleDetailPagePage').then((m) => ({\n default: m.AutomationAutomationRuleDetailPagePage,\n }))\n);\nconst TemplatesTemplatesPagePage = lazy(() =>\n import('./pages/TemplatesTemplatesPagePage').then((m) => ({\n default: m.TemplatesTemplatesPagePage,\n }))\n);\nconst TemplatesEditTemplatePagePage = lazy(() =>\n import('./pages/TemplatesEditTemplatePagePage').then((m) => ({\n default: m.TemplatesEditTemplatePagePage,\n }))\n);\nconst RisksRiskRegisterPagePage = lazy(() =>\n import('./pages/RisksRiskRegisterPagePage').then((m) => ({\n default: m.RisksRiskRegisterPagePage,\n }))\n);\nconst RisksRiskDetailPagePage = lazy(() =>\n import('./pages/RisksRiskDetailPagePage').then((m) => ({ default: m.RisksRiskDetailPagePage }))\n);\nconst ProjectsCriticalPathPagePage = lazy(() =>\n import('./pages/ProjectsCriticalPathPagePage').then((m) => ({\n default: m.ProjectsCriticalPathPagePage,\n }))\n);\n// Gantt timeline (ANR-24)\nconst ProjectsGanttPagePage = lazy(() =>\n import('./pages/ProjectsGanttPagePage').then((m) => ({ default: m.ProjectsGanttPagePage }))\n);\n// Quality gates (GAP-02)\nconst ProjectsQualityGatesPagePage = lazy(() =>\n import('./pages/ProjectsQualityGatesPagePage').then((m) => ({\n default: m.ProjectsQualityGatesPagePage,\n }))\n);\n// AI breakdown + activity (AI-05, AI-24)\nconst AiPlanPagePage = lazy(() =>\n import('./pages/AiPlanPagePage').then((m) => ({ default: m.AiPlanPagePage }))\n);\nconst AiActivityPagePage = lazy(() =>\n import('./pages/AiActivityPagePage').then((m) => ({ default: m.AiActivityPagePage }))\n);\n// Workspace activity feed (CWF-09)\nconst ActivityActivityPagePage = lazy(() =>\n import('./pages/ActivityActivityPagePage').then((m) => ({\n default: m.ActivityActivityPagePage,\n }))\n);\n\n// Role dashboards (ANR-06, ANR-07, ANR-28, CWF-31): composed from existing queries, no new backend.\nconst DashboardsExecutivePagePage = lazy(() =>\n import('./pages/DashboardsExecutivePagePage').then((m) => ({\n default: m.DashboardsExecutivePagePage,\n }))\n);\nconst DashboardsProjectManagerPagePage = lazy(() =>\n import('./pages/DashboardsProjectManagerPagePage').then((m) => ({\n default: m.DashboardsProjectManagerPagePage,\n }))\n);\nconst DashboardsTeamUtilizationPagePage = lazy(() =>\n import('./pages/DashboardsTeamUtilizationPagePage').then((m) => ({\n default: m.DashboardsTeamUtilizationPagePage,\n }))\n);\nconst DashboardsLeadershipPagePage = lazy(() =>\n import('./pages/DashboardsLeadershipPagePage').then((m) => ({\n default: m.DashboardsLeadershipPagePage,\n }))\n);\n\n// Integrations (sync — AUT-06/08/09/10/24/40)\nconst IntegrationsSyncsPagePage = lazy(() =>\n import('./pages/IntegrationsSyncsPagePage').then((m) => ({\n default: m.IntegrationsSyncsPagePage,\n }))\n);\nconst IntegrationsNewSyncPagePage = lazy(() =>\n import('./pages/IntegrationsNewSyncPagePage').then((m) => ({\n default: m.IntegrationsNewSyncPagePage,\n }))\n);\nconst IntegrationsSyncDetailPagePage = lazy(() =>\n import('./pages/IntegrationsSyncDetailPagePage').then((m) => ({\n default: m.IntegrationsSyncDetailPagePage,\n }))\n);\n\n// Phase 2 new pages\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function PlanMagnetRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<DashboardDashboardPagePage />} />\n {/* Dashboard */}\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n {/* Products */}\n {/*\n The detail/edit/analytics pages below read their record id with\n useParams<{ id: string }>(). Each therefore needs a \":id\" segment — without one the\n id is permanently undefined and the page can never load a record, however it is\n reached. The bare paths are kept alongside so previously-bookmarked URLs still\n resolve rather than falling through to the catch-all redirect.\n */}\n <Route path=\"products/products-page\" element={<ProductsProductsPagePage />} />\n <Route path=\"products/create-product-page\" element={<ProductsCreateProductPagePage />} />\n <Route path=\"products/edit-product-page\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/edit-product-page/:id\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/product-detail-page\" element={<ProductsProductDetailPagePage />} />\n <Route\n path=\"products/product-detail-page/:id\"\n element={<ProductsProductDetailPagePage />}\n />\n <Route path=\"products/features-page\" element={<ProductsFeaturesPagePage />} />\n <Route path=\"products/new-feature-page\" element={<ProductsNewFeaturePagePage />} />\n <Route path=\"products/feature-detail-page\" element={<ProductsFeatureDetailPagePage />} />\n <Route\n path=\"products/feature-detail-page/:id\"\n element={<ProductsFeatureDetailPagePage />}\n />\n <Route\n path=\"products/feature-analytics-page\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route\n path=\"products/feature-analytics-page/:id\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route path=\"products/releases-page\" element={<ProductsReleasesPagePage />} />\n <Route path=\"products/release-detail-page\" element={<ProductsReleaseDetailPagePage />} />\n <Route\n path=\"products/release-detail-page/:id\"\n element={<ProductsReleaseDetailPagePage />}\n />\n <Route path=\"products/edit-release-page\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/edit-release-page/:id\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/roadmaps-page\" element={<ProductsRoadmapsPagePage />} />\n <Route path=\"products/roadmap-detail-page\" element={<ProductsRoadmapDetailPagePage />} />\n <Route\n path=\"products/roadmap-detail-page/:id\"\n element={<ProductsRoadmapDetailPagePage />}\n />\n <Route path=\"products/create-roadmap-page\" element={<ProductsCreateRoadmapPagePage />} />\n {/* BOFF-8045: roadmap editing's own home, split out of edit-product-page now that\n edit-product-page edits a real Product. */}\n <Route path=\"products/edit-roadmap-page\" element={<ProductsEditRoadmapPagePage />} />\n <Route path=\"products/edit-roadmap-page/:id\" element={<ProductsEditRoadmapPagePage />} />\n <Route\n path=\"products/roadmap-analytics-page\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n <Route\n path=\"products/roadmap-analytics-page/:id\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n {/* Portfolios (BOFF-8047) */}\n <Route path=\"products/portfolios-page\" element={<PortfoliosPortfoliosPagePage />} />\n <Route\n path=\"products/create-portfolio-page\"\n element={<PortfoliosCreatePortfolioPagePage />}\n />\n <Route\n path=\"products/portfolio-detail-page/:id\"\n element={<PortfoliosPortfolioDetailPagePage />}\n />\n <Route\n path=\"products/edit-portfolio-page/:id\"\n element={<PortfoliosEditPortfolioPagePage />}\n />\n {/* Programs (BOFF-8047) */}\n <Route path=\"products/programs-page\" element={<ProgramsProgramsPagePage />} />\n <Route path=\"products/create-program-page\" element={<ProgramsCreateProgramPagePage />} />\n <Route\n path=\"products/program-detail-page/:id\"\n element={<ProgramsProgramDetailPagePage />}\n />\n <Route path=\"products/edit-program-page/:id\" element={<ProgramsEditProgramPagePage />} />\n {/* Competitors (BOFF-8047) */}\n <Route path=\"products/competitors-page\" element={<CompetitorsCompetitorsPagePage />} />\n <Route\n path=\"products/create-competitor-page\"\n element={<CompetitorsCreateCompetitorPagePage />}\n />\n <Route\n path=\"products/competitor-detail-page/:id\"\n element={<CompetitorsCompetitorDetailPagePage />}\n />\n <Route\n path=\"products/edit-competitor-page/:id\"\n element={<CompetitorsEditCompetitorPagePage />}\n />\n {/* Prioritization (PRM-27) */}\n <Route path=\"products/prioritization-page\" element={<ProductsPrioritizationPagePage />} />\n {/* Projects */}\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/active-projects-page\" element={<ProjectsActiveProjectsPagePage />} />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/edit-project-page\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/edit-project-page/:id\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/project-detail-page\" element={<ProjectsProjectDetailPagePage />} />\n <Route\n path=\"projects/project-detail-page/:id\"\n element={<ProjectsProjectDetailPagePage />}\n />\n <Route path=\"projects/project-workflow-page/:id\" element={<ProjectsWorkflowPagePage />} />\n <Route\n path=\"projects/project-custom-fields-page/:id\"\n element={<ProjectsCustomFieldsPagePage />}\n />\n <Route path=\"projects/milestones-page\" element={<ProjectsMilestonesPagePage />} />\n <Route\n path=\"projects/milestone-detail-page\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route\n path=\"projects/milestone-detail-page/:id\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route path=\"projects/planning-page\" element={<ProjectsPlanningPagePage />} />\n <Route path=\"projects/planning-detail-page\" element={<ProjectsPlanningDetailPagePage />} />\n <Route\n path=\"projects/planning-detail-page/:id\"\n element={<ProjectsPlanningDetailPagePage />}\n />\n <Route path=\"projects/planning-edit-page\" element={<ProjectsPlanningEditPagePage />} />\n <Route path=\"projects/planning-edit-page/:id\" element={<ProjectsPlanningEditPagePage />} />\n <Route path=\"projects/budgets-page\" element={<ProjectsBudgetsPagePage />} />\n <Route path=\"projects/budget-detail-page\" element={<ProjectsBudgetDetailPagePage />} />\n <Route path=\"projects/budget-detail-page/:id\" element={<ProjectsBudgetDetailPagePage />} />\n {/* Critical path (BOFF-8047): CPM over WorkItemDependency, scoped to a project. */}\n <Route path=\"projects/critical-path-page\" element={<ProjectsCriticalPathPagePage />} />\n <Route path=\"projects/critical-path-page/:id\" element={<ProjectsCriticalPathPagePage />} />\n {/* Gantt (ANR-24): timeline over the same WorkItemDependency graph, scoped to a project. */}\n <Route path=\"projects/gantt-page\" element={<ProjectsGanttPagePage />} />\n <Route path=\"projects/gantt-page/:id\" element={<ProjectsGanttPagePage />} />\n {/* Quality gates (GAP-02): workspace-wide browse/create/edit/review, linked from a project's detail page. */}\n <Route path=\"projects/quality-gates-page\" element={<ProjectsQualityGatesPagePage />} />\n {/* Goals (OKRs, BOFF-4441) */}\n <Route path=\"goals/goals-page\" element={<GoalsGoalsPagePage />} />\n <Route path=\"goals/create-objective-page\" element={<GoalsCreateObjectivePagePage />} />\n <Route path=\"goals/objective-detail-page\" element={<GoalsObjectiveDetailPagePage />} />\n {/* Tasks */}\n {/* My Work (BOFF-8048) and My dashboard (ANR-08): before tasks-page so their route targets are easy to\n find here. */}\n <Route path=\"tasks/my-work-page\" element={<TasksMyWorkPagePage />} />\n <Route path=\"tasks/my-dashboard-page\" element={<TasksMyDashboardPagePage />} />\n <Route path=\"tasks/tasks-page\" element={<TasksTasksPagePage />} />\n <Route path=\"tasks/create-task-page\" element={<TasksCreateTaskPagePage />} />\n <Route path=\"tasks/edit-task-page\" element={<TasksEditTaskPagePage />} />\n <Route path=\"tasks/task-detail-page\" element={<TasksTaskDetailPagePage />} />\n <Route path=\"tasks/import-page\" element={<TasksImportPagePage />} />\n <Route path=\"tasks/time-entries-page\" element={<TasksTimeEntriesPagePage />} />\n <Route path=\"tasks/timesheets-page\" element={<TasksTimesheetsPagePage />} />\n <Route path=\"tasks/timesheet-detail-page\" element={<TasksTimesheetDetailPagePage />} />\n <Route path=\"tasks/timesheet-detail-page/:id\" element={<TasksTimesheetDetailPagePage />} />\n {/* Sprints */}\n <Route path=\"sprints/start-sprint-page\" element={<SprintsStartSprintPagePage />} />\n\n <Route path=\"docs/docs-page\" element={<DocsDocsPagePage />} />\n <Route path=\"docs/doc-detail-page\" element={<DocsDocDetailPagePage />} />\n {/* Reports (ANR-13/14/15/16/17) */}\n <Route path=\"reports/reports-page\" element={<ReportsReportsPagePage />} />\n <Route path=\"reports/create-report-page\" element={<ReportsCreateReportPagePage />} />\n <Route path=\"reports/edit-report-page\" element={<ReportsEditReportPagePage />} />\n <Route path=\"reports/edit-report-page/:id\" element={<ReportsEditReportPagePage />} />\n <Route path=\"reports/report-page\" element={<ReportsReportPagePage />} />\n <Route path=\"reports/report-page/:id\" element={<ReportsReportPagePage />} />\n {/* Team */}\n <Route path=\"team/team-page\" element={<TeamTeamPagePage />} />\n <Route path=\"team/teams-page\" element={<TeamTeamsListPagePage />} />\n <Route path=\"team/team-detail-page\" element={<TeamTeamDetailPagePage />} />\n <Route path=\"team/team-detail-page/:id\" element={<TeamTeamDetailPagePage />} />\n <Route path=\"team/team-edit-page\" element={<TeamTeamEditPagePage />} />\n <Route path=\"team/team-edit-page/:id\" element={<TeamTeamEditPagePage />} />\n <Route path=\"team/create-team-page\" element={<TeamCreateTeamPagePage />} />\n <Route path=\"team/invite-member-page\" element={<TeamInviteMemberPagePage />} />\n {/* Workspace */}\n <Route\n path=\"workspace/create-workspace-page\"\n element={<WorkspaceCreateWorkspacePagePage />}\n />\n {/* Automation rules (BOFF-8047) */}\n <Route\n path=\"automation/automation-rules-page\"\n element={<AutomationAutomationRulesPagePage />}\n />\n <Route\n path=\"automation/create-automation-rule-page\"\n element={<AutomationCreateAutomationRulePagePage />}\n />\n <Route\n path=\"automation/automation-rule-detail-page\"\n element={<AutomationAutomationRuleDetailPagePage />}\n />\n <Route\n path=\"automation/automation-rule-detail-page/:id\"\n element={<AutomationAutomationRuleDetailPagePage />}\n />\n {/* Project templates (BOFF-8047) */}\n <Route path=\"templates/templates-page\" element={<TemplatesTemplatesPagePage />} />\n <Route path=\"templates/edit-template-page\" element={<TemplatesEditTemplatePagePage />} />\n <Route\n path=\"templates/edit-template-page/:id\"\n element={<TemplatesEditTemplatePagePage />}\n />\n {/* Risks (BOFF-8047) */}\n <Route path=\"risks/risk-register-page\" element={<RisksRiskRegisterPagePage />} />\n <Route path=\"risks/risk-detail-page\" element={<RisksRiskDetailPagePage />} />\n <Route path=\"risks/risk-detail-page/:id\" element={<RisksRiskDetailPagePage />} />\n {/* Analytics */}\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n {/* AI breakdown + activity (AI-05, AI-24) */}\n <Route path=\"ai/plan-page\" element={<AiPlanPagePage />} />\n <Route path=\"ai/activity-page\" element={<AiActivityPagePage />} />\n {/* Workspace activity feed (CWF-09) */}\n <Route path=\"activity/activity-page\" element={<ActivityActivityPagePage />} />\n {/* Role dashboards (ANR-06, ANR-07, ANR-28, CWF-31) */}\n <Route path=\"dashboards/executive-page\" element={<DashboardsExecutivePagePage />} />\n <Route\n path=\"dashboards/project-manager-page\"\n element={<DashboardsProjectManagerPagePage />}\n />\n <Route\n path=\"dashboards/team-utilization-page\"\n element={<DashboardsTeamUtilizationPagePage />}\n />\n <Route path=\"dashboards/leadership-page\" element={<DashboardsLeadershipPagePage />} />\n {/* Integrations (sync — AUT-06/08/09/10/24/40) */}\n <Route path=\"integrations/syncs-page\" element={<IntegrationsSyncsPagePage />} />\n <Route path=\"integrations/new-sync-page\" element={<IntegrationsNewSyncPagePage />} />\n <Route\n path=\"integrations/sync-detail-page/:id\"\n element={<IntegrationsSyncDetailPagePage />}\n />\n {/* 404 — a real page, not a redirect to the same URL (H5) */}\n <Route path=\"*\" element={<PlanMagnetNotFoundPage />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlanMagnetRoutes.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Route, Routes } from 'react-router';\nimport { Loader2 } from 'lucide-react';\nimport { AnalyticsAnalyticsPagePage } from './pages/AnalyticsAnalyticsPagePage';\n\nconst PlanMagnetNotFoundPage = lazy(() =>\n import('./pages/NotFoundPage').then((m) => ({ default: m.PlanMagnetNotFoundPage }))\n);\nconst DocsDocsPagePage = lazy(() =>\n import('./pages/DocsDocsPagePage').then((m) => ({ default: m.DocsDocsPagePage }))\n);\nconst DocsDocDetailPagePage = lazy(() =>\n import('./pages/DocsDocDetailPagePage').then((m) => ({ default: m.DocsDocDetailPagePage }))\n);\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst ProductsCreateProductPagePage = lazy(() =>\n import('./pages/ProductsCreateProductPagePage').then((m) => ({\n default: m.ProductsCreateProductPagePage,\n }))\n);\nconst ProductsCreateRoadmapPagePage = lazy(() =>\n import('./pages/ProductsCreateRoadmapPagePage').then((m) => ({\n default: m.ProductsCreateRoadmapPagePage,\n }))\n);\nconst ProductsEditProductPagePage = lazy(() =>\n import('./pages/ProductsEditProductPagePage').then((m) => ({\n default: m.ProductsEditProductPagePage,\n }))\n);\nconst ProductsEditRoadmapPagePage = lazy(() =>\n import('./pages/ProductsEditRoadmapPagePage').then((m) => ({\n default: m.ProductsEditRoadmapPagePage,\n }))\n);\nconst ProductsEditReleasePagePage = lazy(() =>\n import('./pages/ProductsEditReleasePagePage').then((m) => ({\n default: m.ProductsEditReleasePagePage,\n }))\n);\nconst ProductsFeatureAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsFeatureAnalyticsPagePage').then((m) => ({\n default: m.ProductsFeatureAnalyticsPagePage,\n }))\n);\nconst ProductsFeatureDetailPagePage = lazy(() =>\n import('./pages/ProductsFeatureDetailPagePage').then((m) => ({\n default: m.ProductsFeatureDetailPagePage,\n }))\n);\nconst ProductsFeaturesPagePage = lazy(() =>\n import('./pages/ProductsFeaturesPagePage').then((m) => ({ default: m.ProductsFeaturesPagePage }))\n);\nconst ProductsNewFeaturePagePage = lazy(() =>\n import('./pages/ProductsNewFeaturePagePage').then((m) => ({\n default: m.ProductsNewFeaturePagePage,\n }))\n);\nconst ProductsProductDetailPagePage = lazy(() =>\n import('./pages/ProductsProductDetailPagePage').then((m) => ({\n default: m.ProductsProductDetailPagePage,\n }))\n);\nconst ProductsProductsPagePage = lazy(() =>\n import('./pages/ProductsProductsPagePage').then((m) => ({ default: m.ProductsProductsPagePage }))\n);\nconst ProductsReleaseDetailPagePage = lazy(() =>\n import('./pages/ProductsReleaseDetailPagePage').then((m) => ({\n default: m.ProductsReleaseDetailPagePage,\n }))\n);\nconst ProductsReleasesPagePage = lazy(() =>\n import('./pages/ProductsReleasesPagePage').then((m) => ({ default: m.ProductsReleasesPagePage }))\n);\nconst ProductsRoadmapAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapAnalyticsPagePage').then((m) => ({\n default: m.ProductsRoadmapAnalyticsPagePage,\n }))\n);\nconst ProductsRoadmapDetailPagePage = lazy(() =>\n import('./pages/ProductsRoadmapDetailPagePage').then((m) => ({\n default: m.ProductsRoadmapDetailPagePage,\n }))\n);\nconst ProductsRoadmapsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapsPagePage').then((m) => ({ default: m.ProductsRoadmapsPagePage }))\n);\nconst PortfoliosPortfoliosPagePage = lazy(() =>\n import('./pages/PortfoliosPortfoliosPagePage').then((m) => ({\n default: m.PortfoliosPortfoliosPagePage,\n }))\n);\nconst PortfoliosCreatePortfolioPagePage = lazy(() =>\n import('./pages/PortfoliosCreatePortfolioPagePage').then((m) => ({\n default: m.PortfoliosCreatePortfolioPagePage,\n }))\n);\nconst PortfoliosPortfolioDetailPagePage = lazy(() =>\n import('./pages/PortfoliosPortfolioDetailPagePage').then((m) => ({\n default: m.PortfoliosPortfolioDetailPagePage,\n }))\n);\nconst PortfoliosEditPortfolioPagePage = lazy(() =>\n import('./pages/PortfoliosEditPortfolioPagePage').then((m) => ({\n default: m.PortfoliosEditPortfolioPagePage,\n }))\n);\nconst ProgramsProgramsPagePage = lazy(() =>\n import('./pages/ProgramsProgramsPagePage').then((m) => ({ default: m.ProgramsProgramsPagePage }))\n);\nconst ProgramsCreateProgramPagePage = lazy(() =>\n import('./pages/ProgramsCreateProgramPagePage').then((m) => ({\n default: m.ProgramsCreateProgramPagePage,\n }))\n);\nconst ProgramsProgramDetailPagePage = lazy(() =>\n import('./pages/ProgramsProgramDetailPagePage').then((m) => ({\n default: m.ProgramsProgramDetailPagePage,\n }))\n);\nconst ProgramsEditProgramPagePage = lazy(() =>\n import('./pages/ProgramsEditProgramPagePage').then((m) => ({\n default: m.ProgramsEditProgramPagePage,\n }))\n);\nconst CompetitorsCompetitorsPagePage = lazy(() =>\n import('./pages/CompetitorsCompetitorsPagePage').then((m) => ({\n default: m.CompetitorsCompetitorsPagePage,\n }))\n);\nconst CompetitorsCreateCompetitorPagePage = lazy(() =>\n import('./pages/CompetitorsCreateCompetitorPagePage').then((m) => ({\n default: m.CompetitorsCreateCompetitorPagePage,\n }))\n);\nconst CompetitorsCompetitorDetailPagePage = lazy(() =>\n import('./pages/CompetitorsCompetitorDetailPagePage').then((m) => ({\n default: m.CompetitorsCompetitorDetailPagePage,\n }))\n);\nconst CompetitorsEditCompetitorPagePage = lazy(() =>\n import('./pages/CompetitorsEditCompetitorPagePage').then((m) => ({\n default: m.CompetitorsEditCompetitorPagePage,\n }))\n);\n// Prioritization (PRM-27): MoSCoW/Kano/Value-vs-Effort over feature requests or roadmap initiatives.\nconst ProductsPrioritizationPagePage = lazy(() =>\n import('./pages/ProductsPrioritizationPagePage').then((m) => ({\n default: m.ProductsPrioritizationPagePage,\n }))\n);\nconst ProjectsActiveProjectsPagePage = lazy(() =>\n import('./pages/ProjectsActiveProjectsPagePage').then((m) => ({\n default: m.ProjectsActiveProjectsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsEditProjectPagePage = lazy(() =>\n import('./pages/ProjectsEditProjectPagePage').then((m) => ({\n default: m.ProjectsEditProjectPagePage,\n }))\n);\nconst ProjectsMilestoneDetailPagePage = lazy(() =>\n import('./pages/ProjectsMilestoneDetailPagePage').then((m) => ({\n default: m.ProjectsMilestoneDetailPagePage,\n }))\n);\nconst ProjectsBudgetsPagePage = lazy(() =>\n import('./pages/ProjectsBudgetsPagePage').then((m) => ({ default: m.ProjectsBudgetsPagePage }))\n);\nconst ProjectsBudgetDetailPagePage = lazy(() =>\n import('./pages/ProjectsBudgetDetailPagePage').then((m) => ({\n default: m.ProjectsBudgetDetailPagePage,\n }))\n);\nconst TasksTimeEntriesPagePage = lazy(() =>\n import('./pages/TasksTimeEntriesPagePage').then((m) => ({\n default: m.TasksTimeEntriesPagePage,\n }))\n);\nconst TasksTimesheetsPagePage = lazy(() =>\n import('./pages/TasksTimesheetsPagePage').then((m) => ({\n default: m.TasksTimesheetsPagePage,\n }))\n);\nconst TasksTimesheetDetailPagePage = lazy(() =>\n import('./pages/TasksTimesheetDetailPagePage').then((m) => ({\n default: m.TasksTimesheetDetailPagePage,\n }))\n);\nconst GoalsGoalsPagePage = lazy(() =>\n import('./pages/GoalsGoalsPagePage').then((m) => ({ default: m.GoalsGoalsPagePage }))\n);\nconst GoalsCreateObjectivePagePage = lazy(() =>\n import('./pages/GoalsCreateObjectivePagePage').then((m) => ({\n default: m.GoalsCreateObjectivePagePage,\n }))\n);\nconst GoalsObjectiveDetailPagePage = lazy(() =>\n import('./pages/GoalsObjectiveDetailPagePage').then((m) => ({\n default: m.GoalsObjectiveDetailPagePage,\n }))\n);\nconst ProjectsMilestonesPagePage = lazy(() =>\n import('./pages/ProjectsMilestonesPagePage').then((m) => ({\n default: m.ProjectsMilestonesPagePage,\n }))\n);\nconst ProjectsPlanningDetailPagePage = lazy(() =>\n import('./pages/ProjectsPlanningDetailPagePage').then((m) => ({\n default: m.ProjectsPlanningDetailPagePage,\n }))\n);\nconst ProjectsPlanningEditPagePage = lazy(() =>\n import('./pages/ProjectsPlanningEditPagePage').then((m) => ({\n default: m.ProjectsPlanningEditPagePage,\n }))\n);\nconst ProjectsPlanningPagePage = lazy(() =>\n import('./pages/ProjectsPlanningPagePage').then((m) => ({ default: m.ProjectsPlanningPagePage }))\n);\nconst ProjectsProjectDetailPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailPagePage').then((m) => ({\n default: m.ProjectsProjectDetailPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst ReportsCreateReportPagePage = lazy(() =>\n import('./pages/ReportsCreateReportPagePage').then((m) => ({\n default: m.ReportsCreateReportPagePage,\n }))\n);\nconst ReportsReportsPagePage = lazy(() =>\n import('./pages/ReportsReportsPagePage').then((m) => ({ default: m.ReportsReportsPagePage }))\n);\nconst ReportsEditReportPagePage = lazy(() =>\n import('./pages/ReportsEditReportPagePage').then((m) => ({\n default: m.ReportsEditReportPagePage,\n }))\n);\nconst ReportsReportPagePage = lazy(() =>\n import('./pages/ReportsReportPagePage').then((m) => ({ default: m.ReportsReportPagePage }))\n);\nconst SprintsStartSprintPagePage = lazy(() =>\n import('./pages/SprintsStartSprintPagePage').then((m) => ({\n default: m.SprintsStartSprintPagePage,\n }))\n);\nconst TasksCreateTaskPagePage = lazy(() =>\n import('./pages/TasksCreateTaskPagePage').then((m) => ({ default: m.TasksCreateTaskPagePage }))\n);\nconst TasksEditTaskPagePage = lazy(() =>\n import('./pages/TasksEditTaskPagePage').then((m) => ({ default: m.TasksEditTaskPagePage }))\n);\nconst ProjectsWorkflowPagePage = lazy(() =>\n import('./pages/ProjectsWorkflowPagePage').then((m) => ({ default: m.ProjectsWorkflowPagePage }))\n);\nconst ProjectsCustomFieldsPagePage = lazy(() =>\n import('./pages/ProjectsCustomFieldsPagePage').then((m) => ({\n default: m.ProjectsCustomFieldsPagePage,\n }))\n);\nconst TasksImportPagePage = lazy(() =>\n import('./pages/TasksImportPagePage').then((m) => ({ default: m.TasksImportPagePage }))\n);\nconst TasksTaskDetailPagePage = lazy(() =>\n import('./pages/TasksTaskDetailPagePage').then((m) => ({ default: m.TasksTaskDetailPagePage }))\n);\nconst TasksTasksPagePage = lazy(() =>\n import('./pages/TasksTasksPagePage').then((m) => ({ default: m.TasksTasksPagePage }))\n);\n// My Work (BOFF-8048)\nconst TasksMyWorkPagePage = lazy(() =>\n import('./pages/TasksMyWorkPagePage').then((m) => ({ default: m.TasksMyWorkPagePage }))\n);\n// My dashboard (ANR-08): my time allocation, my delivery trend, my goals.\nconst TasksMyDashboardPagePage = lazy(() =>\n import('./pages/TasksMyDashboardPagePage').then((m) => ({\n default: m.TasksMyDashboardPagePage,\n }))\n);\nconst TeamCreateTeamPagePage = lazy(() =>\n import('./pages/TeamCreateTeamPagePage').then((m) => ({ default: m.TeamCreateTeamPagePage }))\n);\nconst TeamInviteMemberPagePage = lazy(() =>\n import('./pages/TeamInviteMemberPagePage').then((m) => ({ default: m.TeamInviteMemberPagePage }))\n);\nconst TeamTeamPagePage = lazy(() =>\n import('./pages/TeamTeamPagePage').then((m) => ({ default: m.TeamTeamPagePage }))\n);\nconst TeamTeamsListPagePage = lazy(() =>\n import('./pages/TeamTeamsListPagePage').then((m) => ({ default: m.TeamTeamsListPagePage }))\n);\nconst TeamTeamDetailPagePage = lazy(() =>\n import('./pages/TeamTeamDetailPagePage').then((m) => ({ default: m.TeamTeamDetailPagePage }))\n);\nconst TeamTeamEditPagePage = lazy(() =>\n import('./pages/TeamTeamEditPagePage').then((m) => ({ default: m.TeamTeamEditPagePage }))\n);\nconst WorkspaceCreateWorkspacePagePage = lazy(() =>\n import('./pages/WorkspaceCreateWorkspacePagePage').then((m) => ({\n default: m.WorkspaceCreateWorkspacePagePage,\n }))\n);\n// BOFF-8047: Automation rules and Project templates\nconst AutomationAutomationRulesPagePage = lazy(() =>\n import('./pages/AutomationAutomationRulesPagePage').then((m) => ({\n default: m.AutomationAutomationRulesPagePage,\n }))\n);\nconst AutomationCreateAutomationRulePagePage = lazy(() =>\n import('./pages/AutomationCreateAutomationRulePagePage').then((m) => ({\n default: m.AutomationCreateAutomationRulePagePage,\n }))\n);\nconst AutomationAutomationRuleDetailPagePage = lazy(() =>\n import('./pages/AutomationAutomationRuleDetailPagePage').then((m) => ({\n default: m.AutomationAutomationRuleDetailPagePage,\n }))\n);\nconst TemplatesTemplatesPagePage = lazy(() =>\n import('./pages/TemplatesTemplatesPagePage').then((m) => ({\n default: m.TemplatesTemplatesPagePage,\n }))\n);\nconst TemplatesEditTemplatePagePage = lazy(() =>\n import('./pages/TemplatesEditTemplatePagePage').then((m) => ({\n default: m.TemplatesEditTemplatePagePage,\n }))\n);\nconst RisksRiskRegisterPagePage = lazy(() =>\n import('./pages/RisksRiskRegisterPagePage').then((m) => ({\n default: m.RisksRiskRegisterPagePage,\n }))\n);\nconst RisksRiskDetailPagePage = lazy(() =>\n import('./pages/RisksRiskDetailPagePage').then((m) => ({ default: m.RisksRiskDetailPagePage }))\n);\nconst ProjectsCriticalPathPagePage = lazy(() =>\n import('./pages/ProjectsCriticalPathPagePage').then((m) => ({\n default: m.ProjectsCriticalPathPagePage,\n }))\n);\n// Gantt timeline (ANR-24)\nconst ProjectsGanttPagePage = lazy(() =>\n import('./pages/ProjectsGanttPagePage').then((m) => ({ default: m.ProjectsGanttPagePage }))\n);\n// Quality gates (GAP-02)\nconst ProjectsQualityGatesPagePage = lazy(() =>\n import('./pages/ProjectsQualityGatesPagePage').then((m) => ({\n default: m.ProjectsQualityGatesPagePage,\n }))\n);\n// At-risk work (AI-10)\nconst ProjectsAtRiskPagePage = lazy(() =>\n import('./pages/ProjectsAtRiskPagePage').then((m) => ({ default: m.ProjectsAtRiskPagePage }))\n);\n// AI breakdown + activity (AI-05, AI-24)\nconst AiPlanPagePage = lazy(() =>\n import('./pages/AiPlanPagePage').then((m) => ({ default: m.AiPlanPagePage }))\n);\nconst AiActivityPagePage = lazy(() =>\n import('./pages/AiActivityPagePage').then((m) => ({ default: m.AiActivityPagePage }))\n);\n// Workspace activity feed (CWF-09)\nconst ActivityActivityPagePage = lazy(() =>\n import('./pages/ActivityActivityPagePage').then((m) => ({\n default: m.ActivityActivityPagePage,\n }))\n);\n\n// Role dashboards (ANR-06, ANR-07, ANR-28, CWF-31): composed from existing queries, no new backend.\nconst DashboardsExecutivePagePage = lazy(() =>\n import('./pages/DashboardsExecutivePagePage').then((m) => ({\n default: m.DashboardsExecutivePagePage,\n }))\n);\nconst DashboardsProjectManagerPagePage = lazy(() =>\n import('./pages/DashboardsProjectManagerPagePage').then((m) => ({\n default: m.DashboardsProjectManagerPagePage,\n }))\n);\nconst DashboardsTeamUtilizationPagePage = lazy(() =>\n import('./pages/DashboardsTeamUtilizationPagePage').then((m) => ({\n default: m.DashboardsTeamUtilizationPagePage,\n }))\n);\nconst DashboardsLeadershipPagePage = lazy(() =>\n import('./pages/DashboardsLeadershipPagePage').then((m) => ({\n default: m.DashboardsLeadershipPagePage,\n }))\n);\n\n// Integrations (sync — AUT-06/08/09/10/24/40)\nconst IntegrationsSyncsPagePage = lazy(() =>\n import('./pages/IntegrationsSyncsPagePage').then((m) => ({\n default: m.IntegrationsSyncsPagePage,\n }))\n);\nconst IntegrationsNewSyncPagePage = lazy(() =>\n import('./pages/IntegrationsNewSyncPagePage').then((m) => ({\n default: m.IntegrationsNewSyncPagePage,\n }))\n);\nconst IntegrationsSyncDetailPagePage = lazy(() =>\n import('./pages/IntegrationsSyncDetailPagePage').then((m) => ({\n default: m.IntegrationsSyncDetailPagePage,\n }))\n);\n\n// Meetings (GAP-06, CWF-22/23)\nconst MeetingsMeetingsPagePage = lazy(() =>\n import('./pages/MeetingsMeetingsPagePage').then((m) => ({\n default: m.MeetingsMeetingsPagePage,\n }))\n);\nconst MeetingsMeetingDetailPagePage = lazy(() =>\n import('./pages/MeetingsMeetingDetailPagePage').then((m) => ({\n default: m.MeetingsMeetingDetailPagePage,\n }))\n);\n\n// Phase 2 new pages\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function PlanMagnetRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<DashboardDashboardPagePage />} />\n {/* Dashboard */}\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n {/* Products */}\n {/*\n The detail/edit/analytics pages below read their record id with\n useParams<{ id: string }>(). Each therefore needs a \":id\" segment — without one the\n id is permanently undefined and the page can never load a record, however it is\n reached. The bare paths are kept alongside so previously-bookmarked URLs still\n resolve rather than falling through to the catch-all redirect.\n */}\n <Route path=\"products/products-page\" element={<ProductsProductsPagePage />} />\n <Route path=\"products/create-product-page\" element={<ProductsCreateProductPagePage />} />\n <Route path=\"products/edit-product-page\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/edit-product-page/:id\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/product-detail-page\" element={<ProductsProductDetailPagePage />} />\n <Route\n path=\"products/product-detail-page/:id\"\n element={<ProductsProductDetailPagePage />}\n />\n <Route path=\"products/features-page\" element={<ProductsFeaturesPagePage />} />\n <Route path=\"products/new-feature-page\" element={<ProductsNewFeaturePagePage />} />\n <Route path=\"products/feature-detail-page\" element={<ProductsFeatureDetailPagePage />} />\n <Route\n path=\"products/feature-detail-page/:id\"\n element={<ProductsFeatureDetailPagePage />}\n />\n <Route\n path=\"products/feature-analytics-page\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route\n path=\"products/feature-analytics-page/:id\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route path=\"products/releases-page\" element={<ProductsReleasesPagePage />} />\n <Route path=\"products/release-detail-page\" element={<ProductsReleaseDetailPagePage />} />\n <Route\n path=\"products/release-detail-page/:id\"\n element={<ProductsReleaseDetailPagePage />}\n />\n <Route path=\"products/edit-release-page\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/edit-release-page/:id\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/roadmaps-page\" element={<ProductsRoadmapsPagePage />} />\n <Route path=\"products/roadmap-detail-page\" element={<ProductsRoadmapDetailPagePage />} />\n <Route\n path=\"products/roadmap-detail-page/:id\"\n element={<ProductsRoadmapDetailPagePage />}\n />\n <Route path=\"products/create-roadmap-page\" element={<ProductsCreateRoadmapPagePage />} />\n {/* BOFF-8045: roadmap editing's own home, split out of edit-product-page now that\n edit-product-page edits a real Product. */}\n <Route path=\"products/edit-roadmap-page\" element={<ProductsEditRoadmapPagePage />} />\n <Route path=\"products/edit-roadmap-page/:id\" element={<ProductsEditRoadmapPagePage />} />\n <Route\n path=\"products/roadmap-analytics-page\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n <Route\n path=\"products/roadmap-analytics-page/:id\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n {/* Portfolios (BOFF-8047) */}\n <Route path=\"products/portfolios-page\" element={<PortfoliosPortfoliosPagePage />} />\n <Route\n path=\"products/create-portfolio-page\"\n element={<PortfoliosCreatePortfolioPagePage />}\n />\n <Route\n path=\"products/portfolio-detail-page/:id\"\n element={<PortfoliosPortfolioDetailPagePage />}\n />\n <Route\n path=\"products/edit-portfolio-page/:id\"\n element={<PortfoliosEditPortfolioPagePage />}\n />\n {/* Programs (BOFF-8047) */}\n <Route path=\"products/programs-page\" element={<ProgramsProgramsPagePage />} />\n <Route path=\"products/create-program-page\" element={<ProgramsCreateProgramPagePage />} />\n <Route\n path=\"products/program-detail-page/:id\"\n element={<ProgramsProgramDetailPagePage />}\n />\n <Route path=\"products/edit-program-page/:id\" element={<ProgramsEditProgramPagePage />} />\n {/* Competitors (BOFF-8047) */}\n <Route path=\"products/competitors-page\" element={<CompetitorsCompetitorsPagePage />} />\n <Route\n path=\"products/create-competitor-page\"\n element={<CompetitorsCreateCompetitorPagePage />}\n />\n <Route\n path=\"products/competitor-detail-page/:id\"\n element={<CompetitorsCompetitorDetailPagePage />}\n />\n <Route\n path=\"products/edit-competitor-page/:id\"\n element={<CompetitorsEditCompetitorPagePage />}\n />\n {/* Prioritization (PRM-27) */}\n <Route path=\"products/prioritization-page\" element={<ProductsPrioritizationPagePage />} />\n {/* Projects */}\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/active-projects-page\" element={<ProjectsActiveProjectsPagePage />} />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/edit-project-page\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/edit-project-page/:id\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/project-detail-page\" element={<ProjectsProjectDetailPagePage />} />\n <Route\n path=\"projects/project-detail-page/:id\"\n element={<ProjectsProjectDetailPagePage />}\n />\n <Route path=\"projects/project-workflow-page/:id\" element={<ProjectsWorkflowPagePage />} />\n <Route\n path=\"projects/project-custom-fields-page/:id\"\n element={<ProjectsCustomFieldsPagePage />}\n />\n <Route path=\"projects/milestones-page\" element={<ProjectsMilestonesPagePage />} />\n <Route\n path=\"projects/milestone-detail-page\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route\n path=\"projects/milestone-detail-page/:id\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route path=\"projects/planning-page\" element={<ProjectsPlanningPagePage />} />\n <Route path=\"projects/planning-detail-page\" element={<ProjectsPlanningDetailPagePage />} />\n <Route\n path=\"projects/planning-detail-page/:id\"\n element={<ProjectsPlanningDetailPagePage />}\n />\n <Route path=\"projects/planning-edit-page\" element={<ProjectsPlanningEditPagePage />} />\n <Route path=\"projects/planning-edit-page/:id\" element={<ProjectsPlanningEditPagePage />} />\n <Route path=\"projects/budgets-page\" element={<ProjectsBudgetsPagePage />} />\n <Route path=\"projects/budget-detail-page\" element={<ProjectsBudgetDetailPagePage />} />\n <Route path=\"projects/budget-detail-page/:id\" element={<ProjectsBudgetDetailPagePage />} />\n {/* Critical path (BOFF-8047): CPM over WorkItemDependency, scoped to a project. */}\n <Route path=\"projects/critical-path-page\" element={<ProjectsCriticalPathPagePage />} />\n <Route path=\"projects/critical-path-page/:id\" element={<ProjectsCriticalPathPagePage />} />\n {/* Gantt (ANR-24): timeline over the same WorkItemDependency graph, scoped to a project. */}\n <Route path=\"projects/gantt-page\" element={<ProjectsGanttPagePage />} />\n <Route path=\"projects/gantt-page/:id\" element={<ProjectsGanttPagePage />} />\n {/* Quality gates (GAP-02): workspace-wide browse/create/edit/review, linked from a project's detail page. */}\n <Route path=\"projects/quality-gates-page\" element={<ProjectsQualityGatesPagePage />} />\n {/* At-risk work (AI-10): flagged open items for a project, optionally narrowed to a sprint. */}\n <Route path=\"projects/at-risk-page\" element={<ProjectsAtRiskPagePage />} />\n {/* Goals (OKRs, BOFF-4441) */}\n <Route path=\"goals/goals-page\" element={<GoalsGoalsPagePage />} />\n <Route path=\"goals/create-objective-page\" element={<GoalsCreateObjectivePagePage />} />\n <Route path=\"goals/objective-detail-page\" element={<GoalsObjectiveDetailPagePage />} />\n {/* Tasks */}\n {/* My Work (BOFF-8048) and My dashboard (ANR-08): before tasks-page so their route targets are easy to\n find here. */}\n <Route path=\"tasks/my-work-page\" element={<TasksMyWorkPagePage />} />\n <Route path=\"tasks/my-dashboard-page\" element={<TasksMyDashboardPagePage />} />\n <Route path=\"tasks/tasks-page\" element={<TasksTasksPagePage />} />\n <Route path=\"tasks/create-task-page\" element={<TasksCreateTaskPagePage />} />\n <Route path=\"tasks/edit-task-page\" element={<TasksEditTaskPagePage />} />\n <Route path=\"tasks/task-detail-page\" element={<TasksTaskDetailPagePage />} />\n <Route path=\"tasks/import-page\" element={<TasksImportPagePage />} />\n <Route path=\"tasks/time-entries-page\" element={<TasksTimeEntriesPagePage />} />\n <Route path=\"tasks/timesheets-page\" element={<TasksTimesheetsPagePage />} />\n <Route path=\"tasks/timesheet-detail-page\" element={<TasksTimesheetDetailPagePage />} />\n <Route path=\"tasks/timesheet-detail-page/:id\" element={<TasksTimesheetDetailPagePage />} />\n {/* Sprints */}\n <Route path=\"sprints/start-sprint-page\" element={<SprintsStartSprintPagePage />} />\n {/* Meetings (GAP-06, CWF-22/23) */}\n <Route path=\"meetings/meetings-page\" element={<MeetingsMeetingsPagePage />} />\n <Route path=\"meetings/meeting-detail-page\" element={<MeetingsMeetingDetailPagePage />} />\n <Route\n path=\"meetings/meeting-detail-page/:id\"\n element={<MeetingsMeetingDetailPagePage />}\n />\n\n <Route path=\"docs/docs-page\" element={<DocsDocsPagePage />} />\n <Route path=\"docs/doc-detail-page\" element={<DocsDocDetailPagePage />} />\n {/* Reports (ANR-13/14/15/16/17) */}\n <Route path=\"reports/reports-page\" element={<ReportsReportsPagePage />} />\n <Route path=\"reports/create-report-page\" element={<ReportsCreateReportPagePage />} />\n <Route path=\"reports/edit-report-page\" element={<ReportsEditReportPagePage />} />\n <Route path=\"reports/edit-report-page/:id\" element={<ReportsEditReportPagePage />} />\n <Route path=\"reports/report-page\" element={<ReportsReportPagePage />} />\n <Route path=\"reports/report-page/:id\" element={<ReportsReportPagePage />} />\n {/* Team */}\n <Route path=\"team/team-page\" element={<TeamTeamPagePage />} />\n <Route path=\"team/teams-page\" element={<TeamTeamsListPagePage />} />\n <Route path=\"team/team-detail-page\" element={<TeamTeamDetailPagePage />} />\n <Route path=\"team/team-detail-page/:id\" element={<TeamTeamDetailPagePage />} />\n <Route path=\"team/team-edit-page\" element={<TeamTeamEditPagePage />} />\n <Route path=\"team/team-edit-page/:id\" element={<TeamTeamEditPagePage />} />\n <Route path=\"team/create-team-page\" element={<TeamCreateTeamPagePage />} />\n <Route path=\"team/invite-member-page\" element={<TeamInviteMemberPagePage />} />\n {/* Workspace */}\n <Route\n path=\"workspace/create-workspace-page\"\n element={<WorkspaceCreateWorkspacePagePage />}\n />\n {/* Automation rules (BOFF-8047) */}\n <Route\n path=\"automation/automation-rules-page\"\n element={<AutomationAutomationRulesPagePage />}\n />\n <Route\n path=\"automation/create-automation-rule-page\"\n element={<AutomationCreateAutomationRulePagePage />}\n />\n <Route\n path=\"automation/automation-rule-detail-page\"\n element={<AutomationAutomationRuleDetailPagePage />}\n />\n <Route\n path=\"automation/automation-rule-detail-page/:id\"\n element={<AutomationAutomationRuleDetailPagePage />}\n />\n {/* Project templates (BOFF-8047) */}\n <Route path=\"templates/templates-page\" element={<TemplatesTemplatesPagePage />} />\n <Route path=\"templates/edit-template-page\" element={<TemplatesEditTemplatePagePage />} />\n <Route\n path=\"templates/edit-template-page/:id\"\n element={<TemplatesEditTemplatePagePage />}\n />\n {/* Risks (BOFF-8047) */}\n <Route path=\"risks/risk-register-page\" element={<RisksRiskRegisterPagePage />} />\n <Route path=\"risks/risk-detail-page\" element={<RisksRiskDetailPagePage />} />\n <Route path=\"risks/risk-detail-page/:id\" element={<RisksRiskDetailPagePage />} />\n {/* Analytics */}\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n {/* AI breakdown + activity (AI-05, AI-24) */}\n <Route path=\"ai/plan-page\" element={<AiPlanPagePage />} />\n <Route path=\"ai/activity-page\" element={<AiActivityPagePage />} />\n {/* Workspace activity feed (CWF-09) */}\n <Route path=\"activity/activity-page\" element={<ActivityActivityPagePage />} />\n {/* Role dashboards (ANR-06, ANR-07, ANR-28, CWF-31) */}\n <Route path=\"dashboards/executive-page\" element={<DashboardsExecutivePagePage />} />\n <Route\n path=\"dashboards/project-manager-page\"\n element={<DashboardsProjectManagerPagePage />}\n />\n <Route\n path=\"dashboards/team-utilization-page\"\n element={<DashboardsTeamUtilizationPagePage />}\n />\n <Route path=\"dashboards/leadership-page\" element={<DashboardsLeadershipPagePage />} />\n {/* Integrations (sync — AUT-06/08/09/10/24/40) */}\n <Route path=\"integrations/syncs-page\" element={<IntegrationsSyncsPagePage />} />\n <Route path=\"integrations/new-sync-page\" element={<IntegrationsNewSyncPagePage />} />\n <Route\n path=\"integrations/sync-detail-page/:id\"\n element={<IntegrationsSyncDetailPagePage />}\n />\n {/* 404 — a real page, not a redirect to the same URL (H5) */}\n <Route path=\"*\" element={<PlanMagnetNotFoundPage />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { usePlanMagnet as e } from "../providers/PlanMagnetProvider.js";
|
|
2
2
|
import { PersonName as t, usePersonProfile as n } from "../people/People.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { isForbidden as r, mutationErrorMessage as i } from "../utils/graphqlErrors.js";
|
|
4
|
+
import { throwOnError as a } from "../utils/mutationResult.js";
|
|
5
|
+
import { ConfirmButton as o, ErrorLine as s } from "../controls/ConfirmButton.js";
|
|
6
6
|
import { MentionComposer as c, MentionText as l } from "./MentionComposer.js";
|
|
7
7
|
import { TypingLine as u } from "../presence/PresenceAvatars.js";
|
|
8
8
|
import { useEffect as d, useState as f } from "react";
|
|
@@ -12,26 +12,26 @@ import { Fragment as x, jsx as S, jsxs as C } from "react/jsx-runtime";
|
|
|
12
12
|
import { Button as w } from "@burdenoff/fe-libs/ui";
|
|
13
13
|
//#region src/planmagnet/comments/CommentThread.tsx
|
|
14
14
|
var T = 30, E = 1e4, D = (e) => new Date(e).toLocaleString();
|
|
15
|
-
function O({ targetNoun: t, idPrefix: n, query:
|
|
15
|
+
function O({ targetNoun: t, idPrefix: n, query: o, add: l, edit: p, remove: m, resolve: h, refetchQueries: g, onTotalCount: _, presence: v }) {
|
|
16
16
|
let { currentUser: x, workspaceId: D, authToken: O, apiGatewayUrl: A } = e(), [j, M] = f(""), [N, P] = f(null), [F, I] = f(!1), [L, R] = f("ALL"), z = {
|
|
17
17
|
refetchQueries: g,
|
|
18
18
|
awaitRefetchQueries: !0
|
|
19
|
-
}, { data: B, loading: V, error: H, fetchMore: U } = b(
|
|
19
|
+
}, { data: B, loading: V, error: H, fetchMore: U } = b(o.document, {
|
|
20
20
|
variables: {
|
|
21
|
-
...
|
|
21
|
+
...o.variables,
|
|
22
22
|
pagination: { first: T }
|
|
23
23
|
},
|
|
24
|
-
skip:
|
|
25
|
-
}), [ee, W] = y(l.document, z), G = B?.[
|
|
24
|
+
skip: o.skip
|
|
25
|
+
}), [ee, W] = y(l.document, z), G = B?.[o.dataKey], K = G?.items ?? [], q = L === "ALL" ? K : K.filter((e) => e.status === L), J = K.filter((e) => e.status === "OPEN").length, Y = K.length - J, X = j.trim(), Z = X.length > E;
|
|
26
26
|
d(() => {
|
|
27
27
|
G && _?.(G.totalCount);
|
|
28
28
|
}, [G, _]);
|
|
29
29
|
let te = async (e, t) => {
|
|
30
30
|
P(null);
|
|
31
31
|
try {
|
|
32
|
-
return await
|
|
32
|
+
return await a(ee({ variables: l.buildVariables(e, t) })), !0;
|
|
33
33
|
} catch (e) {
|
|
34
|
-
return P(
|
|
34
|
+
return P(r(e) ? "Your role can read but not comment." : i(e, "The comment could not be posted.")), !1;
|
|
35
35
|
}
|
|
36
36
|
}, ne = async () => {
|
|
37
37
|
await te(X, null) && M("");
|
|
@@ -42,15 +42,15 @@ function O({ targetNoun: t, idPrefix: n, query: i, add: l, edit: p, remove: m, r
|
|
|
42
42
|
try {
|
|
43
43
|
await U({
|
|
44
44
|
variables: {
|
|
45
|
-
...
|
|
45
|
+
...o.variables,
|
|
46
46
|
pagination: {
|
|
47
47
|
first: T,
|
|
48
48
|
after: e
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
|
-
updateQuery: (e, { fetchMoreResult: t }) => ({ [
|
|
52
|
-
...t[
|
|
53
|
-
items: [...e[
|
|
51
|
+
updateQuery: (e, { fetchMoreResult: t }) => ({ [o.dataKey]: {
|
|
52
|
+
...t[o.dataKey],
|
|
53
|
+
items: [...e[o.dataKey].items, ...t[o.dataKey].items]
|
|
54
54
|
} })
|
|
55
55
|
});
|
|
56
56
|
} finally {
|
|
@@ -62,12 +62,12 @@ function O({ targetNoun: t, idPrefix: n, query: i, add: l, edit: p, remove: m, r
|
|
|
62
62
|
className: "space-y-4",
|
|
63
63
|
"data-testid": "comment-thread",
|
|
64
64
|
children: [
|
|
65
|
-
N && /* @__PURE__ */ S(
|
|
65
|
+
N && /* @__PURE__ */ S(s, { message: N }),
|
|
66
66
|
V && !B && /* @__PURE__ */ S("p", {
|
|
67
67
|
className: "text-sm text-muted-foreground",
|
|
68
68
|
children: "Loading comments…"
|
|
69
69
|
}),
|
|
70
|
-
H && /* @__PURE__ */ S(
|
|
70
|
+
H && /* @__PURE__ */ S(s, { message: `Comments could not be loaded: ${H.message}` }),
|
|
71
71
|
G && K.length > 0 && /* @__PURE__ */ S("div", {
|
|
72
72
|
role: "group",
|
|
73
73
|
"aria-label": "Filter comments by resolution",
|
|
@@ -139,7 +139,7 @@ function O({ targetNoun: t, idPrefix: n, query: i, add: l, edit: p, remove: m, r
|
|
|
139
139
|
authToken: O,
|
|
140
140
|
apiGatewayUrl: A
|
|
141
141
|
}),
|
|
142
|
-
Z && /* @__PURE__ */ S(
|
|
142
|
+
Z && /* @__PURE__ */ S(s, { message: `A comment can be at most ${E} characters.` }),
|
|
143
143
|
/* @__PURE__ */ S("div", {
|
|
144
144
|
className: "flex justify-end",
|
|
145
145
|
children: /* @__PURE__ */ S(w, {
|
|
@@ -159,29 +159,29 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
159
159
|
let [R, z] = f(!1), [B, V] = f(e.body), [H, U] = f(e.status !== "RESOLVED"), [ee, W] = f(!1), [G, K] = f(""), [q, J] = f(null), Y = n(e.authorId), [X, Z] = y(d, j), [te, ne] = y(b, j), [re, ie] = y(T, j), [ae, oe] = y(O, j), se = e.authorId === u, Q = e.status === "RESOLVED", ce = B.trim().length > E, le = G.trim().length > E, ue = async () => {
|
|
160
160
|
M(null);
|
|
161
161
|
try {
|
|
162
|
-
await
|
|
162
|
+
await a(X({ variables: {
|
|
163
163
|
id: e.id,
|
|
164
164
|
body: B.trim()
|
|
165
165
|
} })), z(!1);
|
|
166
166
|
} catch (e) {
|
|
167
|
-
M(
|
|
167
|
+
M(i(e, "The comment could not be saved."));
|
|
168
168
|
}
|
|
169
169
|
}, de = async () => {
|
|
170
170
|
M(null);
|
|
171
171
|
try {
|
|
172
|
-
await
|
|
172
|
+
await a(te({ variables: { id: e.id } }));
|
|
173
173
|
} catch (e) {
|
|
174
|
-
M(
|
|
174
|
+
M(i(e, "The comment could not be deleted."));
|
|
175
175
|
}
|
|
176
176
|
}, fe = async () => {
|
|
177
177
|
M(null);
|
|
178
178
|
try {
|
|
179
|
-
await
|
|
179
|
+
await a(re({ variables: {
|
|
180
180
|
id: e.id,
|
|
181
181
|
resolved: !Q
|
|
182
182
|
} }));
|
|
183
183
|
} catch (e) {
|
|
184
|
-
M(
|
|
184
|
+
M(r(e) ? "Your role can read but not resolve comments." : i(e, "The resolution could not be changed."));
|
|
185
185
|
}
|
|
186
186
|
}, pe = (e, t, n) => {
|
|
187
187
|
J(e), K(t && n ? `@[${n}](${t}) ` : ""), W(!0), U(!0);
|
|
@@ -190,9 +190,9 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
190
190
|
if (e) {
|
|
191
191
|
M(null);
|
|
192
192
|
try {
|
|
193
|
-
await
|
|
193
|
+
await a(ae({ variables: k(e) })), K(""), W(!1), J(null);
|
|
194
194
|
} catch (e) {
|
|
195
|
-
M(
|
|
195
|
+
M(r(e) ? "Your role can read but not comment." : i(e, "The reply could not be posted."));
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
}, $ = `${N}-comment-${e.id}`;
|
|
@@ -259,7 +259,7 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
259
259
|
className: "h-6 px-2 text-xs",
|
|
260
260
|
onClick: () => z(!0),
|
|
261
261
|
children: "Edit"
|
|
262
|
-
}), /* @__PURE__ */ S(
|
|
262
|
+
}), /* @__PURE__ */ S(o, {
|
|
263
263
|
label: "",
|
|
264
264
|
ariaLabel: "Delete comment",
|
|
265
265
|
variant: "outline",
|
|
@@ -317,7 +317,7 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
317
317
|
authToken: F,
|
|
318
318
|
apiGatewayUrl: I
|
|
319
319
|
}),
|
|
320
|
-
ce && /* @__PURE__ */ S(
|
|
320
|
+
ce && /* @__PURE__ */ S(s, { message: `A comment can be at most ${E} characters.` }),
|
|
321
321
|
/* @__PURE__ */ C("div", {
|
|
322
322
|
className: "flex justify-end gap-2",
|
|
323
323
|
children: [/* @__PURE__ */ S(w, {
|
|
@@ -383,7 +383,7 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
383
383
|
authToken: F,
|
|
384
384
|
apiGatewayUrl: I
|
|
385
385
|
}),
|
|
386
|
-
le && /* @__PURE__ */ S(
|
|
386
|
+
le && /* @__PURE__ */ S(s, { message: `A comment can be at most ${E} characters.` }),
|
|
387
387
|
/* @__PURE__ */ C("div", {
|
|
388
388
|
className: "flex justify-end gap-2",
|
|
389
389
|
children: [/* @__PURE__ */ S(w, {
|
|
@@ -406,23 +406,23 @@ function k({ comment: e, currentUserId: u, editMutation: d, removeMutation: b, r
|
|
|
406
406
|
})
|
|
407
407
|
});
|
|
408
408
|
}
|
|
409
|
-
function A({ reply: e, currentUserId:
|
|
410
|
-
let [O, k] = f(!1), [A, j] = f(e.body), M = n(e.authorId), [N, P] = y(u, p), [F, I] = y(d, p), L = e.authorId ===
|
|
409
|
+
function A({ reply: e, currentUserId: r, editMutation: u, removeMutation: d, mutationRefetch: p, onError: m, idPrefix: h, workspaceId: _, authToken: b, apiGatewayUrl: x, onReply: T }) {
|
|
410
|
+
let [O, k] = f(!1), [A, j] = f(e.body), M = n(e.authorId), [N, P] = y(u, p), [F, I] = y(d, p), L = e.authorId === r, R = A.trim().length > E, z = async () => {
|
|
411
411
|
m(null);
|
|
412
412
|
try {
|
|
413
|
-
await
|
|
413
|
+
await a(N({ variables: {
|
|
414
414
|
id: e.id,
|
|
415
415
|
body: A.trim()
|
|
416
416
|
} })), k(!1);
|
|
417
417
|
} catch (e) {
|
|
418
|
-
m(
|
|
418
|
+
m(i(e, "The reply could not be saved."));
|
|
419
419
|
}
|
|
420
420
|
}, B = async () => {
|
|
421
421
|
m(null);
|
|
422
422
|
try {
|
|
423
|
-
await
|
|
423
|
+
await a(F({ variables: { id: e.id } }));
|
|
424
424
|
} catch (e) {
|
|
425
|
-
m(
|
|
425
|
+
m(i(e, "The reply could not be deleted."));
|
|
426
426
|
}
|
|
427
427
|
};
|
|
428
428
|
return /* @__PURE__ */ C("li", {
|
|
@@ -451,7 +451,7 @@ function A({ reply: e, currentUserId: o, editMutation: u, removeMutation: d, mut
|
|
|
451
451
|
className: "h-6 px-2 text-xs",
|
|
452
452
|
onClick: () => k(!0),
|
|
453
453
|
children: "Edit"
|
|
454
|
-
}), /* @__PURE__ */ S(
|
|
454
|
+
}), /* @__PURE__ */ S(o, {
|
|
455
455
|
label: "",
|
|
456
456
|
ariaLabel: "Delete reply",
|
|
457
457
|
variant: "outline",
|
|
@@ -481,7 +481,7 @@ function A({ reply: e, currentUserId: o, editMutation: u, removeMutation: d, mut
|
|
|
481
481
|
authToken: b,
|
|
482
482
|
apiGatewayUrl: x
|
|
483
483
|
}),
|
|
484
|
-
R && /* @__PURE__ */ S(
|
|
484
|
+
R && /* @__PURE__ */ S(s, { message: `A comment can be at most ${E} characters.` }),
|
|
485
485
|
/* @__PURE__ */ C("div", {
|
|
486
486
|
className: "flex justify-end gap-2",
|
|
487
487
|
children: [/* @__PURE__ */ S(w, {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { usePlanMagnet as e } from "../providers/PlanMagnetProvider.js";
|
|
2
2
|
import { PersonName as t } from "../people/People.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { isForbidden as n, mutationErrorMessage as r } from "../utils/graphqlErrors.js";
|
|
4
|
+
import { throwOnError as i } from "../utils/mutationResult.js";
|
|
5
|
+
import { ConfirmButton as a, ErrorLine as o } from "../controls/ConfirmButton.js";
|
|
6
6
|
import { useEffect as s, useState as c } from "react";
|
|
7
7
|
import { MessageSquare as l, Trash2 as u } from "lucide-react";
|
|
8
8
|
import { gql as d } from "@apollo/client";
|
|
@@ -57,11 +57,11 @@ var D = 5e3, O = 20, k = d`
|
|
|
57
57
|
refetchQueries: ["RoadmapCommentsThread"],
|
|
58
58
|
awaitRefetchQueries: !0
|
|
59
59
|
};
|
|
60
|
-
function F({ roadmapId: t, roadmapItemId:
|
|
60
|
+
function F({ roadmapId: t, roadmapItemId: a, onTotalCount: l }) {
|
|
61
61
|
let { currentUser: u } = e(), [d, _] = c(""), [v, y] = c(null), [b, x] = c(!1), { data: S, loading: C, error: w, fetchMore: T } = p(k, {
|
|
62
62
|
variables: {
|
|
63
63
|
roadmapId: t,
|
|
64
|
-
roadmapItemId:
|
|
64
|
+
roadmapItemId: a ?? null,
|
|
65
65
|
pagination: { first: O }
|
|
66
66
|
},
|
|
67
67
|
skip: !t
|
|
@@ -72,13 +72,13 @@ function F({ roadmapId: t, roadmapItemId: r, onTotalCount: l }) {
|
|
|
72
72
|
let R = async () => {
|
|
73
73
|
y(null);
|
|
74
74
|
try {
|
|
75
|
-
await
|
|
75
|
+
await i(E({ variables: { input: {
|
|
76
76
|
roadmapId: t,
|
|
77
|
-
roadmapItemId:
|
|
77
|
+
roadmapItemId: a ?? null,
|
|
78
78
|
body: F
|
|
79
79
|
} } })), _("");
|
|
80
80
|
} catch (e) {
|
|
81
|
-
y(
|
|
81
|
+
y(n(e) ? "Your role can read but not comment." : r(e, "The comment could not be posted."));
|
|
82
82
|
}
|
|
83
83
|
}, z = async () => {
|
|
84
84
|
let e = M?.pageInfo.endCursor;
|
|
@@ -103,12 +103,12 @@ function F({ roadmapId: t, roadmapItemId: r, onTotalCount: l }) {
|
|
|
103
103
|
return /* @__PURE__ */ h("div", {
|
|
104
104
|
className: "space-y-4",
|
|
105
105
|
children: [
|
|
106
|
-
v && /* @__PURE__ */ m(
|
|
106
|
+
v && /* @__PURE__ */ m(o, { message: v }),
|
|
107
107
|
C && !S && /* @__PURE__ */ m("p", {
|
|
108
108
|
className: "text-sm text-muted-foreground",
|
|
109
109
|
children: "Loading comments…"
|
|
110
110
|
}),
|
|
111
|
-
w && /* @__PURE__ */ m(
|
|
111
|
+
w && /* @__PURE__ */ m(o, { message: `Comments could not be loaded: ${w.message}` }),
|
|
112
112
|
M && N.length === 0 && /* @__PURE__ */ m("p", {
|
|
113
113
|
className: "text-sm text-muted-foreground",
|
|
114
114
|
children: "No comments yet."
|
|
@@ -132,18 +132,18 @@ function F({ roadmapId: t, roadmapItemId: r, onTotalCount: l }) {
|
|
|
132
132
|
className: "space-y-2 border-t pt-4",
|
|
133
133
|
children: [
|
|
134
134
|
/* @__PURE__ */ m("label", {
|
|
135
|
-
htmlFor: `roadmap-comment-draft-${
|
|
135
|
+
htmlFor: `roadmap-comment-draft-${a ?? t}`,
|
|
136
136
|
className: "sr-only",
|
|
137
137
|
children: "Add a comment"
|
|
138
138
|
}),
|
|
139
139
|
/* @__PURE__ */ m("textarea", {
|
|
140
|
-
id: `roadmap-comment-draft-${
|
|
140
|
+
id: `roadmap-comment-draft-${a ?? t}`,
|
|
141
141
|
className: "w-full min-h-[72px] rounded-md border border-input bg-background px-3 py-2 text-sm",
|
|
142
142
|
placeholder: "Add a comment…",
|
|
143
143
|
value: d,
|
|
144
144
|
onChange: (e) => _(e.target.value)
|
|
145
145
|
}),
|
|
146
|
-
L && /* @__PURE__ */ m(
|
|
146
|
+
L && /* @__PURE__ */ m(o, { message: `A comment can be at most ${D} characters.` }),
|
|
147
147
|
/* @__PURE__ */ m("div", {
|
|
148
148
|
className: "flex justify-end",
|
|
149
149
|
children: /* @__PURE__ */ m(g, {
|
|
@@ -159,23 +159,23 @@ function F({ roadmapId: t, roadmapItemId: r, onTotalCount: l }) {
|
|
|
159
159
|
]
|
|
160
160
|
});
|
|
161
161
|
}
|
|
162
|
-
function I({ comment: e, mine:
|
|
162
|
+
function I({ comment: e, mine: n, onError: s }) {
|
|
163
163
|
let [l, d] = c(!1), [p, _] = c(e.body), v = p.trim().length > D, y = s, [b, x] = f(j, P), [S, C] = f(M, P), w = async () => {
|
|
164
164
|
y(null);
|
|
165
165
|
try {
|
|
166
|
-
await
|
|
166
|
+
await i(b({ variables: {
|
|
167
167
|
id: e.id,
|
|
168
168
|
body: p.trim()
|
|
169
169
|
} })), d(!1);
|
|
170
170
|
} catch (e) {
|
|
171
|
-
y(
|
|
171
|
+
y(r(e, "The comment could not be saved."));
|
|
172
172
|
}
|
|
173
173
|
}, T = async () => {
|
|
174
174
|
y(null);
|
|
175
175
|
try {
|
|
176
|
-
await
|
|
176
|
+
await i(S({ variables: { id: e.id } }));
|
|
177
177
|
} catch (e) {
|
|
178
|
-
y(
|
|
178
|
+
y(r(e, "The comment could not be deleted."));
|
|
179
179
|
}
|
|
180
180
|
};
|
|
181
181
|
return /* @__PURE__ */ h("li", {
|
|
@@ -195,7 +195,7 @@ function I({ comment: e, mine: a, onError: s }) {
|
|
|
195
195
|
title: `Edited ${N(e.editedAt)}`,
|
|
196
196
|
children: " · edited"
|
|
197
197
|
})
|
|
198
|
-
] }),
|
|
198
|
+
] }), n && !l && /* @__PURE__ */ h("span", {
|
|
199
199
|
className: "flex items-center gap-1",
|
|
200
200
|
children: [/* @__PURE__ */ m(g, {
|
|
201
201
|
size: "sm",
|
|
@@ -203,7 +203,7 @@ function I({ comment: e, mine: a, onError: s }) {
|
|
|
203
203
|
className: "h-6 px-2 text-xs",
|
|
204
204
|
onClick: () => d(!0),
|
|
205
205
|
children: "Edit"
|
|
206
|
-
}), /* @__PURE__ */ m(
|
|
206
|
+
}), /* @__PURE__ */ m(a, {
|
|
207
207
|
label: "",
|
|
208
208
|
ariaLabel: "Delete comment",
|
|
209
209
|
variant: "outline",
|
|
@@ -225,7 +225,7 @@ function I({ comment: e, mine: a, onError: s }) {
|
|
|
225
225
|
value: p,
|
|
226
226
|
onChange: (e) => _(e.target.value)
|
|
227
227
|
}),
|
|
228
|
-
v && /* @__PURE__ */ m(
|
|
228
|
+
v && /* @__PURE__ */ m(o, { message: `A comment can be at most ${D} characters.` }),
|
|
229
229
|
/* @__PURE__ */ h("div", {
|
|
230
230
|
className: "flex justify-end gap-2",
|
|
231
231
|
children: [/* @__PURE__ */ m(g, {
|