@burdenoff/microfe-crewfoundry 2026.1030.4 → 2026.1102.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/crewfoundry/CrewFoundryRoot.d.ts.map +1 -1
- package/dist/crewfoundry/CrewFoundryRoot.js +14 -0
- package/dist/crewfoundry/CrewFoundryRoot.js.map +1 -1
- package/dist/crewfoundry/CrewFoundryRoutes.d.ts.map +1 -1
- package/dist/crewfoundry/CrewFoundryRoutes.js +27 -19
- package/dist/crewfoundry/CrewFoundryRoutes.js.map +1 -1
- package/dist/crewfoundry/components/field/DispatchBoardCard.d.ts +13 -0
- package/dist/crewfoundry/components/field/DispatchBoardCard.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/DispatchBoardCard.js +124 -0
- package/dist/crewfoundry/components/field/DispatchBoardCard.js.map +1 -0
- package/dist/crewfoundry/components/field/FieldBadges.d.ts +12 -0
- package/dist/crewfoundry/components/field/FieldBadges.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/FieldBadges.js +45 -0
- package/dist/crewfoundry/components/field/FieldBadges.js.map +1 -0
- package/dist/crewfoundry/components/field/MyDispatchItem.d.ts +12 -0
- package/dist/crewfoundry/components/field/MyDispatchItem.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/MyDispatchItem.js +46 -0
- package/dist/crewfoundry/components/field/MyDispatchItem.js.map +1 -0
- package/dist/crewfoundry/components/field/MyShiftItem.d.ts +14 -0
- package/dist/crewfoundry/components/field/MyShiftItem.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/MyShiftItem.js +84 -0
- package/dist/crewfoundry/components/field/MyShiftItem.js.map +1 -0
- package/dist/crewfoundry/components/field/ShiftsCard.d.ts +12 -0
- package/dist/crewfoundry/components/field/ShiftsCard.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/ShiftsCard.js +84 -0
- package/dist/crewfoundry/components/field/ShiftsCard.js.map +1 -0
- package/dist/crewfoundry/components/field/fieldFormat.d.ts +8 -0
- package/dist/crewfoundry/components/field/fieldFormat.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/fieldFormat.js +15 -0
- package/dist/crewfoundry/components/field/fieldFormat.js.map +1 -0
- package/dist/crewfoundry/components/field/fieldForms.d.ts +19 -0
- package/dist/crewfoundry/components/field/fieldForms.d.ts.map +1 -0
- package/dist/crewfoundry/components/field/fieldForms.js +223 -0
- package/dist/crewfoundry/components/field/fieldForms.js.map +1 -0
- package/dist/crewfoundry/components/forms/FormModal.d.ts +1 -1
- package/dist/crewfoundry/components/forms/FormModal.d.ts.map +1 -1
- package/dist/crewfoundry/components/forms/FormModal.js +1 -1
- package/dist/crewfoundry/components/forms/FormModal.js.map +1 -1
- package/dist/crewfoundry/lib/fieldOps.d.ts +105 -0
- package/dist/crewfoundry/lib/fieldOps.d.ts.map +1 -0
- package/dist/crewfoundry/lib/fieldOps.js +85 -0
- package/dist/crewfoundry/lib/fieldOps.js.map +1 -0
- package/dist/crewfoundry/lib/useFieldOpsData.d.ts +14 -0
- package/dist/crewfoundry/lib/useFieldOpsData.d.ts.map +1 -0
- package/dist/crewfoundry/lib/useFieldOpsData.js +31 -0
- package/dist/crewfoundry/lib/useFieldOpsData.js.map +1 -0
- package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.d.ts +8 -0
- package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.d.ts.map +1 -1
- package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js +468 -212
- package/dist/crewfoundry/pages/DashboardExecutiveDashboardPage.js.map +1 -1
- package/dist/crewfoundry/pages/FieldMyWorkPagePage.d.ts +9 -0
- package/dist/crewfoundry/pages/FieldMyWorkPagePage.d.ts.map +1 -0
- package/dist/crewfoundry/pages/FieldMyWorkPagePage.js +141 -0
- package/dist/crewfoundry/pages/FieldMyWorkPagePage.js.map +1 -0
- package/dist/crewfoundry/pages/FieldOperationsPagePage.d.ts +9 -0
- package/dist/crewfoundry/pages/FieldOperationsPagePage.d.ts.map +1 -0
- package/dist/crewfoundry/pages/FieldOperationsPagePage.js +231 -0
- package/dist/crewfoundry/pages/FieldOperationsPagePage.js.map +1 -0
- package/dist/crewfoundry/pages/HiringCandidatesPagePage.js +24 -24
- package/dist/crewfoundry/pages/HrEmployeeProfilePagePage.js +4 -4
- package/dist/crewfoundry/store/crewfoundryStore.d.ts +47 -1
- package/dist/crewfoundry/store/crewfoundryStore.d.ts.map +1 -1
- package/dist/crewfoundry/store/crewfoundryStore.js +93 -66
- package/dist/crewfoundry/store/crewfoundryStore.js.map +1 -1
- package/dist/crewfoundry/store/fieldOpsStore.d.ts +76 -0
- package/dist/crewfoundry/store/fieldOpsStore.d.ts.map +1 -0
- package/dist/crewfoundry/store/fieldOpsStore.js +188 -0
- package/dist/crewfoundry/store/fieldOpsStore.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrewFoundryRoot.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAKhC,OAAO,KAAK,EAAE,oBAAoB,EAAW,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"CrewFoundryRoot.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoot.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAKhC,OAAO,KAAK,EAAE,oBAAoB,EAAW,MAAM,SAAS,CAAC;AA2V7D,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CA2EpD,CAAC"}
|
|
@@ -105,6 +105,20 @@ var f = (e, n) => [
|
|
|
105
105
|
}
|
|
106
106
|
]
|
|
107
107
|
},
|
|
108
|
+
{
|
|
109
|
+
id: "crewfoundry-field",
|
|
110
|
+
label: n("crewfoundry.nav.field", "Field Ops"),
|
|
111
|
+
path: a(e, "field/my-work-page"),
|
|
112
|
+
children: [{
|
|
113
|
+
id: "crewfoundry-field-my-work",
|
|
114
|
+
label: n("crewfoundry.nav.fieldMyWork", "My Field Work"),
|
|
115
|
+
path: a(e, "field/my-work-page")
|
|
116
|
+
}, {
|
|
117
|
+
id: "crewfoundry-field-dispatch",
|
|
118
|
+
label: n("crewfoundry.nav.fieldDispatch", "Dispatch Board"),
|
|
119
|
+
path: a(e, "field/operations-page")
|
|
120
|
+
}]
|
|
121
|
+
},
|
|
108
122
|
{
|
|
109
123
|
id: "crewfoundry-learning",
|
|
110
124
|
label: n("crewfoundry.nav.learning", "Learning"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrewFoundryRoot.js","names":[],"sources":["../../src/crewfoundry/CrewFoundryRoot.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useEffect } from 'react';\nimport { FileText, Folder, LayoutDashboard } from 'lucide-react';\nimport { CrewFoundryProvider } from './providers/CrewFoundryProvider';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport type { CrewFoundryRootProps, NavItem } from './types';\nimport { CrewFoundryRoutes } from './CrewFoundryRoutes';\nimport { CONVERSATIONS_ROUTE, useCrewFoundryStore } from './store/crewfoundryStore';\nimport { useTr } from '../shared/hooks/useTr';\nimport { joinPath } from './utils/navigation';\n\ntype NavLeaf = {\n id: string;\n label: string;\n path: string;\n};\n\ntype NavSection = {\n id: string;\n label: string;\n path: string;\n children: NavLeaf[];\n};\n\nconst buildSections = (\n basePath: string,\n tr: (key: string, fallback: string) => string\n): NavSection[] => [\n {\n id: 'crewfoundry-dashboard',\n label: tr('crewfoundry.nav.dashboard', 'Dashboard'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n children: [\n {\n id: 'crewfoundry-dashboard-overview',\n label: tr('crewfoundry.nav.dashboardOverview', 'Overview'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n },\n {\n id: 'crewfoundry-dashboard-analytics',\n label: tr('crewfoundry.nav.dashboardAnalytics', 'Analytics'),\n path: joinPath(basePath, 'dashboard/analytics-page'),\n },\n {\n id: 'crewfoundry-dashboard-enhanced',\n label: tr('crewfoundry.nav.dashboardEnhanced', 'Enhanced Dashboard'),\n path: joinPath(basePath, 'dashboard/enhanced-dashboard-page'),\n },\n {\n id: 'crewfoundry-dashboard-executive',\n label: tr('crewfoundry.nav.dashboardExecutive', 'Executive Dashboard'),\n path: joinPath(basePath, 'dashboard/executive-dashboard'),\n },\n ],\n },\n {\n id: 'crewfoundry-hiring',\n label: tr('crewfoundry.nav.hiring', 'Hiring'),\n path: joinPath(basePath, 'hiring/jobs-page'),\n children: [\n {\n id: 'crewfoundry-hiring-jobs',\n label: tr('crewfoundry.nav.hiringJobs', 'Jobs'),\n path: joinPath(basePath, 'hiring/jobs-page'),\n },\n {\n id: 'crewfoundry-hiring-applications',\n label: tr('crewfoundry.nav.hiringApplications', 'Applications'),\n path: joinPath(basePath, 'hiring/applications-page'),\n },\n {\n id: 'crewfoundry-hiring-candidates',\n label: tr('crewfoundry.nav.hiringCandidates', 'Candidates'),\n path: joinPath(basePath, 'hiring/candidates-page'),\n },\n {\n id: 'crewfoundry-hiring-interviews',\n label: tr('crewfoundry.nav.hiringInterviews', 'Interviews'),\n path: joinPath(basePath, 'hiring/interviews-page'),\n },\n {\n id: 'crewfoundry-hiring-create-job',\n label: tr('crewfoundry.nav.hiringCreateJob', 'Create Job'),\n path: joinPath(basePath, 'hiring/create-job-page'),\n },\n {\n id: 'crewfoundry-hiring-job-details',\n label: tr('crewfoundry.nav.hiringJobDetails', 'Job Details'),\n path: joinPath(basePath, 'hiring/job-details-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-hr',\n label: tr('crewfoundry.nav.hr', 'HR'),\n path: joinPath(basePath, 'hr/employees-page'),\n children: [\n {\n id: 'crewfoundry-hr-employees',\n label: tr('crewfoundry.nav.hrEmployees', 'Employees'),\n path: joinPath(basePath, 'hr/employees-page'),\n },\n {\n id: 'crewfoundry-hr-departments',\n label: tr('crewfoundry.nav.hrDepartments', 'Departments'),\n path: joinPath(basePath, 'hr/departments-page'),\n },\n {\n id: 'crewfoundry-hr-payroll',\n label: tr('crewfoundry.nav.hrPayroll', 'Payroll'),\n path: joinPath(basePath, 'hr/payroll-page'),\n },\n {\n id: 'crewfoundry-hr-leave',\n label: tr('crewfoundry.nav.hrLeaveManagement', 'Leave Management'),\n path: joinPath(basePath, 'hr/leave-management-page'),\n },\n {\n id: 'crewfoundry-hr-time',\n label: tr('crewfoundry.nav.hrTimeTracking', 'Time Tracking'),\n path: joinPath(basePath, 'hr/time-tracking-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-learning',\n label: tr('crewfoundry.nav.learning', 'Learning'),\n path: joinPath(basePath, 'learning/courses-page'),\n children: [\n {\n id: 'crewfoundry-learning-courses',\n label: tr('crewfoundry.nav.learningCourses', 'Courses'),\n path: joinPath(basePath, 'learning/courses-page'),\n },\n {\n id: 'crewfoundry-learning-enrollments',\n label: tr('crewfoundry.nav.learningEnrollments', 'Enrollments'),\n path: joinPath(basePath, 'learning/enrollments-page'),\n },\n {\n id: 'crewfoundry-learning-analytics',\n label: tr('crewfoundry.nav.learningCompletion', 'Completion'),\n path: joinPath(basePath, 'learning/learning-analytics-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-teams',\n label: tr('crewfoundry.nav.teams', 'Teams'),\n path: joinPath(basePath, 'teams/teams-page'),\n children: [\n {\n id: 'crewfoundry-teams-list',\n label: tr('crewfoundry.nav.teamsList', 'Teams'),\n path: joinPath(basePath, 'teams/teams-page'),\n },\n {\n id: 'crewfoundry-teams-directory',\n label: tr('crewfoundry.nav.teamsDirectory', 'Directory'),\n path: joinPath(basePath, 'teams/team-directory-page'),\n },\n {\n id: 'crewfoundry-teams-detail',\n label: tr('crewfoundry.nav.teamsDetail', 'Team Detail'),\n path: joinPath(basePath, 'teams/team-detail-page'),\n },\n {\n id: 'crewfoundry-teams-analytics',\n label: tr('crewfoundry.nav.teamsAnalytics', 'Team Analytics'),\n path: joinPath(basePath, 'teams/team-analytics-page'),\n },\n {\n id: 'crewfoundry-teams-settings',\n label: tr('crewfoundry.nav.teamsSettings', 'Team Settings'),\n path: joinPath(basePath, 'teams/team-settings-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-marketplace',\n label: tr('crewfoundry.nav.marketplace', 'Marketplace'),\n path: joinPath(basePath, 'marketplace/marketplace-page'),\n children: [\n {\n id: 'crewfoundry-marketplace-browse',\n label: tr('crewfoundry.nav.marketplaceBrowse', 'Browse Services'),\n path: joinPath(basePath, 'marketplace/marketplace-page'),\n },\n {\n id: 'crewfoundry-marketplace-my-services',\n label: tr('crewfoundry.nav.marketplaceMyServices', 'My Services'),\n path: joinPath(basePath, 'marketplace/my-services-page'),\n },\n {\n id: 'crewfoundry-marketplace-bookings',\n label: tr('crewfoundry.nav.marketplaceBookings', 'Bookings'),\n path: joinPath(basePath, 'marketplace/booking-management-page'),\n },\n {\n id: 'crewfoundry-marketplace-escrow',\n label: tr('crewfoundry.nav.marketplaceEscrow', 'Escrow Ledger'),\n path: joinPath(basePath, 'marketplace/escrow-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-communications',\n label: tr('crewfoundry.nav.communications', 'Communications'),\n path: joinPath(basePath, 'communications/announcements-page'),\n children: [\n {\n id: 'crewfoundry-communications-announcements',\n label: tr('crewfoundry.nav.communicationsAnnouncements', 'Announcements'),\n path: joinPath(basePath, 'communications/announcements-page'),\n },\n {\n // Shell-level route of the shared Conversations app, not a module page.\n id: 'crewfoundry-communications-conversations',\n label: tr('crewfoundry.nav.communicationsConversations', 'Conversations'),\n path: CONVERSATIONS_ROUTE,\n },\n {\n id: 'crewfoundry-communications-files',\n label: tr('crewfoundry.nav.communicationsFiles', 'Files'),\n path: joinPath(basePath, 'communications/files-page'),\n },\n {\n id: 'crewfoundry-communications-directory',\n label: tr('crewfoundry.nav.communicationsDirectory', 'Directory'),\n path: joinPath(basePath, 'communications/directory-page'),\n },\n {\n id: 'crewfoundry-communications-teams',\n label: tr('crewfoundry.nav.communicationsTeams', 'Teams'),\n path: joinPath(basePath, 'communications/teams-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-projects',\n label: tr('crewfoundry.nav.projects', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n children: [\n {\n id: 'crewfoundry-projects-list',\n label: tr('crewfoundry.nav.projectsList', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n },\n {\n id: 'crewfoundry-projects-create',\n label: tr('crewfoundry.nav.projectsCreate', 'Create Project'),\n path: joinPath(basePath, 'projects/create-project-page'),\n },\n {\n id: 'crewfoundry-projects-details',\n label: tr('crewfoundry.nav.projectsDetails', 'Project Details'),\n path: joinPath(basePath, 'projects/project-details-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-company',\n label: tr('crewfoundry.nav.company', 'Company'),\n path: joinPath(basePath, 'company/company-dashboard-page'),\n children: [\n {\n id: 'crewfoundry-company-dashboard',\n label: tr('crewfoundry.nav.companyDashboard', 'Company Dashboard'),\n path: joinPath(basePath, 'company/company-dashboard-page'),\n },\n {\n id: 'crewfoundry-company-clients',\n label: tr('crewfoundry.nav.companyClientManagement', 'Client Management'),\n path: joinPath(basePath, 'company/client-management-page'),\n },\n {\n id: 'crewfoundry-company-vendors',\n label: tr('crewfoundry.nav.companyVendorManagement', 'Vendor Management'),\n path: joinPath(basePath, 'company/vendor-management-page'),\n },\n {\n id: 'crewfoundry-company-profile',\n label: tr('crewfoundry.nav.companyProfile', 'Company Profile'),\n path: joinPath(basePath, 'company/company-profile-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-analytics',\n label: tr('crewfoundry.nav.analytics', 'Analytics'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n children: [\n {\n id: 'crewfoundry-analytics-overview',\n label: tr('crewfoundry.nav.analyticsOverview', 'Overview'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-employee',\n label: tr('crewfoundry.nav.analyticsEmployee', 'Employee Analytics'),\n path: joinPath(basePath, 'analytics/employee-analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-financial',\n label: tr('crewfoundry.nav.analyticsFinancial', 'Financial Analytics'),\n path: joinPath(basePath, 'analytics/financial-analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-hiring',\n label: tr('crewfoundry.nav.analyticsHiring', 'Hiring Analytics'),\n path: joinPath(basePath, 'analytics/hiring-analytics-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-help',\n label: tr('crewfoundry.nav.help', 'Help'),\n path: joinPath(basePath, 'help/api-documentation-page'),\n children: [\n {\n id: 'crewfoundry-help-api',\n label: tr('crewfoundry.nav.helpApiDocumentation', 'API Documentation'),\n path: joinPath(basePath, 'help/api-documentation-page'),\n },\n ],\n },\n];\n\n/** Human label for the signed-in actor, used as the default provider/client name. */\nconst actorDisplayName = (user: CrewFoundryRootProps['currentUser']): string | undefined => {\n if (!user) return undefined;\n const full = [user.firstName, user.lastName].filter(Boolean).join(' ').trim();\n return user.name?.trim() || full || user.username || user.email || undefined;\n};\n\nexport const CrewFoundryRoot: FC<CrewFoundryRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const initializeData = useCrewFoundryStore((state) => state.initializeData);\n const tr = useTr();\n const actorName = actorDisplayName(props.currentUser);\n\n useEffect(() => {\n void initializeData({\n workspaceId: props.workspaceId,\n authToken: props.authToken,\n apiGatewayUrl: props.apiGatewayUrl,\n actorId: props.currentUser?.id,\n actorName,\n });\n }, [\n initializeData,\n props.workspaceId,\n props.authToken,\n props.apiGatewayUrl,\n props.currentUser?.id,\n actorName,\n ]);\n\n useEffect(() => {\n if (!registerNavItems) {\n return;\n }\n\n const navItem: NavItem = {\n id: 'crewfoundry',\n label: tr('crewfoundry.nav.product', 'CrewFoundry'),\n path: basePath,\n icon: <LayoutDashboard size={20} />,\n order: 80,\n group: 'products',\n children: buildSections(basePath, tr).map((section) => ({\n id: section.id,\n label: section.label,\n path: section.path,\n icon: <Folder size={16} />,\n children: section.children.map((child) => ({\n id: child.id,\n label: child.label,\n path: child.path,\n icon: <FileText size={16} />,\n })),\n })),\n };\n\n return registerNavItems(navItem);\n }, [registerNavItems, basePath, tr]);\n\n useEffect(() => {\n if (!registerFooterItems) {\n return;\n }\n\n return registerFooterItems([\n {\n id: 'crewfoundry-status',\n label: tr('crewfoundry.nav.footerStatus', 'CrewFoundry Ready'),\n type: 'status',\n section: 'left',\n order: 10,\n },\n ]);\n }, [registerFooterItems, tr]);\n\n return (\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <CrewFoundryProvider {...props}>\n <CrewFoundryRoutes />\n </CrewFoundryProvider>\n </FeatureFlagProvider>\n );\n};\n"],"mappings":";;;;;;;;;;AAwBA,IAAM,KACJ,GACA,MACiB;CACjB;EACE,IAAI;EACJ,OAAO,EAAG,6BAA6B,YAAY;EACnD,MAAM,EAAS,GAAU,2BAA2B;EACpD,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,WAAW;IAC1D,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,sCAAsC,YAAY;IAC5D,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,qBAAqB;IACpE,MAAM,EAAS,GAAU,oCAAoC;IAC9D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,sCAAsC,sBAAsB;IACtE,MAAM,EAAS,GAAU,gCAAgC;IAC1D;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,0BAA0B,SAAS;EAC7C,MAAM,EAAS,GAAU,mBAAmB;EAC5C,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,8BAA8B,OAAO;IAC/C,MAAM,EAAS,GAAU,mBAAmB;IAC7C;GACD;IACE,IAAI;IACJ,OAAO,EAAG,sCAAsC,eAAe;IAC/D,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,oCAAoC,aAAa;IAC3D,MAAM,EAAS,GAAU,yBAAyB;IACnD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,oCAAoC,aAAa;IAC3D,MAAM,EAAS,GAAU,yBAAyB;IACnD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,mCAAmC,aAAa;IAC1D,MAAM,EAAS,GAAU,yBAAyB;IACnD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,oCAAoC,cAAc;IAC5D,MAAM,EAAS,GAAU,0BAA0B;IACpD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,sBAAsB,KAAK;EACrC,MAAM,EAAS,GAAU,oBAAoB;EAC7C,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,+BAA+B,YAAY;IACrD,MAAM,EAAS,GAAU,oBAAoB;IAC9C;GACD;IACE,IAAI;IACJ,OAAO,EAAG,iCAAiC,cAAc;IACzD,MAAM,EAAS,GAAU,sBAAsB;IAChD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,6BAA6B,UAAU;IACjD,MAAM,EAAS,GAAU,kBAAkB;IAC5C;GACD;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,mBAAmB;IAClE,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,kCAAkC,gBAAgB;IAC5D,MAAM,EAAS,GAAU,wBAAwB;IAClD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,4BAA4B,WAAW;EACjD,MAAM,EAAS,GAAU,wBAAwB;EACjD,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,mCAAmC,UAAU;IACvD,MAAM,EAAS,GAAU,wBAAwB;IAClD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,uCAAuC,cAAc;IAC/D,MAAM,EAAS,GAAU,4BAA4B;IACtD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,sCAAsC,aAAa;IAC7D,MAAM,EAAS,GAAU,mCAAmC;IAC7D;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,yBAAyB,QAAQ;EAC3C,MAAM,EAAS,GAAU,mBAAmB;EAC5C,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,6BAA6B,QAAQ;IAC/C,MAAM,EAAS,GAAU,mBAAmB;IAC7C;GACD;IACE,IAAI;IACJ,OAAO,EAAG,kCAAkC,YAAY;IACxD,MAAM,EAAS,GAAU,4BAA4B;IACtD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,+BAA+B,cAAc;IACvD,MAAM,EAAS,GAAU,yBAAyB;IACnD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,kCAAkC,iBAAiB;IAC7D,MAAM,EAAS,GAAU,4BAA4B;IACtD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,iCAAiC,gBAAgB;IAC3D,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,+BAA+B,cAAc;EACvD,MAAM,EAAS,GAAU,+BAA+B;EACxD,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,kBAAkB;IACjE,MAAM,EAAS,GAAU,+BAA+B;IACzD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,yCAAyC,cAAc;IACjE,MAAM,EAAS,GAAU,+BAA+B;IACzD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,uCAAuC,WAAW;IAC5D,MAAM,EAAS,GAAU,sCAAsC;IAChE;GACD;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,gBAAgB;IAC/D,MAAM,EAAS,GAAU,0BAA0B;IACpD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,kCAAkC,iBAAiB;EAC7D,MAAM,EAAS,GAAU,oCAAoC;EAC7D,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,+CAA+C,gBAAgB;IACzE,MAAM,EAAS,GAAU,oCAAoC;IAC9D;GACD;IAEE,IAAI;IACJ,OAAO,EAAG,+CAA+C,gBAAgB;IACzE,MAAM;IACP;GACD;IACE,IAAI;IACJ,OAAO,EAAG,uCAAuC,QAAQ;IACzD,MAAM,EAAS,GAAU,4BAA4B;IACtD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,2CAA2C,YAAY;IACjE,MAAM,EAAS,GAAU,gCAAgC;IAC1D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,uCAAuC,QAAQ;IACzD,MAAM,EAAS,GAAU,4BAA4B;IACtD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,4BAA4B,WAAW;EACjD,MAAM,EAAS,GAAU,yBAAyB;EAClD,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,gCAAgC,WAAW;IACrD,MAAM,EAAS,GAAU,yBAAyB;IACnD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,kCAAkC,iBAAiB;IAC7D,MAAM,EAAS,GAAU,+BAA+B;IACzD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,mCAAmC,kBAAkB;IAC/D,MAAM,EAAS,GAAU,gCAAgC;IAC1D;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,2BAA2B,UAAU;EAC/C,MAAM,EAAS,GAAU,iCAAiC;EAC1D,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,oCAAoC,oBAAoB;IAClE,MAAM,EAAS,GAAU,iCAAiC;IAC3D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,2CAA2C,oBAAoB;IACzE,MAAM,EAAS,GAAU,iCAAiC;IAC3D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,2CAA2C,oBAAoB;IACzE,MAAM,EAAS,GAAU,iCAAiC;IAC3D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,kCAAkC,kBAAkB;IAC9D,MAAM,EAAS,GAAU,+BAA+B;IACzD;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,6BAA6B,YAAY;EACnD,MAAM,EAAS,GAAU,2BAA2B;EACpD,UAAU;GACR;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,WAAW;IAC1D,MAAM,EAAS,GAAU,2BAA2B;IACrD;GACD;IACE,IAAI;IACJ,OAAO,EAAG,qCAAqC,qBAAqB;IACpE,MAAM,EAAS,GAAU,oCAAoC;IAC9D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,sCAAsC,sBAAsB;IACtE,MAAM,EAAS,GAAU,qCAAqC;IAC/D;GACD;IACE,IAAI;IACJ,OAAO,EAAG,mCAAmC,mBAAmB;IAChE,MAAM,EAAS,GAAU,kCAAkC;IAC5D;GACF;EACF;CACD;EACE,IAAI;EACJ,OAAO,EAAG,wBAAwB,OAAO;EACzC,MAAM,EAAS,GAAU,8BAA8B;EACvD,UAAU,CACR;GACE,IAAI;GACJ,OAAO,EAAG,wCAAwC,oBAAoB;GACtE,MAAM,EAAS,GAAU,8BAA8B;GACxD,CACF;EACF;CACF,EAGK,KAAoB,MAAkE;AAC1F,KAAI,CAAC,EAAM;CACX,IAAM,IAAO,CAAC,EAAK,WAAW,EAAK,SAAS,CAAC,OAAO,QAAQ,CAAC,KAAK,IAAI,CAAC,MAAM;AAC7E,QAAO,EAAK,MAAM,MAAM,IAAI,KAAQ,EAAK,YAAY,EAAK,SAAS,KAAA;GAGxD,KAA6C,MAAU;CAClE,IAAM,EAAE,qBAAkB,wBAAqB,cAAW,QAAQ,GAC5D,IAAiB,GAAqB,MAAU,EAAM,eAAe,EACrE,IAAK,GAAO,EACZ,IAAY,EAAiB,EAAM,YAAY;AAgErD,QA9DA,QAAgB;AACT,IAAe;GAClB,aAAa,EAAM;GACnB,WAAW,EAAM;GACjB,eAAe,EAAM;GACrB,SAAS,EAAM,aAAa;GAC5B;GACD,CAAC;IACD;EACD;EACA,EAAM;EACN,EAAM;EACN,EAAM;EACN,EAAM,aAAa;EACnB;EACD,CAAC,EAEF,QAAgB;AACT,QAyBL,QAAO,EArBkB;GACvB,IAAI;GACJ,OAAO,EAAG,2BAA2B,cAAc;GACnD,MAAM;GACN,MAAM,kBAAC,GAAD,EAAiB,MAAM,IAAM,CAAA;GACnC,OAAO;GACP,OAAO;GACP,UAAU,EAAc,GAAU,EAAG,CAAC,KAAK,OAAa;IACtD,IAAI,EAAQ;IACZ,OAAO,EAAQ;IACf,MAAM,EAAQ;IACd,MAAM,kBAAC,GAAD,EAAQ,MAAM,IAAM,CAAA;IAC1B,UAAU,EAAQ,SAAS,KAAK,OAAW;KACzC,IAAI,EAAM;KACV,OAAO,EAAM;KACb,MAAM,EAAM;KACZ,MAAM,kBAAC,GAAD,EAAU,MAAM,IAAM,CAAA;KAC7B,EAAE;IACJ,EAAE;GACJ,CAE+B;IAC/B;EAAC;EAAkB;EAAU;EAAG,CAAC,EAEpC,QAAgB;AACT,QAIL,QAAO,EAAoB,CACzB;GACE,IAAI;GACJ,OAAO,EAAG,gCAAgC,oBAAoB;GAC9D,MAAM;GACN,SAAS;GACT,OAAO;GACR,CACF,CAAC;IACD,CAAC,GAAqB,EAAG,CAAC,EAG3B,kBAAC,GAAD;EAAqB,aAAa;EAAM,SAAQ;EAAS,gBAAgB;YACvE,kBAAC,GAAD;GAAqB,GAAI;aACvB,kBAAC,GAAD,EAAqB,CAAA;GACD,CAAA;EACF,CAAA"}
|
|
1
|
+
{"version":3,"file":"CrewFoundryRoot.js","names":[],"sources":["../../src/crewfoundry/CrewFoundryRoot.tsx"],"sourcesContent":["import type { FC } from 'react';\nimport { useEffect } from 'react';\nimport { FileText, Folder, LayoutDashboard } from 'lucide-react';\nimport { CrewFoundryProvider } from './providers/CrewFoundryProvider';\nimport { FeatureFlagProvider } from '@burdenoff/fe-libs/shared/feature-flags';\nimport type { CrewFoundryRootProps, NavItem } from './types';\nimport { CrewFoundryRoutes } from './CrewFoundryRoutes';\nimport { CONVERSATIONS_ROUTE, useCrewFoundryStore } from './store/crewfoundryStore';\nimport { useTr } from '../shared/hooks/useTr';\nimport { joinPath } from './utils/navigation';\n\ntype NavLeaf = {\n id: string;\n label: string;\n path: string;\n};\n\ntype NavSection = {\n id: string;\n label: string;\n path: string;\n children: NavLeaf[];\n};\n\nconst buildSections = (\n basePath: string,\n tr: (key: string, fallback: string) => string\n): NavSection[] => [\n {\n id: 'crewfoundry-dashboard',\n label: tr('crewfoundry.nav.dashboard', 'Dashboard'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n children: [\n {\n id: 'crewfoundry-dashboard-overview',\n label: tr('crewfoundry.nav.dashboardOverview', 'Overview'),\n path: joinPath(basePath, 'dashboard/dashboard-page'),\n },\n {\n id: 'crewfoundry-dashboard-analytics',\n label: tr('crewfoundry.nav.dashboardAnalytics', 'Analytics'),\n path: joinPath(basePath, 'dashboard/analytics-page'),\n },\n {\n id: 'crewfoundry-dashboard-enhanced',\n label: tr('crewfoundry.nav.dashboardEnhanced', 'Enhanced Dashboard'),\n path: joinPath(basePath, 'dashboard/enhanced-dashboard-page'),\n },\n {\n id: 'crewfoundry-dashboard-executive',\n label: tr('crewfoundry.nav.dashboardExecutive', 'Executive Dashboard'),\n path: joinPath(basePath, 'dashboard/executive-dashboard'),\n },\n ],\n },\n {\n id: 'crewfoundry-hiring',\n label: tr('crewfoundry.nav.hiring', 'Hiring'),\n path: joinPath(basePath, 'hiring/jobs-page'),\n children: [\n {\n id: 'crewfoundry-hiring-jobs',\n label: tr('crewfoundry.nav.hiringJobs', 'Jobs'),\n path: joinPath(basePath, 'hiring/jobs-page'),\n },\n {\n id: 'crewfoundry-hiring-applications',\n label: tr('crewfoundry.nav.hiringApplications', 'Applications'),\n path: joinPath(basePath, 'hiring/applications-page'),\n },\n {\n id: 'crewfoundry-hiring-candidates',\n label: tr('crewfoundry.nav.hiringCandidates', 'Candidates'),\n path: joinPath(basePath, 'hiring/candidates-page'),\n },\n {\n id: 'crewfoundry-hiring-interviews',\n label: tr('crewfoundry.nav.hiringInterviews', 'Interviews'),\n path: joinPath(basePath, 'hiring/interviews-page'),\n },\n {\n id: 'crewfoundry-hiring-create-job',\n label: tr('crewfoundry.nav.hiringCreateJob', 'Create Job'),\n path: joinPath(basePath, 'hiring/create-job-page'),\n },\n {\n id: 'crewfoundry-hiring-job-details',\n label: tr('crewfoundry.nav.hiringJobDetails', 'Job Details'),\n path: joinPath(basePath, 'hiring/job-details-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-hr',\n label: tr('crewfoundry.nav.hr', 'HR'),\n path: joinPath(basePath, 'hr/employees-page'),\n children: [\n {\n id: 'crewfoundry-hr-employees',\n label: tr('crewfoundry.nav.hrEmployees', 'Employees'),\n path: joinPath(basePath, 'hr/employees-page'),\n },\n {\n id: 'crewfoundry-hr-departments',\n label: tr('crewfoundry.nav.hrDepartments', 'Departments'),\n path: joinPath(basePath, 'hr/departments-page'),\n },\n {\n id: 'crewfoundry-hr-payroll',\n label: tr('crewfoundry.nav.hrPayroll', 'Payroll'),\n path: joinPath(basePath, 'hr/payroll-page'),\n },\n {\n id: 'crewfoundry-hr-leave',\n label: tr('crewfoundry.nav.hrLeaveManagement', 'Leave Management'),\n path: joinPath(basePath, 'hr/leave-management-page'),\n },\n {\n id: 'crewfoundry-hr-time',\n label: tr('crewfoundry.nav.hrTimeTracking', 'Time Tracking'),\n path: joinPath(basePath, 'hr/time-tracking-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-field',\n label: tr('crewfoundry.nav.field', 'Field Ops'),\n path: joinPath(basePath, 'field/my-work-page'),\n children: [\n {\n id: 'crewfoundry-field-my-work',\n label: tr('crewfoundry.nav.fieldMyWork', 'My Field Work'),\n path: joinPath(basePath, 'field/my-work-page'),\n },\n {\n id: 'crewfoundry-field-dispatch',\n label: tr('crewfoundry.nav.fieldDispatch', 'Dispatch Board'),\n path: joinPath(basePath, 'field/operations-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-learning',\n label: tr('crewfoundry.nav.learning', 'Learning'),\n path: joinPath(basePath, 'learning/courses-page'),\n children: [\n {\n id: 'crewfoundry-learning-courses',\n label: tr('crewfoundry.nav.learningCourses', 'Courses'),\n path: joinPath(basePath, 'learning/courses-page'),\n },\n {\n id: 'crewfoundry-learning-enrollments',\n label: tr('crewfoundry.nav.learningEnrollments', 'Enrollments'),\n path: joinPath(basePath, 'learning/enrollments-page'),\n },\n {\n id: 'crewfoundry-learning-analytics',\n label: tr('crewfoundry.nav.learningCompletion', 'Completion'),\n path: joinPath(basePath, 'learning/learning-analytics-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-teams',\n label: tr('crewfoundry.nav.teams', 'Teams'),\n path: joinPath(basePath, 'teams/teams-page'),\n children: [\n {\n id: 'crewfoundry-teams-list',\n label: tr('crewfoundry.nav.teamsList', 'Teams'),\n path: joinPath(basePath, 'teams/teams-page'),\n },\n {\n id: 'crewfoundry-teams-directory',\n label: tr('crewfoundry.nav.teamsDirectory', 'Directory'),\n path: joinPath(basePath, 'teams/team-directory-page'),\n },\n {\n id: 'crewfoundry-teams-detail',\n label: tr('crewfoundry.nav.teamsDetail', 'Team Detail'),\n path: joinPath(basePath, 'teams/team-detail-page'),\n },\n {\n id: 'crewfoundry-teams-analytics',\n label: tr('crewfoundry.nav.teamsAnalytics', 'Team Analytics'),\n path: joinPath(basePath, 'teams/team-analytics-page'),\n },\n {\n id: 'crewfoundry-teams-settings',\n label: tr('crewfoundry.nav.teamsSettings', 'Team Settings'),\n path: joinPath(basePath, 'teams/team-settings-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-marketplace',\n label: tr('crewfoundry.nav.marketplace', 'Marketplace'),\n path: joinPath(basePath, 'marketplace/marketplace-page'),\n children: [\n {\n id: 'crewfoundry-marketplace-browse',\n label: tr('crewfoundry.nav.marketplaceBrowse', 'Browse Services'),\n path: joinPath(basePath, 'marketplace/marketplace-page'),\n },\n {\n id: 'crewfoundry-marketplace-my-services',\n label: tr('crewfoundry.nav.marketplaceMyServices', 'My Services'),\n path: joinPath(basePath, 'marketplace/my-services-page'),\n },\n {\n id: 'crewfoundry-marketplace-bookings',\n label: tr('crewfoundry.nav.marketplaceBookings', 'Bookings'),\n path: joinPath(basePath, 'marketplace/booking-management-page'),\n },\n {\n id: 'crewfoundry-marketplace-escrow',\n label: tr('crewfoundry.nav.marketplaceEscrow', 'Escrow Ledger'),\n path: joinPath(basePath, 'marketplace/escrow-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-communications',\n label: tr('crewfoundry.nav.communications', 'Communications'),\n path: joinPath(basePath, 'communications/announcements-page'),\n children: [\n {\n id: 'crewfoundry-communications-announcements',\n label: tr('crewfoundry.nav.communicationsAnnouncements', 'Announcements'),\n path: joinPath(basePath, 'communications/announcements-page'),\n },\n {\n // Shell-level route of the shared Conversations app, not a module page.\n id: 'crewfoundry-communications-conversations',\n label: tr('crewfoundry.nav.communicationsConversations', 'Conversations'),\n path: CONVERSATIONS_ROUTE,\n },\n {\n id: 'crewfoundry-communications-files',\n label: tr('crewfoundry.nav.communicationsFiles', 'Files'),\n path: joinPath(basePath, 'communications/files-page'),\n },\n {\n id: 'crewfoundry-communications-directory',\n label: tr('crewfoundry.nav.communicationsDirectory', 'Directory'),\n path: joinPath(basePath, 'communications/directory-page'),\n },\n {\n id: 'crewfoundry-communications-teams',\n label: tr('crewfoundry.nav.communicationsTeams', 'Teams'),\n path: joinPath(basePath, 'communications/teams-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-projects',\n label: tr('crewfoundry.nav.projects', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n children: [\n {\n id: 'crewfoundry-projects-list',\n label: tr('crewfoundry.nav.projectsList', 'Projects'),\n path: joinPath(basePath, 'projects/projects-page'),\n },\n {\n id: 'crewfoundry-projects-create',\n label: tr('crewfoundry.nav.projectsCreate', 'Create Project'),\n path: joinPath(basePath, 'projects/create-project-page'),\n },\n {\n id: 'crewfoundry-projects-details',\n label: tr('crewfoundry.nav.projectsDetails', 'Project Details'),\n path: joinPath(basePath, 'projects/project-details-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-company',\n label: tr('crewfoundry.nav.company', 'Company'),\n path: joinPath(basePath, 'company/company-dashboard-page'),\n children: [\n {\n id: 'crewfoundry-company-dashboard',\n label: tr('crewfoundry.nav.companyDashboard', 'Company Dashboard'),\n path: joinPath(basePath, 'company/company-dashboard-page'),\n },\n {\n id: 'crewfoundry-company-clients',\n label: tr('crewfoundry.nav.companyClientManagement', 'Client Management'),\n path: joinPath(basePath, 'company/client-management-page'),\n },\n {\n id: 'crewfoundry-company-vendors',\n label: tr('crewfoundry.nav.companyVendorManagement', 'Vendor Management'),\n path: joinPath(basePath, 'company/vendor-management-page'),\n },\n {\n id: 'crewfoundry-company-profile',\n label: tr('crewfoundry.nav.companyProfile', 'Company Profile'),\n path: joinPath(basePath, 'company/company-profile-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-analytics',\n label: tr('crewfoundry.nav.analytics', 'Analytics'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n children: [\n {\n id: 'crewfoundry-analytics-overview',\n label: tr('crewfoundry.nav.analyticsOverview', 'Overview'),\n path: joinPath(basePath, 'analytics/analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-employee',\n label: tr('crewfoundry.nav.analyticsEmployee', 'Employee Analytics'),\n path: joinPath(basePath, 'analytics/employee-analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-financial',\n label: tr('crewfoundry.nav.analyticsFinancial', 'Financial Analytics'),\n path: joinPath(basePath, 'analytics/financial-analytics-page'),\n },\n {\n id: 'crewfoundry-analytics-hiring',\n label: tr('crewfoundry.nav.analyticsHiring', 'Hiring Analytics'),\n path: joinPath(basePath, 'analytics/hiring-analytics-page'),\n },\n ],\n },\n {\n id: 'crewfoundry-help',\n label: tr('crewfoundry.nav.help', 'Help'),\n path: joinPath(basePath, 'help/api-documentation-page'),\n children: [\n {\n id: 'crewfoundry-help-api',\n label: tr('crewfoundry.nav.helpApiDocumentation', 'API Documentation'),\n path: joinPath(basePath, 'help/api-documentation-page'),\n },\n ],\n },\n];\n\n/** Human label for the signed-in actor, used as the default provider/client name. */\nconst actorDisplayName = (user: CrewFoundryRootProps['currentUser']): string | undefined => {\n if (!user) return undefined;\n const full = [user.firstName, user.lastName].filter(Boolean).join(' ').trim();\n return user.name?.trim() || full || user.username || user.email || undefined;\n};\n\nexport const CrewFoundryRoot: FC<CrewFoundryRootProps> = (props) => {\n const { registerNavItems, registerFooterItems, basePath = '/' } = props;\n const initializeData = useCrewFoundryStore((state) => state.initializeData);\n const tr = useTr();\n const actorName = actorDisplayName(props.currentUser);\n\n useEffect(() => {\n void initializeData({\n workspaceId: props.workspaceId,\n authToken: props.authToken,\n apiGatewayUrl: props.apiGatewayUrl,\n actorId: props.currentUser?.id,\n actorName,\n });\n }, [\n initializeData,\n props.workspaceId,\n props.authToken,\n props.apiGatewayUrl,\n props.currentUser?.id,\n actorName,\n ]);\n\n useEffect(() => {\n if (!registerNavItems) {\n return;\n }\n\n const navItem: NavItem = {\n id: 'crewfoundry',\n label: tr('crewfoundry.nav.product', 'CrewFoundry'),\n path: basePath,\n icon: <LayoutDashboard size={20} />,\n order: 80,\n group: 'products',\n children: buildSections(basePath, tr).map((section) => ({\n id: section.id,\n label: section.label,\n path: section.path,\n icon: <Folder size={16} />,\n children: section.children.map((child) => ({\n id: child.id,\n label: child.label,\n path: child.path,\n icon: <FileText size={16} />,\n })),\n })),\n };\n\n return registerNavItems(navItem);\n }, [registerNavItems, basePath, tr]);\n\n useEffect(() => {\n if (!registerFooterItems) {\n return;\n }\n\n return registerFooterItems([\n {\n id: 'crewfoundry-status',\n label: tr('crewfoundry.nav.footerStatus', 'CrewFoundry Ready'),\n type: 'status',\n section: 'left',\n order: 10,\n },\n ]);\n }, [registerFooterItems, tr]);\n\n return (\n <FeatureFlagProvider workspaceId={null} gateway=\"global\" defaultEnabled={true}>\n <CrewFoundryProvider {...props}>\n <CrewFoundryRoutes />\n </CrewFoundryProvider>\n </FeatureFlagProvider>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CrewFoundryRoutes.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CrewFoundryRoutes.d.ts","sourceRoot":"","sources":["../../src/crewfoundry/CrewFoundryRoutes.tsx"],"names":[],"mappings":"AA8QA,wBAAgB,iBAAiB,gCAqGhC"}
|
|
@@ -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 }))),
|
|
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 }))), j = r(() => import("./pages/HiringJobsPagePage.js").then((e) => ({ default: e.HiringJobsPagePage }))), M = r(() => import("./pages/HrDepartmentsPagePage.js").then((e) => ({ default: e.HrDepartmentsPagePage }))), N = r(() => import("./pages/HrEmployeesPagePage.js").then((e) => ({ default: e.HrEmployeesPagePage }))), P = r(() => import("./pages/HrEmployeeProfilePagePage.js").then((e) => ({ default: e.HrEmployeeProfilePagePage }))), ee = 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/FieldOperationsPagePage.js").then((e) => ({ default: e.FieldOperationsPagePage }))), Z = r(() => import("./pages/FieldMyWorkPagePage.js").then((e) => ({ default: e.FieldMyWorkPagePage }))), Q = r(() => import("./pages/ProjectsResourcingPagePage.js").then((e) => ({ default: e.ProjectsResourcingPagePage }))), $ = r(() => import("./pages/TeamsTeamAnalyticsPagePage.js").then((e) => ({ default: e.TeamsTeamAnalyticsPagePage }))), te = r(() => import("./pages/TeamsTeamDetailPagePage.js").then((e) => ({ default: e.TeamsTeamDetailPagePage }))), ne = r(() => import("./pages/TeamsTeamDirectoryPagePage.js").then((e) => ({ default: e.TeamsTeamDirectoryPagePage }))), re = r(() => import("./pages/TeamsTeamsPagePage.js").then((e) => ({ default: e.TeamsTeamsPagePage }))), ie = r(() => import("./pages/HelpApiDocumentationPagePage.js").then((e) => ({ default: e.HelpApiDocumentationPagePage }))), ae = r(() => import("./pages/CompanyCompanyProfilePagePage.js").then((e) => ({ default: e.CompanyCompanyProfilePagePage }))), oe = r(() => import("./pages/TeamsTeamSettingsPagePage.js").then((e) => ({ default: e.TeamsTeamSettingsPagePage }))), se = [
|
|
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
|
|
30
|
+
function ce() {
|
|
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
|
|
36
|
+
function le() {
|
|
37
37
|
return /* @__PURE__ */ c(n, {
|
|
38
|
-
fallback: /* @__PURE__ */ c(
|
|
38
|
+
fallback: /* @__PURE__ */ c(ce, {}),
|
|
39
39
|
children: /* @__PURE__ */ l(s, { children: [
|
|
40
40
|
/* @__PURE__ */ c(o, {
|
|
41
41
|
index: !0,
|
|
@@ -127,23 +127,23 @@ function se() {
|
|
|
127
127
|
}),
|
|
128
128
|
/* @__PURE__ */ c(o, {
|
|
129
129
|
path: "hiring/jobs-page",
|
|
130
|
-
element: /* @__PURE__ */ c(
|
|
130
|
+
element: /* @__PURE__ */ c(j, {})
|
|
131
131
|
}),
|
|
132
132
|
/* @__PURE__ */ c(o, {
|
|
133
133
|
path: "hr/departments-page",
|
|
134
|
-
element: /* @__PURE__ */ c(
|
|
134
|
+
element: /* @__PURE__ */ c(M, {})
|
|
135
135
|
}),
|
|
136
136
|
/* @__PURE__ */ c(o, {
|
|
137
137
|
path: "hr/employees-page",
|
|
138
|
-
element: /* @__PURE__ */ c(
|
|
138
|
+
element: /* @__PURE__ */ c(N, {})
|
|
139
139
|
}),
|
|
140
140
|
/* @__PURE__ */ c(o, {
|
|
141
141
|
path: "hr/employee-profile-page",
|
|
142
|
-
element: /* @__PURE__ */ c(
|
|
142
|
+
element: /* @__PURE__ */ c(P, {})
|
|
143
143
|
}),
|
|
144
144
|
/* @__PURE__ */ c(o, {
|
|
145
145
|
path: "hr/leave-management-page",
|
|
146
|
-
element: /* @__PURE__ */ c(
|
|
146
|
+
element: /* @__PURE__ */ c(ee, {})
|
|
147
147
|
}),
|
|
148
148
|
/* @__PURE__ */ c(o, {
|
|
149
149
|
path: "hr/payroll-page",
|
|
@@ -157,6 +157,14 @@ function se() {
|
|
|
157
157
|
path: "hr/skills-taxonomy-page",
|
|
158
158
|
element: /* @__PURE__ */ c(Y, {})
|
|
159
159
|
}),
|
|
160
|
+
/* @__PURE__ */ c(o, {
|
|
161
|
+
path: "field/operations-page",
|
|
162
|
+
element: /* @__PURE__ */ c(X, {})
|
|
163
|
+
}),
|
|
164
|
+
/* @__PURE__ */ c(o, {
|
|
165
|
+
path: "field/my-work-page",
|
|
166
|
+
element: /* @__PURE__ */ c(Z, {})
|
|
167
|
+
}),
|
|
160
168
|
/* @__PURE__ */ c(o, {
|
|
161
169
|
path: "learning/course-details-page",
|
|
162
170
|
element: /* @__PURE__ */ c(L, {})
|
|
@@ -207,37 +215,37 @@ function se() {
|
|
|
207
215
|
}),
|
|
208
216
|
/* @__PURE__ */ c(o, {
|
|
209
217
|
path: "projects/resourcing-page",
|
|
210
|
-
element: /* @__PURE__ */ c(
|
|
218
|
+
element: /* @__PURE__ */ c(Q, {})
|
|
211
219
|
}),
|
|
212
220
|
/* @__PURE__ */ c(o, {
|
|
213
221
|
path: "teams/team-analytics-page",
|
|
214
|
-
element: /* @__PURE__ */ c(
|
|
222
|
+
element: /* @__PURE__ */ c($, {})
|
|
215
223
|
}),
|
|
216
224
|
/* @__PURE__ */ c(o, {
|
|
217
225
|
path: "teams/team-detail-page",
|
|
218
|
-
element: /* @__PURE__ */ c(
|
|
226
|
+
element: /* @__PURE__ */ c(te, {})
|
|
219
227
|
}),
|
|
220
228
|
/* @__PURE__ */ c(o, {
|
|
221
229
|
path: "teams/team-directory-page",
|
|
222
|
-
element: /* @__PURE__ */ c(
|
|
230
|
+
element: /* @__PURE__ */ c(ne, {})
|
|
223
231
|
}),
|
|
224
232
|
/* @__PURE__ */ c(o, {
|
|
225
233
|
path: "teams/teams-page",
|
|
226
|
-
element: /* @__PURE__ */ c(
|
|
234
|
+
element: /* @__PURE__ */ c(re, {})
|
|
227
235
|
}),
|
|
228
236
|
/* @__PURE__ */ c(o, {
|
|
229
237
|
path: "teams/team-settings-page",
|
|
230
|
-
element: /* @__PURE__ */ c(
|
|
238
|
+
element: /* @__PURE__ */ c(oe, {})
|
|
231
239
|
}),
|
|
232
240
|
/* @__PURE__ */ c(o, {
|
|
233
241
|
path: "help/api-documentation-page",
|
|
234
|
-
element: /* @__PURE__ */ c(
|
|
242
|
+
element: /* @__PURE__ */ c(ie, {})
|
|
235
243
|
}),
|
|
236
244
|
/* @__PURE__ */ c(o, {
|
|
237
245
|
path: "company/company-profile-page",
|
|
238
|
-
element: /* @__PURE__ */ c(
|
|
246
|
+
element: /* @__PURE__ */ c(ae, {})
|
|
239
247
|
}),
|
|
240
|
-
|
|
248
|
+
se.map(([e, t]) => /* @__PURE__ */ c(o, {
|
|
241
249
|
path: e,
|
|
242
250
|
element: /* @__PURE__ */ c(a, {
|
|
243
251
|
to: t,
|
|
@@ -262,6 +270,6 @@ function se() {
|
|
|
262
270
|
});
|
|
263
271
|
}
|
|
264
272
|
//#endregion
|
|
265
|
-
export {
|
|
273
|
+
export { le as CrewFoundryRoutes };
|
|
266
274
|
|
|
267
275
|
//# 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 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":"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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 FieldOperationsPagePage = lazy(() =>\n import('./pages/FieldOperationsPagePage').then((m) => ({\n default: m.FieldOperationsPagePage,\n }))\n);\nconst FieldMyWorkPagePage = lazy(() =>\n import('./pages/FieldMyWorkPagePage').then((m) => ({\n default: m.FieldMyWorkPagePage,\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=\"field/operations-page\" element={<FieldOperationsPagePage />} />\n <Route path=\"field/my-work-page\" element={<FieldMyWorkPagePage />} />\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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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CrewDispatch, DispatchStatus } from '../../lib/fieldOps';
|
|
2
|
+
|
|
3
|
+
interface DispatchBoardCardProps {
|
|
4
|
+
dispatches: CrewDispatch[];
|
|
5
|
+
canAssign: boolean;
|
|
6
|
+
onAssign: (dispatch: CrewDispatch) => void;
|
|
7
|
+
onTransition: (dispatch: CrewDispatch, next: DispatchStatus) => void;
|
|
8
|
+
onRemove: (dispatch: CrewDispatch) => void;
|
|
9
|
+
}
|
|
10
|
+
/** Work-order board by status, plus the most recent closed work orders (BOFF-4205). */
|
|
11
|
+
export declare function DispatchBoardCard({ dispatches, ...actions }: DispatchBoardCardProps): import("react").JSX.Element;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=DispatchBoardCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DispatchBoardCard.d.ts","sourceRoot":"","sources":["../../../../src/crewfoundry/components/field/DispatchBoardCard.tsx"],"names":[],"mappings":"AASA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,cAAc,EAGpB,MAAM,oBAAoB,CAAC;AAS5B,UAAU,sBAAsB;IAC9B,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,YAAY,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IACrE,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;CAC5C;AAwDD,uFAAuF;AACvF,wBAAgB,iBAAiB,CAAC,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,EAAE,sBAAsB,+BAiDnF"}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { formatEnumLabel as e } from "../../utils/formatEnumLabel.js";
|
|
2
|
+
import { DispatchPriorityBadge as t, DispatchStatusBadge as n } from "./FieldBadges.js";
|
|
3
|
+
import { MANAGER_NEXT_STATUS as r, STATUS_ACTION_LABEL as i } from "../../lib/fieldOps.js";
|
|
4
|
+
import { formatWhen as a } from "./fieldFormat.js";
|
|
5
|
+
import { Trash2 as o, UserCheck as s } from "lucide-react";
|
|
6
|
+
import { jsx as c, jsxs as l } from "react/jsx-runtime";
|
|
7
|
+
import { Button as u, Card as d, CardContent as f, CardDescription as p, CardHeader as m, CardTitle as h } from "@burdenoff/fe-libs/ui";
|
|
8
|
+
//#region src/crewfoundry/components/field/DispatchBoardCard.tsx
|
|
9
|
+
var g = [
|
|
10
|
+
"OPEN",
|
|
11
|
+
"ASSIGNED",
|
|
12
|
+
"EN_ROUTE",
|
|
13
|
+
"ON_SITE"
|
|
14
|
+
], _ = (e) => e.status === "COMPLETED" || e.status === "CANCELLED";
|
|
15
|
+
function v({ dispatch: e, canAssign: n, onAssign: d, onTransition: f, onRemove: p }) {
|
|
16
|
+
let m = e.status === "OPEN" || e.status === "ASSIGNED";
|
|
17
|
+
return /* @__PURE__ */ l("div", {
|
|
18
|
+
className: "space-y-2 rounded-[var(--radius-card)] border border-border-subtle bg-bg-surface p-3",
|
|
19
|
+
children: [
|
|
20
|
+
/* @__PURE__ */ l("div", {
|
|
21
|
+
className: "flex items-start justify-between gap-2",
|
|
22
|
+
children: [/* @__PURE__ */ c("p", {
|
|
23
|
+
className: "font-medium text-text-primary",
|
|
24
|
+
children: e.title
|
|
25
|
+
}), /* @__PURE__ */ c(t, { priority: e.priority })]
|
|
26
|
+
}),
|
|
27
|
+
/* @__PURE__ */ l("p", {
|
|
28
|
+
className: "text-xs text-text-muted",
|
|
29
|
+
children: [
|
|
30
|
+
e.employeeName ?? "Unassigned",
|
|
31
|
+
e.siteName ? ` · ${e.siteName}` : "",
|
|
32
|
+
e.dueAt ? ` · due ${a(e.dueAt)}` : ""
|
|
33
|
+
]
|
|
34
|
+
}),
|
|
35
|
+
/* @__PURE__ */ l("div", {
|
|
36
|
+
className: "flex flex-wrap gap-1.5",
|
|
37
|
+
children: [
|
|
38
|
+
m ? /* @__PURE__ */ l(u, {
|
|
39
|
+
size: "sm",
|
|
40
|
+
variant: "outline",
|
|
41
|
+
disabled: !n,
|
|
42
|
+
onClick: () => d(e),
|
|
43
|
+
children: [/* @__PURE__ */ c(s, { className: "mr-1 h-3.5 w-3.5" }), e.status === "OPEN" ? "Assign" : "Reassign"]
|
|
44
|
+
}) : null,
|
|
45
|
+
r[e.status].map((t) => /* @__PURE__ */ c(u, {
|
|
46
|
+
size: "sm",
|
|
47
|
+
variant: t === "CANCELLED" ? "ghost" : "outline",
|
|
48
|
+
onClick: () => f(e, t),
|
|
49
|
+
children: i[t]
|
|
50
|
+
}, t)),
|
|
51
|
+
/* @__PURE__ */ c(u, {
|
|
52
|
+
size: "sm",
|
|
53
|
+
variant: "ghost",
|
|
54
|
+
"aria-label": `Remove ${e.title}`,
|
|
55
|
+
onClick: () => p(e),
|
|
56
|
+
children: /* @__PURE__ */ c(o, { className: "h-3.5 w-3.5 text-status-error-fg" })
|
|
57
|
+
})
|
|
58
|
+
]
|
|
59
|
+
})
|
|
60
|
+
]
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
function y({ dispatches: t, ...r }) {
|
|
64
|
+
let i = t.filter(_);
|
|
65
|
+
return /* @__PURE__ */ l(d, {
|
|
66
|
+
"data-testid": "field-dispatch-board",
|
|
67
|
+
children: [/* @__PURE__ */ l(m, { children: [/* @__PURE__ */ c(h, {
|
|
68
|
+
className: "text-base",
|
|
69
|
+
children: "Work orders"
|
|
70
|
+
}), /* @__PURE__ */ l(p, { children: [
|
|
71
|
+
t.filter((e) => e.status === "COMPLETED").length,
|
|
72
|
+
" completed ·",
|
|
73
|
+
" ",
|
|
74
|
+
t.length - i.length,
|
|
75
|
+
" in flight"
|
|
76
|
+
] })] }), /* @__PURE__ */ l(f, { children: [/* @__PURE__ */ c("div", {
|
|
77
|
+
className: "grid gap-3 md:grid-cols-2 xl:grid-cols-4",
|
|
78
|
+
children: g.map((n) => {
|
|
79
|
+
let i = t.filter((e) => e.status === n);
|
|
80
|
+
return /* @__PURE__ */ l("section", {
|
|
81
|
+
"aria-label": e(n),
|
|
82
|
+
className: "space-y-2",
|
|
83
|
+
children: [/* @__PURE__ */ l("h2", {
|
|
84
|
+
className: "text-sm font-medium text-text-secondary",
|
|
85
|
+
children: [
|
|
86
|
+
e(n),
|
|
87
|
+
" (",
|
|
88
|
+
i.length,
|
|
89
|
+
")"
|
|
90
|
+
]
|
|
91
|
+
}), i.map((e) => /* @__PURE__ */ c(v, {
|
|
92
|
+
dispatch: e,
|
|
93
|
+
...r
|
|
94
|
+
}, e.id))]
|
|
95
|
+
}, n);
|
|
96
|
+
})
|
|
97
|
+
}), i.length > 0 ? /* @__PURE__ */ l("div", {
|
|
98
|
+
className: "mt-4 space-y-1",
|
|
99
|
+
children: [/* @__PURE__ */ c("h2", {
|
|
100
|
+
className: "text-sm font-medium text-text-secondary",
|
|
101
|
+
children: "Closed"
|
|
102
|
+
}), /* @__PURE__ */ c("ul", {
|
|
103
|
+
className: "space-y-1",
|
|
104
|
+
children: i.slice(0, 10).map((e) => /* @__PURE__ */ l("li", {
|
|
105
|
+
className: "flex flex-wrap items-center gap-2 text-sm text-text-secondary",
|
|
106
|
+
children: [
|
|
107
|
+
/* @__PURE__ */ c(n, { status: e.status }),
|
|
108
|
+
/* @__PURE__ */ c("span", {
|
|
109
|
+
className: "text-text-primary",
|
|
110
|
+
children: e.title
|
|
111
|
+
}),
|
|
112
|
+
/* @__PURE__ */ c("span", { children: e.employeeName ?? "" }),
|
|
113
|
+
/* @__PURE__ */ c("span", { children: a(e.completedAt ?? e.createdAt) }),
|
|
114
|
+
e.completionNotes ? /* @__PURE__ */ l("span", { children: ["· ", e.completionNotes] }) : null
|
|
115
|
+
]
|
|
116
|
+
}, e.id))
|
|
117
|
+
})]
|
|
118
|
+
}) : null] })]
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
//#endregion
|
|
122
|
+
export { y as DispatchBoardCard };
|
|
123
|
+
|
|
124
|
+
//# sourceMappingURL=DispatchBoardCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DispatchBoardCard.js","names":[],"sources":["../../../../src/crewfoundry/components/field/DispatchBoardCard.tsx"],"sourcesContent":["import {\n Button,\n Card,\n CardContent,\n CardDescription,\n CardHeader,\n CardTitle,\n} from '@burdenoff/fe-libs/ui';\nimport { Trash2, UserCheck } from 'lucide-react';\nimport {\n type CrewDispatch,\n type DispatchStatus,\n MANAGER_NEXT_STATUS,\n STATUS_ACTION_LABEL,\n} from '../../lib/fieldOps';\nimport { formatEnumLabel } from '../../utils/formatEnumLabel';\nimport { DispatchPriorityBadge, DispatchStatusBadge } from './FieldBadges';\nimport { formatWhen } from './fieldFormat';\n\nconst BOARD_COLUMNS: DispatchStatus[] = ['OPEN', 'ASSIGNED', 'EN_ROUTE', 'ON_SITE'];\nconst isClosed = (dispatch: CrewDispatch): boolean =>\n dispatch.status === 'COMPLETED' || dispatch.status === 'CANCELLED';\n\ninterface DispatchBoardCardProps {\n dispatches: CrewDispatch[];\n canAssign: boolean;\n onAssign: (dispatch: CrewDispatch) => void;\n onTransition: (dispatch: CrewDispatch, next: DispatchStatus) => void;\n onRemove: (dispatch: CrewDispatch) => void;\n}\n\nfunction DispatchTile({\n dispatch,\n canAssign,\n onAssign,\n onTransition,\n onRemove,\n}: Omit<DispatchBoardCardProps, 'dispatches'> & { dispatch: CrewDispatch }) {\n const assignable = dispatch.status === 'OPEN' || dispatch.status === 'ASSIGNED';\n return (\n <div className=\"space-y-2 rounded-[var(--radius-card)] border border-border-subtle bg-bg-surface p-3\">\n <div className=\"flex items-start justify-between gap-2\">\n <p className=\"font-medium text-text-primary\">{dispatch.title}</p>\n <DispatchPriorityBadge priority={dispatch.priority} />\n </div>\n <p className=\"text-xs text-text-muted\">\n {dispatch.employeeName ?? 'Unassigned'}\n {dispatch.siteName ? ` · ${dispatch.siteName}` : ''}\n {dispatch.dueAt ? ` · due ${formatWhen(dispatch.dueAt)}` : ''}\n </p>\n <div className=\"flex flex-wrap gap-1.5\">\n {assignable ? (\n <Button\n size=\"sm\"\n variant=\"outline\"\n disabled={!canAssign}\n onClick={() => onAssign(dispatch)}\n >\n <UserCheck className=\"mr-1 h-3.5 w-3.5\" />\n {dispatch.status === 'OPEN' ? 'Assign' : 'Reassign'}\n </Button>\n ) : null}\n {MANAGER_NEXT_STATUS[dispatch.status].map((next) => (\n <Button\n key={next}\n size=\"sm\"\n variant={next === 'CANCELLED' ? 'ghost' : 'outline'}\n onClick={() => onTransition(dispatch, next)}\n >\n {STATUS_ACTION_LABEL[next]}\n </Button>\n ))}\n <Button\n size=\"sm\"\n variant=\"ghost\"\n aria-label={`Remove ${dispatch.title}`}\n onClick={() => onRemove(dispatch)}\n >\n <Trash2 className=\"h-3.5 w-3.5 text-status-error-fg\" />\n </Button>\n </div>\n </div>\n );\n}\n\n/** Work-order board by status, plus the most recent closed work orders (BOFF-4205). */\nexport function DispatchBoardCard({ dispatches, ...actions }: DispatchBoardCardProps) {\n const closed = dispatches.filter(isClosed);\n return (\n <Card data-testid=\"field-dispatch-board\">\n <CardHeader>\n <CardTitle className=\"text-base\">Work orders</CardTitle>\n <CardDescription>\n {dispatches.filter((dispatch) => dispatch.status === 'COMPLETED').length} completed ·{' '}\n {dispatches.length - closed.length} in flight\n </CardDescription>\n </CardHeader>\n <CardContent>\n <div className=\"grid gap-3 md:grid-cols-2 xl:grid-cols-4\">\n {BOARD_COLUMNS.map((column) => {\n const items = dispatches.filter((dispatch) => dispatch.status === column);\n return (\n <section key={column} aria-label={formatEnumLabel(column)} className=\"space-y-2\">\n <h2 className=\"text-sm font-medium text-text-secondary\">\n {formatEnumLabel(column)} ({items.length})\n </h2>\n {items.map((dispatch) => (\n <DispatchTile key={dispatch.id} dispatch={dispatch} {...actions} />\n ))}\n </section>\n );\n })}\n </div>\n {closed.length > 0 ? (\n <div className=\"mt-4 space-y-1\">\n <h2 className=\"text-sm font-medium text-text-secondary\">Closed</h2>\n <ul className=\"space-y-1\">\n {closed.slice(0, 10).map((dispatch) => (\n <li\n key={dispatch.id}\n className=\"flex flex-wrap items-center gap-2 text-sm text-text-secondary\"\n >\n <DispatchStatusBadge status={dispatch.status} />\n <span className=\"text-text-primary\">{dispatch.title}</span>\n <span>{dispatch.employeeName ?? ''}</span>\n <span>{formatWhen(dispatch.completedAt ?? dispatch.createdAt)}</span>\n {dispatch.completionNotes ? <span>· {dispatch.completionNotes}</span> : null}\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n </CardContent>\n </Card>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DispatchPriority, DispatchStatus, ShiftStatus } from '../../lib/fieldOps';
|
|
2
|
+
|
|
3
|
+
export declare function ShiftStatusBadge({ status }: {
|
|
4
|
+
status: ShiftStatus;
|
|
5
|
+
}): import("react").JSX.Element;
|
|
6
|
+
export declare function DispatchStatusBadge({ status }: {
|
|
7
|
+
status: DispatchStatus;
|
|
8
|
+
}): import("react").JSX.Element;
|
|
9
|
+
export declare function DispatchPriorityBadge({ priority }: {
|
|
10
|
+
priority: DispatchPriority;
|
|
11
|
+
}): import("react").JSX.Element;
|
|
12
|
+
//# sourceMappingURL=FieldBadges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldBadges.d.ts","sourceRoot":"","sources":["../../../../src/crewfoundry/components/field/FieldBadges.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AA6BxF,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,+BAEnE;AAED,wBAAgB,mBAAmB,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,cAAc,CAAA;CAAE,+BAEzE;AAED,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,gBAAgB,CAAA;CAAE,+BAIjF"}
|