@gusto/embedded-react-sdk 0.55.7 → 0.55.8

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 (336) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/components/Common/FadeIn/FadeIn.module.scss.js +4 -4
  3. package/dist/components/Common/FieldCaption/FieldCaption.js +22 -18
  4. package/dist/components/Common/FieldCaption/FieldCaption.js.map +1 -1
  5. package/dist/components/Common/Flex/Flex.js +17 -15
  6. package/dist/components/Common/Flex/Flex.js.map +1 -1
  7. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  8. package/dist/components/Common/UI/FileInput/FileInput.js +1 -1
  9. package/dist/components/Common/UI/Heading/Heading.module.scss.js +7 -7
  10. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  11. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js +5 -4
  12. package/dist/components/Company/AssignSignatory/CreateSignatory/useCreateSignatory.js.map +1 -1
  13. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js +5 -4
  14. package/dist/components/Company/AssignSignatory/InviteSignatory/useInviteSignatory.js.map +1 -1
  15. package/dist/components/Company/AssignSignatory/useAssignSignatory.js +7 -6
  16. package/dist/components/Company/AssignSignatory/useAssignSignatory.js.map +1 -1
  17. package/dist/components/Company/BankAccount/BankAccountForm/context.js +5 -4
  18. package/dist/components/Company/BankAccount/BankAccountForm/context.js.map +1 -1
  19. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  20. package/dist/components/Company/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  21. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js +27 -27
  22. package/dist/components/Company/DocumentSigner/SignatureForm/SignatureForm.js.map +1 -1
  23. package/dist/components/Company/FederalTaxes/useFederalTaxes.js +10 -9
  24. package/dist/components/Company/FederalTaxes/useFederalTaxes.js.map +1 -1
  25. package/dist/components/Company/Industry/Context.js +8 -7
  26. package/dist/components/Company/Industry/Context.js.map +1 -1
  27. package/dist/components/Company/Locations/LocationForm/useLocationForm.js +5 -4
  28. package/dist/components/Company/Locations/LocationForm/useLocationForm.js.map +1 -1
  29. package/dist/components/Company/Locations/LocationsList/useLocationsList.js +5 -4
  30. package/dist/components/Company/Locations/LocationsList/useLocationsList.js.map +1 -1
  31. package/dist/components/Company/OnboardingOverview/context.js +5 -4
  32. package/dist/components/Company/OnboardingOverview/context.js.map +1 -1
  33. package/dist/components/Company/PaySchedule/PaySchedule.js +45 -30
  34. package/dist/components/Company/PaySchedule/PaySchedule.js.map +1 -1
  35. package/dist/components/Company/PaySchedule/PayScheduleComponents.js +12 -11
  36. package/dist/components/Company/PaySchedule/PayScheduleComponents.js.map +1 -1
  37. package/dist/components/Company/PaySchedule/PayScheduleForm.js +72 -55
  38. package/dist/components/Company/PaySchedule/PayScheduleForm.js.map +1 -1
  39. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js +24 -20
  40. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/fields.js.map +1 -1
  41. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js +33 -29
  42. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.js.map +1 -1
  43. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js +131 -115
  44. package/dist/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.js.map +1 -1
  45. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js +5 -4
  46. package/dist/components/Company/StateTaxes/StateTaxesForm/context.js.map +1 -1
  47. package/dist/components/Company/StateTaxes/StateTaxesList/context.js +5 -4
  48. package/dist/components/Company/StateTaxes/StateTaxesList/context.js.map +1 -1
  49. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js +5 -4
  50. package/dist/components/Company/StateTaxes/TaxRateManagement/context.js.map +1 -1
  51. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js +31 -29
  52. package/dist/components/Contractor/ContractorList/management/ManagementContractorList.js.map +1 -1
  53. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js +110 -109
  54. package/dist/components/Contractor/ContractorList/management/ManagementContractorListView.js.map +1 -1
  55. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js +21 -19
  56. package/dist/components/Contractor/ContractorList/onboarding/ContractorList.js.map +1 -1
  57. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js +56 -55
  58. package/dist/components/Contractor/ContractorList/onboarding/ContractorListView.js.map +1 -1
  59. package/dist/components/Contractor/Dashboard/Dashboard.js +34 -33
  60. package/dist/components/Contractor/Dashboard/Dashboard.js.map +1 -1
  61. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js +117 -115
  62. package/dist/components/Contractor/Payments/CreateHistoricalPayment/CreateHistoricalPayment.js.map +1 -1
  63. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js +77 -75
  64. package/dist/components/Contractor/Payments/CreatePayment/CreatePayment.js.map +1 -1
  65. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js +44 -43
  66. package/dist/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.js.map +1 -1
  67. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js +40 -39
  68. package/dist/components/Contractor/Payments/CreatePayment/PreviewPresentation.js.map +1 -1
  69. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js +35 -29
  70. package/dist/components/Contractor/Payments/HistoricalPaymentSummary/HistoricalPaymentSummary.js.map +1 -1
  71. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js +21 -20
  72. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistory.js.map +1 -1
  73. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js +41 -40
  74. package/dist/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.js.map +1 -1
  75. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js +21 -20
  76. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatement.js.map +1 -1
  77. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js +33 -32
  78. package/dist/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.js.map +1 -1
  79. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js +80 -78
  80. package/dist/components/Contractor/Payments/PaymentsList/PaymentsList.js.map +1 -1
  81. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js +44 -43
  82. package/dist/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.js.map +1 -1
  83. package/dist/components/Contractor/Submit/Submit.js +113 -105
  84. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  85. package/dist/components/Contractor/Submit/SubmitDone.js +11 -11
  86. package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -1
  87. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js +20 -18
  88. package/dist/components/Employee/Compensation/management/CompensationAddJobForm/CompensationAddJobForm.js.map +1 -1
  89. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js +18 -15
  90. package/dist/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.js.map +1 -1
  91. package/dist/components/Employee/Dashboard/Dashboard.js +33 -32
  92. package/dist/components/Employee/Dashboard/Dashboard.js.map +1 -1
  93. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js +21 -19
  94. package/dist/components/Employee/Deductions/management/DeductionsEditForm/DeductionsEditForm.js.map +1 -1
  95. package/dist/components/Employee/Documents/management/DocumentManager.js +34 -26
  96. package/dist/components/Employee/Documents/management/DocumentManager.js.map +1 -1
  97. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js +5 -4
  98. package/dist/components/Employee/Documents/onboarding/DocumentSigner/DocumentList/useDocumentList.js.map +1 -1
  99. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js +30 -29
  100. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibility.js.map +1 -1
  101. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js +54 -53
  102. package/dist/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.js.map +1 -1
  103. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js +29 -28
  104. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocuments.js.map +1 -1
  105. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js +16 -15
  106. package/dist/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.js.map +1 -1
  107. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js +27 -25
  108. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeList.js.map +1 -1
  109. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js +89 -80
  110. package/dist/components/Employee/EmployeeList/management/ManagementEmployeeListView.js.map +1 -1
  111. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js +22 -20
  112. package/dist/components/Employee/EmployeeList/onboarding/EmployeeList.js.map +1 -1
  113. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js +25 -24
  114. package/dist/components/Employee/EmployeeList/onboarding/EmployeeListView.js.map +1 -1
  115. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js +1 -1
  116. package/dist/components/Employee/EmployeeList/shared/useEmployeeList.js.map +1 -1
  117. package/dist/components/Employee/FederalTaxes/shared/FederalTaxesView.js +1 -1
  118. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js +19 -17
  119. package/dist/components/Employee/HomeAddress/management/HomeAddressEditForm.js.map +1 -1
  120. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js +80 -79
  121. package/dist/components/Employee/HomeAddress/management/HomeAddressView.js.map +1 -1
  122. package/dist/components/Employee/PaymentMethod/management/PaymentMethodBankForm.js +4 -4
  123. package/dist/components/Employee/PaymentMethod/onboarding/BankForm.js +4 -4
  124. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js +40 -39
  125. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployee.js.map +1 -1
  126. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js +34 -33
  127. package/dist/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.js.map +1 -1
  128. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js +43 -41
  129. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummary.js.map +1 -1
  130. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js +22 -21
  131. package/dist/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.js.map +1 -1
  132. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js +19 -17
  133. package/dist/components/Employee/WorkAddress/management/WorkAddressEditForm.js.map +1 -1
  134. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js +120 -116
  135. package/dist/components/Employee/WorkAddress/management/WorkAddressView.js.map +1 -1
  136. package/dist/components/Flow/Flow.js +1 -1
  137. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js +29 -29
  138. package/dist/components/InformationRequests/InformationRequestList/InformationRequestList.js.map +1 -1
  139. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +37 -36
  140. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -1
  141. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +37 -36
  142. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -1
  143. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js +35 -28
  144. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelection.js.map +1 -1
  145. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js +27 -26
  146. package/dist/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.js.map +1 -1
  147. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js +2 -3
  148. package/dist/components/Payroll/GrossUpModal/GrossUpModal.js.map +1 -1
  149. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js +52 -51
  150. package/dist/components/Payroll/OffCycleCreation/OffCycleCreation.js.map +1 -1
  151. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js +34 -33
  152. package/dist/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.js.map +1 -1
  153. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js +23 -21
  154. package/dist/components/Payroll/OffCycleDeductionsSetting/OffCycleDeductionsSetting.js.map +1 -1
  155. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js +26 -19
  156. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelection.js.map +1 -1
  157. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js +14 -12
  158. package/dist/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.js.map +1 -1
  159. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +112 -109
  160. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  161. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js +67 -65
  162. package/dist/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.js.map +1 -1
  163. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +43 -41
  164. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  165. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +225 -223
  166. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  167. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js +78 -75
  168. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.js.map +1 -1
  169. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js +27 -27
  170. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.js.map +1 -1
  171. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js +19 -19
  172. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.js.map +1 -1
  173. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js +51 -48
  174. package/dist/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/usePayrollEditEmployeeForm.js.map +1 -1
  175. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js +58 -48
  176. package/dist/components/Payroll/PayrollHistory/PayrollHistory.js.map +1 -1
  177. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js +58 -57
  178. package/dist/components/Payroll/PayrollHistory/PayrollHistoryPresentation.js.map +1 -1
  179. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +83 -69
  180. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  181. package/dist/components/Payroll/PayrollList/PayrollList.js +62 -60
  182. package/dist/components/Payroll/PayrollList/PayrollList.js.map +1 -1
  183. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +119 -117
  184. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  185. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +101 -99
  186. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  187. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +120 -110
  188. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  189. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js +20 -14
  190. package/dist/components/Payroll/PayrollReceipts/PayrollReceipts.js.map +1 -1
  191. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js +39 -38
  192. package/dist/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.js.map +1 -1
  193. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js +24 -17
  194. package/dist/components/Payroll/PrintChecks/PrintChecksBanner/PrintChecksBanner.js.map +1 -1
  195. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js +17 -17
  196. package/dist/components/Payroll/PrintChecks/PrintChecksFailure/PrintChecksFailure.js.map +1 -1
  197. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js +88 -80
  198. package/dist/components/Payroll/PrintChecks/PrintChecksForm/PrintChecksForm.js.map +1 -1
  199. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js +26 -26
  200. package/dist/components/Payroll/PrintChecks/PrintChecksSummary/PrintChecksSummary.js.map +1 -1
  201. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js +32 -32
  202. package/dist/components/Payroll/RecoveryCases/RecoveryCasesResubmit/RecoveryCasesResubmit.js.map +1 -1
  203. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js +50 -48
  204. package/dist/components/Payroll/TransitionCreation/TransitionCreation.js.map +1 -1
  205. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js +34 -33
  206. package/dist/components/Payroll/TransitionCreation/TransitionCreationPresentation.js.map +1 -1
  207. package/dist/components/Payroll/TransitionCreation/TransitionCreationTypes.js.map +1 -1
  208. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js +28 -24
  209. package/dist/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.js.map +1 -1
  210. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js +255 -228
  211. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.js.map +1 -1
  212. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js +8 -4
  213. package/dist/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.module.scss.js.map +1 -1
  214. package/dist/components/Payroll/usePreparedPayrollData.js +4 -3
  215. package/dist/components/Payroll/usePreparedPayrollData.js.map +1 -1
  216. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js +5 -5
  217. package/dist/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.js.map +1 -1
  218. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js +8 -7
  219. package/dist/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.js.map +1 -1
  220. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js +51 -50
  221. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetail.js.map +1 -1
  222. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js +20 -18
  223. package/dist/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.js.map +1 -1
  224. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js +51 -49
  225. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionForm.js.map +1 -1
  226. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js +20 -20
  227. package/dist/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormPresentation.js.map +1 -1
  228. package/dist/components/TimeOff/PolicyList/PolicyList.js +50 -49
  229. package/dist/components/TimeOff/PolicyList/PolicyList.js.map +1 -1
  230. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js +34 -33
  231. package/dist/components/TimeOff/PolicyList/PolicyListPresentation.js.map +1 -1
  232. package/dist/components/TimeOff/PolicySettings/PolicySettings.js +46 -45
  233. package/dist/components/TimeOff/PolicySettings/PolicySettings.js.map +1 -1
  234. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js +152 -143
  235. package/dist/components/TimeOff/PolicySettings/PolicySettingsPresentation.js.map +1 -1
  236. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js +14 -13
  237. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelector.js.map +1 -1
  238. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js +44 -35
  239. package/dist/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.js.map +1 -1
  240. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js +88 -71
  241. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationForm.js.map +1 -1
  242. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js +164 -155
  243. package/dist/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.js.map +1 -1
  244. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js +57 -55
  245. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.js.map +1 -1
  246. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js +25 -24
  247. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.js.map +1 -1
  248. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js +94 -92
  249. package/dist/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.js.map +1 -1
  250. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js +156 -155
  251. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetail.js.map +1 -1
  252. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js +21 -19
  253. package/dist/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.js.map +1 -1
  254. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js +28 -26
  255. package/dist/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.js.map +1 -1
  256. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  257. package/dist/contexts/UnstableFeaturesProvider/useUnstableFeature.js.map +1 -1
  258. package/dist/i18n/en/Company.PaySchedule.json.js +22 -20
  259. package/dist/i18n/en/Company.PaySchedule.json.js.map +1 -1
  260. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js +62 -58
  261. package/dist/i18n/en/Payroll.UNSTABLE_PayrollEditEmployee.json.js.map +1 -1
  262. package/dist/package.json.js +1 -1
  263. package/dist/src/components/Common/FieldCaption/FieldCaption.d.ts +2 -16
  264. package/dist/src/components/Common/FieldCaption/FieldCaptionTypes.d.ts +22 -0
  265. package/dist/src/components/Common/FieldCaption/index.d.ts +1 -0
  266. package/dist/src/components/Common/Flex/Flex.d.ts +3 -1
  267. package/dist/src/components/Company/PaySchedule/PaySchedule.d.ts +10 -2
  268. package/dist/src/components/Company/PaySchedule/PayScheduleComponents.d.ts +1 -0
  269. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/fields.d.ts +9 -1
  270. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/index.d.ts +2 -2
  271. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/payScheduleSchema.d.ts +21 -5
  272. package/dist/src/components/Company/PaySchedule/shared/usePayScheduleForm/usePayScheduleForm.d.ts +21 -3
  273. package/dist/src/components/Contractor/ContractorList/management/ManagementContractorListView.d.ts +3 -1
  274. package/dist/src/components/Contractor/ContractorList/onboarding/ContractorListView.d.ts +3 -1
  275. package/dist/src/components/Contractor/Payments/CreatePayment/CreatePaymentPresentation.d.ts +3 -1
  276. package/dist/src/components/Contractor/Payments/CreatePayment/PreviewPresentation.d.ts +3 -1
  277. package/dist/src/components/Contractor/Payments/PaymentHistory/PaymentHistoryPresentation.d.ts +3 -1
  278. package/dist/src/components/Contractor/Payments/PaymentStatement/PaymentStatementPresentation.d.ts +3 -1
  279. package/dist/src/components/Contractor/Payments/PaymentsList/PaymentsListPresentation.d.ts +3 -1
  280. package/dist/src/components/Contractor/Submit/SubmitDone.d.ts +3 -1
  281. package/dist/src/components/Employee/Compensation/management/CompensationEditForm/CompensationEditForm.d.ts +1 -1
  282. package/dist/src/components/Employee/Documents/onboarding/DocumentSigner/EmploymentEligibility/EmploymentEligibilityPresentation.d.ts +3 -1
  283. package/dist/src/components/Employee/Documents/onboarding/EmployeeDocuments/EmployeeDocumentsPresentation.d.ts +3 -1
  284. package/dist/src/components/Employee/EmployeeList/management/ManagementEmployeeListView.d.ts +3 -1
  285. package/dist/src/components/Employee/EmployeeList/onboarding/EmployeeListView.d.ts +3 -1
  286. package/dist/src/components/Employee/EmployeeList/shared/useEmployeeList.d.ts +4 -0
  287. package/dist/src/components/Employee/HomeAddress/management/HomeAddressView.d.ts +3 -1
  288. package/dist/src/components/Employee/Terminations/TerminateEmployee/TerminateEmployeePresentation.d.ts +3 -1
  289. package/dist/src/components/Employee/Terminations/TerminationSummary/TerminationSummaryPresentation.d.ts +3 -1
  290. package/dist/src/components/Employee/WorkAddress/management/WorkAddressView.d.ts +3 -1
  291. package/dist/src/components/Payroll/Dismissal/DismissalPayPeriodSelection/DismissalPayPeriodSelectionPresentation.d.ts +3 -1
  292. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationPresentation.d.ts +1 -1
  293. package/dist/src/components/Payroll/OffCycleCreation/OffCycleCreationTypes.d.ts +2 -0
  294. package/dist/src/components/Payroll/OffCycleReasonSelection/OffCycleReasonSelectionPresentation.d.ts +3 -1
  295. package/dist/src/components/Payroll/PayrollConfiguration/PayrollConfigurationPresentation.d.ts +3 -1
  296. package/dist/src/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.d.ts +3 -1
  297. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/fields.d.ts +9 -9
  298. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeHelpers.d.ts +2 -2
  299. package/dist/src/components/Payroll/PayrollEditEmployee/shared/usePayrollEditEmployeeForm/payrollEditEmployeeSchema.d.ts +4 -4
  300. package/dist/src/components/Payroll/PayrollHistory/PayrollHistoryPresentation.d.ts +3 -1
  301. package/dist/src/components/Payroll/PayrollList/PayrollListPresentation.d.ts +3 -1
  302. package/dist/src/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +2 -1
  303. package/dist/src/components/Payroll/PayrollReceipts/PayrollReceiptsPresentation.d.ts +2 -1
  304. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationPresentation.d.ts +1 -1
  305. package/dist/src/components/Payroll/TransitionCreation/TransitionCreationTypes.d.ts +2 -0
  306. package/dist/src/components/Payroll/TransitionPayrollAlert/TransitionPayrollAlert.d.ts +3 -1
  307. package/dist/src/components/Payroll/UNSTABLE_PayrollEditEmployee/UNSTABLE_PayrollEditEmployee.d.ts +1 -1
  308. package/dist/src/components/TimeOff/AddEmployeesHoliday/AddEmployeesHoliday.d.ts +1 -1
  309. package/dist/src/components/TimeOff/AddEmployeesToPolicy/AddEmployeesToPolicy.d.ts +1 -1
  310. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailPresentation.d.ts +1 -1
  311. package/dist/src/components/TimeOff/HolidayPolicyDetail/HolidayPolicyDetailTypes.d.ts +2 -0
  312. package/dist/src/components/TimeOff/HolidaySelectionForm/HolidaySelectionFormTypes.d.ts +2 -0
  313. package/dist/src/components/TimeOff/PolicyList/PolicyListPresentation.d.ts +1 -1
  314. package/dist/src/components/TimeOff/PolicyList/PolicyListTypes.d.ts +2 -0
  315. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsPresentation.d.ts +1 -1
  316. package/dist/src/components/TimeOff/PolicySettings/PolicySettingsTypes.d.ts +2 -0
  317. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorPresentation.d.ts +1 -1
  318. package/dist/src/components/TimeOff/PolicyTypeSelector/PolicyTypeSelectorTypes.d.ts +2 -0
  319. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormPresentation.d.ts +1 -1
  320. package/dist/src/components/TimeOff/TimeOffManagement/PolicyConfigurationForm/PolicyConfigurationFormTypes.d.ts +2 -0
  321. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesHoliday.d.ts +2 -0
  322. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentation.d.ts +1 -1
  323. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesPresentationTypes.d.ts +2 -0
  324. package/dist/src/components/TimeOff/TimeOffManagement/SelectEmployees/SelectEmployeesTimeOff.d.ts +2 -0
  325. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailPresentation.d.ts +1 -1
  326. package/dist/src/components/TimeOff/TimeOffPolicyDetail/TimeOffPolicyDetailTypes.d.ts +3 -0
  327. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayout.d.ts +1 -1
  328. package/dist/src/components/TimeOff/shared/PolicyDetailLayout/PolicyDetailLayoutTypes.d.ts +2 -0
  329. package/dist/src/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
  330. package/dist/src/contexts/ComponentAdapter/useComponentContext.d.ts +4 -1
  331. package/dist/src/contexts/UnstableFeaturesProvider/useUnstableFeature.d.ts +4 -1
  332. package/dist/src/i18n/types.d.ts +28 -2
  333. package/dist/src/index.d.ts +1 -1
  334. package/dist/src/models/external.d.ts +1 -0
  335. package/dist/style.css +1 -1
  336. package/package.json +16 -15
@@ -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 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 { firstLastName } from '@/helpers/formattedStrings'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { CONTRACTOR_TYPE, ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ManagementContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status'\n> {\n contractors: ContractorWithActions[]\n isFetching: boolean\n selectedTab: ContractorTab\n onTabChange: (tab: ContractorTab) => void\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 contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? (contractor.businessName ?? '')\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\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 {contractorDisplayName(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 contractors,\n isFetching,\n selectedTab,\n onTabChange,\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: contractorDisplayName(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: contractorDisplayName(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 flexDirection=\"column\" gap={32}>\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":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorNameCell","Components","useComponentContext","jsxs","Flex","jsx","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","contractors","isFetching","selectedTab","onTabChange","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 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 { firstLastName } from '@/helpers/formattedStrings'\nimport { normalizeToDate, formatDateLong, formatDateLongWithYear } from '@/helpers/dateFormatting'\nimport { CONTRACTOR_TYPE, 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 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 contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? (contractor.businessName ?? '')\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\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 {contractorDisplayName(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 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: contractorDisplayName(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: contractorDisplayName(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 <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":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorNameCell","Components","useComponentContext","jsxs","Flex","jsx","formatBadgeDate","dateStr","date","normalizeToDate","formatDateLong","formatDateLongWithYear","isOnboardingEditReview","onboardingStatus","ContractorOnboardingStatus","ManagementContractorListView","className","contractors","isFetching","selectedTab","onTabChange","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,18 +1,19 @@
1
1
  import { jsx as i } from "react/jsx-runtime";
2
- import { useContractorList as R } from "../shared/useContractorList.js";
3
- import { ContractorListView as T } from "./ContractorListView.js";
4
- import { BaseBoundaries as l, BaseLayout as C } from "../../../Base/Base.js";
5
- import { useI18n as L, useComponentDictionary as N } from "../../../../i18n/I18n.js";
2
+ import { useContractorList as T } from "../shared/useContractorList.js";
3
+ import { ContractorListView as l } from "./ContractorListView.js";
4
+ import { BaseBoundaries as L, BaseLayout as C } from "../../../Base/Base.js";
5
+ import { useI18n as N, useComponentDictionary as f } from "../../../../i18n/I18n.js";
6
6
  import { componentEvents as n } from "../../../../shared/constants.js";
7
- function f({
7
+ function A({
8
8
  companyId: a,
9
9
  onEvent: o,
10
10
  dictionary: s,
11
11
  successMessage: u,
12
- LoaderComponent: c
12
+ LoaderComponent: c,
13
+ className: d
13
14
  }) {
14
- L("Contractor.ContractorList"), N("Contractor.ContractorList", s);
15
- const t = R({ companyId: a });
15
+ N("Contractor.ContractorList"), f("Contractor.ContractorList", s);
16
+ const t = T({ companyId: a });
16
17
  if (t.isLoading)
17
18
  return /* @__PURE__ */ i(
18
19
  C,
@@ -22,22 +23,23 @@ function f({
22
23
  LoaderComponent: c
23
24
  }
24
25
  );
25
- const d = () => {
26
+ const O = () => {
26
27
  o(n.CONTRACTOR_CREATE);
27
- }, O = (r) => {
28
+ }, m = (r) => {
28
29
  o(n.CONTRACTOR_UPDATE, { contractorId: r });
29
- }, m = () => {
30
+ }, R = () => {
30
31
  o(n.CONTRACTOR_ONBOARDING_CONTINUE);
31
32
  };
32
33
  return /* @__PURE__ */ i(C, { error: t.errorHandling.errors, LoaderComponent: c, children: /* @__PURE__ */ i(
33
- T,
34
+ l,
34
35
  {
36
+ className: d,
35
37
  contractors: t.data.contractors,
36
38
  isFetching: t.status.isFetching,
37
39
  pagination: t.pagination,
38
40
  status: t.status,
39
41
  successMessage: u,
40
- onEdit: O,
42
+ onEdit: m,
41
43
  onDelete: async (r) => {
42
44
  await t.actions.onDelete(r), o(n.CONTRACTOR_DELETED, { contractorId: r });
43
45
  },
@@ -45,27 +47,27 @@ function f({
45
47
  const e = await t.actions.onCancelSelfOnboarding(r);
46
48
  e && o(n.CONTRACTOR_SELF_ONBOARDING_CANCELLED, e);
47
49
  },
48
- onAddContractor: d,
49
- onContinue: m
50
+ onAddContractor: O,
51
+ onContinue: R
50
52
  }
51
53
  ) });
52
54
  }
53
- function h({
55
+ function B({
54
56
  FallbackComponent: a,
55
57
  LoaderComponent: o,
56
58
  ...s
57
59
  }) {
58
60
  return /* @__PURE__ */ i(
59
- l,
61
+ L,
60
62
  {
61
63
  componentName: "Contractor.ContractorList",
62
64
  FallbackComponent: a,
63
65
  LoaderComponent: o,
64
- children: /* @__PURE__ */ i(f, { LoaderComponent: o, ...s })
66
+ children: /* @__PURE__ */ i(A, { LoaderComponent: o, ...s })
65
67
  }
66
68
  );
67
69
  }
68
70
  export {
69
- h as ContractorList
71
+ B as ContractorList
70
72
  };
71
73
  //# sourceMappingURL=ContractorList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorList.tsx"],"sourcesContent":["import { useContractorList } from '../shared/useContractorList'\nimport { ContractorListView } from './ContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link ContractorList}.\n *\n * @public\n */\nexport interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Success message to display in an alert above the list, typically after a create, update, or delete action. */\n successMessage?: string\n}\n\nfunction ContractorListRoot({\n companyId,\n onEvent,\n dictionary,\n successMessage,\n LoaderComponent,\n}: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n useComponentDictionary('Contractor.ContractorList', dictionary)\n\n const contractorList = useContractorList({ companyId })\n\n if (contractorList.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={contractorList.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <ContractorListView\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n successMessage={successMessage}\n onEdit={handleEdit}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onAddContractor={handleAddContractor}\n onContinue={handleContinue}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Lists a company's contractors with controls to add, edit, delete, cancel self-onboarding, and continue onboarding.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | The add-contractor action was triggered. | — |\n * | `contractor/update` | A contractor row's edit action was triggered. | `{ contractorId: string }` |\n * | `contractor/deleted` | A contractor was successfully deleted. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | A contractor's self-onboarding was cancelled, reverting them to admin onboarding. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/onboarding/continue` | The continue action was triggered to advance onboarding. | — |\n *\n * @param props - See {@link ContractorListProps}.\n * @returns The rendered contractor list.\n * @public\n */\nexport function ContractorList({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: ContractorListProps) {\n return (\n <BaseBoundaries\n componentName=\"Contractor.ContractorList\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <ContractorListRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["ContractorListRoot","companyId","onEvent","dictionary","successMessage","LoaderComponent","useI18n","useComponentDictionary","contractorList","useContractorList","jsx","BaseLayout","handleAddContractor","componentEvents","handleEdit","contractorId","handleContinue","ContractorListView","onboardingStatus","ContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":";;;;;;AAkBA,SAASA,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC;AACF,GAAwB;AACtB,EAAAC,EAAQ,2BAA2B,GACnCC,EAAuB,6BAA6BJ,CAAU;AAE9D,QAAMK,IAAiBC,EAAkB,EAAE,WAAAR,GAAW;AAEtD,MAAIO,EAAe;AACjB,WACE,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,WAAS;AAAA,QACT,OAAOH,EAAe,cAAc;AAAA,QACpC,iBAAAH;AAAA,MAAA;AAAA,IAAA;AAKN,QAAMO,IAAsB,MAAM;AAChC,IAAAV,EAAQW,EAAgB,iBAAiB;AAAA,EAC3C,GAEMC,IAAa,CAACC,MAAyB;AAC3C,IAAAb,EAAQW,EAAgB,mBAAmB,EAAE,cAAAE,EAAA,CAAc;AAAA,EAC7D,GAEMC,IAAiB,MAAM;AAC3B,IAAAd,EAAQW,EAAgB,8BAA8B;AAAA,EACxD;AAEA,2BACGF,GAAA,EAAW,OAAOH,EAAe,cAAc,QAAQ,iBAAAH,GACtD,UAAA,gBAAAK;AAAA,IAACO;AAAA,IAAA;AAAA,MACC,aAAaT,EAAe,KAAK;AAAA,MACjC,YAAYA,EAAe,OAAO;AAAA,MAClC,YAAYA,EAAe;AAAA,MAC3B,QAAQA,EAAe;AAAA,MACvB,gBAAAJ;AAAA,MACA,QAAQU;AAAA,MACR,UAAU,OAAOC,MAAyB;AACxC,cAAMP,EAAe,QAAQ,SAASO,CAAY,GAClDb,EAAQW,EAAgB,oBAAoB,EAAE,cAAAE,EAAA,CAAc;AAAA,MAC9D;AAAA,MACA,wBAAwB,OAAOA,MAAyB;AACtD,cAAMG,IAAmB,MAAMV,EAAe,QAAQ,uBAAuBO,CAAY;AACzF,QAAKG,KACLhB,EAAQW,EAAgB,sCAAsCK,CAAgB;AAAA,MAChF;AAAA,MACA,iBAAiBN;AAAA,MACjB,YAAYI;AAAA,IAAA;AAAA,EAAA,GAEhB;AAEJ;AAkBO,SAASG,EAAe;AAAA,EAC7B,mBAAAC;AAAA,EACA,iBAAAf;AAAA,EACA,GAAGgB;AACL,GAAwB;AACtB,SACE,gBAAAX;AAAA,IAACY;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,mBAAAF;AAAA,MACA,iBAAAf;AAAA,MAEA,UAAA,gBAAAK,EAACV,GAAA,EAAmB,iBAAAK,GAAmC,GAAGgB,EAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGvE;"}
1
+ {"version":3,"file":"ContractorList.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorList.tsx"],"sourcesContent":["import { useContractorList } from '../shared/useContractorList'\nimport { ContractorListView } from './ContractorListView'\nimport { BaseBoundaries, BaseLayout, type BaseComponentInterface } from '@/components/Base/Base'\nimport { useI18n, useComponentDictionary } from '@/i18n'\nimport { componentEvents } from '@/shared/constants'\n\n/**\n * Props for {@link ContractorList}.\n *\n * @public\n */\nexport interface ContractorListProps extends BaseComponentInterface<'Contractor.ContractorList'> {\n /** The associated company identifier. */\n companyId: string\n /** Success message to display in an alert above the list, typically after a create, update, or delete action. */\n successMessage?: string\n}\n\nfunction ContractorListRoot({\n companyId,\n onEvent,\n dictionary,\n successMessage,\n LoaderComponent,\n className,\n}: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n useComponentDictionary('Contractor.ContractorList', dictionary)\n\n const contractorList = useContractorList({ companyId })\n\n if (contractorList.isLoading) {\n return (\n <BaseLayout\n isLoading\n error={contractorList.errorHandling.errors}\n LoaderComponent={LoaderComponent}\n />\n )\n }\n\n const handleAddContractor = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (contractorId: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n return (\n <BaseLayout error={contractorList.errorHandling.errors} LoaderComponent={LoaderComponent}>\n <ContractorListView\n className={className}\n contractors={contractorList.data.contractors}\n isFetching={contractorList.status.isFetching}\n pagination={contractorList.pagination}\n status={contractorList.status}\n successMessage={successMessage}\n onEdit={handleEdit}\n onDelete={async (contractorId: string) => {\n await contractorList.actions.onDelete(contractorId)\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId })\n }}\n onCancelSelfOnboarding={async (contractorId: string) => {\n const onboardingStatus = await contractorList.actions.onCancelSelfOnboarding(contractorId)\n if (!onboardingStatus) return\n onEvent(componentEvents.CONTRACTOR_SELF_ONBOARDING_CANCELLED, onboardingStatus)\n }}\n onAddContractor={handleAddContractor}\n onContinue={handleContinue}\n />\n </BaseLayout>\n )\n}\n\n/**\n * Lists a company's contractors with controls to add, edit, delete, cancel self-onboarding, and continue onboarding.\n *\n * @events\n * | Event | Description | Data |\n * | ----- | ----------- | ---- |\n * | `contractor/create` | The add-contractor action was triggered. | — |\n * | `contractor/update` | A contractor row's edit action was triggered. | `{ contractorId: string }` |\n * | `contractor/deleted` | A contractor was successfully deleted. | `{ contractorId: string }` |\n * | `contractor/selfOnboarding/cancelled` | A contractor's self-onboarding was cancelled, reverting them to admin onboarding. | The updated `contractorOnboardingStatus` returned by the API. |\n * | `contractor/onboarding/continue` | The continue action was triggered to advance onboarding. | — |\n *\n * @param props - See {@link ContractorListProps}.\n * @returns The rendered contractor list.\n * @public\n */\nexport function ContractorList({\n FallbackComponent,\n LoaderComponent,\n ...props\n}: ContractorListProps) {\n return (\n <BaseBoundaries\n componentName=\"Contractor.ContractorList\"\n FallbackComponent={FallbackComponent}\n LoaderComponent={LoaderComponent}\n >\n <ContractorListRoot LoaderComponent={LoaderComponent} {...props} />\n </BaseBoundaries>\n )\n}\n"],"names":["ContractorListRoot","companyId","onEvent","dictionary","successMessage","LoaderComponent","className","useI18n","useComponentDictionary","contractorList","useContractorList","jsx","BaseLayout","handleAddContractor","componentEvents","handleEdit","contractorId","handleContinue","ContractorListView","onboardingStatus","ContractorList","FallbackComponent","props","BaseBoundaries"],"mappings":";;;;;;AAkBA,SAASA,EAAmB;AAAA,EAC1B,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,YAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,WAAAC;AACF,GAAwB;AACtB,EAAAC,EAAQ,2BAA2B,GACnCC,EAAuB,6BAA6BL,CAAU;AAE9D,QAAMM,IAAiBC,EAAkB,EAAE,WAAAT,GAAW;AAEtD,MAAIQ,EAAe;AACjB,WACE,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,WAAS;AAAA,QACT,OAAOH,EAAe,cAAc;AAAA,QACpC,iBAAAJ;AAAA,MAAA;AAAA,IAAA;AAKN,QAAMQ,IAAsB,MAAM;AAChC,IAAAX,EAAQY,EAAgB,iBAAiB;AAAA,EAC3C,GAEMC,IAAa,CAACC,MAAyB;AAC3C,IAAAd,EAAQY,EAAgB,mBAAmB,EAAE,cAAAE,EAAA,CAAc;AAAA,EAC7D,GAEMC,IAAiB,MAAM;AAC3B,IAAAf,EAAQY,EAAgB,8BAA8B;AAAA,EACxD;AAEA,2BACGF,GAAA,EAAW,OAAOH,EAAe,cAAc,QAAQ,iBAAAJ,GACtD,UAAA,gBAAAM;AAAA,IAACO;AAAA,IAAA;AAAA,MACC,WAAAZ;AAAA,MACA,aAAaG,EAAe,KAAK;AAAA,MACjC,YAAYA,EAAe,OAAO;AAAA,MAClC,YAAYA,EAAe;AAAA,MAC3B,QAAQA,EAAe;AAAA,MACvB,gBAAAL;AAAA,MACA,QAAQW;AAAA,MACR,UAAU,OAAOC,MAAyB;AACxC,cAAMP,EAAe,QAAQ,SAASO,CAAY,GAClDd,EAAQY,EAAgB,oBAAoB,EAAE,cAAAE,EAAA,CAAc;AAAA,MAC9D;AAAA,MACA,wBAAwB,OAAOA,MAAyB;AACtD,cAAMG,IAAmB,MAAMV,EAAe,QAAQ,uBAAuBO,CAAY;AACzF,QAAKG,KACLjB,EAAQY,EAAgB,sCAAsCK,CAAgB;AAAA,MAChF;AAAA,MACA,iBAAiBN;AAAA,MACjB,YAAYI;AAAA,IAAA;AAAA,EAAA,GAEhB;AAEJ;AAkBO,SAASG,EAAe;AAAA,EAC7B,mBAAAC;AAAA,EACA,iBAAAhB;AAAA,EACA,GAAGiB;AACL,GAAwB;AACtB,SACE,gBAAAX;AAAA,IAACY;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,mBAAAF;AAAA,MACA,iBAAAhB;AAAA,MAEA,UAAA,gBAAAM,EAACX,GAAA,EAAmB,iBAAAK,GAAmC,GAAGiB,EAAA,CAAO;AAAA,IAAA;AAAA,EAAA;AAGvE;"}
@@ -1,45 +1,46 @@
1
- import { jsx as t, jsxs as s, Fragment as A } from "react/jsx-runtime";
2
- import { useState as L } from "react";
3
- import { useTranslation as T } from "react-i18next";
4
- import { Flex as c } from "../../../Common/Flex/Flex.js";
5
- import { EmptyData as N } from "../../../Common/EmptyData/EmptyData.js";
6
- import { ActionsLayout as u } from "../../../Common/ActionsLayout/ActionsLayout.js";
7
- import { HamburgerMenu as v } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
8
- import { useComponentContext as O } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
- import { ContractorOnboardingStatusBadge as k } from "../../../Common/OnboardingStatusBadge/index.js";
10
- import _ from "../../../../assets/icons/pencil.svg.js";
11
- import x from "../../../../assets/icons/trashcan.svg.js";
12
- import B from "../../../../assets/icons/x-circle.svg.js";
13
- import { firstLastName as E } from "../../../../helpers/formattedStrings.js";
14
- import { ContractorOnboardingStatus as P, CONTRACTOR_TYPE as I } from "../../../../shared/constants.js";
15
- import { useDataView as R } from "../../../Common/DataView/useDataView.js";
16
- import { DataView as V } from "../../../Common/DataView/DataView.js";
17
- function p(n) {
18
- return n.type === I.BUSINESS ? n.businessName : E({ first_name: n.firstName, last_name: n.lastName });
1
+ import { jsx as t, jsxs as s, Fragment as L } from "react/jsx-runtime";
2
+ import { useState as T } from "react";
3
+ import { useTranslation as N } from "react-i18next";
4
+ import { Flex as u } from "../../../Common/Flex/Flex.js";
5
+ import { EmptyData as v } from "../../../Common/EmptyData/EmptyData.js";
6
+ import { ActionsLayout as p } from "../../../Common/ActionsLayout/ActionsLayout.js";
7
+ import { HamburgerMenu as O } from "../../../Common/HamburgerMenu/HamburgerMenu.js";
8
+ import { useComponentContext as k } from "../../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { ContractorOnboardingStatusBadge as _ } from "../../../Common/OnboardingStatusBadge/index.js";
10
+ import x from "../../../../assets/icons/pencil.svg.js";
11
+ import B from "../../../../assets/icons/trashcan.svg.js";
12
+ import E from "../../../../assets/icons/x-circle.svg.js";
13
+ import { firstLastName as P } from "../../../../helpers/formattedStrings.js";
14
+ import { ContractorOnboardingStatus as I, CONTRACTOR_TYPE as R } from "../../../../shared/constants.js";
15
+ import { useDataView as V } from "../../../Common/DataView/useDataView.js";
16
+ import { DataView as j } from "../../../Common/DataView/DataView.js";
17
+ function f(n) {
18
+ return n.type === R.BUSINESS ? n.businessName : P({ first_name: n.firstName, last_name: n.lastName });
19
19
  }
20
- function ee({
21
- contractors: n,
22
- isFetching: f,
23
- pagination: C,
24
- status: g,
25
- successMessage: d,
26
- onEdit: b,
27
- onDelete: h,
28
- onCancelSelfOnboarding: y,
29
- onAddContractor: m,
30
- onContinue: D
20
+ function te({
21
+ className: n,
22
+ contractors: d,
23
+ isFetching: C,
24
+ pagination: g,
25
+ status: b,
26
+ successMessage: m,
27
+ onEdit: h,
28
+ onDelete: y,
29
+ onCancelSelfOnboarding: D,
30
+ onAddContractor: c,
31
+ onContinue: S
31
32
  }) {
32
- const { t: e } = T("Contractor.ContractorList"), o = O(), [r, l] = L(null), { ...S } = R({
33
- data: n,
33
+ const { t: e } = N("Contractor.ContractorList"), o = k(), [r, l] = T(null), { ...w } = V({
34
+ data: d,
34
35
  columns: [
35
36
  {
36
37
  title: e("listHeaders.name"),
37
- render: (i) => p(i)
38
+ render: (i) => f(i)
38
39
  },
39
40
  {
40
41
  title: e("listHeaders.status"),
41
42
  render: (i) => /* @__PURE__ */ t(
42
- k,
43
+ _,
43
44
  {
44
45
  onboarded: i.onboarded,
45
46
  onboardingStatus: i.onboardingStatus
@@ -48,46 +49,46 @@ function ee({
48
49
  }
49
50
  ],
50
51
  itemMenu: (i) => {
51
- const a = [], w = i.onboardingStatus === P.SELF_ONBOARDING_REVIEW;
52
+ const a = [], A = i.onboardingStatus === I.SELF_ONBOARDING_REVIEW;
52
53
  return i.allowedActions.includes("edit") && a.push({
53
- label: e(w ? "reviewCta" : "editCta"),
54
+ label: e(A ? "reviewCta" : "editCta"),
54
55
  onClick: () => {
55
- b(i.uuid);
56
+ h(i.uuid);
56
57
  },
57
- icon: /* @__PURE__ */ t(_, { "aria-hidden": !0 })
58
+ icon: /* @__PURE__ */ t(x, { "aria-hidden": !0 })
58
59
  }), i.allowedActions.includes("cancel_self_onboarding") && a.push({
59
60
  label: e("cancelSelfOnboardingCta"),
60
61
  onClick: () => {
61
- y(i.uuid);
62
+ D(i.uuid);
62
63
  },
63
- icon: /* @__PURE__ */ t(B, { "aria-hidden": !0 })
64
+ icon: /* @__PURE__ */ t(E, { "aria-hidden": !0 })
64
65
  }), i.allowedActions.includes("delete") && a.push({
65
66
  label: e("deleteCta"),
66
67
  onClick: () => {
67
68
  l(i.uuid);
68
69
  },
69
- icon: /* @__PURE__ */ t(x, { "aria-hidden": !0 })
70
+ icon: /* @__PURE__ */ t(B, { "aria-hidden": !0 })
70
71
  }), /* @__PURE__ */ t(
71
- v,
72
+ O,
72
73
  {
73
- triggerLabel: e("hamburgerTitle", { name: p(i) }),
74
+ triggerLabel: e("hamburgerTitle", { name: f(i) }),
74
75
  items: a
75
76
  }
76
77
  );
77
78
  },
78
- isFetching: f,
79
- pagination: C,
80
- emptyState: () => /* @__PURE__ */ t(N, { title: e("emptyTableTitle"), description: e("emptyTableDescription"), children: /* @__PURE__ */ t(u, { justifyContent: "center", children: /* @__PURE__ */ t(o.Button, { onClick: m, children: e("addContractorCta") }) }) })
79
+ isFetching: C,
80
+ pagination: g,
81
+ emptyState: () => /* @__PURE__ */ t(v, { title: e("emptyTableTitle"), description: e("emptyTableDescription"), children: /* @__PURE__ */ t(p, { justifyContent: "center", children: /* @__PURE__ */ t(o.Button, { onClick: c, children: e("addContractorCta") }) }) })
81
82
  });
82
- return /* @__PURE__ */ s(A, { children: [
83
- /* @__PURE__ */ s(c, { flexDirection: "column", children: [
84
- d && /* @__PURE__ */ t(o.Alert, { label: d, status: "success" }),
85
- /* @__PURE__ */ s(c, { alignItems: "center", justifyContent: "space-between", children: [
83
+ return /* @__PURE__ */ s(L, { children: [
84
+ /* @__PURE__ */ s(u, { className: n, flexDirection: "column", children: [
85
+ m && /* @__PURE__ */ t(o.Alert, { label: m, status: "success" }),
86
+ /* @__PURE__ */ s(u, { alignItems: "center", justifyContent: "space-between", children: [
86
87
  /* @__PURE__ */ t(o.Heading, { as: "h2", children: e("title") }),
87
- n.length > 0 && /* @__PURE__ */ t(o.Button, { variant: "secondary", onClick: m, children: e("addAnotherCta") })
88
+ d.length > 0 && /* @__PURE__ */ t(o.Button, { variant: "secondary", onClick: c, children: e("addAnotherCta") })
88
89
  ] }),
89
- /* @__PURE__ */ t(V, { label: e("contractorListLabel"), ...S }),
90
- /* @__PURE__ */ t(u, { children: /* @__PURE__ */ t(o.Button, { onClick: D, children: e("continueCta") }) })
90
+ /* @__PURE__ */ t(j, { label: e("contractorListLabel"), ...w }),
91
+ /* @__PURE__ */ t(p, { children: /* @__PURE__ */ t(o.Button, { onClick: S, children: e("continueCta") }) })
91
92
  ] }),
92
93
  /* @__PURE__ */ t(
93
94
  o.Dialog,
@@ -99,11 +100,11 @@ function ee({
99
100
  onPrimaryActionClick: async () => {
100
101
  if (r)
101
102
  try {
102
- await h(r), l(null);
103
+ await y(r), l(null);
103
104
  } catch {
104
105
  }
105
106
  },
106
- isPrimaryActionLoading: g.isPending,
107
+ isPrimaryActionLoading: b.isPending,
107
108
  isDestructive: !0,
108
109
  title: e("deleteDialog.title"),
109
110
  primaryActionLabel: e("deleteDialog.confirmCta"),
@@ -114,6 +115,6 @@ function ee({
114
115
  ] });
115
116
  }
116
117
  export {
117
- ee as ContractorListView
118
+ te as ContractorListView
118
119
  };
119
120
  //# sourceMappingURL=ContractorListView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorListView.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport { DataView, EmptyData, ActionsLayout, useDataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { CONTRACTOR_TYPE, ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ContractorListViewProps extends Pick<\n Extract<UseContractorListResult, { isLoading: false }>,\n 'pagination' | 'status'\n> {\n contractors: ContractorWithActions[]\n isFetching: boolean\n successMessage?: string\n onEdit: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n onContinue: () => void\n}\n\nfunction contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? contractor.businessName\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\n}\n\n/** @internal */\nexport function ContractorListView({\n contractors,\n isFetching,\n pagination,\n status,\n successMessage,\n onEdit,\n onDelete,\n onCancelSelfOnboarding,\n onAddContractor,\n onContinue,\n}: ContractorListViewProps) {\n const { t } = useTranslation('Contractor.ContractorList')\n const Components = useComponentContext()\n const [contractorToDelete, setContractorToDelete] = useState<string | null>(null)\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: [\n {\n title: t('listHeaders.name'),\n render: (contractor: ContractorWithActions) => contractorDisplayName(contractor),\n },\n {\n title: t('listHeaders.status'),\n render: (contractor: ContractorWithActions) => (\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n ),\n },\n ],\n itemMenu: contractor => {\n const menuItems = []\n const isReview =\n contractor.onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n\n if (contractor.allowedActions.includes('edit')) {\n menuItems.push({\n label: isReview ? t('reviewCta') : t('editCta'),\n onClick: () => {\n onEdit(contractor.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\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('deleteCta'),\n onClick: () => {\n setContractorToDelete(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n triggerLabel={t('hamburgerTitle', { name: contractorDisplayName(contractor) })}\n items={menuItems}\n />\n )\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Components.Button onClick={onAddContractor}>{t('addContractorCta')}</Components.Button>\n </ActionsLayout>\n </EmptyData>\n ),\n })\n\n return (\n <>\n <Flex flexDirection=\"column\">\n {successMessage && <Components.Alert label={successMessage} status=\"success\" />}\n\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n\n {contractors.length > 0 && (\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addAnotherCta')}\n </Components.Button>\n )}\n </Flex>\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n\n <ActionsLayout>\n <Components.Button onClick={onContinue}>{t('continueCta')}</Components.Button>\n </ActionsLayout>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToDelete}\n onClose={() => {\n setContractorToDelete(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToDelete) {\n try {\n await onDelete(contractorToDelete)\n setContractorToDelete(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('deleteDialog.title')}\n primaryActionLabel={t('deleteDialog.confirmCta')}\n closeActionLabel={t('deleteDialog.cancelCta')}\n >\n {t('deleteDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorListView","contractors","isFetching","pagination","status","successMessage","onEdit","onDelete","onCancelSelfOnboarding","onAddContractor","onContinue","t","useTranslation","Components","useComponentContext","contractorToDelete","setContractorToDelete","useState","dataViewProps","useDataView","jsx","ContractorOnboardingStatusBadge","menuItems","isReview","ContractorOnboardingStatus","PencilSvg","XCircleSvg","TrashCanSvg","HamburgerMenu","EmptyData","ActionsLayout","jsxs","Fragment","Flex","DataView"],"mappings":"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"}
1
+ {"version":3,"file":"ContractorListView.js","sources":["../../../../../src/components/Contractor/ContractorList/onboarding/ContractorListView.tsx"],"sourcesContent":["import { useState } from 'react'\nimport { useTranslation } from 'react-i18next'\nimport type { UseContractorListResult, ContractorWithActions } from '../shared/useContractorList'\nimport { DataView, EmptyData, ActionsLayout, useDataView, Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\nimport XCircleSvg from '@/assets/icons/x-circle.svg?react'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { CONTRACTOR_TYPE, ContractorOnboardingStatus } from '@/shared/constants'\n\n/** @internal */\nexport interface ContractorListViewProps 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 successMessage?: string\n onEdit: (contractorId: string) => void\n onDelete: (contractorId: string) => Promise<void>\n onCancelSelfOnboarding: (contractorId: string) => Promise<void>\n onAddContractor: () => void\n onContinue: () => void\n}\n\nfunction contractorDisplayName(contractor: ContractorWithActions) {\n return contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? contractor.businessName\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName })\n}\n\n/** @internal */\nexport function ContractorListView({\n className,\n contractors,\n isFetching,\n pagination,\n status,\n successMessage,\n onEdit,\n onDelete,\n onCancelSelfOnboarding,\n onAddContractor,\n onContinue,\n}: ContractorListViewProps) {\n const { t } = useTranslation('Contractor.ContractorList')\n const Components = useComponentContext()\n const [contractorToDelete, setContractorToDelete] = useState<string | null>(null)\n\n const { ...dataViewProps } = useDataView({\n data: contractors,\n columns: [\n {\n title: t('listHeaders.name'),\n render: (contractor: ContractorWithActions) => contractorDisplayName(contractor),\n },\n {\n title: t('listHeaders.status'),\n render: (contractor: ContractorWithActions) => (\n <ContractorOnboardingStatusBadge\n onboarded={contractor.onboarded}\n onboardingStatus={contractor.onboardingStatus}\n />\n ),\n },\n ],\n itemMenu: contractor => {\n const menuItems = []\n const isReview =\n contractor.onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_REVIEW\n\n if (contractor.allowedActions.includes('edit')) {\n menuItems.push({\n label: isReview ? t('reviewCta') : t('editCta'),\n onClick: () => {\n onEdit(contractor.uuid)\n },\n icon: <PencilSvg aria-hidden />,\n })\n }\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('deleteCta'),\n onClick: () => {\n setContractorToDelete(contractor.uuid)\n },\n icon: <TrashCanSvg aria-hidden />,\n })\n }\n\n return (\n <HamburgerMenu\n triggerLabel={t('hamburgerTitle', { name: contractorDisplayName(contractor) })}\n items={menuItems}\n />\n )\n },\n isFetching,\n pagination,\n emptyState: () => (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Components.Button onClick={onAddContractor}>{t('addContractorCta')}</Components.Button>\n </ActionsLayout>\n </EmptyData>\n ),\n })\n\n return (\n <>\n <Flex className={className} flexDirection=\"column\">\n {successMessage && <Components.Alert label={successMessage} status=\"success\" />}\n\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n <Components.Heading as=\"h2\">{t('title')}</Components.Heading>\n\n {contractors.length > 0 && (\n <Components.Button variant=\"secondary\" onClick={onAddContractor}>\n {t('addAnotherCta')}\n </Components.Button>\n )}\n </Flex>\n\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n\n <ActionsLayout>\n <Components.Button onClick={onContinue}>{t('continueCta')}</Components.Button>\n </ActionsLayout>\n </Flex>\n\n <Components.Dialog\n isOpen={!!contractorToDelete}\n onClose={() => {\n setContractorToDelete(null)\n }}\n onPrimaryActionClick={async () => {\n if (contractorToDelete) {\n try {\n await onDelete(contractorToDelete)\n setContractorToDelete(null)\n } catch {\n // Keep dialog open on error\n }\n }\n }}\n isPrimaryActionLoading={status.isPending}\n isDestructive\n title={t('deleteDialog.title')}\n primaryActionLabel={t('deleteDialog.confirmCta')}\n closeActionLabel={t('deleteDialog.cancelCta')}\n >\n {t('deleteDialog.description')}\n </Components.Dialog>\n </>\n )\n}\n"],"names":["contractorDisplayName","contractor","CONTRACTOR_TYPE","firstLastName","ContractorListView","className","contractors","isFetching","pagination","status","successMessage","onEdit","onDelete","onCancelSelfOnboarding","onAddContractor","onContinue","t","useTranslation","Components","useComponentContext","contractorToDelete","setContractorToDelete","useState","dataViewProps","useDataView","jsx","ContractorOnboardingStatusBadge","menuItems","isReview","ContractorOnboardingStatus","PencilSvg","XCircleSvg","TrashCanSvg","HamburgerMenu","EmptyData","ActionsLayout","jsxs","Fragment","Flex","DataView"],"mappings":"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"}
@@ -1,49 +1,50 @@
1
1
  import { jsx as t, jsxs as i } from "react/jsx-runtime";
2
- import { useState as D, Suspense as T } from "react";
3
- import { useTranslation as d } from "react-i18next";
4
- import { useContractorsGetSuspense as x } from "@gusto/embedded-api/react-query/contractorsGet";
5
- import { DetailsView as N } from "./DetailsView.js";
6
- import { PayView as g } from "./PayView.js";
2
+ import { useState as T, Suspense as x } from "react";
3
+ import { useTranslation as p } from "react-i18next";
4
+ import { useContractorsGetSuspense as N } from "@gusto/embedded-api/react-query/contractorsGet";
5
+ import { DetailsView as g } from "./DetailsView.js";
6
+ import { PayView as S } from "./PayView.js";
7
7
  import { Flex as l } from "../../Common/Flex/Flex.js";
8
- import { useComponentContext as p } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
- import { BaseBoundaries as S } from "../../Base/Base.js";
10
- import { useI18n as R, useComponentDictionary as _ } from "../../../i18n/I18n.js";
11
- import { componentEvents as y, CONTRACTOR_TYPE as A } from "../../../shared/constants.js";
12
- import { firstLastName as B } from "../../../helpers/formattedStrings.js";
13
- import { DocumentsCard as O } from "../Documents/management/DocumentsCard/DocumentsCard.js";
14
- function H({
8
+ import { useComponentContext as u } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
+ import { BaseBoundaries as R } from "../../Base/Base.js";
10
+ import { useI18n as _, useComponentDictionary as y } from "../../../i18n/I18n.js";
11
+ import { componentEvents as A, CONTRACTOR_TYPE as B } from "../../../shared/constants.js";
12
+ import { firstLastName as O } from "../../../helpers/formattedStrings.js";
13
+ import { DocumentsCard as H } from "../Documents/management/DocumentsCard/DocumentsCard.js";
14
+ function j({
15
15
  contractorId: o,
16
16
  dictionary: n,
17
17
  onEvent: e,
18
18
  selectedTab: a,
19
- LoaderComponent: c
19
+ LoaderComponent: c,
20
+ className: m
20
21
  }) {
21
- R("Contractor.Dashboard"), _("Contractor.Dashboard", n);
22
- const { t: r } = d("Contractor.Dashboard"), u = p(), [b, f] = D("details"), s = a ?? b, h = [
22
+ _("Contractor.Dashboard"), y("Contractor.Dashboard", n);
23
+ const { t: r } = p("Contractor.Dashboard"), b = u(), [f, h] = T("details"), s = a ?? f, C = [
23
24
  { id: "details", label: r("tabs.details"), content: null },
24
25
  { id: "pay", label: r("tabs.pay"), content: null },
25
26
  { id: "documents", label: r("tabs.documents"), content: null }
26
27
  ];
27
- return /* @__PURE__ */ i(l, { flexDirection: "column", gap: 32, children: [
28
- /* @__PURE__ */ t(T, { fallback: null, children: /* @__PURE__ */ t(j, { contractorId: o }) }),
28
+ return /* @__PURE__ */ i(l, { className: m, flexDirection: "column", gap: 32, children: [
29
+ /* @__PURE__ */ t(x, { fallback: null, children: /* @__PURE__ */ t(w, { contractorId: o }) }),
29
30
  /* @__PURE__ */ i(l, { flexDirection: "column", gap: 8, children: [
30
31
  /* @__PURE__ */ t(
31
- u.Tabs,
32
+ b.Tabs,
32
33
  {
33
- tabs: h,
34
+ tabs: C,
34
35
  selectedId: s,
35
- onSelectionChange: (C) => {
36
- const m = C;
37
- f(m), e(y.CONTRACTOR_DASHBOARD_TAB_CHANGE, { tab: m });
36
+ onSelectionChange: (D) => {
37
+ const d = D;
38
+ h(d), e(A.CONTRACTOR_DASHBOARD_TAB_CHANGE, { tab: d });
38
39
  },
39
40
  "aria-label": r("tabsLabel")
40
41
  }
41
42
  ),
42
43
  /* @__PURE__ */ i(l, { flexDirection: "column", gap: 24, children: [
43
- s === "details" && /* @__PURE__ */ t(N, { contractorId: o, onEvent: e }),
44
- s === "pay" && /* @__PURE__ */ t(g, { contractorId: o, onEvent: e }),
44
+ s === "details" && /* @__PURE__ */ t(g, { contractorId: o, onEvent: e }),
45
+ s === "pay" && /* @__PURE__ */ t(S, { contractorId: o, onEvent: e }),
45
46
  s === "documents" && /* @__PURE__ */ t(
46
- O,
47
+ H,
47
48
  {
48
49
  contractorId: o,
49
50
  onEvent: e,
@@ -54,31 +55,31 @@ function H({
54
55
  ] })
55
56
  ] });
56
57
  }
57
- function j({ contractorId: o }) {
58
- const { t: n } = d("Contractor.Dashboard"), e = p(), {
58
+ function w({ contractorId: o }) {
59
+ const { t: n } = p("Contractor.Dashboard"), e = u(), {
59
60
  data: { contractor: a }
60
- } = x({ contractorUuid: o }), c = a?.type === A.BUSINESS, r = a ? c ? a.businessName : B({
61
+ } = N({ contractorUuid: o }), c = a?.type === B.BUSINESS, m = a ? c ? a.businessName : O({
61
62
  first_name: a.firstName,
62
63
  middle_initial: a.middleInitial,
63
64
  last_name: a.lastName
64
65
  }) : void 0;
65
66
  return /* @__PURE__ */ i(l, { flexDirection: "column", gap: 4, children: [
66
- /* @__PURE__ */ t(e.Heading, { as: "h2", children: r }),
67
+ /* @__PURE__ */ t(e.Heading, { as: "h2", children: m }),
67
68
  /* @__PURE__ */ t(e.Text, { variant: "supporting", children: n("contractorRoleLabel") })
68
69
  ] });
69
70
  }
70
- function z({ FallbackComponent: o, LoaderComponent: n, ...e }) {
71
+ function J({ FallbackComponent: o, LoaderComponent: n, ...e }) {
71
72
  return /* @__PURE__ */ t(
72
- S,
73
+ R,
73
74
  {
74
75
  componentName: "Contractor.Dashboard",
75
76
  FallbackComponent: o,
76
77
  LoaderComponent: n,
77
- children: /* @__PURE__ */ t(H, { LoaderComponent: n, ...e })
78
+ children: /* @__PURE__ */ t(j, { LoaderComponent: n, ...e })
78
79
  }
79
80
  );
80
81
  }
81
82
  export {
82
- z as Dashboard
83
+ J as Dashboard
83
84
  };
84
85
  //# sourceMappingURL=Dashboard.js.map