@burdenoff/microfe-crewfoundry 2026.730.1 → 2026.801.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/dist/crewfoundry/CrewFoundryRoutes.js +1 -1
  2. package/dist/crewfoundry/CrewFoundryRoutes.js.map +1 -1
  3. package/dist/crewfoundry/components/payroll/GlobalPayrollSection.d.ts +2 -0
  4. package/dist/crewfoundry/components/payroll/GlobalPayrollSection.d.ts.map +1 -0
  5. package/dist/crewfoundry/components/payroll/GlobalPayrollSection.js +369 -0
  6. package/dist/crewfoundry/components/payroll/GlobalPayrollSection.js.map +1 -0
  7. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js +1 -1
  8. package/dist/crewfoundry/pages/CommunicationsAnnouncementsPagePage.js.map +1 -1
  9. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js +1 -1
  10. package/dist/crewfoundry/pages/CommunicationsFilesPagePage.js.map +1 -1
  11. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js +1 -1
  12. package/dist/crewfoundry/pages/CommunicationsTeamsPagePage.js.map +1 -1
  13. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js +1 -1
  14. package/dist/crewfoundry/pages/CompanyClientManagementPagePage.js.map +1 -1
  15. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js +1 -1
  16. package/dist/crewfoundry/pages/CompanyVendorManagementPagePage.js.map +1 -1
  17. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js +1 -1
  18. package/dist/crewfoundry/pages/DashboardDashboardPagePage.js.map +1 -1
  19. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js +1 -1
  20. package/dist/crewfoundry/pages/DashboardEnhancedDashboardPagePage.js.map +1 -1
  21. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js +1 -1
  22. package/dist/crewfoundry/pages/HiringApplicationsPagePage.js.map +1 -1
  23. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js +1 -1
  24. package/dist/crewfoundry/pages/HiringCreateJobPagePage.js.map +1 -1
  25. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js +1 -1
  26. package/dist/crewfoundry/pages/HiringJobDetailsPagePage.js.map +1 -1
  27. package/dist/crewfoundry/pages/HiringJobsPagePage.js +1 -1
  28. package/dist/crewfoundry/pages/HiringJobsPagePage.js.map +1 -1
  29. package/dist/crewfoundry/pages/HrEmployeeProfilePagePage.js +1 -1
  30. package/dist/crewfoundry/pages/HrEmployeeProfilePagePage.js.map +1 -1
  31. package/dist/crewfoundry/pages/HrEmployeesPagePage.js +1 -1
  32. package/dist/crewfoundry/pages/HrEmployeesPagePage.js.map +1 -1
  33. package/dist/crewfoundry/pages/HrPayrollPagePage.d.ts.map +1 -1
  34. package/dist/crewfoundry/pages/HrPayrollPagePage.js +136 -134
  35. package/dist/crewfoundry/pages/HrPayrollPagePage.js.map +1 -1
  36. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js +1 -1
  37. package/dist/crewfoundry/pages/LearningAssessmentsPagePage.js.map +1 -1
  38. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js +1 -1
  39. package/dist/crewfoundry/pages/LearningCertificatesPagePage.js.map +1 -1
  40. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js +1 -1
  41. package/dist/crewfoundry/pages/LearningCourseDetailsPagePage.js.map +1 -1
  42. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js +1 -1
  43. package/dist/crewfoundry/pages/LearningCourseLearningPagePage.js.map +1 -1
  44. package/dist/crewfoundry/pages/LearningCoursesPagePage.js +1 -1
  45. package/dist/crewfoundry/pages/LearningCoursesPagePage.js.map +1 -1
  46. package/dist/crewfoundry/pages/LearningLearningPagePage.js +1 -1
  47. package/dist/crewfoundry/pages/LearningLearningPagePage.js.map +1 -1
  48. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js +1 -1
  49. package/dist/crewfoundry/pages/LearningLearningPathDetailPagePage.js.map +1 -1
  50. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js +1 -1
  51. package/dist/crewfoundry/pages/LearningLearningPathsPagePage.js.map +1 -1
  52. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js +1 -1
  53. package/dist/crewfoundry/pages/LearningMyLearningPagePage.js.map +1 -1
  54. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js +1 -1
  55. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePageEnhancedPage.js.map +1 -1
  56. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js +1 -1
  57. package/dist/crewfoundry/pages/MarketplaceFreelancerProfilePagePage.js.map +1 -1
  58. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js +1 -1
  59. package/dist/crewfoundry/pages/MarketplaceMarketplacePagePage.js.map +1 -1
  60. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js +1 -1
  61. package/dist/crewfoundry/pages/MarketplaceMarketplaceServicesPagePage.js.map +1 -1
  62. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js +1 -1
  63. package/dist/crewfoundry/pages/MarketplaceMyServicesPagePage.js.map +1 -1
  64. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js +1 -1
  65. package/dist/crewfoundry/pages/MarketplaceProjectDetailsPagePage.js.map +1 -1
  66. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js +1 -1
  67. package/dist/crewfoundry/pages/MarketplaceServiceDetailsPagePage.js.map +1 -1
  68. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js +1 -1
  69. package/dist/crewfoundry/pages/PaymentsPaymentDashboardPagePage.js.map +1 -1
  70. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js +1 -1
  71. package/dist/crewfoundry/pages/PaymentsPaymentMethodsPagePage.js.map +1 -1
  72. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js +1 -1
  73. package/dist/crewfoundry/pages/ProjectsCreateProjectPagePage.js.map +1 -1
  74. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js +1 -1
  75. package/dist/crewfoundry/pages/ProjectsProjectDetailsPagePage.js.map +1 -1
  76. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js +1 -1
  77. package/dist/crewfoundry/pages/ProjectsProjectsPagePage.js.map +1 -1
  78. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js +1 -1
  79. package/dist/crewfoundry/pages/ProjectsResourcingPagePage.js.map +1 -1
  80. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js +1 -1
  81. package/dist/crewfoundry/pages/TeamsTeamDetailPagePage.js.map +1 -1
  82. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js +1 -1
  83. package/dist/crewfoundry/pages/TeamsTeamDirectoryPagePage.js.map +1 -1
  84. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js +1 -1
  85. package/dist/crewfoundry/pages/TeamsTeamSettingsPagePage.js.map +1 -1
  86. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js +1 -1
  87. package/dist/crewfoundry/pages/TeamsTeamsPagePage.js.map +1 -1
  88. package/dist/crewfoundry/providers/CrewFoundryProvider.js +1 -1
  89. package/dist/crewfoundry/providers/CrewFoundryProvider.js.map +1 -1
  90. package/dist/crewfoundry/store/crewfoundryStore.d.ts +73 -0
  91. package/dist/crewfoundry/store/crewfoundryStore.d.ts.map +1 -1
  92. package/dist/crewfoundry/store/crewfoundryStore.js +104 -48
  93. package/dist/crewfoundry/store/crewfoundryStore.js.map +1 -1
  94. package/package.json +6 -6
@@ -1,7 +1,7 @@
1
1
  import { create as e } from "zustand";
2
2
  import { graphqlFetch as t } from "@burdenoff/fe-libs/shared/graphql";
3
3
  //#region src/crewfoundry/store/crewfoundryStore.ts
4
- var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n employees { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate }\n departments { id name headId headName employeeCount budget location status }\n jobPostings { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits }\n candidates { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate }\n interviews { id candidateId candidateName position interviewerName date time type status feedback rating }\n announcements { id title content author authorRole category priority isPinned createdAt viewCount tags }\n teams { id name description leadId leadName members memberCount department status projectCount createdAt }\n projects { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks }\n leaveRequests { id employeeId employeeName department type startDate endDate days status reason approverName }\n timeEntries { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable }\n vendors { id name category contactPerson email phone status contractValue rating }\n clients { id name industry contactPerson email phone status revenue projects since }\n }\n }\n", r = "\n query CrewPayrollRecords {\n crewPayrollRecords { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod }\n }\n", i = "\n query CrewfoundryWorkspaceBootstrapWithOverlap(\n $workspaceId: ID!\n $projectPagination: PaginationInput\n $groupFirst: Int\n $conversationFirst: Int\n ) {\n crewfoundryBootstrap {\n employees { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate }\n departments { id name headId headName employeeCount budget location status }\n jobPostings { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits }\n candidates { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate }\n interviews { id candidateId candidateName position interviewerName date time type status feedback rating }\n announcements { id title content author authorRole category priority isPinned createdAt viewCount tags }\n teams { id name description leadId leadName members memberCount department status projectCount createdAt }\n projects { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks }\n leaveRequests { id employeeId employeeName department type startDate endDate days status reason approverName }\n timeEntries { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable }\n vendors { id name category contactPerson email phone status contractValue rating }\n clients { id name industry contactPerson email phone status revenue projects since }\n }\n projects(filter: { workspaceId: $workspaceId }, pagination: $projectPagination) {\n items {\n id\n name\n key\n creatorId\n status\n config\n archived\n createdAt\n updatedAt\n }\n }\n groups(first: $groupFirst) {\n edges {\n node {\n id\n name\n description\n groupType\n status\n memberCount\n ownerId\n createdAt\n }\n }\n }\n conversations(first: $conversationFirst) {\n edges {\n node {\n id\n title\n description\n state\n unreadCount\n memberCount\n updatedAt\n }\n }\n }\n }\n", a = "\n query CrewfoundryOverlapBilling {\n getBillingAccountsByOrg {\n id\n name\n isDefault\n paymentMethods {\n id\n type\n brand\n last4\n isDefault\n expiryMonth\n expiryYear\n }\n }\n }\n", o = "mutation CreateCrewEmployee($input: CreateCrewEmployeeInput!) { createCrewEmployee(input: $input) { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate } }", s = "mutation UpdateCrewEmployee($id: ID!, $input: UpdateCrewEmployeeInput!) { updateCrewEmployee(id: $id, input: $input) { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate } }", c = "mutation RemoveCrewEmployee($id: ID!) { removeCrewEmployee(id: $id) }", l = "mutation CreateCrewJobPosting($input: CreateCrewJobPostingInput!) { createCrewJobPosting(input: $input) { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits } }", u = "mutation UpdateCrewJobPosting($id: ID!, $input: UpdateCrewJobPostingInput!) { updateCrewJobPosting(id: $id, input: $input) { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits } }", d = "mutation CreateCrewCandidate($input: CreateCrewCandidateInput!) { createCrewCandidate(input: $input) { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } }", f = "mutation UpdateCrewCandidate($id: ID!, $input: UpdateCrewCandidateInput!) { updateCrewCandidate(id: $id, input: $input) { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } }", p = "mutation CreateCrewAnnouncement($input: CreateCrewAnnouncementInput!) { createCrewAnnouncement(input: $input) { id title content author authorRole category priority isPinned createdAt viewCount tags } }", m = "mutation CreateCrewLeaveRequest($input: CreateCrewLeaveRequestInput!) { createCrewLeaveRequest(input: $input) { id employeeId employeeName department type startDate endDate days status reason approverName } }", h = "mutation UpdateCrewLeaveRequest($id: ID!, $input: UpdateCrewLeaveRequestInput!) { updateCrewLeaveRequest(id: $id, input: $input) { id employeeId employeeName department type startDate endDate days status reason approverName } }", g = "mutation RemoveCrewJobPosting($id: ID!) { removeCrewJobPosting(id: $id) }", _ = "mutation RemoveCrewCandidate($id: ID!) { removeCrewCandidate(id: $id) }", v = "mutation UpdateCrewAnnouncement($id: ID!, $input: UpdateCrewAnnouncementInput!) { updateCrewAnnouncement(id: $id, input: $input) { id title content author authorRole category priority isPinned createdAt viewCount tags } }", y = "mutation RemoveCrewAnnouncement($id: ID!) { removeCrewAnnouncement(id: $id) }", b = "mutation CreateCrewInterview($input: CreateCrewInterviewInput!) { createCrewInterview(input: $input) { id candidateId candidateName position interviewerName date time type status feedback rating } }", x = "mutation UpdateCrewInterview($id: ID!, $input: UpdateCrewInterviewInput!) { updateCrewInterview(id: $id, input: $input) { id candidateId candidateName position interviewerName date time type status feedback rating } }", S = "mutation RemoveCrewInterview($id: ID!) { removeCrewInterview(id: $id) }", C = "mutation CreateCrewVendor($input: CreateCrewVendorInput!) { createCrewVendor(input: $input) { id name category contactPerson email phone status contractValue rating } }", w = "mutation UpdateCrewVendor($id: ID!, $input: UpdateCrewVendorInput!) { updateCrewVendor(id: $id, input: $input) { id name category contactPerson email phone status contractValue rating } }", T = "mutation RemoveCrewVendor($id: ID!) { removeCrewVendor(id: $id) }", E = "mutation CreateCrewClient($input: CreateCrewClientInput!) { createCrewClient(input: $input) { id name industry contactPerson email phone status revenue projects since } }", ee = "mutation UpdateCrewClient($id: ID!, $input: UpdateCrewClientInput!) { updateCrewClient(id: $id, input: $input) { id name industry contactPerson email phone status revenue projects since } }", te = "mutation RemoveCrewClient($id: ID!) { removeCrewClient(id: $id) }", ne = "mutation CreateCrewTeam($input: CreateCrewTeamInput!) { createCrewTeam(input: $input) { id name description leadId leadName members memberCount department status projectCount createdAt } }", re = "mutation UpdateCrewTeam($id: ID!, $input: UpdateCrewTeamInput!) { updateCrewTeam(id: $id, input: $input) { id name description leadId leadName members memberCount department status projectCount createdAt } }", ie = "mutation RemoveCrewTeam($id: ID!) { removeCrewTeam(id: $id) }", ae = "mutation CreateCrewProject($input: CreateCrewProjectInput!) { createCrewProject(input: $input) { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks } }", oe = "mutation UpdateCrewProject($id: ID!, $input: UpdateCrewProjectInput!) { updateCrewProject(id: $id, input: $input) { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks } }", se = "mutation RemoveCrewProject($id: ID!) { removeCrewProject(id: $id) }", ce = "mutation CreateCrewDepartment($input: CreateCrewDepartmentInput!) { createCrewDepartment(input: $input) { id name headId headName employeeCount budget location status } }", le = "mutation UpdateCrewDepartment($id: ID!, $input: UpdateCrewDepartmentInput!) { updateCrewDepartment(id: $id, input: $input) { id name headId headName employeeCount budget location status } }", ue = "mutation RemoveCrewDepartment($id: ID!) { removeCrewDepartment(id: $id) }", de = "mutation CreateCrewPayrollRecord($input: CreateCrewPayrollRecordInput!) { createCrewPayrollRecord(input: $input) { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod } }", fe = "mutation UpdateCrewPayrollRecord($id: ID!, $input: UpdateCrewPayrollRecordInput!) { updateCrewPayrollRecord(id: $id, input: $input) { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod } }", D = "mutation RemoveCrewPayrollRecord($id: ID!) { removeCrewPayrollRecord(id: $id) }", O = "mutation CreateCrewTimeEntry($input: CreateCrewTimeEntryInput!) { createCrewTimeEntry(input: $input) { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable } }", k = "mutation UpdateCrewTimeEntry($id: ID!, $input: UpdateCrewTimeEntryInput!) { updateCrewTimeEntry(id: $id, input: $input) { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable } }", A = "mutation RemoveCrewTimeEntry($id: ID!) { removeCrewTimeEntry(id: $id) }", j = "query CrewJobPostingMatches($jobPostingId: ID!, $filter: CrewCandidateMatchFilterInput, $limit: Int) { crewJobPostingMatches(jobPostingId: $jobPostingId, filter: $filter, limit: $limit) { candidateId jobPostingId score skillScore experienceScore matchedSkills missingSkills rationale candidate { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } } }", M = "query EmployeeDocuments($employeeId: ID!) { employeeDocuments(employeeId: $employeeId) { id employeeId fileId title category uploadedBy uploadedAt } }", N = "mutation AttachEmployeeDocument($input: AttachCrewEmployeeDocumentInput!) { attachEmployeeDocument(input: $input) { id employeeId fileId title category uploadedBy uploadedAt } }", P = "mutation DetachEmployeeDocument($id: ID!) { detachEmployeeDocument(id: $id) }", F = "mutation EnsureFolderByPath($path: String!) { ensureFolderByPath(path: $path) { id } }", I = "mutation InitiateUpload($input: InitiateUploadInput!) { initiateUpload(input: $input) { session { id } uploadUrl } }", L = "mutation CompleteUpload($input: CompleteUploadInput!) { completeUpload(input: $input) { file { id } } }", R = "query CrewOnboardings { crewOnboardings { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", z = "mutation CreateCrewOnboarding($input: CreateCrewOnboardingInput!) { createCrewOnboarding(input: $input) { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", B = "mutation UpdateCrewOnboarding($id: ID!, $input: UpdateCrewOnboardingInput!) { updateCrewOnboarding(id: $id, input: $input) { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", V = "mutation RemoveCrewOnboarding($id: ID!) { removeCrewOnboarding(id: $id) }", pe = "mutation CreateCrewOnboardingTask($input: CreateCrewOnboardingTaskInput!) { createCrewOnboardingTask(input: $input) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", me = "mutation UpdateCrewOnboardingTask($id: ID!, $input: UpdateCrewOnboardingTaskInput!) { updateCrewOnboardingTask(id: $id, input: $input) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", he = "mutation RemoveCrewOnboardingTask($id: ID!) { removeCrewOnboardingTask(id: $id) }", ge = "mutation ToggleCrewOnboardingTask($id: ID!, $completed: Boolean!) { toggleCrewOnboardingTask(id: $id, completed: $completed) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", H = (e) => e.toUpperCase().replaceAll("-", "_"), U = (e) => /* @__PURE__ */ Error(`${e} isn't available in CrewFoundry.`), W = {
4
+ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n employees { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate }\n departments { id name headId headName employeeCount budget location status }\n jobPostings { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits }\n candidates { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate }\n interviews { id candidateId candidateName position interviewerName date time type status feedback rating }\n announcements { id title content author authorRole category priority isPinned createdAt viewCount tags }\n teams { id name description leadId leadName members memberCount department status projectCount createdAt }\n projects { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks }\n leaveRequests { id employeeId employeeName department type startDate endDate days status reason approverName }\n timeEntries { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable }\n vendors { id name category contactPerson email phone status contractValue rating }\n clients { id name industry contactPerson email phone status revenue projects since }\n }\n }\n", r = "\n query CrewPayrollRecords {\n crewPayrollRecords { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod }\n }\n", i = "\n query CrewfoundryWorkspaceBootstrapWithOverlap(\n $workspaceId: ID!\n $projectPagination: PaginationInput\n $groupFirst: Int\n $conversationFirst: Int\n ) {\n crewfoundryBootstrap {\n employees { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate }\n departments { id name headId headName employeeCount budget location status }\n jobPostings { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits }\n candidates { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate }\n interviews { id candidateId candidateName position interviewerName date time type status feedback rating }\n announcements { id title content author authorRole category priority isPinned createdAt viewCount tags }\n teams { id name description leadId leadName members memberCount department status projectCount createdAt }\n projects { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks }\n leaveRequests { id employeeId employeeName department type startDate endDate days status reason approverName }\n timeEntries { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable }\n vendors { id name category contactPerson email phone status contractValue rating }\n clients { id name industry contactPerson email phone status revenue projects since }\n }\n projects(filter: { workspaceId: $workspaceId }, pagination: $projectPagination) {\n items {\n id\n name\n key\n creatorId\n status\n config\n archived\n createdAt\n updatedAt\n }\n }\n groups(first: $groupFirst) {\n edges {\n node {\n id\n name\n description\n groupType\n status\n memberCount\n ownerId\n createdAt\n }\n }\n }\n conversations(first: $conversationFirst) {\n edges {\n node {\n id\n title\n description\n state\n unreadCount\n memberCount\n updatedAt\n }\n }\n }\n }\n", a = "\n query CrewfoundryOverlapBilling {\n getBillingAccountsByOrg {\n id\n name\n isDefault\n paymentMethods {\n id\n type\n brand\n last4\n isDefault\n expiryMonth\n expiryYear\n }\n }\n }\n", o = "mutation CreateCrewEmployee($input: CreateCrewEmployeeInput!) { createCrewEmployee(input: $input) { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate } }", s = "mutation UpdateCrewEmployee($id: ID!, $input: UpdateCrewEmployeeInput!) { updateCrewEmployee(id: $id, input: $input) { id firstName lastName email department position status type salary startDate avatar location managerId phone performanceScore skills terminationDate } }", c = "mutation RemoveCrewEmployee($id: ID!) { removeCrewEmployee(id: $id) }", l = "mutation CreateCrewJobPosting($input: CreateCrewJobPostingInput!) { createCrewJobPosting(input: $input) { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits } }", u = "mutation UpdateCrewJobPosting($id: ID!, $input: UpdateCrewJobPostingInput!) { updateCrewJobPosting(id: $id, input: $input) { id title department location type experienceLevel salaryMin salaryMax status applicants postedDate deadline description requirements benefits } }", d = "mutation CreateCrewCandidate($input: CreateCrewCandidateInput!) { createCrewCandidate(input: $input) { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } }", f = "mutation UpdateCrewCandidate($id: ID!, $input: UpdateCrewCandidateInput!) { updateCrewCandidate(id: $id, input: $input) { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } }", p = "mutation CreateCrewAnnouncement($input: CreateCrewAnnouncementInput!) { createCrewAnnouncement(input: $input) { id title content author authorRole category priority isPinned createdAt viewCount tags } }", m = "mutation CreateCrewLeaveRequest($input: CreateCrewLeaveRequestInput!) { createCrewLeaveRequest(input: $input) { id employeeId employeeName department type startDate endDate days status reason approverName } }", h = "mutation UpdateCrewLeaveRequest($id: ID!, $input: UpdateCrewLeaveRequestInput!) { updateCrewLeaveRequest(id: $id, input: $input) { id employeeId employeeName department type startDate endDate days status reason approverName } }", g = "mutation RemoveCrewJobPosting($id: ID!) { removeCrewJobPosting(id: $id) }", _ = "mutation RemoveCrewCandidate($id: ID!) { removeCrewCandidate(id: $id) }", v = "mutation UpdateCrewAnnouncement($id: ID!, $input: UpdateCrewAnnouncementInput!) { updateCrewAnnouncement(id: $id, input: $input) { id title content author authorRole category priority isPinned createdAt viewCount tags } }", y = "mutation RemoveCrewAnnouncement($id: ID!) { removeCrewAnnouncement(id: $id) }", b = "mutation CreateCrewInterview($input: CreateCrewInterviewInput!) { createCrewInterview(input: $input) { id candidateId candidateName position interviewerName date time type status feedback rating } }", x = "mutation UpdateCrewInterview($id: ID!, $input: UpdateCrewInterviewInput!) { updateCrewInterview(id: $id, input: $input) { id candidateId candidateName position interviewerName date time type status feedback rating } }", S = "mutation RemoveCrewInterview($id: ID!) { removeCrewInterview(id: $id) }", C = "mutation CreateCrewVendor($input: CreateCrewVendorInput!) { createCrewVendor(input: $input) { id name category contactPerson email phone status contractValue rating } }", w = "mutation UpdateCrewVendor($id: ID!, $input: UpdateCrewVendorInput!) { updateCrewVendor(id: $id, input: $input) { id name category contactPerson email phone status contractValue rating } }", T = "mutation RemoveCrewVendor($id: ID!) { removeCrewVendor(id: $id) }", E = "mutation CreateCrewClient($input: CreateCrewClientInput!) { createCrewClient(input: $input) { id name industry contactPerson email phone status revenue projects since } }", D = "mutation UpdateCrewClient($id: ID!, $input: UpdateCrewClientInput!) { updateCrewClient(id: $id, input: $input) { id name industry contactPerson email phone status revenue projects since } }", ee = "mutation RemoveCrewClient($id: ID!) { removeCrewClient(id: $id) }", te = "mutation CreateCrewTeam($input: CreateCrewTeamInput!) { createCrewTeam(input: $input) { id name description leadId leadName members memberCount department status projectCount createdAt } }", ne = "mutation UpdateCrewTeam($id: ID!, $input: UpdateCrewTeamInput!) { updateCrewTeam(id: $id, input: $input) { id name description leadId leadName members memberCount department status projectCount createdAt } }", re = "mutation RemoveCrewTeam($id: ID!) { removeCrewTeam(id: $id) }", ie = "mutation CreateCrewProject($input: CreateCrewProjectInput!) { createCrewProject(input: $input) { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks } }", ae = "mutation UpdateCrewProject($id: ID!, $input: UpdateCrewProjectInput!) { updateCrewProject(id: $id, input: $input) { id name description status priority startDate endDate progress budget spent teamId teamName managerId managerName tasks completedTasks } }", oe = "mutation RemoveCrewProject($id: ID!) { removeCrewProject(id: $id) }", se = "mutation CreateCrewDepartment($input: CreateCrewDepartmentInput!) { createCrewDepartment(input: $input) { id name headId headName employeeCount budget location status } }", ce = "mutation UpdateCrewDepartment($id: ID!, $input: UpdateCrewDepartmentInput!) { updateCrewDepartment(id: $id, input: $input) { id name headId headName employeeCount budget location status } }", le = "mutation RemoveCrewDepartment($id: ID!) { removeCrewDepartment(id: $id) }", ue = "mutation CreateCrewPayrollRecord($input: CreateCrewPayrollRecordInput!) { createCrewPayrollRecord(input: $input) { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod } }", de = "mutation UpdateCrewPayrollRecord($id: ID!, $input: UpdateCrewPayrollRecordInput!) { updateCrewPayrollRecord(id: $id, input: $input) { id employeeId employeeName department period grossPay deductions netPay status payDate paymentMethod } }", fe = "mutation RemoveCrewPayrollRecord($id: ID!) { removeCrewPayrollRecord(id: $id) }", O = "id country currency period payDate status employeeCount totalGrossPay totalNetPay calculatedAt approvedAt approvedBy notes", k = `query CrewPayrollRuns { crewPayrollRuns { ${O} } }`, A = `mutation CreateCrewPayrollRun($input: CreateCrewPayrollRunInput!) { createCrewPayrollRun(input: $input) { ${O} } }`, j = `mutation CalculateCrewPayrollRun($id: ID!) { calculateCrewPayrollRun(id: $id) { ${O} } }`, M = `mutation ApproveCrewPayrollRun($id: ID!) { approveCrewPayrollRun(id: $id) { ${O} } }`, N = "mutation RemoveCrewPayrollRun($id: ID!) { removeCrewPayrollRun(id: $id) }", P = "query CrewPayslips($filter: CrewPayslipFilterInput) { crewPayslips(filter: $filter) { id payrollRunId employeeId employeeName country currency period annualGrossSalary grossPay taxableIncome incomeTax employeeSocialContrib employerSocialContrib otherDeductions netPay incomeTaxBrackets { label rate bandFrom bandTo taxableInBand taxOnBand } employeeContributions { label rate base amount } employerContributions { label rate base amount } otherDeductionLines { label rate base amount } assumptions } }", F = "mutation CreateCrewTimeEntry($input: CreateCrewTimeEntryInput!) { createCrewTimeEntry(input: $input) { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable } }", I = "mutation UpdateCrewTimeEntry($id: ID!, $input: UpdateCrewTimeEntryInput!) { updateCrewTimeEntry(id: $id, input: $input) { id employeeId employeeName date clockIn clockOut totalHours overtime project status billable } }", L = "mutation RemoveCrewTimeEntry($id: ID!) { removeCrewTimeEntry(id: $id) }", R = "query CrewJobPostingMatches($jobPostingId: ID!, $filter: CrewCandidateMatchFilterInput, $limit: Int) { crewJobPostingMatches(jobPostingId: $jobPostingId, filter: $filter, limit: $limit) { candidateId jobPostingId score skillScore experienceScore matchedSkills missingSkills rationale candidate { id firstName lastName email phone position status appliedDate resumeUrl rating source experience skills currentCompany notes hiredDate } } }", z = "query EmployeeDocuments($employeeId: ID!) { employeeDocuments(employeeId: $employeeId) { id employeeId fileId title category uploadedBy uploadedAt } }", B = "mutation AttachEmployeeDocument($input: AttachCrewEmployeeDocumentInput!) { attachEmployeeDocument(input: $input) { id employeeId fileId title category uploadedBy uploadedAt } }", V = "mutation DetachEmployeeDocument($id: ID!) { detachEmployeeDocument(id: $id) }", pe = "mutation EnsureFolderByPath($path: String!) { ensureFolderByPath(path: $path) { id } }", me = "mutation InitiateUpload($input: InitiateUploadInput!) { initiateUpload(input: $input) { session { id } uploadUrl } }", he = "mutation CompleteUpload($input: CompleteUploadInput!) { completeUpload(input: $input) { file { id } } }", ge = "query CrewOnboardings { crewOnboardings { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", _e = "mutation CreateCrewOnboarding($input: CreateCrewOnboardingInput!) { createCrewOnboarding(input: $input) { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", ve = "mutation UpdateCrewOnboarding($id: ID!, $input: UpdateCrewOnboardingInput!) { updateCrewOnboarding(id: $id, input: $input) { id candidateId employeeId fullName position department startDate status currentStage createdAt totalTaskCount completedTaskCount progressPercent tasks { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } } }", ye = "mutation RemoveCrewOnboarding($id: ID!) { removeCrewOnboarding(id: $id) }", be = "mutation CreateCrewOnboardingTask($input: CreateCrewOnboardingTaskInput!) { createCrewOnboardingTask(input: $input) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", xe = "mutation UpdateCrewOnboardingTask($id: ID!, $input: UpdateCrewOnboardingTaskInput!) { updateCrewOnboardingTask(id: $id, input: $input) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", Se = "mutation RemoveCrewOnboardingTask($id: ID!) { removeCrewOnboardingTask(id: $id) }", Ce = "mutation ToggleCrewOnboardingTask($id: ID!, $completed: Boolean!) { toggleCrewOnboardingTask(id: $id, completed: $completed) { id onboardingId stage title assigneeActorId assigneeName dueDate completedAt sortOrder } }", H = (e) => e.toUpperCase().replaceAll("-", "_"), U = (e) => /* @__PURE__ */ Error(`${e} isn't available in CrewFoundry.`), W = {
5
5
  employee: ["status", "type"],
6
6
  department: ["status"],
7
7
  jobPosting: [
@@ -37,19 +37,19 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
37
37
  }, K = (e) => ({
38
38
  ...G(e, W.onboarding),
39
39
  tasks: (e.tasks ?? []).map((e) => G(e, W.onboardingTask))
40
- }), q = (e) => e ? e.slice(0, 10) : "TBD", _e = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, J = (e) => typeof e == "number" ? e : null, Y = (e) => typeof e == "string" ? e : null, ve = (e) => {
40
+ }), q = (e) => e ? e.slice(0, 10) : "TBD", we = (e) => !e || typeof e != "object" || Array.isArray(e) ? null : e, J = (e) => typeof e == "number" ? e : null, Y = (e) => typeof e == "string" ? e : null, Te = (e) => {
41
41
  let t = e.toLowerCase();
42
42
  return t === "active" ? "active" : t === "completed" ? "completed" : t === "cancelled" ? "cancelled" : t === "archived" ? "on_hold" : "planning";
43
- }, ye = (e) => {
43
+ }, Ee = (e) => {
44
44
  let t = e.toLowerCase();
45
45
  return t === "active" ? "active" : t === "inactive" || t === "archived" || t === "deleted" ? "disbanded" : "forming";
46
- }, be = (e, t) => e.map((e, n) => {
47
- let r = _e(e.config), i = J(r?.budget) ?? 25e3 + n * 2500, a = J(r?.spent) ?? Math.round(i * (e.status === "COMPLETED" ? 1 : .62)), o = J(r?.progress) ?? (e.status === "COMPLETED" ? 100 : 58), s = J(r?.tasks) ?? 20 + n % 9, c = J(r?.completedTasks) ?? Math.round(o / 100 * s), l = t[n % Math.max(t.length, 1)];
46
+ }, De = (e, t) => e.map((e, n) => {
47
+ let r = we(e.config), i = J(r?.budget) ?? 25e3 + n * 2500, a = J(r?.spent) ?? Math.round(i * (e.status === "COMPLETED" ? 1 : .62)), o = J(r?.progress) ?? (e.status === "COMPLETED" ? 100 : 58), s = J(r?.tasks) ?? 20 + n % 9, c = J(r?.completedTasks) ?? Math.round(o / 100 * s), l = t[n % Math.max(t.length, 1)];
48
48
  return {
49
49
  id: e.id,
50
50
  name: e.name,
51
51
  description: Y(r?.description) || `${e.key} delivery plan`,
52
- status: ve(e.status),
52
+ status: Te(e.status),
53
53
  priority: Y(r?.priority)?.toLowerCase() || "medium",
54
54
  startDate: q(e.createdAt),
55
55
  endDate: q(e.updatedAt),
@@ -63,7 +63,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
63
63
  tasks: s,
64
64
  completedTasks: c
65
65
  };
66
- }), xe = (e) => e.map(({ node: e }) => ({
66
+ }), Oe = (e) => e.map(({ node: e }) => ({
67
67
  id: e.id,
68
68
  name: e.name,
69
69
  description: e.description || `${e.name} team workspace`,
@@ -72,10 +72,10 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
72
72
  members: [],
73
73
  memberCount: e.memberCount,
74
74
  department: e.groupType?.toLowerCase().replaceAll("_", " ") || "operations",
75
- status: ye(e.status),
75
+ status: Ee(e.status),
76
76
  projectCount: 0,
77
77
  createdAt: q(e.createdAt)
78
- })), Se = (e) => e.filter(({ node: e }) => e.unreadCount > 0).map(({ node: e }) => ({
78
+ })), ke = (e) => e.filter(({ node: e }) => e.unreadCount > 0).map(({ node: e }) => ({
79
79
  id: `conversation-${e.id}`,
80
80
  title: e.title || "Conversation update",
81
81
  message: `${e.unreadCount} unread in ${e.memberCount}-member channel`,
@@ -84,7 +84,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
84
84
  read: !1,
85
85
  createdAt: e.updatedAt,
86
86
  actionUrl: "/crewfoundry/communications/messages-page"
87
- })), Ce = (e) => {
87
+ })), Ae = (e) => {
88
88
  let t = e.getBillingAccountsByOrg.find((e) => e?.isDefault && e?.id) || e.getBillingAccountsByOrg.find((e) => e?.id);
89
89
  return t?.id ? (t.paymentMethods || []).filter((e) => !!e).map((e) => {
90
90
  let n = e.expiryMonth ? String(e.expiryMonth).padStart(2, "0") : void 0, r = e.expiryYear ? String(e.expiryYear) : void 0, i = e.type === "BANK_TRANSFER" || e.type === "NETBANKING";
@@ -102,7 +102,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
102
102
  if (e.errors?.length) throw Error(e.errors[0]?.message || t);
103
103
  if (!e.data) throw Error(t);
104
104
  return e.data;
105
- }, we = new Set([
105
+ }, je = new Set([
106
106
  "id",
107
107
  "createdAt",
108
108
  "createdOn",
@@ -124,12 +124,12 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
124
124
  "viewCount",
125
125
  "revenue",
126
126
  "projects"
127
- ]), Te = (e) => {
127
+ ]), Me = (e) => {
128
128
  if (!e) return e;
129
129
  let t = e.input;
130
130
  if (!t || typeof t != "object" || Array.isArray(t)) return e;
131
131
  let n = {};
132
- for (let [e, r] of Object.entries(t)) we.has(e) || (n[e] = r);
132
+ for (let [e, r] of Object.entries(t)) je.has(e) || (n[e] = r);
133
133
  return {
134
134
  ...e,
135
135
  input: n
@@ -137,15 +137,15 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
137
137
  }, Z = async (e, n, r, i, a = "workspace") => X(await t({
138
138
  gateway: a,
139
139
  query: e,
140
- variables: Te(n),
140
+ variables: Me(n),
141
141
  authToken: r.authToken,
142
142
  baseUrl: a === "workspace" ? r.apiGatewayUrl : void 0,
143
143
  extraHeaders: { ...a === "workspace" && r.workspaceId ? { "x-workspace-id": r.workspaceId } : {} }
144
- }), i), Ee = () => !1, Q = async (e, t, n, r, i = "workspace") => {
144
+ }), i), Ne = () => !1, Q = async (e, t, n, r, i = "workspace") => {
145
145
  try {
146
146
  return await Z(e, t, n, r, i);
147
147
  } catch (e) {
148
- return Ee() && console.warn(`[crewfoundry] overlap query skipped: ${r}`, e), null;
148
+ return Ne() && console.warn(`[crewfoundry] overlap query skipped: ${r}`, e), null;
149
149
  }
150
150
  }, $ = e((e) => ({
151
151
  metrics: [
@@ -229,6 +229,11 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
229
229
  onboardingsLoaded: !1,
230
230
  jobPostingMatches: {},
231
231
  jobPostingMatchesLoading: !1,
232
+ payrollRuns: [],
233
+ payrollRunsLoaded: !1,
234
+ payrollRunsLoading: !1,
235
+ payslipsByRun: {},
236
+ payslipsLoading: !1,
232
237
  initializeData: async (t) => {
233
238
  if (t.workspaceId) {
234
239
  e({
@@ -249,7 +254,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
249
254
  }, t, "Unable to load workspace bootstrap with overlap data"),
250
255
  Q(a, void 0, t, "Unable to load overlap billing data", "global"),
251
256
  Q(r, void 0, t, "Unable to load payroll records")
252
- ]), l = o ? o.crewfoundryBootstrap : (await Z(n, void 0, t, "Unable to load CrewFoundry data")).crewfoundryBootstrap, u = o ? xe(o.groups.edges) : [], d = o ? be(o.projects.items, u) : [], f = o ? Se(o.conversations.edges) : [], p = u.length > 0 ? u : l.teams, m = d.length > 0 ? d : l.projects, h = f, g = s ? Ce(s) : [], _ = l.employees.map((e) => G(e, W.employee)), v = l.departments.map((e) => G(e, W.department)), y = l.jobPostings.map((e) => G(e, W.jobPosting)), b = l.candidates.map((e) => G(e, W.candidate)), x = l.interviews.map((e) => G(e, W.interview)), S = [], C = [], w = l.announcements.map((e) => G(e, W.announcement)), T = p.map((e) => G(e, W.team)), E = m.map((e) => G(e, W.project));
257
+ ]), l = o ? o.crewfoundryBootstrap : (await Z(n, void 0, t, "Unable to load CrewFoundry data")).crewfoundryBootstrap, u = o ? Oe(o.groups.edges) : [], d = o ? De(o.projects.items, u) : [], f = o ? ke(o.conversations.edges) : [], p = u.length > 0 ? u : l.teams, m = d.length > 0 ? d : l.projects, h = f, g = s ? Ae(s) : [], _ = l.employees.map((e) => G(e, W.employee)), v = l.departments.map((e) => G(e, W.department)), y = l.jobPostings.map((e) => G(e, W.jobPosting)), b = l.candidates.map((e) => G(e, W.candidate)), x = l.interviews.map((e) => G(e, W.interview)), S = [], C = [], w = l.announcements.map((e) => G(e, W.announcement)), T = p.map((e) => G(e, W.team)), E = m.map((e) => G(e, W.project));
253
258
  e({
254
259
  employees: _,
255
260
  departments: v,
@@ -477,7 +482,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
477
482
  e((e) => ({ clients: [G(r.createCrewClient, W.client), ...e.clients] }));
478
483
  },
479
484
  updateClient: async (t, n) => {
480
- let r = $.getState().initParams, i = await Z(ee, {
485
+ let r = $.getState().initParams, i = await Z(D, {
481
486
  id: t,
482
487
  input: {
483
488
  ...n,
@@ -488,14 +493,14 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
488
493
  },
489
494
  removeClient: async (t) => {
490
495
  let n = $.getState().initParams;
491
- await Z(te, { id: t }, n, "Unable to remove client"), e((e) => ({ clients: e.clients.filter((e) => e.id !== t) }));
496
+ await Z(ee, { id: t }, n, "Unable to remove client"), e((e) => ({ clients: e.clients.filter((e) => e.id !== t) }));
492
497
  },
493
498
  addTeam: async (t) => {
494
- let n = $.getState().initParams, r = await Z(ne, { input: t }, n, "Unable to create team");
499
+ let n = $.getState().initParams, r = await Z(te, { input: t }, n, "Unable to create team");
495
500
  e((e) => ({ teams: [G(r.createCrewTeam, W.team), ...e.teams] }));
496
501
  },
497
502
  updateTeam: async (t, n) => {
498
- let r = $.getState().initParams, i = await Z(re, {
503
+ let r = $.getState().initParams, i = await Z(ne, {
499
504
  id: t,
500
505
  input: n
501
506
  }, r, "Unable to update team");
@@ -503,10 +508,10 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
503
508
  },
504
509
  removeTeam: async (t) => {
505
510
  let n = $.getState().initParams;
506
- await Z(ie, { id: t }, n, "Unable to remove team"), e((e) => ({ teams: e.teams.filter((e) => e.id !== t) }));
511
+ await Z(re, { id: t }, n, "Unable to remove team"), e((e) => ({ teams: e.teams.filter((e) => e.id !== t) }));
507
512
  },
508
513
  addProject: async (t) => {
509
- let n = $.getState().initParams, r = await Z(ae, { input: {
514
+ let n = $.getState().initParams, r = await Z(ie, { input: {
510
515
  ...t,
511
516
  status: H(t.status),
512
517
  priority: H(t.priority)
@@ -514,7 +519,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
514
519
  e((e) => ({ projects: [G(r.createCrewProject, W.project), ...e.projects] }));
515
520
  },
516
521
  updateProject: async (t, n) => {
517
- let r = $.getState().initParams, i = await Z(oe, {
522
+ let r = $.getState().initParams, i = await Z(ae, {
518
523
  id: t,
519
524
  input: {
520
525
  ...n,
@@ -526,7 +531,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
526
531
  },
527
532
  removeProject: async (t) => {
528
533
  let n = $.getState().initParams;
529
- await Z(se, { id: t }, n, "Unable to remove project"), e((e) => ({ projects: e.projects.filter((e) => e.id !== t) }));
534
+ await Z(oe, { id: t }, n, "Unable to remove project"), e((e) => ({ projects: e.projects.filter((e) => e.id !== t) }));
530
535
  },
531
536
  addMarketplaceService: async () => {
532
537
  throw U("Marketplace services");
@@ -538,11 +543,11 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
538
543
  throw U("Marketplace services");
539
544
  },
540
545
  addDepartment: async (t) => {
541
- let n = $.getState().initParams, r = await Z(ce, { input: t }, n, "Unable to create department");
546
+ let n = $.getState().initParams, r = await Z(se, { input: t }, n, "Unable to create department");
542
547
  e((e) => ({ departments: [G(r.createCrewDepartment, W.department), ...e.departments] }));
543
548
  },
544
549
  updateDepartment: async (t, n) => {
545
- let r = $.getState().initParams, i = await Z(le, {
550
+ let r = $.getState().initParams, i = await Z(ce, {
546
551
  id: t,
547
552
  input: n
548
553
  }, r, "Unable to update department");
@@ -550,7 +555,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
550
555
  },
551
556
  removeDepartment: async (t) => {
552
557
  let n = $.getState().initParams;
553
- await Z(ue, { id: t }, n, "Unable to remove department"), e((e) => ({ departments: e.departments.filter((e) => e.id !== t) }));
558
+ await Z(le, { id: t }, n, "Unable to remove department"), e((e) => ({ departments: e.departments.filter((e) => e.id !== t) }));
554
559
  },
555
560
  addCourse: async () => {
556
561
  throw U("Courses");
@@ -574,14 +579,14 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
574
579
  throw U("Learning paths");
575
580
  },
576
581
  addPayrollRecord: async (t) => {
577
- let n = $.getState().initParams, r = await Z(de, { input: {
582
+ let n = $.getState().initParams, r = await Z(ue, { input: {
578
583
  ...t,
579
584
  status: H(t.status)
580
585
  } }, n, "Unable to create payroll record");
581
586
  e((e) => ({ payrollRecords: [G(r.createCrewPayrollRecord, W.payrollRecord), ...e.payrollRecords] }));
582
587
  },
583
588
  updatePayrollRecord: async (t, n) => {
584
- let r = $.getState().initParams, i = await Z(fe, {
589
+ let r = $.getState().initParams, i = await Z(de, {
585
590
  id: t,
586
591
  input: {
587
592
  ...n,
@@ -592,14 +597,14 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
592
597
  },
593
598
  removePayrollRecord: async (t) => {
594
599
  let n = $.getState().initParams;
595
- await Z(D, { id: t }, n, "Unable to remove payroll record"), e((e) => ({ payrollRecords: e.payrollRecords.filter((e) => e.id !== t) }));
600
+ await Z(fe, { id: t }, n, "Unable to remove payroll record"), e((e) => ({ payrollRecords: e.payrollRecords.filter((e) => e.id !== t) }));
596
601
  },
597
602
  addTimeEntry: async (t) => {
598
- let n = $.getState().initParams, r = await Z(O, { input: t }, n, "Unable to create time entry");
603
+ let n = $.getState().initParams, r = await Z(F, { input: t }, n, "Unable to create time entry");
599
604
  e((e) => ({ timeEntries: [G(r.createCrewTimeEntry, W.timeEntry), ...e.timeEntries] }));
600
605
  },
601
606
  updateTimeEntry: async (t, n) => {
602
- let r = $.getState().initParams, i = await Z(k, {
607
+ let r = $.getState().initParams, i = await Z(I, {
603
608
  id: t,
604
609
  input: n
605
610
  }, r, "Unable to update time entry");
@@ -607,13 +612,13 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
607
612
  },
608
613
  removeTimeEntry: async (t) => {
609
614
  let n = $.getState().initParams;
610
- await Z(A, { id: t }, n, "Unable to remove time entry"), e((e) => ({ timeEntries: e.timeEntries.filter((e) => e.id !== t) }));
615
+ await Z(L, { id: t }, n, "Unable to remove time entry"), e((e) => ({ timeEntries: e.timeEntries.filter((e) => e.id !== t) }));
611
616
  },
612
617
  fetchJobPostingMatches: async (t) => {
613
618
  let n = $.getState().initParams;
614
619
  e({ jobPostingMatchesLoading: !0 });
615
620
  try {
616
- let r = (await Z(j, { jobPostingId: t }, n, "Unable to load candidate matches")).crewJobPostingMatches.map((e) => ({
621
+ let r = (await Z(R, { jobPostingId: t }, n, "Unable to load candidate matches")).crewJobPostingMatches.map((e) => ({
617
622
  ...e,
618
623
  candidate: G(e.candidate, W.candidate)
619
624
  }));
@@ -628,12 +633,63 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
628
633
  throw e({ jobPostingMatchesLoading: !1 }), t;
629
634
  }
630
635
  },
636
+ fetchPayrollRuns: async () => {
637
+ let t = $.getState().initParams;
638
+ e({ payrollRunsLoading: !0 });
639
+ try {
640
+ e({
641
+ payrollRuns: (await Z(k, void 0, t, "Unable to load payroll runs")).crewPayrollRuns,
642
+ payrollRunsLoaded: !0,
643
+ payrollRunsLoading: !1
644
+ });
645
+ } catch (t) {
646
+ throw e({ payrollRunsLoading: !1 }), t;
647
+ }
648
+ },
649
+ createPayrollRun: async (t) => {
650
+ let n = $.getState().initParams, r = await Z(A, { input: t }, n, "Unable to create payroll run");
651
+ e((e) => ({ payrollRuns: [r.createCrewPayrollRun, ...e.payrollRuns] }));
652
+ },
653
+ calculatePayrollRun: async (t) => {
654
+ let n = $.getState().initParams, r = await Z(j, { id: t }, n, "Unable to calculate payroll run");
655
+ e((e) => ({
656
+ payrollRuns: e.payrollRuns.map((e) => e.id === t ? r.calculateCrewPayrollRun : e),
657
+ payslipsByRun: Object.fromEntries(Object.entries(e.payslipsByRun).filter(([e]) => e !== t))
658
+ }));
659
+ },
660
+ approvePayrollRun: async (t) => {
661
+ let n = $.getState().initParams, r = await Z(M, { id: t }, n, "Unable to approve payroll run");
662
+ e((e) => ({ payrollRuns: e.payrollRuns.map((e) => e.id === t ? r.approveCrewPayrollRun : e) }));
663
+ },
664
+ removePayrollRun: async (t) => {
665
+ let n = $.getState().initParams;
666
+ await Z(N, { id: t }, n, "Unable to remove payroll run"), e((e) => ({
667
+ payrollRuns: e.payrollRuns.filter((e) => e.id !== t),
668
+ payslipsByRun: Object.fromEntries(Object.entries(e.payslipsByRun).filter(([e]) => e !== t))
669
+ }));
670
+ },
671
+ fetchPayslipsForRun: async (t) => {
672
+ let n = $.getState().initParams;
673
+ e({ payslipsLoading: !0 });
674
+ try {
675
+ let r = await Z(P, { filter: { payrollRunId: t } }, n, "Unable to load payslips");
676
+ e((e) => ({
677
+ payslipsByRun: {
678
+ ...e.payslipsByRun,
679
+ [t]: r.crewPayslips
680
+ },
681
+ payslipsLoading: !1
682
+ }));
683
+ } catch (t) {
684
+ throw e({ payslipsLoading: !1 }), t;
685
+ }
686
+ },
631
687
  fetchEmployeeDocuments: async (t) => {
632
- let n = $.getState().initParams, r = await Z(M, { employeeId: t }, n, "Unable to load employee documents");
688
+ let n = $.getState().initParams, r = await Z(z, { employeeId: t }, n, "Unable to load employee documents");
633
689
  e((e) => ({ employeeDocuments: [...e.employeeDocuments.filter((e) => e.employeeId !== t), ...r.employeeDocuments] }));
634
690
  },
635
691
  uploadEmployeeDocument: async ({ employeeId: t, file: n, title: r, category: i }) => {
636
- let a = $.getState().initParams, o = await Z(F, { path: "/CrewFoundry/Employee Documents" }, a, "Unable to resolve the employee documents folder"), s = n.name.includes(".") ? n.name.substring(n.name.lastIndexOf(".") + 1) : "", c = await Z(I, { input: {
692
+ let a = $.getState().initParams, o = await Z(pe, { path: "/CrewFoundry/Employee Documents" }, a, "Unable to resolve the employee documents folder"), s = n.name.includes(".") ? n.name.substring(n.name.lastIndexOf(".") + 1) : "", c = await Z(me, { input: {
637
693
  fileName: n.name,
638
694
  fileSize: String(n.size),
639
695
  mimeType: n.type || "application/octet-stream",
@@ -648,9 +704,9 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
648
704
  });
649
705
  if (!e.ok) throw Error(`Failed to upload file bytes (status ${e.status})`);
650
706
  }
651
- let l = await Z(N, { input: {
707
+ let l = await Z(B, { input: {
652
708
  employeeId: t,
653
- fileId: (await Z(L, { input: {
709
+ fileId: (await Z(he, { input: {
654
710
  sessionId: c.initiateUpload.session.id,
655
711
  fileSize: String(n.size),
656
712
  folderId: o.ensureFolderByPath.id
@@ -662,21 +718,21 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
662
718
  },
663
719
  detachEmployeeDocument: async (t) => {
664
720
  let n = $.getState().initParams;
665
- await Z(P, { id: t }, n, "Unable to remove this document"), e((e) => ({ employeeDocuments: e.employeeDocuments.filter((e) => e.id !== t) }));
721
+ await Z(V, { id: t }, n, "Unable to remove this document"), e((e) => ({ employeeDocuments: e.employeeDocuments.filter((e) => e.id !== t) }));
666
722
  },
667
723
  fetchOnboardings: async () => {
668
724
  let t = $.getState().initParams;
669
725
  e({
670
- onboardings: (await Z(R, {}, t, "Unable to load onboarding")).crewOnboardings.map(K),
726
+ onboardings: (await Z(ge, {}, t, "Unable to load onboarding")).crewOnboardings.map(K),
671
727
  onboardingsLoaded: !0
672
728
  });
673
729
  },
674
730
  createOnboarding: async (t) => {
675
- let n = $.getState().initParams, r = await Z(z, { input: t }, n, "Unable to start onboarding");
731
+ let n = $.getState().initParams, r = await Z(_e, { input: t }, n, "Unable to start onboarding");
676
732
  e((e) => ({ onboardings: [K(r.createCrewOnboarding), ...e.onboardings] }));
677
733
  },
678
734
  updateOnboarding: async (t, n) => {
679
- let r = $.getState().initParams, i = await Z(B, {
735
+ let r = $.getState().initParams, i = await Z(ve, {
680
736
  id: t,
681
737
  input: n
682
738
  }, r, "Unable to update onboarding");
@@ -684,10 +740,10 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
684
740
  },
685
741
  removeOnboarding: async (t) => {
686
742
  let n = $.getState().initParams;
687
- await Z(V, { id: t }, n, "Unable to remove onboarding"), e((e) => ({ onboardings: e.onboardings.filter((e) => e.id !== t) }));
743
+ await Z(ye, { id: t }, n, "Unable to remove onboarding"), e((e) => ({ onboardings: e.onboardings.filter((e) => e.id !== t) }));
688
744
  },
689
745
  createOnboardingTask: async (t) => {
690
- let n = $.getState().initParams, r = G((await Z(pe, { input: t }, n, "Unable to create onboarding task")).createCrewOnboardingTask, W.onboardingTask);
746
+ let n = $.getState().initParams, r = G((await Z(be, { input: t }, n, "Unable to create onboarding task")).createCrewOnboardingTask, W.onboardingTask);
691
747
  e((e) => ({ onboardings: e.onboardings.map((e) => e.id === r.onboardingId ? {
692
748
  ...e,
693
749
  tasks: [...e.tasks, r],
@@ -695,7 +751,7 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
695
751
  } : e) }));
696
752
  },
697
753
  updateOnboardingTask: async (t, n) => {
698
- let r = $.getState().initParams, i = G((await Z(me, {
754
+ let r = $.getState().initParams, i = G((await Z(xe, {
699
755
  id: t,
700
756
  input: n
701
757
  }, r, "Unable to update onboarding task")).updateCrewOnboardingTask, W.onboardingTask);
@@ -706,14 +762,14 @@ var n = "\n query CrewfoundryBootstrap {\n crewfoundryBootstrap {\n emp
706
762
  },
707
763
  removeOnboardingTask: async (t) => {
708
764
  let n = $.getState().initParams;
709
- await Z(he, { id: t }, n, "Unable to remove onboarding task"), e((e) => ({ onboardings: e.onboardings.map((e) => e.tasks.some((e) => e.id === t) ? {
765
+ await Z(Se, { id: t }, n, "Unable to remove onboarding task"), e((e) => ({ onboardings: e.onboardings.map((e) => e.tasks.some((e) => e.id === t) ? {
710
766
  ...e,
711
767
  tasks: e.tasks.filter((e) => e.id !== t),
712
768
  totalTaskCount: Math.max(0, e.totalTaskCount - 1)
713
769
  } : e) }));
714
770
  },
715
771
  toggleOnboardingTask: async (t, n) => {
716
- let r = $.getState().initParams, i = G((await Z(ge, {
772
+ let r = $.getState().initParams, i = G((await Z(Ce, {
717
773
  id: t,
718
774
  completed: n
719
775
  }, r, "Unable to update onboarding task")).toggleCrewOnboardingTask, W.onboardingTask);