@burdenoff/microfe-crewfoundry 2026.1030.3 → 2026.1102.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 (55) hide show
  1. package/dist/crewfoundry/CrewFoundryRoutes.d.ts.map +1 -1
  2. package/dist/crewfoundry/CrewFoundryRoutes.js +18 -14
  3. package/dist/crewfoundry/CrewFoundryRoutes.js.map +1 -1
  4. package/dist/crewfoundry/components/EmployeeSkillsPanel.d.ts +9 -0
  5. package/dist/crewfoundry/components/EmployeeSkillsPanel.d.ts.map +1 -1
  6. package/dist/crewfoundry/components/EmployeeSkillsPanel.js +111 -77
  7. package/dist/crewfoundry/components/EmployeeSkillsPanel.js.map +1 -1
  8. package/dist/crewfoundry/components/skills/FindPeopleBySkillCard.d.ts +13 -0
  9. package/dist/crewfoundry/components/skills/FindPeopleBySkillCard.d.ts.map +1 -0
  10. package/dist/crewfoundry/components/skills/FindPeopleBySkillCard.js +128 -0
  11. package/dist/crewfoundry/components/skills/FindPeopleBySkillCard.js.map +1 -0
  12. package/dist/crewfoundry/components/skills/MergeSkillDialog.d.ts +15 -0
  13. package/dist/crewfoundry/components/skills/MergeSkillDialog.d.ts.map +1 -0
  14. package/dist/crewfoundry/components/skills/MergeSkillDialog.js +58 -0
  15. package/dist/crewfoundry/components/skills/MergeSkillDialog.js.map +1 -0
  16. package/dist/crewfoundry/components/skills/RoleSkillMatchPanel.d.ts +15 -0
  17. package/dist/crewfoundry/components/skills/RoleSkillMatchPanel.d.ts.map +1 -0
  18. package/dist/crewfoundry/components/skills/RoleSkillMatchPanel.js +163 -0
  19. package/dist/crewfoundry/components/skills/RoleSkillMatchPanel.js.map +1 -0
  20. package/dist/crewfoundry/components/skills/SkillPicker.d.ts +20 -0
  21. package/dist/crewfoundry/components/skills/SkillPicker.d.ts.map +1 -0
  22. package/dist/crewfoundry/components/skills/SkillPicker.js +73 -0
  23. package/dist/crewfoundry/components/skills/SkillPicker.js.map +1 -0
  24. package/dist/crewfoundry/components/skills/SkillRelationsDialog.d.ts +13 -0
  25. package/dist/crewfoundry/components/skills/SkillRelationsDialog.d.ts.map +1 -0
  26. package/dist/crewfoundry/components/skills/SkillRelationsDialog.js +156 -0
  27. package/dist/crewfoundry/components/skills/SkillRelationsDialog.js.map +1 -0
  28. package/dist/crewfoundry/lib/analytics.d.ts +1 -29
  29. package/dist/crewfoundry/lib/analytics.d.ts.map +1 -1
  30. package/dist/crewfoundry/lib/analytics.js +3 -48
  31. package/dist/crewfoundry/lib/analytics.js.map +1 -1
  32. package/dist/crewfoundry/lib/skillMatching.d.ts +70 -0
  33. package/dist/crewfoundry/lib/skillMatching.d.ts.map +1 -0
  34. package/dist/crewfoundry/lib/skillMatching.js +73 -0
  35. package/dist/crewfoundry/lib/skillMatching.js.map +1 -0
  36. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.d.ts +8 -0
  37. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.d.ts.map +1 -1
  38. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +468 -212
  39. package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
  40. package/dist/crewfoundry/pages/HiringCandidatesPagePage.d.ts.map +1 -1
  41. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +210 -177
  42. package/dist/crewfoundry/pages/HiringCandidatesPagePage.js.map +1 -1
  43. package/dist/crewfoundry/pages/HrEmployeeProfilePagePage.js +6 -6
  44. package/dist/crewfoundry/pages/HrSkillsTaxonomyPagePage.d.ts +9 -0
  45. package/dist/crewfoundry/pages/HrSkillsTaxonomyPagePage.d.ts.map +1 -0
  46. package/dist/crewfoundry/pages/HrSkillsTaxonomyPagePage.js +456 -0
  47. package/dist/crewfoundry/pages/HrSkillsTaxonomyPagePage.js.map +1 -0
  48. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.d.ts.map +1 -1
  49. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js +50 -102
  50. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js.map +1 -1
  51. package/dist/crewfoundry/store/crewfoundryStore.d.ts +145 -0
  52. package/dist/crewfoundry/store/crewfoundryStore.d.ts.map +1 -1
  53. package/dist/crewfoundry/store/crewfoundryStore.js +188 -57
  54. package/dist/crewfoundry/store/crewfoundryStore.js.map +1 -1
  55. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CrewFoundryRoutes.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"names":[],"mappings":"AA+PA,wBAAgB,iBAAiB,gCAkGhC"}
1
+ {"version":3,"file":"CrewFoundryRoutes.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"names":[],"mappings":"AAoQA,wBAAgB,iBAAiB,gCAmGhC"}
@@ -5,7 +5,7 @@ import { Loader2 as i } from "lucide-react";
5
5
  import { Navigate as a, Route as o, Routes as s } from "react-router";
6
6
  import { jsx as c, jsxs as l } from "react/jsx-runtime";
7
7
  //#region src/crewfoundry/CrewFoundryRoutes.tsx
8
- var u = r(() => import("./pages/AnalyticsAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsAnalyticsPagePage }))), d = r(() => import("./pages/AnalyticsEmployeeAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsEmployeeAnalyticsPagePage }))), f = r(() => import("./pages/AnalyticsFinancialAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsFinancialAnalyticsPagePage }))), p = r(() => import("./pages/AnalyticsHiringAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsHiringAnalyticsPagePage }))), m = r(() => import("./pages/CommunicationsAnnouncementsPagePage.js").then((e) => ({ default: e.CommunicationsAnnouncementsPagePage }))), h = r(() => import("./pages/CommunicationsDirectoryPagePage.js").then((e) => ({ default: e.CommunicationsDirectoryPagePage }))), g = r(() => import("./pages/CommunicationsFilesPagePage.js").then((e) => ({ default: e.CommunicationsFilesPagePage }))), _ = r(() => import("./pages/CommunicationsTeamsPagePage.js").then((e) => ({ default: e.CommunicationsTeamsPagePage }))), v = r(() => import("./pages/CompanyClientManagementPagePage.js").then((e) => ({ default: e.CompanyClientManagementPagePage }))), y = r(() => import("./pages/CompanyCompanyDashboardPagePage.js").then((e) => ({ default: e.CompanyCompanyDashboardPagePage }))), b = r(() => import("./pages/CompanyVendorManagementPagePage.js").then((e) => ({ default: e.CompanyVendorManagementPagePage }))), x = r(() => import("./pages/DashboardAnalyticsPagePage.js").then((e) => ({ default: e.DashboardAnalyticsPagePage }))), S = r(() => import("./pages/DashboardDashboardPagePage.js").then((e) => ({ default: e.DashboardDashboardPagePage }))), C = r(() => import("./pages/DashboardEnhancedDashboardPagePage.js").then((e) => ({ default: e.DashboardEnhancedDashboardPagePage }))), w = r(() => import("./pages/DashboardExecutiveDashboardPage.js").then((e) => ({ default: e.DashboardExecutiveDashboardPage }))), T = r(() => import("./pages/HiringApplicationsPagePage.js").then((e) => ({ default: e.HiringApplicationsPagePage }))), E = r(() => import("./pages/HiringCandidatesPagePage.js").then((e) => ({ default: e.HiringCandidatesPagePage }))), D = r(() => import("./pages/HiringCreateJobPagePage.js").then((e) => ({ default: e.HiringCreateJobPagePage }))), O = r(() => import("./pages/HiringInterviewsPagePage.js").then((e) => ({ default: e.HiringInterviewsPagePage }))), k = r(() => import("./pages/HiringOnboardingPagePage.js").then((e) => ({ default: e.HiringOnboardingPagePage }))), A = r(() => import("./pages/HiringJobDetailsPagePage.js").then((e) => ({ default: e.HiringJobDetailsPagePage }))), ee = r(() => import("./pages/HiringJobsPagePage.js").then((e) => ({ default: e.HiringJobsPagePage }))), j = r(() => import("./pages/HrDepartmentsPagePage.js").then((e) => ({ default: e.HrDepartmentsPagePage }))), M = r(() => import("./pages/HrEmployeesPagePage.js").then((e) => ({ default: e.HrEmployeesPagePage }))), N = r(() => import("./pages/HrEmployeeProfilePagePage.js").then((e) => ({ default: e.HrEmployeeProfilePagePage }))), P = r(() => import("./pages/HrLeaveManagementPagePage.js").then((e) => ({ default: e.HrLeaveManagementPagePage }))), F = r(() => import("./pages/HrPayrollPagePage.js").then((e) => ({ default: e.HrPayrollPagePage }))), I = r(() => import("./pages/HrTimeTrackingPagePage.js").then((e) => ({ default: e.HrTimeTrackingPagePage }))), L = r(() => import("./pages/LearningCourseDetailsPagePage.js").then((e) => ({ default: e.LearningCourseDetailsPagePage }))), R = r(() => import("./pages/LearningCoursesPagePage.js").then((e) => ({ default: e.LearningCoursesPagePage }))), z = r(() => import("./pages/LearningLearningAnalyticsPagePage.js").then((e) => ({ default: e.LearningLearningAnalyticsPagePage }))), B = r(() => import("./pages/MarketplaceBookingManagementPagePage.js").then((e) => ({ default: e.MarketplaceBookingManagementPagePage }))), V = r(() => import("./pages/LearningEnrollmentsPagePage.js").then((e) => ({ default: e.LearningEnrollmentsPagePage }))), H = r(() => import("./pages/MarketplaceEscrowPagePage.js").then((e) => ({ default: e.MarketplaceEscrowPagePage }))), U = r(() => import("./pages/MarketplaceMarketplacePagePage.js").then((e) => ({ default: e.MarketplaceMarketplacePagePage }))), W = r(() => import("./pages/MarketplaceMyServicesPagePage.js").then((e) => ({ default: e.MarketplaceMyServicesPagePage }))), G = r(() => import("./pages/MarketplaceServiceDetailsPagePage.js").then((e) => ({ default: e.MarketplaceServiceDetailsPagePage }))), K = r(() => import("./pages/ProjectsCreateProjectPagePage.js").then((e) => ({ default: e.ProjectsCreateProjectPagePage }))), q = r(() => import("./pages/ProjectsProjectDetailsPagePage.js").then((e) => ({ default: e.ProjectsProjectDetailsPagePage }))), J = r(() => import("./pages/ProjectsProjectsPagePage.js").then((e) => ({ default: e.ProjectsProjectsPagePage }))), Y = r(() => import("./pages/ProjectsResourcingPagePage.js").then((e) => ({ default: e.ProjectsResourcingPagePage }))), X = r(() => import("./pages/TeamsTeamAnalyticsPagePage.js").then((e) => ({ default: e.TeamsTeamAnalyticsPagePage }))), Z = r(() => import("./pages/TeamsTeamDetailPagePage.js").then((e) => ({ default: e.TeamsTeamDetailPagePage }))), Q = r(() => import("./pages/TeamsTeamDirectoryPagePage.js").then((e) => ({ default: e.TeamsTeamDirectoryPagePage }))), $ = r(() => import("./pages/TeamsTeamsPagePage.js").then((e) => ({ default: e.TeamsTeamsPagePage }))), te = r(() => import("./pages/HelpApiDocumentationPagePage.js").then((e) => ({ default: e.HelpApiDocumentationPagePage }))), ne = r(() => import("./pages/CompanyCompanyProfilePagePage.js").then((e) => ({ default: e.CompanyCompanyProfilePagePage }))), re = r(() => import("./pages/TeamsTeamSettingsPagePage.js").then((e) => ({ default: e.TeamsTeamSettingsPagePage }))), ie = [
8
+ var u = r(() => import("./pages/AnalyticsAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsAnalyticsPagePage }))), d = r(() => import("./pages/AnalyticsEmployeeAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsEmployeeAnalyticsPagePage }))), f = r(() => import("./pages/AnalyticsFinancialAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsFinancialAnalyticsPagePage }))), p = r(() => import("./pages/AnalyticsHiringAnalyticsPagePage.js").then((e) => ({ default: e.AnalyticsHiringAnalyticsPagePage }))), m = r(() => import("./pages/CommunicationsAnnouncementsPagePage.js").then((e) => ({ default: e.CommunicationsAnnouncementsPagePage }))), h = r(() => import("./pages/CommunicationsDirectoryPagePage.js").then((e) => ({ default: e.CommunicationsDirectoryPagePage }))), g = r(() => import("./pages/CommunicationsFilesPagePage.js").then((e) => ({ default: e.CommunicationsFilesPagePage }))), _ = r(() => import("./pages/CommunicationsTeamsPagePage.js").then((e) => ({ default: e.CommunicationsTeamsPagePage }))), v = r(() => import("./pages/CompanyClientManagementPagePage.js").then((e) => ({ default: e.CompanyClientManagementPagePage }))), y = r(() => import("./pages/CompanyCompanyDashboardPagePage.js").then((e) => ({ default: e.CompanyCompanyDashboardPagePage }))), b = r(() => import("./pages/CompanyVendorManagementPagePage.js").then((e) => ({ default: e.CompanyVendorManagementPagePage }))), x = r(() => import("./pages/DashboardAnalyticsPagePage.js").then((e) => ({ default: e.DashboardAnalyticsPagePage }))), S = r(() => import("./pages/DashboardDashboardPagePage.js").then((e) => ({ default: e.DashboardDashboardPagePage }))), C = r(() => import("./pages/DashboardEnhancedDashboardPagePage.js").then((e) => ({ default: e.DashboardEnhancedDashboardPagePage }))), w = r(() => import("./pages/DashboardExecutiveDashboardPage.js").then((e) => ({ default: e.DashboardExecutiveDashboardPage }))), T = r(() => import("./pages/HiringApplicationsPagePage.js").then((e) => ({ default: e.HiringApplicationsPagePage }))), E = r(() => import("./pages/HiringCandidatesPagePage.js").then((e) => ({ default: e.HiringCandidatesPagePage }))), D = r(() => import("./pages/HiringCreateJobPagePage.js").then((e) => ({ default: e.HiringCreateJobPagePage }))), O = r(() => import("./pages/HiringInterviewsPagePage.js").then((e) => ({ default: e.HiringInterviewsPagePage }))), k = r(() => import("./pages/HiringOnboardingPagePage.js").then((e) => ({ default: e.HiringOnboardingPagePage }))), A = r(() => import("./pages/HiringJobDetailsPagePage.js").then((e) => ({ default: e.HiringJobDetailsPagePage }))), ee = r(() => import("./pages/HiringJobsPagePage.js").then((e) => ({ default: e.HiringJobsPagePage }))), j = r(() => import("./pages/HrDepartmentsPagePage.js").then((e) => ({ default: e.HrDepartmentsPagePage }))), M = r(() => import("./pages/HrEmployeesPagePage.js").then((e) => ({ default: e.HrEmployeesPagePage }))), N = r(() => import("./pages/HrEmployeeProfilePagePage.js").then((e) => ({ default: e.HrEmployeeProfilePagePage }))), P = r(() => import("./pages/HrLeaveManagementPagePage.js").then((e) => ({ default: e.HrLeaveManagementPagePage }))), F = r(() => import("./pages/HrPayrollPagePage.js").then((e) => ({ default: e.HrPayrollPagePage }))), I = r(() => import("./pages/HrTimeTrackingPagePage.js").then((e) => ({ default: e.HrTimeTrackingPagePage }))), L = r(() => import("./pages/LearningCourseDetailsPagePage.js").then((e) => ({ default: e.LearningCourseDetailsPagePage }))), R = r(() => import("./pages/LearningCoursesPagePage.js").then((e) => ({ default: e.LearningCoursesPagePage }))), z = r(() => import("./pages/LearningLearningAnalyticsPagePage.js").then((e) => ({ default: e.LearningLearningAnalyticsPagePage }))), B = r(() => import("./pages/MarketplaceBookingManagementPagePage.js").then((e) => ({ default: e.MarketplaceBookingManagementPagePage }))), V = r(() => import("./pages/LearningEnrollmentsPagePage.js").then((e) => ({ default: e.LearningEnrollmentsPagePage }))), H = r(() => import("./pages/MarketplaceEscrowPagePage.js").then((e) => ({ default: e.MarketplaceEscrowPagePage }))), U = r(() => import("./pages/MarketplaceMarketplacePagePage.js").then((e) => ({ default: e.MarketplaceMarketplacePagePage }))), W = r(() => import("./pages/MarketplaceMyServicesPagePage.js").then((e) => ({ default: e.MarketplaceMyServicesPagePage }))), G = r(() => import("./pages/MarketplaceServiceDetailsPagePage.js").then((e) => ({ default: e.MarketplaceServiceDetailsPagePage }))), K = r(() => import("./pages/ProjectsCreateProjectPagePage.js").then((e) => ({ default: e.ProjectsCreateProjectPagePage }))), q = r(() => import("./pages/ProjectsProjectDetailsPagePage.js").then((e) => ({ default: e.ProjectsProjectDetailsPagePage }))), J = r(() => import("./pages/ProjectsProjectsPagePage.js").then((e) => ({ default: e.ProjectsProjectsPagePage }))), Y = r(() => import("./pages/HrSkillsTaxonomyPagePage.js").then((e) => ({ default: e.HrSkillsTaxonomyPagePage }))), X = r(() => import("./pages/ProjectsResourcingPagePage.js").then((e) => ({ default: e.ProjectsResourcingPagePage }))), Z = r(() => import("./pages/TeamsTeamAnalyticsPagePage.js").then((e) => ({ default: e.TeamsTeamAnalyticsPagePage }))), Q = r(() => import("./pages/TeamsTeamDetailPagePage.js").then((e) => ({ default: e.TeamsTeamDetailPagePage }))), $ = r(() => import("./pages/TeamsTeamDirectoryPagePage.js").then((e) => ({ default: e.TeamsTeamDirectoryPagePage }))), te = r(() => import("./pages/TeamsTeamsPagePage.js").then((e) => ({ default: e.TeamsTeamsPagePage }))), ne = r(() => import("./pages/HelpApiDocumentationPagePage.js").then((e) => ({ default: e.HelpApiDocumentationPagePage }))), re = r(() => import("./pages/CompanyCompanyProfilePagePage.js").then((e) => ({ default: e.CompanyCompanyProfilePagePage }))), ie = r(() => import("./pages/TeamsTeamSettingsPagePage.js").then((e) => ({ default: e.TeamsTeamSettingsPagePage }))), ae = [
9
9
  ["learning/learning-page", "../learning/courses-page"],
10
10
  ["learning/learning-paths-page", "../learning/courses-page"],
11
11
  ["learning/learning-path-detail-page", "../learning/courses-page"],
@@ -27,15 +27,15 @@ var u = r(() => import("./pages/AnalyticsAnalyticsPagePage.js").then((e) => ({ d
27
27
  ["communications/calls-page", "../communications/announcements-page"],
28
28
  ["communications/video-calls-page", "../communications/announcements-page"]
29
29
  ];
30
- function ae() {
30
+ function oe() {
31
31
  return /* @__PURE__ */ c("div", {
32
32
  className: "flex min-h-[320px] items-center justify-center",
33
33
  children: /* @__PURE__ */ c(i, { className: "h-8 w-8 animate-spin text-primary" })
34
34
  });
35
35
  }
36
- function oe() {
36
+ function se() {
37
37
  return /* @__PURE__ */ c(n, {
38
- fallback: /* @__PURE__ */ c(ae, {}),
38
+ fallback: /* @__PURE__ */ c(oe, {}),
39
39
  children: /* @__PURE__ */ l(s, { children: [
40
40
  /* @__PURE__ */ c(o, {
41
41
  index: !0,
@@ -153,6 +153,10 @@ function oe() {
153
153
  path: "hr/time-tracking-page",
154
154
  element: /* @__PURE__ */ c(I, {})
155
155
  }),
156
+ /* @__PURE__ */ c(o, {
157
+ path: "hr/skills-taxonomy-page",
158
+ element: /* @__PURE__ */ c(Y, {})
159
+ }),
156
160
  /* @__PURE__ */ c(o, {
157
161
  path: "learning/course-details-page",
158
162
  element: /* @__PURE__ */ c(L, {})
@@ -203,37 +207,37 @@ function oe() {
203
207
  }),
204
208
  /* @__PURE__ */ c(o, {
205
209
  path: "projects/resourcing-page",
206
- element: /* @__PURE__ */ c(Y, {})
210
+ element: /* @__PURE__ */ c(X, {})
207
211
  }),
208
212
  /* @__PURE__ */ c(o, {
209
213
  path: "teams/team-analytics-page",
210
- element: /* @__PURE__ */ c(X, {})
214
+ element: /* @__PURE__ */ c(Z, {})
211
215
  }),
212
216
  /* @__PURE__ */ c(o, {
213
217
  path: "teams/team-detail-page",
214
- element: /* @__PURE__ */ c(Z, {})
218
+ element: /* @__PURE__ */ c(Q, {})
215
219
  }),
216
220
  /* @__PURE__ */ c(o, {
217
221
  path: "teams/team-directory-page",
218
- element: /* @__PURE__ */ c(Q, {})
222
+ element: /* @__PURE__ */ c($, {})
219
223
  }),
220
224
  /* @__PURE__ */ c(o, {
221
225
  path: "teams/teams-page",
222
- element: /* @__PURE__ */ c($, {})
226
+ element: /* @__PURE__ */ c(te, {})
223
227
  }),
224
228
  /* @__PURE__ */ c(o, {
225
229
  path: "teams/team-settings-page",
226
- element: /* @__PURE__ */ c(re, {})
230
+ element: /* @__PURE__ */ c(ie, {})
227
231
  }),
228
232
  /* @__PURE__ */ c(o, {
229
233
  path: "help/api-documentation-page",
230
- element: /* @__PURE__ */ c(te, {})
234
+ element: /* @__PURE__ */ c(ne, {})
231
235
  }),
232
236
  /* @__PURE__ */ c(o, {
233
237
  path: "company/company-profile-page",
234
- element: /* @__PURE__ */ c(ne, {})
238
+ element: /* @__PURE__ */ c(re, {})
235
239
  }),
236
- ie.map(([e, t]) => /* @__PURE__ */ c(o, {
240
+ ae.map(([e, t]) => /* @__PURE__ */ c(o, {
237
241
  path: e,
238
242
  element: /* @__PURE__ */ c(a, {
239
243
  to: t,
@@ -258,6 +262,6 @@ function oe() {
258
262
  });
259
263
  }
260
264
  //#endregion
261
- export { oe as CrewFoundryRoutes };
265
+ export { se as CrewFoundryRoutes };
262
266
 
263
267
  //# sourceMappingURL=CrewFoundryRoutes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CrewFoundryRoutes.js","names":[],"sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router';\nimport { Loader2 } from 'lucide-react';\nimport { AdminAdminPagePage as IndexPage } from './pages/AdminAdminPagePage';\nimport { CONVERSATIONS_ROUTE } from './store/crewfoundryStore';\n\nconst AnalyticsAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsAnalyticsPagePage,\n }))\n);\nconst AnalyticsEmployeeAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsEmployeeAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsEmployeeAnalyticsPagePage,\n }))\n);\nconst AnalyticsFinancialAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsFinancialAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsFinancialAnalyticsPagePage,\n }))\n);\nconst AnalyticsHiringAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsHiringAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsHiringAnalyticsPagePage,\n }))\n);\nconst CommunicationsAnnouncementsPagePage = lazy(() =>\n import('./pages/CommunicationsAnnouncementsPagePage').then((m) => ({\n default: m.CommunicationsAnnouncementsPagePage,\n }))\n);\nconst CommunicationsDirectoryPagePage = lazy(() =>\n import('./pages/CommunicationsDirectoryPagePage').then((m) => ({\n default: m.CommunicationsDirectoryPagePage,\n }))\n);\nconst CommunicationsFilesPagePage = lazy(() =>\n import('./pages/CommunicationsFilesPagePage').then((m) => ({\n default: m.CommunicationsFilesPagePage,\n }))\n);\nconst CommunicationsTeamsPagePage = lazy(() =>\n import('./pages/CommunicationsTeamsPagePage').then((m) => ({\n default: m.CommunicationsTeamsPagePage,\n }))\n);\nconst CompanyClientManagementPagePage = lazy(() =>\n import('./pages/CompanyClientManagementPagePage').then((m) => ({\n default: m.CompanyClientManagementPagePage,\n }))\n);\nconst CompanyCompanyDashboardPagePage = lazy(() =>\n import('./pages/CompanyCompanyDashboardPagePage').then((m) => ({\n default: m.CompanyCompanyDashboardPagePage,\n }))\n);\nconst CompanyVendorManagementPagePage = lazy(() =>\n import('./pages/CompanyVendorManagementPagePage').then((m) => ({\n default: m.CompanyVendorManagementPagePage,\n }))\n);\nconst DashboardAnalyticsPagePage = lazy(() =>\n import('./pages/DashboardAnalyticsPagePage').then((m) => ({\n default: m.DashboardAnalyticsPagePage,\n }))\n);\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst DashboardEnhancedDashboardPagePage = lazy(() =>\n import('./pages/DashboardEnhancedDashboardPagePage').then((m) => ({\n default: m.DashboardEnhancedDashboardPagePage,\n }))\n);\nconst DashboardExecutiveDashboardPage = lazy(() =>\n import('./pages/DashboardExecutiveDashboardPage').then((m) => ({\n default: m.DashboardExecutiveDashboardPage,\n }))\n);\nconst HiringApplicationsPagePage = lazy(() =>\n import('./pages/HiringApplicationsPagePage').then((m) => ({\n default: m.HiringApplicationsPagePage,\n }))\n);\nconst HiringCandidatesPagePage = lazy(() =>\n import('./pages/HiringCandidatesPagePage').then((m) => ({ default: m.HiringCandidatesPagePage }))\n);\nconst HiringCreateJobPagePage = lazy(() =>\n import('./pages/HiringCreateJobPagePage').then((m) => ({ default: m.HiringCreateJobPagePage }))\n);\nconst HiringInterviewsPagePage = lazy(() =>\n import('./pages/HiringInterviewsPagePage').then((m) => ({ default: m.HiringInterviewsPagePage }))\n);\nconst HiringOnboardingPagePage = lazy(() =>\n import('./pages/HiringOnboardingPagePage').then((m) => ({ default: m.HiringOnboardingPagePage }))\n);\nconst HiringJobDetailsPagePage = lazy(() =>\n import('./pages/HiringJobDetailsPagePage').then((m) => ({ default: m.HiringJobDetailsPagePage }))\n);\nconst HiringJobsPagePage = lazy(() =>\n import('./pages/HiringJobsPagePage').then((m) => ({ default: m.HiringJobsPagePage }))\n);\nconst HrDepartmentsPagePage = lazy(() =>\n import('./pages/HrDepartmentsPagePage').then((m) => ({ default: m.HrDepartmentsPagePage }))\n);\nconst HrEmployeesPagePage = lazy(() =>\n import('./pages/HrEmployeesPagePage').then((m) => ({ default: m.HrEmployeesPagePage }))\n);\nconst HrEmployeeProfilePagePage = lazy(() =>\n import('./pages/HrEmployeeProfilePagePage').then((m) => ({\n default: m.HrEmployeeProfilePagePage,\n }))\n);\nconst HrLeaveManagementPagePage = lazy(() =>\n import('./pages/HrLeaveManagementPagePage').then((m) => ({\n default: m.HrLeaveManagementPagePage,\n }))\n);\nconst HrPayrollPagePage = lazy(() =>\n import('./pages/HrPayrollPagePage').then((m) => ({ default: m.HrPayrollPagePage }))\n);\nconst HrTimeTrackingPagePage = lazy(() =>\n import('./pages/HrTimeTrackingPagePage').then((m) => ({ default: m.HrTimeTrackingPagePage }))\n);\nconst LearningCourseDetailsPagePage = lazy(() =>\n import('./pages/LearningCourseDetailsPagePage').then((m) => ({\n default: m.LearningCourseDetailsPagePage,\n }))\n);\nconst LearningCoursesPagePage = lazy(() =>\n import('./pages/LearningCoursesPagePage').then((m) => ({ default: m.LearningCoursesPagePage }))\n);\nconst LearningLearningAnalyticsPagePage = lazy(() =>\n import('./pages/LearningLearningAnalyticsPagePage').then((m) => ({\n default: m.LearningLearningAnalyticsPagePage,\n }))\n);\nconst MarketplaceBookingManagementPagePage = lazy(() =>\n import('./pages/MarketplaceBookingManagementPagePage').then((m) => ({\n default: m.MarketplaceBookingManagementPagePage,\n }))\n);\nconst LearningEnrollmentsPagePage = lazy(() =>\n import('./pages/LearningEnrollmentsPagePage').then((m) => ({\n default: m.LearningEnrollmentsPagePage,\n }))\n);\nconst MarketplaceEscrowPagePage = lazy(() =>\n import('./pages/MarketplaceEscrowPagePage').then((m) => ({\n default: m.MarketplaceEscrowPagePage,\n }))\n);\nconst MarketplaceMarketplacePagePage = lazy(() =>\n import('./pages/MarketplaceMarketplacePagePage').then((m) => ({\n default: m.MarketplaceMarketplacePagePage,\n }))\n);\nconst MarketplaceMyServicesPagePage = lazy(() =>\n import('./pages/MarketplaceMyServicesPagePage').then((m) => ({\n default: m.MarketplaceMyServicesPagePage,\n }))\n);\nconst MarketplaceServiceDetailsPagePage = lazy(() =>\n import('./pages/MarketplaceServiceDetailsPagePage').then((m) => ({\n default: m.MarketplaceServiceDetailsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsProjectDetailsPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailsPagePage').then((m) => ({\n default: m.ProjectsProjectDetailsPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst ProjectsResourcingPagePage = lazy(() =>\n import('./pages/ProjectsResourcingPagePage').then((m) => ({\n default: m.ProjectsResourcingPagePage,\n }))\n);\nconst TeamsTeamAnalyticsPagePage = lazy(() =>\n import('./pages/TeamsTeamAnalyticsPagePage').then((m) => ({\n default: m.TeamsTeamAnalyticsPagePage,\n }))\n);\nconst TeamsTeamDetailPagePage = lazy(() =>\n import('./pages/TeamsTeamDetailPagePage').then((m) => ({ default: m.TeamsTeamDetailPagePage }))\n);\nconst TeamsTeamDirectoryPagePage = lazy(() =>\n import('./pages/TeamsTeamDirectoryPagePage').then((m) => ({\n default: m.TeamsTeamDirectoryPagePage,\n }))\n);\nconst TeamsTeamsPagePage = lazy(() =>\n import('./pages/TeamsTeamsPagePage').then((m) => ({ default: m.TeamsTeamsPagePage }))\n);\nconst HelpApiDocumentationPagePage = lazy(() =>\n import('./pages/HelpApiDocumentationPagePage').then((m) => ({\n default: m.HelpApiDocumentationPagePage,\n }))\n);\nconst CompanyCompanyProfilePagePage = lazy(() =>\n import('./pages/CompanyCompanyProfilePagePage').then((m) => ({\n default: m.CompanyCompanyProfilePagePage,\n }))\n);\nconst TeamsTeamSettingsPagePage = lazy(() =>\n import('./pages/TeamsTeamSettingsPagePage').then((m) => ({\n default: m.TeamsTeamSettingsPagePage,\n }))\n);\n\n/**\n * Routes retired by BOFF-3401: pages that rendered mock data or features no\n * CrewFoundry backend serves. Old bookmarks land on the closest real page.\n * Targets are route-relative, like every in-module `navigate('../<section>/<page>')`.\n */\nconst LEGACY_REDIRECTS: Array<[string, string]> = [\n ['learning/learning-page', '../learning/courses-page'],\n ['learning/learning-paths-page', '../learning/courses-page'],\n ['learning/learning-path-detail-page', '../learning/courses-page'],\n ['learning/assessments-page', '../learning/courses-page'],\n ['learning/certificates-page', '../learning/enrollments-page'],\n ['learning/course-learning-page', '../learning/courses-page'],\n ['learning/my-learning-page', '../learning/enrollments-page'],\n ['marketplace/marketplace-services-page', '../marketplace/marketplace-page'],\n ['marketplace/freelancer-profile-page', '../marketplace/marketplace-page'],\n ['marketplace/freelancer-profile-page-enhanced', '../marketplace/marketplace-page'],\n ['marketplace/project-details-page', '../marketplace/booking-management-page'],\n ['marketplace/earnings-page', '../marketplace/booking-management-page'],\n ['marketplace/messaging-page', '../marketplace/booking-management-page'],\n ['payments/escrow-page', '../marketplace/escrow-page'],\n ['payments/payment-dashboard-page', '../hr/payroll-page'],\n ['payments/invoices-page', '../hr/payroll-page'],\n ['payments/payment-methods-page', '../hr/payroll-page'],\n ['payments/security-page', '../hr/payroll-page'],\n ['communications/calls-page', '../communications/announcements-page'],\n ['communications/video-calls-page', '../communications/announcements-page'],\n];\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function CrewFoundryRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<IndexPage />} />\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n <Route\n path=\"analytics/employee-analytics-page\"\n element={<AnalyticsEmployeeAnalyticsPagePage />}\n />\n <Route\n path=\"analytics/financial-analytics-page\"\n element={<AnalyticsFinancialAnalyticsPagePage />}\n />\n <Route\n path=\"analytics/hiring-analytics-page\"\n element={<AnalyticsHiringAnalyticsPagePage />}\n />\n <Route\n path=\"communications/announcements-page\"\n element={<CommunicationsAnnouncementsPagePage />}\n />\n <Route path=\"communications/directory-page\" element={<CommunicationsDirectoryPagePage />} />\n <Route path=\"communications/files-page\" element={<CommunicationsFilesPagePage />} />\n <Route path=\"communications/teams-page\" element={<CommunicationsTeamsPagePage />} />\n <Route\n path=\"company/client-management-page\"\n element={<CompanyClientManagementPagePage />}\n />\n <Route\n path=\"company/company-dashboard-page\"\n element={<CompanyCompanyDashboardPagePage />}\n />\n <Route\n path=\"company/vendor-management-page\"\n element={<CompanyVendorManagementPagePage />}\n />\n <Route path=\"dashboard/analytics-page\" element={<DashboardAnalyticsPagePage />} />\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n <Route\n path=\"dashboard/enhanced-dashboard-page\"\n element={<DashboardEnhancedDashboardPagePage />}\n />\n <Route path=\"dashboard/executive-dashboard\" element={<DashboardExecutiveDashboardPage />} />\n <Route path=\"hiring/applications-page\" element={<HiringApplicationsPagePage />} />\n <Route path=\"hiring/candidates-page\" element={<HiringCandidatesPagePage />} />\n <Route path=\"hiring/create-job-page\" element={<HiringCreateJobPagePage />} />\n <Route path=\"hiring/interviews-page\" element={<HiringInterviewsPagePage />} />\n <Route path=\"hiring/onboarding-page\" element={<HiringOnboardingPagePage />} />\n <Route path=\"hiring/job-details-page\" element={<HiringJobDetailsPagePage />} />\n <Route path=\"hiring/jobs-page\" element={<HiringJobsPagePage />} />\n <Route path=\"hr/departments-page\" element={<HrDepartmentsPagePage />} />\n <Route path=\"hr/employees-page\" element={<HrEmployeesPagePage />} />\n <Route path=\"hr/employee-profile-page\" element={<HrEmployeeProfilePagePage />} />\n <Route path=\"hr/leave-management-page\" element={<HrLeaveManagementPagePage />} />\n <Route path=\"hr/payroll-page\" element={<HrPayrollPagePage />} />\n <Route path=\"hr/time-tracking-page\" element={<HrTimeTrackingPagePage />} />\n <Route path=\"learning/course-details-page\" element={<LearningCourseDetailsPagePage />} />\n <Route path=\"learning/courses-page\" element={<LearningCoursesPagePage />} />\n <Route path=\"learning/enrollments-page\" element={<LearningEnrollmentsPagePage />} />\n <Route\n path=\"learning/learning-analytics-page\"\n element={<LearningLearningAnalyticsPagePage />}\n />\n <Route\n path=\"marketplace/booking-management-page\"\n element={<MarketplaceBookingManagementPagePage />}\n />\n <Route path=\"marketplace/marketplace-page\" element={<MarketplaceMarketplacePagePage />} />\n <Route path=\"marketplace/escrow-page\" element={<MarketplaceEscrowPagePage />} />\n <Route path=\"marketplace/my-services-page\" element={<MarketplaceMyServicesPagePage />} />\n <Route\n path=\"marketplace/service-details-page\"\n element={<MarketplaceServiceDetailsPagePage />}\n />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/project-details-page\" element={<ProjectsProjectDetailsPagePage />} />\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/resourcing-page\" element={<ProjectsResourcingPagePage />} />\n <Route path=\"teams/team-analytics-page\" element={<TeamsTeamAnalyticsPagePage />} />\n <Route path=\"teams/team-detail-page\" element={<TeamsTeamDetailPagePage />} />\n <Route path=\"teams/team-directory-page\" element={<TeamsTeamDirectoryPagePage />} />\n <Route path=\"teams/teams-page\" element={<TeamsTeamsPagePage />} />\n <Route path=\"teams/team-settings-page\" element={<TeamsTeamSettingsPagePage />} />\n <Route path=\"help/api-documentation-page\" element={<HelpApiDocumentationPagePage />} />\n <Route path=\"company/company-profile-page\" element={<CompanyCompanyProfilePagePage />} />\n {LEGACY_REDIRECTS.map(([from, to]) => (\n <Route key={from} path={from} element={<Navigate to={to} replace />} />\n ))}\n {/* Conversations and calls are owned by the shell's shared Conversations app. */}\n <Route\n path=\"communications/messages-page\"\n element={<Navigate to={CONVERSATIONS_ROUTE} replace />}\n />\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"CrewFoundryRoutes.js","names":[],"sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"sourcesContent":["import { lazy, Suspense } from 'react';\nimport { Navigate, Route, Routes } from 'react-router';\nimport { Loader2 } from 'lucide-react';\nimport { AdminAdminPagePage as IndexPage } from './pages/AdminAdminPagePage';\nimport { CONVERSATIONS_ROUTE } from './store/crewfoundryStore';\n\nconst AnalyticsAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsAnalyticsPagePage,\n }))\n);\nconst AnalyticsEmployeeAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsEmployeeAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsEmployeeAnalyticsPagePage,\n }))\n);\nconst AnalyticsFinancialAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsFinancialAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsFinancialAnalyticsPagePage,\n }))\n);\nconst AnalyticsHiringAnalyticsPagePage = lazy(() =>\n import('./pages/AnalyticsHiringAnalyticsPagePage').then((m) => ({\n default: m.AnalyticsHiringAnalyticsPagePage,\n }))\n);\nconst CommunicationsAnnouncementsPagePage = lazy(() =>\n import('./pages/CommunicationsAnnouncementsPagePage').then((m) => ({\n default: m.CommunicationsAnnouncementsPagePage,\n }))\n);\nconst CommunicationsDirectoryPagePage = lazy(() =>\n import('./pages/CommunicationsDirectoryPagePage').then((m) => ({\n default: m.CommunicationsDirectoryPagePage,\n }))\n);\nconst CommunicationsFilesPagePage = lazy(() =>\n import('./pages/CommunicationsFilesPagePage').then((m) => ({\n default: m.CommunicationsFilesPagePage,\n }))\n);\nconst CommunicationsTeamsPagePage = lazy(() =>\n import('./pages/CommunicationsTeamsPagePage').then((m) => ({\n default: m.CommunicationsTeamsPagePage,\n }))\n);\nconst CompanyClientManagementPagePage = lazy(() =>\n import('./pages/CompanyClientManagementPagePage').then((m) => ({\n default: m.CompanyClientManagementPagePage,\n }))\n);\nconst CompanyCompanyDashboardPagePage = lazy(() =>\n import('./pages/CompanyCompanyDashboardPagePage').then((m) => ({\n default: m.CompanyCompanyDashboardPagePage,\n }))\n);\nconst CompanyVendorManagementPagePage = lazy(() =>\n import('./pages/CompanyVendorManagementPagePage').then((m) => ({\n default: m.CompanyVendorManagementPagePage,\n }))\n);\nconst DashboardAnalyticsPagePage = lazy(() =>\n import('./pages/DashboardAnalyticsPagePage').then((m) => ({\n default: m.DashboardAnalyticsPagePage,\n }))\n);\nconst DashboardDashboardPagePage = lazy(() =>\n import('./pages/DashboardDashboardPagePage').then((m) => ({\n default: m.DashboardDashboardPagePage,\n }))\n);\nconst DashboardEnhancedDashboardPagePage = lazy(() =>\n import('./pages/DashboardEnhancedDashboardPagePage').then((m) => ({\n default: m.DashboardEnhancedDashboardPagePage,\n }))\n);\nconst DashboardExecutiveDashboardPage = lazy(() =>\n import('./pages/DashboardExecutiveDashboardPage').then((m) => ({\n default: m.DashboardExecutiveDashboardPage,\n }))\n);\nconst HiringApplicationsPagePage = lazy(() =>\n import('./pages/HiringApplicationsPagePage').then((m) => ({\n default: m.HiringApplicationsPagePage,\n }))\n);\nconst HiringCandidatesPagePage = lazy(() =>\n import('./pages/HiringCandidatesPagePage').then((m) => ({ default: m.HiringCandidatesPagePage }))\n);\nconst HiringCreateJobPagePage = lazy(() =>\n import('./pages/HiringCreateJobPagePage').then((m) => ({ default: m.HiringCreateJobPagePage }))\n);\nconst HiringInterviewsPagePage = lazy(() =>\n import('./pages/HiringInterviewsPagePage').then((m) => ({ default: m.HiringInterviewsPagePage }))\n);\nconst HiringOnboardingPagePage = lazy(() =>\n import('./pages/HiringOnboardingPagePage').then((m) => ({ default: m.HiringOnboardingPagePage }))\n);\nconst HiringJobDetailsPagePage = lazy(() =>\n import('./pages/HiringJobDetailsPagePage').then((m) => ({ default: m.HiringJobDetailsPagePage }))\n);\nconst HiringJobsPagePage = lazy(() =>\n import('./pages/HiringJobsPagePage').then((m) => ({ default: m.HiringJobsPagePage }))\n);\nconst HrDepartmentsPagePage = lazy(() =>\n import('./pages/HrDepartmentsPagePage').then((m) => ({ default: m.HrDepartmentsPagePage }))\n);\nconst HrEmployeesPagePage = lazy(() =>\n import('./pages/HrEmployeesPagePage').then((m) => ({ default: m.HrEmployeesPagePage }))\n);\nconst HrEmployeeProfilePagePage = lazy(() =>\n import('./pages/HrEmployeeProfilePagePage').then((m) => ({\n default: m.HrEmployeeProfilePagePage,\n }))\n);\nconst HrLeaveManagementPagePage = lazy(() =>\n import('./pages/HrLeaveManagementPagePage').then((m) => ({\n default: m.HrLeaveManagementPagePage,\n }))\n);\nconst HrPayrollPagePage = lazy(() =>\n import('./pages/HrPayrollPagePage').then((m) => ({ default: m.HrPayrollPagePage }))\n);\nconst HrTimeTrackingPagePage = lazy(() =>\n import('./pages/HrTimeTrackingPagePage').then((m) => ({ default: m.HrTimeTrackingPagePage }))\n);\nconst LearningCourseDetailsPagePage = lazy(() =>\n import('./pages/LearningCourseDetailsPagePage').then((m) => ({\n default: m.LearningCourseDetailsPagePage,\n }))\n);\nconst LearningCoursesPagePage = lazy(() =>\n import('./pages/LearningCoursesPagePage').then((m) => ({ default: m.LearningCoursesPagePage }))\n);\nconst LearningLearningAnalyticsPagePage = lazy(() =>\n import('./pages/LearningLearningAnalyticsPagePage').then((m) => ({\n default: m.LearningLearningAnalyticsPagePage,\n }))\n);\nconst MarketplaceBookingManagementPagePage = lazy(() =>\n import('./pages/MarketplaceBookingManagementPagePage').then((m) => ({\n default: m.MarketplaceBookingManagementPagePage,\n }))\n);\nconst LearningEnrollmentsPagePage = lazy(() =>\n import('./pages/LearningEnrollmentsPagePage').then((m) => ({\n default: m.LearningEnrollmentsPagePage,\n }))\n);\nconst MarketplaceEscrowPagePage = lazy(() =>\n import('./pages/MarketplaceEscrowPagePage').then((m) => ({\n default: m.MarketplaceEscrowPagePage,\n }))\n);\nconst MarketplaceMarketplacePagePage = lazy(() =>\n import('./pages/MarketplaceMarketplacePagePage').then((m) => ({\n default: m.MarketplaceMarketplacePagePage,\n }))\n);\nconst MarketplaceMyServicesPagePage = lazy(() =>\n import('./pages/MarketplaceMyServicesPagePage').then((m) => ({\n default: m.MarketplaceMyServicesPagePage,\n }))\n);\nconst MarketplaceServiceDetailsPagePage = lazy(() =>\n import('./pages/MarketplaceServiceDetailsPagePage').then((m) => ({\n default: m.MarketplaceServiceDetailsPagePage,\n }))\n);\nconst ProjectsCreateProjectPagePage = lazy(() =>\n import('./pages/ProjectsCreateProjectPagePage').then((m) => ({\n default: m.ProjectsCreateProjectPagePage,\n }))\n);\nconst ProjectsProjectDetailsPagePage = lazy(() =>\n import('./pages/ProjectsProjectDetailsPagePage').then((m) => ({\n default: m.ProjectsProjectDetailsPagePage,\n }))\n);\nconst ProjectsProjectsPagePage = lazy(() =>\n import('./pages/ProjectsProjectsPagePage').then((m) => ({ default: m.ProjectsProjectsPagePage }))\n);\nconst HrSkillsTaxonomyPagePage = lazy(() =>\n import('./pages/HrSkillsTaxonomyPagePage').then((m) => ({\n default: m.HrSkillsTaxonomyPagePage,\n }))\n);\nconst ProjectsResourcingPagePage = lazy(() =>\n import('./pages/ProjectsResourcingPagePage').then((m) => ({\n default: m.ProjectsResourcingPagePage,\n }))\n);\nconst TeamsTeamAnalyticsPagePage = lazy(() =>\n import('./pages/TeamsTeamAnalyticsPagePage').then((m) => ({\n default: m.TeamsTeamAnalyticsPagePage,\n }))\n);\nconst TeamsTeamDetailPagePage = lazy(() =>\n import('./pages/TeamsTeamDetailPagePage').then((m) => ({ default: m.TeamsTeamDetailPagePage }))\n);\nconst TeamsTeamDirectoryPagePage = lazy(() =>\n import('./pages/TeamsTeamDirectoryPagePage').then((m) => ({\n default: m.TeamsTeamDirectoryPagePage,\n }))\n);\nconst TeamsTeamsPagePage = lazy(() =>\n import('./pages/TeamsTeamsPagePage').then((m) => ({ default: m.TeamsTeamsPagePage }))\n);\nconst HelpApiDocumentationPagePage = lazy(() =>\n import('./pages/HelpApiDocumentationPagePage').then((m) => ({\n default: m.HelpApiDocumentationPagePage,\n }))\n);\nconst CompanyCompanyProfilePagePage = lazy(() =>\n import('./pages/CompanyCompanyProfilePagePage').then((m) => ({\n default: m.CompanyCompanyProfilePagePage,\n }))\n);\nconst TeamsTeamSettingsPagePage = lazy(() =>\n import('./pages/TeamsTeamSettingsPagePage').then((m) => ({\n default: m.TeamsTeamSettingsPagePage,\n }))\n);\n\n/**\n * Routes retired by BOFF-3401: pages that rendered mock data or features no\n * CrewFoundry backend serves. Old bookmarks land on the closest real page.\n * Targets are route-relative, like every in-module `navigate('../<section>/<page>')`.\n */\nconst LEGACY_REDIRECTS: Array<[string, string]> = [\n ['learning/learning-page', '../learning/courses-page'],\n ['learning/learning-paths-page', '../learning/courses-page'],\n ['learning/learning-path-detail-page', '../learning/courses-page'],\n ['learning/assessments-page', '../learning/courses-page'],\n ['learning/certificates-page', '../learning/enrollments-page'],\n ['learning/course-learning-page', '../learning/courses-page'],\n ['learning/my-learning-page', '../learning/enrollments-page'],\n ['marketplace/marketplace-services-page', '../marketplace/marketplace-page'],\n ['marketplace/freelancer-profile-page', '../marketplace/marketplace-page'],\n ['marketplace/freelancer-profile-page-enhanced', '../marketplace/marketplace-page'],\n ['marketplace/project-details-page', '../marketplace/booking-management-page'],\n ['marketplace/earnings-page', '../marketplace/booking-management-page'],\n ['marketplace/messaging-page', '../marketplace/booking-management-page'],\n ['payments/escrow-page', '../marketplace/escrow-page'],\n ['payments/payment-dashboard-page', '../hr/payroll-page'],\n ['payments/invoices-page', '../hr/payroll-page'],\n ['payments/payment-methods-page', '../hr/payroll-page'],\n ['payments/security-page', '../hr/payroll-page'],\n ['communications/calls-page', '../communications/announcements-page'],\n ['communications/video-calls-page', '../communications/announcements-page'],\n];\n\nfunction PageLoader() {\n return (\n <div className=\"flex min-h-[320px] items-center justify-center\">\n <Loader2 className=\"h-8 w-8 animate-spin text-primary\" />\n </div>\n );\n}\n\nexport function CrewFoundryRoutes() {\n return (\n <Suspense fallback={<PageLoader />}>\n <Routes>\n <Route index element={<IndexPage />} />\n <Route path=\"analytics/analytics-page\" element={<AnalyticsAnalyticsPagePage />} />\n <Route\n path=\"analytics/employee-analytics-page\"\n element={<AnalyticsEmployeeAnalyticsPagePage />}\n />\n <Route\n path=\"analytics/financial-analytics-page\"\n element={<AnalyticsFinancialAnalyticsPagePage />}\n />\n <Route\n path=\"analytics/hiring-analytics-page\"\n element={<AnalyticsHiringAnalyticsPagePage />}\n />\n <Route\n path=\"communications/announcements-page\"\n element={<CommunicationsAnnouncementsPagePage />}\n />\n <Route path=\"communications/directory-page\" element={<CommunicationsDirectoryPagePage />} />\n <Route path=\"communications/files-page\" element={<CommunicationsFilesPagePage />} />\n <Route path=\"communications/teams-page\" element={<CommunicationsTeamsPagePage />} />\n <Route\n path=\"company/client-management-page\"\n element={<CompanyClientManagementPagePage />}\n />\n <Route\n path=\"company/company-dashboard-page\"\n element={<CompanyCompanyDashboardPagePage />}\n />\n <Route\n path=\"company/vendor-management-page\"\n element={<CompanyVendorManagementPagePage />}\n />\n <Route path=\"dashboard/analytics-page\" element={<DashboardAnalyticsPagePage />} />\n <Route path=\"dashboard/dashboard-page\" element={<DashboardDashboardPagePage />} />\n <Route\n path=\"dashboard/enhanced-dashboard-page\"\n element={<DashboardEnhancedDashboardPagePage />}\n />\n <Route path=\"dashboard/executive-dashboard\" element={<DashboardExecutiveDashboardPage />} />\n <Route path=\"hiring/applications-page\" element={<HiringApplicationsPagePage />} />\n <Route path=\"hiring/candidates-page\" element={<HiringCandidatesPagePage />} />\n <Route path=\"hiring/create-job-page\" element={<HiringCreateJobPagePage />} />\n <Route path=\"hiring/interviews-page\" element={<HiringInterviewsPagePage />} />\n <Route path=\"hiring/onboarding-page\" element={<HiringOnboardingPagePage />} />\n <Route path=\"hiring/job-details-page\" element={<HiringJobDetailsPagePage />} />\n <Route path=\"hiring/jobs-page\" element={<HiringJobsPagePage />} />\n <Route path=\"hr/departments-page\" element={<HrDepartmentsPagePage />} />\n <Route path=\"hr/employees-page\" element={<HrEmployeesPagePage />} />\n <Route path=\"hr/employee-profile-page\" element={<HrEmployeeProfilePagePage />} />\n <Route path=\"hr/leave-management-page\" element={<HrLeaveManagementPagePage />} />\n <Route path=\"hr/payroll-page\" element={<HrPayrollPagePage />} />\n <Route path=\"hr/time-tracking-page\" element={<HrTimeTrackingPagePage />} />\n <Route path=\"hr/skills-taxonomy-page\" element={<HrSkillsTaxonomyPagePage />} />\n <Route path=\"learning/course-details-page\" element={<LearningCourseDetailsPagePage />} />\n <Route path=\"learning/courses-page\" element={<LearningCoursesPagePage />} />\n <Route path=\"learning/enrollments-page\" element={<LearningEnrollmentsPagePage />} />\n <Route\n path=\"learning/learning-analytics-page\"\n element={<LearningLearningAnalyticsPagePage />}\n />\n <Route\n path=\"marketplace/booking-management-page\"\n element={<MarketplaceBookingManagementPagePage />}\n />\n <Route path=\"marketplace/marketplace-page\" element={<MarketplaceMarketplacePagePage />} />\n <Route path=\"marketplace/escrow-page\" element={<MarketplaceEscrowPagePage />} />\n <Route path=\"marketplace/my-services-page\" element={<MarketplaceMyServicesPagePage />} />\n <Route\n path=\"marketplace/service-details-page\"\n element={<MarketplaceServiceDetailsPagePage />}\n />\n <Route path=\"projects/create-project-page\" element={<ProjectsCreateProjectPagePage />} />\n <Route path=\"projects/project-details-page\" element={<ProjectsProjectDetailsPagePage />} />\n <Route path=\"projects/projects-page\" element={<ProjectsProjectsPagePage />} />\n <Route path=\"projects/resourcing-page\" element={<ProjectsResourcingPagePage />} />\n <Route path=\"teams/team-analytics-page\" element={<TeamsTeamAnalyticsPagePage />} />\n <Route path=\"teams/team-detail-page\" element={<TeamsTeamDetailPagePage />} />\n <Route path=\"teams/team-directory-page\" element={<TeamsTeamDirectoryPagePage />} />\n <Route path=\"teams/teams-page\" element={<TeamsTeamsPagePage />} />\n <Route path=\"teams/team-settings-page\" element={<TeamsTeamSettingsPagePage />} />\n <Route path=\"help/api-documentation-page\" element={<HelpApiDocumentationPagePage />} />\n <Route path=\"company/company-profile-page\" element={<CompanyCompanyProfilePagePage />} />\n {LEGACY_REDIRECTS.map(([from, to]) => (\n <Route key={from} path={from} element={<Navigate to={to} replace />} />\n ))}\n {/* Conversations and calls are owned by the shell's shared Conversations app. */}\n <Route\n path=\"communications/messages-page\"\n element={<Navigate to={CONVERSATIONS_ROUTE} replace />}\n />\n <Route path=\"*\" element={<Navigate to=\"\" replace />} />\n </Routes>\n </Suspense>\n );\n}\n"],"mappings":";;;;;;;AAMA,IAAM,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAAqC,QACzC,OAAO,iDAA8C,MAAM,OAAO,EAChE,SAAS,EAAE,oCACZ,EAAE,CACJ,EACK,IAAsC,QAC1C,OAAO,kDAA+C,MAAM,OAAO,EACjE,SAAS,EAAE,qCACZ,EAAE,CACJ,EACK,IAAmC,QACvC,OAAO,+CAA4C,MAAM,OAAO,EAC9D,SAAS,EAAE,kCACZ,EAAE,CACJ,EACK,IAAsC,QAC1C,OAAO,kDAA+C,MAAM,OAAO,EACjE,SAAS,EAAE,qCACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAAqC,QACzC,OAAO,iDAA8C,MAAM,OAAO,EAChE,SAAS,EAAE,oCACZ,EAAE,CACJ,EACK,IAAkC,QACtC,OAAO,8CAA2C,MAAM,OAAO,EAC7D,SAAS,EAAE,iCACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA0B,QAC9B,OAAO,sCAAmC,MAAM,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAChG,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,KAAqB,QACzB,OAAO,iCAA8B,MAAM,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,CACtF,EACK,IAAwB,QAC5B,OAAO,oCAAiC,MAAM,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAC5F,EACK,IAAsB,QAC1B,OAAO,kCAA+B,MAAM,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,CACxF,EACK,IAA4B,QAChC,OAAO,wCAAqC,MAAM,OAAO,EACvD,SAAS,EAAE,2BACZ,EAAE,CACJ,EACK,IAA4B,QAChC,OAAO,wCAAqC,MAAM,OAAO,EACvD,SAAS,EAAE,2BACZ,EAAE,CACJ,EACK,IAAoB,QACxB,OAAO,gCAA6B,MAAM,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,CACpF,EACK,IAAyB,QAC7B,OAAO,qCAAkC,MAAM,OAAO,EAAE,SAAS,EAAE,wBAAwB,EAAE,CAC9F,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAA0B,QAC9B,OAAO,sCAAmC,MAAM,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAChG,EACK,IAAoC,QACxC,OAAO,gDAA6C,MAAM,OAAO,EAC/D,SAAS,EAAE,mCACZ,EAAE,CACJ,EACK,IAAuC,QAC3C,OAAO,mDAAgD,MAAM,OAAO,EAClE,SAAS,EAAE,sCACZ,EAAE,CACJ,EACK,IAA8B,QAClC,OAAO,0CAAuC,MAAM,OAAO,EACzD,SAAS,EAAE,6BACZ,EAAE,CACJ,EACK,IAA4B,QAChC,OAAO,wCAAqC,MAAM,OAAO,EACvD,SAAS,EAAE,2BACZ,EAAE,CACJ,EACK,IAAiC,QACrC,OAAO,6CAA0C,MAAM,OAAO,EAC5D,SAAS,EAAE,gCACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAAoC,QACxC,OAAO,gDAA6C,MAAM,OAAO,EAC/D,SAAS,EAAE,mCACZ,EAAE,CACJ,EACK,IAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,IAAiC,QACrC,OAAO,6CAA0C,MAAM,OAAO,EAC5D,SAAS,EAAE,gCACZ,EAAE,CACJ,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAClG,EACK,IAA2B,QAC/B,OAAO,uCAAoC,MAAM,OAAO,EACtD,SAAS,EAAE,0BACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,IAA0B,QAC9B,OAAO,sCAAmC,MAAM,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,CAChG,EACK,IAA6B,QACjC,OAAO,yCAAsC,MAAM,OAAO,EACxD,SAAS,EAAE,4BACZ,EAAE,CACJ,EACK,KAAqB,QACzB,OAAO,iCAA8B,MAAM,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,CACtF,EACK,KAA+B,QACnC,OAAO,2CAAwC,MAAM,OAAO,EAC1D,SAAS,EAAE,8BACZ,EAAE,CACJ,EACK,KAAgC,QACpC,OAAO,4CAAyC,MAAM,OAAO,EAC3D,SAAS,EAAE,+BACZ,EAAE,CACJ,EACK,KAA4B,QAChC,OAAO,wCAAqC,MAAM,OAAO,EACvD,SAAS,EAAE,2BACZ,EAAE,CACJ,EAOK,KAA4C;CAChD,CAAC,0BAA0B,2BAA2B;CACtD,CAAC,gCAAgC,2BAA2B;CAC5D,CAAC,sCAAsC,2BAA2B;CAClE,CAAC,6BAA6B,2BAA2B;CACzD,CAAC,8BAA8B,+BAA+B;CAC9D,CAAC,iCAAiC,2BAA2B;CAC7D,CAAC,6BAA6B,+BAA+B;CAC7D,CAAC,yCAAyC,kCAAkC;CAC5E,CAAC,uCAAuC,kCAAkC;CAC1E,CAAC,gDAAgD,kCAAkC;CACnF,CAAC,oCAAoC,yCAAyC;CAC9E,CAAC,6BAA6B,yCAAyC;CACvE,CAAC,8BAA8B,yCAAyC;CACxE,CAAC,wBAAwB,6BAA6B;CACtD,CAAC,mCAAmC,qBAAqB;CACzD,CAAC,0BAA0B,qBAAqB;CAChD,CAAC,iCAAiC,qBAAqB;CACvD,CAAC,0BAA0B,qBAAqB;CAChD,CAAC,6BAA6B,uCAAuC;CACrE,CAAC,mCAAmC,uCAAuC;CAC5E;AAED,SAAS,KAAa;AACpB,QACE,kBAAC,OAAD;EAAK,WAAU;YACb,kBAAC,GAAD,EAAS,WAAU,qCAAsC,CAAA;EACrD,CAAA;;AAIV,SAAgB,KAAoB;AAClC,QACE,kBAAC,GAAD;EAAU,UAAU,kBAAC,IAAD,EAAc,CAAA;YAChC,kBAAC,GAAD,EAAA,UAAA;GACE,kBAAC,GAAD;IAAO,OAAA;IAAM,SAAS,kBAAC,GAAD,EAAa,CAAA;IAAI,CAAA;GACvC,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAsC,CAAA;IAC/C,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAuC,CAAA;IAChD,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAoC,CAAA;IAC7C,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAuC,CAAA;IAChD,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAAgC,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAAI,CAAA;GAC5F,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACpF,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACpF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAC5C,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAC5C,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAC5C,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAsC,CAAA;IAC/C,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAAgC,SAAS,kBAAC,GAAD,EAAmC,CAAA;IAAI,CAAA;GAC5F,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA2B,CAAA;IAAI,CAAA;GAC7E,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA0B,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC/E,kBAAC,GAAD;IAAO,MAAK;IAAmB,SAAS,kBAAC,IAAD,EAAsB,CAAA;IAAI,CAAA;GAClE,kBAAC,GAAD;IAAO,MAAK;IAAsB,SAAS,kBAAC,GAAD,EAAyB,CAAA;IAAI,CAAA;GACxE,kBAAC,GAAD;IAAO,MAAK;IAAoB,SAAS,kBAAC,GAAD,EAAuB,CAAA;IAAI,CAAA;GACpE,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA6B,CAAA;IAAI,CAAA;GACjF,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA6B,CAAA;IAAI,CAAA;GACjF,kBAAC,GAAD;IAAO,MAAK;IAAkB,SAAS,kBAAC,GAAD,EAAqB,CAAA;IAAI,CAAA;GAChE,kBAAC,GAAD;IAAO,MAAK;IAAwB,SAAS,kBAAC,GAAD,EAA0B,CAAA;IAAI,CAAA;GAC3E,kBAAC,GAAD;IAAO,MAAK;IAA0B,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC/E,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAAwB,SAAS,kBAAC,GAAD,EAA2B,CAAA;IAAI,CAAA;GAC5E,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA+B,CAAA;IAAI,CAAA;GACpF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAqC,CAAA;IAC9C,CAAA;GACF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAwC,CAAA;IACjD,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAkC,CAAA;IAAI,CAAA;GAC1F,kBAAC,GAAD;IAAO,MAAK;IAA0B,SAAS,kBAAC,GAAD,EAA6B,CAAA;IAAI,CAAA;GAChF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD,EAAqC,CAAA;IAC9C,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,GAAD,EAAiC,CAAA;IAAI,CAAA;GACzF,kBAAC,GAAD;IAAO,MAAK;IAAgC,SAAS,kBAAC,GAAD,EAAkC,CAAA;IAAI,CAAA;GAC3F,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA4B,CAAA;IAAI,CAAA;GAC9E,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GAClF,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GACnF,kBAAC,GAAD;IAAO,MAAK;IAAyB,SAAS,kBAAC,GAAD,EAA2B,CAAA;IAAI,CAAA;GAC7E,kBAAC,GAAD;IAAO,MAAK;IAA4B,SAAS,kBAAC,GAAD,EAA8B,CAAA;IAAI,CAAA;GACnF,kBAAC,GAAD;IAAO,MAAK;IAAmB,SAAS,kBAAC,IAAD,EAAsB,CAAA;IAAI,CAAA;GAClE,kBAAC,GAAD;IAAO,MAAK;IAA2B,SAAS,kBAAC,IAAD,EAA6B,CAAA;IAAI,CAAA;GACjF,kBAAC,GAAD;IAAO,MAAK;IAA8B,SAAS,kBAAC,IAAD,EAAgC,CAAA;IAAI,CAAA;GACvF,kBAAC,GAAD;IAAO,MAAK;IAA+B,SAAS,kBAAC,IAAD,EAAiC,CAAA;IAAI,CAAA;GACxF,GAAiB,KAAK,CAAC,GAAM,OAC5B,kBAAC,GAAD;IAAkB,MAAM;IAAM,SAAS,kBAAC,GAAD;KAAc;KAAI,SAAA;KAAU,CAAA;IAAI,EAA3D,EAA2D,CACvE;GAEF,kBAAC,GAAD;IACE,MAAK;IACL,SAAS,kBAAC,GAAD;KAAU,IAAI;KAAqB,SAAA;KAAU,CAAA;IACtD,CAAA;GACF,kBAAC,GAAD;IAAO,MAAK;IAAI,SAAS,kBAAC,GAAD;KAAU,IAAG;KAAG,SAAA;KAAU,CAAA;IAAI,CAAA;GAChD,EAAA,CAAA;EACA,CAAA"}
@@ -1,6 +1,9 @@
1
1
  export interface EmployeeSkillsPanelProps {
2
2
  employeeId: string;
3
3
  }
4
+ export interface CandidateSkillsPanelProps {
5
+ candidateId: string;
6
+ }
4
7
  /**
5
8
  * Employee profile Skills tab (BOFF-3717, mock cf-03). Shows the employee's
6
9
  * canonical skills from the skills taxonomy with real proficiency bars.
@@ -9,4 +12,10 @@ export interface EmployeeSkillsPanelProps {
9
12
  * Typed names resolve through taxonomy aliases, so "ReactJS" lands on React.
10
13
  */
11
14
  export declare function EmployeeSkillsPanel({ employeeId }: EmployeeSkillsPanelProps): import("react").JSX.Element;
15
+ /**
16
+ * Candidate skill profile (BOFF-10361): the same canonical skills with
17
+ * proficiency for someone in the hiring pipeline, so matching sees what the
18
+ * recruiter recorded rather than free-text tags.
19
+ */
20
+ export declare function CandidateSkillsPanel({ candidateId }: CandidateSkillsPanelProps): import("react").JSX.Element;
12
21
  //# sourceMappingURL=EmployeeSkillsPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmployeeSkillsPanel.d.ts","sourceRoot":"","sources":["../../../src/crewfoundry/components/EmployeeSkillsPanel.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;CACpB;AAKD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,UAAU,EAAE,EAAE,wBAAwB,+BAiL3E"}
1
+ {"version":3,"file":"EmployeeSkillsPanel.d.ts","sourceRoot":"","sources":["../../../src/crewfoundry/components/EmployeeSkillsPanel.tsx"],"names":[],"mappings":"AAQA,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAcD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,UAAU,EAAE,EAAE,wBAAwB,+BAsB3E;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,WAAW,EAAE,EAAE,yBAAyB,+BAwB9E"}
@@ -2,167 +2,201 @@ import { useCrewFoundryStore as e } from "../store/crewfoundryStore.js";
2
2
  import { formatEnumLabel as t } from "../utils/formatEnumLabel.js";
3
3
  import { SkillBar as n } from "./viz/SkillBar.js";
4
4
  import "./viz/index.js";
5
- import { useEffect as r, useRef as i, useState as a } from "react";
6
- import { Plus as o, X as s } from "lucide-react";
7
- import { jsx as c, jsxs as l } from "react/jsx-runtime";
8
- import { Badge as u, Button as d, IllustratedEmptyState as f, Input as p, Label as m, Spinner as h } from "@burdenoff/fe-libs/ui";
9
- import { useGlobalUi as g } from "@burdenoff/fe-libs/shared/providers/shell";
5
+ import { useEffect as r, useMemo as i, useRef as a, useState as o } from "react";
6
+ import { Plus as s, X as c } from "lucide-react";
7
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
8
+ import { Badge as d, Button as f, IllustratedEmptyState as p, Input as m, Label as h, Spinner as g } from "@burdenoff/fe-libs/ui";
9
+ import { useGlobalUi as _ } from "@burdenoff/fe-libs/shared/providers/shell";
10
10
  //#region src/crewfoundry/components/EmployeeSkillsPanel.tsx
11
- var _ = [];
12
- function v({ employeeId: v }) {
13
- let { showToast: y } = g(), b = e((e) => e.employeeSkillProfiles[v]), x = e((e) => e.fetchEmployeeSkillProfile), S = e((e) => e.attachEmployeeSkill), C = e((e) => e.detachEmployeeSkill), [w, T] = a(""), [E, D] = a(""), [O, k] = a(!1), [A, j] = a(null), [M, N] = a(!1), P = i(null);
11
+ var v = [];
12
+ function y({ employeeId: t }) {
13
+ let n = e((e) => e.employeeSkillProfiles[t]), r = e((e) => e.fetchEmployeeSkillProfile), a = e((e) => e.attachEmployeeSkill), o = e((e) => e.detachEmployeeSkill);
14
+ return /* @__PURE__ */ l(x, {
15
+ holderId: t,
16
+ noun: "team member",
17
+ testId: "employee-skills-panel",
18
+ profile: i(() => n?.map((e) => ({
19
+ ...e,
20
+ provenance: e.verifiedFrom
21
+ })), [n]),
22
+ fetchProfile: r,
23
+ attach: (e, n) => a({
24
+ employeeId: t,
25
+ skillName: e,
26
+ proficiency: n
27
+ }),
28
+ detach: (e) => o(t, e)
29
+ });
30
+ }
31
+ function b({ candidateId: t }) {
32
+ let n = e((e) => e.candidateSkillProfiles[t]), r = e((e) => e.fetchCandidateSkillProfile), a = e((e) => e.attachCandidateSkill), o = e((e) => e.detachCandidateSkill);
33
+ return /* @__PURE__ */ l(x, {
34
+ holderId: t,
35
+ noun: "candidate",
36
+ testId: "candidate-skills-panel",
37
+ profile: i(() => n?.map((e) => ({
38
+ ...e,
39
+ provenance: e.source
40
+ })), [n]),
41
+ fetchProfile: r,
42
+ attach: (e, n) => a({
43
+ candidateId: t,
44
+ skillName: e,
45
+ proficiency: n
46
+ }),
47
+ detach: (e) => o(t, e)
48
+ });
49
+ }
50
+ function x({ holderId: e, noun: i, testId: y, profile: b, fetchProfile: x, attach: S, detach: C }) {
51
+ let { showToast: w } = _(), [T, E] = o(""), [D, O] = o(""), [k, A] = o(!1), [j, M] = o(null), [N, P] = o(!1), F = a(null);
14
52
  r(() => {
15
- P.current !== v && (P.current = v, x(v).catch((e) => {
16
- N(!0), y(e instanceof Error ? e.message : "Unable to load skills", "error");
53
+ F.current !== e && (F.current = e, x(e).catch((e) => {
54
+ P(!0), w(e instanceof Error ? e.message : "Unable to load skills", "error");
17
55
  }));
18
56
  }, [
19
- v,
57
+ e,
20
58
  x,
21
- y
59
+ w
22
60
  ]);
23
- let F = b ?? _, I = F.filter((e) => e.proficiency !== null), L = F.filter((e) => e.proficiency === null), R = async (e) => {
61
+ let I = b ?? v, L = I.filter((e) => e.proficiency !== null), R = I.filter((e) => e.proficiency === null), z = async (e) => {
24
62
  e.preventDefault();
25
- let t = w.trim();
63
+ let t = T.trim();
26
64
  if (!t) {
27
- y("Enter a skill name", "error");
65
+ w("Enter a skill name", "error");
28
66
  return;
29
67
  }
30
68
  let n = null;
31
- if (E.trim() !== "") {
32
- let e = Number(E);
69
+ if (D.trim() !== "") {
70
+ let e = Number(D);
33
71
  if (!Number.isInteger(e) || e < 0 || e > 100) {
34
- y("Proficiency must be a whole number from 0 to 100", "error");
72
+ w("Proficiency must be a whole number from 0 to 100", "error");
35
73
  return;
36
74
  }
37
75
  n = e;
38
76
  }
39
- k(!0);
77
+ A(!0);
40
78
  try {
41
- await S({
42
- employeeId: v,
43
- skillName: t,
44
- proficiency: n
45
- }), T(""), D(""), y("Skill saved", "success");
79
+ await S(t, n), E(""), O(""), w("Skill saved", "success");
46
80
  } catch (e) {
47
- y(e instanceof Error ? e.message : "Unable to add this skill", "error");
81
+ w(e instanceof Error ? e.message : "Unable to add this skill", "error");
48
82
  } finally {
49
- k(!1);
83
+ A(!1);
50
84
  }
51
- }, z = async (e, t) => {
52
- j(e);
85
+ }, B = async (e, t) => {
86
+ M(e);
53
87
  try {
54
- await C(v, e), y(`${t} removed`, "success");
88
+ await C(e), w(`${t} removed`, "success");
55
89
  } catch (e) {
56
- y(e instanceof Error ? e.message : "Unable to remove this skill", "error");
90
+ w(e instanceof Error ? e.message : "Unable to remove this skill", "error");
57
91
  } finally {
58
- j(null);
92
+ M(null);
59
93
  }
60
94
  };
61
- return /* @__PURE__ */ l("div", {
95
+ return /* @__PURE__ */ u("div", {
62
96
  className: "space-y-6",
63
- "data-testid": "employee-skills-panel",
64
- children: [b === void 0 && !M ? /* @__PURE__ */ c("div", {
97
+ "data-testid": y,
98
+ children: [b === void 0 && !N ? /* @__PURE__ */ l("div", {
65
99
  className: "flex justify-center py-8",
66
- children: /* @__PURE__ */ c(h, {})
67
- }) : F.length === 0 ? /* @__PURE__ */ c(f, {
100
+ children: /* @__PURE__ */ l(g, {})
101
+ }) : I.length === 0 ? /* @__PURE__ */ l(p, {
68
102
  illustration: "empty-data",
69
103
  title: "No skills recorded",
70
- description: "Add this team member's skills below. Names are matched to the CrewFoundry skills taxonomy, so spellings like ReactJS resolve to React."
71
- }) : /* @__PURE__ */ l("div", {
104
+ description: `Add this ${i}'s skills below. Names are matched to the CrewFoundry skills taxonomy, so spellings like ReactJS resolve to React.`
105
+ }) : /* @__PURE__ */ u("div", {
72
106
  className: "space-y-5",
73
- children: [I.length > 0 ? /* @__PURE__ */ c("ul", {
107
+ children: [L.length > 0 ? /* @__PURE__ */ l("ul", {
74
108
  className: "space-y-4",
75
109
  "aria-label": "Assessed skills",
76
- children: I.map((e) => /* @__PURE__ */ l("li", {
110
+ children: L.map((e) => /* @__PURE__ */ u("li", {
77
111
  className: "flex items-end gap-3",
78
112
  children: [
79
- /* @__PURE__ */ c(n, {
113
+ /* @__PURE__ */ l(n, {
80
114
  className: "flex-1",
81
115
  label: e.skill.name,
82
116
  value: e.proficiency ?? 0
83
117
  }),
84
- /* @__PURE__ */ c(u, {
118
+ /* @__PURE__ */ l(d, {
85
119
  variant: "secondary",
86
120
  className: "shrink-0 text-xs",
87
- children: t(e.verifiedFrom)
121
+ children: t(e.provenance)
88
122
  }),
89
- /* @__PURE__ */ c(d, {
123
+ /* @__PURE__ */ l(f, {
90
124
  size: "sm",
91
125
  variant: "ghost",
92
126
  "aria-label": `Remove ${e.skill.name}`,
93
- disabled: A === e.skillId,
94
- onClick: () => void z(e.skillId, e.skill.name),
95
- children: /* @__PURE__ */ c(s, { className: "h-3.5 w-3.5" })
127
+ disabled: j === e.skillId,
128
+ onClick: () => void B(e.skillId, e.skill.name),
129
+ children: /* @__PURE__ */ l(c, { className: "h-3.5 w-3.5" })
96
130
  })
97
131
  ]
98
132
  }, e.id))
99
- }) : null, L.length > 0 ? /* @__PURE__ */ l("div", {
133
+ }) : null, R.length > 0 ? /* @__PURE__ */ u("div", {
100
134
  className: "space-y-2",
101
- children: [/* @__PURE__ */ c("p", {
135
+ children: [/* @__PURE__ */ l("p", {
102
136
  className: "text-xs font-medium uppercase tracking-wide text-text-muted",
103
137
  children: "Proficiency not assessed yet"
104
- }), /* @__PURE__ */ c("ul", {
138
+ }), /* @__PURE__ */ l("ul", {
105
139
  className: "flex flex-wrap gap-2",
106
140
  "aria-label": "Skills without an assessed proficiency",
107
- children: L.map((e) => /* @__PURE__ */ l("li", {
141
+ children: R.map((e) => /* @__PURE__ */ u("li", {
108
142
  className: "inline-flex items-center gap-1 rounded-full border border-border-subtle bg-bg-surface py-1 pl-3 pr-1 text-xs text-text-primary",
109
- children: [/* @__PURE__ */ c("span", { children: e.skill.name }), /* @__PURE__ */ c("button", {
143
+ children: [/* @__PURE__ */ l("span", { children: e.skill.name }), /* @__PURE__ */ l("button", {
110
144
  type: "button",
111
145
  className: "rounded-full p-1 text-text-muted hover:bg-bg-sunken hover:text-text-primary disabled:opacity-50",
112
146
  "aria-label": `Remove ${e.skill.name}`,
113
- disabled: A === e.skillId,
114
- onClick: () => void z(e.skillId, e.skill.name),
115
- children: /* @__PURE__ */ c(s, { className: "h-3 w-3" })
147
+ disabled: j === e.skillId,
148
+ onClick: () => void B(e.skillId, e.skill.name),
149
+ children: /* @__PURE__ */ l(c, { className: "h-3 w-3" })
116
150
  })]
117
151
  }, e.id))
118
152
  })]
119
153
  }) : null]
120
- }), /* @__PURE__ */ l("form", {
154
+ }), /* @__PURE__ */ u("form", {
121
155
  className: "flex flex-col gap-3 border-t border-border-subtle pt-4 sm:flex-row sm:items-end",
122
- onSubmit: (e) => void R(e),
156
+ onSubmit: (e) => void z(e),
123
157
  "aria-label": "Add or update a skill",
124
158
  children: [
125
- /* @__PURE__ */ l("div", {
159
+ /* @__PURE__ */ u("div", {
126
160
  className: "flex flex-1 flex-col gap-1.5",
127
- children: [/* @__PURE__ */ c(m, {
128
- htmlFor: `skill-name-${v}`,
161
+ children: [/* @__PURE__ */ l(h, {
162
+ htmlFor: `skill-name-${e}`,
129
163
  children: "Skill"
130
- }), /* @__PURE__ */ c(p, {
131
- id: `skill-name-${v}`,
132
- value: w,
133
- disabled: O,
134
- onChange: (e) => T(e.target.value),
164
+ }), /* @__PURE__ */ l(m, {
165
+ id: `skill-name-${e}`,
166
+ value: T,
167
+ disabled: k,
168
+ onChange: (e) => E(e.target.value),
135
169
  placeholder: "e.g. Forklift Certification, Kubernetes, Site Safety"
136
170
  })]
137
171
  }),
138
- /* @__PURE__ */ l("div", {
172
+ /* @__PURE__ */ u("div", {
139
173
  className: "flex flex-col gap-1.5 sm:w-36",
140
- children: [/* @__PURE__ */ c(m, {
141
- htmlFor: `skill-proficiency-${v}`,
174
+ children: [/* @__PURE__ */ l(h, {
175
+ htmlFor: `skill-proficiency-${e}`,
142
176
  children: "Proficiency %"
143
- }), /* @__PURE__ */ c(p, {
144
- id: `skill-proficiency-${v}`,
177
+ }), /* @__PURE__ */ l(m, {
178
+ id: `skill-proficiency-${e}`,
145
179
  type: "number",
146
180
  inputMode: "numeric",
147
181
  min: 0,
148
182
  max: 100,
149
183
  step: 1,
150
- value: E,
151
- disabled: O,
152
- onChange: (e) => D(e.target.value),
184
+ value: D,
185
+ disabled: k,
186
+ onChange: (e) => O(e.target.value),
153
187
  placeholder: "0-100"
154
188
  })]
155
189
  }),
156
- /* @__PURE__ */ l(d, {
190
+ /* @__PURE__ */ u(f, {
157
191
  type: "submit",
158
- disabled: O,
159
- children: [/* @__PURE__ */ c(o, { className: "mr-1.5 h-3.5 w-3.5" }), O ? "Saving…" : "Save skill"]
192
+ disabled: k,
193
+ children: [/* @__PURE__ */ l(s, { className: "mr-1.5 h-3.5 w-3.5" }), k ? "Saving…" : "Save skill"]
160
194
  })
161
195
  ]
162
196
  })]
163
197
  });
164
198
  }
165
199
  //#endregion
166
- export { v as EmployeeSkillsPanel };
200
+ export { b as CandidateSkillsPanel, y as EmployeeSkillsPanel };
167
201
 
168
202
  //# sourceMappingURL=EmployeeSkillsPanel.js.map