@burdenoff/microfe-crewfoundry 2026.625.1 → 2026.625.2

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 +37 -29
  2. package/dist/crewfoundry/pages/AdminAdminPagePage.js.map +1 -1
  3. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js +50 -42
  4. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  5. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js +39 -31
  6. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js.map +1 -1
  7. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js +52 -44
  8. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js.map +1 -1
  9. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js +46 -38
  10. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js.map +1 -1
  11. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js +28 -15
  12. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js +30 -22
  14. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js.map +1 -1
  15. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js +87 -69
  16. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js.map +1 -1
  17. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js +99 -80
  18. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js +86 -67
  20. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js.map +1 -1
  21. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js +31 -15
  22. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js.map +1 -1
  23. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js +37 -29
  24. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js +29 -21
  26. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js.map +1 -1
  27. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js +25 -17
  28. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js.map +1 -1
  29. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js +42 -35
  30. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js.map +1 -1
  31. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js +80 -62
  32. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js.map +1 -1
  33. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js +41 -33
  34. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js.map +1 -1
  35. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +142 -108
  36. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  37. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js +177 -136
  38. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js.map +1 -1
  39. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +44 -36
  40. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
  41. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js +49 -38
  42. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js.map +1 -1
  43. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js +26 -18
  44. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js.map +1 -1
  45. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +112 -93
  46. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js.map +1 -1
  47. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js +53 -46
  48. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js.map +1 -1
  49. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js +31 -23
  50. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js.map +1 -1
  51. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js +129 -90
  52. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js.map +1 -1
  53. package/dist/crewfoundry/pages/HiringJobsPagePage.js +96 -85
  54. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  55. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js +26 -18
  56. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js.map +1 -1
  57. package/dist/crewfoundry/pages/HrEmployeesPagePage.js +47 -35
  58. package/dist/crewfoundry/pages/HrEmployeesPagePage.js.map +1 -1
  59. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js +33 -25
  60. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js.map +1 -1
  61. package/dist/crewfoundry/pages/HrPayrollPagePage.js +36 -28
  62. package/dist/crewfoundry/pages/HrPayrollPagePage.js.map +1 -1
  63. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js +27 -19
  64. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js.map +1 -1
  65. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js +27 -19
  66. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js.map +1 -1
  67. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js +93 -75
  68. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js.map +1 -1
  69. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js +111 -70
  70. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js.map +1 -1
  71. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js +65 -53
  72. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js.map +1 -1
  73. package/dist/crewfoundry/pages/LearningCoursesPagePage.js +35 -19
  74. package/dist/crewfoundry/pages/LearningCoursesPagePage.js.map +1 -1
  75. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js +33 -25
  76. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js.map +1 -1
  77. package/dist/crewfoundry/pages/LearningLearningPagePage.js +26 -18
  78. package/dist/crewfoundry/pages/LearningLearningPagePage.js.map +1 -1
  79. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js +80 -55
  80. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js.map +1 -1
  81. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js +33 -17
  82. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js.map +1 -1
  83. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js +31 -23
  84. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js.map +1 -1
  85. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js +29 -21
  86. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js.map +1 -1
  87. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js +35 -27
  88. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js.map +1 -1
  89. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js +147 -112
  90. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js.map +1 -1
  91. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js +31 -27
  92. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js.map +1 -1
  93. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +31 -23
  94. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  95. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js +104 -85
  96. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js.map +1 -1
  97. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js +75 -56
  98. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js.map +1 -1
  99. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js +78 -60
  100. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js.map +1 -1
  101. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js +133 -92
  102. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js.map +1 -1
  103. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js +93 -52
  104. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js.map +1 -1
  105. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js +28 -20
  106. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js.map +1 -1
  107. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js +84 -65
  108. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js.map +1 -1
  109. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js +25 -17
  110. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js.map +1 -1
  111. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js +58 -40
  112. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js.map +1 -1
  113. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js +41 -33
  114. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js.map +1 -1
  115. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js +36 -29
  116. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js.map +1 -1
  117. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js +103 -72
  118. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js.map +1 -1
  119. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +43 -27
  120. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  121. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js +28 -20
  122. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js.map +1 -1
  123. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js +103 -62
  124. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js.map +1 -1
  125. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js +83 -64
  126. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js.map +1 -1
  127. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js +185 -144
  128. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js.map +1 -1
  129. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +40 -24
  130. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  131. package/package.json +2 -2
@@ -1,304 +1,345 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { useState as t } from "react";
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
- 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, GradientText as b, Input as x, Label as S, Separator as C, Switch as w, Textarea as T } from "@burdenoff/fe-libs/ui";
3
+ import { BarChart3 as n, Bell as r, Lock as i, Save as a, Settings as o, Shield as s, Trash2 as c, UserMinus as l, UserPlus as u, Users as d } from "lucide-react";
4
+ import { useNavigate as f } from "react-router-dom";
5
+ import { jsx as p, jsxs as m } from "react/jsx-runtime";
6
+ import { Badge as h, Button as g, Card as _, CardContent as v, CardDescription as y, CardHeader as b, CardTitle as x, EmphasisPanel as S, GradientText as C, Input as w, Label as T, NextSteps as E, PagePurpose as D, Separator as O, Switch as k, Textarea as A } from "@burdenoff/fe-libs/ui";
6
7
  //#region src/crewfoundry/pages/TeamsTeamSettingsPagePage.tsx
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
- return /* @__PURE__ */ f("div", {
8
+ function j() {
9
+ let j = f(), { teams: M, employees: N } = e(), P = M[0], [F, I] = t(P.name), [L, R] = t(P.description), [z, B] = t(!1), [V, H] = t(!0), [U, W] = t(!0), [G, K] = t(!1), q = N.filter((e) => P.members.includes(e.id));
10
+ return /* @__PURE__ */ m("div", {
10
11
  className: "space-y-6 p-6",
11
12
  children: [
12
- /* @__PURE__ */ f("div", {
13
+ /* @__PURE__ */ m("div", {
13
14
  className: "flex items-center justify-between",
14
- children: [/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h1", {
15
- className: "text-2xl font-semibold",
16
- children: /* @__PURE__ */ d(b, { children: "Team Settings" })
17
- }), /* @__PURE__ */ f("p", {
18
- className: "text-sm text-text-secondary",
19
- children: ["Configure settings for ", O.name]
20
- })] }), /* @__PURE__ */ f(m, { children: [/* @__PURE__ */ d(i, { className: "h-4 w-4 mr-1" }), "Save Changes"] })]
15
+ children: [/* @__PURE__ */ m("div", { children: [
16
+ /* @__PURE__ */ p("h1", {
17
+ className: "text-2xl font-semibold",
18
+ children: /* @__PURE__ */ p(C, { children: "Team Settings" })
19
+ }),
20
+ /* @__PURE__ */ m("p", {
21
+ className: "text-sm text-text-secondary",
22
+ children: ["Configure settings for ", P.name]
23
+ }),
24
+ /* @__PURE__ */ p(D, {
25
+ className: "mt-1",
26
+ children: "Configure a team's settings — membership, permissions, and preferences that control how the team works in CrewFoundry."
27
+ })
28
+ ] }), /* @__PURE__ */ m(g, { children: [/* @__PURE__ */ p(a, { className: "h-4 w-4 mr-1" }), "Save Changes"] })]
21
29
  }),
22
- /* @__PURE__ */ f("div", {
30
+ /* @__PURE__ */ p(E, {
31
+ storageKey: "crewfoundry-team-settings",
32
+ steps: [
33
+ {
34
+ id: "members",
35
+ label: "Manage members",
36
+ description: "Add or remove people and adjust their roles below.",
37
+ icon: /* @__PURE__ */ p(d, { className: "h-4 w-4" }),
38
+ onClick: () => j("../../teams/team-directory-page")
39
+ },
40
+ {
41
+ id: "analytics",
42
+ label: "Review team analytics",
43
+ description: "See how this team is performing before you change settings.",
44
+ icon: /* @__PURE__ */ p(n, { className: "h-4 w-4" }),
45
+ onClick: () => j("../../teams/team-analytics-page")
46
+ },
47
+ {
48
+ id: "detail",
49
+ label: "Open the team overview",
50
+ description: "See members and projects at a glance.",
51
+ icon: /* @__PURE__ */ p(o, { className: "h-4 w-4" }),
52
+ onClick: () => j("../../teams/team-detail-page")
53
+ }
54
+ ]
55
+ }),
56
+ /* @__PURE__ */ m("div", {
23
57
  className: "grid gap-4 md:grid-cols-3",
24
58
  children: [
25
- /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
59
+ /* @__PURE__ */ p(_, { children: /* @__PURE__ */ m(v, {
26
60
  className: "flex items-center gap-3 pt-6",
27
- children: [/* @__PURE__ */ d(u, { className: "h-5 w-5 text-status-info-text" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
61
+ children: [/* @__PURE__ */ p(d, { className: "h-5 w-5 text-status-info-text" }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("p", {
28
62
  className: "text-xs text-text-secondary",
29
63
  children: "Members"
30
- }), /* @__PURE__ */ d("p", {
64
+ }), /* @__PURE__ */ p("p", {
31
65
  className: "text-lg font-bold",
32
- children: O.memberCount
66
+ children: P.memberCount
33
67
  })] })]
34
68
  }) }),
35
- /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
69
+ /* @__PURE__ */ p(_, { children: /* @__PURE__ */ m(v, {
36
70
  className: "flex items-center gap-3 pt-6",
37
- children: [/* @__PURE__ */ d(a, { className: "h-5 w-5 text-action-primary-bg" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
71
+ children: [/* @__PURE__ */ p(o, { className: "h-5 w-5 text-action-primary-bg" }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("p", {
38
72
  className: "text-xs text-text-secondary",
39
73
  children: "Active Projects"
40
- }), /* @__PURE__ */ d("p", {
74
+ }), /* @__PURE__ */ p("p", {
41
75
  className: "text-lg font-bold",
42
- children: O.projectCount
76
+ children: P.projectCount
43
77
  })] })]
44
78
  }) }),
45
- /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
79
+ /* @__PURE__ */ p(_, { children: /* @__PURE__ */ m(v, {
46
80
  className: "flex items-center gap-3 pt-6",
47
- children: [/* @__PURE__ */ d(o, { className: "h-5 w-5 text-status-success-text" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
81
+ children: [/* @__PURE__ */ p(s, { className: "h-5 w-5 text-status-success-text" }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("p", {
48
82
  className: "text-xs text-text-secondary",
49
83
  children: "Visibility"
50
- }), /* @__PURE__ */ d("p", {
84
+ }), /* @__PURE__ */ p("p", {
51
85
  className: "text-lg font-bold",
52
- children: z ? "Private" : "Public"
86
+ children: G ? "Private" : "Public"
53
87
  })] })]
54
88
  }) })
55
89
  ]
56
90
  }),
57
- /* @__PURE__ */ f("div", {
91
+ /* @__PURE__ */ m("div", {
58
92
  className: "grid gap-6 lg:grid-cols-3",
59
- children: [/* @__PURE__ */ f("div", {
93
+ children: [/* @__PURE__ */ m("div", {
60
94
  className: "lg:col-span-2 space-y-6",
61
95
  children: [
62
- /* @__PURE__ */ f(h, { children: [/* @__PURE__ */ f(v, { children: [/* @__PURE__ */ d(y, {
63
- className: "text-base",
64
- children: "General Settings"
65
- }), /* @__PURE__ */ d(_, { children: "Basic team information" })] }), /* @__PURE__ */ f(g, {
66
- className: "space-y-4",
67
- children: [
68
- /* @__PURE__ */ f("div", {
69
- className: "space-y-2",
70
- children: [/* @__PURE__ */ d(S, {
71
- htmlFor: "tsName",
72
- children: "Team Name"
73
- }), /* @__PURE__ */ d(x, {
74
- id: "tsName",
75
- value: k,
76
- onChange: (e) => A(e.target.value)
77
- })]
78
- }),
79
- /* @__PURE__ */ f("div", {
80
- className: "space-y-2",
81
- children: [/* @__PURE__ */ d(S, {
82
- htmlFor: "tsDesc",
83
- children: "Description"
84
- }), /* @__PURE__ */ d(T, {
85
- id: "tsDesc",
86
- className: "min-h-[80px]",
87
- value: j,
88
- onChange: (e) => M(e.target.value)
89
- })]
90
- }),
91
- /* @__PURE__ */ f("div", {
92
- className: "grid gap-4 sm:grid-cols-2",
93
- children: [/* @__PURE__ */ f("div", {
96
+ /* @__PURE__ */ m(S, { children: [
97
+ /* @__PURE__ */ p("div", {
98
+ className: "text-base font-semibold",
99
+ children: "General Settings"
100
+ }),
101
+ /* @__PURE__ */ p("p", {
102
+ className: "mb-4 text-sm text-text-secondary",
103
+ children: "Basic team information"
104
+ }),
105
+ /* @__PURE__ */ m("div", {
106
+ className: "space-y-4",
107
+ children: [
108
+ /* @__PURE__ */ m("div", {
94
109
  className: "space-y-2",
95
- children: [/* @__PURE__ */ d(S, { children: "Department" }), /* @__PURE__ */ d(x, {
96
- value: O.department,
97
- disabled: !0,
98
- className: "bg-bg-sunken"
110
+ children: [/* @__PURE__ */ p(T, {
111
+ htmlFor: "tsName",
112
+ children: "Team Name"
113
+ }), /* @__PURE__ */ p(w, {
114
+ id: "tsName",
115
+ value: F,
116
+ onChange: (e) => I(e.target.value)
99
117
  })]
100
- }), /* @__PURE__ */ f("div", {
118
+ }),
119
+ /* @__PURE__ */ m("div", {
101
120
  className: "space-y-2",
102
- children: [/* @__PURE__ */ d(S, { children: "Team Lead" }), /* @__PURE__ */ d(x, {
103
- value: O.leadName,
104
- disabled: !0,
105
- className: "bg-bg-sunken"
121
+ children: [/* @__PURE__ */ p(T, {
122
+ htmlFor: "tsDesc",
123
+ children: "Description"
124
+ }), /* @__PURE__ */ p(A, {
125
+ id: "tsDesc",
126
+ className: "min-h-[80px]",
127
+ value: L,
128
+ onChange: (e) => R(e.target.value)
106
129
  })]
107
- })]
108
- })
109
- ]
110
- })] }),
111
- /* @__PURE__ */ f(h, { children: [/* @__PURE__ */ d(v, { children: /* @__PURE__ */ f("div", {
130
+ }),
131
+ /* @__PURE__ */ m("div", {
132
+ className: "grid gap-4 sm:grid-cols-2",
133
+ children: [/* @__PURE__ */ m("div", {
134
+ className: "space-y-2",
135
+ children: [/* @__PURE__ */ p(T, { children: "Department" }), /* @__PURE__ */ p(w, {
136
+ value: P.department,
137
+ disabled: !0,
138
+ className: "bg-bg-sunken"
139
+ })]
140
+ }), /* @__PURE__ */ m("div", {
141
+ className: "space-y-2",
142
+ children: [/* @__PURE__ */ p(T, { children: "Team Lead" }), /* @__PURE__ */ p(w, {
143
+ value: P.leadName,
144
+ disabled: !0,
145
+ className: "bg-bg-sunken"
146
+ })]
147
+ })]
148
+ })
149
+ ]
150
+ })
151
+ ] }),
152
+ /* @__PURE__ */ m(_, { children: [/* @__PURE__ */ p(b, { children: /* @__PURE__ */ m("div", {
112
153
  className: "flex items-center justify-between",
113
- children: [/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d(y, {
154
+ children: [/* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p(x, {
114
155
  className: "text-base",
115
156
  children: "Team Members"
116
- }), /* @__PURE__ */ f(_, { children: [V.length, " active members"] })] }), /* @__PURE__ */ f(m, {
157
+ }), /* @__PURE__ */ m(y, { children: [q.length, " active members"] })] }), /* @__PURE__ */ m(g, {
117
158
  size: "sm",
118
- children: [/* @__PURE__ */ d(l, { className: "h-3 w-3 mr-1" }), "Add Member"]
159
+ children: [/* @__PURE__ */ p(u, { className: "h-3 w-3 mr-1" }), "Add Member"]
119
160
  })]
120
- }) }), /* @__PURE__ */ d(g, {
161
+ }) }), /* @__PURE__ */ p(v, {
121
162
  className: "p-0",
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
- children: [/* @__PURE__ */ f("div", {
163
+ children: q.map((e, t) => /* @__PURE__ */ m("div", {
164
+ className: `flex items-center justify-between px-6 py-3 ${t < q.length - 1 ? "border-b" : ""}`,
165
+ children: [/* @__PURE__ */ m("div", {
125
166
  className: "flex items-center gap-3",
126
- children: [/* @__PURE__ */ f("div", {
167
+ children: [/* @__PURE__ */ m("div", {
127
168
  className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-bg-sunken text-xs font-medium",
128
169
  children: [e.firstName[0], e.lastName[0]]
129
- }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ f("div", {
170
+ }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ m("div", {
130
171
  className: "flex items-center gap-2",
131
- children: [/* @__PURE__ */ f("p", {
172
+ children: [/* @__PURE__ */ m("p", {
132
173
  className: "text-sm font-medium",
133
174
  children: [
134
175
  e.firstName,
135
176
  " ",
136
177
  e.lastName
137
178
  ]
138
- }), e.id === O.leadId && /* @__PURE__ */ d(p, {
179
+ }), e.id === P.leadId && /* @__PURE__ */ p(h, {
139
180
  className: "text-[10px]",
140
181
  children: "Lead"
141
182
  })]
142
- }), /* @__PURE__ */ d("p", {
183
+ }), /* @__PURE__ */ p("p", {
143
184
  className: "text-xs text-text-secondary",
144
185
  children: e.position
145
186
  })] })]
146
- }), /* @__PURE__ */ f("div", {
187
+ }), /* @__PURE__ */ m("div", {
147
188
  className: "flex items-center gap-2",
148
- children: [/* @__PURE__ */ d(p, {
189
+ children: [/* @__PURE__ */ p(h, {
149
190
  variant: e.status === "active" ? "secondary" : "outline",
150
191
  className: "text-[10px]",
151
192
  children: e.status
152
- }), e.id !== O.leadId && /* @__PURE__ */ d(m, {
193
+ }), e.id !== P.leadId && /* @__PURE__ */ p(g, {
153
194
  variant: "ghost",
154
195
  size: "sm",
155
196
  className: "h-7 w-7 p-0 text-text-secondary hover:text-status-error-text",
156
- children: /* @__PURE__ */ d(c, { className: "h-3 w-3" })
197
+ children: /* @__PURE__ */ p(l, { className: "h-3 w-3" })
157
198
  })]
158
199
  })]
159
200
  }, e.id))
160
201
  })] }),
161
- /* @__PURE__ */ f(h, { children: [/* @__PURE__ */ f(v, { children: [/* @__PURE__ */ d(y, {
202
+ /* @__PURE__ */ m(_, { children: [/* @__PURE__ */ m(b, { children: [/* @__PURE__ */ p(x, {
162
203
  className: "text-base",
163
204
  children: "Permissions & Access"
164
- }), /* @__PURE__ */ d(_, { children: "Control team visibility and member permissions" })] }), /* @__PURE__ */ f(g, {
205
+ }), /* @__PURE__ */ p(y, { children: "Control team visibility and member permissions" })] }), /* @__PURE__ */ m(v, {
165
206
  className: "space-y-4",
166
207
  children: [
167
- /* @__PURE__ */ f("div", {
208
+ /* @__PURE__ */ m("div", {
168
209
  className: "flex items-center justify-between",
169
- children: [/* @__PURE__ */ f("div", {
210
+ children: [/* @__PURE__ */ m("div", {
170
211
  className: "space-y-0.5",
171
- children: [/* @__PURE__ */ d("p", {
212
+ children: [/* @__PURE__ */ p("p", {
172
213
  className: "text-sm font-medium",
173
214
  children: "Private Team"
174
- }), /* @__PURE__ */ d("p", {
215
+ }), /* @__PURE__ */ p("p", {
175
216
  className: "text-xs text-text-secondary",
176
217
  children: "Only invited members can see this team"
177
218
  })]
178
- }), /* @__PURE__ */ f("div", {
219
+ }), /* @__PURE__ */ m("div", {
179
220
  className: "flex items-center gap-2",
180
- children: [/* @__PURE__ */ d(r, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ d(w, {
181
- checked: z,
182
- onCheckedChange: B
221
+ children: [/* @__PURE__ */ p(i, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ p(k, {
222
+ checked: G,
223
+ onCheckedChange: K
183
224
  })]
184
225
  })]
185
226
  }),
186
- /* @__PURE__ */ d(C, {}),
187
- /* @__PURE__ */ f("div", {
227
+ /* @__PURE__ */ p(O, {}),
228
+ /* @__PURE__ */ m("div", {
188
229
  className: "flex items-center justify-between",
189
- children: [/* @__PURE__ */ f("div", {
230
+ children: [/* @__PURE__ */ m("div", {
190
231
  className: "space-y-0.5",
191
- children: [/* @__PURE__ */ d("p", {
232
+ children: [/* @__PURE__ */ p("p", {
192
233
  className: "text-sm font-medium",
193
234
  children: "Auto-Approve Join Requests"
194
- }), /* @__PURE__ */ d("p", {
235
+ }), /* @__PURE__ */ p("p", {
195
236
  className: "text-xs text-text-secondary",
196
237
  children: "Automatically accept when employees request to join"
197
238
  })]
198
- }), /* @__PURE__ */ d(w, {
199
- checked: N,
200
- onCheckedChange: P
239
+ }), /* @__PURE__ */ p(k, {
240
+ checked: z,
241
+ onCheckedChange: B
201
242
  })]
202
243
  })
203
244
  ]
204
245
  })] })
205
246
  ]
206
- }), /* @__PURE__ */ f("div", {
247
+ }), /* @__PURE__ */ m("div", {
207
248
  className: "space-y-4",
208
249
  children: [
209
- /* @__PURE__ */ f(h, { children: [/* @__PURE__ */ d(v, { children: /* @__PURE__ */ d(y, {
250
+ /* @__PURE__ */ m(_, { children: [/* @__PURE__ */ p(b, { children: /* @__PURE__ */ p(x, {
210
251
  className: "text-sm",
211
252
  children: "Notification Preferences"
212
- }) }), /* @__PURE__ */ f(g, {
253
+ }) }), /* @__PURE__ */ m(v, {
213
254
  className: "space-y-4",
214
255
  children: [
215
- /* @__PURE__ */ f("div", {
256
+ /* @__PURE__ */ m("div", {
216
257
  className: "flex items-center justify-between",
217
- children: [/* @__PURE__ */ f("div", {
258
+ children: [/* @__PURE__ */ m("div", {
218
259
  className: "flex items-center gap-2",
219
- children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
260
+ children: [/* @__PURE__ */ p(r, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("p", {
220
261
  className: "text-xs font-medium",
221
262
  children: "New Member Alerts"
222
- }), /* @__PURE__ */ d("p", {
263
+ }), /* @__PURE__ */ p("p", {
223
264
  className: "text-[10px] text-text-secondary",
224
265
  children: "Notify when members join or leave"
225
266
  })] })]
226
- }), /* @__PURE__ */ d(w, {
227
- checked: F,
228
- onCheckedChange: I
267
+ }), /* @__PURE__ */ p(k, {
268
+ checked: V,
269
+ onCheckedChange: H
229
270
  })]
230
271
  }),
231
- /* @__PURE__ */ d(C, {}),
232
- /* @__PURE__ */ f("div", {
272
+ /* @__PURE__ */ p(O, {}),
273
+ /* @__PURE__ */ m("div", {
233
274
  className: "flex items-center justify-between",
234
- children: [/* @__PURE__ */ f("div", {
275
+ children: [/* @__PURE__ */ m("div", {
235
276
  className: "flex items-center gap-2",
236
- children: [/* @__PURE__ */ d(n, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
277
+ children: [/* @__PURE__ */ p(r, { className: "h-4 w-4 text-text-secondary" }), /* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("p", {
237
278
  className: "text-xs font-medium",
238
279
  children: "Weekly Digest"
239
- }), /* @__PURE__ */ d("p", {
280
+ }), /* @__PURE__ */ p("p", {
240
281
  className: "text-[10px] text-text-secondary",
241
282
  children: "Summary of team activity"
242
283
  })] })]
243
- }), /* @__PURE__ */ d(w, {
244
- checked: L,
245
- onCheckedChange: R
284
+ }), /* @__PURE__ */ p(k, {
285
+ checked: U,
286
+ onCheckedChange: W
246
287
  })]
247
288
  })
248
289
  ]
249
290
  })] }),
250
- /* @__PURE__ */ f(h, { children: [/* @__PURE__ */ d(v, { children: /* @__PURE__ */ d(y, {
291
+ /* @__PURE__ */ m(_, { children: [/* @__PURE__ */ p(b, { children: /* @__PURE__ */ p(x, {
251
292
  className: "text-sm",
252
293
  children: "Team Info"
253
- }) }), /* @__PURE__ */ d(g, {
294
+ }) }), /* @__PURE__ */ p(v, {
254
295
  className: "space-y-2 text-sm",
255
296
  children: [
256
297
  {
257
298
  label: "Created",
258
- value: O.createdAt
299
+ value: P.createdAt
259
300
  },
260
301
  {
261
302
  label: "Department",
262
- value: O.department
303
+ value: P.department
263
304
  },
264
305
  {
265
306
  label: "Status",
266
- value: O.status
307
+ value: P.status
267
308
  },
268
309
  {
269
310
  label: "Projects",
270
- value: O.projectCount.toString()
311
+ value: P.projectCount.toString()
271
312
  },
272
313
  {
273
314
  label: "Members",
274
- value: O.memberCount.toString()
315
+ value: P.memberCount.toString()
275
316
  }
276
- ].map((e) => /* @__PURE__ */ f("div", {
317
+ ].map((e) => /* @__PURE__ */ m("div", {
277
318
  className: "flex items-center justify-between",
278
- children: [/* @__PURE__ */ d("span", {
319
+ children: [/* @__PURE__ */ p("span", {
279
320
  className: "text-text-secondary text-xs",
280
321
  children: e.label
281
- }), /* @__PURE__ */ d("span", {
322
+ }), /* @__PURE__ */ p("span", {
282
323
  className: "text-xs font-medium",
283
324
  children: e.value
284
325
  })]
285
326
  }, e.label))
286
327
  })] }),
287
- /* @__PURE__ */ f(h, {
328
+ /* @__PURE__ */ m(_, {
288
329
  className: "border-status-error-border/50",
289
- children: [/* @__PURE__ */ d(v, { children: /* @__PURE__ */ d(y, {
330
+ children: [/* @__PURE__ */ p(b, { children: /* @__PURE__ */ p(x, {
290
331
  className: "text-sm text-status-error-text",
291
332
  children: "Danger Zone"
292
- }) }), /* @__PURE__ */ f(g, {
333
+ }) }), /* @__PURE__ */ m(v, {
293
334
  className: "space-y-3",
294
- children: [/* @__PURE__ */ d("p", {
335
+ children: [/* @__PURE__ */ p("p", {
295
336
  className: "text-xs text-text-secondary",
296
337
  children: "Archiving a team will remove all members and deactivate associated projects. This action can be reversed by an admin."
297
- }), /* @__PURE__ */ f(m, {
338
+ }), /* @__PURE__ */ m(g, {
298
339
  variant: "destructive",
299
340
  size: "sm",
300
341
  className: "w-full",
301
- children: [/* @__PURE__ */ d(s, { className: "h-3 w-3 mr-1" }), "Archive Team"]
342
+ children: [/* @__PURE__ */ p(c, { className: "h-3 w-3 mr-1" }), "Archive Team"]
302
343
  })]
303
344
  })]
304
345
  })
@@ -309,6 +350,6 @@ function E() {
309
350
  });
310
351
  }
311
352
  //#endregion
312
- export { E as TeamsTeamSettingsPagePage };
353
+ export { j as TeamsTeamSettingsPagePage };
313
354
 
314
355
  //# 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 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":"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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 EmphasisPanel,\n GradientText,\n Input,\n Label,\n NextSteps,\n PagePurpose,\n Separator,\n Switch,\n Textarea,\n} from '@burdenoff/fe-libs/ui';\nimport {\n BarChart3,\n Bell,\n Lock,\n Save,\n Settings,\n Shield,\n Trash2,\n UserMinus,\n UserPlus,\n Users,\n} from 'lucide-react';\nimport { useNavigate } from 'react-router-dom';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function TeamsTeamSettingsPagePage() {\n const navigate = useNavigate();\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 <PagePurpose className=\"mt-1\">Configure a team&apos;s settings — membership, permissions, and preferences that control how the team works in CrewFoundry.</PagePurpose>\n </div>\n <Button>\n <Save className=\"h-4 w-4 mr-1\" />\n Save Changes\n </Button>\n </div>\n\n <NextSteps\n storageKey=\"crewfoundry-team-settings\"\n steps={[\n {\n id: 'members',\n label: 'Manage members',\n description: 'Add or remove people and adjust their roles below.',\n icon: <Users className=\"h-4 w-4\" />,\n onClick: () => navigate('../../teams/team-directory-page'),\n },\n {\n id: 'analytics',\n label: 'Review team analytics',\n description: 'See how this team is performing before you change settings.',\n icon: <BarChart3 className=\"h-4 w-4\" />,\n onClick: () => navigate('../../teams/team-analytics-page'),\n },\n {\n id: 'detail',\n label: 'Open the team overview',\n description: 'See members and projects at a glance.',\n icon: <Settings className=\"h-4 w-4\" />,\n onClick: () => navigate('../../teams/team-detail-page'),\n },\n ]}\n />\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 <EmphasisPanel>\n <div className=\"text-base font-semibold\">General Settings</div>\n <p className=\"mb-4 text-sm text-text-secondary\">Basic team information</p>\n <div 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 </div>\n </EmphasisPanel>\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":"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"}