@burdenoff/microfe-planmagnet 2026.1002.2 → 2026.1002.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.
Files changed (154) hide show
  1. package/dist/generated/wspace-operations.d.ts +574 -0
  2. package/dist/generated/wspace-operations.d.ts.map +1 -1
  3. package/dist/generated/wspace-types.d.ts +486 -16
  4. package/dist/generated/wspace-types.d.ts.map +1 -1
  5. package/dist/index.js +8 -8
  6. package/dist/planmagnet/PlanMagnetRoot.d.ts.map +1 -1
  7. package/dist/planmagnet/PlanMagnetRoot.js +174 -168
  8. package/dist/planmagnet/PlanMagnetRoot.js.map +1 -1
  9. package/dist/planmagnet/PlanMagnetRoutes.d.ts.map +1 -1
  10. package/dist/planmagnet/PlanMagnetRoutes.js +63 -59
  11. package/dist/planmagnet/PlanMagnetRoutes.js.map +1 -1
  12. package/dist/planmagnet/board/BulkActions.d.ts.map +1 -1
  13. package/dist/planmagnet/board/BulkActions.js +106 -55
  14. package/dist/planmagnet/board/BulkActions.js.map +1 -1
  15. package/dist/planmagnet/controls/Pickers.d.ts +3 -3
  16. package/dist/planmagnet/controls/Pickers.js.map +1 -1
  17. package/dist/planmagnet/dashboards/DashboardUI.d.ts +0 -4
  18. package/dist/planmagnet/dashboards/DashboardUI.d.ts.map +1 -1
  19. package/dist/planmagnet/dashboards/DashboardUI.js +6 -13
  20. package/dist/planmagnet/dashboards/DashboardUI.js.map +1 -1
  21. package/dist/planmagnet/dashboards/cards/SprintCapacityCard.d.ts.map +1 -1
  22. package/dist/planmagnet/dashboards/cards/SprintCapacityCard.js +70 -59
  23. package/dist/planmagnet/dashboards/cards/SprintCapacityCard.js.map +1 -1
  24. package/dist/planmagnet/forecast/ResourceForecastCard.js +1 -1
  25. package/dist/planmagnet/forecast/ResourceForecastCard.js.map +1 -1
  26. package/dist/planmagnet/index.d.ts +1 -1
  27. package/dist/planmagnet/index.d.ts.map +1 -1
  28. package/dist/planmagnet/pages/DashboardsProjectManagerPagePage.d.ts +3 -3
  29. package/dist/planmagnet/pages/DashboardsProjectManagerPagePage.d.ts.map +1 -1
  30. package/dist/planmagnet/pages/DashboardsProjectManagerPagePage.js +26 -19
  31. package/dist/planmagnet/pages/DashboardsProjectManagerPagePage.js.map +1 -1
  32. package/dist/planmagnet/pages/DashboardsTeamUtilizationPagePage.d.ts +2 -2
  33. package/dist/planmagnet/pages/DashboardsTeamUtilizationPagePage.d.ts.map +1 -1
  34. package/dist/planmagnet/pages/DashboardsTeamUtilizationPagePage.js +18 -12
  35. package/dist/planmagnet/pages/DashboardsTeamUtilizationPagePage.js.map +1 -1
  36. package/dist/planmagnet/pages/ProductsCustomerSatisfactionPagePage.d.ts +2 -0
  37. package/dist/planmagnet/pages/ProductsCustomerSatisfactionPagePage.d.ts.map +1 -0
  38. package/dist/planmagnet/pages/ProductsCustomerSatisfactionPagePage.js +251 -0
  39. package/dist/planmagnet/pages/ProductsCustomerSatisfactionPagePage.js.map +1 -0
  40. package/dist/planmagnet/pages/ProductsProductDetailPagePage.d.ts.map +1 -1
  41. package/dist/planmagnet/pages/ProductsProductDetailPagePage.js +94 -92
  42. package/dist/planmagnet/pages/ProductsProductDetailPagePage.js.map +1 -1
  43. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.d.ts.map +1 -1
  44. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.js +116 -114
  45. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.js.map +1 -1
  46. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.d.ts.map +1 -1
  47. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js +174 -159
  48. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js.map +1 -1
  49. package/dist/planmagnet/pages/TasksCreateTaskPagePage.d.ts.map +1 -1
  50. package/dist/planmagnet/pages/TasksCreateTaskPagePage.js +159 -145
  51. package/dist/planmagnet/pages/TasksCreateTaskPagePage.js.map +1 -1
  52. package/dist/planmagnet/pages/TasksEditTaskPagePage.d.ts.map +1 -1
  53. package/dist/planmagnet/pages/TasksEditTaskPagePage.js +161 -143
  54. package/dist/planmagnet/pages/TasksEditTaskPagePage.js.map +1 -1
  55. package/dist/planmagnet/pages/TasksTaskDetailPagePage.d.ts.map +1 -1
  56. package/dist/planmagnet/pages/TasksTaskDetailPagePage.js +157 -155
  57. package/dist/planmagnet/pages/TasksTaskDetailPagePage.js.map +1 -1
  58. package/dist/planmagnet/pages/analytics/DeliveryKpisCard.d.ts.map +1 -1
  59. package/dist/planmagnet/pages/analytics/DeliveryKpisCard.js +97 -99
  60. package/dist/planmagnet/pages/analytics/DeliveryKpisCard.js.map +1 -1
  61. package/dist/planmagnet/product/FeatureLinkPanels.js +66 -66
  62. package/dist/planmagnet/product/ProductFeatureControls.js +38 -38
  63. package/dist/planmagnet/product/ProductFeatureLinkCard.js +8 -8
  64. package/dist/planmagnet/product/ProductLineControls.js +83 -83
  65. package/dist/planmagnet/product/ProductTeamsPanel.js +6 -6
  66. package/dist/planmagnet/product/routes.d.ts +6 -0
  67. package/dist/planmagnet/product/routes.d.ts.map +1 -1
  68. package/dist/planmagnet/product/routes.js +2 -2
  69. package/dist/planmagnet/product/routes.js.map +1 -1
  70. package/dist/planmagnet/satisfaction/DeliverySatisfactionSection.d.ts +20 -0
  71. package/dist/planmagnet/satisfaction/DeliverySatisfactionSection.d.ts.map +1 -0
  72. package/dist/planmagnet/satisfaction/DeliverySatisfactionSection.js +55 -0
  73. package/dist/planmagnet/satisfaction/DeliverySatisfactionSection.js.map +1 -0
  74. package/dist/planmagnet/satisfaction/SatisfactionFigures.d.ts +30 -0
  75. package/dist/planmagnet/satisfaction/SatisfactionFigures.d.ts.map +1 -0
  76. package/dist/planmagnet/satisfaction/SatisfactionFigures.js +282 -0
  77. package/dist/planmagnet/satisfaction/SatisfactionFigures.js.map +1 -0
  78. package/dist/planmagnet/satisfaction/SatisfactionImportDialog.d.ts +9 -0
  79. package/dist/planmagnet/satisfaction/SatisfactionImportDialog.d.ts.map +1 -0
  80. package/dist/planmagnet/satisfaction/SatisfactionImportDialog.js +390 -0
  81. package/dist/planmagnet/satisfaction/SatisfactionImportDialog.js.map +1 -0
  82. package/dist/planmagnet/satisfaction/SatisfactionLinkFields.d.ts +17 -0
  83. package/dist/planmagnet/satisfaction/SatisfactionLinkFields.d.ts.map +1 -0
  84. package/dist/planmagnet/satisfaction/SatisfactionLinkFields.js +77 -0
  85. package/dist/planmagnet/satisfaction/SatisfactionLinkFields.js.map +1 -0
  86. package/dist/planmagnet/satisfaction/SatisfactionReleaseSelect.d.ts +18 -0
  87. package/dist/planmagnet/satisfaction/SatisfactionReleaseSelect.d.ts.map +1 -0
  88. package/dist/planmagnet/satisfaction/SatisfactionReleaseSelect.js +87 -0
  89. package/dist/planmagnet/satisfaction/SatisfactionReleaseSelect.js.map +1 -0
  90. package/dist/planmagnet/satisfaction/SatisfactionResponseDialog.d.ts +13 -0
  91. package/dist/planmagnet/satisfaction/SatisfactionResponseDialog.d.ts.map +1 -0
  92. package/dist/planmagnet/satisfaction/SatisfactionResponseDialog.js +326 -0
  93. package/dist/planmagnet/satisfaction/SatisfactionResponseDialog.js.map +1 -0
  94. package/dist/planmagnet/satisfaction/SatisfactionResponsesTable.d.ts +23 -0
  95. package/dist/planmagnet/satisfaction/SatisfactionResponsesTable.d.ts.map +1 -0
  96. package/dist/planmagnet/satisfaction/SatisfactionResponsesTable.js +258 -0
  97. package/dist/planmagnet/satisfaction/SatisfactionResponsesTable.js.map +1 -0
  98. package/dist/planmagnet/satisfaction/SatisfactionSummaryCard.d.ts +6 -0
  99. package/dist/planmagnet/satisfaction/SatisfactionSummaryCard.d.ts.map +1 -0
  100. package/dist/planmagnet/satisfaction/SatisfactionSummaryCard.js +56 -0
  101. package/dist/planmagnet/satisfaction/SatisfactionSummaryCard.js.map +1 -0
  102. package/dist/planmagnet/satisfaction/SatisfactionWindowPicker.d.ts +16 -0
  103. package/dist/planmagnet/satisfaction/SatisfactionWindowPicker.d.ts.map +1 -0
  104. package/dist/planmagnet/satisfaction/SatisfactionWindowPicker.js +102 -0
  105. package/dist/planmagnet/satisfaction/SatisfactionWindowPicker.js.map +1 -0
  106. package/dist/planmagnet/satisfaction/satisfaction.d.ts +154 -0
  107. package/dist/planmagnet/satisfaction/satisfaction.d.ts.map +1 -0
  108. package/dist/planmagnet/satisfaction/satisfaction.js +210 -0
  109. package/dist/planmagnet/satisfaction/satisfaction.js.map +1 -0
  110. package/dist/planmagnet/satisfaction/satisfactionCsv.d.ts +108 -0
  111. package/dist/planmagnet/satisfaction/satisfactionCsv.d.ts.map +1 -0
  112. package/dist/planmagnet/satisfaction/satisfactionCsv.js +211 -0
  113. package/dist/planmagnet/satisfaction/satisfactionCsv.js.map +1 -0
  114. package/dist/planmagnet/satisfaction/satisfactionForm.d.ts +90 -0
  115. package/dist/planmagnet/satisfaction/satisfactionForm.d.ts.map +1 -0
  116. package/dist/planmagnet/satisfaction/satisfactionForm.js +90 -0
  117. package/dist/planmagnet/satisfaction/satisfactionForm.js.map +1 -0
  118. package/dist/planmagnet/satisfaction/satisfactionOperations.d.ts +116 -0
  119. package/dist/planmagnet/satisfaction/satisfactionOperations.d.ts.map +1 -0
  120. package/dist/planmagnet/satisfaction/satisfactionOperations.js +86 -0
  121. package/dist/planmagnet/satisfaction/satisfactionOperations.js.map +1 -0
  122. package/dist/planmagnet/satisfaction/useSatisfactionAccess.d.ts +20 -0
  123. package/dist/planmagnet/satisfaction/useSatisfactionAccess.d.ts.map +1 -0
  124. package/dist/planmagnet/satisfaction/useSatisfactionAccess.js +31 -0
  125. package/dist/planmagnet/satisfaction/useSatisfactionAccess.js.map +1 -0
  126. package/dist/planmagnet/skills/RequiredSkillsEditor.d.ts +35 -0
  127. package/dist/planmagnet/skills/RequiredSkillsEditor.d.ts.map +1 -0
  128. package/dist/planmagnet/skills/RequiredSkillsEditor.js +124 -0
  129. package/dist/planmagnet/skills/RequiredSkillsEditor.js.map +1 -0
  130. package/dist/planmagnet/skills/SkillChips.d.ts +30 -0
  131. package/dist/planmagnet/skills/SkillChips.d.ts.map +1 -0
  132. package/dist/planmagnet/skills/SkillChips.js +57 -0
  133. package/dist/planmagnet/skills/SkillChips.js.map +1 -0
  134. package/dist/planmagnet/skills/SkillCoverageCard.d.ts +24 -0
  135. package/dist/planmagnet/skills/SkillCoverageCard.d.ts.map +1 -0
  136. package/dist/planmagnet/skills/SkillCoverageCard.js +256 -0
  137. package/dist/planmagnet/skills/SkillCoverageCard.js.map +1 -0
  138. package/dist/planmagnet/skills/WorkItemRequiredSkills.d.ts +10 -0
  139. package/dist/planmagnet/skills/WorkItemRequiredSkills.d.ts.map +1 -0
  140. package/dist/planmagnet/skills/WorkItemRequiredSkills.js +65 -0
  141. package/dist/planmagnet/skills/WorkItemRequiredSkills.js.map +1 -0
  142. package/dist/planmagnet/skills/skillOperations.d.ts +52 -0
  143. package/dist/planmagnet/skills/skillOperations.d.ts.map +1 -0
  144. package/dist/planmagnet/skills/skillOperations.js +44 -0
  145. package/dist/planmagnet/skills/skillOperations.js.map +1 -0
  146. package/dist/planmagnet/skills/skillTags.d.ts +103 -0
  147. package/dist/planmagnet/skills/skillTags.d.ts.map +1 -0
  148. package/dist/planmagnet/skills/skillTags.js +115 -0
  149. package/dist/planmagnet/skills/skillTags.js.map +1 -0
  150. package/dist/planmagnet/skills/useRequiredSkillsDraft.d.ts +28 -0
  151. package/dist/planmagnet/skills/useRequiredSkillsDraft.d.ts.map +1 -0
  152. package/dist/planmagnet/skills/useRequiredSkillsDraft.js +30 -0
  153. package/dist/planmagnet/skills/useRequiredSkillsDraft.js.map +1 -0
  154. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PlanMagnetRoot.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoot.tsx"],"sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { useEffect } from 'react';\nimport {\n LayoutDashboard,\n Package,\n FolderKanban,\n CheckSquare,\n Zap,\n CalendarDays,\n CalendarClock,\n Users,\n TrendingUp,\n Star,\n GitBranch,\n Map,\n Target,\n Flag,\n UserPlus,\n Briefcase,\n Swords,\n Bot,\n LayoutTemplate,\n ShieldCheck,\n Sparkles,\n History,\n SquareGanttChart,\n ShieldAlert,\n Activity as ActivityIcon,\n LayoutGrid,\n ClipboardList,\n UsersRound,\n Crown,\n Gauge,\n BarChart3,\n Layers,\n ListTree,\n} from 'lucide-react';\nimport { PlanMagnetProvider, usePlanMagnet } from './providers/PlanMagnetProvider';\nimport { PeopleProvider } from './people/People';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport { useTr } from '../shared/hooks/useTr';\nimport type { NavItem, PlanMagnetRootProps } from './types';\nimport { PlanMagnetRoutes } from './PlanMagnetRoutes';\nimport { joinPath } from './utils/navigation';\nimport { PRIORITIZATION_PATH, PRODUCT_HIERARCHY_PATH, PRODUCT_LINES_PATH } from './product/routes';\n\n/** Resolves user ids to names for every page, in one batch (see people/People.tsx). */\nfunction PlanMagnetPeople({ children }: { children: ReactNode }) {\n const { workspaceId } = usePlanMagnet();\n return <PeopleProvider workspaceId={workspaceId ?? undefined}>{children}</PeopleProvider>;\n}\n\nexport const PlanMagnetRoot: FC<PlanMagnetRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const tr = useTr();\n\n useEffect(() => {\n // This tree is NOT the production sidebar. planmagnet-app, the only host that mounts PlanMagnetRoot, passes no\n // registerNavItems (it spreads its shared workspace props). Its sidebar is its own NavRegistration.tsx, gated per\n // entry by navPermissions.ts (both in planmagnet-app src/components/). A nav entry added or relabelled here reaches\n // users only when the planmagnet-app PR that bumps this package's pin makes the same change there (PRM-01 review:\n // the new Product lines / Product hierarchy entries and the \"Feature requests\" label showed in a standalone mount,\n // not in prod).\n if (!registerNavItems) return;\n const navItem: NavItem = {\n id: 'planmagnet',\n label: tr('planmagnet.nav.root', 'PlanMagnet'),\n path: basePath,\n icon: <LayoutDashboard size={20} />,\n order: 80,\n group: 'products',\n children: [\n {\n id: 'planmagnet-dashboard',\n label: tr('planmagnet.nav.dashboard', 'Dashboard'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n icon: <LayoutDashboard size={16} />,\n order: 1,\n },\n {\n // ANR-06/07/28, CWF-31: role dashboards composed from existing queries — no new backend.\n id: 'planmagnet-dashboards',\n label: tr('planmagnet.nav.dashboards', 'Dashboards'),\n path: joinPath(basePath, 'dashboards/executive-page'),\n icon: <LayoutGrid size={16} />,\n order: 1.5,\n children: [\n {\n id: 'planmagnet-dashboards-executive',\n label: tr('planmagnet.nav.dashboards.executive', 'Executive'),\n path: joinPath(basePath, 'dashboards/executive-page'),\n icon: <LayoutGrid size={16} />,\n },\n {\n id: 'planmagnet-dashboards-pm',\n label: tr('planmagnet.nav.dashboards.pm', 'Project manager'),\n path: joinPath(basePath, 'dashboards/project-manager-page'),\n icon: <ClipboardList size={16} />,\n },\n {\n id: 'planmagnet-dashboards-team',\n label: tr('planmagnet.nav.dashboards.team', 'Team utilization'),\n path: joinPath(basePath, 'dashboards/team-utilization-page'),\n icon: <UsersRound size={16} />,\n },\n {\n id: 'planmagnet-dashboards-leadership',\n label: tr('planmagnet.nav.dashboards.leadership', 'Leadership'),\n path: joinPath(basePath, 'dashboards/leadership-page'),\n icon: <Crown size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-products',\n label: tr('planmagnet.nav.products', 'Products'),\n // BOFF-8045: Product is now a real entity (vision, lifecycle stage, North\n // Star) distinct from Roadmap — `products-page` shows real Products, and\n // the group root points there again. \"Roadmaps\" stays as its own child\n // below, now genuinely about roadmaps rather than products relabelled.\n path: joinPath(basePath, 'products/products-page'),\n icon: <Package size={16} />,\n order: 2,\n children: [\n {\n // PRM-01: the hierarchy's top level — Product line > Product > Feature > Epic > Story.\n id: 'planmagnet-product-lines',\n label: tr('planmagnet.nav.products.productLines', 'Product lines'),\n path: joinPath(basePath, PRODUCT_LINES_PATH),\n icon: <Layers size={16} />,\n },\n {\n id: 'planmagnet-product-hierarchy',\n label: tr('planmagnet.nav.products.hierarchy', 'Product hierarchy'),\n path: joinPath(basePath, PRODUCT_HIERARCHY_PATH),\n icon: <ListTree size={16} />,\n },\n {\n // PRM-01 owner decision: a feature REQUEST is customer/user feedback; a \"feature\" is a product\n // capability the team builds (reached from its product). This entry lists requests, so it says so.\n // A NEW key rather than a relabel of 'planmagnet.nav.products.features': a locale that already\n // translated that key as \"Features\" would keep the old wording regardless of this fallback (same\n // reasoning as 'planmagnet.nav.team.members' below). Id and path stay, so links keep working.\n id: 'planmagnet-features',\n label: tr('planmagnet.nav.products.featureRequests', 'Feature requests'),\n path: joinPath(basePath, 'products/features-page'),\n icon: <Star size={16} />,\n },\n {\n id: 'planmagnet-releases',\n label: tr('planmagnet.nav.products.releases', 'Releases'),\n path: joinPath(basePath, 'products/releases-page'),\n icon: <GitBranch size={16} />,\n },\n {\n id: 'planmagnet-roadmaps',\n label: tr('planmagnet.nav.products.roadmaps', 'Roadmaps'),\n path: joinPath(basePath, 'products/roadmaps-page'),\n icon: <Map size={16} />,\n },\n {\n // BOFF-8047: Portfolios and Programs were `api-only` — full CRUD existed in the service with\n // zero routes anywhere in the UI.\n id: 'planmagnet-portfolios',\n label: tr('planmagnet.nav.products.portfolios', 'Portfolios'),\n path: joinPath(basePath, 'products/portfolios-page'),\n icon: <Briefcase size={16} />,\n },\n {\n id: 'planmagnet-programs',\n label: tr('planmagnet.nav.products.programs', 'Programs'),\n path: joinPath(basePath, 'products/programs-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-competitors',\n label: tr('planmagnet.nav.products.competitors', 'Competitors'),\n path: joinPath(basePath, 'products/competitors-page'),\n icon: <Swords size={16} />,\n },\n {\n // PRM-27: MoSCoW/Kano/Value-vs-Effort over feature requests or roadmap initiatives.\n id: 'planmagnet-prioritization',\n label: tr('planmagnet.nav.products.prioritization', 'Prioritization'),\n path: joinPath(basePath, PRIORITIZATION_PATH),\n icon: <Gauge size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-projects',\n label: tr('planmagnet.nav.projects', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n icon: <FolderKanban size={16} />,\n order: 3,\n children: [\n {\n id: 'planmagnet-projects-all',\n label: tr('planmagnet.nav.projects.all', 'All Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-projects-active',\n label: tr('planmagnet.nav.projects.active', 'Active Projects'),\n path: joinPath(basePath, 'projects/active-projects-page'),\n icon: <TrendingUp size={16} />,\n },\n {\n id: 'planmagnet-projects-create',\n label: tr('planmagnet.nav.projects.create', 'Create Project'),\n path: joinPath(basePath, 'projects/create-project-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-milestones',\n label: tr('planmagnet.nav.projects.milestones', 'Milestones'),\n path: joinPath(basePath, 'projects/milestones-page'),\n icon: <Target size={16} />,\n },\n {\n id: 'planmagnet-planning',\n label: tr('planmagnet.nav.projects.planning', 'Planning'),\n path: joinPath(basePath, 'projects/planning-page'),\n icon: <CalendarDays size={16} />,\n },\n {\n id: 'planmagnet-templates',\n label: tr('planmagnet.nav.projects.templates', 'Templates'),\n path: joinPath(basePath, 'templates/templates-page'),\n icon: <LayoutTemplate size={16} />,\n },\n {\n // GAP-02: the gates a release or phase must pass — list, criteria, review.\n id: 'planmagnet-quality-gates',\n label: tr('planmagnet.nav.projects.qualityGates', 'Quality gates'),\n path: joinPath(basePath, 'projects/quality-gates-page'),\n icon: <ShieldCheck size={16} />,\n },\n {\n // ANR-24: a timeline over the same WorkItemDependency graph the critical-path page's\n // dependency graph (PDM-27) reads.\n id: 'planmagnet-gantt',\n label: tr('planmagnet.nav.projects.gantt', 'Gantt'),\n path: joinPath(basePath, 'projects/gantt-page'),\n icon: <SquareGanttChart size={16} />,\n },\n {\n // AI-10: rule-based at-risk work item flags, project-scoped.\n id: 'planmagnet-at-risk',\n label: tr('planmagnet.nav.projects.atRisk', 'At-risk work'),\n path: joinPath(basePath, 'projects/at-risk-page'),\n icon: <ShieldAlert size={16} />,\n },\n ],\n },\n {\n // GAP-06, CWF-22/23: meetings scheduled through the platform Calendar module, with PlanMagnet's own\n // agenda/notes/action-items. Sits right after Projects, the other place meetings are scheduled from\n // (a project's or sprint's own Meetings card).\n id: 'planmagnet-meetings',\n label: tr('planmagnet.nav.meetings', 'Meetings'),\n path: joinPath(basePath, 'meetings/meetings-page'),\n icon: <CalendarClock size={16} />,\n order: 3.2,\n },\n {\n id: 'planmagnet-goals',\n label: tr('planmagnet.nav.goals', 'Goals (OKRs)'),\n path: joinPath(basePath, 'goals/goals-page'),\n icon: <Flag size={16} />,\n order: 3.5,\n children: [\n {\n id: 'planmagnet-goals-all',\n label: tr('planmagnet.nav.goals.all', 'All Objectives'),\n path: joinPath(basePath, 'goals/goals-page'),\n icon: <Flag size={16} />,\n },\n {\n id: 'planmagnet-goals-create',\n label: tr('planmagnet.nav.goals.create', 'Create Objective'),\n path: joinPath(basePath, 'goals/create-objective-page'),\n icon: <Flag size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-tasks',\n label: tr('planmagnet.nav.tasks', 'Tasks'),\n path: joinPath(basePath, 'tasks/tasks-page'),\n icon: <CheckSquare size={16} />,\n order: 4,\n children: [\n {\n // ANR-08: a team member's own time/delivery/goals view — first, alongside My Work.\n id: 'planmagnet-tasks-my-dashboard',\n label: tr('planmagnet.nav.tasks.myDashboard', 'My dashboard'),\n path: joinPath(basePath, 'tasks/my-dashboard-page'),\n icon: <LayoutDashboard size={16} />,\n },\n {\n id: 'planmagnet-tasks-board',\n label: tr('planmagnet.nav.tasks.board', 'Task Board'),\n path: joinPath(basePath, 'tasks/tasks-page'),\n icon: <CheckSquare size={16} />,\n },\n {\n id: 'planmagnet-tasks-create',\n label: tr('planmagnet.nav.tasks.create', 'Create Task'),\n path: joinPath(basePath, 'tasks/create-task-page'),\n icon: <CheckSquare size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-sprints',\n label: tr('planmagnet.nav.sprints', 'Sprints'),\n path: joinPath(basePath, 'sprints/start-sprint-page'),\n icon: <Zap size={16} />,\n order: 5,\n },\n {\n id: 'planmagnet-automation',\n label: tr('planmagnet.nav.automation', 'Automation'),\n path: joinPath(basePath, 'automation/automation-rules-page'),\n icon: <Bot size={16} />,\n order: 5.5,\n children: [\n {\n id: 'planmagnet-automation-rules',\n label: tr('planmagnet.nav.automation.rules', 'Rules'),\n path: joinPath(basePath, 'automation/automation-rules-page'),\n icon: <Bot size={16} />,\n },\n {\n id: 'planmagnet-automation-create',\n label: tr('planmagnet.nav.automation.create', 'New rule'),\n path: joinPath(basePath, 'automation/create-automation-rule-page'),\n icon: <Bot size={16} />,\n },\n ],\n },\n {\n // AI-05 / AI-24: break work down with AI (every suggestion is confirmed by a person before it is created),\n // and the caller's own agent runs.\n id: 'planmagnet-ai',\n label: tr('planmagnet.nav.ai', 'AI planning'),\n path: joinPath(basePath, 'ai/plan-page'),\n icon: <Sparkles size={16} />,\n order: 5.7,\n children: [\n {\n id: 'planmagnet-ai-plan',\n label: tr('planmagnet.nav.ai.plan', 'Break down work'),\n path: joinPath(basePath, 'ai/plan-page'),\n icon: <Sparkles size={16} />,\n },\n {\n id: 'planmagnet-ai-activity',\n label: tr('planmagnet.nav.ai.activity', 'My AI activity'),\n path: joinPath(basePath, 'ai/activity-page'),\n icon: <History size={16} />,\n },\n ],\n },\n {\n // CWF-09: a merged, newest-first feed of work-item events across the workspace — creation, status\n // changes, comments and tracked field edits. A top-level item (not nested, unlike \"My AI activity\"\n // above, which is scoped to the caller's own AI calls) since this feed covers every project.\n id: 'planmagnet-activity',\n label: tr('planmagnet.nav.activity', 'Activity'),\n path: joinPath(basePath, 'activity/activity-page'),\n icon: <ActivityIcon size={16} />,\n order: 6,\n },\n {\n // ANR-13/14/15/16/17: a real, ownable, shareable, schedulable report model now backs this — it was\n // hidden (register: `not-built`) while the page fabricated rows client-side and Save ran no\n // mutation; see git history / BOFF-7822.\n id: 'planmagnet-reports',\n label: tr('planmagnet.nav.reports', 'Reports'),\n path: joinPath(basePath, 'reports/reports-page'),\n icon: <BarChart3 size={16} />,\n order: 8,\n },\n {\n // BOFF-8044: \"Team roster\" (a workspace directory, not a team) is relabelled \"Members\" so\n // it stops colliding with the real Team entity's own \"Teams\" list added alongside it.\n // \"Create Team\" is no longer hidden — the Team model now exists. \"Invite Member\" sends a\n // real invitation through the platform's createInvitation with a PlanMagnet access level (H12).\n id: 'planmagnet-team',\n label: tr('planmagnet.nav.team', 'Team'),\n path: joinPath(basePath, 'team/team-page'),\n icon: <Users size={16} />,\n order: 10,\n children: [\n {\n id: 'planmagnet-teams',\n label: tr('planmagnet.nav.team.teams', 'Teams'),\n path: joinPath(basePath, 'team/teams-page'),\n icon: <Users size={16} />,\n },\n {\n // BOFF-8044: a NEW key, not a relabel of 'planmagnet.nav.team.roster' — a locale that\n // already had that key translated as \"Team roster\" would otherwise keep showing the\n // old wording regardless of this fallback, since useTr only falls back when the\n // provider has no translation for the KEY at all.\n id: 'planmagnet-team-roster',\n label: tr('planmagnet.nav.team.members', 'Members'),\n path: joinPath(basePath, 'team/team-page'),\n icon: <Users size={16} />,\n },\n {\n id: 'planmagnet-team-invite',\n label: tr('planmagnet.nav.team.invite', 'Invite member'),\n path: joinPath(basePath, 'team/invite-member-page'),\n icon: <UserPlus size={16} />,\n },\n ],\n },\n // \"Workspace\" hidden: `create-workspace-page` navigated home on submit and created\n // nothing (a false success). Workspaces are created from the shell's workspace\n // switcher, which is the platform's real flow. Route kept; page now says so.\n {\n id: 'planmagnet-analytics',\n label: tr('planmagnet.nav.analytics', 'Analytics'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n icon: <TrendingUp size={16} />,\n order: 12,\n },\n ],\n };\n return registerNavItems(navItem);\n }, [registerNavItems, basePath, tr]);\n\n useEffect(() => {\n if (!registerFooterItems) return;\n return registerFooterItems([\n {\n id: 'planmagnet-status',\n label: tr('planmagnet.footer.ready', 'PlanMagnet Ready'),\n type: 'status',\n section: 'left',\n order: 10,\n },\n ]);\n }, [registerFooterItems, tr]);\n\n return (\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <PlanMagnetProvider {...props}>\n <PlanMagnetPeople>\n <PlanMagnetRoutes />\n </PlanMagnetPeople>\n </PlanMagnetProvider>\n </FeatureFlagProvider>\n );\n};\n"],"mappings":";;;;;;;;;;;AA+CA,SAAS,EAAiB,EAAE,eAAqC;CAC/D,IAAM,EAAE,mBAAgB,GAAe;AACvC,QAAO,kBAAC,GAAD;EAAgB,aAAa,KAAe,KAAA;EAAY;EAA0B,CAAA;;AAG3F,IAAa,KAA2C,MAAU;CAChE,IAAM,EAAE,qBAAkB,wBAAqB,cAAW,QAAQ,GAC5D,IAAK,GAAO;AA2YlB,QAzYA,QAAgB;AAOT,QAkXL,QAAO,EAjXkB;GACvB,IAAI;GACJ,OAAO,EAAG,uBAAuB,aAAa;GAC9C,MAAM;GACN,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;GACnC,OAAO;GACP,OAAO;GACP,UAAU;IACR;KACE,IAAI;KACJ,OAAO,EAAG,4BAA4B,YAAY;KAClD,MAAM,EAAS,GAAU,2BAA2B;KACpD,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;KACnC,OAAO;KACR;IACD;KAEE,IAAI;KACJ,OAAO,EAAG,6BAA6B,aAAa;KACpD,MAAM,EAAS,GAAU,4BAA4B;KACrD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;KAC9B,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,uCAAuC,YAAY;OAC7D,MAAM,EAAS,GAAU,4BAA4B;OACrD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,gCAAgC,kBAAkB;OAC5D,MAAM,EAAS,GAAU,kCAAkC;OAC3D,MAAM,kBAAC,GAAD,EAAe,MAAM,IAAM,CAAA;OAClC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,mBAAmB;OAC/D,MAAM,EAAS,GAAU,mCAAmC;OAC5D,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,wCAAwC,aAAa;OAC/D,MAAM,EAAS,GAAU,6BAA6B;OACtD,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAKhD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAS,MAAM,IAAM,CAAA;KAC3B,OAAO;KACP,UAAU;MACR;OAEE,IAAI;OACJ,OAAO,EAAG,wCAAwC,gBAAgB;OAClE,MAAM,EAAS,GAAU,EAAmB;OAC5C,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,qCAAqC,oBAAoB;OACnE,MAAM,EAAS,GAAU,EAAuB;OAChD,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;OAC7B;MACD;OAME,IAAI;OACJ,OAAO,EAAG,2CAA2C,mBAAmB;OACxE,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;OACzB;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;OAC9B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;OACxB;MACD;OAGE,IAAI;OACJ,OAAO,EAAG,sCAAsC,aAAa;OAC7D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;OAC9B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,uCAAuC,cAAc;OAC/D,MAAM,EAAS,GAAU,4BAA4B;OACrD,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,0CAA0C,iBAAiB;OACrE,MAAM,EAAS,GAAU,EAAoB;OAC7C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;KAChC,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,+BAA+B,eAAe;OACxD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,kBAAkB;OAC9D,MAAM,EAAS,GAAU,gCAAgC;OACzD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,iBAAiB;OAC7D,MAAM,EAAS,GAAU,+BAA+B;OACxD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,sCAAsC,aAAa;OAC7D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,qCAAqC,YAAY;OAC3D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAgB,MAAM,IAAM,CAAA;OACnC;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,wCAAwC,gBAAgB;OAClE,MAAM,EAAS,GAAU,8BAA8B;OACvD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACD;OAGE,IAAI;OACJ,OAAO,EAAG,iCAAiC,QAAQ;OACnD,MAAM,EAAS,GAAU,sBAAsB;OAC/C,MAAM,kBAAC,GAAD,EAAkB,MAAM,IAAM,CAAA;OACrC;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,kCAAkC,eAAe;OAC3D,MAAM,EAAS,GAAU,wBAAwB;OACjD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACF;KACF;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAe,MAAM,IAAM,CAAA;KACjC,OAAO;KACR;IACD;KACE,IAAI;KACJ,OAAO,EAAG,wBAAwB,eAAe;KACjD,MAAM,EAAS,GAAU,mBAAmB;KAC5C,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;KACxB,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,4BAA4B,iBAAiB;MACvD,MAAM,EAAS,GAAU,mBAAmB;MAC5C,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;MACzB,EACD;MACE,IAAI;MACJ,OAAO,EAAG,+BAA+B,mBAAmB;MAC5D,MAAM,EAAS,GAAU,8BAA8B;MACvD,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;MACzB,CACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,wBAAwB,QAAQ;KAC1C,MAAM,EAAS,GAAU,mBAAmB;KAC5C,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;KAC/B,OAAO;KACP,UAAU;MACR;OAEE,IAAI;OACJ,OAAO,EAAG,oCAAoC,eAAe;OAC7D,MAAM,EAAS,GAAU,0BAA0B;OACnD,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;OACpC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,8BAA8B,aAAa;OACrD,MAAM,EAAS,GAAU,mBAAmB;OAC5C,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,+BAA+B,cAAc;OACvD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,0BAA0B,UAAU;KAC9C,MAAM,EAAS,GAAU,4BAA4B;KACrD,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;KACvB,OAAO;KACR;IACD;KACE,IAAI;KACJ,OAAO,EAAG,6BAA6B,aAAa;KACpD,MAAM,EAAS,GAAU,mCAAmC;KAC5D,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;KACvB,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,mCAAmC,QAAQ;MACrD,MAAM,EAAS,GAAU,mCAAmC;MAC5D,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;MACxB,EACD;MACE,IAAI;MACJ,OAAO,EAAG,oCAAoC,WAAW;MACzD,MAAM,EAAS,GAAU,yCAAyC;MAClE,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;MACxB,CACF;KACF;IACD;KAGE,IAAI;KACJ,OAAO,EAAG,qBAAqB,cAAc;KAC7C,MAAM,EAAS,GAAU,eAAe;KACxC,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;KAC5B,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,0BAA0B,kBAAkB;MACtD,MAAM,EAAS,GAAU,eAAe;MACxC,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;MAC7B,EACD;MACE,IAAI;MACJ,OAAO,EAAG,8BAA8B,iBAAiB;MACzD,MAAM,EAAS,GAAU,mBAAmB;MAC5C,MAAM,kBAAC,GAAD,EAAS,MAAM,IAAM,CAAA;MAC5B,CACF;KACF;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;KAChC,OAAO;KACR;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,0BAA0B,UAAU;KAC9C,MAAM,EAAS,GAAU,uBAAuB;KAChD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;KAC7B,OAAO;KACR;IACD;KAKE,IAAI;KACJ,OAAO,EAAG,uBAAuB,OAAO;KACxC,MAAM,EAAS,GAAU,iBAAiB;KAC1C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;KACzB,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,6BAA6B,QAAQ;OAC/C,MAAM,EAAS,GAAU,kBAAkB;OAC3C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACD;OAKE,IAAI;OACJ,OAAO,EAAG,+BAA+B,UAAU;OACnD,MAAM,EAAS,GAAU,iBAAiB;OAC1C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,8BAA8B,gBAAgB;OACxD,MAAM,EAAS,GAAU,0BAA0B;OACnD,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;OAC7B;MACF;KACF;IAID;KACE,IAAI;KACJ,OAAO,EAAG,4BAA4B,YAAY;KAClD,MAAM,EAAS,GAAU,2BAA2B;KACpD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;KAC9B,OAAO;KACR;IACF;GACF,CAC+B;IAC/B;EAAC;EAAkB;EAAU;EAAG,CAAC,EAEpC,QAAgB;AACT,QACL,QAAO,EAAoB,CACzB;GACE,IAAI;GACJ,OAAO,EAAG,2BAA2B,mBAAmB;GACxD,MAAM;GACN,SAAS;GACT,OAAO;GACR,CACF,CAAC;IACD,CAAC,GAAqB,EAAG,CAAC,EAG3B,kBAAC,GAAD;EAAqB,aAAa;EAAM,SAAQ;EAAS,gBAAgB;YACvE,kBAAC,GAAD;GAAoB,GAAI;aACtB,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAoB,CAAA,EACH,CAAA;GACA,CAAA;EACD,CAAA"}
1
+ {"version":3,"file":"PlanMagnetRoot.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoot.tsx"],"sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { useEffect } from 'react';\nimport {\n LayoutDashboard,\n Package,\n FolderKanban,\n CheckSquare,\n Zap,\n CalendarDays,\n CalendarClock,\n Users,\n TrendingUp,\n Star,\n GitBranch,\n Map,\n Target,\n Flag,\n UserPlus,\n Briefcase,\n Swords,\n Bot,\n LayoutTemplate,\n ShieldCheck,\n Sparkles,\n History,\n SquareGanttChart,\n ShieldAlert,\n Activity as ActivityIcon,\n LayoutGrid,\n ClipboardList,\n UsersRound,\n Crown,\n Gauge,\n BarChart3,\n Layers,\n ListTree,\n MessageSquareHeart,\n} from 'lucide-react';\nimport { PlanMagnetProvider, usePlanMagnet } from './providers/PlanMagnetProvider';\nimport { PeopleProvider } from './people/People';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport { useTr } from '../shared/hooks/useTr';\nimport type { NavItem, PlanMagnetRootProps } from './types';\nimport { PlanMagnetRoutes } from './PlanMagnetRoutes';\nimport { joinPath } from './utils/navigation';\nimport {\n CUSTOMER_SATISFACTION_PATH,\n PRIORITIZATION_PATH,\n PRODUCT_HIERARCHY_PATH,\n PRODUCT_LINES_PATH,\n} from './product/routes';\n\n/** Resolves user ids to names for every page, in one batch (see people/People.tsx). */\nfunction PlanMagnetPeople({ children }: { children: ReactNode }) {\n const { workspaceId } = usePlanMagnet();\n return <PeopleProvider workspaceId={workspaceId ?? undefined}>{children}</PeopleProvider>;\n}\n\nexport const PlanMagnetRoot: FC<PlanMagnetRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const tr = useTr();\n\n useEffect(() => {\n // This tree is NOT the production sidebar. planmagnet-app, the only host that mounts PlanMagnetRoot, passes no\n // registerNavItems (it spreads its shared workspace props). Its sidebar is its own NavRegistration.tsx, gated per\n // entry by navPermissions.ts (both in planmagnet-app src/components/). A nav entry added or relabelled here reaches\n // users only when the planmagnet-app PR that bumps this package's pin makes the same change there (PRM-01 review:\n // the new Product lines / Product hierarchy entries and the \"Feature requests\" label showed in a standalone mount,\n // not in prod).\n if (!registerNavItems) return;\n const navItem: NavItem = {\n id: 'planmagnet',\n label: tr('planmagnet.nav.root', 'PlanMagnet'),\n path: basePath,\n icon: <LayoutDashboard size={20} />,\n order: 80,\n group: 'products',\n children: [\n {\n id: 'planmagnet-dashboard',\n label: tr('planmagnet.nav.dashboard', 'Dashboard'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n icon: <LayoutDashboard size={16} />,\n order: 1,\n },\n {\n // ANR-06/07/28, CWF-31: role dashboards composed from existing queries — no new backend.\n id: 'planmagnet-dashboards',\n label: tr('planmagnet.nav.dashboards', 'Dashboards'),\n path: joinPath(basePath, 'dashboards/executive-page'),\n icon: <LayoutGrid size={16} />,\n order: 1.5,\n children: [\n {\n id: 'planmagnet-dashboards-executive',\n label: tr('planmagnet.nav.dashboards.executive', 'Executive'),\n path: joinPath(basePath, 'dashboards/executive-page'),\n icon: <LayoutGrid size={16} />,\n },\n {\n id: 'planmagnet-dashboards-pm',\n label: tr('planmagnet.nav.dashboards.pm', 'Project manager'),\n path: joinPath(basePath, 'dashboards/project-manager-page'),\n icon: <ClipboardList size={16} />,\n },\n {\n id: 'planmagnet-dashboards-team',\n label: tr('planmagnet.nav.dashboards.team', 'Team utilization'),\n path: joinPath(basePath, 'dashboards/team-utilization-page'),\n icon: <UsersRound size={16} />,\n },\n {\n id: 'planmagnet-dashboards-leadership',\n label: tr('planmagnet.nav.dashboards.leadership', 'Leadership'),\n path: joinPath(basePath, 'dashboards/leadership-page'),\n icon: <Crown size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-products',\n label: tr('planmagnet.nav.products', 'Products'),\n // BOFF-8045: Product is now a real entity (vision, lifecycle stage, North\n // Star) distinct from Roadmap — `products-page` shows real Products, and\n // the group root points there again. \"Roadmaps\" stays as its own child\n // below, now genuinely about roadmaps rather than products relabelled.\n path: joinPath(basePath, 'products/products-page'),\n icon: <Package size={16} />,\n order: 2,\n children: [\n {\n // PRM-01: the hierarchy's top level — Product line > Product > Feature > Epic > Story.\n id: 'planmagnet-product-lines',\n label: tr('planmagnet.nav.products.productLines', 'Product lines'),\n path: joinPath(basePath, PRODUCT_LINES_PATH),\n icon: <Layers size={16} />,\n },\n {\n id: 'planmagnet-product-hierarchy',\n label: tr('planmagnet.nav.products.hierarchy', 'Product hierarchy'),\n path: joinPath(basePath, PRODUCT_HIERARCHY_PATH),\n icon: <ListTree size={16} />,\n },\n {\n // PRM-01 owner decision: a feature REQUEST is customer/user feedback; a \"feature\" is a product\n // capability the team builds (reached from its product). This entry lists requests, so it says so.\n // A NEW key rather than a relabel of 'planmagnet.nav.products.features': a locale that already\n // translated that key as \"Features\" would keep the old wording regardless of this fallback (same\n // reasoning as 'planmagnet.nav.team.members' below). Id and path stay, so links keep working.\n id: 'planmagnet-features',\n label: tr('planmagnet.nav.products.featureRequests', 'Feature requests'),\n path: joinPath(basePath, 'products/features-page'),\n icon: <Star size={16} />,\n },\n {\n id: 'planmagnet-releases',\n label: tr('planmagnet.nav.products.releases', 'Releases'),\n path: joinPath(basePath, 'products/releases-page'),\n icon: <GitBranch size={16} />,\n },\n {\n id: 'planmagnet-roadmaps',\n label: tr('planmagnet.nav.products.roadmaps', 'Roadmaps'),\n path: joinPath(basePath, 'products/roadmaps-page'),\n icon: <Map size={16} />,\n },\n {\n // BOFF-8047: Portfolios and Programs were `api-only` — full CRUD existed in the service with\n // zero routes anywhere in the UI.\n id: 'planmagnet-portfolios',\n label: tr('planmagnet.nav.products.portfolios', 'Portfolios'),\n path: joinPath(basePath, 'products/portfolios-page'),\n icon: <Briefcase size={16} />,\n },\n {\n id: 'planmagnet-programs',\n label: tr('planmagnet.nav.products.programs', 'Programs'),\n path: joinPath(basePath, 'products/programs-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-competitors',\n label: tr('planmagnet.nav.products.competitors', 'Competitors'),\n path: joinPath(basePath, 'products/competitors-page'),\n icon: <Swords size={16} />,\n },\n {\n // PRM-27: MoSCoW/Kano/Value-vs-Effort over feature requests or roadmap initiatives.\n id: 'planmagnet-prioritization',\n label: tr('planmagnet.nav.products.prioritization', 'Prioritization'),\n path: joinPath(basePath, PRIORITIZATION_PATH),\n icon: <Gauge size={16} />,\n },\n {\n // ANR-21: CSAT and NPS from customer responses (planmagnet-product:read).\n id: 'planmagnet-customer-satisfaction',\n label: tr('planmagnet.nav.products.customerSatisfaction', 'Customer satisfaction'),\n path: joinPath(basePath, CUSTOMER_SATISFACTION_PATH),\n icon: <MessageSquareHeart size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-projects',\n label: tr('planmagnet.nav.projects', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n icon: <FolderKanban size={16} />,\n order: 3,\n children: [\n {\n id: 'planmagnet-projects-all',\n label: tr('planmagnet.nav.projects.all', 'All Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-projects-active',\n label: tr('planmagnet.nav.projects.active', 'Active Projects'),\n path: joinPath(basePath, 'projects/active-projects-page'),\n icon: <TrendingUp size={16} />,\n },\n {\n id: 'planmagnet-projects-create',\n label: tr('planmagnet.nav.projects.create', 'Create Project'),\n path: joinPath(basePath, 'projects/create-project-page'),\n icon: <FolderKanban size={16} />,\n },\n {\n id: 'planmagnet-milestones',\n label: tr('planmagnet.nav.projects.milestones', 'Milestones'),\n path: joinPath(basePath, 'projects/milestones-page'),\n icon: <Target size={16} />,\n },\n {\n id: 'planmagnet-planning',\n label: tr('planmagnet.nav.projects.planning', 'Planning'),\n path: joinPath(basePath, 'projects/planning-page'),\n icon: <CalendarDays size={16} />,\n },\n {\n id: 'planmagnet-templates',\n label: tr('planmagnet.nav.projects.templates', 'Templates'),\n path: joinPath(basePath, 'templates/templates-page'),\n icon: <LayoutTemplate size={16} />,\n },\n {\n // GAP-02: the gates a release or phase must pass — list, criteria, review.\n id: 'planmagnet-quality-gates',\n label: tr('planmagnet.nav.projects.qualityGates', 'Quality gates'),\n path: joinPath(basePath, 'projects/quality-gates-page'),\n icon: <ShieldCheck size={16} />,\n },\n {\n // ANR-24: a timeline over the same WorkItemDependency graph the critical-path page's\n // dependency graph (PDM-27) reads.\n id: 'planmagnet-gantt',\n label: tr('planmagnet.nav.projects.gantt', 'Gantt'),\n path: joinPath(basePath, 'projects/gantt-page'),\n icon: <SquareGanttChart size={16} />,\n },\n {\n // AI-10: rule-based at-risk work item flags, project-scoped.\n id: 'planmagnet-at-risk',\n label: tr('planmagnet.nav.projects.atRisk', 'At-risk work'),\n path: joinPath(basePath, 'projects/at-risk-page'),\n icon: <ShieldAlert size={16} />,\n },\n ],\n },\n {\n // GAP-06, CWF-22/23: meetings scheduled through the platform Calendar module, with PlanMagnet's own\n // agenda/notes/action-items. Sits right after Projects, the other place meetings are scheduled from\n // (a project's or sprint's own Meetings card).\n id: 'planmagnet-meetings',\n label: tr('planmagnet.nav.meetings', 'Meetings'),\n path: joinPath(basePath, 'meetings/meetings-page'),\n icon: <CalendarClock size={16} />,\n order: 3.2,\n },\n {\n id: 'planmagnet-goals',\n label: tr('planmagnet.nav.goals', 'Goals (OKRs)'),\n path: joinPath(basePath, 'goals/goals-page'),\n icon: <Flag size={16} />,\n order: 3.5,\n children: [\n {\n id: 'planmagnet-goals-all',\n label: tr('planmagnet.nav.goals.all', 'All Objectives'),\n path: joinPath(basePath, 'goals/goals-page'),\n icon: <Flag size={16} />,\n },\n {\n id: 'planmagnet-goals-create',\n label: tr('planmagnet.nav.goals.create', 'Create Objective'),\n path: joinPath(basePath, 'goals/create-objective-page'),\n icon: <Flag size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-tasks',\n label: tr('planmagnet.nav.tasks', 'Tasks'),\n path: joinPath(basePath, 'tasks/tasks-page'),\n icon: <CheckSquare size={16} />,\n order: 4,\n children: [\n {\n // ANR-08: a team member's own time/delivery/goals view — first, alongside My Work.\n id: 'planmagnet-tasks-my-dashboard',\n label: tr('planmagnet.nav.tasks.myDashboard', 'My dashboard'),\n path: joinPath(basePath, 'tasks/my-dashboard-page'),\n icon: <LayoutDashboard size={16} />,\n },\n {\n id: 'planmagnet-tasks-board',\n label: tr('planmagnet.nav.tasks.board', 'Task Board'),\n path: joinPath(basePath, 'tasks/tasks-page'),\n icon: <CheckSquare size={16} />,\n },\n {\n id: 'planmagnet-tasks-create',\n label: tr('planmagnet.nav.tasks.create', 'Create Task'),\n path: joinPath(basePath, 'tasks/create-task-page'),\n icon: <CheckSquare size={16} />,\n },\n ],\n },\n {\n id: 'planmagnet-sprints',\n label: tr('planmagnet.nav.sprints', 'Sprints'),\n path: joinPath(basePath, 'sprints/start-sprint-page'),\n icon: <Zap size={16} />,\n order: 5,\n },\n {\n id: 'planmagnet-automation',\n label: tr('planmagnet.nav.automation', 'Automation'),\n path: joinPath(basePath, 'automation/automation-rules-page'),\n icon: <Bot size={16} />,\n order: 5.5,\n children: [\n {\n id: 'planmagnet-automation-rules',\n label: tr('planmagnet.nav.automation.rules', 'Rules'),\n path: joinPath(basePath, 'automation/automation-rules-page'),\n icon: <Bot size={16} />,\n },\n {\n id: 'planmagnet-automation-create',\n label: tr('planmagnet.nav.automation.create', 'New rule'),\n path: joinPath(basePath, 'automation/create-automation-rule-page'),\n icon: <Bot size={16} />,\n },\n ],\n },\n {\n // AI-05 / AI-24: break work down with AI (every suggestion is confirmed by a person before it is created),\n // and the caller's own agent runs.\n id: 'planmagnet-ai',\n label: tr('planmagnet.nav.ai', 'AI planning'),\n path: joinPath(basePath, 'ai/plan-page'),\n icon: <Sparkles size={16} />,\n order: 5.7,\n children: [\n {\n id: 'planmagnet-ai-plan',\n label: tr('planmagnet.nav.ai.plan', 'Break down work'),\n path: joinPath(basePath, 'ai/plan-page'),\n icon: <Sparkles size={16} />,\n },\n {\n id: 'planmagnet-ai-activity',\n label: tr('planmagnet.nav.ai.activity', 'My AI activity'),\n path: joinPath(basePath, 'ai/activity-page'),\n icon: <History size={16} />,\n },\n ],\n },\n {\n // CWF-09: a merged, newest-first feed of work-item events across the workspace — creation, status\n // changes, comments and tracked field edits. A top-level item (not nested, unlike \"My AI activity\"\n // above, which is scoped to the caller's own AI calls) since this feed covers every project.\n id: 'planmagnet-activity',\n label: tr('planmagnet.nav.activity', 'Activity'),\n path: joinPath(basePath, 'activity/activity-page'),\n icon: <ActivityIcon size={16} />,\n order: 6,\n },\n {\n // ANR-13/14/15/16/17: a real, ownable, shareable, schedulable report model now backs this — it was\n // hidden (register: `not-built`) while the page fabricated rows client-side and Save ran no\n // mutation; see git history / BOFF-7822.\n id: 'planmagnet-reports',\n label: tr('planmagnet.nav.reports', 'Reports'),\n path: joinPath(basePath, 'reports/reports-page'),\n icon: <BarChart3 size={16} />,\n order: 8,\n },\n {\n // BOFF-8044: \"Team roster\" (a workspace directory, not a team) is relabelled \"Members\" so\n // it stops colliding with the real Team entity's own \"Teams\" list added alongside it.\n // \"Create Team\" is no longer hidden — the Team model now exists. \"Invite Member\" sends a\n // real invitation through the platform's createInvitation with a PlanMagnet access level (H12).\n id: 'planmagnet-team',\n label: tr('planmagnet.nav.team', 'Team'),\n path: joinPath(basePath, 'team/team-page'),\n icon: <Users size={16} />,\n order: 10,\n children: [\n {\n id: 'planmagnet-teams',\n label: tr('planmagnet.nav.team.teams', 'Teams'),\n path: joinPath(basePath, 'team/teams-page'),\n icon: <Users size={16} />,\n },\n {\n // BOFF-8044: a NEW key, not a relabel of 'planmagnet.nav.team.roster' — a locale that\n // already had that key translated as \"Team roster\" would otherwise keep showing the\n // old wording regardless of this fallback, since useTr only falls back when the\n // provider has no translation for the KEY at all.\n id: 'planmagnet-team-roster',\n label: tr('planmagnet.nav.team.members', 'Members'),\n path: joinPath(basePath, 'team/team-page'),\n icon: <Users size={16} />,\n },\n {\n id: 'planmagnet-team-invite',\n label: tr('planmagnet.nav.team.invite', 'Invite member'),\n path: joinPath(basePath, 'team/invite-member-page'),\n icon: <UserPlus size={16} />,\n },\n ],\n },\n // \"Workspace\" hidden: `create-workspace-page` navigated home on submit and created\n // nothing (a false success). Workspaces are created from the shell's workspace\n // switcher, which is the platform's real flow. Route kept; page now says so.\n {\n id: 'planmagnet-analytics',\n label: tr('planmagnet.nav.analytics', 'Analytics'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n icon: <TrendingUp size={16} />,\n order: 12,\n },\n ],\n };\n return registerNavItems(navItem);\n }, [registerNavItems, basePath, tr]);\n\n useEffect(() => {\n if (!registerFooterItems) return;\n return registerFooterItems([\n {\n id: 'planmagnet-status',\n label: tr('planmagnet.footer.ready', 'PlanMagnet Ready'),\n type: 'status',\n section: 'left',\n order: 10,\n },\n ]);\n }, [registerFooterItems, tr]);\n\n return (\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <PlanMagnetProvider {...props}>\n <PlanMagnetPeople>\n <PlanMagnetRoutes />\n </PlanMagnetPeople>\n </PlanMagnetProvider>\n </FeatureFlagProvider>\n );\n};\n"],"mappings":";;;;;;;;;;;AAqDA,SAAS,EAAiB,EAAE,eAAqC;CAC/D,IAAM,EAAE,mBAAgB,GAAe;AACvC,QAAO,kBAAC,GAAD;EAAgB,aAAa,KAAe,KAAA;EAAY;EAA0B,CAAA;;AAG3F,IAAa,KAA2C,MAAU;CAChE,IAAM,EAAE,qBAAkB,wBAAqB,cAAW,QAAQ,GAC5D,IAAK,GAAO;AAkZlB,QAhZA,QAAgB;AAOT,QAyXL,QAAO,EAxXkB;GACvB,IAAI;GACJ,OAAO,EAAG,uBAAuB,aAAa;GAC9C,MAAM;GACN,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;GACnC,OAAO;GACP,OAAO;GACP,UAAU;IACR;KACE,IAAI;KACJ,OAAO,EAAG,4BAA4B,YAAY;KAClD,MAAM,EAAS,GAAU,2BAA2B;KACpD,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;KACnC,OAAO;KACR;IACD;KAEE,IAAI;KACJ,OAAO,EAAG,6BAA6B,aAAa;KACpD,MAAM,EAAS,GAAU,4BAA4B;KACrD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;KAC9B,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,uCAAuC,YAAY;OAC7D,MAAM,EAAS,GAAU,4BAA4B;OACrD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,gCAAgC,kBAAkB;OAC5D,MAAM,EAAS,GAAU,kCAAkC;OAC3D,MAAM,kBAAC,GAAD,EAAe,MAAM,IAAM,CAAA;OAClC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,mBAAmB;OAC/D,MAAM,EAAS,GAAU,mCAAmC;OAC5D,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,wCAAwC,aAAa;OAC/D,MAAM,EAAS,GAAU,6BAA6B;OACtD,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAKhD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAS,MAAM,IAAM,CAAA;KAC3B,OAAO;KACP,UAAU;MACR;OAEE,IAAI;OACJ,OAAO,EAAG,wCAAwC,gBAAgB;OAClE,MAAM,EAAS,GAAU,EAAmB;OAC5C,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,qCAAqC,oBAAoB;OACnE,MAAM,EAAS,GAAU,EAAuB;OAChD,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;OAC7B;MACD;OAME,IAAI;OACJ,OAAO,EAAG,2CAA2C,mBAAmB;OACxE,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;OACzB;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;OAC9B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;OACxB;MACD;OAGE,IAAI;OACJ,OAAO,EAAG,sCAAsC,aAAa;OAC7D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;OAC9B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,uCAAuC,cAAc;OAC/D,MAAM,EAAS,GAAU,4BAA4B;OACrD,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,0CAA0C,iBAAiB;OACrE,MAAM,EAAS,GAAU,EAAoB;OAC7C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,gDAAgD,wBAAwB;OAClF,MAAM,EAAS,GAAU,EAA2B;OACpD,MAAM,kBAAC,GAAD,EAAoB,MAAM,IAAM,CAAA;OACvC;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;KAChC,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,+BAA+B,eAAe;OACxD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,kBAAkB;OAC9D,MAAM,EAAS,GAAU,gCAAgC;OACzD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;OAC/B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,kCAAkC,iBAAiB;OAC7D,MAAM,EAAS,GAAU,+BAA+B;OACxD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,sCAAsC,aAAa;OAC7D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;OAC3B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,oCAAoC,WAAW;OACzD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;OACjC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,qCAAqC,YAAY;OAC3D,MAAM,EAAS,GAAU,2BAA2B;OACpD,MAAM,kBAAC,GAAD,EAAgB,MAAM,IAAM,CAAA;OACnC;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,wCAAwC,gBAAgB;OAClE,MAAM,EAAS,GAAU,8BAA8B;OACvD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACD;OAGE,IAAI;OACJ,OAAO,EAAG,iCAAiC,QAAQ;OACnD,MAAM,EAAS,GAAU,sBAAsB;OAC/C,MAAM,kBAAC,GAAD,EAAkB,MAAM,IAAM,CAAA;OACrC;MACD;OAEE,IAAI;OACJ,OAAO,EAAG,kCAAkC,eAAe;OAC3D,MAAM,EAAS,GAAU,wBAAwB;OACjD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACF;KACF;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAe,MAAM,IAAM,CAAA;KACjC,OAAO;KACR;IACD;KACE,IAAI;KACJ,OAAO,EAAG,wBAAwB,eAAe;KACjD,MAAM,EAAS,GAAU,mBAAmB;KAC5C,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;KACxB,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,4BAA4B,iBAAiB;MACvD,MAAM,EAAS,GAAU,mBAAmB;MAC5C,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;MACzB,EACD;MACE,IAAI;MACJ,OAAO,EAAG,+BAA+B,mBAAmB;MAC5D,MAAM,EAAS,GAAU,8BAA8B;MACvD,MAAM,kBAAC,GAAD,EAAM,MAAM,IAAM,CAAA;MACzB,CACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,wBAAwB,QAAQ;KAC1C,MAAM,EAAS,GAAU,mBAAmB;KAC5C,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;KAC/B,OAAO;KACP,UAAU;MACR;OAEE,IAAI;OACJ,OAAO,EAAG,oCAAoC,eAAe;OAC7D,MAAM,EAAS,GAAU,0BAA0B;OACnD,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;OACpC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,8BAA8B,aAAa;OACrD,MAAM,EAAS,GAAU,mBAAmB;OAC5C,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACD;OACE,IAAI;OACJ,OAAO,EAAG,+BAA+B,cAAc;OACvD,MAAM,EAAS,GAAU,yBAAyB;OAClD,MAAM,kBAAC,GAAD,EAAa,MAAM,IAAM,CAAA;OAChC;MACF;KACF;IACD;KACE,IAAI;KACJ,OAAO,EAAG,0BAA0B,UAAU;KAC9C,MAAM,EAAS,GAAU,4BAA4B;KACrD,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;KACvB,OAAO;KACR;IACD;KACE,IAAI;KACJ,OAAO,EAAG,6BAA6B,aAAa;KACpD,MAAM,EAAS,GAAU,mCAAmC;KAC5D,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;KACvB,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,mCAAmC,QAAQ;MACrD,MAAM,EAAS,GAAU,mCAAmC;MAC5D,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;MACxB,EACD;MACE,IAAI;MACJ,OAAO,EAAG,oCAAoC,WAAW;MACzD,MAAM,EAAS,GAAU,yCAAyC;MAClE,MAAM,kBAAC,GAAD,EAAK,MAAM,IAAM,CAAA;MACxB,CACF;KACF;IACD;KAGE,IAAI;KACJ,OAAO,EAAG,qBAAqB,cAAc;KAC7C,MAAM,EAAS,GAAU,eAAe;KACxC,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;KAC5B,OAAO;KACP,UAAU,CACR;MACE,IAAI;MACJ,OAAO,EAAG,0BAA0B,kBAAkB;MACtD,MAAM,EAAS,GAAU,eAAe;MACxC,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;MAC7B,EACD;MACE,IAAI;MACJ,OAAO,EAAG,8BAA8B,iBAAiB;MACzD,MAAM,EAAS,GAAU,mBAAmB;MAC5C,MAAM,kBAAC,GAAD,EAAS,MAAM,IAAM,CAAA;MAC5B,CACF;KACF;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,2BAA2B,WAAW;KAChD,MAAM,EAAS,GAAU,yBAAyB;KAClD,MAAM,kBAAC,GAAD,EAAc,MAAM,IAAM,CAAA;KAChC,OAAO;KACR;IACD;KAIE,IAAI;KACJ,OAAO,EAAG,0BAA0B,UAAU;KAC9C,MAAM,EAAS,GAAU,uBAAuB;KAChD,MAAM,kBAAC,GAAD,EAAW,MAAM,IAAM,CAAA;KAC7B,OAAO;KACR;IACD;KAKE,IAAI;KACJ,OAAO,EAAG,uBAAuB,OAAO;KACxC,MAAM,EAAS,GAAU,iBAAiB;KAC1C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;KACzB,OAAO;KACP,UAAU;MACR;OACE,IAAI;OACJ,OAAO,EAAG,6BAA6B,QAAQ;OAC/C,MAAM,EAAS,GAAU,kBAAkB;OAC3C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACD;OAKE,IAAI;OACJ,OAAO,EAAG,+BAA+B,UAAU;OACnD,MAAM,EAAS,GAAU,iBAAiB;OAC1C,MAAM,kBAAC,GAAD,EAAO,MAAM,IAAM,CAAA;OAC1B;MACD;OACE,IAAI;OACJ,OAAO,EAAG,8BAA8B,gBAAgB;OACxD,MAAM,EAAS,GAAU,0BAA0B;OACnD,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;OAC7B;MACF;KACF;IAID;KACE,IAAI;KACJ,OAAO,EAAG,4BAA4B,YAAY;KAClD,MAAM,EAAS,GAAU,2BAA2B;KACpD,MAAM,kBAAC,GAAD,EAAY,MAAM,IAAM,CAAA;KAC9B,OAAO;KACR;IACF;GACF,CAC+B;IAC/B;EAAC;EAAkB;EAAU;EAAG,CAAC,EAEpC,QAAgB;AACT,QACL,QAAO,EAAoB,CACzB;GACE,IAAI;GACJ,OAAO,EAAG,2BAA2B,mBAAmB;GACxD,MAAM;GACN,SAAS;GACT,OAAO;GACR,CACF,CAAC;IACD,CAAC,GAAqB,EAAG,CAAC,EAG3B,kBAAC,GAAD;EAAqB,aAAa;EAAM,SAAQ;EAAS,gBAAgB;YACvE,kBAAC,GAAD;GAAoB,GAAI;aACtB,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD,EAAoB,CAAA,EACH,CAAA;GACA,CAAA;EACD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"PlanMagnetRoutes.d.ts","sourceRoot":"","sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"names":[],"mappings":"AAidA,wBAAgB,gBAAgB,4CAkR/B"}
1
+ {"version":3,"file":"PlanMagnetRoutes.d.ts","sourceRoot":"","sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"names":[],"mappings":"AAudA,wBAAgB,gBAAgB,4CAuR/B"}
@@ -4,16 +4,16 @@ import { Loader2 as te } from "lucide-react";
4
4
  import { Route as n, Routes as ne } from "react-router";
5
5
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
6
6
  //#region src/planmagnet/PlanMagnetRoutes.tsx
7
- var a = t(() => import("./pages/NotFoundPage.js").then((e) => ({ default: e.PlanMagnetNotFoundPage }))), o = t(() => import("./pages/DocsDocsPagePage.js").then((e) => ({ default: e.DocsDocsPagePage }))), s = t(() => import("./pages/DocsDocDetailPagePage.js").then((e) => ({ default: e.DocsDocDetailPagePage }))), c = t(() => import("./pages/DashboardDashboardPagePage.js").then((e) => ({ default: e.DashboardDashboardPagePage }))), re = t(() => import("./pages/ProductsCreateProductPagePage.js").then((e) => ({ default: e.ProductsCreateProductPagePage }))), ie = t(() => import("./pages/ProductsCreateRoadmapPagePage.js").then((e) => ({ default: e.ProductsCreateRoadmapPagePage }))), l = t(() => import("./pages/ProductsEditProductPagePage.js").then((e) => ({ default: e.ProductsEditProductPagePage }))), u = t(() => import("./pages/ProductsEditRoadmapPagePage.js").then((e) => ({ default: e.ProductsEditRoadmapPagePage }))), d = t(() => import("./pages/ProductsEditReleasePagePage.js").then((e) => ({ default: e.ProductsEditReleasePagePage }))), f = t(() => import("./pages/ProductsFeatureAnalyticsPagePage.js").then((e) => ({ default: e.ProductsFeatureAnalyticsPagePage }))), p = t(() => import("./pages/ProductsFeatureDetailPagePage.js").then((e) => ({ default: e.ProductsFeatureDetailPagePage }))), ae = t(() => import("./pages/ProductsFeaturesPagePage.js").then((e) => ({ default: e.ProductsFeaturesPagePage }))), oe = t(() => import("./pages/ProductsNewFeaturePagePage.js").then((e) => ({ default: e.ProductsNewFeaturePagePage }))), m = t(() => import("./pages/ProductsProductDetailPagePage.js").then((e) => ({ default: e.ProductsProductDetailPagePage }))), se = t(() => import("./pages/ProductsProductsPagePage.js").then((e) => ({ default: e.ProductsProductsPagePage }))), h = t(() => import("./pages/ProductsReleaseDetailPagePage.js").then((e) => ({ default: e.ProductsReleaseDetailPagePage }))), ce = t(() => import("./pages/ProductsReleasesPagePage.js").then((e) => ({ default: e.ProductsReleasesPagePage }))), g = t(() => import("./pages/ProductsRoadmapAnalyticsPagePage.js").then((e) => ({ default: e.ProductsRoadmapAnalyticsPagePage }))), _ = t(() => import("./pages/ProductsRoadmapDetailPagePage.js").then((e) => ({ default: e.ProductsRoadmapDetailPagePage }))), le = t(() => import("./pages/ProductsRoadmapsPagePage.js").then((e) => ({ default: e.ProductsRoadmapsPagePage }))), ue = t(() => import("./pages/PortfoliosPortfoliosPagePage.js").then((e) => ({ default: e.PortfoliosPortfoliosPagePage }))), de = t(() => import("./pages/PortfoliosCreatePortfolioPagePage.js").then((e) => ({ default: e.PortfoliosCreatePortfolioPagePage }))), fe = t(() => import("./pages/PortfoliosPortfolioDetailPagePage.js").then((e) => ({ default: e.PortfoliosPortfolioDetailPagePage }))), pe = t(() => import("./pages/PortfoliosEditPortfolioPagePage.js").then((e) => ({ default: e.PortfoliosEditPortfolioPagePage }))), me = t(() => import("./pages/ProgramsProgramsPagePage.js").then((e) => ({ default: e.ProgramsProgramsPagePage }))), v = t(() => import("./pages/ProgramsCreateProgramPagePage.js").then((e) => ({ default: e.ProgramsCreateProgramPagePage }))), y = t(() => import("./pages/ProgramsProgramDetailPagePage.js").then((e) => ({ default: e.ProgramsProgramDetailPagePage }))), b = t(() => import("./pages/ProgramsEditProgramPagePage.js").then((e) => ({ default: e.ProgramsEditProgramPagePage }))), x = t(() => import("./pages/CompetitorsCompetitorsPagePage.js").then((e) => ({ default: e.CompetitorsCompetitorsPagePage }))), S = t(() => import("./pages/CompetitorsCreateCompetitorPagePage.js").then((e) => ({ default: e.CompetitorsCreateCompetitorPagePage }))), C = t(() => import("./pages/CompetitorsCompetitorDetailPagePage.js").then((e) => ({ default: e.CompetitorsCompetitorDetailPagePage }))), w = t(() => import("./pages/CompetitorsEditCompetitorPagePage.js").then((e) => ({ default: e.CompetitorsEditCompetitorPagePage }))), T = t(() => import("./pages/ProductsPrioritizationPagePage.js").then((e) => ({ default: e.ProductsPrioritizationPagePage }))), E = t(() => import("./pages/ProductsProductLinesPagePage.js").then((e) => ({ default: e.ProductsProductLinesPagePage }))), D = t(() => import("./pages/ProductsProductHierarchyPagePage.js").then((e) => ({ default: e.ProductsProductHierarchyPagePage }))), O = t(() => import("./pages/ProductsProductFeatureDetailPagePage.js").then((e) => ({ default: e.ProductsProductFeatureDetailPagePage }))), k = t(() => import("./pages/ProjectsActiveProjectsPagePage.js").then((e) => ({ default: e.ProjectsActiveProjectsPagePage }))), A = t(() => import("./pages/ProjectsCreateProjectPagePage.js").then((e) => ({ default: e.ProjectsCreateProjectPagePage }))), j = t(() => import("./pages/ProjectsEditProjectPagePage.js").then((e) => ({ default: e.ProjectsEditProjectPagePage }))), M = t(() => import("./pages/ProjectsMilestoneDetailPagePage.js").then((e) => ({ default: e.ProjectsMilestoneDetailPagePage }))), N = t(() => import("./pages/ProjectsBudgetsPagePage.js").then((e) => ({ default: e.ProjectsBudgetsPagePage }))), P = t(() => import("./pages/ProjectsBudgetDetailPagePage.js").then((e) => ({ default: e.ProjectsBudgetDetailPagePage }))), F = t(() => import("./pages/TasksTimeEntriesPagePage.js").then((e) => ({ default: e.TasksTimeEntriesPagePage }))), I = t(() => import("./pages/TasksTimesheetsPagePage.js").then((e) => ({ default: e.TasksTimesheetsPagePage }))), L = t(() => import("./pages/TasksTimesheetDetailPagePage.js").then((e) => ({ default: e.TasksTimesheetDetailPagePage }))), R = t(() => import("./pages/GoalsGoalsPagePage.js").then((e) => ({ default: e.GoalsGoalsPagePage }))), z = t(() => import("./pages/GoalsCreateObjectivePagePage.js").then((e) => ({ default: e.GoalsCreateObjectivePagePage }))), he = t(() => import("./pages/GoalsObjectiveDetailPagePage.js").then((e) => ({ default: e.GoalsObjectiveDetailPagePage }))), ge = t(() => import("./pages/ProjectsMilestonesPagePage.js").then((e) => ({ default: e.ProjectsMilestonesPagePage }))), B = t(() => import("./pages/ProjectsPlanningDetailPagePage.js").then((e) => ({ default: e.ProjectsPlanningDetailPagePage }))), V = t(() => import("./pages/ProjectsPlanningEditPagePage.js").then((e) => ({ default: e.ProjectsPlanningEditPagePage }))), _e = t(() => import("./pages/ProjectsPlanningPagePage.js").then((e) => ({ default: e.ProjectsPlanningPagePage }))), H = t(() => import("./pages/ProjectsProjectDetailPagePage.js").then((e) => ({ default: e.ProjectsProjectDetailPagePage }))), ve = t(() => import("./pages/ProjectsProjectsPagePage.js").then((e) => ({ default: e.ProjectsProjectsPagePage }))), ye = t(() => import("./pages/ReportsCreateReportPagePage.js").then((e) => ({ default: e.ReportsCreateReportPagePage }))), be = t(() => import("./pages/ReportsReportsPagePage.js").then((e) => ({ default: e.ReportsReportsPagePage }))), U = t(() => import("./pages/ReportsEditReportPagePage.js").then((e) => ({ default: e.ReportsEditReportPagePage }))), W = t(() => import("./pages/ReportsReportPagePage.js").then((e) => ({ default: e.ReportsReportPagePage }))), xe = t(() => import("./pages/SprintsStartSprintPagePage.js").then((e) => ({ default: e.SprintsStartSprintPagePage }))), Se = t(() => import("./pages/TasksCreateTaskPagePage.js").then((e) => ({ default: e.TasksCreateTaskPagePage }))), Ce = t(() => import("./pages/TasksEditTaskPagePage.js").then((e) => ({ default: e.TasksEditTaskPagePage }))), we = t(() => import("./pages/ProjectsWorkflowPagePage.js").then((e) => ({ default: e.ProjectsWorkflowPagePage }))), Te = t(() => import("./pages/ProjectsCustomFieldsPagePage.js").then((e) => ({ default: e.ProjectsCustomFieldsPagePage }))), Ee = t(() => import("./pages/TasksImportPagePage.js").then((e) => ({ default: e.TasksImportPagePage }))), De = t(() => import("./pages/TasksTaskDetailPagePage.js").then((e) => ({ default: e.TasksTaskDetailPagePage }))), Oe = t(() => import("./pages/TasksTasksPagePage.js").then((e) => ({ default: e.TasksTasksPagePage }))), ke = t(() => import("./pages/TasksMyWorkPagePage.js").then((e) => ({ default: e.TasksMyWorkPagePage }))), Ae = t(() => import("./pages/TasksMyDashboardPagePage.js").then((e) => ({ default: e.TasksMyDashboardPagePage }))), je = t(() => import("./pages/TeamCreateTeamPagePage.js").then((e) => ({ default: e.TeamCreateTeamPagePage }))), Me = t(() => import("./pages/TeamInviteMemberPagePage.js").then((e) => ({ default: e.TeamInviteMemberPagePage }))), Ne = t(() => import("./pages/TeamTeamPagePage.js").then((e) => ({ default: e.TeamTeamPagePage }))), Pe = t(() => import("./pages/TeamTeamsListPagePage.js").then((e) => ({ default: e.TeamTeamsListPagePage }))), G = t(() => import("./pages/TeamTeamDetailPagePage.js").then((e) => ({ default: e.TeamTeamDetailPagePage }))), K = t(() => import("./pages/TeamTeamEditPagePage.js").then((e) => ({ default: e.TeamTeamEditPagePage }))), Fe = t(() => import("./pages/WorkspaceCreateWorkspacePagePage.js").then((e) => ({ default: e.WorkspaceCreateWorkspacePagePage }))), Ie = t(() => import("./pages/AutomationAutomationRulesPagePage.js").then((e) => ({ default: e.AutomationAutomationRulesPagePage }))), Le = t(() => import("./pages/AutomationCreateAutomationRulePagePage.js").then((e) => ({ default: e.AutomationCreateAutomationRulePagePage }))), q = t(() => import("./pages/AutomationAutomationRuleDetailPagePage.js").then((e) => ({ default: e.AutomationAutomationRuleDetailPagePage }))), Re = t(() => import("./pages/TemplatesTemplatesPagePage.js").then((e) => ({ default: e.TemplatesTemplatesPagePage }))), J = t(() => import("./pages/TemplatesEditTemplatePagePage.js").then((e) => ({ default: e.TemplatesEditTemplatePagePage }))), ze = t(() => import("./pages/RisksRiskRegisterPagePage.js").then((e) => ({ default: e.RisksRiskRegisterPagePage }))), Y = t(() => import("./pages/RisksRiskDetailPagePage.js").then((e) => ({ default: e.RisksRiskDetailPagePage }))), X = t(() => import("./pages/ProjectsCriticalPathPagePage.js").then((e) => ({ default: e.ProjectsCriticalPathPagePage }))), Z = t(() => import("./pages/ProjectsGanttPagePage.js").then((e) => ({ default: e.ProjectsGanttPagePage }))), Be = t(() => import("./pages/ProjectsQualityGatesPagePage.js").then((e) => ({ default: e.ProjectsQualityGatesPagePage }))), Ve = t(() => import("./pages/ProjectsAtRiskPagePage.js").then((e) => ({ default: e.ProjectsAtRiskPagePage }))), He = t(() => import("./pages/AiPlanPagePage.js").then((e) => ({ default: e.AiPlanPagePage }))), Ue = t(() => import("./pages/AiActivityPagePage.js").then((e) => ({ default: e.AiActivityPagePage }))), We = t(() => import("./pages/ActivityActivityPagePage.js").then((e) => ({ default: e.ActivityActivityPagePage }))), Ge = t(() => import("./pages/DashboardsExecutivePagePage.js").then((e) => ({ default: e.DashboardsExecutivePagePage }))), Q = t(() => import("./pages/DashboardsProjectManagerPagePage.js").then((e) => ({ default: e.DashboardsProjectManagerPagePage }))), Ke = t(() => import("./pages/DashboardsTeamUtilizationPagePage.js").then((e) => ({ default: e.DashboardsTeamUtilizationPagePage }))), qe = t(() => import("./pages/DashboardsLeadershipPagePage.js").then((e) => ({ default: e.DashboardsLeadershipPagePage }))), Je = t(() => import("./pages/IntegrationsSyncsPagePage.js").then((e) => ({ default: e.IntegrationsSyncsPagePage }))), Ye = t(() => import("./pages/IntegrationsNewSyncPagePage.js").then((e) => ({ default: e.IntegrationsNewSyncPagePage }))), Xe = t(() => import("./pages/IntegrationsSyncDetailPagePage.js").then((e) => ({ default: e.IntegrationsSyncDetailPagePage }))), Ze = t(() => import("./pages/IntegrationsWebhooksPagePage.js").then((e) => ({ default: e.IntegrationsWebhooksPagePage }))), Qe = t(() => import("./pages/MeetingsMeetingsPagePage.js").then((e) => ({ default: e.MeetingsMeetingsPagePage }))), $ = t(() => import("./pages/MeetingsMeetingDetailPagePage.js").then((e) => ({ default: e.MeetingsMeetingDetailPagePage })));
8
- function $e() {
7
+ var a = t(() => import("./pages/NotFoundPage.js").then((e) => ({ default: e.PlanMagnetNotFoundPage }))), o = t(() => import("./pages/DocsDocsPagePage.js").then((e) => ({ default: e.DocsDocsPagePage }))), s = t(() => import("./pages/DocsDocDetailPagePage.js").then((e) => ({ default: e.DocsDocDetailPagePage }))), c = t(() => import("./pages/DashboardDashboardPagePage.js").then((e) => ({ default: e.DashboardDashboardPagePage }))), re = t(() => import("./pages/ProductsCreateProductPagePage.js").then((e) => ({ default: e.ProductsCreateProductPagePage }))), ie = t(() => import("./pages/ProductsCreateRoadmapPagePage.js").then((e) => ({ default: e.ProductsCreateRoadmapPagePage }))), l = t(() => import("./pages/ProductsEditProductPagePage.js").then((e) => ({ default: e.ProductsEditProductPagePage }))), u = t(() => import("./pages/ProductsEditRoadmapPagePage.js").then((e) => ({ default: e.ProductsEditRoadmapPagePage }))), d = t(() => import("./pages/ProductsEditReleasePagePage.js").then((e) => ({ default: e.ProductsEditReleasePagePage }))), f = t(() => import("./pages/ProductsFeatureAnalyticsPagePage.js").then((e) => ({ default: e.ProductsFeatureAnalyticsPagePage }))), p = t(() => import("./pages/ProductsFeatureDetailPagePage.js").then((e) => ({ default: e.ProductsFeatureDetailPagePage }))), ae = t(() => import("./pages/ProductsFeaturesPagePage.js").then((e) => ({ default: e.ProductsFeaturesPagePage }))), oe = t(() => import("./pages/ProductsNewFeaturePagePage.js").then((e) => ({ default: e.ProductsNewFeaturePagePage }))), m = t(() => import("./pages/ProductsProductDetailPagePage.js").then((e) => ({ default: e.ProductsProductDetailPagePage }))), se = t(() => import("./pages/ProductsProductsPagePage.js").then((e) => ({ default: e.ProductsProductsPagePage }))), h = t(() => import("./pages/ProductsReleaseDetailPagePage.js").then((e) => ({ default: e.ProductsReleaseDetailPagePage }))), ce = t(() => import("./pages/ProductsReleasesPagePage.js").then((e) => ({ default: e.ProductsReleasesPagePage }))), g = t(() => import("./pages/ProductsRoadmapAnalyticsPagePage.js").then((e) => ({ default: e.ProductsRoadmapAnalyticsPagePage }))), _ = t(() => import("./pages/ProductsRoadmapDetailPagePage.js").then((e) => ({ default: e.ProductsRoadmapDetailPagePage }))), le = t(() => import("./pages/ProductsRoadmapsPagePage.js").then((e) => ({ default: e.ProductsRoadmapsPagePage }))), ue = t(() => import("./pages/PortfoliosPortfoliosPagePage.js").then((e) => ({ default: e.PortfoliosPortfoliosPagePage }))), de = t(() => import("./pages/PortfoliosCreatePortfolioPagePage.js").then((e) => ({ default: e.PortfoliosCreatePortfolioPagePage }))), fe = t(() => import("./pages/PortfoliosPortfolioDetailPagePage.js").then((e) => ({ default: e.PortfoliosPortfolioDetailPagePage }))), pe = t(() => import("./pages/PortfoliosEditPortfolioPagePage.js").then((e) => ({ default: e.PortfoliosEditPortfolioPagePage }))), me = t(() => import("./pages/ProgramsProgramsPagePage.js").then((e) => ({ default: e.ProgramsProgramsPagePage }))), v = t(() => import("./pages/ProgramsCreateProgramPagePage.js").then((e) => ({ default: e.ProgramsCreateProgramPagePage }))), y = t(() => import("./pages/ProgramsProgramDetailPagePage.js").then((e) => ({ default: e.ProgramsProgramDetailPagePage }))), b = t(() => import("./pages/ProgramsEditProgramPagePage.js").then((e) => ({ default: e.ProgramsEditProgramPagePage }))), x = t(() => import("./pages/CompetitorsCompetitorsPagePage.js").then((e) => ({ default: e.CompetitorsCompetitorsPagePage }))), S = t(() => import("./pages/CompetitorsCreateCompetitorPagePage.js").then((e) => ({ default: e.CompetitorsCreateCompetitorPagePage }))), C = t(() => import("./pages/CompetitorsCompetitorDetailPagePage.js").then((e) => ({ default: e.CompetitorsCompetitorDetailPagePage }))), w = t(() => import("./pages/CompetitorsEditCompetitorPagePage.js").then((e) => ({ default: e.CompetitorsEditCompetitorPagePage }))), T = t(() => import("./pages/ProductsPrioritizationPagePage.js").then((e) => ({ default: e.ProductsPrioritizationPagePage }))), E = t(() => import("./pages/ProductsProductLinesPagePage.js").then((e) => ({ default: e.ProductsProductLinesPagePage }))), D = t(() => import("./pages/ProductsProductHierarchyPagePage.js").then((e) => ({ default: e.ProductsProductHierarchyPagePage }))), O = t(() => import("./pages/ProductsCustomerSatisfactionPagePage.js").then((e) => ({ default: e.ProductsCustomerSatisfactionPagePage }))), k = t(() => import("./pages/ProductsProductFeatureDetailPagePage.js").then((e) => ({ default: e.ProductsProductFeatureDetailPagePage }))), A = t(() => import("./pages/ProjectsActiveProjectsPagePage.js").then((e) => ({ default: e.ProjectsActiveProjectsPagePage }))), j = t(() => import("./pages/ProjectsCreateProjectPagePage.js").then((e) => ({ default: e.ProjectsCreateProjectPagePage }))), M = t(() => import("./pages/ProjectsEditProjectPagePage.js").then((e) => ({ default: e.ProjectsEditProjectPagePage }))), N = t(() => import("./pages/ProjectsMilestoneDetailPagePage.js").then((e) => ({ default: e.ProjectsMilestoneDetailPagePage }))), P = t(() => import("./pages/ProjectsBudgetsPagePage.js").then((e) => ({ default: e.ProjectsBudgetsPagePage }))), F = t(() => import("./pages/ProjectsBudgetDetailPagePage.js").then((e) => ({ default: e.ProjectsBudgetDetailPagePage }))), I = t(() => import("./pages/TasksTimeEntriesPagePage.js").then((e) => ({ default: e.TasksTimeEntriesPagePage }))), L = t(() => import("./pages/TasksTimesheetsPagePage.js").then((e) => ({ default: e.TasksTimesheetsPagePage }))), R = t(() => import("./pages/TasksTimesheetDetailPagePage.js").then((e) => ({ default: e.TasksTimesheetDetailPagePage }))), z = t(() => import("./pages/GoalsGoalsPagePage.js").then((e) => ({ default: e.GoalsGoalsPagePage }))), he = t(() => import("./pages/GoalsCreateObjectivePagePage.js").then((e) => ({ default: e.GoalsCreateObjectivePagePage }))), ge = t(() => import("./pages/GoalsObjectiveDetailPagePage.js").then((e) => ({ default: e.GoalsObjectiveDetailPagePage }))), _e = t(() => import("./pages/ProjectsMilestonesPagePage.js").then((e) => ({ default: e.ProjectsMilestonesPagePage }))), B = t(() => import("./pages/ProjectsPlanningDetailPagePage.js").then((e) => ({ default: e.ProjectsPlanningDetailPagePage }))), V = t(() => import("./pages/ProjectsPlanningEditPagePage.js").then((e) => ({ default: e.ProjectsPlanningEditPagePage }))), ve = t(() => import("./pages/ProjectsPlanningPagePage.js").then((e) => ({ default: e.ProjectsPlanningPagePage }))), H = t(() => import("./pages/ProjectsProjectDetailPagePage.js").then((e) => ({ default: e.ProjectsProjectDetailPagePage }))), ye = t(() => import("./pages/ProjectsProjectsPagePage.js").then((e) => ({ default: e.ProjectsProjectsPagePage }))), be = t(() => import("./pages/ReportsCreateReportPagePage.js").then((e) => ({ default: e.ReportsCreateReportPagePage }))), xe = t(() => import("./pages/ReportsReportsPagePage.js").then((e) => ({ default: e.ReportsReportsPagePage }))), U = t(() => import("./pages/ReportsEditReportPagePage.js").then((e) => ({ default: e.ReportsEditReportPagePage }))), W = t(() => import("./pages/ReportsReportPagePage.js").then((e) => ({ default: e.ReportsReportPagePage }))), Se = t(() => import("./pages/SprintsStartSprintPagePage.js").then((e) => ({ default: e.SprintsStartSprintPagePage }))), Ce = t(() => import("./pages/TasksCreateTaskPagePage.js").then((e) => ({ default: e.TasksCreateTaskPagePage }))), we = t(() => import("./pages/TasksEditTaskPagePage.js").then((e) => ({ default: e.TasksEditTaskPagePage }))), Te = t(() => import("./pages/ProjectsWorkflowPagePage.js").then((e) => ({ default: e.ProjectsWorkflowPagePage }))), Ee = t(() => import("./pages/ProjectsCustomFieldsPagePage.js").then((e) => ({ default: e.ProjectsCustomFieldsPagePage }))), De = t(() => import("./pages/TasksImportPagePage.js").then((e) => ({ default: e.TasksImportPagePage }))), Oe = t(() => import("./pages/TasksTaskDetailPagePage.js").then((e) => ({ default: e.TasksTaskDetailPagePage }))), ke = t(() => import("./pages/TasksTasksPagePage.js").then((e) => ({ default: e.TasksTasksPagePage }))), Ae = t(() => import("./pages/TasksMyWorkPagePage.js").then((e) => ({ default: e.TasksMyWorkPagePage }))), je = t(() => import("./pages/TasksMyDashboardPagePage.js").then((e) => ({ default: e.TasksMyDashboardPagePage }))), Me = t(() => import("./pages/TeamCreateTeamPagePage.js").then((e) => ({ default: e.TeamCreateTeamPagePage }))), Ne = t(() => import("./pages/TeamInviteMemberPagePage.js").then((e) => ({ default: e.TeamInviteMemberPagePage }))), Pe = t(() => import("./pages/TeamTeamPagePage.js").then((e) => ({ default: e.TeamTeamPagePage }))), Fe = t(() => import("./pages/TeamTeamsListPagePage.js").then((e) => ({ default: e.TeamTeamsListPagePage }))), G = t(() => import("./pages/TeamTeamDetailPagePage.js").then((e) => ({ default: e.TeamTeamDetailPagePage }))), K = t(() => import("./pages/TeamTeamEditPagePage.js").then((e) => ({ default: e.TeamTeamEditPagePage }))), Ie = t(() => import("./pages/WorkspaceCreateWorkspacePagePage.js").then((e) => ({ default: e.WorkspaceCreateWorkspacePagePage }))), Le = t(() => import("./pages/AutomationAutomationRulesPagePage.js").then((e) => ({ default: e.AutomationAutomationRulesPagePage }))), Re = t(() => import("./pages/AutomationCreateAutomationRulePagePage.js").then((e) => ({ default: e.AutomationCreateAutomationRulePagePage }))), q = t(() => import("./pages/AutomationAutomationRuleDetailPagePage.js").then((e) => ({ default: e.AutomationAutomationRuleDetailPagePage }))), ze = t(() => import("./pages/TemplatesTemplatesPagePage.js").then((e) => ({ default: e.TemplatesTemplatesPagePage }))), J = t(() => import("./pages/TemplatesEditTemplatePagePage.js").then((e) => ({ default: e.TemplatesEditTemplatePagePage }))), Be = t(() => import("./pages/RisksRiskRegisterPagePage.js").then((e) => ({ default: e.RisksRiskRegisterPagePage }))), Y = t(() => import("./pages/RisksRiskDetailPagePage.js").then((e) => ({ default: e.RisksRiskDetailPagePage }))), X = t(() => import("./pages/ProjectsCriticalPathPagePage.js").then((e) => ({ default: e.ProjectsCriticalPathPagePage }))), Z = t(() => import("./pages/ProjectsGanttPagePage.js").then((e) => ({ default: e.ProjectsGanttPagePage }))), Ve = t(() => import("./pages/ProjectsQualityGatesPagePage.js").then((e) => ({ default: e.ProjectsQualityGatesPagePage }))), He = t(() => import("./pages/ProjectsAtRiskPagePage.js").then((e) => ({ default: e.ProjectsAtRiskPagePage }))), Ue = t(() => import("./pages/AiPlanPagePage.js").then((e) => ({ default: e.AiPlanPagePage }))), We = t(() => import("./pages/AiActivityPagePage.js").then((e) => ({ default: e.AiActivityPagePage }))), Ge = t(() => import("./pages/ActivityActivityPagePage.js").then((e) => ({ default: e.ActivityActivityPagePage }))), Q = t(() => import("./pages/DashboardsExecutivePagePage.js").then((e) => ({ default: e.DashboardsExecutivePagePage }))), Ke = t(() => import("./pages/DashboardsProjectManagerPagePage.js").then((e) => ({ default: e.DashboardsProjectManagerPagePage }))), qe = t(() => import("./pages/DashboardsTeamUtilizationPagePage.js").then((e) => ({ default: e.DashboardsTeamUtilizationPagePage }))), Je = t(() => import("./pages/DashboardsLeadershipPagePage.js").then((e) => ({ default: e.DashboardsLeadershipPagePage }))), Ye = t(() => import("./pages/IntegrationsSyncsPagePage.js").then((e) => ({ default: e.IntegrationsSyncsPagePage }))), Xe = t(() => import("./pages/IntegrationsNewSyncPagePage.js").then((e) => ({ default: e.IntegrationsNewSyncPagePage }))), Ze = t(() => import("./pages/IntegrationsSyncDetailPagePage.js").then((e) => ({ default: e.IntegrationsSyncDetailPagePage }))), Qe = t(() => import("./pages/IntegrationsWebhooksPagePage.js").then((e) => ({ default: e.IntegrationsWebhooksPagePage }))), $e = t(() => import("./pages/MeetingsMeetingsPagePage.js").then((e) => ({ default: e.MeetingsMeetingsPagePage }))), $ = t(() => import("./pages/MeetingsMeetingDetailPagePage.js").then((e) => ({ default: e.MeetingsMeetingDetailPagePage })));
8
+ function et() {
9
9
  return /* @__PURE__ */ r("div", {
10
10
  className: "flex min-h-[320px] items-center justify-center",
11
11
  children: /* @__PURE__ */ r(te, { className: "h-8 w-8 animate-spin text-primary" })
12
12
  });
13
13
  }
14
- function et() {
14
+ function tt() {
15
15
  return /* @__PURE__ */ r(ee, {
16
- fallback: /* @__PURE__ */ r($e, {}),
16
+ fallback: /* @__PURE__ */ r(et, {}),
17
17
  children: /* @__PURE__ */ i(ne, { children: [
18
18
  /* @__PURE__ */ r(n, {
19
19
  index: !0,
@@ -185,27 +185,31 @@ function et() {
185
185
  }),
186
186
  /* @__PURE__ */ r(n, {
187
187
  path: "products/product-feature-detail-page/:id",
188
+ element: /* @__PURE__ */ r(k, {})
189
+ }),
190
+ /* @__PURE__ */ r(n, {
191
+ path: "products/customer-satisfaction-page",
188
192
  element: /* @__PURE__ */ r(O, {})
189
193
  }),
190
194
  /* @__PURE__ */ r(n, {
191
195
  path: "projects/projects-page",
192
- element: /* @__PURE__ */ r(ve, {})
196
+ element: /* @__PURE__ */ r(ye, {})
193
197
  }),
194
198
  /* @__PURE__ */ r(n, {
195
199
  path: "projects/active-projects-page",
196
- element: /* @__PURE__ */ r(k, {})
200
+ element: /* @__PURE__ */ r(A, {})
197
201
  }),
198
202
  /* @__PURE__ */ r(n, {
199
203
  path: "projects/create-project-page",
200
- element: /* @__PURE__ */ r(A, {})
204
+ element: /* @__PURE__ */ r(j, {})
201
205
  }),
202
206
  /* @__PURE__ */ r(n, {
203
207
  path: "projects/edit-project-page",
204
- element: /* @__PURE__ */ r(j, {})
208
+ element: /* @__PURE__ */ r(M, {})
205
209
  }),
206
210
  /* @__PURE__ */ r(n, {
207
211
  path: "projects/edit-project-page/:id",
208
- element: /* @__PURE__ */ r(j, {})
212
+ element: /* @__PURE__ */ r(M, {})
209
213
  }),
210
214
  /* @__PURE__ */ r(n, {
211
215
  path: "projects/project-detail-page",
@@ -217,27 +221,27 @@ function et() {
217
221
  }),
218
222
  /* @__PURE__ */ r(n, {
219
223
  path: "projects/project-workflow-page/:id",
220
- element: /* @__PURE__ */ r(we, {})
224
+ element: /* @__PURE__ */ r(Te, {})
221
225
  }),
222
226
  /* @__PURE__ */ r(n, {
223
227
  path: "projects/project-custom-fields-page/:id",
224
- element: /* @__PURE__ */ r(Te, {})
228
+ element: /* @__PURE__ */ r(Ee, {})
225
229
  }),
226
230
  /* @__PURE__ */ r(n, {
227
231
  path: "projects/milestones-page",
228
- element: /* @__PURE__ */ r(ge, {})
232
+ element: /* @__PURE__ */ r(_e, {})
229
233
  }),
230
234
  /* @__PURE__ */ r(n, {
231
235
  path: "projects/milestone-detail-page",
232
- element: /* @__PURE__ */ r(M, {})
236
+ element: /* @__PURE__ */ r(N, {})
233
237
  }),
234
238
  /* @__PURE__ */ r(n, {
235
239
  path: "projects/milestone-detail-page/:id",
236
- element: /* @__PURE__ */ r(M, {})
240
+ element: /* @__PURE__ */ r(N, {})
237
241
  }),
238
242
  /* @__PURE__ */ r(n, {
239
243
  path: "projects/planning-page",
240
- element: /* @__PURE__ */ r(_e, {})
244
+ element: /* @__PURE__ */ r(ve, {})
241
245
  }),
242
246
  /* @__PURE__ */ r(n, {
243
247
  path: "projects/planning-detail-page",
@@ -257,15 +261,15 @@ function et() {
257
261
  }),
258
262
  /* @__PURE__ */ r(n, {
259
263
  path: "projects/budgets-page",
260
- element: /* @__PURE__ */ r(N, {})
264
+ element: /* @__PURE__ */ r(P, {})
261
265
  }),
262
266
  /* @__PURE__ */ r(n, {
263
267
  path: "projects/budget-detail-page",
264
- element: /* @__PURE__ */ r(P, {})
268
+ element: /* @__PURE__ */ r(F, {})
265
269
  }),
266
270
  /* @__PURE__ */ r(n, {
267
271
  path: "projects/budget-detail-page/:id",
268
- element: /* @__PURE__ */ r(P, {})
272
+ element: /* @__PURE__ */ r(F, {})
269
273
  }),
270
274
  /* @__PURE__ */ r(n, {
271
275
  path: "projects/critical-path-page",
@@ -285,75 +289,75 @@ function et() {
285
289
  }),
286
290
  /* @__PURE__ */ r(n, {
287
291
  path: "projects/quality-gates-page",
288
- element: /* @__PURE__ */ r(Be, {})
292
+ element: /* @__PURE__ */ r(Ve, {})
289
293
  }),
290
294
  /* @__PURE__ */ r(n, {
291
295
  path: "projects/at-risk-page",
292
- element: /* @__PURE__ */ r(Ve, {})
296
+ element: /* @__PURE__ */ r(He, {})
293
297
  }),
294
298
  /* @__PURE__ */ r(n, {
295
299
  path: "goals/goals-page",
296
- element: /* @__PURE__ */ r(R, {})
300
+ element: /* @__PURE__ */ r(z, {})
297
301
  }),
298
302
  /* @__PURE__ */ r(n, {
299
303
  path: "goals/create-objective-page",
300
- element: /* @__PURE__ */ r(z, {})
304
+ element: /* @__PURE__ */ r(he, {})
301
305
  }),
302
306
  /* @__PURE__ */ r(n, {
303
307
  path: "goals/objective-detail-page",
304
- element: /* @__PURE__ */ r(he, {})
308
+ element: /* @__PURE__ */ r(ge, {})
305
309
  }),
306
310
  /* @__PURE__ */ r(n, {
307
311
  path: "tasks/my-work-page",
308
- element: /* @__PURE__ */ r(ke, {})
312
+ element: /* @__PURE__ */ r(Ae, {})
309
313
  }),
310
314
  /* @__PURE__ */ r(n, {
311
315
  path: "tasks/my-dashboard-page",
312
- element: /* @__PURE__ */ r(Ae, {})
316
+ element: /* @__PURE__ */ r(je, {})
313
317
  }),
314
318
  /* @__PURE__ */ r(n, {
315
319
  path: "tasks/tasks-page",
316
- element: /* @__PURE__ */ r(Oe, {})
320
+ element: /* @__PURE__ */ r(ke, {})
317
321
  }),
318
322
  /* @__PURE__ */ r(n, {
319
323
  path: "tasks/create-task-page",
320
- element: /* @__PURE__ */ r(Se, {})
324
+ element: /* @__PURE__ */ r(Ce, {})
321
325
  }),
322
326
  /* @__PURE__ */ r(n, {
323
327
  path: "tasks/edit-task-page",
324
- element: /* @__PURE__ */ r(Ce, {})
328
+ element: /* @__PURE__ */ r(we, {})
325
329
  }),
326
330
  /* @__PURE__ */ r(n, {
327
331
  path: "tasks/task-detail-page",
328
- element: /* @__PURE__ */ r(De, {})
332
+ element: /* @__PURE__ */ r(Oe, {})
329
333
  }),
330
334
  /* @__PURE__ */ r(n, {
331
335
  path: "tasks/import-page",
332
- element: /* @__PURE__ */ r(Ee, {})
336
+ element: /* @__PURE__ */ r(De, {})
333
337
  }),
334
338
  /* @__PURE__ */ r(n, {
335
339
  path: "tasks/time-entries-page",
336
- element: /* @__PURE__ */ r(F, {})
340
+ element: /* @__PURE__ */ r(I, {})
337
341
  }),
338
342
  /* @__PURE__ */ r(n, {
339
343
  path: "tasks/timesheets-page",
340
- element: /* @__PURE__ */ r(I, {})
344
+ element: /* @__PURE__ */ r(L, {})
341
345
  }),
342
346
  /* @__PURE__ */ r(n, {
343
347
  path: "tasks/timesheet-detail-page",
344
- element: /* @__PURE__ */ r(L, {})
348
+ element: /* @__PURE__ */ r(R, {})
345
349
  }),
346
350
  /* @__PURE__ */ r(n, {
347
351
  path: "tasks/timesheet-detail-page/:id",
348
- element: /* @__PURE__ */ r(L, {})
352
+ element: /* @__PURE__ */ r(R, {})
349
353
  }),
350
354
  /* @__PURE__ */ r(n, {
351
355
  path: "sprints/start-sprint-page",
352
- element: /* @__PURE__ */ r(xe, {})
356
+ element: /* @__PURE__ */ r(Se, {})
353
357
  }),
354
358
  /* @__PURE__ */ r(n, {
355
359
  path: "meetings/meetings-page",
356
- element: /* @__PURE__ */ r(Qe, {})
360
+ element: /* @__PURE__ */ r($e, {})
357
361
  }),
358
362
  /* @__PURE__ */ r(n, {
359
363
  path: "meetings/meeting-detail-page",
@@ -373,11 +377,11 @@ function et() {
373
377
  }),
374
378
  /* @__PURE__ */ r(n, {
375
379
  path: "reports/reports-page",
376
- element: /* @__PURE__ */ r(be, {})
380
+ element: /* @__PURE__ */ r(xe, {})
377
381
  }),
378
382
  /* @__PURE__ */ r(n, {
379
383
  path: "reports/create-report-page",
380
- element: /* @__PURE__ */ r(ye, {})
384
+ element: /* @__PURE__ */ r(be, {})
381
385
  }),
382
386
  /* @__PURE__ */ r(n, {
383
387
  path: "reports/edit-report-page",
@@ -397,11 +401,11 @@ function et() {
397
401
  }),
398
402
  /* @__PURE__ */ r(n, {
399
403
  path: "team/team-page",
400
- element: /* @__PURE__ */ r(Ne, {})
404
+ element: /* @__PURE__ */ r(Pe, {})
401
405
  }),
402
406
  /* @__PURE__ */ r(n, {
403
407
  path: "team/teams-page",
404
- element: /* @__PURE__ */ r(Pe, {})
408
+ element: /* @__PURE__ */ r(Fe, {})
405
409
  }),
406
410
  /* @__PURE__ */ r(n, {
407
411
  path: "team/team-detail-page",
@@ -421,23 +425,23 @@ function et() {
421
425
  }),
422
426
  /* @__PURE__ */ r(n, {
423
427
  path: "team/create-team-page",
424
- element: /* @__PURE__ */ r(je, {})
428
+ element: /* @__PURE__ */ r(Me, {})
425
429
  }),
426
430
  /* @__PURE__ */ r(n, {
427
431
  path: "team/invite-member-page",
428
- element: /* @__PURE__ */ r(Me, {})
432
+ element: /* @__PURE__ */ r(Ne, {})
429
433
  }),
430
434
  /* @__PURE__ */ r(n, {
431
435
  path: "workspace/create-workspace-page",
432
- element: /* @__PURE__ */ r(Fe, {})
436
+ element: /* @__PURE__ */ r(Ie, {})
433
437
  }),
434
438
  /* @__PURE__ */ r(n, {
435
439
  path: "automation/automation-rules-page",
436
- element: /* @__PURE__ */ r(Ie, {})
440
+ element: /* @__PURE__ */ r(Le, {})
437
441
  }),
438
442
  /* @__PURE__ */ r(n, {
439
443
  path: "automation/create-automation-rule-page",
440
- element: /* @__PURE__ */ r(Le, {})
444
+ element: /* @__PURE__ */ r(Re, {})
441
445
  }),
442
446
  /* @__PURE__ */ r(n, {
443
447
  path: "automation/automation-rule-detail-page",
@@ -449,7 +453,7 @@ function et() {
449
453
  }),
450
454
  /* @__PURE__ */ r(n, {
451
455
  path: "templates/templates-page",
452
- element: /* @__PURE__ */ r(Re, {})
456
+ element: /* @__PURE__ */ r(ze, {})
453
457
  }),
454
458
  /* @__PURE__ */ r(n, {
455
459
  path: "templates/edit-template-page",
@@ -461,7 +465,7 @@ function et() {
461
465
  }),
462
466
  /* @__PURE__ */ r(n, {
463
467
  path: "risks/risk-register-page",
464
- element: /* @__PURE__ */ r(ze, {})
468
+ element: /* @__PURE__ */ r(Be, {})
465
469
  }),
466
470
  /* @__PURE__ */ r(n, {
467
471
  path: "risks/risk-detail-page",
@@ -477,47 +481,47 @@ function et() {
477
481
  }),
478
482
  /* @__PURE__ */ r(n, {
479
483
  path: "ai/plan-page",
480
- element: /* @__PURE__ */ r(He, {})
484
+ element: /* @__PURE__ */ r(Ue, {})
481
485
  }),
482
486
  /* @__PURE__ */ r(n, {
483
487
  path: "ai/activity-page",
484
- element: /* @__PURE__ */ r(Ue, {})
488
+ element: /* @__PURE__ */ r(We, {})
485
489
  }),
486
490
  /* @__PURE__ */ r(n, {
487
491
  path: "activity/activity-page",
488
- element: /* @__PURE__ */ r(We, {})
492
+ element: /* @__PURE__ */ r(Ge, {})
489
493
  }),
490
494
  /* @__PURE__ */ r(n, {
491
495
  path: "dashboards/executive-page",
492
- element: /* @__PURE__ */ r(Ge, {})
496
+ element: /* @__PURE__ */ r(Q, {})
493
497
  }),
494
498
  /* @__PURE__ */ r(n, {
495
499
  path: "dashboards/project-manager-page",
496
- element: /* @__PURE__ */ r(Q, {})
500
+ element: /* @__PURE__ */ r(Ke, {})
497
501
  }),
498
502
  /* @__PURE__ */ r(n, {
499
503
  path: "dashboards/team-utilization-page",
500
- element: /* @__PURE__ */ r(Ke, {})
504
+ element: /* @__PURE__ */ r(qe, {})
501
505
  }),
502
506
  /* @__PURE__ */ r(n, {
503
507
  path: "dashboards/leadership-page",
504
- element: /* @__PURE__ */ r(qe, {})
508
+ element: /* @__PURE__ */ r(Je, {})
505
509
  }),
506
510
  /* @__PURE__ */ r(n, {
507
511
  path: "integrations/syncs-page",
508
- element: /* @__PURE__ */ r(Je, {})
512
+ element: /* @__PURE__ */ r(Ye, {})
509
513
  }),
510
514
  /* @__PURE__ */ r(n, {
511
515
  path: "integrations/new-sync-page",
512
- element: /* @__PURE__ */ r(Ye, {})
516
+ element: /* @__PURE__ */ r(Xe, {})
513
517
  }),
514
518
  /* @__PURE__ */ r(n, {
515
519
  path: "integrations/sync-detail-page/:id",
516
- element: /* @__PURE__ */ r(Xe, {})
520
+ element: /* @__PURE__ */ r(Ze, {})
517
521
  }),
518
522
  /* @__PURE__ */ r(n, {
519
523
  path: "integrations/webhooks-page",
520
- element: /* @__PURE__ */ r(Ze, {})
524
+ element: /* @__PURE__ */ r(Qe, {})
521
525
  }),
522
526
  /* @__PURE__ */ r(n, {
523
527
  path: "*",
@@ -527,6 +531,6 @@ function et() {
527
531
  });
528
532
  }
529
533
  //#endregion
530
- export { et as PlanMagnetRoutes };
534
+ export { tt as PlanMagnetRoutes };
531
535
 
532
536
  //# sourceMappingURL=PlanMagnetRoutes.js.map