@burdenoff/microfe-planmagnet 2026.730.2 → 2026.731.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/wspace-types.d.ts +189 -0
- package/dist/generated/wspace-types.d.ts.map +1 -1
- package/dist/planmagnet/PlanMagnetRoot.d.ts.map +1 -1
- package/dist/planmagnet/PlanMagnetRoot.js +116 -98
- package/dist/planmagnet/PlanMagnetRoot.js.map +1 -1
- package/dist/planmagnet/PlanMagnetRoutes.d.ts.map +1 -1
- package/dist/planmagnet/PlanMagnetRoutes.js +33 -21
- package/dist/planmagnet/PlanMagnetRoutes.js.map +1 -1
- package/dist/planmagnet/pages/GoalsCreateObjectivePagePage.d.ts +2 -0
- package/dist/planmagnet/pages/GoalsCreateObjectivePagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/GoalsCreateObjectivePagePage.js +126 -0
- package/dist/planmagnet/pages/GoalsCreateObjectivePagePage.js.map +1 -0
- package/dist/planmagnet/pages/GoalsGoalsPagePage.d.ts +2 -0
- package/dist/planmagnet/pages/GoalsGoalsPagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/GoalsGoalsPagePage.js +160 -0
- package/dist/planmagnet/pages/GoalsGoalsPagePage.js.map +1 -0
- package/dist/planmagnet/pages/GoalsObjectiveDetailPagePage.d.ts +2 -0
- package/dist/planmagnet/pages/GoalsObjectiveDetailPagePage.d.ts.map +1 -0
- package/dist/planmagnet/pages/GoalsObjectiveDetailPagePage.js +426 -0
- package/dist/planmagnet/pages/GoalsObjectiveDetailPagePage.js.map +1 -0
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlanMagnetRoutes.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router-dom';\nimport { Loader2 } from 'lucide-react';\nimport { AnalyticsAnalyticsPagePage } from './pages/AnalyticsAnalyticsPagePage';\n\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst ProductsCreateProductPagePage = lazy(() =>\n import('./pages/ProductsCreateProductPagePage').then((m) => ({\n default: m.ProductsCreateProductPagePage,\n }))\n);\nconst ProductsCreateRoadmapPagePage = lazy(() =>\n import('./pages/ProductsCreateRoadmapPagePage').then((m) => ({\n default: m.ProductsCreateRoadmapPagePage,\n }))\n);\nconst ProductsEditProductPagePage = lazy(() =>\n import('./pages/ProductsEditProductPagePage').then((m) => ({\n default: m.ProductsEditProductPagePage,\n }))\n);\nconst ProductsEditReleasePagePage = lazy(() =>\n import('./pages/ProductsEditReleasePagePage').then((m) => ({\n default: m.ProductsEditReleasePagePage,\n }))\n);\nconst ProductsFeatureAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsFeatureAnalyticsPagePage').then((m) => ({\n default: m.ProductsFeatureAnalyticsPagePage,\n }))\n);\nconst ProductsFeatureDetailPagePage = lazy(() =>\n import('./pages/ProductsFeatureDetailPagePage').then((m) => ({\n default: m.ProductsFeatureDetailPagePage,\n }))\n);\nconst ProductsFeaturesPagePage = lazy(() =>\n import('./pages/ProductsFeaturesPagePage').then((m) => ({ default: m.ProductsFeaturesPagePage }))\n);\nconst ProductsNewFeaturePagePage = lazy(() =>\n import('./pages/ProductsNewFeaturePagePage').then((m) => ({\n default: m.ProductsNewFeaturePagePage,\n }))\n);\nconst ProductsProductDetailPagePage = lazy(() =>\n import('./pages/ProductsProductDetailPagePage').then((m) => ({\n default: m.ProductsProductDetailPagePage,\n }))\n);\nconst ProductsProductsPagePage = lazy(() =>\n import('./pages/ProductsProductsPagePage').then((m) => ({ default: m.ProductsProductsPagePage }))\n);\nconst ProductsReleaseDetailPagePage = lazy(() =>\n import('./pages/ProductsReleaseDetailPagePage').then((m) => ({\n default: m.ProductsReleaseDetailPagePage,\n }))\n);\nconst ProductsReleasesPagePage = lazy(() =>\n import('./pages/ProductsReleasesPagePage').then((m) => ({ default: m.ProductsReleasesPagePage }))\n);\nconst ProductsRoadmapAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapAnalyticsPagePage').then((m) => ({\n default: m.ProductsRoadmapAnalyticsPagePage,\n }))\n);\nconst ProductsRoadmapDetailPagePage = lazy(() =>\n import('./pages/ProductsRoadmapDetailPagePage').then((m) => ({\n default: m.ProductsRoadmapDetailPagePage,\n }))\n);\nconst ProductsRoadmapsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapsPagePage').then((m) => ({ default: m.ProductsRoadmapsPagePage }))\n);\nconst ProjectsActiveProjectsPagePage = lazy(() =>\n import('./pages/ProjectsActiveProjectsPagePage').then((m) => ({\n default: m.ProjectsActiveProjectsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsEditProjectPagePage = lazy(() =>\n import('./pages/ProjectsEditProjectPagePage').then((m) => ({\n default: m.ProjectsEditProjectPagePage,\n }))\n);\nconst ProjectsMilestoneDetailPagePage = lazy(() =>\n import('./pages/ProjectsMilestoneDetailPagePage').then((m) => ({\n default: m.ProjectsMilestoneDetailPagePage,\n }))\n);\nconst ProjectsMilestonesPagePage = lazy(() =>\n import('./pages/ProjectsMilestonesPagePage').then((m) => ({\n default: m.ProjectsMilestonesPagePage,\n }))\n);\nconst ProjectsPlanningDetailPagePage = lazy(() =>\n import('./pages/ProjectsPlanningDetailPagePage').then((m) => ({\n default: m.ProjectsPlanningDetailPagePage,\n }))\n);\nconst ProjectsPlanningEditPagePage = lazy(() =>\n import('./pages/ProjectsPlanningEditPagePage').then((m) => ({\n default: m.ProjectsPlanningEditPagePage,\n }))\n);\nconst ProjectsPlanningPagePage = lazy(() =>\n import('./pages/ProjectsPlanningPagePage').then((m) => ({ default: m.ProjectsPlanningPagePage }))\n);\nconst ProjectsProjectDetailPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailPagePage').then((m) => ({\n default: m.ProjectsProjectDetailPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst ReportsCreateReportPagePage = lazy(() =>\n import('./pages/ReportsCreateReportPagePage').then((m) => ({\n default: m.ReportsCreateReportPagePage,\n }))\n);\nconst ReportsReportsPagePage = lazy(() =>\n import('./pages/ReportsReportsPagePage').then((m) => ({ default: m.ReportsReportsPagePage }))\n);\nconst SprintsStartSprintPagePage = lazy(() =>\n import('./pages/SprintsStartSprintPagePage').then((m) => ({\n default: m.SprintsStartSprintPagePage,\n }))\n);\nconst TasksCreateTaskPagePage = lazy(() =>\n import('./pages/TasksCreateTaskPagePage').then((m) => ({ default: m.TasksCreateTaskPagePage }))\n);\nconst TasksEditTaskPagePage = lazy(() =>\n import('./pages/TasksEditTaskPagePage').then((m) => ({ default: m.TasksEditTaskPagePage }))\n);\nconst TasksTaskDetailPagePage = lazy(() =>\n import('./pages/TasksTaskDetailPagePage').then((m) => ({ default: m.TasksTaskDetailPagePage }))\n);\nconst TasksTasksPagePage = lazy(() =>\n import('./pages/TasksTasksPagePage').then((m) => ({ default: m.TasksTasksPagePage }))\n);\nconst TeamCreateTeamPagePage = lazy(() =>\n import('./pages/TeamCreateTeamPagePage').then((m) => ({ default: m.TeamCreateTeamPagePage }))\n);\nconst TeamInviteMemberPagePage = lazy(() =>\n import('./pages/TeamInviteMemberPagePage').then((m) => ({ default: m.TeamInviteMemberPagePage }))\n);\nconst TeamTeamPagePage = lazy(() =>\n import('./pages/TeamTeamPagePage').then((m) => ({ default: m.TeamTeamPagePage }))\n);\nconst WorkspaceCreateWorkspacePagePage = lazy(() =>\n import('./pages/WorkspaceCreateWorkspacePagePage').then((m) => ({\n default: m.WorkspaceCreateWorkspacePagePage,\n }))\n);\n\n// Phase 2 new pages\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function PlanMagnetRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<DashboardDashboardPagePage />} />\n {/* Dashboard */}\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n {/* Products */}\n <Route path=\"products/products-page\" element={<ProductsProductsPagePage />} />\n <Route path=\"products/create-product-page\" element={<ProductsCreateProductPagePage />} />\n <Route path=\"products/edit-product-page\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/product-detail-page\" element={<ProductsProductDetailPagePage />} />\n <Route path=\"products/features-page\" element={<ProductsFeaturesPagePage />} />\n <Route path=\"products/new-feature-page\" element={<ProductsNewFeaturePagePage />} />\n <Route path=\"products/feature-detail-page\" element={<ProductsFeatureDetailPagePage />} />\n <Route\n path=\"products/feature-analytics-page\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route path=\"products/releases-page\" element={<ProductsReleasesPagePage />} />\n <Route path=\"products/release-detail-page\" element={<ProductsReleaseDetailPagePage />} />\n <Route path=\"products/edit-release-page\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/roadmaps-page\" element={<ProductsRoadmapsPagePage />} />\n <Route path=\"products/roadmap-detail-page\" element={<ProductsRoadmapDetailPagePage />} />\n <Route path=\"products/create-roadmap-page\" element={<ProductsCreateRoadmapPagePage />} />\n <Route\n path=\"products/roadmap-analytics-page\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n {/* Projects */}\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/active-projects-page\" element={<ProjectsActiveProjectsPagePage />} />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/edit-project-page\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/project-detail-page\" element={<ProjectsProjectDetailPagePage />} />\n <Route path=\"projects/milestones-page\" element={<ProjectsMilestonesPagePage />} />\n <Route\n path=\"projects/milestone-detail-page\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route path=\"projects/planning-page\" element={<ProjectsPlanningPagePage />} />\n <Route path=\"projects/planning-detail-page\" element={<ProjectsPlanningDetailPagePage />} />\n <Route path=\"projects/planning-edit-page\" element={<ProjectsPlanningEditPagePage />} />\n {/* Tasks */}\n <Route path=\"tasks/tasks-page\" element={<TasksTasksPagePage />} />\n <Route path=\"tasks/create-task-page\" element={<TasksCreateTaskPagePage />} />\n <Route path=\"tasks/edit-task-page\" element={<TasksEditTaskPagePage />} />\n <Route path=\"tasks/task-detail-page\" element={<TasksTaskDetailPagePage />} />\n {/* Sprints */}\n <Route path=\"sprints/start-sprint-page\" element={<SprintsStartSprintPagePage />} />\n {/* Reports */}\n <Route path=\"reports/reports-page\" element={<ReportsReportsPagePage />} />\n <Route path=\"reports/create-report-page\" element={<ReportsCreateReportPagePage />} />\n {/* Team */}\n <Route path=\"team/team-page\" element={<TeamTeamPagePage />} />\n <Route path=\"team/create-team-page\" element={<TeamCreateTeamPagePage />} />\n <Route path=\"team/invite-member-page\" element={<TeamInviteMemberPagePage />} />\n {/* Workspace */}\n <Route\n path=\"workspace/create-workspace-page\"\n element={<WorkspaceCreateWorkspacePagePage />}\n />\n {/* Analytics */}\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n {/* 404 */}\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlanMagnetRoutes.js","names":[],"sources":["../../src/planmagnet/PlanMagnetRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router-dom';\nimport { Loader2 } from 'lucide-react';\nimport { AnalyticsAnalyticsPagePage } from './pages/AnalyticsAnalyticsPagePage';\n\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst ProductsCreateProductPagePage = lazy(() =>\n import('./pages/ProductsCreateProductPagePage').then((m) => ({\n default: m.ProductsCreateProductPagePage,\n }))\n);\nconst ProductsCreateRoadmapPagePage = lazy(() =>\n import('./pages/ProductsCreateRoadmapPagePage').then((m) => ({\n default: m.ProductsCreateRoadmapPagePage,\n }))\n);\nconst ProductsEditProductPagePage = lazy(() =>\n import('./pages/ProductsEditProductPagePage').then((m) => ({\n default: m.ProductsEditProductPagePage,\n }))\n);\nconst ProductsEditReleasePagePage = lazy(() =>\n import('./pages/ProductsEditReleasePagePage').then((m) => ({\n default: m.ProductsEditReleasePagePage,\n }))\n);\nconst ProductsFeatureAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsFeatureAnalyticsPagePage').then((m) => ({\n default: m.ProductsFeatureAnalyticsPagePage,\n }))\n);\nconst ProductsFeatureDetailPagePage = lazy(() =>\n import('./pages/ProductsFeatureDetailPagePage').then((m) => ({\n default: m.ProductsFeatureDetailPagePage,\n }))\n);\nconst ProductsFeaturesPagePage = lazy(() =>\n import('./pages/ProductsFeaturesPagePage').then((m) => ({ default: m.ProductsFeaturesPagePage }))\n);\nconst ProductsNewFeaturePagePage = lazy(() =>\n import('./pages/ProductsNewFeaturePagePage').then((m) => ({\n default: m.ProductsNewFeaturePagePage,\n }))\n);\nconst ProductsProductDetailPagePage = lazy(() =>\n import('./pages/ProductsProductDetailPagePage').then((m) => ({\n default: m.ProductsProductDetailPagePage,\n }))\n);\nconst ProductsProductsPagePage = lazy(() =>\n import('./pages/ProductsProductsPagePage').then((m) => ({ default: m.ProductsProductsPagePage }))\n);\nconst ProductsReleaseDetailPagePage = lazy(() =>\n import('./pages/ProductsReleaseDetailPagePage').then((m) => ({\n default: m.ProductsReleaseDetailPagePage,\n }))\n);\nconst ProductsReleasesPagePage = lazy(() =>\n import('./pages/ProductsReleasesPagePage').then((m) => ({ default: m.ProductsReleasesPagePage }))\n);\nconst ProductsRoadmapAnalyticsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapAnalyticsPagePage').then((m) => ({\n default: m.ProductsRoadmapAnalyticsPagePage,\n }))\n);\nconst ProductsRoadmapDetailPagePage = lazy(() =>\n import('./pages/ProductsRoadmapDetailPagePage').then((m) => ({\n default: m.ProductsRoadmapDetailPagePage,\n }))\n);\nconst ProductsRoadmapsPagePage = lazy(() =>\n import('./pages/ProductsRoadmapsPagePage').then((m) => ({ default: m.ProductsRoadmapsPagePage }))\n);\nconst ProjectsActiveProjectsPagePage = lazy(() =>\n import('./pages/ProjectsActiveProjectsPagePage').then((m) => ({\n default: m.ProjectsActiveProjectsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsEditProjectPagePage = lazy(() =>\n import('./pages/ProjectsEditProjectPagePage').then((m) => ({\n default: m.ProjectsEditProjectPagePage,\n }))\n);\nconst ProjectsMilestoneDetailPagePage = lazy(() =>\n import('./pages/ProjectsMilestoneDetailPagePage').then((m) => ({\n default: m.ProjectsMilestoneDetailPagePage,\n }))\n);\nconst GoalsGoalsPagePage = lazy(() =>\n import('./pages/GoalsGoalsPagePage').then((m) => ({ default: m.GoalsGoalsPagePage }))\n);\nconst GoalsCreateObjectivePagePage = lazy(() =>\n import('./pages/GoalsCreateObjectivePagePage').then((m) => ({\n default: m.GoalsCreateObjectivePagePage,\n }))\n);\nconst GoalsObjectiveDetailPagePage = lazy(() =>\n import('./pages/GoalsObjectiveDetailPagePage').then((m) => ({\n default: m.GoalsObjectiveDetailPagePage,\n }))\n);\nconst ProjectsMilestonesPagePage = lazy(() =>\n import('./pages/ProjectsMilestonesPagePage').then((m) => ({\n default: m.ProjectsMilestonesPagePage,\n }))\n);\nconst ProjectsPlanningDetailPagePage = lazy(() =>\n import('./pages/ProjectsPlanningDetailPagePage').then((m) => ({\n default: m.ProjectsPlanningDetailPagePage,\n }))\n);\nconst ProjectsPlanningEditPagePage = lazy(() =>\n import('./pages/ProjectsPlanningEditPagePage').then((m) => ({\n default: m.ProjectsPlanningEditPagePage,\n }))\n);\nconst ProjectsPlanningPagePage = lazy(() =>\n import('./pages/ProjectsPlanningPagePage').then((m) => ({ default: m.ProjectsPlanningPagePage }))\n);\nconst ProjectsProjectDetailPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailPagePage').then((m) => ({\n default: m.ProjectsProjectDetailPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst ReportsCreateReportPagePage = lazy(() =>\n import('./pages/ReportsCreateReportPagePage').then((m) => ({\n default: m.ReportsCreateReportPagePage,\n }))\n);\nconst ReportsReportsPagePage = lazy(() =>\n import('./pages/ReportsReportsPagePage').then((m) => ({ default: m.ReportsReportsPagePage }))\n);\nconst SprintsStartSprintPagePage = lazy(() =>\n import('./pages/SprintsStartSprintPagePage').then((m) => ({\n default: m.SprintsStartSprintPagePage,\n }))\n);\nconst TasksCreateTaskPagePage = lazy(() =>\n import('./pages/TasksCreateTaskPagePage').then((m) => ({ default: m.TasksCreateTaskPagePage }))\n);\nconst TasksEditTaskPagePage = lazy(() =>\n import('./pages/TasksEditTaskPagePage').then((m) => ({ default: m.TasksEditTaskPagePage }))\n);\nconst TasksTaskDetailPagePage = lazy(() =>\n import('./pages/TasksTaskDetailPagePage').then((m) => ({ default: m.TasksTaskDetailPagePage }))\n);\nconst TasksTasksPagePage = lazy(() =>\n import('./pages/TasksTasksPagePage').then((m) => ({ default: m.TasksTasksPagePage }))\n);\nconst TeamCreateTeamPagePage = lazy(() =>\n import('./pages/TeamCreateTeamPagePage').then((m) => ({ default: m.TeamCreateTeamPagePage }))\n);\nconst TeamInviteMemberPagePage = lazy(() =>\n import('./pages/TeamInviteMemberPagePage').then((m) => ({ default: m.TeamInviteMemberPagePage }))\n);\nconst TeamTeamPagePage = lazy(() =>\n import('./pages/TeamTeamPagePage').then((m) => ({ default: m.TeamTeamPagePage }))\n);\nconst WorkspaceCreateWorkspacePagePage = lazy(() =>\n import('./pages/WorkspaceCreateWorkspacePagePage').then((m) => ({\n default: m.WorkspaceCreateWorkspacePagePage,\n }))\n);\n\n// Phase 2 new pages\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function PlanMagnetRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<DashboardDashboardPagePage />} />\n {/* Dashboard */}\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n {/* Products */}\n <Route path=\"products/products-page\" element={<ProductsProductsPagePage />} />\n <Route path=\"products/create-product-page\" element={<ProductsCreateProductPagePage />} />\n <Route path=\"products/edit-product-page\" element={<ProductsEditProductPagePage />} />\n <Route path=\"products/product-detail-page\" element={<ProductsProductDetailPagePage />} />\n <Route path=\"products/features-page\" element={<ProductsFeaturesPagePage />} />\n <Route path=\"products/new-feature-page\" element={<ProductsNewFeaturePagePage />} />\n <Route path=\"products/feature-detail-page\" element={<ProductsFeatureDetailPagePage />} />\n <Route\n path=\"products/feature-analytics-page\"\n element={<ProductsFeatureAnalyticsPagePage />}\n />\n <Route path=\"products/releases-page\" element={<ProductsReleasesPagePage />} />\n <Route path=\"products/release-detail-page\" element={<ProductsReleaseDetailPagePage />} />\n <Route path=\"products/edit-release-page\" element={<ProductsEditReleasePagePage />} />\n <Route path=\"products/roadmaps-page\" element={<ProductsRoadmapsPagePage />} />\n <Route path=\"products/roadmap-detail-page\" element={<ProductsRoadmapDetailPagePage />} />\n <Route path=\"products/create-roadmap-page\" element={<ProductsCreateRoadmapPagePage />} />\n <Route\n path=\"products/roadmap-analytics-page\"\n element={<ProductsRoadmapAnalyticsPagePage />}\n />\n {/* Projects */}\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/active-projects-page\" element={<ProjectsActiveProjectsPagePage />} />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/edit-project-page\" element={<ProjectsEditProjectPagePage />} />\n <Route path=\"projects/project-detail-page\" element={<ProjectsProjectDetailPagePage />} />\n <Route path=\"projects/milestones-page\" element={<ProjectsMilestonesPagePage />} />\n <Route\n path=\"projects/milestone-detail-page\"\n element={<ProjectsMilestoneDetailPagePage />}\n />\n <Route path=\"projects/planning-page\" element={<ProjectsPlanningPagePage />} />\n <Route path=\"projects/planning-detail-page\" element={<ProjectsPlanningDetailPagePage />} />\n <Route path=\"projects/planning-edit-page\" element={<ProjectsPlanningEditPagePage />} />\n {/* Goals (OKRs, BOFF-4441) */}\n <Route path=\"goals/goals-page\" element={<GoalsGoalsPagePage />} />\n <Route path=\"goals/create-objective-page\" element={<GoalsCreateObjectivePagePage />} />\n <Route path=\"goals/objective-detail-page\" element={<GoalsObjectiveDetailPagePage />} />\n {/* Tasks */}\n <Route path=\"tasks/tasks-page\" element={<TasksTasksPagePage />} />\n <Route path=\"tasks/create-task-page\" element={<TasksCreateTaskPagePage />} />\n <Route path=\"tasks/edit-task-page\" element={<TasksEditTaskPagePage />} />\n <Route path=\"tasks/task-detail-page\" element={<TasksTaskDetailPagePage />} />\n {/* Sprints */}\n <Route path=\"sprints/start-sprint-page\" element={<SprintsStartSprintPagePage />} />\n {/* Reports */}\n <Route path=\"reports/reports-page\" element={<ReportsReportsPagePage />} />\n <Route path=\"reports/create-report-page\" element={<ReportsCreateReportPagePage />} />\n {/* Team */}\n <Route path=\"team/team-page\" element={<TeamTeamPagePage />} />\n <Route path=\"team/create-team-page\" element={<TeamCreateTeamPagePage />} />\n <Route path=\"team/invite-member-page\" element={<TeamInviteMemberPagePage />} />\n {/* Workspace */}\n <Route\n path=\"workspace/create-workspace-page\"\n element={<WorkspaceCreateWorkspacePagePage />}\n />\n {/* Analytics */}\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n {/* 404 */}\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":";;;;;;AAKA,IAAM,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAAmC,QACvC,OAAO,+CAA4C,MAAM,OAAO,EAC9D,SAAS,EAAE,kCACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAAmC,QACvC,OAAO,+CAA4C,MAAM,OAAO,EAC9D,SAAS,EAAE,kCACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAAiC,QACrC,OAAO,6CAA0C,MAAM,OAAO,EAC5D,SAAS,EAAE,gCACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAAqB,QACzB,OAAO,iCAA8B,MAAM,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,CACtF,EACK,IAA+B,QACnC,OAAO,2CAAwC,MAAM,OAAO,EAC1D,SAAS,EAAE,8BACZ,EAAE,CACJ,EACK,IAA+B,QACnC,OAAO,2CAAwC,MAAM,OAAO,EAC1D,SAAS,EAAE,8BACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAAiC,QACrC,OAAO,6CAA0C,MAAM,OAAO,EAC5D,SAAS,EAAE,gCACZ,EAAE,CACJ,EACK,IAA+B,QACnC,OAAO,2CAAwC,MAAM,OAAO,EAC1D,SAAS,EAAE,8BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAAyB,QAC7B,OAAO,qCAAkC,MAAM,OAAO,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAC9F,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAA0B,QAC9B,OAAO,sCAAmC,MAAM,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAChG,EACK,IAAwB,QAC5B,OAAO,oCAAiC,MAAM,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAC5F,EACK,IAA0B,QAC9B,OAAO,sCAAmC,MAAM,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAChG,EACK,IAAqB,QACzB,OAAO,iCAA8B,MAAM,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,CACtF,EACK,IAAyB,QAC7B,OAAO,qCAAkC,MAAM,OAAO,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAC9F,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAAmB,QACvB,OAAO,+BAA4B,MAAM,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAClF,EACK,IAAmC,QACvC,OAAO,+CAA4C,MAAM,OAAO,EAC9D,SAAS,EAAE,kCACZ,EAAE,CACJ;AAID,SAAS,IAAa;AACpB,QACE,kBAAC,OAAD;EAAK,WAAU;YACb,kBAAC,GAAD,EAAS,WAAU,qCAAsC,CAAA;EACrD,CAAA;;AAIV,SAAgB,IAAmB;AACjC,QACE,kBAAC,GAAD;EAAU,UAAU,kBAAC,GAAD,EAAc,CAAA;YAChC,kBAAC,GAAD,EAAA,UAAA;GACE,kBAAC,GAAD;IAAO,OAAA;IAAM,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAExD,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAElF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAA6B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACrF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GACnF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAoC,CAAA;IAC7C,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAA6B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACrF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAoC,CAAA;IAC7C,CAAA;GAEF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAAgC,SAAS,kBAAC,GAAD,EAAkC,CAAA;IAAI,CAAA;GAC3F,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAA6B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACrF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAC5C,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAAgC,SAAS,kBAAC,GAAD,EAAkC,CAAA;IAAI,CAAA;GAC3F,kBAAC,GAAD;IAAO,MAAK;IAA8B,SAAS,kBAAC,GAAD,EAAgC,CAAA;IAAI,CAAA;GAEvF,kBAAC,GAAD;IAAO,MAAK;IAAmB,SAAS,kBAAC,GAAD,EAAsB,CAAA;IAAI,CAAA;GAClE,kBAAC,GAAD;IAAO,MAAK;IAA8B,SAAS,kBAAC,GAAD,EAAgC,CAAA;IAAI,CAAA;GACvF,kBAAC,GAAD;IAAO,MAAK;IAA8B,SAAS,kBAAC,GAAD,EAAgC,CAAA;IAAI,CAAA;GAEvF,kBAAC,GAAD;IAAO,MAAK;IAAmB,SAAS,kBAAC,GAAD,EAAsB,CAAA;IAAI,CAAA;GAClE,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA2B,CAAA;IAAI,CAAA;GAC7E,kBAAC,GAAD;IAAO,MAAK;IAAuB,SAAS,kBAAC,GAAD,EAAyB,CAAA;IAAI,CAAA;GACzE,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA2B,CAAA;IAAI,CAAA;GAE7E,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAEnF,kBAAC,GAAD;IAAO,MAAK;IAAuB,SAAS,kBAAC,GAAD,EAA0B,CAAA;IAAI,CAAA;GAC1E,kBAAC,GAAD;IAAO,MAAK;IAA6B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GAErF,kBAAC,GAAD;IAAO,MAAK;IAAiB,SAAS,kBAAC,GAAD,EAAoB,CAAA;IAAI,CAAA;GAC9D,kBAAC,GAAD;IAAO,MAAK;IAAwB,SAAS,kBAAC,GAAD,EAA0B,CAAA;IAAI,CAAA;GAC3E,kBAAC,GAAD;IAAO,MAAK;IAA0B,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAE/E,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAoC,CAAA;IAC7C,CAAA;GAEF,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAElF,kBAAC,GAAD;IAAO,MAAK;IAAI,SAAS,kBAAC,GAAD;KAAU,IAAG;KAAG,SAAA;KAAU,CAAA;IAAI,CAAA;GAChD,EAAA,CAAA;EACA,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalsCreateObjectivePagePage.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/pages/GoalsCreateObjectivePagePage.tsx"],"names":[],"mappings":"AAiBA,wBAAgB,4BAA4B,4CA2G3C"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { usePlanMagnetNavigate as e } from "../providers/PlanMagnetProvider.js";
|
|
2
|
+
import { useState as t } from "react";
|
|
3
|
+
import { Flag as n, Save as r, X as i } from "lucide-react";
|
|
4
|
+
import { gql as a } from "@apollo/client";
|
|
5
|
+
import { useMutation as o } from "@apollo/client/react";
|
|
6
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
7
|
+
import { Button as l, Card as u, CardContent as d, CardHeader as f, CardTitle as p, Input as m } from "@burdenoff/fe-libs/ui";
|
|
8
|
+
//#region src/planmagnet/pages/GoalsCreateObjectivePagePage.tsx
|
|
9
|
+
var h = a`
|
|
10
|
+
mutation CreateObjective($input: PlanmagnetCreateObjectiveInput!) {
|
|
11
|
+
planmagnetCreateObjective(input: $input) {
|
|
12
|
+
id
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
`;
|
|
16
|
+
function g() {
|
|
17
|
+
let a = e(), [g, _] = t({
|
|
18
|
+
title: "",
|
|
19
|
+
description: "",
|
|
20
|
+
periodLabel: "",
|
|
21
|
+
endDate: ""
|
|
22
|
+
}), [v, { loading: y, error: b }] = o(h);
|
|
23
|
+
return /* @__PURE__ */ c("div", {
|
|
24
|
+
className: "space-y-6 p-6 max-w-4xl",
|
|
25
|
+
children: [
|
|
26
|
+
/* @__PURE__ */ c("div", {
|
|
27
|
+
className: "flex items-center justify-between",
|
|
28
|
+
children: [/* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("h1", {
|
|
29
|
+
className: "text-2xl font-semibold",
|
|
30
|
+
children: "Create Objective"
|
|
31
|
+
}), /* @__PURE__ */ s("p", {
|
|
32
|
+
className: "text-sm text-muted-foreground",
|
|
33
|
+
children: "Define a workspace goal for a time period, then add key results to make progress measurable."
|
|
34
|
+
})] }), /* @__PURE__ */ c("div", {
|
|
35
|
+
className: "flex gap-2",
|
|
36
|
+
children: [/* @__PURE__ */ c(l, {
|
|
37
|
+
variant: "outline",
|
|
38
|
+
size: "sm",
|
|
39
|
+
onClick: () => a("/goals/goals-page"),
|
|
40
|
+
children: [/* @__PURE__ */ s(i, { className: "mr-1 h-4 w-4" }), "Cancel"]
|
|
41
|
+
}), /* @__PURE__ */ c(l, {
|
|
42
|
+
size: "sm",
|
|
43
|
+
onClick: async () => {
|
|
44
|
+
if (!g.title.trim() || !g.periodLabel.trim()) return;
|
|
45
|
+
let e = (await v({ variables: { input: {
|
|
46
|
+
title: g.title.trim(),
|
|
47
|
+
description: g.description.trim() || void 0,
|
|
48
|
+
periodLabel: g.periodLabel.trim(),
|
|
49
|
+
endDate: g.endDate || void 0
|
|
50
|
+
} } })).data?.planmagnetCreateObjective?.id;
|
|
51
|
+
a(e ? `/goals/objective-detail-page?objectiveId=${e}` : "/goals/goals-page");
|
|
52
|
+
},
|
|
53
|
+
disabled: y || !g.title.trim() || !g.periodLabel.trim(),
|
|
54
|
+
children: [/* @__PURE__ */ s(r, { className: "mr-1 h-4 w-4" }), y ? "Creating..." : "Create Objective"]
|
|
55
|
+
})]
|
|
56
|
+
})]
|
|
57
|
+
}),
|
|
58
|
+
b && /* @__PURE__ */ c("div", {
|
|
59
|
+
className: "p-6 text-red-500",
|
|
60
|
+
children: ["Error: ", b.message]
|
|
61
|
+
}),
|
|
62
|
+
/* @__PURE__ */ c(u, { children: [/* @__PURE__ */ s(f, { children: /* @__PURE__ */ c(p, {
|
|
63
|
+
className: "flex items-center gap-2",
|
|
64
|
+
children: [/* @__PURE__ */ s(n, { className: "h-4 w-4" }), "Objective Details"]
|
|
65
|
+
}) }), /* @__PURE__ */ c(d, {
|
|
66
|
+
className: "space-y-4",
|
|
67
|
+
children: [
|
|
68
|
+
/* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("label", {
|
|
69
|
+
className: "text-sm font-medium",
|
|
70
|
+
children: "Title"
|
|
71
|
+
}), /* @__PURE__ */ s(m, {
|
|
72
|
+
value: g.title,
|
|
73
|
+
onChange: (e) => _({
|
|
74
|
+
...g,
|
|
75
|
+
title: e.target.value
|
|
76
|
+
}),
|
|
77
|
+
className: "mt-1",
|
|
78
|
+
placeholder: "e.g. Grow enterprise revenue"
|
|
79
|
+
})] }),
|
|
80
|
+
/* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("label", {
|
|
81
|
+
className: "text-sm font-medium",
|
|
82
|
+
children: "Description"
|
|
83
|
+
}), /* @__PURE__ */ s("textarea", {
|
|
84
|
+
className: "mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm min-h-[100px]",
|
|
85
|
+
value: g.description,
|
|
86
|
+
onChange: (e) => _({
|
|
87
|
+
...g,
|
|
88
|
+
description: e.target.value
|
|
89
|
+
}),
|
|
90
|
+
placeholder: "Why this objective matters this period..."
|
|
91
|
+
})] }),
|
|
92
|
+
/* @__PURE__ */ c("div", {
|
|
93
|
+
className: "grid grid-cols-2 gap-4",
|
|
94
|
+
children: [/* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("label", {
|
|
95
|
+
className: "text-sm font-medium",
|
|
96
|
+
children: "Time Period"
|
|
97
|
+
}), /* @__PURE__ */ s(m, {
|
|
98
|
+
value: g.periodLabel,
|
|
99
|
+
onChange: (e) => _({
|
|
100
|
+
...g,
|
|
101
|
+
periodLabel: e.target.value
|
|
102
|
+
}),
|
|
103
|
+
className: "mt-1",
|
|
104
|
+
placeholder: "e.g. Q3 2026"
|
|
105
|
+
})] }), /* @__PURE__ */ c("div", { children: [/* @__PURE__ */ s("label", {
|
|
106
|
+
className: "text-sm font-medium",
|
|
107
|
+
children: "Target End Date"
|
|
108
|
+
}), /* @__PURE__ */ s(m, {
|
|
109
|
+
type: "date",
|
|
110
|
+
value: g.endDate,
|
|
111
|
+
onChange: (e) => _({
|
|
112
|
+
...g,
|
|
113
|
+
endDate: e.target.value
|
|
114
|
+
}),
|
|
115
|
+
className: "mt-1"
|
|
116
|
+
})] })]
|
|
117
|
+
})
|
|
118
|
+
]
|
|
119
|
+
})] })
|
|
120
|
+
]
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
//#endregion
|
|
124
|
+
export { g as GoalsCreateObjectivePagePage };
|
|
125
|
+
|
|
126
|
+
//# sourceMappingURL=GoalsCreateObjectivePagePage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalsCreateObjectivePagePage.js","names":[],"sources":["../../../src/planmagnet/pages/GoalsCreateObjectivePagePage.tsx"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { useState } from 'react';\nimport { gql } from '@apollo/client';\nimport { useMutation } from '@apollo/client/react';\nimport { Card, CardContent, CardHeader, CardTitle, Button, Input } from '@burdenoff/fe-libs/ui';\nimport { Save, X, Flag } from 'lucide-react';\nimport { usePlanMagnetNavigate } from '../providers/PlanMagnetProvider';\n\nconst CREATE_OBJECTIVE = gql`\n mutation CreateObjective($input: PlanmagnetCreateObjectiveInput!) {\n planmagnetCreateObjective(input: $input) {\n id\n }\n }\n`;\n\nexport function GoalsCreateObjectivePagePage() {\n const navigate = usePlanMagnetNavigate();\n const [form, setForm] = useState({\n title: '',\n description: '',\n periodLabel: '',\n endDate: '',\n });\n\n const [createObjective, { loading: saving, error }] = useMutation(CREATE_OBJECTIVE);\n\n const handleCreate = async () => {\n if (!form.title.trim() || !form.periodLabel.trim()) return;\n const result = await createObjective({\n variables: {\n input: {\n title: form.title.trim(),\n description: form.description.trim() || undefined,\n periodLabel: form.periodLabel.trim(),\n endDate: form.endDate || undefined,\n },\n },\n });\n const newId = result.data?.planmagnetCreateObjective?.id;\n if (newId) {\n navigate(`/goals/objective-detail-page?objectiveId=${newId}`);\n } else {\n navigate('/goals/goals-page');\n }\n };\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Create Objective</h1>\n <p className=\"text-sm text-muted-foreground\">\n Define a workspace goal for a time period, then add key results to make progress\n measurable.\n </p>\n </div>\n <div className=\"flex gap-2\">\n <Button variant=\"outline\" size=\"sm\" onClick={() => navigate('/goals/goals-page')}>\n <X className=\"mr-1 h-4 w-4\" />\n Cancel\n </Button>\n <Button\n size=\"sm\"\n onClick={handleCreate}\n disabled={saving || !form.title.trim() || !form.periodLabel.trim()}\n >\n <Save className=\"mr-1 h-4 w-4\" />\n {saving ? 'Creating...' : 'Create Objective'}\n </Button>\n </div>\n </div>\n {error && <div className=\"p-6 text-red-500\">Error: {error.message}</div>}\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <Flag className=\"h-4 w-4\" />\n Objective Details\n </CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div>\n <label className=\"text-sm font-medium\">Title</label>\n <Input\n value={form.title}\n onChange={(e) => setForm({ ...form, title: e.target.value })}\n className=\"mt-1\"\n placeholder=\"e.g. Grow enterprise revenue\"\n />\n </div>\n <div>\n <label className=\"text-sm font-medium\">Description</label>\n <textarea\n className=\"mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm min-h-[100px]\"\n value={form.description}\n onChange={(e) => setForm({ ...form, description: e.target.value })}\n placeholder=\"Why this objective matters this period...\"\n />\n </div>\n <div className=\"grid grid-cols-2 gap-4\">\n <div>\n <label className=\"text-sm font-medium\">Time Period</label>\n <Input\n value={form.periodLabel}\n onChange={(e) => setForm({ ...form, periodLabel: e.target.value })}\n className=\"mt-1\"\n placeholder=\"e.g. Q3 2026\"\n />\n </div>\n <div>\n <label className=\"text-sm font-medium\">Target End Date</label>\n <Input\n type=\"date\"\n value={form.endDate}\n onChange={(e) => setForm({ ...form, endDate: e.target.value })}\n className=\"mt-1\"\n />\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalsGoalsPagePage.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/pages/GoalsGoalsPagePage.tsx"],"names":[],"mappings":"AA4DA,wBAAgB,kBAAkB,4CAoHjC"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { usePlanMagnet as e, usePlanMagnetNavigate as t } from "../providers/PlanMagnetProvider.js";
|
|
2
|
+
import { useState as n } from "react";
|
|
3
|
+
import { Calendar as r, Flag as i, Plus as a, User as o } from "lucide-react";
|
|
4
|
+
import { gql as s } from "@apollo/client";
|
|
5
|
+
import { useQuery as c } from "@apollo/client/react";
|
|
6
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
7
|
+
import { Button as d, Card as f, CardContent as p, CardHeader as m, CardTitle as h } from "@burdenoff/fe-libs/ui";
|
|
8
|
+
//#region src/planmagnet/pages/GoalsGoalsPagePage.tsx
|
|
9
|
+
var g = s`
|
|
10
|
+
query GetObjectives($workspaceId: ID!, $filter: PlanmagnetObjectiveFilter) {
|
|
11
|
+
planmagnetObjectives(workspaceId: $workspaceId, filter: $filter, pagination: { first: 100 }) {
|
|
12
|
+
items {
|
|
13
|
+
id
|
|
14
|
+
title
|
|
15
|
+
description
|
|
16
|
+
ownerId
|
|
17
|
+
periodLabel
|
|
18
|
+
status
|
|
19
|
+
progress
|
|
20
|
+
endDate
|
|
21
|
+
keyResults {
|
|
22
|
+
id
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
totalCount
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
`, _ = {
|
|
29
|
+
DRAFT: "bg-gray-100 text-gray-800",
|
|
30
|
+
ACTIVE: "bg-blue-100 text-blue-800",
|
|
31
|
+
COMPLETED: "bg-green-100 text-green-800",
|
|
32
|
+
CANCELLED: "bg-red-100 text-red-800"
|
|
33
|
+
}, v = [
|
|
34
|
+
"all",
|
|
35
|
+
"DRAFT",
|
|
36
|
+
"ACTIVE",
|
|
37
|
+
"COMPLETED",
|
|
38
|
+
"CANCELLED"
|
|
39
|
+
];
|
|
40
|
+
function y({ progress: e }) {
|
|
41
|
+
let t = Math.max(0, Math.min(100, Math.round(e)));
|
|
42
|
+
return /* @__PURE__ */ u("div", {
|
|
43
|
+
className: "space-y-1",
|
|
44
|
+
children: [/* @__PURE__ */ u("div", {
|
|
45
|
+
className: "flex justify-between text-xs text-muted-foreground",
|
|
46
|
+
children: [/* @__PURE__ */ l("span", { children: "Progress" }), /* @__PURE__ */ u("span", { children: [t, "%"] })]
|
|
47
|
+
}), /* @__PURE__ */ l("div", {
|
|
48
|
+
className: "h-2 w-full rounded-full bg-muted overflow-hidden",
|
|
49
|
+
children: /* @__PURE__ */ l("div", {
|
|
50
|
+
className: "h-full rounded-full bg-primary transition-all",
|
|
51
|
+
style: { width: `${t}%` }
|
|
52
|
+
})
|
|
53
|
+
})]
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function b() {
|
|
57
|
+
let { workspaceId: s } = e(), b = t(), [x, S] = n("all"), { data: C, loading: w, error: T } = c(g, {
|
|
58
|
+
variables: {
|
|
59
|
+
workspaceId: s ?? "default",
|
|
60
|
+
filter: x === "all" ? void 0 : { status: x }
|
|
61
|
+
},
|
|
62
|
+
skip: !s
|
|
63
|
+
});
|
|
64
|
+
if (w) return /* @__PURE__ */ l("div", {
|
|
65
|
+
className: "flex items-center justify-center p-12",
|
|
66
|
+
children: /* @__PURE__ */ l("div", { className: "animate-spin h-8 w-8 border-2 border-primary border-t-transparent rounded-full" })
|
|
67
|
+
});
|
|
68
|
+
if (T) return /* @__PURE__ */ u("div", {
|
|
69
|
+
className: "p-6 text-red-500",
|
|
70
|
+
children: ["Error loading objectives: ", T.message]
|
|
71
|
+
});
|
|
72
|
+
let E = C?.planmagnetObjectives?.items ?? [], D = C?.planmagnetObjectives?.totalCount ?? 0;
|
|
73
|
+
return /* @__PURE__ */ u("div", {
|
|
74
|
+
className: "space-y-6 p-6",
|
|
75
|
+
children: [
|
|
76
|
+
/* @__PURE__ */ u("div", {
|
|
77
|
+
className: "flex items-center justify-between",
|
|
78
|
+
children: [/* @__PURE__ */ u("div", { children: [/* @__PURE__ */ l("h1", {
|
|
79
|
+
className: "text-2xl font-semibold",
|
|
80
|
+
children: "Objectives & Key Results"
|
|
81
|
+
}), /* @__PURE__ */ u("p", {
|
|
82
|
+
className: "text-sm text-muted-foreground",
|
|
83
|
+
children: [
|
|
84
|
+
D,
|
|
85
|
+
" objective",
|
|
86
|
+
D === 1 ? "" : "s",
|
|
87
|
+
" in this workspace"
|
|
88
|
+
]
|
|
89
|
+
})] }), /* @__PURE__ */ u(d, {
|
|
90
|
+
size: "sm",
|
|
91
|
+
onClick: () => b("/goals/create-objective-page"),
|
|
92
|
+
children: [/* @__PURE__ */ l(a, { className: "mr-1 h-4 w-4" }), "New Objective"]
|
|
93
|
+
})]
|
|
94
|
+
}),
|
|
95
|
+
/* @__PURE__ */ l("div", {
|
|
96
|
+
className: "flex gap-1",
|
|
97
|
+
children: v.map((e) => /* @__PURE__ */ l("button", {
|
|
98
|
+
onClick: () => S(e),
|
|
99
|
+
className: `px-3 py-1.5 text-sm rounded-md capitalize ${x === e ? "bg-primary text-primary-foreground" : "text-muted-foreground hover:bg-muted"}`,
|
|
100
|
+
children: e === "all" ? "All" : e.toLowerCase()
|
|
101
|
+
}, e))
|
|
102
|
+
}),
|
|
103
|
+
/* @__PURE__ */ l("div", {
|
|
104
|
+
className: "grid grid-cols-1 md:grid-cols-2 gap-4",
|
|
105
|
+
children: E.map((e) => /* @__PURE__ */ u(f, {
|
|
106
|
+
className: "cursor-pointer hover:border-primary transition-colors",
|
|
107
|
+
onClick: () => b(`/goals/objective-detail-page?objectiveId=${e.id}`),
|
|
108
|
+
children: [/* @__PURE__ */ l(m, {
|
|
109
|
+
className: "pb-2",
|
|
110
|
+
children: /* @__PURE__ */ u("div", {
|
|
111
|
+
className: "flex items-center justify-between",
|
|
112
|
+
children: [/* @__PURE__ */ u(h, {
|
|
113
|
+
className: "text-base flex items-center gap-2",
|
|
114
|
+
children: [/* @__PURE__ */ l(i, { className: "h-4 w-4 text-primary" }), e.title]
|
|
115
|
+
}), /* @__PURE__ */ l("span", {
|
|
116
|
+
className: `text-xs px-2 py-0.5 rounded-full capitalize ${_[e.status] ?? "bg-gray-100"}`,
|
|
117
|
+
children: e.status.toLowerCase()
|
|
118
|
+
})]
|
|
119
|
+
})
|
|
120
|
+
}), /* @__PURE__ */ u(p, {
|
|
121
|
+
className: "space-y-3",
|
|
122
|
+
children: [
|
|
123
|
+
/* @__PURE__ */ l("p", {
|
|
124
|
+
className: "text-sm text-muted-foreground",
|
|
125
|
+
children: e.description ?? "No description"
|
|
126
|
+
}),
|
|
127
|
+
/* @__PURE__ */ l(y, { progress: e.progress }),
|
|
128
|
+
/* @__PURE__ */ u("div", {
|
|
129
|
+
className: "flex gap-3 text-xs text-muted-foreground",
|
|
130
|
+
children: [/* @__PURE__ */ u("span", {
|
|
131
|
+
className: "flex items-center gap-1",
|
|
132
|
+
children: [/* @__PURE__ */ l(r, { className: "h-3 w-3" }), e.periodLabel]
|
|
133
|
+
}), /* @__PURE__ */ u("span", {
|
|
134
|
+
className: "flex items-center gap-1",
|
|
135
|
+
children: [/* @__PURE__ */ l(o, { className: "h-3 w-3" }), e.ownerId]
|
|
136
|
+
})]
|
|
137
|
+
}),
|
|
138
|
+
/* @__PURE__ */ u("div", {
|
|
139
|
+
className: "text-xs text-muted-foreground",
|
|
140
|
+
children: [
|
|
141
|
+
e.keyResults.length,
|
|
142
|
+
" key result",
|
|
143
|
+
e.keyResults.length === 1 ? "" : "s"
|
|
144
|
+
]
|
|
145
|
+
})
|
|
146
|
+
]
|
|
147
|
+
})]
|
|
148
|
+
}, e.id))
|
|
149
|
+
}),
|
|
150
|
+
E.length === 0 && /* @__PURE__ */ l("p", {
|
|
151
|
+
className: "text-center text-muted-foreground py-8",
|
|
152
|
+
children: "No objectives found. Create one to start tracking a goal."
|
|
153
|
+
})
|
|
154
|
+
]
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
//#endregion
|
|
158
|
+
export { b as GoalsGoalsPagePage };
|
|
159
|
+
|
|
160
|
+
//# sourceMappingURL=GoalsGoalsPagePage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalsGoalsPagePage.js","names":[],"sources":["../../../src/planmagnet/pages/GoalsGoalsPagePage.tsx"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { useState } from 'react';\nimport { gql } from '@apollo/client';\nimport { useQuery } from '@apollo/client/react';\nimport { Card, CardContent, CardHeader, CardTitle, Button } from '@burdenoff/fe-libs/ui';\nimport { Flag, Calendar, User, Plus } from 'lucide-react';\nimport { usePlanMagnet, usePlanMagnetNavigate } from '../providers/PlanMagnetProvider';\n\n// BOFF-4441: OKR / goal tracking bounded core — real Objective + KeyResult\n// data. `progress` on both types is computed live by the backend from\n// current/target values, never fabricated on the client.\nconst GET_OBJECTIVES = gql`\n query GetObjectives($workspaceId: ID!, $filter: PlanmagnetObjectiveFilter) {\n planmagnetObjectives(workspaceId: $workspaceId, filter: $filter, pagination: { first: 100 }) {\n items {\n id\n title\n description\n ownerId\n periodLabel\n status\n progress\n endDate\n keyResults {\n id\n }\n }\n totalCount\n }\n }\n`;\n\nconst statusColor: Record<string, string> = {\n DRAFT: 'bg-gray-100 text-gray-800',\n ACTIVE: 'bg-blue-100 text-blue-800',\n COMPLETED: 'bg-green-100 text-green-800',\n CANCELLED: 'bg-red-100 text-red-800',\n};\n\nconst objectiveStatuses = ['all', 'DRAFT', 'ACTIVE', 'COMPLETED', 'CANCELLED'] as const;\n\nfunction ProgressBar({ progress }: { progress: number }) {\n const pct = Math.max(0, Math.min(100, Math.round(progress)));\n return (\n <div className=\"space-y-1\">\n <div className=\"flex justify-between text-xs text-muted-foreground\">\n <span>Progress</span>\n <span>{pct}%</span>\n </div>\n <div className=\"h-2 w-full rounded-full bg-muted overflow-hidden\">\n <div\n className=\"h-full rounded-full bg-primary transition-all\"\n style={{ width: `${pct}%` }}\n />\n </div>\n </div>\n );\n}\n\nexport function GoalsGoalsPagePage() {\n const { workspaceId } = usePlanMagnet();\n const navigate = usePlanMagnetNavigate();\n const [filter, setFilter] = useState<string>('all');\n\n const {\n data,\n loading,\n error,\n } = // eslint-disable-next-line @typescript-eslint/no-explicit-any\n useQuery<Record<string, any>>(GET_OBJECTIVES, {\n variables: {\n workspaceId: workspaceId ?? 'default',\n filter: filter !== 'all' ? { status: filter } : undefined,\n },\n skip: !workspaceId,\n });\n\n if (loading)\n return (\n <div className=\"flex items-center justify-center p-12\">\n <div className=\"animate-spin h-8 w-8 border-2 border-primary border-t-transparent rounded-full\" />\n </div>\n );\n if (error)\n return <div className=\"p-6 text-red-500\">Error loading objectives: {error.message}</div>;\n\n const objectives = data?.planmagnetObjectives?.items ?? [];\n const totalCount = data?.planmagnetObjectives?.totalCount ?? 0;\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Objectives & Key Results</h1>\n <p className=\"text-sm text-muted-foreground\">\n {totalCount} objective{totalCount === 1 ? '' : 's'} in this workspace\n </p>\n </div>\n <Button size=\"sm\" onClick={() => navigate('/goals/create-objective-page')}>\n <Plus className=\"mr-1 h-4 w-4\" />\n New Objective\n </Button>\n </div>\n <div className=\"flex gap-1\">\n {objectiveStatuses.map((s) => (\n <button\n key={s}\n onClick={() => setFilter(s)}\n className={`px-3 py-1.5 text-sm rounded-md capitalize ${filter === s ? 'bg-primary text-primary-foreground' : 'text-muted-foreground hover:bg-muted'}`}\n >\n {s === 'all' ? 'All' : s.toLowerCase()}\n </button>\n ))}\n </div>\n <div className=\"grid grid-cols-1 md:grid-cols-2 gap-4\">\n {objectives.map(\n (obj: {\n id: string;\n title: string;\n description: string | null;\n ownerId: string;\n periodLabel: string;\n status: string;\n progress: number;\n endDate: string | null;\n keyResults: { id: string }[];\n }) => (\n <Card\n key={obj.id}\n className=\"cursor-pointer hover:border-primary transition-colors\"\n onClick={() => navigate(`/goals/objective-detail-page?objectiveId=${obj.id}`)}\n >\n <CardHeader className=\"pb-2\">\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base flex items-center gap-2\">\n <Flag className=\"h-4 w-4 text-primary\" />\n {obj.title}\n </CardTitle>\n <span\n className={`text-xs px-2 py-0.5 rounded-full capitalize ${statusColor[obj.status] ?? 'bg-gray-100'}`}\n >\n {obj.status.toLowerCase()}\n </span>\n </div>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <p className=\"text-sm text-muted-foreground\">\n {obj.description ?? 'No description'}\n </p>\n <ProgressBar progress={obj.progress} />\n <div className=\"flex gap-3 text-xs text-muted-foreground\">\n <span className=\"flex items-center gap-1\">\n <Calendar className=\"h-3 w-3\" />\n {obj.periodLabel}\n </span>\n <span className=\"flex items-center gap-1\">\n <User className=\"h-3 w-3\" />\n {obj.ownerId}\n </span>\n </div>\n <div className=\"text-xs text-muted-foreground\">\n {obj.keyResults.length} key result{obj.keyResults.length === 1 ? '' : 's'}\n </div>\n </CardContent>\n </Card>\n )\n )}\n </div>\n {objectives.length === 0 && (\n <p className=\"text-center text-muted-foreground py-8\">\n No objectives found. Create one to start tracking a goal.\n </p>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalsObjectiveDetailPagePage.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/pages/GoalsObjectiveDetailPagePage.tsx"],"names":[],"mappings":"AA+NA,wBAAgB,4BAA4B,4CA+O3C"}
|