@gusto/embedded-react-sdk 0.57.2 → 0.58.0

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 (425) hide show
  1. package/CHANGELOG.md +108 -0
  2. package/dist/components/Common/DataView/DataCards/DataCards.js +98 -66
  3. package/dist/components/Common/DataView/DataCards/DataCards.js.map +1 -1
  4. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js +11 -9
  5. package/dist/components/Common/DataView/DataCards/DataCards.module.scss.js.map +1 -1
  6. package/dist/components/Common/DataView/DataTable/DataTable.js +86 -75
  7. package/dist/components/Common/DataView/DataTable/DataTable.js.map +1 -1
  8. package/dist/components/Common/DataView/DataView.js.map +1 -1
  9. package/dist/components/Common/DataView/getSortControls.js +22 -0
  10. package/dist/components/Common/DataView/getSortControls.js.map +1 -0
  11. package/dist/components/Common/DataView/useDataView.js +30 -24
  12. package/dist/components/Common/DataView/useDataView.js.map +1 -1
  13. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js +32 -32
  14. package/dist/components/Common/DateRangeFilter/DateRangeFilter.js.map +1 -1
  15. package/dist/components/Common/OnboardingStatusBadge/index.js.map +1 -1
  16. package/dist/components/Common/UI/Table/Table.js +65 -25
  17. package/dist/components/Common/UI/Table/Table.js.map +1 -1
  18. package/dist/components/Common/UI/Table/Table.module.scss.js +8 -4
  19. package/dist/components/Common/UI/Table/Table.module.scss.js.map +1 -1
  20. package/dist/components/Common/UI/Table/TableTypes.js.map +1 -1
  21. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +3 -4
  22. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  23. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +3 -4
  24. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  25. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +5 -6
  26. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  27. package/dist/components/Company/BankAccount/BankAccountForm/context.js +3 -4
  28. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  29. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  30. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  31. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +5 -6
  32. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  33. package/dist/components/Company/Industry/Context.js +6 -7
  34. package/dist/components/Company/Industry/Context.js.map +1 -1
  35. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +3 -4
  36. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  37. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +3 -4
  38. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  39. package/dist/components/Company/OnboardingOverview/context.js +3 -4
  40. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  41. package/dist/components/Company/PaySchedule/PaySchedule.js +30 -45
  42. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  43. package/dist/components/Company/PaySchedule/PayScheduleComponents.js +11 -12
  44. package/dist/components/Company/PaySchedule/PayScheduleComponents.js.map +1 -1
  45. package/dist/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.js.map +1 -1
  46. package/dist/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.js.map +1 -1
  47. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js +34 -14
  48. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.js.map +1 -1
  49. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js +106 -0
  50. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.js.map +1 -0
  51. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js +136 -0
  52. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.js.map +1 -0
  53. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js +38 -20
  54. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.js.map +1 -1
  55. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js +78 -44
  56. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.js.map +1 -1
  57. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js +45 -37
  58. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.js.map +1 -1
  59. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js +244 -95
  60. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.js.map +1 -1
  61. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js +22 -0
  62. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.js.map +1 -0
  63. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js +13 -0
  64. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.js.map +1 -0
  65. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js +48 -43
  66. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/payScheduleAssignmentStateMachine.js.map +1 -1
  67. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.js.map +1 -1
  68. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js +57 -0
  69. package/dist/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.js.map +1 -0
  70. package/dist/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.js.map +1 -1
  71. package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js +83 -0
  72. package/dist/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.js.map +1 -0
  73. package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js +84 -0
  74. package/dist/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.js.map +1 -0
  75. package/dist/components/Company/PaySchedule/management/PayScheduleManagementComponents.js.map +1 -1
  76. package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js +109 -39
  77. package/dist/components/Company/PaySchedule/management/PayScheduleOverview.js.map +1 -1
  78. package/dist/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.js.map +1 -1
  79. package/dist/components/Company/PaySchedule/management/payScheduleManagementStateMachine.js.map +1 -1
  80. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
  81. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
  82. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +78 -83
  83. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  84. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +3 -4
  85. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  86. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +3 -4
  87. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  88. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +3 -4
  89. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  90. package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js +5 -5
  91. package/dist/components/Contractor/Address/shared/useContractorAddressForm/useContractorAddressForm.js.map +1 -1
  92. package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js +1 -1
  93. package/dist/components/Contractor/Address/shared/useContractorAddressSummary/useContractorAddressSummary.js.map +1 -1
  94. package/dist/components/Contractor/Compensation/management/CompensationEditForm.js +45 -54
  95. package/dist/components/Contractor/Compensation/management/CompensationEditForm.js.map +1 -1
  96. package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js +4 -4
  97. package/dist/components/Contractor/Compensation/shared/useContractorCompensationSummary/useContractorCompensationSummary.js.map +1 -1
  98. package/dist/components/Contractor/Compensation/shared/useContractorPayForm/contractorPaySchema.js +17 -22
  99. package/dist/components/Contractor/Compensation/shared/useContractorPayForm/contractorPaySchema.js.map +1 -1
  100. package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js +3 -3
  101. package/dist/components/Contractor/Compensation/shared/useContractorPayForm/useContractorPayForm.js.map +1 -1
  102. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +1 -0
  103. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -1
  104. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +122 -113
  105. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
  106. package/dist/components/Contractor/ContractorList/shared/useContractorList.js +63 -54
  107. package/dist/components/Contractor/ContractorList/shared/useContractorList.js.map +1 -1
  108. package/dist/components/Contractor/Dashboard/Dashboard.js +20 -20
  109. package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
  110. package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js +10 -10
  111. package/dist/components/Contractor/Dismissal/useDismissal/useDismissal.js.map +1 -1
  112. package/dist/components/Contractor/Landing/Landing.js +43 -39
  113. package/dist/components/Contractor/Landing/Landing.js.map +1 -1
  114. package/dist/components/Contractor/NewHireReport/NewHireReport.js +3 -3
  115. package/dist/components/Contractor/NewHireReport/NewHireReport.js.map +1 -1
  116. package/dist/components/Contractor/PaymentMethod/onboarding/PaymentMethod.js +39 -48
  117. package/dist/components/Contractor/PaymentMethod/onboarding/PaymentMethod.js.map +1 -1
  118. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +1 -1
  119. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
  120. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +10 -10
  121. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  122. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +4 -4
  123. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
  124. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +8 -8
  125. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  126. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +5 -5
  127. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  128. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js +3 -3
  129. package/dist/components/Contractor/Payments/PaymentSummary/PaymentSummary.js.map +1 -1
  130. package/dist/components/Contractor/Profile/onboarding/ContractorProfile.js +76 -69
  131. package/dist/components/Contractor/Profile/onboarding/ContractorProfile.js.map +1 -1
  132. package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js +1 -1
  133. package/dist/components/Contractor/Profile/onboarding/SelfOnboardingContractorProfile.js.map +1 -1
  134. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js +27 -29
  135. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/contractorDetailsSchema.js.map +1 -1
  136. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js +15 -13
  137. package/dist/components/Contractor/Profile/shared/useContractorDetailsForm/useContractorDetailsForm.js.map +1 -1
  138. package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js +1 -1
  139. package/dist/components/Contractor/Profile/shared/useContractorProfileSummary/useContractorProfileSummary.js.map +1 -1
  140. package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js +2 -9
  141. package/dist/components/Contractor/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
  142. package/dist/components/Contractor/Submit/Submit.js +18 -18
  143. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  144. package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js +6 -6
  145. package/dist/components/Contractor/shared/SelectContractors/useSelectContractors.js.map +1 -1
  146. package/dist/components/Contractor/shared/hourlyRate.js +14 -0
  147. package/dist/components/Contractor/shared/hourlyRate.js.map +1 -0
  148. package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js +63 -63
  149. package/dist/components/Employee/Compensation/management/CompensationCard/CompensationCard.js.map +1 -1
  150. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js +25 -25
  151. package/dist/components/Employee/Compensation/shared/useCompensationForm/useCompensationForm.js.map +1 -1
  152. package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js +15 -15
  153. package/dist/components/Employee/Compensation/shared/useCompensationManagement/useCompensationManagement.js.map +1 -1
  154. package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js +1 -1
  155. package/dist/components/Employee/Compensation/shared/useJobForm/useJobForm.js.map +1 -1
  156. package/dist/components/Employee/Dashboard/Dashboard.js +25 -25
  157. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  158. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +3 -4
  159. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  160. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js +7 -7
  161. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentSigner.js.map +1 -1
  162. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +1 -1
  163. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
  164. package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js +6 -6
  165. package/dist/components/Employee/HomeAddress/management/useHomeAddressManagement.js.map +1 -1
  166. package/dist/components/Employee/Landing/Landing.js +37 -33
  167. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  168. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js +27 -27
  169. package/dist/components/Employee/OnboardingSummary/OnboardingSummary.js.map +1 -1
  170. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js +65 -74
  171. package/dist/components/Employee/PaymentMethod/onboarding/ListView.js.map +1 -1
  172. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js +6 -6
  173. package/dist/components/Employee/Profile/shared/useEmployeeDetailsForm/useEmployeeDetailsForm.js.map +1 -1
  174. package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js +1 -1
  175. package/dist/components/Employee/Profile/shared/useEmployeeProfileSummary/useEmployeeProfileSummary.js.map +1 -1
  176. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js +8 -15
  177. package/dist/components/Employee/SelfOnboardingFlow/SelfOnboardingComponents.js.map +1 -1
  178. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +11 -11
  179. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  180. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +12 -12
  181. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
  182. package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js +26 -26
  183. package/dist/components/Employee/WorkAddress/management/useWorkAddressManagement.js.map +1 -1
  184. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +16 -16
  185. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
  186. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +2 -3
  187. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  188. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +84 -82
  189. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  190. package/dist/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.js +8 -0
  191. package/dist/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.js.map +1 -0
  192. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +97 -92
  193. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  194. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js +1 -1
  195. package/dist/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.js.map +1 -1
  196. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +18 -18
  197. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  198. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +146 -134
  199. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  200. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.module.scss.js +14 -12
  201. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.module.scss.js.map +1 -1
  202. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js +34 -33
  203. package/dist/components/Payroll/PayrollEditEmployee/TimeOffField.js.map +1 -1
  204. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js +49 -48
  205. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js.map +1 -1
  206. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +1 -1
  207. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
  208. package/dist/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.js.map +1 -1
  209. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js +0 -4
  210. package/dist/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.js.map +1 -1
  211. package/dist/components/Payroll/PayrollFlow/PayrollFlow.js.map +1 -1
  212. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js +51 -38
  213. package/dist/components/Payroll/PayrollFlow/PayrollFlowComponents.js.map +1 -1
  214. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js +121 -102
  215. package/dist/components/Payroll/PayrollFlow/payrollStateMachine.js.map +1 -1
  216. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  217. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +6 -6
  218. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  219. package/dist/components/Payroll/PayrollLanding/PayrollLanding.js.map +1 -1
  220. package/dist/components/Payroll/PayrollList/PayrollList.js +79 -74
  221. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  222. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +9 -9
  223. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  224. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +92 -83
  225. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  226. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  227. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +23 -27
  228. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  229. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +82 -75
  230. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  231. package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.js +416 -0
  232. package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.js.map +1 -0
  233. package/dist/components/Payroll/{UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js → RropPayrollEditEmployee/RropPayrollEditEmployee.module.scss.js} +1 -1
  234. package/dist/components/Payroll/RropPayrollEditEmployee/RropPayrollEditEmployee.module.scss.js.map +1 -0
  235. package/dist/components/Payroll/TransitionConfiguration/TransitionConfiguration.js +97 -0
  236. package/dist/components/Payroll/TransitionConfiguration/TransitionConfiguration.js.map +1 -0
  237. package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.js +106 -0
  238. package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.js.map +1 -0
  239. package/dist/components/Payroll/{TransitionCreation/TransitionCreationPresentation.module.scss.js → TransitionConfiguration/TransitionConfigurationPresentation.module.scss.js} +1 -1
  240. package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.module.scss.js.map +1 -0
  241. package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.js +10 -0
  242. package/dist/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.js.map +1 -0
  243. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +86 -64
  244. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
  245. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js +126 -77
  246. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.js.map +1 -1
  247. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.module.scss.js +8 -0
  248. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.module.scss.js.map +1 -0
  249. package/dist/components/Payroll/helpers.js +1 -1
  250. package/dist/components/Payroll/helpers.js.map +1 -1
  251. package/dist/components/Payroll/index.js +16 -20
  252. package/dist/components/Payroll/index.js.map +1 -1
  253. package/dist/components/Payroll/payrollTypes.js +1 -1
  254. package/dist/components/Payroll/payrollTypes.js.map +1 -1
  255. package/dist/components/Payroll/usePreparedPayrollData.js +2 -3
  256. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  257. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js +11 -14
  258. package/dist/components/Payroll/useUnprocessedTransitionPayPeriods.js.map +1 -1
  259. package/dist/contexts/ApiProvider/ApiProvider.js +18 -17
  260. package/dist/contexts/ApiProvider/ApiProvider.js.map +1 -1
  261. package/dist/contexts/ApiProvider/payScheduleCustomNameHook.js +31 -0
  262. package/dist/contexts/ApiProvider/payScheduleCustomNameHook.js.map +1 -0
  263. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js +1 -1
  264. package/dist/contexts/ApiProvider/payrollOffCycleReasonEnumHook.js.map +1 -1
  265. package/dist/contexts/FeaturesProvider/FeaturesProvider.js +14 -0
  266. package/dist/contexts/FeaturesProvider/FeaturesProvider.js.map +1 -0
  267. package/dist/contexts/FeaturesProvider/useFeature.js +7 -0
  268. package/dist/contexts/FeaturesProvider/useFeature.js.map +1 -0
  269. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js +32 -30
  270. package/dist/contexts/GustoProvider/GustoProviderCustomUIAdapter.js.map +1 -1
  271. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  272. package/dist/i18n/I18n.js +2 -3
  273. package/dist/i18n/I18n.js.map +1 -1
  274. package/dist/i18n/en/Company.Management.PaySchedule.json.js +31 -13
  275. package/dist/i18n/en/Company.Management.PaySchedule.json.js.map +1 -1
  276. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js +20 -12
  277. package/dist/i18n/en/Company.Management.PayScheduleAssignment.json.js.map +1 -1
  278. package/dist/i18n/en/Contractor.Profile.json.js +1 -1
  279. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +29 -23
  280. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js.map +1 -1
  281. package/dist/i18n/en/Payroll.PayrollHistory.json.js +1 -1
  282. package/dist/i18n/en/Payroll.PayrollLanding.json.js +1 -1
  283. package/dist/i18n/en/Payroll.PayrollList.json.js +5 -5
  284. package/dist/i18n/en/{Payroll.UNSTABLE_PayrollEditEmployee.json.js → Payroll.RropPayrollEditEmployee.json.js} +42 -38
  285. package/dist/i18n/en/Payroll.RropPayrollEditEmployee.json.js.map +1 -0
  286. package/dist/i18n/en/Payroll.TransitionConfiguration.json.js +28 -0
  287. package/dist/i18n/en/Payroll.TransitionConfiguration.json.js.map +1 -0
  288. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js +16 -12
  289. package/dist/i18n/en/Payroll.TransitionPayrollAlert.json.js.map +1 -1
  290. package/dist/i18n/en/common.json.js +1 -1
  291. package/dist/package.json.js +1 -1
  292. package/dist/partner-hook-utils/form/composeSubmitHandler.js +55 -48
  293. package/dist/partner-hook-utils/form/composeSubmitHandler.js.map +1 -1
  294. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js +31 -29
  295. package/dist/partner-hook-utils/form/fields/RadioGroupHookField.js.map +1 -1
  296. package/dist/shared/constants.js +7 -6
  297. package/dist/shared/constants.js.map +1 -1
  298. package/dist/src/components/Common/DataView/DataCards/DataCards.d.ts +3 -1
  299. package/dist/src/components/Common/DataView/DataTable/DataTable.d.ts +3 -1
  300. package/dist/src/components/Common/DataView/DataView.d.ts +2 -0
  301. package/dist/src/components/Common/DataView/getSortControls.d.ts +24 -0
  302. package/dist/src/components/Common/DataView/useDataView.d.ts +22 -1
  303. package/dist/src/components/Common/DateRangeFilter/DateRangeFilter.d.ts +2 -2
  304. package/dist/src/components/Common/OnboardingStatusBadge/index.d.ts +1 -1
  305. package/dist/src/components/Common/UI/Table/TableTypes.d.ts +71 -2
  306. package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +1 -9
  307. package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +0 -1
  308. package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/AutoPilotDialog.d.ts +1 -1
  309. package/dist/src/components/Company/PaySchedule/management/AutoPilotDialog/useAutoPilotDialog.d.ts +1 -1
  310. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentCompensationStepPresentation.d.ts +10 -3
  311. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentDepartmentStepPresentation.d.ts +21 -0
  312. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentEmployeeStepPresentation.d.ts +34 -0
  313. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentScheduleStepPresentation.d.ts +9 -3
  314. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/AssignmentTypeStepPresentation.d.ts +5 -1
  315. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignment.d.ts +10 -10
  316. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/PayScheduleAssignmentComponents.d.ts +12 -4
  317. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/departmentAccess.d.ts +19 -0
  318. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/employeeJob.d.ts +17 -0
  319. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/scheduleLabel.d.ts +1 -1
  320. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/useAssignableEmployees.d.ts +34 -0
  321. package/dist/src/components/Company/PaySchedule/management/PayScheduleAssignment/usePayScheduleAssignment.d.ts +16 -3
  322. package/dist/src/components/Company/PaySchedule/management/PayScheduleCompensationOverviewPresentation.d.ts +1 -1
  323. package/dist/src/components/Company/PaySchedule/management/PayScheduleDepartmentOverviewPresentation.d.ts +23 -0
  324. package/dist/src/components/Company/PaySchedule/management/PayScheduleEmployeeOverviewPresentation.d.ts +25 -0
  325. package/dist/src/components/Company/PaySchedule/management/PayScheduleManagementComponents.d.ts +1 -1
  326. package/dist/src/components/Company/PaySchedule/management/PayScheduleOverviewPresentation.d.ts +1 -1
  327. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +1 -1
  328. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.d.ts +1 -1
  329. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +4 -15
  330. package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +2 -2
  331. package/dist/src/components/Contractor/ContractorList/shared/index.d.ts +1 -1
  332. package/dist/src/components/Contractor/ContractorList/shared/useContractorList.d.ts +38 -0
  333. package/dist/src/components/Contractor/Landing/Landing.d.ts +5 -2
  334. package/dist/src/components/Contractor/shared/hourlyRate.d.ts +23 -0
  335. package/dist/src/components/Employee/Landing/Landing.d.ts +5 -2
  336. package/dist/src/components/Payroll/OffCycleTaxWithholdingTable/getDefaultWithholdingPayPeriod.d.ts +9 -0
  337. package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +1 -1
  338. package/dist/src/components/Payroll/PayrollConfiguration/usePayrollConfigurationData.d.ts +1 -1
  339. package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +1 -1
  340. package/dist/src/components/Payroll/PayrollEditEmployee/TimeOffField.d.ts +3 -1
  341. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.d.ts +2 -0
  342. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.d.ts +2 -2
  343. package/dist/src/components/Payroll/PayrollExecutionFlow/PayrollExecutionFlow.d.ts +8 -6
  344. package/dist/src/components/Payroll/PayrollExecutionFlow/payrollExecutionMachine.d.ts +0 -8
  345. package/dist/src/components/Payroll/PayrollFlow/PayrollFlow.d.ts +5 -3
  346. package/dist/src/components/Payroll/PayrollFlow/PayrollFlowComponents.d.ts +2 -3
  347. package/dist/src/components/Payroll/PayrollFlow/payrollStateMachine.d.ts +1 -1
  348. package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +1 -1
  349. package/dist/src/components/Payroll/PayrollLanding/PayrollLanding.d.ts +18 -5
  350. package/dist/src/components/Payroll/PayrollList/PayrollList.d.ts +11 -5
  351. package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +2 -2
  352. package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +1 -1
  353. package/dist/src/components/Payroll/{UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts → RropPayrollEditEmployee/RropPayrollEditEmployee.d.ts} +9 -5
  354. package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfiguration.d.ts +55 -0
  355. package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfigurationPresentation.d.ts +9 -0
  356. package/dist/src/components/Payroll/TransitionConfiguration/TransitionConfigurationTypes.d.ts +52 -0
  357. package/dist/src/components/Payroll/TransitionConfiguration/index.d.ts +2 -0
  358. package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlertPresentation.d.ts +5 -2
  359. package/dist/src/components/Payroll/helpers.d.ts +2 -2
  360. package/dist/src/components/Payroll/index.d.ts +2 -6
  361. package/dist/src/components/Payroll/usePreparedPayrollData.d.ts +2 -2
  362. package/dist/src/contexts/ApiProvider/payScheduleCustomNameHook.d.ts +14 -0
  363. package/dist/src/contexts/ApiProvider/payScheduleCustomNameHook.test.d.ts +1 -0
  364. package/dist/src/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -1
  365. package/dist/src/contexts/FeaturesProvider/FeaturesProvider.d.ts +21 -0
  366. package/dist/src/contexts/FeaturesProvider/useFeature.d.ts +53 -0
  367. package/dist/src/contexts/GustoProvider/GustoProviderCustomUIAdapter.d.ts +3 -0
  368. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +38 -10
  369. package/dist/src/contexts/index.d.ts +1 -0
  370. package/dist/src/i18n/en/common.json.d.ts +5 -1
  371. package/dist/src/i18n/types.d.ts +195 -70
  372. package/dist/src/models/external.d.ts +63 -48
  373. package/dist/src/partner-hook-utils/form/fields/RadioGroupHookField.d.ts +9 -7
  374. package/dist/src/shared/constants.d.ts +5 -3
  375. package/dist/src/test-utils/renderWithProviders.d.ts +2 -0
  376. package/dist/style.css +1 -1
  377. package/docs/guides/endpoint-inventory.json +57 -40
  378. package/package.json +23 -22
  379. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js +0 -29
  380. package/dist/components/Payroll/PayrollFlow/TransitionFlowContextual.js.map +0 -1
  381. package/dist/components/Payroll/Transition/TransitionFlow.js +0 -60
  382. package/dist/components/Payroll/Transition/TransitionFlow.js.map +0 -1
  383. package/dist/components/Payroll/Transition/TransitionFlowComponents.js +0 -31
  384. package/dist/components/Payroll/Transition/TransitionFlowComponents.js.map +0 -1
  385. package/dist/components/Payroll/Transition/transitionStateMachine.js +0 -49
  386. package/dist/components/Payroll/Transition/transitionStateMachine.js.map +0 -1
  387. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +0 -100
  388. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +0 -1
  389. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +0 -110
  390. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +0 -1
  391. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.module.scss.js.map +0 -1
  392. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js +0 -21
  393. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +0 -1
  394. package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js +0 -48
  395. package/dist/components/Payroll/TransitionPayroll/TransitionPayroll.js.map +0 -1
  396. package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js +0 -35
  397. package/dist/components/Payroll/TransitionPayroll/TransitionPayrollComponents.js.map +0 -1
  398. package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js +0 -23
  399. package/dist/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.js.map +0 -1
  400. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js +0 -29
  401. package/dist/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.js.map +0 -1
  402. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +0 -411
  403. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +0 -1
  404. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +0 -1
  405. package/dist/i18n/en/Payroll.Transition.json.js +0 -8
  406. package/dist/i18n/en/Payroll.Transition.json.js.map +0 -1
  407. package/dist/i18n/en/Payroll.TransitionCreation.json.js +0 -26
  408. package/dist/i18n/en/Payroll.TransitionCreation.json.js.map +0 -1
  409. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +0 -1
  410. package/dist/src/components/Payroll/PayrollFlow/TransitionFlowContextual.d.ts +0 -7
  411. package/dist/src/components/Payroll/Transition/TransitionFlow.d.ts +0 -55
  412. package/dist/src/components/Payroll/Transition/TransitionFlowComponents.d.ts +0 -52
  413. package/dist/src/components/Payroll/Transition/index.d.ts +0 -2
  414. package/dist/src/components/Payroll/Transition/transitionStateMachine.d.ts +0 -29
  415. package/dist/src/components/Payroll/TransitionCreation/TransitionCreation.d.ts +0 -22
  416. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +0 -9
  417. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +0 -57
  418. package/dist/src/components/Payroll/TransitionCreation/index.d.ts +0 -2
  419. package/dist/src/components/Payroll/TransitionPayroll/TransitionPayroll.d.ts +0 -55
  420. package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollComponents.d.ts +0 -24
  421. package/dist/src/components/Payroll/TransitionPayroll/TransitionPayrollTypes.d.ts +0 -23
  422. package/dist/src/components/Payroll/TransitionPayroll/index.d.ts +0 -2
  423. package/dist/src/components/Payroll/TransitionPayroll/transitionPayrollStateMachine.d.ts +0 -15
  424. package/dist/src/components/Payroll/TransitionPayroll/useResolveTransitionPayroll.d.ts +0 -28
  425. /package/dist/src/components/{Payroll/Transition/transitionStateMachine.test.d.ts → Common/DataView/getSortControls.test.d.ts} +0 -0
@@ -1,229 +1,238 @@
1
- import { jsxs as s, Fragment as j, jsx as t } from "react/jsx-runtime";
2
- import { useState as b, useEffect as $ } from "react";
3
- import { useTranslation as z } from "react-i18next";
4
- import { getContractorDisplayName as y } from "../../shared/helpers.js";
1
+ import { jsxs as s, Fragment as $, jsx as a } from "react/jsx-runtime";
2
+ import { useState as D, useEffect as z } from "react";
3
+ import { useTranslation as F } from "react-i18next";
4
+ import { getContractorDisplayName as w } from "../../shared/helpers.js";
5
5
  import { Flex as d } from "../../../Common/Flex/Flex.js";
6
- import { EmptyData as F } from "../../../Common/EmptyData/EmptyData.js";
6
+ import { EmptyData as G } from "../../../Common/EmptyData/EmptyData.js";
7
7
  import { HamburgerMenu as L } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
8
- import { useComponentContext as S } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
- import { ContractorOnboardingStatusBadge as G } from "../../../Common/OnboardingStatusBadge/index.js";
10
- import W from "../../../../assets/icons/trashcan.svg.js";
11
- import D from "../../../../assets/icons/x-circle.svg.js";
8
+ import { useComponentContext as k } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { ContractorOnboardingStatusBadge as W } from "../../../Common/OnboardingStatusBadge/index.js";
10
+ import K from "../../../../assets/icons/trashcan.svg.js";
11
+ import y from "../../../../assets/icons/x-circle.svg.js";
12
12
  import X from "../../../../assets/icons/eye.svg.js";
13
13
  import q from "../../../../assets/icons/slash-circle.svg.js";
14
14
  import J from "../../../../assets/icons/plus-circle.svg.js";
15
- import { normalizeToDate as K, formatDateLong as Q, formatDateLongWithYear as U } from "../../../../helpers/dateFormatting.js";
16
- import { ContractorOnboardingStatus as w } from "../../../../shared/constants.js";
17
- import { VisuallyHidden as Z } from "../../../Common/VisuallyHidden/VisuallyHidden.js";
18
- import { useDataView as ee } from "../../../Common/DataView/useDataView.js";
19
- import { DataView as ie } from "../../../Common/DataView/DataView.js";
20
- function te({ contractor: l }) {
21
- const r = S();
15
+ import { normalizeToDate as Q, formatDateLong as U, formatDateLongWithYear as Z } from "../../../../helpers/dateFormatting.js";
16
+ import { ContractorOnboardingStatus as v } from "../../../../shared/constants.js";
17
+ import { VisuallyHidden as ee } from "../../../Common/VisuallyHidden/VisuallyHidden.js";
18
+ import { useDataView as ie } from "../../../Common/DataView/useDataView.js";
19
+ import { DataView as te } from "../../../Common/DataView/DataView.js";
20
+ function ae({ contractor: l }) {
21
+ const r = k();
22
22
  return /* @__PURE__ */ s(d, { flexDirection: "column", gap: 0, children: [
23
- /* @__PURE__ */ t(r.Text, { size: "sm", weight: "medium", children: y(l) }),
24
- /* @__PURE__ */ t(r.Text, { variant: "supporting", size: "sm", children: l.type ?? "–" })
23
+ /* @__PURE__ */ a(r.Text, { size: "sm", weight: "medium", children: w(l) }),
24
+ /* @__PURE__ */ a(r.Text, { variant: "supporting", size: "sm", children: l.type ?? "–" })
25
25
  ] });
26
26
  }
27
- function p(l) {
28
- const r = K(l);
29
- return r ? r.getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? Q(r) : U(r) : "";
27
+ function f(l) {
28
+ const r = Q(l);
29
+ return r ? r.getFullYear() === (/* @__PURE__ */ new Date()).getFullYear() ? U(r) : Z(r) : "";
30
30
  }
31
- function ae(l) {
32
- return l === w.ADMIN_ONBOARDING_REVIEW || l === w.SELF_ONBOARDING_REVIEW;
31
+ function ne(l) {
32
+ return l === v.ADMIN_ONBOARDING_REVIEW || l === v.SELF_ONBOARDING_REVIEW;
33
33
  }
34
34
  function Ae({
35
35
  className: l,
36
36
  contractors: r,
37
37
  isFetching: c,
38
38
  selectedTab: u,
39
- onTabChange: k,
40
- successMessage: v,
39
+ onTabChange: I,
40
+ successMessage: S,
41
41
  status: A,
42
- pagination: I,
43
- onEdit: E,
44
- onView: R,
45
- onDismiss: B,
46
- onRehire: O,
47
- onDelete: T,
48
- onCancelSelfOnboarding: x,
49
- onCancelDismissal: N,
50
- onCancelRehire: P,
51
- onAddContractor: _
42
+ pagination: E,
43
+ sort: g,
44
+ onEdit: R,
45
+ onView: B,
46
+ onDismiss: O,
47
+ onRehire: T,
48
+ onDelete: x,
49
+ onCancelSelfOnboarding: N,
50
+ onCancelDismissal: P,
51
+ onCancelRehire: _,
52
+ onAddContractor: V
52
53
  }) {
53
- const { t: e } = z("Contractor.ManagementContractorList"), n = S(), [f, h] = b(null), [o, g] = b(null), [m, V] = b(u);
54
- $(() => {
55
- c || V(u);
54
+ const { t: e } = F("Contractor.ManagementContractorList"), n = k(), [h, C] = D(null), [o, p] = D(null), [m, H] = D(u);
55
+ z(() => {
56
+ c || H(u);
56
57
  }, [u, c]);
57
- const H = [
58
+ const M = [
58
59
  { id: "active", label: e("tabs.active"), content: null },
59
60
  { id: "onboarding", label: e("tabs.onboarding"), content: null },
60
61
  { id: "dismissed", label: e("tabs.dismissed"), content: null }
61
- ], M = () => {
62
- const a = {
62
+ ], Y = () => {
63
+ const i = {
63
64
  key: "name",
64
65
  title: e("nameLabel"),
65
- render: (i) => /* @__PURE__ */ t(te, { contractor: i })
66
+ isSortable: !0,
67
+ render: (t) => /* @__PURE__ */ a(ae, { contractor: t })
66
68
  };
67
69
  return m === "active" ? [
68
- a,
70
+ i,
69
71
  {
70
72
  key: "rate",
71
73
  title: e("rateLabel"),
72
- render: (i) => i.wageType === "Hourly" && i.hourlyRate ? e("rateHourly", { rate: `$${i.hourlyRate}` }) : i.wageType ?? "–"
74
+ render: (t) => t.wageType === "Hourly" && t.hourlyRate ? e("rateHourly", { rate: `$${t.hourlyRate}` }) : t.wageType ?? "–"
73
75
  },
74
76
  {
75
77
  key: "status",
76
- title: /* @__PURE__ */ t(Z, { children: e("statusColumnLabel") }),
77
- render: (i) => i.upcomingEmployment?.startDate ? /* @__PURE__ */ t(n.Badge, { status: "info", children: e("startsBadge", {
78
- date: p(i.upcomingEmployment.startDate)
79
- }) }) : i.dismissalDate ? /* @__PURE__ */ t(n.Badge, { status: "warning", children: e("lastDayBadge", { date: p(i.dismissalDate) }) }) : null
78
+ title: /* @__PURE__ */ a(ee, { children: e("statusColumnLabel") }),
79
+ render: (t) => t.upcomingEmployment?.startDate ? /* @__PURE__ */ a(n.Badge, { status: "info", children: e("startsBadge", {
80
+ date: f(t.upcomingEmployment.startDate)
81
+ }) }) : t.dismissalDate ? /* @__PURE__ */ a(n.Badge, { status: "warning", children: e("lastDayBadge", { date: f(t.dismissalDate) }) }) : null
80
82
  }
81
83
  ] : m === "onboarding" ? [
82
- a,
84
+ i,
83
85
  {
84
86
  key: "status",
85
87
  title: e("onboardingStatusLabel"),
86
- render: (i) => /* @__PURE__ */ s(d, { alignItems: "center", gap: 8, children: [
87
- /* @__PURE__ */ t(
88
- G,
88
+ render: (t) => /* @__PURE__ */ s(d, { alignItems: "center", gap: 8, children: [
89
+ /* @__PURE__ */ a(
90
+ W,
89
91
  {
90
- onboarded: i.onboarded,
91
- onboardingStatus: i.onboardingStatus
92
+ onboarded: t.onboarded,
93
+ onboardingStatus: t.onboardingStatus
92
94
  }
93
95
  ),
94
- i.onboardingStatus === w.ONBOARDING_COMPLETED && i.upcomingEmployment?.startDate && /* @__PURE__ */ t(n.Badge, { status: "info", children: e("startsBadge", {
95
- date: p(i.upcomingEmployment.startDate)
96
+ t.onboardingStatus === v.ONBOARDING_COMPLETED && t.upcomingEmployment?.startDate && /* @__PURE__ */ a(n.Badge, { status: "info", children: e("startsBadge", {
97
+ date: f(t.upcomingEmployment.startDate)
96
98
  }) })
97
99
  ] })
98
100
  }
99
101
  ] : [
100
- a,
102
+ i,
101
103
  {
102
104
  key: "dismissalDate",
103
105
  title: e("dismissalDateLabel"),
104
- render: (i) => i.dismissalDate ? p(i.dismissalDate) : "–"
106
+ render: (t) => t.dismissalDate ? f(t.dismissalDate) : "–"
105
107
  }
106
108
  ];
107
- }, { ...Y } = ee({
109
+ }, { ...j } = ie({
108
110
  data: r,
109
- columns: M(),
110
- itemMenu: (a) => {
111
+ columns: Y(),
112
+ sortDescriptor: g.current && {
113
+ columnKey: g.current.field,
114
+ direction: g.current.direction
115
+ },
116
+ onSortChange: (i) => {
117
+ g.onSortChange(i && { field: "name", direction: i.direction });
118
+ },
119
+ itemMenu: (i) => {
111
120
  if (m === "onboarding") {
112
- const C = [];
113
- return a.allowedActions.includes("cancel_self_onboarding") && C.push({
121
+ const b = [];
122
+ return i.allowedActions.includes("cancel_self_onboarding") && b.push({
114
123
  label: e("cancelSelfOnboardingCta"),
115
124
  onClick: () => {
116
- x(a.uuid);
125
+ N(i.uuid);
117
126
  },
118
- icon: /* @__PURE__ */ t(D, { "aria-hidden": !0 })
119
- }), a.allowedActions.includes("delete") && C.push({
127
+ icon: /* @__PURE__ */ a(y, { "aria-hidden": !0 })
128
+ }), i.allowedActions.includes("delete") && b.push({
120
129
  label: e("removeCta"),
121
130
  onClick: () => {
122
- h(a.uuid);
131
+ C(i.uuid);
123
132
  },
124
- icon: /* @__PURE__ */ t(W, { "aria-hidden": !0 })
133
+ icon: /* @__PURE__ */ a(K, { "aria-hidden": !0 })
125
134
  }), /* @__PURE__ */ s(d, { alignItems: "center", justifyContent: "flex-end", gap: 4, children: [
126
- a.allowedActions.includes("edit") && /* @__PURE__ */ t(
135
+ i.allowedActions.includes("edit") && /* @__PURE__ */ a(
127
136
  n.Button,
128
137
  {
129
138
  variant: "secondary",
130
139
  onClick: () => {
131
- E(a.uuid);
140
+ R(i.uuid);
132
141
  },
133
- children: ae(a.onboardingStatus) ? e("reviewCta") : e("continueCta")
142
+ children: ne(i.onboardingStatus) ? e("reviewCta") : e("continueCta")
134
143
  }
135
144
  ),
136
- /* @__PURE__ */ t(
145
+ /* @__PURE__ */ a(
137
146
  L,
138
147
  {
139
- items: C,
140
- triggerLabel: e("hamburgerTitle", { name: y(a) })
148
+ items: b,
149
+ triggerLabel: e("hamburgerTitle", { name: w(i) })
141
150
  }
142
151
  )
143
152
  ] });
144
153
  }
145
- const i = [];
146
- return a.allowedActions.includes("view") && i.push({
154
+ const t = [];
155
+ return i.allowedActions.includes("view") && t.push({
147
156
  label: e("viewDetailsCta"),
148
157
  onClick: () => {
149
- R(a.uuid);
158
+ B(i.uuid);
150
159
  },
151
- icon: /* @__PURE__ */ t(X, { "aria-hidden": !0 })
152
- }), a.allowedActions.includes("cancel_rehire") && i.push({
160
+ icon: /* @__PURE__ */ a(X, { "aria-hidden": !0 })
161
+ }), i.allowedActions.includes("cancel_rehire") && t.push({
153
162
  label: e("cancelRehireCta"),
154
163
  onClick: () => {
155
- g({ contractorId: a.uuid, type: "rehire" });
164
+ p({ contractorId: i.uuid, type: "rehire" });
156
165
  },
157
- icon: /* @__PURE__ */ t(D, { "aria-hidden": !0 })
158
- }), a.allowedActions.includes("cancel_dismissal") && i.push({
166
+ icon: /* @__PURE__ */ a(y, { "aria-hidden": !0 })
167
+ }), i.allowedActions.includes("cancel_dismissal") && t.push({
159
168
  label: e("cancelDismissalCta"),
160
169
  onClick: () => {
161
- g({ contractorId: a.uuid, type: "dismissal" });
170
+ p({ contractorId: i.uuid, type: "dismissal" });
162
171
  },
163
- icon: /* @__PURE__ */ t(D, { "aria-hidden": !0 })
164
- }), a.allowedActions.includes("dismiss") && i.push({
172
+ icon: /* @__PURE__ */ a(y, { "aria-hidden": !0 })
173
+ }), i.allowedActions.includes("dismiss") && t.push({
165
174
  label: e("dismissCta"),
166
175
  onClick: () => {
167
- B(a.uuid);
176
+ O(i.uuid);
168
177
  },
169
- icon: /* @__PURE__ */ t(q, { "aria-hidden": !0 })
170
- }), a.allowedActions.includes("rehire") && i.push({
178
+ icon: /* @__PURE__ */ a(q, { "aria-hidden": !0 })
179
+ }), i.allowedActions.includes("rehire") && t.push({
171
180
  label: e("rehireCta"),
172
181
  onClick: () => {
173
- O(a.uuid);
182
+ T(i.uuid);
174
183
  },
175
- icon: /* @__PURE__ */ t(J, { "aria-hidden": !0 })
176
- }), /* @__PURE__ */ t(
184
+ icon: /* @__PURE__ */ a(J, { "aria-hidden": !0 })
185
+ }), /* @__PURE__ */ a(
177
186
  L,
178
187
  {
179
- items: i,
180
- triggerLabel: e("hamburgerTitle", { name: y(a) })
188
+ items: t,
189
+ triggerLabel: e("hamburgerTitle", { name: w(i) })
181
190
  }
182
191
  );
183
192
  },
184
193
  isFetching: c,
185
- pagination: I,
186
- emptyState: () => /* @__PURE__ */ t(
187
- F,
194
+ pagination: E,
195
+ emptyState: () => /* @__PURE__ */ a(
196
+ G,
188
197
  {
189
198
  title: e(`emptyState.${m}.title`),
190
199
  description: e(`emptyState.${m}.description`)
191
200
  }
192
201
  )
193
202
  });
194
- return /* @__PURE__ */ s(j, { children: [
203
+ return /* @__PURE__ */ s($, { children: [
195
204
  /* @__PURE__ */ s(d, { className: l, flexDirection: "column", gap: 32, children: [
196
- v && /* @__PURE__ */ t(n.Alert, { label: v, status: "success" }),
205
+ S && /* @__PURE__ */ a(n.Alert, { label: S, status: "success" }),
197
206
  /* @__PURE__ */ s(d, { justifyContent: "space-between", alignItems: "center", children: [
198
- /* @__PURE__ */ t(n.Heading, { as: "h2", children: e("title") }),
199
- /* @__PURE__ */ t(n.Button, { variant: "secondary", onClick: _, children: e("addContractorCta") })
207
+ /* @__PURE__ */ a(n.Heading, { as: "h2", children: e("title") }),
208
+ /* @__PURE__ */ a(n.Button, { variant: "secondary", onClick: V, children: e("addContractorCta") })
200
209
  ] }),
201
210
  /* @__PURE__ */ s(d, { flexDirection: "column", gap: 0, children: [
202
- /* @__PURE__ */ t(
211
+ /* @__PURE__ */ a(
203
212
  n.Tabs,
204
213
  {
205
- tabs: H,
214
+ tabs: M,
206
215
  selectedId: u,
207
- onSelectionChange: (a) => {
208
- k(a);
216
+ onSelectionChange: (i) => {
217
+ I(i);
209
218
  },
210
219
  "aria-label": e("tabsLabel")
211
220
  }
212
221
  ),
213
- /* @__PURE__ */ t(ie, { label: e("contractorListLabel"), ...Y })
222
+ /* @__PURE__ */ a(te, { label: e("contractorListLabel"), ...j })
214
223
  ] })
215
224
  ] }),
216
- /* @__PURE__ */ t(
225
+ /* @__PURE__ */ a(
217
226
  n.Dialog,
218
227
  {
219
- isOpen: !!f,
228
+ isOpen: !!h,
220
229
  onClose: () => {
221
- h(null);
230
+ C(null);
222
231
  },
223
232
  onPrimaryActionClick: async () => {
224
- if (f)
233
+ if (h)
225
234
  try {
226
- await T(f), h(null);
235
+ await x(h), C(null);
227
236
  } catch {
228
237
  }
229
238
  },
@@ -235,17 +244,17 @@ function Ae({
235
244
  children: e("removeDialog.description")
236
245
  }
237
246
  ),
238
- /* @__PURE__ */ t(
247
+ /* @__PURE__ */ a(
239
248
  n.Dialog,
240
249
  {
241
250
  isOpen: !!o,
242
251
  onClose: () => {
243
- g(null);
252
+ p(null);
244
253
  },
245
254
  onPrimaryActionClick: async () => {
246
255
  if (o)
247
256
  try {
248
- o.type === "rehire" ? await P(o.contractorId) : await N(o.contractorId), g(null);
257
+ o.type === "rehire" ? await _(o.contractorId) : await P(o.contractorId), p(null);
249
258
  } catch {
250
259
  }
251
260
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ManagementContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorListView.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport { getContractorDisplayName } from '../../shared/helpers'\nimport type { ContractorTab } from './ManagementContractorList'\nimport { DataView, EmptyData, useDataView, Flex, VisuallyHidden } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport EyeSvg from '@/assets/icons/eye.svg?react'\nimport SlashCircleSvg from '@/assets/icons/slash-circle.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ManagementContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status'\n> {\n /** CSS class name applied to the root element. */\n className?: string\n contractors: ContractorWithActions[]\n isFetching: boolean\n selectedTab: ContractorTab\n onTabChange: (tab: ContractorTab) => void\n /** Success message to display in an alert above the list, typically after a dismissal is scheduled. */\n successMessage?: string\n onEdit: (contractorId: string) => void\n onView: (contractorId: string) => void\n onDismiss: (contractorId: string) => void\n onRehire: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onCancelDismissal: (contractorId: string) => Promise<void>\n onCancelRehire: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n}\n\nfunction ContractorNameCell({ contractor }: { contractor: ContractorWithActions }) {\n const Components = useComponentContext()\n return (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text size=\"sm\" weight=\"medium\">\n {getContractorDisplayName(contractor)}\n </Components.Text>\n <Components.Text variant=\"supporting\" size=\"sm\">\n {contractor.type ?? '–'}\n </Components.Text>\n </Flex>\n )\n}\n\nfunction formatBadgeDate(dateStr: string): string {\n const date = normalizeToDate(dateStr)\n if (!date) return ''\n const isSameYear = date.getFullYear() === new Date().getFullYear()\n return isSameYear ? formatDateLong(date) : formatDateLongWithYear(date)\n}\n\nfunction isOnboardingEditReview(onboardingStatus?: string | null) {\n return (\n onboardingStatus === ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW ||\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n )\n}\n\n/** @internal */\nexport function ManagementContractorListView({\n className,\n contractors,\n isFetching,\n selectedTab,\n onTabChange,\n successMessage,\n status,\n pagination,\n onEdit,\n onView,\n onDismiss,\n onRehire,\n onDelete,\n onCancelSelfOnboarding,\n onCancelDismissal,\n onCancelRehire,\n onAddContractor,\n}: ManagementContractorListViewProps) {\n const { t } = useTranslation('Contractor.ManagementContractorList')\n const Components = useComponentContext()\n const [contractorToRemove, setContractorToRemove] = useState<string | null>(null)\n const [cancelAction, setCancelAction] = useState<{\n contractorId: string\n type: 'dismissal' | 'rehire'\n } | null>(null)\n\n // Columns, item-menu shape, and empty-state copy stay pinned to the previously\n // committed tab until the new tab's data lands, so they swap in one paint together\n // with `contractors`/`pagination` instead of flashing ahead of the still-stale rows\n // that `keepPreviousData` is rendering.\n const [committedTab, setCommittedTab] = useState(selectedTab)\n useEffect(() => {\n if (!isFetching) {\n setCommittedTab(selectedTab)\n }\n }, [selectedTab, isFetching])\n\n const tabs = [\n { id: 'active', label: t('tabs.active'), content: null },\n { id: 'onboarding', label: t('tabs.onboarding'), content: null },\n { id: 'dismissed', label: t('tabs.dismissed'), content: null },\n ]\n\n const getColumns = () => {\n const nameColumn = {\n key: 'name',\n title: t('nameLabel'),\n render: (contractor: ContractorWithActions) => <ContractorNameCell contractor={contractor} />,\n }\n\n if (committedTab === 'active') {\n return [\n nameColumn,\n {\n key: 'rate',\n title: t('rateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.wageType === 'Hourly' && contractor.hourlyRate\n ? t('rateHourly', { rate: `$${contractor.hourlyRate}` })\n : (contractor.wageType ?? '–'),\n },\n {\n key: 'status',\n title: <VisuallyHidden>{t('statusColumnLabel')}</VisuallyHidden>,\n render: (contractor: ContractorWithActions) => {\n if (contractor.upcomingEmployment?.startDate) {\n return (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )\n }\n if (contractor.dismissalDate) {\n return (\n <Components.Badge status=\"warning\">\n {t('lastDayBadge', { date: formatBadgeDate(contractor.dismissalDate) })}\n </Components.Badge>\n )\n }\n return null\n },\n },\n ]\n }\n\n if (committedTab === 'onboarding') {\n return [\n nameColumn,\n {\n key: 'status',\n title: t('onboardingStatusLabel'),\n render: (contractor: ContractorWithActions) => (\n <Flex alignItems=\"center\" gap={8}>\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n {contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED &&\n contractor.upcomingEmployment?.startDate && (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )}\n </Flex>\n ),\n },\n ]\n }\n\n return [\n nameColumn,\n {\n key: 'dismissalDate',\n title: t('dismissalDateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.dismissalDate ? formatBadgeDate(contractor.dismissalDate) : '–',\n },\n ]\n }\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: getColumns(),\n itemMenu: contractor => {\n if (committedTab === 'onboarding') {\n const menuItems = []\n\n if (contractor.allowedActions.includes('cancel_self_onboarding')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: () => {\n void onCancelSelfOnboarding(contractor.uuid)\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('delete')) {\n menuItems.push({\n label: t('removeCta'),\n onClick: () => {\n setContractorToRemove(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"flex-end\" gap={4}>\n {contractor.allowedActions.includes('edit') && (\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEdit(contractor.uuid)\n }}\n >\n {isOnboardingEditReview(contractor.onboardingStatus)\n ? t('reviewCta')\n : t('continueCta')}\n </Components.Button>\n )}\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle', { name: getContractorDisplayName(contractor) })}\n />\n </Flex>\n )\n }\n\n const menuItems = []\n\n if (contractor.allowedActions.includes('view')) {\n menuItems.push({\n label: t('viewDetailsCta'),\n onClick: () => {\n onView(contractor.uuid)\n },\n icon: <EyeSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_rehire')) {\n menuItems.push({\n label: t('cancelRehireCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'rehire' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_dismissal')) {\n menuItems.push({\n label: t('cancelDismissalCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'dismissal' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('dismiss')) {\n menuItems.push({\n label: t('dismissCta'),\n onClick: () => {\n onDismiss(contractor.uuid)\n },\n icon: <SlashCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('rehire')) {\n menuItems.push({\n label: t('rehireCta'),\n onClick: () => {\n onRehire(contractor.uuid)\n },\n icon: <PlusCircleIcon aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle', { name: getContractorDisplayName(contractor) })}\n />\n )\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData\n title={t(`emptyState.${committedTab}.title`)}\n description={t(`emptyState.${committedTab}.description`)}\n />\n ),\n })\n\n return (\n <>\n <Flex className={className} flexDirection=\"column\" gap={32}>\n {successMessage && <Components.Alert label={successMessage} status=\"success\" />}\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addContractorCta')}\n </Components.Button>\n </Flex>\n\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Tabs\n tabs={tabs}\n selectedId={selectedTab}\n onSelectionChange={id => {\n onTabChange(id as ContractorTab)\n }}\n aria-label={t('tabsLabel')}\n />\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n </Flex>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToRemove}\n onClose={() => {\n setContractorToRemove(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToRemove) {\n try {\n await onDelete(contractorToRemove)\n setContractorToRemove(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('removeDialog.title')}\n primaryActionLabel={t('removeDialog.confirmCta')}\n closeActionLabel={t('removeDialog.cancelCta')}\n >\n {t('removeDialog.description')}\n </Components.Dialog>\n\n <Components.Dialog\n isOpen={!!cancelAction}\n onClose={() => {\n setCancelAction(null)\n }}\n onPrimaryActionClick={async () => {\n if (!cancelAction) return\n try {\n if (cancelAction.type === 'rehire') {\n await onCancelRehire(cancelAction.contractorId)\n } else {\n await onCancelDismissal(cancelAction.contractorId)\n }\n setCancelAction(null)\n } catch {\n // Keep dialog open on error\n }\n }}\n isPrimaryActionLoading={status.isPending}\n title={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.title')\n : t('cancelDismissalDialog.title')\n }\n primaryActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.confirmCta')\n : t('cancelDismissalDialog.confirmCta')\n }\n closeActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.cancelCta')\n : t('cancelDismissalDialog.cancelCta')\n }\n >\n {cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.description')\n : t('cancelDismissalDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["ContractorNameCell","contractor","Components","useComponentContext","jsxs","Flex","jsx","getContractorDisplayName","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","className","contractors","isFetching","selectedTab","onTabChange","successMessage","status","pagination","onEdit","onView","onDismiss","onRehire","onDelete","onCancelSelfOnboarding","onCancelDismissal","onCancelRehire","onAddContractor","t","useTranslation","contractorToRemove","setContractorToRemove","useState","cancelAction","setCancelAction","committedTab","setCommittedTab","useEffect","tabs","getColumns","nameColumn","VisuallyHidden","ContractorOnboardingStatusBadge","dataViewProps","useDataView","menuItems","XCircleSvg","TrashCanSvg","HamburgerMenu","EyeSvg","SlashCircleSvg","PlusCircleIcon","EmptyData","Fragment","id","DataView"],"mappings":"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"}
1
+ {"version":3,"file":"ManagementContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/management/ManagementContractorListView.tsx"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport { getContractorDisplayName } from '../../shared/helpers'\nimport type { ContractorTab } from './ManagementContractorList'\nimport { DataView, EmptyData, useDataView, Flex, VisuallyHidden } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport EyeSvg from '@/assets/icons/eye.svg?react'\nimport SlashCircleSvg from '@/assets/icons/slash-circle.svg?react'\nimport PlusCircleIcon from '@/assets/icons/plus-circle.svg?react'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ManagementContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status' | 'sort'\n> {\n /** CSS class name applied to the root element. */\n className?: string\n contractors: ContractorWithActions[]\n isFetching: boolean\n selectedTab: ContractorTab\n onTabChange: (tab: ContractorTab) => void\n /** Success message to display in an alert above the list, typically after a dismissal is scheduled. */\n successMessage?: string\n onEdit: (contractorId: string) => void\n onView: (contractorId: string) => void\n onDismiss: (contractorId: string) => void\n onRehire: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onCancelDismissal: (contractorId: string) => Promise<void>\n onCancelRehire: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n}\n\nfunction ContractorNameCell({ contractor }: { contractor: ContractorWithActions }) {\n const Components = useComponentContext()\n return (\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Text size=\"sm\" weight=\"medium\">\n {getContractorDisplayName(contractor)}\n </Components.Text>\n <Components.Text variant=\"supporting\" size=\"sm\">\n {contractor.type ?? '–'}\n </Components.Text>\n </Flex>\n )\n}\n\nfunction formatBadgeDate(dateStr: string): string {\n const date = normalizeToDate(dateStr)\n if (!date) return ''\n const isSameYear = date.getFullYear() === new Date().getFullYear()\n return isSameYear ? formatDateLong(date) : formatDateLongWithYear(date)\n}\n\nfunction isOnboardingEditReview(onboardingStatus?: string | null) {\n return (\n onboardingStatus === ContractorOnboardingStatus.ADMIN_ONBOARDING_REVIEW ||\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n )\n}\n\n/** @internal */\nexport function ManagementContractorListView({\n className,\n contractors,\n isFetching,\n selectedTab,\n onTabChange,\n successMessage,\n status,\n pagination,\n sort,\n onEdit,\n onView,\n onDismiss,\n onRehire,\n onDelete,\n onCancelSelfOnboarding,\n onCancelDismissal,\n onCancelRehire,\n onAddContractor,\n}: ManagementContractorListViewProps) {\n const { t } = useTranslation('Contractor.ManagementContractorList')\n const Components = useComponentContext()\n const [contractorToRemove, setContractorToRemove] = useState<string | null>(null)\n const [cancelAction, setCancelAction] = useState<{\n contractorId: string\n type: 'dismissal' | 'rehire'\n } | null>(null)\n\n // Columns, item-menu shape, and empty-state copy stay pinned to the previously\n // committed tab until the new tab's data lands, so they swap in one paint together\n // with `contractors`/`pagination` instead of flashing ahead of the still-stale rows\n // that `keepPreviousData` is rendering.\n const [committedTab, setCommittedTab] = useState(selectedTab)\n useEffect(() => {\n if (!isFetching) {\n setCommittedTab(selectedTab)\n }\n }, [selectedTab, isFetching])\n\n const tabs = [\n { id: 'active', label: t('tabs.active'), content: null },\n { id: 'onboarding', label: t('tabs.onboarding'), content: null },\n { id: 'dismissed', label: t('tabs.dismissed'), content: null },\n ]\n\n const getColumns = () => {\n // `key` doubles as the API sort field, so it must stay in step with ContractorSortField.\n const nameColumn = {\n key: 'name',\n title: t('nameLabel'),\n isSortable: true,\n render: (contractor: ContractorWithActions) => <ContractorNameCell contractor={contractor} />,\n }\n\n if (committedTab === 'active') {\n return [\n nameColumn,\n {\n key: 'rate',\n title: t('rateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.wageType === 'Hourly' && contractor.hourlyRate\n ? t('rateHourly', { rate: `$${contractor.hourlyRate}` })\n : (contractor.wageType ?? '–'),\n },\n {\n key: 'status',\n title: <VisuallyHidden>{t('statusColumnLabel')}</VisuallyHidden>,\n render: (contractor: ContractorWithActions) => {\n if (contractor.upcomingEmployment?.startDate) {\n return (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )\n }\n if (contractor.dismissalDate) {\n return (\n <Components.Badge status=\"warning\">\n {t('lastDayBadge', { date: formatBadgeDate(contractor.dismissalDate) })}\n </Components.Badge>\n )\n }\n return null\n },\n },\n ]\n }\n\n if (committedTab === 'onboarding') {\n return [\n nameColumn,\n {\n key: 'status',\n title: t('onboardingStatusLabel'),\n render: (contractor: ContractorWithActions) => (\n <Flex alignItems=\"center\" gap={8}>\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n {contractor.onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED &&\n contractor.upcomingEmployment?.startDate && (\n <Components.Badge status=\"info\">\n {t('startsBadge', {\n date: formatBadgeDate(contractor.upcomingEmployment.startDate),\n })}\n </Components.Badge>\n )}\n </Flex>\n ),\n },\n ]\n }\n\n return [\n nameColumn,\n {\n key: 'dismissalDate',\n title: t('dismissalDateLabel'),\n render: (contractor: ContractorWithActions) =>\n contractor.dismissalDate ? formatBadgeDate(contractor.dismissalDate) : '–',\n },\n ]\n }\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: getColumns(),\n sortDescriptor: sort.current && {\n columnKey: sort.current.field,\n direction: sort.current.direction,\n },\n onSortChange: sortDescriptor => {\n // Name is the only sortable column; ContractorSortField makes a stale key a type error.\n sort.onSortChange(sortDescriptor && { field: 'name', direction: sortDescriptor.direction })\n },\n itemMenu: contractor => {\n if (committedTab === 'onboarding') {\n const menuItems = []\n\n if (contractor.allowedActions.includes('cancel_self_onboarding')) {\n menuItems.push({\n label: t('cancelSelfOnboardingCta'),\n onClick: () => {\n void onCancelSelfOnboarding(contractor.uuid)\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('delete')) {\n menuItems.push({\n label: t('removeCta'),\n onClick: () => {\n setContractorToRemove(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"flex-end\" gap={4}>\n {contractor.allowedActions.includes('edit') && (\n <Components.Button\n variant=\"secondary\"\n onClick={() => {\n onEdit(contractor.uuid)\n }}\n >\n {isOnboardingEditReview(contractor.onboardingStatus)\n ? t('reviewCta')\n : t('continueCta')}\n </Components.Button>\n )}\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle', { name: getContractorDisplayName(contractor) })}\n />\n </Flex>\n )\n }\n\n const menuItems = []\n\n if (contractor.allowedActions.includes('view')) {\n menuItems.push({\n label: t('viewDetailsCta'),\n onClick: () => {\n onView(contractor.uuid)\n },\n icon: <EyeSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_rehire')) {\n menuItems.push({\n label: t('cancelRehireCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'rehire' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('cancel_dismissal')) {\n menuItems.push({\n label: t('cancelDismissalCta'),\n onClick: () => {\n setCancelAction({ contractorId: contractor.uuid, type: 'dismissal' })\n },\n icon: <XCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('dismiss')) {\n menuItems.push({\n label: t('dismissCta'),\n onClick: () => {\n onDismiss(contractor.uuid)\n },\n icon: <SlashCircleSvg aria-hidden />,\n })\n }\n\n if (contractor.allowedActions.includes('rehire')) {\n menuItems.push({\n label: t('rehireCta'),\n onClick: () => {\n onRehire(contractor.uuid)\n },\n icon: <PlusCircleIcon aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n items={menuItems}\n triggerLabel={t('hamburgerTitle', { name: getContractorDisplayName(contractor) })}\n />\n )\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData\n title={t(`emptyState.${committedTab}.title`)}\n description={t(`emptyState.${committedTab}.description`)}\n />\n ),\n })\n\n return (\n <>\n <Flex className={className} flexDirection=\"column\" gap={32}>\n {successMessage && <Components.Alert label={successMessage} status=\"success\" />}\n <Flex justifyContent=\"space-between\" alignItems=\"center\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addContractorCta')}\n </Components.Button>\n </Flex>\n\n <Flex flexDirection=\"column\" gap={0}>\n <Components.Tabs\n tabs={tabs}\n selectedId={selectedTab}\n onSelectionChange={id => {\n onTabChange(id as ContractorTab)\n }}\n aria-label={t('tabsLabel')}\n />\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n </Flex>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToRemove}\n onClose={() => {\n setContractorToRemove(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToRemove) {\n try {\n await onDelete(contractorToRemove)\n setContractorToRemove(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('removeDialog.title')}\n primaryActionLabel={t('removeDialog.confirmCta')}\n closeActionLabel={t('removeDialog.cancelCta')}\n >\n {t('removeDialog.description')}\n </Components.Dialog>\n\n <Components.Dialog\n isOpen={!!cancelAction}\n onClose={() => {\n setCancelAction(null)\n }}\n onPrimaryActionClick={async () => {\n if (!cancelAction) return\n try {\n if (cancelAction.type === 'rehire') {\n await onCancelRehire(cancelAction.contractorId)\n } else {\n await onCancelDismissal(cancelAction.contractorId)\n }\n setCancelAction(null)\n } catch {\n // Keep dialog open on error\n }\n }}\n isPrimaryActionLoading={status.isPending}\n title={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.title')\n : t('cancelDismissalDialog.title')\n }\n primaryActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.confirmCta')\n : t('cancelDismissalDialog.confirmCta')\n }\n closeActionLabel={\n cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.cancelCta')\n : t('cancelDismissalDialog.cancelCta')\n }\n >\n {cancelAction?.type === 'rehire'\n ? t('cancelRehireDialog.description')\n : t('cancelDismissalDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["ContractorNameCell","contractor","Components","useComponentContext","jsxs","Flex","jsx","getContractorDisplayName","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","className","contractors","isFetching","selectedTab","onTabChange","successMessage","status","pagination","sort","onEdit","onView","onDismiss","onRehire","onDelete","onCancelSelfOnboarding","onCancelDismissal","onCancelRehire","onAddContractor","t","useTranslation","contractorToRemove","setContractorToRemove","useState","cancelAction","setCancelAction","committedTab","setCommittedTab","useEffect","tabs","getColumns","nameColumn","VisuallyHidden","ContractorOnboardingStatusBadge","dataViewProps","useDataView","sortDescriptor","menuItems","XCircleSvg","TrashCanSvg","HamburgerMenu","EyeSvg","SlashCircleSvg","PlusCircleIcon","EmptyData","Fragment","id","DataView"],"mappings":"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"}