@burdenoff/microfe-crewfoundry 2026.624.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 +86 -70
  2. package/dist/crewfoundry/pages/AdminAdminPagePage.js.map +1 -1
  3. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js +104 -88
  4. package/dist/crewfoundry/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  5. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js +91 -75
  6. package/dist/crewfoundry/pages/AnalyticsEmployeeAnalyticsPagePage.js.map +1 -1
  7. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js +119 -103
  8. package/dist/crewfoundry/pages/AnalyticsFinancialAnalyticsPagePage.js.map +1 -1
  9. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js +107 -91
  10. package/dist/crewfoundry/pages/AnalyticsHiringAnalyticsPagePage.js.map +1 -1
  11. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js +10 -10
  12. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js +60 -48
  14. package/dist/crewfoundry/pages/CommunicationsCallsPagePage.js.map +1 -1
  15. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js +10 -10
  16. package/dist/crewfoundry/pages/CommunicationsDirectoryPagePage.js.map +1 -1
  17. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js +20 -20
  18. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js +22 -22
  20. package/dist/crewfoundry/pages/CommunicationsMessagesPagePage.js.map +1 -1
  21. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js +7 -7
  22. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js.map +1 -1
  23. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js +67 -55
  24. package/dist/crewfoundry/pages/CommunicationsVideoCallsPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js +54 -42
  26. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js.map +1 -1
  27. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js +68 -52
  28. package/dist/crewfoundry/pages/CompanyCompanyDashboardPagePage.js.map +1 -1
  29. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js +30 -30
  30. package/dist/crewfoundry/pages/CompanyCompanyProfilePagePage.js.map +1 -1
  31. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js +9 -9
  32. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js.map +1 -1
  33. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js +90 -74
  34. package/dist/crewfoundry/pages/DashboardAnalyticsPagePage.js.map +1 -1
  35. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +166 -132
  36. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  37. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js +43 -43
  38. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js.map +1 -1
  39. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +107 -91
  40. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
  41. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js +35 -35
  42. package/dist/crewfoundry/pages/HelpApiDocumentationPagePage.js.map +1 -1
  43. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js +78 -62
  44. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js.map +1 -1
  45. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +17 -17
  46. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js.map +1 -1
  47. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js +39 -39
  48. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js.map +1 -1
  49. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js +53 -41
  50. package/dist/crewfoundry/pages/HiringInterviewsPagePage.js.map +1 -1
  51. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js +41 -37
  52. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js.map +1 -1
  53. package/dist/crewfoundry/pages/HiringJobsPagePage.js +25 -20
  54. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  55. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js +54 -42
  56. package/dist/crewfoundry/pages/HrDepartmentsPagePage.js.map +1 -1
  57. package/dist/crewfoundry/pages/HrEmployeesPagePage.js +76 -60
  58. package/dist/crewfoundry/pages/HrEmployeesPagePage.js.map +1 -1
  59. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js +83 -67
  60. package/dist/crewfoundry/pages/HrLeaveManagementPagePage.js.map +1 -1
  61. package/dist/crewfoundry/pages/HrPayrollPagePage.js +86 -70
  62. package/dist/crewfoundry/pages/HrPayrollPagePage.js.map +1 -1
  63. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js +79 -63
  64. package/dist/crewfoundry/pages/HrTimeTrackingPagePage.js.map +1 -1
  65. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js +51 -39
  66. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js.map +1 -1
  67. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js +14 -14
  68. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js.map +1 -1
  69. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js +29 -25
  70. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js.map +1 -1
  71. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js +17 -17
  72. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js.map +1 -1
  73. package/dist/crewfoundry/pages/LearningCoursesPagePage.js +11 -11
  74. package/dist/crewfoundry/pages/LearningCoursesPagePage.js.map +1 -1
  75. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js +76 -60
  76. package/dist/crewfoundry/pages/LearningLearningAnalyticsPagePage.js.map +1 -1
  77. package/dist/crewfoundry/pages/LearningLearningPagePage.js +67 -51
  78. package/dist/crewfoundry/pages/LearningLearningPagePage.js.map +1 -1
  79. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js +17 -17
  80. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js.map +1 -1
  81. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js +7 -7
  82. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js.map +1 -1
  83. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js +69 -53
  84. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js.map +1 -1
  85. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js +54 -42
  86. package/dist/crewfoundry/pages/MarketplaceBookingManagementPagePage.js.map +1 -1
  87. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js +66 -54
  88. package/dist/crewfoundry/pages/MarketplaceEarningsPagePage.js.map +1 -1
  89. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js +37 -37
  90. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js.map +1 -1
  91. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js +33 -32
  92. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js.map +1 -1
  93. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +54 -42
  94. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  95. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js +11 -11
  96. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js.map +1 -1
  97. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js +18 -18
  98. package/dist/crewfoundry/pages/MarketplaceMessagingPagePage.js.map +1 -1
  99. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js +7 -7
  100. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js.map +1 -1
  101. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js +29 -25
  102. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js.map +1 -1
  103. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js +22 -18
  104. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js.map +1 -1
  105. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js +55 -43
  106. package/dist/crewfoundry/pages/PaymentsEscrowPagePage.js.map +1 -1
  107. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js +7 -7
  108. package/dist/crewfoundry/pages/PaymentsInvoicesPagePage.js.map +1 -1
  109. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js +62 -46
  110. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js.map +1 -1
  111. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js +14 -14
  112. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js.map +1 -1
  113. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js +71 -59
  114. package/dist/crewfoundry/pages/PaymentsSecurityPagePage.js.map +1 -1
  115. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js +20 -20
  116. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js.map +1 -1
  117. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js +33 -29
  118. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js.map +1 -1
  119. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +16 -16
  120. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  121. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js +53 -41
  122. package/dist/crewfoundry/pages/TeamsTeamAnalyticsPagePage.js.map +1 -1
  123. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js +25 -21
  124. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js.map +1 -1
  125. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js +9 -9
  126. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js.map +1 -1
  127. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js +48 -48
  128. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js.map +1 -1
  129. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +13 -13
  130. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  131. package/package.json +2 -2
@@ -1,16 +1,16 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { DollarSign as t, Globe as n, TrendingUp as r, Users as i } from "lucide-react";
3
3
  import { jsx as a, jsxs as o } from "react/jsx-runtime";
4
- import { Card as s, CardContent as c, CardHeader as l, CardTitle as u } from "@burdenoff/fe-libs/ui";
4
+ import { Card as s, CardContent as c, CardHeader as l, CardTitle as u, GlassCard as d, GradientText as f } from "@burdenoff/fe-libs/ui";
5
5
  //#region src/crewfoundry/pages/CompanyCompanyDashboardPagePage.tsx
6
- function d() {
7
- let { employees: d, departments: f, projects: p, clients: m } = e(), h = m.reduce((e, t) => e + t.revenue, 0);
6
+ function p() {
7
+ let { employees: p, departments: m, projects: h, clients: g } = e(), _ = g.reduce((e, t) => e + t.revenue, 0);
8
8
  return /* @__PURE__ */ o("div", {
9
9
  className: "space-y-6 p-6",
10
10
  children: [
11
11
  /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("h1", {
12
12
  className: "text-2xl font-semibold",
13
- children: "Company Dashboard"
13
+ children: /* @__PURE__ */ a(f, { children: "Company Dashboard" })
14
14
  }), /* @__PURE__ */ a("p", {
15
15
  className: "text-sm text-text-secondary",
16
16
  children: "Organization overview and key business metrics"
@@ -18,53 +18,69 @@ function d() {
18
18
  /* @__PURE__ */ o("div", {
19
19
  className: "grid gap-4 md:grid-cols-2 lg:grid-cols-4",
20
20
  children: [
21
- /* @__PURE__ */ o(s, { children: [/* @__PURE__ */ o(l, {
22
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
23
- children: [/* @__PURE__ */ a(u, {
24
- className: "text-sm font-medium",
25
- children: "Total Employees"
26
- }), /* @__PURE__ */ a(i, { className: "h-4 w-4 text-text-secondary" })]
27
- }), /* @__PURE__ */ o(c, { children: [/* @__PURE__ */ a("div", {
28
- className: "text-2xl font-bold",
29
- children: d.length
30
- }), /* @__PURE__ */ o("p", {
31
- className: "text-xs text-text-secondary",
32
- children: [f.length, " departments"]
33
- })] })] }),
34
- /* @__PURE__ */ o(s, { children: [/* @__PURE__ */ o(l, {
35
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
36
- children: [/* @__PURE__ */ a(u, {
37
- className: "text-sm font-medium",
38
- children: "Active Projects"
39
- }), /* @__PURE__ */ a(r, { className: "h-4 w-4 text-text-secondary" })]
40
- }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ a("div", {
41
- className: "text-2xl font-bold",
42
- children: p.filter((e) => e.status === "active").length
43
- }) })] }),
44
- /* @__PURE__ */ o(s, { children: [/* @__PURE__ */ o(l, {
45
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
46
- children: [/* @__PURE__ */ a(u, {
47
- className: "text-sm font-medium",
48
- children: "Client Revenue"
49
- }), /* @__PURE__ */ a(t, { className: "h-4 w-4 text-text-secondary" })]
50
- }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ o("div", {
51
- className: "text-2xl font-bold",
52
- children: [
53
- "$",
54
- (h / 1e6).toFixed(1),
55
- "M"
56
- ]
57
- }) })] }),
58
- /* @__PURE__ */ o(s, { children: [/* @__PURE__ */ o(l, {
59
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
60
- children: [/* @__PURE__ */ a(u, {
61
- className: "text-sm font-medium",
62
- children: "Active Clients"
63
- }), /* @__PURE__ */ a(n, { className: "h-4 w-4 text-text-secondary" })]
64
- }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ a("div", {
65
- className: "text-2xl font-bold",
66
- children: m.filter((e) => e.status === "active").length
67
- }) })] })
21
+ /* @__PURE__ */ o(d, {
22
+ treatment: "metric",
23
+ className: "border-border-seam",
24
+ children: [/* @__PURE__ */ o(l, {
25
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
26
+ children: [/* @__PURE__ */ a(u, {
27
+ className: "text-sm font-medium",
28
+ children: "Total Employees"
29
+ }), /* @__PURE__ */ a(i, { className: "h-4 w-4 text-text-secondary" })]
30
+ }), /* @__PURE__ */ o(c, { children: [/* @__PURE__ */ a("div", {
31
+ className: "text-2xl font-bold tabular-nums",
32
+ children: p.length
33
+ }), /* @__PURE__ */ o("p", {
34
+ className: "text-xs text-text-secondary",
35
+ children: [m.length, " departments"]
36
+ })] })]
37
+ }),
38
+ /* @__PURE__ */ o(d, {
39
+ treatment: "metric",
40
+ className: "border-border-seam",
41
+ children: [/* @__PURE__ */ o(l, {
42
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
43
+ children: [/* @__PURE__ */ a(u, {
44
+ className: "text-sm font-medium",
45
+ children: "Active Projects"
46
+ }), /* @__PURE__ */ a(r, { className: "h-4 w-4 text-text-secondary" })]
47
+ }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ a("div", {
48
+ className: "text-2xl font-bold tabular-nums",
49
+ children: h.filter((e) => e.status === "active").length
50
+ }) })]
51
+ }),
52
+ /* @__PURE__ */ o(d, {
53
+ treatment: "metric",
54
+ className: "border-border-seam",
55
+ children: [/* @__PURE__ */ o(l, {
56
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
57
+ children: [/* @__PURE__ */ a(u, {
58
+ className: "text-sm font-medium",
59
+ children: "Client Revenue"
60
+ }), /* @__PURE__ */ a(t, { className: "h-4 w-4 text-text-secondary" })]
61
+ }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ o("div", {
62
+ className: "text-2xl font-bold tabular-nums",
63
+ children: [
64
+ "$",
65
+ (_ / 1e6).toFixed(1),
66
+ "M"
67
+ ]
68
+ }) })]
69
+ }),
70
+ /* @__PURE__ */ o(d, {
71
+ treatment: "metric",
72
+ className: "border-border-seam",
73
+ children: [/* @__PURE__ */ o(l, {
74
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
75
+ children: [/* @__PURE__ */ a(u, {
76
+ className: "text-sm font-medium",
77
+ children: "Active Clients"
78
+ }), /* @__PURE__ */ a(n, { className: "h-4 w-4 text-text-secondary" })]
79
+ }), /* @__PURE__ */ a(c, { children: /* @__PURE__ */ a("div", {
80
+ className: "text-2xl font-bold tabular-nums",
81
+ children: g.filter((e) => e.status === "active").length
82
+ }) })]
83
+ })
68
84
  ]
69
85
  }),
70
86
  /* @__PURE__ */ o(s, { children: [/* @__PURE__ */ a(l, { children: /* @__PURE__ */ a(u, { children: "Company Information" }) }), /* @__PURE__ */ o(c, {
@@ -139,6 +155,6 @@ function d() {
139
155
  });
140
156
  }
141
157
  //#endregion
142
- export { d as CompanyCompanyDashboardPagePage };
158
+ export { p as CompanyCompanyDashboardPagePage };
143
159
 
144
160
  //# sourceMappingURL=CompanyCompanyDashboardPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompanyCompanyDashboardPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyCompanyDashboardPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Separator,\n} from '@burdenoff/fe-libs/ui';\nimport { Building2, DollarSign, Globe, TrendingUp, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyCompanyDashboardPagePage() {\n const { employees, departments, projects, clients } = useCrewFoundryStore();\n const totalRevenue = clients.reduce((s, c) => s + c.revenue, 0);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Company Dashboard</h1>\n <p className=\"text-sm text-text-secondary\">\n Organization overview and key business metrics\n </p>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-4\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Total Employees</CardTitle>\n <Users className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{employees.length}</div>\n <p className=\"text-xs text-text-secondary\">{departments.length} departments</p>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Active Projects</CardTitle>\n <TrendingUp className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">\n {projects.filter((p) => p.status === 'active').length}\n </div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Client Revenue</CardTitle>\n <DollarSign className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">${(totalRevenue / 1000000).toFixed(1)}M</div>\n </CardContent>\n </Card>\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Active Clients</CardTitle>\n <Globe className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">\n {clients.filter((c) => c.status === 'active').length}\n </div>\n </CardContent>\n </Card>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>Company Information</CardTitle>\n </CardHeader>\n <CardContent className=\"grid gap-4 md:grid-cols-2\">\n <div className=\"space-y-3\">\n <div>\n <p className=\"text-xs text-text-secondary\">Company Name</p>\n <p className=\"text-sm font-medium\">CrewFoundry Inc.</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Industry</p>\n <p className=\"text-sm font-medium\">HR Technology / SaaS</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Founded</p>\n <p className=\"text-sm font-medium\">2020</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Headquarters</p>\n <p className=\"text-sm font-medium\">San Francisco, CA</p>\n </div>\n </div>\n <div className=\"space-y-3\">\n <div>\n <p className=\"text-xs text-text-secondary\">CEO</p>\n <p className=\"text-sm font-medium\">Alex Rivera</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Website</p>\n <p className=\"text-sm font-medium\">www.crewfoundry.com</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Offices</p>\n <p className=\"text-sm font-medium\">\n San Francisco, Austin, New York, Chicago, Remote\n </p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Funding</p>\n <p className=\"text-sm font-medium\">Series B - $45M</p>\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CompanyCompanyDashboardPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyCompanyDashboardPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n GlassCard,\n GradientText,\n Separator,\n} from '@burdenoff/fe-libs/ui';\nimport { Building2, DollarSign, Globe, TrendingUp, Users } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyCompanyDashboardPagePage() {\n const { employees, departments, projects, clients } = useCrewFoundryStore();\n const totalRevenue = clients.reduce((s, c) => s + c.revenue, 0);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <h1 className=\"text-2xl font-semibold\">\n <GradientText>Company Dashboard</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">\n Organization overview and key business metrics\n </p>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-4\">\n <GlassCard treatment=\"metric\" className=\"border-border-seam\">\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Total Employees</CardTitle>\n <Users className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">{employees.length}</div>\n <p className=\"text-xs text-text-secondary\">{departments.length} departments</p>\n </CardContent>\n </GlassCard>\n <GlassCard treatment=\"metric\" className=\"border-border-seam\">\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Active Projects</CardTitle>\n <TrendingUp className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">\n {projects.filter((p) => p.status === 'active').length}\n </div>\n </CardContent>\n </GlassCard>\n <GlassCard treatment=\"metric\" className=\"border-border-seam\">\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Client Revenue</CardTitle>\n <DollarSign className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">\n ${(totalRevenue / 1000000).toFixed(1)}M\n </div>\n </CardContent>\n </GlassCard>\n <GlassCard treatment=\"metric\" className=\"border-border-seam\">\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Active Clients</CardTitle>\n <Globe className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">\n {clients.filter((c) => c.status === 'active').length}\n </div>\n </CardContent>\n </GlassCard>\n </div>\n <Card>\n <CardHeader>\n <CardTitle>Company Information</CardTitle>\n </CardHeader>\n <CardContent className=\"grid gap-4 md:grid-cols-2\">\n <div className=\"space-y-3\">\n <div>\n <p className=\"text-xs text-text-secondary\">Company Name</p>\n <p className=\"text-sm font-medium\">CrewFoundry Inc.</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Industry</p>\n <p className=\"text-sm font-medium\">HR Technology / SaaS</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Founded</p>\n <p className=\"text-sm font-medium\">2020</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Headquarters</p>\n <p className=\"text-sm font-medium\">San Francisco, CA</p>\n </div>\n </div>\n <div className=\"space-y-3\">\n <div>\n <p className=\"text-xs text-text-secondary\">CEO</p>\n <p className=\"text-sm font-medium\">Alex Rivera</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Website</p>\n <p className=\"text-sm font-medium\">www.crewfoundry.com</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Offices</p>\n <p className=\"text-sm font-medium\">\n San Francisco, Austin, New York, Chicago, Remote\n </p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Funding</p>\n <p className=\"text-sm font-medium\">Series B - $45M</p>\n </div>\n </div>\n </CardContent>\n </Card>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -2,10 +2,10 @@ import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { useMemo as t } from "react";
3
3
  import { Award as n, BarChart3 as r, Building2 as i, Calendar as a, ExternalLink as o, Globe as s, MapPin as c, TrendingUp 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, Separator as b } 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, Separator as x } from "@burdenoff/fe-libs/ui";
6
6
  //#region src/crewfoundry/pages/CompanyCompanyProfilePagePage.tsx
7
- function x() {
8
- let { employees: x, departments: S, teams: C, projects: w, announcements: T } = e(), E = t(() => {
7
+ function S() {
8
+ let { employees: S, departments: C, teams: w, projects: T, announcements: E } = e(), D = t(() => {
9
9
  let e = [
10
10
  {
11
11
  year: "2020",
@@ -19,33 +19,33 @@ function x() {
19
19
  year: "2022",
20
20
  event: "Expanded hiring and payroll capabilities"
21
21
  }
22
- ], t = T.slice(0, 4).map((e, t) => ({
22
+ ], t = E.slice(0, 4).map((e, t) => ({
23
23
  year: String(2023 + t),
24
24
  event: e.title
25
25
  }));
26
26
  return [...e, ...t];
27
- }, [T]), D = t(() => [
27
+ }, [E]), O = t(() => [
28
28
  {
29
29
  title: "People First",
30
- description: `Supporting ${x.length} employees with modern workforce tooling.`
30
+ description: `Supporting ${S.length} employees with modern workforce tooling.`
31
31
  },
32
32
  {
33
33
  title: "Transparency",
34
- description: `Cross-functional visibility across ${S.length} departments.`
34
+ description: `Cross-functional visibility across ${C.length} departments.`
35
35
  },
36
36
  {
37
37
  title: "Innovation",
38
- description: `${w.filter((e) => e.status === "active").length} active initiatives driving product growth.`
38
+ description: `${T.filter((e) => e.status === "active").length} active initiatives driving product growth.`
39
39
  },
40
40
  {
41
41
  title: "Inclusion",
42
- description: `Distributed teams across ${new Set(x.map((e) => e.location)).size} locations.`
42
+ description: `Distributed teams across ${new Set(S.map((e) => e.location)).size} locations.`
43
43
  }
44
44
  ], [
45
- S.length,
46
- x,
47
- w
48
- ]), O = t(() => Array.from(new Set(x.map((e) => e.location))).slice(0, 8), [x]);
45
+ C.length,
46
+ S,
47
+ T
48
+ ]), k = t(() => Array.from(new Set(S.map((e) => e.location))).slice(0, 8), [S]);
49
49
  return /* @__PURE__ */ f("div", {
50
50
  className: "space-y-6 p-6",
51
51
  children: [
@@ -58,7 +58,7 @@ function x() {
58
58
  children: /* @__PURE__ */ d(i, { className: "h-7 w-7" })
59
59
  }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h1", {
60
60
  className: "text-2xl font-semibold",
61
- children: "CrewFoundry Inc."
61
+ children: /* @__PURE__ */ d(b, { children: "CrewFoundry Inc." })
62
62
  }), /* @__PURE__ */ d("p", {
63
63
  className: "text-sm text-text-secondary",
64
64
  children: "Modern workforce management platform"
@@ -75,26 +75,26 @@ function x() {
75
75
  {
76
76
  icon: u,
77
77
  label: "Employees",
78
- value: `${x.length}+`,
79
- color: "text-blue-500"
78
+ value: `${S.length}+`,
79
+ color: "text-status-info-text"
80
80
  },
81
81
  {
82
82
  icon: i,
83
83
  label: "Departments",
84
- value: S.length.toString(),
85
- color: "text-purple-500"
84
+ value: C.length.toString(),
85
+ color: "text-action-primary-bg"
86
86
  },
87
87
  {
88
88
  icon: r,
89
89
  label: "Active Projects",
90
- value: w.filter((e) => e.status === "active").length.toString(),
91
- color: "text-green-500"
90
+ value: T.filter((e) => e.status === "active").length.toString(),
91
+ color: "text-status-success-text"
92
92
  },
93
93
  {
94
94
  icon: l,
95
95
  label: "Teams",
96
- value: C.length.toString(),
97
- color: "text-orange-500"
96
+ value: w.length.toString(),
97
+ color: "text-status-warning-text"
98
98
  }
99
99
  ].map((e) => /* @__PURE__ */ d(h, { children: /* @__PURE__ */ f(g, {
100
100
  className: "flex items-center gap-3 pt-6",
@@ -120,7 +120,7 @@ function x() {
120
120
  children: [
121
121
  /* @__PURE__ */ d("p", { children: "CrewFoundry is a modern, all-in-one workforce management platform built for growing organizations. Our platform streamlines HR operations, recruitment, payroll processing, and employee development through an intuitive interface powered by AI and automation." }),
122
122
  /* @__PURE__ */ d("p", { children: "Founded in 2020 in San Francisco, we've grown to serve hundreds of companies managing their workforce with our integrated suite of tools spanning hiring, onboarding, time tracking, learning management, and analytics." }),
123
- /* @__PURE__ */ d(b, {}),
123
+ /* @__PURE__ */ d(x, {}),
124
124
  /* @__PURE__ */ f("div", {
125
125
  className: "grid grid-cols-2 gap-3 text-xs",
126
126
  children: [
@@ -149,7 +149,7 @@ function x() {
149
149
  children: "Our Values"
150
150
  }), /* @__PURE__ */ d(_, { children: "The principles that guide how we build and work" })] }), /* @__PURE__ */ d(g, {
151
151
  className: "grid gap-3 sm:grid-cols-2",
152
- children: D.map((e) => /* @__PURE__ */ f("div", {
152
+ children: O.map((e) => /* @__PURE__ */ f("div", {
153
153
  className: "rounded-lg border p-3 space-y-1",
154
154
  children: [/* @__PURE__ */ d("p", {
155
155
  className: "text-sm font-medium",
@@ -165,8 +165,8 @@ function x() {
165
165
  children: "Departments"
166
166
  }) }), /* @__PURE__ */ d(g, {
167
167
  className: "p-0",
168
- children: S.map((e, t) => /* @__PURE__ */ f("div", {
169
- className: `flex items-center justify-between px-6 py-3 ${t < S.length - 1 ? "border-b" : ""}`,
168
+ children: C.map((e, t) => /* @__PURE__ */ f("div", {
169
+ className: `flex items-center justify-between px-6 py-3 ${t < C.length - 1 ? "border-b" : ""}`,
170
170
  children: [/* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("p", {
171
171
  className: "text-sm font-medium",
172
172
  children: e.name
@@ -194,14 +194,14 @@ function x() {
194
194
  children: "Company Timeline"
195
195
  }) }), /* @__PURE__ */ d(g, {
196
196
  className: "space-y-0",
197
- children: E.map((e, t) => /* @__PURE__ */ f("div", {
197
+ children: D.map((e, t) => /* @__PURE__ */ f("div", {
198
198
  className: "flex gap-3",
199
199
  children: [/* @__PURE__ */ f("div", {
200
200
  className: "flex flex-col items-center",
201
201
  children: [/* @__PURE__ */ d("div", {
202
202
  className: "flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-action-primary-bg text-action-primary-text text-[10px] font-medium",
203
203
  children: e.year.slice(2)
204
- }), t < E.length - 1 && /* @__PURE__ */ d("div", { className: "h-full w-px bg-border my-1" })]
204
+ }), t < D.length - 1 && /* @__PURE__ */ d("div", { className: "h-full w-px bg-border my-1" })]
205
205
  }), /* @__PURE__ */ f("div", {
206
206
  className: "pb-4",
207
207
  children: [/* @__PURE__ */ d("p", {
@@ -218,7 +218,7 @@ function x() {
218
218
  children: "Office Locations"
219
219
  }) }), /* @__PURE__ */ d(g, {
220
220
  className: "space-y-2",
221
- children: O.map((e) => /* @__PURE__ */ f("div", {
221
+ children: k.map((e) => /* @__PURE__ */ f("div", {
222
222
  className: "flex items-center gap-2 text-sm",
223
223
  children: [/* @__PURE__ */ d(c, { className: "h-3 w-3 text-text-secondary" }), /* @__PURE__ */ d("span", { children: e })]
224
224
  }, e))
@@ -229,6 +229,6 @@ function x() {
229
229
  });
230
230
  }
231
231
  //#endregion
232
- export { x as CompanyCompanyProfilePagePage };
232
+ export { S as CompanyCompanyProfilePagePage };
233
233
 
234
234
  //# sourceMappingURL=CompanyCompanyProfilePagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompanyCompanyProfilePagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyCompanyProfilePagePage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Separator,\n} from '@burdenoff/fe-libs/ui';\nimport {\n Award,\n BarChart3,\n Building2,\n Calendar,\n ExternalLink,\n Globe,\n MapPin,\n TrendingUp,\n Users,\n} from 'lucide-react';\nimport { useMemo } from 'react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyCompanyProfilePagePage() {\n const { employees, departments, teams, projects, announcements } = useCrewFoundryStore();\n\n const milestones = useMemo(() => {\n const base = [\n { year: '2020', event: 'CrewFoundry founded and team assembled' },\n { year: '2021', event: 'Core workforce modules launched' },\n { year: '2022', event: 'Expanded hiring and payroll capabilities' },\n ];\n const dynamic = announcements.slice(0, 4).map((announcement, index) => ({\n year: String(2023 + index),\n event: announcement.title,\n }));\n return [...base, ...dynamic];\n }, [announcements]);\n\n const values = useMemo(\n () => [\n {\n title: 'People First',\n description: `Supporting ${employees.length} employees with modern workforce tooling.`,\n },\n {\n title: 'Transparency',\n description: `Cross-functional visibility across ${departments.length} departments.`,\n },\n {\n title: 'Innovation',\n description: `${projects.filter((project) => project.status === 'active').length} active initiatives driving product growth.`,\n },\n {\n title: 'Inclusion',\n description: `Distributed teams across ${new Set(employees.map((employee) => employee.location)).size} locations.`,\n },\n ],\n [departments.length, employees, projects]\n );\n\n const officeLocations = useMemo(\n () => Array.from(new Set(employees.map((employee) => employee.location))).slice(0, 8),\n [employees]\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-4\">\n <div className=\"flex h-14 w-14 items-center justify-center rounded-xl bg-action-primary-bg text-action-primary-text\">\n <Building2 className=\"h-7 w-7\" />\n </div>\n <div>\n <h1 className=\"text-2xl font-semibold\">CrewFoundry Inc.</h1>\n <p className=\"text-sm text-text-secondary\">Modern workforce management platform</p>\n </div>\n </div>\n <Button variant=\"outline\" size=\"sm\">\n <ExternalLink className=\"h-3 w-3 mr-1\" />\n crewfoundry.com\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-4\">\n {[\n {\n icon: Users,\n label: 'Employees',\n value: `${employees.length}+`,\n color: 'text-blue-500',\n },\n {\n icon: Building2,\n label: 'Departments',\n value: departments.length.toString(),\n color: 'text-purple-500',\n },\n {\n icon: BarChart3,\n label: 'Active Projects',\n value: projects.filter((p) => p.status === 'active').length.toString(),\n color: 'text-green-500',\n },\n {\n icon: TrendingUp,\n label: 'Teams',\n value: teams.length.toString(),\n color: 'text-orange-500',\n },\n ].map((stat) => (\n <Card key={stat.label}>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <stat.icon className={`h-5 w-5 ${stat.color}`} />\n <div>\n <p className=\"text-xs text-text-secondary\">{stat.label}</p>\n <p className=\"text-lg font-bold\">{stat.value}</p>\n </div>\n </CardContent>\n </Card>\n ))}\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\">About CrewFoundry</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3 text-sm text-text-secondary\">\n <p>\n CrewFoundry is a modern, all-in-one workforce management platform built for growing\n organizations. Our platform streamlines HR operations, recruitment, payroll\n processing, and employee development through an intuitive interface powered by AI\n and automation.\n </p>\n <p>\n Founded in 2020 in San Francisco, we&apos;ve grown to serve hundreds of companies\n managing their workforce with our integrated suite of tools spanning hiring,\n onboarding, time tracking, learning management, and analytics.\n </p>\n <Separator />\n <div className=\"grid grid-cols-2 gap-3 text-xs\">\n <div className=\"flex items-center gap-2\">\n <MapPin className=\"h-3 w-3\" />\n <span>San Francisco, CA (HQ)</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Globe className=\"h-3 w-3\" />\n <span>6 office locations globally</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Calendar className=\"h-3 w-3\" />\n <span>Founded 2020</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Award className=\"h-3 w-3\" />\n <span>Series B funded</span>\n </div>\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Our Values</CardTitle>\n <CardDescription>The principles that guide how we build and work</CardDescription>\n </CardHeader>\n <CardContent className=\"grid gap-3 sm:grid-cols-2\">\n {values.map((v) => (\n <div key={v.title} className=\"rounded-lg border p-3 space-y-1\">\n <p className=\"text-sm font-medium\">{v.title}</p>\n <p className=\"text-xs text-text-secondary\">{v.description}</p>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Departments</CardTitle>\n </CardHeader>\n <CardContent className=\"p-0\">\n {departments.map((dept, i) => (\n <div\n key={dept.id}\n className={`flex items-center justify-between px-6 py-3 ${i < departments.length - 1 ? 'border-b' : ''}`}\n >\n <div>\n <p className=\"text-sm font-medium\">{dept.name}</p>\n <p className=\"text-xs text-text-secondary\">Led by {dept.headName}</p>\n </div>\n <div className=\"flex items-center gap-3\">\n <span className=\"text-xs text-text-secondary\">\n {dept.employeeCount} employees\n </span>\n <Badge\n variant={dept.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {dept.status}\n </Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n\n <div className=\"space-y-4\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Company Timeline</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-0\">\n {milestones.map((ms, i) => (\n <div key={ms.year} className=\"flex gap-3\">\n <div className=\"flex flex-col items-center\">\n <div className=\"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-action-primary-bg text-action-primary-text text-[10px] font-medium\">\n {ms.year.slice(2)}\n </div>\n {i < milestones.length - 1 && <div className=\"h-full w-px bg-border my-1\" />}\n </div>\n <div className=\"pb-4\">\n <p className=\"text-xs font-medium\">{ms.year}</p>\n <p className=\"text-xs text-text-secondary\">{ms.event}</p>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Office Locations</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-2\">\n {officeLocations.map((loc) => (\n <div key={loc} className=\"flex items-center gap-2 text-sm\">\n <MapPin className=\"h-3 w-3 text-text-secondary\" />\n <span>{loc}</span>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CompanyCompanyProfilePagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyCompanyProfilePagePage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n GradientText,\n Separator,\n} from '@burdenoff/fe-libs/ui';\nimport {\n Award,\n BarChart3,\n Building2,\n Calendar,\n ExternalLink,\n Globe,\n MapPin,\n TrendingUp,\n Users,\n} from 'lucide-react';\nimport { useMemo } from 'react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyCompanyProfilePagePage() {\n const { employees, departments, teams, projects, announcements } = useCrewFoundryStore();\n\n const milestones = useMemo(() => {\n const base = [\n { year: '2020', event: 'CrewFoundry founded and team assembled' },\n { year: '2021', event: 'Core workforce modules launched' },\n { year: '2022', event: 'Expanded hiring and payroll capabilities' },\n ];\n const dynamic = announcements.slice(0, 4).map((announcement, index) => ({\n year: String(2023 + index),\n event: announcement.title,\n }));\n return [...base, ...dynamic];\n }, [announcements]);\n\n const values = useMemo(\n () => [\n {\n title: 'People First',\n description: `Supporting ${employees.length} employees with modern workforce tooling.`,\n },\n {\n title: 'Transparency',\n description: `Cross-functional visibility across ${departments.length} departments.`,\n },\n {\n title: 'Innovation',\n description: `${projects.filter((project) => project.status === 'active').length} active initiatives driving product growth.`,\n },\n {\n title: 'Inclusion',\n description: `Distributed teams across ${new Set(employees.map((employee) => employee.location)).size} locations.`,\n },\n ],\n [departments.length, employees, projects]\n );\n\n const officeLocations = useMemo(\n () => Array.from(new Set(employees.map((employee) => employee.location))).slice(0, 8),\n [employees]\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex items-center gap-4\">\n <div className=\"flex h-14 w-14 items-center justify-center rounded-xl bg-action-primary-bg text-action-primary-text\">\n <Building2 className=\"h-7 w-7\" />\n </div>\n <div>\n <h1 className=\"text-2xl font-semibold\">\n <GradientText>CrewFoundry Inc.</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">Modern workforce management platform</p>\n </div>\n </div>\n <Button variant=\"outline\" size=\"sm\">\n <ExternalLink className=\"h-3 w-3 mr-1\" />\n crewfoundry.com\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-4\">\n {[\n {\n icon: Users,\n label: 'Employees',\n value: `${employees.length}+`,\n color: 'text-status-info-text',\n },\n {\n icon: Building2,\n label: 'Departments',\n value: departments.length.toString(),\n color: 'text-action-primary-bg',\n },\n {\n icon: BarChart3,\n label: 'Active Projects',\n value: projects.filter((p) => p.status === 'active').length.toString(),\n color: 'text-status-success-text',\n },\n {\n icon: TrendingUp,\n label: 'Teams',\n value: teams.length.toString(),\n color: 'text-status-warning-text',\n },\n ].map((stat) => (\n <Card key={stat.label}>\n <CardContent className=\"flex items-center gap-3 pt-6\">\n <stat.icon className={`h-5 w-5 ${stat.color}`} />\n <div>\n <p className=\"text-xs text-text-secondary\">{stat.label}</p>\n <p className=\"text-lg font-bold\">{stat.value}</p>\n </div>\n </CardContent>\n </Card>\n ))}\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\">About CrewFoundry</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-3 text-sm text-text-secondary\">\n <p>\n CrewFoundry is a modern, all-in-one workforce management platform built for growing\n organizations. Our platform streamlines HR operations, recruitment, payroll\n processing, and employee development through an intuitive interface powered by AI\n and automation.\n </p>\n <p>\n Founded in 2020 in San Francisco, we&apos;ve grown to serve hundreds of companies\n managing their workforce with our integrated suite of tools spanning hiring,\n onboarding, time tracking, learning management, and analytics.\n </p>\n <Separator />\n <div className=\"grid grid-cols-2 gap-3 text-xs\">\n <div className=\"flex items-center gap-2\">\n <MapPin className=\"h-3 w-3\" />\n <span>San Francisco, CA (HQ)</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Globe className=\"h-3 w-3\" />\n <span>6 office locations globally</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Calendar className=\"h-3 w-3\" />\n <span>Founded 2020</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Award className=\"h-3 w-3\" />\n <span>Series B funded</span>\n </div>\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Our Values</CardTitle>\n <CardDescription>The principles that guide how we build and work</CardDescription>\n </CardHeader>\n <CardContent className=\"grid gap-3 sm:grid-cols-2\">\n {values.map((v) => (\n <div key={v.title} className=\"rounded-lg border p-3 space-y-1\">\n <p className=\"text-sm font-medium\">{v.title}</p>\n <p className=\"text-xs text-text-secondary\">{v.description}</p>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-base\">Departments</CardTitle>\n </CardHeader>\n <CardContent className=\"p-0\">\n {departments.map((dept, i) => (\n <div\n key={dept.id}\n className={`flex items-center justify-between px-6 py-3 ${i < departments.length - 1 ? 'border-b' : ''}`}\n >\n <div>\n <p className=\"text-sm font-medium\">{dept.name}</p>\n <p className=\"text-xs text-text-secondary\">Led by {dept.headName}</p>\n </div>\n <div className=\"flex items-center gap-3\">\n <span className=\"text-xs text-text-secondary\">\n {dept.employeeCount} employees\n </span>\n <Badge\n variant={dept.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {dept.status}\n </Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n\n <div className=\"space-y-4\">\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Company Timeline</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-0\">\n {milestones.map((ms, i) => (\n <div key={ms.year} className=\"flex gap-3\">\n <div className=\"flex flex-col items-center\">\n <div className=\"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-action-primary-bg text-action-primary-text text-[10px] font-medium\">\n {ms.year.slice(2)}\n </div>\n {i < milestones.length - 1 && <div className=\"h-full w-px bg-border my-1\" />}\n </div>\n <div className=\"pb-4\">\n <p className=\"text-xs font-medium\">{ms.year}</p>\n <p className=\"text-xs text-text-secondary\">{ms.event}</p>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"text-sm\">Office Locations</CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-2\">\n {officeLocations.map((loc) => (\n <div key={loc} className=\"flex items-center gap-2 text-sm\">\n <MapPin className=\"h-3 w-3 text-text-secondary\" />\n <span>{loc}</span>\n </div>\n ))}\n </CardContent>\n </Card>\n </div>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1,23 +1,23 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { Mail as t, Plus as n, Star as r } from "lucide-react";
3
3
  import { jsx as i, jsxs as a } from "react/jsx-runtime";
4
- import { Badge as o, Button as s, Card as c, CardContent as l, CardHeader as u, CardTitle as d } from "@burdenoff/fe-libs/ui";
4
+ import { Badge as o, Button as s, Card as c, CardContent as l, CardHeader as u, CardTitle as d, GradientText as f } from "@burdenoff/fe-libs/ui";
5
5
  //#region src/crewfoundry/pages/CompanyVendorManagementPagePage.tsx
6
- function f() {
7
- let { vendors: f } = e(), p = f.reduce((e, t) => e + t.contractValue, 0);
6
+ function p() {
7
+ let { vendors: p } = e(), m = p.reduce((e, t) => e + t.contractValue, 0);
8
8
  return /* @__PURE__ */ a("div", {
9
9
  className: "space-y-6 p-6",
10
10
  children: [/* @__PURE__ */ a("div", {
11
11
  className: "flex items-center justify-between",
12
12
  children: [/* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("h1", {
13
13
  className: "text-2xl font-semibold",
14
- children: "Vendor Management"
14
+ children: /* @__PURE__ */ i(f, { children: "Vendor Management" })
15
15
  }), /* @__PURE__ */ a("p", {
16
16
  className: "text-sm text-text-secondary",
17
17
  children: [
18
- f.length,
18
+ p.length,
19
19
  " vendors · $",
20
- (p / 1e3).toFixed(0),
20
+ (m / 1e3).toFixed(0),
21
21
  "K total contract value"
22
22
  ]
23
23
  })] }), /* @__PURE__ */ a(s, {
@@ -26,7 +26,7 @@ function f() {
26
26
  })]
27
27
  }), /* @__PURE__ */ i("div", {
28
28
  className: "grid gap-4 md:grid-cols-2 lg:grid-cols-3",
29
- children: f.map((e) => /* @__PURE__ */ a(c, { children: [/* @__PURE__ */ i(u, { children: /* @__PURE__ */ a("div", {
29
+ children: p.map((e) => /* @__PURE__ */ a(c, { children: [/* @__PURE__ */ i(u, { children: /* @__PURE__ */ a("div", {
30
30
  className: "flex items-center justify-between",
31
31
  children: [/* @__PURE__ */ i(d, {
32
32
  className: "text-base",
@@ -67,7 +67,7 @@ function f() {
67
67
  children: [/* @__PURE__ */ i(t, { className: "h-3 w-3" }), e.email]
68
68
  }), /* @__PURE__ */ a("div", {
69
69
  className: "flex items-center gap-1",
70
- children: [/* @__PURE__ */ i(r, { className: "h-3 w-3 text-yellow-500" }), /* @__PURE__ */ i("span", {
70
+ children: [/* @__PURE__ */ i(r, { className: "h-3 w-3 text-status-warning-text" }), /* @__PURE__ */ i("span", {
71
71
  className: "text-sm",
72
72
  children: e.rating
73
73
  })]
@@ -79,6 +79,6 @@ function f() {
79
79
  });
80
80
  }
81
81
  //#endregion
82
- export { f as CompanyVendorManagementPagePage };
82
+ export { p as CompanyVendorManagementPagePage };
83
83
 
84
84
  //# sourceMappingURL=CompanyVendorManagementPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CompanyVendorManagementPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyVendorManagementPagePage.tsx"],"sourcesContent":["import { Badge, Button, Card, CardContent, CardHeader, CardTitle } from '@burdenoff/fe-libs/ui';\nimport { DollarSign, Mail, Phone, Plus, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyVendorManagementPagePage() {\n const { vendors } = useCrewFoundryStore();\n const totalContractValue = vendors.reduce((s, v) => s + v.contractValue, 0);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Vendor Management</h1>\n <p className=\"text-sm text-text-secondary\">\n {vendors.length} vendors · ${(totalContractValue / 1000).toFixed(0)}K total contract\n value\n </p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Vendor\n </Button>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {vendors.map((vendor) => (\n <Card key={vendor.id}>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{vendor.name}</CardTitle>\n <Badge\n variant={vendor.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {vendor.status}\n </Badge>\n </div>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-2\">\n <Badge variant=\"outline\" className=\"text-[10px]\">\n {vendor.category}\n </Badge>\n <div className=\"grid grid-cols-2 gap-2 mt-2\">\n <div>\n <p className=\"text-xs text-text-secondary\">Contact</p>\n <p className=\"text-sm\">{vendor.contactPerson}</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Contract Value</p>\n <p className=\"text-sm font-medium\">${vendor.contractValue.toLocaleString()}</p>\n </div>\n </div>\n <div className=\"flex items-center justify-between pt-2 border-t mt-2\">\n <div className=\"flex items-center gap-1 text-xs text-text-secondary\">\n <Mail className=\"h-3 w-3\" />\n {vendor.email}\n </div>\n <div className=\"flex items-center gap-1\">\n <Star className=\"h-3 w-3 text-yellow-500\" />\n <span className=\"text-sm\">{vendor.rating}</span>\n </div>\n </div>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAIA,SAAgB,IAAkC;CAChD,IAAM,EAAE,eAAY,GAAqB,EACnC,IAAqB,EAAQ,QAAQ,GAAG,MAAM,IAAI,EAAE,eAAe,EAAE;AAE3E,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cAAyB;IAAsB,CAAA,EAC7D,kBAAC,KAAD;IAAG,WAAU;cAAb;KACG,EAAQ;KAAO;MAAc,IAAqB,KAAM,QAAQ,EAAE;KAAC;KAElE;MACA,EAAA,CAAA,EACN,kBAAC,GAAD;IAAQ,MAAK;cAAb,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,aAE1B;MACL;MACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAQ,KAAK,MACZ,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD;KAAW,WAAU;eAAa,EAAO;KAAiB,CAAA,EAC1D,kBAAC,GAAD;KACE,SAAS,EAAO,WAAW,WAAW,YAAY;KAClD,WAAU;eAET,EAAO;KACF,CAAA,CACJ;OACK,CAAA,EACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD;MAAO,SAAQ;MAAU,WAAU;gBAChC,EAAO;MACF,CAAA;KACR,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAW,CAAA,EACtD,kBAAC,KAAD;OAAG,WAAU;iBAAW,EAAO;OAAkB,CAAA,CAC7C,EAAA,CAAA,EACN,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAkB,CAAA,EAC7D,kBAAC,KAAD;OAAG,WAAU;iBAAb,CAAmC,KAAE,EAAO,cAAc,gBAAgB,CAAK;SAC3E,EAAA,CAAA,CACF;;KACN,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,WAAY,CAAA,EAC3B,EAAO,MACJ;UACN,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,2BAA4B,CAAA,EAC5C,kBAAC,QAAD;QAAM,WAAU;kBAAW,EAAO;QAAc,CAAA,CAC5C;SACF;;KACF;OACM,CAAA,CACT,EAAA,EAvCI,EAAO,GAuCX,CACP;GACE,CAAA,CACF"}
1
+ {"version":3,"file":"CompanyVendorManagementPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/CompanyVendorManagementPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardHeader,\n CardTitle,\n GradientText,\n} from '@burdenoff/fe-libs/ui';\nimport { DollarSign, Mail, Phone, Plus, Star } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function CompanyVendorManagementPagePage() {\n const { vendors } = useCrewFoundryStore();\n const totalContractValue = vendors.reduce((s, v) => s + v.contractValue, 0);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">\n <GradientText>Vendor Management</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">\n {vendors.length} vendors · ${(totalContractValue / 1000).toFixed(0)}K total contract\n value\n </p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Vendor\n </Button>\n </div>\n <div className=\"grid gap-4 md:grid-cols-2 lg:grid-cols-3\">\n {vendors.map((vendor) => (\n <Card key={vendor.id}>\n <CardHeader>\n <div className=\"flex items-center justify-between\">\n <CardTitle className=\"text-base\">{vendor.name}</CardTitle>\n <Badge\n variant={vendor.status === 'active' ? 'default' : 'secondary'}\n className=\"text-[10px]\"\n >\n {vendor.status}\n </Badge>\n </div>\n </CardHeader>\n <CardContent>\n <div className=\"space-y-2\">\n <Badge variant=\"outline\" className=\"text-[10px]\">\n {vendor.category}\n </Badge>\n <div className=\"grid grid-cols-2 gap-2 mt-2\">\n <div>\n <p className=\"text-xs text-text-secondary\">Contact</p>\n <p className=\"text-sm\">{vendor.contactPerson}</p>\n </div>\n <div>\n <p className=\"text-xs text-text-secondary\">Contract Value</p>\n <p className=\"text-sm font-medium\">${vendor.contractValue.toLocaleString()}</p>\n </div>\n </div>\n <div className=\"flex items-center justify-between pt-2 border-t mt-2\">\n <div className=\"flex items-center gap-1 text-xs text-text-secondary\">\n <Mail className=\"h-3 w-3\" />\n {vendor.email}\n </div>\n <div className=\"flex items-center gap-1\">\n <Star className=\"h-3 w-3 text-status-warning-text\" />\n <span className=\"text-sm\">{vendor.rating}</span>\n </div>\n </div>\n </div>\n </CardContent>\n </Card>\n ))}\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;AAYA,SAAgB,IAAkC;CAChD,IAAM,EAAE,eAAY,GAAqB,EACnC,IAAqB,EAAQ,QAAQ,GAAG,MAAM,IAAI,EAAE,eAAe,EAAE;AAE3E,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;IAAI,WAAU;cACZ,kBAAC,GAAD,EAAA,UAAc,qBAAgC,CAAA;IAC3C,CAAA,EACL,kBAAC,KAAD;IAAG,WAAU;cAAb;KACG,EAAQ;KAAO;MAAc,IAAqB,KAAM,QAAQ,EAAE;KAAC;KAElE;MACA,EAAA,CAAA,EACN,kBAAC,GAAD;IAAQ,MAAK;cAAb,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,aAE1B;MACL;MACN,kBAAC,OAAD;GAAK,WAAU;aACZ,EAAQ,KAAK,MACZ,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,GAAD;KAAW,WAAU;eAAa,EAAO;KAAiB,CAAA,EAC1D,kBAAC,GAAD;KACE,SAAS,EAAO,WAAW,WAAW,YAAY;KAClD,WAAU;eAET,EAAO;KACF,CAAA,CACJ;OACK,CAAA,EACb,kBAAC,GAAD,EAAA,UACE,kBAAC,OAAD;IAAK,WAAU;cAAf;KACE,kBAAC,GAAD;MAAO,SAAQ;MAAU,WAAU;gBAChC,EAAO;MACF,CAAA;KACR,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAW,CAAA,EACtD,kBAAC,KAAD;OAAG,WAAU;iBAAW,EAAO;OAAkB,CAAA,CAC7C,EAAA,CAAA,EACN,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,KAAD;OAAG,WAAU;iBAA8B;OAAkB,CAAA,EAC7D,kBAAC,KAAD;OAAG,WAAU;iBAAb,CAAmC,KAAE,EAAO,cAAc,gBAAgB,CAAK;SAC3E,EAAA,CAAA,CACF;;KACN,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,WAAY,CAAA,EAC3B,EAAO,MACJ;UACN,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,GAAD,EAAM,WAAU,oCAAqC,CAAA,EACrD,kBAAC,QAAD;QAAM,WAAU;kBAAW,EAAO;QAAc,CAAA,CAC5C;SACF;;KACF;OACM,CAAA,CACT,EAAA,EAvCI,EAAO,GAuCX,CACP;GACE,CAAA,CACF"}