@burdenoff/microfe-planmagnet 2026.509.103

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 (222) hide show
  1. package/README.md +12 -0
  2. package/dist/dev/main.d.ts +2 -0
  3. package/dist/dev/main.d.ts.map +1 -0
  4. package/dist/generated/global-operations.d.ts +2 -0
  5. package/dist/generated/global-operations.d.ts.map +1 -0
  6. package/dist/generated/global-types.d.ts +21253 -0
  7. package/dist/generated/global-types.d.ts.map +1 -0
  8. package/dist/generated/wspace-operations.d.ts +8370 -0
  9. package/dist/generated/wspace-operations.d.ts.map +1 -0
  10. package/dist/generated/wspace-types.d.ts +4182 -0
  11. package/dist/generated/wspace-types.d.ts.map +1 -0
  12. package/dist/index.d.ts +2 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +5 -0
  15. package/dist/node_modules/@apollo/client/errors/CombinedGraphQLErrors.js +24 -0
  16. package/dist/node_modules/@apollo/client/errors/CombinedGraphQLErrors.js.map +1 -0
  17. package/dist/node_modules/@apollo/client/errors/utils.js +16 -0
  18. package/dist/node_modules/@apollo/client/errors/utils.js.map +1 -0
  19. package/dist/planmagnet/PlanMagnetRoot.d.ts +5 -0
  20. package/dist/planmagnet/PlanMagnetRoot.d.ts.map +1 -0
  21. package/dist/planmagnet/PlanMagnetRoot.js +292 -0
  22. package/dist/planmagnet/PlanMagnetRoot.js.map +1 -0
  23. package/dist/planmagnet/PlanMagnetRoutes.d.ts +2 -0
  24. package/dist/planmagnet/PlanMagnetRoutes.d.ts.map +1 -0
  25. package/dist/planmagnet/PlanMagnetRoutes.js +211 -0
  26. package/dist/planmagnet/PlanMagnetRoutes.js.map +1 -0
  27. package/dist/planmagnet/index.d.ts +5 -0
  28. package/dist/planmagnet/index.d.ts.map +1 -0
  29. package/dist/planmagnet/index.js +3 -0
  30. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.d.ts +2 -0
  31. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.d.ts.map +1 -0
  32. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js +312 -0
  33. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js.map +1 -0
  34. package/dist/planmagnet/pages/CollaborationCollaborationPagePage.d.ts +2 -0
  35. package/dist/planmagnet/pages/CollaborationCollaborationPagePage.d.ts.map +1 -0
  36. package/dist/planmagnet/pages/CollaborationCollaborationPagePage.js +110 -0
  37. package/dist/planmagnet/pages/CollaborationCollaborationPagePage.js.map +1 -0
  38. package/dist/planmagnet/pages/CollaborationCreateChannelPagePage.d.ts +2 -0
  39. package/dist/planmagnet/pages/CollaborationCreateChannelPagePage.d.ts.map +1 -0
  40. package/dist/planmagnet/pages/CollaborationCreateChannelPagePage.js +96 -0
  41. package/dist/planmagnet/pages/CollaborationCreateChannelPagePage.js.map +1 -0
  42. package/dist/planmagnet/pages/CollaborationFilesPagePage.d.ts +2 -0
  43. package/dist/planmagnet/pages/CollaborationFilesPagePage.d.ts.map +1 -0
  44. package/dist/planmagnet/pages/CollaborationFilesPagePage.js +112 -0
  45. package/dist/planmagnet/pages/CollaborationFilesPagePage.js.map +1 -0
  46. package/dist/planmagnet/pages/CollaborationMessagesPagePage.d.ts +2 -0
  47. package/dist/planmagnet/pages/CollaborationMessagesPagePage.d.ts.map +1 -0
  48. package/dist/planmagnet/pages/CollaborationMessagesPagePage.js +141 -0
  49. package/dist/planmagnet/pages/CollaborationMessagesPagePage.js.map +1 -0
  50. package/dist/planmagnet/pages/CollaborationNewDiscussionPagePage.d.ts +2 -0
  51. package/dist/planmagnet/pages/CollaborationNewDiscussionPagePage.d.ts.map +1 -0
  52. package/dist/planmagnet/pages/CollaborationNewDiscussionPagePage.js +124 -0
  53. package/dist/planmagnet/pages/CollaborationNewDiscussionPagePage.js.map +1 -0
  54. package/dist/planmagnet/pages/DashboardDashboardPagePage.d.ts +2 -0
  55. package/dist/planmagnet/pages/DashboardDashboardPagePage.d.ts.map +1 -0
  56. package/dist/planmagnet/pages/DashboardDashboardPagePage.js +350 -0
  57. package/dist/planmagnet/pages/DashboardDashboardPagePage.js.map +1 -0
  58. package/dist/planmagnet/pages/MeetingsScheduleMeetingPagePage.d.ts +2 -0
  59. package/dist/planmagnet/pages/MeetingsScheduleMeetingPagePage.d.ts.map +1 -0
  60. package/dist/planmagnet/pages/MeetingsScheduleMeetingPagePage.js +290 -0
  61. package/dist/planmagnet/pages/MeetingsScheduleMeetingPagePage.js.map +1 -0
  62. package/dist/planmagnet/pages/ProductsCreateProductPagePage.d.ts +2 -0
  63. package/dist/planmagnet/pages/ProductsCreateProductPagePage.d.ts.map +1 -0
  64. package/dist/planmagnet/pages/ProductsCreateProductPagePage.js +189 -0
  65. package/dist/planmagnet/pages/ProductsCreateProductPagePage.js.map +1 -0
  66. package/dist/planmagnet/pages/ProductsCreateRoadmapPagePage.d.ts +2 -0
  67. package/dist/planmagnet/pages/ProductsCreateRoadmapPagePage.d.ts.map +1 -0
  68. package/dist/planmagnet/pages/ProductsCreateRoadmapPagePage.js +151 -0
  69. package/dist/planmagnet/pages/ProductsCreateRoadmapPagePage.js.map +1 -0
  70. package/dist/planmagnet/pages/ProductsEditProductPagePage.d.ts +2 -0
  71. package/dist/planmagnet/pages/ProductsEditProductPagePage.d.ts.map +1 -0
  72. package/dist/planmagnet/pages/ProductsEditProductPagePage.js +257 -0
  73. package/dist/planmagnet/pages/ProductsEditProductPagePage.js.map +1 -0
  74. package/dist/planmagnet/pages/ProductsEditReleasePagePage.d.ts +2 -0
  75. package/dist/planmagnet/pages/ProductsEditReleasePagePage.d.ts.map +1 -0
  76. package/dist/planmagnet/pages/ProductsEditReleasePagePage.js +221 -0
  77. package/dist/planmagnet/pages/ProductsEditReleasePagePage.js.map +1 -0
  78. package/dist/planmagnet/pages/ProductsFeatureAnalyticsPagePage.d.ts +2 -0
  79. package/dist/planmagnet/pages/ProductsFeatureAnalyticsPagePage.d.ts.map +1 -0
  80. package/dist/planmagnet/pages/ProductsFeatureAnalyticsPagePage.js +284 -0
  81. package/dist/planmagnet/pages/ProductsFeatureAnalyticsPagePage.js.map +1 -0
  82. package/dist/planmagnet/pages/ProductsFeatureDetailPagePage.d.ts +2 -0
  83. package/dist/planmagnet/pages/ProductsFeatureDetailPagePage.d.ts.map +1 -0
  84. package/dist/planmagnet/pages/ProductsFeatureDetailPagePage.js +291 -0
  85. package/dist/planmagnet/pages/ProductsFeatureDetailPagePage.js.map +1 -0
  86. package/dist/planmagnet/pages/ProductsFeaturesPagePage.d.ts +2 -0
  87. package/dist/planmagnet/pages/ProductsFeaturesPagePage.d.ts.map +1 -0
  88. package/dist/planmagnet/pages/ProductsFeaturesPagePage.js +257 -0
  89. package/dist/planmagnet/pages/ProductsFeaturesPagePage.js.map +1 -0
  90. package/dist/planmagnet/pages/ProductsNewFeaturePagePage.d.ts +2 -0
  91. package/dist/planmagnet/pages/ProductsNewFeaturePagePage.d.ts.map +1 -0
  92. package/dist/planmagnet/pages/ProductsNewFeaturePagePage.js +222 -0
  93. package/dist/planmagnet/pages/ProductsNewFeaturePagePage.js.map +1 -0
  94. package/dist/planmagnet/pages/ProductsProductDetailPagePage.d.ts +2 -0
  95. package/dist/planmagnet/pages/ProductsProductDetailPagePage.d.ts.map +1 -0
  96. package/dist/planmagnet/pages/ProductsProductDetailPagePage.js +288 -0
  97. package/dist/planmagnet/pages/ProductsProductDetailPagePage.js.map +1 -0
  98. package/dist/planmagnet/pages/ProductsProductsPagePage.d.ts +2 -0
  99. package/dist/planmagnet/pages/ProductsProductsPagePage.d.ts.map +1 -0
  100. package/dist/planmagnet/pages/ProductsProductsPagePage.js +225 -0
  101. package/dist/planmagnet/pages/ProductsProductsPagePage.js.map +1 -0
  102. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.d.ts +2 -0
  103. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.d.ts.map +1 -0
  104. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.js +262 -0
  105. package/dist/planmagnet/pages/ProductsReleaseDetailPagePage.js.map +1 -0
  106. package/dist/planmagnet/pages/ProductsReleasesPagePage.d.ts +2 -0
  107. package/dist/planmagnet/pages/ProductsReleasesPagePage.d.ts.map +1 -0
  108. package/dist/planmagnet/pages/ProductsReleasesPagePage.js +162 -0
  109. package/dist/planmagnet/pages/ProductsReleasesPagePage.js.map +1 -0
  110. package/dist/planmagnet/pages/ProductsRoadmapAnalyticsPagePage.d.ts +2 -0
  111. package/dist/planmagnet/pages/ProductsRoadmapAnalyticsPagePage.d.ts.map +1 -0
  112. package/dist/planmagnet/pages/ProductsRoadmapAnalyticsPagePage.js +342 -0
  113. package/dist/planmagnet/pages/ProductsRoadmapAnalyticsPagePage.js.map +1 -0
  114. package/dist/planmagnet/pages/ProductsRoadmapDetailPagePage.d.ts +2 -0
  115. package/dist/planmagnet/pages/ProductsRoadmapDetailPagePage.d.ts.map +1 -0
  116. package/dist/planmagnet/pages/ProductsRoadmapDetailPagePage.js +233 -0
  117. package/dist/planmagnet/pages/ProductsRoadmapDetailPagePage.js.map +1 -0
  118. package/dist/planmagnet/pages/ProductsRoadmapsPagePage.d.ts +2 -0
  119. package/dist/planmagnet/pages/ProductsRoadmapsPagePage.d.ts.map +1 -0
  120. package/dist/planmagnet/pages/ProductsRoadmapsPagePage.js +193 -0
  121. package/dist/planmagnet/pages/ProductsRoadmapsPagePage.js.map +1 -0
  122. package/dist/planmagnet/pages/ProjectsActiveProjectsPagePage.d.ts +2 -0
  123. package/dist/planmagnet/pages/ProjectsActiveProjectsPagePage.d.ts.map +1 -0
  124. package/dist/planmagnet/pages/ProjectsActiveProjectsPagePage.js +116 -0
  125. package/dist/planmagnet/pages/ProjectsActiveProjectsPagePage.js.map +1 -0
  126. package/dist/planmagnet/pages/ProjectsCreateProjectPagePage.d.ts +2 -0
  127. package/dist/planmagnet/pages/ProjectsCreateProjectPagePage.d.ts.map +1 -0
  128. package/dist/planmagnet/pages/ProjectsCreateProjectPagePage.js +199 -0
  129. package/dist/planmagnet/pages/ProjectsCreateProjectPagePage.js.map +1 -0
  130. package/dist/planmagnet/pages/ProjectsEditProjectPagePage.d.ts +2 -0
  131. package/dist/planmagnet/pages/ProjectsEditProjectPagePage.d.ts.map +1 -0
  132. package/dist/planmagnet/pages/ProjectsEditProjectPagePage.js +197 -0
  133. package/dist/planmagnet/pages/ProjectsEditProjectPagePage.js.map +1 -0
  134. package/dist/planmagnet/pages/ProjectsMilestoneDetailPagePage.d.ts +2 -0
  135. package/dist/planmagnet/pages/ProjectsMilestoneDetailPagePage.d.ts.map +1 -0
  136. package/dist/planmagnet/pages/ProjectsMilestoneDetailPagePage.js +173 -0
  137. package/dist/planmagnet/pages/ProjectsMilestoneDetailPagePage.js.map +1 -0
  138. package/dist/planmagnet/pages/ProjectsMilestonesPagePage.d.ts +2 -0
  139. package/dist/planmagnet/pages/ProjectsMilestonesPagePage.d.ts.map +1 -0
  140. package/dist/planmagnet/pages/ProjectsMilestonesPagePage.js +119 -0
  141. package/dist/planmagnet/pages/ProjectsMilestonesPagePage.js.map +1 -0
  142. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.d.ts +2 -0
  143. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.d.ts.map +1 -0
  144. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js +257 -0
  145. package/dist/planmagnet/pages/ProjectsPlanningDetailPagePage.js.map +1 -0
  146. package/dist/planmagnet/pages/ProjectsPlanningEditPagePage.d.ts +2 -0
  147. package/dist/planmagnet/pages/ProjectsPlanningEditPagePage.d.ts.map +1 -0
  148. package/dist/planmagnet/pages/ProjectsPlanningEditPagePage.js +222 -0
  149. package/dist/planmagnet/pages/ProjectsPlanningEditPagePage.js.map +1 -0
  150. package/dist/planmagnet/pages/ProjectsPlanningPagePage.d.ts +2 -0
  151. package/dist/planmagnet/pages/ProjectsPlanningPagePage.d.ts.map +1 -0
  152. package/dist/planmagnet/pages/ProjectsPlanningPagePage.js +142 -0
  153. package/dist/planmagnet/pages/ProjectsPlanningPagePage.js.map +1 -0
  154. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.d.ts +2 -0
  155. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.d.ts.map +1 -0
  156. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js +363 -0
  157. package/dist/planmagnet/pages/ProjectsProjectDetailPagePage.js.map +1 -0
  158. package/dist/planmagnet/pages/ProjectsProjectsPagePage.d.ts +2 -0
  159. package/dist/planmagnet/pages/ProjectsProjectsPagePage.d.ts.map +1 -0
  160. package/dist/planmagnet/pages/ProjectsProjectsPagePage.js +176 -0
  161. package/dist/planmagnet/pages/ProjectsProjectsPagePage.js.map +1 -0
  162. package/dist/planmagnet/pages/ReportsCreateReportPagePage.d.ts +2 -0
  163. package/dist/planmagnet/pages/ReportsCreateReportPagePage.d.ts.map +1 -0
  164. package/dist/planmagnet/pages/ReportsCreateReportPagePage.js +173 -0
  165. package/dist/planmagnet/pages/ReportsCreateReportPagePage.js.map +1 -0
  166. package/dist/planmagnet/pages/ReportsReportsPagePage.d.ts +2 -0
  167. package/dist/planmagnet/pages/ReportsReportsPagePage.d.ts.map +1 -0
  168. package/dist/planmagnet/pages/ReportsReportsPagePage.js +221 -0
  169. package/dist/planmagnet/pages/ReportsReportsPagePage.js.map +1 -0
  170. package/dist/planmagnet/pages/SprintsStartSprintPagePage.d.ts +2 -0
  171. package/dist/planmagnet/pages/SprintsStartSprintPagePage.d.ts.map +1 -0
  172. package/dist/planmagnet/pages/SprintsStartSprintPagePage.js +282 -0
  173. package/dist/planmagnet/pages/SprintsStartSprintPagePage.js.map +1 -0
  174. package/dist/planmagnet/pages/TasksCreateTaskPagePage.d.ts +2 -0
  175. package/dist/planmagnet/pages/TasksCreateTaskPagePage.d.ts.map +1 -0
  176. package/dist/planmagnet/pages/TasksCreateTaskPagePage.js +227 -0
  177. package/dist/planmagnet/pages/TasksCreateTaskPagePage.js.map +1 -0
  178. package/dist/planmagnet/pages/TasksEditTaskPagePage.d.ts +2 -0
  179. package/dist/planmagnet/pages/TasksEditTaskPagePage.d.ts.map +1 -0
  180. package/dist/planmagnet/pages/TasksEditTaskPagePage.js +234 -0
  181. package/dist/planmagnet/pages/TasksEditTaskPagePage.js.map +1 -0
  182. package/dist/planmagnet/pages/TasksTaskDetailPagePage.d.ts +2 -0
  183. package/dist/planmagnet/pages/TasksTaskDetailPagePage.d.ts.map +1 -0
  184. package/dist/planmagnet/pages/TasksTaskDetailPagePage.js +232 -0
  185. package/dist/planmagnet/pages/TasksTaskDetailPagePage.js.map +1 -0
  186. package/dist/planmagnet/pages/TasksTasksPagePage.d.ts +2 -0
  187. package/dist/planmagnet/pages/TasksTasksPagePage.d.ts.map +1 -0
  188. package/dist/planmagnet/pages/TasksTasksPagePage.js +206 -0
  189. package/dist/planmagnet/pages/TasksTasksPagePage.js.map +1 -0
  190. package/dist/planmagnet/pages/TeamCreateTeamPagePage.d.ts +2 -0
  191. package/dist/planmagnet/pages/TeamCreateTeamPagePage.d.ts.map +1 -0
  192. package/dist/planmagnet/pages/TeamCreateTeamPagePage.js +138 -0
  193. package/dist/planmagnet/pages/TeamCreateTeamPagePage.js.map +1 -0
  194. package/dist/planmagnet/pages/TeamInviteMemberPagePage.d.ts +2 -0
  195. package/dist/planmagnet/pages/TeamInviteMemberPagePage.d.ts.map +1 -0
  196. package/dist/planmagnet/pages/TeamInviteMemberPagePage.js +161 -0
  197. package/dist/planmagnet/pages/TeamInviteMemberPagePage.js.map +1 -0
  198. package/dist/planmagnet/pages/TeamTeamPagePage.d.ts +2 -0
  199. package/dist/planmagnet/pages/TeamTeamPagePage.d.ts.map +1 -0
  200. package/dist/planmagnet/pages/TeamTeamPagePage.js +203 -0
  201. package/dist/planmagnet/pages/TeamTeamPagePage.js.map +1 -0
  202. package/dist/planmagnet/pages/WorkspaceCreateWorkspacePagePage.d.ts +2 -0
  203. package/dist/planmagnet/pages/WorkspaceCreateWorkspacePagePage.d.ts.map +1 -0
  204. package/dist/planmagnet/pages/WorkspaceCreateWorkspacePagePage.js +97 -0
  205. package/dist/planmagnet/pages/WorkspaceCreateWorkspacePagePage.js.map +1 -0
  206. package/dist/planmagnet/providers/PlanMagnetProvider.d.ts +31 -0
  207. package/dist/planmagnet/providers/PlanMagnetProvider.d.ts.map +1 -0
  208. package/dist/planmagnet/providers/PlanMagnetProvider.js +119 -0
  209. package/dist/planmagnet/providers/PlanMagnetProvider.js.map +1 -0
  210. package/dist/planmagnet/store/planmagnetStore.d.ts +30 -0
  211. package/dist/planmagnet/store/planmagnetStore.d.ts.map +1 -0
  212. package/dist/planmagnet/store/planmagnetStore.js +42 -0
  213. package/dist/planmagnet/store/planmagnetStore.js.map +1 -0
  214. package/dist/planmagnet/types/index.d.ts +317 -0
  215. package/dist/planmagnet/types/index.d.ts.map +1 -0
  216. package/dist/planmagnet/utils/cn.d.ts +4 -0
  217. package/dist/planmagnet/utils/cn.d.ts.map +1 -0
  218. package/dist/planmagnet/utils/navigation.d.ts +2 -0
  219. package/dist/planmagnet/utils/navigation.d.ts.map +1 -0
  220. package/dist/planmagnet/utils/navigation.js +8 -0
  221. package/dist/planmagnet/utils/navigation.js.map +1 -0
  222. package/package.json +107 -0
@@ -0,0 +1,234 @@
1
+ import { usePlanMagnet as e } from "../providers/PlanMagnetProvider.js";
2
+ import { useMemo as t, useState as n } from "react";
3
+ import { ArrowLeft as r, Save as i } from "lucide-react";
4
+ import { gql as a } from "@apollo/client";
5
+ import { useMutation as o, useQuery as s } from "@apollo/client/react";
6
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
+ import { Button as u, Card as d, CardContent as f, CardHeader as p, CardTitle as m, Input as h } from "@burdenoff/fe-libs/ui";
8
+ //#region src/planmagnet/pages/TasksEditTaskPagePage.tsx
9
+ var g = a`
10
+ query GetWorkItem($workspaceId: ID!, $workItemId: ID!) {
11
+ planmagnetWorkItem(workspaceId: $workspaceId, id: $workItemId) {
12
+ id
13
+ title
14
+ description
15
+ type
16
+ status
17
+ priority
18
+ key
19
+ storyPoints
20
+ dueDate
21
+ labels
22
+ tags
23
+ createdAt
24
+ updatedAt
25
+ }
26
+ }
27
+ `, _ = a`
28
+ mutation UpdateWorkItem($workspaceId: ID!, $workItemId: ID!, $input: UpdateWorkItemInput!) {
29
+ planmagnetUpdateWorkItem(workspaceId: $workspaceId, id: $workItemId, input: $input) {
30
+ id
31
+ title
32
+ description
33
+ type
34
+ status
35
+ priority
36
+ storyPoints
37
+ dueDate
38
+ labels
39
+ updatedAt
40
+ }
41
+ }
42
+ `;
43
+ function v() {
44
+ let { workspaceId: a } = e(), v = new URLSearchParams(window.location.search).get("taskId") ?? "", { data: y, loading: b, error: x } = s(g, {
45
+ variables: {
46
+ workspaceId: a,
47
+ workItemId: v
48
+ },
49
+ skip: !a || !v
50
+ }), [S, { loading: C, error: w }] = o(_, { refetchQueries: ["GetWorkItems", "GetWorkItem"] }), T = y?.planmagnetWorkItem, E = t(() => ({
51
+ title: T?.title ?? "",
52
+ description: T?.description ?? "",
53
+ priority: T?.priority ?? "MEDIUM",
54
+ type: T?.type ?? "STORY",
55
+ storyPoints: T?.storyPoints?.toString() ?? "0",
56
+ labels: (T?.labels ?? []).join(", "),
57
+ dueDate: T?.dueDate ?? ""
58
+ }), [T]), [D, O] = n({}), k = {
59
+ ...E,
60
+ ...D
61
+ }, A = (e) => O(e), j = async () => {
62
+ !a || !v || await S({ variables: {
63
+ workspaceId: a,
64
+ workItemId: v,
65
+ input: {
66
+ title: k.title,
67
+ description: k.description || void 0,
68
+ priority: k.priority,
69
+ type: k.type,
70
+ storyPoints: k.storyPoints ? parseInt(k.storyPoints, 10) : void 0,
71
+ labels: k.labels ? k.labels.split(",").map((e) => e.trim()).filter(Boolean) : void 0,
72
+ dueDate: k.dueDate || void 0
73
+ }
74
+ } });
75
+ };
76
+ if (b) return /* @__PURE__ */ c("div", {
77
+ className: "flex items-center justify-center p-12",
78
+ children: /* @__PURE__ */ c("div", { className: "animate-spin h-8 w-8 border-2 border-primary border-t-transparent rounded-full" })
79
+ });
80
+ if (x) return /* @__PURE__ */ l("div", {
81
+ className: "p-6 text-red-500",
82
+ children: ["Error: ", x.message]
83
+ });
84
+ if (!y?.planmagnetWorkItem) return /* @__PURE__ */ c("div", {
85
+ className: "p-6 text-muted-foreground",
86
+ children: "Task not found."
87
+ });
88
+ let M = y.workItem;
89
+ return /* @__PURE__ */ l("div", {
90
+ className: "space-y-6 p-6 max-w-4xl",
91
+ children: [
92
+ /* @__PURE__ */ l("div", {
93
+ className: "flex items-center justify-between",
94
+ children: [/* @__PURE__ */ l("div", {
95
+ className: "flex items-center gap-3",
96
+ children: [/* @__PURE__ */ c(u, {
97
+ variant: "ghost",
98
+ size: "sm",
99
+ children: /* @__PURE__ */ c(r, { className: "h-4 w-4" })
100
+ }), /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("h1", {
101
+ className: "text-2xl font-semibold",
102
+ children: "Edit Task"
103
+ }), /* @__PURE__ */ c("p", {
104
+ className: "text-sm text-muted-foreground",
105
+ children: M.title
106
+ })] })]
107
+ }), /* @__PURE__ */ l(u, {
108
+ size: "sm",
109
+ onClick: j,
110
+ disabled: C,
111
+ children: [/* @__PURE__ */ c(i, { className: "mr-1 h-4 w-4" }), C ? "Saving..." : "Save Changes"]
112
+ })]
113
+ }),
114
+ w && /* @__PURE__ */ l("div", {
115
+ className: "p-6 text-red-500",
116
+ children: ["Error: ", w.message]
117
+ }),
118
+ /* @__PURE__ */ l(d, { children: [/* @__PURE__ */ c(p, { children: /* @__PURE__ */ c(m, { children: "Task Details" }) }), /* @__PURE__ */ l(f, {
119
+ className: "space-y-4",
120
+ children: [
121
+ /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
122
+ className: "text-sm font-medium",
123
+ children: "Title"
124
+ }), /* @__PURE__ */ c(h, {
125
+ value: k.title,
126
+ onChange: (e) => A({
127
+ ...k,
128
+ title: e.target.value
129
+ }),
130
+ className: "mt-1"
131
+ })] }),
132
+ /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
133
+ className: "text-sm font-medium",
134
+ children: "Description"
135
+ }), /* @__PURE__ */ c("textarea", {
136
+ className: "mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm min-h-[100px]",
137
+ value: k.description,
138
+ onChange: (e) => A({
139
+ ...k,
140
+ description: e.target.value
141
+ })
142
+ })] }),
143
+ /* @__PURE__ */ l("div", {
144
+ className: "grid grid-cols-3 gap-4",
145
+ children: [
146
+ /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
147
+ className: "text-sm font-medium",
148
+ children: "Priority"
149
+ }), /* @__PURE__ */ c("select", {
150
+ className: "mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",
151
+ value: k.priority,
152
+ onChange: (e) => A({
153
+ ...k,
154
+ priority: e.target.value
155
+ }),
156
+ children: [
157
+ "LOW",
158
+ "MEDIUM",
159
+ "HIGH",
160
+ "CRITICAL"
161
+ ].map((e) => /* @__PURE__ */ c("option", {
162
+ value: e,
163
+ children: e.toLowerCase()
164
+ }, e))
165
+ })] }),
166
+ /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
167
+ className: "text-sm font-medium",
168
+ children: "Type"
169
+ }), /* @__PURE__ */ c("select", {
170
+ className: "mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm",
171
+ value: k.type,
172
+ onChange: (e) => A({
173
+ ...k,
174
+ type: e.target.value
175
+ }),
176
+ children: [
177
+ "STORY",
178
+ "BUG",
179
+ "TASK",
180
+ "EPIC",
181
+ "SUBTASK"
182
+ ].map((e) => /* @__PURE__ */ c("option", {
183
+ value: e,
184
+ children: e.toLowerCase()
185
+ }, e))
186
+ })] }),
187
+ /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
188
+ className: "text-sm font-medium",
189
+ children: "Story Points"
190
+ }), /* @__PURE__ */ c(h, {
191
+ type: "number",
192
+ value: k.storyPoints,
193
+ onChange: (e) => A({
194
+ ...k,
195
+ storyPoints: e.target.value
196
+ }),
197
+ className: "mt-1"
198
+ })] })
199
+ ]
200
+ }),
201
+ /* @__PURE__ */ l("div", {
202
+ className: "grid grid-cols-2 gap-4",
203
+ children: [/* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
204
+ className: "text-sm font-medium",
205
+ children: "Due Date"
206
+ }), /* @__PURE__ */ c(h, {
207
+ type: "date",
208
+ value: k.dueDate,
209
+ onChange: (e) => A({
210
+ ...k,
211
+ dueDate: e.target.value
212
+ }),
213
+ className: "mt-1"
214
+ })] }), /* @__PURE__ */ l("div", { children: [/* @__PURE__ */ c("label", {
215
+ className: "text-sm font-medium",
216
+ children: "Labels"
217
+ }), /* @__PURE__ */ c(h, {
218
+ value: k.labels,
219
+ onChange: (e) => A({
220
+ ...k,
221
+ labels: e.target.value
222
+ }),
223
+ className: "mt-1"
224
+ })] })]
225
+ })
226
+ ]
227
+ })] })
228
+ ]
229
+ });
230
+ }
231
+ //#endregion
232
+ export { v as TasksEditTaskPagePage };
233
+
234
+ //# sourceMappingURL=TasksEditTaskPagePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksEditTaskPagePage.js","names":[],"sources":["../../../src/planmagnet/pages/TasksEditTaskPagePage.tsx"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { useState, useMemo } from 'react';\nimport { gql } from '@apollo/client';\nimport { useQuery, useMutation } from '@apollo/client/react';\nimport { Card, CardContent, CardHeader, CardTitle, Button, Input } from '@burdenoff/fe-libs/ui';\nimport { Save, ArrowLeft } from 'lucide-react';\nimport { usePlanMagnet } from '../providers/PlanMagnetProvider';\n\nconst GET_WORK_ITEM = gql`\n query GetWorkItem($workspaceId: ID!, $workItemId: ID!) {\n planmagnetWorkItem(workspaceId: $workspaceId, id: $workItemId) {\n id\n title\n description\n type\n status\n priority\n key\n storyPoints\n dueDate\n labels\n tags\n createdAt\n updatedAt\n }\n }\n`;\n\nconst UPDATE_WORK_ITEM = gql`\n mutation UpdateWorkItem($workspaceId: ID!, $workItemId: ID!, $input: UpdateWorkItemInput!) {\n planmagnetUpdateWorkItem(workspaceId: $workspaceId, id: $workItemId, input: $input) {\n id\n title\n description\n type\n status\n priority\n storyPoints\n dueDate\n labels\n updatedAt\n }\n }\n`;\n\ninterface WorkItemNode {\n id: string;\n title: string;\n description: string | null;\n type: string;\n status: string;\n priority: string;\n key: string;\n storyPoints: number | null;\n dueDate: string | null;\n labels: string[];\n tags: string[];\n createdAt: string;\n updatedAt: string;\n}\n\nexport function TasksEditTaskPagePage() {\n const { workspaceId } = usePlanMagnet();\n\n // In a real app, workItemId comes from the route params.\n // For now we use a placeholder that the host shell should provide.\n const workItemId = new URLSearchParams(window.location.search).get('taskId') ?? '';\n\n const { data, loading, error } = useQuery<{\n workItem: WorkItemNode;\n }>(GET_WORK_ITEM, {\n variables: { workspaceId, workItemId },\n skip: !workspaceId || !workItemId,\n });\n\n const [updateWorkItem, { loading: saving, error: saveError }] = useMutation(UPDATE_WORK_ITEM, {\n refetchQueries: ['GetWorkItems', 'GetWorkItem'],\n });\n\n const workItem = data?.planmagnetWorkItem;\n\n const defaultForm = useMemo(\n () => ({\n title: workItem?.title ?? '',\n description: workItem?.description ?? '',\n priority: workItem?.priority ?? 'MEDIUM',\n type: workItem?.type ?? 'STORY',\n storyPoints: workItem?.storyPoints?.toString() ?? '0',\n labels: (workItem?.labels ?? []).join(', '),\n dueDate: workItem?.dueDate ?? '',\n }),\n [workItem]\n );\n\n const [formOverrides, setFormOverrides] = useState<Record<string, string>>({});\n const form = { ...defaultForm, ...formOverrides };\n const setForm = (updates: Record<string, string>) => setFormOverrides(updates);\n\n const handleSave = async () => {\n if (!workspaceId || !workItemId) return;\n await updateWorkItem({\n variables: {\n workspaceId,\n workItemId,\n input: {\n title: form.title,\n description: form.description || undefined,\n priority: form.priority,\n type: form.type,\n storyPoints: form.storyPoints ? parseInt(form.storyPoints, 10) : undefined,\n labels: form.labels\n ? form.labels\n .split(',')\n .map((l) => l.trim())\n .filter(Boolean)\n : undefined,\n dueDate: form.dueDate || undefined,\n },\n },\n });\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 }\n\n if (error) {\n return <div className=\"p-6 text-red-500\">Error: {error.message}</div>;\n }\n\n if (!data?.planmagnetWorkItem) {\n return <div className=\"p-6 text-muted-foreground\">Task not found.</div>;\n }\n\n const task = data.workItem;\n\n return (\n <div className=\"space-y-6 p-6 max-w-4xl\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-3\">\n <Button variant=\"ghost\" size=\"sm\">\n <ArrowLeft className=\"h-4 w-4\" />\n </Button>\n <div>\n <h1 className=\"text-2xl font-semibold\">Edit Task</h1>\n <p className=\"text-sm text-muted-foreground\">{task.title}</p>\n </div>\n </div>\n <Button size=\"sm\" onClick={handleSave} disabled={saving}>\n <Save className=\"mr-1 h-4 w-4\" />\n {saving ? 'Saving...' : 'Save Changes'}\n </Button>\n </div>\n {saveError && <div className=\"p-6 text-red-500\">Error: {saveError.message}</div>}\n <Card>\n <CardHeader>\n <CardTitle>Task Details</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 />\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 />\n </div>\n <div className=\"grid grid-cols-3 gap-4\">\n <div>\n <label className=\"text-sm font-medium\">Priority</label>\n <select\n className=\"mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm\"\n value={form.priority}\n onChange={(e) => setForm({ ...form, priority: e.target.value })}\n >\n {['LOW', 'MEDIUM', 'HIGH', 'CRITICAL'].map((p) => (\n <option key={p} value={p}>\n {p.toLowerCase()}\n </option>\n ))}\n </select>\n </div>\n <div>\n <label className=\"text-sm font-medium\">Type</label>\n <select\n className=\"mt-1 w-full rounded-md border border-input bg-background px-3 py-2 text-sm\"\n value={form.type}\n onChange={(e) => setForm({ ...form, type: e.target.value })}\n >\n {['STORY', 'BUG', 'TASK', 'EPIC', 'SUBTASK'].map((t) => (\n <option key={t} value={t}>\n {t.toLowerCase()}\n </option>\n ))}\n </select>\n </div>\n <div>\n <label className=\"text-sm font-medium\">Story Points</label>\n <Input\n type=\"number\"\n value={form.storyPoints}\n onChange={(e) => setForm({ ...form, storyPoints: e.target.value })}\n className=\"mt-1\"\n />\n </div>\n </div>\n <div className=\"grid grid-cols-2 gap-4\">\n <div>\n <label className=\"text-sm font-medium\">Due Date</label>\n <Input\n type=\"date\"\n value={form.dueDate}\n onChange={(e) => setForm({ ...form, dueDate: e.target.value })}\n className=\"mt-1\"\n />\n </div>\n <div>\n <label className=\"text-sm font-medium\">Labels</label>\n <Input\n value={form.labels}\n onChange={(e) => setForm({ ...form, labels: 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,2 @@
1
+ export declare function TasksTaskDetailPagePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=TasksTaskDetailPagePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksTaskDetailPagePage.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/pages/TasksTaskDetailPagePage.tsx"],"names":[],"mappings":"AAuEA,wBAAgB,uBAAuB,4CA8JtC"}
@@ -0,0 +1,232 @@
1
+ import { usePlanMagnet as e } from "../providers/PlanMagnetProvider.js";
2
+ import { gql as t } from "@apollo/client";
3
+ import { useQuery as n } from "@apollo/client/react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ import { Badge as a, Card as o, CardContent as s, CardHeader as c, CardTitle as l } from "@burdenoff/fe-libs/ui";
6
+ //#region src/planmagnet/pages/TasksTaskDetailPagePage.tsx
7
+ var u = t`
8
+ query GetWorkItemDetail($workspaceId: ID!, $workItemId: ID!) {
9
+ planmagnetWorkItem(workspaceId: $workspaceId, id: $workItemId) {
10
+ id
11
+ title
12
+ description
13
+ type
14
+ status
15
+ priority
16
+ key
17
+ assigneeId
18
+ reporterId
19
+ sprintId
20
+ boardColumnId
21
+ storyPoints
22
+ estimatedHours
23
+ dueDate
24
+ labels
25
+ tags
26
+ createdAt
27
+ updatedAt
28
+ }
29
+ }
30
+ `, d = {
31
+ LOW: "bg-gray-100 text-gray-800",
32
+ MEDIUM: "bg-blue-100 text-blue-800",
33
+ HIGH: "bg-orange-100 text-orange-800",
34
+ CRITICAL: "bg-red-100 text-red-800"
35
+ }, f = {
36
+ BACKLOG: "bg-gray-100 text-gray-800",
37
+ TODO: "bg-blue-100 text-blue-800",
38
+ IN_PROGRESS: "bg-yellow-100 text-yellow-800",
39
+ IN_REVIEW: "bg-purple-100 text-purple-800",
40
+ DONE: "bg-green-100 text-green-800",
41
+ BLOCKED: "bg-red-100 text-red-800",
42
+ TESTING: "bg-teal-100 text-teal-800",
43
+ CANCELLED: "bg-gray-100 text-gray-800"
44
+ };
45
+ function p() {
46
+ let { workspaceId: t } = e(), p = new URLSearchParams(window.location.search).get("taskId") ?? "", { data: m, loading: h, error: g } = n(u, {
47
+ variables: {
48
+ workspaceId: t,
49
+ workItemId: p
50
+ },
51
+ skip: !t || !p
52
+ });
53
+ if (h) return /* @__PURE__ */ r("div", {
54
+ className: "flex items-center justify-center p-12",
55
+ children: /* @__PURE__ */ r("div", { className: "animate-spin h-8 w-8 border-2 border-primary border-t-transparent rounded-full" })
56
+ });
57
+ if (g) return /* @__PURE__ */ i("div", {
58
+ className: "p-6 text-red-500",
59
+ children: ["Error: ", g.message]
60
+ });
61
+ let _ = m?.planmagnetWorkItem;
62
+ if (!_) return /* @__PURE__ */ r("div", {
63
+ className: "p-6 text-muted-foreground",
64
+ children: "Task not found."
65
+ });
66
+ let v = _.status.toLowerCase().replace("_", " "), y = [
67
+ {
68
+ action: "Task created",
69
+ by: _.reporterId ?? "Unknown",
70
+ at: _.createdAt
71
+ },
72
+ {
73
+ action: `Assigned to ${_.assigneeId ?? "Unassigned"}`,
74
+ by: _.reporterId ?? "Unknown",
75
+ at: _.createdAt
76
+ },
77
+ {
78
+ action: `Status changed to ${v}`,
79
+ by: _.assigneeId ?? "Unknown",
80
+ at: _.updatedAt
81
+ }
82
+ ];
83
+ return /* @__PURE__ */ i("div", {
84
+ className: "space-y-6 p-6",
85
+ children: [/* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("h1", {
86
+ className: "text-2xl font-semibold",
87
+ children: _.title
88
+ }), /* @__PURE__ */ i("p", {
89
+ className: "text-sm text-muted-foreground",
90
+ children: [
91
+ _.key,
92
+ " · ",
93
+ _.type.toLowerCase()
94
+ ]
95
+ })] }), /* @__PURE__ */ i("div", {
96
+ className: "grid grid-cols-1 lg:grid-cols-3 gap-6",
97
+ children: [/* @__PURE__ */ i("div", {
98
+ className: "lg:col-span-2 space-y-6",
99
+ children: [/* @__PURE__ */ i(o, { children: [/* @__PURE__ */ r(c, { children: /* @__PURE__ */ r(l, { children: "Description" }) }), /* @__PURE__ */ r(s, { children: /* @__PURE__ */ r("p", {
100
+ className: "text-sm",
101
+ children: _.description ?? "No description provided."
102
+ }) })] }), /* @__PURE__ */ i(o, { children: [/* @__PURE__ */ r(c, { children: /* @__PURE__ */ r(l, { children: "Activity" }) }), /* @__PURE__ */ r(s, { children: /* @__PURE__ */ r("div", {
103
+ className: "space-y-3",
104
+ children: y.map((e, t) => /* @__PURE__ */ i("div", {
105
+ className: "flex gap-3",
106
+ children: [/* @__PURE__ */ i("div", {
107
+ className: "flex flex-col items-center",
108
+ children: [/* @__PURE__ */ r("div", { className: "h-2.5 w-2.5 rounded-full bg-primary mt-1.5" }), t < y.length - 1 && /* @__PURE__ */ r("div", { className: "w-px flex-1 bg-border" })]
109
+ }), /* @__PURE__ */ i("div", {
110
+ className: "pb-3",
111
+ children: [/* @__PURE__ */ r("p", {
112
+ className: "text-sm",
113
+ children: e.action
114
+ }), /* @__PURE__ */ i("p", {
115
+ className: "text-xs text-muted-foreground",
116
+ children: [
117
+ e.by,
118
+ " · ",
119
+ e.at
120
+ ]
121
+ })]
122
+ })]
123
+ }, t))
124
+ }) })] })]
125
+ }), /* @__PURE__ */ r("div", {
126
+ className: "space-y-6",
127
+ children: /* @__PURE__ */ i(o, { children: [/* @__PURE__ */ r(c, { children: /* @__PURE__ */ r(l, { children: "Details" }) }), /* @__PURE__ */ i(s, {
128
+ className: "space-y-3 text-sm",
129
+ children: [
130
+ /* @__PURE__ */ i("div", {
131
+ className: "flex justify-between",
132
+ children: [/* @__PURE__ */ r("span", {
133
+ className: "text-muted-foreground",
134
+ children: "Status"
135
+ }), /* @__PURE__ */ r("span", {
136
+ className: `text-xs px-2 py-0.5 rounded-full capitalize ${f[_.status] ?? ""}`,
137
+ children: v
138
+ })]
139
+ }),
140
+ /* @__PURE__ */ i("div", {
141
+ className: "flex justify-between",
142
+ children: [/* @__PURE__ */ r("span", {
143
+ className: "text-muted-foreground",
144
+ children: "Priority"
145
+ }), /* @__PURE__ */ r("span", {
146
+ className: `text-xs px-2 py-0.5 rounded-full capitalize ${d[_.priority] ?? ""}`,
147
+ children: _.priority.toLowerCase()
148
+ })]
149
+ }),
150
+ /* @__PURE__ */ i("div", {
151
+ className: "flex justify-between",
152
+ children: [/* @__PURE__ */ r("span", {
153
+ className: "text-muted-foreground",
154
+ children: "Type"
155
+ }), /* @__PURE__ */ r(a, {
156
+ variant: "outline",
157
+ className: "capitalize",
158
+ children: _.type.toLowerCase()
159
+ })]
160
+ }),
161
+ /* @__PURE__ */ i("div", {
162
+ className: "flex justify-between",
163
+ children: [/* @__PURE__ */ r("span", {
164
+ className: "text-muted-foreground",
165
+ children: "Story Points"
166
+ }), /* @__PURE__ */ r("span", {
167
+ className: "font-medium",
168
+ children: _.storyPoints ?? 0
169
+ })]
170
+ }),
171
+ /* @__PURE__ */ i("div", {
172
+ className: "flex justify-between",
173
+ children: [/* @__PURE__ */ r("span", {
174
+ className: "text-muted-foreground",
175
+ children: "Assignee"
176
+ }), /* @__PURE__ */ r("span", { children: _.assigneeId ?? "Unassigned" })]
177
+ }),
178
+ /* @__PURE__ */ i("div", {
179
+ className: "flex justify-between",
180
+ children: [/* @__PURE__ */ r("span", {
181
+ className: "text-muted-foreground",
182
+ children: "Reporter"
183
+ }), /* @__PURE__ */ r("span", { children: _.reporterId ?? "Unknown" })]
184
+ }),
185
+ /* @__PURE__ */ i("div", {
186
+ className: "flex justify-between",
187
+ children: [/* @__PURE__ */ r("span", {
188
+ className: "text-muted-foreground",
189
+ children: "Key"
190
+ }), /* @__PURE__ */ r("span", { children: _.key })]
191
+ }),
192
+ /* @__PURE__ */ i("div", {
193
+ className: "flex justify-between",
194
+ children: [/* @__PURE__ */ r("span", {
195
+ className: "text-muted-foreground",
196
+ children: "Due Date"
197
+ }), /* @__PURE__ */ r("span", { children: _.dueDate ?? "Not set" })]
198
+ }),
199
+ /* @__PURE__ */ i("div", {
200
+ className: "flex justify-between",
201
+ children: [/* @__PURE__ */ r("span", {
202
+ className: "text-muted-foreground",
203
+ children: "Created"
204
+ }), /* @__PURE__ */ r("span", { children: _.createdAt })]
205
+ }),
206
+ /* @__PURE__ */ i("div", {
207
+ className: "flex justify-between",
208
+ children: [/* @__PURE__ */ r("span", {
209
+ className: "text-muted-foreground",
210
+ children: "Updated"
211
+ }), /* @__PURE__ */ r("span", { children: _.updatedAt })]
212
+ }),
213
+ /* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("span", {
214
+ className: "text-muted-foreground text-xs",
215
+ children: "Labels"
216
+ }), /* @__PURE__ */ r("div", {
217
+ className: "flex gap-1 mt-1 flex-wrap",
218
+ children: (_.labels ?? []).map((e) => /* @__PURE__ */ r("span", {
219
+ className: "text-xs px-2 py-0.5 rounded bg-muted",
220
+ children: e
221
+ }, e))
222
+ })] })
223
+ ]
224
+ })] })
225
+ })]
226
+ })]
227
+ });
228
+ }
229
+ //#endregion
230
+ export { p as TasksTaskDetailPagePage };
231
+
232
+ //# sourceMappingURL=TasksTaskDetailPagePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksTaskDetailPagePage.js","names":[],"sources":["../../../src/planmagnet/pages/TasksTaskDetailPagePage.tsx"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { gql } from '@apollo/client';\nimport { useQuery } from '@apollo/client/react';\nimport { Card, CardContent, CardHeader, CardTitle, Badge } from '@burdenoff/fe-libs/ui';\nimport { usePlanMagnet } from '../providers/PlanMagnetProvider';\n\nconst GET_WORK_ITEM = gql`\n query GetWorkItemDetail($workspaceId: ID!, $workItemId: ID!) {\n planmagnetWorkItem(workspaceId: $workspaceId, id: $workItemId) {\n id\n title\n description\n type\n status\n priority\n key\n assigneeId\n reporterId\n sprintId\n boardColumnId\n storyPoints\n estimatedHours\n dueDate\n labels\n tags\n createdAt\n updatedAt\n }\n }\n`;\n\ninterface WorkItemNode {\n id: string;\n title: string;\n description: string | null;\n type: string;\n status: string;\n priority: string;\n key: string;\n assigneeId: string | null;\n reporterId: string | null;\n sprintId: string | null;\n boardColumnId: string | null;\n storyPoints: number | null;\n estimatedHours: number | null;\n dueDate: string | null;\n labels: string[];\n tags: string[];\n createdAt: string;\n updatedAt: string;\n}\n\nconst priorityColor: Record<string, string> = {\n LOW: 'bg-gray-100 text-gray-800',\n MEDIUM: 'bg-blue-100 text-blue-800',\n HIGH: 'bg-orange-100 text-orange-800',\n CRITICAL: 'bg-red-100 text-red-800',\n};\n\nconst statusColor: Record<string, string> = {\n BACKLOG: 'bg-gray-100 text-gray-800',\n TODO: 'bg-blue-100 text-blue-800',\n IN_PROGRESS: 'bg-yellow-100 text-yellow-800',\n IN_REVIEW: 'bg-purple-100 text-purple-800',\n DONE: 'bg-green-100 text-green-800',\n BLOCKED: 'bg-red-100 text-red-800',\n TESTING: 'bg-teal-100 text-teal-800',\n CANCELLED: 'bg-gray-100 text-gray-800',\n};\n\nexport function TasksTaskDetailPagePage() {\n const { workspaceId } = usePlanMagnet();\n\n // In a real app, workItemId comes from route params.\n const workItemId = new URLSearchParams(window.location.search).get('taskId') ?? '';\n\n const { data, loading, error } = useQuery<{\n workItem: WorkItemNode;\n }>(GET_WORK_ITEM, {\n variables: { workspaceId, workItemId },\n skip: !workspaceId || !workItemId,\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 }\n\n if (error) {\n return <div className=\"p-6 text-red-500\">Error: {error.message}</div>;\n }\n\n const task = data?.planmagnetWorkItem;\n if (!task) return <div className=\"p-6 text-muted-foreground\">Task not found.</div>;\n\n const statusDisplay = task.status.toLowerCase().replace('_', ' ');\n\n const activityLog = [\n { action: 'Task created', by: task.reporterId ?? 'Unknown', at: task.createdAt },\n {\n action: `Assigned to ${task.assigneeId ?? 'Unassigned'}`,\n by: task.reporterId ?? 'Unknown',\n at: task.createdAt,\n },\n {\n action: `Status changed to ${statusDisplay}`,\n by: task.assigneeId ?? 'Unknown',\n at: task.updatedAt,\n },\n ];\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{task.title}</h1>\n <p className=\"text-sm text-muted-foreground\">\n {task.key} &middot; {task.type.toLowerCase()}\n </p>\n </div>\n <div className=\"grid grid-cols-1 lg:grid-cols-3 gap-6\">\n <div className=\"lg:col-span-2 space-y-6\">\n <Card>\n <CardHeader>\n <CardTitle>Description</CardTitle>\n </CardHeader>\n <CardContent>\n <p className=\"text-sm\">{task.description ?? 'No description provided.'}</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader>\n <CardTitle>Activity</CardTitle>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-3\">\n {activityLog.map((a, i) => (\n <div key={i} className=\"flex gap-3\">\n <div className=\"flex flex-col items-center\">\n <div className=\"h-2.5 w-2.5 rounded-full bg-primary mt-1.5\" />\n {i < activityLog.length - 1 && <div className=\"w-px flex-1 bg-border\" />}\n </div>\n <div className=\"pb-3\">\n <p className=\"text-sm\">{a.action}</p>\n <p className=\"text-xs text-muted-foreground\">\n {a.by} &middot; {a.at}\n </p>\n </div>\n </div>\n ))}\n </div>\n </CardContent>\n </Card>\n </div>\n <div className=\"space-y-6\">\n <Card>\n <CardHeader>\n <CardTitle>Details</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3 text-sm\">\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Status</span>\n <span\n className={`text-xs px-2 py-0.5 rounded-full capitalize ${statusColor[task.status] ?? ''}`}\n >\n {statusDisplay}\n </span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Priority</span>\n <span\n className={`text-xs px-2 py-0.5 rounded-full capitalize ${priorityColor[task.priority] ?? ''}`}\n >\n {task.priority.toLowerCase()}\n </span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Type</span>\n <Badge variant=\"outline\" className=\"capitalize\">\n {task.type.toLowerCase()}\n </Badge>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Story Points</span>\n <span className=\"font-medium\">{task.storyPoints ?? 0}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Assignee</span>\n <span>{task.assigneeId ?? 'Unassigned'}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Reporter</span>\n <span>{task.reporterId ?? 'Unknown'}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Key</span>\n <span>{task.key}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Due Date</span>\n <span>{task.dueDate ?? 'Not set'}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Created</span>\n <span>{task.createdAt}</span>\n </div>\n <div className=\"flex justify-between\">\n <span className=\"text-muted-foreground\">Updated</span>\n <span>{task.updatedAt}</span>\n </div>\n <div>\n <span className=\"text-muted-foreground text-xs\">Labels</span>\n <div className=\"flex gap-1 mt-1 flex-wrap\">\n {(task.labels ?? []).map((l) => (\n <span key={l} className=\"text-xs px-2 py-0.5 rounded bg-muted\">\n {l}\n </span>\n ))}\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function TasksTasksPagePage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=TasksTasksPagePage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TasksTasksPagePage.d.ts","sourceRoot":"","sources":["../../../src/planmagnet/pages/TasksTasksPagePage.tsx"],"names":[],"mappings":"AAyFA,wBAAgB,kBAAkB,4CA6HjC"}