@burdenoff/microfe-crewfoundry 2026.608.1 → 2026.625.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.
Files changed (131) hide show
  1. package/dist/crewfoundry/pages/AdminAdminPagePage.js +94 -78
  2. package/dist/crewfoundry/pages/AdminAdminPagePage.js.map +1 -1
  3. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js +112 -96
  4. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  5. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js +101 -85
  6. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js.map +1 -1
  7. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js +131 -115
  8. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js.map +1 -1
  9. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js +116 -100
  10. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js.map +1 -1
  11. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js +15 -15
  12. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js +63 -51
  14. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js.map +1 -1
  15. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js +16 -16
  16. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js.map +1 -1
  17. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js +26 -26
  18. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js +28 -28
  20. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js.map +1 -1
  21. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js +10 -10
  22. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js.map +1 -1
  23. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js +71 -59
  24. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js +59 -47
  26. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js.map +1 -1
  27. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js +77 -61
  28. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js.map +1 -1
  29. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js +40 -40
  30. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js.map +1 -1
  31. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js +13 -13
  32. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js.map +1 -1
  33. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js +102 -86
  34. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js.map +1 -1
  35. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +173 -139
  36. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  37. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js +59 -59
  38. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js.map +1 -1
  39. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +113 -97
  40. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
  41. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js +45 -45
  42. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js.map +1 -1
  43. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js +85 -69
  44. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js.map +1 -1
  45. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +23 -23
  46. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js.map +1 -1
  47. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js +40 -40
  48. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js.map +1 -1
  49. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js +59 -47
  50. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js.map +1 -1
  51. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js +52 -48
  52. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js.map +1 -1
  53. package/dist/crewfoundry/pages/HiringJobsPagePage.js +31 -26
  54. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  55. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js +61 -49
  56. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js.map +1 -1
  57. package/dist/crewfoundry/pages/HrEmployeesPagePage.js +83 -67
  58. package/dist/crewfoundry/pages/HrEmployeesPagePage.js.map +1 -1
  59. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js +90 -74
  60. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js.map +1 -1
  61. package/dist/crewfoundry/pages/HrPayrollPagePage.js +90 -74
  62. package/dist/crewfoundry/pages/HrPayrollPagePage.js.map +1 -1
  63. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js +83 -67
  64. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js.map +1 -1
  65. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js +54 -42
  66. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js.map +1 -1
  67. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js +16 -16
  68. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js.map +1 -1
  69. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js +39 -35
  70. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js.map +1 -1
  71. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js +24 -24
  72. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js.map +1 -1
  73. package/dist/crewfoundry/pages/LearningCoursesPagePage.js +14 -14
  74. package/dist/crewfoundry/pages/LearningCoursesPagePage.js.map +1 -1
  75. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js +81 -65
  76. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js.map +1 -1
  77. package/dist/crewfoundry/pages/LearningLearningPagePage.js +73 -57
  78. package/dist/crewfoundry/pages/LearningLearningPagePage.js.map +1 -1
  79. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js +28 -28
  80. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js.map +1 -1
  81. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js +12 -12
  82. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js.map +1 -1
  83. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js +75 -59
  84. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js.map +1 -1
  85. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js +57 -45
  86. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js.map +1 -1
  87. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js +71 -59
  88. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js.map +1 -1
  89. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js +48 -48
  90. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js.map +1 -1
  91. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js +44 -43
  92. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js.map +1 -1
  93. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +58 -46
  94. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  95. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js +16 -16
  96. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js.map +1 -1
  97. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js +23 -23
  98. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js.map +1 -1
  99. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js +9 -9
  100. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js.map +1 -1
  101. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js +43 -39
  102. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js.map +1 -1
  103. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js +31 -27
  104. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js.map +1 -1
  105. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js +59 -47
  106. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js.map +1 -1
  107. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js +13 -13
  108. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js.map +1 -1
  109. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js +66 -50
  110. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js.map +1 -1
  111. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js +18 -18
  112. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js.map +1 -1
  113. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js +74 -62
  114. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js.map +1 -1
  115. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js +21 -21
  116. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js.map +1 -1
  117. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js +47 -43
  118. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js.map +1 -1
  119. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +20 -20
  120. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  121. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js +58 -46
  122. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js.map +1 -1
  123. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js +38 -34
  124. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js.map +1 -1
  125. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js +14 -14
  126. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js.map +1 -1
  127. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js +67 -67
  128. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js.map +1 -1
  129. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +16 -16
  130. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  131. package/package.json +2 -2
@@ -2,10 +2,10 @@ import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { useState as t } from "react";
3
3
  import { Bell as n, Lock as r, Save as i, Settings as a, Shield as o, Trash2 as s, UserMinus as c, UserPlus as l, Users as u } from "lucide-react";
4
4
  import { jsx as d, jsxs as f } from "react/jsx-runtime";
5
- import { Badge as p, Button as m, Card as h, CardContent as g, CardDescription as _, CardHeader as v, CardTitle as y, Input as b, Label as x, Separator as S, Switch as C, Textarea as w } from "@burdenoff/fe-libs/ui";
5
+ import { Badge as p, Button as m, Card as h, CardContent as g, CardDescription as _, CardHeader as v, CardTitle as y, GradientText as b, Input as x, Label as S, Separator as C, Switch as w, Textarea as T } from "@burdenoff/fe-libs/ui";
6
6
  //#region src/crewfoundry/pages/TeamsTeamSettingsPagePage.tsx
7
- function T() {
8
- let { teams: T, employees: E } = e(), D = T[0], [O, k] = t(D.name), [A, j] = t(D.description), [M, N] = t(!1), [P, F] = t(!0), [I, L] = t(!0), [R, z] = t(!1), B = E.filter((e) => D.members.includes(e.id));
7
+ function E() {
8
+ let { teams: E, employees: D } = e(), O = E[0], [k, A] = t(O.name), [j, M] = t(O.description), [N, P] = t(!1), [F, I] = t(!0), [L, R] = t(!0), [z, B] = t(!1), V = D.filter((e) => O.members.includes(e.id));
9
9
  return /* @__PURE__ */ f("div", {
10
10
  className: "space-y-6 p-6",
11
11
  children: [
@@ -13,10 +13,10 @@ function T() {
13
13
  className: "flex items-center justify-between",
14
14
  children: [/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h1", {
15
15
  className: "text-2xl font-semibold",
16
- children: "Team Settings"
16
+ children: /* @__PURE__ */ d(b, { children: "Team Settings" })
17
17
  }), /* @__PURE__ */ f("p", {
18
- className: "text-sm text-muted-foreground",
19
- children: ["Configure settings for ", D.name]
18
+ className: "text-sm text-text-secondary",
19
+ children: ["Configure settings for ", O.name]
20
20
  })] }), /* @__PURE__ */ f(m, { children: [/* @__PURE__ */ d(i, { className: "h-4 w-4 mr-1" }), "Save Changes"] })]
21
21
  }),
22
22
  /* @__PURE__ */ f("div", {
@@ -24,32 +24,32 @@ function T() {
24
24
  children: [
25
25
  /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
26
26
  className: "flex items-center gap-3 pt-6",
27
- children: [/* @__PURE__ */ d(u, { className: "h-5 w-5 text-blue-500" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
28
- className: "text-xs text-muted-foreground",
27
+ children: [/* @__PURE__ */ d(u, { className: "h-5 w-5 text-status-info-text" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
28
+ className: "text-xs text-text-secondary",
29
29
  children: "Members"
30
30
  }), /* @__PURE__ */ d("p", {
31
31
  className: "text-lg font-bold",
32
- children: D.memberCount
32
+ children: O.memberCount
33
33
  })] })]
34
34
  }) }),
35
35
  /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
36
36
  className: "flex items-center gap-3 pt-6",
37
- children: [/* @__PURE__ */ d(a, { className: "h-5 w-5 text-purple-500" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
38
- className: "text-xs text-muted-foreground",
37
+ children: [/* @__PURE__ */ d(a, { className: "h-5 w-5 text-action-primary-bg" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
38
+ className: "text-xs text-text-secondary",
39
39
  children: "Active Projects"
40
40
  }), /* @__PURE__ */ d("p", {
41
41
  className: "text-lg font-bold",
42
- children: D.projectCount
42
+ children: O.projectCount
43
43
  })] })]
44
44
  }) }),
45
45
  /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
46
46
  className: "flex items-center gap-3 pt-6",
47
- children: [/* @__PURE__ */ d(o, { className: "h-5 w-5 text-green-500" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
48
- className: "text-xs text-muted-foreground",
47
+ children: [/* @__PURE__ */ d(o, { className: "h-5 w-5 text-status-success-text" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
48
+ className: "text-xs text-text-secondary",
49
49
  children: "Visibility"
50
50
  }), /* @__PURE__ */ d("p", {
51
51
  className: "text-lg font-bold",
52
- children: R ? "Private" : "Public"
52
+ children: z ? "Private" : "Public"
53
53
  })] })]
54
54
  }) })
55
55
  ]
@@ -67,42 +67,42 @@ function T() {
67
67
  children: [
68
68
  /* @__PURE__ */ f("div", {
69
69
  className: "space-y-2",
70
- children: [/* @__PURE__ */ d(x, {
70
+ children: [/* @__PURE__ */ d(S, {
71
71
  htmlFor: "tsName",
72
72
  children: "Team Name"
73
- }), /* @__PURE__ */ d(b, {
73
+ }), /* @__PURE__ */ d(x, {
74
74
  id: "tsName",
75
- value: O,
76
- onChange: (e) => k(e.target.value)
75
+ value: k,
76
+ onChange: (e) => A(e.target.value)
77
77
  })]
78
78
  }),
79
79
  /* @__PURE__ */ f("div", {
80
80
  className: "space-y-2",
81
- children: [/* @__PURE__ */ d(x, {
81
+ children: [/* @__PURE__ */ d(S, {
82
82
  htmlFor: "tsDesc",
83
83
  children: "Description"
84
- }), /* @__PURE__ */ d(w, {
84
+ }), /* @__PURE__ */ d(T, {
85
85
  id: "tsDesc",
86
86
  className: "min-h-[80px]",
87
- value: A,
88
- onChange: (e) => j(e.target.value)
87
+ value: j,
88
+ onChange: (e) => M(e.target.value)
89
89
  })]
90
90
  }),
91
91
  /* @__PURE__ */ f("div", {
92
92
  className: "grid gap-4 sm:grid-cols-2",
93
93
  children: [/* @__PURE__ */ f("div", {
94
94
  className: "space-y-2",
95
- children: [/* @__PURE__ */ d(x, { children: "Department" }), /* @__PURE__ */ d(b, {
96
- value: D.department,
95
+ children: [/* @__PURE__ */ d(S, { children: "Department" }), /* @__PURE__ */ d(x, {
96
+ value: O.department,
97
97
  disabled: !0,
98
- className: "bg-muted"
98
+ className: "bg-bg-sunken"
99
99
  })]
100
100
  }), /* @__PURE__ */ f("div", {
101
101
  className: "space-y-2",
102
- children: [/* @__PURE__ */ d(x, { children: "Team Lead" }), /* @__PURE__ */ d(b, {
103
- value: D.leadName,
102
+ children: [/* @__PURE__ */ d(S, { children: "Team Lead" }), /* @__PURE__ */ d(x, {
103
+ value: O.leadName,
104
104
  disabled: !0,
105
- className: "bg-muted"
105
+ className: "bg-bg-sunken"
106
106
  })]
107
107
  })]
108
108
  })
@@ -113,18 +113,18 @@ function T() {
113
113
  children: [/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d(y, {
114
114
  className: "text-base",
115
115
  children: "Team Members"
116
- }), /* @__PURE__ */ f(_, { children: [B.length, " active members"] })] }), /* @__PURE__ */ f(m, {
116
+ }), /* @__PURE__ */ f(_, { children: [V.length, " active members"] })] }), /* @__PURE__ */ f(m, {
117
117
  size: "sm",
118
118
  children: [/* @__PURE__ */ d(l, { className: "h-3 w-3 mr-1" }), "Add Member"]
119
119
  })]
120
120
  }) }), /* @__PURE__ */ d(g, {
121
121
  className: "p-0",
122
- children: B.map((e, t) => /* @__PURE__ */ f("div", {
123
- className: `flex items-center justify-between px-6 py-3 ${t < B.length - 1 ? "border-b" : ""}`,
122
+ children: V.map((e, t) => /* @__PURE__ */ f("div", {
123
+ className: `flex items-center justify-between px-6 py-3 ${t < V.length - 1 ? "border-b" : ""}`,
124
124
  children: [/* @__PURE__ */ f("div", {
125
125
  className: "flex items-center gap-3",
126
126
  children: [/* @__PURE__ */ f("div", {
127
- className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-muted text-xs font-medium",
127
+ className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-bg-sunken text-xs font-medium",
128
128
  children: [e.firstName[0], e.lastName[0]]
129
129
  }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ f("div", {
130
130
  className: "flex items-center gap-2",
@@ -135,12 +135,12 @@ function T() {
135
135
  " ",
136
136
  e.lastName
137
137
  ]
138
- }), e.id === D.leadId && /* @__PURE__ */ d(p, {
138
+ }), e.id === O.leadId && /* @__PURE__ */ d(p, {
139
139
  className: "text-[10px]",
140
140
  children: "Lead"
141
141
  })]
142
142
  }), /* @__PURE__ */ d("p", {
143
- className: "text-xs text-muted-foreground",
143
+ className: "text-xs text-text-secondary",
144
144
  children: e.position
145
145
  })] })]
146
146
  }), /* @__PURE__ */ f("div", {
@@ -149,10 +149,10 @@ function T() {
149
149
  variant: e.status === "active" ? "secondary" : "outline",
150
150
  className: "text-[10px]",
151
151
  children: e.status
152
- }), e.id !== D.leadId && /* @__PURE__ */ d(m, {
152
+ }), e.id !== O.leadId && /* @__PURE__ */ d(m, {
153
153
  variant: "ghost",
154
154
  size: "sm",
155
- className: "h-7 w-7 p-0 text-muted-foreground hover:text-destructive",
155
+ className: "h-7 w-7 p-0 text-text-secondary hover:text-status-error-text",
156
156
  children: /* @__PURE__ */ d(c, { className: "h-3 w-3" })
157
157
  })]
158
158
  })]
@@ -172,18 +172,18 @@ function T() {
172
172
  className: "text-sm font-medium",
173
173
  children: "Private Team"
174
174
  }), /* @__PURE__ */ d("p", {
175
- className: "text-xs text-muted-foreground",
175
+ className: "text-xs text-text-secondary",
176
176
  children: "Only invited members can see this team"
177
177
  })]
178
178
  }), /* @__PURE__ */ f("div", {
179
179
  className: "flex items-center gap-2",
180
- children: [/* @__PURE__ */ d(r, { className: "h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ d(C, {
181
- checked: R,
182
- onCheckedChange: z
180
+ children: [/* @__PURE__ */ d(r, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ d(w, {
181
+ checked: z,
182
+ onCheckedChange: B
183
183
  })]
184
184
  })]
185
185
  }),
186
- /* @__PURE__ */ d(S, {}),
186
+ /* @__PURE__ */ d(C, {}),
187
187
  /* @__PURE__ */ f("div", {
188
188
  className: "flex items-center justify-between",
189
189
  children: [/* @__PURE__ */ f("div", {
@@ -192,12 +192,12 @@ function T() {
192
192
  className: "text-sm font-medium",
193
193
  children: "Auto-Approve Join Requests"
194
194
  }), /* @__PURE__ */ d("p", {
195
- className: "text-xs text-muted-foreground",
195
+ className: "text-xs text-text-secondary",
196
196
  children: "Automatically accept when employees request to join"
197
197
  })]
198
- }), /* @__PURE__ */ d(C, {
199
- checked: M,
200
- onCheckedChange: N
198
+ }), /* @__PURE__ */ d(w, {
199
+ checked: N,
200
+ onCheckedChange: P
201
201
  })]
202
202
  })
203
203
  ]
@@ -216,33 +216,33 @@ function T() {
216
216
  className: "flex items-center justify-between",
217
217
  children: [/* @__PURE__ */ f("div", {
218
218
  className: "flex items-center gap-2",
219
- children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
219
+ children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
220
220
  className: "text-xs font-medium",
221
221
  children: "New Member Alerts"
222
222
  }), /* @__PURE__ */ d("p", {
223
- className: "text-[10px] text-muted-foreground",
223
+ className: "text-[10px] text-text-secondary",
224
224
  children: "Notify when members join or leave"
225
225
  })] })]
226
- }), /* @__PURE__ */ d(C, {
227
- checked: P,
228
- onCheckedChange: F
226
+ }), /* @__PURE__ */ d(w, {
227
+ checked: F,
228
+ onCheckedChange: I
229
229
  })]
230
230
  }),
231
- /* @__PURE__ */ d(S, {}),
231
+ /* @__PURE__ */ d(C, {}),
232
232
  /* @__PURE__ */ f("div", {
233
233
  className: "flex items-center justify-between",
234
234
  children: [/* @__PURE__ */ f("div", {
235
235
  className: "flex items-center gap-2",
236
- children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
236
+ children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
237
237
  className: "text-xs font-medium",
238
238
  children: "Weekly Digest"
239
239
  }), /* @__PURE__ */ d("p", {
240
- className: "text-[10px] text-muted-foreground",
240
+ className: "text-[10px] text-text-secondary",
241
241
  children: "Summary of team activity"
242
242
  })] })]
243
- }), /* @__PURE__ */ d(C, {
244
- checked: I,
245
- onCheckedChange: L
243
+ }), /* @__PURE__ */ d(w, {
244
+ checked: L,
245
+ onCheckedChange: R
246
246
  })]
247
247
  })
248
248
  ]
@@ -255,28 +255,28 @@ function T() {
255
255
  children: [
256
256
  {
257
257
  label: "Created",
258
- value: D.createdAt
258
+ value: O.createdAt
259
259
  },
260
260
  {
261
261
  label: "Department",
262
- value: D.department
262
+ value: O.department
263
263
  },
264
264
  {
265
265
  label: "Status",
266
- value: D.status
266
+ value: O.status
267
267
  },
268
268
  {
269
269
  label: "Projects",
270
- value: D.projectCount.toString()
270
+ value: O.projectCount.toString()
271
271
  },
272
272
  {
273
273
  label: "Members",
274
- value: D.memberCount.toString()
274
+ value: O.memberCount.toString()
275
275
  }
276
276
  ].map((e) => /* @__PURE__ */ f("div", {
277
277
  className: "flex items-center justify-between",
278
278
  children: [/* @__PURE__ */ d("span", {
279
- className: "text-muted-foreground text-xs",
279
+ className: "text-text-secondary text-xs",
280
280
  children: e.label
281
281
  }), /* @__PURE__ */ d("span", {
282
282
  className: "text-xs font-medium",
@@ -285,14 +285,14 @@ function T() {
285
285
  }, e.label))
286
286
  })] }),
287
287
  /* @__PURE__ */ f(h, {
288
- className: "border-destructive/50",
288
+ className: "border-status-error-border/50",
289
289
  children: [/* @__PURE__ */ d(v, { children: /* @__PURE__ */ d(y, {
290
- className: "text-sm text-destructive",
290
+ className: "text-sm text-status-error-text",
291
291
  children: "Danger Zone"
292
292
  }) }), /* @__PURE__ */ f(g, {
293
293
  className: "space-y-3",
294
294
  children: [/* @__PURE__ */ d("p", {
295
- className: "text-xs text-muted-foreground",
295
+ className: "text-xs text-text-secondary",
296
296
  children: "Archiving a team will remove all members and deactivate associated projects. This action can be reversed by an admin."
297
297
  }), /* @__PURE__ */ f(m, {
298
298
  variant: "destructive",
@@ -309,6 +309,6 @@ function T() {
309
309
  });
310
310
  }
311
311
  //#endregion
312
- export { T as TeamsTeamSettingsPagePage };
312
+ export { E as TeamsTeamSettingsPagePage };
313
313
 
314
314
  //# sourceMappingURL=TeamsTeamSettingsPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsTeamSettingsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/TeamsTeamSettingsPagePage.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Input,\n Label,\n Separator,\n Switch,\n Textarea,\n} from '@burdenoff/fe-libs/ui';\nimport {\n Bell,\n Lock,\n Save,\n Settings,\n Shield,\n Trash2,\n UserMinus,\n UserPlus,\n Users,\n} from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function TeamsTeamSettingsPagePage() {\n const { teams, employees } = useCrewFoundryStore();\n const team = teams[0]; // Platform Engineering\n\n const [teamName, setTeamName] = useState(team.name);\n const [description, setDescription] = useState(team.description);\n const [autoApproveJoin, setAutoApproveJoin] = useState(false);\n const [notifyNewMembers, setNotifyNewMembers] = useState(true);\n const [weeklyDigest, setWeeklyDigest] = useState(true);\n const [isPrivate, setIsPrivate] = useState(false);\n\n const teamMembers = employees.filter((e) => team.members.includes(e.id));\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\">Team Settings</h1>\n <p className=\"text-sm text-muted-foreground\">Configure settings for {team.name}</p>\n </div>\n <Button>\n <Save className=\"h-4 w-4 mr-1\" />\n Save Changes\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Users className=\"h-5 w-5 text-blue-500\" />\n <div>\n <p className=\"text-xs text-muted-foreground\">Members</p>\n <p className=\"text-lg font-bold\">{team.memberCount}</p>\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Settings className=\"h-5 w-5 text-purple-500\" />\n <div>\n <p className=\"text-xs text-muted-foreground\">Active Projects</p>\n <p className=\"text-lg font-bold\">{team.projectCount}</p>\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Shield className=\"h-5 w-5 text-green-500\" />\n <div>\n <p className=\"text-xs text-muted-foreground\">Visibility</p>\n <p className=\"text-lg font-bold\">{isPrivate ? 'Private' : 'Public'}</p>\n </div>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"grid gap-6 lg:grid-cols-3\">\n <div className=\"lg:col-span-2 space-y-6\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">General Settings</CardTitle>\n <CardDescription>Basic team information</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"space-y-2\">\n <Label htmlFor=\"tsName\">Team Name</Label>\n <Input id=\"tsName\" value={teamName} onChange={(e) => setTeamName(e.target.value)} />\n </div>\n <div className=\"space-y-2\">\n <Label htmlFor=\"tsDesc\">Description</Label>\n <Textarea\n id=\"tsDesc\"\n className=\"min-h-[80px]\"\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n />\n </div>\n <div className=\"grid gap-4 sm:grid-cols-2\">\n <div className=\"space-y-2\">\n <Label>Department</Label>\n <Input value={team.department} disabled className=\"bg-muted\" />\n </div>\n <div className=\"space-y-2\">\n <Label>Team Lead</Label>\n <Input value={team.leadName} disabled className=\"bg-muted\" />\n </div>\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <div>\n <CardTitle className=\"text-base\">Team Members</CardTitle>\n <CardDescription>{teamMembers.length} active members</CardDescription>\n </div>\n <Button size=\"sm\">\n <UserPlus className=\"h-3 w-3 mr-1\" />\n Add Member\n </Button>\n </div>\n </CardHeader>\n <CardContent className=\"p-0\">\n {teamMembers.map((member, i) => (\n <div\n key={member.id}\n className={`flex items-center justify-between px-6 py-3 ${i < teamMembers.length - 1 ? 'border-b' : ''}`}\n >\n <div className=\"flex items-center gap-3\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-muted text-xs font-medium\">\n {member.firstName[0]}\n {member.lastName[0]}\n </div>\n <div>\n <div className=\"flex items-center gap-2\">\n <p className=\"text-sm font-medium\">\n {member.firstName} {member.lastName}\n </p>\n {member.id === team.leadId && <Badge className=\"text-[10px]\">Lead</Badge>}\n </div>\n <p className=\"text-xs text-muted-foreground\">{member.position}</p>\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Badge\n variant={member.status === 'active' ? 'secondary' : 'outline'}\n className=\"text-[10px]\"\n >\n {member.status}\n </Badge>\n {member.id !== team.leadId && (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-7 w-7 p-0 text-muted-foreground hover:text-destructive\"\n >\n <UserMinus className=\"h-3 w-3\" />\n </Button>\n )}\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Permissions & Access</CardTitle>\n <CardDescription>Control team visibility and member permissions</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"space-y-0.5\">\n <p className=\"text-sm font-medium\">Private Team</p>\n <p className=\"text-xs text-muted-foreground\">\n Only invited members can see this team\n </p>\n </div>\n <div className=\"flex items-center gap-2\">\n <Lock className=\"h-4 w-4 text-muted-foreground\" />\n <Switch checked={isPrivate} onCheckedChange={setIsPrivate} />\n </div>\n </div>\n <Separator />\n <div className=\"flex items-center justify-between\">\n <div className=\"space-y-0.5\">\n <p className=\"text-sm font-medium\">Auto-Approve Join Requests</p>\n <p className=\"text-xs text-muted-foreground\">\n Automatically accept when employees request to join\n </p>\n </div>\n <Switch checked={autoApproveJoin} onCheckedChange={setAutoApproveJoin} />\n </div>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"space-y-4\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Notification Preferences</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <Bell className=\"h-4 w-4 text-muted-foreground\" />\n <div>\n <p className=\"text-xs font-medium\">New Member Alerts</p>\n <p className=\"text-[10px] text-muted-foreground\">\n Notify when members join or leave\n </p>\n </div>\n </div>\n <Switch checked={notifyNewMembers} onCheckedChange={setNotifyNewMembers} />\n </div>\n <Separator />\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <Bell className=\"h-4 w-4 text-muted-foreground\" />\n <div>\n <p className=\"text-xs font-medium\">Weekly Digest</p>\n <p className=\"text-[10px] text-muted-foreground\">Summary of team activity</p>\n </div>\n </div>\n <Switch checked={weeklyDigest} onCheckedChange={setWeeklyDigest} />\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Team Info</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-2 text-sm\">\n {[\n { label: 'Created', value: team.createdAt },\n { label: 'Department', value: team.department },\n { label: 'Status', value: team.status },\n { label: 'Projects', value: team.projectCount.toString() },\n { label: 'Members', value: team.memberCount.toString() },\n ].map((item) => (\n <div key={item.label} className=\"flex items-center justify-between\">\n <span className=\"text-muted-foreground text-xs\">{item.label}</span>\n <span className=\"text-xs font-medium\">{item.value}</span>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card className=\"border-destructive/50\">\n <CardHeader>\n <CardTitle className=\"text-sm text-destructive\">Danger Zone</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <p className=\"text-xs text-muted-foreground\">\n Archiving a team will remove all members and deactivate associated projects. This\n action can be reversed by an admin.\n </p>\n <Button variant=\"destructive\" size=\"sm\" className=\"w-full\">\n <Trash2 className=\"h-3 w-3 mr-1\" />\n Archive Team\n </Button>\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TeamsTeamSettingsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/TeamsTeamSettingsPagePage.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n GradientText,\n Input,\n Label,\n Separator,\n Switch,\n Textarea,\n} from '@burdenoff/fe-libs/ui';\nimport {\n Bell,\n Lock,\n Save,\n Settings,\n Shield,\n Trash2,\n UserMinus,\n UserPlus,\n Users,\n} from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function TeamsTeamSettingsPagePage() {\n const { teams, employees } = useCrewFoundryStore();\n const team = teams[0]; // Platform Engineering\n\n const [teamName, setTeamName] = useState(team.name);\n const [description, setDescription] = useState(team.description);\n const [autoApproveJoin, setAutoApproveJoin] = useState(false);\n const [notifyNewMembers, setNotifyNewMembers] = useState(true);\n const [weeklyDigest, setWeeklyDigest] = useState(true);\n const [isPrivate, setIsPrivate] = useState(false);\n\n const teamMembers = employees.filter((e) => team.members.includes(e.id));\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\">\n <GradientText>Team Settings</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">Configure settings for {team.name}</p>\n </div>\n <Button>\n <Save className=\"h-4 w-4 mr-1\" />\n Save Changes\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Users className=\"h-5 w-5 text-status-info-text\" />\n <div>\n <p className=\"text-xs text-text-secondary\">Members</p>\n <p className=\"text-lg font-bold\">{team.memberCount}</p>\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Settings className=\"h-5 w-5 text-action-primary-bg\" />\n <div>\n <p className=\"text-xs text-text-secondary\">Active Projects</p>\n <p className=\"text-lg font-bold\">{team.projectCount}</p>\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <Shield className=\"h-5 w-5 text-status-success-text\" />\n <div>\n <p className=\"text-xs text-text-secondary\">Visibility</p>\n <p className=\"text-lg font-bold\">{isPrivate ? 'Private' : 'Public'}</p>\n </div>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"grid gap-6 lg:grid-cols-3\">\n <div className=\"lg:col-span-2 space-y-6\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">General Settings</CardTitle>\n <CardDescription>Basic team information</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"space-y-2\">\n <Label htmlFor=\"tsName\">Team Name</Label>\n <Input id=\"tsName\" value={teamName} onChange={(e) => setTeamName(e.target.value)} />\n </div>\n <div className=\"space-y-2\">\n <Label htmlFor=\"tsDesc\">Description</Label>\n <Textarea\n id=\"tsDesc\"\n className=\"min-h-[80px]\"\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n />\n </div>\n <div className=\"grid gap-4 sm:grid-cols-2\">\n <div className=\"space-y-2\">\n <Label>Department</Label>\n <Input value={team.department} disabled className=\"bg-bg-sunken\" />\n </div>\n <div className=\"space-y-2\">\n <Label>Team Lead</Label>\n <Input value={team.leadName} disabled className=\"bg-bg-sunken\" />\n </div>\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <div>\n <CardTitle className=\"text-base\">Team Members</CardTitle>\n <CardDescription>{teamMembers.length} active members</CardDescription>\n </div>\n <Button size=\"sm\">\n <UserPlus className=\"h-3 w-3 mr-1\" />\n Add Member\n </Button>\n </div>\n </CardHeader>\n <CardContent className=\"p-0\">\n {teamMembers.map((member, i) => (\n <div\n key={member.id}\n className={`flex items-center justify-between px-6 py-3 ${i < teamMembers.length - 1 ? 'border-b' : ''}`}\n >\n <div className=\"flex items-center gap-3\">\n <div className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-bg-sunken text-xs font-medium\">\n {member.firstName[0]}\n {member.lastName[0]}\n </div>\n <div>\n <div className=\"flex items-center gap-2\">\n <p className=\"text-sm font-medium\">\n {member.firstName} {member.lastName}\n </p>\n {member.id === team.leadId && <Badge className=\"text-[10px]\">Lead</Badge>}\n </div>\n <p className=\"text-xs text-text-secondary\">{member.position}</p>\n </div>\n </div>\n <div className=\"flex items-center gap-2\">\n <Badge\n variant={member.status === 'active' ? 'secondary' : 'outline'}\n className=\"text-[10px]\"\n >\n {member.status}\n </Badge>\n {member.id !== team.leadId && (\n <Button\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-7 w-7 p-0 text-text-secondary hover:text-status-error-text\"\n >\n <UserMinus className=\"h-3 w-3\" />\n </Button>\n )}\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Permissions & Access</CardTitle>\n <CardDescription>Control team visibility and member permissions</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"space-y-0.5\">\n <p className=\"text-sm font-medium\">Private Team</p>\n <p className=\"text-xs text-text-secondary\">\n Only invited members can see this team\n </p>\n </div>\n <div className=\"flex items-center gap-2\">\n <Lock className=\"h-4 w-4 text-text-secondary\" />\n <Switch checked={isPrivate} onCheckedChange={setIsPrivate} />\n </div>\n </div>\n <Separator />\n <div className=\"flex items-center justify-between\">\n <div className=\"space-y-0.5\">\n <p className=\"text-sm font-medium\">Auto-Approve Join Requests</p>\n <p className=\"text-xs text-text-secondary\">\n Automatically accept when employees request to join\n </p>\n </div>\n <Switch checked={autoApproveJoin} onCheckedChange={setAutoApproveJoin} />\n </div>\n </CardContent>\n </Card>\n </div>\n\n <div className=\"space-y-4\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Notification Preferences</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <Bell className=\"h-4 w-4 text-text-secondary\" />\n <div>\n <p className=\"text-xs font-medium\">New Member Alerts</p>\n <p className=\"text-[10px] text-text-secondary\">\n Notify when members join or leave\n </p>\n </div>\n </div>\n <Switch checked={notifyNewMembers} onCheckedChange={setNotifyNewMembers} />\n </div>\n <Separator />\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <Bell className=\"h-4 w-4 text-text-secondary\" />\n <div>\n <p className=\"text-xs font-medium\">Weekly Digest</p>\n <p className=\"text-[10px] text-text-secondary\">Summary of team activity</p>\n </div>\n </div>\n <Switch checked={weeklyDigest} onCheckedChange={setWeeklyDigest} />\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Team Info</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-2 text-sm\">\n {[\n { label: 'Created', value: team.createdAt },\n { label: 'Department', value: team.department },\n { label: 'Status', value: team.status },\n { label: 'Projects', value: team.projectCount.toString() },\n { label: 'Members', value: team.memberCount.toString() },\n ].map((item) => (\n <div key={item.label} className=\"flex items-center justify-between\">\n <span className=\"text-text-secondary text-xs\">{item.label}</span>\n <span className=\"text-xs font-medium\">{item.value}</span>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card className=\"border-status-error-border/50\">\n <CardHeader>\n <CardTitle className=\"text-sm text-status-error-text\">Danger Zone</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <p className=\"text-xs text-text-secondary\">\n Archiving a team will remove all members and deactivate associated projects. This\n action can be reversed by an admin.\n </p>\n <Button variant=\"destructive\" size=\"sm\" className=\"w-full\">\n <Trash2 className=\"h-3 w-3 mr-1\" />\n Archive Team\n </Button>\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;AA6BA,SAAgB,IAA4B;CAC1C,IAAM,EAAE,UAAO,iBAAc,GAAqB,EAC5C,IAAO,EAAM,IAEb,CAAC,GAAU,KAAe,EAAS,EAAK,KAAK,EAC7C,CAAC,GAAa,KAAkB,EAAS,EAAK,YAAY,EAC1D,CAAC,GAAiB,KAAsB,EAAS,GAAM,EACvD,CAAC,GAAkB,KAAuB,EAAS,GAAK,EACxD,CAAC,GAAc,KAAmB,EAAS,GAAK,EAChD,CAAC,GAAW,KAAgB,EAAS,GAAM,EAE3C,IAAc,EAAU,QAAQ,MAAM,EAAK,QAAQ,SAAS,EAAE,GAAG,CAAC;AAExE,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;KAAI,WAAU;eACZ,kBAAC,GAAD,EAAA,UAAc,iBAA4B,CAAA;KACvC,CAAA,EACL,kBAAC,KAAD;KAAG,WAAU;eAAb,CAA2C,2BAAwB,EAAK,KAAS;OAC7E,EAAA,CAAA,EACN,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,eAE1B,EAAA,CAAA,CACL;;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB,CACE,kBAAC,GAAD,EAAO,WAAU,iCAAkC,CAAA,EACnD,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAW,CAAA,EACtD,kBAAC,KAAD;OAAG,WAAU;iBAAqB,EAAK;OAAgB,CAAA,CACnD,EAAA,CAAA,CACM;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB,CACE,kBAAC,GAAD,EAAU,WAAU,kCAAmC,CAAA,EACvD,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAmB,CAAA,EAC9D,kBAAC,KAAD;OAAG,WAAU;iBAAqB,EAAK;OAAiB,CAAA,CACpD,EAAA,CAAA,CACM;SACT,CAAA;KACP,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;MAAa,WAAU;gBAAvB,CACE,kBAAC,GAAD,EAAQ,WAAU,oCAAqC,CAAA,EACvD,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAc,CAAA,EACzD,kBAAC,KAAD;OAAG,WAAU;iBAAqB,IAAY,YAAY;OAAa,CAAA,CACnE,EAAA,CAAA,CACM;SACT,CAAA;KACH;;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAY;OAA4B,CAAA,EAC7D,kBAAC,GAAD,EAAA,UAAiB,0BAAwC,CAAA,CAC9C,EAAA,CAAA,EACb,kBAAC,GAAD;OAAa,WAAU;iBAAvB;QACE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,GAAD;UAAO,SAAQ;oBAAS;UAAiB,CAAA,EACzC,kBAAC,GAAD;UAAO,IAAG;UAAS,OAAO;UAAU,WAAW,MAAM,EAAY,EAAE,OAAO,MAAM;UAAI,CAAA,CAChF;;QACN,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,GAAD;UAAO,SAAQ;oBAAS;UAAmB,CAAA,EAC3C,kBAAC,GAAD;UACE,IAAG;UACH,WAAU;UACV,OAAO;UACP,WAAW,MAAM,EAAe,EAAE,OAAO,MAAM;UAC/C,CAAA,CACE;;QACN,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,GAAD,EAAA,UAAO,cAAkB,CAAA,EACzB,kBAAC,GAAD;WAAO,OAAO,EAAK;WAAY,UAAA;WAAS,WAAU;WAAiB,CAAA,CAC/D;aACN,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,GAAD,EAAA,UAAO,aAAiB,CAAA,EACxB,kBAAC,GAAD;WAAO,OAAO,EAAK;WAAU,UAAA;WAAS,WAAU;WAAiB,CAAA,CAC7D;YACF;;QACM;SACT,EAAA,CAAA;MAEP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,GAAD;QAAW,WAAU;kBAAY;QAAwB,CAAA,EACzD,kBAAC,GAAD,EAAA,UAAA,CAAkB,EAAY,QAAO,kBAAiC,EAAA,CAAA,CAClE,EAAA,CAAA,EACN,kBAAC,GAAD;QAAQ,MAAK;kBAAb,CACE,kBAAC,GAAD,EAAU,WAAU,gBAAiB,CAAA,EAAA,aAE9B;UACL;UACK,CAAA,EACb,kBAAC,GAAD;OAAa,WAAU;iBACpB,EAAY,KAAK,GAAQ,MACxB,kBAAC,OAAD;QAEE,WAAW,+CAA+C,IAAI,EAAY,SAAS,IAAI,aAAa;kBAFtG,CAIE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACG,EAAO,UAAU,IACjB,EAAO,SAAS,GACb;aACN,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,KAAD;WAAG,WAAU;qBAAb;YACG,EAAO;YAAU;YAAE,EAAO;YACzB;cACH,EAAO,OAAO,EAAK,UAAU,kBAAC,GAAD;WAAO,WAAU;qBAAc;WAAY,CAAA,CACrE;aACN,kBAAC,KAAD;UAAG,WAAU;oBAA+B,EAAO;UAAa,CAAA,CAC5D,EAAA,CAAA,CACF;YACN,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,GAAD;UACE,SAAS,EAAO,WAAW,WAAW,cAAc;UACpD,WAAU;oBAET,EAAO;UACF,CAAA,EACP,EAAO,OAAO,EAAK,UAClB,kBAAC,GAAD;UACE,SAAQ;UACR,MAAK;UACL,WAAU;oBAEV,kBAAC,GAAD,EAAW,WAAU,WAAY,CAAA;UAC1B,CAAA,CAEP;WACF;UAnCC,EAAO,GAmCR,CACN;OACU,CAAA,CACT,EAAA,CAAA;MAEP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD;OAAW,WAAU;iBAAY;OAAgC,CAAA,EACjE,kBAAC,GAAD,EAAA,UAAiB,kDAAgE,CAAA,CACtE,EAAA,CAAA,EACb,kBAAC,GAAD;OAAa,WAAU;iBAAvB;QACE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,KAAD;WAAG,WAAU;qBAAsB;WAAgB,CAAA,EACnD,kBAAC,KAAD;WAAG,WAAU;qBAA8B;WAEvC,CAAA,CACA;aACN,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,+BAAgC,CAAA,EAChD,kBAAC,GAAD;WAAQ,SAAS;WAAW,iBAAiB;WAAgB,CAAA,CACzD;YACF;;QACN,kBAAC,GAAD,EAAa,CAAA;QACb,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,KAAD;WAAG,WAAU;qBAAsB;WAA8B,CAAA,EACjE,kBAAC,KAAD;WAAG,WAAU;qBAA8B;WAEvC,CAAA,CACA;aACN,kBAAC,GAAD;UAAQ,SAAS;UAAiB,iBAAiB;UAAsB,CAAA,CACrE;;QACM;SACT,EAAA,CAAA;MACH;QAEN,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;OAAW,WAAU;iBAAU;OAAoC,CAAA,EACxD,CAAA,EACb,kBAAC,GAAD;OAAa,WAAU;iBAAvB;QACE,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,+BAAgC,CAAA,EAChD,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;WAAG,WAAU;qBAAsB;WAAqB,CAAA,EACxD,kBAAC,KAAD;WAAG,WAAU;qBAAkC;WAE3C,CAAA,CACA,EAAA,CAAA,CACF;aACN,kBAAC,GAAD;UAAQ,SAAS;UAAkB,iBAAiB;UAAuB,CAAA,CACvE;;QACN,kBAAC,GAAD,EAAa,CAAA;QACb,kBAAC,OAAD;SAAK,WAAU;mBAAf,CACE,kBAAC,OAAD;UAAK,WAAU;oBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,+BAAgC,CAAA,EAChD,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;WAAG,WAAU;qBAAsB;WAAiB,CAAA,EACpD,kBAAC,KAAD;WAAG,WAAU;qBAAkC;WAA4B,CAAA,CACvE,EAAA,CAAA,CACF;aACN,kBAAC,GAAD;UAAQ,SAAS;UAAc,iBAAiB;UAAmB,CAAA,CAC/D;;QACM;SACT,EAAA,CAAA;MAEP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;OAAW,WAAU;iBAAU;OAAqB,CAAA,EACzC,CAAA,EACb,kBAAC,GAAD;OAAa,WAAU;iBACpB;QACC;SAAE,OAAO;SAAW,OAAO,EAAK;SAAW;QAC3C;SAAE,OAAO;SAAc,OAAO,EAAK;SAAY;QAC/C;SAAE,OAAO;SAAU,OAAO,EAAK;SAAQ;QACvC;SAAE,OAAO;SAAY,OAAO,EAAK,aAAa,UAAU;SAAE;QAC1D;SAAE,OAAO;SAAW,OAAO,EAAK,YAAY,UAAU;SAAE;QACzD,CAAC,KAAK,MACL,kBAAC,OAAD;QAAsB,WAAU;kBAAhC,CACE,kBAAC,QAAD;SAAM,WAAU;mBAA+B,EAAK;SAAa,CAAA,EACjE,kBAAC,QAAD;SAAM,WAAU;mBAAuB,EAAK;SAAa,CAAA,CACrD;UAHI,EAAK,MAGT,CACN;OACU,CAAA,CACT,EAAA,CAAA;MAEP,kBAAC,GAAD;OAAM,WAAU;iBAAhB,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,GAAD;QAAW,WAAU;kBAAiC;QAAuB,CAAA,EAClE,CAAA,EACb,kBAAC,GAAD;QAAa,WAAU;kBAAvB,CACE,kBAAC,KAAD;SAAG,WAAU;mBAA8B;SAGvC,CAAA,EACJ,kBAAC,GAAD;SAAQ,SAAQ;SAAc,MAAK;SAAK,WAAU;mBAAlD,CACE,kBAAC,GAAD,EAAQ,WAAU,gBAAiB,CAAA,EAAA,eAE5B;WACG;UACT;;MACH;OACF;;GACF"}
@@ -1,29 +1,29 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { FolderKanban as t, Users as n } from "lucide-react";
3
3
  import { jsx as r, jsxs as i } from "react/jsx-runtime";
4
- import { Badge as a, Card as o, CardContent as s, CardDescription as c, CardHeader as l, CardTitle as u } from "@burdenoff/fe-libs/ui";
5
- import { useI18n as d } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
4
+ import { Badge as a, Card as o, CardContent as s, CardDescription as c, CardHeader as l, CardTitle as u, GradientText as d } from "@burdenoff/fe-libs/ui";
5
+ import { useI18n as f } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
6
6
  //#region src/crewfoundry/pages/TeamsTeamsPagePage.tsx
7
- function f() {
8
- let { t: f } = d(), { teams: p } = e(), m = (e, t) => {
9
- let n = f(e);
7
+ function p() {
8
+ let { t: p } = f(), { teams: m } = e(), h = (e, t) => {
9
+ let n = p(e);
10
10
  return n === e ? t : n;
11
11
  };
12
12
  return /* @__PURE__ */ i("div", {
13
13
  className: "space-y-6 p-6",
14
14
  children: [/* @__PURE__ */ i("div", { children: [/* @__PURE__ */ r("h1", {
15
15
  className: "text-2xl font-semibold",
16
- children: m("crewfoundry.teams.title", "Teams")
16
+ children: /* @__PURE__ */ r(d, { children: h("crewfoundry.teams.title", "Teams") })
17
17
  }), /* @__PURE__ */ i("p", {
18
- className: "text-sm text-muted-foreground",
18
+ className: "text-sm text-text-secondary",
19
19
  children: [
20
- p.length,
20
+ m.length,
21
21
  " ",
22
- m("crewfoundry.teams.summary.count", "teams across the organization")
22
+ h("crewfoundry.teams.summary.count", "teams across the organization")
23
23
  ]
24
24
  })] }), /* @__PURE__ */ r("div", {
25
25
  className: "grid gap-4 md:grid-cols-2 lg:grid-cols-3",
26
- children: p.map((e) => /* @__PURE__ */ i(o, {
26
+ children: m.map((e) => /* @__PURE__ */ i(o, {
27
27
  className: "hover:shadow-md transition-shadow cursor-pointer",
28
28
  children: [/* @__PURE__ */ i(l, { children: [/* @__PURE__ */ i("div", {
29
29
  className: "flex items-center justify-between",
@@ -36,14 +36,14 @@ function f() {
36
36
  children: e.status
37
37
  })]
38
38
  }), /* @__PURE__ */ r(c, { children: e.description })] }), /* @__PURE__ */ i(s, { children: [/* @__PURE__ */ i("div", {
39
- className: "grid grid-cols-2 gap-2 text-sm text-muted-foreground mb-2",
39
+ className: "grid grid-cols-2 gap-2 text-sm text-text-secondary mb-2",
40
40
  children: [/* @__PURE__ */ i("span", {
41
41
  className: "flex items-center gap-1",
42
42
  children: [
43
43
  /* @__PURE__ */ r(n, { className: "h-3 w-3" }),
44
44
  e.memberCount,
45
45
  " ",
46
- m("crewfoundry.teams.card.members", "members")
46
+ h("crewfoundry.teams.card.members", "members")
47
47
  ]
48
48
  }), /* @__PURE__ */ i("span", {
49
49
  className: "flex items-center gap-1",
@@ -51,14 +51,14 @@ function f() {
51
51
  /* @__PURE__ */ r(t, { className: "h-3 w-3" }),
52
52
  e.projectCount,
53
53
  " ",
54
- m("crewfoundry.teams.card.projects", "projects")
54
+ h("crewfoundry.teams.card.projects", "projects")
55
55
  ]
56
56
  })]
57
57
  }), /* @__PURE__ */ i("div", {
58
- className: "text-xs text-muted-foreground",
58
+ className: "text-xs text-text-secondary",
59
59
  children: [
60
60
  /* @__PURE__ */ i("span", { children: [
61
- m("crewfoundry.teams.card.lead", "Lead"),
61
+ h("crewfoundry.teams.card.lead", "Lead"),
62
62
  ": ",
63
63
  e.leadName
64
64
  ] }),
@@ -72,6 +72,6 @@ function f() {
72
72
  });
73
73
  }
74
74
  //#endregion
75
- export { f as TeamsTeamsPagePage };
75
+ export { p as TeamsTeamsPagePage };
76
76
 
77
77
  //# sourceMappingURL=TeamsTeamsPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsTeamsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/TeamsTeamsPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from '@burdenoff/fe-libs/ui';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { FolderKanban, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function TeamsTeamsPagePage() {\n const { t: translate } = useI18n();\n const { teams } = useCrewFoundryStore();\n const t = (key: string, fallback: string) => {\n const value = translate(key);\n return value === key ? fallback : value;\n };\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">{t('crewfoundry.teams.title', 'Teams')}</h1>\n <p className=\"text-sm text-muted-foreground\">\n {teams.length} {t('crewfoundry.teams.summary.count', 'teams across the organization')}\n </p>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {teams.map((team) => (\n <Card key={team.id} className=\"hover:shadow-md transition-shadow cursor-pointer\">\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{team.name}</CardTitle>\n <Badge\n variant={team.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {team.status}\n </Badge>\n </div>\n <CardDescription>{team.description}</CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"grid grid-cols-2 gap-2 text-sm text-muted-foreground mb-2\">\n <span className=\"flex items-center gap-1\">\n <Users className=\"h-3 w-3\" />\n {team.memberCount} {t('crewfoundry.teams.card.members', 'members')}\n </span>\n <span className=\"flex items-center gap-1\">\n <FolderKanban className=\"h-3 w-3\" />\n {team.projectCount} {t('crewfoundry.teams.card.projects', 'projects')}\n </span>\n </div>\n <div className=\"text-xs text-muted-foreground\">\n <span>\n {t('crewfoundry.teams.card.lead', 'Lead')}: {team.leadName}\n </span>{' '}\n · <span>{team.department}</span>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;AAYA,SAAgB,IAAqB;CACnC,IAAM,EAAE,GAAG,MAAc,GAAS,EAC5B,EAAE,aAAU,GAAqB,EACjC,KAAK,GAAa,MAAqB;EAC3C,IAAM,IAAQ,EAAU,EAAI;AAC5B,SAAO,MAAU,IAAM,IAAW;;AAGpC,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;GAAI,WAAU;aAA0B,EAAE,2BAA2B,QAAQ;GAAM,CAAA,EACnF,kBAAC,KAAD;GAAG,WAAU;aAAb;IACG,EAAM;IAAO;IAAE,EAAE,mCAAmC,gCAAgC;IACnF;KACA,EAAA,CAAA,EACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAM,KAAK,MACV,kBAAC,GAAD;IAAoB,WAAU;cAA9B,CACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAW,WAAU;gBAAa,EAAK;MAAiB,CAAA,EACxD,kBAAC,GAAD;MACE,SAAS,EAAK,WAAW,WAAW,YAAY;MAChD,WAAU;gBAET,EAAK;MACA,CAAA,CACJ;QACN,kBAAC,GAAD,EAAA,UAAkB,EAAK,aAA8B,CAAA,CAC1C,EAAA,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAO,WAAU,WAAY,CAAA;OAC5B,EAAK;OAAY;OAAE,EAAE,kCAAkC,UAAU;OAC7D;SACP,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAc,WAAU,WAAY,CAAA;OACnC,EAAK;OAAa;OAAE,EAAE,mCAAmC,WAAW;OAChE;QACH;QACN,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,QAAD,EAAA,UAAA;OACG,EAAE,+BAA+B,OAAO;OAAC;OAAG,EAAK;OAC7C,EAAA,CAAA;MAAC;MAAI;MACV,kBAAC,QAAD,EAAA,UAAO,EAAK,YAAkB,CAAA;MAC5B;OACM,EAAA,CAAA,CACT;MA/BI,EAAK,GA+BT,CACP;GACE,CAAA,CACF"}
1
+ {"version":3,"file":"TeamsTeamsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/TeamsTeamsPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n GradientText,\n} from '@burdenoff/fe-libs/ui';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { FolderKanban, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function TeamsTeamsPagePage() {\n const { t: translate } = useI18n();\n const { teams } = useCrewFoundryStore();\n const t = (key: string, fallback: string) => {\n const value = translate(key);\n return value === key ? fallback : value;\n };\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">\n <GradientText>{t('crewfoundry.teams.title', 'Teams')}</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">\n {teams.length} {t('crewfoundry.teams.summary.count', 'teams across the organization')}\n </p>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {teams.map((team) => (\n <Card key={team.id} className=\"hover:shadow-md transition-shadow cursor-pointer\">\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{team.name}</CardTitle>\n <Badge\n variant={team.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {team.status}\n </Badge>\n </div>\n <CardDescription>{team.description}</CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"grid grid-cols-2 gap-2 text-sm text-text-secondary mb-2\">\n <span className=\"flex items-center gap-1\">\n <Users className=\"h-3 w-3\" />\n {team.memberCount} {t('crewfoundry.teams.card.members', 'members')}\n </span>\n <span className=\"flex items-center gap-1\">\n <FolderKanban className=\"h-3 w-3\" />\n {team.projectCount} {t('crewfoundry.teams.card.projects', 'projects')}\n </span>\n </div>\n <div className=\"text-xs text-text-secondary\">\n <span>\n {t('crewfoundry.teams.card.lead', 'Lead')}: {team.leadName}\n </span>{' '}\n · <span>{team.department}</span>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;AAaA,SAAgB,IAAqB;CACnC,IAAM,EAAE,GAAG,MAAc,GAAS,EAC5B,EAAE,aAAU,GAAqB,EACjC,KAAK,GAAa,MAAqB;EAC3C,IAAM,IAAQ,EAAU,EAAI;AAC5B,SAAO,MAAU,IAAM,IAAW;;AAGpC,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;GAAI,WAAU;aACZ,kBAAC,GAAD,EAAA,UAAe,EAAE,2BAA2B,QAAQ,EAAgB,CAAA;GACjE,CAAA,EACL,kBAAC,KAAD;GAAG,WAAU;aAAb;IACG,EAAM;IAAO;IAAE,EAAE,mCAAmC,gCAAgC;IACnF;KACA,EAAA,CAAA,EACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAM,KAAK,MACV,kBAAC,GAAD;IAAoB,WAAU;cAA9B,CACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,GAAD;MAAW,WAAU;gBAAa,EAAK;MAAiB,CAAA,EACxD,kBAAC,GAAD;MACE,SAAS,EAAK,WAAW,WAAW,YAAY;MAChD,WAAU;gBAET,EAAK;MACA,CAAA,CACJ;QACN,kBAAC,GAAD,EAAA,UAAkB,EAAK,aAA8B,CAAA,CAC1C,EAAA,CAAA,EACb,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAO,WAAU,WAAY,CAAA;OAC5B,EAAK;OAAY;OAAE,EAAE,kCAAkC,UAAU;OAC7D;SACP,kBAAC,QAAD;MAAM,WAAU;gBAAhB;OACE,kBAAC,GAAD,EAAc,WAAU,WAAY,CAAA;OACnC,EAAK;OAAa;OAAE,EAAE,mCAAmC,WAAW;OAChE;QACH;QACN,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,QAAD,EAAA,UAAA;OACG,EAAE,+BAA+B,OAAO;OAAC;OAAG,EAAK;OAC7C,EAAA,CAAA;MAAC;MAAI;MACV,kBAAC,QAAD,EAAA,UAAO,EAAK,YAAkB,CAAA;MAC5B;OACM,EAAA,CAAA,CACT;MA/BI,EAAK,GA+BT,CACP;GACE,CAAA,CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/microfe-crewfoundry",
3
- "version": "2026.608.1",
3
+ "version": "2026.625.1",
4
4
  "description": "Burdenoff CrewFoundry Microfrontend",
5
5
  "type": "module",
6
6
  "files": [
@@ -40,7 +40,7 @@
40
40
  },
41
41
  "dependencies": {
42
42
  "@apollo/client": "^4.0.11",
43
- "@burdenoff/fe-libs": "2026.518.7",
43
+ "@burdenoff/fe-libs": "2026.625.3",
44
44
  "@tanstack/react-query": "^5.90.16",
45
45
  "clsx": "^2.1.1",
46
46
  "graphql": "^16.10.0",