@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 { useState as e } from "react";
2
2
  import { Briefcase as t, Plus as n, Save as r, X as i } from "lucide-react";
3
3
  import { jsx as a, jsxs as o } from "react/jsx-runtime";
4
- import { Button as s, Card as c, CardContent as l, CardDescription as u, CardHeader as d, CardTitle as f, Input as p, Textarea as m } from "@burdenoff/fe-libs/ui";
4
+ import { Button as s, Card as c, CardContent as l, CardDescription as u, CardHeader as d, CardTitle as f, GradientText as p, Input as m, Textarea as h } from "@burdenoff/fe-libs/ui";
5
5
  //#region src/crewfoundry/pages/HiringCreateJobPagePage.tsx
6
- function h() {
7
- let [h, g] = e(""), [_, v] = e(""), [y, b] = e(""), [x, S] = e(""), [C, w] = e(""), [T, E] = e(""), [D, O] = e([""]), [k, A] = e([""]), j = () => O([...D, ""]), M = () => A([...k, ""]), N = (e, t) => {
8
- let n = [...D];
9
- n[e] = t, O(n);
10
- }, P = (e, t) => {
11
- let n = [...k];
12
- n[e] = t, A(n);
13
- }, F = (e) => O(D.filter((t, n) => n !== e)), I = (e) => A(k.filter((t, n) => n !== e));
6
+ function g() {
7
+ let [g, _] = e(""), [v, y] = e(""), [b, x] = e(""), [S, C] = e(""), [w, T] = e(""), [E, D] = e(""), [O, k] = e([""]), [A, j] = e([""]), M = () => k([...O, ""]), N = () => j([...A, ""]), P = (e, t) => {
8
+ let n = [...O];
9
+ n[e] = t, k(n);
10
+ }, F = (e, t) => {
11
+ let n = [...A];
12
+ n[e] = t, j(n);
13
+ }, I = (e) => k(O.filter((t, n) => n !== e)), L = (e) => j(A.filter((t, n) => n !== e));
14
14
  return /* @__PURE__ */ o("div", {
15
15
  className: "space-y-6 p-6 max-w-3xl",
16
16
  children: [
@@ -18,7 +18,7 @@ function h() {
18
18
  className: "flex items-center justify-between",
19
19
  children: /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("h1", {
20
20
  className: "text-2xl font-semibold",
21
- children: "Create Job Posting"
21
+ children: /* @__PURE__ */ a(p, { children: "Create Job Posting" })
22
22
  }), /* @__PURE__ */ a("p", {
23
23
  className: "text-sm text-text-secondary",
24
24
  children: "Fill in the details for a new position"
@@ -35,10 +35,10 @@ function h() {
35
35
  children: [/* @__PURE__ */ a("label", {
36
36
  className: "text-sm font-medium",
37
37
  children: "Job Title"
38
- }), /* @__PURE__ */ a(p, {
38
+ }), /* @__PURE__ */ a(m, {
39
39
  placeholder: "e.g. Senior Frontend Developer",
40
- value: h,
41
- onChange: (e) => g(e.target.value)
40
+ value: g,
41
+ onChange: (e) => _(e.target.value)
42
42
  })]
43
43
  }),
44
44
  /* @__PURE__ */ o("div", {
@@ -48,20 +48,20 @@ function h() {
48
48
  children: [/* @__PURE__ */ a("label", {
49
49
  className: "text-sm font-medium",
50
50
  children: "Department"
51
- }), /* @__PURE__ */ a(p, {
51
+ }), /* @__PURE__ */ a(m, {
52
52
  placeholder: "e.g. Engineering",
53
- value: _,
54
- onChange: (e) => v(e.target.value)
53
+ value: v,
54
+ onChange: (e) => y(e.target.value)
55
55
  })]
56
56
  }), /* @__PURE__ */ o("div", {
57
57
  className: "space-y-2",
58
58
  children: [/* @__PURE__ */ a("label", {
59
59
  className: "text-sm font-medium",
60
60
  children: "Location"
61
- }), /* @__PURE__ */ a(p, {
61
+ }), /* @__PURE__ */ a(m, {
62
62
  placeholder: "e.g. San Francisco, CA",
63
- value: y,
64
- onChange: (e) => b(e.target.value)
63
+ value: b,
64
+ onChange: (e) => x(e.target.value)
65
65
  })]
66
66
  })]
67
67
  }),
@@ -72,22 +72,22 @@ function h() {
72
72
  children: [/* @__PURE__ */ a("label", {
73
73
  className: "text-sm font-medium",
74
74
  children: "Salary Min ($)"
75
- }), /* @__PURE__ */ a(p, {
75
+ }), /* @__PURE__ */ a(m, {
76
76
  type: "number",
77
77
  placeholder: "e.g. 120000",
78
- value: C,
79
- onChange: (e) => w(e.target.value)
78
+ value: w,
79
+ onChange: (e) => T(e.target.value)
80
80
  })]
81
81
  }), /* @__PURE__ */ o("div", {
82
82
  className: "space-y-2",
83
83
  children: [/* @__PURE__ */ a("label", {
84
84
  className: "text-sm font-medium",
85
85
  children: "Salary Max ($)"
86
- }), /* @__PURE__ */ a(p, {
86
+ }), /* @__PURE__ */ a(m, {
87
87
  type: "number",
88
88
  placeholder: "e.g. 180000",
89
- value: T,
90
- onChange: (e) => E(e.target.value)
89
+ value: E,
90
+ onChange: (e) => D(e.target.value)
91
91
  })]
92
92
  })]
93
93
  }),
@@ -96,54 +96,54 @@ function h() {
96
96
  children: [/* @__PURE__ */ a("label", {
97
97
  className: "text-sm font-medium",
98
98
  children: "Description"
99
- }), /* @__PURE__ */ a(m, {
99
+ }), /* @__PURE__ */ a(h, {
100
100
  placeholder: "Describe the role, responsibilities, and ideal candidate...",
101
101
  rows: 4,
102
- value: x,
103
- onChange: (e) => S(e.target.value)
102
+ value: S,
103
+ onChange: (e) => C(e.target.value)
104
104
  })]
105
105
  })
106
106
  ]
107
107
  })] }),
108
108
  /* @__PURE__ */ o(c, { children: [/* @__PURE__ */ o(d, { children: [/* @__PURE__ */ a(f, { children: "Requirements" }), /* @__PURE__ */ a(u, { children: "List the key requirements for this role" })] }), /* @__PURE__ */ o(l, {
109
109
  className: "space-y-3",
110
- children: [D.map((e, t) => /* @__PURE__ */ o("div", {
110
+ children: [O.map((e, t) => /* @__PURE__ */ o("div", {
111
111
  className: "flex gap-2",
112
- children: [/* @__PURE__ */ a(p, {
112
+ children: [/* @__PURE__ */ a(m, {
113
113
  placeholder: `Requirement ${t + 1}`,
114
114
  value: e,
115
- onChange: (e) => N(t, e.target.value)
115
+ onChange: (e) => P(t, e.target.value)
116
116
  }), /* @__PURE__ */ a(s, {
117
117
  variant: "outline",
118
118
  size: "sm",
119
- onClick: () => F(t),
119
+ onClick: () => I(t),
120
120
  children: /* @__PURE__ */ a(i, { className: "h-4 w-4" })
121
121
  })]
122
122
  }, t)), /* @__PURE__ */ o(s, {
123
123
  variant: "outline",
124
124
  size: "sm",
125
- onClick: j,
125
+ onClick: M,
126
126
  children: [/* @__PURE__ */ a(n, { className: "h-4 w-4 mr-1" }), "Add Requirement"]
127
127
  })]
128
128
  })] }),
129
129
  /* @__PURE__ */ o(c, { children: [/* @__PURE__ */ o(d, { children: [/* @__PURE__ */ a(f, { children: "Benefits" }), /* @__PURE__ */ a(u, { children: "What does this position offer?" })] }), /* @__PURE__ */ o(l, {
130
130
  className: "space-y-3",
131
- children: [k.map((e, t) => /* @__PURE__ */ o("div", {
131
+ children: [A.map((e, t) => /* @__PURE__ */ o("div", {
132
132
  className: "flex gap-2",
133
- children: [/* @__PURE__ */ a(p, {
133
+ children: [/* @__PURE__ */ a(m, {
134
134
  placeholder: `Benefit ${t + 1}`,
135
135
  value: e,
136
- onChange: (e) => P(t, e.target.value)
136
+ onChange: (e) => F(t, e.target.value)
137
137
  }), /* @__PURE__ */ a(s, {
138
138
  variant: "outline",
139
139
  size: "sm",
140
- onClick: () => I(t),
140
+ onClick: () => L(t),
141
141
  children: /* @__PURE__ */ a(i, { className: "h-4 w-4" })
142
142
  })]
143
143
  }, t)), /* @__PURE__ */ o(s, {
144
144
  variant: "outline",
145
145
  size: "sm",
146
- onClick: M,
146
+ onClick: N,
147
147
  children: [/* @__PURE__ */ a(n, { className: "h-4 w-4 mr-1" }), "Add Benefit"]
148
148
  })]
149
149
  })] }),
@@ -158,6 +158,6 @@ function h() {
158
158
  });
159
159
  }
160
160
  //#endregion
161
- export { h as HiringCreateJobPagePage };
161
+ export { g as HiringCreateJobPagePage };
162
162
 
163
163
  //# sourceMappingURL=HiringCreateJobPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HiringCreateJobPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/HiringCreateJobPagePage.tsx"],"sourcesContent":["import { useState } from 'react';\nimport {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n Input,\n Separator,\n Textarea,\n} from '@burdenoff/fe-libs/ui';\nimport { Briefcase, Plus, Save, X } from 'lucide-react';\n\nexport function HiringCreateJobPagePage() {\n const [title, setTitle] = useState('');\n const [department, setDepartment] = useState('');\n const [location, setLocation] = useState('');\n const [description, setDescription] = useState('');\n const [salaryMin, setSalaryMin] = useState('');\n const [salaryMax, setSalaryMax] = useState('');\n const [requirements, setRequirements] = useState<string[]>(['']);\n const [benefits, setBenefits] = useState<string[]>(['']);\n\n const addRequirement = () => setRequirements([...requirements, '']);\n const addBenefit = () => setBenefits([...benefits, '']);\n const updateRequirement = (idx: number, value: string) => {\n const updated = [...requirements];\n updated[idx] = value;\n setRequirements(updated);\n };\n const updateBenefit = (idx: number, value: string) => {\n const updated = [...benefits];\n updated[idx] = value;\n setBenefits(updated);\n };\n const removeRequirement = (idx: number) =>\n setRequirements(requirements.filter((_, i) => i !== idx));\n const removeBenefit = (idx: number) => setBenefits(benefits.filter((_, i) => i !== idx));\n\n return (\n <div className=\"space-y-6 p-6 max-w-3xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">Create Job Posting</h1>\n <p className=\"text-sm text-text-secondary\">Fill in the details for a new position</p>\n </div>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <Briefcase className=\"h-5 w-5\" />\n Job Details\n </CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Job Title</label>\n <Input\n placeholder=\"e.g. Senior Frontend Developer\"\n value={title}\n onChange={(e) => setTitle(e.target.value)}\n />\n </div>\n\n <div className=\"grid grid-cols-2 gap-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Department</label>\n <Input\n placeholder=\"e.g. Engineering\"\n value={department}\n onChange={(e) => setDepartment(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Location</label>\n <Input\n placeholder=\"e.g. San Francisco, CA\"\n value={location}\n onChange={(e) => setLocation(e.target.value)}\n />\n </div>\n </div>\n\n <div className=\"grid grid-cols-2 gap-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Salary Min ($)</label>\n <Input\n type=\"number\"\n placeholder=\"e.g. 120000\"\n value={salaryMin}\n onChange={(e) => setSalaryMin(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Salary Max ($)</label>\n <Input\n type=\"number\"\n placeholder=\"e.g. 180000\"\n value={salaryMax}\n onChange={(e) => setSalaryMax(e.target.value)}\n />\n </div>\n </div>\n\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Description</label>\n <Textarea\n placeholder=\"Describe the role, responsibilities, and ideal candidate...\"\n rows={4}\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n />\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle>Requirements</CardTitle>\n <CardDescription>List the key requirements for this role</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {requirements.map((req, idx) => (\n <div key={idx} className=\"flex gap-2\">\n <Input\n placeholder={`Requirement ${idx + 1}`}\n value={req}\n onChange={(e) => updateRequirement(idx, e.target.value)}\n />\n <Button variant=\"outline\" size=\"sm\" onClick={() => removeRequirement(idx)}>\n <X className=\"h-4 w-4\" />\n </Button>\n </div>\n ))}\n <Button variant=\"outline\" size=\"sm\" onClick={addRequirement}>\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Requirement\n </Button>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle>Benefits</CardTitle>\n <CardDescription>What does this position offer?</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {benefits.map((ben, idx) => (\n <div key={idx} className=\"flex gap-2\">\n <Input\n placeholder={`Benefit ${idx + 1}`}\n value={ben}\n onChange={(e) => updateBenefit(idx, e.target.value)}\n />\n <Button variant=\"outline\" size=\"sm\" onClick={() => removeBenefit(idx)}>\n <X className=\"h-4 w-4\" />\n </Button>\n </div>\n ))}\n <Button variant=\"outline\" size=\"sm\" onClick={addBenefit}>\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Benefit\n </Button>\n </CardContent>\n </Card>\n\n <div className=\"flex justify-end gap-2\">\n <Button variant=\"outline\">Save as Draft</Button>\n <Button>\n <Save className=\"h-4 w-4 mr-1\" />\n Publish Job\n </Button>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"HiringCreateJobPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/HiringCreateJobPagePage.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 Separator,\n Textarea,\n} from '@burdenoff/fe-libs/ui';\nimport { Briefcase, Plus, Save, X } from 'lucide-react';\n\nexport function HiringCreateJobPagePage() {\n const [title, setTitle] = useState('');\n const [department, setDepartment] = useState('');\n const [location, setLocation] = useState('');\n const [description, setDescription] = useState('');\n const [salaryMin, setSalaryMin] = useState('');\n const [salaryMax, setSalaryMax] = useState('');\n const [requirements, setRequirements] = useState<string[]>(['']);\n const [benefits, setBenefits] = useState<string[]>(['']);\n\n const addRequirement = () => setRequirements([...requirements, '']);\n const addBenefit = () => setBenefits([...benefits, '']);\n const updateRequirement = (idx: number, value: string) => {\n const updated = [...requirements];\n updated[idx] = value;\n setRequirements(updated);\n };\n const updateBenefit = (idx: number, value: string) => {\n const updated = [...benefits];\n updated[idx] = value;\n setBenefits(updated);\n };\n const removeRequirement = (idx: number) =>\n setRequirements(requirements.filter((_, i) => i !== idx));\n const removeBenefit = (idx: number) => setBenefits(benefits.filter((_, i) => i !== idx));\n\n return (\n <div className=\"space-y-6 p-6 max-w-3xl\">\n <div className=\"flex items-center justify-between\">\n <div>\n <h1 className=\"text-2xl font-semibold\">\n <GradientText>Create Job Posting</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">Fill in the details for a new position</p>\n </div>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle className=\"flex items-center gap-2\">\n <Briefcase className=\"h-5 w-5\" />\n Job Details\n </CardTitle>\n </CardHeader>\n <CardContent className=\"space-y-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Job Title</label>\n <Input\n placeholder=\"e.g. Senior Frontend Developer\"\n value={title}\n onChange={(e) => setTitle(e.target.value)}\n />\n </div>\n\n <div className=\"grid grid-cols-2 gap-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Department</label>\n <Input\n placeholder=\"e.g. Engineering\"\n value={department}\n onChange={(e) => setDepartment(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Location</label>\n <Input\n placeholder=\"e.g. San Francisco, CA\"\n value={location}\n onChange={(e) => setLocation(e.target.value)}\n />\n </div>\n </div>\n\n <div className=\"grid grid-cols-2 gap-4\">\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Salary Min ($)</label>\n <Input\n type=\"number\"\n placeholder=\"e.g. 120000\"\n value={salaryMin}\n onChange={(e) => setSalaryMin(e.target.value)}\n />\n </div>\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Salary Max ($)</label>\n <Input\n type=\"number\"\n placeholder=\"e.g. 180000\"\n value={salaryMax}\n onChange={(e) => setSalaryMax(e.target.value)}\n />\n </div>\n </div>\n\n <div className=\"space-y-2\">\n <label className=\"text-sm font-medium\">Description</label>\n <Textarea\n placeholder=\"Describe the role, responsibilities, and ideal candidate...\"\n rows={4}\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n />\n </div>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle>Requirements</CardTitle>\n <CardDescription>List the key requirements for this role</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {requirements.map((req, idx) => (\n <div key={idx} className=\"flex gap-2\">\n <Input\n placeholder={`Requirement ${idx + 1}`}\n value={req}\n onChange={(e) => updateRequirement(idx, e.target.value)}\n />\n <Button variant=\"outline\" size=\"sm\" onClick={() => removeRequirement(idx)}>\n <X className=\"h-4 w-4\" />\n </Button>\n </div>\n ))}\n <Button variant=\"outline\" size=\"sm\" onClick={addRequirement}>\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Requirement\n </Button>\n </CardContent>\n </Card>\n\n <Card>\n <CardHeader>\n <CardTitle>Benefits</CardTitle>\n <CardDescription>What does this position offer?</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {benefits.map((ben, idx) => (\n <div key={idx} className=\"flex gap-2\">\n <Input\n placeholder={`Benefit ${idx + 1}`}\n value={ben}\n onChange={(e) => updateBenefit(idx, e.target.value)}\n />\n <Button variant=\"outline\" size=\"sm\" onClick={() => removeBenefit(idx)}>\n <X className=\"h-4 w-4\" />\n </Button>\n </div>\n ))}\n <Button variant=\"outline\" size=\"sm\" onClick={addBenefit}>\n <Plus className=\"h-4 w-4 mr-1\" />\n Add Benefit\n </Button>\n </CardContent>\n </Card>\n\n <div className=\"flex justify-end gap-2\">\n <Button variant=\"outline\">Save as Draft</Button>\n <Button>\n <Save className=\"h-4 w-4 mr-1\" />\n Publish Job\n </Button>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { Calendar as t, Clock as n, Plus as r, Star as i, Video as a } from "lucide-react";
3
3
  import { jsx as o, jsxs as s } from "react/jsx-runtime";
4
- import { Badge as c, Button as l, Card as u, CardContent as d, CardDescription as f, CardHeader as p, CardTitle as m } from "@burdenoff/fe-libs/ui";
4
+ import { Badge as c, Button as l, Card as u, CardContent as d, CardDescription as f, CardHeader as p, CardTitle as m, GlassCard as h, GradientText as g } from "@burdenoff/fe-libs/ui";
5
5
  //#region src/crewfoundry/pages/HiringInterviewsPagePage.tsx
6
- function h() {
7
- let { interviews: h } = e(), g = h.filter((e) => e.status === "scheduled"), _ = h.filter((e) => e.status === "completed");
6
+ function _() {
7
+ let { interviews: _ } = e(), v = _.filter((e) => e.status === "scheduled"), y = _.filter((e) => e.status === "completed");
8
8
  return /* @__PURE__ */ s("div", {
9
9
  className: "space-y-6 p-6",
10
10
  children: [
@@ -12,13 +12,13 @@ function h() {
12
12
  className: "flex items-center justify-between",
13
13
  children: [/* @__PURE__ */ s("div", { children: [/* @__PURE__ */ o("h1", {
14
14
  className: "text-2xl font-semibold",
15
- children: "Interviews"
15
+ children: /* @__PURE__ */ o(g, { children: "Interviews" })
16
16
  }), /* @__PURE__ */ s("p", {
17
17
  className: "text-sm text-text-secondary",
18
18
  children: [
19
- g.length,
19
+ v.length,
20
20
  " upcoming · ",
21
- _.length,
21
+ y.length,
22
22
  " completed"
23
23
  ]
24
24
  })] }), /* @__PURE__ */ s(l, {
@@ -29,41 +29,53 @@ function h() {
29
29
  /* @__PURE__ */ s("div", {
30
30
  className: "grid gap-4 md:grid-cols-3",
31
31
  children: [
32
- /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, {
33
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
34
- children: [/* @__PURE__ */ o(m, {
35
- className: "text-sm font-medium",
36
- children: "Scheduled"
37
- }), /* @__PURE__ */ o(t, { className: "h-4 w-4 text-blue-500" })]
38
- }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
39
- className: "text-2xl font-bold",
40
- children: g.length
41
- }) })] }),
42
- /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, {
43
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
44
- children: [/* @__PURE__ */ o(m, {
45
- className: "text-sm font-medium",
46
- children: "Completed"
47
- }), /* @__PURE__ */ o(n, { className: "h-4 w-4 text-green-500" })]
48
- }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
49
- className: "text-2xl font-bold",
50
- children: _.length
51
- }) })] }),
52
- /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, {
53
- className: "flex flex-row items-center justify-between space-y-0 pb-2",
54
- children: [/* @__PURE__ */ o(m, {
55
- className: "text-sm font-medium",
56
- children: "This Week"
57
- }), /* @__PURE__ */ o(a, { className: "h-4 w-4 text-text-secondary" })]
58
- }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
59
- className: "text-2xl font-bold",
60
- children: g.length
61
- }) })] })
32
+ /* @__PURE__ */ s(h, {
33
+ treatment: "metric",
34
+ className: "border-border-seam",
35
+ children: [/* @__PURE__ */ s(p, {
36
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
37
+ children: [/* @__PURE__ */ o(m, {
38
+ className: "text-sm font-medium",
39
+ children: "Scheduled"
40
+ }), /* @__PURE__ */ o(t, { className: "h-4 w-4 text-status-info-text" })]
41
+ }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
42
+ className: "text-2xl font-bold tabular-nums",
43
+ children: v.length
44
+ }) })]
45
+ }),
46
+ /* @__PURE__ */ s(h, {
47
+ treatment: "metric",
48
+ className: "border-border-seam",
49
+ children: [/* @__PURE__ */ s(p, {
50
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
51
+ children: [/* @__PURE__ */ o(m, {
52
+ className: "text-sm font-medium",
53
+ children: "Completed"
54
+ }), /* @__PURE__ */ o(n, { className: "h-4 w-4 text-status-success-text" })]
55
+ }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
56
+ className: "text-2xl font-bold tabular-nums",
57
+ children: y.length
58
+ }) })]
59
+ }),
60
+ /* @__PURE__ */ s(h, {
61
+ treatment: "metric",
62
+ className: "border-border-seam",
63
+ children: [/* @__PURE__ */ s(p, {
64
+ className: "flex flex-row items-center justify-between space-y-0 pb-2",
65
+ children: [/* @__PURE__ */ o(m, {
66
+ className: "text-sm font-medium",
67
+ children: "This Week"
68
+ }), /* @__PURE__ */ o(a, { className: "h-4 w-4 text-text-secondary" })]
69
+ }), /* @__PURE__ */ o(d, { children: /* @__PURE__ */ o("div", {
70
+ className: "text-2xl font-bold tabular-nums",
71
+ children: v.length
72
+ }) })]
73
+ })
62
74
  ]
63
75
  }),
64
76
  /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, { children: [/* @__PURE__ */ o(m, { children: "Upcoming Interviews" }), /* @__PURE__ */ o(f, { children: "Scheduled interviews for the coming days" })] }), /* @__PURE__ */ o(d, {
65
77
  className: "space-y-3",
66
- children: g.map((e) => /* @__PURE__ */ s("div", {
78
+ children: v.map((e) => /* @__PURE__ */ s("div", {
67
79
  className: "flex items-center justify-between rounded border p-4",
68
80
  children: [/* @__PURE__ */ s("div", { children: [
69
81
  /* @__PURE__ */ o("p", {
@@ -103,9 +115,9 @@ function h() {
103
115
  })]
104
116
  }, e.id))
105
117
  })] }),
106
- _.length > 0 && /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, { children: [/* @__PURE__ */ o(m, { children: "Completed Interviews" }), /* @__PURE__ */ o(f, { children: "Recent interview feedback" })] }), /* @__PURE__ */ o(d, {
118
+ y.length > 0 && /* @__PURE__ */ s(u, { children: [/* @__PURE__ */ s(p, { children: [/* @__PURE__ */ o(m, { children: "Completed Interviews" }), /* @__PURE__ */ o(f, { children: "Recent interview feedback" })] }), /* @__PURE__ */ o(d, {
107
119
  className: "space-y-3",
108
- children: _.map((e) => /* @__PURE__ */ s("div", {
120
+ children: y.map((e) => /* @__PURE__ */ s("div", {
109
121
  className: "flex items-center justify-between rounded border p-4",
110
122
  children: [/* @__PURE__ */ s("div", { children: [
111
123
  /* @__PURE__ */ o("p", {
@@ -128,7 +140,7 @@ function h() {
128
140
  className: "flex items-center gap-3",
129
141
  children: [e.rating && /* @__PURE__ */ s("div", {
130
142
  className: "flex items-center gap-1",
131
- children: [/* @__PURE__ */ o(i, { className: "h-4 w-4 text-yellow-500" }), /* @__PURE__ */ s("span", {
143
+ children: [/* @__PURE__ */ o(i, { className: "h-4 w-4 text-status-warning-text" }), /* @__PURE__ */ s("span", {
132
144
  className: "text-sm font-medium",
133
145
  children: [e.rating, "/5"]
134
146
  })]
@@ -143,6 +155,6 @@ function h() {
143
155
  });
144
156
  }
145
157
  //#endregion
146
- export { h as HiringInterviewsPagePage };
158
+ export { _ as HiringInterviewsPagePage };
147
159
 
148
160
  //# sourceMappingURL=HiringInterviewsPagePage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HiringInterviewsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/HiringInterviewsPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from '@burdenoff/fe-libs/ui';\nimport { Calendar, Clock, Plus, Star, Video } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function HiringInterviewsPagePage() {\n const { interviews } = useCrewFoundryStore();\n\n const scheduled = interviews.filter((i) => i.status === 'scheduled');\n const completed = interviews.filter((i) => i.status === 'completed');\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\">Interviews</h1>\n <p className=\"text-sm text-text-secondary\">\n {scheduled.length} upcoming · {completed.length} completed\n </p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Schedule Interview\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\n <Card>\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <CardTitle className=\"text-sm font-medium\">Scheduled</CardTitle>\n <Calendar className=\"h-4 w-4 text-blue-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{scheduled.length}</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\">Completed</CardTitle>\n <Clock className=\"h-4 w-4 text-green-500\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{completed.length}</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\">This Week</CardTitle>\n <Video className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold\">{scheduled.length}</div>\n </CardContent>\n </Card>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Upcoming Interviews</CardTitle>\n <CardDescription>Scheduled interviews for the coming days</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {scheduled.map((interview) => (\n <div\n key={interview.id}\n className=\"flex items-center justify-between rounded border p-4\"\n >\n <div>\n <p className=\"text-sm font-medium\">{interview.candidateName}</p>\n <p className=\"text-xs text-text-secondary\">{interview.position}</p>\n <p className=\"text-xs text-text-secondary mt-1\">\n Interviewer: {interview.interviewerName}\n </p>\n </div>\n <div className=\"flex items-center gap-3\">\n <div className=\"text-right\">\n <p className=\"text-sm font-medium\">{interview.date}</p>\n <p className=\"text-xs text-text-secondary\">{interview.time}</p>\n </div>\n <Badge variant=\"outline\">{interview.type}</Badge>\n <Badge variant=\"secondary\">{interview.status}</Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n {completed.length > 0 && (\n <Card>\n <CardHeader>\n <CardTitle>Completed Interviews</CardTitle>\n <CardDescription>Recent interview feedback</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {completed.map((interview) => (\n <div\n key={interview.id}\n className=\"flex items-center justify-between rounded border p-4\"\n >\n <div>\n <p className=\"text-sm font-medium\">{interview.candidateName}</p>\n <p className=\"text-xs text-text-secondary\">{interview.position}</p>\n {interview.feedback && (\n <p className=\"text-xs text-text-secondary mt-1 italic\">\n &quot;{interview.feedback}&quot;\n </p>\n )}\n </div>\n <div className=\"flex items-center gap-3\">\n {interview.rating && (\n <div className=\"flex items-center gap-1\">\n <Star className=\"h-4 w-4 text-yellow-500\" />\n <span className=\"text-sm font-medium\">{interview.rating}/5</span>\n </div>\n )}\n <Badge variant=\"default\">completed</Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"HiringInterviewsPagePage.js","names":[],"sources":["../../../src/crewfoundry/pages/HiringInterviewsPagePage.tsx"],"sourcesContent":["import {\n Badge,\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n GlassCard,\n GradientText,\n} from '@burdenoff/fe-libs/ui';\nimport { Calendar, Clock, Plus, Star, Video } from 'lucide-react';\nimport { useCrewFoundryStore } from '../store/crewfoundryStore';\n\nexport function HiringInterviewsPagePage() {\n const { interviews } = useCrewFoundryStore();\n\n const scheduled = interviews.filter((i) => i.status === 'scheduled');\n const completed = interviews.filter((i) => i.status === 'completed');\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>Interviews</GradientText>\n </h1>\n <p className=\"text-sm text-text-secondary\">\n {scheduled.length} upcoming · {completed.length} completed\n </p>\n </div>\n <Button size=\"sm\">\n <Plus className=\"h-4 w-4 mr-1\" />\n Schedule Interview\n </Button>\n </div>\n\n <div className=\"grid gap-4 md:grid-cols-3\">\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\">Scheduled</CardTitle>\n <Calendar className=\"h-4 w-4 text-status-info-text\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">{scheduled.length}</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\">Completed</CardTitle>\n <Clock className=\"h-4 w-4 text-status-success-text\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">{completed.length}</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\">This Week</CardTitle>\n <Video className=\"h-4 w-4 text-text-secondary\" />\n </CardHeader>\n <CardContent>\n <div className=\"text-2xl font-bold tabular-nums\">{scheduled.length}</div>\n </CardContent>\n </GlassCard>\n </div>\n\n <Card>\n <CardHeader>\n <CardTitle>Upcoming Interviews</CardTitle>\n <CardDescription>Scheduled interviews for the coming days</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {scheduled.map((interview) => (\n <div\n key={interview.id}\n className=\"flex items-center justify-between rounded border p-4\"\n >\n <div>\n <p className=\"text-sm font-medium\">{interview.candidateName}</p>\n <p className=\"text-xs text-text-secondary\">{interview.position}</p>\n <p className=\"text-xs text-text-secondary mt-1\">\n Interviewer: {interview.interviewerName}\n </p>\n </div>\n <div className=\"flex items-center gap-3\">\n <div className=\"text-right\">\n <p className=\"text-sm font-medium\">{interview.date}</p>\n <p className=\"text-xs text-text-secondary\">{interview.time}</p>\n </div>\n <Badge variant=\"outline\">{interview.type}</Badge>\n <Badge variant=\"secondary\">{interview.status}</Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n\n {completed.length > 0 && (\n <Card>\n <CardHeader>\n <CardTitle>Completed Interviews</CardTitle>\n <CardDescription>Recent interview feedback</CardDescription>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {completed.map((interview) => (\n <div\n key={interview.id}\n className=\"flex items-center justify-between rounded border p-4\"\n >\n <div>\n <p className=\"text-sm font-medium\">{interview.candidateName}</p>\n <p className=\"text-xs text-text-secondary\">{interview.position}</p>\n {interview.feedback && (\n <p className=\"text-xs text-text-secondary mt-1 italic\">\n &quot;{interview.feedback}&quot;\n </p>\n )}\n </div>\n <div className=\"flex items-center gap-3\">\n {interview.rating && (\n <div className=\"flex items-center gap-1\">\n <Star className=\"h-4 w-4 text-status-warning-text\" />\n <span className=\"text-sm font-medium\">{interview.rating}/5</span>\n </div>\n )}\n <Badge variant=\"default\">completed</Badge>\n </div>\n </div>\n ))}\n </CardContent>\n </Card>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { Briefcase as t, Calendar as n, CheckCircle as r, DollarSign as i, MapPin as a, Share2 as o, Users as s } from "lucide-react";
3
3
  import { jsx as c, jsxs as l } from "react/jsx-runtime";
4
- import { Badge as u, Button as d, Card as f, CardContent as p, CardDescription as m, CardHeader as h, CardTitle as g } from "@burdenoff/fe-libs/ui";
4
+ import { Badge as u, Button as d, Card as f, CardContent as p, CardDescription as m, CardHeader as h, CardTitle as g, GlassCard as _, GradientText as v } from "@burdenoff/fe-libs/ui";
5
5
  //#region src/crewfoundry/pages/HiringJobDetailsPagePage.tsx
6
- function _() {
7
- let { jobPostings: _, candidates: v } = e(), y = _[0];
8
- if (!y) return /* @__PURE__ */ c("div", {
6
+ function y() {
7
+ let { jobPostings: y, candidates: b } = e(), x = y[0];
8
+ if (!x) return /* @__PURE__ */ c("div", {
9
9
  className: "p-6 text-center text-text-secondary",
10
10
  children: "No job posting found."
11
11
  });
12
- let b = v.filter((e) => e.position === y.title);
12
+ let S = b.filter((e) => e.position === x.title);
13
13
  return /* @__PURE__ */ l("div", {
14
14
  className: "space-y-6 p-6 max-w-4xl",
15
15
  children: [
@@ -19,28 +19,28 @@ function _() {
19
19
  className: "flex items-center gap-2 mb-1",
20
20
  children: [/* @__PURE__ */ c("h1", {
21
21
  className: "text-2xl font-semibold",
22
- children: y.title
22
+ children: /* @__PURE__ */ c(v, { children: x.title })
23
23
  }), /* @__PURE__ */ c(u, {
24
- variant: y.status === "active" ? "default" : "secondary",
25
- children: y.status
24
+ variant: x.status === "active" ? "default" : "secondary",
25
+ children: x.status
26
26
  })]
27
27
  }), /* @__PURE__ */ l("div", {
28
28
  className: "flex items-center gap-4 text-sm text-text-secondary",
29
29
  children: [
30
30
  /* @__PURE__ */ l("span", {
31
31
  className: "flex items-center gap-1",
32
- children: [/* @__PURE__ */ c(t, { className: "h-3 w-3" }), y.department]
32
+ children: [/* @__PURE__ */ c(t, { className: "h-3 w-3" }), x.department]
33
33
  }),
34
34
  /* @__PURE__ */ l("span", {
35
35
  className: "flex items-center gap-1",
36
- children: [/* @__PURE__ */ c(a, { className: "h-3 w-3" }), y.location]
36
+ children: [/* @__PURE__ */ c(a, { className: "h-3 w-3" }), x.location]
37
37
  }),
38
38
  /* @__PURE__ */ l("span", {
39
39
  className: "flex items-center gap-1",
40
40
  children: [
41
41
  /* @__PURE__ */ c(n, { className: "h-3 w-3" }),
42
42
  "Posted ",
43
- y.postedDate
43
+ x.postedDate
44
44
  ]
45
45
  })
46
46
  ]
@@ -59,20 +59,24 @@ function _() {
59
59
  /* @__PURE__ */ l("div", {
60
60
  className: "grid gap-4 md:grid-cols-4",
61
61
  children: [
62
- /* @__PURE__ */ c(f, { children: /* @__PURE__ */ l(p, {
63
- className: "p-4 text-center",
64
- children: [
65
- /* @__PURE__ */ c(s, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
66
- /* @__PURE__ */ c("p", {
67
- className: "text-2xl font-bold",
68
- children: y.applicants
69
- }),
70
- /* @__PURE__ */ c("p", {
71
- className: "text-xs text-text-secondary",
72
- children: "Applicants"
73
- })
74
- ]
75
- }) }),
62
+ /* @__PURE__ */ c(_, {
63
+ treatment: "metric",
64
+ className: "border-border-seam",
65
+ children: /* @__PURE__ */ l(p, {
66
+ className: "p-4 text-center",
67
+ children: [
68
+ /* @__PURE__ */ c(s, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
69
+ /* @__PURE__ */ c("p", {
70
+ className: "text-2xl font-bold tabular-nums",
71
+ children: x.applicants
72
+ }),
73
+ /* @__PURE__ */ c("p", {
74
+ className: "text-xs text-text-secondary",
75
+ children: "Applicants"
76
+ })
77
+ ]
78
+ })
79
+ }),
76
80
  /* @__PURE__ */ c(f, { children: /* @__PURE__ */ l(p, {
77
81
  className: "p-4 text-center",
78
82
  children: [
@@ -81,9 +85,9 @@ function _() {
81
85
  className: "text-lg font-bold",
82
86
  children: [
83
87
  "$",
84
- (y.salaryMin / 1e3).toFixed(0),
88
+ (x.salaryMin / 1e3).toFixed(0),
85
89
  "K-$",
86
- (y.salaryMax / 1e3).toFixed(0),
90
+ (x.salaryMax / 1e3).toFixed(0),
87
91
  "K"
88
92
  ]
89
93
  }),
@@ -99,7 +103,7 @@ function _() {
99
103
  /* @__PURE__ */ c(n, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
100
104
  /* @__PURE__ */ c("p", {
101
105
  className: "text-lg font-bold",
102
- children: y.deadline
106
+ children: x.deadline
103
107
  }),
104
108
  /* @__PURE__ */ c("p", {
105
109
  className: "text-xs text-text-secondary",
@@ -113,7 +117,7 @@ function _() {
113
117
  /* @__PURE__ */ c(r, { className: "h-5 w-5 mx-auto text-text-secondary mb-1" }),
114
118
  /* @__PURE__ */ c("p", {
115
119
  className: "text-lg font-bold",
116
- children: y.experienceLevel
120
+ children: x.experienceLevel
117
121
  }),
118
122
  /* @__PURE__ */ c("p", {
119
123
  className: "text-xs text-text-secondary",
@@ -125,25 +129,25 @@ function _() {
125
129
  }),
126
130
  /* @__PURE__ */ l(f, { children: [/* @__PURE__ */ c(h, { children: /* @__PURE__ */ c(g, { children: "Description" }) }), /* @__PURE__ */ c(p, { children: /* @__PURE__ */ c("p", {
127
131
  className: "text-sm text-text-secondary",
128
- children: y.description
132
+ children: x.description
129
133
  }) })] }),
130
134
  /* @__PURE__ */ l("div", {
131
135
  className: "grid gap-4 md:grid-cols-2",
132
136
  children: [/* @__PURE__ */ l(f, { children: [/* @__PURE__ */ c(h, { children: /* @__PURE__ */ c(g, { children: "Requirements" }) }), /* @__PURE__ */ c(p, { children: /* @__PURE__ */ c("ul", {
133
137
  className: "space-y-2",
134
- children: y.requirements.map((e, t) => /* @__PURE__ */ l("li", {
138
+ children: x.requirements.map((e, t) => /* @__PURE__ */ l("li", {
135
139
  className: "flex items-start gap-2 text-sm",
136
- children: [/* @__PURE__ */ c(r, { className: "h-4 w-4 text-green-500 mt-0.5 flex-shrink-0" }), e]
140
+ children: [/* @__PURE__ */ c(r, { className: "h-4 w-4 text-status-success-text mt-0.5 flex-shrink-0" }), e]
137
141
  }, t))
138
142
  }) })] }), /* @__PURE__ */ l(f, { children: [/* @__PURE__ */ c(h, { children: /* @__PURE__ */ c(g, { children: "Benefits" }) }), /* @__PURE__ */ c(p, { children: /* @__PURE__ */ c("ul", {
139
143
  className: "space-y-2",
140
- children: y.benefits.map((e, t) => /* @__PURE__ */ l("li", {
144
+ children: x.benefits.map((e, t) => /* @__PURE__ */ l("li", {
141
145
  className: "flex items-start gap-2 text-sm",
142
- children: [/* @__PURE__ */ c(r, { className: "h-4 w-4 text-blue-500 mt-0.5 flex-shrink-0" }), e]
146
+ children: [/* @__PURE__ */ c(r, { className: "h-4 w-4 text-status-info-text mt-0.5 flex-shrink-0" }), e]
143
147
  }, t))
144
148
  }) })] })]
145
149
  }),
146
- b.length > 0 && /* @__PURE__ */ l(f, { children: [/* @__PURE__ */ l(h, { children: [/* @__PURE__ */ c(g, { children: "Applicants for this Role" }), /* @__PURE__ */ l(m, { children: [b.length, " candidates"] })] }), /* @__PURE__ */ l(p, { children: [/* @__PURE__ */ l("div", {
150
+ S.length > 0 && /* @__PURE__ */ l(f, { children: [/* @__PURE__ */ l(h, { children: [/* @__PURE__ */ c(g, { children: "Applicants for this Role" }), /* @__PURE__ */ l(m, { children: [S.length, " candidates"] })] }), /* @__PURE__ */ l(p, { children: [/* @__PURE__ */ l("div", {
147
151
  className: "grid grid-cols-5 gap-2 text-xs font-medium text-text-secondary border-b pb-2 mb-2",
148
152
  children: [
149
153
  /* @__PURE__ */ c("span", { children: "Name" }),
@@ -161,7 +165,7 @@ function _() {
161
165
  children: "Status"
162
166
  })
163
167
  ]
164
- }), b.map((e) => /* @__PURE__ */ l("div", {
168
+ }), S.map((e) => /* @__PURE__ */ l("div", {
165
169
  className: "grid grid-cols-5 gap-2 py-2 border-b last:border-0 text-sm",
166
170
  children: [
167
171
  /* @__PURE__ */ l("span", {
@@ -198,6 +202,6 @@ function _() {
198
202
  });
199
203
  }
200
204
  //#endregion
201
- export { _ as HiringJobDetailsPagePage };
205
+ export { y as HiringJobDetailsPagePage };
202
206
 
203
207
  //# sourceMappingURL=HiringJobDetailsPagePage.js.map